Retrode Birthday Video

Matthias (of Retrode fame) is running a give-a-way to celebrate the Retrodes 3rd Birthday. I had an idea for a video, but thought that someone else would be sure to do it so I didn’t bother. After a week, nobody had done my idea, so I thought I should (as it was so good!).

If you like it, head on over to the Retrode site and give my video a vote!

Multi Region Super Game Boy

A PAL Super Nintendo game can only be played on an unmodified PAL Super Nintendo console. This is due to the CIC lockout chips, one in the console and one in the cartridge. I have written previously about replacing the chip in the console to allow it to play any region game, but what about the other way round?

If you have the desire to make a Super Nintendo game work on any region console, you are in luck, not only did ikari make a replacement CIC ‘lock’ chip for the console, he made a replacement CIC ‘key’ for cartridges too!

It works by booting the cartridge as one region, if it doesn’t work, when you hit reset, it tries as the other. If it is successful, it remembers its state for the next time it is powered on.

Different CIC chips

While we are talking about CIC chips, here are a few photos of some different SNES game PCB’s, each with a different lock out chip.

SHVC-BJON-01 PCB from Street Fighter II Turbo for the SNES (PAL)SHVC-1CB0N7S-01 PCB from Doom for the SNES (PAL)SNSP-1L3B-01 PCB from PGA Tour 96 for the SNES (PAL)

First is Street Fighter II Turbo. It has a D413A CIC, through whole DIP16 chip. Next is Doom, it has a surface mount 18 pin chip, which is the same as the lockout chip in the PAL Super Nintendo console, just connected up differently. I can only assume they changed the lock out chip in later games as they were using all surface mount components (apart from the XTAL). The last one is PGA Tour 96. It doesn’t have a CIC chip per say, but the SA1 chip handles all the region checking duties, in a more complex way than the basic CIC.

Super Game Boy

The Super Game Boy uses one of the F413A surface mount chips, and in order to add the SuperCIC, I had to remove it, which I did with my trusty soldering iron and solder sucker.

CPU2 SGB-N-10 PCB from a Super Game Boy for the SNES (PAL) PAL Super Game Boy PCB (orange/red/black wires on the left go to an EXT port I had previously added)

CPU2 SGB-N-10 (close up on the F413A CIC chip) Close up of the F413A CIC chip

CPU2 SGB-N-10 (with the F413A CIC chip removed) Close up of the PCB with the F413A CIC chip removed

F413A CIC chip Close up of the removed F413A CIC chip

Next, I flashed the SuperCIC key code to a PIC12f629 and soldered it to the Super Game Boy as per the instructions in the source file. It mentions that an LED can be added to pin 3 to show what state the chip is in, LED lit means everything is OK, LED off means there is an error. I decided to add a tri-colour LED, with one leg wired to 5v (via a 220R resistor), the middle leg to ground, and the other to the output pin on the SuperCIC (also via a 220R resistor). By wiring it like this, if the SuperCIC can’t boot the cartridge when you turn on the console, the LED lights up red. When you hit reset, the SuperCIC then boots the cartridge, and outputs a signal on pin 3 making the LED light up orange. A nice addition being as the original Super Game Boy doesn’t have a power LED (or an EXT link port). The Super Game Boy 2 has both of these features, it was only released in Japan though.

CPU2 SGB-N-10 (fitted with SuperCIC chip) PAL Super Game Boy PCB fitted with SuperCIC (key) chip

Here is a video demo of the muli region Super Game Boy working, my very first video!


If you have an urge to read more about the CIC lock out chip and find out how it works, have a read of this at hackimii.com or this thread over at nesdev.parodius.com.

Retrode SMS/GG plug-in adapter pin-out

Okay then, this is the pin-out for the Master System / Game Gear plug-in adapter. Not sure if this is exactly the same as the final production version that Matthias is making, but its the same as the prototype and it works!

MD EdgeSignalSMS EdgeGG Edge
A1gnd2116
A2+5v12
A3a7325
A4a101225
A5a6316
A6a111029
A7a5307
A8a12334
A9a4298
A10a13732
A11a3289
A12a14633
A13a22710
A14a1511,3628
A15a12611
A16a1649-
A17a02512
A18gnd2017
A19d714-
A20d024-
A21d8-13
A22d615-
A23d123-
A24d9-14
A25d516-
A26d222-
A27d10-15
A28d417-
A29d318-
A30d11-19
A31+5v35,4635,39
A32gnd1918
B1N/A--
B2N/A--
B3N/A--
B4a8831
B5a9930
B6a175-
B7a18--
B8a19--
B9a20--
B10a2123
B11a22426
B12N/A--
B13N/A--
B14N/A--
B15N/A--
B16/C_OE-24
B17/C_CE 1324
B18N/A--
B19N/A--
B20N/A--
B21N/A--
B22d15-23
B23d14-22
B24d13-21
B25d12-20
B26N/A--
B27N/A--
B28/LDSW--
B29/UDSW--
B30N/A--
B31N/A--
B32/CART_IN--

As each system uses a different cartridge pin numbering scheme, I have made up a few images to help make it (hopefully) obvious for each one.

With all three of these PCB’s, I have considered the side with the components mounted as the front as it is the side that faces the side of the cartridge case with the label.

Sega Mega Drive cartridge edge connector numbering scheme

Sega Master System cartridge edge connector numbering scheme

Sega Game Gear cartridge edge connector numbering scheme

Retrode SMS/GG plug-in adapter follow up

I have been going through my Game Gear and Master System games, trying them out with the SMS/GG Plug-in adapter and have noticed two things:

  1. The Game Gear connector needs to be secured.
  2. Game size detection is a little flaky.

Game Gear connector - Every time you insert/remove a Game Gear game, the connector moves a bit as it is only secured by the solder joints. Now this might not seem like much of an issue, but over time, it could cause the solder joints to fail. In the Game Gear, the connector is held in place with two rivets (see photo below), the plug-in adapter could do with two holes to secure it in a similar way. I mentioned it to Matthias and he said that the production Adapter will have such holes, perfect.

Game Gear PCB Game Gear PCB

Game size detection - The first few cartridges I tried with the adapter worked fine, the resulting ROM files were the correct size and they loaded straight up in an emulator. As I tried more, I started to notice that some of them were not working, mainly because the ROM files were smaller than they should be. Lets take Super Monaco GP as an example, it is a 256KB cartridge which the Retrode makes a 128KB ROM file from.

It isn’t the Retrode that’s at fault here, its the cartridge (or the games programmer).

The SMS/GG ROM header has a location that specifies the ROM size (0x7FFF), and it turns out that quite a few games (seems to be mostly games larger than 128KB from my experience) don’t have the correct size there, they have a smaller size listed. The Retrode looks here to work out what size to make the ROM file, and if it is wrong in here, the file you get is the wrong size and doesn’t work. In this instance, Super Monaco GP has $F (128KB) at 0x7FFF, which is wrong (it should be $0 (256KB).

Super Monaco GP SMS Header screenshot (0x7FFF) Super Monaco GP SMS header screenshot (location 0x7FFF highlighted)

Luckily, the Retrode is a clever beast. As of firmware v0.16a, there has been an overdump function. The HWB button cycles between auto size detection and 3 predefined ROM sizes. Using this feature I set the size to 256KB, and what do you know, I had a working ROM file! I was able to get all the other non-working games to work using the same method.

It won’t be a problem with every game you use, but it is something to bare in mind when using this adapter.

Final testing of Retrode Master System / Game Gear adapter

Well I finally got my adapter back from Matthias (postage times are way longer during the Christmas holiday) and there was a surprise in the box! Along side my mess of wires was a nice PCB and a couple of 50 way Master System edge connectors. Matthias had taken my mess of wires and turned it into a PCB with mounting holes for both a 50 way Master System edge connector, and a 50 way Game Gear connector.

Prototype Master System adapter for the RetrodeBlank adapter PCBBlank adapter PCB with Master System edge connectors

As it was not a final product, the edge of the PCB was not chamfered so I filed along the edge to make it easier to insert in to the Retrode cart slot. Next, I soldered the connectors to the board, Master System on the front, Game Gear on the back.

First off I tried a master system game (Wonder Boy). I plugged it in to the adapter which in turn I plugged into the Retrode 2. Nothing happened. I took the cart out, cleaned the contacts and tried again. Still nothing. So I tried a Game Gear game (Columns), which did exactly the same. I decided to leave it until I could email Matthias to see if I was missing something.

Master System/Game Gear adapter for the RetrodeGame Gear edge connector (top)Master System/Game Gear adapter for the Retrode

Before I got round to it, Matthias sent me an email to say that I would need to bridge two points on the PCB for cartridge detection to work, specifically, the two points marked with Xes (pin 19 on the Master System and a pin 32 on the PCB edge). I had noticed these when I was soldering the connectors in and wondered if something needed to be done with them. I joined the points with a length of wire and tried again. Bingo, a file appeared on screen (generic name as master system headers don’t contain the game name) which loaded in my emulator. Sorted. I guess this wire won’t be necessary when the adapters are released, the link will be added to the board.

All the Master System games I tried worked straight off, as did most of the Game Gear games, a couple needed a clean and one didn’t work at all, Fantastic dizzy. This is a Codemasters game and they used their own mapper chip which handles things differently to the Sega ones. It is documented, so maybe Matthias will be able to add compatibility in a future firmware version.

Master System/Game Gear adapter for the Retrode

Can’t wait to see the final version of the adapters, it’s been great fun being part of the process :)

My Retrode 2 has arrived

A nice post-Christmas parcel arrived the other day, doesn’t it look lovely!

Retrode 2

Time for some playing…

Initial testing of Retrode Master System / Game Gear adapter

After my success with the Virtual Boy Retrode adapter, I decided to try making another for some of my other cartridges that weren’t already catered for. This time I opted for the Sega Master System. As Game Gear games are near enough the same as Master System games data-wise (you can play master system games on a Game Gear with a converter), I thought I would try to make a dual system adapter.

Following the same procedure as with the Virtual boy adapter, I located the Master System and Game Gear cartridge pinouts and matched them up with the relevant pins on the Mega Drive connector, first for the Master System, then for the Game Gear. There were a few differing signals, but I matched up the main ones.

Next job was to remove the ROM chip from a donor Mega Drive cartridge and start the tedious process of attaching wires to the vacant holes. I use individual strands of wire from an old Ultra DMA IDE/ATA cable for this (like the one on the left in this picture), it’s single strand and just the right thickness.

donor cartdonor pcbdonor pcb sans rom chip

Cartridge connectors next. Master System turned out to be simple, I de-soldered an ISA card socket from an old motherboard and cut it down to size, same pin pitch and board thickness, sorted. The Game Gear proved to be more difficult. The pins on the edge of a Game Gear cartridge are arranged in offset parallel lines, so finding a suitable replacement for a real one proved to be impossible. I didn’t fancy destroying my fully working (even the sound!) Game Gear, so got a faulty one off of ebay for next to nothing and de-soldered the cartridge socket.

donor game geardonor game gear sans cartridge connectorgame gear cartridge connector

I soldered the Master System connector on, connected a game and plugged it in the Retrode. A quick check of the resulting file in a hex editor showed that it was reading something, and after comparing it to a reference ROM, it was almost the same, albeit with additional FF’s. This was because the Retrode is expecting 16bits of data, and the Master System is only 8bits, so the upper 8bits were empty, something for Matthias to sort in the firmware.

The Master System uses Frame Control Registers (FCR’s) to access the ROM, so the Retrode would need to be able to do the same. Matthias sent over a couple of test firmwares to try out, but unfortunately, the only cartridge we got to read correctly was Transbot, which is a 32KB cartridge, so didn’t use any FCR swapping.

Unable to resolve the issues, Matthias asked if I would be willing to send my adapter to him to continue testing, which I of course did. Now he has a working firmware, and is getting some boards made up based on my prototype! Make sure to order one when he gets them in.

Talking with Matthias before I sent off the adapter, I wondered if the Game Gear could be put on the higher 8bits of the Mega Drives 16bit data lines, enabling both Master System and Game Gear cartridges to be plugged in at the same time. He said it would be possible, but it would interfere with the auto detection. He has since mentioned that he is adding space to solder on a Game Gear cartridge connector to his adapter PCB, so hopefully he worked out a way round this. I will post the pinout for the adapter when I find out how Matthias has added the Game Gear to it.

game gear cartridgemaster system cartridgeisa card connector

Goodies from Tokyo

I recently found myself visiting the great country of Japan, to Tokyo specifically. Where did I go to visit whilst there? Akihabara of course!

It didn’t take too long to find some retro shops, my favourite being Super Potato (Will do another post about the shops).

Here is a quick run down of what I got:

Nintendo Super Famicom

SHVC-001

¥200

super famicom #1

This was labelled as ‘Junk’, which I guessed meant it didn’t work. Never one to let a little issue like that stop me, I snapped it up figuring that I could at least use the case after a clean. When I got home and plugged it in, it loaded Super Mario RPG up first try, so not sure why it is ‘Junk’.

Nintendo Super Famicom

SHVC-001 + SHVC-005

¥200

super famicom #2

This was also labelled as ‘Junk’, but included a controller. This one was A LOT dirtier than the other. When I got home and plugged it in, the LED lit up, but it wouldn’t load any games, the controller worked in the other console though! I will give it a good clean and see if I can get it going at some point.

Nintendo Power SF Memory Cassette

SHVC-MMSA-JPN-1

¥399

nintendo power sf memory cassette

This is a flash cart of sorts. Nintendo sold them blank, and you could go to various shops and upload games onto them for a price. They have 7 banks, I assume for 7 games, I think mine has the one game on it. I want to try and see if it is possible to read/write to the Flash Memory.

Nintendo SF Same Game

SHVC-ZS5J-JPN

¥100

same game for the super famicom

Mainly got this for the expansion card. Someone made a comment about trying to read the little BSX expansion carts with the Retrode as the connector was similar to the Virtual Boy connector.

Nintendo SF Super Mario RPG

SHVC-ARWJ-JPN

¥800

super mario rpg for the super famicom

Saw this and thought it was worth a buy as it wasn’t much. I don’t speak Japanese, so will be hard to play it through, but it’s a good addition to the collection.

ASCII TurboFile GB Card

ASC-1502C

¥100

turbofile gb card

Had no idea what this was, but thought I would get it anyway. Turns out it is a card for backing up Game Boy save files on to using the ASCII TurboFile, guess I will have to get one of these now.

Nintendo GBA Wireless Adapter

AGB-A-WA-JPN

¥100

wireless adapter for the gba

Already have one of these, but you need two of them to actually use them (plus it was only ¥100!).

Nintendo Game Boy Link up lead

DMG-04A

¥280

nintendo gameboy link up lead

Can never have too many of these, especially when they are boxed.

Nintendo Mario 8-bit Playing cards

NAP-01

¥800

nintendo mario playing cards

Wanted a set of these since I saw them mentioned on the Nintendo web ages ago, preferred the 8-bit ones over the later sets.

Nintendo Game Boy Tamagotchi V3. OSUCHI & MESUTCHI

DMG-AOMJ-JPN

¥50

nintendo game boy tamagotchi v3

I got this more as an oddity than anything else (plus it was only ¥50!), it’s not often you see a Game Boy game with a speaker and battery in its extended blue case.

SuperCIC = The best mod for your Super Nintendo

If you own a Snes and some import games, your best bet to playing them up to now was using a converter or disabling the CIC chip inside the console.

There are many different types of converters, and they vary a lot with compatibility. The basic ones work by passing the Snes the CIC chip signals from the local cart and the game info from the import cart, tricking the Snes into thinking that it has a local game plugged in. Nintendo got wise to these converters and built checks into later games that locked out the game if it didn’t pass them. after this, more advanced converters came out such as the Datel programmable universal adapter, which allowed you to enter codes to get round the extra checks in most of the troublesome titles, but neither of these options can play ALL games (SA-1 titles being the main problem).

Datel programmable universal adapter

After reading this thread on the nesdev forums last year, I made a mental note to check back periodically to see if it went anywhere. I checked back in May to find that forum user ikari_01 had released SuperCIC.

SuperCIC is a PIC microcontroller based CIC replacement which works in any region Snes. Its main features are:

  • lock allows the region to be set+saved by holding the reset button.
  • region can be set to 50Hz, 60Hz, or autodetect based on key CIC.
  • selected region is indicated by LED color (uses a dual LED).
  • has a ~9s timeout before switching from detected to forced region to trick most games. This feature can be enabled/disabled using a configuration pin on the lock.

I bought me a PIC programmer, some PIC 16F630 chips and got to work. I won’t bother with a guide as Klaus at Wolfsoft.de has already done a great job with his.

I opted to remove the CIC chip and use the resistor, I then mounted the SuperCIC in an IC socket nearby (the resistors you can see go off to the tri-colour LED).

SuperCIC Installed

My Snes now runs all my games, no matter what region, even my only SA-1 based cart, PGA Tour 96.

Best option is to do the mod to an American Snes, snap the tabs off and you have a system that will play ANY game with no need to mod the cart slot.

My Retrode N64/GB/A2600 adapters have arrived

Well look what we have here…

Retrode N64/GB/A2600 adapters

Guess I had better crack out my Game Boy carts and have a play :)