Забыл, похоже, выложить. Вечером добавлю.
Можно поподробней? Код писался 5 лет назад, уже плохо помню подробности и, возможно, я что-то недоэмулировал, но с зависаниями вроде бы не сталкивался.
Вид для печати
виснет вот здесь (sd_proc.inc)
оно после моих ковыряний SDOS оказалось включенным, отключил - заработало.Код:#ifdef MX2
WaitSPI:
LDA SD_CONF_PORT
ANI 040h
JNZ WaitSPI ; ждём окончания сигнала BUSY
#else
NOP
NOP
#endif
просто схема HWM_PVV (по крайней мере та что на плис, https://специалист-пк.рф/index30.html) по окончании сдвига ставит этот бит в 0, а эмулятор всегда отдает FF.
Выложил недостающий файл.
https://github.com/vpyk/emu80v4/raw/...dos_hwmpvv.bin
Новые сборки сделаю чуть позже.
Попробую исправить. Можно попросить виснущий код для отладки, если сохранился?
- - - Добавлено - - -
Конфигурация сборки:
Код:SD_DATA_PORT EQU 0F000H
SD_CONF_PORT EQU SD_DATA_PORT+1
START_ADDR EQU 0D000H
BUF EQU 0DA00h
Достаточно при чтении SD_CONF_PORT возвращать 00xxxxxx - все должно работать. старший бит - 0 = карта вставлена (хотя в исходном SDOS это не проверялось, это я для себя добавил чтобы не ждать пока выдаст ошибку по таймауту если карты нет)
http://sksb3.no-ip.org:8085/sdos.binЦитата:
Можно попросить виснущий код для отладки, если сохранился?
там включены обе проверки - на вставленную карту и на бит busy
Исправил, работает. Изменения в репозитории, бинарные сборки сделаю чуть позже.
Возможно, сразу не реализовал, поскольку оно было в "#ifdef MX2", а поддержку MX2 я почему-то до сих пор не сделал...
Полезная доработка, понравилось, что сразу "NO CARD" выдает.
Багфикс-релиз, версия 4.0.521 от 30.04.2025.
Windows-сборка: https://emu80.org/v4beta/Emu80qt_40521.zip
Экспериментальная Windows-сборка (Qt6): https://emu80.org/v4beta/Emu80qt_40521_qt6.zip
Исходники: https://github.com/vpyk/emu80v4
Все варианты загрузки, в том числе версии для Linux и MacOS - на сайте (https://emu80.org/distr/)
Изменения в версии 4.0.521:
- Специалист: в комплект эмулятора добавлен отсутствовавший файл ROM SDOS
- Z80: исправлена работа регистра R, восстановлена работоспособность игр Twinz и др. на ZX Spectrum
- Для SD-адаптера по схеме HWM_PVV сейчас корректно эмулируется сигнал Ready
- Специалист: восстановлена корректная загрузка и запуск файлов с помощью встроенного
загрузчика в конфигурации с SD-контроллером по схеме Vinxru
- Специалист: опция "Не воспроизводить звук магнитофона" сейчас установлена по умолчанию
для исключения посторонних звуков при работе программ, использующих 8-цветный режим
В свежих версиях появилась неприятная багофича - если навести мышиный курсор на открытое окно отладчика - он через некоторое время пропадает и не появляется пока вслепую не вытащишь его за пределы окна отладчика. причем пропадает даже если возить мышкой в окне отладчика. однозначно проявляется начиная со второго по счету открытия отладчика. винда ХР если что. в 4.0.480 такого не было.
и еще - можно в будущих версиях сделать так чтобы при ресете эмулируемого компа полностью перечитывались файлы с ПЗУ? а то для отладки ПЗУшного кода приходится каждый раз перезапускать весь эмулятор...