diff --git a/res/DEMO/BU b/res/DEMO/BU index 2e420e07d..5479cd9be 100755 Binary files a/res/DEMO/BU and b/res/DEMO/BU differ diff --git a/res/DEMO/BURGERTIME.1 b/res/DEMO/BURGERTIME.1 deleted file mode 100755 index 7d8377432..000000000 Binary files a/res/DEMO/BURGERTIME.1 and /dev/null differ diff --git a/res/DEMO/BURGERTIME.2 b/res/DEMO/BURGERTIME.2 deleted file mode 100755 index 6677ce63a..000000000 Binary files a/res/DEMO/BURGERTIME.2 and /dev/null differ diff --git a/res/DEMO/BURGERTIME.3 b/res/DEMO/BURGERTIME.3 deleted file mode 100755 index dd66f74d3..000000000 Binary files a/res/DEMO/BURGERTIME.3 and /dev/null differ diff --git a/res/DEMO/BURGERTIME.4 b/res/DEMO/BURGERTIME.4 deleted file mode 100755 index f4eba9868..000000000 Binary files a/res/DEMO/BURGERTIME.4 and /dev/null differ diff --git a/res/DEMO/BURGERTIME.5 b/res/DEMO/BURGERTIME.5 deleted file mode 100755 index 63d9f60d3..000000000 Binary files a/res/DEMO/BURGERTIME.5 and /dev/null differ diff --git a/res/DEMO/DUNG.BEETLES b/res/DEMO/DUNG.BEETLES index 755234966..8a369694d 100755 Binary files a/res/DEMO/DUNG.BEETLES and b/res/DEMO/DUNG.BEETLES differ diff --git a/res/DEMO/DUNG.BEETLES.1 b/res/DEMO/DUNG.BEETLES.1 deleted file mode 100755 index 8850f614b..000000000 Binary files a/res/DEMO/DUNG.BEETLES.1 and /dev/null differ diff --git a/res/DEMO/HIGH.RISE b/res/DEMO/HIGH.RISE index 48651510a..c942016b4 100755 Binary files a/res/DEMO/HIGH.RISE and b/res/DEMO/HIGH.RISE differ diff --git a/res/DEMO/VINDICATOR b/res/DEMO/VINDICATOR index ed019ecaa..0f3db4cd2 100755 Binary files a/res/DEMO/VINDICATOR and b/res/DEMO/VINDICATOR differ diff --git a/res/DEMO/VINDICATOR.1 b/res/DEMO/VINDICATOR.1 deleted file mode 100755 index 7e0b6376f..000000000 Binary files a/res/DEMO/VINDICATOR.1 and /dev/null differ diff --git a/res/DEMO/_FileInformation.txt b/res/DEMO/_FileInformation.txt index 4e64a94b6..cd7d0dceb 100644 --- a/res/DEMO/_FileInformation.txt +++ b/res/DEMO/_FileInformation.txt @@ -15,12 +15,7 @@ BELLHOP=Type(06),AuxType(3FFD),Access(C3) BB=Type(06),AuxType(0300),Access(C3) BOLO=Type(06),AuxType(0300),Access(C3) BK=Type(06),AuxType(0300),Access(C3) -BU=Type(06),AuxType(3E97),Access(C3) -BURGERTIME.1=Type(F1),AuxType(A402),Access(C3) -BURGERTIME.2=Type(F1),AuxType(6400),Access(C3) -BURGERTIME.3=Type(F1),AuxType(2000),Access(C3) -BURGERTIME.4=Type(F1),AuxType(0C00),Access(C3) -BURGERTIME.5=Type(F1),AuxType(6000),Access(C3) +BU=Type(06),AuxType(0300),Access(C3) BUZZARD.BAIT=Type(06),AuxType(0300),Access(C3) CB=Type(06),AuxType(3000),Access(C3) CANNONBALL.BL.1=Type(F1),AuxType(0000),Access(C3) @@ -45,7 +40,6 @@ DIG.DUG=Type(06),AuxType(0300),Access(C3) DINO.EGGS=Type(06),AuxType(0300),Access(C3) DINO.EGGS.1=Type(F1),AuxType(0000),Access(C3) DUNG.BEETLES=Type(06),AuxType(0300),Access(C3) -DUNG.BEETLES.1=Type(F1),AuxType(0000),Access(C3) FALCONS=Type(06),AuxType(B000),Access(C3) FIREBIRD=Type(06),AuxType(0300),Access(C3) FIREBIRD.1=Type(F1),AuxType(0000),Access(C3) @@ -74,7 +68,7 @@ GUMBALL.F=Type(F1),AuxType(6000),Access(C3) GUMBALL.I=Type(F1),AuxType(0800),Access(C3) GUMBALL.M=Type(F1),AuxType(6000),Access(C3) HARD.HAT.MACK=Type(06),AuxType(0200),Access(C3) -HIGH.RISE=Type(06),AuxType(3FCB),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) @@ -164,4 +158,3 @@ WARP.DESTROYER=Type(06),AuxType(0300),Access(C3) WARP.DESTROY.1=Type(F1),AuxType(0000),Access(C3) WAVY.NAVY=Type(06),AuxType(0300),Access(C3) VINDICATOR=Type(06),AuxType(0300),Access(C3) -VINDICATOR.1=Type(F1),AuxType(0000),Access(C3) diff --git a/src/demo/burgertime.a b/src/demo/burgertime.a new file mode 100644 index 000000000..b598e2fb1 --- /dev/null +++ b/src/demo/burgertime.a @@ -0,0 +1,88 @@ +;license:MIT +;(c) 2021 by Frank M. + +!cpu 6502 +!to "res/DEMO/BU",plain +*=$300 + + !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 #5-1 ; we also need to copy the length byte +- lda newpath,x + sta $BFD0,x + dex + bpl - + + lda #$60 + sta $3ec9 + sta $3f09 + jsr $3e97 ; decompress + + jsr DisableAccelerator + +READ_ROM_NO_WRITE + + lda #$4C + sta $653F + lda #$8D + sta $653F+1 + lda #$65 + sta $653F+2 ; skip joystick/keyboard selection + + lda #$b1 + sta $646b + jsr $6400 + + +ENABLE_ACCEL + + jsr $811 + + lda #0 + sta $A30A + lda #1 + sta $A30F ; reset vector patch + + lda #$4C + sta $9FD3 + sta $9FCF + sta $A497 ; set exits + + lda #0 + sta $9FD3+1 + sta $9FCF+1 + sta $A497+1 + sta $A15B + sta $A16A + sta $A17B + sta $A1D0 ; disable sound + + lda #1 + sta $9FD3+2 + sta $9FCF+2 + sta $A497+2 + + +DISABLE_ACCEL + + jmp $a300 + +newpath + !byte 4 + !text "X/BU" + +title !byte x_e-x_b +x_b !text "X/BU/BU" +x_e + +!if * > $3F0 { + !error "code is too large, ends at ", * +} diff --git a/src/demo/dung.beetles.a b/src/demo/dung.beetles.a new file mode 100644 index 000000000..23d02cf5f --- /dev/null +++ b/src/demo/dung.beetles.a @@ -0,0 +1,66 @@ +;license:MIT +;(c) 2021 by Frank M. + +!cpu 6502 +!to "res/DEMO/DUNG.BEETLES",plain +*=$300 + + !source "src/constants.a" ; no code in these + !source "src/macros.a" + + +READ_RAM2_WRITE_RAM2 + jsr EnableAccelerator + +LOAD_FILE_AT title, $00 + + lda #$60 + sta $603A + jsr $6000 ; decompress + + lda #1 + sta $083E ; reset vector patch + lda #$4C + sta $847 + lda #0 + sta $848 + lda #$96 ; patch $847 - JMP ($3F2) + sta $849 ; to JMP $9600 + + lda #$60 + sta $847 + jsr $800 ; memory move + + ldx #6-1 +- lda patch, x + sta $9B93, x + dex + bpl - ; disable button support on title screen + + lda #$4C + sta $9B7D + sta $97D5 + lda #0 + sta $9B7D+1 + sta $97D5+1 + lda #1 + sta $9B7D+2 + sta $97D5+2 ; set exits + + lda #$D0 + sta $1C17 + sta $12CE + sta $9B4D + sta $9B56 ; disable sound + + +DISABLE_ACCEL + + jmp $9600 + +patch !byte $A9,$01,$EA,$EA,$EA,$EA + +title !byte x_e-x_b +x_b !text "X/DUNG.BEETLES/DUNG.BEETLES" +x_e + +!if * > $3F0 { + !error "code is too large, ends at ", * +} diff --git a/src/demo/high.rise.a b/src/demo/high.rise.a new file mode 100644 index 000000000..238bd903c --- /dev/null +++ b/src/demo/high.rise.a @@ -0,0 +1,44 @@ +;license:MIT +;(c) 2021 by Frank M. + +!cpu 6502 +!to "res/DEMO/HIGH.RISE",plain +*=$300 + + !source "src/constants.a" ; no code in these + !source "src/macros.a" + + +READ_RAM2_WRITE_RAM2 + jsr EnableAccelerator + +LOAD_FILE_AT title, $00 + + lda #$60 + sta $0836 + jsr $0800 ; decompress + + lda #$2C + sta $44AA + sta $44AD + sta $44B0 ; reset vector fix + + lda #$4C + sta $455D + sta $4695 + lda #0 + sta $455D+1 + sta $4695+1 + lda #1 + sta $455D+2 + sta $4695+2 ; set exits + + +DISABLE_ACCEL + + jmp $449A + +title !byte x_e-x_b +x_b !text "X/HIGH.RISE/HIGH.RISE" +x_e + +!if * > $3F0 { + !error "code is too large, ends at ", * +} diff --git a/src/demo/vindicator.a b/src/demo/vindicator.a new file mode 100644 index 000000000..9d7026391 --- /dev/null +++ b/src/demo/vindicator.a @@ -0,0 +1,70 @@ +;license:MIT +;(c) 2021 by Frank M. + +!cpu 6502 +!to "res/DEMO/VINDICATOR",plain +*=$300 + + !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 #13-1 ; we also need to copy the length byte +- lda newpath,x + sta $BFD0,x + dex + bpl - + + lda #$60 + sta $1867 + jsr $180F ; decompress + + +NEW_RESET_VECTOR $BFF0 + lda #$F0 + sta $4001 + lda #$BF + sta $400F ; reset vector fix + + lda #$60 ; annunciator fix - kills Gizmo/joyport support + sta $5B77 ; but fixes ][+ 80-col softswitch + sta $5B43 ; and //c+ coloring + + lda #$4C + sta $56D9 + sta $4902 + lda #0 + sta $56D9+1 + sta $4902+1 + lda #1 + sta $56D9+2 + sta $4902+2 ; set exits + + lda #$D0 + sta $441F + sta $5E25 + sta $5DDC ; disable sound + + +DISABLE_ACCEL + + jmp $4000 + +newpath + !byte 12 + !text "X/VINDICATOR" + +title !byte x_e-x_b +x_b !text "X/VINDICATOR/VINDICATOR" +x_e + +!if * > $3F0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/high.rise.a b/src/prelaunch/high.rise.a new file mode 100644 index 000000000..44e3cf9a3 --- /dev/null +++ b/src/prelaunch/high.rise.a @@ -0,0 +1,27 @@ +;license:MIT +;(c) 2021 by Frank M. + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/HIGH.RISE",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + + lda #$60 + sta $0836 + jsr $0800 ; decompress + + lda #$2C + sta $44AA + sta $44AD + sta $44B0 ; reset vector fix + + +DISABLE_ACCEL + + jmp $449A + +!if * > $1C0 { + !error "code is too large, ends at ", * +}