10 ! =================================================== 20 ! program STATUS.BAC 30 ! version 1.1 40 ! 1984-06-11 50 ! 60 ! (C) Leif Eriksson < 397 > 61 ! G{vle 026-195271 70 ! 100 ! ================================================== 110 ! 120 INTEGER : EXTEND 130 ! 140 PRINT CHR$(12) 150 PRINT CUR(23,0) STRING$(80,61) 160 PRINT CUR(0,0) STRING$(80,61) 170 PRINT CUR(2,0) STRING$(80,61) 180 ON ERROR GOTO 240 190 OPEN 'DR1:DATA.ID' AS FILE 1 200 POSIT #1,6 210 GET #1 Fil$ COUNT 12 220 CLOSE 230 GOTO 280 240 PRINT CUR(5,0) 'Hittar ej filen!' 250 PRINT 'Sitter det verkligen en dataskiva i DR1: ?' 260 PRINT CUR(10,0) 'Tryck p} valfri tangent >>'; 270 GET P$ : GOTO 180 280 ! 290 PRINT CUR(1,0) ' ABC800 databas. STATUS ver. 1.1  ' Fil$ ' ' TAB(80) '' 300 FOR I=5 TO 11 310 PRINT CUR(I,0) SPACE$(80) 320 NEXT I 330 PRINT CUR(5,0) 'Ett |gonblick, jag skriver registrets status p} printer.' 340 ! 350 ON ERROR GOTO 380 360 PREPARE 'PR:\\\\\C\\.\\B' AS FILE 10 370 GOTO 440 380 ! -------------------- fel, printer ej p} -------------------- 390 PRINT 400 PRINT 'Sl} p} skrivaren !!!' 410 PRINT 'Tryck p} valfri tangent >>'; 420 GET P$ : GOTO 350 430 ! 440 PRINT #10 STRING$(80,61) 450 ON ERROR GOTO 460 PRINT #10 TAB(4) 'STATUS ISAM register ' Fil$ ' ' LEFT$(TIME$,10) 470 PRINT #10 STRING$(80,61) CHR$(10,10) 480 OPEN 'DR1:DATA.ID' AS FILE 2 490 OPEN 'DR1:DATA.ISM' AS FILE 3 500 POSIT #3,27 510 GET #2 P$ COUNT 2 520 Postant=CVT$%(P$) 530 GET #2 P$ COUNT 2 540 Antalf{lt=CVT$%(P$) 550 GET #2 P$ COUNT 2 560 Nyckelant=CVT$%(P$) 570 POSIT #2,18 580 DIM L{ngd(Antalf{lt),Namn$(Antalf{lt),Indextyp(Antalf{lt) 590 ! 600 FOR I=1 TO Antalf{lt 610 GET #2 P$ COUNT 2 620 L{ngd(I)=CVT$%(P$) 630 GET #2 Namn$(I) COUNT 12 640 NEXT I 650 ! 660 FOR I=1 TO Nyckelant 670 GET #2 Nyckel$(I) COUNT 8 680 GET #3 P$ COUNT 20 690 Dupl(I)=ASCII(MID$(P$,12,1)) 700 Start(I)=CVT$%(MID$(P$,13,2)) 710 L(I)=ASCII(MID$(P$,15,1)) 720 Typ(I)=ASCII(MID$(P$,16,1)) 730 NEXT I 740 POSIT #3,25 750 GET #3 P$ COUNT 2 760 Postl{ngd=CVT$%(P$) 770 ! 780 PRINT #10 'Antal poster : '; : PRINT #10 USING '####' Postant 790 PRINT #10 'Postl{ngd : '; : PRINT #10 USING '####' Postl{ngd 800 PRINT #10 'Antal f{lt : '; : PRINT #10 USING '####' Antalf{lt 810 PRINT #10 'Antal nycklar : '; : PRINT #10 USING '####' Nyckelant 820 PRINT #10 830 FOR I=1 TO Antalf{lt 840 PRINT #10 'F{lt: '; : PRINT #10 USING '##' I; 850 PRINT #10 TAB(15) 'Namn: ' Namn$(I) ' L{ngd: '; : PRINT #10 USING '####' L{ngd(I) 860 NEXT I 870 PRINT #10 880 FOR I=1 TO Nyckelant 890 PRINT #10 'Nyckel: '; : PRINT #10 USING '##' I; 892 PRINT #10 ' Namn: ' Nyckel$(I) ' L{ngd: '; : PRINT #10 USING '###' L(I); 900 IF Dupl(I)=1 THEN PRINT #10 ' Duplicerade nycklar till}tna.' ELSE PRINT #10 ' Duplicerade nycklar ej till}tna.' 910 IF Typ(I)=0 THEN A$='BIN[R' 920 IF Typ(I)=1 THEN A$='ASCII' 930 IF Typ(I)=2 THEN A$='HELTAL' 940 IF Typ(I)=3 THEN A$='FLYTTAL enkel precicion' 950 IF Typ(I)=4 THEN A$='FLYTTAL dubbel precicion' 960 PRINT #10 TAB(10) 'Startpos: '; : PRINT #10 USING '####' Start(I); 970 PRINT #10 TAB(28) 'Typ: ' A$ 980 NEXT I 990 ! 1000 PRINT #10 1010 PRINT #10 STRING$(80,61) 1015 CLOSE 1020 CHAIN 'MENY' 1030 ! 1040 ! =================================================================