gm2-libs-log/CardinalIO (The GNU Modula-2 Compiler)

#### 4.2.6 gm2-libs-log/CardinalIO ¶

    DEFINITION MODULE CardinalIO ;

    EXPORT QUALIFIED Done,
                     ReadCardinal, WriteCardinal, ReadHex, WriteHex,
                     ReadLongCardinal, WriteLongCardinal, ReadLongHex,
                     WriteLongHex,
                     ReadShortCardinal, WriteShortCardinal, ReadShortHex,
                     WriteShortHex ;

    VAR
       Done: BOOLEAN ;

    (*
       ReadCardinal - read an unsigned decimal number from the terminal.
                      The read continues until a space, newline, esc or
                      end of file is reached.
    *)

    PROCEDURE ReadCardinal (VAR c: CARDINAL) ;

    (*
       WriteCardinal - writes the value, c, to the terminal and ensures
                       that at least, n, characters are written. The number
                       will be padded out by preceeding spaces if necessary.
    *)

    PROCEDURE WriteCardinal (c: CARDINAL; n: CARDINAL) ;

    (*
       ReadHex - reads in an unsigned hexadecimal number from the terminal.
                 The read continues until a space, newline, esc or
                 end of file is reached.
    *)

    PROCEDURE ReadHex (VAR c: CARDINAL) ;

    (*
       WriteHex - writes out a CARDINAL, c, in hexadecimal format padding
                  with, n, characters (leading with '0')
    *)

    PROCEDURE WriteHex (c: CARDINAL; n: CARDINAL) ;

    (*
       ReadLongCardinal - read an unsigned decimal number from the terminal.
                          The read continues until a space, newline, esc or
                          end of file is reached.
    *)

    PROCEDURE ReadLongCardinal (VAR c: LONGCARD) ;

    (*
       WriteLongCardinal - writes the value, c, to the terminal and ensures
                           that at least, n, characters are written. The number
                           will be padded out by preceeding spaces if necessary.
    *)

    PROCEDURE WriteLongCardinal (c: LONGCARD; n: CARDINAL) ;

    (*
       ReadLongHex - reads in an unsigned hexadecimal number from the terminal.
                     The read continues until a space, newline, esc or
                     end of file is reached.
    *)

    PROCEDURE ReadLongHex (VAR c: LONGCARD) ;

    (*
       WriteLongHex - writes out a LONGCARD, c, in hexadecimal format padding
                      with, n, characters (leading with '0')
    *)

    PROCEDURE WriteLongHex (c: LONGCARD; n: CARDINAL) ;

    (*
       WriteShortCardinal - writes the value, c, to the terminal and ensures
                           that at least, n, characters are written. The number
                           will be padded out by preceeding spaces if necessary.
    *)

    PROCEDURE WriteShortCardinal (c: SHORTCARD; n: CARDINAL) ;

    (*
       ReadShortCardinal - read an unsigned decimal number from the terminal.
                           The read continues until a space, newline, esc or
                           end of file is reached.
    *)

    PROCEDURE ReadShortCardinal (VAR c: SHORTCARD) ;

    (*
       ReadShortHex - reads in an unsigned hexadecimal number from the terminal.
                     The read continues until a space, newline, esc or
                     end of file is reached.
    *)

    PROCEDURE ReadShortHex (VAR c: SHORTCARD) ;

    (*
       WriteShortHex - writes out a SHORTCARD, c, in hexadecimal format padding
                      with, n, characters (leading with '0')
    *)

    PROCEDURE WriteShortHex (c: SHORTCARD; n: CARDINAL) ;

    END CardinalIO.