cc-stuff/videotape.lua

24 lines
630 B
Lua

local tape = peripheral.find("tape_drive")
local mon = peripheral.find("monitor")
tape.seek(-tape.getSize())
mon.setTextScale(1)
local w, h = string.byte(tape.read(2), 1, 2)
repeat
for y = 1, h do
mon.setCursorPos(1, y)
local buf = string.byte(tape.read(w), 1, -1)
local s, f, b = "", "", ""
for x = 1, w do
s = s .. string.char(0x80 + bit32.band(0x7F, buf[x]))
local inv = bit32.band(0x80, buf[x])
f = f .. (inv and "f" or "0")
b = b .. (inv and "0" or "f")
end
mon.blit(s, f, b)
end
os.sleep(0.01)
until tape.isEnd()