2 ! ********************************************************************** 3 ! Program CONFIG.BAS Utg}va 1.2 1985-08-28 4 ! av Mats Knuts, MOK Systemutveckling 5 ! [ndrad av Bo Kullmar (F|rb{ttrad felhantering) 6 ! F|r ABC800C ABC800M ABC802 ABC806 8 ! Testad p} ABC806 10 ! ********************************************************************** 20 ! 30 ! +--------------------------------+ 40 ! ! Program.. CONFIG.BAC ! 50 ! ! Anv{ndes f|r att skapa en ! 60 ! ! egen ADDOPT.ABS p} ett enklare ! 70 ! ! s{tt. ! 80 ! ! ! 90 ! +--------------------------------+ 100 ! 110 INTEGER 120 EXTEND 130 DEF FNInp$(Text$,Def) 140 IF Def THEN Def$='J' ELSE Def$='N' 150 ; CYA TAB(28-LEN(Text$)) Text$ ' (' Def$ ') ';YEL; 160 GET Slask$ 170 IF Slask$='j' THEN Slask$='J' 180 IF Slask$='n' THEN Slask$='N' 190 IF Slask$=CHR$(13) THEN Slask$=Def$ 200 IF Slask$<>'J' AND Slask$<>'N' THEN 160 210 ; Slask$ 220 RETURN Slask$ 230 FNEND 240 ! 250 ! HUVUDPROGRAM 260 ! 270 Antopt=10 280 DIM Opt$(Antopt)=11 290 ; CHR$(12) YEL '' CYA ' CONFIG ' YEL '' 300 ; YEL STRING$(PEEK(65364)-1,ASCII('=')) 310 ; : ; CYA 'Detta program l}ter dig v{lja vilka optioner du vill ha,' 320 ; CYA 'och skapar d{refter en ny ADDOPT.ABS fil.' 330 ; : ; CYA 'Som defaultv{rden anges nuvarande inst{llning.' 340 ; : ; 350 Z=FNL{sadd 360 ON ERROR GOTO 440 : Res$=CHR$(255) ! Tabellstart 370 WHILE -1 ! O{ndlig loop 380 READ Option$,Optionname$ 390 FOR X=0 TO Antopt 400 IF Opt$(X)=Optionname$ THEN Def=-1 : GOTO 420 410 NEXT X : Def=0 420 IF FNInp$(Option$,Def)='J' THEN Res$=Res$+CHR$(255)+Optionname$ 430 WEND 440 IF ERRCODE<>141 THEN ; : ; FNError$(ERRCODE) : ; 445 ON ERROR GOTO 495 450 Res$=Res$+CHR$(254) 460 PREPARE 'ADDOPT.ABS' AS FILE 1 470 PUT #1,Res$ 480 CLOSE 1 485 ; : ; CYA 'Klart !! ' 486 ; : ; CYA 'OBS! F|r att l{sa in de valda rutinerna m}ste du trycka RESET' 487 ; : ; 490 END 495 ; : ; : ; FNError$(ERRCODE) : ; : ; 496 END 500 DATA Isam,'ISAMOPT REL' 510 DATA Softscroll,'SOFTOPT REL' 520 DATA Datavison/ADM 3a emulering,'TERMOPT REL' 530 DATA Ramdisk,'OPTROSH REL' 540 DATA L{sa in drivetabell,'DEVDES REL' 545 DATA Hardcopyrutin,'HARDCOPYREL' 550 DEF FNL{sadd LOCAL A$=11 555 ON ERROR GOTO 635 560 X=0 570 OPEN 'ADDOPT.ABS' AS FILE 1 580 GET #1,A$ COUNT 2 590 GET #1,A$ COUNT 11 600 Opt$(X)=A$ : X=X+1 610 GET #1,A$ : IF ASCII(A$)=255 THEN 590 620 CLOSE 1 630 RETURN 0 635 IF ERRCODE=21 THEN ; RED 'Det m}ste finnas en gammal ADDOPT.ABS!' : ; : GOTO 638 637 ; : ; FNError$(ERRCODE) : ; 638 END 640 FNEND 700 DEF FNError$(Ec) 710 IF Ec<35 OR Ec>43 RETURN 'Fel, nr '+NUM$(Ec) 720 ON Ec-34 GOTO 730,740,750,760,770,780,790,800,810 730 RETURN RED+'Checksummefel vid l{sning!' 740 RETURN RED+'Checksummefel vid skrivning!' 750 RETURN RED+'Felaktigt sektorformat!' 760 RETURN RED+'Sektornummer utanf|r filen!' 770 RETURN RED+'Filen skrivskyddad!' 780 RETURN RED+'Filen raderskyddad!' 790 RETURN RED+'Skivan full!' 800 RETURN RED+'Enheten ej klar!' 810 RETURN RED+'Skivan skrivskyddad!' 820 FNEND