sf2000/README.md
2023-05-07 17:08:05 +01:00

13 KiB

Resources

The Resources folder on the microSD card contains all of the resources used by the device's firmware to construct the user interface at runtime. The following tables list the files from the 20230420 firmware and what they are used for, grouped by broad categories:

Fonts

Filename Description
Arial_cn.ttf The "Arial" typeface, containing Latin, Greek, Cyrillic, Chinese, and Japanese characters. Duplicate of yahei_Arial.ttf, the single font file from the original firmware version
Arial_en.ttf The "Arial" typeface, containing Latin, Greek, Cyrillic, Armenian, Hebrew and Arabic characters
Arial_jp.ttf The "Arial" typeface, containing Latin, Greek, Cyrillic, Chinese and Japanese characters
Arial_kr.ttf The "Arial" typeface, containing Latin, Greek, Cyrillic, Chinese, Japanese and Korean characters
Tahoma.ttf The "Tahoma" typeface, containing Latin, Greek, Cyrillic, Armenian, Hebrew, Arabic and Thai characters
yahei_Arial.ttf The "Arial" typeface, containing Latin, Greek, Cyrillic, Chinese, Japanese and Korean characters

Images (Used)

As far as I am aware, all of the below images are actively used by the 20230420 version of the firmware; happy to take any corrections if it turns out any of them are unused!

Filename Format Description
aepic.nec 576x256 BGRA Main menu labels in Korean
apisa.dlk 640x480 RGB Arcade game list background
appvc.ikb 150x214 BRGA Game art placeholder
awusa.tax 576x256 BRGA Main menu labels in Thai
bisrv.nec 640x480 RGB In-game menu (position 3)
bttlve.kbp 60x144 BGRA Battery level indicator icons
c1eac.pal 640x480 RGB SNES game-list background
cero.phl 640x480 RGB Game Boy Color game-list background
certlm.msa 40x24 BGRA NES game-list indicator
d2d1.hgp 640x480 RGB In-game menu (position 2)
dism.csf 640x480 RGB In-game menu (position 1)
djctq.rsd 40x24 BGRA SNES game-list indicator
djoin.nec 576x256 BRGA Main menu labels in Spanish
dpskc.ctp 640x320 RGB In-game menu save-state slots (positions 1, 2, 3 and 4)
drivr.ers 640x480 RGB SNES main menu background
dsuei.cpl 640x480 RGB User ROMs main menu background
dxdiag.bin 40x24 BGRA Genesis/Mega Drive game-list indicator
dxkgi.ctp 576x256 BRGA Main menu labels in English
dxva2.nec 640x480 RGB Search keyboard (pressed)
ectte.bke 161x126 BRGA Main menu icon selection box
efsui.stc 640x480 RGB Game Boy Advance game-list background
esent.bvs 576x256 BRGA Main menu labels in Turkish
exaxz.hsp 152x1224 BRGA Main menu "Games Exist" and "Start: Open" labels for all languages
fixas.ctp 640x480 RGB NES main menu background
fltmc.sta 640x480 RGB Game Boy game-list background
fvecpl.ai 40x24 BGRA Game Boy game-list indicator
gpsvc.bvs 392x80 RGB In-game menu save-state slot (position 3)
hctml.ers 640x480 RGB Arcade main menu background
hgcpl.cke 392x80 RGB In-game menu save-state slot (position 2)
hlink.bvs 640x480 RGB Search keyboard (hover)
htui.kcc 40x24 BGRA Game Boy Color game-list indicator
icm32.dll 40x24 BGRA Game Boy Advance game-list indicator
icuin.cpl 640x480 RGB Genesis/Mega Drive main menu background
ihdsf.bke 640x480 RGB Genesis/Mega Drive game-list background
irftp.ctp 640x480 RGB Game Boy Advance main menu background
irmon.tax 576x256 BRGA Main menu labels in Dutch
itiss.ers 576x256 BRGA Main menu labels in Chinese
jccatm.kbp 640x480 RGB "Battery Empty" screen
ke89a.bvs 576x256 BRGA Main menu labels in Portuguese
ksxbar.ax 392x80 RGB In-game menu save-state slot (position 4)
lfsvc.dll 640x480 RGB Search game-list background
mksh.rcv 640x480 RGB Search keyboard (normal)
msdmo.gdb 392x80 RGB In-game menu save-state slot (position 1)
msgsm.dll 40x24 BGRA Arcade game-list indicator
mssvp.nec 576x256 BRGA Main menu labels in Japanese
normidna.bin 40x24 BGRA Search game-list indicator
ntdll.bvs 576x256 BRGA Main menu labels in Polish
pcadm.nec 576x256 BRGA Main menu labels in Italian
pwsso.occ 640x480 RGB In-game menu (position 4)
qasf.bel 640x480 RGB User game-list background
qwave.bke 640x480 RGB Game Boy Color main menu background
rmapi.tax 576x256 BRGA Main menu labels in German
sdclt.occ 120x2280 RGB TV system and UI language selection icons
sebsc.bvs 576x256 BRGA Main menu labels in French
sfcdr.cpl 576x1344 BRGA Main menu system logos
subst.tax 576x256 BRGA Main menu labels in Russian
ucby4.aax 576x256 BRGA Main menu labels in Arabic
urlkp.bvs 640x480 RGB NES game-list background
vidca.bvs 576x256 BRGA Main menu labels in Hebrew
vssvc.nec 576x256 BRGA Main menu labels in Malay
xajkg.hsp 640x480 RGB Game Boy main menu background

Images (Unused)

To the best of my knowledge, the following image files are currently unused by the 20230420 firmware, and were probably left over from previous devices (the SF2000 shares a bit of lineage with some USB-stick devices) or development. The images marked "Alternate UI" below appear to have been for a UI where the systems were scrolled through horizontally, and the "shortcut" games for each system were scrolled vertically.

Filename Format Description
aeinv.bke 640x480 RGB Alternate UI: Genesis/Mega Drive main menu background
aepic.ers 640x480 RGB Alternate UI: User main menu background
c1e.pal 640x480 RGB CPS2 game-list background
cca.bvs 640x480 RGB In-game menu (position 1; Chinese language hardcoded)
dectMap.key 640x480 RGB Button test screen (active)
desk.cpl 640x480 RGB Eight-game selection screen
djoin.hsp 640x480 RGB Alternate UI: Arcade main menu background
fcont.ctp 640x480 RGB Alternate UI: User main menu background
fdbil.ph 1100x120 BGRA Large icons for each system, including systems not supported by the SF2000 (selected)
gpapi.bvs 640x480 RGB In-game menu (position 5; looks like it was for some kind of button layout changing UI)
igc64.dll 217x37 BGRA "Yes" and "No" text, with "No" selected
ihds.bke 640x480 RGB Genesis/Mega Drive game-list background, with baked-in thumbnail placeholder
kdill.hsp 640x480 RGB Alternate UI: Game Boy Advance main menu background
logilda.be 40x24 BGRA CPS1 game-list indicator
mfc64.emc 40x24 BGRA CPS2 game-list indicator
mfpmp.ers 640x480 RGB Alternate UI: Arcade main menu background
mrtac.klo 40x24 BGRA Neogeo game-list indicator
msdtc.bke 640x480 RGB Alternate UI: Game Boy Advance main menu background
mswbv.cpl 640x480 RGB Alternate UI: Game Boy Advance main menu background
nettrace.dll 40x24 BGRA Unknown game-list indicator (grey joystick with yellow buttons)
nsibm.ctp 640x480 RGB Alternate UI: Arcade main menu background
nvinf.hsp 16x240 BGRA Latin numbers 0 to 9 listed vertically
nvinfohsp 640x480 RGB Alternate UI: Genesis/Mega Drive main menu background (note: there's no extension separator for this file, I suspect the file name is typo'd in the filesystem!)
pcadm.hsp 640x480 RGB Alternate UI: User main menu background (NTSC TV system selected)
plasy.ers 640x480 RGB Alternate UI: Game Boy Advance main menu background
rmapi.cpl 640x480 RGB Alternate UI: User main menu background (English UI language selected)
seltMap.key 640x480 RGB Button test screen
spmpm.gdp 640x480 RGB Alternate UI: NES game-list background, with baked-in thumbnail placeholder
subst.bke 640x480 RGB Alternate UI: Arcade main menu background
tsmcf.cpl 640x480 RGB Alternate UI: Arcade main menu background
url.bvs 640x480 RGB CPS1 game-list background
werui.ioc 40x24 RGB "NODATA" save-state thumbnail placeholder image, with a "horror" style typeface
wshom.ocx 1100x120 BGRA Large icons for each system, including systems not supported by the SF2000 (normal)
wshrm.nec 217x37 BGRA "Yes" and "No" text, with "Yes" selected
x86e.hgp 640x480 RGB Neogeo game-list background

Other Files

These are other files that have been identified, which don't fit into the other categories. Non-Latin characters in the files are encoded in UTF-8.

Filename Description
bfrjd.odb UI strings in Korean
bxvtb.sby UI strings in Thai
dufdr.cwr UI strings in Turkish
eknjo.ofd UI strings in Spanish
fhshl.skb UI strings in English
Foldername.ini Used to control menu rotation for the main menu (this information came from the 4PDA forum)
jsnno.uby UI strings in Dutch
kcbn7.avc Duplicate copy of bisrv.asd, the main firmware for the device which is found in the BIOS folder
lf9lb.cut UI strings in Portuguese
ntrcq.oba UI strings in Japanese
ouenj.dut UI strings in Polish
qdbec.ofd UI strings in Italian
sgotd.cwt UI strings in French
snbqj.uby UI strings in German
t2act.sgf UI strings in Chinese
Test.zsf A SNES ROM, which displays a controller test program
tvctu.uby UI strings in Russian
vdaz5.bjk UI strings in Arabic
wtrxj.lbd UI strings in Malay
xjebd.clq UI strings in Hebrew

ROM Lists

Credit for this section goes to taizou#9644, author of [Frog Tool|https://github.com/tzlion/frogtool]. These files relate to the built-in game lists under each main system; the list of games is pulled from these files instead of being built at runtime - annoying, but presumably for performance reasons. It means if you want to change the list of built-in games (instead of using the User ROMs section), you have to edit these files - hence Frog Tool, you should really check it out.

| Files | Description | | mfpmp.bvs (Arcade), mgdel.bvs (Game Boy Color), nethn.bvs (NES), qdvd6.bvs (Game Boy), sppnp.bvs (Game Boy Advance), wmiui.bvs (Genesis/Mega Drive), xvb6c.bvs (SNES) | Pinyin translations of the English ROM names, used for Chinese language searching. Not all game names are translated | | adsnt.nec (SNES), fhcfg.nec (NES), htuiw.nec (Game Boy Advance), msdtc.nec (Arcade), setxa.nec (Genesis/Mega Drive), umboa.nec (Game Boy), wjere.nec (Game Boy Color) | Chinese translations of the English ROM names, used to display the game lists when the UI language is set to Chinese. Not all game names are translated | | mswb7.tax (Arcade), pnpui.tax (Game Boy Color), rdbui.tax (NES), scksp.tax (Genesis/Mega Drive), urefs.tax (SNES), vdsdc.tax (Game Boy), vfnet.tax (Game Boy Advance) | English ROM Names, used to display the game lists when the UI language is set to English | | xfgle.hgp, xfgle.hgp.bak | The xfgle.hgp file contains the ROM "shortcuts" on the main menu for each game system. The xfgle.hgp.bak file appears to be a test version of this file that was not removed from the firmware before being sent to production |

Sounds

There are two sound files in the 20230420 firmware, both in raw signed 16-bit PCM format (little-endian, mono, at 22050 Hz). The SF2000 seems to play the files back at an incorrect sample rate vs. the raw data; if you want to customise the background music, resample your audio to 21543 Hz, and then speed the audio up to 22050 Hz, using the resulting audio as the raw data (credit to notv37#4200 in Discord for doing the math on that).

Filename Description
pagefile.sys Main menu background music
swapfile.sys Short "navigation" sound

Unknown Files

These are files that I have not yet determined what they do; if anyone has any information on these, do post about it in the Data Frog channel in the Retro Handhelds Discord server please!

Filename Description
Archive.sys UNKNOWN; 8 bytes, first are 0x02, the rest are all 0x00
c2fkec.pgt UNKNOWN; binary
dpnet.dll UNKNOWN; binary
dsreg.bvs UNKNOWN; binary. Not the same format as the *.bvs files mentioned in the "ROM Lists" section above
help.lis UNKNOWN; binary
kcnuv.lit UNKNOWN; a bunch of 4-byte binary chunks (e.g., 0xC4 0x00 0x00 0x00), followed by a list of .NES ROM file names. Very similar to the .bvs/.nec/.tax files detailed above, but doesn't have the same type of "header" they have
mfsvr.nkf UNKNOWN; binary
nyquest.gdb UNKNOWN; binary
oldversion.kbe UNKNOWN; binary
TSMFK.TAX UNKNOWN; four bytes, all 0x00. Not the same format as the *.tax files mentioned in the "ROM Lists" section above