Update the build environment for this project to the latest.
This commit is contained in:
parent
e04819b4b1
commit
c5afd07c71
|
@ -18,3 +18,5 @@ The abCalc binary is a shell command you can use from GNO/ME:
|
||||||
And abCalcNDA is a new desk accessory which you can use from within GS/OS applications:
|
And abCalcNDA is a new desk accessory which you can use from within GS/OS applications:
|
||||||
|
|
||||||
![abCalc NDA Screenshot](/abCalc/screenshots/abCalcNDA.png "abCalc NDA Screenshot")
|
![abCalc NDA Screenshot](/abCalc/screenshots/abCalcNDA.png "abCalc NDA Screenshot")
|
||||||
|
|
||||||
|
[abCalc NDA Documentation](/abCalc/abCalcHelp.md)
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -2,6 +2,6 @@
|
||||||
<Workspace
|
<Workspace
|
||||||
version = "1.0">
|
version = "1.0">
|
||||||
<FileRef
|
<FileRef
|
||||||
location = "self:abCalc.xcodeproj">
|
location = "self:">
|
||||||
</FileRef>
|
</FileRef>
|
||||||
</Workspace>
|
</Workspace>
|
||||||
|
|
Binary file not shown.
|
@ -61,7 +61,7 @@
|
||||||
isEnabled = "YES">
|
isEnabled = "YES">
|
||||||
</CommandLineArgument>
|
</CommandLineArgument>
|
||||||
<CommandLineArgument
|
<CommandLineArgument
|
||||||
argument = "$PROJECT_DIR/abCalc"
|
argument = ""$PROJECT_DIR/abCalc""
|
||||||
isEnabled = "YES">
|
isEnabled = "YES">
|
||||||
</CommandLineArgument>
|
</CommandLineArgument>
|
||||||
<CommandLineArgument
|
<CommandLineArgument
|
||||||
|
|
|
@ -1,91 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<Scheme
|
|
||||||
LastUpgradeVersion = "0830"
|
|
||||||
version = "1.3">
|
|
||||||
<BuildAction
|
|
||||||
parallelizeBuildables = "YES"
|
|
||||||
buildImplicitDependencies = "YES">
|
|
||||||
<BuildActionEntries>
|
|
||||||
<BuildActionEntry
|
|
||||||
buildForTesting = "YES"
|
|
||||||
buildForRunning = "YES"
|
|
||||||
buildForProfiling = "YES"
|
|
||||||
buildForArchiving = "YES"
|
|
||||||
buildForAnalyzing = "YES">
|
|
||||||
<BuildableReference
|
|
||||||
BuildableIdentifier = "primary"
|
|
||||||
BlueprintIdentifier = "9D1B83DB1F677D78006AA28A"
|
|
||||||
BuildableName = "doNotBuild"
|
|
||||||
BlueprintName = "doNotBuild"
|
|
||||||
ReferencedContainer = "container:abCalc.xcodeproj">
|
|
||||||
</BuildableReference>
|
|
||||||
</BuildActionEntry>
|
|
||||||
</BuildActionEntries>
|
|
||||||
</BuildAction>
|
|
||||||
<TestAction
|
|
||||||
buildConfiguration = "Debug"
|
|
||||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
|
||||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
|
||||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
|
||||||
<Testables>
|
|
||||||
</Testables>
|
|
||||||
<MacroExpansion>
|
|
||||||
<BuildableReference
|
|
||||||
BuildableIdentifier = "primary"
|
|
||||||
BlueprintIdentifier = "9D1B83DB1F677D78006AA28A"
|
|
||||||
BuildableName = "doNotBuild"
|
|
||||||
BlueprintName = "doNotBuild"
|
|
||||||
ReferencedContainer = "container:abCalc.xcodeproj">
|
|
||||||
</BuildableReference>
|
|
||||||
</MacroExpansion>
|
|
||||||
<AdditionalOptions>
|
|
||||||
</AdditionalOptions>
|
|
||||||
</TestAction>
|
|
||||||
<LaunchAction
|
|
||||||
buildConfiguration = "Debug"
|
|
||||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
|
||||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
|
||||||
launchStyle = "0"
|
|
||||||
useCustomWorkingDirectory = "NO"
|
|
||||||
ignoresPersistentStateOnLaunch = "NO"
|
|
||||||
debugDocumentVersioning = "YES"
|
|
||||||
debugServiceExtension = "internal"
|
|
||||||
allowLocationSimulation = "YES">
|
|
||||||
<BuildableProductRunnable
|
|
||||||
runnableDebuggingMode = "0">
|
|
||||||
<BuildableReference
|
|
||||||
BuildableIdentifier = "primary"
|
|
||||||
BlueprintIdentifier = "9D1B83DB1F677D78006AA28A"
|
|
||||||
BuildableName = "doNotBuild"
|
|
||||||
BlueprintName = "doNotBuild"
|
|
||||||
ReferencedContainer = "container:abCalc.xcodeproj">
|
|
||||||
</BuildableReference>
|
|
||||||
</BuildableProductRunnable>
|
|
||||||
<AdditionalOptions>
|
|
||||||
</AdditionalOptions>
|
|
||||||
</LaunchAction>
|
|
||||||
<ProfileAction
|
|
||||||
buildConfiguration = "Release"
|
|
||||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
|
||||||
savedToolIdentifier = ""
|
|
||||||
useCustomWorkingDirectory = "NO"
|
|
||||||
debugDocumentVersioning = "YES">
|
|
||||||
<BuildableProductRunnable
|
|
||||||
runnableDebuggingMode = "0">
|
|
||||||
<BuildableReference
|
|
||||||
BuildableIdentifier = "primary"
|
|
||||||
BlueprintIdentifier = "9D1B83DB1F677D78006AA28A"
|
|
||||||
BuildableName = "doNotBuild"
|
|
||||||
BlueprintName = "doNotBuild"
|
|
||||||
ReferencedContainer = "container:abCalc.xcodeproj">
|
|
||||||
</BuildableReference>
|
|
||||||
</BuildableProductRunnable>
|
|
||||||
</ProfileAction>
|
|
||||||
<AnalyzeAction
|
|
||||||
buildConfiguration = "Debug">
|
|
||||||
</AnalyzeAction>
|
|
||||||
<ArchiveAction
|
|
||||||
buildConfiguration = "Release"
|
|
||||||
revealArchiveInOrganizer = "YES">
|
|
||||||
</ArchiveAction>
|
|
||||||
</Scheme>
|
|
|
@ -4,6 +4,11 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>SchemeUserState</key>
|
<key>SchemeUserState</key>
|
||||||
<dict>
|
<dict>
|
||||||
|
<key>Archive.xcscheme_^#shared#^_</key>
|
||||||
|
<dict>
|
||||||
|
<key>orderHint</key>
|
||||||
|
<integer>2</integer>
|
||||||
|
</dict>
|
||||||
<key>Binary.xcscheme_^#shared#^_</key>
|
<key>Binary.xcscheme_^#shared#^_</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
|
@ -12,7 +17,7 @@
|
||||||
<key>DiskImage.xcscheme_^#shared#^_</key>
|
<key>DiskImage.xcscheme_^#shared#^_</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>orderHint</key>
|
<key>orderHint</key>
|
||||||
<integer>2</integer>
|
<integer>4</integer>
|
||||||
</dict>
|
</dict>
|
||||||
<key>abCalc.xcscheme_^#shared#^_</key>
|
<key>abCalc.xcscheme_^#shared#^_</key>
|
||||||
<dict>
|
<dict>
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
all:
|
all:
|
||||||
make -f nda.mk gen
|
|
||||||
make -f nda.mk build
|
|
||||||
make -f shell.mk gen
|
make -f shell.mk gen
|
||||||
make -f shell.mk build
|
make -f shell.mk build
|
||||||
|
make -f nda.mk gen
|
||||||
|
make -f nda.mk build
|
||||||
|
|
||||||
gen:
|
gen:
|
||||||
make -f nda.mk gen
|
|
||||||
make -f shell.mk gen
|
make -f shell.mk gen
|
||||||
|
make -f nda.mk gen
|
||||||
|
|
||||||
build:
|
build:
|
||||||
make -f nda.mk build
|
|
||||||
make -f shell.mk build
|
make -f shell.mk build
|
||||||
|
make -f nda.mk build
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
make -f shell.mk clean
|
make -f shell.mk clean
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,4 +1,4 @@
|
||||||
# GSplus configuration file version 0.14
|
# GSport configuration file version 0.31
|
||||||
|
|
||||||
s5d1 =
|
s5d1 =
|
||||||
s5d2 =
|
s5d2 =
|
||||||
|
@ -6,8 +6,9 @@ s5d2 =
|
||||||
s6d1 =
|
s6d1 =
|
||||||
s6d2 =
|
s6d2 =
|
||||||
|
|
||||||
s7d1 = /Users/jrand/Library/Developer/Xcode/DerivedData/abCalc-bpuqqdowxwsrymetcyxvfclvynre/Build/Products/Debug/abCalcNDA.2mg
|
s7d1 =
|
||||||
|
|
||||||
|
g_joystick_type = 0
|
||||||
g_limit_speed = 0
|
g_limit_speed = 0
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,98 +1,67 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
|
||||||
MOUNTDIR=/tmp/a2gs_mount.$$
|
|
||||||
TMPDISKIMAGE=/tmp/a2gs_diskimage_$$.2mg
|
|
||||||
TEMPLATEDISKIMAGE=make/system601.2mg
|
|
||||||
|
|
||||||
if [ $# -lt 3 ]
|
if [ $# -lt 3 ]
|
||||||
then
|
then
|
||||||
echo USAGE: $0 diskimage file directory
|
echo USAGE: $0 diskimage bootimage file [bootdest]
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
DISKIMAGE="$1"
|
DISKIMAGE="$1"
|
||||||
shift
|
shift
|
||||||
|
|
||||||
|
DESTBOOTIMAGE="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
FILE="$1"
|
FILE="$1"
|
||||||
shift
|
shift
|
||||||
|
|
||||||
DISKIMAGEDEST="$1"
|
BOOTCOPYPATH="$1"
|
||||||
shift
|
|
||||||
DEST="${MOUNTDIR}/${DISKIMAGEDEST}"
|
|
||||||
|
|
||||||
COPYDIRS=$*
|
PROGRAM=`basename "$FILE"`
|
||||||
|
TMPDIR=/tmp/a2gs_mount.$$
|
||||||
|
MOUNTDIR="${TMPDIR}/$PROGRAM"
|
||||||
|
TMPDISKIMAGE=/tmp/a2gs_diskimage_$$.2mg
|
||||||
|
TMPBOOTIMAGE=/tmp/a2gs_bootimage_$$.2mg
|
||||||
|
TMPARCHIVE=/tmp/s2gs_archive_$$.shk
|
||||||
|
TEMPLATEDISKIMAGE="make/empty.2mg"
|
||||||
|
TEMPLATEBOOTIMAGE="make/$BOOTIMAGE"
|
||||||
|
ARCHIVE=`dirname "$DISKIMAGE"`/"abCalc.shk"
|
||||||
|
|
||||||
cleanupAndExit()
|
# It looks like on Linux, the cp command needs a special argument to preserve the resource fork. This isn't ideal
|
||||||
|
# but for now, if uname is Darwin, then this is MacOS and we don't need any cp args. If not Darwin, then assume
|
||||||
|
# this is Linux and ask for extended attributes to be preserved through the copy.
|
||||||
|
#
|
||||||
|
# Ultimately, it could be that other platforms (BSD, does Solaris still exist?) or even other Linux versions or
|
||||||
|
# distributions need different arguments for this rather special thing. If true, this may need to be a build time
|
||||||
|
# option which can be set.
|
||||||
|
if [ "`uname`" = Darwin ]
|
||||||
|
then
|
||||||
|
CPARGS=""
|
||||||
|
else
|
||||||
|
CPARGS="--preserve=xattr"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
printErrorAndExit()
|
||||||
{
|
{
|
||||||
|
echo "`pwd`/Makefile:0:0: error: $*" >&2
|
||||||
umount "$MOUNTDIR" 2> /dev/null
|
umount "$MOUNTDIR" 2> /dev/null
|
||||||
rm -f "$TMPDISKIMAGE" 2> /dev/null
|
rm -f "$TMPDISKIMAGE" 2> /dev/null
|
||||||
|
rm -f "$TMPBOOTIMAGE" 2> /dev/null
|
||||||
|
rm -f "$TMPARCHIVE" 2> /dev/null
|
||||||
rm -f "$DISKIMAGE" 2> /dev/null
|
rm -f "$DISKIMAGE" 2> /dev/null
|
||||||
rmdir "$MOUNTDIR" 2> /dev/null
|
rm -f "$DESTBOOTIMAGE" 2> /dev/null
|
||||||
|
rm -rf "$TMPDIR" 2> /dev/null
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ ! -f "$TEMPLATEDISKIMAGE" ]
|
|
||||||
then
|
|
||||||
echo Unable to find the template disk image, $TEMPLATEDISKIMAGE
|
|
||||||
cleanupAndExit
|
|
||||||
fi
|
|
||||||
|
|
||||||
cp "$TEMPLATEDISKIMAGE" "$TMPDISKIMAGE"
|
unmount()
|
||||||
if [ $? != 0 ]
|
{
|
||||||
then
|
RETRIES=0
|
||||||
echo Unable to copy template disk image.
|
while [ $RETRIES -lt 5 ]
|
||||||
cleanupAndExit
|
|
||||||
fi
|
|
||||||
|
|
||||||
mkdir "$MOUNTDIR"
|
|
||||||
if [ $? != 0 ]
|
|
||||||
then
|
|
||||||
echo Unable to create the mount directory.
|
|
||||||
cleanupAndExit
|
|
||||||
fi
|
|
||||||
|
|
||||||
profuse -orw "$TMPDISKIMAGE" "$MOUNTDIR"
|
|
||||||
if [ $? != 0 ]
|
|
||||||
then
|
|
||||||
echo Unable to mount the disk image.
|
|
||||||
cleanupAndExit
|
|
||||||
fi
|
|
||||||
|
|
||||||
cp "$FILE" "$DEST"
|
|
||||||
if [ $? != 0 ]
|
|
||||||
then
|
|
||||||
echo Unable to copy the file to the disk image.
|
|
||||||
cleanupAndExit
|
|
||||||
fi
|
|
||||||
|
|
||||||
OLDDIR=`pwd`
|
|
||||||
for COPYDIR in $COPYDIRS
|
|
||||||
do
|
|
||||||
cd "$COPYDIR"
|
|
||||||
if [ $? != 0 ]
|
|
||||||
then
|
|
||||||
echo Unable to find $COPYDIR
|
|
||||||
cleanupAndExit
|
|
||||||
fi
|
|
||||||
|
|
||||||
find . -print | while read FILEORDIR
|
|
||||||
do
|
do
|
||||||
if [ -d "$FILEORDIR" ]
|
umount "$1"
|
||||||
then
|
|
||||||
mkdir -p "${MOUNTDIR}/$FILEORDIR"
|
|
||||||
elif [ -f "$FILEORDIR" ]
|
|
||||||
then
|
|
||||||
cp "$FILEORDIR" "${MOUNTDIR}/$FILEORDIR"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
cd "$OLDDIR"
|
|
||||||
done
|
|
||||||
|
|
||||||
RETRIES=0
|
|
||||||
while [ $RETRIES -lt 5 ]
|
|
||||||
do
|
|
||||||
umount "$MOUNTDIR"
|
|
||||||
if [ $? -eq 0 ]
|
if [ $? -eq 0 ]
|
||||||
then
|
then
|
||||||
break
|
break
|
||||||
|
@ -100,21 +69,192 @@ do
|
||||||
|
|
||||||
RETRIES=`expr $RETRIES + 1`
|
RETRIES=`expr $RETRIES + 1`
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ $RETRIES -ge 5 ]
|
if [ $RETRIES -ge 5 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to unmount the disk image."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
validateProDOSName()
|
||||||
|
{
|
||||||
|
NAME=`basename $1`
|
||||||
|
echo $NAME | egrep '^[a-zA-Z][a-zA-Z0-9.]{0,14}$' > /dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
mkdirProDOS()
|
||||||
|
{
|
||||||
|
validateProDOSName "$1"
|
||||||
|
if [ $? -ne 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Invalid ProDOS name of directory `basename $1`. ProDOS names must be 1 to 15 characters, start with a letter and only letters, numbers and a period can be used in the name."
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p "$1"
|
||||||
|
if [ $? -ne 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to create directory $1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
cpProDOS()
|
||||||
|
{
|
||||||
|
validateProDOSName "$2"
|
||||||
|
if [ $? -ne 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Invalid ProDOS name of file `basename $2`. ProDOS names must be 1 to 15 characters, start with a letter and only letters, numbers and a period can be used in the name."
|
||||||
|
fi
|
||||||
|
|
||||||
|
cp $CPARGS "$1" "$2"
|
||||||
|
if [ $? -ne 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to create directory $1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
copyDirs()
|
||||||
|
{
|
||||||
|
OLDDIR=`pwd`
|
||||||
|
for COPYDIR in $*
|
||||||
|
do
|
||||||
|
cd "$COPYDIR"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to find $COPYDIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
find . -print | while read FILEORDIR
|
||||||
|
do
|
||||||
|
if [ "$FILEORDIR" = "." ]
|
||||||
|
then
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
if [ -d "$FILEORDIR" ]
|
||||||
|
then
|
||||||
|
mkdirProDOS "${MOUNTDIR}/$FILEORDIR"
|
||||||
|
elif [ -f "$FILEORDIR" ]
|
||||||
|
then
|
||||||
|
cpProDOS "$FILEORDIR" "${MOUNTDIR}/$FILEORDIR"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
cd "$OLDDIR"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if [ ! -f "$TEMPLATEDISKIMAGE" ]
|
||||||
then
|
then
|
||||||
echo Unable to unmount the disk image.
|
printErrorAndExit "Unable to find the template disk image, $TEMPLATEDISKIMAGE"
|
||||||
cleanupAndExit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ ! -f "$TEMPLATEBOOTIMAGE" ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to find the template boot image, $TEMPLATEBOOTIMAGE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir "$TMPDIR"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to create the mount directory."
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir "$MOUNTDIR"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to create the mount directory."
|
||||||
|
fi
|
||||||
|
|
||||||
|
cp "$TEMPLATEBOOTIMAGE" "$TMPBOOTIMAGE"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to copy template boot image."
|
||||||
|
fi
|
||||||
|
if [ ! -z "$COPYBOOTDIRS" ] || [ ! -z "BOOTCOPYPATH" ]
|
||||||
|
then
|
||||||
|
profuse -orw "$TMPBOOTIMAGE" "$MOUNTDIR"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to mount the boot image."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -z "$BOOTCOPYPATH" ]
|
||||||
|
then
|
||||||
|
cpProDOS "$FILE" "$MOUNTDIR/$BOOTCOPYPATH"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to copy the file to the boot image."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
copyDirs $COPYBOOTDIRS
|
||||||
|
|
||||||
|
unmount "$MOUNTDIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
cp "$TEMPLATEDISKIMAGE" "$TMPDISKIMAGE"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to copy template disk image."
|
||||||
|
fi
|
||||||
|
|
||||||
|
profuse -orw "$TMPDISKIMAGE" "$MOUNTDIR"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to mount the disk image."
|
||||||
|
fi
|
||||||
|
|
||||||
|
cpProDOS "$FILE" "$MOUNTDIR"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to copy the file to the disk image."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Special case for this project to copy the shell command to the distribution also.
|
||||||
|
SHELLFILE=`echo "$FILE" | sed 's/NDA$//'`
|
||||||
|
cpProDOS "$SHELLFILE" "$MOUNTDIR"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to copy the shell file to the disk image."
|
||||||
|
fi
|
||||||
|
|
||||||
|
copyDirs $COPYDIRS
|
||||||
|
|
||||||
|
OLDDIR=`pwd`
|
||||||
|
cd "$TMPDIR"
|
||||||
|
$ORCA "$OLDDIR/make/tar" cf "$TMPARCHIVE" "$PROGRAM"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to create archive."
|
||||||
|
fi
|
||||||
|
cd "$OLDDIR"
|
||||||
|
|
||||||
|
unmount "$MOUNTDIR"
|
||||||
|
|
||||||
cp "$TMPDISKIMAGE" "$DISKIMAGE"
|
cp "$TMPDISKIMAGE" "$DISKIMAGE"
|
||||||
if [ $? != 0 ]
|
if [ $? != 0 ]
|
||||||
then
|
then
|
||||||
echo Unable to copy the disk image to the destination.
|
printErrorAndExit "Unable to copy the disk image to the destination."
|
||||||
cleanupAndExit
|
fi
|
||||||
|
|
||||||
|
cp "$TMPBOOTIMAGE" "$DESTBOOTIMAGE"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to copy the boot image to the destination."
|
||||||
|
fi
|
||||||
|
|
||||||
|
cp "$TMPARCHIVE" "$ARCHIVE"
|
||||||
|
if [ $? != 0 ]
|
||||||
|
then
|
||||||
|
printErrorAndExit "Unable to copy the archive to the destination."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -f "$TMPDISKIMAGE"
|
rm -f "$TMPDISKIMAGE"
|
||||||
rmdir "$MOUNTDIR"
|
rm -f "$TMPBOOTIMAGE"
|
||||||
|
rm -f "$TMPARCHIVE"
|
||||||
|
rm -rf "$TMPDIR"
|
||||||
exit 0
|
exit 0
|
||||||
|
|
Binary file not shown.
|
@ -72,10 +72,40 @@ DESKTOP_RES_MODE=640
|
||||||
MESSAGE_CENTER=0
|
MESSAGE_CENTER=0
|
||||||
|
|
||||||
GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus
|
GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus
|
||||||
|
GSPLUSARGS=
|
||||||
GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport
|
GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport
|
||||||
|
GSPORTARGS=
|
||||||
|
MAME=/Applications/Ample.app/Contents/MacOS/mame64
|
||||||
|
MAMELIB=$(HOME)/Library/Application Support/Ample
|
||||||
|
MAMEARGS=apple2gs -skip_gameinfo -speed 2 -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202
|
||||||
|
|
||||||
export GSPLUS
|
export GSPLUS
|
||||||
|
export GSPLUSARGS
|
||||||
export GSPORT
|
export GSPORT
|
||||||
|
export GSPORTARGS
|
||||||
|
export MAME
|
||||||
|
export MAMELIB
|
||||||
|
export MAMEARGS
|
||||||
|
|
||||||
|
ifneq (,$(wildcard $GSPLUS))
|
||||||
|
EMULATOR=gsplus
|
||||||
|
else ifneq (,$(wildcard $MAME))
|
||||||
|
EMULATOR=mame
|
||||||
|
else ifneq (,$(wildcard $GSPORT))
|
||||||
|
EMULATOR=gsport
|
||||||
|
else
|
||||||
|
EMULATOR=gsplus
|
||||||
|
endif
|
||||||
|
|
||||||
|
export EMULATOR
|
||||||
|
|
||||||
|
BOOTIMAGE=system601.2mg
|
||||||
|
export BOOTIMAGE
|
||||||
|
|
||||||
|
COPYDIRS=
|
||||||
|
export COPYDIRS
|
||||||
|
COPYBOOTDIRS=
|
||||||
|
export COPYBOOTDIRS
|
||||||
|
|
||||||
XCODE_PATH=/Applications/Xcode.app
|
XCODE_PATH=/Applications/Xcode.app
|
||||||
XCODE_INFO=$(XCODE_PATH)/Contents/Info.plist
|
XCODE_INFO=$(XCODE_PATH)/Contents/Info.plist
|
||||||
|
@ -90,6 +120,6 @@ XCODE_PLUGIN_COMPATIBILITY=DVTPlugInCompatibilityUUID
|
||||||
|
|
||||||
all:
|
all:
|
||||||
$(MKDIR) $(OBJDIR) $(GENDIR) $(TARGETDIR)
|
$(MKDIR) $(OBJDIR) $(GENDIR) $(TARGETDIR)
|
||||||
@make gen
|
@make -f $(firstword $(MAKEFILE_LIST)) gen
|
||||||
@make build
|
@make -f $(firstword $(MAKEFILE_LIST)) build
|
||||||
|
|
||||||
|
|
|
@ -1,18 +1,29 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
if [ ! -z "$GSPLUS" ] && [ -x "$GSPLUS" ]
|
TMPDIR="/tmp/a2gs_emulator.$$"
|
||||||
then
|
|
||||||
EMULATORPATH="$GSPLUS"
|
|
||||||
elif [ ! -z "$GSPORT" ] && [ -x "$GSPORT" ]
|
|
||||||
then
|
|
||||||
EMULATORPATH="$GSPORT"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$EMULATORPATH" ]
|
cleanupAndExit()
|
||||||
|
{
|
||||||
|
cd
|
||||||
|
if [ ! -z $PID ]
|
||||||
|
then
|
||||||
|
kill $PID 2> /dev/null
|
||||||
|
fi
|
||||||
|
rm -rf $TMPDIR
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
createConfigTxt()
|
||||||
|
{
|
||||||
|
mkdir "$TMPDIR"
|
||||||
|
sed "s:^s7d1 *=.*$:s7d1 = $BOOTIMAGE:
|
||||||
|
s:^s5d1 *=.*:s5d1 = $DISKIMAGE:" < make/config.txt > "$TMPDIR/config.txt"
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ $# -ne 2 ]
|
||||||
then
|
then
|
||||||
echo Unable to find GSplus or GSport at these locations.
|
echo USAGE $0: diskimage bootimage
|
||||||
echo " GSPLUS=$GSPLUS"
|
|
||||||
echo " GSPORT=$GSPORT"
|
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -22,15 +33,52 @@ then
|
||||||
DISKIMAGE="$PWD/$DISKIMAGE"
|
DISKIMAGE="$PWD/$DISKIMAGE"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cd make
|
BOOTIMAGE="$2"
|
||||||
sed -i "" "s:^s7d1 *=.*$:s7d1 = $DISKIMAGE:" config.txt
|
if echo $BOOTIMAGE | grep -v '^/' > /dev/null
|
||||||
|
then
|
||||||
|
BOOTIMAGE="$PWD/$BOOTIMAGE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$EMULATOR" in
|
||||||
|
gsplus)
|
||||||
|
EMULATORPATH="$GSPLUS"
|
||||||
|
EMULATORARGS="$GSPLUSARGS"
|
||||||
|
EMULATORDIR="$TMPDIR"
|
||||||
|
createConfigTxt
|
||||||
|
;;
|
||||||
|
gsport)
|
||||||
|
EMULATORPATH="$GSPORT"
|
||||||
|
EMULATORARGS="$GSPORTARGS"
|
||||||
|
EMULATORDIR="$TMPDIR"
|
||||||
|
createConfigTxt
|
||||||
|
;;
|
||||||
|
mame)
|
||||||
|
EMULATORPATH="$MAME"
|
||||||
|
EMULATORARGS="$MAMEARGS -hard1 "$BOOTIMAGE" -flop3 "$DISKIMAGE""
|
||||||
|
EMULATORDIR="$MAMELIB"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo Invalid emulator specified, \"$EMULATOR\"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ ! -x "$EMULATORPATH" ]
|
||||||
|
then
|
||||||
|
echo Unable to find $EMULATOR at $EMULATORPATH
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d "$EMULATORDIR" ]
|
||||||
|
then
|
||||||
|
echo Unable to find $EMULATOR library at $EMULATORDIR
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd "$EMULATORDIR"
|
||||||
# This magic ensure that clicking stop in Xcode results in the emulator terminating.
|
# This magic ensure that clicking stop in Xcode results in the emulator terminating.
|
||||||
|
"$EMULATORPATH" $EMULATORARGS &
|
||||||
$EMULATORPATH &
|
|
||||||
PID=$!
|
PID=$!
|
||||||
|
|
||||||
trap 'kill $PID' SIGTERM SIGINT SIGHUP EXIT
|
trap cleanupAndExit SIGTERM SIGINT SIGHUP EXIT
|
||||||
wait
|
wait
|
||||||
|
|
||||||
exit 0
|
|
||||||
|
|
Binary file not shown.
|
@ -1,6 +1,7 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
TMPFILE=/tmp/orca-macgen.$$
|
TMPFILE=/tmp/orca-macgen.$$
|
||||||
|
ERROUTPUT=/tmp/orca-asm-errs.$$
|
||||||
|
|
||||||
FILENAME="$1"
|
FILENAME="$1"
|
||||||
shift
|
shift
|
||||||
|
@ -54,15 +55,39 @@ DIRNAME=`dirname $FILENAME`
|
||||||
BASENAME=`basename $FILENAME .s`
|
BASENAME=`basename $FILENAME .s`
|
||||||
|
|
||||||
pushd "$DIRNAME" > /dev/null
|
pushd "$DIRNAME" > /dev/null
|
||||||
$ORCA assemble $* keep="${BASENAME}" "${BASENAME}.s"
|
$ORCA assemble $* keep="${BASENAME}" "${BASENAME}.s" 2> $ERROUTPUT
|
||||||
RESULT=$?
|
RESULT=$?
|
||||||
popd > /dev/null
|
popd > /dev/null
|
||||||
|
|
||||||
|
if [ -s $ERROUTPUT ]
|
||||||
|
then
|
||||||
|
RESULT=1
|
||||||
|
awk '
|
||||||
|
{
|
||||||
|
print $0
|
||||||
|
}
|
||||||
|
|
||||||
|
/^Error /{
|
||||||
|
$1=""
|
||||||
|
$2=""
|
||||||
|
LINENO=$3
|
||||||
|
$3=""
|
||||||
|
printf("%s/%s:%d:0: error: %s\n", PWD, FILE, LINENO, $0)
|
||||||
|
}
|
||||||
|
' "PWD=`pwd`" "FILE=${BASENAME}.s" $ERROUTPUT
|
||||||
|
fi
|
||||||
|
rm -f $ERROUTPUT
|
||||||
|
|
||||||
if [ "$RESULT" -ne 0 ]
|
if [ "$RESULT" -ne 0 ]
|
||||||
then
|
then
|
||||||
rm -f "$SRCROOTNAME"
|
rm -f "$SRCROOTNAME"
|
||||||
rm -f "$SRCMACROSNAME"
|
rm -f "$SRCMACROSNAME"
|
||||||
rm -f "$SRCOBJNAME"
|
rm -f "$SRCOBJNAME"
|
||||||
|
rm -f "$DESTROOTNAME"
|
||||||
|
rm -f "$DESTMACROSNAME"
|
||||||
|
rm -f "$DESTOBJNAME"
|
||||||
|
rm -f "$DESTDEPSNAME"
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mkdir -p `dirname "$DESTROOTNAME"`
|
mkdir -p `dirname "$DESTROOTNAME"`
|
||||||
|
|
Binary file not shown.
|
@ -6,10 +6,12 @@ export PATH := $(PATH):$(ORCA_BIN)
|
||||||
|
|
||||||
CWD=$(shell pwd)
|
CWD=$(shell pwd)
|
||||||
|
|
||||||
DISKIMAGE=$(TARGETDIR)/$(PGM).2mg
|
DISKIMAGE=$(TARGETDIR)/abCalc.2mg
|
||||||
|
ARCHIVE=$(TARGETDIR)/abCalc.shk
|
||||||
|
DESTBOOTIMAGE=$(TARGETDIR)/$(BOOTIMAGE)
|
||||||
BUILDTARGET=$(DISKIMAGE)
|
BUILDTARGET=$(DISKIMAGE)
|
||||||
EXECTARGET=executeGUI
|
EXECTARGET=executeGUI
|
||||||
DISKIMAGEDEST=.
|
BOOTCOPYPATH=
|
||||||
AUXTYPE=
|
AUXTYPE=
|
||||||
CFLAGS+=-i$(GENDIR)
|
CFLAGS+=-i$(GENDIR)
|
||||||
|
|
||||||
|
@ -31,18 +33,18 @@ else ifeq ($(TARGETTYPE),desktop)
|
||||||
REZFLAGS+=rez='-d MESSAGE_CENTER=$(MESSAGE_CENTER)'
|
REZFLAGS+=rez='-d MESSAGE_CENTER=$(MESSAGE_CENTER)'
|
||||||
else ifeq ($(TARGETTYPE),cda)
|
else ifeq ($(TARGETTYPE),cda)
|
||||||
FILETYPE=cda
|
FILETYPE=cda
|
||||||
DISKIMAGEDEST=System/Desk.Accs
|
BOOTCOPYPATH=System/Desk.Accs
|
||||||
else ifeq ($(TARGETTYPE),cdev)
|
else ifeq ($(TARGETTYPE),cdev)
|
||||||
BINTARGET=$(TARGETDIR)/$(PGM).bin
|
BINTARGET=$(TARGETDIR)/$(PGM).bin
|
||||||
FILETYPE=199
|
FILETYPE=199
|
||||||
DISKIMAGEDEST=System/CDevs
|
BOOTCOPYPATH=System/CDevs
|
||||||
REZFLAGS+=rez='-d BINTARGET="$(BINTARGET)"'
|
REZFLAGS+=rez='-d BINTARGET="$(BINTARGET)"'
|
||||||
else ifeq ($(TARGETTYPE),nba)
|
else ifeq ($(TARGETTYPE),nba)
|
||||||
FILETYPE=exe
|
FILETYPE=exe
|
||||||
BUILDTARGET=$(TARGETDIR)/$(PGM)
|
BUILDTARGET=$(TARGETDIR)/$(PGM)
|
||||||
else ifeq ($(TARGETTYPE),nda)
|
else ifeq ($(TARGETTYPE),nda)
|
||||||
FILETYPE=nda
|
FILETYPE=nda
|
||||||
DISKIMAGEDEST=System/Desk.Accs
|
BOOTCOPYPATH=System/Desk.Accs
|
||||||
else ifeq ($(TARGETTYPE),xcmd)
|
else ifeq ($(TARGETTYPE),xcmd)
|
||||||
FILETYPE=exe
|
FILETYPE=exe
|
||||||
BUILDTARGET=$(TARGETDIR)/$(PGM)
|
BUILDTARGET=$(TARGETDIR)/$(PGM)
|
||||||
|
@ -71,17 +73,22 @@ REZ_SRCS=$(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*
|
||||||
REZ_DEPS=$(patsubst %.rez, $(OBJDIR)/%.rez.d, $(REZ_SRCS))
|
REZ_DEPS=$(patsubst %.rez, $(OBJDIR)/%.rez.d, $(REZ_SRCS))
|
||||||
REZ_OBJS=$(patsubst %.rez, $(OBJDIR)/%.r, $(REZ_SRCS))
|
REZ_OBJS=$(patsubst %.rez, $(OBJDIR)/%.r, $(REZ_SRCS))
|
||||||
|
|
||||||
|
TEACH_FILES=$(patsubst %.md, $(GENDIR)/Teach/%, $(MD_SRCS))
|
||||||
|
ifneq ($(TEACH_FILES),)
|
||||||
|
COPYDIRS+=$(GENDIR)/Teach
|
||||||
|
endif
|
||||||
|
|
||||||
ifneq ($(firstword $(REZ_SRCS)), $(lastword $(REZ_SRCS)))
|
ifneq ($(firstword $(REZ_SRCS)), $(lastword $(REZ_SRCS)))
|
||||||
$(error Only a single resource file supported, found $(REZ_SRCS))
|
$(error Only a single resource file supported, found $(REZ_SRCS))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
BUILD_OBJS=$(C_ROOTS) $(C_OBJS) $(ASM_ROOTS)
|
BUILD_OBJS=$(C_ROOTS) $(C_OBJS) $(ASM_ROOTS) $(TEACH_FILES)
|
||||||
ifeq ($(BINTARGET),)
|
ifeq ($(BINTARGET),)
|
||||||
BUILD_OBJS+=$(REZ_OBJS)
|
BUILD_OBJS+=$(REZ_OBJS)
|
||||||
endif
|
endif
|
||||||
BUILD_OBJS_NOSUFFIX=$(C_ROOTS:.root=) $(C_OBJS:.a=) $(ASM_ROOTS:.ROOT=)
|
BUILD_OBJS_NOSUFFIX=$(C_ROOTS:.root=) $(C_OBJS:.a=) $(ASM_ROOTS:.ROOT=)
|
||||||
|
|
||||||
ALL_OBJS=$(C_ROOTS:.root=.a) $(C_OBJS) $(ASM_OBJS) $(REZ_OBJS)
|
ALL_OBJS=$(C_ROOTS:.root=.a) $(C_OBJS) $(ASM_OBJS) $(REZ_OBJS) $(TEACH_FILES)
|
||||||
ALL_ROOTS=$(C_ROOTS) $(C_OBJS:.a=.root) $(ASM_ROOTS)
|
ALL_ROOTS=$(C_ROOTS) $(C_OBJS:.a=.root) $(ASM_ROOTS)
|
||||||
ALL_DEPS=$(C_DEPS) $(ASM_DEPS) $(REZ_DEPS)
|
ALL_DEPS=$(C_DEPS) $(ASM_DEPS) $(REZ_DEPS)
|
||||||
|
|
||||||
|
@ -96,7 +103,7 @@ build: $(BUILDTARGET)
|
||||||
gen: xcodefix
|
gen: xcodefix
|
||||||
|
|
||||||
xcodefix:
|
xcodefix:
|
||||||
defaults write "$(ORCAM_PLUGIN_INFO)" $(XCODE_PLUGIN_COMPATIBILITY)s -array `defaults read "$(XCODE_INFO)" $(XCODE_PLUGIN_COMPATIBILITY)` || true
|
[ "`uname`" = Darwin ] && defaults write "$(ORCAM_PLUGIN_INFO)" $(XCODE_PLUGIN_COMPATIBILITY)s -array `defaults read "$(XCODE_INFO)" $(XCODE_PLUGIN_COMPATIBILITY)` || true
|
||||||
|
|
||||||
clean: genclean
|
clean: genclean
|
||||||
$(RM) "$(TARGETDIR)/$(PGM)" $(BINTARGET)
|
$(RM) "$(TARGETDIR)/$(PGM)" $(BINTARGET)
|
||||||
|
@ -105,6 +112,8 @@ clean: genclean
|
||||||
$(RM) $(ALL_DEPS)
|
$(RM) $(ALL_DEPS)
|
||||||
$(RM) $(ASM_MACROS)
|
$(RM) $(ASM_MACROS)
|
||||||
$(RM) "$(DISKIMAGE)"
|
$(RM) "$(DISKIMAGE)"
|
||||||
|
$(RM) "$(DESTBOOTIMAGE)"
|
||||||
|
$(RM) "$(ARCHIVE)"
|
||||||
|
|
||||||
createPackage:
|
createPackage:
|
||||||
pkg/createPackage
|
pkg/createPackage
|
||||||
|
@ -125,7 +134,7 @@ ifneq ($(REZ_OBJS),)
|
||||||
$(RM) $(TARGETDIR)/$(PGM)
|
$(RM) $(TARGETDIR)/$(PGM)
|
||||||
$(CP) $(REZ_OBJS) $(TARGETDIR)/$(PGM)
|
$(CP) $(REZ_OBJS) $(TARGETDIR)/$(PGM)
|
||||||
endif
|
endif
|
||||||
cd $(OBJDIR); $(LINK) $(LDFLAGS) $(patsubst $(OBJDIR)/%, %, $(BUILD_OBJS_NOSUFFIX)) --keep=$(TARGETDIR)/$(PGM)
|
cd $(OBJDIR); $(LINK) $(LDFLAGS) $(patsubst $(OBJDIR)/%, %, $(BUILD_OBJS_NOSUFFIX)) keep="$(abspath $(TARGETDIR)/$(PGM))"
|
||||||
$(CHTYP) -t $(FILETYPE) $(AUXTYPE) $(TARGETDIR)/$(PGM)
|
$(CHTYP) -t $(FILETYPE) $(AUXTYPE) $(TARGETDIR)/$(PGM)
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
@ -154,7 +163,7 @@ else
|
||||||
# resource compile will read the $(PGM).bin binary and load it into the
|
# resource compile will read the $(PGM).bin binary and load it into the
|
||||||
# resources also.
|
# resources also.
|
||||||
$(BINTARGET): $(BUILD_OBJS)
|
$(BINTARGET): $(BUILD_OBJS)
|
||||||
cd $(OBJDIR); $(LINK) $(LDFLAGS) $(patsubst $(OBJDIR)/%, %, $(BUILD_OBJS_NOSUFFIX)) --keep=$(BINTARGET)
|
cd $(OBJDIR); $(LINK) $(LDFLAGS) $(patsubst $(OBJDIR)/%, %, $(BUILD_OBJS_NOSUFFIX)) keep="$(abspath $(BINTARGET))"
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -178,13 +187,13 @@ $(TARGETDIR)/$(PGM): $(REZ_OBJS)
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(DISKIMAGE): $(TARGETDIR)/$(PGM)
|
$(DISKIMAGE): $(TARGETDIR)/$(PGM) make/empty.2mg make/$(BOOTIMAGE)
|
||||||
make/createDiskImage "$(DISKIMAGE)" "$(TARGETDIR)/$(PGM)" "$(DISKIMAGEDEST)" $(COPYDIRS)
|
make/createDiskImage "$(DISKIMAGE)" $(DESTBOOTIMAGE) "$(TARGETDIR)/$(PGM)" $(BOOTCOPYPATH)
|
||||||
|
|
||||||
execute: $(EXECTARGET)
|
execute: $(EXECTARGET)
|
||||||
|
|
||||||
executeGUI: all
|
executeGUI: all
|
||||||
make/launchEmulator $(DISKIMAGE)
|
make/launchEmulator "$(DISKIMAGE)" "$(DESTBOOTIMAGE)"
|
||||||
|
|
||||||
executeShell: all
|
executeShell: all
|
||||||
$(ORCA) $(TARGETDIR)/$(PGM)
|
$(ORCA) $(TARGETDIR)/$(PGM)
|
||||||
|
@ -219,6 +228,10 @@ ifneq ($(RLINT_PATH),)
|
||||||
$(ORCA) $(RLINT_PATH) $@
|
$(ORCA) $(RLINT_PATH) $@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
$(GENDIR)/Teach/%: %.md
|
||||||
|
$(MKDIR) "$(GENDIR)/Teach"
|
||||||
|
$(ORCA) make/md2teach "$<" "$@"
|
||||||
|
|
||||||
$(OBJS): Makefile
|
$(OBJS): Makefile
|
||||||
|
|
||||||
# Include the C and rez dependencies which were generated from the last build
|
# Include the C and rez dependencies which were generated from the last build
|
||||||
|
|
Binary file not shown.
|
@ -28,9 +28,24 @@ PGM=abCalcNDA
|
||||||
TARGETTYPE=nda
|
TARGETTYPE=nda
|
||||||
# TARGETTYPE=xcmd
|
# TARGETTYPE=xcmd
|
||||||
|
|
||||||
|
# Uncomment one of the following lines to force a particular GS emulator.
|
||||||
|
# By default, specific paths are tested for these emulators in the below
|
||||||
|
# order and the first found is what will be used. You can overrride that
|
||||||
|
# here:
|
||||||
|
#
|
||||||
|
# EMULATOR=gsplus
|
||||||
|
# EMULATOR=mame
|
||||||
|
# EMULATOR=gsport
|
||||||
|
|
||||||
|
# By default, the build provides a single boot environment to test with.
|
||||||
|
# You can put other .2mg files into the make directory and override this
|
||||||
|
# variable to change what boot disk you want to use when you launch the
|
||||||
|
# emulator. The disk image you specify must be found in the make directory:
|
||||||
|
#
|
||||||
|
# BOOTIMAGE=system601.2mg
|
||||||
|
|
||||||
# Add any other directories where you are putting C or assembly source
|
# Add any other directories where you are putting C or assembly source
|
||||||
# files to this list:
|
# files to this list:
|
||||||
# SRCDIRS+=
|
|
||||||
SRCDIRS+=nda expr ops
|
SRCDIRS+=nda expr ops
|
||||||
|
|
||||||
# If you put your main entry point for your project in a file called main.c
|
# If you put your main entry point for your project in a file called main.c
|
||||||
|
@ -66,7 +81,14 @@ LDFLAGS+=
|
||||||
# Uncomment the following line if you want to build against the GNO libraries
|
# Uncomment the following line if you want to build against the GNO libraries
|
||||||
# export ORCA=$(ORCA_BINDIR)/gno
|
# export ORCA=$(ORCA_BINDIR)/gno
|
||||||
|
|
||||||
# If you want to copy one or more files or directories to the target disk
|
# Add any markdown files to the MD_SRCS variable to specify which files to
|
||||||
|
# convert to a Teach text file format during the build. Using this, you can
|
||||||
|
# write your documentation in markdown in your project and at build time,
|
||||||
|
# that documentation is converted to a format that is good to package with
|
||||||
|
# your software and can be opened on a GS.
|
||||||
|
MD_SRCS=abCalcHelp.md
|
||||||
|
|
||||||
|
# If you want to copy one or more files or directories to the distribution disk
|
||||||
# image, add the root directory to this variable. Any directories under
|
# image, add the root directory to this variable. Any directories under
|
||||||
# the source directory which don't exist in the target disk image will be
|
# the source directory which don't exist in the target disk image will be
|
||||||
# created. All files will be copied from the source to the target using
|
# created. All files will be copied from the source to the target using
|
||||||
|
@ -74,23 +96,61 @@ LDFLAGS+=
|
||||||
#
|
#
|
||||||
# For example, if you set COPYDIRS to dir and in your project you have
|
# For example, if you set COPYDIRS to dir and in your project you have
|
||||||
# the following files:
|
# the following files:
|
||||||
|
# dir/Icons/myIconFile
|
||||||
|
# dir/newDir/anotherFile
|
||||||
|
# Then, during the copy phase, myIconFile will be copied into the Icons
|
||||||
|
# folder and a folder newDir will be created and anotherFile will be copied
|
||||||
|
# into there.
|
||||||
|
COPYDIRS=
|
||||||
|
|
||||||
|
# If you want to copy one or more files or directories to the boot disk
|
||||||
|
# image, add the root directory to this variable. Any directories under
|
||||||
|
# the source directory which don't exist in the boot disk image will be
|
||||||
|
# created. All files will be copied from the source to the target using
|
||||||
|
# the same path from the source.
|
||||||
|
#
|
||||||
|
# For example, if you set COPYBOOTDIRS to dir and in your project you have
|
||||||
|
# the following files:
|
||||||
# dir/System/mySystemFile
|
# dir/System/mySystemFile
|
||||||
# dir/newDir/anotherFile
|
# dir/newDir/anotherFile
|
||||||
# Then, during the copy phase, mySystemFile will be copied into the System
|
# Then, during the copy phase, mySystemFile will be copied into the System
|
||||||
# folder and a folder newDir will be created and anotherFile will be copied
|
# folder and a folder newDir will be created and anotherFile will be copied
|
||||||
# into there.
|
# into there.
|
||||||
COPYDIRS=copydir
|
COPYBOOTDIRS=
|
||||||
|
|
||||||
# By default, the build expects that you have GSplus in the path:
|
# By default, the build expects that you have GSplus in the path:
|
||||||
# /Applications/GSplus.app/Contents/MacOS/gsplus
|
# /Applications/GSplus.app/Contents/MacOS/gsplus
|
||||||
# If you have it in a different location, specify that here.
|
# If you have it in a different location, specify that here.
|
||||||
# GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus
|
# GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus
|
||||||
|
|
||||||
|
# By default, the build uses no arguments with GSplus. If you would like to
|
||||||
|
# use different arguments, specify that here.
|
||||||
|
# GSPLUSARGS=
|
||||||
|
|
||||||
# By default, the build expects that you have GSport in the path:
|
# By default, the build expects that you have GSport in the path:
|
||||||
# /Applications/GSport/GSport.app/Contents/MacOS/GSport
|
# /Applications/GSport/GSport.app/Contents/MacOS/GSport
|
||||||
# If you have it in a different location, specify that here.
|
# If you have it in a different location, specify that here.
|
||||||
# GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport
|
# GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport
|
||||||
|
|
||||||
|
# By default, the build uses no arguments with GSport. If you would like to
|
||||||
|
# use different arguments, specify that here.
|
||||||
|
# GSPORTARGS=
|
||||||
|
|
||||||
|
# By default, the build expects that you have Ample/mame in the path:
|
||||||
|
# /Applications/Ample.app/Contents/MacOS/mame64
|
||||||
|
# If you have it in a different location, specify that here.
|
||||||
|
# MAME=/Applications/Ample.app/Contents/MacOS/mame64
|
||||||
|
|
||||||
|
# By default, the build expects that you have the mame ROMs/libs in the path:
|
||||||
|
# $(HOME)/Library/Application Support/Ample
|
||||||
|
# If you have it in a different location, specify that here.
|
||||||
|
# MAMELIB=$(HOME)/Library/Application Support/Ample
|
||||||
|
|
||||||
|
# By default, the build uses these arguments with mame:
|
||||||
|
# apple2gs -skip_gameinfo -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202
|
||||||
|
# If you would like to use different arguments, specify that here.
|
||||||
|
# MAMEARGS=apple2gs -skip_gameinfo -speed 2 -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202
|
||||||
|
|
||||||
# For a desktop application, it can operate in 640x200 or 320x200
|
# For a desktop application, it can operate in 640x200 or 320x200
|
||||||
# resolution. This setting is used to define which horizontal
|
# resolution. This setting is used to define which horizontal
|
||||||
# resolution you want to use for a desktop application. Other
|
# resolution you want to use for a desktop application. Other
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#
|
#
|
||||||
# Makefile
|
# Makefile
|
||||||
# Apple //GS Build Engine for ORCA
|
# Apple //GS Build Engine for ORCA and Merlin
|
||||||
#
|
#
|
||||||
|
|
||||||
include make/head.mk
|
include make/head.mk
|
||||||
|
@ -28,9 +28,24 @@ TARGETTYPE=shell
|
||||||
# TARGETTYPE=nda
|
# TARGETTYPE=nda
|
||||||
# TARGETTYPE=xcmd
|
# TARGETTYPE=xcmd
|
||||||
|
|
||||||
|
# Uncomment one of the following lines to force a particular GS emulator.
|
||||||
|
# By default, specific paths are tested for these emulators in the below
|
||||||
|
# order and the first found is what will be used. You can overrride that
|
||||||
|
# here:
|
||||||
|
#
|
||||||
|
# EMULATOR=gsplus
|
||||||
|
# EMULATOR=mame
|
||||||
|
# EMULATOR=gsport
|
||||||
|
|
||||||
|
# By default, the build provides a single boot environment to test with.
|
||||||
|
# You can put other .2mg files into the make directory and override this
|
||||||
|
# variable to change what boot disk you want to use when you launch the
|
||||||
|
# emulator. The disk image you specify must be found in the make directory:
|
||||||
|
#
|
||||||
|
# BOOTIMAGE=system601.2mg
|
||||||
|
|
||||||
# Add any other directories where you are putting C or assembly source
|
# Add any other directories where you are putting C or assembly source
|
||||||
# files to this list:
|
# files to this list:
|
||||||
# SRCDIRS+=
|
|
||||||
SRCDIRS+=shell expr ops
|
SRCDIRS+=shell expr ops
|
||||||
|
|
||||||
# If you put your main entry point for your project in a file called main.c
|
# If you put your main entry point for your project in a file called main.c
|
||||||
|
@ -44,6 +59,13 @@ CFLAGS+=-dABCALC_GSOS
|
||||||
# Add any arguments you want passed to the resource compiler to this variable:
|
# Add any arguments you want passed to the resource compiler to this variable:
|
||||||
REZFLAGS+=
|
REZFLAGS+=
|
||||||
|
|
||||||
|
# Uncomment the following line if you have installed rlint as found here:
|
||||||
|
# https://github.com/ksherlock/rlint/releases
|
||||||
|
# Assuming that it is in the path that ORCA searches (the Utilities directory is
|
||||||
|
# probably a good choice), you can just leave the value unchanged. If you have
|
||||||
|
# put the rlint somewhere weird, you can set this to the correct path
|
||||||
|
# RLINT_PATH=rlint
|
||||||
|
|
||||||
# Add any arguments you want passed to the macro generator to this variable:
|
# Add any arguments you want passed to the macro generator to this variable:
|
||||||
MACGENFLAGS+=
|
MACGENFLAGS+=
|
||||||
|
|
||||||
|
@ -59,7 +81,14 @@ LDFLAGS+=
|
||||||
# Uncomment the following line if you want to build against the GNO libraries
|
# Uncomment the following line if you want to build against the GNO libraries
|
||||||
# export ORCA=$(ORCA_BINDIR)/gno
|
# export ORCA=$(ORCA_BINDIR)/gno
|
||||||
|
|
||||||
# If you want to copy one or more files or directories to the target disk
|
# Add any markdown files to the MD_SRCS variable to specify which files to
|
||||||
|
# convert to a Teach text file format during the build. Using this, you can
|
||||||
|
# write your documentation in markdown in your project and at build time,
|
||||||
|
# that documentation is converted to a format that is good to package with
|
||||||
|
# your software and can be opened on a GS.
|
||||||
|
MD_SRCS=
|
||||||
|
|
||||||
|
# If you want to copy one or more files or directories to the distribution disk
|
||||||
# image, add the root directory to this variable. Any directories under
|
# image, add the root directory to this variable. Any directories under
|
||||||
# the source directory which don't exist in the target disk image will be
|
# the source directory which don't exist in the target disk image will be
|
||||||
# created. All files will be copied from the source to the target using
|
# created. All files will be copied from the source to the target using
|
||||||
|
@ -67,27 +96,84 @@ LDFLAGS+=
|
||||||
#
|
#
|
||||||
# For example, if you set COPYDIRS to dir and in your project you have
|
# For example, if you set COPYDIRS to dir and in your project you have
|
||||||
# the following files:
|
# the following files:
|
||||||
|
# dir/Icons/myIconFile
|
||||||
|
# dir/newDir/anotherFile
|
||||||
|
# Then, during the copy phase, myIconFile will be copied into the Icons
|
||||||
|
# folder and a folder newDir will be created and anotherFile will be copied
|
||||||
|
# into there.
|
||||||
|
COPYDIRS=
|
||||||
|
|
||||||
|
# If you want to copy one or more files or directories to the boot disk
|
||||||
|
# image, add the root directory to this variable. Any directories under
|
||||||
|
# the source directory which don't exist in the boot disk image will be
|
||||||
|
# created. All files will be copied from the source to the target using
|
||||||
|
# the same path from the source.
|
||||||
|
#
|
||||||
|
# For example, if you set COPYBOOTDIRS to dir and in your project you have
|
||||||
|
# the following files:
|
||||||
# dir/System/mySystemFile
|
# dir/System/mySystemFile
|
||||||
# dir/newDir/anotherFile
|
# dir/newDir/anotherFile
|
||||||
# Then, during the copy phase, mySystemFile will be copied into the System
|
# Then, during the copy phase, mySystemFile will be copied into the System
|
||||||
# folder and a folder newDir will be created and anotherFile will be copied
|
# folder and a folder newDir will be created and anotherFile will be copied
|
||||||
# into there.
|
# into there.
|
||||||
COPYDIRS=
|
COPYBOOTDIRS=
|
||||||
|
|
||||||
# By default, the build expects that you have GSplus in the path:
|
# By default, the build expects that you have GSplus in the path:
|
||||||
# /Applications/GSplus.app/Contents/MacOS/gsplus
|
# /Applications/GSplus.app/Contents/MacOS/gsplus
|
||||||
# If you have it in a different location, specify that here.
|
# If you have it in a different location, specify that here.
|
||||||
# GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus
|
# GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus
|
||||||
|
|
||||||
|
# By default, the build uses no arguments with GSplus. If you would like to
|
||||||
|
# use different arguments, specify that here.
|
||||||
|
# GSPLUSARGS=
|
||||||
|
|
||||||
# By default, the build expects that you have GSport in the path:
|
# By default, the build expects that you have GSport in the path:
|
||||||
# /Applications/GSport/GSport.app/Contents/MacOS/GSport
|
# /Applications/GSport/GSport.app/Contents/MacOS/GSport
|
||||||
# If you have it in a different location, specify that here.
|
# If you have it in a different location, specify that here.
|
||||||
# GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport
|
# GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport
|
||||||
|
|
||||||
|
# By default, the build uses no arguments with GSport. If you would like to
|
||||||
|
# use different arguments, specify that here.
|
||||||
|
# GSPORTARGS=
|
||||||
|
|
||||||
|
# By default, the build expects that you have Ample/mame in the path:
|
||||||
|
# /Applications/Ample.app/Contents/MacOS/mame64
|
||||||
|
# If you have it in a different location, specify that here.
|
||||||
|
# MAME=/Applications/Ample.app/Contents/MacOS/mame64
|
||||||
|
|
||||||
|
# By default, the build expects that you have the mame ROMs/libs in the path:
|
||||||
|
# $(HOME)/Library/Application Support/Ample
|
||||||
|
# If you have it in a different location, specify that here.
|
||||||
|
# MAMELIB=$(HOME)/Library/Application Support/Ample
|
||||||
|
|
||||||
|
# By default, the build uses these arguments with mame:
|
||||||
|
# apple2gs -skip_gameinfo -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202
|
||||||
|
# If you would like to use different arguments, specify that here.
|
||||||
|
# MAMEARGS=apple2gs -skip_gameinfo -speed 2 -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202
|
||||||
|
|
||||||
|
# For a desktop application, it can operate in 640x200 or 320x200
|
||||||
|
# resolution. This setting is used to define which horizontal
|
||||||
|
# resolution you want to use for a desktop application. Other
|
||||||
|
# target types ignore this value.
|
||||||
|
# DESKTOP_RES_MODE=640
|
||||||
|
|
||||||
|
# For a desktop application, it can support opening and printing
|
||||||
|
# files based on paths sent to it by the message center. This
|
||||||
|
# option controls if that is or is not supported in the
|
||||||
|
# application (note: only the C desktop template supports message
|
||||||
|
# center today)
|
||||||
|
# MESSAGE_CENTER=0
|
||||||
|
|
||||||
# Add any rules you want to execute before any compiles or assembly
|
# Add any rules you want to execute before any compiles or assembly
|
||||||
# commands are called here, if any. You can generate .c, .s or .h
|
# commands are called here, if any. You can generate .c, .s or .h
|
||||||
# files for example. You can generate data files. Whatever you
|
# files for example. You can generate data files. Whatever you
|
||||||
# might need.
|
# might need. You should generate these files in the $(GENDIR)
|
||||||
|
# directory or within a subdirectory under $(GENDIR) which you create
|
||||||
|
# yourself.
|
||||||
|
#
|
||||||
|
# All of your commands associated with a rule _must_ start with a tab
|
||||||
|
# character. Xcode makes it a bit tough to type a tab character by
|
||||||
|
# default. Press option-tab within Xcode to insert a tab character.
|
||||||
gen:
|
gen:
|
||||||
|
|
||||||
# For any files you generated in the gen target above, you should
|
# For any files you generated in the gen target above, you should
|
||||||
|
|
Loading…
Reference in New Issue