ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet
У Spectaculator/ZXMAK2 на late timings длина сигнала INT на один такт больше.
- - - Добавлено - - -
Кстати, у ZXMAK2 неправильная частота FLASH)
Выяснил, что большинство передовых эмулей (а точнее, Fuse, ZXMAK2 и Spectaculator, исключая SpecEmu, EmuZwin и ZXSpin) эмулируют ошибку процессора z80 при выполнении команд LD A,I/LD A,R - во время прихода импульса прерывания эта команда в флаг PV записывает 0, т.к. обработка прерывания начинается на последнем такте выполнения команд. Подробнее об этом можно прочитать здесь и здесь. Но только во время обычной работы, во время проигрывания rzx файлов они все, кроме Spectaculator, об этой ошибке забывают.
По первой ссылке можно посмотреть код, обнаруживающий эту особенность. Как указано в тексте по второй ссылке, CMOS-процессоры Z80 этой ошибки не имеют.
Последний раз редактировалось Spectramine; 04.11.2016 в 21:39.
Владельцы фирменных ZX Spectrum +2A(черный корпус)/+3, не могли бы вы прогнать в бейсике минитесты из этого видео:
(с четными портами не надо, там всё понятно, порт FE), и отписаться тут о результатах. Похоже, что у поздних Амстрадовских моделей таки есть эффект "порта FF", хотя конкретно на порту FF и не работает. Но эмули об этом не знают.
Последний раз редактировалось Spectramine; 17.11.2016 в 02:10.
Амстрадовские ZX Spectrum +2A (+2 с черным корпусом) и ZX Spectrum +3. Считается, что у этих моделей нет "порта FF", как у предыдущих моделей (с незадействованных портов время от времени читаются данные, считанные ULA с экрана), а на этом видео показано, что есть, только почему-то работает на портах 1 и 5, но не работает на 255, и в режиме бейсик 48к (а ещё данные с экрана читаются инкрементированными).
Последний раз редактировалось Spectramine; 17.11.2016 в 13:27.
на этом видео
1 испанская модель
2 прежний владелец вполне мог припаять резистор (есть такая доработка)
Да, про модель я заметил, но не думаю, что у них ULA разные. Насчёт резистора - тоже вполне возможно, поэтому мне и интересно, как у других владельцев это работает, или не работает. (И почему, если резистор, данные экрана инкрементированы, и не идут с порта FF? смысл тогда делать доработку, если в основном программы читают именно порт FF).
проверил на своём +2а
есть такой момент.
возможно перехлёст с существующими портами ?
Последний раз редактировалось goodboy; 17.11.2016 в 17:49.
С какими? И почему читаются данные экрана? Всё-таки больше похоже на глюк ULA. Спасибо за подтверждение факта. Возможно, кто-нибудь со временем проведет более подробное исследование, чтобы сэмулировать глюк на эмулях. Так, интереса ради, вряд ли в этом есть практический смысл, конечно.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)