Mac OS X Working Change Sets?

May 15, 2010 at 8:55 PM

Has there been any progress in getting the latest change sets to build on OS X?  Can we expect this any time soon, or is there still much to be done?

Coordinator
May 16, 2010 at 2:06 AM

there is not much to be done (just adding psxcommon.c to xcode project and fixing compile errors), however I don't have access to a Mac for the time being so I'm not able to fix it (and I don't know when I'm able to).

of course, it would be nice if someone can help :)

May 16, 2010 at 3:11 AM
I wish I knew more about coding! Almost all of the compile errors read "Expected expression before 'else'". Here's an example:

static int LoadGPUplugin(const char *GPUdll) {
void *drv;

hGPUDriver = SysLoadLibrary(GPUdll);
if (hGPUDriver == NULL) {
GPU_configure = NULL;
SysMessage (_("Could not load GPU plugin %s!"), GPUdll); return -1;
}
drv = hGPUDriver;
LoadGpuSym1(init, "GPUinit");
LoadGpuSym1(shutdown, "GPUshutdown");
LoadGpuSym1(open, "GPUopen");
LoadGpuSym1(close, "GPUclose");
LoadGpuSym1(readData, "GPUreadData");
LoadGpuSym1(readDataMem, "GPUreadDataMem");
LoadGpuSym1(readStatus, "GPUreadStatus");
LoadGpuSym1(writeData, "GPUwriteData");
LoadGpuSym1(writeDataMem, "GPUwriteDataMem");
LoadGpuSym1(writeStatus, "GPUwriteStatus");
LoadGpuSym1(dmaChain, "GPUdmaChain");
LoadGpuSym1(updateLace, "GPUupdateLace");
LoadGpuSym0(keypressed, "GPUkeypressed");
LoadGpuSym0(displayText, "GPUdisplayText");
LoadGpuSym0(makeSnapshot, "GPUmakeSnapshot");
LoadGpuSym1(freeze, "GPUfreeze");
LoadGpuSym0(getScreenPic, "GPUgetScreenPic");
LoadGpuSym0(showScreenPic, "GPUshowScreenPic");
LoadGpuSym0(clearDynarec, "GPUclearDynarec");
LoadGpuSym0(configure, "GPUconfigure");
LoadGpuSym0(test, "GPUtest");
LoadGpuSym0(about, "GPUabout");

return 0;
}

every "LoadGupSym" line yields the error, and the error occurs 99 times in plugins.c. If it's an easy fix (it seems like it should be), let me know and I'll make the necessary changes!

John

On 2010-05-15, at 9:06 PM, weimingzhi wrote:

From: weimingzhi

there is not much to be done (just adding psxcommon.c to xcode project and fixing compile errors), however I don't have access to a Mac for the time being so I'm not able to fix it (and I don't know when I'm able to).

of course, it would be nice if someone can help :)

Read the full discussion online.

To add a post to this discussion, reply to this email (pcsxr@discussions.codeplex.com)

To start a new discussion for this project, email pcsxr@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com


Coordinator
May 16, 2010 at 4:17 AM
Edited May 16, 2010 at 4:18 AM

the mentioned error should have been gone in r48173 :)

let me know about other errors you encountered and I'll see what I can do with them.

May 19, 2010 at 7:12 PM
Edited May 19, 2010 at 7:20 PM

I've done a bit more playing around with the source code (r48308), and I was able to get rid of four errors which also resolved two hundred warnings or so. There were a few discrepancies between main.m and system.h. Main.m had lines like this:

void SysPrintf(const char *fmt, ...) {
whereas system.h had lines like this:
void SysPrintf(char *fmt, ...);
(It may have been the other way around.) I took out the "const " and a lot of problems were solved. There are still 99 errors in the macosx plugins.c file, all of them saying "Expected expression before 'else'". These might have to do with a warning that comes right before each string of errors. For example, the line hGPUDriver = SysLoadLibrary(GPUdll); has an error that reads "Passing argument 1 of 'SysLoadLibrary' discards qualifiers from pointer target type", then there are a string of "Expected expression before 'else'" errors about five lines later, right after drv = hGPUDriver;.

I'm not sure if this helps at all, but I hope it does a little bit!
Coordinator
May 20, 2010 at 1:30 AM

thanks, I've added const to those Sys*() functions (adding const can be a more appropriate way for functions like that).

oops, looks like I missed something about that "else" error, sorry... it's still needed to add brackets around the use of CheckErr(), like this:

#define LoadSym(dest, src, name, checkerr) { \
    dest = (src)SysLoadSym(drv, name); \
    if (checkerr) { CheckErr(name); } else SysLibError(); \
}

Please let me know if you are still encountering errors :)