Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Эмуляторы отечественных компьютеров (http://zx-pk.ru/forumdisplay.php?f=61)
-   -   Эмуляторы отечественных компьютеров (http://zx-pk.ru/showthread.php?t=13908)

shattered 13th April 2013 17:53

Коллега, не слишком ли много требований в одном письме?

Patron 13th April 2013 18:07

Quote:

Originally Posted by b2m (Post 592392)
ругается, чтобы я стрелками пользовался

В разных системах команд клавиатура 15ИЭ-00-013 генерит разные коды:

Code:

      ┌───────┬───────┬───────┐
      │1.    │2.    │3.    │
      │ V~~|  │  ^  │ ^\_|  │
      │      │  │  │      │
      ├───────┼───────┼───────┤
      │4.    │5.    │6.    │
      │ <───  │ ^\    │ ───>  │
      │      │  \  │      │
      ├───────┼───────┼───────┤
      │7.    │8. │  │9.    │
      │ <──┤  │  V  │ ├──>  │
      │      │      │      │
      ├───────┼───────┼───────┤
      │10 ╤  │11 │  │12 ^  │
      │  │  │  V  │  │  │
      │  V  │  .  │  ╧  │
      └───────┴───────┴───────┘

Code:

          система команд  # 2                  система команд  # 1
 клавиша  код      последовательность      код    последовательность

  1.      33  25    Esc  Cntrl/U            25    Cntrl/U
  2.      33 101    Esc  A                  34    Cntrl/\
  3.          15        Cntrl/M            15    Cntrl/M
  4.      33 104    Esc  D                  32    Cntrl/Z
  5.      33  10    Esc  Cntrl/H            10    Cntrl/H
  6.      33 103    Esc  C                  31    Cntrl/Y
  7.      33  24    Esc  Cntrl/T            24    Cntrl/T
  8.      33 102    Esc  B                  35    Cntrl/]
  9.      33  23    Esc  Cntrl/S            23    Cntrl/S
 10.      33 120    Esc  P                  26    Cntrl/V
 11.      33 121    Esc  Q                    2    Cntrl/B
 12.      33 122    Esc  R                  22    Cntrl/R



---------- Post added at 16:07 ---------- Previous post was at 16:01 ----------

Quote:

Originally Posted by b2m (Post 592392)
А у 1201.2 какая частота?

Там процессор 1801ВМ2 на частоте 6..12 МГц.

Чтобы узнать на какой частоте работает конкретная ДВК-2, ДВК-3 или ДВК-4 - на ней нужно запустить программу PDPCLK.SAV

...

b2m 13th April 2013 18:18

1 Attachment(s)
Образ диска Patron выкладывал тут: http://zx.pk.ru/showpost.php?p=591414&postcount=189
Прямая ссылка на архив с эмулятором: http://bashkiria-2m.narod.ru/files/emu.rar
Картинка
http://zx.pk.ru/attachment.php?attac...1&d=1365859021

Titus 13th April 2013 18:29

Quote:

Originally Posted by b2m (Post 592408)
Картинка

Вот у меня один раз так загрузиться только получилось.
Всегда виснет на часах. Ничего не нажимается.
Если отжать ДУП, то при нажатии Enter'а на часах, курсор переходит в начало строки, и дальше все равно висит.
Один раз зависло после SET SL ON

Patron 13th April 2013 20:09

У меня на 2х-ядерном проце под Vista_64 не виснет ( Emulation time = 10% ).

Но есть глюк эмуляции многокодовых посылок клавиатуры.

Если выключить SL и позажимать стрелки - результат должен быть таким:

Code:

.SE SL OFF

.$A$A$A$A$A$A$A$A$A$A$A$A$A$A$A$A$A$A$A$A$A^C

.$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B$B^C

.$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D$D^C

.$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C$C^C

.



---------- Post added at 18:09 ---------- Previous post was at 17:40 ----------

На одноядерном проце под XP - Emulation time = 120%, но тоже не виснет.

Titus 13th April 2013 21:49

Quote:

Originally Posted by hobot (Post 592125)
b2m, шикарно, особенно полноэкранный режим, но нужен срочный HELP!!!
У меня версия такая или я туплю? Повисон на запросе даты?

Хобот, как ты с этим справился?

b2m 13th April 2013 22:28

Quote:

Originally Posted by Patron (Post 592442)
Если выключить SL и позажимать стрелки - результат должен быть таким:

Да, похоже где-то есть проблема с передачей по линии. Иногда Esc выпадает, видимо и Day из-за этого ругается, что я не на стрелки нажимаю.

hobot 13th April 2013 23:28

Quote:

Originally Posted by Titus (Post 592485)
Хобот, как ты с этим справился?

Никак не справился. Не работает. Полноэкранный режим вот единственная положительная эмоция пока. Всё остальное грубо скажем - не пашет у меня )
Вообще никак. Повисон, через какое-то время вообще на клавиатуру перестаёт реагировать окно эмулятора. Клоунада какая-то, балаган ! )

Patron 14th April 2013 01:00

1 Attachment(s)
Новая версия системного диска DX с системой RT-11 v5.7, новой версией DAY.SAV, которая сама переключает терминал во 2-ю систему команд, оригинальным тетрисом для "Электроники 60" и другими играми.

...

Titus 14th April 2013 03:47

Quote:

Originally Posted by Patron (Post 592534)
Новая версия системного диска DX с системой RT-11 v5.7, новой версией DAY.SAV, которая сама переключает терминал во 2-ю систему команд, оригинальным тетрисом для "Электроники 60" и другими играми.

Все равно виснет на дате. Нельзя ли вопрос о дате убрать?

Alex_K 14th April 2013 13:02

1 Attachment(s)
Сделал загрузочный диск ТМОС с DX. Места почти нет, убрал все лишнее - тесты КЦГД, КГД, КЖД ...
Как ни странно, тест основных команд процессора 791401 пройден без ошибок. Но вот с прерываниями полный бардак. Неправильно работает 1801ВП1-035, которая сидит на адресах терминала. Если уж зарегистрировано прерывание, то оно пытается отработать по полной, даже если сбросить бит 6. Надо запустить тест 791404, там уже все видно будет. Кстати, после ошибки перезапуск по адресу 30124 не проходит, все время сваливается по прерыванию 60 от клавиатуры.

Также есть глюк - при начальном запуске в RS содержится значение 2350, а должно 350.

Patron 14th April 2013 13:48

Quote:

Originally Posted by Titus (Post 592558)
Нельзя ли вопрос о дате убрать?

В смысле - открыть образ в TotalCommander, навести курсор на STRTSB.COM, нажать F4, убрать последнюю строчку, сохранить файл, а после завершения редактирования подтвердить перезапись результата в образ..

b2m 14th April 2013 16:39

Обновил эмулятор, с клавиатурой должно быть лучше. KLOP и TETRIS вроде работают, но на доп. клавиатуре. С нубуками проблема будет. XONIX по прежнему не реагирует на клаву. Подозреваю, опрашивает флаг доп. клавиш, я его пока не сделал...

Alex_K 14th April 2013 17:15

Quote:

Originally Posted by b2m (Post 592760)
Обновил эмулятор, с клавиатурой должно быть лучше. KLOP и TETRIS вроде работают, но на доп. клавиатуре. С нубуками проблема будет. XONIX по прежнему не реагирует на клаву. Подозреваю, опрашивает флаг доп. клавиш, я его пока не сделал...

Клавиши, которые генерируют несколько кодов заработали. Появился и таймер. А вот как его отключить? Ибо FTMON надо запускать при выключенном таймере.

Patron 14th April 2013 17:52

Если зажимать стрелки, то при их отпускании иногда пролазят:
Code:

$A = ^\
$B = ^]
$C = ^Y
$D = ^Z

http://emulator.pdp-11.org.ru/misc/Arrows.png

---------- Post added at 15:52 ---------- Previous post was at 15:46 ----------

На эмулируемой ДВК-1 @ 5.3 МГц тест SPEED.SAV ( он есть на первом образе DX ) даёт такой результат:

Code:

.SPEED
 
ТЕСТ БЫСТРОДЕЙСТВИЯ
 
КОМАНДА СЛОЖЕНИЯ РЕГИСТР-РЕГИСТР
БЫСТРОДЕЙСТВИЕ (ТЫС.ОП./СЕК)      376
 
КОМАНДА СЛОЖЕНИЯ РЕГИСТР-ПАМЯТЬ
БЫСТРОДЕЙСТВИЕ (ТЫС.ОП./СЕК)      176
.


Alex_K 14th April 2013 18:01

Quote:

Originally Posted by Patron (Post 592787)
Если зажимать стрелки, то при их отпускании иногда пролазят:
Code:

$A = ^\
$B = ^]
$C = ^Y
$D = ^Z


Действительно, редко но пролазят. Это коды первой системы команд, пролазят также и на других клавишах (с ПФ1 по ПФ3 например). Но это уже относится к эмуляции 15ИЭ-00-013, может еще один глюк 15ИЭ.

b2m 14th April 2013 21:01

Quote:

Originally Posted by Alex_K (Post 592772)
Появился и таймер. А вот как его отключить? Ибо FTMON надо запускать при выключенном таймере.

Я как-то упустил из виду, что таймер включался вручную :) Сделаю кнопку на тулбаре.

---------- Post added at 20:59 ---------- Previous post was at 20:58 ----------

Исправил ещё одну ошибку, XONIX заработал.

---------- Post added at 21:01 ---------- Previous post was at 20:59 ----------

Quote:

Originally Posted by Patron (Post 592787)
На эмулируемой ДВК-1 @ 5.3 МГц тест SPEED.SAV ( он есть на первом образе DX ) даёт такой результат:

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

Alex_K 14th April 2013 21:05

Quote:

Originally Posted by b2m (Post 592855)
Я как-то упустил из виду, что таймер включался вручную :) Сделаю кнопку на тулбаре.

Надо тогда и переключатель "ПРОГРАММА/ПУЛЬТ", чтобы в пультовый отладчик вылазить.

b2m 14th April 2013 22:27

Для этого есть красная кнопка "Сброс", или Ctrl+Break

Alex_K 14th April 2013 23:02

Quote:

Originally Posted by b2m (Post 592878)
Для этого есть красная кнопка "Сброс", или Ctrl+Break

Неправильно работает. По всей видимости перенесена по аналогии с БК. Там (на БК) действительно на вход IRQ1 подается импульс. Здесь же сигнал должен удерживаться постоянно в положении ПУЛЬТ и сниматься в положении ПРОГРАММА. К тому же когда процессор находится в т.н. HALT-режиме (установлен разряд 10 в PSW), то прерывание по этому сигналу замаскировано. В положении ПУЛЬТ в ДВК можно по шагам отлаживать программу командой "P" в пультовом отладчике.

b2m 14th April 2013 23:22

Quote:

Originally Posted by Alex_K (Post 592897)
Здесь же сигнал должен удерживаться постоянно в положении ПУЛЬТ и сниматься в положении ПРОГРАММА.

А какой это даёт эффект? Я имею ввиду по сравнению с импульсом? После возвращения из режима HALT снова в него входить?

Quote:

Originally Posted by Alex_K (Post 592897)
К тому же когда процессор находится в т.н. HALT-режиме (установлен разряд 10 в PSW), то прерывание по этому сигналу замаскировано.

Да, тут недоработочка.
А вообще, что происходит если переключатель перевести в положение ПУЛЬТ, а потом обратно?

Quote:

Originally Posted by Alex_K (Post 592897)
В положении ПУЛЬТ в ДВК можно по шагам отлаживать программу командой "P" в пультовом отладчике.

Команда STEP в процессоре у меня пока не реализована - руки не дошли. :)

Alex_K 14th April 2013 23:34

Если активен сигнал IRQ1 (положение ПУЛЬТ) то при запуске по команде START программа не выполняется, а сразу же сваливается в пульт по адресу запуска. А команда STEP в отличии от START запрещает все прерывания на один шаг, поэтому одна команда стопроцентно выполнится, а если активен сигнал IRQ1, то после выполнения этой команды и произойдет выход в пульт. Таким образом отличие команд START и STEP состоит только в том, что STEP на один шаг запрещает все прерывания (также как и RTT при установленном бите T).

Patron 14th April 2013 23:58

Quote:

Originally Posted by b2m (Post 592855)
Если бы я ещё знал, какие числа должны быть...

Это они и есть.

При запуске SPEED.SAV результат должен быть таким:
Code:

.SPEED
 
ТЕСТ БЫСТРОДЕЙСТВИЯ
 
КОМАНДА СЛОЖЕНИЯ РЕГИСТР-РЕГИСТР
БЫСТРОДЕЙСТВИЕ (ТЫС.ОП./СЕК)      376
 
КОМАНДА СЛОЖЕНИЯ РЕГИСТР-ПАМЯТЬ
БЫСТРОДЕЙСТВИЕ (ТЫС.ОП./СЕК)      176
.



---------- Post added at 21:50 ---------- Previous post was at 21:47 ----------

Quote:

Originally Posted by b2m (Post 592909)
А вообще, что происходит если переключатель перевести в положение ПУЛЬТ, а потом обратно?

Ровно то же самое, что и по команде HALT

---------- Post added at 21:58 ---------- Previous post was at 21:50 ----------

Quote:

Originally Posted by Alex_K (Post 592897)
когда процессор находится в т.н. HALT-режиме (установлен разряд 10 в PSW), то прерывание по этому сигналу замаскировано.

Бит 10 блокирует все внешние прерывания, а бит 11 - блокирует только IRQ1.

У 1801ВМ1 есть глюк обработки прерываний - при возникновении любого аппаратного или программного прерывания старший байт PSW сохраняется в стеке вместе с младшим, потом обнуляется и уже ни при каких условиях обратно не восстанавливается.

При установленном бите 10 - прерывание зависания ( Trap_To_4 ) обрабатывается как HALT-trap - это единственное отличие HALT-моды ВМ1 от USER-моды.

b2m 15th April 2013 10:39

Quote:

Originally Posted by Patron (Post 592926)
У 1801ВМ1 есть глюк обработки прерываний - при возникновении любого аппаратного или программного прерывания старший байт PSW сохраняется в стеке вместе с младшим, потом обнуляется и уже ни при каких условиях обратно не восстанавливается.

А во всех доках стоит, что восстанавливается, если возврат происходит на адрес >=160000. Или в доках ошибка?

Alex_K 15th April 2013 11:18

Quote:

Originally Posted by b2m (Post 593021)
А во всех доках стоит, что восстанавливается, если возврат происходит на адрес >=160000. Или в доках ошибка?

А в каких доках? Это у 1801ВМ2 восстанавливается бит 8 в PSW, если адрес возврата по RTI/RTT >= 160000.

b2m 15th April 2013 13:47

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

Alex_K 15th April 2013 14:04

Quote:

Originally Posted by b2m (Post 593098)
Возможно это действительно была дока про ВМ2. Мне казалось, разница там только в процедуре начального пуска и прерываниях в HALT режиме.

Процессоры ВМ1, ВМ2, ВМ3 и по процедуре начального пуска, и по обработке фатальных ситуаций (приводящих в HALT-режим), и по HALT-режиму, и входу/выходу из него довольно резко отличаются.

hobot 17th April 2013 17:21

b2m, с помощью wcx-плагина от Patrona, и на базе существующего образа DX,
можно для проверки совместимости и просто ради интереса вот отсюда брать и гонять
классические символьные ДВКашные игры (практически все там есть).
http://archive.pdp-11.org.ru/ukdwk_a..._symbol_games/
http://hobot.pdp-11.ru/ukdwk_archive..._symbol_games/ - зеркало.

shattered 6th May 2013 03:13

Отдельной темы по ЕС1842 нет, ну и ладно.

Вопрос: конкретно чем отличается К1810ВМ86М от К1810ВМ86? Известно, что
Quote:

В качестве базового микропроцессора в ЕС 1842 использован микропроцессор К1810ВМ86М. В отличие от микропроцессора К1810ВМ86 он имеет ряд дополнительных команд (из системы команд 80286), дополнительные шины прерываний и некоторые дополнительные функции для реализации виртуальной памяти.

Функции микропроцессора 80286, не выполняемые в микропроцессоре К1810ВМ86М и КВП, осуществляются с помощью программного эмулятора, размещенного в защищенной области памяти. Таким образом, в ЕС 1842 создан полный функциональный аналог микропроцессора 80286.
Кроме того, для выполнения в мультизадачном режиме программ, написанных для микропроцессора типа 8088/8086, на базе микропроцессора К1810ВМ86М, КВП и программного эмулятора предусмотрен режим виртуализации микропроцессора 8086 (VM86).

Для поддержки этого режима разработана специальная многозадачная операционная система «Дирижер». Она обеспечивает выполнение в четырех разделах прикладных и системных программ, разработанных для ПЭВМ на микропроцессоре типа 8088/8086. В этом режиме на компьютере могут функционировать независимо четыре операционные системы типа MS DOS или СР/М 86.
И что это за Дирижер такой?

shattered 10th May 2013 02:06

Перенес пост из http://zx.pk.ru/showthread.php?t=21240

МК-88 под видом Искры 1031 даже как-то работает в MESS, но криво (не реагирует на Shift клавиатуры, не грузится с диска...). ЗГ тот, что уже был в MESS (думаю, что он 1:1 совпадает с ЕС1841). BIOS 3.92:

http://img-fotki.yandex.ru/get/5644/...5417de2_XL.png

http://img-fotki.yandex.ru/get/6445/...6a23dbf_XL.png

---------- Post added at 00:37 ---------- Previous post was at 00:34 ----------

Вдогонку:

МК-88

Quote:

все дампы есть на http://zxbyte.ru/mk88.htm. Разница в том, что компьютеры ранних и поздних исполнений отличаются. Например, у позднего исполнения для знакогенератора стоит SRAM, а у раннего - ПЗУ. И другие, не менее серьёзные, отличия.
Ассистент-128

Есть статья в ruwiki и чей-то комментарий в ru_oldpc (livejournal):

Quote:

у Ассистента не было контроллера ПДП (8237)
Обращение к диску по 13Н прерыванию полностью обслуживал процессор, со всеми ожиданиями и проверками готовности. Остальная работа при этом замирала, и на экране "снег" появлялся.


---------- Post added at 01:06 ---------- Previous post was at 00:37 ----------

Подключил Ассистент как клон 5150

http://img-fotki.yandex.ru/get/6443/...f8d936cb_L.png

После этого -- черный экран в режиме 40x25 с курсором в углу и все.

Rus 10th May 2013 14:15

Quote:

Originally Posted by shattered (Post 599816)
Перенес пост из http://zx.pk.ru/showthread.php?t=21240
После этого -- черный экран в режиме 40x25 с курсором в углу и все.

У меня в васик перескакивает, на ScriptPC

shattered 10th May 2013 14:39

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

Нужна тех. документация к Ассистенту (и вообще любая документация) и его родной софт. Если есть исходники BIOS (именно исходники, не дизассемблированные) -- совсем хорошо.

Rus 10th May 2013 15:01

Насчет ПДП - КР1810ВТ37 там всё же есть если не ошибаюсь, проверю. Документацию отсканирую ту что в комплекте.
Родной софт - руссифицированный IBM-овский тест-прогон на бейсике.
Исходников BIOS нет, я навскидку сравнивал куски с исходниками из IBM Technical Reference Manual, один-в один. Попробую дизассемблировать и сравнить полностью.

shattered 10th May 2013 21:25

Micko уже добавил Ассистент в MESS, а вам спасибо за дамп.

shattered 11th May 2013 03:56

Нашел тему про Ассистента - http://zx.pk.ru/showthread.php?t=9579 и там пишут, что

Quote:

Контроллер дисковода у Асистента был PC-совместимый, тоесть 765 (NEC uPD765A)
Но как-то он нестандартно подключен, на форуме MESS пишут, что

Quote:

It looks to have some non-standard use for bit 7 of the dor. It reads one sector then toggles that bit. It then looks for the FDC to be waiting for data (rather than sending it). <...> I bet bit 7 sets the tc line.

shattered 11th May 2013 12:28

Похоже, к нему подключались односторонние 80-дорожечные дисководы?

Rus 11th May 2013 15:24

c TEAC FD-55BR я его заставить работать так и не смог. К сожалению, я не электронщик, поэтому причину определить мне сложно. Читает только с МС-5305, записывать на дискеты тоже не получается, скорей тут уже причина в дисководе.

shattered 11th May 2013 20:13

MESSdevs пилят asst128 и говорят, что дамп знакогенератора неполный -- с F4000 начинаются символы 0x80 -- http://forums.bannister.org/ubbthrea...8386#Post88386

Можете проверить, есть ли другая половина?

Rus 11th May 2013 23:29

ув. тов. SoftCat поделился полными прошивками от Ассистента. Остается только Бейсик скинуть. Хотя там наверняка байт-в байт IBM-овский бейсик за исключением копирайта смоленского при запуске.

shattered 11th May 2013 23:50

Я тем временем пытаюсь заставить MESS эмулировать Поиск-овое видео, пока успехов нет :(


All times are GMT +4. The time now is 02:49.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.