Вход

Просмотр полной версии : Эмулятор УКНЦ - UKNCBTL



Страницы : [1] 2 3 4 5

nzeemin
30.09.2007, 16:58
Эта тема по эмулятору УКНЦ. По компьютеру УКНЦ и другим PDP-11 совместимым, см. раздел ДВК, УКНЦ (https://zx-pk.ru/forums/66-dvk-uknts.html)

Авторы эмулятора UKNCBTL: Никита Зимин (nzeemin), Феликс Лазарев, Алексей Кислый (Alex_K)
Огромное спасибо всем тем, кто внёс свой вклад в создание и развитие эмулятора!

Релизы эмулятора:
https://github.com/nzeemin/ukncbtl/releases
Текущая версия: 2025.1, см. https://zx-pk.ru/threads/6257-emulyator-uknts-ukncbtl.html?p=1209438&viewfull=1#post1209438

Исходники:
https://github.com/nzeemin/ukncbtl/ - основной проект, под Win32
https://github.com/nzeemin/ukncbtl-renders/ - рендереры под Win32
https://github.com/nzeemin/ukncbtl-qt/ - проект под Qt, кроссплатформенный
https://github.com/nzeemin/ukncbtl-testbench/ - тестовый стенд
https://github.com/nzeemin/ukncbtl-utils/ - утилиты эмулятора

Веб-версия эмулятора:
https://nzeemin.github.io/ukncbtl-online.html - страница онлайн-эмулятора с набором сохранёнок
https://github.com/nzeemin/ukncbtl-wasm/ - исходники веб-версия эмулятора

Документация:
https://github.com/nzeemin/ukncbtl-doc/wiki - вики проекта
https://github.com/nzeemin/ukncbtl-doc/wiki/Screenshots-ru - скриншоты
https://github.com/nzeemin/ukncbtl-doc/wiki/Users-Manual-ru - руководство

-----
Примечание: Первое сообщение темы было за авторством [bETA]mEN, модераторы согласились передать его мне, с тем чтобы сделать "заголовочное" сообщение темы, где обычно ищут все полезные ссылки по предмету.
Текст исходного сообщения:


Вышла первая публичная бета версия эмулятора УКНЦ.

http://nzeemin.livejournal.com/tag/%D0%A3%D0%9A%D0%9D%D0%A6

NovaStorm
01.10.2007, 10:32
1) неправильная растактовка
2) где сорц??? имеет ли смысл делать такое без открытия исходников?

nzeemin
01.10.2007, 12:57
1) неправильная растактовка
2) где сорц??? имеет ли смысл делать такое без открытия исходников?

1. Давайте документ где описана растактовка команд ВМ2 - будет вам правильная растактовка. Пока такого документа не видел.

2. Есть планы сделать проект открытым, но это определенно не сейчас.

NovaStorm
01.10.2007, 15:05
Какие люди! Претензий я конечно не предъявляю, это всего лишь пожелание. По поводу "не сейчас" - тоже понимаю. Планируется ли делать свою вики по УКНЦ? Хотелось бы видеть что-то типа небольшого quickstart и несколько howto, какие-нибудь рекомендации на что обратить внимание. Сейчас информация если и есть, то крайне неструктурированная.
Желаю успехов!

Arseny
01.10.2007, 21:21
Планируется ли делать свою вики по УКНЦ?
Э-э-э ... Вот это: Вики-УКНЦ (http://ru.wikipedia.org/wiki/%D0%A3%D0%9A%D0%9D%D0%A6) - подойдет?

Хотелось бы видеть что-то типа небольшого quickstart и несколько howto, какие-нибудь рекомендации на что обратить внимание. Сейчас информация если и есть, то крайне неструктурированная.
Пользователей УКНЦ, задающих вопросы в форумах, можно пересчитать по пальцам максимум 2-х рук. Поэтому о чем писать quickstart и howto - ума не приложу. Есть вопросы - спрашивайте (здесь или на Полигоне призраков (http://www.phantom.sannata.ru/cgi-bin/ikonboard/forums.cgi?forum=8)). Когда станет понятно о чем писать - будем писать.

Titus
02.10.2007, 10:41
1. Давайте документ где описана растактовка команд ВМ2 - будет вам правильная растактовка. Пока такого документа не видел.

Я уже как-то упоминал (кажется на romov.net), что растактовка в ВМ2 не линейная. Есть конвейер, буферы предвыборки инструкций и данных. Поди сейчас вставь в готовый энджин вашего эмулятора правильные такты. Фигушки - придется все переписывать заново :v2_tong2:

NovaStorm
02.10.2007, 12:22
>растактовка в ВМ2 не линейная
Ну это наверное полностью меняет дело, так как при таком раскладе надеюсь никто не писал прог, рассчитанных на железный проц.
А вообще ВМ2 можно ли запустить подавая одиночные импульсы вместо тактовой? Таким образом можно было бы узнать такты хотя бы для пустого кеша.

Titus
02.10.2007, 16:40
>растактовка в ВМ2 не линейная
Ну это наверное полностью меняет дело, так как при таком раскладе надеюсь никто не писал прог, рассчитанных на железный проц.

Писали или не писали, но факт остается фактом, что добиться тех же временных пропорций от работы софта, не сэмулив точно такты невозможно. Т.е. копию УКНЦ не получите.

ASDT
02.10.2007, 18:14
ВМ2? У меня есть 1801вм2 ... это тот?

d_wanderer
02.10.2007, 20:54
ВМ2? У меня есть 1801вм2 ... это тот?
Тот же. Толку только от этого.... Нужна ведь документация. У меня они есть все... ВМ1 даже завел с отдельной ПЗУ. Конвеер там точно есть... Но вот закономерность работы пока не совсем понял.

ASDT
03.10.2007, 16:13
"Конвеер там точно есть... Но вот закономерность работы пока не совсем понял."

Вроде нигде не упомянут ... Может так - если команда регистровая,
то выборка очередной команды начинается сразу ... ?

d_wanderer
03.10.2007, 21:13
ASDT, Скорее всего выборка зависит от адресации. Даже в регистровой команде может быть косвенное обращение к памяти.

Grand
04.10.2007, 03:28
mEN;103879']Вышла первая публичная бета версия эмулятора УКНЦ.

http://nzeemin.livejournal.com/tag/%D0%A3%D0%9A%D0%9D%D0%A6
Всё это хорошо, только эмулятор не работает под Win98. :(

проф
04.10.2007, 08:20
Никите респект, а вы мужики продолжайте, я как простой юзер с геймерским уклоном на вас надеюсь.

ASDT
04.10.2007, 10:59
Может посмотреть другие МП-наборы микросхем, совместимые с "Элктроника-60" ... ?

ZEman
08.10.2007, 20:49
а как запускать то в эмуляторе чтонибудь?
скачал эмулятор, запустил, открыл через Floppy MZ0 диск, сделал RUN, выбираю в меню опцию диск и всё.
чё дальше то?
хоть бы мануал какойнибудь прилепили к эмулятор как что запускать.

Alex_K
08.10.2007, 22:45
а как запускать то в эмуляторе чтонибудь?
скачал эмулятор, запустил, открыл через Floppy MZ0 диск, сделал RUN, выбираю в меню опцию диск и всё.
чё дальше то?
хоть бы мануал какойнибудь прилепили к эмулятор как что запускать.

Выбрать через меню Emulator | Floppy[0,1,2,3] диск с расширением .DSK, после этого в меню напротив этого пункта должна появиться галочка. Запустить эмулятор командой меню Emulator | Run. На экране должно появиться загрузочное меню УКНЦ. Щелкнуть мышкой по экрану УКНЦ, чтобы перевести туда фокус ввода, с помощью стрелок или нажав [1] выбрать пункт "Диск". Если используется не нулевой привод, нажать стрелку вправо и выбрать номер привода. Нажать Enter. Если диск загрузочный, то должна загрузиться система RT-11 (или ФОДОС). А далее - руководство по RT-11.

Arseny
08.10.2007, 23:13
Запуск с образом диска:
1. Запустить эмулятор
2. Выбрать образ для MZ0:
3. Запустить эмулятор командой RUN
4. В стартовом меню стрелками выбрать диск 0 и - Enter...
5. Дождатся запуска диска (макс. 10-15 сек)
6. В зависимости от оси и стартового ком-файла пройти загрузку ОСи (могут спросить дату/время)
7. Загрузка выполнена, мы в командной строке вида: . (точка) или MZ0>
8. Что делать дальше - решайте сами. Команды RT-11 вам в помощь.
Сделайте для начала DIR. Исполняемые файлы имеют расширение SAV.

ZEman
09.10.2007, 06:08
до этого то я и сам допёр.
но почемуто при запуске игрового диска game.dsk эмулятор выдаёт следующее:

?BOOT-U-!Файл монитора не найден

*** СТОП ***
000724/ 000776
@

и что не так?
я же видел скриншоты из игр, значит както запускали.

Arseny
09.10.2007, 08:36
до этого то я и сам допёр.
но почемуто при запуске игрового диска game.dsk эмулятор выдаёт следующее:

?BOOT-U-!Файл монитора не найден

*** СТОП ***
000724/ 000776
@

и что не так?
я же видел скриншоты из игр, значит както запускали.С этого стоило начинать. Диск надо понимать битый. Бэд блоки, наверное ;-) Шутка ;)
С него все системные файлы удалены, что бы игры запихнуть. Загрузитесь с другого диска, а этот повесьте на MZ1:

ZEman
09.10.2007, 09:02
всё равно ничё не понял.
к эмулятору явно нужен какойто мануал.
ладно если люди когдато имели дело с таким компьютером, а если человек видит такое впервые в жизни и хочет загрузить чтонидь, тогда как?

sv
09.10.2007, 09:13
так,а где игров для сабжа скачать?
стоял у нас в школе класс на основе оного…играли…

Arseny
09.10.2007, 09:28
всё равно ничё не понял.
Не понял - спрашивай, поможем.


к эмулятору явно нужен какойто мануал.
ладно если люди когдато имели дело с таким компьютером, а если человек видит такое впервые в жизни и хочет загрузить чтонидь, тогда как?Читай доки, они рулез ;) К эмулятору нужен только один мануал - что, куда и как вводится. Все остальное - работа с RT-11 и ее клонами. Как вариант: Описание программы Rtimit (Имитатор операционной системы для обучения работе с ОС) (http://uknc.narod.ru/Soft2/doc.zip) - может это пока подойдет?

Добавлено через 1 минуту

так,а где игров для сабжа скачать?
стоял у нас в школе класс на основе оного…играли…Хм ... Если не заметил - чел вон уже бьется над их запуском ;) Они в комплекте с эмулятором идут.

ZEman
09.10.2007, 09:43
ужас, этож сколько изучать тут надо.
неужели нельзя никак попроще?
можете просто написать пример запуска игры с игрового диска, всё по порядку.
был бы очень благодарен за такой ответ.

в большинстве эмуляторов всё это както упрощают, делают чтото типа автозапуска, всё подробно объясняют, в противном случае такая машинка теряет очень много аудитории.

sv
09.10.2007, 09:53
упс,сорри :-)…
я ещё не скачивал.
там значт и системный и игры и тд?

Arseny
09.10.2007, 10:00
ужас, этож сколько изучать тут надо.
неужели нельзя никак попроще?
можете просто написать пример запуска игры с игрового диска, всё по порядку.
был бы очень благодарен за такой ответ.
Попроще? Даже незнаю ...
Диски подключил? Систему загрузил? Я же не могу знать что у тебя в каком состоянии (ну не телепат я).


в большинстве эмуляторов всё это както упрощают, делают чтото типа автозапуска, всё подробно объясняют, в противном случае такая машинка теряет очень много аудитории.Аудитории еще нет - терять нечего. Эмулятор в стадии беты - играть еще рановато. Опять же - делать автозапуск чего? Windows там нет, оболочек типа нортона тоже нет (ну, почти нет).

Если совсем по простому, тебе нужны 2 команды:
DIR MZx:*.SAV - получить список программ
RUN MZx:имя.SAV - запустить программу "имя.SAV" с диска "x". MZ - это устройство "дисковод".

Добавлено через 4 минуты

упс,сорри :-)…
я ещё не скачивал.
там значт и системный и игры и тд?В комплекте - 5 дисков и ROM с Бейсиком.
Диск с играми придется цеплять вторым (на MZ1: ). Бут сектор там есть, а вот системных файлов - нету ;)

ZEman
09.10.2007, 10:04
да всё там есть, только как запускать фиг поймёшь.
меня то если честно особо не интересуют всякие команды, мне просто хочется запустить, посмотреть поиграть.

уважаемый Arseny поставьте себя на место человека который видит такое в первый раз, но хочет поиграть или запустить какието програмы :)

Arseny
09.10.2007, 10:16
Да я понимаю, но пока не знаю как еще помочь. До сих пор мне не приходилось объяснять что такое RT-11 и как с ней бороться ... В целом – на MS DOS похоже ;)

ZEman
09.10.2007, 10:29
у меня очень много различных эмуляторов для различных машин.
к каждой машинке чтоб не путаться, я создаю этакий хелп-файлик.
вот например для запуска игр (програм) в эмуляторе машины Micro bee:
>>>>>>>>>>>>>>>>>>>>>>>>>>
Nanowasp 2.0b
----------------------------
в папке эмулятора Data должны находиться файлы

boot.dsk
charrom.bin
rom1.bin

запустить эмулятор.
поместить диск в дисковод B (в дисководе А по умолчанию boot)
запустить бейсик (клавиша 3 или выбрать BASIC.COM на диске А)
набрать dir "b:"
запускать файлы mwb - набрав run "b:имя файла.MWB"
===============================================
по оболочке можно перемещаться используя клавиши:

ctrl+S - влево
ctrl+D - вправо
ctrl+E - вверх
ctrl+X - вниз
ENTER - выбор

таким образом можно запускать любой файл с расширением *.COM

ctrl+C - выбрать следующий дисковод
ctrl+R - выбрать предыдущий дисковод
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

это я чисто для примера привёл.
для УKHЦ, какой диск надо помещать в 0 диковод, sys1002.dsk или sysimage.dsk ?
и как в команде DIR MZx:*.SAV поставить звёздочку, уже всю клавиатуру обшарил.

Arseny
09.10.2007, 11:21
у меня очень много различных эмуляторов для различных машин.
к каждой машинке чтоб не путаться, я создаю этакий хелп-файлик.

[cut]

это я чисто для примера привёл.Угу. Над примером подумаем, спасибо ...


для УKHЦ, какой диск надо помещать в 0 диковод, sys1002.dsk или sysimage.dsk ?
и как в команде DIR MZx:*.SAV поставить звёздочку, уже всю клавиатуру обшарил.ЛЮБОЙ!!! УКНЦ совершенно до ... что куда. Для того в меню бута есть выбор. Хоть все 4 запихни. После загрузки диск с которого грузился будет DK: и SY: (т.е. текущий и системный).
Для запуска программы с текущего диска можно писать R name.SAV, для других дисков RU MZ1:name.SAV
* набирать так - Left Shift+]

nzeemin
09.10.2007, 14:51
Планируется ли делать свою вики по УКНЦ? Хотелось бы видеть что-то типа небольшого quickstart и несколько howto, какие-нибудь рекомендации на что обратить внимание. Сейчас информация если и есть, то крайне неструктурированная.

http://www.felixl.com/Uknc - вот наша вики
http://www.felixl.com/Uknc_info - тут ссылки на то что выложено по УКНЦ

ZEman
09.10.2007, 15:46
наконецто мне удалось запустить игры на УКHЦ :)
благодарю за проявленое вами терпение.

выглядит это примерно так:

включить эмулятор.
Emulator--->Floppy MZ0:---> открыть любой ситемный диск (например sys1002.dsk)
Emulator--->Floppy MZ1:---> открыть game.dsk
Emulator--->Run

дождаться полной загрузки
набрать DIR MZ1:*.sav

выбрать и запустить из открывшегося каталога RUN MZ1:"имя".sav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>

очень хотелось бы знать, можно ли както перемещать курсор вверх?
а то какаято часть каталога уползает вверх за экран, а название не знаешь.
ну и желаю разработчикам довести эмулятор до ума, сделать его более быстрым.

Arseny
09.10.2007, 16:08
очень хотелось бы знать, можно ли както перемещать курсор вверх?
а то какаято часть каталога уползает вверх за экран, а название не знаешь.Увы, насколько я помню, такой возможности нет (разве что SL умеет). Выход такой же как и в MS DOS:
DIR MZ1:A*.SAV (так же и другие буквы по очереди)

Alex_K
09.10.2007, 20:53
очень хотелось бы знать, можно ли както перемещать курсор вверх?
а то какаято часть каталога уползает вверх за экран, а название не знаешь.
ну и желаю разработчикам довести эмулятор до ума, сделать его более быстрым.

Увы, то что уползло вверх, уже не узнаешь. Для остановки изображения в RT-11 можно нажать Ctrl+S, а для возобновления Ctrl+Q.

Каталог можно вывести в укороченном состоянии. Есть ключик /BR (Brief), например:

DIR MZ1:*.SAV/BR - выводятся только имена файлов в пять колонок.

Для сортировки ключ /ALP (Alphabetize):

DIR MZ1:*.SAV/BR/ALP - имена файлов в пять колонок, сортированные по алфавиту.

Документация по RT-11 (на английском) лежит по следующему адресу: http://www.bitsavers.org/pdf/dec/pdp11/rt11/. Лучше качать документацию на пятую версию.

Также во вложении находится стандартный хэлп RT-11, переведенный на русский.

Alex_K
09.10.2007, 21:48
Во вложении находятся два загрузочных диска с игрушками для УКНЦ.

sv
09.10.2007, 23:28
ух ты,здорово!
прям как на "информатике" в школе…ностальгия…
пасиба за эмуль!
вот чёт мне кажца звук какой то не такой…а в ридми написано что мулится…

ZEman
10.10.2007, 17:37
большое спасибо за новые диски информацию.
очень надеюсь что эмулятор не остановится на полпути и будет дальше развиваться.
неплохо было бы добавить в эмулятор раскладку клавиатуры, а то путаюсь в наборе некоторых символов (как набрать символ "/" ?)

также интересно увидеть эмуляцию магнитофона, есть ли вообще образы касет для уkнц ?

Arseny
10.10.2007, 18:33
На сайте УКНЦ & PDP-11 (http://uknc.narod.ru) мини-обновление. Добавлено 3 документа и книга. Теперь сайт немного больше соответствует своему названию ;)

Grand
11.10.2007, 03:13
Также во вложении находится стандартный хэлп RT-11, переведенный на русский.Лучше уж воспользоваться HTML-версией хелпа.
http://www.zx.pk.ru/showpost.php?p=62553&postcount=105
Она хоть и по РАФОС, но команды, в целом, теже, что и в RT11.


Всё это хорошо, только эмулятор не работает под Win98. :(И всё-таки, хотелось бы узнать, что в Эмуляторе УКНЦ сделано такого, что он не идёт под W98? К примеру, куда сложные эмуляторы Спектрума (ZX Mak, RealSpectrum) прекрасно работают под W98.

nzeemin
11.10.2007, 15:32
И всё-таки, хотелось бы узнать, что в Эмуляторе УКНЦ сделано такого, что он не идёт под W98? К примеру, куда сложные эмуляторы Спектрума (ZX Mak, RealSpectrum) прекрасно работают под W98.

Юникод. Не помню уже почему я решил что в юникодном режиме мне будет работать удобнее, но так уж повелось. О поддержке Windows 98 тогда и не думалось, да и сейчас не думаю что это серьезный недостаток.

ZEman
12.10.2007, 06:24
сделайте в эмуляторе ускорение, а то так неудобно ждать загрузку всей системы.

проф
12.10.2007, 08:06
где в эмуле УКНЦ двоеточие, в ЭМУЛЕ PDP-11 нашёл в УКНЦ нет.

ZEman
12.10.2007, 08:27
: ставится клавишей ]
* ставится клавишей Left Shift+]

как вот ставить знак / не допёр ещё.

Alex_K
12.10.2007, 19:02
как вот ставить знак / не допёр ещё.

/ ставится клавишей <+/=>
? соответственно Left Shift + <+/=>

В образе sysimage.dsk есть программка ALTNUM.SAV. После её запуска можно набирать символы по кодам (как на PC ALT+НОМЕР). Нажимается ГРАФ (Right Shift в эмуляторе) и на дополнительной клавиатуре набирается код символа (в качестве нуля на УКНЦ выступает запятая, в эмуляторе знак минуса). После отжатия ГРАФ передается символ.

Grand
13.10.2007, 04:30
Юникод. ... О поддержке Windows 98 тогда и не думалось, да и сейчас не думаю что это серьезный недостаток.Для меня серьёзный. Мой старый iBM-совместимый комп (мне его подарили) XP не потащит. На "новый" тратиться не буду, т.к. в своей деятельности использую Спектрум. А W98 хорошо подходит для работы с реальными дисками. Кстати, и Эмулятор УКНЦ в перспективе можно было бы научить работе с реальными дисками, подобно PDP-11 Software Emulator...
:(

проф
15.10.2007, 09:29
я тут уже как то писал что не грех бы к FAR написать плагин который будет гонять файлы из одного образа .dsk в другой. Господа может вы всё таки сговоритесь и осилите етот проект.

ZEman
19.10.2007, 18:49
вышла вторая бета-версия эмулятора УКHЦ

sv
20.10.2007, 13:02
эмм…извините,а фуллскрин будет?…
с растягиванием по вертикали.

alone
20.10.2007, 23:55
На Win 9x не работает? :( Сговорились... Скоро только под Висту будут писать :(((

проф
21.10.2007, 11:47
Никита говорит - юникод тому причиной.

nzeemin
22.10.2007, 09:22
эмм…извините,а фуллскрин будет?…
с растягиванием по вертикали.

Ммм... Пока нет.
Будет растягивание по вертикали в два раза, но тоже пока не скажу когда. Сейчас пишу сохранение настроек, думаю что на днях выложу.

CHRV
22.10.2007, 12:12
На Win 9x не работает? :( Сговорились... Скоро только под Висту будут писать :(((

M$-ом 98 уже не поддерживается больше 5лет. Так что ничего удивительного...

[bETA]mEN
22.10.2007, 16:16
M$-ом 98 уже не поддерживается больше 5лет. Так что ничего удивительного...

http://www.microsoft.com/windows/lifecycle/default.mspx

Grand
24.10.2007, 03:26
M$-ом 98 уже не поддерживается больше 5лет. Так что ничего удивительного...Мы не "мелкософт", могли бы и поддержать... для себя.

d_wanderer
26.10.2007, 21:59
http://www.vak.ru/doku.php/proj/bk/1801vm-series
Вот здесь есть описание (правда краткое) растактовки ВМ2. Вообще статья правильная.

Alex_K
27.10.2007, 11:53
http://www.vak.ru/doku.php/proj/bk/1801vm-series
Вот здесь есть описание (правда краткое) растактовки ВМ2. Вообще статья правильная.

Увы! Там есть описание растактовки 1801ВМ1, а не 1801ВМ2, а между ними есть большая разница.

d_wanderer
27.10.2007, 16:02
Увы! Там есть описание растактовки 1801ВМ1, а не 1801ВМ2, а между ними есть большая разница.

А Вы внимательно читали? Посмотрите раздел Отличия от 1806ВМ2. Ну собственно раздел Н1806ВМ2. Sapienti sat.

Alex_K
27.10.2007, 16:21
А Вы внимательно читали? Посмотрите раздел Отличия от 1806ВМ2. Ну собственно раздел Н1806ВМ2. Sapienti sat.

Да, читал внимательно и знаю давно про этот документ. Но растактовка для одноадресных и двухадресных команд расписана именно для 1801ВМ1. Алгоритм исполнения различных методов адресации в 1801ВМ1 отличается от 1801ВМ2/1806ВМ2, поэтому эти сведения вряд ли подойдут, плюс еще конвеер в 1801ВМ2.

d_wanderer
27.10.2007, 16:38
Думаю что всетаки реализация микрокоманд вряд ли изменилась. Поэтому базовая растактовка осталось прежней. Надо всего лишь ввести коррекцию согласно описанию.

Alex_K
27.10.2007, 17:23
Думаю что всетаки реализация микрокоманд вряд ли изменилась. Поэтому базовая растактовка осталось прежней. Надо всего лишь ввести коррекцию согласно описанию.

Вообще-то должна была измениться, т.к. насколько я читал в инете в 1801ВМ1 было сделано много ляпов, из-за чего он не совсем совпадал по тонкостям реализации команд с LSI-11(PDP 11/03). В 1801ВМ2 это всё было исправлено и он почти идеально соответствовал LSI-11. У тех же DEC-овских процессоров существуют различия в исполнениях методов адресации и команд. На этом же сайте есть документ http://www.vak.ru/lib/exe/fetch.php/proj/pdp11/dcj11.pdf?id=proj%3Apdp11&cache=cache, в приложении C которого есть таблица C-1, в которой описаны эти различия.

1801ВМ1 и 1801ВМ2 должны отличаться по исполнению команд ADD R0,(R0)+ и ADD R0,-(R0), хотя достоверно это утверждать не берусь, т.к. не имею компьютера с процессором 1801ВМ1. Владельцы БК могут это проверить.

d_wanderer
28.10.2007, 17:25
У меня есть и то и другое... ЕСть даже малоизвестный у нас 1807ВМ1...

проф
05.11.2007, 09:26
а где ссылку взять на beta2 эмуль

ZEman
05.11.2007, 10:12
http://3do-scene.com/nzeemin/UKNCBTL-beta2.zip

воть.

nzeemin
06.11.2007, 09:43
http://3do-scene.com/nzeemin/UKNCBTL-beta2.zip

воть.

Блииин. Есть блог, есть страница проекта - неужели еще сюда нужно новости постить?..

http://www.felixl.com/Uknc

ZEman
06.11.2007, 10:25
так я же дал правильную ссылку, сразу на скачивание эмулятора.

Добавлено через 20 часов 5 минут
вышла третья бета эмулятора, наконецто добавлен двойной размер экрана.

vmp
04.12.2007, 18:23
Со временем выполнения команд есть ещё один нюанс. Шина q-bus - асинхронная, т.е. все устройства при обращении к ним выдают сигнал готовности. Причем этот сигнал может задерживаться на весьма большое время. Особенно хорошо это заметно на видеопамяти. С УКНЦ практически не работал, но на КЦГД в ДВК этот эффект был хорошо заметен - программы из ПЗУ работали заметно быстрее, чем из ОЗУ.

Никакого кеша или предвыборки в ВМ2 нет. Предвыборка появилась в ВМ3.

Alex_K
04.12.2007, 20:58
Со временем выполнения команд есть ещё один нюанс. Шина q-bus - асинхронная, т.е. все устройства при обращении к ним выдают сигнал готовности. Причем этот сигнал может задерживаться на весьма большое время. Особенно хорошо это заметно на видеопамяти. С УКНЦ практически не работал, но на КЦГД в ДВК этот эффект был хорошо заметен - программы из ПЗУ работали заметно быстрее, чем из ОЗУ.

В УКНЦ аналогично. К тому же на магистрали периферийного процессора организация ОЗУ 64Кх8, поэтому чтение слова происходит в два этапа, да и приоритет на доступ к ОЗУ имеет видеоконтроллер.


Никакого кеша или предвыборки в ВМ2 нет. Предвыборка появилась в ВМ3.

Как такового кэша нет, но выборка команд с опережением происходит. Вот чего об этом сказано в документации на процессор 1806ВМ2, который является функциональным аналогом 1801ВМ2:


В ПРЦ реализован метод приема команд с опережением. Алгоритм приема и обработки команд построен так, что к концу выполнения команды следующая команда уже принята на буферный регистр команд и начинается прием еще одной команды. Такой процесс опережения осуществим только на линейных участках программы, когда нет ветвлений. При выполнении команд ветвления и вообще любых команд, в которых происходит загрузка счетчика команд, команда, принятая на буферный регистр команд (БРК), оказывается не той, которая предусматривалась по программе. В таких случаях аппаратно осуществляется повторный прием следующей команды. Для восстановления опережения в этой же команде подготавливается прием еще одной команды. Нарушение опережения происходит также в том случае, когда по счетчику читается не команда, а данные. В конце команды с адресацией данных по счетчику команд происходит также восстановление опережения путем организации чтения двух команд следующих за текущей командой. Повторный прием команды происходит также в том случае, когда текущая команда модифицирует следующую за ней команду. После окончания процедуры модификации, т.е. записи по адресу следующей команды, эта измененная команда читается и выполняется. Происходит повторный прием команды, поскольку в течение выполнения текущей команды следующая уже была принята на БРК.

ZEman
28.01.2008, 14:51
вышла новая, шестая бета эмулятора УКНЦ.
http://nzeemin.livejournal.com/tag/УКНЦ

проф
20.09.2008, 09:51
Эта тема где-то у нас тут когда-то была, но заглохла - поэтому решил создать новую.
Никита А. Зимин занимается эмулятором УКНЦ уже довольно давно поэтому респект ему и уважуха.
Собственно ссылка на тему сабжа в журнале у Никиты: http://nzeemin.livejournal.com/tag/%D0%A3%D0%9A%D0%9D%D0%A6

nzeemin
21.09.2008, 19:42
Спасибо.
Старая тема была тут: http://zx.pk.ru/showthread.php?t=6257&highlight=%D3%CA%CD%D6

Grand
04.11.2008, 12:18
Эта тема где-то у нас тут когда-то была, но заглохла - поэтому решил создать новую.Просто раздел "Другие компьютеры" реорганизовали, а прежнняя тема Эмулятор УКНЦ (http://zx.pk.ru/showthread.php?t=6257) попала в "Отечественные компьютеры" (http://zx.pk.ru/forumdisplay.php?f=54).

P.S. Но теперь всё порядке: тема "нашлась". :)



2nzeemin: Когда будет версия для Windows98?

проф
05.01.2009, 15:37
Такое впечатление , что работа над эмулятором сильно затормозилась.

Shadow Maker
20.01.2009, 12:02
А "Замок гоблинов" - это на УКНЦ?

Arseny
20.01.2009, 12:17
А "Замок гоблинов" - это на УКНЦ?
Этот?
http://uk-nc.narod.ru/Goblin.gif

Shadow Maker
20.01.2009, 12:59
Я уж счас уже и не помню. Он ч/б был, но может это монитор такой просто... Вроде похож.

Grand
21.01.2009, 03:55
Вроде похож.Значит - на УКНЦ.

Shadow Maker
21.01.2009, 04:27
Ну тогда прошу выдать мне его вместе с инструкцией по запуску и натыкиванию вечной жизни :)

[bETA]mEN
04.04.2009, 13:47
вышла новая версия: http://nzeemin.livejournal.com/277316.html

Titus
04.04.2009, 14:24
Феликс выпустил бету 12 эмулятора UKNCBTL.
На этот раз сделаны правильные тайминги команд процессора.
В результате, можно играть в Замок Гоблинов -- с музыкой и нормальной скоростью.

Интересно, откуда взяты правильные тайминги? Немножко сомнительно, что они действительно правильные. Скорее всего приближенны к правильным.

ZEman
04.04.2009, 20:01
ну хоть чтото делают, я уже думал что этот эмулятор забросили.

Doronetty
05.04.2009, 18:25
Я тоже ужасно рад, что эмуль живёт и фунциклирует!!! Надеюсь, когда-нибудь туда и поддержку ДВК добавят...:rolleyes:

nzeemin
20.07.2009, 14:24
Я тоже ужасно рад, что эмуль живёт и фунциклирует!!! Надеюсь, когда-нибудь туда и поддержку ДВК добавят...:rolleyes:

Эмулятор ДВК совсем по-другому надо писать. ДВК был по сути конструктором -- набор печатных плат, воткнутых в корзину. Эмулятор ДВК должен позволять "навтыкать" плат в корзину и подключить внешние устройства. Соответственно, эмулятор должен быть модульным, с чётко описанным уровнем разделения интерфейса.

Doronetty
20.07.2009, 18:29
Ну и правильно - эмулятор по структуре должен быть а-ля WinUAE. Взялся бы за это кто знающий...

nzeemin
01.11.2009, 21:38
Выложена бета 13 эмулятора UKNCBTL:
http://ukncbtl.googlecode.com/files/UKNCBTL-beta13.zip

Практически все изменения -- в пользовательском интерфейсе:
- Добавлен блок магнитофона (пока не работает)
- Добавлена панель инструментов (тулбар)
- Команда отключения звука Emulator|Sound
- В отладочном режиме окно Debug разделено на Debug (состояние процессора и регистры) и Disassemble (дизассемблирование кода от PC и ниже); в Disassemble работают клавиши "пробел" (переключение процессоров), "вниз" (дизассемблирование ниже) и G (дизассемблирование с заданного адреса).

Arseny
01.11.2009, 23:27
После установки получаю:

Приложение не было запущено, поскольку оно некорректно
настроено. Повторная установка приложения может решить данную
проблему.
Cannot execute
C:\Program Files\UKNCBTL\UKNCBTL.exe
Это только у меня?

Alex_K
02.11.2009, 10:47
После установки получаю:

Приложение не было запущено, поскольку оно некорректно
настроено. Повторная установка приложения может решить данную
проблему.
Cannot execute
C:\Program Files\UKNCBTL\UKNCBTL.exe
Это только у меня?
Может быть это поможет:
Microsoft Visual C++ 2008 SP1 Redistributable Package (x86) (http://www.microsoft.com/downloads/info.aspx?na=90&p=&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=a5c84275-3b97-4ab7-a40d-3802b2af5fc2&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2 fd%2fd%2f9%2fdd9a82d0-52ef-40db-8dab-795376989c03%2fvcredist_x86.exe).

Arseny
02.11.2009, 11:04
Может быть это поможет:
Microsoft Visual C++ 2008 SP1 Redistributable Package (x86).
Да помощь мне собственно и не требуется (решать подобные проблемы - моя работа). Вопрос о первоисточнике проблемы: или моя ОСь, или ошибки в инсталяторе.

nzeemin
04.11.2009, 14:29
После установки получаю:

Приложение не было запущено, поскольку оно некорректно
настроено. Повторная установка приложения может решить данную
проблему.
Cannot execute
C:\Program Files\UKNCBTL\UKNCBTL.exe
Это только у меня?

Думаю что это проблемы инсталлера -- такое уже было под XP. Постараюсь исправить в ближайшее время. Сорри.
В качестве временного решения проблемы -- можно поставить Beta-12 и скопировать .exe-файл с новой версии.
Как я понял, Арсений так и сделал.

Alex_kapfa
04.11.2009, 17:06
Выложена бета 13 эмулятора UKNCBTL:
http://ukncbtl.googlecode.com/files/UKNCBTL-beta13.zip


У меня 13-ая версия инсталлируется (Windows XP), но при запуске выдает ошибку "This application has failed to start because the application is incorrect". Я пытался ее дважды удалять и заново устанавливать. Результат в обоих случаях одинаковый - не работает.
Удалил и установил снова версию 12 данного эмулятора (12-ая работает нормально).

Grand
10.11.2009, 08:18
Ну так, а версия для Win98 будет? На мой IBM-совместимый комп другую не поставишь. Да и работа с реальными дискетами двойной плотности возможна только в Win98.

ZEman
10.11.2009, 08:57
подскажите, как загружать образы касет на эмуляторе ?
выбрал меню магнитофон, открыл wav, минуты три счётчик крутился и всё...
чё за.

BYTEMAN
10.11.2009, 08:59
Вот и объяснение:

Практически все изменения -- в пользовательском интерфейсе:
- Добавлен блок магнитофона (пока не работает)

ZEman
10.11.2009, 09:20
да но это было написано про бету 13, а уже доступна для скачивания бета 14.
там тоже не реализовано ?

nzeemin
10.11.2009, 16:39
> Ну так, а версия для Win98 будет?
В ближайшем будущем не планирую.
Основные цели сейчас -- точность и полнота эмуляции, удобство эмулятора.

> подскажите, как загружать образы касет на эмуляторе ?
Пока никак, фича недоделана.

> да но это было написано про бету 13, а уже доступна для скачивания бета 14.
Бету 14 загрузил просто для проверки под XP, там та же проблема что и в бете 13 -- не успел её разрешить. В целом же бета 14 отличается более правильным механизмом обработки прерываний.

Сорри за медлительность -- ну не успеваю я :(

ZEman
10.11.2009, 17:02
ну тогда всё ясно, будем ждать новый релиз.
успехов вам в в разработке и не бросайте этот проект :)

Arseny
10.11.2009, 21:12
nzeemin, дампы с ROM контроллера IDE скачал? Пригодились для чего-нибудь?

nzeemin
10.11.2009, 22:16
Проблему с установкой под Windows XP -- решил.
Дистрибутив Beta 14 перезалил.
Из изменений:
- Переделана обработка прерываний в процессоре (спасибо Alex_K за описание и консультации)
- Добавлена команда создания пустого диска (не забывайте выполнять на нём INIT перед использованием)

http://ukncbtl.googlecode.com/files/UKNCBTL-beta14.zip

---------- Post added at 23:16 ---------- Previous post was at 22:56 ----------

Arseny, нет, не успел. Феликс говорил что занимается IDE.

nzeemin
19.11.2009, 21:37
Набросал руководство:

http://code.google.com/p/ukncbtl/wiki/UsersManual

Постепенно буду дописывать.

Shadow Maker
20.11.2009, 03:25
Выложена бета 13 эмулятора UKNCBTL:
http://ukncbtl.googlecode.com/files/UKNCBTL-beta13.zip

Практически все изменения -- в пользовательском интерфейсе:
- Добавлен блок магнитофона (пока не работает)
- Добавлена панель инструментов (тулбар)
- Команда отключения звука Emulator|Sound
- В отладочном режиме окно Debug разделено на Debug (состояние процессора и регистры) и Disassemble (дизассемблирование кода от PC и ниже); в Disassemble работают клавиши "пробел" (переключение процессоров), "вниз" (дизассемблирование ниже) и G (дизассемблирование с заданного адреса).
Не устанавливается. Рисует иероглифы и при тычке на (то, что по идее "далее") вылетает. Можно без инсталлятора выложить?

nzeemin
20.11.2009, 08:13
Не устанавливается. Рисует иероглифы и при тычке на (то, что по идее "далее") вылетает. Можно без инсталлятора выложить?

А бета 14 чем не устраивает? В ней ошибка установки исправлена.

Shadow Maker
20.11.2009, 17:01
Это я не то процитировал. Ничего не исправлено, в бета14 та же самая байда с иероглифами и не устанавливается.

Arseny
20.11.2009, 21:48
Это я не то процитировал. Ничего не исправлено, в бета14 та же самая байда с иероглифами и не устанавливается.

Какая ось, кстати? А то может под Windows 7 оно и глючит ;)
Инсталятор 14-й версии нормальный. Эмулятор тоже работает. Проверял на Win2k и XP.

ZEman
20.11.2009, 22:02
только не надо всё на Windows 7 сваливать, у меня например семёрка стоит да ещё и 64-битная, но эмулятор отлично устанавливается и работает.
значит проблема в компьютере или софте у Shadow Maker,

Arseny
20.11.2009, 23:25
только не надо всё на Windows 7 сваливать, у меня например семёрка стоит да ещё и 64-битная, но эмулятор отлично устанавливается и работает.

ZEman, не нужно так нервно на все реагировать. Достаточно было написать что на семерке все Ок - я ведь только предположил.


значит проблема в компьютере или софте у Shadow Maker,
Запросто! Но для большей точности в определении проблемы стоит исключить варианты которые мы можем проверить.

ЗЫ: Я знаю! У Shadow Maker'а Виста стоит! :v2_scare:

Shadow Maker
21.11.2009, 02:09
У меня XP Professional, экстрасенсы... Никогда с инсталляторами не было проблем.

---------- Post added at 02:09 ---------- Previous post was at 02:05 ----------

nzeemin, может все же выложишь без инсталлятора? Я вообще не понимаю, какого фига он мне иероглифы пишет.

nzeemin
21.11.2009, 07:25
У меня XP Professional, экстрасенсы... Никогда с инсталляторами не было проблем.
nzeemin, может все же выложишь без инсталлятора? Я вообще не понимаю, какого фига он мне иероглифы пишет.

Во вложении UKNCBTL-beta14-bin.zip -- исполняемые файлы и ром, без дисков и картриджа.

Если можно -- пришли скриншоты с иероглифами + инфо о системе.

nzeemin
21.11.2009, 14:59
В ближайших планах по эмулятору -- прикрутить к окну Disassemble "субтитры". Ну то есть на полноформатный отладчик (как в Visual Studio) у меня времени нет, сделаю парсинг текстового файла (определённого формата) и вывод комментариев справа от дизассемблированного кода. Будет возможность по ПЗУ бегать с комментариями -- уже хоть что-то.

---------- Post added at 15:59 ---------- Previous post was at 15:57 ----------

Нечто похожее задумано вот тут:
http://www.asvcorp.ru/darch/tools/docs/debuginfo-format.html

Shadow Maker
21.11.2009, 17:01
Если можно -- пришли скриншоты с иероглифами + инфо о системе.
Пожалуйста. Форум правда чего-то первую картинку сильно уменьшил, могу куда-нить еще залить, если это важно.

А можно диски где-то взять отдельно? Хочу замок гоблинов, или как он там правильно зовется.

Без инсталлятора все запускается и работает нормально, меню показывает по крайней мере, тест проходит нормально, клавиши нажимаются. Только вот клавиша Enter чего-то не нажимается на реальной. На экранной все ok.

nzeemin
21.11.2009, 17:55
В ближайших планах по эмулятору -- прикрутить к окну Disassemble "субтитры". Ну то есть на полноформатный отладчик (как в Visual Studio) у меня времени нет, сделаю парсинг текстового файла (определённого формата) и вывод комментариев справа от дизассемблированного кода. Будет возможность по ПЗУ бегать с комментариями -- уже хоть что-то.

Файл субтитров (комменты by Alex_K):


; Точка входа при включении питания (адрес начального пуска)
160300: MOV @#172660$,R4 ; R4 = адрес ОЗУ пультового отладчика
160304: CLR R0 ; Признак ошибок = 0
MOV R4,SP
160310: BMI 160464$ ; Запуск в ЦП
160312: BIT #20,@#177716 ; ЦП в режиме HALT ?
160320: BEQ 160332$ ; Нет
MOV @#0,R1
BEQ 160332$
JMP @R0
160332: MOV #40,@#177716$ ; Останов ЦП (установка DCLO и ACLO)
160340: CALL 173252$ ; Перекачка пультового монитора в сист. ОЗУ ЦП
160344: MOV #70045,@#177010 ; Передача ключа теста памяти (делать или нет)
MOV 42(R4),@#177014
CLR @#177716 ; Снятие DCLO
MOV #100,R0
160370: SOB R0,160370$ ; Задержка
MOV #100000,@#177716; Запуск ЦП (снятие ACLO)
CALL 160410$ ; Тест ПЗУ ПП
SWAB R0
BR 160474$ ; Переход на тест ОЗУ

Действующий макет:
http://www.ljplus.ru/img4/n/z/nzeemin/UKNCBTL-20091121-subs.png

Arseny
21.11.2009, 19:18
А можно диски где-то взять отдельно? Хочу замок гоблинов, или как он там правильно зовется.
Замок гоблинов есть на дисках в эмуляторе.
А вообще диски можно взять у меня на сайте (http://uknc.narod.ru) и здесь, на форуме (в теме о продаже дисков УКНЦ).

Shadow Maker
21.11.2009, 23:42
Замок гоблинов есть на дисках в эмуляторе.
А вообще диски можно взять у меня на сайте (http://uknc.narod.ru) и здесь, на форуме (в теме о продаже дисков УКНЦ).
Ну ты же понимаешь, думаю, что поскольку nzeemin диски в архив не включил, а установщика у меня не работает, то следовательно дисков в эмуляторе у меня тоже нет.

В общем загрузился, побегал, чего-то реально какая-то беда с управлением, клавиши то работают, то не работают... Это не связано с тем, что у меня показывает 24-25 фпс?

Arseny
22.11.2009, 00:46
Ну ты же понимаешь, думаю, что поскольку nzeemin диски в архив не включил, а установщика у меня не работает, то следовательно дисков в эмуляторе у меня тоже нет.
Скачай любую бету и вытащи из нее образы дисков. Можно WinRAR'ом.
Там всего 5 образов: basic.dsk, disk1.dsk, game.dsk, sys1002.dsk, sysimage.dsk

Shadow Maker
22.11.2009, 05:14
Да я уже с твоего сайта взял. Написал же, что играл в Гоблинов.


Там всего 5 образов: basic.dsk, disk1.dsk, game.dsk, sys1002.dsk, sysimage.dsk

Похоже, ты опять не угадал:

# Архив R:\UkncBtl.msi
2009-11-01 17:20 2210 0 main0
2009-11-10 22:54 333312 0 main1
2007-07-04 20:55 32256 0 main2
2009-07-11 23:02 653120 0 main3
2009-07-11 23:08 1860 0 main4
2009-11-10 22:54 16896 0 main5
2007-03-26 09:54 24576 0 rom1
2009-11-07 22:29 819200 0 disk1
2009-11-06 22:59 819200 0 disk2
2009-11-07 10:02 819200 0 disk3
2007-03-29 22:40 773120 0 disk4
2009-11-07 10:02 409600 0 disk5
#
# Всего: Размер Сжат Файлы
# 4704550 0 12
Пять дисков и все без расширений :)

ZEman
22.11.2009, 06:51
вот вам целых аж 16 дисков и все с именами и расширениями :)
http://depositfiles.com/files/9l43mxxmg

Arseny
22.11.2009, 11:11
Да я уже с твоего сайта взял. Написал же, что играл в Гоблинов.
Ну, это я читал не внимательно - поздно уже, сплю немного ...


Похоже, ты опять не угадал:

# Архив R:\UkncBtl.msi
2009-11-07 22:29 819200 0 disk1
2009-11-06 22:59 819200 0 disk2
2009-11-07 10:02 819200 0 disk3
2007-03-29 22:40 773120 0 disk4
2009-11-07 10:02 409600 0 disk5

Пять дисков и все без расширений :)
Что мешает присвоить им любое расширение? Или вообще без расширения использовать? Или так:
disk1 - sysimage.dsk
disk2 - sys1002.dsk
disk3 - basic.dsk
disk4 - game.dsk
disk5 - disk1.dsk

Shadow Maker
22.11.2009, 14:03
Что мешает присвоить им любое расширение? Или вообще без расширения использовать?
Мешает? Ничего не мешает, только надо догадаться сначала, кто из них кто. Я к тому, что у образов имена там не такие, как ты написал.

А вообще мне это всё неинтересно, мне интереснее почему у меня кнопки так плохо нажимаются.

nzeemin
22.11.2009, 14:52
мне интереснее почему у меня кнопки так плохо нажимаются.
Скорее всего, УКНЦ не успевает "схватить" нажатие клавиши. Попробуйте удерживать клавишу немного дольше.

Shadow Maker
22.11.2009, 15:04
Я Enter давил так, что у меня буфер аж запищал виндовый, все равно не сработала.

И больше меня интересует, как в игры тогда играть, кнопки явно не вовремя реагируют.

Shadow Maker
08.12.2009, 05:34
И в ответ тишинааааааа...

nzeemin
08.12.2009, 09:39
И в ответ тишинааааааа...

Ну а что вы хотели? Проблема по всей видимости только у вас. Это нужно тестовую конфигурацию поднимать на виртуальной машине, гонять, искать причину -- откуда столько времени взять?

BYTEMAN
10.12.2009, 09:47
nzeemin, что слышно с эмуляцией магнитофона?

nzeemin
10.12.2009, 10:04
nzeemin, что слышно с эмуляцией магнитофона?

Пару раз за неё брался, нужно ещё доотладить.
После переноса эмуляции магнитофона в BKBTL -- там загрузка заработала.
А в эмуляторе УКНЦ пока не "хватается" за пилот-тон, сбивается всё время -- какие-то мелочи мешают.
Подготовил субтитры для кода загрузки. Как будет свободное время -- засяду опять.

Raydac
10.12.2009, 10:42
под Qt переведи эмуль, тогда хоть под линуксом можно будет юзать

nzeemin
10.12.2009, 10:49
под Qt переведи эмуль, тогда хоть под линуксом можно будет юзать

Собираюсь, со временем.
Скорее всего будет так: на Qt будет написан очень минималистичный интерфейс, только экран и клавиатура, без отладочных окон.
Ядро эмуляции уже сейчас не зависит от интерфейсной части, только формирование экрана находится вне ядра.

Raydac
10.12.2009, 13:32
Собираюсь, со временем.
Скорее всего будет так: на Qt будет написан очень минималистичный интерфейс, только экран и клавиатура, без отладочных окон.
только не забудь какойнить правильный fullscreen mode сделать, что бы можно было не отвлекаться на всякие сторонние окна и стол

nzeemin
31.12.2009, 19:58
А тем временем, Alex_K исправил несколько ошибок, в результате чего мы теперь проходим тесты 791401, 791402 и 691404!
Алексей, спасибо!

P.S. Про тесты вот тут: http://zx.pk.ru/showthread.php?t=11557 и тут: http://bk0010.org/forum/?id=3716&page=

nzeemin
01.01.2010, 19:27
http://ukncbtl.googlecode.com/files/UKNCBTL-beta15.zip -- архив с инсталлером
http://ukncbtl.googlecode.com/files/UKNCBTL-beta15-bin.zip -- архив без инсталлера

Что нового в этой версии:
- Субтитры в окне Disassemble; подгружаются клавишей 's', ей же выключаются
- Маппинг клавиатуры теперь зависит от ЛАТ/РУС на УКНЦ
- Ряд исправлений в коде процессора и материнки; теперь проходятся тесты 791401, 791402, 691404 (диск fodostm1.dsk с тестами включен в архив UKNCBTL-beta15-bin.zip)

Руководство пользователя эмулятора (в разработке):
http://code.google.com/p/ukncbtl/wiki/UsersManual

ZEman
01.01.2010, 21:40
а как обстоят дела с BKBTL ?

nzeemin
03.01.2010, 21:33
а как обстоят дела с BKBTL ?

http://img-fotki.yandex.ru/get/4010/nzeemin.1/0_365f5_f088421b_M.jpg http://img-fotki.yandex.ru/get/4106/nzeemin.1/0_36ccb_7c344514_-2-M

Коллеги подарили БК 0010-01 и монитор Электроника 32 ВТЦ 202. У БК клавиатура никакая, программу из 10 строк нереально набить -- накупил кнопок, сверлю плату под новую клаву. В эмуляторе проходится тест 791401, теперь пытаюсь пройти тест 791404, есть небольшой прогресс.

KALDYH
03.01.2010, 21:43
У БК клавиатура никакая
Я на своей кнопки смазал. Машинным маслом, густо. Вроде бы мелочь, но каков эффект!

SKcorp.
03.01.2010, 22:01
http://img-fotki.yandex.ru/get/4010/nzeemin.1/0_365f5_f088421b_M.jpg http://img-fotki.yandex.ru/get/4106/nzeemin.1/0_36ccb_7c344514_-2-M

Коллеги подарили БК 0010-01 и монитор Электроника 32 ВТЦ 202. У БК клавиатура никакая, программу из 10 строк нереально набить -- накупил кнопок, сверлю плату под новую клаву. В эмуляторе проходится тест 791401, теперь пытаюсь пройти тест 791404, есть небольшой прогресс.

Не порть раритет, тем более там плата от БК0010.
Лучше найди БК с мягкой клавиатурой (типа как у УК-НЦ).

Raydac
03.01.2010, 22:04
а какие БК с мягкой клавиатурой?

p.s.
я тут набивал побольше чем 10 строк на своей с такой же клавой и вроде ничего так, основная трабла не дребезг, основная трабла - неписишная раскладка совершенно

SKcorp.
03.01.2010, 23:33
а какие БК с мягкой клавиатурой?


Такие.
http://bk0010.spb.ru/BK/BK001001new.jpg

tnt23
04.01.2010, 00:18
http://megajohn.embedders.org/mjprojects/?device=uknc&f0=1&f1=1&f2=0&f3=0&f4=0&w0=1&w1=1&w2=1

nzeemin
04.01.2010, 00:19
Я на своей кнопки смазал. Машинным маслом, густо. Вроде бы мелочь, но каков эффект!

Потратил полтора часа, смазал.
Стало немного мягче, но один хрен -- сильный дребезг контактов, часто вместо нужного символа появляется другой.

BYTEMAN
04.01.2010, 12:23
nzeemin, по прежнему ждём эмуляцию магнитофона. ;) Тем более что конвертор SAV2WAV уже есть и нормально работает ;)

http://sash-a.nm.ru/SAV2WAV.exe

Raydac
04.01.2010, 12:28
а под Linux такой конвертер имеется?

BYTEMAN
04.01.2010, 12:31
а под Linux такой конвертер имеется?

Нет, т.к. писано на Delphi.

Shadow Maker
04.01.2010, 13:15
Wine вероятно спасёт.

nzeemin
04.01.2010, 15:19
nzeemin, по прежнему ждём эмуляцию магнитофона. ;) Тем более что конвертор SAV2WAV уже есть и нормально работает ;)

http://sash-a.nm.ru/SAV2WAV.exe

Сохранение в WAV уже сделал. Нужен ещё заход-другой чтобы довести чтение до работающего состояния.

nzeemin
06.01.2010, 13:39
История разработки одного эмулятора
http://habrahabr.ru/blogs/retro/80078/

Titus
06.01.2010, 14:13
А что там на счет точности эмуляции времянки процессора, в смысле тактов?

Alex_K
06.01.2010, 15:18
А что там на счет точности эмуляции времянки процессора, в смысле тактов?
Значительно лучше, но до идеала все равно далековато, т.к. еще не учитывает из какого типа памяти считает - ОЗУ ПП, ОЗУ ЦП, ПЗУ. В зависимости от типа памяти резко разниться время выборки из нее.

Titus, я давно замечал, что Вы не только на этом форуме, но даже еще и на почившем romov.net, задавали этот вопрос. Соответственно встречный вопрос - а у Вас есть информация по тактам исполнения на процессор 1801ВМ2? Желательно детализированную информацию, сколько тактов уходит на декодирование команды, на выборку источника и приемника, исполнение команды, запись приемника.

[bETA]mEN
06.01.2010, 16:36
на почившем romov.net
он не умер, а трансформировался в emu-russia.net

Titus
06.01.2010, 17:01
Значительно лучше, но до идеала все равно далековато, т.к. еще не учитывает из какого типа памяти считает - ОЗУ ПП, ОЗУ ЦП, ПЗУ. В зависимости от типа памяти резко разниться время выборки из нее.

Titus, я давно замечал, что Вы не только на этом форуме, но даже еще и на почившем romov.net, задавали этот вопрос. Соответственно встречный вопрос - а у Вас есть информация по тактам исполнения на процессор 1801ВМ2? Желательно детализированную информацию, сколько тактов уходит на декодирование команды, на выборку источника и приемника, исполнение команды, запись приемника.
Я этим интересовался, но не доисследовал до конца.

nzeemin
10.03.2010, 08:43
Заработала загрузка с образа винчестера, обсуждение тут:
http://zx.pk.ru/showthread.php?t=12218

Образ винчестера можно взять тут: http://narod.ru/disk/18459482000/WDC170INV.ZIP.html
Если будете сливать с реального винчестера -- для этого удобно использовать утилиту HxD, после снятия образа битики в нём нужно перевернуть -- на реальном винчестере они хранятся инверсно, в образе как обычно.

http://ukncbtl.googlecode.com/files/UKNCBTL-beta16-bin.zip

Для загрузки с образа винчестера:
1. Выбрать в качестве картриджа ПЗУ файл ide_hdbootv0400.bin
2. Выбрать командой Drives > Hard Drive (или кнопочкой возле кнопки картриджа) образ винчестера
3. Запустить эмулятор
4. В загрузочном меню выбрать загрузку с кассеты ПЗУ
5. Загрузчик предложит выбрать с какого раздела загрузиться -- вводим цифру

http://img-fotki.yandex.ru/get/3908/nzeemin.2/0_3b7cf_57387365_XL.jpg

nzeemin
12.03.2010, 22:02
Реализовал команду 30h (WRITE MULTI) -- заработала запись на винчестер на прошивке ide_hdbootv0400.bin.
Серьёзных тестов не делал, поэтому осторожнее, делаем бэкапы образа винчестера.
UKNCBTL.exe лежит тут: http://zx.pk.ru/showpost.php?p=264465&postcount=77

ZEman
13.03.2010, 06:05
nzeemin, может сделаешь чтото типа защиты от записи, чтоб образ не портить.

Arseny
13.03.2010, 09:37
nzeemin, может сделаешь чтото типа защиты от записи, чтоб образ не портить.
А смысл? Для защиты от записи можно и безопасность в винде настроить, но от ошибок пользователя (когда ты сам же все и портишь) это никак не спасет. Лишняя трата времени и сил.

nzeemin
13.03.2010, 12:08
nzeemin, может сделаешь чтото типа защиты от записи, чтоб образ не портить.

Собираюсь сделать, это не трудно. Будет так же как с дискетами -- ставим атрибут readonly на файл и работаем не боясь что эмулятор что-либо испортит.

Raydac
13.03.2010, 12:09
Собираюсь сделать, это не трудно. Будет так же как с дискетами -- ставим атрибут readonly на файл и работаем не боясь что эмулятор что-либо испортит.
лучше визуальный флажок в эмуляторе выстави, что бы юзеру была возможность оперативно режим менять

Alex_K
13.03.2010, 13:14
Собираюсь сделать, это не трудно. Будет так же как с дискетами -- ставим атрибут readonly на файл и работаем не боясь что эмулятор что-либо испортит.
Но команду придется отрабатывать либо с ошибкой, либо вхолостую. Из-за нереализованной записи WDBOOT подвисал, система грузилась нормально только до первой попытки записи.

b2m
13.03.2010, 19:53
Сейчас такие компьютеры, что можно весь образ в памяти держать, а изменения в файл, по желанию пользователя, потом скидывать.

nzeemin
21.03.2010, 18:29
Но команду придется отрабатывать либо с ошибкой, либо вхолостую. Из-за нереализованной записи WDBOOT подвисал, система грузилась нормально только до первой попытки записи.

Делаю сейчас readonly режим, вроде как достаточно при записи выдавать ошибку IDE_ERROR_BAD_SECTOR -- при загрузке пишет сообщения об ошибках записи, но успешно загружается.

В аттаче .exe-файл. Добавлен ридонли-режим и его индикация в тулбаре.
Просто ставим read-only флаг на файл и подключаем в эмулятор.

alex904
27.04.2010, 23:40
Потратил полтора часа, смазал.
Стало немного мягче, но один хрен -- сильный дребезг контактов, часто вместо нужного символа появляется другой.
Не надо там смазывать. Лучше резюки лишние напаяй последовательно на клавиатурные сигналы. Методом подбора. Уже не помню номиналы. Сильно больше поможет. Или найди нормальную мембранную клавиатуру поздних выпусков. В 90-х она продавалась отдельно. Сейчас - фиг его знает.

nzeemin
03.05.2010, 22:25
Поставил Qt 4.6. Сделал GUI-проект, добавил в него папку emubase из UKNCBTL.
Получил тонну ошибок.
На данный момент (ревизия 179), ядро эмуляции уже компилируется под MinGW.
По идее, теперь можно написать GUI под Qt и использовать ядро эмулятора _без изменений_ под тем же Linux.

Сделал конфигурацию для сборки не-юникодной версии UKNCBTL, поправил строковые функции и таблицу перекодировки КОИ-8Р. Теоретически, теперь может работать под не-юникодными версиями Windows (Windows 98, если это реально ещё кому-то нужно). Практически -- пока не пробовал, но наверняка будут проблемы с DLLs.

Vamos
03.05.2010, 23:15
А как там с моей проблемой ?

nzeemin
04.05.2010, 08:58
А как там с моей проблемой ?

Увы мне -- без движения 8-(

nzeemin
06.05.2010, 20:20
Первый скриншот под Qt:

http://img-fotki.yandex.ru/get/4209/nzeemin.3/0_3e3a0_b985938a_M.jpg (http://fotki.yandex.ru/users/nzeemin/view/254880/)

Конечно в зачаточном состоянии -- экран не обновляет, клавиатуру не воспринимает -- выкладывать пока нет смысла.

UPD 2010-05-07:
Экран обновляет, сделал экранную клавиатуру.

nzeemin
08.05.2010, 01:25
Вынес в отдельный пост -- стоит того 8-)

Установил Ubunto 10.04 на ноутбук.
Поставил Qt SDK. Часа два выяснения проблем -- и заработало.

http://img-fotki.yandex.ru/get/4211/nzeemin.3/0_3e452_49c987ed_M.jpg (http://fotki.yandex.ru/users/nzeemin/view/255058/)

Скачал и поставил Qt SQK под Mac OS X 10.5.7.
Не без проблем, но тоже заработало.

http://img-fotki.yandex.ru/get/4307/nzeemin.3/0_3e454_f2473fe8_M.jpg (http://fotki.yandex.ru/users/nzeemin/view/255060/)

ZEman
08.05.2010, 06:57
а под Win32 эмулятор тоже теперь будет с QT, или по старому сделаный будет ?

nzeemin
08.05.2010, 10:07
а под Win32 эмулятор тоже теперь будет с QT, или по старому сделаный будет ?

Можно оба варианта сразу выпускать -- в принципе, ничего не мешает.
До первого релиза под Qt мне нужно докрутить интерфейс -- пока очень многое не работает -- и изучить вопрос распространения Qt-приложений.

ZEman
08.05.2010, 10:21
а вообще разница будет ?
какой вариант эмулятора будет более быстрым ?

nzeemin
08.05.2010, 11:05
а вообще разница будет ?
какой вариант эмулятора будет более быстрым ?

Разница будет только в интерфейсе, в производительности разницы быть не должно -- обе версии используют для эмуляции один процессор, без многопоточности.

Qt-версия (пока) будет послабее -- без отладочных окон, только экран и клавиатура.

nzeemin
09.05.2010, 20:56
Сохранение настроек сделал.
Клавиатуру размапил, но пока не полностью.

http://ukncbtl.googlecode.com/files/QtUkncBtl-beta18-Windows.zip
Тут вроде бы все необходимые библиотеки есть. Под какими версиями будет работать -- не знаю, надо проверять. Собиралось на Windows Server 2008.
Под Windows XP Home Edition -- работает.
Под Windows 98 -- НЕ работает: "The QT4CORE.dll is linked to missing export KERNEL32.dll: SetFilePointerEx."

http://ukncbtl.googlecode.com/files/QtUkncBtl-beta18-linux.tar.gz
Положил сюда Qt-библиотеки, но будет ли это запускаться -- не знаю, мой опыт разработки под линуксом пока маловат чтобы сказать точно. Собиралось под Ubuntu 10.04.
Под Ubuntu 10.04 Netbook Edition -- работает (пруфпик http://img-fotki.yandex.ru/get/4209/nzeemin.3/0_3e4cd_99855572_orig).

Для Mac OS X нужно собирать бандл -- с этим пока не разбирался, так что версия для макинтоша будет позже. И это будет версия только для intel-based macs.

nzeemin
10.05.2010, 22:07
Как и обещал, версия под Mac OS X, intel-based only.
http://code.google.com/p/ukncbtl/downloads/detail?name=QtUkncBtl-beta18-mac.zip
Скачать, разархивировать, запустить QtUkncBtl.app.
Обратите внимание -- файл uknc_rom.bin должен лежать рядом с QtUkncBtl.app, если перемещаете куда-то -- несите их вместе. В будущих версиях постараюсь внедрить образ пзу внутрь бандла.

UPD 2010-05-11: Собрал и добавил также 18-ю бету основной версии приложения (которое НЕ-Qt).
Инсталлер: http://code.google.com/p/ukncbtl/downloads/detail?name=UKNCBTL-beta18.zip
Просто бинарники: http://code.google.com/p/ukncbtl/downloads/detail?name=UKNCBTL-beta18-bin.zip

nzeemin
11.05.2010, 02:19
Ну так, а версия для Win98 будет? На мой IBM-совместимый комп другую не поставишь. Да и работа с реальными дискетами двойной плотности возможна только в Win98.

А вот для вас плохая новость. Хоть мне и удалось скомпилировать не-юникодную версию UKNCBTL, но работать под Windows 98 она отказалась:

Error Starting Program
The UKNCBTL.exe file expects a newer version of Windows. Upgrade your Windows version.

Оказывается, это ограничение MS Visual C 2008: Windows 9x is no longer a supported target platform: http://www.msfn.org/board/topic/112283-visual-studio-2008-and-windows-9x/

svofski
11.05.2010, 04:15
Как и обещал, версия под Mac OS X, intel-based only.
http://code.google.com/p/ukncbtl/downloads/detail?name=QtUkncBtl-beta18-mac.zip
Скачать, разархивировать, запустить QtUkncBtl.app.
Обратите внимание -- файл uknc_rom.bin должен лежать рядом с QtUkncBtl.app, если перемещаете куда-то -- несите их вместе. В будущих версиях постараюсь внедрить образ пзу внутрь бандла.

Запустил в Леопарде, работает. Прикольно. А есть (будет) фуллскрин?

nzeemin
11.05.2010, 06:58
Запустил в Леопарде, работает. Прикольно. А есть (будет) фуллскрин?

Спасибо. Фулскрина пока нет. Пока не знаю когда.

[bETA]mEN
11.05.2010, 11:26
работать под Windows 98 она отказалась
А зачем в 2010 году заботиться о совместимости с win98? Более актуальный вопрос: А будет 64-bit сборка?

nzeemin
11.05.2010, 13:15
Вообще конечно большой вопрос -- под какие системы ещё нужен этот эмулятор?
Qt позволяет расширить текущий список (Windows, Linux, Mac OS X) такими вариантами:
- Embedded Linux QWS (Mips, PowerPC)
- Embedded Linux X11 (ARM)
- Windows CE 5.0 и выше
- Symbian
- Maemo 5

Вопрос пока скорее теоретический -- чем больше поддерживаемых систем тем больше геморроя при выпуске версий.

В ближайшее время НЕ обещаю новых версий под другие платформы и конфигурации.
Из интереса посмотрю как оно компилируется для Windows CE и для Embedded Linux, но если будут существенные трудности -- сильно углубляться пока не стану.

В общем-то любой желающий может взять исходники и собрать под то что хочется. Проблемы совместимости решаются условной компиляцией в файлах stdafx.h и Common.h -- возможно, их придётся дотачивать.

Но основная проблема для кросс-платформенности сейчас -- это поддержка только little endian платформ. И эту проблему за пару вечеров не решить.

ZEman
11.05.2010, 20:38
вообщето эмулятор и так прекрасно работает на х64 windows 7, зачем 64битная сборка ?

проф
12.05.2010, 11:12
Под SIMBIAN надо бы. И уж тем более под Винмобайл и Андроид.

nzeemin
12.05.2010, 11:48
Под SIMBIAN надо бы. И уж тем более под Винмобайл и Андроид.

Имеет ли смысл портировать эмулятор под мобильные девайсы? Экран там как правило маленький, работа с файлами крайне неудобна. Пользователей будет очень мало. Получается, что только ради самого факта портирования.
Могу понять ещё -- под более-менее продвинутые системы типа Windows Mobile или Maemo.

Что касается Андроида -- насколько я знаю, для него пока нет Qt. Энтузиасты переносят, но там пока всё довольно сыро. Будут версии хотя бы на уровне беты -- можно и под него выпустить.

Doronetty
12.05.2010, 12:16
На мой взгляд лучше пока ничего никуда не портировать, а сделать, например, э-э-э... поддержку например магнитофона, ведь портирование - вещь не приоритетная, а времени и сил отнимет кучу. А ведь ещё и BKBTL есть, который пока стоит на месте...

AlecV
12.05.2010, 13:38
Дак оно сейчас под Линух собирается ?

Vamos
12.05.2010, 22:10
18 версия не Qt вызывает ошибку при запуске под Win XP pro rus SP3

ZEman
13.05.2010, 05:04
nzeemin, пожалуйста, не отвлекайтесь на всякую ерунду с портами.
лучше доделать эмулятор а потом уже портировать на что угодно.

Doronetty
15.05.2010, 20:06
Полностью поддерживаю!!!
В конце концов PC в Виндами есть у каждого, а про всякие андроиды я вообще только недавно услышал ;)

nzeemin
18.05.2010, 09:14
18 версия не Qt вызывает ошибку при запуске под Win XP pro rus SP3

Что за ошибка? Можно подробнее?

Vamos
18.05.2010, 13:27
Что за ошибка? Можно подробнее?

Вчера заново скачал UKNCBTL-beta18-bin.zip, распаковал, запустил - все работает.
Видимо при скачивании был сбой, хотя архиватор не ругнулся.

Было серое окошко с текстом: "приложение UKNCBTL.exe вызвало ошибку и будет закрыто"

nzeemin
18.05.2010, 14:03
На мой взгляд лучше пока ничего никуда не портировать, а сделать, например, э-э-э... поддержку например магнитофона, ведь портирование - вещь не приоритетная, а времени и сил отнимет кучу. А ведь ещё и BKBTL есть, который пока стоит на месте...

От перехода на Qt по идее можно получить пользу не только в связи с возможностью сборки под другими системами. В Qt есть такая вещь как скриптинг -- к программе можно прикрутить возможность вызывать методы программы извне, скриптом похожим на JavaScript. Это может быть полезно например для организации набора тестов. Да и пользователи я думаю найдут этому применение.

Vamos
18.05.2010, 17:56
Пока разбирался почему в 18 версии (не Qt) после загрузки RT-11 не работают драйверы SL и LD (причина в том что, эмулятор показывает защиту от записи, хотя на файлах образов атрибут "только чтение" снят.) решил проверить это на версии Qt. В итоге один раз эмулятор (Qt) запустился и с драйверами та же ситуация.
Все последующие попытки запуска эмулятора версии Qt заканчиваются окошком с текстом:
"QtUkncBtl.exe - обнаружена ошибка. Приложение будет закрыто."
И еще я вспомнил, что когда скачал 18 версию, то сначала запускал версию Qt (несколько раз), а потом обычная при первом же запуске выдала окошко с тем текстом.

nzeemin
27.07.2010, 23:30
Для удобства отладки, блок работы с лентой сделал вот таким. На графике видим фрагмент пилот-тона.

http://img-fotki.yandex.ru/get/5103/nzeemin.4/0_434d2_3750b343_XL.jpg

Сегодня наконец-то в первый раз загрузился с ленты.
(Пока грузится только UKNC_VERT.wav, ещё начинает UKNC_KLAD.wav но падает.)

Vamos, действительно, в beta-18 в процедуре открытия файлов есть ошибка. Исправление в следующей бете. Beta-19 будет уже скоро.

BYTEMAN
28.07.2010, 11:12
ещё начинает UKNC_KLAD.wav но падает.

Клад у меня даже на реальном УКНЦ не грузится, так что всё норм :). Пробуйте мой SAV2WAV ;)

Vamos
28.07.2010, 17:51
Beta-19 будет уже скоро.

Если можно добавьте в исходниках Memory.cpp регистры 176644 и 176646 аналогично последовательному и параллельному портам или сетевому адаптеру. Драйвер GD.SYS их использует, а если устройство на шине отсутствует то при загрузке RT-11 драйвер не проходит установку.

nzeemin
28.07.2010, 18:16
Добавил. Можно подробнее -- что за GD.SYS -- это отладчик какой-то?
Как он использует упомянутые регистры?

Beta-19: (см. на два сообщения ниже)

Vamos
28.07.2010, 22:12
Добавление регистров не помогло.


GD.DSK диск с драйвером эмулятора КГД (не КЦГД) для ДВК - GD.SYS .
На UKNCBTL драйвер не устанавливается при загрузке системы, на "железе" все работает.
При загрузке системы, на "железе" отображаются две строки:

GD V04.00 [AI] Драчев А.И.
SL V08.00 [SW] Сторожевых С.В.

далее выполняем команду:

.SET GD ON

экран становится черным - мы в режиме эмуляции КГД.

--------------------------------------------------------------

На диске JEK.DSK графический редактор JEK.SAV, при прорисовке картинки LE.JEK не прорисовывается третья заливка. Картинки в эмуляторе и на "железе" отличаются количеством цветов.

Запуск графического редактора:

.RU MU0:JEK.SAV
*MU0:LE.JEK

Vamos
29.07.2010, 01:08
Посмотрел последние исходники, регистры были добавлены на шину ПП (как я понял), а находятся они на шине ЦП.



Пока грузится только UKNC_VERT.wav

У меня еще загрузились оба Бэйсика UKNC_CBASIC.wav и UKNC_DBAS.wav

nzeemin
29.07.2010, 03:21
Посмотрел последние исходники, регистры были добавлены на шину ПП (как я понял), а находятся они на шине ЦП.

Сорри -- поторопился. Во вложении обновлённый exe.

Vamos
30.07.2010, 00:30
Во вложении обновлённый exe

Теперь драйвер загружается и работает.
А вот графические пакеты ТСТ1 и ТСТ2 с диска GD.DSK графики не рисуют.

ZEman
01.08.2010, 20:52
nzeemin, я незнаю в чём дело, но у меня почемуто не запускается бета 19, вообще никак.
двойной щелчок по экзешнику и ничего, даже в процессах не появляется.
проверил бету 17 и QtUkncBtl-beta18 - обе прекрасно запускаются и BKBTL-beta9 тоже отлично работает.
а вот бета 19 никак.
в чём может быть причина ?
использую windows 7 x64 ultimate.

[bETA]mEN
01.08.2010, 20:59
использую windows 7 x64 ultimate.
у меня на windows 7 x64 pro beta 19 запускается без проблем.

ZEman
01.08.2010, 21:17
не пойму в чём дело, директ последний стоит, библиотеки все наместе...
beta 17 и 18 нормально загружаются.
а 19ая не хочет.
главное и ошибки то никакой нет, винда ничё не орёт, авира вирусов в папке не находит.
в чём может быть проблема никак не пойму. :(

гм, бета 18 оказывается тоже не работает у меня (работает QtUkncBtl-beta18) а 17ая и то что до неё было запускаются.

Vamos
05.01.2011, 20:30
У меня просьба к NZEEMIN.
Сделайте пожалуйста в эмуляторе СТЫК С2 и сетевую карту на СОМ порты.

nzeemin
29.05.2011, 14:02
не пойму в чём дело, директ последний стоит, библиотеки все наместе...
beta 17 и 18 нормально загружаются.
а 19ая не хочет.
главное и ошибки то никакой нет, винда ничё не орёт, авира вирусов в папке не находит.
в чём может быть проблема никак не пойму. :(

гм, бета 18 оказывается тоже не работает у меня (работает QtUkncBtl-beta18) а 17ая и то что до неё было запускаются.

Попробуйте бинарник из этого сообщения:
http://zx.pk.ru/showpost.php?p=389391&postcount=9
Там сделана статическая линковка к CRT.

ZEman
30.05.2011, 06:23
спасибо, этот билд эмулятора прекрасно работает :)
можно узнать список изменений для новой беты ?

nzeemin
30.05.2011, 11:22
спасибо, этот билд эмулятора прекрасно работает :)
можно узнать список изменений для новой беты ?

Ну это как бы не новая бета, просто тестовая сборка.
Вообще изменения можно отслеживать тут: http://code.google.com/p/ukncbtl/updates/list
В основном это поддержка инвертированных образов винта и Стык С2.

nzeemin
21.06.2011, 21:52
Давненько не выкладывал релизов.

http://ukncbtl.googlecode.com/files/UKNCBTL-beta20.zip

Что нового:

Поддержка инвертированных образов винчестера
Стык С2 на COM-порт, диалог настроек
IDE -- реализована команда IDENTIFY DRIVE
Параллельный порт (пока просто складывание исходящих байтиков в файл)

Vamos
21.06.2011, 23:05
nzeemin, а сетевой адаптер? Надеюсь к следующей неделе (если комплектующие доставят) будет готов переходник на СОМ порт РС. Надо будет как-то тестировать.

Titus
22.06.2011, 00:02
А точные такты процессоров и железа?)

nzeemin
09.07.2011, 13:15
Суббота -- взял MESS из svn и откомпилировал пользуясь инструкциями micko. Поправил в драйвере uknc настройки памяти, сделал получение начальных PC и PSW для PPU. В отладчике стало можно пройти по шагам первые инструкции из ПЗУ.

Воскресенье -- реализовал порты 177010 и 177014 -- заработал цикл копирования ПЗУ в ОЗУ ПП, проходит стартовые тесты ПЗУ и ОЗУ.

Понедельник -- реализовал ещё часть портов ПП, сделал процедуру отрисовки экрана. Дальше стал кропотливо сравнивать поведение с тем что показывает UKNCBTL. Но тут случился облом. Оказалось, что процессор T11, имеющийся в наличии, местами недотягивает до ВМ2 -- в частности, инструкции ASH нету как факта. В общем, сначала нужно реализовать ВМ2 в стиле MESS, а там видно будет.

Вторник -- micko прислал для кода эмуляции T11 патч "который сделал какой-то итальянец" -- инструкции MUL, DIV, ASH, ASHC. Походу, процессор в целом заработал нормально. Реализовал ещё часть портов ПП, на скорую руку сделал запуск ЦП. Дальше нужно смотреть как ЦП шагает, там пока ни одного порта не реализовано. Ясно, что для MESS придётся делать свою реализацию ВМ2.

Среда -- прошагал стартовый код ЦП, споткнулся на инструкции MFUS. Добавил инструкции MFUS и MTUS в код T11. Не помогло. ЦП при старте должен крутиться в режиме HALT. На экране пока ничего нет.

Суббота -- проверил что экран формируется правильно. Сделал цвет 8 палитры серым вместо чёрного -- чтобы видеть что хотя бы фон формируется.

http://img-fotki.yandex.ru/get/4705/7448436.6/0_5b718_c05fa529_L

BYTEMAN
09.07.2011, 13:20
nzeemin, т.е. скоро УКНЦ появится в mess?

nzeemin
09.07.2011, 15:15
nzeemin, т.е. скоро УКНЦ появится в mess?

Пока не могу обещать. Возможно.

Насколько я сейчас вижу, нужно делать реализацию ВМ2 в MESS. Сейчас для этого нужно взять код процессора T11, добавить туда разделение режимов на USER/HALT, сделать поле памяти в 128 КБ вместо 64 КБ (16 линий адреса + сигнал SEL), команды EIS, FIS, HALT-режима, прерывания. Без этого можно разве что налепить ещё пару заплаток на код T11, но как ВМ2 он всё равно не заработает.

nzeemin
25.07.2011, 12:22
Примерно 24 июля 2006 года я начал работу над эмулятором УКНЦ.

Vamos
25.07.2011, 21:24
Примерно 24 июля 2006 года я начал работу над эмулятором УКНЦ.
Поздравляю ! И огромное спасибо за эмулятор.

Dota
26.07.2011, 17:15
Добрый день уважаемые форумчане и любители эмулятора УКНЦ. Прежде всего хочу выразить благодарность автору за эмуляцию УКНЦ.
Прошу о помощи! Подскажите пожалуйста более подробно и иллюстративно, как можно запустить диск с играми на эмуляторе УКНЦ beta 20. Сколько мучаюсь, но у меня ничего не получается.
С Уважением.

ZEman
27.07.2011, 12:48
Dota, да там всё просто.
вот держи пояснения:

Dota
27.07.2011, 17:01
ZEman, Спасибо но ничего не получается команда набора глючит и срывается и непонятно чтото там грузится. мне бы иллюстративно посмотреть.

---------- Post added at 17:01 ---------- Previous post was at 16:53 ----------

Да и еще вопросик. Кто знает игра "замок гоблинов" была только на укнц или еще на каких либо платформах типа бк, спектруум. Припоминаю тот факт, что я играл в нечто похожее в 87-88 годах в тогдашних компьютерных клубах, как помню игры передавались по сети был еше цветной монитор электроника Ц-202 черная клавиатура и черный блок питания. Но тогда в те года я так и не уточнил название игры. Помню что по лабирину бегал человечек стрелял и пробивал кирпичные стены и доставал клад.

nzeemin
27.07.2011, 18:51
Dota, прошу прощения что не ответил, но если нужна помощь -- задавайте конкретные вопросы и описывайте точнее что именно не работает.

Игра "Замок гоблинов" -- это один из множества вариантов "Lode Runner", который был портирован в том или ином виде очень на многие платформы. Например, на БК был "Клад" и другие варианты.

Dota
27.07.2011, 19:35
nzeemin, Добрый вечер! Никак не получается запустить игровой диск на эмуляторе УКНЦ.
ZEman, прислал инструкцию как запустить игры, все делаю как описано, но при наборе команы DIR MZ1:*.sav проихходит срыв курсора (нажимаешь на кнопку и обна буква появляется несколько раз). Прошу более подробно описать как запускать игры на УНКЦ. С уважением.

nzeemin
27.07.2011, 19:51
Dota, нажмите кнопку включения звука -- это выравнивает скорость работы эмулятора, нажатия клавиш будут восприниматься нормально.

Dota
27.07.2011, 21:39
Спасибо попробую.

Shadow Maker
19.08.2011, 12:12
У меня вопрос - как пользоваться Save state? Вот загрузил я его, а дальше что делать? Все застыло и не двигается. Как запустить?

nzeemin
19.08.2011, 12:24
У меня вопрос - как пользоваться Save state? Вот загрузил я его, а дальше что делать? Все застыло и не двигается. Как запустить?

Я дико извиняюсь, но Save/Restore state никогда толком не работал, и никак руки не дойдут починить.

Titus
19.08.2011, 12:51
У меня вопрос - как пользоваться Save state? Вот загрузил я его, а дальше что делать? Все застыло и не двигается. Как запустить?
А кнопочку RUN надавить не пробовал?

Shadow Maker
19.08.2011, 12:59
Пробовал. Точнее я её даже не отжимал. Толку нет.

nzeemin, ну там поди делов на пять минут, может выделите время?

save state во вложении. кстати попутно - имеется неудобство такого плана - в сохраненке стоит фильтр *.uknc, а файлы сохраняются вообще без расширения. Тоже попутно надо было поправить.

Shadow Maker
31.08.2011, 15:58
пингую, может дошли руки?

nzeemin
21.09.2011, 14:04
пингую, может дошли руки?

Сорри. На текущей работе высокая загрузка, не успеваю что-либо ещё делать.

hobot
02.10.2011, 15:30
Пускай тут повисит - возможно пригодится для проверки, если функция
заработает, там начало 8-го уровня в игре Knight :redface:

Titus
02.10.2011, 15:52
Кстати, в UKNCBTL до сих пор с ошибкой работают команды ASH и ASHC. У меня версия от 28-08-2010.

Alex_K
02.10.2011, 16:14
Кстати, в UKNCBTL до сих пор с ошибкой работают команды ASH и ASHC. У меня версия от 28-08-2010.
Конкретно что, пример нужен. Ибо это переделывалось еще 26.12.2009. Встроенные тесты в УКНЦ и тест 791402 из ТМОС ошибок не выявляют.

hobot
02.10.2011, 16:19
Ибо это переделывалось еще 26.12.2009
А можно эту сборочку где нибудь взять?

Alex_K
02.10.2011, 16:26
А можно эту сборочку где нибудь взять?

http://code.google.com/p/ukncbtl/downloads/list?can=1&q=&colspec=Filename+Summary+Uploaded+ReleaseDate+Size +DownloadCount - там сборки с бета 9 по бета 20. Соответственно бета-15 с уже фиксенным EIS, далее там ничего не изменялось. Гарантированно правильно работает только под Win32, а как в x64, Mac OS и Linux - не знаю, там уже QtUkncBtl.

Titus
02.10.2011, 17:03
Конкретно что, пример нужен. Ибо это переделывалось еще 26.12.2009. Встроенные тесты в УКНЦ и тест 791402 из ТМОС ошибок не выявляют.

Попробуйте мой тестик.

hobot
02.10.2011, 17:04
Alex_K, спасибо! У меня катастрофически не получалось увидеть такой полный список( ) Штука в том (могу баг-репорт в лс написать), что есть один плавающий ошибк, который отсутствует в сборке за ноябрь 2009 (где ещё нет харда), но появляется в более поздних. Я конечно только про игры говорю сейчас (специфика).


Попробуйте мой тестик.

Alex_K
02.10.2011, 17:32
Попробуйте мой тестик.
А исходники можно ? А то так ничего не понятно.

---------- Post added at 17:32 ---------- Previous post was at 17:30 ----------

И кстати. На реальном УКНЦ работает без проблем?

Titus
02.10.2011, 17:48
А исходники можно ? А то так ничего не понятно.

---------- Post added at 17:32 ---------- Previous post was at 17:30 ----------

И кстати. На реальном УКНЦ работает без проблем?
Нет, исходники нельзя) Это набросок. Да и не поможет вам исходник, т.к. там просто идет перебор всех комбинаций сдвига, и в какой из них ошибка - выявить невозможно, т.к. финальное число - это сумма всех предыдущих.

На реальном работает.

Да я вам и так скажу, почему ошибка.
Счетчик сдвига - это 6-битное число со знаком -32..31.
Тогда как в эмуляторе делается следующее:

src |= (src & 040)?0177700:0;

Как мы видим, если знак отрицательный, то он расширяется в старшие биты. Тогда как если знак положительный, то ничего не расширяется, а остается, как есть. Т.е. все биты 6..15 будут такие, как в операнде источнике.

Попробуйте поставить перед этой строкой такую, может заработает:

src = src & 0x3F;

Alex_K
02.10.2011, 18:33
Да я вам и так скажу, почему ошибка.
Счетчик сдвига - это 6-битное число со знаком -32..31.
Тогда как в эмуляторе делается следующее:

src |= (src & 040)?0177700:0;

Как мы видим, если знак отрицательный, то он расширяется в старшие биты. Тогда как если знак положительный, то ничего не расширяется, а остается, как есть. Т.е. все биты 6..15 будут такие, как в операнде источнике.

Попробуйте поставить перед этой строкой такую, может заработает:

src = src & 0x3F;

Спасибо! Заработало. Упустили этот момент.

Titus
02.10.2011, 18:48
Спасибо! Заработало. Упустили этот момент.
Пожалста)
Кстати, процессор написан достаточно точно в смысле совместимости по командам. Сами писали, или уже взяли готовые наработки?
Тогда как растактовка никуда не годится. Я бы сказал даже, что если захотите написать эмулятор с точными тактами, весь придется переделывать.

Alex_K
02.10.2011, 19:59
Кстати, процессор написан достаточно точно в смысле совместимости по командам. Сами писали, или уже взяли готовые наработки?
Тогда как растактовка никуда не годится. Я бы сказал даже, что если захотите написать эмулятор с точными тактами, весь придется переделывать.
Насколько я знаю, в качестве основы nzeemin брал исходники эмулятора БК. Потом уже процессор капитально переделывался. Написан в соответствии с результатами тестов на реальном УКНЦ. Введены режимы HALT и USER, переходы между ними. Уделялось внимание реакции процессора на нестандартные ситуации (Trap to 4 во время исполнения команды). В качестве алгоритма исполнения команд бралось описание из книги И.В.Захарова "Тех.обслуживание и эксплуатация микроЭВМ ЭЛЕКТРОНИКА-60М". Там система команд довольно хорошо описана. Естественно все проверено на реальном УКНЦ.
По растактовке действительно сложно, т.к. шина асинхронная и узнать точные тайминги команд невозможно. ОЗУ распределяется между видеоадаптером и процессором, поэтому в зависимости от того в какой момент процессор запросил чтение слова, это время может разниться в 2-3 раза. На магистрали ПП слово из ОЗУ вообще читается за два приема, так что код из ОЗУ выполняется значительно медленнее, чем из ПЗУ.

Titus
02.10.2011, 20:02
бралось описание из книги И.В.Захарова "Тех.обслуживание и эксплуатация микроЭВМ ЭЛЕКТРОНИКА-60М". Там система команд довольно хорошо описана. Естественно все проверено на реальном УКНЦ.
По растактовке действительно сложно, т.к. шина асинхронная и узнать точные тайминги команд невозможно. ОЗУ распределяется между видеоадаптером и процессором, поэтому в зависимости от того в какой момент процессор запросил чтение слова, это время может разниться в 2-3 раза. На магистрали ПП слово из ОЗУ вообще читается за два приема, так что код из ОЗУ выполняется значительно медленнее, чем из ПЗУ.
Есть ссылка на книжицу?

Узнать-то время можно, только это все надо долго изучать.

Alex_K
02.10.2011, 20:12
Есть ссылка на книжицу?
Есть - ссылка (http://publ.lib.ru/ARCHIVES/Z/ZAHAROV_I._V/_Zaharov_I.V..html).

Patron
02.10.2011, 21:01
По растактовке действительно сложно, т.к. шина асинхронная и узнать точные тайминги команд невозможно.Почему же невозможно..

При наличии осциллографа (хотя, конечно, лучше использовать логический анализатор) можно провести комплексное исследование таймингов и вывести обобщённые формулы для определения точной продолжительности каждой команды, как функции от тактовой частоты процессора, задержки памяти и состояния конвеера предвыборки.

Начать можно хоть сейчас.

У кого из фанатов PDP-11 есть под рукой и рабочий процессор, и осциллограф ?

hobot
03.10.2011, 05:36
Спасибо! Заработало. Упустили этот момент.
Сразу вопрос - исправление доступно будет для фанатов? Может плавающий глюк о котором я писал происходил именно по этой причине?
Спасибо!

Игрушки проверенные в эмуляторе, можно взять тут (http://www.old-games.ru/forum/showpost.php?p=400383&postcount=1). Ничего пока нового (всё Арсением или мной уже выкладывалось).

Alex_K
03.10.2011, 10:50
Сразу вопрос - исправление доступно будет для фанатов? Может плавающий глюк о котором я писал происходил именно по этой причине?
Спасибо!
Исправление могу сбросить в репозиторий, выложить могу exe-шник, но только собран он на VC++ 2008 Express Edition, а Никита собирает на VC++ 2005 со статической компоновкой библиотек (так размер exe хоть и побольше, но работает побыстрее).
Вряд глюки происходили по этой причине, программисты обычно знают об использовании только 6-ти разрядов и вряд ли используют больше, но всякое может быть. Так что по глюку надо смотреть конкретно в эмуляторе в отладчике.
Реализовано многое хоть и с большой долей совместимости, но абсолютно точно все сделать нереально, где нибудь глюки и есть. Знаю точно, что остались они в реализации дисковода (1801ВП1-128), бывает подвисает во время чтения, бывает не сбрасывает буфер дорожки после записи в файл. Есть проблемка с каналами 0,1,2 - видно в ТурбоБейсике в программе демонстрации графики. Еще надо добить реализацию сброса по сигналам INIT и DCLO.
Просто на это надо много свободного времени, а его увы, нет.

Titus
03.10.2011, 12:44
Реализовано многое хоть и с большой долей совместимости, но абсолютно точно все сделать нереально, где нибудь глюки и есть. Знаю точно, что остались они в реализации дисковода (1801ВП1-128), бывает подвисает во время чтения, бывает не сбрасывает буфер дорожки после записи в файл. Есть проблемка с каналами 0,1,2 - видно в ТурбоБейсике в программе демонстрации графики. Еще надо добить реализацию сброса по сигналам INIT и DCLO.
Просто на это надо много свободного времени, а его увы, нет.

Не согласен, что нереально. Просто сложно и много работы.
Можно ссылку на бейсик с той демонстрацией, в которой глюки? И как ее запускать.

Alex_K
03.10.2011, 14:18
Можно ссылку на бейсик с той демонстрацией, в которой глюки? И как ее запускать.
ТурбоБейсик находится на диске turbo.dsk. Грузитесь, даете команду TURBO в RT-11. Затем в Бейсике загрузите файл TESTGR.BAS и запустите. В главном меню в надписи "Circle Demo" пропущена буква "i". Слева также есть буковка "r". Эти надписи скопом вываливаются через канал 0. Видно что-то происходит при переполнении буфера. Наверное где-то нарушена работа с прерываниями. На реальной машине прерывание происходит примерно где-то через одну команду после установки обеих разрядов 6 и 7. В эмуляторе оно запрашивается сразу же. Может и в этом собака порылась. К тому же механизм выдачи запроса на прерывания отличается у канала 0 от каналов 1 и 2, но в эмуляторе это учтено.

Если есть желание, можно скачать репозиторий и поковыряться в Visual C++. Отладочная консоль есть, повставлять свои команды, чтобы проследить как заполняется буфер канала 0 в ПП и как п/п обработки прерывания реагирует на это.

Titus
03.10.2011, 14:51
ТурбоБейсик находится на диске turbo.dsk. Грузитесь, даете команду TURBO в RT-11. Затем в Бейсике загрузите файл TESTGR.BAS и запустите.
Легко сказать - запустите. Я ведь специально спросил 'КАК?'.
Да, нашел F3 - это загрузка.
Даже с трудом нашел, что CapsLock+Insert (!) - это компиляция.
Все, на большее меня не хватило. Запустить не смог.

А, все, нашел - Ctrl+Insert )

Alex_K
03.10.2011, 15:43
Легко сказать - запустите. Я ведь специально спросил 'КАК?'.
Так там же написано <F1>-помощь, жмем К1 и сразу же видим таблицу соответствий клавиш УКНЦ и IBM PC. <СТОП> - это F10 - выход в меню.

Titus
03.10.2011, 16:36
Так там же написано <F1>-помощь, жмем К1 и сразу же видим таблицу соответствий клавиш УКНЦ и IBM PC. <СТОП> - это F10 - выход в меню.
Вот именно. Многократная перекодировка. Сначала соответствие IBM-клавиш УКНЦ-шным. Потом соответствие УКНЦ-шных эмуляторно-IBM-ным опять. Причем, чтобы понять как проецируется ряд клавиш F6-F10 - надо поглядеть на последовательность этих клавиш на клавиатуре УКНЦ - ПОМ, УСТ, ИСП, СБРОС, СТОП. Что соответственно ложится на Delete, End, PageDown, Insert, PageUp. Вот такая вот загогулина получается.

Alex_K
03.10.2011, 16:46
Вот именно. Многократная перекодировка. Сначала соответствие IBM-клавиш УКНЦ-шным. Потом соответствие УКНЦ-шных эмуляторно-IBM-ным опять. Причем, чтобы понять как проецируется ряд клавиш F6-F10 - надо поглядеть на последовательность этих клавиш на клавиатуре УКНЦ - ПОМ, УСТ, ИСП, СБРОС, СТОП. Что соответственно ложится на Delete, End, PageDown, Insert, PageUp. Вот такая вот загогулина получается.
А виртуальная клавиатура на что?

hobot
03.10.2011, 18:14
Исправление могу сбросить в репозиторий, выложить могу exe-шник
Меня любой вариант устроит, я же сразу проверю (знаю уже что мне нужно запустить
и что не работает в последних сборках, но ОТЛИЧНО (!) работает в сборке за ноябрь 09 !!! и наоборот что работает в последней и не работает в ноябрьской. Конечно в плане теста ( что-бы не наращивать копии эмулятора лучше в рамках форума пока наверно, после проверки я бы сразу результат отписал к примеру)

__________ добавил

( В моём случае речь пока идёт только об играх ! )
И мне конечно проще всего забрать EXE и сразу запустить его =)

Titus
03.10.2011, 18:19
знаю уже что мне нужно запустить
и что не работает в последних сборках, но ОТЛИЧНО (!) работает в сборке за ноябрь 09 !!! и наоборот что работает в последней и не работает в ноябрьской.
В студию названия и программы, с указанием где не работают и как.

Alex_K
03.10.2011, 18:24
Добавил изменения в репозиторий.
Прилагаю EXE. Собран на VC++ 2008 Express Edition, поэтому не исключаю у некоторых проблемы в плане запуска из-за отсутствия библиотек.

Alex_K
03.10.2011, 18:46
знаю уже что мне нужно запустить
и что не работает в последних сборках, но ОТЛИЧНО (!) работает в сборке за ноябрь 09 !!! и наоборот что работает в последней и не работает в ноябрьской.
Обязательно выкладывайте эту информацию, ибо между 14-й и 15-й бетами процессор капитально переделывался, изменился алгоритм работы с прерываниями и были изменения в работе каналов К0,К1,К2.

hobot
03.10.2011, 19:20
В студию названия и программы, с указанием где не работают и как.
Ура! Три раза ! Я на самом деле уже несколько раз писал об этом в том числе в ЛС,
ну да ладно... и так опишу подробно:

Проблема номер 1 (!) В последней 2.0 версии за это лето :
Залипание клавиш - не такое когда "звук выключен", вовсе нет, глухое такое, залипание, до писка, в игре "Звёздный Патруль", "Пасьянс" и просто в системе - но, время когда это происходит всегда разное (!!!), иногда приводит к зависанию полному, иногда что называется отмерзает, при этом упр+ц работает. Чаще всего
залипают клавиши стрелок, пробел и алфавитные "С" "М" "ь". То есть что-бы спокойно поработать в системе и поиграть в просто игры (что-бы это не значило) я пользуюсь сборкой за ноябрь 2009 где реально ни разу этого пока не случилось ( я просто не пользуюсь жестким диском который в той сборке не реализован - поэтому для меня не критично).

ПРОБЛЕМА 2: НО!!! Пакеты игрушек от ИТО, не работают в ней (виснет стартовое меню сразу после отрисовки указателя) и отлично работают в последней.

Вот такие с игрушками пироги. От этого держу на харде несколько версий эмуляторов, но реально для системных целей и игр пользуюсь 2009 года сборкой, а ИТОшные диски в ней виснут и их гоняю только на последней. Если что-то не так явно описал жду вопросов,

поэтому не исключаю у некоторых проблемы в плане запуска
спасибо за файл, буду проверять...

Есть ещё проблема с одним из загрузчиков, но пока этого достаточно я
думаю, дискеты я на форуме выкладывал в теме "глюки в играх" или вот
в посте выше ссылка есть, где все они в одном месте лежат. Интересно,
отпишитесь, кто какую версию эмулятора использует?

---------- Post added at 19:20 ---------- Previous post was at 18:59 ----------


Обязательно выкладывайте эту информацию
С запуском проблем не было (подсунул ром из летнего архива) проблем 1 всё та же
( я и не надеялся на скорую и лёгкую победу "смайл" ), с игропакетами всё ОК.
В общем всё как было...:frown:

Alex_K
03.10.2011, 19:47
Проблему № 1 (с клавиатурой) знаю. Случилась после ввода изменений в раскладку клавиатуры. Была сделана русская и латинская раскладки. И если между нажатием и отжатием клавиши меняется алфавит по управляющим кодам РУС(код 14) и ЛАТ(код 15), то при отжатии клавиша уже может передавать другой скэн-код, потому и подвисает (на самом деле нажатая входит в автоповтор).
То что в новых сборках решилась проблема №2, то это очень радует.
Хотелось бы знать, что за загрузчик и какие проблемы. Что-то читал про АДОС, не эта ли?

hobot
03.10.2011, 20:32
Нет, АДОС - пока в сторонку отложим =) ИМХО: Не критично.

Сделайте по моей схеме и вы сами всё увидите, не влияет в какой сборке запускать,
везде картина такая:
Загрузитесь с этой дискеты (http://zx.pk.ru/showpost.php?p=283419&postcount=1) и запустите игру "шпион" любую версию с любым названием или
тот-же "Звёздный патруль" ( у него не бежит уже заставка )- таймер стоит (!) жмёшь клавишу работает (но таймер глухо стоит) . (проблема 1 тут также присутствует). Почему именно эти игры? Там видимо к таймеру привязаны в "патруле" движение корабля, обзоры и прыжки суперклингона, в "шпионе" Высотина движение лифтов.

Загрузитесь с любой другой системки и запустите "патруль" или "шпион"
и остаётся только проблема 1 которая раздражает глухо, но с другой стороны это даже прикольно две виртуальные УКНЦ иметь и у каждой свои глюки =)

Не оставляю попыток найти сверх рабочую комбинацию (СБОРКА ЭМУЛЯТОРА)+(ЗАГРУЗОЧНАЯ ДИСКЕТА)+(ИГРЫ) таким образом и осуществляю проверку, про проблему (1) писал Зимину по мылу (баг-репорт) и тут в соседних темах (1-раз как
минимум), так что теперь я думаю все сочувствующие в курсе (включая авторов
эмулятора) =)

---------- Post added at 20:32 ---------- Previous post was at 20:29 ----------

---------------------
выходит пока рецепт один
играем в "просто" игрушки на сборке 2009

---------------------
в игропакеты ИТО в самой свежей (там кстати проблема 1 отсутствует, подозреваю
они наглухо свой драйвер клавиш вообще машине подсовывают 100% =)

Alex_K
03.10.2011, 21:32
hobot, по поводу, игр KOSMOS и SPION. Они таймер не используют. Игры эти были написаны чисто для SJ-монитора и при переключении клавиатуры в специальный режим (бит 12 ячейки 044) они не переключают режим приостановления программы (бит 6 той же ячейки 044). Так как в SJ-мониторе бит 6 не используется, то и работают эти игры нормально. Но в FB-мониторе, а также в SB-мониторе, они оказываются неработоспособны. Достаточно найти команду BIS #10000,@#44 в исполнимом файле и заменить на BIS #10100,@#44, или установить бит 6 в слове по смещению 044 в нулевом блоке файла, и игры уже оказываются работоспособны. Так что никакой ошибки в эмуляторе здесь нет.

Кстати, а у Вас есть реальная УКНЦ? Или все проверяется только в эмуляторе?