mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-26 00:29:29 +00:00
chiptune_player: fix interrupt handler on older Apple II
This commit is contained in:
parent
42e4f41997
commit
5d41cc0a0d
|
@ -8,8 +8,9 @@ all: chiptune_player.dsk chiptune_unrolled.dsk
|
||||||
$(DOS33):
|
$(DOS33):
|
||||||
cd ../dos33fs-utils && make
|
cd ../dos33fs-utils && make
|
||||||
|
|
||||||
chiptune_player.dsk: CHIPTUNE_PLAYER ./krw/INTRO2.KRW
|
chiptune_player.dsk: CHIPTUNE_PLAYER ./krw/INTRO2.KRW HELLO
|
||||||
cp chiptune_empty.dsk chiptune_player.dsk
|
cp chiptune_empty.dsk chiptune_player.dsk
|
||||||
|
$(DOS33) -y chiptune_player.dsk SAVE A HELLO
|
||||||
$(DOS33) -y chiptune_player.dsk BSAVE -a 0x0C00 CHIPTUNE_PLAYER
|
$(DOS33) -y chiptune_player.dsk BSAVE -a 0x0C00 CHIPTUNE_PLAYER
|
||||||
$(DOS33) -y chiptune_player.dsk SAVE B ./krw/CAMOUFLAGE.KRW
|
$(DOS33) -y chiptune_player.dsk SAVE B ./krw/CAMOUFLAGE.KRW
|
||||||
$(DOS33) -y chiptune_player.dsk SAVE B ./krw/CHRISTMAS.KRW
|
$(DOS33) -y chiptune_player.dsk SAVE B ./krw/CHRISTMAS.KRW
|
||||||
|
@ -53,6 +54,8 @@ chiptune_unrolled.dsk: CHIPTUNE_UNROLLED ./krw/INTRO2.KRW
|
||||||
$(DOS33) -y chiptune_unrolled.dsk SAVE B ./krw/UNIVERSE.KRW
|
$(DOS33) -y chiptune_unrolled.dsk SAVE B ./krw/UNIVERSE.KRW
|
||||||
$(DOS33) -y chiptune_unrolled.dsk SAVE B ./krw/WAVE.KRW
|
$(DOS33) -y chiptune_unrolled.dsk SAVE B ./krw/WAVE.KRW
|
||||||
|
|
||||||
|
HELLO: hello.bas
|
||||||
|
../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO
|
||||||
|
|
||||||
CHIPTUNE_PLAYER: chiptune_player.o
|
CHIPTUNE_PLAYER: chiptune_player.o
|
||||||
ld65 -o CHIPTUNE_PLAYER chiptune_player.o -C ../linker_scripts/apple2_c00.inc
|
ld65 -o CHIPTUNE_PLAYER chiptune_player.o -C ../linker_scripts/apple2_c00.inc
|
||||||
|
|
Binary file not shown.
4
chiptune_player/hello.bas
Normal file
4
chiptune_player/hello.bas
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
5 PRINT
|
||||||
|
10 PRINT "LOADING VMW CHIPTUNE PLAYER V1.2"
|
||||||
|
50 PRINT
|
||||||
|
100 PRINT CHR$ (4)"BRUN CHIPTUNE_PLAYER"
|
|
@ -13,8 +13,14 @@
|
||||||
TIME_OFFSET EQU 13
|
TIME_OFFSET EQU 13
|
||||||
|
|
||||||
interrupt_handler:
|
interrupt_handler:
|
||||||
pha ; save A ; 3
|
; pha ; save A ; 3
|
||||||
; Should we save X and Y too?
|
; A is saved in $45 by firmware
|
||||||
|
txa
|
||||||
|
pha ; save X
|
||||||
|
tya
|
||||||
|
pha ; save Y
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; inc $0404 ; debug (flashes char onscreen)
|
; inc $0404 ; debug (flashes char onscreen)
|
||||||
|
|
||||||
|
@ -350,7 +356,14 @@ mb_clear_reg:
|
||||||
|
|
||||||
exit_interrupt:
|
exit_interrupt:
|
||||||
|
|
||||||
pla ; restore a ; 4
|
; pla ; restore a ; 4
|
||||||
|
|
||||||
|
pla
|
||||||
|
tay ; restore Y
|
||||||
|
pla
|
||||||
|
tax ; restore X
|
||||||
|
lda $45 ; restore A
|
||||||
|
|
||||||
|
|
||||||
rti ; return from interrupt ; 6
|
rti ; return from interrupt ; 6
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user