typedef unsigned short int u16;
typedef unsigned int u32;

int main(void)
{
  u16 i;
  *(u32*)0x04000000 = 0x0103;
  for(i=0; i<240*160; i+=2) *(u16*)(0x06000000+i) = i;
  while(1);
}

多分動くんじゃない?