1 '(c) LOGI'STICK 84 3 CLEAR0:CLEAR(FRE(0)-999)/14*11:E=(FRE(0)-970)/6:CONSOLE0,4,0,1,0 5 BEEP99,1:CLS:PRINT"FORMAT °";INT(E);"§":LOCATE2,1:INPUT"LONGUEUR";R:LOCATE3,2 7 INPUT"LARGEUR";P:IFR<1ORR>26ORP<3ORP>40ORR*P>ETHEN5 9 R=R-1:P=P-1:GOSUB40:CLS 11 ONERRORGOTO270:J$=" ":GOSUB30 13 A$=INKEY$:IFA$=""THEN13ELSEA=ASC(A$) 14 IFA=94THENIT=-IT:GOTO11 15 IFA=30ANDY>0THENY=Y-1:GOTO11 17 IFA=28ANDX0THENX=X-1:GOTO11 23 IFA=32THENK=K+1:IFK<3THEN11ELSEK=0:GOTO11 25 IFA>64ANDA<80THEN28 27 GOTO13 28 ONA-64GOTO50,70,60,90,80,100,112,120,130,140,150,160,190,320,500 30 LOCATE0,0:PRINT"°";CHR$(X+65);":"; 31 IFIT=1THENPRINT"ABCDEFGHIJKLMNO^§";:GOTO33 32 PRINTA$(X,0);LEFT$(J$+" ",17-LEN(A$(X,0))); 33 FORT=1TO3:LOCATE3,T:PRINTJ$; 34 LOCATE0,T:PRINTRIGHT$(STR$(Y+T),2);":"; 36 IFB=0THENPRINTA$(X,Y+T-1);ELSEPRINTB$(X,Y+T-1); 38 NEXTT:LINE(12,11+K*8)-(16,11+K*8):RETURN 40 DIMA$(R,P),B$(R,P),H(7),F(3),I(3):CONSOLE0,4,0,1,0:IT=1:PR=14:RETURN 50 A$="CALCUL...":GOSUB258:GOTO202 60 A$="FORMULE":C$=B$(X,Y+K):GOSUB260:B$(X,Y+K)=C$:GOTO11 70 A$="ETIQUETTE":C$=A$(X,Y+K):GOSUB260:A$(X,Y+K)=C$:GOTO11 80 A$="TAB-FOR":GOSUB258:B=1:GOTO91 90 A$="TAB-ETI":GOSUB258:B=0 91 FORZ=1TO200:NEXTZ:GOTO11 100 A$="CA:(S)AVE/(L)OAD":GOSUB258 101 A$=INKEY$:IFA$=""THEN101ELSEIFA$="S"THEN105ELSEIFA$="L"THEN110ELSE11 105 A$="SAVE":C$="":GOSUB260:INIT£1,C$,10+(R+1)*(P+1)*25:GOTO400 110 A$="LOAD":C$="":GOSUB260:INIT£1,C$:GOTO410 112 A$="CA:(E)FF/(D)IR":GOSUB258 113 A$=INKEY$:IFA$=""THEN113ELSEIFA$="E"THEN115ELSEIFA$="D"THEN118ELSE11 115 A$="EFFACEMENT":C$="":GOSUB260:DELETEC$,"D":GOTO91 118 A$="DIR":GOSUB258:CLS:DIR 119 IFINKEY$=""THEN119ELSE11 120 A$="PRINT":C$="":GOSUB260:LPRINTCHR$(18):LPRINT"C0":LPRINT"S0":LPRINT"Q1" 121 LPRINT"M470,-80":LPRINT"P";C$:LPRINT"M450,-100":LPRINT"I":FORE=0TOR 122 FORF=0TOP:IFE=0THENLPRINT"M";-F*10;",30":LPRINT"P";F+1 123 LPRINT"M";-F*10;",0":IFB=0THENLPRINT"P";A$(E,F)ELSELPRINT"P";B$(E,F) 124 NEXTF:LPRINT"M10,-48":LPRINT"P";CHR$(E+65):LPRINT"M0,-102":LPRINT"I":NEXTE 125 LPRINTCHR$(17):GOTO11 130 A$="END=1":GOSUB258 131 A$=INKEY$:IFA$=""THEN131ELSEIFA$<>"1"THEN11ELSECLS:END 140 A$="MOVE":C$="":GOSUB260 141 IFC$=""THEN11 142 Z=ASC(LEFT$(C$,1))-65:W=VAL(RIGHT$(C$,LEN(C$)-1))-1 144 IFZ<0ORZ>RORW<0ORW>P-2THEN140ELSEX=Z:Y=W:GOTO11 150 A$="SLEEP=1":GOSUB258 151 A$=INKEY$:IFA$=""THEN151ELSEIFA$<>"1"THEN11ELSESLEEP:GOTO11 160 A$="TRANSPOSITION":C$="":GOSUB260 161 A$=A$(X,Y+K):IFB=1THENA$=B$(X,Y+K) 162 IFA$=""ORC$=""THEN11ELSEW=ASC(C$) 163 LOCATE3,1:PRINTJ$;:LOCATE3,1:INPUT"PAS";N 164 IF(W>47ANDW<58)ORW=46THEN170ELSEIFW>64ANDW64ANDLR+65ORB=0THEN185 183 Z=VAL(MID$(A$,V+1,2)):IFZ<1ORZ>PTHEN185 184 A$=LEFT$(A$,V)+MID$(STR$(Z+N),2,2)+RIGHT$(A$,LEN(A$)-V-LEN(STR$(Z))+1) 185 IFLEN(A$)>V+1 THENV=V+1:GOTO182 186 NEXTV:IFLEN(A$)>16THENA$=LEFT$(A$,16) 187 IFB=1THENB$(W-65,F)=A$ELSEA$(W-65,F)=A$ 188 NEXTF:BEEP99,3:GOTO11 190 A$="RAM:":GOSUB258:LOCATE8,0:PRINTFRE(A$):GOTO91 202 FORE=0TOR:FORF=0TOP:C$=B$(E,F):LOCATE13,0 204 PRINTCHR$(E+65);RIGHT$(STR$(F+1),2):IFC$=""THEN212 206 M=0:FORZ=1TOLEN(C$):IFMID$(C$,Z,1)="("THENS=Z+1:GOTO210 208 IFMID$(C$,Z,1)=")"THENF(M)=Z-1:O=Z-1:GOSUB214:GOSUB221:I(M)=J:M=M+1 210 NEXTZ:M=0:S=1:O=LEN(C$):GOSUB214:M=0:GOSUB221:C$=STR$(J):GOSUB280 212 NEXTF:NEXTE:BEEP200,3:GOTO11 214 N=0:FORV=STOO:W=ASC(MID$(C$,V,1)):IF(W>47ANDW<58)ORW=46THEN240 216 IFW>64ANDW0THENJ=J/C:GOTO236 226 IFW=42THENJ=J*C:N=N+1:NEXTV:RETURN 228 IFW=43THENJ=J+C:N=N+1:NEXTV:RETURN 230 IFW=45THENJ=J-C:N=N+1:NEXTV:RETURN 232 IFW=94THENN=N+1:IFC<>0THENJ=J^C:NEXTV:RETURN 234 IFW=40THENV=F(M)+1:M=M+1 236 NEXTV:RETURN 240 H(N)=VAL(RIGHT$(C$,LEN(C$)-V+1)):V=V-2+LEN(STR$(H(N))):N=N+1:GOTO220 242 L=VAL(MID$(C$,V+1,2))-1:IFL<0ORL>PTHEN220 243 H(N)=VAL(A$(W-65,L)):V=V+2:N=N+1:GOTO220 258 BEEP99,1:LOCATE3,0:PRINTA$;LEFT$(J$,16-LEN(A$));:RETURN 260 GOSUB258:GOTO275 262 A$=INKEY$:IFA$=""THEN262ELSEA=ASC(A$) 264 IFA=29ANDLEN(C$)>0THENC$=LEFT$(C$,LEN(C$)-1):GOTO275 265 IFA=30THENC$="":GOTO275 266 IFA=13THENRETURN 267 IFLEN(C$)<16THENC$=C$+A$:LOCATE3,K+1:PRINTC$; 269 IFINKEY$<>""THEN269ELSE262 270 BEEP150,2:CLS:LOCATE4,1:PRINT"ERREUR No";ERR 271 IFINKEY$=""THEN271ELSERESUME11 275 LOCATE2,K+1:PRINT"=";C$;LEFT$(J$,16-LEN(C$));:GOTO269 280 IFLEN(C$)>16THENC$=LEFT$(C$,12)+RIGHT$(C$,4) 281 IFPR=14THENZ=0ELSEZ=.5 282 A$(E,F)=STR$((INT(VAL(C$)*10^PR+Z))/10^PR):RETURN 320 A$="K7:(S)AVE/(L)OAD":GOSUB258 322 A$=INKEY$:IFA$=""THEN322ELSEIFA$="S"THEN324ELSEIFA$="L"THEN328ELSE11 324 A$="SAVE":GOSUB258:INIT£1,"CASO:",1200,"B":GOTO400 328 A$="LOAD":GOSUB258:INIT£1,"CASI:",1200,"B":GOTO410 400 PRINT£1,R,P:FORE=0TOR:FORF=0TOP:PRINT£1,A$(E,F),B$(E,F):NEXTF:NEXTE 401 BEEP99,3:GOTO11 410 ERASEA$,B$,H,F,I:INPUT£1,R,P:GOSUB40:FORE=0TOR:FORF=0TOP 411 INPUT£1,A$(E,F),B$(E,F):NEXTF:NEXTE:BEEP99,3:GOTO11 500 A$="PRE-DEC:0-14":C$="":GOSUB260:IFC$=""THEN11 501 PR=INT(VAL(C$)):IFPR<0ORPR>14THEN500ELSE11 14940 BYTES FREE