a/FIO2.mod b/FIO2.mod
...
...
15
  (* 24.11.16, MRi: Prozeduren WrBits eingef"uhrt.                          *)
15
  (* 24.11.16, MRi: Prozeduren WrBits eingef"uhrt.                          *)
16
  (* 17.06.17, MRi: Prozeduren WrBool eingef"uhrt.                          *)
16
  (* 17.06.17, MRi: Prozeduren WrBool eingef"uhrt.                          *)
17
  (* 25.07.17, MRi: In Prozedur RdWord warnold etc ingef"uhrt.              *)
17
  (* 25.07.17, MRi: In Prozedur RdWord warnold etc ingef"uhrt.              *)
18
  (*                WrLngCmplx auf ISO umgestellt                           *)
18
  (*                WrLngCmplx auf ISO umgestellt                           *)
19
  (* 21.03.18, MRi: Prozedure SetExpAnz eingefuegt                          *)
19
  (* 21.03.18, MRi: Prozedure SetExpAnz eingefuegt                          *)
20
  (* 08.06.18, MRi: Ausgabe in WrBits "invertiert"                          *)
20
  (*------------------------------------------------------------------------*)
21
  (*------------------------------------------------------------------------*)
21
  (* Offene Punkte                                                          *)
22
  (* Offene Punkte                                                          *)
22
  (*                                                                        *)
23
  (*                                                                        *)
23
  (* - EOF/EOL eventuell als Prozedur definieren die an einen Datei-        *)
24
  (* - EOF/EOL eventuell als Prozedur definieren die an einen Datei-        *)
24
  (*   deskriptor gebunden ist.                                             *)
25
  (*   deskriptor gebunden ist.                                             *)
...
...
151
152
152
          VAR Fehler       : BOOLEAN;
153
          VAR Fehler       : BOOLEAN;
153
              i            : CARDINAL;
154
              i            : CARDINAL;
154
              done,warnold : BOOLEAN;
155
              done,warnold : BOOLEAN;
155
BEGIN
156
BEGIN
156
warnold:=FileSystem.CheckIO;
157
      warnold:=FileSystem.CheckIO;
157
FileSystem.CheckIO:=FALSE;
158
      FileSystem.CheckIO:=FALSE;
158
      chr:="";
159
      chr:="";
159
      Fehler:=FALSE; EOL:=FALSE; EOF:=FALSE;
160
      Fehler:=FALSE; EOL:=FALSE; EOF:=FALSE;
160
      ReadNBytes(Ein,chr,1,i); 
161
      ReadNBytes(Ein,chr,1,i); 
161
      done := i = 1;
162
      done := i = 1;
162
      IF NOT done AND warn THEN ErrOut(" Lesefehler in FIO.RdChar !"); END;
163
      IF NOT done AND warn THEN ErrOut(" Lesefehler in FIO.RdChar !"); END;
...
...
184
      ELSIF (i # 1) THEN
185
      ELSIF (i # 1) THEN
185
        chr:=CommonIO.EoF; (* EOF *)
186
        chr:=CommonIO.EoF; (* EOF *)
186
        EOF:=TRUE;
187
        EOF:=TRUE;
187
        EOL:=TRUE;
188
        EOL:=TRUE;
188
      END;
189
      END;
189
FileSystem.CheckIO:=warnold;
190
      FileSystem.CheckIO:=warnold;
190
      IF Fehler AND warn THEN ErrOut('Fehler in FIO.RdChar'); END;
191
      IF Fehler AND warn THEN ErrOut('Fehler in FIO.RdChar'); END;
191
END RdChar;
192
END RdChar;
192
193
193
PROCEDURE WrChar(Datei  : File;
194
PROCEDURE WrChar(Datei  : File;
194
                 chr    : CHAR);
195
                 chr    : CHAR);
...
...
340
PROCEDURE WrBits(Datei : File;
341
PROCEDURE WrBits(Datei : File;
341
                 c     : CARDINAL;
342
                 c     : CARDINAL;
342
                 nbits : CARDINAL);  (* Feldbreite *)
343
                 nbits : CARDINAL);  (* Feldbreite *)
343
          
344
          
344
          VAR Str : ARRAY [0..127] OF CHAR;
345
          VAR Str : ARRAY [0..127] OF CHAR;
346
              i   : CARDINAL;
345
BEGIN
347
BEGIN
346
      CardToBitStr(c,Str,nbits); 
348
      CardToBitStr(c,Str,nbits); 
349
      FOR i:=LENGTH(Str)-1 TO 0 BY -1 DO
347
      WrStr(Datei,Str);
350
        WrChar(Datei,Str[i]);
351
      END;
348
END WrBits;
352
END WrBits;
349
353
350
PROCEDURE RdOct(    Datei  : File;
354
PROCEDURE RdOct(    Datei  : File;
351
                VAR c      : CARDINAL);
355
                VAR c      : CARDINAL);
352
356