Lots of updates to the readme. Add some bars along the left and the right to delineate the play area.

This commit is contained in:
Jeremy Rand 2021-02-12 17:31:30 -05:00
parent 10c8111397
commit 0e1e35c7cb
8 changed files with 175 additions and 14 deletions

View File

@ -14,6 +14,7 @@ This project would not have been a success without help from the Apple // commun
* Kelvin Sherlock for GoldenGate and Profuse which are the fundamental tools I used for building this project. * Kelvin Sherlock for GoldenGate and Profuse which are the fundamental tools I used for building this project.
* Ken Gagne and Juiced.GS for making tools like ORCA and GoldenGate available. * Ken Gagne and Juiced.GS for making tools like ORCA and GoldenGate available.
* Stephen Heumann for NetDisk which I used to transfer my latest build to my real GS for testing. * Stephen Heumann for NetDisk which I used to transfer my latest build to my real GS for testing.
* Ewen Wannop (Speccie) for his great network tools, especially Versions which I am using to assist in pushing out fixes and new versions of BuGS. I had a problem with the Check File Finder extension but very quickly he found the problem. I very much appreciate his support getting that problem fixed.
## Apple // Forever! ## Apple // Forever!

View File

@ -99,6 +99,7 @@
9D47CBE02547BEDB00CDA5CB /* gameMushroom.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = gameMushroom.s; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.asm.orcam; }; 9D47CBE02547BEDB00CDA5CB /* gameMushroom.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = gameMushroom.s; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.asm.orcam; };
9D47CC14254A698900CDA5CB /* gamePlayer.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = gamePlayer.s; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.asm.orcam; }; 9D47CC14254A698900CDA5CB /* gamePlayer.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = gamePlayer.s; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.asm.orcam; };
9D47CCBA25525C1A00CDA5CB /* genData.pl */ = {isa = PBXFileReference; lastKnownFileType = text.script.perl; path = genData.pl; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.perl; }; 9D47CCBA25525C1A00CDA5CB /* genData.pl */ = {isa = PBXFileReference; lastKnownFileType = text.script.perl; path = genData.pl; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.perl; };
9D4EF43E25D7006A001BEDB0 /* tar */ = {isa = PBXFileReference; lastKnownFileType = file; path = tar; sourceTree = "<group>"; };
9D53E5B32562320300E10169 /* gameShot.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = gameShot.s; sourceTree = "<group>"; }; 9D53E5B32562320300E10169 /* gameShot.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = gameShot.s; sourceTree = "<group>"; };
9D53E6472565939300E10169 /* BUGS.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = BUGS.md; sourceTree = "<group>"; }; 9D53E6472565939300E10169 /* BUGS.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = BUGS.md; sourceTree = "<group>"; };
9D62AF3B249871A300348F45 /* colour.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = colour.s; sourceTree = "<group>"; }; 9D62AF3B249871A300348F45 /* colour.s */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; path = colour.s; sourceTree = "<group>"; };
@ -230,6 +231,7 @@
9D1716962491C49300C83148 /* config.txt */, 9D1716962491C49300C83148 /* config.txt */,
9D1716982491C49300C83148 /* createDiskImage */, 9D1716982491C49300C83148 /* createDiskImage */,
9D17169A2491C49300C83148 /* head.mk */, 9D17169A2491C49300C83148 /* head.mk */,
9D4EF43E25D7006A001BEDB0 /* tar */,
9D17169C2491C49300C83148 /* launchEmulator */, 9D17169C2491C49300C83148 /* launchEmulator */,
9D6DB18625A411DA00CDBF05 /* BuGS.2mg */, 9D6DB18625A411DA00CDBF05 /* BuGS.2mg */,
9D17169E2491C49300C83148 /* orca-asm */, 9D17169E2491C49300C83148 /* orca-asm */,

View File

@ -132,11 +132,19 @@ sub gameXYToTileOffset
} }
sub rhsXYToTileNum
{
my ($x, $y) = @_;
return $gEquates{"RHS_FIRST_TILE"} + ($y * $gEquates{"RHS_NUM_TILES_WIDE"}) + $x;
}
sub rhsXYToTileOffset sub rhsXYToTileOffset
{ {
my ($x, $y) = @_; my ($x, $y) = @_;
return ($gEquates{"RHS_FIRST_TILE"} + ($y * $gEquates{"RHS_NUM_TILES_WIDE"}) + $x) * $gEquates{"SIZEOF_TILE_INFO"}; return rhsXYToTileNum($x, $y) * $gEquates{"SIZEOF_TILE_INFO"};
} }
@ -181,6 +189,15 @@ sub addLhsGameTile
} }
sub addRhsGameTile
{
my ($x, $y, $tileType) = @_;
my $tileNum = rhsXYToTileNum($x, $y);
$gTileType[$tileNum] = $tileType;
addDirtyNonGameTile($tileNum);
}
sub addLhsGameString sub addLhsGameString
{ {
my ($x, $y, $string) = @_; my ($x, $y, $string) = @_;
@ -468,6 +485,12 @@ sub initNonGameTiles
$x = 2; $x = 2;
$y = 21; $y = 21;
addLhsGameString($x, $y, "LIVES:"); addLhsGameString($x, $y, "LIVES:");
for (my $tileY = 0; $tileY < $gEquates{"TOTAL_TILES_TALL"}; $tileY++)
{
addLhsGameTile($gEquates{"LHS_NUM_TILES_WIDE"} - 1, $tileY, "TILE_RIGHT_BAR");
addRhsGameTile(0, $tileY, "TILE_LEFT_BAR");
}
} }

View File

@ -104,11 +104,13 @@ TILE_NUMBER_9 gequ 48*4
TILE_SOLID1 gequ 49*4 TILE_SOLID1 gequ 49*4
TILE_SOLID2 gequ 50*4 TILE_SOLID2 gequ 50*4
TILE_SOLID3 gequ 51*4 TILE_SOLID3 gequ 51*4
TILE_RIGHT_BAR gequ 52*4
TILE_LEFT_BAR gequ 53*4
TILE_PLAYER gequ 52*4 TILE_PLAYER gequ 54*4
TILE_LETTER_WHITE_U gequ 53*4 TILE_LETTER_WHITE_U gequ 55*4
TILE_LETTER_GREEN_G gequ 54*4 TILE_LETTER_GREEN_G gequ 56*4
TILE_LETTER_GREEN_S gequ 55*4 TILE_LETTER_GREEN_S gequ 57*4
TILE_POISON_A_MUSHROOM gequ TILE_POISON_MUSHROOM4-TILE_MUSHROOM4 TILE_POISON_A_MUSHROOM gequ TILE_POISON_MUSHROOM4-TILE_MUSHROOM4
@ -245,6 +247,8 @@ tileJumpTable dc a4'solid0'
dc a4'solid1' dc a4'solid1'
dc a4'solid2' dc a4'solid2'
dc a4'solid3' dc a4'solid3'
dc a4'rightBar'
dc a4'leftBar'
dc a4'drawPlayer' dc a4'drawPlayer'
dc a4'letterWhiteU' dc a4'letterWhiteU'
dc a4'letterGreenG' dc a4'letterGreenG'

Binary file not shown.

View File

@ -1,10 +1,5 @@
#!/bin/sh #!/bin/sh
MOUNTDIR=/tmp/a2gs_mount.$$
TMPDISKIMAGE=/tmp/a2gs_diskimage_$$.2mg
TEMPLATEDISKIMAGE=make/BuGS.2mg
if [ $# -lt 3 ] if [ $# -lt 3 ]
then then
echo USAGE: $0 diskimage file directory echo USAGE: $0 diskimage file directory
@ -19,10 +14,18 @@ shift
DISKIMAGEDEST="$1" DISKIMAGEDEST="$1"
shift shift
DEST="${MOUNTDIR}/${DISKIMAGEDEST}"
COPYDIRS=$* COPYDIRS=$*
PROGRAM=`basename "$FILE"`
TMPDIR=/tmp/a2gs_mount.$$
MOUNTDIR="${TMPDIR}/$PROGRAM"
TMPDISKIMAGE=/tmp/a2gs_diskimage_$$.2mg
TMPARCHIVE=/tmp/s2gs_archive_$$.shk
TEMPLATEDISKIMAGE="make/${PROGRAM}.2mg"
ARCHIVE=`dirname "$DISKIMAGE"`/"${PROGRAM}.shk"
DEST="${MOUNTDIR}/${DISKIMAGEDEST}"
cleanupAndExit() cleanupAndExit()
{ {
umount "$MOUNTDIR" 2> /dev/null umount "$MOUNTDIR" 2> /dev/null
@ -45,6 +48,7 @@ then
cleanupAndExit cleanupAndExit
fi fi
mkdir "$TMPDIR"
mkdir "$MOUNTDIR" mkdir "$MOUNTDIR"
if [ $? != 0 ] if [ $? != 0 ]
then then
@ -86,9 +90,17 @@ do
cp "$FILEORDIR" "${MOUNTDIR}/$FILEORDIR" cp "$FILEORDIR" "${MOUNTDIR}/$FILEORDIR"
fi fi
done done
cd "$OLDDIR"
done done
cd "$TMPDIR"
$ORCA "$OLDDIR/make/tar" cf "$TMPARCHIVE" "$PROGRAM"
if [ $? != 0 ]
then
echo Unable to create archive.
cleanupAndExit
fi
cd "$OLDDIR"
RETRIES=0 RETRIES=0
while [ $RETRIES -lt 5 ] while [ $RETRIES -lt 5 ]
do do
@ -115,14 +127,23 @@ then
cleanupAndExit cleanupAndExit
fi fi
cp "$TMPARCHIVE" "$ARCHIVE"
if [ $? != 0 ]
then
echo Unable to copy the archive to the destination.
cleanupAndExit
fi
# This is a special case for my personal build environment. If I can find my home directory # This is a special case for my personal build environment. If I can find my home directory
# and the Sites directory in it, then also put a copy of the build there also. This makes it # and the Sites directory in it, then also put a copy of the build there also. This makes it
# available over http to my real GS so I can test it there also. # available over http to my real GS so I can test it there also.
if [ -d /Users/jrand/Sites ] if [ -d /Users/jrand/Sites ]
then then
cp "$TMPDISKIMAGE" /Users/jrand/Sites/BuGS.2mg cp "$TMPDISKIMAGE" "/Users/jrand/Sites/$PROGRAM.2mg"
cp "$TMPARCHIVE" "/Users/jrand/Sites/$PROGRAM.shk"
fi fi
rm -f "$TMPDISKIMAGE" rm -f "$TMPDISKIMAGE"
rmdir "$MOUNTDIR" rm -f "$TMPARCHIVE"
rm -rf "$TMPDIR"
exit 0 exit 0

BIN
BuGS/make/tar Normal file

Binary file not shown.

View File

@ -235,5 +235,115 @@ solid3 entry
_spriteFooter _spriteFooter
rtl rtl
rightBar entry
_spriteHeader
ldx #$0000
ldy #$2002
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
_spriteFooter
rtl
leftBar entry
_spriteHeader
ldx #$2002
ldy #$0000
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
adc #$00a0
tcs
phy
phx
_spriteFooter
rtl
end end