home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 4 / FreshFish_May-June1994.bin / bbs / cbm / nduk-v37.lha / V37 / include / rexx / rexxio.i < prev    next >
Text File  |  1991-11-27  |  3KB  |  78 lines

  1.      IFND      REXX_REXXIO_I
  2. REXX_REXXIO_I SET      1
  3. **
  4. **    $Filename: rexx/rexxio.i $
  5. **    $Release: 2.04 Includes, V37.4 $
  6. **    $Revision: 1.8 $
  7. **    $Date: 91/11/08 $
  8. **
  9. **    Include file for Input/Output related structures
  10. **
  11. **    (C) Copyright 1986,1987,1988,1989,1990 William S. Hawes.
  12. **    (C) Copyright 1990-1991 Commodore-Amiga, Inc.
  13. **        All Rights Reserved
  14. **
  15.  
  16.      IFND      REXX_STORAGE_I
  17.      INCLUDE  "rexx/storage.i"
  18.      ENDC
  19.  
  20. RXBUFFSZ EQU      204               ; buffer length
  21.  
  22. * The IoBuff is a resource node used to maintain the File List.  Nodes are
  23. * allocated and linked into the list whenever a file is opened.
  24.  
  25.      STRUCTURE IoBuff,RRSIZEOF     ; structure for files/strings
  26.      APTR      iobRpt           ; read/write pointer
  27.      LONG      iobRct           ; character count
  28.      LONG      iobDFH           ; DOS filehandle
  29.      APTR      iobLock           ; DOS lock
  30.      LONG      iobBct           ; buffer length
  31.      STRUCT   iobArea,RXBUFFSZ     ; buffer area
  32.      LABEL      iobSIZEOF           ; size: 256 bytes
  33.  
  34. IOBNAME  EQU      LN_NAME           ; logical name
  35. IOBMODE  EQU      rr_Arg1           ; access mode
  36. IOBEOF     EQU      rr_Arg1+1           ; EOF flag
  37. IOBPOS     EQU      rr_Arg2           ; current position
  38.  
  39. * Access mode definitions
  40. RXIO_EXIST  EQU      -1           ; an existing filehandle
  41. RXIO_STRF   EQU      0               ; a "string file"
  42. RXIO_READ   EQU      1               ; read-only access
  43. RXIO_WRITE  EQU      2               ; write mode
  44. RXIO_APPEND EQU      3               ; append mode (existing file)
  45.  
  46. * Offset anchors for SeekF()
  47. RXIO_BEGIN  EQU      -1           ; relative to start
  48. RXIO_CURR   EQU      0               ; relative to current position
  49. RXIO_END    EQU      1               ; relative to end
  50.  
  51. * The Library List contains just plain resource nodes.
  52. LLOFFSET EQU      rr_Arg1           ; "Query" offset
  53. LLVERS     EQU      rr_Arg2           ; library version
  54.  
  55. * The RexxClipNode structure is used to maintain the Clip List.  The
  56. * value string is stored as an argstring in the rr_Arg1 field.
  57. CLVALUE  EQU      rr_Arg1           ; value string
  58.  
  59. * A message port structure, maintained as a resource node.
  60. * The ReplyList holds packets that have been received but haven't been
  61. * replied.
  62.  
  63.          STRUCTURE RexxMsgPort,RRSIZEOF
  64.          STRUCT   rmp_Port,MP_SIZE           ; the message port
  65.          STRUCT   rmp_ReplyList,LH_SIZE      ; messages awaiting reply
  66.          LABEL    rmp_SIZEOF
  67.  
  68. * Device types
  69. DT_DEV   EQU      0                    ; a device
  70. DT_DIR   EQU      1                    ; an ASSIGNed directory
  71. DT_VOL   EQU      2                    ; a volume
  72.  
  73. * Private packet types
  74. ACTION_STACK   EQU   2002              ; stack a line
  75. ACTION_QUEUE   EQU   2003              ; queue a line
  76.  
  77.          ENDC
  78.