Hacking a CASIO fx-5800p Programmable Calculator

 Some information about the internals of fx-5800p, a cute programmable calculator that was very popular in the surveying market in China in the past.

1. SoC

Dieshot

  • SoC Markings: OKI ML610901B (CPU, RAM, Mask ROM, LCD Driver)
  • Flash: 29LV800CBT (Only half of the Flash ROM is being used)
  • RAM: 62256
  • Oscillator: Unknown, probably embedded.
  • The oscillation frequency can deviate by quite a lot during serial communication. It's probably an RC or on-chip RC oscillator.

2. OS Update & Data Encoding

“OS” refers to the binary data residing in the external Flash ROM. In fact, most of the core math, hardware access, communication, and maintenance functions are hard-wired inside the SOC (Mask-ROM). The font set and the power-off screen are also in the Mask-ROM.
From what I know so far, the UI, statistics, and programming functions are probably in the external flash, which can be reprogrammed.
To enter the OS Update menu:

  1. Shutdown the device using [SHIFT]+[AC/ON]
  1. Hold [MODE]+[7], Press [AC/ON]
  1. Press [⬅️], then [9]
You’re now in the maintenance menu, press [2] for OS Update functions. (Warning: you may accidentally delete your OS, be careful. Self-test or OS Update will cause a memory clear)


OS Update Process

Notice the data transmission is scrambled. It's probably some early form of bitstuffing.

3. et cetera

Some photos



Comments

Popular posts from this blog

Color Profiles

Teardown of an early capacitive tablet: Mitsubishi Grafnet Model 01

Let's Drive LCD - Extras