duet: update samples

also make duet.s relocatable
This commit is contained in:
Vince Weaver 2018-05-31 11:04:33 -04:00
parent bbf5f90a2a
commit e926b394d8
4 changed files with 32 additions and 7 deletions

View File

@ -8,14 +8,14 @@ $(DOS33):
cd ../dos33fs-utils && make
eduet.dsk: $(DOS33) ED HIGHWIND.ED FIGHTING.ED SA.ED KERBAL.ED
$(DOS33) -y eduet.dsk BSAVE -a 0x900 ED
$(DOS33) -y eduet.dsk BSAVE -a 0x0C00 ED
$(DOS33) -y eduet.dsk BSAVE -a 0x2000 HIGHWIND.ED
$(DOS33) -y eduet.dsk BSAVE -a 0x2000 FIGHTING.ED
$(DOS33) -y eduet.dsk BSAVE -a 0x2000 SA.ED
$(DOS33) -y eduet.dsk BSAVE -a 0x2000 KERBAL.ED
ED: duet.o
ld65 -o ED duet.o -C ../linker_scripts/apple2_900.inc
ld65 -o ED duet.o -C ../linker_scripts/apple2_c00.inc
duet.o: duet.s
ca65 -o duet.o duet.s -l duet.lst

View File

@ -33,6 +33,8 @@ MADDRH EQU $1F
LOC4E EQU $4E
LOC4F EQU $4F
STARTADDR EQU $0900
play_ed:
LDA #$01 ; 900: A9 01 ; 2 *!*
STA LOC9 ; 902: 85 09 ; 3
@ -77,23 +79,23 @@ label4:
play_note:
STA DURATION ; 937: 85 08 ; 3
JSR sub1 ; 939: 20 2D09 ; 6
STX $0983 ; 93C: 8E 8309 ; 4 self-modify EOR/CMP
STX STARTADDR+$83 ; 93C: 8E 8309 ; 4 self-modify EOR/CMP
STA LOC6 ; 93F: 85 06 ; 3
LDX LOC9 ; 941: A6 09 ; 3 *!*
label5:
LSR A ; 943: 4A ; 2
DEX ; 944: CA ; 2
BNE label5 ; 945: D0 FC ; 4 *!*
STA $097C ; 947: 8D 7C09 ; 4 ; self-modify
STA STARTADDR+$7C ; 947: 8D 7C09 ; 4 ; self-modify
JSR sub1 ; 94A: 20 2D09 ; 6
STX $09BB ; 94D: 8E BB09 ; 4 ; self-modify
STX STARTADDR+$BB ; 94D: 8E BB09 ; 4 ; self-modify
STA LOC7 ; 950: 85 07 ; 3
LDX LOC1D ; 952: A6 1D ; 3 *!*
label6:
LSR A ; 954: 4A ; 2
DEX ; 955: CA ; 2
BNE label6 ; 956: D0 FC ; 4 *!*
STA $09B4 ; 958: 8D B409 ; 4 ; self-modify
STA STARTADDR+$B4 ; 958: 8D B409 ; 4 ; self-modify
PLA ; 95B: 68 ; 4
TAY ; 95C: A8 ; 2
PLA ; 95D: 68 ; 4
@ -111,7 +113,7 @@ label7:
BIT $C030 ; 96C: 2C 30C0 ; 4 SPEAKER
label9:
STA LOC4E ; 96F: 85 4E ; 3
BIT $C000 ; 971: 2C 00C0 ; 4
BIT $C000 ; 971: 2C 00C0 ; 4 KEYBOARD DATA
BMI label4 ; 974: 30 C0 ; 4 *!*
DEY ; 976: 88 ; 2
BNE label10 ; 977: D0 02 ; 4 *!*

Binary file not shown.

23
electric_duet/hello.bas Normal file
View File

@ -0,0 +1,23 @@
2 HOME
5 PRINT
10 PRINT "ELECTRIC DUET DEMOS"
20 PRINT
30 PRINT "1. STILL ALIVE"
35 PRINT "2. FF7 FIGHTING"
40 PRINT "3. FF7 HIGHWIND"
45 PRINT "4. KERBAL THEME"
100 PRINT CHR$ (4)"BLOAD ED"
120 PRINT "-----> ";: INPUT A
130 IF A < 0 OR A > 4 THEN GOTO 120
140 ON A GOTO 200,210,220,230
200 PRINT CHR$ (4)"BLOAD SA.ED,A$2000"
205 GOTO 1000
210 PRINT CHR$ (4)"BLOAD FIGHTING.ED,A$2000"
215 GOTO 1000
220 PRINT CHR$ (4)"BLOAD HIGHWIND.ED,A$2000"
225 GOTO 1000
230 PRINT CHR$ (4)"BLOAD KERBAL.ED,A$2000"
235 GOTO 1000
1000 POKE 30,0: POKE 31,32
1010 CALL 256*12
1020 GOTO 2