Gah, compiling is not as straightforward as in Linux (it never is, is it?).
I tried Hector's Xcode project + latest SVN revision, but Xcode breaks right in the beginning when linking parsegen with an "Undefined symbols: _crc32" Well, it gave out another error, but I have no idea what it means: "JamToolExecution parsegen (1 error) Command /Developer/Private/jam failed with exit code 1" (I hate Xcode).
Compiling the old fashioned way breaks with tons of "error: binary output format does not support external references" for about every single asm file. And no, it doesn't matter if I use the Apple supplied NASM or a MacPorts compiled one. I was able to solve this particular problem, I just edited the make file to add the "-f macho" flag In fact, I had to ditch the MacPorts one completely, because Apple's NASM is the only one that supports Mach-o as a output format.
It finally broke again at gui.asm with this:
Code: Select all
nasm -f macho -o gui/gui.o gui/gui.asm
gui/guiwindp.inc:3691: error: symbol `GUIGUIAboutTextA2' undefined
gui/guiwindp.inc:3691: error: symbol `GUIGUIAboutTextA2' undefined
gui/guiwindp.inc:4049: error: short jump is out of range
gui/guikeys.inc:1456: error: symbol `Triplebufen' undefined
gui/guikeys.inc:1474: error: symbol `GUITBVID' undefined
gui/guikeys.inc:1476: error: symbol `Triplebufen' undefined
gui/guikeys.inc:1640: error: short jump is out of range
gui/gui.asm:1090: error: short jump is out of range
gui/gui.asm:3765: error: phase error detected at end of assembly.
I'm going to try making a new Xcode project by looking at Hector's one, but I can't guarantee anything (Did I mention how much I hate Xcode?).
On a unrelated note, who made the ZSNES icon? OS X uses 128 x 128 as the size of its larger icon, so the icon is a little bit pixelated on Hector's build. (easily noticeable by Alt^WCommand-Tabbing when ZSNES is open.) A 128 x 128 transparent PNG image of the ZSNES icon would be great.
EDIT: Scratch that, I just noticed I'm getting lots of stupid errors when running the configure script. It seems that the bash that comes with OS X (2.05b.0) doesn't support VARIABLE+="whatever" o_O? I'm getting bash 3.2.9 off MacPorts and I'll edit this post later if it solves the broken configure script.
EDIT 2: Bash 3 solved my problem, configure ran just fine and ZSNES compiled without messing with the Makefile manually (I'm an idiot). However, OpenGL is broken, like some people mentioned all I get is a white window. If I switch to an OpenGL mode, save (by saving I mean pressing a key to make ZSNES accept the new mode and then close the white ZSNES window) and reopen ZSNES, ZSNES crashes (with a crash log this time!).
This is what I get on the terminal:
Fatal signal: Floating Point Exception (SDL Parachute Deployed).
And this is what I get on the OS X console:
Feb 19 13:46:20 calacirya crashdump[10893]: zsnes crashed
Feb 19 13:46:21 calacirya crashdump[10893]: crash report written to: /Users/miguel/Library/Logs/CrashReporter/zsnes.crash.log
zsnes.crash.log
And this is the info about
my machine's specs that Apple's Crash Report tool appends to the crash log. (I obviously didn't send the report to Apple, I just wanted to see what was it going to send)
Thing is, OpenGL modes work just fine with Hector's build. Well, some of them work, at least.