attract mode HGR slideshows work

This commit is contained in:
4am 2018-10-28 11:44:26 -04:00
parent 2136ab3a62
commit b855481e69
21 changed files with 73 additions and 22 deletions

View File

@ -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

File diff suppressed because one or more lines are too long

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -1 +1 @@
# # Piccadilly Software slideshow # FALCONS RIBBIT STARBLASTER SUCCESSION SUICIDE [eof]
# # Piccadilly Software slideshow # FALCONS SUCCESSION SUICIDE RIBBIT STARBLASTER [eof]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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]

View File

@ -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

View File

@ -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

View File

@ -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