Please select To the mobile version | Continue to access the desktop computer version

SuperCard Official Forum

 Forgot password?
 register
View: 232680|Reply: 25

NDSSFC redux: CATSFC   [ Promote this link! ]

Rank: 1

Props
33
Online time
56 Hours
Posts
27
Post time 22-1-2013 21:07:37 |Show all posts
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.
Have 9 people ratedProps Pack Reason
vash + 3
xjive + 3
FerX30 + 3 Great playing Metroid and Seiken Densets
cloudstrifer + 3
hannspree + 3 AWESOME!
Boriar + 3 Boost our DS2 to a new level
Aceyboogie + 3
xskullx + 3
firebug2009 + 3

Total score: Props + 27   View Rating Log

Use magic Report

Rank: 1

Props
33
Online time
56 Hours
Posts
27
Post time 22-1-2013 21:09:37 |Show all posts
<Reserved for additions and communications with pack creators, theme creators, translators, etc.>

Use magic Report

Rank: 1

Props
33
Online time
56 Hours
Posts
27
Post time 22-1-2013 21:19:30 |Show all posts
Edited by Nebuleon at 23-1-2013 05:23

I'm aware of carmania100's MegaDS2 pack, which is why I will try to work with him to integrate the new CATSFC into the pack.

* There have been changes to the cheat file format - the new format is that of the MightyMo Cheat Pack for BSNES < 0.74. The MightyMo cheat pack can be split into two and included in /CATSFC/gamecht/a-m and /CATSFC/gamecht/n-z due to a 512-file limitation in the file browser.
* The Chinese (simplified) localisation is now incomplete because of my additions. I don't speak nor write Chinese. For inclusion into the official plugin, the Supercard Team will want to translate some of the messages left in English inside CATSFC/system/language.msg.
* 6 icons have disappeared, and 2 new ones have taken their place. The default icons are also modified from NDSSFC's. NDSSFC skins may be affected by this. Gone: gbafile.bmp, subselb.bmp, snnewo.bmp, snewo.bmp, snreteno.bmp, sreteno.bmp, snreseto.bmp, sreseto.bmp. New: snmaini.bmp (Non-selected MAIN menu Item), smaini.bmp.
* The language file has things it didn't have before. New options needed this text: frame skipping, hotkeys and the "New game", "Return to game" and "Reset game" options. A French localisation is added.
* Save state files continue to work exactly as before. They may be oddly numbered, however, because of the way NDSSFC 1.06 handled save state numbers. This is not a bug.

carmania100, if you see this, can you integrate this into your MegaDS2 download? If you need any help, feel free to reply or PM me.

Use magic Report

Rank: 3Rank: 3

Props
21
Online time
124 Hours
Posts
160
Post time 27-1-2013 13:19:31 |Show all posts
Is there anyway someone can update the GBA emulator for the DSTWO
so the saved state slots can be chosen manually like this one?

Use magic Report

Rank: 1

Props
33
Online time
56 Hours
Posts
27
Post time 27-1-2013 17:30:31 |Show all posts
Edited by Nebuleon at 28-1-2013 01:32
xskullx replied at 27-1-2013 21:19
Is there anyway someone can update the GBA emulator for the DSTWO
so the saved state slots can be ch ...


I would actually love to 'transplant' some improvements from CATSFC into NDSGBA, but DarkChen has not released the source code for NDSGBA. It's been discussed quite a lot on the GBATemp Supercard forum, and I could probably do it if the source code were available.

Edit: DarkChen could also take the Git commits that implemented the changes in CATSFC and transplant them into NDSGBA. But that would require someone to post on the Chinese Supercard forum and DarkChen to read the post.

Use magic Report

Rank: 3Rank: 3

Props
21
Online time
124 Hours
Posts
160
Post time 30-1-2013 10:02:06 |Show all posts
Can anyone help and talk to DarkChen about releasing the source code for NDSGBA?

Use magic Report

Rank: 1

Props
0
Online time
0 Hours
Posts
2
Post time 30-1-2013 10:42:01 |Show all posts
Any way to get the cheat codes with multiple codes to appear as one code. Currently anything with 2+ codes entered as "########+########+########" will output as multiple different codes you have to enable separately. It becomes a major hassle when some of the codes have 13+ lines. Thank you for your time.

Accidentally made a new thread while posting this so that other thread was a mistake

Use magic Report

Rank: 1

Props
33
Online time
56 Hours
Posts
27
Post time 30-1-2013 17:26:37 |Show all posts
BASgamer replied at 30-1-2013 18:42
Any way to get the cheat codes with multiple codes to appear as one code. Currently anything with 2+ ...

I tore that out of the emulator when I redid cheats to support Game Genie. Enabling a multipart code seemed to freeze the emulator sometimes.

I'm not sure if I can re-implement cheat groups well enough not to freeze the emulator. Regardless, post that as an issue on GitHub (http://github.com/ShadauxCat/CATSFC) and I'll see what I can do.

Use magic Report

Rank: 1

Props
33
Online time
56 Hours
Posts
27
Post time 8-2-2013 20:51:24 |Show all posts
Edited by Nebuleon at 9-2-2013 05:02

CATSFC 1.29 is my next release I wish to present.

Download it here: http://filetrip.net/nds-download ... sfc-129-f31601.html

This release adds playability improvements over CATSFC 1.23, mainly in 3 areas: more fluid video, more fluid audio, and good controller synchronisation. So now,

* Video is at 20 FPS most of the time, not 45 FPS sometimes and 15 when lots of elements appear on the screen;
* Sound is more synchronised, meaning fewer crackles and less note-length jumping;
* You can press a button and the game will react to it properly; you can also release a button and the game will react to it properly.

Video being at 20 FPS is essential to the controller synchronisation for technical reasons. You can still set manual frame skipping to 1 or 0, but buttons might stop responding to presses or releases every so often for whole seconds at a time, so beware!

There are also 3 new translations made by GBAtemp forum members: German, Dutch and Spanish.

The GUI responds better to extended button presses: instead of opening or closing multiple menus with extended presses of the A and B Buttons, only one menu is opened or closed at once. Closing your DS will also make it go to sleep while in the menu or during emulation.

This release also uses up fewer erase cycles on your microSDs and exits from the menu faster, by NOT writing settings files every time you change or exit the current menu. It only saves when you actually change settings.

Compiling with the FAT access libraries provided by BassAceGold may mean that you will experience less file corruption in /CATSFC/GAMERTS, but please use the Windows Check Disk tool on your microSD first! For more information about this, please see CATSFC issue 31 on GitHub: https://github.com/ShadauxCat/CATSFC/issues/31
Have 1 people ratedProps Pack Reason
xskullx + 3

Total score: Props + 3   View Rating Log

Use magic Report

Rank: 3Rank: 3

Props
21
Online time
124 Hours
Posts
160
Post time 18-3-2013 06:51:56 |Show all posts
Edited by xskullx at 20-3-2013 11:30

CATSFC 1.33

Download it here: http://filetrip.net/d31795-CATSFC-1-33.html


Change log (v1.33):

1.33, the Text Changes Edition.
* Centers text without needing endless spaces in message boxes; also supports \n in multiline messages. Mainly of interest to those adding stuff in language.msg, but text should stop cutting oddly now.
* Brazilian Portuguese: In Frequencia da CPU, the first word should be Frequência. Thanks to Diego Liberal.
* Simplified Chinese is complete again.

This version is intended to go on the official Supercard plugins page.


Supercard DSTwo's NDSGBA 1.21 source has been released!
You can now include your improvements from CATSFC to NDSGBA.
Thank You Nebuleon!

Use magic Report

You have to log in before you can reply Login | register

Archiver|Mobile|SuperCard   

22-8-2017 05:05 GMT-8

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

To Top