An NES emulator for the X Window System (specifically, Linux and FreeBSD i386) based on NEStra and released under GPL, with a weird melange of copyright holders.

The best NES emulator for Linux I've used, because iNES is non-free, and with that you have to specify refresh rates, so it's hard to get the timing perfect. That and the author of iNES hardly ever updates his Linux binary: FreeBSD and Solaris are always the first platforms compiled. NEStra, last time I checked, doesn't support much at all, and TuxNES is sort of like a multi-copyright enchancement to it.

Also supports /dev/js* joystick interface under Linux, I'm not sure about FreeBSD support.

update: yeah, I read about the dynamic recompilation. I guess I didn't remember seeing any nasm stuff compiling it, so I assumed it was written in pure C.

outdated review; try fce ultra too

TuxNES is a good NES emulator for Linux86 and FreeBSD/x86 systems (because it uses dynamic recompilation, it'd need massive changes to work on any other architecture). It's also a disassembler: give it a command-line switch, and every 6502 instruction executed is disassembled to stdout. It can take screenshots of the NES's 256x240, 53-color display. It currently supports .nes and .nes.gz formats and will soon support UNIF. Not only can it render to X11, it can also render to GGI and even the W Window System used (for example) on some embedded devices.

TuxNES supports most popular board types reasonably well. Once, I submitted a bug report to TuxNES maintainer The Mighty Mike Master that the emulator wasn't loading 16 KB MMC3-based ROMs correctly; the mapper code inherited from NEStra assumed a 32 KB or larger ROM, screwing up the address map and causing a lockup immediately after pulling the reset vector.

There are still a few bugs in TuxNES; for instance, it segfaults on a demo I wrote that displayed 64 bouncing soda cans.

All in all, I give TuxNES three stars out of four (where 4 is the real gray box and 1 is NESticle), almost on the same level as LoopyNES.

Log in or registerto write something here or to contact authors.