some more demo launchers (#415)

* Add files via upload

* Delete PIEMAN.HI

* Delete PIEMAN.1

* Delete LABYRINTH.1

* Delete WARP.DESTROY.1

* Add files via upload

* Add files via upload
This commit is contained in:
frankmilliron 2021-10-31 20:22:14 -07:00 committed by GitHub
parent 418d828b04
commit 608c2382e5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 237 additions and 7 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -80,8 +80,7 @@ KARATEKA=Type(06),AuxType(0300),Access(C3)
KARATEKA.1=Type(F1),AuxType(0000),Access(C3) KARATEKA.1=Type(F1),AuxType(0000),Access(C3)
KAMUNGAS.1=Type(F1),AuxType(0000),Access(C3) KAMUNGAS.1=Type(F1),AuxType(0000),Access(C3)
KAMUNGAS.HI=Type(F1),AuxType(0000),Access(C3) KAMUNGAS.HI=Type(F1),AuxType(0000),Access(C3)
LABYRINTH=Type(06),AuxType(0300),Access(C3) LABYRINTH=Type(06),AuxType(0310),Access(C3)
LABYRINTH.1=Type(F1),AuxType(0000),Access(C3)
LADY.TUT=Type(06),AuxType(0300),Access(C3) LADY.TUT=Type(06),AuxType(0300),Access(C3)
LADY.TUT.1=Type(F1),AuxType(0000),Access(C3) LADY.TUT.1=Type(F1),AuxType(0000),Access(C3)
LASER.BOUNCE=Type(06),AuxType(0300),Access(C3) LASER.BOUNCE=Type(06),AuxType(0300),Access(C3)
@ -101,9 +100,7 @@ NIBBLER=Type(06),AuxType(0300),Access(C3)
OM=Type(06),AuxType(08FD),Access(C3) OM=Type(06),AuxType(08FD),Access(C3)
PACMAN=Type(06),AuxType(0300),Access(C3) PACMAN=Type(06),AuxType(0300),Access(C3)
PEST.PATROL=Type(06),AuxType(0300),Access(C3) PEST.PATROL=Type(06),AuxType(0300),Access(C3)
PM=Type(06),AuxType(0300),Access(C3) PM=Type(06),AuxType(0210),Access(C3)
PIEMAN.1=Type(F1),AuxType(0000),Access(C3)
PIEMAN.HI=Type(F1),AuxType(0000),Access(C3)
PITFALL.II=Type(06),AuxType(0300),Access(C3) PITFALL.II=Type(06),AuxType(0300),Access(C3)
PLASMANIA=Type(06),AuxType(0200),Access(C3) PLASMANIA=Type(06),AuxType(0200),Access(C3)
PHASER.FIRE=Type(06),AuxType(9200),Access(C3) PHASER.FIRE=Type(06),AuxType(9200),Access(C3)
@ -154,7 +151,6 @@ THUNDERBOMBS=Type(06),AuxType(2000),Access(C3)
THUNDER.1=Type(F1),AuxType(0000),Access(C3) THUNDER.1=Type(F1),AuxType(0000),Access(C3)
TB=Type(06),AuxType(0300),Access(C3) TB=Type(06),AuxType(0300),Access(C3)
TUNNEL.TERROR=Type(06),AuxType(BD00),Access(C3) TUNNEL.TERROR=Type(06),AuxType(BD00),Access(C3)
WARP.DESTROYER=Type(06),AuxType(0300),Access(C3) WARP.DESTROYER=Type(06),AuxType(0320),Access(C3)
WARP.DESTROY.1=Type(F1),AuxType(0000),Access(C3)
WAVY.NAVY=Type(06),AuxType(0300),Access(C3) WAVY.NAVY=Type(06),AuxType(0300),Access(C3)
VINDICATOR=Type(06),AuxType(0300),Access(C3) VINDICATOR=Type(06),AuxType(0300),Access(C3)

73
src/demo/labyrinth.a Normal file
View File

@ -0,0 +1,73 @@
;license:MIT
;(c) 2021 by Frank M.
!cpu 6502
!to "res/DEMO/LABYRINTH",plain
*=$310
!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
+READ_ROM_NO_WRITE
ldx #12-1 ; we also need to copy the length byte
- lda newpath,x
sta $BFD0,x
dex
bpl -
lda #$60
sta $3874
jsr $37F6 ; decompress
lda #$D0
sta $1072
sta $107A ; disable sound
lda #$60
sta $BC41
+DISABLE_ACCEL
jsr $BC00 ; show title animation
lda #$EA
sta $1F00
lda #$A9
sta $1F00+1
lda #$00
sta $1F00+2 ; disable joystick button detection
lda #$4C
sta $1E66
sta $1EE9
sta $8CAA
lda #0
sta $1E66+1
sta $1EE9+1
sta $8CAA+1
lda #1
sta $1E66+2
sta $1EE9+2
sta $8CAA+2 ; set exits
jmp $1E3E
newpath
!byte 11
!text "X/LABYRINTH"
title !byte x_e-x_b
x_b !text "X/LABYRINTH/LABYRINTH"
x_e
!if * > $BFD0 {
!error "code is too large, ends at ", *
}

71
src/demo/pieman.a Normal file
View File

@ -0,0 +1,71 @@
;license:MIT
;(c) 2021 by Frank M.
!cpu 6502
!to "res/DEMO/PM",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 #5-1 ; we also need to copy the length byte
- lda newpath,x
sta $BFD0,x
dex
bpl -
+ENABLE_ACCEL
lda #$60
sta $3EA9
jsr $3E88 ; decompress
+DISABLE_ACCEL
lda #$60
sta $A050
jsr $A000 ; title
lda #$60
sta $0948
jsr $0940
+RESET_AND_IRQ_VECTOR $100
lda #$4C
sta $0EA6
sta $13B7
sta $09A1
lda #0
sta $0EA6+1
sta $13B7+1
lda #1
sta $0EA6+2
sta $13B7+2 ; set exits
lda #$97
sta $09A1+1
lda #$0A
sta $09A1+2 ; start quiet demo immediately
jmp $0950
newpath
!byte 4
!text "X/PM"
title !byte x_e-x_b
x_b !text "X/PM/PM"
x_e
!if * > $2FF {
!error "code is too large, ends at ", *
}

88
src/demo/warp.destroyer.a Normal file
View File

@ -0,0 +1,88 @@
;license:MIT
;(c) 2021 by Frank M.
!cpu 6502
!to "res/DEMO/WARP.DESTROYER",plain
*=$320
!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 #17-1 ; we also need to copy the length byte
- lda newpath,x
sta $BFD0,x
dex
bpl -
+READ_ROM_NO_WRITE
lda #$4C
sta $893
jsr $800 ; decompress, show title
ldx #1
stx $6692
dex
stx $669C ; reset vector patch
lda #$B0
sta $76D1
lda #$13 ; disable unknown hardware support
sta $76D2 ; otherwise hangs on IIgs
lda #$A9
sta $7AA6
lda #$CB
sta $7AA6+1
lda #$EA
sta $7AA6+2 ; auto-select keyboard control
lda #$D0
sta $65D6 ; disable sound
+DISABLE_ACCEL
lda #$60
sta $8BB
lda #0
jsr $896 ; memory move, show second title
lda #$4C
sta $8051
sta $8107
sta $8157
sta $839D
lda #0
sta $8051+1
sta $8107+1
sta $8157+1
sta $839D+1
lda #1
sta $8051+2
sta $8107+2
sta $8157+2
sta $839D+2 ; set exits
jmp $667D
newpath
!byte 16
!text "X/WARP.DESTROYER"
title !byte x_e-x_b
x_b !text "X/WARP.DESTROYER/WARP.DESTROYER"
x_e
!if * > $3F0 {
!error "code is too large, ends at ", *
}

View File

@ -21,6 +21,8 @@
sta $948 sta $948
jsr $940 jsr $940
+RESET_AND_IRQ_VECTOR $100
ldx #0 ldx #0
stx $10AD stx $10AD
inx inx