#include <string.h>
#include <sys/bios.h>

char n[25][4], e[25][15], p[25][20], j[25][20];
int a=1, b=0, c=0;

void main()
{
int dispdata();
int key;

strcpy(n[0],"401") ;strcpy(e[0],"sleep") ;strcpy(p[0],"スリープ") ;strcpy(j[0],"眠る");
strcpy(n[1],"402") ;strcpy(e[1],"speak") ;strcpy(p[1],"スピーク") ;strcpy(j[1],"話す");
strcpy(n[2],"403") ;strcpy(e[2],"spend") ;strcpy(p[2],"スペンド") ;strcpy(j[2],"使う");
strcpy(n[3],"404") ;strcpy(e[3],"spring") ;strcpy(p[3],"スプリング") ;strcpy(j[3],"はねる");
strcpy(n[4],"405") ;strcpy(e[4],"stand") ;strcpy(p[4],"スタンド") ;strcpy(j[4],"立つ");
strcpy(n[5],"406") ;strcpy(e[5],"swim") ;strcpy(p[5],"スウィム") ;strcpy(j[5],"泳ぐ");
strcpy(n[6],"407") ;strcpy(e[6],"take") ;strcpy(p[6],"テイク") ;strcpy(j[6],"取る");
strcpy(n[7],"408") ;strcpy(e[7],"teach") ;strcpy(p[7],"ティーチ") ;strcpy(j[7],"教える");
strcpy(n[8],"409") ;strcpy(e[8],"tell") ;strcpy(p[8],"テル") ;strcpy(j[8],"話す、言う");
strcpy(n[9],"410") ;strcpy(e[9],"think") ;strcpy(p[9],"シンク") ;strcpy(j[9],"考える");
strcpy(n[10],"411");strcpy(e[10],"understand");strcpy(p[10],"アンダースタンド") ;strcpy(j[10],"理解する");
strcpy(n[11],"412");strcpy(e[11],"write");strcpy(p[11],"ライト") ;strcpy(j[11],"書く");
strcpy(n[12],"413");strcpy(e[12],"be");strcpy(p[12],"ビー") ;strcpy(j[12],"〜すべきである");
strcpy(n[13],"414");strcpy(e[13],"can");strcpy(p[13],"キャン") ;strcpy(j[13],"〜できる");
strcpy(n[14],"415");strcpy(e[14],"could");strcpy(p[14],"クッド") ;strcpy(j[14],"canの過去形");
strcpy(n[15],"416");strcpy(e[15],"may");strcpy(p[15],"メイ") ;strcpy(j[15],"〜しても良い");
strcpy(n[16],"417");strcpy(e[16],"must");strcpy(p[16],"マスト") ;strcpy(j[16],"〜せねばならない");
strcpy(n[17],"418");strcpy(e[17],"shall");strcpy(p[17],"シャル") ;strcpy(j[17],"〜だろう");
strcpy(n[18],"419");strcpy(e[18],"should");strcpy(p[18],"シュッド") ;strcpy(j[18],"shouldの過去形");
strcpy(n[19],"420");strcpy(e[19],"will");strcpy(p[19],"ウィル") ;strcpy(j[19],"〜であろう");
strcpy(n[20],"421");strcpy(e[20],"would");strcpy(p[20],"ウッド") ;strcpy(j[20],"willの過去形");
strcpy(n[21],"422");strcpy(e[21],"I");strcpy(p[21],"アイ") ;strcpy(j[21],"私は");
strcpy(n[22],"423");strcpy(e[22],"my");strcpy(p[22],"マイ") ;strcpy(j[22],"私の");
strcpy(n[23],"424");strcpy(e[23],"me");strcpy(p[23],"ミー") ;strcpy(j[23],"私を");
strcpy(n[24],"425");strcpy(e[24],"mine");strcpy(p[24],"マイン") ;strcpy(j[24],"私のもの");

text_screen_init(); 
text_put_string(9, 5, "S T A R T");

while ((key = key_wait()) != KEY_START) {
switch (key) {
case KEY_X1:dispdata(-1);break;
case KEY_X2:dispdata(1);break;
case KEY_X3:dispdata(1);break;
case KEY_X4:dispdata(-1);break;
case KEY_Y2:c=1;b=0;dispdata(0);break;
case KEY_Y4:c=0;b=0;dispdata(0);break;
case KEY_A:dispdata(1);break;
case KEY_B:dispdata(-1);break;
}
}
}

dispdata(i)
int i;
{
if (c==0) {
	if (b==0) { 
		text_screen_init(); 
		text_put_string(5, 3, n[a-1]);
		text_put_string(5, 7, e[a-1]);
		text_put_string(17, 7, p[a-1]);
		b=1;}
	else { 
		text_put_string(5, 11, j[a-1]);
		if ((1<=(a+i)) && ((a+i)<=25)) {a=a+i;b=0;}
		else {b=0;};
		};
	}
else {
	if (b==0) { 
		text_screen_init(); 
		text_put_string(5, 3, n[a-1]);
		text_put_string(5, 7, j[a-1]);
		b=1;}
	else { 
		text_put_string(5, 11, e[a-1]);
		text_put_string(17, 11, p[a-1]);
		if ((1<=(a+i)) && ((a+i)<=25)) {a=a+i;b=0;}
		else {b=0;};
		};
	}
}