RetroArch may be the single greatest contribution to classic gaming emulation since the dawn of Nesticle: a multi-console emulator frontend spanning the history of videogames from the Atari 2600 through Playstation eras. Libretro is the companion to RetroArch that contains all the emulator cores.
Installing RetroArch and Libretro in Windows or OSX is a fairly simple process of downloading the RA binary and the Libretro cores, but in Linux, it takes a little more effort.
First, add the Hunter Kaller repository to Ubuntu and update:
If you’re going to play games using RetroArch, you’re going to need a proper controller. There are a variety of wired, “classic-style” controllers out there that can offer you a variety of retro experiences, but they all need a driver to work. Fortunately, the Ubuntu repositories have you covered!
First, install the Joystick input driver package:
sudo apt-get install joystick
Next, install the Joystick Configuration package:
sudo apt-get install jstest-gtk
Now you can use jstest-gtk to configure your settings and calibrate the controller. Everything else is ready to go!
Linux is great for many applications, but the plugins that drive streaming services like Netflix and Hulu are closed-source and the developers have little to no interest in supporting a “fringe” operating system. Thankfully, the fine folks at Google saw the wisdom in giving back to the community that helped build them by building Netflix and Hulu support into the Google Chrome browser.
Install Google Chrome by downloading the appropriate package from the Chrome website and you’re ready to go!
FileZilla is the de facto Windows FTP server solution. It is an open-source, free application distributed under the GNU public licence.
Installation is fairly straightforward, simply download and run the installer binary. Be careful, though, because Sourceforge sneaks some “sponsored software” into the installer, and you may end up with a little bloatware that you didn’t want or need. The default settings are fine, but you may want to change the default port if you’re going to be opening this sucker to the entire Interweb. Today, though, we’re staying behind the safety of our hardware firewall, so we can only access files if we’re connected to the same wifi.
Setup is a little convoluted, but can be made simple by following these easy steps:
One the server daemon is running and you are in the main window, click the “Users” button to add users to the server.
In the Users window, click the “Add” button on the right side, type in a username and click “OK”. The user you just specified will be enabled automatically. You can assign a password for this user by checking the box next to “Password” and typing one in.
Clicking the “Shared Folders” branch (on the left side), you can add directories and assign permissions. I only assign write, delete, and append permissions to my admin account while I give other users the ability to read files on the server. Each directory will require an alias, so give it something easy to remember when you open it in your FTP client.
Windows 7 does a pretty decent job of sealing itself off from the wild and the wooly of the Interweb with its built-in firewall, but sometimes you have an application running that needs to interact with the outside world: a game or an FTP server, perhaps. In order for these applications to work correctly, you’re going to need to punch a hole in your firewall by adding an exception to Windows Firewall.
First, open Windows Firewall settings from the System and Security settings in the Control Panel.
In the left sidebar, click “Allow a program of feature through Windows Firewall”
Choose the program from the list and check the box to the left to allow an exception. Check the boxes to the right to specify which networks the exception is allowed on.
If your application does not appear on the list, click the “Allow another program…” button in the lower left, and either highlight the program from the list or browse for the executable file, then click the “Add” button. (NOTE: for FileZilla Server, make sure that “FileZilla server.exe” is given the exception NOT “FileZilla server interface.exe”)
WinLIRC, unlike its Linux-based sibling, is a finicky priss to get working. I tried to follow the setup guide on their website, but it was getting late and I could no longer make heads or tails of what they were trying to convey. Starting fresh this morning, I took to futzing around with the settings until I had it working correctly.
When you first run WinLIRC, you will get this error message off the bat:
Okay, I haven’t even defined a configuration, so obviously nothing’s going to work! Thanks, WinLIRC! Click “OK” and you’ll be taken to the main Setup window.
10 In the top section, choose the Input Plugin that is compatible with your remote. Since I’m using the SIIG Vista MCE Remote, I’m going to choose one of the MCEVista* plugins, and since my copy of Windows is 64-bit, I need the MCEVIsta64.dll plugin to drive my remote.
Click “OK” at the bottom, and you will likely get this message:
So, how do you get it to work? The trick is that you can’t simply right-click->”Run as administrator”. Oh, no! You have to edit the properties so that it runs at elevated privileges all the time!
In the Properties dialog, click the “Compatibility” tab, and, at the bottom, don’t simply check “Run this program as administrator”. Click the button underneath that says “Change settings for all users”. THEN check “Run this program as administrator”!
Try running WinLIRC again and you should see the system tray icon come up and you should no longer get the dreaded “Error Window of Doom”.
Now that you have WinLIRC properly configured and receiving signals from your remote, you’re going to need some way to parse those signals into useful commands….
Now that we’ve learned the secret to getting WinLIRC to run correctly, it’s time to decode those signals into commands that Windows can use. To do this, we’re going to use a powerhouse automation tool that is unique to Windows called EventGhost.
EventGhost is a plugin-extensible application that takes input from any myriad of devices or programs and, through the use of a simple IF/THEN programming setup (think IFTTT), calls the desired response within Windows, a particular application, or even connected devices.
Getting the VCR remote set up in EventGhost was more of a headache than I anticipated, and required a lot of scanning fora and a little noodling to get working correctly. However, once I found the proper combination of versions, plugins, and conditions, it’s working like a champ!
First, you have to download and install EventGhost. At the time of this writing, the newest version (0.4.1.r1700, released 4 Mar 2015) seems to be the culprit behind my inability to get the plugins working, so make sure you go with (as of right now) v0.4.1.r1694, released 27 Jan 2015. If there is development between now and the time you’re working on this, just bear this tip in mind if the latest version does not seem to be working.
When you first run EventGhost, there will be quite a bit of detritus that you won’t likely need already programmed as examples. Disable or delete everything in the Configuration Tree except “Volume Control”
To enable remote control commands, you must activate the MCE Remote plugin. To add the plugin, choose “Add Plugin…” from the “Configuration” menu.
Select “Microsoft MCE Remote” from the list.
Do not install the version marked for Vista/Win7 as it is rather finicky and difficult to work with, requiring the installation of an alternate MCE IR service that is buggier than that scene in Temple of Doom.
The settings for this plugin will allow you to set a custom button release timeout, which will be handy if your system is registering multiple button presses from your remote. I have mine set to 0.75 seconds, which seems to be just enough time. Play around with this setting to find something that works for you.
Additionally, the settings dialog will prompt you to disable HID service for the remote. You do not need to do this except under special circumstances. The HID service in Windows 7 works fine.
Test to make sure that the correct button presses are being registered in the left sidebar. If they are, congratulations! Your remote is now working in Windows and you can customise buttons to your heart’s content!
Kodi, as we’ve discussed before, is the most powerful all-in-one home theatre solution for the 21st century that combines a comprehensive metadata-driven viewing experience for all your local media as well as the ability to extend functionality through the use of plugins for many kinds of streaming media. The one problem with this setup is that Kodi does not recognize Windows Media Remote commands out of the box and will require a separate process to parse those commands into something useable.
Highlight “Autostart” in the EventGhost Configuration Tree. Right-click and choose “Add Plugin…” From the plugin menu, scroll down to “XBMC2” in the “Program Control” folder, highlight, and click “OK”.
Unless your Kodi/XBMC settings are different from the defaults, go ahead and click OK on the next screen as well. EventGhost will prompt you to add actions, but you don’t need to. All of your macros and actions have now been added to the “XBMC2” folder in the Configuration Tree.
The next part is somewhat tedious, but only required once. Press each button on the remote to register the event in EG. Then, drag each button press event to the corresponding macro in the XBMC2/Buttons folder.
Once your buttons are programmed, you are ready to use your remote with Kodi!
Windows 7 brought some badly-needed security features to Microsoft’s flagship operating system, but with this new power came one minor setback: the ability to autorun programs with elevated privileges on startup. Instead of adjusting our overall security settings to not bother us requesting elevated privileges (a bad idea), we’re going to use the Task Scheduler tool to automate these tasks.
Locate the Task Scheduler by typing its name in the search box on the Start Menu. In the “Action” menu, click “Create Task…” (NOT“Create Basic Task…”)
In the “Create Task” window, give the task a name. For example, let’s use EventGhost. Make sure to select “Run only when user is logged on” and “Run with highest privileges” and to choose your correct version of Windows from the “Configure for” dropdown.
In the “Triggers” tab, click the “New…” button. Chose to begin the task “At log on” and select for “Any user”. Make sure no other options are checked besides “Enabled” and click OK.
In the “Actions” tab, click “New…” and make sure that “Start a program” is selected from the dropdown menu. Browse for your application executable (EventGhost.exe), add any arguments (if applicable), then click “OK”.
In the “Conditions” tab, nothing should be checked (unless you have a very specific case). Finally, in the “Settings” tab, check the options as they are in the screenshot below and click “OK”.
Your application should now execute automatically when you reboot!
Since the VCR project is centered around Kodi/XBMC, I have no need for Microsoft’s default media suite. To wit, I would prefer not to have it pop up if I accidentally bump the big green button on my remote control (and, consequently, be able to use said button for a different function), so I need to disable Windows Media Center.
Disabling Windows components has gotten much easier since Windows XP. Microsoft has built in a dialog that allows certain “required” components such as Internet Explorer to be removed from the OS (or, at least, hidden from view and disabled). To reach this menu, click on the “Programs” link in the Control Panel, then click the “Turn Windows features on or off” link.
Allow the list to populate, then uncheck the box next to “Media Features”. This will remove Windows Media Center, Windows Media Player, and Windows DVD Maker. Uncheck any other boxes you might want to rid yourself while you’re there. Click the “OK” button and Windows will remove the deselected components.