Да. Причем в каждом цикле может произойти ПДП, вот он как раз идет параллельно последним тактам цикла, и чуток по разному для записи и чтения.
Вид для печати
На стеке пусть значение бипера 0, в H или L значение бипера 1. Когда меняем значение бипера делаем xri ...\ sta (если текущее значение бипера в A, что может потребовать дополнительных команд) или xthl. Не говорю, что это хороший вариант в общем случае, но иногда может быть интересен.
Да, еще могут быть wait такты. Причем в зависимости от того куда обращаешься и/или когда.
Рад представить предновогодний релиз эмулятора, встречайте версию 4.0.498 от 30.12.2024!
Загрузить windows-сборку.
Все варианты загрузки, в том числе версии для Linux и MacOS - на сайте.
Исходники: https://github.com/vpyk/emu80v4
Изменения в версии 4.0.498:
Легенда:
+ Нововведение
* Изменение / улучшение
- Исправлен баг
! Известная проблема
- - Исправлена ошибка при записи на диск последних секторов на дорожке, что могло приводить к повреждению файлов в образе диска
- - Исправлена ошибка в генераторе шума AY-3-3910, появился стук колес в игре "Стоп-кран" на Векторе
- - Исправлена сборка с помощью GCC 13
- - Исправлено сохранение опции "Выход в отладчик по недокументированным командам"
- - Исправлена неработоспособность переключения коррекции PAR на Партнере с включенным МЦПГ
- - Исправлено открытие ссылок в окне "О программе"
- * Обеспечена возможность сохранения размера окна эмулятора в режиме изменяемого пользователем размера (Alt-0), добавлена новая опция, настраивающая это поведение
- * Добавлены новые режимы масштабирования окна 1.5x и 2.x, а также соответствующие пресеты
- * Поддержка реального значения FPS на мониторах FreeSync/G-Sync
- * Переработаны настройки видео, уменьшен фрейм эмуляции, улучшена отзывчивость на слабых ПК в случае нехватки мощности процессора
- * Возможность плавного ускорения и замедления работы эмулятора до 16x
- * Режим полной скорости по Alt-End (просто End сейчас увеличивает текущую скорость в 4 раза)
- * Добавлен режим Стерео для AY
- * Поддержка схемы ВГ75 PIXELTRON на РК-86, включается в конфигурационном файле (см. справку по платформе)
https://zx-pk.ru/threads/35812-ot-ch...hema-kod).html- * Добавлена возможность чтения файлов формата TSX наряду с CAS для формата записи на ленту MSX. Включено по умолчанию для SP580
- * Добавлена конфигурация для стандартного Специалиста с процессором Z80
- * Специалист SP580 выделен в отдельную платформу
- * Специалист SP580: обновлено ПЗУ до последней версии
- * Специалист SP580: доработана smart-раскладка клавиатуры
- * Апогей: добавлен режим черно-белого выхода цветного Апогея (градации серого)
- * Добавлена информация о текущем загруженном образе диска во всплывающей подсказке ко кнопкам выбора образа
- * Добавлена возможность "выхода" из web-версии эмулятора
- * Добавлена опция очистки информации о нажатых клавишах при выходе из отладчика для предотвращения "залипания"
- * Обеспечена возможность сборки с Qt 6.x
- * В web-версии сейчас меняется адрес страницы при запуске программ, обеспечена возможность перехода по истории браузера с помощью кнопок "назад" и "вперед"
В этой версии добавлена возможность плавно настраивать скорость эмуляции. Для грубого ускорения/замедления служат клавиши Alt-PgUp/PgDn, для точного -
Alt-Up/Down. Максимальный коэффициент ускорения или замедления - 16x. Восстановить нормальную скорость можно с помощью клавиш Alt-Home.
Если же нужна максимальная скорость, то можно использовать Alt-End для режима "полный газ". Просто по клавише End (без Alt) осталось ускорение 4x.
Если у вас есть монитор и видеокарта с поддержкой технологии FreeSync/G-Sync, то в новой версии эмулятора будет возможно в полной мере
оценить применяемые в некоторых играх и демках эффекты gigascreen и плавное движение, синхронное с частотой кадров. Если при этом вы планируете
ускорять работу эмулятора, не забудьте в настройках снять или увеличить ограничение на максимальную частоту кадров. Обратите внимание, что
режим FreeSync/G-Sync часто корректно работает только в полноэкранном режиме!
На платформах, поддерживающих AY-звук, сейчас доступен режим стерео (ABC). По умолчанию режим стерео включен, можно выключить в разделе настроек "Разное".
Если вас раздражали "залипающие" клавиши при отладке, возможно, вам поможет новая опция, очищающая признак нажатия при выходе из отладчика.
Опция по умолчанию также включена.
Если вам не хватало промежуточных масштабов окна эмулятора, сейчас доступны два новых режима - 1.5x и 2.5x. Кроме того, эмулятор сейчас корректно
запоминает размер и положение окна при изменении его размеров вручную и восстанавливает эти параметры при следующем запуске.
Если вы запускаете эмулятор на старом ПК, процессор которого не может обеспечить 100% скорость эмуляции, то вам должна понравиться значительно
возросшая отзывчивость эмулятора в этих условиях.
Серьезно доработана эмуляция Специалиста SP-580. CityAceE опубликовал большое количество программ для него здесь:
Можете погонять их в эмуляторе, практически все программы мультиблочные, с заставками.
Формат CAS может не в полной мере соответствовать формату записи на ленту SP580, поэтому была добавлена поддержка формата TSX.
Возможно в дальнейшем программы будут сконвертированы в этот формат. Уже сейчас можно загружать файлы в этом формате везде, где доступна загрузка в CAS.
Web-версия эмулятора на сайте https://online.emu80.org также обновлена.
Всех с наступающим Новым Годом!
Увеличение скорости - это здорово, но почему максимум в 16 раз?
ivagor, мой процессор (Intel 12 семейства) для большинства платформ вытягивает примерно 18-20x. Мне подумалось, что на данный момент 16x будет разумным ограничением. Если надо больше, можно использовать full throttle, да и то не факт, что получится значительно больше.
Неудобно (и непонятно для меня), что Alt+End не фиксирует режим ускорения, в отличие от Alt+Home/PgUp/PgDn. И, кстати, в меню про Alt+End и End нет упоминаний.
Хотелось бы две вещи для "полного газа":
1. Ускорить до предела за счет отключения звуковой подсистемы и облегченного обновления экрана (1-2 раза в секунду, может еще что-то отключить).
2. Вместо "Макс." выводить оценку, во сколько раз ускорение.
ivagor, в моем понимании типичное применение режима полного газа - это быстро пропустить какой-то нудный участок - заставку, какую-то длительную отрисовку и т.п. В этом случае удобнее использовать именно нефиксируемую кнопку, так удобнее вовремя отпустить. В каких случаях удобнее будет с фиксацией? Может быть, даже предложишь, на какие кнопки можно это повесить и как управлять? Вообще сделать несложно, сложно сделать удобно.
Упоминание про кнопки есть во всплывающей подсказке к соответствующим кнопкам на тулбаре.
Насчет замедления обновления экрана и отключения звуковой подсистемы пока ничего не могу навскидку ответить, надо подумать. Но на первый взгляд какие-то простые решения не могут существенно повлиять на скорость.
Насчет оценки скорости попробую что-то придумать.
Понятно, мне интересно совершенно другое применение - быстрый прогон программ (например 1, 2, 3), которые на стандартной скорости выполняются часами. Если вместо 24 часов выполняется за полтора, то это конечно хорошо, но хотелось бы побыстрее.
Что касается клавиш, может не надо отдельно 4x и максимум? Сделать End - временный максимум (как сейчас Alt+End), а Alt+End - с фиксацией. Ну или еще что-то задействовать, это не принципиально.
Немного офтоп, но в тему эмуляторов.
Как решать вопрос переключения окна в полноэкранный режим? Все привыкли, что это Alt+Enter, но эти клавиши могут быть использованы самой программой, которая работает на эмулируемой системе, и переключение может вызвать ложное срабатывание?