*******************
* DOSEQUATES.ASM  *
*******************


*********** DOS LIBRARY ROUTINE OFFSETS  ******************


LVO_Open          EQU   -30           ; (name, AccessMode)   (d1, d2)
LVO_Close         EQU   -36           ; (file)   (d1)
LVO_Read          EQU   -42           ; (file, buf, len)   (d1, d2, d3)
LVO_Write         EQU   -48           ; (file, buf, len)	(d1, d2, d3)
LVO_Input         EQU   -54           ; ()
LVO_Output        EQU   -60           ; ()
LVO_Seek          EQU   -66           ; (file, pos, offset)  (d1, d2, d3)
LVO_DeleteFile    EQU   -72           ; (name)   (d1)
LVO_Rename        EQU   -78           ; (OldName, NewName)   (d1, d2)
LVO_Lock          EQU   -84           ; (name, access_mode)   (d1, d2)
LVO_UnLock        EQU   -90           ; (lock)   (d1)
LVO_DupLock       EQU   -96           ; (lock)   (d1)
LVO_Examine       EQU   -102          ; (lock, FileInfoBlock)   (d1, d2)
LVO_ExNext        EQU   -108          ; (lock, FileInfoBlock)   (d1, d2)
LVO_Info          EQU   -114          ; (lock, ParamBlock)   (d1, d2)
LVO_CreateDir     EQU   -120          ; (name)   (d1)
LVO_CurrentDir    EQU   -126          ; (lock)   (d1)
LVO_IoErr         EQU   -132          ; ()
LVO_CreateProc    EQU   -138          ; (name,Pri,SegList,Stacksize) (d1,d2,d3,d4)
LVO_Exit          EQU   -144          ; (returnCode)   (d1)
LVO_LoadSeg       EQU   -150          ; (Filename)   (d1)
LVO_UnLoadSeg     EQU   -156          ; (segment)   (d1)
LVO_GetPacket     EQU   -162          ; (wait)   (d1)
LVO_QueuePacket   EQU   -168          ; (packet)   (d1)
LVO_DeviceProc    EQU   -174          ; (name)   (d1)
LVO_SetComment    EQU   -180          ; (name, comment)   (d1, d2)
LVO_SetProtection EQU   -186          ; (name, mask)   (d1, d2)
LVO_DateStamp     EQU   -192          ; (date)   (d1)
LVO_Delay         EQU   -198          ; (timeout)   (d1)
LVO_WaitForChar   EQU   -204          ; (file, timeout)  (d1, d2)
LVO_ParentDir     EQU   -210          ; (lock)   (d1)
LVO_IsInteractive EQU   -216          ; (file)   (d1)
LVO_Execute       EQU   -222          ; (string, file, file)    (d1, d2, d3)


MODE_NewFile      EQU   1006
MODE_OldFile      EQU   1005
MODE_ReadOnly     EQU   1005
MODE_ReadWrite    EQU   1004

Access_Read	     EQU   -2
Shared_Lock	     EQU   -2
Exclusive_Lock    EQU   -1
Access_Write	     EQU   -1

fh_Type           EQU   8

****** PROCESS STRUCTURE OFFSETS

proc_CLI          EQU   $AC
proc_ConsoleTask  EQU   $A4
proc_MsgPort      EQU   $5C
proc_StackBase    EQU   $90
proc_StackSize    EQU   $84
proc_Task         EQU   $0
proc_TaskNum      EQU   $8C
proc_WindowPtr    EQU   $B8

TicksPerSecond    EQU   50

****** FileInfoBlock STRUCTURE OFFSETS

fib_DiskKey       EQU   0
fib_DirEntryType  EQU   4             ; Type of Dir. If <0 then file >0 = dir
fib_FileName      EQU   8             ; Null terminated. Max 30 of 108 chars use
fib_Protection    EQU   116           ; bit mask of protection, hsparwed are 7-0.      
fib_EntryType     EQU   120           ;
fib_Size          EQU   124           ; Number of bytes in file 
fib_NumBlocks     EQU   128           ; Number of blocks in file 
fib_DateStamp     EQU   132           ; Date file last changed. (12 bytes)
fib_Comment       EQU   144           ; Null terminated. 80 chars of 116 used now
fib_SIZEOF        EQU   260           ; SIZEOF FileInfoBlock Structure


* returned by Info() 

****** STRUCTURE  InfoData  Offsets=0  *******


id_NumSoftErrors  EQU   0             ; number of soft errors on disk 
id_UnitNumber     EQU   4             ; Which unit disk is (was) mounted on 
id_DiskState      EQU   8             ; See defines below 
id_NumBlocks      EQU   12            ; Number of blocks on disk 
id_NumBlocksUsed  EQU   16            ; Number of block in use 
id_BytesPerBlock  EQU   20
id_DiskType       EQU   24            ; Disk Type code
id_VolumeNode     EQU   28            ; BCPL pointer to volume node
id_InUse          EQU   32            ; Flag, zero if not in use
id_SIZEOF         EQU   36            ; SIZEOF InfoData Structure 

