DEFINITION MODULE Types;

        (********************************************************)
        (*                                                      *)
        (*      Definitions of non-quite-portable types         *)
        (*                                                      *)
        (*  Programmer:         P. Moylan                       *)
        (*  Last edited:        11 September 2004               *)
        (*  Status:             OK                              *)
        (*                                                      *)
        (********************************************************)

FROM SYSTEM IMPORT BYTE, WORD, ADDRESS, CARD32, INT32;

TYPE
    (* Pointer types which must be "far" regardless of the memory model *)

    FarPointer = ADDRESS;
    FarBytePointer = POINTER TO BYTE;
    FarWordPointer = POINTER TO WORD;
    FarCharPointer = POINTER TO CHAR;
    FarCardPointer = POINTER TO CARDINAL;
    FarPointerPointer = POINTER TO ADDRESS;
    FarProcPointer = POINTER TO PROCEDURE();

END Types.
