From 5767fab24d2271f4fb4b76246f80051f248cda0f Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Wed, 31 Aug 2016 04:51:56 -0400 Subject: regenerate jumpmanjr.html --- jumpmanjr.html | 408 +++++++++++++++++++++++++++++++++------------------------ 1 file changed, 239 insertions(+), 169 deletions(-) diff --git a/jumpmanjr.html b/jumpmanjr.html index 4963c76..43c6999 100644 --- a/jumpmanjr.html +++ b/jumpmanjr.html @@ -7,7 +7,7 @@
 ; da65 V2.15 - Git 104f898
-; Created:    2016-08-30 17:43:53
+; Created:    2016-08-31 04:50:48
 ; Input file: jumpmanjr.rom
 ; Page:       1
 
@@ -19,6 +19,8 @@
 dm_ypos         := $0054                        ; see draw_map and level_maps.txt
 dm_xpos         := $0055                        ; see draw_map and level_maps.txt
 SAVMSC          := $0058                        ; OS's idea of the start of screen memory [redundant to set here?]
+blistptr        := $00B4                        ; bomb_pickup: points to current level's bomblist
+bombloc         := $00B6                        ; bomb_pickup: position of the bomb Jumpman just touched, on 8x8 coarse grid
 dm_count        := $00BE                        ; graphics object definition is this long
 dm_length       := $00BF                        ; see draw_map and level_maps.txt
 dm_progctr      := $00C0                        ; see draw_map and level_maps.txt
@@ -108,14 +110,15 @@
 work_level_bullet_max:= $078B                   ; 0 = no bullets, range 0-4.
 work_level_y_start:= $078C                      ; jumpman starting Y position
 work_level_x_start:= $078D                      ; jumpman starting X position
-work_level_offs_14:= $078E                      ; points to $0600
+work_level_fudge_x:= $078E                      ; fudge factor for bomb locations, always $00
+work_level_fudge_y:= $078F                      ; fudge factor for bomb locations, always $06
 work_level_points_per_bomb:= $0790              ; points awarded per bomb pickup (always $64 aka 100)
 work_level_time_bonus:= $0791                   ; amount of time bonus at start of level
 work_level_offs_19:= $0793                      ; always $00
 work_level_unkn_table0:= $0794                  ; pointer to ROM table or $06xx
 work_level_map0 := $0796                        ; map data
 work_level_map1 := $0798                        ; map data
-work_level_map2 := $079A                        ; map data
+work_level_bomblist:= $079A                     ; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
 work_level_unkn_table1:= $079C                  ; unknown, pointer to a ROM table or $0000
 work_level_offs_30:= $079E                      ; always $0000
 work_level_sub_bomb:= $07A0                     ; called when a bomb is picked up. $06E6 for most levels (just an RTS), or else a ROM subroutine
@@ -136,14 +139,15 @@
 cur_level_bullet_max:= $07CB                    ; 0 = no bullets, range 0-4.
 cur_level_y_start:= $07CC                       ; jumpman starting Y position
 cur_level_x_start:= $07CD                       ; jumpman starting X position
-cur_level_offs_14:= $07CE                       ; points to $0600
+cur_level_fudge_x:= $07CE                       ; fudge factor for bomb locations, always $00
+cur_level_fudge_y:= $07CF                       ; fudge factor for bomb locations, always $06
 cur_level_points_per_bomb:= $07D0               ; points awarded per bomb pickup (always $64 aka 100)
 cur_level_time_bonus:= $07D1                    ; amount of time bonus at start of level
 cur_level_offs_19:= $07D3                       ; always $00
 cur_level_unkn_table0:= $07D4                   ; pointer to ROM table or $06xx
 cur_level_map0  := $07D6                        ; map data
 cur_level_map1  := $07D8                        ; map data
-cur_level_map2  := $07DA                        ; map data
+cur_level_bomblist:= $07DA                      ; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
 cur_level_unkn_table1:= $07DC                   ; unknown, pointer to a ROM table or $0000
 cur_level_offs_30:= $07DE                       ; always $0000
 cur_level_sub_bomb:= $07E0                      ; called when a bomb is picked up. $06E6 for most levels (just an RTS), or else a ROM subroutine
@@ -1378,48 +1382,53 @@
 bomb_pickup:
         lda     player_x_pos                    ; 87A8 AD 7E 06                 .~.
         clc                                     ; 87AB 18                       .
-        adc     work_level_offs_14              ; 87AC 6D 8E 07                 m..
+        adc     work_level_fudge_x              ; 87AC 6D 8E 07                 m..
         and     #$E0                            ; 87AF 29 E0                    ).
-        sta     $B6                             ; 87B1 85 B6                    ..
+        sta     bombloc                         ; 87B1 85 B6                    ..
         clc                                     ; 87B3 18                       .
         lda     player_y_pos                    ; 87B4 AD 83 06                 ...
-        adc     work_level_offs_14+1            ; 87B7 6D 8F 07                 m..
+        adc     work_level_fudge_y              ; 87B7 6D 8F 07                 m..
         and     #$E0                            ; 87BA 29 E0                    ).
         lsr     a                               ; 87BC 4A                       J
         lsr     a                               ; 87BD 4A                       J
         lsr     a                               ; 87BE 4A                       J
         lsr     a                               ; 87BF 4A                       J
-        ora     $B6                             ; 87C0 05 B6                    ..
-        sta     $B6                             ; 87C2 85 B6                    ..
-        lda     work_level_map2                 ; 87C4 AD 9A 07                 ...
-        sta     $B4                             ; 87C7 85 B4                    ..
-        lda     work_level_map2+1               ; 87C9 AD 9B 07                 ...
-        sta     $B5                             ; 87CC 85 B5                    ..
+        ora     bombloc                         ; 87C0 05 B6                    ..
+        sta     bombloc                         ; 87C2 85 B6                    ..
+        lda     work_level_bomblist             ; 87C4 AD 9A 07                 ...
+        sta     blistptr                        ; 87C7 85 B4                    ..
+        lda     work_level_bomblist+1           ; 87C9 AD 9B 07                 ...
+        sta     blistptr+1                      ; 87CC 85 B5                    ..
         ldy     #$00                            ; 87CE A0 00                    ..
-L87D0:  lda     ($B4),y                         ; 87D0 B1 B4                    ..
+; set Y to the index of the current bomb (or rts if we can't find it)
+search_bomblist:
+        lda     (blistptr),y                    ; 87D0 B1 B4                    ..
         cmp     #$FF                            ; 87D2 C9 FF                    ..
-        bne     L87D7                           ; 87D4 D0 01                    ..
+        bne     bl_ok                           ; 87D4 D0 01                    ..
         rts                                     ; 87D6 60                       `
 
 ; ----------------------------------------------------------------------------
-L87D7:  cmp     $B6                             ; 87D7 C5 B6                    ..
-        beq     L87E0                           ; 87D9 F0 05                    ..
+bl_ok:  cmp     bombloc                         ; 87D7 C5 B6                    ..
+        beq     bomb_found                      ; 87D9 F0 05                    ..
         iny                                     ; 87DB C8                       .
         iny                                     ; 87DC C8                       .
-        jmp     L87D0                           ; 87DD 4C D0 87                 L..
+        jmp     search_bomblist                 ; 87DD 4C D0 87                 L..
 
 ; ----------------------------------------------------------------------------
-L87E0:  lda     work_level_map1                 ; 87E0 AD 98 07                 ...
+bomb_found:
+        lda     work_level_map1                 ; 87E0 AD 98 07                 ...
         sta     $B0                             ; 87E3 85 B0                    ..
         lda     work_level_map1+1               ; 87E5 AD 99 07                 ...
         sta     $B1                             ; 87E8 85 B1                    ..
-        tya                                     ; 87EA 98                       .
+; multiply Y by 1.5 (only works because Y will always be even at this point)
+mul_y:  tya                                     ; 87EA 98                       .
         sta     $B2                             ; 87EB 85 B2                    ..
         lsr     a                               ; 87ED 4A                       J
         clc                                     ; 87EE 18                       .
         adc     $B2                             ; 87EF 65 B2                    e.
         tay                                     ; 87F1 A8                       .
-        lda     ($B0),y                         ; 87F2 B1 B0                    ..
+; find out: why are we storing this at 06DC?
+unkn1:  lda     ($B0),y                         ; 87F2 B1 B0                    ..
         sta     $06DC                           ; 87F4 8D DC 06                 ...
         iny                                     ; 87F7 C8                       .
         lda     ($B0),y                         ; 87F8 B1 B0                    ..
@@ -1432,14 +1441,16 @@
         jsr     cue_sfx_jv                      ; 8809 20 06 80                  ..
         ldy     $B2                             ; 880C A4 B2                    ..
         iny                                     ; 880E C8                       .
-        lda     ($B4),y                         ; 880F B1 B4                    ..
-        beq     L8856                           ; 8811 F0 43                    .C
+        lda     (blistptr),y                    ; 880F B1 B4                    ..
+        beq     call_bomb_sub                   ; 8811 F0 43                    .C
         and     #$F0                            ; 8813 29 F0                    ).
-        beq     L8831                           ; 8815 F0 1A                    ..
+        beq     check_ind_sub                   ; 8815 F0 1A                    ..
         lsr     a                               ; 8817 4A                       J
         lsr     a                               ; 8818 4A                       J
         lsr     a                               ; 8819 4A                       J
         tay                                     ; 881A A8                       .
+; this has to do with redrawing parts of the level (e.g. disappearing platforms on level00)
+change_map:
         lda     work_level_unkn_table1          ; 881B AD 9C 07                 ...
         sta     $B0                             ; 881E 85 B0                    ..
         lda     work_level_unkn_table1+1        ; 8820 AD 9D 07                 ...
@@ -1450,14 +1461,18 @@
         lda     ($B0),y                         ; 882A B1 B0                    ..
         sta     dm_progctr+1                    ; 882C 85 C1                    ..
         jsr     draw_map_jv                     ; 882E 20 00 80                  ..
-L8831:  ldy     $B2                             ; 8831 A4 B2                    ..
+; see if this bomb calls an indirect sub (none of them do in this game, this is useless code)
+check_ind_sub:
+        ldy     $B2                             ; 8831 A4 B2                    ..
         iny                                     ; 8833 C8                       .
-        lda     ($B4),y                         ; 8834 B1 B4                    ..
-        beq     L8856                           ; 8836 F0 1E                    ..
+        lda     (blistptr),y                    ; 8834 B1 B4                    ..
+        beq     call_bomb_sub                   ; 8836 F0 1E                    ..
         and     #$0F                            ; 8838 29 0F                    ).
-        beq     L8856                           ; 883A F0 1A                    ..
+        beq     call_bomb_sub                   ; 883A F0 1A                    ..
         asl     a                               ; 883C 0A                       .
         tay                                     ; 883D A8                       .
+; this would call a subroutine via pointer-to-pointer, but I'm almost 100% certain it's never used (maybe a holdover from original Jumpman?)
+call_bomb_indirect_sub:
         lda     work_level_offs_30              ; 883E AD 9E 07                 ...
         sta     $B0                             ; 8841 85 B0                    ..
         lda     work_level_offs_30+1            ; 8843 AD 9F 07                 ...
@@ -1468,20 +1483,26 @@
         lda     ($B0),y                         ; 884E B1 B0                    ..
         sta     $06E5                           ; 8850 8D E5 06                 ...
         jsr     L06E3                           ; 8853 20 E3 06                  ..
-L8856:  lda     work_level_sub_bomb             ; 8856 AD A0 07                 ...
+; call bomb pickup subroutine for this level (which might just do an RTS if there's no special action)
+call_bomb_sub:
+        lda     work_level_sub_bomb             ; 8856 AD A0 07                 ...
         sta     $06E4                           ; 8859 8D E4 06                 ...
         lda     work_level_sub_bomb+1           ; 885C AD A1 07                 ...
         sta     $06E5                           ; 885F 8D E5 06                 ...
         jsr     L06E3                           ; 8862 20 E3 06                  ..
+; add points to score for picking up bomb (theoretically different on every level, but really $64 aka 100 for all of them)
+bomb_add_points:
         clc                                     ; 8865 18                       .
         lda     score                           ; 8866 AD 00 07                 ...
         adc     work_level_points_per_bomb      ; 8869 6D 90 07                 m..
         sta     score                           ; 886C 8D 00 07                 ...
-        bcc     L8879                           ; 886F 90 08                    ..
+        bcc     erase_bomb                      ; 886F 90 08                    ..
         inc     score+1                         ; 8871 EE 01 07                 ...
-        bne     L8879                           ; 8874 D0 03                    ..
+        bne     erase_bomb                      ; 8874 D0 03                    ..
         inc     score+2                         ; 8876 EE 02 07                 ...
-L8879:  lda     #$D9                            ; 8879 A9 D9                    ..
+; make the bomb disappear by drawing sh_blank in its location
+erase_bomb:
+        lda     #$D9                            ; 8879 A9 D9                    ..
         sta     dm_progctr                      ; 887B 85 C0                    ..
         lda     #$06                            ; 887D A9 06                    ..
         sta     dm_progctr+1                    ; 887F 85 C1                    ..
@@ -4167,9 +4188,12 @@
 ; jumpman starting X position
 level00_x_start:
         .byte   $7C                             ; A00D 7C                       |
-; points to $0600
-level00_offs_14:
-        .byte   $00,$06                         ; A00E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level00_fudge_x:
+        .byte   $00                             ; A00E 00                       .
+; fudge factor for bomb locations, always $06
+level00_fudge_y:
+        .byte   $06                             ; A00F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level00_points_per_bomb:
         .byte   $64                             ; A010 64                       d
@@ -4191,9 +4215,11 @@
 ; map data
 level00_map1:
         .addr   LA366                           ; A018 66 A3                    f.
-; map data
-level00_map2:
-        .addr   LA38B                           ; A01A 8B A3                    ..
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level00_bomblist:
+        .byte   $8B,$A3                         ; A01A 8B A3                    ..
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level00_unkn_table1:
         .addr   LA3A4                           ; A01C A4 A3                    ..
@@ -4260,9 +4286,12 @@
 ; jumpman starting X position
 level01_x_start:
         .byte   $7C                             ; A04D 7C                       |
-; points to $0600
-level01_offs_14:
-        .byte   $00,$06                         ; A04E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level01_fudge_x:
+        .byte   $00                             ; A04E 00                       .
+; fudge factor for bomb locations, always $06
+level01_fudge_y:
+        .byte   $06                             ; A04F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level01_points_per_bomb:
         .byte   $64                             ; A050 64                       d
@@ -4284,9 +4313,11 @@
 ; map data
 level01_map1:
         .addr   LA446                           ; A058 46 A4                    F.
-; map data
-level01_map2:
-        .addr   LA477                           ; A05A 77 A4                    w.
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level01_bomblist:
+        .byte   $77,$A4                         ; A05A 77 A4                    w.
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level01_unkn_table1:
         .addr   L0000                           ; A05C 00 00                    ..
@@ -4353,9 +4384,12 @@
 ; jumpman starting X position
 level02_x_start:
         .byte   $B4                             ; A08D B4                       .
-; points to $0600
-level02_offs_14:
-        .byte   $00,$06                         ; A08E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level02_fudge_x:
+        .byte   $00                             ; A08E 00                       .
+; fudge factor for bomb locations, always $06
+level02_fudge_y:
+        .byte   $06                             ; A08F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level02_points_per_bomb:
         .byte   $64                             ; A090 64                       d
@@ -4377,9 +4411,11 @@
 ; map data
 level02_map1:
         .addr   LA62F                           ; A098 2F A6                    /.
-; map data
-level02_map2:
-        .addr   LA654                           ; A09A 54 A6                    T.
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level02_bomblist:
+        .byte   $54,$A6                         ; A09A 54 A6                    T.
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level02_unkn_table1:
         .addr   L0000                           ; A09C 00 00                    ..
@@ -4446,9 +4482,12 @@
 ; jumpman starting X position
 level03_x_start:
         .byte   $7C                             ; A0CD 7C                       |
-; points to $0600
-level03_offs_14:
-        .byte   $00,$06                         ; A0CE 00 06                    ..
+; fudge factor for bomb locations, always $00
+level03_fudge_x:
+        .byte   $00                             ; A0CE 00                       .
+; fudge factor for bomb locations, always $06
+level03_fudge_y:
+        .byte   $06                             ; A0CF 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level03_points_per_bomb:
         .byte   $64                             ; A0D0 64                       d
@@ -4470,9 +4509,11 @@
 ; map data
 level03_map1:
         .addr   LA7D5                           ; A0D8 D5 A7                    ..
-; map data
-level03_map2:
-        .addr   LA806                           ; A0DA 06 A8                    ..
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level03_bomblist:
+        .byte   $06,$A8                         ; A0DA 06 A8                    ..
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level03_unkn_table1:
         .addr   L0000                           ; A0DC 00 00                    ..
@@ -4539,9 +4580,12 @@
 ; jumpman starting X position
 level04_x_start:
         .byte   $34                             ; A10D 34                       4
-; points to $0600
-level04_offs_14:
-        .byte   $00,$06                         ; A10E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level04_fudge_x:
+        .byte   $00                             ; A10E 00                       .
+; fudge factor for bomb locations, always $06
+level04_fudge_y:
+        .byte   $06                             ; A10F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level04_points_per_bomb:
         .byte   $64                             ; A110 64                       d
@@ -4563,9 +4607,11 @@
 ; map data
 level04_map1:
         .addr   LAB42                           ; A118 42 AB                    B.
-; map data
-level04_map2:
-        .addr   LAB6D                           ; A11A 6D AB                    m.
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level04_bomblist:
+        .byte   $6D,$AB                         ; A11A 6D AB                    m.
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level04_unkn_table1:
         .addr   LAB8A                           ; A11C 8A AB                    ..
@@ -4632,9 +4678,12 @@
 ; jumpman starting X position
 level05_x_start:
         .byte   $34                             ; A14D 34                       4
-; points to $0600
-level05_offs_14:
-        .byte   $00,$06                         ; A14E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level05_fudge_x:
+        .byte   $00                             ; A14E 00                       .
+; fudge factor for bomb locations, always $06
+level05_fudge_y:
+        .byte   $06                             ; A14F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level05_points_per_bomb:
         .byte   $64                             ; A150 64                       d
@@ -4656,9 +4705,11 @@
 ; map data
 level05_map1:
         .addr   LA974                           ; A158 74 A9                    t.
-; map data
-level05_map2:
-        .addr   LA9A5                           ; A15A A5 A9                    ..
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level05_bomblist:
+        .byte   $A5,$A9                         ; A15A A5 A9                    ..
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level05_unkn_table1:
         .addr   L0000                           ; A15C 00 00                    ..
@@ -4725,9 +4776,12 @@
 ; jumpman starting X position
 level06_x_start:
         .byte   $7C                             ; A18D 7C                       |
-; points to $0600
-level06_offs_14:
-        .byte   $00,$06                         ; A18E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level06_fudge_x:
+        .byte   $00                             ; A18E 00                       .
+; fudge factor for bomb locations, always $06
+level06_fudge_y:
+        .byte   $06                             ; A18F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level06_points_per_bomb:
         .byte   $64                             ; A190 64                       d
@@ -4749,9 +4803,11 @@
 ; map data
 level06_map1:
         .addr   LACBA                           ; A198 BA AC                    ..
-; map data
-level06_map2:
-        .addr   LACE5                           ; A19A E5 AC                    ..
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level06_bomblist:
+        .byte   $E5,$AC                         ; A19A E5 AC                    ..
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level06_unkn_table1:
         .addr   LAD02                           ; A19C 02 AD                    ..
@@ -4818,9 +4874,12 @@
 ; jumpman starting X position
 level07_x_start:
         .byte   $7C                             ; A1CD 7C                       |
-; points to $0600
-level07_offs_14:
-        .byte   $00,$06                         ; A1CE 00 06                    ..
+; fudge factor for bomb locations, always $00
+level07_fudge_x:
+        .byte   $00                             ; A1CE 00                       .
+; fudge factor for bomb locations, always $06
+level07_fudge_y:
+        .byte   $06                             ; A1CF 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level07_points_per_bomb:
         .byte   $64                             ; A1D0 64                       d
@@ -4842,9 +4901,11 @@
 ; map data
 level07_map1:
         .addr   LAE4C                           ; A1D8 4C AE                    L.
-; map data
-level07_map2:
-        .addr   LAE71                           ; A1DA 71 AE                    q.
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level07_bomblist:
+        .byte   $71,$AE                         ; A1DA 71 AE                    q.
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level07_unkn_table1:
         .addr   L0000                           ; A1DC 00 00                    ..
@@ -4911,9 +4972,12 @@
 ; jumpman starting X position
 level08_x_start:
         .byte   $9E                             ; A20D 9E                       .
-; points to $0600
-level08_offs_14:
-        .byte   $00,$06                         ; A20E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level08_fudge_x:
+        .byte   $00                             ; A20E 00                       .
+; fudge factor for bomb locations, always $06
+level08_fudge_y:
+        .byte   $06                             ; A20F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level08_points_per_bomb:
         .byte   $64                             ; A210 64                       d
@@ -4935,9 +4999,11 @@
 ; map data
 level08_map1:
         .addr   LB072                           ; A218 72 B0                    r.
-; map data
-level08_map2:
-        .addr   LB0A3                           ; A21A A3 B0                    ..
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level08_bomblist:
+        .byte   $A3,$B0                         ; A21A A3 B0                    ..
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level08_unkn_table1:
         .addr   L0000                           ; A21C 00 00                    ..
@@ -5004,9 +5070,12 @@
 ; jumpman starting X position
 level09_x_start:
         .byte   $3C                             ; A24D 3C                       <
-; points to $0600
-level09_offs_14:
-        .byte   $00,$06                         ; A24E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level09_fudge_x:
+        .byte   $00                             ; A24E 00                       .
+; fudge factor for bomb locations, always $06
+level09_fudge_y:
+        .byte   $06                             ; A24F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level09_points_per_bomb:
         .byte   $64                             ; A250 64                       d
@@ -5028,9 +5097,11 @@
 ; map data
 level09_map1:
         .addr   LB237                           ; A258 37 B2                    7.
-; map data
-level09_map2:
-        .addr   LB25C                           ; A25A 5C B2                    \.
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level09_bomblist:
+        .byte   $5C,$B2                         ; A25A 5C B2                    \.
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level09_unkn_table1:
         .addr   L0000                           ; A25C 00 00                    ..
@@ -5097,9 +5168,12 @@
 ; jumpman starting X position
 level10_x_start:
         .byte   $C4                             ; A28D C4                       .
-; points to $0600
-level10_offs_14:
-        .byte   $00,$06                         ; A28E 00 06                    ..
+; fudge factor for bomb locations, always $00
+level10_fudge_x:
+        .byte   $00                             ; A28E 00                       .
+; fudge factor for bomb locations, always $06
+level10_fudge_y:
+        .byte   $06                             ; A28F 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level10_points_per_bomb:
         .byte   $64                             ; A290 64                       d
@@ -5121,9 +5195,11 @@
 ; map data
 level10_map1:
         .addr   LB38F                           ; A298 8F B3                    ..
-; map data
-level10_map2:
-        .addr   LB3BD                           ; A29A BD B3                    ..
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level10_bomblist:
+        .byte   $BD,$B3                         ; A29A BD B3                    ..
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level10_unkn_table1:
         .addr   LB3DC                           ; A29C DC B3                    ..
@@ -5190,9 +5266,12 @@
 ; jumpman starting X position
 level11_x_start:
         .byte   $7C                             ; A2CD 7C                       |
-; points to $0600
-level11_offs_14:
-        .byte   $00,$06                         ; A2CE 00 06                    ..
+; fudge factor for bomb locations, always $00
+level11_fudge_x:
+        .byte   $00                             ; A2CE 00                       .
+; fudge factor for bomb locations, always $06
+level11_fudge_y:
+        .byte   $06                             ; A2CF 06                       .
 ; points awarded per bomb pickup (always $64 aka 100)
 level11_points_per_bomb:
         .byte   $64                             ; A2D0 64                       d
@@ -5214,9 +5293,11 @@
 ; map data
 level11_map1:
         .addr   LB5D2                           ; A2D8 D2 B5                    ..
-; map data
-level11_map2:
-        .addr   LB5FD                           ; A2DA FD B5                    ..
+; ----------------------------------------------------------------------------
+; addr of list of bombs, indexed by player position on coarse 8x8 grid. terminated by $FF.
+level11_bomblist:
+        .byte   $FD,$B5                         ; A2DA FD B5                    ..
+; ----------------------------------------------------------------------------
 ; unknown, pointer to a ROM table or $0000
 level11_unkn_table1:
         .addr   LB61A                           ; A2DC 1A B6                    ..
@@ -5273,11 +5354,10 @@
         .byte   $01,$98,$12,$01,$44,$22,$01,$58 ; A36E 01 98 12 01 44 22 01 58  ....D".X
         .byte   $22,$01,$04,$42,$01,$98,$42,$01 ; A376 22 01 04 42 01 98 42 01  "..B..B.
         .byte   $04,$52,$01,$38,$52,$01,$64,$52 ; A37E 04 52 01 38 52 01 64 52  .R.8R.dR
-        .byte   $01,$98,$52,$01,$FF             ; A386 01 98 52 01 FF           ..R..
-LA38B:  .byte   $24,$00,$62,$10,$82,$20,$C4,$00 ; A38B 24 00 62 10 82 20 C4 00  $.b.. ..
-        .byte   $66,$30,$86,$40,$2A,$00,$CA,$00 ; A393 66 30 86 40 2A 00 CA 00  f0.@*...
-        .byte   $2C,$00,$6C,$00,$8C,$00,$CC,$00 ; A39B 2C 00 6C 00 8C 00 CC 00  ,.l.....
-        .byte   $FF                             ; A3A3 FF                       .
+        .byte   $01,$98,$52,$01,$FF,$24,$00,$62 ; A386 01 98 52 01 FF 24 00 62  ..R..$.b
+        .byte   $10,$82,$20,$C4,$00,$66,$30,$86 ; A38E 10 82 20 C4 00 66 30 86  .. ..f0.
+        .byte   $40,$2A,$00,$CA,$00,$2C,$00,$6C ; A396 40 2A 00 CA 00 2C 00 6C  @*...,.l
+        .byte   $00,$8C,$00,$CC,$00,$FF         ; A39E 00 8C 00 CC 00 FF        ......
 LA3A4:  .byte   $00,$00,$AE,$A3,$B8,$A3,$C2,$A3 ; A3A4 00 00 AE A3 B8 A3 C2 A3  ........
         .byte   $CC,$A3,$FE,$49,$9C,$FD,$04,$01 ; A3AC CC A3 FE 49 9C FD 04 01  ...I....
         .byte   $64,$08,$02,$FF,$FE,$49,$9C,$FD ; A3B4 64 08 02 FF FE 49 9C FD  d....I..
@@ -5305,12 +5385,11 @@
         .byte   $20,$22,$01,$7C,$22,$01,$38,$32 ; A45E 20 22 01 7C 22 01 38 32   ".|".82
         .byte   $01,$64,$32,$01,$04,$52,$01,$38 ; A466 01 64 32 01 04 52 01 38  .d2..R.8
         .byte   $52,$01,$64,$52,$01,$98,$52,$01 ; A46E 52 01 64 52 01 98 52 01  R.dR..R.
-        .byte   $FF                             ; A476 FF                       .
-LA477:  .byte   $22,$00,$62,$00,$82,$00,$C2,$00 ; A477 22 00 62 00 82 00 C2 00  ".b.....
-        .byte   $24,$00,$64,$00,$84,$00,$C4,$00 ; A47F 24 00 64 00 84 00 C4 00  $.d.....
-        .byte   $46,$00,$A6,$00,$68,$00,$88,$00 ; A487 46 00 A6 00 68 00 88 00  F...h...
-        .byte   $2C,$00,$6C,$00,$8C,$00,$CC,$00 ; A48F 2C 00 6C 00 8C 00 CC 00  ,.l.....
-        .byte   $FF                             ; A497 FF                       .
+        .byte   $FF,$22,$00,$62,$00,$82,$00,$C2 ; A476 FF 22 00 62 00 82 00 C2  .".b....
+        .byte   $00,$24,$00,$64,$00,$84,$00,$C4 ; A47E 00 24 00 64 00 84 00 C4  .$.d....
+        .byte   $00,$46,$00,$A6,$00,$68,$00,$88 ; A486 00 46 00 A6 00 68 00 88  .F...h..
+        .byte   $00,$2C,$00,$6C,$00,$8C,$00,$CC ; A48E 00 2C 00 6C 00 8C 00 CC  .,.l....
+        .byte   $00,$FF                         ; A496 00 FF                    ..
 ; ----------------------------------------------------------------------------
 ; not sure what this actually does
 electrocution_bomb_pickup:
@@ -5443,11 +5522,10 @@
         .byte   $01,$04,$32,$01,$04,$42,$01,$04 ; A637 01 04 32 01 04 42 01 04  ..2..B..
         .byte   $52,$01,$98,$02,$01,$98,$12,$01 ; A63F 52 01 98 02 01 98 12 01  R.......
         .byte   $98,$22,$01,$98,$32,$01,$98,$42 ; A647 98 22 01 98 32 01 98 42  ."..2..B
-        .byte   $01,$98,$52,$01,$FF             ; A64F 01 98 52 01 FF           ..R..
-LA654:  .byte   $22,$00,$24,$00,$26,$00,$28,$00 ; A654 22 00 24 00 26 00 28 00  ".$.&.(.
-        .byte   $2A,$00,$2C,$00,$C2,$00,$C4,$00 ; A65C 2A 00 2C 00 C2 00 C4 00  *.,.....
-        .byte   $C6,$00,$C8,$00,$CA,$00,$CC,$00 ; A664 C6 00 C8 00 CA 00 CC 00  ........
-        .byte   $FF                             ; A66C FF                       .
+        .byte   $01,$98,$52,$01,$FF,$22,$00,$24 ; A64F 01 98 52 01 FF 22 00 24  ..R..".$
+        .byte   $00,$26,$00,$28,$00,$2A,$00,$2C ; A657 00 26 00 28 00 2A 00 2C  .&.(.*.,
+        .byte   $00,$C2,$00,$C4,$00,$C6,$00,$C8 ; A65F 00 C2 00 C4 00 C6 00 C8  ........
+        .byte   $00,$CA,$00,$CC,$00,$FF         ; A667 00 CA 00 CC 00 FF        ......
 LA66D:  .byte   $00,$00,$00,$01,$7A,$01,$01,$66 ; A66D 00 00 00 01 7A 01 01 66  ....z..f
         .byte   $03,$86,$A6,$06,$4C,$4A,$01,$66 ; A675 03 86 A6 06 4C 4A 01 66  ....LJ.f
         .byte   $04,$86,$A6,$06,$A4,$CA,$01,$66 ; A67D 04 86 A6 06 A4 CA 01 66  .......f
@@ -5597,12 +5675,11 @@
         .byte   $60,$22,$01,$98,$22,$01,$18,$32 ; A7ED 60 22 01 98 22 01 18 32  `".."..2
         .byte   $01,$84,$32,$01,$3C,$42,$01,$60 ; A7F5 01 84 32 01 3C 42 01 60  ..2.<B.`
         .byte   $42,$01,$04,$52,$01,$98,$52,$01 ; A7FD 42 01 04 52 01 98 52 01  B..R..R.
-        .byte   $FF                             ; A805 FF                       .
-LA806:  .byte   $62,$00,$82,$00,$44,$00,$64,$00 ; A806 62 00 82 00 44 00 64 00  b...D.d.
-        .byte   $84,$00,$A4,$00,$26,$00,$66,$00 ; A80E 84 00 A4 00 26 00 66 00  ....&.f.
-        .byte   $86,$00,$C6,$00,$48,$00,$A8,$00 ; A816 86 00 C6 00 48 00 A8 00  ....H...
-        .byte   $6A,$00,$8A,$00,$2C,$00,$CC,$00 ; A81E 6A 00 8A 00 2C 00 CC 00  j...,...
-        .byte   $FF                             ; A826 FF                       .
+        .byte   $FF,$62,$00,$82,$00,$44,$00,$64 ; A805 FF 62 00 82 00 44 00 64  .b...D.d
+        .byte   $00,$84,$00,$A4,$00,$26,$00,$66 ; A80D 00 84 00 A4 00 26 00 66  .....&.f
+        .byte   $00,$86,$00,$C6,$00,$48,$00,$A8 ; A815 00 86 00 C6 00 48 00 A8  .....H..
+        .byte   $00,$6A,$00,$8A,$00,$2C,$00,$CC ; A81D 00 6A 00 8A 00 2C 00 CC  .j...,..
+        .byte   $00,$FF                         ; A825 00 FF                    ..
 ; ----------------------------------------------------------------------------
 hellstones_sub3:
         lda     $0619                           ; A827 AD 19 06                 ...
@@ -5742,12 +5819,11 @@
         .byte   $40,$32,$01,$5C,$32,$01,$40,$42 ; A98C 40 32 01 5C 32 01 40 42  @2.\2.@B
         .byte   $01,$5C,$42,$01,$04,$52,$01,$3C ; A994 01 5C 42 01 04 52 01 3C  .\B..R.<
         .byte   $52,$01,$60,$52,$01,$98,$52,$01 ; A99C 52 01 60 52 01 98 52 01  R.`R..R.
-        .byte   $FF                             ; A9A4 FF                       .
-LA9A5:  .byte   $42,$00,$62,$00,$82,$00,$A2,$00 ; A9A5 42 00 62 00 82 00 A2 00  B.b.....
-        .byte   $64,$00,$84,$00,$46,$00,$A6,$00 ; A9AD 64 00 84 00 46 00 A6 00  d...F...
-        .byte   $68,$00,$88,$00,$6A,$00,$8A,$00 ; A9B5 68 00 88 00 6A 00 8A 00  h...j...
-        .byte   $2C,$00,$6C,$00,$8C,$00,$CC,$00 ; A9BD 2C 00 6C 00 8C 00 CC 00  ,.l.....
-        .byte   $FF                             ; A9C5 FF                       .
+        .byte   $FF,$42,$00,$62,$00,$82,$00,$A2 ; A9A4 FF 42 00 62 00 82 00 A2  .B.b....
+        .byte   $00,$64,$00,$84,$00,$46,$00,$A6 ; A9AC 00 64 00 84 00 46 00 A6  .d...F..
+        .byte   $00,$68,$00,$88,$00,$6A,$00,$8A ; A9B4 00 68 00 88 00 6A 00 8A  .h...j..
+        .byte   $00,$2C,$00,$6C,$00,$8C,$00,$CC ; A9BC 00 2C 00 6C 00 8C 00 CC  .,.l....
+        .byte   $00,$FF                         ; A9C4 00 FF                    ..
 ; ----------------------------------------------------------------------------
 LA9C6:  jsr     L8036                           ; A9C6 20 36 80                  6.
         lda     #$02                            ; A9C9 A9 02                    ..
@@ -5900,11 +5976,10 @@
         .byte   $22,$01,$24,$32,$01,$44,$32,$01 ; AB52 22 01 24 32 01 44 32 01  ".$2.D2.
         .byte   $64,$32,$01,$24,$52,$01,$44,$52 ; AB5A 64 32 01 24 52 01 44 52  d2.$R.DR
         .byte   $01,$64,$52,$01,$84,$52,$01,$98 ; AB62 01 64 52 01 84 52 01 98  .dR..R..
-        .byte   $52,$01,$FF                     ; AB6A 52 01 FF                 R..
-LAB6D:  .byte   $22,$10,$62,$20,$44,$30,$66,$40 ; AB6D 22 10 62 20 44 30 66 40  ".b D0f@
-        .byte   $86,$50,$C6,$60,$48,$70,$68,$80 ; AB75 86 50 C6 60 48 70 68 80  .P.`Hph.
-        .byte   $88,$90,$4C,$A0,$6C,$B0,$8C,$C0 ; AB7D 88 90 4C A0 6C B0 8C C0  ..L.l...
-        .byte   $AC,$00,$CC,$D0,$FF             ; AB85 AC 00 CC D0 FF           .....
+        .byte   $52,$01,$FF,$22,$10,$62,$20,$44 ; AB6A 52 01 FF 22 10 62 20 44  R..".b D
+        .byte   $30,$66,$40,$86,$50,$C6,$60,$48 ; AB72 30 66 40 86 50 C6 60 48  0f@.P.`H
+        .byte   $70,$68,$80,$88,$90,$4C,$A0,$6C ; AB7A 70 68 80 88 90 4C A0 6C  ph...L.l
+        .byte   $B0,$8C,$C0,$AC,$00,$CC,$D0,$FF ; AB82 B0 8C C0 AC 00 CC D0 FF  ........
 LAB8A:  .byte   $00,$00,$A6,$AB,$B6,$AB,$C0,$AB ; AB8A 00 00 A6 AB B6 AB C0 AB  ........
         .byte   $D3,$AB,$DD,$AB,$F0,$AB,$FA,$AB ; AB92 D3 AB DD AB F0 AB FA AB  ........
         .byte   $04,$AC,$0E,$AC,$18,$AC,$22,$AC ; AB9A 04 AC 0E AC 18 AC 22 AC  ......".
@@ -5949,11 +6024,10 @@
         .byte   $22,$01,$24,$32,$01,$78,$32,$01 ; ACCA 22 01 24 32 01 78 32 01  ".$2.x2.
         .byte   $24,$42,$01,$78,$42,$01,$04,$52 ; ACD2 24 42 01 78 42 01 04 52  $B.xB..R
         .byte   $01,$3C,$52,$01,$60,$52,$01,$98 ; ACDA 01 3C 52 01 60 52 01 98  .<R.`R..
-        .byte   $52,$01,$FF                     ; ACE2 52 01 FF                 R..
-LACE5:  .byte   $22,$10,$62,$20,$82,$30,$C2,$40 ; ACE5 22 10 62 20 82 30 C2 40  ".b .0.@
-        .byte   $46,$50,$A6,$50,$48,$60,$A8,$60 ; ACED 46 50 A6 50 48 60 A8 60  FP.PH`.`
-        .byte   $4A,$70,$AA,$70,$2C,$80,$6C,$00 ; ACF5 4A 70 AA 70 2C 80 6C 00  Jp.p,.l.
-        .byte   $8C,$00,$CC,$90,$FF             ; ACFD 8C 00 CC 90 FF           .....
+        .byte   $52,$01,$FF,$22,$10,$62,$20,$82 ; ACE2 52 01 FF 22 10 62 20 82  R..".b .
+        .byte   $30,$C2,$40,$46,$50,$A6,$50,$48 ; ACEA 30 C2 40 46 50 A6 50 48  0.@FP.PH
+        .byte   $60,$A8,$60,$4A,$70,$AA,$70,$2C ; ACF2 60 A8 60 4A 70 AA 70 2C  `.`Jp.p,
+        .byte   $80,$6C,$00,$8C,$00,$CC,$90,$FF ; ACFA 80 6C 00 8C 00 CC 90 FF  .l......
 LAD02:  .byte   $00,$00,$16,$AD,$16,$AD,$20,$AD ; AD02 00 00 16 AD 16 AD 20 AD  ...... .
         .byte   $20,$AD,$2A,$AD,$34,$AD,$3E,$AD ; AD0A 20 AD 2A AD 34 AD 3E AD   .*.4.>.
         .byte   $48,$AD,$58,$AD,$FE,$49,$9C,$FD ; AD12 48 AD 58 AD FE 49 9C FD  H.X..I..
@@ -6044,11 +6118,10 @@
         .byte   $01,$98,$22,$01,$18,$34,$01,$84 ; AE54 01 98 22 01 18 34 01 84  .."..4..
         .byte   $34,$01,$04,$42,$01,$98,$42,$01 ; AE5C 34 01 04 42 01 98 42 01  4..B..B.
         .byte   $04,$52,$01,$38,$52,$01,$64,$52 ; AE64 04 52 01 38 52 01 64 52  .R.8R.dR
-        .byte   $01,$98,$52,$01,$FF             ; AE6C 01 98 52 01 FF           ..R..
-LAE71:  .byte   $22,$00,$C2,$00,$26,$00,$C6,$00 ; AE71 22 00 C2 00 26 00 C6 00  "...&...
-        .byte   $48,$00,$A8,$00,$2A,$00,$CA,$00 ; AE79 48 00 A8 00 2A 00 CA 00  H...*...
-        .byte   $2C,$00,$6C,$00,$8C,$00,$CC,$00 ; AE81 2C 00 6C 00 8C 00 CC 00  ,.l.....
-        .byte   $FF                             ; AE89 FF                       .
+        .byte   $01,$98,$52,$01,$FF,$22,$00,$C2 ; AE6C 01 98 52 01 FF 22 00 C2  ..R.."..
+        .byte   $00,$26,$00,$C6,$00,$48,$00,$A8 ; AE74 00 26 00 C6 00 48 00 A8  .&...H..
+        .byte   $00,$2A,$00,$CA,$00,$2C,$00,$6C ; AE7C 00 2A 00 CA 00 2C 00 6C  .*...,.l
+        .byte   $00,$8C,$00,$CC,$00,$FF         ; AE84 00 8C 00 CC 00 FF        ......
 LAE8A:  .byte   $03,$00,$00,$01,$7C,$01,$01,$00 ; AE8A 03 00 00 01 7C 01 01 00  ....|...
         .byte   $04,$0C,$AF,$10,$86,$00,$01,$0F ; AE92 04 0C AF 10 86 00 01 0F  ........
         .byte   $FF                             ; AE9A FF                       .
@@ -6214,12 +6287,11 @@
         .byte   $22,$01,$78,$22,$01,$04,$38,$01 ; B08B 22 01 78 22 01 04 38 01  ".x"..8.
         .byte   $1C,$46,$01,$78,$42,$01,$04,$52 ; B093 1C 46 01 78 42 01 04 52  .F.xB..R
         .byte   $01,$58,$52,$01,$98,$52,$01     ; B09B 01 58 52 01 98 52 01     .XR..R.
-LB0A2:  .byte   $FF                             ; B0A2 FF                       .
-LB0A3:  .byte   $22,$00,$42,$00,$62,$00,$A2,$00 ; B0A3 22 00 42 00 62 00 A2 00  ".B.b...
-        .byte   $C2,$00,$64,$00,$84,$00,$A4,$00 ; B0AB C2 00 64 00 84 00 A4 00  ..d.....
-        .byte   $46,$00,$A6,$00,$28,$00,$4A,$00 ; B0B3 46 00 A6 00 28 00 4A 00  F...(.J.
-        .byte   $AA,$00,$2C,$00,$8C,$00,$CC,$00 ; B0BB AA 00 2C 00 8C 00 CC 00  ..,.....
-        .byte   $FF                             ; B0C3 FF                       .
+LB0A2:  .byte   $FF,$22,$00,$42,$00,$62,$00,$A2 ; B0A2 FF 22 00 42 00 62 00 A2  .".B.b..
+        .byte   $00,$C2,$00,$64,$00,$84,$00,$A4 ; B0AA 00 C2 00 64 00 84 00 A4  ...d....
+        .byte   $00,$46,$00,$A6,$00,$28,$00,$4A ; B0B2 00 46 00 A6 00 28 00 4A  .F...(.J
+        .byte   $00,$AA,$00,$2C,$00,$8C,$00,$CC ; B0BA 00 AA 00 2C 00 8C 00 CC  ...,....
+        .byte   $00,$FF                         ; B0C2 00 FF                    ..
 ; ----------------------------------------------------------------------------
 LB0C4:  jsr     L8036                           ; B0C4 20 36 80                  6.
         lda     #$10                            ; B0C7 A9 10                    ..
@@ -6398,11 +6470,10 @@
         .byte   $01,$38,$12,$01,$64,$12,$01,$98 ; B23F 01 38 12 01 64 12 01 98  .8..d...
         .byte   $12,$01,$04,$22,$01,$98,$39,$01 ; B247 12 01 04 22 01 98 39 01  ..."..9.
         .byte   $58,$47,$01,$04,$52,$01,$38,$52 ; B24F 58 47 01 04 52 01 38 52  XG..R.8R
-        .byte   $01,$98,$52,$01,$FF             ; B257 01 98 52 01 FF           ..R..
-LB25C:  .byte   $22,$00,$62,$00,$A2,$00,$64,$00 ; B25C 22 00 62 00 A2 00 64 00  ".b...d.
-        .byte   $84,$00,$C4,$00,$26,$00,$C8,$00 ; B264 84 00 C4 00 26 00 C8 00  ....&...
-        .byte   $8A,$00,$2C,$00,$6C,$00,$CC,$00 ; B26C 8A 00 2C 00 6C 00 CC 00  ..,.l...
-        .byte   $FF                             ; B274 FF                       .
+        .byte   $01,$98,$52,$01,$FF,$22,$00,$62 ; B257 01 98 52 01 FF 22 00 62  ..R..".b
+        .byte   $00,$A2,$00,$64,$00,$84,$00,$C4 ; B25F 00 A2 00 64 00 84 00 C4  ...d....
+        .byte   $00,$26,$00,$C8,$00,$8A,$00,$2C ; B267 00 26 00 C8 00 8A 00 2C  .&.....,
+        .byte   $00,$6C,$00,$CC,$00,$FF         ; B26F 00 6C 00 CC 00 FF        .l....
 LB275:  .byte   $03,$A8,$B2,$0A,$A4,$20,$01,$56 ; B275 03 A8 B2 0A A4 20 01 56  ..... .V
         .byte   $FF                             ; B27D FF                       .
 ; ----------------------------------------------------------------------------
@@ -6488,11 +6559,11 @@
         .byte   $12,$01,$5A,$12,$01,$04,$22,$01 ; B39F 12 01 5A 12 01 04 22 01  ..Z...".
         .byte   $3A,$22,$01,$04,$32,$01,$78,$32 ; B3A7 3A 22 01 04 32 01 78 32  :"..2.x2
         .byte   $01,$98,$32,$01,$04,$52,$01,$38 ; B3AF 01 98 32 01 04 52 01 38  ..2..R.8
-        .byte   $52,$01,$60,$52,$01,$FF         ; B3B7 52 01 60 52 01 FF        R.`R..
-LB3BD:  .byte   $22,$10,$62,$20,$82,$30,$A2,$40 ; B3BD 22 10 62 20 82 30 A2 40  ".b .0.@
-        .byte   $C2,$50,$44,$60,$84,$70,$26,$80 ; B3C5 C2 50 44 60 84 70 26 80  .PD`.p&.
-        .byte   $66,$90,$28,$A0,$A8,$B0,$C8,$C0 ; B3CD 66 90 28 A0 A8 B0 C8 C0  f.(.....
-        .byte   $2C,$D0,$6C,$E0,$8C,$F0,$FF     ; B3D5 2C D0 6C E0 8C F0 FF     ,.l....
+        .byte   $52,$01,$60,$52,$01,$FF,$22,$10 ; B3B7 52 01 60 52 01 FF 22 10  R.`R..".
+        .byte   $62,$20,$82,$30,$A2,$40,$C2,$50 ; B3BF 62 20 82 30 A2 40 C2 50  b .0.@.P
+        .byte   $44,$60,$84,$70,$26,$80,$66,$90 ; B3C7 44 60 84 70 26 80 66 90  D`.p&.f.
+        .byte   $28,$A0,$A8,$B0,$C8,$C0,$2C,$D0 ; B3CF 28 A0 A8 B0 C8 C0 2C D0  (.....,.
+        .byte   $6C,$E0,$8C,$F0,$FF             ; B3D7 6C E0 8C F0 FF           l....
 LB3DC:  .byte   $00,$00,$FC,$B3,$06,$B4,$10,$B4 ; B3DC 00 00 FC B3 06 B4 10 B4  ........
         .byte   $06,$B4,$10,$B4,$1A,$B4,$24,$B4 ; B3E4 06 B4 10 B4 1A B4 24 B4  ......$.
         .byte   $2E,$B4,$38,$B4,$2E,$B4,$38,$B4 ; B3EC 2E B4 38 B4 2E B4 38 B4  ..8...8.
@@ -6647,11 +6718,10 @@
         .byte   $02,$01,$04,$22,$01,$98,$22,$01 ; B5E2 02 01 04 22 01 98 22 01  ..."..".
         .byte   $3C,$36,$01,$60,$36,$01,$04,$52 ; B5EA 3C 36 01 60 36 01 04 52  <6.`6..R
         .byte   $01,$3C,$52,$01,$60,$52,$01,$98 ; B5F2 01 3C 52 01 60 52 01 98  .<R.`R..
-        .byte   $52,$01,$FF                     ; B5FA 52 01 FF                 R..
-LB5FD:  .byte   $22,$10,$42,$20,$62,$00,$82,$00 ; B5FD 22 10 42 20 62 00 82 00  ".B b...
-        .byte   $A2,$30,$C2,$40,$26,$00,$C6,$00 ; B605 A2 30 C2 40 26 00 C6 00  .0.@&...
-        .byte   $68,$00,$88,$00,$2C,$00,$6C,$00 ; B60D 68 00 88 00 2C 00 6C 00  h...,.l.
-        .byte   $8C,$00,$CC,$00,$FF             ; B615 8C 00 CC 00 FF           .....
+        .byte   $52,$01,$FF,$22,$10,$42,$20,$62 ; B5FA 52 01 FF 22 10 42 20 62  R..".B b
+        .byte   $00,$82,$00,$A2,$30,$C2,$40,$26 ; B602 00 82 00 A2 30 C2 40 26  ....0.@&
+        .byte   $00,$C6,$00,$68,$00,$88,$00,$2C ; B60A 00 C6 00 68 00 88 00 2C  ...h...,
+        .byte   $00,$6C,$00,$8C,$00,$CC,$00,$FF ; B612 00 6C 00 8C 00 CC 00 FF  .l......
 LB61A:  .byte   $00,$00,$24,$B6,$2E,$B6,$3E,$B6 ; B61A 00 00 24 B6 2E B6 3E B6  ..$...>.
         .byte   $4E,$B6,$FE,$49,$9C,$FD,$04,$00 ; B622 4E B6 FE 49 9C FD 04 00  N..I....
         .byte   $78,$43,$02,$FF,$FE,$49,$9C,$FD ; B62A 78 43 02 FF FE 49 9C FD  xC...I..
-- 
cgit v1.2.3