Posted 1 week ago
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:
- The Game Gear connector needs to be secured.
- 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 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 (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.
Posted 1 month ago
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.



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.



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 one 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.

Can’t wait to see the final version of the adapters, it’s been great fun being part of the process :)
Posted 4 months ago
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.



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.



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.



Posted 1 year ago

Behold, It is finished!
Since the last update, I finished securing the bits inside the case, and made a nice label for the front. I have tested it with the following games, a couple of them don’t show the proper names, but that is due to them being in Katakana characters, they all work fine apart from one, Red Alarm.
- Virtual Boy Wario Land - USA
- Galactic Pinball - USA
- Mario Clash - USA
- Teleroboxer - USA
- Mario’s Tennis - USA
- T&E Virtual Golf - JPN
- Panic Bomber - JPN
- V Tetris - JPN
- Red Alarm - JPN
I am not sure why, but it registers as a 512KByte file when it should be a 1024KByte file. The other 1024KByte game I have works fine, so am not sure why this one isn’t behaving.
I will try and post a video of the adapter working soon.



This is the final pin-out I used if you fancy making one yourself!
---------------------------------------
Sega Edge Signal VB Edge
---------------------------------------
A1 gnd 1, 2
A2 +5v 54
A3 a8 15
A4 a11 22
A5 a7 17
A6 a12 24
A7 a6 19
A8 a13 26
A9 a5 21
A10 a14 28
A11 a4 23
A12 a15 30
A13 a3 25
A14 a16 32
A15 a2 27
A16 a17 34
A17 a1 29
A18 gnd 33
A19 d7 38
A20 d0 39
A21 d8 37
A22 d6 42
A23 d1 43
A24 d9 41
A25 d5 46
A26 d2 47
A27 d10 45
A28 d4 50
A29 d3 51
A30 d11 49
A31 +5v 36, 53
A32 gnd 59, 60
B1 N/A -
B2 N/A -
B3 N/A -
B4 a9 18
B5 a10 20
B6 a18 13
B7 a19 11
B8 a20 16
B9 a21 -
B10 a22 -
B11 a23 -
B12 N/A -
B13 N/A -
B14 N/A -
B15 N/A -
B16 /C_OE (Output Enable) 35
B17 /C_CE (Chip Enable) 31
B18 N/A -
B19 N/A -
B20 N/A -
B21 N/A -
B22 d15 40
B23 d14 44
B24 d13 48
B25 d12 52
B26 N/A -
B27 N/A -
B28 /LDSW (not used) -
B29 /UDSW (not used) -
B30 N/A -
B31 N/A -
B32 /CART_IN (not used) -
---------------------------------------
Posted 1 year ago
There were no updates last month as I was busy with other things, but I am aiming to get this finished soon.
After spending a couple of hours last night and again tonight, I have got it to a point where it works again, and fits in its case. I tried a couple of other games that I didn’t try before, and they both worked. It’s so much easier now it’s just a question of plugging it in, instead of doing it pin by pin!
It was mainly a case of routing each wire from my home made edge connector to the relevant ROM point on the megadrive cart board as neatly as I could.
Next step is to make the vb cart connector nice and secure in the case, I will probably try and get that bit done later this week.



Am really pleased with how it looks…

Posted 1 year ago
I have finally started to work on the nice looking, easily usable adapter.
First thing was to somehow make a socket for the Virtual Boy cartridges, something sturdy that you can just push the cartridge onto, rather than have to insert individual pins each time. I have had this in mind for a while now, trying various bits to see if they fit or not. I finally came up with something suitable. the pitch for a 2.5” HDD is the same as it is for the Virtual Boy, but unfortunately, the pin size is too big. I managed to find a couple of sockets that connect a 2.5” HDD to a laptop main board, these looked perfect.
I was able to push the pins from a PCMCIA socket through this HDD socket and then solder them in place from the back, leaving a convenient pad to solder the wires to later. I then glued them together so that there was the full 60 pins needed (I will use the extra bits at the sides to fix it in place).
I cleaned the sticker off my donor Mega Drive cartridge too, ready to make some cuts, hopefully, it will look quite neat when it is finished.



It fits really well, wish I had found these earlier…

Posted 1 year ago
If you haven’t already read the initial tests of the adapter, I would advise doing so before reading this.
Okay, so where were we? Ah yes, It didn’t work. Matthias suggested that I send him a copy of the dumped ROM so that he could cast his ever-so-slightly-better-qualified-eye over it, to hopefully find something of worth in it. Which he did.
Somehow*, he noticed that the addressing was shifted by 1 bit, and suggested checking my wiring, as the text file I had followed showed that the Mega Drive address lines started on a1 where as the Virtual Boy’s started at a0. Sure enough, I had wired a1 to a1 and so on, meaning that they were all out by one. Oops.
*This was found by looking at the first few bytes of the dump in a hex editor. If a game is 4Mbit, it should wrap around at 0x080000 (512kByte). The Dump started over at 0x040000 (256kByte) and everything was half as long as it should have been, this pointed to all addresses being off by a factor of two. After noticing the mismatched pin numbering in the text file, it all became clear.
I unplugged all of the wires, and put them back taking into account the Virtual Boy’s shifted address lines. I made another dump and sent it to Matthias. This was better he informed me, but still didn’t look quite right. He said that the data lines looked like they were crossed** and suggested swapping d0-d7 with d8-d15.
**Reading BB AA DD CC where it should be AA BB CC DD points straight at the data bytes being flipped. There are different standards as to how the bytes in a 16-bit “word” are aligned in memory, little-endian and big-endian. After a quick bit of research, it was found that the Virtual Boy CPU (NEC V810) is little-endian and the Mega Drive CPU (Motorola 68000) is big-endian. The Virtual Boy cart data lines needed to be switched to match the order that the Retrode was expecting.
So again I unplugged all of the wires, and again I put them back in, only this time switching the data lines (by this time I had added a strip of masking tape with the socket numbers written on it to the Virtual Boy PCB to aid in re-seating the pins). Again I sent a dump to Mathias, and this time it was almost as it should be, but there was still an issue with the data lines***, he suggested checking their continuity with a multimeter, which I did.
***Comparing the Retrode dump to a known good dump showed that all the data was correct apart from one recurring bit. This bit corresponded to data line 14 on the Mega Drive side.
It was now I found my second wiring mistake, somehow I had switched the d7 and d14 lines which was causing the issue (I am blaming the tiny holes I was having to push the pins into…). After swapping them back to their correct locations, I made another dump, and this time, it had the correct information in it!! The file was the wrong size, but this was due to the Retrode not finding the correct info where it thought it should be, as far as the Retrode was concerned it had a MD cart plugged in.
I sent the ROM dump over to Matthias. After a couple of attempts, he was able to make a new firmware file for the Retrode that correctly reads the game title and file size! All this without the hardware in front of him, clever chap!
I’m not entirely sure why I had to switch the data lines over as it wasn’t mentioned in the text file. Perhaps it is something to do with the way the Retrode reads them? All I know is that it works, mainly due to the help I received, thanks Matthias.
The working test Retrode Virtual Boy adapter.
Screen shots of different sized games registering their sizes correctly and running in Reality Boy:



Next task is to make it more user friendly and look pretty…
Edit: Added more detail regarding how the errors were found.
Posted 1 year ago
When Matthias posted the news that he was working on an adapter for Atari 2600 carts for the Retrode, it made me think of something I had read years ago about Nintendo’s Virtual Boy cartridges (which I mentioned in the comments on the news post). It was a text file that documented how to connect a Virtual Boy cart to a Mega Drive copier. This was possible as they both use the same ROM (albeit in a different form factor). I never got round to trying it on any of my Mega Drive copiers, so I thought I would give it a try with my Retrode.
I will do a proper write up when I have more time. Here is a quick bit of info on what I did:
Got a donor Mega Drive cart and Virtual Boy cart to try and read.
Removed a PCMCIA slot from an old laptop.
Extracted the pins from the slot (unfortunately the Virtual Boy cart doesn’t use a standard pitch connector).
Tested the fit of the pins in the cart, seemed to be okay.
Undressed both carts.
Soldered wires to the PCMCIA slot pins.
De-soldered the ROM chip from the Mega Drive cart PCB.
Soldered the wire/pin combo leads to the Mega Drive PCB in place of the ROM chip.
Joined the relevant wires from the Mega Drive PCB to the Virtual Boy cart as per the details in the text file.









I plugged the Retrode in to my computer and altered the Mega Drive file extension to be .vb, saved the config file and plugged the mess of a cart in. It showed up a file that was 6.12 MB which was obviously wrong as Mario’s Tennis is a 4mb cart (should show up as 512 KB). I tried it in an emulator anyway, but it didn’t boot, it just showed the error ‘Invalid PC - 00000000’.


I had a look at the file in a Hex editor and compared it to a known good dump of Mario’s Tennis, but couldn’t find anything that was visible in the good dump of the game.
I haven’t given up, I will re-check the connections are all going to the right place, and try again. If that fails, I will probably solder the wires directly to the Virtual Boy cart, to remove the possibility of poor contact between the pins and the connector. If I still get the same resulting file, I will have to get the old Mega Drive copier out and try it in that, to see if the text file information is correct.
I leave you with a photo of the mess in the Retrode.
Edit: Read part two, where I manage to get it working!