Add support for Applesoft BASIC projects
This commit is contained in:
parent
4b833136e9
commit
2be79b8fd5
9
Makefile
9
Makefile
|
@ -33,6 +33,11 @@ PGM=___PACKAGENAME___
|
||||||
# MACHINE = apple2enh-system
|
# MACHINE = apple2enh-system
|
||||||
# MACHINE = apple2enh-loader
|
# MACHINE = apple2enh-loader
|
||||||
# MACHINE = apple2enh-reboot
|
# MACHINE = apple2enh-reboot
|
||||||
|
#
|
||||||
|
# These are special machine definitions beyond those defined in cc65
|
||||||
|
# which are used for BASIC projects:
|
||||||
|
# MACHINE = apple2-basic
|
||||||
|
# MACHINE = apple2-dos33-basic
|
||||||
|
|
||||||
# Uncomment and set this to your starting address in Apple II memory
|
# Uncomment and set this to your starting address in Apple II memory
|
||||||
# if necessary:
|
# if necessary:
|
||||||
|
@ -73,6 +78,10 @@ SRCDIRS+=
|
||||||
# this variable:
|
# this variable:
|
||||||
# LDFLAGS += -v
|
# LDFLAGS += -v
|
||||||
|
|
||||||
|
# If you want to add arguments to the BASIC tokenizer commandline,
|
||||||
|
# add them to this valiable:
|
||||||
|
# BASICFLAGS += --optimize
|
||||||
|
|
||||||
# If you want to link the lores graphics driver with your executable,
|
# If you want to link the lores graphics driver with your executable,
|
||||||
# uncomment the next line.
|
# uncomment the next line.
|
||||||
# DRIVERS += loresgr
|
# DRIVERS += loresgr
|
||||||
|
|
Binary file not shown.
|
@ -0,0 +1,25 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [ -z "$JAVA" ]
|
||||||
|
then
|
||||||
|
for item in "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home" /Library/Java/JavaVirtualMachines/*/Contents/Home /usr
|
||||||
|
do
|
||||||
|
if [ -x "$item/bin/java" ]
|
||||||
|
then
|
||||||
|
JAVA="$item/bin/java"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$JAVA" ]
|
||||||
|
then
|
||||||
|
echo Cannot find a path to a Java runtime.
|
||||||
|
echo Go to https://java.com/download if you do not have Java.
|
||||||
|
echo If you do have Java, you may need to uncomment the JAVA
|
||||||
|
echo line in the Makefile and set it to the path for your
|
||||||
|
echo Java runtime binary.
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
exec "$JAVA" -jar make/bastokenizer-tools-bt-0.2.0.jar $*
|
|
@ -43,11 +43,7 @@ shift
|
||||||
STARTADDR=`echo $1 | sed 's/^0*//'`
|
STARTADDR=`echo $1 | sed 's/^0*//'`
|
||||||
shift
|
shift
|
||||||
|
|
||||||
if [ ! -f "$PROGRAM" ]
|
SOURCEFILE=$PROGRAM
|
||||||
then
|
|
||||||
echo "Cannot file executable $PROGRAM"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
case "$MACHINE" in
|
case "$MACHINE" in
|
||||||
apple2)
|
apple2)
|
||||||
|
@ -55,6 +51,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=1
|
DELETELOADER=1
|
||||||
RENAMELOADER=0
|
RENAMELOADER=0
|
||||||
DELETEBASIC=0
|
DELETEBASIC=0
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=1
|
HASHEADER=1
|
||||||
FILETYPE="bin"
|
FILETYPE="bin"
|
||||||
TARGETFILE=`basename $PROGRAM`
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
@ -66,6 +63,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=1
|
DELETELOADER=1
|
||||||
RENAMELOADER=0
|
RENAMELOADER=0
|
||||||
DELETEBASIC=0
|
DELETEBASIC=0
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=1
|
HASHEADER=1
|
||||||
FILETYPE="bin"
|
FILETYPE="bin"
|
||||||
TARGETFILE=`basename $PROGRAM`
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
@ -77,6 +75,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=0
|
DELETELOADER=0
|
||||||
RENAMELOADER=0
|
RENAMELOADER=0
|
||||||
DELETEBASIC=0
|
DELETEBASIC=0
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=1
|
HASHEADER=1
|
||||||
FILETYPE="bin"
|
FILETYPE="bin"
|
||||||
TARGETFILE=`basename $PROGRAM`
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
@ -88,6 +87,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=0
|
DELETELOADER=0
|
||||||
RENAMELOADER=0
|
RENAMELOADER=0
|
||||||
DELETEBASIC=0
|
DELETEBASIC=0
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=1
|
HASHEADER=1
|
||||||
FILETYPE="bin"
|
FILETYPE="bin"
|
||||||
TARGETFILE=`basename $PROGRAM`
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
@ -99,6 +99,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=1
|
DELETELOADER=1
|
||||||
RENAMELOADER=0
|
RENAMELOADER=0
|
||||||
DELETEBASIC=1
|
DELETEBASIC=1
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=0
|
HASHEADER=0
|
||||||
FILETYPE="sys"
|
FILETYPE="sys"
|
||||||
TARGETFILE=`basename $PROGRAM`.system
|
TARGETFILE=`basename $PROGRAM`.system
|
||||||
|
@ -110,6 +111,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=1
|
DELETELOADER=1
|
||||||
RENAMELOADER=0
|
RENAMELOADER=0
|
||||||
DELETEBASIC=1
|
DELETEBASIC=1
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=0
|
HASHEADER=0
|
||||||
FILETYPE="sys"
|
FILETYPE="sys"
|
||||||
TARGETFILE=`basename $PROGRAM`.system
|
TARGETFILE=`basename $PROGRAM`.system
|
||||||
|
@ -121,6 +123,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=0
|
DELETELOADER=0
|
||||||
RENAMELOADER=1
|
RENAMELOADER=1
|
||||||
DELETEBASIC=1
|
DELETEBASIC=1
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=1
|
HASHEADER=1
|
||||||
FILETYPE="bin"
|
FILETYPE="bin"
|
||||||
TARGETFILE=`basename $PROGRAM`
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
@ -132,6 +135,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=0
|
DELETELOADER=0
|
||||||
RENAMELOADER=1
|
RENAMELOADER=1
|
||||||
DELETEBASIC=1
|
DELETEBASIC=1
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=1
|
HASHEADER=1
|
||||||
FILETYPE="bin"
|
FILETYPE="bin"
|
||||||
TARGETFILE=`basename $PROGRAM`
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
@ -143,6 +147,7 @@ case "$MACHINE" in
|
||||||
DELETELOADER=0
|
DELETELOADER=0
|
||||||
RENAMELOADER=1
|
RENAMELOADER=1
|
||||||
DELETEBASIC=1
|
DELETEBASIC=1
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=1
|
HASHEADER=1
|
||||||
FILETYPE="bin"
|
FILETYPE="bin"
|
||||||
TARGETFILE=`basename $PROGRAM`
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
@ -154,18 +159,50 @@ case "$MACHINE" in
|
||||||
DELETELOADER=0
|
DELETELOADER=0
|
||||||
RENAMELOADER=1
|
RENAMELOADER=1
|
||||||
DELETEBASIC=1
|
DELETEBASIC=1
|
||||||
|
COPYBINARY=1
|
||||||
HASHEADER=1
|
HASHEADER=1
|
||||||
FILETYPE="bin"
|
FILETYPE="bin"
|
||||||
TARGETFILE=`basename $PROGRAM`
|
TARGETFILE=`basename $PROGRAM`
|
||||||
MAXFILENAMELEN=15
|
MAXFILENAMELEN=15
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
apple2-basic)
|
||||||
|
TEMPLATE="make/prodos_template.dsk"
|
||||||
|
DELETELOADER=1
|
||||||
|
RENAMELOADER=0
|
||||||
|
DELETEBASIC=0
|
||||||
|
COPYBINARY=0
|
||||||
|
FILETYPE="bas"
|
||||||
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
SOURCEFILE=${PROGRAM}.tok
|
||||||
|
MAXFILENAMELEN=15
|
||||||
|
;;
|
||||||
|
|
||||||
|
apple2-dos33-basic)
|
||||||
|
TEMPLATE="make/dos33_template.dsk"
|
||||||
|
DELETELOADER=0
|
||||||
|
RENAMELOADER=0
|
||||||
|
DELETEBASIC=0
|
||||||
|
COPYBINARY=0
|
||||||
|
FILETYPE="A"
|
||||||
|
TARGETFILE=`basename $PROGRAM`
|
||||||
|
SOURCEFILE=${PROGRAM}.tok
|
||||||
|
MAXFILENAMELEN=30
|
||||||
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
echo "Invalid machine type $MACHINE"
|
echo "Invalid machine type $MACHINE"
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
if [ ! -f "$SOURCEFILE" ]
|
||||||
|
then
|
||||||
|
echo "Cannot file executable $SOURCEFILE"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ ${#TARGETFILE} -gt $MAXFILENAMELEN ]
|
if [ ${#TARGETFILE} -gt $MAXFILENAMELEN ]
|
||||||
then
|
then
|
||||||
echo "The filename $TARGETFILE exceeds the max name length of the filesystem ($MAXFILENAMELEN)"
|
echo "The filename $TARGETFILE exceeds the max name length of the filesystem ($MAXFILENAMELEN)"
|
||||||
|
@ -203,29 +240,39 @@ then
|
||||||
"$JAVA" -jar "$APPLECOMMANDER" -d "$DISKIMAGE" BASIC.SYSTEM
|
"$JAVA" -jar "$APPLECOMMANDER" -d "$DISKIMAGE" BASIC.SYSTEM
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ $HASHEADER -eq 1 ]
|
if [ $COPYBINARY -eq 1 ]
|
||||||
then
|
then
|
||||||
HDR_STARTADDR=`od -t x2 -N 2 < "$PROGRAM" | head -1 | awk '{print $2}' | sed 's/^0*//'`
|
if [ $HASHEADER -eq 1 ]
|
||||||
if [ "$HDR_STARTADDR" = "$STARTADDR" ]
|
|
||||||
then
|
then
|
||||||
dd if="$PROGRAM" bs=4 skip=1 | "$JAVA" -jar "$APPLECOMMANDER" -p "$DISKIMAGE" "$TARGETFILE" $FILETYPE 0x$STARTADDR
|
HDR_STARTADDR=`od -t x2 -N 2 < "$SOURCEFILE" | head -1 | awk '{print $2}' | sed 's/^0*//'`
|
||||||
else
|
if [ "$HDR_STARTADDR" = "$STARTADDR" ]
|
||||||
"$JAVA" -jar "$APPLECOMMANDER" -p "$DISKIMAGE" "$TARGETFILE" $FILETYPE 0x$STARTADDR < "$PROGRAM"
|
then
|
||||||
|
dd if="$SOURCEFILE" bs=4 skip=1 | "$JAVA" -jar "$APPLECOMMANDER" -p "$DISKIMAGE" "$TARGETFILE" $FILETYPE 0x$STARTADDR
|
||||||
|
else
|
||||||
|
"$JAVA" -jar "$APPLECOMMANDER" -p "$DISKIMAGE" "$TARGETFILE" $FILETYPE 0x$STARTADDR < "$SOURCEFILE"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
"$JAVA" -jar "$APPLECOMMANDER" -p "$DISKIMAGE" "$TARGETFILE" $FILETYPE < "$SOURCEFILE"
|
||||||
fi
|
fi
|
||||||
else
|
|
||||||
"$JAVA" -jar "$APPLECOMMANDER" -p "$DISKIMAGE" "$TARGETFILE" $FILETYPE < "$PROGRAM"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for DIR in $*
|
for ITEM in $*
|
||||||
do
|
do
|
||||||
if [ ! -d "$DIR" ]
|
if [ -f "$ITEM" ] && echo "$ITEM" | grep '\.tok$' > /dev/null
|
||||||
then
|
then
|
||||||
echo Unable to find directory $DIR
|
DESTFILE=`echo "$ITEM" | sed 's/\.tok$//'`
|
||||||
|
"$JAVA" -jar "$APPLECOMMANDER" -p "$DISKIMAGE" "$DESTFILE" $FILETYPE 0x801 < "$ITEM"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d "$ITEM" ]
|
||||||
|
then
|
||||||
|
echo Unable to find directory $ITEM
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
OLDPWD=`pwd`
|
OLDPWD=`pwd`
|
||||||
cd $DIR
|
cd $ITEM
|
||||||
|
|
||||||
find . -type f -print | while read FILE
|
find . -type f -print | while read FILE
|
||||||
do
|
do
|
||||||
|
|
25
make/tail.mk
25
make/tail.mk
|
@ -26,7 +26,10 @@ ASM_SRCS=$(patsubst ./%, %, $(wildcard $(addsuffix /*.s, $(SRCDIRS))))
|
||||||
ASM_OBJS=$(ASM_SRCS:.s=.o)
|
ASM_OBJS=$(ASM_SRCS:.s=.o)
|
||||||
ASM_LSTS=$(ASM_SRCS:.s=.lst)
|
ASM_LSTS=$(ASM_SRCS:.s=.lst)
|
||||||
|
|
||||||
OBJS=$(C_OBJS) $(ASM_OBJS)
|
BASIC_SRCS=$(patsubst ./%, %, $(wildcard $(addsuffix /*.bas, $(SRCDIRS))))
|
||||||
|
BASIC_OBJS=$(BASIC_SRCS:.bas=.tok)
|
||||||
|
|
||||||
|
OBJS=$(C_OBJS) $(ASM_OBJS) $(BASIC_OBJS)
|
||||||
|
|
||||||
MAPFILE=$(PGM).map
|
MAPFILE=$(PGM).map
|
||||||
DISKIMAGE=$(PGM).dsk
|
DISKIMAGE=$(PGM).dsk
|
||||||
|
@ -40,7 +43,7 @@ ALLTARGET=$(DISKIMAGE)
|
||||||
ifneq ($(START_ADDR),)
|
ifneq ($(START_ADDR),)
|
||||||
# If the MACHINE is set to an option which does not support a variable start
|
# If the MACHINE is set to an option which does not support a variable start
|
||||||
# address, then error.
|
# address, then error.
|
||||||
ifneq ($(filter $(MACHINE), apple2-system apple2enh-system),)
|
ifneq ($(filter $(MACHINE), apple2-system apple2enh-system apple2-basic apple2-dos33-basic),)
|
||||||
$(error You cannot change start address with this machine type)
|
$(error You cannot change start address with this machine type)
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
|
@ -54,6 +57,9 @@ else
|
||||||
ifneq ($(filter $(MACHINE), apple2-loader apple2-reboot apple2enh-loader apple2enh-reboot),)
|
ifneq ($(filter $(MACHINE), apple2-loader apple2-reboot apple2enh-loader apple2enh-reboot),)
|
||||||
START_ADDR=800
|
START_ADDR=800
|
||||||
endif
|
endif
|
||||||
|
ifneq ($(filter $(MACHINE), apple2-basic apple2-dos33-basic),)
|
||||||
|
START_ADDR=801
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
LDFLAGS += --start-addr 0x$(START_ADDR)
|
LDFLAGS += --start-addr 0x$(START_ADDR)
|
||||||
|
|
||||||
|
@ -61,6 +67,10 @@ ifneq ($(filter $(MACHINE), apple2 apple2enh apple2-dos33 apple2enh-dos33),)
|
||||||
EXECCMD=$(shell echo brun $(PGM) | tr '[a-z]' '[A-Z]')
|
EXECCMD=$(shell echo brun $(PGM) | tr '[a-z]' '[A-Z]')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(filter $(MACHINE), apple2-basic apple2-dos33-basic),)
|
||||||
|
EXECCMD=$(shell echo run $(PGM) | tr '[a-z]' '[A-Z]')
|
||||||
|
endif
|
||||||
|
|
||||||
# By default, use the a2 drivers. If the machine is one of the enhanced
|
# By default, use the a2 drivers. If the machine is one of the enhanced
|
||||||
# targets though, use the a2e drivers.
|
# targets though, use the a2e drivers.
|
||||||
DRV_BASE_MACHINE=a2
|
DRV_BASE_MACHINE=a2
|
||||||
|
@ -94,11 +104,17 @@ clean: genclean
|
||||||
cleanMacCruft:
|
cleanMacCruft:
|
||||||
rm -rf pkg
|
rm -rf pkg
|
||||||
|
|
||||||
|
ifneq ($(filter $(MACHINE), apple2-basic apple2-dos33-basic),)
|
||||||
|
$(PGM): $(OBJS)
|
||||||
|
|
||||||
|
else
|
||||||
$(PGM): $(OBJS)
|
$(PGM): $(OBJS)
|
||||||
make/errorFilter.sh $(CL65) $(MACHCONFIG) --mapfile $(MAPFILE) $(LDFLAGS) -o "$(PGM)" $(OBJS)
|
make/errorFilter.sh $(CL65) $(MACHCONFIG) --mapfile $(MAPFILE) $(LDFLAGS) -o "$(PGM)" $(OBJS)
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
$(DISKIMAGE): $(PGM)
|
$(DISKIMAGE): $(PGM)
|
||||||
make/createDiskImage $(AC) $(MACHINE) "$(DISKIMAGE)" "$(PGM)" "$(START_ADDR)" $(COPYDIRS)
|
make/createDiskImage $(AC) $(MACHINE) "$(DISKIMAGE)" "$(PGM)" "$(START_ADDR)" $(BASIC_OBJS) $(COPYDIRS)
|
||||||
|
|
||||||
execute: $(DISKIMAGE)
|
execute: $(DISKIMAGE)
|
||||||
osascript make/V2Make.scpt "$(CWD)" "$(PGM)" "$(CWD)/make/DevApple.vii" "$(EXECCMD)"
|
osascript make/V2Make.scpt "$(CWD)" "$(PGM)" "$(CWD)/make/DevApple.vii" "$(EXECCMD)"
|
||||||
|
@ -111,6 +127,9 @@ execute: $(DISKIMAGE)
|
||||||
%.o: %.s
|
%.o: %.s
|
||||||
make/errorFilter.sh $(CL65) $(MACHCONFIG) --cpu $(CPU) $(ASMFLAGS) -l -c -o $@ $<
|
make/errorFilter.sh $(CL65) $(MACHCONFIG) --cpu $(CPU) $(ASMFLAGS) -l -c -o $@ $<
|
||||||
|
|
||||||
|
%.tok: %.bas
|
||||||
|
make/bt $(BASICFLAGS) -o $@ $<
|
||||||
|
|
||||||
$(OBJS): Makefile
|
$(OBJS): Makefile
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -77,6 +77,77 @@
|
||||||
<key>version</key>
|
<key>version</key>
|
||||||
<string>1.0</string>
|
<string>1.0</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>Xcode.FileDataType.Basic.Applesoft</key>
|
||||||
|
<dict>
|
||||||
|
<key>id</key>
|
||||||
|
<string>Xcode.FileDataType.Basic.Applesoft</string>
|
||||||
|
<key>localizedDescription</key>
|
||||||
|
<string>Applesoft BASIC Source</string>
|
||||||
|
<key>name</key>
|
||||||
|
<string>File type for Applesoft BASIC</string>
|
||||||
|
<key>point</key>
|
||||||
|
<string>Xcode.FileDataType</string>
|
||||||
|
<key>typeConformedTo</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>typeIdentifier</key>
|
||||||
|
<string>public.source-code</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>typeIdentifier</key>
|
||||||
|
<string>com.rand-family.xcode.applesoft</string>
|
||||||
|
<key>version</key>
|
||||||
|
<string>1.0</string>
|
||||||
|
</dict>
|
||||||
|
<key>Xcode.FileDataTypeDetector.Basic.Applesoft</key>
|
||||||
|
<dict>
|
||||||
|
<key>detectedTypeIdentifier</key>
|
||||||
|
<string>com.rand-family.xcode.applesoft</string>
|
||||||
|
<key>id</key>
|
||||||
|
<string>Xcode.FileDataTypeDetector.Basic.Applesoft</string>
|
||||||
|
<key>matchesExtension</key>
|
||||||
|
<string>bas</string>
|
||||||
|
<key>point</key>
|
||||||
|
<string>Xcode.FileDataTypeDetector</string>
|
||||||
|
</dict>
|
||||||
|
<key>Xcode.SourceCodeLanguage.Applesoft</key>
|
||||||
|
<dict>
|
||||||
|
<key>commentSyntax</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>prefix</key>
|
||||||
|
<string>REM</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>conformsTo</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>identifier</key>
|
||||||
|
<string>Xcode.SourceCodeLanguage.Generic</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>fileDataType</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>identifier</key>
|
||||||
|
<string>com.rand-family.xcode.applesoft</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>id</key>
|
||||||
|
<string>Xcode.SourceCodeLanguage.Applesoft</string>
|
||||||
|
<key>languageName</key>
|
||||||
|
<string>Applesoft BASIC</string>
|
||||||
|
<key>languageSpecification</key>
|
||||||
|
<string>xcode.lang.basic.applesoft</string>
|
||||||
|
<key>name</key>
|
||||||
|
<string>Applesoft BASIC</string>
|
||||||
|
<key>point</key>
|
||||||
|
<string>Xcode.SourceCodeLanguage</string>
|
||||||
|
<key>supportsIndentation</key>
|
||||||
|
<string>false</string>
|
||||||
|
<key>version</key>
|
||||||
|
<string>1.0</string>
|
||||||
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
|
|
|
@ -0,0 +1,181 @@
|
||||||
|
// Applesoft BASIC language specs
|
||||||
|
(
|
||||||
|
|
||||||
|
/****************************************************************************/
|
||||||
|
// MARK: Keywords
|
||||||
|
/****************************************************************************/
|
||||||
|
|
||||||
|
{
|
||||||
|
Identifier = "xcode.lang.basic.applesoft.identifier";
|
||||||
|
Syntax = {
|
||||||
|
CaseSensitive = NO;
|
||||||
|
StartChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||||
|
Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
||||||
|
Type = "xcode.syntax.identifier";
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
Identifier = "xcode.lang.basic.applesoft.keyword";
|
||||||
|
Syntax = {
|
||||||
|
CaseSensitive = NO;
|
||||||
|
StartChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||||
|
Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$";
|
||||||
|
Words = (
|
||||||
|
"NEW",
|
||||||
|
"CLEAR",
|
||||||
|
"LIST",
|
||||||
|
"RUN",
|
||||||
|
"LOAD",
|
||||||
|
"SAVE",
|
||||||
|
|
||||||
|
"DIM",
|
||||||
|
|
||||||
|
"AND",
|
||||||
|
"OR",
|
||||||
|
"NOT",
|
||||||
|
|
||||||
|
"ABS",
|
||||||
|
"SGN",
|
||||||
|
"INT",
|
||||||
|
"SQR",
|
||||||
|
"SIN",
|
||||||
|
"COS",
|
||||||
|
"TAN",
|
||||||
|
"ATN",
|
||||||
|
"EXP",
|
||||||
|
"LOG",
|
||||||
|
"RND",
|
||||||
|
"DEF",
|
||||||
|
|
||||||
|
"LEN",
|
||||||
|
"LEFT$",
|
||||||
|
"MID$",
|
||||||
|
"RIGHT$",
|
||||||
|
"STR$",
|
||||||
|
"VAL",
|
||||||
|
"CHR$",
|
||||||
|
"ASC",
|
||||||
|
|
||||||
|
"GOTO",
|
||||||
|
"ON",
|
||||||
|
"IF",
|
||||||
|
"THEN",
|
||||||
|
"FOR",
|
||||||
|
"TO",
|
||||||
|
"STEP",
|
||||||
|
"NEXT",
|
||||||
|
"GOSUB",
|
||||||
|
"RETURN",
|
||||||
|
"POP",
|
||||||
|
"ONERR",
|
||||||
|
"RESUME",
|
||||||
|
"STOP",
|
||||||
|
"CONT",
|
||||||
|
"END",
|
||||||
|
|
||||||
|
"PEEK",
|
||||||
|
"POKE",
|
||||||
|
"CALL",
|
||||||
|
"USR",
|
||||||
|
"HIMEM",
|
||||||
|
"LOMEM",
|
||||||
|
"FRE",
|
||||||
|
"TRACE",
|
||||||
|
"NOTRACE",
|
||||||
|
|
||||||
|
"GR",
|
||||||
|
"COLOR",
|
||||||
|
"PLOT",
|
||||||
|
"HLIN",
|
||||||
|
"VLIN",
|
||||||
|
"SCRN",
|
||||||
|
"HGR",
|
||||||
|
"HGR2",
|
||||||
|
"HCOLOR",
|
||||||
|
"HPLOT",
|
||||||
|
"DRAW",
|
||||||
|
"AT",
|
||||||
|
"XDRAW",
|
||||||
|
"SCALE",
|
||||||
|
"ROT",
|
||||||
|
|
||||||
|
"IN#",
|
||||||
|
"INPUT",
|
||||||
|
"GET",
|
||||||
|
"READ",
|
||||||
|
"DATA",
|
||||||
|
"RESTORE",
|
||||||
|
"PDL",
|
||||||
|
"PR#",
|
||||||
|
"PRINT",
|
||||||
|
"TEXT",
|
||||||
|
"HOME",
|
||||||
|
"HTAB",
|
||||||
|
"VTAB",
|
||||||
|
"INVERSE",
|
||||||
|
"NORMAL",
|
||||||
|
"FLASH"
|
||||||
|
);
|
||||||
|
Type = "xcode.syntax.keyword";
|
||||||
|
AltType = "xcode.syntax.identifier";
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
/****************************************************************************/
|
||||||
|
// MARK: Simple Syntax Coloring
|
||||||
|
/****************************************************************************/
|
||||||
|
|
||||||
|
{
|
||||||
|
Identifier = "xcode.lang.basic.applesoft";
|
||||||
|
Description = "Applesoft BASIC Coloring";
|
||||||
|
BasedOn = "xcode.lang.simpleColoring";
|
||||||
|
IncludeInMenu = YES;
|
||||||
|
Name = "Applesoft BASIC";
|
||||||
|
Syntax = {
|
||||||
|
Tokenizer = "xcode.lang.basic.applesoft.lexer";
|
||||||
|
IncludeRules = (
|
||||||
|
"xcode.lang.basic.applesoft.codeblock",
|
||||||
|
);
|
||||||
|
Type = "xcode.syntax.plain";
|
||||||
|
};
|
||||||
|
},
|
||||||
|
{
|
||||||
|
Identifier = "xcode.lang.basic.applesoft.lexer";
|
||||||
|
Syntax = {
|
||||||
|
IncludeRules = (
|
||||||
|
"xcode.lang.basic.applesoft.comment.rem",
|
||||||
|
"xcode.lang.string",
|
||||||
|
"xcode.lang.character",
|
||||||
|
"xcode.lang.number",
|
||||||
|
"xcode.lang.basic.applesoft.keyword",
|
||||||
|
"xcode.lang.basic.applesoft.identifier",
|
||||||
|
);
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
Identifier = "xcode.lang.basic.applesoft.comment.rem";
|
||||||
|
Syntax = {
|
||||||
|
Start = "REM";
|
||||||
|
End = "\n";
|
||||||
|
IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" );
|
||||||
|
Type = "xcode.syntax.comment";
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
Identifier = "xcode.lang.basic.applesoft.codeblock";
|
||||||
|
Syntax = {
|
||||||
|
Tokenizer = "xcode.lang.applesoft.lexer.lexer";
|
||||||
|
Start = "{";
|
||||||
|
End = "}";
|
||||||
|
Recursive = YES;
|
||||||
|
Foldable = YES;
|
||||||
|
Type = "xcode.syntax.definition.function";
|
||||||
|
IncludeRules = (
|
||||||
|
);
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
)
|
|
@ -7,7 +7,9 @@
|
||||||
<string>main.s</string>
|
<string>main.s</string>
|
||||||
<string>Makefile</string>
|
<string>Makefile</string>
|
||||||
<string>make/AppleCommander.jar</string>
|
<string>make/AppleCommander.jar</string>
|
||||||
|
<string>make/bastokenizer-tools-bt-0.2.0.jar</string>
|
||||||
<string>make/createDiskImage</string>
|
<string>make/createDiskImage</string>
|
||||||
|
<string>make/bt</string>
|
||||||
<string>make/DevApple.vii</string>
|
<string>make/DevApple.vii</string>
|
||||||
<string>make/dos33_template.dsk</string>
|
<string>make/dos33_template.dsk</string>
|
||||||
<string>make/errorFilter.sh</string>
|
<string>make/errorFilter.sh</string>
|
||||||
|
@ -80,6 +82,13 @@
|
||||||
<key>Path</key>
|
<key>Path</key>
|
||||||
<string>make/createDiskImage</string>
|
<string>make/createDiskImage</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>make/bt</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/bt</string>
|
||||||
|
</dict>
|
||||||
<key>make/AppleCommander.jar</key>
|
<key>make/AppleCommander.jar</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Path</key>
|
<key>Path</key>
|
||||||
|
@ -87,6 +96,13 @@
|
||||||
<key>Group</key>
|
<key>Group</key>
|
||||||
<string>make</string>
|
<string>make</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>make/bastokenizer-tools-bt-0.2.0.jar</key>
|
||||||
|
<dict>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/bastokenizer-tools-bt-0.2.0.jar</string>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
</dict>
|
||||||
<key>Makefile</key>
|
<key>Makefile</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Path</key>
|
<key>Path</key>
|
||||||
|
|
208
pkg/Templates/Apple II/Apple II Basic Project.xctemplate/TemplateInfo.plist
vendored
Normal file
208
pkg/Templates/Apple II/Apple II Basic Project.xctemplate/TemplateInfo.plist
vendored
Normal file
|
@ -0,0 +1,208 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>Nodes</key>
|
||||||
|
<array>
|
||||||
|
<string>___PACKAGENAME___.bas</string>
|
||||||
|
<string>Makefile</string>
|
||||||
|
<string>make/AppleCommander.jar</string>
|
||||||
|
<string>make/bastokenizer-tools-bt-0.2.0.jar</string>
|
||||||
|
<string>make/createDiskImage</string>
|
||||||
|
<string>make/bt</string>
|
||||||
|
<string>make/DevApple.vii</string>
|
||||||
|
<string>make/dos33_template.dsk</string>
|
||||||
|
<string>make/errorFilter.sh</string>
|
||||||
|
<string>make/head.mk</string>
|
||||||
|
<string>make/prodos_template.dsk</string>
|
||||||
|
<string>make/tail.mk</string>
|
||||||
|
<string>make/V2Make.scpt</string>
|
||||||
|
<string>../___PACKAGENAME___.xcodeproj/xcshareddata/xcschemes/___PACKAGENAME___.xcscheme</string>
|
||||||
|
</array>
|
||||||
|
<key>Definitions</key>
|
||||||
|
<dict>
|
||||||
|
<key>___PACKAGENAME___.bas</key>
|
||||||
|
<dict>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>___PACKAGENAME___.bas</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/V2Make.scpt</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/V2Make.scpt</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/errorFilter.sh</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/errorFilter.sh</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/tail.mk</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/tail.mk</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/prodos_template.dsk</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/prodos_template.dsk</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/head.mk</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/head.mk</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/dos33_template.dsk</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/dos33_template.dsk</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/DevApple.vii</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/DevApple.vii</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/createDiskImage</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/createDiskImage</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/bt</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/bt</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/AppleCommander.jar</key>
|
||||||
|
<dict>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/AppleCommander.jar</string>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
</dict>
|
||||||
|
<key>make/bastokenizer-tools-bt-0.2.0.jar</key>
|
||||||
|
<dict>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/bastokenizer-tools-bt-0.2.0.jar</string>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
</dict>
|
||||||
|
<key>Makefile</key>
|
||||||
|
<dict>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>Makefile</string>
|
||||||
|
</dict>
|
||||||
|
<key>../___PACKAGENAME___.xcodeproj/xcshareddata/xcschemes/___PACKAGENAME___.xcscheme</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<array>
|
||||||
|
<string>Supporting Files</string>
|
||||||
|
</array>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>___PACKAGENAME___.xcscheme</string>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
<key>Kind</key>
|
||||||
|
<string>Xcode.Xcode3.ProjectTemplateUnitKind</string>
|
||||||
|
<key>Identifier</key>
|
||||||
|
<string>com.halcyontouch.apple2BasicBuildSystem</string>
|
||||||
|
<key>Ancestors</key>
|
||||||
|
<array>
|
||||||
|
<string>com.apple.dt.unit.externalBuildSystem</string>
|
||||||
|
</array>
|
||||||
|
<key>Concrete</key>
|
||||||
|
<true/>
|
||||||
|
<key>Description</key>
|
||||||
|
<string>This template creates an Apple II Basic code project. The project starts with a single Applesoft file which you can modify.</string>
|
||||||
|
<key>Options</key>
|
||||||
|
<array/>
|
||||||
|
<key>Targets</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>TargetType</key>
|
||||||
|
<string>Legacy</string>
|
||||||
|
<key>TargetIdentifier</key>
|
||||||
|
<string>com.apple.dt.cocoaLegacyTarget</string>
|
||||||
|
<key>BuildToolPath</key>
|
||||||
|
<string>___VARIABLE_buildToolPath___</string>
|
||||||
|
<key>BuildToolArgsString</key>
|
||||||
|
<string>-C ___PACKAGENAME___ $(ACTION)</string>
|
||||||
|
<key>SharedSettings</key>
|
||||||
|
<dict>
|
||||||
|
<key>OTHER_CFLAGS</key>
|
||||||
|
<string></string>
|
||||||
|
<key>OTHER_LDFLAGS</key>
|
||||||
|
<string></string>
|
||||||
|
</dict>
|
||||||
|
<key>Configurations</key>
|
||||||
|
<dict>
|
||||||
|
<key>Debug</key>
|
||||||
|
<dict>
|
||||||
|
<key>DEBUGGING_SYMBOLS</key>
|
||||||
|
<string>YES</string>
|
||||||
|
<key>GCC_GENERATE_DEBUGGING_SYMBOLS</key>
|
||||||
|
<string>YES</string>
|
||||||
|
<key>GCC_OPTIMIZATION_LEVEL</key>
|
||||||
|
<string>0</string>
|
||||||
|
</dict>
|
||||||
|
<key>Release</key>
|
||||||
|
<dict/>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>ProductType</key>
|
||||||
|
<string>com.apple.product-type.tool</string>
|
||||||
|
<key>TargetIdentifier</key>
|
||||||
|
<string>com.apple.dt.commandLineToolTarget</string>
|
||||||
|
<key>Name</key>
|
||||||
|
<string>doNotBuild</string>
|
||||||
|
<key>SharedSettings</key>
|
||||||
|
<dict>
|
||||||
|
<key>PRODUCT_NAME</key>
|
||||||
|
<string>doNotBuild</string>
|
||||||
|
<key>GCC_PREPROCESSOR_DEFINITIONS</key>
|
||||||
|
<string>__fastcall__=""</string>
|
||||||
|
<key>HEADER_SEARCH_PATHS</key>
|
||||||
|
<string>/usr/local/lib/cc65/include</string>
|
||||||
|
</dict>
|
||||||
|
<key>BuildPhases</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>Class</key>
|
||||||
|
<string>Sources</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>Class</key>
|
||||||
|
<string>Frameworks</string>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>Class</key>
|
||||||
|
<string>CopyFiles</string>
|
||||||
|
<key>DstPath</key>
|
||||||
|
<string>/usr/share/man/man1/</string>
|
||||||
|
<key>DstSubfolderSpec</key>
|
||||||
|
<string>0</string>
|
||||||
|
<key>RunOnlyForDeploymentPostprocessing</key>
|
||||||
|
<string>YES</string>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
6
pkg/Templates/Apple II/Apple II Basic Project.xctemplate/___PACKAGENAME___.bas
vendored
Normal file
6
pkg/Templates/Apple II/Apple II Basic Project.xctemplate/___PACKAGENAME___.bas
vendored
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
10 REM ___FILENAME___
|
||||||
|
20 REM ___PROJECTNAME___
|
||||||
|
30 REM Created by ___FULLUSERNAME___ on ___DATE___.
|
||||||
|
40 REM ___COPYRIGHT___
|
||||||
|
|
||||||
|
100 PRINT "HELLO, WORLD!"
|
98
pkg/Templates/Apple II/Apple II Basic Project.xctemplate/___PACKAGENAME___.xcscheme
vendored
Normal file
98
pkg/Templates/Apple II/Apple II Basic Project.xctemplate/___PACKAGENAME___.xcscheme
vendored
Normal file
|
@ -0,0 +1,98 @@
|
||||||
|
<?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 = "9D0B917C1F526C2D004D7E0B"
|
||||||
|
BuildableName = "___PACKAGENAME___"
|
||||||
|
BlueprintName = "___PACKAGENAME___"
|
||||||
|
ReferencedContainer = "container:___PACKAGENAME___.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</BuildActionEntry>
|
||||||
|
</BuildActionEntries>
|
||||||
|
</BuildAction>
|
||||||
|
<TestAction
|
||||||
|
buildConfiguration = "Debug"
|
||||||
|
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||||
|
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||||
|
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||||
|
<Testables>
|
||||||
|
</Testables>
|
||||||
|
<AdditionalOptions>
|
||||||
|
</AdditionalOptions>
|
||||||
|
</TestAction>
|
||||||
|
<LaunchAction
|
||||||
|
buildConfiguration = "Debug"
|
||||||
|
selectedDebuggerIdentifier = ""
|
||||||
|
selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn"
|
||||||
|
launchStyle = "0"
|
||||||
|
useCustomWorkingDirectory = "NO"
|
||||||
|
ignoresPersistentStateOnLaunch = "NO"
|
||||||
|
debugDocumentVersioning = "YES"
|
||||||
|
debugServiceExtension = "internal"
|
||||||
|
allowLocationSimulation = "YES">
|
||||||
|
<PathRunnable
|
||||||
|
runnableDebuggingMode = "0"
|
||||||
|
FilePath = "/usr/bin/make">
|
||||||
|
</PathRunnable>
|
||||||
|
<MacroExpansion>
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "9D0B917C1F526C2D004D7E0B"
|
||||||
|
BuildableName = "___PACKAGENAME___"
|
||||||
|
BlueprintName = "___PACKAGENAME___"
|
||||||
|
ReferencedContainer = "container:___PACKAGENAME___.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</MacroExpansion>
|
||||||
|
<CommandLineArguments>
|
||||||
|
<CommandLineArgument
|
||||||
|
argument = "-C"
|
||||||
|
isEnabled = "YES">
|
||||||
|
</CommandLineArgument>
|
||||||
|
<CommandLineArgument
|
||||||
|
argument = "$PROJECT_DIR/___PACKAGENAME___"
|
||||||
|
isEnabled = "YES">
|
||||||
|
</CommandLineArgument>
|
||||||
|
<CommandLineArgument
|
||||||
|
argument = "execute"
|
||||||
|
isEnabled = "YES">
|
||||||
|
</CommandLineArgument>
|
||||||
|
</CommandLineArguments>
|
||||||
|
<AdditionalOptions>
|
||||||
|
</AdditionalOptions>
|
||||||
|
</LaunchAction>
|
||||||
|
<ProfileAction
|
||||||
|
buildConfiguration = "Release"
|
||||||
|
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||||
|
savedToolIdentifier = ""
|
||||||
|
useCustomWorkingDirectory = "NO"
|
||||||
|
debugDocumentVersioning = "YES">
|
||||||
|
<MacroExpansion>
|
||||||
|
<BuildableReference
|
||||||
|
BuildableIdentifier = "primary"
|
||||||
|
BlueprintIdentifier = "9D0B917C1F526C2D004D7E0B"
|
||||||
|
BuildableName = "___PACKAGENAME___"
|
||||||
|
BlueprintName = "___PACKAGENAME___"
|
||||||
|
ReferencedContainer = "container:___PACKAGENAME___.xcodeproj">
|
||||||
|
</BuildableReference>
|
||||||
|
</MacroExpansion>
|
||||||
|
</ProfileAction>
|
||||||
|
<AnalyzeAction
|
||||||
|
buildConfiguration = "Debug">
|
||||||
|
</AnalyzeAction>
|
||||||
|
<ArchiveAction
|
||||||
|
buildConfiguration = "Release"
|
||||||
|
revealArchiveInOrganizer = "YES">
|
||||||
|
</ArchiveAction>
|
||||||
|
</Scheme>
|
|
@ -7,7 +7,9 @@
|
||||||
<string>main.c</string>
|
<string>main.c</string>
|
||||||
<string>Makefile</string>
|
<string>Makefile</string>
|
||||||
<string>make/AppleCommander.jar</string>
|
<string>make/AppleCommander.jar</string>
|
||||||
|
<string>make/bastokenizer-tools-bt-0.2.0.jar</string>
|
||||||
<string>make/createDiskImage</string>
|
<string>make/createDiskImage</string>
|
||||||
|
<string>make/bt</string>
|
||||||
<string>make/DevApple.vii</string>
|
<string>make/DevApple.vii</string>
|
||||||
<string>make/dos33_template.dsk</string>
|
<string>make/dos33_template.dsk</string>
|
||||||
<string>make/errorFilter.sh</string>
|
<string>make/errorFilter.sh</string>
|
||||||
|
@ -80,6 +82,13 @@
|
||||||
<key>Path</key>
|
<key>Path</key>
|
||||||
<string>make/createDiskImage</string>
|
<string>make/createDiskImage</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>make/bt</key>
|
||||||
|
<dict>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/bt</string>
|
||||||
|
</dict>
|
||||||
<key>make/AppleCommander.jar</key>
|
<key>make/AppleCommander.jar</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Path</key>
|
<key>Path</key>
|
||||||
|
@ -87,6 +96,13 @@
|
||||||
<key>Group</key>
|
<key>Group</key>
|
||||||
<string>make</string>
|
<string>make</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>make/bastokenizer-tools-bt-0.2.0.jar</key>
|
||||||
|
<dict>
|
||||||
|
<key>Path</key>
|
||||||
|
<string>make/bastokenizer-tools-bt-0.2.0.jar</string>
|
||||||
|
<key>Group</key>
|
||||||
|
<string>make</string>
|
||||||
|
</dict>
|
||||||
<key>Makefile</key>
|
<key>Makefile</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>Path</key>
|
<key>Path</key>
|
||||||
|
|
20
pkg/Templates/File Templates/Apple II/Basic File.xctemplate/TemplateInfo.plist
vendored
Normal file
20
pkg/Templates/File Templates/Apple II/Basic File.xctemplate/TemplateInfo.plist
vendored
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>AllowedTypes</key>
|
||||||
|
<array>
|
||||||
|
<string>com.rand-family.xcode.applesoft</string>
|
||||||
|
</array>
|
||||||
|
<key>DefaultCompletionName</key>
|
||||||
|
<string>File</string>
|
||||||
|
<key>Description</key>
|
||||||
|
<string>An Applesoft BASIC source file.</string>
|
||||||
|
<key>Kind</key>
|
||||||
|
<string>Xcode.IDEKit.TextSubstitutionFileTemplateKind</string>
|
||||||
|
<key>MainTemplateFile</key>
|
||||||
|
<string>___FILEBASENAME___.bas</string>
|
||||||
|
<key>Summary</key>
|
||||||
|
<string>An Applesoft BASIC source file</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
5
pkg/Templates/File Templates/Apple II/Basic File.xctemplate/___FILEBASENAME___.bas
vendored
Executable file
5
pkg/Templates/File Templates/Apple II/Basic File.xctemplate/___FILEBASENAME___.bas
vendored
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
10 REM ___FILENAME___
|
||||||
|
20 REM ___PROJECTNAME___
|
||||||
|
30 REM Created by ___FULLUSERNAME___ on ___DATE___.
|
||||||
|
40 REM ___COPYRIGHT___
|
||||||
|
|
|
@ -14,6 +14,9 @@ cp main.c $TMPDIR/Templates/'Apple II/Apple II C Project.xctemplate/'
|
||||||
cp -R make $TMPDIR/Templates/'Apple II/Apple II Asm Project.xctemplate/'
|
cp -R make $TMPDIR/Templates/'Apple II/Apple II Asm Project.xctemplate/'
|
||||||
cp Makefile $TMPDIR/Templates/'Apple II/Apple II Asm Project.xctemplate/'
|
cp Makefile $TMPDIR/Templates/'Apple II/Apple II Asm Project.xctemplate/'
|
||||||
|
|
||||||
|
cp -R make $TMPDIR/Templates/'Apple II/Apple II Basic Project.xctemplate/'
|
||||||
|
sed 's/^# MACHINE = apple2-basic/MACHINE = apple2-basic/' < Makefile > $TMPDIR/Templates/'Apple II/Apple II Basic Project.xctemplate'/Makefile
|
||||||
|
|
||||||
pkgbuild --root $TMPDIR --version 2.0 --identifier com.halcyontouch.Apple2Template.pkg --install-location /Library/Developer/Xcode/ --scripts pkg/scripts/ AppleXcodeTemplate.pkg
|
pkgbuild --root $TMPDIR --version 2.0 --identifier com.halcyontouch.Apple2Template.pkg --install-location /Library/Developer/Xcode/ --scripts pkg/scripts/ AppleXcodeTemplate.pkg
|
||||||
productbuild --distribution pkg/Distribution.xml --resource ./pkg temp.pkg
|
productbuild --distribution pkg/Distribution.xml --resource ./pkg temp.pkg
|
||||||
rm AppleXcodeTemplate.pkg
|
rm AppleXcodeTemplate.pkg
|
||||||
|
|
Loading…
Reference in New Issue