Editted this a little bit, added a load function ontop of the existing save function. Neither saving nor loading exits you out now! You can access the load function via the control key. I have also set it to open in windows mode. Thanks for tryin it The Nerd!
[EDIT] That's why you can move the cursor with the mouse...
global currentx=1 : global currenty=1 : dim textload$(40) : set window on
dim text$(40,80):sync on:sync rate 60:get image 2,0,0,8,12,1:line 0,0,7,0:line 0,0,0,10:line 7,0,7,10:line 0,10,7,10:get image 1,0,0,9,13,1:paste image 2,0,0:set text font "arial":sprite 1,0,0,1
set sprite 1,1,1:for y=1 to 40:for x=1 to 80:text$(y,x)=" ":next y:next x:do:if mouseclick()=1 : currenty=int(mousey()/12.)+1 : currentx=int(mousex()/8.)+1 : endif
if mouseclick()=2:hide sprite 1: get image 3,0,0,639,479,1 : cls : print "Save Text File As: (Example is C:text.txt)" : set cursor 0,20: input savename$:if file exist(savename$)=1: delete file savename$:endif
open to write 1,savename$:dim writestring$(40):for y=1 to 40:for x=1 to 80:writestring$(y)=writestring$(y)+text$(y,x):next y:next x:for z=1 to 40:write string 1,writestring$(z):next z
close file 1 : paste image 3,0,0 : show sprite 1 : endif
if entry$() <> "" and len(entry$())=1:if scancode()=14:dec currentx,1:returnit():text$(currenty,currentx)=" ":paste image 2,currentx*8-8,currenty*12-12:clear entry buffer:goto endthisif:endif
if scancode()=28:if currenty<40:inc currenty:currentx=1:endif:clear entry buffer:goto endthisif:endif
paste image 2,currentx*8-8,currenty*12-12:text$(currenty,currentx)=entry$(): text currentx*8-8,currenty*12-12,text$(currenty,currentx): inc currentx : clear entry buffer : returnit():else:clear entry buffer:endif
endthisif:sprite 1,currentx*8-8,currenty*12-12,1 : sync
if controlkey()=1: cls : hide sprite 1 : input "File to Load: (example is C:text.txt) ",filename$ : sync :open to read 2,filename$: for x=1 to 40 : read string 2,textload$(x) : next x
for y=1 to 40 : for z=1 to 80 : text$(y,z)=MID$(textload$(y),z) : next z : next y : cls : for y=1 to 40 : for x=1 to 80 : text x*8-8,y*12-12,text$(y,x) : next y : next x
sync : close file 2 : show sprite 1 : endif
loop
function returnit()
if currentx<1 and currenty=1 : currentx=1 : exitfunction : endif : if currentx>80 and currenty=40 : currentx=80 : exitfunction : endif
if currentx<1 : currentx=80 : dec currenty : exitfunction : endif : if currentx>80 : currentx=1 : inc currenty : endif
endfunction