ivagor(25.03.2021)
Последний раз редактировалось NEO SPECTRUMAN; 23.03.2021 в 21:41.
кстате может получитсо сделать быстрее
если читалка будет префетчить сразу несколько байт в регистры
для эмулятора 8080 на z80 это вполне возможно
но тогда заметно усложнится код каждой команды
и появятся болшие трудности с реализацией простых и эффективных оптимизаций декодера...
от которых скорей всего будет больше толку....
написал\прикинул вариант с префетчем 3 байт
получилось на 8 тактов дольше на каждый считанный байт
кроме того в случае rst и ret будет лишнее чтение...
- - - Добавлено - - -
помедетировал
до быстрей НО
ты предлагаешь 256 256 байтных таблиц
или около того
сам умножишь?
мало того я и не знаю как такое скомпилировать
ADP такое ниасилит...
хотя в принципе можно жестко извратится и написать
за каждой командой зарезервировать место (точнее "расческой")
собрать сначала одну таблицу
а потом продублировать ее 256 раз
должно будет получитсо
конечно за 256 я преувеличил
и для мелких команд это вполне реализуемо
но все равно памяти это будет жрать дохренище
Последний раз редактировалось NEO SPECTRUMAN; 23.03.2021 в 22:36.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
кстате есть упоминание существования (незавершенного) эмулятора геймбоя для sam coupe SAM2GB
(по моему не для базовой конфигурации)
но найти каких то реальных файлов мне не удалось...
да и SAM Revival 19 тоже не удалось найти
а там на эту тему что то было написано
https://sam.speccy.cz/revivalmag.html
https://www.samcoupe.com/
https://www.worldofsam.org/products/sam2gb
https://web.archive.org/web/20160324...om/sam2_gb.htm
дето находил еще картинки но щас потерял
Последний раз редактировалось NEO SPECTRUMAN; 25.03.2021 в 12:41.
ivagor(24.03.2021)
1. Добавил еще один бенч и точно измерил замедление (сравнение скорости везде с 8080 2 МГц) для вчерашней версии:
Мона - медленнее в 15.45 раз
Расчет Пи (100 цифр) - медленнее в 12.38 раз
Скорее всего в Пи сказывается большое количество dad, которые эмулируются просто и быстро.
2. Пробежался по командам: доделал то, что вчера ленился доделывать; оптимизировал и другое, что заметил; убрал самомодифицирующийся код.
Мона - медленнее в 13.54 раз
Расчет Пи (100 цифр) - медленнее в 10.84 раз
Этот вариант еще и короче, чем в п.1
3. Из спортивного интереса вне конкурса попробовал коррекцию флага четности в двух вариантах - полный медленный и упрощенный (портит флаг полупереноса) быстрый. Быстрый между п.1 и п.2, а вот медленный заметно уступает даже п.1. Оригинальные бейсики работают с обоими вариантами, но при такой скорости и наличии адаптированных к z80 бейсиков не вижу смысла в коррекции флага четности.
Попробовал предложение Lethargeek, с ним быстрее на процент с копейками.
Пока можно считать фейком.
Есть ли в пи нопы и сколько их там - не считал, это версия 2015 года, я с тех пор запомнил только общие моменты, не такие частности.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)