-
Notifications
You must be signed in to change notification settings - Fork 2
Users Manual ru
UKNCBTL — это эмулятор советского компьютера Электроника МС 0511, также известного как УКНЦ («учебный компьютер Научного центра»). УКНЦ выпускался с конца 1987 года на нескольких заводах, суммарный объём выпуска превысил 300 000 машин. Основное назначение — использование в школах на уроках информатики: на базе УКНЦ создавались учебные классы (КУВТ) по 2-12 рабочих мест учащихся (РМУ), с одним рабочим местом преподавателя (РМП). В состав РМП, в отличие от РМУ, входил дисковод и матричный принтер.
Назначение эмулятора UKNCBTL заключается в насколько возможно полной эмуляции компьютера, его устройств и периферии, с целью сохрания знаний об УКНЦ. Эмулятор предоставяет возможность запуска программ, созданных для УКНЦ, на современных компьютерах, даже если у вас нет реального экземпляра этого устройства. Также, эмулятор обладает многими дополнительными функциями, которые могут быть использованы для отладки программ и других целей.
Данное руководство относится в основном к Windows-версии эмулятора UKNCBTL. Существует версия эмулятора, написанная под Qt, ядро эмуляции используется то же самое, интерфейс несколько отличается.
Скачайте последнюю версию UKNCBTL. Список дистрибутивов для скачивания находится по адресу: github.com/nzeemin/ukncbtl/releases. Выберите и скачайте файл UKNCBTL-xxx.zip с наибольшим номером версии.
Эмулятор поставляется в виде архива с бинарными файлами. Разархивируйте архив в пустую папку.
Архив включает в себя следующие файлы:
README.txt Краткий README
RenderDX9.dll Рендерер, использующий DirectX 9
RenderOpenGL.dll Рендерер, использующий OpenGL
RenderVfw.dll Рендерер, использующий Video for Windows
UKNCBTL.exe Основной файл эмулятора
romctr_basic.bin Образ картриджа Вильнюс-Бейсик
ide_hdbootv0400.bin Образ картриджа контроллера жёсткого диска
ide_wdromv0110.bin Образ картриджа контроллера жёсткого диска
ide_doublert5.bin Образ картриджа контроллера жёсткого диска
Для запуска эмулятора запустите файл UKNCBTL.exe
. Сразу после запуска вы увидите интерфейс эмулятора:
Эмулятор предназначен для работы под управлением "настольных" версий Windows, поддерживающих Unicode: Windows XP, Windows Vista, Windows 7 и выше. Использование оперативной памяти при работе зависит от используемого рендерера и режима экрана — от 4,5 МБ до 10 МБ.
Запуск УКНЦ в работу выполняется командой меню Emulator > Run. Для удобства эта команда вынесена на панель инструментов. Та же команда выполняет останов эмулятора; при следующей команде Run выполнение продолжится с того же места.
При работе эмулятор может потреблять значительную часть процессорного времени. Эмулятор однозадачный, поэтому нагружает только одно процессорное ядро.
Сброс эмулятора в исходное состояние выполняется командой Emulator > Reset. Это соответствует нажатию кнопки СБРОС на реальной УКНЦ. Для выполнения сброса не требуется останавливать эмулятор.
Спустя несколько секунд после запуска вы увидите на экране загрузочное меню УКНЦ:
Переход к нужной команде меню выполняется клавишами-стрелками, или нажатием клавиши с цифрой, выбор пункта — клавишей Enter.
Для загрузки с кассеты ПЗУ, выберите пункт меню Drives > Cartridge 1, укажите .bin-файл с образом кассеты ПЗУ (обычно это romctr_basic.bin
— единственный образ кассеты ПЗУ, поставляемый с эмулятором), затем выберите в меню УКНЦ пункт 2 - кассета ПЗУ и нажмите Enter.
Для загрузки с диска, выберите пункт меню Drives > Floppy MZ0:, укажите файл с образом диска. Эмулятор поддерживает два формата образов дискет — .dsk (образ обычного диска) и .rtd (образ диска NET-RT11). После этого выберите в меню УКНЦ пункт 1 - диск и нажмите Enter. Если выбранный диск — загрузочный, то вы увидите процесс загрузки с диска. Если диск оказался не загрузочным, на экране УКНЦ появится сообщение об ошибке вида ?BOOT-U-No boot on volume
(?BOOT-U-!Файл монитора не найден
).
Процесс загрузки с диска может включать в себя ввод текущей даты и времени — при появлении подсказки укажите дату и время в предложенном формате и нажмите Enter.
По окончании загрузки появится приглашение к вводу команды — обычно оно выглядит как точка . или надпись MZ0> в начале строки.
Для получения списка файлов на диске, введите команду DIR и нажмите Enter: . DIR
Файлы с расширением .SAV -- это исполняемые файлы, их можно запустить, введя имя и нажав клавишу Enter, например: . TEST
Некоторые диски являются незагрузочными, т.е. не содержат загрузчика и операционной системы. Для запуска программ с таких дисков нужно сделать следующее. Загрузиться с какого-либо загрузочного диска. Установить незагрузочный диск в качестве второго диска — командой Emulator > Floppy MZ1:. Сделать диск MZ1: текущим командой:
. ASS MZ1 DK
После этого можно получить список файлов командой DIR:
. DIR `*`.SAV
Запускать программы на выполнение нужно командой RUN:
. RU DIGGER
Операционная система, используемая на УКНЦ — это RT-11 либо её советские клоны (ФОДОС, РАФОС). Поэтому, для более глубокого знакомства с работой на УКНЦ имеет смысл изучать руководства по работе в RT-11. См. список литературы и ссылки в Приложении.
Меню File:
- Save State — сохранение состояния эмулятора в файл (пока не работает)
- Load State — загрузка состояния эмулятора из файла (пока не работает)
- Screenshot — сохранение скриншота экрана в формате PNG; файл сохраняется в текущую папку
- Screenshot to Clipboard — сохранение скриншота в буфер обмена
- Save Screenshot As — сохранение скриншота экрана в выбранном формате — PNG либо BMP
- Screen to Clipboard — распознавание с экрана символов и копирование текста в буфер обмена
- Create Disk — создание файла образа пустой дискеты для использования в эмуляторе; после выполнения команды диск нужно подключить в эмулятор и инициализировать его из RT-11 командой INIT
- Settings General — общие настройки программы
- Settings Fonts and Colors — настройки используемых цветов
- Exit — завершение работы эмулятора
Меню View:
- Toolbar — показ/скрытие панели инструментов
- Keyboard — показ/скрытие экранной клавиатуры
- Tape — показ/скрытие панели магнитофона (чтение/запись пока не работает)
- RGB Screen — режим цветного экрана
- GRB Screen — режим цветного экрана, с перепутанными каналами красного и зеленого
- Grayscale Screen — режим черно-белого экрана
- Fullscreen — включение/отключение режима "полный экран"
Меню Render: каждый пункт меню соответствует одному режиму работы рендера
Меню Emulator:
- Run — запуск/останов эмулятора
- Reset — сброс эмулятора в исходное состояние
- Autostart — при включенном флаге, при запуске программы UKNCBTL сразу же запускает и эмулятор, без необходимости дополнительно вызывать команду Run
- Sound — включение/отключение звука; при включенном звуке скорость выполнения выравнивается до 100%
Меню Configuration:
- Floppy MZ0/1/2/3: — четыре команды для подключения/отключения дисков
- Cartridge 1/2 — команды для подключения/отключения картриджей ПЗУ
- Hard 1/2 — подключение/отключение образов жёсткого диска
- Serial — включение/отключение привязки Стык С2 к последовательному порту PC
- Parallel — включение/отключение режима эмуляции порта принтера
- Network — включение/отключение режима эмуляции локальной сети
Меню Debug:
- Debug Views — включение/отключение отладочного режима
- Switch CPU/PPU — переключение отладчика между ЦП и ПП
- Sprite Viewer — открывает окно просмотра памяти в виде графических данных
- Disasm Subtitles — позволяет подгрузить "субтитры" для окна дизассемблера
- Step Into — шаг эмулятора, используется в отладочном режиме — выполняет команду 's' в отладочной консоли
- Step Over — шаг эмулятора, используется в отладочном режиме — выполняет команду 'so' в отладочной консоли
- Clear Console Log — очистить окно отладочной консоли
- Delete All Breakpoints — убрать все точки останова, для текущего процессора
Панель управления дублирует часто используемые команды меню.
TODO: "Вставка" дискеты, выбор пункта меню
Кассета ПЗУ для УКНЦ — это отдельный блок, вставляемый в один из слотов в верхней правой части корпуса.
В эмуляторе "вставка" кассеты ПЗУ выполняется командой Configuration > Cartridge, при этом выбирается файл образа кассеты ПЗУ.
Единственным известным картриджем для УКНЦ был картридж Вильнюс-Бейсика на 24 КБ — файл образа имеет имя romctr_basic.bin
.
Для загрузки с кассеты ПЗУ, после запуска эмулятора и появления загрузочного меню выбираем пункт 2 - кассета ПЗУ.
См. также: IDE HDD ru
Жёсткий диск ("винчестер") для УКНЦ — это устройство, подключаемое в разъём расширения. ПЗУ винчестера видно системе как кассета ПЗУ. Поэтому, для подключения винчестера в эмуляторе нужно, во-первых, командой Configuration > Cartridge подключить файл ПЗУ винчестера. Можно использовать как первый так и второй слот. Имеющихся вариантов ПЗУ всего два: это ide_hdbootv0400.bin
("Электронные Работы", устройства с префиксом ID) и ide_wdromv0110.bin
(Олег Ховайко, префиксы WD/WE/WF). После установки ПЗУ винчестера в качестве кассеты ПЗУ, выполняем выбор образа винчестера командой Drives > Hard Drive.
Для загрузки с винчестера, сразу после включения выбираем в меню пункт 2 - кассета ПЗУ.
TODO: Принцип загрузки со Стык С2 TODO: Утилита UkncComSender TODO: Patron' HX driver
TODO: Открытие WAV, выбор пункта меню, Play
См. также: Debugger ru
Встроенный отладчик включается/отключается по команде View > Debug.
Назначение отладочного режима — двоякое. Во-первых, это инструмент для разработчиков эмулятора, позволяющий дойти до нужного места кода и пройти его по шагам, контроллируя что все функции работают правильно. Во-вторых, это возможность для пользователей эмулятора в деталях посмотреть работу программы.
Слева вверху — экран УКНЦ. Слева внизу — отладочная консоль, в которой можно вводить команды; краткий список команд выдается по команде h. Справа вверху — окно состояния текущего процессора: вверху в боксе его регистры, справа от них содержимое стека, ниже дизассемблированный блок возле адреса PC; правее вверху — состояние портов, внизу — состояние каналов обмена данными между процессорами. Справа внизу — окно состояния памяти.
Красным цветом везде отмечены ячейки памяти, которые изменились после очередного шага или прогона. Перед шагом/запуском сохраняется состояние всей памяти и регистров процессоров, что позволяет о каждой ячейке сказать, изменилась ли она.
Список команд отладочной консоли выдается по команде 'h':
c Clear console log
d Disassemble from PC; use D for short format
dXXXXXX Disassemble from address XXXXXX
g Go; free run
gXXXXXX Go; run and stop at address XXXXXX
m Memory dump at current address
mXXXXXX Memory dump at address XXXXXX
mrN Memory dump at address from register N; N=0..7
mXXXXXX YYYYYY Set memory value at address XXXXXX
p Switch to other processor
r Show register values
rN Show value of register N; N=0..7,ps
rN XXXXXX Set register N to value XXXXXX; N=0..7,ps
s Step Into; executes one instruction
so Step Over; executes and stops after the current instruction
b List breakpoints set for the current processor
bXXXXXX Set breakpoint at address XXXXXX
bcXXXXXX Remove breakpoint at address XXXXXX
bc Remove all breakpoints for the current processor
u Save memory dump to file memdumpXPU.bin
udl Save display list dump to file displaylist.txt
fcXXXXXX YYYYYY Calculate floating number for the two octal words
Окно настройки открывается по команде File > Settings:
- Sound volume -- громкость звука (когда он включен)
-
Render -- текущий выбранный рендерер (по умолчанию
RenderVfw.dll
) -- изменение действует после перезапуска эмулятора -
Serial port -- настройки эмуляции последовательного порта ("Стык С2")
- COM port name -- имя порта PC, к которому будет происходить подключение, например, "COM0"
- Configuration -- настройки COM-порта
-
Network -- настройки эмуляции локальной сети
- Station number -- номер рабочей станции в локальной сети
- COM port name -- имя порта PC, к которому будет происходить подключение, например, "COM0"
- Configuration -- настройки COM-порта
Настройки хранятся в текстовом файле, названном так же как исполнимый файл эмулятора, но с расширением ".ini". Так для UKNCBTL.exe
файл настроек будет называться UKNCBTL.ini
. Файл настроек создаётся автоматически при первом запуске эмулятора. Помимо настроек из окна Settings, файл настроек хранит расположение окна эмулятора, выбранный режим рендерера и другие настройки.
Текущая раскладка клавиатуры (LAT/RUS) детектируется по байту по адресу 022556, с учётом текущего режима -- слова по адресу 07214.
Раскладка:
-
A
..Z
— соответствующие клавиши УКНЦ, раскладка QWERTY — для режима LAT -
А
..Я
— соответствующие клавиши УКНЦ, раскладка ЙЦУКЕН — для режима RUS -
К1
...К5
=F1
...F5
-
ТАБ
=TAB
-
AP2
=Esc
-
УПР
= левыйCtrl
-
НР
= левыйShift
-
ГРАФ
= правыйCtrl
-
АЛФ
= правыйShift
-
ФИКС
=Caps Lock
-
ПОМ
=Delete
-
УСТ
=End
-
ИСП
=PageDown
-
СТОП
=Pause/Break
, дублировано наPageUp
-
СБРОС
=Insert
При запуске эмулятора используются следующие ключи командной строки:
-
/boot
— Автозапуск эмуляции, и затем в загрузочном меню выбоор загрузки с диска -
/bootN
— Автозапуск эмуляции, и затем в загрузочном меню выбоор пункта N=1..7 -
/autostart
/autostarton
— Включение автозапуска эмуляции -
/noautostart
/autostartoff
— Выключение автозапуска эмуляции -
/debug
/debugon
/debugger
— Включение отладчика -
/debugoff
/nodebug
— Выключение отладчика -
/sound
/soundon
— Включение звука -
/nosound
/soundoff
— Выключение звука -
/fullscreen
/fullscreenon
— Полноэкранный режим -
/windowed
/fullscreenoff
— Оконный режим -
/diskN:filePath
— Подключение образа дискеты, N=0..3 -
/cartN:filePath
— Подключение образа картриджа, N=1..2 -
/hardN:filePath
— Подключение образа жёсткого диска, N=1..2
- Архангельский Андрей Германович. «RT-11, Step by Step». — Москва, 1989. -- http://www.az-libr.ru/Persons/0GN/fe16506c/Books/000/Toc.shtml
- Л. И. Валикова, Г. В. Вигдорчик, А. Ю. Воробьев, А. А. Лукин. «Операционная система СМ ЭВМ РАФОС. Справочник». — М.: Финансы и статистика, 1984. — 207 с.
- Документация на DEC RT-11 (PDF), англ.
- УКНЦ в Википедии
- UKNC в Wikipedia
- УКНЦ & PDP-11 -- страница Арсения Гордина
- PDP-11.ORG.RU
- Документация на RT-11 5.6 на BitSavers.org