37 lines
2.4 KiB
Markdown
37 lines
2.4 KiB
Markdown
# Workabout MX / SIBO programming reference
|
||
|
||
A programming reference for the Psion Workabout MX and the SIBO platform,
|
||
synthesised from the Psion SDK manuals and the Hardware Development Kit, with
|
||
reverse-engineered internals from the v7.20f ROM layered on top. Built as the
|
||
foundation for developing applications (e.g. the barcode inventory app in
|
||
`code/inventory/`).
|
||
|
||
Each document cites its source manual and marks claims as documented,
|
||
**[RE]** reverse-engineered, or inferred/uncertain.
|
||
|
||
## Sections
|
||
|
||
| # | Document | Covers |
|
||
| --- | --- | --- |
|
||
| 01 | [Building applications](01-building-apps.md) | Toolchain, TopSpeed C, SIBO types, `GLDEF_C`/etc., `.pr` project files, images/libs/LDDs |
|
||
| 02 | [System & OS](02-system.md) | Processes, memory/segments, panics + ranges, error codes, async I/O, the executive call |
|
||
| 03 | [I/O devices & drivers](03-io-devices.md) | `p_open`/`p_iow`/`p_ioc`, function codes, serial (`P_SRCHAR`), per-device drivers, loading LDDs |
|
||
| 04 | [PLIB core API](04-plib-core.md) | Strings, memory, console, conversion, math, date/time, categorised function reference |
|
||
| 05 | [File system & DBF database](05-filesystem-dbf.md) | Files, streams, directories; the full DBF record/database API |
|
||
| 06 | [User interface](06-ui.md) | Window Server model, events (`WM_*`, `WGetEvent`), the `CON:` console layer |
|
||
| 07 | [Hardware](07-hardware.md) | CPU, memory/banking, ASIC1/2/4/5/9 register maps, I/O ports, interrupts, expansion |
|
||
| 08 | [Boot & OS-call internals **[RE]**](08-re-boot-oscalls.md) | Reset/ASIC-init path, OS-service `INT` vectors, boot port activity — from the live MAME trace |
|
||
|
||
Related:
|
||
- [Barcode scanner API](../inventory/SCANNER-API.md) — the Symbol2/`WL2` laser scanner (reverse-engineered): device, trigger, decoder params, and the OO-library-object architecture.
|
||
- [Scanner continuation guide](../inventory/CONTINUATION.md) — the on-device SIBO-Debugger procedure to capture the OO message ordinals and finish a working scanner client.
|
||
- [RE toolchain & plan](../mx-re/toolchain-and-plan.md) — MAME/radare2/Ghidra RE setup and roadmap.
|
||
|
||
## Status
|
||
|
||
The manual-derived sections (01–07) are broad and citation-backed. The
|
||
reverse-engineered material (08, the scanner API, and the executive-call
|
||
convention notes) is being extended by tracing the ROM under MAME
|
||
(`psionwamx`). Known open items: the full `INT`-vector → service map, and the
|
||
scanner data-retrieval path.
|