1 #ifndef REXX_RXSLIB_H 2 #define REXX_RXSLIB_H 3 4 /* 5 rexxsyslib.library include 6 7 Copyright © 2002 The MorphOS Development Team, All Rights Reserved. 8 */ 9 10 #ifndef REXX_STORAGE_H 11 # include <rexx/storage.h> 12 #endif 13 14 #pragma pack(2) 15 16 17 #define RXSNAME "rexxsyslib.library" 18 #define RXSDIR "REXX" 19 #define RXSTNAME "ARexx" 20 21 22 struct RxsLib 23 { 24 struct Library rl_Node; 25 UBYTE rl_Flags; 26 UBYTE rl_Shadow; 27 APTR rl_SysBase; 28 APTR rl_DOSBase; 29 APTR rl_IeeeDPBase; 30 LONG rl_SegList; 31 LONG rl_NIL; 32 LONG rl_Chunk; 33 LONG rl_MaxNest; 34 struct NexxStr *rl_NULL; 35 struct NexxStr *rl_FALSE; 36 struct NexxStr *rl_TRUE; 37 struct NexxStr *rl_REXX; 38 struct NexxStr *rl_COMMAND; 39 struct NexxStr *rl_STDIN; 40 struct NexxStr *rl_STDOUT; 41 struct NexxStr *rl_STDERR; 42 STRPTR rl_Version; 43 44 STRPTR rl_TaskName; 45 LONG rl_TaskPri; 46 LONG rl_TaskSeg; 47 LONG rl_StackSize; 48 STRPTR rl_RexxDir; 49 STRPTR rl_CTABLE; 50 STRPTR rl_Notice; 51 52 struct MsgPort rl_RexxPort; 53 UWORD rl_ReadLock; 54 LONG rl_TraceFH; 55 struct List rl_TaskList; 56 WORD rl_NumTask; 57 struct List rl_LibList; 58 WORD rl_NumLib; 59 struct List rl_ClipList; 60 WORD rl_NumClip; 61 struct List rl_MsgList; 62 WORD rl_NumMsg; 63 struct List rl_PgmList; 64 WORD rl_NumPgm; 65 66 UWORD rl_TraceCnt; 67 WORD rl_avail; 68 }; 69 70 71 /* RexxMast global flags */ 72 73 #define RLFB_TRACE RTFB_TRACE 74 #define RLFB_HALT RTFB_HALT 75 #define RLFB_SUSP RTFB_SUSP 76 #define RLFB_STOP 6 77 #define RLFB_CLOSE 7 78 79 #define RLFMASK ((1<<RLFB_TRACE) | (1<<RLFB_HALT) | (1<<RLFB_SUSP)) 80 81 82 /* Init constants */ 83 84 #define RXSCHUNK 1024 85 #define RXSNEST 32 86 #define RXSTPRI 0 87 #define RXSSTACK 4096 88 89 90 /* Character attribute flag-bits */ 91 92 #define CTB_SPACE 0 93 #define CTB_DIGIT 1 94 #define CTB_ALPHA 2 95 #define CTB_REXXSYM 3 96 #define CTB_REXXOPR 4 97 #define CTB_REXXSPC 5 98 #define CTB_UPPER 6 99 #define CTB_LOWER 7 100 101 #define CTF_SPACE (1 << CTB_SPACE) 102 #define CTF_DIGIT (1 << CTB_DIGIT) 103 #define CTF_ALPHA (1 << CTB_ALPHA) 104 #define CTF_REXXSYM (1 << CTB_REXXSYM) 105 #define CTF_REXXOPR (1 << CTB_REXXOPR) 106 #define CTF_REXXSPC (1 << CTB_REXXSPC) 107 #define CTF_UPPER (1 << CTB_UPPER) 108 #define CTF_LOWER (1 << CTB_LOWER) 109 110 111 #pragma pack() 112 113 #endif