さて、WonderSwanColorはFF同梱版を無事、買う事ができた。で、 カラー対応ライブラリのβ版もダウンロードした。 でも、やっぱり、会社で弄り倒す日々が続く。 さしあたって、「爆弾男(仮名)」をカラー対応にする。色数が 少なくなるが、互換モードがあるので、それなりにすぐ終る。 で、妙な事に気づいた。なぜか、ボーダーカラーの設定が無視さ れている……、様な気がする。 と、言うか、明らかに無視されてるじゃん。 取り敢えず、検証プログラムを組む。なぜか、ボーダーカラーが ちゃんと変更される時もある。 さらに、検証プログラムを組む。うむ。ばっちし、正常動作しな い、正常なプログラムができた。 01:#include <sys/bios.h> 02:#include <sys/libwwc.h> 03: 04:#define RGB(r, g, b) (((unsigned)r << 8) | ((unsigned)g << 4) | (unsigned)b) 05: 06:int main(int argc, char *args[]) 07:{ 08: int i; 09: 10: if(wwc_get_hardarch() != HARDARCH_WSC) 11: return -1; 12: 13: wwc_set_color_mode(COLOR_MODE_4COLOR); 14: 15:// sys_wait(0); 16: 17: wwc_palette_set_color(0, 0, RGB(0xFF, 0x00, 0x00)); 18: wwc_palette_set_color(1, 0, RGB(0x00, 0x00, 0x00)); 19: 20: for(i = 0; i < 2; i++){ 21: display_control(0x1000); 22: 23: key_wait(); 24: } 25: 26: wwc_set_color_mode(COLOR_MODE_GRAYSCALE); 27: 28: return 0; 29:} 検証プログラムはこんな感じ。実行すると、画面が赤くなり、何 かキーを押すと黒くなる。 15行目のコメントにしてる部分を外すと、画面が赤くなる事は無 くなる。現象としては、wwc_set_color_mode実行直後の display_controlのボーダーカラーの設定が無視されると言う物。 取り敢えず、これは仕様かもしれないし、バグかもしれない。さ らには、うちでのみ起こる現象かもしれないので放置。まぁ、バグ だとしたら、正式なリリース版で治るだろう。 治りませんでした。 |