home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / coders / jËzyki_programowania / amigae / e_v3.2a / modulessrc / dos / dosextens.e < prev    next >
Text File  |  1977-12-31  |  7KB  |  350 lines

  1. OPT MODULE
  2. OPT EXPORT
  3.  
  4. MODULE 'devices/timer',
  5.        'dos/dos',
  6.        'exec/libraries',
  7.        'exec/lists',
  8.        'exec/nodes',
  9.        'exec/ports',
  10.        'exec/semaphores',
  11.        'exec/tasks'
  12.  
  13. OBJECT process
  14.   task:tc
  15.   msgport:mp
  16.   pad:INT
  17.   seglist:LONG
  18.   stacksize:LONG
  19.   globvec:LONG
  20.   tasknum:LONG
  21.   stackbase:LONG
  22.   result2:LONG
  23.   currentdir:LONG
  24.   cis:LONG
  25.   cos:LONG
  26.   consoletask:LONG
  27.   filesystemtask:LONG
  28.   cli:LONG
  29.   returnaddr:LONG
  30.   pktwait:LONG
  31.   windowptr:LONG
  32.   homedir:LONG
  33.   flags:LONG
  34.   exitcode:LONG
  35.   exitdata:LONG
  36.   arguments:PTR TO CHAR
  37.   localvars:mlh
  38.   shellprivate:LONG
  39.   ces:LONG
  40. ENDOBJECT     /* SIZEOF=228 */
  41.  
  42. CONST PRB_FREESEGLIST=0,
  43.       PRF_FREESEGLIST=1,
  44.       PRB_FREECURRDIR=1,
  45.       PRF_FREECURRDIR=2,
  46.       PRB_FREECLI=2,
  47.       PRF_FREECLI=4,
  48.       PRB_CLOSEINPUT=3,
  49.       PRF_CLOSEINPUT=8,
  50.       PRB_CLOSEOUTPUT=4,
  51.       PRF_CLOSEOUTPUT=16,
  52.       PRB_FREEARGS=5,
  53.       PRF_FREEARGS=$20
  54.  
  55. OBJECT filehandle
  56.   link:PTR TO mn
  57.   interactive:PTR TO mp
  58.   type:PTR TO mp
  59.   buf:LONG
  60.   pos:LONG
  61.   end:LONG
  62.   funcs:LONG
  63.   func2:LONG
  64.   func3:LONG
  65.   args:LONG
  66.   arg2:LONG
  67. ENDOBJECT     /* SIZEOF=44 */
  68.  
  69. OBJECT dospacket
  70.   link:PTR TO mn
  71.   port:PTR TO mp
  72. -> a) next is unioned with "action:LONG"
  73.   type:LONG
  74. -> a) next is unioned with "status:LONG"
  75.   res1:LONG
  76. -> a) next is unioned with "status2:LONG"
  77.   res2:LONG
  78. -> a) next is unioned with "bufaddr:LONG"
  79.   arg1:LONG
  80.   arg2:LONG
  81.   arg3:LONG
  82.   arg4:LONG
  83.   arg5:LONG
  84.   arg6:LONG
  85.   arg7:LONG
  86. ENDOBJECT     /* SIZEOF=48 */
  87.  
  88. OBJECT standardpacket
  89.   msg:mn
  90.   pkt:dospacket
  91. ENDOBJECT     /* SIZEOF=68 */
  92.  
  93. CONST ACTION_NIL=0,
  94.       ACTION_STARTUP=0,
  95.       ACTION_GET_BLOCK=2,
  96.       ACTION_SET_MAP=4,
  97.       ACTION_DIE=5,
  98.       ACTION_EVENT=6,
  99.       ACTION_CURRENT_VOLUME=7,
  100.       ACTION_LOCATE_OBJECT=8,
  101.       ACTION_RENAME_DISK=9,
  102.       ACTION_WRITE=$57,
  103.       ACTION_READ=$52,
  104.       ACTION_FREE_LOCK=15,
  105.       ACTION_DELETE_OBJECT=16,
  106.       ACTION_RENAME_OBJECT=17,
  107.       ACTION_MORE_CACHE=18,
  108.       ACTION_COPY_DIR=19,
  109.       ACTION_WAIT_CHAR=20,
  110.       ACTION_SET_PROTECT=21,
  111.       ACTION_CREATE_DIR=22,
  112.       ACTION_EXAMINE_OBJECT=23,
  113.       ACTION_EXAMINE_NEXT=24,
  114.       ACTION_DISK_INFO=25,
  115.       ACTION_INFO=26,
  116.       ACTION_FLUSH=27,
  117.       ACTION_SET_COMMENT=28,
  118.       ACTION_PARENT=29,
  119.       ACTION_TIMER=30,
  120.       ACTION_INHIBIT=31,
  121.       ACTION_DISK_TYPE=$20,
  122.       ACTION_DISK_CHANGE=$21,
  123.       ACTION_SET_DATE=$22,
  124.       ACTION_SCREEN_MODE=$3E2,
  125.       ACTION_READ_RETURN=$3E9,
  126.       ACTION_WRITE_RETURN=$3EA,
  127.       ACTION_SEEK=$3F0,
  128.       ACTION_FINDUPDATE=$3EC,
  129.       ACTION_FINDINPUT=$3ED,
  130.       ACTION_FINDOUTPUT=$3EE,
  131.       ACTION_END=$3EF,
  132.       ACTION_SET_FILE_SIZE=$3FE,
  133.       ACTION_WRITE_PROTECT=$3FF,
  134.       ACTION_SAME_LOCK=$28,
  135.       ACTION_CHANGE_SIGNAL=$3E3,
  136.       ACTION_FORMAT=$3FC,
  137.       ACTION_MAKE_LINK=$3FD,
  138.       ACTION_READ_LINK=$400,
  139.       ACTION_FH_FROM_LOCK=$402,
  140.       ACTION_IS_FILESYSTEM=$403,
  141.       ACTION_CHANGE_MODE=$404,
  142.       ACTION_COPY_DIR_FH=$406,
  143.       ACTION_PARENT_FH=$407,
  144.       ACTION_EXAMINE_ALL=$409,
  145.       ACTION_EXAMINE_FH=$40A,
  146.       ACTION_LOCK_RECORD=$7D8,
  147.       ACTION_FREE_RECORD=$7D9,
  148.       ACTION_ADD_NOTIFY=$1001,
  149.       ACTION_REMOVE_NOTIFY=$1002,
  150.       ACTION_EXAMINE_ALL_END=$40B,
  151.       ACTION_SET_OWNER=$40C,
  152.       ACTION_SERIALIZE_DISK=$1068
  153.  
  154. OBJECT errorstring
  155.   nums:PTR TO LONG
  156.   strings:PTR TO CHAR
  157. ENDOBJECT     /* SIZEOF=8 */
  158.  
  159. OBJECT doslibrary
  160.   lib:lib
  161.   root:PTR TO rootnode
  162.   gv:LONG
  163.   a2:LONG
  164.   a5:LONG
  165.   a6:LONG
  166.   errors:PTR TO errorstring
  167.   timereq:PTR TO timerequest
  168.   utilitybase:PTR TO lib
  169.   intuitionbase:PTR TO lib
  170. ENDOBJECT     /* SIZEOF=70 */
  171.  
  172. OBJECT rootnode
  173.   taskarray:LONG
  174.   consolesegment:LONG
  175.   time:datestamp
  176.   restartseg:LONG
  177.   info:LONG
  178.   filehandlersegment:LONG
  179.   clilist:mlh
  180.   bootproc:PTR TO mp
  181.   shellsegment:LONG
  182.   flags:LONG
  183. ENDOBJECT     /* SIZEOF=56 */
  184.  
  185. CONST RNB_WILDSTAR=24,
  186.       RNF_WILDSTAR=$1000000,
  187.       RNB_PRIVATE1=1,
  188.       RNF_PRIVATE1=2
  189.  
  190. OBJECT cliproclist
  191.   node:mln
  192.   first:LONG
  193. -> Um, this is really PTR TO PTR TO mp
  194.   array:PTR TO LONG
  195. ENDOBJECT     /* SIZEOF=16 */
  196.  
  197. OBJECT dosinfo
  198.   mcname:LONG
  199.   devinfo:LONG
  200.   devices:LONG
  201.   handlers:LONG
  202.   nethand:LONG
  203.   devlock:ss
  204.   entrylock:ss
  205.   deletelock:ss
  206. ENDOBJECT     /* SIZEOF=158 */
  207.  
  208. OBJECT segment
  209.   next:LONG
  210.   uc:LONG
  211.   seg:LONG
  212.   name[4]:ARRAY
  213. ENDOBJECT     /* SIZEOF=16 */
  214.  
  215. CONST CMD_SYSTEM=-1,
  216.       CMD_INTERNAL=-2,
  217.       CMD_DISABLED=$FFFFFC19
  218.  
  219. OBJECT commandlineinterface
  220.   result2:LONG
  221.   setname:PTR TO CHAR
  222.   commanddir:LONG
  223.   returncode:LONG
  224.   commandname:PTR TO CHAR
  225.   faillevel:LONG
  226.   prompt:PTR TO CHAR
  227.   standardinput:LONG
  228.   currentinput:LONG
  229.   commandfile:PTR TO CHAR
  230.   interactive:LONG
  231.   background:LONG
  232.   currentoutput:LONG
  233.   defaultstack:LONG
  234.   standardoutput:LONG
  235.   module:LONG
  236. ENDOBJECT     /* SIZEOF=64 */
  237.  
  238. OBJECT devlist
  239.   next:LONG
  240.   type:LONG
  241.   task:PTR TO mp
  242.   lock:LONG
  243.   volumedate:datestamp
  244.   locklist:LONG
  245.   disktype:LONG
  246.   unused:LONG
  247.   name:PTR TO CHAR
  248. ENDOBJECT     /* SIZEOF=44 */
  249.  
  250. OBJECT devinfo
  251.   next:LONG
  252.   type:LONG
  253.   task:LONG
  254.   lock:LONG
  255.   handler:PTR TO CHAR
  256.   stacksize:LONG
  257.   priority:LONG
  258.   startup:LONG
  259.   seglist:LONG
  260.   globvec:LONG
  261.   name:PTR TO CHAR
  262. ENDOBJECT     /* SIZEOF=44 */
  263.  
  264. OBJECT doslist
  265.   next:LONG
  266.   type:LONG
  267.   task:PTR TO mp
  268.   lock:LONG
  269.  
  270. -> a) next 3 LONGs are unioned with "volumedate:datestamp"
  271. -> b) next LONG is unioned with "handler:PTR TO CHAR"
  272.   assignname:PTR TO CHAR
  273. -> b) next LONG is unioned with "stacksize:LONG"
  274.   list:PTR TO assignlist
  275.   priority:LONG
  276. -> a) next LONG is unioned with "locklist:LONG"
  277.   startup:LONG
  278. -> a) next LONG is unioned with "disktype:LONG"
  279.   seglist:LONG
  280.   globvec:LONG
  281.   name:PTR TO CHAR
  282. ENDOBJECT     /* SIZEOF=44 */
  283.  
  284. -> Um, this object was missing
  285. OBJECT assignlist
  286.   next:PTR TO assignlist
  287.   lock:LONG
  288. ENDOBJECT
  289.  
  290. CONST DLT_DEVICE=0,
  291.       DLT_DIRECTORY=1,
  292.       DLT_VOLUME=2,
  293.       DLT_LATE=3,
  294.       DLT_NONBINDING=4,
  295.       DLT_PRIVATE=-1
  296.  
  297. OBJECT devproc
  298.   port:PTR TO mp
  299.   lock:LONG
  300.   flags:LONG
  301.   devnode:PTR TO doslist
  302. ENDOBJECT     /* SIZEOF=16 */
  303.  
  304. CONST DVPB_UNLOCK=0,
  305.       DVPF_UNLOCK=1,
  306.       DVPB_ASSIGN=1,
  307.       DVPF_ASSIGN=2,
  308.       LDB_DEVICES=2,
  309.       LDF_DEVICES=4,
  310.       LDB_VOLUMES=3,
  311.       LDF_VOLUMES=8,
  312.       LDB_ASSIGNS=4,
  313.       LDF_ASSIGNS=16,
  314.       LDB_ENTRY=5,
  315.       LDF_ENTRY=$20,
  316.       LDB_DELETE=6,
  317.       LDF_DELETE=$40,
  318.       LDB_READ=0,
  319.       LDF_READ=1,
  320.       LDB_WRITE=1,
  321.       LDF_WRITE=2,
  322.       LDF_ALL=28
  323.  
  324. OBJECT filelock
  325.   link:LONG
  326.   key:LONG
  327.   access:LONG
  328.   task:PTR TO mp
  329.   volume:LONG
  330. ENDOBJECT     /* SIZEOF=20 */
  331.  
  332. CONST REPORT_STREAM=0,
  333.       REPORT_TASK=1,
  334.       REPORT_LOCK=2,
  335.       REPORT_VOLUME=3,
  336.       REPORT_INSERT=4,
  337.       ABORT_DISK_ERROR=$128,
  338.       ABORT_BUSY=$120,
  339.       RUN_EXECUTE=-1,
  340.       RUN_SYSTEM=-2,
  341.       RUN_SYSTEM_ASYNCH=-3,
  342.       ST_ROOT=1,
  343.       ST_USERDIR=2,
  344.       ST_SOFTLINK=3,
  345.       ST_LINKDIR=4,
  346.       ST_FILE=-3,
  347.       ST_LINKFILE=-4,
  348.       ST_PIPEFILE=-5
  349.  
  350.