home *** CD-ROM | disk | FTP | other *** search
/ Carousel Volume 2 #1 / carousel.iso / mactosh / lang / mod4.hqx / M2-4.pit
PackIt Archive  |  1985-07-20  |  32.4 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: PackIt Archive (archive/packIt).

You can browse this item here: M2-4.pit

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert PackIt Archive (archive/packIt) magic Supported
100% file data default
100% TrID PackIt compressed archive default
100% dexmagic PrintFox/Pagefox WEAK default
100% lsar PackIt default
100% gt2 PMWLite 9.67 default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 50 4d 61 67 09 43 4c 4f | 43 4b 2e 44 45 46 30 00 |PMag.CLO|CK.DEF0.|
|00000010| 00 0c 00 00 00 22 00 40 | 00 40 38 7c 00 40 10 32 |.....".@|.@8|.@.2|
|00000020| 00 40 10 32 00 00 00 40 | 33 f4 00 00 00 00 00 00 |.@.2...@|3.......|
|00000030| a0 23 00 00 6e 94 00 00 | 4d d8 00 40 2c 72 00 1d |.#..n...|M..@,r..|
|00000040| 00 47 00 00 54 45 58 54 | 45 44 49 54 01 00 00 00 |.G..TEXT|EDIT....|
|00000050| 00 00 01 c5 00 00 00 00 | 98 f4 5b 78 98 fe d4 05 |........|..[x....|
|00000060| 15 b7 44 45 46 49 4e 49 | 54 49 4f 4e 20 4d 4f 44 |..DEFINI|TION MOD|
|00000070| 55 4c 45 20 43 6c 6f 63 | 6b 3b 20 20 20 20 20 20 |ULE Cloc|k; |
|00000080| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000090| 28 2a 20 4c 47 20 32 33 | 2e 30 34 2e 38 30 20 2a |(* LG 23|.04.80 *|
|000000a0| 29 0d 0d 20 20 45 58 50 | 4f 52 54 20 51 55 41 4c |).. EXP|ORT QUAL|
|000000b0| 49 46 49 45 44 20 54 69 | 6d 65 2c 20 47 65 74 54 |IFIED Ti|me, GetT|
|000000c0| 69 6d 65 3b 0d 0d 20 20 | 54 59 50 45 20 54 69 6d |ime;.. |TYPE Tim|
|000000d0| 65 20 3d 20 52 45 43 4f | 52 44 0d 20 20 20 20 20 |e = RECO|RD. |
|000000e0| 20 20 20 20 20 20 20 20 | 20 20 20 64 61 79 20 3a | | day :|
|000000f0| 20 43 41 52 44 49 4e 41 | 4c 3b 20 20 28 2a 20 28 | CARDINA|L; (* (|
|00000100| 28 79 2d 31 39 30 30 29 | 20 2a 20 32 30 42 20 2b |(y-1900)| * 20B +|
|00000110| 20 6d 29 20 2a 20 34 30 | 42 20 2b 20 64 20 2a 29 | m) * 40|B + d *)|
|00000120| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | |
|00000130| 20 6d 69 6e 75 74 65 20 | 3a 20 43 41 52 44 49 4e | minute |: CARDIN|
|00000140| 41 4c 3b 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |AL;. | |
|00000150| 20 20 20 20 6d 69 6c 6c | 69 73 65 63 6f 6e 64 20 | mill|isecond |
|00000160| 3a 20 43 41 52 44 49 4e | 41 4c 3b 0d 20 20 20 20 |: CARDIN|AL;. |
|00000170| 20 20 20 20 20 20 20 20 | 20 20 45 4e 44 3b 0d 0d | | END;..|
|00000180| 20 20 50 52 4f 43 45 44 | 55 52 45 20 47 65 74 54 | PROCED|URE GetT|
|00000190| 69 6d 65 28 56 41 52 20 | 74 69 6d 20 3a 20 54 69 |ime(VAR |tim : Ti|
|000001a0| 6d 65 29 3b 0d 20 20 20 | 20 28 2a 20 67 65 74 20 |me);. | (* get |
|000001b0| 63 6f 6d 70 75 74 65 72 | 20 74 69 6d 65 20 2a 29 |computer| time *)|
|000001c0| 0d 20 20 20 20 28 2a 20 | 27 74 69 6d 27 2c 20 61 |. (* |'tim', a|
|000001d0| 73 20 61 20 74 69 6d 65 | 20 73 74 61 6d 70 2c 20 |s a time| stamp, |
|000001e0| 69 73 20 75 73 65 64 20 | 61 73 20 61 20 75 6e 69 |is used |as a uni|
|000001f0| 71 75 65 20 6d 6f 64 75 | 6c 65 20 6b 65 79 20 69 |que modu|le key i|
|00000200| 6e 20 63 6f 6d 70 69 6c | 61 74 69 6f 6e 20 2a 29 |n compil|ation *)|
|00000210| 0d 0d 45 4e 44 20 43 6c | 6f 63 6b 2e 0d 2e 45 4f |..END Cl|ock...EO|
|00000220| 52 2e 0d 2a 2a 3e 0d a4 | 38 50 4d 61 67 09 43 4c |R..**>..|8PMag.CL|
|00000230| 4f 43 4b 2e 53 59 4d 30 | 00 00 0c 00 00 00 22 00 |OCK.SYM0|......".|
|00000240| 40 00 40 38 7c 00 40 10 | 32 00 40 10 32 00 00 00 |@.@8|.@.|2.@.2...|
|00000250| 40 33 f4 00 00 00 00 00 | 00 a0 23 00 00 6e 94 00 |@3......|..#..n..|
|00000260| 00 4d d8 00 40 2c 72 00 | 1d 00 47 00 00 4d 53 59 |.M..@,r.|..G..MSY|
|00000270| 4d 3f 3f 3f 3f 01 00 00 | 00 00 00 00 a6 00 00 00 |M????...|........|
|00000280| 00 00 00 00 00 00 00 00 | 00 df 62 07 00 03 07 aa |........|..b.....|
|00000290| 34 07 00 29 07 00 2e 13 | 43 6c 6f 63 6b 00 01 07 |4..)....|Clock...|
|000002a0| aa 34 07 00 29 07 00 2e | 13 43 6c 6f 63 6b 00 03 |.4..)...|.Clock..|
|000002b0| 13 53 59 53 54 45 4d 00 | 04 13 54 69 6d 65 00 13 |.SYSTEM.|..Time..|
|000002c0| 47 65 74 54 69 6d 65 00 | 0a 13 54 69 6d 65 00 0c |GetTime.|..Time..|
|000002d0| 13 64 61 79 00 07 00 00 | 15 13 43 41 52 44 49 4e |.day....|..CARDIN|
|000002e0| 41 4c 00 13 6d 69 6e 75 | 74 65 00 07 00 02 15 13 |AL..minu|te......|
|000002f0| 43 41 52 44 49 4e 41 4c | 00 13 6d 69 6c 6c 69 73 |CARDINAL|..millis|
|00000300| 65 63 6f 6e 64 00 07 00 | 04 15 13 43 41 52 44 49 |econd...|...CARDI|
|00000310| 4e 41 4c 00 1e 07 00 06 | 11 13 47 65 74 54 69 6d |NAL.....|..GetTim|
|00000320| 65 00 07 00 01 11 17 10 | 13 54 69 6d 65 00 18 02 |e.......|.Time...|
|00000330| 00 ce e5 50 4d 61 67 0f | 43 4f 4e 56 45 52 53 49 |...PMag.|CONVERSI|
|00000340| 4f 4e 53 2e 44 45 46 00 | 22 00 40 00 40 38 7c 00 |ONS.DEF.|".@.@8|.|
|00000350| 40 10 32 00 40 10 32 00 | 00 00 40 33 f4 00 00 00 |@.2.@.2.|..@3....|
|00000360| 00 00 00 a0 23 00 00 6e | 94 00 00 4d d8 00 40 2c |....#..n|...M..@,|
|00000370| 72 00 1d 00 47 00 00 54 | 45 58 54 45 44 49 54 01 |r...G..T|EXTEDIT.|
|00000380| 00 00 00 00 00 08 db 00 | 00 00 00 98 f4 5b 84 98 |........|.....[..|
|00000390| f4 5b 8b 1d 55 28 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.[..U(**|********|
|000003a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000003b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 0d 2a |********|******.*|
|000003c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000003d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000003e0| 20 20 20 20 20 20 20 2a | 0d 2a 20 20 20 20 20 43 | *|.* C|
|000003f0| 6f 6e 76 65 72 73 69 6f | 6e 73 3a 20 20 20 20 20 |onversio|ns: |
|00000400| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000410| 20 2a 0d 2a 20 20 20 20 | 20 20 20 20 20 20 20 20 | *.* | |
|00000420| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000430| 20 20 20 20 20 20 20 20 | 20 20 20 2a 0d 2a 20 20 | | *.* |
|00000440| 20 20 20 4e 75 6d 62 65 | 72 20 74 6f 20 73 74 72 | Numbe|r to str|
|00000450| 69 6e 67 20 63 6f 6e 76 | 65 72 73 69 6f 6e 20 20 |ing conv|ersion |
|00000460| 20 20 20 20 20 2a 0d 2a | 20 20 20 20 20 20 20 20 | *.*| |
|00000470| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000480| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 2a | | *|
|00000490| 0d 2a 20 20 20 20 20 56 | 65 72 73 69 6f 6e 20 6f |.* V|ersion o|
|000004a0| 66 20 30 33 2e 30 36 2e | 38 33 20 20 20 20 20 20 |f 03.06.|83 |
|000004b0| 20 20 20 20 20 20 20 20 | 20 2a 0d 2a 20 20 20 20 | | *.* |
|000004c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000004d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000004e0| 20 20 20 2a 0d 2a 20 20 | 20 20 20 49 6e 73 74 69 | *.* | Insti|
|000004f0| 74 75 74 20 66 75 65 72 | 20 49 6e 66 6f 72 6d 61 |tut fuer| Informa|
|00000500| 74 69 6b 20 20 20 20 20 | 20 20 20 20 20 2a 0d 2a |tik | *.*|
|00000510| 20 20 20 20 20 45 54 48 | 2d 5a 75 65 72 69 63 68 | ETH|-Zuerich|
|00000520| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000530| 20 20 20 20 20 20 20 2a | 0d 2a 20 20 20 20 20 43 | *|.* C|
|00000540| 48 2d 38 30 39 32 20 5a | 75 65 72 69 63 68 20 20 |H-8092 Z|uerich |
|00000550| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000560| 20 2a 0d 2a 20 20 20 20 | 20 20 20 20 20 20 20 20 | *.* | |
|00000570| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000580| 20 20 20 20 20 20 20 20 | 20 20 20 2a 0d 2a 2a 2a | | *.***|
|00000590| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000005a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000005b0| 2a 2a 2a 2a 2a 29 0d 0d | 44 45 46 49 4e 49 54 49 |*****)..|DEFINITI|
|000005c0| 4f 4e 20 4d 4f 44 55 4c | 45 20 43 6f 6e 76 65 72 |ON MODUL|E Conver|
|000005d0| 73 69 6f 6e 73 3b 20 20 | 20 20 20 20 20 20 20 20 |sions; | |
|000005e0| 20 20 20 20 20 20 20 20 | 28 2a 20 4c 47 2c 20 50 | |(* LG, P|
|000005f0| 46 20 2a 29 0d 0d 20 20 | 46 52 4f 4d 20 53 59 53 |F *).. |FROM SYS|
|00000600| 54 45 4d 20 49 4d 50 4f | 52 54 20 41 44 44 52 45 |TEM IMPO|RT ADDRE|
|00000610| 53 53 3b 0d 0d 20 20 45 | 58 50 4f 52 54 20 51 55 |SS;.. E|XPORT QU|
|00000620| 41 4c 49 46 49 45 44 20 | 43 6f 6e 76 65 72 74 4f |ALIFIED |ConvertO|
|00000630| 63 74 61 6c 2c 20 43 6f | 6e 76 65 72 74 48 65 78 |ctal, Co|nvertHex|
|00000640| 2c 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |,. | |
|00000650| 20 20 20 20 20 43 6f 6e | 76 65 72 74 43 61 72 64 | Con|vertCard|
|00000660| 69 6e 61 6c 2c 20 43 6f | 6e 76 65 72 74 49 6e 74 |inal, Co|nvertInt|
|00000670| 65 67 65 72 2c 0d 20 20 | 20 20 20 20 20 20 20 20 |eger,. | |
|00000680| 20 20 20 20 20 20 20 20 | 20 43 6f 6e 76 65 72 74 | | Convert|
|00000690| 41 64 64 72 4f 63 74 2c | 20 43 6f 6e 76 65 72 74 |AddrOct,| Convert|
|000006a0| 41 64 64 72 48 65 78 2c | 20 43 6f 6e 76 65 72 74 |AddrHex,| Convert|
|000006b0| 41 64 64 72 44 65 63 3b | 0d 0d 0d 20 20 50 52 4f |AddrDec;|... PRO|
|000006c0| 43 45 44 55 52 45 20 43 | 6f 6e 76 65 72 74 4f 63 |CEDURE C|onvertOc|
|000006d0| 74 61 6c 28 6e 75 6d 2c | 20 6c 65 6e 3a 20 43 41 |tal(num,| len: CA|
|000006e0| 52 44 49 4e 41 4c 3b 20 | 56 41 52 20 73 74 72 3a |RDINAL; |VAR str:|
|000006f0| 20 41 52 52 41 59 20 4f | 46 20 43 48 41 52 29 3b | ARRAY O|F CHAR);|
|00000700| 0d 20 20 20 20 28 2a 20 | 63 6f 6e 76 65 72 73 69 |. (* |conversi|
|00000710| 6f 6e 20 6f 66 20 61 6e | 20 6f 63 74 61 6c 20 6e |on of an| octal n|
|00000720| 75 6d 62 65 72 20 74 6f | 20 61 20 73 74 72 69 6e |umber to| a strin|
|00000730| 67 20 2a 29 0d 0d 20 20 | 50 52 4f 43 45 44 55 52 |g *).. |PROCEDUR|
|00000740| 45 20 43 6f 6e 76 65 72 | 74 48 65 78 28 6e 75 6d |E Conver|tHex(num|
|00000750| 2c 20 6c 65 6e 3a 20 43 | 41 52 44 49 4e 41 4c 3b |, len: C|ARDINAL;|
|00000760| 20 56 41 52 20 73 74 72 | 3a 20 41 52 52 41 59 20 | VAR str|: ARRAY |
|00000770| 4f 46 20 43 48 41 52 29 | 3b 0d 20 20 20 20 28 2a |OF CHAR)|;. (*|
|00000780| 20 63 6f 6e 76 65 72 73 | 69 6f 6e 20 6f 66 20 61 | convers|ion of a|
|00000790| 20 68 65 78 61 64 65 63 | 69 6d 61 6c 20 6e 75 6d | hexadec|imal num|
|000007a0| 62 65 72 20 74 6f 20 61 | 20 73 74 72 69 6e 67 20 |ber to a| string |
|000007b0| 2a 29 0d 0d 20 20 50 52 | 4f 43 45 44 55 52 45 20 |*).. PR|OCEDURE |
|000007c0| 43 6f 6e 76 65 72 74 43 | 61 72 64 69 6e 61 6c 28 |ConvertC|ardinal(|
|000007d0| 6e 75 6d 2c 20 6c 65 6e | 3a 20 43 41 52 44 49 4e |num, len|: CARDIN|
|000007e0| 41 4c 3b 20 56 41 52 20 | 73 74 72 3a 20 41 52 52 |AL; VAR |str: ARR|
|000007f0| 41 59 20 4f 46 20 43 48 | 41 52 29 3b 0d 20 20 20 |AY OF CH|AR);. |
|00000800| 20 28 2a 20 63 6f 6e 76 | 65 72 73 69 6f 6e 20 6f | (* conv|ersion o|
|00000810| 66 20 61 20 63 61 72 64 | 69 6e 61 6c 20 64 65 63 |f a card|inal dec|
|00000820| 69 6d 61 6c 20 6e 75 6d | 62 65 72 20 74 6f 20 61 |imal num|ber to a|
|00000830| 20 73 74 72 69 6e 67 20 | 2a 29 0d 0d 20 20 50 52 | string |*).. PR|
|00000840| 4f 43 45 44 55 52 45 20 | 43 6f 6e 76 65 72 74 49 |OCEDURE |ConvertI|
|00000850| 6e 74 65 67 65 72 28 6e | 75 6d 3a 20 49 4e 54 45 |nteger(n|um: INTE|
|00000860| 47 45 52 3b 20 6c 65 6e | 3a 20 43 41 52 44 49 4e |GER; len|: CARDIN|
|00000870| 41 4c 3b 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |AL;. | |
|00000880| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 56 | | V|
|00000890| 41 52 20 73 74 72 3a 20 | 41 52 52 41 59 20 4f 46 |AR str: |ARRAY OF|
|000008a0| 20 43 48 41 52 29 3b 0d | 20 20 20 20 28 2a 20 63 | CHAR);.| (* c|
|000008b0| 6f 6e 76 65 72 73 69 6f | 6e 20 6f 66 20 61 6e 20 |onversio|n of an |
|000008c0| 69 6e 74 65 67 65 72 20 | 64 65 63 69 6d 61 6c 20 |integer |decimal |
|000008d0| 6e 75 6d 62 65 72 20 74 | 6f 20 61 20 73 74 72 69 |number t|o a stri|
|000008e0| 6e 67 20 2a 29 0d 0d 20 | 20 50 52 4f 43 45 44 55 |ng *).. | PROCEDU|
|000008f0| 52 45 20 43 6f 6e 76 65 | 72 74 41 64 64 72 48 65 |RE Conve|rtAddrHe|
|00000900| 78 20 28 6e 75 6d 3a 20 | 41 44 44 52 45 53 53 3b |x (num: |ADDRESS;|
|00000910| 20 6c 65 6e 3a 20 43 41 | 52 44 49 4e 41 4c 3b 0d | len: CA|RDINAL;.|
|00000920| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000930| 20 20 20 20 20 20 20 20 | 20 20 20 56 41 52 20 73 | | VAR s|
|00000940| 74 72 3a 20 41 52 52 41 | 59 20 4f 46 20 43 48 41 |tr: ARRA|Y OF CHA|
|00000950| 52 29 3b 0d 20 20 20 20 | 28 2a 20 63 6f 6e 76 65 |R);. |(* conve|
|00000960| 72 73 69 6f 6e 20 6f 66 | 20 61 6e 20 61 64 64 72 |rsion of| an addr|
|00000970| 65 73 73 20 69 6e 74 6f | 20 61 20 68 65 78 61 64 |ess into| a hexad|
|00000980| 65 63 69 6d 61 6c 20 73 | 74 72 69 6e 67 20 2a 29 |ecimal s|tring *)|
|00000990| 0d 0d 20 20 50 52 4f 43 | 45 44 55 52 45 20 43 6f |.. PROC|EDURE Co|
|000009a0| 6e 76 65 72 74 41 64 64 | 72 4f 63 74 20 28 6e 75 |nvertAdd|rOct (nu|
|000009b0| 6d 3a 20 41 44 44 52 45 | 53 53 3b 20 6c 65 6e 3a |m: ADDRE|SS; len:|
|000009c0| 20 43 41 52 44 49 4e 41 | 4c 3b 0d 20 20 20 20 20 | CARDINA|L;. |
|000009d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000009e0| 20 20 20 20 20 20 56 41 | 52 20 73 74 72 3a 20 41 | VA|R str: A|
|000009f0| 52 52 41 59 20 4f 46 20 | 43 48 41 52 29 3b 0d 20 |RRAY OF |CHAR);. |
|00000a00| 20 20 28 2a 20 63 6f 6e | 76 65 72 73 69 6f 6e 20 | (* con|version |
|00000a10| 6f 66 20 61 6e 20 61 64 | 64 72 65 73 73 20 69 6e |of an ad|dress in|
|00000a20| 74 6f 20 61 6e 20 6f 63 | 74 61 6c 20 73 74 72 69 |to an oc|tal stri|
|00000a30| 6e 67 2a 29 0d 0d 20 20 | 50 52 4f 43 45 44 55 52 |ng*).. |PROCEDUR|
|00000a40| 45 20 43 6f 6e 76 65 72 | 74 41 64 64 72 44 65 63 |E Conver|tAddrDec|
|00000a50| 20 28 6e 75 6d 3a 20 41 | 44 44 52 45 53 53 3b 20 | (num: A|DDRESS; |
|00000a60| 6c 65 6e 3a 20 43 41 52 | 44 49 4e 41 4c 3b 0d 20 |len: CAR|DINAL;. |
|00000a70| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000a80| 20 20 20 20 20 20 20 20 | 20 20 56 41 52 20 73 74 | | VAR st|
|00000a90| 72 3a 20 41 52 52 41 59 | 20 4f 46 20 43 48 41 52 |r: ARRAY| OF CHAR|
|00000aa0| 29 3b 0d 20 20 20 28 2a | 20 63 6f 6e 76 65 72 73 |);. (*| convers|
|00000ab0| 69 6f 6e 20 6f 66 20 61 | 6e 20 61 64 64 72 65 73 |ion of a|n addres|
|00000ac0| 73 20 69 6e 74 6f 20 61 | 20 64 65 63 69 6d 61 6c |s into a| decimal|
|00000ad0| 20 73 74 72 69 6e 67 20 | 2a 29 0d 0d 0d 20 20 20 | string |*)... |
|00000ae0| 28 2a 20 6e 6f 74 65 3a | 20 6c 65 6e 20 69 73 20 |(* note:| len is |
|00000af0| 74 68 65 20 6d 69 6e 69 | 6d 75 6d 20 73 69 7a 65 |the mini|mum size|
|00000b00| 20 6f 66 20 74 68 65 20 | 63 6f 6e 76 65 72 74 65 | of the |converte|
|00000b10| 64 20 6e 75 6d 62 65 72 | 2c 20 65 2e 67 2e 20 30 |d number|, e.g. 0|
|00000b20| 2e 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 6f 63 |.. | oc|
|00000b30| 74 61 6c 20 61 6e 64 20 | 68 65 78 61 20 63 6f 6e |tal and |hexa con|
|00000b40| 76 65 72 73 69 6f 6e 73 | 20 66 69 6c 6c 20 77 69 |versions| fill wi|
|00000b50| 74 68 20 6c 65 61 64 69 | 6e 67 20 7a 65 72 6f 65 |th leadi|ng zeroe|
|00000b60| 73 2c 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 64 |s,. | d|
|00000b70| 65 63 69 6d 61 6c 20 63 | 6f 6e 76 65 72 73 69 6f |ecimal c|onversio|
|00000b80| 6e 20 66 69 6c 6c 73 20 | 77 69 74 68 20 62 6c 61 |n fills |with bla|
|00000b90| 6e 6b 73 20 2a 29 0d 0d | 20 20 20 28 2a 20 6e 6f |nks *)..| (* no|
|00000ba0| 74 65 20 32 3a 20 74 68 | 65 20 72 6f 75 74 69 6e |te 2: th|e routin|
|00000bb0| 65 73 20 66 6f 72 20 61 | 64 64 72 65 73 73 20 63 |es for a|ddress c|
|00000bc0| 6f 6e 76 65 72 73 69 6f | 6e 20 61 72 65 20 64 69 |onversio|n are di|
|00000bd0| 73 74 69 6e 63 74 2c 0d | 20 20 20 20 20 20 62 65 |stinct,.| be|
|00000be0| 63 61 75 73 65 2c 20 66 | 6f 72 20 74 68 65 20 4d |cause, f|or the M|
|00000bf0| 43 36 38 30 30 30 2c 20 | 61 6e 20 41 44 44 52 45 |C68000, |an ADDRE|
|00000c00| 53 53 20 69 73 20 33 32 | 20 62 69 74 73 2c 20 62 |SS is 32| bits, b|
|00000c10| 75 74 20 61 20 43 41 52 | 44 49 4e 41 4c 0d 20 20 |ut a CAR|DINAL. |
|00000c20| 20 20 20 20 69 73 20 6e | 6f 72 6d 61 6c 6c 79 20 | is n|ormally |
|00000c30| 31 36 20 62 69 74 73 20 | 2d 20 64 65 70 65 6e 64 |16 bits |- depend|
|00000c40| 69 6e 67 20 6f 6e 20 63 | 6f 6d 70 69 6c 61 74 69 |ing on c|ompilati|
|00000c50| 6f 6e 20 6f 70 74 69 6f | 6e 73 20 2a 29 0d 0d 45 |on optio|ns *)..E|
|00000c60| 4e 44 20 43 6f 6e 76 65 | 72 73 69 6f 6e 73 2e 0d |ND Conve|rsions..|
|00000c70| 00 69 50 4d 61 67 0f 43 | 4f 4e 56 45 52 53 49 4f |.iPMag.C|ONVERSIO|
|00000c80| 4e 53 2e 53 59 4d 00 22 | 00 40 00 40 38 7c 00 40 |NS.SYM."|.@.@8|.@|
|00000c90| 10 32 00 40 10 32 00 00 | 00 40 33 f4 00 00 00 00 |.2.@.2..|.@3.....|
|00000ca0| 00 00 a0 23 00 00 6e 94 | 00 00 4d d8 00 40 2c 72 |...#..n.|..M..@,r|
|00000cb0| 00 1d 00 47 00 00 4d 53 | 59 4d 3f 3f 3f 3f 01 00 |...G..MS|YM????..|
|00000cc0| 00 00 00 00 02 1e 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000cd0| 00 00 df be 07 00 03 07 | aa 25 07 05 9d 07 00 1e |........|.%......|
|00000ce0| 13 43 6f 6e 76 65 72 73 | 69 6f 6e 73 00 01 07 aa |.Convers|ions....|
|00000cf0| 25 07 05 9d 07 00 1e 13 | 43 6f 6e 76 65 72 73 69 |%.......|Conversi|
|00000d00| 6f 6e 73 00 03 13 53 59 | 53 54 45 4d 00 04 13 43 |ons...SY|STEM...C|
|00000d10| 6f 6e 76 65 72 74 4f 63 | 74 61 6c 00 13 43 6f 6e |onvertOc|tal..Con|
|00000d20| 76 65 72 74 48 65 78 00 | 13 43 6f 6e 76 65 72 74 |vertHex.|.Convert|
|00000d30| 43 61 72 64 69 6e 61 6c | 00 13 43 6f 6e 76 65 72 |Cardinal|..Conver|
|00000d40| 74 49 6e 74 65 67 65 72 | 00 13 43 6f 6e 76 65 72 |tInteger|..Conver|
|00000d50| 74 41 64 64 72 4f 63 74 | 00 13 43 6f 6e 76 65 72 |tAddrOct|..Conver|
|00000d60| 74 41 64 64 72 48 65 78 | 00 13 43 6f 6e 76 65 72 |tAddrHex|..Conver|
|00000d70| 74 41 64 64 72 44 65 63 | 00 11 13 43 6f 6e 76 65 |tAddrDec|...Conve|
|00000d80| 72 74 4f 63 74 61 6c 00 | 07 00 01 11 17 13 43 41 |rtOctal.|......CA|
|00000d90| 52 44 49 4e 41 4c 00 13 | 43 41 52 44 49 4e 41 4c |RDINAL..|CARDINAL|
|00000da0| 00 10 0b 13 43 48 41 52 | 00 18 11 13 43 6f 6e 76 |....CHAR|....Conv|
|00000db0| 65 72 74 48 65 78 00 07 | 00 02 11 17 13 43 41 52 |ertHex..|.....CAR|
|00000dc0| 44 49 4e 41 4c 00 13 43 | 41 52 44 49 4e 41 4c 00 |DINAL..C|ARDINAL.|
|00000dd0| 10 0b 13 43 48 41 52 00 | 18 11 13 43 6f 6e 76 65 |...CHAR.|...Conve|
|00000de0| 72 74 43 61 72 64 69 6e | 61 6c 00 07 00 03 11 17 |rtCardin|al......|
|00000df0| 13 43 41 52 44 49 4e 41 | 4c 00 13 43 41 52 44 49 |.CARDINA|L..CARDI|
|00000e00| 4e 41 4c 00 10 0b 13 43 | 48 41 52 00 18 11 13 43 |NAL....C|HAR....C|
|00000e10| 6f 6e 76 65 72 74 49 6e | 74 65 67 65 72 00 07 00 |onvertIn|teger...|
|00000e20| 04 11 17 13 49 4e 54 45 | 47 45 52 00 13 43 41 52 |....INTE|GER..CAR|
|00000e30| 44 49 4e 41 4c 00 10 0b | 13 43 48 41 52 00 18 11 |DINAL...|.CHAR...|
|00000e40| 13 43 6f 6e 76 65 72 74 | 41 64 64 72 4f 63 74 00 |.Convert|AddrOct.|
|00000e50| 07 00 06 11 17 13 53 59 | 53 54 45 4d 00 14 13 41 |......SY|STEM...A|
|00000e60| 44 44 52 45 53 53 00 13 | 43 41 52 44 49 4e 41 4c |DDRESS..|CARDINAL|
|00000e70| 00 10 0b 13 43 48 41 52 | 00 18 11 13 43 6f 6e 76 |....CHAR|....Conv|
|00000e80| 65 72 74 41 64 64 72 48 | 65 78 00 07 00 05 11 17 |ertAddrH|ex......|
|00000e90| 13 53 59 53 54 45 4d 00 | 14 13 41 44 44 52 45 53 |.SYSTEM.|..ADDRES|
|00000ea0| 53 00 13 43 41 52 44 49 | 4e 41 4c 00 10 0b 13 43 |S..CARDI|NAL....C|
|00000eb0| 48 41 52 00 18 11 13 43 | 6f 6e 76 65 72 74 41 64 |HAR....C|onvertAd|
|00000ec0| 64 72 44 65 63 00 07 00 | 07 11 17 13 53 59 53 54 |drDec...|....SYST|
|00000ed0| 45 4d 00 14 13 41 44 44 | 52 45 53 53 00 13 43 41 |EM...ADD|RESS..CA|
|00000ee0| 52 44 49 4e 41 4c 00 10 | 0b 13 43 48 41 52 00 18 |RDINAL..|..CHAR..|
|00000ef0| 02 00 b5 06 50 4d 61 67 | 0c 45 56 45 4e 54 4d 47 |....PMag|.EVENTMG|
|00000f00| 52 2e 44 45 46 53 59 4d | 00 22 00 40 00 40 38 7c |R.DEFSYM|.".@.@8||
|00000f10| 00 40 10 32 00 40 10 32 | 00 00 00 40 33 f4 00 00 |.@.2.@.2|...@3...|
|00000f20| 00 00 00 00 a0 23 00 00 | 6e 94 00 00 4d d8 00 40 |.....#..|n...M..@|
|00000f30| 2c 72 00 1d 00 47 00 00 | 54 45 58 54 45 44 49 54 |,r...G..|TEXTEDIT|
|00000f40| 01 00 00 00 00 00 0d b2 | 00 00 00 00 98 f4 5b 93 |........|......[.|
|00000f50| 98 f3 f9 c9 b7 03 28 2a | 3d 3d 3d 3d 3d 3d 3d 3d |......(*|========|
|00000f60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000f70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000f80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000f90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 2a |========|=======*|
|00000fa0| 29 0d 44 45 46 49 4e 49 | 54 49 4f 4e 20 4d 4f 44 |).DEFINI|TION MOD|
|00000fb0| 55 4c 45 20 45 76 65 6e | 74 4d 67 72 3b 20 20 20 |ULE Even|tMgr; |
|00000fc0| 20 20 28 2a 20 46 72 61 | 6e 7a 20 4b 72 6f 6e 73 | (* Fra|nz Krons|
|00000fd0| 65 64 65 72 20 30 38 2e | 30 31 2e 38 35 20 2a 29 |eder 08.|01.85 *)|
|00000fe0| 0d 20 20 20 28 2a 20 4d | 61 63 49 6e 74 6f 73 68 |. (* M|acIntosh|
|00000ff0| 20 54 6f 6f 6c 42 6f 78 | 20 45 76 65 6e 74 20 4d | ToolBox| Event M|
|00001000| 61 6e 61 67 65 72 20 4f | 70 65 72 61 74 69 6f 6e |anager O|peration|
|00001010| 73 20 2a 29 0d 0d 46 52 | 4f 4d 20 51 75 69 63 6b |s *)..FR|OM Quick|
|00001020| 44 72 61 77 20 49 4d 50 | 4f 52 54 20 50 6f 69 6e |Draw IMP|ORT Poin|
|00001030| 74 3b 0d 46 52 4f 4d 20 | 53 59 53 54 45 4d 20 49 |t;.FROM |SYSTEM I|
|00001040| 4d 50 4f 52 54 20 41 44 | 44 52 45 53 53 3b 0d 0d |MPORT AD|DRESS;..|
|00001050| 45 58 50 4f 52 54 20 51 | 55 41 4c 49 46 49 45 44 |EXPORT Q|UALIFIED|
|00001060| 0d 20 65 76 65 72 79 45 | 76 65 6e 74 2c 6e 75 6c |. everyE|vent,nul|
|00001070| 6c 45 76 65 6e 74 2c 6d | 6f 75 73 65 44 6f 77 6e |lEvent,m|ouseDown|
|00001080| 2c 6d 6f 75 73 65 55 70 | 2c 6b 65 79 44 6f 77 6e |,mouseUp|,keyDown|
|00001090| 2c 6b 65 79 55 70 2c 61 | 75 74 6f 4b 65 79 2c 75 |,keyUp,a|utoKey,u|
|000010a0| 70 64 61 74 65 45 76 74 | 2c 64 69 73 6b 45 76 74 |pdateEvt|,diskEvt|
|000010b0| 2c 0d 20 61 63 74 69 76 | 61 74 65 45 76 74 2c 61 |,. activ|ateEvt,a|
|000010c0| 62 6f 72 74 45 76 74 2c | 72 65 73 65 72 76 65 45 |bortEvt,|reserveE|
|000010d0| 76 74 2c 64 72 69 76 65 | 72 45 76 74 2c 61 70 70 |vt,drive|rEvt,app|
|000010e0| 31 45 76 74 2c 61 70 70 | 32 45 76 74 2c 61 70 70 |1Evt,app|2Evt,app|
|000010f0| 33 45 76 74 2c 61 70 70 | 34 45 76 74 2c 0d 0d 20 |3Evt,app|4Evt,.. |
|00001100| 6e 75 6c 6c 4d 61 73 6b | 2c 6d 44 6f 77 6e 4d 61 |nullMask|,mDownMa|
|00001110| 73 6b 2c 6d 55 70 4d 61 | 73 6b 2c 6b 65 79 44 6f |sk,mUpMa|sk,keyDo|
|00001120| 77 6e 4d 61 73 6b 2c 6b | 65 79 55 70 4d 61 73 6b |wnMask,k|eyUpMask|
|00001130| 2c 61 75 74 6f 4b 65 79 | 4d 61 73 6b 2c 75 70 64 |,autoKey|Mask,upd|
|00001140| 61 74 65 4d 61 73 6b 2c | 64 69 73 6b 4d 61 73 6b |ateMask,|diskMask|
|00001150| 2c 0d 20 61 63 74 69 76 | 4d 61 73 6b 2c 61 62 6f |,. activ|Mask,abo|
|00001160| 72 74 4d 61 73 6b 2c 72 | 65 73 65 72 76 65 4d 61 |rtMask,r|eserveMa|
|00001170| 73 6b 2c 64 72 69 76 65 | 72 4d 61 73 6b 2c 61 70 |sk,drive|rMask,ap|
|00001180| 70 31 4d 61 73 6b 2c 61 | 70 70 32 4d 61 73 6b 2c |p1Mask,a|pp2Mask,|
|00001190| 61 70 70 33 4d 61 73 6b | 2c 61 70 70 34 4d 61 73 |app3Mask|,app4Mas|
|000011a0| 6b 2c 0d 0d 20 6f 70 74 | 69 6f 6e 4b 65 79 2c 61 |k,.. opt|ionKey,a|
|000011b0| 6c 70 68 61 4c 6f 63 6b | 2c 53 68 69 66 74 4b 65 |lphaLock|,ShiftKe|
|000011c0| 79 2c 43 6d 64 4b 65 79 | 2c 42 74 6e 53 74 61 74 |y,CmdKey|,BtnStat|
|000011d0| 65 2c 61 63 74 69 76 65 | 46 6c 61 67 2c 63 68 61 |e,active|Flag,cha|
|000011e0| 6e 67 65 46 6c 61 67 2c | 0d 0d 20 4f 73 45 72 72 |ngeFlag,|.. OsErr|
|000011f0| 2c 4c 6f 6e 67 49 6e 74 | 2c 45 76 65 6e 74 52 65 |,LongInt|,EventRe|
|00001200| 63 6f 72 64 2c 4b 65 79 | 4d 61 70 2c 0d 0d 20 45 |cord,Key|Map,.. E|
|00001210| 76 65 6e 74 41 76 61 69 | 6c 2c 47 65 74 4e 65 78 |ventAvai|l,GetNex|
|00001220| 74 45 76 65 6e 74 2c 53 | 74 69 6c 6c 44 6f 77 6e |tEvent,S|tillDown|
|00001230| 2c 57 61 69 74 4d 6f 75 | 73 65 55 70 2c 47 65 74 |,WaitMou|seUp,Get|
|00001240| 4d 6f 75 73 65 2c 54 69 | 63 6b 43 6f 75 6e 74 2c |Mouse,Ti|ckCount,|
|00001250| 42 75 74 74 6f 6e 2c 47 | 65 74 4b 65 79 73 2c 0d |Button,G|etKeys,.|
|00001260| 20 50 6f 73 74 45 76 65 | 6e 74 2c 46 6c 75 73 68 | PostEve|nt,Flush|
|00001270| 45 76 65 6e 74 73 2c 53 | 65 74 45 76 65 6e 74 4d |Events,S|etEventM|
|00001280| 61 73 6b 2c 4f 53 45 76 | 65 6e 74 41 76 61 69 6c |ask,OSEv|entAvail|
|00001290| 2c 47 65 74 4f 53 45 76 | 65 6e 74 3b 0d 0d 43 4f |,GetOSEv|ent;..CO|
|000012a0| 4e 53 54 0d 20 20 65 76 | 65 72 79 45 76 65 6e 74 |NST. ev|eryEvent|
|000012b0| 20 20 3d 20 2d 31 3b 0d | 20 20 6e 75 6c 6c 45 76 | = -1;.| nullEv|
|000012c0| 65 6e 74 20 20 20 3d 20 | 30 3b 20 20 6d 6f 75 73 |ent = |0; mous|
|000012d0| 65 44 6f 77 6e 20 20 20 | 3d 20 31 3b 20 20 6d 6f |eDown |= 1; mo|
|000012e0| 75 73 65 55 70 20 20 20 | 20 20 3d 20 32 3b 20 20 |useUp | = 2; |
|000012f0| 6b 65 79 44 6f 77 6e 20 | 20 20 20 20 3d 20 33 3b |keyDown | = 3;|
|00001300| 0d 20 20 6b 65 79 55 70 | 20 20 20 20 20 20 20 3d |. keyUp| =|
|00001310| 20 34 3b 20 61 75 74 6f | 4b 65 79 20 20 20 20 20 | 4; auto|Key |
|00001320| 3d 20 35 3b 20 20 75 70 | 64 61 74 65 45 76 74 20 |= 5; up|dateEvt |
|00001330| 20 20 3d 20 36 3b 20 20 | 64 69 73 6b 45 76 74 20 | = 6; |diskEvt |
|00001340| 20 20 20 20 3d 20 37 3b | 0d 20 20 61 63 74 69 76 | = 7;|. activ|
|00001350| 61 74 65 45 76 74 20 3d | 20 38 3b 20 20 61 62 6f |ateEvt =| 8; abo|
|00001360| 72 74 45 76 74 20 20 20 | 20 3d 20 39 3b 20 20 72 |rtEvt | = 9; r|
|00001370| 65 73 65 72 76 65 45 76 | 74 20 20 3d 20 31 30 3b |eserveEv|t = 10;|
|00001380| 20 20 64 72 69 76 65 72 | 45 76 74 20 20 20 3d 20 | driver|Evt = |
|00001390| 31 31 3b 0d 20 20 61 70 | 70 31 45 76 74 20 20 20 |11;. ap|p1Evt |
|000013a0| 20 20 3d 20 31 32 3b 20 | 61 70 70 32 45 76 74 20 | = 12; |app2Evt |
|000013b0| 20 20 20 20 3d 20 31 33 | 3b 20 20 61 70 70 33 45 | = 13|; app3E|
|000013c0| 76 74 20 20 20 20 20 3d | 20 31 34 3b 20 20 61 70 |vt =| 14; ap|
|000013d0| 70 34 45 76 74 20 20 20 | 20 20 3d 20 31 35 3b 0d |p4Evt | = 15;.|
|000013e0| 0d 20 20 6e 75 6c 6c 4d | 61 73 6b 20 20 3d 20 20 |. nullM|ask = |
|000013f0| 20 31 3b 20 6d 44 6f 77 | 6e 4d 61 73 6b 20 20 20 | 1; mDow|nMask |
|00001400| 3d 20 20 20 32 3b 20 6d | 55 70 4d 61 73 6b 20 20 |= 2; m|UpMask |
|00001410| 20 20 20 3d 20 20 20 20 | 34 3b 20 6b 65 79 44 6f | = |4; keyDo|
|00001420| 77 6e 4d 61 73 6b 20 20 | 20 3d 20 20 20 20 38 3b |wnMask | = 8;|
|00001430| 0d 20 20 6b 65 79 55 70 | 4d 61 73 6b 20 3d 20 20 |. keyUp|Mask = |
|00001440| 31 36 3b 20 61 75 74 6f | 4b 65 79 4d 61 73 6b 20 |16; auto|KeyMask |
|00001450| 3d 20 20 33 32 3b 20 75 | 70 64 61 74 65 4d 61 73 |= 32; u|pdateMas|
|00001460| 6b 20 20 3d 20 20 20 36 | 34 3b 20 64 69 73 6b 4d |k = 6|4; diskM|
|00001470| 61 73 6b 20 20 20 20 20 | 20 3d 20 20 31 32 38 3b |ask | = 128;|
|00001480| 0d 20 20 61 63 74 69 76 | 4d 61 73 6b 20 3d 20 32 |. activ|Mask = 2|
|00001490| 35 36 3b 20 61 62 6f 72 | 74 4d 61 73 6b 20 20 20 |56; abor|tMask |
|000014a0| 3d 20 35 31 32 3b 20 72 | 65 73 65 72 76 65 4d 61 |= 512; r|eserveMa|
|000014b0| 73 6b 20 3d 20 31 30 32 | 34 3b 20 64 72 69 76 65 |sk = 102|4; drive|
|000014c0| 72 4d 61 73 6b 20 20 20 | 20 3d 20 32 30 34 38 3b |rMask | = 2048;|
|000014d0| 0d 20 20 61 70 70 31 4d | 61 73 6b 20 3d 20 34 30 |. app1M|ask = 40|
|000014e0| 39 36 3b 20 20 61 70 70 | 32 4d 61 73 6b 20 3d 20 |96; app|2Mask = |
|000014f0| 38 31 39 32 3b 20 20 61 | 70 70 33 4d 61 73 6b 20 |8192; a|pp3Mask |
|00001500| 20 20 20 3d 20 31 36 33 | 38 34 3b 20 61 70 70 34 | = 163|84; app4|
|00001510| 4d 61 73 6b 20 3d 20 38 | 30 30 30 48 20 28 2a 20 |Mask = 8|000H (* |
|00001520| 2d 33 32 37 36 38 20 2a | 29 3b 0d 0d 0d 20 20 28 |-32768 *|);... (|
|00001530| 2a 20 6d 6f 64 69 66 69 | 65 72 73 20 2a 29 0d 20 |* modifi|ers *). |
|00001540| 20 6f 70 74 69 6f 6e 4b | 65 79 3d 20 32 30 34 38 | optionK|ey= 2048|
|00001550| 3b 20 20 20 20 28 2a 20 | 42 69 74 20 33 20 6f 66 |; (* |Bit 3 of|
|00001560| 20 68 69 67 68 20 62 79 | 74 65 20 20 2a 29 0d 20 | high by|te *). |
|00001570| 20 61 6c 70 68 61 4c 6f | 63 6b 3d 20 31 30 32 34 | alphaLo|ck= 1024|
|00001580| 3b 20 20 20 20 28 2a 20 | 42 69 74 20 32 20 20 2a |; (* |Bit 2 *|
|00001590| 29 0d 20 20 53 68 69 66 | 74 4b 65 79 3d 20 20 20 |). Shif|tKey= |
|000015a0| 35 31 32 3b 20 20 20 20 | 28 2a 20 42 69 74 20 31 |512; |(* Bit 1|
|000015b0| 20 20 2a 29 0d 20 20 43 | 6d 64 4b 65 79 3d 20 20 | *). C|mdKey= |
|000015c0| 20 20 20 32 35 36 3b 20 | 20 20 20 28 2a 20 42 69 | 256; | (* Bi|
|000015d0| 74 20 30 20 20 2a 29 0d | 20 20 42 74 6e 53 74 61 |t 0 *).| BtnSta|
|000015e0| 74 65 3d 20 20 20 31 32 | 38 3b 20 20 20 20 28 2a |te= 12|8; (*|
|000015f0| 20 42 69 74 20 37 20 6f | 66 20 6c 6f 77 20 62 79 | Bit 7 o|f low by|
|00001600| 74 65 20 69 73 20 6d 6f | 75 73 65 20 62 75 74 74 |te is mo|use butt|
|00001610| 6f 6e 20 73 74 61 74 65 | 20 20 2a 29 0d 20 20 61 |on state| *). a|
|00001620| 63 74 69 76 65 46 6c 61 | 67 20 20 3d 20 31 3b 20 |ctiveFla|g = 1; |
|00001630| 20 20 20 28 2a 20 62 69 | 74 20 30 20 6f 66 20 6d | (* bi|t 0 of m|
|00001640| 6f 64 69 66 69 65 72 73 | 20 66 6f 72 20 61 63 74 |odifiers| for act|
|00001650| 69 76 61 74 65 20 65 76 | 65 6e 74 20 20 2a 29 0d |ivate ev|ent *).|
|00001660| 20 20 63 68 61 6e 67 65 | 46 6c 61 67 20 20 3d 20 | change|Flag = |
|00001670| 32 3b 20 20 20 20 28 2a | 20 62 69 74 20 31 20 6f |2; (*| bit 1 o|
|00001680| 66 20 6d 6f 64 69 66 69 | 65 72 73 20 66 6f 72 20 |f modifi|ers for |
|00001690| 61 63 74 69 76 61 74 65 | 20 65 76 65 6e 74 20 20 |activate| event |
|000016a0| 2a 29 0d 0d 20 54 59 50 | 45 20 4f 73 45 72 72 20 |*).. TYP|E OsErr |
|000016b0| 3d 20 49 4e 54 45 47 45 | 52 3b 20 20 4c 6f 6e 67 |= INTEGE|R; Long|
|000016c0| 49 6e 74 20 3d 20 41 44 | 44 52 45 53 53 3b 0d 20 |Int = AD|DRESS;. |
|000016d0| 20 20 20 20 20 45 76 65 | 6e 74 52 65 63 6f 72 64 | Eve|ntRecord|
|000016e0| 20 3d 20 52 45 43 4f 52 | 44 0d 20 20 20 20 20 20 | = RECOR|D. |
|000016f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 77 | | w|
|00001700| 68 61 74 3a 20 20 20 20 | 20 20 49 4e 54 45 47 45 |hat: | INTEGE|
|00001710| 52 3b 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |R;. | |
|00001720| 20 20 20 20 20 20 20 20 | 43 41 53 45 20 42 4f 4f | |CASE BOO|
|00001730| 4c 45 41 4e 20 20 4f 46 | 20 54 52 55 45 3a 20 20 |LEAN OF| TRUE: |
|00001740| 6d 65 73 73 61 67 65 3a | 20 41 44 44 52 45 53 53 |message:| ADDRESS|
|00001750| 3b 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |;. | |
|00001760| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001770| 20 20 20 20 20 20 7c 20 | 46 41 4c 53 45 3a 20 6d | | |FALSE: m|
|00001780| 73 67 63 68 61 72 3a 20 | 41 52 52 41 59 20 5b 30 |sgchar: |ARRAY [0|
|00001790| 2e 2e 33 5d 20 4f 46 20 | 43 48 41 52 3b 20 45 4e |..3] OF |CHAR; EN|
|000017a0| 44 3b 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |D;. | |
|000017b0| 20 20 20 20 20 20 20 20 | 77 68 65 6e 3a 20 20 20 | |when: |
|000017c0| 20 20 20 4c 6f 6e 67 49 | 6e 74 3b 0d 20 20 20 20 | LongI|nt;. |
|000017d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000017e0| 20 77 68 65 72 65 3a 20 | 20 20 20 20 50 6f 69 6e | where: | Poin|
|000017f0| 74 3b 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |t;. | |
|00001800| 20 20 20 20 20 20 20 20 | 43 41 53 45 20 42 4f 4f | |CASE BOO|
|00001810| 4c 45 41 4e 20 4f 46 20 | 54 52 55 45 3a 20 6d 6f |LEAN OF |TRUE: mo|
|00001820| 64 69 66 69 65 72 73 3a | 20 42 49 54 53 45 54 3b |difiers:| BITSET;|
|00001830| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | |
|00001840| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001850| 20 20 20 20 7c 20 46 41 | 4c 53 45 3a 20 6d 6f 64 | | FA|LSE: mod|
|00001860| 69 66 77 72 64 3a 20 43 | 41 52 44 49 4e 41 4c 3b |ifwrd: C|ARDINAL;|
|00001870| 20 45 4e 44 3b 20 28 2a | 20 6d 6f 64 69 66 69 65 | END; (*| modifie|
|00001880| 72 20 77 6f 72 64 20 2a | 29 0d 20 20 20 20 20 20 |r word *|). |
|00001890| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 45 4e | | EN|
|000018a0| 44 3b 0d 0d 20 20 20 20 | 20 20 4b 65 79 4d 61 70 |D;.. | KeyMap|
|000018b0| 20 3d 20 41 52 52 41 59 | 5b 30 2e 2e 33 5d 20 4f | = ARRAY|[0..3] O|
|000018c0| 46 20 4c 6f 6e 67 49 6e | 74 3b 28 2a 20 50 41 43 |F LongIn|t;(* PAC|
|000018d0| 4b 45 44 20 41 52 52 41 | 59 20 5b 31 2e 2e 31 32 |KED ARRA|Y [1..12|
|000018e0| 38 5d 20 4f 46 20 42 4f | 4f 4c 45 41 4e 20 2a 29 |8] OF BO|OLEAN *)|
|000018f0| 0d 0d 50 52 4f 43 45 44 | 55 52 45 20 45 76 65 6e |..PROCED|URE Even|
|00001900| 74 41 76 61 69 6c 28 6d | 61 73 6b 3a 49 4e 54 45 |tAvail(m|ask:INTE|
|00001910| 47 45 52 3b 20 56 41 52 | 20 74 68 65 45 76 65 6e |GER; VAR| theEven|
|00001920| 74 3a 20 45 76 65 6e 74 | 52 65 63 6f 72 64 29 3a |t: Event|Record):|
|00001930| 20 42 4f 4f 4c 45 41 4e | 3b 0d 20 20 20 20 20 20 | BOOLEAN|;. |
|00001940| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001950| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001960| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001970| 20 20 20 20 20 20 20 20 | 20 28 2a 20 49 4e 4c 49 | | (* INLI|
|00001980| 4e 45 20 24 41 39 37 31 | 3b 2a 29 0d 50 52 4f 43 |NE $A971|;*).PROC|
|00001990| 45 44 55 52 45 20 20 47 | 65 74 4e 65 78 74 45 76 |EDURE G|etNextEv|
|000019a0| 65 6e 74 28 6d 61 73 6b | 3a 49 4e 54 45 47 45 52 |ent(mask|:INTEGER|
|000019b0| 3b 20 56 41 52 20 74 68 | 65 45 76 65 6e 74 3a 20 |; VAR th|eEvent: |
|000019c0| 45 76 65 6e 74 52 65 63 | 6f 72 64 29 3a 20 42 4f |EventRec|ord): BO|
|000019d0| 4f 4c 45 41 4e 3b 0d 20 | 20 20 20 20 20 20 20 20 |OLEAN;. | |
|000019e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000019f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 28 2a | | (*|
|00001a00| 20 49 4e 4c 49 4e 45 20 | 24 41 39 37 30 3b 2a 29 | INLINE |$A970;*)|
|00001a10| 0d 50 52 4f 43 45 44 55 | 52 45 20 53 74 69 6c 6c |.PROCEDU|RE Still|
|00001a20| 44 6f 77 6e 20 28 29 3a | 42 4f 4f 4c 45 41 4e 3b |Down ():|BOOLEAN;|
|00001a30| 20 20 20 20 20 20 20 20 | 28 2a 20 20 20 20 49 4e | |(* IN|
|00001a40| 4c 49 4e 45 20 24 41 39 | 37 33 3b 2a 29 0d 50 52 |LINE $A9|73;*).PR|
|00001a50| 4f 43 45 44 55 52 45 20 | 57 61 69 74 4d 6f 75 73 |OCEDURE |WaitMous|
|00001a60| 65 55 70 20 28 29 3a 42 | 4f 4f 4c 45 41 4e 3b 20 |eUp ():B|OOLEAN; |
|00001a70| 20 20 20 20 20 28 2a 20 | 20 20 49 4e 4c 49 4e 45 | (* | INLINE|
|00001a80| 20 24 41 39 37 37 3b 2a | 29 0d 50 52 4f 43 45 44 | $A977;*|).PROCED|
|00001a90| 55 52 45 20 47 65 74 4d | 6f 75 73 65 20 28 56 41 |URE GetM|ouse (VA|
|00001aa0| 52 20 70 74 3a 20 50 6f | 69 6e 74 29 3b 20 20 20 |R pt: Po|int); |
|00001ab0| 20 28 2a 20 49 4e 4c 49 | 4e 45 20 24 41 39 37 32 | (* INLI|NE $A972|
|00001ac0| 3b 2a 29 0d 50 52 4f 43 | 45 44 55 52 45 20 54 69 |;*).PROC|EDURE Ti|
|00001ad0| 63 6b 43 6f 75 6e 74 20 | 28 29 3a 4c 6f 6e 67 49 |ckCount |():LongI|
|00001ae0| 6e 74 3b 20 20 20 20 20 | 20 20 20 28 2a 20 49 4e |nt; | (* IN|
|00001af0| 4c 49 4e 45 20 24 41 39 | 37 35 3b 2a 29 0d 50 52 |LINE $A9|75;*).PR|
|00001b00| 4f 43 45 44 55 52 45 20 | 42 75 74 74 6f 6e 20 28 |OCEDURE |Button (|
|00001b10| 29 3a 20 42 4f 4f 4c 45 | 41 4e 3b 20 20 20 20 20 |): BOOLE|AN; |
|00001b20| 20 20 20 20 20 28 2a 49 | 4e 4c 49 4e 45 20 24 41 | (*I|NLINE $A|
|00001b30| 39 37 34 3b 2a 29 0d 50 | 52 4f 43 45 44 55 52 45 |974;*).P|ROCEDURE|
|00001b40| 20 47 65 74 4b 65 79 73 | 28 56 41 52 20 6b 3a 20 | GetKeys|(VAR k: |
|00001b50| 4b 65 79 4d 61 70 29 3b | 20 20 20 20 20 20 28 2a |KeyMap);| (*|
|00001b60| 49 4e 4c 49 4e 45 20 24 | 41 39 37 36 3b 2a 29 0d |INLINE $|A976;*).|
|00001b70| 0d 50 52 4f 43 45 44 55 | 52 45 20 50 6f 73 74 45 |.PROCEDU|RE PostE|
|00001b80| 76 65 6e 74 20 28 65 76 | 65 6e 74 4e 75 6d 3a 20 |vent (ev|entNum: |
|00001b90| 49 4e 54 45 47 45 52 3b | 20 65 76 65 6e 74 4d 73 |INTEGER;| eventMs|
|00001ba0| 67 3a 20 4c 6f 6e 67 49 | 6e 74 29 3a 20 4f 73 45 |g: LongI|nt): OsE|
|00001bb0| 72 72 3b 0d 50 52 4f 43 | 45 44 55 52 45 20 46 6c |rr;.PROC|EDURE Fl|
|00001bc0| 75 73 68 45 76 65 6e 74 | 73 20 28 77 68 69 63 68 |ushEvent|s (which|
|00001bd0| 4d 61 73 6b 2c 73 74 6f | 70 4d 61 73 6b 3a 20 49 |Mask,sto|pMask: I|
|00001be0| 4e 54 45 47 45 52 29 3b | 0d 50 52 4f 43 45 44 55 |NTEGER);|.PROCEDU|
|00001bf0| 52 45 20 53 65 74 45 76 | 65 6e 74 4d 61 73 6b 20 |RE SetEv|entMask |
|00001c00| 28 74 68 65 4d 61 73 6b | 3a 20 49 4e 54 45 47 45 |(theMask|: INTEGE|
|00001c10| 52 29 3b 0d 50 52 4f 43 | 45 44 55 52 45 20 4f 53 |R);.PROC|EDURE OS|
|00001c20| 45 76 65 6e 74 41 76 61 | 69 6c 20 28 6d 61 73 6b |EventAva|il (mask|
|00001c30| 3a 20 49 4e 54 45 47 45 | 52 3b 20 56 41 52 20 74 |: INTEGE|R; VAR t|
|00001c40| 68 65 45 76 65 6e 74 3a | 20 45 76 65 6e 74 52 65 |heEvent:| EventRe|
|00001c50| 63 6f 72 64 29 3a 20 42 | 4f 4f 4c 45 41 4e 3b 0d |cord): B|OOLEAN;.|
|00001c60| 50 52 4f 43 45 44 55 52 | 45 20 47 65 74 4f 53 45 |PROCEDUR|E GetOSE|
|00001c70| 76 65 6e 74 20 20 28 6d | 61 73 6b 3a 20 49 4e 54 |vent (m|ask: INT|
|00001c80| 45 47 45 52 3b 20 56 41 | 52 20 74 68 65 45 76 65 |EGER; VA|R theEve|
|00001c90| 6e 74 3a 20 45 76 65 6e | 74 52 65 63 6f 72 64 29 |nt: Even|tRecord)|
|00001ca0| 3a 20 42 4f 4f 4c 45 41 | 4e 3b 0d 45 4e 44 20 45 |: BOOLEA|N;.END E|
|00001cb0| 76 65 6e 74 4d 67 72 2e | 0d 28 2a 3d 3d 3d 3d 3d |ventMgr.|.(*=====|
|00001cc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001cd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001ce0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001cf0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001d00| 3d 3d 2a 29 0d 0d 0d 0d | 66 82 50 4d 61 67 0c 45 |==*)....|f.PMag.E|
|00001d10| 56 45 4e 54 4d 47 52 2e | 53 59 4d 53 59 4d 00 22 |VENTMGR.|SYMSYM."|
|00001d20| 00 40 00 40 38 7c 00 40 | 10 32 00 40 10 32 00 00 |.@.@8|.@|.2.@.2..|
|00001d30| 00 40 33 f4 00 00 00 00 | 00 00 a0 23 00 00 6e 94 |.@3.....|...#..n.|
|00001d40| 00 00 4d d8 00 40 2c 72 | 00 1d 00 47 00 00 4d 53 |..M..@,r|...G..MS|
|00001d50| 59 4d 3f 3f 3f 3f 01 00 | 00 00 00 00 0b 14 00 00 |YM????..|........|
|00001d60| 00 00 00 00 00 00 00 00 | 00 00 6c 83 07 00 03 07 |........|..l.....|
|00001d70| aa 25 07 05 82 07 00 03 | 13 45 76 65 6e 74 4d 67 |.%......|.EventMg|
|00001d80| 72 00 01 07 aa 25 07 05 | 6d 07 00 31 13 51 75 69 |r....%..|m..1.Qui|
|00001d90| 63 6b 44 72 61 77 00 03 | 13 53 59 53 54 45 4d 00 |ckDraw..|.SYSTEM.|
|00001da0| 04 13 56 48 53 65 6c 65 | 63 74 00 13 50 6f 69 6e |..VHSele|ct..Poin|
|00001db0| 74 00 0a 13 56 48 53 65 | 6c 65 63 74 00 17 13 76 |t...VHSe|lect...v|
|00001dc0| 00 07 00 00 13 68 00 07 | 00 01 18 0a 13 31 37 37 |.....h..|.....177|
|00001dd0| 37 37 37 00 0b 19 06 00 | 00 00 00 13 56 48 53 65 |777.....|....VHSe|
|00001de0| 6c 65 63 74 00 16 06 00 | 00 00 01 13 56 48 53 65 |lect....|....VHSe|
|00001df0| 6c 65 63 74 00 1a 1c 13 | 49 4e 54 45 47 45 52 00 |lect....|INTEGER.|
|00001e00| 0a 13 50 6f 69 6e 74 00 | 0c 13 76 00 07 00 00 15 |..Point.|..v.....|
|00001e10| 13 49 4e 54 45 47 45 52 | 00 13 68 00 07 00 02 15 |.INTEGER|..h.....|
|00001e20| 13 49 4e 54 45 47 45 52 | 00 13 76 68 00 07 00 00 |.INTEGER|..vh....|
|00001e30| 15 13 31 37 37 37 37 37 | 00 1b 15 13 49 4e 54 45 |..177777|....INTE|
|00001e40| 47 45 52 00 1c 07 00 00 | 07 00 01 15 07 00 04 1e |GER.....|........|
|00001e50| 1e 07 00 04 02 01 07 aa | 25 07 05 82 07 00 03 13 |........|%.......|
|00001e60| 45 76 65 6e 74 4d 67 72 | 00 03 13 53 59 53 54 45 |EventMgr|...SYSTE|
|00001e70| 4d 00 13 51 75 69 63 6b | 44 72 61 77 00 04 13 65 |M..Quick|Draw...e|
|00001e80| 76 65 72 79 45 76 65 6e | 74 00 13 6e 75 6c 6c 45 |veryEven|t..nullE|
|00001e90| 76 65 6e 74 00 13 6d 6f | 75 73 65 44 6f 77 6e 00 |vent..mo|useDown.|
|00001ea0| 13 6d 6f 75 73 65 55 70 | 00 13 6b 65 79 44 6f 77 |.mouseUp|..keyDow|
|00001eb0| 6e 00 13 6b 65 79 55 70 | 00 13 61 75 74 6f 4b 65 |n..keyUp|..autoKe|
|00001ec0| 79 00 13 75 70 64 61 74 | 65 45 76 74 00 13 64 69 |y..updat|eEvt..di|
|00001ed0| 73 6b 45 76 74 00 13 61 | 63 74 69 76 61 74 65 45 |skEvt..a|ctivateE|
|00001ee0| 76 74 00 13 61 62 6f 72 | 74 45 76 74 00 13 72 65 |vt..abor|tEvt..re|
|00001ef0| 73 65 72 76 65 45 76 74 | 00 13 64 72 69 76 65 72 |serveEvt|..driver|
|00001f00| 45 76 74 00 13 61 70 70 | 31 45 76 74 00 13 61 70 |Evt..app|1Evt..ap|
|00001f10| 70 32 45 76 74 00 13 61 | 70 70 33 45 76 74 00 13 |p2Evt..a|pp3Evt..|
|00001f20| 61 70 70 34 45 76 74 00 | 13 6e 75 6c 6c 4d 61 73 |app4Evt.|.nullMas|
|00001f30| 6b 00 13 6d 44 6f 77 6e | 4d 61 73 6b 00 13 6d 55 |k..mDown|Mask..mU|
|00001f40| 70 4d 61 73 6b 00 13 6b | 65 79 44 6f 77 6e 4d 61 |pMask..k|eyDownMa|
|00001f50| 73 6b 00 13 6b 65 79 55 | 70 4d 61 73 6b 00 13 61 |sk..keyU|pMask..a|
|00001f60| 75 74 6f 4b 65 79 4d 61 | 73 6b 00 13 75 70 64 61 |utoKeyMa|sk..upda|
|00001f70| 74 65 4d 61 73 6b 00 13 | 64 69 73 6b 4d 61 73 6b |teMask..|diskMask|
|00001f80| 00 13 61 63 74 69 76 4d | 61 73 6b 00 13 61 62 6f |..activM|ask..abo|
|00001f90| 72 74 4d 61 73 6b 00 13 | 72 65 73 65 72 76 65 4d |rtMask..|reserveM|
|00001fa0| 61 73 6b 00 13 64 72 69 | 76 65 72 4d 61 73 6b 00 |ask..dri|verMask.|
|00001fb0| 13 61 70 70 31 4d 61 73 | 6b 00 13 61 70 70 32 4d |.app1Mas|k..app2M|
|00001fc0| 61 73 6b 00 13 61 70 70 | 33 4d 61 73 6b 00 13 61 |ask..app|3Mask..a|
|00001fd0| 70 70 34 4d 61 73 6b 00 | 13 6f 70 74 69 6f 6e 4b |pp4Mask.|.optionK|
|00001fe0| 65 79 00 13 61 6c 70 68 | 61 4c 6f 63 6b 00 13 53 |ey..alph|aLock..S|
|00001ff0| 68 69 66 74 4b 65 79 00 | 13 43 6d 64 4b 65 79 00 |hiftKey.|.CmdKey.|
|00002000| 13 42 74 6e 53 74 61 74 | 65 00 13 61 63 74 69 76 |.BtnStat|e..activ|
|00002010| 65 46 6c 61 67 00 13 63 | 68 61 6e 67 65 46 6c 61 |eFlag..c|hangeFla|
|00002020| 67 00 13 4f 73 45 72 72 | 00 13 4c 6f 6e 67 49 6e |g..OsErr|..LongIn|
|00002030| 74 00 13 45 76 65 6e 74 | 52 65 63 6f 72 64 00 13 |t..Event|Record..|
|00002040| 4b 65 79 4d 61 70 00 13 | 45 76 65 6e 74 41 76 61 |KeyMap..|EventAva|
|00002050| 69 6c 00 13 47 65 74 4e | 65 78 74 45 76 65 6e 74 |il..GetN|extEvent|
|00002060| 00 13 53 74 69 6c 6c 44 | 6f 77 6e 00 13 57 61 69 |..StillD|own..Wai|
|00002070| 74 4d 6f 75 73 65 55 70 | 00 13 47 65 74 4d 6f 75 |tMouseUp|..GetMou|
|00002080| 73 65 00 13 54 69 63 6b | 43 6f 75 6e 74 00 13 42 |se..Tick|Count..B|
|00002090| 75 74 74 6f 6e 00 13 47 | 65 74 4b 65 79 73 00 13 |utton..G|etKeys..|
|000020a0| 50 6f 73 74 45 76 65 6e | 74 00 13 46 6c 75 73 68 |PostEven|t..Flush|
|000020b0| 45 76 65 6e 74 73 00 13 | 53 65 74 45 76 65 6e 74 |Events..|SetEvent|
|000020c0| 4d 61 73 6b 00 13 4f 53 | 45 76 65 6e 74 41 76 61 |Mask..OS|EventAva|
|000020d0| 69 6c 00 13 47 65 74 4f | 53 45 76 65 6e 74 00 05 |il..GetO|SEvent..|
|000020e0| 13 65 76 65 72 79 45 76 | 65 6e 74 00 06 00 00 ff |.everyEv|ent.....|
|000020f0| ff 13 49 4e 54 45 47 45 | 52 00 05 13 6e 75 6c 6c |..INTEGE|R...null|
|00002100| 45 76 65 6e 74 00 06 00 | 00 00 00 13 49 4e 54 2d |Event...|....INT-|
|00002110| 43 41 52 44 00 05 13 6d | 6f 75 73 65 44 6f 77 6e |CARD...m|ouseDown|
|00002120| 00 06 00 00 00 01 13 49 | 4e 54 2d 43 41 52 44 00 |.......I|NT-CARD.|
|00002130| 05 13 6d 6f 75 73 65 55 | 70 00 06 00 00 00 02 13 |..mouseU|p.......|
|00002140| 49 4e 54 2d 43 41 52 44 | 00 05 13 6b 65 79 44 6f |INT-CARD|...keyDo|
|00002150| 77 6e 00 06 00 00 00 03 | 13 49 4e 54 2d 43 41 52 |wn......|.INT-CAR|
|00002160| 44 00 05 13 6b 65 79 55 | 70 00 06 00 00 00 04 13 |D...keyU|p.......|
|00002170| 49 4e 54 2d 43 41 52 44 | 00 05 13 61 75 74 6f 4b |INT-CARD|...autoK|
|00002180| 65 79 00 06 00 00 00 05 | 13 49 4e 54 2d 43 41 52 |ey......|.INT-CAR|
|00002190| 44 00 05 13 75 70 64 61 | 74 65 45 76 74 00 06 00 |D...upda|teEvt...|
|000021a0| 00 00 06 13 49 4e 54 2d | 43 41 52 44 00 05 13 64 |....INT-|CARD...d|
|000021b0| 69 73 6b 45 76 74 00 06 | 00 00 00 07 13 49 4e 54 |iskEvt..|.....INT|
|000021c0| 2d 43 41 52 44 00 05 13 | 61 63 74 69 76 61 74 65 |-CARD...|activate|
|000021d0| 45 76 74 00 06 00 00 00 | 08 13 49 4e 54 2d 43 41 |Evt.....|..INT-CA|
|000021e0| 52 44 00 05 13 61 62 6f | 72 74 45 76 74 00 06 00 |RD...abo|rtEvt...|
|000021f0| 00 00 09 13 49 4e 54 2d | 43 41 52 44 00 05 13 72 |....INT-|CARD...r|
|00002200| 65 73 65 72 76 65 45 76 | 74 00 06 00 00 00 0a 13 |eserveEv|t.......|
|00002210| 49 4e 54 2d 43 41 52 44 | 00 05 13 64 72 69 76 65 |INT-CARD|...drive|
|00002220| 72 45 76 74 00 06 00 00 | 00 0b 13 49 4e 54 2d 43 |rEvt....|...INT-C|
|00002230| 41 52 44 00 05 13 61 70 | 70 31 45 76 74 00 06 00 |ARD...ap|p1Evt...|
|00002240| 00 00 0c 13 49 4e 54 2d | 43 41 52 44 00 05 13 61 |....INT-|CARD...a|
|00002250| 70 70 32 45 76 74 00 06 | 00 00 00 0d 13 49 4e 54 |pp2Evt..|.....INT|
|00002260| 2d 43 41 52 44 00 05 13 | 61 70 70 33 45 76 74 00 |-CARD...|app3Evt.|
|00002270| 06 00 00 00 0e 13 49 4e | 54 2d 43 41 52 44 00 05 |......IN|T-CARD..|
|00002280| 13 61 70 70 34 45 76 74 | 00 06 00 00 00 0f 13 49 |.app4Evt|.......I|
|00002290| 4e 54 2d 43 41 52 44 00 | 05 13 6e 75 6c 6c 4d 61 |NT-CARD.|..nullMa|
|000022a0| 73 6b 00 06 00 00 00 01 | 13 49 4e 54 2d 43 41 52 |sk......|.INT-CAR|
|000022b0| 44 00 05 13 6d 44 6f 77 | 6e 4d 61 73 6b 00 06 00 |D...mDow|nMask...|
|000022c0| 00 00 02 13 49 4e 54 2d | 43 41 52 44 00 05 13 6d |....INT-|CARD...m|
|000022d0| 55 70 4d 61 73 6b 00 06 | 00 00 00 04 13 49 4e 54 |UpMask..|.....INT|
|000022e0| 2d 43 41 52 44 00 05 13 | 6b 65 79 44 6f 77 6e 4d |-CARD...|keyDownM|
|000022f0| 61 73 6b 00 06 00 00 00 | 08 13 49 4e 54 2d 43 41 |ask.....|..INT-CA|
|00002300| 52 44 00 05 13 6b 65 79 | 55 70 4d 61 73 6b 00 06 |RD...key|UpMask..|
|00002310| 00 00 00 10 13 49 4e 54 | 2d 43 41 52 44 00 05 13 |.....INT|-CARD...|
|00002320| 61 75 74 6f 4b 65 79 4d | 61 73 6b 00 06 00 00 00 |autoKeyM|ask.....|
|00002330| 20 13 49 4e 54 2d 43 41 | 52 44 00 05 13 75 70 64 | .INT-CA|RD...upd|
|00002340| 61 74 65 4d 61 73 6b 00 | 06 00 00 00 40 13 49 4e |ateMask.|....@.IN|
|00002350| 54 2d 43 41 52 44 00 05 | 13 64 69 73 6b 4d 61 73 |T-CARD..|.diskMas|
|00002360| 6b 00 06 00 00 00 80 13 | 49 4e 54 2d 43 41 52 44 |k.......|INT-CARD|
|00002370| 00 05 13 61 63 74 69 76 | 4d 61 73 6b 00 06 00 00 |...activ|Mask....|
|00002380| 01 00 13 49 4e 54 2d 43 | 41 52 44 00 05 13 61 62 |...INT-C|ARD...ab|
|00002390| 6f 72 74 4d 61 73 6b 00 | 06 00 00 02 00 13 49 4e |ortMask.|......IN|
|000023a0| 54 2d 43 41 52 44 00 05 | 13 72 65 73 65 72 76 65 |T-CARD..|.reserve|
|000023b0| 4d 61 73 6b 00 06 00 00 | 04 00 13 49 4e 54 2d 43 |Mask....|...INT-C|
|000023c0| 41 52 44 00 05 13 64 72 | 69 76 65 72 4d 61 73 6b |ARD...dr|iverMask|
|000023d0| 00 06 00 00 08 00 13 49 | 4e 54 2d 43 41 52 44 00 |.......I|NT-CARD.|
|000023e0| 05 13 61 70 70 31 4d 61 | 73 6b 00 06 00 00 10 00 |..app1Ma|sk......|
|000023f0| 13 49 4e 54 2d 43 41 52 | 44 00 05 13 61 70 70 32 |.INT-CAR|D...app2|
|00002400| 4d 61 73 6b 00 06 00 00 | 20 00 13 49 4e 54 2d 43 |Mask....| ..INT-C|
|00002410| 41 52 44 00 05 13 61 70 | 70 33 4d 61 73 6b 00 06 |ARD...ap|p3Mask..|
|00002420| 00 00 40 00 13 49 4e 54 | 2d 43 41 52 44 00 05 13 |..@..INT|-CARD...|
|00002430| 61 70 70 34 4d 61 73 6b | 00 06 00 00 80 00 13 43 |app4Mask|.......C|
|00002440| 41 52 44 49 4e 41 4c 00 | 05 13 6f 70 74 69 6f 6e |ARDINAL.|..option|
|00002450| 4b 65 79 00 06 00 00 08 | 00 13 49 4e 54 2d 43 41 |Key.....|..INT-CA|
|00002460| 52 44 00 05 13 61 6c 70 | 68 61 4c 6f 63 6b 00 06 |RD...alp|haLock..|
|00002470| 00 00 04 00 13 49 4e 54 | 2d 43 41 52 44 00 05 13 |.....INT|-CARD...|
|00002480| 53 68 69 66 74 4b 65 79 | 00 06 00 00 02 00 13 49 |ShiftKey|.......I|
|00002490| 4e 54 2d 43 41 52 44 00 | 05 13 43 6d 64 4b 65 79 |NT-CARD.|..CmdKey|
|000024a0| 00 06 00 00 01 00 13 49 | 4e 54 2d 43 41 52 44 00 |.......I|NT-CARD.|
|000024b0| 05 13 42 74 6e 53 74 61 | 74 65 00 06 00 00 00 80 |..BtnSta|te......|
|000024c0| 13 49 4e 54 2d 43 41 52 | 44 00 05 13 61 63 74 69 |.INT-CAR|D...acti|
|000024d0| 76 65 46 6c 61 67 00 06 | 00 00 00 01 13 49 4e 54 |veFlag..|.....INT|
|000024e0| 2d 43 41 52 44 00 05 13 | 63 68 61 6e 67 65 46 6c |-CARD...|changeFl|
|000024f0| 61 67 00 06 00 00 00 02 | 13 49 4e 54 2d 43 41 52 |ag......|.INT-CAR|
|00002500| 44 00 0a 13 4f 73 45 72 | 72 00 13 49 4e 54 45 47 |D...OsEr|r..INTEG|
|00002510| 45 52 00 0a 13 4c 6f 6e | 67 49 6e 74 00 13 53 59 |ER...Lon|gInt..SY|
|00002520| 53 54 45 4d 00 14 13 41 | 44 44 52 45 53 53 00 0a |STEM...A|DDRESS..|
|00002530| 13 31 37 37 37 37 37 00 | 0b 19 06 00 00 00 00 13 |.177777.|........|
|00002540| 43 41 52 44 49 4e 41 4c | 00 16 06 00 00 00 03 13 |CARDINAL|........|
|00002550| 43 41 52 44 49 4e 41 4c | 00 1a 1c 13 43 48 41 52 |CARDINAL|....CHAR|
|00002560| 00 0a 13 45 76 65 6e 74 | 52 65 63 6f 72 64 00 0c |...Event|Record..|
|00002570| 13 77 68 61 74 00 07 00 | 00 15 13 49 4e 54 45 47 |.what...|...INTEG|
|00002580| 45 52 00 13 6d 65 73 73 | 61 67 65 00 07 00 02 15 |ER..mess|age.....|
|00002590| 13 53 59 53 54 45 4d 00 | 14 13 41 44 44 52 45 53 |.SYSTEM.|..ADDRES|
|000025a0| 53 00 13 6d 73 67 63 68 | 61 72 00 07 00 02 15 13 |S..msgch|ar......|
|000025b0| 31 37 37 37 37 37 00 13 | 77 68 65 6e 00 07 00 06 |177777..|when....|
|000025c0| 15 13 53 59 53 54 45 4d | 00 14 13 41 44 44 52 45 |..SYSTEM|...ADDRE|
|000025d0| 53 53 00 13 77 68 65 72 | 65 00 07 00 0a 15 13 51 |SS..wher|e......Q|
|000025e0| 75 69 63 6b 44 72 61 77 | 00 14 13 50 6f 69 6e 74 |uickDraw|...Point|
|000025f0| 00 13 6d 6f 64 69 66 69 | 65 72 73 00 07 00 0e 15 |..modifi|ers.....|
|00002600| 13 42 49 54 53 45 54 00 | 13 6d 6f 64 69 66 77 72 |.BITSET.|.modifwr|
|00002610| 64 00 07 00 0e 15 13 43 | 41 52 44 49 4e 41 4c 00 |d......C|ARDINAL.|
|00002620| 1b 15 13 42 4f 4f 4c 45 | 41 4e 00 1c 07 00 01 07 |...BOOLE|AN......|
|00002630| 00 00 15 07 00 10 1e 1e | 07 00 10 0a 13 4b 65 79 |........|.....Key|
|00002640| 4d 61 70 00 0b 19 06 00 | 00 00 00 13 43 41 52 44 |Map.....|....CARD|
|00002650| 49 4e 41 4c 00 16 06 00 | 00 00 03 13 43 41 52 44 |INAL....|....CARD|
|00002660| 49 4e 41 4c 00 1a 1c 13 | 53 59 53 54 45 4d 00 14 |INAL....|SYSTEM..|
|00002670| 13 41 44 44 52 45 53 53 | 00 11 13 45 76 65 6e 74 |.ADDRESS|...Event|
|00002680| 41 76 61 69 6c 00 07 00 | 01 11 17 13 49 4e 54 45 |Avail...|....INTE|
|00002690| 47 45 52 00 10 13 45 76 | 65 6e 74 52 65 63 6f 72 |GER...Ev|entRecor|
|000026a0| 64 00 18 15 13 42 4f 4f | 4c 45 41 4e 00 11 13 47 |d....BOO|LEAN...G|
|000026b0| 65 74 4e 65 78 74 45 76 | 65 6e 74 00 07 00 02 11 |etNextEv|ent.....|
|000026c0| 17 13 49 4e 54 45 47 45 | 52 00 10 13 45 76 65 6e |..INTEGE|R...Even|
|000026d0| 74 52 65 63 6f 72 64 00 | 18 15 13 42 4f 4f 4c 45 |tRecord.|...BOOLE|
|000026e0| 41 4e 00 11 13 53 74 69 | 6c 6c 44 6f 77 6e 00 07 |AN...Sti|llDown..|
|000026f0| 00 03 11 17 18 15 13 42 | 4f 4f 4c 45 41 4e 00 11 |.......B|OOLEAN..|
|00002700| 13 57 61 69 74 4d 6f 75 | 73 65 55 70 00 07 00 04 |.WaitMou|seUp....|
|00002710| 11 17 18 15 13 42 4f 4f | 4c 45 41 4e 00 11 13 47 |.....BOO|LEAN...G|
|00002720| 65 74 4d 6f 75 73 65 00 | 07 00 05 11 17 10 13 51 |etMouse.|.......Q|
|00002730| 75 69 63 6b 44 72 61 77 | 00 14 13 50 6f 69 6e 74 |uickDraw|...Point|
|00002740| 00 18 11 13 54 69 63 6b | 43 6f 75 6e 74 00 07 00 |....Tick|Count...|
|00002750| 06 11 17 18 15 13 53 59 | 53 54 45 4d 00 14 13 41 |......SY|STEM...A|
|00002760| 44 44 52 45 53 53 00 11 | 13 42 75 74 74 6f 6e 00 |DDRESS..|.Button.|
|00002770| 07 00 07 11 17 18 15 13 | 42 4f 4f 4c 45 41 4e 00 |........|BOOLEAN.|
|00002780| 11 13 47 65 74 4b 65 79 | 73 00 07 00 08 11 17 10 |..GetKey|s.......|
|00002790| 13 4b 65 79 4d 61 70 00 | 18 11 13 50 6f 73 74 45 |.KeyMap.|...PostE|
|000027a0| 76 65 6e 74 00 07 00 09 | 11 17 13 49 4e 54 45 47 |vent....|...INTEG|
|000027b0| 45 52 00 13 53 59 53 54 | 45 4d 00 14 13 41 44 44 |ER..SYST|EM...ADD|
|000027c0| 52 45 53 53 00 18 15 13 | 49 4e 54 45 47 45 52 00 |RESS....|INTEGER.|
|000027d0| 11 13 46 6c 75 73 68 45 | 76 65 6e 74 73 00 07 00 |..FlushE|vents...|
|000027e0| 0a 11 17 13 49 4e 54 45 | 47 45 52 00 13 49 4e 54 |....INTE|GER..INT|
|000027f0| 45 47 45 52 00 18 11 13 | 53 65 74 45 76 65 6e 74 |EGER....|SetEvent|
|00002800| 4d 61 73 6b 00 07 00 0b | 11 17 13 49 4e 54 45 47 |Mask....|...INTEG|
|00002810| 45 52 00 18 11 13 4f 53 | 45 76 65 6e 74 41 76 61 |ER....OS|EventAva|
|00002820| 69 6c 00 07 00 0c 11 17 | 13 49 4e 54 45 47 45 52 |il......|.INTEGER|
|00002830| 00 10 13 45 76 65 6e 74 | 52 65 63 6f 72 64 00 18 |...Event|Record..|
|00002840| 15 13 42 4f 4f 4c 45 41 | 4e 00 11 13 47 65 74 4f |..BOOLEA|N...GetO|
|00002850| 53 45 76 65 6e 74 00 07 | 00 0d 11 17 13 49 4e 54 |SEvent..|.....INT|
|00002860| 45 47 45 52 00 10 13 45 | 76 65 6e 74 52 65 63 6f |EGER...E|ventReco|
|00002870| 72 64 00 18 15 13 42 4f | 4f 4c 45 41 4e 00 02 00 |rd....BO|OLEAN...|
|00002880| ad 4a 50 4d 61 67 0e 49 | 4e 54 45 52 4d 49 4e 41 |.JPMag.I|NTERMINA|
|00002890| 4c 2e 44 45 46 4d 00 22 | 00 40 00 40 38 7c 00 40 |L.DEFM."|.@.@8|.@|
|000028a0| 10 32 00 40 10 32 00 00 | 00 40 33 f4 00 00 00 00 |.2.@.2..|.@3.....|
|000028b0| 00 00 a0 23 00 00 6e 94 | 00 00 4d d8 00 40 2c 72 |...#..n.|..M..@,r|
|000028c0| 00 1d 00 47 00 00 54 45 | 58 54 45 44 49 54 01 00 |...G..TE|XTEDIT..|
|000028d0| 00 00 00 00 07 5b 00 00 | 00 00 98 f4 5d 5f 98 f4 |.....[..|....]_..|
|000028e0| 5d 65 17 17 44 45 46 49 | 4e 49 54 49 4f 4e 20 4d |]e..DEFI|NITION M|
|000028f0| 4f 44 55 4c 45 20 49 6e | 54 65 72 6d 69 6e 61 6c |ODULE In|Terminal|
|00002900| 3b 0d 0d 28 2a 20 61 20 | 63 6f 6c 6c 65 63 74 69 |;..(* a |collecti|
|00002910| 6f 6e 20 6f 66 20 69 6e | 70 75 74 20 72 6f 75 74 |on of in|put rout|
|00002920| 69 6e 65 73 2c 20 61 6e | 64 20 73 74 72 69 6e 67 |ines, an|d string|
|00002930| 20 2d 3e 20 6e 75 6d 62 | 65 72 20 63 6f 6e 76 65 | -> numb|er conve|
|00002940| 72 73 69 6f 6e 73 20 2a | 29 0d 0d 46 52 4f 4d 20 |rsions *|)..FROM |
|00002950| 53 59 53 54 45 4d 20 49 | 4d 50 4f 52 54 20 57 4f |SYSTEM I|MPORT WO|
|00002960| 52 44 2c 20 41 44 44 52 | 45 53 53 3b 0d 0d 45 58 |RD, ADDR|ESS;..EX|
|00002970| 50 4f 52 54 20 51 55 41 | 4c 49 46 49 45 44 20 52 |PORT QUA|LIFIED R|
|00002980| 65 61 64 43 2c 20 52 65 | 61 64 49 2c 20 52 65 61 |eadC, Re|adI, Rea|
|00002990| 64 52 2c 20 52 65 61 64 | 48 2c 20 52 65 61 64 41 |dR, Read|H, ReadA|
|000029a0| 43 2c 20 52 65 61 64 41 | 48 2c 20 52 65 61 64 43 |C, ReadA|H, ReadC|
|000029b0| 4d 2c 20 52 65 61 64 41 | 4d 2c 0d 20 20 20 20 20 |M, ReadA|M,. |
|000029c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 43 6f 6e 76 | | Conv|
|000029d0| 65 72 74 54 6f 43 2c 20 | 43 6f 6e 76 65 72 74 54 |ertToC, |ConvertT|
|000029e0| 6f 49 2c 20 43 6f 6e 76 | 65 72 74 54 6f 52 2c 20 |oI, Conv|ertToR, |
|000029f0| 43 6f 6e 76 65 72 74 54 | 6f 48 2c 0d 20 20 20 20 |ConvertT|oH,. |
|00002a00| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 43 6f 6e | | Con|
|00002a10| 76 65 72 74 54 6f 41 43 | 2c 20 43 6f 6e 76 65 72 |vertToAC|, Conver|
|00002a20| 74 54 6f 41 48 2c 0d 20 | 20 20 20 20 20 20 20 20 |tToAH,. | |
|00002a30| 20 20 20 20 20 20 20 20 | 43 6f 6e 76 65 72 74 54 | |ConvertT|
|00002a40| 6f 43 4d 2c 20 43 6f 6e | 76 65 72 74 54 6f 41 4d |oCM, Con|vertToAM|
|00002a50| 2c 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |,. | |
|00002a60| 20 20 20 49 6e 44 6f 6e | 65 2c 20 49 6e 45 6d 70 | InDon|e, InEmp|
|00002a70| 74 79 2c 20 49 6e 45 73 | 63 2c 20 49 6e 4e 6f 4e |ty, InEs|c, InNoN|
|00002a80| 75 6d 2c 20 49 6e 54 6f | 6f 42 69 67 3b 0d 0d 56 |um, InTo|oBig;..V|
|00002a90| 41 52 20 49 6e 44 6f 6e | 65 3a 20 20 20 42 4f 4f |AR InDon|e: BOO|
|00002aa0| 4c 45 41 4e 3b 20 20 28 | 2a 20 6e 6f 74 20 65 6d |LEAN; (|* not em|
|00002ab0| 70 74 79 2c 20 6e 6f 74 | 20 45 53 43 2c 20 6e 6f |pty, not| ESC, no|
|00002ac0| 74 20 6e 6f 6e 2d 6e 75 | 6d 65 72 69 63 2c 20 6e |t non-nu|meric, n|
|00002ad0| 6f 74 20 74 6f 6f 20 62 | 69 67 20 2a 29 0d 20 20 |ot too b|ig *). |
|00002ae0| 20 20 49 6e 45 6d 70 74 | 79 3a 20 20 42 4f 4f 4c | InEmpt|y: BOOL|
|00002af0| 45 41 4e 3b 20 20 28 2a | 20 77 68 79 20 6e 6f 74 |EAN; (*| why not|
|00002b00| 20 64 6f 6e 65 3a 20 20 | 20 20 20 20 20 20 20 20 | done: | |
|00002b10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 2a 29 | | *)|
|00002b20| 0d 20 20 20 20 49 6e 45 | 73 63 3a 20 20 20 20 42 |. InE|sc: B|
|00002b30| 4f 4f 4c 45 41 4e 3b 0d | 20 20 20 20 49 6e 4e 6f |OOLEAN;.| InNo|
|00002b40| 4e 75 6d 3a 20 20 42 4f | 4f 4c 45 41 4e 3b 0d 20 |Num: BO|OLEAN;. |
|00002b50| 20 20 20 49 6e 54 6f 6f | 42 69 67 3a 20 42 4f 4f | InToo|Big: BOO|
|00002b60| 4c 45 41 4e 3b 0d 0d 50 | 52 4f 43 45 44 55 52 45 |LEAN;..P|ROCEDURE|
|00002b70| 20 52 65 61 64 43 28 56 | 41 52 20 63 3a 20 43 41 | ReadC(V|AR c: CA|
|00002b80| 52 44 49 4e 41 4c 29 3b | 0d 50 52 4f 43 45 44 55 |RDINAL);|.PROCEDU|
|00002b90| 52 45 20 52 65 61 64 49 | 28 56 41 52 20 69 3a 20 |RE ReadI|(VAR i: |
|00002ba0| 49 4e 54 45 47 45 52 29 | 3b 0d 50 52 4f 43 45 44 |INTEGER)|;.PROCED|
|00002bb0| 55 52 45 20 52 65 61 64 | 52 28 56 41 52 20 72 3a |URE Read|R(VAR r:|
|00002bc0| 20 52 45 41 4c 29 3b 0d | 50 52 4f 43 45 44 55 52 | REAL);.|PROCEDUR|
|00002bd0| 45 20 52 65 61 64 48 28 | 56 41 52 20 63 3a 20 57 |E ReadH(|VAR c: W|
|00002be0| 4f 52 44 29 3b 0d 50 52 | 4f 43 45 44 55 52 45 20 |ORD);.PR|OCEDURE |
|00002bf0| 52 65 61 64 41 43 28 56 | 41 52 20 61 3a 20 41 44 |ReadAC(V|AR a: AD|
|00002c00| 44 52 45 53 53 29 3b 0d | 50 52 4f 43 45 44 55 52 |DRESS);.|PROCEDUR|
|00002c10| 45 20 52 65 61 64 41 48 | 28 56 41 52 20 61 3a 20 |E ReadAH|(VAR a: |
|00002c20| 41 44 44 52 45 53 53 29 | 3b 0d 0d 50 52 4f 43 45 |ADDRESS)|;..PROCE|
|00002c30| 44 55 52 45 20 52 65 61 | 64 43 4d 28 56 41 52 20 |DURE Rea|dCM(VAR |
|00002c40| 63 3a 20 57 4f 52 44 29 | 3b 20 20 20 20 20 20 20 |c: WORD)|; |
|00002c50| 28 2a 20 72 65 61 64 20 | 63 61 72 64 69 6e 61 6c |(* read |cardinal|
|00002c60| 20 69 6e 20 6d 69 78 65 | 64 20 64 65 63 69 6d 61 | in mixe|d decima|
|00002c70| 6c 2f 68 65 78 20 62 61 | 73 65 2a 29 0d 50 52 4f |l/hex ba|se*).PRO|
|00002c80| 43 45 44 55 52 45 20 52 | 65 61 64 41 4d 28 56 41 |CEDURE R|eadAM(VA|
|00002c90| 52 20 63 3a 20 41 44 44 | 52 45 53 53 29 3b 20 20 |R c: ADD|RESS); |
|00002ca0| 20 20 28 2a 20 72 65 61 | 64 20 61 64 64 72 65 73 | (* rea|d addres|
|00002cb0| 73 20 69 6e 20 6d 69 78 | 65 64 20 64 65 63 69 6d |s in mix|ed decim|
|00002cc0| 61 6c 2f 68 65 78 20 62 | 61 73 65 2a 29 0d 20 20 |al/hex b|ase*). |
|00002cd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002ce0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002cf0| 20 20 20 28 2a 20 77 69 | 74 68 20 61 20 73 75 66 | (* wi|th a suf|
|00002d00| 66 69 78 20 48 3a 20 62 | 61 73 65 20 69 73 20 68 |fix H: b|ase is h|
|00002d10| 65 78 61 64 65 63 69 6d | 61 6c 20 20 2a 29 0d 20 |exadecim|al *). |
|00002d20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002d30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002d40| 20 20 20 20 28 2a 20 77 | 69 74 68 6f 75 74 20 61 | (* w|ithout a|
|00002d50| 20 73 75 66 66 69 78 20 | 48 3a 20 62 61 73 65 20 | suffix |H: base |
|00002d60| 69 73 20 64 65 63 69 6d | 61 6c 20 2a 29 0d 0d 28 |is decim|al *)..(|
|00002d70| 2a 20 6e 6f 74 65 3a 20 | 75 73 65 20 52 65 61 64 |* note: |use Read|
|00002d80| 41 67 61 69 6e 20 74 6f | 20 73 74 6f 72 65 20 61 |Again to| store a|
|00002d90| 20 64 69 67 69 74 20 72 | 65 61 64 20 69 6e 20 61 | digit r|ead in a|
|00002da0| 64 76 61 6e 63 65 20 20 | 20 20 20 20 20 20 20 20 |dvance | |
|00002db0| 20 20 20 20 20 20 2a 29 | 0d 28 2a 20 6e 6f 74 65 | *)|.(* note|
|00002dc0| 3a 20 75 73 65 20 52 65 | 61 64 41 67 61 69 6e 2b |: use Re|adAgain+|
|00002dd0| 20 52 65 61 64 28 63 68 | 29 20 74 6f 20 66 69 6e | Read(ch|) to fin|
|00002de0| 64 20 74 68 65 20 6c 61 | 73 74 20 63 68 61 72 20 |d the la|st char |
|00002df0| 72 65 61 64 20 28 65 2e | 67 2e 45 53 43 29 20 20 |read (e.|g.ESC) |
|00002e00| 20 2a 29 0d 0d 50 52 4f | 43 45 44 55 52 45 20 43 | *)..PRO|CEDURE C|
|00002e10| 6f 6e 76 65 72 74 54 6f | 43 28 56 41 52 20 73 3a |onvertTo|C(VAR s:|
|00002e20| 20 41 52 52 41 59 20 4f | 46 20 43 48 41 52 3b 20 | ARRAY O|F CHAR; |
|00002e30| 56 41 52 20 63 3a 20 43 | 41 52 44 49 4e 41 4c 29 |VAR c: C|ARDINAL)|
|00002e40| 3b 0d 50 52 4f 43 45 44 | 55 52 45 20 43 6f 6e 76 |;.PROCED|URE Conv|
|00002e50| 65 72 74 54 6f 49 28 56 | 41 52 20 73 3a 20 41 52 |ertToI(V|AR s: AR|
|00002e60| 52 41 59 20 4f 46 20 43 | 48 41 52 3b 20 56 41 52 |RAY OF C|HAR; VAR|
|00002e70| 20 69 3a 20 49 4e 54 45 | 47 45 52 29 3b 0d 50 52 | i: INTE|GER);.PR|
|00002e80| 4f 43 45 44 55 52 45 20 | 43 6f 6e 76 65 72 74 54 |OCEDURE |ConvertT|
|00002e90| 6f 52 28 56 41 52 20 73 | 3a 20 41 52 52 41 59 20 |oR(VAR s|: ARRAY |
|00002ea0| 4f 46 20 43 48 41 52 3b | 20 56 41 52 20 72 3a 20 |OF CHAR;| VAR r: |
|00002eb0| 52 45 41 4c 29 3b 0d 50 | 52 4f 43 45 44 55 52 45 |REAL);.P|ROCEDURE|
|00002ec0| 20 43 6f 6e 76 65 72 74 | 54 6f 48 28 56 41 52 20 | Convert|ToH(VAR |
|00002ed0| 73 3a 20 41 52 52 41 59 | 20 4f 46 20 43 48 41 52 |s: ARRAY| OF CHAR|
|00002ee0| 3b 20 56 41 52 20 77 3a | 20 57 4f 52 44 29 3b 0d |; VAR w:| WORD);.|
|00002ef0| 50 52 4f 43 45 44 55 52 | 45 20 43 6f 6e 76 65 72 |PROCEDUR|E Conver|
|00002f00| 74 54 6f 41 43 28 56 41 | 52 20 73 3a 20 41 52 52 |tToAC(VA|R s: ARR|
|00002f10| 41 59 20 4f 46 20 43 48 | 41 52 3b 20 56 41 52 20 |AY OF CH|AR; VAR |
|00002f20| 61 3a 20 41 44 44 52 45 | 53 53 29 3b 0d 50 52 4f |a: ADDRE|SS);.PRO|
|00002f30| 43 45 44 55 52 45 20 43 | 6f 6e 76 65 72 74 54 6f |CEDURE C|onvertTo|
|00002f40| 41 48 28 56 41 52 20 73 | 3a 20 41 52 52 41 59 20 |AH(VAR s|: ARRAY |
|00002f50| 4f 46 20 43 48 41 52 3b | 20 56 41 52 20 61 3a 20 |OF CHAR;| VAR a: |
|00002f60| 41 44 44 52 45 53 53 29 | 3b 0d 0d 50 52 4f 43 45 |ADDRESS)|;..PROCE|
|00002f70| 44 55 52 45 20 43 6f 6e | 76 65 72 74 54 6f 43 4d |DURE Con|vertToCM|
|00002f80| 28 56 41 52 20 73 3a 20 | 41 52 52 41 59 20 4f 46 |(VAR s: |ARRAY OF|
|00002f90| 20 43 48 41 52 3b 20 56 | 41 52 20 77 3a 20 57 4f | CHAR; V|AR w: WO|
|00002fa0| 52 44 29 3b 20 20 28 2a | 20 63 6f 6e 76 65 72 74 |RD); (*| convert|
|00002fb0| 20 63 61 72 64 69 6e 61 | 6c 20 6d 69 78 65 64 20 | cardina|l mixed |
|00002fc0| 2a 29 0d 50 52 4f 43 45 | 44 55 52 45 20 43 6f 6e |*).PROCE|DURE Con|
|00002fd0| 76 65 72 74 54 6f 41 4d | 28 56 41 52 20 73 3a 20 |vertToAM|(VAR s: |
|00002fe0| 41 52 52 41 59 20 4f 46 | 20 43 48 41 52 3b 20 56 |ARRAY OF| CHAR; V|
|00002ff0| 41 52 20 61 3a 20 41 44 | 44 52 45 53 53 29 3b 20 |AR a: AD|DRESS); |
|00003000| 28 2a 20 63 6f 6e 76 65 | 72 74 20 61 64 64 72 65 |(* conve|rt addre|
|00003010| 73 73 20 6d 69 78 65 64 | 2a 29 0d 0d 45 4e 44 20 |ss mixed|*)..END |
|00003020| 49 6e 54 65 72 6d 69 6e | 61 6c 2e 0d 20 20 20 20 |InTermin|al.. |
|00003030| 20 20 20 20 20 20 20 20 | 20 20 20 0d 0d 0d 0d 94 | | .....|
|00003040| b8 50 4d 61 67 0e 49 4e | 54 45 52 4d 49 4e 41 4c |.PMag.IN|TERMINAL|
|00003050| 2e 53 59 4d 4d 00 22 00 | 40 00 40 38 7c 00 40 10 |.SYMM.".|@.@8|.@.|
|00003060| 32 00 40 10 32 00 00 00 | 40 33 f4 00 00 00 00 00 |2.@.2...|@3......|
|00003070| 00 a0 23 00 00 6e 94 00 | 00 4d d8 00 40 2c 72 00 |..#..n..|.M..@,r.|
|00003080| 1d 00 47 00 00 4d 53 59 | 4d 3f 3f 3f 3f 01 00 00 |..G..MSY|M????...|
|00003090| 00 00 00 03 ba 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000030a0| 00 c8 20 07 00 03 07 aa | 25 07 05 99 07 00 33 13 |.. .....|%.....3.|
|000030b0| 49 6e 54 65 72 6d 69 6e | 61 6c 00 01 07 aa 25 07 |InTermin|al....%.|
|000030c0| 05 99 07 00 33 13 49 6e | 54 65 72 6d 69 6e 61 6c |....3.In|Terminal|
|000030d0| 00 03 13 53 59 53 54 45 | 4d 00 04 13 52 65 61 64 |...SYSTE|M...Read|
|000030e0| 43 00 13 52 65 61 64 49 | 00 13 52 65 61 64 52 00 |C..ReadI|..ReadR.|
|000030f0| 13 52 65 61 64 48 00 13 | 52 65 61 64 41 43 00 13 |.ReadH..|ReadAC..|
|00003100| 52 65 61 64 41 48 00 13 | 52 65 61 64 43 4d 00 13 |ReadAH..|ReadCM..|
|00003110| 52 65 61 64 41 4d 00 13 | 43 6f 6e 76 65 72 74 54 |ReadAM..|ConvertT|
|00003120| 6f 43 00 13 43 6f 6e 76 | 65 72 74 54 6f 49 00 13 |oC..Conv|ertToI..|
|00003130| 43 6f 6e 76 65 72 74 54 | 6f 52 00 13 43 6f 6e 76 |ConvertT|oR..Conv|
|00003140| 65 72 74 54 6f 48 00 13 | 43 6f 6e 76 65 72 74 54 |ertToH..|ConvertT|
|00003150| 6f 41 43 00 13 43 6f 6e | 76 65 72 74 54 6f 41 48 |oAC..Con|vertToAH|
|00003160| 00 13 43 6f 6e 76 65 72 | 74 54 6f 43 4d 00 13 43 |..Conver|tToCM..C|
|00003170| 6f 6e 76 65 72 74 54 6f | 41 4d 00 13 49 6e 44 6f |onvertTo|AM..InDo|
|00003180| 6e 65 00 13 49 6e 45 6d | 70 74 79 00 13 49 6e 45 |ne..InEm|pty..InE|
|00003190| 73 63 00 13 49 6e 4e 6f | 4e 75 6d 00 13 49 6e 54 |sc..InNo|Num..InT|
|000031a0| 6f 6f 42 69 67 00 11 13 | 52 65 61 64 43 00 07 00 |ooBig...|ReadC...|
|000031b0| 01 11 17 10 13 43 41 52 | 44 49 4e 41 4c 00 18 11 |.....CAR|DINAL...|
|000031c0| 13 52 65 61 64 49 00 07 | 00 02 11 17 10 13 49 4e |.ReadI..|......IN|
|000031d0| 54 45 47 45 52 00 18 11 | 13 52 65 61 64 52 00 07 |TEGER...|.ReadR..|
|000031e0| 00 03 11 17 10 13 52 45 | 41 4c 00 18 11 13 52 65 |......RE|AL....Re|
|000031f0| 61 64 48 00 07 00 04 11 | 17 10 13 53 59 53 54 45 |adH.....|...SYSTE|
|00003200| 4d 00 14 13 57 4f 52 44 | 00 18 11 13 52 65 61 64 |M...WORD|....Read|
|00003210| 41 43 00 07 00 05 11 17 | 10 13 53 59 53 54 45 4d |AC......|..SYSTEM|
|00003220| 00 14 13 41 44 44 52 45 | 53 53 00 18 11 13 52 65 |...ADDRE|SS....Re|
|00003230| 61 64 41 48 00 07 00 06 | 11 17 10 13 53 59 53 54 |adAH....|....SYST|
|00003240| 45 4d 00 14 13 41 44 44 | 52 45 53 53 00 18 11 13 |EM...ADD|RESS....|
|00003250| 52 65 61 64 43 4d 00 07 | 00 07 11 17 10 13 53 59 |ReadCM..|......SY|
|00003260| 53 54 45 4d 00 14 13 57 | 4f 52 44 00 18 11 13 52 |STEM...W|ORD....R|
|00003270| 65 61 64 41 4d 00 07 00 | 08 11 17 10 13 53 59 53 |eadAM...|.....SYS|
|00003280| 54 45 4d 00 14 13 41 44 | 44 52 45 53 53 00 18 11 |TEM...AD|DRESS...|
|00003290| 13 43 6f 6e 76 65 72 74 | 54 6f 43 00 07 00 09 11 |.Convert|ToC.....|
|000032a0| 17 10 0b 13 43 48 41 52 | 00 10 13 43 41 52 44 49 |....CHAR|...CARDI|
|000032b0| 4e 41 4c 00 18 11 13 43 | 6f 6e 76 65 72 74 54 6f |NAL....C|onvertTo|
|000032c0| 49 00 07 00 0a 11 17 10 | 0b 13 43 48 41 52 00 10 |I.......|..CHAR..|
|000032d0| 13 49 4e 54 45 47 45 52 | 00 18 11 13 43 6f 6e 76 |.INTEGER|....Conv|
|000032e0| 65 72 74 54 6f 52 00 07 | 00 0b 11 17 10 0b 13 43 |ertToR..|.......C|
|000032f0| 48 41 52 00 10 13 52 45 | 41 4c 00 18 11 13 43 6f |HAR...RE|AL....Co|
|00003300| 6e 76 65 72 74 54 6f 48 | 00 07 00 0c 11 17 10 0b |nvertToH|........|
|00003310| 13 43 48 41 52 00 10 13 | 53 59 53 54 45 4d 00 14 |.CHAR...|SYSTEM..|
|00003320| 13 57 4f 52 44 00 18 11 | 13 43 6f 6e 76 65 72 74 |.WORD...|.Convert|
|00003330| 54 6f 41 43 00 07 00 0d | 11 17 10 0b 13 43 48 41 |ToAC....|.....CHA|
|00003340| 52 00 10 13 53 59 53 54 | 45 4d 00 14 13 41 44 44 |R...SYST|EM...ADD|
|00003350| 52 45 53 53 00 18 11 13 | 43 6f 6e 76 65 72 74 54 |RESS....|ConvertT|
|00003360| 6f 41 48 00 07 00 0e 11 | 17 10 0b 13 43 48 41 52 |oAH.....|....CHAR|
|00003370| 00 10 13 53 59 53 54 45 | 4d 00 14 13 41 44 44 52 |...SYSTE|M...ADDR|
|00003380| 45 53 53 00 18 11 13 43 | 6f 6e 76 65 72 74 54 6f |ESS....C|onvertTo|
|00003390| 43 4d 00 07 00 0f 11 17 | 10 0b 13 43 48 41 52 00 |CM......|...CHAR.|
|000033a0| 10 13 53 59 53 54 45 4d | 00 14 13 57 4f 52 44 00 |..SYSTEM|...WORD.|
|000033b0| 18 11 13 43 6f 6e 76 65 | 72 74 54 6f 41 4d 00 07 |...Conve|rtToAM..|
|000033c0| 00 10 11 17 10 0b 13 43 | 48 41 52 00 10 13 53 59 |.......C|HAR...SY|
|000033d0| 53 54 45 4d 00 14 13 41 | 44 44 52 45 53 53 00 18 |STEM...A|DDRESS..|
|000033e0| 10 13 49 6e 44 6f 6e 65 | 00 06 00 00 00 00 15 13 |..InDone|........|
|000033f0| 42 4f 4f 4c 45 41 4e 00 | 10 13 49 6e 45 6d 70 74 |BOOLEAN.|..InEmpt|
|00003400| 79 00 06 00 00 00 01 15 | 13 42 4f 4f 4c 45 41 4e |y.......|.BOOLEAN|
|00003410| 00 10 13 49 6e 45 73 63 | 00 06 00 00 00 02 15 13 |...InEsc|........|
|00003420| 42 4f 4f 4c 45 41 4e 00 | 10 13 49 6e 4e 6f 4e 75 |BOOLEAN.|..InNoNu|
|00003430| 6d 00 06 00 00 00 03 15 | 13 42 4f 4f 4c 45 41 4e |m.......|.BOOLEAN|
|00003440| 00 10 13 49 6e 54 6f 6f | 42 69 67 00 06 00 00 00 |...InToo|Big.....|
|00003450| 04 15 13 42 4f 4f 4c 45 | 41 4e 00 02 00 84 12 50 |...BOOLE|AN.....P|
|00003460| 4d 61 67 0a 4c 4f 41 44 | 45 52 2e 44 45 46 2e 53 |Mag.LOAD|ER.DEF.S|
|00003470| 59 4d 4d 00 22 00 40 00 | 40 38 7c 00 40 10 32 00 |YMM.".@.|@8|.@.2.|
|00003480| 40 10 32 00 00 00 40 33 | f4 00 00 00 00 00 00 a0 |@.2...@3|........|
|00003490| 23 00 00 6e 94 00 00 4d | d8 00 40 2c 72 00 1d 00 |#..n...M|..@,r...|
|000034a0| 47 00 00 54 45 58 54 45 | 44 49 54 01 00 00 00 00 |G..TEXTE|DIT.....|
|000034b0| 00 06 21 00 00 00 00 98 | f4 5b a4 98 f4 5b aa 3e |..!.....|.[...[.>|
|000034c0| 4a 44 45 46 49 4e 49 54 | 49 4f 4e 20 4d 4f 44 55 |JDEFINIT|ION MODU|
|000034d0| 4c 45 20 4c 6f 61 64 65 | 72 3b 0d 28 2a 2a 2a 2a |LE Loade|r;.(****|
|000034e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000034f0| 2a 2a 2a 29 0d 0d 28 2a | 20 6f 76 65 72 6c 61 79 |***)..(*| overlay|
|00003500| 20 6c 6f 61 64 65 72 20 | 66 6f 72 20 74 68 65 20 | loader |for the |
|00003510| 20 4d 6f 64 75 6c 61 20 | 73 79 73 74 65 6d 20 2a | Modula |system *|
|00003520| 29 0d 0d 28 2a 20 56 65 | 72 73 2e 20 30 31 2e 31 |)..(* Ve|rs. 01.1|
|00003530| 31 2e 20 31 39 38 33 20 | 20 50 2e 20 46 69 6e 6b |1. 1983 | P. Fink|
|00003540| 2c 20 45 54 48 20 20 20 | 20 2a 29 0d 0d 46 52 4f |, ETH | *)..FRO|
|00003550| 4d 20 53 59 53 54 45 4d | 20 49 4d 50 4f 52 54 20 |M SYSTEM| IMPORT |
|00003560| 41 44 44 52 45 53 53 3b | 0d 45 58 50 4f 52 54 20 |ADDRESS;|.EXPORT |
|00003570| 51 55 41 4c 49 46 49 45 | 44 20 20 43 61 6c 6c 2c |QUALIFIE|D Call,|
|00003580| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | |
|00003590| 20 20 20 4c 6f 61 64 2c | 20 55 6e 6c 6f 61 64 3b | Load,| Unload;|
|000035a0| 0d 0d 50 52 4f 43 45 44 | 55 52 45 20 43 61 6c 6c |..PROCED|URE Call|
|000035b0| 0d 20 20 28 56 41 52 20 | 4f 76 4e 61 6d 65 20 3a |. (VAR |OvName :|
|000035c0| 20 41 52 52 41 59 20 4f | 46 20 43 48 41 52 3b 0d | ARRAY O|F CHAR;.|
|000035d0| 20 20 20 56 41 52 20 72 | 65 73 75 6c 74 20 3a 20 | VAR r|esult : |
|000035e0| 49 4e 54 45 47 45 52 29 | 3b 0d 28 2a 20 6c 6f 61 |INTEGER)|;.(* loa|
|000035f0| 64 20 61 6e 64 20 65 78 | 65 63 75 74 65 20 6f 76 |d and ex|ecute ov|
|00003600| 65 72 6c 61 79 20 4f 76 | 4e 61 6d 65 2c 20 61 73 |erlay Ov|Name, as|
|00003610| 20 61 20 73 75 62 72 6f | 75 74 69 6e 65 20 2a 29 | a subro|utine *)|
|00003620| 0d 28 2a 20 4f 76 4e 61 | 6d 65 20 63 61 6e 20 62 |.(* OvNa|me can b|
|00003630| 65 20 61 20 6d 6f 64 75 | 6c 65 20 6e 61 6d 65 20 |e a modu|le name |
|00003640| 28 6d 61 78 20 31 31 20 | 63 68 61 72 73 20 73 69 |(max 11 |chars si|
|00003650| 67 6e 69 66 69 63 61 6e | 74 29 2c 20 6f 72 20 61 |gnifican|t), or a|
|00003660| 20 66 69 6c 65 20 6e 61 | 6d 65 0d 20 20 20 28 66 | file na|me. (f|
|00003670| 6f 72 6d 20 64 65 76 3a | 72 65 70 3a 72 65 70 3a |orm dev:|rep:rep:|
|00003680| 6e 61 6d 65 2e 65 78 74 | 29 2e 0d 20 20 20 44 6f |name.ext|).. Do|
|00003690| 6e 65 20 69 66 3a 20 6c | 6f 61 64 69 6e 67 2c 20 |ne if: l|oading, |
|000036a0| 61 6e 64 20 70 6f 73 73 | 69 62 6c 79 20 65 78 65 |and poss|ibly exe|
|000036b0| 63 75 74 69 6f 6e 2c 20 | 61 72 65 20 65 72 72 6f |cution, |are erro|
|000036c0| 72 66 72 65 65 2e 0d 20 | 20 20 64 65 66 61 75 6c |rfree.. | defaul|
|000036d0| 74 20 65 78 74 65 6e 73 | 69 6f 6e 20 66 6f 72 20 |t extens|ion for |
|000036e0| 74 68 65 20 6c 6f 61 64 | 20 66 69 6c 65 20 73 65 |the load| file se|
|000036f0| 61 72 63 68 20 77 69 6c | 6c 20 62 65 20 2e 4c 4f |arch wil|l be .LO|
|00003700| 44 0d 20 20 20 64 65 66 | 61 75 6c 74 20 64 65 76 |D. def|ault dev|
|00003710| 3a 20 77 69 6c 6c 20 62 | 65 20 3c 6e 6f 74 68 69 |: will b|e <nothi|
|00003720| 6e 67 3e 2c 20 61 6e 64 | 20 61 6c 74 65 72 6e 61 |ng>, and| alterna|
|00003730| 74 65 20 64 65 76 3a 20 | 69 73 20 4d 4f 44 4c 49 |te dev: |is MODLI|
|00003740| 42 3a 0d 20 20 20 72 65 | 73 75 6c 74 20 69 73 20 |B:. re|sult is |
|00003750| 7a 65 72 6f 2c 20 77 68 | 65 6e 20 65 76 65 72 79 |zero, wh|en every|
|00003760| 74 68 69 6e 67 20 77 61 | 73 20 6f 6b 2c 20 6f 74 |thing wa|s ok, ot|
|00003770| 68 65 72 77 69 73 65 20 | 61 6e 20 65 72 72 6f 72 |herwise |an error|
|00003780| 6e 75 6d 62 65 72 0d 20 | 20 20 28 73 79 73 74 65 |number. | (syste|
|00003790| 6d 2d 64 65 70 65 6e 64 | 65 6e 74 29 20 2a 29 0d |m-depend|ent) *).|
|000037a0| 0d 0d 28 2a 20 6d 6f 72 | 65 20 73 6f 70 68 69 73 |..(* mor|e sophis|
|000037b0| 74 69 63 61 74 65 64 20 | 66 75 6e 63 74 69 6f 6e |ticated |function|
|000037c0| 73 3a 20 28 6e 6f 74 20 | 79 65 74 20 69 6d 70 6c |s: (not |yet impl|
|000037d0| 65 6d 65 6e 74 65 64 29 | 20 2a 29 0d 28 2a 20 64 |emented)| *).(* d|
|000037e0| 65 66 69 6e 69 74 65 6c | 79 20 6e 6f 74 20 72 65 |efinitel|y not re|
|000037f0| 71 75 69 72 65 64 20 66 | 6f 72 20 74 68 65 20 63 |quired f|or the c|
|00003800| 6f 6d 70 69 6c 65 72 20 | 21 20 2a 29 0d 28 2a 20 |ompiler |! *).(* |
|00003810| 49 4e 54 45 4e 44 45 44 | 20 46 4f 52 3a 0d 20 20 |INTENDED| FOR:. |
|00003820| 20 6d 61 6e 61 67 65 6d | 65 6e 74 20 6f 66 20 73 | managem|ent of s|
|00003830| 65 76 65 72 61 6c 20 69 | 6e 64 65 70 65 6e 64 65 |everal i|ndepende|
|00003840| 6e 74 20 6c 6f 61 64 65 | 64 20 6d 6f 64 75 6c 65 |nt loade|d module|
|00003850| 73 2e 0d 20 20 20 75 73 | 65 66 75 6c 20 69 6e 20 |s.. us|eful in |
|00003860| 4d 33 20 66 6f 72 20 74 | 68 65 20 4f 2e 53 2e 2c |M3 for t|he O.S.,|
|00003870| 20 6f 6e 20 74 68 65 20 | 53 4d 41 4b 59 20 38 20 | on the |SMAKY 8 |
|00003880| 66 6f 72 20 58 53 2d 31 | 2e 0d 20 20 20 63 6f 6e |for XS-1|.. con|
|00003890| 73 69 73 74 65 6e 63 79 | 20 69 73 20 69 6d 70 6f |sistency| is impo|
|000038a0| 72 74 61 6e 74 2e 20 69 | 74 20 69 73 20 61 6e 20 |rtant. i|t is an |
|000038b0| 65 72 72 6f 72 20 74 6f | 20 6c 6f 61 64 20 77 68 |error to| load wh|
|000038c0| 65 6e 20 74 68 65 0d 20 | 20 20 62 61 73 65 20 6c |en the. | base l|
|000038d0| 61 79 65 72 20 69 73 20 | 6e 6f 74 20 6c 6f 61 64 |ayer is |not load|
|000038e0| 65 64 2c 20 6f 72 20 74 | 6f 20 75 6e 6c 6f 61 64 |ed, or t|o unload|
|000038f0| 20 77 68 65 6e 20 6f 76 | 65 72 6c 61 79 73 20 61 | when ov|erlays a|
|00003900| 72 65 0d 20 20 20 73 74 | 69 6c 6c 20 6c 6f 61 64 |re. st|ill load|
|00003910| 65 64 2e 0d 20 20 20 54 | 68 65 20 69 64 65 6e 74 |ed.. T|he ident|
|00003920| 69 66 69 63 61 74 69 6f | 6e 20 6f 66 20 74 68 65 |ificatio|n of the|
|00003930| 20 62 61 73 65 20 6c 61 | 79 65 72 20 66 6f 72 20 | base la|yer for |
|00003940| 61 6e 20 6f 76 65 72 6c | 61 79 20 69 73 0d 20 20 |an overl|ay is. |
|00003950| 20 64 6f 6e 65 20 61 74 | 20 6c 69 6e 6b 20 74 69 | done at| link ti|
|00003960| 6d 65 2e 0d 20 20 20 73 | 70 65 63 73 20 77 72 69 |me.. s|pecs wri|
|00003970| 74 74 65 6e 20 62 79 20 | 6d 65 20 28 50 46 29 20 |tten by |me (PF) |
|00003980| 2a 29 0d 0d 0d 50 52 4f | 43 45 44 55 52 45 20 4c |*)...PRO|CEDURE L|
|00003990| 6f 61 64 20 28 56 41 52 | 20 6f 76 6e 61 6d 65 20 |oad (VAR| ovname |
|000039a0| 3a 20 41 52 52 41 59 20 | 4f 46 20 43 48 41 52 3b |: ARRAY |OF CHAR;|
|000039b0| 20 20 56 41 52 20 72 65 | 66 65 72 65 6e 63 65 3a | VAR re|ference:|
|000039c0| 20 41 44 44 52 45 53 53 | 3b 0d 20 20 20 20 20 20 | ADDRESS|;. |
|000039d0| 20 20 20 20 20 20 20 20 | 20 20 56 41 52 20 65 72 | | VAR er|
|000039e0| 72 6f 72 20 3a 20 49 4e | 54 45 47 45 52 29 3b 0d |ror : IN|TEGER);.|
|000039f0| 28 2a 20 6c 6f 61 64 20 | 6f 76 65 72 6c 61 79 20 |(* load |overlay |
|00003a00| 20 6f 76 6e 61 6d 65 20 | 20 69 6e 74 6f 20 6d 65 | ovname | into me|
|00003a10| 6d 6f 72 79 2c 20 61 6e | 64 20 65 78 65 63 75 74 |mory, an|d execut|
|00003a20| 65 20 69 74 73 20 69 6e | 69 74 69 61 6c 69 7a 61 |e its in|itializa|
|00003a30| 74 69 6f 6e 20 70 61 72 | 74 2e 0d 20 20 20 64 6f |tion par|t.. do|
|00003a40| 65 73 20 6e 6f 74 20 75 | 6e 6c 6f 61 64 20 69 74 |es not u|nload it|
|00003a50| 2e 20 63 6f 64 65 20 61 | 6e 64 20 64 61 74 61 20 |. code a|nd data |
|00003a60| 72 65 6d 61 69 6e 20 69 | 6e 20 6d 65 6d 6f 72 79 |remain i|n memory|
|00003a70| 20 2a 29 0d 0d 50 52 4f | 43 45 44 55 52 45 20 55 | *)..PRO|CEDURE U|
|00003a80| 6e 6c 6f 61 64 20 28 72 | 65 66 65 72 65 6e 63 65 |nload (r|eference|
|00003a90| 3a 20 41 44 44 52 45 53 | 53 3b 20 56 41 52 20 65 |: ADDRES|S; VAR e|
|00003aa0| 72 72 6f 72 3a 20 49 4e | 54 45 47 45 52 29 3b 0d |rror: IN|TEGER);.|
|00003ab0| 28 2a 20 75 6e 6c 6f 61 | 64 20 74 68 65 20 72 65 |(* unloa|d the re|
|00003ac0| 66 65 72 65 6e 63 65 64 | 20 6f 76 65 72 6c 61 79 |ferenced| overlay|
|00003ad0| 20 2a 29 0d 0d 45 4e 44 | 20 4c 6f 61 64 65 72 2e | *)..END| Loader.|
|00003ae0| 0d 0d 38 fc 50 4d 61 67 | 0a 4c 4f 41 44 45 52 2e |..8.PMag|.LOADER.|
|00003af0| 53 59 4d 2e 53 59 4d 4d | 00 22 00 40 00 40 38 7c |SYM.SYMM|.".@.@8||
|00003b00| 00 40 10 32 00 40 10 32 | 00 00 00 40 33 f4 00 00 |.@.2.@.2|...@3...|
|00003b10| 00 00 00 00 a0 23 00 00 | 6e 94 00 00 4d d8 00 40 |.....#..|n...M..@|
|00003b20| 2c 72 00 1d 00 47 00 00 | 4d 53 59 4d 3f 3f 3f 3f |,r...G..|MSYM????|
|00003b30| 01 00 00 00 00 00 00 c2 | 00 00 00 00 00 00 00 00 |........|........|
|00003b40| 00 00 00 00 14 b3 07 00 | 03 07 aa 33 07 05 8d 07 |........|...3....|
|00003b50| 00 1c 13 4c 6f 61 64 65 | 72 00 01 07 aa 33 07 05 |...Loade|r....3..|
|00003b60| 8d 07 00 1c 13 4c 6f 61 | 64 65 72 00 03 13 53 59 |.....Loa|der...SY|
|00003b70| 53 54 45 4d 00 04 13 43 | 61 6c 6c 00 13 4c 6f 61 |STEM...C|all..Loa|
|00003b80| 64 00 13 55 6e 6c 6f 61 | 64 00 11 13 43 61 6c 6c |d..Unloa|d...Call|
|00003b90| 00 07 00 01 11 17 10 0b | 13 43 48 41 52 00 10 13 |........|.CHAR...|
|00003ba0| 49 4e 54 45 47 45 52 00 | 18 11 13 4c 6f 61 64 00 |INTEGER.|...Load.|
|00003bb0| 07 00 02 11 17 10 0b 13 | 43 48 41 52 00 10 13 53 |........|CHAR...S|
|00003bc0| 59 53 54 45 4d 00 14 13 | 41 44 44 52 45 53 53 00 |YSTEM...|ADDRESS.|
|00003bd0| 10 13 49 4e 54 45 47 45 | 52 00 18 11 13 55 6e 6c |..INTEGE|R....Unl|
|00003be0| 6f 61 64 00 07 00 03 11 | 17 13 53 59 53 54 45 4d |oad.....|..SYSTEM|
|00003bf0| 00 14 13 41 44 44 52 45 | 53 53 00 10 13 49 4e 54 |...ADDRE|SS...INT|
|00003c00| 45 47 45 52 00 18 02 00 | 8d 65 50 4d 61 67 0b 4d |EGER....|.ePMag.M|
|00003c10| 32 46 49 4c 45 53 2e 44 | 45 46 53 59 4d 4d 00 22 |2FILES.D|EFSYMM."|
|00003c20| 00 40 00 40 38 7c 00 40 | 10 32 00 40 10 32 00 00 |.@.@8|.@|.2.@.2..|
|00003c30| 00 40 33 f4 00 00 00 00 | 00 00 a0 23 00 00 6e 94 |.@3.....|...#..n.|
|00003c40| 00 00 4d d8 00 40 2c 72 | 00 1d 00 47 00 00 54 45 |..M..@,r|...G..TE|
|00003c50| 58 54 45 44 49 54 01 00 | 00 00 00 00 0e 91 00 00 |XTEDIT..|........|
|00003c60| 01 ea 98 f4 5b b3 98 f4 | 02 eb 01 e0 44 45 46 49 |....[...|....DEFI|
|00003c70| 4e 49 54 49 4f 4e 20 4d | 4f 44 55 4c 45 20 4d 32 |NITION M|ODULE M2|
|00003c80| 46 69 6c 65 73 3b 20 20 | 28 2a 20 4c 47 20 32 32 |Files; |(* LG 22|
|00003c90| 2e 30 37 2e 38 32 20 2c | 20 31 34 2e 30 36 2e 38 |.07.82 ,| 14.06.8|
|00003ca0| 33 20 50 46 20 2a 29 0d | 28 2a 2a 2a 2a 2a 2a 2a |3 PF *).|(*******|
|00003cb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003cc0| 2a 29 20 20 28 2a 20 61 | 64 61 70 74 65 64 20 66 |*) (* a|dapted f|
|00003cd0| 6f 72 20 4d 61 63 49 6e | 74 6f 73 68 20 62 79 20 |or MacIn|tosh by |
|00003ce0| 46 72 61 6e 7a 20 4b 72 | 6f 6e 73 65 64 65 72 2c |Franz Kr|onseder,|
|00003cf0| 20 31 37 2e 30 32 2e 38 | 35 20 2a 29 0d 0d 20 20 | 17.02.8|5 *).. |
|00003d00| 46 52 4f 4d 20 53 59 53 | 54 45 4d 20 49 4d 50 4f |FROM SYS|TEM IMPO|
|00003d10| 52 54 20 57 4f 52 44 3b | 0d 0d 20 20 45 58 50 4f |RT WORD;|.. EXPO|
|00003d20| 52 54 20 51 55 41 4c 49 | 46 49 45 44 0d 20 20 20 |RT QUALI|FIED. |
|00003d30| 20 46 69 6c 65 2c 20 20 | 20 20 65 6f 6c 63 2c 0d | File, | eolc,.|
|00003d40| 20 20 20 20 4f 70 65 6e | 2c 20 43 72 65 61 74 65 | Open|, Create|
|00003d50| 2c 20 43 6c 6f 73 65 2c | 20 44 65 6c 65 74 65 2c |, Close,| Delete,|
|00003d60| 20 52 65 6e 61 6d 65 2c | 20 47 65 74 50 6f 73 2c | Rename,| GetPos,|
|00003d70| 20 53 65 74 50 6f 73 2c | 20 52 65 73 65 74 2c 0d | SetPos,| Reset,.|
|00003d80| 20 20 20 20 52 65 61 64 | 43 68 61 72 2c 20 57 72 | Read|Char, Wr|
|00003d90| 69 74 65 43 68 61 72 2c | 20 52 65 61 64 57 6f 72 |iteChar,| ReadWor|
|00003da0| 64 2c 20 57 72 69 74 65 | 57 6f 72 64 2c 20 4d 6f |d, Write|Word, Mo|
|00003db0| 64 69 66 79 57 6f 72 64 | 2c 0d 20 20 20 20 45 6e |difyWord|,. En|
|00003dc0| 64 46 69 6c 65 2c 53 65 | 74 54 79 70 65 61 6e 64 |dFile,Se|tTypeand|
|00003dd0| 43 72 65 61 74 6f 72 2c | 47 65 74 54 79 70 65 61 |Creator,|GetTypea|
|00003de0| 6e 64 43 72 65 61 74 6f | 72 3b 0d 0d 20 20 43 4f |ndCreato|r;.. CO|
|00003df0| 4e 53 54 20 65 6f 6c 63 | 20 3d 20 31 35 43 3b 20 |NST eolc| = 15C; |
|00003e00| 28 2a 20 65 6e 64 20 6f | 66 20 6c 69 6e 65 20 63 |(* end o|f line c|
|00003e10| 68 61 72 61 63 74 65 72 | 20 66 6f 72 20 63 68 61 |haracter| for cha|
|00003e20| 72 61 63 74 65 72 20 66 | 69 6c 65 73 20 2a 29 0d |racter f|iles *).|
|00003e30| 20 20 54 59 50 45 20 46 | 69 6c 65 3b 0d 0d 0d 20 | TYPE F|ile;... |
|00003e40| 20 50 52 4f 43 45 44 55 | 52 45 20 4f 70 65 6e 20 | PROCEDU|RE Open |
|00003e50| 28 56 41 52 20 66 3a 20 | 46 69 6c 65 3b 20 56 41 |(VAR f: |File; VA|
|00003e60| 52 20 6e 61 6d 65 3a 20 | 41 52 52 41 59 20 4f 46 |R name: |ARRAY OF|
|00003e70| 20 43 48 41 52 3b 0d 20 | 20 20 20 20 20 20 20 20 | CHAR;. | |
|00003e80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 72 65 61 | | rea|
|00003e90| 64 6f 6e 6c 79 3a 20 42 | 4f 4f 4c 45 41 4e 3b 0d |donly: B|OOLEAN;.|
|00003ea0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003eb0| 20 20 56 41 52 20 64 6f | 6e 65 3a 20 42 4f 4f 4c | VAR do|ne: BOOL|
|00003ec0| 45 41 4e 29 3b 0d 20 20 | 20 20 28 2a 20 4f 70 65 |EAN);. | (* Ope|
|00003ed0| 6e 20 61 20 66 69 6c 65 | 20 61 6c 72 65 61 64 79 |n a file| already|
|00003ee0| 20 65 78 69 73 74 69 6e | 67 20 69 6e 20 64 69 72 | existin|g in dir|
|00003ef0| 65 63 74 6f 72 79 2e 20 | 72 65 61 64 6f 6e 6c 79 |ectory. |readonly|
|00003f00| 20 3d 20 74 6f 20 72 65 | 61 64 20 69 74 20 2a 29 | = to re|ad it *)|
|00003f10| 0d 0d 20 20 50 52 4f 43 | 45 44 55 52 45 20 43 72 |.. PROC|EDURE Cr|
|00003f20| 65 61 74 65 20 28 56 41 | 52 20 66 3a 20 46 69 6c |eate (VA|R f: Fil|
|00003f30| 65 3b 20 56 41 52 20 6e | 61 6d 65 3a 20 41 52 52 |e; VAR n|ame: ARR|
|00003f40| 41 59 20 4f 46 20 43 48 | 41 52 3b 0d 20 20 20 20 |AY OF CH|AR;. |
|00003f50| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003f60| 56 41 52 20 64 6f 6e 65 | 3a 20 42 4f 4f 4c 45 41 |VAR done|: BOOLEA|
|00003f70| 4e 29 3b 0d 20 20 20 20 | 28 2a 20 4f 70 65 6e 20 |N);. |(* Open |
|00003f80| 61 20 6e 65 77 20 66 69 | 6c 65 2e 20 49 66 20 61 |a new fi|le. If a|
|00003f90| 6e 20 66 69 6c 65 20 77 | 69 74 68 20 74 68 65 20 |n file w|ith the |
|00003fa0| 73 61 6d 65 20 6e 61 6d | 65 20 61 6c 72 65 61 64 |same nam|e alread|
|00003fb0| 79 20 65 78 69 73 74 73 | 2c 20 74 68 65 6e 0d 20 |y exists|, then. |
|00003fc0| 20 20 20 20 20 20 74 68 | 65 20 6f 6c 64 20 66 69 | th|e old fi|
|00003fd0| 6c 65 20 69 73 20 70 72 | 65 73 65 72 76 65 64 2e |le is pr|eserved.|
|00003fe0| 0d 20 20 20 20 20 20 20 | 43 6c 6f 73 65 20 77 69 |. |Close wi|
|00003ff0| 6c 6c 20 74 68 65 6e 20 | 64 65 73 74 72 6f 79 20 |ll then |destroy |
|00004000| 74 68 65 20 6f 6c 64 20 | 66 69 6c 65 2c 20 61 6e |the old |file, an|
|00004010| 64 20 63 61 74 61 6c 6f | 67 20 74 68 65 20 6e 65 |d catalo|g the ne|
|00004020| 77 20 66 69 6c 65 2e 0d | 20 20 20 20 20 20 20 44 |w file..| D|
|00004030| 65 6c 65 74 65 20 77 69 | 6c 6c 20 74 68 65 6e 20 |elete wi|ll then |
|00004040| 64 65 73 74 72 6f 79 20 | 74 68 65 20 6e 65 77 20 |destroy |the new |
|00004050| 66 69 6c 65 2c 20 61 6e | 64 20 6b 65 65 70 20 74 |file, an|d keep t|
|00004060| 68 65 20 6f 6c 64 20 66 | 69 6c 65 2e 20 20 2a 29 |he old f|ile. *)|
|00004070| 0d 0d 20 20 50 52 4f 43 | 45 44 55 52 45 20 43 6c |.. PROC|EDURE Cl|
|00004080| 6f 73 65 28 56 41 52 20 | 66 3a 20 46 69 6c 65 3b |ose(VAR |f: File;|
|00004090| 20 56 41 52 20 64 6f 6e | 65 3a 20 42 4f 4f 4c 45 | VAR don|e: BOOLE|
|000040a0| 41 4e 29 3b 0d 20 20 20 | 20 28 2a 20 43 6c 6f 73 |AN);. | (* Clos|
|000040b0| 65 20 61 20 66 69 6c 65 | 2c 20 65 6e 74 65 72 20 |e a file|, enter |
|000040c0| 61 20 6e 65 77 20 6e 61 | 6d 65 20 69 6e 74 6f 20 |a new na|me into |
|000040d0| 64 69 72 65 63 74 6f 72 | 79 20 2a 29 0d 0d 20 20 |director|y *).. |
|000040e0| 50 52 4f 43 45 44 55 52 | 45 20 44 65 6c 65 74 65 |PROCEDUR|E Delete|
|000040f0| 28 56 41 52 20 66 3a 20 | 46 69 6c 65 3b 20 56 41 |(VAR f: |File; VA|
|00004100| 52 20 64 6f 6e 65 3a 20 | 42 4f 4f 4c 45 41 4e 29 |R done: |BOOLEAN)|
|00004110| 3b 0d 20 20 20 20 28 2a | 20 43 6c 6f 73 65 20 61 |;. (*| Close a|
|00004120| 20 66 69 6c 65 2c 20 72 | 65 6d 6f 76 65 20 66 72 | file, r|emove fr|
|00004130| 6f 6d 20 64 69 72 65 63 | 74 6f 72 79 20 2a 29 0d |om direc|tory *).|
|00004140| 0d 20 20 50 52 4f 43 45 | 44 55 52 45 20 52 65 6e |. PROCE|DURE Ren|
|00004150| 61 6d 65 28 56 41 52 20 | 6f 6c 64 6e 61 6d 65 2c |ame(VAR |oldname,|
|00004160| 20 6e 65 77 6e 61 6d 65 | 3a 20 41 52 52 41 59 20 | newname|: ARRAY |
|00004170| 4f 46 20 43 48 41 52 3b | 20 56 41 52 20 64 6f 6e |OF CHAR;| VAR don|
|00004180| 65 3a 20 42 4f 4f 4c 45 | 41 4e 29 3b 0d 20 20 20 |e: BOOLE|AN);. |
|00004190| 20 28 2a 20 52 65 6e 61 | 6d 65 20 61 6e 20 65 78 | (* Rena|me an ex|
|000041a0| 69 73 74 69 6e 67 20 66 | 69 6c 65 2e 20 74 68 65 |isting f|ile. the|
|000041b0| 20 66 69 6c 65 20 6d 75 | 73 74 20 6e 6f 74 20 62 | file mu|st not b|
|000041c0| 65 20 6f 70 65 6e 20 2a | 29 0d 20 20 20 20 28 2a |e open *|). (*|
|000041d0| 20 52 65 6e 61 6d 65 20 | 69 73 20 6e 6f 74 20 72 | Rename |is not r|
|000041e0| 65 71 75 69 72 65 64 20 | 62 79 20 74 68 65 20 63 |equired |by the c|
|000041f0| 6f 6d 70 69 6c 65 72 20 | 2a 29 0d 0d 20 20 50 52 |ompiler |*).. PR|
|00004200| 4f 43 45 44 55 52 45 20 | 47 65 74 50 6f 73 28 56 |OCEDURE |GetPos(V|
|00004210| 41 52 20 66 3a 20 46 69 | 6c 65 3b 20 56 41 52 20 |AR f: Fi|le; VAR |
|00004220| 68 69 67 68 70 6f 73 2c | 20 6c 6f 77 70 6f 73 3a |highpos,| lowpos:|
|00004230| 20 43 41 52 44 49 4e 41 | 4c 29 3b 0d 20 20 20 20 | CARDINA|L);. |
|00004240| 28 2a 20 47 65 74 20 63 | 75 72 72 65 6e 74 20 70 |(* Get c|urrent p|
|00004250| 6f 73 69 74 69 6f 6e 20 | 6f 66 20 74 68 65 20 66 |osition |of the f|
|00004260| 69 6c 65 20 2a 29 0d 0d | 20 20 50 52 4f 43 45 44 |ile *)..| PROCED|
|00004270| 55 52 45 20 53 65 74 50 | 6f 73 28 56 41 52 20 66 |URE SetP|os(VAR f|
|00004280| 3a 20 46 69 6c 65 3b 20 | 68 69 67 68 70 6f 73 2c |: File; |highpos,|
|00004290| 20 6c 6f 77 70 6f 73 3a | 20 43 41 52 44 49 4e 41 | lowpos:| CARDINA|
|000042a0| 4c 29 3b 0d 20 20 20 20 | 28 2a 20 53 65 74 20 66 |L);. |(* Set f|
|000042b0| 69 6c 65 20 74 6f 20 69 | 6e 64 69 63 61 74 65 64 |ile to i|ndicated|
|000042c0| 20 70 6f 73 69 74 69 6f | 6e 2e 0d 20 20 20 20 20 | positio|n.. |
|000042d0| 20 20 3c 68 69 67 68 70 | 6f 73 2c 6c 6f 77 70 6f | <highp|os,lowpo|
|000042e0| 73 3e 20 69 73 20 20 62 | 79 74 65 2d 70 6f 73 69 |s> is b|yte-posi|
|000042f0| 74 69 6f 6e 20 61 73 20 | 61 20 32 6e 2d 62 69 74 |tion as |a 2n-bit|
|00004300| 20 6e 75 6d 62 65 72 20 | 2a 29 0d 0d 20 20 50 52 | number |*).. PR|
|00004310| 4f 43 45 44 55 52 45 20 | 52 65 73 65 74 28 56 41 |OCEDURE |Reset(VA|
|00004320| 52 20 66 3a 20 46 69 6c | 65 29 3b 0d 20 20 20 20 |R f: Fil|e);. |
|00004330| 28 2a 20 50 6f 73 69 74 | 69 6f 6e 20 74 68 65 20 |(* Posit|ion the |
|00004340| 66 69 6c 65 20 61 74 20 | 74 68 65 20 62 65 67 69 |file at |the begi|
|00004350| 6e 6e 69 6e 67 20 61 6e | 64 20 73 65 74 20 74 6f |nning an|d set to|
|00004360| 20 69 64 6c 65 20 6d 6f | 64 65 20 2a 29 0d 0d 20 | idle mo|de *).. |
|00004370| 20 50 52 4f 43 45 44 55 | 52 45 20 52 65 61 64 43 | PROCEDU|RE ReadC|
|00004380| 68 61 72 28 56 41 52 20 | 66 3a 20 46 69 6c 65 3b |har(VAR |f: File;|
|00004390| 20 56 41 52 20 63 68 3a | 20 43 48 41 52 29 3b 0d | VAR ch:| CHAR);.|
|000043a0| 20 20 20 20 28 2a 20 52 | 65 61 64 20 61 20 63 68 | (* R|ead a ch|
|000043b0| 61 72 61 63 74 65 72 20 | 66 72 6f 6d 20 66 69 6c |aracter |from fil|
|000043c0| 65 20 2a 29 0d 0d 20 20 | 50 52 4f 43 45 44 55 52 |e *).. |PROCEDUR|
|000043d0| 45 20 57 72 69 74 65 43 | 68 61 72 28 56 41 52 20 |E WriteC|har(VAR |
|000043e0| 66 3a 20 46 69 6c 65 3b | 20 63 68 3a 20 43 48 41 |f: File;| ch: CHA|
|000043f0| 52 29 3b 0d 20 20 20 20 | 28 2a 20 57 72 69 74 65 |R);. |(* Write|
|00004400| 20 61 20 63 68 61 72 61 | 63 74 65 72 20 74 6f 20 | a chara|cter to |
|00004410| 66 69 6c 65 20 2a 29 0d | 0d 20 20 50 52 4f 43 45 |file *).|. PROCE|
|00004420| 44 55 52 45 20 52 65 61 | 64 57 6f 72 64 28 56 41 |DURE Rea|dWord(VA|
|00004430| 52 20 66 3a 20 46 69 6c | 65 3b 20 56 41 52 20 77 |R f: Fil|e; VAR w|
|00004440| 3a 20 57 4f 52 44 29 3b | 0d 20 20 20 20 28 2a 20 |: WORD);|. (* |
|00004450| 52 65 61 64 20 61 20 77 | 6f 72 64 20 66 72 6f 6d |Read a w|ord from|
|00004460| 20 66 69 6c 65 20 2a 29 | 0d 0d 20 20 50 52 4f 43 | file *)|.. PROC|
|00004470| 45 44 55 52 45 20 57 72 | 69 74 65 57 6f 72 64 28 |EDURE Wr|iteWord(|
|00004480| 56 41 52 20 66 3a 20 46 | 69 6c 65 3b 20 77 3a 20 |VAR f: F|ile; w: |
|00004490| 57 4f 52 44 29 3b 0d 20 | 20 20 20 28 2a 20 57 72 |WORD);. | (* Wr|
|000044a0| 69 74 65 20 61 20 77 6f | 72 64 20 74 6f 20 66 69 |ite a wo|rd to fi|
|000044b0| 6c 65 20 2a 29 0d 0d 20 | 20 50 52 4f 43 45 44 55 |le *).. | PROCEDU|
|000044c0| 52 45 20 4d 6f 64 69 66 | 79 57 6f 72 64 28 56 41 |RE Modif|yWord(VA|
|000044d0| 52 20 66 3a 20 46 69 6c | 65 3b 20 77 3a 20 57 4f |R f: Fil|e; w: WO|
|000044e0| 52 44 29 3b 0d 20 20 20 | 20 28 2a 20 4d 6f 64 69 |RD);. | (* Modi|
|000044f0| 66 79 20 61 20 77 6f 72 | 64 20 6f 6e 20 66 69 6c |fy a wor|d on fil|
|00004500| 65 20 2a 29 0d 0d 20 20 | 50 52 4f 43 45 44 55 52 |e *).. |PROCEDUR|
|00004510| 45 20 45 6e 64 46 69 6c | 65 28 56 41 52 20 66 3a |E EndFil|e(VAR f:|
|00004520| 20 46 69 6c 65 29 3a 20 | 42 4f 4f 4c 45 41 4e 3b | File): |BOOLEAN;|
|00004530| 0d 20 20 20 20 28 2a 20 | 45 6e 64 20 6f 66 20 66 |. (* |End of f|
|00004540| 69 6c 65 20 72 65 61 63 | 68 65 64 20 28 20 54 52 |ile reac|hed ( TR|
|00004550| 55 45 20 77 68 65 6e 20 | 72 65 61 64 69 6e 67 20 |UE when |reading |
|00004560| 74 68 65 20 45 4f 46 20 | 6d 61 72 6b 65 72 2c 20 |the EOF |marker, |
|00004570| 6f 72 20 77 68 65 6e 0d | 20 20 20 20 20 20 20 69 |or when.| i|
|00004580| 6e 20 77 72 69 74 65 20 | 6d 6f 64 65 2e 50 46 29 |n write |mode.PF)|
|00004590| 20 2a 29 0d 0d 28 2a 20 | 73 70 65 63 69 66 69 63 | *)..(* |specific|
|000045a0| 61 74 69 6f 6e 20 6e 6f | 74 65 73 3a 0d 20 20 20 |ation no|tes:. |
|000045b0| 69 66 20 61 6e 20 65 72 | 72 6f 72 20 6f 63 63 75 |if an er|ror occu|
|000045c0| 72 73 2c 20 74 68 65 6e | 20 4d 32 46 69 6c 65 73 |rs, then| M2Files|
|000045d0| 20 6d 75 73 74 20 70 72 | 69 6e 74 20 74 68 65 20 | must pr|int the |
|000045e0| 6f 70 65 72 61 74 69 6e | 67 20 73 79 73 74 65 6d |operatin|g system|
|000045f0| 20 64 65 70 65 6e 64 65 | 6e 74 0d 20 20 20 65 72 | depende|nt. er|
|00004600| 72 6f 72 20 64 65 74 61 | 69 6c 73 2e 20 54 68 65 |ror deta|ils. The|
|00004610| 20 43 6f 6d 70 69 6c 65 | 72 20 6f 72 20 4c 69 6e | Compile|r or Lin|
|00004620| 6b 65 72 20 64 6f 65 73 | 6e 74 20 77 61 6e 74 20 |ker does|nt want |
|00004630| 74 6f 20 6b 6e 6f 77 20 | 61 62 6f 75 74 20 69 74 |to know |about it|
|00004640| 2e 0d 20 20 20 62 75 74 | 20 2d 20 66 6f 72 20 4f |.. but| - for O|
|00004650| 70 65 6e 2c 20 69 66 20 | 74 68 65 20 66 69 6c 65 |pen, if |the file|
|00004660| 20 64 6f 65 73 6e 27 74 | 20 65 78 69 73 74 2c 20 | doesn't| exist, |
|00004670| 74 68 65 6e 20 4d 32 46 | 69 6c 65 73 20 6d 75 73 |then M2F|iles mus|
|00004680| 74 20 6e 6f 74 20 64 69 | 73 70 6c 61 79 0d 20 20 |t not di|splay. |
|00004690| 20 20 20 20 20 20 20 61 | 6e 20 65 72 72 6f 72 20 | a|n error |
|000046a0| 6d 65 73 73 61 67 65 2e | 20 54 68 65 20 63 6f 6d |message.| The com|
|000046b0| 70 69 6c 65 72 20 77 69 | 6c 6c 20 68 61 6e 64 6c |piler wi|ll handl|
|000046c0| 65 20 69 74 20 62 79 20 | 74 72 79 69 6e 67 20 6f |e it by |trying o|
|000046d0| 6e 20 74 68 65 20 4c 49 | 42 0d 20 20 20 20 20 20 |n the LI|B. |
|000046e0| 20 20 20 64 65 76 69 63 | 65 20 65 74 63 2c 20 61 | devic|e etc, a|
|000046f0| 6e 64 20 64 69 73 70 6c | 61 79 20 74 68 65 20 6d |nd displ|ay the m|
|00004700| 65 73 73 61 67 65 20 69 | 74 73 65 6c 66 2c 20 69 |essage i|tself, i|
|00004710| 66 20 74 68 69 73 20 61 | 6c 73 6f 20 66 61 69 6c |f this a|lso fail|
|00004720| 73 2e 0d 0d 20 20 20 57 | 72 69 74 69 6e 67 20 6f |s... W|riting o|
|00004730| 6e 20 61 6e 20 65 78 69 | 73 74 69 6e 67 20 66 69 |n an exi|sting fi|
|00004740| 6c 65 20 6d 65 61 6e 73 | 2c 20 74 68 65 20 66 69 |le means|, the fi|
|00004750| 6c 65 20 73 68 6f 75 6c | 64 20 62 65 20 74 72 75 |le shoul|d be tru|
|00004760| 6e 63 61 74 65 64 20 61 | 74 20 74 68 65 0d 20 20 |ncated a|t the. |
|00004770| 20 63 75 72 72 65 6e 74 | 20 70 6f 73 69 74 69 6f | current| positio|
|00004780| 6e 2e 0d 0d 20 20 20 44 | 6f 20 6e 6f 74 20 6d 69 |n... D|o not mi|
|00004790| 78 20 52 65 61 64 2c 20 | 57 72 69 74 65 20 61 6e |x Read, |Write an|
|000047a0| 64 20 4d 6f 64 69 66 79 | 20 6d 6f 64 65 73 2c 20 |d Modify| modes, |
|000047b0| 75 6e 6c 65 73 73 20 63 | 61 6c 6c 69 6e 67 20 52 |unless c|alling R|
|000047c0| 65 73 65 74 20 62 65 74 | 77 65 65 6e 2e 0d 20 20 |eset bet|ween.. |
|000047d0| 20 44 6f 20 6e 6f 74 20 | 6d 69 78 20 43 68 61 72 | Do not |mix Char|
|000047e0| 20 61 6e 64 20 57 6f 72 | 64 20 63 61 6c 6c 73 20 | and Wor|d calls |
|000047f0| 28 66 69 6c 65 20 73 74 | 72 75 63 74 75 72 65 20 |(file st|ructure |
|00004800| 6d 61 79 20 62 65 20 64 | 69 66 66 65 72 65 6e 74 |may be d|ifferent|
|00004810| 29 2e 0d 0d 2a 29 0d 0d | 28 2a 20 74 68 65 20 66 |)...*)..|(* the f|
|00004820| 6f 6c 6c 6f 77 69 6e 67 | 20 70 72 6f 63 65 64 75 |ollowing| procedu|
|00004830| 72 65 73 20 77 69 6c 6c | 20 77 6f 72 6b 20 6f 6e |res will| work on|
|00004840| 20 6f 70 65 6e 20 66 69 | 6c 65 73 20 2a 29 0d 50 | open fi|les *).P|
|00004850| 52 4f 43 45 44 55 52 45 | 20 53 65 74 54 79 70 65 |ROCEDURE| SetType|
|00004860| 61 6e 64 43 72 65 61 74 | 6f 72 20 28 56 41 52 20 |andCreat|or (VAR |
|00004870| 66 3a 46 69 6c 65 3b 20 | 56 41 52 20 46 54 79 70 |f:File; |VAR FTyp|
|00004880| 65 2c 43 72 65 61 74 6f | 72 3a 41 52 52 41 59 20 |e,Creato|r:ARRAY |
|00004890| 4f 46 20 43 48 41 52 3b | 56 41 52 20 64 6f 6e 65 |OF CHAR;|VAR done|
|000048a0| 3a 42 4f 4f 4c 45 41 4e | 29 3b 0d 50 52 4f 43 45 |:BOOLEAN|);.PROCE|
|000048b0| 44 55 52 45 20 47 65 74 | 54 79 70 65 61 6e 64 43 |DURE Get|TypeandC|
|000048c0| 72 65 61 74 6f 72 20 28 | 56 41 52 20 66 3a 46 69 |reator (|VAR f:Fi|
|000048d0| 6c 65 3b 20 56 41 52 20 | 46 54 79 70 65 2c 43 72 |le; VAR |FType,Cr|
|000048e0| 65 61 74 6f 72 3a 41 52 | 52 41 59 20 4f 46 20 43 |eator:AR|RAY OF C|
|000048f0| 48 41 52 3b 56 41 52 20 | 64 6f 6e 65 3a 42 4f 4f |HAR;VAR |done:BOO|
|00004900| 4c 45 41 4e 29 3b 0d 0d | 0d 28 2a 20 54 68 65 73 |LEAN);..|.(* Thes|
|00004910| 65 20 6e 6f 74 65 73 20 | 61 72 65 20 74 68 65 20 |e notes |are the |
|00004920| 4d 61 63 69 6e 74 6f 73 | 68 20 56 65 72 73 69 6f |Macintos|h Versio|
|00004930| 6e 20 6f 66 20 4d 32 46 | 69 6c 65 73 3a 0d 0d 2d |n of M2F|iles:..-|
|00004940| 20 61 20 27 66 69 6c 65 | 20 6e 61 6d 65 27 20 69 | a 'file| name' i|
|00004950| 6e 20 4f 70 65 6e 2f 43 | 72 65 61 74 65 2f 52 65 |n Open/C|reate/Re|
|00004960| 6e 61 6d 65 20 63 6f 6e | 73 69 73 74 73 20 6f 66 |name con|sists of|
|00004970| 20 74 68 65 20 76 6f 6c | 75 6d 65 20 6e 61 6d 65 | the vol|ume name|
|00004980| 20 61 6e 64 20 0d 20 20 | 74 68 65 20 66 69 6c 65 | and . |the file|
|00004990| 20 6e 61 6d 65 20 70 72 | 6f 70 65 72 2c 20 73 65 | name pr|oper, se|
|000049a0| 70 61 72 61 74 65 64 20 | 62 79 20 61 20 3a 20 2e |parated |by a : .|
|000049b0| 20 54 68 65 20 4d 61 63 | 69 6e 74 6f 73 68 20 4f | The Mac|intosh O|
|000049c0| 2e 53 2e 20 61 6c 6c 6f | 77 73 20 61 6e 79 0d 20 |.S. allo|ws any. |
|000049d0| 20 63 68 61 72 20 69 6e | 20 61 20 6e 61 6d 65 20 | char in| a name |
|000049e0| 28 65 76 65 6e 20 75 6e | 70 72 69 6e 74 61 62 6c |(even un|printabl|
|000049f0| 65 29 2c 20 65 78 63 65 | 70 74 20 61 20 3a 20 2e |e), exce|pt a : .|
|00004a00| 0d 20 20 56 61 6c 69 64 | 20 45 78 61 6d 70 6c 65 |. Valid| Example|
|00004a10| 3a 20 20 4d 59 44 49 53 | 4b 3a 64 61 74 65 6e 2e |: MYDIS|K:daten.|
|00004a20| 44 41 54 0d 20 20 0d 2d | 20 75 73 69 6e 67 20 53 |DAT. .-| using S|
|00004a30| 65 74 2f 47 65 74 54 79 | 70 65 41 6e 64 43 72 65 |et/GetTy|peAndCre|
|00004a40| 61 74 6f 72 20 77 69 6c | 6c 20 6f 6e 6c 79 20 64 |ator wil|l only d|
|00004a50| 69 73 74 75 72 62 20 79 | 6f 75 2c 20 75 6e 6c 65 |isturb y|ou, unle|
|00004a60| 73 73 20 79 6f 75 20 6b | 6e 6f 77 20 61 20 6c 6f |ss you k|now a lo|
|00004a70| 74 0d 20 20 61 62 6f 75 | 74 20 74 68 65 20 4d 61 |t. abou|t the Ma|
|00004a80| 63 20 4f 2e 53 2e 0d 2a | 29 0d 45 4e 44 20 4d 32 |c O.S..*|).END M2|
|00004a90| 46 69 6c 65 73 2e 0d 28 | 2a 3d 3d 3d 3d 3d 3d 3d |Files..(|*=======|
|00004aa0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004ab0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004ac0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004ad0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004ae0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004af0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 2a 29 0d 00 00 01 |========|==*)....|
|00004b00| 00 00 00 01 16 00 00 00 | 16 00 00 00 d4 20 20 3a |........|..... :|
|00004b10| 20 43 6f 6d 70 69 6c 65 | 72 20 20 6f 75 74 70 75 | Compile|r outpu|
|00004b20| 74 20 20 66 69 6c 65 20 | 20 77 69 74 68 20 20 73 |t file | with s|
|00004b30| 79 6d 62 6f 6c 20 74 61 | 62 6c 65 0d 20 20 20 20 |ymbol ta|ble. |
|00004b40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00004b50| 69 6e 66 6f 72 6d 61 74 | 69 6f 6e 3b 20 69 6e 66 |informat|ion; inf|
|00004b60| 6f 72 6d 61 74 69 6f 6e | 20 67 65 6e 65 72 61 74 |ormation| generat|
|00004b70| 65 64 20 20 64 75 72 69 | 6e 67 0d 20 20 20 20 20 |ed duri|ng. |
|00004b80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 63 | | c|
|00004b90| 6f 6d 70 69 6c 61 74 69 | 6f 6e 20 20 20 6f 66 20 |ompilati|on of |
|00004ba0| 20 20 61 20 20 20 64 65 | 66 69 6e 69 74 69 6f 6e | a de|finition|
|00004bb0| 20 20 20 6d 6f 64 75 6c | 65 0d 20 20 20 20 20 20 | modul|e. |
|00004bc0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 28 64 | | (d|
|00004bd0| 65 66 61 75 6c 74 20 65 | 78 74 65 6e 73 69 6f 6e |efault e|xtension|
|00004be0| 20 53 59 4d 29 2e 0d 72 | 65 66 65 72 65 6e 63 65 | SYM)..r|eference|
|00004bf0| 20 66 69 6c 65 20 20 20 | 20 3a 20 43 6f 00 00 00 | file | : Co...|
|00004c00| 0a 00 09 06 4d 6f 6e 61 | 63 6f ff 00 00 00 04 00 |....Mona|co......|
|00004c10| 06 00 08 00 00 01 00 00 | 00 01 16 00 00 00 16 00 |........|........|
|00004c20| 00 00 d4 00 00 cc 1c 00 | 98 00 00 00 1c 00 46 00 |........|......F.|
|00004c30| 01 45 46 4e 54 00 00 00 | 12 45 54 41 42 00 00 00 |.EFNT...|.ETAB...|
|00004c40| 1e 03 eb 00 00 00 00 00 | 00 00 01 69 16 03 ec 00 |........|...i....|
|00004c50| 47 00 00 00 0e 00 01 69 | 0a 46 4f 42 4a ff ff ff |G......i|.FOBJ...|
|00004c60| ff 00 40 01 aa 00 40 01 | ac 00 40 01 ae 00 40 01 |..@...@.|..@...@.|
|00004c70| b0 00 40 01 b2 00 40 01 | b4 00 40 01 b6 00 40 01 |..@...@.|..@...@.|
|00004c80| b8 00 40 10 18 00 40 01 | bc 00 40 01 be 00 40 01 |..@...@.|..@...@.|
|00004c90| be 00 40 01 be 00 40 01 | be 00 40 01 be 00 40 01 |..@...@.|..@...@.|
|00004ca0| 46 4f 42 4a ff ff ff ff | 00 40 01 aa 00 40 01 ac |FOBJ....|.@...@..|
|00004cb0| 00 40 01 ae 00 40 01 b0 | 00 40 01 b2 00 40 01 b4 |.@...@..|.@...@..|
|00004cc0| 00 40 01 b6 00 40 01 b8 | 00 40 10 18 00 40 01 bc |.@...@..|.@...@..|
|00004cd0| 00 40 01 be 00 40 01 be | 00 40 01 be 00 40 01 be |.@...@..|.@...@..|
|00004ce0| 00 40 01 be 00 40 01 20 | 51 50 4d 61 67 0b 4d 32 |.@...@. |QPMag.M2|
|00004cf0| 46 49 4c 45 53 2e 53 59 | 4d 53 59 4d 4d 00 22 00 |FILES.SY|MSYMM.".|
|00004d00| 40 00 40 38 7c 00 40 10 | 32 00 40 10 32 00 00 00 |@.@8|.@.|2.@.2...|
|00004d10| 40 33 f4 00 00 00 00 00 | 00 a0 23 00 00 6e 94 00 |@3......|..#..n..|
|00004d20| 00 4d d8 00 40 2c 72 00 | 1d 00 47 00 00 4d 53 59 |.M..@,r.|..G..MSY|
|00004d30| 4d 3f 3f 3f 3f 01 00 00 | 00 00 00 03 74 00 00 00 |M????...|....t...|
|00004d40| 00 00 00 00 00 00 00 00 | 00 8b bd 07 00 03 07 aa |........|........|
|00004d50| 31 07 02 af 07 00 2d 13 | 4d 32 46 69 6c 65 73 00 |1.....-.|M2Files.|
|00004d60| 01 07 aa 31 07 02 af 07 | 00 2d 13 4d 32 46 69 6c |...1....|.-.M2Fil|
|00004d70| 65 73 00 03 13 53 59 53 | 54 45 4d 00 04 13 46 69 |es...SYS|TEM...Fi|
|00004d80| 6c 65 00 13 65 6f 6c 63 | 00 13 4f 70 65 6e 00 13 |le..eolc|..Open..|
|00004d90| 43 72 65 61 74 65 00 13 | 43 6c 6f 73 65 00 13 44 |Create..|Close..D|
|00004da0| 65 6c 65 74 65 00 13 52 | 65 6e 61 6d 65 00 13 47 |elete..R|ename..G|
|00004db0| 65 74 50 6f 73 00 13 53 | 65 74 50 6f 73 00 13 52 |etPos..S|etPos..R|
|00004dc0| 65 73 65 74 00 13 52 65 | 61 64 43 68 61 72 00 13 |eset..Re|adChar..|
|00004dd0| 57 72 69 74 65 43 68 61 | 72 00 13 52 65 61 64 57 |WriteCha|r..ReadW|
|00004de0| 6f 72 64 00 13 57 72 69 | 74 65 57 6f 72 64 00 13 |ord..Wri|teWord..|
|00004df0| 4d 6f 64 69 66 79 57 6f | 72 64 00 13 45 6e 64 46 |ModifyWo|rd..EndF|
|00004e00| 69 6c 65 00 13 53 65 74 | 54 79 70 65 61 6e 64 43 |ile..Set|TypeandC|
|00004e10| 72 65 61 74 6f 72 00 13 | 47 65 74 54 79 70 65 61 |reator..|GetTypea|
|00004e20| 6e 64 43 72 65 61 74 6f | 72 00 0a 13 46 69 6c 65 |ndCreato|r...File|
|00004e30| 00 0f 05 13 65 6f 6c 63 | 00 06 00 00 00 0d 13 43 |....eolc|.......C|
|00004e40| 48 41 52 00 11 13 4f 70 | 65 6e 00 07 00 01 11 17 |HAR...Op|en......|
|00004e50| 10 13 46 69 6c 65 00 10 | 0b 13 43 48 41 52 00 13 |..File..|..CHAR..|
|00004e60| 42 4f 4f 4c 45 41 4e 00 | 10 13 42 4f 4f 4c 45 41 |BOOLEAN.|..BOOLEA|
|00004e70| 4e 00 18 11 13 43 72 65 | 61 74 65 00 07 00 02 11 |N....Cre|ate.....|
|00004e80| 17 10 13 46 69 6c 65 00 | 10 0b 13 43 48 41 52 00 |...File.|...CHAR.|
|00004e90| 10 13 42 4f 4f 4c 45 41 | 4e 00 18 11 13 43 6c 6f |..BOOLEA|N....Clo|
|00004ea0| 73 65 00 07 00 03 11 17 | 10 13 46 69 6c 65 00 10 |se......|..File..|
|00004eb0| 13 42 4f 4f 4c 45 41 4e | 00 18 11 13 44 65 6c 65 |.BOOLEAN|....Dele|
|00004ec0| 74 65 00 07 00 04 11 17 | 10 13 46 69 6c 65 00 10 |te......|..File..|
|00004ed0| 13 42 4f 4f 4c 45 41 4e | 00 18 11 13 52 65 6e 61 |.BOOLEAN|....Rena|
|00004ee0| 6d 65 00 07 00 05 11 17 | 10 0b 13 43 48 41 52 00 |me......|...CHAR.|
|00004ef0| 10 0b 13 43 48 41 52 00 | 10 13 42 4f 4f 4c 45 41 |...CHAR.|..BOOLEA|
|00004f00| 4e 00 18 11 13 47 65 74 | 50 6f 73 00 07 00 06 11 |N....Get|Pos.....|
|00004f10| 17 10 13 46 69 6c 65 00 | 10 13 43 41 52 44 49 4e |...File.|..CARDIN|
|00004f20| 41 4c 00 10 13 43 41 52 | 44 49 4e 41 4c 00 18 11 |AL...CAR|DINAL...|
|00004f30| 13 53 65 74 50 6f 73 00 | 07 00 07 11 17 10 13 46 |.SetPos.|.......F|
|00004f40| 69 6c 65 00 13 43 41 52 | 44 49 4e 41 4c 00 13 43 |ile..CAR|DINAL..C|
|00004f50| 41 52 44 49 4e 41 4c 00 | 18 11 13 52 65 73 65 74 |ARDINAL.|...Reset|
|00004f60| 00 07 00 08 11 17 10 13 | 46 69 6c 65 00 18 11 13 |........|File....|
|00004f70| 52 65 61 64 43 68 61 72 | 00 07 00 09 11 17 10 13 |ReadChar|........|
|00004f80| 46 69 6c 65 00 10 13 43 | 48 41 52 00 18 11 13 57 |File...C|HAR....W|
|00004f90| 72 69 74 65 43 68 61 72 | 00 07 00 0a 11 17 10 13 |riteChar|........|
|00004fa0| 46 69 6c 65 00 13 43 48 | 41 52 00 18 11 13 52 65 |File..CH|AR....Re|
|00004fb0| 61 64 57 6f 72 64 00 07 | 00 0b 11 17 10 13 46 69 |adWord..|......Fi|
|00004fc0| 6c 65 00 10 13 53 59 53 | 54 45 4d 00 14 13 57 4f |le...SYS|TEM...WO|
|00004fd0| 52 44 00 18 11 13 57 72 | 69 74 65 57 6f 72 64 00 |RD....Wr|iteWord.|
|00004fe0| 07 00 0c 11 17 10 13 46 | 69 6c 65 00 13 53 59 53 |.......F|ile..SYS|
|00004ff0| 54 45 4d 00 14 13 57 4f | 52 44 00 18 11 13 4d 6f |TEM...WO|RD....Mo|
|00005000| 64 69 66 79 57 6f 72 64 | 00 07 00 0d 11 17 10 13 |difyWord|........|
|00005010| 46 69 6c 65 00 13 53 59 | 53 54 45 4d 00 14 13 57 |File..SY|STEM...W|
|00005020| 4f 52 44 00 18 11 13 45 | 6e 64 46 69 6c 65 00 07 |ORD....E|ndFile..|
|00005030| 00 0e 11 17 10 13 46 69 | 6c 65 00 18 15 13 42 4f |......Fi|le....BO|
|00005040| 4f 4c 45 41 4e 00 11 13 | 53 65 74 54 79 70 65 61 |OLEAN...|SetTypea|
|00005050| 6e 64 43 72 65 61 74 6f | 72 00 07 00 0f 11 17 10 |ndCreato|r.......|
|00005060| 13 46 69 6c 65 00 10 0b | 13 43 48 41 52 00 10 0b |.File...|.CHAR...|
|00005070| 13 43 48 41 52 00 10 13 | 42 4f 4f 4c 45 41 4e 00 |.CHAR...|BOOLEAN.|
|00005080| 18 11 13 47 65 74 54 79 | 70 65 61 6e 64 43 72 65 |...GetTy|peandCre|
|00005090| 61 74 6f 72 00 07 00 10 | 11 17 10 13 46 69 6c 65 |ator....|....File|
|000050a0| 00 10 0b 13 43 48 41 52 | 00 10 0b 13 43 48 41 52 |....CHAR|....CHAR|
|000050b0| 00 10 13 42 4f 4f 4c 45 | 41 4e 00 18 02 00 00 62 |...BOOLE|AN.....b|
|000050c0| 50 50 4d 61 67 0c 4d 41 | 54 48 4c 49 42 30 2e 44 |PPMag.MA|THLIB0.D|
|000050d0| 45 46 59 4d 4d 00 22 00 | 40 00 40 38 7c 00 40 10 |EFYMM.".|@.@8|.@.|
|000050e0| 32 00 40 10 32 00 00 00 | 40 33 f4 00 00 00 00 00 |2.@.2...|@3......|
|000050f0| 00 a0 23 00 00 6e 94 00 | 00 4d d8 00 40 2c 72 00 |..#..n..|.M..@,r.|
|00005100| 1d 00 47 00 00 54 45 58 | 54 45 44 49 54 01 00 00 |..G..TEX|TEDIT...|
|00005110| 00 00 00 01 b0 00 00 00 | 00 98 f4 5b d6 98 f4 bd |........|...[....|
|00005120| 4c 2a bd 0d 44 45 46 49 | 4e 49 54 49 4f 4e 20 4d |L*..DEFI|NITION M|
|00005130| 4f 44 55 4c 45 20 4d 61 | 74 68 4c 69 62 30 3b 20 |ODULE Ma|thLib0; |
|00005140| 20 28 2a 4d 61 74 68 65 | 6d 61 74 69 63 61 6c 20 | (*Mathe|matical |
|00005150| 6c 69 62 72 61 72 79 20 | 30 20 2a 29 0d 0d 45 58 |library |0 *)..EX|
|00005160| 50 4f 52 54 20 51 55 41 | 4c 49 46 49 45 44 0d 20 |PORT QUA|LIFIED. |
|00005170| 20 73 71 72 74 2c 20 73 | 69 6e 2c 20 63 6f 73 2c | sqrt, s|in, cos,|
|00005180| 20 61 72 63 74 61 6e 2c | 20 65 78 70 2c 20 6c 6e | arctan,| exp, ln|
|00005190| 2c 20 72 65 61 6c 2c 20 | 65 6e 74 69 65 72 3b 0d |, real, |entier;.|
|000051a0| 0d 50 52 4f 43 45 44 55 | 52 45 20 73 71 72 74 20 |.PROCEDU|RE sqrt |
|000051b0| 20 20 28 78 3a 20 52 45 | 41 4c 29 20 3a 20 52 45 | (x: RE|AL) : RE|
|000051c0| 41 4c 3b 0d 50 52 4f 43 | 45 44 55 52 45 20 73 69 |AL;.PROC|EDURE si|
|000051d0| 6e 20 20 20 20 28 78 3a | 20 52 45 41 4c 29 20 3a |n (x:| REAL) :|
|000051e0| 20 52 45 41 4c 3b 0d 50 | 52 4f 43 45 44 55 52 45 | REAL;.P|ROCEDURE|
|000051f0| 20 63 6f 73 20 20 20 20 | 28 78 3a 20 52 45 41 4c | cos |(x: REAL|
|00005200| 29 20 3a 20 52 45 41 4c | 3b 0d 50 52 4f 43 45 44 |) : REAL|;.PROCED|
|00005210| 55 52 45 20 61 72 63 74 | 61 6e 20 28 78 3a 20 52 |URE arct|an (x: R|
|00005220| 45 41 4c 29 20 3a 20 52 | 45 41 4c 3b 0d 50 52 4f |EAL) : R|EAL;.PRO|
|00005230| 43 45 44 55 52 45 20 65 | 78 70 20 20 20 20 28 78 |CEDURE e|xp (x|
|00005240| 3a 20 52 45 41 4c 29 20 | 3a 20 52 45 41 4c 3b 0d |: REAL) |: REAL;.|
|00005250| 50 52 4f 43 45 44 55 52 | 45 20 6c 6e 20 20 20 20 |PROCEDUR|E ln |
|00005260| 20 28 78 3a 20 52 45 41 | 4c 29 20 3a 20 52 45 41 | (x: REA|L) : REA|
|00005270| 4c 3b 0d 50 52 4f 43 45 | 44 55 52 45 20 65 6e 74 |L;.PROCE|DURE ent|
|00005280| 69 65 72 20 28 78 3a 20 | 52 45 41 4c 29 20 3a 20 |ier (x: |REAL) : |
|00005290| 49 4e 54 45 47 45 52 3b | 0d 50 52 4f 43 45 44 55 |INTEGER;|.PROCEDU|
|000052a0| 52 45 20 72 65 61 6c 20 | 20 20 28 78 3a 20 49 4e |RE real | (x: IN|
|000052b0| 54 45 47 45 52 29 20 3a | 20 52 45 41 4c 3b 0d 0d |TEGER) :| REAL;..|
|000052c0| 45 4e 44 20 4d 61 74 68 | 4c 69 62 30 2e 0d 0d 0d |END Math|Lib0....|
|000052d0| 0d 0d 0d 1c 29 50 4d 61 | 67 0c 4d 41 54 48 4c 49 |....)PMa|g.MATHLI|
|000052e0| 42 30 2e 53 59 4d 59 4d | 4d 00 22 00 40 00 40 38 |B0.SYMYM|M.".@.@8|
|000052f0| 7c 00 40 10 32 00 40 10 | 32 00 00 00 40 33 f4 00 ||.@.2.@.|2...@3..|
|00005300| 00 00 00 00 00 a0 23 00 | 00 6e 94 00 00 4d d8 00 |......#.|.n...M..|
|00005310| 40 2c 72 00 1d 00 47 00 | 00 54 45 58 54 45 44 49 |@,r...G.|.TEXTEDI|
|00005320| 54 01 00 00 00 00 00 01 | 3a 00 00 00 00 98 f4 69 |T.......|:......i|
|00005330| b0 98 f4 69 b4 0a eb 07 | 00 03 07 00 00 07 98 f4 |...i....|........|
|00005340| 07 69 94 13 4d 61 74 68 | 4c 69 62 30 00 01 07 00 |.i..Math|Lib0....|
|00005350| 00 07 98 f4 07 69 94 13 | 4d 61 74 68 4c 69 62 30 |.....i..|MathLib0|
|00005360| 00 03 13 53 59 53 54 45 | 4d 00 04 13 73 71 72 74 |...SYSTE|M...sqrt|
|00005370| 00 13 73 69 6e 00 13 63 | 6f 73 00 13 61 72 63 74 |..sin..c|os..arct|
|00005380| 61 6e 00 13 65 78 70 00 | 13 6c 6e 00 13 72 65 61 |an..exp.|.ln..rea|
|00005390| 6c 00 13 65 6e 74 69 65 | 72 00 11 13 73 71 72 74 |l..entie|r...sqrt|
|000053a0| 00 07 00 01 11 17 13 52 | 45 41 4c 00 18 15 13 52 |.......R|EAL....R|
|000053b0| 45 41 4c 00 11 13 73 69 | 6e 00 07 00 02 11 17 13 |EAL...si|n.......|
|000053c0| 52 45 41 4c 00 18 15 13 | 52 45 41 4c 00 11 13 63 |REAL....|REAL...c|
|000053d0| 6f 73 00 07 00 03 11 17 | 13 52 45 41 4c 00 18 15 |os......|.REAL...|
|000053e0| 13 52 45 41 4c 00 11 13 | 61 72 63 74 61 6e 00 07 |.REAL...|arctan..|
|000053f0| 00 04 11 17 13 52 45 41 | 4c 00 18 15 13 52 45 41 |.....REA|L....REA|
|00005400| 4c 00 11 13 65 78 70 00 | 07 00 05 11 17 13 52 45 |L...exp.|......RE|
|00005410| 41 4c 00 18 15 13 52 45 | 41 4c 00 11 13 6c 6e 00 |AL....RE|AL...ln.|
|00005420| 07 00 06 11 17 13 52 45 | 41 4c 00 18 15 13 52 45 |......RE|AL....RE|
|00005430| 41 4c 00 11 13 72 65 61 | 6c 00 07 00 08 11 17 13 |AL...rea|l.......|
|00005440| 49 4e 54 45 47 45 52 00 | 18 15 13 52 45 41 4c 00 |INTEGER.|...REAL.|
|00005450| 11 13 65 6e 74 69 65 72 | 00 07 00 07 11 17 13 52 |..entier|.......R|
|00005460| 45 41 4c 00 18 15 13 49 | 4e 54 45 47 45 52 00 02 |EAL....I|NTEGER..|
|00005470| 00 a6 d1 50 4d 61 67 0c | 4d 41 54 48 4c 49 42 31 |...PMag.|MATHLIB1|
|00005480| 2e 44 45 46 59 4d 4d 00 | 22 00 40 00 40 38 7c 00 |.DEFYMM.|".@.@8|.|
|00005490| 40 10 32 00 40 10 32 00 | 00 00 40 33 f4 00 00 00 |@.2.@.2.|..@3....|
|000054a0| 00 00 00 a0 23 00 00 6e | 94 00 00 4d d8 00 40 2c |....#..n|...M..@,|
|000054b0| 72 00 1d 00 47 00 00 54 | 45 58 54 45 44 49 54 01 |r...G..T|EXTEDIT.|
|000054c0| 00 00 00 00 00 01 db 00 | 00 00 00 98 f4 5b 6c 98 |........|.....[l.|
|000054d0| f4 5b 70 5d 41 44 45 46 | 49 4e 49 54 49 4f 4e 20 |.[p]ADEF|INITION |
|000054e0| 4d 4f 44 55 4c 45 20 4d | 61 74 68 4c 69 62 31 3b |MODULE M|athLib1;|
|000054f0| 20 20 28 2a 20 4d 61 74 | 68 2e 20 6c 69 62 72 61 | (* Mat|h. libra|
|00005500| 72 79 20 31 20 2a 29 0d | 28 2a 20 61 64 64 69 74 |ry 1 *).|(* addit|
|00005510| 69 6f 6e 61 6c 20 6d 61 | 74 68 65 6d 61 74 69 63 |ional ma|thematic|
|00005520| 61 6c 20 66 75 6e 63 74 | 69 6f 6e 73 2a 29 0d 0d |al funct|ions*)..|
|00005530| 28 2a 20 4d 2e 20 53 63 | 68 6e 65 69 64 65 72 20 |(* M. Sc|hneider |
|00005540| 20 34 2e 20 4a 75 6c 69 | 20 31 39 38 33 20 2a 29 | 4. Juli| 1983 *)|
|00005550| 0d 0d 45 58 50 4f 52 54 | 20 51 55 41 4c 49 46 49 |..EXPORT| QUALIFI|
|00005560| 45 44 0d 20 20 70 6f 74 | 2c 20 6c 6f 67 2c 20 61 |ED. pot|, log, a|
|00005570| 72 63 74 61 6e 32 2c 20 | 74 61 6e 2c 0d 20 20 72 |rctan2, |tan,. r|
|00005580| 61 6e 64 6f 6d 2c 20 73 | 65 74 72 61 6e 64 6f 6d |andom, s|etrandom|
|00005590| 2c 20 50 49 3b 0d 0d 50 | 52 4f 43 45 44 55 52 45 |, PI;..P|ROCEDURE|
|000055a0| 20 70 6f 74 20 28 20 78 | 3a 20 52 45 41 4c 20 29 | pot ( x|: REAL )|
|000055b0| 3a 20 52 45 41 4c 3b 0d | 50 52 4f 43 45 44 55 52 |: REAL;.|PROCEDUR|
|000055c0| 45 20 6c 6f 67 20 28 20 | 78 3a 20 52 45 41 4c 20 |E log ( |x: REAL |
|000055d0| 29 3a 20 52 45 41 4c 3b | 0d 50 52 4f 43 45 44 55 |): REAL;|.PROCEDU|
|000055e0| 52 45 20 61 72 63 74 61 | 6e 32 20 28 20 78 2c 20 |RE arcta|n2 ( x, |
|000055f0| 79 3a 20 52 45 41 4c 20 | 29 3a 20 52 45 41 4c 3b |y: REAL |): REAL;|
|00005600| 0d 50 52 4f 43 45 44 55 | 52 45 20 74 61 6e 20 28 |.PROCEDU|RE tan (|
|00005610| 20 78 3a 20 52 45 41 4c | 20 29 3a 20 52 45 41 4c | x: REAL| ): REAL|
|00005620| 3b 0d 50 52 4f 43 45 44 | 55 52 45 20 72 61 6e 64 |;.PROCED|URE rand|
|00005630| 6f 6d 28 29 3a 20 52 45 | 41 4c 3b 0d 20 20 20 20 |om(): RE|AL;. |
|00005640| 20 20 20 20 20 20 20 20 | 28 2a 20 72 61 6e 67 65 | |(* range|
|00005650| 3a 20 30 2e 30 20 3c 3d | 20 72 61 6e 64 6f 6d 20 |: 0.0 <=| random |
|00005660| 3c 20 31 2e 30 20 2a 29 | 0d 50 52 4f 43 45 44 55 |< 1.0 *)|.PROCEDU|
|00005670| 52 45 20 73 65 74 72 61 | 6e 64 6f 6d 28 20 78 30 |RE setra|ndom( x0|
|00005680| 3a 20 52 45 41 4c 20 29 | 3b 0d 50 52 4f 43 45 44 |: REAL )|;.PROCED|
|00005690| 55 52 45 20 50 49 28 29 | 3a 20 52 45 41 4c 3b 0d |URE PI()|: REAL;.|
|000056a0| 0d 45 4e 44 20 4d 61 74 | 68 4c 69 62 31 2e 0d 0d |.END Mat|hLib1...|
|000056b0| d2 be 50 4d 61 67 0c 4d | 41 54 48 4c 49 42 31 2e |..PMag.M|ATHLIB1.|
|000056c0| 53 59 4d 59 4d 4d 00 22 | 00 40 00 40 38 7c 00 40 |SYMYMM."|.@.@8|.@|
|000056d0| 10 32 00 40 10 32 00 00 | 00 40 33 f4 00 00 00 00 |.2.@.2..|.@3.....|
|000056e0| 00 00 a0 23 00 00 6e 94 | 00 00 4d d8 00 40 2c 72 |...#..n.|..M..@,r|
|000056f0| 00 1d 00 47 00 00 54 45 | 58 54 45 44 49 54 01 00 |...G..TE|XTEDIT..|
|00005700| 00 00 00 00 01 14 00 00 | 00 00 98 f4 69 e5 98 f4 |........|....i...|
|00005710| 69 e7 1e a1 07 00 03 07 | 00 00 07 98 f4 07 69 c9 |i.......|......i.|
|00005720| 13 4d 61 74 68 4c 69 62 | 31 00 01 07 00 00 07 98 |.MathLib|1.......|
|00005730| f4 07 69 c9 13 4d 61 74 | 68 4c 69 62 31 00 03 13 |..i..Mat|hLib1...|
|00005740| 53 59 53 54 45 4d 00 04 | 13 70 6f 74 00 13 6c 6f |SYSTEM..|.pot..lo|
|00005750| 67 00 13 61 72 63 74 61 | 6e 32 00 13 74 61 6e 00 |g..arcta|n2..tan.|
|00005760| 13 72 61 6e 64 6f 6d 00 | 13 73 65 74 72 61 6e 64 |.random.|.setrand|
|00005770| 6f 6d 00 13 50 49 00 11 | 13 70 6f 74 00 07 00 01 |om..PI..|.pot....|
|00005780| 11 17 13 52 45 41 4c 00 | 18 15 13 52 45 41 4c 00 |...REAL.|...REAL.|
|00005790| 11 13 6c 6f 67 00 07 00 | 02 11 17 13 52 45 41 4c |..log...|....REAL|
|000057a0| 00 18 15 13 52 45 41 4c | 00 11 13 61 72 63 74 61 |....REAL|...arcta|
|000057b0| 6e 32 00 07 00 03 11 17 | 13 52 45 41 4c 00 13 52 |n2......|.REAL..R|
|000057c0| 45 41 4c 00 18 15 13 52 | 45 41 4c 00 11 13 74 61 |EAL....R|EAL...ta|
|000057d0| 6e 00 07 00 04 11 17 13 | 52 45 41 4c 00 18 15 13 |n.......|REAL....|
|000057e0| 52 45 41 4c 00 11 13 72 | 61 6e 64 6f 6d 00 07 00 |REAL...r|andom...|
|000057f0| 05 11 17 18 15 13 52 45 | 41 4c 00 11 13 73 65 74 |......RE|AL...set|
|00005800| 72 61 6e 64 6f 6d 00 07 | 00 06 11 17 13 52 45 41 |random..|.....REA|
|00005810| 4c 00 18 11 13 50 49 00 | 07 00 07 11 17 18 15 13 |L....PI.|........|
|00005820| 52 45 41 4c 00 02 00 00 | 77 fc 50 4d 61 67 0c 4d |REAL....|w.PMag.M|
|00005830| 43 4c 4f 4f 4b 55 50 2e | 44 45 46 59 4d 4d 00 22 |CLOOKUP.|DEFYMM."|
|00005840| 00 40 00 40 38 7c 00 40 | 10 32 00 40 10 32 00 00 |.@.@8|.@|.2.@.2..|
|00005850| 00 40 33 f4 00 00 00 00 | 00 00 a0 23 00 00 6e 94 |.@3.....|...#..n.|
|00005860| 00 00 4d d8 00 40 2c 72 | 00 1d 00 47 00 00 54 45 |..M..@,r|...G..TE|
|00005870| 58 54 45 44 49 54 01 00 | 00 00 00 00 0d bb 00 00 |XTEDIT..|........|
|00005880| 00 00 98 f4 5c 11 98 f4 | 5c 19 19 0a 0d 28 2a 2a |....\...|\....(**|
|00005890| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000058a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000058b0| 2a 2a 2a 2a 2a 2a 0d 2a | 20 20 20 20 20 20 20 20 |******.*| |
|000058c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000058d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 2a | | *|
|000058e0| 0d 2a 20 20 20 20 20 4d | 4f 44 55 4c 41 2d 32 20 |.* M|ODULA-2 |
|000058f0| 4d 75 6c 74 69 2d 50 61 | 73 73 20 43 6f 6d 70 69 |Multi-Pa|ss Compi|
|00005900| 6c 65 72 20 20 20 20 20 | 20 2a 0d 2a 20 20 20 20 |ler | *.* |
|00005910| 20 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | *******|********|
|00005920| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 20 20 20 |********|***** |
|00005930| 20 20 20 2a 0d 2a 20 20 | 20 20 20 20 20 20 20 20 | *.* | |
|00005940| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005950| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 2a 0d 2a | | *.*|
|00005960| 20 20 20 20 20 49 6d 70 | 6c 65 6d 65 6e 74 61 74 | Imp|lementat|
|00005970| 69 6f 6e 20 66 6f 72 20 | 4c 69 6c 69 74 68 20 20 |ion for |Lilith |
|00005980| 20 20 20 20 20 20 20 2a | 0d 2a 20 20 20 20 20 61 | *|.* a|
|00005990| 64 61 70 74 65 64 20 66 | 6f 72 20 53 4d 41 4b 59 |dapted f|or SMAKY|
|000059a0| 20 38 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | 8 | |
|000059b0| 20 2a 0d 2a 20 20 20 20 | 20 20 20 20 20 20 20 20 | *.* | |
|000059c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000059d0| 20 20 20 20 20 20 20 20 | 20 20 20 2a 0d 2a 20 20 | | *.* |
|000059e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000059f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005a00| 20 20 20 20 20 2a 0d 2a | 20 20 20 20 20 4d 43 4c | *.*| MCL|
|00005a10| 6f 6f 6b 75 70 3a 20 20 | 20 20 20 20 20 20 20 20 |ookup: | |
|00005a20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 2a | | *|
|00005a30| 0d 2a 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |.* | |
|00005a40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005a50| 20 20 20 20 20 20 20 20 | 20 2a 0d 2a 20 20 20 20 | | *.* |
|00005a60| 20 4c 6f 6f 6b 75 70 20 | 6f 6e 20 66 69 6c 65 73 | Lookup |on files|
|00005a70| 20 61 63 63 6f 72 64 69 | 6e 67 20 74 6f 20 20 20 | accordi|ng to |
|00005a80| 20 20 20 2a 0d 2a 20 20 | 20 20 20 64 69 66 66 65 | *.* | diffe|
|00005a90| 72 65 6e 74 20 73 65 61 | 72 63 68 69 6e 67 20 73 |rent sea|rching s|
|00005aa0| 74 72 61 74 65 67 69 65 | 73 20 20 20 20 2a 0d 2a |trategie|s *.*|
|00005ab0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005ac0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005ad0| 20 20 20 20 20 20 20 2a | 0d 2a 20 20 20 20 20 56 | *|.* V|
|00005ae0| 65 72 73 69 6f 6e 20 43 | 31 39 20 6f 66 20 32 33 |ersion C|19 of 23|
|00005af0| 2e 30 37 2e 38 32 20 20 | 20 20 20 20 20 20 20 20 |.07.82 | |
|00005b00| 20 2a 0d 2a 20 20 20 20 | 20 20 20 20 20 20 20 20 | *.* | |
|00005b10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005b20| 20 20 20 20 20 20 20 20 | 20 20 20 2a 0d 2a 20 20 | | *.* |
|00005b30| 20 20 20 49 6e 73 74 69 | 74 75 74 20 66 75 65 72 | Insti|tut fuer|
|00005b40| 20 49 6e 66 6f 72 6d 61 | 74 69 6b 20 20 20 20 20 | Informa|tik |
|00005b50| 20 20 20 20 20 2a 0d 2a | 20 20 20 20 20 45 54 48 | *.*| ETH|
|00005b60| 2d 5a 75 65 72 69 63 68 | 20 20 20 20 20 20 20 20 |-Zuerich| |
|00005b70| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 2a | | *|
|00005b80| 0d 2a 20 20 20 20 20 43 | 48 2d 38 30 39 32 20 5a |.* C|H-8092 Z|
|00005b90| 75 65 72 69 63 68 20 20 | 20 20 20 20 20 20 20 20 |uerich | |
|00005ba0| 20 20 20 20 20 20 20 20 | 20 2a 0d 2a 20 20 20 20 | | *.* |
|00005bb0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005bc0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005bd0| 20 20 20 2a 0d 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | *.***|********|
|00005be0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00005bf0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 29 0d 0d |********|*****)..|
|00005c00| 44 45 46 49 4e 49 54 49 | 4f 4e 20 4d 4f 44 55 4c |DEFINITI|ON MODUL|
|00005c10| 45 20 4d 43 4c 6f 6f 6b | 75 70 3b 20 20 20 20 20 |E MCLook|up; |
|00005c20| 20 20 20 28 2a 20 4c 47 | 20 2c 20 50 46 20 31 33 | (* LG| , PF 13|
|00005c30| 2e 30 37 2e 38 33 20 2a | 29 0d 0d 20 20 46 52 4f |.07.83 *|).. FRO|
|00005c40| 4d 20 4d 32 46 69 6c 65 | 73 20 20 49 4d 50 4f 52 |M M2File|s IMPOR|
|00005c50| 54 20 46 69 6c 65 3b 0d | 0d 20 20 45 58 50 4f 52 |T File;.|. EXPOR|
|00005c60| 54 20 51 55 41 4c 49 46 | 49 45 44 20 4c 6f 6f 6b |T QUALIF|IED Look|
|00005c70| 75 70 46 69 6c 65 2c 43 | 72 65 61 74 65 46 69 6c |upFile,C|reateFil|
|00005c80| 65 2c 20 53 65 74 4c 69 | 62 72 61 72 69 65 73 3b |e, SetLi|braries;|
|00005c90| 0d 0d 20 20 50 52 4f 43 | 45 44 55 52 45 20 4c 6f |.. PROC|EDURE Lo|
|00005ca0| 6f 6b 75 70 46 69 6c 65 | 28 56 41 52 20 70 72 6f |okupFile|(VAR pro|
|00005cb0| 6d 70 74 3a 20 41 52 52 | 41 59 20 4f 46 20 43 48 |mpt: ARR|AY OF CH|
|00005cc0| 41 52 3b 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |AR;. | |
|00005cd0| 20 20 20 20 20 20 20 20 | 20 20 20 56 41 52 20 6e | | VAR n|
|00005ce0| 61 6d 65 3a 20 41 52 52 | 41 59 20 4f 46 20 43 48 |ame: ARR|AY OF CH|
|00005cf0| 41 52 3b 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |AR;. | |
|00005d00| 20 20 20 20 20 20 20 20 | 20 20 20 56 41 52 20 64 | | VAR d|
|00005d10| 65 66 65 78 74 3a 20 41 | 52 52 41 59 20 4f 46 20 |efext: A|RRAY OF |
|00005d20| 43 48 41 52 3b 0d 20 20 | 20 20 20 20 20 20 20 20 |CHAR;. | |
|00005d30| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 56 41 52 | | VAR|
|00005d40| 20 66 69 6c 65 3a 20 46 | 69 6c 65 3b 0d 20 20 20 | file: F|ile;. |
|00005d50| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005d60| 20 20 20 20 71 75 65 72 | 79 2c 20 61 63 63 65 70 | quer|y, accep|
|00005d70| 74 64 65 66 61 75 6c 74 | 2c 20 61 63 63 65 70 74 |tdefault|, accept|
|00005d80| 6f 70 74 69 6f 6e 73 3a | 20 42 4f 4f 4c 45 41 4e |options:| BOOLEAN|
|00005d90| 3b 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |;. | |
|00005da0| 20 20 20 20 20 20 20 20 | 20 56 41 52 20 61 63 63 | | VAR acc|
|00005db0| 65 70 74 65 64 66 69 6c | 65 6e 61 6d 65 3a 20 41 |eptedfil|ename: A|
|00005dc0| 52 52 41 59 20 4f 46 20 | 43 48 41 52 3b 0d 20 20 |RRAY OF |CHAR;. |
|00005dd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005de0| 20 20 20 20 20 56 41 52 | 20 67 6f 6f 64 66 69 6c | VAR| goodfil|
|00005df0| 65 3a 20 42 4f 4f 4c 45 | 41 4e 3b 20 56 41 52 20 |e: BOOLE|AN; VAR |
|00005e00| 6e 6f 66 69 6c 65 31 3a | 20 42 4f 4f 4c 45 41 4e |nofile1:| BOOLEAN|
|00005e10| 29 3b 0d 0d 20 20 20 20 | 28 2a 20 66 6f 72 20 69 |);.. |(* for i|
|00005e20| 6d 70 6c 65 6d 65 6e 74 | 61 74 69 6f 6e 20 74 68 |mplement|ation th|
|00005e30| 65 20 6d 6f 64 75 6c 65 | 73 3a 20 20 20 20 20 20 |e module|s: |
|00005e40| 20 20 20 2a 29 0d 20 20 | 20 20 28 2a 20 4f 70 74 | *). | (* Opt|
|00005e50| 69 6f 6e 73 20 61 6e 64 | 20 43 6f 6d 70 46 69 6c |ions and| CompFil|
|00005e60| 65 20 61 72 65 20 69 6d | 70 6f 72 74 65 64 20 20 |e are im|ported |
|00005e70| 20 20 20 20 20 2a 29 0d | 0d 20 20 20 20 28 2a 20 | *).|. (* |
|00005e80| 70 72 6f 6d 70 74 20 20 | 20 20 20 20 20 20 3a 20 |prompt | : |
|00005e90| 73 74 72 69 6e 67 20 69 | 73 20 64 69 73 70 6c 61 |string i|s displa|
|00005ea0| 79 65 64 20 6f 6e 20 74 | 65 72 6d 69 6e 61 6c 20 |yed on t|erminal |
|00005eb0| 2a 29 0d 20 20 20 20 28 | 2a 20 6e 61 6d 65 20 20 |*). (|* name |
|00005ec0| 20 20 20 20 20 20 20 20 | 3a 20 66 6f 72 20 63 6f | |: for co|
|00005ed0| 6e 73 74 72 75 63 74 69 | 6f 6e 20 6f 66 20 61 20 |nstructi|on of a |
|00005ee0| 64 65 66 61 75 6c 74 20 | 66 69 6c 65 20 6e 61 6d |default |file nam|
|00005ef0| 65 20 2a 29 0d 20 20 20 | 20 28 2a 20 20 20 20 20 |e *). | (* |
|00005f00| 20 20 20 20 20 20 20 20 | 20 20 20 20 6e 61 6d 65 | | name|
|00005f10| 20 6f 66 20 74 68 65 20 | 6d 6f 64 75 6c 65 20 74 | of the |module t|
|00005f20| 6f 20 62 65 20 6f 70 65 | 6e 65 64 2c 20 69 2e 65 |o be ope|ned, i.e|
|00005f30| 2e 20 66 6f 72 20 77 68 | 69 63 68 0d 20 20 20 20 |. for wh|ich. |
|00005f40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005f50| 20 20 20 61 20 66 69 6c | 65 20 6e 61 6d 65 2e 65 | a fil|e name.e|
|00005f60| 78 74 2c 20 6f 72 20 4c | 49 42 2e 6e 61 6d 65 2e |xt, or L|IB.name.|
|00005f70| 65 78 74 20 6d 75 73 74 | 20 62 65 20 66 6f 75 6e |ext must| be foun|
|00005f80| 64 20 2a 29 0d 20 20 20 | 20 28 2a 20 64 65 66 65 |d *). | (* defe|
|00005f90| 78 74 20 20 20 20 20 20 | 20 20 3a 20 64 65 66 61 |xt | : defa|
|00005fa0| 75 6c 74 20 65 78 74 65 | 6e 73 69 6f 6e 20 6f 66 |ult exte|nsion of|
|00005fb0| 20 73 65 61 72 63 68 65 | 64 20 66 69 6c 65 20 2a | searche|d file *|
|00005fc0| 29 0d 20 20 20 20 28 2a | 20 66 69 6c 65 20 20 20 |). (*| file |
|00005fd0| 20 20 20 20 20 20 20 3a | 20 6f 70 65 6e 65 64 20 | :| opened |
|00005fe0| 66 69 6c 65 20 28 72 65 | 61 64 2d 6f 6e 6c 79 20 |file (re|ad-only |
|00005ff0| 6d 6f 64 65 29 20 20 2a | 29 0d 20 20 20 20 28 2a |mode) *|). (*|
|00006000| 20 71 75 65 72 79 20 20 | 20 20 20 20 20 20 20 3a | query | :|
|00006010| 20 65 78 70 6c 69 63 69 | 74 20 61 73 6b 69 6e 67 | explici|t asking|
|00006020| 20 66 6f 72 20 66 69 6c | 65 20 6e 61 6d 65 20 2a | for fil|e name *|
|00006030| 29 0d 20 20 20 20 28 2a | 20 61 63 63 65 70 74 64 |). (*| acceptd|
|00006040| 65 66 61 75 6c 74 20 3a | 20 61 63 63 65 70 74 20 |efault :| accept |
|00006050| 61 20 64 65 66 61 75 6c | 74 20 66 69 6c 65 20 6e |a defaul|t file n|
|00006060| 61 6d 65 20 2a 29 0d 20 | 20 20 20 28 2a 20 61 63 |ame *). | (* ac|
|00006070| 63 65 70 74 6f 70 74 69 | 6f 6e 73 20 3a 20 61 63 |ceptopti|ons : ac|
|00006080| 63 65 70 74 20 6f 70 74 | 69 6f 6e 73 20 61 70 70 |cept opt|ions app|
|00006090| 65 6e 64 65 64 20 74 6f | 20 66 69 6c 65 20 6e 61 |ended to| file na|
|000060a0| 6d 65 20 2a 29 0d 20 20 | 20 20 28 2a 20 20 20 20 |me *). | (* |
|000060b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 6f 70 74 | | opt|
|000060c0| 69 6f 6e 73 20 61 72 65 | 20 6e 6f 74 20 65 76 61 |ions are| not eva|
|000060d0| 6c 75 61 74 65 64 20 2a | 29 0d 20 20 20 20 28 2a |luated *|). (*|
|000060e0| 20 61 63 63 65 70 74 65 | 64 66 69 6c 65 6e 61 6d | accepte|dfilenam|
|000060f0| 65 3a 20 66 69 6e 61 6c | 20 66 69 6c 65 20 6e 61 |e: final| file na|
|00006100| 6d 65 20 20 2a 29 0d 20 | 20 20 20 28 2a 20 67 6f |me *). | (* go|
|00006110| 6f 64 66 69 6c 65 20 20 | 20 20 20 20 3a 20 6c 6f |odfile | : lo|
|00006120| 6f 6b 75 70 20 77 61 73 | 20 73 75 63 63 65 73 73 |okup was| success|
|00006130| 66 75 6c 20 2a 29 0d 20 | 20 20 20 28 2a 20 6e 6f |ful *). | (* no|
|00006140| 66 69 6c 65 31 20 20 20 | 20 20 20 20 3a 20 6f 70 |file1 | : op|
|00006150| 65 72 61 74 6f 72 20 73 | 61 69 64 3a 20 6f 6d 69 |erator s|aid: omi|
|00006160| 74 20 74 68 69 73 20 66 | 69 6c 65 20 2a 29 0d 0d |t this f|ile *)..|
|00006170| 0d 50 52 4f 43 45 44 55 | 52 45 20 43 72 65 61 74 |.PROCEDU|RE Creat|
|00006180| 65 46 69 6c 65 20 28 56 | 41 52 20 70 72 6f 6d 70 |eFile (V|AR promp|
|00006190| 74 3a 20 41 52 52 41 59 | 20 4f 46 20 43 48 41 52 |t: ARRAY| OF CHAR|
|000061a0| 3b 0d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |;. | |
|000061b0| 20 20 20 20 20 20 20 20 | 56 41 52 20 6e 61 6d 65 | |VAR name|
|000061c0| 20 20 3a 20 41 52 52 41 | 59 20 4f 46 20 43 48 41 | : ARRA|Y OF CHA|
|000061d0| 52 3b 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |R;. | |
|000061e0| 20 20 20 20 20 20 20 20 | 20 56 41 52 20 6e 65 77 | | VAR new|
|000061f0| 65 78 74 3a 20 41 52 52 | 41 59 20 4f 46 20 43 48 |ext: ARR|AY OF CH|
|00006200| 41 52 3b 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |AR;. | |
|00006210| 20 20 20 20 20 20 20 20 | 20 20 56 41 52 20 66 69 | | VAR fi|
|00006220| 6c 65 20 20 3a 20 46 69 | 6c 65 3b 0d 20 20 20 20 |le : Fi|le;. |
|00006230| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00006240| 20 20 71 75 65 72 79 2c | 20 61 63 63 65 70 74 64 | query,| acceptd|
|00006250| 65 66 61 75 6c 74 2c 20 | 61 63 63 65 70 74 6f 70 |efault, |acceptop|
|00006260| 74 69 6f 6e 73 3a 42 4f | 4f 4c 45 41 4e 3b 0d 20 |tions:BO|OLEAN;. |
|00006270| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00006280| 20 20 20 20 20 56 41 52 | 20 61 63 63 65 70 74 65 | VAR| accepte|
|00006290| 64 66 69 6c 65 6e 61 6d | 65 3a 20 41 52 52 41 59 |dfilenam|e: ARRAY|
|000062a0| 20 4f 46 20 43 48 41 52 | 3b 0d 20 20 20 20 20 20 | OF CHAR|;. |
|000062b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000062c0| 56 41 52 20 67 6f 6f 64 | 66 69 6c 65 3a 20 42 4f |VAR good|file: BO|
|000062d0| 4f 4c 45 41 4e 3b 20 56 | 41 52 20 6e 6f 66 69 6c |OLEAN; V|AR nofil|
|000062e0| 65 31 3a 20 42 4f 4f 4c | 45 41 4e 29 3b 0d 0d 20 |e1: BOOL|EAN);.. |
|000062f0| 20 20 20 20 28 2a 20 6e | 65 61 72 6c 79 20 74 68 | (* n|early th|
|00006300| 65 20 73 61 6d 65 20 61 | 73 20 4c 6f 6f 6b 75 70 |e same a|s Lookup|
|00006310| 46 69 6c 65 2e 20 74 6f | 20 6f 70 65 6e 20 61 6e |File. to| open an|
|00006320| 20 6f 75 74 70 75 74 20 | 66 69 6c 65 20 77 69 74 | output |file wit|
|00006330| 68 20 71 75 65 72 79 2a | 29 0d 20 20 20 20 20 28 |h query*|). (|
|00006340| 2a 20 64 6f 65 73 6e 74 | 20 74 72 79 20 64 69 66 |* doesnt| try dif|
|00006350| 66 65 72 65 6e 74 20 6c | 69 62 72 61 72 69 65 73 |ferent l|ibraries|
|00006360| 20 74 6f 20 63 72 65 61 | 74 65 20 74 68 65 20 66 | to crea|te the f|
|00006370| 69 6c 65 20 2a 29 0d 20 | 20 20 20 20 28 2a 20 74 |ile *). | (* t|
|00006380| 68 65 20 65 78 74 65 6e | 73 69 6f 6e 20 69 73 20 |he exten|sion is |
|00006390| 61 6c 77 61 79 73 20 63 | 68 61 6e 67 65 64 20 74 |always c|hanged t|
|000063a0| 6f 20 6e 65 77 65 78 74 | 20 69 66 20 64 65 66 61 |o newext| if defa|
|000063b0| 75 6c 74 20 69 73 20 54 | 52 55 45 20 2a 29 0d 0d |ult is T|RUE *)..|
|000063c0| 50 52 4f 43 45 44 55 52 | 45 20 53 65 74 4c 69 62 |PROCEDUR|E SetLib|
|000063d0| 72 61 72 69 65 73 20 28 | 56 41 52 20 64 65 66 61 |raries (|VAR defa|
|000063e0| 75 6c 74 6c 69 62 73 74 | 72 69 6e 67 3a 20 41 52 |ultlibst|ring: AR|
|000063f0| 52 41 59 20 4f 46 20 43 | 48 41 52 3b 0d 20 20 20 |RAY OF C|HAR;. |
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.