mirror of
https://github.com/a2-4am/4cade.git
synced 2024-12-23 16:29:34 +00:00
fill out Captain Goodnight and Spare Change mini attract modes
This commit is contained in:
parent
e16143191f
commit
84640536ff
@ -2,24 +2,75 @@
|
||||
|
||||
# run from project root directory
|
||||
|
||||
cat res/games.conf | tr "\r" "\n" | grep "=" | grep -v "^#" | cut -d"," -f2 | cut -d"=" -f1 | \
|
||||
cat res/games.conf |
|
||||
tr "\r" "\n" |
|
||||
grep "=" |
|
||||
grep -v "^#" |
|
||||
cut -d"," -f2 |
|
||||
cut -d"=" -f1 | \
|
||||
while read game; do
|
||||
# if I knew how to use awk, this could be O(N) instead of O(N^2)
|
||||
name=`cat res/games.conf | tr "\r" "\n" | grep "$game=" | cut -d"=" -f2`
|
||||
|
||||
# initialize attract mode configuration file for this game
|
||||
echo "#\n# Attract mode for $name\n#\n" > /tmp/g
|
||||
|
||||
# add title screenshot for DHGR games only
|
||||
[ -f res/title.dhgr/"$game" ] && echo "TITLE.DHGR/$game=8" >> /tmp/g
|
||||
[ -f res/title.dhgr/"$game" ] &&
|
||||
echo "TITLE.DHGR/$game=8" >> /tmp/g
|
||||
|
||||
# add box art, if any
|
||||
[ -f res/artwork.shr/"$game" ] && echo "ARTWORK.SHR/$game=9" >> /tmp/g
|
||||
# TODO add DHGR action screenshots, if any
|
||||
cat res/ss/ACTDHGR*.CONF | tr "\r" "\n" | grep "$game""$" | cut -d"=" -f1 | sed -e "s/^/ACTION.DHGR\//g" | sed -e "s/$/=8/g" | sort | uniq >> /tmp/g
|
||||
# add action screenshots, if any
|
||||
cat res/ss/ACTION*.CONF | tr "\r" "\n" | grep "$game""$" | cut -d"=" -f1 | sed -e "s/^/ACTION.HGR\//g" | sed -e "s/$/=7/g" | sort | uniq >> /tmp/g
|
||||
[ -f res/artwork.shr/"$game" ] &&
|
||||
echo "ARTWORK.SHR/$game=9" >> /tmp/g
|
||||
|
||||
# add DHGR action screenshots, if any
|
||||
cat res/ss/ACTDHGR*.CONF |
|
||||
tr "\r" "\n" |
|
||||
grep "$game""$" |
|
||||
cut -d"=" -f1 |
|
||||
sed -e "s/^/ACTION.DHGR\//g" |
|
||||
sed -e "s/$/=8/g" |
|
||||
sort |
|
||||
uniq >> /tmp/g
|
||||
|
||||
# add HGR action screenshots, if any
|
||||
cat res/ss/ACTION*.CONF |
|
||||
tr "\r" "\n" |
|
||||
grep "$game""$" |
|
||||
cut -d"=" -f1 |
|
||||
sed -e "s/^/ACTION.HGR\//g" |
|
||||
sed -e "s/$/=7/g" |
|
||||
sort |
|
||||
uniq >> /tmp/g
|
||||
|
||||
if [ "$game" == "CAPTN.GOODNIGHT" ]; then
|
||||
cat res/ss/ACTIONCAPT.CONF |
|
||||
tr "\r" "\n" |
|
||||
grep "^CAPT" |
|
||||
sed -e "s/^/ACTION.HGR\//g" |
|
||||
sed -e "s/$/=7/g" >> /tmp/g
|
||||
fi
|
||||
|
||||
# add self-running demo, if any
|
||||
cat res/attract.conf | tr "\r" "\n" | grep "^$game=0" >> /tmp/g
|
||||
cat res/attract.conf |
|
||||
tr "\r" "\n" |
|
||||
grep "^$game=0" >> /tmp/g
|
||||
|
||||
if [ "$game" == "SPARE.CHANGE" ]; then
|
||||
echo "SPCARTOON.1=0" >> /tmp/g
|
||||
echo "SPCARTOON.2=0" >> /tmp/g
|
||||
echo "SPCARTOON.3=0" >> /tmp/g
|
||||
echo "SPCARTOON.4=0" >> /tmp/g
|
||||
echo "SPCARTOON.5=0" >> /tmp/g
|
||||
echo "SPCARTOON.6=0" >> /tmp/g
|
||||
fi
|
||||
|
||||
# add eof
|
||||
echo "\n[eof]" >> /tmp/g
|
||||
|
||||
# change line endings
|
||||
cat /tmp/g | tr "\n" "\r" > res/attract/"$game"
|
||||
|
||||
# clean up
|
||||
rm /tmp/g
|
||||
done
|
||||
|
@ -1 +1 @@
|
||||
#
# Mega-Attract-Mode configuration file
#
# 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/)
# 7 = single HGR file (|key| is arbitrary path from program root directory)
# 8 = single DHGR file (|key| is arbitrary path from program root directory)
# 9 = single SHR 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
#
# set 1
FAVORITES1.CONF=1
CARTOON.1=0
CARTOON.2=0
CARTOON.3=0
CARTOON.4=0
CARTOON.5=0
CARTOON.6=0
ACTIONCD1.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
CARTOON.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
CARTOON.2=0
ACTIONCLR3.CONF=2
CIDER.SPIDER=0
ACTDHGR1.CONF=4
ACTIONAB2.CONF=2
# 1
SPARE.CHANGE=0
SHR5.CONF=5
# set 6
MATTEL.CONF=1
THUNDERBOMBS=0
FAVORITES2.CONF=1
ACTIONBURG.CONF=2
VINDICATOR=0
# 4
ACTIONEFG2.CONF=2
S1.CONF=1
LODE.RUNNER=0
# 5
# set 7
EFG2.CONF=1
REPTON=0
DATAMOST.CONF=1
ACTIONCLR4.CONF=2
AGENT.USA=0
# 4
# 2
MNO.CONF=1
AQUATRON=0
SHR7.CONF=5
# set 8
SIERRA.CONF=1
POOYAN=0
CD1.CONF=1
CARTOON.3=0
ACTIONPQR1.CONF=2
ALIEN.DOWNPOUR=0
# 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
# 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
# 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
CARTOON.4=0
ACTIONMNO2.CONF=2
CHOPLIFTER=0
# 4
ACTIONEFG1.CONF=2
HIJKL2.CONF=1
GOONIES=0
# 5
# set 12
SEGA.CONF=1
LOST.TOMB=0
HIJKL.CONF=1
ACTIONEFG3.CONF=2
KARATEKA=0
# 4
ACTIONS2.CONF=2
S2.CONF=1
SNAKE.BYTE=0
SHR12.CONF=5
# set 13
ACTIVISION.CONF=1
DINO.EGGS=0
TAITO.CONF=1
ACTIONHIJ2.CONF=2
ALIEN.RAIN=0
# 4
ACTIONCD2.CONF=2
GEBELLI.CONF=1
SERPENTINE=0
SHR13.CONF=5
# set 14
PENGUIN.CONF=1
PACMAN=0
DATASOFT.CONF=1
CARTOON.5=0
ACTIONAB3.CONF=2
FLIP.OUT=0
# 4
ACTIONHIJ1.CONF=2
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
# 4
ACTIONCD3.CONF=2
OTHER1.CONF=1
SPY.HUNTER=0
SHR15.CONF=5
# set 16
EPYX.CONF=1
NIBBLER=0
AB.CONF=1
ACTIONPQR3.CONF=2
ALIEN.AMBUSH=0
# 4
ACTIONCAPT.CONF=2
TUBEWAY=0
SHR6.CONF=5
# set 17
P1.CONF=1
PIEMAN=0
OTHER3.CONF=1
CARTOON.6=0
ACTIONHIJ3.CONF=2
CHAMP.LODERUN=0
# 4
# 2
FIREBIRD=0
SHR11.CONF=5
# broken demos
#FORMULA.1=0
#SPIDER.RAID=0
#DUNG.BEETLES=0
#STELLAR.7=0
[eof]
|
||||
#
# Mega-Attract-Mode configuration file
#
# 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/)
# 7 = single HGR file (|key| is arbitrary path from program root directory)
# 8 = single DHGR file (|key| is arbitrary path from program root directory)
# 9 = single SHR 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
#
# set 1
FAVORITES1.CONF=1
ACTIONCD1.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
CARTOON.1=0
DATAMOST.CONF=1
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
# 1
SPARE.CHANGE=0
SHR5.CONF=5
# set 6
MATTEL.CONF=1
THUNDERBOMBS=0
FAVORITES2.CONF=1
ACTIONBURG.CONF=2
VINDICATOR=0
# 4
ACTIONEFG2.CONF=2
S1.CONF=1
LODE.RUNNER=0
# 5
# set 7
EFG2.CONF=1
REPTON=0
DATAMOST.CONF=1
ACTIONCLR4.CONF=2
AGENT.USA=0
# 4
# 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
# 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
# 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
# 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
# 4
ACTIONEFG1.CONF=2
HIJKL2.CONF=1
GOONIES=0
# 5
# set 12
SEGA.CONF=1
LOST.TOMB=0
HIJKL.CONF=1
ACTIONEFG3.CONF=2
KARATEKA=0
# 4
ACTIONS2.CONF=2
S2.CONF=1
SNAKE.BYTE=0
SHR12.CONF=5
# set 13
ACTIVISION.CONF=1
DINO.EGGS=0
TAITO.CONF=1
ACTIONHIJ2.CONF=2
ALIEN.RAIN=0
# 4
ACTIONCD2.CONF=2
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
# 4
ACTIONHIJ1.CONF=2
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
# 4
ACTIONCD3.CONF=2
OTHER1.CONF=1
SPY.HUNTER=0
SHR15.CONF=5
# set 16
EPYX.CONF=1
NIBBLER=0
AB.CONF=1
ACTIONPQR3.CONF=2
ALIEN.AMBUSH=0
# 4
ACTIONCAPT.CONF=2
TUBEWAY=0
SHR6.CONF=5
# set 17
P1.CONF=1
PIEMAN=0
OTHER3.CONF=1
SPCARTOON.6=0
ACTIONHIJ3.CONF=2
CHAMP.LODERUN=0
# 4
# 2
FIREBIRD=0
SHR11.CONF=5
# broken demos
#FORMULA.1=0
#SPIDER.RAID=0
#DUNG.BEETLES=0
#STELLAR.7=0
[eof]
|
@ -1 +1 @@
|
||||
#
# Attract mode for Captain Goodnight
#
ARTWORK.SHR/CAPTN.GOODNIGHT=9
ACTION.HGR/CAPTN.GOODNIGHT=7
[eof]
|
||||
#
# Attract mode for Captain Goodnight
#
ARTWORK.SHR/CAPTN.GOODNIGHT=9
ACTION.HGR/CAPTN.GOODNIGHT=7
ACTION.HGR/CAPTN.GOODNIGH1=7
ACTION.HGR/CAPTN.GOODNIGH2=7
ACTION.HGR/CAPTN.GOODNIGH3=7
ACTION.HGR/CAPTN.GOODNIGH4=7
ACTION.HGR/CAPTN.GOODNIGH5=7
ACTION.HGR/CAPTN.GOODNIGH6=7
ACTION.HGR/CAPTN.GOODNIGH7=7
ACTION.HGR/CAPTN.GOODNIGH8=7
ACTION.HGR/CAPTN.GOODNIGH9=7
[eof]
|
@ -1 +1 @@
|
||||
#
# Attract mode for Spare Change
#
ARTWORK.SHR/SPARE.CHANGE=9
ACTION.HGR/SPARE.CHANGE=7
SPARE.CHANGE=0
[eof]
|
||||
#
# Attract mode for Spare Change
#
ARTWORK.SHR/SPARE.CHANGE=9
ACTION.HGR/SPARE.CHANGE=7
SPARE.CHANGE=0
SPCARTOON.1=0
SPCARTOON.2=0
SPCARTOON.3=0
SPCARTOON.4=0
SPCARTOON.5=0
SPCARTOON.6=0
[eof]
|
@ -17,12 +17,6 @@ BURGERTIME.4=Type(F1),AuxType(0C00),Access(C3)
|
||||
BURGERTIME.5=Type(F1),AuxType(6000),Access(C3)
|
||||
BUZZARD.BAIT=Type(06),AuxType(0300),Access(C3)
|
||||
BUZZARD.BAIT.1=Type(F1),AuxType(0000),Access(C3)
|
||||
CARTOON.1=Type(06),AuxType(02D0),Access(C3)
|
||||
CARTOON.2=Type(06),AuxType(02D0),Access(C3)
|
||||
CARTOON.3=Type(06),AuxType(02D0),Access(C3)
|
||||
CARTOON.4=Type(06),AuxType(02D0),Access(C3)
|
||||
CARTOON.5=Type(06),AuxType(02D0),Access(C3)
|
||||
CARTOON.6=Type(06),AuxType(02D0),Access(C3)
|
||||
CEILING.ZERO=Type(06),AuxType(0300),Access(C3)
|
||||
CEILING.ZERO.1=Type(F1),AuxType(0000),Access(C3)
|
||||
CHAMP.LODERUN=Type(06),AuxType(0800),Access(C3)
|
||||
@ -130,6 +124,12 @@ SPARE.CHANGE.K=Type(F1),AuxType(9600),Access(C3)
|
||||
SPARE.CHANGE.L=Type(F1),AuxType(9600),Access(C3)
|
||||
SPARE.CHANGE.S=Type(F1),AuxType(9600),Access(C3)
|
||||
SPARE.CHANGE.Z=Type(F1),AuxType(B400),Access(C3)
|
||||
SPCARTOON.1=Type(06),AuxType(02D0),Access(C3)
|
||||
SPCARTOON.2=Type(06),AuxType(02D0),Access(C3)
|
||||
SPCARTOON.3=Type(06),AuxType(02D0),Access(C3)
|
||||
SPCARTOON.4=Type(06),AuxType(02D0),Access(C3)
|
||||
SPCARTOON.5=Type(06),AuxType(02D0),Access(C3)
|
||||
SPCARTOON.6=Type(06),AuxType(02D0),Access(C3)
|
||||
SPIDER.RAID=Type(06),AuxType(0300),Access(C3)
|
||||
SPIDER.RAID.1=Type(F1),AuxType(0000),Access(C3)
|
||||
SPY.HUNTER=Type(06),AuxType(0B87),Access(C3)
|
||||
|
Loading…
Reference in New Issue
Block a user