# Начало работы ## Что в tarball После распаковки `sprinter-c-v1.0-.tar.gz` вы получаете: * **`bin/sprinter-cc`** — драйвер C → SprintEXE (bash-скрипт). * **`third_party/sdcc/`** — vendored SDCC 4.5 для шага C → Z80. * **`libc/include/`** — заголовки для подключения в ваших программах. * **`lib/sprinter.lib`** — целевая libc для Sprinter (предсобрана; пересобирается через `make`, если изменили исходники libc). * **`runtime/`** — варианты crt0 и runtime-помощники (ассемблируются per-build). * **`toolchain/mkexe/`** — host-утилита, упаковывающая `.ihx` SDCC в SprintEXE. * **`examples/`** — 27 готовых программ. * **`docs/{en,ru}/`** — эта документация. ## Первая сборка ```sh cd sprinter-c-v1.0- make all # пересобрать lib + все примеры (~30 с) ``` Если `make` жалуется на отсутствующий бинарник SDCC — загрузите его один раз: ```sh make sdcc # скачивает SDCC 4.5 если не vendored ``` ## Сборка своей программы ```sh cat > hello.c < int main(void) { puts("Hello, Sprinter!"); return 0; } EOF bin/sprinter-cc -o hello.exe hello.c ``` `hello.exe` теперь — корректный SprintEXE, который можно запустить на Sprinter / MAME / в любом ESTEX DSS шелле. ## Запуск на железе или в эмуляторе Релиз **не содержит** эмулятор MAME или образы ROM / DSS / HDD Sprinter — они большие и имеют свои лицензии. Для тестирования: * **MAME:** установите MAME 0.283+ отдельно, получите образы Sprinter Sp2000 у Peters Plus, смонтируйте FAT12-флоп с вашими `.exe` файлами как `-flop1`. * **Реальный Sprinter:** скопируйте `.exe` на флоп или раздел HDD, видимый для DSS, затем `RUN HELLO` в шелле. ## Что дальше * Прочитайте `sprinter_cc.md` про флаги компилятора. * Прочитайте `memory_modes.md` когда не хватит 14 КБ кода. * Просмотрите `examples/` — каждый файл это рабочая программа с комментариями. * `headers.md` — список публичных API. * `platform_reference.md` — глубокие нюансы платформы и компилятора (от граблей до подводных камней).