mirror of
https://github.com/a2-4am/4cade.git
synced 2024-12-24 22:31:40 +00:00
attract mode HGR slideshows work
This commit is contained in:
parent
2136ab3a62
commit
b855481e69
@ -1 +1 @@
|
||||
#
# Mega-Attract-Mode configuration file
#
# Mega-Attract-Mode is split into modules. Each module can be a
# short slideshow or a self-running demo (like a game's built-in
# 'attract mode'). Modules are run in the order listed here, one
# after the next, until interrupted by user input. The last-run
# module is tracked in the master prefs file.
#
# Format:
# key=value
#
# value must be one of
# 1 for HGR slideshow (key is a file containing a list of HGR graphics)
# 2 for DHGR slideshow (key is a file containing a list of DHGR graphics)
# 3 for self-running demo (key is an executable binary file)
#
# Blank lines and lines beginning with '#' are ignored (like this one!)
# A line beginning with '[' terminates the parsing
#
FAVORITES.CONF=1
AB.CONF=1
BRODERBUND.CONF=1
DHGR.CONF=2
ACTIVISION.CONF=1
CD.CONF=1
ATARI.CONF=1
EFG.CONF=1
SIERRA.CONF=1
DATAMOST.CONF=1
HIJKL.CONF=1
DATASOFT.CONF=1
MNO.CONF=1
MICROFUN.CONF=1
PQR.CONF=1
PICCADILLY.CONF=1
S.CONF=1
SIRIUS.CONF=1
TUVWYXZ.CONF=1
[eof]
|
||||
#
# Mega-Attract-Mode configuration file
#
# Mega-Attract-Mode is split into modules. Each module can be a
# short slideshow or a self-running demo (like a game's built-in
# 'attract mode'). Modules are run in the order listed here, one
# after the next, until interrupted by user input. The last-run
# module is tracked in the master prefs file.
#
# Format:
# key=value
#
# value must be one of
# 1 for HGR slideshow (key is a file containing a list of HGR graphics)
# 2 for DHGR slideshow (key is a file containing a list of DHGR graphics)
# 3 for self-running demo (key is an executable binary file)
#
# Blank lines and lines beginning with '#' are ignored (like this one!)
# A line beginning with '[' terminates the parsing
#
FAVORITES.CONF=1
AB.CONF=1
BRODERBUND.CONF=1
#DHGR.CONF=2
ACTIVISION.CONF=1
CD.CONF=1
ATARI.CONF=1
EFG.CONF=1
SIERRA.CONF=1
DATAMOST.CONF=1
HIJKL.CONF=1
DATASOFT.CONF=1
MNO.CONF=1
MICROFUN.CONF=1
PQR.CONF=1
PICCADILLY.CONF=1
S.CONF=1
SIRIUS.CONF=1
TUVWYXZ.CONF=1
[eof]
|
1
res/hgr/PRINCEUNP
Normal file
1
res/hgr/PRINCEUNP
Normal file
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
#
# slideshow of games that begin with "A","B"
#
AGENT.USA
ALCAZAR
ALIEN.AMBUSH
ALIEN.DOWNPOUR
ALIEN.MUNCHIES
ALIEN.RAIN
ANKH
CIDER.SPIDER
APPLE.PANIC
AQUATRON
GENT.USA
GENT.USA
ARKANOID
BATTLEZONE
BCS.QUEST
GENT.USA
ALIEN.MUNCHIES
GENT.USA
ALIEN.RAIN
GENT.USA
ANKH
BUDGETRILOGY
BLISTER.BALL
BOLO
ALCAZAR
GENT.USA
BRAINTEASERBLVD
BRUCE.LEE
BUBBLE.BOBBLE
BURGERTIME
BUZZARD.BAIT
[eof]
|
||||
#
# slideshow of games that begin with "A","B"
#
ARGOS
GENT.USA
ALIEN.RAIN
ALCAZAR
ALCAZAR
BEER.RUN
ALIEN.AMBUSH
BUZZARD.BAIT
APPLE.PANIC
AGENT.USA
ALCAZAR
GENT.USA
ANKH
BUBBLE.BOBBLE
CIDER.SPIDER
BURGERTIME
ALCAZAR
GENT.USA
ARKANOID
ALIEN.DOWNPOUR
BCS.QUEST
GENT.USA
ALIEN.RAIN
GENT.USA
ALIEN.AMBUSH
BOLO
ALIEN.MUNCHIES
BLISTER.BALL
GENT.USA
CIDER.SPIDER
BRUCE.LEE
ANKH
[eof]
|
@ -1 +1 @@
|
||||
#
# Atarisoft slideshow
#
BATTLEZONE
CENTIPEDE
DEFENDER
DIG.DUG
DONKEY.KONG
GREMLINS
JOUST
JUNGLE.HUNT
MARIO.BROS
MOON.PATROL
CENTIPEDE
PAC.MAN
ROBOTRON.2084
STARGATE
CENTIPEDE
DONKEY.KONG
[eof]
|
||||
#
# Atarisoft slideshow
#
BATTLEZONE
DEFENDER
JOUST
CENTIPEDE
GREMLINS
DIG.DUG
DONKEY.KONG
STARGATE
CENTIPEDE
PAC.MAN
ROBOTRON.2084
JUNGLE.HUNT
MARIO.BROS
MOON.PATROL
GREMLINS
CENTIPEDE
JOUST
[eof]
|
@ -1 +1 @@
|
||||
#
# Broderbund Software slideshow
#
ALIEN.RAIN
APPLE.PANIC
CHAMP.LODERUN
CHOPLIFTER
DAVIDS.MAGIC
DROL
GALAXIAN
GUMBALL
KARATEKA
ALIEN.RAIN
PRINCEUNP
RASTER.BLASTER
SERPENTINE
SNAKE.BYTE
ALIEN.RAIN
DAVIDS.MAGIC
[eof]
|
||||
#
# Broderbund Software slideshow
#
GALAXIAN
ALIEN.RAIN
CHAMP.LODERUN
CHAMP.LODERUN
LODE.RUNNER
ALIEN.RAIN
DROL
PRINCEUNP
DROL
ALIEN.RAIN
CHOPLIFTER
RASTER.BLASTER
DAVIDS.MAGIC
GUMBALL
APPLE.PANIC
ALIEN.RAIN
GALAXIAN
[eof]
|
@ -1 +1 @@
|
||||
#
# slideshow of games that begin with "C","D"
#
CANNONBALL.BLTZ
CANYON.CLIMBER
CEILING.ZERO
CENTIPEDE
CHAMP.LODERUN
CHOPLIFTER
COMMANDO
CONAN
CRAZY.MAZY
CRISIS.MOUNTAIN
CROSSFIRE
ANNONBALL.BLTZ
CANYON.CLIMBER
ANNONBALL.BLTZ
CEILING.ZERO
ANNONBALL.BLTZ
CENTIPEDE
ANNONBALL.BLTZ
CHAMP.LODERUN
ANNONBALL.BLTZ
CHOPLIFTER
ANNONBALL.BLTZ
COMMANDO
ANNONBALL.BLTZ
CONAN
DROL
CANYON.CLIMBER
S
[eof]
|
||||
#
# slideshow of games that begin with "C","D"
#
CCANYON.CLIMBER
ANNONBALL.BLTZ
DONKEY.KONG
CENTIPEDE
ANNONBALL.BLTZ
CRAZY.MAZY
CRISIS.MOUNTAIN
CHOPLIFTER
ANNONBALL.BLTZ
CHOPLIFTER
ANNONBALL.BLTZ
CHAMP.LODERUN
ANNONBALL.BLTZ
CEILING.ZERO
CHAMP.LODERUN
CANYON.CLIMBER
ANNONBALL.BLTZ
CANYON.CLIMBER
CONAN
CRAZY.MAZY
ANNONBALL.BLTZ
CENTIPEDE
CANNONBALL.BLTZ
COMMANDO
ANNONBALL.BLTZ
ANNONBALL.BLTZ
DUNG.BEETLES
CANYON.CLIMBER
CENTIPEDE
S
[eof]
|
@ -1 +1 @@
|
||||
#
# Datamost slideshow
#
ANKH
ARGOS
CRAZY.MAZY
MR.ROBOT
SNACK.ATTACK
SWASHBUCKLER
TUBEWAY
[eof]
|
||||
#
# Datamost slideshow
#
ARGOS
ANKH
CRAZY.MAZY
TUBEWAY
MR.ROBOT
SNACK.ATTACK
SWASHBUCKLER
[eof]
|
@ -1 +1 @@
|
||||
#
# Datasoft slideshow
#
BRUCE.LEE
CONAN
DUNG.BEETLES
GOONIES
LOST.TOMB
MR.COOL
MR.DO
ORILEYS.MINE
POOYAN
THIEF
[eof]
|
||||
#
# Datasoft slideshow
#
CONAN
POOYAN
GOONIES
THIEF
LOST.TOMB
ORILEYS.MINE
MR.COOL
MR.DO
BRUCE.LEE
DUNG.BEETLES
[eof]
|
@ -1 +1 @@
|
||||
#
# slideshow of games that begin with "E","F","G"
#
EPOCH
FALCONS
FS1
FLIP.OUT
FIREBIRD
FORMULA.1
FROGGER
FUJI.SPEED.WAY
GALAXIAN
GAMMA.GOBLINS
GOONIES
EPOCH
FALCONS
EPOCH
FS1
EPOCH
FLIP.OUT
[eof]
|
||||
#
# slideshow of games that begin with "E","F","G"
#
FLIP.OUT
EPOCH
FIREBIRD
FALCONS
EPOCH
GORGON
GREMLINS
GALAXIAN
FS1
GOONIES
EPOCH
FROGGER
FIREBIRD
EPOCH
FORMULA.1
EPOCH
FROGGER
[eof]
|
@ -1 +1 @@
|
||||
#
# slideshow of 4am's personal favorites
#
BRUCE.LEE
BURGERTIME
CONAN
DONKEY.KONG
DROL
FALCONS
4am's personal favorites
4am's personal favorites
4am's personal favorites
4am's personal favorites
#
4am's personal favorites
4am's personal favorites
BRUCE.LEE
4am's personal favorites
BURGERTIME
4am's personal favorites
CONAN
4am's personal favorites
DONKEY.KONG
4am's personal favorites
DROL
MS.PACMAN
NIGHT.MISSION
PRINCEUNP
SABOTAGE
SAMMY.LIGHTFOOT
#
BRUCE.LEE
#
BURGERTIME
UP.N.DOWN
WAVY.NAVY
[eof]
|
||||
#
# slideshow of favorite title screens
#
WAVY.NAVY
NIBBLER
4am's personal favorites
#
BRUCE.LEE
BURGERTIME
CONAN
DONKEY.KONG
DROL
PRINCEUNP
FALCONS
4am's personal favorites
DONKEY.KONG
DROL
4am's personal favorites
4am's personal favorites
CONAN
DUNG.BEETLES
BRUCE.LEE
4am's personal favorites
BRUCE.LEE
#
TAPPER
BRUCE.LEE
BRUCE.LEE
BRUCE.LEE
BRUCE.LEE
BURGERTIME
BRUCE.LEE
CONAN
SABOTAGE
BRUCE.LEE
DONKEY.KONG
BRUCE.LEE
DROL
CONAN
NIGHT.MISSION
DINO.EGGS
FALCONS
BRUCE.LEE
BURGERTIME
JOUST
[eof]
|
@ -1 +1 @@
|
||||
#
# slideshow of games that begin with "H","I","J","K","L"
#
HERO
HARD.HAT.MACK
HEAD.ON
HIGH.RISE
HUNGRYBOY
IMPOSSIBLE.MISS
JOUST
JUGGLER
JUNGLE.HUNT
HERO
HERO
HERO
HERO
HARD.HAT.MACK
HERO
HEAD.ON
[eof]
|
||||
#
# slideshow of games that begin with "H","I","J","K","L"
#
JUGGLER
HERO
HERO
HERO
JUNGLE.HUNT
HUNGRYBOY
HIGH.RISE
HERO
HIGH.RISE
JOUST
HERO
HARD.HAT.MACK
HARD.HAT.MACK
HEAD.ON
IMPOSSIBLE.MISS
HERO
HUNGRYBOY
[eof]
|
@ -1 +1 @@
|
||||
#
# slideshow of games that begin with "M","N","O"
#
MAD.BOMBER
MARBLE.MADNESS
MARIO.BROS
MINER.2049ER
MONTEZUMA
MOON.PATROL
MR.COOL
MR.DO
MR.ROBOT
MS.PACMAN
AD.BOMBER
AD.BOMBER
AD.BOMBER
MARBLE.MADNESS
AD.BOMBER
MARIO.BROS
AD.BOMBER
MINER.2049ER
AD.BOMBER
MONTEZUMA
AD.BOMBER
MOON.PATROL
AD.BOMBER
MR.COOL
OUTPOST
[eof]
|
||||
#
# slideshow of games that begin with "M","N","O"
#
MAD.BOMBER
MR.ROBOT
MONTEZUMA
ORBITRON
AD.BOMBER
MINER.2049ER
AD.BOMBER
MOON.PATROL
MR.COOL
MS.PACMAN
AD.BOMBER
MARIO.BROS
MINER.2049ER
MARBLE.MADNESS
MARIO.BROS
MR.ROBOT
MAD.BOMBER
MR.DO
MARBLE.MADNESS
AD.BOMBER
AD.BOMBER
AD.BOMBER
AD.BOMBER
MARBLE.MADNESS
NORAD
[eof]
|
@ -1 +1 @@
|
||||
#
# Piccadilly Software slideshow
#
FALCONS
RIBBIT
STARBLASTER
SUCCESSION
SUICIDE
[eof]
|
||||
#
# Piccadilly Software slideshow
#
FALCONS
SUCCESSION
SUICIDE
RIBBIT
STARBLASTER
[eof]
|
@ -1 +1 @@
|
||||
#
# slideshow of games that begin with "P","Q","R"
#
PAC.MAN
PAPERBOY
PEST.PATROL
PIEMAN
PITSTOP.II
PITFALL.II
PHANTOMS.FIVE
PLASMANIA
POLLYWOG
AC.MAN
PRINCEUNP
PUCK.MAN
RADWARRIOR
AC.MAN
PIEMAN
REPTON
AC.MAN
PITFALL.II
AC.MAN
PHANTOMS.FIVE
[eof]
|
||||
#
# slideshow of games that begin with "P","Q","R"
#
PAC.MAN
PLASMANIA
PAPERBOY
PIEMAN
PITFALL.II
RASTER.BLASTER
POLLYWOG
AC.MAN
POLLYWOG
PAPERBOY
PRINCEUNP
PLASMANIA
PITSTOP.II
AC.MAN
PITFALL.II
REPTON
PHANTOMS.FIVE
AC.MAN
PAPERBOY
AC.MAN
[eof]
|
@ -1 +1 @@
|
||||
#
# slideshow of games that begin with "S"
#
SABOTAGE
SAMMY.LIGHTFOOT
SERPENTINE
SHAMUS
SNACK.ATTACK
SNAKE.BYTE
SNEAKERS
SNOGGLE
SPACE.RAIDERS
ABOTAGE
SPY.HUNTER
SPYS.DEMISE
ABOTAGE
SERPENTINE
ABOTAGE
SHAMUS
ABOTAGE
SNACK.ATTACK
SUCCESSION
ABOTAGE
SNEAKERS
ABOTAGE
SNOGGLE
[eof]
|
||||
#
# slideshow of games that begin with "S"
#
SABOTAGE
SPACE.RAIDERS
SHAMUS
SPACE.RAIDERS
ABOTAGE
SERPENTINE
SPY.HUNTER
SPYS.DEMISE
ABOTAGE
SHAMUS
ABOTAGE
ABOTAGE
SNEAKERS
SUCCESSION
SWASHBUCKLER
SNAKE.BYTE
SNEAKERS
SNACK.ATTACK
SAMMY.LIGHTFOOT
SAMMY.LIGHTFOOT
ABOTAGE
SNOGGLE
SERPENTINE
[eof]
|
@ -1 +1 @@
|
||||
#
# Sierra On-Line slideshow
#
CIDER.SPIDER
AQUATRON
BCS.QUEST
CANNONBALL.BLTZ
CROSSFIRE
PEST.PATROL
SABOTAGE
SAMMY.LIGHTFOOT
[eof]
|
||||
#
# Sierra On-Line slideshow
#
BCS.QUEST
SABOTAGE
CANNONBALL.BLTZ
CROSSFIRE
SAMMY.LIGHTFOOT
CIDER.SPIDER
AQUATRON
PEST.PATROL
[eof]
|
@ -1 +1 @@
|
||||
#
# Sirius Software slideshow
#
BEER.RUN
BUZZARD.BAIT
CYBERSTRIKE
EPOCH
FLIP.OUT
GAMMA.GOBLINS
GORGON
ORBITRON
OUTPOST
BEER.RUN
PLASMANIA
REPTON
SNEAKERS
BEER.RUN
EPOCH
[eof]
|
||||
#
# Sirius Software slideshow
#
BEER.RUN
FLIP.OUT
BUZZARD.BAIT
CYBERSTRIKE
GAMMA.GOBLINS
BEER.RUN
FLIP.OUT
EPOCH
OUTPOST
BEER.RUN
CYBERSTRIKE
ORBITRON
PLASMANIA
REPTON
GORGON
BEER.RUN
GAMMA.GOBLINS
[eof]
|
@ -1 +1 @@
|
||||
#
# slideshow of games that begin with "T","U","V","W","X","Y","Z"
#
TAG.TEAM
TAPPER
TETRIS
THIEF
THUNDERBOMBS
TOMAHAWK
TRACK.AND.FIELD
TUBEWAY
UP.N.DOWN
VICTORY.ROAD
VINDICATOR
AG.TEAM
TAPPER
[eof]
|
||||
#
# slideshow of games that begin with "T","U","V","W","X","Y","Z"
#
TAG.TEAM
TETRIS
THUNDERBOMBS
AG.TEAM
THIEF
VINDICATOR
UP.N.DOWN
WAVY.NAVY
THIEF
TOMAHAWK
VICTORY.ROAD
TUBEWAY
TAPPER
TETRIS
[eof]
|
46
src/4cade.a
46
src/4cade.a
@ -59,6 +59,10 @@ FirstMover
|
||||
Reenter ; self-running demos should call this to exit back to 4cade
|
||||
; TODO
|
||||
Start
|
||||
lda hddopendir+1
|
||||
ldy hddopendir+3
|
||||
+STAY gRootDirectory ; save current directory as 'root'
|
||||
|
||||
jsr LoadFile ; load games list from file
|
||||
!word kGameListConfFile
|
||||
|
||||
@ -79,14 +83,14 @@ Start
|
||||
+LDAY SRC
|
||||
+STAY gSlideshowStore ; save pointer to free space for next store
|
||||
|
||||
bit $C010
|
||||
jsr AttractMode
|
||||
|
||||
jmp $FAA6
|
||||
jmp Reboot
|
||||
|
||||
AttractMode
|
||||
jsr okvs_nth ; get filename of next attract module
|
||||
!word gAttractModeStore
|
||||
!byte 0
|
||||
@index !byte 0
|
||||
+STAY PTR
|
||||
jsr ResetPath
|
||||
+LDADDR kAttractModeSlideshowDirectory
|
||||
@ -98,6 +102,14 @@ AttractMode
|
||||
jsr LoadFile ; load attract module configuration file
|
||||
!word gPathname
|
||||
|
||||
inc @index ; increment module index for next time
|
||||
jsr okvs_len
|
||||
!word gAttractModeStore
|
||||
cmp @index
|
||||
bne +
|
||||
lda #0
|
||||
sta @index
|
||||
+
|
||||
jsr ParseKeyValueList ; parse slideshow configuration
|
||||
!word gSlideshowStore
|
||||
!word ldrlo2 ; (ldrlo2) points to load address
|
||||
@ -105,6 +117,9 @@ AttractMode
|
||||
jsr okvs_iter
|
||||
!word gSlideshowStore
|
||||
!word HGRLoad
|
||||
|
||||
lda $C000
|
||||
bpl AttractMode
|
||||
rts
|
||||
|
||||
HGRLoad
|
||||
@ -121,8 +136,33 @@ HGRLoad
|
||||
jsr LoadFile
|
||||
!word gPathname
|
||||
jsr FizzleHGR
|
||||
ldx #0
|
||||
ldy #0
|
||||
@wait lda $C000
|
||||
bmi @exit
|
||||
jsr @burn
|
||||
dey
|
||||
bne @wait
|
||||
dex
|
||||
bne @wait
|
||||
rts
|
||||
@burn jsr @burn2
|
||||
@burn2 jsr @burn3
|
||||
@burn3 jsr @exit
|
||||
@exit rts
|
||||
|
||||
Reboot
|
||||
ldx #(@end-@start-1)
|
||||
- lda @start,x
|
||||
sta $100,x
|
||||
dex
|
||||
bpl -
|
||||
jmp $100
|
||||
@start
|
||||
+READ_ROM_NO_WRITE
|
||||
jmp $FAA6
|
||||
@end
|
||||
|
||||
kGameListConfFile
|
||||
!byte @kGameListConfFile_e-@kGameListConfFile_b
|
||||
@kGameListConfFile_b
|
||||
|
@ -49,10 +49,13 @@ FizzleHGR
|
||||
lda ($3c),y
|
||||
sta ($26),y
|
||||
|
||||
;check for keypress
|
||||
;wait while checking for keypress
|
||||
|
||||
lda $c000
|
||||
ldx #8
|
||||
@wait lda $c000
|
||||
bmi @exit
|
||||
dex
|
||||
bne @wait
|
||||
|
||||
;and exit condition
|
||||
|
||||
|
@ -8,6 +8,9 @@
|
||||
; - LoadDHRFile
|
||||
;
|
||||
|
||||
gRootDirectory
|
||||
!word $FDFD
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; LoadFile
|
||||
; load a file into memory all at once, using ProRWTS2
|
||||
@ -25,6 +28,10 @@ LoadFile
|
||||
+LDPARAM 1
|
||||
+STAY namlo ; set filename
|
||||
|
||||
+LDAY gRootDirectory
|
||||
sta @myreadblock+1
|
||||
sty @myreadblock+3 ; reset 'root' directory (saved at program start)
|
||||
|
||||
;search for '/' character in filename
|
||||
|
||||
ldx #0
|
||||
|
Loading…
Reference in New Issue
Block a user