Table/Index Cross-Reference Report for build\rom_decompiled.json
================================================================

Static offsets are emitted only when an index register value can be derived from nearby immediate loads in the current JSON. Other indexed accesses are dynamic.

LCD correlation hints
  term 'CONNECT': no LCD/text candidate hits in current decompile
  term 'CONNECT: OK': no LCD/text candidate hits in current decompile
  term 'CONNECT: NOT ACT': no LCD/text candidate hits in current decompile
  term 'NOT ACT': no LCD/text candidate hits in current decompile
  term 'COMM LINK': 2 candidate hit(s): H'77F4 'COMM LINK ITEM-1Xw', H'78F4 'COMM LINK ITEM-2Xx'
  term 'COMPLETED': 1 candidate hit(s): H'A025 'COMPLETED'
  display builder xrefs: H'5A91:165, H'5EED:15, H'5E24:14, H'5B88:13, H'5C91:10, H'5D9A:5
  LCD driver routines: H'3F40 lcd_wait_and_transfer
  caveat: LCD strings can be builder/script output; absence of a literal term does not disprove runtime composition.

primary_value_table_candidate H'E000-H'E3FF (negative H'2000; direct H'F900-H'F91F)
  accesses=31 reads=21 writes=10 dynamic=11
  static offsets: H'0000, H'0004, H'0006, H'0046, H'0080, H'0102, H'0124, H'0126, H'014E, H'016E, H'0172, H'01EC, H'0220
  functions: loc_BBAB:5, loc_2650:3, loc_4096:3, loc_1795:2, loc_19DB:2, loc_1A35:2, loc_48FA:2, vec_ad_adi_3D99:2, <no function>:1, loc_1705:1, loc_174D:1, loc_17C9:1
  - H'170C read offset H'014E -> H'E14E; loc_1705; BTST.W #15, @H'E14E
  - H'175A read offset H'016E -> H'E16E; loc_174D; BTST.W #13, @H'E16E
  - H'179C read offset H'0172 -> H'E172; loc_1795; BTST.W #13, @H'E172
  - H'17A7 read offset H'0220 -> H'E220; loc_1795; BTST.W #15, @H'E220
  - H'17D0 read offset H'0126 -> H'E126; loc_17C9; BTST.W #12, @H'E126
  - H'1802 read offset H'0126 -> H'E126; loc_17FB; BTST.W #12, @H'E126
  - H'183A read offset H'0126 -> H'E126; loc_182D; BTST.W #5, @H'E126
  - H'189E read offset H'0126 -> H'E126; loc_1891; BTST.W #5, @H'E126
  - H'18F4 read offset H'0126 -> H'E126; loc_18E7; BTST.W #5, @H'E126
  - H'19E3 read index dynamic via R3 operand @(-H'2000,R3); loc_19DB; MOV:G.W @(-H'2000,R3), R0
  - H'1A03 read index dynamic via R3 operand @(-H'2000,R3); loc_19DB; CMP:G.W @(-H'2000,R3), R1
  - H'1A3D read index dynamic via R3 operand @(-H'2000,R3); loc_1A35; MOV:G.W @(-H'2000,R3), R0
  - H'1A6B read index dynamic via R3 operand @(-H'2000,R3); loc_1A35; CMP:G.W @(-H'2000,R3), R0
  - H'2657 read offset H'0124 -> H'E124; loc_2650; MOV:G.W @H'E124, R0
  - H'266F read offset H'0004 -> H'E004; loc_2650; BTST.W #13, @H'E004
  - H'268B read offset H'0124 -> H'E124; loc_2650; CMP:G.W @H'E124, R0
  - H'3DDA read offset H'0102 -> H'E102; vec_ad_adi_3D99; MOV:G.W @H'E102, R0
  - H'3DFA read offset H'0102 -> H'E102; vec_ad_adi_3D99; CMP:G.W @H'E102, R1
  - H'3F8C write index dynamic via R0 operand @(-H'2000,R0); <no function>; CLR.W @(-H'2000,R0)
  - H'402C write offset H'0046 -> H'E046; loc_400C; CLR.W @H'E046
  - H'4077 write index dynamic via R0 operand @(-H'2000,R0); loc_4075; CLR.W @(-H'2000,R0)
  - H'4096 write offset H'0000 -> H'E000; loc_4096; MOV:G.W #H'0080, @H'E000
  - H'409C write offset H'0006 -> H'E006; loc_4096; MOV:G.W #H'8000, @H'E006
  - H'40A2 write offset H'0080 -> H'E080; loc_4096; MOV:G.W #H'FFFF, @H'E080
  - H'490F read offset H'01EC -> H'E1EC; loc_48FA; BTST.W #13, @H'E1EC
  - H'4915 read offset H'01EC -> H'E1EC; loc_48FA; MOV:G.W @H'E1EC, R0
  - H'BC75 write index dynamic via R4 operand @(-H'2000,R4); loc_BBAB; MOV:G.W R0, @(-H'2000,R4)
  - H'BC95 write index dynamic via R4 operand @(-H'2000,R4); loc_BBAB; MOV:G.W R0, @(-H'2000,R4)
  - H'BCEC read index dynamic via R4 operand @(-H'2000,R4); loc_BBAB; MOV:G.W @(-H'2000,R4), R0
  - H'BD1A write index dynamic via R4 operand @(-H'2000,R4); loc_BBAB; MOV:G.W R0, @(-H'2000,R4)
  - H'BD35 write index dynamic via R4 operand @(-H'2000,R4); loc_BBAB; MOV:G.W R0, @(-H'2000,R4)

secondary_value_table_candidate H'E400-H'E7FF (negative H'1C00; direct H'F940-H'F95F)
  accesses=8 reads=6 writes=2 dynamic=8
  functions: loc_1A35:2, loc_1A9C:2, <no function>:1, loc_19A2:1, loc_4075:1, loc_BBAB:1
  - H'19AA read index dynamic via R3 operand @(-H'1C00,R3); loc_19A2; MOV:G.W @(-H'1C00,R3), R0
  - H'1A4B read index dynamic via R3 operand @(-H'1C00,R3); loc_1A35; MOV:G.W @(-H'1C00,R3), R1
  - H'1A5B read index dynamic via R3 operand @(-H'1C00,R3); loc_1A35; MOV:G.W @(-H'1C00,R3), R1
  - H'1A81 read index dynamic via R3 operand @(-H'1C00,R3); <no function>; AND.W @(-H'1C00,R3), R1
  - H'1AB4 read index dynamic via R3 operand @(-H'1C00,R3); loc_1A9C; BTST.W R0, @(-H'1C00,R3)
  - H'1AC1 read index dynamic via R3 operand @(-H'1C00,R3); loc_1A9C; BTST.W R0, @(-H'1C00,R3)
  - H'407B write index dynamic via R0 operand @(-H'1C00,R0); loc_4075; CLR.W @(-H'1C00,R0)
  - H'BDE5 write index dynamic via R4 operand @(-H'1C00,R4); loc_BBAB; MOV:G.W R0, @(-H'1C00,R4)

current_value_table_candidate H'E800-H'EBFF (negative H'1800; direct H'F920-H'F93F)
  accesses=14 reads=1 writes=13 dynamic=8
  static offsets: H'0000, H'0006, H'0080, H'0102, H'0124, H'01EC
  functions: loc_4096:3, loc_BBAB:3, <no function>:1, loc_15E0:1, loc_19DB:1, loc_1A35:1, loc_2650:1, loc_4075:1, loc_48FA:1, loc_BAF2:1
  - H'15ED write offset H'0102 -> H'E902; loc_15E0; MOV:G.W R1, @H'E902
  - H'1A09 write index dynamic via R3 operand @(-H'1800,R3); loc_19DB; MOV:G.W R1, @(-H'1800,R3)
  - H'1A71 write index dynamic via R3 operand @(-H'1800,R3); loc_1A35; MOV:G.W R0, @(-H'1800,R3)
  - H'2691 write offset H'0124 -> H'E924; loc_2650; MOV:G.W R0, @H'E924
  - H'3F90 write index dynamic via R0 operand @(-H'1800,R0); <no function>; CLR.W @(-H'1800,R0)
  - H'407F write index dynamic via R0 operand @(-H'1800,R0); loc_4075; CLR.W @(-H'1800,R0)
  - H'40A8 write offset H'0000 -> H'E800; loc_4096; MOV:G.W #H'0080, @H'E800
  - H'40AE write offset H'0006 -> H'E806; loc_4096; MOV:G.W #H'8000, @H'E806
  - H'40B4 write offset H'0080 -> H'E880; loc_4096; MOV:G.W #H'FFFF, @H'E880
  - H'491D write offset H'01EC -> H'E9EC; loc_48FA; MOV:G.W R0, @H'E9EC
  - H'BB35 read index dynamic via R0 operand @(-H'1800,R0); loc_BAF2; MOV:G.W @(-H'1800,R0), R4
  - H'BC79 write index dynamic via R4 operand @(-H'1800,R4); loc_BBAB; MOV:G.W R0, @(-H'1800,R4)
  - H'BC99 write index dynamic via R4 operand @(-H'1800,R4); loc_BBAB; MOV:G.W R0, @(-H'1800,R4)
  - H'BD1E write index dynamic via R4 operand @(-H'1800,R4); loc_BBAB; MOV:G.W R0, @(-H'1800,R4)

flag_table_candidate H'EC00-H'EFFF (negative H'1400; direct H'F980-H'F99F)
  accesses=6 reads=0 writes=6 dynamic=5
  static offsets: H'0200
  functions: loc_BBAB:5, loc_4075:1
  - H'4088 write offset H'0200 -> H'EE00; loc_4075; CLR.W @(-H'1400,R0)
  - H'BC82 write index dynamic via R5 operand @(-H'1400,R5); loc_BBAB; BSET.B #7, @(-H'1400,R5)
  - H'BC9D write index dynamic via R5 operand @(-H'1400,R5); loc_BBAB; BSET.B #7, @(-H'1400,R5)
  - H'BD22 write index dynamic via R5 operand @(-H'1400,R5); loc_BBAB; BSET.B #7, @(-H'1400,R5)
  - H'BD39 write index dynamic via R5 operand @(-H'1400,R5); loc_BBAB; BSET.B #7, @(-H'1400,R5)
  - H'BDE9 write index dynamic via R5 operand @(-H'1400,R5); loc_BBAB; BSET.B #6, @(-H'1400,R5)
