A fine WordPress.com site
This epic project began as a birthday present for a gamer friend, and ended up being four months late (whoops). It was a huge undertaking in the end, especially because it was my first major electronics project, and I didn’t have ANY experience with basic skills like soldering. So it involved a lot of learning and research, and I suggest you do the same (research, that is…more than just reading this page). I haven’t written a How-To, because I made everything up pretty much, and I’m sure there are better ways to do things, so I have just written what I did as a guide. Everything here is in Australian Dollars/dates and times, and I list Australian stores, because that’s where I bought everything from (apart from ebay).
Major lesson learned from this project: Think about things, there will be a way to do what you want.
VIDEO for those not wanting to read this damn long post:
IMGUR ALBUM for less/newer photos:
THE A330 UNIT
The unit on the inside is the Dingoo Technologies A330, also known as the DT-A330 (not to be confused with the Gemei A330). I didn’t choose this particular unit for a special reason; to be honest, it was one of the first I found on ebay after reading about handheld emulators, and it had everything I wanted. I bought it for $135 plus $35 for express postage, which was quick, but seeing as the project has taken me over four months, not entirely worth it. As it turns out, there is a relatively large community that is constantly developing new emulators, games, etc for the Dingoos, as well as being incredibly helpful with troubleshooting.
A330 out of the box (it came somewhat charged)
I won’t write a review of the unit here, but here are a few links that I found really helpful and informative:
http://gbatemp.net/topic/230291-dingoo-a330-review/ – Very in-depth review of the unit
http://www.dingoonity.org – Big site for the Dingoo community
THE ORIGINAL GAMEBOY
I don’t think this unit really needs much of an introduction: it was a revolution for handheld gaming when it was released in 1989. The colour I chose was the classic, original colour, although it was released in many other variations, including clear ones. It could be seen as the opposite of the A330 in terms of history, and is extremely retro. More of you might remember owning a Gameboy Color (Like I did, one of the blue and yellow Pokemon limited editions), but this is where it all started.
The goal of this project was to give the Gameboy all of the functions of the DTA330 while leaving it looking as stock as possible. I was having some trouble sourcing broken Original Gameboys (I felt bad destroying working ones), until I found these guys in NSW:
who sold me two broken Gameboys and interstate postage for $30, which I thought was a pretty good deal. I needed two so I had spare parts in case I screwed up, and because I needed to double the A and B buttons to create X and Y buttons.
2x Gameboy Originals
This project required me to learn a few new skills, so don’t worry if you can’t do things like solder now. It’s easy enough to learn, and you’ll easily be able to practice. I did some pretty small soldering in this project after only a couple of hours. There is a How-To page that has quick tutorials for stuff like that. Also, it’s all over the internet.
In order to make this easier to follow, here are the major modifications that needed to be done, and are explained below:
I’ll just be writing it up as I did it, and the above order is only a rough one. Some of them can be moved around, whereas others, such as the Case Modifications, need to be done early on in order to allow other parts to fit. Note that “Case Modifications” actually take place in nearly every step, so the ones explicitly shown in this step are ones needed for cosmetic reasons.
1. UNIT DISASSEMBLY
The Gameboy and the A330 are both relatively easy to take apart. For the A330, it is as simple as removing the rubber foot pads from the back cover, and then undoing the screws underneath. The circuit board has some screws securing it to the case as well, which also need to be removed. The trick is to be careful: if the circuit board doesn’t come out fairly easily, there must be another screw somewhere. Also mind the battery and speaker power wires; I ended up having to resolder both of these (the speakers don’t matter anyway, I used the Gameboy speaker) later on as the connections are pretty weak.
Internal Screw Locations (click to enlarge any image)
Taking apart the Gameboy is just as easy, except there are two circuit boards inside. Make sure you keep everything from both units until the end, including ALL SCREWS, you never know what will come in handy. Plus some parts you actually need. Like the buttons and silicon button pads from the Gameboy, as well as the circuit boards and screws.
Take these six screws out to release the case
And these screws to remove the circuit boards (I may have missed some)
2. CASE MODIFICATIONS
These modifications are basically to maintain the illusion that it is a stock Gameboy, while protecting the electronics inside. The two major steps here are to cover up the game cartridge slot (as now all of your games are stored on the unit) and the battery cover (as the A330 has a rechargeable battery).
The battery cover goes as follows:
The game cartridge plays a vital role in both covering up the slot on the back, as well as allowing more room inside the unit for the A330 circuit board, USB connector and AV-out connector. I wasn’t able to find a broken game cartridge, but a trip to a Cash Converters got me one of a crappy game for $5. I had to make sure it was a Gameboy Original game, and not a Gameboy Color cartridge, as they say different things along the top. Original cartridges say “Nintendo GAMEBOY” whereas Color ones say, you guessed it, “GAMEBOY Color”. Or something like that.
The little bit of game sticker that peeks over the case allows for some cool customisation. Because I bought a crappy Camelot game, I wanted to cover up that part of the sticker. I went with the one shown below, but also made one of the Starcraft II logo so it looked like I could play Starcraft II on an Original Gameboy…which I can stick on later if I want. Also, if you notice, the game changes halfway through, because I stuffed up and cut from the wrong end, and had to use one of my old games.
Initially, we have to modify the case one more time. This removes excess thickness from the slot support, and gives space for the AV-out plug. Make the cut as shown below, along the black line:
The first step is to take the game cartridge apart, as we don’t need all of its thickness, really just the part that can be seen from the outside. This requires the removal of a weird star shaped screw that I just got undone with some needle nose pliers, my trusty engraver to remove some plastic from around it, and a little bit of force:
This then allowed me to pry open the case and remove the circuit board. Taking the back/inside cover, ie the one without the game sticker on it, I marked and then cut it to match the cut we made in the case (long black line):
I then removed the little guide wall type thing from the inside of the game sticker side up until the top start of the top cover, allowing it to lie flat inside the case:
I then glued these pieces back together using epoxy-resin, being careful to glue only on the inside of the two pieces so the glue wouldn’t be seen. I then inserted this into the Gameboy slot, and glued it in place. It should still sit on the little ledges that stop it from sliding too far into the Gameboy, as the length of the game cartridge hasn’t changed. This allows it to line up perfectly on the outside, giving the required stock look (by this stage I had a hot glue gun):
The final modification needed to be done to the case is to widen the screen. The screen on the Dingoo is a different size and ratio to that of the Gameboy, but the height is already slightly bigger, and is close enough. The width needs to be extended by about 4.5mm on each side, but you’ll need to measure it yourself if you want to do it. Something like that. Anyway, the first thing I did was use a knife to score the line of the new edge, and then I cut down each side, to about 0.5mm before the line:
I then used a file to work my way down to the line, trying to keep the edge as straight as possible:
Finally, I used a bit of sandpaper to get rid of any plastic burs from the file and to smooth off the edges, giving the end result:
Inside the case, in order to allow the screen to fit properly, we need to remove some screw mounts, and the surround for the battery light (you can see the marks where I have hacked away with the engraver):
The first time I did this, I didn’t remove the battery light surround enough, putting extra pressure on the screen, and I had to go back and make sure it was actually flat across this part, as the screen glass does sit on it directly in the end. That’s about it for major, standalone modifications for the case. Other, smaller, ones are necessary in other parts, but they’ll be mentioned when they’re actually needed.
3. DIRECTIONAL KEYPAD AND A, B, X AND Y BUTTONS
As the circuit board for the A330 needed to be places longways in the Gameboy case, neither the directional keypad or the other buttons lined up, plus they were rotated anyway. As the friend I was making it for is a gamer, I figured out a way to both extend the buttons on the A330 board AND maintain the feel of the Original Gameboy buttons. The buttons on both the Gameboy and A330 work the same way. Essentially, the ‘buttons’ on the circuit boards consist of a power contact and a ground contact, and the physical buttons we see consist of the plastic button itself and a moulded silicon button pad, with a third, black contact on the bottom. When the button is pressed, this third contact on the silicon is pushed into contact with the two on the circuit board, completing the circuit and registering a button press. The Gameboy and A330 board contacts are designed with the use of the buttons in mind: for example, on the Gameboy directional pad, the contacts are at the outer edge of the button, as the directional keypad pivots about its centre, and hence the outside is where the contact is made.
Extending the buttons is simply a matter of joining power to power and ground to ground. I reused a modified Gameboy circuit board, as it screwed straight on to the Gameboy case, aligning all of the buttons correctly, and was also very secure. It also meant I could use original Gameboy silicon pads, keeping the original stock feel. Importantly, it also kept all of the buttons sitting at the correct height, and gave them the same travel as a Gameboy.
The major modifications for the circuit board were twofold: cropping the board to the minimum required size, and adding the X and Y buttons, using the A and B button section from the second Gameboy. I did this section basically through trial and error, and using a multimeter to ascertain what buttons are connected where. Some buttons share a ground or power line, and so, in the interests of not stuffing things up, I used the engraver to isolate them from each other, or just cut a slit the whole way through the board. Some important notes for this section:
Pictures of the process:
Isolating the select button from the down button:
To solder the wires on:
Creating the extra X and Y buttons:
Finally, I used my glue gun to glue the wires in place, removing undue stress on the solder joints.
I was originally planning on having this circuit board being entirely detachable from the A330, however I realised I wouldn’t have enough space for two plugs near the screen. I ended up soldering wires onto the directional pad on the A330 board, and then soldering these to the ones on the Gameboy board, but used a 10-pin plug for the A, B, X, Y and start buttons, allowing the Gameboy board to be folded out on the much longer directional button wires, which is necessary for installation/removal of the mounting screws.
Soldering to the A330 board was a lot more difficult, especially for me, whose entire soldering experience was that bit just above. The directional buttons have extra square contacts for some reason, meaning they were easy to solder on to. The A, B, X and Y buttons, however, required direct soldering onto the button contacts themselves, which were about 0.5mm thick, and separated by only 0.3mm(ish). This took a steady hand (which I didn’t really have) and lots of patience. The process of soldering was the same as in the How-To section: flux everything, tin everything. Then touch the soldering iron the contact, introduce the solder, remove solder, remove iron. Then heat solder, bring in pre-tinned wire, remove iron. The hardest part was trying to prevent solder bridging the tiny gap between the contacts. I found that this could be prevented by choosing where I soldered to (ie, the fatter areas) and using the right amount of flux. Also, when I did solder across accidentally, simply running the tip of the soldering iron along the gap removed the solder pretty quickly without damaging the button contacts.
As you can see, I got solder everywhere, but testing is easy: turn the unit on, and touch the other ends of the wires together. If it is all good, it should register as a button press. I, of course, then covered everything in hot glue, as the small contact areas make for some fairly weak solder joints.
Soldering to the directional buttons on the A330 board:
The next part is to solder the plug for the shorter wires to allow the separation of the A330 board and the Gameboy one. I used a 10pin plug I bought from Jaycar for $1.65, which turned out to be a terrible idea, as I didn’t have the correct crimping tool, and was way too enthusiastic with my soldering. I would recommend using headers like I did for the power switch plug (see the power switch section below), as it both easier to solder and gives a smaller plug. It was a matter of soldering the wires to the correct pins/jacks and then gluing it all together to keep them from sliding out:
I used tape originally (stupid idea, it did nothing):
As I mentioned above, I had to join my directional button wires together, as I had originally planned to use a plug. To do this, I twisted thewires together, giving a strong physical grip, and fluxed the lot:
And then used some heat-shrink tubing to insulate the wires from each other. Use the thick part of the soldering iron and rub it over the tubing to shrink it best, although it will burn/melt if you hold it still for too long.
Soldering the start and select buttons required testing first to see which solder points were actually connected by the button press. Although these already have solder on them, it is much easier and makes for a much stronger joint if you add your own solder on first before soldering the wire in. Make sure to test the connections before gluing the wires in place.
We now need to actually create the holes and mounts for the X and Y buttons. I decided that placing them vertically above the A and B buttons looked most stock, and I placed them so that they were outside of the slight dip in the case around the A and B buttons, but left enough space between themselves and the screen. I actually made the circuit board before drilling the holes, basically making the holes line up to the circuit board. Because the plastic is soft and a bit old, I started with a 1mm drill bit and worked my way up to the required 11.5mm bit.
The next thing to do was to make sure the board could mount properly to the case. The extra board section for the X and Y buttons blocks off one mounting screw point, but also allows for another in its top corner. In order to prevent excessive flexing of the board, potentially breaking the plastic boards connectors, I used a thin coping saw blade to cut off the mount, and relocated it using epoxy resin to the place required by the new hole. TO make sure it was accurate and solid, I screwed the mount to the board first, and glued it while holding the board in place. In order to keep the mount secure, I had to score the sides with the coping saw to give the glue something to grip on to:
Inside the case, there are mounts for the various buttons that keep them aligned and restrict their movement to purely vertical. I took the mount from the second Gameboy and used it for the X and Y buttons. The alignment of the holes relative to one another was a tiny bit off (about 1mm) so I had to separate the two mounts and glue them individually. I also had to remove excess glue and mount thickness from the area where the button ‘arms’ moved so they sat properly. In order to get the silicon button pads to sit properly, I removed a tiny bit of material from each one, as well as using a file to remove some of the top of the mounts to make them the same height:
I tried to align the arms slots top and bottom, as it allowed me to use one of the positioning holes on the silicon button pad to keep it in place. The other one has to be cut off to not block the screw mount.
The first time I cut the silicon pads, I cut too much off and it wouldn’t work properly. Only remove 1mm at a time until it just fits. The issue was caused by me cutting into the little cone that contains the black contact. This cone determines how the pad moves when pressed.
Check to see that the buttons sit at the right height. If not, either file down the arm slots so the buttons can move out more, or flatten the top of the mounts more to allow the silicon pads to sit flatter. The buttons should not be able to move up and down without moving the silicon pad too. They shouldn’t rattle either.
If you now place the buttons and silicon pads in, and screw the board on, plug it into the A330, and turn it on, you should be able to control everything (except for the shoulder buttons). Later on in the project, my unit kept skipping left or right, as if I was holding down a direction. It was the wires shorting across the copper backing of the Gameboy baord, which I then had to go back and fix. I used my engraver tool to cut channels through the copper, isolating each button’s wires from each other:
If it looks messy, it is. The thing about hot glue guns is that the glue can be relatively easily removed; by engraving tool, which kind of melts it, or by pulling it off plastic. I then went back and re-glued the whole thing to keep the soldering safe. You may have noticed above that I already had to do this with the start and select buttons, but didn’t think to do it for other buttons. Bit of a learning curve, but by making the whole unit removable and separable, it’s not too much work to undo it and fix an issue.
4. SHOULDER BUTTONS
I had a bit of trouble trying to decide how to go about putting shoulder buttons on the Gameboy without ruining the stock look of it. I had the idea of using the R and L keys from an old school PS2 (the connector, not the game console) keyboard, and locating them on the back or on the sides near the top. It never really sat properly with me, so I thought about it a bit more and did a little more research. As it turns out, the A330 controls volume entirely via software, and has no need for a hardware volume control. Obviously it has no need for a contrast control either, plus I had to do something with the Gameboy’s volume and contrast wheels to keep the stock look. I ended up turning them into push buttons, even though they look like they scroll.
I used some lever switches as the switch mechanism. In order to mount them to the case, I used a length of wire from a wire coathanger and bent it into the required shape, which I basically guessed and used trial and error to get right. The coathanger wire fits perfectly into the mounting holes in the switches I bought, and requires some light and careful drilling of some mounting holes on the Gameboy case to fit at that end. I mounted them first so that I could then cut the wheels to the perfectly correct size:
For the other side (the right side), I only put the hanger wire in one mounting hole, and the other length I simply used epoxy-resin to hold in place, as I couldn’t get a small enough bend on the wire with the pliers I had to make it fit that way. It still works fine though. The little bits of copper plate are used as spacers to make sure the metal arm of the switch is sitting at the right height.
For the actual button parts, I lined up the wheels and marked them, then cut them and filed them down to the right size. In order to prevent the switch from rattling around, and to make it easier to press (less travel required), I left the wheel parts a bit thicker than necessary. This keeps the switch already half-depressed, but not closed, as not a lot of the wheel sticks out of the case. I also used the spare volume wheel from the second Gameboy for the contrast wheel, as I thought the thicker wheel made for a better button. This change in thickness required me to file down the little lip on the front part of the Gameboy case that matches up to the contrast wheel slot on the left side:
The wheel after cutting:
Before gluing the wheels on, I held the little overhang of the metal arm in some pliers, and bent it to 90 degrees away from the switch. This provides a more physical stopper to the wheel sliding along the arm when being pushed in. I then also soldered two wires onto the required contacts for each switch. The wire for the left hand shoulder button has to reach across the unit, and the right hand shoulder button wires have to reach down to the bottom of the Gameboy/A330 board:
These wires then have to be soldered directly onto the required switches on the A330. These are still removable as they simply slide off the coathanger wire. When soldering onto the shoulder buttons, I originally tried to solder onto contacts on the top, which didn’t work and left the plastic quite mangled. This was some of the first soldering I did, so it’s pretty awful. As it turns out, I had to solder sort of at the side and underneath the buttons, as this is where the solder points were. It was a bit fiddly, but I got there. That’s also why the wires stick out sideways from the button, as I held the soldering iron at the front and brought in the solder and wires from the side:
Now the shoulder buttons work fully, and the Gameboy still looks completely stock (except for the extra two buttons, which are of the same style anyway so they kind of look stock). By gluing and bending the metal arm, the buttons are fine even if someone tries to scroll them. They are easy to press, and can be pressed by holding your fingers straight up the sides and bending in the first knuckle, which is more comfortable than holding your fingertips on the buttons directly. Luckily, and I didn’t check this at the time, the position of the shoulder buttons leaves exactly enough room for the A330 board to sit between.
5. SCREEN MODIFICATIONS
This was possibly the easiest stage in terms of the amount of work I had to do; because I got someone else to do it! What I needed was to relocate the screen, by moving it towards the D-pad on the A330 and rotating it 90 degrees anti-clockwise. The LCD ribbon for the A330 is very short, and actually contains multiple layers and components embedded on it directly. I decided that removing its 36 pins, which are only 0.5mm apart, was too difficult for my very basic soldering skills, plus I had no idea how to do it. Searching on the internet only gave me “you’ll burn everything” and I didn’t want to ruin the unit. I ended up finding Dan (a.k.a dakiller) on the Overclockers Australia Forums by searching for soldering experts. For a fee of $40, he was able to solder in the extra LCD ribbon I required, and even bent it into roughly the correct position for me. He used a regular soldering iron and a stereo microscope, and extremely steady hand, to do the job. In the end, it worked perfectly! The original LCD ribbon was removed from the A330 board, and then the extra LCD ribbon soldered in between it and the board. He was also able to sell me one tube of Tacky Flux, which comes in a plastic syringe, and is apparently easier to apply than regular flux or something. All I know is that it works perfectly, although I have never used any other type.
^There is no way I was going near that^
On Dan’s recommendation, I strengthened his joins by gluing the bottom, and taping the top. As it turns out, I didn’t glue it well enough, and I actually broke the very top (in the picture below) connection off, which caused the screen to just show white. It took me a while to realise, and even longer to finally solder it back on without ruining anything else, but in the end it was fine. And I added a fair bit more glue on after that little mishap.
I also added a few globs of glue onto the front part of the Gameboy case that held the screen in the right place. I placed glue on the case, and then used the engraver tool to carve it back to where I needed, as that was more accurate than the glue gun itself. These hold the screen nicely in place, and due to their slight softness, don’t add any undue stress onto the glass. The mount at the top of the window on the left was already the perfect height, and that is what I used as a datum. I made sure the screen was turned on when I was lining it up, as there is a border around it that is very difficult to see otherwise:
The power switch was something I probably should have done earlier, but it was extremely difficult to find a switch of the correct travel. Jaycar didn’t have any momentary slide switches at all, let alone one that had a travel of near to 5mm, as was required to use the Gameboy power switch to keep the stock thing going. I tried modifying the Gameboy switches by opening them, removing the slide control and adding the spring from a pen, but both attempts failed miserably. After weeks of looking, I eventually found a seller on ebay in Canada who had a switch with a travel of about 4.5mm, which was perfect. When it arrived, I realised the switch was a lot bigger than I had thought, and so I couldn’t place it directly underneath the Gameboy switch. Instead, I shifted it across and used the fact it had little slots in its open ends and connected it to the Gameboy switch using a bit of coathanger:
I attached the coathanger to the Gameboy switch piece by filling the hole in it with hot glue, which didn’t stop the wire from turning, but seemed to wedge it in nice and tight.
There is one modification that needs to be done to the switch in order for it to fit: the big black plastic tower bit needs to be removed. This is done by taking the switch apart, and cutting it at a height just above the metal surface. It needs to be done this way, as there is also a small spring that needs to be shortened, as it usually sits inside this tower bit. First, I removed the extra tab of metal from one end, removed the tower, and then glued a piece of takeaway container on the end to firstly contain that small spring, and also to allow the switch to slide easier if it was touching the Gameboy case anywhere (which it didn’t end up doing anyway).
Gluing the switch in place; I made sure I left a little gap at the top so its movement wouldn’t be restricted:
I now had to wire this switch with the one on the A330. The one on the A330 featured a “lock” position as well, which disabled all buttons, but I decided I’d had enough difficulty finding a switch to just turn it on and off, let alone one that did that too. I soldered wires on the Gameboy switch and onto the A330 board, long enough in combination to reach the whole way down the case, as the A330’s switch was at the very bottom of the case. In order to keep everything removable, I used some headers as a plug, which kept everything very flat and was extremely easy to solder. I kept them 4 pins wide, despite only using two, as cutting them between each pin often resulted in a piece of casing coming away, and glued everything for strength:
The use of the headers as plugs is something that I would adopt in other places, like for the letter buttons, if I were to make another one.
7. USB EXTENSION
The A330 both charges and communicates via a Mini USB B plug (5-pins). I needed to extend this to somewhere on the case to allow for easy access and charging. I was originally planning on having the USB extension come out at the bottom of the case, but then I decided to see if it would fit where the Gameboy connector went, and as it turns out, it fit with about 1mm to spare. I had to research online as to what pins went where, especially because the Mini USB connector has 5 pins, whereas the USB A has four. Most places suggested just leaving the spare pin (pin 4), but a bit more research revealed it is actually required to be grounded over a 17k Ohm resistor to the ground pin. At first, I thought this was a pretty easy solder job, just pin to pin. The best way I found to solder to these small pins was add flux and then some solder to both the pins and the wires, making a blob of solder on the pins:
And then bring the two together, and melt the solder on both and join them together, making sure to constantly re-tin your iron:
I had to use a couple of resistors in series and parallel in order to get the 17k Ohm resistance, as I didn’t have a 17k Ohm resistor (there are online resistance calculators if you can’t be bothered doing it by hand):
At this point, as you can see in the last photo in section 5 above, I thought I was done. I thought I tested it correctly, but as it turns out, I was missing one vital part. Before adding the resistor, the unit would not communicate with any computers at all. After adding the resistor, it would communicate, but very very slowly, sometimes forcing me to restart windows explorer. I went to Jaycar, who couldn’t help me ans sent me to Centrecom computers, who also couldn’t help me, who sent me to Middy’s Electrical, who were extremely helpful and knowledgeable. For some reason, I thought they were autoelectricians, but turns out they specialise in data communication. What I was missing was shielding for my wires. USB is susceptible to electromagnetic disturbances from your phone, the computer, etc, and needs to be protected. It was as simple as insulating the wires with electrical tape, wrapping them in some aluminium foil, and then wrapping that in electrical tape once more:
Placing it in the case was not the easiest now either, as it was considerably bulkier than before. It worked perfectly in terms of data transfer, however. The female USB A connector actually sits very nicely in the Gameboy connector slot, and doesn’t require any work other than gluing it in place. As a bit of a perfectionist, however, I decided that the shiny silver didn’t look stock enough, and so went to Bunnings and bought a sample tin of wall paint that matched the Gameboy case and painted the exposed metal parts to make it blend in more. I couldn’t mount it entirely inside the case, as it would have interfered with the A330 board:
^Although this is without shielding, I glued it in the same way by surrounding the little ‘legs’ with hot glue^
I had to twist and bend the plug for the A330 in order to have it sit in the right place, which was because I made it too long. Luckily, it was just short enough to not interfere too much (it’s on the very right in this photo):
The last step was to purchase a USB A male-to-male cable in order to communicate with computers and to charge ($14.95 for a 1.5m one from BCC Computers). I could have used other USB connectors on the Gameboy case end, but decided on the USB A female as it fit so nicely into the existing connector slot.
8. AV-OUT EXTENSION
The A330 uses what is known as a TRRS (Tip Ring Ring Sleeve) connector as its AV-out jack. This kind of connector carries three ‘positive’ currents and a ground line. It is commonly seen in headphones that have a built-in microphone, such as for use with mobile phones. The issue I had was that any connector that came with its own cable either had a stupidly long cable, or was way too bulky to fit in the case anyway. I ended up buying a set of solderable TRRS plugs from ebay, and pulling a TRRS jack off an old broken video camera to use at the Gameboy end. In order to sort out which part of the plug corresponded to which line (either ground, sound L, sound R, or picture), I used a multimeter and tested the resistance between the tip, rings or sleeve and other end of the plug, and came up with the diagram below. Then I simply soldered it all together, this time requiring no shielding:
The TRRS plug fits exactly between the A330 board and the Gameboy case, so it was necessary to solder it myself over using an off-the-shelf cable. When I glued the jack into the case, I accidentally made everything very stiff, meaning that the AV-out cable has to be pushed in pretty hard. This happens because the glue is sitting on top of the cooper contacts, restricting their movement. It still fits and works perfectly though, and I haven’t had any issues with it yet.
9. HEADPHONE JACK EXTENSION AND SPEAKER
The speakers had already come off due to weak soldering and wiring on the A330 board. I was thinking of just reattaching them, then decided to try the Gameboy speaker. Turns out the Gameboy speaker works fine. I wasn’t sure which side of the speaker was negative and which one was positive, so I just guessed and it works great. The advantage of using the Gameboy speaker is that it mounts directly into its original slot under the button circuit board. Although the A330 has two speakers, I only connected the one at the bottom of the Gameboy case, which is plenty loud enough. I did have to extend the speaker wires so it would reach its slot, as well as file down a little ridge on the rim of the speaker designed to hold it from turning, as it wouldn’t sit right at its original angle:
The headphone jack was a little more complicated than I expected. This headphone jack cuts out the speakers when you plug in the headphones. This process can happen one of two ways, and the A330 did it the very uncommon way. Basically, normally the speakers are wired through a pair of contacts on the headphone jack. When the headphones are inserted, they push one or two plates sideways, breaking contact with the speaker pins, and hence disconnecting the speakers. This is how the Gameboy jack worked. The A330, however, was the opposite: plugging in headphones would close a circuit, and this would then tell the unit to disconnect the speakers somehow, either by relay or software. I decided I wanted to reuse the Gameboy headphone jack, as it looked and fit right. This required me to remove one pin and then, using part of the case from the ruined power switches, create a new contact:
I then had to figure out how to solder this to the A330, as it seemed to require different contacts or something. Turns out one was just for mounting, and that two wires from the Gameboy jack had to be connected to the same pin on the A330. Once this was done, it worked perfectly, cutting out the speakers when headphones are plugged in. I couldn’t be bothered making another plug, plus there wasn’t much space, so this is the one part that is not removable, but because it’s at the bottom of the case, the A330 board folds out anyway:
10. RESET BUTTON
This was quite an easy step, but necessary. I simple wired the reset button to a spare button switch I had, and then used its spare ‘legs’ to hold it in place under the USB extension cable. I drilled a small hole in the top of the fake game cartridge so a paperclip can access the button. It’s not the best setup, but there was no room for another plug, plus I couldn’t make it not removable, as the headphone jack at the other end was already permanent. If you’re gentle with it, it doesn’t move much:
The reset button on the A330 is the same style as the shoulder buttons, and so requires the wires to be soldered in from the side.
There were a few things that didn’t quite fit into other categories:
There is a particular order to how the unit should be assembled:
1. Make sure you have these parts:
2. Insert the buttons and their silicon pads into the front cover, as well as the speaker. Then, screw on the button circuit board using the six screws circled:
4. Place the front cover on top of the back cover, first remembering to plug in the power switch:
5. Plug in the AV-out and USB cables:
6. Slide the reset switch into place:
7. Slide the two shoulder buttons onto their mounting wires. You may have to cut a bit of extra plastic out to allow the USB cable to sit low enough. It will be a bit of a squeeze, but it should fit just right:
^The bit of extra plastic I had to remove, in front of the screw mount^
8. Ensure that the wires running from the directional buttons on the A330 board run underneath the screen, and are spread out nice and flat. Otherwise, the screen will experience pressure points which can easily damage the glass or LCD. The fit should be tight, but with no excessive pressure on the screen. You will be able to see it if you turn the screen on, there will be waves across the screen. Align the screen onto its position glue globs:
9. Finally, use three case screws and close the case using the remaining three mounts circled below. I had to squeeze the unit quite hard to get it to close, and had to make sure no wires were being caught somewhere. A problem area was around the left shoulder button, as some wires moved and jammed the switch from working:
10. Apart from the screen cover, the unit should now be fully assembled and functional! Make sure you “test” everything fully by playing it for at least a couple of hours a day for a while…it should now look like this:
Completely stock except for the extra buttons on the front and the USB port. I haven’t been able to find a way to produce the screen surround and cover yet (the grey bit with the blue and purple stripes) but I’m working on it! I’ll update as soon as possible.
UPDATE 14/11/12: Months ago, I scanned in one of the old Gameboys. I then used photoshop to closely reproduce the screen surround, trying to match the colours, font and sizing as perfectly as possible. It required the removal of the battery light hole and text, which was fine seeing as the unit doesn’t have a battery light anyway. I also measured the positions of the edges of the new screen from the edge of the depression for the screen cover on the gameboy, although as it turns out, I had to add a little extra thickness and just cut it down later.
After many quotes, all at least $60, some up to $150, I decided I should give making my own screen surround a shot. I tried two different methods. The first was to get some print-on window sticker sheets from Officeworks, which turned out to not give very good quality when looking from behind them, as the glue would blur. The other, even cheaper option, was to print the screen surround onto high quality photo paper and cut it out with a sharp pocket knife, a ruler, and a steady hand. This worked perfectly. I have access to a small CNC router that I can use to cut the required 1mm clear acrylic to shape, which will then go over the top. This came out looking great, much better quality than some trial stickers I was able to get through a contact, and it cost me barely $10! (although i haven’t bought the acrylic yet).
While “testing” (ie, enjoying it while my friend was overseas) I realised I had another issue with button wires making contact through the common ground on the old Gameboy circuit boards. I cracked the unit open, went to work with the engraver like before, and then realised I had soldered two wires onto the one contact accidentally. After cutting through the midpoint of the contact, all buttons work as promised!
I’ll update again once it’s all finished, and upload a video. Hopefully it’ll be less than a year late…ah well…
UPDATE 24/11/12: FINALLY FINISHED!!! I have added a video to the top of the page to show the unit in action. I was able to use a laser cutter/router to produce the 1mm clear plastic screen cover. I then used spray adhesive to stick the grey surround to the cover, and then that to the Gameboo, as it produces a very fine, completely invisible layer of glue. This was then pressed on to the unit and voila!
I also purchased an aluminium toolbox/case from a junk store, and went to Clark’s Rubber and bought some black eggshell foam. I then cut this out to shape to give the final presentation of the Gameboo:
Thanks for reading!