\ AMIGA JForth Include file.
include? :struct ju:c_struct
decimal
EXISTS? LIBRARIES_DOSEXTENS_H NOT .IF 
1  constant LIBRARIES_DOSEXTENS_H
include? EXEC_TYPES_H ji:exec/types.j 
include? EXEC_TASKS_H ji:exec/tasks.j 
include? EXEC_PORTS_H ji:exec/ports.j 
include? EXEC_LIBRARIES_H ji:exec/libraries.j 
include? LIBRARIES_DOS_H ji:libraries/dos.j 

:STRUCT Process
  STRUCT Exec_Task pr_Task  ( Use Exec_Task to avoid name conflict.)
\ JForth has a reserved word TASK
  STRUCT MsgPort pr_MsgPort
  SHORT pr_Pad
  LONG pr_SegList
  LONG pr_StackSize
  APTR pr_GlobVec
  LONG pr_TaskNum
  LONG pr_StackBase
  LONG pr_Result2
  LONG pr_CurrentDir
  LONG pr_CIS
  LONG pr_COS
  APTR pr_ConsoleTask
  APTR pr_FileSystemTask
  LONG pr_CLI
  APTR pr_ReturnAddr
  APTR pr_PktWait
  APTR pr_WindowPtr
;STRUCT 


:STRUCT FileHandle
  APTR fh_Link
  APTR fh_Port
  APTR fh_Type
  LONG fh_Buf
  LONG fh_Pos
  LONG fh_End
  union{
      LONG fh_Funcs
  }union{
      LONG fh_Func1
  }union
  LONG fh_Func2
  LONG fh_Func3
  union{
      LONG fh_Args
  }union{
      LONG fh_Arg1
  }union
  LONG fh_Arg2
;STRUCT 


:STRUCT DosPacket
  APTR dp_Link
  APTR dp_Port
  union{
      LONG dp_Type
      LONG dp_Res1
      LONG dp_Res2
      LONG dp_Arg1
  }union{
      LONG dp_Action
      LONG dp_Status
      LONG dp_Status2
      LONG dp_BufAddr
  }union
  LONG dp_Arg2
  LONG dp_Arg3
  LONG dp_Arg4
  LONG dp_Arg5
  LONG dp_Arg6
  LONG dp_Arg7
;STRUCT 


:STRUCT StandardPacket
  STRUCT Message sp_Msg
  STRUCT DosPacket sp_Pkt
;STRUCT 

0   constant ACTION_NIL
2   constant ACTION_GET_BLOCK
4   constant ACTION_SET_MAP
5   constant ACTION_DIE
6   constant ACTION_EVENT
7   constant ACTION_CURRENT_VOLUME
8   constant ACTION_LOCATE_OBJECT
9   constant ACTION_RENAME_DISK
ascii W constant ACTION_WRITE
ascii R constant ACTION_READ
15   constant ACTION_FREE_LOCK
16   constant ACTION_DELETE_OBJECT
17   constant ACTION_RENAME_OBJECT
18   constant ACTION_MORE_CACHE
19   constant ACTION_COPY_DIR
20   constant ACTION_WAIT_CHAR
21   constant ACTION_SET_PROTECT
22   constant ACTION_CREATE_DIR
23   constant ACTION_EXAMINE_OBJECT
24   constant ACTION_EXAMINE_NEXT
25   constant ACTION_DISK_INFO
26   constant ACTION_INFO
27   constant ACTION_FLUSH
28   constant ACTION_SET_COMMENT
29   constant ACTION_PARENT
30   constant ACTION_TIMER
31   constant ACTION_INHIBIT
32   constant ACTION_DISK_TYPE
33   constant ACTION_DISK_CHANGE
34   constant ACTION_SET_DATE
994   constant ACTION_SCREEN_MODE

:STRUCT DosLibrary
  STRUCT Library dl_lib
  APTR dl_Root
  APTR dl_GV
  LONG dl_A2
  LONG dl_A5
  LONG dl_A6
;STRUCT 


:STRUCT RootNode
  LONG rn_TaskArray
  LONG rn_ConsoleSegment
  STRUCT DateStamp rn_Time
  LONG rn_RestartSeg
  LONG rn_Info
  LONG rn_FileHandlerSegment
;STRUCT 


:STRUCT DosInfo
  LONG di_McName
  LONG di_DevInfo
  LONG di_Devices
  LONG di_Handlers
  APTR di_NetHand
;STRUCT 


:STRUCT CommandLineInterface
  LONG cli_Result2
  APTR cli_SetName
  LONG cli_CommandDir
  LONG cli_ReturnCode
  APTR cli_CommandName
  LONG cli_FailLevel
  APTR cli_Prompt
  LONG cli_StandardInput
  LONG cli_CurrentInput
  APTR cli_CommandFile
  LONG cli_Interactive
  LONG cli_Background
  LONG cli_CurrentOutput
  LONG cli_DefaultStack
  LONG cli_StandardOutput
  LONG cli_Module
;STRUCT 


:STRUCT DeviceList
  LONG dl_Next
  LONG dl_Type
  APTR dl_Task
  LONG dl_Lock
  STRUCT DateStamp dl_VolumeDate
  LONG dl_LockList
  LONG dl_DiskType
  LONG dl_unused
  APTR dl_Name
;STRUCT 

0   constant DLT_DEVICE
1   constant DLT_DIRECTORY
2   constant DLT_VOLUME

:STRUCT FileLock
  LONG fl_Link
  LONG fl_Key
  LONG fl_Access
  APTR fl_Task
  LONG fl_Volume
;STRUCT 


:STRUCT DevInfo
  LONG dvi_Next
  LONG dvi_Type
  APTR dvi_Task
  LONG dvi_Lock
  APTR dvi_Handler
  LONG dvi_StackSize
  LONG dvi_Priority
  LONG dvi_Startup
  LONG dvi_SegList
  LONG dvi_GlobVec
  APTR dvi_Name
;STRUCT 

.THEN
