[HN Gopher] A circuit-level redesign of the Game Boy Advance
___________________________________________________________________
A circuit-level redesign of the Game Boy Advance
Author : looperhacks
Score : 191 points
Date : 2022-01-07 09:52 UTC (13 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| Zekfoo wrote:
| Very nice to see my work get recognized outside of the
| Reddit/Discord community. I have to admit, it was weird seeing
| the traffic for my AGZ repo spike higher than the CGZ repo that I
| just released.
|
| Feel free to ask me any questions about this or the CGZ, I'll
| answer anything that's not a variation of "will you be
| releasing/selling it?" :)
| adamrmcd wrote:
| Had a blast reading through this and your CGZ work. Nice job!
|
| Can you post the schematics? I'm really curious on how you
| changed things (LCD bias, debounce circuit, etc.)
|
| Also, can you post a pic of the back with components populated,
| outside of the case?
|
| Thanks!!
| Zekfoo wrote:
| Glad you enjoyed them! Photos of both populated boards, both
| sides, should be available on the repos (if not embedded on
| the main README, check the Images/ folder).
|
| I won't be sharing the schematics, though if you have any
| specific questions about something, I can try to answer as
| best I can.
|
| RE: LCD bias - I mentioned in my AGZ writeup that the stock
| bias voltages aren't required when using the IPS displays,
| this also applies to the CGZ. This is because the LCD kits
| that I use have all the bias voltage circuitry built-in on
| their flex PCB adaptors, so I only needed to supply 3.3V/5V
| from my boards.
|
| RE: Debounce circuit - Since the stock power switches carry
| the full system current, they can cause issues when they
| bounce due to dirty switch contacts. I redesigned the power
| switch circuit to instead use a high-side load switch
| implemented using a PFET with an RC time constant for
| debouncing.
| esotericsean wrote:
| Amazing work my friend. Not to be rude or intentionally ask
| about what you said not to, but I haven't heard anything about
| you selling or releasing or anything. Is there an official
| statement from you about all of that? It's your work so you can
| do whatever you want with it, I'm just curious.
| Zekfoo wrote:
| I suppose if I put the rule out there, it's bound to be
| broken hah.
|
| I have no plans to sell or open-source these two projects.
| They were passion projects of mine and while I understand
| everyone and their mothers who've come across them would like
| to try building them, I made this for myself. The Reddit
| posts and Github repos are just for me to share my
| achievements and enjoy the 15 minutes of fame I get among the
| retro modding community, and hopefully they inspire someone
| else to make something of their own.
|
| I've already had a few run-ins recently with people who can't
| respect these wishes and feel entitled to get a slice of the
| pie.
| adamrmcd wrote:
| Totally understand. No intention of building, but I am
| working on a project of a similar scale (very different
| context) and would be curious if you're available for
| contract work. (ie, review my work for best practices,
| etc.) Given no other way to contact you but publicly here,
| I've posted a FR on Discord, if you are interested :)
| ivraatiems wrote:
| This is so cool, I'd order one if it were ever possible to
| manufacture them for a reasonable cost. Like many people, the GBA
| has a special place in my heart - in my case, envy because I
| wasn't allowed to have one, until I finally got an SP.
|
| I wonder how much of this would have been possible (at a higher
| price point) when the GBA itself was designed. Probably quite a
| bit, but I bet the cost would have become prohibitive given the
| market.
| tomxor wrote:
| There are 80MB of images on this page, you really need to
| downsample those JPGs.
|
| Even with a large enough downstream, Github is understandably
| throttling connections.
| zamadatix wrote:
| I'm getting about half that count for the entire page. Doubt
| Github cares about serving 40 MBs of files over the web, that's
| what they do. User experience might not be greatest on a slow
| connection though but then again what are you going to do here
| if not look at the redesigned electronics in detail anyways.
|
| In some ways it's actually somewhat refreshing to be actually
| served source quality content in such a presentation in the
| days where aggregated platforms heavily compress things for
| mass consumption.
| poyu wrote:
| No schematics are to be found...
| neverendingsigh wrote:
| Behavioral standards within the Game Boy modding scene aren't
| great. Lots of other PCB projects (reverse engineering and
| original boards alike) have been stolen with credit stripped;
| novice end users demand Apple-level support for hobbyist
| projects regardless of what level of support the creator is
| able to provide, and for these full console PCB projects many
| people overestimate their ability to perform the necessary
| soldering (ask me about my OEM AGB firestarter...actually
| please don't).
|
| None of these issues are unique to this scene but it's what we
| have to deal with. I'm not expressing this so that it can be
| debated, because I don't represent everyone's thoughts, but
| there is a fair amount of regular self-critique around these
| issues and our approaches.
| deergomoo wrote:
| I am endlessly amazed by the community and ingenuity that has
| sprung up around retro console modding. Replacement screens,
| shells, buttons, power delivery, even things like optical drive
| emulators that read from an SD card.
|
| The only downside is that systems, Game Boys especially, have
| shot up in price from people buying them specifically to gut them
| and do new builds.
| willis936 wrote:
| It's not just gameboys. 3DS are barely discontinued and priced
| 2x MSRP. Don't look price trends of any console or game made
| before 2004. The kids have grown and their disposable income
| can be spent on their old toys.
|
| Nintendo has a chance to capitalize hard. They just need to
| offer a good alternative. They have the benefit of always
| choosing underpowered hardware because now they should be able
| to cram all of the native consoles into a single chip for
| nearly no money. With proper hardware scalers to properly
| simulate old LCD and CRT displays and they could charge
| whatever they want and still make a killing. It would just
| require a bit of engineering effort and, more critically, a
| willingness to admit the value of old content. Nintendo is a
| very conservative Japanese company and can not tell them
| anything.
| someperson wrote:
| > Non-SP GBA has problems: AA batteries, buttons are mushy, unlit
| screen, bad power delivery causing noisy audio
|
| Impressive project and hacking aside, the the original DS and the
| DS Lite (which both support GameBoy Advance cartridges) addresses
| most of these concerns.
|
| Do those two systems address the power delivery and noisy audio?
| derefr wrote:
| The 3DS CPU _would_ also support GBA cartridges, if there were
| any place on the console to plug them in.
|
| It's kind of amusing, actually -- Nintendo didn't
| _intentionally_ support GBA in the 3DS. But they supported DS
| in the 3DS the same way that the DS supported GBA: by embedding
| the previous generation 's CPU, _as is_ , within the die of the
| new CPU. Which means that inside the 3DS's CPU is a DS CPU; and
| _inside the DS CPU mask they reused for this_ , there is a GBA
| CPU. Which is fully functional. You tell the 3DS CPU to reboot
| into DS mode; then tell the DS CPU you're now talking to to
| reboot into GBA mode; and there you go, you're now talking to a
| GBA CPU.
|
| Nintendo eventually did realize what they had done, and
| released a few special limited-run GBA "Virtual Console" games.
| (But those games aren't emulated; they run natively!) You can
| use Nintendo's own GBA firmware to run your own GBA ROM images
| natively on a 3DS, if you like--though I don't think Nintendo's
| GBA firmware supports things like a Real-Time Clock, so you're
| better off using a GBA emulator there.
|
| But the potential is clearly there for someone with skills like
| the OP here to lift the CPU out of the 3DS onto its own PCB
| with a GBA card-edge socket, and then write a GBA firmware for
| said CPU that actually interacts with it.
| [deleted]
| willis936 wrote:
| Yep, and GBA uses the DMG/GBC's Z80 for extra audio
| capabilities. Unfortunately Nintendo gutted the Z80 except
| for audio in the DS. If they had left the full Z80 it would
| have allowed the DS to play DMG/GBC games we could have a
| handheld (n3DS) that could natively play every Nintendo
| handheld game ever made.
|
| The n3DS is still a dreamy piece of hardware.
| philistine wrote:
| The Game Boy ran at 5 volts. The Game Boy Advance ran at
| 3.3 volts. That's a very good reason they removed backwards
| compatibility of the OG Game Boy starting with the DS (and
| Game Boy Micro).
| willis936 wrote:
| The GBC ran on 2x AA (nominal 3 V), same as the GBA. GBA
| could also play DMG/GBC games no problem.
| salamandersauce wrote:
| GBC carts run at 5V. If you compare the edges of GB/GBC
| and GBA carts you'll see a cutout on the side. The cutout
| is there so GBA carts don't trigger the switch that puts
| it into 5V mode for use with GBC games. DS lacks the
| switch and parts to run 5V carts.
| mikepurvis wrote:
| I think they do, but they're also a different form factor, and
| the screen is taller meaning that GBA games end up letterboxed.
| It's perfectly usable, but I can understand someone wanting to
| build a device to deliver an optimized "native" GBA experience.
| selfhoster11 wrote:
| Not to mention that IMO, AA batteries are an asset on vintage
| portable electronics. The last thing I need is to search for
| overly expensive, and possibly already dead, battery packs on
| eBay when mine turns into a spicy pillow. AA batteries are much
| easier to acquire, and can be rechargeable to reduce
| environmental impact.
| neverendingsigh wrote:
| The project page goes over the improvements to power delivery
| and audio output, so not sure what else you're referencing
| here.
|
| Also remember that the AGB's audio is pretty garbage for what
| it should theoretically be capable of; it certainly doesn't
| have an SNES-level (edit: sound capability). Zekfoo has done
| quite a bit here to maximize its potential, and the results are
| far better than the piling on of many additional capacitors
| that other modders have experimented with to mixed results.
|
| Ultimately, nobody's stopping anyone from playing AGB carts in
| a DS if that's what you want to do. (Don't look up "Game Boy
| Macro" mods.)
| pasquinelli wrote:
| "certainly doesn't have an SNES-level FM synth."
|
| the snes soundchip plays samples.
| neverendingsigh wrote:
| My bad, wires crossed (heh). Point is it's still not quite
| as capable.
| babypuncher wrote:
| I actually prefer the AA batteries. I've built several custom
| Game Boy Advances and Colors. My favorite unit is a GBA I built
| in an aluminum chassis, which necessitated an upgrade to a
| built-in rechargeable battery. Being able to top off the
| battery with a USB-C cable is convenient, but I know the
| battery will no longer hold a charge in a few years or so and
| will have to be replaced. I've kept the original battery
| compartments on all my other Game Boys, because I know
| rechargeable AAs will be easy to find for the foreseeable
| future.
| titzer wrote:
| How difficult is it to integrate a AA battery recharger into
| the design? That'd be the best of both worlds, as all you
| need is the (5V) power pins from the USB cable to charge.
| anamexis wrote:
| I imagine 18650 cells will also be easy to find for the
| foreseeable future.
| babypuncher wrote:
| In theory yes, but they are quite a bit larger than AAs, so
| a significant redesign of the shell and battery compartment
| would be needed to accommodate them. They would also make
| the handheld bulkier and heavier. Meanwhile, these devices
| are already designed to accept AA batteries.
| maxfurman wrote:
| Available, maybe, but not at the same level of ubiquity as
| AA.
| wtallis wrote:
| Ubiquity isn't the requirement here, since the use case
| under discussion isn't buying pre-charged batteries at
| the local brick and mortar store, but merely easy
| sourcing of a replacement rechargeable battery when the
| existing one will no longer hold a charge. 18650s are
| certainly commoditized enough to fulfill that purpose,
| unlike proprietary LiPo packs.
| philistine wrote:
| They do, but you lose the backwards compatibility with the
| original Game Boy. That's a big reason the DS line is not as
| valued.
| zokier wrote:
| > FunnyPlaying IPS V2 display
|
| How are the colors on this replacement display? With GBA the
| colors are kinda complicated topic because AGS-101 colors are
| very _different_ from the original AGS-001, to the point where
| games can end up looking over-saturated and cartoonish.
| philistine wrote:
| Yeah, their website is way too light on details. A common
| problem with GBA replacement screens is the resolution of 160
| by 144 leads to rectangular pixels, which is a big no no.
|
| I dug around and found a reference to a problem with the
| screen's buffer causing visual tearing. That screen is a no-go
| for me. The Analogue Pocket is still the display king.
| neverendingsigh wrote:
| The AGB's resolution is 240x160. The panel used is new-old-
| stock or reproduction equivalent from the BlackBerry Curve
| 9380: a 480x360 panel, which allows the AGB adapter to output
| a 2x integer-scaled 480x240 image.
|
| When playing a DMG or CGB game, the image is still 2x but
| otherwise the image and behavior comes from the stock AGB
| hardware: a default scale places a 160x144 image in the
| center of the display, and pressing the L and R buttons allow
| you to toggle between that native mode and a horizontally
| stretched mode (that basically nobody likes).
|
| The tearing existed in the initial version of the adapter
| ribbon, as the 9380's display driver refreshes the display in
| portrait rather than the AGB's landscape. The second revision
| of the adapter, which started shipping only a couple months
| after the initial, way back in 2019, adds a 1-frame buffer to
| output the signal in the way that the display driver expects.
| The AGB's frame rate is a hair under 60Hz, so this does
| introduce a 16ms delay, but in the vast majority of AGB games
| this drawback is outweighed by all of the other benefits.
| neverendingsigh wrote:
| They're more accurate to what we would recognize as the RGB
| value on a modern device, as opposed to accurate to the classic
| AGB display--or "over-saturated and cartoonish."
|
| Some people like this, others don't. I sense you might know
| this, but for others' reference, some later AGB games have
| settings to optimize colors for AGB/AGS-001 or AGS-101
| displays. That's sort of the best we have unless new adapters
| are released that allow for additional configuration, like some
| of the recent Game Boy Color kits utilizing the BlackBerry Q5
| displays.
|
| There's another kit released by FunnyPlaying recently that
| utilizes new old stock of the lower display of the DSi. They
| perform similarly to the 101 displays, which to your point are
| still more saturated and RGB-accurate but still not as much as
| the BlackBerry 9380 displays used in the IPS v2 kit.
| mikepurvis wrote:
| Based on the package markings, it looks like the CPU was actually
| lifted from a GBA SP PCB. This makes sense, of course, and neatly
| side-steps a bunch of potential issues around firmware, bringup,
| etc.
|
| I know the author says "the CPU is taken from a GBA SP" in the
| text, but that could also have meant taken from the _design_ as
| opposed to the specific physical part having been taken.
| neverendingsigh wrote:
| As you said, it would be more trouble than it's worth to use,
| say, an FPGA in place of an original AGB-CPU part.
| Additionally, our part of the community has an appreciation for
| the original hardware and components; it's more about being
| able to rescue parts from damaged PCBs and/or push those
| original components beyond what Nintendo settled on.
| mikepurvis wrote:
| Definitely! Obviously it does increase the complexity of the
| project for others, knowing that you need a donor system from
| which to desolder key components. But it's great to end up
| with a product that's the real system running real cartridges
| and not a Linux computer running emulation.
|
| That said, it's cool that projects like MiSTer exist, and I
| could imagine that that might be a nice middle-ground for
| some people-- being closer to the real hardware than purely
| software emulation, but also something that can also be built
| from scratch with new, off-the-shelf components.
| redundantly wrote:
| That's was a very fun read!
| georgeecollins wrote:
| This is nice but I always preferred the clam shell GBA. I would
| like an update of that.
| munificent wrote:
| That's the GBA SP they refer to in:
|
| _> Growing up with a GBA SP, I was spoiled by its clicky
| buttons, rechargeable battery, and illuminated screen. When I
| finally got my hands on an original GBA, I couldn't be more
| disappointed by the stark difference in feel and function._
|
| I agree the SP is just a miles better form factor in every way.
| I sunk hours and hours into playing games on mine.
| cinntaile wrote:
| I mean I get the reasoning to see it as a downside but "It runs
| on AA batteries" is a feature! Built-in batteries degrade over
| time and when it's built-in it's usually not possible to switch
| it out easily by yourself. It's not a problem for this particular
| problem, I assume it's fairly trivial to replace it but consumer
| goods companies tend to not care about that at all.
| OJFord wrote:
| > [Why redesign...] Its screen is unlit.
|
| Oh wow, I'd forgotten until now, but I had a plug-in (USB type B
| I think) LED light on a stiff but flexible cord for my GB Colour.
| Funny to think about now, reading and typing this on my backlit
| phone.
| dont__panic wrote:
| Was it a worm light? https://www.amazon.com/Light-Illumination-
| Nintendo-Gameboy-C... Lot of fond memories of that thing. Come
| to think of it, I'd love something with the same style for a
| book light...
| bityard wrote:
| Back when the GBA was still newish, I bought and installed a
| front-light kit for mine. After that mod, the display was still
| utterly terrible and useless for fast-moving games like Sonic
| and Metroid, but at least you could SEE it.
|
| (I still have this GBA and loan it out to my kids on long car
| drives. It sounds like its tour of duty is coming to an end,
| however, as my oldest is saving up for a Switch.)
| coldpie wrote:
| The Afterburner kit[1]? I installed a small number of those
| for friends back in high school, was good fun. I remember the
| scariest moment while working on a friend's device was
| accidentally ripping off one of the buttons' contact pads
| while trying to solder onto it, and having to carefully
| scrape away the paint over a nearby trace to solder onto
| instead. He never knew :)
|
| [1] https://www.gameboy-
| advance.net/accessories/gba_afterburner_...
| realslimjd wrote:
| This is incredibly cool.
| [deleted]
| neverendingsigh wrote:
| Just yesterday, Zekfoo published his CGZ board project, taking a
| similar approach to the Game Boy Color's PCB. It's much less
| involved--the AGZ project is partially about fitting an Advance
| SP board's features into the classic Advance--but still neat if
| you're into this kind of thing.
|
| https://github.com/Zekfoo/CGZ
___________________________________________________________________
(page generated 2022-01-07 23:01 UTC)