В настоящее время я программирую эмулятор GameBoy Classis. Вот репозиторий GitHub (https://github.com/FelixWeichselgartner/GameBoy-Classic-Emulator а>).
Инструкции процессора, кажется, работают нормально. Я сравнил инструкции с инструкциями этого отладчика Gameboy (http://bgb.bircd.org/) . Для тетриса я выполняю те же инструкции.
У меня вопрос по графике. Я реализовал функцию, которая извлекает плитки с правильного адреса (в зависимости от того, какой набор плиток используется). Однако я не знаю, как инициализировать Video Ram (@ адрес 0x8000). Я скопировал в память 32-килобайтный тетрис-ром с адреса 0x0000 на 0x7FFF. Поэтому все, начиная с 0x8000, здесь не инициализируется. Ни в инструменте отладки, ни в моем коде ничего не пишется в vram (из инструкции по коду операции процессора).
Поэтому я ожидал, что мне придется инициализировать VRAM. Однако я не смог найти никаких ресурсов в Интернете, когда что-то записывается в VRAM.
Итак, мой вопрос: какой экземпляр эмулятора Gameboy отвечает за копирование тайлов в VRAM.
Что я уже пробовал:
Отладка с другим эмулятором -> это показало мне, что никакие инструкции процессора не копируются в VRAM.
Глядя на различные эмуляторы Gameboy на Github -> не смог найти никого, кто бы инициализировал VRAM
Если кто-то смог помочь мне, я был бы очень благодарен.
Привет шнауцбартС