mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-01-26 01:31:07 +00:00
chiptune: add arrows and re-center time display
This commit is contained in:
parent
3cfb0ecf06
commit
3afa7d2ee5
@ -5,7 +5,8 @@ PNG2GR = ../gr-utils/png2gr
|
||||
|
||||
all: chiptune_player.dsk
|
||||
|
||||
chiptune_player.dsk: CHIPTUNE_PLAYER OUT.0
|
||||
chiptune_player.dsk: CHIPTUNE_PLAYER ./krw/INTRO2.KRW
|
||||
cp chiptune_empty.dsk chiptune_player.dsk
|
||||
$(DOS33) -y chiptune_player.dsk BSAVE -a 0x0C00 CHIPTUNE_PLAYER
|
||||
$(DOS33) -y chiptune_player.dsk SAVE B ./krw/INTRO2.KRW
|
||||
$(DOS33) -y chiptune_player.dsk SAVE B ./krw/CRMOROS.KRW
|
||||
|
BIN
chiptune_player/chiptune_empty.dsk
Normal file
BIN
chiptune_player/chiptune_empty.dsk
Normal file
Binary file not shown.
@ -321,6 +321,28 @@ read_size EQU $4000
|
||||
lda #23 ; VTAB 23: HTAB from file
|
||||
jsr print_header_info
|
||||
|
||||
; Print Left Arrow (INVERSE)
|
||||
lda #'<'
|
||||
sta $750
|
||||
sta $B50
|
||||
|
||||
lda #'-'
|
||||
sta $751
|
||||
sta $B51
|
||||
|
||||
; Print Rright Arrow (INVERSE)
|
||||
lda #'-'
|
||||
sta $776
|
||||
sta $B76
|
||||
|
||||
lda #'>'
|
||||
sta $777
|
||||
sta $B77
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
; Point LZ4 src at proper place
|
||||
|
||||
ldy #0
|
||||
|
@ -10,6 +10,8 @@
|
||||
; It then calculates if it is a BRK or not (which trashes A)
|
||||
; Then it sets up the stack like an interrupt and calls 0x3fe
|
||||
|
||||
TIME_OFFSET EQU 13
|
||||
|
||||
interrupt_handler:
|
||||
pha ; save A ; 3
|
||||
; Should we save X and Y too?
|
||||
@ -36,26 +38,26 @@ update_time:
|
||||
sta FRAME_COUNT ; 3
|
||||
|
||||
update_second_ones:
|
||||
inc $7d0+17 ; 6
|
||||
inc $bd0+17 ; 6
|
||||
lda $bd0+17 ; 4
|
||||
inc $7d0+TIME_OFFSET+3 ; 6
|
||||
inc $bd0+TIME_OFFSET+3 ; 6
|
||||
lda $bd0+TIME_OFFSET+3 ; 4
|
||||
cmp #$ba ; one past '9' ; 2
|
||||
bne mb_write_frame ; 3/2nt
|
||||
lda #'0'+$80 ; 2
|
||||
sta $7d0+17 ; 4
|
||||
sta $bd0+17 ; 4
|
||||
sta $7d0+TIME_OFFSET+3 ; 4
|
||||
sta $bd0+TIME_OFFSET+3 ; 4
|
||||
update_second_tens:
|
||||
inc $7d0+16 ; 6
|
||||
inc $bd0+16 ; 6
|
||||
lda $bd0+16 ; 4
|
||||
inc $7d0+TIME_OFFSET+2 ; 6
|
||||
inc $bd0+TIME_OFFSET+2 ; 6
|
||||
lda $bd0+TIME_OFFSET+2 ; 4
|
||||
cmp #$b6 ; 6 (for 60 seconds) ; 2
|
||||
bne mb_write_frame ; 3/2nt
|
||||
lda #'0'+$80 ; 2
|
||||
sta $7d0+16 ; 4
|
||||
sta $bd0+16 ; 4
|
||||
sta $7d0+TIME_OFFSET+2 ; 4
|
||||
sta $bd0+TIME_OFFSET+2 ; 4
|
||||
update_minutes:
|
||||
inc $7d0+14 ; 6
|
||||
inc $bd0+14 ; 6
|
||||
inc $7d0+TIME_OFFSET ; 6
|
||||
inc $bd0+TIME_OFFSET ; 6
|
||||
; we don't handle > 9:59 songs yet
|
||||
|
||||
;=============
|
||||
|
Loading…
x
Reference in New Issue
Block a user