mirror of
https://github.com/mauiaaron/apple2.git
synced 2025-02-21 20:29:15 +00:00
Initial iOS target compiles, links, and appears to run in simulator and on device =)
This commit is contained in:
parent
6af1309e2d
commit
5737e89150
@ -8,9 +8,7 @@
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
4A2636F919FDEDB700DBFB00 /* Apple2Mac.help in Resources */ = {isa = PBXBuildFile; fileRef = 4A2636F819FDEDB700DBFB00 /* Apple2Mac.help */; };
|
||||
4A61119C1A6A1DE60035F7DE /* blank.po.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4A61119B1A6A1DE60035F7DE /* blank.po.gz */; };
|
||||
4A61119D1A6A1DE60035F7DE /* blank.po.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4A61119B1A6A1DE60035F7DE /* blank.po.gz */; };
|
||||
4A6111A31A6A1DFC0035F7DE /* flapple140.po.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4A6111A21A6A1DFC0035F7DE /* flapple140.po.gz */; };
|
||||
4A69C1801A33D6D7001579EF /* images in Resources */ = {isa = PBXBuildFile; fileRef = 4A69C17F1A33D6D7001579EF /* images */; };
|
||||
4A69C1921A33DB90001579EF /* DDHidLib.framework in Copy Files (1 item) */ = {isa = PBXBuildFile; fileRef = 77C2796F1A1047AF000FE33F /* DDHidLib.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
4A7EDC931AE092680072E98A /* glhudmodel.c in Sources */ = {isa = PBXBuildFile; fileRef = 4A7EDC911AE092680072E98A /* glhudmodel.c */; };
|
||||
@ -121,11 +119,9 @@
|
||||
4AFC170C1AAE9C3200B215FA /* sha1.c in Sources */ = {isa = PBXBuildFile; fileRef = 4AFC17091AAE9C3200B215FA /* sha1.c */; };
|
||||
4AFC170D1AAE9C3200B215FA /* sha1.c in Sources */ = {isa = PBXBuildFile; fileRef = 4AFC17091AAE9C3200B215FA /* sha1.c */; };
|
||||
4AFC170E1AAE9C3200B215FA /* sha1.c in Sources */ = {isa = PBXBuildFile; fileRef = 4AFC17091AAE9C3200B215FA /* sha1.c */; };
|
||||
4AFC17111AAE9CC000B215FA /* testdisplay1.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4AFC170F1AAE9CC000B215FA /* testdisplay1.nib.gz */; };
|
||||
4AFC17121AAE9CC000B215FA /* testdisplay1.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4AFC170F1AAE9CC000B215FA /* testdisplay1.nib.gz */; };
|
||||
4AFC17131AAE9CC000B215FA /* testdisplay1.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4AFC170F1AAE9CC000B215FA /* testdisplay1.nib.gz */; };
|
||||
4AFC17141AAE9CC000B215FA /* testdisplay1.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4AFC170F1AAE9CC000B215FA /* testdisplay1.nib.gz */; };
|
||||
4AFC17151AAE9CC000B215FA /* testvm1.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4AFC17101AAE9CC000B215FA /* testvm1.nib.gz */; };
|
||||
4AFC17161AAE9CC000B215FA /* testvm1.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4AFC17101AAE9CC000B215FA /* testvm1.nib.gz */; };
|
||||
4AFC17171AAE9CC000B215FA /* testvm1.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4AFC17101AAE9CC000B215FA /* testvm1.nib.gz */; };
|
||||
4AFC17181AAE9CC000B215FA /* testvm1.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4AFC17101AAE9CC000B215FA /* testvm1.nib.gz */; };
|
||||
@ -248,6 +244,59 @@
|
||||
935C551E1C12B6450013166D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 935C551B1C12B6400013166D /* main.m */; };
|
||||
935C551F1C12B6460013166D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 935C551B1C12B6400013166D /* main.m */; };
|
||||
935C55201C12B64A0013166D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 935C551B1C12B6400013166D /* main.m */; };
|
||||
935C55351C12BA5F0013166D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 935C55331C12BA5F0013166D /* Main.storyboard */; };
|
||||
935C55371C12BA5F0013166D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 935C55361C12BA5F0013166D /* Assets.xcassets */; };
|
||||
935C55431C12BCFD0013166D /* Apple2iOS-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 935C55421C12BCFD0013166D /* Apple2iOS-Info.plist */; };
|
||||
935C55461C12BE110013166D /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 935C55441C12BE110013166D /* LaunchScreen.xib */; };
|
||||
935C554D1C12BE510013166D /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 935C55481C12BE510013166D /* AppDelegate.m */; };
|
||||
935C554E1C12BE510013166D /* EAGLView.m in Sources */ = {isa = PBXBuildFile; fileRef = 935C554A1C12BE510013166D /* EAGLView.m */; };
|
||||
935C55511C136DF40013166D /* alhelpers.c in Sources */ = {isa = PBXBuildFile; fileRef = 779F564719EAF66E00A6F107 /* alhelpers.c */; };
|
||||
935C55521C136DF40013166D /* AY8910.c in Sources */ = {isa = PBXBuildFile; fileRef = 779F564919EAF66E00A6F107 /* AY8910.c */; };
|
||||
935C55531C136DF40013166D /* mockingboard.c in Sources */ = {isa = PBXBuildFile; fileRef = 779F564C19EAF66E00A6F107 /* mockingboard.c */; };
|
||||
935C55541C136DF40013166D /* playqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 93BC72561BF6FF11005CDFCA /* playqueue.c */; };
|
||||
935C55551C136DF40013166D /* soundcore-openal.c in Sources */ = {isa = PBXBuildFile; fileRef = 779F564F19EAF66E00A6F107 /* soundcore-openal.c */; };
|
||||
935C55561C136DF40013166D /* soundcore.c in Sources */ = {isa = PBXBuildFile; fileRef = 779F565119EAF66E00A6F107 /* soundcore.c */; };
|
||||
935C55571C136DF40013166D /* speaker.c in Sources */ = {isa = PBXBuildFile; fileRef = 779F565319EAF66E00A6F107 /* speaker.c */; };
|
||||
935C55581C136DF40013166D /* cpu-supp.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D5D19568A570085CE5F /* cpu-supp.c */; };
|
||||
935C55591C136DF40013166D /* darwin-shim.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D6019568A570085CE5F /* darwin-shim.c */; };
|
||||
935C555A1C136DF40013166D /* disk.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D6219568A570085CE5F /* disk.c */; };
|
||||
935C555B1C136DF40013166D /* display.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D6419568A570085CE5F /* display.c */; };
|
||||
935C555C1C136DF40013166D /* font.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D6519568A570085CE5F /* font.c */; };
|
||||
935C555D1C136DF40013166D /* interface.c in Sources */ = {isa = PBXBuildFile; fileRef = 4A7EDC9D1AE092B80072E98A /* interface.c */; };
|
||||
935C555E1C136DF40013166D /* joystick.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D6C19568A570085CE5F /* joystick.c */; };
|
||||
935C555F1C136DF40013166D /* keys.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D6E19568A570085CE5F /* keys.c */; };
|
||||
935C55601C136E070013166D /* debugger.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D7319568A570085CE5F /* debugger.c */; };
|
||||
935C55611C136E070013166D /* opcodes.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D7419568A570085CE5F /* opcodes.c */; };
|
||||
935C55621C136E070013166D /* misc.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D7519568A570085CE5F /* misc.c */; };
|
||||
935C55631C136E070013166D /* prefs.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D7719568A570085CE5F /* prefs.c */; };
|
||||
935C55641C136E070013166D /* rom-shim.c in Sources */ = {isa = PBXBuildFile; fileRef = 779DD826195764E200DF89E5 /* rom-shim.c */; };
|
||||
935C55651C136E070013166D /* timing.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D8719568A570085CE5F /* timing.c */; };
|
||||
935C55661C136E070013166D /* glalert.c in Sources */ = {isa = PBXBuildFile; fileRef = 93BC72541BF6F8E2005CDFCA /* glalert.c */; };
|
||||
935C55671C136E070013166D /* glhudmodel.c in Sources */ = {isa = PBXBuildFile; fileRef = 4A7EDC911AE092680072E98A /* glhudmodel.c */; };
|
||||
935C55681C136E070013166D /* glnode.c in Sources */ = {isa = PBXBuildFile; fileRef = 4A7EDC921AE092680072E98A /* glnode.c */; };
|
||||
935C55691C136E070013166D /* glvideo.c in Sources */ = {isa = PBXBuildFile; fileRef = 77E1C0C719D736EB004344E0 /* glvideo.c */; };
|
||||
935C556A1C136E070013166D /* matrixUtil.c in Sources */ = {isa = PBXBuildFile; fileRef = 77E1C0AF19D72700004344E0 /* matrixUtil.c */; };
|
||||
935C556B1C136E070013166D /* modelUtil.c in Sources */ = {isa = PBXBuildFile; fileRef = 77E1C0AD19D72700004344E0 /* modelUtil.c */; };
|
||||
935C556C1C136E070013166D /* sourceUtil.c in Sources */ = {isa = PBXBuildFile; fileRef = 77E1C0AB19D72700004344E0 /* sourceUtil.c */; };
|
||||
935C556D1C136E070013166D /* vectorUtil.c in Sources */ = {isa = PBXBuildFile; fileRef = 77E1C0A919D72700004344E0 /* vectorUtil.c */; };
|
||||
935C556E1C136E070013166D /* vm.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D8D19568A570085CE5F /* vm.c */; };
|
||||
935C556F1C136E070013166D /* zlib-helpers.c in Sources */ = {isa = PBXBuildFile; fileRef = 773B3D9519568A570085CE5F /* zlib-helpers.c */; };
|
||||
935C55721C136E6F0013166D /* json_parse.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55701C136E6F0013166D /* json_parse.c */; };
|
||||
935C55731C136E6F0013166D /* json_parse.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55701C136E6F0013166D /* json_parse.c */; };
|
||||
935C558A1C1370800013166D /* gltouchjoy_joy.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55841C1370800013166D /* gltouchjoy_joy.c */; };
|
||||
935C558B1C1370800013166D /* gltouchjoy_kpad.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55851C1370800013166D /* gltouchjoy_kpad.c */; };
|
||||
935C558C1C1370800013166D /* gltouchjoy.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55861C1370800013166D /* gltouchjoy.c */; };
|
||||
935C558D1C1370800013166D /* gltouchkbd.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55881C1370800013166D /* gltouchkbd.c */; };
|
||||
935C558E1C1370800013166D /* gltouchmenu.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55891C1370800013166D /* gltouchmenu.c */; };
|
||||
935C55911C1371AD0013166D /* Basic.fsh in Resources */ = {isa = PBXBuildFile; fileRef = 779F562819E4FE9E00A6F107 /* Basic.fsh */; };
|
||||
935C55921C1371AD0013166D /* Basic.vsh in Resources */ = {isa = PBXBuildFile; fileRef = 779F562719E4FE9E00A6F107 /* Basic.vsh */; };
|
||||
935C55931C1371C80013166D /* images in Resources */ = {isa = PBXBuildFile; fileRef = 4A69C17F1A33D6D7001579EF /* images */; };
|
||||
935C559F1C1384240013166D /* darwin-cpu-glue.S in Sources */ = {isa = PBXBuildFile; fileRef = 935C559E1C1384240013166D /* darwin-cpu-glue.S */; };
|
||||
935C55A11C13887E0013166D /* sha1.c in Sources */ = {isa = PBXBuildFile; fileRef = 4AFC17091AAE9C3200B215FA /* sha1.c */; };
|
||||
935C55A31C1388CB0013166D /* libz.1.1.3.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 935C55A21C1388CB0013166D /* libz.1.1.3.tbd */; };
|
||||
935C55A41C1388E30013166D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 935C551B1C12B6400013166D /* main.m */; };
|
||||
935C55A91C1389370013166D /* jsmn.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55A71C1389370013166D /* jsmn.c */; };
|
||||
935C55AA1C138C2F0013166D /* jsmn.c in Sources */ = {isa = PBXBuildFile; fileRef = 935C55A71C1389370013166D /* jsmn.c */; };
|
||||
93BC72551BF6F8E2005CDFCA /* glalert.c in Sources */ = {isa = PBXBuildFile; fileRef = 93BC72541BF6F8E2005CDFCA /* glalert.c */; };
|
||||
93BC72571BF6FF11005CDFCA /* playqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = 93BC72561BF6FF11005CDFCA /* playqueue.c */; };
|
||||
/* End PBXBuildFile section */
|
||||
@ -308,7 +357,7 @@
|
||||
4A2636F819FDEDB700DBFB00 /* Apple2Mac.help */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Apple2Mac.help; sourceTree = "<group>"; };
|
||||
4A61119B1A6A1DE60035F7DE /* blank.po.gz */ = {isa = PBXFileReference; lastKnownFileType = archive.gzip; path = blank.po.gz; sourceTree = "<group>"; };
|
||||
4A6111A21A6A1DFC0035F7DE /* flapple140.po.gz */ = {isa = PBXFileReference; lastKnownFileType = archive.gzip; path = flapple140.po.gz; sourceTree = "<group>"; };
|
||||
4A69C17F1A33D6D7001579EF /* images */ = {isa = PBXFileReference; lastKnownFileType = folder; name = images; path = ../../images; sourceTree = "<group>"; };
|
||||
4A69C17F1A33D6D7001579EF /* images */ = {isa = PBXFileReference; lastKnownFileType = folder; name = images; path = ../images; sourceTree = "<group>"; };
|
||||
4A7EDC911AE092680072E98A /* glhudmodel.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = glhudmodel.c; sourceTree = "<group>"; };
|
||||
4A7EDC921AE092680072E98A /* glnode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = glnode.c; sourceTree = "<group>"; };
|
||||
4A7EDC9D1AE092B80072E98A /* interface.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = interface.c; sourceTree = "<group>"; };
|
||||
@ -435,6 +484,36 @@
|
||||
935C55121C12B61D0013166D /* EmulatorWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = EmulatorWindowController.m; path = Classes/OSX/EmulatorWindowController.m; sourceTree = SOURCE_ROOT; };
|
||||
935C551B1C12B6400013166D /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
935C55211C12B6650013166D /* Apple2Mac-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Apple2Mac-Prefix.pch"; sourceTree = "<group>"; };
|
||||
935C55281C12BA5F0013166D /* Apple2iOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Apple2iOS.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
935C55341C12BA5F0013166D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
||||
935C55361C12BA5F0013166D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
935C55421C12BCFD0013166D /* Apple2iOS-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Apple2iOS-Info.plist"; sourceTree = "<group>"; };
|
||||
935C55451C12BE110013166D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = "<group>"; };
|
||||
935C55471C12BE510013166D /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = Classes/iOS/AppDelegate.h; sourceTree = SOURCE_ROOT; };
|
||||
935C55481C12BE510013166D /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = Classes/iOS/AppDelegate.m; sourceTree = SOURCE_ROOT; };
|
||||
935C55491C12BE510013166D /* EAGLView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EAGLView.h; path = Classes/iOS/EAGLView.h; sourceTree = SOURCE_ROOT; };
|
||||
935C554A1C12BE510013166D /* EAGLView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = EAGLView.m; path = Classes/iOS/EAGLView.m; sourceTree = SOURCE_ROOT; };
|
||||
935C55701C136E6F0013166D /* json_parse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = json_parse.c; sourceTree = "<group>"; };
|
||||
935C55711C136E6F0013166D /* json_parse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = json_parse.h; sourceTree = "<group>"; };
|
||||
935C55741C136ED40013166D /* playqueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = playqueue.h; sourceTree = "<group>"; };
|
||||
935C55751C136F0D0013166D /* testtrace.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testtrace.c; sourceTree = "<group>"; };
|
||||
935C55771C136F260013166D /* sha1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sha1.h; sourceTree = "<group>"; };
|
||||
935C557A1C136F7E0013166D /* cpu-regs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "cpu-regs.h"; path = "arm/cpu-regs.h"; sourceTree = "<group>"; };
|
||||
935C557C1C136FBD0013166D /* glue-prologue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "glue-prologue.h"; path = "arm/glue-prologue.h"; sourceTree = "<group>"; };
|
||||
935C557F1C136FEF0013166D /* glvideo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = glvideo.h; sourceTree = "<group>"; };
|
||||
935C55811C13702A0013166D /* glhudmodel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = glhudmodel.h; sourceTree = "<group>"; };
|
||||
935C55821C13703F0013166D /* glnode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = glnode.h; sourceTree = "<group>"; };
|
||||
935C55841C1370800013166D /* gltouchjoy_joy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gltouchjoy_joy.c; sourceTree = "<group>"; };
|
||||
935C55851C1370800013166D /* gltouchjoy_kpad.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gltouchjoy_kpad.c; sourceTree = "<group>"; };
|
||||
935C55861C1370800013166D /* gltouchjoy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gltouchjoy.c; sourceTree = "<group>"; };
|
||||
935C55871C1370800013166D /* gltouchjoy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = gltouchjoy.h; sourceTree = "<group>"; };
|
||||
935C55881C1370800013166D /* gltouchkbd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gltouchkbd.c; sourceTree = "<group>"; };
|
||||
935C55891C1370800013166D /* gltouchmenu.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gltouchmenu.c; sourceTree = "<group>"; };
|
||||
935C559E1C1384240013166D /* darwin-cpu-glue.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = "darwin-cpu-glue.S"; sourceTree = "<group>"; };
|
||||
935C55A01C1384400013166D /* cpu.S */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; name = cpu.S; path = arm/cpu.S; sourceTree = "<group>"; };
|
||||
935C55A21C1388CB0013166D /* libz.1.1.3.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.1.1.3.tbd; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.1.sdk/usr/lib/libz.1.1.3.tbd; sourceTree = DEVELOPER_DIR; };
|
||||
935C55A71C1389370013166D /* jsmn.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = jsmn.c; path = ../externals/jsmn/jsmn.c; sourceTree = "<group>"; };
|
||||
935C55A81C1389370013166D /* jsmn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = jsmn.h; path = ../externals/jsmn/jsmn.h; sourceTree = "<group>"; };
|
||||
93BC72541BF6F8E2005CDFCA /* glalert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = glalert.c; sourceTree = "<group>"; };
|
||||
93BC72561BF6FF11005CDFCA /* playqueue.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = playqueue.c; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
@ -489,6 +568,14 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
935C55251C12BA5F0013166D /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
935C55A31C1388CB0013166D /* libz.1.1.3.tbd in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
@ -520,10 +607,12 @@
|
||||
935C55211C12B6650013166D /* Apple2Mac-Prefix.pch */,
|
||||
773B3D331956885A0085CE5F /* Apple2MacTests */,
|
||||
773B3D151956885A0085CE5F /* Apple2Mac */,
|
||||
935C55221C12B9BD0013166D /* Apple2iOS */,
|
||||
935C55291C12BA5F0013166D /* Apple2iOS */,
|
||||
773B3D431956897D0085CE5F /* Classes */,
|
||||
773B3D4519568A570085CE5F /* src */,
|
||||
935C55A51C1389000013166D /* externals */,
|
||||
4ADC522F19E8D3F600186B36 /* disks */,
|
||||
4A69C17F1A33D6D7001579EF /* images */,
|
||||
773B3D0E1956885A0085CE5F /* Frameworks */,
|
||||
773B3D0D1956885A0085CE5F /* Products */,
|
||||
);
|
||||
@ -537,6 +626,7 @@
|
||||
4ADC522719E8CA4500186B36 /* Apple2MacTestVM.app */,
|
||||
779F569119EB0B9100A6F107 /* Apple2MacTestDisplay.app */,
|
||||
4AD4FEC31A52464F00F958EC /* Apple2MacTestDisk.app */,
|
||||
935C55281C12BA5F0013166D /* Apple2iOS.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
@ -544,6 +634,7 @@
|
||||
773B3D0E1956885A0085CE5F /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55A21C1388CB0013166D /* libz.1.1.3.tbd */,
|
||||
77C279601A1047AE000FE33F /* DDHidLib.xcodeproj */,
|
||||
779F565F19EAF6D000A6F107 /* OpenAL.framework */,
|
||||
773B3DCA1956903D0085CE5F /* libz.1.1.3.dylib */,
|
||||
@ -566,23 +657,17 @@
|
||||
773B3D151956885A0085CE5F /* Apple2Mac */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4A69C17F1A33D6D7001579EF /* images */,
|
||||
773B3D44195689910085CE5F /* Resources */,
|
||||
773B3D161956885A0085CE5F /* Supporting Files */,
|
||||
773B3D171956885A0085CE5F /* Apple2Mac-Info.plist */,
|
||||
4A2636F819FDEDB700DBFB00 /* Apple2Mac.help */,
|
||||
773B3D1E1956885A0085CE5F /* Credits.rtf */,
|
||||
773B3D181956885A0085CE5F /* InfoPlist.strings */,
|
||||
773B3D271956885A0085CE5F /* Images.xcassets */,
|
||||
773B3D241956885A0085CE5F /* MainMenu.xib */,
|
||||
4ADC51C919E8BEB700186B36 /* MainMenu-Test.xib */,
|
||||
);
|
||||
path = Apple2Mac;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
773B3D161956885A0085CE5F /* Supporting Files */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
773B3D171956885A0085CE5F /* Apple2Mac-Info.plist */,
|
||||
773B3D181956885A0085CE5F /* InfoPlist.strings */,
|
||||
773B3D1E1956885A0085CE5F /* Credits.rtf */,
|
||||
);
|
||||
name = "Supporting Files";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
773B3D331956885A0085CE5F /* Apple2MacTests */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@ -615,46 +700,39 @@
|
||||
path = Apple2Mac;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
773B3D44195689910085CE5F /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4A2636F819FDEDB700DBFB00 /* Apple2Mac.help */,
|
||||
773B3D271956885A0085CE5F /* Images.xcassets */,
|
||||
773B3D241956885A0085CE5F /* MainMenu.xib */,
|
||||
4ADC51C919E8BEB700186B36 /* MainMenu-Test.xib */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
773B3D4519568A570085CE5F /* src */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
773B3D7919568A570085CE5F /* test */,
|
||||
935C55781C136F550013166D /* arm */,
|
||||
779F564619EAF66E00A6F107 /* audio */,
|
||||
773B3D5C19568A570085CE5F /* common.h */,
|
||||
773B3D5D19568A570085CE5F /* cpu-supp.c */,
|
||||
773B3D5E19568A570085CE5F /* cpu.h */,
|
||||
773B3D6019568A570085CE5F /* darwin-shim.c */,
|
||||
935C559E1C1384240013166D /* darwin-cpu-glue.S */,
|
||||
773B3D6119568A570085CE5F /* darwin-shim.h */,
|
||||
773B3D6219568A570085CE5F /* disk.c */,
|
||||
773B3D6019568A570085CE5F /* darwin-shim.c */,
|
||||
773B3D6319568A570085CE5F /* disk.h */,
|
||||
773B3D6219568A570085CE5F /* disk.c */,
|
||||
773B3D6419568A570085CE5F /* display.c */,
|
||||
773B3D6519568A570085CE5F /* font.c */,
|
||||
773B3D6919568A570085CE5F /* glue.h */,
|
||||
4A7EDC9D1AE092B80072E98A /* interface.c */,
|
||||
773B3D6C19568A570085CE5F /* joystick.c */,
|
||||
773B3D6D19568A570085CE5F /* joystick.h */,
|
||||
773B3D6E19568A570085CE5F /* keys.c */,
|
||||
773B3D6C19568A570085CE5F /* joystick.c */,
|
||||
935C55711C136E6F0013166D /* json_parse.h */,
|
||||
935C55701C136E6F0013166D /* json_parse.c */,
|
||||
773B3D6F19568A570085CE5F /* keys.h */,
|
||||
773B3D6E19568A570085CE5F /* keys.c */,
|
||||
773B3D7019568A570085CE5F /* meta */,
|
||||
773B3D7519568A570085CE5F /* misc.c */,
|
||||
773B3D7619568A570085CE5F /* misc.h */,
|
||||
773B3D7519568A570085CE5F /* misc.c */,
|
||||
773B3D7719568A570085CE5F /* prefs.c */,
|
||||
773B3D7819568A570085CE5F /* prefs.h */,
|
||||
779DD826195764E200DF89E5 /* rom-shim.c */,
|
||||
773B3D8719568A570085CE5F /* timing.c */,
|
||||
773B3D8819568A570085CE5F /* timing.h */,
|
||||
773B3D8919568A570085CE5F /* uthash.h */,
|
||||
773B3D7919568A570085CE5F /* test */,
|
||||
773B3D8A19568A570085CE5F /* video */,
|
||||
77E1C0A719D726E8004344E0 /* video_util */,
|
||||
773B3D8D19568A570085CE5F /* vm.c */,
|
||||
@ -680,13 +758,15 @@
|
||||
773B3D7919568A570085CE5F /* test */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4AFC17091AAE9C3200B215FA /* sha1.c */,
|
||||
773B3D7A19568A570085CE5F /* greatest.h */,
|
||||
773B3D7C19568A570085CE5F /* testcommon.c */,
|
||||
935C55771C136F260013166D /* sha1.h */,
|
||||
4AFC17091AAE9C3200B215FA /* sha1.c */,
|
||||
773B3D7D19568A570085CE5F /* testcommon.h */,
|
||||
773B3D7C19568A570085CE5F /* testcommon.c */,
|
||||
773B3D7E19568A570085CE5F /* testcpu.c */,
|
||||
4AD4FEC91A52467D00F958EC /* testdisk.c */,
|
||||
773B3D7F19568A570085CE5F /* testdisplay.c */,
|
||||
935C55751C136F0D0013166D /* testtrace.c */,
|
||||
773B3D8619568A570085CE5F /* testvm.c */,
|
||||
);
|
||||
path = test;
|
||||
@ -695,11 +775,15 @@
|
||||
773B3D8A19568A570085CE5F /* video */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55801C1370160013166D /* gltouch */,
|
||||
779F562819E4FE9E00A6F107 /* Basic.fsh */,
|
||||
779F562719E4FE9E00A6F107 /* Basic.vsh */,
|
||||
93BC72541BF6F8E2005CDFCA /* glalert.c */,
|
||||
935C55811C13702A0013166D /* glhudmodel.h */,
|
||||
4A7EDC911AE092680072E98A /* glhudmodel.c */,
|
||||
935C55821C13703F0013166D /* glnode.h */,
|
||||
4A7EDC921AE092680072E98A /* glnode.c */,
|
||||
935C557F1C136FEF0013166D /* glvideo.h */,
|
||||
77E1C0C719D736EB004344E0 /* glvideo.c */,
|
||||
773B3D8B19568A570085CE5F /* video.h */,
|
||||
);
|
||||
@ -720,19 +804,20 @@
|
||||
779F564619EAF66E00A6F107 /* audio */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
779F564719EAF66E00A6F107 /* alhelpers.c */,
|
||||
779F564819EAF66E00A6F107 /* alhelpers.h */,
|
||||
779F564919EAF66E00A6F107 /* AY8910.c */,
|
||||
779F564719EAF66E00A6F107 /* alhelpers.c */,
|
||||
779F564A19EAF66E00A6F107 /* AY8910.h */,
|
||||
779F564C19EAF66E00A6F107 /* mockingboard.c */,
|
||||
779F564919EAF66E00A6F107 /* AY8910.c */,
|
||||
779F564D19EAF66E00A6F107 /* mockingboard.h */,
|
||||
779F564C19EAF66E00A6F107 /* mockingboard.c */,
|
||||
779F564E19EAF66E00A6F107 /* peripherals.h */,
|
||||
935C55741C136ED40013166D /* playqueue.h */,
|
||||
93BC72561BF6FF11005CDFCA /* playqueue.c */,
|
||||
779F564F19EAF66E00A6F107 /* soundcore-openal.c */,
|
||||
779F565119EAF66E00A6F107 /* soundcore.c */,
|
||||
779F565219EAF66E00A6F107 /* soundcore.h */,
|
||||
779F565319EAF66E00A6F107 /* speaker.c */,
|
||||
779F565119EAF66E00A6F107 /* soundcore.c */,
|
||||
779F565419EAF66E00A6F107 /* speaker.h */,
|
||||
779F565319EAF66E00A6F107 /* speaker.c */,
|
||||
779F565519EAF66E00A6F107 /* SSI263Phonemes.h */,
|
||||
);
|
||||
path = audio;
|
||||
@ -770,12 +855,12 @@
|
||||
935C54741C129C740013166D /* OSX */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55031C12B61D0013166D /* EmulatorGLView.h */,
|
||||
935C55041C12B61D0013166D /* EmulatorGLView.m */,
|
||||
935C55051C12B61D0013166D /* EmulatorDiskController.h */,
|
||||
935C55061C12B61D0013166D /* EmulatorDiskController.m */,
|
||||
935C55071C12B61D0013166D /* EmulatorFullscreenWindow.h */,
|
||||
935C55081C12B61D0013166D /* EmulatorFullscreenWindow.m */,
|
||||
935C55031C12B61D0013166D /* EmulatorGLView.h */,
|
||||
935C55041C12B61D0013166D /* EmulatorGLView.m */,
|
||||
935C55091C12B61D0013166D /* EmulatorJoystickCalibrationView.h */,
|
||||
935C550A1C12B61D0013166D /* EmulatorJoystickCalibrationView.m */,
|
||||
935C550B1C12B61D0013166D /* EmulatorJoystickController.h */,
|
||||
@ -790,20 +875,68 @@
|
||||
name = OSX;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55221C12B9BD0013166D /* Apple2iOS */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
);
|
||||
name = Apple2iOS;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55231C12B9CE0013166D /* iOS */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55471C12BE510013166D /* AppDelegate.h */,
|
||||
935C55481C12BE510013166D /* AppDelegate.m */,
|
||||
935C55491C12BE510013166D /* EAGLView.h */,
|
||||
935C554A1C12BE510013166D /* EAGLView.m */,
|
||||
);
|
||||
name = iOS;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55291C12BA5F0013166D /* Apple2iOS */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55421C12BCFD0013166D /* Apple2iOS-Info.plist */,
|
||||
935C55361C12BA5F0013166D /* Assets.xcassets */,
|
||||
935C55441C12BE110013166D /* LaunchScreen.xib */,
|
||||
935C55331C12BA5F0013166D /* Main.storyboard */,
|
||||
);
|
||||
path = Apple2iOS;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55781C136F550013166D /* arm */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55A01C1384400013166D /* cpu.S */,
|
||||
935C557C1C136FBD0013166D /* glue-prologue.h */,
|
||||
935C557A1C136F7E0013166D /* cpu-regs.h */,
|
||||
);
|
||||
name = arm;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55801C1370160013166D /* gltouch */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55841C1370800013166D /* gltouchjoy_joy.c */,
|
||||
935C55851C1370800013166D /* gltouchjoy_kpad.c */,
|
||||
935C55861C1370800013166D /* gltouchjoy.c */,
|
||||
935C55871C1370800013166D /* gltouchjoy.h */,
|
||||
935C55881C1370800013166D /* gltouchkbd.c */,
|
||||
935C55891C1370800013166D /* gltouchmenu.c */,
|
||||
);
|
||||
name = gltouch;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55A51C1389000013166D /* externals */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55A61C13890D0013166D /* jsmn */,
|
||||
);
|
||||
name = externals;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55A61C13890D0013166D /* jsmn */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
935C55A71C1389370013166D /* jsmn.c */,
|
||||
935C55A81C1389370013166D /* jsmn.h */,
|
||||
);
|
||||
name = jsmn;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
@ -904,6 +1037,25 @@
|
||||
productReference = 779F569119EB0B9100A6F107 /* Apple2MacTestDisplay.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
935C55271C12BA5F0013166D /* Apple2iOS */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 935C553C1C12BA5F0013166D /* Build configuration list for PBXNativeTarget "Apple2iOS" */;
|
||||
buildPhases = (
|
||||
935C558F1C1371020013166D /* ShellScript */,
|
||||
935C55241C12BA5F0013166D /* Sources */,
|
||||
935C55251C12BA5F0013166D /* Frameworks */,
|
||||
935C55901C13715A0013166D /* ShellScript */,
|
||||
935C55261C12BA5F0013166D /* Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = Apple2iOS;
|
||||
productName = Apple2iOS;
|
||||
productReference = 935C55281C12BA5F0013166D /* Apple2iOS.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
@ -912,6 +1064,11 @@
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0510;
|
||||
ORGANIZATIONNAME = deadc0de.org;
|
||||
TargetAttributes = {
|
||||
935C55271C12BA5F0013166D = {
|
||||
CreatedOnToolsVersion = 7.1.1;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = 773B3D07195688590085CE5F /* Build configuration list for PBXProject "Apple2Mac" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
@ -937,6 +1094,7 @@
|
||||
4AD4FE911A52464F00F958EC /* Apple2MacTestDisk */,
|
||||
779F566119EB0B9100A6F107 /* Apple2MacTestDisplay */,
|
||||
4ADC51FB19E8CA4500186B36 /* Apple2MacTestVM */,
|
||||
935C55271C12BA5F0013166D /* Apple2iOS */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
@ -1019,18 +1177,14 @@
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
4AFC17151AAE9CC000B215FA /* testvm1.nib.gz in Resources */,
|
||||
4A69C1801A33D6D7001579EF /* images in Resources */,
|
||||
773B3D1A1956885A0085CE5F /* InfoPlist.strings in Resources */,
|
||||
773B3D281956885A0085CE5F /* Images.xcassets in Resources */,
|
||||
4A6111A31A6A1DFC0035F7DE /* flapple140.po.gz in Resources */,
|
||||
773B3D1A1956885A0085CE5F /* InfoPlist.strings in Resources */,
|
||||
773B3D201956885A0085CE5F /* Credits.rtf in Resources */,
|
||||
4A61119C1A6A1DE60035F7DE /* blank.po.gz in Resources */,
|
||||
4A2636F919FDEDB700DBFB00 /* Apple2Mac.help in Resources */,
|
||||
4AFC17111AAE9CC000B215FA /* testdisplay1.nib.gz in Resources */,
|
||||
779F562319DA59D600A6F107 /* MainMenu.xib in Resources */,
|
||||
779F562919E4FE9E00A6F107 /* Basic.vsh in Resources */,
|
||||
779F562A19E4FE9E00A6F107 /* Basic.fsh in Resources */,
|
||||
779F562319DA59D600A6F107 /* MainMenu.xib in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -1067,6 +1221,20 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
935C55261C12BA5F0013166D /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
935C55931C1371C80013166D /* images in Resources */,
|
||||
935C55371C12BA5F0013166D /* Assets.xcassets in Resources */,
|
||||
935C55431C12BCFD0013166D /* Apple2iOS-Info.plist in Resources */,
|
||||
935C55461C12BE110013166D /* LaunchScreen.xib in Resources */,
|
||||
935C55351C12BA5F0013166D /* Main.storyboard in Resources */,
|
||||
935C55921C1371AD0013166D /* Basic.vsh in Resources */,
|
||||
935C55911C1371AD0013166D /* Basic.fsh in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
@ -1210,6 +1378,34 @@
|
||||
shellScript = "/bin/rm -f \"$SRCROOT/../src/x86/glue.S\"";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
935C558F1C1371020013166D /* ShellScript */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"$SRCROOT/../src/arm/genglue\" \"$SRCROOT/../src/disk.c\" \"$SRCROOT/../src/misc.c\" \"$SRCROOT/../src/display.c\" \"$SRCROOT/../src/vm.c\" \"$SRCROOT/../src/audio/speaker.c\" \"$SRCROOT/../src/audio/mockingboard.c\" > \"$SRCROOT/../src/arm/glue.S\"\n\"$SRCROOT/../src/x86/genglue\" \"$SRCROOT/../src/disk.c\" \"$SRCROOT/../src/misc.c\" \"$SRCROOT/../src/display.c\" \"$SRCROOT/../src/vm.c\" \"$SRCROOT/../src/audio/speaker.c\" \"$SRCROOT/../src/audio/mockingboard.c\" > \"$SRCROOT/../src/x86/glue.S\"";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
935C55901C13715A0013166D /* ShellScript */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/rm -f \"$SRCROOT/../src/arm/glue.S\"";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
@ -1294,10 +1490,13 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
773B3DBF19568A570085CE5F /* cpu.S in Sources */,
|
||||
773B3DAF19568A570085CE5F /* misc.c in Sources */,
|
||||
779F565B19EAF66E00A6F107 /* soundcore-openal.c in Sources */,
|
||||
779F561C19D7929100A6F107 /* glvideo.c in Sources */,
|
||||
935C55151C12B61D0013166D /* EmulatorFullscreenWindow.m in Sources */,
|
||||
935C55AA1C138C2F0013166D /* jsmn.c in Sources */,
|
||||
4A7EDC931AE092680072E98A /* glhudmodel.c in Sources */,
|
||||
779F565D19EAF66E00A6F107 /* speaker.c in Sources */,
|
||||
779F565B19EAF66E00A6F107 /* soundcore-openal.c in Sources */,
|
||||
773B3DA419568A570085CE5F /* display.c in Sources */,
|
||||
935C55171C12B61D0013166D /* EmulatorJoystickController.m in Sources */,
|
||||
773B3DA319568A570085CE5F /* disk.c in Sources */,
|
||||
@ -1306,7 +1505,6 @@
|
||||
4A7EDC9E1AE092B80072E98A /* interface.c in Sources */,
|
||||
773B3DAB19568A570085CE5F /* keys.c in Sources */,
|
||||
773B3DBC19568A570085CE5F /* timing.c in Sources */,
|
||||
773B3DAF19568A570085CE5F /* misc.c in Sources */,
|
||||
773BC91A19F31E7B00996893 /* prefs.c in Sources */,
|
||||
77E1C0B619D72700004344E0 /* matrixUtil.c in Sources */,
|
||||
773B3DAE19568A570085CE5F /* opcodes.c in Sources */,
|
||||
@ -1327,7 +1525,6 @@
|
||||
93BC72571BF6FF11005CDFCA /* playqueue.c in Sources */,
|
||||
773B3DA519568A570085CE5F /* font.c in Sources */,
|
||||
773B3DA019568A570085CE5F /* cpu-supp.c in Sources */,
|
||||
779F561C19D7929100A6F107 /* glvideo.c in Sources */,
|
||||
779F565A19EAF66E00A6F107 /* mockingboard.c in Sources */,
|
||||
77E1C0B419D72700004344E0 /* sourceUtil.c in Sources */,
|
||||
779F565819EAF66E00A6F107 /* alhelpers.c in Sources */,
|
||||
@ -1338,6 +1535,7 @@
|
||||
773B3DBE19568A570085CE5F /* vm.c in Sources */,
|
||||
773B3DC019568A570085CE5F /* darwin-glue.S in Sources */,
|
||||
773B3DAA19568A570085CE5F /* joystick.c in Sources */,
|
||||
935C55721C136E6F0013166D /* json_parse.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -1417,6 +1615,56 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
935C55241C12BA5F0013166D /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
935C559F1C1384240013166D /* darwin-cpu-glue.S in Sources */,
|
||||
935C55621C136E070013166D /* misc.c in Sources */,
|
||||
935C55691C136E070013166D /* glvideo.c in Sources */,
|
||||
935C558A1C1370800013166D /* gltouchjoy_joy.c in Sources */,
|
||||
935C558B1C1370800013166D /* gltouchjoy_kpad.c in Sources */,
|
||||
935C558C1C1370800013166D /* gltouchjoy.c in Sources */,
|
||||
935C55561C136DF40013166D /* soundcore.c in Sources */,
|
||||
935C55551C136DF40013166D /* soundcore-openal.c in Sources */,
|
||||
935C55611C136E070013166D /* opcodes.c in Sources */,
|
||||
935C55631C136E070013166D /* prefs.c in Sources */,
|
||||
935C55731C136E6F0013166D /* json_parse.c in Sources */,
|
||||
935C55641C136E070013166D /* rom-shim.c in Sources */,
|
||||
935C55651C136E070013166D /* timing.c in Sources */,
|
||||
935C55661C136E070013166D /* glalert.c in Sources */,
|
||||
935C55A91C1389370013166D /* jsmn.c in Sources */,
|
||||
935C55671C136E070013166D /* glhudmodel.c in Sources */,
|
||||
935C55681C136E070013166D /* glnode.c in Sources */,
|
||||
935C556A1C136E070013166D /* matrixUtil.c in Sources */,
|
||||
935C556B1C136E070013166D /* modelUtil.c in Sources */,
|
||||
935C556C1C136E070013166D /* sourceUtil.c in Sources */,
|
||||
935C556D1C136E070013166D /* vectorUtil.c in Sources */,
|
||||
935C556E1C136E070013166D /* vm.c in Sources */,
|
||||
935C556F1C136E070013166D /* zlib-helpers.c in Sources */,
|
||||
935C558D1C1370800013166D /* gltouchkbd.c in Sources */,
|
||||
935C55511C136DF40013166D /* alhelpers.c in Sources */,
|
||||
935C55521C136DF40013166D /* AY8910.c in Sources */,
|
||||
935C55531C136DF40013166D /* mockingboard.c in Sources */,
|
||||
935C55541C136DF40013166D /* playqueue.c in Sources */,
|
||||
935C558E1C1370800013166D /* gltouchmenu.c in Sources */,
|
||||
935C55571C136DF40013166D /* speaker.c in Sources */,
|
||||
935C55581C136DF40013166D /* cpu-supp.c in Sources */,
|
||||
935C55591C136DF40013166D /* darwin-shim.c in Sources */,
|
||||
935C55601C136E070013166D /* debugger.c in Sources */,
|
||||
935C555A1C136DF40013166D /* disk.c in Sources */,
|
||||
935C555B1C136DF40013166D /* display.c in Sources */,
|
||||
935C555C1C136DF40013166D /* font.c in Sources */,
|
||||
935C555D1C136DF40013166D /* interface.c in Sources */,
|
||||
935C555E1C136DF40013166D /* joystick.c in Sources */,
|
||||
935C55A11C13887E0013166D /* sha1.c in Sources */,
|
||||
935C555F1C136DF40013166D /* keys.c in Sources */,
|
||||
935C554D1C12BE510013166D /* AppDelegate.m in Sources */,
|
||||
935C55A41C1388E30013166D /* main.m in Sources */,
|
||||
935C554E1C12BE510013166D /* EAGLView.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXTargetDependency section */
|
||||
@ -1468,6 +1716,22 @@
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55331C12BA5F0013166D /* Main.storyboard */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
935C55341C12BA5F0013166D /* Base */,
|
||||
);
|
||||
name = Main.storyboard;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
935C55441C12BE110013166D /* LaunchScreen.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
935C55451C12BE110013166D /* Base */,
|
||||
);
|
||||
name = LaunchScreen.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
@ -1828,6 +2092,80 @@
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
935C553D1C12BA5F0013166D /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = YES;
|
||||
ARCHS = armv7;
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_OBJC_ARC = NO;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_PREFIX_HEADER = "Apple2Mac-Prefix.pch";
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"APPLE2IX=1",
|
||||
"INTERFACE_TOUCH=1",
|
||||
"MOBILE_DEVICE=1",
|
||||
"DEBUGGER=1",
|
||||
"VIDEO_OPENGL=1",
|
||||
"AUDIO_ENABLED=1",
|
||||
);
|
||||
INFOPLIST_FILE = "$(SRCROOT)/Apple2iOS/Apple2iOS-Info.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 7.1;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.deadc0de.Apple2iOS;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE = "";
|
||||
SDKROOT = iphoneos;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/../src";
|
||||
VALID_ARCHS = "armv7 armv7s";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
935C553E1C12BA5F0013166D /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = YES;
|
||||
ARCHS = armv7;
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_OBJC_ARC = NO;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_PREFIX_HEADER = "Apple2Mac-Prefix.pch";
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"NDEBUG=1",
|
||||
"APPLE2IX=1",
|
||||
"INTERFACE_TOUCH=1",
|
||||
"MOBILE_DEVICE=1",
|
||||
"DEBUGGER=1",
|
||||
"VIDEO_OPENGL=1",
|
||||
"AUDIO_ENABLED=1",
|
||||
);
|
||||
INFOPLIST_FILE = "$(SRCROOT)/Apple2iOS/Apple2iOS-Info.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 7.1;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.deadc0de.Apple2iOS;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE = "";
|
||||
SDKROOT = iphoneos;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
USER_HEADER_SEARCH_PATHS = "$(SRCROOT)/../src";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VALID_ARCHS = "armv7 armv7s";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
@ -1885,6 +2223,15 @@
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
935C553C1C12BA5F0013166D /* Build configuration list for PBXNativeTarget "Apple2iOS" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
935C553D1C12BA5F0013166D /* Debug */,
|
||||
935C553E1C12BA5F0013166D /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 773B3D04195688590085CE5F /* Project object */;
|
||||
|
@ -6,6 +6,10 @@
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleHelpBookFolder</key>
|
||||
<string>Apple2Mac.help</string>
|
||||
<key>CFBundleHelpBookName</key>
|
||||
<string>org.deadc0de.Apple2Mac.help</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
@ -17,15 +21,11 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.9.1</string>
|
||||
<string>0.9.2</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>CFBundleHelpBookFolder</key>
|
||||
<string>Apple2Mac.help</string>
|
||||
<key>CFBundleHelpBookName</key>
|
||||
<string>org.deadc0de.Apple2Mac.help</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
<string>public.app-category.education</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
|
44
Apple2Mac/Apple2iOS/Apple2iOS-Info.plist
Normal file
44
Apple2Mac/Apple2iOS/Apple2iOS-Info.plist
Normal file
@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<key>UIMainStoryboardFile</key>
|
||||
<string>Main</string>
|
||||
<key>UIRequiredDeviceCapabilities</key>
|
||||
<array>
|
||||
<string>armv7</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations~ipad</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
@ -0,0 +1,68 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "29x29",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "29x29",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "40x40",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "40x40",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "60x60",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "60x60",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "29x29",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "29x29",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "40x40",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "40x40",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "76x76",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "76x76",
|
||||
"scale" : "2x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
33
Apple2Mac/Apple2iOS/Base.lproj/LaunchScreen.xib
Normal file
33
Apple2Mac/Apple2iOS/Base.lproj/LaunchScreen.xib
Normal file
@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="9060" systemVersion="14F27" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="9051"/>
|
||||
<capability name="Constraints with non-1.0 multipliers" minToolsVersion="5.1"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<view contentMode="scaleToFill" id="iN0-l3-epB">
|
||||
<rect key="frame" x="0.0" y="0.0" width="480" height="480"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" misplaced="YES" text="Apple2iOS" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines" minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="kId-c2-rCX">
|
||||
<rect key="frame" x="20" y="218" width="441" height="43"/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="36"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstItem="kId-c2-rCX" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="bottom" multiplier="1/3" constant="1" id="5cJ-9S-tgC"/>
|
||||
<constraint firstAttribute="centerX" secondItem="kId-c2-rCX" secondAttribute="centerX" id="Koa-jz-hwk"/>
|
||||
<constraint firstItem="kId-c2-rCX" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="20" symbolic="YES" id="fvb-Df-36g"/>
|
||||
</constraints>
|
||||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
<point key="canvasLocation" x="548" y="455"/>
|
||||
</view>
|
||||
</objects>
|
||||
</document>
|
26
Apple2Mac/Apple2iOS/Base.lproj/Main.storyboard
Normal file
26
Apple2Mac/Apple2iOS/Base.lproj/Main.storyboard
Normal file
@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="8121.20" systemVersion="14D136" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" initialViewController="BYZ-38-t0r">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="8101.16"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<!--View Controller-->
|
||||
<scene sceneID="tne-QT-ifu">
|
||||
<objects>
|
||||
<viewController id="BYZ-38-t0r" sceneMemberID="viewController">
|
||||
<layoutGuides>
|
||||
<viewControllerLayoutGuide type="top" id="y3c-jy-aDJ"/>
|
||||
<viewControllerLayoutGuide type="bottom" id="wfy-db-euE"/>
|
||||
</layoutGuides>
|
||||
<view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC" customClass="EAGLView">
|
||||
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
</scene>
|
||||
</scenes>
|
||||
</document>
|
22
Apple2Mac/Classes/iOS/AppDelegate.h
Normal file
22
Apple2Mac/Classes/iOS/AppDelegate.h
Normal file
@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Apple // emulator for *ix
|
||||
*
|
||||
* This software package is subject to the GNU General Public License
|
||||
* version 3 or later (your choice) as published by the Free Software
|
||||
* Foundation.
|
||||
*
|
||||
* Copyright 2015 Aaron Culliney
|
||||
*
|
||||
*/
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
@class EAGLView;
|
||||
@class MainViewController;
|
||||
|
||||
@interface AppDelegate : NSObject<UIApplicationDelegate>
|
||||
|
||||
@property (nonatomic, retain) UIWindow *window;
|
||||
|
||||
@end
|
||||
|
93
Apple2Mac/Classes/iOS/AppDelegate.m
Normal file
93
Apple2Mac/Classes/iOS/AppDelegate.m
Normal file
@ -0,0 +1,93 @@
|
||||
/*
|
||||
* Apple // emulator for *ix
|
||||
*
|
||||
* This software package is subject to the GNU General Public License
|
||||
* version 3 or later (your choice) as published by the Free Software
|
||||
* Foundation.
|
||||
*
|
||||
* Copyright 2015 Aaron Culliney
|
||||
*
|
||||
*/
|
||||
|
||||
#import "AppDelegate.h"
|
||||
#import "EAGLView.h"
|
||||
#import "common.h"
|
||||
|
||||
@implementation AppDelegate
|
||||
|
||||
#pragma mark - Application lifecycle
|
||||
|
||||
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)options
|
||||
{
|
||||
// Override point for customization after application launch.
|
||||
|
||||
[self.window makeKeyAndVisible];
|
||||
|
||||
EAGLView *view = (EAGLView *)self.window.rootViewController.view;
|
||||
[view resumeRendering];
|
||||
[view resumeEmulation];
|
||||
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (void)applicationWillResignActive:(UIApplication *)application
|
||||
{
|
||||
// Sent when the application is about to move from active to inactive state. This can occur for certain types of
|
||||
// temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application
|
||||
// and it begins the transition to the background state. Use this method to pause ongoing tasks, disable timers,
|
||||
// and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
|
||||
EAGLView *view = (EAGLView *)self.window.rootViewController.view;
|
||||
[view pauseRendering];
|
||||
[view pauseEmulation];
|
||||
}
|
||||
|
||||
- (void)applicationDidEnterBackground:(UIApplication *)application
|
||||
{
|
||||
// Use this method to release shared resources, save user data, invalidate timers, and store enough application
|
||||
// state information to restore your application to its current state in case it is terminated later. If your
|
||||
// application supports background execution, called instead of applicationWillTerminate: when the user quits.
|
||||
EAGLView *view = (EAGLView *)self.window.rootViewController.view;
|
||||
[view pauseRendering];
|
||||
[view pauseEmulation];
|
||||
}
|
||||
|
||||
- (void)applicationWillEnterForeground:(UIApplication *)application
|
||||
{
|
||||
// Called as part of transition from the background to the inactive state: here you can undo many of the changes
|
||||
// made on entering the background.
|
||||
EAGLView *view = (EAGLView *)self.window.rootViewController.view;
|
||||
[view resumeRendering];
|
||||
[view resumeEmulation];
|
||||
}
|
||||
|
||||
- (void)applicationDidBecomeActive:(UIApplication *)application
|
||||
{
|
||||
// Restart any tasks that were paused (or not yet started) while the application was inactive. If the application
|
||||
// was previously in the background, optionally refresh the user interface.
|
||||
EAGLView *view = (EAGLView *)self.window.rootViewController.view;
|
||||
[view resumeRendering];
|
||||
[view resumeEmulation];
|
||||
}
|
||||
|
||||
- (void)applicationWillTerminate:(UIApplication *)application
|
||||
{
|
||||
// Called when the application is about to terminate. See also applicationDidEnterBackground:
|
||||
EAGLView *view = (EAGLView *)self.window.rootViewController.view;
|
||||
self.window.rootViewController.view = [[UIView alloc] init];
|
||||
|
||||
[view pauseRendering];
|
||||
[view pauseEmulation];
|
||||
|
||||
[view release];
|
||||
}
|
||||
|
||||
#pragma mark - Memory management
|
||||
|
||||
- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
|
||||
{
|
||||
// prolly not much we can do here at the moment since we run a tight ship...
|
||||
LOG("...");
|
||||
}
|
||||
|
||||
@end
|
||||
|
28
Apple2Mac/Classes/iOS/EAGLView.h
Normal file
28
Apple2Mac/Classes/iOS/EAGLView.h
Normal file
@ -0,0 +1,28 @@
|
||||
/*
|
||||
* Apple // emulator for *ix
|
||||
*
|
||||
* This software package is subject to the GNU General Public License
|
||||
* version 3 or later (your choice) as published by the Free Software
|
||||
* Foundation.
|
||||
*
|
||||
* Copyright 2015 Aaron Culliney
|
||||
*
|
||||
*/
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
// This class wraps the CAEAGLLayer from CoreAnimation into a convenient UIView subclass.
|
||||
// The view content is basically an EAGL surface you render your OpenGL scene into.
|
||||
// Note that setting the view non-opaque will only work if the EAGL surface has an alpha channel.
|
||||
@interface EAGLView : UIView
|
||||
|
||||
@property (nonatomic, readonly, getter=isAnimating, assign) BOOL animating;
|
||||
@property (nonatomic, assign) NSInteger renderFrameInterval;
|
||||
|
||||
- (void)pauseRendering;
|
||||
- (void)resumeRendering;
|
||||
|
||||
- (void)pauseEmulation;
|
||||
- (void)resumeEmulation;
|
||||
|
||||
@end
|
328
Apple2Mac/Classes/iOS/EAGLView.m
Normal file
328
Apple2Mac/Classes/iOS/EAGLView.m
Normal file
@ -0,0 +1,328 @@
|
||||
/*
|
||||
* Apple // emulator for *ix
|
||||
*
|
||||
* This software package is subject to the GNU General Public License
|
||||
* version 3 or later (your choice) as published by the Free Software
|
||||
* Foundation.
|
||||
*
|
||||
* Copyright 2015 Aaron Culliney
|
||||
*
|
||||
*/
|
||||
|
||||
#import "EAGLView.h"
|
||||
#import "common.h"
|
||||
#import "modelUtil.h"
|
||||
|
||||
#import <OpenGLES/ES3/gl.h>
|
||||
#import <OpenGLES/ES3/glext.h>
|
||||
|
||||
@interface EAGLView ()
|
||||
|
||||
@property (nonatomic, retain) EAGLContext *context;
|
||||
@property (nonatomic, retain) CADisplayLink *displayLink;
|
||||
@property (nonatomic, assign) GLuint defaultFBOName;
|
||||
@property (nonatomic, assign) GLuint colorRenderbuffer;
|
||||
|
||||
@end
|
||||
|
||||
@implementation EAGLView
|
||||
|
||||
@synthesize renderFrameInterval = _renderFrameInterval;
|
||||
|
||||
// Must return the CAEAGLLayer class so that CA allocates an EAGLLayer backing for this view
|
||||
+ (Class)layerClass
|
||||
{
|
||||
return [CAEAGLLayer class];
|
||||
}
|
||||
|
||||
// -initWithCoder: is sent when unarchived from storyboard file
|
||||
- (instancetype)initWithCoder:(NSCoder *)coder
|
||||
{
|
||||
self = [super initWithCoder:coder];
|
||||
if (self)
|
||||
{
|
||||
CAEAGLLayer *eaglLayer = (CAEAGLLayer *)self.layer;
|
||||
|
||||
eaglLayer.opaque = YES;
|
||||
eaglLayer.drawableProperties = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:NO], kEAGLDrawablePropertyRetainedBacking, kEAGLColorFormatRGBA8, kEAGLDrawablePropertyColorFormat, nil];
|
||||
|
||||
|
||||
_context = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2];
|
||||
if (!_context || ![EAGLContext setCurrentContext:_context])
|
||||
{
|
||||
[self release];
|
||||
return nil;
|
||||
}
|
||||
|
||||
// Create default framebuffer object. The backing will be allocated for the
|
||||
// current layer in -resizeFromLayer
|
||||
glGenFramebuffers(1, &_defaultFBOName);
|
||||
|
||||
glGenRenderbuffers(1, &_colorRenderbuffer);
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, _defaultFBOName);
|
||||
glBindRenderbuffer(GL_RENDERBUFFER, _colorRenderbuffer);
|
||||
|
||||
// This call associates the storage for the current render buffer with the
|
||||
// EAGLDrawable (our CAEAGLLayer) allowing us to draw into a buffer that
|
||||
// will later be rendered to the screen wherever the layer is (which
|
||||
// corresponds with our view).
|
||||
[_context renderbufferStorage:GL_RENDERBUFFER fromDrawable:(id<EAGLDrawable>)self.layer];
|
||||
|
||||
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, _colorRenderbuffer);
|
||||
|
||||
if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE)
|
||||
{
|
||||
NSLog(@"failed to make complete framebuffer object %x", glCheckFramebufferStatus(GL_FRAMEBUFFER));
|
||||
[self release];
|
||||
return nil;
|
||||
}
|
||||
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, _defaultFBOName);
|
||||
|
||||
// start emulator from paused state
|
||||
cpu_pause();
|
||||
emulator_start();
|
||||
video_backend->init(0);
|
||||
|
||||
_animating = NO;
|
||||
_renderFrameInterval = 1;
|
||||
_displayLink = nil;
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[self pauseRendering];
|
||||
[_displayLink release];
|
||||
_displayLink = nil;
|
||||
|
||||
// shut down common OpenGL stuff AFTER display link has been released
|
||||
emulator_shutdown();
|
||||
|
||||
if (_defaultFBOName != UNINITIALIZED_GL)
|
||||
{
|
||||
glDeleteFramebuffers(1, &_defaultFBOName);
|
||||
_defaultFBOName = UNINITIALIZED_GL;
|
||||
}
|
||||
if (_colorRenderbuffer != UNINITIALIZED_GL)
|
||||
{
|
||||
glDeleteRenderbuffers(1, &_colorRenderbuffer);
|
||||
_colorRenderbuffer = UNINITIALIZED_GL;
|
||||
}
|
||||
|
||||
if ([EAGLContext currentContext] == _context)
|
||||
{
|
||||
[EAGLContext setCurrentContext:nil];
|
||||
}
|
||||
|
||||
[_context release];
|
||||
_context = nil;
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (void)pauseEmulation
|
||||
{
|
||||
cpu_pause();
|
||||
}
|
||||
|
||||
- (void)resumeEmulation
|
||||
{
|
||||
cpu_resume();
|
||||
}
|
||||
|
||||
- (void)drawView:(id)sender
|
||||
{
|
||||
[EAGLContext setCurrentContext:_context];
|
||||
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, _defaultFBOName);
|
||||
video_backend->render();
|
||||
glBindRenderbuffer(GL_RENDERBUFFER, _colorRenderbuffer);
|
||||
|
||||
[_context presentRenderbuffer:GL_RENDERBUFFER];
|
||||
}
|
||||
|
||||
- (void)layoutSubviews
|
||||
{
|
||||
// Allocate color buffer backing based on the current layer size
|
||||
glBindRenderbuffer(GL_RENDERBUFFER, _colorRenderbuffer);
|
||||
[_context renderbufferStorage:GL_RENDERBUFFER fromDrawable:(id<EAGLDrawable>)self.layer];
|
||||
|
||||
// The pixel dimensions of the CAEAGLLayer
|
||||
GLint backingWidth = 0;
|
||||
GLint backingHeight = 0;
|
||||
glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &backingWidth);
|
||||
glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &backingHeight);
|
||||
|
||||
video_backend->reshape((int)backingWidth, (int)backingHeight);
|
||||
|
||||
if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE)
|
||||
{
|
||||
NSLog(@"Failed to make complete framebuffer object %x", glCheckFramebufferStatus(GL_FRAMEBUFFER));
|
||||
return;
|
||||
}
|
||||
|
||||
[self drawView:nil];
|
||||
}
|
||||
|
||||
- (void)setRenderFrameInterval:(NSInteger)frameInterval
|
||||
{
|
||||
// Frame interval defines how many display frames must pass between each time the
|
||||
// display link fires. The display link will only fire 30 times a second when the
|
||||
// frame internal is two on a display that refreshes 60 times a second. The default
|
||||
// frame interval setting of one will fire 60 times a second when the display refreshes
|
||||
// at 60 times a second. A frame interval setting of less than one results in undefined
|
||||
// behavior.
|
||||
if (frameInterval >= 1)
|
||||
{
|
||||
_renderFrameInterval = frameInterval;
|
||||
if (_animating)
|
||||
{
|
||||
[self pauseRendering];
|
||||
[self resumeRendering];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
- (void)resumeRendering
|
||||
{
|
||||
if (!_animating)
|
||||
{
|
||||
_animating = YES;
|
||||
|
||||
// Create the display link and set the callback to our drawView method
|
||||
_displayLink = [[CADisplayLink displayLinkWithTarget:self selector:@selector(drawView:)] retain];
|
||||
|
||||
// Set it to our _renderFrameInterval
|
||||
[_displayLink setFrameInterval:_renderFrameInterval];
|
||||
|
||||
// Have the display link run on the default runn loop (and the main thread)
|
||||
[_displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)pauseRendering
|
||||
{
|
||||
if (_animating)
|
||||
{
|
||||
[_displayLink invalidate];
|
||||
[_displayLink release];
|
||||
_displayLink = nil;
|
||||
_animating = NO;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark - Touch Handling
|
||||
|
||||
- (BOOL)isMultipleTouchEnabled
|
||||
{
|
||||
return YES;
|
||||
}
|
||||
|
||||
static inline void _handleTouch(EAGLView *self, SEL _cmd, UITouch *touch, interface_touch_event_t eventType) {
|
||||
|
||||
CGPoint location = [touch locationInView:self];
|
||||
float x[1] = { location.x };
|
||||
float y[1] = { location.y };
|
||||
|
||||
int64_t flags = interface_onTouchEvent(eventType, (int)1, (int)0, x, y);
|
||||
|
||||
do {
|
||||
if ((flags & TOUCH_FLAGS_HANDLED) == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
if ((flags & TOUCH_FLAGS_REQUEST_HOST_MENU) != 0)
|
||||
{
|
||||
// requested host menu
|
||||
}
|
||||
|
||||
if ((flags & TOUCH_FLAGS_KEY_TAP) != 0)
|
||||
{
|
||||
// tapped key
|
||||
}
|
||||
|
||||
if ((flags & TOUCH_FLAGS_MENU) == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
// touched menu item ...
|
||||
if ((flags & TOUCH_FLAGS_INPUT_DEVICE_CHANGE) != 0)
|
||||
{
|
||||
if ((flags & TOUCH_FLAGS_KBD) != 0)
|
||||
{
|
||||
keydriver_setTouchKeyboardOwnsScreen(true);
|
||||
joydriver_setTouchJoystickOwnsScreen(false);
|
||||
video_backend->animation_showTouchKeyboard();
|
||||
}
|
||||
else if ((flags & TOUCH_FLAGS_JOY) != 0)
|
||||
{
|
||||
keydriver_setTouchKeyboardOwnsScreen(false);
|
||||
joydriver_setTouchJoystickOwnsScreen(true);
|
||||
joydriver_setTouchVariant(EMULATED_JOYSTICK);
|
||||
video_backend->animation_showTouchJoystick();
|
||||
}
|
||||
else if ((flags & TOUCH_FLAGS_JOY_KPAD) != 0)
|
||||
{
|
||||
keydriver_setTouchKeyboardOwnsScreen(false);
|
||||
joydriver_setTouchJoystickOwnsScreen(true);
|
||||
joydriver_setTouchVariant(EMULATED_KEYPAD);
|
||||
video_backend->animation_showTouchJoystick();
|
||||
}
|
||||
else
|
||||
{
|
||||
// switch to next variant ...
|
||||
}
|
||||
}
|
||||
else if ((flags & TOUCH_FLAGS_CPU_SPEED_DEC) != 0)
|
||||
{
|
||||
// handle cpu decrement
|
||||
}
|
||||
else if ((flags & TOUCH_FLAGS_CPU_SPEED_INC) != 0)
|
||||
{
|
||||
// handle cpu increment
|
||||
}
|
||||
} while (NO);
|
||||
}
|
||||
|
||||
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
|
||||
{
|
||||
LOG("...");
|
||||
for (UITouch *touch in touches)
|
||||
{
|
||||
_handleTouch(self, _cmd, touch, TOUCH_DOWN);
|
||||
}
|
||||
}
|
||||
|
||||
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
|
||||
{
|
||||
LOG("...");
|
||||
for (UITouch *touch in touches)
|
||||
{
|
||||
_handleTouch(self, _cmd, touch, TOUCH_MOVE);
|
||||
}
|
||||
}
|
||||
|
||||
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
|
||||
{
|
||||
LOG("...");
|
||||
for (UITouch *touch in touches)
|
||||
{
|
||||
_handleTouch(self, _cmd, touch, TOUCH_UP);
|
||||
}
|
||||
}
|
||||
|
||||
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
|
||||
{
|
||||
LOG("...");
|
||||
for (UITouch *touch in touches)
|
||||
{
|
||||
_handleTouch(self, _cmd, touch, TOUCH_CANCEL);
|
||||
}
|
||||
}
|
||||
|
||||
@end
|
@ -43,10 +43,17 @@
|
||||
#endif
|
||||
|
||||
|
||||
#define NO_UNDERSCORES 1
|
||||
#if !defined(__APPLE__)
|
||||
# define NO_UNDERSCORES 1
|
||||
#endif
|
||||
|
||||
#define ENTRY(x) .globl x; .balign 16; .type x, %function; x##:
|
||||
#define CALL(x) x
|
||||
#if NO_UNDERSCORES
|
||||
# define ENTRY(x) .globl x; .arm; .balign 4; x##:
|
||||
# define CALL(x) x
|
||||
#else
|
||||
# define ENTRY(x) .globl _##x; .arm; .balign 4; _##x##:
|
||||
# define CALL(x) _##x
|
||||
#endif
|
||||
|
||||
// 2015/11/08 NOTE : Android requires all apps targeting API 23 (AKA Marshmallow) to use Position Independent Code (PIC)
|
||||
// that does not have TEXT segment relocations
|
||||
@ -81,8 +88,13 @@
|
||||
_SYM_ADDR_POST(var,8)
|
||||
# endif
|
||||
#else /* !PREVENT_TEXTREL */
|
||||
# define SYM(reg,var) \
|
||||
# if NO_UNDERSCORES
|
||||
# define SYM(reg,var) \
|
||||
ldr reg, =var
|
||||
# else
|
||||
# define SYM(reg,var) \
|
||||
ldr reg, =_##var
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
||||
|
@ -2511,7 +2511,7 @@ ENTRY(cpu65_run)
|
||||
ldrb r0, [r1]
|
||||
teq r0, #0
|
||||
eorne r0, r0, r0
|
||||
strneb r0, [r1]
|
||||
strbne r0, [r1]
|
||||
bne ex_reset
|
||||
b continue1
|
||||
|
||||
@ -2547,8 +2547,13 @@ ENTRY(cpu65_direct_write)
|
||||
# local data ...
|
||||
.global interrupt_vector
|
||||
.global reset_vector
|
||||
interrupt_vector: .hword 0xFFFE
|
||||
reset_vector: .hword 0xFFFC
|
||||
#if NO_UNDERSCORES
|
||||
interrupt_vector: .hword 0xFFFE
|
||||
reset_vector: .hword 0xFFFC
|
||||
#else
|
||||
_interrupt_vector: .hword 0xFFFE
|
||||
_reset_vector: .hword 0xFFFC
|
||||
#endif
|
||||
|
||||
.ltorg
|
||||
|
||||
|
@ -45,7 +45,7 @@ ENTRY(func) SYM(r1, pointer); \
|
||||
ENTRY(func) SYM(r1, pointer); \
|
||||
ldr r1, [r1]; \
|
||||
teq r1, #0; \
|
||||
strneb r0, [r1, EffectiveAddr]; \
|
||||
strbne r0, [r1, EffectiveAddr]; \
|
||||
mov pc, lr;
|
||||
|
||||
|
||||
|
23
src/darwin-cpu-glue.S
Normal file
23
src/darwin-cpu-glue.S
Normal file
@ -0,0 +1,23 @@
|
||||
/*
|
||||
* Apple // emulator for *ix
|
||||
*
|
||||
* This software package is subject to the GNU General Public License
|
||||
* version 3 or later (your choice) as published by the Free Software
|
||||
* Foundation.
|
||||
*
|
||||
* Copyright 2015 Aaron Culliney
|
||||
*
|
||||
*/
|
||||
|
||||
#ifdef __APPLE__
|
||||
# if defined(__arm__)
|
||||
# include "arm/cpu.S"
|
||||
# include "arm/glue.S"
|
||||
# elif defined(__arm64__)
|
||||
# error aarch64 not implemented ... TODO SOON
|
||||
# else
|
||||
// simulator is x86
|
||||
# include "x86/cpu.S"
|
||||
# include "x86/glue.S"
|
||||
# endif
|
||||
#endif
|
@ -23,6 +23,7 @@ static uint64_t orwl_timestart = 0;
|
||||
|
||||
__attribute__((constructor(CTOR_PRIORITY_LATE)))
|
||||
static void __init_darwin_shim() {
|
||||
LOG("Initializing Darwin Shim");
|
||||
mach_timebase_info_data_t tb = { 0 };
|
||||
mach_timebase_info(&tb);
|
||||
orwl_timebase = tb.numer;
|
||||
|
@ -29,6 +29,7 @@ CrashHandler_s *crashHandler = NULL;
|
||||
|
||||
__attribute__((constructor(CTOR_PRIORITY_FIRST)))
|
||||
static void _init_common(void) {
|
||||
LOG("Initializing common...");
|
||||
#if defined(CONFIG_DATADIR)
|
||||
data_dir = strdup(CONFIG_DATADIR PATH_SEPARATOR PACKAGE_NAME);
|
||||
#elif defined(ANDROID)
|
||||
@ -235,6 +236,8 @@ void emulator_start(void) {
|
||||
}
|
||||
|
||||
void emulator_shutdown(void) {
|
||||
disk6_eject(0);
|
||||
disk6_eject(1);
|
||||
video_shutdown();
|
||||
timing_stopCPU();
|
||||
_shutdown_threads();
|
||||
|
@ -220,6 +220,7 @@ static inline bool _sprout_menu(float x, float y) {
|
||||
return menu.topRightShowing;
|
||||
} else {
|
||||
RELEASE_ERRLOG("This should not happen");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -21,8 +21,8 @@
|
||||
# import <CoreFoundation/CoreFoundation.h>
|
||||
# import <TargetConditionals.h>
|
||||
# if TARGET_OS_IPHONE
|
||||
# import <OpenGLES/ES2/gl.h>
|
||||
# import <OpenGLES/ES2/glext.h>
|
||||
# import <OpenGLES/ES3/gl.h>
|
||||
# import <OpenGLES/ES3/glext.h>
|
||||
# else
|
||||
# import <OpenGL/OpenGL.h>
|
||||
# import <OpenGL/gl3.h>
|
||||
|
@ -89,6 +89,7 @@
|
||||
# define _XSI %esi
|
||||
# define _XAX %eax /* scratch */
|
||||
# define _XBX %ebx /* scratch2 */
|
||||
# define _X8 %eax // WRONG!!! FIXMENOW
|
||||
// full-length Apple ][ registers
|
||||
# define XY_Reg_X %ebx /* 6502 X&Y flags */
|
||||
# define AF_Reg_X %ecx /* 6502 F&A flags */
|
||||
@ -127,16 +128,18 @@
|
||||
#define CALL(foo) foo
|
||||
#else /* !NO_UNDERSCORES */
|
||||
#if defined(__APPLE__)
|
||||
# warning "2014/06/22 -- Apple's clang appears to not like certain manipulations of %_h register values (for example %ah, %ch) that are valid on *nix ... and it creates bizarre bytecode
|
||||
# define APPLE_ASSEMBLER_IS_BROKEN 1
|
||||
# define SYM(foo) _##foo(%rip)
|
||||
# define SYMX(foo, INDEX, SCALE) (_X8,INDEX,SCALE)
|
||||
# ifdef __LP64__
|
||||
# warning "2014/06/22 -- Mac requires PIC indexing
|
||||
# define APPLE_ASSEMBLER_IS_BROKEN 1
|
||||
# define SYM(foo) _##foo(%rip)
|
||||
# define SYMX(foo, INDEX, SCALE) (_X8,INDEX,SCALE)
|
||||
# define SYMX_PROLOGUE(foo) leaLQ _##foo(%rip), _X8;
|
||||
# else
|
||||
# error "Building 32bit Darwin/x86 is not supported (unless you're a go-getter and make it supported)"
|
||||
# define SYM(foo) _##foo
|
||||
# define SYMX(foo, INDEX, SCALE) _##foo(,INDEX,SCALE)
|
||||
# define SYMX_PROLOGUE(foo)
|
||||
# endif
|
||||
# define ENTRY(foo) .globl _##foo; .balign 4; _##foo##:
|
||||
# define ENTRY(foo) .globl _##foo; .balign 16; _##foo##:
|
||||
#else
|
||||
# define SYM(foo) _##foo
|
||||
# define SYMX(foo, INDEX, SCALE) _##foo(,INDEX,SCALE)
|
||||
|
Loading…
x
Reference in New Issue
Block a user