[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)