-- hp_ret2.lua -- return values, with the rets addresses verified from the disassembly: -- L3FA71BC0 rets @ 3FA753C0, L3FA753D0 (RXCHECK) @ 3FA767D0, -- L3FA767E0 (XMITPASS) @ 3FA77800. local machine = manager.machine local cpu = machine.devices[':maincpu'] local dbg = machine.debugger if not dbg then print("ERROR: no debugger"); machine:exit(); return end local function bp(addr, msg) dbg:command('bpset ' .. addr .. ',,{ printf "' .. msg .. ' a8=%08X a7=%08X a9=%08X a11=%08X a13=%08X\\n", a8, a7, a9, a11, a13 ; g }') end bp("3fa753c0", "RET-BC0") bp("3fa767d0", "RET-RXCHECK") bp("3fa77800", "RET-XMITPASS") bp("3fa84fe0", "RET-L3FA6E4B0") bp("3fa6e4b0", "ENTER-GENERIC") local n = 0 emu.register_frame_done(function() n = n + 1 if n >= tonumber(os.getenv("HP_FRAMES") or "700") then print("done "..n); machine:exit() end end, "vt1200-hp-ret2") dbg.visible_cpu = cpu dbg.execution_state = 'run'