P.P.S.
В процессе развития темы я начал писать небольшой вводный курс "реактивного введения в программирование" под Game Boy Advance.
Во первых - на русском, чего вообще неведомо гуглу. Во вторых - сжато, кратко, максимально ёмко (не для начинающих программистов), чтобы сел, скачал за 5 минут всё необходимое для hello, world и за вечер разобрался что к чему в объёме достаточном для того чтобы написать скроллер-платформер.
Т.к. был некоторое время забанен, то сперва запилил это дело в жж вот здесь (немного устарело): Реактивное введение в программирование Game Boy Advance
Потом перевыложил сюда: http://hype.retroscene.org/blog/872.html с обновлением инструкций, так что читать предпочтительно из этой ссылки.
Устаревшие куски текста здесь почищу, чтобы не вводили в заблуждение. По итогу возможно перенесу в сообщество какое нибудь.
8< -------------------------------------------------------------- >8
В общем возникла даже полубредовая идейка для следующего конкурса - сделать его темой создание игр с нуля по коду (и книге) выше под GBA! Кто чем хочет - тот тем из книги и пользуется. Спрайтовыми ли областями памяти, задниками с машстабированием - кто во что горазд, как говорится. %D
Наиболее проблематичным, возможно, будет звук, как я понял микшер придётся писать самому и для него придётся перехватывать прерывания - но не чувствую что это будет драматически сложно, скорее всего тоже тремя десятками строк кода с нуля можно сделать вывод синусоиды, я в этом практически уверен.
Таким образом есть потенциал - вы только задумайтесь - впервые в истории форума сделать конкурс под портативную консоль! XD
Причём референсный эмулятор VirtualBoyAdvance позволит насладится результатами всем со 100%-ой гарантией совместимости.
Ессесно перед конкурсом должно выделится немало времени для изучения книги, тем не менее...
P.P.P.S
В процессе развития проекта он переехал в тему Contra Force Advance.
=A=L=X=
> Идея для следующего конкурса
Ты предлагаешь нам полгодика посвятить оттачиванию навыков работы с допотопным железом только для того, чтобы поучаствовать в конкурсе?
Вообще-то конкурсы призваны развивать участников, а не наполнять их мозг бесполезным на практике багажом знаний.
destract
> развивать участников,
Это и есть развитие - навык освоения новой платформы.
> полгодика посвятить оттачиванию навыков работы с допотопным железом
Оно очень простое, относительно сложны только тайловые режимы, и то они намного проще, я уже вижу, чем в том же Dendy, при этом намного же и сильнее. Если бы это был бы такой же битовый ад, как на денди - я бы даже не заикался, но меня как раз поразила простота аппаратуры.
=A=L=X=
> Это и есть развитие - навык освоения новой платформы.
Не новой, а древнего говна мамонта. Полученные навыки битодрочества в реальной жизни скорее всего не пригодятся, других близких платформ уже не будет никогда.
jaguard
> Полученные навыки битодрочества в реальной жизни скорее всего не пригодятся
Это всё хорошо, но ты зашёл в критику конкурсов с софтачом или 64Кб. Но были такие "битодрочерства" и успешно прошли.
=A=L=X=
> Это и есть развитие - навык освоения новой платформы.
Бесполезной платформы.
Конкурс для бездельников, ИМХО.
destract
> Вообще-то конкурсы призваны
Развлекать.
Примерно под такое на работе пишу. Ну разве что памяти в моем случае поменьше а периферия повеселее. Так что мне и читать особо не потребуется.
Ну и дум, вроде, по характеристикам на нее не влезет, что тоже радует - иначе смысл конкурса сильно пострадал. В общем я за, но боюсь желающих будет слишком мало.
=A=L=X=
> Причём проц замораживается пока контроллер копирует и сразу же размораживается.
> Просто сверхбыстрый memcpy, не более того.
похоже на шутку. наверняка вместо IMMEDIATE другие флаги есть, смысл DMA же в том чтобы проц не грузить а копировать параллельно. хм. и правда. замораживается.
kipar
> Ну и дум, вроде, по характеристикам на нее не влезет
Но тут уже выжаты все соки.
Вообще здесь попадаются игры даже с полным 3D, но это как правило слайд-шоу с мерзким графоном - аппаратного ускорения 3D в консоли нет, всё такое делается в софтаче.
Возможности видеоадаптера ограничиваются scale&rotate двух задников в VideoMode 0x02 + спрайты 8x8.
эээ, ну тогда смысла имхо нет. какой смысл соревноваться.
Шедевры 3D-графония там выглядели вот так:
Т.е. там примерно 486-ой по железу, самые зайчатки графония.
Имхо такое на 10 очков хуже будет выглядеть просто аккуратного 2D. Ну и, боюсь нахрапом такое не получится сделать не зная всех тонкостей архитектуры - а там тонкости есть, например 32Кб памяти самые быстрые сидят прямо в чипе проца, в таких играх надо про них знать и ими пользоваться, иначе будет еще тормозить сильнее. Даже тайминги доступа в ROM меняются при рандомном и последовательном считываниях - есть такие тонкости тоже.
В общем я вот что думаю - сам скачаю IDE с тулзами, попробую сунуться наживую да позаливать красочкой экран и на кнопочки пореагировать.
И заодно напишу кратчайшую инструкцию что да как, минимальную вводную чтобы сесть, по инструкции скачать, и уже знать куда можно байтики засылать чтобы картинка ожила.
А там посмотрим.
=A=L=X=
> Шедевры 3D-графония
По ссылке на видео, не 3д графика, это тебя кто-то обманул.
=A=L=X=
> Т.е. там примерно 486-ой по железу
Там 086 по железу.
Вы, молодежъ, ваще абарзели. На 4ке я в кваку первую шпилил, а на 3ке мы винду поднимали.
Ren
> На 4ке я в кваку первую шпилил, а на 3ке мы винду поднимали.
А у меня на 386-м даже Wolf со скрипом шел, одного мегабайта памяти ему не хватало. Про дум и говорить нечего.
=A=L=X=
> Шедевры 3D-графония там выглядели вот так:
Важно не как они выглядели тогда, а то что сейчас есть дум который там можно запустить. Ничего близкого по графону (и геймплею) на таком железе никто из участников скорее всего не осилит, так что с тем же успехом можно было бы и под комп писать.
=A=L=X=
> под Game Boy Advance
GBA дичь полнейшая, уж лучше для спектрумов или RPi на худой.
Ren
> Вот уровень 286
Звук не каноничный, поди ремейк или амижное.
Тема в архиве.