Добрых суток, всем. Друзья, подскажите пожалуйста, за что отвечает последний пункт этого теста(f400-ffff protect)? Как он реализован и на что влияет? Спасибо.Скрытый текст
[свернуть]
Добрых суток, всем. Друзья, подскажите пожалуйста, за что отвечает последний пункт этого теста(f400-ffff protect)? Как он реализован и на что влияет? Спасибо.Скрытый текст
[свернуть]
В i8080 Орионе (и дурных вариантах Z80 специально это эмулировавших) при записи в смаппированный на адресное пространство порт (как по LD, что логично, так по OUT, что есть грязный хак) происходит не только запись в соответствующий чип, но запись в "подлежащее" ОЗУ. Что крайне неудобно для адаптаций игр со Спека (у которого самые интересные большие игры работают в режиме "отключения ПЗУи ВУ" т.е. ОЗУ до FFFF). Соответственно в пакете доработок Z80-CARD-II была доработка на паре элементов И-НЕ которая это устраняет - вот её наличие и проверяет данный тест. Эту доработку обычно никто не делает т.к. 99% игр и новых прог для Z80, использующих ОЗУ F400..FFFF как ОЗУ, все равно работают с портами по OUT как принято у всех нормальных (т.е. неорионовских) программ, а те единицы что были адаптированы по-орионовски, обычно это пришедшие со Специалиста (типа DTE и SilentService) уже давно пропатчены на OUT. Этот хак еще иногда использовался и для "короткой" записи в ОЗУ, но уже в совсем запущенных i8080-случаях головного мозга.
Последний раз редактировалось Error404; 03.12.2021 в 20:53.
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
ZPilot(05.12.2021)
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
ZPilot(05.12.2021)
При D5==1 вся память доступна для процессора, вывод в порты только по out и то, только для портов f8-ff. Реализовывал вот этот вариант:Скрытый текст
[свернуть]
Доступ к портам/памяти реализован вот так: signal_ram = (cpu_address[15:8] < 8'hF4 | port_fb_ram[5]) & (~start);
Подскажите откуда на схеме Z80CardII берется сигнал #RNMI?
Последний раз редактировалось ZPilot; 04.12.2021 в 06:05.
Как я понимаю, все что связано с /NMI (а /RNMI это скорее всего тот же /NMI, только на панельке 8080) на Z80CardII делалось с прицелом на будущее, и какие-то вышедшие в широкие массы разработки с его использованием - народу неизвестны (только единичные упоминания об экспериментальных эмуляторах Спека у Барсика, неизвестно бывшие ли в природе или опять концепции). В ревизии-512 я этот узел исключил (2 диода и 2 трассы), и пока никто на это не жаловался. Тут обычными то прерываниями народ не пользуется...
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
Вот с прерываниями у меня и косяк, как выяснилось. У меня сделана СД-карта способом msx_sd-mmc. Если сделана доработка прерываний по схемме в предыдущем посте, то при загрузке Альтаир дос (та что с играми) Орион очень часто зависает, сразу после определения/отсутствия 512ВИ1,на надписи "Please enter data". Может просто подвиснуть, может вывести хлам и продолжить работать. Также зависает игра Dizzy-1#, сразу после просьбы нажать Enter. Если отключить доработку, то зависать перестает, но.. Диззи работает со звуком, через эти прерывания, и тупо не получает ответа от них, просто висит и ждет прерывание, прогружая картинку. Может поможет мне кто решить эту проблемку? Эх.. почти готов мой Орион.
Что интересно, иногда игра запускается, и если она запустилась, дальше работает без проблем..
Последний раз редактировалось ZPilot; 05.12.2021 в 00:31.
Частично "починил" прерывания, подвязав .DI(cpu_data_in) к FF, тк прочитал, что 0 на шине данных не очень хорошая идея, загружаться в Альтаир дос стало без проблем, даже часы появились, но диззи и не зависает и не работает. Сколько бы Ентер не нажимал, экран очищается на секунду, и опять появляется надпись - Нажмите Ентер.
ZPilot(05.12.2021)
Спасибо! У меня, правда, Орион на плисине, но.. "иголки с кондера" - надо попробовать реализовать, сейчас у меня импульс шириной vsync. Про резисторы у вас и прочитал.
ПС: тест у меня проходит давно, а вот глюки с загрузкой Альтаир дос и Диззи сводили все на нет.
- - - Добавлено - - -
Error404, подскажите, порты вывода\ввода для 512ВИ1 - f760 и f761, что за что отвечает? Находил на форуме дискуссию по этому поводу, но так и не понял на каком варианте остановились. И еще один вопрос, ткните носом, как создать образ для загрузки с сд-карты.
Последний раз редактировалось ZPilot; 05.12.2021 в 14:33.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)