From 7885aa4fce3098dd1c8e9e9658dbe1cfbe99e013 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Mon, 5 Sep 2016 05:48:58 -0400 Subject: blackout, data_aac8 --- jumpmanjr.dasm | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'jumpmanjr.dasm') diff --git a/jumpmanjr.dasm b/jumpmanjr.dasm index b303023..a403754 100644 --- a/jumpmanjr.dasm +++ b/jumpmanjr.dasm @@ -1,5 +1,5 @@ ; da65 V2.15 - Git 104f898 -; Created: 2016-09-05 05:15:49 +; Created: 2016-09-05 05:47:25 ; Input file: jumpmanjr.rom ; Page: 1 @@ -6281,7 +6281,7 @@ walls_sub3: rts ; AAC7 60 ` ; ---------------------------------------------------------------------------- -; non-map data, dunno what for. grouped with the level 5 stuff, but doesn't seem to be used by level 5 +; non-map data, dunno what for. grouped with the level 5 stuff, but doesn't seem to be used by level 5 (as in, playing thru level 5 in the emu with breakpoint 'read>=aac8 read<=aacf' never causes a break!) data_aac8: .byte $00,$09,$40,$45,$02,$58,$45,$02 ; AAC8 00 09 40 45 02 58 45 02 ..@E.XE. ; level map data starts here @@ -6651,6 +6651,7 @@ l09_bombs: l09_bombs_term: .byte $FF ; B0C3 FF . ; ---------------------------------------------------------------------------- +; sets screen memory to $1000 and draws l09_real_map there. bombs are handled specially as they're blanks in the map. blackout_init: jsr special_init_jv ; B0C4 20 36 80 6. lda #$10 ; B0C7 A9 10 .. @@ -6662,7 +6663,7 @@ blackout_init: sta dm_progctr+1 ; B0D4 85 C1 .. jsr draw_map_jv ; B0D6 20 00 80 .. ldx #$07 ; B0D9 A2 07 .. -LB0DB: lda LB119,x ; B0DB BD 19 B1 ... +LB0DB: lda map_one_bomb_minus_one,x ; B0DB BD 19 B1 ... sta $08FF,x ; B0DE 9D FF 08 ... dex ; B0E1 CA . bne LB0DB ; B0E2 D0 F7 .. @@ -6691,13 +6692,16 @@ LB0E8: lda RANDOM ; B0E8 AD 0A D2 jsr draw_map_jv ; B112 20 00 80 .. dec $AA ; B115 C6 AA .. bne LB0E8 ; B117 D0 CF .. -LB119: rts ; B119 60 ` +; 1-indexed +map_one_bomb_minus_one: + rts ; B119 60 ` ; ---------------------------------------------------------------------------- -; dunno what this is for yet -map_b11a: +; used by blackout, copied to RAM and modified ($00's replaced with actual X and Y coords of bomb) +map_one_bomb: .byte $FE,$B3,$9C,$00,$00,$01,$FF ; B11A FE B3 9C 00 00 01 FF ....... ; ---------------------------------------------------------------------------- +; make sure the user sees the bomb he's just picked up (?). at least 1 pixel of it already has to be visible, for collision detection to work. blackout_bomb_sub: lda #$10 ; B121 A9 10 .. sta SAVMSC+1 ; B123 85 59 .Y @@ -6716,6 +6720,7 @@ blackout_bomb_sub: rts ; B13F 60 ` ; ---------------------------------------------------------------------------- +; copies pixels from rendered real map at $1000 to visible screen memory at $3000, centered around jumpman's location blackout_sub0: lda falling_flag ; B140 AD 21 06 .!. bne LB146 ; B143 D0 01 .. -- cgit v1.2.3