mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-10-24 23:25:28 +00:00
space_bars: few lines of framebuffer
This commit is contained in:
parent
e81cfcffb1
commit
1b7d83fc72
@ -15,6 +15,39 @@ game:
|
|||||||
sta YPOS
|
sta YPOS
|
||||||
|
|
||||||
|
|
||||||
|
;==================
|
||||||
|
; setup framebuffer
|
||||||
|
|
||||||
|
lda #$12
|
||||||
|
sta FRAMEBUFFER+0
|
||||||
|
lda #$34
|
||||||
|
sta FRAMEBUFFER+1
|
||||||
|
lda #$56
|
||||||
|
sta FRAMEBUFFER+2
|
||||||
|
lda #$78
|
||||||
|
sta FRAMEBUFFER+3
|
||||||
|
lda #$9A
|
||||||
|
sta FRAMEBUFFER+4
|
||||||
|
lda #$BC
|
||||||
|
sta FRAMEBUFFER+5
|
||||||
|
lda #$DE
|
||||||
|
sta FRAMEBUFFER+6
|
||||||
|
lda #$F0
|
||||||
|
sta FRAMEBUFFER+7
|
||||||
|
lda #$12
|
||||||
|
sta FRAMEBUFFER+8
|
||||||
|
lda #$34
|
||||||
|
sta FRAMEBUFFER+9
|
||||||
|
lda #$56
|
||||||
|
sta FRAMEBUFFER+10
|
||||||
|
lda #$78
|
||||||
|
sta FRAMEBUFFER+11
|
||||||
|
lda #$9A
|
||||||
|
sta FRAMEBUFFER+12
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;=============================
|
;=============================
|
||||||
; Load graphic hgr
|
; Load graphic hgr
|
||||||
|
|
||||||
@ -46,6 +79,8 @@ game:
|
|||||||
jsr clear_gr
|
jsr clear_gr
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;=============================
|
;=============================
|
||||||
; Load graphic page2 $c00
|
; Load graphic page2 $c00
|
||||||
|
|
||||||
@ -57,6 +92,14 @@ game:
|
|||||||
jsr clear_gr
|
jsr clear_gr
|
||||||
|
|
||||||
|
|
||||||
|
lda #<score_text
|
||||||
|
sta OUTL
|
||||||
|
lda #>score_text
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
jsr move_and_print
|
||||||
|
|
||||||
|
|
||||||
lda #0
|
lda #0
|
||||||
sta DRAW_PAGE
|
sta DRAW_PAGE
|
||||||
|
|
||||||
@ -260,20 +303,27 @@ sbloopF:dex ; 2
|
|||||||
;======================================================
|
;======================================================
|
||||||
|
|
||||||
; do_nothing should be 4550
|
; do_nothing should be 4550
|
||||||
|
; -853 draw_framebuffer
|
||||||
; -34 keypress
|
; -34 keypress
|
||||||
; -1 adjust center mark back
|
; -1 adjust center mark back
|
||||||
; ===========
|
; ===========
|
||||||
; 4515
|
; 3662
|
||||||
|
|
||||||
|
; Try X=5 Y=118 cycles=3659 R3
|
||||||
|
; Try X=7 Y=97 cycles=3978 R4
|
||||||
; Try X=11 Y=74 cycles=4515
|
; Try X=11 Y=74 cycles=4515
|
||||||
|
|
||||||
ldy #74 ; 2
|
lda $0
|
||||||
sbloop1:ldx #11 ; 2
|
|
||||||
|
ldy #118 ; 2
|
||||||
|
sbloop1:ldx #5 ; 2
|
||||||
sbloop2:dex ; 2
|
sbloop2:dex ; 2
|
||||||
bne sbloop2 ; 2nt/3
|
bne sbloop2 ; 2nt/3
|
||||||
dey ; 2
|
dey ; 2
|
||||||
bne sbloop1 ; 2nt/3
|
bne sbloop1 ; 2nt/3
|
||||||
|
|
||||||
|
jsr draw_framebuffer ; 6+527
|
||||||
|
|
||||||
|
|
||||||
; no keypress = 10+(24) = 34
|
; no keypress = 10+(24) = 34
|
||||||
; left pressed = 9+8+12+(5)= 34
|
; left pressed = 9+8+12+(5)= 34
|
||||||
@ -300,7 +350,7 @@ sb_handle_keypress:
|
|||||||
; -1
|
; -1
|
||||||
|
|
||||||
sb_check_left:
|
sb_check_left:
|
||||||
cmp #$15|$80 ; left ; 2
|
cmp #$08|$80 ; left ; 2
|
||||||
bne sb_check_right ; 3
|
bne sb_check_right ; 3
|
||||||
; -1
|
; -1
|
||||||
dec XPOS ; 5
|
dec XPOS ; 5
|
||||||
@ -310,7 +360,7 @@ sb_check_left:
|
|||||||
jmp sb_display_loop ; 3
|
jmp sb_display_loop ; 3
|
||||||
|
|
||||||
sb_check_right:
|
sb_check_right:
|
||||||
cmp #$8|$80 ; 2
|
cmp #$15|$80 ; 2
|
||||||
bne sb_exit ; 3
|
bne sb_exit ; 3
|
||||||
; -1
|
; -1
|
||||||
inc XPOS ; 5
|
inc XPOS ; 5
|
||||||
@ -324,6 +374,23 @@ sb_exit:
|
|||||||
rts ; 6
|
rts ; 6
|
||||||
|
|
||||||
|
|
||||||
|
.align $100
|
||||||
|
|
||||||
|
draw_framebuffer:
|
||||||
|
; 2 + 40*21 + 5 = 847
|
||||||
|
|
||||||
|
|
||||||
|
ldx #40 ; 2
|
||||||
|
fb_loop:
|
||||||
|
lda FRAMEBUFFER+11 ; 3
|
||||||
|
sta $750-1,x ; 5
|
||||||
|
lda FRAMEBUFFER+12 ; 3
|
||||||
|
sta $7d0-1,x ; 5
|
||||||
|
dex ; 2
|
||||||
|
bne fb_loop ; 3
|
||||||
|
|
||||||
|
; -1
|
||||||
|
rts ; 6
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -336,3 +403,6 @@ background_hgr:
|
|||||||
.incbin "SB_BACKGROUNDC.BIN.lz4",11
|
.incbin "SB_BACKGROUNDC.BIN.lz4",11
|
||||||
background_hgr_end:
|
background_hgr_end:
|
||||||
|
|
||||||
|
score_text:
|
||||||
|
.byte 0,0
|
||||||
|
.asciiz "LEVEL:6 LIVES:2 SCORE:001978 HI:002018"
|
||||||
|
@ -151,7 +151,9 @@ gr_offsets:
|
|||||||
.include "vapor_lock.s"
|
.include "vapor_lock.s"
|
||||||
.include "delay_a.s"
|
.include "delay_a.s"
|
||||||
.include "lz4_decode.s"
|
.include "lz4_decode.s"
|
||||||
|
.align $100
|
||||||
.include "gr_putsprite.s"
|
.include "gr_putsprite.s"
|
||||||
|
|
||||||
.include "spacebars_title.inc"
|
.include "spacebars_title.inc"
|
||||||
|
.align $100
|
||||||
.include "mode7_sprites.inc"
|
.include "mode7_sprites.inc"
|
||||||
|
Loading…
Reference in New Issue
Block a user