Update to the latest build engine.

This commit is contained in:
Jeremy Rand 2019-08-09 22:47:10 -04:00
parent 16dcc0afb0
commit 1930afd723
11 changed files with 381 additions and 195 deletions

21
LICENSE Normal file
View File

@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2019 Jeremy Rand
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -7,142 +7,152 @@
objects = {
/* Begin PBXBuildFile section */
9D3A3EC121783A9B00BE74C7 /* bastokenizer-tools-bt-0.2.0.jar in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D3A3EBF21783A9B00BE74C7 /* bastokenizer-tools-bt-0.2.0.jar */; };
9D55076520DA0B6800B71EFD /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = 9D55076420DA0B6800B71EFD /* Makefile */; };
9D55076820DA0B6800B71EFD /* AppleCommander.jar in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D55076720DA0B6800B71EFD /* AppleCommander.jar */; };
9D55076A20DA0B6800B71EFD /* createDiskImage in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D55076920DA0B6800B71EFD /* createDiskImage */; };
9D55076C20DA0B6900B71EFD /* DevApple.vii in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D55076B20DA0B6900B71EFD /* DevApple.vii */; };
9D55076E20DA0B6900B71EFD /* dos33_template.dsk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D55076D20DA0B6900B71EFD /* dos33_template.dsk */; };
9D55077020DA0B6900B71EFD /* head.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D55076F20DA0B6900B71EFD /* head.mk */; };
9D55077220DA0B6900B71EFD /* prodos_template.dsk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D55077120DA0B6900B71EFD /* prodos_template.dsk */; };
9D55077420DA0B6900B71EFD /* tail.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D55077320DA0B6900B71EFD /* tail.mk */; };
9D55077620DA0B6900B71EFD /* V2Make.scpt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D55077520DA0B6900B71EFD /* V2Make.scpt */; };
9D55077920DA0B6900B71EFD /* colourgo.xcscheme in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D55077820DA0B6900B71EFD /* colourgo.xcscheme */; };
9D55078C20DA0BDC00B71EFD /* vbl.s in Sources */ = {isa = PBXBuildFile; fileRef = 9D55078520DA0BDB00B71EFD /* vbl.s */; };
9D55078D20DA0BDC00B71EFD /* game.s in Sources */ = {isa = PBXBuildFile; fileRef = 9D55078720DA0BDC00B71EFD /* game.s */; };
9D55078E20DA0BDC00B71EFD /* mouseWrapper.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D55078920DA0BDC00B71EFD /* mouseWrapper.c */; };
9D55078F20DA0BDC00B71EFD /* machine.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D55078A20DA0BDC00B71EFD /* machine.c */; };
9D55079020DA0BDC00B71EFD /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D55078B20DA0BDC00B71EFD /* main.c */; };
9DD31AFB22FE661A00F65886 /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = 9DD31AFA22FE661A00F65886 /* Makefile */; };
9DD31AFE22FE661A00F65886 /* AppleCommander.jar in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DD31AFD22FE661A00F65886 /* AppleCommander.jar */; };
9DD31B0022FE661A00F65886 /* bastokenizer-tools-bt-0.2.0.jar in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DD31AFF22FE661A00F65886 /* bastokenizer-tools-bt-0.2.0.jar */; };
9DD31B0222FE661A00F65886 /* createDiskImage in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B0122FE661A00F65886 /* createDiskImage */; };
9DD31B0422FE661A00F65886 /* bt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B0322FE661A00F65886 /* bt */; };
9DD31B0622FE661A00F65886 /* DevApple.vii in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B0522FE661A00F65886 /* DevApple.vii */; };
9DD31B0822FE661A00F65886 /* dos33_template.dsk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B0722FE661A00F65886 /* dos33_template.dsk */; };
9DD31B0A22FE661A00F65886 /* errorFilter.sh in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B0922FE661A00F65886 /* errorFilter.sh */; };
9DD31B0C22FE661A00F65886 /* head.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B0B22FE661A00F65886 /* head.mk */; };
9DD31B0E22FE661A00F65886 /* prodos_template.dsk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B0D22FE661A00F65886 /* prodos_template.dsk */; };
9DD31B1022FE661A00F65886 /* tail.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B0F22FE661A00F65886 /* tail.mk */; };
9DD31B1222FE661A00F65886 /* V2Make.scpt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B1122FE661A00F65886 /* V2Make.scpt */; };
9DD31B1522FE661A00F65886 /* colourgo.xcscheme in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DD31B1422FE661A00F65886 /* colourgo.xcscheme */; };
9DD31B2F22FE667000F65886 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 9DD31B2622FE666F00F65886 /* main.c */; };
9DD31B3022FE667000F65886 /* game.s in Sources */ = {isa = PBXBuildFile; fileRef = 9DD31B2822FE666F00F65886 /* game.s */; };
9DD31B3122FE667000F65886 /* mouseWrapper.c in Sources */ = {isa = PBXBuildFile; fileRef = 9DD31B2A22FE666F00F65886 /* mouseWrapper.c */; };
9DD31B3222FE667000F65886 /* machine.c in Sources */ = {isa = PBXBuildFile; fileRef = 9DD31B2B22FE666F00F65886 /* machine.c */; };
9DD31B3322FE667000F65886 /* vbl.s in Sources */ = {isa = PBXBuildFile; fileRef = 9DD31B2D22FE666F00F65886 /* vbl.s */; };
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
9D55075D20DA0B6800B71EFD /* CopyFiles */ = {
9DD31AF422FE661A00F65886 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
9D55076A20DA0B6800B71EFD /* createDiskImage in CopyFiles */,
9D55077920DA0B6900B71EFD /* colourgo.xcscheme in CopyFiles */,
9D55076C20DA0B6900B71EFD /* DevApple.vii in CopyFiles */,
9D55076E20DA0B6900B71EFD /* dos33_template.dsk in CopyFiles */,
9D55077420DA0B6900B71EFD /* tail.mk in CopyFiles */,
9D55077620DA0B6900B71EFD /* V2Make.scpt in CopyFiles */,
9D55077220DA0B6900B71EFD /* prodos_template.dsk in CopyFiles */,
9D55077020DA0B6900B71EFD /* head.mk in CopyFiles */,
9DD31B0E22FE661A00F65886 /* prodos_template.dsk in CopyFiles */,
9DD31B0422FE661A00F65886 /* bt in CopyFiles */,
9DD31B0822FE661A00F65886 /* dos33_template.dsk in CopyFiles */,
9DD31B0222FE661A00F65886 /* createDiskImage in CopyFiles */,
9DD31B1222FE661A00F65886 /* V2Make.scpt in CopyFiles */,
9DD31B0C22FE661A00F65886 /* head.mk in CopyFiles */,
9DD31B0622FE661A00F65886 /* DevApple.vii in CopyFiles */,
9DD31B1522FE661A00F65886 /* colourgo.xcscheme in CopyFiles */,
9DD31B0A22FE661A00F65886 /* errorFilter.sh in CopyFiles */,
9DD31B1022FE661A00F65886 /* tail.mk in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 1;
};
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
9D3A3EBF21783A9B00BE74C7 /* bastokenizer-tools-bt-0.2.0.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; name = "bastokenizer-tools-bt-0.2.0.jar"; path = "make/bastokenizer-tools-bt-0.2.0.jar"; sourceTree = "<group>"; };
9D3A3EC021783A9B00BE74C7 /* bt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = bt; path = make/bt; sourceTree = "<group>"; };
9D45ABB520E1E50D008C3F16 /* errorFilter.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = errorFilter.sh; path = make/errorFilter.sh; sourceTree = "<group>"; };
9D55075F20DA0B6800B71EFD /* doNotBuild */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = doNotBuild; sourceTree = BUILT_PRODUCTS_DIR; };
9D55076420DA0B6800B71EFD /* Makefile */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
9D55076720DA0B6800B71EFD /* AppleCommander.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; name = AppleCommander.jar; path = make/AppleCommander.jar; sourceTree = "<group>"; };
9D55076920DA0B6800B71EFD /* createDiskImage */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = createDiskImage; path = make/createDiskImage; sourceTree = "<group>"; };
9D55076B20DA0B6900B71EFD /* DevApple.vii */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; name = DevApple.vii; path = make/DevApple.vii; sourceTree = "<group>"; };
9D55076D20DA0B6900B71EFD /* dos33_template.dsk */ = {isa = PBXFileReference; lastKnownFileType = file; name = dos33_template.dsk; path = make/dos33_template.dsk; sourceTree = "<group>"; };
9D55076F20DA0B6900B71EFD /* head.mk */ = {isa = PBXFileReference; lastKnownFileType = text; name = head.mk; path = make/head.mk; sourceTree = "<group>"; };
9D55077120DA0B6900B71EFD /* prodos_template.dsk */ = {isa = PBXFileReference; lastKnownFileType = file; name = prodos_template.dsk; path = make/prodos_template.dsk; sourceTree = "<group>"; };
9D55077320DA0B6900B71EFD /* tail.mk */ = {isa = PBXFileReference; lastKnownFileType = text; name = tail.mk; path = make/tail.mk; sourceTree = "<group>"; };
9D55077520DA0B6900B71EFD /* V2Make.scpt */ = {isa = PBXFileReference; lastKnownFileType = file; name = V2Make.scpt; path = make/V2Make.scpt; sourceTree = "<group>"; };
9D55077820DA0B6900B71EFD /* colourgo.xcscheme */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = colourgo.xcscheme; path = colourgo.xcodeproj/xcshareddata/xcschemes/colourgo.xcscheme; sourceTree = SOURCE_ROOT; };
9D55078220DA0B9300B71EFD /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
9D55078320DA0BDB00B71EFD /* machine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = machine.h; sourceTree = "<group>"; };
9D55078420DA0BDB00B71EFD /* mouseWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mouseWrapper.h; sourceTree = "<group>"; };
9D55078520DA0BDB00B71EFD /* vbl.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = vbl.s; sourceTree = "<group>"; };
9D55078620DA0BDB00B71EFD /* game.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = game.h; sourceTree = "<group>"; };
9D55078720DA0BDC00B71EFD /* game.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = game.s; sourceTree = "<group>"; };
9D55078820DA0BDC00B71EFD /* vbl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vbl.h; sourceTree = "<group>"; };
9D55078920DA0BDC00B71EFD /* mouseWrapper.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mouseWrapper.c; sourceTree = "<group>"; };
9D55078A20DA0BDC00B71EFD /* machine.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = machine.c; sourceTree = "<group>"; };
9D55078B20DA0BDC00B71EFD /* main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; };
9DD31AEE22FE661A00F65886 /* colourgo */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = colourgo; sourceTree = BUILT_PRODUCTS_DIR; };
9DD31AF122FE661A00F65886 /* colourgo.dsk */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = colourgo.dsk; sourceTree = BUILT_PRODUCTS_DIR; };
9DD31AF622FE661A00F65886 /* doNotBuild */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = doNotBuild; sourceTree = BUILT_PRODUCTS_DIR; };
9DD31AFA22FE661A00F65886 /* Makefile */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
9DD31AFD22FE661A00F65886 /* AppleCommander.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; name = AppleCommander.jar; path = make/AppleCommander.jar; sourceTree = "<group>"; };
9DD31AFF22FE661A00F65886 /* bastokenizer-tools-bt-0.2.0.jar */ = {isa = PBXFileReference; lastKnownFileType = archive.jar; name = "bastokenizer-tools-bt-0.2.0.jar"; path = "make/bastokenizer-tools-bt-0.2.0.jar"; sourceTree = "<group>"; };
9DD31B0122FE661A00F65886 /* createDiskImage */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = createDiskImage; path = make/createDiskImage; sourceTree = "<group>"; };
9DD31B0322FE661A00F65886 /* bt */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = bt; path = make/bt; sourceTree = "<group>"; };
9DD31B0522FE661A00F65886 /* DevApple.vii */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; name = DevApple.vii; path = make/DevApple.vii; sourceTree = "<group>"; };
9DD31B0722FE661A00F65886 /* dos33_template.dsk */ = {isa = PBXFileReference; lastKnownFileType = file; name = dos33_template.dsk; path = make/dos33_template.dsk; sourceTree = "<group>"; };
9DD31B0922FE661A00F65886 /* errorFilter.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = errorFilter.sh; path = make/errorFilter.sh; sourceTree = "<group>"; };
9DD31B0B22FE661A00F65886 /* head.mk */ = {isa = PBXFileReference; lastKnownFileType = text; name = head.mk; path = make/head.mk; sourceTree = "<group>"; };
9DD31B0D22FE661A00F65886 /* prodos_template.dsk */ = {isa = PBXFileReference; lastKnownFileType = file; name = prodos_template.dsk; path = make/prodos_template.dsk; sourceTree = "<group>"; };
9DD31B0F22FE661A00F65886 /* tail.mk */ = {isa = PBXFileReference; lastKnownFileType = text; name = tail.mk; path = make/tail.mk; sourceTree = "<group>"; };
9DD31B1122FE661A00F65886 /* V2Make.scpt */ = {isa = PBXFileReference; lastKnownFileType = file; name = V2Make.scpt; path = make/V2Make.scpt; sourceTree = "<group>"; };
9DD31B1422FE661A00F65886 /* colourgo.xcscheme */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = colourgo.xcscheme; path = colourgo.xcodeproj/xcshareddata/xcschemes/colourgo.xcscheme; sourceTree = SOURCE_ROOT; };
9DD31B2422FE664100F65886 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
9DD31B2522FE664D00F65886 /* LICENSE */ = {isa = PBXFileReference; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
9DD31B2622FE666F00F65886 /* main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; };
9DD31B2722FE666F00F65886 /* mouseWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mouseWrapper.h; sourceTree = "<group>"; };
9DD31B2822FE666F00F65886 /* game.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = game.s; sourceTree = "<group>"; };
9DD31B2922FE666F00F65886 /* game.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = game.h; sourceTree = "<group>"; };
9DD31B2A22FE666F00F65886 /* mouseWrapper.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mouseWrapper.c; sourceTree = "<group>"; };
9DD31B2B22FE666F00F65886 /* machine.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = machine.c; sourceTree = "<group>"; };
9DD31B2C22FE666F00F65886 /* vbl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vbl.h; sourceTree = "<group>"; };
9DD31B2D22FE666F00F65886 /* vbl.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = vbl.s; sourceTree = "<group>"; };
9DD31B2E22FE667000F65886 /* machine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = machine.h; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
9D55075C20DA0B6800B71EFD /* Frameworks */ = {
9DD31AF322FE661A00F65886 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
9D55076820DA0B6800B71EFD /* AppleCommander.jar in Frameworks */,
9D3A3EC121783A9B00BE74C7 /* bastokenizer-tools-bt-0.2.0.jar in Frameworks */,
9DD31AFE22FE661A00F65886 /* AppleCommander.jar in Frameworks */,
9DD31B0022FE661A00F65886 /* bastokenizer-tools-bt-0.2.0.jar in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
9D55075520DA0B6800B71EFD = {
9DD31AE722FE661A00F65886 = {
isa = PBXGroup;
children = (
9D55078220DA0B9300B71EFD /* README.md */,
9D55076120DA0B6800B71EFD /* colourgo */,
9D55076020DA0B6800B71EFD /* Products */,
9DD31B2422FE664100F65886 /* README.md */,
9DD31B2522FE664D00F65886 /* LICENSE */,
9DD31AF722FE661A00F65886 /* colourgo */,
9DD31AEF22FE661A00F65886 /* Products */,
);
sourceTree = "<group>";
};
9D55076020DA0B6800B71EFD /* Products */ = {
9DD31AEF22FE661A00F65886 /* Products */ = {
isa = PBXGroup;
children = (
9D55075F20DA0B6800B71EFD /* doNotBuild */,
9DD31AEE22FE661A00F65886 /* colourgo */,
9DD31AF122FE661A00F65886 /* colourgo.dsk */,
9DD31AF622FE661A00F65886 /* doNotBuild */,
);
name = Products;
sourceTree = "<group>";
};
9D55076120DA0B6800B71EFD /* colourgo */ = {
9DD31AF722FE661A00F65886 /* colourgo */ = {
isa = PBXGroup;
children = (
9D55076420DA0B6800B71EFD /* Makefile */,
9D55078620DA0BDB00B71EFD /* game.h */,
9D55078720DA0BDC00B71EFD /* game.s */,
9D55078A20DA0BDC00B71EFD /* machine.c */,
9D55078320DA0BDB00B71EFD /* machine.h */,
9D55078B20DA0BDC00B71EFD /* main.c */,
9D55078920DA0BDC00B71EFD /* mouseWrapper.c */,
9D55078420DA0BDB00B71EFD /* mouseWrapper.h */,
9D55078820DA0BDC00B71EFD /* vbl.h */,
9D55078520DA0BDB00B71EFD /* vbl.s */,
9D55076620DA0B6800B71EFD /* make */,
9D55077720DA0B6900B71EFD /* Supporting Files */,
9DD31B2922FE666F00F65886 /* game.h */,
9DD31B2822FE666F00F65886 /* game.s */,
9DD31B2B22FE666F00F65886 /* machine.c */,
9DD31B2E22FE667000F65886 /* machine.h */,
9DD31B2622FE666F00F65886 /* main.c */,
9DD31B2A22FE666F00F65886 /* mouseWrapper.c */,
9DD31B2722FE666F00F65886 /* mouseWrapper.h */,
9DD31B2C22FE666F00F65886 /* vbl.h */,
9DD31B2D22FE666F00F65886 /* vbl.s */,
9DD31AFA22FE661A00F65886 /* Makefile */,
9DD31AFC22FE661A00F65886 /* make */,
9DD31B1322FE661A00F65886 /* Supporting Files */,
);
path = colourgo;
sourceTree = "<group>";
};
9D55076620DA0B6800B71EFD /* make */ = {
9DD31AFC22FE661A00F65886 /* make */ = {
isa = PBXGroup;
children = (
9D55076720DA0B6800B71EFD /* AppleCommander.jar */,
9D3A3EBF21783A9B00BE74C7 /* bastokenizer-tools-bt-0.2.0.jar */,
9D3A3EC021783A9B00BE74C7 /* bt */,
9D55076920DA0B6800B71EFD /* createDiskImage */,
9D55076B20DA0B6900B71EFD /* DevApple.vii */,
9D55076D20DA0B6900B71EFD /* dos33_template.dsk */,
9D45ABB520E1E50D008C3F16 /* errorFilter.sh */,
9D55076F20DA0B6900B71EFD /* head.mk */,
9D55077120DA0B6900B71EFD /* prodos_template.dsk */,
9D55077320DA0B6900B71EFD /* tail.mk */,
9D55077520DA0B6900B71EFD /* V2Make.scpt */,
9DD31AFD22FE661A00F65886 /* AppleCommander.jar */,
9DD31AFF22FE661A00F65886 /* bastokenizer-tools-bt-0.2.0.jar */,
9DD31B0122FE661A00F65886 /* createDiskImage */,
9DD31B0322FE661A00F65886 /* bt */,
9DD31B0522FE661A00F65886 /* DevApple.vii */,
9DD31B0722FE661A00F65886 /* dos33_template.dsk */,
9DD31B0922FE661A00F65886 /* errorFilter.sh */,
9DD31B0B22FE661A00F65886 /* head.mk */,
9DD31B0D22FE661A00F65886 /* prodos_template.dsk */,
9DD31B0F22FE661A00F65886 /* tail.mk */,
9DD31B1122FE661A00F65886 /* V2Make.scpt */,
);
name = make;
sourceTree = "<group>";
};
9D55077720DA0B6900B71EFD /* Supporting Files */ = {
9DD31B1322FE661A00F65886 /* Supporting Files */ = {
isa = PBXGroup;
children = (
9D55077820DA0B6900B71EFD /* colourgo.xcscheme */,
9DD31B1422FE661A00F65886 /* colourgo.xcscheme */,
);
name = "Supporting Files";
sourceTree = "<group>";
@ -150,10 +160,10 @@
/* End PBXGroup section */
/* Begin PBXLegacyTarget section */
9D55075A20DA0B6800B71EFD /* colourgo */ = {
9DD31AEC22FE661A00F65886 /* colourgo */ = {
isa = PBXLegacyTarget;
buildArgumentsString = "-C colourgo $(ACTION)";
buildConfigurationList = 9D55077C20DA0B6900B71EFD /* Build configuration list for PBXLegacyTarget "colourgo" */;
buildConfigurationList = 9DD31B1822FE661A00F65886 /* Build configuration list for PBXLegacyTarget "colourgo" */;
buildPhases = (
);
buildToolPath = /usr/bin/make;
@ -166,13 +176,41 @@
/* End PBXLegacyTarget section */
/* Begin PBXNativeTarget section */
9D55075E20DA0B6800B71EFD /* doNotBuild */ = {
9DD31AED22FE661A00F65886 /* Binary */ = {
isa = PBXNativeTarget;
buildConfigurationList = 9D55077F20DA0B6900B71EFD /* Build configuration list for PBXNativeTarget "doNotBuild" */;
buildConfigurationList = 9DD31B1B22FE661A00F65886 /* Build configuration list for PBXNativeTarget "Binary" */;
buildPhases = (
9D55075B20DA0B6800B71EFD /* Sources */,
9D55075C20DA0B6800B71EFD /* Frameworks */,
9D55075D20DA0B6800B71EFD /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = Binary;
productName = Binary;
productReference = 9DD31AEE22FE661A00F65886 /* colourgo */;
productType = "com.apple.product-type.tool";
};
9DD31AF022FE661A00F65886 /* DiskImage */ = {
isa = PBXNativeTarget;
buildConfigurationList = 9DD31B1E22FE661A00F65886 /* Build configuration list for PBXNativeTarget "DiskImage" */;
buildPhases = (
);
buildRules = (
);
dependencies = (
);
name = DiskImage;
productName = DiskImage;
productReference = 9DD31AF122FE661A00F65886 /* colourgo.dsk */;
productType = "com.apple.product-type.tool";
};
9DD31AF522FE661A00F65886 /* doNotBuild */ = {
isa = PBXNativeTarget;
buildConfigurationList = 9DD31B2122FE661A00F65886 /* Build configuration list for PBXNativeTarget "doNotBuild" */;
buildPhases = (
9DD31AF222FE661A00F65886 /* Sources */,
9DD31AF322FE661A00F65886 /* Frameworks */,
9DD31AF422FE661A00F65886 /* CopyFiles */,
);
buildRules = (
);
@ -180,62 +218,70 @@
);
name = doNotBuild;
productName = doNotBuild;
productReference = 9D55075F20DA0B6800B71EFD /* doNotBuild */;
productReference = 9DD31AF622FE661A00F65886 /* doNotBuild */;
productType = "com.apple.product-type.tool";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
9D55075620DA0B6800B71EFD /* Project object */ = {
9DD31AE822FE661A00F65886 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0940;
LastUpgradeCheck = 1030;
ORGANIZATIONNAME = "Jeremy Rand";
TargetAttributes = {
9D55075A20DA0B6800B71EFD = {
CreatedOnToolsVersion = 9.4.1;
9DD31AEC22FE661A00F65886 = {
CreatedOnToolsVersion = 10.3;
};
9D55075E20DA0B6800B71EFD = {
CreatedOnToolsVersion = 9.4.1;
9DD31AED22FE661A00F65886 = {
CreatedOnToolsVersion = 10.3;
};
9DD31AF022FE661A00F65886 = {
CreatedOnToolsVersion = 10.3;
};
9DD31AF522FE661A00F65886 = {
CreatedOnToolsVersion = 10.3;
};
};
};
buildConfigurationList = 9D55075920DA0B6800B71EFD /* Build configuration list for PBXProject "colourgo" */;
buildConfigurationList = 9DD31AEB22FE661A00F65886 /* Build configuration list for PBXProject "colourgo" */;
compatibilityVersion = "Xcode 9.3";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
);
mainGroup = 9D55075520DA0B6800B71EFD;
productRefGroup = 9D55076020DA0B6800B71EFD /* Products */;
mainGroup = 9DD31AE722FE661A00F65886;
productRefGroup = 9DD31AEF22FE661A00F65886 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
9D55075A20DA0B6800B71EFD /* colourgo */,
9D55075E20DA0B6800B71EFD /* doNotBuild */,
9DD31AEC22FE661A00F65886 /* colourgo */,
9DD31AED22FE661A00F65886 /* Binary */,
9DD31AF022FE661A00F65886 /* DiskImage */,
9DD31AF522FE661A00F65886 /* doNotBuild */,
);
};
/* End PBXProject section */
/* Begin PBXSourcesBuildPhase section */
9D55075B20DA0B6800B71EFD /* Sources */ = {
9DD31AF222FE661A00F65886 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
9D55078C20DA0BDC00B71EFD /* vbl.s in Sources */,
9D55078E20DA0BDC00B71EFD /* mouseWrapper.c in Sources */,
9D55079020DA0BDC00B71EFD /* main.c in Sources */,
9D55078F20DA0BDC00B71EFD /* machine.c in Sources */,
9D55076520DA0B6800B71EFD /* Makefile in Sources */,
9D55078D20DA0BDC00B71EFD /* game.s in Sources */,
9DD31B3322FE667000F65886 /* vbl.s in Sources */,
9DD31B2F22FE667000F65886 /* main.c in Sources */,
9DD31B3122FE667000F65886 /* mouseWrapper.c in Sources */,
9DD31B3222FE667000F65886 /* machine.c in Sources */,
9DD31AFB22FE661A00F65886 /* Makefile in Sources */,
9DD31B3022FE667000F65886 /* game.s in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
9D55077A20DA0B6900B71EFD /* Debug */ = {
9DD31B1622FE661A00F65886 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
@ -285,12 +331,13 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MTL_ENABLE_DEBUG_INFO = YES;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
};
name = Debug;
};
9D55077B20DA0B6900B71EFD /* Release */ = {
9DD31B1722FE661A00F65886 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
@ -335,10 +382,11 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
};
name = Release;
};
9D55077D20DA0B6900B71EFD /* Debug */ = {
9DD31B1922FE661A00F65886 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
@ -353,7 +401,7 @@
};
name = Debug;
};
9D55077E20DA0B6900B71EFD /* Release */ = {
9DD31B1A22FE661A00F65886 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
@ -365,24 +413,66 @@
};
name = Release;
};
9D55078020DA0B6900B71EFD /* Debug */ = {
9DD31B1C22FE661A00F65886 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = VD9FGCW36C;
PRODUCT_NAME = colourgo;
};
name = Debug;
};
9DD31B1D22FE661A00F65886 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = VD9FGCW36C;
PRODUCT_NAME = colourgo;
};
name = Release;
};
9DD31B1F22FE661A00F65886 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = VD9FGCW36C;
PRODUCT_NAME = colourgo.dsk;
};
name = Debug;
};
9DD31B2022FE661A00F65886 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = VD9FGCW36C;
PRODUCT_NAME = colourgo.dsk;
};
name = Release;
};
9DD31B2222FE661A00F65886 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = VD9FGCW36C;
GCC_PREPROCESSOR_DEFINITIONS = "__fastcall__=\"\"";
HEADER_SEARCH_PATHS = /usr/local/lib/cc65/include;
HEADER_SEARCH_PATHS = (
$TEMP_ROOT/colourgo.build/$CONFIGURATION/colourgo.build/DerivedSources,
/usr/local/share/cc65/include,
);
PRODUCT_NAME = doNotBuild;
};
name = Debug;
};
9D55078120DA0B6900B71EFD /* Release */ = {
9DD31B2322FE661A00F65886 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = VD9FGCW36C;
GCC_PREPROCESSOR_DEFINITIONS = "__fastcall__=\"\"";
HEADER_SEARCH_PATHS = /usr/local/lib/cc65/include;
HEADER_SEARCH_PATHS = (
$TEMP_ROOT/colourgo.build/$CONFIGURATION/colourgo.build/DerivedSources,
/usr/local/share/cc65/include,
);
PRODUCT_NAME = doNotBuild;
};
name = Release;
@ -390,34 +480,52 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
9D55075920DA0B6800B71EFD /* Build configuration list for PBXProject "colourgo" */ = {
9DD31AEB22FE661A00F65886 /* Build configuration list for PBXProject "colourgo" */ = {
isa = XCConfigurationList;
buildConfigurations = (
9D55077A20DA0B6900B71EFD /* Debug */,
9D55077B20DA0B6900B71EFD /* Release */,
9DD31B1622FE661A00F65886 /* Debug */,
9DD31B1722FE661A00F65886 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
9D55077C20DA0B6900B71EFD /* Build configuration list for PBXLegacyTarget "colourgo" */ = {
9DD31B1822FE661A00F65886 /* Build configuration list for PBXLegacyTarget "colourgo" */ = {
isa = XCConfigurationList;
buildConfigurations = (
9D55077D20DA0B6900B71EFD /* Debug */,
9D55077E20DA0B6900B71EFD /* Release */,
9DD31B1922FE661A00F65886 /* Debug */,
9DD31B1A22FE661A00F65886 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
9D55077F20DA0B6900B71EFD /* Build configuration list for PBXNativeTarget "doNotBuild" */ = {
9DD31B1B22FE661A00F65886 /* Build configuration list for PBXNativeTarget "Binary" */ = {
isa = XCConfigurationList;
buildConfigurations = (
9D55078020DA0B6900B71EFD /* Debug */,
9D55078120DA0B6900B71EFD /* Release */,
9DD31B1C22FE661A00F65886 /* Debug */,
9DD31B1D22FE661A00F65886 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
9DD31B1E22FE661A00F65886 /* Build configuration list for PBXNativeTarget "DiskImage" */ = {
isa = XCConfigurationList;
buildConfigurations = (
9DD31B1F22FE661A00F65886 /* Debug */,
9DD31B2022FE661A00F65886 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
9DD31B2122FE661A00F65886 /* Build configuration list for PBXNativeTarget "doNotBuild" */ = {
isa = XCConfigurationList;
buildConfigurations = (
9DD31B2222FE661A00F65886 /* Debug */,
9DD31B2322FE661A00F65886 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 9D55075620DA0B6800B71EFD /* Project object */;
rootObject = 9DD31AE822FE661A00F65886 /* Project object */;
}

View File

@ -64,6 +64,18 @@
argument = "$PROJECT_DIR/colourgo"
isEnabled = "YES">
</CommandLineArgument>
<CommandLineArgument
argument = "OBJECT_FILE_DIR=$OBJECT_FILE_DIR"
isEnabled = "YES">
</CommandLineArgument>
<CommandLineArgument
argument = "DERIVED_SOURCES_DIR=$DERIVED_SOURCES_DIR"
isEnabled = "YES">
</CommandLineArgument>
<CommandLineArgument
argument = "TARGET_BUILD_DIR=$TARGET_BUILD_DIR"
isEnabled = "YES">
</CommandLineArgument>
<CommandLineArgument
argument = "execute"
isEnabled = "YES">

View File

@ -4,15 +4,25 @@
<dict>
<key>SchemeUserState</key>
<dict>
<key>Binary.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>1</integer>
</dict>
<key>DiskImage.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>2</integer>
</dict>
<key>colourgo.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>0</integer>
</dict>
<key>doNotBuild.xcscheme</key>
<key>doNotBuild.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>1</integer>
<integer>3</integer>
</dict>
</dict>
</dict>

View File

@ -52,7 +52,8 @@ START_ADDR = 6000
# will only produce 8-bit code.
# Add any other directories where you are putting C or assembly source
# files to this list:
# files to this list. Note that if you are generating source files into
# $(GENDIR), you should add $(GENDIR) to SRCDIRS here:
SRCDIRS+=
# If you have a non-standard cc65 install, you may need to change
@ -236,6 +237,9 @@ COPYDIRS=
# files for example. You can generate data files. Whatever you
# 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.

Binary file not shown.

View File

@ -7,7 +7,7 @@ merlinStartAddr() {
if [ $# -lt 5 ]
then
echo USAGE: $0 '<AppleCommander> <machine> <diskimage> <binary>'
echo USAGE: $0 '<AppleCommander> <machine> <diskimage> <binary> <startaddress> <otherfilesordirs...>'
exit 1
fi
@ -318,7 +318,7 @@ do
# to copy to the disk image.
if [ -f "$ITEM" ] && echo "$ITEM" | grep '\.tok$' > /dev/null
then
DESTFILE=`echo "$ITEM" | sed 's/\.tok$//'`
DESTFILE=`basename "$ITEM" | sed 's/\.tok$//'`
"$JAVA" -jar "$APPLECOMMANDER" -p "$DISKIMAGE" "$DESTFILE" "$BASICFILETYPE" 0x801 < "$ITEM"
continue
fi
@ -363,9 +363,9 @@ do
# If the file type is text, convert the line feeds to carriage return
if [ $FILETYPE = txt ] || [ $FILETYPE = T ]
then
tr '\n' '\r' < $FILE | "$JAVA" -jar "$OLDPWD/$APPLECOMMANDER" $TRANSFERARG "$OLDPWD/$DISKIMAGE" "$DESTFILE" $FILETYPE
tr '\n' '\r' < $FILE | "$JAVA" -jar "$OLDPWD/$APPLECOMMANDER" $TRANSFERARG "$DISKIMAGE" "$DESTFILE" $FILETYPE
else
"$JAVA" -jar "$OLDPWD/$APPLECOMMANDER" $TRANSFERARG "$OLDPWD/$DISKIMAGE" "$DESTFILE" $FILETYPE < $FILE
"$JAVA" -jar "$OLDPWD/$APPLECOMMANDER" $TRANSFERARG "$DISKIMAGE" "$DESTFILE" $FILETYPE < $FILE
fi
done

View File

@ -35,7 +35,7 @@ while (<FILE>) {
$file =~ s/\.s$/.c/;
}
$_ = "$pwd/$file:$lineno:0: Error: $unresolvedRefError";
$_ = "$pwd/$file:$lineno:0: error: $unresolvedRefError";
} else {
$unresolvedRefError = undef;
}
@ -49,7 +49,7 @@ while (<FILE>) {
my $lineno = $2;
my $error = $3;
$_ = "$pwd/$file:$lineno:0:$error";
$_ = "$pwd/$file:$lineno:0: error: $error";
}
print STDERR "$_\n";
}

View File

@ -24,20 +24,47 @@ CC65=$(CC65_BIN)/cc65
CO65=$(CC65_BIN)/co65
MERLIN_DIR=/usr/local
MERLIN_BIN=$(MERLIN_DIR)/bin/Merlin32
MERLIN_LIB=$(MERLIN_DIR)/lib/Merlin
export MERLIN_BIN=$(MERLIN_DIR)/bin/Merlin32
export MERLIN_LIB=$(MERLIN_DIR)/lib/Merlin
MERLIN_ASM=make/merlin-asm
AC=make/AppleCommander.jar
SRCDIRS=.
# Check for Xcode build variables for the locations of build outputs and fall back
# to the current directory if not set.
ifeq ($(OBJECT_FILE_DIR),)
OBJDIR=.
else
export OBJECT_FILE_DIR
OBJDIR=$(OBJECT_FILE_DIR)
endif
ifeq ($(DERIVED_SOURCES_DIR),)
GENDIR=.
else
export DERIVED_SOURCES_DIR
GENDIR=$(DERIVED_SOURCES_DIR)
endif
ifeq ($(TARGET_BUILD_DIR),)
TARGETDIR=.
else
export TARGET_BUILD_DIR
TARGETDIR=$(TARGET_BUILD_DIR)
endif
MACHINE=apple2
CPU=6502
CFLAGS=
ASMFLAGS=
LDFLAGS=
DRIVERS=
DRVDIR=drivers
DRVDIR=$(GENDIR)/drivers
MKDIR=mkdir -p
XCODE_PATH=/Applications/Xcode.app
XCODE_INFO=$(XCODE_PATH)/Contents/Info.plist

View File

@ -14,12 +14,14 @@ BUILD_TYPE := $(shell if echo $(MACHINE) | grep -q -- -basic; then echo basic; e
CWD=$(shell pwd)
DISKIMAGE=$(PGM).dsk
DISKIMAGE=$(TARGETDIR)/$(PGM).dsk
EXECCMD=
BASIC_SRCS=$(patsubst ./%, %, $(wildcard $(addsuffix /*.bas, $(SRCDIRS))))
BASIC_OBJS=$(BASIC_SRCS:.bas=.tok)
vpath $(GENDIR)
BASIC_SRCS=$(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.bas, $(SRCDIRS)))))
BASIC_OBJS=$(patsubst %.bas, $(TARGETDIR)/%.tok, $(BASIC_SRCS))
ifeq ($(BUILD_TYPE),cc65)
export PATH := $(PATH):$(CC65_BIN)
@ -33,50 +35,37 @@ ifeq ($(BUILD_TYPE),cc65)
BASE_MACHINE = apple2enh
endif
CC65_VERSION := $(shell $(CC65) --version 2>&1 | grep '^cc65 V')
export CC65_SUPPORTS_APPLE_SINGLE=1
CC65_CREATE_DEP_ARG=--create-dep $(@:.o=.u)
CC65_LIST_ARG=-l $(@:.o=.lst)
CC65_DRV_DIR=$(CC65_HOME)/target/$(BASE_MACHINE)/drv
ifeq ($(CC65_VERSION),cc65 V2.13.3)
export CC65_SUPPORTS_APPLE_SINGLE=0
CC65_CREATE_DEP_ARG=--create-dep
CC65_LIST_ARG=-l
CC65_DRV_DIR=$(CC65_HOME)
MACHCONFIG= -t $(BASE_MACHINE)
ifeq ($(filter $(MACHINE), apple2 apple2enh),)
MACHCONFIG += -C $(MACHINE).cfg
endif
MACHCONFIG= -t $(BASE_MACHINE)
ifneq ($(filter $(MACHINE), apple2-system apple2enh-system),)
MACHCONFIG += -C $(BASE_MACHINE)-system.cfg
else
export CC65_SUPPORTS_APPLE_SINGLE=1
CC65_CREATE_DEP_ARG=--create-dep $(@:.o=.u)
CC65_LIST_ARG=-l $(@:.o=.lst)
CC65_DRV_DIR=$(CC65_HOME)/target/$(BASE_MACHINE)/drv
MACHCONFIG= -t $(BASE_MACHINE)
ifneq ($(filter $(MACHINE), apple2-system apple2enh-system),)
MACHCONFIG += -C $(BASE_MACHINE)-system.cfg
ifeq ($(PROJECT_TYPE),ca65)
MACHCONFIG += -C $(BASE_MACHINE)-asm.cfg
LDFLAGS += -u __EXEHDR__
else
ifeq ($(PROJECT_TYPE),ca65)
MACHCONFIG += -C $(BASE_MACHINE)-asm.cfg
LDFLAGS += -u __EXEHDR__
else
MACHCONFIG += -C $(BASE_MACHINE).cfg
endif
endif
MACHCONFIG += -C $(BASE_MACHINE).cfg
endif
endif
CFLAGS+=-I $(GENDIR)
ifneq ($(DRIVERS),)
SRCDIRS+=$(DRVDIR)
endif
C_SRCS=$(patsubst ./%, %, $(wildcard $(addsuffix /*.c, $(SRCDIRS))))
C_OBJS=$(C_SRCS:.c=.o)
C_DEPS=$(C_SRCS:.c=.u)
C_SRCS=$(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.c, $(SRCDIRS)))))
C_OBJS=$(patsubst %.c, $(OBJDIR)/%.o, $(C_SRCS))
C_DEPS=$(patsubst %.c, $(OBJDIR)/%.u, $(C_SRCS))
ASM_SRCS=$(patsubst ./%, %, $(wildcard $(addsuffix /*.s, $(SRCDIRS))))
ASM_OBJS=$(ASM_SRCS:.s=.o)
ASM_LSTS=$(ASM_SRCS:.s=.lst)
ASM_SRCS=$(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.s, $(SRCDIRS)))))
ASM_OBJS=$(patsubst %.s, $(OBJDIR)/%.o, $(ASM_SRCS))
ASM_LSTS=$(patsubst %.s, $(OBJDIR)/%.lst, $(ASM_SRCS))
MAPFILE=$(PGM).map
MAPFILE=$(TARGETDIR)/$(PGM).map
ifneq ($(START_ADDR),)
# If the MACHINE is set to an option which does not support a variable
@ -113,7 +102,7 @@ endif
ifeq ($(BUILD_TYPE),merlin)
ASM_SRCS=$(patsubst ./%, %, $(wildcard $(addsuffix /*.s, $(SRCDIRS))))
MAPFILE=_Output.txt
MAPFILE=$(TARGETDIR)/_Output.txt
EXECCMD=$(shell echo brun $(PGM) | tr '[a-z]' '[A-Z]')
endif
@ -122,7 +111,7 @@ ifeq ($(BUILD_TYPE),basic)
EXECCMD=$(shell echo run $(PGM) | tr '[a-z]' '[A-Z]')
endif
OBJS=$(C_OBJS) $(ASM_OBJS) $(BASIC_OBJS)
OBJS=$(C_OBJS) $(ASM_OBJS)
ALLTARGET=$(DISKIMAGE)
@ -131,13 +120,14 @@ ALLTARGET=$(DISKIMAGE)
build: $(ALLTARGET)
$(DISKIMAGE): $(PGM)
make/createDiskImage $(AC) $(MACHINE) "$(DISKIMAGE)" "$(PGM)" "$(START_ADDR)" $(BASIC_OBJS) $(COPYDIRS)
$(DISKIMAGE): $(TARGETDIR)/$(PGM) $(BASIC_OBJS)
make/createDiskImage $(AC) $(MACHINE) "$(DISKIMAGE)" "$(TARGETDIR)/$(PGM)" "$(START_ADDR)" $(BASIC_OBJS) $(COPYDIRS)
execute: $(DISKIMAGE)
osascript make/V2Make.scpt "$(CWD)" "$(PGM)" "$(CWD)/make/DevApple.vii" "$(EXECCMD)"
osascript make/V2Make.scpt "$(TARGETDIR)" "$(PGM)" "$(CWD)/make/DevApple.vii" "$(EXECCMD)"
%.tok: %.bas
$(TARGETDIR)/%.tok: %.bas
$(MKDIR) `dirname $@`
make/bt $< $(BASICFLAGS) -o $@
ifneq ($(DRIVERS),)
@ -150,7 +140,7 @@ cleandrivers:
endif
clean: genclean cleandrivers
rm -f "$(PGM)" $(OBJS) $(C_DEPS) $(MAPFILE) $(ASM_LSTS) "$(DISKIMAGE)"
rm -f "$(TARGETDIR)/$(PGM)" $(OBJS) $(BASIC_OBJS) $(C_DEPS) $(MAPFILE) $(ASM_LSTS) "$(DISKIMAGE)"
cleanMacCruft:
rm -rf pkg
@ -165,10 +155,10 @@ xcodefix:
ifeq ($(BUILD_TYPE),basic)
# Build rules for BASIC projects
$(PGM): $(OBJS)
cp $(PGM).tok $(PGM)
$(TARGETDIR)/$(PGM): $(BASIC_OBJS)
cp $(TARGETDIR)/$(PGM).tok $(TARGETDIR)/$(PGM)
$(OBJS): Makefile
$(BASIC_OBJS): Makefile
endif
@ -177,9 +167,10 @@ endif
ifeq ($(BUILD_TYPE),merlin)
# Build rules for Merlin projects
$(PGM): $(ASM_SRCS) Makefile
$(MERLIN_BIN) -V $(MERLIN_LIB) linkscript.s
rm -f _FileInformation.txt
$(TARGETDIR)/$(PGM): $(ASM_SRCS) Makefile
$(MKDIR) $(TARGETDIR)
rm -f $(TARGETDIR)/$(PGM)
$(MERLIN_ASM) linkscript.s $(PGM) $(TARGETDIR)/$(PGM)
endif
@ -187,17 +178,30 @@ endif
ifeq ($(BUILD_TYPE),cc65)
# Build rules for cc65 projects
$(PGM): $(OBJS)
make/errorFilter.sh $(CL65) $(MACHCONFIG) --mapfile $(MAPFILE) $(LDFLAGS) -o "$(PGM)" $(OBJS)
$(TARGETDIR)/$(PGM): $(OBJS)
$(MKDIR) `dirname $@`
make/errorFilter.sh $(CL65) $(MACHCONFIG) --mapfile $(MAPFILE) $(LDFLAGS) -o "$(TARGETDIR)/$(PGM)" $(OBJS)
$(OBJS): Makefile
%.o: %.c
$(OBJDIR)/%.o: %.c
$(MKDIR) `dirname $@`
make/errorFilter.sh $(CL65) $(MACHCONFIG) $(CFLAGS) $(CC65_CREATE_DEP_ARG) -c -o $@ $<
sed -i .bak 's/\.s:/.o:/' $(@:.o=.u)
rm -f $(@:.o=.u).bak
%.o: %.s
$(OBJDIR)/%.o: $(GENDIR)/%.c
$(MKDIR) `dirname $@`
make/errorFilter.sh $(CL65) $(MACHCONFIG) $(CFLAGS) $(CC65_CREATE_DEP_ARG) -c -o $@ $<
sed -i .bak 's/\.s:/.o:/' $(@:.o=.u)
rm -f $(@:.o=.u).bak
$(OBJDIR)/%.o: %.s
$(MKDIR) `dirname $@`
make/errorFilter.sh $(CL65) $(MACHCONFIG) --cpu $(CPU) $(ASMFLAGS) $(CC65_LIST_ARG) -c -o $@ $<
$(OBJDIR)/%.o: $(GENDIR)/%.s
$(MKDIR) `dirname $@`
make/errorFilter.sh $(CL65) $(MACHCONFIG) --cpu $(CPU) $(ASMFLAGS) $(CC65_LIST_ARG) -c -o $@ $<