mirror of
https://github.com/digarok/festro.git
synced 2024-06-01 21:41:33 +00:00
smooth some timing
This commit is contained in:
parent
19b3005577
commit
cb5e054f0d
155
festro.s
155
festro.s
|
@ -42,14 +42,11 @@ DemoMain
|
||||||
DemoSubroutineTable
|
DemoSubroutineTable
|
||||||
|
|
||||||
dw HandleProdrop
|
dw HandleProdrop
|
||||||
* dw HandleDigawrite
|
|
||||||
dw HandleShortWait
|
dw HandleShortWait
|
||||||
dw HandleStarScroll
|
dw HandleStarScroll
|
||||||
dw HandleProdrop
|
dw HandleTextClear
|
||||||
dw HandleSwipeWrite
|
dw HandleScan
|
||||||
dw HandleShortWait
|
dw HandleMapScroll
|
||||||
dw HandleShortWait
|
|
||||||
dw HandleProdrop
|
|
||||||
|
|
||||||
dw HandleLoResInit
|
dw HandleLoResInit
|
||||||
dw HandleFireRatio20
|
dw HandleFireRatio20
|
||||||
|
@ -79,8 +76,89 @@ DemoSubroutineTable
|
||||||
dw SetProdropGr
|
dw SetProdropGr
|
||||||
dw HandleProdrop
|
dw HandleProdrop
|
||||||
dw HandleShortWait
|
dw HandleShortWait
|
||||||
|
dw HandleTextClear
|
||||||
|
dw HandleSwipeWrite
|
||||||
|
dw HandleShortWait
|
||||||
|
dw HandleShortWait
|
||||||
|
dw HandleProdrop
|
||||||
dw P8Quit
|
dw P8Quit
|
||||||
|
|
||||||
|
HandleMapScroll
|
||||||
|
ldx #WorldMapWidth-40
|
||||||
|
jsr DrawMapOffset
|
||||||
|
lda #$25
|
||||||
|
jsr SimplerWait
|
||||||
|
ldx #WorldMapWidth-40
|
||||||
|
:scrollLoop phx
|
||||||
|
jsr DrawMapOffset
|
||||||
|
lda #$20
|
||||||
|
jsr SimplerWait
|
||||||
|
plx
|
||||||
|
dex
|
||||||
|
bne :scrollLoop
|
||||||
|
lda #$30
|
||||||
|
jsr SimplerWait
|
||||||
|
inc GDemoState
|
||||||
|
jmp DemoMain
|
||||||
|
|
||||||
|
DrawMapOffset
|
||||||
|
ldy #0
|
||||||
|
|
||||||
|
:drawLoop lda WorldMap,x
|
||||||
|
sta Lo01,y
|
||||||
|
lda WorldMapWidth*1+WorldMap,x
|
||||||
|
sta Lo02,y
|
||||||
|
lda WorldMapWidth*2+WorldMap,x
|
||||||
|
sta Lo03,y
|
||||||
|
lda WorldMapWidth*3+WorldMap,x
|
||||||
|
sta Lo04,y
|
||||||
|
lda WorldMapWidth*4+WorldMap,x
|
||||||
|
sta Lo05,y
|
||||||
|
lda WorldMapWidth*5+WorldMap,x
|
||||||
|
sta Lo06,y
|
||||||
|
lda WorldMapWidth*6+WorldMap,x
|
||||||
|
sta Lo07,y
|
||||||
|
lda WorldMapWidth*7+WorldMap,x
|
||||||
|
sta Lo08,y
|
||||||
|
lda WorldMapWidth*8+WorldMap,x
|
||||||
|
sta Lo09,y
|
||||||
|
lda WorldMapWidth*9+WorldMap,x
|
||||||
|
sta Lo10,y
|
||||||
|
lda WorldMapWidth*10+WorldMap,x
|
||||||
|
sta Lo11,y
|
||||||
|
lda WorldMapWidth*11+WorldMap,x
|
||||||
|
sta Lo12,y
|
||||||
|
lda WorldMapWidth*12+WorldMap,x
|
||||||
|
sta Lo13,y
|
||||||
|
lda WorldMapWidth*13+WorldMap,x
|
||||||
|
sta Lo14,y
|
||||||
|
lda WorldMapWidth*14+WorldMap,x
|
||||||
|
sta Lo15,y
|
||||||
|
lda WorldMapWidth*15+WorldMap,x
|
||||||
|
sta Lo16,y
|
||||||
|
lda WorldMapWidth*16+WorldMap,x
|
||||||
|
sta Lo17,y
|
||||||
|
lda WorldMapWidth*17+WorldMap,x
|
||||||
|
sta Lo18,y
|
||||||
|
lda WorldMapWidth*18+WorldMap,x
|
||||||
|
sta Lo19,y
|
||||||
|
lda WorldMapWidth*19+WorldMap,x
|
||||||
|
sta Lo20,y
|
||||||
|
lda WorldMapWidth*20+WorldMap,x
|
||||||
|
sta Lo21,y
|
||||||
|
lda WorldMapWidth*21+WorldMap,x
|
||||||
|
sta Lo22,y
|
||||||
|
lda WorldMapWidth*22+WorldMap,x
|
||||||
|
sta Lo23,y
|
||||||
|
lda WorldMapWidth*23+WorldMap,x
|
||||||
|
sta Lo24,y
|
||||||
|
inx
|
||||||
|
iny
|
||||||
|
cpy #40
|
||||||
|
beq :done
|
||||||
|
jmp :drawLoop
|
||||||
|
:done rts
|
||||||
|
|
||||||
HandleStarScroll
|
HandleStarScroll
|
||||||
_defaultStarSpeed equ #$10
|
_defaultStarSpeed equ #$10
|
||||||
lda #$1e
|
lda #$1e
|
||||||
|
@ -121,7 +199,7 @@ _defaultStarSpeed equ #$10
|
||||||
inc
|
inc
|
||||||
inc
|
inc
|
||||||
inc
|
inc
|
||||||
cmp #7*4+#_defaultStarSpeed
|
cmp #6*4+#_defaultStarSpeed
|
||||||
bne :slowDown
|
bne :slowDown
|
||||||
lda #$50
|
lda #$50
|
||||||
jsr SimplerWait
|
jsr SimplerWait
|
||||||
|
@ -130,7 +208,7 @@ _defaultStarSpeed equ #$10
|
||||||
* speed up again
|
* speed up again
|
||||||
|
|
||||||
lda #$1e
|
lda #$1e
|
||||||
:speedUpAgain ldx #5
|
:speedUpAgain ldx #3
|
||||||
pha
|
pha
|
||||||
jsr StarScrollAuto
|
jsr StarScrollAuto
|
||||||
pla
|
pla
|
||||||
|
@ -138,7 +216,7 @@ _defaultStarSpeed equ #$10
|
||||||
cmp #_defaultStarSpeed
|
cmp #_defaultStarSpeed
|
||||||
bne :speedUpAgain ;)
|
bne :speedUpAgain ;)
|
||||||
|
|
||||||
ldx #50
|
ldx #80
|
||||||
lda #_defaultStarSpeed
|
lda #_defaultStarSpeed
|
||||||
jsr StarScrollAuto
|
jsr StarScrollAuto
|
||||||
|
|
||||||
|
@ -321,6 +399,11 @@ HandleLoResInit
|
||||||
jsr ClearLoRes
|
jsr ClearLoRes
|
||||||
inc GDemoState
|
inc GDemoState
|
||||||
jmp DemoMain
|
jmp DemoMain
|
||||||
|
HandleTextClear
|
||||||
|
sta TXTSET
|
||||||
|
jsr ClearText
|
||||||
|
inc GDemoState
|
||||||
|
jmp DemoMain
|
||||||
|
|
||||||
HandleFireRatio01
|
HandleFireRatio01
|
||||||
lda #$01
|
lda #$01
|
||||||
|
@ -596,7 +679,7 @@ KfestLogo
|
||||||
db $55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5
|
db $55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5,$55,$a5
|
||||||
db $aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5
|
db $aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5
|
||||||
db $aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5
|
db $aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5,$aa,$a5
|
||||||
HandleDigawrite
|
HandleScan
|
||||||
lda #40
|
lda #40
|
||||||
tax
|
tax
|
||||||
tay
|
tay
|
||||||
|
@ -604,29 +687,34 @@ HandleDigawrite
|
||||||
|
|
||||||
ldx #0
|
ldx #0
|
||||||
]writeLoop
|
]writeLoop
|
||||||
lda _digawriteString,x
|
lda _scanningString,x
|
||||||
beq ]writeDone
|
beq ]writeDone
|
||||||
sta Lo11+10,x
|
sta Lo11+10,x
|
||||||
inx
|
inx
|
||||||
phx
|
phx
|
||||||
lda #18
|
lda #18
|
||||||
tax
|
jsr SimplerWait
|
||||||
tay
|
|
||||||
jsr SimpleWait
|
|
||||||
plx
|
plx
|
||||||
bra ]writeLoop
|
bra ]writeLoop
|
||||||
]writeDone
|
]writeDone
|
||||||
lda #$30
|
lda #$30
|
||||||
tax
|
jsr SimplerWait
|
||||||
tay
|
|
||||||
jsr SimpleWait
|
|
||||||
|
|
||||||
inc GDemoState
|
inc GDemoState
|
||||||
jmp DemoMain
|
jmp DemoMain
|
||||||
_digawriteString asc "a DiGAROK presentation ...",00
|
_scanningString asc "Status: Scanning surface.",00
|
||||||
|
_digawriteString asc "an intro by DiGAROK ... ",00
|
||||||
|
|
||||||
HandleShortWait
|
HandleShortWait
|
||||||
lda #30
|
lda #$30
|
||||||
|
tax
|
||||||
|
tay
|
||||||
|
jsr SimpleWait
|
||||||
|
inc GDemoState
|
||||||
|
jmp DemoMain
|
||||||
|
|
||||||
|
HandleMedWait
|
||||||
|
lda #$50
|
||||||
tax
|
tax
|
||||||
tay
|
tay
|
||||||
jsr SimpleWait
|
jsr SimpleWait
|
||||||
|
@ -1231,6 +1319,35 @@ Average8
|
||||||
|
|
||||||
:doneLines rts
|
:doneLines rts
|
||||||
|
|
||||||
|
ClearText ldx #40
|
||||||
|
lda #" "
|
||||||
|
:loop dex
|
||||||
|
sta Lo01,x
|
||||||
|
sta Lo02,x
|
||||||
|
sta Lo03,x
|
||||||
|
sta Lo04,x
|
||||||
|
sta Lo05,x
|
||||||
|
sta Lo06,x
|
||||||
|
sta Lo07,x
|
||||||
|
sta Lo08,x
|
||||||
|
sta Lo09,x
|
||||||
|
sta Lo10,x
|
||||||
|
sta Lo11,x
|
||||||
|
sta Lo12,x
|
||||||
|
sta Lo13,x
|
||||||
|
sta Lo14,x
|
||||||
|
sta Lo15,x
|
||||||
|
sta Lo16,x
|
||||||
|
sta Lo17,x
|
||||||
|
sta Lo18,x
|
||||||
|
sta Lo19,x
|
||||||
|
sta Lo20,x
|
||||||
|
sta Lo21,x
|
||||||
|
sta Lo22,x
|
||||||
|
sta Lo23,x
|
||||||
|
sta Lo24,x
|
||||||
|
bne :loop
|
||||||
|
rts
|
||||||
|
|
||||||
ClearLoRes ldx #40
|
ClearLoRes ldx #40
|
||||||
:loop dex
|
:loop dex
|
||||||
|
|
Loading…
Reference in New Issue
Block a user