ポケモン赤緑のメモリを表示するBizhawkのLuaスクリプトです。
ごちゃさん(id:GOCHA)にBizhawkというエミュレータなら画面に余白を作ってそこに情報を表示できることを教えてもらったので作りました。
client.SetGameExtraPadding(0, 430,1050, 0) local fontsize = 12 local startAddr = 0xd100 local w = 35 local h = 12 function printhint(addr, hint) gui.drawText(50 + bit.band(addr - startAddr, 31) * w, bit.rshift(addr - startAddr, 5) * h * 2 + h, hint, "pink", nil, 10) end function main() for i=0,15 do local addr = 0xd100 + i * 32 gui.drawText(0, i * h * 2, string.format("%04x ", addr), nil, nil, fontsize) for j=0,31 do local ad = addr + j gui.drawText(50 + j * w, i * h * 2, string.format("%02x ", memory.read_u8(ad))) end end printhint(0xd11d, "playerName") printhint(0xd123, "numPk") printhint(0xd124, "pkSpecies") for i=0, 5 do local ad = 0xd12b + 44 * i printhint(ad, "pk" .. (i+1)) printhint(ad+1, "hp") printhint(ad+3, "boxlv") printhint(ad+4, "stat") printhint(ad+5, "type1") printhint(ad+6, "type2") printhint(ad+7, "catch") printhint(ad+8, "move1") printhint(ad+9, "move2") printhint(ad+10, "move3") printhint(ad+11, "move4") printhint(ad+12, "otid") printhint(ad+13, "exp") printhint(ad+16, "efforts") printhint(ad+27, "dvs") printhint(ad+29, "pp") printhint(ad+33, "lv") printhint(ad+34, "maxhp") printhint(ad+36, "atk") printhint(ad+38, "def") printhint(ad+40, "spd") printhint(ad+42, "spe") end for i=0, 5 do printhint(0xd233 + i * 6, "pk" .. (i+1) .. ".otname") end for i=0, 5 do printhint(0xd257 + i * 6, "pk" .. (i+1) .. ".nickname") end printhint(0xd27b, "pokedexOwned") printhint(0xd28e, "pokedexSeen") printhint(0xd2a1, "items") printhint(0xd2cc, "money") printhint(0xd2ce, "rivalName") printhint(0xd2d4, "opts") printhint(0xd2d5, "badges") printhint(0xd2d8, "id") printhint(0xd2dd, "map") printhint(0xd2e0, "y") printhint(0xd2e1, "x") end while true do if emu.framecount() % 15 == 0 then main() end emu.frameadvance() end