From c994634c64afb43dd25b93ee91e0058dcc0a7315 Mon Sep 17 00:00:00 2001 From: Jeremy Rand Date: Wed, 7 Aug 2019 22:21:32 -0400 Subject: [PATCH] Update the build engine used by abCalc. --- abCalc.xcodeproj/project.pbxproj | 874 ++++++++++-------- .../UserInterfaceState.xcuserstate | Bin 20052 -> 27547 bytes .../xcshareddata/xcschemes/abCalc.xcscheme | 12 + .../xcschemes/xcschememanagement.plist | 27 +- abCalc/make/config.txt | 4 +- abCalc/make/createDiskImage | 17 +- abCalc/make/head.mk | 47 +- abCalc/make/launchEmulator | 7 + abCalc/make/orca-asm | 65 +- abCalc/make/orca-cc | 59 +- abCalc/make/orca-macgen | 50 - abCalc/make/orca-rez | 45 +- abCalc/make/system601.2mg | Bin 10485824 -> 10485824 bytes abCalc/make/tail.mk | 179 ++-- abCalc/nda.mk | 30 +- abCalc/shell.mk | 2 +- 16 files changed, 880 insertions(+), 538 deletions(-) delete mode 100755 abCalc/make/orca-macgen diff --git a/abCalc.xcodeproj/project.pbxproj b/abCalc.xcodeproj/project.pbxproj index 420ec80..626ce12 100644 --- a/abCalc.xcodeproj/project.pbxproj +++ b/abCalc.xcodeproj/project.pbxproj @@ -3,186 +3,181 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 50; objects = { /* Begin PBXBuildFile section */ - 9D1B83E51F677D78006AA28A /* nda.mk in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B83E41F677D78006AA28A /* nda.mk */; }; - 9D1B83E81F677D78006AA28A /* config.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83E71F677D78006AA28A /* config.txt */; }; - 9D1B83EA1F677D78006AA28A /* createDiskImage in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83E91F677D78006AA28A /* createDiskImage */; }; - 9D1B83EC1F677D78006AA28A /* head.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83EB1F677D78006AA28A /* head.mk */; }; - 9D1B83EE1F677D78006AA28A /* launchEmulator in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83ED1F677D78006AA28A /* launchEmulator */; }; - 9D1B83F01F677D78006AA28A /* orca-asm in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83EF1F677D78006AA28A /* orca-asm */; }; - 9D1B83F21F677D78006AA28A /* orca-cc in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83F11F677D78006AA28A /* orca-cc */; }; - 9D1B83F41F677D78006AA28A /* orca-macgen in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83F31F677D78006AA28A /* orca-macgen */; }; - 9D1B83F61F677D78006AA28A /* orca-rez in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83F51F677D78006AA28A /* orca-rez */; }; - 9D1B83F81F677D78006AA28A /* system601.2mg in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83F71F677D78006AA28A /* system601.2mg */; }; - 9D1B83FA1F677D78006AA28A /* tail.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83F91F677D78006AA28A /* tail.mk */; }; - 9D1B83FD1F677D78006AA28A /* abCalc.xcscheme in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1B83FC1F677D78006AA28A /* abCalc.xcscheme */; }; - 9D1B84131F677D9A006AA28A /* abCalc.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B84061F677D9A006AA28A /* abCalc.c */; }; - 9D1B84161F677D9A006AA28A /* abCError.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B840C1F677D9A006AA28A /* abCError.c */; }; - 9D1B84181F677D9A006AA28A /* abCMode.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B840F1F677D9A006AA28A /* abCMode.c */; }; - 9D1B84191F677D9A006AA28A /* abCStack.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B84111F677D9A006AA28A /* abCStack.c */; }; - 9D1B84851F677E91006AA28A /* abCalcNDA.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B84821F677E91006AA28A /* abCalcNDA.c */; }; - 9D1B84861F677E91006AA28A /* abCalcNDA.h in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B84831F677E91006AA28A /* abCalcNDA.h */; }; - 9D1B84881F677EA1006AA28A /* abCMain.c in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B84871F677EA1006AA28A /* abCMain.c */; }; - 9D1B848D1F67810E006AA28A /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = 9D1B848C1F67810E006AA28A /* Makefile */; }; - 9D98EBBF1F6788AD003BCFE7 /* README.md in Sources */ = {isa = PBXBuildFile; fileRef = 9D98EBBE1F6788AD003BCFE7 /* README.md */; }; + 9DFA29AA22FBB4E500CFBC74 /* nda.mk in Sources */ = {isa = PBXBuildFile; fileRef = 9DFA29A922FBB4E500CFBC74 /* nda.mk */; }; + 9DFA29AD22FBB4E500CFBC74 /* config.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29AC22FBB4E500CFBC74 /* config.txt */; }; + 9DFA29AF22FBB4E500CFBC74 /* createDiskImage in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29AE22FBB4E500CFBC74 /* createDiskImage */; }; + 9DFA29B122FBB4E500CFBC74 /* head.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29B022FBB4E500CFBC74 /* head.mk */; }; + 9DFA29B322FBB4E500CFBC74 /* launchEmulator in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29B222FBB4E500CFBC74 /* launchEmulator */; }; + 9DFA29B522FBB4E500CFBC74 /* orca-asm in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29B422FBB4E500CFBC74 /* orca-asm */; }; + 9DFA29B722FBB4E500CFBC74 /* orca-cc in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29B622FBB4E500CFBC74 /* orca-cc */; }; + 9DFA29B922FBB4E500CFBC74 /* orca-rez in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29B822FBB4E500CFBC74 /* orca-rez */; }; + 9DFA29BB22FBB4E500CFBC74 /* system601.2mg in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29BA22FBB4E500CFBC74 /* system601.2mg */; }; + 9DFA29BD22FBB4E500CFBC74 /* tail.mk in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29BC22FBB4E500CFBC74 /* tail.mk */; }; + 9DFA29C022FBB4E500CFBC74 /* abCalc.xcscheme in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DFA29BF22FBB4E500CFBC74 /* abCalc.xcscheme */; }; + 9DFA29D822FBB53500CFBC74 /* abCStack.c in Sources */ = {isa = PBXBuildFile; fileRef = 9DFA29D122FBB53400CFBC74 /* abCStack.c */; }; + 9DFA29D922FBB53500CFBC74 /* abCMode.c in Sources */ = {isa = PBXBuildFile; fileRef = 9DFA29D422FBB53400CFBC74 /* abCMode.c */; }; + 9DFA29DA22FBB53500CFBC74 /* abCalc.c in Sources */ = {isa = PBXBuildFile; fileRef = 9DFA29D522FBB53500CFBC74 /* abCalc.c */; }; + 9DFA29DB22FBB53500CFBC74 /* abCError.c in Sources */ = {isa = PBXBuildFile; fileRef = 9DFA29D622FBB53500CFBC74 /* abCError.c */; }; + 9DFA2A5522FBB67A00CFBC74 /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = 9DFA2A5422FBB67A00CFBC74 /* Makefile */; }; /* End PBXBuildFile section */ /* Begin PBXCopyFilesBuildPhase section */ - 9D1B83DA1F677D78006AA28A /* CopyFiles */ = { + 9DFA29A022FBB4E500CFBC74 /* CopyFiles */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = /usr/share/man/man1/; dstSubfolderSpec = 0; files = ( - 9D1B83F41F677D78006AA28A /* orca-macgen in CopyFiles */, - 9D1B83F61F677D78006AA28A /* orca-rez in CopyFiles */, - 9D1B83EE1F677D78006AA28A /* launchEmulator in CopyFiles */, - 9D1B83FD1F677D78006AA28A /* abCalc.xcscheme in CopyFiles */, - 9D1B83F21F677D78006AA28A /* orca-cc in CopyFiles */, - 9D1B83FA1F677D78006AA28A /* tail.mk in CopyFiles */, - 9D1B83EA1F677D78006AA28A /* createDiskImage in CopyFiles */, - 9D1B83E81F677D78006AA28A /* config.txt in CopyFiles */, - 9D1B83F01F677D78006AA28A /* orca-asm in CopyFiles */, - 9D1B83EC1F677D78006AA28A /* head.mk in CopyFiles */, - 9D1B83F81F677D78006AA28A /* system601.2mg in CopyFiles */, + 9DFA29B322FBB4E500CFBC74 /* launchEmulator in CopyFiles */, + 9DFA29C022FBB4E500CFBC74 /* abCalc.xcscheme in CopyFiles */, + 9DFA29B722FBB4E500CFBC74 /* orca-cc in CopyFiles */, + 9DFA29AF22FBB4E500CFBC74 /* createDiskImage in CopyFiles */, + 9DFA29B922FBB4E500CFBC74 /* orca-rez in CopyFiles */, + 9DFA29AD22FBB4E500CFBC74 /* config.txt in CopyFiles */, + 9DFA29BB22FBB4E500CFBC74 /* system601.2mg in CopyFiles */, + 9DFA29B522FBB4E500CFBC74 /* orca-asm in CopyFiles */, + 9DFA29B122FBB4E500CFBC74 /* head.mk in CopyFiles */, + 9DFA29BD22FBB4E500CFBC74 /* tail.mk in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 1; }; /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 9D1B83DC1F677D78006AA28A /* doNotBuild */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = doNotBuild; sourceTree = BUILT_PRODUCTS_DIR; }; - 9D1B83E41F677D78006AA28A /* nda.mk */ = {isa = PBXFileReference; lastKnownFileType = text; path = nda.mk; sourceTree = ""; }; - 9D1B83E71F677D78006AA28A /* config.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = config.txt; path = make/config.txt; sourceTree = ""; }; - 9D1B83E91F677D78006AA28A /* createDiskImage */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = createDiskImage; path = make/createDiskImage; sourceTree = ""; }; - 9D1B83EB1F677D78006AA28A /* head.mk */ = {isa = PBXFileReference; lastKnownFileType = text; name = head.mk; path = make/head.mk; sourceTree = ""; }; - 9D1B83ED1F677D78006AA28A /* launchEmulator */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = launchEmulator; path = make/launchEmulator; sourceTree = ""; }; - 9D1B83EF1F677D78006AA28A /* orca-asm */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = "orca-asm"; path = "make/orca-asm"; sourceTree = ""; }; - 9D1B83F11F677D78006AA28A /* orca-cc */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = "orca-cc"; path = "make/orca-cc"; sourceTree = ""; }; - 9D1B83F31F677D78006AA28A /* orca-macgen */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = "orca-macgen"; path = "make/orca-macgen"; sourceTree = ""; }; - 9D1B83F51F677D78006AA28A /* orca-rez */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = "orca-rez"; path = "make/orca-rez"; sourceTree = ""; }; - 9D1B83F71F677D78006AA28A /* system601.2mg */ = {isa = PBXFileReference; lastKnownFileType = file; name = system601.2mg; path = make/system601.2mg; sourceTree = ""; }; - 9D1B83F91F677D78006AA28A /* tail.mk */ = {isa = PBXFileReference; lastKnownFileType = text; name = tail.mk; path = make/tail.mk; sourceTree = ""; }; - 9D1B83FC1F677D78006AA28A /* abCalc.xcscheme */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = abCalc.xcscheme; path = abCalc.xcodeproj/xcshareddata/xcschemes/abCalc.xcscheme; sourceTree = SOURCE_ROOT; }; - 9D1B84061F677D9A006AA28A /* abCalc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = abCalc.c; sourceTree = ""; }; - 9D1B84071F677D9A006AA28A /* abCalc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = abCalc.h; sourceTree = ""; }; - 9D1B840C1F677D9A006AA28A /* abCError.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = abCError.c; sourceTree = ""; }; - 9D1B840D1F677D9A006AA28A /* abCError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = abCError.h; sourceTree = ""; }; - 9D1B840F1F677D9A006AA28A /* abCMode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = abCMode.c; sourceTree = ""; }; - 9D1B84101F677D9A006AA28A /* abCMode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = abCMode.h; sourceTree = ""; }; - 9D1B84111F677D9A006AA28A /* abCStack.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = abCStack.c; sourceTree = ""; }; - 9D1B84121F677D9A006AA28A /* abCStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = abCStack.h; sourceTree = ""; }; - 9D1B841D1F677DC6006AA28A /* abCExpr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCExpr.c; sourceTree = ""; }; - 9D1B841E1F677DC6006AA28A /* abCExpr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCExpr.h; sourceTree = ""; }; - 9D1B841F1F677DC6006AA28A /* abCExpReal.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCExpReal.c; sourceTree = ""; }; - 9D1B84201F677DC6006AA28A /* abCExpReal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCExpReal.h; sourceTree = ""; }; - 9D1B84211F677DC6006AA28A /* abCExprInt.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCExprInt.c; sourceTree = ""; }; - 9D1B84221F677DC6006AA28A /* abCExprInt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCExprInt.h; sourceTree = ""; }; - 9D1B84241F677DC6006AA28A /* abCOp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOp.c; sourceTree = ""; }; - 9D1B84251F677DC6006AA28A /* abCOp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOp.h; sourceTree = ""; }; - 9D1B84261F677DC6006AA28A /* abCOpAcos.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAcos.c; sourceTree = ""; }; - 9D1B84271F677DC6006AA28A /* abCOpAcos.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAcos.h; sourceTree = ""; }; - 9D1B84281F677DC6006AA28A /* abCOpAdd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAdd.c; sourceTree = ""; }; - 9D1B84291F677DC6006AA28A /* abCOpAdd.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAdd.h; sourceTree = ""; }; - 9D1B842A1F677DC6006AA28A /* abCOpAlog.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAlog.c; sourceTree = ""; }; - 9D1B842B1F677DC6006AA28A /* abCOpAlog.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAlog.h; sourceTree = ""; }; - 9D1B842C1F677DC6006AA28A /* abCOpAnd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAnd.c; sourceTree = ""; }; - 9D1B842D1F677DC6006AA28A /* abCOpAnd.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAnd.h; sourceTree = ""; }; - 9D1B842E1F677DC6006AA28A /* abCOpAsin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAsin.c; sourceTree = ""; }; - 9D1B842F1F677DC6006AA28A /* abCOpAsin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAsin.h; sourceTree = ""; }; - 9D1B84301F677DC6006AA28A /* abCOpAsr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAsr.c; sourceTree = ""; }; - 9D1B84311F677DC6006AA28A /* abCOpAsr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAsr.h; sourceTree = ""; }; - 9D1B84321F677DC6006AA28A /* abCOpAtan.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAtan.c; sourceTree = ""; }; - 9D1B84331F677DC6006AA28A /* abCOpAtan.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAtan.h; sourceTree = ""; }; - 9D1B84341F677DC6006AA28A /* abCOpB2R.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpB2R.c; sourceTree = ""; }; - 9D1B84351F677DC6006AA28A /* abCOpB2R.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpB2R.h; sourceTree = ""; }; - 9D1B84361F677DC6006AA28A /* abCOpBin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpBin.c; sourceTree = ""; }; - 9D1B84371F677DC6006AA28A /* abCOpBin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpBin.h; sourceTree = ""; }; - 9D1B84381F677DC6006AA28A /* abCOpChs.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpChs.c; sourceTree = ""; }; - 9D1B84391F677DC6006AA28A /* abCOpChs.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpChs.h; sourceTree = ""; }; - 9D1B843A1F677DC6006AA28A /* abCOpClear.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpClear.c; sourceTree = ""; }; - 9D1B843B1F677DC6006AA28A /* abCOpClear.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpClear.h; sourceTree = ""; }; - 9D1B843C1F677DC6006AA28A /* abCOpCos.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpCos.c; sourceTree = ""; }; - 9D1B843D1F677DC6006AA28A /* abCOpCos.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpCos.h; sourceTree = ""; }; - 9D1B843E1F677DC6006AA28A /* abCOpCosh.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpCosh.c; sourceTree = ""; }; - 9D1B843F1F677DC6006AA28A /* abCOpCosh.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpCosh.h; sourceTree = ""; }; - 9D1B84401F677DC6006AA28A /* abCOpDec.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpDec.c; sourceTree = ""; }; - 9D1B84411F677DC6006AA28A /* abCOpDec.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpDec.h; sourceTree = ""; }; - 9D1B84421F677DC6006AA28A /* abCOpDiv.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpDiv.c; sourceTree = ""; }; - 9D1B84431F677DC6006AA28A /* abCOpDiv.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpDiv.h; sourceTree = ""; }; - 9D1B84441F677DC6006AA28A /* abCOpDrop.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpDrop.c; sourceTree = ""; }; - 9D1B84451F677DC6006AA28A /* abCOpDrop.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpDrop.h; sourceTree = ""; }; - 9D1B84461F677DC6006AA28A /* abCOpExp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpExp.c; sourceTree = ""; }; - 9D1B84471F677DC6006AA28A /* abCOpExp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpExp.h; sourceTree = ""; }; - 9D1B84481F677DC6006AA28A /* abCOpHex.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpHex.c; sourceTree = ""; }; - 9D1B84491F677DC6006AA28A /* abCOpHex.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpHex.h; sourceTree = ""; }; - 9D1B844A1F677DC6006AA28A /* abCOpInv.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpInv.c; sourceTree = ""; }; - 9D1B844B1F677DC6006AA28A /* abCOpInv.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpInv.h; sourceTree = ""; }; - 9D1B844C1F677DC6006AA28A /* abCOpLn.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpLn.c; sourceTree = ""; }; - 9D1B844D1F677DC6006AA28A /* abCOpLn.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpLn.h; sourceTree = ""; }; - 9D1B844E1F677DC6006AA28A /* abCOpLog.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpLog.c; sourceTree = ""; }; - 9D1B844F1F677DC6006AA28A /* abCOpLog.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpLog.h; sourceTree = ""; }; - 9D1B84501F677DC6006AA28A /* abCOpMult.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpMult.c; sourceTree = ""; }; - 9D1B84511F677DC6006AA28A /* abCOpMult.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpMult.h; sourceTree = ""; }; - 9D1B84521F677DC6006AA28A /* abCOpNot.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpNot.c; sourceTree = ""; }; - 9D1B84531F677DC6006AA28A /* abCOpNot.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpNot.h; sourceTree = ""; }; - 9D1B84541F677DC6006AA28A /* abCOpOct.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpOct.c; sourceTree = ""; }; - 9D1B84551F677DC6006AA28A /* abCOpOct.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpOct.h; sourceTree = ""; }; - 9D1B84561F677DC6006AA28A /* abCOpOr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpOr.c; sourceTree = ""; }; - 9D1B84571F677DC6006AA28A /* abCOpOr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpOr.h; sourceTree = ""; }; - 9D1B84581F677DC6006AA28A /* abCOpPi.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpPi.c; sourceTree = ""; }; - 9D1B84591F677DC6006AA28A /* abCOpPi.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpPi.h; sourceTree = ""; }; - 9D1B845A1F677DC6006AA28A /* abCOpPower.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpPower.c; sourceTree = ""; }; - 9D1B845B1F677DC6006AA28A /* abCOpPower.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpPower.h; sourceTree = ""; }; - 9D1B845C1F677DC6006AA28A /* abCOpR2B.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpR2B.c; sourceTree = ""; }; - 9D1B845D1F677DC6006AA28A /* abCOpR2B.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpR2B.h; sourceTree = ""; }; - 9D1B845E1F677DC6006AA28A /* abCOpRcws.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpRcws.c; sourceTree = ""; }; - 9D1B845F1F677DC6006AA28A /* abCOpRcws.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpRcws.h; sourceTree = ""; }; - 9D1B84601F677DC6006AA28A /* abCOpRl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpRl.c; sourceTree = ""; }; - 9D1B84611F677DC6006AA28A /* abCOpRl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpRl.h; sourceTree = ""; }; - 9D1B84621F677DC6006AA28A /* abCOpRr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpRr.c; sourceTree = ""; }; - 9D1B84631F677DC6006AA28A /* abCOpRr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpRr.h; sourceTree = ""; }; - 9D1B84641F677DC6006AA28A /* abCOpSin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSin.c; sourceTree = ""; }; - 9D1B84651F677DC6006AA28A /* abCOpSin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSin.h; sourceTree = ""; }; - 9D1B84661F677DC6006AA28A /* abCOpSinh.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSinh.c; sourceTree = ""; }; - 9D1B84671F677DC6006AA28A /* abCOpSinh.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSinh.h; sourceTree = ""; }; - 9D1B84681F677DC6006AA28A /* abCOpSl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSl.c; sourceTree = ""; }; - 9D1B84691F677DC6006AA28A /* abCOpSl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSl.h; sourceTree = ""; }; - 9D1B846A1F677DC6006AA28A /* abCOpSq.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSq.c; sourceTree = ""; }; - 9D1B846B1F677DC6006AA28A /* abCOpSq.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSq.h; sourceTree = ""; }; - 9D1B846C1F677DC6006AA28A /* abCOpSqrt.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSqrt.c; sourceTree = ""; }; - 9D1B846D1F677DC6006AA28A /* abCOpSqrt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSqrt.h; sourceTree = ""; }; - 9D1B846E1F677DC6006AA28A /* abCOpSr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSr.c; sourceTree = ""; }; - 9D1B846F1F677DC6006AA28A /* abCOpSr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSr.h; sourceTree = ""; }; - 9D1B84701F677DC6006AA28A /* abCOpStws.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpStws.c; sourceTree = ""; }; - 9D1B84711F677DC6006AA28A /* abCOpStws.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpStws.h; sourceTree = ""; }; - 9D1B84721F677DC6006AA28A /* abCOpSubtr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSubtr.c; sourceTree = ""; }; - 9D1B84731F677DC6006AA28A /* abCOpSubtr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSubtr.h; sourceTree = ""; }; - 9D1B84741F677DC6006AA28A /* abCOpSwap.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSwap.c; sourceTree = ""; }; - 9D1B84751F677DC6006AA28A /* abCOpSwap.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSwap.h; sourceTree = ""; }; - 9D1B84761F677DC6006AA28A /* abCOpTan.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpTan.c; sourceTree = ""; }; - 9D1B84771F677DC6006AA28A /* abCOpTan.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpTan.h; sourceTree = ""; }; - 9D1B84781F677DC6006AA28A /* abCOpTanh.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpTanh.c; sourceTree = ""; }; - 9D1B84791F677DC6006AA28A /* abCOpTanh.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpTanh.h; sourceTree = ""; }; - 9D1B847A1F677DC6006AA28A /* abCOpXor.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpXor.c; sourceTree = ""; }; - 9D1B847B1F677DC6006AA28A /* abCOpXor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpXor.h; sourceTree = ""; }; - 9D1B847D1F677DC6006AA28A /* abCalc.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = abCalc.png; sourceTree = ""; }; - 9D1B847E1F677DC6006AA28A /* abCalcNDA.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = abCalcNDA.png; sourceTree = ""; }; - 9D1B84821F677E91006AA28A /* abCalcNDA.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = abCalcNDA.c; path = NDA/abCalcNDA.c; sourceTree = ""; }; - 9D1B84831F677E91006AA28A /* abCalcNDA.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = abCalcNDA.h; path = NDA/abCalcNDA.h; sourceTree = ""; }; - 9D1B84841F677E91006AA28A /* abCalcNDA.rez */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.rez; name = abCalcNDA.rez; path = NDA/abCalcNDA.rez; sourceTree = ""; }; - 9D1B84871F677EA1006AA28A /* abCMain.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = abCMain.c; path = Shell/abCMain.c; sourceTree = ""; }; - 9D1B848A1F677FB0006AA28A /* abCalcHelp */ = {isa = PBXFileReference; lastKnownFileType = text; name = abCalcHelp; path = copydir/abCalcHelp; sourceTree = ""; }; - 9D1B848B1F67808A006AA28A /* shell.mk */ = {isa = PBXFileReference; lastKnownFileType = text; path = shell.mk; sourceTree = ""; }; - 9D1B848C1F67810E006AA28A /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; - 9D98EBBE1F6788AD003BCFE7 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; + 9DFA299A22FBB4E500CFBC74 /* abCalc */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = abCalc; sourceTree = BUILT_PRODUCTS_DIR; }; + 9DFA299D22FBB4E500CFBC74 /* abCalc.2mg */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = abCalc.2mg; sourceTree = BUILT_PRODUCTS_DIR; }; + 9DFA29A222FBB4E500CFBC74 /* doNotBuild */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = doNotBuild; sourceTree = BUILT_PRODUCTS_DIR; }; + 9DFA29A922FBB4E500CFBC74 /* nda.mk */ = {isa = PBXFileReference; lastKnownFileType = text; path = nda.mk; sourceTree = ""; }; + 9DFA29AC22FBB4E500CFBC74 /* config.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = config.txt; path = make/config.txt; sourceTree = ""; }; + 9DFA29AE22FBB4E500CFBC74 /* createDiskImage */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = createDiskImage; path = make/createDiskImage; sourceTree = ""; }; + 9DFA29B022FBB4E500CFBC74 /* head.mk */ = {isa = PBXFileReference; lastKnownFileType = text; name = head.mk; path = make/head.mk; sourceTree = ""; }; + 9DFA29B222FBB4E500CFBC74 /* launchEmulator */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = launchEmulator; path = make/launchEmulator; sourceTree = ""; }; + 9DFA29B422FBB4E500CFBC74 /* orca-asm */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = "orca-asm"; path = "make/orca-asm"; sourceTree = ""; }; + 9DFA29B622FBB4E500CFBC74 /* orca-cc */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = "orca-cc"; path = "make/orca-cc"; sourceTree = ""; }; + 9DFA29B822FBB4E500CFBC74 /* orca-rez */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; name = "orca-rez"; path = "make/orca-rez"; sourceTree = ""; }; + 9DFA29BA22FBB4E500CFBC74 /* system601.2mg */ = {isa = PBXFileReference; lastKnownFileType = file; name = system601.2mg; path = make/system601.2mg; sourceTree = ""; }; + 9DFA29BC22FBB4E500CFBC74 /* tail.mk */ = {isa = PBXFileReference; lastKnownFileType = text; name = tail.mk; path = make/tail.mk; sourceTree = ""; }; + 9DFA29BF22FBB4E500CFBC74 /* abCalc.xcscheme */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = abCalc.xcscheme; path = abCalc.xcodeproj/xcshareddata/xcschemes/abCalc.xcscheme; sourceTree = SOURCE_ROOT; }; + 9DFA29CF22FBB50200CFBC74 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; + 9DFA29D022FBB53400CFBC74 /* abCalc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = abCalc.h; sourceTree = ""; }; + 9DFA29D122FBB53400CFBC74 /* abCStack.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = abCStack.c; sourceTree = ""; }; + 9DFA29D222FBB53400CFBC74 /* abCMode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = abCMode.h; sourceTree = ""; }; + 9DFA29D322FBB53400CFBC74 /* abCStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = abCStack.h; sourceTree = ""; }; + 9DFA29D422FBB53400CFBC74 /* abCMode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = abCMode.c; sourceTree = ""; }; + 9DFA29D522FBB53500CFBC74 /* abCalc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = abCalc.c; sourceTree = ""; }; + 9DFA29D622FBB53500CFBC74 /* abCError.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = abCError.c; sourceTree = ""; }; + 9DFA29D722FBB53500CFBC74 /* abCError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = abCError.h; sourceTree = ""; }; + 9DFA29DD22FBB54600CFBC74 /* shell.mk */ = {isa = PBXFileReference; lastKnownFileType = text; path = shell.mk; sourceTree = ""; }; + 9DFA29DF22FBB55A00CFBC74 /* abCOpSl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSl.c; sourceTree = ""; }; + 9DFA29E022FBB55A00CFBC74 /* abCOpDiv.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpDiv.h; sourceTree = ""; }; + 9DFA29E122FBB55A00CFBC74 /* abCOpXor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpXor.h; sourceTree = ""; }; + 9DFA29E222FBB55A00CFBC74 /* abCOpNot.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpNot.c; sourceTree = ""; }; + 9DFA29E322FBB55A00CFBC74 /* abCOpSinh.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSinh.h; sourceTree = ""; }; + 9DFA29E422FBB55A00CFBC74 /* abCOpInv.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpInv.h; sourceTree = ""; }; + 9DFA29E522FBB55A00CFBC74 /* abCOpTan.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpTan.c; sourceTree = ""; }; + 9DFA29E622FBB55A00CFBC74 /* abCOpBin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpBin.h; sourceTree = ""; }; + 9DFA29E722FBB55A00CFBC74 /* abCOpStws.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpStws.c; sourceTree = ""; }; + 9DFA29E822FBB55A00CFBC74 /* abCOpRr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpRr.h; sourceTree = ""; }; + 9DFA29E922FBB55A00CFBC74 /* abCOpSwap.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSwap.c; sourceTree = ""; }; + 9DFA29EA22FBB55A00CFBC74 /* abCOpOct.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpOct.h; sourceTree = ""; }; + 9DFA29EB22FBB55A00CFBC74 /* abCOpAlog.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAlog.c; sourceTree = ""; }; + 9DFA29EC22FBB55A00CFBC74 /* abCOpSr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSr.h; sourceTree = ""; }; + 9DFA29ED22FBB55A00CFBC74 /* abCOpDrop.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpDrop.h; sourceTree = ""; }; + 9DFA29EE22FBB55A00CFBC74 /* abCOpB2R.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpB2R.c; sourceTree = ""; }; + 9DFA29EF22FBB55A00CFBC74 /* abCOpRcws.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpRcws.c; sourceTree = ""; }; + 9DFA29F022FBB55A00CFBC74 /* abCOpPower.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpPower.h; sourceTree = ""; }; + 9DFA29F122FBB55A00CFBC74 /* abCOpSin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSin.h; sourceTree = ""; }; + 9DFA29F222FBB55A00CFBC74 /* abCOpRl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpRl.c; sourceTree = ""; }; + 9DFA29F322FBB55A00CFBC74 /* abCOpCos.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpCos.h; sourceTree = ""; }; + 9DFA29F422FBB55A00CFBC74 /* abCOpExp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpExp.h; sourceTree = ""; }; + 9DFA29F522FBB55A00CFBC74 /* abCOpAdd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAdd.c; sourceTree = ""; }; + 9DFA29F622FBB55A00CFBC74 /* abCOpR2B.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpR2B.h; sourceTree = ""; }; + 9DFA29F722FBB55A00CFBC74 /* abCOpOr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpOr.h; sourceTree = ""; }; + 9DFA29F822FBB55A00CFBC74 /* abCOpPi.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpPi.c; sourceTree = ""; }; + 9DFA29F922FBB55A00CFBC74 /* abCOpClear.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpClear.h; sourceTree = ""; }; + 9DFA29FA22FBB55A00CFBC74 /* abCOpSubtr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSubtr.h; sourceTree = ""; }; + 9DFA29FB22FBB55A00CFBC74 /* abCOpTanh.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpTanh.c; sourceTree = ""; }; + 9DFA29FC22FBB55A00CFBC74 /* abCOp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOp.h; sourceTree = ""; }; + 9DFA29FD22FBB55A00CFBC74 /* abCOpCosh.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpCosh.c; sourceTree = ""; }; + 9DFA29FE22FBB55A00CFBC74 /* abCOpAtan.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAtan.h; sourceTree = ""; }; + 9DFA29FF22FBB55A00CFBC74 /* abCOpMult.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpMult.h; sourceTree = ""; }; + 9DFA2A0022FBB55A00CFBC74 /* abCOpSqrt.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSqrt.c; sourceTree = ""; }; + 9DFA2A0122FBB55A00CFBC74 /* abCOpChs.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpChs.c; sourceTree = ""; }; + 9DFA2A0222FBB55A00CFBC74 /* abCOpAsin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAsin.c; sourceTree = ""; }; + 9DFA2A0322FBB55A00CFBC74 /* abCOpDec.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpDec.c; sourceTree = ""; }; + 9DFA2A0422FBB55A00CFBC74 /* abCOpAsr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAsr.c; sourceTree = ""; }; + 9DFA2A0522FBB55A00CFBC74 /* abCOpHex.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpHex.h; sourceTree = ""; }; + 9DFA2A0622FBB55A00CFBC74 /* abCOpSq.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSq.h; sourceTree = ""; }; + 9DFA2A0722FBB55A00CFBC74 /* abCOpLog.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpLog.h; sourceTree = ""; }; + 9DFA2A0822FBB55A00CFBC74 /* abCOpLn.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpLn.c; sourceTree = ""; }; + 9DFA2A0922FBB55A00CFBC74 /* abCOpAnd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAnd.c; sourceTree = ""; }; + 9DFA2A0A22FBB55A00CFBC74 /* abCOpAcos.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAcos.c; sourceTree = ""; }; + 9DFA2A0B22FBB55A00CFBC74 /* abCOpOct.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpOct.c; sourceTree = ""; }; + 9DFA2A0C22FBB55A00CFBC74 /* abCOpSwap.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSwap.h; sourceTree = ""; }; + 9DFA2A0D22FBB55A00CFBC74 /* abCOpRr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpRr.c; sourceTree = ""; }; + 9DFA2A0E22FBB55A00CFBC74 /* abCOpStws.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpStws.h; sourceTree = ""; }; + 9DFA2A0F22FBB55A00CFBC74 /* abCOpInv.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpInv.c; sourceTree = ""; }; + 9DFA2A1022FBB55A00CFBC74 /* abCOpTan.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpTan.h; sourceTree = ""; }; + 9DFA2A1122FBB55A00CFBC74 /* abCOpBin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpBin.c; sourceTree = ""; }; + 9DFA2A1222FBB55A00CFBC74 /* abCOpXor.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpXor.c; sourceTree = ""; }; + 9DFA2A1322FBB55A00CFBC74 /* abCOpDiv.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpDiv.c; sourceTree = ""; }; + 9DFA2A1422FBB55A00CFBC74 /* abCOpSl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSl.h; sourceTree = ""; }; + 9DFA2A1522FBB55A00CFBC74 /* abCOpSinh.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSinh.c; sourceTree = ""; }; + 9DFA2A1622FBB55A00CFBC74 /* abCOpNot.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpNot.h; sourceTree = ""; }; + 9DFA2A1722FBB55A00CFBC74 /* abCOpPi.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpPi.h; sourceTree = ""; }; + 9DFA2A1822FBB55A00CFBC74 /* abCOpClear.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpClear.c; sourceTree = ""; }; + 9DFA2A1922FBB55A00CFBC74 /* abCOpOr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpOr.c; sourceTree = ""; }; + 9DFA2A1A22FBB55A00CFBC74 /* abCOpR2B.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpR2B.c; sourceTree = ""; }; + 9DFA2A1B22FBB55A00CFBC74 /* abCOpCosh.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpCosh.h; sourceTree = ""; }; + 9DFA2A1C22FBB55A00CFBC74 /* abCOp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOp.c; sourceTree = ""; }; + 9DFA2A1D22FBB55A00CFBC74 /* abCOpTanh.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpTanh.h; sourceTree = ""; }; + 9DFA2A1E22FBB55A00CFBC74 /* abCOpSubtr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSubtr.c; sourceTree = ""; }; + 9DFA2A1F22FBB55A00CFBC74 /* abCOpRl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpRl.h; sourceTree = ""; }; + 9DFA2A2022FBB55A00CFBC74 /* abCOpExp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpExp.c; sourceTree = ""; }; + 9DFA2A2122FBB55A00CFBC74 /* abCOpAdd.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAdd.h; sourceTree = ""; }; + 9DFA2A2222FBB55A00CFBC74 /* abCOpCos.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpCos.c; sourceTree = ""; }; + 9DFA2A2322FBB55A00CFBC74 /* abCOpRcws.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpRcws.h; sourceTree = ""; }; + 9DFA2A2422FBB55A00CFBC74 /* abCOpB2R.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpB2R.h; sourceTree = ""; }; + 9DFA2A2522FBB55A00CFBC74 /* abCOpDrop.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpDrop.c; sourceTree = ""; }; + 9DFA2A2622FBB55A00CFBC74 /* abCOpSin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSin.c; sourceTree = ""; }; + 9DFA2A2722FBB55A00CFBC74 /* abCOpPower.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpPower.c; sourceTree = ""; }; + 9DFA2A2822FBB55A00CFBC74 /* abCOpAlog.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAlog.h; sourceTree = ""; }; + 9DFA2A2922FBB55A00CFBC74 /* abCOpSr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSr.c; sourceTree = ""; }; + 9DFA2A2A22FBB55A00CFBC74 /* abCOpChs.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpChs.h; sourceTree = ""; }; + 9DFA2A2B22FBB55A00CFBC74 /* abCOpSqrt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpSqrt.h; sourceTree = ""; }; + 9DFA2A2C22FBB55A00CFBC74 /* abCOpMult.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpMult.c; sourceTree = ""; }; + 9DFA2A2D22FBB55A00CFBC74 /* abCOpAtan.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpAtan.c; sourceTree = ""; }; + 9DFA2A2E22FBB55A00CFBC74 /* abCOpAcos.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAcos.h; sourceTree = ""; }; + 9DFA2A2F22FBB55A00CFBC74 /* abCOpAnd.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAnd.h; sourceTree = ""; }; + 9DFA2A3022FBB55A00CFBC74 /* abCOpLn.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpLn.h; sourceTree = ""; }; + 9DFA2A3122FBB55A00CFBC74 /* abCOpAsr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAsr.h; sourceTree = ""; }; + 9DFA2A3222FBB55A00CFBC74 /* abCOpLog.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpLog.c; sourceTree = ""; }; + 9DFA2A3322FBB55A00CFBC74 /* abCOpSq.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpSq.c; sourceTree = ""; }; + 9DFA2A3422FBB55A00CFBC74 /* abCOpHex.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCOpHex.c; sourceTree = ""; }; + 9DFA2A3522FBB55A00CFBC74 /* abCOpDec.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpDec.h; sourceTree = ""; }; + 9DFA2A3622FBB55A00CFBC74 /* abCOpAsin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCOpAsin.h; sourceTree = ""; }; + 9DFA2A3822FBB55A00CFBC74 /* abCalcHelp */ = {isa = PBXFileReference; lastKnownFileType = text; path = abCalcHelp; sourceTree = ""; }; + 9DFA2A4522FBB55A00CFBC74 /* abCMain.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCMain.c; sourceTree = ""; }; + 9DFA2A4722FBB55B00CFBC74 /* abCExpReal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCExpReal.h; sourceTree = ""; }; + 9DFA2A4822FBB55B00CFBC74 /* abCExprInt.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCExprInt.c; sourceTree = ""; }; + 9DFA2A4922FBB55B00CFBC74 /* abCExpr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCExpr.h; sourceTree = ""; }; + 9DFA2A4A22FBB55B00CFBC74 /* abCExpReal.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCExpReal.c; sourceTree = ""; }; + 9DFA2A4B22FBB55B00CFBC74 /* abCExprInt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCExprInt.h; sourceTree = ""; }; + 9DFA2A4C22FBB55B00CFBC74 /* abCExpr.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCExpr.c; sourceTree = ""; }; + 9DFA2A4E22FBB55C00CFBC74 /* abCalc.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = abCalc.png; sourceTree = ""; }; + 9DFA2A4F22FBB55C00CFBC74 /* abCalcNDA.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = abCalcNDA.png; sourceTree = ""; }; + 9DFA2A5122FBB55C00CFBC74 /* abCalcNDA.rez */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.rez; path = abCalcNDA.rez; sourceTree = ""; }; + 9DFA2A5222FBB55C00CFBC74 /* abCalcNDA.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = abCalcNDA.c; sourceTree = ""; }; + 9DFA2A5322FBB55C00CFBC74 /* abCalcNDA.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = abCalcNDA.h; sourceTree = ""; }; + 9DFA2A5422FBB67A00CFBC74 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 9D1B83D91F677D78006AA28A /* Frameworks */ = { + 9DFA299F22FBB4E500CFBC74 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( @@ -192,224 +187,225 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 9D1B83D21F677D78006AA28A = { + 9DFA299322FBB4E500CFBC74 = { isa = PBXGroup; children = ( - 9D98EBBE1F6788AD003BCFE7 /* README.md */, - 9D1B83DE1F677D78006AA28A /* abCalc */, - 9D1B83DD1F677D78006AA28A /* Products */, + 9DFA29CF22FBB50200CFBC74 /* README.md */, + 9DFA29A322FBB4E500CFBC74 /* abCalc */, + 9DFA299B22FBB4E500CFBC74 /* Products */, ); sourceTree = ""; }; - 9D1B83DD1F677D78006AA28A /* Products */ = { + 9DFA299B22FBB4E500CFBC74 /* Products */ = { isa = PBXGroup; children = ( - 9D1B83DC1F677D78006AA28A /* doNotBuild */, + 9DFA299A22FBB4E500CFBC74 /* abCalc */, + 9DFA299D22FBB4E500CFBC74 /* abCalc.2mg */, + 9DFA29A222FBB4E500CFBC74 /* doNotBuild */, ); name = Products; sourceTree = ""; }; - 9D1B83DE1F677D78006AA28A /* abCalc */ = { + 9DFA29A322FBB4E500CFBC74 /* abCalc */ = { isa = PBXGroup; children = ( - 9D1B84061F677D9A006AA28A /* abCalc.c */, - 9D1B84071F677D9A006AA28A /* abCalc.h */, - 9D1B840C1F677D9A006AA28A /* abCError.c */, - 9D1B840D1F677D9A006AA28A /* abCError.h */, - 9D1B840F1F677D9A006AA28A /* abCMode.c */, - 9D1B84101F677D9A006AA28A /* abCMode.h */, - 9D1B84111F677D9A006AA28A /* abCStack.c */, - 9D1B84121F677D9A006AA28A /* abCStack.h */, - 9D1B848C1F67810E006AA28A /* Makefile */, - 9D1B83E41F677D78006AA28A /* nda.mk */, - 9D1B848B1F67808A006AA28A /* shell.mk */, - 9D1B84811F677E27006AA28A /* shell */, - 9D1B847F1F677E14006AA28A /* nda */, - 9D1B841C1F677DC6006AA28A /* expr */, - 9D1B84231F677DC6006AA28A /* ops */, - 9D1B847C1F677DC6006AA28A /* screenshots */, - 9D1B84891F677F9F006AA28A /* copydir */, - 9D1B83E61F677D78006AA28A /* make */, - 9D1B83FB1F677D78006AA28A /* Supporting Files */, + 9DFA2A3722FBB55A00CFBC74 /* copydir */, + 9DFA2A4622FBB55B00CFBC74 /* expr */, + 9DFA2A5022FBB55C00CFBC74 /* nda */, + 9DFA29DE22FBB55A00CFBC74 /* ops */, + 9DFA2A4D22FBB55C00CFBC74 /* screenshots */, + 9DFA2A4422FBB55A00CFBC74 /* shell */, + 9DFA29D522FBB53500CFBC74 /* abCalc.c */, + 9DFA29D022FBB53400CFBC74 /* abCalc.h */, + 9DFA29D622FBB53500CFBC74 /* abCError.c */, + 9DFA29D722FBB53500CFBC74 /* abCError.h */, + 9DFA29D422FBB53400CFBC74 /* abCMode.c */, + 9DFA29D222FBB53400CFBC74 /* abCMode.h */, + 9DFA29D122FBB53400CFBC74 /* abCStack.c */, + 9DFA29D322FBB53400CFBC74 /* abCStack.h */, + 9DFA2A5422FBB67A00CFBC74 /* Makefile */, + 9DFA29A922FBB4E500CFBC74 /* nda.mk */, + 9DFA29DD22FBB54600CFBC74 /* shell.mk */, + 9DFA29AB22FBB4E500CFBC74 /* make */, + 9DFA29BE22FBB4E500CFBC74 /* Supporting Files */, ); path = abCalc; sourceTree = ""; }; - 9D1B83E61F677D78006AA28A /* make */ = { + 9DFA29AB22FBB4E500CFBC74 /* make */ = { isa = PBXGroup; children = ( - 9D1B83E71F677D78006AA28A /* config.txt */, - 9D1B83E91F677D78006AA28A /* createDiskImage */, - 9D1B83EB1F677D78006AA28A /* head.mk */, - 9D1B83ED1F677D78006AA28A /* launchEmulator */, - 9D1B83EF1F677D78006AA28A /* orca-asm */, - 9D1B83F11F677D78006AA28A /* orca-cc */, - 9D1B83F31F677D78006AA28A /* orca-macgen */, - 9D1B83F51F677D78006AA28A /* orca-rez */, - 9D1B83F71F677D78006AA28A /* system601.2mg */, - 9D1B83F91F677D78006AA28A /* tail.mk */, + 9DFA29AC22FBB4E500CFBC74 /* config.txt */, + 9DFA29AE22FBB4E500CFBC74 /* createDiskImage */, + 9DFA29B022FBB4E500CFBC74 /* head.mk */, + 9DFA29B222FBB4E500CFBC74 /* launchEmulator */, + 9DFA29B422FBB4E500CFBC74 /* orca-asm */, + 9DFA29B622FBB4E500CFBC74 /* orca-cc */, + 9DFA29B822FBB4E500CFBC74 /* orca-rez */, + 9DFA29BA22FBB4E500CFBC74 /* system601.2mg */, + 9DFA29BC22FBB4E500CFBC74 /* tail.mk */, ); name = make; sourceTree = ""; }; - 9D1B83FB1F677D78006AA28A /* Supporting Files */ = { + 9DFA29BE22FBB4E500CFBC74 /* Supporting Files */ = { isa = PBXGroup; children = ( - 9D1B83FC1F677D78006AA28A /* abCalc.xcscheme */, + 9DFA29BF22FBB4E500CFBC74 /* abCalc.xcscheme */, ); name = "Supporting Files"; sourceTree = ""; }; - 9D1B841C1F677DC6006AA28A /* expr */ = { + 9DFA29DE22FBB55A00CFBC74 /* ops */ = { isa = PBXGroup; children = ( - 9D1B841D1F677DC6006AA28A /* abCExpr.c */, - 9D1B841E1F677DC6006AA28A /* abCExpr.h */, - 9D1B841F1F677DC6006AA28A /* abCExpReal.c */, - 9D1B84201F677DC6006AA28A /* abCExpReal.h */, - 9D1B84211F677DC6006AA28A /* abCExprInt.c */, - 9D1B84221F677DC6006AA28A /* abCExprInt.h */, - ); - path = expr; - sourceTree = ""; - }; - 9D1B84231F677DC6006AA28A /* ops */ = { - isa = PBXGroup; - children = ( - 9D1B84241F677DC6006AA28A /* abCOp.c */, - 9D1B84251F677DC6006AA28A /* abCOp.h */, - 9D1B84261F677DC6006AA28A /* abCOpAcos.c */, - 9D1B84271F677DC6006AA28A /* abCOpAcos.h */, - 9D1B84281F677DC6006AA28A /* abCOpAdd.c */, - 9D1B84291F677DC6006AA28A /* abCOpAdd.h */, - 9D1B842A1F677DC6006AA28A /* abCOpAlog.c */, - 9D1B842B1F677DC6006AA28A /* abCOpAlog.h */, - 9D1B842C1F677DC6006AA28A /* abCOpAnd.c */, - 9D1B842D1F677DC6006AA28A /* abCOpAnd.h */, - 9D1B842E1F677DC6006AA28A /* abCOpAsin.c */, - 9D1B842F1F677DC6006AA28A /* abCOpAsin.h */, - 9D1B84301F677DC6006AA28A /* abCOpAsr.c */, - 9D1B84311F677DC6006AA28A /* abCOpAsr.h */, - 9D1B84321F677DC6006AA28A /* abCOpAtan.c */, - 9D1B84331F677DC6006AA28A /* abCOpAtan.h */, - 9D1B84341F677DC6006AA28A /* abCOpB2R.c */, - 9D1B84351F677DC6006AA28A /* abCOpB2R.h */, - 9D1B84361F677DC6006AA28A /* abCOpBin.c */, - 9D1B84371F677DC6006AA28A /* abCOpBin.h */, - 9D1B84381F677DC6006AA28A /* abCOpChs.c */, - 9D1B84391F677DC6006AA28A /* abCOpChs.h */, - 9D1B843A1F677DC6006AA28A /* abCOpClear.c */, - 9D1B843B1F677DC6006AA28A /* abCOpClear.h */, - 9D1B843C1F677DC6006AA28A /* abCOpCos.c */, - 9D1B843D1F677DC6006AA28A /* abCOpCos.h */, - 9D1B843E1F677DC6006AA28A /* abCOpCosh.c */, - 9D1B843F1F677DC6006AA28A /* abCOpCosh.h */, - 9D1B84401F677DC6006AA28A /* abCOpDec.c */, - 9D1B84411F677DC6006AA28A /* abCOpDec.h */, - 9D1B84421F677DC6006AA28A /* abCOpDiv.c */, - 9D1B84431F677DC6006AA28A /* abCOpDiv.h */, - 9D1B84441F677DC6006AA28A /* abCOpDrop.c */, - 9D1B84451F677DC6006AA28A /* abCOpDrop.h */, - 9D1B84461F677DC6006AA28A /* abCOpExp.c */, - 9D1B84471F677DC6006AA28A /* abCOpExp.h */, - 9D1B84481F677DC6006AA28A /* abCOpHex.c */, - 9D1B84491F677DC6006AA28A /* abCOpHex.h */, - 9D1B844A1F677DC6006AA28A /* abCOpInv.c */, - 9D1B844B1F677DC6006AA28A /* abCOpInv.h */, - 9D1B844C1F677DC6006AA28A /* abCOpLn.c */, - 9D1B844D1F677DC6006AA28A /* abCOpLn.h */, - 9D1B844E1F677DC6006AA28A /* abCOpLog.c */, - 9D1B844F1F677DC6006AA28A /* abCOpLog.h */, - 9D1B84501F677DC6006AA28A /* abCOpMult.c */, - 9D1B84511F677DC6006AA28A /* abCOpMult.h */, - 9D1B84521F677DC6006AA28A /* abCOpNot.c */, - 9D1B84531F677DC6006AA28A /* abCOpNot.h */, - 9D1B84541F677DC6006AA28A /* abCOpOct.c */, - 9D1B84551F677DC6006AA28A /* abCOpOct.h */, - 9D1B84561F677DC6006AA28A /* abCOpOr.c */, - 9D1B84571F677DC6006AA28A /* abCOpOr.h */, - 9D1B84581F677DC6006AA28A /* abCOpPi.c */, - 9D1B84591F677DC6006AA28A /* abCOpPi.h */, - 9D1B845A1F677DC6006AA28A /* abCOpPower.c */, - 9D1B845B1F677DC6006AA28A /* abCOpPower.h */, - 9D1B845C1F677DC6006AA28A /* abCOpR2B.c */, - 9D1B845D1F677DC6006AA28A /* abCOpR2B.h */, - 9D1B845E1F677DC6006AA28A /* abCOpRcws.c */, - 9D1B845F1F677DC6006AA28A /* abCOpRcws.h */, - 9D1B84601F677DC6006AA28A /* abCOpRl.c */, - 9D1B84611F677DC6006AA28A /* abCOpRl.h */, - 9D1B84621F677DC6006AA28A /* abCOpRr.c */, - 9D1B84631F677DC6006AA28A /* abCOpRr.h */, - 9D1B84641F677DC6006AA28A /* abCOpSin.c */, - 9D1B84651F677DC6006AA28A /* abCOpSin.h */, - 9D1B84661F677DC6006AA28A /* abCOpSinh.c */, - 9D1B84671F677DC6006AA28A /* abCOpSinh.h */, - 9D1B84681F677DC6006AA28A /* abCOpSl.c */, - 9D1B84691F677DC6006AA28A /* abCOpSl.h */, - 9D1B846A1F677DC6006AA28A /* abCOpSq.c */, - 9D1B846B1F677DC6006AA28A /* abCOpSq.h */, - 9D1B846C1F677DC6006AA28A /* abCOpSqrt.c */, - 9D1B846D1F677DC6006AA28A /* abCOpSqrt.h */, - 9D1B846E1F677DC6006AA28A /* abCOpSr.c */, - 9D1B846F1F677DC6006AA28A /* abCOpSr.h */, - 9D1B84701F677DC6006AA28A /* abCOpStws.c */, - 9D1B84711F677DC6006AA28A /* abCOpStws.h */, - 9D1B84721F677DC6006AA28A /* abCOpSubtr.c */, - 9D1B84731F677DC6006AA28A /* abCOpSubtr.h */, - 9D1B84741F677DC6006AA28A /* abCOpSwap.c */, - 9D1B84751F677DC6006AA28A /* abCOpSwap.h */, - 9D1B84761F677DC6006AA28A /* abCOpTan.c */, - 9D1B84771F677DC6006AA28A /* abCOpTan.h */, - 9D1B84781F677DC6006AA28A /* abCOpTanh.c */, - 9D1B84791F677DC6006AA28A /* abCOpTanh.h */, - 9D1B847A1F677DC6006AA28A /* abCOpXor.c */, - 9D1B847B1F677DC6006AA28A /* abCOpXor.h */, + 9DFA29DF22FBB55A00CFBC74 /* abCOpSl.c */, + 9DFA29E022FBB55A00CFBC74 /* abCOpDiv.h */, + 9DFA29E122FBB55A00CFBC74 /* abCOpXor.h */, + 9DFA29E222FBB55A00CFBC74 /* abCOpNot.c */, + 9DFA29E322FBB55A00CFBC74 /* abCOpSinh.h */, + 9DFA29E422FBB55A00CFBC74 /* abCOpInv.h */, + 9DFA29E522FBB55A00CFBC74 /* abCOpTan.c */, + 9DFA29E622FBB55A00CFBC74 /* abCOpBin.h */, + 9DFA29E722FBB55A00CFBC74 /* abCOpStws.c */, + 9DFA29E822FBB55A00CFBC74 /* abCOpRr.h */, + 9DFA29E922FBB55A00CFBC74 /* abCOpSwap.c */, + 9DFA29EA22FBB55A00CFBC74 /* abCOpOct.h */, + 9DFA29EB22FBB55A00CFBC74 /* abCOpAlog.c */, + 9DFA29EC22FBB55A00CFBC74 /* abCOpSr.h */, + 9DFA29ED22FBB55A00CFBC74 /* abCOpDrop.h */, + 9DFA29EE22FBB55A00CFBC74 /* abCOpB2R.c */, + 9DFA29EF22FBB55A00CFBC74 /* abCOpRcws.c */, + 9DFA29F022FBB55A00CFBC74 /* abCOpPower.h */, + 9DFA29F122FBB55A00CFBC74 /* abCOpSin.h */, + 9DFA29F222FBB55A00CFBC74 /* abCOpRl.c */, + 9DFA29F322FBB55A00CFBC74 /* abCOpCos.h */, + 9DFA29F422FBB55A00CFBC74 /* abCOpExp.h */, + 9DFA29F522FBB55A00CFBC74 /* abCOpAdd.c */, + 9DFA29F622FBB55A00CFBC74 /* abCOpR2B.h */, + 9DFA29F722FBB55A00CFBC74 /* abCOpOr.h */, + 9DFA29F822FBB55A00CFBC74 /* abCOpPi.c */, + 9DFA29F922FBB55A00CFBC74 /* abCOpClear.h */, + 9DFA29FA22FBB55A00CFBC74 /* abCOpSubtr.h */, + 9DFA29FB22FBB55A00CFBC74 /* abCOpTanh.c */, + 9DFA29FC22FBB55A00CFBC74 /* abCOp.h */, + 9DFA29FD22FBB55A00CFBC74 /* abCOpCosh.c */, + 9DFA29FE22FBB55A00CFBC74 /* abCOpAtan.h */, + 9DFA29FF22FBB55A00CFBC74 /* abCOpMult.h */, + 9DFA2A0022FBB55A00CFBC74 /* abCOpSqrt.c */, + 9DFA2A0122FBB55A00CFBC74 /* abCOpChs.c */, + 9DFA2A0222FBB55A00CFBC74 /* abCOpAsin.c */, + 9DFA2A0322FBB55A00CFBC74 /* abCOpDec.c */, + 9DFA2A0422FBB55A00CFBC74 /* abCOpAsr.c */, + 9DFA2A0522FBB55A00CFBC74 /* abCOpHex.h */, + 9DFA2A0622FBB55A00CFBC74 /* abCOpSq.h */, + 9DFA2A0722FBB55A00CFBC74 /* abCOpLog.h */, + 9DFA2A0822FBB55A00CFBC74 /* abCOpLn.c */, + 9DFA2A0922FBB55A00CFBC74 /* abCOpAnd.c */, + 9DFA2A0A22FBB55A00CFBC74 /* abCOpAcos.c */, + 9DFA2A0B22FBB55A00CFBC74 /* abCOpOct.c */, + 9DFA2A0C22FBB55A00CFBC74 /* abCOpSwap.h */, + 9DFA2A0D22FBB55A00CFBC74 /* abCOpRr.c */, + 9DFA2A0E22FBB55A00CFBC74 /* abCOpStws.h */, + 9DFA2A0F22FBB55A00CFBC74 /* abCOpInv.c */, + 9DFA2A1022FBB55A00CFBC74 /* abCOpTan.h */, + 9DFA2A1122FBB55A00CFBC74 /* abCOpBin.c */, + 9DFA2A1222FBB55A00CFBC74 /* abCOpXor.c */, + 9DFA2A1322FBB55A00CFBC74 /* abCOpDiv.c */, + 9DFA2A1422FBB55A00CFBC74 /* abCOpSl.h */, + 9DFA2A1522FBB55A00CFBC74 /* abCOpSinh.c */, + 9DFA2A1622FBB55A00CFBC74 /* abCOpNot.h */, + 9DFA2A1722FBB55A00CFBC74 /* abCOpPi.h */, + 9DFA2A1822FBB55A00CFBC74 /* abCOpClear.c */, + 9DFA2A1922FBB55A00CFBC74 /* abCOpOr.c */, + 9DFA2A1A22FBB55A00CFBC74 /* abCOpR2B.c */, + 9DFA2A1B22FBB55A00CFBC74 /* abCOpCosh.h */, + 9DFA2A1C22FBB55A00CFBC74 /* abCOp.c */, + 9DFA2A1D22FBB55A00CFBC74 /* abCOpTanh.h */, + 9DFA2A1E22FBB55A00CFBC74 /* abCOpSubtr.c */, + 9DFA2A1F22FBB55A00CFBC74 /* abCOpRl.h */, + 9DFA2A2022FBB55A00CFBC74 /* abCOpExp.c */, + 9DFA2A2122FBB55A00CFBC74 /* abCOpAdd.h */, + 9DFA2A2222FBB55A00CFBC74 /* abCOpCos.c */, + 9DFA2A2322FBB55A00CFBC74 /* abCOpRcws.h */, + 9DFA2A2422FBB55A00CFBC74 /* abCOpB2R.h */, + 9DFA2A2522FBB55A00CFBC74 /* abCOpDrop.c */, + 9DFA2A2622FBB55A00CFBC74 /* abCOpSin.c */, + 9DFA2A2722FBB55A00CFBC74 /* abCOpPower.c */, + 9DFA2A2822FBB55A00CFBC74 /* abCOpAlog.h */, + 9DFA2A2922FBB55A00CFBC74 /* abCOpSr.c */, + 9DFA2A2A22FBB55A00CFBC74 /* abCOpChs.h */, + 9DFA2A2B22FBB55A00CFBC74 /* abCOpSqrt.h */, + 9DFA2A2C22FBB55A00CFBC74 /* abCOpMult.c */, + 9DFA2A2D22FBB55A00CFBC74 /* abCOpAtan.c */, + 9DFA2A2E22FBB55A00CFBC74 /* abCOpAcos.h */, + 9DFA2A2F22FBB55A00CFBC74 /* abCOpAnd.h */, + 9DFA2A3022FBB55A00CFBC74 /* abCOpLn.h */, + 9DFA2A3122FBB55A00CFBC74 /* abCOpAsr.h */, + 9DFA2A3222FBB55A00CFBC74 /* abCOpLog.c */, + 9DFA2A3322FBB55A00CFBC74 /* abCOpSq.c */, + 9DFA2A3422FBB55A00CFBC74 /* abCOpHex.c */, + 9DFA2A3522FBB55A00CFBC74 /* abCOpDec.h */, + 9DFA2A3622FBB55A00CFBC74 /* abCOpAsin.h */, ); path = ops; sourceTree = ""; }; - 9D1B847C1F677DC6006AA28A /* screenshots */ = { + 9DFA2A3722FBB55A00CFBC74 /* copydir */ = { isa = PBXGroup; children = ( - 9D1B847D1F677DC6006AA28A /* abCalc.png */, - 9D1B847E1F677DC6006AA28A /* abCalcNDA.png */, + 9DFA2A3822FBB55A00CFBC74 /* abCalcHelp */, + ); + path = copydir; + sourceTree = ""; + }; + 9DFA2A4422FBB55A00CFBC74 /* shell */ = { + isa = PBXGroup; + children = ( + 9DFA2A4522FBB55A00CFBC74 /* abCMain.c */, + ); + path = shell; + sourceTree = ""; + }; + 9DFA2A4622FBB55B00CFBC74 /* expr */ = { + isa = PBXGroup; + children = ( + 9DFA2A4722FBB55B00CFBC74 /* abCExpReal.h */, + 9DFA2A4822FBB55B00CFBC74 /* abCExprInt.c */, + 9DFA2A4922FBB55B00CFBC74 /* abCExpr.h */, + 9DFA2A4A22FBB55B00CFBC74 /* abCExpReal.c */, + 9DFA2A4B22FBB55B00CFBC74 /* abCExprInt.h */, + 9DFA2A4C22FBB55B00CFBC74 /* abCExpr.c */, + ); + path = expr; + sourceTree = ""; + }; + 9DFA2A4D22FBB55C00CFBC74 /* screenshots */ = { + isa = PBXGroup; + children = ( + 9DFA2A4E22FBB55C00CFBC74 /* abCalc.png */, + 9DFA2A4F22FBB55C00CFBC74 /* abCalcNDA.png */, ); path = screenshots; sourceTree = ""; }; - 9D1B847F1F677E14006AA28A /* nda */ = { + 9DFA2A5022FBB55C00CFBC74 /* nda */ = { isa = PBXGroup; children = ( - 9D1B84821F677E91006AA28A /* abCalcNDA.c */, - 9D1B84831F677E91006AA28A /* abCalcNDA.h */, - 9D1B84841F677E91006AA28A /* abCalcNDA.rez */, + 9DFA2A5122FBB55C00CFBC74 /* abCalcNDA.rez */, + 9DFA2A5222FBB55C00CFBC74 /* abCalcNDA.c */, + 9DFA2A5322FBB55C00CFBC74 /* abCalcNDA.h */, ); - name = nda; - sourceTree = ""; - }; - 9D1B84811F677E27006AA28A /* shell */ = { - isa = PBXGroup; - children = ( - 9D1B84871F677EA1006AA28A /* abCMain.c */, - ); - name = shell; - sourceTree = ""; - }; - 9D1B84891F677F9F006AA28A /* copydir */ = { - isa = PBXGroup; - children = ( - 9D1B848A1F677FB0006AA28A /* abCalcHelp */, - ); - name = copydir; + path = nda; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXLegacyTarget section */ - 9D1B83D71F677D78006AA28A /* abCalc */ = { + 9DFA299822FBB4E500CFBC74 /* abCalc */ = { isa = PBXLegacyTarget; buildArgumentsString = "-C abCalc $(ACTION)"; - buildConfigurationList = 9D1B84001F677D78006AA28A /* Build configuration list for PBXLegacyTarget "abCalc" */; + buildConfigurationList = 9DFA29C322FBB4E500CFBC74 /* Build configuration list for PBXLegacyTarget "abCalc" */; buildPhases = ( ); buildToolPath = /usr/bin/make; @@ -422,13 +418,41 @@ /* End PBXLegacyTarget section */ /* Begin PBXNativeTarget section */ - 9D1B83DB1F677D78006AA28A /* doNotBuild */ = { + 9DFA299922FBB4E500CFBC74 /* Binary */ = { isa = PBXNativeTarget; - buildConfigurationList = 9D1B84031F677D78006AA28A /* Build configuration list for PBXNativeTarget "doNotBuild" */; + buildConfigurationList = 9DFA29C622FBB4E500CFBC74 /* Build configuration list for PBXNativeTarget "Binary" */; buildPhases = ( - 9D1B83D81F677D78006AA28A /* Sources */, - 9D1B83D91F677D78006AA28A /* Frameworks */, - 9D1B83DA1F677D78006AA28A /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Binary; + productName = Binary; + productReference = 9DFA299A22FBB4E500CFBC74 /* abCalc */; + productType = "com.apple.product-type.tool"; + }; + 9DFA299C22FBB4E500CFBC74 /* DiskImage */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9DFA29C922FBB4E500CFBC74 /* Build configuration list for PBXNativeTarget "DiskImage" */; + buildPhases = ( + ); + buildRules = ( + ); + dependencies = ( + ); + name = DiskImage; + productName = DiskImage; + productReference = 9DFA299D22FBB4E500CFBC74 /* abCalc.2mg */; + productType = "com.apple.product-type.tool"; + }; + 9DFA29A122FBB4E500CFBC74 /* doNotBuild */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9DFA29CC22FBB4E500CFBC74 /* Build configuration list for PBXNativeTarget "doNotBuild" */; + buildPhases = ( + 9DFA299E22FBB4E500CFBC74 /* Sources */, + 9DFA299F22FBB4E500CFBC74 /* Frameworks */, + 9DFA29A022FBB4E500CFBC74 /* CopyFiles */, ); buildRules = ( ); @@ -436,94 +460,106 @@ ); name = doNotBuild; productName = doNotBuild; - productReference = 9D1B83DC1F677D78006AA28A /* doNotBuild */; + productReference = 9DFA29A222FBB4E500CFBC74 /* doNotBuild */; productType = "com.apple.product-type.tool"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - 9D1B83D31F677D78006AA28A /* Project object */ = { + 9DFA299422FBB4E500CFBC74 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0830; + LastUpgradeCheck = 1030; ORGANIZATIONNAME = "Jeremy Rand"; TargetAttributes = { - 9D1B83D71F677D78006AA28A = { - CreatedOnToolsVersion = 8.3.3; - ProvisioningStyle = Automatic; + 9DFA299822FBB4E500CFBC74 = { + CreatedOnToolsVersion = 10.3; }; - 9D1B83DB1F677D78006AA28A = { - CreatedOnToolsVersion = 8.3.3; - ProvisioningStyle = Automatic; + 9DFA299922FBB4E500CFBC74 = { + CreatedOnToolsVersion = 10.3; + }; + 9DFA299C22FBB4E500CFBC74 = { + CreatedOnToolsVersion = 10.3; + }; + 9DFA29A122FBB4E500CFBC74 = { + CreatedOnToolsVersion = 10.3; }; }; }; - buildConfigurationList = 9D1B83D61F677D78006AA28A /* Build configuration list for PBXProject "abCalc" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + buildConfigurationList = 9DFA299722FBB4E500CFBC74 /* Build configuration list for PBXProject "abCalc" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, ); - mainGroup = 9D1B83D21F677D78006AA28A; - productRefGroup = 9D1B83DD1F677D78006AA28A /* Products */; + mainGroup = 9DFA299322FBB4E500CFBC74; + productRefGroup = 9DFA299B22FBB4E500CFBC74 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - 9D1B83D71F677D78006AA28A /* abCalc */, - 9D1B83DB1F677D78006AA28A /* doNotBuild */, + 9DFA299822FBB4E500CFBC74 /* abCalc */, + 9DFA299922FBB4E500CFBC74 /* Binary */, + 9DFA299C22FBB4E500CFBC74 /* DiskImage */, + 9DFA29A122FBB4E500CFBC74 /* doNotBuild */, ); }; /* End PBXProject section */ /* Begin PBXSourcesBuildPhase section */ - 9D1B83D81F677D78006AA28A /* Sources */ = { + 9DFA299E22FBB4E500CFBC74 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9D1B84191F677D9A006AA28A /* abCStack.c in Sources */, - 9D1B83E51F677D78006AA28A /* nda.mk in Sources */, - 9D98EBBF1F6788AD003BCFE7 /* README.md in Sources */, - 9D1B848D1F67810E006AA28A /* Makefile in Sources */, - 9D1B84161F677D9A006AA28A /* abCError.c in Sources */, - 9D1B84851F677E91006AA28A /* abCalcNDA.c in Sources */, - 9D1B84181F677D9A006AA28A /* abCMode.c in Sources */, - 9D1B84861F677E91006AA28A /* abCalcNDA.h in Sources */, - 9D1B84131F677D9A006AA28A /* abCalc.c in Sources */, - 9D1B84881F677EA1006AA28A /* abCMain.c in Sources */, + 9DFA2A5522FBB67A00CFBC74 /* Makefile in Sources */, + 9DFA29DA22FBB53500CFBC74 /* abCalc.c in Sources */, + 9DFA29DB22FBB53500CFBC74 /* abCError.c in Sources */, + 9DFA29D822FBB53500CFBC74 /* abCStack.c in Sources */, + 9DFA29D922FBB53500CFBC74 /* abCMode.c in Sources */, + 9DFA29AA22FBB4E500CFBC74 /* nda.mk in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin XCBuildConfiguration section */ - 9D1B83FE1F677D78006AA28A /* Debug */ = { + 9DFA29C122FBB4E500CFBC74 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_C_LANGUAGE_STANDARD = gnu11; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; @@ -537,38 +573,49 @@ 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; }; - 9D1B83FF1F677D78006AA28A /* Release */ = { + 9DFA29C222FBB4E500CFBC74 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_C_LANGUAGE_STANDARD = gnu11; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; @@ -577,14 +624,17 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; }; name = Release; }; - 9D1B84011F677D78006AA28A /* Debug */ = { + 9DFA29C422FBB4E500CFBC74 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CODE_SIGN_STYLE = Automatic; DEBUGGING_SYMBOLS = YES; DEBUG_INFORMATION_FORMAT = dwarf; + DEVELOPMENT_TEAM = VD9FGCW36C; GCC_GENERATE_DEBUGGING_SYMBOLS = YES; GCC_OPTIMIZATION_LEVEL = 0; OTHER_CFLAGS = ""; @@ -593,24 +643,66 @@ }; name = Debug; }; - 9D1B84021F677D78006AA28A /* Release */ = { + 9DFA29C522FBB4E500CFBC74 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CODE_SIGN_STYLE = Automatic; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEVELOPMENT_TEAM = VD9FGCW36C; OTHER_CFLAGS = ""; OTHER_LDFLAGS = ""; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; }; - 9D1B84041F677D78006AA28A /* Debug */ = { + 9DFA29C722FBB4E500CFBC74 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = VD9FGCW36C; + PRODUCT_NAME = abCalc; + }; + name = Debug; + }; + 9DFA29C822FBB4E500CFBC74 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = VD9FGCW36C; + PRODUCT_NAME = abCalc; + }; + name = Release; + }; + 9DFA29CA22FBB4E500CFBC74 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = VD9FGCW36C; + PRODUCT_NAME = abCalc.2mg; + }; + name = Debug; + }; + 9DFA29CB22FBB4E500CFBC74 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = VD9FGCW36C; + PRODUCT_NAME = abCalc.2mg; + }; + name = Release; + }; + 9DFA29CD22FBB4E500CFBC74 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = VD9FGCW36C; GCC_PREPROCESSOR_DEFINITIONS = ( "inline(X,Y)=\"\"\n", + "extended=double\n", "pascal=\"\"", ); HEADER_SEARCH_PATHS = ( + "$TEMP_ROOT/abCalc.build/$CONFIGURATION/abCalc.build/DerivedSources\n", "$GOLDEN_GATE/Libraries/ORCACDefs\n", "~/Library/GoldenGate/Libraries/ORCACDefs\n", "/Library/GoldenGate/Libraries/ORCACDefs\n", @@ -620,14 +712,18 @@ }; name = Debug; }; - 9D1B84051F677D78006AA28A /* Release */ = { + 9DFA29CE22FBB4E500CFBC74 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = VD9FGCW36C; GCC_PREPROCESSOR_DEFINITIONS = ( "inline(X,Y)=\"\"\n", + "extended=double\n", "pascal=\"\"", ); HEADER_SEARCH_PATHS = ( + "$TEMP_ROOT/abCalc.build/$CONFIGURATION/abCalc.build/DerivedSources\n", "$GOLDEN_GATE/Libraries/ORCACDefs\n", "~/Library/GoldenGate/Libraries/ORCACDefs\n", "/Library/GoldenGate/Libraries/ORCACDefs\n", @@ -640,34 +736,52 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 9D1B83D61F677D78006AA28A /* Build configuration list for PBXProject "abCalc" */ = { + 9DFA299722FBB4E500CFBC74 /* Build configuration list for PBXProject "abCalc" */ = { isa = XCConfigurationList; buildConfigurations = ( - 9D1B83FE1F677D78006AA28A /* Debug */, - 9D1B83FF1F677D78006AA28A /* Release */, + 9DFA29C122FBB4E500CFBC74 /* Debug */, + 9DFA29C222FBB4E500CFBC74 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 9D1B84001F677D78006AA28A /* Build configuration list for PBXLegacyTarget "abCalc" */ = { + 9DFA29C322FBB4E500CFBC74 /* Build configuration list for PBXLegacyTarget "abCalc" */ = { isa = XCConfigurationList; buildConfigurations = ( - 9D1B84011F677D78006AA28A /* Debug */, - 9D1B84021F677D78006AA28A /* Release */, + 9DFA29C422FBB4E500CFBC74 /* Debug */, + 9DFA29C522FBB4E500CFBC74 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 9D1B84031F677D78006AA28A /* Build configuration list for PBXNativeTarget "doNotBuild" */ = { + 9DFA29C622FBB4E500CFBC74 /* Build configuration list for PBXNativeTarget "Binary" */ = { isa = XCConfigurationList; buildConfigurations = ( - 9D1B84041F677D78006AA28A /* Debug */, - 9D1B84051F677D78006AA28A /* Release */, + 9DFA29C722FBB4E500CFBC74 /* Debug */, + 9DFA29C822FBB4E500CFBC74 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9DFA29C922FBB4E500CFBC74 /* Build configuration list for PBXNativeTarget "DiskImage" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9DFA29CA22FBB4E500CFBC74 /* Debug */, + 9DFA29CB22FBB4E500CFBC74 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9DFA29CC22FBB4E500CFBC74 /* Build configuration list for PBXNativeTarget "doNotBuild" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9DFA29CD22FBB4E500CFBC74 /* Debug */, + 9DFA29CE22FBB4E500CFBC74 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = 9D1B83D31F677D78006AA28A /* Project object */; + rootObject = 9DFA299422FBB4E500CFBC74 /* Project object */; } diff --git a/abCalc.xcodeproj/project.xcworkspace/xcuserdata/jrand.xcuserdatad/UserInterfaceState.xcuserstate b/abCalc.xcodeproj/project.xcworkspace/xcuserdata/jrand.xcuserdatad/UserInterfaceState.xcuserstate index 9e18554bdd638b79c8a91b6d392d3697b88057dd..824718ffbf0ab59d62d5600acc9460966659c2d4 100644 GIT binary patch literal 27547 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 literal 20052 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 + + + + + + diff --git a/abCalc.xcodeproj/xcuserdata/jrand.xcuserdatad/xcschemes/xcschememanagement.plist b/abCalc.xcodeproj/xcuserdata/jrand.xcuserdatad/xcschemes/xcschememanagement.plist index bb3a56c..e82b209 100644 --- a/abCalc.xcodeproj/xcuserdata/jrand.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/abCalc.xcodeproj/xcuserdata/jrand.xcuserdatad/xcschemes/xcschememanagement.plist @@ -4,28 +4,25 @@ SchemeUserState + Binary.xcscheme_^#shared#^_ + + orderHint + 1 + + DiskImage.xcscheme_^#shared#^_ + + orderHint + 2 + abCalc.xcscheme_^#shared#^_ orderHint 0 - doNotBuild.xcscheme + doNotBuild.xcscheme_^#shared#^_ orderHint - 1 - - - SuppressBuildableAutocreation - - 9D1B83D71F677D78006AA28A - - primary - - - 9D1B83DB1F677D78006AA28A - - primary - + 3 diff --git a/abCalc/make/config.txt b/abCalc/make/config.txt index 143956e..6ff83e4 100644 --- a/abCalc/make/config.txt +++ b/abCalc/make/config.txt @@ -1,4 +1,4 @@ -# GSplus configuration file version 0.13 +# GSplus configuration file version 0.14 s5d1 = s5d2 = @@ -6,7 +6,7 @@ s5d2 = s6d1 = s6d2 = -s7d1 = ../abCalcNDA.2mg +s7d1 = /Users/jrand/Library/Developer/Xcode/DerivedData/abCalc-bpuqqdowxwsrymetcyxvfclvynre/Build/Products/Debug/abCalcNDA.2mg g_limit_speed = 0 diff --git a/abCalc/make/createDiskImage b/abCalc/make/createDiskImage index 8808c32..d83e6a8 100755 --- a/abCalc/make/createDiskImage +++ b/abCalc/make/createDiskImage @@ -1,6 +1,5 @@ #!/bin/sh -set -x MOUNTDIR=/tmp/a2gs_mount.$$ TMPDISKIMAGE=/tmp/a2gs_diskimage_$$.2mg @@ -90,8 +89,20 @@ do cd "$OLDDIR" done -umount "$MOUNTDIR" -if [ $? != 0 ] +RETRIES=0 +while [ $RETRIES -lt 5 ] +do + umount "$MOUNTDIR" + if [ $? -eq 0 ] + then + break + fi + + RETRIES=`expr $RETRIES + 1` + sleep 1 +done + +if [ $RETRIES -ge 5 ] then echo Unable to unmount the disk image. cleanupAndExit diff --git a/abCalc/make/head.mk b/abCalc/make/head.mk index 189ae91..20a1aca 100644 --- a/abCalc/make/head.mk +++ b/abCalc/make/head.mk @@ -8,12 +8,40 @@ ORCA_BINDIR = /usr/local/bin export ORCA=$(ORCA_BINDIR)/orca -AC=make/AppleCommander.jar - TARGETTYPE=shell +ASSEMBLER=orcam + +MERLIN_DIR=/usr/local +export MERLIN_BIN=$(MERLIN_DIR)/bin/Merlin32 +export MERLIN_LIB=$(MERLIN_DIR)/lib/Merlin +MERLIN_ASM=make/merlin-asm + 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 + COMPILE=make/orca-cc CFLAGS= -P -I ROOTCFILE=main.c @@ -37,6 +65,11 @@ CHTYP=$(ORCA) chtyp RM=rm -f CP=cp +MV=mv +MKDIR=mkdir -p + +DESKTOP_RES_MODE=640 +MESSAGE_CENTER=0 GSPLUS=/Applications/GSplus.app/Contents/MacOS/gsplus GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport @@ -44,9 +77,19 @@ GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport export GSPLUS export GSPORT +XCODE_PATH=/Applications/Xcode.app +XCODE_INFO=$(XCODE_PATH)/Contents/Info.plist + +ORCAM_PLUGIN_PATH=$(HOME)/Library/Developer/Xcode/Plug-ins/OrcaM.ideplugin +ORCAM_PLUGIN_INFO=$(ORCAM_PLUGIN_PATH)/Contents/Info.plist + +XCODE_PLUGIN_COMPATIBILITY=DVTPlugInCompatibilityUUID + .PHONY: all gen genclean all: + $(MKDIR) $(OBJDIR) $(GENDIR) $(TARGETDIR) @make gen @make build + diff --git a/abCalc/make/launchEmulator b/abCalc/make/launchEmulator index 49f7ff5..e9e7086 100755 --- a/abCalc/make/launchEmulator +++ b/abCalc/make/launchEmulator @@ -16,7 +16,14 @@ then exit 1 fi +DISKIMAGE="$1" +if echo $DISKIMAGE | grep -v '^/' > /dev/null +then + DISKIMAGE="$PWD/$DISKIMAGE" +fi + cd make +sed -i "" "s:^s7d1 *=.*$:s7d1 = $DISKIMAGE:" config.txt # This magic ensure that clicking stop in Xcode results in the emulator terminating. diff --git a/abCalc/make/orca-asm b/abCalc/make/orca-asm index cb73ce9..43f0cc4 100755 --- a/abCalc/make/orca-asm +++ b/abCalc/make/orca-asm @@ -1,18 +1,77 @@ #!/bin/bash +TMPFILE=/tmp/orca-macgen.$$ + FILENAME="$1" shift +DESTBASENAME="$1" +shift + if echo $FILENAME | grep -v '\.s$' > /dev/null then - echo Expected first argument to be a *.s file but got $FILENAME + echo Expected second argument to be a *.s file but got $FILENAME exit 1 fi +SRCBASENAME=`echo $FILENAME | sed 's/\.s$//'` +SRCMACROSNAME="${SRCBASENAME}.macros" +SRCROOTNAME="${SRCBASENAME}.ROOT" +SRCOBJNAME="${SRCBASENAME}.a" + +DESTMACROSNAME="${DESTBASENAME}.macros" +DESTDEPSNAME="${DESTBASENAME}.macros.d" +DESTROOTNAME="${DESTBASENAME}.ROOT" +DESTOBJNAME="${DESTBASENAME}.a" + +$ORCA --trace-gsos macgen $MACGENFLAGS "$FILENAME" "$SRCMACROSNAME" $MACGENMACROS < /dev/null 2> $TMPFILE +RESULT=$? + +sed '/^[A-Za-z][A-Za-z]*(.*)$/d' $TMPFILE >&2 + +if [ "$RESULT" -ne 0 ] +then + rm -f "$TMPFILE" + rm -f "$SRCMACROSNAME" + exit $RESULT +fi + +DEPS=`awk ' + /^FastFileLoad/ { + sub(/^FastFileLoad\(/, ""); + sub(/\)$/, ""); + print}' $TMPFILE | sort -u | while read FILE + do + if [ -f "$FILE" ] + then + echo $FILE + fi + done | tr '\012' ' '` + +rm -f $TMPFILE + DIRNAME=`dirname $FILENAME` BASENAME=`basename $FILENAME .s` -cd "$DIRNAME" +pushd "$DIRNAME" > /dev/null $ORCA assemble $* keep="${BASENAME}" "${BASENAME}.s" RESULT=$? -exit $RESULT +popd > /dev/null + +if [ "$RESULT" -ne 0 ] +then + rm -f "$SRCROOTNAME" + rm -f "$SRCMACROSNAME" + rm -f "$SRCOBJNAME" +fi + +mkdir -p `dirname "$DESTROOTNAME"` +mv -f "$SRCROOTNAME" "$DESTROOTNAME" 2> /dev/null +mv -f "$SRCMACROSNAME" "$DESTMACROSNAME" 2> /dev/null +mv -f "$SRCOBJNAME" "$DESTOBJNAME" 2> /dev/null + +cat > $DESTDEPSNAME << EOF +$DESTROOTNAME: $DEPS +EOF + +exit 0 diff --git a/abCalc/make/orca-cc b/abCalc/make/orca-cc index 6e7df1e..0f6b429 100755 --- a/abCalc/make/orca-cc +++ b/abCalc/make/orca-cc @@ -1,10 +1,14 @@ #!/bin/bash -TMPFILE=/tmp/orca-cc.$$ +STDOUTPUT=/tmp/orca-cc-std.$$ +ERROUTPUT=/tmp/orca-cc-errs.$$ FILENAME="$1" shift +DESTBASENAME="$1" +shift + if echo $FILENAME | grep -v '\.c$' > /dev/null then echo Expected first argument to be a *.c file but got $FILENAME @@ -23,29 +27,53 @@ do fi done -BASENAME=`echo $FILENAME | sed 's/\.c$//'` -DEPSNAME="${BASENAME}.d" -OBJSNAME="${BASENAME}.a" -ROOTNAME="${BASENAME}.root" +SRCBASENAME=`echo "$FILENAME" | sed 's/\.c$//'` +SRCOBJNAME="${SRCBASENAME}.a" +SRCROOTNAME="${SRCBASENAME}.root" -$ORCA --trace-gsos compile $COMPILEARGS "$FILENAME" keep="${BASENAME}" $CCARGS 2> $TMPFILE +DESTDEPSNAME="${DESTBASENAME}.d" +DESTOBJNAME="${DESTBASENAME}.a" +DESTROOTNAME="${DESTBASENAME}.root" + +$ORCA --trace-gsos compile $COMPILEARGS "$FILENAME" keep="${SRCBASENAME}" $CCARGS > $STDOUTPUT 2> $ERROUTPUT RESULT=$? -sed '/^[A-Za-z][A-Za-z]*(.*)$/d' $TMPFILE >&2 +awk ' + { + print $0 + } + + $1 ~ /^[0-9][0-9]*$/ { + LINENO=$1 + } + + /^ *\^/ { + sub(/^ *\^/, "", $0) + printf("%s/%s:%d:0: error: %s\n", PWD, FILE, LINENO, $0) + } +' "PWD=`pwd`" "FILE=$FILENAME" $STDOUTPUT + + +sed '/^[A-Za-z][A-Za-z]*(.*)$/d' $ERROUTPUT >&2 if [ "$RESULT" -ne 0 ] then - rm -f $TMPFILE - rm -f $OBJSNAME - rm -f $ROOTNAME + rm -f $ERROUTPUT + rm -f $STDOUTPUT + rm -f $SRCOBJNAME + rm -f $SRCROOTNAME exit $RESULT fi +mkdir -p `dirname "$DESTOBJNAME"` +mv -f "$SRCOBJNAME" "$DESTOBJNAME" 2> /dev/null +mv -f "$SRCROOTNAME" "$DESTROOTNAME" 2> /dev/null + DEPS=`awk ' /^FastFileLoad/ { sub(/^FastFileLoad\(/, ""); sub(/\)$/, ""); - print}' $TMPFILE | sort -u | while read FILE + print}' $ERROUTPUT | sort -u | while read FILE do if [ -f "$FILE" ] then @@ -53,14 +81,15 @@ DEPS=`awk ' fi done | tr '\012' ' '` -rm -f $TMPFILE +rm -f $ERROUTPUT +rm -f $STDOUTPUT # We add a dependency for both the .o and the .root file. If this is the # main.c file being compiled, we need the dependency on the .root file. -cat > $DEPSNAME << EOF -$OBJSNAME: $DEPS +cat > $DESTDEPSNAME << EOF +$DESTOBJNAME: $DEPS -$ROOTNAME: $DEPS +$DESTROOTNAME: $DEPS EOF exit 0 diff --git a/abCalc/make/orca-macgen b/abCalc/make/orca-macgen deleted file mode 100755 index 6afcdc8..0000000 --- a/abCalc/make/orca-macgen +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/bash - -TMPFILE=/tmp/orca-macgen.$$ - -MACGENFLAGS="$1" -FILENAME="$2" -shift -shift - -if echo $FILENAME | grep -v '\.s$' > /dev/null -then - echo Expected second argument to be a *.s file but got $FILENAME - exit 1 -fi - -BASENAME=`echo $FILENAME | sed 's/\.s$//'` -MACROSNAME="${BASENAME}.macros" -DEPSNAME="${MACROSNAME}.d" - -$ORCA --trace-gsos macgen $MACGENFLAGS "$FILENAME" $* < /dev/null 2> $TMPFILE -RESULT=$? - -sed '/^[A-Za-z][A-Za-z]*(.*)$/d' $TMPFILE >&2 - -if [ "$RESULT" -ne 0 ] -then - rm -f $TMPFILE - rm -f $MACROSNAME - exit $RESULT -fi - -DEPS=`awk ' - /^FastFileLoad/ { - sub(/^FastFileLoad\(/, ""); - sub(/\)$/, ""); - print}' $TMPFILE | sort -u | while read FILE - do - if [ -f "$FILE" ] - then - echo $FILE - fi - done | tr '\012' ' '` - -rm -f $TMPFILE - -cat > $DEPSNAME << EOF -$MACROSNAME: $DEPS -EOF - -exit 0 diff --git a/abCalc/make/orca-rez b/abCalc/make/orca-rez index da6c137..d5204e4 100755 --- a/abCalc/make/orca-rez +++ b/abCalc/make/orca-rez @@ -1,37 +1,60 @@ #!/bin/bash -TMPFILE=/tmp/orca-rez.$$ +ERROUTPUT=/tmp/orca-rez-err.$$ FILENAME="$1" shift +DESTBASENAME="$1" +shift + if echo $FILENAME | grep -v '\.rez$' > /dev/null then echo Expected first argument to be a *.rez file but got $FILENAME exit 1 fi -BASENAME=`echo $FILENAME | sed 's/\.rez$//'` -DEPSNAME="${BASENAME}.rez.d" -OBJSNAME="${BASENAME}.r" +SRCBASENAME=`echo $FILENAME | sed 's/\.rez$//'` +SRCOBJNAME="${SRCBASENAME}.r" -$ORCA --trace-gsos compile $* keep="${OBJSNAME}" "$FILENAME" 2> $TMPFILE +DESTDEPSNAME="${DESTBASENAME}.rez.d" +DESTOBJNAME="${DESTBASENAME}.r" + +$ORCA --trace-gsos compile "$@" keep="${SRCOBJNAME}" "$FILENAME" 2> $ERROUTPUT RESULT=$? -sed '/^[A-Za-z][A-Za-z]*(.*)$/d' $TMPFILE >&2 +awk ' + /^[A-Za-z][A-Za-z]*\(.*\)$/ { + next + } + + { + print + } + + /^File [^ ]*; Line [0-9][0-9]*;/ { + sub(/;/,"",$4) + LINENO=$4 + sub(/^File [^ ]*; Line [0-9][0-9]*/, "", $0) + printf("%s/%s:%d:0: error: %s\n", PWD, FILE, LINENO, $0) + } +' "PWD=`pwd`" "FILE=$FILENAME" $ERROUTPUT >&2 if [ "$RESULT" -ne 0 ] then - rm -f $TMPFILE - rm -f $OBJSNAME + rm -f $ERROUTPUT + rm -f $SRCOBJNAME exit $RESULT fi +mkdir -p `dirname "$DESTOBJNAME"` +mv -f "$SRCOBJNAME" "$DESTOBJNAME" 2> /dev/null + DEPS=`awk ' /^FastFileLoad/ { sub(/^FastFileLoad\(/, ""); sub(/\)$/, ""); - print}' $TMPFILE | sort -u | while read FILE + print}' $ERROUTPUT | sort -u | while read FILE do if [ -f "$FILE" ] then @@ -39,7 +62,7 @@ DEPS=`awk ' fi done` -echo $OBJSNAME: $DEPS > $DEPSNAME -rm -f $TMPFILE +echo $DESTOBJNAME: $DEPS > $DESTDEPSNAME +rm -f $ERROUTPUT exit 0 diff --git a/abCalc/make/system601.2mg b/abCalc/make/system601.2mg index 394d3a2d5a002728303869e9f230494422be9652..12d9c00cadbbcd7b2bd69ec1d4de0613386e6399 100644 GIT binary patch delta 319307 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

+3a)Un5-{RaAtcyj#HQ3>-?7cYA|I}drhiKTbf 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å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 bC;>`<5}*Vq0ZM=ppaduZO5pz$0S)&*SsgkS diff --git a/abCalc/make/tail.mk b/abCalc/make/tail.mk index c7be210..a1690d3 100644 --- a/abCalc/make/tail.mk +++ b/abCalc/make/tail.mk @@ -6,53 +6,70 @@ export PATH := $(PATH):$(ORCA_BIN) CWD=$(shell pwd) -DISKIMAGE=$(PGM).2mg +DISKIMAGE=$(TARGETDIR)/$(PGM).2mg BUILDTARGET=$(DISKIMAGE) EXECTARGET=executeGUI DISKIMAGEDEST=. +AUXTYPE= +CFLAGS+=-i$(GENDIR) + +vpath $(GENDIR) ifeq ($(TARGETTYPE),shell) FILETYPE=exe EXECTARGET=executeShell - BUILDTARGET=$(PGM) + BUILDTARGET=$(TARGETDIR)/$(PGM) else ifeq ($(TARGETTYPE),desktop) FILETYPE=s16 + ifeq ($(MESSAGE_CENTER),1) + AUXTYPE=-a 0x0000db07 + else + AUXTYPE=-a 0x0000db03 + endif + CFLAGS+=-dMESSAGE_CENTER=$(MESSAGE_CENTER) + REZFLAGS+=rez='-d DESKTOP_RES_MODE=$(DESKTOP_RES_MODE)' + REZFLAGS+=rez='-d MESSAGE_CENTER=$(MESSAGE_CENTER)' else ifeq ($(TARGETTYPE),cda) FILETYPE=cda DISKIMAGEDEST=System/Desk.Accs else ifeq ($(TARGETTYPE),cdev) - BINTARGET=$(PGM).bin + BINTARGET=$(TARGETDIR)/$(PGM).bin FILETYPE=199 DISKIMAGEDEST=System/CDevs + REZFLAGS+=rez='-d BINTARGET="$(BINTARGET)"' else ifeq ($(TARGETTYPE),nba) FILETYPE=exe - BUILDTARGET=$(PGM) + BUILDTARGET=$(TARGETDIR)/$(PGM) else ifeq ($(TARGETTYPE),nda) FILETYPE=nda DISKIMAGEDEST=System/Desk.Accs else ifeq ($(TARGETTYPE),xcmd) FILETYPE=exe - BUILDTARGET=$(PGM) + BUILDTARGET=$(TARGETDIR)/$(PGM) endif -ifeq ($(wildcard $(ROOTCFILE)),) - ROOTCFILE= + +ASM_SRCS=$(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.s, $(SRCDIRS))))) + +ifeq ($(ASSEMBLER),orcam) + ASM_MACROS=$(patsubst %.s, $(OBJDIR)/%.macros, $(ASM_SRCS)) + ASM_DEPS=$(patsubst %.s, $(OBJDIR)/%.macros.d, $(ASM_SRCS)) + ASM_ROOTS=$(patsubst %.s, $(OBJDIR)/%.ROOT, $(ASM_SRCS)) + ASM_OBJS=$(patsubst %.s, $(OBJDIR)/%.a, $(ASM_SRCS)) + + ifeq ($(wildcard $(ROOTCFILE)),) + ROOTCFILE= + endif + + C_ROOTS=$(patsubst %.c, $(OBJDIR)/%.root, $(ROOTCFILE)) + C_SRCS+=$(filter-out $(ROOTCFILE), $(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.c, $(SRCDIRS)))))) + C_OBJS=$(patsubst %.c, $(OBJDIR)/%.a, $(C_SRCS)) + C_DEPS=$(patsubst %.c, $(OBJDIR)/%.d, $(ROOTCFILE)) $(patsubst %.c, $(OBJDIR)/%.d, $(C_SRCS)) endif -C_ROOTS=$(ROOTCFILE:.c=.root) -C_SRCS+=$(filter-out $(ROOTCFILE), $(patsubst ./%, %, $(wildcard $(addsuffix /*.c, $(SRCDIRS))))) -C_OBJS=$(C_SRCS:.c=.a) -C_DEPS=$(ROOTCFILE:.c=.d) $(C_SRCS:.c=.d) - -ASM_SRCS=$(patsubst ./%, %, $(wildcard $(addsuffix /*.s, $(SRCDIRS)))) -ASM_MACROS=$(ASM_SRCS:.s=.macros) -ASM_DEPS=$(ASM_SRCS:.s=.macros.d) -ASM_ROOTS=$(ASM_SRCS:.s=.ROOT) -ASM_OBJS=$(ASM_SRCS:.s=.a) - -REZ_SRCS=$(patsubst ./%, %, $(wildcard $(addsuffix /*.rez, $(SRCDIRS)))) -REZ_DEPS=$(REZ_SRCS:.rez=.rez.d) -REZ_OBJS=$(REZ_SRCS:.rez=.r) +REZ_SRCS=$(patsubst $(GENDIR)/%, %, $(patsubst ./%, %, $(wildcard $(addsuffix /*.rez, $(SRCDIRS))))) +REZ_DEPS=$(patsubst %.rez, $(OBJDIR)/%.rez.d, $(REZ_SRCS)) +REZ_OBJS=$(patsubst %.rez, $(OBJDIR)/%.r, $(REZ_SRCS)) ifneq ($(firstword $(REZ_SRCS)), $(lastword $(REZ_SRCS))) $(error Only a single resource file supported, found $(REZ_SRCS)) @@ -70,14 +87,19 @@ ALL_DEPS=$(C_DEPS) $(ASM_DEPS) $(REZ_DEPS) EXECCMD= -.PHONY: build execute executeShell executeGUI clean +.PHONY: build execute executeShell executeGUI clean xcodefix .PRECIOUS: $(ASM_MACROS) build: $(BUILDTARGET) +gen: xcodefix + +xcodefix: + defaults write "$(ORCAM_PLUGIN_INFO)" $(XCODE_PLUGIN_COMPATIBILITY)s -array `defaults read "$(XCODE_INFO)" $(XCODE_PLUGIN_COMPATIBILITY)` || true + clean: genclean - $(RM) "$(PGM)" $(BINTARGET) + $(RM) "$(TARGETDIR)/$(PGM)" $(BINTARGET) $(RM) $(ALL_OBJS) $(RM) $(ALL_ROOTS) $(RM) $(ALL_DEPS) @@ -92,61 +114,110 @@ cleanMacCruft: ifeq ($(BINTARGET),) + ifeq ($(ASSEMBLER),orcam) -# This is a standard build where we generate the resources if any and then link -# the binary over that same file creating the resource fork first and the data -# fork second. -$(PGM): $(BUILD_OBJS) +# This is a standard ORCA build where we generate the resources if any and +# then link the binary over that same file creating the resource fork first +# and the data fork second. +$(TARGETDIR)/$(PGM): $(BUILD_OBJS) + $(MKDIR) $(TARGETDIR) ifneq ($(REZ_OBJS),) - $(RM) $(PGM) - $(CP) $(REZ_OBJS) $(PGM) + $(RM) $(TARGETDIR)/$(PGM) + $(CP) $(REZ_OBJS) $(TARGETDIR)/$(PGM) endif - $(LINK) $(LDFLAGS) $(BUILD_OBJS_NOSUFFIX) --keep=$(PGM) - $(CHTYP) -t $(FILETYPE) $(PGM) + cd $(OBJDIR); $(LINK) $(LDFLAGS) $(patsubst $(OBJDIR)/%, %, $(BUILD_OBJS_NOSUFFIX)) --keep=$(TARGETDIR)/$(PGM) + $(CHTYP) -t $(FILETYPE) $(AUXTYPE) $(TARGETDIR)/$(PGM) + + endif + + ifeq ($(ASSEMBLER),merlin) +# This is a standard Merlin build where we generate the resources if any and +# then link the binary over that same file creating the resource fork first +# and the data fork second. + +$(TARGETDIR)/$(PGM): $(BUILD_OBJS) $(ASM_SRCS) + $(MKDIR) $(TARGETDIR) + $(RM) $(TARGETDIR)/$(PGM) + $(MERLIN_ASM) linkscript.s $(PGM) $(TARGETDIR)/$(PGM) +ifneq ($(REZ_OBJS),) + $(CP) $(REZ_OBJS)/..namedfork/rsrc $(TARGETDIR)/$(PGM)/..namedfork/rsrc +endif + $(CHTYP) -t $(FILETYPE) $(AUXTYPE) $(TARGETDIR)/$(PGM) + + endif else -# This is a special build for CDevs (maybe others also?) where we build the binary -# into a $(PGM).bin file and then build the resources into the $(PGM) target. The -# resource compile will read the $(PGM).bin binary and load it into the resources -# also. + ifeq ($(ASSEMBLER),orcam) +# This is a special build for CDevs under ORCA where we build the binary into +# a $(PGM).bin file and then build the resources into the $(PGM) target. The +# resource compile will read the $(PGM).bin binary and load it into the +# resources also. $(BINTARGET): $(BUILD_OBJS) - $(LINK) $(LDFLAGS) $(BUILD_OBJS_NOSUFFIX) --keep=$(BINTARGET) + cd $(OBJDIR); $(LINK) $(LDFLAGS) $(patsubst $(OBJDIR)/%, %, $(BUILD_OBJS_NOSUFFIX)) --keep=$(BINTARGET) + + endif + + ifeq ($(ASSEMBLER),merlin) +# This is a special build for CDevs under Merlin where we build the binary into +# a $(PGM).bin file and then build the resources into the $(PGM) target. The +# resource compile will read the $(PGM).bin binary and load it into the +# resources # also. +$(BINTARGET): $(BUILD_OBJS) $(ASM_SRCS) + $(MERLIN_ASM) linkscript.s $(PGM) $(BINTARGET) + + endif $(REZ_OBJS): $(BINTARGET) -$(PGM): $(REZ_OBJS) - $(RM) $(PGM) - $(CP) $(REZ_OBJS) $(PGM) - $(CHTYP) -t $(FILETYPE) $(PGM) +$(TARGETDIR)/$(PGM): $(REZ_OBJS) + $(MKDIR) $(TARGETDIR) + $(RM) $(TARGETDIR)/$(PGM) + $(CP) $(REZ_OBJS) $(TARGETDIR)/$(PGM) + $(CHTYP) -t $(FILETYPE) $(AUXTYPE) $(TARGETDIR)/$(PGM) endif -$(DISKIMAGE): $(PGM) - make/createDiskImage "$(DISKIMAGE)" "$(PGM)" "$(DISKIMAGEDEST)" $(COPYDIRS) +$(DISKIMAGE): $(TARGETDIR)/$(PGM) + make/createDiskImage "$(DISKIMAGE)" "$(TARGETDIR)/$(PGM)" "$(DISKIMAGEDEST)" $(COPYDIRS) execute: $(EXECTARGET) executeGUI: all - make/launchEmulator -doit + make/launchEmulator $(DISKIMAGE) executeShell: all - $(ORCA) ./$(PGM) + $(ORCA) $(TARGETDIR)/$(PGM) -%.a: %.c - $(COMPILE) $< $(CFLAGS) --noroot +$(OBJDIR)/%.a: %.c + $(COMPILE) $< $(@:.a=) $(CFLAGS) --noroot -%.root: %.c - $(COMPILE) $< $(CFLAGS) +$(OBJDIR)/%.a: $(GENDIR)/%.c + $(COMPILE) $< $(@:.a=) $(CFLAGS) --noroot -%.macros: %.s - $(MACGEN) "$(MACGENFLAGS)" $< $@ $(MACGENMACROS) +$(OBJDIR)/%.root: %.c + $(COMPILE) $< $(@:.root=) $(CFLAGS) -%.ROOT: %.macros - $(ASSEMBLE) $(<:.macros=.s) $(ASMFLAGS) +$(OBJDIR)/%.root: $(GENDIR)/%.c + $(COMPILE) $< $(@:.root=) $(CFLAGS) -%.r: %.rez - $(REZ) $< $(REZFLAGS) +$(OBJDIR)/%.ROOT: %.s + MACGENFLAGS="$(MACGENFLAGS)" MACGENMACROS="$(MACGENMACROS)" $(ASSEMBLE) $< $(@:.ROOT=) $(ASMFLAGS) + +$(OBJDIR)/%.ROOT: $(GENDIR)/%.s + MACGENFLAGS="$(MACGENFLAGS)" MACGENMACROS="$(MACGENMACROS)" $(ASSEMBLE) $< $(@:.ROOT=) $(ASMFLAGS) + +$(OBJDIR)/%.r: %.rez + $(REZ) $< $(@:.r=) $(REZFLAGS) +ifneq ($(RLINT_PATH),) + $(ORCA) $(RLINT_PATH) $@ +endif + +$(OBJDIR)/%.r: $(GENDIR)/%.rez + $(REZ) $< $(@:.r=) $(REZFLAGS) +ifneq ($(RLINT_PATH),) + $(ORCA) $(RLINT_PATH) $@ +endif $(OBJS): Makefile diff --git a/abCalc/nda.mk b/abCalc/nda.mk index c5d71eb..0ccc34e 100644 --- a/abCalc/nda.mk +++ b/abCalc/nda.mk @@ -1,6 +1,6 @@ # # Makefile -# Apple //GS Build Engine for ORCA +# Apple //GS Build Engine for ORCA and Merlin # include make/head.mk @@ -44,6 +44,13 @@ CFLAGS+=-dABCALC_GSOS # Add any arguments you want passed to the resource compiler to this variable: 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: MACGENFLAGS+= @@ -84,10 +91,29 @@ COPYDIRS=copydir # If you have it in a different location, specify that here. # GSPORT=/Applications/GSport/GSport.app/Contents/MacOS/GSport +# 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 # commands are called here, if any. You can generate .c, .s or .h # 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: # For any files you generated in the gen target above, you should diff --git a/abCalc/shell.mk b/abCalc/shell.mk index 6206f12..e08a35c 100644 --- a/abCalc/shell.mk +++ b/abCalc/shell.mk @@ -9,7 +9,7 @@ include make/head.mk # where to find files, etc. # The name of your system or binary file to build goes here: -PGM=abCalcNDA +PGM=abCalc # Set the target type you would like to build. The options are: # shell - A shell command for ORCA, GNO or other GS shell