CP/M Neo requires a bare-metal cross-compiler toolchain for your target architecture (arch/<isa>/config.sh supplies the toolchain prefix and flags), make, and sh.
make -C sysgen
./sysgen/build/sysgen new --disk-size=2048K --mem=64K --platform=vemu
Everything outputs directly to sysgen/build/:
| File | Purpose |
|---|---|
disk.img | Final disk image |
bootloader.bin | Boot image |
core/int/kernel.bin | kernel binary |
core/int/ccp.bin | Console Command Processor (CCP) binary |
apps/ | Bundled Apps |
To clean up the build environment, run:
make -C sysgen clean
See the User Guide for the full build and execution walkthrough.
sysgen is the host utility for building and inspecting CP/M Neo disk images. Commands other than new support appending --disk=path to target a specific image; new always writes to sysgen/build/disk.img.
| Command | Description |
|---|---|
new --disk-size=KBK --mem=KBK --platform=NAME | Build the OS and create a disk image (the disk is divided into 1 KB blocks; --disk-size is capped at the useful maximum: 2 MB). NAME is the 8-char max platform id declared by ID= in a platform's config.sh |
add <file> [--dst=Vn] [--attr=R/W|R/O|SYS] | Add an external file to an image |
install <folder> [--dst=Vn] [--attr=...] | Compile a source folder and install the binaries |
dir [Vn] | List files on a volume |
type <name> [Vn] | Print a file |
era <name> [Vn] | Delete a file |
ren <old> <new> [Vn] | Rename a file |
stat | Show volume usage and metadata |
Platforms are defined in platform/<name>/: config.sh plus bios.c
implementing the console and storage functions from core/kernel/bios.h.
See the Developer Guide to add your own.
| Document | Description |
|---|---|
| User Guide | Build, run, and get started |
| CCP Reference | Console Command Processor guide |
| Disk Format | CP/M Neo disk image layout |
| Syscall Reference | Complete syscall API and ABI specifications |
| Bundled Apps | Auto-installed programs |
| Developer Guide | SDK usage, compiling applications, and adding platforms |
| Architecture | Memory layout, boot flow, and build internals |
Contributions to CP/M Neo are welcome!
If you'd like to contribute, see CONTRIBUTING.md for more info.
CP/M Neo is distributed under the terms of the open-source MIT.
20 commits
C
92.1%
Shell
4.4%
Assembly
1.6%
Linker Script
1.2%
CP/M Neo requires a bare-metal cross-compiler toolchain for your target architecture (arch/<isa>/config.sh supplies the toolchain prefix and flags), make, and sh.
make -C sysgen
./sysgen/build/sysgen new --disk-size=2048K --mem=64K --platform=vemu
Everything outputs directly to sysgen/build/:
| File | Purpose |
|---|---|
disk.img | Final disk image |
bootloader.bin | Boot image |
core/int/kernel.bin | kernel binary |
core/int/ccp.bin | Console Command Processor (CCP) binary |
apps/ | Bundled Apps |
To clean up the build environment, run:
make -C sysgen clean
See the User Guide for the full build and execution walkthrough.
sysgen is the host utility for building and inspecting CP/M Neo disk images. Commands other than new support appending --disk=path to target a specific image; new always writes to sysgen/build/disk.img.
| Command | Description |
|---|---|
new --disk-size=KBK --mem=KBK --platform=NAME | Build the OS and create a disk image (the disk is divided into 1 KB blocks; --disk-size is capped at the useful maximum: 2 MB). NAME is the 8-char max platform id declared by ID= in a platform's config.sh |
add <file> [--dst=Vn] [--attr=R/W|R/O|SYS] | Add an external file to an image |
install <folder> [--dst=Vn] [--attr=...] | Compile a source folder and install the binaries |
dir [Vn] | List files on a volume |
type <name> [Vn] | Print a file |
era <name> [Vn] | Delete a file |
ren <old> <new> [Vn] | Rename a file |
stat | Show volume usage and metadata |
Platforms are defined in platform/<name>/: config.sh plus bios.c
implementing the console and storage functions from core/kernel/bios.h.
See the Developer Guide to add your own.
| Document | Description |
|---|---|
| User Guide | Build, run, and get started |
| CCP Reference | Console Command Processor guide |
| Disk Format | CP/M Neo disk image layout |
| Syscall Reference | Complete syscall API and ABI specifications |
| Bundled Apps | Auto-installed programs |
| Developer Guide | SDK usage, compiling applications, and adding platforms |
| Architecture | Memory layout, boot flow, and build internals |
Contributions to CP/M Neo are welcome!
If you'd like to contribute, see CONTRIBUTING.md for more info.
CP/M Neo is distributed under the terms of the open-source MIT.
20 commits
C
92.1%
Shell
4.4%
Assembly
1.6%
Linker Script
1.2%