mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-13 22:30:49 +00:00
chiptune_player: split off bigchunk setup
This commit is contained in:
parent
6f13857beb
commit
8d46476a53
@ -123,6 +123,13 @@ mockingboard_found:
|
|||||||
|
|
||||||
jsr new_song
|
jsr new_song
|
||||||
|
|
||||||
|
|
||||||
|
lda #<CHUNK_BUFFER ; set input pointer
|
||||||
|
sta INL
|
||||||
|
lda #>CHUNK_BUFFER
|
||||||
|
sta INH
|
||||||
|
|
||||||
|
|
||||||
;============================
|
;============================
|
||||||
; Enable 6502 interrupts
|
; Enable 6502 interrupts
|
||||||
;============================
|
;============================
|
||||||
@ -447,13 +454,27 @@ bloop3:
|
|||||||
adc #0
|
adc #0
|
||||||
sta LZ4_SRC+1
|
sta LZ4_SRC+1
|
||||||
|
|
||||||
lda (LZ4_SRC),Y
|
jsr next_subsong
|
||||||
|
|
||||||
|
; should tail call
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
||||||
|
|
||||||
|
;=================
|
||||||
|
; next sub-song
|
||||||
|
;=================
|
||||||
|
next_subsong:
|
||||||
|
|
||||||
|
ldy #0
|
||||||
|
|
||||||
|
lda (LZ4_SRC),Y ; get next size value
|
||||||
sta LZ4_END
|
sta LZ4_END
|
||||||
iny
|
iny
|
||||||
lda (LZ4_SRC),Y
|
lda (LZ4_SRC),Y
|
||||||
sta LZ4_END+1
|
sta LZ4_END+1
|
||||||
|
|
||||||
lda #2
|
lda #2 ; increment pointer
|
||||||
clc
|
clc
|
||||||
adc LZ4_SRC
|
adc LZ4_SRC
|
||||||
sta LZ4_SRC
|
sta LZ4_SRC
|
||||||
@ -461,12 +482,7 @@ bloop3:
|
|||||||
adc #0
|
adc #0
|
||||||
sta LZ4_SRC+1
|
sta LZ4_SRC+1
|
||||||
|
|
||||||
jsr lz4_decode
|
jsr lz4_decode ; decode
|
||||||
|
|
||||||
lda #<CHUNK_BUFFER
|
|
||||||
sta INL
|
|
||||||
lda #>CHUNK_BUFFER
|
|
||||||
sta INH
|
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user