Да, ведь программерская часть сильно упрощена, то и платформинг тоже далеко не такой, как на картинке.
https://vk.com/wall-145919754_780
Да, ведь программерская часть сильно упрощена, то и платформинг тоже далеко не такой, как на картинке.
https://vk.com/wall-145919754_780
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
И на такую игру нет кодера? Да вы чо, белены объелись?
- - - Добавлено - - -
Был бы кодер, были бы и спрайты с маской, красивше бы было...
___________
Не понял ты о втором экране или о основном, или о буфере каком ?
В любом случае:
0-я страница скорее всего будет на постоянной основе в карте памяти процессора,
5-я и 2-я страницы выпадают из списка использования, 5-я всегда проецируется в #4000-#7FFF а 2-я в #8000-#BFFF
7-я страница хранит второй экран, если не используется то пофиг, иначе не использовать для данных экранную область в #C000, а то что выше #DB00 можно юзать как угодно.
Ну и хотя бы одну страничку желательно на музычку. ))
- - - Добавлено - - -
А... туплю... дошло - вирт. экран от паскаля по #E000 ))
Ну так он будет на постоянке в 0-й например странице. А на момент подгрузки страница меняется, закидываются данные (ты же не в вирт.экран их грузить будешь),
снова выставляется 0-я с вирт. экраном и всё )))
Он на паскале пишет, у него нет возможности юзать страницы без костылей.
Прилепил вывод спрайтов в пробном движке, надо бы коллизии с окружением попробовать, Есть странная идея знакоместо=пиксель, миниэкран такой в 90 байт.
Тоже соглашусь с тем, что норм спрайты и анимация.
- - - Добавлено - - -
Так там, я так понял, нет функционала смены страниц. Только если асм вставками.
Да не врубился сразу что у паскаля есть буфер по #E000. Но собственно о костылях то и речь.
А куда ж без них родимых ? )))
Тут собственно вижу пока 3 наиболее важных момента с организацией памяти.
1 - процедуры смены страниц и подгрузок/обменов должны быть расположены ниже #C000. Если паскаль занимает место выше, то может выставлять их перед началом паскалевской проги. Насколько понял у этого паскаля есть выбор адреса компиляции.
2 - момент посложнее - вектор прерываний для музыки и прочего если будет, его надо впихнуть в области #8000-#BE01. Опять же всё зависит от того откуда растёт паскаль ))
3 - область куда производится подгрузка из страниц. Если она ниже #C000, то можно обойтись даже простым LDIRом после смены страницы, если выше или задевает, то нужно помутить с буфером и перещёлкиваниями страниц.
Так, насколько я понял, он ничего не занимает. Он на ПК) И выдаёт асм-код, который компилишь в кросс-асме)
Алко, мне кажется, не достаёт изначального функционала указания страницы куска кода, чтоб без костылей. Там всё просто. Есть основной "поток". Далее любой код с указанием страницы компилится относительно C000. Даже отдельные "org" для каждой страницы можно сделать, только нафиг.
В итоге асм-код будет не один, а для каждой страницы, причём адреса некоторых функций даже могут совпадать, но реализовать предварительную переключалку страницы с нужной, чтоб не ручками костылить.
А, я сразу не понял, ты об этом и говорил, но написаный выше c000 код только один, и абсолютные адреса уже расставлены, и никак не привязать написанный далее код к этой же странице.
Последний раз редактировалось Dwa83; 23.08.2020 в 20:28.
Занимает место код созданный транслятором. И после каждого транслирования в асм править ручками заколебёшься. Проще батник оформить чтоб последовательно собирал. Хотя на конечном этапе наверно музыку ручками придётся впихивать. Главное место оставить ))
Ну это если Andrew771 сделает. А если нет, то костыли или забить.
Код нет, но данные (карты уровней, спрайты, скрины ...) можно попытаться подгружать в рабочую память.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)