1 DIM FILE$(14) 2 MODE=PEEK(87):GR. MODE+32 10 P=764:Q=225:POKE P,Q 20 ? "Touch S to store screen" 30 ? "Touch R to restore screen" 35 ? "Touch Q to quit" 40 KEY=PEEK(P) 50 IF KEY=Q THEN 40 55 POKE P,Q 60 IF KEY=47 THEN 32767 70 IF KEY=40 THEN 2000 80 IF KEY<>62 THEN 20 1000 ?:?:?:? "Enter file to store screen to":TRAP 1000:INPUT FILE$ 1010 OPEN #1,8,0,FILE$ 1015 ? #1;MODE 1020 TRAP 1090:POS. 0,0 1030 BYTE=0:BYTECOUNT=0 1050 GET #6,B 1060 IF B=BYTE THEN BYTECOUNT=BYTECOUNT+1:GOTO 1050 1070 ? #1;BYTE 1075 ? #1;BYTECOUNT 1080 BYTE=B:BYTECOUNT=1:GOTO 1050 1090 CLOSE #1 1100 ? "Screen stored to file ";FILE$ 1110 POKE P,Q 1120 ? "Touch C to continue" 1130 IF PEEK(P)=Q THEN 1130 1140 IF PEEK(P)<> 18 THEN ?:?:?:GOTO 1110 1150 GOTO 10 2000 GR. MODE 2001 ?:?:?:? "Enter file to restore screen from":TRAP 2001:INPUT FILE$ 2010 OPEN #1,4,0,FILE$ 2015 INPUT #1,MODE:GR. MODE 2020 POS. 0,0 2030 TRAP 2070 2040 INPUT #1,BYTE,BYTECOUNT 2050 FOR I=1 TO BYTECOUNT:PUT #6,BYTE:NEXT I 2060 GOTO 2040 2070 CLOSE #1 2080 ? "Screen restored from ";FILE$ 2090 POKE P,Q 2100 ? "Touch C to continue" 2110 IF PEEK(P)=Q THEN 2110 2120 IF PEEK(P)<>18 THEN ?:?:?:GOTO 2090 2130 GOTO 10 32767 END In addition, the following lines may be added to provide a "cursor" showing the location being stored. 1042 V1=PEEK(85):IF V1=0 THEN POKE 84,PEEK(84)-1:POKE 85,PREV:GOTO 1046 1044 POKE 85,V1-1:PREV=V1 1046 PUT #6,2:IF PEEK(85)=0 THEN POKE 84,PEEK(84)-1:POKE 85,PREV:GOTO 1050 1048 POKE 85,PEEK(85)-1 1050 PUT #6,B