c71e249a4e
First substantive commit: the entire Sprinter C compiler tree on top of
the bare README+gitignore initial commit.
What's in here:
bin/sprinter-cc — driver script invoking SDCC + linker + mkexe
libc/ — Sprinter-specific libc layer over ESTEX/BIOS
(conio, gfx, io, mem, stdio + headers)
runtime/ — crt0 variants (default/small/banked/minimal)
+ heap + bank trampolines
toolchain/ — mkexe (SprintEXE packer, C + tests)
examples/ — 30 demo programs (gfx, file I/O, env, time, …)
lib/Makefile — builds the libc archive (sprinter.lib)
docs/ — converted Sprinter manuals + asm reference samples
third_party/ — solid-c reference compiler dump + sdcc setup script
release_docs/ — packaging / release notes
gitignore overhaul:
• Drop dangerous blanket patterns: *.asm (would hide docs/samples/*.asm)
and *.exe (case-insensitive match was hiding third_party/solid-c/*.EXE
on macOS APFS). Replaced with examples/*/*.{asm,exe,…} and lib/*.lib.
• Restore tracking of toolchain/mkexe/tests/{one,big}.bin — those are
INPUT fixtures, not build outputs.
• Collapse the duplicated SDCC/C/Sdcc sections into one section per
concern (build outputs / vendored / OS-junk).
• Add .sprinter-cc-*/, build/ (catches lib/build/ too), .claude/.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
39 lines
8.1 KiB
Plaintext
39 lines
8.1 KiB
Plaintext
Архитектура компьютера
|
||
Основные понятия
|
||
Персональный компьютер Sprinter является универсальным компьютером на базе 8 битного процессора Z80 (Z84C1516PSC) фирмы Zilog. Основой компьютера является перепрограммируемая логическая матрица (ППЛМ) EP1K30QC208-3 фирмы ALTERA.
|
||
В настоящее время компьютер Sprinter использует плату Sp2000 в качестве материнской платы. Плата Sp2000 была разработана в конце 2000 года специально с возможностью обеспечения поддержки будущих моделей компьютера и имеет ряд конструктивных особенностей, использование которых нашло свое отражение в данном руководстве.
|
||
Вначале поясним основные понятия, которые вам будут встречаться.
|
||
Модель компьютера - набор конфигураций, зашитых в ПЗУ и определяющих возможности, доступные для пользователя. Современная модель компьютера Sprinter пока является единственной и носит тоже название.
|
||
Конфигурация компьютера - реализация конкретной схемы в перепрограммируемой логической микросхеме (ППЛМ).
|
||
Основная конфигурация - конфигурация активная сразу после включения компьютера и содержащая в себе наиболее важные и часто используемые режимы работы данной модели компьютера.
|
||
Режим конфигурации - изменение характеристик работы компьютера в рамках конфигурации.
|
||
Быстрое ОЗУ - дополнительное ОЗУ, в котором процессор может работать на высокой частоте без тактов ожидания (подразумевается турбо-режим процесора).
|
||
Физический блок памяти - 16K блок основной памяти компьютера. Обозначается шестнадцатеричным числом -- #00..#FF
|
||
Логический блок памяти - 16K блок спектрумовской схемы распределения памяти. Обозначается десятичным числом - 0..15
|
||
Краткая характеристика компьютера Sprinter.
|
||
Процессор Z84C15 (21MHz/3.5MHz)
|
||
ОЗУ 4Mb
|
||
Быстрое ОЗУ 64Kb
|
||
ПЗУ 256Kb
|
||
ВидеоОЗУ 256Kb (512Kb)
|
||
Контроллер дисков Кp1818ВГ93 (аналог WD1793)
|
||
Поддержка дисководов: 3,5" диск (1.44Mb/720Kb)
|
||
5,25" диск (720Kb)
|
||
Часы CMOS DALLAS
|
||
Контpоллеp винчестеpа IDE/AT
|
||
Контpоллеp клавиатуpы 101key/AT
|
||
Контpоллеp мыши MS Mouse
|
||
Два слота стандаpт ISA-8
|
||
Аудио выход AY-3-8910 в ППЛМ, звуковой ЦАП (16 бит)
|
||
Видео выход Аналоговый CGA монитоp, RGB, ТВ (SCART)
|
||
Графические видеорежимы 320x256x256, 640x256x16, ZX стандарт Текстовые видеорежимы 80x32x16, 40х32х16
|
||
|
||
Техническая реализация.
|
||
Ядром машины являются процессор Z84C15 и ППЛМ фирмы ALTERA - EP1K30QC208-3. Кроме них на плате присутствуют: микросхема ПЗУ, слот под 72-х-пиновый SIMM, видео ОЗУ, 64Kb Быстрого ОЗУ, схема контроллера дисковода на БИС КР1818ВГ93 (аналог WD1793), буферы для подключения джойстика, магнитофона, принтера, клавиатуры, дисководов, винчестера, мыши, буферные микросхемы шины ISA-8 и еще одна ППЛМ фирмы ALTERA -- EPM7064SLC100-10. Эта ППЛМ не меняет своей конфигурации и предназначена для обеспечения синхронизации и начального запуска компьютера. На плате так же предусмотрена возможность подключения CMOS часов - микросхемы DALLAS.
Кроме периферии и буферов имеются микросхемы дешифрации, входы которых подключаются к процессору через ППЛМ. Это позволяет легко менять адресацию устройств, без какого-либо изменения разводки печатной платы.
|
||
Схема компьютера основана на большой перепрограммируемой логической микросхеме (ППЛМ). Подключение периферийных устройств через ППЛМ позволяет получить высокую гибкость машины по конфигурациям.
|
||
Программирование (загрузка данных) ППЛМ осуществляется непосредственно в момент включения компьютера, а так же при перезагрузке, что позволяет кардинально менять схему в ППЛМ непосредственно во время работы. Это сильно выделяет архитектуру Sprinter-а из ряда существующих компьютеров, и многие понятия, присущие обычным машинам, меняют свой смысл. Фактически компьютер имеет гибкую архитектуру, в которой возможны изменения во многих частях схемы. Например, нельзя говорить о конкретных адресах портов подключения периферии, так как они могут быть изменены в одну секунду путем перепрограммирования ППЛМ и данных в ОЗУ, отвечающих за конфигурацию портов. Конкретные адреса появляются только в конкретных конфигурациях, например, в конфигурации ZX-Spectrum.
|
||
Перепрограммируемость схемы дает большую свободу фантазии программиста по конфигурации машины. Задумывая конкретный проект, программист может определить в какой конфигурации его можно реализовать лучше, а, возможно, и придумать свою конфигурацию, которую затем можно реализовать в ППЛМ и включить перед запуском этой программы.
|
||
INCLUDEPICTURE \d "http://www.petersplus.ru/sprinter/pix/fig1.gif" \* MERGEFORMATINET
|
||
Рисунок SEQ Рисунок \* ARABIC 1. Функциональная схема
|
||
Для упрощения схемы некоторые буферы и дешифраторы на схеме не указаны. Количество проводов в шинах так же условно.
|