home *** CD-ROM | disk | FTP | other *** search
Unknown | 1994-04-04 | 14.0 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 00 3b 20 24 56 45 52 | 3a 20 64 6f 73 65 78 74 |;.; $VER|: dosext|
|00000010| 65 6e 73 2e 62 62 32 20 | 34 30 2e 30 20 28 32 38 |ens.bb2 |40.0 (28|
|00000020| 2e 30 32 2e 39 34 29 00 | 3b 00 00 80 12 22 65 78 |.02.94).|;...."ex|
|00000030| 65 63 2f 74 61 73 6b 73 | 2e 62 62 32 22 00 80 12 |ec/tasks|.bb2"...|
|00000040| 22 65 78 65 63 2f 70 6f | 72 74 73 2e 62 62 32 22 |"exec/po|rts.bb2"|
|00000050| 00 80 12 22 65 78 65 63 | 2f 6c 69 62 72 61 72 69 |..."exec|/librari|
|00000060| 65 73 2e 62 62 32 22 00 | 80 12 22 65 78 65 63 2f |es.bb2".|.."exec/|
|00000070| 73 65 6d 61 70 68 6f 72 | 65 73 2e 62 62 32 22 00 |semaphor|es.bb2".|
|00000080| 80 12 22 64 65 76 69 63 | 65 73 2f 74 69 6d 65 72 |.."devic|es/timer|
|00000090| 2e 62 62 32 22 00 00 80 | 12 22 64 6f 73 2f 64 6f |.bb2"...|."dos/do|
|000000a0| 73 2e 62 62 32 22 00 00 | 3b 2f 2a 20 41 6c 6c 20 |s.bb2"..|;/* All |
|000000b0| 44 4f 53 20 70 72 6f 63 | 65 73 73 65 73 20 68 61 |DOS proc|esses ha|
|000000c0| 76 65 20 74 68 69 73 20 | 73 74 72 75 63 74 75 72 |ve this |structur|
|000000d0| 65 20 2a 2f 00 3b 2f 2a | 20 43 72 65 61 74 65 20 |e */.;/*| Create |
|000000e0| 61 6e 64 20 44 65 76 69 | 63 65 20 50 72 6f 63 20 |and Devi|ce Proc |
|000000f0| 72 65 74 75 72 6e 73 20 | 70 6f 69 6e 74 65 72 20 |returns |pointer |
|00000100| 74 6f 20 74 68 65 20 4d | 73 67 50 6f 72 74 20 69 |to the M|sgPort i|
|00000110| 6e 20 74 68 69 73 20 73 | 74 72 75 63 74 75 72 65 |n this s|tructure|
|00000120| 20 2a 2f 00 3b 2f 2a 20 | 64 65 76 5f 70 72 6f 63 | */.;/* |dev_proc|
|00000130| 20 3d 20 28 73 74 72 75 | 63 74 20 50 72 6f 63 65 | = (stru|ct Proce|
|00000140| 73 73 20 2a 29 20 28 44 | 65 76 69 63 65 50 72 6f |ss *) (D|evicePro|
|00000150| 63 28 2e 2e 29 20 2d 20 | 73 69 7a 65 6f 66 28 73 |c(..) - |sizeof(s|
|00000160| 74 72 75 63 74 20 54 61 | 73 6b 29 29 3b 20 2a 2f |truct Ta|sk)); */|
|00000170| 00 00 80 01 2e 50 72 6f | 63 65 73 73 00 70 72 5f |.....Pro|cess.pr_|
|00000180| 54 61 73 6b 2e 54 61 73 | 6b 00 70 72 5f 4d 73 67 |Task.Tas|k.pr_Msg|
|00000190| 50 6f 72 74 2e 4d 73 67 | 50 6f 72 74 3b 2f 2a 20 |Port.Msg|Port;/* |
|000001a0| 54 68 69 73 20 69 73 20 | 42 50 54 52 20 61 64 64 |This is |BPTR add|
|000001b0| 72 65 73 73 20 66 72 6f | 6d 20 44 4f 53 20 66 75 |ress fro|m DOS fu|
|000001c0| 6e 63 74 69 6f 6e 73 20 | 20 2a 2f 00 70 72 5f 50 |nctions | */.pr_P|
|000001d0| 61 64 2e 77 20 3b 2f 2a | 20 52 65 6d 61 69 6e 69 |ad.w ;/*| Remaini|
|000001e0| 6e 67 20 76 61 72 69 61 | 62 6c 65 73 20 6f 6e 20 |ng varia|bles on |
|000001f0| 34 20 62 79 74 65 20 62 | 6f 75 6e 64 61 72 69 65 |4 byte b|oundarie|
|00000200| 73 20 2a 2f 00 2a 70 72 | 5f 53 65 67 4c 69 73 74 |s */.*pr|_SegList|
|00000210| 2e 62 20 3b 2f 2a 20 41 | 72 72 61 79 20 6f 66 20 |.b ;/* A|rray of |
|00000220| 73 65 67 20 6c 69 73 74 | 73 20 75 73 65 64 20 62 |seg list|s used b|
|00000230| 79 20 74 68 69 73 20 70 | 72 6f 63 65 73 73 20 20 |y this p|rocess |
|00000240| 2a 2f 00 70 72 5f 53 74 | 61 63 6b 53 69 7a 65 2e |*/.pr_St|ackSize.|
|00000250| 6c 20 3b 2f 2a 20 53 69 | 7a 65 20 6f 66 20 70 72 |l ;/* Si|ze of pr|
|00000260| 6f 63 65 73 73 20 73 74 | 61 63 6b 20 69 6e 20 62 |ocess st|ack in b|
|00000270| 79 74 65 73 20 20 20 20 | 20 2a 2f 00 2a 70 72 5f |ytes | */.*pr_|
|00000280| 47 6c 6f 62 56 65 63 2e | 62 20 3b 2f 2a 20 47 6c |GlobVec.|b ;/* Gl|
|00000290| 6f 62 61 6c 20 76 65 63 | 74 6f 72 20 66 6f 72 20 |obal vec|tor for |
|000002a0| 74 68 69 73 20 70 72 6f | 63 65 73 73 20 28 42 43 |this pro|cess (BC|
|000002b0| 50 4c 29 20 20 20 20 2a | 2f 00 70 72 5f 54 61 73 |PL) *|/.pr_Tas|
|000002c0| 6b 4e 75 6d 2e 6c 20 3b | 2f 2a 20 43 4c 49 20 74 |kNum.l ;|/* CLI t|
|000002d0| 61 73 6b 20 6e 75 6d 62 | 65 72 20 6f 66 20 7a 65 |ask numb|er of ze|
|000002e0| 72 6f 20 69 66 20 6e 6f | 74 20 61 20 43 4c 49 20 |ro if no|t a CLI |
|000002f0| 20 20 20 20 2a 2f 00 2a | 70 72 5f 53 74 61 63 6b | */.*|pr_Stack|
|00000300| 42 61 73 65 2e 62 20 3b | 2f 2a 20 50 74 72 20 74 |Base.b ;|/* Ptr t|
|00000310| 6f 20 68 69 67 68 20 6d | 65 6d 6f 72 79 20 65 6e |o high m|emory en|
|00000320| 64 20 6f 66 20 70 72 6f | 63 65 73 73 20 73 74 61 |d of pro|cess sta|
|00000330| 63 6b 20 20 2a 2f 00 70 | 72 5f 52 65 73 75 6c 74 |ck */.p|r_Result|
|00000340| 32 2e 6c 20 3b 2f 2a 20 | 56 61 6c 75 65 20 6f 66 |2.l ;/* |Value of|
|00000350| 20 73 65 63 6f 6e 64 61 | 72 79 20 72 65 73 75 6c | seconda|ry resul|
|00000360| 74 20 66 72 6f 6d 20 6c | 61 73 74 20 63 61 6c 6c |t from l|ast call|
|00000370| 20 2a 2f 00 2a 70 72 5f | 43 75 72 72 65 6e 74 44 | */.*pr_|CurrentD|
|00000380| 69 72 2e 62 20 3b 2f 2a | 20 4c 6f 63 6b 20 61 73 |ir.b ;/*| Lock as|
|00000390| 73 6f 63 69 61 74 65 64 | 20 77 69 74 68 20 63 75 |sociated| with cu|
|000003a0| 72 72 65 6e 74 20 64 69 | 72 65 63 74 6f 72 79 20 |rrent di|rectory |
|000003b0| 20 20 2a 2f 00 2a 70 72 | 5f 43 49 53 2e 62 20 3b | */.*pr|_CIS.b ;|
|000003c0| 2f 2a 20 43 75 72 72 65 | 6e 74 20 43 4c 49 20 49 |/* Curre|nt CLI I|
|000003d0| 6e 70 75 74 20 53 74 72 | 65 61 6d 20 20 20 20 20 |nput Str|eam |
|000003e0| 20 2a 2f 00 2a 70 72 5f | 43 4f 53 2e 62 20 3b 2f | */.*pr_|COS.b ;/|
|000003f0| 2a 20 43 75 72 72 65 6e | 74 20 43 4c 49 20 4f 75 |* Curren|t CLI Ou|
|00000400| 74 70 75 74 20 53 74 72 | 65 61 6d 20 20 20 20 20 |tput Str|eam |
|00000410| 20 2a 2f 00 2a 70 72 5f | 43 6f 6e 73 6f 6c 65 54 | */.*pr_|ConsoleT|
|00000420| 61 73 6b 2e 62 20 3b 2f | 2a 20 43 6f 6e 73 6f 6c |ask.b ;/|* Consol|
|00000430| 65 20 68 61 6e 64 6c 65 | 72 20 70 72 6f 63 65 73 |e handle|r proces|
|00000440| 73 20 66 6f 72 20 63 75 | 72 72 65 6e 74 20 77 69 |s for cu|rrent wi|
|00000450| 6e 64 6f 77 2a 2f 00 2a | 70 72 5f 46 69 6c 65 53 |ndow*/.*|pr_FileS|
|00000460| 79 73 74 65 6d 54 61 73 | 6b 2e 62 20 3b 2f 2a 20 |ystemTas|k.b ;/* |
|00000470| 46 69 6c 65 20 68 61 6e | 64 6c 65 72 20 70 72 6f |File han|dler pro|
|00000480| 63 65 73 73 20 66 6f 72 | 20 63 75 72 72 65 6e 74 |cess for| current|
|00000490| 20 64 72 69 76 65 20 20 | 20 2a 2f 00 2a 70 72 5f | drive | */.*pr_|
|000004a0| 43 4c 49 2e 62 20 3b 2f | 2a 20 70 6f 69 6e 74 65 |CLI.b ;/|* pointe|
|000004b0| 72 20 74 6f 20 43 6f 6d | 6d 61 6e 64 4c 69 6e 65 |r to Com|mandLine|
|000004c0| 49 6e 74 65 72 66 61 63 | 65 20 20 20 20 20 2a 2f |Interfac|e */|
|000004d0| 00 2a 70 72 5f 52 65 74 | 75 72 6e 41 64 64 72 2e |.*pr_Ret|urnAddr.|
|000004e0| 62 20 3b 2f 2a 20 70 6f | 69 6e 74 65 72 20 74 6f |b ;/* po|inter to|
|000004f0| 20 70 72 65 76 69 6f 75 | 73 20 73 74 61 63 6b 20 | previou|s stack |
|00000500| 66 72 61 6d 65 20 20 20 | 20 20 2a 2f 00 2a 70 72 |frame | */.*pr|
|00000510| 5f 50 6b 74 57 61 69 74 | 2e 62 20 3b 2f 2a 20 46 |_PktWait|.b ;/* F|
|00000520| 75 6e 63 74 69 6f 6e 20 | 74 6f 20 62 65 20 63 61 |unction |to be ca|
|00000530| 6c 6c 65 64 20 77 68 65 | 6e 20 61 77 61 69 74 69 |lled whe|n awaiti|
|00000540| 6e 67 20 6d 73 67 20 20 | 2a 2f 00 2a 70 72 5f 57 |ng msg |*/.*pr_W|
|00000550| 69 6e 64 6f 77 50 74 72 | 2e 62 20 3b 2f 2a 20 57 |indowPtr|.b ;/* W|
|00000560| 69 6e 64 6f 77 20 66 6f | 72 20 65 72 72 6f 72 20 |indow fo|r error |
|00000570| 70 72 69 6e 74 69 6e 67 | 20 20 20 20 20 20 2a 2f |printing| */|
|00000580| 00 00 3b 2f 2a 20 66 6f | 6c 6c 6f 77 69 6e 67 20 |..;/* fo|llowing |
|00000590| 64 65 66 69 6e 69 74 69 | 6f 6e 73 20 61 72 65 20 |definiti|ons are |
|000005a0| 6e 65 77 20 77 69 74 68 | 20 32 2e 30 20 2a 2f 00 |new with| 2.0 */.|
|000005b0| 2a 70 72 5f 48 6f 6d 65 | 44 69 72 2e 62 20 3b 2f |*pr_Home|Dir.b ;/|
|000005c0| 2a 20 48 6f 6d 65 20 64 | 69 72 65 63 74 6f 72 79 |* Home d|irectory|
|000005d0| 20 6f 66 20 65 78 65 63 | 75 74 69 6e 67 20 70 72 | of exec|uting pr|
|000005e0| 6f 67 72 61 6d 20 20 20 | 20 20 2a 2f 00 70 72 5f |ogram | */.pr_|
|000005f0| 46 6c 61 67 73 2e 6c 20 | 3b 2f 2a 20 66 6c 61 67 |Flags.l |;/* flag|
|00000600| 73 20 74 65 6c 6c 69 6e | 67 20 64 6f 73 20 61 62 |s tellin|g dos ab|
|00000610| 6f 75 74 20 70 72 6f 63 | 65 73 73 20 20 20 20 20 |out proc|ess |
|00000620| 2a 2f 00 2a 70 72 5f 45 | 78 69 74 43 6f 64 65 2e |*/.*pr_E|xitCode.|
|00000630| 77 20 3b 2f 2a 20 63 6f | 64 65 20 74 6f 20 63 61 |w ;/* co|de to ca|
|00000640| 6c 6c 20 6f 6e 20 65 78 | 69 74 20 6f 66 20 70 72 |ll on ex|it of pr|
|00000650| 6f 67 72 61 6d 20 6f 72 | 20 4e 55 4c 4c 20 20 2a |ogram or| NULL *|
|00000660| 2f 00 70 72 5f 45 78 69 | 74 44 61 74 61 2e 6c 20 |/.pr_Exi|tData.l |
|00000670| 3b 2f 2a 20 50 61 73 73 | 65 64 20 61 73 20 61 6e |;/* Pass|ed as an|
|00000680| 20 61 72 67 75 6d 65 6e | 74 20 74 6f 20 70 72 5f | argumen|t to pr_|
|00000690| 45 78 69 74 43 6f 64 65 | 2e 20 20 20 20 2a 2f 00 |ExitCode|. */.|
|000006a0| 2a 70 72 5f 41 72 67 75 | 6d 65 6e 74 73 2e 62 20 |*pr_Argu|ments.b |
|000006b0| 3b 2f 2a 20 41 72 67 75 | 6d 65 6e 74 73 20 70 61 |;/* Argu|ments pa|
|000006c0| 73 73 65 64 20 74 6f 20 | 74 68 65 20 70 72 6f 63 |ssed to |the proc|
|000006d0| 65 73 73 20 61 74 20 73 | 74 61 72 74 20 2a 2f 00 |ess at s|tart */.|
|000006e0| 70 72 5f 4c 6f 63 61 6c | 56 61 72 73 2e 4d 69 6e |pr_Local|Vars.Min|
|000006f0| 4c 69 73 74 3b 2f 2a 20 | 4c 6f 63 61 6c 20 65 6e |List;/* |Local en|
|00000700| 76 69 72 6f 6e 6d 65 6e | 74 20 76 61 72 69 61 62 |vironmen|t variab|
|00000710| 6c 65 73 20 20 20 20 20 | 20 2a 2f 00 70 72 5f 53 |les | */.pr_S|
|00000720| 68 65 6c 6c 50 72 69 76 | 61 74 65 2e 6c 20 3b 2f |hellPriv|ate.l ;/|
|00000730| 2a 20 66 6f 72 20 74 68 | 65 20 75 73 65 20 6f 66 |* for th|e use of|
|00000740| 20 74 68 65 20 63 75 72 | 72 65 6e 74 20 73 68 65 | the cur|rent she|
|00000750| 6c 6c 20 20 20 20 20 2a | 2f 00 2a 70 72 5f 43 45 |ll *|/.*pr_CE|
|00000760| 53 2e 62 20 3b 2f 2a 20 | 45 72 72 6f 72 20 73 74 |S.b ;/* |Error st|
|00000770| 72 65 61 6d 20 2d 20 69 | 66 20 4e 55 4c 4c 2c 20 |ream - i|f NULL, |
|00000780| 75 73 65 20 70 72 5f 43 | 4f 53 20 20 20 20 20 2a |use pr_C|OS *|
|00000790| 2f 00 00 80 02 20 80 01 | 00 3b 2f 2a 20 50 72 6f |/.... ..|.;/* Pro|
|000007a0| 63 65 73 73 20 2a 2f 00 | 00 3b 2f 2a 00 3b 20 2a |cess */.|.;/*.; *|
|000007b0| 20 46 6c 61 67 73 20 66 | 6f 72 20 70 72 5f 46 6c | Flags f|or pr_Fl|
|000007c0| 61 67 73 00 3b 20 2a 2f | 00 23 50 52 42 5f 46 52 |ags.; */|.#PRB_FR|
|000007d0| 45 45 53 45 47 4c 49 53 | 54 3d 30 00 23 50 52 46 |EESEGLIS|T=0.#PRF|
|000007e0| 5f 46 52 45 45 53 45 47 | 4c 49 53 54 3d 31 00 23 |_FREESEG|LIST=1.#|
|000007f0| 50 52 42 5f 46 52 45 45 | 43 55 52 52 44 49 52 3d |PRB_FREE|CURRDIR=|
|00000800| 31 00 23 50 52 46 5f 46 | 52 45 45 43 55 52 52 44 |1.#PRF_F|REECURRD|
|00000810| 49 52 3d 32 00 23 50 52 | 42 5f 46 52 45 45 43 4c |IR=2.#PR|B_FREECL|
|00000820| 49 3d 32 00 23 50 52 46 | 5f 46 52 45 45 43 4c 49 |I=2.#PRF|_FREECLI|
|00000830| 3d 34 00 23 50 52 42 5f | 43 4c 4f 53 45 49 4e 50 |=4.#PRB_|CLOSEINP|
|00000840| 55 54 3d 33 00 23 50 52 | 46 5f 43 4c 4f 53 45 49 |UT=3.#PR|F_CLOSEI|
|00000850| 4e 50 55 54 3d 38 00 23 | 50 52 42 5f 43 4c 4f 53 |NPUT=8.#|PRB_CLOS|
|00000860| 45 4f 55 54 50 55 54 3d | 34 00 23 50 52 46 5f 43 |EOUTPUT=|4.#PRF_C|
|00000870| 4c 4f 53 45 4f 55 54 50 | 55 54 3d 31 36 00 23 50 |LOSEOUTP|UT=16.#P|
|00000880| 52 42 5f 46 52 45 45 41 | 52 47 53 3d 35 00 23 50 |RB_FREEA|RGS=5.#P|
|00000890| 52 46 5f 46 52 45 45 41 | 52 47 53 3d 33 32 00 00 |RF_FREEA|RGS=32..|
|000008a0| 3b 2f 2a 20 54 68 65 20 | 6c 6f 6e 67 20 77 6f 72 |;/* The |long wor|
|000008b0| 64 20 61 64 64 72 65 73 | 73 20 28 42 50 54 52 29 |d addres|s (BPTR)|
|000008c0| 20 6f 66 20 74 68 69 73 | 20 73 74 72 75 63 74 75 | of this| structu|
|000008d0| 72 65 20 69 73 20 72 65 | 74 75 72 6e 65 64 20 62 |re is re|turned b|
|000008e0| 79 00 3b 20 2a 20 4f 70 | 65 6e 28 29 20 61 6e 64 |y.; * Op|en() and|
|000008f0| 20 6f 74 68 65 72 20 72 | 6f 75 74 69 6e 65 73 20 | other r|outines |
|00000900| 74 68 61 74 20 72 65 74 | 75 72 6e 20 61 20 66 69 |that ret|urn a fi|
|00000910| 6c 65 2e 20 20 59 6f 75 | 20 6e 65 65 64 20 6f 6e |le. You| need on|
|00000920| 6c 79 20 77 6f 72 72 79 | 00 3b 20 2a 20 61 62 6f |ly worry|.; * abo|
|00000930| 75 74 20 74 68 69 73 20 | 73 74 72 75 63 74 20 74 |ut this |struct t|
|00000940| 6f 20 64 6f 20 61 73 79 | 6e 63 20 69 6f 27 73 20 |o do asy|nc io's |
|00000950| 76 69 61 20 50 75 74 4d | 73 67 28 29 20 69 6e 73 |via PutM|sg() ins|
|00000960| 74 65 61 64 20 6f 66 00 | 3b 20 2a 20 73 74 61 6e |tead of.|; * stan|
|00000970| 64 61 72 64 20 66 69 6c | 65 20 73 79 73 74 65 6d |dard fil|e system|
|00000980| 20 63 61 6c 6c 73 20 2a | 2f 00 00 80 01 2e 46 69 | calls *|/.....Fi|
|00000990| 6c 65 48 61 6e 64 6c 65 | 00 2a 66 68 5f 4c 69 6e |leHandle|.*fh_Lin|
|000009a0| 6b 2e 4d 65 73 73 61 67 | 65 3b 2f 2a 20 45 58 45 |k.Messag|e;/* EXE|
|000009b0| 43 20 6d 65 73 73 61 67 | 65 20 20 20 20 20 20 20 |C messag|e |
|000009c0| 2a 2f 00 2a 66 68 5f 50 | 6f 72 74 2e 4d 73 67 50 |*/.*fh_P|ort.MsgP|
|000009d0| 6f 72 74 3b 2f 2a 20 52 | 65 70 6c 79 20 70 6f 72 |ort;/* R|eply por|
|000009e0| 74 20 66 6f 72 20 74 68 | 65 20 70 61 63 6b 65 74 |t for th|e packet|
|000009f0| 20 2a 2f 00 2a 66 68 5f | 54 79 70 65 2e 4d 73 67 | */.*fh_|Type.Msg|
|00000a00| 50 6f 72 74 3b 2f 2a 20 | 50 6f 72 74 20 74 6f 20 |Port;/* |Port to |
|00000a10| 64 6f 20 50 75 74 4d 73 | 67 28 29 20 74 6f 00 3b |do PutMs|g() to.;|
|00000a20| 20 20 20 20 20 20 20 20 | 20 2a 20 41 64 64 72 65 | | * Addre|
|00000a30| 73 73 20 69 73 20 6e 65 | 67 61 74 69 76 65 20 69 |ss is ne|gative i|
|00000a40| 66 20 61 20 70 6c 61 69 | 6e 20 66 69 6c 65 20 2a |f a plai|n file *|
|00000a50| 2f 00 66 68 5f 42 75 66 | 2e 6c 00 66 68 5f 50 6f |/.fh_Buf|.l.fh_Po|
|00000a60| 73 2e 6c 00 66 68 5f 45 | 6e 64 2e 6c 00 66 68 5f |s.l.fh_E|nd.l.fh_|
|00000a70| 46 75 6e 63 73 2e 6c 00 | 3b 23 66 68 5f 46 75 6e |Funcs.l.|;#fh_Fun|
|00000a80| 63 31 3d 23 66 68 5f 46 | 75 6e 63 73 00 66 68 5f |c1=#fh_F|uncs.fh_|
|00000a90| 46 75 6e 63 32 2e 6c 00 | 66 68 5f 46 75 6e 63 33 |Func2.l.|fh_Func3|
|00000aa0| 2e 6c 00 66 68 5f 41 72 | 67 73 2e 6c 00 3b 23 66 |.l.fh_Ar|gs.l.;#f|
|00000ab0| 68 5f 41 72 67 31 3d 23 | 66 68 5f 41 72 67 73 00 |h_Arg1=#|fh_Args.|
|00000ac0| 66 68 5f 41 72 67 32 2e | 6c 00 00 80 02 20 80 01 |fh_Arg2.|l.... ..|
|00000ad0| 00 3b 2f 2a 20 46 69 6c | 65 48 61 6e 64 6c 65 20 |.;/* Fil|eHandle |
|00000ae0| 2a 2f 00 00 3b 2f 2a 20 | 54 68 69 73 20 69 73 20 |*/..;/* |This is |
|00000af0| 74 68 65 20 65 78 74 65 | 6e 73 69 6f 6e 20 74 6f |the exte|nsion to|
|00000b00| 20 45 58 45 43 20 4d 65 | 73 73 61 67 65 73 20 75 | EXEC Me|ssages u|
|00000b10| 73 65 64 20 62 79 20 44 | 4f 53 20 2a 2f 00 00 80 |sed by D|OS */...|
|00000b20| 01 2e 44 6f 73 50 61 63 | 6b 65 74 00 2a 64 70 5f |..DosPac|ket.*dp_|
|00000b30| 4c 69 6e 6b 2e 4d 65 73 | 73 61 67 65 3b 2f 2a 20 |Link.Mes|sage;/* |
|00000b40| 45 58 45 43 20 6d 65 73 | 73 61 67 65 20 20 20 20 |EXEC mes|sage |
|00000b50| 20 20 20 2a 2f 00 2a 64 | 70 5f 50 6f 72 74 2e 4d | */.*d|p_Port.M|
|00000b60| 73 67 50 6f 72 74 3b 2f | 2a 20 52 65 70 6c 79 20 |sgPort;/|* Reply |
|00000b70| 70 6f 72 74 20 66 6f 72 | 20 74 68 65 20 70 61 63 |port for| the pac|
|00000b80| 6b 65 74 20 2a 2f 00 3b | 2f 2a 20 4d 75 73 74 20 |ket */.;|/* Must |
|00000b90| 62 65 20 66 69 6c 6c 65 | 64 20 69 6e 20 65 61 63 |be fille|d in eac|
|00000ba0| 68 20 73 65 6e 64 2e 20 | 2a 2f 00 64 70 5f 54 79 |h send. |*/.dp_Ty|
|00000bb0| 70 65 2e 6c 20 3b 2f 2a | 20 53 65 65 20 41 43 54 |pe.l ;/*| See ACT|
|00000bc0| 49 4f 4e 5f 2e 2e 2e 20 | 62 65 6c 6f 77 20 61 6e |ION_... |below an|
|00000bd0| 64 00 3b 20 20 20 20 20 | 20 20 20 20 2a 20 27 52 |d.; | * 'R|
|00000be0| 27 20 6d 65 61 6e 73 20 | 52 65 61 64 2c 20 27 57 |' means |Read, 'W|
|00000bf0| 27 20 6d 65 61 6e 73 20 | 57 72 69 74 65 20 74 6f |' means |Write to|
|00000c00| 20 74 68 65 00 3b 20 20 | 20 20 20 20 20 20 20 2a | the.; | *|
|00000c10| 20 66 69 6c 65 20 73 79 | 73 74 65 6d 20 2a 2f 00 | file sy|stem */.|
|00000c20| 64 70 5f 52 65 73 31 2e | 6c 20 3b 2f 2a 20 46 6f |dp_Res1.|l ;/* Fo|
|00000c30| 72 20 66 69 6c 65 20 73 | 79 73 74 65 6d 20 63 61 |r file s|ystem ca|
|00000c40| 6c 6c 73 20 74 68 69 73 | 20 69 73 20 74 68 65 20 |lls this| is the |
|00000c50| 72 65 73 75 6c 74 00 3b | 20 20 20 20 20 20 20 20 |result.;| |
|00000c60| 20 2a 20 74 68 61 74 20 | 77 6f 75 6c 64 20 68 61 | * that |would ha|
|00000c70| 76 65 20 62 65 65 6e 20 | 72 65 74 75 72 6e 65 64 |ve been |returned|
|00000c80| 20 62 79 20 74 68 65 00 | 3b 20 20 20 20 20 20 20 | by the.|; |
|00000c90| 20 20 2a 20 66 75 6e 63 | 74 69 6f 6e 2c 20 65 2e | * func|tion, e.|
|00000ca0| 67 2e 20 57 72 69 74 65 | 20 28 27 57 27 29 20 72 |g. Write| ('W') r|
|00000cb0| 65 74 75 72 6e 73 20 61 | 63 74 75 61 6c 00 3b 20 |eturns a|ctual.; |
|00000cc0| 20 20 20 20 20 20 20 20 | 2a 20 6c 65 6e 67 74 68 | |* length|
|00000cd0| 20 77 72 69 74 74 65 6e | 20 2a 2f 00 64 70 5f 52 | written| */.dp_R|
|00000ce0| 65 73 32 2e 6c 20 3b 2f | 2a 20 46 6f 72 20 66 69 |es2.l ;/|* For fi|
|00000cf0| 6c 65 20 73 79 73 74 65 | 6d 20 63 61 6c 6c 73 20 |le syste|m calls |
|00000d00| 74 68 69 73 20 69 73 20 | 77 68 61 74 20 77 6f 75 |this is |what wou|
|00000d10| 6c 64 00 3b 20 20 20 20 | 20 20 20 20 20 2a 20 68 |ld.; | * h|
|00000d20| 61 76 65 20 62 65 65 6e | 20 72 65 74 75 72 6e 65 |ave been| returne|
|00000d30| 64 20 62 79 20 49 6f 45 | 72 72 28 29 20 2a 2f 00 |d by IoE|rr() */.|
|00000d40| 3b 2f 2a 20 20 44 65 76 | 69 63 65 20 70 61 63 6b |;/* Dev|ice pack|
|00000d50| 65 74 73 20 63 6f 6d 6d | 6f 6e 20 65 71 75 69 76 |ets comm|on equiv|
|00000d60| 61 6c 65 6e 74 73 20 2a | 2f 00 3b 23 64 70 5f 41 |alents *|/.;#dp_A|
|00000d70| 63 74 69 6f 6e 3d 23 64 | 70 5f 54 79 70 65 00 3b |ction=#d|p_Type.;|
|00000d80| 23 64 70 5f 53 74 61 74 | 75 73 3d 23 64 70 5f 52 |#dp_Stat|us=#dp_R|
|00000d90| 65 73 31 00 3b 23 64 70 | 5f 53 74 61 74 75 73 32 |es1.;#dp|_Status2|
|00000da0| 3d 23 64 70 5f 52 65 73 | 32 00 3b 23 64 70 5f 42 |=#dp_Res|2.;#dp_B|
|00000db0| 75 66 41 64 64 72 3d 23 | 64 70 5f 41 72 67 31 00 |ufAddr=#|dp_Arg1.|
|00000dc0| 64 70 5f 41 72 67 31 2e | 6c 00 64 70 5f 41 72 67 |dp_Arg1.|l.dp_Arg|
|00000dd0| 32 2e 6c 00 64 70 5f 41 | 72 67 33 2e 6c 00 64 70 |2.l.dp_A|rg3.l.dp|
|00000de0| 5f 41 72 67 34 2e 6c 00 | 64 70 5f 41 72 67 35 2e |_Arg4.l.|dp_Arg5.|
|00000df0| 6c 00 64 70 5f 41 72 67 | 36 2e 6c 00 64 70 5f 41 |l.dp_Arg|6.l.dp_A|
|00000e00| 72 67 37 2e 6c 00 00 80 | 02 20 80 01 00 3b 2f 2a |rg7.l...|. ...;/*|
|00000e10| 20 44 6f 73 50 61 63 6b | 65 74 20 2a 2f 00 00 3b | DosPack|et */..;|
|00000e20| 2f 2a 20 41 20 50 61 63 | 6b 65 74 20 64 6f 65 73 |/* A Pac|ket does|
|00000e30| 20 6e 6f 74 20 72 65 71 | 75 69 72 65 20 74 68 65 | not req|uire the|
|00000e40| 20 4d 65 73 73 61 67 65 | 20 74 6f 20 62 65 20 62 | Message| to be b|
|00000e50| 65 66 6f 72 65 20 69 74 | 20 69 6e 20 6d 65 6d 6f |efore it| in memo|
|00000e60| 72 79 2c 20 62 75 74 00 | 3b 20 2a 20 66 6f 72 20 |ry, but.|; * for |
|00000e70| 63 6f 6e 76 65 6e 69 65 | 6e 63 65 20 69 74 20 69 |convenie|nce it i|
|00000e80| 73 20 75 73 65 66 75 6c | 20 74 6f 20 61 73 73 6f |s useful| to asso|
|00000e90| 63 69 61 74 65 20 74 68 | 65 20 74 77 6f 2e 00 3b |ciate th|e two..;|
|00000ea0| 20 2a 20 41 6c 73 6f 20 | 73 65 65 20 74 68 65 20 | * Also |see the |
|00000eb0| 66 75 6e 63 74 69 6f 6e | 20 69 6e 69 74 5f 73 74 |function| init_st|
|00000ec0| 64 5f 70 6b 74 20 66 6f | 72 20 69 6e 69 74 69 61 |d_pkt fo|r initia|
|00000ed0| 6c 69 7a 69 6e 67 20 74 | 68 69 73 20 73 74 72 75 |lizing t|his stru|
|00000ee0| 63 74 75 72 65 20 2a 2f | 00 00 80 01 2e 53 74 61 |cture */|.....Sta|
|00000ef0| 6e 64 61 72 64 50 61 63 | 6b 65 74 00 73 70 5f 4d |ndardPac|ket.sp_M|
|00000f00| 73 67 2e 4d 65 73 73 61 | 67 65 00 73 70 5f 50 6b |sg.Messa|ge.sp_Pk|
|00000f10| 74 2e 44 6f 73 50 61 63 | 6b 65 74 00 00 80 02 20 |t.DosPac|ket.... |
|00000f20| 80 01 00 3b 2f 2a 20 53 | 74 61 6e 64 61 72 64 50 |...;/* S|tandardP|
|00000f30| 61 63 6b 65 74 20 2a 2f | 00 00 3b 2f 2a 20 50 61 |acket */|..;/* Pa|
|00000f40| 63 6b 65 74 20 74 79 70 | 65 73 20 2a 2f 00 23 41 |cket typ|es */.#A|
|00000f50| 43 54 49 4f 4e 5f 4e 49 | 4c 3d 30 00 23 41 43 54 |CTION_NI|L=0.#ACT|
|00000f60| 49 4f 4e 5f 53 54 41 52 | 54 55 50 3d 30 00 23 41 |ION_STAR|TUP=0.#A|
|00000f70| 43 54 49 4f 4e 5f 47 45 | 54 5f 42 4c 4f 43 4b 3d |CTION_GE|T_BLOCK=|
|00000f80| 32 3b 2f 2a 20 4f 42 53 | 4f 4c 45 54 45 20 2a 2f |2;/* OBS|OLETE */|
|00000f90| 00 23 41 43 54 49 4f 4e | 5f 53 45 54 5f 4d 41 50 |.#ACTION|_SET_MAP|
|00000fa0| 3d 34 00 23 41 43 54 49 | 4f 4e 5f 44 49 45 3d 35 |=4.#ACTI|ON_DIE=5|
|00000fb0| 00 23 41 43 54 49 4f 4e | 5f 45 56 45 4e 54 3d 36 |.#ACTION|_EVENT=6|
|00000fc0| 00 23 41 43 54 49 4f 4e | 5f 43 55 52 52 45 4e 54 |.#ACTION|_CURRENT|
|00000fd0| 5f 56 4f 4c 55 4d 45 3d | 37 00 23 41 43 54 49 4f |_VOLUME=|7.#ACTIO|
|00000fe0| 4e 5f 4c 4f 43 41 54 45 | 5f 4f 42 4a 45 43 54 3d |N_LOCATE|_OBJECT=|
|00000ff0| 38 00 23 41 43 54 49 4f | 4e 5f 52 45 4e 41 4d 45 |8.#ACTIO|N_RENAME|
|00001000| 5f 44 49 53 4b 3d 39 00 | 23 41 43 54 49 4f 4e 5f |_DISK=9.|#ACTION_|
|00001010| 57 52 49 54 45 3d 38 37 | 20 3b 22 57 22 00 23 41 |WRITE=87| ;"W".#A|
|00001020| 43 54 49 4f 4e 5f 52 45 | 41 44 3d 38 32 20 3b 22 |CTION_RE|AD=82 ;"|
|00001030| 52 22 00 23 41 43 54 49 | 4f 4e 5f 46 52 45 45 5f |R".#ACTI|ON_FREE_|
|00001040| 4c 4f 43 4b 3d 31 35 00 | 23 41 43 54 49 4f 4e 5f |LOCK=15.|#ACTION_|
|00001050| 44 45 4c 45 54 45 5f 4f | 42 4a 45 43 54 3d 31 36 |DELETE_O|BJECT=16|
|00001060| 00 23 41 43 54 49 4f 4e | 5f 52 45 4e 41 4d 45 5f |.#ACTION|_RENAME_|
|00001070| 4f 42 4a 45 43 54 3d 31 | 37 00 23 41 43 54 49 4f |OBJECT=1|7.#ACTIO|
|00001080| 4e 5f 4d 4f 52 45 5f 43 | 41 43 48 45 3d 31 38 00 |N_MORE_C|ACHE=18.|
|00001090| 23 41 43 54 49 4f 4e 5f | 43 4f 50 59 5f 44 49 52 |#ACTION_|COPY_DIR|
|000010a0| 3d 31 39 00 23 41 43 54 | 49 4f 4e 5f 57 41 49 54 |=19.#ACT|ION_WAIT|
|000010b0| 5f 43 48 41 52 3d 32 30 | 00 23 41 43 54 49 4f 4e |_CHAR=20|.#ACTION|
|000010c0| 5f 53 45 54 5f 50 52 4f | 54 45 43 54 3d 32 31 00 |_SET_PRO|TECT=21.|
|000010d0| 23 41 43 54 49 4f 4e 5f | 43 52 45 41 54 45 5f 44 |#ACTION_|CREATE_D|
|000010e0| 49 52 3d 32 32 00 23 41 | 43 54 49 4f 4e 5f 45 58 |IR=22.#A|CTION_EX|
|000010f0| 41 4d 49 4e 45 5f 4f 42 | 4a 45 43 54 3d 32 33 00 |AMINE_OB|JECT=23.|
|00001100| 23 41 43 54 49 4f 4e 5f | 45 58 41 4d 49 4e 45 5f |#ACTION_|EXAMINE_|
|00001110| 4e 45 58 54 3d 32 34 00 | 23 41 43 54 49 4f 4e 5f |NEXT=24.|#ACTION_|
|00001120| 44 49 53 4b 5f 49 4e 46 | 4f 3d 32 35 00 23 41 43 |DISK_INF|O=25.#AC|
|00001130| 54 49 4f 4e 5f 49 4e 46 | 4f 3d 32 36 00 23 41 43 |TION_INF|O=26.#AC|
|00001140| 54 49 4f 4e 5f 46 4c 55 | 53 48 3d 32 37 00 23 41 |TION_FLU|SH=27.#A|
|00001150| 43 54 49 4f 4e 5f 53 45 | 54 5f 43 4f 4d 4d 45 4e |CTION_SE|T_COMMEN|
|00001160| 54 3d 32 38 00 23 41 43 | 54 49 4f 4e 5f 50 41 52 |T=28.#AC|TION_PAR|
|00001170| 45 4e 54 3d 32 39 00 23 | 41 43 54 49 4f 4e 5f 54 |ENT=29.#|ACTION_T|
|00001180| 49 4d 45 52 3d 33 30 00 | 23 41 43 54 49 4f 4e 5f |IMER=30.|#ACTION_|
|00001190| 49 4e 48 49 42 49 54 3d | 33 31 00 23 41 43 54 49 |INHIBIT=|31.#ACTI|
|000011a0| 4f 4e 5f 44 49 53 4b 5f | 54 59 50 45 3d 33 32 00 |ON_DISK_|TYPE=32.|
|000011b0| 23 41 43 54 49 4f 4e 5f | 44 49 53 4b 5f 43 48 41 |#ACTION_|DISK_CHA|
|000011c0| 4e 47 45 3d 33 33 00 23 | 41 43 54 49 4f 4e 5f 53 |NGE=33.#|ACTION_S|
|000011d0| 45 54 5f 44 41 54 45 3d | 33 34 00 00 23 41 43 54 |ET_DATE=|34..#ACT|
|000011e0| 49 4f 4e 5f 53 43 52 45 | 45 4e 5f 4d 4f 44 45 3d |ION_SCRE|EN_MODE=|
|000011f0| 39 39 34 00 00 23 41 43 | 54 49 4f 4e 5f 52 45 41 |994..#AC|TION_REA|
|00001200| 44 5f 52 45 54 55 52 4e | 3d 31 30 30 31 00 23 41 |D_RETURN|=1001.#A|
|00001210| 43 54 49 4f 4e 5f 57 52 | 49 54 45 5f 52 45 54 55 |CTION_WR|ITE_RETU|
|00001220| 52 4e 3d 31 30 30 32 00 | 23 41 43 54 49 4f 4e 5f |RN=1002.|#ACTION_|
|00001230| 53 45 45 4b 3d 31 30 30 | 38 00 23 41 43 54 49 4f |SEEK=100|8.#ACTIO|
|00001240| 4e 5f 46 49 4e 44 55 50 | 44 41 54 45 3d 31 30 30 |N_FINDUP|DATE=100|
|00001250| 34 00 23 41 43 54 49 4f | 4e 5f 46 49 4e 44 49 4e |4.#ACTIO|N_FINDIN|
|00001260| 50 55 54 3d 31 30 30 35 | 00 23 41 43 54 49 4f 4e |PUT=1005|.#ACTION|
|00001270| 5f 46 49 4e 44 4f 55 54 | 50 55 54 3d 31 30 30 36 |_FINDOUT|PUT=1006|
|00001280| 00 23 41 43 54 49 4f 4e | 5f 45 4e 44 3d 31 30 30 |.#ACTION|_END=100|
|00001290| 37 00 23 41 43 54 49 4f | 4e 5f 53 45 54 5f 46 49 |7.#ACTIO|N_SET_FI|
|000012a0| 4c 45 5f 53 49 5a 45 3d | 31 30 32 32 3b 2f 2a 20 |LE_SIZE=|1022;/* |
|000012b0| 66 61 73 74 20 66 69 6c | 65 20 73 79 73 74 65 6d |fast fil|e system|
|000012c0| 20 6f 6e 6c 79 20 69 6e | 20 31 2e 33 20 2a 2f 00 | only in| 1.3 */.|
|000012d0| 23 41 43 54 49 4f 4e 5f | 57 52 49 54 45 5f 50 52 |#ACTION_|WRITE_PR|
|000012e0| 4f 54 45 43 54 3d 31 30 | 32 33 3b 2f 2a 20 66 61 |OTECT=10|23;/* fa|
|000012f0| 73 74 20 66 69 6c 65 20 | 73 79 73 74 65 6d 20 6f |st file |system o|
|00001300| 6e 6c 79 20 69 6e 20 31 | 2e 33 20 2a 2f 00 00 3b |nly in 1|.3 */..;|
|00001310| 2f 2a 20 6e 65 77 20 32 | 2e 30 20 70 61 63 6b 65 |/* new 2|.0 packe|
|00001320| 74 73 20 2a 2f 00 23 41 | 43 54 49 4f 4e 5f 53 41 |ts */.#A|CTION_SA|
|00001330| 4d 45 5f 4c 4f 43 4b 3d | 34 30 00 23 41 43 54 49 |ME_LOCK=|40.#ACTI|
|00001340| 4f 4e 5f 43 48 41 4e 47 | 45 5f 53 49 47 4e 41 4c |ON_CHANG|E_SIGNAL|
|00001350| 3d 39 39 35 00 23 41 43 | 54 49 4f 4e 5f 46 4f 52 |=995.#AC|TION_FOR|
|00001360| 4d 41 54 3d 31 30 32 30 | 00 23 41 43 54 49 4f 4e |MAT=1020|.#ACTION|
|00001370| 5f 4d 41 4b 45 5f 4c 49 | 4e 4b 3d 31 30 32 31 00 |_MAKE_LI|NK=1021.|
|00001380| 3b 2f 2a 2a 2f 00 3b 2f | 2a 2a 2f 00 23 41 43 54 |;/**/.;/|**/.#ACT|
|00001390| 49 4f 4e 5f 52 45 41 44 | 5f 4c 49 4e 4b 3d 31 30 |ION_READ|_LINK=10|
|000013a0| 32 34 00 23 41 43 54 49 | 4f 4e 5f 46 48 5f 46 52 |24.#ACTI|ON_FH_FR|
|000013b0| 4f 4d 5f 4c 4f 43 4b 3d | 31 30 32 36 00 23 41 43 |OM_LOCK=|1026.#AC|
|000013c0| 54 49 4f 4e 5f 49 53 5f | 46 49 4c 45 53 59 53 54 |TION_IS_|FILESYST|
|000013d0| 45 4d 3d 31 30 32 37 00 | 23 41 43 54 49 4f 4e 5f |EM=1027.|#ACTION_|
|000013e0| 43 48 41 4e 47 45 5f 4d | 4f 44 45 3d 31 30 32 38 |CHANGE_M|ODE=1028|
|000013f0| 00 3b 2f 2a 2a 2f 00 23 | 41 43 54 49 4f 4e 5f 43 |.;/**/.#|ACTION_C|
|00001400| 4f 50 59 5f 44 49 52 5f | 46 48 3d 31 30 33 30 00 |OPY_DIR_|FH=1030.|
|00001410| 23 41 43 54 49 4f 4e 5f | 50 41 52 45 4e 54 5f 46 |#ACTION_|PARENT_F|
|00001420| 48 3d 31 30 33 31 00 23 | 41 43 54 49 4f 4e 5f 45 |H=1031.#|ACTION_E|
|00001430| 58 41 4d 49 4e 45 5f 41 | 4c 4c 3d 31 30 33 33 00 |XAMINE_A|LL=1033.|
|00001440| 23 41 43 54 49 4f 4e 5f | 45 58 41 4d 49 4e 45 5f |#ACTION_|EXAMINE_|
|00001450| 46 48 3d 31 30 33 34 00 | 00 23 41 43 54 49 4f 4e |FH=1034.|.#ACTION|
|00001460| 5f 4c 4f 43 4b 5f 52 45 | 43 4f 52 44 3d 32 30 30 |_LOCK_RE|CORD=200|
|00001470| 38 00 23 41 43 54 49 4f | 4e 5f 46 52 45 45 5f 52 |8.#ACTIO|N_FREE_R|
|00001480| 45 43 4f 52 44 3d 32 30 | 30 39 00 00 23 41 43 54 |ECORD=20|09..#ACT|
|00001490| 49 4f 4e 5f 41 44 44 5f | 4e 4f 54 49 46 59 3d 34 |ION_ADD_|NOTIFY=4|
|000014a0| 30 39 37 00 23 41 43 54 | 49 4f 4e 5f 52 45 4d 4f |097.#ACT|ION_REMO|
|000014b0| 56 45 5f 4e 4f 54 49 46 | 59 3d 34 30 39 38 00 00 |VE_NOTIF|Y=4098..|
|000014c0| 3b 2f 2a 20 41 64 64 65 | 64 20 69 6e 20 56 33 39 |;/* Adde|d in V39|
|000014d0| 3a 20 2a 2f 00 23 41 43 | 54 49 4f 4e 5f 45 58 41 |: */.#AC|TION_EXA|
|000014e0| 4d 49 4e 45 5f 41 4c 4c | 5f 45 4e 44 3d 31 30 33 |MINE_ALL|_END=103|
|000014f0| 35 00 23 41 43 54 49 4f | 4e 5f 53 45 54 5f 4f 57 |5.#ACTIO|N_SET_OW|
|00001500| 4e 45 52 3d 31 30 33 36 | 00 00 3b 2f 2a 20 54 65 |NER=1036|..;/* Te|
|00001510| 6c 6c 20 61 20 66 69 6c | 65 20 73 79 73 74 65 6d |ll a fil|e system|
|00001520| 20 74 6f 20 73 65 72 69 | 61 6c 69 7a 65 20 74 68 | to seri|alize th|
|00001530| 65 20 63 75 72 72 65 6e | 74 20 76 6f 6c 75 6d 65 |e curren|t volume|
|00001540| 2e 20 54 68 69 73 20 69 | 73 20 74 79 70 69 63 61 |. This i|s typica|
|00001550| 6c 6c 79 00 3b 20 2a 20 | 64 6f 6e 65 20 62 79 20 |lly.; * |done by |
|00001560| 63 68 61 6e 67 69 6e 67 | 20 74 68 65 20 63 72 65 |changing| the cre|
|00001570| 61 74 69 6f 6e 20 64 61 | 74 65 20 6f 66 20 74 68 |ation da|te of th|
|00001580| 65 20 64 69 73 6b 2e 20 | 54 68 69 73 20 70 61 63 |e disk. |This pac|
|00001590| 6b 65 74 20 64 6f 65 73 | 20 6e 6f 74 20 74 61 6b |ket does| not tak|
|000015a0| 65 00 3b 20 2a 20 61 6e | 79 20 61 72 67 75 6d 65 |e.; * an|y argume|
|000015b0| 6e 74 73 2e 20 20 4e 4f | 54 45 3a 20 62 65 20 70 |nts. NO|TE: be p|
|000015c0| 72 65 70 61 72 65 64 20 | 74 6f 20 68 61 6e 64 6c |repared |to handl|
|000015d0| 65 20 66 61 69 6c 75 72 | 65 20 6f 66 20 74 68 69 |e failur|e of thi|
|000015e0| 73 20 70 61 63 6b 65 74 | 20 66 6f 72 00 3b 20 2a |s packet| for.; *|
|000015f0| 20 56 33 37 20 52 4f 4d | 20 66 69 6c 65 73 79 73 | V37 ROM| filesys|
|00001600| 74 65 6d 73 2e 00 3b 20 | 2a 2f 00 23 41 43 54 49 |tems..; |*/.#ACTI|
|00001610| 4f 4e 5f 53 45 52 49 41 | 4c 49 5a 45 5f 44 49 53 |ON_SERIA|LIZE_DIS|
|00001620| 4b 3d 34 32 30 30 00 00 | 3b 2f 2a 00 3b 20 2a 20 |K=4200..|;/*.; * |
|00001630| 41 20 73 74 72 75 63 74 | 75 72 65 20 66 6f 72 20 |A struct|ure for |
|00001640| 68 6f 6c 64 69 6e 67 20 | 65 72 72 6f 72 20 6d 65 |holding |error me|
|00001650| 73 73 61 67 65 73 20 2d | 20 73 74 6f 72 65 64 20 |ssages -| stored |
|00001660| 61 73 20 61 72 72 61 79 | 20 77 69 74 68 20 65 72 |as array| with er|
|00001670| 72 6f 72 20 3d 3d 20 30 | 00 3b 20 2a 20 66 6f 72 |ror == 0|.; * for|
|00001680| 20 74 68 65 20 6c 61 73 | 74 20 65 6e 74 72 79 2e | the las|t entry.|
|00001690| 00 3b 20 2a 2f 00 80 01 | 2e 45 72 72 6f 72 53 74 |.; */...|.ErrorSt|
|000016a0| 72 69 6e 67 00 2a 65 73 | 74 72 5f 4e 75 6d 73 2e |ring.*es|tr_Nums.|
|000016b0| 6c 00 2a 65 73 74 72 5f | 53 74 72 69 6e 67 73 2e |l.*estr_|Strings.|
|000016c0| 62 00 00 80 02 20 80 01 | 00 00 3b 2f 2a 20 44 4f |b.... ..|..;/* DO|
|000016d0| 53 20 6c 69 62 72 61 72 | 79 20 6e 6f 64 65 20 73 |S librar|y node s|
|000016e0| 74 72 75 63 74 75 72 65 | 2e 00 3b 20 2a 20 54 68 |tructure|..; * Th|
|000016f0| 69 73 20 69 73 20 74 68 | 65 20 64 61 74 61 20 61 |is is th|e data a|
|00001700| 74 20 70 6f 73 69 74 69 | 76 65 20 6f 66 66 73 65 |t positi|ve offse|
|00001710| 74 73 20 66 72 6f 6d 20 | 74 68 65 20 6c 69 62 72 |ts from |the libr|
|00001720| 61 72 79 20 6e 6f 64 65 | 2e 00 3b 20 2a 20 4e 65 |ary node|..; * Ne|
|00001730| 67 61 74 69 76 65 20 6f | 66 66 73 65 74 73 20 66 |gative o|ffsets f|
|00001740| 72 6f 6d 20 74 68 65 20 | 6e 6f 64 65 20 69 73 20 |rom the |node is |
|00001750| 74 68 65 20 6a 75 6d 70 | 20 74 61 62 6c 65 20 74 |the jump| table t|
|00001760| 6f 20 44 4f 53 20 66 75 | 6e 63 74 69 6f 6e 73 00 |o DOS fu|nctions.|
|00001770| 3b 20 2a 20 6e 6f 64 65 | 20 3d 20 28 73 74 72 75 |; * node| = (stru|
|00001780| 63 74 20 44 6f 73 4c 69 | 62 72 61 72 79 20 2a 29 |ct DosLi|brary *)|
|00001790| 20 4f 70 65 6e 4c 69 62 | 72 61 72 79 28 20 22 64 | OpenLib|rary( "d|
|000017a0| 6f 73 2e 6c 69 62 72 61 | 72 79 22 20 2e 2e 20 29 |os.libra|ry" .. )|
|000017b0| 20 20 20 20 20 20 20 2a | 2f 00 00 80 01 2e 44 6f | *|/.....Do|
|000017c0| 73 4c 69 62 72 61 72 79 | 00 64 6c 5f 6c 69 62 2e |sLibrary|.dl_lib.|
|000017d0| 4c 69 62 72 61 72 79 00 | 2a 64 6c 5f 52 6f 6f 74 |Library.|*dl_Root|
|000017e0| 2e 52 6f 6f 74 4e 6f 64 | 65 3b 2f 2a 20 50 6f 69 |.RootNod|e;/* Poi|
|000017f0| 6e 74 65 72 20 74 6f 20 | 52 6f 6f 74 4e 6f 64 65 |nter to |RootNode|
|00001800| 2c 20 64 65 73 63 72 69 | 62 65 64 20 62 65 6c 6f |, descri|bed belo|
|00001810| 77 20 2a 2f 00 2a 64 6c | 5f 47 56 2e 62 20 3b 2f |w */.*dl|_GV.b ;/|
|00001820| 2a 20 50 6f 69 6e 74 65 | 72 20 74 6f 20 42 43 50 |* Pointe|r to BCP|
|00001830| 4c 20 67 6c 6f 62 61 6c | 20 76 65 63 74 6f 72 20 |L global| vector |
|00001840| 20 20 20 20 20 20 2a 2f | 00 64 6c 5f 41 32 2e 6c | */|.dl_A2.l|
|00001850| 20 3b 2f 2a 20 42 43 50 | 4c 20 73 74 61 6e 64 61 | ;/* BCP|L standa|
|00001860| 72 64 20 72 65 67 69 73 | 74 65 72 20 76 61 6c 75 |rd regis|ter valu|
|00001870| 65 73 20 20 20 20 20 20 | 20 2a 2f 00 64 6c 5f 41 |es | */.dl_A|
|00001880| 35 2e 6c 00 64 6c 5f 41 | 36 2e 6c 00 2a 64 6c 5f |5.l.dl_A|6.l.*dl_|
|00001890| 45 72 72 6f 72 73 2e 45 | 72 72 6f 72 53 74 72 69 |Errors.E|rrorStri|
|000018a0| 6e 67 3b 2f 2a 20 50 52 | 49 56 41 54 45 20 70 6f |ng;/* PR|IVATE po|
|000018b0| 69 6e 74 65 72 20 74 6f | 20 61 72 72 61 79 20 6f |inter to| array o|
|000018c0| 66 20 65 72 72 6f 72 20 | 6d 73 67 73 20 2a 2f 00 |f error |msgs */.|
|000018d0| 2a 64 6c 5f 54 69 6d 65 | 52 65 71 2e 6c 20 3b 74 |*dl_Time|Req.l ;t|
|000018e0| 69 6d 65 72 65 71 75 65 | 73 74 3b 2f 2a 20 50 52 |imereque|st;/* PR|
|000018f0| 49 56 41 54 45 20 70 6f | 69 6e 74 65 72 20 74 6f |IVATE po|inter to|
|00001900| 20 74 69 6d 65 72 20 72 | 65 71 75 65 73 74 20 2a | timer r|equest *|
|00001910| 2f 00 2a 64 6c 5f 55 74 | 69 6c 69 74 79 42 61 73 |/.*dl_Ut|ilityBas|
|00001920| 65 2e 4c 69 62 72 61 72 | 79 3b 2f 2a 20 50 52 49 |e.Librar|y;/* PRI|
|00001930| 56 41 54 45 20 70 74 72 | 20 74 6f 20 75 74 69 6c |VATE ptr| to util|
|00001940| 69 74 79 20 6c 69 62 72 | 61 72 79 20 2a 2f 00 2a |ity libr|ary */.*|
|00001950| 64 6c 5f 49 6e 74 75 69 | 74 69 6f 6e 42 61 73 65 |dl_Intui|tionBase|
|00001960| 2e 4c 69 62 72 61 72 79 | 3b 2f 2a 20 50 52 49 56 |.Library|;/* PRIV|
|00001970| 41 54 45 20 70 74 72 20 | 74 6f 20 69 6e 74 75 69 |ATE ptr |to intui|
|00001980| 74 69 6f 6e 20 6c 69 62 | 72 61 72 79 20 2a 2f 00 |tion lib|rary */.|
|00001990| 80 02 20 80 01 00 3b 2f | 2a 20 44 6f 73 4c 69 62 |.. ...;/|* DosLib|
|000019a0| 72 61 72 79 20 2a 2f 00 | 00 3b 2f 2a 20 20 20 20 |rary */.|.;/* |
|000019b0| 20 20 20 20 20 20 2a 2f | 00 00 80 01 2e 52 6f 6f | */|.....Roo|
|000019c0| 74 4e 6f 64 65 00 72 6e | 5f 54 61 73 6b 41 72 72 |tNode.rn|_TaskArr|
|000019d0| 61 79 2e 62 20 3b 2f 2a | 20 5b 30 5d 20 69 73 20 |ay.b ;/*| [0] is |
|000019e0| 6d 61 78 20 6e 75 6d 62 | 65 72 20 6f 66 20 43 4c |max numb|er of CL|
|000019f0| 49 27 73 00 3b 20 20 20 | 20 20 20 20 20 20 20 20 |I's.; | |
|00001a00| 20 20 2a 20 5b 31 5d 20 | 69 73 20 41 50 54 52 20 | * [1] |is APTR |
|00001a10| 74 6f 20 70 72 6f 63 65 | 73 73 20 69 64 20 6f 66 |to proce|ss id of|
|00001a20| 20 43 4c 49 20 31 00 3b | 20 20 20 20 20 20 20 20 | CLI 1.;| |
|00001a30| 20 20 20 20 20 2a 20 5b | 6e 5d 20 69 73 20 41 50 | * [|n] is AP|
|00001a40| 54 52 20 74 6f 20 70 72 | 6f 63 65 73 73 20 69 64 |TR to pr|ocess id|
|00001a50| 20 6f 66 20 43 4c 49 20 | 6e 20 2a 2f 00 2a 72 6e | of CLI |n */.*rn|
|00001a60| 5f 43 6f 6e 73 6f 6c 65 | 53 65 67 6d 65 6e 74 2e |_Console|Segment.|
|00001a70| 62 20 3b 2f 2a 20 53 65 | 67 4c 69 73 74 20 66 6f |b ;/* Se|gList fo|
|00001a80| 72 20 74 68 65 20 43 4c | 49 20 20 20 20 20 20 2a |r the CL|I *|
|00001a90| 2f 00 72 6e 5f 54 69 6d | 65 2e 44 61 74 65 53 74 |/.rn_Tim|e.DateSt|
|00001aa0| 61 6d 70 3b 2f 2a 20 43 | 75 72 72 65 6e 74 20 74 |amp;/* C|urrent t|
|00001ab0| 69 6d 65 20 20 20 20 20 | 20 20 2a 2f 00 72 6e 5f |ime | */.rn_|
|00001ac0| 52 65 73 74 61 72 74 53 | 65 67 2e 6c 20 3b 2f 2a |RestartS|eg.l ;/*|
|00001ad0| 20 53 65 67 4c 69 73 74 | 20 66 6f 72 20 74 68 65 | SegList| for the|
|00001ae0| 20 64 69 73 6b 20 76 61 | 6c 69 64 61 74 6f 72 20 | disk va|lidator |
|00001af0| 70 72 6f 63 65 73 73 20 | 20 20 2a 2f 00 2a 72 6e |process | */.*rn|
|00001b00| 5f 49 6e 66 6f 2e 62 20 | 3b 2f 2a 20 50 6f 69 6e |_Info.b |;/* Poin|
|00001b10| 74 65 72 20 74 6f 20 74 | 68 65 20 49 6e 66 6f 20 |ter to t|he Info |
|00001b20| 73 74 72 75 63 74 75 72 | 65 20 20 20 20 20 2a 2f |structur|e */|
|00001b30| 00 2a 72 6e 5f 46 69 6c | 65 48 61 6e 64 6c 65 72 |.*rn_Fil|eHandler|
|00001b40| 53 65 67 6d 65 6e 74 2e | 62 20 3b 2f 2a 20 73 65 |Segment.|b ;/* se|
|00001b50| 67 6d 65 6e 74 20 66 6f | 72 20 61 20 66 69 6c 65 |gment fo|r a file|
|00001b60| 20 68 61 6e 64 6c 65 72 | 20 20 20 20 2a 2f 00 72 | handler| */.r|
|00001b70| 6e 5f 43 6c 69 4c 69 73 | 74 2e 4d 69 6e 4c 69 73 |n_CliLis|t.MinLis|
|00001b80| 74 3b 2f 2a 20 6e 65 77 | 20 6c 69 73 74 20 6f 66 |t;/* new| list of|
|00001b90| 20 61 6c 6c 20 43 4c 49 | 20 70 72 6f 63 65 73 73 | all CLI| process|
|00001ba0| 65 73 20 2a 2f 00 3b 2f | 2a 20 74 68 65 20 66 69 |es */.;/|* the fi|
|00001bb0| 72 73 74 20 63 70 6c 5f | 41 72 72 61 79 20 69 73 |rst cpl_|Array is|
|00001bc0| 20 61 6c 73 6f 20 72 6e | 5f 54 61 73 6b 41 72 72 | also rn|_TaskArr|
|00001bd0| 61 79 20 2a 2f 00 2a 72 | 6e 5f 42 6f 6f 74 50 72 |ay */.*r|n_BootPr|
|00001be0| 6f 63 2e 4d 73 67 50 6f | 72 74 3b 2f 2a 20 70 72 |oc.MsgPo|rt;/* pr|
|00001bf0| 69 76 61 74 65 20 70 74 | 72 20 74 6f 20 6d 73 67 |ivate pt|r to msg|
|00001c00| 70 6f 72 74 20 6f 66 20 | 62 6f 6f 74 20 66 73 20 |port of |boot fs |
|00001c10| 20 20 20 2a 2f 00 2a 72 | 6e 5f 53 68 65 6c 6c 53 | */.*r|n_ShellS|
|00001c20| 65 67 6d 65 6e 74 2e 62 | 20 3b 2f 2a 20 73 65 67 |egment.b| ;/* seg|
|00001c30| 6c 69 73 74 20 66 6f 72 | 20 53 68 65 6c 6c 20 28 |list for| Shell (|
|00001c40| 66 6f 72 20 4e 65 77 53 | 68 65 6c 6c 29 20 20 20 |for NewS|hell) |
|00001c50| 20 2a 2f 00 72 6e 5f 46 | 6c 61 67 73 2e 6c 20 3b | */.rn_F|lags.l ;|
|00001c60| 2f 2a 20 64 6f 73 20 66 | 6c 61 67 73 20 2a 2f 00 |/* dos f|lags */.|
|00001c70| 80 02 20 80 01 00 3b 2f | 2a 20 52 6f 6f 74 4e 6f |.. ...;/|* RootNo|
|00001c80| 64 65 20 2a 2f 00 00 23 | 52 4e 42 5f 57 49 4c 44 |de */..#|RNB_WILD|
|00001c90| 53 54 41 52 3d 32 34 00 | 23 52 4e 46 5f 57 49 4c |STAR=24.|#RNF_WIL|
|00001ca0| 44 53 54 41 52 3d 28 31 | 80 7c 32 34 29 00 23 52 |DSTAR=(1|.|24).#R|
|00001cb0| 4e 42 5f 50 52 49 56 41 | 54 45 31 3d 31 3b 2f 2a |NB_PRIVA|TE1=1;/*|
|00001cc0| 20 70 72 69 76 61 74 65 | 20 66 6f 72 20 64 6f 73 | private| for dos|
|00001cd0| 20 2a 2f 00 23 52 4e 46 | 5f 50 52 49 56 41 54 45 | */.#RNF|_PRIVATE|
|00001ce0| 31 3d 32 00 00 3b 20 41 | 20 6c 69 74 74 6c 65 20 |1=2..; A| little |
|00001cf0| 74 72 69 63 6b 2e 2e 2e | 20 49 6e 20 74 68 65 20 |trick...| In the |
|00001d00| 73 74 72 75 63 74 75 72 | 20 43 6c 69 50 6f 72 63 |structur| CliPorc|
|00001d10| 4c 69 73 74 20 69 73 20 | 61 20 70 6f 69 6e 74 65 |List is |a pointe|
|00001d20| 72 00 3b 20 74 6f 20 61 | 6e 20 6f 74 68 65 72 20 |r.; to a|n other |
|00001d30| 70 6f 69 6e 74 65 72 20 | 28 2a 2a 63 70 6c 5f 41 |pointer |(**cpl_A|
|00001d40| 72 72 61 79 2e 4d 73 67 | 50 6f 72 74 29 2e 2e 2e |rray.Msg|Port)...|
|00001d50| 00 3b 20 42 6c 69 74 7a | 42 61 73 69 63 20 64 6f |.; Blitz|Basic do|
|00001d60| 6e 27 20 74 20 73 75 70 | 70 6f 72 74 2c 20 73 6f |n' t sup|port, so|
|00001d70| 20 77 65 20 68 61 76 65 | 20 74 6f 20 6d 61 6b 65 | we have| to make|
|00001d80| 20 61 20 6e 65 77 20 4e | 65 77 54 79 70 65 00 3b | a new N|ewType.;|
|00001d90| 20 61 6e 64 20 70 6f 6e | 74 20 74 6f 20 69 74 2e | and pon|t to it.|
|00001da0| 2e 2e 00 00 80 01 2e 63 | 70 6c 5f 41 72 72 61 79 |.......c|pl_Array|
|00001db0| 00 20 20 2a 63 70 6c 5f | 41 72 72 61 79 2e 4d 73 |. *cpl_|Array.Ms|
|00001dc0| 67 50 6f 72 74 00 80 02 | 20 80 01 00 00 3b 2f 2a |gPort...| ....;/*|
|00001dd0| 20 4f 4e 4c 59 20 74 6f | 20 62 65 20 61 6c 6c 6f | ONLY to| be allo|
|00001de0| 63 61 74 65 64 20 62 79 | 20 44 4f 53 21 20 2a 2f |cated by| DOS! */|
|00001df0| 00 80 01 2e 43 6c 69 50 | 72 6f 63 4c 69 73 74 00 |....CliP|rocList.|
|00001e00| 63 70 6c 5f 4e 6f 64 65 | 2e 4d 69 6e 4e 6f 64 65 |cpl_Node|.MinNode|
|00001e10| 00 63 70 6c 5f 46 69 72 | 73 74 2e 6c 20 3b 2f 2a |.cpl_Fir|st.l ;/*|
|00001e20| 20 6e 75 6d 62 65 72 20 | 6f 66 20 66 69 72 73 74 | number |of first|
|00001e30| 20 65 6e 74 72 79 20 69 | 6e 20 61 72 72 61 79 20 | entry i|n array |
|00001e40| 2a 2f 00 2a 63 70 6c 5f | 41 72 72 61 79 2e 63 70 |*/.*cpl_|Array.cp|
|00001e50| 6c 5f 41 72 72 61 79 20 | 3b 20 68 6d 2c 20 62 75 |l_Array |; hm, bu|
|00001e60| 74 20 69 74 20 77 6f 72 | 6b 73 2e 2e 2e 00 3b 2f |t it wor|ks....;/|
|00001e70| 2a 20 5b 30 5d 20 69 73 | 20 6d 61 78 20 6e 75 6d |* [0] is| max num|
|00001e80| 62 65 72 20 6f 66 20 43 | 4c 49 27 73 20 69 6e 20 |ber of C|LI's in |
|00001e90| 74 68 69 73 20 65 6e 74 | 72 79 20 28 6e 29 00 3b |this ent|ry (n).;|
|00001ea0| 20 20 20 20 20 20 20 20 | 20 20 20 2a 20 5b 31 5d | | * [1]|
|00001eb0| 20 69 73 20 43 50 54 52 | 20 74 6f 20 70 72 6f 63 | is CPTR| to proc|
|00001ec0| 65 73 73 20 69 64 20 6f | 66 20 43 4c 49 20 63 70 |ess id o|f CLI cp|
|00001ed0| 6c 5f 46 69 72 73 74 00 | 3b 20 20 20 20 20 20 20 |l_First.|; |
|00001ee0| 20 20 20 20 2a 20 5b 6e | 5d 20 69 73 20 43 50 54 | * [n|] is CPT|
|00001ef0| 52 20 74 6f 20 70 72 6f | 63 65 73 73 20 69 64 20 |R to pro|cess id |
|00001f00| 6f 66 20 43 4c 49 20 63 | 70 6c 5f 46 69 72 73 74 |of CLI c|pl_First|
|00001f10| 2b 6e 2d 31 00 3b 20 20 | 20 20 20 20 20 20 20 20 |+n-1.; | |
|00001f20| 20 2a 2f 00 00 80 02 20 | 80 01 00 00 80 01 2e 44 | */.... |.......D|
|00001f30| 6f 73 49 6e 66 6f 00 2a | 64 69 5f 4d 63 4e 61 6d |osInfo.*|di_McNam|
|00001f40| 65 2e 62 20 3b 2f 2a 20 | 50 52 49 56 41 54 45 3a |e.b ;/* |PRIVATE:|
|00001f50| 20 73 79 73 74 65 6d 20 | 72 65 73 69 64 65 6e 74 | system |resident|
|00001f60| 20 6d 6f 64 75 6c 65 20 | 6c 69 73 74 20 20 20 20 | module |list |
|00001f70| 20 2a 2f 00 3b 23 64 69 | 5f 52 65 73 4c 69 73 74 | */.;#di|_ResList|
|00001f80| 3d 23 64 69 5f 4d 63 4e | 61 6d 65 00 2a 64 69 5f |=#di_McN|ame.*di_|
|00001f90| 44 65 76 49 6e 66 6f 2e | 62 20 3b 2f 2a 20 44 65 |DevInfo.|b ;/* De|
|00001fa0| 76 69 63 65 20 4c 69 73 | 74 20 20 20 20 20 20 20 |vice Lis|t |
|00001fb0| 20 2a 2f 00 2a 64 69 5f | 44 65 76 69 63 65 73 2e | */.*di_|Devices.|
|00001fc0| 62 20 3b 2f 2a 20 43 75 | 72 72 65 6e 74 6c 79 20 |b ;/* Cu|rrently |
|00001fd0| 7a 65 72 6f 20 20 20 20 | 20 20 20 2a 2f 00 2a 64 |zero | */.*d|
|00001fe0| 69 5f 48 61 6e 64 6c 65 | 72 73 2e 62 20 3b 2f 2a |i_Handle|rs.b ;/*|
|00001ff0| 20 43 75 72 72 65 6e 74 | 6c 79 20 7a 65 72 6f 20 | Current|ly zero |
|00002000| 20 20 20 20 20 20 2a 2f | 00 2a 64 69 5f 4e 65 74 | */|.*di_Net|
|00002010| 48 61 6e 64 2e 62 20 3b | 2f 2a 20 4e 65 74 77 6f |Hand.b ;|/* Netwo|
|00002020| 72 6b 20 68 61 6e 64 6c | 65 72 20 70 72 6f 63 65 |rk handl|er proce|
|00002030| 73 73 69 64 3b 20 63 75 | 72 72 65 6e 74 6c 79 20 |ssid; cu|rrently |
|00002040| 7a 65 72 6f 20 2a 2f 00 | 64 69 5f 44 65 76 4c 6f |zero */.|di_DevLo|
|00002050| 63 6b 2e 53 69 67 6e 61 | 6c 53 65 6d 61 70 68 6f |ck.Signa|lSemapho|
|00002060| 72 65 3b 2f 2a 20 64 6f | 20 4e 4f 54 20 61 63 63 |re;/* do| NOT acc|
|00002070| 65 73 73 20 64 69 72 65 | 63 74 6c 79 21 20 2a 2f |ess dire|ctly! */|
|00002080| 00 64 69 5f 45 6e 74 72 | 79 4c 6f 63 6b 2e 53 69 |.di_Entr|yLock.Si|
|00002090| 67 6e 61 6c 53 65 6d 61 | 70 68 6f 72 65 3b 2f 2a |gnalSema|phore;/*|
|000020a0| 20 64 6f 20 4e 4f 54 20 | 61 63 63 65 73 73 20 64 | do NOT |access d|
|000020b0| 69 72 65 63 74 6c 79 21 | 20 2a 2f 00 64 69 5f 44 |irectly!| */.di_D|
|000020c0| 65 6c 65 74 65 4c 6f 63 | 6b 2e 53 69 67 6e 61 6c |eleteLoc|k.Signal|
|000020d0| 53 65 6d 61 70 68 6f 72 | 65 3b 2f 2a 20 64 6f 20 |Semaphor|e;/* do |
|000020e0| 4e 4f 54 20 61 63 63 65 | 73 73 20 64 69 72 65 63 |NOT acce|ss direc|
|000020f0| 74 6c 79 21 20 2a 2f 00 | 80 02 20 80 01 00 3b 2f |tly! */.|.. ...;/|
|00002100| 2a 20 44 6f 73 49 6e 66 | 6f 20 2a 2f 00 00 3b 2f |* DosInf|o */..;/|
|00002110| 2a 20 73 74 72 75 63 74 | 75 72 65 20 66 6f 72 20 |* struct|ure for |
|00002120| 74 68 65 20 44 6f 73 20 | 72 65 73 69 64 65 6e 74 |the Dos |resident|
|00002130| 20 6c 69 73 74 2e 20 20 | 44 6f 20 4e 4f 54 20 61 | list. |Do NOT a|
|00002140| 6c 6c 6f 63 61 74 65 20 | 74 68 65 73 65 2c 20 75 |llocate |these, u|
|00002150| 73 65 20 20 20 2a 2f 00 | 3b 2f 2a 20 41 64 64 53 |se */.|;/* AddS|
|00002160| 65 67 6d 65 6e 74 28 29 | 2c 20 61 6e 64 20 68 65 |egment()|, and he|
|00002170| 65 64 20 74 68 65 20 77 | 61 72 6e 69 6e 67 73 20 |ed the w|arnings |
|00002180| 69 6e 20 74 68 65 20 61 | 75 74 6f 64 6f 63 73 21 |in the a|utodocs!|
|00002190| 20 20 20 20 20 2a 2f 00 | 00 80 01 2e 53 65 67 6d | */.|....Segm|
|000021a0| 65 6e 74 00 2a 73 65 67 | 5f 4e 65 78 74 2e 62 00 |ent.*seg|_Next.b.|
|000021b0| 73 65 67 5f 55 43 2e 6c | 00 2a 73 65 67 5f 53 65 |seg_UC.l|.*seg_Se|
|000021c0| 67 2e 62 00 73 65 67 5f | 4e 61 6d 65 2e 62 5b 34 |g.b.seg_|Name.b[4|
|000021d0| 5d 20 3b 20 2f 2a 20 61 | 63 74 75 61 6c 6c 79 20 |] ; /* a|ctually |
|000021e0| 74 68 65 20 66 69 72 73 | 74 20 34 20 63 68 61 72 |the firs|t 4 char|
|000021f0| 73 20 6f 66 20 42 53 54 | 52 20 6e 61 6d 65 20 2a |s of BST|R name *|
|00002200| 2f 00 80 02 20 80 01 00 | 00 23 43 4d 44 5f 53 59 |/... ...|.#CMD_SY|
|00002210| 53 54 45 4d 3d 2d 31 00 | 23 43 4d 44 5f 49 4e 54 |STEM=-1.|#CMD_INT|
|00002220| 45 52 4e 41 4c 3d 2d 32 | 00 23 43 4d 44 5f 44 49 |ERNAL=-2|.#CMD_DI|
|00002230| 53 41 42 4c 45 44 3d 2d | 39 39 39 00 00 00 3b 2f |SABLED=-|999...;/|
|00002240| 2a 20 44 4f 53 20 50 72 | 6f 63 65 73 73 65 73 20 |* DOS Pr|ocesses |
|00002250| 73 74 61 72 74 65 64 20 | 66 72 6f 6d 20 74 68 65 |started |from the|
|00002260| 20 43 4c 49 20 76 69 61 | 20 52 55 4e 20 6f 72 20 | CLI via| RUN or |
|00002270| 4e 45 57 43 4c 49 20 68 | 61 76 65 20 74 68 69 73 |NEWCLI h|ave this|
|00002280| 20 61 64 64 69 74 69 6f | 6e 61 6c 00 3b 20 2a 20 | additio|nal.; * |
|00002290| 73 65 74 20 74 6f 20 64 | 61 74 61 20 61 73 73 6f |set to d|ata asso|
|000022a0| 63 69 61 74 65 64 20 77 | 69 74 68 20 74 68 65 6d |ciated w|ith them|
|000022b0| 20 2a 2f 00 00 80 01 2e | 43 6f 6d 6d 61 6e 64 4c | */.....|CommandL|
|000022c0| 69 6e 65 49 6e 74 65 72 | 66 61 63 65 00 63 6c 69 |ineInter|face.cli|
|000022d0| 5f 52 65 73 75 6c 74 32 | 2e 6c 20 3b 2f 2a 20 56 |_Result2|.l ;/* V|
|000022e0| 61 6c 75 65 20 6f 66 20 | 49 6f 45 72 72 20 66 72 |alue of |IoErr fr|
|000022f0| 6f 6d 20 6c 61 73 74 20 | 63 6f 6d 6d 61 6e 64 20 |om last |command |
|00002300| 20 20 2a 2f 00 2a 63 6c | 69 5f 53 65 74 4e 61 6d | */.*cl|i_SetNam|
|00002310| 65 2e 62 20 3b 2f 2a 20 | 4e 61 6d 65 20 6f 66 20 |e.b ;/* |Name of |
|00002320| 63 75 72 72 65 6e 74 20 | 64 69 72 65 63 74 6f 72 |current |director|
|00002330| 79 20 20 20 20 2a 2f 00 | 2a 63 6c 69 5f 43 6f 6d |y */.|*cli_Com|
|00002340| 6d 61 6e 64 44 69 72 2e | 62 20 3b 2f 2a 20 48 65 |mandDir.|b ;/* He|
|00002350| 61 64 20 6f 66 20 74 68 | 65 20 70 61 74 68 20 6c |ad of th|e path l|
|00002360| 6f 63 6b 6c 69 73 74 20 | 20 20 20 2a 2f 00 63 6c |ocklist | */.cl|
|00002370| 69 5f 52 65 74 75 72 6e | 43 6f 64 65 2e 6c 20 3b |i_Return|Code.l ;|
|00002380| 2f 2a 20 52 65 74 75 72 | 6e 20 63 6f 64 65 20 66 |/* Retur|n code f|
|00002390| 72 6f 6d 20 6c 61 73 74 | 20 63 6f 6d 6d 61 6e 64 |rom last| command|
|000023a0| 20 20 20 20 2a 2f 00 2a | 63 6c 69 5f 43 6f 6d 6d | */.*|cli_Comm|
|000023b0| 61 6e 64 4e 61 6d 65 2e | 62 20 3b 2f 2a 20 4e 61 |andName.|b ;/* Na|
|000023c0| 6d 65 20 6f 66 20 63 75 | 72 72 65 6e 74 20 63 6f |me of cu|rrent co|
|000023d0| 6d 6d 61 6e 64 20 20 20 | 20 2a 2f 00 63 6c 69 5f |mmand | */.cli_|
|000023e0| 46 61 69 6c 4c 65 76 65 | 6c 2e 6c 20 3b 2f 2a 20 |FailLeve|l.l ;/* |
|000023f0| 46 61 69 6c 20 6c 65 76 | 65 6c 20 28 73 65 74 20 |Fail lev|el (set |
|00002400| 62 79 20 46 41 49 4c 41 | 54 29 20 20 20 20 2a 2f |by FAILA|T) */|
|00002410| 00 2a 63 6c 69 5f 50 72 | 6f 6d 70 74 2e 62 20 3b |.*cli_Pr|ompt.b ;|
|00002420| 2f 2a 20 43 75 72 72 65 | 6e 74 20 70 72 6f 6d 70 |/* Curre|nt promp|
|00002430| 74 20 28 73 65 74 20 62 | 79 20 50 52 4f 4d 50 54 |t (set b|y PROMPT|
|00002440| 29 20 20 20 2a 2f 00 2a | 63 6c 69 5f 53 74 61 6e |) */.*|cli_Stan|
|00002450| 64 61 72 64 49 6e 70 75 | 74 2e 62 20 3b 2f 2a 20 |dardInpu|t.b ;/* |
|00002460| 44 65 66 61 75 6c 74 20 | 28 74 65 72 6d 69 6e 61 |Default |(termina|
|00002470| 6c 29 20 43 4c 49 20 69 | 6e 70 75 74 20 20 20 20 |l) CLI i|nput |
|00002480| 2a 2f 00 2a 63 6c 69 5f | 43 75 72 72 65 6e 74 49 |*/.*cli_|CurrentI|
|00002490| 6e 70 75 74 2e 62 20 3b | 2f 2a 20 43 75 72 72 65 |nput.b ;|/* Curre|
|000024a0| 6e 74 20 43 4c 49 20 69 | 6e 70 75 74 20 20 20 20 |nt CLI i|nput |
|000024b0| 20 2a 2f 00 2a 63 6c 69 | 5f 43 6f 6d 6d 61 6e 64 | */.*cli|_Command|
|000024c0| 46 69 6c 65 2e 62 20 3b | 2f 2a 20 4e 61 6d 65 20 |File.b ;|/* Name |
|000024d0| 6f 66 20 45 58 45 43 55 | 54 45 20 63 6f 6d 6d 61 |of EXECU|TE comma|
|000024e0| 6e 64 20 66 69 6c 65 20 | 20 20 20 2a 2f 00 63 6c |nd file | */.cl|
|000024f0| 69 5f 49 6e 74 65 72 61 | 63 74 69 76 65 2e 6c 20 |i_Intera|ctive.l |
|00002500| 3b 2f 2a 20 42 6f 6f 6c | 65 61 6e 3b 20 54 72 75 |;/* Bool|ean; Tru|
|00002510| 65 20 69 66 20 70 72 6f | 6d 70 74 73 20 72 65 71 |e if pro|mpts req|
|00002520| 75 69 72 65 64 20 20 20 | 2a 2f 00 63 6c 69 5f 42 |uired |*/.cli_B|
|00002530| 61 63 6b 67 72 6f 75 6e | 64 2e 6c 20 3b 2f 2a 20 |ackgroun|d.l ;/* |
|00002540| 42 6f 6f 6c 65 61 6e 3b | 20 54 72 75 65 20 69 66 |Boolean;| True if|
|00002550| 20 43 4c 49 20 63 72 65 | 61 74 65 64 20 62 79 20 | CLI cre|ated by |
|00002560| 52 55 4e 20 20 20 2a 2f | 00 2a 63 6c 69 5f 43 75 |RUN */|.*cli_Cu|
|00002570| 72 72 65 6e 74 4f 75 74 | 70 75 74 2e 62 20 3b 2f |rrentOut|put.b ;/|
|00002580| 2a 20 43 75 72 72 65 6e | 74 20 43 4c 49 20 6f 75 |* Curren|t CLI ou|
|00002590| 74 70 75 74 20 20 20 20 | 20 2a 2f 00 63 6c 69 5f |tput | */.cli_|
|000025a0| 44 65 66 61 75 6c 74 53 | 74 61 63 6b 2e 6c 20 3b |DefaultS|tack.l ;|
|000025b0| 2f 2a 20 53 74 61 63 6b | 20 73 69 7a 65 20 74 6f |/* Stack| size to|
|000025c0| 20 62 65 20 6f 62 74 61 | 69 6e 65 64 20 69 6e 20 | be obta|ined in |
|000025d0| 6c 6f 6e 67 20 77 6f 72 | 64 73 20 2a 2f 00 2a 63 |long wor|ds */.*c|
|000025e0| 6c 69 5f 53 74 61 6e 64 | 61 72 64 4f 75 74 70 75 |li_Stand|ardOutpu|
|000025f0| 74 2e 62 20 3b 2f 2a 20 | 44 65 66 61 75 6c 74 20 |t.b ;/* |Default |
|00002600| 28 74 65 72 6d 69 6e 61 | 6c 29 20 43 4c 49 20 6f |(termina|l) CLI o|
|00002610| 75 74 70 75 74 20 20 20 | 20 2a 2f 00 2a 63 6c 69 |utput | */.*cli|
|00002620| 5f 4d 6f 64 75 6c 65 2e | 62 20 3b 2f 2a 20 53 65 |_Module.|b ;/* Se|
|00002630| 67 4c 69 73 74 20 6f 66 | 20 63 75 72 72 65 6e 74 |gList of| current|
|00002640| 6c 79 20 6c 6f 61 64 65 | 64 20 63 6f 6d 6d 61 6e |ly loade|d comman|
|00002650| 64 20 20 20 2a 2f 00 80 | 02 20 80 01 00 3b 2f 2a |d */..|. ...;/*|
|00002660| 20 43 6f 6d 6d 61 6e 64 | 4c 69 6e 65 49 6e 74 65 | Command|LineInte|
|00002670| 72 66 61 63 65 20 2a 2f | 00 00 3b 2f 2a 20 54 68 |rface */|..;/* Th|
|00002680| 69 73 20 73 74 72 75 63 | 74 75 72 65 20 63 61 6e |is struc|ture can|
|00002690| 20 74 61 6b 65 20 6f 6e | 20 64 69 66 66 65 72 65 | take on| differe|
|000026a0| 6e 74 20 76 61 6c 75 65 | 73 20 64 65 70 65 6e 64 |nt value|s depend|
|000026b0| 69 6e 67 20 6f 6e 20 77 | 68 65 74 68 65 72 20 69 |ing on w|hether i|
|000026c0| 74 20 69 73 00 3b 20 2a | 20 61 20 64 65 76 69 63 |t is.; *| a devic|
|000026d0| 65 2c 20 61 6e 20 61 73 | 73 69 67 6e 65 64 20 64 |e, an as|signed d|
|000026e0| 69 72 65 63 74 6f 72 79 | 2c 20 6f 72 20 61 20 76 |irectory|, or a v|
|000026f0| 6f 6c 75 6d 65 2e 20 20 | 42 65 6c 6f 77 20 69 73 |olume. |Below is|
|00002700| 20 74 68 65 20 73 74 72 | 75 63 74 75 72 65 00 3b | the str|ucture.;|
|00002710| 20 2a 20 72 65 66 6c 65 | 63 74 69 6e 67 20 76 6f | * refle|cting vo|
|00002720| 6c 75 6d 65 73 20 6f 6e | 6c 79 2e 20 20 46 6f 6c |lumes on|ly. Fol|
|00002730| 6c 6f 77 69 6e 67 20 74 | 68 61 74 20 69 73 20 74 |lowing t|hat is t|
|00002740| 68 65 20 73 74 72 75 63 | 74 75 72 65 20 72 65 70 |he struc|ture rep|
|00002750| 72 65 73 65 6e 74 69 6e | 67 00 3b 20 2a 20 6f 6e |resentin|g.; * on|
|00002760| 6c 79 20 64 65 76 69 63 | 65 73 2e 20 46 6f 6c 6c |ly devic|es. Foll|
|00002770| 6f 77 69 6e 67 20 74 68 | 61 74 20 69 73 20 74 68 |owing th|at is th|
|00002780| 65 20 75 6e 69 6f 6e 65 | 64 20 73 74 72 75 63 74 |e unione|d struct|
|00002790| 75 72 65 20 72 65 70 72 | 65 73 65 6e 74 69 6e 67 |ure repr|esenting|
|000027a0| 20 61 6c 6c 00 3b 20 2a | 20 74 68 65 20 76 61 6c | all.; *| the val|
|000027b0| 75 65 73 00 3b 20 2a 2f | 00 00 3b 2f 2a 20 73 74 |ues.; */|..;/* st|
|000027c0| 72 75 63 74 75 72 65 20 | 72 65 70 72 65 73 65 6e |ructure |represen|
|000027d0| 74 69 6e 67 20 61 20 76 | 6f 6c 75 6d 65 20 2a 2f |ting a v|olume */|
|000027e0| 00 00 80 01 2e 44 65 76 | 69 63 65 4c 69 73 74 00 |.....Dev|iceList.|
|000027f0| 2a 64 6c 5f 4e 65 78 74 | 2e 62 20 3b 2f 2a 20 62 |*dl_Next|.b ;/* b|
|00002800| 70 74 72 20 74 6f 20 6e | 65 78 74 20 64 65 76 69 |ptr to n|ext devi|
|00002810| 63 65 20 6c 69 73 74 20 | 2a 2f 00 64 6c 5f 54 79 |ce list |*/.dl_Ty|
|00002820| 70 65 2e 6c 20 3b 2f 2a | 20 73 65 65 20 44 4c 54 |pe.l ;/*| see DLT|
|00002830| 20 62 65 6c 6f 77 20 2a | 2f 00 2a 64 6c 5f 54 61 | below *|/.*dl_Ta|
|00002840| 73 6b 2e 4d 73 67 50 6f | 72 74 3b 2f 2a 20 70 74 |sk.MsgPo|rt;/* pt|
|00002850| 72 20 74 6f 20 68 61 6e | 64 6c 65 72 20 74 61 73 |r to han|dler tas|
|00002860| 6b 20 2a 2f 00 2a 64 6c | 5f 4c 6f 63 6b 2e 62 20 |k */.*dl|_Lock.b |
|00002870| 3b 2f 2a 20 6e 6f 74 20 | 66 6f 72 20 76 6f 6c 75 |;/* not |for volu|
|00002880| 6d 65 73 20 2a 2f 00 64 | 6c 5f 56 6f 6c 75 6d 65 |mes */.d|l_Volume|
|00002890| 44 61 74 65 2e 44 61 74 | 65 53 74 61 6d 70 3b 2f |Date.Dat|eStamp;/|
|000028a0| 2a 20 63 72 65 61 74 69 | 6f 6e 20 64 61 74 65 20 |* creati|on date |
|000028b0| 2a 2f 00 2a 64 6c 5f 4c | 6f 63 6b 4c 69 73 74 2e |*/.*dl_L|ockList.|
|000028c0| 62 20 3b 2f 2a 20 6f 75 | 74 73 74 61 6e 64 69 6e |b ;/* ou|tstandin|
|000028d0| 67 20 6c 6f 63 6b 73 20 | 2a 2f 00 64 6c 5f 44 69 |g locks |*/.dl_Di|
|000028e0| 73 6b 54 79 70 65 2e 6c | 20 3b 2f 2a 20 27 44 4f |skType.l| ;/* 'DO|
|000028f0| 53 27 2c 20 65 74 63 20 | 2a 2f 00 64 6c 5f 75 6e |S', etc |*/.dl_un|
|00002900| 75 73 65 64 2e 6c 00 2a | 64 6c 5f 4e 61 6d 65 2e |used.l.*|dl_Name.|
|00002910| 62 20 3b 2f 2a 20 62 70 | 74 72 20 74 6f 20 62 63 |b ;/* bp|tr to bc|
|00002920| 70 6c 20 6e 61 6d 65 20 | 2a 2f 00 80 02 20 80 01 |pl name |*/... ..|
|00002930| 00 00 3b 2f 2a 20 64 65 | 76 69 63 65 20 73 74 72 |..;/* de|vice str|
|00002940| 75 63 74 75 72 65 20 28 | 73 61 6d 65 20 61 73 20 |ucture (|same as |
|00002950| 74 68 65 20 44 65 76 69 | 63 65 4e 6f 64 65 20 73 |the Devi|ceNode s|
|00002960| 74 72 75 63 74 75 72 65 | 20 69 6e 20 66 69 6c 65 |tructure| in file|
|00002970| 68 61 6e 64 6c 65 72 2e | 68 29 20 2a 2f 00 00 80 |handler.|h) */...|
|00002980| 01 2e 44 65 76 49 6e 66 | 6f 00 2a 64 76 69 5f 4e |..DevInf|o.*dvi_N|
|00002990| 65 78 74 2e 62 00 64 76 | 69 5f 54 79 70 65 2e 6c |ext.b.dv|i_Type.l|
|000029a0| 00 2a 64 76 69 5f 54 61 | 73 6b 2e 62 00 2a 64 76 |.*dvi_Ta|sk.b.*dv|
|000029b0| 69 5f 4c 6f 63 6b 2e 62 | 00 2a 64 76 69 5f 48 61 |i_Lock.b|.*dvi_Ha|
|000029c0| 6e 64 6c 65 72 2e 62 00 | 64 76 69 5f 53 74 61 63 |ndler.b.|dvi_Stac|
|000029d0| 6b 53 69 7a 65 2e 6c 00 | 64 76 69 5f 50 72 69 6f |kSize.l.|dvi_Prio|
|000029e0| 72 69 74 79 2e 6c 00 64 | 76 69 5f 53 74 61 72 74 |rity.l.d|vi_Start|
|000029f0| 75 70 2e 6c 00 2a 64 76 | 69 5f 53 65 67 4c 69 73 |up.l.*dv|i_SegLis|
|00002a00| 74 2e 62 00 2a 64 76 69 | 5f 47 6c 6f 62 56 65 63 |t.b.*dvi|_GlobVec|
|00002a10| 2e 62 00 2a 64 76 69 5f | 4e 61 6d 65 2e 62 00 80 |.b.*dvi_|Name.b..|
|00002a20| 02 20 80 01 00 00 3b 2f | 2a 20 63 6f 6d 62 69 6e |. ....;/|* combin|
|00002a30| 65 64 20 73 74 72 75 63 | 74 75 72 65 20 66 6f 72 |ed struc|ture for|
|00002a40| 20 64 65 76 69 63 65 73 | 2c 20 61 73 73 69 67 6e | devices|, assign|
|00002a50| 65 64 20 64 69 72 65 63 | 74 6f 72 69 65 73 2c 20 |ed direc|tories, |
|00002a60| 76 6f 6c 75 6d 65 73 20 | 2a 2f 00 00 80 01 2e 64 |volumes |*/.....d|
|00002a70| 6f 6c 5f 48 61 6e 64 6c | 65 72 5f 55 6e 69 6f 6e |ol_Handl|er_Union|
|00002a80| 00 20 20 2a 64 6f 6c 5f | 48 61 6e 64 6c 65 72 2e |. *dol_|Handler.|
|00002a90| 62 20 3b 2f 2a 20 66 69 | 6c 65 20 6e 61 6d 65 20 |b ;/* fi|le name |
|00002aa0| 74 6f 20 6c 6f 61 64 20 | 69 66 20 73 65 67 6c 69 |to load |if segli|
|00002ab0| 73 74 20 69 73 20 6e 75 | 6c 6c 20 2a 2f 00 20 20 |st is nu|ll */. |
|00002ac0| 64 6f 6c 5f 53 74 61 63 | 6b 53 69 7a 65 2e 6c 20 |dol_Stac|kSize.l |
|00002ad0| 3b 2f 2a 20 73 74 61 63 | 6b 73 69 7a 65 20 74 6f |;/* stac|ksize to|
|00002ae0| 20 75 73 65 20 77 68 65 | 6e 20 73 74 61 72 74 69 | use whe|n starti|
|00002af0| 6e 67 20 70 72 6f 63 65 | 73 73 20 2a 2f 00 20 20 |ng proce|ss */. |
|00002b00| 64 6f 6c 5f 50 72 69 6f | 72 69 74 79 2e 6c 20 3b |dol_Prio|rity.l ;|
|00002b10| 2f 2a 20 74 61 73 6b 20 | 70 72 69 6f 72 69 74 79 |/* task |priority|
|00002b20| 20 77 68 65 6e 20 73 74 | 61 72 74 69 6e 67 20 70 | when st|arting p|
|00002b30| 72 6f 63 65 73 73 20 2a | 2f 00 20 20 64 6f 6c 5f |rocess *|/. dol_|
|00002b40| 53 74 61 72 74 75 70 2e | 6c 20 3b 2f 2a 20 73 74 |Startup.|l ;/* st|
|00002b50| 61 72 74 75 70 20 6d 73 | 67 3a 20 46 69 6c 65 53 |artup ms|g: FileS|
|00002b60| 79 73 53 74 61 72 74 75 | 70 4d 73 67 20 66 6f 72 |ysStartu|pMsg for|
|00002b70| 20 64 69 73 6b 73 20 2a | 2f 00 20 20 2a 64 6f 6c | disks *|/. *dol|
|00002b80| 5f 53 65 67 4c 69 73 74 | 2e 62 20 3b 2f 2a 20 61 |_SegList|.b ;/* a|
|00002b90| 6c 72 65 61 64 79 20 6c | 6f 61 64 65 64 20 63 6f |lready l|oaded co|
|00002ba0| 64 65 20 66 6f 72 20 6e | 65 77 20 74 61 73 6b 20 |de for n|ew task |
|00002bb0| 2a 2f 00 20 20 2a 64 6f | 6c 5f 47 6c 6f 62 56 65 |*/. *do|l_GlobVe|
|00002bc0| 63 2e 62 20 3b 2f 2a 20 | 42 43 50 4c 20 67 6c 6f |c.b ;/* |BCPL glo|
|00002bd0| 62 61 6c 20 76 65 63 74 | 6f 72 20 74 6f 20 75 73 |bal vect|or to us|
|00002be0| 65 20 77 68 65 6e 20 73 | 74 61 72 74 69 6e 67 00 |e when s|tarting.|
|00002bf0| 80 02 20 80 01 00 00 80 | 01 2e 41 73 73 69 67 6e |.. .....|..Assign|
|00002c00| 4c 69 73 74 00 2a 61 6c | 5f 4e 65 78 74 2e 41 73 |List.*al|_Next.As|
|00002c10| 73 69 67 6e 4c 69 73 74 | 00 2a 61 6c 5f 4c 6f 63 |signList|.*al_Loc|
|00002c20| 6b 2e 62 00 80 02 20 80 | 01 00 00 80 01 2e 64 6f |k.b... .|......do|
|00002c30| 6c 5f 56 6f 6c 75 6d 65 | 5f 55 6e 69 6f 6e 00 20 |l_Volume|_Union. |
|00002c40| 20 64 6f 6c 5f 56 6f 6c | 75 6d 65 44 61 74 65 2e | dol_Vol|umeDate.|
|00002c50| 44 61 74 65 53 74 61 6d | 70 3b 2f 2a 20 63 72 65 |DateStam|p;/* cre|
|00002c60| 61 74 69 6f 6e 20 64 61 | 74 65 20 2a 2f 00 20 20 |ation da|te */. |
|00002c70| 2a 64 6f 6c 5f 4c 6f 63 | 6b 4c 69 73 74 2e 62 20 |*dol_Loc|kList.b |
|00002c80| 3b 2f 2a 20 6f 75 74 73 | 74 61 6e 64 69 6e 67 20 |;/* outs|tanding |
|00002c90| 6c 6f 63 6b 73 20 2a 2f | 00 20 20 64 6f 6c 5f 44 |locks */|. dol_D|
|00002ca0| 69 73 6b 54 79 70 65 2e | 6c 20 3b 2f 2a 20 27 44 |iskType.|l ;/* 'D|
|00002cb0| 4f 53 27 2c 20 65 74 63 | 20 2a 2f 00 80 02 20 80 |OS', etc| */... .|
|00002cc0| 01 00 00 80 01 2e 64 6f | 6c 5f 41 73 73 69 67 6e |......do|l_Assign|
|00002cd0| 5f 55 6e 69 6f 6e 00 20 | 20 20 2a 64 6f 6c 5f 41 |_Union. | *dol_A|
|00002ce0| 73 73 69 67 6e 4e 61 6d | 65 2e 62 20 3b 20 20 20 |ssignNam|e.b ; |
|00002cf0| 20 20 2f 2a 20 6e 61 6d | 65 20 66 6f 72 20 6e 6f | /* nam|e for no|
|00002d00| 6e 2d 6f 72 2d 6c 61 74 | 65 2d 62 69 6e 64 69 6e |n-or-lat|e-bindin|
|00002d10| 67 20 61 73 73 69 67 6e | 20 2a 2f 00 20 20 20 2a |g assign| */. *|
|00002d20| 64 6f 6c 5f 4c 69 73 74 | 2e 41 73 73 69 67 6e 4c |dol_List|.AssignL|
|00002d30| 69 73 74 20 3b 20 2f 2a | 20 66 6f 72 20 6d 75 6c |ist ; /*| for mul|
|00002d40| 74 69 2d 64 69 72 65 63 | 74 6f 72 79 20 61 73 73 |ti-direc|tory ass|
|00002d50| 69 67 6e 73 20 28 72 65 | 67 75 6c 61 72 29 20 2a |igns (re|gular) *|
|00002d60| 2f 00 80 02 20 80 01 00 | 00 80 01 2e 44 6f 73 4c |/... ...|....DosL|
|00002d70| 69 73 74 55 6e 69 6f 6e | 00 20 20 64 6f 6c 5f 48 |istUnion|. dol_H|
|00002d80| 61 6e 64 6c 65 72 2e 64 | 6f 6c 5f 48 61 6e 64 6c |andler.d|ol_Handl|
|00002d90| 65 72 5f 55 6e 69 6f 6e | 00 20 20 64 6f 6c 5f 56 |er_Union|. dol_V|
|00002da0| 6f 6c 75 6d 65 2e 64 6f | 6c 5f 56 6f 6c 75 6d 65 |olume.do|l_Volume|
|00002db0| 5f 55 6e 69 6f 6e 00 20 | 20 64 6f 6c 5f 41 73 73 |_Union. | dol_Ass|
|00002dc0| 69 67 6e 2e 64 6f 6c 5f | 41 73 73 69 67 6e 5f 55 |ign.dol_|Assign_U|
|00002dd0| 6e 69 6f 6e 00 80 02 20 | 80 01 00 00 80 01 2e 44 |nion... |.......D|
|00002de0| 6f 73 4c 69 73 74 00 20 | 20 2a 64 6f 6c 5f 4e 65 |osList. | *dol_Ne|
|00002df0| 78 74 2e 62 20 3b 2f 2a | 20 62 70 74 72 20 74 6f |xt.b ;/*| bptr to|
|00002e00| 20 6e 65 78 74 20 64 65 | 76 69 63 65 20 6f 6e 20 | next de|vice on |
|00002e10| 6c 69 73 74 20 2a 2f 00 | 20 20 64 6f 6c 5f 54 79 |list */.| dol_Ty|
|00002e20| 70 65 2e 6c 20 3b 2f 2a | 20 73 65 65 20 44 4c 54 |pe.l ;/*| see DLT|
|00002e30| 20 62 65 6c 6f 77 20 2a | 2f 00 20 20 2a 64 6f 6c | below *|/. *dol|
|00002e40| 5f 54 61 73 6b 2e 4d 73 | 67 50 6f 72 74 3b 2f 2a |_Task.Ms|gPort;/*|
|00002e50| 20 70 74 72 20 74 6f 20 | 68 61 6e 64 6c 65 72 20 | ptr to |handler |
|00002e60| 74 61 73 6b 20 2a 2f 00 | 20 20 2a 64 6f 6c 5f 4c |task */.| *dol_L|
|00002e70| 6f 63 6b 2e 62 00 20 20 | 44 6f 73 4c 69 73 74 55 |ock.b. |DosListU|
|00002e80| 6e 69 6f 6e 2e 44 6f 73 | 4c 69 73 74 55 6e 69 6f |nion.Dos|ListUnio|
|00002e90| 6e 00 20 20 2a 64 6f 6c | 5f 4e 61 6d 65 2e 62 00 |n. *dol|_Name.b.|
|00002ea0| 80 02 20 80 01 00 00 3b | 2f 2a 20 64 65 66 69 6e |.. ....;|/* defin|
|00002eb0| 69 74 69 6f 6e 73 20 66 | 6f 72 20 64 6c 5f 54 79 |itions f|or dl_Ty|
|00002ec0| 70 65 20 2a 2f 00 23 44 | 4c 54 5f 44 45 56 49 43 |pe */.#D|LT_DEVIC|
|00002ed0| 45 3d 30 00 23 44 4c 54 | 5f 44 49 52 45 43 54 4f |E=0.#DLT|_DIRECTO|
|00002ee0| 52 59 3d 31 3b 2f 2a 20 | 61 73 73 69 67 6e 20 2a |RY=1;/* |assign *|
|00002ef0| 2f 00 23 44 4c 54 5f 56 | 4f 4c 55 4d 45 3d 32 00 |/.#DLT_V|OLUME=2.|
|00002f00| 23 44 4c 54 5f 4c 41 54 | 45 3d 33 3b 2f 2a 20 6c |#DLT_LAT|E=3;/* l|
|00002f10| 61 74 65 2d 62 69 6e 64 | 69 6e 67 20 61 73 73 69 |ate-bind|ing assi|
|00002f20| 67 6e 20 2a 2f 00 23 44 | 4c 54 5f 4e 4f 4e 42 49 |gn */.#D|LT_NONBI|
|00002f30| 4e 44 49 4e 47 3d 34 3b | 2f 2a 20 6e 6f 6e 2d 62 |NDING=4;|/* non-b|
|00002f40| 69 6e 64 69 6e 67 20 61 | 73 73 69 67 6e 20 2a 2f |inding a|ssign */|
|00002f50| 00 23 44 4c 54 5f 50 52 | 49 56 41 54 45 3d 2d 31 |.#DLT_PR|IVATE=-1|
|00002f60| 3b 2f 2a 20 66 6f 72 20 | 69 6e 74 65 72 6e 61 6c |;/* for |internal|
|00002f70| 20 75 73 65 20 6f 6e 6c | 79 20 2a 2f 00 00 3b 2f | use onl|y */..;/|
|00002f80| 2a 20 73 74 72 75 63 74 | 75 72 65 20 72 65 74 75 |* struct|ure retu|
|00002f90| 72 6e 20 62 79 20 47 65 | 74 44 65 76 69 63 65 50 |rn by Ge|tDeviceP|
|00002fa0| 72 6f 63 28 29 20 2a 2f | 00 80 01 2e 44 65 76 50 |roc() */|....DevP|
|00002fb0| 72 6f 63 00 2a 64 76 70 | 5f 50 6f 72 74 2e 4d 73 |roc.*dvp|_Port.Ms|
|00002fc0| 67 50 6f 72 74 00 2a 64 | 76 70 5f 4c 6f 63 6b 2e |gPort.*d|vp_Lock.|
|00002fd0| 62 00 64 76 70 5f 46 6c | 61 67 73 2e 6c 00 2a 64 |b.dvp_Fl|ags.l.*d|
|00002fe0| 76 70 5f 44 65 76 4e 6f | 64 65 2e 44 6f 73 4c 69 |vp_DevNo|de.DosLi|
|00002ff0| 73 74 3b 2f 2a 20 44 4f | 4e 27 54 20 54 4f 55 43 |st;/* DO|N'T TOUC|
|00003000| 48 20 4f 52 20 55 53 45 | 21 20 2a 2f 00 80 02 20 |H OR USE|! */... |
|00003010| 80 01 00 00 3b 2f 2a 20 | 64 65 66 69 6e 69 74 69 |....;/* |definiti|
|00003020| 6f 6e 73 20 66 6f 72 20 | 64 76 70 5f 46 6c 61 67 |ons for |dvp_Flag|
|00003030| 73 20 2a 2f 00 23 44 56 | 50 42 5f 55 4e 4c 4f 43 |s */.#DV|PB_UNLOC|
|00003040| 4b 3d 30 00 23 44 56 50 | 46 5f 55 4e 4c 4f 43 4b |K=0.#DVP|F_UNLOCK|
|00003050| 3d 28 31 80 7c 23 44 56 | 50 42 5f 55 4e 4c 4f 43 |=(1.|#DV|PB_UNLOC|
|00003060| 4b 29 00 23 44 56 50 42 | 5f 41 53 53 49 47 4e 3d |K).#DVPB|_ASSIGN=|
|00003070| 31 00 23 44 56 50 46 5f | 41 53 53 49 47 4e 3d 28 |1.#DVPF_|ASSIGN=(|
|00003080| 31 80 7c 23 44 56 50 42 | 5f 41 53 53 49 47 4e 29 |1.|#DVPB|_ASSIGN)|
|00003090| 00 00 3b 2f 2a 20 46 6c | 61 67 73 20 74 6f 20 62 |..;/* Fl|ags to b|
|000030a0| 65 20 70 61 73 73 65 64 | 20 74 6f 20 4c 6f 63 6b |e passed| to Lock|
|000030b0| 44 6f 73 4c 69 73 74 28 | 29 2c 20 65 74 63 20 2a |DosList(|), etc *|
|000030c0| 2f 00 23 4c 44 42 5f 44 | 45 56 49 43 45 53 3d 32 |/.#LDB_D|EVICES=2|
|000030d0| 00 23 4c 44 46 5f 44 45 | 56 49 43 45 53 3d 28 31 |.#LDF_DE|VICES=(1|
|000030e0| 80 7c 23 4c 44 42 5f 44 | 45 56 49 43 45 53 29 00 |.|#LDB_D|EVICES).|
|000030f0| 23 4c 44 42 5f 56 4f 4c | 55 4d 45 53 3d 33 00 23 |#LDB_VOL|UMES=3.#|
|00003100| 4c 44 46 5f 56 4f 4c 55 | 4d 45 53 3d 28 31 80 7c |LDF_VOLU|MES=(1.||
|00003110| 23 4c 44 42 5f 56 4f 4c | 55 4d 45 53 29 00 23 4c |#LDB_VOL|UMES).#L|
|00003120| 44 42 5f 41 53 53 49 47 | 4e 53 3d 34 00 23 4c 44 |DB_ASSIG|NS=4.#LD|
|00003130| 46 5f 41 53 53 49 47 4e | 53 3d 28 31 80 7c 23 4c |F_ASSIGN|S=(1.|#L|
|00003140| 44 42 5f 41 53 53 49 47 | 4e 53 29 00 23 4c 44 42 |DB_ASSIG|NS).#LDB|
|00003150| 5f 45 4e 54 52 59 3d 35 | 00 23 4c 44 46 5f 45 4e |_ENTRY=5|.#LDF_EN|
|00003160| 54 52 59 3d 28 31 80 7c | 23 4c 44 42 5f 45 4e 54 |TRY=(1.||#LDB_ENT|
|00003170| 52 59 29 00 23 4c 44 42 | 5f 44 45 4c 45 54 45 3d |RY).#LDB|_DELETE=|
|00003180| 36 00 23 4c 44 46 5f 44 | 45 4c 45 54 45 3d 28 31 |6.#LDF_D|ELETE=(1|
|00003190| 80 7c 23 4c 44 42 5f 44 | 45 4c 45 54 45 29 00 00 |.|#LDB_D|ELETE)..|
|000031a0| 3b 2f 2a 20 79 6f 75 20 | 4d 55 53 54 20 73 70 65 |;/* you |MUST spe|
|000031b0| 63 69 66 79 20 6f 6e 65 | 20 6f 66 20 4c 44 46 5f |cify one| of LDF_|
|000031c0| 52 45 41 44 20 6f 72 20 | 4c 44 46 5f 57 52 49 54 |READ or |LDF_WRIT|
|000031d0| 45 20 2a 2f 00 23 4c 44 | 42 5f 52 45 41 44 3d 30 |E */.#LD|B_READ=0|
|000031e0| 00 23 4c 44 46 5f 52 45 | 41 44 3d 28 31 80 7c 23 |.#LDF_RE|AD=(1.|#|
|000031f0| 4c 44 42 5f 52 45 41 44 | 29 00 23 4c 44 42 5f 57 |LDB_READ|).#LDB_W|
|00003200| 52 49 54 45 3d 31 00 23 | 4c 44 46 5f 57 52 49 54 |RITE=1.#|LDF_WRIT|
|00003210| 45 3d 28 31 80 7c 23 4c | 44 42 5f 57 52 49 54 45 |E=(1.|#L|DB_WRITE|
|00003220| 29 00 00 3b 2f 2a 20 61 | 63 74 75 61 6c 6c 79 20 |)..;/* a|ctually |
|00003230| 61 6c 6c 20 62 75 74 20 | 4c 44 46 5f 45 4e 54 52 |all but |LDF_ENTR|
|00003240| 59 20 28 77 68 69 63 68 | 20 69 73 20 75 73 65 64 |Y (which| is used|
|00003250| 20 66 6f 72 20 69 6e 74 | 65 72 6e 61 6c 20 6c 6f | for int|ernal lo|
|00003260| 63 6b 69 6e 67 29 20 2a | 2f 00 23 4c 44 46 5f 41 |cking) *|/.#LDF_A|
|00003270| 4c 4c 3d 28 23 4c 44 46 | 5f 44 45 56 49 43 45 53 |LL=(#LDF|_DEVICES|
|00003280| 7c 23 4c 44 46 5f 56 4f | 4c 55 4d 45 53 7c 23 4c ||#LDF_VO|LUMES|#L|
|00003290| 44 46 5f 41 53 53 49 47 | 4e 53 29 00 00 3b 2f 2a |DF_ASSIG|NS)..;/*|
|000032a0| 20 61 20 6c 6f 63 6b 20 | 73 74 72 75 63 74 75 72 | a lock |structur|
|000032b0| 65 2c 20 61 73 20 72 65 | 74 75 72 6e 65 64 20 62 |e, as re|turned b|
|000032c0| 79 20 4c 6f 63 6b 28 29 | 20 6f 72 20 44 75 70 4c |y Lock()| or DupL|
|000032d0| 6f 63 6b 28 29 20 2a 2f | 00 80 01 2e 46 69 6c 65 |ock() */|....File|
|000032e0| 4c 6f 63 6b 00 2a 66 6c | 5f 4c 69 6e 6b 2e 62 20 |Lock.*fl|_Link.b |
|000032f0| 3b 2f 2a 20 62 63 70 6c | 20 70 6f 69 6e 74 65 72 |;/* bcpl| pointer|
|00003300| 20 74 6f 20 6e 65 78 74 | 20 6c 6f 63 6b 20 2a 2f | to next| lock */|
|00003310| 00 66 6c 5f 4b 65 79 2e | 6c 20 3b 2f 2a 20 64 69 |.fl_Key.|l ;/* di|
|00003320| 73 6b 20 62 6c 6f 63 6b | 20 6e 75 6d 62 65 72 20 |sk block| number |
|00003330| 2a 2f 00 66 6c 5f 41 63 | 63 65 73 73 2e 6c 20 3b |*/.fl_Ac|cess.l ;|
|00003340| 2f 2a 20 65 78 63 6c 75 | 73 69 76 65 20 6f 72 20 |/* exclu|sive or |
|00003350| 73 68 61 72 65 64 20 2a | 2f 00 2a 66 6c 5f 54 61 |shared *|/.*fl_Ta|
|00003360| 73 6b 2e 4d 73 67 50 6f | 72 74 3b 2f 2a 20 68 61 |sk.MsgPo|rt;/* ha|
|00003370| 6e 64 6c 65 72 20 74 61 | 73 6b 27 73 20 70 6f 72 |ndler ta|sk's por|
|00003380| 74 20 2a 2f 00 2a 66 6c | 5f 56 6f 6c 75 6d 65 2e |t */.*fl|_Volume.|
|00003390| 62 20 3b 2f 2a 20 62 70 | 74 72 20 74 6f 20 44 4c |b ;/* bp|tr to DL|
|000033a0| 54 5f 56 4f 4c 55 4d 45 | 20 44 6f 73 4c 69 73 74 |T_VOLUME| DosList|
|000033b0| 20 65 6e 74 72 79 20 2a | 2f 00 80 02 20 80 01 00 | entry *|/... ...|
|000033c0| 00 3b 2f 2a 20 65 72 72 | 6f 72 20 72 65 70 6f 72 |.;/* err|or repor|
|000033d0| 74 20 74 79 70 65 73 20 | 66 6f 72 20 45 72 72 6f |t types |for Erro|
|000033e0| 72 52 65 70 6f 72 74 28 | 29 20 2a 2f 00 23 52 45 |rReport(|) */.#RE|
|000033f0| 50 4f 52 54 5f 53 54 52 | 45 41 4d 3d 30 3b 2f 2a |PORT_STR|EAM=0;/*|
|00003400| 20 61 20 73 74 72 65 61 | 6d 20 2a 2f 00 23 52 45 | a strea|m */.#RE|
|00003410| 50 4f 52 54 5f 54 41 53 | 4b 3d 31 3b 2f 2a 20 61 |PORT_TAS|K=1;/* a|
|00003420| 20 70 72 6f 63 65 73 73 | 20 2d 20 75 6e 75 73 65 | process| - unuse|
|00003430| 64 20 2a 2f 00 23 52 45 | 50 4f 52 54 5f 4c 4f 43 |d */.#RE|PORT_LOC|
|00003440| 4b 3d 32 3b 2f 2a 20 61 | 20 6c 6f 63 6b 20 2a 2f |K=2;/* a| lock */|
|00003450| 00 23 52 45 50 4f 52 54 | 5f 56 4f 4c 55 4d 45 3d |.#REPORT|_VOLUME=|
|00003460| 33 3b 2f 2a 20 61 20 76 | 6f 6c 75 6d 65 20 6e 6f |3;/* a v|olume no|
|00003470| 64 65 20 2a 2f 00 23 52 | 45 50 4f 52 54 5f 49 4e |de */.#R|EPORT_IN|
|00003480| 53 45 52 54 3d 34 3b 2f | 2a 20 70 6c 65 61 73 65 |SERT=4;/|* please|
|00003490| 20 69 6e 73 65 72 74 20 | 76 6f 6c 75 6d 65 20 2a | insert |volume *|
|000034a0| 2f 00 00 3b 2f 2a 20 53 | 70 65 63 69 61 6c 20 65 |/..;/* S|pecial e|
|000034b0| 72 72 6f 72 20 63 6f 64 | 65 73 20 66 6f 72 20 45 |rror cod|es for E|
|000034c0| 72 72 6f 72 52 65 70 6f | 72 74 28 29 20 2a 2f 00 |rrorRepo|rt() */.|
|000034d0| 23 41 42 4f 52 54 5f 44 | 49 53 4b 5f 45 52 52 4f |#ABORT_D|ISK_ERRO|
|000034e0| 52 3d 32 39 36 3b 2f 2a | 20 52 65 61 64 2f 77 72 |R=296;/*| Read/wr|
|000034f0| 69 74 65 20 65 72 72 6f | 72 20 2a 2f 00 23 41 42 |ite erro|r */.#AB|
|00003500| 4f 52 54 5f 42 55 53 59 | 3d 32 38 38 3b 2f 2a 20 |ORT_BUSY|=288;/* |
|00003510| 59 6f 75 20 4d 55 53 54 | 20 72 65 70 6c 61 63 65 |You MUST| replace|
|00003520| 2e 2e 2e 20 2a 2f 00 00 | 3b 2f 2a 20 74 79 70 65 |... */..|;/* type|
|00003530| 73 20 66 6f 72 20 69 6e | 69 74 69 61 6c 20 70 61 |s for in|itial pa|
|00003540| 63 6b 65 74 73 20 74 6f | 20 73 68 65 6c 6c 73 20 |ckets to| shells |
|00003550| 66 72 6f 6d 20 72 75 6e | 2f 6e 65 77 63 6c 69 2f |from run|/newcli/|
|00003560| 65 78 65 63 75 74 65 2f | 73 79 73 74 65 6d 2e 20 |execute/|system. |
|00003570| 2a 2f 00 3b 2f 2a 20 46 | 6f 72 20 73 68 65 6c 6c |*/.;/* F|or shell|
|00003580| 2d 77 72 69 74 65 72 73 | 20 6f 6e 6c 79 20 2a 2f |-writers| only */|
|00003590| 00 23 52 55 4e 5f 45 58 | 45 43 55 54 45 3d 2d 31 |.#RUN_EX|ECUTE=-1|
|000035a0| 00 23 52 55 4e 5f 53 59 | 53 54 45 4d 3d 2d 32 00 |.#RUN_SY|STEM=-2.|
|000035b0| 23 52 55 4e 5f 53 59 53 | 54 45 4d 5f 41 53 59 4e |#RUN_SYS|TEM_ASYN|
|000035c0| 43 48 3d 2d 33 00 00 3b | 2f 2a 20 54 79 70 65 73 |CH=-3..;|/* Types|
|000035d0| 20 66 6f 72 20 66 69 62 | 5f 44 69 72 45 6e 74 72 | for fib|_DirEntr|
|000035e0| 79 54 79 70 65 2e 20 4e | 4f 54 45 20 74 68 61 74 |yType. N|OTE that|
|000035f0| 20 62 6f 74 68 20 55 53 | 45 52 44 49 52 20 61 6e | both US|ERDIR an|
|00003600| 64 20 52 4f 4f 54 20 61 | 72 65 20 20 2a 2f 00 3b |d ROOT a|re */.;|
|00003610| 2f 2a 20 64 69 72 65 63 | 74 6f 72 69 65 73 2c 20 |/* direc|tories, |
|00003620| 61 6e 64 20 74 68 61 74 | 20 64 69 72 65 63 74 6f |and that| directo|
|00003630| 72 79 2f 66 69 6c 65 20 | 63 68 65 63 6b 73 20 73 |ry/file |checks s|
|00003640| 68 6f 75 6c 64 20 75 73 | 65 20 3c 30 20 61 6e 64 |hould us|e <0 and|
|00003650| 20 3e 3d 30 2e 20 20 2a | 2f 00 3b 2f 2a 20 54 68 | >=0. *|/.;/* Th|
|00003660| 69 73 20 69 73 20 6e 6f | 74 20 6e 65 63 65 73 73 |is is no|t necess|
|00003670| 61 72 69 6c 79 20 65 78 | 68 61 75 73 74 69 76 65 |arily ex|haustive|
|00003680| 21 20 53 6f 6d 65 20 68 | 61 6e 64 6c 65 72 73 20 |! Some h|andlers |
|00003690| 6d 61 79 20 75 73 65 20 | 6f 74 68 65 72 20 20 2a |may use |other *|
|000036a0| 2f 00 3b 2f 2a 20 76 61 | 6c 75 65 73 20 61 73 20 |/.;/* va|lues as |
|000036b0| 6e 65 65 64 65 64 2c 20 | 74 68 6f 75 67 68 20 3c |needed, |though <|
|000036c0| 30 20 61 6e 64 20 3e 3d | 30 20 73 68 6f 75 6c 64 |0 and >=|0 should|
|000036d0| 20 72 65 6d 61 69 6e 20 | 61 73 20 73 75 70 70 6f | remain |as suppo|
|000036e0| 72 74 65 64 20 61 73 20 | 20 2a 2f 00 3b 2f 2a 20 |rted as | */.;/* |
|000036f0| 70 6f 73 73 69 62 6c 65 | 2e 20 20 20 20 20 20 20 |possible|. |
|00003700| 20 20 2a 2f 00 23 53 54 | 5f 52 4f 4f 54 3d 31 00 | */.#ST|_ROOT=1.|
|00003710| 23 53 54 5f 55 53 45 52 | 44 49 52 3d 32 00 23 53 |#ST_USER|DIR=2.#S|
|00003720| 54 5f 53 4f 46 54 4c 49 | 4e 4b 3d 33 3b 2f 2a 20 |T_SOFTLI|NK=3;/* |
|00003730| 6c 6f 6f 6b 73 20 6c 69 | 6b 65 20 64 69 72 2c 20 |looks li|ke dir, |
|00003740| 62 75 74 20 6d 61 79 20 | 70 6f 69 6e 74 20 74 6f |but may |point to|
|00003750| 20 61 20 66 69 6c 65 21 | 20 2a 2f 00 23 53 54 5f | a file!| */.#ST_|
|00003760| 4c 49 4e 4b 44 49 52 3d | 34 3b 2f 2a 20 68 61 72 |LINKDIR=|4;/* har|
|00003770| 64 20 6c 69 6e 6b 20 74 | 6f 20 64 69 72 20 2a 2f |d link t|o dir */|
|00003780| 00 23 53 54 5f 46 49 4c | 45 3d 2d 33 3b 2f 2a 20 |.#ST_FIL|E=-3;/* |
|00003790| 6d 75 73 74 20 62 65 20 | 6e 65 67 61 74 69 76 65 |must be |negative|
|000037a0| 20 66 6f 72 20 46 49 42 | 21 20 2a 2f 00 23 53 54 | for FIB|! */.#ST|
|000037b0| 5f 4c 49 4e 4b 46 49 4c | 45 3d 2d 34 3b 2f 2a 20 |_LINKFIL|E=-4;/* |
|000037c0| 68 61 72 64 20 6c 69 6e | 6b 20 74 6f 20 66 69 6c |hard lin|k to fil|
|000037d0| 65 20 2a 2f 00 23 53 54 | 5f 50 49 50 45 46 49 4c |e */.#ST|_PIPEFIL|
|000037e0| 45 3d 2d 35 3b 2f 2a 20 | 66 6f 72 20 70 69 70 65 |E=-5;/* |for pipe|
|000037f0| 73 20 74 68 61 74 20 73 | 75 70 70 6f 72 74 20 45 |s that s|upport E|
|00003800| 78 61 6d 69 6e 65 46 48 | 20 2a 2f 00 |xamineFH| */. |
+--------+-------------------------+-------------------------+--------+--------+