rendered paste bodydofile("textrender.lua");
addrs = {};
addrbias = 0;
xposaddr = 0x5A92A + addrbias;
yposaddr = 0x5A92C + addrbias;
screaddr = 0x59EA0 + addrbias;
htreaddr = 0x5A1C8 + addrbias;
hgunaddr = 0x5A1C4 + addrbias;
hjpkaddr = 0x5A1CA + addrbias;
jpkfaddr = 0x5A9D8 + addrbias;
liveaddr = 0x5A92E + addrbias;
hscraddr = 0x5A9E0 + addrbias;
leveaddr = 0x5A934 + addrbias;
validkeys = {U = 128 + 72, D = 128 + 80, L = 128 + 75, R = 128 + 77, J = 184, F = 157};
lastlpos = 0;
while true do
eventtype, eventmessage = jpcrr.wait_event();
if eventtype == "message" then
end
if eventtype == "lock" then
jpcrr.hud.right_gap(3, 160);
thisclocktime = jpcrr.clock_time();
xpos = jpcrr.read_word(xposaddr);
ypos = jpcrr.read_word(yposaddr);
scre = jpcrr.read_word(screaddr);
htre = jpcrr.read_byte(htreaddr);
hgun = jpcrr.read_byte(hgunaddr);
hjpk = jpcrr.read_byte(hjpkaddr);
live = jpcrr.read_byte(liveaddr);
hscr = jpcrr.read_word(hscraddr);
jpkf = jpcrr.read_byte(jpkfaddr);
leve = jpcrr.read_byte(leveaddr);
fram = jpcrr.frame_number();
render_text(3, 640, 0, "TIME " .. tostring(math.floor(jpcrr.clock_time() / 1000000) / 1000), false, 255, 255, 0);
render_text(3, 640, 16, "FRAM " .. tostring(fram), false, 255, 255, 0);
keys = {};
for k, v in pairs(validkeys) do
keys[k] = jpcrr.keypressed(v);
end
if keys.L then render_text(3, 640, 32, "L", false, 255, 255, 0); end
if keys.R then render_text(3, 648, 32, "R", false, 255, 255, 0); end
if keys.U then render_text(3, 656, 32, "U", false, 255, 255, 0); end
if keys.D then render_text(3, 664, 32, "D", false, 255, 255, 0); end
if keys.J then render_text(3, 672, 32, "J", false, 255, 255, 0); end
if keys.F then render_text(3, 680, 32, "F", false, 255, 255, 0); end
render_text(3, 640, 48, "XPOS " .. tostring(xpos + 16 * hscr), false, 255, 255, 0);
render_text(3, 640, 64, "YPOS " .. tostring(ypos), false, 255, 255, 0);
render_text(3, 640, 80, "SCRE " .. tostring(scre), false, 255, 255, 0);
render_text(3, 640, 96, "ITEM ", false, 255, 255, 0);
if htre ~= 0 then
render_text(3, 680, 96, "T", false, 0, 255, 0);
else
render_text(3, 680, 96, "T", false, 255, 0, 0);
end
if hgun ~= 0 then
render_text(3, 688, 96, "G", false, 0, 255, 0);
else
render_text(3, 688, 96, "G", false, 255, 0, 0);
end
if hjpk ~= 0 then
render_text(3, 696, 96, "J", false, 0, 255, 0);
else
render_text(3, 696, 96, "J", false, 255, 0, 0);
end
render_text(3, 640, 112, "LIVE " .. tostring(live), false, 255, 255, 0);
render_text(3, 640, 128, "HSCR " .. tostring(hscr), false, 255, 255, 0);
if hjpk ~= 0 then
render_text(3, 640, 144, "JPKF " .. tostring(jpkf), false, 255, 255, 0);
else
render_text(3, 640, 144, "JPKF N/A", false, 255, 255, 0);
end
render_text(3, 640, 160, "LEVE " .. tostring(leve + 1), false, 255, 255, 0);
jpcrr.release_vga();
end
end