JULY 13TH, 2024
Nintendo Pc Inteface System (www.nesworld.com)
APRIL 17 2017


I believe this was one of the very first pages I ever added to the site back in 1995. About one year later, Gary Kilber, one of the inventors, contacted me and sent me the DOS program as well as a new and better diagram for the copier that you originally had to register to receive. But as the NES was long gone, Gary Kilber didn't mind sharing his and his brothers work.

Sometime in 1999 or 2000, the page mysteriously dissapeared from the site, I honestly don't remember why, but celebrating the 10 years online, I decided to dig through some old copies of the site that I have stored on a few CDs, and there is was, the Nintendo Interface System (NIS) page.

Please note that I have never built one of these and never intended to, but it was of great interest back then and I believe it needs to be online still as it's piece of NES history, maybe not that well known though. The NIS was only able to copy the early games, mostly first generation, up to 65kb.

The following text is almost unaltered since it's update back in 1998, so please ignore all typos and such. Not all of it is still true, another more successful homebrewn copier attempt was made by Kevtris.

  • Click here to view the new NES Interface Layout scheme.

    The first, and only, homebuilt NES copier ever, was created by Gary Kilber and his brother Jeff in 1990. Their intention was to create a way to transfer game software contained in Nintendo cartridge ROMs to PC disk files where they could later be downloaded to a "universal cartridge", a regular Nintendo cartridge whose ROMs are replaced with battery-backed static RAMs. This relatively simple idea seemed to be the best solution to the many problems associated with previous method which utilized an EPROM programmer and a socketed cartridge.

    While this system in its present form works flawlessly on those first generation Nintendo cartridges for which it was designed, the newer, larger memory ROM cartridges' diverse addressing formats made designing a single integrated system a nightmare to someone of limited design experience. Part of the incentive for going public with this system is to possibly inspire others to improve upon what Gary and his brother started.


    This is NOT a good electronics project for beginners for several reasons. One being that, in these directions, assumed the builder is familiar with the reading of schematics. These instructions are far from being detailed. Secondly, with so many soldered bus connections, the most experienced assembler is bound to run into problems which can only be troubleshot with a VOM and an abundance of patience.


    This is the unit that will actually have cartridges inserted into it. Gary used a plastic 2x3x6 Radio Shack project box, so you might wanna do that too :). From the top edge of one of the 6" sides cut a 1 & 1/8 inch by 4.5" slot. Now for the bad news. The 72-pin connector that Nintendo uses is non-standard. Gary had to cannibalize a whole Nintendo System to use the actual zero insertion force connector built inside the unit. This was mounted to the bottom of the project box so that a cartridge could easily be inserted coming in at a downward angle then being pressed down to a horizontal position. Since this will be minus the spring loaded guiding mechanism of the Nintendo System, it's important that the 4.5" slot width holds the cartridge firmly in place while in the "down" position.

    The components are mounted on a 2x4 inch perf board. The D connector is mounted on the right side of the project box (slotted being front). Admittedly, things get a bit crowded. They used ribbon cable for bus lines directly soldered to a 72 cardedge (just the "fingers") sawed off a cartridge board. This plugs into the lower slot of the connector. Keep the lines long enough to wrap around the bottoms and sides of the box to the component board that will ride on top of the connector.

  • Click here to view the Programmer Module schematic


    The following is the process used to prep an existing Nintendo cartridge. As far as Gary knows, any of the games mentioned at the end of this doc file will work as a "ram cartridge" but to be sure you may want to use the game cart Gary did; SOCCER. The following directions are listed briefly on the schematic itself.

    1. Remove solder bridge (V or H) to CE 22.
    2. Remove both ROMs and replace with static rams 43256 (NEC) with the following pins pulled up: CHR ram - 20,27. PRG ram - 1,20,27.
    3. Scribe a break in the 5 volt circuit path. Right above pin 16 on the CIC chip is a good place. Jumper with the 1N4005. In the cartridge schematic that diode is the only component (besides the rams) mounted on the factory board. All others, including the battery, I put on a 1.75x1.75" card.
    4. Jumper WE pins on CHR ram pin #27 to cardedge #19 and PRG ram #27 to cardedge #15. Jumper in the same way pin 1 on the PRG ram to the punched hole normally reserved for its pin 27.
  • Click here to view the RAM cartridge schematic.


    The interface board Gary used was not of his design. He used the card plugged into his PC's expansion slot that connects to my MIDI music system. This is simply a port address assigning driver board which means this system uses the same port addresses as a Roland MPU401 MIDI device. It should be easy to duplicate using a breadboard 8bit PC card and the schematic provided.

  • Click here to view the Interface board Schematic.


    Start the program by typing "NIN" at the prompt. This is the executable file containing the programmer's device driver written in assembly language by Gary's brother, Jeff.

    NIN.EXE is a self-explanatory menu-driven program. To save a cartridge's software to a disk file: Place the cartridge to be copied into the programmer unit. Press "R" for "Read from port". This command places the software read from the cartridge's roms to a buffer in memory. NOTE: the program responds only to upper case. Next press "O". This command will be followed by a prompt asking you to name the file that will be created containing the data in the buffer.

    To download software from the disk file to the "ram cartridge": Firmly install the cartridge into the programmer unit. Press "I". This places data from the file into computer memory. Next press "W" to write data to the static rams in the cartridge. Carefully disconnect cartridge from the programmer. Set cartridge DIP switch to horizontal or vertical position depending upon game. Cartridge is now ready to be played in your Nintendo System.


    This program and instructions are distributed as is without warranty. In no event will Gary or Jeff Kilber be liable to you for any damages arising out of the use or inability to use said program or devices described herein.


    Please keep in mind that, as previously mentioned, this device is limited to copying only older, smaller memory cartridges. In order to compete in the current video game market, Nintendo and its licensees presently use much larger memory ROMs in their games which involve dozens of varied addressing schemes. To design a single integrated programmer which would accommodate all these formats would require a much more sophisticated device. The following, while being far from complete, is a partial listing of those games that have worked successfully on The NIS prototype:


    The following is a partial list of those 64K games that have successfully loaded on Gary's prototype with the extended driver:


    Normally you had to register to get the extended driver. But I've had a chat with Gary and since he nolonger works on the unit or supports it, he was kind enough to give me the extended driver at no cost and to be distributed for free.

    A note to the emu people... Gary's Copier will make two files of each game (ex. V32 and H32). These can files can easily be used with the PasoFamicom emulator (by Nobuaki Ando). Just rename the .v32 file to .vid and the .h32 to .prg and then grap the .prm and .nam file from the demo game which is included in the paso packs.


  • Click here for the "normal" driver.
  • Click here for the "extended" driver.