Dingoonity.org

GCW Zero => Releases => Topic started by: Nebuleon on January 01, 2014, 12:27:28 am

Title: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on January 01, 2014, 12:27:28 am
Per the title. PocketSNES was previously released by pcercuei after a longer port lineage and used the Snes9x 1.39 core, resulting in not-so-great special chip support.

This new version has a revamped GUI and a forward-ported Snes9x 1.43-dev core with S-DD1 support written by Brad Jorsch, Andreas Naive and John Weidman and first ported by SiENcE to snes9x4d.

What this means for you

- The menu looks like this: (thanks to hi-ban for everything!)
(https://dl.dropboxusercontent.com/u/106475413/gcw-zero/pocketsnes-hiban-menu.png)

- SRAM (save data) saves every time you properly exit PocketSNES or change ROMs, no questions asked. A setting now exists to let you save SRAM 1 second after it is modified on top of all that. The default for this new option, "Save SRAM when changed", is ON.

- You can now play the following games: (and possibly more I did not test)
* Mega Man X2 and X3 (Cx4 chip) boot and play at 60 FPS
* Seiken Densetsu 3 boots
* Star Fox 2 boots (according to Orion4874 in #28 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg91633/#msg91633))
* Star Ocean and Street Fighter Alpha 2 don't look like someone threw white noise onto the screen for every frame

- The following games are now improved:
* Secret of Mana, menu text is now readable
* Rudora no Hihou, menu text is now readable
* Dark Law: Meaning of Death, now looks better (according to MightyJAK in #18 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg91509/#msg91509))
* F1 ROC II: Race of Champions (SETA010 chip) plays without garbled graphics at 60 FPS
* Star Fox, safe for playing by those with photosensitive epilepsy
* Ys V has reduced graphical artifacts (according to Gunsmithx on NeoGAF (http://www.neogaf.com/forum/showpost.php?p=95757127&postcount=1390))
* Super Mario World 2: Yoshi's Island (SuperFX chip), faster with triple-buffering (use at least the 2014-05-05 firmware)
* Super Mario RPG: Legend of the Seven Stars (SA-1 chip), faster with triple-buffering (use at least the 2014-05-05 firmware)
* Kirby Super Star (SA-1 chip), faster with triple-buffering (use at least the 2014-05-05 firmware)
* Kirby's Dreamland 3 (SA-1 chip), faster with triple-buffering (use at least the 2014-05-05 firmware) and does not need to be selected twice to run
* New: Sound effects in all games are now properly synchronised (unless Prefer fluid... is set to Video). Super Probotector and Castlevania are OK (according to hi-ban in Emulation/What are the odds... #14 (http://boards.dingoonity.org/gcw-zero-emulation/what-are-the-odds-of-getting-%27perfect%27-snes-sound-emulation/msg110754/#msg110754)). According to me, Super Mario World and A Link to the Past are OK, too.

- There is now an option to control the audio emulation accuracy, which mostly affects short notes in music and sound effects. Delete the file ~/.snes96_snapshots/pocketsnes_options.opt generated by PocketSNES-1.39 from your Zero and you will get the new default the next time you launch PocketSNES: notes longer than 2.9 milliseconds are not nullified anymore. Previously, this was 16 milliseconds. You also have the option to emulate the SNES audio chip at 0.07-millisecond accuracy if you so wish: set the option Prefer fluid... to Audio. This is CPU-intensive and may slow down video in special-chip games.

- There is now a manual, in which you can read about the menu hotkey and all non-trivial options. Choose PocketSNES in gmenu2x, then press Select and use the Show manual option.

Download: http://www.gcw-zero.com/file.php?file=PocketSNES-20140824-1.opk
with a complementary pack of SNES game title screens to put into [your SNES game directory]/previews, prepared by hi-ban: https://mega.co.nz/#!c0FiBATZ!Ivngwi7DY2RgQmpPGyvnDwdaDbkYsxOHCNYI3HIq7-c
Source: https://github.com/Nebuleon/PocketSNES
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: sparkymark79 on January 01, 2014, 01:19:21 am
Many thanks and happy new year :)
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Gab1975 on January 01, 2014, 01:46:53 am
Thanks a lot and happy new year! :)
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: kuwanger on January 01, 2014, 02:18:17 am
I too would like to chime in with a thank you very much and a happy new year.  Just a small note but MMX3 has a noticeable frame drop (30fps) in the underwater Acid Seahorse area, which isn't too surprising given it's a trouble area of emulation.  Also, Star Fox is still the same sort of weird glitchy ghosting that plagued the older PocketSNES. :/  I have no idea why that is.  I assume you knew or guessed these issues, so they're really more of a heads up for other people.

Even with these points, it's really great to see a newer version of PocketSNES which is a big improvement in a lot of areas.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Awakened on January 01, 2014, 02:30:38 am
Nice release, sound and compatibility are much better. About the only reason to keep SNES9x4D around now is for the fullscreen scaler, which is an option I could see coming to this later.

Thanks and happy new year!
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Nebuleon on January 01, 2014, 02:31:40 am
I did test Star Fox, and found that the port must ask the Snes9x core to render all frames, otherwise the core doesn't adjust the chip state at all and may reissue frames from the past. (It's not caused by bad SDL double-buffer flipping.)

A workaround is to set frameskip to 0. Then the game renders all frames perfectly, at the cost of performance, and the music is stretched to fit the new timing.

Mega Man X2 and X3 did not run on the previous build, so the performance cannot be compared to the previous build, of course.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: TimeDevouncer on January 01, 2014, 10:34:38 am
OH MY GOD!!! Awesome! Thank you so much!

I test now.

Happy new year to everybody! ;D

EDIT

Wow! Now Stunt Race FX works! Slow but works :P, Dragon Ball Z Hyper Dimension are full playable with frameskip auto, Yoshi's Island continue with slowdowns, the same for Mario RPG (when open ITEM and SPECIAL tabs in battles with frameskip 0). Secret of mana runs perfect, without text problems and Seiken Densetsu 3 works and looks like it's going very well.

EDIT 2

I found a bug. I was playing MegamanX (the octopus stage continue with the slowdowns with frameskip 0 :(), and i save state in slot 0...ok, but when i save in slot 1...pocketsnes copy the slot 0 to slot 1. I also saw that my save states from the previous version don't work.

Sorry for my bad english :P :-[
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: iames85 on January 01, 2014, 12:50:01 pm
Thanks for this. The new skin looks so much better, and I can also make note that Another World has gone from not working at all to working flawlessly! Thanks for the work put in guys.  :)
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: kuwanger on January 01, 2014, 02:54:37 pm
Quote
Mega Man X2 and X3 did not run on the previous build, so the performance cannot be compared to the previous build, of course.

Sorry, I wasn't meaning to compare against earlier builds.  It's just that I saw a OpenPandora video (http://www.youtube.com/watch?v=JnvDdTmAjt0) demonstrating the slowdown there and wanted to see if the same thing was happening here as well.  I get the impression from Nick Nillo's video, though, that he may have had Frameskip Auto/1 and it's certainly playable like that.  It just seems like a little odd.

And that brings me to my next point.  I decided to ssh in and see just how much CPU usage PocketSNES was using.  Apparently through most stages CPU usage was around 45%-50%.  With the "Prefer fluid... to Audio", the CPU usage went up ~5%.  During the more "heavy" parts of Acid Seahorse (the part with the knee-deep water), CPU usage was ~70%.  The real oddity is that during the underwater area, CPU usage actually went down to ~45%.  So, at least there the bottleneck doesn't appear to be the CPU.

In any case, it's certainly quite playable   And I really do, again, want to reiterate how much I appreciate all your effort.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: TimeDevouncer on January 01, 2014, 03:09:53 pm
I love the new skin :-*
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: MAF84 on January 01, 2014, 06:56:38 pm
Thanks!  I just installed this.

First impression/question- at least for the one game I was playing, this doesn't appear to work with save states from the old version.  It sees those save states, but when I try to load one, it takes me to wherever I was before I tried to load a save state.  I'm not sure if this happens in other games.  The good thing is that it seems to be possible to have both versions of PocketSNES loaded onto the Zero simultaneously, so that a transition can be made over time.  (I assume the SRAM files will still work because those seem to be compatible across all emulators.)

Star Fox actually works; it didn't on the last version.  But it didn't seem truly playable- there were strange speedups and slowdowns.  It's possible that if I played around with the settings I could fix this, so this is a very preliminary impression.

Thanks again!
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: glimmer on January 01, 2014, 07:22:25 pm
This new version has a revamped GUI and a forward-ported Snes9x 1.43-dev core.
It's working perfectly for the few games I've tried so far. One question: cheats? :)

Thanks in advance.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Nebuleon on January 01, 2014, 07:56:03 pm
[...]

First impression/question- at least for the one game I was playing, this doesn't appear to work with save states from the old version.  It sees those save states, but when I try to load one, it takes me to wherever I was before I tried to load a save state.  I'm not sure if this happens in other games.  The good thing is that it seems to be possible to have both versions of PocketSNES loaded onto the Zero simultaneously, so that a transition can be made over time.  (I assume the SRAM files will still work because those seem to be compatible across all emulators.)
SRAM files will still work, yes, and the saved states not loading from a previous version is just because, at a certain point, Snes9x developers stopped caring about backwards compatibility for their saved states after every new version. I just didn't expect it to be gone already for 1.39 in 1.43.

Do states at least load and save properly inside PocketSNES-1.43?
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: TimeDevouncer on January 01, 2014, 08:09:22 pm
Quote
Do states at least load and save properly inside PocketSNES-1.43?

Nope :-[, i have this problem:

and i save state in slot 0...ok, but when i save in slot 1...pocketsnes copy the slot 0 to slot 1.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Nebuleon on January 01, 2014, 08:42:18 pm
Quote
Do states at least load and save properly inside PocketSNES-1.43?

Nope :-[, i have this problem:

and i save state in slot 0...ok, but when i save in slot 1...pocketsnes copy the slot 0 to slot 1.
hi-ban also pointed me to this problem, but I changed nothing in the menu's saved state behaviour at all in this build. Can you test whether this exact problem also exists in pcercuei's build from August (which I call PocketSNES-1.39 here because that's what its Snes9x core was)?

To ensure a fair test, please delete NAME.sv0 and NAME.sv1 from your game in ~/.snes96_snapshots, because Snes9x 1.39 cannot read 1.43 saved states.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: TimeDevouncer on January 01, 2014, 08:57:53 pm
Quote
Do states at least load and save properly inside PocketSNES-1.43?

Nope :-[, i have this problem:

and i save state in slot 0...ok, but when i save in slot 1...pocketsnes copy the slot 0 to slot 1.
hi-ban also pointed me to this problem, but I changed nothing in the menu's saved state behaviour at all in this build. Can you test whether this exact problem also exists in pcercuei's build from August (which I call PocketSNES-1.39 here because that's what its Snes9x core was)?

To ensure a fair test, please delete NAME.sv0 and NAME.sv1 from your game in ~/.snes96_snapshots, because Snes9x 1.39 cannot read 1.43 saved states.

No, the pcercuei's build don't have this problem, works fine.

And...i don't have any NAME.sv0 or NAME.sv1 in snes96_snapshots ???

Look, this is the problem (in images xD)

I select a game:
(https://imagizer.imageshack.us/v2/320x240q90/15/tvld.png)
In logo screen, save in slot 0:
(https://imagizer.imageshack.us/v2/320x240q90/41/owdv.png)
(https://imagizer.imageshack.us/v2/320x240q90/59/hud8.png)
(https://imagizer.imageshack.us/v2/320x240q90/577/q6tb.png)

Ok, works...but in the New game menu I try to save in slot 1 and...

(https://imagizer.imageshack.us/v2/320x240q90/703/xkj0.png)
(https://imagizer.imageshack.us/v2/320x240q90/706/0jcj.png)
(https://imagizer.imageshack.us/v2/320x240q90/594/8e5w.png)

Zasca, the logo screen of slot 0, and if i load state 1, the game crashes.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Nebuleon on January 01, 2014, 09:04:48 pm
And...i don't have any NAME.sv0 or NAME.sv1 in snes96_snapshots ???
NAME is the Name of your Game. I don't know which you tested with. I couldn't have filled it in telepathically.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: TimeDevouncer on January 01, 2014, 09:07:25 pm
Ok sorry xD, my english is very bad and It's too difficult for me to express and understand it all well.

But well, as you can see in the pictures above, the error happens with games I have not played :(
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: MightyJAK on January 01, 2014, 11:12:48 pm
Wow, the text in Dark Law: Meaning of Death is much more legible now (about on par with how it looks on the Letcool). Still have to guess at some words, but this is still a big improvement, thanks!
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Nebuleon on January 02, 2014, 01:58:51 am
I've fixed the saved state trouble, but am not about to reimplement the L+R+Left and L+R+Right in-memory saved states, because the Snes9x core doesn't accept redirecting saved states to memory anymore.

For the saved state menu, I chose to save a state at /tmp/.svt so the emulator can back out if you don't choose a saved state to load. Creating a preview for the UI requires loading the state, emulating one frame and backing out to the state before entering the menu -- unfortunately I couldn't redirect that to memory anymore, so the state was not saved, so I couldn't back out and the previewed state stayed loaded. That's why you appeared to save copies of the same state over and over.

Some more fixups are required. I'll then make another release and update the OP.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: RupeeClock on January 02, 2014, 09:01:09 am
Oh sweet, a new PocketSNES release! I have got to test this ASAP. :)
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: TimeDevouncer on January 02, 2014, 09:53:14 am
I've fixed the saved state trouble, but am not about to reimplement the L+R+Left and L+R+Right in-memory saved states, because the Snes9x core doesn't accept redirecting saved states to memory anymore.

For the saved state menu, I chose to save a state at /tmp/.svt so the emulator can back out if you don't choose a saved state to load. Creating a preview for the UI requires loading the state, emulating one frame and backing out to the state before entering the menu -- unfortunately I couldn't redirect that to memory anymore, so the state was not saved, so I couldn't back out and the previewed state stayed loaded. That's why you appeared to save copies of the same state over and over.

Some more fixups are required. I'll then make another release and update the OP.

Thank you so much for your work ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: caiolreboucas on January 02, 2014, 09:55:29 pm
Nebuleon, thanks for your hard work.

You already gave us a GBA and SNES emulator!

What's next? A PSX emulator?  ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Scoobysnaxx on January 03, 2014, 02:25:04 am
What's next? A PSX emulator?  ;D

I hope developers don't waste any time on that one. Not when so many other systems have a much better chance of performing well. I know an official TurboGrafx-16 / PC Engine emulator would be well received.

At the end of the day though I am sure anything Nebuleon works on would be well received  ;D. The community is certainly lucky to have this many talented people given the relatively small number of units sold.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Seph817 on January 03, 2014, 04:35:16 am
PSX would definitely not be a waste of time. Especially if any of the developers here are working on it. It's already running a few games decently on a very unoptimized build of psx4all. It definitely has the power for it.

As for TurboGrafx, I know it's not a final release but, I've had Temper on my Zero for a while and it plays very well. It plays TG-CD games, too.
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Nebuleon on January 03, 2014, 04:36:42 am
Please do not derail this release thread. For PSX/PS1 discussion, please see /GCW Zero/Emulation/Ps1 emulation,current state? (Sorry if its been said to death) (http://boards.dingoonity.org/gcw-zero-emulation/ps1-emulation-current-state-(sorry-if-its-been-said-to-death)/).
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: Seph817 on January 03, 2014, 04:41:33 am
Sorry. Thanks for your work on SNES! I always liked the Mega Man X games, so 2 and 3 working on here is awesome!
Title: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 03, 2014, 05:56:40 am
I took the time to fix some bugs and add some requested features, and add new things created by hi-ban and JohnnyonFlame. This results in the 2014-01-03 build.

Download and test: https://dl.dropboxusercontent.com/u/106475413/gcw-zero/PocketSNES-20140103-1.opk
as well as a pack of SNES game title screens to put into ~/.snes96_snapshots/previews, prepared by hi-ban: https://mega.co.nz/#!c0FiBATZ!Ivngwi7DY2RgQmpPGyvnDwdaDbkYsxOHCNYI3HIq7-c

Features and fixes:
- The full-screen scaler from snes9x4d has been added, and the full-screen user preference has been re-enabled. (d_smagin)
- The audio sampling rate option now accepts 32000 Hz, which is the rate used by the SNES itself for output. (Nebuleon)
- The saved state menu now writes a saved state to /tmp/ so it can back out of temporarily loading another state to preview it. This fixes writing the same saved state multiple times, as well as loading #0 with audio disabled when attempting to load any other state. (Nebuleon)
- Star Fox can now be played by those with photosensitive epilepsy. (gcc team)
- Saved states created for Yoshi's Cookie/US and possibly some European and Japanese titles do not freeze the emulator anymore when previewed. (Nebuleon)
- When playing Yoshi's Cookie/US and possibly some European and Japanese titles, the top 7 pixels of the screen no longer flicker between black and a part of the previous frame at 60 Hz. (Nebuleon)

Graphical changes:
(https://dl.dropboxusercontent.com/u/106475413/gcw-zero/pocketsnes-hiban-menu.png)
- The PocketSNES icon is now inspired by the Super Famicom, which fits with the icon set started by ReGBA and Gambatte. (hi-ban)
- The background of the menu is now inspired by SNES box art, instead of looking like output from the Virtual Boy. (hi-ban)
- The settings of the Main Menu now have right-aligned values which fit in with the SNES box art theme. (Nebuleon)
- The selection bar is now a blending gradient from red to transparent. (JohnnyonFlame)
- The ROM selection interface can now display a background based on the game under the selection bar. The background must be a PNG file in ~/.snes96_snapshots/previews and be 24bpp, 282x186. (hi-ban, Nebuleon)
- The screenshots shown in the saved state menu are now larger, fitting in 205x154 instead of 160x120. (Nebuleon)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Orion4874 on January 03, 2014, 06:41:47 am
Awsome work Nebuleon! The full screen option puts this emu over the top imo.

BTW, Star Fox 2 actually plays pretty decently on this emu while it didn't load at all on the previous version of PocketSNES and was heavily glitched on Snes9x4d.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: RupeeClock on January 03, 2014, 12:28:04 pm
Awesome stuff, digging the new GUI design and all the updates.
Will update as soon as I get the chance, I was going to report the issues I was having with save states but it looks like it has been resolved already.
The new release being based on Snes9x 1.43-dev has definitely improved things, the current build now passes the hardware test on the Snes Test Program.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: sparkymark79 on January 03, 2014, 01:44:02 pm
Does anybody know of an easy way to get all the preview files to match my ROM names, perhaps by renaming to the closest match. A windows app maybe? Thanks

thought about this more. So I need a regular expression to match all characters (or a high percentage) from a folder of .png files to a folder full of .zip files. When a match is found, then the .zip should be renamed to the .png name

Easy! haha if I knew anything about writing scripts, etc! Something like this could be used http://regexrenamer.sourceforge.net/

Anybody?? :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: hi-ban on January 03, 2014, 02:42:53 pm
There are 2 "main" sets of roms out there.

- The "GoodSNES" romsets, with the names being in the format "Romname (E) [!]". It includes all versions of roms, including hacks, bad dumps, bootleg versions, etc... This makes a total of more than 11000 SNES roms, but most of them are clones and hacks (in other words, mostly rubbish).

- The "No-Intro" romsets, with names being in the format "Romname (Europe)". Most (if not all) preview packs out there, used by emulators with the Hyperspin frontend use the naming from this romsets, as those sets don't include rom hacks or bootlegs, only good dumps. Hence, this naming convention is also called "Hyperspin". This makes a total of about 3500 SNES roms, being most of them "official" roms.

There seems to be tools for renaming roms from GoodSNES sets into the No-Intro naming system, the people from the No-Intro project seems to have the renaming tools available here: http://no-intro.org/

However i don't know if there is any way of doing the opposite. So my recommendation is to convert your GoodSNES romset into a No-Intro romset, or download a No-Intro romset from the internet.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: sparkymark79 on January 03, 2014, 03:07:18 pm
Taking your last piece of advice :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: hi-ban on January 03, 2014, 03:55:51 pm
here is an updated PNG preview pack.

I fixed some typos in some files, and added a couple of previews.

Download here: https://mega.co.nz/#!hocEWDJS!DimgnD_5ulKpQy2hNWeqZ0hjpDh09iRJ6yIRnwHVHTw
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Scoobysnaxx on January 03, 2014, 04:53:18 pm
Thank you Nebuleon, hi-ban and JohnnyonFlame! Your work is very much appreciated.  ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: johnnyonflame on January 03, 2014, 05:27:56 pm
Thank you Nebuleon, hi-ban and JohnnyonFlame! Your work is very much appreciated.  ;D

Nebuleon and the Snes9x 1.43 core developers are the ones to be thankful for, I only coded this piece of UI:
(http://i.imgur.com/IGkwybJ.png)

Hi-ban actually did the design, while Nebuleon adapted the UI to follow suit. I only chimed in with a single gradient algorithm.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: patrick81 on January 03, 2014, 06:13:26 pm
I updated this but it cannot read my load states anymore.   :o  Am i missing something?  Did it move to somewhere? 
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Awakened on January 03, 2014, 08:29:42 pm
Really awesome update, I'll be much more likely to play SNES stuff on the Zero thanks to this  :)

Being nitpicky here, but would it be possible to bring over the bilinear scaler from ReGBA? It should look more "even" compared to the one from SNES9x4D (lifebars from Mega Man games seem to be an easy way to compare):

(http://abload.de/img/screenshot002hvkbq.png)

(http://abload.de/img/screenshot003j4k9b.png)

I can understand if there's not enough CPU power left over for that type of scaling in this case (until the IPU driver is done anyways).
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Surkow on January 03, 2014, 09:02:43 pm
Scaling will be free the moment the IPU is supported. So it's probably not a very pressing issue.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 03, 2014, 10:42:17 pm
I updated this but it cannot read my load states anymore.   :o  Am i missing something?  Did it move to somewhere?
As the saved state format is very much tied to the core, later versions of Snes9x -- the core PocketSNES uses --, lose saved state backwards compatibility with every new version.

In the meanwhile, please hold on to your PocketSNES-1.39 build from August, load one saved state from 1.39 and let it save SRAM. 1.43 will then be able to load SRAM along with your game and you can save a new state with it.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: iames85 on January 03, 2014, 10:51:04 pm
This is fantastic guys. Thanks you so much for all your hard work. Its so great to have these games playable again after so many years.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 03, 2014, 11:14:15 pm
Really awesome update, I'll be much more likely to play SNES stuff on the Zero thanks to this  :)

Being nitpicky here, but would it be possible to bring over the bilinear scaler from ReGBA? It should look more "even" compared to the one from SNES9x4D (lifebars from Mega Man games seem to be an easy way to compare):

(http://abload.de/img/screenshot002hvkbq.png)

(http://abload.de/img/screenshot003j4k9b.png)

I can understand if there's not enough CPU power left over for that type of scaling in this case (until the IPU driver is done anyways).
ReGBA can scale evenly, but PocketSNES cannot.

GBA: 320x213.33333 <-- 240x160, so the bilinear interpolants (http://en.wikipedia.org/wiki/Bilinear_interpolation#Nonlinear) are 0.75x, 0.75y (*3/4 in integer math)
SNES: 320x240 <-- 256x224, so the bilinear interpolants are 0.8x, 0.9333333y (*4/5 and *14/15 in integer math)

Because integer divisions by powers of 2 are much faster than integer divisions by arbitrary integers -- 1 cycle instead of up to 31, according to the MIPS XBurst manual --, one cannot scale in real-time using the software bilinear scaler from ReGBA if the linear interpolants cannot be represented as fractions with a power-of-2 denominator.

Currently the scaling is done by a Bresenham half-pixel algorithm vertically and quarter-pixel horizontally. It can run in 63 cycles per group of 8 output pixels, or 604800 cycles per frame (3.62% CPU time).

A software bilinear scaler would have to spend time doing a division by 15 and a division by 5 per color component per input pixel, and it would have to look at the 4 neighbors of all output pixels amongst the input image, so it would run in 744 cycles per single output pixel, or 57139200 cycles per frame (342% CPU time). As happened in ReGBA before I noticed the interpolants were optimisable, the frameskipper decision algorithm would decide that it can only render 1 frame every 3 or 4, so every game starts at 20 or 15 FPS.

tl;dr: I'll wait for the IPU.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Awakened on January 04, 2014, 12:00:46 am
ReGBA can scale evenly, but PocketSNES cannot.

GBA: 320x213.33333 <-- 240x160, so the bilinear interpolants (http://en.wikipedia.org/wiki/Bilinear_interpolation#Nonlinear) are 0.75x, 0.75y (*3/4 in integer math)
SNES: 320x240 <-- 256x224, so the bilinear interpolants are 0.8x, 0.9333333y (*4/5 and *14/15 in integer math)

Because integer divisions by powers of 2 are much faster than integer divisions by arbitrary integers -- 1 cycle instead of up to 31, according to the MIPS XBurst manual --, one cannot scale in real-time using the software bilinear scaler from ReGBA if the linear interpolants cannot be represented as fractions with a power-of-2 denominator.

Currently the scaling is done by a Bresenham half-pixel algorithm vertically and quarter-pixel horizontally. It can run in 63 cycles per group of 8 output pixels, or 604800 cycles per frame (3.62% CPU time).

A software bilinear scaler would have to spend time doing a division by 15 and a division by 5 per color component per input pixel, and it would have to look at the 4 neighbors of all output pixels amongst the input image, so it would run in 744 cycles per single output pixel, or 57139200 cycles per frame (342% CPU time). As happened in ReGBA before I noticed the interpolants were optimisable, the frameskipper decision algorithm would decide that it can only render 1 frame every 3 or 4, so every game starts at 20 or 15 FPS.

tl;dr: I'll wait for the IPU.
Gotcha. I'm glad to have the current scaler until that is available.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: gustavolatil on January 04, 2014, 03:46:10 am
act raiser intro sounds weird :/
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 04, 2014, 06:10:22 am
act raiser intro sounds weird :/
Yes, it does. Feel free to find the code that fixes this in Snes9x 1.5x and backport it without the performance spiralling out of control. :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: kuwanger on January 04, 2014, 11:15:03 am
Despite Nebuleon's rather discouraging words, I took a crack at bilinear interpolantion.  Well, I think it's that, anyways.  The results are slightly better than the current version for MMX[123], although there's definitely a noticeably performance hit.  The former makes me think my math is wrong.  And that latter, I'm not sure if optimizing well ever be enough to really make a difference.

In any case, here it is.  I've included just the executable and the one file I changed in the source (menu/scaler.cpp), so it's really for those willing to fiddle with creating a link in GMenu2x and accepting this is really just a test case.  In any case, enjoy. :)

PocketSNES with a (hopefully) bilinear upscale, although still way too slow for actual use (http://kuwanger.net/pocketsnes_bilinear.7z)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: patrick81 on January 04, 2014, 12:33:53 pm
Thanks Nebuleon!!  I didn't realize it won't load old SRAM yet.  I already deleted PocketSNES-1.39 and I'm not sure where I can find that.   ???   The new update looks really good!!   ;)

I updated this but it cannot read my load states anymore.   :o  Am i missing something?  Did it move to somewhere?
As the saved state format is very much tied to the core, later versions of Snes9x -- the core PocketSNES uses --, lose saved state backwards compatibility with every new version.

In the meanwhile, please hold on to your PocketSNES-1.39 build from August, load one saved state from 1.39 and let it save SRAM. 1.43 will then be able to load SRAM along with your game and you can save a new state with it.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Surkow on January 04, 2014, 01:09:39 pm
Thanks Nebuleon!!  I didn't realize it won't load old SRAM yet.  I already deleted PocketSNES-1.39 and I'm not sure where I can find that.   ???   The new update looks really good!!   ;)

I updated this but it cannot read my load states anymore.   :o  Am i missing something?  Did it move to somewhere?
As the saved state format is very much tied to the core, later versions of Snes9x -- the core PocketSNES uses --, lose saved state backwards compatibility with every new version.

In the meanwhile, please hold on to your PocketSNES-1.39 build from August, load one saved state from 1.39 and let it save SRAM. 1.43 will then be able to load SRAM along with your game and you can save a new state with it.
It can be found on the downloads (http://www.gcw-zero.com/downloads) page.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: patrick81 on January 04, 2014, 01:18:24 pm
Thanks!!   ;D  Ahh it's so nice to know my old save states are working again.  whew!   8)

Thanks Nebuleon!!  I didn't realize it won't load old SRAM yet.  I already deleted PocketSNES-1.39 and I'm not sure where I can find that.   ???   The new update looks really good!!   ;)

I updated this but it cannot read my load states anymore.   :o  Am i missing something?  Did it move to somewhere?
As the saved state format is very much tied to the core, later versions of Snes9x -- the core PocketSNES uses --, lose saved state backwards compatibility with every new version.

In the meanwhile, please hold on to your PocketSNES-1.39 build from August, load one saved state from 1.39 and let it save SRAM. 1.43 will then be able to load SRAM along with your game and you can save a new state with it.
It can be found on the downloads (http://www.gcw-zero.com/downloads) page.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: patrick81 on January 04, 2014, 03:35:00 pm
@Nebuleon

Is it possible to add Favorite List?  This way we can go back and forth between 2 or more favorite games instead of having to search for them.  It's a pain to search one game I want to play more often.  Is it possible to add some kind of short cuts (saved paths) to favorite list.  Also it would be nice to see that in GBA emulator as well.   
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: PureWicked.AU on January 04, 2014, 09:50:37 pm
Hi, silly question, I tried to re-organize my SD card and formatted it, as well as renamed it and the SNES rom folder too, is there a way to reset the default rom folder I selected earlier? as I now can't get to my new one
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 04, 2014, 10:39:10 pm
Thanks Nebuleon!!  I didn't realize it won't load old SRAM yet.  I already deleted PocketSNES-1.39 and I'm not sure where I can find that.   ???   The new update looks really good!!   ;)
[2 nesting quote levels removed]

SRAM is not old or new. Saved states are. They are very tied to the core version. Load your states in 1.39, and then let the game save itself to SRAM. SRAM will then transfer automatically to 1.43 due to being at the same place on your internal card. The format is obviously the same for the raw data, so it will load "old SRAM".
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 04, 2014, 10:40:51 pm
@Nebuleon

Is it possible to add Favorite List?  This way we can go back and forth between 2 or more favorite games instead of having to search for them.  It's a pain to search one game I want to play more often.  Is it possible to add some kind of short cuts (saved paths) to favorite list.  Also it would be nice to see that in GBA emulator as well.   
I don't implement GUIs so well. This is why I rely on gmenu2x's file browser saving your last directory with ReGBA. It acts as an implicit favo(u)rite list.

This is open-source. You can get someone else to implement things, or implement them yourself if you have the skills.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 04, 2014, 10:41:32 pm
Hi, silly question, I tried to re-organize my SD card and formatted it, as well as renamed it and the SNES rom folder too, is there a way to reset the default rom folder I selected earlier? as I now can't get to my new one
Delete ~/.snes96_snapshots/romdir.opt.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: patrick81 on January 05, 2014, 02:28:30 am
aw okay.  I don't know anyone who can do this but it's not a big deal.  It's just a suggestion.   ;D

Thanks for your fantastic work!! 


@Nebuleon

Is it possible to add Favorite List?  This way we can go back and forth between 2 or more favorite games instead of having to search for them.  It's a pain to search one game I want to play more often.  Is it possible to add some kind of short cuts (saved paths) to favorite list.  Also it would be nice to see that in GBA emulator as well.   
I don't implement GUIs so well. This is why I rely on gmenu2x's file browser saving your last directory with ReGBA. It acts as an implicit favo(u)rite list.

This is open-source. You can get someone else to implement things, or implement them yourself if you have the skills.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: patrick81 on January 05, 2014, 02:38:55 am
I think  i know what you mean.  I never done this before.  I loaded the old saved state on PocketSnes 1.39 and just save it the normal way in the game?  I opened PocketSnes 1.43 and I don't see anything saved in the game (not the saved state).  I see no "continue" in the game.  I must have done something wrong. 

EDIT: never mind!  I got it to work!  It's quite easy to fix!  Thanks for the help!   ;D

Thanks Nebuleon!!  I didn't realize it won't load old SRAM yet.  I already deleted PocketSNES-1.39 and I'm not sure where I can find that.   ???   The new update looks really good!!   ;)
[2 nesting quote levels removed]

SRAM is not old or new. Saved states are. They are very tied to the core version. Load your states in 1.39, and then let the game save itself to SRAM. SRAM will then transfer automatically to 1.43 due to being at the same place on your internal card. The format is obviously the same for the raw data, so it will load "old SRAM".
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 05, 2014, 03:42:43 am
Alright, I just made a little revision. Now the GUI returns to $HOME if your ROM directory cannot be read.

Download: https://dl.dropboxusercontent.com/u/106475413/gcw-zero/PocketSNES-20140105-1.opk
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: Nebuleon on January 05, 2014, 04:09:33 am
Despite Nebuleon's rather discouraging words, I took a crack at bilinear interpolantion.  Well, I think it's that, anyways.  The results are slightly better than the current version for MMX[123], although there's definitely a noticeably performance hit.  The former makes me think my math is wrong.  And that latter, I'm not sure if optimizing well ever be enough to really make a difference. [...]

PocketSNES with a (hopefully) bilinear upscale, although still way too slow for actual use (http://kuwanger.net/pocketsnes_bilinear.7z)
a) There's some very noticeable colour banding in your Mega Man X with bilinear scaling screenshot.

b) This code:
Code: [Select]
red[x] = divide_by_fifteen_table[a >> 11][14] + divide_by_fifteen_table[a>> 11][1];
green[x] = divide_by_fifteen_table[(a >> 5) & 0x3f][14] + divide_by_fifteen_table[(a >> 5) & 0x3f][1];
blue[x] = divide_by_fifteen_table[a & 0x1f][14] + divide_by_fifteen_table[a & 0x1f][1];
I'm not sure why you go through divide_by_fifteen_table for this, because the result is going to be 'a' itself, but clamped to colour values up to RGB565 30,62,30.

c) Rendering the Super Mario World title screen at 30 FPS is rather jarring. With that number of operations, perhaps avoiding colour blending altogether if two neighbouring pixels have the same colour would give some speedup (except in games which have such complex rendering that no two neighbouring pixels are alike).
Code: [Select]
if (a == b) {
  red[x] = a >> 11;
  green[x] = (a >> 5) & 0x3F;
  blue[x] = a & 0x1F;
} else ...

d) Did you try /15 and /5 and see how bad it was before implementing your lookup table?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-03 update]
Post by: PureWicked.AU on January 05, 2014, 05:45:19 am
Alright, I just made a little revision. Now the GUI returns to $HOME if your ROM directory cannot be read.

Download: https://dl.dropboxusercontent.com/u/106475413/gcw-zero/PocketSNES-20140105-1.opk

thank you so much, was going to try and find the file to delete that you mentioned earlier but this is a much safer fix
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: kuwanger on January 05, 2014, 05:33:52 pm
[...]
a) There's some very noticeable colour banding in your Mega Man X with bilinear scaling screenshot.

Yea, that's from rounding error.  I've fixed that.

Quote
b) This code:
Code: [Select]
...I'm not sure why you go through divide_by_fifteen_table for this, because the result is going to be 'a' itself, but clamped to colour values up to RGB565 30,62,30.

Yea, that was a quick hack to avoid yet another color banding effect.

Quote
c) Rendering the Super Mario World title screen at 30 FPS is rather jarring. ...

Sorry.  Like I was saying, it was a just a quick hack to see if I could get you 352% CPU usage figure down to a sub-100% value.

Quote
d) Did you try /15 and /5 and see how bad it was before implementing your lookup table?

Nah.  Like I said, you gave rather discouraging words. :)

Having said that, I've decided to fix the color banding effect and generally avoid 99% of the problems with a massive (okay, really only ~0.044% of the GCW0's memory) lookup tables to avoid most the hassle.  I don't see the 30FPS issue with SMW, but I haven't really looked too much into how much actual CPU usage is being done and such.  Anyways, here it is (same as the old link):

Not quite as much of a hack PocketSNES with bilinear filtering (http://kuwanger.net/pocketsnes_bilinear.7z) (Note this is based on the older source code (and includes the 3 source files I changed), so if you do end up wanting to merge parts of this, you'll have to be careful obviously)

Technically there's a pause at startup to generate said lookup tables, but it's (if I calculated it right) on the order of 1-2 seconds.  Anyways, here's again the older screenshot and the newer bilinear filtering.  I'll later look into the actual CPU usage and play some more games to see just how badly this performs.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: TimeDevouncer on January 05, 2014, 07:21:34 pm
Hi, I'm testing the latest version of the emulator, the new skin are amazing! ;D, and i love the new options, but testing the Mario RPG, I saw that the game is worse than in other versions, even in the first version of emulator.

In the first city, with frameskip AUTO the game has many slowdowns, it's strange because i test the same file in older version of pocketsnes and the game runs better, and the settings are the same.

In contrast, the stunt race fx with frameskip 1 is fully playable with no graphical errors :P, awesome! Even going a bit slow, but it is fully playable.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: hi-ban on January 05, 2014, 07:57:39 pm
Hi, I'm testing the latest version of the emulator, the new skin are amazing! ;D, and i love the new options, but testing the Mario RPG, I saw that the game is worse than in other versions, even in the first version of emulator.

In the first city, with frameskip AUTO the game has many slowdowns, it's strange because i test the same file in older version of pocketsnes and the game runs better, and the settings are the same.

- The following games may have better accuracy, at the expense of emulation speed: (and possibly more I did not test)
* Super Mario World 2: Yoshi's Island (SuperFX chip)
* Super Mario RPG: Legend of the Seven Stars (SA-1 chip)
* Kirby Super Star (SA-1 chip)
* Kirby's Dreamland 3 (still using the workaround described in one of Nick Nillo's videos: start the game, let it play the black screen, and then enter the menu and select it again -- I have no idea why this game does that) (SA-1 chip)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: TimeDevouncer on January 05, 2014, 09:06:55 pm
Hi, I'm testing the latest version of the emulator, the new skin are amazing! ;D, and i love the new options, but testing the Mario RPG, I saw that the game is worse than in other versions, even in the first version of emulator.

In the first city, with frameskip AUTO the game has many slowdowns, it's strange because i test the same file in older version of pocketsnes and the game runs better, and the settings are the same.

- The following games may have better accuracy, at the expense of emulation speed: (and possibly more I did not test)
* Super Mario World 2: Yoshi's Island (SuperFX chip)
* Super Mario RPG: Legend of the Seven Stars (SA-1 chip)
* Kirby Super Star (SA-1 chip)
* Kirby's Dreamland 3 (still using the workaround described in one of Nick Nillo's videos: start the game, let it play the black screen, and then enter the menu and select it again -- I have no idea why this game does that) (SA-1 chip)

Ooooops! My fault, I misunderstood this text :P
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: tintin_uk on January 07, 2014, 10:07:12 am
Forget it. Found the answer to my question.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Norghat on January 07, 2014, 02:50:59 pm
The last version is running Y'S 4 with better sound and less screen flickering but this still happen when you go on the first map on the far east (and other part of the game) making it difficult to play.
Does someone know why and if it can be fixed ? (the other snes9x emulator on gcw have the same bug)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: sparkymark79 on January 07, 2014, 02:57:03 pm
Could we please increase the transparency of the text so that you can see more of the background snapshots when scrolling through. Many Thanks :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 07, 2014, 03:02:29 pm
Still using the Jan 3rd release at the moment but it's handling great, turns out to be an awesome Super Metroid machine, plus hacks.

Can I suggest a couple of options to implement? I can't imagine they're too hard to put in.
They can go alongside the usual options like Frameskip, Full Screen, Transparency, so doing so you can save them as global or per-game settings, ideal for specific hotkey related actions.

Right now the analogue nub is unused, it could be used for a number of things, anyhow here's my ideas.

Quick Savestates: [Off] - [L+R and D-pad Left/Right] - [L+R and nub Left/Right] - [Nub Left/Right]
Quick savestates were removed from the new years update, for some games they're very handy, but the config might conflict with certain games, Super Metroid you hold L and R to aim up for example.

Open Menu: [Select + Start] - [Nub Up] - [Nub Up + Select] - [Nub Up + L+R]
Options to open the emulator menu other ways would be helpful, having to press Select+Start in Super Metroid for example means either selecting a different weapon or opening the pause screen.

Directional Input [D-pad] - [D-pad + Nub] - [Nub]
Maybe for some games just having the option to play with the nub might be nice, it might be good for something like Star Fox or Zelda, though it would mean implementing a new input and also it may conflict with possible hotkey configurations. Just an idea though.

Button remapping would also be a welcome feature. Although the GCW Zero already has the perfect button mapping to mirror the SNES input, for some games being able to remap might be very handy.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: pcercuei on January 07, 2014, 03:40:00 pm
Please don't use the analog stick. Instead, handle mapping joysticks. So that when TV-out arrives we can play with external gamepads.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 07, 2014, 05:40:55 pm
Please don't use the analog stick. Instead, handle mapping joysticks. So that when TV-out arrives we can play with external gamepads.

What if the application supports different modes for when an external gamepad is inserted? I don't think there is an issue with the proposed functionality when assuming native inputs are used.
On second thought, PicoDrive has a very good way of handling this, it has two sets of inputs, one for game controls and one for emulator functions, save states, fast forward etc.
PocketSNES is in need of controller mapping in general for both controls and emulator options, the Caanoo version of PocketSNES had controller remapping so I was a little perplexed when the GCW Zero version seemed to have less options.

I also thought up a couple more functions.

Remember last ROM: [Yes] - [No]
Simply remember the last ROM that was loaded in the rom directory, so you don't have to scroll to it every time.

Lock switch (submenu ala Save States):
Behaviour: [Do nothing] - [Pause Emulation] - [Open Menu]
Ignore Input: [No] - [Yes]
Switch off Display: [No] - [Yes]
I recall that the lock switch functionality was considered but how it should behave wasn't decided, what if it were configurable instead? In addition to the configuration, be it in emulation or in menu an onscreen label such as LOCKED would be handy.

A suspend function could be nice as well, an option that saves the state, and exits the rom or the application entirely. When the rom or application is next loaded it will load and then (optionally) delete the state.
Virtual Console games have this behaviour, and I believe that the DS homebrew GameYob has a suspend feature as well.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Jonosborne on January 07, 2014, 06:51:45 pm
SNES9X4D is still much better, especially with special chip-set games..  I appreciate your work though!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: TimeDevouncer on January 07, 2014, 07:17:41 pm

What if the application supports different modes for when an external gamepad is inserted? I don't think there is an issue with the proposed functionality when assuming native inputs are used.
On second thought, PicoDrive has a very good way of handling this, it has two sets of inputs, one for game controls and one for emulator functions, save states, fast forward etc.
PocketSNES is in need of controller mapping in general for both controls and emulator options, the Caanoo version of PocketSNES had controller remapping so I was a little perplexed when the GCW Zero version seemed to have less options.

I also thought up a couple more functions.

Remember last ROM: [Yes] - [No]
Simply remember the last ROM that was loaded in the rom directory, so you don't have to scroll to it every time.

Lock switch (submenu ala Save States):
Behaviour: [Do nothing] - [Pause Emulation] - [Open Menu]
Ignore Input: [No] - [Yes]
Switch off Display: [No] - [Yes]
I recall that the lock switch functionality was considered but how it should behave wasn't decided, what if it were configurable instead? In addition to the configuration, be it in emulation or in menu an onscreen label such as LOCKED would be handy.

A suspend function could be nice as well, an option that saves the state, and exits the rom or the application entirely. When the rom or application is next loaded it will load and then (optionally) delete the state.
Virtual Console games have this behaviour, and I believe that the DS homebrew GameYob has a suspend feature as well.

Yeah! support that!  ;), although I think the sleep function is implemented by firmware, no?

It would be nice too to choose the region manually, this allowed to play European games at 60fps (in my case, for example, Terranigma in Spanish without 50fps limitation :P).

About the emulator, like has been said and I've again forgotten, but i have a problem with the configuration per-game...doesn't save and when i restart pocketsnes, the specific config for  X game is lost and game works with global settings.

Quote
SNES9X4D is still much better

I disagree, the sound is much worse. The only thing I liked most in SNES9x4D was the compatibility and with the new version of Pocketsnes that was tied.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Atlantis_Risen on January 07, 2014, 08:15:03 pm
Hi, I'm testing the latest version of the emulator, the new skin are amazing! ;D, and i love the new options, but testing the Mario RPG, I saw that the game is worse than in other versions, even in the first version of emulator.

In the first city, with frameskip AUTO the game has many slowdowns, it's strange because i test the same file in older version of pocketsnes and the game runs better, and the settings are the same.

- The following games may have better accuracy, at the expense of emulation speed: (and possibly more I did not test)
* Super Mario World 2: Yoshi's Island (SuperFX chip)
* Super Mario RPG: Legend of the Seven Stars (SA-1 chip)
* Kirby Super Star (SA-1 chip)
* Kirby's Dreamland 3 (still using the workaround described in one of Nick Nillo's videos: start the game, let it play the black screen, and then enter the menu and select it again -- I have no idea why this game does that) (SA-1 chip)

What does 'better accuracy' mean if the game runs worse...?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 07, 2014, 08:37:11 pm
What does 'better accuracy' mean if the game runs worse...?

Generally if visual effects look corrrect or not, general rule of thumb in emulation is accuracy costs speed.
There's a pretty good article about emulation accuracy for certain SNES titles.
http://archive.is/EQ0cq
It's from byuu's bsnes/higan project, a low level SNES emulator that strives for complete accuracy, in doing so doesn't go for performance as it's quite the demanding emulator.
That said though PocketSNES is almost certainly a high level emulator.
In emulation, low level means you emulate the actual processes that produce a response, whereas high level is recreating the expected response, which doesn't take nearly as much processing power.

I was wondering how performance improvements in PocketSNES might be achieved without overclocking, which currently still isn't implemented. Are there any upcoming changes to GCW Zero firmware that will aid performance in general? Would SuperFX or SA-1 games benefit from using the GPU?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: pcercuei on January 07, 2014, 08:43:20 pm
Are there any upcoming changes to GCW Zero firmware that will aid performance in general?
Yes.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: TimeDevouncer on January 07, 2014, 08:59:13 pm
Are there any upcoming changes to GCW Zero firmware that will aid performance in general?
Yes.

(http://4.bp.blogspot.com/-ffVFjs-w82U/UWg1dFQVClI/AAAAAAAAOVI/vIAqJjgWhos/s1600/RobRyanFuckYeahFuckFace.gif)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Gab1975 on January 07, 2014, 09:00:00 pm
Are there any upcoming changes to GCW Zero firmware that will aid performance in general?
Yes.

I'm curious! Can you give us "some clue" about performance increase in the new firmware? ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 07, 2014, 09:14:26 pm
Quick Savestates: [Off] - [L+R and D-pad Left/Right] - [L+R and nub Left/Right] - [Nub Left/Right]
Quick savestates were removed from the new years update, for some games they're very handy, but the config might conflict with certain games, Super Metroid you hold L and R to aim up for example.
The quick saved state does not work anymore. L+R+Left and L+R+Right are now mapped to a new function called "Do nothing" :)

Open Menu: [Select + Start] - [Nub Up] - [Nub Up + Select] - [Nub Up + L+R]
Options to open the emulator menu other ways would be helpful, having to press Select+Start in Super Metroid for example means either selecting a different weapon or opening the pause screen.
That is true, however the UI for per-game settings is a bit confusing; you may have saved the per-game settings or global settings, but then find that the menu does not trigger with the buttons you set when reloading the game. I'll leave the UI for this to another developer.

Directional Input [D-pad] - [D-pad + Nub] - [Nub]
Maybe for some games just having the option to play with the nub might be nice, it might be good for something like Star Fox or Zelda, though it would mean implementing a new input and also it may conflict with possible hotkey configurations. Just an idea though.

Button remapping would also be a welcome feature. Although the GCW Zero already has the perfect button mapping to mirror the SNES input, for some games being able to remap might be very handy.
I will respectfully refuse to implement button remapping, because the button mapping is already perfect and the GCW itself feels like a SNES dogbone controller except for the position of the Start and Select buttons. Feel free to get someone to implement this for you, or implement it yourself.

As for joystick implementation, well, I dunno.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: MightyJAK on January 07, 2014, 09:42:00 pm
What does 'better accuracy' mean if the game runs worse...?

The speed may be worse, but other aspects are better. "Better accuracy" means the emulator performs closer to the original hardware. A "fast" emulator that's just running the SNES game programs may be enough for some games, but other games depend on the little quirks of the original hardware to run correctly, and without an "accurate" emulator they may cause graphical and audio glitches, or might not even play at all. Of course, more accuracy requires more processing power, and finding a balance between keeping those 'tricky' games working and keeping the emulation running at an acceptable speed on the target hardware can be quite a challenge for emulator programmers. byuu explains it better than I can: http://arstechnica.com/gaming/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator/

Incidentally, my favorite feature of Picodrive is that it not only packs "fast" and "accurate" emulation in the same program, but it allows switching rendering on the fly without having to restart or even a noticeable pause. I don't know what kind of technical wizardry it takes to accomplish this, but really wish this feature was in more emulators. This is great for action games like Sonic 2, as the accurate renderer can dip below 30fps when there's a lot of action and fast screen scrolling, but the fast renderer while usually holding a steady 60fps, has some problems with sprite layering, transparencies, and parallax scrolling.

Edit: WAH, 5 new responses in the time it took me to type this out, I suck.  :'(  That's what I get for putzing around on dingoonity while I'm at work.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 07, 2014, 10:43:58 pm
(1)The quick saved state does not work anymore. L+R+Left and L+R+Right are now mapped to a new function called "Do nothing" :)

(2)That is true, however the UI for per-game settings is a bit confusing; you may have saved the per-game settings or global settings, but then find that the menu does not trigger with the buttons you set when reloading the game. I'll leave the UI for this to another developer.

(3)I will respectfully refuse to implement button remapping, because the button mapping is already perfect and the GCW itself feels like a SNES dogbone controller except for the position of the Start and Select buttons. Feel free to get someone to implement this for you, or implement it yourself.

(4)As for joystick implementation, well, I dunno.

1 - Why not make it a toggleable option then? :P
It's a good feature to have in there, I found it helpful playing Umihara Kawase.

2 - That's definitely true, the per-game settings aren't as clear as the global settings.
What if the menu listings were colour coded, such as highlighted yellow if the current per-game setting differs from the global settings?

3 - Seems kinda a shame to not give users the option, as some SNES games didn't necessarily have good button mapping on the original systems.

4 - Aight, just pitching thoughts really.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 07, 2014, 11:09:19 pm
(1)The quick saved state does not work anymore. L+R+Left and L+R+Right are now mapped to a new function called "Do nothing" :)

(2)That is true, however the UI for per-game settings is a bit confusing; you may have saved the per-game settings or global settings, but then find that the menu does not trigger with the buttons you set when reloading the game. I'll leave the UI for this to another developer.

(3)I will respectfully refuse to implement button remapping, because the button mapping is already perfect and the GCW itself feels like a SNES dogbone controller except for the position of the Start and Select buttons. Feel free to get someone to implement this for you, or implement it yourself.

(4)As for joystick implementation, well, I dunno.

1 - Why not make it a toggleable option then? :P
It's a good feature to have in there, I found it helpful playing Umihara Kawase.

2 - That's definitely true, the per-game settings aren't as clear as the global settings.
What if the menu listings were colour coded, such as highlighted yellow if the current per-game setting differs from the global settings?

3 - Seems kinda a shame to not give users the option, as some SNES games didn't necessarily have good button mapping on the original systems.

4 - Aight, just pitching thoughts really.
-> 1: I had to remove the L+R+Left and L+R+Right quick saved state code, because it had stopped working completely. Something in the Snes9x 1.43 core stopped accepting in-memory saved state requests, and it was disingenuous to show Saved! and Loaded! when nothing happened. So I unmapped them.

-> 2: The menu remembers and uses only one set of settings; that might be why global settings and per-game settings suck so much. I could pretty much try transplanting the green ReGBA Main Menu code in there, though, and dealing with per-game setting resolution more cleanly but losing in-emulator ROM switching and relying on gmenu2x instead... (this would also get the menu hotkey setting from ReGBA, but see 4)

-> 3: Oh well. TempGBA users on the DSTwo requested button remapping in droves, but there have been only 1 or 2 requests I can remember for Snes9x on the DSTwo (CATSFC), and the DS button mapping is also perfect for SNES. I may consider it if more users actually want this.

-> 4: The joystick support is expected to change in a future firmware when OTG is released, and the only way I know to do input on OpenDingux is to use its SDL keyboard emulation. If I transplant the ReGBA menu code into too many programs, in the immediate you'd get analog nub remapping, hotkeys and all that, but more programs have my keyboard-reading code. So it depends on your impatience versus the amount of code someone has to fix later.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 07, 2014, 11:14:08 pm
Are there any upcoming changes to GCW Zero firmware that will aid performance in general?
Yes.

I'm curious! Can you give us "some clue" about performance increase in the new firmware? ;)
(https://dl.dropboxusercontent.com/u/106475413/gcw-zero/pocketsnes-triple-buffering.png)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 08, 2014, 12:14:09 am
-> 1: I had to remove the L+R+Left and L+R+Right quick saved state code, because it had stopped working completely. Something in the Snes9x 1.43 core stopped accepting in-memory saved state requests, and it was disingenuous to show Saved! and Loaded! when nothing happened. So I unmapped them.

-> 2: The menu remembers and uses only one set of settings; that might be why global settings and per-game settings suck so much. I could pretty much try transplanting the green ReGBA Main Menu code in there, though, and dealing with per-game setting resolution more cleanly but losing in-emulator ROM switching and relying on gmenu2x instead... (this would also get the menu hotkey setting from ReGBA, but see 4)

-> 3: Oh well. TempGBA users on the DSTwo requested button remapping in droves, but there have been only 1 or 2 requests I can remember for Snes9x on the DSTwo (CATSFC), and the DS button mapping is also perfect for SNES. I may consider it if more users actually want this.

-> 4: The joystick support is expected to change in a future firmware when OTG is released, and the only way I know to do input on OpenDingux is to use its SDL keyboard emulation. If I transplant the ReGBA menu code into too many programs, in the immediate you'd get analog nub remapping, hotkeys and all that, but more programs have my keyboard-reading code. So it depends on your impatience versus the amount of code someone has to fix later.

1 - Ahh I see, totally unsupported because of being based on the 1.43 core, so no chance it's coming back, that's too bad.

2 - It'd be quite the penalty to lose in-emulator ROM switching IMO, it's bound to be doable though. Picodrive is open source and has an excellent menu interface, is there anything to be learnt by looking at that code?

3 - Now that's definitely understandable, since the GBA was a two button deal with two spare buttons for whatever emulator or autofire options you want. That said, button remapping actually makes a lot of sense if you want to plug in an external gamepad.

4 - So PocketSNES has a different way of handling input from SDL keyboard emulation then?

I'm curious! Can you give us "some clue" about performance increase in the new firmware? ;)
(https://dl.dropboxusercontent.com/u/106475413/gcw-zero/pocketsnes-triple-buffering.png)

Oh snap, that should be chugging like crazy with all those sprites and animation on screen.
For me the title screen runs at a consistent 41/60 FPS, if that runs at a constant 60 FPS that'd be amazing.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 08, 2014, 12:56:24 am
1 - Ahh I see, totally unsupported because of being based on the 1.43 core, so no chance it's coming back, that's too bad.

2 - It'd be quite the penalty to lose in-emulator ROM switching IMO, it's bound to be doable though. Picodrive is open source and has an excellent menu interface, is there anything to be learnt by looking at that code?

3 - Now that's definitely understandable, since the GBA was a two button deal with two spare buttons for whatever emulator or autofire options you want. That said, button remapping actually makes a lot of sense if you want to plug in an external gamepad.

4 - So PocketSNES has a different way of handling input from SDL keyboard emulation then?
-> 2: I don't do GUIs so well. For me the best GUI is a console, and I am most comfortable with backends. ReGBA's menu looks quite simplistic; that's because it's really a very thin frontend over what is mostly a backend, just to make it look pretty. As for the recent PocketSNES GUI revamp, this was mostly hi-ban and JohnnyonFlame's doing; I just hooked up their changes to the backend. This is open-source, though, so you can get someone else to pick up the code and beautify the GUI.

-> 3, 4: [Those are related.] I have an FC30 controller, so I could plug it, but OTG support has been very slow and can currently damage hardware -- both the GCW and the USB device -- due to issues with pulling and pushing power in the driver, so it's disabled. I could test it, but I can't. As a result, I have no idea how to react to buttons from external controllers. But whenever OTG supports controllers well enough, this will have to be something to revisit in all applications. Someone told me s/he would try to improve ReGBA's input mechanism, but probably ran into similar issues and gave up.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Jonosborne on January 08, 2014, 03:30:23 am
I disagree, the sound is much worse. The only thing I liked most in SNES9x4D was the compatibility and with the new version of Pocketsnes that was tied.
[/quote]

Try the third level in Yoshi's Island once you go underground and then talk to me about it being tied.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 08, 2014, 05:28:21 am
I disagree, the sound is much worse. The only thing I liked most in SNES9x4D was the compatibility and with the new version of Pocketsnes that was tied.
BROKEN QUOTE

Try the third level in Yoshi's Island once you go underground and then talk to me about it being tied.
BROKEN QUOTE
All of Snes9x4d, PocketSNES-1.39 and PocketSNES-1.43 can play Yoshi's Island. They are all tied for that-game compatibility.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: TimeDevouncer on January 08, 2014, 05:58:16 am
I'm curious! Can you give us "some clue" about performance increase in the new firmware? ;)
(https://dl.dropboxusercontent.com/u/106475413/gcw-zero/pocketsnes-triple-buffering.png)

Awesome :o, In the actual version of Pocketsnes:

(http://img34.imageshack.us/img34/4183/vtoz.png)

Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Orion4874 on January 08, 2014, 08:32:57 am
Ok, stupid question, I put the entire preview folder in the ~/.snes96_snapshots directory but I'm not seeing these previews when I run the emu. Where/when should you see them exactly, when you highlight a specific rom? Does it have to be a No-Intro romset?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 08, 2014, 08:42:35 am
Ok, stupid question, I put the entire preview folder in the ~/.snes96_snapshots directory but I'm not seeing these previews when I run the emu. Where/when should you see them exactly, when you highlight a specific rom? Does it have to be a No-Intro romset?
The names have to match, so you'd have to have No-Intro-named files, yes.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Gab1975 on January 08, 2014, 08:51:39 am
Are there any upcoming changes to GCW Zero firmware that will aid performance in general?
Yes.

I'm curious! Can you give us "some clue" about performance increase in the new firmware? ;)
(https://dl.dropboxusercontent.com/u/106475413/gcw-zero/pocketsnes-triple-buffering.png)

Great... Yoshi's Island runs at about full speed! Thanks for the "juicy" clue! ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: TimeDevouncer on January 08, 2014, 08:58:49 am
When can we have this new firmware? I'm willing to try it (And if it comes with the TV-Out ... :-*)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 08, 2014, 11:12:07 am
I won't add any sort of software bilinear scaling into PocketSNES. The basic scaling block size is much too large (16x16 -> 20x17), and it can't be turned into 32-bit I/O.

I tried independently with an algorithm suggested by hi-ban which does approximations divided by 16, 8, 4 or 2 depending on the pixel, and I also retested kuwanger's /15 and /5 lookup table scaler on testing firmware. Speedhacks avoid the scaling/averaging step if two neighbouring pixels are the same colour, which happens way more often on the GBA with its huge uniform colour backgrounds than on the SNES with its gradients. No scaler or speedhack gives less than 33% slowdown on anything more graphically complicated than Super Metroid.

I intend to wait for the IPU driver. For now, have the Bresenham scaler; its CPU usage is respectable.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Atlantis_Risen on January 09, 2014, 03:41:33 am
What does 'better accuracy' mean if the game runs worse...?

Generally if visual effects look corrrect or not, general rule of thumb in emulation is accuracy costs speed.
There's a pretty good article about emulation accuracy for certain SNES titles.
http://archive.is/EQ0cq
It's from byuu's bsnes/higan project, a low level SNES emulator that strives for complete accuracy, in doing so doesn't go for performance as it's quite the demanding emulator.
That said though PocketSNES is almost certainly a high level emulator.
In emulation, low level means you emulate the actual processes that produce a response, whereas high level is recreating the expected response, which doesn't take nearly as much processing power.

I was wondering how performance improvements in PocketSNES might be achieved without overclocking, which currently still isn't implemented. Are there any upcoming changes to GCW Zero firmware that will aid performance in general? Would SuperFX or SA-1 games benefit from using the GPU?

What does 'better accuracy' mean if the game runs worse...?

The speed may be worse, but other aspects are better. "Better accuracy" means the emulator performs closer to the original hardware. A "fast" emulator that's just running the SNES game programs may be enough for some games, but other games depend on the little quirks of the original hardware to run correctly, and without an "accurate" emulator they may cause graphical and audio glitches, or might not even play at all. Of course, more accuracy requires more processing power, and finding a balance between keeping those 'tricky' games working and keeping the emulation running at an acceptable speed on the target hardware can be quite a challenge for emulator programmers. byuu explains it better than I can: http://arstechnica.com/gaming/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator/

Incidentally, my favorite feature of Picodrive is that it not only packs "fast" and "accurate" emulation in the same program, but it allows switching rendering on the fly without having to restart or even a noticeable pause. I don't know what kind of technical wizardry it takes to accomplish this, but really wish this feature was in more emulators. This is great for action games like Sonic 2, as the accurate renderer can dip below 30fps when there's a lot of action and fast screen scrolling, but the fast renderer while usually holding a steady 60fps, has some problems with sprite layering, transparencies, and parallax scrolling.

Edit: WAH, 5 new responses in the time it took me to type this out, I suck.  :'(  That's what I get for putzing around on dingoonity while I'm at work.

Thanks for these posts guys.  I have a better understanding now about fast vs accurate emulators...also thanks for that picodrive mention, I didn't know what those modes meant until now.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Gab1975 on January 09, 2014, 02:12:30 pm
Are there any upcoming changes to GCW Zero firmware that will aid performance in general?
Yes.

I'm curious! Can you give us "some clue" about performance increase in the new firmware? ;)
(https://dl.dropboxusercontent.com/u/106475413/gcw-zero/pocketsnes-triple-buffering.png)

Maybe I'm too curious, but I'm going to try! :P Is the "performance boost" general for all emulators (obviously where needed)?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: pcercuei on January 09, 2014, 03:41:51 pm
Maybe I'm too curious, but I'm going to try! :P Is the "performance boost" general for all emulators (obviously where needed)?
For all applications that render at less than 60fps, yes, but they have to be slightly patched.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Gab1975 on January 09, 2014, 04:25:03 pm
Maybe I'm too curious, but I'm going to try! :P Is the "performance boost" general for all emulators (obviously where needed)?
For all applications that render at less than 60fps, yes, but they have to be slightly patched.

Thanks for the answer! Great news! ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 09, 2014, 04:28:43 pm
Maybe I'm too curious, but I'm going to try! :P Is the "performance boost" general for all emulators (obviously where needed)?
For all applications that render at less than 60fps, yes, but they have to be slightly patched.

Is PocketSNES compiled with a hardware surface at the moment?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: hi-ban on January 09, 2014, 05:47:39 pm
yes
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 09, 2014, 09:31:38 pm
Is PocketSNES compiled with a hardware surface at the moment?
[2 levels of quote nesting removed]

https://github.com/Nebuleon/PocketSNES/commit/605e1114155e6b1aecc4f08d8a867a629b4903f2

And this is the entire code I had to write for triple-buffering.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: GuyInDogSuit on January 11, 2014, 05:59:26 am
Awesome, another update!

Any chance of hotkey settings like ReGBA has? I think that's all this emulator is missing to make it even more awesome. Bilinear filtering would be nice, but I see you've already tried that with no success. Bummer. Also, .cht file support?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 11, 2014, 08:31:14 pm
[...]

Also, .cht file support?
What is the format of this .cht file you speak of? I look on Google and find some in INI format, some in key=value format, some in comma-separated value format, some in binary with fixed records, and some in binary with variable-length records. There does not appear to be a single ".cht file" format.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: GuyInDogSuit on January 11, 2014, 08:41:49 pm
http://www.zophar.net/cheats.html

It looks like they were only supported by ZSNES.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 11, 2014, 08:56:49 pm
http://www.zophar.net/cheats.html

It looks like they were only supported by ZSNES.
False. BSNES has had 2 cheat formats; ZSNES has 1 cheat format; Snes9x has 1 cheat format. They're all disjoint.

Source (http://www.gscentral.org/cheatfiles_snesall.php)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: GuyInDogSuit on January 11, 2014, 09:05:54 pm
No, I meant specifically .chat files were supported by ZSNES only.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 11, 2014, 09:22:15 pm
No, I meant specifically .chat files were supported by ZSNES only.
False. The extension for all the files on that page is .cht: BSNES previous, BSNES current, ZSNES and Snes9x. If I go supporting one cheat file format, it better be well documented which it is, because there's no single ".cht format" that I can point to and say "oh, that's a .cht file". And users will be like "buh? how cheat? I put .cht file and it no work??? help?!"
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Atlantis_Risen on January 12, 2014, 02:35:31 am
any chance that the new firmware will improve CPS3 performance?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Gab1975 on January 12, 2014, 02:45:02 am
any chance that the new firmware will improve CPS3 performance?

I think that the "main problem" with the CPS3 emulation is the lack of a SH2 core dynamic recompilation for MIPS32 CPU...
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 12, 2014, 04:25:08 am
Please do not derail this thread with CPS3 and firmware questions not related to PocketSNES. Create a new thread in /GCW Zero/Emulation or /GCW Zero/Development (if you're developing applications and would like to take advantage of triple-buffering) for this.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: GuyInDogSuit on January 12, 2014, 04:51:11 pm
No, I meant specifically .chat files were supported by ZSNES only.
False. The extension for all the files on that page is .cht: BSNES previous, BSNES current, ZSNES and Snes9x. If I go supporting one cheat file format, it better be well documented which it is, because there's no single ".cht format" that I can point to and say "oh, that's a .cht file". And users will be like "buh? how cheat? I put .cht file and it no work??? help?!"

Ok, ok, consider me schooled. Well, considering this is a SNES9x port, why not just go with those?
Title: Re: PocketSNES based on Snes9x 1.43-dev
Post by: MAF84 on January 12, 2014, 05:04:45 pm
[...]

First impression/question- at least for the one game I was playing, this doesn't appear to work with save states from the old version.  It sees those save states, but when I try to load one, it takes me to wherever I was before I tried to load a save state.  I'm not sure if this happens in other games.  The good thing is that it seems to be possible to have both versions of PocketSNES loaded onto the Zero simultaneously, so that a transition can be made over time.  (I assume the SRAM files will still work because those seem to be compatible across all emulators.)
SRAM files will still work, yes, and the saved states not loading from a previous version is just because, at a certain point, Snes9x developers stopped caring about backwards compatibility for their saved states after every new version. I just didn't expect it to be gone already for 1.39 in 1.43.

Do states at least load and save properly inside PocketSNES-1.43?

Sorry I haven't gotten to reply.  I haven't had time to install the newer version and try it out.  Maybe later today.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: TimeDevouncer on January 12, 2014, 08:28:36 pm
https://www.youtube.com/watch?v=_e0NzCbLg84
 :-* :-*
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 13, 2014, 12:56:34 am
{youtube}
 :-* :-*

Looking absolutely beautiful, can't wait for that new firmware.
Even Kirby Superstar has trouble with full speed at the moment. Unrelated to PocketSnes I'm hoping it will improve Cave Story too.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: gurple on January 13, 2014, 03:32:01 am
Thank you! This update got one of my favorite games working.

I was having problems at first where the display was not working for any games. I'm not sure what was causing it, but I deleted the option files for the emulator and that fixed it.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: toto on January 13, 2014, 08:10:23 pm
great emulator with fullscreen! thanks a lot for your hard word. Previews .png won't work for me, any ideas?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: hi-ban on January 13, 2014, 08:15:02 pm
great emulator with fullscreen! thanks a lot for your hard word. Previews .png won't work for me, any ideas?

the rom name must be the same as the preview name for it to work. More info on page 3 of this thread.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 15, 2014, 02:39:27 am
In another thread,
That's exactly what I mean. The download page/repository is not kept up-to-date with the board releases. For example, PocketSNES has still not been updated since August but the latest is from 20130109.
2014-01-05*

There will be a release soon after the next firmware, which will implement triple buffering. I will wait after this new firmware to release that PocketSNES version, and get it into the repository.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: GuyInDogSuit on January 15, 2014, 05:58:05 am
2014-01-05*

There will be a release soon after the next firmware, which will implement triple buffering. I will wait after this new firmware to release that PocketSNES version, and get it into the repository.

Sorry, I didn't mean to come off as a complainer, I was just using PocketSNES as an example. FCEU hasn't been updated, either (and that has some issues!). I read in another thread that there's various reasons why a game or emulator would not be uploaded to the repository by the creator/maintainer, so now I know better.

Triple-buffering will be nice, considering most games run pretty solidly as it is. Thanks for your hard work!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 19, 2014, 10:55:10 pm
So I've been playing Super Punch Out, runs like a dream on PocketSNES.
Although, there's an odd bug I don't understand with the game.

On first boot, you see the Nintendo logo without a sound, it fades to black and doesn't do anything.
Open up the PocketSNES menu, reset, and then the game runs as normal, you see the Nintendo logo with a sound effect.
The game plays great after that boot hiccup, I wonder why that happens?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Meganubis on January 27, 2014, 01:03:49 pm
SO can we get the option to save the position in the rom list, it gets annoying having to scroll to my last position
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Atlantis_Risen on January 27, 2014, 01:51:02 pm
SO can we get the option to save the position in the rom list, it gets annoying having to scroll to my last position

I created a sub folder inside the SNES Roms folder on my SD card called "SNES favorites" and copied a few of my 'must play' games in there.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: hi-ban on January 27, 2014, 04:36:09 pm
SO can we get the option to save the position in the rom list, it gets annoying having to scroll to my last position

It's coming in the next update.

In any case, using Left/Right to fast scroll, makes scrolling a lot faster than using Up/Down. I can scroll through my romlist (about 900 roms) in about 3 seconds.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: RupeeClock on January 28, 2014, 04:39:28 am
It's coming in the next update.

In any case, using Left/Right to fast scroll, makes scrolling a lot faster than using Up/Down. I can scroll through my romlist (about 900 roms) in about 3 seconds.

Cool, small things like that help.

Seeing as the upcoming PocketSNES update is tentatively tied to the upcoming GCW Zero firmware update with triple buffering support, makes me wonder when we might expect that.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: retroman on January 28, 2014, 06:01:41 am
Do you know when the new firmware will be release?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 29, 2014, 02:10:51 am
So I've been playing Super Punch Out, runs like a dream on PocketSNES.
Although, there's an odd bug I don't understand with the game.

On first boot, you see the Nintendo logo without a sound, it fades to black and doesn't do anything.
Open up the PocketSNES menu, reset, and then the game runs as normal, you see the Nintendo logo with a sound effect.
The game plays great after that boot hiccup, I wonder why that happens?
Looks like this bug was the one that also prevented Kirby's Dream Land 3 from working in the same conditions.

hi-ban and I have been narrowing down the cause of this bug by following the variables that were set when the ROM was reset, and I arrived at this conclusion:

commit 959bfcb (https://github.com/Nebuleon/PocketSNES/commit/959bfcb): main.cpp: Fix a bug whereby some games would not boot until the second time they were selected, or they were selected after another ROM, or they were reset. Fixes Kirby's Dream Land 3, Super Punch-Out!! and perhaps other games.

This will be in the next release of PocketSNES. Until then, the workarounds are indeed what I wrote in the commit message.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on January 29, 2014, 02:54:48 am
-> 2: The menu remembers and uses only one set of settings; that might be why global settings and per-game settings suck so much. I could pretty much try transplanting the green ReGBA Main Menu code in there, though, and dealing with per-game setting resolution more cleanly but losing in-emulator ROM switching and relying on gmenu2x instead... (this would also get the menu hotkey setting from ReGBA, but see 4)
2 - It'd be quite the penalty to lose in-emulator ROM switching IMO, it's bound to be doable though. Picodrive is open source and has an excellent menu interface, is there anything to be learnt by looking at that code?
commit f45654d (https://github.com/Nebuleon/PocketSNES/commit/f45654d): menu.cpp: Actually load per-game settings when loading a ROM.

Note: This commit does require the user to save settings to global or per-game configuration before switching ROMs. This is a small price to pay to have working per-game settings.

I didn't realise that per-game settings didn't work at all. This commit will also be in the next PocketSNES release.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: cyg on January 29, 2014, 03:22:30 pm
First of all, thank you for all your hard work, this emulator is what make me decide to keep my GCW Zero instead of selling it, amazing work.

I have a question semi-related to this emu, are the .srm save files standard for all SNES9x based emus? I ask because, im trying to sync my saves between 2 devices, PocketSNES in GCW Zero and Snes9x EX+ for Android.

What im doing is FTPing from Android to the GCW Zero and then copy/pasting the .srm file generated by PocketSnes into the Snex9x Android saves folder and its not working, when I open the game in Android, the save is clean. I even tried letting the android emu generate its own .srm and then overwriting it with PocketSnes' and it didnt work.

I havent tried doing it the other way around.

Thanks for any info and do let me know if there is a better setup to sync saves files so I can pick up a different device and keep playing.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: GuyInDogSuit on January 29, 2014, 06:38:31 pm
Have you tried it with save states?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: cyg on January 29, 2014, 06:52:55 pm
Have you tried it with save states?

I havent no, I just assumed that wouldnt work for sure, I will give it a try, whats the extension of the Save States?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Surkow on January 29, 2014, 07:19:59 pm
Have you tried it with save states?

I havent no, I just assumed that wouldnt work for sure, I will give it a try, whats the extension of the Save States?
Save states are program specific. You cannot exchange them. Sram saves should work fine, though.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: cyg on January 29, 2014, 07:24:43 pm
Have you tried it with save states?

I havent no, I just assumed that wouldnt work for sure, I will give it a try, whats the extension of the Save States?
Save states are program specific. You cannot exchange them. Sram saves should work fine, though.

Thats what I imagined, unfortunately, .srm files arent working either, maybe im missing something, is copying the .srm file should be enough right?

Now that I think about, its possible that the rom is different between both machines and that might cause it, I will give that a try, thanks
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: hi-ban on January 29, 2014, 07:33:39 pm
Yes, make sure the rom is the same, and the srm file is named exactly the same as the rom.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: cyg on January 30, 2014, 02:59:39 pm
Yes, make sure the rom is the same, and the srm file is named exactly the same as the rom.

Thank you for your help, copied the rom and .srm file directly from my Zero to Android and alas the save works!!!!

Thanks
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: 133794m3r on February 16, 2014, 02:58:33 pm
By the way adding the following flags makes the menu never appear for some reason.

 -fweb -fgcse-las -fgcse-sm -fgcse-after-reload -fpeel-loops

I'm going to try to debug it later to see why but for now it just won't do it which is saddening to see.

Edit: the inputs are working but it doesn't bring up the menu. I'll try using gdb to see what's going on with it or something similar but I don't see why it wouldn't work fine with those additional optimizations as the rest of it works. It even emulators starfox2 just fine. So if something was wrong I would've imagined it'd have to do with that game.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on February 16, 2014, 07:34:01 pm
Building from source will currently yield a version that requires the next firmware to enter the menu (with a flick of the Power button without pressing other buttons).

That is not the fault of compilation flags, but of commit b5e4244: Activate the menu with SDLK_HOME. (https://github.com/Nebuleon/PocketSNES/commit/b5e4244ede9b683d7be6c04454e64ef6a4f1e641)

After pulling, you can use
Code: [Select]
git revert b5e4244to return to Start+Select, which works with current firmware.

While you're building from source, also try getting my snes9x-git-experimental branch (https://github.com/Nebuleon/PocketSNES/tree/snes9x-git-experimental) to see how slow it is. In reply #44, I said Snes9x 1.5x would have way worse performance. (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg91769/#msg91769) This is the most recent Git version of Snes9x, built into PocketSNES, and it can't even do Super Mario World, the simplest of background-and-sprite games, at 60 FPS on the GCW Zero.

edit: I am still attempting some optimisations, but the APU (Audio Processing Unit) emulation and synthesis, as well as backdrop rendering, is causing lots more (GCW) CPU usage. The accuracy of the APU was made much higher. (http://arstechnica.com/gaming/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator/)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: 133794m3r on February 17, 2014, 09:55:16 pm
ah ok, I would've thought that you had a branch for stuff that required new firmware so that the master was in a semi-stable state. that's how I do all of my branches so I guess I just figured that others do the same.

By the way, I'll try both of those branches with the insane optimizations and see how it all goes.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on February 17, 2014, 10:24:28 pm
ah ok, I would've thought that you had a branch for stuff that required new firmware so that the master was in a semi-stable state. that's how I do all of my branches so I guess I just figured that others do the same.

By the way, I'll try both of those branches with the insane optimizations and see how it all goes.
My master branch is stable. It's just meant to go with the firmware's master branch right now. Use released stuff with other released stuff, and master-branch stuff with other master-branch stuff.

Alright, tell me how it goes :)

Edited for major rewording
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: 133794m3r on February 28, 2014, 06:04:58 pm
OK, reverting to that branch gives me an error when trying to compile.

Code: [Select]
In file included from pocketsnes/include/memmap.h:297:0,
                 from pocketsnes/include/ppu.h:328,
                 from pocketsnes/include/cpuexec.h:92,
                 from pocketsnes/snes9x/apu.cpp:99:
pocketsnes/include/getset.h: In function ‘uint8 S9xGetByte(uint32)’:
pocketsnes/include/getset.h:123:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint16 S9xGetWord(uint32)’:
pocketsnes/include/getset.h:227:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetByte(uint8, uint32)’:
pocketsnes/include/getset.h:350:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetWord(uint16, uint32)’:
pocketsnes/include/getset.h:483:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint8* GetBasePointer(uint32)’:
pocketsnes/include/getset.h:604:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint8* S9xGetMemPointer(uint32)’:
pocketsnes/include/getset.h:670:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetPCBase(uint32)’:
pocketsnes/include/getset.h:730:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
make: *** [pocketsnes/snes9x/apu.o] Error 1
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on February 28, 2014, 06:36:09 pm
OK, reverting to that branch gives me an error when trying to compile.

Code: [Select]
In file included from pocketsnes/include/memmap.h:297:0,
                 from pocketsnes/include/ppu.h:328,
                 from pocketsnes/include/cpuexec.h:92,
                 from pocketsnes/snes9x/apu.cpp:99:
pocketsnes/include/getset.h: In function ‘uint8 S9xGetByte(uint32)’:
pocketsnes/include/getset.h:123:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint16 S9xGetWord(uint32)’:
pocketsnes/include/getset.h:227:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetByte(uint8, uint32)’:
pocketsnes/include/getset.h:350:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetWord(uint16, uint32)’:
pocketsnes/include/getset.h:483:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint8* GetBasePointer(uint32)’:
pocketsnes/include/getset.h:604:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint8* S9xGetMemPointer(uint32)’:
pocketsnes/include/getset.h:670:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetPCBase(uint32)’:
pocketsnes/include/getset.h:730:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
make: *** [pocketsnes/snes9x/apu.o] Error 1
What sort of flags are you compiling with? Explicit casts are allowed by C, as used in lines like these:
Code: [Select]
switch ((pint) GetAddress)Compiling with the flags currently in the Makefile and no -Werror or -Wall should be OK.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: 133794m3r on March 01, 2014, 07:32:17 pm
OK, reverting to that branch gives me an error when trying to compile.

Code: [Select]
In file included from pocketsnes/include/memmap.h:297:0,
                 from pocketsnes/include/ppu.h:328,
                 from pocketsnes/include/cpuexec.h:92,
                 from pocketsnes/snes9x/apu.cpp:99:
pocketsnes/include/getset.h: In function ‘uint8 S9xGetByte(uint32)’:
pocketsnes/include/getset.h:123:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint16 S9xGetWord(uint32)’:
pocketsnes/include/getset.h:227:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetByte(uint8, uint32)’:
pocketsnes/include/getset.h:350:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetWord(uint16, uint32)’:
pocketsnes/include/getset.h:483:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint8* GetBasePointer(uint32)’:
pocketsnes/include/getset.h:604:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘uint8* S9xGetMemPointer(uint32)’:
pocketsnes/include/getset.h:670:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
pocketsnes/include/getset.h: In function ‘void S9xSetPCBase(uint32)’:
pocketsnes/include/getset.h:730:19: error: cast from ‘uint8* {aka unsigned char*}’ to ‘int’ loses precision [-fpermissive]
make: *** [pocketsnes/snes9x/apu.o] Error 1
What sort of flags are you compiling with? Explicit casts are allowed by C, as used in lines like these:
Code: [Select]
switch ((pint) GetAddress)Compiling with the flags currently in the Makefile and no -Werror or -Wall should be OK.

-fweb -fgcse-las -fgcse-sm -fgcse-after-reload -fpeel-loops

added at the end of it. And those are the flags that you told me to try, and I was going to do both the normal branch and the experimental which I don't know if I'd be able to do, since I imagine it's using the same button for the "bring up the menu" button.

Edit: I don't know which codebase you're looking at but the commit _before_ you change the button combo required to get into the menu it won't compile even with the default flags.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-01-05 update]
Post by: Nebuleon on March 23, 2014, 09:55:54 pm
... Since the firmware is probably never coming, here's a release that will work on the 2013-10 (October) firmware. It's made from the firmware-2013-10 branch on GitHub, not master. It should bring up its menu with START+SELECT, and does not have triple buffering because that's something which is only enabled with cooperation from the firmware. It needs some user testing.

Link is in the OP.

Changes in this version over 2014-01-05 (January) in chronological order:

* A smooth full-screen scaler based on an approximation of bilinear scaling is included. True bilinear scaling would have brought all games down to 20-30 FPS, but this one has good performance (instruction cache and data cache). You can select it in the menu: set Full-screen to SMOOTH. This is documented in the manual. (hi-ban, Nebuleon, 2014-01-09, 2014-01-11)
* Default to saving SRAM after every change, because PocketSNES is not sync()ing the entire filesystem after saving SRAM anymore. Set "Auto Save SRAM" to TRUE or delete ~/.snes96_snapshots/pocketsnes_options.opt after getting the new version to get this. (Nebuleon, 2014-01-11, 2014-03-23)
* Actually load per-ROM settings while loading a ROM. Previously, game-specific settings would save, but never load. See #123 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg95024/#msg95024). (Nebuleon, 2014-01-29)
* Fix a bug whereby some games need to be selected twice in the ROM list to work, including Kirby's Dream Land 3. See #122 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg95022/#msg95022). (hi-ban, Nebuleon, 2014-01-29)
* Correctly center and resize any game that uses PAL image dimensions. (hi-ban, 2014-01-31)
* The saved state menu now reacts correctly to saved states being corrupt, incomplete, unreadable or from a Snes9x version that is too high or too low. N.B.: You cannot delete erroneous saved states because they may be only temporarily unreadable/corrupt/incomplete due to uploads to the device, etc. To delete such a saved state, use FTP, SCP, Telnet or a recent GCW Zero Manager by Harteex (http://wiki.gcw-zero.com/index.php/Quick_Start_Guide#Installing_New_Software) and delete the correct file in ~/.snes96_snapshots. See the 'Files' section of the manual for more information about saved states. (Nebuleon, 2014-02-01)
* Default to hiding the FPS counter. (Nebuleon, 2014-03-23)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Awakened on March 23, 2014, 11:44:38 pm
The smooth filter looks really nice and I don't notice any performance decrease in the few games I just tried with it on. Excellent work as always!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Greetdeath on March 24, 2014, 12:35:57 am
Thanks for your work, sad thing about the update taking so much to release, but i know it's not an easy task.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Nebuleon on March 24, 2014, 02:11:15 am
The smooth filter looks really nice and I don't notice any performance decrease in the few games I just tried with it on. Excellent work as always!
This reply alone would almost be enough user testing. I primarily wanted to know if the menu could be entered, as well as if settings could be changed and saved correctly, and if the performance of the smooth scaler was acceptable with double-buffering.

Keep the testing coming, guys and gals! I'd also like some feedback about the default settings (temporarily move ~/.snes96_snapshots/pocketsnes_options.opt out of the way, check settings then load a game) and the per-ROM settings code (save some settings for one game, then load another, then load the first one again etc.)

I'll put that in the repository if there are no major UI and functional bugs reported by Saturday (2014-03-29) evening UTC.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Gab1975 on March 24, 2014, 06:49:00 am
I did a quick test and save-load per-game settings seem to work properly... I noticed that the manual is revised to the 2014-01-01 version, but it's not a big/real issue... :)

PS: I hope that the new firmware will be out soon, the PocketSNES (like other emulators) will have a good advantage from the triple buffer support!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: GuyInDogSuit on March 25, 2014, 12:06:09 am
Awesome! Thanks, Nebuleon! PocketSNES and ReGBA are the reason I still play my Zero. And thanks to hiban for the previews!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Scoobysnaxx on March 25, 2014, 02:31:19 am
Awesome! Thanks, Nebuleon! PocketSNES and ReGBA are the reason I still play my Zero. And thanks to hiban for the previews!

They are my 2 favourite emulators on the device as well. Thank you very much Nebuleon!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Nebuleon on March 25, 2014, 07:53:09 am
I did a quick test and save-load per-game settings seem to work properly... I noticed that the manual is revised to the 2014-01-01 version, but it's not a big/real issue... :)
That's a minor whoops, but still a whoops. It's been fixed in git, and I'll have to make a new release for it and upload that to the repository. It's not worth making a whole new OPK right now, though.

Thanks for the kind words, GuyInDogSuit and Scoobysnaxx. Snes9x developers deserve most of that praise!
Title: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: surfi80 on March 26, 2014, 05:36:04 pm
great job, bravo!!!!

(http://www.imagenzone.net/gifs-animados/Smilies/Aplausos/Smilies-269.gif)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: TimeDevouncer on March 26, 2014, 07:29:19 pm
Thanks for the update!!!! Any date for the new firmware? Can't wait to try the triple buffering nad Final Fantasy VI (now runs with huge slowdowns with FS 0)

P.D. My 3 favourite emulators are Pocketsnes, Ohboy and reGBA :-*

P.D.2 A suggestion:
- Could you implement a system to change regions (NTSC JP, NTSC US, PAL) in the middle of a game? This would be great for playing PAL games at 60FPS (with German/French/spanish translations).
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Nebuleon on March 26, 2014, 09:17:23 pm
Thanks for the update!!!! Any date for the new firmware? Can't wait to try the triple buffering nad Final Fantasy VI (now runs with huge slowdowns with FS 0)
It was supposed to be out 2 months ago. It's supposed to be about now. I don't know.

In the October firmware, Final Fantasy 3-US/6-Japan runs at 30 FPS or 60 FPS; 30 FPS in the field, and 60 FPS elsewhere, including battles. The slowdown is fluid, at least.

In the current testing firmware, the same game runs at 60 FPS, or 52-58 FPS in the field. This manifests as random jumps in the scrolling image. I would argue that that's worse than a fluid slowdown, but Yoshi's Island is much better for it.

P.D.2 A suggestion:
- Could you implement a system to change regions (NTSC JP, NTSC US, PAL) in the middle of a game? This would be great for playing PAL games at 60FPS (with German/French/spanish translations).
Please present a game that would benefit significantly from this. edit: Because I don't see how a translation of a 60 FPS game would be 50 FPS, or vice versa, playing too slow or too fast in its target language, unless the game's header was changed to indicate PAL versus NTSC, and that's a detail that translators either wouldn't know to change, or would know not to change because it would make the game play differently. Also, isn't NTSC-US the same as NTSC-JP, 59.97 frames per second and 224 lines per frame?

What's a PD?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: surfi80 on March 26, 2014, 11:27:54 pm
Quote
What's a PD?

Post data Nubeleon in Spain is spelled that way.
one pal game at 60 fps?
 Timedevouncer medication that you forgot to take it LOL  ;D  ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: GuyInDogSuit on March 27, 2014, 12:04:40 am
Could you implement a system to change regions (NTSC JP, NTSC US, PAL) in the middle of a game? This would be great for playing PAL games at 60FPS (with German/French/spanish translations).

As Nebuleon stated, it would require changing the header of the game, and that is just not plausible to do on the fly with an emulator. If you want an NTSC game translated to another language, apply the patch to the ROM yourself. ROMHacking.net has tons of translations, most for NTSC ROMs.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Nebuleon on March 27, 2014, 12:21:13 am
Quote
What's a PD?

Post data Nubeleon in Spain is spelled that way.
Hm. Well, that explains it, thanks! I would call it post scriptum (P.S.), as in "after the writing" :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: TimeDevouncer on March 27, 2014, 06:58:20 pm
Quote
It was supposed to be out 2 months ago. It's supposed to be about now. I don't know.

I can't wait to try the triple buffering!!! :-* I hope it comes out soon.

Quote
but Yoshi's Island is much better for it.

Nice!!! ;D


Quote
Please present a game that would benefit significantly from this. edit: Because I don't see how a translation of a 60 FPS game would be 50 FPS, or vice versa, playing too slow or too fast in its target language, unless the game's header was changed to indicate PAL versus NTSC, and that's a detail that translators either wouldn't know to change, or would know not to change because it would make the game play differently. Also, isn't NTSC-US the same as NTSC-JP, 59.97 frames per second and 224 lines per frame?


Maybe I have explained badly (sorry for my bad-bad-bad English ???). One example of this is Terranigma, the PAL version runs sloooowly and the USA version are only in English, but with Dr.PocketSNES for GP2X Wiz I can load the spanish version, change the region, and play this awesome game in spanish and 60fps:
(https://farm6.staticflickr.com/5347/13452056543_d46d6b3f7e_o.png)

Same for Breath of Fire II, Ilusion of Time (Ilusion of Gaia in USA), Secret of Evermore or Lufia II.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: surfi80 on March 27, 2014, 07:33:54 pm
 :-X and I thought that option was not possible  :-X

Mil perdones TimeDeVouncer

;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Nebuleon on March 27, 2014, 07:37:45 pm
Maybe I have explained badly (sorry for my bad-bad-bad English ???). One example of this is Terranigma, the PAL version runs sloooowly and the USA version are only in English, but with Dr.PocketSNES for GP2X Wiz I can load the spanish version, change the region, and play this awesome game in spanish and 60fps:
(https://farm6.staticflickr.com/5347/13452056543_d46d6b3f7e_o.png)

Same for Breath of Fire II, Ilusion of Time (Ilusion of Gaia in USA), Secret of Evermore or Lufia II.
I know, for example, Mario World was changed to use a 16.66% faster Mario in PAL 50 FPS to compensate for the 16.66% speed difference with the frames. So if you forced NTSC on a PAL Mario World, it would actually play 16.66% faster than NTSC Mario World.

You're saying that the Spanish version of all of those RPGs were made to use PAL 50 FPS, after translation from English in NTSC 60 FPS, but they didn't compensate for the frames by making the message speed and walking speed 16.66% faster? And that you'd like to force the games to think they're being output in NTSC 60 FPS?

I guess the setting would be Auto for most games, but changed and saved per-game.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: TimeDevouncer on March 27, 2014, 07:57:04 pm
Maybe I have explained badly (sorry for my bad-bad-bad English ???). One example of this is Terranigma, the PAL version runs sloooowly and the USA version are only in English, but with Dr.PocketSNES for GP2X Wiz I can load the spanish version, change the region, and play this awesome game in spanish and 60fps:
(https://farm6.staticflickr.com/5347/13452056543_d46d6b3f7e_o.png)

Same for Breath of Fire II, Ilusion of Time (Ilusion of Gaia in USA), Secret of Evermore or Lufia II.
I know, for example, Mario World was changed to use a 16.66% faster Mario in PAL 50 FPS to compensate for the 16.66% speed difference with the frames. So if you forced NTSC on a PAL Mario World, it would actually play 16.66% faster than NTSC Mario World.

You're saying that the Spanish version of all of those RPGs were made to use PAL 50 FPS, after translation from English in NTSC 60 FPS, but they didn't compensate for the frames by making the message speed and walking speed 16.66% faster? And that you'd like to force the games to think they're being output in NTSC 60 FPS?

I guess the setting would be Auto for most games, but changed and saved per-game.

You're right, unfortunately most PAL games are not optimized like Mario World or Super Punch Out :(, it's for this I always play to the USA versions, but some games I like to play them translated.

Also, better forget it, I guess it's very difficult and the emulator is already awesome.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Gab1975 on March 27, 2014, 07:59:36 pm
You're saying that the Spanish version of all of those RPGs were made to use PAL 50 FPS, after translation from English in NTSC 60 FPS, but they didn't compensate for the frames by making the message speed and walking speed 16.66% faster? And that you'd like to force the games to think they're being output in NTSC 60 FPS?

Often, during the Megadrive/SNES era the PAL version of the games was made without the appropriate optimizations... you consider that in some cases also the sound playback was 16.66% slower!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: surfi80 on March 27, 2014, 08:06:25 pm
You're saying that the Spanish version of all of those RPGs were made to use PAL 50 FPS, after translation from English in NTSC 60 FPS, but they didn't compensate for the frames by making the message speed and walking speed 16.66% faster? And that you'd like to force the games to think they're being output in NTSC 60 FPS?

Often, during the Megadrive/SNES era the PAL version of the games was made without the appropriate optimizations... you consider that in some cases also the sound playback was 16.66% slower!
I never understood why we go backwards the rest of the world
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: TimeDevouncer on March 27, 2014, 08:25:16 pm
You're saying that the Spanish version of all of those RPGs were made to use PAL 50 FPS, after translation from English in NTSC 60 FPS, but they didn't compensate for the frames by making the message speed and walking speed 16.66% faster? And that you'd like to force the games to think they're being output in NTSC 60 FPS?

Often, during the Megadrive/SNES era the PAL version of the games was made without the appropriate optimizations... you consider that in some cases also the sound playback was 16.66% slower!
I never understood why we go backwards the rest of the world

https://www.youtube.com/watch?v=DYdHUZlb7qs
https://www.youtube.com/watch?v=wXmHgSn6xOs

Terrible ;D ;D, I love Dreamcast because it's console that show me the huge difference between playing at 50 and 60hz :-*
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Nebuleon on March 27, 2014, 08:37:59 pm
<3 quote nesting levels removed ~Nebuleon>
https://www.youtube.com/watch?v=DYdHUZlb7qs

Terrible ;D ;D, I love Dreamcast because it's console that show me the huge difference between playing at 50 and 60hz :-*
Oh my, that Sonic in PAL... Gotta go slow!

Even the timer in seconds is going too slow.

I guess that's what you were saying?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: Gab1975 on March 27, 2014, 11:01:33 pm
I never understood why we go backwards the rest of the world

Now it's different, but at the beginning of the 90s the most software-houses for consoles games were Japanese and USA, then the first version of the games was made in NTSC format... after the games were converted in PAL format, often without any optimization (at the time the European market was secondary for the "consoles business").

PS: Sonic PAL 50 Hz is a clear example of no optimization: active video area vertically compressed, 16,66% of slowdown in the game speed and in the sound playback!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: RupeeClock on March 27, 2014, 11:29:54 pm
Oh my, that Sonic in PAL... Gotta go slow!

Even the timer in seconds is going too slow.

I guess that's what you were saying?

Try comparing the PAL/EU version of Super Mario Bros compared to the US version, the PAL version actually runs very fast to compensate for the 50Hz slowdown.

Also thanks for the new release, always appreciated!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Nebuleon on March 28, 2014, 01:49:26 am
An update to PocketSNES is available as of today in the OP.

It has the following minor changes:
* .fig and .swc files, extensions used by the Super WildCard copier, are now shown in the ROM selector. (Nebuleon, 2014-03-28)
* the FPS counter is now NN/NN instead of FPS: NN/NN, covering a less wide area of the first line of the screen. (hi-ban, 2014-03-24)
* The manual was updated to reflect the date at which the previous update was made (2014-03-23). The date will be proper in the release which will be made for the GCW Zero repository. (Nebuleon, 2014-03-24)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: MightyJAK on March 28, 2014, 04:53:34 am
One example of this is Terranigma, the PAL version runs sloooowly and the USA version are only in English

USA version? Terranigma was never released in USA, the English translation was released for PAL only.

Are you talking about this hack (http://www.romhacking.net/hacks/541/)? From the readme:
Quote
This is a patch to convert the PAL version of Terranigma to NTSC.  It removes
the PAL protections, sets the region to USA, and renames the internal name to
"TERRANIGMA USA" as is Enix's designation for a game released in USA.

It doesn't say this is specifically made for the English PAL rom, maybe you can apply it to your Spanish PAL rom to make a Spanish NTSC rom?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: surfi80 on March 28, 2014, 07:44:15 am
An update to PocketSNES is available as of today in the OP.

It has the following minor changes:
* .fig and .swc files, extensions used by the Super WildCard copier, are now shown in the ROM selector. (Nebuleon, 2014-03-28)
* the FPS counter is now NN/NN instead of FPS: NN/NN, covering a less wide area of the first line of the screen. (hi-ban, 2014-03-24)
* The manual was updated to reflect the date at which the previous update was made (2014-03-23). The date will be proper in the release which will be made for the GCW Zero repository. (Nebuleon, 2014-03-24)

you are the fucking masters of the universe
(http://smilies-gifs.com/adorar-abuchear/7adorar-abuchear.gif)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-23 update]
Post by: TimeDevouncer on March 28, 2014, 06:06:07 pm
One example of this is Terranigma, the PAL version runs sloooowly and the USA version are only in English

USA version? Terranigma was never released in USA, the English translation was released for PAL only.

Are you talking about this hack (http://www.romhacking.net/hacks/541/)? From the readme:
Quote
This is a patch to convert the PAL version of Terranigma to NTSC.  It removes
the PAL protections, sets the region to USA, and renames the internal name to
"TERRANIGMA USA" as is Enix's designation for a game released in USA.

It doesn't say this is specifically made for the English PAL rom, maybe you can apply it to your Spanish PAL rom to make a Spanish NTSC rom?

OMG!!! The USA version I played is the UK with a patch? :o :o, Every day you learn something new ;D.

Thanks for the patch, I will try it right now with my pal-esp game :-*.

Nebuleon, thanks for the update, downloading... ;D

Edit

Ohhh, the patch change the language to english ???, too close :'(
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: gamefreak_joey on March 28, 2014, 06:31:16 pm
<3 quote nesting levels removed ~Nebuleon>
https://www.youtube.com/watch?v=DYdHUZlb7qs

Oh my, that Sonic in PAL... Gotta go slow!

Even the timer in seconds is going too slow.

I guess that's what you were saying?

On the upside, he has more time to react when playing the PAL version! I guess our US version is the Turbo Street Fighter of Sonics?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: GuyInDogSuit on March 29, 2014, 04:44:55 am
On the upside, he has more time to react when playing the PAL version! I guess our US version is the Turbo Street Fighter of Sonics?

Hmmm.... I knew there were some differences between PAL and NTSC games (mainly the image sharpness, if I remember correctly), but not like that, didn't know it was that bad back then. I can't imagine playing the PAL version of Sonic, that sounds hilarious though. Usually I stick to NTSC(-J) when it comes to games. Hadn't noticed any difference playing Terranigma, though then again, there ISN'T a USA version. I often wondered why.


Damn, now I wanna play it again. It was always my favorite of the Soul Blazer trilogy.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Nebuleon on March 29, 2014, 05:26:42 am
The motivation behind PAL and NTSC was to get the images displaying on the screen in sync with the frequency of alternating current (AC) in an area, with North America using 110 ? 10 V @ 60 Hz, and Europe using 230 ? 10 V @ 50 Hz. CRT televisions needed the rising half of each pulse to project the image; the falling half was used to reset the beam. Thus it made sense to synchronise the broadcast standard with the AC frequency.

(o rly? (http://en.wikipedia.org/w/index.php?title=PAL&oldid=595659886#PAL_vs._NTSC))
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Gab1975 on March 29, 2014, 05:49:20 am
The PAL signal compared to the NTSC signal allows a better colours output and an higher max resolution (576 interlaced horizontal lines vs 480 interlaced horizontal lines)*, however the screen refresh-rate is lower, 50 Hz (50 fields/s) vs 59,94 Hz (60 fields/s).
Each field is made of 288 horizontal lines (PAL) or 240 horizontal lines (NTSC), which interchange odd lines and even lines (every single Hz), making the interlaced picture (576i or 480i).

* Actually, the total horizontal lines are 625 (PAL) and 525 (NTSC), but about 49-45 lines aren't visible on the screen.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: GuyInDogSuit on March 29, 2014, 04:03:51 pm
Much wow. Very learned. So amaze.  :P


(http://i1.kym-cdn.com/entries/icons/original/000/013/034/yeahsciencebitch.PNG)


Seriously, though, that was a great explanation. Never knew AC current had anything to do with refresh rates.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Eliwood_san on March 30, 2014, 08:12:04 am
thanks nebuleon  for you great work in the emulator PocketSnes.It would be great if you enable analog stick support on the PocketSnes GCW Zero version
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Prophet on March 30, 2014, 08:52:04 pm
thanks nebuleon  for you great work in the emulator PocketSnes.It would be great if you enable analog stick support on the PocketSnes GCW Zero version

Agreed.

Great emulator though!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Nebuleon on March 30, 2014, 09:34:10 pm
thanks nebuleon  for you great work in the emulator PocketSnes.It would be great if you enable analog stick support on the PocketSnes GCW Zero version
Already answered in #79 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg92186/#msg92186), question 4.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Eliwood_san on April 01, 2014, 02:56:57 am
thanks nebuleon  for you great work in the emulator PocketSnes.It would be great if you enable analog stick support on the PocketSnes GCW Zero version
Already answered in #79 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg92186/#msg92186), question 4.

Thanks sorry for the question i didnt know you post it already....now i will wait for those change on your emulator in my gcw zero.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: TimeDevouncer on April 02, 2014, 06:44:04 pm
For future versions: Would it be possible to fix this?:

(http://i.imgur.com/iHQ68Jt.png)

Romancing SaGa 3 :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Nebuleon on April 02, 2014, 08:08:06 pm
For future versions: Would it be possible to fix this?:

(http://i.imgur.com/iHQ68Jt.png)

Romancing SaGa 3 :)
What you see in Romancing SaGa 3 is already a fix. It's for a problem in games like Secret of Mana (https://github.com/ShadauxCat/CATSFC/issues/28) that have 512 pixels of horizontal resolution edit: Added a link. They can't really be displayed well on a GCW Zero's 320 pixels of horizontal resolution.

How does the same game look on Snes9x/PC?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Jenova on April 03, 2014, 11:00:43 pm
Hey everyone. Newbie here for the GCW Zero... quick question... is it possible to run emulators designed for the GCW Zero, such as this pocketsnes one, on a dingoo a320 with opendingux running? The only reason I ask is due to this being the latest and greatest snes emulator release for a portable.

Thanks, any info. would be appreciated!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-03-28 update]
Post by: Nebuleon on April 03, 2014, 11:29:21 pm
Hey everyone. Newbie here for the GCW Zero... quick question... is it possible to run emulators designed for the GCW Zero, such as this pocketsnes one, on a dingoo a320 with opendingux running? The only reason I ask is due to this being the latest and greatest snes emulator release for a portable.

Thanks, any info. would be appreciated!
Short answer: Yes, but I'm not supporting that.

Long answer:
This release would perform nearly twice as bad as the latest Snes9x 1.39-based PocketSNES release on the Dingoo A320. On the SuperCard DSTwo, with the same processor as the Dingoo A320, Super Mario World only runs at 30 FPS, and Yoshi's Island at 6.

So the 1.43 release is calculated to use just enough CPU time for the GCW Zero, but not any more (or any less).

You can always try compiling this with the Dingoo A320 toolchain, though. Source code is linked to in the OP.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-06 update]
Post by: Nebuleon on April 07, 2014, 12:38:50 am
A new update of PocketSNES is now available to fix one persistent and rather annoying bug.

Until now, the sound would be odd when returning from the menu if the stereo option was set. This included, for example, exiting the menu after loading a saved state. The sound would be missing all notes and echoes that were previously started but not finished.

This is now fixed. However, if you change the sound sampling rate or the stereo option while in the menu (which should be quite rare), the notes and echoes will all stop because of the need to reinitialise Snes9x's audio subsystem.

The link, as always, is in the OP.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-06 update]
Post by: Prophet on April 07, 2014, 01:38:51 am
Thanks. Love this emu.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-06 update]
Post by: surfi80 on April 07, 2014, 08:35:05 am
A new update of PocketSNES is now available to fix one persistent and rather annoying bug.

Until now, the sound would be odd when returning from the menu if the stereo option was set. This included, for example, exiting the menu after loading a saved state. The sound would be missing all notes and echoes that were previously started but not finished.

This is now fixed. However, if you change the sound sampling rate or the stereo option while in the menu (which should be quite rare), the notes and echoes will all stop because of the need to reinitialise Snes9x's audio subsystem.

The link, as always, is in the OP.
wow! another update, great big Nubeleon
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-06 update]
Post by: TimeDevouncer on April 07, 2014, 07:37:02 pm
Oh yeah! Thanks for the update! ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Nebuleon on April 27, 2014, 09:01:34 pm
PocketSNES based on Snes9x 1.43-dev is now in the official repository at http://www.gcw-zero.com/downloads

This build supports the triple-buffering firmware, which has also just been released. Please back up your data and check out the update: http://www.gcw-zero.com/updates

In this release, there were a few minor fixes to the text of the manual, and I have finally added myself to the credits of the application (some would say it was high time for that). Otherwise, it's a build quite similar to April 6.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: RupeeClock on April 27, 2014, 09:33:23 pm
Congrats on the major performance update! Can't wait to give this a spin.

Tested Kirby Super Star briefly before and after update, the intro plays almost full-speed now, the dropped frames aren't noticeable!

Yoshi's Island is actually running full speed, amazing!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: ker on April 27, 2014, 10:07:35 pm
PocketSNES based on Snes9x 1.43-dev is now in the official repository at http://www.gcw-zero.com/downloads

This build supports the triple-buffering firmware, which has also just been released. Please back up your data and check out the update: http://www.gcw-zero.com/updates

In this release, there were a few minor fixes to the text of the manual, and I have finally added myself to the credits of the application (some would say it was high time for that). Otherwise, it's a build quite similar to April 6.

Thank you!!!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Gab1975 on April 27, 2014, 11:33:32 pm
Thanks a lot for the update! :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Atlantis_Risen on April 28, 2014, 12:07:52 am
This build supports the triple-buffering firmware, which has also just been released. Please back up your data and check out the update: http://www.gcw-zero.com/updates

...aaaand, it's gone.  :(
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: wepecko on April 28, 2014, 02:40:02 pm
Thanks to all dev people bringing us this great update. when you guys come to Czech republic, I'm buying a sixpack to each of you  ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: pcercuei on April 28, 2014, 05:03:07 pm
I'm going to Prague in 3 or 4 weeks :p
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: howie_k on April 28, 2014, 06:58:31 pm
And if any of you devs come to London / Essex, the beers are on me :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Nebuleon on April 28, 2014, 07:37:12 pm
This build supports the triple-buffering firmware, which has also just been released. Please back up your data and check out the update: http://www.gcw-zero.com/updates

...aaaand, it's gone.  :(
Yeah. There were unforeseen corruption problems when the firmware was released. mth, pcercuei and I have posted in /GCW Zero/Releases/OpenDingux 2014-04-27 - Brick edition (http://boards.dingoonity.org/gcw-releases/opendingux-2014-04-27/) to try to explain and debug this.

Once we're satisfied that the update can either apply correctly or detect its own corruption, print out an error message, and get back to the state you had your GCW Zero in, I'll post again there, and here.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: sadger on April 29, 2014, 01:20:26 am
Is there a quick save/load function on this version of pocketsnes?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Nebuleon on April 29, 2014, 01:59:01 am
No. In-memory saving requests to the Snes9x core stopped working, and I haven't bothered to modify the saved state code to allow that again. You need to know the size of the state you'll write in advance or use malloc/realloc.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Nebuleon on May 05, 2014, 02:03:01 am
Triple buffering is now implemented in the fixed May 5 update (http://boards.dingoonity.org/gcw-releases/opendingux-update-2014-05-05).

Please see that thread for more information and to download the update. It's applied as usual.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: alyinsanfran on May 08, 2014, 01:56:15 am
Wow, PilotWings (pretty much the only SNES game I play a lot) now runs smoother than I've seen on any platform. And I love PilotWings, so I've got it running on everything. Well done!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: rojapa on May 11, 2014, 05:45:50 pm
I've been using an old version of PocketSNES for awhile and recently updated to the latest version (-20140426) because of the new firmware/triple buffering. When I use this new version my old save states aren't visible to me. Is there a way to fix this? Thanks.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Nebuleon on May 11, 2014, 07:42:29 pm
No. If Snes9x 1.43 saved states are incompatible with 1.39, it's because Snes9x's saved states are highly version-specific and there have been too many changes to the core.

I distinctly remember seeing code to read old saved states in Snes9x, in a file called snaporig.cpp, though. Whether this file is actually being used, I don't know.

As for there being a way to "fix" this: load a saved state using "PocketSNES" (the name of the entry on the GCW Zero download repository), based on Snes9x 1.39, then save the SRAM (battery save) and allow 1.43 to load it. This allows you to carry over one saved state per game.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: TimeDevouncer on May 11, 2014, 08:20:40 pm
This new version with Tripple Buffering is amazing ;D.

Stunt Race FX & Starfox runs perfectly with Frameskip 1, the slowdowns in Final Fantasy VI, Chrono Trigger (some magic like luminaire) or Seiken Densetsu 3 (magics too) are gone, 60 fps with frameskip 0, and Yoshi's Island... YI is one of my favourite games, in other releases runs badly, but now...  :-*
(https://farm8.staticflickr.com/7418/13963519739_13de6062e8_o.png)
(https://farm3.staticflickr.com/2939/13976048158_5dd28ab997_o.png)
I play with frameskip 0, and mostly runs at full speed, the game has a little slowdowns but are few and unimportant, ?So good! :P

The only "problem" is that the top of the screen "flashes" and some objects or effects have a small line of pixels above:

(https://farm8.staticflickr.com/7433/13976025279_6d3e096938_o.png)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Nebuleon on May 11, 2014, 08:29:40 pm
The only "problem" is that the top of the screen "flashes" and some objects or effects have a small line of pixels above:

(https://farm8.staticflickr.com/7433/13976025279_6d3e096938_o.png)

Yeah... Snes9x 1.53 or the most recent Snes9x-Git would show things correctly, but at 15 FPS in Yoshi's Island even with triple-buffering. There are several edge cases of the hardware to emulate properly if you want to show those images right, and they are very CPU expensive.

This new version with Tripple Buffering is amazing ;D.

Stunt Race FX & Starfox runs perfectly with Frameskip 1, the slowdowns in Final Fantasy VI, Chrono Trigger (some magic like luminaire) or Seiken Densetsu 3 (magics too) are gone, 60 fps with frameskip 0, and Yoshi's Island... YI is one of my favourite games, in other releases runs badly, but now...  :-*
(https://farm8.staticflickr.com/7418/13963519739_13de6062e8_o.png)
(https://farm3.staticflickr.com/2939/13976048158_5dd28ab997_o.png)
I play with frameskip 0, and mostly runs at full speed, the game has a little slowdowns but are few and unimportant, ?So good! :P

I like that all of those screenshots show 60 FPS. ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Norghat on May 14, 2014, 02:10:15 pm
Thanks for the last version with the last firmware it's working like a charm!!
But the artifacts in Ys 5 are still here, the screen is flickering a lot in some part of the games making it hardly playable :(

That's the only bad bug i've met during my last playtime =)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Nebuleon on May 14, 2014, 02:25:47 pm
Ah, so you are confirming that one NeoGAF post where Ys V was reported to have fewer graphical artifacts, but not none.

I don't know the cause of this graphical corruption, though.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Norghat on May 15, 2014, 02:08:59 pm
Yep it's a little bit better!
That's confusing, i don t know where this bug come from since it's not in all the game, just in some areas where there is specific monster (armed skeletons if my memories are good). But i'm still at the beginning tho, because of this bug.
I have my savestate in the area where the bugs are and i load it at each new pocketsnes release with a lot of hope (despair follow).  :(
 
I'll try tonight with emulators on my pc to see if the problem is here too or not, and with the unpatched rom too :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-04-26 update]
Post by: Norghat on May 20, 2014, 08:58:47 pm
I totally forgot to post here, i got the same problems with the Japanese version on my gcw, i still have to test on my PC ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Nebuleon on May 23, 2014, 12:09:06 am
A new update for PocketSNES is available.

It incorporates S-DD1 chip decompression ported from snes9x4d via Snes9x 1.5x. This allows Star Ocean, Street Fighter Alpha 2 and derived translations and hacks to run without S-DD1 graphics packs.

It is compiled with gcc 4.9. The build I posted on the PocketSNES Star Ocean issue thread (http://boards.dingoonity.org/gcw-zero-emulation/pocketsnesstar-ocean-issue/) for testing and the previous April build were compiled with gcc 4.8.2. gcc 4.9 applies more optimisations to code it compiles. You may see increased performance in this build, including more FPS in Yoshi's Island's rotating island title screen and other graphically-intensive areas.

For now, it's on my Dropbox. It will soon be in the repository with Surkow's cooperation, identifying as "Snes9x 1.43+SDD1" both in the credits and in the name on the repository. (Thanks for putting up with all these updates, Surkow!) See the link in the OP.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: ker on May 23, 2014, 12:49:58 am
A new update for PocketSNES is available.

It incorporates S-DD1 chip decompression ported from snes9x4d via Snes9x 1.5x. This allows Star Ocean, Street Fighter Alpha 2 and derived translations and hacks to run without S-DD1 graphics packs.

It is compiled with gcc 4.9. The build I posted on the PocketSNES Star Ocean issue thread (http://boards.dingoonity.org/gcw-zero-emulation/pocketsnesstar-ocean-issue/) for testing and the previous April build were compiled with gcc 4.8.2. gcc 4.9 applies more optimisations to code it compiles. You may see increased performance in this build, including more FPS in Yoshi's Island's rotating island title screen and other graphically-intensive areas.

For now, it's on my Dropbox. It will soon be in the repository with Surkow's cooperation, identifying as "Snes9x 1.43+SDD1" both in the credits and in the name on the repository. (Thanks for putting up with all these updates, Surkow!) See the link in the OP.

Thank you!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Atlantis_Risen on May 23, 2014, 01:50:40 am
A new update for PocketSNES is available.

It incorporates S-DD1 chip decompression ported from snes9x4d via Snes9x 1.5x. This allows Star Ocean, Street Fighter Alpha 2 and derived translations and hacks to run without S-DD1 graphics packs.

It is compiled with gcc 4.9. The build I posted on the PocketSNES Star Ocean issue thread (http://boards.dingoonity.org/gcw-zero-emulation/pocketsnesstar-ocean-issue/) for testing and the previous April build were compiled with gcc 4.8.2. gcc 4.9 applies more optimisations to code it compiles. You may see increased performance in this build, including more FPS in Yoshi's Island's rotating island title screen and other graphically-intensive areas.

For now, it's on my Dropbox. It will soon be in the repository with Surkow's cooperation, identifying as "Snes9x 1.43+SDD1" both in the credits and in the name on the repository. (Thanks for putting up with all these updates, Surkow!) See the link in the OP.

Do you have a link to it?  Thank you!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Nebuleon on May 23, 2014, 02:02:58 am
I think I'll just wait some time for you to realise why your question is already answered in the very post you're quoting.

I didn't think four short paragraphs counted as tl;dr these days.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Greetdeath on May 23, 2014, 02:11:21 am
A new update for PocketSNES is available.

It incorporates S-DD1 chip decompression ported from snes9x4d via Snes9x 1.5x. This allows Star Ocean, Street Fighter Alpha 2 and derived translations and hacks to run without S-DD1 graphics packs.

It is compiled with gcc 4.9. The build I posted on the PocketSNES Star Ocean issue thread (http://boards.dingoonity.org/gcw-zero-emulation/pocketsnesstar-ocean-issue/) for testing and the previous April build were compiled with gcc 4.8.2. gcc 4.9 applies more optimisations to code it compiles. You may see increased performance in this build, including more FPS in Yoshi's Island's rotating island title screen and other graphically-intensive areas.

For now, it's on my Dropbox. It will soon be in the repository with Surkow's cooperation, identifying as "Snes9x 1.43+SDD1" both in the credits and in the name on the repository. (Thanks for putting up with all these updates, Surkow!) See the link in the OP.

Thanks for making so great my favorite emu on the zero <3
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Atlantis_Risen on May 23, 2014, 02:14:52 am
I think I'll just wait some time for you to realise why your question is already answered in the very post you're quoting.

I didn't think four short paragraphs counted as tl;dr these days.

I did read it, you said:

 "...The build I posted on the PocketSNES Star Ocean issue thread for testing and the previous April build were compiled with gcc 4.8.2. gcc 4.9 applies more optimisations to code it compiles..." 

I thought that meant there was a third build combining things, I must have completely mis-read your post, sorry.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Orion4874 on May 23, 2014, 06:00:41 am
Hey Nebuleon, I have kind of a crazy question. Could the MSU-1 enhancement be added to Snes9x? If you're not familiar with it it was written by byuu and here's his page regarding it,  http://byuu.org/snes/msu1/

There's only a few projects that take advantage of it but one of them is the laser disk port to the SNES of Super Road Blasters, http://www.dforce3000.de/?p=news&t=msu1

Currently the only emu to support it is bsnes but afaik that emu has never been ported to a handheld device.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Nebuleon on May 23, 2014, 06:19:46 am
Hey Nebuleon, I have kind of a crazy question. Could the MSU-1 enhancement be added to Snes9x? If you're not familiar with it it was written by byuu and here's his page regarding it,  http://byuu.org/snes/msu1/

There's only a few projects that take advantage of it but one of them is the laser disk port to the SNES of Super Road Blasters, http://www.dforce3000.de/?p=news&t=msu1

Currently the only emu to support it is bsnes but afaik that emu has never been ported to a handheld device.
Name the games that use this chip, and tell me whether upstream Snes9x 1.53+ has code to provide emulation for this chip.

edit: That is, games other than this one game, Super Road Blasters...
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Jenova on May 25, 2014, 01:05:33 am
hey everyone. Nebuleon, fantastic work!! It's so cool to see someone working on the SNES emulator all over again on the GCW ZERO. Especially attending to everyone's personal requests & making sure it's the best snes emulator available. I have read these boards & heard such good things, etc.

I plan on getting a GCW ZERO very soon thanks to all the great work that is going on for it. I have one question for everyone... I noticed that on page 1 of this thread, according to the new 5-22-2014 release, that SEIKEN DENSETSU 3 is only 'bootable'...

Could someone elaborate on this for me? Because below on page 1 it shows SECRET OF MANA menu text 'readable'. I recall SEIKEN DENSETSU 3 was tricky to get working on the Dingoo A320 because of it being a hi-res ROM image. In other words, that the text would NOT be able to be read correctly.

On the GCW ZERO and 5-22-14 Pocketsnes release, does anyone know if the text for SEIKEN DENSETSU 3 is readable? I get that it boots, but I was curious if the English translation is readable as well???

Thanks for your time everyone. Happy playing!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: Nebuleon on May 25, 2014, 01:20:18 am
Perhaps not what you could call the most readable, but it's certainly better than what you remember on your Dingoo A320, I think.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: Nebuleon on May 25, 2014, 02:51:58 am
PocketSNES is updated yet again, to implement the unified emulator menu button proposal (http://boards.dingoonity.org/gcw-development/unified-emulator-menu-button-proposal/).

You can now press Power or Start+Select to enter the menu. Other emulators will probably follow suit shortly.

The link, as always, is in the first post.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: FreddyBoubil on May 26, 2014, 02:53:38 pm
Thanks :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: Albert on May 27, 2014, 09:40:29 am
Works great. Nebuleon, you deserve a trophy.

(http://i.imgur.com/QMhMsTb.png)

Or, at least a pizza trophy... Enjoy it while it lasts.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: TimeDevouncer on May 27, 2014, 07:15:22 pm
Thanks for the updates! Star Ocean works and the new "shortcuts" to enter the menu are very comfortable.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: alyinsanfran on May 28, 2014, 12:47:21 am
I'm liking the power slider as menu option. Easy to remember. Thanks for the update!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: Eliwood_san on May 28, 2014, 03:39:03 am
Thanks for the update Nebuleon i hope for the next release have analog joystick support on your emulator...you want to know why i want so bad the analog joystic support in every emulator for the GCW Zero? because my dpad on my gcw zero its not suitable for fighting games so the analog joystic its better for those fighting games.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: Nebuleon on May 28, 2014, 06:28:23 am
Thanks for the update Nebuleon i hope for the next release have analog joystick support on your emulator...you want to know why i want so bad the analog joystic support in every emulator for the GCW Zero? because my dpad on my gcw zero its not suitable for fighting games so the analog joystic its better for those fighting games.
I don't want to add it, paradoxically because analog sticks on the Zero are worse than d-pads when they break. They give random readings which fuck up applications' input even more.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: pcercuei on May 28, 2014, 08:57:25 am
Thanks for the update Nebuleon i hope for the next release have analog joystick support on your emulator...you want to know why i want so bad the analog joystic support in every emulator for the GCW Zero? because my dpad on my gcw zero its not suitable for fighting games so the analog joystic its better for those fighting games.
I don't want to add it, paradoxically because analog sticks on the Zero are worse than d-pads when they break. They give random readings which fuck up applications' input even more.
I strongly suggest that you support them. Because when TV-Out and USB OTG will be available, everybody will complain that they can't play with external joypads.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: hi-ban on May 28, 2014, 07:34:05 pm
Then, just make it an option: "Enable Joystick ON/OFF"
It's the best choice, given that the GCW analog stick is so likely to fail. Mine already gives false readings, making it very difficult to navigate through gmenu2x.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: TimeDevouncer on May 28, 2014, 07:45:50 pm
Quote
"Enable Joystick ON/OFF"

I agree ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: Eliwood_san on May 28, 2014, 10:58:36 pm
Thanks for the update Nebuleon i hope for the next release have analog joystick support on your emulator...you want to know why i want so bad the analog joystic support in every emulator for the GCW Zero? because my dpad on my gcw zero its not suitable for fighting games so the analog joystic its better for those fighting games.
I don't want to add it, paradoxically because analog sticks on the Zero are worse than d-pads when they break. They give random readings which fuck up applications' input even more.

LOL Wut ok i understand your explanation but why on my gcw zero doesnt have those input random readings using the analog joystick? its weird because i can play perfectly in your Regba emulator using the analog joystic.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-24 update]
Post by: Nebuleon on May 28, 2014, 11:37:31 pm
Use it more and it'll break. I'm not just thinking about the present here, I'm thinking about the future. If I add supporting code for the analog nub and it breaks, suddenly every application that uses analog nub input starts acting weird, and instead of "analog now please" you will wish for a build with analog disabled just so you can use the menu which would have the analog nub option!

Or a hack that disables analog system-wide and that you can install as a new kernel or rootfs over FTP because it's gotten so bad that you can't even navigate through gmenu2x, like hi-ban.

Once USB OTG doesn't fry devices and is stable and there are drivers for most common game controllers, I will consider adding support for only external joysticks, because, unlike the analog nub, you can unplug those if they malfunction.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: Nebuleon on June 03, 2014, 08:10:39 am
An updated build of PocketSNES is available in the opening post. It fixes an issue (http://boards.dingoonity.org/gcw-zero-emulation/pocketsnes-%28snes9x-1-43sdd1%29-no-video-sound-only/) described as follows:

When updating to PocketSNES based on Snes9x 1.43 (any build in 2014) from PocketSNES based on Snes9x 1.39 (2013-08), most games refuse to render any video.

Cause: The default value of the Transparency option was OFF in PocketSNES based on Snes9x 1.39. In PocketSNES based on Snes9x 1.43, the default value is ON. If you didn't change the default value of this option while you ran 1.39, the setting will have been kept as OFF. However, 1.43 assigns a different meaning to this setting, which renders nothing in most games if it's OFF.

Resolution: You can either:
* download this version, which ignores bytes 12 to 15 of each ".opt" file, always uses transparency, and removes the option (see code (https://github.com/Nebuleon/PocketSNES/commit/c045501)); or
* for May releases, delete all files ending with ".opt" in /media/data/local/home/.snes96_snapshots; or
* in May releases, set the Transparency setting to ON and save global settings before loading another SNES game.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: trisoret on June 04, 2014, 01:43:13 am
loving the latest update! keep up the great work!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: kuwanger on June 04, 2014, 05:12:38 pm
So, the latest version seems to have an issue with music slowly cutting out in Aero the Acrobat.  Some testing with older versions and the situation has actually improved, as apparently Aero the Acrobat didn't work at all in the past (blank screen) or the music cut out much quicker.  I'm not certain on the cause of any of this, and I don't think I've seen any other game have this issue.  I just thought you might want to know.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: Nebuleon on June 04, 2014, 08:50:52 pm
So, the latest version seems to have an issue with music slowly cutting out in Aero the Acrobat.  Some testing with older versions and the situation has actually improved, as apparently Aero the Acrobat didn't work at all in the past (blank screen) or the music cut out much quicker.  I'm not certain on the cause of any of this, and I don't think I've seen any other game have this issue.  I just thought you might want to know.
Could you be a bit clearer about the versions you tested?

Also do keep in mind that this is a Snes9x 1.43 core, not the most recent one you can have on PC (1.53). The GCW Zero cannot run 1.53 fast enough (http://boards.dingoonity.org/gcw-development/snes9x-1-53-and-git-slow-as-i-expected/). 1.43's audio emulation core is not sufficiently accurate for some games, like ActRaiser, and possibly Aero the Acrobat.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: kuwanger on June 05, 2014, 06:56:48 am

Could you be a bit clearer about the versions you tested?

First, this is all on the OpenDingux 2014-05-05 firmware, just in case that matters.

I tried PocketSNES-20140101-1.opk which gives a black screen--more precisely, the FPS counter still shows, but the game itself doesn't seem to work.

With PocketSNES-20140406-1.opk, PocketSNES-20140426.opk, PocketSNES-20140522.opk, and PocketSNES-20140603.opk, the music in Aero the Acrobat is fine until you jump on a set of spikes.  Whenever you die that way (at least), you emit a voice "youch" of pain which I presume is actually being played over one of the "unused" SPC channels.  For whatever reason, though, the channel is not being properly reset.  So, jumping on the spikes quickly 3 or 4 times and you can pretty reliably mute the music. :)

I've tried the same thing with zsnes 1.510 and higan 092 and Aero the Acrobat doesn't have any music muting.

Quote
Also do keep in mind that this is a Snes9x 1.43 core, not the most recent one you can have on PC (1.53). The GCW Zero cannot run 1.53 fast enough. 1.43's audio emulation core is not sufficiently accurate for some games, like ActRaiser, and possibly Aero the Acrobat.

I've checked the Windows version of Snes9x 1.43 and it doesn't seem to have the music glitch either.  So, I presume it's not per-se a 1.43 core issue.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: Nebuleon on June 05, 2014, 08:07:26 am

a) First, this is all on the OpenDingux 2014-05-05 firmware, just in case that matters.

b) I tried PocketSNES-20140101-1.opk which gives a black screen--more precisely, the FPS counter still shows, but the game itself doesn't seem to work.

c) With PocketSNES-20140406-1.opk, PocketSNES-20140426.opk, PocketSNES-20140522.opk, and PocketSNES-20140603.opk, the music in Aero the Acrobat is fine until you jump on a set of spikes.  Whenever you die that way (at least), you emit a voice "youch" of pain which I presume is actually being played over one of the "unused" SPC channels.  For whatever reason, though, the channel is not being properly reset.  So, jumping on the spikes quickly 3 or 4 times and you can pretty reliably mute the music. :)

d) I've tried the same thing with zsnes 1.510 and higan 092 and Aero the Acrobat doesn't have any music muting.

e) I've checked the Windows version of Snes9x 1.43 and it doesn't seem to have the music glitch either.  So, I presume it's not per-se a 1.43 core issue.
a) Mk - well, it doesn't matter, but thanks for confirming you are on the most recent firmware :)

b) / c) Mk. Maybe this is because of a partial fix for the "must select a game twice for it to start once" glitch that affected some games, or the "audio is reinitialised when exiting from the menu" frontend glitch. I thought both of those were fully fixed, but I don't know.

d) higan getting it right is a given, but if even ZSNES gets it right, then I might have a problem indeed.

e) Very well, and the version of Snes9x core I added to PocketSNES is pretty heavily modified from something that identifies itself as "Snes9x 1.43-dev", which may have broken that one specific game after 1.43. Perhaps you might see the problem in the original project, CATSFC: https://github.com/ShadauxCat/CATSFC/commits/master

Or perhaps you could put an unmodified Snes9x 1.43 core into PocketSNES and test out Aero the Acrobat on it, but do note that I had to make fixes for high-resolution SNES games on top.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: tcleary73 on June 06, 2014, 03:54:04 pm
Hey nebuleon, been having a minor GUI issue in the last couple builds...I'm uploading an example video to youtube right now.

Basically when you press up or down and then 'a' in quick succession it skips up an extra category akin to pressing whatever direction twice. It can be annoying because 'saved states' and 'reset game' are next to each other, but not the end of the world at all :D

EDIT: https://www.youtube.com/watch?v=fxV81TUoTJs

Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: Nebuleon on June 06, 2014, 08:18:49 pm
Hey nebuleon, been having a minor GUI issue in the last couple builds...I'm uploading an example video to youtube right now.

Basically when you press up or down and then 'a' in quick succession it skips up an extra category akin to pressing whatever direction twice. It can be annoying because 'saved states' and 'reset game' are next to each other, but not the end of the world at all :D

EDIT: https://www.youtube.com/watch?v=fxV81TUoTJs
Yeah, that's an odd little interface bug which has been there since August 2013 and maybe even before (in the Dingoo A320 builds). Because you hold your D-pad direction beyond the A button, PocketSNES considers that you are pressing the button again before the autorepeat.

ReGBA does it right, but it's because the GUI code was designed for it from the start, with button overlap priorities, cancelling, waiting for released buttons and all that. I'll see if I can do similar code in PocketSNES.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: DPA09 on June 06, 2014, 08:35:52 pm
First, thanks for the updates - much appreciated.

Being able to play SuperBomberman is a blast - not as much fun with the multi-tap and three other people, but still pretty damn fun.

It is okay to copy over the new version or do we have to delete traces of the old version?

I'm guessing we don't have to do anything special as the program runs fine but it is okay to delete the old .opk files?

And while I'm asking questions, how do I access the previews?  I copied them where I'm supposed to but I'm not sure where they're supposed to be viewable?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: Nebuleon on June 06, 2014, 09:35:19 pm
First, thanks for the updates - much appreciated.

a) Being able to play SuperBomberman is a blast - not as much fun with the multi-tap and three other people, but still pretty damn fun.

b) It is okay to copy over the new version or do we have to delete traces of the old version?

c) I'm guessing we don't have to do anything special as the program runs fine but it is okay to delete the old .opk files?

d) And while I'm asking questions, how do I access the previews?  I copied them where I'm supposed to but I'm not sure where they're supposed to be viewable?
a) Super Bomberman 5 is my favourite Bomberman, having played it over a LAN using ZSNES a few years back, and its title screen was my benchmark of performance for semi-difficult games to emulate on the Supercard DSTwo :) I'm glad you enjoy it.

b, c) Leaving older opk builds on your GCW Zero is harmless, but it does make all the icons be identical (a SNES Control Deck with PocketSNES written below), which would confuse you as to which version you're launching. So I recommend deleting all of them and writing the most recent one.

d) A preview is displayed behind the file selector whenever the file selector's selection cursor is on a ROM you have a preview for. The preview pack by hi-ban has images for like-named ROMs in the No-Intro ROM database (for example, 'Super Mario World (USA).<extension>', and not 'SMW.<extension>' or 'Super Mario World (U) [!].<extension>'). You can rename your ROMs so that their file names match their No-Intro name with their usual extension.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: Nebuleon on June 07, 2014, 01:21:40 am
Hey nebuleon, been having a minor GUI issue in the last couple builds...I'm uploading an example video to youtube right now.

Basically when you press up or down and then 'a' in quick succession it skips up an extra category akin to pressing whatever direction twice. It can be annoying because 'saved states' and 'reset game' are next to each other, but not the end of the world at all :D

EDIT: https://www.youtube.com/watch?v=fxV81TUoTJs
For that bug, please test this OPK: link now in the original post

Tell me if the entire menu behaves correctly, including loading ROMs, loading and saving states, and changing settings.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-03 update]
Post by: tcleary73 on June 07, 2014, 03:10:25 am
Kudos for the reply and then the fix! everything is working, roms states and settings all functioning no more messed up controls.

You're the best!  Keep it up man ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: Nebuleon on June 07, 2014, 08:02:26 am
Then this can be an official release for everyone to get. Thanks for testing, tcleary73. :)

The link, as always, in the original post.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: TimeDevouncer on June 07, 2014, 12:04:39 pm
Thanks for this last update  ;), this bug has also happened to me once, glad it has been solved ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: spinmaster on June 07, 2014, 04:43:14 pm
Great Update, thanks Nebuleon!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: TimeDevouncer on June 08, 2014, 09:39:19 am
Nebuleon, Secret of Evermore (EUR-Spa) has serious sound errors, do you think it could be solved?

Thanks ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: Nebuleon on June 08, 2014, 10:04:51 am
Nebuleon, Secret of Evermore (EUR-Spa) has serious sound errors, do you think it could be solved?

Thanks ;)
Only by bringing in the sound core from Snes9x 1.53 (http://boards.dingoonity.org/gcw-development/snes9x-1-53-and-git-slow-as-i-expected/), which requires very strict timing which is provided by the CPU and PPU emulation code, which requires the saved state format to change, and by that point you might as well call it Snes9x 1.53. It's also too slow for the GCW Zero.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: TimeDevouncer on June 08, 2014, 10:15:48 am
Oh, no solution so?Too bad! :'(

Thanks for the info  ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: Nebuleon on June 08, 2014, 10:36:58 am
I think I have said this a few times now, and this alone might merit a new thread in /GCW Zero/Emulation...

But!

Emulation authors do not "fix games" individually, and any line of code written by an emulation author (i.e. not me) cannot be considered, either together or in isolation, to be a "fix" for any single game.

The code fixes the emulator so that it may provide an execution environment closer to the real hardware, which in turn happens to make more games run. In some cases, where the cause is known and disjoint enough from the rest of the emulated system (e.g. SNES special chips like the SDD1, SA1 or SuperFX chips, for Star Ocean, Super Mario RPG, Star Fox, Yoshi's Island etc.), adding the new emulation code makes sense.

But when you alter timings for the chips or the timings for the synchronisation between them, you become unable to tell which line of code improves which specific game at all. By that point, any hardware edge-cases that are required for certain games to run require very high amounts of CPU power to emulate.

I can only guess that Secret of Evermore requires APU (Audio Processing Unit) emulation code which requires the CPU-APU timing to be perfect, like Earthworm Jim. For that, the CPU core needs to be improved, because the CPU and the APU can communicate. Similarly, the CPU and the PPU (Picture Processing Unit) work together, because vertical and horizontal retrace timings depend highly on the CPU's timings. So you improve the timing of the PPU too.

To get an execution environment that is accurate enough to run that one game, you need to basically replace the entire emulator. You put emulation code for more and more hardware timings and edge-cases -- but this happens to "fix" more and more games. Including that one game you want, which, like all games, now runs slow.

That's the "fix" for your game.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: TimeDevouncer on June 08, 2014, 03:39:01 pm
Quote
I can only guess that Secret of Evermore requires APU (Audio Processing Unit) emulation code which requires the CPU-APU timing to be perfect, like Earthworm Jim. For that, the CPU core needs to be improved, because the CPU and the APU can communicate. Similarly, the CPU and the PPU (Picture Processing Unit) work together, because vertical and horizontal retrace timings depend highly on the CPU's timings. So you improve the timing of the PPU too.

Oh my god! Sounds complicated :o.

It's a shame the 1.53 go so slow :'(, but the truth is that the current version generally works very well, I'm very happy with this emulator and I completed many games with him :P, but if you don't mind, I'd keep putting the small bugs or incompatibilities finds.

Thanks for the info again ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: Eliwood_san on June 12, 2014, 04:00:16 am
Nebuleon Im reporting in your last update on PocketSnes emulator  i encounter a bug graphics in a snes game.The game name is ultimate fighter...when you try to play on stage 1 in one minute you get a black screen and you cant pass the stage 1.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: Eliwood_san on June 14, 2014, 05:17:12 am
I uploaded a video about the graphics error on the game named: Ultimate Fighter

https://www.youtube.com/watch?v=N6kxSJYzFzg&feature=youtu.be (https://www.youtube.com/watch?v=N6kxSJYzFzg&feature=youtu.be)

Edit:Sorry for the inconvenience...Now the video is public for everyone.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: toto on June 14, 2014, 12:37:36 pm
Try another rom version, I tried "UltimateFighter(U).smc" and it run perfect!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: Eliwood_san on June 15, 2014, 05:57:37 am
Try another rom version, I tried "UltimateFighter(U).smc" and it run perfect!

Thanks i will try that version of the Ultimate Figher.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: Eliwood_san on June 18, 2014, 02:36:44 am
I tested the rom you suggest toto and i have the same bug,maybe i need to delete the pocketsnes folder anyone tell me where is located the folder of the pocketsnes emulator?

Edit:I delete snes96 folder &pocketsnes opk and i installed again the opk pocketsnes...still have the bug black screen in ultimate fighter...i hope nebuleon gets a fix with this game thanks and waiting for a reply.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-06-06 update]
Post by: Nebuleon on June 18, 2014, 05:26:54 pm
See #244 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg106938/#msg106938).

I do get this bug, but don't know what it's from.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-07 update]
Post by: Nebuleon on August 08, 2014, 10:40:19 pm
PocketSNES August 7, the Funky Glitch edition, is now available.

This edition is so named because you can now hear the music of the Funky level in Super Mario World with it, even if it has been sped up 9 times. It is the result of Emulation/What are the odds of getting perfect SNES sound emulation? (http://boards.dingoonity.org/gcw-zero-emulation/what-are-the-odds-of-getting-%27perfect%27-snes-sound-emulation/).

Major changes:
* A data race that constantly caused notes to lengthen, shorten or be deleted is fixed. This restores the quality of short sound effects in all games.
* CPU usage is reduced for games that reach 60 FPS; now PocketSNES sleeps while audio buffers are being emptied.
* Vsync timing is more consistent.

As usual, the link is in the OP.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-07 update]
Post by: raygan on August 09, 2014, 05:59:23 pm
This is phenomenal. Thanks Nebulon and any other contributors.

I have a quick question/feature request. Is it possible to map the D-pad to the analog nub? I know it's heresy, but for long play sessions I find the analog stick a bit more comfortable.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-07 update]
Post by: Nebuleon on August 09, 2014, 08:51:13 pm
This is phenomenal. Thanks Nebulon and any other contributors.

I have a quick question/feature request. Is it possible to map the D-pad to the analog nub? I know it's heresy, but for long play sessions I find the analog stick a bit more comfortable.
This discussion already started at #219 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg106093/#msg106093).
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-07 update]
Post by: raygan on August 09, 2014, 09:22:15 pm
Ah thanks; sorry I missed that discussion.

I think it's pretty strange not to even present the option, but I understand your reasoning. As somebody who isn't opposed to performing repairs if things break and who has two spare Zeros (don't ask) my preference would be to risk it and enable Analog, but I respect your decision. Your app, your rules.

Thanks again.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Nebuleon on August 21, 2014, 09:14:49 am
A new release of PocketSNES (August 21) is available. Before updating to it, please get the August 20 firmware (http://boards.dingoonity.org/gcw-releases/opendingux-update-2014-08-20/).

In cooperation with the new firmware, the following new features are available:

* Hardware scaling, if the Fullscreen option is set to HARDWARE.
* The file selector in PocketSNES has been removed. gmenu2x's selector, which has been massively improved, is now used.

Give it a try! The link is in the OP. :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: ruffnutts on August 21, 2014, 09:24:42 am
Nice one thanks Neb ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: surfi80 on August 21, 2014, 09:32:48 am
machine  thanks  ;) ;) ;)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Wheatability on August 21, 2014, 01:26:11 pm
With the new hardware scaling update for pocketsnes, I'm not sure if the scaling is working properly. Hardware scaling works great on ReGBA, but in pocketsnes, it seems like the size is the exact same as when NONE scaling is applied for all games that I've tested. The only difference is with HARDWARE, the image is slightly fuzzier. Seems to work great for fullscreen scaling on ReGBA, not sure if I'm doing something wrong with this new version of pocketsnes (8-21)....
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: pcercuei on August 21, 2014, 01:32:33 pm
Press Power+A
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Gab1975 on August 21, 2014, 02:20:57 pm
With the new hardware scaling update for pocketsnes, I'm not sure if the scaling is working properly. Hardware scaling works great on ReGBA, but in pocketsnes, it seems like the size is the exact same as when NONE scaling is applied for all games that I've tested. The only difference is with HARDWARE, the image is slightly fuzzier. Seems to work great for fullscreen scaling on ReGBA, not sure if I'm doing something wrong with this new version of pocketsnes (8-21)....

As far As I can see, the hardware scaling keeps the image aspect ratio... the SNES native resolution is 256x224px (NTSC) or 256x239px (PAL), so, when you use the rescaling, it becomes 274x240px with NTSC games and it should be kept more or less unchanged with PAL games... this is probably the reason because you don't see a relevant difference in the screen size...
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Wheatability on August 21, 2014, 02:56:46 pm
Thanks for the explanation  :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Jenova on August 21, 2014, 05:10:15 pm
Thanks Nebuleon! As always, you are a gentleman and a scholar.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: iames85 on August 21, 2014, 07:05:34 pm
* The file selector in PocketSNES has been removed. gmenu2x's selector, which has been massively improved, is now used.


One question. I am a bit confused. As I don't have my GCW Zero right now, does this mean the file selector hi-ban made has gone now? And previews of games are no longer usable for the file selctor?
If so why was it removed?

Thanks for all your hard work Nebuleon.  :)

Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: raygan on August 21, 2014, 07:12:15 pm
It looks like GMenu2x's file browser now has the same preview function. From the release notes:

Quote
Preview images (such as screenshots or cover art for game ROMs) are shown semi-transparently full screen behind the file list. Preview images should be placed in a directory named previews below the directory containing the data files, where the preview image has the same file name as the corresponding data file, but with the file extension .png. For example for my-favorite-game.rom the preview image would be previews/my-favorite-game.png.

I like this change as it is a move toward standardization, but I will miss the way that the old file selector would automatically re-position you at whichever game you previously had selected. It made it much easier to re-open a game that I had previously been in without having to hunt the list for it.

On that note, I've been meaning to ask: does anyone know how to create a link in gMenu2x that would run a specific SNES or other emulated game directly, bypassing the selector browser? Is that possible?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Nebuleon on August 21, 2014, 08:15:22 pm
With the new hardware scaling update for pocketsnes, I'm not sure if the scaling is working properly. Hardware scaling works great on ReGBA, but in pocketsnes, it seems like the size is the exact same as when NONE scaling is applied for all games that I've tested. The only difference is with HARDWARE, the image is slightly fuzzier. Seems to work great for fullscreen scaling on ReGBA, not sure if I'm doing something wrong with this new version of pocketsnes (8-21)....

As far As I can see, the hardware scaling keeps the image aspect ratio... the SNES native resolution is 256x224px (NTSC) or 256x239px (PAL), so, when you use the rescaling, it becomes 274x240px with NTSC games and it should be kept more or less unchanged with PAL games... this is probably the reason because you don't see a relevant difference in the screen size...
And regardless of the size, you can press Power+A to switch between filling the screen completely, or filling the screen as much as possible while keeping the aspect ratio.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Nebuleon on August 21, 2014, 08:20:19 pm
<snip>
I like this change as it is a move toward standardization, but I will miss the way that the old file selector would automatically re-position you at whichever game you previously had selected. It made it much easier to re-open a game that I had previously been in without having to hunt the list for it.
<snip>
I agree, and I would like feedback in this thread about this: Development/gmenu2x file browser changes (http://boards.dingoonity.org/gcw-development/gmenu2x-file-browser-changes/). If this is a feature that can be done once (in gmenu2x) and implemented for all applications, that is better than spending time "fixing" all the custom ROM selectors out there, which don't really need to be custom.

Preview support in gmenu2x is a step towards that. You can now just dump your preview folder next to your ROMs, and name the folder "previews". You could even find or make a new 320x240 SNES box art pack, really. (If you make such a pack, please give a permalink so I can put it in the OP.)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: CSX on August 21, 2014, 10:12:52 pm
On that note, I've been meaning to ask: does anyone know how to create a link in gMenu2x that would run a specific SNES or other emulated game directly, bypassing the selector browser? Is that possible?

This would be a great feature!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Nebuleon on August 21, 2014, 10:14:13 pm
A second update is available today, to fix a crasher reported by hi-ban (thanks for reporting :) )

Super Mario World, PAL version, would crash upon attempting to draw the "Nintendo Presents" title screen due to memory corruption. Other PAL games could be affected.

The link is, as always, in the OP.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Nebuleon on August 21, 2014, 10:15:52 pm
On that note, I've been meaning to ask: does anyone know how to create a link in gMenu2x that would run a specific SNES or other emulated game directly, bypassing the selector browser? Is that possible?

This would be a great feature!
-> Development/gmenu2x file browser changes (http://boards.dingoonity.org/gcw-development/gmenu2x-file-browser-changes/) to discuss this, please :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on August 24, 2014, 02:29:54 am
Alright, so my updates on August 21 didn't account for the possibility of resetting the game or loading a saved state that has a different resolution than the screen that's currently displayed. hi-ban kept reporting crashes in those cases.

The August 24 release solves that problem by setting the video mode correctly even if the height was changed from 224 to 239 or vice-versa across a reset or the loading of a saved state, as seen in commit 985969a (https://github.com/Nebuleon/PocketSNES/commit/985969a).

If possible, I would like more testing to be done on it with PAL games and the fullscreen option set to HARDWARE (press Power+A to fill your screen if you don't like that it doesn't appear to resize).

The link, as always, is in the OP.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: hi-ban on August 24, 2014, 02:47:03 am
(press Power+A to fill your screen if you don't like that it doesn't appear to resize).

And if it bothers you too much to have to press power+A every time you want to use fullscreen, you can request an proper option for this in the pocketsnes menu.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: DPA09 on September 29, 2014, 05:20:13 pm
First, Nebuleon thanks for your work - much appreciated.

I was kinda bummed that the preview screens in the back are gone - is it still possible to have them?

I actually thought the program worked great before and for me personally, I was content with the screen size.

Are there any problems with running two versions of PocketSNES - the old and the new? 
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Fluxchar on September 29, 2014, 10:45:45 pm
I would love to use this emu (is it on GCw main download page?) but it wont run my favorite homebrew game, battle kid 2. It just sits at a grey screen... i havent used it in awhile but  i remember it working great. i have to use FceuX i think and the sound is HORRIBLE!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: hi-ban on September 29, 2014, 10:53:10 pm
I would love to use this emu (is it on GCw main download page?) but it wont run my favorite homebrew game, battle kid 2. It just sits at a grey screen... i havent used it in awhile but  i remember it working great. i have to use FceuX i think and the sound is HORRIBLE!

PocketSNES is a SNES emulator. Battle Kid 2 is a NES game as far as i know.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Nebuleon on September 30, 2014, 12:10:04 am
First, Nebuleon thanks for your work - much appreciated.

I was kinda bummed that the preview screens in the back are gone - is it still possible to have them?

I actually thought the program worked great before and for me personally, I was content with the screen size.

Are there any problems with running two versions of PocketSNES - the old and the new?
Previews can still be shown: you need to have the preview file at 'previews/NAME.png' relative to the ROM, so have a 'previews' folder next to your ROMs and have "Whatever.png" for "Whatever.smc" (or sfc, or zip).

If you still have the preview pack at ~/.snes96_snapshots/previews/, just move the previews folder. I did this in gmenu2x for standardisation (every application can use the same previews scheme) and to avoid needing to use a dot-folder (.snes96_snapshots) to store previews.

addendum: As for running old versions of PocketSNES, I don't recommend this simply because the core has gotten improvements, so by running old versions you risk losing saved state compatibility and some games will not start or will be garbled (see the OP for the list); additionally, you will be unable to use future improvements, if any.

If you have an issue with the file browser, please raise it at /GCW Zero/Development/gmenu2x file browser changes (http://boards.dingoonity.org/gcw-development/gmenu2x-file-browser-changes/). Maybe you'd want to compile a 320x240 SNES box art pack instead? I'd gladly put that in the OP.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on September 30, 2014, 12:28:13 am
I would love to use this emu (is it on GCw main download page?) but it wont run my favorite homebrew game, battle kid 2. It just sits at a grey screen... i havent used it in awhile but  i remember it working great. i have to use FceuX i think and the sound is HORRIBLE!
That is outside the scope of this thread, about PocketSNES. Please see FCEUX 2.2.2 (http://boards.dingoonity.org/gcw-releases/fceux-2-2-2/).
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-21 update]
Post by: Nebuleon on October 02, 2014, 06:34:57 am
I actually thought the program worked great before and for me personally, I was content with the screen size.
How about this?: https://dl.dropboxusercontent.com/u/106475413/dingoonity/snes-previews.zip

Extract that in a 'previews' folder next to your games. It's derived from the Hyperspin-FE preview pack for SNES, batch-resized using the following commands on my computer if you're interested:
Code: [Select]
mkdir conv
for f in *.png; do convert "$f" -filter lanczos -resize 320x240+0+0 "conv/$f"; done
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: lithium210 on October 03, 2014, 02:43:55 am
@Nebuleon

How do you remove the translucent effect on the previews? I resized mine so they show on the top right corner as I scroll through the list.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on October 03, 2014, 03:02:42 am
You don't.

It's that way because some previews are really "busy" (e.g. colorful, high contrast) and the text becomes unreadable on them, and also because if the preview is shown at full opacity, the text all disappears.

Bring that up on the gmenu2x thread, though. Previews are not shown by PocketSNES.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Sivarticus on October 10, 2014, 12:46:49 pm
I noticed in MK3 that the audio tends to reverberate, especially the gong noise in the main menu. I tried fiddling around with the audio settings, but nothing seemed to do anything. Any ideas? Bad rom maybe?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: DPA09 on October 11, 2014, 06:41:02 pm
I copied the preview folder to my external SD card where my roms are located.

I just have them in a folder called "previews."

The image names match the game file names exactly and the images line up with the games in the older version of PocketSNES.

Do you have to copy the previews folder somewhere else or something different?

Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: yonif on October 13, 2014, 07:19:42 pm
Hi Nebuleon.

Quote
* The file selector in PocketSNES has been removed. gmenu2x's selector, which has been massively improved, is now used.

I understand the fact to harmonize all the emulators and the decision to remove the previous menu to select roms.
But this time, and especially for this emulator, I must admit that I regret this decision and I miss the old rom selector that I really think more easy and convenient to use.
In my opinion, this new release is a regression on this aspect.
Also, I think the way gmenu is managing the previews screenshots is really bad compared to what we had before.
I use several folders for roms with differents roms for each folder and before this new lot, I did not have to care about where I should put the png files and which ones. This is very painful now.
Anyxay. I think you understand, I would be very happy if you could give us the choice of what file selector we want to use.
Except this, I really think the emulator is great and by far the best I used on a portable device.


Thanks again.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on October 13, 2014, 07:32:35 pm
Hi Nebuleon.

Quote
* The file selector in PocketSNES has been removed. gmenu2x's selector, which has been massively improved, is now used.

I understand the fact to harmonize all the emulators and the decision to remove the previous menu to select roms.
But this time, and especially for this emulator, I must admit that I regret this decision and I miss the old rom selector that I really think more easy and convenient to use.
In my opinion, this new release is a regression on this aspect.
Also, I think the way gmenu is managing the previews screenshots is really bad compared to what we had before.
I use several folders for roms with differents roms for each folder and before this new lot, I did not have to care about where I should put the png files and which ones. This is very painful now.
Anyxay. I think you understand, I would be very happy if you could give us the choice of what file selector we want to use.
Except this, I really think the emulator is great and by far the best I used on a portable device.


Thanks again.
Another user would come along and say this for another emulator, "just for that emulator", and would call it a regression.

Then you're back to every emulator having a different interface, all of them getting into a new ROM a different way, crashing with filenames containing characters that gmenu2x handles fine, and all that.

addendum: You also have things like PocketSNES's old selector which saved your selection as an integer among the file list of the last directory, and would crash if you reorganised files and the file count dropped too much.

Then you have the fact that each browser has different code, and if something has to be "fixed" in one, or there's a feature request for one, then it has to be done for all of them, and none of them have similar code.

Then you have the fact that each selector has to do error handling, like "SD card popped out -> directory doesn't exist anymore" (which is something that had to be fixed for PocketSNES, then OhBoy, then FCEUX), "file deleted, inaccessible or unreadable".

Then you have the fact that some ROM browsers treat some buttons as some action, and others don't; for example, would you rather memorise that B in OhBoy is to exit the browser and B in ReGBA or FCEUX or whatever-the-fuck is to go up to the parent directory? Would you rather memorise that you press Start to choose a file in Picodrive (I dunno the real button here but this is just an example) and A to choose it elsewhere? Would you rather use one control scheme for all of them? With custom browsers, f you want uniformity, you have to edit each application.

Then you have the fact that many users are confused by dot-folders (like .snes96_snapshots), and most people who use external cards would rather pop a card in and not have to send previews separately to the internal memory. It's convenience of a "prepared for GCW Zero card" versus having it in internal memory that is more difficult to transfer.

Then you have the fact that each application has its own page scrolling button, mechanism and frequency, and gmenu2x as of August 2014 has a user-settable button repeat rate for page scrolling. FCEUX has received a patch from user 'failed' to set its page scrolling frequency to 100 milliseconds because the previous frequency was too slow, and some said that was still too slow, while others said it was now too fast! And it was close to being called a regression!

So the solution is to do it right, do it once, not have to maintain multiple shitty crashy in-application browsers, and provide enough user settings.

Again, if you take issue with gmenu2x, please post in the gmenu2x file browser changes (http://boards.dingoonity.org/gcw-development/gmenu2x-file-browser-changes/) thread.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: yonif on October 13, 2014, 07:52:39 pm
Hi Nebuleon.

Quote
* The file selector in PocketSNES has been removed. gmenu2x's selector, which has been massively improved, is now used.

I understand the fact to harmonize all the emulators and the decision to remove the previous menu to select roms.
But this time, and especially for this emulator, I must admit that I regret this decision and I miss the old rom selector that I really think more easy and convenient to use.
In my opinion, this new release is a regression on this aspect.
Also, I think the way gmenu is managing the previews screenshots is really bad compared to what we had before.
I use several folders for roms with differents roms for each folder and before this new lot, I did not have to care about where I should put the png files and which ones. This is very painful now.
Anyxay. I think you understand, I would be very happy if you could give us the choice of what file selector we want to use.
Except this, I really think the emulator is great and by far the best I used on a portable device.


Thanks again.
Another user would come along and say this for another emulator, "just for that emulator", and would call it a regression. Then you're back to every emulator having a different interface, all of them getting into a new ROM a different way, crashing with filenames containing characters that gmenu2x handles fine, and all that.

Again, if you take issue with gmenu2x, please post in the gmenu2x file browser changes (http://boards.dingoonity.org/gcw-development/gmenu2x-file-browser-changes/) thread.


Again Nebuleon, please do not take the word "regression" as an offence (I work in IT and I know how negative this word can sound); I am only talking from a user experience perspective.
The approach for harmonization is really understandable.

This said, I was saying and I want to say again that your old menu (I guess you developed it) was by far better that we have now.
It was faster (but it is indeed better with 20 repetitions), more confortable (due to the fact it did not use triggers buttons), more convenient for screenshots management (in my opinion), and more good looking.

Perhaps, gmenu2x even with his last improvments is not yet good enough to switch or maybe (and this would be really great from my point of view) you should for the moment, let the user choose his file selector (in the config file ? in the settings option ?). At least, until gmenu2x win unanimous support.
I think I would have had the same feeling if the file selector was removed from ohboy or Picodrive for instance.

Again, I would like to thank you for your work that I really admire.
And by the way, I will also propose improvments and evolutions for gmenu2x in the dedicated thread.

PS : tu parles fran?ais ?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on October 13, 2014, 08:46:46 pm
I've edited my post after your reply, not seeing your reply until I was done. Whoops. (You can go read the previous post again after this.) :)
a) Again Nebuleon, please do not take the word "regression" as an offence (I work in IT and I know how negative this word can sound); I am only talking from a user experience perspective.
The approach for harmonization is really understandable.

b) This said, I was saying and I want to say again that your old menu (c) I guess you developed it) was by far better that we have now.
It was faster (but it is indeed better with 20 repetitions), more confortable (due to the fact it did not use triggers buttons), more convenient for screenshots management (in my opinion), and more good looking.

Perhaps, gmenu2x even with his last improvments is not yet good enough to switch or maybe (and this would be really great from my point of view) you should for the moment, let the user choose his file selector (in the config file ? in the settings option ?). At least, until gmenu2x win unanimous support.
d) I think I would have had the same feeling if the file selector was removed from ohboy or Picodrive for instance.

Again, I would like to thank you for your work that I really admire.
And by the way, I will also propose improvments and evolutions for gmenu2x in the dedicated thread.

e) PS : tu parles fran?ais ?
a) I took regression in the same sense, which is "a negative change to the core functionality of an application, which makes it completely unusable in many critical scenarios". A user interface change is rarely qualified as a regression, only in certain circumstances like two menu options getting the same mnemonic (e.g. Alt+A launches Replace All or Save All at random in an application). So I took your post as an insult not really an insult, I guess, but with more meaning than you intended.

c) Nope, that was an in-application menu and browser that both existed before my changes.

b) I'd argue otherwise, except for the good speed. The fixed-width font means that way more space is required for file names, so they all cut off sooner. I hated having Mario World ROM hacks starting with "Super Mario World - ", because that left like 8 characters for the actual name of the hack. You had to go to the '..' entry to go up a directory, because no button served the purpose of "go up a directory". I had to fix the bug whereby removing an SD card would crash PocketSNES because it couldn't read the last saved directory. Etc.

I agree with you about the shoulder buttons/triggers, though. They shouldn't be needed, and the grip on them is sometimes odd for differently-sized hands.

d) I used gmenu2x's browser in ReGBA from the start, because I didn't want to have to implement a browser from scratch and have it called a regression because it crashes. Now I see that that decision pays off due to fewer user complaints from "removing" something, versus never appearing to remove something. And ReGBA has gained GBA box art support, so it's anything but a regression. But if people focused on solutions rather than problems, this would be much better.

I applaud your intent to post in the gmenu2x thread, but because this has gone on so much here, I'd like you to copy-paste from this thread into that one and just link back to here once for context.

e) Oui, je parle fran?ais, mais je pr?f?re que tous sur Dingoonity me comprennent, alors je pr?f?re ?crire en anglais. J'esp?re que tu comprendras.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: yonif on October 13, 2014, 09:32:00 pm
Hello again,

Quote
a) I took regression in the same sense, which is "a negative change to the core functionality of an application, which makes it completely unusable in many critical scenarios". A user interface change is rarely qualified as a regression, only in certain circumstances like two menu options getting the same mnemonic (e.g. Alt+A launches Replace All or Save All at random in an application). So I took your post as an insult not really an insult, I guess, but with more meaning than you intended.

Une r?gression n'est qu'un "retour en arri?re" du point de vue de la d?finition stricte.
Ceci dit, compte-tenu de ta d?finition, je comprends mieux le malentendu  :-[

Quote
e) Oui, je parle fran?ais, mais je pr?f?re que tous sur Dingoonity me comprennent, alors je pr?f?re ?crire en anglais.

Alors tu pardonneras mon anglais approximatif :)

PS : I posted some ideas of the dedicated gmenu2x thread.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Boomchil on November 01, 2014, 10:33:48 am
Hi. First, thank you very much for your amazing work. Most games run perfectly, it's a real pleasure.

I have some problems however :

- The BS Zelda (Third Quest version that can be found here : http://bszelda.zeldalegends.net/bs1files.shtml#02 (http://bszelda.zeldalegends.net/bs1files.shtml#02)) won't load (black screen).

- The SRAM in Zelda Ancient Stones Tablet don't seem to work. The file is created, and overwritten every minute (normal behavior), but when I rename it to play week 2, it won't load.

Explanation : The game is separated into 4 roms (it broadcasted in 4 weeks originally, one rom per week), which saves to sram every minute. Once a week is finished, you have to rename your sram file to match the next week rom, to be able to keep your progress between the weeks.

If it can help you, here is a file with Week 1 and 2 roms, one savestate at the very end of week 1, and the srm : https://mega.co.nz/#!Vs92QLjJ!v_jbyctMmLBtRRpVEuvJ414towTKRDUO1ZW9_CIHKXQ (https://mega.co.nz/#!Vs92QLjJ!v_jbyctMmLBtRRpVEuvJ414towTKRDUO1ZW9_CIHKXQ)

- Also, I don't know if this is a problem, but sound effects tend to be very loud compared to music in Yoshi Island, is this normal?


Thank you very much.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on November 01, 2014, 07:49:29 pm
I doubt Broadcast Satellite games are supported at all in Snes9x 1.43. There's a BSX BIOS that's needed for those to work, and the emulator doesn't even understand that those games need the BSX BIOS.

As for the sound effects, I think they're just fine; if you're using the speaker on the GCW Zero, I can't help you :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Boomchil on November 02, 2014, 12:19:46 pm
Zelda Ancient Stones Tablet (which is also a BS game) boots and work absolutely fine though...

The only thing not working is the writing to sram which enable to continue the quest between roms.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Erik Twice on November 02, 2014, 05:44:34 pm
Can I take out screenshots using this emulator on the GCW Zero? If so, how? :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: zear on November 02, 2014, 05:47:07 pm
You can take screenshots at any point of the GCW Zero run time by pressing Power + Y. Please refer to: http://wiki.gcw-zero.com/Power_Daemon
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 06, 2014, 10:03:19 pm
crap!   I overwrote my saved state.   :'(   I went to the game and now nothing is saved on the game itself.  weird. 

Is it possible to add a warning sign saying "Are you sure you want to overwrite this state?" That will give us another chance before accidentally lose everything. 

Oh well... not in the mood to play that game all over again. lol I guess i'll pick another game.   ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on November 07, 2014, 12:59:45 am
crap!   I overwrote my saved state.   :'(   I went to the game and now nothing is saved on the game itself.  weird. 

Is it possible to add a warning sign saying "Are you sure you want to overwrite this state?" That will give us another chance before accidentally lose everything. 

Oh well... not in the mood to play that game all over again. lol I guess i'll pick another game.   ;D
Does Snes9x on PC do this when you use the Save State submenu in File?

What is the benefit of this confirmation screen, versus someone who saves very often getting this confirmation every time and getting annoyed?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 07, 2014, 01:15:22 am

What is the benefit of this confirmation screen, versus someone who saves very often getting this confirmation every time and getting annoyed?

Just saying this happened to me.  I thought I loaded it but instead, it overwrote it. The interface of Load and Save look the same except the small text at the bottom "Press A to load"  or "Press A to overwrite".  If they are getting annoyed, turn off in settings? 

 I really thought this wouldn't happen to me but it got me this time. 
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on November 07, 2014, 01:25:48 am
Just saying this happened to me.  I thought I loaded it but instead, it overwrote it. The interface of Load and Save look the same except the small text at the bottom "Press A to load"  or "Press A to overwrite".  If they are getting annoyed, turn off in settings? 

 I really thought this wouldn't happen to me but it got me this time.
That was not just saying, you were like "is it possible to add ...?". Oh well though.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 07, 2014, 01:28:43 am
no big deal.  I just need to focus.  :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 07, 2014, 01:44:35 am
Maybe this might help. (hardly miss it) haha  I don't know if they like this or not. 

(http://i59.tinypic.com/epequ0.png)[/img] (http://i57.tinypic.com/20uaf83.png)(http://i62.tinypic.com/ephqv8.png)

Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on November 07, 2014, 01:47:30 am
Maybe this might help. (hardly miss it) haha  I don't know if they like this or not. 

<images>
Won't help if the bottom part of the screen in the saved state screenshot is black (black on black).
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 07, 2014, 11:42:40 pm
okay umm.  something isn't right.  I saved it in the game.  It looked saved but then i came back, there was no saves at all.  Did i do something wrong?  :/
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on November 07, 2014, 11:46:52 pm
Which game is the game?

Did you unset "Save SRAM when changed" in the menu? (Though PocketSNES should still save if you enter its menu by flicking the power switch, and choosing Exit PocketSNES.)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 07, 2014, 11:52:30 pm
Which game is the game?

Did you unset "Save SRAM when changed" in the menu? (Though PocketSNES should still save if you enter its menu by flicking the power switch, and choosing Exit PocketSNES.)

I played Ogre Battle on snes.  Played it for a while and saved it in the game.  I didn't use Save States this time.  I turned the power off.   turned it back on and went to Ogre Battle.. i only see "New Game"  "Continue" is faded out.  I think it can't find any saves.  I'm 100% sure I saved it.  Did it like 4 times while playing it.  Any ideas?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 07, 2014, 11:54:22 pm
Oh no i didn't touch "Save SRAM when Changed".  that is off right now.  OH!  that should be on!!?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on November 07, 2014, 11:54:55 pm
Yes.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 07, 2014, 11:57:00 pm
*palms on my face*  okay thanks

That explains why my other game didn't have any saves as well.   
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on November 07, 2014, 11:59:58 pm
You also powered off the GCW Zero directly from PocketSNES. That gives PocketSNES no chance to save anything before "leaving" (being killed by Linux). You could have saved your games even with that option off, if you had exited PocketSNES first.

But Save SRAM when changed does the job too. Happy playing! :)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: patrick81 on November 08, 2014, 12:02:41 am
ahh!!  okay that's GOOD to know. Yep that's exactly what i did.  Thanks!  Cant' beleive how smooth the snes games are now!  I really appreciate your hard work!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: opt2not on November 08, 2014, 12:06:06 am
Sort of related, but I recently got sick with a cold and was playing the harder version of Secret of Mana off my SD2SNES cart while in bed recuperating.  After getting well enough to go to work, I decided to transfer the SRAM data from my cart to my GCW so that I could continue my game while on my commute to work.

It worked out really well! I was able to do so without any problems!  Then when I got home, I'd transfer the updated SRAM from my GCW back to the cart! I love the save SRAM feature of this emulator!!!

That's it.  Carry on.  8)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: albertocastillo2001 on November 09, 2014, 08:05:07 pm
Hello

I've just finished playing Zelda A Link to the Past and I noticed some kind of issue which seems to be present on the emulator, but not in the actual game.

On Ganon's Tower, there's a room where there's a conveyor belt and a switch, you can't hit the switch because there's a room in between and you have to throw a bomb on the conveyor belt and let it get carried to the switch and explode. On the real game it takes time on exploding, but on the emulator it seems to blowup too fast so it's not possible to activate the switch using the bomb, luckily there's nother way to hit the switch using the cane of somaria.

See this post where other people report this as well on Snes9x and as strange as it seems, it also seems to be present on the Wii virtual console version according to the last comment:
http://www.gamefaqs.com/boards/588436-the-legend-of-zelda-a-link-to-the-past/61655677

Here's a video showing off how it should be:
http://youtu.be/gFUiHLs8qyA?t=5m19s

And here's a video of a guy having the same problem:
http://youtu.be/2hb3gzyMKk8?t=6m14s

Also, when I throw out the bomb, it seems to go too far and falls between the belt and the wall

Thanks
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on November 09, 2014, 09:07:56 pm
That's imprecise emulation timings, which may be better in Snes9x 1.53. See #244 (http://boards.dingoonity.org/gcw-releases/pocketsnes-based-on-snes9x-1-43-dev/msg106938/#msg106938).
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: computerguy on December 19, 2014, 06:45:44 pm
Would a port of 'Snes9x Next' be beneficial versus the current port?

Edit: Thank you for the answer, but why does snes9x 1.51 run so much slower than 1.43?
I know that 1.53 introduced much more accurate APU emulation but what changes in 1.51 to affect speed so much?
For old generation consoles ex: Original Xbox, Gamecube the emulator authors of retroarch mentioned that switching to tile based rendering helped emulation speed with more accurate emulation cores, would that help at all in our case?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Nebuleon on December 19, 2014, 09:54:24 pm
It certainly has lots of speed hacks, which make some selected games run faster than others. The effect of that, though, is that the performance of non-speed-hacked games is still less than acceptable, and to a regular user the choice of games that run slow will seem arbitrary at best, and this will create a bad reputation for the emulator and for the GCW Zero as a whole.

Additionally, I find that Snes9x-Next could break games.

Even in just the latest commits, commit e5fb833: Add a SMW idle loop skip speedhack. (https://github.com/libretro/snes9x-next/commit/e5fb83326ee27c5563fc421d9372daa6efbb1881) contains this comment:
Code: [Select]
/* Speedhack - skip idle loop. */
/* Uncomment ONLY if you're going to run clean Super Mario World (U) ROMs. */

commit 873239e: Implement Super Mario World idle loop speedhack (https://github.com/libretro/snes9x-next/commit/873239e818aa05b73ef4e166822d622e56e075c7) contains the code:
Code: [Select]
if( MATCH_NA("SUPER MARIOWORLD")) /* Super Mario World*/which seems to suggest that it will trigger false positives on any ROM hack of Super Mario World that contains assembler hacks and displaces the idle loop, as well as other hacked/translated games, because the matching keys on the ROM Internal Title field, which not every ROM hack creator knows about or even bothers changing.

edit: grammar
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: FreddyBoubil on March 20, 2015, 03:26:18 pm
Hi all,

I can't manage to run the recent released rom of Targa (http://www.retrocollect.com/News/unreleased-super-nintendo-prototype-targa-rom-released-online.html) on PocketSnes.

Does someone manage to run it ?

Thx.

Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: hi-ban on March 20, 2015, 03:58:19 pm
Hi all,

I can't manage to run the recent released rom of Targa (http://www.retrocollect.com/News/unreleased-super-nintendo-prototype-targa-rom-released-online.html) on PocketSnes.

Does someone manage to run it ?

Thx.

I get a black screen... Strange, because Rendering Ranger R2 runs fine.

EDIT: Same happens in the windows version of snes9x 1.43. However, it runs fine in 1.53.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on March 25, 2015, 03:14:12 pm
This game must be a release that implements a lot of functions of the snes console that only the latest, 1.53 release can handle, etc.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: TheChristoph on April 06, 2015, 03:01:26 am
Sometimes I wish this emu had a fast forward function, but does the Zero have the guts to handle it?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: tekkaman on April 06, 2015, 04:26:49 pm
I think it could handle it except with games  that have special chips like Yoshi's Island.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Atlantis_Risen on May 05, 2015, 08:41:40 pm
I'm having a problem getting Soul Blazer to run, it just hangs at a black screen.  Is this a known problem?  Thanks...!
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: hi-ban on May 05, 2015, 08:57:46 pm
I'm having a problem getting Soul Blazer to run, it just hangs at a black screen.  Is this a known problem?  Thanks...!

Soul Blazer (USA) works ok for me. (i'm using latest pocketsnes, build from Aug-24-2014)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: fiver on May 06, 2015, 01:35:25 am
I'm having a problem getting Soul Blazer to run, it just hangs at a black screen.  Is this a known problem?  Thanks...!

Seems to be working fine for me. You probably just have a bad ROM.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Atlantis_Risen on May 06, 2015, 04:09:07 am
It was a bad rom, thanks all.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: AskaLangly on May 12, 2015, 05:27:59 am
Any way to enable analog on this? Seems when I move left & down in Link to the Past, for example, then hold down, I'm STILL going left-down. Would really like analog support.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: hi-ban on May 12, 2015, 11:57:34 am
Any way to enable analog on this? Seems when I move left & down in Link to the Past, for example, then hold down, I'm STILL going left-down. Would really like analog support.

Does not happen to me. Tried several times. So the problem is not on the emulator.
Seems when you think you're holding only down, you're also holding left. Maybe slightly, but enough for the keypress to register.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on May 12, 2015, 12:34:30 pm
Be a pretty low chance that analog support will be added... the original author NEBULEON has moved on from these forums. Also, I recall asking him the same question about this topic & he said that he saw no desire to add the feature, unfortunately.

 ???
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Norghat on July 14, 2015, 11:00:00 pm
That s sad to read :(
He moved from the forum and stopped working on the gcwzero definitively ? :-(
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 14, 2015, 11:48:02 pm
yes, it appears that way.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: David Knight on July 15, 2015, 10:40:43 am
If it's just analogue joystick support you need I could add this easily if the source code uses SDL.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 15, 2015, 11:35:00 am
wow, that would be fantastic David. It would be extremely interesting being able to use analog on snes games for once... having the option available along with the d-pad would present a lot of variation for the controls, etc.

I for one am all for it... there aren't too many emulators that allow the analog to be used except for OHBOY I believe.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: hi-ban on July 15, 2015, 01:59:10 pm
wow, that would be fantastic David. It would be extremely interesting being able to use analog on snes games for once... having the option available along with the d-pad would present a lot of variation for the controls, etc.

I for one am all for it... there aren't too many emulators that allow the analog to be used except for OHBOY I believe.

The problem is that the analog stick is not a good quality one, and eventually it will begin registering random movement and/or randomly getting stuck in a random direction. So if an emulator supports the analog stick, it should be toggleable from the menu, and it should be disabled by default.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 15, 2015, 03:45:51 pm
I think that's a great idea.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: David Knight on July 15, 2015, 09:34:59 pm
wow, that would be fantastic David. It would be extremely interesting being able to use analog on snes games for once... having the option available along with the d-pad would present a lot of variation for the controls, etc.

I for one am all for it... there aren't too many emulators that allow the analog to be used except for OHBOY I believe.

And most of the one's I've ported  ;)

EDIT Analog stick is now working with PocketSNES but needs better integration.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 15, 2015, 11:54:24 pm
Alright! That's excellent news... be sure to keep us all posted David! Love your work.


 ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: congusbongus on July 16, 2015, 01:10:28 am
wow, that would be fantastic David. It would be extremely interesting being able to use analog on snes games for once... having the option available along with the d-pad would present a lot of variation for the controls, etc.

I for one am all for it... there aren't too many emulators that allow the analog to be used except for OHBOY I believe.

The problem is that the analog stick is not a good quality one, and eventually it will begin registering random movement and/or randomly getting stuck in a random direction. So if an emulator supports the analog stick, it should be toggleable from the menu, and it should be disabled by default.

That's not too hard to solve; just use a deadzone. For Falling Time (http://boards.dingoonity.org/gcw-releases/falling-time/) I used a value of 500 (SDL gives +/- 32768) and it works well. For SNES where you're emulating a digital pad maybe a larger deadzone is appropriate.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: zear on July 16, 2015, 06:56:04 am
That's not too hard to solve; just use a deadzone.
Nope. Once the analog joystick gets damaged, it reports maximum values for a direction.
Though instead of disabling it in games, joystick driver should be done as a loadable module that you can unload if your hardware is damaged.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: care16la20 on July 16, 2015, 01:48:46 pm
That's not too hard to solve; just use a deadzone.
Nope. Once the analog joystick gets damaged, it reports maximum values for a direction.
Though instead of disabling it in games, joystick driver should be done as a loadable module that you can unload if your hardware is damaged.

Hi,
is there any analog replacement part for that? With mine, re-soldered the 6 points, but its still behaving weird sometimes....

Is the one from PSP and PS2 arduino compatible ? The solder places seems to be similar...


*Glad at least the d-pad is now an GameBoy DMG1 one

Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: David Knight on July 18, 2015, 01:23:13 am
Here's an (unofficial) version with analogue joystick option added. I have used Nebuleons sources from github(main branch) and repackaged within the existing opk. I have made no other modifications.

As requested it is off by default, you will need to enable it from the menu.
This has not had extensive testing so please report any analogue joystick specific issues.

I'll publish the source code changes within the next 24hrs on my github when I've had a chance to clean it up a bit.

https://drive.google.com/file/d/0BwYi4RGX-HSaVlVoMzJveGJwbDg/view?usp=sharing
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 18, 2015, 01:51:54 am
Awesome! Thanks David, you're the best. I'm going to try n test a few games for you tonight. I will report back.

 ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 18, 2015, 02:18:44 am
Hey David. Listen, I tried CHRONO TRIGGER... once analog preference is set to ON, the game becomes glitchy with the in-game menu while playing. Then, when I attempted to toggle the preference to OFF then ON again, the emulator froze on me on several occasions...

I'm going to continue testing other games...

 :)

UPDATE:  Other games tested include SUPER MARIO ALL-STARS, SEIKEN DENSETSU 3 & DONKEY KONG COUNTRY. All work flawless. CHRONO TRIGGER, however, continues to suffer from the issues mentioned above after several attempts and playtests.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: David Knight on July 18, 2015, 10:02:09 am
Yes in Chrono Trigger the "Y" key keeps getting triggered which displays the menu. Also when toggling analogue joystick to on for the first time it flickers from 'on' to 'off' a couple of times.

I know why this is happening, I'll fix it when I have access to my computer again tonight.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 18, 2015, 10:25:50 am
Yes, absolutely... I noticed the flickering as well. Perfect! Sounds great.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: David Knight on July 19, 2015, 01:47:20 pm
OK it seems to be working well now, I've tested Chrono Trigger and the bug seems to have gone, the on/off flicker on the menu screen is also absent now.

OPK (https://drive.google.com/file/d/0BwYi4RGX-HSaUXF6UThteHI4ZlE/view?usp=sharing)

Source code (https://github.com/DavidKnight247/PocketSNES)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 19, 2015, 04:30:42 pm
Works perfectly now on CHRONO TRIGGER, thanks again David.

 8)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: David Knight on July 21, 2015, 11:23:55 pm
I wasn't happy with the analogue stick integration so I improved it. I also fixed a nasty bug which caused menu freezes when saving states, resetting and exiting whilst the analogue joystick is active. This is now fixed. I'm suprised no-one else seems to have spotted this  ???

Anyway, it's all good now.

OPK (https://drive.google.com/file/d/0BwYi4RGX-HSabTFGTGl4eDBTUnc/view?usp=sharing)
Source (https://github.com/DavidKnight247/PocketSNES)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 21, 2015, 11:40:46 pm
It happens... its a new release so I'm guessing a lot of people haven't fully tested it yet. Thanks David, you're the best!

 ;D  ;D  ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: pcercuei on July 22, 2015, 08:13:12 am
How is the speed vs. the old one on games like Yoshi's Island or Starfox?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: David Knight on July 22, 2015, 08:02:33 pm
How is the speed vs. the old one on games like Yoshi's Island or Starfox?

No significant difference in framerate based on my testing. I used Yoshi's island as framerate is more variable on Starfox.

Constant Settings
SOUND: ON
SOUND RATE: 44100
STEREO: ON
FRAMESKIP: 0
FULL SCREEN: OFF
SHOW FPS: ON
PREFER FLUID: VID & AUD

Variables:
1) Pocketsnes-20140824
2) Pocketsnes-20150721, ANALOGUE JOYSTICK: OFF
3) Pocketsnes-20150721, ANALOGUE JOYSTICK: ON

Yoshi's island title screen (rotating island)
1) 49fps
2) 49fps
3) 49fps
Yoshi's island Intro level (occasional framerate drops present on the big jump at the end of the level)
1) 61fps solid
2) 61fps solid
3) 61fps, occasionally dropping to 60 then up to 62.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: terrybogard on July 28, 2015, 11:32:13 pm
Hello, this is a noob question.
I?m using theese pocketsnes settings:

Sound rate 22050 - edit: 44100 is better
Frameskip auto
Fullscreen smooth
Prefer fluid audio

I would like to edit pocketsnes_options.opt to set the fullscreen aspect Ratio to 5:4.
Also I would like to lower the audio volume a bit, so it matches that of other emus.
edit: my general master volume is 93. Pocketsnes works fine with volume 89.

Would that be possible? Any help is appreciated.
Thank you.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Jenova on July 28, 2015, 11:40:28 pm
I'm not sure how to adjust the aspect ratio but if you want to adjust the volume for any emu while playing, just hold the power slider all the way up while pressing/holding directional UP or DOWN to raise/lower volume level.

Hope that helps.


:)
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: shirohagen on August 30, 2015, 11:01:34 pm
Hi guys

I'm having a problem with this, as I use the Gmenu2x selector to launch a ROM.

Once the emulator starts, I can hear the game running but it's under the menu so I can't see or play it.

Can you add Gmenu2x file selector support? Or maybe I'm doing something wrong...?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Eliwood_san on August 31, 2015, 03:59:44 am
Hi guys

I'm having a problem with this, as I use the Gmenu2x selector to launch a ROM.

Once the emulator starts, I can hear the game running but it's under the menu so I can't see or play it.

Can you add Gmenu2x file selector support? Or maybe I'm doing something wrong...?

You need to be more specific which emulator Pocketsnes have the problems you mention? The pocketsnes based on nebuleon code or the pocketsnes based on David Knight code?

Also if you didnt update your GCW Zero with the latest firmware its possible you have those problems.You can solve the issues on some emulators updating your gcw zero.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Niko on September 02, 2015, 02:28:11 pm
I seen this asked a month ago but was never really answered, but is there any way to adjust aspect ratio?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: pcercuei on September 03, 2015, 09:07:27 pm
I seen this asked a month ago but was never really answered, but is there any way to adjust aspect ratio?

Press Power + A
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Niko on September 04, 2015, 07:39:57 pm
I seen this asked a month ago but was never really answered, but is there any way to adjust aspect ratio?

Press Power + A


That doesnt do anything, atleast not for this emulator.

However, I do feel like an idiot. I completely missed the "fullscreen" option in the menu which lets me stretch the image. So I'm happy now.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Surkow on September 04, 2015, 07:43:20 pm
I seen this asked a month ago but was never really answered, but is there any way to adjust aspect ratio?

Press Power + A


That doesnt do anything, atleast not for this emulator.

However, I do feel like an idiot. I completely missed the "fullscreen" option in the menu which lets me stretch the image. So I'm happy now.
Are you sure you are running the latest firmware?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Niko on September 05, 2015, 05:16:22 pm
I seen this asked a month ago but was never really answered, but is there any way to adjust aspect ratio?

Press Power + A


That doesnt do anything, atleast not for this emulator.

However, I do feel like an idiot. I completely missed the "fullscreen" option in the menu which lets me stretch the image. So I'm happy now.
Are you sure you are running the latest firmware?

Yep, unless there is a newer version than the Aug. 20th 2014 build.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: giannis1 on September 08, 2015, 04:13:51 pm
Thanks for this great emulator everything works flawlessly.

One thing though, it would be great if we could manually load SRAM (save data) files.
Right now it can only be done  by putting them in .snes96_snapshots/
with the same name as the rom file.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: TheChristoph on December 23, 2015, 10:19:46 pm
Where is sram located? I want to put an sram file from an RPG I've been playing on my Zero, and I've gone through every folder that shows up when I connect to my Zero through FTP, and I see no srm files anywhere.

Ah! Found it. Filezilla wasn't showing hidden files and folders.

/usr/local/home/.snes96_snapshots/
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-05-22 update]
Post by: opt2not on February 02, 2016, 07:29:23 pm
Hey Nebuleon, I have kind of a crazy question. Could the MSU-1 enhancement be added to Snes9x? If you're not familiar with it it was written by byuu and here's his page regarding it,  http://byuu.org/snes/msu1/

There's only a few projects that take advantage of it but one of them is the laser disk port to the SNES of Super Road Blasters, http://www.dforce3000.de/?p=news&t=msu1

Currently the only emu to support it is bsnes but afaik that emu has never been ported to a handheld device.
Name the games that use this chip, and tell me whether upstream Snes9x 1.53+ has code to provide emulation for this chip.

edit: That is, games other than this one game, Super Road Blasters...

Here's an old quote from many pages ago, but I was wondering how feasible it is now to get MSU-1 support in?
There have been a lot of MSU-1 hacks released since this was brought up last, and there is no doubt more to come. I think there are enough games now to merit supporting this.

Here's a list of the current MSU-1 hacks available:

Chrono Trigger
Donkey Kong Country 2
Flashback
F-Zero 
BS F-Zero Grand Prix 2 
Mega Man X
Mega Man X2 
Mega Man X3
Rock n' Roll Racing
Secret of Mana 
Super Mario World
Super Metroid 
Super Road Blaster
Teenage Mutant Ninja Turtles IV: Turtles in Time 
The Legend of Zelda 
Top Gear 2 

I've been playing most of these on my SD2SNES cart, and I gotta say they are really good. Really breathes some new life back into these great titles. Chrono Trigger with symphonic CD-quality music is just incredible!
It would be great if we can play these on the GCW.  8)

Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: David Knight on February 02, 2016, 08:03:35 pm
According to wikipedia only BSNES (075+) and higan (094+) support MSU.

So support would need to be added to PocketSNES. In addition, because you would need to emulate another chip it would have a significant effect on emulation speed.

I doubt the GCW0 can handle this.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: thefifthgiant on February 03, 2016, 01:39:39 am
Would it really be that much of a problem performance-wise? I've never run into an issue with games I've played (though he most demanding ones I play are probably Starfox 1&2) If we're talking a drop from 60 fps on most games down to 30 or so, I think most people would be able to tolerate it, providing that emulation of the new chip could be turned off on games that don't need it. If i remember correctly, picodrive had several options on what chips/hardware to emulate for sound.

I'm assuming the bigger issue is the amount of effort it would take to implement? Of course i'm not a dev by any means so I don't really have any idea.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Qubits on May 26, 2016, 06:37:40 am
Is it possible to select the clock speed (NTSC or PAL) for Europe or USA / Japanese roms ? And if not is it on NTSC by default or does it automatically detect the clock speed of the rom ?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Aeter on May 26, 2016, 01:41:01 pm
Is it possible to select the clock speed (NTSC or PAL) for Europe or USA / Japanese roms ? And if not is it on NTSC by default or does it automatically detect the clock speed of the rom ?
I believe you can change this in the settings. There should be a PAL/NTSC setting in there.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Qubits on May 26, 2016, 01:45:50 pm
Is it possible to select the clock speed (NTSC or PAL) for Europe or USA / Japanese roms ? And if not is it on NTSC by default or does it automatically detect the clock speed of the rom ?
I believe you can change this in the settings. There should be a PAL/NTSC setting in there.

No but after talking with the developpers, they've explained me that it detects the rom speed automatically by using a " magical " code in the ROM header.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Aeter on May 26, 2016, 02:15:19 pm
Is it possible to select the clock speed (NTSC or PAL) for Europe or USA / Japanese roms ? And if not is it on NTSC by default or does it automatically detect the clock speed of the rom ?
I believe you can change this in the settings. There should be a PAL/NTSC setting in there.

No but after talking with the developpers, they've explained me that it detects the rom speed automatically by using a " magical " code in the ROM header.
Oh okay, I do remember some PAL/NTSC setting in there somewhere though, must be unrelated then.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Qubits on May 27, 2016, 08:42:39 pm
I've been playing quite a lot of snes games today, everything runs rather smoothly except for : " Jikkyou Oshaberi Parodius (Japan) ", which has massives slowdowns, even if you set " video quality first " and change the frameskip settings.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Aeter on May 28, 2016, 01:30:49 pm
I've been playing quite a lot of snes games today, everything runs rather smoothly except for : " Jikkyou Oshaberi Parodius (Japan) ", which has massives slowdowns, even if you set " video quality first " and change the frameskip settings.
Aren't there English versions of Parodius or is this a JP only release?
I prefer the original NES version anyway, with the epic 8-bit music, oh the memories of days gone by.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Qubits on May 28, 2016, 01:37:28 pm
I've been playing quite a lot of snes games today, everything runs rather smoothly except for : " Jikkyou Oshaberi Parodius (Japan) ", which has massives slowdowns, even if you set " video quality first " and change the frameskip settings.
Aren't there English versions of Parodius or is this a JP only release?
I prefer the original NES version anyway, with the epic 8-bit music, oh the memories of days gone by.

This Snes version is much better. There is no US release, unfortunately.
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: Aeter on May 28, 2016, 01:44:10 pm
I've been playing quite a lot of snes games today, everything runs rather smoothly except for : " Jikkyou Oshaberi Parodius (Japan) ", which has massives slowdowns, even if you set " video quality first " and change the frameskip settings.
Aren't there English versions of Parodius or is this a JP only release?
I prefer the original NES version anyway, with the epic 8-bit music, oh the memories of days gone by.

This Snes version is much better. There is no US release, unfortunately.
But play the NES EU version on my actual NES for nostalgic reasons, can't beat my nostalgia as I never had a SNES.
Perhaps the arcade Sexy Parodius is more to your liking :P. NES Version is in English by the way. 
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: TimeDevouncer on September 14, 2016, 08:40:00 am
Any way to fix hi-res texts like Romancing Saga 3 menus?

I try with the IPU scaling and no luck :(
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: gameblabla on September 14, 2016, 02:07:08 pm
Any way to fix hi-res texts like Romancing Saga 3 menus?
I try with the IPU scaling and no luck :(
IPU scaling isn't going to make a difference here.
He may have disabled the hi-resolution or Snes9X 1.43 does not emulate this game properly.
If the issue is the later, then there might be no solution... (as the later SnesEx 1.5x is too demanding for the GCW0?
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: TimeDevouncer on September 14, 2016, 10:27:05 pm
Any way to fix hi-res texts like Romancing Saga 3 menus?
I try with the IPU scaling and no luck :(
IPU scaling isn't going to make a difference here.
He may have disabled the hi-resolution or Snes9X 1.43 does not emulate this game properly.
If the issue is the later, then there might be no solution... (as the later SnesEx 1.5x is too demanding for the GCW0?

Ouch! Ok, thanks ;D
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: madligame on December 10, 2016, 09:56:27 am
Hi forum, which key for quick save state and load state? I tried L+R left /right not working :(

Thanks
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: nightshade on December 10, 2016, 10:43:21 pm
Hi forum, which key for quick save state and load state? I tried L+R left /right not working :(

Thanks
you cant ... that feature has been disabled by snes9x ....... so they cant do it anymore
Title: Re: PocketSNES based on Snes9x 1.43-dev [2014-08-24 update]
Post by: SNES72 on January 05, 2017, 12:37:22 am
The link to the opk seems to be broken, is there another link where I can install the SNES emulator?