Цвета:
В компьютере при 32х битном режиме формат цвета выглядит так: ARGB, где
A-степень прозрачности(альфа),
R – степень интенсивности красного цвета,
G - степень интенсивности зеленого,
B - степень интенсивности синего .
Но есть одна особенность, обозначение цвета на низком уровне выглядит по-другому: ABGR, То -есть при А=11, R=FF, G=C8, B=D1 (значения взяты «от балды») обозначение цвета будет не 11FFC8D1, а 11D1C8FF.
Как дело обстоит на сеге?
Как я понимаю, при 16 разрядах на значение цвета уходит пол байта, т.е ARGB выглядит не aaxxyyzz, а так axyz при этом a-"булево" значение, означает прозрачен(0), или не прозрачен(1 или F ??) слой.
SEGA держит 3 слоя, как определить, с каким слоем работаю?
Дай пример как рассчитывается уровень жизни бойца.
Как на Сеге выглядит число 1234h: 1234 или 3421?
В компьютере нулевой байт, ничего не означающий, получил применение как разделитель. Каждый раз встречая 00 проц понимает, что это конец строки.
Как строки отделяются друг от друга в сеге?
Опиши файл конфига палитры машинным яыком.
Сделай, цитаты, как про Nightwolf’a, можно скриншотом, можно без подписей, что куда адресовывается, только подпиши, что это меню, это саб-зиро и т.д.
К какому размеру памяти может адресовываться процессор?
Проблема декомпиляции сеговых ромов состоит в следующем:
Команда, которая на общепонятном языке звучит как mov bx,ax в любом, уважающем себя компьютере выглядит таким образом: 8BD8 . То есть, каждый раз натыкаясь на 8BD8, IDA будет упорно вдалбливать в листинг mov bx,ax в то время, как это значит совсем другое.(спросите Кабала, он скажет)
Меня не интересует взлом как таковой, просто есть у меня пара задумок, игр, некоторые из них принципиально(для меня) должны быть на Сеге. А взлом поможет мне понять структуру рома и принцип написания игры.
Несмотря на то, что я тут вешал, дизасм и асм, писать в ассемблере глупо по нескольким причинам:
1) Писать придется больше (сравнение ром 4 мБ , листинг 45 мБ)
2) Скомпилированный файл будет больше, чем написанный непосредственно в коде(10-20%)
3) Прога будет работать медленнее(10-20%)
4) Асм мне так и не удалось запустить(наверное это надо было писать вначале
)
Наверное должен появиться вопрос, а нафига тогда это надо??
Ответ простой: Команда 4EF9 0011 22D4 (взято наобум) непонятна, дизасмнутая, будет выглядеть так: jmp $0011 22D4.
jmp – это jump, т.е понятно что 4EF9 это ссылка
Логика ясна, я думаю. Правда дизасм, мне кажется глючный.
Добавлено
с дизасмом все в порядке, просто люди, которые повесили его в разделе сега заслуживают страшной смерти, так как это прога для разбора дендивских ромов.