PDA

Просмотр полной версии : ПК-01 vs ПК-02



Saar
06.07.2016, 07:19
Всем привет!

Хочу написать эмулятор Львова на FPGA. Да, я знаю что есть уже версия. Но хочу написать свой эмулятор на основе уже имеющихся моих ядер.

Встал вопрос о том, что есть ПК-02 и насколько он совместим с ПК-01. Информации по ПК-02 очень мало. В Основном натыкаюсь на список переделок ПК-01 в ПК-02, но нигде нет какого-то внятного описания зачем весь этот огород. Да, понятно Z80 быстрее чем ВМ80. Звук там на AY и всякое такое.
Насколько это всё поддержано в софте? Много ли игр стали несовместимыми? А главное - есть ли игры использующую всю эту новую мощь. Ведь, играть в игры ВМ80 на Z80 смысла не имеет. Они не станут более красочными. Звук AY сам собой тоже не появится.

- - - Updated - - -

Еще меня удивляет дешифрация порта AY (A15,A14,~A1). Видимо, она тупо слизана со спектрума.
Однако, у Львова при адресации других портов A15 и A14 не учитываются, а при обращении к портам в верхней половине адреса могут быть любые значения, что запросто вызовет ложный отклик регистров AY.
Как это вообще может работать??

liberation
06.07.2016, 08:50
Встал вопрос о том, что есть ПК-02 и насколько он совместим с ПК-01. Информации по ПК-02 очень мало. В Основном натыкаюсь на список переделок ПК-01 в ПК-02, но нигде нет какого-то внятного описания зачем весь этот огород. Да, понятно Z80 быстрее чем ВМ80. Звук там на AY и всякое такое.
Насколько это всё поддержано в софте? Много ли игр стали несовместимыми? А главное - есть ли игры использующую всю эту новую мощь. Ведь, играть в игры ВМ80 на Z80 смысла не имеет. Они не станут более красочными. Звук AY сам собой тоже не появится.
Весь огород был нужен по причине убогости серийного ПК-01. Z80 и доп.ОЗУ позволили запускать полноценную CP/M-80 и (после некоторой переделки) софт (игрушки, игрушки) от Спектрума. Игры для оригинального ПК-01 в совместимости ничего не теряли, наоборот, от прироста быстродействия ряд из них становились наконец-то играбельными (тот же C.Circus). Единственное, что переставал работать штатный Бэйсик из ПЗУ, но это лечилось загрузкой исправленной версии. Так что это не было серьезной проблемой. Оригинальной софт под ПК-02 составляли главным образом системный утилиты, игрушки со Спектрума и муз.демо (последние точно можно считать действительно оригинальным софтом). Игры под ПК-02 уже никто не писал.

AY хорошо работал на ПК-02. Единственное, можно было путем манипуляций с регистрами "повесить" контроллер дисковода, но то был слишком экзотический способ. В остальном проблем не было.

Saar
06.07.2016, 14:36
с портами AY всё равно какая-то лажа.
Ладно, путем приоритетной дешифрации можно частично решить коллизию.

- - - Updated - - -

Может кто-то на пальцах объяснить как получается конечный цвет точки?
Посмотрел как сделано в эмляторе Львова на Aeon - мозги набекрень. Что-то там жуткая формула.
Может быть в реальности всё проще это выглядит? Какие там правила програмирования цвета?

- - - Updated - - -

по схеме вроде получается так:

Kin = (pix == 00)
Bin = (pix == 01)
Gin = (pix == 10)
Rin = (pix == 11)

Rout = ((PB0 | Bin) & Rin & (PB3 | Kin)) ^ PB4
Gout = ((PB1 | Rin) & Gin) ^ PB5
Bout = ((PB2 | Kin) & Bin) ^ PB6