nokia-dct3-emulator: Open-source emulator + analysis toolkit for Nokia DCT3 phones
This repository provides an open-source emulator and analysis toolkit for Nokia DCT3-era phones, including models such as the 3310, 3210, 3410, 5210, 6210, 6250, 7110, 8210, 8250, 8810, and 8850. The emulator boots real firmware in the browser and a native SDL GUI, accurately modeling various hardware components, including the MAD2 platform ASIC, CCONT power controller, TMS320C54x DSP, PCD8544/SED-class LCD, keypad matrix, SIM, and internal and external EEPROMs.
The project serves as a historical preservation effort for obsolete, 25-year-old hardware, allowing offline educational analysis. The emulator models the system at the silicon level without patching firmware, following every write into MCU RAM as a mailbox write. The DSP-MCU message ring, head and tail pointers, COBBA staging cell, codeblock request/reply cells, and provisioned identity records are all simulated.
Some models may reach standby without registering, but this is due to the SWSIM_KEEP_LOCI environment variable. The GSM stack resides in the ROM-6 engine, while ROM-4 only implements registration as a full Location Update. Nineteen of the 26 registered models boot to a usable state, registering on a synthetic test network with an operator name and signal bars.
The repository contains no copyrighted firmware or EEPROM images, and requires a legitimately-obtained .fls image to function. The emulator supports external tools for servicing the handset, with the MBUS service bus available as a serial port. The emulated SIM card filesystem, contacts, SMS, Kc, FPLMN, and other settings are stored in separate stores, each with its own capacity. The diagnostic UI is disabled by default, ensuring reproducible boots.
Written by urgent.news from Lobsters's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.