Search › A-Z › P › Psion Series 3c
Psion Series 3c
An in-browser Psion Series 3c that boots the authentic EPOC16 (SIBO) v5.20F “Oak” system ROM. No standalone JavaScript NEC V30 executor exists, so PCjs's pure-JavaScript x86 core (CPUx86) is reused as the V30MX — the Series 3c's 8086/80186-class CPU — and wired to a from-scratch model of the ASIC9 gate array: the memory pager, the 480×160 three-level mono LCD, six timers, the 8-source interrupt controller and the keyboard scanner. The real ROM passes its power-on self-test, boots the EPOC16 kernel, window server and file server, formats a clean internal RAM disk, and paints the System screen with the app suite, which you can navigate with the arrow keys; because the whole machine is plain JavaScript, the shared debugger single-steps the V30 one true instruction at a time, reads and writes the full register file, inspects memory through the real ASIC9 address pager, and sets breakpoints and write watchpoints.
The Psion Series 3c (1996) was the backlit successor to the 3a: the same SIBO clamshell palmtop with a proper QWERTY keyboard and the built-in application suite — System, Word, Agenda, Data, Time, World and Calc — resident in ROM, adding an EL backlight and an IrDA / second serial channel over the 3a's ASIC9.
The Series 3c runs the very same machine as the Psion Series 3a — the same ASIC9, the same V30-family CPU and LCD — so this emulator shares that machine's code, loading the scripts, ROM and debugger plug-in from /emulator/psion-series3/src/ rather than duplicating them; it differs only in booting the 3c's v5.20F “Oak” ROM and answering the boot-time probe of the backlight and IrDA registers so it reaches the desktop.
The V30 core is provided by PCjs's open-source (MIT) pure-JavaScript x86 executor, reused here and wired to a from-scratch ASIC9 machine written for emulators.org.
Runs on: Web browser
Psion Series 3c Online Emulator
Play Psion Series 3c using JavaScript directly in your browser.
Controls
Configurations
| Configuration | Emulator | Machine | OS | Legal | |
|---|---|---|---|---|---|
| Psion Series 3c — EPOC16 (SIBO) | Psion Series 3c | Psion Series 3c | grey | Open ⛶ |
Machines emulated
Chips
Notes
Embedding
The Series 3c is the same machine as the Series 3a: a NEC V30MX (an 8086-compatible part with the 80186 instruction set) and the ASIC9 gate array. No standalone JavaScript V30 executor exists, so we reuse the uncompiled PCjs pcx86 bundle purely for its CPUx86 class and discard the whole IBM-PC machine around it. This emulator ships only its own embed.js: the machine scripts, the ROM and the debugger plug-in all load from the shared family directory /emulator/psion-series3/src/, so no code or ROM is duplicated.
var SHARE = '/emulator/psion-series3/src'; // shared Series 3 machine + ROMs
var cpu = new CPUx86({ id:'psion.cpu', model:'80186' });
var m = new PsionASIC9(romBytes, { model:'series-3c' }); // 3c: backlight + IrDA
m.install(bus, cpu); cpu.reset();
Architecture
The Series 3c (1996) runs the identical ASIC9 + NEC V30MX machine as the 3a — the same memory pager, the same 480×160 three-level mono LCD, the same six timers, the 8-source interrupt controller, the keyboard matrix and the V30 0x0F extended instructions — so it is emulated by the shared Series 3 machine code rather than a second build. It differs from the 3a only in its ROM (the EPOC16 v5.20F “Oak” system ROM) and in a couple of extra ASIC9 peripherals: an EL backlight and an IrDA / second serial channel. Those extra registers read back sane values so the ROM’s boot-time probe passes and it reaches the desktop. The model is selected as new PsionASIC9(rom, { model:'series-3c', cpuHz }); everything else — the pager, the LCD, the interrupt controller, the keyboard and the whole debugger — is exactly the 3a machine.
Every part — the V30 executor, the bus, the ASIC9 — is plain JavaScript, so the debugger single-steps the V30 one true instruction at a time, reads and writes the full register file, and inspects memory through the real ASIC9 address pager.