home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 22 / AACD 22.iso / AACD / Programming / powerd / modules.lha / modules / rexx / storage.m < prev   
Encoding:
Text File  |  2000-06-04  |  2.1 KB  |  138 lines

  1. MODULE    'exec/nodes',
  2.             'exec/lists',
  3.             'exec/ports',
  4.             'exec/libraries'
  5.  
  6. OBJECT NexxStr
  7.     Ivalue:LONG,
  8.     Length:UWORD,
  9.     Flags:UBYTE,
  10.     Hash:UBYTE,
  11.     Buff[8]:BYTE
  12.  
  13. CONST    NXADDLEN=9
  14.  
  15. #define IVALUE(nsPtr) (nsPtr.Ivalue)
  16.  
  17. FLAG    NS_KEEP,
  18.         NS_STRING,
  19.         NS_NOTNUM,
  20.         NS_NUMBER,
  21.         NS_BINARY,
  22.         NS_FLOAT,
  23.         NS_EXT,
  24.         NS_SOURCE
  25.  
  26. CONST    NSF_INTNUM=NSF_NUMBER|NSF_BINARY|NSF_STRING,
  27.         NSF_DPNUM =NSF_NUMBER|NSF_FLOAT,
  28.         NSF_ALPHA =NSF_NOTNUM|NSF_STRING,
  29.         NSF_OWNED =NSF_SOURCE|NSF_EXT|NSF_KEEP,
  30.         KEEPSTR   =NSF_STRING|NSF_SOURCE|NSF_NOTNUM,
  31.         KEEPNUM   =NSF_STRING|NSF_SOURCE|NSF_NUMBER|NSF_BINARY
  32.  
  33. OBJECT RexxArg
  34.     Size:LONG,
  35.     Length:UWORD,
  36.     Flags:UBYTE,
  37.     Hash:UBYTE,
  38.     Buff[8]:BYTE
  39.  
  40. OBJECT RexxMsg
  41.     Node:MP,
  42.     TaskBlock:APTR,
  43.     LibBase:APTR,
  44.     Action:LONG,
  45.     Result1:LONG,
  46.     Result2:LONG,
  47.     Args[16]:PTR TO CHAR,
  48.  
  49.     PassPort:PTR TO MP,
  50.     CommAddr:PTR TO CHAR,
  51.     FileExt:PTR TO CHAR,
  52.     StdIn:LONG,
  53.     StdOut:LONG,
  54.     Avail:LONG
  55.  
  56. #define ARG0(rmp) (rmp.Args[0])    /* start of argblock        */
  57. #define ARG1(rmp) (rmp.Args[1])    /* first argument        */
  58. #define ARG2(rmp) (rmp.Args[2])    /* second argument        */
  59.  
  60. CONST    MAXRMARG=15
  61.  
  62. CONST    RXCOMM  =$01000000,
  63.         RXFUNC  =$02000000,
  64.         RXCLOSE =$03000000,
  65.         RXQUERY =$04000000,
  66.         RXADDFH =$07000000,
  67.         RXADDLIB=$08000000,
  68.         RXREMLIB=$09000000,
  69.         RXADDCON=$0A000000,
  70.         RXREMCON=$0B000000,
  71.         RXTCOPN =$0C000000,
  72.         RXTCCLS =$0D000000
  73.  
  74. FLAG    RX_NOIO=16,
  75.         RX_RESULT,
  76.         RX_STRING,
  77.         RX_TOKEN,
  78.         RX_NONRET
  79.  
  80. CONST    RXCODEMASK=$FF000000,
  81.         RXARGMASK =$0000000F
  82.  
  83. OBJECT RexxRsrc
  84.     Node:LN,
  85.     Func:WORD,
  86.     Base:APTR,
  87.     Size:LONG,
  88.     Arg1:LONG,
  89.     Arg2:LONG
  90.  
  91. ENUM    RRT_ANY,
  92.         RRT_LIB,
  93.         RRT_PORT,
  94.         RRT_FILE,
  95.         RRT_HOST,
  96.         RRT_CLIP
  97.  
  98. CONST    GLOBALSZ=200
  99.  
  100. OBJECT RexxTask
  101.     Global[GLOBALSZ]:BYTE,
  102.     MsgPort:MP,
  103.     Flags:UBYTE,
  104.     SigBit:BYTE,
  105.  
  106.     ClientID:APTR,
  107.     MsgPkt:APTR,
  108.     TaskID:APTR,
  109.     RexxPort:APTR,
  110.  
  111.     ErrTrap:APTR,
  112.     StackPtr:APTR,
  113.  
  114.     Header1:LH,
  115.     Header2:LH,
  116.     Header3:LH,
  117.     Header4:LH,
  118.     Header5:LH
  119.  
  120. FLAG    RTF_TRACE,
  121.         RTF_HALT,
  122.         RTF_SUSP,
  123.         RTF_TCUSE,
  124.         RTF_WAIT=6,
  125.         RTF_CLOSE
  126.  
  127. CONST    MEMQUANT=16,
  128.         MEMMASK=$FFFFFFF0
  129.  
  130. CONST    MEMQUICK=1<<0,
  131.         MEMCLEAR=1<<16
  132.  
  133. OBJECT SrcNode
  134.     Succ:PTR TO SrcNode,
  135.     Pred:PTR TO SrcNode,
  136.     Ptr:APTR,
  137.     Size:LONG
  138.