10 ' ECRITURE DIRECTE DE FICHIERS TEXTE
20 ' AMSTRAD CPC - Michel Archambault 30 OPENOUT"B":MEMORY HIMEM -1:CLOSEOUT 40 MODE 1:LOCATE 4,10:PRINT "Quel MODE pour ce Fichier Ecran ?":TEX$="12":GOSUB 50000:M=K:MODE M 50 IF M=2 THEN INK 0,20:INK 1,0:CLS 100 LOCATE 1,10:INPUT "NOM DU FICHIER ( sans .DOC ) ",FIC$ 110 LOCATE 5,13:PRINT"a CREER , LIRE ou MODIFIER ?":TEX$="CLM":GOSUB 50000 120 CLS:ON K GOSUB 200,45000,400 130 INK 0,1:INK 1,24:MODE 1 140 END 200 ' SAISIE du FICHIER ECRAN 210 OPENOUT FIC$+".DOC":PRINT #9,M 220 LOCATE 6,8:PRINT" ENTREZ LES PHRASES DU FICHIER":LOCATE 6,10:PRINT"ou P pour pause de bas de page":LOCATE 6,12:PRINT "ou Q pour quitter." 230 LOCATE 13,24:PRINT "Tapez une touche.":CALL &BB06:CLS 240 BORDER 9 250 LINE INPUT"",A$ 260 WRITE #9,A$ 270 IF UPPER$(A$)="Q" THEN 300 280 IF UPPER$(A$)="P" THEN CLS 290 GOTO 250 300 CLOSEOUT:BORDER 1 310 CLS:LOCATE 8,10:PRINT"ET MAINTENANT LA LECTURE.":LOCATE 13,24:PRINT"TAPEZ UNE TOUCHE" 320 CALL &BB06:CLS:GOSUB 45000 330 RETURN 400 'CORRECTIONS DE FICHIERS 410 LOCATE 1,10:PRINT "Tapez ENTER pour chaque chaine correcte":PRINT:PRINT "sinon entrez la correction. Servez-vous":PRINT:PRINT "du SHIFT+COPY." 420 LOCATE 13,24:PRINT "Tapez une Touche":CALL &BB06 430 DIM A$(100):CLS:BORDER 9:I=0 440 OPENIN FIC$+".DOC":INPUT#9,M:MODE M 450 WHILE NOT EOF:I=I+1 460 INPUT#9,A$(I):PRINT A$(I) 470 LINE INPUT "",R$ 480 IF R$<>"" THEN A$(I)=R$ 490 WEND:CLOSEIN 500 OPENOUT FIC$ 510 FOR J=1 TO I:WRITE#9,A$(J):NEXT 520 CLOSEOUT:BORDER 1 530 CLS:LOCATE 17,10:PRINT "LECTURE" 540 GOSUB 45000 550 RETURN 45000 ' AFFICHAGE PAR PAR PAGES D'ECRAN 45010 OPENIN FIC$+".DOC" 45020 LOCATE 9,12:PRINT"SUR ECRAN OU IMPRIMANTE ?":TEX$="EI":GOSUB 50000:CLS 45030 INPUT#9,M:MODE M:IF K=2 THEN WIDTH 40*M 45040 WHILE NOT EOF 45050 INPUT#9,L$:ON K GOTO 45060,45080 45060 IF UPPER$(L$)="P" OR UPPER$(L$)="Q" THEN CALL &BB06:CLS:GOTO 45100 45070 PRINT L$:GOTO 45100 45080 IF UPPER$(L$)="P" OR UPPER$(L$)="Q" THEN PRINT#8,STRING$(40*M-1,"-"):GOTO 45100 45090 PRINT #8,L$ 45100 WEND 45110 CLOSEIN 45120 RETURN 50000 'REPONSE A UN MENU 50010 LT=LEN(TEX$) 50020 LOCATE 15-LT,24:PRINT"Reponse ("; 50030 FOR I=1 TO LT-1 50040 PRINT MID$(TEX$,I,1);",";:NEXT 50050 PRINT RIGHT$(TEX$,1);")";CHR$(154);CHR$(243);CHR$(207) 50060 TEX$=UPPER$(TEX$) 50070 R$="":WHILE R$="":R$=INKEY$:WEND 50080 R$=UPPER$(R$):K=INSTR(TEX$,R$) 50090 IF K=0 THEN PRINT CHR$(7);:GOTO 50070 50100 RETURN |