How To Install RetroArch in Windows

Building Project Magnavox into a genuine all-in-one entertainment system is more than just being able to access all my videos, music, and streaming media on one device. To round-out the feature set, we need to take a page from Microsoft’s playbook and add videogames to the mix. Granted, I could install all my game consoles underneath the television, but that takes up more room than I actually have in my small apartment. Besides, outside the aesthetic benefits of having a veritable museum in my living room, it’s frankly more trouble than it’s worth to rig the wiring, route the cabling, and squint at a screen stretched beyond its original aspect ratio. As awesome as James Rolfe‘s basement is, until I have my own library, I’d like to keep my setup as space-efficient as possible.

This leaves me with one of the most polarizing concepts in classic gaming: emulation.

Now, I’m no stranger to the debate, and let me first say adamantly that it is the opinion of this reporter that, legally speaking, you may make backup copies of software that you have legitimately obtained for personal use [emphasis added]. This is the only application that we will be dealing with here. Secondly, I advocate for emulation in this sense because it does make playing the games much easier and convenient, contributing to my own enjoyment. Thirdly, the so-called “collector’s market” has driven the prices for games through an unsustainable ceiling, and because young millennials would like bragging rights by being able to “own” a copy of a particular game, all the carts and discs worth playing have been bought up only to appear on eBay at ten times or more their original price. Much like the market for vinyl has all-but ruined the casual collection of original-run albums, the market for cartridges and discs has similarly eroded the enjoyment from the hobby.
Enter Libretro, a handy piece of software that seeks to pull as many different emulator “cores” into one central application, running almost any classic game as close to original quality as possible in a convenient package. The Libretro API uses a custom front-end called RetroArch to set up and run the roms for each emulator core. The pair are installed simultaneously as a package, and each core is installed as an add-on from within RetroArch itself.

To install RetroArch in Windows, simply download the latest stable RetroArch build from the website, then unzip the downloaded file to the location of your choosing. If you’re still running Windows 7 (because fuck Windows 10), you may run into a missing file error. Specifically, you may be missing d3dx9_43.dll from the DirectX runtime, so you should follow my instructions for fixing that error here.

That’s it! RetroArch is completely self-contained and should run without incident. Use the arrow keys, Z, and X for most of the navigation (you’ll see a control map on first run), download an emulator core from the Online Updater menu, open your freshly-dumped roms, and get playing!

How To Run Games From Kodi

As we’ve seen from previous numbers, Kodi is a pretty powerful application that can be extended to power your entire media experience from local downloaded and physical media to a nearly infinite number of media streams, but we have not covered exactly how to run games from Kodi. For this, we’ll obviously need some games installed on our system, and we’ll need to download an add-on called Rom Collection Browser (if you followed my recommendation to use the Aeon series of skins, you will have RCB already installed on your system).

Rom Collection Browser is available through the stock Kodi repository under the programs menu and is installed like any other add-on.

Before we begin the setup, we must ensure that our files are sorted correctly on the computer. For emulators, each set of roms needs to be in its own folder, sorted by system (all NES roms need to be in an exclusive folder, all SNES roms need to be in an exclusive folder, etc.). For Windows games, make a new folder and place a shortcut to each game’s executable file within.

On first run, Rom Collection Browser will prompt you to create a configuration file, click OK and it will bring up the initial configuration file for a new rom collection. First, RCB will ask you to choose a location for the game information and artwork. Since this is a first run, you will most likely need to download all the pertinent artwork and information, so choose the online option.

Wizard - Online 2 - small

Next, you’ll need to choose a platform for your game collection. If you are adding roms for an emulator, choose the appropriate system for the emulation. If you are adding PC games installed locally, choose the appropriate option (Windows/OSX/Linux).


Once you’ve set your platform, RCB will prompt you to browse to the emulator executable (unless you are adding Windows games, in which case, RCB will skip to the next section). Once you have selected the executable, you will be prompted to enter the particular emulator’s command-line parameters, if applicable. Most emulators worth their salt offer a CLI parameter set to add a measure of granular control over each game as it is executed, because who wants to dick around with settings on a game-by-game basis every time you want to play something different? RetroArch, by far, is the best of the bunch in this respect, and I highly recommend it for all your emulation needs.

RCB will now ask you to browse to the folder containing the roms you are adding. On the next screen, you will type in the file mask for the particular set of roms you are adding (for Windows games, the file mask is *.lnk).

Next, you’ll select a path to the artwork folder. I prefer to use the same folder that contains the roms. RCB will create folders for the basic types of artwork (boxfront, boxback, screenshot, fanart), so you needn’t specify a location for each…yet.

Finally, RCB will ask if you would like to add another rom collection. I recommend only adding one collection at a time as it tends to be easier to watch for mistakes, but you may prefer to do all your scraping at once, and that’s your mistake to make. If you choose to add another collection, you’ll be redirected to the platform choice dialog and start the process over again. If you choose not to, you will be directed to the scraping dialog.


In the scraping dialog, you will be presented with several options. First, choose the particular system that you will be scraping information for. Next, choose the level of interactivity you wish to utilize. For large collections, I recommend starting with the fully-automated (“Automatic: Accurate”) option to do the heaviest lifting without needing to constantly monitor the progress. Once the majority of games have been successfully scraped, use the “Interactive: Select Matches” option to import the titles that may have oddly formatted or incorrect file names. On first fun, I recommend using the default trio of scrapers. Later edits may require changing scrapers, but these three should take care of the bulk. RCB will now query the specified scrapers for information and artwork regarding each game you’re importing (much like Kodi does for your video or music library). Once finished, you will be presented with a list of games ready to play. Simply select them from the list, hit “OK” on your remote, and get to playing!

Scraping Games In Rom Collection Browser

A few tips and tricks to better scraping games in Rom Collection Browser:

As of this writing, the usually glitches and causes an error during scraping. If this happens, change scrapers for the next run; the GiantBomb scraper still seems to be working.

Not every rom file will find the right game. If this happens, choose a unique title that isn’t in your collection, then edit the *.nfo file manually. Even if the file scrapes correctly, you can make changes to the *.nfo file to tweak your library listings. For example, renaming “Zelda II: The Adventure of Link” to “The Legend of Zelda II: The Adventure of Link” or “Super Castlevania IV” to “Castlevania IV: Super Castlevania” to keep sequels with their respective franchises.

Use the Local Artwork scraper to fill in missing or incorrect artwork manually. Make sure the image(s) are in the correct folder(s) and named EXACTLY the same as the rom file that they belong to (excluding the extension, of course). Also, use Local Artwork to add videos to your library listings. I prefer to locate recordings of the games’ original television advertisements, reveling in the nostalgia and casually examining how sensibilities have evolved over time. Arcade games naturally get their attract mode videos.

A Video Celebration of the Commodore 64

My first computer and game console was the Commodore 64. I still remember those halcyon days with the hulking keyboard/computer assembly connected to the back of the beautiful wooden console television we got as a hand-me-down when my grandparents upgraded theirs to a new Curtis Mathes from the company store in Austell. I can close my eyes and instantly be transported back to the late-1980s, sitting crosslegged in the living room floor, turning the television dial to channel 3 with a satisfying “kaCHUNK” giving way to the unbearable roar of analog snow. With a flip of the switch from “TV” to “GAME” on the small black box dangling from the antenna connection, the snow gave way to the low hum that an old CRT emits when forced to display a static image–the one that changes pitch slightly depending on the color displayed. I had Frogger on cassette tape and it took what seemed–to a child, anyway–to be hours to load, but it was all worth it when I finally managed to beat the preset high score!

The Commodore 64 taught me more about electronics than any single device and begat a lifelong affinity for computers, games, programming, production, and tinkering that persists to this day. Without the Commodore 64, I may never have desired a world beyond Cobb County, Georgia. The gentleman in the video–microcomputing heavyweight Jim Butterfield who, let’s face it, is nearly comical in his blasé approach to the presentation (“It’s a pretty good computer”)–walks us through the entire setup and use of the C64 in a 2-hour-long celebration of the classic machine.

Commodore 64 User's Guide. It's a very important book. You'll need it. Don't throw it away.“In here we have the Commodore 64 User’s Guide; that’s a very useful book. You’ll need that. Don’t throw it away.”

Jim Butterfield

Yes, sir, Mr. Butterfield. Yes, sir.

Battle Chess


I drew this sometime back in the mid-1990s, my interpretation of the cover art for Interplay’s Battle Chess. For some reason, I found the Queen quite…inspirational. For comparison, here is the original:1069577527-00

Well, the artist is granted some creative license when creating a reproduction, right?

I’ve Made a Game!

I’ve been working with computer code–in one form or another–since typing BASIC commands to run games on my Commodore 64 back in the late 1980s. In elementary school, my friend Kyle and I would spend Saturday afternoons copying programs into QBasic from the back pages of 3-2-1 Contact magazine before moving on to designing and programming our own Zork-style text adventure games. In middle and high school, I moved into HTML and Flash, trying my hand at online interactivity. Eventually, I gave up on Windows and moved into the wonderful world of Linux, Bash, and Python.

Bringing it full circle, I’ve been taking a few coding boot camps, relearning the skills I haven’t used in earnest for years. I enjoy making things, and I miss building interactive things. So, for the first time in nearly two decades, I’ve built a game from scratch. It’s JavaScript, and it’s fairly simple, but it’s been a great exercise. Play it, have fun with it, and let me know what you think!


REACT! screenshot

What’s Inside The Xbox 360 Rechargeable Battery Pack?

Ever wondered what kind of official Microsoft Xbox 360 Rechargeable Battery is in the Xbox 360 Play and Charge Kit? I’ll bust one open and show you what kind of cheap crap they’re made with!

Don’t waste your money. Use a proper pair of NiMH AA’s with the stock battery case that comes with the controller! Get one of these:

If you want a set of “warranty voiders” like I have, this is the set that I use 


00:00:00,000 –> 00:00:04,789
so have you ever wondered what’s inside

00:00:04,789 –> 00:00:04,799

00:00:04,799 –> 00:00:08,509
these silly little xbox 360 controller

00:00:08,509 –> 00:00:08,519

00:00:08,519 –> 00:00:10,759
battery packs

00:00:10,759 –> 00:00:10,769

00:00:10,769 –> 00:00:16,250
well I have one and obviously and the

00:00:16,250 –> 00:00:16,260

00:00:16,260 –> 00:00:19,160
controller in the battery i hadn’t played for a

00:00:19,160 –> 00:00:19,170

00:00:19,170 –> 00:00:21,620
while and so the battery has just gone

00:00:21,620 –> 00:00:21,630

00:00:21,630 –> 00:00:24,230
absolutely dead I mean it is dead as

00:00:24,230 –> 00:00:24,240

00:00:24,240 –> 00:00:27,470
dead as dead and I cannot get it to

00:00:27,470 –> 00:00:27,480

00:00:27,480 –> 00:00:29,900
charge for the life of me I even tried

00:00:29,900 –> 00:00:29,910

00:00:29,910 –> 00:00:31,429
that silly little trick that they’re

00:00:31,429 –> 00:00:31,439

00:00:31,439 –> 00:00:34,490
talking about on youtube of shorting out

00:00:34,490 –> 00:00:34,500

00:00:34,500 –> 00:00:36,920
the terminals in order to discharge the

00:00:36,920 –> 00:00:36,930

00:00:36,930 –> 00:00:38,690
battery and then reset the logic board

00:00:38,690 –> 00:00:38,700

00:00:38,700 –> 00:00:43,130
but no that’s not going well I mean

00:00:43,130 –> 00:00:43,140

00:00:43,140 –> 00:00:45,770
I got nothing to lose so i tried it just

00:00:45,770 –> 00:00:45,780

00:00:45,780 –> 00:00:47,330
for the hell of it it still doesn’t work

00:00:47,330 –> 00:00:47,340

00:00:47,340 –> 00:00:50,750
and if it didn’t work before it sure as

00:00:50,750 –> 00:00:50,760

00:00:50,760 –> 00:00:53,420
hell don’t work now so I was kind of

00:00:53,420 –> 00:00:53,430

00:00:53,430 –> 00:00:55,580
curious as to what was inside this thing

00:00:55,580 –> 00:00:55,590

00:00:55,590 –> 00:00:58,970
so I pulled out my my handy-dandy

00:00:58,970 –> 00:00:58,980

00:00:58,980 –> 00:01:04,490
warranty voiding kit and I cracked her

00:01:04,490 –> 00:01:04,500

00:01:04,500 –> 00:01:06,350
open so if you want to know what’s

00:01:06,350 –> 00:01:06,360

00:01:06,360 –> 00:01:11,270
inside a battery already busted it open

00:01:11,270 –> 00:01:11,280

00:01:11,280 –> 00:01:12,740
and put it back together just for

00:01:12,740 –> 00:01:12,750

00:01:12,750 –> 00:01:15,440
simplicity but anyway if you want to

00:01:15,440 –> 00:01:15,450

00:01:15,450 –> 00:01:17,210
know what’s inside one of these silly

00:01:17,210 –> 00:01:17,220

00:01:17,220 –> 00:01:19,850
things so you take that there and

00:01:19,850 –> 00:01:19,860

00:01:19,860 –> 00:01:23,330
there’s a spring thingy and it is really

00:01:23,330 –> 00:01:23,340

00:01:23,340 –> 00:01:28,940
it’s just two generic 2400 miliamp hour

00:01:28,940 –> 00:01:28,950

00:01:28,950 –> 00:01:33,859
nickel-metal hydride batteries so moral

00:01:33,859 –> 00:01:33,869

00:01:33,869 –> 00:01:36,800
of the story is don’t waste your

00:01:36,800 –> 00:01:36,810

00:01:36,810 –> 00:01:39,230
hard-earned money on this official

00:01:39,230 –> 00:01:39,240

00:01:39,240 –> 00:01:44,960
microsoft crap because you can go and

00:01:44,960 –> 00:01:44,970

00:01:44,970 –> 00:01:48,230
get yourself a pair eneloops for

00:01:48,230 –> 00:01:48,240

00:01:48,240 –> 00:01:52,310
same price as one of these things and

00:01:52,310 –> 00:01:52,320

00:01:52,320 –> 00:01:54,980
stick them in the stock shell that comes

00:01:54,980 –> 00:01:54,990

00:01:54,990 –> 00:01:56,359
with the control of the stock aa

00:01:56,359 –> 00:01:56,369

00:01:56,369 –> 00:01:59,270
shell and there you go you’ve got

00:01:59,270 –> 00:01:59,280

00:01:59,280 –> 00:02:02,149
yourself some you get four eneloops

00:02:02,149 –> 00:02:02,159

00:02:02,159 –> 00:02:04,490
four eneloops for the price of one

00:02:04,490 –> 00:02:04,500

00:02:04,500 –> 00:02:05,620
of these little

00:02:05,620 –> 00:02:05,630

00:02:05,630 –> 00:02:09,550
so there you go you’ve got yourself some

00:02:09,550 –> 00:02:09,560

00:02:09,560 –> 00:02:11,140
from rechargeable nickel-metal hydride

00:02:11,140 –> 00:02:11,150

00:02:11,150 –> 00:02:14,020
that are better quality than this and

00:02:14,020 –> 00:02:14,030

00:02:14,030 –> 00:02:16,270
and are going to last you a lot longer

00:02:16,270 –> 00:02:16,280

00:02:16,280 –> 00:02:19,839
than this stupid hacked together piece of

00:02:19,839 –> 00:02:19,849

00:02:19,849 –> 00:02:21,790

00:02:21,790 –> 00:02:21,800

00:02:21,800 –> 00:02:27,130
thanks for watching