//TUTORIAL 5 PART 2 Global GETSTRING$ //USED FOR STORING THE CONTENTS OF THE FILE Global X$ Global QUIT //SET TO TRUE IF THE LOOP SHOULD BE EXITED //DEFINE PROCEDURES DefProc INIT_DISPLAY() DefProc SAVE_FILE() QUIT = False Set Key Repeat To 500 //SLOW DOWN THE KEY INPUT //CREATE THE SCREEN INIT_DISPLAY() //PROMPT FOR USER INPUT Text( 10,50, "Please enter some text and press return: ") : Update Display //REPEAT UNTIL THE USER PRESSES THE RETURN KEY (OR ANY NONE TEXT KEY) Repeat X$ = Inkey$() //GET INPUT If X$ > "" Then //MAKE SURE THE USER HAS ENTERED SOMETHING If (X$ >= "a" And X$ <= "z") Or (X$ >= "A" And X$ <= "Z") Or X$ = " " Then //MAKE SURE ITS A LETTER OR SPACE GETSTRING$ = GETSTRING$ + X$ //APPEND IT TO OUR STRING Text ((Len(GETSTRING$)*10)+10,100,X$) //PRINT IT TO THE SCREEN Update Display X$ = "" Else QUIT = True Text (10,150, "SAVING...") : Update Display EndIf EndIf Until QUIT = True //SAVE THE STRING TO THE FILE SAVE_FILE() //THE INIT_DISPLAY PROCEDURE CREATES A SCREEN AND A PLANE Procedure INIT_DISPLAY() Create Map 640,480,1,1 In Bank 50 //CREATE A MAP IN BANK 50 Set Tile 0,0,1 Using Bank 50 //CREATE A TILE USING A BACKGROUND IMAGE IN BANK 1 Create Plane 1 Using Bank 50 //CREATE PLANE 1 USING THE MAP IN BANK 50 ReDirect GDI Output To Bank 1 //ALL GDI OUTPUT (IN THIS CASE TEXT, GOES TO BANK 1) EndProc Procedure SAVE_FILE() Local Y If FileExist("text.txt") Then //CHECK THAT THE FILE DOESN'T ALREADY EXIST Y=FileDelete("text.txt") //IF IT DOES, THEN DELETE IT AND RECREATE IT EndIf Y=FileCreate("text.txt") //OPEN THE TEXT FILE Open File "text.txt" As ReadWrite Using 1 //OPEN FILE IN READ/WRITE MODE FileWrite(1,GETSTRING$+"&") //WRITE THE STRING TO THE FILE PLUS OUR END OF FILE CHARACTER Close File 1 //CLOSE THE TEXT FILE Text (10,150, "SAVED....") : Update Display Wait Key EndProc EndProg