今回は、オセロゲームのBG書き換えの仕方について質問です。
BG書き換えは以下の関数で可能だと思うのです。
しかし、オセロのテーブルがうまく描画されず、
どうして、画面が上手く書き換わらないのですか?
もしかして、c言語以前の問題かもしれませんが、よろしくお願いします。
void SetDraw(char x,char y,char number)
{
int adr;
adr = (y-1)*32+x;
*(char*)0x2006 = 0x20+adr/256;
*(char*)0x2006 = adr;
*(char*)0x2007 = number;
}
void SetTable(char x,char y)
{
SetDraw(x,y,0x01);
SetDraw(x+1,y,0x02);
SetDraw(x,y+1,0x11);
SetDraw(x+1,y+1,0x12);
}
void Title(char *GameMode)
{
char i,j;
static char prev=0;
if((Pad & START) && !prev){
*(char*)0x2006=0x20;
*(char*)0x2006=0x00;
for(i=0;i<8;i++)
{
for(j=0;j<8;j++)
SetTable(i*2,j*2);
}
*GameMode=GAME;
}
prev=(Pad & START);
}