mirror of
https://github.com/mauiaaron/apple2.git
synced 2025-01-26 17:32:40 +00:00
Various fixes to get Mac and iOS building
This commit is contained in:
parent
89d12ce29d
commit
0dbcfbc9a2
@ -247,6 +247,8 @@
|
|||||||
77E1C0B719D72700004344E0 /* imageUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 77E1C0B019D72700004344E0 /* imageUtil.m */; };
|
77E1C0B719D72700004344E0 /* imageUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 77E1C0B019D72700004344E0 /* imageUtil.m */; };
|
||||||
77EB316C1A27A9AF00DC5A8A /* blank.dsk.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4ADC523019E8D3F600186B36 /* blank.dsk.gz */; };
|
77EB316C1A27A9AF00DC5A8A /* blank.dsk.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4ADC523019E8D3F600186B36 /* blank.dsk.gz */; };
|
||||||
77EB316D1A27A9AF00DC5A8A /* blank.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4ADC523119E8D3F600186B36 /* blank.nib.gz */; };
|
77EB316D1A27A9AF00DC5A8A /* blank.nib.gz in Resources */ = {isa = PBXBuildFile; fileRef = 4ADC523119E8D3F600186B36 /* blank.nib.gz */; };
|
||||||
|
77FA92941C72D93D0090755C /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 77FA92931C72D93D0090755C /* libz.tbd */; };
|
||||||
|
77FA92951C72DA5A0090755C /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 77FA92931C72D93D0090755C /* libz.tbd */; };
|
||||||
93206C781C14E14000668153 /* Apple2iOS.strings in Resources */ = {isa = PBXBuildFile; fileRef = 93206C761C14E14000668153 /* Apple2iOS.strings */; };
|
93206C781C14E14000668153 /* Apple2iOS.strings in Resources */ = {isa = PBXBuildFile; fileRef = 93206C761C14E14000668153 /* Apple2iOS.strings */; };
|
||||||
93206C851C156BD300668153 /* A2IXPopupChoreographer.m in Sources */ = {isa = PBXBuildFile; fileRef = 93206C841C156BD300668153 /* A2IXPopupChoreographer.m */; };
|
93206C851C156BD300668153 /* A2IXPopupChoreographer.m in Sources */ = {isa = PBXBuildFile; fileRef = 93206C841C156BD300668153 /* A2IXPopupChoreographer.m */; };
|
||||||
935C55131C12B61D0013166D /* EmulatorGLView.m in Sources */ = {isa = PBXBuildFile; fileRef = 935C55041C12B61D0013166D /* EmulatorGLView.m */; };
|
935C55131C12B61D0013166D /* EmulatorGLView.m in Sources */ = {isa = PBXBuildFile; fileRef = 935C55041C12B61D0013166D /* EmulatorGLView.m */; };
|
||||||
@ -532,6 +534,7 @@
|
|||||||
77E1C0B119D72700004344E0 /* imageUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = imageUtil.h; path = video_util/imageUtil.h; sourceTree = "<group>"; };
|
77E1C0B119D72700004344E0 /* imageUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = imageUtil.h; path = video_util/imageUtil.h; sourceTree = "<group>"; };
|
||||||
77E1C0B219D72700004344E0 /* glUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glUtil.h; path = video_util/glUtil.h; sourceTree = "<group>"; };
|
77E1C0B219D72700004344E0 /* glUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glUtil.h; path = video_util/glUtil.h; sourceTree = "<group>"; };
|
||||||
77E1C0C719D736EB004344E0 /* glvideo.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = glvideo.c; sourceTree = "<group>"; };
|
77E1C0C719D736EB004344E0 /* glvideo.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = glvideo.c; sourceTree = "<group>"; };
|
||||||
|
77FA92931C72D93D0090755C /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
|
||||||
93206C771C14E14000668153 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Apple2iOS.strings; sourceTree = "<group>"; };
|
93206C771C14E14000668153 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Apple2iOS.strings; sourceTree = "<group>"; };
|
||||||
93206C831C156BD300668153 /* A2IXPopupChoreographer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = A2IXPopupChoreographer.h; path = Classes/iOS/A2IXPopupChoreographer.h; sourceTree = SOURCE_ROOT; };
|
93206C831C156BD300668153 /* A2IXPopupChoreographer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = A2IXPopupChoreographer.h; path = Classes/iOS/A2IXPopupChoreographer.h; sourceTree = SOURCE_ROOT; };
|
||||||
93206C841C156BD300668153 /* A2IXPopupChoreographer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = A2IXPopupChoreographer.m; path = Classes/iOS/A2IXPopupChoreographer.m; sourceTree = SOURCE_ROOT; };
|
93206C841C156BD300668153 /* A2IXPopupChoreographer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = A2IXPopupChoreographer.m; path = Classes/iOS/A2IXPopupChoreographer.m; sourceTree = SOURCE_ROOT; };
|
||||||
@ -602,6 +605,7 @@
|
|||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
77FA92951C72DA5A0090755C /* libz.tbd in Frameworks */,
|
||||||
779F566019EAF6D000A6F107 /* OpenAL.framework in Frameworks */,
|
779F566019EAF6D000A6F107 /* OpenAL.framework in Frameworks */,
|
||||||
4ADC521B19E8CA4500186B36 /* Cocoa.framework in Frameworks */,
|
4ADC521B19E8CA4500186B36 /* Cocoa.framework in Frameworks */,
|
||||||
);
|
);
|
||||||
@ -628,6 +632,7 @@
|
|||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
77FA92941C72D93D0090755C /* libz.tbd in Frameworks */,
|
||||||
779DD846195BD9F900DF89E5 /* Cocoa.framework in Frameworks */,
|
779DD846195BD9F900DF89E5 /* Cocoa.framework in Frameworks */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
@ -733,6 +738,7 @@
|
|||||||
773B3D0E1956885A0085CE5F /* Frameworks */ = {
|
773B3D0E1956885A0085CE5F /* Frameworks */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
77FA92931C72D93D0090755C /* libz.tbd */,
|
||||||
4EB4F8561C393F0E0072A15C /* OpenAL.framework */,
|
4EB4F8561C393F0E0072A15C /* OpenAL.framework */,
|
||||||
4ECFC3BE1C368ED3008E2633 /* GameController.framework */,
|
4ECFC3BE1C368ED3008E2633 /* GameController.framework */,
|
||||||
77C279601A1047AE000FE33F /* DDHidLib.xcodeproj */,
|
77C279601A1047AE000FE33F /* DDHidLib.xcodeproj */,
|
||||||
@ -1957,6 +1963,7 @@
|
|||||||
"CPU_TRACING=1",
|
"CPU_TRACING=1",
|
||||||
"DISK_TRACING=1",
|
"DISK_TRACING=1",
|
||||||
"VM_TRACING=1",
|
"VM_TRACING=1",
|
||||||
|
"VIDEO_OPENGL=1",
|
||||||
);
|
);
|
||||||
HEADER_SEARCH_PATHS = (
|
HEADER_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@ -1986,6 +1993,7 @@
|
|||||||
"TEST_VM=1",
|
"TEST_VM=1",
|
||||||
"TESTING=1",
|
"TESTING=1",
|
||||||
"CPU_TRACING=1",
|
"CPU_TRACING=1",
|
||||||
|
"VIDEO_OPENGL=1",
|
||||||
);
|
);
|
||||||
HEADER_SEARCH_PATHS = (
|
HEADER_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@ -2016,6 +2024,7 @@
|
|||||||
"CPU_TRACING=1",
|
"CPU_TRACING=1",
|
||||||
"DISK_TRACING=1",
|
"DISK_TRACING=1",
|
||||||
"VM_TRACING=1",
|
"VM_TRACING=1",
|
||||||
|
"VIDEO_OPENGL=1",
|
||||||
);
|
);
|
||||||
HEADER_SEARCH_PATHS = (
|
HEADER_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@ -2045,6 +2054,7 @@
|
|||||||
"TEST_VM=1",
|
"TEST_VM=1",
|
||||||
"TESTING=1",
|
"TESTING=1",
|
||||||
"CPU_TRACING=1",
|
"CPU_TRACING=1",
|
||||||
|
"VIDEO_OPENGL=1",
|
||||||
);
|
);
|
||||||
HEADER_SEARCH_PATHS = (
|
HEADER_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@ -2246,6 +2256,7 @@
|
|||||||
"KEYPAD_JOYSTICK=1",
|
"KEYPAD_JOYSTICK=1",
|
||||||
"TEST_CPU=1",
|
"TEST_CPU=1",
|
||||||
"TESTING=1",
|
"TESTING=1",
|
||||||
|
"VIDEO_OPENGL=1",
|
||||||
);
|
);
|
||||||
HEADER_SEARCH_PATHS = (
|
HEADER_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
@ -2274,6 +2285,7 @@
|
|||||||
"KEYPAD_JOYSTICK=1",
|
"KEYPAD_JOYSTICK=1",
|
||||||
"TEST_CPU=1",
|
"TEST_CPU=1",
|
||||||
"TESTING=1",
|
"TESTING=1",
|
||||||
|
"VIDEO_OPENGL=1",
|
||||||
);
|
);
|
||||||
HEADER_SEARCH_PATHS = (
|
HEADER_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
|
@ -247,7 +247,7 @@ static CVReturn displayLinkCallback(CVDisplayLinkRef displayLink, const CVTimeSt
|
|||||||
#endif // !SUPPORT_RETINA_RESOLUTION
|
#endif // !SUPPORT_RETINA_RESOLUTION
|
||||||
|
|
||||||
// Set the new dimensions in our renderer
|
// Set the new dimensions in our renderer
|
||||||
video_reshape((int)viewRectPixels.size.width, (int)viewRectPixels.size.height);
|
video_reshape((int)viewRectPixels.size.width, (int)viewRectPixels.size.height, /*landscape:*/true);
|
||||||
|
|
||||||
CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||||
}
|
}
|
||||||
|
@ -158,7 +158,7 @@
|
|||||||
glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &backingWidth);
|
glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &backingWidth);
|
||||||
glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &backingHeight);
|
glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &backingHeight);
|
||||||
|
|
||||||
video_reshape((int)backingWidth, (int)backingHeight);
|
video_reshape((int)backingWidth, (int)backingHeight, /*landscape:*/true); // TODO : portrait is possible
|
||||||
|
|
||||||
if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE)
|
if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE)
|
||||||
{
|
{
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
|
|
||||||
#define CLOCK_MONOTONIC 1
|
#define CLOCK_MONOTONIC 1
|
||||||
|
#define CLOCK_REALTIME 2
|
||||||
|
|
||||||
int clock_gettime(int, struct timespec *);
|
int clock_gettime(int, struct timespec *);
|
||||||
|
|
||||||
|
@ -140,16 +140,18 @@ int test_setup_boot_disk(const char *fileName, int readonly) {
|
|||||||
CFRELEASE(fileURL);
|
CFRELEASE(fileURL);
|
||||||
CFIndex length = CFStringGetLength(filePath);
|
CFIndex length = CFStringGetLength(filePath);
|
||||||
CFIndex maxSize = CFStringGetMaximumSizeForEncoding(length, kCFStringEncodingUTF8);
|
CFIndex maxSize = CFStringGetMaximumSizeForEncoding(length, kCFStringEncodingUTF8);
|
||||||
disk = (char *)MALLOC(maxSize);
|
char *disk0 = (char *)MALLOC(maxSize);
|
||||||
if (!CFStringGetCString(filePath, disk, maxSize, kCFStringEncodingUTF8)) {
|
if (!CFStringGetCString(filePath, disk0, maxSize, kCFStringEncodingUTF8)) {
|
||||||
FREE(disk);
|
FREE(disk0);
|
||||||
}
|
}
|
||||||
CFRELEASE(filePath);
|
CFRELEASE(filePath);
|
||||||
|
|
||||||
char *paths[] = {
|
char *paths[] = {
|
||||||
disk,
|
NULL,
|
||||||
NULL,
|
NULL,
|
||||||
};
|
};
|
||||||
|
asprintf(&paths[0], "%s", disk0);
|
||||||
|
FREE(disk0);
|
||||||
#else
|
#else
|
||||||
char *paths[] = {
|
char *paths[] = {
|
||||||
NULL,
|
NULL,
|
||||||
@ -172,7 +174,7 @@ int test_setup_boot_disk(const char *fileName, int readonly) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
int len = strlen(disk);
|
size_t len = strlen(disk);
|
||||||
disk[len-3] = '\0'; // try again without '.gz' extension
|
disk[len-3] = '\0'; // try again without '.gz' extension
|
||||||
err = disk6_insert(0, disk, readonly) != NULL;
|
err = disk6_insert(0, disk, readonly) != NULL;
|
||||||
if (!err) {
|
if (!err) {
|
||||||
|
@ -82,7 +82,7 @@ static void *_button_tap_delayed_thread(void *dummyptr) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct timespec wait;
|
struct timespec wait;
|
||||||
clock_gettime(CLOCK_REALTIME, &wait); // should use CLOCK_MONOTONIC ?
|
clock_gettime(CLOCK_REALTIME, &wait);
|
||||||
wait = timespec_add(wait, joys.tapDelayNanos);
|
wait = timespec_add(wait, joys.tapDelayNanos);
|
||||||
int timedOut = pthread_cond_timedwait(&joys.tapDelayCond, &joys.tapDelayMutex, &wait); // wait and possibly consume event
|
int timedOut = pthread_cond_timedwait(&joys.tapDelayCond, &joys.tapDelayMutex, &wait); // wait and possibly consume event
|
||||||
assert((!timedOut || timedOut == ETIMEDOUT) && "should not fail any other way");
|
assert((!timedOut || timedOut == ETIMEDOUT) && "should not fail any other way");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user