diff --git a/res/DEMO/GUMBALL b/res/DEMO/GUMBALL index 80f64d969..957ca3263 100755 Binary files a/res/DEMO/GUMBALL and b/res/DEMO/GUMBALL differ diff --git a/res/DEMO/GUMBALL.A b/res/DEMO/GUMBALL.A deleted file mode 100755 index 1f05cc489..000000000 Binary files a/res/DEMO/GUMBALL.A and /dev/null differ diff --git a/res/DEMO/GUMBALL.B b/res/DEMO/GUMBALL.B deleted file mode 100755 index 59d5424ab..000000000 Binary files a/res/DEMO/GUMBALL.B and /dev/null differ diff --git a/res/DEMO/GUMBALL.F b/res/DEMO/GUMBALL.F deleted file mode 100755 index 3d72d25da..000000000 Binary files a/res/DEMO/GUMBALL.F and /dev/null differ diff --git a/res/DEMO/GUMBALL.I b/res/DEMO/GUMBALL.I deleted file mode 100755 index ca03bedbd..000000000 Binary files a/res/DEMO/GUMBALL.I and /dev/null differ diff --git a/res/DEMO/GUMBALL.M b/res/DEMO/GUMBALL.M deleted file mode 100755 index 794cf0faa..000000000 Binary files a/res/DEMO/GUMBALL.M and /dev/null differ diff --git a/res/DEMO/JUNGLE.HUNT b/res/DEMO/JUNGLE.HUNT index b818b281c..4dc6cf523 100755 Binary files a/res/DEMO/JUNGLE.HUNT and b/res/DEMO/JUNGLE.HUNT differ diff --git a/res/DEMO/JUNGLE.HUNT.1 b/res/DEMO/JUNGLE.HUNT.1 deleted file mode 100755 index f3adc79a0..000000000 Binary files a/res/DEMO/JUNGLE.HUNT.1 and /dev/null differ diff --git a/res/DEMO/JUNGLE.HUNT.A b/res/DEMO/JUNGLE.HUNT.A deleted file mode 100755 index 16e5815dd..000000000 Binary files a/res/DEMO/JUNGLE.HUNT.A and /dev/null differ diff --git a/res/DEMO/JUNGLE.HUNT.C b/res/DEMO/JUNGLE.HUNT.C deleted file mode 100755 index 98dfdd495..000000000 Binary files a/res/DEMO/JUNGLE.HUNT.C and /dev/null differ diff --git a/res/DEMO/JUNGLE.HUNT.F b/res/DEMO/JUNGLE.HUNT.F deleted file mode 100755 index b7adc222d..000000000 Binary files a/res/DEMO/JUNGLE.HUNT.F and /dev/null differ diff --git a/res/DEMO/JUNGLE.HUNT.H b/res/DEMO/JUNGLE.HUNT.H deleted file mode 100755 index 8b61b1e87..000000000 Binary files a/res/DEMO/JUNGLE.HUNT.H and /dev/null differ diff --git a/res/DEMO/JUNGLE.HUNT.J b/res/DEMO/JUNGLE.HUNT.J deleted file mode 100755 index cfb7cedc5..000000000 Binary files a/res/DEMO/JUNGLE.HUNT.J and /dev/null differ diff --git a/res/DEMO/_FileInformation.txt b/res/DEMO/_FileInformation.txt index aa5343686..eea3839c1 100644 --- a/res/DEMO/_FileInformation.txt +++ b/res/DEMO/_FileInformation.txt @@ -59,21 +59,10 @@ GOONIES.D=Type(F1),AuxType(5A2D),Access(C3) GOONIES.E=Type(F1),AuxType(6219),Access(C3) GOONIES.F=Type(F1),AuxType(5D88),Access(C3) GOONIES.J=Type(F1),AuxType(0800),Access(C3) -GUMBALL=Type(06),AuxType(0300),Access(C3) -GUMBALL.A=Type(F1),AuxType(B000),Access(C3) -GUMBALL.B=Type(F1),AuxType(0800),Access(C3) -GUMBALL.F=Type(F1),AuxType(6000),Access(C3) -GUMBALL.I=Type(F1),AuxType(0800),Access(C3) -GUMBALL.M=Type(F1),AuxType(6000),Access(C3) +GUMBALL=Type(06),AuxType(0210),Access(C3) HARD.HAT.MACK=Type(06),AuxType(0200),Access(C3) HIGH.RISE=Type(06),AuxType(0300),Access(C3) -JUNGLE.HUNT=Type(06),AuxType(0300),Access(C3) -JUNGLE.HUNT.1=Type(F1),AuxType(0000),Access(C3) -JUNGLE.HUNT.A=Type(F1),AuxType(7700),Access(C3) -JUNGLE.HUNT.C=Type(F1),AuxType(7700),Access(C3) -JUNGLE.HUNT.F=Type(F1),AuxType(7700),Access(C3) -JUNGLE.HUNT.H=Type(F1),AuxType(7700),Access(C3) -JUNGLE.HUNT.J=Type(F1),AuxType(0000),Access(C3) +JUNGLE.HUNT=Type(06),AuxType(0210),Access(C3) KARATEKA=Type(06),AuxType(0300),Access(C3) KARATEKA.1=Type(F1),AuxType(0000),Access(C3) LABYRINTH=Type(06),AuxType(0310),Access(C3) diff --git a/src/demo/gumball.a b/src/demo/gumball.a new file mode 100644 index 000000000..8e9bf7618 --- /dev/null +++ b/src/demo/gumball.a @@ -0,0 +1,91 @@ +;license:MIT +;(c) 2021 by Frank M. + +!cpu 6502 +!to "res/DEMO/GUMBALL",plain +*=$210 + + !source "src/constants.a" ; no code in these + !source "src/macros.a" + + +READ_RAM2_WRITE_RAM2 + jsr EnableAccelerator + +;+LOAD_FILE_KEEP_DIR + ldx #0 ; read to main memory + stx ldrhi + stx ldrlo + +LDADDR title + jsr iLoadFileDirect + + ldx #10-1 ; we also need to copy the length byte +- lda newpath,x + sta $BFD0,x + dex + bpl - + + lda #$60 + sta $851 + jsr $800 ; load "DOS" + lda #$20 + sta $B21E + lda #callback1 + sta $B220 + +DISABLE_ACCEL + jmp $B2F1 ; stage 1 (title screen and credits) + +callback1 + lda #$4C + sta $0DFB + lda #0 + sta $0DFB+1 + lda #1 + sta $0DFB+2 ; exit on button press or keypress + + lda #callback2 + sta $0FD0+2 ; continue to demo stage 2 after end of demo stage 1 + + lda $5F + asl + bne + + dec $E09 ++ rts + +callback2 + lda #$4C + sta $B22B + lda #callback3 + sta $B22B+2 + + jmp $E02 + +callback3 + lda #$4C + sta $0DF6 + sta $12F6 + lda #0 + sta $0DF6+1 + sta $12F6+1 + lda #1 + sta $0DF6+2 + sta $12F6+2 ; stage 2 (demo play) - set exits + + jmp $31F9 + +newpath + !byte 9 + !text "X/GUMBALL" + +title !byte x_e-x_b +x_b !text "X/GUMBALL/GUMBALL" +x_e + +!if * > $300 { + !error "code is too large, ends at ", * +} diff --git a/src/demo/jungle.hunt.a b/src/demo/jungle.hunt.a new file mode 100644 index 000000000..83067f3ca --- /dev/null +++ b/src/demo/jungle.hunt.a @@ -0,0 +1,78 @@ +;license:MIT +;(c) 2021 by Frank M. + +!cpu 6502 +!to "res/DEMO/JUNGLE.HUNT",plain +*=$210 + + !source "src/constants.a" ; no code in these + !source "src/macros.a" + + +READ_RAM2_WRITE_RAM2 + jsr EnableAccelerator + +;+LOAD_FILE_KEEP_DIR + ldx #0 ; read to main memory + stx ldrhi + stx ldrlo + +LDADDR title + jsr iLoadFileDirect + + ldx #14-1 ; we also need to copy the length byte +- lda newpath,x + sta $BFD0,x + dex + bpl - + + lda #$60 + sta $81E + jsr $800 + + lda #$60 + sta $BD44 + jsr $BD00 + + lda #1 + sta $0A6C + lda #0 + sta $0A67 ; reset vector patch + + lda #$60 + sta $1501 ; reduce wait times while not playing sounds + + lda #$4C + sta $676C + sta $0BD6 + sta $6553 + sta $0C28 + lda #0 + sta $676C+1 + sta $0BD6+1 + sta $6553+1 + sta $0C28+1 + lda #1 + sta $676C+2 + sta $0BD6+2 + sta $6553+2 + sta $0C28+2 ; set exits + + lda #$D0 + sta $14A0 + sta $14BA + sta $1425 ; disable sound + + +DISABLE_ACCEL + + jmp $A00 + +newpath + !byte 13 + !text "X/JUNGLE.HUNT" + +title !byte x_e-x_b +x_b !text "X/JUNGLE.HUNT/JUNGLE.HUNT" +x_e + +!if * > $300 { + !error "code is too large, ends at ", * +}