mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-11 05:29:38 +00:00
ootw: move earthquake framebuffer really high
This commit is contained in:
parent
858e622814
commit
e1b13a9526
|
@ -43,9 +43,10 @@ Ootw Memory map:
|
|||
04-07 GR page0
|
||||
08-0b GR page1
|
||||
0c-0f background ($c00 = disk load buffer)
|
||||
10-13 earthquake background (shifted) background
|
||||
10-13 background overlay
|
||||
14-16 loader
|
||||
17-bf program-data (42.25k)
|
||||
17-bf program-data (41.25k)
|
||||
bc-bf earthquake background (shifted)
|
||||
c0-cf I/O
|
||||
d0-ff ROM
|
||||
|
||||
|
|
|
@ -9,11 +9,13 @@ TODO:
|
|||
movement -- note these are hard due to limitations of the Apple II keyboard
|
||||
+ running: Missing one running frame
|
||||
+ ability to jump
|
||||
+ ability to run+jump
|
||||
+ ability to kick while crouching
|
||||
+ ability to shoot
|
||||
|
||||
sprites_to_draw:
|
||||
+ physicist jumping
|
||||
+ physicist crouch-kicking
|
||||
+ physicist run+jumping
|
||||
+ physicist swimming
|
||||
+ physicist getting out of pool
|
||||
+ beast tripping
|
||||
|
|
|
@ -55,7 +55,7 @@ no_shake:
|
|||
jsr gr_copy_to_current
|
||||
jmp done_shake
|
||||
shake_shake:
|
||||
jsr gr_copy_to_current_1000
|
||||
jsr gr_copy_to_current_BC00
|
||||
done_shake:
|
||||
|
||||
rts
|
||||
|
@ -89,3 +89,60 @@ no_boulder:
|
|||
|
||||
rts
|
||||
|
||||
|
||||
;=========================================================
|
||||
; gr_copy_to_current, 40x48 version
|
||||
;=========================================================
|
||||
; copy $BC00 to DRAW_PAGE
|
||||
|
||||
gr_copy_to_current_BC00:
|
||||
|
||||
lda DRAW_PAGE ; 3
|
||||
clc ; 2
|
||||
adc #$4 ; 2
|
||||
sta gr_copy_line_BC+5 ; 4
|
||||
sta gr_copy_line_BC+11 ; 4
|
||||
adc #$1 ; 2
|
||||
sta gr_copy_line_BC+17 ; 4
|
||||
sta gr_copy_line_BC+23 ; 4
|
||||
adc #$1 ; 2
|
||||
sta gr_copy_line_BC+29 ; 4
|
||||
sta gr_copy_line_BC+35 ; 4
|
||||
adc #$1 ; 2
|
||||
sta gr_copy_line_BC+41 ; 4
|
||||
sta gr_copy_line_BC+47 ; 4
|
||||
;===========
|
||||
; 45
|
||||
|
||||
ldy #119 ; for early ones, copy 120 bytes ; 2
|
||||
|
||||
gr_copy_line_BC:
|
||||
lda $BC00,Y ; load a byte (self modified) ; 4
|
||||
sta $400,Y ; store a byte (self modified) ; 5
|
||||
|
||||
lda $BC80,Y ; load a byte (self modified) ; 4
|
||||
sta $480,Y ; store a byte (self modified) ; 5
|
||||
|
||||
lda $BD00,Y ; load a byte (self modified) ; 4
|
||||
sta $500,Y ; store a byte (self modified) ; 5
|
||||
|
||||
lda $BD80,Y ; load a byte (self modified) ; 4
|
||||
sta $580,Y ; store a byte (self modified) ; 5
|
||||
|
||||
lda $BE00,Y ; load a byte (self modified) ; 4
|
||||
sta $600,Y ; store a byte (self modified) ; 5
|
||||
|
||||
lda $BE80,Y ; load a byte (self modified) ; 4
|
||||
sta $680,Y ; store a byte (self modified) ; 5
|
||||
|
||||
lda $BF00,Y ; load a byte (self modified) ; 4
|
||||
sta $700,Y ; store a byte (self modified) ; 5
|
||||
|
||||
lda $BF80,Y ; load a byte (self modified) ; 4
|
||||
sta $780,Y ; store a byte (self modified) ; 5
|
||||
|
||||
dey ; decrement pointer ; 2
|
||||
bpl gr_copy_line_BC ; ; 2nt/3
|
||||
|
||||
rts ; 6
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
;=========================================================
|
||||
; gr_make_quake
|
||||
;=========================================================
|
||||
; Take image in 0xc00
|
||||
; Copy to 0x1000
|
||||
; Take image in $c00
|
||||
; Copy to $BC00
|
||||
; Actually copy lines 2..41 to 0..39
|
||||
gr_make_quake:
|
||||
|
||||
|
@ -12,7 +12,7 @@ make_quake_loop:
|
|||
sta OUTL
|
||||
lda gr_offsets+1,x
|
||||
clc
|
||||
adc #$C
|
||||
adc #$B8
|
||||
sta OUTH
|
||||
|
||||
inx
|
||||
|
@ -43,7 +43,7 @@ quake_clear_bottom:
|
|||
sta OUTL
|
||||
lda gr_offsets+1,x
|
||||
clc
|
||||
adc #$C
|
||||
adc #$B8
|
||||
sta OUTH
|
||||
|
||||
inx
|
||||
|
|
|
@ -25,12 +25,12 @@ ootw_cavern:
|
|||
sta RIGHT_LIMIT
|
||||
|
||||
;=============================
|
||||
; Load backgrounds to $c00 / $1000
|
||||
; Load background to $c00
|
||||
|
||||
jsr cavern_load_background
|
||||
|
||||
;================================
|
||||
; Load quake background to $1000
|
||||
; Load quake background to $BC00
|
||||
|
||||
jsr gr_make_quake
|
||||
|
||||
|
|
|
@ -52,7 +52,7 @@ load_swing_bg:
|
|||
jsr load_rle_gr
|
||||
|
||||
;================================
|
||||
; Load quake background to $1000
|
||||
; Load quake background to $BC00
|
||||
|
||||
jsr gr_make_quake
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user