From 15e9e4e81c20ef4ba8d1c151c59349e4566d7e7b Mon Sep 17 00:00:00 2001 From: Vince Weaver <vincent.weaver@maine.edu> Date: Thu, 11 Jul 2019 15:21:11 -0400 Subject: [PATCH] ootw: c2: can walk around all rooms now --- ootw/ootw_c2.s | 10 +- ootw/ootw_c2_elevator.s | 42 ++++---- ootw/ootw_c2_jail.s | 112 +++++++++++++++++---- ootw/ootw_graphics/l2jail/Makefile | 6 +- ootw/ootw_graphics/l2jail/ootw_c2_jail.inc | 87 ++++++++++++++++ ootw/ootw_graphics/l2jail/room_b3.png | Bin 0 -> 4818 bytes ootw/ootw_graphics/l2jail/room_b4.png | Bin 0 -> 368 bytes 7 files changed, 207 insertions(+), 50 deletions(-) create mode 100644 ootw/ootw_graphics/l2jail/room_b3.png create mode 100644 ootw/ootw_graphics/l2jail/room_b4.png diff --git a/ootw/ootw_c2.s b/ootw/ootw_c2.s index c0319ac3..b80c40cd 100644 --- a/ootw/ootw_c2.s +++ b/ootw/ootw_c2.s @@ -60,22 +60,14 @@ c2_new_room: sta GAME_OVER lda WHICH_JAIL - cmp #4 + cmp #7 bcs elevator_room ; bge jail_room: jsr ootw_jail jmp c2_check_done elevator_room: - cmp #8 - bcs multilevel_room ; bge jsr ootw_elevator - jmp c2_check_done - -multilevel_room: - ; FIXME - - c2_check_done: lda GAME_OVER diff --git a/ootw/ootw_c2_elevator.s b/ootw/ootw_c2_elevator.s index 0e57120a..886e3996 100644 --- a/ootw/ootw_c2_elevator.s +++ b/ootw/ootw_c2_elevator.s @@ -25,12 +25,12 @@ ootw_elevator: ;============================== ; setup per-room variables -check_elevator4: +check_elevator7: lda WHICH_JAIL - cmp #4 - bne check_elevator5 + cmp #7 + bne check_elevator8 -elevator4: +elevator7: lda #(-4+128) sta LEFT_LIMIT lda #(21+128) @@ -41,11 +41,11 @@ elevator4: sta eel_smc+1 ; set up exit - lda #7 + lda #10 sta going_up_smc+1 ; set down exit - lda #5 + lda #8 sta going_down_smc+1 lda #48 @@ -53,25 +53,25 @@ elevator4: jmp elevator_setup_done -check_elevator5: - cmp #5 - bne check_elevator6 -elevator5: +check_elevator8: + cmp #8 + bne check_elevator9 +elevator8: lda #(-4+128) sta LEFT_LIMIT lda #(21+128) sta RIGHT_LIMIT ; set left exit - lda #9 + lda #4 sta eel_smc+1 ; set up exit - lda #4 + lda #7 sta going_up_smc+1 ; set down exit - lda #6 + lda #9 sta going_down_smc+1 lda #96 @@ -80,22 +80,22 @@ elevator5: jmp elevator_setup_done -check_elevator6: - cmp #6 - bne elevator7 +check_elevator9: + cmp #9 + bne elevator10 -elevator6: +elevator9: lda #(-4+128) sta LEFT_LIMIT lda #(21+128) sta RIGHT_LIMIT ; set left exit - lda #8 + lda #6 sta eel_smc+1 ; set up exit - lda #5 + lda #8 sta going_up_smc+1 ; no down exit @@ -105,7 +105,7 @@ elevator6: jmp elevator_setup_done -elevator7: +elevator10: lda #(10+128) sta LEFT_LIMIT @@ -116,7 +116,7 @@ elevator7: ; no up exit ; set down exit - lda #4 + lda #7 sta going_down_smc+1 lda #0 diff --git a/ootw/ootw_c2_jail.s b/ootw/ootw_c2_jail.s index c4f4ea32..dd10120b 100644 --- a/ootw/ootw_c2_jail.s +++ b/ootw/ootw_c2_jail.s @@ -2,6 +2,12 @@ ootw_jail: + ;============================== + ; init + + lda #0 + sta ON_ELEVATOR + ;============================== ; setup per-room variables @@ -29,15 +35,10 @@ jail0: lda #>(cage_fell_rle) sta GBASH lda #<(cage_fell_rle) - sta GBASL - lda #$c ; load to page $c00 - jsr load_rle_gr ; tail call - jmp jail_setup_done jail1: - lda WHICH_JAIL cmp #1 bne jail2 @@ -61,14 +62,10 @@ jail1: lda #>(jail2_rle) sta GBASH lda #<(jail2_rle) - sta GBASL - lda #$c ; load to page $c00 - jsr load_rle_gr ; tail call jmp jail_setup_done jail2: - lda WHICH_JAIL cmp #2 bne jail3 @@ -89,13 +86,66 @@ jail2: lda #>(jail3_rle) sta GBASH lda #<(jail3_rle) - sta GBASL - lda #$c ; load to page $c00 - jsr load_rle_gr ; tail call jmp jail_setup_done jail3: + cmp #3 + bne jail4 + + lda #(-4+128) + sta LEFT_LIMIT + lda #(39+128) + sta RIGHT_LIMIT + + ; set right exit + lda #7 + sta jer_smc+1 + + ; set left exit + lda #2 + sta jel_smc+1 + + lda #30 + sta PHYSICIST_Y + + ; load background + lda #>(jail4_rle) + sta GBASH + lda #<(jail4_rle) + + jmp jail_setup_done + +jail4: + cmp #4 + bne jail5 + + lda #(-4+128) + sta LEFT_LIMIT + lda #(39+128) + sta RIGHT_LIMIT + + ; set right exit + lda #8 + sta jer_smc+1 + + ; set left exit + lda #5 + sta jel_smc+1 + + lda #30 + sta PHYSICIST_Y + + ; load background + lda #>(room_b4_rle) + sta GBASH + lda #<(room_b4_rle) + + jmp jail_setup_done + +jail5: + cmp #5 + bne jail6 lda #(-4+128) sta LEFT_LIMIT @@ -106,21 +156,45 @@ jail3: lda #4 sta jer_smc+1 - ; set left exit - lda #2 - sta jel_smc+1 + lda #30 + sta PHYSICIST_Y ; load background - lda #>(jail4_rle) + lda #>(room_b3_rle) sta GBASH - lda #<(jail4_rle) + lda #<(room_b3_rle) + + jmp jail_setup_done + +jail6: + + lda #(-4+128) + sta LEFT_LIMIT + lda #(39+128) + sta RIGHT_LIMIT + + ; set right exit + lda #9 + sta jer_smc+1 + + lda #20 + sta PHYSICIST_Y + + ; load background + lda #>(room_b2_rle) + sta GBASH + lda #<(room_b2_rle) + + jmp jail_setup_done + + +jail_setup_done: + sta GBASL lda #$c ; load to page $c00 jsr load_rle_gr ; tail call -jail_setup_done: - ootw_jail_already_set: ;=========================== ; Enable graphics diff --git a/ootw/ootw_graphics/l2jail/Makefile b/ootw/ootw_graphics/l2jail/Makefile index 179cb1d3..a05678e3 100644 --- a/ootw/ootw_graphics/l2jail/Makefile +++ b/ootw/ootw_graphics/l2jail/Makefile @@ -8,12 +8,16 @@ all: ootw_c2_jail.inc ##### ootw_c2_jail.inc: $(PNG2RLE) \ - ootw_c2_cage_fell.png jail2_bg.png jail3_bg.png jail4_bg.png dome.png + ootw_c2_cage_fell.png jail2_bg.png jail3_bg.png jail4_bg.png dome.png \ + room_b2.png room_b3.png room_b4.png $(PNG2RLE) asm ootw_c2_cage_fell.png cage_fell_rle > ootw_c2_jail.inc $(PNG2RLE) asm jail2_bg.png jail2_rle >> ootw_c2_jail.inc $(PNG2RLE) asm jail3_bg.png jail3_rle >> ootw_c2_jail.inc $(PNG2RLE) asm jail4_bg.png jail4_rle >> ootw_c2_jail.inc $(PNG2RLE) asm dome.png dome_rle >> ootw_c2_jail.inc + $(PNG2RLE) asm room_b2.png room_b2_rle >> ootw_c2_jail.inc + $(PNG2RLE) asm room_b3.png room_b3_rle >> ootw_c2_jail.inc + $(PNG2RLE) asm room_b4.png room_b4_rle >> ootw_c2_jail.inc ##### diff --git a/ootw/ootw_graphics/l2jail/ootw_c2_jail.inc b/ootw/ootw_graphics/l2jail/ootw_c2_jail.inc index 0c0e4cf8..3cd415ce 100644 --- a/ootw/ootw_graphics/l2jail/ootw_c2_jail.inc +++ b/ootw/ootw_graphics/l2jail/ootw_c2_jail.inc @@ -263,3 +263,90 @@ dome_rle: .byte $28 ; ysize=48 .byte $A0,$20,$88, $A8,$00, $A0,$20,$88, $A8,$00, $A0,$20,$88, $A8,$00, $A0,$20,$88 .byte $A8,$00, $A0,$20,$88, $A8,$00, $AF,$88 .byte $A1 +room_b2_rle: .byte $28 ; ysize=48 + .byte $A0,$14,$88, $67, $A0,$27,$88, $77, $A0,$27,$88, $76, $A0,$27,$88 + .byte $67, $A0,$27,$88, $77, $A0,$27,$88, $76, $A0,$27,$88, $67 + .byte $A0,$23,$88, $A4,$08, $07, $A0,$13,$08, $A0,$10,$88, $00,$00, $55 + .byte $25, $55, $27, $2E, $2F, $2E, $67 + .byte $25,$25, $55, $27, $2E, $2F, $2E, $27 + .byte $65, $25, $27, $2E, $2F, $2E, $A0,$10,$88 + .byte $00,$00, $55, $22, $55, $A4,$22, $66, $22,$22 + .byte $55, $A5,$22, $66, $A5,$22, $A0,$10,$88, $00,$00, $55 + .byte $22, $55, $A4,$22, $66, $22,$22, $55, $A5,$22 + .byte $66, $A5,$22, $A0,$10,$88, $00,$00, $55, $22, $55 + .byte $A4,$22, $66, $22,$22, $55, $A5,$22, $66, $A5,$22 + .byte $AF,$88, $08, $00,$00, $55, $22, $55, $A4,$25 + .byte $66, $22,$22, $55, $A5,$22, $66, $A5,$22, $AF,$88 + .byte $A3,$00, $55, $22, $55, $A4,$22, $66, $22,$22 + .byte $55, $A5,$22, $66, $A5,$22, $AF,$88, $A3,$00, $66 + .byte $22, $55, $A4,$22, $66, $22,$22, $55, $A5,$22 + .byte $66, $A5,$22, $AF,$88, $A3,$00, $66, $22, $55 + .byte $A4,$22, $66, $22,$22, $55, $A5,$22, $66, $A5,$22 + .byte $AF,$88, $A3,$00, $66, $22, $55, $A4,$22, $66 + .byte $22,$22, $55, $A5,$22, $66, $A5,$22, $AF,$88, $A3,$00 + .byte $A3,$05, $A5,$06, $A3,$05, $A4,$06, $A3,$05, $A4,$06, $AF,$88 + .byte $A0,$19,$00, $A0,$C8,$88 + .byte $A1 +room_b3_rle: .byte $28 ; ysize=48 + .byte $AE,$00, $80, $AA,$88, $A3,$00, $AC,$88, $AC,$00, $80 + .byte $AC,$88, $A3,$00, $AC,$88, $A0,$26,$00, $88,$88, $22,$22, $55 + .byte $A3,$22, $00, $A0,$13,$22, $00, $A9,$22, $00,$00, $88,$88 + .byte $22,$22, $55, $A3,$22, $00, $A0,$13,$22, $00, $A9,$22 + .byte $00,$00, $88,$88, $22,$22, $55, $22, $02, $22 + .byte $00, $A0,$13,$22, $00, $A9,$22, $00,$00, $88,$88, $22,$22 + .byte $25,$25, $00, $22, $00, $A0,$13,$22, $00, $A9,$22 + .byte $00,$00, $88,$88, $A4,$22, $55, $22, $00, $A0,$13,$22 + .byte $00, $A8,$22, $02, $00,$00, $88,$88, $55, $A3,$22 + .byte $55, $22, $00, $A0,$13,$22, $00, $A8,$22, $A3,$00 + .byte $88,$88, $55, $A3,$22, $55, $22, $00, $A0,$13,$22 + .byte $00, $A8,$22, $A3,$00, $88,$88, $55, $A3,$22, $55 + .byte $22, $00, $22, $52, $A0,$11,$22, $00, $A8,$22 + .byte $A3,$00, $88,$88, $65,$65, $62,$62, $65, $62, $60 + .byte $65,$65, $A4,$62, $65, $A4,$62, $A3,$F2, $A5,$62, $60 + .byte $A4,$62, $02, $A3,$22, $A3,$00, $88,$88, $A4,$00, $20 + .byte $02, $AE,$00, $05, $AA,$00, $02, $22,$22, $20 + .byte $A3,$00, $88,$88, $AD,$00, $80, $AF,$88, $00,$00, $02 + .byte $22,$22, $20, $A0,$10,$00, $80, $A0,$11,$88, $00,$00, $A3,$22 + .byte $A6,$20, $AA,$80, $A0,$13,$88, $00,$00, $A9,$22, $A0,$1D,$88, $00,$00 + .byte $A9,$22, $A0,$1D,$88, $00,$00, $A9,$22, $A0,$1D,$88, $00,$00, $A9,$22 + .byte $A0,$1D,$88, $00,$00, $A9,$22, $A0,$1D,$88, $00,$00, $A9,$22, $A0,$1D,$88 + .byte $00,$00, $A9,$22, $A0,$1D,$88, $00,$00, $A9,$22, $A0,$1D,$88, $00,$00 + .byte $A9,$05 + .byte $A1 +room_b4_rle: .byte $28 ; ysize=48 + .byte $A0,$59,$88, $A0,$1F,$00, $A9,$88, $00, $65, $A3,$25, $27 + .byte $2E, $2F, $2E, $27, $A4,$25, $A3,$55, $A6,$25 + .byte $05, $A7,$25, $A9,$88, $00, $66, $AD,$22, $55 + .byte $A7,$22, $00, $A7,$22, $A9,$88, $00, $66, $AD,$22 + .byte $55, $A7,$22, $00, $A7,$22, $A9,$88, $00, $66 + .byte $AD,$22, $55, $A7,$22, $00, $A7,$22, $A8,$88, $00,$00 + .byte $66, $A0,$15,$22, $00, $A7,$22, $A8,$88, $00,$00, $66 + .byte $A0,$15,$22, $00, $A7,$22, $A8,$88, $00,$00, $66, $A6,$22 + .byte $52, $AE,$22, $00, $A7,$22, $A8,$88, $00,$00, $66 + .byte $A6,$22, $55, $AE,$22, $00, $A7,$22, $A8,$88, $00,$00 + .byte $66, $A4,$22, $62,$62, $55, $A6,$62, $52, $A7,$62 + .byte $00, $A7,$62, $A6,$88, $A5,$00, $20, $22,$22, $02 + .byte $A0,$24,$00, $20, $22,$22, $02, $A0,$19,$00, $A3,$25, $2E + .byte $2F, $2E, $25, $55, $A3,$25, $A7,$22, $00 + .byte $22, $00, $22, $00, $AA,$22, $55, $00,$00 + .byte $A4,$88, $A7,$22, $55, $AA,$22, $00, $22, $00 + .byte $22, $00, $22,$22, $A3,$00, $20, $00, $22 + .byte $02, $22, $55, $00,$00, $A4,$88, $A7,$22, $25 + .byte $AA,$22, $00, $22, $00, $22, $00, $22,$22 + .byte $A3,$00, $22, $00, $22, $20, $22, $55 + .byte $00,$00, $A4,$88, $A0,$12,$22, $00, $22, $00, $22 + .byte $00, $22,$22, $A3,$00, $22, $00, $A3,$22, $55 + .byte $00,$00, $A4,$88, $A3,$22, $02, $AE,$22, $00, $22 + .byte $00, $22, $00, $22,$22, $A3,$00, $22, $00 + .byte $A3,$22, $55, $00,$00, $A4,$88, $22,$22, $02, $20 + .byte $22, $20, $22,$22, $20, $A9,$22, $00, $22 + .byte $00, $22, $00, $22,$22, $A3,$00, $22, $00 + .byte $A3,$22, $55, $00,$00, $A4,$88, $A4,$22, $20, $22,$22 + .byte $20, $AA,$22, $00, $22, $00, $22, $00 + .byte $22,$22, $A3,$00, $22, $00, $A3,$22, $55, $A3,$00 + .byte $A3,$88, $A0,$12,$22, $00, $22, $00, $22, $00 + .byte $22,$22, $A3,$00, $22, $00, $A3,$22, $66, $A3,$00 + .byte $A3,$88, $50, $52, $A0,$10,$62, $00, $62, $00 + .byte $62, $00, $62,$62, $A3,$60, $62, $60, $A3,$62 + .byte $66, $A3,$00, $A3,$88, $A0,$22,$06, $A3,$00, $A3,$88 + .byte $A1 diff --git a/ootw/ootw_graphics/l2jail/room_b3.png b/ootw/ootw_graphics/l2jail/room_b3.png new file mode 100644 index 0000000000000000000000000000000000000000..f73809206209371917b6ee6b5d832047c9f897a0 GIT binary patch literal 4818 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 literal 0 HcmV?d00001 diff --git a/ootw/ootw_graphics/l2jail/room_b4.png b/ootw/ootw_graphics/l2jail/room_b4.png new file mode 100644 index 0000000000000000000000000000000000000000..abe1c83c7729f82d0f0b09df703619a12e74b2ea GIT binary patch literal 368 zcmeAS@N?(olHy`uVBq!ia0vp^0YGfP!VDx!PCqyT;sp4FxB}_NatR53d;h!qWmudr zXU-gv^M5ZK{-039{6EWP?%cWm7hDkeYIEUkZ_)n?|Ns9_WS?0J)WewM?e4<R!7A$k z<Zu>vL>4nJ2(JfW#^h&xhk=6ZC7!;n?2p;Gg^VQ*HV8ch3Q3l@MwB?`=jNv7l`uFL zr6!i7rYMwWmSiZnd-?{1H}Z)C6)p61aSX9I{q*uh!4?G`mJ4fDZI`xgN#G7&t6L%1 z(pe?5I=*L}`~th<Ei)fDvne~26fv(#pEbSmQatAcl_T*_dAG6aYG~y*SU6O&TzR-~ zX4I)|5~rk|C;Z)D%vHOcTl>HDe5Lt&Oft6mUx~XOeB!C2Uwe`0v@D4kX5|Y_7Vt0~ zbauJh@*w-pYh#w%JnV0^Sh%<LMDtz}eP_HS@6`I47JryZ_fB^a*tqKg(6J1ju6{1- HoD!M<UC4~0 literal 0 HcmV?d00001