Тестирование soft-processor Z80 в различных эмуляторах
Publicado: 20 Jul 2018, 20:20
Начну с картинки , потом описание
полноразмерная картинка, ссылка - http://s2.micp.ru/2BpaX.jpg
Итак, продолжая свою серию тестов(картинок) на бордюре, ULA48, ULA128, Scroll17, FPGA128 в процессе тестирования soft процессора T80 я нарисовал несколько расширенный тест, с незамысловатым названием "Сферический конь в вакууме", сокращенно - "FPGA48", который будет прикреплен внизу.
Предыдущие версии этой поделки здесь, 128 версия:
viewtopic.php?f=52&t=684&start=60#p14505
и здесь, 48 версия
viewtopic.php?f=52&t=684&start=70#p14522
там же некое описание и проблемы )
Тест не простой, а ОЧЕНЬ простой, very simple. Если нормально работает эмулятор - то мы должны увидеть 4 зеленых квадрата на бордюре, два вверху и да внизу. Все.
На картинке некоторое количество (не все!) протестированных эмуляторов. По порядку.
В левом верхнем углу фотография с экрана монитора, запущен MiSTeR на DE10nano. Все ровно.
Следующий эмулятор - ZXMAK2, тоже се ровно.
Далее Fuse 1.3.4, все правильно.
Далее вверху справа - ZEsarUX 7.0 - все верно.
Нижний ряд. Где не все так хорошо, как видно по картинкам.
Первый Spectaculator 8.0.0.3092, который откровенно разочаровал, хотя я постоянно пользуюсь версией 6.25, в которой еще хуже показывает (( И это, заметьте, ПЛАТНЫЙ эмулятор, 16$ ( 16! Карл !!! )
Далее EmuZwin, вполне хороший эмулятор, но автор его больше не обновляет, а жаль (
Последние два - Zero и Spud, может не самые свежие версии, ну какие были.
Как видно, у последних трех эмуляторов ошибки с изображением в самом конце, средняя часть (middle part) отображается ровно и правильно.
Эмуляторов у меня еще немало, протестировал еще Spectramine 1.0b, он работает хорошо, но у него нет режима экрана 1:1 100%, а только 2:1 200%, поэтому на картинку он не попал. Некоторые хорошие эмуляторы , например Unreal или Z80Stealth не вполне точно эмулируют Spectrum 48, а точно эмулируют Pentagon, но там нет режима contended memory.
Кстати да, смысл теста в том, что при access to contended memory тайминги команд меняются, увеличиваются, поэтому крайне НЕ РЕКОМЕНДУЕТСЯ использовать медленную память при работе с бордюром ))) И весь тест устроен так, что он работает в медленной памяти, за исключением нижней части бордюра, которая уже попадает на быструю память. В быстрой памяти этот тест наверное прошли бы все эмуляторы. В Linux-e и MacOS не проверял, кому интересно - сами, все сами.
Если кто то захочет проверить на реальном компьютере сию подделку - буду только рад. При желании можно сделать и 128-ю версию, ну или использовать по ссылке выше, немного попроще версию))
Фотографию с ZXUno не стал делать, поверьте, там все плохо с этим тестом, Kyp не даст соврать)
Ну и чтобы два раза не вставать, хочу обратить внимание еще на один тест для эмуляторов, с которым все не менее плохо )))))))))
http://www.zxspectrum4.net/op_timing.php
Страница с самими тестами, под 48к можете попробовать TAP
http://www.zxspectrum4.net/downloads/timing_tests/
и результаты
http://www.zxspectrum4.net/downloads/sp ... esults.htm
есть известные имена )
Тест довольно занятный, тестирует модель компьютера на предмет Early/Late, после чего если просто нажать ENTER - тестирует процессор на предмет 37-ми тестов. Сколько ошибок в вашем любимом эмуляторе , это можете проверить сами, скажу лишь за два лучших - ZXMAK2 и SpecEmu с таймингами EARLY проходят этот тест 100%, а с таймингами LATE - ровно 4 ошибки в обоих эмулях и ошибки СОВЕРШЕННО ОДИНАКОВЫ! Что очень подозрительно. Хотелось бы , чтобы владельцы реалов особенно с таймингами LATE перепроверили этот тест.
И да, в ZXUno этот тест даже не запустится, автор постарался чтобы на реалах работал только. Кстати не во всех эмулях запускается, в ранней версии того же эмуля ZXSpectrum4(тоже платного) - висит на загрузке. Ну и сам код теста автором зашифрован ) Зачем-то Во первых свой собственный загрузчик, а во вторых код грузится задом наперед - со старших адресов FFFFh вниз, а потом распаковывается по нужным адресам. Я думал такие чудаки 25 лет назад перевелись, ан нет
ну тест хорош хотя бы тем, что показывает, что не все можно загрузить через esxDOS, хотя возможно последняя версия может это делать. Но тем не менее, если кого заинтересовало - у меня есть этот тест в нормальном виде - пишите
Кстати, некоторые эмули, которые могут переключать early\late - на самом деле этого не делают В меню переключаю на LATE - а тест все равно считает, что это EARLY, ну и естественно много ошибок. Истины ради могу сказать, что на MiSTeR этот тест запускается нормально, early, но ошибок много, оооочень много
Кстати да, интересно было бы увидеть результаты теста FPGA48 запущенном на NEXT/ Такое может кто нибудь сделать или попросить запустить на ихнем хваленом 100% совместимом компьютере.
ps - кстати версия теста early\late - одинаково работает ровно в нормальных эмуляторах, где это можно переключать.
полноразмерная картинка, ссылка - http://s2.micp.ru/2BpaX.jpg
Итак, продолжая свою серию тестов(картинок) на бордюре, ULA48, ULA128, Scroll17, FPGA128 в процессе тестирования soft процессора T80 я нарисовал несколько расширенный тест, с незамысловатым названием "Сферический конь в вакууме", сокращенно - "FPGA48", который будет прикреплен внизу.
Предыдущие версии этой поделки здесь, 128 версия:
viewtopic.php?f=52&t=684&start=60#p14505
и здесь, 48 версия
viewtopic.php?f=52&t=684&start=70#p14522
там же некое описание и проблемы )
Тест не простой, а ОЧЕНЬ простой, very simple. Если нормально работает эмулятор - то мы должны увидеть 4 зеленых квадрата на бордюре, два вверху и да внизу. Все.
На картинке некоторое количество (не все!) протестированных эмуляторов. По порядку.
В левом верхнем углу фотография с экрана монитора, запущен MiSTeR на DE10nano. Все ровно.
Следующий эмулятор - ZXMAK2, тоже се ровно.
Далее Fuse 1.3.4, все правильно.
Далее вверху справа - ZEsarUX 7.0 - все верно.
Нижний ряд. Где не все так хорошо, как видно по картинкам.
Первый Spectaculator 8.0.0.3092, который откровенно разочаровал, хотя я постоянно пользуюсь версией 6.25, в которой еще хуже показывает (( И это, заметьте, ПЛАТНЫЙ эмулятор, 16$ ( 16! Карл !!! )
Далее EmuZwin, вполне хороший эмулятор, но автор его больше не обновляет, а жаль (
Последние два - Zero и Spud, может не самые свежие версии, ну какие были.
Как видно, у последних трех эмуляторов ошибки с изображением в самом конце, средняя часть (middle part) отображается ровно и правильно.
Эмуляторов у меня еще немало, протестировал еще Spectramine 1.0b, он работает хорошо, но у него нет режима экрана 1:1 100%, а только 2:1 200%, поэтому на картинку он не попал. Некоторые хорошие эмуляторы , например Unreal или Z80Stealth не вполне точно эмулируют Spectrum 48, а точно эмулируют Pentagon, но там нет режима contended memory.
Кстати да, смысл теста в том, что при access to contended memory тайминги команд меняются, увеличиваются, поэтому крайне НЕ РЕКОМЕНДУЕТСЯ использовать медленную память при работе с бордюром ))) И весь тест устроен так, что он работает в медленной памяти, за исключением нижней части бордюра, которая уже попадает на быструю память. В быстрой памяти этот тест наверное прошли бы все эмуляторы. В Linux-e и MacOS не проверял, кому интересно - сами, все сами.
Если кто то захочет проверить на реальном компьютере сию подделку - буду только рад. При желании можно сделать и 128-ю версию, ну или использовать по ссылке выше, немного попроще версию))
Фотографию с ZXUno не стал делать, поверьте, там все плохо с этим тестом, Kyp не даст соврать)
Ну и чтобы два раза не вставать, хочу обратить внимание еще на один тест для эмуляторов, с которым все не менее плохо )))))))))
http://www.zxspectrum4.net/op_timing.php
Страница с самими тестами, под 48к можете попробовать TAP
http://www.zxspectrum4.net/downloads/timing_tests/
и результаты
http://www.zxspectrum4.net/downloads/sp ... esults.htm
есть известные имена )
Тест довольно занятный, тестирует модель компьютера на предмет Early/Late, после чего если просто нажать ENTER - тестирует процессор на предмет 37-ми тестов. Сколько ошибок в вашем любимом эмуляторе , это можете проверить сами, скажу лишь за два лучших - ZXMAK2 и SpecEmu с таймингами EARLY проходят этот тест 100%, а с таймингами LATE - ровно 4 ошибки в обоих эмулях и ошибки СОВЕРШЕННО ОДИНАКОВЫ! Что очень подозрительно. Хотелось бы , чтобы владельцы реалов особенно с таймингами LATE перепроверили этот тест.
И да, в ZXUno этот тест даже не запустится, автор постарался чтобы на реалах работал только. Кстати не во всех эмулях запускается, в ранней версии того же эмуля ZXSpectrum4(тоже платного) - висит на загрузке. Ну и сам код теста автором зашифрован ) Зачем-то Во первых свой собственный загрузчик, а во вторых код грузится задом наперед - со старших адресов FFFFh вниз, а потом распаковывается по нужным адресам. Я думал такие чудаки 25 лет назад перевелись, ан нет
ну тест хорош хотя бы тем, что показывает, что не все можно загрузить через esxDOS, хотя возможно последняя версия может это делать. Но тем не менее, если кого заинтересовало - у меня есть этот тест в нормальном виде - пишите
Кстати, некоторые эмули, которые могут переключать early\late - на самом деле этого не делают В меню переключаю на LATE - а тест все равно считает, что это EARLY, ну и естественно много ошибок. Истины ради могу сказать, что на MiSTeR этот тест запускается нормально, early, но ошибок много, оооочень много
Кстати да, интересно было бы увидеть результаты теста FPGA48 запущенном на NEXT/ Такое может кто нибудь сделать или попросить запустить на ихнем хваленом 100% совместимом компьютере.
ps - кстати версия теста early\late - одинаково работает ровно в нормальных эмуляторах, где это можно переключать.