RETROPA / TetaNES
TetaNES Core for NES on iPhone & iPad | Retropa
TetaNES is the alternative NES core in Retropa, and the one to try when RusticoNES will not cooperate. Its catalog entry reaches past cartridge games to disk images and NSF music, so know which kind of file you imported before you expect a game screen.
Download for iOSFree to download. Optional in-app purchases. iOS 18 or later.
Catalog systems and formats
Begin with the kind of file you actually hold, because TetaNES supports more of them than a plain cartridge core does. As an alternative to RusticoNES, it takes cartridges, disks and music: .nes, .fds, .nsf, .nsfe on the NES / Famicom line. Retropa tracks its own support list, which is shorter than the feature set of the upstream project at https://github.com/lukexor/tetanes. And it carries no games or BIOS of its own, so import only files you are entitled to use.
- NES / Famicom: .nes, .fds, .nsf, .nsfe
Music files are not cartridge games
NSF and NSFE hold NES music data, so a file that opens to silence instead of a title screen may be behaving. Play something and check the device volume and output before you call it broken. A music file will not gain a level select because you renamed it. The controls Retropa exposes are the app's own; a desktop player's interface is not part of the deal. For actual gameplay, pick a cartridge or disk image.
- Check device volume and audio output when testing music.
- Renaming an audio file cannot turn it into a cartridge image.
- UNIF extensions belong to RusticoNES's catalog entry, not TetaNES's.
Import a cartridge or disk image
Only import from the library once the file is genuinely on the device; an iCloud placeholder that looks present will fail. Then check that the app read it as NES. Famicom is the Japanese name for the same hardware; a Famicom Disk System image brings its own disk requirements on top. If TetaNES asks for a BIOS or reports a disk-data problem, satisfy that request. Swapping in an unrelated cartridge image solves nothing.
Test input and a repeatable scene
NES pads are small and predictable: directional pad, two action buttons, Start and Select. Confirm each one registers, and test a diagonal while you are there. Keep the default skin while you check controls, because a restyled layout can hide a dead direction. Then load the scene that misbehaves and watch it twice, once plain and once with a CRT effect. Scanlines change how detail looks, not what the core emulates.
Core switching and keeping progress
Reaching for TetaNES costs a Retropa Plus unlock, because changing cores sits behind it; playing NES itself does not. Ask first whether TetaNES even accepts the format you have, since a switch between cores is only meaningful where both lists overlap. Your choice sticks per game, and Retropa will not ask again next time. Before the test, archive the in-game save and any save states from the old core. One scene, two cores, then compare sound, picture and input.
- TetaNES save states belong to that implementation; keep them with TetaNES rather than moving them to another core.
- Preserve a tested game save before trying TetaNES; switching cores does not perform an automatic migration.
- Trying TetaNES does not convert the image or conjure a BIOS file.
An alternative is not a universal repair
TetaNES and RusticoNES diverge in both format lists and implementation. A swap tells you something only when your image is valid for both cores, and even then it isolates a timing or mapper difference rather than promising support for a cartridge board. Treat each core's save states as belonging to that core: keep them filed with it instead of moving them around like ordinary files.
Questions
Why does my NSF file not show a playable game?
NSF is music data. Test audio rather than expecting a normal game level; use a cartridge or disk image for gameplay.
Can I switch a NES game to TetaNES for free?
Changing emulation cores requires Retropa Plus. Check the target core's format coverage and back up progress first.
Retropa.
Free to download. Optional in-app purchases. iOS 18 or later.