DataMuseum.dk

Presents historical artifacts from the history of:

Bogika Butler

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Bogika Butler

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦fd9d84bc6⟧ TextFile

    Length: 7040 (0x1b80)
    Types: TextFile
    Names: »LNKDF8.BAK«

Derivation

└─⟦91467e717⟧ Bits:30009789/_.ft.Ibm2.50007348.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »LNKDF8.BAK« 

TextFile

      PROCEDURE FilAsg(VAR Fl: FileType
                      ;Fn: FileNameType
                      );

        BEGIN (*FILASG*)
         IF test((.0,1.)) THEN
            writeln(TestOut, 'FILasg   FlNm=', Fn);
         assign(Fl.F, Fn)
        END;  (*FILASG*)

      PROCEDURE FilRst(VAR Status: StatusType
                      ;VAR Fl: FileType
                      );

        BEGIN (*FILRST*)
         WITH Fl DO
           BEGIN
            P := 0;
            reset(F);
            IF eof(F) THEN
               Status := Status + (.UnExpectedEof.);
            IF test((.0,1.)) THEN
              BEGIN
               write(TestOut, 'FILrst'); TSTstat(Status); TSTln;
              END;
           END
        END;  (*FILRST*)

      PROCEDURE FilRwt(VAR Fl: FileType
                      );

        BEGIN (*FILRWT*)
         IF test((.0,1.)) THEN
            writeln(TestOut, 'FILrwt');
         WITH Fl DO
           BEGIN
            rewrite(F);
            P := 0;
           END
        END;  (*FILRWT*)

      PROCEDURE FilCls(VAR Fl: FileType
                      );

        BEGIN (*FILCLS*)
         close(Fl.F);
        END;  (*FILCLS*)

      PROCEDURE FilSeek(VAR Status: StatusType
                       ;VAR Fl: FileType
                       ;    Position: FileAddressType
                       );

        BEGIN (*FILSEEK*)
         WITH Fl DO
           BEGIN
            P := Position;
            seek(F, Position);
            IF eof(F) THEN
               Status := Status + (.UnExpectedEof.);
            IF test((.0,1,2.)) THEN
              BEGIN
               write(TestOut, 'FILSEEK  '); TSTstat(Status); TSTindt;
               write(TestOut, 'P=', P:1
                            , '  EOF='); TSTbool(eof(F));
               TSTln;
              END;
           END
        END;  (*FILSEEK*)

      PROCEDURE FGi8(VAR Status: StatusType
                    ;VAR Fl: FileType
                    ;VAR V: i8
                    );

        BEGIN (*FGI8*)
         WITH Fl DO
           BEGIN
            IF not eof(F) THEN
              BEGIN
               read(F,V);
               P := P + 1;
              END
            ELSE
               Status := Status + (.UnexpectedEof.);
            IF test((.0,2.)) THEN
              BEGIN
               write(TestOut, 'FGI8     '); TSTstat(Status); TSTindt;
               write(TestOut, 'P=', P:1,' V=', V:1, ' EOF='); TSTbool(eof(F));
               TSTln;
              END;
           END;
        END;  (*FGI8*)

      PROCEDURE FGi32(VAR Status: StatusType
                     ;VAR Fl: FileType
                     ;VAR V: i32
                     );

         VAR
            I: I32IndexType;
            N: I32ArrayType;

        BEGIN (*FGI32*)
         WITH Fl DO
           BEGIN
            P := P + 4;
            FOR I := bs0 TO bs3 DO
               IF not eof(f) THEN
                  read(F, N(.I.) )
               ELSE
                  Status := Status + (.UnexpectedEof.);
            move(N, V, 4);
            IF test((.0,2.)) THEN
              BEGIN
               write(TestOut, 'FGI32    '); TSTstat(Status); TSTindt;
               write(TestOut, 'P=', P:1,' V=', V:1,
                              ' N=(',N(.bs3.):3,'/',N(.bs2.):3
                                ,'/',N(.bs1.):3,'/',N(.bs0.):3,') EOF=');
               TSTbool(eof(F)); TSTln;
              END;
           END;
        END;  (*FGI32*)

      PROCEDURE FGSym(VAR Status: StatusType
                     ;VAR Fl: FileType
                     ;VAR SymbolName: SymbolNameType
                     );

         VAR
            I: i8;
            N: i8;

        BEGIN (*FGSYM*)
         WITH Fl, SymbolName DO
           BEGIN
            IF test((.0,2.)) THEN
              BEGIN
               write(TestOut, 'FGSYM-1  '); TSTstat(Status); TSTindt;
               write(TestOut, 'P=', P:1, '  F^=',F^:3, '  EOF=');
               TSTbool(eof(F)); TSTln
              END;
            IF not eof(F) THEN
              BEGIN
               read(F, N);
               P := P + 1 + N;
               IF (0 < N) and (N <= MaxSymbolNameIndex) THEN
                 BEGIN
                  Length := N;
                  FOR I := 1 TO N DO
                     IF not eof(F) THEN
                        read(F, Name(.I.) )
                     ELSE
                        Status := Status + (.UnexpectedEof.)
                 END
               ELSE
                 BEGIN
                  Status := Status + (.BadSymbolName.);
                  FOR I := 1 TO N DO
                     IF not eof(F) THEN
                        read(F, Name(.1.) )
                     ELSE
                        Status := Status + (.UnexpectedEof.)
                 END
              END
            ELSE
               Status := Status + (.UnexpectedEof.);
            IF test((.0,2.)) THEN
              BEGIN
               write(TestOut, 'FGSYM-2  '); TSTstat(Status); TSTindt;
               TSTsymbol(SymbolName);
              END;
           END
        END;  (*FGSYM*)

      PROCEDURE FPi8(VAR Fl: FileType
                    ;    V: i8
                    );

        BEGIN (*FPI8*)
         WITH Fl DO
           BEGIN
            IF test((.0,3.)) THEN
              BEGIN
               writeln(TestOut, 'FPI8     ', 'P=', P:1,' V=', V:1);
              END;
            write(F,V);
            P := P + 1
           END
        END;  (*FPI8*)

      PROCEDURE FPi32(VAR Fl: FileType
                     ;    V: i32
                     );

         VAR
            I: I32IndexType;
            N: I32ArrayType;

        BEGIN (*FPI32*)
         move(V, N, 4);
         WITH Fl DO
           BEGIN
            IF test((.0,3.)) THEN
              BEGIN
               writeln(TestOut, 'FPI32    ', 'P=', P:1,' V=', V:1,
                                ' N=(',N(.bs3.):3,'/',N(.bs2.):3
                                  ,'/',N(.bs1.):3,'/',N(.bs0.):3,')');
              END;
            P := P + 4;
            FOR I := bs0 TO bs3  DO
               write(F, N(.I.) )
           END
        END;  (*FPI32*)

      PROCEDURE FPSym(VAR Fl: FileType
                     ;    SymbolName: SymbolNameType
                     );

         VAR
            I: SymbolNameIndexType;

        BEGIN (*FPSYM*)
         WITH Fl, SymbolName DO
           BEGIN
            IF test((.0,2.)) THEN
              BEGIN
               write(TestOut, 'FPSYM-2   '); TSTstat(Status); TSTindt;
               write(TestOut, 'P=', P:1); TSTindt; TSTsymbol(SymbolName);
              END;
            P := P + 1 + Length;
            write(F, Length);
            FOR I := 1 TO Length DO
               write(F, Name(.I.) )
           END
        END;  (*FPSYM*)
«eof»