Search › A-Z › P › Psion Series 3mx
Psion Series 3mx
An in-browser Psion Series 3mx that boots the authentic EPOC16 (SIBO) v6.16F “Maple” system ROM. No standalone JavaScript NEC V30 executor exists, so PCjs's pure-JavaScript x86 core (CPUx86) is reused as the V30MX — the Series 3mx'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 3mx (1998) was the top-of-range Series 3: 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, running its NEC V30MX at 27.68 MHz for noticeably quicker response than the 3a and 3c.
The Series 3mx 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 in booting the 3mx's v6.16F “Maple” ROM and in clocking the V30MX at 27.68 MHz, which sets this build's cycle budget and timer time-base.
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 3mx Online Emulator
Play Psion Series 3mx using JavaScript directly in your browser.
Controls
Configurations
| Configuration | Emulator | Machine | OS | Legal | |
|---|---|---|---|---|---|
| Psion Series 3mx — EPOC16 (SIBO) | Psion Series 3mx | Psion Series 3mx | grey | Open ⛶ |
Machines emulated
Chips
Notes
Embedding
The Series 3mx 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-3mx', cpuHz:27680000 });
m.install(bus, cpu); cpu.reset();
Architecture
The Series 3mx (1998) runs the identical ASIC9 + NEC V30 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 in its ROM (the EPOC16 v6.16F “Maple” system ROM) and in its NEC V30MX clocked at 27.68 MHz. That clock is threaded through as new PsionASIC9(rom, { model:'series-3mx', cpuHz:27680000 }) and sets both the per-frame cycle budget and the timer time-base, so the 32 Hz tick, the free-running counters and the 1 Hz RTC stay real-time. 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.