mirror of
https://github.com/a2-4am/4cade.git
synced 2025-02-02 17:35:02 +00:00
add Out Of This World, fix crash in GR action slideshows, fix missing games in DHGR action slideshows, more game ordering fixes
This commit is contained in:
parent
ac7584edd8
commit
3ca889a18c
BIN
res/action.gr/OOTW
Normal file
BIN
res/action.gr/OOTW
Normal file
Binary file not shown.
@ -1 +1 @@
|
||||
#
# Mega-Attract-Mode configuration file
#
# set 1
FAVORITES1.CONF=1
ACTIONHIJ1.CONF=2
JUNGLE.HUNT=0
DHGR1.CONF=3
ACTIONPOP.CONF=2
SAMMY.LIGHTFOOT=0
OTHER4.CONF=1
SHR1.CONF=5
# set 2
FAVORITES4.CONF=1
PITFALL.II=0
SYNERGIST.CONF=1
SPCARTOON.1.=0
ACTIONMNO1.CONF=2
CONAN=0
DHGR2.CONF=3
ACTIONCLR1.CONF=2
ATARI.CONF=1
SNEAKERS=0
SHR2.CONF=5
# set 3
IDSI.CONF=1
HARD.HAT.MACK=0
BALLY.CONF=1
MR.DO.CONF=2
BURGERTIME=0
DHGR3.CONF=3
ACTIONS3.CONF=2
GUMBALL=0
S3.CONF=1
STARGATE=0
SHR3.CONF=5
# set 4
FAVORITES3.CONF=1
BOUNCING.KMNGAS=0
BRODERBUND.CONF=1
ACTIONCLR2.CONF=2
LADY.TUT=0
DHGR4.CONF=3
ACTIONAB1.CONF=2
CD2.CONF=1
SPYS.DEMISE=0
SHR4.CONF=5
# set 5
T1.CONF=1
MR.COOL=0
SIRIUS.CONF=1
SPCARTOON.2.=0
ACTIONCLR3.CONF=2
CIDER.SPIDER=0
ACTDHGR1.CONF=4
ACTIONAB2.CONF=2
AB2.CONF=1
SPARE.CHANGE=0
SHR5.CONF=5
# set 6
MATTEL.CONF=1
THUNDERBOMBS=0
FAVORITES2.CONF=1
ACTIONBURG.CONF=2
VINDICATOR=0
ACTDHGR2.CONF=4
ACTIONEFG2.CONF=2
S1.CONF=1
LODE.RUNNER=0
SHR6.CONF=5
# set 7
EFG2.CONF=1
REPTON=0
DATAMOST.CONF=1
ACTIONCLR4.CONF=2
AGENT.USA=0
ACTDHGR3.CONF=4
ACTIONMNO3.CONF=2
MNO.CONF=1
AQUATRON=0
SHR7.CONF=5
# set 8
SIERRA.CONF=1
POOYAN=0
CD1.CONF=1
SPCARTOON.3.=0
ACTIONPQR1.CONF=2
ALIEN.DOWNPOUR=0
ACTDHGR4.CONF=4
ACTIONT1.CONF=2
BOLO=0
T2.CONF=1
BUZZARD.BAIT=0
SHR8.CONF=5
# set 9
MICROFUN.CONF=1
GAMMA.GOBLINS=0
OTHER2.CONF=1
ACTIONCLR5.CONF=2
CEILING.ZERO=0
ACTDHGR5.CONF=4
ACTIONPQR2.CONF=2
P2.CONF=1
ROBOTRON=0
SHR9.CONF=5
# set 10
SYNAPSE.CONF=1
WARP.DESTROYER=0
PICCADILLY.CONF=1
ACTIONT3.CONF=2
WAVY.NAVY=0
ACTDHGR6.CONF=4
ACTIONT2.CONF=2
CD3.CONF=1
TRACK.AND.FIELD=0
SHR10.CONF=5
# set 11
DATAEAST.CONF=1
PEST.PATROL=0
EA.CONF=1
SPCARTOON.4.=0
ACTIONMNO2.CONF=2
CHOPLIFTER=0
ACTDHGR7.CONF=4
ACTIONEFG1.CONF=2
LABYRINTH=0
HIJKL2.CONF=1
GOONIES=0
SHR11.CONF=5
# set 12
SEGA.CONF=1
LOST.TOMB=0
HIJKL.CONF=1
ACTIONEFG3.CONF=2
KARATEKA=0
ACTDHGR8.CONF=4
ACTIONS2.CONF=2
ALIEN.TYPHOON=0
S2.CONF=1
SNAKE.BYTE=0
SHR12.CONF=5
# set 13
ACTIVISION.CONF=1
DINO.EGGS=0
SIRIUS2.CONF=1
ACTIONHIJ2.CONF=2
ALIEN.RAIN=0
ACTDHGR9.CONF=4
ACTIONCD2.CONF=2
BELLHOP=0
GEBELLI.CONF=1
SERPENTINE=0
SHR13.CONF=5
# set 14
PENGUIN.CONF=1
PACMAN=0
DATASOFT.CONF=1
SPCARTOON.5.=0
ACTIONAB3.CONF=2
FLIP.OUT=0
ACTDHGR10.CONF=4
ACTIONCD1.CONF=2
ALIEN.MUNCHIES=0
QR.CONF=1
PLASMANIA=0
SHR14.CONF=5
# set 15
SUBLOGIC.CONF=1
HIGH.RISE=0
EFG1.CONF=1
ACTIONS1.CONF=2
ORILEYS.MINE=0
ACTDHGR11.CONF=4
ACTIONCD3.CONF=2
BEER.RUN=0
OTHER1.CONF=1
SPY.HUNTER=0
SHR15.CONF=5
# set 16
EPYX.CONF=1
NIBBLER=0
AB1.CONF=1
ACTIONPQR3.CONF=2
ALIEN.AMBUSH=0
ACTDHGR12.CONF=4
ACTIONCAPT.CONF=2
TUBEWAY=0
SHR16.CONF=5
# set 17
P1.CONF=1
PIEMAN=0
OTHER3.CONF=1
SPCARTOON.6.=0
ACTIONHIJ3.CONF=2
CHAMP.LODERUN=0
ACTDHGR13.CONF=4
ACTIONHIJ4.CONF=2
AB3.CONF=1
AXIS.ASSASSIN=0
ACTIONAB4.CONF=2
FIREBIRD=0
SHR17.CONF=5
# set 18
AB4.CONF=1
DIG.DUG=0
BRODER2.CONF=1
FALCONS=0
ACTIONT4.CONF=2
STAR.BLAZER=0
ACTIONEFG4.CONF=2
ATARI2.CONF=1
BRAINTEASERBLVD=0
ACTIONAB5.CONF=2
SPACE.EGGS=0
SHR18.CONF=5
[eof]
# Mega-Attract-Mode is split into modules. Each module can be a short
# slideshow, a self-running demo (like a game's built-in 'attract mode'), or
# even just a single screenshot. 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 global prefs file.
#
# The same format is used by the per-game attract mode configuration files.
#
# Format:
# key=value
#
# |key| must be unique within this file
#
# |value| must be one of
# 0 = self-running demo (|key| is an executable binary file in /DEMO/)
# 1 = HGR title slideshow (|key| is a file in /SS/ containing files in /TITLE.HGR/)
# 2 = HGR action slideshow (|key| is a file in /SS/ containing files in /ACTION.HGR/)
# 3 = DHGR title slideshow (|key| is a file in /SS/ containing files in /TITLE.DHGR/)
# 4 = DHGR action slideshow (|key| is a file in /SS/ containing files in /ACTION.DHGR/)
# 5 = SHR box art slideshow (|key| is a file in /SS/ containing files in /ARTWORK.SHR/)
# 6 = GR action slideshow (|key| is a file in /SS/ containing files in /ACTION.GR/)
# A = single HGR file (|key| is arbitrary path from program root directory)
# B = single DHGR file (|key| is arbitrary path from program root directory)
# C = single SHR file (|key| is arbitrary path from program root directory)
# D = single GR file (|key| is arbitrary path from program root directory)
#
# Blank lines and lines beginning with '#' are ignored (like this one!)
# A line beginning with '[' terminates the parsing
|
||||
#
# Mega-Attract-Mode configuration file
#
# set 1
FAVORITES1.CONF=1
ACTIONHIJ1.CONF=2
JUNGLE.HUNT=0
DHGR1.CONF=3
ACTIONPOP.CONF=2
SAMMY.LIGHTFOOT=0
OTHER4.CONF=1
SHR1.CONF=5
# set 2
FAVORITES4.CONF=1
PITFALL.II=0
SYNERGIST.CONF=1
SPCARTOON.1.=0
ACTIONMNO1.CONF=2
CONAN=0
DHGR2.CONF=3
ACTIONCLR1.CONF=2
ATARI.CONF=1
SNEAKERS=0
SHR2.CONF=5
# set 3
AB4.CONF=1
DIG.DUG=0
BRODER2.CONF=1
FALCONS=0
ACTIONT4.CONF=2
STAR.BLAZER=0
ACTIONEFG4.CONF=2
ATARI2.CONF=1
BRAINTEASERBLVD=0
ACTIONAB5.CONF=2
SPACE.EGGS=0
SHR3.CONF=5
# set 4
FAVORITES3.CONF=1
BOUNCING.KMNGAS=0
BRODERBUND.CONF=1
ACTIONCLR2.CONF=2
LADY.TUT=0
DHGR4.CONF=3
ACTIONAB1.CONF=2
CD2.CONF=1
SPYS.DEMISE=0
SHR4.CONF=5
# set 5
P1.CONF=1
PIEMAN=0
OTHER3.CONF=1
SPCARTOON.6.=0
ACTIONHIJ3.CONF=2
CHAMP.LODERUN=0
ACTDHGR13.CONF=4
ACTIONHIJ4.CONF=2
AB3.CONF=1
AXIS.ASSASSIN=0
ACTIONAB4.CONF=2
FIREBIRD=0
SHR5.CONF=5
# set 6
MATTEL.CONF=1
THUNDERBOMBS=0
FAVORITES2.CONF=1
ACTIONBURG.CONF=2
VINDICATOR=0
ACTDHGR2.CONF=4
ACTIONEFG2.CONF=2
S1.CONF=1
LODE.RUNNER=0
SHR6.CONF=5
# set 7
EFG2.CONF=1
REPTON=0
DATAMOST.CONF=1
ACTIONCLR4.CONF=2
AGENT.USA=0
ACTDHGR3.CONF=4
ACTIONMNO3.CONF=2
MNO.CONF=1
AQUATRON=0
SHR7.CONF=5
# set 8
SIERRA.CONF=1
POOYAN=0
CD1.CONF=1
SPCARTOON.3.=0
ACTIONPQR1.CONF=2
ALIEN.DOWNPOUR=0
ACTDHGR4.CONF=4
ACTIONT1.CONF=2
BOLO=0
T2.CONF=1
BUZZARD.BAIT=0
SHR8.CONF=5
# set 9
MICROFUN.CONF=1
GAMMA.GOBLINS=0
OTHER2.CONF=1
ACTIONCLR5.CONF=2
CEILING.ZERO=0
ACTDHGR5.CONF=4
ACTIONPQR2.CONF=2
P2.CONF=1
ROBOTRON=0
SHR9.CONF=5
# set 10
SYNAPSE.CONF=1
WARP.DESTROYER=0
PICCADILLY.CONF=1
ACTIONT3.CONF=2
WAVY.NAVY=0
ACTDHGR6.CONF=4
ACTIONT2.CONF=2
CD3.CONF=1
TRACK.AND.FIELD=0
SHR10.CONF=5
# set 11
DATAEAST.CONF=1
PEST.PATROL=0
EA.CONF=1
SPCARTOON.4.=0
ACTIONMNO2.CONF=2
CHOPLIFTER=0
ACTDHGR7.CONF=4
ACTIONEFG1.CONF=2
LABYRINTH=0
HIJKL2.CONF=1
GOONIES=0
SHR11.CONF=5
# set 12
SEGA.CONF=1
LOST.TOMB=0
HIJKL.CONF=1
ACTIONEFG3.CONF=2
KARATEKA=0
ACTDHGR8.CONF=4
ACTIONS2.CONF=2
ALIEN.TYPHOON=0
S2.CONF=1
SNAKE.BYTE=0
SHR12.CONF=5
# set 13
ACTIVISION.CONF=1
DINO.EGGS=0
SIRIUS2.CONF=1
ACTIONHIJ2.CONF=2
ALIEN.RAIN=0
ACTDHGR9.CONF=4
ACTIONCD2.CONF=2
BELLHOP=0
GEBELLI.CONF=1
SERPENTINE=0
SHR13.CONF=5
# set 14
PENGUIN.CONF=1
PACMAN=0
DATASOFT.CONF=1
SPCARTOON.5.=0
ACTIONAB3.CONF=2
FLIP.OUT=0
ACTDHGR10.CONF=4
ACTIONCD1.CONF=2
ALIEN.MUNCHIES=0
QR.CONF=1
PLASMANIA=0
SHR14.CONF=5
# set 15
SUBLOGIC.CONF=1
HIGH.RISE=0
EFG1.CONF=1
ACTIONS1.CONF=2
ORILEYS.MINE=0
ACTDHGR11.CONF=4
ACTIONCD3.CONF=2
BEER.RUN=0
OTHER1.CONF=1
SPY.HUNTER=0
SHR15.CONF=5
# set 16
EPYX.CONF=1
NIBBLER=0
AB1.CONF=1
ACTIONPQR3.CONF=2
ALIEN.AMBUSH=0
ACTDHGR12.CONF=4
ACTIONCAPT.CONF=2
TUBEWAY=0
SHR16.CONF=5
# set 17
T1.CONF=1
MR.COOL=0
SIRIUS.CONF=1
SPCARTOON.2.=0
ACTIONCLR3.CONF=2
CIDER.SPIDER=0
ACTDHGR1.CONF=4
ACTIONAB2.CONF=2
AB2.CONF=1
SPARE.CHANGE=0
SHR17.CONF=5
# set 18
IDSI.CONF=1
HARD.HAT.MACK=0
BALLY.CONF=1
MR.DO.CONF=2
BURGERTIME=0
DHGR3.CONF=3
ACTIONS3.CONF=2
GUMBALL=0
S3.CONF=1
STARGATE=0
ACTGR1.CONF=6
SHR18.CONF=5
[eof]
# Mega-Attract-Mode is split into modules. Each module can be a short
# slideshow, a self-running demo (like a game's built-in 'attract mode'), or
# even just a single screenshot. 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 global prefs file.
#
# The same format is used by the per-game attract mode configuration files.
#
# Format:
# key=value
#
# |key| must be unique within this file
#
# |value| must be one of
# 0 = self-running demo (|key| is an executable binary file in /DEMO/)
# 1 = HGR title slideshow (|key| is a file in /SS/ containing files in /TITLE.HGR/)
# 2 = HGR action slideshow (|key| is a file in /SS/ containing files in /ACTION.HGR/)
# 3 = DHGR title slideshow (|key| is a file in /SS/ containing files in /TITLE.DHGR/)
# 4 = DHGR action slideshow (|key| is a file in /SS/ containing files in /ACTION.DHGR/)
# 5 = SHR box art slideshow (|key| is a file in /SS/ containing files in /ARTWORK.SHR/)
# 6 = GR action slideshow (|key| is a file in /SS/ containing files in /ACTION.GR/)
# A = single HGR file (|key| is arbitrary path from program root directory)
# B = single DHGR file (|key| is arbitrary path from program root directory)
# C = single SHR file (|key| is arbitrary path from program root directory)
# D = single GR file (|key| is arbitrary path from program root directory)
#
# Blank lines and lines beginning with '#' are ignored (like this one!)
# A line beginning with '[' terminates the parsing
|
@ -1 +1 @@
|
||||
#
# Attract mode for NORAD
#
ACTION.HGR/NORAD2=A
ACTION.HGR/NORAD=A
[eof]
|
||||
#
# Attract mode for N O R A D
#
ACTION.HGR/NORAD2=A
ACTION.HGR/NORAD=A
[eof]
|
1
res/attract/OOTW
Normal file
1
res/attract/OOTW
Normal file
@ -0,0 +1 @@
|
||||
#
# Attract mode for Out Of This World
#
ACTION.GR/OOTW=D
[eof]
|
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
#
# action shots slideshow of lo-res games
#
BLOCKCHAIN
POLLYWOG
[eof]
|
||||
#
# action shots slideshow of lo-res games
#
OOTW
BLOCKCHAIN
POLLYWOG
[eof]
|
1
res/title.hgr/OOTW
Normal file
1
res/title.hgr/OOTW
Normal file
File diff suppressed because one or more lines are too long
@ -20,21 +20,25 @@
|
||||
|
||||
GetGameDisplayName
|
||||
; in: A/Y points to game filename
|
||||
; X = #$60 if we should only look in gGamesListStore for a match
|
||||
; X = #$EA if we should also look in gSlideshowStore
|
||||
; out: C clear if game exists in gGamesListStore, and
|
||||
; A/Y points to game display name (but see hack notes below)
|
||||
; C set if game does not exist (this can happen because slideshows
|
||||
; list games that require a joystick, but the games list parser
|
||||
; filters out joystick-only games if the machine doesn't have a
|
||||
; joystick)
|
||||
stx @maybeExit
|
||||
+STAY @key
|
||||
+STAY @slideshowKey
|
||||
jsr okvs_get
|
||||
!word gGamesListStore
|
||||
@key !word $FDFD ; SMC
|
||||
bcc @exit
|
||||
; Hack to allow self-running demos that don't correspond to a game
|
||||
; filename. If the name ends in a '.', accept it unconditionally.
|
||||
; The filename is its own display name. Launching this fake game
|
||||
; will of course fail, so don't do that.
|
||||
; Hack to allow self-running demos that don't correspond to a game
|
||||
; filename. If the name ends in a '.', accept it unconditionally.
|
||||
; The filename is its own display name. Launching this fake game
|
||||
; will of course fail, so don't do that.
|
||||
+LDAY @key
|
||||
+STAY PARAM
|
||||
ldy #0
|
||||
@ -44,6 +48,23 @@ GetGameDisplayName
|
||||
cmp #"."
|
||||
beq @forceGoodResult
|
||||
sec
|
||||
@maybeExit
|
||||
!byte $00 ; SMC
|
||||
; if the key is still not found, AND the caller said to try this, then try
|
||||
; getting the value of the current record from gSlideshowStore
|
||||
; (some games have multiple action screenshots, in which case the filename of
|
||||
; the action screenshot is not the game name, but the value is)
|
||||
jsr okvs_get
|
||||
!word gSlideshowStore
|
||||
@slideshowKey
|
||||
!word $FDFD ; SMC
|
||||
+STAY @key3
|
||||
jsr okvs_get
|
||||
!word gGamesListStore
|
||||
@key3 !word $FDFD ; SMC
|
||||
; note that the game might still not be found (C will be set by okvs_get),
|
||||
; which can happen if the game can't be played due to memory or joystick
|
||||
; requirements
|
||||
rts
|
||||
@forceGoodResult
|
||||
+LDAY @key
|
||||
|
@ -134,9 +134,16 @@ kDFXConfFile
|
||||
+
|
||||
stx gCurrentlyVisibleSlideshowIndex
|
||||
|
||||
; try to get the human-readable name of this game from gGamesListStore
|
||||
+LDAY SAVE
|
||||
ldx #$60
|
||||
jsr GetGameDisplayName
|
||||
bcs @exit ; not found, so just skip this title
|
||||
; if game is not found (C will be set here), it means it can't be played on
|
||||
; this machine due to memory or joystick requirements, so we don't display
|
||||
; it in slideshows
|
||||
bcs @exit
|
||||
; (we don't actually use the display name in the title slideshow, we just
|
||||
; reuse the function for convenience)
|
||||
|
||||
; load DHGR screenshot at $4000/main and $4000/aux
|
||||
+LDADDR kDHGRTitleDirectory
|
||||
@ -164,13 +171,22 @@ kDFXConfFile
|
||||
|
||||
lda KBD
|
||||
bpl +
|
||||
@actionExit
|
||||
rts
|
||||
+
|
||||
stx gCurrentlyVisibleSlideshowIndex
|
||||
|
||||
; try to get the human-readable name of this game from gGamesListStore
|
||||
; or gSlideshowStore
|
||||
+LDAY SAVE
|
||||
ldx #$EA
|
||||
jsr GetGameDisplayName
|
||||
bcs @exit ; not found, so just skip this title
|
||||
; if game is not found (C will be set here), it means it can't be played on
|
||||
; this machine due to memory or joystick requirements, so we don't display
|
||||
; it in slideshows
|
||||
bcs @actionExit
|
||||
; (we don't actually use the display name in the DHGR action slideshow, we
|
||||
; just reuse the function for convenience)
|
||||
|
||||
; load DHGR screenshot at $4000/main and $4000/aux
|
||||
+LDADDR kDHGRActionDirectory
|
||||
|
@ -90,14 +90,22 @@ kGRFizzleFile
|
||||
+
|
||||
stx gCurrentlyVisibleSlideshowIndex
|
||||
|
||||
; try to get the human-readable name of this game from gGamesListStore
|
||||
; or gSlideshowStore
|
||||
+LDAY SAVE
|
||||
ldx #$EA
|
||||
jsr GetGameDisplayName
|
||||
bcs @actionExit ; not found, so just skip this title
|
||||
; if game is not found (C will be set here), it means it can't be played on
|
||||
; this machine due to memory or joystick requirements, so we don't display
|
||||
; it in slideshows
|
||||
bcs @actionExit
|
||||
; (we don't actually use the display name in the GR action slideshow, we
|
||||
; just reuse the function for convenience)
|
||||
|
||||
; load GR screenshot at $6000
|
||||
+LOAD_FILE kGRActionDirectory, SAVE
|
||||
|
||||
+LDADDR $6000
|
||||
+LDADDR $6400
|
||||
jmp ExecuteTransitionAndWait
|
||||
|
||||
}
|
||||
|
@ -52,12 +52,16 @@ HGRSingle
|
||||
+
|
||||
stx gCurrentlyVisibleSlideshowIndex
|
||||
|
||||
; check if game exists in the catalog (it might not if it requires a
|
||||
; joystick and the machine doesn't have one, or if it requires 128K
|
||||
; but the machine only has 64K)
|
||||
; try to get the human-readable name of this game from gGamesListStore
|
||||
+LDAY SAVE
|
||||
ldx #$60
|
||||
jsr GetGameDisplayName
|
||||
bcs @exit ; not found, so just skip this title
|
||||
; if game is not found (C will be set here), it means it can't be played on
|
||||
; this machine due to memory or joystick requirements, so we don't display
|
||||
; it in slideshows
|
||||
bcs @exit
|
||||
; (we don't actually use the display name in the title slideshow, we just
|
||||
; reuse the function for convenience)
|
||||
|
||||
; load HGR screenshot at $4000
|
||||
+LOAD_FILE kHGRTitleDirectory, SAVE
|
||||
@ -79,7 +83,6 @@ HGRSingle
|
||||
;------------------------------------------------------------------------------
|
||||
.HGRActionCallback
|
||||
+STAY SAVE
|
||||
+STAY @slideshowKey
|
||||
|
||||
lda KBD
|
||||
bpl +
|
||||
@ -92,28 +95,17 @@ HGRSingle
|
||||
+LOAD_FILE kHGRActionDirectory, SAVE
|
||||
|
||||
; try to get the human-readable name of this game from gGamesListStore
|
||||
; and display it in the bottom-left corner
|
||||
; or gSlideshowStore
|
||||
+LDAY SAVE
|
||||
ldx #$EA
|
||||
jsr GetGameDisplayName
|
||||
bcc @foundname
|
||||
; if the key is not found, try getting the value of the current record from
|
||||
; gSlideshowStore and using that instead
|
||||
; (some games have multiple action screenshots, in which case the filename of
|
||||
; the action screenshot is not the game name, but the value is)
|
||||
jsr okvs_get
|
||||
!word gSlideshowStore
|
||||
@slideshowKey
|
||||
!word $FDFD ; SMC
|
||||
+STAY @key3
|
||||
jsr okvs_get
|
||||
!word gGamesListStore
|
||||
@key3 !word $FDFD ; SMC
|
||||
bcs @actionExit ; game still not found, bail
|
||||
; (could happen if game can't be played
|
||||
; due to memory or joystick requirements)
|
||||
@foundname
|
||||
; if game name is not found (C will be set here), it means the game
|
||||
; can't be played due to memory or joystick requirements, so we hide
|
||||
; it from slideshows
|
||||
bcs @actionExit
|
||||
|
||||
; found the game, display its name in the bottom-left corner
|
||||
+STAY SAVE
|
||||
@drawname
|
||||
ldx #0
|
||||
stx HTAB
|
||||
ldx #22
|
||||
|
@ -180,6 +180,7 @@ RunAttractModule
|
||||
; language card or auxiliary memory.
|
||||
|
||||
+LDAY @key
|
||||
ldx #$60
|
||||
jsr GetGameDisplayName
|
||||
bcc + ; if game doesn't exist, skip the demo
|
||||
rts
|
||||
|
Loading…
x
Reference in New Issue
Block a user