Skip to content

Latest commit

 

History

History
729 lines (719 loc) · 14.2 KB

File metadata and controls

729 lines (719 loc) · 14.2 KB

String inventory

Every legible run of printable bytes in the two executables, filtered so that 68000 opcodes that happen to be ASCII mostly fall out. Produced by

python tools/cdistrings.py _work/files/cdi_link
python tools/cdistrings.py _work/files/cdi_bumper

The function names dominate this listing; they have a page of their own in symbol-inventory.md and are analysed in docs/04-symbol-table.md. What is left after them is the UI, the file names, the item table and two panic messages — see docs/09-savegame-and-nvram.md.

Strings in cdi_link are stored in the module's initialised-data image as <u8 length><u16 address><bytes>, so the listing below is in the order the strings were declared in the source.

cdi_link

== 1 disc paths ==
01d6da  /nvr/link1.nvriP

== 629 text runs ==
000047  ~cdi_link
000999  check_for_key
000eb5  start_anim
000f49  start_boss_first_anim
001067  open_up_area
001367  pick_up_perm_tool
001723  check_if_have_tool
001975  leave_item
0019bf  load_font
0019fd  font_draw
001a3f  color_font_draw
001a83  font_erase
001ded  signal_handler
0020e1  pre_bumper_video_init
002507  post_bumper_video_init
002535  wait_for_line_event
002685  align_buffers_and_tables
00271f  init_cmap_addresses
0027f3  init_sprite_buffer_addresses
002853  init_table_widths
0028b9  flip_A
002929  clear_buffers
0029b5  initialize_cursor
002a03  set_icf
002dab  .gZJm
002e13  set_dark_room
002e4f  open_rtrs
002eb3  fade_up_plane_AB
002f4d  fade_out_plane_AB
002f9d  fade_up_plane_B
002feb  fade_up_plane_A
003037  fade_out_plane_A
003085  fade_out_plane_B
003233  init_rtr
00325d  plane_A_over_B
00328d  plane_B_over_A
003351  set_fctA_rl7
003383  set_fctA_clut7
003447  set_fctB_rl7
0034a9  animation_flip_A
003649  screen_dimmer
0036a3  attenuation
003701  sattenuation
0037f9  init_audio
003a45  load_effects
003ac1  restore_smaps
003c1d  KHABA
003c2f  xHABA
003ccb  start_music
003d19  KHABA
003d2b  xHABA
003d71  restart_music
003e01  stop_music
003f97  ac_process
00405f  ac_signal_process
00416f  play_sound
00421b  stopsound
0043e4  **** Can not install trap handler ****
00449c  2ABAHA
00458c  N^NuNV
0045b8  N^NuNV
004624  N^NuNV
00468a  N^NuNV
004792  N^NuNV
00481c  &_NuNV
004ab6  N^NuNV
004b4c  N^NuNV
004cac  N^NuNV
004e34  N^NuNV
004eb5  check_for_restart
004f4b  get_abs_x
004fbd  init_combat
004fff  kill_sprite
005037  kill_sprite_noflash
00507b  check_combat_box
005195  check_box
005263  check_riding_box
005f45  JgFJk
006801  @fLJk
006e0f  check_enemy_combat
006e4d  get_water_of_life
006e87  :HABA
006fef  :HABA
0070cc  grpl/
0071b3  :HABA
0073bd  check_sprite_collisions
0074c7  get_collision_result
00757b  mmenu_init
00787f  mmenu_choice
00792b  new_mmenu
007985  mmenu_initial_clear
0079e7  mmenu_clear_area
007bad  scroll_position
007c39  mmenu_scroll_down
007d79  mmenu_scroll_up
007dc9  mmenu_scroll_down_intermediate
007e1b  mmenu_scroll_up_intermediate
00810d  mmenu_initial_draw
00842f  mmenu_redraw
0084ff  mmenu_highlight_option
008701  mmenu_loop
0087f7  can_save_restore
008835  wait_for_menu_option
00887d  create_file_and_host_names
008923  load_game_from_NVR
008969  nvr_avail
008a1f  save_game_to_NVR
008aa5  encode_mem_space
008b67  decode_mem_space
008d1f  verify_save_space
008d6f  playfield
008e71  demo_playfield
008ef3  init_playfield
009017  init_playfield_size
009045  convert_palette
00906f  back_on_overworld
0090fd  back_on_playfield
00921d  init_death
0092fd  death_loop
00933d  start_continue
0093c3  update_death_pose
00941b  death_loop_bottom
0094c3  draw_filled_rect
009551  draw_initial_death_screen
0095c7  draw_death_number
009605  erase_death_number
009651  read_sprite_cycle_colors2
00971d  read_bg_cycle_colors
009b0b  LgHJ-
00a50d  drop_sprite
00a5df  chk_raft_pos
00a6ab  power_glove_blast
00a845  power_glove_effect
00a863  BfdJ-
00a86f  NgXJm
00ac57  init_weapon
00ad09  update_pf_lct
00ae75  check_screen_edges
00aeb3  old_get_sprite_block
00b33b  get_sprite_block
00b38b  restore_sprite_blocks
00b3e5  write_sprite_blocks
00b441  write_vert_blocks
00b495  restore_vert_blocks
00b56b  reinit_lct_A
00b613  reinit_lct_B
00b755  init_sprites
00b89f  check_stick
00b92d  fix_jump_stick
00bb07  retrieve_help_state
00bb6f  retrieve_mkt_demo
00bbd3  get_input
00bc45  debounce_trig
00bc95  debounce_trig_music
00bd3f  debounce_stick
00be3d  wait_for_button_press_music
00bea5  init_random
00bee5  randomize
00bf84  fRpc/
00bfed  check_for_animations
00c5d3  move_link
00c7b9  handle_knockback
00c883  init_sword_thrust
00cb2f  sword_thrust
00cbeb  end_thrust
00cc67  end_thrust_after_anim
00ccf7  check_map_row
00ce39  straight_shot
00cf87  lob_shot
00d09d  lob_bomb
00d293  triple_shot
00d2d9  check_map_while_walking
00d6db  move_1_block
00d7c7  check_which_upward_motion
00d875  check_which_downward_motion
00d9c7  check_for_climb
00dd09  XfZHm
00dd71  check_map_while_jump_descent
00de59  jump_up
00df07  jump_up_dir
00df77  init_big_jump
00e055  big_jump_up
00e0f5  big_jump_down
00e1fb  TfrJ-
00e29d  slide
00e70f  climb
00e755  jump_off
00e93d  init_link
00ea55  init_rope
00ecc1  using_rope
00eda1  check_for_rope_path
00ee15  draw_rope
00ee75  erase_rope
00eeb7  go_find_hero_action
00eef1  set_link_position
00ef4d  set_link_position_and_dir
00f135  check_enemy_motion
00f483  check_sleepers
00f551  wake_on_chance
00f685  get_new_image
00f783  get_new_macro_image
00f933  get_image_number
00fc79  move_types_1_and_3
00fe91  finish_move
00ffa9  set_walker
0103d1  move_type_4
010627  check_for_alternate_macro
010715  set_alternate_macro
0107a3  do_alternate_macro
0107fd  end_alternate_macro
010997  move_type_2
010d6b  move_type_5_or_6_1_block
011197  move_type_6
011505  init_enemies
011571  2fFJk
011639  reinit_sprite
011765  main_init
011839  init_type_1
011b73  init_type_3
011e29  init_type_2
011ed7  init_type_4
012005  init_type_6
012339  place_raft
012537  init_type_7
01276b  init_type_8
0127dd  init_sprite_macros
0128cf  check_if_on_screen
012949  check_if_was_on_screen
0129ab  go_find_action
012b77  erase_riding_paths
012c0b  dHABA
012cd1  dHABA
012d35  get_random_bound
012dbf  init_error_buffer
012dfd  initial_areas
012ebd  show_label
012f51  restore_label
013089  set_new_map
0131c5  check_world_hotspots
0131ed  noshow_label
01369f  scroll_world
01390b  get_help_instruction
01399d  set_ov_help_off
0139fb  set_help_off
013a23  set_mkt_demo_off
013a69  delayed_wait
013c75  do_mmenu_code
013cbb  quit_game
013cd9  init_map
013d4d  move_map
013def  flip_world_lcts
013e2b  zero_data_cil
013e65  zero_video_cil
013f2b  play_error
014061  load_world
0144c3  load_playfield
014709  initial_load
014869  KHBBB
014adf  play_animation
014b11  abort_rtrs
014b7f  play_overworld_music
014bdb  stop_overworld_music
014cd9  start_voice_over
014d51  set_pcb
014da7  set_pcl
014dd9  reset_pcl
014f3b  load_piracy
01507b  start_playing_credits
0154c9  roll_credits
0156f7  KHBBB
015b2d  play_background_animation
015bf7  flip_backgrounds
015cc5  KHBBB
015d17  load_backgrounds
015d65  win_game
016405  play_title
016551  install_palette
0165c7  check_buttons
016635  clean_disc
01673d  play_bumper
0167cb  prepare_mod_dir
0167f9  (HABA
016907  `HABA
016939  <HABA
016951  init_environment_projectiles
01698d  (HABA
0169ad  (HABA
0169cb  clear_projectiles
0169ff  (HABA
016a21  (HABA
016a47  projectile_on_field
016acb  (HABA
016af7  (HABA
016b1b  (HABA
016b39  (HABA
016b59  (HABA
016b75  (HABA
016b9b  (HBBB
016bb7  (HBBB
016bdb  (HBBB
016bf7  (HBBB
016c23  (HBBB
016c4f  (HBBB
016c6b  (HABA
016c8b  (HBBB
016ca7  (HABA
016cc7  (HBBB
016ce3  (HABA
016d01  (HABA
016d1f  (HABA
016d3d  (HABA
016d5b  (HABA
016d79  (HABA
016db1  (HBBB
016deb  (HBBB
016e0f  (HABA
016e39  (HABA
016e55  (HABA
016e71  (HABA
016e8d  (HABA
016eab  (HABA
016ec9  (HABA
016ee7  (HABA
016eff  (HBBB
016f1d  (HABA
016f35  init_projectile
016f65  (HABA
016f85  (HABA
016fab  (HABA
016fcb  (HABA
016ff7  erase_projectiles
017027  (HABA
017049  (HABA
017069  (HABA
017085  (HABA
0170a3  (HABA
0170c1  (HABA
0170df  (HABA
0170fd  (HABA
017123  (HABA
017157  (HABA
017175  (HABA
017191  (HABA
0171b1  (HABA
0171d1  (HABA
0171e9  (HBBB
017207  (HABA
017225  (HABA
017247  (HBBB
017263  (HBBB
01727f  (HABA
0172a1  (HBBB
0172bd  (HBBB
0172d9  (HABA
0172f9  (HBBB
017315  (HABA
017335  (HBBB
017351  (HABA
017369  (HBBB
017387  (HABA
01739f  (HBBB
0173bd  (HABA
0173db  (HABA
0173fb  (HABA
01741d  (HABA
017447  (HABA
017463  (HABA
01747f  (HABA
01749b  (HABA
0174b3  (HBBB
0174d1  (HABA
0174f1  (HABA
01750f  (HABA
01752f  (HABA
01754d  (HABA
017571  (HABA
01758f  (HABA
0175a7  (HBBB
0175c5  (HABA
0175dd  (HBBB
0175fb  (HABA
017613  (HBBB
017633  (HABA
01764b  (HBBB
01766b  (HABA
017683  (HBBB
0176a5  (HABA
0176c5  (HABA
0176e5  (HABA
017703  (HABA
01772b  (HBBB
017747  (HABA
01776f  (HBBB
01778b  (HABA
0177a3  (HBBB
0177c1  (HABA
0177e5  (HABA
017805  (HABA
017823  (HABA
017849  (HABA
017867  (HABA
017885  (HABA
0178a3  (HABA
0178c3  (HABA
0178e7  (HABA
01790b  (HABA
01792f  (HABA
017953  (HABA
017971  (HABA
017997  (HABA
0179b5  update_projectiles
0179e5  (HABA
017a0b  (HABA
017a3f  (HABA
017a5b  (HABA
017a89  (HABA
017aa5  (HABA
017ac7  (HABA
017ae9  (HABA
017b0f  (HABA
017b85  (HABA
017bbf  check_projectiles
017bf5  (HABA
017c17  (HABA
017c3b  (HABA
017c6f  (HABA
017c8b  (HABA
017cb9  (HABA
017cd5  (HABA
017d03  (HABA
017d25  (HABA
017d59  draw_projectiles
017d8d  (HABA
017e0b  (HBBB
017e3d  (HBBB
017ef7  :HABA
017f5d  (HABA
017f85  (HABA
017fab  (HABA
018017  (HABA
018041  (HABA
018075  (HABA
018097  (HABA
0180c3  (HABA
018129  (HABA
01815d  (HBBB
01817f  (HABA
0181d9  check_collisions
01820d  (HABA
01824b  (HABA
018285  (HABA
0182b1  (HCBC
0182d1  (HCBC
0182f3  (HCBC
018315  (HCBC
01833b  (HCBC
018361  reflect_projectile
01853f  check_vulnerablility
0185a3  (HBBB
0185d3  (HBBB
0185fd  (HBBB
018653  (HABA
0186a3  (HABA
018711  (HABA
018735  (HABA
018759  (HABA
018783  (HABA
0187a3  (HABA
0187c3  (HABA
0187ed  (HABA
018819  (HABA
01883b  (HABA
018857  (HABA
018887  check_map
0188d3  init_hit
01891f  init_miss
018a2f  :HBBB
018a97  :HBBB
018b7b  init_enemy_projectiles
019779  setup_projectile_types
019877  fill_tool_list
0198bf  add_to_tool_list
0198f7  check_lamp_highlight
01992d  check_canteen_highlight
019ae3  call_subscreen
019b7b  get_first_item
019c32  fjpc`hR
019c4a  fRpc`P
019cab  find_next_item
019d0b  highlight_item
019d67  draw_selected_icon
019ddf  erase_selected_icon
019ea9  erase_item_name
019f61  draw_item_name
019faf  unhighlight_item
01a0cf  icon_to_from_save_buffer
01a1cd  draw_highlighted_icon
01a335  scroll_on_subscreen
01a4b3  scroll_off_subscreen
01a5ad  draw_initial_subscreen
01a639  draw_item
01a6a7  draw_item_quantity
01a6e9  draw_edge
01a9f3  draw_border
01aae5  draw_outlined_box
01ab7d  draw_an_item
01ac6d  draw_other_items
01acc5  draw_sword
01ad0b  draw_shield
01adaf  load_menu_icons
01ae05  initial_item_quantity
01ae4f  use_item
01ae6f  tell_what_got
01af59  display_got_sign
01af89  wait_got_sign
01afc9  take_out_got_sign
01b043  display_clean_disc_sign
01b0d9  my_sprintf
01b1d9  update_tools
01b239  delete_tool
01b471  sprite_hits_tool
01b771  draw_tools
01b86f  erase_tools
01b9c5  create_playfield_tools
01ba01  add_bombs_to_buy
01ba37  add_fake_bombs
01ba6b  add_ropes_to_buy
01baa1  add_fake_ropes
01bad5  add_oil_to_buy
01bb09  add_fake_oil
01bc5d  add_to_playfield_tools
01bcbb  load_tool_imagery
01bcf9  :HABA
01be59  check_tool_collision
01beb5  set_life_hearts
01bf07  hero_hit
01bfcb  restore_life
01c047  draw_life_hearts
01c0a5  draw_heart
01c0f5  erase_life_hearts
01c13f  mark_experience
01c189  unmark_experience
01c1d9  check_experience
01c217  clear_area_experiences
01c28b  can_open_door
01c2ed  bring_up_locked_sign
01c337  take_out_locked_sign
01c37b  use_rubies
01c3ef  display_rubies_sign
01c421  wait_rubies_sign
01c465  take_out_rubies_sign
01c4a5  init_bomb
01c51d  explode_bomb
01c781  init_bomb_hit
01c7eb  light_lantern
01c85d  lantern_brightness
01c8e1  dim_lantern
01c985  buy_item
01c9ef  more_items
01cb03  Continue?
01d67c  Lldata.rtr
01d688  Vlanim.rtr
01d6c8  Faces of Evil 1
01d71e  nSave Before End?
01d732  Start New Game?
01d744  Game MenuD
01d758  Not Enough Memory toD
01d776  Start GameP
01d85f  lHelp
01d866  rNew Game
01d871  |End Game
01d87e  Continue Game
01d88e  Load Game
01d89a  Save Game
01d8b1  Cancel
01d8ba  Game Three
01d8c7  Game Two
01d8d2  Game One
01d8ef  The Faces Of Evil
01d903  ldata.rtr
01d90f  ldata1.rtr
01d91c  ldata2.rtr
01d99b  cdi_bumper
01d9a8  cdi_bumpdata
01d9b7  cdi_bumpdata
01d9c6  ersatz_1
01d9e1  "*cdi_bumper
01da9f  lmusic.rtr
01dadd  &6Please Clean
01daec  &DYour DiscP
01dc73  ((Crystal
01dc83  (4Diamond
01dc94  (BReflection
01dca1  (NCrystal of
01dcae  (ZVision
01dcb7  (bCrystal of
01dcc4  (nBerries
01dcce  (vGrapple
01dcda  Necklace
01dcef  Canteen
01dcf9  Canteen
01dd03  Koridai
01dd0d  Book of
01dd17  Glove
01dd1f  Power
01dd27  Ropes
01dd2f  Bombs
01dd37  Snowballs
01dd43  Firestones
01dd57  Helmet
01dd60  Winged
01dd69  of Vision
01dd75  Lantern
01dd7f  Lantern
01dd89  Magic
01dd8f  )$Lantern
01dda2  )LLocked!
01ddac  )TNot Enough
01df6a  0               HHHHHHHHHH       BBBBBB
01dfa5  DDDDDD
01dfe8  64/nvr/csd
01dff9  =7B eaioutsrdfhlnpEAIOUTSRDFHLNP
01e360  N^NuNV
01ee8e  bHgD0
01f0cc  N^NuNV
01f4ac  N^NuNV
01f710  N^NuNV
01fb64  ABAN@
01ff22  rYBBN@

cdi_bumper

== 0 disc paths ==

== 64 text runs ==
000048  cdi_bumper
000212  **** Can't install trap handler ****
000428  N]Nucdi_bumpdata
0004c2  N]NuNU
000516  N]NuNU
0005a2  N]NuNU
00064a  N]NuNU
000a80  N]NuNU
000bae  N]NuNU
000e4c  N]NuNU
000f78  `XHWHo
000fdc  N]NuNU
00100e  N]Nubumper.rtf
00101d  count
001023  cluts
001029  frame_sizes
001035  filenum
0010b7  ,HWHx
00118f  ,HWHx
001206  N]NuNU
0012bc  N]NuNU
001376  N]NuNU
0013c6  N]NuNU
001404  N]NuNU
001420  N]NuNU
00143c  N]NuNU
001496  N]NuNU
0014ca  N]NuNU
001540  N]NuNU
0015b2  N]NuNU
0015da  N]NuNU
001604  N]Nu/nvr/csd
001a3a  N]NuNU
001ae0  N]NuNU
001c6c  N]NuNU
001c9a  N]NuNU
001d28  N]NuNU
001d80  N]NuNU
001de6  N]NuNU
001e2a  N]NuNU
001e68  N]NuNU
001fd0  N]NuNU
002036  N]NuNU
00206c  N]NuNU
0020a8  N]NuNU
002106  N]NuNU
002156  N]NuNU
0021e6  N]NuNU
00223c  N]NuNU
002280  N]NuNU
0022b8  N]NuNU
002328  N]NuNU
002350  bHgD0
00240e  N]NuNU
00243a  N]NuNU
002516  H@BAHABBHB
002918  N]NuNU
0029e7  RN]NuNU
002b4c  N]NuNU
002bc2  N]NuNU
002bea  NuNuNu
002c7d  0               HHHHHHHHHH       BBBBBB
002cb8  DDDDDD
002d33  Dcdi_bumpdata