Оно точно неправильно детектится. Я детектю вот так:
#if SDL_BYTEORDER == SDL_BIG_ENDIAN, а не так как написано у тебя. И как только я поменял детект - все стало определяться правильно.
я уже не помню откуда я взял тот детект, всё равно пишу в слепую, ибо всё более-менее мощное у меня little endian.

Во вторых, как только оно стало правильно детектиться - все стало желтым, причем вне зависимости Antiflicker OFF или ON.
хм. похоже никаких преобразований не нужно, ибо SDL само всё преобразовывает.
вопрос - а почему раньше (когда неправильно детектило), оно разный резалт показывало в зависимости от антифлика?
ответа я не знаю.

Q-Master, пофикси плиз, спасибо скажем (поискать в defines.h и zemu.cpp по ZEMU_BIG_ENDIAN).