Я понимаю, что на форуме есть раздел "Проекты пользователей", но я всего лишь пытаюсь довести до более рабочего состояния проект уже размешенный на этом сайте в соответствующем разделе с примерами. Если не прав - переместите тему, пожалуйста.
Удивляет немного низкая активность в комментариях к этому проекту. Если человек, второй день как вообще учащийся что-то делать с ПЛИС, может добавить туда звук и загрузку с магнитофона, то почему другие не заметили, что игры не работают? Файлы tap конвертировал в wav, проверял wav эмулятором, умеющим их понимать - файлы нормальные. Звук подаю на ADC марсохода, результат сравнения с порогом на соответствующий разряд порта FE, работающего на чтение, т.е. порта клавиатуры. Больше в проекте, кроме опечатки, о которой отписался в комментариях к проекту, ничего не трогал. Даже river raid не загружается - загрузка прерывается всегда на одном и том же месте. Пробовал найти игру еще меньше - доходят до конца загрузки, но не работают. Заработали совсем уж маленькие.
В связи с этим (и не только) - вопросы:
1. Есть ли люди, нашедшие еще ошибки или сделавшие добавки в проекте? Расскажите о них, пожалуйста.
2. Есть ли сведения о работоспособности изначального проекта от Ewgeny7 с zx.pk.ru ? (Я там тоже попробую спросить, скорее всего).
3. Достаточно ли для замены ПЗУ просто заменить HEX файл или надо среде разработки об этом сообщить как-то? Я не вижу HEX файла в дереве проекта, почему-то.
далее вопросы уже больше по плате Марсоход и для пользы большей, чем ностальгирование по спектрумам :)
4. В ходе внесения в проект изменений никак не связанных с формированием картинки замечал, что некоторые промежуточные его версии страдали очень сильными помехами на экране. Они устранялись сами собой в следующих версиях. Особенно удобно "бороться" с ними стало после появления сравнения с константой значения из ADC для считывания с магнитофона. Меняешь константу - меняется сложность компаратора, наверное. Видимо изменяется общее количество задействованных элементов ПЛИС и их взаимное расположение и питание? Можно ли как-то влиять на это напрямую?
5. Почему такие сложности из-за смены SRAM на SDRAM? Разве в проекте, содержащем вывод на экран из памяти, надо заботиться о контролере и регенерации? Ведь регенерация получается даровая из-за вывода картинки, если правильно "перепутать" адресные линии, чтобы соседние части экрана брались из разных строк ячеек памяти. Или причина перехода на использование внутренней памяти ПЛИС для видеобуфера была только в нехватке быстродействия даже без регенерации?
С уважением.