Skip to content

Repository files navigation

Japi Base Computer

The full Japi Base Computer = the platform + the editor + the BASIC + the calculator, assembled into one firmware. This repository is the integration: it does not contain the components' source itself — it references each component as a git submodule, pinned at a known-good version, and holds the build recipe that ties them into japi_basic_computer.uf2.

Components (submodules)

Folder Repo What it is
JapiBase/ JapiBase the platform (VGA, PS/2, SD, audio, clock)
JapiBaseEditor/ JapiBaseEditor the editor, incl. the Japi Commander file manager
JapiBaseBasic/ JapiBaseBasic the Japi Base BASIC interpreter
JapiBaseCalc/ JapiBaseCalc the built-in calculators (NumLock)

Each submodule is pinned at a specific commit, so the computer always builds from a known, working combination of versions. Bumping a component to a newer version is a deliberate step (update the submodule pointer and commit it here).

Documentation

Each component carries its own reference for now:

  • Platform — JapiBase/MANUAL.pdf (full hardware + API manual)
  • Editor — JapiBaseEditor/JBE_MANUAL.pdf (full user manual)
  • BASIC — JapiBaseBasic/JBB_MANUAL.md (summary language reference)

A single, worked manual for the whole Japi Base Computer is on the way — one that walks through using the assembled machine end to end. Until then the component manuals above are the reference; this README will link the integrated manual as soon as it lands.

Getting the sources

git clone --recursive https://github.com/JanFromBelgium/JapiBaseComputer.git
# or, if you already cloned without --recursive:
git submodule update --init

Building the firmware

With the Pico SDK installed and PICO_SDK_PATH set:

cd pico
cmake -G Ninja -B build -DPICO_SDK_PATH=/path/to/pico-sdk .
ninja -C build          # -> build/japi_basic_computer.uf2

Hold BOOTSEL while plugging in the Pico 2 and copy japi_basic_computer.uf2 onto the drive that appears. The machine boots into the editor; pick Run to run a BASIC program; press NumLock for the calculator.

Adding a future application

A new application (e.g. a spreadsheet or a database) gets its own component repo and is added here as another submodule, then wired into the build — so the computer stays one assembled whole while each part keeps its own home.

Licence

Released under the BSD 3-Clause License — see LICENSE. The individual components keep their own (also permissive) licences in their repos.

About

Japi Base Computer — integration build that assembles the platform, editor and BASIC into the firmware

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages