- Last login
- 24-6-2013
- Respect
- 0
- Money
- 120
- Reg time
- 22-1-2013
- Read permission
- 20
- Digests
- 0
- Credits
- 120
- UID
- 40023

- Props
- 33
- Online time
- 56 Hours
- Posts
- 27
|
Edited by Nebuleon at 23-1-2013 05:31
I feel this is good enough now for presentation on the official Supercard forum, and possible use as the official plugin with cooperation from the Supercard Team.
This was originally presented on the GBATemp forum, where I kept a log of my changes. Many versions introduced new features; some only introduced bug fixes. I think you will find that the version jump from 1.06 to 1.23 is well justified anyhow.
This post is solely for my improvements; ShadauxCat and BassAceGold have improved upon NDSSFC itself in the past. CATSFC 1.23 is thus the product of these two people and myself, in addition to the efforts of the Supercard Team to port it to the card's internal processor and the Snes9x/ZSNES folks. ShadauxCat first added touch handling to the emulator's buttons; I improved on it afterwards.
Get the plugin here: http://filetrip.net/nds-download ... sfc-123-f31502.html
View the source on GitHub: http://github.com/ShadauxCat/CATSFC
(and post issues there too)
Translations wanted! Click the GitHub link above and read the Readme file's Translations section for information.
Emulator
* The highest CPU speed is selected by default. This drains the battery faster, though. Other CPU frequencies are still available and apply per-game as in NDSSFC 1.06 (since 1.08).
* Keep the Audio Processing Unit (APU) emulation running when you mute the sound via the interface. This allows you to load a saved state made with the sound off, and then enable the sound without the emulation freezing. (Older saved states will still freeze! Only new ones will work correctly in the face of disabled sound.) (since 1.11)
* Cheats! Game Genie, Pro Action Replay and Goldfinger. The supported format has changed from CATSFC 1.1/NDSSFC 1.06. Read README.md in the download for more information (since 1.09).
* Saved state slots can now be chosen and manually overwritten by you, the player. You also have 16 slots for saved states instead of 10. This allows you, for example, to save your backtracking in a game to slots 2-5, and the main path to slot 1. Or save multiple endings to states 12-16. (since 1.19)
* Speed up CPU opcode emulation, background/tile rendering, sprite rendering and audio rendering by reducing memory accesses. Also eliminate checks for 16-bit video, 16-bit audio, stereo and reverse stereo.
* Optimise for speed. Many explicit delays have been removed, more importantly the 50 ms delay before and after loading a ROM. Loading a ROM also occurs on the highest CPU frequency, regardless of settings.
* The ROM (*.smc, *.sfc) and cheat (*.cht) file selection screen now scroll the selected file name more evenly and faster (since 1.21).
Game compatibility
* Secret of Mana, Seiken Densetsu 3 (Secret of Mana 2), Treasure of the Rudras: Display the menu text as 4 pixel wide tiles.
* Seiken Densetsu 3 (Secret of Mana 2) and translations: Fix unreadable message boxes caused by SNES resolution changes (since 1.20).
* Zelda BS: Compatibility lost! It requires audio code that Snes9x 1.43 doesn't have. To play this game, please use CATSFC 1.1.
* Yoshi's Island, Mario Kart, Kirby Super Star etc. don't run much better than NDSSFC 1.06, unfortunately.
Display
* Manual frame skipping, a new option in the Video & audio menu (since 1.15).
* PAL timings, 50 FPS, are now accepted by CATSFC (since 1.15).
* Square pixels by default, showing the middle of the screen; the image is not smooshed (since 1.08). Other display modes are still available and are more clearly labelled in the Options screen (since 1.13).
* Display Mode 4 is now an anti-aliased whole-screen mode (since 1.13)! Great for when you have to see the entire screen for a game, but Display Mode 0 looks bad. See the picture of Super Mario World on FileTrip for an idea of what this looks like.
Display: Emulator menu
* Narrower, better-looking font (it's Pictochat's font) (since 1.08+fontfix).
* Taelis's French translation now appears in the interface under Options/Language (since 1.08). The font was needed for this one, because Verdana.odf had no definitions for accented characters.
* "NEW", "RETURN" and "RESTART" are now localised as "New game", "Return to game" and "Reset game", in English, French and Simplified Chinese. All three are on the same style of button (since 1.21).
* More readable text in all menus: the main menu has white on a darker purple for inactive items, and the other menus have dark purple on white instead of the old light teal (since 1.21).
DS functionality
* Suspends when the lid is closed. Battery usage and timings yet unknown (since 1.14).
* Controller status synchronisation improved over 1.06 (since 1.08). See SYNC_JOYPAD_AT_HBLANK in the source.
* Better touch handling: the Touch Screen now works to load a cheat file (Main Menu/Cheats) and now updates the user interface's language (Main Menu/Options). Tapping a cell in the Load saved state row now shows its screenshot (Main Menu/Saved states). Tapping an empty row beyond the last item in a submenu does not invoke a phantom option from the next menu in RAM anymore (since 1.21).
Audio
* Lower audio loss, using Settings.SoundSync = TRUE (since 1.08).
Meta/Extras
* Icon change (as of 1.11). The plugin now has a much more beautiful SNES controller without the CAT as its icon.
* New icons for the main menu, from the Tango Icon Library and the Tango-inspired RRZE Icon Set. See copyright for more information (since 1.21).
* The loading screen's Engrish ("Enjoy yourself! All pleasure in it"), while it was funny, is gone (as of 1.11) and replaced with a SNES controller and the word "Loading...".
* A much better, Engrish-free, README file for compiling and installing the emulator (as of 1.09), as well as creating more translations.
Technical
* 1.11: Less access to memory in inner loops.
* 1.11: Significantly less time to set up sprites for an image.
* 1.11: Significantly less time for drawing regular 8x8 tiles all over the screen. Instead of 14336 function calls per layer, each drawing 4 pixels, it's now 896 calls per layer to a small nested loop that draws the entire tile.
* 1.09, 1.10: More speed. Trimmed 1-8 memory store MIPS instructions per emulated SNES instruction. Trimmed 1 return from procedure MIPS instruction per emulated SNES instruction. |
-
Total score: Props + 27
View Rating Log
|