Super Nintendo/Super Famicom emulator for the DSTWO
Find a file
Nebuleon Fumika 8a4343ff8e Bump the version number for NDSSFC.
* gui.c: #define NDSSFC_VERSION "1.08".
2012-12-20 19:34:51 -05:00
CATSFC Review French translation. All languages: Align the two-column messages based on the new font. 2012-12-19 23:34:44 -05:00
source Bump the version number for NDSSFC. 2012-12-20 19:34:51 -05:00
.gitignore Remove the SNES Open Bus behaviour by default. Also simplify translation again. 2012-12-20 18:14:24 -05:00
catsfc.bmp Images have to be 16-bit. -.- 2011-03-05 22:55:56 -05:00
catsfc.ini first commit 2011-03-05 21:39:25 -05:00
copyright first commit 2011-03-05 21:39:25 -05:00
installation.txt first commit 2011-03-05 21:39:25 -05:00
Makefile Remove the SNES Open Bus behaviour by default. Also simplify translation again. 2012-12-20 18:14:24 -05:00
README.md Somehow the C (language specifier) from a code block made it into the readme. 2012-12-20 19:08:18 -05:00
source.txt Changed the image to say CAT and actually included the address in the sources text. Silly me. 2011-03-05 21:59:51 -05:00
version first commit 2011-03-05 21:39:25 -05:00

CATSFC version 1.08, 2012-12-20

A Super Nintendo emulator for the Supercard DSTWO.

Based on:

  • Snes9x 1.43, by the Snes9x team (with research by the ZSNES folks, anomie, zsKnight, etc.)
  • NDSSFC 1.06, by the Supercard team (porting to the MIPS processor)
  • BAGSFC, by BassAceGold (improving over NDSSFC)
  • CATSFC, by ShadauxCat (improving over BAGSFC)

Compiling

Compiling CATSFC is best done on Linux. Make sure you have access to a Linux system to perform these steps.

The DS2 SDK

To compile CATSFC, you need to have the Supercard team's DS2 SDK. The Makefile expects it at /opt/ds2sdk, but you can move it anywhere, provided that you update the Makefile's DS2SDKPATH variable to point to it.

For best results, download version 0.13 of the DS2 SDK, which will have the MIPS compiler (gcc), extract it to /opt/ds2sdk, follow the instructions, then download version 1.2 of the DS2 SDK and extract its files into opt/ds2sdk, overwriting version 0.13.

The MIPS compiler (gcc)

You also need the MIPS compiler from the DS2 SDK. The Makefile expects it at /opt/mipsel-4.1.2-nopic, but you can move it anywhere, provided that you update the Makefile's CROSS variable to point to it.

Making the plugin

To make the plugin, catsfc.plg, use the cd command to change to the directory containing your copy of the CATSFC source, then type make clean; make. catsfc.plg should appear in the same directory.

Installing

To install the plugin to your storage card after compiling it, copy catsfc.plg, catsfc.ini and catsfc.bmp to the card's _dstwoplug directory. Then, copy the source directory's CATSFC subdirectory to the root of the card.

The font

The font used by CATSFC is now similar to the Pictochat font. To modify it, see source/font/README.txt.

Translations

Translations for CATSFC may be submitted to the author(s) under many forms, one of which is the Github pull request. To complete a translation, you will need to do the following:

  • Open CATSFC/system/language.msg.
  • Copy what's between STARTENGLISH and ENDENGLISH and paste it at the end of the file.
  • Change the tags. For example, if you want to translate to German, the tags will become STARTGERMAN and ENDGERMAN.
  • Translate each of the messages, using the lines starting with #MSG_ as a guide to the context in which the messages will be used.
  • Edit source/nds/message.h. Find enum LANGUAGE and add the name of your language there. For the example of German, you would add this at the end of the list:
      ,
      GERMAN
    
  • Still in source/nds/message.h, just below enum LANGUAGE, you will find extern char* lang[ some number ]. Add 1 to that number.
  • Edit source/nds/gui.c. Find char *lang[ some number ] =. Add the name of your language, in the language itself. For the example of German, you would add this at the end of the list:
      ,
      "Deutsch"
    
  • Still in source/nds/gui.c, find case CHINESE_SIMPLIFIED. Copy the lines starting at the case and ending with break, inclusively. Paste them before the }. Change the language name and tags, and update the cmplen to be the length of the START tag. For the example of German, you would use cmplen= 11;, because that's the length of STARTGERMAN:
      case GERMAN:
      	strcpy(start, "STARTGERMAN");
      	strcpy(end, "ENDGERMAN");
      	cmplen = 11;
      	break;
    

Compile again, copy the plugin and your new language.msg to your card under CATSFC/system, and you can now select your new language in CATSFC!