Вот в этом и проблема. 1 проц похоже эмулировать не составит труда, но не имея достаточной информации, да еще и без живого оборудования, занятие эмулированием представляет определенную проблемуShiru Otaku wrote:Основная сложность - это связь процессоров, и вообще архитектура системы; плюс я так и не нашёл документацию с точными таймингами ВМ1/2.
УКНЦ
Moderator: Shaos
-
Arseny
- Junior
- Posts: 4
- Joined: 10 Apr 2006 13:21
-
Mac Buster
- Retired
- Posts: 1474
- Joined: 03 Aug 2003 22:37
- Location: Moscow
-
Arseny
- Junior
- Posts: 4
- Joined: 10 Apr 2006 13:21
Эмулятор УКНЦ вышел на финишную прямую.
Вот страница эмулятора: http://www.felixl.com/Uknc
Это - ЖЖ автора: http://nzeemin.livejournal.com/tag/%D0% ... 0%9D%D0%A6
Это - форум по УКНЦ и около УКНЦшным темам для разработчиков: http://www.felixl.com/forum/
Вот страница эмулятора: http://www.felixl.com/Uknc
Это - ЖЖ автора: http://nzeemin.livejournal.com/tag/%D0% ... 0%9D%D0%A6
Это - форум по УКНЦ и около УКНЦшным темам для разработчиков: http://www.felixl.com/forum/
-
Shaos
- Admin
- Posts: 24396
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
А тем временем эмулятор УКНЦ продолжает развиваться (вместе с эмуляторами БК и Немиги):
http://nzeemin.livejournal.com
http://nzeemin.livejournal.com
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
2_vinxru: Здесь, возможно, немного не в тему, но у меня нет жж, а у тебя эта тема в жж.
Ты там пишешь, что у тебя есть живой УКНЦ и к нему несколько файлов загрузки с кассетного
магнитофона:
В любом случае - вопрос вот какой: а как происходит загрузка с кассеты в УКНЦ?
Я пробовал загрузку из wav-файла в эмуляторе: всё происходит, как и должно быть,
но заканчивается вот чем:

То есть, данные с кассетного wav-файла в памятьзагрузились - я проверил отладчиком.
Но как дальше запустить загруженный файл на исполнение?
Или он автоматом должен запуститься?
Ты там пишешь, что у тебя есть живой УКНЦ и к нему несколько файлов загрузки с кассетного
магнитофона:
Это у тебя оригинальные звуковые файлы или сконвертированные утилитой Sav2Wav.exe ?vinxru wrote:...UKNC_CAT.wav, UKNC_CBASIC.wav, UKNC_DBAS.wav, UKNC_GARDEN.wav, UKNC_KLAD.wav,
UKNC_MISION.wav, UKNC_UKFORM.wav, UKNC_VERT.wav. Если у кого то есть другие программы,
буду рад получить их от вас.
В любом случае - вопрос вот какой: а как происходит загрузка с кассеты в УКНЦ?
Я пробовал загрузку из wav-файла в эмуляторе: всё происходит, как и должно быть,
но заканчивается вот чем:

То есть, данные с кассетного wav-файла в памятьзагрузились - я проверил отладчиком.
Но как дальше запустить загруженный файл на исполнение?
Или он автоматом должен запуститься?
iLavr
-
vinxru
- Retired
- Posts: 587
- Joined: 27 Mar 2013 04:55
- Location: 62.192.229.16
У меня в ЖЖ можно писать без авторизации.
Игра запускалась сразу сама. Я ничего не писал. Хотя, давно это было, мог и забыть.
WAV файлы я скачал с сайта, я не знаю откуда они взялись.
Дисковый Бейсик (UKNC_DBAS.wav) не запускался.
Я пробовал вытаскивать с образов дискет игры и программы, затем конвертировал их в WAV этой утилитой, но ничего у меня не запустилось, кроме вот этого скромного набора игр.
Вроде бы даже ошибка была такая же как у тебя.
Поэтому я забросил УКНЦ, пока не найду контроллер флопа.
Игра запускалась сразу сама. Я ничего не писал. Хотя, давно это было, мог и забыть.
WAV файлы я скачал с сайта, я не знаю откуда они взялись.
Дисковый Бейсик (UKNC_DBAS.wav) не запускался.
Я пробовал вытаскивать с образов дискет игры и программы, затем конвертировал их в WAV этой утилитой, но ничего у меня не запустилось, кроме вот этого скромного набора игр.
Вроде бы даже ошибка была такая же как у тебя.
Поэтому я забросил УКНЦ, пока не найду контроллер флопа.
-
vinxru
- Retired
- Posts: 587
- Joined: 27 Mar 2013 04:55
- Location: 62.192.229.16
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
Я тоже вытащил из образов дискет - и ничего не запускется, хотя в память - точно загружается.vinxru wrote:WAV файлы я скачал с сайта, я не знаю откуда они взялись.
...
Я пробовал вытаскивать с образов дискет игры и программы, затем конвертировал их в WAV этой утилитой, но ничего у меня не запустилось, кроме вот этого скромного набора игр.
А ты не дашь ссылочки, где ты скачивал эти wav-файлы, которые у тебя точно запускаются?
Или твои - как либо скачать...
Если закинуть свои файлы в их диски их же утилитой - тоже ничего не запускается, даже опцией
GET от RT-11, хотя это всего лишь - положить в память.
iLavr
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
Вот это не они случаем? Просто хотелось попробовать те, что точно загружаются...vinxru wrote:WAV файлы я скачал с сайта, я не знаю откуда они взялись...
http://pdp-11.org.ru/~form/files/pics/uknc/soft/
Code: Select all
UKNC_CAT.wav 24-Jan-2008 22:53 5.2M
UKNC_CBASIC.wav 04-Sep-2008 19:15 5.4M
UKNC_DBAS.wav 06-Jul-2008 22:30 6.0M
UKNC_GARDEN.wav 22-Jan-2008 22:19 2.7M
UKNC_KLAD.wav 06-Jul-2008 21:36 3.7M
UKNC_MISION.wav 23-Jan-2008 21:50 5.4M
UKNC_UKFORM.wav 26-Dec-2007 01:24 1.5M
UKNC_VERT.wav 06-Jul-2008 21:14 1.9M iLavr
-
vinxru
- Retired
- Posts: 587
- Joined: 27 Mar 2013 04:55
- Location: 62.192.229.16
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
Действительно - запуск файлов автоматический после удачной загрузки...vinxru wrote:Игра запускалась сразу сама. Я ничего не писал.
Файлы в списке выше - "настоящие", то есть, судя по их звучанию, сформированы,
видимо, записью через звуковую карту.
Уровень сигнала - средненький слышны шумы и призвуки...
Но файлы действительно загружаются, хотя и через раз.
Видимо, удачно и точно сэмулированы все проблемы ввода с кассетного магнитофона.
Сигнал, сформированный утилитой Sav2Wav.exe от этих файлов разительно отличается!
Он чистый, без шумов и призвуков, амплитуда большая, и загружаемый файл не запускается.
На слух заметна небольшая разница в частотах. Сигнал из-под утилиты чуть выше по частоте.
Наверное, он попал у тебя в неудачную фазу...vinxru wrote:Дисковый Бейсик (UKNC_DBAS.wav) не запускался.
После UKNC_VERT.wav, который короткий и загрузился без проблем, я сразу попробовал UKNC_DBAS.wav

Он вполне нормально стартанул. А вот пара следующих файлов не стартанули, хотя и короткие...
Я немного поинтересовался, что это за файлы *.SAV, которые мы грузим, в понятии RT-11.
Грубо говоря - это просто состояние памяти, сохраненное на диск опцией SAVE с указанными адресами.
Но информация о их запуске немного противоречива:
В RT-11 ... обычные программы имеют расширение .sav, представляют собой абсолютные загружаемые модули и грузятся всегда с адреса 01000. Ниже этого магического адреса находятся вектора прерываний и стек программы. Сама операционная система вместе с драйверами размещается в верхних адресах памяти. Естественно, вы не можете загрузить одновременно два .sav-файла.
Вот это более на правду похоже - я смотрел память после неудачных загрузок - действительно,Если говорить о программах из RT-11 формата .SAV, то она загружается с начала памяти. В RT-11 файлы делятся по блокам размером 512 байт, блоки нумеруются с нуля. При этом программу можно разделить на две части: нулевой блок (первые 512 байт или 256 слов) и остальная часть. В нулевом блоке в частности находятся такие переменные, как стартовый адрес программы (смещение 000040), начальное положение указателя стека (000042), конечный адрес памяти, занимаемый программой (000050). В диапазоне 000500-000777 может находиться и исполняемый код. Начиная с первого блока располагается собственно программа.
Таким образом структура загрузчика должна быть такой:Code: Select all
000000 000240 NOP 000002 000440 BR 000104 ...... 000040 ****** стартовый адрес 000042 ****** адрес начала стека ...... 000050 ****** конечный адрес программы ...... 000100 000102 .WORD 102 000102 000002 RTI 000104 собственно отсюда располагается загрузчик, загружающий остальную часть программы, и запускающий ее ...... 000500 здесь располагается информация с нулевого блока
грузится с 000500.
Last edited by Lavr on 13 Nov 2013 12:10, edited 1 time in total.
iLavr
-
vinxru
- Retired
- Posts: 587
- Joined: 27 Mar 2013 04:55
- Location: 62.192.229.16
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
И вдруг опыт совершенно неожиданно удалсЯ!Lavr wrote:Я тоже вытащил из образов дискет - и ничего не запускется, хотя в память - точно загружается.vinxru wrote:Я пробовал вытаскивать с образов дискет игры и программы, затем конвертировал их в WAV этой утилитой, но ничего у меня не запустилось
На диске game.dsk я выбрал самую маленькую игру WALL.SAV - всего
7 блоков в терминах RT-11, вытащил её с образа диска через RT11DSK.exe,
сделал wav-файл через Sav2Wav.exe и получившийся WALL.WAV четко
загрузился и запустился!
Значит дело в каких-то мелочах, если это делать на эмуляторе УК-НЦ.
Уменьшал амплитуду wav-файла до 50% - он всё-равно устойчиво загружается.
В принципе, трудно понять глюки эмулятора - он же не в реальном времени
wav-файл загружает...
vinxru, а ты не пробовал вот этот вариант из меню загрузчика?

Про него я смог найти лишь следующее:
Получается, что есть вроде странно-кастрированные вариации набора команд привычных нам мониторов.--> - стрелка вправо без параметра откроет ячейку памяти последнюю
по счётчику, с параметром типа 40 и стрелка вправо - откроет соотв. 40-у ячейку;
стрелка вниз (упр.курсором) - всегда открывает следующую ячейку
стрелка вверх (упр.курсором) - предыдущую (за исключ.случ.)
ВК - (ентер) - просто выводит приглашение @ в следующей строке.
Если в строке с открытой ячейкой ввести значение (которое нужно) и
нажать стрелку вверх или вниз это значение (за исключ.случ.) заносится
в текущую ячейку.
Кнопка ИСП - это приказ выполнения может иметь параметр или не иметь.
В УК-НЦ в режиме отладки есть команды (однокнопочные), типа :
R - c параметром или без (содержимое регистров),
T - тест станции (если честно совсем не знаю,
что это за тест, но поскольку номер станции выводит наверное что-то с СА?),
D - дисплей? Короче говоря просто даёт порисовать попечатать - выход по Упр+Ц(C).
M - стартовое меню вернуть.
Так вот Кнопка ИСП - как я понимаю, аналог привычного G(o) [addr] - т.е. передать управление
по адресу [addr] ? Или как ей поточнее пользоваться-то?
iLavr
-
vinxru
- Retired
- Posts: 587
- Joined: 27 Mar 2013 04:55
- Location: 62.192.229.16
