ZSNES for Intel Mac ready for consumption!

General area for talk about ZSNES. The best place to ask for related questions as well as troubleshooting.

Moderator: ZSNES Mods

Locked
BRPXQZME
Hazed
Posts: 54
Joined: Tue May 30, 2006 3:47 am
Location: Centreville, VA
Contact:

Post by BRPXQZME »

Hrm...

Yes, I get white screen in all video modes that use OpenGL. AVOID USING THESE (until someone figures out what the problem is, that is). For now you can get full screen by choosing a video mode like 512x448 DR F or 640x480 DR F. I realize this is a little bit of a drag if these are non-native resolutions for your LCD or something, but it's a bug somewhere that hasn't been fixed. Sorry.

If you're stuck in one of these modes, edit the file ~/.zsnes/zsnesl.cfg (no, I don't know how to get there from the Finder, yes it should probably be moved to ~/Library/Application Support/ZSNES... next WIP will do so in the interests of letting people who aren't terminal wizards get at it) and change cvidmode=(whatever) to cvidmode=2

If you can't figure it out because I'm too lazy to explain it... I'll update it sometime when I'm not about to go to sleep. Then you'll be able to fix it if you (or more likely someone else) makes the mistake again.
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Are you sure this is not a symptom of a bad OpenGL client? It sounds like it to me. The non OpenGL modes are simply CPU intensive modes and are simply not ideal.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Psychoactivist

Open GL

Post by Psychoactivist »

OpenGL has the colors all wonky, but the games play much faster. once the OpenGL works on this it'll be the best Mac SNES emulator ever!
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

I hope you post what video card is in use here... because that does have some importance.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
BRPXQZME
Hazed
Posts: 54
Joined: Tue May 30, 2006 3:47 am
Location: Centreville, VA
Contact:

Post by BRPXQZME »

My MacBook and erise's Mac Mini have Intel integrated graphics (GMA 9xx). Since it's working (wonky) according to Psychoactivist, there's a good chance he has an ATI graphics card (Radeon X1600 or something nice like that).

Bizzare power-of-two problem? Beats me, it delves into the realm of "I don't know what I'm talking about". And while we're in that realm, I though OpenGL mode would be a lot better if you had the correct setup?!?!?! ...maybe I just don't know why it'd be CPU intensive.

(I'm currently focusing on the problem where enabling the NTSC filter causes a segfault... partly because it's the other big killjoy, mostly because I just want the filter :P
The only other unmitigated problem I'm immediately aware of is that 8-point interpolated sound is REALLY messed, but that's a feature I think most people can live without for now)
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

I doubt it's a power-of-two issue, but I'm definately not the SDL guy here. The non-OpenGL modes use some form of software rendering (unless you use other libs) and that's not ideal for many people. (You want that time spent on emulating of course).

I'm not sure what's going on with the NTSC filter.. it works for me under Ubuntu so...
The 8-point interpolated sound stuff hasn't really changed.. and appears consistant between ports (though, bad sound cards could be at fault for all I know).
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Xander_H

PC -savegames to MAC?

Post by Xander_H »

Hi!

It's cool to have Zsnes on my mac, but I was wondering, I have lots of good progress on some snes games on my Windows-version of Zsnes and would like to move them to the mac. Meaning, I would like to use the same save states and the save roms on my mac as on my pc.

How can this be done?
adventure_of_link
Locksmith of Hyrule
Posts: 3634
Joined: Sun Aug 08, 2004 7:49 am
Location: 255.255.255.255
Contact:

Post by adventure_of_link »

as far as I know, battery-backed save files (*.srm) are importable
<Nach> so why don't the two of you get your own room and leave us alone with this stupidity of yours?
NSRT here.
Agozer
16-bit Corpse | Nyoron~
Posts: 3534
Joined: Sun Aug 01, 2004 7:14 pm
Location: Nokia Land

Post by Agozer »

SRAM is (or at the very least, should be) compatible between different ports as well as different SNES emulators. Savestates however, are not.
whicker: franpa is grammatically correct, and he still gets ripped on?
sweener2001: Grammatically correct this one time? sure. every other time? no. does that give him a right? not really.
Image
BRPXQZME
Hazed
Posts: 54
Joined: Tue May 30, 2006 3:47 am
Location: Centreville, VA
Contact:

Post by BRPXQZME »

Well, I can't put my finger on where exactly the NTSC code is messing up, but I think that it's v0.1.1 of the filter code that somehow messes up the access. If I upgrade the code v0.2.1, it won't crash, but the way in which the mode is rendered to the surface has changed, and I'm not really inclined to go and make all the changes necessary (because I don't want to bother figuring it out, for one). The good news is, it's likely that it won't segfault on enabling when someone makes that upgrade.

Now I'm trying to pin down the white screen of death....
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

BRPXQZME: I'd appreciate if you can tell me which of your known bugs seems to have been fixed with latest SVN.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
BRPXQZME
Hazed
Posts: 54
Joined: Tue May 30, 2006 3:47 am
Location: Centreville, VA
Contact:

Post by BRPXQZME »

I haven't posted anything since I don't know any more bugs, and I haven't fixed any!

Ye Olde List of Bugs:
- SORT FUNCTION NOT WORKING IS NO LONGER A BUG (that's what you were looking for, right? It's the -fno-unit-at-a-time flag that fixes it, yes. Speaking of CFLAGS, the mdynamic-no-pic flag isn't dangerous to disable as far as I can tell, but you can keep it in, it doesn't make much of a noticeable difference anyhow).
- If an OpenGL mode is selected, the screen/window turns a blank white, or sometimes black with a white bar at the top (this is bewildering because nothing tells the program this is happening and that it's wrong, and if you press a key... well ho ho ho may all your christmases be white). Hell if I can figure out what's wrong, all sorts of other SDL+OpenGL stuff works.
- Blargg's amazing NTSC filter still crashes and burns spectacularly. And cleanly (because it's OS X, of course). I'm not so worried about this one. It'll probably be fixed on its own eventually. Even though it's still the awesomest filter, like, ever.

Annoyances and concerns:
- Settings are stored in "~/.zsnes" like a good Unix-like app. Apple's Wise Words of Wiseness™ would like it to be "~/Library/Application Support/ZSNES", s'il vous plait. (This is better for end users to whom "Terminal" and "UNIX" are roughly synonymous with "JUYED AWK YACC" and "XYZZY", since the Finder hides .folders).
- If you change resolutions and filters and such in the video options, you can get some weird colors, I guarantee it. No biggie. Blame it on SDL and be blissful!
- libpng detection in the configure script doesn't work. It seems to work just fine if I rewrite it using pkg-config, though distribution would be a hassle.
- It uses 50% cpu. That is, one whole core of my dual-core-ness. It turns my fan on. I don't care, because I'm plugged into the wall 90% of the time. I don't know why this is, though. Just for nitpickiness, though, the Core Duo is related to the Pentium M in relatedness, but it's a Prescott as far as GCC 4 is concerned.
- OS X notebooks with 2D scrolling trackpads are invariably biased towards down (a common problem with many ported Unixy apps, since they don't generally account for horizontal scrolling for the most part).
- 8-point interpolated sound is messed. I don't use it, though. Meh.
- Any shift away from a cross-platform audio solution like SDL's will break audio on OS X (which works rather well from what I've been told, but I only have one Mac, and I do notice some crackly bits every once in a while). This means there will either need to be accommodations for seperate sound engines, or a rewrite in a cross-platform one.
- Forum intro says you shouldn't ask for a Mac port. Well, you still shouldn't, but the reasoning has changed :)
- No 128x128 logo. Boldt of the Emuscene.com forums provided some that are pretty consistent in look with other Mac emulator ports, which I will use for unofficial releases, but they aren't suitable for official releases (and using a stretched 64x64 logo is a crime! Yarr!).
- No file association (more importantly meaning no draggin' n' droppin' of ROMs). "We are Working on That"™.
- I craft the .app "bundle" by hand. Whee. No easy way around that unless you want lots of "crap" floating around in "places".
Only a couple screws loose.
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

BRPXQZME wrote:- If an OpenGL mode is selected, the screen/window turns a blank white, or sometimes black with a white bar at the top (this is bewildering because nothing tells the program this is happening and that it's wrong, and if you press a key... well ho ho ho may all your christmases be white). Hell if I can figure out what's wrong, all sorts of other SDL+OpenGL stuff works.
What video card are you using again?
Annoyances and concerns:
- Settings are stored in "~/.zsnes" like a good Unix-like app. Apple's Wise Words of Wiseness™ would like it to be "~/Library/Application Support/ZSNES", s'il vous plait. (This is better for end users to whom "Terminal" and "UNIX" are roughly synonymous with "JUYED AWK YACC" and "XYZZY", since the Finder hides .folders).
Port consistancy would be nice...
- Blargg's amazing NTSC filter still crashes and burns spectacularly. And cleanly (because it's OS X, of course). I'm not so worried about this one. It'll probably be fixed on its own eventually. Even though it's still the awesomest filter, like, ever.
I get the feeling the optimization issue that plagued the file browser is happening here as well.
- If you change resolutions and filters and such in the video options, you can get some weird colors, I guarantee it. No biggie. Blame it on SDL and be blissful!
I get the feeling it is very much Apple related (tm). Most of the filters use ASM... so the chances of it freaking out is pretty high.
- libpng detection in the configure script doesn't work. It seems to work just fine if I rewrite it using pkg-config, though distribution would be a hassle.
I don't speak with any knowledge of this, but something really doesn't want to play nice is silly.
- It uses 50% cpu. That is, one whole core of my dual-core-ness. It turns my fan on. I don't care, because I'm plugged into the wall 90% of the time. I don't know why this is, though. Just for nitpickiness, though, the Core Duo is related to the Pentium M in relatedness, but it's a Prescott as far as GCC 4 is concerned.
Well, it's better than 100% in 1.42. You should be slightly happier anyways. I wondered if the issue has changed over time though.
- 8-point interpolated sound is messed. I don't use it, though. Meh.
I think it is a borked compiler optimization on the Mac.. but that's just my opinion...
- Any shift away from a cross-platform audio solution like SDL's will break audio on OS X (which works rather well from what I've been told, but I only have one Mac, and I do notice some crackly bits every once in a while). This means there will either need to be accommodations for seperate sound engines, or a rewrite in a cross-platform one.
It's either OSS or ALSA for SDL/Linux users... but I'm not keen on what Macs use at all.
- No 128x128 logo. Boldt of the Emuscene.com forums provided some that are pretty consistent in look with other Mac emulator ports, which I will use for unofficial releases, but they aren't suitable for official releases (and using a stretched 64x64 logo is a crime! Yarr!).
Perhaps it could be added..
- No file association (more importantly meaning no draggin' n' droppin' of ROMs). "We are Working on That"™.
I personally don't think that will change, but you should be able to do that with the OS anyways yes?
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
BRPXQZME
Hazed
Posts: 54
Joined: Tue May 30, 2006 3:47 am
Location: Centreville, VA
Contact:

Post by BRPXQZME »

Deathlike2 wrote:What video card are you using again?
Intel GMA 950. The only other things Intel Macs currently use are the ATI Mobility Radeon X1600, the nVidia GeForce 7300 GT 256 MB, the nVidia Quadro FX 4500, and the ATI X1900 XT. One of those last few apparently actually does switch to OpenGL mode with funky colors... but I haven't seen it with my own eyes.
Port consistancy would be nice...
Mmm, this is all it takes:

Code: Select all

--- zpath.c     (revision 4181)
+++ zpath.c     (working copy)
@@ -66,7 +66,11 @@
 void cfgpath_ensure(const char *launch_command)
 {
   struct passwd *userinfo;
+#ifndef __MACOSX__
   const char *const zpath = ".zsnes";
+#else
+  const char *const zpath = "Library/Application Support/ZSNES";
+#endif
 
   if ((userinfo = getpwuid(getuid())))
   {
(it works, I checked)
- Blargg's amazing NTSC filter still crashes and burns spectacularly. And cleanly (because it's OS X, of course). I'm not so worried about this one. It'll probably be fixed on its own eventually. Even though it's still the awesomest filter, like, ever.
I get the feeling the optimization issue that plagued the file browser is happening here as well.
So do I, but this wasn't fixed even though the file browser was. It seems similar, but they throw very different errors, even though more or less the same circumstances surround it: somewhere, some pointer isn't being passed correctly.
- If you change resolutions and filters and such in the video options, you can get some weird colors, I guarantee it. No biggie. Blame it on SDL and be blissful!
I get the feeling it is very much Apple related (tm). Most of the filters use ASM... so the chances of it freaking out is pretty high.
I'd blame SDL for not working around it, but that's just me. I like to blame things that are more likely to change, you see... Either way, I don't think anything's freaking out on the ZSNES side of things, or you might see more... evil problems.
- libpng detection in the configure script doesn't work. It seems to work just fine if I rewrite it using pkg-config, though distribution would be a hassle.
I don't speak with any knowledge of this, but something really doesn't want to play nice is silly.
Well, I'm not about to drive 480 miles back to school to check my Linux box, but I don't quite recall it having an AM_PATH_LIBPNG macro either. Bigger problem more like, libpng doesn't come with OS X, you'd have to include it in the bundle and get it to link correctly. Ultimate recommendation: just leave PNG support to those audacious enough to compile it on their own machines
Well, it's better than 100% in 1.42. You should be slightly happier anyways. I wondered if the issue has changed over time though.
Err, my "50%" IS your "100%", if you catch my drift. That's just how Apple wants it reported with multiple cores. 100% would mean both cores, are being hogged, and that... would be weird.
- 8-point interpolated sound is messed. I don't use it, though. Meh.
I think it is a borked compiler optimization on the Mac.. but that's just my opinion...
I never tested to see if it worked on my Linux box, anyway.
- Any shift away from a cross-platform audio solution like SDL's will break audio on OS X (which works rather well from what I've been told, but I only have one Mac, and I do notice some crackly bits every once in a while). This means there will either need to be accommodations for seperate sound engines, or a rewrite in a cross-platform one.
It's either OSS or ALSA for SDL/Linux users... but I'm not keen on what Macs use at all.
It's called "CoreAudio", and it's different from both OSS and ALSA (yay! just like every single other internal part of OS X where they wanted to "think different"). Though I do believe that ALSA would be a welcome change for Linux users, and a not-so-welcome change for most *BSD, MingW, and OS X users (guess what the L in ALSA stands for!). ...does anyone even bother trying ZSNES on Solaris/x86? (answer: I hope to God not)
- No file association (more importantly meaning no draggin' n' droppin' of ROMs). "We are Working on That"™.
I personally don't think that will change, but you should be able to do that with the OS anyways yes?
That's the gist of the idea. It's rather simple, if what I'm gathering is correct, but that remains to be seen until someone does it, and I'm trying. I mean, all it really should be doing (in essence) is "PASS FILENAME TO PROGRAM" and that's quite well supported last time I checked. Oh, and OS X does it smarter than pretty much anything else to date: individual files of the same type can be associated to different programs (this is a holdover from older Mac OS functionality, so they way this is accomplished is rather silly, though).
Only a couple screws loose.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

BRPXQZME wrote:Mmm, this is all it takes:

Code: Select all

--- zpath.c     (revision 4181)
+++ zpath.c     (working copy)
@@ -66,7 +66,11 @@
 void cfgpath_ensure(const char *launch_command)
 {
   struct passwd *userinfo;
+#ifndef __MACOSX__
   const char *const zpath = ".zsnes";
+#else
+  const char *const zpath = "Library/Application Support/ZSNES";
+#endif
 
   if ((userinfo = getpwuid(getuid())))
   {
(it works, I checked)
Yes, I wrote that exact patch after you mentioned the direction for Mac OS X, and I don't even have to test it to know it works.

What I worry though is should I commit it or not. Do we want consistency or Mac OS Xness. It may mean changes to the docs...
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Nach wrote:
BRPXQZME wrote:Mmm, this is all it takes:

Code: Select all

--- zpath.c     (revision 4181)
+++ zpath.c     (working copy)
@@ -66,7 +66,11 @@
 void cfgpath_ensure(const char *launch_command)
 {
   struct passwd *userinfo;
+#ifndef __MACOSX__
   const char *const zpath = ".zsnes";
+#else
+  const char *const zpath = "Library/Application Support/ZSNES";
+#endif
 
   if ((userinfo = getpwuid(getuid())))
   {
(it works, I checked)
Yes, I wrote that exact patch after you mentioned the direction for Mac OS X, and I don't even have to test it to know it works.

What I worry though is should I commit it or not. Do we want consistency or Mac OS Xness. It may mean changes to the docs...
As long as it doesn't screw with anything else? Sure. I don't have any issues (as long as the Windows port never uses the fucked up personal folder naming systems that is in use for 2k/XP).
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

Okay BRPXQZME, tell me how it's going now.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
BRPXQZME
Hazed
Posts: 54
Joined: Tue May 30, 2006 3:47 am
Location: Centreville, VA
Contact:

Post by BRPXQZME »

The ZCONF in configure.in doesn't work. Test sneezes because of the space. You can alleviate this by putting quotes around "x$ZCONF" but then all the automake macros sneeze because of the space.

Also, I accidentally chucked my changes to use pkg-config for libpng. Oops.
Only a couple screws loose.
bobablob
New Member
Posts: 8
Joined: Tue Jan 02, 2007 11:49 pm

Post by bobablob »

I just wanted to add my thanks to this thread. I hope to see ZSnes 1.5 available for OS X at some point in the near future.

Even if it comes in the not so near future, thank you all for the hard work.
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

bobablob wrote:I just wanted to add my thanks to this thread. I hope to see ZSnes 1.5 available for OS X at some point in the near future.

Even if it comes in the not so near future, thank you all for the hard work.
It is available for OS X... just for the Intel Macs though. You will have to compile like everyone that uses the SDL port (we won't be making binaries for OSX though).
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
bobablob
New Member
Posts: 8
Joined: Tue Jan 02, 2007 11:49 pm

Post by bobablob »

I know, I've been using 1.42 since Hector's original posting!

Think the best bet for Mac affecianados is to learn to compile on our owns or hope for someone to link an unofficial build here?

Thanks again!
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

bobablob wrote:I know, I've been using 1.42 since Hector's original posting!

Think the best bet for Mac affecianados is to learn to compile on our owns or hope for someone to link an unofficial build here?

Thanks again!
Refer to this post for what you need to compile: http://board.zsnes.com/phpBB2/viewtopic.php?t=7371
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

BRPXQZME:

Does the NTSC filter version 2 work for you now?
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
pagefault
ZSNES Developer
ZSNES Developer
Posts: 812
Joined: Tue Aug 17, 2004 5:24 am
Location: In your garden

Post by pagefault »

Send me a mac mini.
Locked