Подготовить автономную сборку и запуск перед разделением проектов
This commit is contained in:
@@ -27,9 +27,9 @@ banked-call trampolines, graphics & accelerator API, mouse driver wrappers, and
|
||||
git clone <this repo> sprinter-c
|
||||
cd sprinter-c
|
||||
make sdcc # one-time: fetch SDCC 4.5 binary (~25 MB)
|
||||
make all # build mkexe + libsprinter.lib + 27 examples
|
||||
make floppy # pack everything into mame/v306/IMG/mc.img
|
||||
cd mame/v306 && ./run_mame.sh # boot Sprinter in MAME
|
||||
make all # build tools, libraries and SDK tests
|
||||
make floppy # pack tests into build/media/toolkit-tests.img
|
||||
MAME_HOME=/путь/к/MAME/runtime make run
|
||||
```
|
||||
|
||||
Compile a single program:
|
||||
@@ -70,7 +70,11 @@ Banked functions are declared with `__banked`:
|
||||
void engine_tick(int dt) __banked; // lives in BANK1, automatically swapped
|
||||
```
|
||||
|
||||
## Examples (27 total)
|
||||
## SDK tests and separate examples
|
||||
|
||||
Programs listed below live in `tests/` and validate the SDK. Demonstration
|
||||
applications live in the separate `Examples` repository. Its Makefiles use
|
||||
`SPRINTER_ROOT` to find this SDK.
|
||||
|
||||
| Example | What it demonstrates |
|
||||
|---|---|
|
||||
@@ -128,8 +132,9 @@ Sprinter-specific:
|
||||
## Toolchain commands
|
||||
|
||||
```sh
|
||||
make all # build mkexe + lib + every example
|
||||
make floppy # repack mame/v306/IMG/mc.img with all .exe files
|
||||
make all # build mkexe + libraries + SDK tests
|
||||
make floppy # pack SDK tests into build/media/toolkit-tests.img
|
||||
MAME_HOME=/путь/к/MAME/runtime make run
|
||||
make check # 17 mkexe unit-tests
|
||||
make clean # remove all build artefacts
|
||||
make sdcc # one-time: fetch SDCC 4.5 binary
|
||||
@@ -198,8 +203,8 @@ runtime/ crt0 variants (default, minimal, small, banked)
|
||||
libc/include/ headers
|
||||
libc/io|stdio|mem|gfx/ C and asm sources for libsprinter.lib
|
||||
lib/ Makefile that archives libsprinter.lib via sdar
|
||||
examples/ 27 example programs
|
||||
mame/v306/ MAME binary + Sprinter ROM/HDD images + floppy script
|
||||
tests/ SDK regression programs
|
||||
app.mk shared rules for independent applications
|
||||
third_party/sdcc/ vendored SDCC 4.5 (fetched via `make sdcc`)
|
||||
third_party/solid-c/ reference: original Sprinter native C (for compat target)
|
||||
docs/ documentation
|
||||
@@ -208,7 +213,7 @@ docs/ documentation
|
||||
## License
|
||||
|
||||
This repository contains:
|
||||
* Original code in `bin/`, `toolchain/`, `runtime/`, `libc/`, `lib/`, `examples/` —
|
||||
* Original code in `bin/`, `toolchain/`, `runtime/`, `libc/`, `libbgi/`, `lib/` —
|
||||
MIT-licensed.
|
||||
* `third_party/sdcc/` — SDCC 4.5 under GPLv2 with linking exception
|
||||
(see `third_party/sdcc/COPYING.txt`)
|
||||
|
||||
Reference in New Issue
Block a user