Ух ты! Никогда не видел. Лет двадцать назад наверняка б зарубился надолго...
Вид для печати
Ух ты! Никогда не видел. Лет двадцать назад наверняка б зарубился надолго...
20-ть лет... :) Она почти новая. Прямо под Новый год вышла - http://zx-pk.ru/showthread.php?t=24530
А вот и мой первый скромный результат :)
http://storage2.static.itmages.ru/i/...6ac85792a2.png
Вот что пока получается:
http://storage9.static.itmages.ru/i/...7b862f64ee.png http://storage1.static.itmages.ru/i/...140371d036.png http://storage3.static.itmages.ru/i/...f758105fd9.png
Пошёл по пути эмуляции. Это вывод на экран Спектрума содержимого VideoRAM Game Boy без какой-либо предварительной конверсии. Все считается на лету, поэтому медленно. Пока никак не учитываются градации серого (палитры) и всякие другие служебные регистры. И это всего лишь фон, без спрайтов.
P.S. Давно не программировал, поэтому всё движется оооочень медленно.
Текстуры теперь накладываются на лету, но пока не переключается палитра. Так что вот вариант с одной жёстко заданной палитрой.
Оригинал:
http://storage8.static.itmages.ru/i/...33b51b44cc.png
Дождь - это спрайты. До спрайтов я пока не добрался, да и не знаю доберусь ли вообще - слишком всё медленно и отнимает много памяти. Это я ещё не брался попиксельно фон двигать! Вертикально двигать проблем нет. А как его двигать горизонтально, я пока понятия не имею.
А это то, что получается при выводе на экран ZX:
http://storage9.static.itmages.ru/i/...57caa25173.png
Конечно, если делать порт, то нужно будет всю графику перерисовывать заново, чтобы всё выглядело поприличнее и, самое главное, чтобы быстрее выводилось на экран без всех этих преобразований на лету.
В режиме эмуляции ничего играбельного не получится скорее всего, т.к. даже простейший скроллинг планов скушает изрядно ресурсов. Единственный вариант - это конверсия графики через художника и конверсия движка через программиста, с оставлением логики игры такой, какая она есть.
Ну не обязательно конвертировать каждый кадр
какие планы?
1-й фон
на 2-м висят менюшка, жизни итд (которые можно будет отрисовывать уже более простым способом или вообще забить)
больше планов нету
большая проблема если внезапно там будет юзаться "спрайтовый мультиколор",
DMA
или внезапно не удастсо вместить разжиревший код в одной странице
ну и про sp128 стоит забыть
тк как только сам rom весит больше 256к
ну и про 3.5 МГц думаю тоже...
- - - Добавлено - - -
может на время портирования самого кода
сделать отрисовалку фона и спрайтов с точностью до знакоместа(лижбы видеть результат работы)
а потом когда все уже будет работать вернуться к графике.
а может потом подтянуться писатели по жестче
тк до завершения не будет хватать какойто скролерке фона и выводилки спрайтов.
можно будет завести тему "кто лучшо нипешет то та то та"
он там кстате используется на заставке
для создание эффекта параллакса на фоне(несколько раз за фрейм дрыгаются координаты фона)
для плющения надписи (судя по всему)
во время дождя о_О так и не понял зачем
так что с ходу заставку не запустишь
но во время игры вроде бы все ОК
Выкладываю кросс-ассемблер для GameBoy (скачал отсюда: он бесплатный, но сайт из-за заморочек гугла требует зарегистрироваться).
А зачем нам ассемблер? - да не за чем!
Но есть в нём клёвая фишка: он может дизассемблировать ROMы. А это чрезвычайно удобно для изучения кода.
Технология такая: загружаем ломаемый ROM одновременно в эмулятор GB и в этот ассемблер.
Дебаггер эмулятора показывает нам вызовы подпрограмм. Берем адрес интересующей нас подпрограммы и набираем его во вкладке ассемблера (tools/disassemble). Запускаем. Ассемблер вытащит из ROM`а нужную нам процедуру со ВСЕМИ используемыми ею подпрограммами.