Skip to main content

Featured

Simulink Tricks

A Collection of Simulink Designs & Tricks Last Update: Nov 22 2024 #1. Edge-triggered Sine Pulse Generator  This waveform turns out to be tricky to make. I got the solution from here:  https://www.mathworks.com/matlabcentral/answers/891622-how-to-create-pulsed-sine-waves-in-simulink-that-turns-off-at-intervals

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