From 1a54086cc2db53f75ad4c94a214983923ed5f899 Mon Sep 17 00:00:00 2001 From: lyrathorpe Date: Mon, 6 Jul 2026 22:29:43 +0100 Subject: [PATCH] =?UTF-8?q?docs(reference):=2000-index=20=E2=80=94=20SIBO/?= =?UTF-8?q?Workabout=20MX=20programming=20reference?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/reference/00-index.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 docs/reference/00-index.md diff --git a/docs/reference/00-index.md b/docs/reference/00-index.md new file mode 100644 index 0000000..ae9f131 --- /dev/null +++ b/docs/reference/00-index.md @@ -0,0 +1,35 @@ +# 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 `WL2`/Symbol2 laser scanner (reverse-engineered). +- [RE toolchain & plan](toolchain-and-plan.md) — how the emulator/disassembler RE was done and the 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.