February 26, 2011

NES Computer (The Software)

So we last left off with an all but finished HTPC built into an original NES game console case. The next step is to load up the software you want to run. A few things to take into consideration are what you want to do with the PC. For me I wanted to be able to at least do the following:
  • Have a "media center" program to launch any/all movies
  • Be able to play emulators
  • Be able to add further video content to the box
  • Not pay a fortune for all of the software
Operating System:
So what does that leave me with. Well for the OS the main choices are between Windows and Linux, or there are a couple of minimal install media center programs. I chose Linux Ubuntu for my OS because it is free and easy to install. One thing to consider before jumping into Linux is that it does require a healthy amount of command line operation, but there are a lot of support forums out on the net.

Media Center:
It could also run a media center program called XBMC which can be booted right into with Linux bypassing the need to log in and start the program. Yet I can still log into the Linux desktop to easily re-organize files or perform other maintenance. One of the other nice things about XBMC is that you can add plug-ins that provide further function like getting music videos or even running apps in Linux. This was another feature I liked because it meant I could launch Firefox or the emulators without leaving XBMC. Another bonus is that the good folks over at XBMC have developed a phone app for Android phones that allow you to control the videos played and what have you.

Emulators:
I wanted this PC to be a retro gaming machine specially NES. There are emulators for about every game console for Linux although the PC itself can not handle some of the higher end ones, I was able to get what I wanted.

Adding Future Video:
I was also able to use a program called MakeMKV to add additional video files. There are other rippers for Linux or you can install WINE and use most rippers made for windows.

Polishing and accessorizing:
2.4GHz Wireless Mini Keyboard with TouchpadIt will take some time to tweak XBMC and the other programs you have to function the way that you want. There is a lot of good information out there for Ubuntu and XBMC. Once you get it working though you then can sit back and enjoy your hard work. One of the last things to think about is a wireless way to work a keyboard and mouse. (I do suggest a regular keyboard and mouse to do basic setup just for speed and ease of use) To do this there are various options you can use. You can use a full keyboard and mouse, you can use a keyboard with a mouse built in, or you can go the route I went which was a device about the size of a blackberry phone that has a full keyboard and a track pad mouse and it lights up. The device also has a rechargeable battery that charges with a USB cable, but since I use my phone 90% of the time to run the device I don't have to use it much.

NES Computer (The Rebuild)

Zotac IONITX-A-U Atom N330 Dual Core 90-Watt PSU WiFi ITX Intel MotherboardOK so after breaking down the original NES and rewiring the buttons and scraping the money together for some of the parts, its time to move onto the next phase. Which is to start to fit the PC components into the NES. The main focus is the motherboard because without it you wont be able to do much and it takes the most space. Again my motherboard of choice was the Zotac A-U Atom N330. After shaving out all of the pegs in the bottom of the NES I was then able to set the motherboard on the very bottom to get an idea of what clearance and space it was going take. Then after deciding to position all of the I/O ports facing out the back of the NES I set out to drilling the holes to custom fit each port on the back of the motherboard.

After getting a couple of the big I/O holes cut I fit the motherboard and recycling some of the pegs I cut out earlier I fit in 4 motherboard mounting posts. The posts in the NES were perfect. They are plastic, they have screw holes and screws and the screws are about the right size. This also means the motherboard will not be free floating and should not move around when you move the unit as a whole. To create and attach the posts I ground them down to height to match where I wanted the board then using hot glue I put them into place. You could sub the hot glue for another kind of strong adhesive as I know hot glue is not the best but I don't plan on dropping or jarring the unit so they should hold OK. Also of note the motherboard does sit on top of the buttons but is just resting no real pressure.


Cutting custom holes for the I/O connections is not the easiest task and does take a lot of time, precision and re-measuring and Dremeling. Also a lot of it is done by "eyeballing" as it is difficult to measure because the included I/O shield while giving you a good idea has holes a lot bigger than I wanted. I wanted a tight fit to everything. But after a couple of hours of drilling and some filing I had the results I wanted....mostly. One hiccup was that the PS/2 port kind of fell behind the black cover and I had to shave it back just enough to fit the connection.


Once all of the I/O holes were cut and everything fit nicely and were tested with various cables. That is key because the holes to have to be slightly larger than the port because a cable has to connect. Then I screwed the motherboard into place and connected the power and reset button to the motherboard.

The next step was to rewire the original NES controller ports to USB connections. RetroUSB sells chips that you can wire the ports to and it converts them to USB connections. By wiring the ports and not the controllers it allows me to use any original NES controller including the big joypad. I do believe though that the NES Zap Gun does not work. RetroUSB does have instructions on how to wire the chip. I did however have to convert the USB connection it came with so that it was an internal USB (connect direct to motherboard) and not an external USB. This way no USB ports are wasted and its all inside the case. If you do make the mistake I did and wire the ports up outside of the case you can cut a small slit to feed the wires through to get the ports back into their original place.


One of the last parts is connecting the other parts like the RAM and hard drive. Installing the ram is easy, mounting the hard drive proved to be more difficult. I think I came up with a creative solution. I bought a couple of tiny hinges from my local hardware store and using J-B Weld epoxy I attached the hinges to the roof of the NES and then screwed in the hard drive. Is tricky to remove if needed because you need a right angle screw driver but it was necessary because I wanted to leave enough space to mount a future blu-ray drive. Another reason for the roof mount was to allow placement of a fan to help with airflow.

After getting the hard drive mounted and testing that the machine would boot up I found that the unit could not run without a fan. The motherboard included one but there is no true way of mounting it to the CPU heat-sink. So I opted to use it to suck in air from corner port holes left over from original NES connections that are now gone. It now stays cool enough to run long stretches but I am still looking to find a way to boost the fans ability some how.



Here are a couple pictures of the "finished" unit. As well as it sitting side by side with a working NES. The only thing I am still waiting on is to acquire a slim style blu-ray drive. As of writing there are not a ton of them to choose from and in the mean time I am using a USB DVD drive for any DVD playback or use. Once I get a blu-ray drive I will post how I get it installed. The plan is to mount it in a way that it is accessible by opening the game cartridge door.
Can you tell which one is the real NES??
 The one on the left in both pictures!


Next Post.....The Software


February 25, 2011

NES Computer (The Teardown)

After acquiring an old NES game console off of eBay I set out to strip it down to its bare parts to see what I was dealing with. The NES was in decent shape externally not bright yellow but also not functioning but that was OK.

The first step is to open the NES up and start to remove the NES components inside. A lot of metal shielding and large 80s style PC parts are stacked up on each other and you have to kind of remove it all in layers, because some of the screws are under the upper component.







The next step is to prep the inside of the case for your design. For my build I need to remove almost all of the posts but remove them in a way that I can use them for a later idea I had. The easiest and best way to do this is with a Dremel tool.


The next step since I had the parts was to rewire the Power and Reset buttons to function as PC Power and Reset buttons. Do do this I chose to remove the small circuit board to save space then wire the connectors I salvaged from another rig directly to the button posts. (Soldering & De-Soldering skills required)

  • As side note is that to make the Power button functional with a pc you have to make it so that it doesn't stay depressed when you press it. To do this you have to remove the gold tab on the top and pull the small staple looking item out. Then it functions as you need it to. If you do not take this step the button will probably not function properly to start the PC.
 

NES Computer (The Start)

Nintendo NES System - Video Game Console
As a nerdy PC user I sometimes find myself surfing the net for the latest and greatest PC parts as well as creative/crazy designs by other people. One day I came across PCs put into old video game console shells. One in particular that caught my eye was a Media Center PC put into a old Nintendo Entertainment System (NES).


I set upon making my own NES PC with a few goals in mind.
  • Keep the look like an original NES (at least from the front) and minimize external changes.
  • Make use of the original controllers and controller ports
  • Be able to play High Definition (HD) video
  • Run silent or fairly silent
The first thing I did was search the internet for others designs. A few things people were doing that I liked was making use of the original Power and Reset buttons, converting the controller ports to make real NES controllers function as USB controllers. I also came across various motherboards used and ways of silent mounting or "creative" mounting.

Eventually I settled on the Mini ITX Zotac Ionitx A-U 1.6ghz Dual Core Atom Combo.  My reasons for this motherboard were:
  • Mini ITX is a small enough form factor to fit the NES Case.
  • It is a combo motherboard, CPU, video card.
  • It supports HD video output
  • It has multiple connections. (HDMI, Optical Audio, USB, wired & wireless networking
  • Runs on an external power supply (brick)
  • Supports SATA connection for hard drives and optical drives
  • On-board Nvidia ION video card


 The other main parts needed were RAM and a hard drive. I settled on 2 2GB (4GB total) sticks of Corsair desktop DDR2 (PC2 6400). I also went with a Toshiba MK1059GSM 1TB Notebook hard drive. The reason for a notebook hard drive is its size makes it easier to place into the NES.

To Continue.....