Сообщение от riku.kh3
Ага, вроде того. Полоски только еще останутся, 512 байт каждые 16384 или около того.
|
Если учесть, что одна полоса в ширину, высотой в 1 пиксель, имеет 512 байт, то убрав по 2 пикселя каждые 32 байта, получим полосу, шириной 480.
Таким образом мы убираем исривление пока только по вертикали. Но есть ещё горизонтальные смещённые линии. Поэтому нужно убирать ещё каждые 32 блока по 2 блока, первый и последний, если учесть, что один блок - теперь уже 480 байт - одна горизонтальная линия. Тогда должно быть всё выровнено. ИМХО.
Сообщение от riku.kh3
Кнопки O/X в игре поменять местами так и неполучилось, кстати. Все '00400000' в эльфе перебрал, а крестик в игре по прежнему работает(
|
Кстати, не всегда может быть u32(dword) формат
00400000. Вполне возможно, что данные записаны в u16(word), например
0040243C. А если крупные компании, то у них может быть модифицированный SDK, так там могут записать вообще извращённо, либо присвоить этим цифрам свои переменные, например b = 00004000; d = 00002000, таким образом получаем в компилированном коде
0b27100C
0d27100C.
Но я больше склоняюсь, что используется u16, как привёл пример
Scorpeg.