User Tag List

Показано с 1 по 10 из 151

Тема: Ретро-ЯП Millfork для Atari, Apple II, ZX Spectrum, MSX, CP/M, NES, Game Boy и MS-DOS

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    11.02.2005
    Адрес
    【RB】
    Сообщений
    3,877
    Спасибо Благодарностей отдано 
    128
    Спасибо Благодарностей получено 
    130
    Поблагодарили
    81 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    Exclamation

    Пока вы тут спорите об эмуляторах, я потиху начал разбираться с графикой, и как это всё прикрутить к Millfork.
    Прошерстив кучу текстов и поковыряв исходники ASM, что генерит Graph2Font, получил такую картину:



    Для начала определяем режим работы Antic, для примера обычный текстовый режим 2.
    Создадим anticMap (DisplayList) в виде array(byte), в котором опишем режим отображения блока из 8 линий.

    Там же зададим карту с тайлами array(byte) charMap, где какой символ будет расположен (0x00 - пустое место).

    И останется лишь задать адрес расположения в памяти $D402, $D403

    Надо отдать должное MillFork без проблем даёт работать с «указателями» на расположение массива в памяти и даже больше
    внутри самого массива можно указать на расположение в памяти (вот такая рекурсия).

    Для чего это нужно я не совсем пока понял, но примерах, что мне встречались, DisplayList для Antic заканчивается JPM на начало самого себя.

    Так не менее интересный момент. Когда я захотел использовать свой шрифт, то выяснился нюанс. Поскольку память ATARI устроена таким образом,
    что адрес расположения шрифта задаётся только страшим байтом адреса в $D409, то это внесло некоторые ограничения и шрифт должен располагаться кратно 0x0400.

    Встала дилемма, у нас-то не ассемблер и ALIGN не сделать. Однако, как выяснилось Millfork писали умные люди и уже обо всём позаботились. Достаточно при
    создании массива указать выравнивание и проблема решена

    Код:
    array(byte) font align(0x0400) = [
    Ну и поигравшись с разными значениями ANTIC можно получить не менее умилительные шрифты



    p.s. с прерываниями я пока не заморачивался, хотел разобраться для начала с базовой частью.
    Вложения Вложения

    Эти 2 пользователя(ей) поблагодарили breeze за это полезное сообщение:

    andrews(26.10.2024), Oleg N. Cher(27.10.2024)

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 11
    Последнее: 08.12.2023, 17:18
  2. Bad Apple для MSX/MSX2
    от Pyhesty в разделе MSX
    Ответов: 4
    Последнее: 31.05.2021, 21:45
  3. Перенос игр с Game Boy на ZX Spectrum
    от CityAceE в разделе Программирование
    Ответов: 104
    Последнее: 14.02.2019, 10:56
  4. Game Boy Advance
    от megabyte в разделе Nintendo
    Ответов: 8
    Последнее: 22.05.2006, 14:48
  5. Game Boy Advance в Питере.
    от Surfin_Bird в разделе Nintendo
    Ответов: 10
    Последнее: 21.08.2005, 09:50

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •