Application:SuperNES

From WebOS Internals
Revision as of 05:01, 8 September 2010 by DtzWill (talk | contribs) (→‎TODO)
Jump to navigation Jump to search


« Go Back to the Games application list
SuperNES v0.0.2 MarioKart1.jpg

SuperNES - Version: 0.0.5

SuperNES

Snes9x small.png SuperNES is an emulator for the Super Nintendo Entertainment System (SNES).

Credit

Ported by Will Dietz Aug 2010.
Thanks to Sonic-NKT for beta testing, art, and videos!!!
Thanks to #webos-internals for being awesome!
Icon created by Deleket (Used with Permission)

License

All source is under the GPLv2 license AND the Snes9x license, and where there are conflicts the Snes9x license is the one to follow. Basically the code this was based on is under their special license, and that's that. My additions/modifictions are as GPL as they can be without infringing on their original license. MAJOR kudos to the wonderful people who created Snes9x, and to the authors of DrNokSNES, and DrPocketSNES (and the various ports that went into THAT).

And the latest SuperNES source is available on git here

Lots of work has gone into making this a great game for you to enjoy!

If you like it, please download it from the App Catalog (when it hits!)

Alternatively please consider purchasing VBA from the App Catalog. A percentage of the proceeds go to WebOS Internals, and helps me keep working on these things.

Alternatively you might wish to donate. See official thread for the paypal link if you're interested.

Installing SuperNES

Install Preware, and then launch it. Click on "Available Packages" then "Applications, or "Available Applications" then "All" depending on the Preware preferences you have chosen. Now type in "superNES" (no quotes). SuperNES should show up. If not, make sure your feeds are up to date. Click on SuperNES and then click install.

Now you are ready to add ROMs(games)!

Support

For support, please:

  • Check this wiki for information
  • Check the official SuperNES thread, and post if you want to. This way your problems are something others can see (and knowledgeable users can help when I'm not available).
  • Email webos@wdtz.org

Adding ROMS

Rom Availability

Many games are available for SuperNES. Sources of free open source and free homebrew roms are available all over the internet. Google is your friend :).

There exist sources of copyright game ROMS on the interent which webos-internals will not link to. There also exist explanations of how to copy roms you own into files which SuperNES can use. Those topics are outside the scope of this article.

ROM File definitions

SuperNES ROMs extensions indicate what device is being emulated. There are three valid extensions:

  • .smc
  • .zip

Note that a zip file needs to contain exactly *one* ROM, and not in a folder.

Installing ROMS to the device

Once you have installed SuperNES on your Pre, click on it from the launcher to see short instructions on how to install ROMs, which we'll explain in more detail here.

Now connect your Pre to your computer via USB mode. Once the Pre shows up on your computer, open it. You now should be at the "root" of your Pre's storage. If you look at the folders in the root, there should be a few including the "wallpapers", and "ringtones" folders. Create a folder called "snes" (no caps). Click on that and inside that create a folder called "roms" (again, no caps). Copy the ROMs from your computer and move them here. DO NOT put the ROMs (.smc,.zip) in folders within the "roms" folder.

SuperNES cannot create these folders for you due to the 1.4.5 fstab bug.

Controls

To select a rom, just tap on it in the rom selector.
Note that if you have more roms than fit on the screen, simply scroll to them.
Hit a letter key to jump to that letter in the rom list (useful when you have lots of roms)

These are the current controls (while playing):

Pre Button Emulator Function Notes
EWSD Up/left/down/right
k Y
l X
m B
, (comma) A
i L (trigger)
o R (trigger)
Backspace Start
Enter Select
Spacebar Toggle Turbo
1,2,3 Save state number 1,2,3 orange + "corresponding letter"
4,5,6 Load state number 1,2,3 orange + "corresponding letter"
back gesture/swipe In-game Menu.

Custom Controls

Instructions

SupeNES also allows you to customize the controls to fit what you find most useful!

To start customizing, while running a game, hit '=' (orange+p), or '?' (orange+n).

Then follow the on-screen instructions, hitting the keys you want the various buttons bound to.

To stop the binding and cancel, hit '=' or '?' again.

Note Due to the pre's keyboard limitations, some keys cannot be detected when pressed down at same time (j/k is an example of such a pair). Keep this in mind, it is not a bug in SuperNES. Also the pre likes to ignore adjacent key presses as an attempt to aid in typing accuracy.

Screenshots / Videos


Videos of latest SuperNES (v0.0.3):

[Snes emulator(Palm Pre) -running on uberkernel 1G

Known issues

  • Touchscreen Controls slow emulation down. Controlling with Pre Keyboard is faster.
  • Donkey Kong Country doesn't work, fails its copy protection check. (The sequels work, however).

TODO

  • Reset button
  • Verify image-scaling-preserving-apect-ratio code, someone claims that it isn't filling the area as expected.
  • Add new skins (rpg2, misc others) from forum.
  • In-game documentation of skins, etc. (wiki documentation of skins?)
  • True FullScreen Scaler for Landscape Mode
  • See if the app can be a 'portrait' game so the menus/rom selector maintain proper perspective when in card view.

TODO/Tentative

  • pause when in card mode--add delay for those who flick to check time and back. See how/if this is possible.
  • Investigate some kind of behavior improved d-pad behavior with respect to sliding finger off the area and acting as expected. So if you hold finger down with-in the dpad and slide out it doesn't release. Play with some ideas on that front.
  • Investigate cheat support, game genie, etc. Figure out a good UI model for the functionality that is possible, and make this happen. Try to gracefully handle things like bad cheats (both in the UI and corrupted games), as possible.
  • possible crash when pausing game by going to card mode, then returning to rom-selector. investigate. (UPDATE: Can't reproduce anymore??)
  • Portrait skins?

User-edited

Add your TODO list here!!

  • Add support for widescreen (incorrect aspect-ratio) full-screen viewing.
  • Add support for bi-directional keys (up-left, up-right, down right, and so on).

Changelog

  • 0.0.5 Added jjcitron's landscape skin
  • 0.0.4 Added (transparent!) skin support
  • 0.0.3 Fixed save states/menu issue.
  • 0.0.2 Rename Snes9x->SuperNES.
  • 0.0.1 Initial release (testing feed).

Compatibility List

This is a list of games and how well they run. PLEASE include a version number (on rom selector) when adding entries! To see the emulation speed percentage, enabled "Show speed" in the menu! All Entries please in Portrait Mode without Touchscreen Control!

Orange: Not Playable/Very Slow
Yellow: Semi-Playable
Green: Playable

Title Speed @500 Mhz Speed @800 Mhz SuperNES Version Notes
Sound No Sound Sound No Sound
BS Dr. Mario (NTSC/J) 46/50 50/50 50/50 50/50 0.0.3 No need for overclocking!
Zelda - A Link to the past (Pal/G) 45/50 49/50 50/50 50/50 0.0.3 No need for overclocking!
Arkanoid Doh It Again 40/60 40/60 45/60 45/60 0.0.6 Very playable speed averages 50-55 @ 1GHz(UK-92)
Arcade's Greatest Hits(Defender, Defender II, Joust, Robotron, Sinistar) 50/60 50/60 55/60 55/60 0.0.6 Sound doesn't work (all crackily) very close to steady 60/60 @ 1GHz(UK-92)
Arcade's Greatest Hits - The Atari Years(Asteroids, Battlezone, Centipede, Missle Command, Super Breakout, Tempest) 45/60 45/50 45/60 45/60 0.0.6 Fully playable, the speeds spiked over 100/60 but still playable no matter what the speed up to 1GHz(UK-92)
B.O.B (U)[!] 40/60 40/60 48/60 48/60 0.0.6 Average 55/60 @1GHz(UK-92)
Bust-A-Move (U)[h1] 35/60 40/60 45/60 45/60 0.0.6 Average 50/60 1GHz (UK-92)
Choplifter III (U)(54553) 45/60 45/60 45/60 50/60 0.0.6 53/60 sound on 58/60 sound off 1GHz (UK-92)
Dragon's Lair (E) 30/50 30/50 35/50 40/50 0.0.6 Average 50/60 1GHz(UK-92) sound on&off
Dungeon Master 50/60 50/60 50/60 50/60 0.0.6 No difference with 1GHz (UK-92)
Lemmings 2 - the Tribes 45/60 50/60 50/60 55/60 0.0.6 This games a little hard to play due to the "mouse-like controls" (UK-92 average 50-60)
Mr.Do! 50/60 50/60 50/60 55/60 0.0.6 Average 55/60 (UK-92)
Ninja Gaiden Trilogy 40/60 40/60 40/60 45/60 0.0.6 55-60/60 @ 1GHz (UK-92)
Pitfall - The Mayan Adventure (U) 35/60 35/60 40/60 45/60 0.0.6 No noticeable difference with UK-92 1GHz
Populous 45/60 45/60 50/60 50/60 0.0.6 Average 55/60 (UK-92) 1GHz
Space Ace 40/60 40/60 45/60 45/60 0.0.6 50/60 1GHz (UK-92)
Super Castlevania 4 45/60 45/60 50/60 50/60 0.0.6
Super Ghouls 'N Ghosts 25/60 30/60 30/60 35/60 0.0.6 40-45/60 on 1GHz (UK-92) recommended for this game
Super Mario All-Stars 25/60 30/60 35/60 40/60 0.0.6 45-50/60 on 1GHz (UK-92) recommended
Super Mario World 30/60 30/60 35/60 40/60 0.0.6 45-50/60 (UK-92) sound on or off recommended
Super Star Wars - Empire Strikes Back 35/50 35/50 40/50 40/50 0.0.6 45/60 1Ghz (UK-92) emulator is out of 50 with this game.
Super Star Wars - Return of the Jedi 35/50 38/50 43/50 45/50 0.0.6 48/50 1GHz (UK-92) emulator is out of 50 with this game.
Taz-Mania 40/60 45/60 50/60 50/60 0.0.6 pretty much the same @ 1GHz (UK-92)
Uncharted Waters 45/60 50/60 55/60 60/60 0.0.6 pretty much the same @ 1GHz (UK-92)