
Reverse-engineering the audio chip in the Nintendo Game Boy Color - ingve
http://www.righto.com/2020/05/reverse-engineering-audio-chip-in.html
======
t0mek
A few months ago the whole GameBoy SoC (DMG-CPU) was reversed engineered in
the same way [1], except for the CPU part - this means the schematics include
pixel processor unit, timer, serial port, IRQ controller, etc. However, it
seems that the CPU itself is pretty straight-forward to emulate anyway, since
Gekkio, author of the mooneye-gb [2], figured it's a variant of a well-
documented SM83.

Anyway, reverse-engineering efforts like this are pretty exciting, as they
should allow to create a 100% accurate emulators - and we know they are
accurate not only because all the games are running as expected, but because
they are based on the actual hardware design (which is even better than the
producer's specification).

GB is not a complex piece of hardware, in comparison to eg. SNES, but there
are some emulation issues really hard to tackle, especially around the pixel
processing unit IRQ timings - it's like solving a complex set of linear
equations, but we don't even know what the variables are (eg. what can affect
a 4-processor-tick shift in the HBlank IRQ timing this way or another).

Looking forward to a complete, transistor-level GB simulator, something like
Visual6502.

[1] [https://github.com/furrtek/DMG-CPU-
Inside](https://github.com/furrtek/DMG-CPU-Inside) [2]
[https://github.com/Gekkio/mooneye-gb](https://github.com/Gekkio/mooneye-gb)
[3] [http://www.visual6502.org/](http://www.visual6502.org/)

------
jsolson
For any analog engineers in the audience: how would this chip differ if
designed and fabricated today (if at all)?

~~~
kens
I looked at a random TI headphone amp chip [1] for portable gaming systems.
It's tiny (3mm×3mm) and uses CMOS for low power consumption. Internally it has
a charge pump to generate the voltages it needs from a wide power supply
range. The charge pump also allows the output to be centered around ground so
DC blocking capacitors can be omitted. The chip includes click and pop
suppression. Inexplicably it is Windows Vista compliant. So audio chips have
progressed a lot since this Nintendo chip.

[1]
[http://www.ti.com/product/TPA6132A2/datasheet](http://www.ti.com/product/TPA6132A2/datasheet)

~~~
Stierlitz
“MicrosoftTM Windows VistaTM Compliant”

Remember when the software had to comply with the hardware instead of the
other way round :]

~~~
monocasa
I feel like they've had an incestuous relationship as long as we've had both.

It is a bit goofy to call out a amplifier without even a SPI or I2C bus for
config though as compatible. I'm not sure how Vista would know the difference
between this and a tube amp.

~~~
cesarb
Microsoft has long had PC design guidelines, starting with PC 97 in the late
90s. "Windows Vista Compliant" would mean it meets the functional and
performance requirements found on the hardware design guidelines for Windows
Vista.

~~~
monocasa
I understand that. It's just weird that they'd specify anything for components
like that.

------
MrBuddyCasino
Am I missing something or isn't this just the amplifier, as opposed to
something that _generates_ sound like the SID?

~~~
kens
Yes, it's just the amplifier. I see that the title could be confusing.

