::::: : the wood : davidrobins.net

Hacking NEStopia

News ·Wednesday July 11, 2007 @ 20:51 EDT (link)

Various hacks:

20070520: I wrote a short cron script to prefix season.episode (e.g. "04.02") to TV show episode names on the MythTV box—one of the benefits of being open (schema and hardware), and thanks to epguides.com.

20070608 Sometimes, when you watch Warcraft replays, you prefer to watch only certain replays. We prefer to watch replays where the heroes get their "ultimate" (most powerful) spell, so I wrote a perl program using LWP::UserAgent to find only those replays.

20070701 I was looking for a decent NES emulator for Honey, to run on our MythTV box; I wasn't having much luck with FCE Ultra, which is supposed to be decent (it's not), so tried a few others, eventually found NEStopia, which did almost everything I wanted, except that the controller didn't work (keyboard did). I started hacking the source, figured out how to setup the buttons for my Xbox controller (and added an Xbox .nstcontrols file for others to use), and added support for quick save and load, and the ability to exit the emulator by pressing a button (previously Escape was hard-coded to quit the game only, not the program, which made things difficult when playing the game in MythTV without a keyboard handy). In the process, I completely refactored the key handling code. I posted my patch to the forum (here); it should be in Linux overlay preview release #6 (1.37R6).

20070702: I wrote a utility to interactively generate the input configuration file, which may be merged into the GUI by the maintainer.

20070704: Added support for Game Genie cheats, toggled by a user-configurable key/button, and posted the patch. Watched fireworks from our lower deck in the evening.

Distributed Re-imaging:

2007-07-08: Khazad-dûm, my Linux desktop/mail machine, shuts down for the last time, after backing up all files of interest to the server (minas-tirith).

2007-07-10: Finished rebuilding as Lothlórien: it used to run LFS (a good learning experience but hard to upgrade) to Gentoo, like my other machines. It was long overdue for an update; the KDE upgrade especially looks very slick, although Kmail still crashes if I'm not careful. I also finally moved from POP3 to IMAPv4 (I already had Honey on IMAP), and shut down the POP3 server. Since both the server and client were using Maildir format, it was pretty simple to make my old local folders into IMAP folders; the only differences were how Kmail and the IMAP server treats directories (which are an extension to the Maildir standard); a short perl script converted them over easily. When building everything, since the machine is an old 400Mhz Pentium II, I installed distcc, an open source distributed compilation framework, and had it use a few of my other machines to help compile, a huge time savings.