home *** CD-ROM | disk | FTP | other *** search
Unknown | 1994-03-12 | 18.3 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.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 00 00 3b 00 3b 20 2a | 20 42 4f 4f 54 20 42 4c |;..;.; *| BOOT BL|
|00000010| 4f 43 4b 20 43 48 45 43 | 4b 45 52 00 3b 00 3b 20 |OCK CHEC|KER.;.; |
|00000020| 2a 20 56 65 72 73 69 6f | 6e 20 31 2e 30 30 20 20 |* Versio|n 1.00 |
|00000030| 38 2d 33 2d 31 39 39 34 | 00 3b 00 3b 20 2a 20 57 |8-3-1994|.;.; * W|
|00000040| 72 69 74 74 65 6e 20 62 | 79 20 44 43 41 54 00 3b |ritten b|y DCAT.;|
|00000050| 00 3b 20 28 43 29 20 43 | 6f 70 79 72 69 67 68 74 |.; (C) C|opyright|
|00000060| 20 4d 61 72 63 68 20 31 | 39 39 34 00 3b 00 3b 00 | March 1|994.;.;.|
|00000070| 3b 20 2a 20 50 52 4f 43 | 44 55 52 45 53 20 2a 00 |; * PROC|DURES *.|
|00000080| 00 80 33 2e 6c 00 80 33 | 2e 62 20 63 6f 75 6e 74 |..3.l..3|.b count|
|00000090| 2c 64 72 69 76 65 00 00 | 80 04 20 64 65 76 69 63 |,drive..|.. devic|
|000000a0| 65 6c 69 73 74 24 28 35 | 30 29 00 80 04 20 80 b3 |elist$(5|0)... ..|
|000000b0| 20 65 72 72 6f 72 6c 69 | 73 74 24 28 35 30 29 00 | errorli|st$(50).|
|000000c0| 00 3b 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |.; -----|--------|
|000000d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000000f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000100| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 00 3b 20 2a 20 |--------|---.; * |
|00000110| 20 20 20 20 41 4c 4c 4f | 43 41 54 45 20 4d 45 4d | ALLO|CATE MEM|
|00000120| 4f 52 59 20 20 20 20 20 | 2a 00 3b 20 2d 2d 2d 2d |ORY |*.; ----|
|00000130| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000140| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000150| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000160| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000170| 2d 2d 2d 2d 00 80 09 20 | 45 58 45 43 5f 61 6c 6c |----... |EXEC_all|
|00000180| 6f 63 6d 65 6d 20 7b 62 | 79 74 65 73 7d 00 20 20 |ocmem {b|ytes}. |
|00000190| 20 20 20 20 80 09 20 80 | 07 20 fe 97 28 62 79 74 | .. .|. ..(byt|
|000001a0| 65 73 2c 24 31 30 30 30 | 30 29 20 3b 20 3c 2d 2d |es,$1000|0) ; <--|
|000001b0| 2d 20 41 6c 6c 6f 63 61 | 74 65 20 6d 65 6d 20 46 |- Alloca|te mem F|
|000001c0| 6f 72 20 52 65 61 64 2f | 57 72 69 74 65 20 42 75 |or Read/|Write Bu|
|000001d0| 66 66 65 72 00 80 02 20 | 80 09 00 3b 20 2d 2d 2d |ffer... |...; ---|
|000001e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000001f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000200| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000210| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000220| 2d 2d 2d 2d 2d 00 3b 20 | 2a 20 20 20 20 20 54 55 |-----.; |* TU|
|00000230| 52 4e 20 44 52 49 56 45 | 20 4f 4e 20 4f 46 46 20 |RN DRIVE| ON OFF |
|00000240| 20 20 20 20 2a 00 3b 20 | 2a 20 20 20 20 20 69 6f | *.; |* io|
|00000250| 70 6f 72 74 6c 6f 63 20 | 3d 20 6c 6f 63 61 74 69 |portloc |= locati|
|00000260| 6f 6e 20 69 6e 20 6d 65 | 6d 6f 72 79 20 6f 66 20 |on in me|mory of |
|00000270| 49 2f 4f 20 70 6f 72 74 | 20 20 20 20 20 20 20 20 |I/O port| |
|00000280| 20 20 20 2a 00 3b 20 2a | 20 20 20 20 20 73 77 20 | *.; *| sw |
|00000290| 20 20 20 20 20 20 20 3d | 20 30 20 2d 20 53 77 69 | =| 0 - Swi|
|000002a0| 74 63 68 20 6f 66 66 20 | 6d 6f 74 6f 72 20 20 20 |tch off |motor |
|000002b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000002c0| 20 20 2a 00 3b 20 2a 20 | 20 20 20 20 20 20 20 20 | *.; * | |
|000002d0| 20 20 20 20 20 20 20 20 | 31 20 2d 20 53 77 69 74 | |1 - Swit|
|000002e0| 63 68 20 6f 6e 20 6d 6f | 74 6f 72 20 20 20 20 20 |ch on mo|tor |
|000002f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000300| 20 2a 00 3b 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | *.; ---|--------|
|00000310| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000320| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000330| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000340| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 00 80 08 |--------|-----...|
|00000350| 20 54 44 31 5f 64 72 69 | 76 65 6d 6f 74 6f 72 20 | TD1_dri|vemotor |
|00000360| 7b 69 6f 72 65 71 75 65 | 73 74 2c 73 77 2e 62 7d |{ioreque|st,sw.b}|
|00000370| 00 20 20 da 01 2e 77 20 | 69 6f 72 65 71 75 65 73 |. ...w |ioreques|
|00000380| 74 2b 32 38 2c 39 20 20 | 20 20 20 20 20 20 20 20 |t+28,9 | |
|00000390| 20 20 20 20 3b 20 3c 2d | 2d 2d 20 39 20 3d 20 45 | ; <-|-- 9 = E|
|000003a0| 54 44 5f 4d 4f 54 4f 52 | 00 20 20 20 20 da 01 2e |TD_MOTOR|. ...|
|000003b0| 6c 20 69 6f 72 65 71 75 | 65 73 74 2b 33 36 2c 73 |l iorequ|est+36,s|
|000003c0| 77 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 3c 2d |w | ; <-|
|000003d0| 2d 2d 20 4d 6f 74 6f 72 | 20 6f 6e 2f 6f 66 66 00 |-- Motor| on/off.|
|000003e0| 20 20 20 20 20 20 fe c2 | 28 69 6f 72 65 71 75 65 | ..|(ioreque|
|000003f0| 73 74 29 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |st) | |
|00000400| 20 20 3b 20 3c 2d 2d 2d | 20 44 6f 20 49 2f 6f 20 | ; <---| Do I/o |
|00000410| 69 65 20 70 65 72 66 6f | 72 6d 20 6f 70 65 72 61 |ie perfo|rm opera|
|00000420| 74 69 6f 6e 00 80 02 20 | 80 08 00 3b 20 2d 2d 2d |tion... |...; ---|
|00000430| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000440| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000450| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000460| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000470| 2d 2d 2d 2d 2d 00 3b 20 | 20 20 20 20 20 20 20 20 |-----.; | |
|00000480| 2a 2a 2a 2a 2a 20 43 48 | 45 43 4b 20 46 4f 52 20 |***** CH|ECK FOR |
|00000490| 44 49 53 4b 20 45 54 43 | 20 2a 2a 2a 2a 2a 00 3b |DISK ETC| *****.;|
|000004a0| 20 20 43 68 65 63 6b 20 | 66 6f 72 20 64 69 73 6b | Check |for disk|
|000004b0| 20 69 6e 20 64 72 69 76 | 65 20 3a 20 74 61 73 6b | in driv|e : task|
|000004c0| 20 3d 20 31 34 20 28 54 | 44 5f 43 48 41 4e 47 45 | = 14 (T|D_CHANGE|
|000004d0| 53 54 41 54 45 29 00 3b | 20 20 20 20 20 20 20 69 |STATE).;| i|
|000004e0| 66 20 69 6f 5f 61 63 74 | 75 61 6c 20 3c 3e 20 30 |f io_act|ual <> 0|
|000004f0| 20 74 68 65 6e 20 6e 6f | 20 64 69 73 6b 20 69 6e | then no| disk in|
|00000500| 20 64 72 69 76 65 00 3b | 20 2d 2d 2d 2d 2d 2d 2d | drive.;| -------|
|00000510| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000520| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000530| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000540| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000550| 2d 00 80 08 20 54 44 31 | 5f 63 68 65 63 6b 5f 64 |-... TD1|_check_d|
|00000560| 69 73 6b 7b 69 6f 72 65 | 71 75 65 73 74 2c 74 61 |isk{iore|quest,ta|
|00000570| 73 6b 2e 62 7d 00 20 20 | 80 15 20 69 6f 5f 61 63 |sk.b}. |.. io_ac|
|00000580| 74 75 61 6c 20 20 20 20 | 20 20 20 20 20 20 20 20 |tual | |
|00000590| 20 20 20 20 20 3b 20 3c | 2d 2d 2d 20 56 61 72 20 | ; <|--- Var |
|000005a0| 74 6f 20 72 65 74 75 72 | 6e 20 63 68 65 63 6b 20 |to retur|n check |
|000005b0| 74 6f 20 6d 61 69 6e 20 | 70 72 6f 67 72 61 6d 00 |to main |program.|
|000005c0| 20 20 20 20 da 01 2e 77 | 20 69 6f 72 65 71 75 65 | ...w| ioreque|
|000005d0| 73 74 2b 32 38 2c 74 61 | 73 6b 20 20 20 20 20 20 |st+28,ta|sk |
|000005e0| 20 20 20 20 20 20 3b 20 | 3c 2d 2d 2d 20 50 65 72 | ; |<--- Per|
|000005f0| 66 6f 72 6d 20 77 68 61 | 74 20 74 79 70 65 20 6f |form wha|t type o|
|00000600| 66 20 74 61 73 6b 00 20 | 20 20 20 20 20 fe c2 28 |f task. | ..(|
|00000610| 69 6f 72 65 71 75 65 73 | 74 29 20 20 20 20 20 20 |ioreques|t) |
|00000620| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 3c 2d | | ; <-|
|00000630| 2d 2d 20 4f 4b 20 64 6f | 20 69 74 00 20 20 20 20 |-- OK do| it. |
|00000640| 20 20 20 20 69 6f 5f 61 | 63 74 75 61 6c 3d da 02 | io_a|ctual=..|
|00000650| 2e 6c 20 28 69 6f 72 65 | 71 75 65 73 74 2b 33 32 |.l (iore|quest+32|
|00000660| 29 20 3b 20 3c 2d 2d 2d | 20 57 68 61 74 20 68 61 |) ; <---| What ha|
|00000670| 70 70 65 6e 65 64 20 20 | 20 30 20 2d 20 64 69 73 |ppened | 0 - dis|
|00000680| 6b 20 69 6e 00 20 20 20 | 20 20 20 20 20 20 20 20 |k in. | |
|00000690| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 20 | | ; |
|000006b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006c0| 20 20 32 35 35 20 2d 20 | 6e 6f 20 64 69 73 6b 00 | 255 - |no disk.|
|000006d0| 80 02 20 80 08 00 3b 20 | 2d 2d 2d 2d 2d 2d 2d 2d |.. ...; |--------|
|000006e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000006f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000700| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000710| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000720| 00 3b 20 2a 20 20 20 20 | 20 41 4c 4c 4f 43 41 54 |.; * | ALLOCAT|
|00000730| 45 20 53 49 47 4e 41 4c | 20 20 20 20 20 2a 00 3b |E SIGNAL| *.;|
|00000740| 20 2d 31 20 6d 65 61 6e | 73 20 61 6c 6c 6f 63 61 | -1 mean|s alloca|
|00000750| 74 65 20 66 69 72 73 74 | 20 61 76 61 69 61 62 6c |te first| avaiabl|
|00000760| 65 20 73 69 67 6e 61 6c | 00 3b 20 2d 2d 2d 2d 2d |e signal|.; -----|
|00000770| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000780| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000790| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000007a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000007b0| 2d 2d 2d 00 80 09 20 54 | 44 31 5f 61 6c 6c 6f 63 |---... T|D1_alloc|
|000007c0| 73 69 67 6e 61 6c 20 7b | 7d 00 20 20 80 09 20 80 |signal {|}. .. .|
|000007d0| 07 20 fe ad 28 2d 31 29 | 20 20 20 20 20 20 20 3b |. ..(-1)| ;|
|000007e0| 20 3c 2d 2d 2d 20 41 6c | 6c 6f 63 61 74 65 20 66 | <--- Al|locate f|
|000007f0| 69 72 73 74 20 61 76 61 | 69 61 62 6c 65 20 73 69 |irst ava|iable si|
|00000800| 67 6e 61 6c 00 80 02 20 | 80 08 00 3b 20 2d 2d 2d |gnal... |...; ---|
|00000810| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000820| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000830| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000840| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000850| 2d 2d 2d 2d 2d 00 3b 20 | 2a 20 20 20 20 20 46 52 |-----.; |* FR|
|00000860| 45 45 20 53 49 47 4e 41 | 4c 20 20 20 20 20 20 2a |EE SIGNA|L *|
|00000870| 00 3b 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |.; -----|--------|
|00000880| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000890| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000008a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000008b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 00 80 08 20 54 |--------|---... T|
|000008c0| 44 5f 66 72 65 65 73 69 | 67 6e 61 6c 20 7b 73 69 |D_freesi|gnal {si|
|000008d0| 67 6e 61 6c 6e 75 6d 62 | 65 72 7d 00 20 20 fe ae |gnalnumb|er}. ..|
|000008e0| 28 73 69 67 6e 61 6c 6e | 75 6d 62 65 72 29 20 20 |(signaln|umber) |
|000008f0| 20 20 20 20 20 20 20 20 | 3b 20 3c 2d 2d 2d 20 46 | |; <--- F|
|00000900| 72 65 65 20 74 68 65 20 | 73 69 67 6e 61 6c 00 80 |ree the |signal..|
|00000910| 02 20 80 08 00 3b 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |. ...; -|--------|
|00000920| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000930| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000940| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000950| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 00 |--------|-------.|
|00000960| 3b 20 2a 2a 2a 2a 2a 20 | 4d 45 53 53 41 47 45 20 |; ***** |MESSAGE |
|00000970| 50 4f 52 54 20 2a 2a 2a | 2a 2a 00 3b 20 53 69 7a |PORT ***|**.; Siz|
|00000980| 65 20 6f 66 20 74 68 65 | 20 6d 65 73 73 61 67 65 |e of the| message|
|00000990| 20 70 6f 72 74 20 69 73 | 20 33 34 20 62 79 74 65 | port is| 34 byte|
|000009a0| 73 00 3b 20 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |s.; ----|--------|
|000009b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 00 80 09 20 |--------|----... |
|000009f0| 54 44 31 5f 6d 73 67 70 | 6f 72 74 20 7b 73 69 67 |TD1_msgp|ort {sig|
|00000a00| 6e 61 6c 6e 75 6d 62 65 | 72 7d 00 6d 73 67 70 6f |nalnumbe|r}.msgpo|
|00000a10| 72 74 6c 6f 63 3d 45 58 | 45 43 5f 61 6c 6c 6f 63 |rtloc=EX|EC_alloc|
|00000a20| 6d 65 6d 20 7b 33 34 7d | 20 20 20 20 20 20 20 20 |mem {34}| |
|00000a30| 3b 20 3c 2d 2d 2d 20 41 | 6c 6c 6f 63 61 74 65 20 |; <--- A|llocate |
|00000a40| 6d 65 6d 6f 72 79 20 46 | 6f 72 20 4d 53 47 20 70 |memory F|or MSG p|
|00000a50| 6f 72 74 00 20 20 62 65 | 78 65 63 3d da 02 2e 6c |ort. be|xec=...l|
|00000a60| 28 34 29 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |(4) | |
|00000a70| 20 20 20 20 20 20 20 3b | 20 3c 2d 2d 2d 20 41 64 | ;| <--- Ad|
|00000a80| 64 72 65 73 73 20 6f 66 | 20 45 78 65 63 20 62 61 |dress of| Exec ba|
|00000a90| 73 65 00 20 20 20 20 66 | 69 6e 64 6e 61 6d 65 3d |se. f|indname=|
|00000aa0| da 02 2e 6c 28 62 65 78 | 65 63 2b 32 37 36 29 20 |...l(bex|ec+276) |
|00000ab0| 20 20 20 20 20 20 3b 20 | 3c 2d 2d 2d 20 41 64 64 | ; |<--- Add|
|00000ac0| 72 65 73 73 20 6f 66 20 | 43 75 72 72 65 6e 74 20 |ress of |Current |
|00000ad0| 54 41 53 4b 00 20 20 da | 01 2e 62 20 6d 73 67 70 |TASK. .|..b msgp|
|00000ae0| 6f 72 74 6c 6f 63 2b 38 | 2c 31 36 20 20 20 20 20 |ortloc+8|,16 |
|00000af0| 20 20 20 20 20 20 20 20 | 3b 20 3c 2d 2d 2d 20 4e | |; <--- N|
|00000b00| 6f 64 65 20 74 79 70 65 | 20 69 73 20 6d 65 73 73 |ode type| is mess|
|00000b10| 61 67 65 20 70 6f 72 74 | 00 20 20 20 20 da 01 2e |age port|. ...|
|00000b20| 62 20 6d 73 67 70 6f 72 | 74 6c 6f 63 2b 39 2c 30 |b msgpor|tloc+9,0|
|00000b30| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 3c 2d | | ; <-|
|00000b40| 2d 2d 20 50 6f 72 74 20 | 50 72 69 6f 72 69 74 79 |-- Port |Priority|
|00000b50| 00 20 20 20 20 20 20 da | 01 2e 62 20 6d 73 67 70 |. .|..b msgp|
|00000b60| 6f 72 74 6c 6f 63 2b 31 | 34 2c 30 20 20 20 20 20 |ortloc+1|4,0 |
|00000b70| 20 20 20 20 3b 20 3c 2d | 2d 2d 20 46 6c 61 67 73 | ; <-|-- Flags|
|00000b80| 00 20 20 20 20 20 20 20 | 20 da 01 2e 62 20 6d 73 |. | ...b ms|
|00000b90| 67 70 6f 72 74 6c 6f 63 | 2b 31 35 2c 73 69 67 6e |gportloc|+15,sign|
|00000ba0| 61 6c 6e 75 6d 62 65 72 | 20 3b 20 3c 2d 2d 2d 20 |alnumber| ; <--- |
|00000bb0| 54 68 69 73 20 74 61 73 | 6b 73 20 73 69 67 6e 61 |This tas|ks signa|
|00000bc0| 6c 00 20 20 20 20 20 20 | 20 20 20 20 da 01 2e 6c |l. | ...l|
|00000bd0| 20 6d 73 67 70 6f 72 74 | 6c 6f 63 2b 31 36 2c 66 | msgport|loc+16,f|
|00000be0| 69 6e 64 6e 61 6d 65 20 | 20 20 3b 20 3c 2d 2d 2d |indname | ; <---|
|00000bf0| 20 41 64 64 72 65 73 73 | 20 6f 66 20 74 61 73 6b | Address| of task|
|00000c00| 20 73 74 72 75 63 74 75 | 72 65 00 20 20 80 09 20 | structu|re. .. |
|00000c10| 80 07 20 6d 73 67 70 6f | 72 74 6c 6f 63 00 80 02 |.. msgpo|rtloc...|
|00000c20| 20 80 09 00 3b 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | ...; --|--------|
|00000c30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 00 3b |--------|------.;|
|00000c70| 20 2a 2a 2a 2a 2a 20 49 | 2f 4f 20 50 4f 52 54 20 | ***** I|/O PORT |
|00000c80| 2a 2a 2a 2a 2a 00 3b 20 | 49 2f 4f 20 70 6f 72 74 |*****.; |I/O port|
|00000c90| 20 73 69 7a 65 20 69 73 | 20 34 38 20 62 79 74 65 | size is| 48 byte|
|00000ca0| 73 00 3b 20 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |s.; ----|--------|
|00000cb0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000cc0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000cd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ce0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 00 80 09 20 |--------|----... |
|00000cf0| 54 44 5f 69 6f 70 6f 72 | 74 20 7b 6d 73 67 70 6f |TD_iopor|t {msgpo|
|00000d00| 72 74 6c 6f 63 7d 00 20 | 20 69 6f 70 6f 72 74 6c |rtloc}. | ioportl|
|00000d10| 6f 63 3d 45 58 45 43 5f | 61 6c 6c 6f 63 6d 65 6d |oc=EXEC_|allocmem|
|00000d20| 20 7b 34 38 7d 20 20 20 | 20 20 20 20 3b 20 3c 2d | {48} | ; <-|
|00000d30| 2d 2d 20 4d 65 6d 6f 72 | 79 20 66 6f 72 20 50 4f |-- Memor|y for PO|
|00000d40| 52 54 00 20 20 20 20 da | 01 2e 62 20 69 6f 70 6f |RT. .|..b iopo|
|00000d50| 72 74 6c 6f 63 2b 38 2c | 33 32 20 20 20 20 20 20 |rtloc+8,|32 |
|00000d60| 20 20 20 20 20 20 3b 20 | 3c 2d 2d 2d 20 4d 65 73 | ; |<--- Mes|
|00000d70| 73 61 67 65 20 74 79 70 | 65 00 20 20 20 20 20 20 |sage typ|e. |
|00000d80| da 01 2e 6c 20 69 6f 70 | 6f 72 74 6c 6f 63 2b 31 |...l iop|ortloc+1|
|00000d90| 34 2c 6d 73 67 70 6f 72 | 74 6c 6f 63 20 3b 20 3c |4,msgpor|tloc ; <|
|00000da0| 2d 2d 2d 20 41 64 64 72 | 65 73 73 20 6f 66 20 4d |--- Addr|ess of M|
|00000db0| 53 47 20 50 4f 52 54 00 | 20 20 20 20 20 20 20 20 |SG PORT.| |
|00000dc0| da 01 2e 77 20 69 6f 70 | 6f 72 74 6c 6f 63 2b 31 |...w iop|ortloc+1|
|00000dd0| 38 2c 34 38 20 20 20 20 | 20 20 20 3b 20 3c 2d 2d |8,48 | ; <--|
|00000de0| 2d 20 4c 65 6e 67 74 68 | 20 6f 66 20 4d 53 47 20 |- Length| of MSG |
|00000df0| 50 4f 52 54 20 53 74 72 | 75 63 74 75 72 65 00 20 |PORT Str|ucture. |
|00000e00| 20 80 09 20 80 07 20 69 | 6f 70 6f 72 74 6c 6f 63 | .. .. i|oportloc|
|00000e10| 00 80 02 20 80 09 00 3b | 20 2d 2d 2d 2d 2d 2d 2d |... ...;| -------|
|00000e20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e60| 2d 00 3b 20 7c 20 20 20 | 20 20 20 20 20 2a 2a 2a |-.; | | ***|
|00000e70| 2a 2a 20 20 20 20 46 52 | 45 45 20 4d 45 4d 4f 52 |** FR|EE MEMOR|
|00000e80| 59 20 20 20 20 2a 2a 2a | 2a 2a 20 20 20 20 20 20 |Y ***|** |
|00000e90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 7c 00 | | |.|
|00000ea0| 3b 20 7c 20 20 4d 65 6d | 62 6c 6f 63 6b 20 3d 20 |; | Mem|block = |
|00000eb0| 41 64 64 72 65 73 73 20 | 6f 66 20 6d 65 6d 6f 72 |Address |of memor|
|00000ec0| 79 20 62 6c 6f 63 6b 20 | 74 6f 20 72 65 74 75 72 |y block |to retur|
|00000ed0| 6e 20 74 6f 20 73 79 73 | 74 65 6d 20 7c 00 3b 20 |n to sys|tem |.; |
|00000ee0| 7c 20 20 73 69 7a 65 20 | 20 20 20 20 3d 20 41 6d || size | = Am|
|00000ef0| 6f 75 6e 74 20 6f 66 20 | 62 79 74 65 73 20 74 6f |ount of |bytes to|
|00000f00| 20 66 72 65 65 20 20 20 | 20 20 20 20 20 20 20 20 | free | |
|00000f10| 20 20 20 20 20 20 20 20 | 20 20 7c 00 3b 20 2d 2d | | |.; --|
|00000f20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000f30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000f40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000f50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000f60| 2d 2d 2d 2d 2d 2d 00 80 | 09 20 45 58 45 43 5f 66 |------..|. EXEC_f|
|00000f70| 72 65 65 6d 65 6d 20 7b | 6d 65 6d 62 6c 6f 63 6b |reemem {|memblock|
|00000f80| 2c 73 69 7a 65 7d 00 20 | 20 66 72 65 65 6d 65 6d |,size}. | freemem|
|00000f90| 3d fe 99 28 6d 65 6d 62 | 6c 6f 63 6b 2c 73 69 7a |=..(memb|lock,siz|
|00000fa0| 65 29 20 20 20 20 3b 20 | 3c 2d 2d 2d 20 52 65 74 |e) ; |<--- Ret|
|00000fb0| 75 72 6e 20 6d 65 6d 6f | 72 79 20 74 6f 20 73 79 |urn memo|ry to sy|
|00000fc0| 73 74 65 6d 00 80 02 20 | 80 09 00 3b 20 2d 2d 2d |stem... |...; ---|
|00000fd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000fe0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ff0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001000| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001010| 2d 2d 2d 2d 2d 00 3b 20 | 2a 20 20 20 20 20 20 46 |-----.; |* F|
|00001020| 52 45 45 20 41 4c 4c 20 | 41 4c 4c 4f 43 41 54 45 |REE ALL |ALLOCATE|
|00001030| 20 4d 45 4d 4f 52 59 20 | 46 4f 52 20 44 49 53 4b | MEMORY |FOR DISK|
|00001040| 20 43 4f 50 59 20 20 20 | 20 20 20 2a 00 3b 20 2d | COPY | *.; -|
|00001050| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001060| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001070| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001080| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001090| 2d 2d 2d 2d 2d 2d 2d 00 | 80 09 20 54 44 5f 66 72 |-------.|.. TD_fr|
|000010a0| 65 65 6d 65 6d 20 7b 6d | 73 67 70 6f 72 74 6c 6f |eemem {m|sgportlo|
|000010b0| 63 2c 69 6f 70 6f 72 74 | 6c 6f 63 5f 72 65 61 64 |c,ioport|loc_read|
|000010c0| 2c 69 6f 70 6f 72 74 6c | 6f 63 5f 77 72 69 74 65 |,ioportl|oc_write|
|000010d0| 7d 00 20 20 74 64 66 72 | 65 65 3d 45 58 45 43 5f |}. tdfr|ee=EXEC_|
|000010e0| 66 72 65 65 6d 65 6d 20 | 7b 6d 73 67 70 6f 72 74 |freemem |{msgport|
|000010f0| 6c 6f 63 2c 33 34 7d 20 | 20 20 20 20 20 20 20 20 |loc,34} | |
|00001100| 20 3b 20 3c 2d 2d 2d 20 | 4d 53 47 20 70 6f 72 74 | ; <--- |MSG port|
|00001110| 00 20 20 20 20 74 64 66 | 72 65 65 3d 45 58 45 43 |. tdf|ree=EXEC|
|00001120| 5f 66 72 65 65 6d 65 6d | 20 7b 69 6f 70 6f 72 74 |_freemem| {ioport|
|00001130| 6c 6f 63 5f 72 65 61 64 | 2c 34 38 7d 20 20 20 20 |loc_read|,48} |
|00001140| 3b 20 3c 2d 2d 2d 20 49 | 4f 20 50 6f 72 74 20 52 |; <--- I|O Port R|
|00001150| 65 61 64 00 20 20 20 20 | 20 20 74 64 66 72 65 65 |ead. | tdfree|
|00001160| 3d 45 58 45 43 5f 66 72 | 65 65 6d 65 6d 20 7b 69 |=EXEC_fr|eemem {i|
|00001170| 6f 70 6f 72 74 6c 6f 63 | 5f 77 72 69 74 65 2c 34 |oportloc|_write,4|
|00001180| 38 7d 20 3b 20 3c 2d 2d | 2d 20 49 4f 20 70 6f 72 |8} ; <--|- IO por|
|00001190| 74 20 57 72 69 74 65 00 | 80 02 20 80 09 00 3b 20 |t Write.|.. ...; |
|000011a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000011b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000011c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000011d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000011e0| 2d 2d 2d 2d 2d 2d 2d 2d | 00 3b 20 2a 20 20 20 20 |--------|.; * |
|000011f0| 20 20 4f 50 45 4e 20 44 | 45 56 49 43 45 20 20 20 | OPEN D|EVICE |
|00001200| 20 20 20 2a 00 3b 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d | *.; -|--------|
|00001210| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001220| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001230| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001240| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 00 |--------|-------.|
|00001250| 80 09 20 45 58 45 43 5f | 6f 70 65 6e 64 65 76 69 |.. EXEC_|opendevi|
|00001260| 63 65 20 7b 75 6e 69 74 | 2c 6d 65 6d 6c 6f 63 7d |ce {unit|,memloc}|
|00001270| 00 20 20 64 76 24 3d 22 | 74 72 61 63 6b 64 69 73 |. dv$="|trackdis|
|00001280| 6b 2e 64 65 76 69 63 65 | 22 2b dc 86 28 30 29 00 |k.device|"+..(0).|
|00001290| 20 20 20 20 80 09 20 80 | 07 20 fe c0 28 26 64 76 | .. .|. ..(&dv|
|000012a0| 24 2c 75 6e 69 74 2c 6d | 65 6d 6c 6f 63 2c 30 29 |$,unit,m|emloc,0)|
|000012b0| 00 80 02 20 80 09 00 3b | 20 2d 2d 2d 2d 2d 2d 2d |... ...;| -------|
|000012c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000012d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000012e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000012f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001300| 2d 00 3b 20 2a 20 20 20 | 20 20 20 43 4c 4f 53 45 |-.; * | CLOSE|
|00001310| 20 44 45 56 49 43 45 20 | 20 20 20 20 20 2a 00 3b | DEVICE | *.;|
|00001320| 20 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | -------|--------|
|00001330| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001340| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001350| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001360| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 00 80 09 20 45 58 45 |--------|-... EXE|
|00001370| 43 5f 63 6c 6f 73 65 64 | 65 76 69 63 65 20 7b 69 |C_closed|evice {i|
|00001380| 6f 72 65 71 75 65 73 74 | 7d 00 20 20 63 6c 6f 73 |orequest|}. clos|
|00001390| 65 64 65 76 69 63 65 3d | fe c1 28 69 6f 72 65 71 |edevice=|..(ioreq|
|000013a0| 75 65 73 74 29 00 80 02 | 20 80 09 00 3b 20 2d 2d |uest)...| ...; --|
|000013b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000013c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000013d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000013e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000013f0| 2d 2d 2d 2d 2d 2d 00 3b | 20 2a 20 20 20 20 20 52 |------.;| * R|
|00001400| 45 41 44 59 20 52 45 41 | 44 20 26 20 57 52 49 54 |EADY REA|D & WRIT|
|00001410| 45 20 44 45 56 49 43 45 | 53 20 20 20 20 20 2a 00 |E DEVICE|S *.|
|00001420| 3b 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |; ------|--------|
|00001430| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001440| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001450| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001460| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 00 80 09 20 54 44 |--------|--... TD|
|00001470| 5f 72 65 61 64 79 64 65 | 76 69 63 65 20 7b 69 6f |_readyde|vice {io|
|00001480| 70 6f 72 74 6c 6f 63 5f | 72 65 61 64 2c 69 6f 70 |portloc_|read,iop|
|00001490| 6f 72 74 6c 6f 63 5f 77 | 72 69 74 65 2c 73 6f 75 |ortloc_w|rite,sou|
|000014a0| 72 63 65 64 72 69 76 65 | 2c 74 61 72 67 65 74 64 |rcedrive|,targetd|
|000014b0| 72 69 76 65 7d 00 20 20 | 75 6e 69 74 3d 73 6f 75 |rive}. |unit=sou|
|000014c0| 72 63 65 64 72 69 76 65 | 20 20 20 20 20 20 20 20 |rcedrive| |
|000014d0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 3c 2d 2d | | ; <--|
|000014e0| 2d 20 53 6f 75 72 63 65 | 20 44 72 69 76 65 00 20 |- Source| Drive. |
|000014f0| 20 20 20 6d 65 6d 6c 6f | 63 3d 69 6f 70 6f 72 74 | memlo|c=ioport|
|00001500| 6c 6f 63 5f 72 65 61 64 | 00 20 20 20 20 20 6f 64 |loc_read|. od|
|00001510| 3d 45 58 45 43 5f 6f 70 | 65 6e 64 65 76 69 63 65 |=EXEC_op|endevice|
|00001520| 20 7b 75 6e 69 74 2c 6d | 65 6d 6c 6f 63 7d 00 20 | {unit,m|emloc}. |
|00001530| 20 75 6e 69 74 3d 74 61 | 72 67 65 74 64 72 69 76 | unit=ta|rgetdriv|
|00001540| 65 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |e | |
|00001550| 20 20 20 20 3b 20 3c 2d | 2d 2d 20 54 61 72 67 65 | ; <-|-- Targe|
|00001560| 74 20 44 72 69 76 65 00 | 20 20 20 20 6d 65 6d 6c |t Drive.| meml|
|00001570| 6f 63 3d 69 6f 70 6f 72 | 74 6c 6f 63 5f 77 72 69 |oc=iopor|tloc_wri|
|00001580| 74 65 00 20 20 20 20 20 | 20 6f 64 3d 45 58 45 43 |te. | od=EXEC|
|00001590| 5f 6f 70 65 6e 64 65 76 | 69 63 65 20 7b 75 6e 69 |_opendev|ice {uni|
|000015a0| 74 2c 6d 65 6d 6c 6f 63 | 7d 00 80 02 20 80 09 00 |t,memloc|}... ...|
|000015b0| 3b 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |; ------|--------|
|000015c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000015d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000015e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000015f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 00 3b 20 2a 20 20 20 |--------|-.; * |
|00001600| 20 52 45 41 44 20 26 20 | 57 52 49 54 45 20 54 48 | READ & |WRITE TH|
|00001610| 45 20 44 49 53 4b 20 20 | 20 20 20 2a 00 3b 20 2d |E DISK | *.; -|
|00001620| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001630| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001640| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001650| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001660| 2d 2d 2d 2d 2d 2d 00 80 | 09 20 52 57 5f 64 72 69 |------..|. RW_dri|
|00001670| 76 65 20 7b 64 62 6c 6f | 63 6b 2c 6f 70 2c 69 6f |ve {dblo|ck,op,io|
|00001680| 72 65 71 75 65 73 74 2c | 62 62 75 66 66 65 72 7d |request,|bbuffer}|
|00001690| 00 da 01 2e 77 20 69 6f | 72 65 71 75 65 73 74 2b |....w io|request+|
|000016a0| 32 38 2c 6f 70 20 20 20 | 20 20 20 20 20 20 20 20 |28,op | |
|000016b0| 20 20 20 20 20 20 20 20 | 3b 20 3c 2d 2d 2d 20 43 | |; <--- C|
|000016c0| 6f 6d 6d 61 6e 64 00 20 | 20 da 01 2e 6c 20 69 6f |ommand. | ...l io|
|000016d0| 72 65 71 75 65 73 74 2b | 33 36 2c 35 36 33 32 20 |request+|36,5632 |
|000016e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|000016f0| 3c 2d 2d 2d 20 4e 75 6d | 62 65 72 20 6f 66 20 74 |<--- Num|ber of t|
|00001700| 72 61 63 6b 73 20 69 6e | 20 62 79 74 65 73 00 20 |racks in| bytes. |
|00001710| 20 20 20 da 01 2e 6c 20 | 69 6f 72 65 71 75 65 73 | ...l |ioreques|
|00001720| 74 2b 34 30 2c 62 62 75 | 66 66 65 72 20 20 20 20 |t+40,bbu|ffer |
|00001730| 20 20 20 3b 20 3c 2d 2d | 2d 20 50 6f 69 6e 74 65 | ; <--|- Pointe|
|00001740| 72 20 74 6f 20 62 75 66 | 66 65 72 00 20 20 20 20 |r to buf|fer. |
|00001750| 20 20 da 01 2e 6c 20 69 | 6f 72 65 71 75 65 73 74 | ...l i|orequest|
|00001760| 2b 34 34 2c 30 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 |+44,0 | ; <--- |
|00001770| 53 74 61 72 74 20 6f 66 | 20 54 72 61 63 6b 00 20 |Start of| Track. |
|00001780| 20 80 09 20 80 07 20 fe | c2 28 69 6f 72 65 71 75 | .. .. .|.(iorequ|
|00001790| 65 73 74 29 00 80 02 20 | 80 09 00 00 3b 00 3b 20 |est)... |....;.; |
|000017a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000017b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000017c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000017d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000017e0| 2d 2d 2d 2d 2d 2d 2d 2d | 00 3b 20 2a 20 20 20 20 |--------|.; * |
|000017f0| 20 43 52 45 41 54 45 20 | 41 20 44 45 56 49 43 45 | CREATE |A DEVICE|
|00001800| 20 4c 49 53 54 20 20 20 | 20 20 2a 00 3b 20 2d 2d | LIST | *.; --|
|00001810| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001820| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001830| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001840| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001850| 2d 2d 2d 2d 2d 2d 00 80 | 08 20 64 65 76 69 63 65 |------..|. device|
|00001860| 73 5f 67 65 74 7b 7d 00 | 80 15 20 64 65 76 69 63 |s_get{}.|.. devic|
|00001870| 65 6c 69 73 74 24 28 29 | 20 20 20 20 20 20 20 20 |elist$()| |
|00001880| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00001890| 52 65 74 75 72 6e 20 61 | 72 72 61 79 20 74 6f 20 |Return a|rray to |
|000018a0| 6d 61 69 6e 20 70 72 6f | 67 72 61 6d 00 63 6f 75 |main pro|gram.cou|
|000018b0| 6e 74 2e 62 3d 31 20 20 | 20 20 20 20 20 20 20 20 |nt.b=1 | |
|000018c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000018d0| 20 20 3b 20 3c 2d 2d 2d | 20 43 6f 75 6e 74 65 72 | ; <---| Counter|
|000018e0| 00 6c 69 62 6e 61 6d 65 | 24 3d 22 64 6f 73 2e 6c |.libname|$="dos.l|
|000018f0| 69 62 72 61 72 79 22 20 | 20 20 20 20 20 20 20 20 |ibrary" | |
|00001900| 20 20 20 20 20 20 3b 20 | 3c 2d 2d 2d 20 57 68 69 | ; |<--- Whi|
|00001910| 63 68 20 6c 69 62 72 61 | 72 79 00 6c 69 62 62 61 |ch libra|ry.libba|
|00001920| 73 65 3d fe cf 28 26 6c | 69 62 6e 61 6d 65 24 2c |se=..(&l|ibname$,|
|00001930| 30 29 20 20 20 20 3b 20 | 3c 2d 2d 2d 20 4f 70 65 |0) ; |<--- Ope|
|00001940| 6e 20 74 68 65 20 64 6f | 73 20 6c 69 62 72 61 72 |n the do|s librar|
|00001950| 79 00 72 6e 3d da 02 2e | 6c 20 28 6c 69 62 62 61 |y.rn=...|l (libba|
|00001960| 73 65 2b 33 34 29 20 20 | 20 20 20 20 20 20 20 20 |se+34) | |
|00001970| 20 20 20 20 20 3b 20 3c | 2d 2d 2d 20 50 6f 69 6e | ; <|--- Poin|
|00001980| 74 65 72 20 74 6f 20 52 | 6f 6f 74 6e 6f 64 65 20 |ter to R|ootnode |
|00001990| 20 20 53 74 72 75 63 74 | 75 72 65 00 20 20 64 66 | Struct|ure. df|
|000019a0| 3d da 02 2e 6c 20 28 72 | 6e 2b 32 34 29 2a 34 20 |=...l (r|n+24)*4 |
|000019b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|000019c0| 20 3c 2d 2d 2d 20 50 6f | 69 6e 74 65 72 20 74 6f | <--- Po|inter to|
|000019d0| 20 44 6f 73 69 6e 66 6f | 20 20 20 20 53 74 72 75 | Dosinfo| Stru|
|000019e0| 63 74 75 72 65 00 20 20 | 20 20 64 6e 3d da 02 2e |cture. | dn=...|
|000019f0| 6c 20 28 64 66 2b 34 29 | 2a 34 20 20 20 20 20 20 |l (df+4)|*4 |
|00001a00| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00001a10| 50 6f 69 6e 74 65 72 20 | 74 6f 20 44 65 76 69 63 |Pointer |to Devic|
|00001a20| 65 6c 69 73 74 20 53 74 | 72 75 63 74 75 72 65 00 |elist St|ructure.|
|00001a30| 80 bb 00 20 20 64 74 79 | 70 65 2e 62 3d da 02 2e |... dty|pe.b=...|
|00001a40| 6c 28 64 6e 2b 34 29 20 | 20 20 20 20 20 20 20 20 |l(dn+4) | |
|00001a50| 20 20 20 20 20 20 3b 20 | 3c 2d 2d 2d 20 54 79 70 | ; |<--- Typ|
|00001a60| 65 20 6f 66 20 44 65 76 | 69 63 65 00 20 20 80 0b |e of Dev|ice. ..|
|00001a70| 20 64 74 79 70 65 3d 30 | 00 20 20 20 20 66 73 3d | dtype=0|. fs=|
|00001a80| da 02 2e 6c 28 64 6e 2b | 32 38 29 2a 34 00 20 20 |...l(dn+|28)*4. |
|00001a90| 20 20 20 20 80 0b 20 66 | 73 3e 32 30 00 20 20 20 | .. f|s>20. |
|00001aa0| 20 20 20 20 20 64 24 3d | 20 22 3c 44 45 56 3e 22 | d$=| "<DEV>"|
|00001ab0| 00 20 20 20 20 20 20 80 | 02 20 80 0b 00 20 20 20 |. .|. ... |
|00001ac0| 20 20 20 6e 31 3d da 02 | 2e 6c 28 64 6e 2b 34 30 | n1=..|.l(dn+40|
|00001ad0| 29 2a 34 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |)*4 | |
|00001ae0| 3b 20 3c 2d 2d 2d 20 50 | 6f 69 6e 74 65 72 00 20 |; <--- P|ointer. |
|00001af0| 20 20 20 20 20 20 6e 32 | 3d 28 da 02 2e 62 28 6e | n2|=(...b(n|
|00001b00| 31 29 29 2b 31 20 20 20 | 20 20 20 20 20 20 20 20 |1))+1 | |
|00001b10| 20 20 3b 20 3c 2d 2d 2d | 20 48 6f 77 20 6d 61 6e | ; <---| How man|
|00001b20| 79 20 63 68 61 72 61 63 | 74 65 72 73 00 20 20 20 |y charac|ters. |
|00001b30| 20 20 20 6e 61 6d 65 24 | 3d dc 88 28 22 20 22 2c | name$|=..(" ",|
|00001b40| 6e 32 29 20 20 20 20 20 | 20 20 20 20 20 3b 20 3c |n2) | ; <|
|00001b50| 2d 2d 2d 20 43 72 65 61 | 74 65 20 65 6e 6f 75 67 |--- Crea|te enoug|
|00001b60| 68 20 73 70 61 63 65 73 | 20 69 6e 20 76 61 72 69 |h spaces| in vari|
|00001b70| 61 62 6c 65 00 20 20 20 | 20 80 16 20 6e 3d 31 20 |able. | .. n=1 |
|00001b80| 80 18 20 6e 32 00 20 20 | 20 20 20 20 da 01 2e 62 |.. n2. | ...b|
|00001b90| 20 28 26 6e 61 6d 65 24 | 29 2b 6e 2d 31 2c da 02 | (&name$|)+n-1,..|
|00001ba0| 2e 62 28 6e 31 2b 6e 29 | 00 20 20 20 20 80 17 20 |.b(n1+n)|. .. |
|00001bb0| 6e 00 00 6e 61 6d 65 24 | 3d dc 93 28 6e 61 6d 65 |n..name$|=..(name|
|00001bc0| 24 2c 30 29 00 00 64 65 | 76 69 63 65 6c 69 73 74 |$,0)..de|vicelist|
|00001bd0| 24 28 63 6f 75 6e 74 29 | 3d 64 24 2b 22 20 22 2b |$(count)|=d$+" "+|
|00001be0| 6e 61 6d 65 24 2b 22 3a | 22 20 3b 20 3c 2d 2d 2d |name$+":|" ; <---|
|00001bf0| 20 41 64 64 20 64 65 76 | 69 63 65 20 6e 61 6d 65 | Add dev|ice name|
|00001c00| 20 74 6f 20 61 72 72 61 | 79 00 20 20 20 20 20 20 | to arra|y. |
|00001c10| 63 6f 75 6e 74 2b 31 20 | 20 20 20 20 20 20 20 20 |count+1 | |
|00001c20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00001c30| 20 3c 2d 2d 2d 20 4e 65 | 78 74 20 70 6f 73 74 69 | <--- Ne|xt posti|
|00001c40| 6f 6e 20 69 6e 20 61 72 | 72 61 79 00 20 20 80 02 |on in ar|ray. ..|
|00001c50| 20 80 0b 00 20 20 64 6e | 3d da 02 2e 6c 28 64 6e | ... dn|=...l(dn|
|00001c60| 29 2a 34 20 20 20 20 20 | 20 20 20 20 20 20 20 3b |)*4 | ;|
|00001c70| 20 3c 2d 2d 2d 20 47 65 | 74 20 6e 65 78 74 20 73 | <--- Ge|t next s|
|00001c80| 74 72 75 63 74 75 72 65 | 20 61 64 64 72 65 73 73 |tructure| address|
|00001c90| 20 2f 20 30 20 3d 20 66 | 69 6e 69 73 68 65 64 00 | / 0 = f|inished.|
|00001ca0| 80 bc 20 64 6e 3d 30 20 | 20 20 20 20 20 20 20 20 |.. dn=0 | |
|00001cb0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001cc0| 20 20 3b 20 3c 2d 2d 2d | 20 52 65 70 65 61 74 20 | ; <---| Repeat |
|00001cd0| 75 6e 74 69 6c 20 6e 6f | 20 6d 6f 72 65 20 73 74 |until no| more st|
|00001ce0| 72 75 63 74 75 72 65 73 | 00 63 6c 6f 73 65 6c 69 |ructures|.closeli|
|00001cf0| 62 3d fe bb 28 6c 69 62 | 62 61 73 65 29 20 20 20 |b=..(lib|base) |
|00001d00| 20 20 20 3b 20 3c 2d 2d | 2d 20 46 69 6e 69 73 68 | ; <--|- Finish|
|00001d10| 65 64 20 77 69 74 68 20 | 6c 69 62 72 61 72 79 20 |ed with |library |
|00001d20| 63 6c 6f 73 65 20 69 74 | 00 80 02 20 80 08 00 3b |close it|... ...;|
|00001d30| 20 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | -------|--------|
|00001d40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001d50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001d60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001d70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 00 3b 20 2a 20 20 20 |--------|-.; * |
|00001d80| 20 20 45 52 52 4f 52 20 | 54 52 41 50 50 49 4e 47 | ERROR |TRAPPING|
|00001d90| 20 20 20 20 20 2a 00 3b | 20 2d 2d 2d 2d 2d 2d 2d | *.;| -------|
|00001da0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001db0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001dc0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001dd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001de0| 2d 00 80 08 20 61 64 64 | 5f 74 6f 5f 65 72 72 6f |-... add|_to_erro|
|00001df0| 72 6c 69 73 74 20 7b 6f | 70 2c 65 72 72 7d 00 00 |rlist {o|p,err}..|
|00001e00| 80 15 20 65 72 72 6f 72 | 6c 69 73 74 24 28 29 00 |.. error|list$().|
|00001e10| 00 66 31 24 3d dd 83 28 | 6f 70 29 20 20 20 20 20 |.f1$=..(|op) |
|00001e20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001e30| 20 20 20 20 3b 20 3c 2d | 2d 2d 20 45 52 52 4f 52 | ; <-|-- ERROR|
|00001e40| 20 64 75 72 69 6e 67 20 | 6f 70 65 72 61 74 69 6f | during |operatio|
|00001e50| 6e 00 66 31 24 3d dc 88 | 28 22 20 22 2c 33 2d 28 |n.f1$=..|(" ",3-(|
|00001e60| dc 8f 28 66 31 24 29 29 | 29 2b 66 31 24 00 00 66 |..(f1$))|)+f1$..f|
|00001e70| 32 24 3d dd 83 28 65 72 | 72 29 20 20 20 20 20 20 |2$=..(er|r) |
|00001e80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001e90| 20 20 3b 20 3c 2d 2d 2d | 20 57 68 61 74 20 74 79 | ; <---| What ty|
|00001ea0| 70 65 20 6f 66 20 65 72 | 72 6f 72 00 66 32 24 3d |pe of er|ror.f2$=|
|00001eb0| dc 88 28 22 20 22 2c 33 | 2d 28 dc 8f 28 66 32 24 |..(" ",3|-(..(f2$|
|00001ec0| 29 29 29 2b 66 32 24 00 | 00 80 0b 20 c0 02 20 28 |)))+f2$.|... .. (|
|00001ed0| 65 72 72 6f 72 6c 69 73 | 74 24 28 29 29 20 80 21 |errorlis|t$()) .!|
|00001ee0| 20 65 72 72 6f 72 6c 69 | 73 74 24 28 29 3d 66 31 | errorli|st$()=f1|
|00001ef0| 24 2b 22 20 22 2b 66 32 | 24 00 80 02 20 80 08 00 |$+" "+f2|$... ...|
|00001f00| 3b 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |; ------|--------|
|00001f10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 00 3b 20 2a 20 20 |--------|--.; * |
|00001f50| 20 20 20 44 49 53 50 4c | 41 59 20 41 4e 59 20 45 | DISPL|AY ANY E|
|00001f60| 52 52 4f 52 53 20 20 20 | 20 20 2a 00 3b 20 2d 2d |RRORS | *.; --|
|00001f70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001fa0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001fb0| 2d 2d 2d 2d 2d 2d 00 80 | 08 20 65 72 72 6f 72 5f |------..|. error_|
|00001fc0| 77 69 6e 64 6f 77 20 7b | 65 72 72 6f 72 6c 69 73 |window {|errorlis|
|00001fd0| 74 24 7d 00 80 15 20 65 | 72 72 6f 72 6c 69 73 74 |t$}... e|rrorlist|
|00001fe0| 24 28 29 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |$() | |
|00001ff0| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00002000| 41 72 72 61 79 20 66 72 | 6f 6d 20 6d 61 69 6e 20 |Array fr|om main |
|00002010| 70 72 6f 67 72 61 6d 00 | 77 78 3d c5 20 20 3a 20 |program.|wx=. : |
|00002020| 77 79 3d c5 21 20 20 20 | 20 20 20 20 20 20 20 20 |wy=.! | |
|00002030| 20 20 20 20 20 20 20 3b | 20 3c 2d 2d 2d 20 57 69 | ;| <--- Wi|
|00002040| 6e 64 6f 77 20 3d 20 4d | 61 69 6e 00 64 75 6d 3d |ndow = M|ain.dum=|
|00002050| c0 01 20 28 65 72 72 6f | 72 6c 69 73 74 24 28 29 |.. (erro|rlist$()|
|00002060| 29 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 |) | ; |
|00002070| 3c 2d 2d 2d 20 46 69 72 | 73 74 20 49 74 65 6d 20 |<--- Fir|st Item |
|00002080| 6f 66 20 41 72 72 61 79 | 00 80 bb 00 80 0b 20 65 |of Array|...... e|
|00002090| 72 72 6f 72 6c 69 73 74 | 24 28 29 3c 3e 22 22 20 |rrorlist|$()<>"" |
|000020a0| 80 21 20 63 2b 31 20 20 | 20 20 20 20 20 20 20 20 |.! c+1 | |
|000020b0| 20 20 20 3b 20 3c 2d 2d | 2d 20 43 6f 75 6e 74 20 | ; <--|- Count |
|000020c0| 74 68 65 20 65 72 72 6f | 72 73 00 80 bc 20 c0 03 |the erro|rs... ..|
|000020d0| 20 28 65 72 72 6f 72 6c | 69 73 74 24 28 29 29 3d | (errorl|ist$())=|
|000020e0| 30 00 3b 00 3b 20 2a 20 | 57 48 49 43 48 20 47 41 |0.;.; * |WHICH GA|
|000020f0| 44 47 45 54 20 2a 00 3b | 00 20 20 80 0b 20 63 3e |DGET *.;|. .. c>|
|00002100| 31 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |1 | |
|00002110| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002120| 20 20 3b 20 3c 2d 2d 2d | 20 63 3e 31 20 6d 6f 72 | ; <---| c>1 mor|
|00002130| 65 20 74 68 61 6e 20 31 | 20 65 72 72 6f 72 00 20 |e than 1| error. |
|00002140| 20 20 20 c6 01 20 32 2c | 31 37 35 2c 35 35 2c 30 | .. 2,|175,55,0|
|00002150| 2c 31 2c 22 20 20 20 4f | 4b 41 59 20 20 20 22 20 |,1," O|KAY " |
|00002160| 3b 20 3c 2d 2d 2d 20 51 | 75 69 74 20 74 68 65 20 |; <--- Q|uit the |
|00002170| 65 72 72 6f 72 20 77 69 | 6e 64 6f 77 00 20 20 20 |error wi|ndow. |
|00002180| 20 c6 01 20 32 2c 35 30 | 2c 35 35 2c 30 2c 32 2c | .. 2,50|,55,0,2,|
|00002190| 22 20 20 20 4e 45 58 54 | 20 20 20 22 20 20 3b 20 |" NEXT| " ; |
|000021a0| 3c 2d 2d 2d 20 66 6f 72 | 20 64 69 73 70 6c 61 79 |<--- for| display|
|000021b0| 69 6e 67 20 6e 65 78 74 | 20 65 72 72 6f 72 00 20 |ing next| error. |
|000021c0| 20 80 22 00 20 20 20 20 | c6 01 20 32 2c 31 32 30 | .". |.. 2,120|
|000021d0| 2c 35 35 2c 30 2c 33 2c | 22 20 20 20 4f 4b 41 59 |,55,0,3,|" OKAY|
|000021e0| 20 20 20 22 20 3b 20 3c | 2d 2d 2d 20 51 75 69 74 | " ; <|--- Quit|
|000021f0| 20 74 68 65 20 65 72 72 | 6f 72 20 77 69 6e 64 6f | the err|or windo|
|00002200| 77 00 20 20 80 02 20 80 | 0b 00 c5 01 20 32 2c 77 |w. .. .|.... 2,w|
|00002210| 78 2b 31 33 2c 77 79 2b | 31 35 2c 33 31 38 2c 38 |x+13,wy+|15,318,8|
|00002220| 30 2c 24 31 30 30 38 2c | 22 44 41 4d 4e 21 21 20 |0,$1008,|"DAMN!! |
|00002230| 47 4f 54 20 41 20 45 52 | 52 4f 52 22 2c 32 2c 31 |GOT A ER|ROR",2,1|
|00002240| 2c 32 00 3b 00 3b 20 2a | 20 4e 45 45 44 20 54 48 |,2.;.; *| NEED TH|
|00002250| 49 53 20 46 4f 52 20 50 | 52 4f 50 45 52 20 47 46 |IS FOR P|ROPER GF|
|00002260| 58 20 2a 00 3b 00 c5 2f | 00 20 20 80 0b 20 63 3e |X *.;../|. .. c>|
|00002270| 31 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |1 | |
|00002280| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00002290| 3c 2d 2d 2d 20 63 3e 31 | 20 6d 6f 72 65 20 74 68 |<--- c>1| more th|
|000022a0| 61 6e 20 31 20 65 72 72 | 6f 72 00 c6 0b 20 32 2c |an 1 err|or... 2,|
|000022b0| 32 20 3a 20 c6 0b 20 32 | 2c 31 20 20 20 20 20 20 |2 : .. 2|,1 |
|000022c0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 3c 2d 2d 2d | | ; <---|
|000022d0| 20 54 68 65 73 65 20 72 | 65 64 72 61 77 73 20 6d | These r|edraws m|
|000022e0| 75 73 74 20 62 65 20 68 | 65 72 65 00 20 20 80 22 |ust be h|ere. ."|
|000022f0| 00 c6 0b 20 32 2c 33 00 | 20 20 80 02 20 80 0b 00 |... 2,3.| .. ...|
|00002300| 3b 00 20 20 c5 1c 20 32 | 2c 30 20 20 20 20 20 20 |;. .. 2|,0 |
|00002310| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002320| 20 20 3b 20 3c 2d 2d 2d | 20 57 68 69 74 65 20 54 | ; <---| White T|
|00002330| 65 78 74 00 20 20 20 20 | 20 20 80 06 20 72 65 61 |ext. | .. rea|
|00002340| 64 5f 65 72 72 6f 72 20 | 20 20 20 20 20 20 20 20 |d_error | |
|00002350| 20 20 20 20 20 20 3b 20 | 3c 2d 2d 2d 20 44 65 63 | ; |<--- Dec|
|00002360| 6f 64 65 20 66 69 72 73 | 74 20 65 72 72 6f 72 00 |ode firs|t error.|
|00002370| 3b 00 3b 20 2a 20 4f 50 | 54 49 4f 4e 53 20 2a 00 |;.; * OP|TIONS *.|
|00002380| 3b 00 80 bb 00 20 20 65 | 76 2e 6c 3d c5 02 00 20 |;.... e|v.l=... |
|00002390| 20 80 0b 20 65 76 3d 24 | 38 30 30 30 30 20 80 21 | .. ev=$|80000 .!|
|000023a0| 20 c5 1f 20 32 00 20 20 | 20 20 80 0b 20 c5 04 3d | .. 2. | .. ..=|
|000023b0| 32 20 80 42 20 65 76 3d | 24 34 30 20 80 21 20 80 |2 .B ev=|$40 .! .|
|000023c0| 06 20 72 65 61 64 5f 65 | 72 72 6f 72 00 20 20 20 |. read_e|rror. |
|000023d0| 20 20 20 80 0b 20 c0 01 | 20 28 65 72 72 6f 72 6c | .. ..| (errorl|
|000023e0| 69 73 74 24 28 29 29 3d | 30 20 80 42 20 63 3e 31 |ist$())=|0 .B c>1|
|000023f0| 20 80 21 20 c6 20 20 32 | 2c 32 20 3a 20 c6 0b 20 | .! . 2|,2 : .. |
|00002400| 32 2c 32 00 80 bc 20 65 | 76 3d 24 32 30 30 20 80 |2,2... e|v=$200 .|
|00002410| 8a 20 c5 04 3d 31 20 80 | 8a 20 c5 04 3d 33 00 3b |. ..=1 .|. ..=3.;|
|00002420| 00 3b 20 2a 20 4c 45 41 | 56 45 20 54 48 45 20 45 |.; * LEA|VE THE E|
|00002430| 52 52 4f 52 20 52 4f 55 | 54 49 4e 45 20 2a 00 3b |RROR ROU|TINE *.;|
|00002440| 00 20 20 c5 3c 20 32 20 | 20 20 20 20 20 20 20 20 |. .< 2 | |
|00002450| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00002460| 46 69 6e 69 73 68 65 64 | 20 77 69 74 68 20 77 69 |Finished| with wi|
|00002470| 6e 64 6f 77 00 20 20 20 | 20 c5 37 20 20 20 20 20 |ndow. | .7 |
|00002480| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 3c | | ; <|
|00002490| 2d 2d 2d 20 4e 6f 20 65 | 76 65 6e 74 20 6f 76 65 |--- No e|vent ove|
|000024a0| 72 66 6c 6f 77 00 20 20 | 20 20 20 20 80 2c 20 c5 |rflow. | ., .|
|000024b0| 01 20 30 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. 0 | |
|000024c0| 20 20 3b 20 3c 2d 2d 2d | 20 55 73 65 20 74 68 65 | ; <---| Use the|
|000024d0| 20 4d 61 69 6e 20 57 69 | 6e 64 6f 77 00 20 20 20 | Main Wi|ndow. |
|000024e0| 20 c0 07 20 65 72 72 6f | 72 6c 69 73 74 24 28 29 | .. erro|rlist$()|
|000024f0| 20 20 20 20 20 20 20 3b | 20 3c 2d 2d 2d 20 43 6c | ;| <--- Cl|
|00002500| 65 61 72 20 61 72 72 61 | 79 00 20 20 80 0b 20 63 |ear arra|y. .. c|
|00002510| 3e 31 20 80 21 20 c6 1f | 20 32 2c 32 20 20 20 20 |>1 .! ..| 2,2 |
|00002520| 20 20 20 20 20 3b 20 3c | 2d 2d 2d 20 49 66 20 6d | ; <|--- If m|
|00002530| 6f 72 65 20 74 68 61 6e | 20 31 20 65 72 72 6f 72 |ore than| 1 error|
|00002540| 00 20 c5 1c 20 31 2c 30 | 20 20 20 20 20 20 20 20 |. .. 1,0| |
|00002550| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 3c | | ; <|
|00002560| 2d 2d 2d 20 42 6c 61 63 | 6b 20 74 65 78 74 00 80 |--- Blac|k text..|
|00002570| 08 20 80 07 20 20 20 20 | 20 20 20 20 20 20 20 20 |. .. | |
|00002580| 20 20 20 20 20 3b 20 3c | 2d 2d 2d 20 42 61 63 6b | ; <|--- Back|
|00002590| 20 74 6f 20 4d 61 69 6e | 00 80 02 20 20 20 20 20 | to Main|... |
|000025a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000025b0| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|000025c0| 43 61 74 63 68 20 4d 65 | 00 3b 00 3b 20 2a 20 44 |Catch Me|.;.; * D|
|000025d0| 49 53 50 4c 41 59 20 45 | 52 52 4f 52 20 4d 45 53 |ISPLAY E|RROR MES|
|000025e0| 53 41 47 45 20 2a 00 3b | 00 72 65 61 64 5f 65 72 |SAGE *.;|.read_er|
|000025f0| 72 6f 72 3a 00 c5 37 00 | 80 0b 20 c0 01 20 28 65 |ror:..7.|.. .. (e|
|00002600| 72 72 6f 72 6c 69 73 74 | 24 28 29 29 00 20 c5 0c |rrorlist|$()). ..|
|00002610| 20 32 30 2c 31 35 2c 32 | 39 30 2c 35 30 2c 30 00 | 20,15,2|90,50,0.|
|00002620| 74 78 31 3d bc 01 28 dc | 81 28 65 72 72 6f 72 6c |tx1=..(.|.(errorl|
|00002630| 69 73 74 24 28 29 2c 33 | 29 29 00 74 78 32 3d bc |ist$(),3|)).tx2=.|
|00002640| 01 28 dc 83 28 65 72 72 | 6f 72 6c 69 73 74 24 28 |.(..(err|orlist$(|
|00002650| 29 2c 35 2c 33 29 29 00 | 74 78 31 24 3d 22 45 52 |),5,3)).|tx1$="ER|
|00002660| 52 4f 52 20 22 2b dd 83 | 28 74 78 31 29 20 3a 20 |ROR "+..|(tx1) : |
|00002670| 74 78 32 24 3d 22 55 6e | 73 70 65 63 69 66 69 65 |tx2$="Un|specifie|
|00002680| 64 20 65 72 72 6f 72 20 | 22 2b dd 83 28 74 78 32 |d error |"+..(tx2|
|00002690| 29 00 00 80 0b 20 74 78 | 31 3d 33 20 80 21 20 74 |).... tx|1=3 .! t|
|000026a0| 78 31 24 3d 22 45 52 52 | 4f 52 20 57 48 49 4c 45 |x1$="ERR|OR WHILE|
|000026b0| 20 52 45 41 44 49 4e 47 | 20 44 49 53 4b 22 00 80 | READING| DISK"..|
|000026c0| 0b 20 74 78 31 3d 34 20 | 80 21 20 74 78 31 24 3d |. tx1=4 |.! tx1$=|
|000026d0| 22 45 52 52 4f 52 20 57 | 48 49 4c 45 20 57 52 49 |"ERROR W|HILE WRI|
|000026e0| 54 49 4e 47 20 44 49 53 | 4b 22 00 80 0b 20 74 78 |TING DIS|K"... tx|
|000026f0| 31 3d 35 20 80 21 20 74 | 78 31 24 3d 22 4f 50 45 |1=5 .! t|x1$="OPE|
|00002700| 52 41 54 49 4f 4e 20 41 | 42 4f 52 54 45 44 22 00 |RATION A|BORTED".|
|00002710| 00 80 0b 20 74 78 32 3d | 31 30 20 80 21 20 74 78 |... tx2=|10 .! tx|
|00002720| 32 24 3d 22 43 6f 75 6c | 64 20 6e 6f 74 20 61 6c |2$="Coul|d not al|
|00002730| 6c 6f 63 61 74 65 20 73 | 69 67 6e 61 6c 22 00 80 |locate s|ignal"..|
|00002740| 0b 20 74 78 32 3d 31 32 | 20 80 21 20 74 78 32 24 |. tx2=12| .! tx2$|
|00002750| 3d 22 4e 6f 20 64 69 73 | 6b 20 69 6e 20 64 72 69 |="No dis|k in dri|
|00002760| 76 65 22 00 80 0b 20 74 | 78 32 3d 31 36 20 80 21 |ve"... t|x2=16 .!|
|00002770| 20 74 78 32 24 3d 22 57 | 41 52 4e 49 4e 47 20 2d | tx2$="W|ARNING -|
|00002780| 20 44 69 73 6b 20 6d 61 | 79 20 62 65 22 20 3a 20 | Disk ma|y be" : |
|00002790| 74 78 33 24 3d 22 55 6e | 75 73 65 61 62 6c 65 2e |tx3$="Un|useable.|
|000027a0| 22 00 80 0b 20 74 78 32 | 3d 31 37 20 80 21 20 74 |"... tx2|=17 .! t|
|000027b0| 78 32 24 3d 22 43 6f 75 | 6c 64 20 6e 6f 74 20 61 |x2$="Cou|ld not a|
|000027c0| 6c 6c 6f 63 61 74 65 20 | 4d 65 6d 6f 72 79 22 00 |llocate |Memory".|
|000027d0| 80 0b 20 74 78 32 3d 31 | 38 20 80 21 20 74 78 32 |.. tx2=1|8 .! tx2|
|000027e0| 24 3d 22 54 68 65 72 65 | 20 69 73 20 6e 6f 74 20 |$="There| is not |
|000027f0| 65 6e 6f 75 67 68 20 6d | 65 6d 6f 72 79 22 20 3a |enough m|emory" :|
|00002800| 20 74 78 33 24 3d 22 61 | 76 61 69 61 62 6c 65 20 | tx3$="a|vaiable |
|00002810| 74 6f 20 70 65 72 66 6f | 72 6d 20 74 68 69 73 20 |to perfo|rm this |
|00002820| 6f 70 65 72 61 74 69 6f | 6e 22 00 00 80 0b 20 74 |operatio|n".... t|
|00002830| 78 32 3d 32 35 20 80 21 | 20 74 78 32 24 3d 22 49 |x2=25 .!| tx2$="I|
|00002840| 6e 63 6f 72 72 65 63 74 | 20 53 65 63 74 6f 72 20 |ncorrect| Sector |
|00002850| 43 68 65 63 6b 73 75 6d | 22 00 80 0b 20 74 78 32 |Checksum|"... tx2|
|00002860| 3d 32 36 20 80 21 20 74 | 78 32 24 3d 22 4e 6f 74 |=26 .! t|x2$="Not|
|00002870| 20 45 6e 6f 75 67 68 20 | 53 65 63 74 6f 72 73 20 | Enough |Sectors |
|00002880| 41 76 61 69 61 62 6c 65 | 22 00 80 0b 20 74 78 32 |Avaiable|"... tx2|
|00002890| 3d 32 38 20 80 21 20 74 | 78 32 24 3d 22 44 69 73 |=28 .! t|x2$="Dis|
|000028a0| 6b 20 69 73 20 57 72 69 | 74 65 20 50 72 6f 74 65 |k is Wri|te Prote|
|000028b0| 63 74 65 64 22 00 80 0b | 20 74 78 32 3d 32 39 20 |cted"...| tx2=29 |
|000028c0| 80 21 20 74 78 32 24 3d | 22 44 69 73 6b 20 68 61 |.! tx2$=|"Disk ha|
|000028d0| 73 20 62 65 65 6e 20 63 | 68 61 6e 67 65 64 2e 22 |s been c|hanged."|
|000028e0| 00 00 78 31 3d 28 33 31 | 30 2d 28 dc 8f 28 74 78 |..x1=(31|0-(..(tx|
|000028f0| 31 24 29 2a 38 29 29 2f | 32 00 78 32 3d 28 33 31 |1$)*8))/|2.x2=(31|
|00002900| 30 2d 28 dc 8f 28 74 78 | 32 24 29 2a 38 29 29 2f |0-(..(tx|2$)*8))/|
|00002910| 32 00 00 c5 10 20 78 31 | 2c 31 30 20 3a 20 dd 82 |2.... x1|,10 : ..|
|00002920| 20 74 78 31 24 20 20 20 | 20 20 20 20 20 20 20 3b | tx1$ | ;|
|00002930| 20 3c 2d 2d 2d 20 45 72 | 72 6f 72 20 64 75 72 69 | <--- Er|ror duri|
|00002940| 6e 67 20 6f 70 65 72 61 | 74 69 6f 6e 00 c5 10 20 |ng opera|tion... |
|00002950| 78 32 2c 32 30 20 3a 20 | dd 82 20 74 78 32 24 20 |x2,20 : |.. tx2$ |
|00002960| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00002970| 57 68 61 74 20 65 72 72 | 6f 72 20 6f 63 63 75 72 |What err|or occur|
|00002980| 65 64 00 00 20 20 80 0b | 20 74 78 33 24 3c 3e 22 |ed.. ..| tx3$<>"|
|00002990| 22 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |" | |
|000029a0| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|000029b0| 54 68 72 65 65 20 6c 69 | 6e 65 73 20 6f 66 20 74 |Three li|nes of t|
|000029c0| 65 78 74 20 3f 3f 3f 00 | 20 20 20 20 78 33 3d 28 |ext ???.| x3=(|
|000029d0| 33 31 30 2d 28 dc 8f 28 | 74 78 33 24 29 2a 38 29 |310-(..(|tx3$)*8)|
|000029e0| 29 2f 32 20 20 20 20 20 | 20 20 20 20 3b 20 3c 2d |)/2 | ; <-|
|000029f0| 2d 2d 20 57 6f 72 6b 20 | 6f 75 74 20 70 6f 73 00 |-- Work |out pos.|
|00002a00| 20 20 20 20 c5 10 20 78 | 33 2c 33 30 20 3a 20 dd | .. x|3,30 : .|
|00002a10| 82 20 74 78 33 24 20 20 | 20 20 20 20 3b 20 3c 2d |. tx3$ | ; <-|
|00002a20| 2d 2d 20 4f 4b 20 70 72 | 69 6e 74 20 74 68 65 20 |-- OK pr|int the |
|00002a30| 74 65 78 74 00 20 20 80 | 02 20 80 0b 00 c0 05 20 |text. .|. ..... |
|00002a40| 65 72 72 6f 72 6c 69 73 | 74 24 28 29 20 20 20 20 |errorlis|t$() |
|00002a50| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 3c 2d | | ; <-|
|00002a60| 2d 2d 20 46 69 6e 69 73 | 68 65 64 20 77 69 74 68 |-- Finis|hed with|
|00002a70| 20 69 74 65 6d 20 52 65 | 6d 6f 76 65 20 69 74 00 | item Re|move it.|
|00002a80| 74 78 33 24 3d 22 22 20 | 20 20 20 20 20 20 20 20 |tx3$="" | |
|00002a90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002aa0| 20 20 20 20 20 3b 20 3c | 2d 2d 2d 20 42 6c 61 6e | ; <|--- Blan|
|00002ab0| 6b 20 6f 75 74 20 74 78 | 33 24 00 80 02 20 80 0b |k out tx|3$... ..|
|00002ac0| 00 80 07 00 80 02 20 80 | 08 00 3b 00 3b 20 2a 20 |...... .|..;.; * |
|00002ad0| 20 20 20 49 4e 49 54 20 | 20 20 20 2a 00 3b 00 80 | INIT | *.;..|
|00002ae0| c3 20 20 20 3b 20 3c 2d | 2d 2d 20 50 72 6f 67 72 |. ; <-|-- Progr|
|00002af0| 61 6d 20 63 61 6e 20 72 | 75 6e 20 66 72 6f 6d 20 |am can r|un from |
|00002b00| 57 42 00 cf 02 20 30 20 | 3b 20 3c 2d 2d 2d 20 53 |WB... 0 |; <--- S|
|00002b10| 63 72 65 65 6e 20 30 20 | 69 73 20 57 42 00 20 20 |creen 0 |is WB. |
|00002b20| 20 20 64 65 76 69 63 65 | 73 5f 67 65 74 20 7b 7d | device|s_get {}|
|00002b30| 00 00 64 72 69 76 65 3d | 30 00 3b 00 3b 20 2a 2a |..drive=|0.;.; **|
|00002b40| 2a 2a 2a 20 54 48 45 20 | 47 41 44 47 45 54 53 20 |*** THE |GADGETS |
|00002b50| 46 4f 52 20 44 52 49 56 | 45 53 20 2a 2a 2a 2a 2a |FOR DRIV|ES *****|
|00002b60| 00 3b 00 20 20 20 20 80 | 16 20 63 2e 77 3d 30 20 |.;. .|. c.w=0 |
|00002b70| 80 18 20 33 00 20 20 20 | 20 20 20 c6 01 20 30 2c |.. 3. | .. 0,|
|00002b80| 33 32 2b 78 2c 34 32 2c | 30 2c 63 2c 22 44 46 22 |32+x,42,|0,c,"DF"|
|00002b90| 2b dd 83 28 63 29 2b 22 | 3a 22 00 20 20 20 20 20 |+..(c)+"|:". |
|00002ba0| 20 78 2b 38 30 00 20 20 | c6 20 20 30 2c 63 00 20 | x+80. |. 0,c. |
|00002bb0| 20 20 20 80 17 20 63 00 | 63 6f 75 6e 74 3d 31 00 | .. c.|count=1.|
|00002bc0| 80 bb 00 80 0b 20 dc 81 | 28 64 65 76 69 63 65 6c |..... ..|(devicel|
|00002bd0| 69 73 74 24 28 63 6f 75 | 6e 74 29 2c 38 29 3d 22 |ist$(cou|nt),8)="|
|00002be0| 3c 44 45 56 3e 20 44 46 | 22 00 20 20 20 20 20 20 |<DEV> DF|". |
|00002bf0| 20 20 20 20 20 20 20 64 | 6c 24 3d dc 91 28 64 65 | d|l$=..(de|
|00002c00| 76 69 63 65 6c 69 73 74 | 24 28 63 6f 75 6e 74 29 |vicelist|$(count)|
|00002c10| 2c 36 29 00 80 16 20 6e | 3d 30 20 80 18 20 33 00 |,6)... n|=0 .. 3.|
|00002c20| 80 0b 20 64 6c 24 3d 22 | 44 46 22 2b dd 83 28 6e |.. dl$="|DF"+..(n|
|00002c30| 29 2b 22 3a 22 20 20 80 | 21 20 c6 1f 20 30 2c 6e |)+":" .|! .. 0,n|
|00002c40| 00 80 17 20 6e 00 80 02 | 20 80 0b 00 63 6f 75 6e |... n...| ...coun|
|00002c50| 74 2b 31 00 80 bc 20 64 | 65 76 69 63 65 6c 69 73 |t+1... d|evicelis|
|00002c60| 74 24 28 63 6f 75 6e 74 | 29 3d 22 22 00 3b 00 3b |t$(count|)="".;.;|
|00002c70| 20 2a 20 20 20 20 4f 50 | 45 4e 20 54 48 45 20 57 | * OP|EN THE W|
|00002c80| 49 4e 44 4f 57 20 20 20 | 20 20 20 2a 00 3b 00 00 |INDOW | *.;..|
|00002c90| c6 01 20 30 2c 32 30 2c | 32 30 2c 30 2c 37 2c 20 |.. 0,20,|20,0,7, |
|00002ca0| 22 49 6e 73 74 61 6c 6c | 22 00 c6 01 20 30 2c 31 |"Install|"... 0,1|
|00002cb0| 30 30 2c 32 30 2c 30 2c | 36 2c 22 52 65 6d 6f 76 |00,20,0,|6,"Remov|
|00002cc0| 65 20 22 00 c6 01 20 30 | 2c 31 38 30 2c 32 30 2c |e "... 0|,180,20,|
|00002cd0| 30 2c 35 2c 22 20 43 68 | 65 63 6b 20 22 00 c6 01 |0,5," Ch|eck "...|
|00002ce0| 20 30 2c 32 36 30 2c 32 | 30 2c 30 2c 34 2c 22 20 | 0,260,2|0,0,4," |
|00002cf0| 51 75 69 74 20 20 22 00 | c6 0e 20 30 2c 30 2c 80 |Quit ".|.. 0,0,.|
|00002d00| c5 00 00 00 c5 01 20 30 | 2c 31 35 30 2c 35 30 2c |...... 0|,150,50,|
|00002d10| 33 34 33 2c 31 30 30 2c | 24 31 30 30 65 2c 22 42 |343,100,|$100e,"B|
|00002d20| 4f 4f 54 20 42 4c 4b 20 | 43 48 4b 20 42 79 20 44 |OOT BLK |CHK By D|
|00002d30| 43 41 54 20 56 31 2e 30 | 30 20 4d 61 72 63 68 20 |CAT V1.0|0 March |
|00002d40| 39 34 22 2c 31 2c 33 2c | 30 00 c6 18 20 32 2c 31 |94",1,3,|0... 2,1|
|00002d50| 00 c6 10 20 31 37 2c 31 | 38 2c 33 31 30 2c 31 36 |... 17,1|8,310,16|
|00002d60| 00 c6 10 20 31 37 2c 34 | 30 2c 33 31 30 2c 31 36 |... 17,4|0,310,16|
|00002d70| 00 c6 10 20 31 37 2c 36 | 32 2c 33 31 30 2c 33 32 |... 17,6|2,310,32|
|00002d80| 00 c5 10 20 32 30 2c 35 | 32 20 3a 20 dd 81 20 22 |... 20,5|2 : .. "|
|00002d90| 4f 2f 53 79 73 74 65 6d | 20 2d 22 00 c5 10 20 32 |O/System| -"... 2|
|00002da0| 30 2c 36 32 20 3a 20 dd | 81 20 22 46 6f 72 6d 61 |0,62 : .|. "Forma|
|00002db0| 74 20 20 20 2d 22 00 c5 | 10 20 32 30 2c 37 32 20 |t -"..|. 20,72 |
|00002dc0| 3a 20 dd 81 20 22 42 6f | 6f 74 61 62 6c 65 20 2d |: .. "Bo|otable -|
|00002dd0| 22 00 00 80 bb 00 65 76 | 3d c5 02 00 67 68 2e 62 |".....ev|=...gh.b|
|00002de0| 3d c5 04 00 00 20 20 80 | 0b 20 65 76 3d 24 34 30 |=.... .|. ev=$40|
|00002df0| 20 80 21 20 80 06 20 73 | 65 6c 65 63 74 5f 64 72 | .! .. s|elect_dr|
|00002e00| 69 76 65 00 00 80 0b 20 | 65 76 3d 24 32 30 30 20 |ive.... |ev=$200 |
|00002e10| 80 8a 20 67 68 3d 34 20 | 80 21 20 80 02 00 80 0b |.. gh=4 |.! .....|
|00002e20| 20 67 68 3e 34 20 80 21 | 20 80 06 20 67 65 74 5f | gh>4 .!| .. get_|
|00002e30| 72 65 61 64 79 20 20 3a | 20 67 68 3d 30 00 00 80 |ready :| gh=0...|
|00002e40| c7 00 00 80 02 00 3b 00 | 3b 20 2a 20 53 55 42 52 |......;.|; * SUBR|
|00002e50| 4f 55 54 49 4e 45 53 20 | 2a 00 3b 00 3b 20 2d 2d |OUTINES |*.;.; --|
|00002e60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002e70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002e80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002e90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002ea0| 2d 2d 2d 2d 2d 2d 00 3b | 20 2a 20 20 20 20 20 53 |------.;| * S|
|00002eb0| 45 4c 45 43 54 20 44 52 | 49 56 45 2f 53 20 20 20 |ELECT DR|IVE/S |
|00002ec0| 20 20 2a 00 3b 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | *.; --|--------|
|00002ed0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002ee0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002ef0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002f00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 00 73 |--------|------.s|
|00002f10| 65 6c 65 63 74 5f 64 72 | 69 76 65 3a 00 80 0b 20 |elect_dr|ive:... |
|00002f20| 67 68 3c 3e 64 72 69 76 | 65 00 20 20 80 0b 20 67 |gh<>driv|e. .. g|
|00002f30| 68 3c 34 00 20 20 20 20 | c6 0e 20 30 2c 64 72 69 |h<4. |.. 0,dri|
|00002f40| 76 65 2c 80 c5 20 3a 20 | 20 c6 0b 20 30 2c 64 72 |ve,.. : | .. 0,dr|
|00002f50| 69 76 65 00 20 20 20 20 | 20 20 c6 0e 20 30 2c 64 |ive. | .. 0,d|
|00002f60| 72 69 76 65 2c 80 c6 20 | 3a 20 20 c6 0b 20 30 2c |rive,.. |: .. 0,|
|00002f70| 64 72 69 76 65 00 20 20 | 20 20 20 20 64 72 69 76 |drive. | driv|
|00002f80| 65 3d 67 68 00 20 20 20 | 20 c6 0e 20 30 2c 64 72 |e=gh. | .. 0,dr|
|00002f90| 69 76 65 2c 80 c5 20 3a | 20 c6 0b 20 30 2c 64 72 |ive,.. :| .. 0,dr|
|00002fa0| 69 76 65 00 20 20 80 02 | 20 80 0b 00 80 02 20 80 |ive. ..| ..... .|
|00002fb0| 0b 00 80 07 00 3b 00 3b | 20 2a 20 47 45 54 20 4d |.....;.;| * GET M|
|00002fc0| 53 47 20 50 4f 52 54 20 | 45 54 43 20 52 45 41 44 |SG PORT |ETC READ|
|00002fd0| 59 20 2a 00 3b 00 67 65 | 74 5f 72 65 61 64 79 3a |Y *.;.ge|t_ready:|
|00002fe0| 00 00 20 20 20 73 69 67 | 6e 61 6c 6e 75 6d 62 65 |.. sig|nalnumbe|
|00002ff0| 72 3d 54 44 31 5f 61 6c | 6c 6f 63 73 69 67 6e 61 |r=TD1_al|locsigna|
|00003000| 6c 20 7b 7d 00 00 80 0b | 20 73 69 67 6e 61 6c 6e |l {}....| signaln|
|00003010| 75 6d 62 65 72 3c 30 20 | 80 21 20 61 64 64 5f 74 |umber<0 |.! add_t|
|00003020| 6f 5f 65 72 72 6f 72 6c | 69 73 74 20 7b 31 2c 31 |o_errorl|ist {1,1|
|00003030| 30 7d 20 3a 20 80 05 20 | 65 72 72 6f 72 00 00 20 |0} : .. |error.. |
|00003040| 20 20 20 20 6d 73 67 70 | 6f 72 74 6c 6f 63 3d 54 | msgp|ortloc=T|
|00003050| 44 31 5f 6d 73 67 70 6f | 72 74 20 7b 73 69 67 6e |D1_msgpo|rt {sign|
|00003060| 61 6c 6e 75 6d 62 65 72 | 7d 00 20 69 6f 70 6f 72 |alnumber|}. iopor|
|00003070| 74 6c 6f 63 5f 72 65 61 | 64 3d 54 44 5f 69 6f 70 |tloc_rea|d=TD_iop|
|00003080| 6f 72 74 20 7b 6d 73 67 | 70 6f 72 74 6c 6f 63 7d |ort {msg|portloc}|
|00003090| 00 69 6f 70 6f 72 74 6c | 6f 63 5f 77 72 69 74 65 |.ioportl|oc_write|
|000030a0| 3d 54 44 5f 69 6f 70 6f | 72 74 20 7b 6d 73 67 70 |=TD_iopo|rt {msgp|
|000030b0| 6f 72 74 6c 6f 63 7d 00 | 00 72 64 3d 54 44 5f 72 |ortloc}.|.rd=TD_r|
|000030c0| 65 61 64 79 64 65 76 69 | 63 65 20 7b 69 6f 70 6f |eadydevi|ce {iopo|
|000030d0| 72 74 6c 6f 63 5f 72 65 | 61 64 2c 69 6f 70 6f 72 |rtloc_re|ad,iopor|
|000030e0| 74 6c 6f 63 5f 77 72 69 | 74 65 2c 64 72 69 76 65 |tloc_wri|te,drive|
|000030f0| 2c 64 72 69 76 65 7d 00 | 00 00 80 0b 20 67 68 3d |,drive}.|.... gh=|
|00003100| 35 20 80 21 20 80 06 20 | 63 68 65 63 6b 5f 64 69 |5 .! .. |check_di|
|00003110| 73 6b 00 80 0b 20 67 68 | 3d 36 20 80 21 20 80 06 |sk... gh|=6 .! ..|
|00003120| 20 72 65 6d 6f 76 65 5f | 62 6f 6f 74 5f 62 6c 6f | remove_|boot_blo|
|00003130| 63 6b 00 80 0b 20 67 68 | 3d 37 20 80 21 20 80 06 |ck... gh|=7 .! ..|
|00003140| 20 69 6e 73 74 61 6c 6c | 5f 64 69 73 6b 00 00 00 | install|_disk...|
|00003150| 20 20 c5 37 20 20 20 20 | 20 20 20 20 20 20 20 20 | .7 | |
|00003160| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 3c 2d | | ; <-|
|00003170| 2d 2d 20 4e 6f 20 6f 76 | 65 72 66 6c 6f 77 00 00 |-- No ov|erflow..|
|00003180| 63 64 3d 45 58 45 43 5f | 63 6c 6f 73 65 64 65 76 |cd=EXEC_|closedev|
|00003190| 69 63 65 7b 69 6f 70 6f | 72 74 6c 6f 63 5f 72 65 |ice{iopo|rtloc_re|
|000031a0| 61 64 7d 00 63 64 3d 45 | 58 45 43 5f 63 6c 6f 73 |ad}.cd=E|XEC_clos|
|000031b0| 65 64 65 76 69 63 65 7b | 69 6f 70 6f 72 74 6c 6f |edevice{|ioportlo|
|000031c0| 63 5f 77 72 69 74 65 7d | 00 00 74 64 66 72 65 65 |c_write}|..tdfree|
|000031d0| 3d 54 44 5f 66 72 65 65 | 6d 65 6d 20 7b 6d 73 67 |=TD_free|mem {msg|
|000031e0| 70 6f 72 74 6c 6f 63 2c | 69 6f 70 6f 72 74 6c 6f |portloc,|ioportlo|
|000031f0| 63 5f 72 65 61 64 2c 69 | 6f 70 6f 72 74 6c 6f 63 |c_read,i|oportloc|
|00003200| 5f 77 72 69 74 65 7d 00 | 00 54 44 5f 66 72 65 65 |_write}.|.TD_free|
|00003210| 73 69 67 6e 61 6c 20 7b | 73 69 67 6e 61 6c 6e 75 |signal {|signalnu|
|00003220| 6d 62 65 72 7d 00 3b 20 | 2d 2d 2d 2d 2d 2d 2d 2d |mber}.; |--------|
|00003230| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003240| 2d 2d 00 3b 20 2a 20 20 | 20 44 49 44 20 41 4e 20 |--.; * | DID AN |
|00003250| 45 52 52 4f 52 20 4f 43 | 43 55 52 20 20 20 2a 00 |ERROR OC|CUR *.|
|00003260| 3b 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |; ------|--------|
|00003270| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 00 65 72 72 |--------|----.err|
|00003280| 6f 72 3a 00 80 0b 20 c0 | 01 20 28 65 72 72 6f 72 |or:... .|. (error|
|00003290| 6c 69 73 74 24 28 29 29 | 00 80 06 20 62 6c 61 6e |list$())|... blan|
|000032a0| 6b 5f 74 65 78 74 00 20 | 65 72 72 6f 72 5f 77 69 |k_text. |error_wi|
|000032b0| 6e 64 6f 77 20 7b 65 72 | 72 6f 72 6c 69 73 74 24 |ndow {er|rorlist$|
|000032c0| 28 29 7d 00 80 02 20 80 | 0b 00 c0 07 20 65 72 72 |()}... .|.... err|
|000032d0| 6f 72 6c 69 73 74 24 28 | 29 20 20 20 20 20 20 20 |orlist$(|) |
|000032e0| 20 20 20 20 20 20 20 3b | 20 3c 2d 2d 2d 20 52 65 | ;| <--- Re|
|000032f0| 61 64 79 20 66 6f 72 20 | 6d 6f 72 65 20 65 72 72 |ady for |more err|
|00003300| 6f 72 73 00 80 07 00 3b | 20 2d 2d 2d 2d 2d 2d 2d |ors....;| -------|
|00003310| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003320| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003330| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003340| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003350| 2d 2d 00 3b 20 2a 20 43 | 48 45 43 4b 20 42 4f 4f |--.; * C|HECK BOO|
|00003360| 54 20 42 4c 4f 43 4b 00 | 3b 20 2d 2d 2d 2d 2d 2d |T BLOCK.|; ------|
|00003370| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003380| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003390| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000033a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000033b0| 2d 2d 2d 00 63 68 65 63 | 6b 5f 64 69 73 6b 3a 00 |---.chec|k_disk:.|
|000033c0| 80 06 20 72 65 61 64 5f | 62 6f 6f 74 5f 62 6c 6f |.. read_|boot_blo|
|000033d0| 63 6b 00 66 6d 61 74 3d | da 02 2e 6c 20 28 62 62 |ck.fmat=|...l (bb|
|000033e0| 75 66 66 65 72 29 20 20 | 3b 20 3c 2d 2d 2d 20 44 |uffer) |; <--- D|
|000033f0| 69 73 6b 20 66 6f 72 6d | 61 74 00 80 0b 20 66 6d |isk form|at... fm|
|00003400| 61 74 3d 24 34 34 34 66 | 35 33 30 30 20 80 21 20 |at=$444f|5300 .! |
|00003410| 20 73 79 73 24 3d 22 32 | 2e 30 22 20 3a 20 66 6d | sys$="2|.0" : fm|
|00003420| 61 74 24 3d 22 4f 6c 64 | 20 46 69 6c 65 20 53 79 |at$="Old| File Sy|
|00003430| 73 74 65 6d 22 00 80 0b | 20 66 6d 61 74 3d 24 34 |stem"...| fmat=$4|
|00003440| 34 34 66 35 33 30 31 20 | 80 21 20 20 73 79 73 24 |44f5301 |.! sys$|
|00003450| 3d 22 32 2e 30 22 20 3a | 20 66 6d 61 74 24 3d 22 |="2.0" :| fmat$="|
|00003460| 46 61 73 74 20 46 69 6c | 65 20 53 79 73 74 65 6d |Fast Fil|e System|
|00003470| 22 00 80 0b 20 66 6d 61 | 74 3d 24 34 34 34 66 35 |"... fma|t=$444f5|
|00003480| 33 30 32 20 80 21 20 20 | 73 79 73 24 3d 22 33 2e |302 .! |sys$="3.|
|00003490| 30 22 20 3a 20 66 6d 61 | 74 24 3d 22 4f 46 53 79 |0" : fma|t$="OFSy|
|000034a0| 73 74 65 6d 20 2f 20 49 | 6e 74 20 4d 6f 64 65 22 |stem / I|nt Mode"|
|000034b0| 00 80 0b 20 66 6d 61 74 | 3d 24 34 34 34 66 35 33 |... fmat|=$444f53|
|000034c0| 30 33 20 80 21 20 20 73 | 79 73 24 3d 22 33 2e 30 |03 .! s|ys$="3.0|
|000034d0| 22 20 3a 20 66 6d 61 74 | 24 3d 22 46 46 53 79 73 |" : fmat|$="FFSys|
|000034e0| 74 65 6d 20 2f 20 49 6e | 74 20 4d 6f 64 65 22 00 |tem / In|t Mode".|
|000034f0| 80 0b 20 66 6d 61 74 3d | 24 34 34 34 66 35 33 30 |.. fmat=|$444f530|
|00003500| 34 20 80 21 20 20 73 79 | 73 24 3d 22 33 2e 30 22 |4 .! sy|s$="3.0"|
|00003510| 20 3a 20 66 6d 61 74 24 | 3d 22 4f 46 53 79 73 74 | : fmat$|="OFSyst|
|00003520| 65 6d 20 2f 20 44 69 72 | 20 43 61 63 68 65 22 00 |em / Dir| Cache".|
|00003530| 80 0b 20 66 6d 61 74 3d | 24 34 34 34 66 35 33 30 |.. fmat=|$444f530|
|00003540| 35 20 80 21 20 20 73 79 | 73 24 3d 22 33 2e 30 22 |5 .! sy|s$="3.0"|
|00003550| 20 3a 20 66 6d 61 74 24 | 3d 22 46 46 53 79 73 74 | : fmat$|="FFSyst|
|00003560| 65 6d 20 2f 20 44 69 72 | 20 43 61 63 68 65 22 00 |em / Dir| Cache".|
|00003570| 68 2e 6c 3d da 02 2e 6c | 20 28 62 62 75 66 66 65 |h.l=...l| (bbuffe|
|00003580| 72 2b 39 32 29 00 80 0b | 20 68 3d 24 37 39 30 30 |r+92)...| h=$7900|
|00003590| 30 30 30 30 20 80 21 20 | 62 6f 6f 74 24 3d 22 59 |0000 .! |boot$="Y|
|000035a0| 65 73 22 20 80 22 20 62 | 6f 6f 74 24 3d 22 20 4e |es" ." b|oot$=" N|
|000035b0| 6f 22 00 68 2e 6c 3d da | 02 2e 6c 20 28 62 62 75 |o".h.l=.|..l (bbu|
|000035c0| 66 66 65 72 2b 34 38 29 | 00 80 0b 20 68 3d 24 37 |ffer+48)|... h=$7|
|000035d0| 39 30 30 30 30 30 30 20 | 80 21 20 62 6f 6f 74 24 |9000000 |.! boot$|
|000035e0| 3d 22 59 65 73 22 20 3a | 20 73 79 73 24 3d 22 31 |="Yes" :| sys$="1|
|000035f0| 2e 33 22 00 00 00 68 3d | da 02 2e 6c 20 28 62 62 |.3"...h=|...l (bb|
|00003600| 75 66 66 65 72 2b 31 30 | 30 29 00 63 6f 75 6e 74 |uffer+10|0).count|
|00003610| 3d 30 00 80 0b 20 68 3c | 3e 30 20 80 42 20 68 3c |=0... h<|>0 .B h<|
|00003620| 3e 66 6d 61 74 00 62 6f | 6f 74 24 3d 22 4e 6f 6e |>fmat.bo|ot$="Non|
|00003630| 2d 53 74 61 6e 64 61 72 | 64 20 42 6f 6f 74 20 42 |-Standar|d Boot B|
|00003640| 6c 6f 63 6b 22 00 00 20 | 20 20 20 20 20 6e 61 6d |lock".. | nam|
|00003650| 65 24 3d dc 88 28 22 20 | 22 2c 31 33 29 20 20 20 |e$=..(" |",13) |
|00003660| 20 20 20 20 20 20 20 3b | 20 3c 2d 2d 2d 20 43 72 | ;| <--- Cr|
|00003670| 65 61 74 65 20 65 6e 6f | 75 67 68 20 73 70 61 63 |eate eno|ugh spac|
|00003680| 65 73 20 69 6e 20 76 61 | 72 69 61 62 6c 65 00 20 |es in va|riable. |
|00003690| 20 20 20 80 16 20 6e 3d | 62 62 75 66 66 65 72 2b | .. n=|bbuffer+|
|000036a0| 36 32 39 20 80 18 20 62 | 62 75 66 66 65 72 2b 36 |629 .. b|buffer+6|
|000036b0| 34 31 20 20 3b 20 3c 2d | 2d 2d 20 43 68 65 63 6b |41 ; <-|-- Check|
|000036c0| 20 66 6f 72 20 7a 65 72 | 6f 76 69 72 75 73 20 49 | for zer|ovirus I|
|000036d0| 49 49 00 20 20 20 20 20 | 20 da 01 2e 62 20 28 26 |II. | ...b (&|
|000036e0| 6e 61 6d 65 24 2b 63 6f | 75 6e 74 29 2c da 02 2e |name$+co|unt),...|
|000036f0| 62 28 6e 29 20 3b 20 3c | 2d 2d 2d 20 62 6f 6f 74 |b(n) ; <|--- boot|
|00003700| 62 6c 6f 63 6b 00 63 6f | 75 6e 74 2b 31 00 20 20 |block.co|unt+1. |
|00003710| 20 20 80 17 20 6e 00 00 | 63 6f 75 6e 74 3d 30 00 | .. n..|count=0.|
|00003720| 00 20 20 20 20 20 20 6e | 61 6d 65 31 24 3d dc 88 |. n|ame1$=..|
|00003730| 28 22 20 22 2c 32 32 29 | 20 20 20 20 20 20 20 20 |(" ",22)| |
|00003740| 20 20 3b 20 3c 2d 2d 2d | 20 43 72 65 61 74 65 20 | ; <---| Create |
|00003750| 65 6e 6f 75 67 68 20 73 | 70 61 63 65 73 20 69 6e |enough s|paces in|
|00003760| 20 76 61 72 69 61 62 6c | 65 00 20 20 20 20 80 16 | variabl|e. ..|
|00003770| 20 6e 3d 62 62 75 66 66 | 65 72 2b 33 34 32 20 80 | n=bbuff|er+342 .|
|00003780| 18 20 62 62 75 66 66 65 | 72 2b 33 36 33 20 20 3b |. bbuffe|r+363 ;|
|00003790| 20 3c 2d 2d 2d 20 43 68 | 65 63 6b 20 66 6f 72 20 | <--- Ch|eck for |
|000037a0| 78 63 6f 70 79 20 62 6f | 6f 74 62 6c 6f 63 6b 00 |xcopy bo|otblock.|
|000037b0| 20 20 20 20 20 20 da 01 | 2e 62 20 28 26 6e 61 6d | ..|.b (&nam|
|000037c0| 65 31 24 2b 63 6f 75 6e | 74 29 2c da 02 2e 62 28 |e1$+coun|t),...b(|
|000037d0| 6e 29 00 63 6f 75 6e 74 | 2b 31 00 20 20 20 20 80 |n).count|+1. .|
|000037e0| 17 20 6e 00 00 80 02 20 | 80 0b 00 80 0b 20 68 3d |. n.... |..... h=|
|000037f0| 66 6d 61 74 20 80 21 20 | 73 79 73 24 3d 22 31 2e |fmat .! |sys$="1.|
|00003800| 33 22 00 00 80 0b 20 6e | 61 6d 65 24 3d 22 5a 65 |3".... n|ame$="Ze|
|00003810| 72 6f 56 69 72 75 73 20 | 49 49 49 22 20 20 20 20 |roVirus |III" |
|00003820| 20 20 20 3b 20 3c 2d 2d | 2d 20 42 4f 4f 54 42 4c | ; <--|- BOOTBL|
|00003830| 4f 43 4b 20 49 6e 73 74 | 61 6c 6c 65 64 20 62 79 |OCK Inst|alled by|
|00003840| 00 73 79 73 24 2b 22 20 | 20 20 22 2b 66 6d 61 74 |.sys$+" | "+fmat|
|00003850| 24 00 66 6d 61 74 24 3d | 22 43 6f 75 6c 64 20 62 |$.fmat$=|"Could b|
|00003860| 65 20 22 2b 6e 61 6d 65 | 24 2b 22 20 3f 22 00 80 |e "+name|$+" ?"..|
|00003870| 02 20 80 0b 00 00 80 0b | 20 6e 61 6d 65 31 24 3d |. ......| name1$=|
|00003880| 22 4e 4f 20 56 49 52 55 | 53 20 4f 4e 20 42 4f 4f |"NO VIRU|S ON BOO|
|00003890| 54 42 4c 4f 43 4b 21 22 | 20 20 20 3b 20 3c 2d 2d |TBLOCK!"| ; <--|
|000038a0| 2d 20 42 4f 4f 54 42 4c | 4f 43 4b 20 49 6e 73 74 |- BOOTBL|OCK Inst|
|000038b0| 61 6c 6c 65 64 20 62 79 | 20 58 43 4f 50 59 00 73 |alled by| XCOPY.s|
|000038c0| 79 73 24 2b 22 20 20 20 | 22 2b 66 6d 61 74 24 00 |ys$+" |"+fmat$.|
|000038d0| 66 6d 61 74 24 3d 22 43 | 6f 75 6c 64 20 62 65 20 |fmat$="C|ould be |
|000038e0| 58 43 4f 50 59 20 3f 22 | 00 80 02 20 80 0b 00 00 |XCOPY ?"|... ....|
|000038f0| 68 3d da 02 2e 6c 20 28 | 62 62 75 66 66 65 72 2b |h=...l (|bbuffer+|
|00003900| 34 29 00 80 06 20 62 6c | 61 6e 6b 5f 74 65 78 74 |4)... bl|ank_text|
|00003910| 00 c5 10 20 31 33 30 2c | 35 32 20 3a 20 dd 81 20 |... 130,|52 : .. |
|00003920| 73 79 73 24 00 c5 10 20 | 31 33 30 2c 36 32 20 3a |sys$... |130,62 :|
|00003930| 20 dd 81 20 66 6d 61 74 | 24 00 c5 10 20 31 33 30 | .. fmat|$... 130|
|00003940| 2c 37 32 20 3a 20 dd 81 | 20 62 6f 6f 74 24 00 74 |,72 : ..| boot$.t|
|00003950| 64 66 72 65 65 3d 45 58 | 45 43 5f 66 72 65 65 6d |dfree=EX|EC_freem|
|00003960| 65 6d 20 7b 62 62 75 66 | 66 65 72 2c 35 36 33 32 |em {bbuf|fer,5632|
|00003970| 7d 20 3b 20 3c 2d 2d 2d | 20 46 72 65 65 20 62 75 |} ; <---| Free bu|
|00003980| 66 66 65 72 00 64 65 72 | 72 3a 00 54 44 31 5f 64 |ffer.der|r:.TD1_d|
|00003990| 72 69 76 65 6d 6f 74 6f | 72 20 7b 69 6f 70 6f 72 |rivemoto|r {iopor|
|000039a0| 74 6c 6f 63 5f 72 65 61 | 64 2c 30 7d 20 20 20 20 |tloc_rea|d,0} |
|000039b0| 3b 20 3c 2d 2d 2d 20 52 | 65 61 64 20 64 72 69 76 |; <--- R|ead driv|
|000039c0| 65 20 6d 6f 74 6f 72 20 | 6f 66 66 00 66 6d 61 74 |e motor |off.fmat|
|000039d0| 3d 30 20 3a 20 68 3d 30 | 20 3a 20 62 6f 6f 74 24 |=0 : h=0| : boot$|
|000039e0| 3d 22 22 20 3a 20 73 79 | 73 24 3d 22 22 20 3a 20 |="" : sy|s$="" : |
|000039f0| 66 6d 61 74 24 3d 22 22 | 20 3a 20 6e 61 6d 65 24 |fmat$=""| : name$|
|00003a00| 3d 22 22 20 3a 20 6e 61 | 6d 65 31 24 3d 22 22 00 |="" : na|me1$="".|
|00003a10| 80 07 00 3b 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...; ---|--------|
|00003a20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003a30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003a40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003a50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 00 3b |--------|------.;|
|00003a60| 20 2a 20 49 4e 53 54 41 | 4c 4c 20 41 20 42 4f 4f | * INSTA|LL A BOO|
|00003a70| 54 20 42 4c 4f 43 4b 20 | 4f 4e 54 4f 20 44 49 53 |T BLOCK |ONTO DIS|
|00003a80| 4b 20 2a 00 3b 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |K *.; --|--------|
|00003a90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003aa0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003ab0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003ac0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 00 |--------|-------.|
|00003ad0| 69 6e 73 74 61 6c 6c 5f | 64 69 73 6b 3a 00 63 6f |install_|disk:.co|
|00003ae0| 75 6e 74 3d 30 20 20 20 | 20 20 20 20 20 20 20 20 |unt=0 | |
|00003af0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003b00| 20 20 20 3b 20 3c 2d 2d | 2d 20 4d 61 6b 65 20 73 | ; <--|- Make s|
|00003b10| 75 72 65 20 63 6f 75 6e | 74 65 72 20 69 73 20 7a |ure coun|ter is z|
|00003b20| 65 72 6f 00 80 c8 20 6f | 66 73 20 20 20 20 20 20 |ero... o|fs |
|00003b30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003b40| 20 20 20 20 3b 20 3c 2d | 2d 2d 20 53 74 61 72 74 | ; <-|-- Start|
|00003b50| 20 6f 66 20 64 61 74 61 | 00 20 20 80 06 20 72 65 | of data|. .. re|
|00003b60| 61 64 5f 62 6f 6f 74 5f | 62 6c 6f 63 6b 20 20 20 |ad_boot_|block |
|00003b70| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 3c 2d 2d | | ; <--|
|00003b80| 2d 20 52 65 61 64 20 64 | 61 74 61 20 66 72 6f 6d |- Read d|ata from|
|00003b90| 20 64 69 73 6b 00 20 20 | 20 20 66 6d 61 74 3d da | disk. | fmat=.|
|00003ba0| 02 2e 6c 28 62 62 75 66 | 66 65 72 29 20 20 20 20 |..l(bbuf|fer) |
|00003bb0| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00003bc0| 57 68 61 74 20 66 6f 72 | 6d 61 74 00 80 16 20 6e |What for|mat... n|
|00003bd0| 3d 62 62 75 66 66 65 72 | 20 80 18 20 62 62 75 66 |=bbuffer| .. bbuf|
|00003be0| 66 65 72 2b 31 30 32 30 | 20 80 19 20 34 20 3a 20 |fer+1020| .. 4 : |
|00003bf0| da 01 2e 6c 20 6e 2c 30 | 20 3a 20 80 17 20 3b 20 |...l n,0| : .. ; |
|00003c00| 3c 2d 2d 2d 20 5a 65 72 | 6f 20 62 6f 6f 74 20 62 |<--- Zer|o boot b|
|00003c10| 6c 6b 00 20 20 80 16 20 | 6e 3d 62 62 75 66 66 65 |lk. .. |n=bbuffe|
|00003c20| 72 2b 38 20 80 18 20 62 | 62 75 66 66 65 72 2b 32 |r+8 .. b|buffer+2|
|00003c30| 35 32 20 80 19 20 34 20 | 20 20 3b 20 3c 2d 2d 2d |52 .. 4 | ; <---|
|00003c40| 20 4d 61 6b 65 20 73 75 | 72 65 20 42 6f 6f 74 20 | Make su|re Boot |
|00003c50| 42 6c 6b 20 69 73 20 65 | 6d 70 74 79 00 20 20 20 |Blk is e|mpty. |
|00003c60| 20 80 0b 20 63 6f 75 6e | 74 3c 32 32 20 20 20 20 | .. coun|t<22 |
|00003c70| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003c80| 20 20 3b 20 3c 2d 2d 2d | 20 42 6f 6f 74 20 42 6c | ; <---| Boot Bl|
|00003c90| 6b 20 44 61 74 61 00 20 | 20 20 20 20 20 80 1b 20 |k Data. | .. |
|00003ca0| 68 78 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |hx | |
|00003cb0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 3c 2d 2d 2d | | ; <---|
|00003cc0| 20 47 65 74 20 74 68 65 | 20 64 61 74 61 00 20 20 | Get the| data. |
|00003cd0| 20 20 20 20 20 20 da 01 | 2e 6c 20 6e 2c 68 78 20 | ..|.l n,hx |
|00003ce0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003cf0| 20 3b 20 3c 2d 2d 2d 20 | 50 6c 61 63 65 20 64 61 | ; <--- |Place da|
|00003d00| 74 61 20 69 6e 20 62 75 | 66 66 65 72 00 20 20 20 |ta in bu|ffer. |
|00003d10| 20 20 20 63 6f 75 6e 74 | 2b 31 20 20 20 20 20 20 | count|+1 |
|00003d20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003d30| 20 20 3b 20 3c 2d 2d 2d | 20 43 6f 75 6e 74 65 72 | ; <---| Counter|
|00003d40| 00 20 20 20 20 80 02 20 | 80 0b 00 20 20 80 17 20 |. .. |... .. |
|00003d50| 6e 00 3b 00 3b 20 2a 20 | 54 48 45 20 43 48 45 43 |n.;.; * |THE CHEC|
|00003d60| 4b 20 53 55 4d 20 2a 00 | 3b 00 80 0b 20 66 6d 61 |K SUM *.|;... fma|
|00003d70| 74 3d 24 34 34 34 66 35 | 33 30 30 20 80 21 20 20 |t=$444f5|300 .! |
|00003d80| 63 68 6b 73 75 6d 3d 24 | 65 33 33 64 30 65 37 33 |chksum=$|e33d0e73|
|00003d90| 00 20 20 80 0b 20 66 6d | 61 74 3d 24 34 34 34 66 |. .. fm|at=$444f|
|00003da0| 35 33 30 31 20 80 21 20 | 20 63 68 6b 73 75 6d 3d |5301 .! | chksum=|
|00003db0| 24 65 33 33 64 30 65 37 | 32 00 20 20 20 20 80 0b |$e33d0e7|2. ..|
|00003dc0| 20 66 6d 61 74 3d 24 34 | 34 34 66 35 33 30 32 20 | fmat=$4|44f5302 |
|00003dd0| 80 21 20 20 63 68 6b 73 | 75 6d 3d 24 65 33 33 64 |.! chks|um=$e33d|
|00003de0| 30 65 37 31 00 20 20 20 | 20 80 0b 20 66 6d 61 74 |0e71. | .. fmat|
|00003df0| 3d 24 34 34 34 66 35 33 | 30 33 20 80 21 20 20 63 |=$444f53|03 .! c|
|00003e00| 68 6b 73 75 6d 3d 24 65 | 33 33 64 30 65 37 30 00 |hksum=$e|33d0e70.|
|00003e10| 20 20 80 0b 20 66 6d 61 | 74 3d 24 34 34 34 66 35 | .. fma|t=$444f5|
|00003e20| 33 30 34 20 80 21 20 20 | 63 68 6b 73 75 6d 3d 24 |304 .! |chksum=$|
|00003e30| 65 33 33 64 30 65 36 66 | 00 80 0b 20 66 6d 61 74 |e33d0e6f|... fmat|
|00003e40| 3d 24 34 34 34 66 35 33 | 30 35 20 80 21 20 20 63 |=$444f53|05 .! c|
|00003e50| 68 6b 73 75 6d 3d 24 65 | 33 33 64 30 65 36 65 00 |hksum=$e|33d0e6e.|
|00003e60| 20 20 da 01 20 62 62 75 | 66 66 65 72 2c 66 6d 61 | .. bbu|ffer,fma|
|00003e70| 74 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |t | |
|00003e80| 20 20 20 3b 20 3c 2d 2d | 2d 20 44 69 73 6b 20 66 | ; <--|- Disk f|
|00003e90| 6f 72 6d 61 74 00 20 20 | da 01 20 62 62 75 66 66 |ormat. |.. bbuff|
|00003ea0| 65 72 2b 34 2c 63 68 6b | 73 75 6d 20 20 20 20 20 |er+4,chk|sum |
|00003eb0| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00003ec0| 54 68 65 20 63 68 65 63 | 6b 73 75 6d 00 80 06 20 |The chec|ksum... |
|00003ed0| 77 72 69 74 65 5f 62 6f | 6f 74 5f 62 6c 6f 63 6b |write_bo|ot_block|
|00003ee0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00003ef0| 20 3c 2d 2d 2d 20 57 72 | 69 74 65 20 74 68 65 20 | <--- Wr|ite the |
|00003f00| 62 75 66 66 65 72 00 80 | 07 00 3b 20 2d 2d 2d 2d |buffer..|..; ----|
|00003f10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003f20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003f30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003f40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003f50| 2d 2d 2d 2d 2d 00 3b 20 | 2a 20 52 45 4d 4f 56 45 |-----.; |* REMOVE|
|00003f60| 20 42 4f 4f 54 20 42 4c | 4f 43 4b 20 2a 00 3b 20 | BOOT BL|OCK *.; |
|00003f70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003f80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003f90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003fa0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003fb0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 00 72 65 6d 6f 76 65 |--------|-.remove|
|00003fc0| 5f 62 6f 6f 74 5f 62 6c | 6f 63 6b 3a 00 20 20 64 |_boot_bl|ock:. d|
|00003fd0| 24 3d 22 44 43 41 54 22 | 20 20 20 20 20 20 20 20 |$="DCAT"| |
|00003fe0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003ff0| 20 20 3b 20 3c 2d 2d 2d | 20 44 43 41 54 00 20 20 | ; <---| DCAT. |
|00004000| 20 20 80 06 20 72 65 61 | 64 5f 62 6f 6f 74 5f 62 | .. rea|d_boot_b|
|00004010| 6c 6f 63 6b 20 20 20 20 | 20 20 20 20 20 20 20 20 |lock | |
|00004020| 3b 20 3c 2d 2d 2d 20 44 | 61 74 61 20 74 6f 20 42 |; <--- D|ata to B|
|00004030| 75 66 66 65 72 00 20 20 | 20 20 20 20 66 6d 61 74 |uffer. | fmat|
|00004040| 3d da 02 2e 6c 28 62 62 | 75 66 66 65 72 29 20 20 |=...l(bb|uffer) |
|00004050| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00004060| 57 68 61 74 20 66 6f 72 | 6d 61 74 00 80 16 20 6e |What for|mat... n|
|00004070| 3d 62 62 75 66 66 65 72 | 20 80 18 20 62 62 75 66 |=bbuffer| .. bbuf|
|00004080| 66 65 72 2b 35 30 38 20 | 80 19 20 34 20 20 3b 20 |fer+508 |.. 4 ; |
|00004090| 3c 2d 2d 2d 20 31 73 74 | 20 42 6c 6f 63 6b 20 74 |<--- 1st| Block t|
|000040a0| 6f 20 7a 65 72 6f 00 20 | 20 da 01 2e 6c 20 6e 2c |o zero. | ...l n,|
|000040b0| 30 00 80 17 20 6e 00 80 | 16 20 6e 3d 62 62 75 66 |0... n..|. n=bbuf|
|000040c0| 66 65 72 2b 35 31 32 20 | 80 18 20 62 62 75 66 66 |fer+512 |.. bbuff|
|000040d0| 65 72 2b 31 30 32 30 20 | 80 19 20 34 20 3b 20 3c |er+1020 |.. 4 ; <|
|000040e0| 2d 2d 2d 20 32 6e 64 20 | 62 6c 6f 63 6b 20 74 6f |--- 2nd |block to|
|000040f0| 20 44 43 41 54 00 20 20 | da 01 2e 6c 20 6e 2c da | DCAT. |...l n,.|
|00004100| 02 28 26 64 24 29 00 80 | 17 20 6e 00 20 20 da 01 |.(&d$)..|. n. ..|
|00004110| 20 62 62 75 66 66 65 72 | 2c 66 6d 61 74 20 20 20 | bbuffer|,fmat |
|00004120| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00004130| 20 3c 2d 2d 2d 20 44 69 | 73 6b 20 66 6f 72 6d 61 | <--- Di|sk forma|
|00004140| 74 00 20 20 80 06 20 77 | 72 69 74 65 5f 62 6f 6f |t. .. w|rite_boo|
|00004150| 74 5f 62 6c 6f 63 6b 20 | 20 20 20 20 20 20 20 20 |t_block | |
|00004160| 20 20 20 20 3b 20 3c 2d | 2d 2d 20 4f 4b 20 57 72 | ; <-|-- OK Wr|
|00004170| 69 74 65 20 74 68 65 20 | 62 75 66 66 65 72 00 80 |ite the |buffer..|
|00004180| 07 00 3b 00 3b 20 2a 2a | 2a 2a 2a 20 44 41 54 41 |..;.; **|*** DATA|
|00004190| 20 46 4f 52 20 42 4f 4f | 54 20 42 4c 4f 43 4b 20 | FOR BOO|T BLOCK |
|000041a0| 28 54 6f 20 6d 61 6b 65 | 20 64 69 73 6b 20 62 6f |(To make| disk bo|
|000041b0| 6f 74 61 62 6c 65 29 00 | 3b 20 2a 2a 2a 2a 2a 20 |otable).|; ***** |
|000041c0| 49 6e 20 4c 6f 6e 67 20 | 57 6f 72 64 20 2d 00 3b |In Long |Word -.;|
|000041d0| 00 3b 20 2a 2a 2a 2a 2a | 20 4f 46 53 00 3b 00 6f |.; *****| OFS.;.o|
|000041e0| 66 73 3a 00 3b 44 61 74 | 61 2e 6c 20 24 34 34 34 |fs:.;Dat|a.l $444|
|000041f0| 66 35 33 30 30 20 20 3b | 20 3c 2d 2d 2d 20 46 6f |f5300 ;| <--- Fo|
|00004200| 72 6d 61 74 00 3b 44 61 | 74 61 2e 6c 20 24 65 33 |rmat.;Da|ta.l $e3|
|00004210| 33 64 30 65 37 33 20 20 | 3b 20 3c 2d 2d 2d 20 43 |3d0e73 |; <--- C|
|00004220| 68 65 63 6b 73 75 6d 00 | 80 1a 2e 6c 20 24 30 30 |hecksum.|...l $00|
|00004230| 30 30 30 33 37 30 20 20 | 20 3b 20 3c 2d 2d 2d 20 |000370 | ; <--- |
|00004240| 50 6f 69 6e 74 65 72 20 | 74 6f 20 52 6f 6f 74 20 |Pointer |to Root |
|00004250| 42 6c 6f 63 6b 00 80 1a | 2e 6c 20 24 34 33 66 61 |Block...|.l $43fa|
|00004260| 30 30 33 65 00 80 1a 2e | 6c 20 24 37 30 32 35 34 |003e....|l $70254|
|00004270| 65 61 65 00 80 1a 2e 6c | 20 24 66 64 64 38 34 61 |eae....l| $fdd84a|
|00004280| 38 30 00 80 1a 2e 6c 20 | 24 36 37 30 63 32 32 34 |80....l |$670c224|
|00004290| 30 00 80 1a 2e 6c 20 24 | 30 38 65 39 30 30 30 36 |0....l $|08e90006|
|000042a0| 00 80 1a 2e 6c 20 24 30 | 30 32 32 34 65 61 65 00 |....l $0|0224eae.|
|000042b0| 80 1a 2e 6c 20 24 66 65 | 36 32 34 33 66 61 00 80 |...l $fe|6243fa..|
|000042c0| 1a 2e 6c 20 24 30 30 31 | 38 34 65 61 65 00 80 1a |..l $001|84eae...|
|000042d0| 2e 6c 20 24 66 66 61 30 | 34 61 38 30 00 80 1a 2e |.l $ffa0|4a80....|
|000042e0| 6c 20 24 36 37 30 61 32 | 30 34 30 00 80 1a 2e 6c |l $670a2|040....l|
|000042f0| 20 24 32 30 36 38 30 30 | 31 36 00 80 1a 2e 6c 20 | $206800|16....l |
|00004300| 24 37 30 30 30 34 65 37 | 35 00 80 1a 2e 6c 20 24 |$70004e7|5....l $|
|00004310| 37 30 66 66 34 65 37 35 | 00 80 1a 2e 6c 20 24 36 |70ff4e75|....l $6|
|00004320| 34 36 66 37 33 32 65 00 | 80 1a 2e 6c 20 24 36 63 |46f732e.|...l $6c|
|00004330| 36 39 36 32 37 32 00 80 | 1a 2e 6c 20 24 36 31 37 |696272..|..l $617|
|00004340| 32 37 39 30 30 00 80 1a | 2e 6c 20 24 36 35 37 38 |27900...|.l $6578|
|00004350| 37 30 36 31 00 80 1a 2e | 6c 20 24 36 65 37 33 36 |7061....|l $6e736|
|00004360| 39 36 66 00 80 1a 2e 6c | 20 24 36 65 32 65 36 63 |96f....l| $6e2e6c|
|00004370| 36 39 00 80 1a 2e 6c 20 | 24 36 32 37 32 36 31 37 |69....l |$6272617|
|00004380| 32 00 80 1a 2e 6c 20 24 | 37 39 30 30 30 30 30 30 |2....l $|79000000|
|00004390| 00 3b 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |.; -----|--------|
|000043a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000043b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000043c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000043d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 00 3b 20 2a |--------|----.; *|
|000043e0| 20 52 45 41 44 20 54 48 | 45 20 42 4f 4f 54 20 42 | READ TH|E BOOT B|
|000043f0| 4c 4f 43 4b 20 2a 00 3b | 20 2d 2d 2d 2d 2d 2d 2d |LOCK *.;| -------|
|00004400| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004410| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004420| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004430| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004440| 2d 2d 00 72 65 61 64 5f | 62 6f 6f 74 5f 62 6c 6f |--.read_|boot_blo|
|00004450| 63 6b 3a 00 62 62 75 66 | 66 65 72 3d 45 58 45 43 |ck:.bbuf|fer=EXEC|
|00004460| 5f 61 6c 6c 6f 63 6d 65 | 6d 20 7b 35 36 33 32 7d |_allocme|m {5632}|
|00004470| 20 20 20 20 20 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 | | ; <--- |
|00004480| 4d 65 6d 6f 72 79 20 66 | 6f 72 20 63 6f 70 79 20 |Memory f|or copy |
|00004490| 62 75 66 66 65 72 00 54 | 44 31 5f 64 72 69 76 65 |buffer.T|D1_drive|
|000044a0| 6d 6f 74 6f 72 20 7b 69 | 6f 70 6f 72 74 6c 6f 63 |motor {i|oportloc|
|000044b0| 5f 72 65 61 64 2c 31 7d | 20 20 20 20 3b 20 3c 2d |_read,1}| ; <-|
|000044c0| 2d 2d 20 44 72 69 76 65 | 20 6d 6f 74 6f 72 20 6f |-- Drive| motor o|
|000044d0| 6e 00 3b 00 3b 20 2a 20 | 43 48 45 43 4b 20 44 49 |n.;.; * |CHECK DI|
|000044e0| 53 4b 53 2f 44 52 49 56 | 45 53 20 46 49 52 53 54 |SKS/DRIV|ES FIRST|
|000044f0| 20 2a 00 3b 00 54 44 31 | 5f 63 68 65 63 6b 5f 64 | *.;.TD1|_check_d|
|00004500| 69 73 6b 20 7b 69 6f 70 | 6f 72 74 6c 6f 63 5f 72 |isk {iop|ortloc_r|
|00004510| 65 61 64 2c 31 34 7d 20 | 20 20 3b 20 3c 2d 2d 2d |ead,14} | ; <---|
|00004520| 20 44 69 73 6b 20 69 6e | 20 73 6f 75 72 63 65 20 | Disk in| source |
|00004530| 64 72 69 76 65 20 3f 3f | 3f 00 20 20 80 0b 20 69 |drive ??|?. .. i|
|00004540| 6f 5f 61 63 74 75 61 6c | 3d 32 35 35 20 80 21 20 |o_actual|=255 .! |
|00004550| 61 64 64 5f 74 6f 5f 65 | 72 72 6f 72 6c 69 73 74 |add_to_e|rrorlist|
|00004560| 20 7b 33 2c 31 32 7d 20 | 3a 20 80 05 20 72 62 62 | {3,12} |: .. rbb|
|00004570| 5f 65 72 72 00 3b 00 3b | 20 2a 20 4f 4b 3f 3f 20 |_err.;.;| * OK?? |
|00004580| 52 45 41 44 20 54 48 45 | 20 42 4f 4f 54 20 42 4c |READ THE| BOOT BL|
|00004590| 4f 43 4b 20 2a 00 3b 00 | 63 6f 70 79 72 65 61 64 |OCK *.;.|copyread|
|000045a0| 3d 52 57 5f 64 72 69 76 | 65 20 7b 30 2c 32 2c 69 |=RW_driv|e {0,2,i|
|000045b0| 6f 70 6f 72 74 6c 6f 63 | 5f 72 65 61 64 2c 62 62 |oportloc|_read,bb|
|000045c0| 75 66 66 65 72 7d 00 80 | 0b 20 63 6f 70 79 72 65 |uffer}..|. copyre|
|000045d0| 61 64 3c 3e 30 20 20 20 | 20 20 20 20 20 20 20 20 |ad<>0 | |
|000045e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 3c 2d | | ; <-|
|000045f0| 2d 2d 20 63 6f 70 79 72 | 65 61 64 20 68 6f 6c 64 |-- copyr|ead hold|
|00004600| 73 20 74 68 65 20 65 72 | 72 6f 72 20 6e 75 6d 62 |s the er|ror numb|
|00004610| 65 72 00 20 20 61 64 64 | 5f 74 6f 5f 65 72 72 6f |er. add|_to_erro|
|00004620| 72 6c 69 73 74 20 7b 33 | 2c 63 6f 70 79 72 65 61 |rlist {3|,copyrea|
|00004630| 64 7d 20 20 20 20 20 20 | 3b 20 3c 2d 2d 2d 20 53 |d} |; <--- S|
|00004640| 74 6f 72 65 20 65 72 72 | 6f 72 20 28 52 65 61 64 |tore err|or (Read|
|00004650| 69 6e 67 29 00 80 02 20 | 80 0b 00 72 62 62 5f 65 |ing)... |...rbb_e|
|00004660| 72 72 3a 00 54 44 31 5f | 64 72 69 76 65 6d 6f 74 |rr:.TD1_|drivemot|
|00004670| 6f 72 20 7b 69 6f 70 6f | 72 74 6c 6f 63 5f 72 65 |or {iopo|rtloc_re|
|00004680| 61 64 2c 30 7d 20 20 20 | 20 3b 20 3c 2d 2d 2d 20 |ad,0} | ; <--- |
|00004690| 44 72 69 76 65 20 6d 6f | 74 6f 72 20 6f 66 66 00 |Drive mo|tor off.|
|000046a0| 80 07 00 3b 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...; ---|--------|
|000046b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000046c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000046d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000046e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 00 3b |--------|------.;|
|000046f0| 20 2a 20 57 52 49 54 45 | 20 54 48 45 20 42 55 46 | * WRITE| THE BUF|
|00004700| 46 45 52 20 54 4f 20 44 | 49 53 4b 20 2a 00 3b 20 |FER TO D|ISK *.; |
|00004710| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004720| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004730| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004740| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00004750| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 00 77 72 69 74 65 5f |--------|-.write_|
|00004760| 62 6f 6f 74 5f 62 6c 6f | 63 6b 3a 00 77 72 69 74 |boot_blo|ck:.writ|
|00004770| 65 62 75 66 66 65 72 3d | 52 57 5f 64 72 69 76 65 |ebuffer=|RW_drive|
|00004780| 20 7b 30 2c 31 31 2c 69 | 6f 70 6f 72 74 6c 6f 63 | {0,11,i|oportloc|
|00004790| 5f 77 72 69 74 65 2c 62 | 62 75 66 66 65 72 7d 00 |_write,b|buffer}.|
|000047a0| 20 20 80 0b 20 77 72 69 | 74 65 62 75 66 66 65 72 | .. wri|tebuffer|
|000047b0| 3c 3e 30 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |<>0 | |
|000047c0| 20 20 20 20 20 20 20 3b | 20 3c 2d 2d 2d 20 77 72 | ;| <--- wr|
|000047d0| 69 74 65 62 75 66 66 65 | 72 20 68 6f 6c 64 73 20 |itebuffe|r holds |
|000047e0| 74 68 65 20 65 72 72 6f | 72 20 6e 75 6d 62 65 72 |the erro|r number|
|000047f0| 00 20 20 20 20 61 64 64 | 5f 74 6f 5f 65 72 72 6f |. add|_to_erro|
|00004800| 72 6c 69 73 74 20 7b 34 | 2c 77 72 69 74 65 62 75 |rlist {4|,writebu|
|00004810| 66 66 65 72 7d 20 20 20 | 3b 20 3c 2d 2d 2d 20 53 |ffer} |; <--- S|
|00004820| 74 6f 72 65 20 45 72 72 | 6f 72 20 28 57 72 69 74 |tore Err|or (Writ|
|00004830| 69 6e 67 29 00 20 20 80 | 02 20 80 0b 00 74 64 66 |ing). .|. ...tdf|
|00004840| 72 65 65 3d 45 58 45 43 | 5f 66 72 65 65 6d 65 6d |ree=EXEC|_freemem|
|00004850| 20 7b 62 62 75 66 66 65 | 72 2c 35 36 33 32 7d 20 | {bbuffe|r,5632} |
|00004860| 20 20 3b 20 3c 2d 2d 2d | 20 46 72 65 65 20 62 75 | ; <---| Free bu|
|00004870| 66 66 65 72 00 54 44 31 | 5f 64 72 69 76 65 6d 6f |ffer.TD1|_drivemo|
|00004880| 74 6f 72 20 7b 69 6f 70 | 6f 72 74 6c 6f 63 5f 72 |tor {iop|ortloc_r|
|00004890| 65 61 64 2c 30 7d 20 20 | 20 20 3b 20 3c 2d 2d 2d |ead,0} | ; <---|
|000048a0| 20 52 65 61 64 20 64 72 | 69 76 65 20 6d 6f 74 6f | Read dr|ive moto|
|000048b0| 72 20 6f 66 66 00 80 07 | 00 00 62 6c 61 6e 6b 5f |r off...|..blank_|
|000048c0| 74 65 78 74 3a 00 c5 10 | 20 31 33 30 2c 35 32 20 |text:...| 130,52 |
|000048d0| 3a 20 dd 81 20 dc 88 28 | 22 20 22 2c 32 34 29 00 |: .. ..(|" ",24).|
|000048e0| c5 10 20 31 33 30 2c 36 | 32 20 3a 20 dd 81 20 dc |.. 130,6|2 : .. .|
|000048f0| 88 28 22 20 22 2c 32 34 | 29 00 c5 10 20 31 33 30 |.(" ",24|)... 130|
|00004900| 2c 37 32 20 3a 20 dd 81 | 20 dc 88 28 22 20 22 2c |,72 : ..| ..(" ",|
|00004910| 32 34 29 00 80 07 00 00 | 00 00 00 |24).....|... |
+--------+-------------------------+-------------------------+--------+--------+