Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- cx = 0
- retrocore = 'fuse'
- --contents = {'merlin.z80','manicminer.z80','elite.z80'}
- contentnum = 1
- function corescreen(rcore, content)
- emu.core(rcore)
- vsimcorecfg.fuse.vsim_audio = "mute"
- vsimcorecfg.fuse.vsim_everyxframes = "1"
- print("Loading "..content)
- local id = emu.emulate(-1, content,vsimcorecfg.fuse)
- sleep(0.2)
- local node = emuscreen(id, 1.33)
- model.sel(node)
- return node
- end
- x = 0
- y = 0
- screens = {}
- function addCore()
- local p = "lua\\coretest\\"
- local p_ = p .. "zxprogs\\"
- local ran = math.random(#zxprogs)
- local content = zxprogs[ran]
- local screen = corescreen(p..retrocore, p_..content)
- screens[x..'_'..y] = screen
- contentnum = contentnum + 1
- model.sel(screen)
- model.pos(x*6.7, -5+(y*6), 0)
- x = x + 1
- if x == cols_ then
- y = y + 1
- x = 0
- end
- end
- cols_ = 0
- rows_ = 0
- function grid(cols,rows)
- cols_ = cols
- rows_ = rows
- print("Creating emulator grid")
- print("Rows: "..rows.." columns: "..cols.." total emulators: "..rows*cols)
- print("Retrocore: "..retrocore)
- --print("Content to load: "..table.concat(contents,","))
- for y_ = 0, rows-1 do
- for x_ = 0, cols-1 do
- flow.wait(450*(y_*cols+x_), 'addCore()')
- end
- end
- end
- function printFPS()
- print('Grid emulation FPS report:')
- for b = 0, rows_-1 do
- local out = ""
- for a = 0, cols_-1 do
- local nn = b*cols_+a
- local fps = round(model.get('fps_'..nn+1))
- out = out .. fps .. ' '
- end
- print(out)
- end
- end
- function flyin(x,y)
- model.sel(screens[x..'_'..y])
- model.fly(x*6.7, -5+(y*6), 0, 4, -5, -10-x/2, 500, "false", "false")
- end
- function flyout(x,y)
- model.sel(screens[x..'_'..y])
- model.fly(4, -5, -10-x/2,x*6.7, -5+(y*6), 0, 500, "false", "false")
- end
- function collect()
- for y = 0, rows_-1 do
- for x = 0, cols_-1 do
- flow.wait((y*cols_+x)*80, 'flyin('..x..','..y..')')
- end
- end
- end
- function disperse()
- for y = 0, rows_-1 do
- for x = 0, cols_-1 do
- flow.wait((y*cols_+x)*80, 'flyout('..x..','..y..')')
- end
- end
- end
- function readprogs()
- zxprogs = net.dirtable('lua/coretest/zxprogs')
- end
- readprogs()
- function flycam()
- model.sel(vsim.fpscam)
- flow.waitui()
- local pos = model.get('pos')
- pos = pos:split(' ')
- local x1=pos[1]
- local y1=pos[2]
- local z1=pos[3]
- local xx = cols_/2
- local yy = rows_/2
- model.fly(x1,y1,z1, x*6.7, -5+(y*6), z1, 1000, 'false', 'false' )
- end
- print("Coretest init.")
- local coretest = {}
- return coretest
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement