Сигамана слушай больше... ололо, тынц тынц, гы... а толку никакого.
Smoke на пальцах все намного понятнее и проще оьяснил . Думаю он простит мне сей копипаст..
Проверено опытным путем, инфа 100%... :
Smoke (22:45)
; Установка палитры (стандартнаЯ радуга 16ти цветных полос в первой палитре)
move.l #$c0000000,$c00004
move.l #$0000,$c00000
move.l #$0000,$c00000
move.l #$0C00,$c00000
move.l #$000C,$c00000
move.l #$0C0C,$c00000
move.l #$00C0,$c00000
move.l #$0CC0,$c00000
move.l #$00CC,$c00000
move.l #$0CCC,$c00000
move.l #$0E44,$c00000
move.l #$044E,$c00000
move.l #$0E4E,$c00000
move.l #$04E4,$c00000
move.l #$0EE4,$c00000
move.l #$04EE,$c00000
move.l #$0EEE,$c00000
Smoke (22:45)
Это загрузка палитры поцветно
Smoke (22:46)
то есть одна команда, один цвет
Smoke (22:47)
смотри, пишем данные всегда в $c00000, а в $c00004 записываем управляющие команды
Smoke (22:48)
то есть нам нужно записать палитру, записываем адрес в $c00004: move.l #$c0000000,$c00004 ВДП тоже имеет свое адресное пространство как и м68к. с "адреса" $c0000000 начинаются данные палитры
Smoke (22:49)
потом пишем данные в $c00000
Smoke (22:49)
далее
Smoke (22:51)
графика лежит с адреса $0 до $1FFFF (всего может быть $1000 тайлов в врам). Чтобы перейти на начало (0) нужно записать move.l #$40000000,$c00004
Smoke (22:51)
move.w #$8f02,$c00004 ;
move.l #$40000000,$c00004 ;
lea (font).l,a5 ;Адрес хранени шрифта и картинки
move #$29FF,d5 ;Размер шрифта и картинки (8Кб)
; Пересылка символов
VramFont:
move.w (a5)+,$c00000 ;Отправим слово
dbra d5,VramFont
Smoke (22:52)
дальше грузим в a5 адрес графики и записываем словами ее
Smoke (22:56)
есть регистры отвечающие за адреса тайловых карт. они хранятся в врам вместе с графикой! Я точно не помню номера, но это вроде 1 и 4 регистры
Smoke (22:57)
Так вот нужно записать туды адреса планов, толкьо там цена деления не байт и не тайл вроде, это надо экспериментирвать, записывать значение и смотреть куда записалось
Smoke (22:58)
потом выставить в порт $C00004 адрес куда пишем данные и также как графику записываем словами тайловую карту
Smoke (22:59)
вообще чтобы было наглядно, ты можешь в проге GSSV открыть сейв, посмотреть адреса планов А и Б и в сейве записать туда какие-нибудь значения и посмотреть в игре что изменилось. так будет проще понять, что в вдп происходит
Smoke (22:59)
gssv - genesis savestate viewer