Strip out text_area stuff from GUI since it's missing
This commit is contained in:
parent
3bb55f385f
commit
2cfa4c038f
1 changed files with 163 additions and 154 deletions
243
DKC2.lua
243
DKC2.lua
|
@ -1,5 +1,5 @@
|
|||
local base = string.gsub(@@LUA_SCRIPT_FILENAME@@, "(.*/)(.*)", "%1")
|
||||
dofile(base .. "text_area.lua")
|
||||
--dofile(base .. "text_area.lua")
|
||||
|
||||
getmetatable('').__index = function(str, i) return string.sub(str, i, i) end
|
||||
|
||||
|
@ -199,13 +199,13 @@ local active_screen = engine_screen
|
|||
local opacity = 0x80
|
||||
local fg_color = 0x00FFFFFF
|
||||
local bg_color = 0x00000000
|
||||
local x_padding = -400
|
||||
local x_padding = 0
|
||||
local y_padding = 0
|
||||
|
||||
local upper_left = text_area:new()
|
||||
--[[ local upper_left = text_area:new()
|
||||
upper_left:set_anchor(x_padding, 0)
|
||||
local bottom_left = text_area:new()
|
||||
bottom_left:set_anchor(x_padding, 550)
|
||||
bottom_left:set_anchor(x_padding, 550) ]]
|
||||
|
||||
local context = gui.renderctx.new(256, 224)
|
||||
|
||||
|
@ -250,7 +250,7 @@ end
|
|||
local function word_table(offset, first, last)
|
||||
local table = ""
|
||||
offset = offset + first
|
||||
count = (last - first) // 2
|
||||
count = (last - first) / 2
|
||||
for i=0,count do
|
||||
if i % 0x08 == 0x00 and i > 0 then
|
||||
table = table .. "\n"
|
||||
|
@ -320,30 +320,31 @@ local function display_sprite()
|
|||
local sprite_slot_id = clamp(slot, 0, 23)
|
||||
local slot = sprite_table + sprite_slot_id * 0x5E
|
||||
|
||||
upper_left:append_line("Slot number (0x%04X): %d", slot, sprite_slot_id)
|
||||
upper_left:append_line("Sprite: %s", sprites_map[read_word(slot)] or "UNKNOWN")
|
||||
upper_left:append_line("Sprite routine: $B3%04X", read_rom_word(sprite_routine_list + read_word(slot)))
|
||||
upper_left:append_line("Sprite number(0x00): %04X", read_word(slot))
|
||||
upper_left:append_line("Render order(0x02): %04X", read_word(slot+0x02))
|
||||
upper_left:append_line("Position(0x04/0x08): %s, %s", read_fixed_word(slot+0x04), read_fixed_word(slot+0x08))
|
||||
upper_left:append_line("Potential Ground(0x0C): %04X", read_word(slot+0x0C))
|
||||
upper_left:append_line("Ground Distance(0x0E): %04X", read_word(slot+0x0E))
|
||||
upper_left:append_line("Interaction type(0x10): %04X", read_word(slot+0x10))
|
||||
upper_left:append_line("OAM property+tile(0x12): %04X", read_word(slot+0x12))
|
||||
upper_left:append_line("Unknown data(0x14): %04X", read_word(slot+0x14))
|
||||
upper_left:append_line("Sprite frame (0x16-0x1A):%s", word_table(slot, 0x16, 0x1A))
|
||||
upper_left:append_line("Unknown data(0x1C): %04X", read_word(slot+0x1C))
|
||||
upper_left:append_line("On Ground(0x1E): %04X", read_word(slot+0x1E))
|
||||
upper_left:append_line("X speed(0x20): %s", read_byte(slot+0x20))
|
||||
upper_left:append_line("Unknown data(0x22): %04X", read_word(slot+0x22))
|
||||
upper_left:append_line("Y speed(0x24): %s", read_fixed_byte(slot+0x24))
|
||||
upper_left:append_line("Max X speed(0x26): %s", read_fixed_byte(slot+0x26))
|
||||
upper_left:append_line("Unknown data(0x28):\n%s", byte_table(slot, 0x28, 0x2D))
|
||||
upper_left:append_line("Sprite action(0x2E):%04X", read_word(slot+0x2E))
|
||||
upper_left:append_line("Unknown data(0x30):\n%s", byte_table(slot, 0x30, 0x55))
|
||||
upper_left:append_line("Status index(0x56):%04X", read_word(slot+0x56))
|
||||
upper_left:append_line("Spawn code(0x58):%04X", read_word(slot+0x58))
|
||||
upper_left:append_line("Unknown data(0x5A):\n%s", byte_table(slot, 0x5A, 0x5E))
|
||||
text(0,0, string.format("Slot number (0x%04X): %d\n", slot, sprite_slot_id) ..
|
||||
string.format("Sprite: %s\n", sprites_map[read_word(slot)] or "UNKNOWN") ..
|
||||
string.format("Sprite routine: $B3%04X\n", read_rom_word(sprite_routine_list .. read_word(slot))) ..
|
||||
string.format("Sprite number(0x00): %04X\n", read_word(slot)) ..
|
||||
string.format("Render order(0x02): %04X\n", read_word(slot..0x02)) ..
|
||||
string.format("Position(0x04/0x08): %s, %s\n", read_fixed_word(slot..0x04), read_fixed_word(slot..0x08)) ..
|
||||
string.format("Potential Ground(0x0C): %04X\n", read_word(slot..0x0C)) ..
|
||||
string.format("Ground Distance(0x0E): %04X\n", read_word(slot..0x0E)) ..
|
||||
string.format("Interaction type(0x10): %04X\n", read_word(slot..0x10)) ..
|
||||
string.format("OAM property..tile(0x12): %04X\n", read_word(slot..0x12)) ..
|
||||
string.format("Unknown data(0x14): %04X\n", read_word(slot..0x14)) ..
|
||||
string.format("Sprite frame (0x16-0x1A):%s\n", word_table(slot, 0x16, 0x1A)) ..
|
||||
string.format("Unknown data(0x1C): %04X\n", read_word(slot..0x1C)) ..
|
||||
string.format("On Ground(0x1E): %04X\n", read_word(slot..0x1E)) ..
|
||||
string.format("X speed(0x20): %s\n", read_byte(slot..0x20)) ..
|
||||
string.format("Unknown data(0x22): %04X\n", read_word(slot..0x22)) ..
|
||||
string.format("Y speed(0x24): %s\n", read_fixed_byte(slot..0x24)) ..
|
||||
string.format("Max X speed(0x26): %s\n", read_fixed_byte(slot..0x26)) ..
|
||||
string.format("Unknown data(0x28):\n%s\n", byte_table(slot, 0x28, 0x2D)) ..
|
||||
string.format("Sprite action(0x2E):%04X\n", read_word(slot..0x2E)) ..
|
||||
string.format("Unknown data(0x30):\n%s\n", byte_table(slot, 0x30, 0x55)) ..
|
||||
string.format("Status index(0x56):%04X\n", read_word(slot..0x56)) ..
|
||||
string.format("Spawn code(0x58):%04X\n", read_word(slot..0x58)) ..
|
||||
string.format("Unknown data(0x5A):\n%s\n", byte_table(slot, 0x5A, 0x5E))
|
||||
)
|
||||
end
|
||||
|
||||
local musics_list = load_csv(musics_path)
|
||||
|
@ -378,35 +379,37 @@ local function display_sound()
|
|||
play_sound_effect = false
|
||||
end
|
||||
|
||||
upper_left:append_line("Current index: %02X", read_word(sound_index))
|
||||
upper_left:append_line("cmd 0(0x00): %04X", tracked_addresses[sound_buffer+0x00])
|
||||
upper_left:append_line("cmd 1(0x02): %04X", tracked_addresses[sound_buffer+0x02])
|
||||
upper_left:append_line("cmd 2(0x04): %04X", tracked_addresses[sound_buffer+0x04])
|
||||
upper_left:append_line("cmd 3(0x06): %04X", tracked_addresses[sound_buffer+0x06])
|
||||
upper_left:append_line("cmd 4(0x08): %04X", tracked_addresses[sound_buffer+0x08])
|
||||
upper_left:append_line("cmd 5(0x0A): %04X", tracked_addresses[sound_buffer+0x0A])
|
||||
upper_left:append_line("cmd 6(0x0C): %04X", tracked_addresses[sound_buffer+0x0C])
|
||||
upper_left:append_line("cmd 7(0x0E): %04X", tracked_addresses[sound_buffer+0x0E])
|
||||
upper_left:append_line("sfx 0(0x00): %02X", read_byte(effect_buffer+0x00))
|
||||
upper_left:append_line("sfx 1(0x01): %02X", read_byte(effect_buffer+0x01))
|
||||
upper_left:append_line("sfx 2(0x02): %02X", read_byte(effect_buffer+0x02))
|
||||
upper_left:append_line("sfx 3(0x03): %02X", read_byte(effect_buffer+0x03))
|
||||
upper_left:append_line("sfx 4(0x04): %02X", read_byte(effect_buffer+0x04))
|
||||
upper_left:append_line("sfx 5(0x05): %02X", read_byte(effect_buffer+0x05))
|
||||
upper_left:append_line("sfx 6(0x06): %02X", read_byte(effect_buffer+0x06))
|
||||
upper_left:append_line("sfx 7(0x07): %02X", read_byte(effect_buffer+0x07))
|
||||
upper_left:append_line("sfx 8(0x08): %02X", read_byte(effect_buffer+0x08))
|
||||
upper_left:append_line("sfx 9(0x09): %02X", read_byte(effect_buffer+0x09))
|
||||
upper_left:append_line("sfx A(0x0A): %02X", read_byte(effect_buffer+0x0A))
|
||||
upper_left:append_line("sfx B(0x0B): %02X", read_byte(effect_buffer+0x0B))
|
||||
upper_left:append_line("sfx C(0x0C): %02X", read_byte(effect_buffer+0x0C))
|
||||
upper_left:append_line("sfx D(0x0D): %02X", read_byte(effect_buffer+0x0D))
|
||||
upper_left:append_line("sfx E(0x0E): %02X", read_byte(effect_buffer+0x0E))
|
||||
upper_left:append_line("sfx F(0x0F): %02X", read_byte(effect_buffer+0x0F))
|
||||
upper_left:append_line("SPC transfer id: 0x%02X", read_byte(spc_transfer_id))
|
||||
upper_left:append_line("Current song: %04X (%s)", read_byte(current_song), musics_map[read_byte(current_song)])
|
||||
upper_left:append_line("Mono/Stereo: %02X", read_byte(stereo_flag))
|
||||
upper_left:append_line("Play sound effect: %s", sound_effect_map[sound_effect])
|
||||
text(0, 0,
|
||||
string.format("Current index: %02X", read_word(sound_index)) ..
|
||||
string.format("\ncmd 0(0x00): %04X", tracked_addresses[sound_buffer..0x00]) ..
|
||||
string.format("\ncmd 1(0x02): %04X", tracked_addresses[sound_buffer..0x02]) ..
|
||||
string.format("\ncmd 2(0x04): %04X", tracked_addresses[sound_buffer..0x04]) ..
|
||||
string.format("\ncmd 3(0x06): %04X", tracked_addresses[sound_buffer..0x06]) ..
|
||||
string.format("\ncmd 4(0x08): %04X", tracked_addresses[sound_buffer..0x08]) ..
|
||||
string.format("\ncmd 5(0x0A): %04X", tracked_addresses[sound_buffer..0x0A]) ..
|
||||
string.format("\ncmd 6(0x0C): %04X", tracked_addresses[sound_buffer..0x0C]) ..
|
||||
string.format("\ncmd 7(0x0E): %04X", tracked_addresses[sound_buffer..0x0E]) ..
|
||||
string.format("\nsfx 0(0x00): %02X", read_byte(effect_buffer..0x00)) ..
|
||||
string.format("\nsfx 1(0x01): %02X", read_byte(effect_buffer..0x01)) ..
|
||||
string.format("\nsfx 2(0x02): %02X", read_byte(effect_buffer..0x02)) ..
|
||||
string.format("\nsfx 3(0x03): %02X", read_byte(effect_buffer..0x03)) ..
|
||||
string.format("\nsfx 4(0x04): %02X", read_byte(effect_buffer..0x04)) ..
|
||||
string.format("\nsfx 5(0x05): %02X", read_byte(effect_buffer..0x05)) ..
|
||||
string.format("\nsfx 6(0x06): %02X", read_byte(effect_buffer..0x06)) ..
|
||||
string.format("\nsfx 7(0x07): %02X", read_byte(effect_buffer..0x07)) ..
|
||||
string.format("\nsfx 8(0x08): %02X", read_byte(effect_buffer..0x08)) ..
|
||||
string.format("\nsfx 9(0x09): %02X", read_byte(effect_buffer..0x09)) ..
|
||||
string.format("\nsfx A(0x0A): %02X", read_byte(effect_buffer..0x0A)) ..
|
||||
string.format("\nsfx B(0x0B): %02X", read_byte(effect_buffer..0x0B)) ..
|
||||
string.format("\nsfx C(0x0C): %02X", read_byte(effect_buffer..0x0C)) ..
|
||||
string.format("\nsfx D(0x0D): %02X", read_byte(effect_buffer..0x0D)) ..
|
||||
string.format("\nsfx E(0x0E): %02X", read_byte(effect_buffer..0x0E)) ..
|
||||
string.format("\nsfx F(0x0F): %02X", read_byte(effect_buffer..0x0F)) ..
|
||||
string.format("\nSPC transfer id: 0x%02X", read_byte(spc_transfer_id)) ..
|
||||
string.format("\nCurrent song: %04X (%s)", read_byte(current_song), musics_map[read_byte(current_song)]) ..
|
||||
string.format("\nMono/Stereo: %02X", read_byte(stereo_flag)) ..
|
||||
string.format("\nPlay sound effect: %s", sound_effect_map[sound_effect])
|
||||
)
|
||||
end
|
||||
|
||||
local camera_x = 0x17BA
|
||||
|
@ -425,18 +428,20 @@ local tiledata_pointer = 0x0098
|
|||
track(tiledata_pointer, 3)
|
||||
|
||||
local function display_camera()
|
||||
upper_left:append_line("Camera X: %04X", read_word(camera_x))
|
||||
upper_left:append_line("Camera unknown 1: %04X", read_word(camera_unknown1))
|
||||
upper_left:append_line("Camera unknown 2: %04X", read_word(camera_unknown2))
|
||||
upper_left:append_line("Camera Y inc: %04X", read_word(camera_y_inc))
|
||||
upper_left:append_line("Camera Y: %04X", read_word(camera_y))
|
||||
upper_left:append_line("Camera unknown 3: %04X", read_word(camera_unknown3))
|
||||
upper_left:append_line("Camera unknown 4: %04X", read_word(camera_unknown4))
|
||||
upper_left:append_line("Camera unknown 5: %04X", read_word(camera_unknown5))
|
||||
upper_left:append_line("Camera last update X: %04X", read_word(camera_last_update_x))
|
||||
upper_left:append_line("Camera unknown 6: %04X", read_word(camera_unknown6))
|
||||
upper_left:append_line("Camera last update Y: %04X", read_word(camera_last_update_y))
|
||||
upper_left:append_line("Tiledata pointer: %06X", tracked_addresses[tiledata_pointer])
|
||||
text(0, 0,
|
||||
string.format("Camera X: %04X", read_word(camera_x)) ..
|
||||
string.format("\nCamera unknown 1: %04X", read_word(camera_unknown1)) ..
|
||||
string.format("\nCamera unknown 2: %04X", read_word(camera_unknown2)) ..
|
||||
string.format("\nCamera Y inc: %04X", read_word(camera_y_inc)) ..
|
||||
string.format("\nCamera Y: %04X", read_word(camera_y)) ..
|
||||
string.format("\nCamera unknown 3: %04X", read_word(camera_unknown3)) ..
|
||||
string.format("\nCamera unknown 4: %04X", read_word(camera_unknown4)) ..
|
||||
string.format("\nCamera unknown 5: %04X", read_word(camera_unknown5)) ..
|
||||
string.format("\nCamera last update X: %04X", read_word(camera_last_update_x)) ..
|
||||
string.format("\nCamera unknown 6: %04X", read_word(camera_unknown6)) ..
|
||||
string.format("\nCamera last update Y: %04X", read_word(camera_last_update_y)) ..
|
||||
string.format("\nTiledata pointer: %06X", tracked_addresses[tiledata_pointer])
|
||||
)
|
||||
end
|
||||
|
||||
local NMI = 0x0020
|
||||
|
@ -448,12 +453,14 @@ local frame_counter = 0x002A
|
|||
local active_frame_counter = 0x002C
|
||||
|
||||
local function display_engine()
|
||||
upper_left:append_line("NMI: %04X", read_word(NMI))
|
||||
upper_left:append_line("Game loop: %04X", read_word(game_loop))
|
||||
upper_left:append_line("Game mode NMI: %04X", read_word(game_mode_NMI))
|
||||
upper_left:append_line("Game mode: %04X", read_word(game_mode))
|
||||
upper_left:append_line("Frame counter: %04X", read_word(frame_counter))
|
||||
upper_left:append_line("Active frame counter: %04X", read_word(active_frame_counter))
|
||||
text(0, 0,
|
||||
string.format("NMI: %04X", read_word(NMI)) ..
|
||||
string.format("\nGame loop: %04X", read_word(game_loop)) ..
|
||||
string.format("\nGame mode NMI: %04X", read_word(game_mode_NMI)) ..
|
||||
string.format("\nGame mode: %04X", read_word(game_mode)) ..
|
||||
string.format("\nFrame counter: %04X", read_word(frame_counter)) ..
|
||||
string.format("\nActive frame counter: %04X", read_word(active_frame_counter))
|
||||
)
|
||||
end
|
||||
|
||||
local level = 0x00D3
|
||||
|
@ -463,52 +470,55 @@ local level_header = 0x0515
|
|||
local function display_level()
|
||||
local level_id = read_word(level)
|
||||
|
||||
upper_left:append_line("level number: %04X", level_id)
|
||||
upper_left:append_line("Sprite data pointer: FF%04X\n", read_rom_word(sprite_pointers + level_id*2))
|
||||
upper_left:append_line("LEVEL HEADER")
|
||||
upper_left:append_line("$0515 (0x00) Header: 0x%04X", read_word(level_header + 0x00))
|
||||
upper_left:append_line("$0517 (0x02): 0x%04X", read_word(level_header + 0x02))
|
||||
upper_left:append_line("$0519 (0x04): 0x%04X", read_word(level_header + 0x04))
|
||||
upper_left:append_line("$051B (0x06): Music id 0x%04X", read_word(level_header + 0x06))
|
||||
upper_left:append_line("$051D (0x08): 0x%04X", read_word(level_header + 0x08))
|
||||
upper_left:append_line("$051F (0x0A): 0x%04X", read_word(level_header + 0x0A))
|
||||
upper_left:append_line("$0521 (0x0C): 0x%04X", read_word(level_header + 0x0C))
|
||||
upper_left:append_line("$0523 (0x0E): 0x%04X", read_word(level_header + 0x0E))
|
||||
upper_left:append_line("$0525 (0x10): 0x%04X", read_word(level_header + 0x10))
|
||||
upper_left:append_line("$0527 (0x12) NMI Pointer: 0x%04X", read_word(level_header + 0x12))
|
||||
upper_left:append_line("$0529 (0x14) Level mode Pointer: 0x%04X", read_word(level_header + 0x14))
|
||||
upper_left:append_line("$052B (0x16): 0x%04X", read_word(level_header + 0x16))
|
||||
upper_left:append_line("$052D (0x18): 0x%04X", read_word(level_header + 0x18))
|
||||
upper_left:append_line("$052F (0x1A): 0x%04X", read_word(level_header + 0x1A))
|
||||
upper_left:append_line("$0531 (0x1C): 0x%04X", read_word(level_header + 0x1C))
|
||||
upper_left:append_line("$0533 (0x1E) Spawn X position: 0x%04X", read_word(level_header + 0x1E))
|
||||
upper_left:append_line("$0535 (0x20) Spawn Y position: 0x%04X", read_word(level_header + 0x20))
|
||||
upper_left:append_line("$0537 (0x22): 0x%04X", read_word(level_header + 0x22))
|
||||
upper_left:append_line("$0539 (0x24): 0x%04X", read_word(level_header + 0x24))
|
||||
upper_left:append_line("$053B (0x26): 0x%04X", read_word(level_header + 0x26))
|
||||
upper_left:append_line("$053D (0x28) Exit 1: 0x%04X", read_word(level_header + 0x28))
|
||||
upper_left:append_line("$053F (0x2A) Exit 2: 0x%04X", read_word(level_header + 0x2A))
|
||||
upper_left:append_line("$0541 (0x2C) Exit 3: 0x%04X", read_word(level_header + 0x2C))
|
||||
upper_left:append_line("$0543 (0x2E) Exit 4: 0x%04X", read_word(level_header + 0x2E))
|
||||
upper_left:append_line("$0545 (0x30) Exit 5: 0x%04X", read_word(level_header + 0x30))
|
||||
upper_left:append_line("$0547 (0x32) Exit 6: 0x%04X", read_word(level_header + 0x32))
|
||||
upper_left:append_line("$0549 (0x34) Exit 7: 0x%04X", read_word(level_header + 0x34))
|
||||
upper_left:append_line("$054B (0x36) Exit 8: 0x%04X", read_word(level_header + 0x36))
|
||||
upper_left:append_line("$054D (0x38): 0x%04X", read_word(level_header + 0x38))
|
||||
upper_left:append_line("$0551 (0x3A): 0x%04X", read_word(level_header + 0x3A))
|
||||
text(0,0,
|
||||
string.format("level number: %04X", level_id) ..
|
||||
string.format("\nSprite data pointer: FF%04X\n", read_rom_word(sprite_pointers + level_id*2)) ..
|
||||
string.format("\nLEVEL HEADER") ..
|
||||
string.format("\n$0515 (0x00) Header: 0x%04X", read_word(level_header + 0x00)) ..
|
||||
string.format("\n$0517 (0x02): 0x%04X", read_word(level_header + 0x02)) ..
|
||||
string.format("\n$0519 (0x04): 0x%04X", read_word(level_header + 0x04)) ..
|
||||
string.format("\n$051B (0x06): Music id 0x%04X", read_word(level_header + 0x06)) ..
|
||||
string.format("\n$051D (0x08): 0x%04X", read_word(level_header + 0x08)) ..
|
||||
string.format("\n$051F (0x0A): 0x%04X", read_word(level_header + 0x0A)) ..
|
||||
string.format("\n$0521 (0x0C): 0x%04X", read_word(level_header + 0x0C)) ..
|
||||
string.format("\n$0523 (0x0E): 0x%04X", read_word(level_header + 0x0E)) ..
|
||||
string.format("\n$0525 (0x10): 0x%04X", read_word(level_header + 0x10)) ..
|
||||
string.format("\n$0527 (0x12) NMI Pointer: 0x%04X", read_word(level_header + 0x12)) ..
|
||||
string.format("\n$0529 (0x14) Level mode Pointer: 0x%04X", read_word(level_header + 0x14)) ..
|
||||
string.format("\n$052B (0x16): 0x%04X", read_word(level_header + 0x16)) ..
|
||||
string.format("\n$052D (0x18): 0x%04X", read_word(level_header + 0x18)) ..
|
||||
string.format("\n$052F (0x1A): 0x%04X", read_word(level_header + 0x1A)) ..
|
||||
string.format("\n$0531 (0x1C): 0x%04X", read_word(level_header + 0x1C)) ..
|
||||
string.format("\n$0533 (0x1E) Spawn X position: 0x%04X", read_word(level_header + 0x1E)) ..
|
||||
string.format("\n$0535 (0x20) Spawn Y position: 0x%04X", read_word(level_header + 0x20)) ..
|
||||
string.format("\n$0537 (0x22): 0x%04X", read_word(level_header + 0x22)) ..
|
||||
string.format("\n$0539 (0x24): 0x%04X", read_word(level_header + 0x24)) ..
|
||||
string.format("\n$053B (0x26): 0x%04X", read_word(level_header + 0x26)) ..
|
||||
string.format("\n$053D (0x28) Exit 1: 0x%04X", read_word(level_header + 0x28)) ..
|
||||
string.format("\n$053F (0x2A) Exit 2: 0x%04X", read_word(level_header + 0x2A)) ..
|
||||
string.format("\n$0541 (0x2C) Exit 3: 0x%04X", read_word(level_header + 0x2C)) ..
|
||||
string.format("\n$0543 (0x2E) Exit 4: 0x%04X", read_word(level_header + 0x2E)) ..
|
||||
string.format("\n$0545 (0x30) Exit 5: 0x%04X", read_word(level_header + 0x30)) ..
|
||||
string.format("\n$0547 (0x32) Exit 6: 0x%04X", read_word(level_header + 0x32)) ..
|
||||
string.format("\n$0549 (0x34) Exit 7: 0x%04X", read_word(level_header + 0x34)) ..
|
||||
string.format("\n$054B (0x36) Exit 8: 0x%04X", read_word(level_header + 0x36)) ..
|
||||
string.format("\n$054D (0x38): 0x%04X", read_word(level_header + 0x38)) ..
|
||||
string.format("\n$0551 (0x3A): 0x%04X", read_word(level_header + 0x3A))
|
||||
)
|
||||
end
|
||||
|
||||
local watched_addresses = {}
|
||||
local exec_watched_addresses = {}
|
||||
local exec_watched_count = {}
|
||||
local function display_watch()
|
||||
upper_left:append_line("RAM watches: ")
|
||||
local str = ""
|
||||
str = str.."\nRAM watches: "
|
||||
for address, read_callback in pairs(watched_addresses) do
|
||||
upper_left:append_line(read_callback())
|
||||
str = str.."\n"..read_callback()
|
||||
end
|
||||
upper_left:append_line("Execution counts: ")
|
||||
str = str.."\nExecution counts: "
|
||||
for address, read_callback in pairs(exec_watched_addresses) do
|
||||
upper_left:append_line(read_callback())
|
||||
str = str.."\n"..read_callback()
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -518,8 +528,7 @@ local function display_ppu_state()
|
|||
ppu_layer_state = ppu_layer_state .. (layer_state[2] and "Enabled, " or "Disabled, ")
|
||||
ppu_layer_state = ppu_layer_state .. (layer_state[3] and "Enabled" or "Disabled") .. "}"
|
||||
|
||||
bottom_left:append_line(dump_mmio_string())
|
||||
bottom_left:append_line(ppu_layer_state)
|
||||
text(0, 200, dump_mmio_string().."\n"..ppu_layer_state)
|
||||
end
|
||||
|
||||
local function display_cgram_state()
|
||||
|
@ -588,8 +597,8 @@ function on_paint(not_synth)
|
|||
display_ppu_state()
|
||||
display_cgram_state()
|
||||
|
||||
upper_left:render()
|
||||
bottom_left:render()
|
||||
--[[ upper_left:render()
|
||||
bottom_left:render() ]]
|
||||
|
||||
gui.renderctx.setnull()
|
||||
context:run()
|
||||
|
|
Loading…
Add table
Reference in a new issue