MM5799 is a National Semiconductor microcontroller in the COPS I family.
data sheet from 1977 National MOS LSI Databook
The MM5799 has 1.5 K of 8-bit ROM and 96 4-bit nibbles of RAM. It was used in games like Mattel Basketball, Hockey and Soccer, as well as educational calculators like Quiz Kid Racer and Quiz Kid Speller.
In these games, the die is bonded directly to the PCB and protected with a plastic cover. That makes it easier to get die shots, although it's very easy to break the exposed bond wires. The marking on the die says MM4799 instead of MM5799.
National Semiconductor educational calculator. It uses a DS8874 9-bit shift LED driver.
Patent with source and object code
hardware description and pinout
segment PLA Input on right, output on left
source code warning- octal ahead
digits and operator LED under magnifying bubble
normal digit under magnifying bubble
equals sign under magnifying bubble
operators LED under magnifying bubble
digits and equals sign with magnifying bubble removed - note how equals sign LED is mounted lower
equals sign with magnifying bubble removed
operators LED with magnifying bubble removed
DS8874 clock and data signals - this is while it's flashing + - x /
National Semiconductor educational calculator.
segment PLA Input on right, output on left
LED driver, transistors and diode surface-mounted on PCB
DS8877 LED driver surface-mounted on PCB
transistor surface-mounted on PCB
another transistor surface-mounted on PCB - I'm guessing one is NPN and the other PNP. There's a 3rd that's not bonded.
diode surface-mounted on PCB
word list - this takes up pages 20-32 and part of page 33, plus quite a bit of code. MM5799 is not very efficient at this; it takes more than 1.5 bytes per letter!
Mattel handheld game.
top metal die shot - this game had the battery connected backwards, which vaporized some bond wires and metal, and deposited spall all over the die
top metal segment PLA Input on right, output on left
die shot with top metal removed - it cleaned up nicely
ROM array with top metal removed
segment PLA with top metal removed Input on right, output on left
Sinclair Cambridge Programmable calculator
MM5799 emulator work in progress