Bläddra i källkod

chore: gitignore runtime/syslib listings

Eric Streit 2 veckor sedan
förälder
incheckning
a9e1f77d19
3 ändrade filer med 1 tillägg och 231 borttagningar
  1. 1 0
      .gitignore
  2. 0 137
      runtime/syslib/FileIO.LST
  3. 0 94
      runtime/syslib/SysShim.LST

+ 1 - 0
.gitignore

@@ -1,2 +1,3 @@
 stdlib/*.LST
 git.txt
+runtime/syslib/*.LST

+ 0 - 137
runtime/syslib/FileIO.LST

@@ -1,137 +0,0 @@
-Listing:
-
-    1  IMPLEMENTATION MODULE FileIO;
-    2  (* Self-hosted file I/O: SysShim only. *)
-    3  
-    4  IMPORT SysShim;
-    5  
-    6  VAR
-    7    argIdx: CARDINAL;
-    8  
-    9  PROCEDURE NextParameter (VAR s: ARRAY OF CHAR);
-   10  BEGIN
-   11    IF SysShim.arg(argIdx, s, LEN(s)) THEN
-   12      INC(argIdx)
-   13    ELSE
-   14      s[0] := CHR(0)
-   15    END
-   16  END NextParameter;
-   17  
-   18  PROCEDURE Open (VAR f: File; fileName: ARRAY OF CHAR; newFile: BOOLEAN);
-   19  BEGIN
-   20    IF newFile THEN f := SysShim.fopenwrite(fileName)
-   21    ELSE f := SysShim.fopenread(fileName)
-   22    END;
-   23    Okay := f # NIL
-   24  END Open;
-   25  
-   26  PROCEDURE Close (VAR f: File);
-   27  BEGIN
-   28    SysShim.fclose(f);
-   29    f := NIL
-   30  END Close;
-   31  
-   32  PROCEDURE ReadBytes (f: File; VAR buf: ARRAY OF CHAR; VAR len: CARDINAL);
-   33  BEGIN
-   34    len := SysShim.fread(f, buf, len)
-   35  END ReadBytes;
-   36  
-   37  PROCEDURE Write (f: File; ch: CHAR);
-   38  BEGIN
-   39    IF ch = EOL THEN SysShim.fwriteln(f) ELSE SysShim.fputc(f, ch) END
-   40  END Write;
-   41  
-   42  PROCEDURE WriteLn (f: File);
-   43  BEGIN
-   44    SysShim.fwriteln(f)
-   45  END WriteLn;
-   46  
-   47  PROCEDURE WriteString (f: File; str: ARRAY OF CHAR);
-   48  BEGIN
-   49    SysShim.fputs(f, str)
-   50  END WriteString;
-   51  
-   52  PROCEDURE WriteInt (f: File; int: INTEGER; wid: CARDINAL);
-   53  BEGIN
-   54    SysShim.fwriteintw(f, int, wid)
-   55  END WriteInt;
-   56  
-   57  PROCEDURE WriteCard (f: File; card, wid: CARDINAL);
-   58  BEGIN
-   59    SysShim.fwriteintw(f, card, wid)
-   60  END WriteCard;
-   61  
-   62  PROCEDURE SLENGTH (stringVal: ARRAY OF CHAR): CARDINAL;
-   63  BEGIN
-   64    RETURN LEN(stringVal)
-   65  END SLENGTH;
-   66  
-   67  PROCEDURE Assign (source: ARRAY OF CHAR; VAR destination: ARRAY OF CHAR);
-   68    VAR i, n: CARDINAL;
-   69  BEGIN
-   70    n := LEN(source);
-   71    IF n > LEN(destination) THEN n := LEN(destination) END;
-   72    i := 0;
-   73    WHILE i < n DO
-   74      destination[i] := source[i];
-   75      INC(i)
-   76    END
-   77  END Assign;
-   78  
-   79  PROCEDURE Extract (source: ARRAY OF CHAR;
-   80                     startIndex, numberToExtract: CARDINAL;
-   81                     VAR destination: ARRAY OF CHAR);
-   82    VAR i, n, k: CARDINAL;
-   83  BEGIN
-   84    n := LEN(source);
-   85    k := 0;
-   86    i := startIndex;
-   87    WHILE (i < n) AND (k < numberToExtract) AND (k < LEN(destination)) DO
-   88      destination[k] := source[i];
-   89      INC(k); INC(i)
-   90    END
-   91  END Extract;
-   92  
-   93  PROCEDURE Concat (stringVal1, stringVal2: ARRAY OF CHAR;
-   94                    VAR destination: ARRAY OF CHAR);
-   95    VAR i, k: CARDINAL;
-   96  BEGIN
-   97    k := 0; i := 0;
-   98    WHILE (i < LEN(stringVal1)) AND (k < LEN(destination)) DO
-   99      destination[k] := stringVal1[i]; INC(k); INC(i)
-  100    END;
-  101    i := 0;
-  102    WHILE (i < LEN(stringVal2)) AND (k < LEN(destination)) DO
-  103      destination[k] := stringVal2[i]; INC(k); INC(i)
-  104    END
-  105  END Concat;
-  106  
-  107  PROCEDURE Compare (stringVal1, stringVal2: ARRAY OF CHAR): INTEGER;
-  108    VAR i, n, m: CARDINAL;
-  109  BEGIN
-  110    n := LEN(stringVal1); m := LEN(stringVal2);
-  111    i := 0;
-  112    WHILE (i < n) AND (i < m) DO
-  113      IF stringVal1[i] < stringVal2[i] THEN RETURN -1
-  114      ELSIF stringVal1[i] > stringVal2[i] THEN RETURN 1
-  115      END;
-  116      INC(i)
-  117    END;
-  118    IF n < m THEN RETURN -1
-  119    ELSIF n > m THEN RETURN 1
-  120    END;
-  121    RETURN 0
-  122  END Compare;
-  123  
-  124  BEGIN
-  125    argIdx := 0;
-  126    Okay := TRUE;
-  127    StdOut := SysShim.stdout();
-  128    con := StdOut;
-  129    StdIn := NIL;
-  130    err := SysShim.stderr()
-  131  END FileIO.
-
-    0 errors
-
-

+ 0 - 94
runtime/syslib/SysShim.LST

@@ -1,94 +0,0 @@
-Listing:
-
-    1  IMPLEMENTATION MODULE SysShim;
-    2  (* Binds the C shim (shim.c) directly. *)
-    3  
-    4  FROM SYSTEM IMPORT ADDRESS;
-    5  
-    6  PROCEDURE m2fopenread (VAR name : ARRAY OF CHAR) : ADDRESS;
-    7    EXTERNAL;
-    8  PROCEDURE m2fopenwrite (VAR name : ARRAY OF CHAR) : ADDRESS;
-    9    EXTERNAL;
-   10  PROCEDURE m2fclose (h : ADDRESS);
-   11    EXTERNAL;
-   12  PROCEDURE m2fread (h : ADDRESS; VAR buf : ARRAY OF CHAR;
-   13                     max : CARDINAL) : CARDINAL;
-   14    EXTERNAL;
-   15  PROCEDURE m2fputc (h : ADDRESS; c : CHAR);
-   16    EXTERNAL;
-   17  PROCEDURE m2fputs (h : ADDRESS; VAR s : ARRAY OF CHAR);
-   18    EXTERNAL;
-   19  PROCEDURE m2fwriteln (h : ADDRESS);
-   20    EXTERNAL;
-   21  PROCEDURE m2fwriteintw (h : ADDRESS; v : INTEGER; wid : CARDINAL);
-   22    EXTERNAL;
-   23  PROCEDURE m2stdout () : ADDRESS;
-   24    EXTERNAL;
-   25  PROCEDURE m2stderr () : ADDRESS;
-   26    EXTERNAL;
-   27  PROCEDURE m2arg (i : CARDINAL; VAR s : ARRAY OF CHAR;
-   28                   cap : CARDINAL) : BOOLEAN;
-   29    EXTERNAL;
-   30  
-   31  PROCEDURE fopenread (VAR name : ARRAY OF CHAR) : ADDRESS;
-   32  BEGIN
-   33    RETURN m2fopenread(name)
-   34  END fopenread;
-   35  
-   36  PROCEDURE fopenwrite (VAR name : ARRAY OF CHAR) : ADDRESS;
-   37  BEGIN
-   38    RETURN m2fopenwrite(name)
-   39  END fopenwrite;
-   40  
-   41  PROCEDURE fclose (h : ADDRESS);
-   42  BEGIN
-   43    m2fclose(h)
-   44  END fclose;
-   45  
-   46  PROCEDURE fread (h : ADDRESS; VAR buf : ARRAY OF CHAR;
-   47                   max : CARDINAL) : CARDINAL;
-   48  BEGIN
-   49    RETURN m2fread(h, buf, max)
-   50  END fread;
-   51  
-   52  PROCEDURE fputc (h : ADDRESS; c : CHAR);
-   53  BEGIN
-   54    m2fputc(h, c)
-   55  END fputc;
-   56  
-   57  PROCEDURE fputs (h : ADDRESS; VAR s : ARRAY OF CHAR);
-   58  BEGIN
-   59    m2fputs(h, s)
-   60  END fputs;
-   61  
-   62  PROCEDURE fwriteln (h : ADDRESS);
-   63  BEGIN
-   64    m2fwriteln(h)
-   65  END fwriteln;
-   66  
-   67  PROCEDURE fwriteintw (h : ADDRESS; v : INTEGER; wid : CARDINAL);
-   68  BEGIN
-   69    m2fwriteintw(h, v, wid)
-   70  END fwriteintw;
-   71  
-   72  PROCEDURE stdout () : ADDRESS;
-   73  BEGIN
-   74    RETURN m2stdout()
-   75  END stdout;
-   76  
-   77  PROCEDURE stderr () : ADDRESS;
-   78  BEGIN
-   79    RETURN m2stderr()
-   80  END stderr;
-   81  
-   82  PROCEDURE arg (i : CARDINAL; VAR s : ARRAY OF CHAR;
-   83                 cap : CARDINAL) : BOOLEAN;
-   84  BEGIN
-   85    RETURN m2arg(i, s, cap)
-   86  END arg;
-   87  
-   88  END SysShim.
-
-    0 errors
-
-