?

Log in

No account? Create an account
Партнёр 01.01. Эмуляторы и их отличия от реального компа. - C3 00 F8 [entries|archive|friends|userinfo]
xlat

[ userinfo | userinfo ]
[ archive | old ]

Партнёр 01.01. Эмуляторы и их отличия от реального компа. [Jan. 15th, 2016|02:42 am]
xlat
[Tags|, , ]

В процессе разработки тестового ПЗУ, о котором я рассказывала в предыдущем посте, обнаружился ряд неточностей в работе некоторых эмуляторов "Партнёр 01.01". Ниже речь пойдёт о EMU ("Башкирия-2М") и Emu80.



1
Картинка с универсального эмулятора EMU ("Башкирия-2М")

Вот такие различия с реальной железкой удалось заметить в EMU ("Башкирия-2М"):

- Процессор стартует с 0xF800 вместо нулевого адреса.
- Экран сдвинут влево. Вероятно, автор эмулятора предполагал, что у "Партнёра" видимая часть экрана начинается с адреса 77C2h, как у "Радио-86РК". В действительности - немного не так. В соответствии с руководством оператора, видимая часть экрана у "Партнёр 01.01" начинается с адреса 77BDh. Это связано с отличиями в схеме формирования сигнала строчной синхронизации.
- Присутствуют артефакты при интерпретации кода переключения знакогенератора.
- Работа интерпретации атрибута "подчеркивание" происходит некорректно по сравнению с реальным компьютером.


2
Картинка с эмулятора Emu80

Различия с реальной железкой, замеченные в Emu80:

- Как в EMU, процессор тоже стартует с 0xF800 вместо 0.
- Аналогично - присутствует сдвиг экрана влево.
- Работа интерпретации атрибутов "подчеркивание" и "инверсия" происходит некорректно по сравнению с реальным компьютером.
- Нет эмуляции блочного курсора.
- Нет эмуляции регистра состояния КР580ВГ75 - в частности, флага IR (запрос прерывания), по которому удобно делать привязку скорости выполнения программы к частоте кадров.
- Нет первой половины ПЗУ BIOS D32, в которой располагаются редактор и ассемблер.

А на "реале" всё как-то так:


3
Картинка, полученная на реальном "Партнёр 01.01". Она уже была в предыдущем посте, но пусть и тут будет.
LinkReply

Comments:
[User Picture]From: nushaman
2016-03-31 04:30 pm (UTC)

Замечания

На реальном компе UNDERLINE и INVERSE сдвинуты.
Не отображаются русские с большой Р и маленькие, и еще много знаков. Таблицы знакогенератора есть здесь http://www.emuverse.ru/wiki/%D0%9F%D0%B0%D1%80%D1%82%D0%BD%D1%91%D1%80/%D0%A0%D0%B0%D0%B4%D0%B8%D0%BE%D0%BB%D1%8E%D0%B1%D0%B8%D1%82%D0%B5%D0%BB%D1%8C_1994/%D0%91%D0%BE%D0%BB%D1%8C%D1%88%D0%B8%D0%B5_%D0%B2%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D0%B8_%D0%9F%D0%9A_%C2%AB%D0%9F%D0%B0%D1%80%D1%82%D0%BD%D1%91%D1%80%C2%BB
И я так и не разобрался, как на Бейсике вывести все знаки таблиц знакогенератора.
(Reply) (Thread)
[User Picture]From: xlat
2016-03-31 09:08 pm (UTC)

Re: Замечания

> На реальном компе UNDERLINE и INVERSE сдвинуты.
Так и должно быть - это особенности схемы "Партнёра".

> Не отображаются русские с большой Р и маленькие, и еще много знаков.
Это небольшой баг в тесте :) Спасибо, что помогли найти его. Тест уже исправила - завтра выложу обновлённую версию :)

> И я так и не разобрался, как на Бейсике вывести все знаки таблиц знакогенератора.
Знакогенератор выбирается управляющим кодами (их таблица есть в руководстве пользователя).
(Reply) (Parent) (Thread)