/*
	ファイルの読み書き for WonderWitch

   by 松原

・このソフトウェアの著作権・所有権はWonderWitch.Comに帰属します。
・このソフトウェアを使用することによって生じたあらゆる損害に対して責任を負いかねます。
・このソフトウェアを営利目的に利用することを禁止します。
*/

#include "sys/bios.h"
#include "stdio.h"
#include "bsvilwp.h" /*===== ← ☆ ヘッダーファイルインクルード =====*/

FILE far *fp;


/*----------------------------------------*/
void main(void)
{
	static int iScore;
	int iKey;

	text_screen_init();
	text_put_string(3 ,0 ,"A:SAVE");
	text_put_string(3 ,1 ,"B:LOAD");
	text_put_string(3 ,4 ,"START:END");

    /*------ bmpsaver IL 初期化 */
    if (ilibIL->_open("@bmpsaver", (IL far *)&bsvIL) != E_FS_SUCCESS) {

    }else{
	    bs_set_target(KH_BS_SCREEN2);
	}

	iScore=0;
	for(;;) {
	    iKey = key_wait();
		if(iKey == KEY_START)
			break;

		switch(iKey) {
		case KEY_A:
			fp = fopen("/rom0/testfile.dat" ,"w"); 
			if(fp==NULL) {
				text_put_string(1, 10, "save error");
				break;
			}
			iScore=999;
			fwrite( (const void far *)&iScore ,sizeof(int) ,1 ,fp); 
			/*ファイルにブロックデータを書き出します。*/

			fclose(fp); 

			text_put_string(1, 10, "save data=");
			text_put_numeric(11 ,10 ,3 ,NUM_PADSPACE ,iScore );

			break;

		case KEY_B:
			fp = fopen("/rom0/testfile.dat" ,"r"); 
			if(fp==NULL){
				text_put_string(1, 10, "load error");
				break;
			}
			fread( (const void far *)&iScore ,sizeof(int), 1, fp); 
			/*ファイルからブロックデータを読み込みます。*/
			fclose(fp); 
			text_put_string(1, 10, "load data=");
			text_put_numeric(11 ,10 ,3 ,NUM_PADSPACE ,iScore );
			break;

		case KEY_Y1:
            /*===== ↓☆画面キャプチャ実行部分 ===*/
			bs_save_screen_xmodem("sample.bmp",0,0,224,144);
			break;
		}

	}
}



