Small-C 2.1 (UK) (128K) (Face 2B) (1985) [Original] [UTILITAIRE].dsk
   
Choose sector :
Size : 512 (Real : 512)
000000: 60 69 E5 11 00 A8 01 33 00 ED B0 E1 11 00 A7 01 `i.....3........
000010: 33 00 ED B0 21 00 A0 22 04 A7 21 35 01 11 00 10 3...!.."..!5....
000020: 01 47 00 ED B0 0E 00 CD 1B A8 F3 D9 CB C9 CB 81 .G..............
000030: D9 FB C3 00 10 01 00 A0 11 14 00 3E 1C CD 1C 10 ...........>....
000040: 01 00 01 11 08 00 3E 0C CD 1C 10 01 00 A7 C3 00 ......>.........
000050: 01 32 3C 10 D5 C5 01 00 00 CD 1E A8 C1 CD 24 A8 .2<...........$.
000060: 21 80 00 09 E3 44 4D CD 21 A8 C5 CD 27 A8 E1 23 !....DM.!...'..#
000070: 3E 0C BD 28 05 E3 44 4D 18 E3 C1 C9 60 69 11 00 >..(..DM....`i..
000080: 05 01 33 00 ED B0 0E 42 11 00 00 21 00 03 CD 89 ..3....B...!....
000090: BE 30 06 CD 50 01 C3 03 05 CD 59 02 0D 0A 46 61 .0..P.....Y...Fa
0000A0: 69 6C 65 64 20 74 6F 20 6C 6F 61 64 20 74 68 65 iled to load the
0000B0: 20 63 6F 6E 66 69 67 75 72 61 74 69 6F 6E 20 73 configuration s
0000C0: 65 63 74 6F 72 0D 0A 0A 24 C3 03 05 CD 59 02 04 ector...$....Y..
0000D0: 02 24 2A 00 03 11 CB ED 19 7C B5 28 26 CD 59 02 .$*......|.(&.Y.
0000E0: 0D 0A 49 6C 6C 65 67 61 6C 20 63 6F 6E 66 69 67 ..Illegal config
0000F0: 75 72 61 74 69 6F 6E 20 73 65 63 74 6F 72 0D 0A uration sector..
000100: 0A 24 C9 2A 02 03 22 3D 02 2A 04 03 22 3F 02 3A .$.*.."=.*.."?.:
000110: 06 03 32 43 02 21 3D 02 CD 83 BE 3A 07 03 32 03 ..2C.!=....:..2.
000120: 00 3A 08 03 CD 80 BE 3A 09 03 CD 9E BE 21 0A 03 .:.....:.....!..
000130: CD A1 BE 21 64 03 CD 5F 02 7E 23 B7 28 0C 47 4E ...!d.._.~#.(.GN
000140: 23 E5 C5 CD 0F 05 C1 E1 10 F5 EB 21 27 BB CD 46 #..........!'..F
000150: 02 21 2D BB CD 46 02 21 33 BB CD 46 02 EB 7E 23 .!-..F.!3..F..~#
000160: B7 28 50 57 46 23 4E 23 E5 D5 C5 CD 0F BB C1 D1 .(PWF#N#........
000170: E1 38 3A CD 59 02 0D 0A 45 78 70 61 6E 73 69 6F .8:.Y...Expansio
000180: 6E 20 62 75 66 66 65 72 20 66 75 6C 6C 20 6F 72 n buffer full or
000190: 20 69 6C 6C 65 67 61 6C 20 74 6F 6B 65 6E 20 73 illegal token s
0001A0: 70 65 63 69 66 69 65 64 0D 0A 0A 24 C9 06 00 09 pecified...$....
0001B0: 15 20 B1 3A 16 03 C3 A4 BE 00 00 00 00 AF 1E 00 . .:............
0001C0: 01 03 1A 4F 13 B7 C8 1A 47 13 1A 13 E5 CD 6C 02 ...O....G.....l.
0001D0: E1 0D 20 F3 C9 E3 CD 5F 02 E3 C9 7E 23 FE 24 C8 .. ...._...~#.$.
0001E0: 4F E5 CD 0C 05 E1 18 F3 E9 CF CF CF CF CF CF CF O...............
0001F0: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
Size : 512 (Real : 512)
000000: 31 00 A0 0E 00 CD 1B A8 11 0A 00 19 5E 23 56 EB 1...........^#V.
000010: 11 F1 A1 01 0E 00 ED B0 21 00 00 ED 5B F1 A1 ED ........!...[...
000020: 4B FE A1 03 0B 78 B1 28 03 19 18 F8 22 EF A1 CD K....x.(...."...
000030: 70 A1 79 32 ED A1 01 80 00 CD 24 A8 11 80 00 ED p.y2......$.....
000040: 53 E5 A1 ED 4B FE A1 ED 43 E7 A1 CD 1E A8 0E 00 S...K...C.......
000050: C5 CD 21 A8 CD 27 A8 C1 CD 4B A1 38 3A 2A E5 A1 ..!..'...K.8:*..
000060: 11 04 00 B7 ED 52 22 E5 A1 28 10 38 0E 0C 3A F1 .....R"..(.8..:.
000070: A1 B9 20 DC ED 4B E7 A1 03 18 CC 21 93 A1 CD 87 .. ..K.....!....
000080: A1 CD 09 A8 CD 9B BE 9E BE 21 D4 A1 CD D4 BC 18 .........!......
000090: EA AF B8 20 0E 18 26 11 10 00 19 11 01 A2 D5 06 ... ..&.........
0000A0: 10 0E 00 3A F7 A1 16 00 5E 05 23 B7 28 03 56 05 ...:....^.#.(.V.
0000B0: 23 0C E3 73 23 72 23 E3 7A B3 20 D5 0D D1 79 B7 #..s#r#.z. ...y.
0000C0: CA 7B A0 32 00 A2 21 01 A2 E5 01 80 00 ED 43 EB .{.2..!.......C.
0000D0: A1 E1 5E 23 56 23 E5 CD E4 A0 21 00 A2 35 20 F1 ..^#V#....!..5 .
0000E0: E1 C3 00 01 EB 3A F3 A1 29 3D 20 FC ED 5B EF A1 .....:..)= ..[..
0000F0: 19 ED 5B F1 A1 AF ED 52 3C 28 04 30 F9 19 3D 2B ..[....R<(.0..=+
000100: 22 E9 A1 6F 26 00 22 E7 A1 4D 44 CD 1E A8 3A F4 "..o&."..MD...:.
000110: A1 3C 47 C5 3A F1 A1 47 3A E9 A1 3C B8 20 0D ED .<G.:..G:..<. ..
000120: 4B E7 A1 03 ED 43 E7 A1 CD 1E A8 AF 32 E9 A1 4F K....C......2..O
000130: 06 00 CD 21 A8 2A EB A1 11 80 00 19 22 EB A1 E5 ...!.*......"...
000140: C1 CD 24 A8 CD 27 A8 C1 10 C9 C9 C5 06 04 21 80 ..$..'........!.
000150: 00 E5 11 D9 A1 C5 06 0C 1A BE 20 09 23 13 10 F8 .......... .#...
000160: C1 E1 C1 37 C9 C1 E1 11 20 00 19 10 E4 C1 B7 C9 ...7.... .......
000170: 3A FA A1 CD 7B A1 3A FB A1 18 02 0E 00 06 08 CB :...{.:.........
000180: 17 30 01 0C 10 F9 C9 7E B7 C8 23 E5 4F CD 0C A8 .0.....~..#.O...
000190: E1 18 F4 24 4F 53 43 2E 53 59 53 20 77 75 72 64 ...$OSC.SYS wurd
0001A0: 65 20 6E 69 63 68 74 20 67 65 66 75 6E 64 65 6E e nicht gefunden
0001B0: 2E 0D 0A 42 41 53 49 43 3D 69 72 67 65 6E 64 65 ...BASIC=irgende
0001C0: 69 6E 65 20 54 61 73 74 65 20 64 72 75 65 63 6B ine Taste drueck
0001D0: 65 6E 20 00 42 41 53 49 C3 00 24 4F 53 43 20 20 en .BASI..$OSC
0001E0: 20 20 53 59 53 00 00 00 00 00 00 00 00 00 00 00 SYS...........
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 35 12 32 00 FA 00 0C 81 00 00 44 6A E1 44 6A E1 5.2.......Dj.Dj.
000010: 0D 00 0D 00 0D 00 00 00 00 00 00 00 00 00 00 00 ................
000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000060: 00 00 00 00 24 00 00 00 00 00 00 40 1D 77 77 43 ....$......@.wwC
000070: 50 2F 4D 20 32 2E 32 20 2D 20 41 6D 73 74 72 61 P/M 2.2 - Amstra
000080: 64 20 43 6F 6E 73 75 6D 65 72 20 45 6C 65 63 74 d Consumer Elect
000090: 72 6F 6E 69 63 73 20 70 6C 63 0A 0D 24 00 00 00 ronics plc..$...
0000A0: 00 00 00 00 08 08 09 01 0A 02 07 1B 42 7F 10 08 ............B...
0000B0: 4F 0B 00 08 08 09 01 0A 02 07 1B 42 7F 10 08 4F O..........B...O
0000C0: 0B 00 08 08 09 01 0A 02 00 00 31 31 31 31 31 31 ..........111111
0000D0: 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 1111111111111111
0000E0: 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 1111111111111111
0000F0: 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 1111111111111111
000100: 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 1111111111111111
000110: 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 1111111111111111
000120: 31 31 31 31 31 31 31 31 31 31 01 66 32 32 32 32 1111111111.f2222
000130: 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 2222222222222222
000140: 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 2222222222222222
000150: 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 2222222222222222
000160: 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 2222222222222222
000170: 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 2222222222222222
000180: 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 2222222222222222
000190: 32 32 03 1C 33 33 33 33 33 33 33 33 33 33 33 33 22..333333333333
0001A0: 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 3333333333333333
0001B0: 34 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4...............
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 E5 E5 ................
Size : 512 (Real : 512)
000000: A3 1E FE 0F C2 8A 06 CD CF 15 01 06 1E CD 20 12 .............. .
000010: 3A A9 1E D6 01 C6 FF 9F F5 3A A8 1E D6 3D C6 FF :........:...=..
000020: 9F C1 48 B1 1F D2 AE 06 01 9D 04 CD AF 09 21 A7 ..H...........!.
000030: 1F 36 01 3A A7 1F 1F D2 BE 07 3A C0 1E 32 C1 1E .6.:......:..2..
000040: 01 06 1E CD 20 12 21 04 1E 36 00 3A A9 1E D6 02 .... .!..6.:....
000050: D6 01 9F F5 3A F5 1D 2F C1 48 A1 1F D2 ED 06 CD ....:../.H......
000060: 88 1C CD BE 18 21 A8 1E 36 FF C3 13 07 3A A9 1E .....!..6....:..
000070: D6 03 C6 FF 9F F5 3E 0A 21 A8 1E 96 9F 2F F5 3E ......>.!..../.>
000080: 05 96 9F C1 48 A1 C1 48 B1 1F D2 13 07 01 B0 04 ....H..H........
000090: CD AF 09 3A 04 1E 21 5E 1F B6 77 3A A8 1E 3C 32 ...:..!^..w:..<2
0000A0: A4 1E 3A A8 1E FE 13 C2 30 07 CD CF 15 C3 7D 07 ..:.....0.....}.
0000B0: 3A A8 1E FE 14 C2 40 07 0E 1A CD 45 0E C3 7D 07 :.....@....E..}.
0000C0: 3A A8 1E D6 05 9F 21 05 1E A6 1F D2 53 07 21 57 :.....!.....S.!W
0000D0: 1F 36 01 3A A3 1E FE 0A C2 7A 07 21 5D 1F 36 01 .6.:.....z.!].6.
0000E0: 3A 63 1F FE 00 C2 6D 07 21 63 1F 36 08 3A 5F 1F :c....m.!c.6.:_.
0000F0: FE 00 C2 7A 07 21 5F 1F 36 01 CD 6C 1A CD 12 19 ...z.!_.6..l....
000100: 01 06 1E CD 20 12 3A A9 1E D6 01 C6 FF 9F F5 3A .... .:........:
000110: A8 1E D6 2C C6 FF 9F F5 3A A8 1E D6 0D C6 FF 9F ...,....:.......
000120: C1 48 A1 C1 48 B1 1F D2 B0 07 01 BC 04 CD AF 09 .H..H...........
000130: 3A A8 1E D6 0D C6 FF 9F 32 A7 1F C3 B3 06 3A A3 :.......2.....:.
000140: 1E FE 0F C2 CE 07 0E 1A CD 45 0E CD CF 15 3A A3 .........E....:.
000150: 1E FE 00 C2 DB 07 0E 00 CD 31 19 3A A5 1E 32 CC .........1.:..2.
000160: 1E C3 14 05 FB 76 21 F2 1D 71 21 F2 07 E5 2A 38 .....v!..q!...*8
000170: 02 E9 C9 21 FB 07 E5 2A 36 02 E9 3A 09 01 C9 3E ...!...*6..:...>
000180: FA CD A6 1D 3E FA CD A6 1D C9 11 00 00 0E 03 CD ....>...........
000190: 05 00 C9 11 00 00 0E 01 CD 05 00 C9 21 AB 1E 71 ............!..q
0001A0: 3A AB 1E E6 7F 5F 16 00 0E 02 CD 05 00 C9 0E 0D :...._..........
0001B0: CD 1C 08 0E 0A CD 1C 08 C9 21 AD 1E 70 2B 71 CD .........!..p+q.
0001C0: 2E 08 2A AC 1E EB 0E 09 CD 05 00 C9 11 00 00 0E ..*.............
0001D0: 0C CD 05 00 C9 11 00 00 0E 0D CD 05 00 C9 21 AF ..............!.
0001E0: 1E 71 2A AF 1E 26 00 EB 0E 0E CD 05 00 C9 21 B1 .q*..&........!.
0001F0: 1E 70 2B 71 2A B0 1E EB 0E 0F CD 05 00 32 AE 1E .p+q*........2..
Size : 512 (Real : 512)
000000: 60 69 11 00 05 01 33 00 ED B0 0E 42 11 00 00 21 `i....3....B...!
000010: 00 03 CD 89 BE 30 06 CD 50 01 C3 03 05 CD 59 02 .....0..P.....Y.
000020: 0D 0A 46 61 69 6C 65 64 20 74 6F 20 6C 6F 61 64 ..Failed to load
000030: 20 74 68 65 20 63 6F 6E 66 69 67 75 72 61 74 69 the configurati
000040: 6F 6E 20 73 65 63 74 6F 72 0D 0A 0A 24 C3 03 05 on sector...$...
000050: CD 59 02 04 02 24 2A 00 03 11 CB ED 19 7C B5 28 .Y...$*......|.(
000060: 26 CD 59 02 0D 0A 49 6C 6C 65 67 61 6C 20 63 6F &.Y...Illegal co
000070: 6E 66 69 67 75 72 61 74 69 6F 6E 20 73 65 63 74 nfiguration sect
000080: 6F 72 0D 0A 0A 24 C9 2A 02 03 22 3D 02 2A 04 03 or...$.*.."=.*..
000090: 22 3F 02 3A 06 03 32 43 02 21 3D 02 CD 83 BE 3A "?.:..2C.!=....:
0000A0: 07 03 32 03 00 3A 08 03 CD 80 BE 3A 09 03 CD 9E ..2..:.....:....
0000B0: BE 21 0A 03 CD A1 BE 21 64 03 CD 5F 02 7E 23 B7 .!.....!d.._.~#.
0000C0: 28 0C 47 4E 23 E5 C5 CD 0F 05 C1 E1 10 F5 EB 21 (.GN#..........!
0000D0: 27 BB CD 46 02 21 2D BB CD 46 02 21 33 BB CD 46 '..F.!-..F.!3..F
0000E0: 02 EB 7E 23 B7 28 50 57 46 23 4E 23 E5 D5 C5 CD ..~#.(PWF#N#....
0000F0: 0F BB C1 D1 E1 38 3A CD 59 02 0D 0A 45 78 70 61 .....8:.Y...Expa
000100: 6E 73 69 6F 6E 20 62 75 66 66 65 72 20 66 75 6C nsion buffer ful
000110: 6C 20 6F 72 20 69 6C 6C 65 67 61 6C 20 74 6F 6B l or illegal tok
000120: 65 6E 20 73 70 65 63 69 66 69 65 64 0D 0A 0A 24 en specified...$
000130: C9 06 00 09 15 20 B1 3A 16 03 C3 A4 BE 00 00 00 ..... .:........
000140: 00 AF 1E 00 01 03 1A 4F 13 B7 C8 1A 47 13 1A 13 .......O....G...
000150: E5 CD 6C 02 E1 0D 20 F3 C9 E3 CD 5F 02 E3 C9 7E ..l... ...._...~
000160: 23 FE 24 C8 4F E5 CD 0C 05 E1 18 F3 E9 CF CF CF #.$.O...........
000170: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
000180: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
000190: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
0001A0: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
0001B0: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
0001C0: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
0001D0: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
0001E0: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
0001F0: CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF CF ................
Size : 512 (Real : 512)
000000: C3 5C E1 C3 58 E1 7F 00 20 20 20 20 20 20 20 20 .\..X...
000010: 20 20 20 20 20 20 20 20 43 4F 50 59 52 49 47 48 COPYRIGH
000020: 54 20 28 43 29 20 31 39 37 39 2C 20 44 49 47 49 T (C) 1979, DIGI
000030: 54 41 4C 20 52 45 53 45 41 52 43 48 20 20 00 00 TAL RESEARCH ..
000040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000080: 00 00 00 00 00 00 00 00 08 DE 00 00 5F 0E 02 C3 ............_...
000090: 05 00 C5 CD 8C DE C1 C9 3E 0D CD 92 DE 3E 0A C3 ........>....>..
0000A0: 92 DE 3E 20 C3 92 DE C5 CD 98 DE E1 7E B7 C8 23 ..> ........~..#
0000B0: E5 CD 8C DE E1 C3 AC DE 0E 0D C3 05 00 5F 0E 0E ............._..
0000C0: C3 05 00 CD 05 00 32 EE E5 3C C9 0E 0F C3 C3 DE ......2..<......
0000D0: AF 32 ED E5 11 CD E5 C3 CB DE 0E 10 C3 C3 DE 0E .2..............
0000E0: 11 C3 C3 DE 0E 12 C3 C3 DE 11 CD E5 C3 DF DE 0E ................
0000F0: 13 C3 05 00 CD 05 00 B7 C9 0E 14 C3 F4 DE 11 CD ................
000100: E5 C3 F9 DE 0E 15 C3 F4 DE 0E 16 C3 C3 DE 0E 17 ................
000110: C3 05 00 1E FF 0E 20 C3 05 00 CD 13 DF 87 87 87 ...... .........
000120: 87 21 EF E5 B6 32 04 00 C9 3A EF E5 32 04 00 C9 .!...2...:..2...
000130: FE 61 D8 FE 7B D0 E6 5F C9 3A AB E5 B7 CA 96 DF .a..{.._.:......
000140: 3A EF E5 B7 3E 00 C4 BD DE 11 AC E5 CD CB DE CA :...>...........
000150: 96 DF 3A BB E5 3D 32 CC E5 11 AC E5 CD F9 DE C2 ..:..=2.........
000160: 96 DF 11 07 DE 21 80 00 06 80 CD 42 E2 21 BA E5 .....!.....B.!..
000170: 36 00 23 35 11 AC E5 CD DA DE CA 96 DF 3A EF E5 6.#5.........:..
000180: B7 C4 BD DE 21 08 DE CD AC DE CD C2 DF CA A7 DF ....!...........
000190: CD DD DF C3 82 E1 CD DD DF CD 1A DF 0E 0A 11 06 ................
0001A0: DE CD 05 00 CD 29 DF 21 07 DE 46 23 78 B7 CA BA .....).!..F#x...
0001B0: DF 7E CD 30 DF 77 05 C3 AB DF 77 21 08 DE 22 88 .~.0.w....w!..".
0001C0: DE C9 0E 0B CD 05 00 B7 C8 0E 01 CD 05 00 B7 C9 ................
0001D0: 0E 19 C3 05 00 11 80 00 0E 1A C3 05 00 21 AB E5 .............!..
0001E0: 7E B7 C8 36 00 AF CD BD DE 11 AC E5 CD EF DE 3A ~..6...........:
0001F0: EF E5 C3 BD DE 11 28 E1 21 00 E6 06 06 1A BE C2 ......(.!.......
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: CF E1 13 23 05 C2 FD DF C9 CD 98 DE 2A 8A DE 7E ...#........*..~
000010: FE 20 CA 22 E0 B7 CA 22 E0 E5 CD 8C DE E1 23 C3 . ."..."......#.
000020: 0F E0 3E 3F CD 8C DE CD 98 DE CD DD DF C3 82 E1 ..>?............
000030: 1A B7 C8 FE 20 DA 09 E0 C8 FE 3D C8 FE 5F C8 FE .... .....=.._..
000040: 2E C8 FE 3A C8 FE 3B C8 FE 3C C8 FE 3E C8 C9 1A ...:..;..<..>...
000050: B7 C8 FE 20 C0 13 C3 4F E0 85 6F D0 24 C9 3E 00 ... ...O..o.$.>.
000060: 21 CD E5 CD 59 E0 E5 E5 AF 32 F0 E5 2A 88 DE EB !...Y....2..*...
000070: CD 4F E0 EB 22 8A DE EB E1 1A B7 CA 89 E0 DE 40 .O.."..........@
000080: 47 13 1A FE 3A CA 90 E0 1B 3A EF E5 77 C3 96 E0 G...:....:..w...
000090: 78 32 F0 E5 70 13 06 08 CD 30 E0 CA B9 E0 23 FE x2..p....0....#.
0000A0: 2A C2 A9 E0 36 3F C3 AB E0 77 13 05 C2 98 E0 CD *...6?...w......
0000B0: 30 E0 CA C0 E0 13 C3 AF E0 23 36 20 05 C2 B9 E0 0........#6 ....
0000C0: 06 03 FE 2E C2 E9 E0 13 CD 30 E0 CA E9 E0 23 FE .........0....#.
0000D0: 2A C2 D9 E0 36 3F C3 DB E0 77 13 05 C2 C8 E0 CD *...6?...w......
0000E0: 30 E0 CA F0 E0 13 C3 DF E0 23 36 20 05 C2 E9 E0 0........#6 ....
0000F0: 06 03 23 36 00 05 C2 F2 E0 EB 22 88 DE E1 01 0B ..#6......".....
000100: 00 23 7E FE 3F C2 09 E1 04 0D C2 01 E1 78 B7 C9 .#~.?........x..
000110: 44 49 52 20 45 52 41 20 54 59 50 45 53 41 56 45 DIR ERA TYPESAVE
000120: 52 45 4E 20 55 53 45 52 D0 16 04 00 00 00 21 10 REN USER......!.
000130: E1 0E 00 79 FE 06 D0 11 CE E5 06 04 1A BE C2 4F ...y...........O
000140: E1 13 23 05 C2 3C E1 1A FE 20 C2 54 E1 79 C9 23 ..#..<... .T.y.#
000150: 05 C2 4F E1 0C C3 33 E1 AF 32 07 DE 31 AB E5 C5 ..O...3..2..1...
000160: 79 1F 1F 1F 1F E6 0F 5F CD 15 DF CD B8 DE 32 AB y......_......2.
000170: E5 C1 79 E6 0F 32 EF E5 CD BD DE 3A 07 DE B7 C2 ..y..2.....:....
000180: 98 E1 31 AB E5 CD 98 DE CD D0 DF C6 41 CD 8C DE ..1.........A...
000190: 3E 3E CD 8C DE CD 39 DF 11 80 00 CD D8 DF CD D0 >>....9.........
0001A0: DF 32 EF E5 CD 5E E0 C4 09 E0 3A F0 E5 B7 C2 A5 .2...^....:.....
0001B0: E4 CD 2E E1 21 C1 E1 5F 16 00 19 19 7E 23 66 6F ....!.._....~#fo
0001C0: E9 77 E2 1F E3 5D E3 AD E3 10 E4 8E E4 A5 E4 21 .w...].........!
0001D0: F3 76 22 00 DE 21 00 DE E9 01 DF E1 C3 A7 DE 52 .v"..!.........R
0001E0: 45 41 44 20 45 52 52 4F 52 00 01 F0 E1 C3 A7 DE EAD ERROR.......
0001F0: 4E 4F 20 46 49 4C 45 00 CD 5E E0 3A F0 E5 B7 C2 NO FILE..^.:....
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 09 E0 21 CE E5 01 0B 00 7E FE 20 CA 33 E2 23 D6 ..!.....~. .3.#.
000010: 30 FE 0A D2 09 E0 57 78 E6 E0 C2 09 E0 78 07 07 0.....Wx.....x..
000020: 07 80 DA 09 E0 80 DA 09 E0 82 DA 09 E0 47 0D C2 .............G..
000030: 08 E2 C9 7E FE 20 C2 09 E0 23 0D C2 33 E2 78 C9 ...~. ...#..3.x.
000040: 06 03 7E 12 23 13 05 C2 42 E2 C9 21 80 00 81 CD ..~.#...B..!....
000050: 59 E0 7E C9 AF 32 CD E5 3A F0 E5 B7 C8 3D 21 EF Y.~..2..:....=!.
000060: E5 BE C8 C3 BD DE 3A F0 E5 B7 C8 3D 21 EF E5 BE ......:....=!...
000070: C8 3A EF E5 C3 BD DE CD 5E E0 CD 54 E2 21 CE E5 .:......^..T.!..
000080: 7E FE 20 C2 8F E2 06 0B 36 3F 23 05 C2 88 E2 1E ~. .....6?#.....
000090: 00 D5 CD E9 DE CC EA E1 CA 1B E3 3A EE E5 0F 0F ...........:....
0000A0: 0F E6 60 4F 3E 0A CD 4B E2 17 DA 0F E3 D1 7B 1C ..`O>..K......{.
0000B0: D5 E6 03 F5 C2 CC E2 CD 98 DE C5 CD D0 DF C1 C6 ................
0000C0: 41 CD 92 DE 3E 3A CD 92 DE C3 D4 E2 CD A2 DE 3E A...>:.........>
0000D0: 3A CD 92 DE CD A2 DE 06 01 78 CD 4B E2 E6 7F FE :........x.K....
0000E0: 20 C2 F9 E2 F1 F5 FE 03 C2 F7 E2 3E 09 CD 4B E2 ..........>..K.
0000F0: E6 7F FE 20 CA 0E E3 3E 20 CD 92 DE 04 78 FE 0C ... ...> ....x..
000100: D2 0E E3 FE 09 C2 D9 E2 CD A2 DE C3 D9 E2 F1 CD ................
000110: C2 DF C2 1B E3 CD E4 DE C3 98 E2 D1 C3 86 E5 CD ................
000120: 5E E0 FE 0B C2 42 E3 01 52 E3 CD A7 DE CD 39 DF ^....B..R.....9.
000130: 21 07 DE 35 C2 82 E1 23 7E FE 59 C2 82 E1 23 22 !..5...#~.Y...#"
000140: 88 DE CD 54 E2 11 CD E5 CD EF DE 3C CC EA E1 C3 ...T.......<....
000150: 86 E5 41 4C 4C 20 28 59 2F 4E 29 3F 00 CD 5E E0 ..ALL (Y/N)?..^.
000160: C2 09 E0 CD 54 E2 CD D0 DE CA A7 E3 CD 98 DE 21 ....T..........!
000170: F1 E5 36 FF 21 F1 E5 7E FE 80 DA 87 E3 E5 CD FE ..6.!..~........
000180: DE E1 C2 A0 E3 AF 77 34 21 80 00 CD 59 E0 7E FE ......w4!...Y.~.
000190: 1A CA 86 E5 CD 8C DE CD C2 DF C2 86 E5 C3 74 E3 ..............t.
0001A0: 3D CA 86 E5 CD D9 E1 CD 66 E2 C3 09 E0 CD F8 E1 =.......f.......
0001B0: F5 CD 5E E0 C2 09 E0 CD 54 E2 11 CD E5 D5 CD EF ..^.....T.......
0001C0: DE D1 CD 09 DF CA FB E3 AF 32 ED E5 F1 6F 26 00 .........2...o&.
0001D0: 29 11 00 01 7C B5 CA F1 E3 2B E5 21 80 00 19 E5 )...|....+.!....
0001E0: CD D8 DF 11 CD E5 CD 04 DF D1 E1 C2 FB E3 C3 D4 ................
0001F0: E3 11 CD E5 CD DA DE 3C C2 01 E4 01 07 E4 CD A7 .......<........
Size : 512 (Real : 512)
000000: FF 22 EA F3 C9 2A C8 F3 EB 2A EA F3 23 22 EA F3 ."...*...*..#"..
000010: CD 95 EB D2 19 EC C3 FE EB 3A EA F3 E6 03 06 05 .........:......
000020: 87 05 C2 20 EC 32 E9 F3 B7 C0 C5 CD C3 E9 CD D4 ... .2..........
000030: EB C1 C3 9E EB 79 E6 07 3C 5F 57 79 0F 0F 0F E6 .....y..<_Wy....
000040: 1F 4F 78 87 87 87 87 87 B1 4F 78 0F 0F 0F E6 1F .Ox......Ox.....
000050: 47 2A BF F3 09 7E 07 1D C2 56 EC C9 D5 CD 35 EC G*...~...V....5.
000060: E6 FE C1 B1 0F 15 C2 64 EC 77 C9 CD 5E EB 11 10 .......d.w..^...
000070: 00 19 C5 0E 11 D1 0D C8 D5 3A DD F3 B7 CA 88 EC .........:......
000080: C5 E5 4E 06 00 C3 8E EC 0D C5 4E 23 46 E5 79 B0 ..N.......N#F.y.
000090: CA 9D EC 2A C6 F3 7D 91 7C 98 D4 5C EC E1 23 C1 ...*..}.|..\..#.
0000A0: C3 75 EC 2A C6 F3 0E 03 CD EA EA 23 44 4D 2A BF .u.*.......#DM*.
0000B0: F3 36 00 23 0B 78 B1 C2 B1 EC 2A CA F3 EB 2A BF .6.#.x....*...*.
0000C0: F3 73 23 72 CD A1 E9 2A B3 F3 36 03 23 36 00 CD .s#r...*..6.#6..
0000D0: FE EB 0E FF CD 05 EC CD F5 EB C8 CD 5E EB 3E E5 ............^.>.
0000E0: BE CA D2 EC 3A 41 E9 BE C2 F6 EC 23 7E D6 24 C2 ....:A.....#~.$.
0000F0: F6 EC 3D 32 45 E9 0E 01 CD 6B EC CD 8C EB C3 D2 ..=2E....k......
000100: EC 3A D4 F3 C3 01 E9 C5 F5 3A C5 F3 2F 47 79 A0 .:.......:../Gy.
000110: 4F F1 A0 91 E6 1F C1 C9 3E FF 32 D4 F3 21 D8 F3 O.......>.2..!..
000120: 71 2A 43 E9 22 D9 F3 CD FE EB CD A1 E9 0E 00 CD q*C."...........
000130: 05 EC CD F5 EB CA 94 ED 2A D9 F3 EB 1A FE E5 CA ........*.......
000140: 4A ED D5 CD 7F EB D1 D2 94 ED CD 5E EB 3A D8 F3 J..........^.:..
000150: 4F 06 00 79 B7 CA 83 ED 1A FE 3F CA 7C ED 78 FE O..y......?.|.x.
000160: 0D CA 7C ED FE 0C 1A CA 73 ED 96 E6 7F C2 2D ED ..|.....s.....-.
000170: C3 7C ED C5 4E CD 07 ED C1 C2 2D ED 13 23 04 0D .|..N.....-..#..
000180: C3 53 ED 3A EA F3 E6 03 32 45 E9 21 D4 F3 7E 17 .S.:....2E.!..~.
000190: D0 AF 77 C9 CD FE EB 3E FF C3 01 E9 CD 54 EB 0E ..w....>.....T..
0001A0: 0C CD 18 ED CD F5 EB C8 CD 44 EB CD 5E EB 36 E5 .........D..^.6.
0001B0: 0E 00 CD 6B EC CD C6 EB CD 2D ED C3 A4 ED 50 59 ...k.....-....PY
0001C0: 79 B0 CA D1 ED 0B D5 C5 CD 35 EC 1F D2 EC ED C1 y........5......
0001D0: D1 2A C6 F3 7B 95 7A 9C D2 F4 ED 13 C5 D5 42 4B .*..{.z.......BK
0001E0: CD 35 EC 1F D2 EC ED D1 C1 C3 C0 ED 17 3C CD 64 .5...........<.d
0001F0: EC E1 D1 C9 79 B0 C2 C0 ED 21 00 00 C9 0E 00 1E ....y....!......
Size : 512 (Real : 512)
000000: DE CD D5 DF C3 86 E5 4E 4F 20 53 50 41 43 45 00 .......NO SPACE.
000010: CD 5E E0 C2 09 E0 3A F0 E5 F5 CD 54 E2 CD E9 DE .^....:....T....
000020: C2 79 E4 21 CD E5 11 DD E5 06 10 CD 42 E2 2A 88 .y.!........B.*.
000030: DE EB CD 4F E0 FE 3D CA 3F E4 FE 5F C2 73 E4 EB ...O..=.?.._.s..
000040: 23 22 88 DE CD 5E E0 C2 73 E4 F1 47 21 F0 E5 7E #"...^..s..G!..~
000050: B7 CA 59 E4 B8 70 C2 73 E4 70 AF 32 CD E5 CD E9 ..Y..p.s.p.2....
000060: DE CA 6D E4 11 CD E5 CD 0E DF C3 86 E5 CD EA E1 ..m.............
000070: C3 86 E5 CD 66 E2 C3 09 E0 01 82 E4 CD A7 DE C3 ....f...........
000080: 86 E5 46 49 4C 45 20 45 58 49 53 54 53 00 CD F8 ..FILE EXISTS...
000090: E1 FE 10 D2 09 E0 5F 3A CE E5 FE 20 CA 09 E0 CD ......_:... ....
0000A0: 15 DF C3 89 E5 CD F5 DF 3A CE E5 FE 20 C2 C4 E4 ........:... ...
0000B0: 3A F0 E5 B7 CA 89 E5 3D 32 EF E5 CD 29 DF CD BD :......=2...)...
0000C0: DE C3 89 E5 11 D6 E5 1A FE 20 C2 09 E0 D5 CD 54 ......... .....T
0000D0: E2 D1 21 83 E5 CD 40 E2 CD D0 DE CA 6B E5 21 00 ..!...@.....k.!.
0000E0: 01 E5 EB CD D8 DF 11 CD E5 CD F9 DE C2 01 E5 E1 ................
0000F0: 11 80 00 19 11 00 DE 7D 93 7C 9A D2 71 E5 C3 E1 .......}.|..q...
000100: E4 E1 3D C2 71 E5 CD 66 E2 CD 5E E0 21 F0 E5 E5 ..=.q..f..^.!...
000110: 7E 32 CD E5 3E 10 CD 60 E0 E1 7E 32 DD E5 AF 32 ~2..>..`..~2...2
000120: ED E5 11 5C 00 21 CD E5 06 21 CD 42 E2 21 08 DE ...\.!...!.B.!..
000130: 7E B7 CA 3E E5 FE 20 CA 3E E5 23 C3 30 E5 06 00 ~..>.. .>.#.0...
000140: 11 81 00 7E 12 B7 CA 4F E5 04 23 13 C3 43 E5 78 ...~...O..#..C.x
000150: 32 80 00 CD 98 DE CD D5 DF CD 1A DF CD 00 01 31 2..............1
000160: AB E5 CD 29 DF CD BD DE C3 82 E1 CD 66 E2 C3 09 ...)........f...
000170: E0 01 7A E5 CD A7 DE C3 86 E5 42 41 44 20 4C 4F ..z.......BAD LO
000180: 41 44 00 43 4F 4D CD 66 E2 CD 5E E0 3A CE E5 D6 AD.COM.f..^.:...
000190: 20 21 F0 E5 B6 C2 09 E0 C3 82 E1 00 00 00 00 00 !..............
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 24 24 24 .............$$$
0001B0: 20 20 20 20 20 53 55 42 00 00 00 00 00 00 00 00 SUB........
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 20 D5 06 00 2A 43 E9 09 EB CD 5E EB C1 CD 4F E9 ...*C....^...O.
000010: CD C3 E9 C3 C6 EB CD 54 EB 0E 0C CD 18 ED 2A 43 .......T......*C
000020: E9 7E 11 10 00 19 77 CD F5 EB C8 CD 44 EB 0E 10 .~....w.....D...
000030: 1E 0C CD 01 EE CD 2D ED C3 27 EE 0E 0C CD 18 ED ......-..'......
000040: CD F5 EB C8 0E 00 1E 0C CD 01 EE CD 2D ED C3 40 ............-..@
000050: EE 0E 0F CD 18 ED CD F5 EB C8 CD A6 EA 7E F5 E5 .............~..
000060: CD 5E EB EB 2A 43 E9 0E 20 D5 CD 4F E9 CD 78 EB .^..*C.. ..O..x.
000070: D1 21 0C 00 19 4E 21 0F 00 19 46 E1 F1 77 79 BE .!...N!...F..wy.
000080: 78 CA 8B EE 3E 00 DA 8B EE 3E 80 2A 43 E9 11 0F x...>....>.*C...
000090: 00 19 77 C9 7E 23 B6 2B C0 1A 77 13 23 1A 77 1B ..w.~#.+..w.#.w.
0000A0: 2B C9 AF 32 45 E9 32 EA F3 32 EB F3 CD 1E EB C0 +..2E.2..2......
0000B0: CD 69 EB E6 80 C0 0E 0F CD 18 ED CD F5 EB C8 01 .i..............
0000C0: 10 00 CD 5E EB 09 EB 2A 43 E9 09 0E 10 3A DD F3 ...^...*C....:..
0000D0: B7 CA E8 EE 7E B7 1A C2 DB EE 77 B7 C2 E1 EE 7E ....~.....w....~
0000E0: 12 BE C2 1F EF C3 FD EE CD 94 EE EB CD 94 EE EB ................
0000F0: 1A BE C2 1F EF 13 23 1A BE C2 1F EF 0D 13 23 0D ......#.......#.
000100: C2 CD EE 01 EC FF 09 EB 09 1A BE DA 17 EF 77 01 ..............w.
000110: 03 00 09 EB 09 7E 12 3E FF 32 D2 F3 C3 10 EE 21 .....~.>.2.....!
000120: 45 E9 35 C9 CD 54 EB 2A 43 E9 E5 21 AC F3 22 43 E.5..T.*C..!.."C
000130: E9 0E 01 CD 18 ED CD F5 EB E1 22 43 E9 C8 EB 21 .........."C...!
000140: 0F 00 19 0E 11 AF 77 23 0D C2 46 EF 21 0D 00 19 ......w#..F.!...
000150: 77 CD 8C EB CD FD ED C3 78 EB AF 32 D2 F3 CD A2 w.......x..2....
000160: EE CD F5 EB C8 2A 43 E9 01 0C 00 09 7E 3C E6 1F .....*C.....~<..
000170: 77 CA 83 EF 47 3A C5 F3 A0 21 D2 F3 A6 CA 8E EF w...G:...!......
000180: C3 AC EF 01 02 00 09 34 7E E6 0F CA B6 EF 0E 0F .......4~.......
000190: CD 18 ED CD F5 EB C2 AC EF 3A D3 F3 3C CA B6 EF .........:..<...
0001A0: CD 24 EF CD F5 EB CA B6 EF C3 AF EF CD 5A EE CD .$...........Z..
0001B0: BB EA AF C3 01 E9 CD 05 E9 C3 78 EB 3E 01 32 D5 ..........x.>.2.
0001C0: F3 3E FF 32 D3 F3 CD BB EA 3A E3 F3 21 E1 F3 BE .>.2.....:..!...
0001D0: DA E6 EF FE 80 C2 FB EF CD 5A EF AF 32 E3 F3 3A .........Z..2..:
0001E0: 45 E9 B7 C2 FB EF CD 77 EA CD 84 EA CA FB EF CD E......w........
0001F0: 8A EA CD D1 E9 CD B2 E9 C3 D2 EA C3 05 E9 3E 01 ..............>.
Size : 512 (Real : 512)
000000: D0 16 04 00 00 00 C3 11 E6 99 E6 A5 E6 AB E6 B1 ................
000010: E6 EB 22 43 E9 EB 7B 32 D6 F3 21 00 00 22 45 E9 .."C..{2..!.."E.
000020: 39 22 0F E9 31 41 E9 AF 32 E0 F3 32 DE F3 21 74 9"..1A..2..2..!t
000030: F3 E5 79 FE 29 D0 4B 21 47 E6 5F 16 00 19 19 5E ..y.).K!G._....^
000040: 23 56 2A 43 E9 EB E9 03 F4 C8 E8 90 E7 CE E8 12 #V*C............
000050: F4 0F F4 D4 E8 ED E8 F3 E8 F8 E8 E1 E7 FE E8 7E ...............~
000060: F2 83 F2 45 F2 9C F2 A5 F2 AB F2 C8 F2 D7 F2 E0 ...E............
000070: F2 E6 F2 EC F2 F5 F2 FE F2 04 F3 0A F3 11 F3 2C ...............,
000080: EB 17 F3 1D F3 26 F3 2D F3 41 F3 47 F3 4D F3 0E .....&.-.A.G.M..
000090: F2 53 F3 04 E9 04 E9 9B F3 21 CA E6 CD E5 E6 FE .S.......!......
0000A0: 03 CA 00 00 C9 21 D5 E6 C3 B4 E6 21 E1 E6 C3 B4 .....!.....!....
0000B0: E6 21 DC E6 CD E5 E6 C3 00 00 42 64 6F 73 20 45 .!........Bdos E
0000C0: 72 72 20 4F 6E 20 20 3A 20 24 42 61 64 20 53 65 rr On : $Bad Se
0000D0: 63 74 6F 72 24 53 65 6C 65 63 74 24 46 69 6C 65 ctor$Select$File
0000E0: 20 52 2F 4F 24 E5 CD C9 E7 3A 42 E9 C6 41 32 C6 R/O$....:B..A2.
0000F0: E6 01 BA E6 CD D3 E7 C1 CD D3 E7 21 0E E9 7E 36 ...........!..~6
000100: 00 B7 C0 C3 09 F4 CD FB E6 CD 14 E7 D8 F5 4F CD ..............O.
000110: 90 E7 F1 C9 FE 0D C8 FE 0A C8 FE 09 C8 FE 08 C8 ................
000120: FE 20 C9 3A 0E E9 B7 C2 45 E7 CD 06 F4 E6 01 C8 . .:....E.......
000130: CD 09 F4 FE 13 C2 42 E7 CD 09 F4 FE 03 CA 00 00 ......B.........
000140: AF C9 32 0E E9 3E 01 C9 3A 0A E9 B7 C2 62 E7 C5 ..2..>..:....b..
000150: CD 2A E7 C1 C5 CD 0C F4 C1 C5 3A 0D E9 B7 C4 0F .*........:.....
000160: F4 C1 79 21 0C E9 FE 7F C8 34 FE 20 D0 35 7E B7 ..y!.....4. .5~.
000170: C8 79 FE 08 C2 79 E7 35 C9 FE 0A C0 36 00 C9 79 .y...y.5....6..y
000180: CD 14 E7 D2 90 E7 F5 0E 5E CD 48 E7 F1 F6 40 4F ........^.H...@O
000190: 79 FE 09 C2 48 E7 0E 20 CD 48 E7 3A 0C E9 E6 07 y...H.. .H.:....
0001A0: C2 96 E7 C9 CD AC E7 0E 20 CD 0C F4 0E 08 C3 0C ........ .......
0001B0: F4 0E 23 CD 48 E7 CD C9 E7 3A 0C E9 21 0B E9 BE ..#.H....:..!...
0001C0: D0 0E 20 CD 48 E7 C3 B9 E7 0E 0D CD 48 E7 0E 0A .. .H.......H...
0001D0: C3 48 E7 0A FE 24 C8 03 C5 4F CD 90 E7 C1 C3 D3 .H...$...O......
0001E0: E7 3A 0C E9 32 0B E9 2A 43 E9 4E 23 E5 06 00 C5 .:..2..*C.N#....
0001F0: E5 CD FB E6 E6 7F E1 C1 FE 0D CA C1 E8 FE 0A CA ................
Size : 512 (Real : 512)
000000: 32 D5 F3 3E 00 32 D3 F3 CD 54 EB 2A 43 E9 CD 47 2..>.2...T.*C..G
000010: EB CD BB EA 3A E3 F3 FE 80 D2 05 E9 CD 77 EA CD ....:........w..
000020: 84 EA 0E 00 C2 6E F0 CD 3E EA 32 D7 F3 01 00 00 .....n..>.2.....
000030: B7 CA 3B F0 4F 0B CD 5E EA 44 4D CD BE ED 7D B4 ..;.O..^.DM...}.
000040: C2 48 F0 3E 02 C3 01 E9 22 E5 F3 EB 2A 43 E9 01 .H.>...."...*C..
000050: 10 00 09 3A DD F3 B7 3A D7 F3 CA 64 F0 CD 64 EB ...:...:...d..d.
000060: 73 C3 6C F0 4F 06 00 09 09 73 23 72 0E 02 3A 45 s.l.O....s#r..:E
000070: E9 B7 C0 C5 CD 8A EA 3A D5 F3 3D 3D C2 BB F0 C1 .......:..==....
000080: C5 79 3D 3D C2 BB F0 E5 2A B9 F3 57 77 23 14 F2 .y==....*..Ww#..
000090: 8C F0 CD E0 EB 2A E7 F3 0E 02 22 E5 F3 C5 CD D1 .....*....".....
0000A0: E9 C1 CD B8 E9 2A E5 F3 0E 00 3A C4 F3 47 A5 B8 .....*....:..G..
0000B0: 23 C2 9A F0 E1 22 E5 F3 CD DA EB CD D1 E9 C1 C5 #...."..........
0000C0: CD B8 E9 C1 3A E3 F3 21 E1 F3 BE DA D2 F0 77 34 ....:..!......w4
0000D0: 0E 02 00 00 21 00 DE F5 CD 69 EB E6 7F 77 F1 FE ....!....i...w..
0000E0: 7F C2 00 F1 3A D5 F3 FE 01 C2 00 F1 CD D2 EA CD ....:...........
0000F0: 5A EF 21 45 E9 7E B7 C2 FE F0 3D 32 E3 F3 36 00 Z.!E.~....=2..6.
000100: C3 D2 EA AF 32 D5 F3 C5 2A 43 E9 EB 21 21 00 19 ....2...*C..!!..
000110: 7E E6 7F F5 7E 17 23 7E 17 E6 1F 4F 7E 1F 1F 1F ~...~.#~...O~...
000120: 1F E6 0F 47 F1 23 6E 2C 2D 2E 06 C2 8B F1 21 20 ...G.#n,-.....!
000130: 00 19 77 21 0C 00 19 79 96 C2 47 F1 21 0E 00 19 ..w!...y..G.!...
000140: 78 96 E6 7F CA 7F F1 C5 D5 CD A2 EE D1 C1 2E 03 x...............
000150: 3A 45 E9 3C CA 84 F1 21 0C 00 19 71 21 0E 00 19 :E.<...!...q!...
000160: 70 CD 51 EE 3A 45 E9 3C C2 7F F1 C1 C5 2E 04 0C p.Q.:E.<........
000170: CA 84 F1 CD 24 EF 2E 05 3A 45 E9 3C CA 84 F1 C1 ....$...:E.<....
000180: AF C3 01 E9 E5 CD 69 EB 36 C0 E1 C1 7D 32 45 E9 ......i.6...}2E.
000190: C3 78 EB 0E FF CD 03 F1 CC C1 EF C9 0E 00 CD 03 .x..............
0001A0: F1 CC 03 F0 C9 EB 19 4E 06 00 21 0C 00 19 7E 0F .......N..!...~.
0001B0: E6 80 81 4F 3E 00 88 47 7E 0F E6 0F 80 47 21 0E ...O>..G~....G!.
0001C0: 00 19 7E 87 87 87 87 F5 80 47 F5 E1 7D E1 B5 E6 ..~......G..}...
0001D0: 01 C9 0E 0C CD 18 ED 2A 43 E9 11 21 00 19 E5 72 .......*C..!...r
0001E0: 23 72 23 72 CD F5 EB CA 0C F2 CD 5E EB 11 0F 00 #r#r.......^....
0001F0: CD A5 F1 E1 E5 5F 79 96 23 78 9E 23 7B 9E DA 06 ....._y.#x.#{...
Size : 512 (Real : 512)
000000: C1 E8 FE 08 C2 16 E8 78 B7 CA EF E7 05 3A 0C E9 .......x.....:..
000010: 32 0A E9 C3 70 E8 FE 7F C2 26 E8 3E 08 C3 07 E8 2...p....&.>....
000020: 7E 05 2B C3 A9 E8 FE 05 C2 37 E8 C5 E5 CD C9 E7 ~.+......7......
000030: AF 32 0B E9 C3 F1 E7 FE 10 C2 48 E8 E5 21 0D E9 .2........H..!..
000040: 3E 01 96 77 E1 C3 EF E7 FE 18 C2 5F E8 E1 3A 0B >..w......._..:.
000050: E9 21 0C E9 BE D2 E1 E7 35 CD A4 E7 C3 4E E8 FE .!......5....N..
000060: 15 C2 6B E8 CD B1 E7 E1 C3 E1 E7 FE 12 C2 A6 E8 ..k.............
000070: C5 CD B1 E7 C1 E1 E5 C5 78 B7 CA 8A E8 23 4E 05 ........x....#N.
000080: C5 E5 CD 7F E7 E1 C1 C3 78 E8 E5 3A 0A E9 B7 CA ........x..:....
000090: F1 E7 21 0C E9 96 32 0A E9 CD A4 E7 21 0A E9 35 ..!...2.....!..5
0000A0: C2 99 E8 C3 F1 E7 23 77 04 C5 E5 4F CD 7F E7 E1 ......#w...O....
0000B0: C1 7E FE 03 78 C2 BD E8 FE 01 CA 00 00 B9 DA EF .~..x...........
0000C0: E7 E1 70 0E 0D C3 48 E7 CD 06 E7 C3 01 E9 CD 15 ..p...H.........
0000D0: F4 C3 01 E9 79 3C CA E0 E8 3C CA 06 F4 C3 0C F4 ....y<...<......
0000E0: CD 06 F4 B7 CA 91 F3 CD 09 F4 C3 01 E9 3A 03 00 .............:..
0000F0: C3 01 E9 21 03 00 71 C9 EB 4D 44 C3 D3 E7 CD 23 ...!..q..MD....#
000100: E7 32 45 E9 C9 3E 01 C3 01 E9 00 00 00 00 00 00 .2E..>..........
000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 00 00 00 00 00 00 21 0B E6 5E 23 56 EB E9 0C .......!..^#V...
000150: 0D C8 1A 77 13 23 C3 50 E9 3A 42 E9 4F CD 1B F4 ...w.#.P.:B.O...
000160: 7C B5 C8 5E 23 56 23 22 B3 F3 23 23 22 B5 F3 23 |..^#V#"..##"..#
000170: 23 22 B7 F3 23 23 EB 22 D0 F3 21 B9 F3 0E 08 CD #"..##."..!.....
000180: 4F E9 2A BB F3 EB 21 C1 F3 0E 0F CD 4F E9 2A C6 O.*...!.....O.*.
000190: F3 7C 21 DD F3 36 FF B7 CA 9D E9 36 00 3E FF B7 .|!..6.....6.>..
0001A0: C9 CD 18 F4 AF 2A B5 F3 77 23 77 2A B7 F3 77 23 .....*..w#w*..w#
0001B0: 77 C9 CD 27 F4 C3 BB E9 CD 2A F4 B7 C8 21 09 E6 w..'.....*...!..
0001C0: C3 4A E9 2A EA F3 0E 02 CD EA EA 22 E5 F3 22 EC .J.*......."..".
0001D0: F3 21 E5 F3 4E 23 46 2A B7 F3 5E 23 56 2A B5 F3 .!..N#F*..^#V*..
0001E0: 7E 23 66 6F 79 93 78 9A D2 FA E9 E5 2A C1 F3 7B ~#foy.x.....*..{
0001F0: 95 5F 7A 9C 57 E1 2B C3 E4 E9 E5 2A C1 F3 19 DA ._z.W.+....*....
Size : 512 (Real : 512)
000000: F2 73 2B 70 2B 71 CD 2D ED C3 E4 F1 E1 C9 2A 43 .s+p+q.-......*C
000010: E9 11 20 00 CD A5 F1 21 21 00 19 71 23 70 23 77 .. ....!!..q#p#w
000020: C9 2A AF F3 3A 42 E9 4F CD EA EA E5 EB CD 59 E9 .*..:B.O......Y.
000030: E1 CC 47 E9 7D 1F D8 2A AF F3 4D 44 CD 0B EB 22 ..G.}..*..MD..."
000040: AF F3 C3 A3 EC 3A D6 F3 21 42 E9 BE C8 77 C3 21 .....:..!B...w.!
000050: F2 3E FF 32 DE F3 2A 43 E9 7E E6 1F 3D 32 D6 F3 .>.2..*C.~..=2..
000060: FE 1E D2 75 F2 3A 42 E9 32 DF F3 7E 32 E0 F3 E6 ...u.:B.2..~2...
000070: E0 77 CD 45 F2 3A 41 E9 2A 43 E9 B6 77 C9 3E 22 .w.E.:A.*C..w.>"
000080: C3 01 E9 21 00 00 22 AD F3 22 AF F3 AF 32 42 E9 ...!..".."...2B.
000090: 21 80 00 22 B1 F3 CD DA EB C3 21 F2 CD 72 EB CD !.."......!..r..
0000A0: 51 F2 C3 51 EE CD 51 F2 C3 A2 EE 0E 00 EB 7E FE Q..Q..Q.......~.
0000B0: 3F CA C2 F2 CD A6 EA 7E FE 3F C4 72 EB CD 51 F2 ?......~.?.r..Q.
0000C0: 0E 0F CD 18 ED C3 E9 EB 2A D9 F3 22 43 E9 CD 51 ........*.."C..Q
0000D0: F2 CD 2D ED C3 E9 EB CD 51 F2 CD 9C ED C3 01 ED ..-.....Q.......
0000E0: CD 51 F2 C3 BC EF CD 51 F2 C3 FE EF CD 72 EB CD .Q.....Q.....r..
0000F0: 51 F2 C3 24 EF CD 51 F2 CD 16 EE C3 01 ED 2A AF Q..$..Q.......*.
000100: F3 C3 29 F3 3A 42 E9 C3 01 E9 EB 22 B1 F3 C3 DA ..).:B....."....
000110: EB 2A BF F3 C3 29 F3 2A AD F3 C3 29 F3 CD 51 F2 .*...).*...)..Q.
000120: CD 3B EE C3 01 ED 2A BB F3 22 45 E9 C9 3A D6 F3 .;....*.."E..:..
000130: FE FF C2 3B F3 3A 41 E9 C3 01 E9 E6 1F 32 41 E9 ...;.:A......2A.
000140: C9 CD 51 F2 C3 93 F1 CD 51 F2 C3 9C F1 CD 51 F2 ..Q.....Q.....Q.
000150: C3 D2 F1 2A 43 E9 7D 2F 5F 7C 2F 2A AF F3 A4 57 ...*C.}/_|/*...W
000160: 7D A3 5F 2A AD F3 EB 22 AF F3 7D A3 6F 7C A2 67 }._*..."..}.o|.g
000170: 22 AD F3 C9 3A DE F3 B7 CA 91 F3 2A 43 E9 36 00 "...:......*C.6.
000180: 3A E0 F3 B7 CA 91 F3 77 3A DF F3 32 D6 F3 CD 45 :......w:..2...E
000190: F2 2A 0F E9 F9 2A 45 E9 7D 44 C9 CD 51 F2 3E 02 .*...*E.}D..Q.>.
0001A0: 32 D5 F3 0E 00 CD 07 F1 CC 03 F0 C9 E5 00 00 00 2...............
0001B0: 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 0F EA 79 95 78 9C DA 0F EA EB E1 23 C3 FA E9 E1 ..y.x......#....
000010: C5 D5 E5 EB 2A CE F3 19 44 4D CD 1E F4 D1 2A B5 ....*...DM....*.
000020: F3 73 23 72 D1 2A B7 F3 73 23 72 C1 79 93 4F 78 .s#r.*..s#r.y.Ox
000030: 9A 47 2A D0 F3 EB CD 30 F4 4D 44 C3 21 F4 21 C3 .G*....0.MD.!.!.
000040: F3 4E 3A E3 F3 B7 1F 0D C2 45 EA 47 3E 08 96 4F .N:......E.G>..O
000050: 3A E2 F3 0D CA 5C EA B7 17 C3 53 EA 80 C9 2A 43 :....\....S...*C
000060: E9 11 10 00 19 09 3A DD F3 B7 CA 71 EA 6E 26 00 ......:....q.n&.
000070: C9 09 5E 23 56 EB C9 CD 3E EA 4F 06 00 CD 5E EA ..^#V...>.O...^.
000080: 22 E5 F3 C9 2A E5 F3 7D B4 C9 3A C3 F3 2A E5 F3 "...*..}..:..*..
000090: 29 3D C2 90 EA 22 E7 F3 3A C4 F3 4F 3A E3 F3 A1 )=..."..:..O:...
0000A0: B5 6F 22 E5 F3 C9 2A 43 E9 11 0C 00 19 C9 2A 43 .o"...*C......*C
0000B0: E9 11 0F 00 19 EB 21 11 00 19 C9 CD AE EA 7E 32 ......!.......~2
0000C0: E3 F3 EB 7E 32 E1 F3 CD A6 EA 3A C5 F3 A6 32 E2 ...~2.....:...2.
0000D0: F3 C9 CD AE EA 3A D5 F3 FE 02 C2 DE EA AF 4F 3A .....:........O:
0000E0: E3 F3 81 77 EB 3A E1 F3 77 C9 0C 0D C8 7C B7 1F ...w.:..w....|..
0000F0: 67 7D 1F 6F C3 EB EA 0E 80 2A B9 F3 AF 86 23 0D g}.o.....*....#.
000100: C2 FD EA C9 0C 0D C8 29 C3 05 EB C5 3A 42 E9 4F .......)....:B.O
000110: 21 01 00 CD 04 EB C1 79 B5 6F 78 B4 67 C9 2A AD !......y.ox.g.*.
000120: F3 3A 42 E9 4F CD EA EA 7D E6 01 C9 21 AD F3 4E .:B.O...}...!..N
000130: 23 46 CD 0B EB 22 AD F3 2A C8 F3 23 EB 2A B3 F3 #F..."..*..#.*..
000140: 73 23 72 C9 CD 5E EB 11 09 00 19 7E 17 D0 21 0F s#r..^.....~..!.
000150: E6 C3 4A E9 CD 1E EB C8 21 0D E6 C3 4A E9 2A B9 ..J.....!...J.*.
000160: F3 3A E9 F3 85 6F D0 24 C9 2A 43 E9 11 0E 00 19 .:...o.$.*C.....
000170: 7E C9 CD 69 EB 36 00 C9 CD 69 EB F6 80 77 C9 2A ~..i.6...i...w.*
000180: EA F3 EB 2A B3 F3 7B 96 23 7A 9E C9 CD 7F EB D8 ...*..{.#z......
000190: 13 72 2B 73 C9 7B 95 6F 7A 9C 67 C9 0E FF 2A EC .r+s.{.oz.g...*.
0001A0: F3 EB 2A CC F3 CD 95 EB D0 C5 CD F7 EA 2A BD F3 ..*..........*..
0001B0: EB 2A EC F3 19 C1 0C CA C4 EB BE C8 CD 7F EB D0 .*..............
0001C0: CD 2C EB C9 77 C9 CD 9C EB CD E0 EB 0E 01 CD B8 .,..w...........
0001D0: E9 C3 DA EB CD E0 EB CD B2 E9 21 B1 F3 C3 E3 EB ..........!.....
0001E0: 21 B9 F3 4E 23 46 C3 24 F4 2A B9 F3 EB 2A B1 F3 !..N#F.$.*...*..
0001F0: 0E 80 C3 4F E9 21 EA F3 7E 23 BE C0 3C C9 21 FF ...O.!..~#..<.!.
Size : 512 (Real : 512)
000000: E5 50 49 50 20 20 20 20 20 43 4F 4D 00 00 00 3A .PIP COM...:
000010: 02 03 04 05 06 07 08 09 00 00 00 00 00 00 00 00 ................
000020: 00 38 30 38 30 20 20 20 20 4D 49 54 00 00 00 11 .8080 MIT....
000030: 0A 0B 0C 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000040: 00 5A 38 30 20 20 20 20 20 4D 49 54 00 00 00 4A .Z80 MIT...J
000050: 0D 0E 0F 10 11 12 13 14 15 16 00 00 00 00 00 00 ................
000060: 00 43 41 4C 4C 20 20 20 20 4D 41 43 00 00 00 44 .CALL MAC...D
000070: 17 18 19 1A 1B 1C 1D 1E 1F 00 00 00 00 00 00 00 ................
000080: 00 45 4E 44 20 20 20 20 20 4D 41 43 00 00 00 03 .END MAC....
000090: 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...............
0000A0: 00 4C 49 4E 4B 20 20 20 20 4D 41 43 00 00 00 01 .LINK MAC....
0000B0: 21 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 !...............
0000C0: 00 4E 4F 54 49 43 45 20 20 48 20 20 00 00 00 01 .NOTICE H ....
0000D0: 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 "...............
0000E0: 00 53 54 44 49 4F 20 20 20 48 20 20 00 00 00 04 .STDIO H ....
0000F0: 23 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 #...............
000100: 00 4D 41 43 20 20 20 20 20 48 20 20 00 00 00 0E .MAC H ....
000110: 24 25 00 00 00 00 00 00 00 00 00 00 00 00 00 00 $%..............
000120: 00 45 58 54 20 20 20 20 20 48 20 20 00 00 00 03 .EXT H ....
000130: 26 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 &...............
000140: 00 4D 49 54 20 20 20 20 20 48 20 20 00 00 00 04 .MIT H ....
000150: 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 '...............
000160: 00 52 45 4C 20 20 20 20 20 48 20 20 00 00 00 0D .REL H ....
000170: 28 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ()..............
000180: 00 4D 20 20 20 20 20 20 20 4C 49 42 00 00 00 48 .M LIB...H
000190: 2A 2B 2C 2D 2E 2F 30 31 32 00 00 00 00 00 00 00 *+,-./012.......
0001A0: 00 4D 20 20 20 20 20 20 20 4C 53 54 00 00 00 01 .M LST....
0001B0: 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3...............
0001C0: 00 4D 20 20 20 20 20 20 20 4E 44 58 00 00 00 01 .M NDX....
0001D0: 34 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4...............
0001E0: 00 4D 41 43 20 20 20 20 20 43 20 20 00 00 00 59 .MAC C ...Y
0001F0: 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 00 00 00 00 56789:;<=>?@....
Size : 512 (Real : 512)
000000: 41 42 4F 52 54 45 44 24 42 41 44 20 50 41 52 41 ABORTED$BAD PARA
000010: 4D 45 54 45 52 24 49 4E 56 41 4C 49 44 20 55 53 METER$INVALID US
000020: 45 52 20 4E 55 4D 42 45 52 24 52 45 43 4F 52 44 ER NUMBER$RECORD
000030: 20 54 4F 4F 20 4C 4F 4E 47 24 49 4E 56 41 4C 49 TOO LONG$INVALI
000040: 44 20 44 49 47 49 54 24 45 4E 44 20 4F 46 20 46 D DIGIT$END OF F
000050: 49 4C 45 2C 20 43 54 4C 2D 5A 3F 24 43 48 45 43 ILE, CTL-Z?$CHEC
000060: 4B 53 55 4D 20 45 52 52 4F 52 24 43 4F 52 52 45 KSUM ERROR$CORRE
000070: 43 54 20 45 52 52 4F 52 2C 20 54 59 50 45 20 52 CT ERROR, TYPE R
000080: 45 54 55 52 4E 20 4F 52 20 43 54 4C 2D 5A 24 49 ETURN OR CTL-Z$I
000090: 4E 56 41 4C 49 44 20 46 4F 52 4D 41 54 24 48 45 NVALID FORMAT$HE
0000A0: 58 24 24 24 24 4E 4F 20 44 49 52 45 43 54 4F 52 X$$$$NO DIRECTOR
0000B0: 59 20 53 50 41 43 45 24 4E 4F 20 46 49 4C 45 24 Y SPACE$NO FILE$
0000C0: 43 4F 4D 24 53 54 41 52 54 20 4E 4F 54 20 46 4F COM$START NOT FO
0000D0: 55 4E 44 24 51 55 49 54 20 4E 4F 54 20 46 4F 55 UND$QUIT NOT FOU
0000E0: 4E 44 24 43 41 4E 4E 4F 54 20 43 4C 4F 53 45 20 ND$CANNOT CLOSE
0000F0: 44 45 53 54 49 4E 41 54 49 4F 4E 20 46 49 4C 45 DESTINATION FILE
000100: 24 44 45 53 54 49 4E 41 54 49 4F 4E 20 49 53 20 $DESTINATION IS
000110: 52 2F 4F 2C 20 44 45 4C 45 54 45 20 28 59 2F 4E R/O, DELETE (Y/N
000120: 29 3F 24 2A 2A 4E 4F 54 20 44 45 4C 45 54 45 44 )?$**NOT DELETED
000130: 2A 2A 24 24 24 24 24 24 24 4E 4F 54 20 46 4F 55 **$$$$$$$NOT FOU
000140: 4E 44 24 43 4F 50 59 49 4E 47 20 2D 24 52 45 51 ND$COPYING -$REQ
000150: 55 49 52 45 53 20 43 50 2F 4D 20 32 2E 30 20 4F UIRES CP/M 2.0 O
000160: 52 20 4E 45 57 45 52 20 46 4F 52 20 4F 50 45 52 R NEWER FOR OPER
000170: 41 54 49 4F 4E 2E 24 55 4E 52 45 43 4F 47 4E 49 ATION.$UNRECOGNI
000180: 5A 45 44 20 44 45 53 54 49 4E 41 54 49 4F 4E 24 ZED DESTINATION$
000190: 43 41 4E 4E 4F 54 20 57 52 49 54 45 24 49 4E 56 CANNOT WRITE$INV
0001A0: 41 4C 49 44 20 50 49 50 20 46 4F 52 4D 41 54 24 ALID PIP FORMAT$
0001B0: 43 41 4E 4E 4F 54 20 52 45 41 44 24 49 4E 56 41 CANNOT READ$INVA
0001C0: 4C 49 44 20 53 45 50 41 52 41 54 4F 52 24 31 F2 LID SEPARATOR$1.
0001D0: 1D 01 80 00 C5 1E 80 01 CC 1E CD 18 0A 3A CC 1E .............:..
0001E0: D6 00 D6 01 9F 32 A5 1E CD 4C 08 EB 3E 20 CD 84 .....2...L..> ..
0001F0: 1D D2 FD 04 01 4D 04 CD 39 08 CD 00 00 CD 16 09 .....M..9.......
Size : 512 (Real : 512)
000000: 00 4D 41 43 32 20 20 20 20 43 20 20 00 00 00 6E .MAC2 C ...n
000010: 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 00 00 ABCDEFGHIJKLMN..
000020: 00 4D 41 43 33 20 20 20 20 43 20 20 00 00 00 4E .MAC3 C ...N
000030: 4F 50 51 52 53 54 55 56 57 58 00 00 00 00 00 00 OPQRSTUVWX......
000040: 00 4C 4E 4B 20 20 20 20 20 43 20 20 00 00 00 80 .LNK C ....
000050: 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68 YZ[\]^_`abcdefgh
000060: 00 4C 4E 4B 20 20 20 20 20 43 20 20 01 00 00 21 .LNK C ...!
000070: 69 6A 6B 6C 6D 00 00 00 00 00 00 00 00 00 00 00 ijklm...........
000080: 00 4C 47 4F 20 20 20 20 20 43 20 20 00 00 00 18 .LGO C ....
000090: 6E 6F 70 00 00 00 00 00 00 00 00 00 00 00 00 00 nop.............
0000A0: 00 4C 49 42 20 20 20 20 20 43 20 20 00 00 00 6B .LIB C ...k
0000B0: 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 00 00 qrstuvwxyz{|}~..
0000C0: 00 43 4D 49 54 20 20 20 20 43 20 20 00 00 00 42 .CMIT C ...B
0000D0: 7F 80 81 82 83 84 85 86 87 00 00 00 00 00 00 00 ................
0000E0: 00 44 52 45 4C 20 20 20 20 43 20 20 00 00 00 09 .DREL C ....
0000F0: 88 89 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000100: 00 45 58 54 45 4E 44 20 20 43 20 20 00 00 00 05 .EXTEND C ....
000110: 8A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 46 49 4C 45 20 20 20 20 43 20 20 00 00 00 02 .FILE C ....
000130: 8B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 47 45 54 52 45 4C 20 20 43 20 20 00 00 00 1F .GETREL C ....
000150: 8C 8D 8E 8F 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 50 55 54 52 45 4C 20 20 43 20 20 00 00 00 15 .PUTREL C ....
000170: 90 91 92 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 53 45 45 52 45 4C 20 20 43 20 20 00 00 00 19 .SEEREL C ....
000190: 93 94 95 96 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 4D 45 53 53 20 20 20 20 43 20 20 00 00 00 03 .MESS C ....
0001B0: 97 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 53 43 41 4E 20 20 20 20 43 20 20 00 00 00 06 .SCAN C ....
0001D0: 98 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 57 41 49 54 20 20 20 20 43 20 20 00 00 00 02 .WAIT C ....
0001F0: 99 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 32 C0 1E 11 00 00 0E 19 CD 05 00 32 FC 1D 31 F2 2..........2..1.
000010: 1D CD 40 1A 3A C0 1E 32 C1 1E 21 6F 1F 36 00 2B ..@.:..2..!o.6.+
000020: 36 00 2B 36 00 21 A6 1E 36 01 23 36 00 21 F3 1D 6.+6.!..6.#6.!..
000030: 36 00 23 36 FE 3A A5 1E 1F D2 47 05 0E 2A CD 1C 6.#6.:....G..*..
000040: 08 CD 6F 09 CD 2E 08 21 4E 1F 36 FF 3A CC 1E FE ..o....!N.6.:...
000050: 00 C2 5E 05 2A FC 1D 4D CD 5E 08 CD 00 00 21 4B ..^.*..M.^....!K
000060: 1E 36 00 21 03 1E 36 00 21 A4 1E 36 00 2B 36 00 .6.!..6.!..6.+6.
000070: 01 27 1E CD 20 12 3A A9 1E FE 03 C2 81 05 C3 24 .'.. .:........$
000080: 06 3A A9 1E FE 04 C2 C3 05 3A 94 1F 3D 32 4B 1E .:.......:..=2K.
000090: CD 0C 1D 01 06 1E CD 20 12 3A A9 1E FE 02 CA A4 ....... .:......
0000A0: 05 CD 5C 18 3A F5 1D 1F D2 B7 05 01 5C 00 CD EE ..\.:.......\...
0000B0: 1C CD 78 1B C3 C0 05 01 27 1E CD EE 1C CD B2 1A ..x.....'.......
0000C0: C3 DB 07 3A A9 1E D6 02 C6 FF 9F 21 F5 1D B6 1F ...:.......!....
0000D0: D2 D6 05 CD 5C 18 CD A2 1C CD 0C 1D 01 06 1E CD ....\...........
0000E0: 20 12 3A A9 1E FE 04 C2 05 06 CD 88 1C CD C6 1C .:.............
0000F0: 01 27 1E C5 1E 21 01 06 1E CD 18 0A CD DF 1C CD .'...!..........
000100: B2 1A C3 DB 07 3A A9 1E FE 02 C2 24 06 CD 11 12 .....:.....$....
000110: 3A A8 1E FE 0D CA 1B 06 C3 24 06 CD 88 1C CD B2 :........$......
000120: 1A C3 DB 07 21 4E 1F 36 FF 01 27 1E CD 20 12 3A ....!N.6..'.. .:
000130: A9 1E D6 02 9F 21 F5 1D B6 1F D2 43 06 01 77 04 .....!.....C..w.
000140: CD AF 09 21 05 1E 36 00 3A A9 1E FE 02 C2 5E 06 ...!..6.:.....^.
000150: CD A2 1C CD 63 18 21 A8 1E 36 FF C3 7B 06 3A A8 ....c.!..6..{.:.
000160: 1E D6 13 9F 2F F5 3E 05 21 A8 1E 96 9F 2F C1 48 ..../.>.!..../.H
000170: B1 1F D2 7B 06 01 90 04 CD AF 09 3A A8 1E 3C 32 ...{.......:..<2
000180: A3 1E FE 0F C2 8A 06 CD CF 15 01 06 1E CD 20 12 .............. .
000190: 3A A9 1E D6 01 C6 FF 9F F5 3A A8 1E D6 3D C6 FF :........:...=..
0001A0: 9F C1 48 B1 1F D2 AE 06 01 9D 04 CD AF 09 21 A7 ..H...........!.
0001B0: 1F 36 01 3A A7 1F 1F D2 BE 07 3A C0 1E 32 C1 1E .6.:......:..2..
0001C0: 01 06 1E CD 20 12 21 04 1E 36 00 3A A9 1E D6 02 .... .!..6.:....
0001D0: D6 01 9F F5 3A F5 1D 2F C1 48 A1 1F D2 ED 06 CD ....:../.H......
0001E0: 88 1C CD BE 18 21 A8 1E 36 FF C3 13 07 3A A9 1E .....!..6....:..
0001F0: D6 03 C6 FF 9F F5 3E 0A 21 A8 1E 96 9F 2F F5 3E ......>.!..../.>
Size : 512 (Real : 512)
000000: 00 49 4E 54 20 20 20 20 20 43 20 20 00 00 00 02 .INT C ....
000010: 9A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000020: 00 4D 49 54 20 20 20 20 20 43 20 20 00 00 00 20 .MIT C ...
000030: 9B 9C 9D 9E 00 00 00 00 00 00 00 00 00 00 00 00 ................
000040: 00 52 45 4C 20 20 20 20 20 43 20 20 00 00 00 05 .REL C ....
000050: 9F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000060: 00 52 45 51 20 20 20 20 20 43 20 20 00 00 00 08 .REQ C ....
000070: A0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 05 96 9F C1 48 A1 C1 48 B1 1F D2 13 07 01 B0 04 ....H..H........
000010: CD AF 09 3A 5E 1F 21 04 1E B6 77 3A A8 1E 3C 32 ...:^.!...w:..<2
000020: A4 1E 3A A8 1E FE 13 C2 30 07 CD CF 15 C3 7D 07 ..:.....0.....}.
000030: 3A A8 1E FE 14 C2 40 07 0E 1A CD 45 0E C3 7D 07 :.....@....E..}.
000040: 3A A8 1E D6 05 9F 21 05 1E A6 1F D2 53 07 21 57 :.....!.....S.!W
000050: 1F 36 01 3A A3 1E FE 0A C2 7A 07 21 5D 1F 36 01 .6.:.....z.!].6.
000060: 3A 63 1F FE 00 C2 6D 07 21 63 1F 36 08 3A 5F 1F :c....m.!c.6.:_.
000070: FE 00 C2 7A 07 21 5F 1F 36 01 CD 6C 1A CD 12 19 ...z.!_.6..l....
000080: 01 06 1E CD 20 12 3A A9 1E D6 01 C6 FF 9F F5 3A .... .:........:
000090: A8 1E D6 2C C6 FF 9F F5 3A A8 1E D6 0D C6 FF 9F ...,....:.......
0000A0: C1 48 A1 C1 48 B1 1F D2 B0 07 01 BC 04 CD AF 09 .H..H...........
0000B0: 3A A8 1E D6 0D C6 FF 9F 32 A7 1F C3 B3 06 3A A3 :.......2.....:.
0000C0: 1E FE 0F C2 CE 07 0E 1A CD 45 0E CD CF 15 3A A3 .........E....:.
0000D0: 1E FE 00 C2 DB 07 0E 00 CD 31 19 3A A5 1E 32 CC .........1.:..2.
0000E0: 1E C3 14 05 FB 76 21 F2 1D 71 21 F2 07 E5 2A 38 .....v!..q!...*8
0000F0: 02 E9 C9 21 FB 07 E5 2A 36 02 E9 3A 09 01 C9 3E ...!...*6..:...>
000100: FA CD A6 1D 3E FA CD A6 1D C9 11 00 00 0E 03 CD ....>...........
000110: 05 00 C9 11 00 00 0E 01 CD 05 00 C9 21 AB 1E 71 ............!..q
000120: 3A AB 1E E6 7F 5F 16 00 0E 02 CD 05 00 C9 0E 0D :...._..........
000130: CD 1C 08 0E 0A CD 1C 08 C9 21 AD 1E 70 2B 71 CD .........!..p+q.
000140: 2E 08 2A AC 1E EB 0E 09 CD 05 00 C9 11 00 00 0E ..*.............
000150: 0C CD 05 00 C9 11 00 00 0E 0D CD 05 00 C9 21 AF ..............!.
000160: 1E 71 2A AF 1E 26 00 EB 0E 0E CD 05 00 C9 21 B1 .q*..&........!.
000170: 1E 70 2B 71 2A B0 1E EB 0E 0F CD 05 00 32 AE 1E .p+q*........2..
000180: C9 21 B3 1E 70 2B 71 2A B2 1E EB 0E 10 CD 05 00 .!..p+q*........
000190: 32 AE 1E C9 21 B5 1E 70 2B 71 2A B4 1E EB 0E 11 2...!..p+q*.....
0001A0: CD 05 00 32 AE 1E C9 11 00 00 0E 12 CD 05 00 32 ...2...........2
0001B0: AE 1E C9 21 B7 1E 70 2B 71 2A B6 1E EB 0E 13 CD ...!..p+q*......
0001C0: 05 00 C9 21 B9 1E 70 2B 71 2A B8 1E EB 0E 14 CD ...!..p+q*......
0001D0: 05 00 C9 21 BB 1E 70 2B 71 2A BA 1E EB 0E 15 CD ...!..p+q*......
0001E0: 05 00 C9 21 BD 1E 70 2B 71 2A BC 1E EB 0E 16 CD ...!..p+q*......
0001F0: 05 00 32 AE 1E C9 21 BF 1E 70 2B 71 2A BE 1E EB ..2...!..p+q*...
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 0E 17 CD 05 00 C9 21 C3 1E 70 2B 71 2A C2 1E EB ......!..p+q*...
000010: 0E 1E CD 05 00 C9 11 FF 00 0E 20 CD 05 00 C9 21 .......... ....!
000020: C4 1E 71 2A C4 1E 26 00 EB 0E 20 CD 05 00 C9 2A ..q*..&... ....*
000030: C0 1E 4D CD 1F 09 C9 2A C1 1E 4D CD 1F 09 C9 21 ..M....*..M....!
000040: C6 1E 70 2B 71 2A C5 1E EB 0E 21 CD 05 00 C9 21 ..p+q*....!....!
000050: C8 1E 70 2B 71 2A C7 1E EB 0E 22 CD 05 00 C9 21 ..p+q*...."....!
000060: CA 1E 70 2B 71 2A C9 1E EB 0E 24 CD 05 00 C9 21 ..p+q*....$....!
000070: CB 1E 36 80 11 CB 1E 0E 0A CD 05 00 C9 11 00 00 ..6.............
000080: 0E 0B CD 05 00 C9 21 6B 1F 70 2B 71 2A 6A 1F EB ......!k.p+q*j..
000090: 0E 1A CD 05 00 C9 3E 0C D3 01 3E 08 D3 01 DB 01 ......>...>.....
0000A0: 07 07 07 1F DA AA 09 C3 9E 09 DB 03 E6 7F C9 21 ...............!
0000B0: 71 1F 70 2B 71 CD 2F 09 2A 70 1F 44 4D CD 39 08 q.p+q./.*p.DM.9.
0000C0: 0E 3A CD 1C 08 0E 20 CD 1C 08 3A 4D 1F 32 72 1F .:.... ...:M.2r.
0000D0: 3A 4E 1F 21 72 1F BE DA F8 09 21 CC 1E 3A 72 1F :N.!r.....!..:r.
0000E0: BE D2 F1 09 2A 72 1F 26 00 01 CD 1E 09 4E CD 1C ....*r.&.....N..
0000F0: 08 21 72 1F 34 C2 D0 09 21 CC 1E 36 00 01 3A 02 .!r.4...!..6..:.
000100: CD 94 08 3A AE 1E FE FF CA 11 0A 01 3A 02 CD B3 ...:........:...
000110: 08 CD 2E 08 C3 0E 05 C9 21 77 1F 73 2B 70 2B 71 ........!w.s+p+q
000120: 2B D1 C1 70 2B 71 D5 3A 77 1F 3D 32 77 1F FE FF +..p+q.:w.=2w...
000130: CA 4E 0A 2A 73 1F E5 2A 75 1F C1 0A 77 2A 73 1F .N.*s..*u...w*s.
000140: 23 22 73 1F 2A 75 1F 23 22 75 1F C3 27 0A C9 21 #"s.*u.#"u..'..!
000150: 00 00 22 9D 1E 2A 03 1E 4D CD 5E 08 CD 37 09 21 .."..*..M.^..7.!
000160: 78 1F 36 00 3A FB 1D 21 78 1F BE DA BE 0A 2A 9D x.6.:..!x.....*.
000170: 1E EB 2A 01 1E 19 44 4D CD 86 09 01 06 1E CD C3 ..*...DM........
000180: 08 32 79 1F FE 00 CA AD 0A 3A 79 1F FE 01 CA 97 .2y......:y.....
000190: 0A 01 94 02 CD AF 09 2A 9D 1E 22 9F 1E EB 2A 01 .......*.."...*.
0001A0: 1E 19 36 1A 3A FB 1D 32 78 1F C3 B7 0A 11 80 00 ..6.:..2x.......
0001B0: 2A 9D 1E 19 22 9D 1E 21 78 1F 34 C2 64 0A 21 00 *..."..!x.4.d.!.
0001C0: 00 22 9D 1E CD 2F 09 C9 0E 07 21 A1 1E CD 6A 1D .".../....!...j.
0001D0: 7D 3D 32 7C 1F FE FF C2 DB 0A C9 21 00 00 22 A1 }=2|.......!..".
0001E0: 1E 2A 4B 1E 4D CD 5E 08 01 27 1E CD 5F 09 21 7A .*K.M.^..'.._.!z
0001F0: 1F 36 00 3A 7C 1F 21 7A 1F BE DA 31 0B 2A A1 1E .6.:|.!z...1.*..
Size : 512 (Real : 512)
000000: C3 CE 04 C9 00 00 C9 00 00 1A 00 00 00 00 00 00 ................
000010: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000020: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000030: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000040: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000050: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000060: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000070: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000080: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000090: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
0000A0: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
0000B0: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
0000C0: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
0000D0: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
0000E0: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
0000F0: 28 49 4E 50 3A 2F 4F 55 54 3A 53 50 41 43 45 29 (INP:/OUT:SPACE)
000100: 20 20 20 43 4F 50 59 52 49 47 48 54 20 28 43 29 COPYRIGHT (C)
000110: 20 31 39 37 39 2C 20 44 49 47 49 54 41 4C 20 52 1979, DIGITAL R
000120: 45 53 45 41 52 43 48 2C 20 20 50 49 50 20 56 45 ESEARCH, PIP VE
000130: 52 53 20 31 2E 35 03 01 06 01 00 24 24 24 20 20 RS 1.5.....$$$
000140: 20 20 20 53 55 42 00 00 00 20 3D 2E 3A 2C 3C 3E SUB... =.:,<>
000150: 0D 5F 5B 5D 49 4E 50 49 52 44 50 54 52 55 52 31 ._[]INPIRDPTRUR1
000160: 55 52 32 52 44 52 4F 55 54 4C 50 54 55 4C 31 50 UR2RDROUTLPTUL1P
000170: 52 4E 4C 53 54 50 54 50 55 50 31 55 50 32 50 55 RNLSTPTPUP1UP2PU
000180: 4E 54 54 59 43 52 54 55 43 31 43 4F 4E 4E 55 4C NTTYCRTUC1CONNUL
000190: 45 4F 46 00 44 49 53 4B 20 52 45 41 44 20 45 52 EOF.DISK READ ER
0001A0: 52 4F 52 24 44 49 53 4B 20 57 52 49 54 45 20 45 ROR$DISK WRITE E
0001B0: 52 52 4F 52 24 56 45 52 49 46 59 20 45 52 52 4F RROR$VERIFY ERRO
0001C0: 52 24 4E 4F 54 20 41 20 43 48 41 52 41 43 54 45 R$NOT A CHARACTE
0001D0: 52 20 53 49 4E 4B 24 52 45 41 44 45 52 20 53 54 R SINK$READER ST
0001E0: 4F 50 50 49 4E 47 0D 0A 24 4E 4F 54 20 41 20 43 OPPING..$NOT A C
0001F0: 48 41 52 41 43 54 45 52 20 53 4F 55 52 43 45 24 HARACTER SOURCE$
Size : 512 (Real : 512)
000000: 01 CA 1F 09 22 7D 1F 2A 7D 1F 44 4D CD 86 09 01 ...."}.*}.DM....
000010: 27 1E CD D3 08 FE 00 CA 20 0B 01 A4 02 CD AF 09 '....... .......
000020: 11 80 00 2A A1 1E 19 22 A1 1E 21 7A 1F 34 C2 F3 ...*..."..!z.4..
000030: 0A 3A 65 1F 1F D2 C9 0B 21 00 00 22 A1 1E 01 80 .:e.....!.."....
000040: 00 CD 86 09 21 7A 1F 36 00 3A 7C 1F 21 7A 1F BE ....!z.6.:|.!z..
000050: DA C0 0B 01 27 1E CD 3F 09 D6 00 D6 01 9F 32 7F ....'..?......2.
000060: 1F 2A 48 1E 23 22 48 1E 21 7B 1F 36 00 3A 7B 1F .*H.#"H.!{.6.:{.
000070: D6 80 9F 21 7F 1F A6 1F D2 A2 0B 2A 7B 1F 26 00 ...!.......*{.&.
000080: 01 80 00 09 3A 7B 1F 11 A1 1E E5 CD 34 1D 01 CA ....:{......4...
000090: 1F 09 C1 0A 96 D6 01 9F 32 7F 1F 21 7B 1F 34 C3 ........2..!{.4.
0000A0: 6D 0B 11 80 00 2A A1 1E 19 22 A1 1E 3A 7F 1F 1F m....*..."..:...
0000B0: DA B9 0B 01 B5 02 CD AF 09 21 7A 1F 34 C2 49 0B .........!z.4.I.
0000C0: 01 27 1E CD D3 08 32 7F 1F 21 00 00 22 A1 1E C9 .'....2..!.."...
0000D0: 21 80 1F 71 3A 80 1F FE 20 DA F4 0B 21 F3 1D 34 !..q:... ...!..4
0000E0: 3E 00 21 53 1F BE D2 F4 0B 3A 53 1F 21 F3 1D BE >.!S.....:S.!...
0000F0: D2 F4 0B C9 3A 03 00 32 81 1F 2A A3 1E 4D 06 00 ....:..2..*..M..
000100: 21 DD 0C 09 09 5E 23 56 EB E9 01 FF 1D 11 A1 1E !....^#V........
000110: CD 8E 1D DA 19 0C CD C8 0A 2A A1 1E 01 CA 1F 09 .........*......
000120: 3A 80 1F 77 2A A1 1E 23 22 A1 1E C3 05 0D C3 3D :..w*..#"......=
000130: 0C C3 3D 0C C3 3D 0C C3 3D 0C C3 3D 0C 01 C2 02 ..=..=..=..=....
000140: CD AF 09 C3 05 0D 2A 80 1F 4D CD E6 07 C3 05 0D ......*..M......
000150: 21 03 00 36 80 C3 71 0C C3 05 0D 21 03 00 36 C0 !..6..q....!..6.
000160: C3 71 0C C3 05 0D 21 03 00 36 80 C3 71 0C C3 05 .q....!..6..q...
000170: 0D 2A 80 1F 26 00 EB 0E 05 CD 05 00 C3 05 0D 21 .*..&..........!
000180: 03 00 36 10 C3 A0 0C C3 05 0D 21 03 00 36 20 C3 ..6.......!..6 .
000190: A0 0C C3 05 0D 21 03 00 36 30 C3 A0 0C C3 05 0D .....!..60......
0001A0: 2A 80 1F 26 00 EB 0E 04 CD 05 00 C3 05 0D 21 03 *..&..........!.
0001B0: 00 36 00 C3 CF 0C C3 05 0D 21 03 00 36 01 C3 CF .6.......!..6...
0001C0: 0C C3 05 0D 21 03 00 36 03 C3 CF 0C C3 05 0D 2A ....!..6.......*
0001D0: 80 1F 26 00 EB 0E 02 CD 05 00 C3 05 0D 0A 0C 2E ..&.............
0001E0: 0C 31 0C 34 0C 37 0C 3A 0C 3D 0C 46 0C 50 0C 5B .1.4.7.:.=.F.P.[
0001F0: 0C 66 0C 71 0C 7F 0C 8A 0C 95 0C A0 0C AE 0C B9 .f.q............
Size : 512 (Real : 512)
000000: C3 B7 15 3A A8 1E D6 53 D6 01 9F F5 3A A8 1E D6 ...:...S....:...
000010: 51 D6 01 9F C1 48 B1 1F D2 49 15 3A 4E 1F 3C 32 Q....H...I.:N.<2
000020: 9F 1F CD F2 11 32 A8 1E D6 1A D6 01 9F F5 3A A8 .....2........:.
000030: 1E D6 0D D6 01 9F C1 48 B1 1F DA 40 15 C3 22 15 .......H...@..".
000040: CD F2 11 32 A8 1E C3 8D 15 CD F2 11 32 A8 1E D6 ...2........2...
000050: 30 32 9F 1F 4F 3E 09 B9 D2 63 15 21 9F 1F 36 01 02..O>...c.!..6.
000060: C3 8D 15 CD F2 11 32 A8 1E D6 30 32 99 1F 4F 3E ......2...02..O>
000070: 09 B9 DA 8D 15 2A 9F 1F 26 00 CD 4F 1D E5 2A 99 .....*..&..O..*.
000080: 1F 26 00 C1 09 EB 21 9F 1F 73 C3 63 15 2A 9E 1F .&....!..s.c.*..
000090: 26 00 01 50 1F 09 3A 9F 1F 77 3A 9E 1F FE 06 C2 &..P..:..w:.....
0000A0: B7 15 3E 1F 21 9F 1F BE D2 B1 15 01 16 03 CD AF ..>.!...........
0000B0: 09 3A 9F 1F 32 C1 1E C3 C2 14 CD F2 11 32 A8 1E .:..2........2..
0000C0: C9 3A A8 1E FE 5F C2 CE 15 21 A8 1E 36 3D C9 21 .:..._...!..6=.!
0000D0: A3 1F 36 00 3E 27 21 A3 1F BE DA E9 15 0E 00 CD ..6.>'!.........
0000E0: 45 0E 21 A3 1F 34 C2 D4 15 C9 21 A9 1F 70 2B 71 E.!..4....!..p+q
0000F0: 2A A8 1F E5 1E 03 01 30 1E CD 18 0A C9 21 AD 1F *......0.....!..
000100: 72 2B 73 2B 70 2B 71 2A AC 1F 7E FE 24 CA 37 16 r+s+p+q*..~.$.7.
000110: 2A AC 1F 3E 7F A6 2A AA 1F F5 3E 7F A6 C1 48 B9 *..>..*...>...H.
000120: CA 26 16 3E 00 C9 2A AA 1F 23 22 AA 1F 2A AC 1F .&.>..*..#"..*..
000130: 23 22 AC 1F C3 07 16 3E 01 C9 CD 0D 11 32 A8 1E #".....>.....2..
000140: 3A 04 1E 1F D2 52 16 01 9D 1E 11 9F 1E CD 8E 1D :....R..........
000150: 9F C9 3A A8 1E D6 1A D6 01 9F C9 21 AF 1F 36 01 ..:........!..6.
000160: 21 9C 1E 36 00 CD 3D 17 32 B5 1F FE 3A CA 99 16 !..6..=.2...:...
000170: 21 9C 1E 36 00 3A B5 1F FE 1A C2 93 16 01 48 03 !..6.:........H.
000180: CD 39 08 CD 13 08 FE 1A C2 8E 16 3E 01 C9 21 9C .9.........>..!.
000190: 1E 36 00 CD 2D 17 C3 65 16 21 B5 1F 36 00 CD BB .6..-..e.!..6...
0001A0: 17 32 B4 1F FE 00 C2 C7 16 CD 3D 17 32 B4 1F FE .2........=.2...
0001B0: 1A CA BA 16 CD 2D 17 C3 A9 16 3A AF 1F 1F D2 C4 .....-....:.....
0001C0: 16 3E 01 C9 3E 02 C9 CD C4 17 22 B7 1F CD BB 17 .>..>.....".....
0001D0: 32 B6 1F 3A B4 1F D6 00 C6 FF 9F 21 AF 1F A6 1F 2..:.......!....
0001E0: D2 F0 16 21 B4 1F 35 CD BB 17 32 B3 1F C3 D3 16 ...!..5...2.....
0001F0: CD AC 17 21 B5 1F 86 FE 00 CA 02 17 01 5C 03 CD ...!.........\..
Size : 512 (Real : 512)
000000: 0C C4 0C CF 0C 3A 81 1F 32 03 00 C9 21 82 1F 71 .....:..2...!..q
000010: 3A 82 1F FE 09 CA 22 0D 2A 82 1F 4D CD D0 0B C3 :.....".*..M....
000020: 6E 0D 3A 63 1F FE 00 C2 34 0D 2A 82 1F 4D CD D0 n.:c....4.*..M..
000030: 0B C3 6E 0D 3A F3 1D 32 83 1F 21 63 1F 3A 83 1F ..n.:..2..!c.:..
000040: BE DA 51 0D 21 63 1F 3A 83 1F 96 32 83 1F C3 3A ..Q.!c.:...2...:
000050: 0D 21 83 1F 3A 63 1F 96 77 3E 00 21 83 1F BE D2 .!..:c..w>.!....
000060: 6E 0D 21 83 1F 35 0E 20 CD D0 0B C3 59 0D 3A 82 n.!..5. ....Y.:.
000070: 1F FE 0D C2 7B 0D 21 F3 1D 36 00 C9 21 84 1F 71 ....{.!..6..!..q
000080: 3A 84 1F D6 00 D6 01 9F 21 6C 1F A6 77 1F D2 99 :.......!l..w...
000090: 0D 0E 20 CD 0C 0D C3 A2 0D 3A 84 1F C6 30 4F CD .. ......:...0O.
0000A0: 0C 0D C9 21 85 1F 71 3A 85 1F E6 F8 1F 1F 1F 1F ...!..q:........
0000B0: 4F CD 7C 0D 3A 85 1F E6 0F 4F CD 7C 0D C9 21 86 O.|.:....O.|..!.
0000C0: 1F 36 01 3A 5D 1F D6 01 D6 01 9F 32 6C 1F 3A 6F .6.:]......2l.:o
0000D0: 1F 86 27 32 6F 1F 3A 6E 1F CE 00 27 32 6E 1F 3A ..'2o.:n...'2n.:
0000E0: 6D 1F CE 00 27 32 6D 1F 2A 6D 1F 4D CD A3 0D 2A m...'2m.*m.M...*
0000F0: 6E 1F 4D CD A3 0D 2A 6F 1F 4D CD A3 0D 3A 5D 1F n.M...*o.M...:].
000100: FE 01 C2 12 0E 0E 3A CD 0C 0D 0E 20 CD 0C 0D C3 ......:.... ....
000110: 17 0E 0E 09 CD 0C 0D C9 2A A1 1E 7D E6 7F 32 89 ........*..}..2.
000120: 1F 11 80 FF CD 44 1D 22 87 1F CD C8 0A 2A 87 1F .....D.".....*..
000130: 01 CA 1F 09 E5 2A 89 1F EB CD 18 0A 2A 89 1F 26 .....*......*..&
000140: 00 22 A1 1E C9 21 8A 1F 71 3A 55 1F 1F D2 59 0E ."...!..q:U...Y.
000150: 3A 8A 1F FE 0C C2 59 0E C9 3A A6 1E 1F D2 A9 0E :.....Y..:......
000160: 3A 8A 1F FE 0C CA A9 0E 3A 5F 1F 32 8B 1F FE 00 :.......:_.2....
000170: CA 98 0E 3A 8B 1F FE 01 C2 80 0E 21 8B 1F 36 3C ...:.......!..6<
000180: 3A F4 1D 3C 32 F4 1D 21 8B 1F BE DA 98 0E 21 F4 :..<2..!......!.
000190: 1D 36 00 0E 0C CD 0C 0D 3E 00 21 5D 1F BE D2 A4 .6......>.!]....
0001A0: 0E CD BE 0D 21 A6 1E 36 00 3A 51 1F 1F D2 CC 0E ....!..6.:Q.....
0001B0: 3A 8A 1F D6 13 D6 01 9F F5 3A A3 1E D6 00 D6 01 :........:......
0001C0: 9F C1 48 A1 1F D2 CC 0E CD 18 0E C9 3A 8A 1F FE ..H.........:...
0001D0: 0C C2 D9 0E 21 F4 1D 36 00 2A 8A 1F 4D CD 0C 0D ....!..6.*..M...
0001E0: 3A 8A 1F FE 0A C2 ED 0E 21 A6 1E 36 01 C9 21 8C :.......!..6..!.
0001F0: 1F 71 3A 8C 1F D6 61 9F 2F F5 3E 7A 21 8C 1F 96 .q:...a./.>z!...
Size : 512 (Real : 512)
000000: 12 17 CD 2D 17 3A AF 1F 1F D2 0F 17 3E 00 C9 3E ...-.:......>..>
000010: 02 C9 21 B1 1F 70 2B 71 3A AF 1F 1F D2 2C 17 21 ..!..p+q:....,.!
000020: AF 1F 36 00 2A B0 1F 44 4D CD 39 08 C9 3A AE 1F ..6.*..DM.9..:..
000030: 1F D2 3C 17 21 AE 1F 36 00 CD 18 0E C9 3A AF 1F ..<.!..6.....:..
000040: 1F D2 7A 17 CD 0D 11 32 B2 1F FE 13 C2 57 17 21 ..z....2.....W.!
000050: AE 1F 36 01 C3 44 17 2A 9C 1E 26 00 01 4C 1E 09 ..6..D.*..&..L..
000060: 3A B2 1F 77 3A 9C 1E 3C 32 9C 1E FE 4F DA 76 17 :..w:..<2...O.v.
000070: 01 2A 03 CD 12 17 3A B2 1F C9 3E 1A C9 CD 3D 17 .*....:...>...=.
000080: 32 B9 1F D6 30 4F 3E 09 B9 DA 92 17 3A B9 1F D6 2...0O>.....:...
000090: 30 C9 3A B9 1F D6 41 4F 3E 05 B9 D2 A4 17 01 3A 0.:...AO>......:
0000A0: 03 CD 12 17 3A B9 1F D6 41 C6 0A C9 CD 7D 17 87 ....:...A....}..
0000B0: 87 87 87 F5 CD 7D 17 C1 48 B1 C9 CD AC 17 21 B5 .....}..H.....!.
0000C0: 1F 86 77 C9 CD BB 17 4F 06 00 60 69 0E 08 CD 64 ..w....O..`i...d
0000D0: 1D E5 CD BB 17 E1 CD 56 1D C9 CD 5B 16 32 BA 1F .......V...[.2..
0000E0: 4F 3E 01 B9 DA 32 18 3A BA 1F D6 01 D6 01 9F 21 O>...2.:.......!
0000F0: 58 1F A6 1F DA 1C 18 21 BB 1F 36 01 3A 9C 1E 21 X......!..6.:..!
000100: BB 1F BE DA 1C 18 3A BB 1F 3D 4F 06 00 21 4C 1E ......:..=O..!L.
000110: 09 4E CD 45 0E 21 BB 1F 34 C2 FC 17 0E 0D CD 45 .N.E.!..4......E
000120: 0E 0E 0A CD 45 0E 3A BA 1F FE 01 C2 2F 18 C9 C3 ....E.:...../...
000130: DA 17 CD 2E 08 2A 9C 1E 26 00 01 4C 1E 09 36 24 .....*..&..L..6$
000140: 01 4C 1E CD 39 08 01 6B 03 CD 39 08 CD 2E 08 CD .L..9..k..9.....
000150: 13 08 FE 1A C2 58 18 C9 C3 DA 17 C9 01 8F 03 CD .....X..........
000160: AF 09 C9 2A 4B 1E 4D CD 5E 08 11 9E 03 01 30 1E ...*K.M.^.....0.
000170: CD FD 15 32 05 1E 01 30 1E C5 1E 03 01 A4 1F CD ...2...0........
000180: 18 0A 3A 30 1E E6 7F 32 30 1E 3A 31 1E E6 7F 32 ..:0...20.:1...2
000190: 31 1E 01 A2 03 CD EA 15 01 27 1E CD B3 08 01 27 1........'.....'
0001A0: 1E CD E3 08 3A AE 1E FE FF C2 B2 18 01 A5 03 CD ....:...........
0001B0: AF 09 21 47 1E 36 00 21 00 00 22 A1 1E C9 21 FF ..!G.6.!.."...!.
0001C0: FF 22 9F 1E CD 37 09 2A 03 1E 4D CD 5E 08 01 06 ."...7.*..M.^...
0001D0: 1E CD 6E 08 CD 2F 09 3A 61 1F 2F F5 3A 10 1E 07 ..n../.:a./.:...
0001E0: C1 48 A1 1F D2 EC 18 21 AE 1E 36 FF 3A AE 1E FE .H.....!..6.:...
0001F0: FF C2 FA 18 01 B8 03 CD AF 09 21 26 1E 36 00 11 ..........!&.6..
Size : 512 (Real : 512)
000000: 9F 2F C1 48 A1 1F D2 11 0F 3A 8C 1F E6 5F 32 8C ./.H.....:..._2.
000010: 1F 3A 8C 1F C9 21 8D 1F 71 3A 8D 1F D6 41 9F 2F .:...!..q:...A./
000020: F5 3E 5A 21 8D 1F 96 9F 2F C1 48 A1 1F D2 38 0F .>Z!..../.H...8.
000030: 3A 8D 1F F6 20 32 8D 1F 3A 8D 1F C9 3A A4 1E 3D :... 2..:...:..=
000040: 4F 3E 05 B9 DA 6D 0F 3A 57 1F 21 51 1F B6 F5 CD O>...m.:W.!Q....
000050: 7D 09 C1 48 A1 1F D2 6D 0F CD 13 08 FE 1A C2 64 }..H...m.......d
000060: 0F 3E 1A C9 01 D7 02 CD 39 08 3E 13 C9 21 90 1F .>......9.>..!..
000070: 36 01 3A 03 00 32 8E 1F 2A A4 1E 4D 06 00 21 45 6.:..2..*..M..!E
000080: 10 09 09 5E 23 56 EB E9 01 FD 1D 11 9D 1E CD 8E ...^#V..........
000090: 1D DA 97 0F CD 4F 0A 2A 9D 1E EB 2A 01 1E 19 7E .....O.*...*...~
0000A0: 32 8F 1F 2A 9D 1E 23 22 9D 1E C3 6D 10 CD F3 07 2..*..#"...m....
0000B0: 32 8F 1F C3 6D 10 CD 96 09 32 8F 1F C3 6D 10 21 2...m....2...m.!
0000C0: 03 00 36 04 C3 E0 0F C3 6D 10 21 03 00 36 08 C3 ..6.....m.!..6..
0000D0: E0 0F C3 6D 10 21 03 00 36 0C C3 E0 0F C3 6D 10 ...m.!..6.....m.
0000E0: 11 00 00 0E 03 CD 05 00 E6 7F 32 8F 1F C3 6D 10 ..........2...m.
0000F0: C3 08 10 C3 08 10 C3 08 10 C3 08 10 C3 08 10 C3 ................
000100: 08 10 C3 08 10 C3 08 10 01 E9 02 CD AF 09 C3 6D ...............m
000110: 10 21 03 00 36 00 C3 32 10 C3 6D 10 21 03 00 36 .!..6..2..m.!..6
000120: 01 C3 32 10 C3 6D 10 21 03 00 36 03 C3 32 10 C3 ..2..m.!..6..2..
000130: 6D 10 21 90 1F 36 00 11 00 00 0E 01 CD 05 00 32 m.!..6.........2
000140: 8F 1F C3 6D 10 88 0F AD 0F B6 0F BF 0F CA 0F D5 ...m............
000150: 0F E0 0F F0 0F F3 0F F6 0F F9 0F FC 0F FF 0F 02 ................
000160: 10 05 10 08 10 11 10 1C 10 27 10 32 10 3A 8E 1F .........'.2.:..
000170: 32 03 00 3A 54 1F 1F D2 92 10 3A A3 1E 32 8E 1F 2..:T.....:..2..
000180: 21 A3 1E 36 13 2A 8F 1F 4D CD 45 0E 3A 8E 1F 32 !..6.*..M.E.:..2
000190: A3 1E 3A 90 1F 1F D2 DC 10 3A 04 1E 1F D2 B2 10 ..:......:......
0001A0: 3A A7 1E 3C 32 A7 1E D6 00 D6 01 9F 32 90 1F C3 :..<2.......2...
0001B0: BD 10 3A 8F 1F D6 0A D6 01 9F 32 90 1F 3A 90 1F ..:.......2..:..
0001C0: 1F D2 DC 10 CD 7D 09 1F D2 DC 10 CD 13 08 FE 1A .....}..........
0001D0: C2 D6 10 3E 1A C9 01 00 03 CD AF 09 3A 69 1F 1F ...>........:i..
0001E0: D2 EB 10 3A 8F 1F E6 7F 32 8F 1F 3A 64 1F 1F D2 ...:....2..:d...
0001F0: FA 10 2A 8F 1F 4D CD EE 0E C9 3A 5B 1F 1F D2 09 ..*..M....:[....
Size : 512 (Real : 512)
000000: C0 03 01 0F 1E CD FD 15 32 04 1E 2A FD 1D 22 9D ........2..*..".
000010: 1E C9 3E 00 21 62 1F BE D2 21 19 01 C4 03 CD AF ..>.!b...!......
000020: 09 3E 00 21 60 1F BE D2 30 19 01 D4 03 CD AF 09 .>.!`...0.......
000030: C9 21 BC 1F 71 3A BC 1F 1F D2 45 19 3A 13 1E 32 .!..q:....E.:..2
000040: 34 1E C3 4A 19 21 34 1E 36 00 2A A1 1E 7D E6 7F 4..J.!4.6.*..}..
000050: FE 00 CA 61 19 21 34 1E 34 0E 1A CD 45 0E C3 4A ...a.!4.4...E..J
000060: 19 CD 12 19 CD C8 0A 2A 4B 1E 4D CD 5E 08 01 27 .......*K.M.^..'
000070: 1E CD 81 08 3A AE 1E FE FF C2 82 19 01 E3 03 CD ....:...........
000080: AF 09 01 A4 1F CD EA 15 21 33 1E 36 00 01 27 1E ........!3.6..'.
000090: CD 6E 08 3A AE 1E FE FF CA E9 19 3A 30 1E 07 1F .n.:.......:0...
0000A0: D2 E3 19 3A 66 1F 1F DA D5 19 01 01 04 CD 39 08 ...:f.........9.
0000B0: CD 13 08 4F CD EE 0E FE 59 CA D2 19 01 23 04 CD ...O....Y....#..
0000C0: 39 08 CD 2E 08 01 33 04 CD EA 15 01 27 1E CD B3 9.....3.....'...
0000D0: 08 C9 CD 2E 08 3A 30 1E E6 7F 32 30 1E 01 27 1E .....:0...20..'.
0000E0: CD 06 09 01 27 1E CD B3 08 01 27 1E C5 1E 10 01 ....'.....'.....
0000F0: 37 1E CD 18 0A 01 36 04 CD EA 15 01 27 1E CD F6 7.....6.....'...
000100: 08 C9 0E 07 21 FF 1D CD 6A 1D 3E FF CD 41 1D 2B ....!...j.>..A.+
000110: EB 21 FB 1D 73 C9 21 CA 1F 22 01 1E 01 00 40 11 .!..s.!.."....@.
000120: FF 1D CD 93 1D DA 31 1A 21 80 7F 22 FF 1D C3 3C ......1.!.."...<
000130: 1A 2A FD 1D EB 2A FF 1D 19 22 FF 1D CD 02 1A C9 .*...*..."......
000140: 01 CA 1F 11 06 00 CD 93 1D 0E 01 E5 CD 6E 1D 01 .............n..
000150: CA 1F 09 22 01 1E 11 00 FF E1 CD 44 1D 0E 01 CD ...".......D....
000160: 6E 1D 22 FD 1D 22 FF 1D CD 02 1A C9 3A A4 1E D6 n.".."......:...
000170: 00 C6 FF 9F 21 51 1F A6 32 BD 1F 1F D2 82 1A CD ....!Q..2.......
000180: 16 1A 3A 58 1F 21 57 1F B6 1F D2 93 1A CD DA 17 ..:X.!W.........
000190: C3 A4 1A CD 3A 16 1F DA A4 1A 2A A8 1E 4D CD 45 ....:.....*..M.E
0001A0: 0E C3 93 1A 3A BD 1F 1F D2 B1 1A CD 18 0E CD 40 ....:..........@
0001B0: 1A C9 CD 40 1A 3A 4F 1F 32 4D 1F CD 63 18 CD BE ...@.:O.2M..c...
0001C0: 18 21 BE 1F 36 01 23 36 00 3E 19 21 BF 1F BE DA .!..6.#6.>.!....
0001D0: 29 1B 2A BF 1F 26 00 01 50 1F 09 7E FE 00 CA 22 ).*..&..P..~..."
0001E0: 1B 3A BF 1F D6 06 D6 01 9F F5 3A BF 1F D6 0E D6 .:........:.....
0001F0: 01 9F C1 48 B1 F5 3A BF 1F D6 11 D6 01 9F C1 48 ...H..:........H
Size : 512 (Real : 512)
000000: 11 2A 8F 1F 4D CD 15 0F C9 3A 8F 1F C9 3E 00 21 .*..M....:...>.!
000010: FA 1D BE D2 28 11 3A FA 1D 3D 32 FA 1D FE 01 C2 ....(.:..=2.....
000020: 25 11 3E 0A C9 3E 1A C9 3E 00 21 F8 1D BE D2 46 %.>..>..>.!....F
000030: 11 21 F8 1D 35 2B 4E 06 00 21 CD 1E 09 7E 32 91 .!..5+N..!...~2.
000040: 1F 21 F7 1D 34 C9 CD 3C 0F 32 91 1F FE 1A C2 54 .!..4..<.2.....T
000050: 11 3E 1A C9 3E 00 21 62 1F BE D2 7D 11 2A 62 1F .>..>.!b...}.*b.
000060: 4D CD AD 11 1F D2 7A 11 3A 62 1F 32 F7 1D 21 62 M.....z.:b.2..!b
000070: 1F 36 00 3A F9 1D 3C 32 F8 1D C3 A9 11 3E 00 21 .6.:..<2.....>.!
000080: 60 1F BE D2 A5 11 2A 60 1F 4D CD AD 11 1F D2 9E `.....*`.M......
000090: 11 21 60 1F 36 00 21 FA 1D 36 02 3E 0D C9 3A 91 .!`.6.!..6.>..:.
0000A0: 1F C9 C3 A9 11 3A 91 1F C9 C3 28 11 C9 21 92 1F .....:....(..!..
0000B0: 71 3A F9 1D 21 92 1F 86 77 4F 06 00 21 CD 1E 09 q:..!...wO..!...
0000C0: 7E 32 93 1F FE 1A C2 D9 11 2A 92 1F 26 00 01 CD ~2.......*..&...
0000D0: 1E 09 3A 91 1F 77 3E 01 C9 21 91 1F 3A 93 1F BE ..:..w>..!..:...
0000E0: C2 EA 11 21 F9 1D 34 C3 EF 11 21 F9 1D 36 00 3E ...!..4...!..6.>
0000F0: 00 C9 3A 4E 1F 3C 32 4E 1F 21 CC 1E BE DA 03 12 ..:N.<2N.!......
000100: 3E 0D C9 2A 4E 1F 26 00 01 CD 1E 09 4E CD EE 0E >..*N.&.....N...
000110: C9 CD F2 11 32 A8 1E FE 20 C2 1F 12 C3 11 12 C9 ....2... .......
000120: 21 96 1F 70 2B 71 21 F5 1D 36 00 21 A9 1E 36 00 !..p+q!..6.!..6.
000130: 2B 36 20 21 AA 1E 36 00 3A AA 1E FE 20 D2 53 12 +6 !..6.:... .S.
000140: 3A AA 1E FE 0B C2 4D 12 21 A8 1E 36 00 CD 67 14 :.....M.!..6..g.
000150: C3 38 12 CD 11 12 3A 4E 1F 32 4D 1F 2A A8 1E 4D .8....:N.2M.*..M
000160: CD 38 14 1F D2 70 12 CD C1 15 21 A9 1E 36 01 C9 .8...p....!..6..
000170: 21 94 1F 36 00 21 97 1F 36 00 3E 19 21 97 1F BE !..6.!..6.>.!...
000180: DA 95 12 2A 97 1F 26 00 01 50 1F 09 36 00 21 97 ...*..&..P..6.!.
000190: 1F 34 C2 7A 12 21 F6 1D 36 00 21 F8 1D 36 00 23 .4.z.!..6.!..6.#
0001A0: 36 00 23 36 00 21 AA 1E 36 00 2A A8 1E 4D CD 38 6.#6.!..6.*..M.8
0001B0: 14 1F DA DA 12 3A AA 1E FE 08 DA BE 12 C9 3A A8 .....:........:.
0001C0: 1E FE 2A C2 CE 12 0E 08 CD 87 14 C3 D1 12 CD 67 ..*............g
0001D0: 14 CD F2 11 32 A8 1E C3 AA 12 3A A8 1E FE 3A C2 ....2.....:...:.
0001E0: BF 13 3A 94 1F FE 00 CA EB 12 C9 3A AA 1E FE 01 ..:........:....
0001F0: C2 2C 13 0E 01 CD A1 14 D6 41 3C 32 94 1F 4F 3E .,.......A<2..O>
Size : 512 (Real : 512)
000000: B1 F5 3A BF 1F D6 15 D6 01 9F C1 48 B1 F5 3A BF ..:........H..:.
000010: 1F D6 16 D6 01 9F C1 48 B1 1F DA 22 1B 21 BE 1F .......H...".!..
000020: 36 00 21 BF 1F 34 C2 C9 1A 3A BE 1F 1F D2 5F 1B 6.!..4...:...._.
000030: CD 16 1A CD 6A 1B 1F DA 59 1B CD 4F 0A CD 6A 1B ....j...Y..O..j.
000040: 1F D2 4D 1B 2A 9F 1E 22 A1 1E C3 53 1B 2A FF 1D ..M.*.."...S.*..
000050: 22 A1 1E CD C8 0A C3 33 1B CD 40 1A C3 62 1B CD "......3..@..b..
000060: 6C 1A 2A BE 1F 4D CD 31 19 C9 01 FF FF 11 9F 1E l.*..M.1........
000070: CD 93 1D B5 C6 FF 9F C9 21 00 00 22 C0 1F 22 C4 ........!.."..".
000080: 1F CD 37 09 2A 03 1E 4D CD 5E 08 01 80 00 CD 86 ..7.*..M.^......
000090: 09 01 5C 00 CD 94 08 21 00 00 22 C2 1F 3A AE 1E ..\....!.."..:..
0000A0: D6 FF C6 FF 9F 01 C0 1F 11 C2 1F F5 CD 8E 1D 9F ................
0000B0: C1 48 A1 1F D2 C4 1B 2A C2 1F 23 22 C2 1F CD A7 .H.....*..#"....
0000C0: 08 C3 9D 1B CD 2F 09 3A AE 1E FE FF C2 E5 1B 3E ...../.:.......>
0000D0: 00 11 C4 1F CD 9B 1D B5 C2 E1 1B 01 39 04 CD AF ............9...
0000E0: 09 CD 2E 08 C9 2A C2 1F 23 22 C0 1F 3A AE 1E E6 .....*..#"..:...
0000F0: 03 87 87 87 87 87 5F 16 00 21 80 00 19 E5 1E 10 ......_..!......
000100: 01 27 1E CD 18 0A 21 27 1E 36 00 21 33 1E 36 00 .'....!'.6.!3.6.
000110: 01 27 1E C5 1E 10 01 06 1E CD 18 0A 3A 31 1E 07 .'..........:1..
000120: 2F 21 61 1F B6 1F D2 45 1C 2A C4 1F 23 22 C4 1F /!a....E.*..#"..
000130: 3E 01 CD 7A 1D B5 C2 3F 1C 01 43 04 CD 39 08 CD >..z...?..C..9..
000140: 49 1C CD B2 1A C3 81 1B C9 CD 2E 08 21 C6 1F 36 I...........!..6
000150: 01 3E 0B 21 C6 1F BE DA 87 1C 2A C6 1F 26 00 01 .>.!......*..&..
000160: 27 1E 09 7E 32 C7 1F FE 20 CA 80 1C 3A C6 1F FE '..~2... ...:...
000170: 09 C2 79 1C 0E 2E CD 1C 08 2A C7 1F 4D CD 1C 08 ..y......*..M...
000180: 21 C6 1F 34 C2 51 1C C9 3E 00 21 94 1F BE D2 9B !..4.Q..>.!.....
000190: 1C 3A 94 1F 3D 32 03 1E C3 A1 1C 3A FC 1D 32 03 .:..=2.....:..2.
0001A0: 1E C9 3A F6 1D 1F D2 AC 1C CD 5C 18 3E 00 21 94 ..:.......\.>.!.
0001B0: 1F BE D2 BF 1C 3A 94 1F 3D 32 4B 1E C3 C5 1C 3A .....:..=2K....:
0001C0: FC 1D 32 4B 1E C9 21 C0 1E 3A C1 1E BE CA D1 1C ..2K..!..:......
0001D0: C9 21 03 1E 3A 4B 1E BE C2 DE 1C CD 5C 18 C9 CD .!..:K......\...
0001E0: 11 12 3A A8 1E FE 0D CA ED 1C CD 5C 18 C9 21 C9 ..:........\..!.
0001F0: 1F 70 2B 71 CD 88 1C CD DF 1C 01 06 1E C5 2A C8 .p+q..........*.
Size : 512 (Real : 512)
000000: 1A B9 D2 06 13 C9 CD 11 12 2A A8 1E 4D CD 38 14 .........*..M.8.
000010: 1F D2 29 13 3A A8 1E FE 5B C2 1F 13 CD B1 14 21 ..).:...[......!
000020: 4E 1F 35 21 A9 1E 36 04 C9 C3 B1 13 3A AA 1E FE N.5!..6.....:...
000030: 03 CA 35 13 C9 21 A1 1F 36 FF 23 36 00 3E 14 21 ..5..!..6.#6.>.!
000040: A2 1F BE DA B0 13 21 A0 1F 36 00 3A A0 1F 3C 32 ......!..6.:..<2
000050: A0 1F 4F 3E 03 91 9F 2F F5 3A A0 1F 21 A1 1F 86 ..O>.../.:..!...
000060: 4F 06 00 21 54 02 09 E5 2A A0 1F 4D CD A1 14 E1 O..!T...*..M....
000070: 96 D6 01 9F C1 48 A1 1F D2 7E 13 C3 4B 13 3A A0 .....H...~..K.:.
000080: 1F FE 04 C2 A1 13 21 A9 1E 36 03 CD F2 11 FE 5B ......!..6.....[
000090: C2 96 13 CD B1 14 21 4E 1F 35 3A A2 1F 32 A8 1E ......!N.5:..2..
0000A0: C9 3A A1 1F C6 03 32 A1 1F 21 A2 1F 34 C2 3D 13 .:....2..!..4.=.
0000B0: C9 3A A8 1E FE 5B C2 BC 13 CD B1 14 C3 34 14 3A .:...[.......4.:
0000C0: AA 1E FE 00 C2 C8 13 C9 21 AA 1E 36 08 3A A8 1E ........!..6.:..
0000D0: FE 2E C2 02 14 CD F2 11 32 A8 1E 4F CD 38 14 1F ........2..O.8..
0000E0: DA 02 14 3A AA 1E FE 0B DA EC 13 C9 3A A8 1E FE ...:........:...
0000F0: 2A C2 FC 13 0E 0B CD 87 14 C3 FF 13 CD 67 14 C3 *............g..
000100: D5 13 3A A8 1E FE 5B C2 0D 14 CD B1 14 21 4E 1F ..:...[......!N.
000110: 35 21 A9 1E 36 02 3A 94 1F FE 00 C2 25 14 3A FC 5!..6.:.....%.:.
000120: 1D 3C 32 94 1F 2A 95 1F 36 00 01 20 00 2A 95 1F .<2..*..6.. .*..
000130: 09 36 00 C9 C3 A5 12 C9 21 9A 1F 71 21 9B 1F 36 .6......!..q!..6
000140: 00 3E 0A 21 9B 1F BE DA 64 14 2A 9B 1F 26 00 01 .>.!....d.*..&..
000150: 49 02 09 3A 9A 1F BE C2 5D 14 3E 01 C9 21 9B 1F I..:....].>..!..
000160: 34 C2 41 14 3E 00 C9 3A AA 1E 3C 32 AA 1E 4F 06 4.A.>..:..<2..O.
000170: 00 2A 95 1F 09 3A A8 1E 77 3A A8 1E FE 3F C2 86 .*...:..w:...?..
000180: 14 21 F5 1D 36 01 C9 21 9C 1F 71 21 A8 1E 36 3F .!..6..!..q!..6?
000190: 21 9C 1F 3A AA 1E BE D2 A0 14 CD 67 14 C3 90 14 !..:.......g....
0001A0: C9 21 9D 1F 71 2A 9D 1F 26 00 EB 2A 95 1F 19 7E .!..q*..&..*...~
0001B0: C9 21 F6 1D 36 01 3A C0 1E 32 C1 1E CD F2 11 32 .!..6.:..2.....2
0001C0: A8 1E 3A A8 1E D6 0D D6 01 9F F5 3A A8 1E D6 5D ..:........:...]
0001D0: D6 01 9F C1 48 B1 1F DA BA 15 3A A8 1E D6 41 32 ....H.....:...A2
0001E0: 9E 1F 4F 3E 19 B9 D2 03 15 3A A8 1E FE 20 C2 FA ..O>.....:... ..
0001F0: 14 CD F2 11 32 A8 1E C3 00 15 01 08 03 CD AF 09 ....2...........
Size : 512 (Real : 512)
000000: 1F 44 4D 1E 21 CD 18 0A CD C6 1C C9 01 06 1E CD .DM.!...........
000010: 20 12 3A A9 1E D6 01 D6 01 9F F5 3A A8 1E D6 3D .:........:...=
000020: D6 01 9F C1 48 A1 1F DA 2D 1D CD 5C 18 3A 4E 1F ....H...-..\.:N.
000030: 32 4F 1F C9 EB 5F 16 00 EB 1A 85 6F 13 1A 8C 67 2O..._.....o...g
000040: C9 5F 16 00 7B A5 6F 7A A4 67 C9 5E 23 56 EB 29 ._..{.oz.g.^#V.)
000050: E5 29 29 C1 09 C9 5F 16 00 7B B5 6F 7A B4 67 C9 .))..._..{.oz.g.
000060: 5E 23 56 EB 29 0D C2 64 1D C9 5E 23 56 EB 7C B7 ^#V.)..d..^#V.|.
000070: 1F 67 7D 1F 6F 0D C2 6E 1D C9 5F 16 00 7B 95 6F .g}.o..n.._..{.o
000080: 7A 9C 67 C9 4F 06 00 7B 91 6F 7A 98 67 C9 69 60 z.g.O..{.oz.g.i`
000090: 4E 23 46 1A 91 6F 13 1A 98 67 C9 6F 26 00 1A 95 N#F..o...g.o&...
0000A0: 6F 13 1A 9C 67 C9 06 0C 48 0D C2 A9 1D 3D C2 A8 o...g...H....=..
0000B0: 1D C9 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000100: 01 27 1E CD 18 0A 21 27 1E 36 00 21 33 1E 36 00 .'....!'.6.!3.6.
000110: 01 27 1E C5 1E 10 01 06 1E CD 18 0A 3A 31 1E 07 .'..........:1..
000120: 2F 21 61 1F B6 1F D2 45 1C 2A C4 1F 23 22 C4 1F /!a....E.*..#"..
000130: 3E 01 CD 7A 1D B5 C2 3F 1C 01 43 04 CD 39 08 CD >..z...?..C..9..
000140: 49 1C CD B2 1A C3 81 1B C9 CD 2E 08 21 C6 1F 36 I...........!..6
000150: 01 3E 0B 21 C6 1F BE DA 87 1C 2A C6 1F 26 00 01 .>.!......*..&..
000160: 27 1E 09 7E 32 C7 1F FE 20 CA 80 1C 3A C6 1F FE '..~2... ...:...
000170: 09 C2 79 1C 0E 2E CD 1C 08 2A C7 1F 4D CD 1C 08 ..y......*..M...
000180: 21 C6 1F 34 C2 51 1C C9 3E 00 21 94 1F BE D2 9B !..4.Q..>.!.....
000190: 1C 3A 94 1F 3D 32 03 1E C3 A1 1C 3A FC 1D 32 03 .:..=2.....:..2.
0001A0: 1E C9 3A F6 1D 1F D2 AC 1C CD 5C 18 3E 00 21 94 ..:.......\.>.!.
0001B0: 1F BE D2 BF 1C 3A 94 1F 3D 32 4B 1E C3 C5 1C 3A .....:..=2K....:
0001C0: FC 1D 32 4B 1E C9 21 C0 1E 3A C1 1E BE CA D1 1C ..2K..!..:......
0001D0: C9 21 03 1E 3A 4B 1E BE C2 DE 1C CD 5C 18 C9 CD .!..:K......\...
0001E0: 11 12 3A A8 1E FE 0D CA ED 1C CD 5C 18 C9 21 C9 ..:........\..!.
0001F0: 1F 70 2B 71 CD 88 1C CD DF 1C 01 06 1E C5 2A C8 .p+q..........*.
Size : 512 (Real : 512)
000000: 0A 43 31 20 20 20 20 50 4F 50 20 42 0D 0A 44 31 .C1 POP B..D1
000010: 20 20 20 20 50 4F 50 20 44 0D 0A 45 31 20 20 20 POP D..E1
000020: 20 50 4F 50 20 48 0D 0A 46 31 20 20 20 20 50 4F POP H..F1 PO
000030: 50 20 50 53 57 0D 0A 45 35 20 20 20 20 50 55 53 P PSW..E5 PUS
000040: 48 20 48 0D 0A 44 35 20 20 20 20 50 55 53 48 20 H H..D5 PUSH
000050: 44 0D 0A 43 35 20 20 20 20 50 55 53 48 20 42 0D D..C5 PUSH B.
000060: 0A 46 35 20 20 20 20 50 55 53 48 20 50 53 57 0D .F5 PUSH PSW.
000070: 0A 31 37 20 20 20 20 52 41 4C 0D 0A 31 46 20 20 .17 RAL..1F
000080: 20 20 52 41 52 0D 0A 44 38 20 20 20 20 52 43 0D RAR..D8 RC.
000090: 0A 43 39 20 20 20 20 52 45 54 0D 0A 32 30 20 20 .C9 RET..20
0000A0: 20 20 52 49 4D 0D 0A 30 37 20 20 20 20 52 4C 43 RIM..07 RLC
0000B0: 0D 0A 46 38 20 20 20 20 52 4D 0D 0A 44 30 20 20 ..F8 RM..D0
0000C0: 20 20 52 4E 43 0D 0A 43 30 20 20 20 20 52 4E 5A RNC..C0 RNZ
0000D0: 0D 0A 46 30 20 20 20 20 52 50 0D 0A 45 38 20 20 ..F0 RP..E8
0000E0: 20 20 52 50 45 0D 0A 45 30 20 20 20 20 52 50 4F RPE..E0 RPO
0000F0: 0D 0A 30 46 20 20 20 20 52 52 43 0D 0A 43 37 20 ..0F RRC..C7
000100: 20 20 20 52 53 54 20 30 0D 0A 44 37 20 20 20 20 RST 0..D7
000110: 52 53 54 20 31 36 0D 0A 44 46 20 20 20 20 52 53 RST 16..DF RS
000120: 54 20 32 34 0D 0A 45 37 20 20 20 20 52 53 54 20 T 24..E7 RST
000130: 33 32 0D 0A 45 46 20 20 20 20 52 53 54 20 34 30 32..EF RST 40
000140: 0D 0A 46 37 20 20 20 20 52 53 54 20 34 38 0D 0A ..F7 RST 48..
000150: 46 46 20 20 20 20 52 53 54 20 35 36 0D 0A 43 46 FF RST 56..CF
000160: 20 20 20 20 52 53 54 20 38 0D 0A 43 38 20 20 20 RST 8..C8
000170: 20 52 5A 0D 0A 39 38 20 20 20 20 53 42 42 20 42 RZ..98 SBB B
000180: 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 4D 7C 41 0D 0A |C|D|E|H|L|M|A..
000190: 44 45 5F 78 31 20 53 42 49 20 78 0D 0A 32 32 5F DE_x1 SBI x..22_
0001A0: 78 32 20 53 48 4C 44 20 78 0D 0A 33 30 20 20 20 x2 SHLD x..30
0001B0: 20 53 49 4D 0D 0A 46 39 20 20 20 20 53 50 48 4C SIM..F9 SPHL
0001C0: 0D 0A 33 32 5F 78 32 20 53 54 41 20 78 0D 0A 30 ..32_x2 STA x..0
0001D0: 32 20 20 20 20 53 54 41 58 20 42 0D 0A 31 32 20 2 STAX B..12
0001E0: 20 20 20 53 54 41 58 20 44 0D 0A 33 37 20 20 20 STAX D..37
0001F0: 20 53 54 43 0D 0A 39 30 20 20 20 20 53 55 42 20 STC..90 SUB
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 42 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 4D 7C 41 0D B|C|D|E|H|L|M|A.
000010: 0A 44 36 5F 78 31 20 53 55 49 20 78 0D 0A 45 42 .D6_x1 SUI x..EB
000020: 20 20 20 20 58 43 48 47 0D 0A 41 38 20 20 20 20 XCHG..A8
000030: 58 52 41 20 42 7C 43 7C 44 7C 45 7C 48 7C 4C 7C XRA B|C|D|E|H|L|
000040: 4D 7C 41 0D 0A 45 45 5F 78 31 20 58 52 49 20 78 M|A..EE_x1 XRI x
000050: 0D 0A 45 33 20 20 20 20 58 54 48 4C 0D 0A 1A 1A ..E3 XTHL....
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 20 20 52 41 52 0D 0A 44 38 20 20 20 20 52 43 0D RAR..D8 RC.
000090: 0A 43 39 20 20 20 20 52 45 54 0D 0A 32 30 20 20 .C9 RET..20
0000A0: 20 20 52 49 4D 0D 0A 30 37 20 20 20 20 52 4C 43 RIM..07 RLC
0000B0: 0D 0A 46 38 20 20 20 20 52 4D 0D 0A 44 30 20 20 ..F8 RM..D0
0000C0: 20 20 52 4E 43 0D 0A 43 30 20 20 20 20 52 4E 5A RNC..C0 RNZ
0000D0: 0D 0A 46 30 20 20 20 20 52 50 0D 0A 45 38 20 20 ..F0 RP..E8
0000E0: 20 20 52 50 45 0D 0A 45 30 20 20 20 20 52 50 4F RPE..E0 RPO
0000F0: 0D 0A 30 46 20 20 20 20 52 52 43 0D 0A 43 37 20 ..0F RRC..C7
000100: 20 20 20 52 53 54 20 30 0D 0A 44 37 20 20 20 20 RST 0..D7
000110: 52 53 54 20 31 36 0D 0A 44 46 20 20 20 20 52 53 RST 16..DF RS
000120: 54 20 32 34 0D 0A 45 37 20 20 20 20 52 53 54 20 T 24..E7 RST
000130: 33 32 0D 0A 45 46 20 20 20 20 52 53 54 20 34 30 32..EF RST 40
000140: 0D 0A 46 37 20 20 20 20 52 53 54 20 34 38 0D 0A ..F7 RST 48..
000150: 46 46 20 20 20 20 52 53 54 20 35 36 0D 0A 43 46 FF RST 56..CF
000160: 20 20 20 20 52 53 54 20 38 0D 0A 43 38 20 20 20 RST 8..C8
000170: 20 52 5A 0D 0A 39 38 20 20 20 20 53 42 42 20 42 RZ..98 SBB B
000180: 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 4D 7C 41 0D 0A |C|D|E|H|L|M|A..
000190: 44 45 5F 78 31 20 53 42 49 20 78 0D 0A 32 32 5F DE_x1 SBI x..22_
0001A0: 78 32 20 53 48 4C 44 20 78 0D 0A 33 30 20 20 20 x2 SHLD x..30
0001B0: 20 53 49 4D 0D 0A 46 39 20 20 20 20 53 50 48 4C SIM..F9 SPHL
0001C0: 0D 0A 33 32 5F 78 32 20 53 54 41 20 78 0D 0A 30 ..32_x2 STA x..0
0001D0: 32 20 20 20 20 53 54 41 58 20 42 0D 0A 31 32 20 2 STAX B..12
0001E0: 20 20 20 53 54 41 58 20 44 0D 0A 33 37 20 20 20 STAX D..37
0001F0: 20 53 54 43 0D 0A 39 30 20 20 20 20 53 55 42 20 STC..90 SUB
Size : 512 (Real : 512)
000000: 43 45 5F 78 31 20 41 43 49 20 78 0D 0A 38 38 20 CE_x1 ACI x..88
000010: 20 20 20 41 44 43 20 42 7C 43 7C 44 7C 45 7C 48 ADC B|C|D|E|H
000020: 7C 4C 7C 4D 7C 41 0D 0A 38 30 20 20 20 20 41 44 |L|M|A..80 AD
000030: 44 20 42 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 4D 7C D B|C|D|E|H|L|M|
000040: 41 0D 0A 43 36 5F 78 31 20 41 44 49 20 78 0D 0A A..C6_x1 ADI x..
000050: 41 30 20 20 20 20 41 4E 41 20 42 7C 43 7C 44 7C A0 ANA B|C|D|
000060: 45 7C 48 7C 4C 7C 4D 7C 41 0D 0A 45 36 5F 78 31 E|H|L|M|A..E6_x1
000070: 20 41 4E 49 20 78 0D 0A 43 44 5F 78 32 20 43 41 ANI x..CD_x2 CA
000080: 4C 4C 20 78 0D 0A 44 43 5F 78 32 20 43 43 20 78 LL x..DC_x2 CC x
000090: 0D 0A 46 43 5F 78 32 20 43 4D 20 78 0D 0A 32 46 ..FC_x2 CM x..2F
0000A0: 20 20 20 20 43 4D 41 0D 0A 33 46 20 20 20 20 43 CMA..3F C
0000B0: 4D 43 0D 0A 42 38 20 20 20 20 43 4D 50 20 42 7C MC..B8 CMP B|
0000C0: 43 7C 44 7C 45 7C 48 7C 4C 7C 4D 7C 41 0D 0A 44 C|D|E|H|L|M|A..D
0000D0: 34 5F 78 32 20 43 4E 43 20 78 0D 0A 43 34 5F 78 4_x2 CNC x..C4_x
0000E0: 32 20 43 4E 5A 20 78 0D 0A 46 34 5F 78 32 20 43 2 CNZ x..F4_x2 C
0000F0: 50 20 78 0D 0A 45 43 5F 78 32 20 43 50 45 20 78 P x..EC_x2 CPE x
000100: 0D 0A 46 45 5F 78 31 20 43 50 49 20 78 0D 0A 45 ..FE_x1 CPI x..E
000110: 34 5F 78 32 20 43 50 4F 20 78 0D 0A 43 43 5F 78 4_x2 CPO x..CC_x
000120: 32 20 43 5A 20 78 0D 0A 32 37 20 20 20 20 44 41 2 CZ x..27 DA
000130: 41 0D 0A 33 39 20 20 20 20 44 41 44 20 53 50 0D A..39 DAD SP.
000140: 0A 31 39 20 20 20 20 44 41 44 20 44 0D 0A 32 39 .19 DAD D..29
000150: 20 20 20 20 44 41 44 20 48 0D 0A 30 39 20 20 20 DAD H..09
000160: 20 44 41 44 20 42 0D 0A 33 44 20 20 20 20 44 43 DAD B..3D DC
000170: 52 20 41 0D 0A 30 35 20 20 20 20 44 43 52 20 42 R A..05 DCR B
000180: 0D 0A 30 44 20 20 20 20 44 43 52 20 43 0D 0A 31 ..0D DCR C..1
000190: 35 20 20 20 20 44 43 52 20 44 0D 0A 31 44 20 20 5 DCR D..1D
0001A0: 20 20 44 43 52 20 45 0D 0A 32 35 20 20 20 20 44 DCR E..25 D
0001B0: 43 52 20 48 0D 0A 32 44 20 20 20 20 44 43 52 20 CR H..2D DCR
0001C0: 4C 0D 0A 33 35 20 20 20 20 44 43 52 20 4D 0D 0A L..35 DCR M..
0001D0: 30 42 20 20 20 20 44 43 58 20 42 0D 0A 31 42 20 0B DCX B..1B
0001E0: 20 20 20 44 43 58 20 44 0D 0A 32 42 20 20 20 20 DCX D..2B
0001F0: 44 43 58 20 48 0D 0A 33 42 20 20 20 20 44 43 58 DCX H..3B DCX
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 20 53 50 0D 0A 46 33 20 20 20 20 44 49 0D 0A 46 SP..F3 DI..F
000010: 42 20 20 20 20 45 49 0D 0A 37 36 20 20 20 20 48 B EI..76 H
000020: 4C 54 0D 0A 44 42 5F 78 31 20 49 4E 20 78 0D 0A LT..DB_x1 IN x..
000030: 33 43 20 20 20 20 49 4E 52 20 41 0D 0A 30 34 20 3C INR A..04
000040: 20 20 20 49 4E 52 20 42 0D 0A 30 43 20 20 20 20 INR B..0C
000050: 49 4E 52 20 43 0D 0A 31 34 20 20 20 20 49 4E 52 INR C..14 INR
000060: 20 44 0D 0A 31 43 20 20 20 20 49 4E 52 20 45 0D D..1C INR E.
000070: 0A 32 34 20 20 20 20 49 4E 52 20 48 0D 0A 32 43 .24 INR H..2C
000080: 20 20 20 20 49 4E 52 20 4C 0D 0A 33 34 20 20 20 INR L..34
000090: 20 49 4E 52 20 4D 0D 0A 30 33 20 20 20 20 49 4E INR M..03 IN
0000A0: 58 20 42 0D 0A 31 33 20 20 20 20 49 4E 58 20 44 X B..13 INX D
0000B0: 0D 0A 32 33 20 20 20 20 49 4E 58 20 48 0D 0A 33 ..23 INX H..3
0000C0: 33 20 20 20 20 49 4E 58 20 53 50 0D 0A 44 41 5F 3 INX SP..DA_
0000D0: 78 32 20 4A 43 20 78 0D 0A 46 41 5F 78 32 20 4A x2 JC x..FA_x2 J
0000E0: 4D 20 78 0D 0A 43 33 5F 78 32 20 4A 4D 50 20 78 M x..C3_x2 JMP x
0000F0: 0D 0A 44 32 5F 78 32 20 4A 4E 43 20 78 0D 0A 43 ..D2_x2 JNC x..C
000100: 32 5F 78 32 20 4A 4E 5A 20 78 0D 0A 46 32 5F 78 2_x2 JNZ x..F2_x
000110: 32 20 4A 50 20 78 0D 0A 45 41 5F 78 32 20 4A 50 2 JP x..EA_x2 JP
000120: 45 20 78 0D 0A 45 32 5F 78 32 20 4A 50 4F 20 78 E x..E2_x2 JPO x
000130: 0D 0A 43 41 5F 78 32 20 4A 5A 20 78 0D 0A 33 41 ..CA_x2 JZ x..3A
000140: 5F 78 32 20 4C 44 41 20 78 0D 0A 30 41 20 20 20 _x2 LDA x..0A
000150: 20 4C 44 41 58 20 42 0D 0A 31 41 20 20 20 20 4C LDAX B..1A L
000160: 44 41 58 20 44 0D 0A 32 41 5F 78 32 20 4C 48 4C DAX D..2A_x2 LHL
000170: 44 20 78 0D 0A 32 31 5F 78 32 20 4C 58 49 20 48 D x..21_x2 LXI H
000180: 2C 78 0D 0A 31 31 5F 78 32 20 4C 58 49 20 44 2C ,x..11_x2 LXI D,
000190: 78 0D 0A 33 31 5F 78 32 20 4C 58 49 20 53 50 2C x..31_x2 LXI SP,
0001A0: 78 0D 0A 30 31 5F 78 32 20 4C 58 49 20 42 2C 78 x..01_x2 LXI B,x
0001B0: 0D 0A 37 43 20 20 20 20 4D 4F 56 20 41 2C 48 7C ..7C MOV A,H|
0001C0: 41 2C 4C 7C 41 2C 4D 7C 41 2C 41 0D 0A 35 34 20 A,L|A,M|A,A..54
0001D0: 20 20 20 4D 4F 56 20 44 2C 48 7C 44 2C 4C 7C 44 MOV D,H|D,L|D
0001E0: 2C 4D 7C 44 2C 41 0D 0A 35 44 20 20 20 20 4D 4F ,M|D,A..5D MO
0001F0: 56 20 45 2C 4C 7C 45 2C 4D 7C 45 2C 41 0D 0A 37 V E,L|E,M|E,A..7
Size : 512 (Real : 512)
000000: 44 44 5F 38 45 5F 78 31 20 20 20 20 41 44 43 20 DD_8E_x1 ADC
000010: 41 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 38 45 5F A,(IX+x)..FD_8E_
000020: 78 31 20 20 20 20 41 44 43 20 41 2C 28 49 59 2B x1 ADC A,(IY+
000030: 78 29 0D 0A 38 38 20 20 20 20 20 20 20 20 20 20 x)..88
000040: 41 44 43 20 41 2C 42 7C 41 2C 43 7C 41 2C 44 7C ADC A,B|A,C|A,D|
000050: 41 2C 45 7C 41 2C 48 7C 41 2C 4C 7C 41 2C 28 48 A,E|A,H|A,L|A,(H
000060: 4C 29 7C 41 2C 41 0D 0A 43 45 5F 78 31 20 20 20 L)|A,A..CE_x1
000070: 20 20 20 20 41 44 43 20 41 2C 78 0D 0A 45 44 5F ADC A,x..ED_
000080: 34 41 20 20 20 20 20 20 20 41 44 43 20 48 4C 2C 4A ADC HL,
000090: 42 43 0D 0A 45 44 5F 35 41 20 20 20 20 20 20 20 BC..ED_5A
0000A0: 41 44 43 20 48 4C 2C 44 45 0D 0A 45 44 5F 36 41 ADC HL,DE..ED_6A
0000B0: 20 20 20 20 20 20 20 41 44 43 20 48 4C 2C 48 4C ADC HL,HL
0000C0: 0D 0A 45 44 5F 37 41 20 20 20 20 20 20 20 41 44 ..ED_7A AD
0000D0: 43 20 48 4C 2C 53 50 0D 0A 44 44 5F 38 36 5F 78 C HL,SP..DD_86_x
0000E0: 31 20 20 20 20 41 44 44 20 41 2C 28 49 58 2B 78 1 ADD A,(IX+x
0000F0: 29 0D 0A 46 44 5F 38 36 5F 78 31 20 20 20 20 41 )..FD_86_x1 A
000100: 44 44 20 41 2C 28 49 59 2B 78 29 0D 0A 38 30 20 DD A,(IY+x)..80
000110: 20 20 20 20 20 20 20 20 20 41 44 44 20 41 2C 42 ADD A,B
000120: 7C 41 2C 43 7C 41 2C 44 7C 41 2C 45 7C 41 2C 48 |A,C|A,D|A,E|A,H
000130: 7C 41 2C 4C 7C 41 2C 28 48 4C 29 7C 41 2C 41 0D |A,L|A,(HL)|A,A.
000140: 0A 43 36 5F 78 31 20 20 20 20 20 20 20 41 44 44 .C6_x1 ADD
000150: 20 41 2C 78 0D 0A 30 39 20 20 20 20 20 20 20 20 A,x..09
000160: 20 20 41 44 44 20 48 4C 2C 42 43 0D 0A 31 39 20 ADD HL,BC..19
000170: 20 20 20 20 20 20 20 20 20 41 44 44 20 48 4C 2C ADD HL,
000180: 44 45 0D 0A 32 39 20 20 20 20 20 20 20 20 20 20 DE..29
000190: 41 44 44 20 48 4C 2C 48 4C 0D 0A 33 39 20 20 20 ADD HL,HL..39
0001A0: 20 20 20 20 20 20 20 41 44 44 20 48 4C 2C 53 50 ADD HL,SP
0001B0: 0D 0A 44 44 5F 30 39 20 20 20 20 20 20 20 41 44 ..DD_09 AD
0001C0: 44 20 49 58 2C 42 43 0D 0A 44 44 5F 31 39 20 20 D IX,BC..DD_19
0001D0: 20 20 20 20 20 41 44 44 20 49 58 2C 44 45 0D 0A ADD IX,DE..
0001E0: 44 44 5F 32 39 20 20 20 20 20 20 20 41 44 44 20 DD_29 ADD
0001F0: 49 58 2C 49 58 0D 0A 44 44 5F 33 39 20 20 20 20 IX,IX..DD_39
Size : 512 (Real : 512)
000000: 38 20 20 20 20 4D 4F 56 20 41 2C 42 7C 41 2C 43 8 MOV A,B|A,C
000010: 7C 41 2C 44 7C 41 2C 45 0D 0A 34 30 20 20 20 20 |A,D|A,E..40
000020: 4D 4F 56 20 42 2C 42 7C 42 2C 43 7C 42 2C 44 7C MOV B,B|B,C|B,D|
000030: 42 2C 45 7C 42 2C 48 7C 42 2C 4C 7C 42 2C 4D 7C B,E|B,H|B,L|B,M|
000040: 42 2C 41 0D 0A 34 38 20 20 20 20 4D 4F 56 20 43 B,A..48 MOV C
000050: 2C 42 7C 43 2C 43 7C 43 2C 44 7C 43 2C 45 7C 43 ,B|C,C|C,D|C,E|C
000060: 2C 48 7C 43 2C 4C 7C 43 2C 4D 7C 43 2C 41 0D 0A ,H|C,L|C,M|C,A..
000070: 35 30 20 20 20 20 4D 4F 56 20 44 2C 42 7C 44 2C 50 MOV D,B|D,
000080: 43 7C 44 2C 44 7C 44 2C 45 0D 0A 35 38 20 20 20 C|D,D|D,E..58
000090: 20 4D 4F 56 20 45 2C 42 7C 45 2C 43 7C 45 2C 44 MOV E,B|E,C|E,D
0000A0: 7C 45 2C 45 7C 45 2C 48 0D 0A 36 30 20 20 20 20 |E,E|E,H..60
0000B0: 4D 4F 56 20 48 2C 42 7C 48 2C 43 7C 48 2C 44 7C MOV H,B|H,C|H,D|
0000C0: 48 2C 45 7C 48 2C 48 7C 48 2C 4C 7C 48 2C 4D 7C H,E|H,H|H,L|H,M|
0000D0: 48 2C 41 0D 0A 36 38 20 20 20 20 4D 4F 56 20 4C H,A..68 MOV L
0000E0: 2C 42 7C 4C 2C 43 7C 4C 2C 44 7C 4C 2C 45 7C 4C ,B|L,C|L,D|L,E|L
0000F0: 2C 48 7C 4C 2C 4C 7C 4C 2C 4D 7C 4C 2C 41 0D 0A ,H|L,L|L,M|L,A..
000100: 37 37 20 20 20 20 4D 4F 56 20 4D 2C 41 0D 0A 37 77 MOV M,A..7
000110: 30 20 20 20 20 4D 4F 56 20 4D 2C 42 7C 4D 2C 43 0 MOV M,B|M,C
000120: 7C 4D 2C 44 7C 4D 2C 45 7C 4D 2C 48 7C 4D 2C 4C |M,D|M,E|M,H|M,L
000130: 0D 0A 33 45 5F 78 31 20 4D 56 49 20 41 2C 78 0D ..3E_x1 MVI A,x.
000140: 0A 30 36 5F 78 31 20 4D 56 49 20 42 2C 78 0D 0A .06_x1 MVI B,x..
000150: 30 45 5F 78 31 20 4D 56 49 20 43 2C 78 0D 0A 31 0E_x1 MVI C,x..1
000160: 36 5F 78 31 20 4D 56 49 20 44 2C 78 0D 0A 31 45 6_x1 MVI D,x..1E
000170: 5F 78 31 20 4D 56 49 20 45 2C 78 0D 0A 32 36 5F _x1 MVI E,x..26_
000180: 78 31 20 4D 56 49 20 48 2C 78 0D 0A 32 45 5F 78 x1 MVI H,x..2E_x
000190: 31 20 4D 56 49 20 4C 2C 78 0D 0A 33 36 5F 78 31 1 MVI L,x..36_x1
0001A0: 20 4D 56 49 20 4D 2C 78 0D 0A 30 30 20 20 20 20 MVI M,x..00
0001B0: 4E 4F 50 0D 0A 42 35 20 20 20 20 4F 52 41 20 4C NOP..B5 ORA L
0001C0: 7C 4D 7C 41 0D 0A 42 30 20 20 20 20 4F 52 41 20 |M|A..B0 ORA
0001D0: 42 7C 43 7C 44 7C 45 7C 48 0D 0A 46 36 5F 78 31 B|C|D|E|H..F6_x1
0001E0: 20 4F 52 49 20 78 0D 0A 44 33 5F 78 31 20 4F 55 ORI x..D3_x1 OU
0001F0: 54 20 78 0D 0A 45 39 20 20 20 20 50 43 48 4C 0D T x..E9 PCHL.
Size : 512 (Real : 512)
000000: 20 20 20 41 44 44 20 49 58 2C 53 50 0D 0A 46 44 ADD IX,SP..FD
000010: 5F 30 39 20 20 20 20 20 20 20 41 44 44 20 49 59 _09 ADD IY
000020: 2C 42 43 0D 0A 46 44 5F 31 39 20 20 20 20 20 20 ,BC..FD_19
000030: 20 41 44 44 20 49 59 2C 44 45 0D 0A 46 44 5F 32 ADD IY,DE..FD_2
000040: 39 20 20 20 20 20 20 20 41 44 44 20 49 59 2C 49 9 ADD IY,I
000050: 59 0D 0A 46 44 5F 33 39 20 20 20 20 20 20 20 41 Y..FD_39 A
000060: 44 44 20 49 59 2C 53 50 0D 0A 44 44 5F 41 36 5F DD IY,SP..DD_A6_
000070: 78 31 20 20 20 20 41 4E 44 20 28 49 58 2B 78 29 x1 AND (IX+x)
000080: 0D 0A 46 44 5F 41 36 5F 78 31 20 20 20 20 41 4E ..FD_A6_x1 AN
000090: 44 20 28 49 59 2B 78 29 0D 0A 41 30 20 20 20 20 D (IY+x)..A0
0000A0: 20 20 20 20 20 20 41 4E 44 20 42 7C 43 7C 44 7C AND B|C|D|
0000B0: 45 7C 48 7C 4C 7C 28 48 4C 29 7C 41 0D 0A 45 36 E|H|L|(HL)|A..E6
0000C0: 5F 78 31 20 20 20 20 20 20 20 41 4E 44 20 78 0D _x1 AND x.
0000D0: 0A 44 44 5F 43 42 5F 78 31 5F 34 36 20 42 49 54 .DD_CB_x1_46 BIT
0000E0: 20 30 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 43 42 0,(IX+x)..FD_CB
0000F0: 5F 78 31 5F 34 36 20 42 49 54 20 30 2C 28 49 59 _x1_46 BIT 0,(IY
000100: 2B 78 29 0D 0A 43 42 5F 34 30 20 20 20 20 20 20 +x)..CB_40
000110: 20 42 49 54 20 30 2C 42 7C 30 2C 43 7C 30 2C 44 BIT 0,B|0,C|0,D
000120: 7C 30 2C 45 7C 30 2C 48 7C 30 2C 4C 7C 30 2C 28 |0,E|0,H|0,L|0,(
000130: 48 4C 29 7C 30 2C 41 0D 0A 44 44 5F 43 42 5F 78 HL)|0,A..DD_CB_x
000140: 31 5F 34 45 20 42 49 54 20 31 2C 28 49 58 2B 78 1_4E BIT 1,(IX+x
000150: 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 34 45 20 42 )..FD_CB_x1_4E B
000160: 49 54 20 31 2C 28 49 59 2B 78 29 0D 0A 43 42 5F IT 1,(IY+x)..CB_
000170: 34 38 20 20 20 20 20 20 20 42 49 54 20 31 2C 42 48 BIT 1,B
000180: 7C 31 2C 43 7C 31 2C 44 7C 31 2C 45 7C 31 2C 48 |1,C|1,D|1,E|1,H
000190: 7C 31 2C 4C 7C 31 2C 28 48 4C 29 7C 31 2C 41 0D |1,L|1,(HL)|1,A.
0001A0: 0A 44 44 5F 43 42 5F 78 31 5F 35 36 20 42 49 54 .DD_CB_x1_56 BIT
0001B0: 20 32 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 43 42 2,(IX+x)..FD_CB
0001C0: 5F 78 31 5F 35 36 20 42 49 54 20 32 2C 28 49 59 _x1_56 BIT 2,(IY
0001D0: 2B 78 29 0D 0A 43 42 5F 35 30 20 20 20 20 20 20 +x)..CB_50
0001E0: 20 42 49 54 20 32 2C 42 7C 32 2C 43 7C 32 2C 44 BIT 2,B|2,C|2,D
0001F0: 7C 32 2C 45 7C 32 2C 48 7C 32 2C 4C 7C 32 2C 28 |2,E|2,H|2,L|2,(
Size : 512 (Real : 512)
000000: 20 28 49 58 29 0D 0A 46 44 5F 45 39 20 20 20 20 (IX)..FD_E9
000010: 20 20 20 4A 50 20 28 49 59 29 0D 0A 44 41 5F 78 JP (IY)..DA_x
000020: 32 20 20 20 20 20 20 20 4A 50 20 43 2C 78 0D 0A 2 JP C,x..
000030: 46 41 5F 78 32 20 20 20 20 20 20 20 4A 50 20 4D FA_x2 JP M
000040: 2C 78 0D 0A 44 32 5F 78 32 20 20 20 20 20 20 20 ,x..D2_x2
000050: 4A 50 20 4E 43 2C 78 0D 0A 43 32 5F 78 32 20 20 JP NC,x..C2_x2
000060: 20 20 20 20 20 4A 50 20 4E 5A 2C 78 7C 78 0D 0A JP NZ,x|x..
000070: 46 32 5F 78 32 20 20 20 20 20 20 20 4A 50 20 50 F2_x2 JP P
000080: 2C 78 0D 0A 45 41 5F 78 32 20 20 20 20 20 20 20 ,x..EA_x2
000090: 4A 50 20 50 45 2C 78 0D 0A 45 32 5F 78 32 20 20 JP PE,x..E2_x2
0000A0: 20 20 20 20 20 4A 50 20 50 4F 2C 78 0D 0A 43 41 JP PO,x..CA
0000B0: 5F 78 32 20 20 20 20 20 20 20 4A 50 20 5A 2C 78 _x2 JP Z,x
0000C0: 0D 0A 33 38 5F 70 31 20 20 20 20 20 20 20 4A 52 ..38_p1 JR
0000D0: 20 43 2C 70 0D 0A 33 30 5F 70 31 20 20 20 20 20 C,p..30_p1
0000E0: 20 20 4A 52 20 4E 43 2C 70 0D 0A 32 30 5F 70 31 JR NC,p..20_p1
0000F0: 20 20 20 20 20 20 20 4A 52 20 4E 5A 2C 70 0D 0A JR NZ,p..
000100: 31 38 5F 70 31 20 20 20 20 20 20 20 4A 52 20 70 18_p1 JR p
000110: 0D 0A 32 38 5F 70 31 20 20 20 20 20 20 20 4A 52 ..28_p1 JR
000120: 20 5A 2C 70 0D 0A 30 32 20 20 20 20 20 20 20 20 Z,p..02
000130: 20 20 4C 44 20 28 42 43 29 2C 41 0D 0A 31 32 20 LD (BC),A..12
000140: 20 20 20 20 20 20 20 20 20 4C 44 20 28 44 45 29 LD (DE)
000150: 2C 41 0D 0A 37 37 20 20 20 20 20 20 20 20 20 20 ,A..77
000160: 4C 44 20 28 48 4C 29 2C 41 0D 0A 37 30 20 20 20 LD (HL),A..70
000170: 20 20 20 20 20 20 20 4C 44 20 28 48 4C 29 2C 42 LD (HL),B
000180: 7C 28 48 4C 29 2C 43 7C 28 48 4C 29 2C 44 7C 28 |(HL),C|(HL),D|(
000190: 48 4C 29 2C 45 7C 28 48 4C 29 2C 48 7C 28 48 4C HL),E|(HL),H|(HL
0001A0: 29 2C 4C 0D 0A 33 36 5F 78 31 20 20 20 20 20 20 ),L..36_x1
0001B0: 20 4C 44 20 28 48 4C 29 2C 78 0D 0A 44 44 5F 37 LD (HL),x..DD_7
0001C0: 37 5F 78 31 20 20 20 20 4C 44 20 28 49 58 2B 78 7_x1 LD (IX+x
0001D0: 29 2C 41 0D 0A 44 44 5F 37 30 5F 78 31 20 20 20 ),A..DD_70_x1
0001E0: 20 4C 44 20 28 49 58 2B 78 29 2C 42 7C 28 49 58 LD (IX+x),B|(IX
0001F0: 2B 78 29 2C 43 7C 28 49 58 2B 78 29 2C 44 0D 0A +x),C|(IX+x),D..
Size : 512 (Real : 512)
000000: 48 4C 29 7C 32 2C 41 0D 0A 44 44 5F 43 42 5F 78 HL)|2,A..DD_CB_x
000010: 31 5F 35 45 20 42 49 54 20 33 2C 28 49 58 2B 78 1_5E BIT 3,(IX+x
000020: 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 35 45 20 42 )..FD_CB_x1_5E B
000030: 49 54 20 33 2C 28 49 59 2B 78 29 0D 0A 43 42 5F IT 3,(IY+x)..CB_
000040: 35 38 20 20 20 20 20 20 20 42 49 54 20 33 2C 42 58 BIT 3,B
000050: 7C 33 2C 43 7C 33 2C 44 7C 33 2C 45 7C 33 2C 48 |3,C|3,D|3,E|3,H
000060: 7C 33 2C 4C 7C 33 2C 28 48 4C 29 7C 33 2C 41 0D |3,L|3,(HL)|3,A.
000070: 0A 44 44 5F 43 42 5F 78 31 5F 36 36 20 42 49 54 .DD_CB_x1_66 BIT
000080: 20 34 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 43 42 4,(IX+x)..FD_CB
000090: 5F 78 31 5F 36 36 20 42 49 54 20 34 2C 28 49 59 _x1_66 BIT 4,(IY
0000A0: 2B 78 29 0D 0A 43 42 5F 36 30 20 20 20 20 20 20 +x)..CB_60
0000B0: 20 42 49 54 20 34 2C 42 7C 34 2C 43 7C 34 2C 44 BIT 4,B|4,C|4,D
0000C0: 7C 34 2C 45 7C 34 2C 48 7C 34 2C 4C 7C 34 2C 28 |4,E|4,H|4,L|4,(
0000D0: 48 4C 29 7C 34 2C 41 0D 0A 44 44 5F 43 42 5F 78 HL)|4,A..DD_CB_x
0000E0: 31 5F 36 45 20 42 49 54 20 35 2C 28 49 58 2B 78 1_6E BIT 5,(IX+x
0000F0: 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 36 45 20 42 )..FD_CB_x1_6E B
000100: 49 54 20 35 2C 28 49 59 2B 78 29 0D 0A 43 42 5F IT 5,(IY+x)..CB_
000110: 36 38 20 20 20 20 20 20 20 42 49 54 20 35 2C 42 68 BIT 5,B
000120: 7C 35 2C 43 7C 35 2C 44 7C 35 2C 45 7C 35 2C 48 |5,C|5,D|5,E|5,H
000130: 7C 35 2C 4C 7C 35 2C 28 48 4C 29 7C 35 2C 41 0D |5,L|5,(HL)|5,A.
000140: 0A 44 44 5F 43 42 5F 78 31 5F 37 36 20 42 49 54 .DD_CB_x1_76 BIT
000150: 20 36 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 43 42 6,(IX+x)..FD_CB
000160: 5F 78 31 5F 37 36 20 42 49 54 20 36 2C 28 49 59 _x1_76 BIT 6,(IY
000170: 2B 78 29 0D 0A 43 42 5F 37 30 20 20 20 20 20 20 +x)..CB_70
000180: 20 42 49 54 20 36 2C 42 7C 36 2C 43 7C 36 2C 44 BIT 6,B|6,C|6,D
000190: 7C 36 2C 45 7C 36 2C 48 7C 36 2C 4C 7C 36 2C 28 |6,E|6,H|6,L|6,(
0001A0: 48 4C 29 7C 36 2C 41 0D 0A 44 44 5F 43 42 5F 78 HL)|6,A..DD_CB_x
0001B0: 31 5F 37 45 20 42 49 54 20 37 2C 28 49 58 2B 78 1_7E BIT 7,(IX+x
0001C0: 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 37 45 20 42 )..FD_CB_x1_7E B
0001D0: 49 54 20 37 2C 28 49 59 2B 78 29 0D 0A 43 42 5F IT 7,(IY+x)..CB_
0001E0: 37 38 20 20 20 20 20 20 20 42 49 54 20 37 2C 42 78 BIT 7,B
0001F0: 7C 37 2C 43 7C 37 2C 44 7C 37 2C 45 7C 37 2C 48 |7,C|7,D|7,E|7,H
Size : 512 (Real : 512)
000000: 44 44 5F 37 33 5F 78 31 20 20 20 20 4C 44 20 28 DD_73_x1 LD (
000010: 49 58 2B 78 29 2C 45 7C 28 49 58 2B 78 29 2C 48 IX+x),E|(IX+x),H
000020: 7C 28 49 58 2B 78 29 2C 4C 0D 0A 44 44 5F 33 36 |(IX+x),L..DD_36
000030: 5F 78 31 5F 78 31 20 4C 44 20 28 49 58 2B 78 29 _x1_x1 LD (IX+x)
000040: 2C 78 0D 0A 46 44 5F 37 37 5F 78 31 20 20 20 20 ,x..FD_77_x1
000050: 4C 44 20 28 49 59 2B 78 29 2C 41 0D 0A 46 44 5F LD (IY+x),A..FD_
000060: 37 30 5F 78 31 20 20 20 20 4C 44 20 28 49 59 2B 70_x1 LD (IY+
000070: 78 29 2C 42 7C 28 49 59 2B 78 29 2C 43 7C 28 49 x),B|(IY+x),C|(I
000080: 59 2B 78 29 2C 44 0D 0A 46 44 5F 37 33 5F 78 31 Y+x),D..FD_73_x1
000090: 20 20 20 20 4C 44 20 28 49 59 2B 78 29 2C 45 7C LD (IY+x),E|
0000A0: 28 49 59 2B 78 29 2C 48 7C 28 49 59 2B 78 29 2C (IY+x),H|(IY+x),
0000B0: 4C 0D 0A 46 44 5F 33 36 5F 78 31 5F 78 31 20 4C L..FD_36_x1_x1 L
0000C0: 44 20 28 49 59 2B 78 29 2C 78 0D 0A 45 44 5F 34 D (IY+x),x..ED_4
0000D0: 33 5F 78 32 20 20 20 20 4C 44 20 28 78 29 2C 42 3_x2 LD (x),B
0000E0: 43 0D 0A 45 44 5F 35 33 5F 78 32 20 20 20 20 4C C..ED_53_x2 L
0000F0: 44 20 28 78 29 2C 44 45 0D 0A 32 32 5F 78 32 20 D (x),DE..22_x2
000100: 20 20 20 20 20 20 4C 44 20 28 78 29 2C 48 4C 0D LD (x),HL.
000110: 0A 44 44 5F 32 32 5F 78 32 20 20 20 20 4C 44 20 .DD_22_x2 LD
000120: 28 78 29 2C 49 58 0D 0A 46 44 5F 32 32 5F 78 32 (x),IX..FD_22_x2
000130: 20 20 20 20 4C 44 20 28 78 29 2C 49 59 0D 0A 45 LD (x),IY..E
000140: 44 5F 37 33 5F 78 32 20 20 20 20 4C 44 20 28 78 D_73_x2 LD (x
000150: 29 2C 53 50 0D 0A 30 41 20 20 20 20 20 20 20 20 ),SP..0A
000160: 20 20 4C 44 20 41 2C 28 42 43 29 0D 0A 31 41 20 LD A,(BC)..1A
000170: 20 20 20 20 20 20 20 20 20 4C 44 20 41 2C 28 44 LD A,(D
000180: 45 29 0D 0A 44 44 5F 37 45 5F 78 31 20 20 20 20 E)..DD_7E_x1
000190: 4C 44 20 41 2C 28 49 58 2B 78 29 0D 0A 46 44 5F LD A,(IX+x)..FD_
0001A0: 37 45 5F 78 31 20 20 20 20 4C 44 20 41 2C 28 49 7E_x1 LD A,(I
0001B0: 59 2B 78 29 0D 0A 37 38 20 20 20 20 20 20 20 20 Y+x)..78
0001C0: 20 20 4C 44 20 41 2C 42 7C 41 2C 43 7C 41 2C 44 LD A,B|A,C|A,D
0001D0: 7C 41 2C 45 7C 41 2C 48 7C 41 2C 4C 7C 41 2C 28 |A,E|A,H|A,L|A,(
0001E0: 48 4C 29 7C 41 2C 41 0D 0A 45 44 5F 35 37 20 20 HL)|A,A..ED_57
0001F0: 20 20 20 20 20 4C 44 20 41 2C 49 0D 0A 45 44 5F LD A,I..ED_
Size : 512 (Real : 512)
000000: 7C 37 2C 4C 7C 37 2C 28 48 4C 29 7C 37 2C 41 0D |7,L|7,(HL)|7,A.
000010: 0A 44 43 5F 78 32 20 20 20 20 20 20 20 43 41 4C .DC_x2 CAL
000020: 4C 20 43 2C 78 0D 0A 46 43 5F 78 32 20 20 20 20 L C,x..FC_x2
000030: 20 20 20 43 41 4C 4C 20 4D 2C 78 0D 0A 44 34 5F CALL M,x..D4_
000040: 78 32 20 20 20 20 20 20 20 43 41 4C 4C 20 4E 43 x2 CALL NC
000050: 2C 78 0D 0A 43 34 5F 78 32 20 20 20 20 20 20 20 ,x..C4_x2
000060: 43 41 4C 4C 20 4E 5A 2C 78 0D 0A 46 34 5F 78 32 CALL NZ,x..F4_x2
000070: 20 20 20 20 20 20 20 43 41 4C 4C 20 50 2C 78 0D CALL P,x.
000080: 0A 45 43 5F 78 32 20 20 20 20 20 20 20 43 41 4C .EC_x2 CAL
000090: 4C 20 50 45 2C 78 0D 0A 45 34 5F 78 32 20 20 20 L PE,x..E4_x2
0000A0: 20 20 20 20 43 41 4C 4C 20 50 4F 2C 78 0D 0A 43 CALL PO,x..C
0000B0: 43 5F 78 32 20 20 20 20 20 20 20 43 41 4C 4C 20 C_x2 CALL
0000C0: 5A 2C 78 7C 78 0D 0A 33 46 20 20 20 20 20 20 20 Z,x|x..3F
0000D0: 20 20 20 43 43 46 0D 0A 44 44 5F 42 45 5F 78 31 CCF..DD_BE_x1
0000E0: 20 20 20 20 43 50 20 28 49 58 2B 78 29 0D 0A 46 CP (IX+x)..F
0000F0: 44 5F 42 45 5F 78 31 20 20 20 20 43 50 20 28 49 D_BE_x1 CP (I
000100: 59 2B 78 29 0D 0A 42 38 20 20 20 20 20 20 20 20 Y+x)..B8
000110: 20 20 43 50 20 42 7C 43 7C 44 7C 45 7C 48 7C 4C CP B|C|D|E|H|L
000120: 7C 28 48 4C 29 7C 41 0D 0A 46 45 5F 78 31 20 20 |(HL)|A..FE_x1
000130: 20 20 20 20 20 43 50 20 78 0D 0A 45 44 5F 41 39 CP x..ED_A9
000140: 20 20 20 20 20 20 20 43 50 44 0D 0A 45 44 5F 42 CPD..ED_B
000150: 39 20 20 20 20 20 20 20 43 50 44 52 0D 0A 45 44 9 CPDR..ED
000160: 5F 41 31 20 20 20 20 20 20 20 43 50 49 0D 0A 45 _A1 CPI..E
000170: 44 5F 42 31 20 20 20 20 20 20 20 43 50 49 52 0D D_B1 CPIR.
000180: 0A 32 46 20 20 20 20 20 20 20 20 20 20 43 50 4C .2F CPL
000190: 0D 0A 32 37 20 20 20 20 20 20 20 20 20 20 44 41 ..27 DA
0001A0: 41 0D 0A 33 35 20 20 20 20 20 20 20 20 20 20 44 A..35 D
0001B0: 45 43 20 28 48 4C 29 0D 0A 44 44 5F 33 35 5F 78 EC (HL)..DD_35_x
0001C0: 31 20 20 20 20 44 45 43 20 28 49 58 2B 78 29 0D 1 DEC (IX+x).
0001D0: 0A 46 44 5F 33 35 5F 78 31 20 20 20 20 44 45 43 .FD_35_x1 DEC
0001E0: 20 28 49 59 2B 78 29 0D 0A 33 44 20 20 20 20 20 (IY+x)..3D
0001F0: 20 20 20 20 20 44 45 43 20 41 0D 0A 30 35 20 20 DEC A..05
Size : 512 (Real : 512)
000000: 35 46 20 20 20 20 20 20 20 4C 44 20 41 2C 52 0D 5F LD A,R.
000010: 0A 33 41 5F 78 32 20 20 20 20 20 20 20 4C 44 20 .3A_x2 LD
000020: 41 2C 28 78 29 0D 0A 33 45 5F 78 31 20 20 20 20 A,(x)..3E_x1
000030: 20 20 20 4C 44 20 41 2C 78 0D 0A 44 44 5F 34 36 LD A,x..DD_46
000040: 5F 78 31 20 20 20 20 4C 44 20 42 2C 28 49 58 2B _x1 LD B,(IX+
000050: 78 29 0D 0A 46 44 5F 34 36 5F 78 31 20 20 20 20 x)..FD_46_x1
000060: 4C 44 20 42 2C 28 49 59 2B 78 29 0D 0A 34 30 20 LD B,(IY+x)..40
000070: 20 20 20 20 20 20 20 20 20 4C 44 20 42 2C 42 7C LD B,B|
000080: 42 2C 43 7C 42 2C 44 7C 42 2C 45 7C 42 2C 48 7C B,C|B,D|B,E|B,H|
000090: 42 2C 4C 7C 42 2C 28 48 4C 29 7C 42 2C 41 0D 0A B,L|B,(HL)|B,A..
0000A0: 30 36 5F 78 31 20 20 20 20 20 20 20 4C 44 20 42 06_x1 LD B
0000B0: 2C 78 0D 0A 45 44 5F 34 42 5F 78 32 20 20 20 20 ,x..ED_4B_x2
0000C0: 4C 44 20 42 43 2C 28 78 29 0D 0A 30 31 5F 78 32 LD BC,(x)..01_x2
0000D0: 20 20 20 20 20 20 20 4C 44 20 42 43 2C 78 0D 0A LD BC,x..
0000E0: 44 44 5F 34 45 5F 78 31 20 20 20 20 4C 44 20 43 DD_4E_x1 LD C
0000F0: 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 34 45 5F 78 ,(IX+x)..FD_4E_x
000100: 31 20 20 20 20 4C 44 20 43 2C 28 49 59 2B 78 29 1 LD C,(IY+x)
000110: 0D 0A 34 38 20 20 20 20 20 20 20 20 20 20 4C 44 ..48 LD
000120: 20 43 2C 42 7C 43 2C 43 7C 43 2C 44 7C 43 2C 45 C,B|C,C|C,D|C,E
000130: 7C 43 2C 48 7C 43 2C 4C 7C 43 2C 28 48 4C 29 7C |C,H|C,L|C,(HL)|
000140: 43 2C 41 0D 0A 30 45 5F 78 31 20 20 20 20 20 20 C,A..0E_x1
000150: 20 4C 44 20 43 2C 78 0D 0A 44 44 5F 35 36 5F 78 LD C,x..DD_56_x
000160: 31 20 20 20 20 4C 44 20 44 2C 28 49 58 2B 78 29 1 LD D,(IX+x)
000170: 0D 0A 46 44 5F 35 36 5F 78 31 20 20 20 20 4C 44 ..FD_56_x1 LD
000180: 20 44 2C 28 49 59 2B 78 29 0D 0A 35 30 20 20 20 D,(IY+x)..50
000190: 20 20 20 20 20 20 20 4C 44 20 44 2C 42 7C 44 2C LD D,B|D,
0001A0: 43 7C 44 2C 44 7C 44 2C 45 7C 44 2C 48 7C 44 2C C|D,D|D,E|D,H|D,
0001B0: 4C 7C 44 2C 28 48 4C 29 7C 44 2C 41 0D 0A 31 36 L|D,(HL)|D,A..16
0001C0: 5F 78 31 20 20 20 20 20 20 20 4C 44 20 44 2C 78 _x1 LD D,x
0001D0: 0D 0A 31 32 20 20 20 20 20 20 20 20 20 20 4C 44 ..12 LD
0001E0: 20 28 44 45 29 2C 41 0D 0A 45 44 5F 35 42 5F 78 (DE),A..ED_5B_x
0001F0: 32 20 20 20 20 4C 44 20 44 45 2C 28 78 29 0D 0A 2 LD DE,(x)..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 44 45 43 20 42 0D 0A 30 DEC B..0
000010: 42 20 20 20 20 20 20 20 20 20 20 44 45 43 20 42 B DEC B
000020: 43 0D 0A 30 44 20 20 20 20 20 20 20 20 20 20 44 C..0D D
000030: 45 43 20 43 0D 0A 31 35 20 20 20 20 20 20 20 20 EC C..15
000040: 20 20 44 45 43 20 44 0D 0A 31 42 20 20 20 20 20 DEC D..1B
000050: 20 20 20 20 20 44 45 43 20 44 45 0D 0A 31 44 20 DEC DE..1D
000060: 20 20 20 20 20 20 20 20 20 44 45 43 20 45 0D 0A DEC E..
000070: 32 35 20 20 20 20 20 20 20 20 20 20 44 45 43 20 25 DEC
000080: 48 0D 0A 32 42 20 20 20 20 20 20 20 20 20 20 44 H..2B D
000090: 45 43 20 48 4C 0D 0A 44 44 5F 32 42 20 20 20 20 EC HL..DD_2B
0000A0: 20 20 20 44 45 43 20 49 58 0D 0A 46 44 5F 32 42 DEC IX..FD_2B
0000B0: 20 20 20 20 20 20 20 44 45 43 20 49 59 0D 0A 32 DEC IY..2
0000C0: 44 20 20 20 20 20 20 20 20 20 20 44 45 43 20 4C D DEC L
0000D0: 0D 0A 33 42 20 20 20 20 20 20 20 20 20 20 44 45 ..3B DE
0000E0: 43 20 53 50 0D 0A 46 33 20 20 20 20 20 20 20 20 C SP..F3
0000F0: 20 20 44 49 0D 0A 31 30 5F 70 31 20 20 20 20 20 DI..10_p1
000100: 20 20 44 4A 4E 5A 20 70 0D 0A 46 42 20 20 20 20 DJNZ p..FB
000110: 20 20 20 20 20 20 45 49 0D 0A 45 33 20 20 20 20 EI..E3
000120: 20 20 20 20 20 20 45 58 20 28 53 50 29 2C 48 4C EX (SP),HL
000130: 0D 0A 44 44 5F 45 33 20 20 20 20 20 20 20 45 58 ..DD_E3 EX
000140: 20 28 53 50 29 2C 49 58 0D 0A 46 44 5F 45 33 20 (SP),IX..FD_E3
000150: 20 20 20 20 20 20 45 58 20 28 53 50 29 2C 49 59 EX (SP),IY
000160: 0D 0A 30 38 20 20 20 20 20 20 20 20 20 20 45 58 ..08 EX
000170: 20 41 46 2C 41 46 27 0D 0A 45 42 20 20 20 20 20 AF,AF'..EB
000180: 20 20 20 20 20 45 58 20 44 45 2C 48 4C 0D 0A 44 EX DE,HL..D
000190: 39 20 20 20 20 20 20 20 20 20 20 45 58 58 0D 0A 9 EXX..
0001A0: 37 36 20 20 20 20 20 20 20 20 20 20 48 41 4C 54 76 HALT
0001B0: 0D 0A 45 44 5F 34 36 20 20 20 20 20 20 20 49 4D ..ED_46 IM
0001C0: 20 30 0D 0A 45 44 5F 35 36 20 20 20 20 20 20 20 0..ED_56
0001D0: 49 4D 20 31 0D 0A 45 44 5F 35 45 20 20 20 20 20 IM 1..ED_5E
0001E0: 20 20 49 4D 20 32 0D 0A 45 44 5F 37 38 20 20 20 IM 2..ED_78
0001F0: 20 20 20 20 49 4E 20 41 2C 28 43 29 0D 0A 44 42 IN A,(C)..DB
Size : 512 (Real : 512)
000000: 31 31 5F 78 32 20 20 20 20 20 20 20 4C 44 20 44 11_x2 LD D
000010: 45 2C 78 0D 0A 44 44 5F 35 45 5F 78 31 20 20 20 E,x..DD_5E_x1
000020: 20 4C 44 20 45 2C 28 49 58 2B 78 29 0D 0A 46 44 LD E,(IX+x)..FD
000030: 5F 35 45 5F 78 31 20 20 20 20 4C 44 20 45 2C 28 _5E_x1 LD E,(
000040: 49 59 2B 78 29 0D 0A 35 38 20 20 20 20 20 20 20 IY+x)..58
000050: 20 20 20 4C 44 20 45 2C 42 7C 45 2C 43 7C 45 2C LD E,B|E,C|E,
000060: 44 7C 45 2C 45 7C 45 2C 48 7C 45 2C 4C 7C 45 2C D|E,E|E,H|E,L|E,
000070: 28 48 4C 29 7C 45 2C 41 0D 0A 31 45 5F 78 31 20 (HL)|E,A..1E_x1
000080: 20 20 20 20 20 20 4C 44 20 45 2C 78 0D 0A 44 44 LD E,x..DD
000090: 5F 36 36 5F 78 31 20 20 20 20 4C 44 20 48 2C 28 _66_x1 LD H,(
0000A0: 49 58 2B 78 29 0D 0A 46 44 5F 36 36 5F 78 31 20 IX+x)..FD_66_x1
0000B0: 20 20 20 4C 44 20 48 2C 28 49 59 2B 78 29 0D 0A LD H,(IY+x)..
0000C0: 36 30 20 20 20 20 20 20 20 20 20 20 4C 44 20 48 60 LD H
0000D0: 2C 42 7C 48 2C 43 7C 48 2C 44 7C 48 2C 45 7C 48 ,B|H,C|H,D|H,E|H
0000E0: 2C 48 7C 48 2C 4C 7C 48 2C 28 48 4C 29 7C 48 2C ,H|H,L|H,(HL)|H,
0000F0: 41 0D 0A 32 36 5F 78 31 20 20 20 20 20 20 20 4C A..26_x1 L
000100: 44 20 48 2C 78 0D 0A 32 41 5F 78 32 20 20 20 20 D H,x..2A_x2
000110: 20 20 20 4C 44 20 48 4C 2C 28 78 29 0D 0A 45 44 LD HL,(x)..ED
000120: 5F 34 37 20 20 20 20 20 20 20 4C 44 20 49 2C 41 _47 LD I,A
000130: 0D 0A 44 44 5F 32 41 5F 78 32 20 20 20 20 4C 44 ..DD_2A_x2 LD
000140: 20 49 58 2C 28 78 29 0D 0A 44 44 5F 32 31 5F 78 IX,(x)..DD_21_x
000150: 32 20 20 20 20 4C 44 20 49 58 2C 78 0D 0A 46 44 2 LD IX,x..FD
000160: 5F 32 41 5F 78 32 20 20 20 20 4C 44 20 49 59 2C _2A_x2 LD IY,
000170: 28 78 29 0D 0A 46 44 5F 32 31 5F 78 32 20 20 20 (x)..FD_21_x2
000180: 20 4C 44 20 49 59 2C 78 0D 0A 44 44 5F 36 45 5F LD IY,x..DD_6E_
000190: 78 31 20 20 20 20 4C 44 20 4C 2C 28 49 58 2B 78 x1 LD L,(IX+x
0001A0: 29 0D 0A 46 44 5F 36 45 5F 78 31 20 20 20 20 4C )..FD_6E_x1 L
0001B0: 44 20 4C 2C 28 49 59 2B 78 29 0D 0A 36 38 20 20 D L,(IY+x)..68
0001C0: 20 20 20 20 20 20 20 20 4C 44 20 4C 2C 42 7C 4C LD L,B|L
0001D0: 2C 43 7C 4C 2C 44 7C 4C 2C 45 7C 4C 2C 48 7C 4C ,C|L,D|L,E|L,H|L
0001E0: 2C 4C 7C 4C 2C 28 48 4C 29 7C 4C 2C 41 0D 0A 32 ,L|L,(HL)|L,A..2
0001F0: 45 5F 78 31 20 20 20 20 20 20 20 4C 44 20 4C 2C E_x1 LD L,
Size : 512 (Real : 512)
000000: 5F 78 31 20 20 20 20 20 20 20 49 4E 20 41 2C 28 _x1 IN A,(
000010: 78 29 0D 0A 45 44 5F 34 30 20 20 20 20 20 20 20 x)..ED_40
000020: 49 4E 20 42 2C 28 43 29 0D 0A 45 44 5F 34 38 20 IN B,(C)..ED_48
000030: 20 20 20 20 20 20 49 4E 20 43 2C 28 43 29 0D 0A IN C,(C)..
000040: 45 44 5F 35 30 20 20 20 20 20 20 20 49 4E 20 44 ED_50 IN D
000050: 2C 28 43 29 0D 0A 45 44 5F 35 38 20 20 20 20 20 ,(C)..ED_58
000060: 20 20 49 4E 20 45 2C 28 43 29 0D 0A 45 44 5F 36 IN E,(C)..ED_6
000070: 30 20 20 20 20 20 20 20 49 4E 20 48 2C 28 43 29 0 IN H,(C)
000080: 0D 0A 45 44 5F 36 38 20 20 20 20 20 20 20 49 4E ..ED_68 IN
000090: 20 4C 2C 28 43 29 0D 0A 44 44 5F 33 34 5F 78 31 L,(C)..DD_34_x1
0000A0: 20 20 20 20 49 4E 43 20 28 49 58 2B 78 29 0D 0A INC (IX+x)..
0000B0: 46 44 5F 33 34 5F 78 31 20 20 20 20 49 4E 43 20 FD_34_x1 INC
0000C0: 28 49 59 2B 78 29 0D 0A 33 43 20 20 20 20 20 20 (IY+x)..3C
0000D0: 20 20 20 20 49 4E 43 20 41 0D 0A 30 33 20 20 20 INC A..03
0000E0: 20 20 20 20 20 20 20 49 4E 43 20 42 43 7C 42 0D INC BC|B.
0000F0: 0A 30 43 20 20 20 20 20 20 20 20 20 20 49 4E 43 .0C INC
000100: 20 43 0D 0A 31 33 20 20 20 20 20 20 20 20 20 20 C..13
000110: 49 4E 43 20 44 45 7C 44 0D 0A 31 43 20 20 20 20 INC DE|D..1C
000120: 20 20 20 20 20 20 49 4E 43 20 45 0D 0A 32 33 20 INC E..23
000130: 20 20 20 20 20 20 20 20 20 49 4E 43 20 48 4C 7C INC HL|
000140: 48 0D 0A 44 44 5F 32 33 20 20 20 20 20 20 20 49 H..DD_23 I
000150: 4E 43 20 49 58 0D 0A 46 44 5F 32 33 20 20 20 20 NC IX..FD_23
000160: 20 20 20 49 4E 43 20 49 59 0D 0A 32 43 20 20 20 INC IY..2C
000170: 20 20 20 20 20 20 20 49 4E 43 20 4C 0D 0A 33 33 INC L..33
000180: 20 20 20 20 20 20 20 20 20 20 49 4E 43 20 53 50 INC SP
000190: 7C 28 48 4C 29 0D 0A 45 44 5F 41 41 20 20 20 20 |(HL)..ED_AA
0001A0: 20 20 20 49 4E 44 0D 0A 45 44 5F 42 41 20 20 20 IND..ED_BA
0001B0: 20 20 20 20 49 4E 44 52 0D 0A 45 44 5F 41 32 20 INDR..ED_A2
0001C0: 20 20 20 20 20 20 49 4E 49 0D 0A 45 44 5F 42 32 INI..ED_B2
0001D0: 20 20 20 20 20 20 20 49 4E 49 52 0D 0A 45 39 20 INIR..E9
0001E0: 20 20 20 20 20 20 20 20 20 4A 50 20 28 48 4C 29 JP (HL)
0001F0: 0D 0A 44 44 5F 45 39 20 20 20 20 20 20 20 4A 50 ..DD_E9 JP
Size : 512 (Real : 512)
000000: 78 0D 0A 45 44 5F 34 46 20 20 20 20 20 20 20 4C x..ED_4F L
000010: 44 20 52 2C 41 0D 0A 46 39 20 20 20 20 20 20 20 D R,A..F9
000020: 20 20 20 4C 44 20 53 50 2C 48 4C 0D 0A 44 44 5F LD SP,HL..DD_
000030: 46 39 20 20 20 20 20 20 20 4C 44 20 53 50 2C 49 F9 LD SP,I
000040: 58 0D 0A 46 44 5F 46 39 20 20 20 20 20 20 20 4C X..FD_F9 L
000050: 44 20 53 50 2C 49 59 0D 0A 45 44 5F 37 42 5F 78 D SP,IY..ED_7B_x
000060: 32 20 20 20 20 4C 44 20 53 50 2C 28 78 29 0D 0A 2 LD SP,(x)..
000070: 33 31 5F 78 32 20 20 20 20 20 20 20 4C 44 20 53 31_x2 LD S
000080: 50 2C 78 7C 28 78 29 2C 41 0D 0A 45 44 5F 41 38 P,x|(x),A..ED_A8
000090: 20 20 20 20 20 20 20 4C 44 44 0D 0A 45 44 5F 42 LDD..ED_B
0000A0: 38 20 20 20 20 20 20 20 4C 44 44 52 0D 0A 45 44 8 LDDR..ED
0000B0: 5F 41 30 20 20 20 20 20 20 20 4C 44 49 0D 0A 45 _A0 LDI..E
0000C0: 44 5F 42 30 20 20 20 20 20 20 20 4C 44 49 52 0D D_B0 LDIR.
0000D0: 0A 45 44 5F 34 34 20 20 20 20 20 20 20 4E 45 47 .ED_44 NEG
0000E0: 0D 0A 30 30 20 20 20 20 20 20 20 20 20 20 4E 4F ..00 NO
0000F0: 50 0D 0A 44 44 5F 42 36 5F 78 31 20 20 20 20 4F P..DD_B6_x1 O
000100: 52 20 28 49 58 2B 78 29 0D 0A 46 44 5F 42 36 5F R (IX+x)..FD_B6_
000110: 78 31 20 20 20 20 4F 52 20 28 49 59 2B 78 29 0D x1 OR (IY+x).
000120: 0A 42 30 20 20 20 20 20 20 20 20 20 20 4F 52 20 .B0 OR
000130: 42 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 28 48 4C 29 B|C|D|E|H|L|(HL)
000140: 7C 41 0D 0A 46 36 5F 78 31 20 20 20 20 20 20 20 |A..F6_x1
000150: 4F 52 20 78 0D 0A 45 44 5F 42 42 20 20 20 20 20 OR x..ED_BB
000160: 20 20 4F 54 44 52 0D 0A 45 44 5F 42 33 20 20 20 OTDR..ED_B3
000170: 20 20 20 20 4F 54 49 52 0D 0A 45 44 5F 37 39 20 OTIR..ED_79
000180: 20 20 20 20 20 20 4F 55 54 20 28 43 29 2C 41 0D OUT (C),A.
000190: 0A 45 44 5F 34 31 20 20 20 20 20 20 20 4F 55 54 .ED_41 OUT
0001A0: 20 28 43 29 2C 42 0D 0A 45 44 5F 34 39 20 20 20 (C),B..ED_49
0001B0: 20 20 20 20 4F 55 54 20 28 43 29 2C 43 0D 0A 45 OUT (C),C..E
0001C0: 44 5F 35 31 20 20 20 20 20 20 20 4F 55 54 20 28 D_51 OUT (
0001D0: 43 29 2C 44 0D 0A 45 44 5F 35 39 20 20 20 20 20 C),D..ED_59
0001E0: 20 20 4F 55 54 20 28 43 29 2C 45 0D 0A 45 44 5F OUT (C),E..ED_
0001F0: 36 31 20 20 20 20 20 20 20 4F 55 54 20 28 43 29 61 OUT (C)
Size : 512 (Real : 512)
000000: 20 33 32 0D 0A 46 46 20 20 20 20 20 20 20 20 20 32..FF
000010: 20 52 53 54 20 33 38 48 0D 0A 45 46 20 20 20 20 RST 38H..EF
000020: 20 20 20 20 20 20 52 53 54 20 34 30 0D 0A 46 37 RST 40..F7
000030: 20 20 20 20 20 20 20 20 20 20 52 53 54 20 34 38 RST 48
000040: 0D 0A 46 46 20 20 20 20 20 20 20 20 20 20 52 53 ..FF RS
000050: 54 20 35 36 0D 0A 43 46 20 20 20 20 20 20 20 20 T 56..CF
000060: 20 20 52 53 54 20 38 0D 0A 43 46 20 20 20 20 20 RST 8..CF
000070: 20 20 20 20 20 52 53 54 20 38 48 0D 0A 44 44 5F RST 8H..DD_
000080: 39 45 5F 78 31 20 20 20 20 53 42 43 20 41 2C 28 9E_x1 SBC A,(
000090: 49 58 2B 78 29 0D 0A 46 44 5F 39 45 5F 78 31 20 IX+x)..FD_9E_x1
0000A0: 20 20 20 53 42 43 20 41 2C 28 49 59 2B 78 29 0D SBC A,(IY+x).
0000B0: 0A 39 38 20 20 20 20 20 20 20 20 20 20 53 42 43 .98 SBC
0000C0: 20 41 2C 42 7C 41 2C 43 7C 41 2C 44 7C 41 2C 45 A,B|A,C|A,D|A,E
0000D0: 7C 41 2C 48 7C 41 2C 4C 7C 41 2C 28 48 4C 29 7C |A,H|A,L|A,(HL)|
0000E0: 41 2C 41 0D 0A 44 45 5F 78 31 20 20 20 20 20 20 A,A..DE_x1
0000F0: 20 53 42 43 20 41 2C 78 0D 0A 45 44 5F 34 32 20 SBC A,x..ED_42
000100: 20 20 20 20 20 20 53 42 43 20 48 4C 2C 42 43 0D SBC HL,BC.
000110: 0A 45 44 5F 35 32 20 20 20 20 20 20 20 53 42 43 .ED_52 SBC
000120: 20 48 4C 2C 44 45 0D 0A 45 44 5F 36 32 20 20 20 HL,DE..ED_62
000130: 20 20 20 20 53 42 43 20 48 4C 2C 48 4C 0D 0A 45 SBC HL,HL..E
000140: 44 5F 37 32 20 20 20 20 20 20 20 53 42 43 20 48 D_72 SBC H
000150: 4C 2C 53 50 0D 0A 33 37 20 20 20 20 20 20 20 20 L,SP..37
000160: 20 20 53 43 46 0D 0A 44 44 5F 43 42 5F 78 31 5F SCF..DD_CB_x1_
000170: 43 36 20 53 45 54 20 30 2C 28 49 58 2B 78 29 0D C6 SET 0,(IX+x).
000180: 0A 46 44 5F 43 42 5F 78 31 5F 43 36 20 53 45 54 .FD_CB_x1_C6 SET
000190: 20 30 2C 28 49 59 2B 78 29 0D 0A 43 42 5F 43 30 0,(IY+x)..CB_C0
0001A0: 20 20 20 20 20 20 20 53 45 54 20 30 2C 42 7C 30 SET 0,B|0
0001B0: 2C 43 7C 30 2C 44 7C 30 2C 45 7C 30 2C 48 7C 30 ,C|0,D|0,E|0,H|0
0001C0: 2C 4C 7C 30 2C 28 48 4C 29 7C 30 2C 41 0D 0A 44 ,L|0,(HL)|0,A..D
0001D0: 44 5F 43 42 5F 78 31 5F 43 45 20 53 45 54 20 31 D_CB_x1_CE SET 1
0001E0: 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 ,(IX+x)..FD_CB_x
0001F0: 31 5F 43 45 20 53 45 54 20 31 2C 28 49 59 2B 78 1_CE SET 1,(IY+x
Size : 512 (Real : 512)
000000: 2C 48 0D 0A 45 44 5F 36 39 20 20 20 20 20 20 20 ,H..ED_69
000010: 4F 55 54 20 28 43 29 2C 4C 0D 0A 44 33 5F 78 31 OUT (C),L..D3_x1
000020: 20 20 20 20 20 20 20 4F 55 54 20 28 78 29 2C 41 OUT (x),A
000030: 0D 0A 45 44 5F 41 42 20 20 20 20 20 20 20 4F 55 ..ED_AB OU
000040: 54 44 0D 0A 45 44 5F 41 33 20 20 20 20 20 20 20 TD..ED_A3
000050: 4F 55 54 49 0D 0A 46 31 20 20 20 20 20 20 20 20 OUTI..F1
000060: 20 20 50 4F 50 20 41 46 0D 0A 43 31 20 20 20 20 POP AF..C1
000070: 20 20 20 20 20 20 50 4F 50 20 42 43 0D 0A 44 31 POP BC..D1
000080: 20 20 20 20 20 20 20 20 20 20 50 4F 50 20 44 45 POP DE
000090: 0D 0A 45 31 20 20 20 20 20 20 20 20 20 20 50 4F ..E1 PO
0000A0: 50 20 48 4C 0D 0A 44 44 5F 45 31 20 20 20 20 20 P HL..DD_E1
0000B0: 20 20 50 4F 50 20 49 58 0D 0A 46 44 5F 45 31 20 POP IX..FD_E1
0000C0: 20 20 20 20 20 20 50 4F 50 20 49 59 0D 0A 46 35 POP IY..F5
0000D0: 20 20 20 20 20 20 20 20 20 20 50 55 53 48 20 41 PUSH A
0000E0: 46 0D 0A 43 35 20 20 20 20 20 20 20 20 20 20 50 F..C5 P
0000F0: 55 53 48 20 42 43 0D 0A 44 35 20 20 20 20 20 20 USH BC..D5
000100: 20 20 20 20 50 55 53 48 20 44 45 0D 0A 45 35 20 PUSH DE..E5
000110: 20 20 20 20 20 20 20 20 20 50 55 53 48 20 48 4C PUSH HL
000120: 0D 0A 44 44 5F 45 35 20 20 20 20 20 20 20 50 55 ..DD_E5 PU
000130: 53 48 20 49 58 0D 0A 46 44 5F 45 35 20 20 20 20 SH IX..FD_E5
000140: 20 20 20 50 55 53 48 20 49 59 0D 0A 44 44 5F 43 PUSH IY..DD_C
000150: 42 5F 78 31 5F 38 36 20 52 45 53 20 30 2C 28 49 B_x1_86 RES 0,(I
000160: 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 38 X+x)..FD_CB_x1_8
000170: 36 20 52 45 53 20 30 2C 28 49 59 2B 78 29 0D 0A 6 RES 0,(IY+x)..
000180: 43 42 5F 38 30 20 20 20 20 20 20 20 52 45 53 20 CB_80 RES
000190: 30 2C 42 7C 30 2C 43 7C 30 2C 44 7C 30 2C 45 7C 0,B|0,C|0,D|0,E|
0001A0: 30 2C 48 7C 30 2C 4C 7C 30 2C 28 48 4C 29 7C 30 0,H|0,L|0,(HL)|0
0001B0: 2C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F 38 45 20 ,A..DD_CB_x1_8E
0001C0: 52 45 53 20 31 2C 28 49 58 2B 78 29 0D 0A 46 44 RES 1,(IX+x)..FD
0001D0: 5F 43 42 5F 78 31 5F 38 45 20 52 45 53 20 31 2C _CB_x1_8E RES 1,
0001E0: 28 49 59 2B 78 29 0D 0A 43 42 5F 38 38 20 20 20 (IY+x)..CB_88
0001F0: 20 20 20 20 52 45 53 20 31 2C 42 7C 31 2C 43 7C RES 1,B|1,C|
Size : 512 (Real : 512)
000000: 29 0D 0A 43 42 5F 43 38 20 20 20 20 20 20 20 53 )..CB_C8 S
000010: 45 54 20 31 2C 42 7C 31 2C 43 7C 31 2C 44 7C 31 ET 1,B|1,C|1,D|1
000020: 2C 45 7C 31 2C 48 7C 31 2C 4C 7C 31 2C 28 48 4C ,E|1,H|1,L|1,(HL
000030: 29 7C 31 2C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F )|1,A..DD_CB_x1_
000040: 44 36 20 53 45 54 20 32 2C 28 49 58 2B 78 29 0D D6 SET 2,(IX+x).
000050: 0A 46 44 5F 43 42 5F 78 31 5F 44 36 20 53 45 54 .FD_CB_x1_D6 SET
000060: 20 32 2C 28 49 59 2B 78 29 0D 0A 43 42 5F 44 30 2,(IY+x)..CB_D0
000070: 20 20 20 20 20 20 20 53 45 54 20 32 2C 42 7C 32 SET 2,B|2
000080: 2C 43 7C 32 2C 44 7C 32 2C 45 7C 32 2C 48 7C 32 ,C|2,D|2,E|2,H|2
000090: 2C 4C 7C 32 2C 28 48 4C 29 7C 32 2C 41 0D 0A 44 ,L|2,(HL)|2,A..D
0000A0: 44 5F 43 42 5F 78 31 5F 44 45 20 53 45 54 20 33 D_CB_x1_DE SET 3
0000B0: 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 ,(IX+x)..FD_CB_x
0000C0: 31 5F 44 45 20 53 45 54 20 33 2C 28 49 59 2B 78 1_DE SET 3,(IY+x
0000D0: 29 0D 0A 43 42 5F 44 38 20 20 20 20 20 20 20 53 )..CB_D8 S
0000E0: 45 54 20 33 2C 42 7C 33 2C 43 7C 33 2C 44 7C 33 ET 3,B|3,C|3,D|3
0000F0: 2C 45 7C 33 2C 48 7C 33 2C 4C 7C 33 2C 28 48 4C ,E|3,H|3,L|3,(HL
000100: 29 7C 33 2C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F )|3,A..DD_CB_x1_
000110: 45 36 20 53 45 54 20 34 2C 28 49 58 2B 78 29 0D E6 SET 4,(IX+x).
000120: 0A 46 44 5F 43 42 5F 78 31 5F 45 36 20 53 45 54 .FD_CB_x1_E6 SET
000130: 20 34 2C 28 49 59 2B 78 29 0D 0A 43 42 5F 45 30 4,(IY+x)..CB_E0
000140: 20 20 20 20 20 20 20 53 45 54 20 34 2C 42 7C 34 SET 4,B|4
000150: 2C 43 7C 34 2C 44 7C 34 2C 45 7C 34 2C 48 7C 34 ,C|4,D|4,E|4,H|4
000160: 2C 4C 7C 34 2C 28 48 4C 29 7C 34 2C 41 0D 0A 44 ,L|4,(HL)|4,A..D
000170: 44 5F 43 42 5F 78 31 5F 45 45 20 53 45 54 20 35 D_CB_x1_EE SET 5
000180: 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 ,(IX+x)..FD_CB_x
000190: 31 5F 45 45 20 53 45 54 20 35 2C 28 49 59 2B 78 1_EE SET 5,(IY+x
0001A0: 29 0D 0A 43 42 5F 45 38 20 20 20 20 20 20 20 53 )..CB_E8 S
0001B0: 45 54 20 35 2C 42 7C 35 2C 43 7C 35 2C 44 7C 35 ET 5,B|5,C|5,D|5
0001C0: 2C 45 7C 35 2C 48 7C 35 2C 4C 7C 35 2C 28 48 4C ,E|5,H|5,L|5,(HL
0001D0: 29 7C 35 2C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F )|5,A..DD_CB_x1_
0001E0: 46 36 20 53 45 54 20 36 2C 28 49 58 2B 78 29 0D F6 SET 6,(IX+x).
0001F0: 0A 46 44 5F 43 42 5F 78 31 5F 46 36 20 53 45 54 .FD_CB_x1_F6 SET
Size : 512 (Real : 512)
000000: 31 2C 44 7C 31 2C 45 7C 31 2C 48 7C 31 2C 4C 7C 1,D|1,E|1,H|1,L|
000010: 31 2C 28 48 4C 29 7C 31 2C 41 0D 0A 44 44 5F 43 1,(HL)|1,A..DD_C
000020: 42 5F 78 31 5F 39 36 20 52 45 53 20 32 2C 28 49 B_x1_96 RES 2,(I
000030: 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 39 X+x)..FD_CB_x1_9
000040: 36 20 52 45 53 20 32 2C 28 49 59 2B 78 29 0D 0A 6 RES 2,(IY+x)..
000050: 43 42 5F 39 30 20 20 20 20 20 20 20 52 45 53 20 CB_90 RES
000060: 32 2C 42 7C 32 2C 43 7C 32 2C 44 7C 32 2C 45 7C 2,B|2,C|2,D|2,E|
000070: 32 2C 48 7C 32 2C 4C 7C 32 2C 28 48 4C 29 7C 32 2,H|2,L|2,(HL)|2
000080: 2C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F 39 45 20 ,A..DD_CB_x1_9E
000090: 52 45 53 20 33 2C 28 49 58 2B 78 29 0D 0A 46 44 RES 3,(IX+x)..FD
0000A0: 5F 43 42 5F 78 31 5F 39 45 20 52 45 53 20 33 2C _CB_x1_9E RES 3,
0000B0: 28 49 59 2B 78 29 0D 0A 43 42 5F 39 38 20 20 20 (IY+x)..CB_98
0000C0: 20 20 20 20 52 45 53 20 33 2C 42 7C 33 2C 43 7C RES 3,B|3,C|
0000D0: 33 2C 44 7C 33 2C 45 7C 33 2C 48 7C 33 2C 4C 7C 3,D|3,E|3,H|3,L|
0000E0: 33 2C 28 48 4C 29 7C 33 2C 41 0D 0A 44 44 5F 43 3,(HL)|3,A..DD_C
0000F0: 42 5F 78 31 5F 41 36 20 52 45 53 20 34 2C 28 49 B_x1_A6 RES 4,(I
000100: 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 41 X+x)..FD_CB_x1_A
000110: 36 20 52 45 53 20 34 2C 28 49 59 2B 78 29 0D 0A 6 RES 4,(IY+x)..
000120: 43 42 5F 41 30 20 20 20 20 20 20 20 52 45 53 20 CB_A0 RES
000130: 34 2C 42 7C 34 2C 43 7C 34 2C 44 7C 34 2C 45 7C 4,B|4,C|4,D|4,E|
000140: 34 2C 48 7C 34 2C 4C 7C 34 2C 28 48 4C 29 7C 34 4,H|4,L|4,(HL)|4
000150: 2C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F 41 45 20 ,A..DD_CB_x1_AE
000160: 52 45 53 20 35 2C 28 49 58 2B 78 29 0D 0A 46 44 RES 5,(IX+x)..FD
000170: 5F 43 42 5F 78 31 5F 41 45 20 52 45 53 20 35 2C _CB_x1_AE RES 5,
000180: 28 49 59 2B 78 29 0D 0A 43 42 5F 41 38 20 20 20 (IY+x)..CB_A8
000190: 20 20 20 20 52 45 53 20 35 2C 42 7C 35 2C 43 7C RES 5,B|5,C|
0001A0: 35 2C 44 7C 35 2C 45 7C 35 2C 48 7C 35 2C 4C 7C 5,D|5,E|5,H|5,L|
0001B0: 35 2C 28 48 4C 29 7C 35 2C 41 0D 0A 44 44 5F 43 5,(HL)|5,A..DD_C
0001C0: 42 5F 78 31 5F 42 36 20 52 45 53 20 36 2C 28 49 B_x1_B6 RES 6,(I
0001D0: 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 42 X+x)..FD_CB_x1_B
0001E0: 36 20 52 45 53 20 36 2C 28 49 59 2B 78 29 0D 0A 6 RES 6,(IY+x)..
0001F0: 43 42 5F 42 30 20 20 20 20 20 20 20 52 45 53 20 CB_B0 RES
Size : 512 (Real : 512)
000000: 20 36 2C 28 49 59 2B 78 29 0D 0A 43 42 5F 46 30 6,(IY+x)..CB_F0
000010: 20 20 20 20 20 20 20 53 45 54 20 36 2C 42 7C 36 SET 6,B|6
000020: 2C 43 7C 36 2C 44 7C 36 2C 45 7C 36 2C 48 7C 36 ,C|6,D|6,E|6,H|6
000030: 2C 4C 7C 36 2C 28 48 4C 29 7C 36 2C 41 0D 0A 44 ,L|6,(HL)|6,A..D
000040: 44 5F 43 42 5F 78 31 5F 46 45 20 53 45 54 20 37 D_CB_x1_FE SET 7
000050: 2C 28 49 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 ,(IX+x)..FD_CB_x
000060: 31 5F 46 45 20 53 45 54 20 37 2C 28 49 59 2B 78 1_FE SET 7,(IY+x
000070: 29 0D 0A 43 42 5F 46 38 20 20 20 20 20 20 20 53 )..CB_F8 S
000080: 45 54 20 37 2C 42 7C 37 2C 43 7C 37 2C 44 7C 37 ET 7,B|7,C|7,D|7
000090: 2C 45 7C 37 2C 48 7C 37 2C 4C 7C 37 2C 28 48 4C ,E|7,H|7,L|7,(HL
0000A0: 29 7C 37 2C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F )|7,A..DD_CB_x1_
0000B0: 32 36 20 53 4C 41 20 28 49 58 2B 78 29 0D 0A 46 26 SLA (IX+x)..F
0000C0: 44 5F 43 42 5F 78 31 5F 32 36 20 53 4C 41 20 28 D_CB_x1_26 SLA (
0000D0: 49 59 2B 78 29 0D 0A 43 42 5F 32 30 20 20 20 20 IY+x)..CB_20
0000E0: 20 20 20 53 4C 41 20 42 7C 43 7C 44 7C 45 7C 48 SLA B|C|D|E|H
0000F0: 7C 4C 7C 28 48 4C 29 7C 41 0D 0A 44 44 5F 43 42 |L|(HL)|A..DD_CB
000100: 5F 78 31 5F 32 45 20 53 52 41 20 28 49 58 2B 78 _x1_2E SRA (IX+x
000110: 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 32 45 20 53 )..FD_CB_x1_2E S
000120: 52 41 20 28 49 59 2B 78 29 0D 0A 43 42 5F 32 38 RA (IY+x)..CB_28
000130: 20 20 20 20 20 20 20 53 52 41 20 42 7C 43 7C 44 SRA B|C|D
000140: 7C 45 7C 48 7C 4C 7C 28 48 4C 29 7C 41 0D 0A 44 |E|H|L|(HL)|A..D
000150: 44 5F 43 42 5F 78 31 5F 33 45 20 53 52 4C 20 28 D_CB_x1_3E SRL (
000160: 49 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 31 5F IX+x)..FD_CB_x1_
000170: 33 45 20 53 52 4C 20 28 49 59 2B 78 29 0D 0A 43 3E SRL (IY+x)..C
000180: 42 5F 33 38 20 20 20 20 20 20 20 53 52 4C 20 42 B_38 SRL B
000190: 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 28 48 4C 29 7C |C|D|E|H|L|(HL)|
0001A0: 41 0D 0A 44 44 5F 39 36 5F 78 31 20 20 20 20 53 A..DD_96_x1 S
0001B0: 55 42 20 41 2C 28 49 58 2B 78 29 0D 0A 46 44 5F UB A,(IX+x)..FD_
0001C0: 39 36 5F 78 31 20 20 20 20 53 55 42 20 41 2C 28 96_x1 SUB A,(
0001D0: 49 59 2B 78 29 0D 0A 39 30 5F 20 20 20 20 20 20 IY+x)..90_
0001E0: 20 20 20 53 55 42 20 41 2C 42 7C 41 2C 43 7C 41 SUB A,B|A,C|A
0001F0: 2C 44 7C 41 2C 45 7C 41 2C 48 7C 41 2C 4C 7C 41 ,D|A,E|A,H|A,L|A
Size : 512 (Real : 512)
000000: 36 2C 42 7C 36 2C 43 7C 36 2C 44 7C 36 2C 45 7C 6,B|6,C|6,D|6,E|
000010: 36 2C 48 7C 36 2C 4C 7C 36 2C 28 48 4C 29 7C 36 6,H|6,L|6,(HL)|6
000020: 2C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F 42 45 20 ,A..DD_CB_x1_BE
000030: 52 45 53 20 37 2C 28 49 58 2B 78 29 0D 0A 46 44 RES 7,(IX+x)..FD
000040: 5F 43 42 5F 78 31 5F 42 45 20 52 45 53 20 37 2C _CB_x1_BE RES 7,
000050: 28 49 59 2B 78 29 0D 0A 43 42 5F 42 38 20 20 20 (IY+x)..CB_B8
000060: 20 20 20 20 52 45 53 20 37 2C 42 7C 37 2C 43 7C RES 7,B|7,C|
000070: 37 2C 44 7C 37 2C 45 7C 37 2C 48 7C 37 2C 4C 7C 7,D|7,E|7,H|7,L|
000080: 37 2C 28 48 4C 29 7C 37 2C 41 0D 0A 43 39 20 20 7,(HL)|7,A..C9
000090: 20 20 20 20 20 20 20 20 52 45 54 0D 0A 44 38 20 RET..D8
0000A0: 20 20 20 20 20 20 20 20 20 52 45 54 20 43 0D 0A RET C..
0000B0: 46 38 20 20 20 20 20 20 20 20 20 20 52 45 54 20 F8 RET
0000C0: 4D 0D 0A 44 30 20 20 20 20 20 20 20 20 20 20 52 M..D0 R
0000D0: 45 54 20 4E 43 0D 0A 43 30 20 20 20 20 20 20 20 ET NC..C0
0000E0: 20 20 20 52 45 54 20 4E 5A 0D 0A 46 30 20 20 20 RET NZ..F0
0000F0: 20 20 20 20 20 20 20 52 45 54 20 50 0D 0A 45 38 RET P..E8
000100: 20 20 20 20 20 20 20 20 20 20 52 45 54 20 50 45 RET PE
000110: 0D 0A 45 30 20 20 20 20 20 20 20 20 20 20 52 45 ..E0 RE
000120: 54 20 50 4F 0D 0A 43 38 20 20 20 20 20 20 20 20 T PO..C8
000130: 20 20 52 45 54 20 5A 0D 0A 45 44 5F 34 44 20 20 RET Z..ED_4D
000140: 20 20 20 20 20 52 45 54 49 0D 0A 45 44 5F 34 35 RETI..ED_45
000150: 20 20 20 20 20 20 20 52 45 54 4E 0D 0A 44 44 5F RETN..DD_
000160: 43 42 5F 78 31 5F 31 36 20 52 4C 20 28 49 58 2B CB_x1_16 RL (IX+
000170: 78 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 31 36 20 x)..FD_CB_x1_16
000180: 52 4C 20 28 49 59 2B 78 29 0D 0A 43 42 5F 31 30 RL (IY+x)..CB_10
000190: 20 20 20 20 20 20 20 52 4C 20 42 7C 43 7C 44 7C RL B|C|D|
0001A0: 45 7C 48 7C 4C 7C 28 48 4C 29 7C 41 0D 0A 31 37 E|H|L|(HL)|A..17
0001B0: 20 20 20 20 20 20 20 20 20 20 52 4C 41 0D 0A 44 RLA..D
0001C0: 44 5F 43 42 5F 78 31 5F 30 36 20 52 4C 43 20 28 D_CB_x1_06 RLC (
0001D0: 49 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 31 5F IX+x)..FD_CB_x1_
0001E0: 30 36 20 52 4C 43 20 28 49 59 2B 78 29 0D 0A 43 06 RLC (IY+x)..C
0001F0: 42 5F 30 30 20 20 20 20 20 20 20 52 4C 43 20 42 B_00 RLC B
Size : 512 (Real : 512)
000000: 2C 28 48 4C 29 7C 41 2C 41 0D 0A 44 36 5F 78 31 ,(HL)|A,A..D6_x1
000010: 20 20 20 20 20 20 20 53 55 42 20 78 0D 0A 44 44 SUB x..DD
000020: 5F 41 45 5F 78 31 20 20 20 20 58 4F 52 20 28 49 _AE_x1 XOR (I
000030: 58 2B 78 29 0D 0A 46 44 5F 41 45 5F 78 31 20 20 X+x)..FD_AE_x1
000040: 20 20 58 4F 52 20 28 49 59 2B 78 29 0D 0A 41 38 XOR (IY+x)..A8
000050: 20 20 20 20 20 20 20 20 20 20 58 4F 52 20 42 7C XOR B|
000060: 43 7C 44 7C 45 7C 48 7C 4C 7C 28 48 4C 29 7C 41 C|D|E|H|L|(HL)|A
000070: 0D 0A 45 45 5F 78 31 20 20 20 20 20 20 20 58 4F ..EE_x1 XO
000080: 52 20 78 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A R x.............
000090: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000A0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000B0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000100: 5F 78 31 5F 32 45 20 53 52 41 20 28 49 58 2B 78 _x1_2E SRA (IX+x
000110: 29 0D 0A 46 44 5F 43 42 5F 78 31 5F 32 45 20 53 )..FD_CB_x1_2E S
000120: 52 41 20 28 49 59 2B 78 29 0D 0A 43 42 5F 32 38 RA (IY+x)..CB_28
000130: 20 20 20 20 20 20 20 53 52 41 20 42 7C 43 7C 44 SRA B|C|D
000140: 7C 45 7C 48 7C 4C 7C 28 48 4C 29 7C 41 0D 0A 44 |E|H|L|(HL)|A..D
000150: 44 5F 43 42 5F 78 31 5F 33 45 20 53 52 4C 20 28 D_CB_x1_3E SRL (
000160: 49 58 2B 78 29 0D 0A 46 44 5F 43 42 5F 78 31 5F IX+x)..FD_CB_x1_
000170: 33 45 20 53 52 4C 20 28 49 59 2B 78 29 0D 0A 43 3E SRL (IY+x)..C
000180: 42 5F 33 38 20 20 20 20 20 20 20 53 52 4C 20 42 B_38 SRL B
000190: 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 28 48 4C 29 7C |C|D|E|H|L|(HL)|
0001A0: 41 0D 0A 44 44 5F 39 36 5F 78 31 20 20 20 20 53 A..DD_96_x1 S
0001B0: 55 42 20 41 2C 28 49 58 2B 78 29 0D 0A 46 44 5F UB A,(IX+x)..FD_
0001C0: 39 36 5F 78 31 20 20 20 20 53 55 42 20 41 2C 28 96_x1 SUB A,(
0001D0: 49 59 2B 78 29 0D 0A 39 30 5F 20 20 20 20 20 20 IY+x)..90_
0001E0: 20 20 20 53 55 42 20 41 2C 42 7C 41 2C 43 7C 41 SUB A,B|A,C|A
0001F0: 2C 44 7C 41 2C 45 7C 41 2C 48 7C 41 2C 4C 7C 41 ,D|A,E|A,H|A,L|A
Size : 512 (Real : 512)
000000: 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 28 48 4C 29 7C |C|D|E|H|L|(HL)|
000010: 41 0D 0A 30 37 20 20 20 20 20 20 20 20 20 20 52 A..07 R
000020: 4C 43 41 0D 0A 45 44 5F 36 46 20 20 20 20 20 20 LCA..ED_6F
000030: 20 52 4C 44 0D 0A 44 44 5F 43 42 5F 78 31 5F 31 RLD..DD_CB_x1_1
000040: 45 20 52 52 20 28 49 58 2B 78 29 0D 0A 46 44 5F E RR (IX+x)..FD_
000050: 43 42 5F 78 31 5F 31 45 20 52 52 20 28 49 59 2B CB_x1_1E RR (IY+
000060: 78 29 0D 0A 43 42 5F 31 38 20 20 20 20 20 20 20 x)..CB_18
000070: 52 52 20 42 7C 43 7C 44 7C 45 7C 48 7C 4C 7C 28 RR B|C|D|E|H|L|(
000080: 48 4C 29 7C 41 0D 0A 44 44 5F 43 42 5F 78 31 5F HL)|A..DD_CB_x1_
000090: 30 45 20 52 52 43 20 28 49 58 2B 78 29 0D 0A 46 0E RRC (IX+x)..F
0000A0: 44 5F 43 42 5F 78 31 5F 30 45 20 52 52 43 20 28 D_CB_x1_0E RRC (
0000B0: 49 59 2B 78 29 0D 0A 43 42 5F 30 38 20 20 20 20 IY+x)..CB_08
0000C0: 20 20 20 52 52 43 20 42 7C 43 7C 44 7C 45 7C 48 RRC B|C|D|E|H
0000D0: 7C 4C 7C 28 48 4C 29 7C 41 0D 0A 30 46 20 20 20 |L|(HL)|A..0F
0000E0: 20 20 20 20 20 20 20 52 52 43 41 0D 0A 45 44 5F RRCA..ED_
0000F0: 36 37 20 20 20 20 20 20 20 52 52 44 0D 0A 31 46 67 RRD..1F
000100: 20 20 20 20 20 20 20 20 20 20 52 52 41 0D 0A 43 RRA..C
000110: 37 20 20 20 20 20 20 20 20 20 20 52 53 54 20 30 7 RST 0
000120: 0D 0A 43 37 20 20 20 20 20 20 20 20 20 20 52 53 ..C7 RS
000130: 54 20 30 30 48 0D 0A 43 46 20 20 20 20 20 20 20 T 00H..CF
000140: 20 20 20 52 53 54 20 30 38 48 0D 0A 43 37 20 20 RST 08H..C7
000150: 20 20 20 20 20 20 20 20 52 53 54 20 30 48 0D 0A RST 0H..
000160: 44 37 20 20 20 20 20 20 20 20 20 20 52 53 54 20 D7 RST
000170: 31 30 48 0D 0A 44 37 20 20 20 20 20 20 20 20 20 10H..D7
000180: 20 52 53 54 20 31 36 0D 0A 44 46 20 20 20 20 20 RST 16..DF
000190: 20 20 20 20 20 52 53 54 20 31 38 48 0D 0A 45 37 RST 18H..E7
0001A0: 20 20 20 20 20 20 20 20 20 20 52 53 54 20 32 30 RST 20
0001B0: 48 0D 0A 44 46 20 20 20 20 20 20 20 20 20 20 52 H..DF R
0001C0: 53 54 20 32 34 0D 0A 45 46 20 20 20 20 20 20 20 ST 24..EF
0001D0: 20 20 20 52 53 54 20 32 38 48 0D 0A 46 37 20 20 RST 28H..F7
0001E0: 20 20 20 20 20 20 20 20 52 53 54 20 33 30 48 0D RST 30H.
0001F0: 0A 45 37 20 20 20 20 20 20 20 20 20 20 52 53 54 .E7 RST
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 58 20 20 20 20 44 0D 0A 20 20 20 20 20 20 20 20 X D..
000010: 52 45 54 0D 0A 3B 0D 0A 3B 49 4E 43 4C 55 53 49 RET..;..;INCLUSI
000020: 56 45 20 22 4F 52 22 20 48 4C 20 41 4E 44 20 44 VE "OR" HL AND D
000030: 45 20 49 4E 54 4F 20 48 4C 0D 0A 43 43 4F 52 3A E INTO HL..CCOR:
000040: 3A 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 :.. MOV
000050: 20 20 20 41 2C 4C 0D 0A 20 20 20 20 20 20 20 20 A,L..
000060: 4F 52 41 20 20 20 20 20 45 0D 0A 20 20 20 20 20 ORA E..
000070: 20 20 20 4D 4F 56 20 20 20 20 20 4C 2C 41 0D 0A MOV L,A..
000080: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
000090: 41 2C 48 0D 0A 20 20 20 20 20 20 20 20 4F 52 41 A,H.. ORA
0000A0: 20 20 20 20 20 44 0D 0A 20 20 20 20 20 20 20 20 D..
0000B0: 4D 4F 56 20 20 20 20 20 48 2C 41 0D 0A 20 20 20 MOV H,A..
0000C0: 20 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B 45 58 RET..;..;EX
0000D0: 43 4C 55 53 49 56 45 20 22 4F 52 22 20 48 4C 20 CLUSIVE "OR" HL
0000E0: 41 4E 44 20 44 45 20 49 4E 54 4F 20 48 4C 0D 0A AND DE INTO HL..
0000F0: 43 43 58 4F 52 3A 3A 0D 0A 20 20 20 20 20 20 20 CCXOR::..
000100: 20 4D 4F 56 20 20 20 20 20 41 2C 4C 0D 0A 20 20 MOV A,L..
000110: 20 20 20 20 20 20 58 52 41 20 20 20 20 20 45 0D XRA E.
000120: 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 . MOV
000130: 20 4C 2C 41 0D 0A 20 20 20 20 20 20 20 20 4D 4F L,A.. MO
000140: 56 20 20 20 20 20 41 2C 48 0D 0A 20 20 20 20 20 V A,H..
000150: 20 20 20 58 52 41 20 20 20 20 20 44 0D 0A 20 20 XRA D..
000160: 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 48 2C MOV H,
000170: 41 0D 0A 20 20 20 20 20 20 20 20 52 45 54 0D 0A A.. RET..
000180: 3B 0D 0A 3B 22 41 4E 44 22 20 48 4C 20 41 4E 44 ;..;"AND" HL AND
000190: 20 44 45 20 49 4E 54 4F 20 48 4C 0D 0A 43 43 41 DE INTO HL..CCA
0001A0: 4E 44 3A 3A 0D 0A 20 20 20 20 20 20 20 20 4D 4F ND::.. MO
0001B0: 56 20 20 20 20 20 41 2C 4C 0D 0A 20 20 20 20 20 V A,L..
0001C0: 20 20 20 41 4E 41 20 20 20 20 20 45 0D 0A 20 20 ANA E..
0001D0: 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 4C 2C MOV L,
0001E0: 41 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 A.. MOV
0001F0: 20 20 20 41 2C 48 0D 0A 20 20 20 20 20 20 20 20 A,H..
Size : 512 (Real : 512)
000000: 3B 0D 0A 3B 2D 2D 2D 2D 2D 20 43 41 4C 4C 3A 20 ;..;----- CALL:
000010: 53 6D 61 6C 6C 2D 43 20 61 72 69 74 68 6D 65 74 Small-C arithmet
000020: 69 63 20 61 6E 64 20 6C 6F 67 69 63 61 6C 20 6C ic and logical l
000030: 69 62 72 61 72 79 0D 0A 3B 0D 0A 43 43 44 43 41 ibrary..;..CCDCA
000040: 4C 3A 3A 0D 0A 20 20 20 20 20 20 20 20 50 43 48 L::.. PCH
000050: 4C 0D 0A 3B 0D 0A 43 43 44 44 47 43 3A 3A 0D 0A L..;..CCDDGC::..
000060: 20 20 20 20 20 20 20 20 44 41 44 20 20 20 20 20 DAD
000070: 44 0D 0A 20 20 20 20 20 20 20 20 4A 4D 50 20 20 D.. JMP
000080: 20 20 20 43 43 47 43 48 41 52 0D 0A 3B 0D 0A 43 CCGCHAR..;..C
000090: 43 44 53 47 43 3A 3A 0D 0A 20 20 20 20 20 20 20 CDSGC::..
0000A0: 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 20 INX H..
0000B0: 20 20 20 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 INX H..
0000C0: 20 20 20 20 20 20 20 44 41 44 20 20 20 20 20 53 DAD S
0000D0: 50 0D 0A 3B 0D 0A 3B 46 45 54 43 48 20 41 20 53 P..;..;FETCH A S
0000E0: 49 4E 47 4C 45 20 42 59 54 45 20 46 52 4F 4D 20 INGLE BYTE FROM
0000F0: 54 48 45 20 41 44 44 52 45 53 53 20 49 4E 20 48 THE ADDRESS IN H
000100: 4C 20 41 4E 44 20 53 49 47 4E 20 49 4E 54 4F 20 L AND SIGN INTO
000110: 48 4C 0D 0A 43 43 47 43 48 41 52 3A 3A 0D 0A 20 HL..CCGCHAR::..
000120: 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 41 MOV A
000130: 2C 4D 0D 0A 3B 0D 0A 3B 50 55 54 20 54 48 45 20 ,M..;..;PUT THE
000140: 41 43 43 55 4D 20 49 4E 54 4F 20 48 4C 20 41 4E ACCUM INTO HL AN
000150: 44 20 53 49 47 4E 20 45 58 54 45 4E 44 20 54 48 D SIGN EXTEND TH
000160: 52 4F 55 47 48 20 48 2E 0D 0A 43 43 41 52 47 43 ROUGH H...CCARGC
000170: 3A 3A 0D 0A 43 43 53 58 54 3A 3A 0D 0A 20 20 20 ::..CCSXT::..
000180: 20 20 20 20 20 4D 4F 56 20 20 20 20 20 4C 2C 41 MOV L,A
000190: 0D 0A 20 20 20 20 20 20 20 20 52 4C 43 0D 0A 20 .. RLC..
0001A0: 20 20 20 20 20 20 20 53 42 42 20 20 20 20 20 41 SBB A
0001B0: 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 .. MOV
0001C0: 20 20 48 2C 41 0D 0A 20 20 20 20 20 20 20 20 52 H,A.. R
0001D0: 45 54 0D 0A 3B 0D 0A 43 43 44 44 47 49 3A 3A 0D ET..;..CCDDGI::.
0001E0: 0A 20 20 20 20 20 20 20 20 44 41 44 20 20 20 20 . DAD
0001F0: 20 44 0D 0A 20 20 20 20 20 20 20 20 4A 4D 50 20 D.. JMP
Size : 512 (Real : 512)
000000: 41 4E 41 20 20 20 20 20 44 0D 0A 20 20 20 20 20 ANA D..
000010: 20 20 20 4D 4F 56 20 20 20 20 20 48 2C 41 0D 0A MOV H,A..
000020: 20 20 20 20 20 20 20 20 52 45 54 0D 0A 3B 0D 0A RET..;..
000030: 3B 49 4E 20 41 4C 4C 20 54 48 45 20 46 4F 4C 4C ;IN ALL THE FOLL
000040: 4F 57 49 4E 47 20 43 4F 4D 50 41 52 45 20 52 4F OWING COMPARE RO
000050: 55 54 49 4E 45 53 2C 20 48 4C 20 49 53 20 53 45 UTINES, HL IS SE
000060: 54 20 54 4F 20 31 20 49 46 20 54 48 45 0D 0A 3B T TO 1 IF THE..;
000070: 20 20 43 4F 4E 44 49 54 49 4F 4E 20 49 53 20 54 CONDITION IS T
000080: 52 55 45 2C 20 4F 54 48 45 52 57 49 53 45 20 49 RUE, OTHERWISE I
000090: 54 20 49 53 20 53 45 54 20 54 4F 20 30 20 28 5A T IS SET TO 0 (Z
0000A0: 45 52 4F 29 2E 0D 0A 3B 0D 0A 3B 54 45 53 54 20 ERO)...;..;TEST
0000B0: 49 46 20 48 4C 20 3D 20 44 45 0D 0A 3B 0D 0A 43 IF HL = DE..;..C
0000C0: 43 45 51 3A 3A 0D 0A 20 20 20 20 20 20 20 20 43 CEQ::.. C
0000D0: 41 4C 4C 20 20 20 20 43 43 43 4D 50 0D 0A 20 20 ALL CCCMP..
0000E0: 20 20 20 20 20 20 52 5A 0D 0A 20 20 20 20 20 20 RZ..
0000F0: 20 20 44 43 58 20 20 20 20 20 48 0D 0A 20 20 20 DCX H..
000100: 20 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B 54 45 RET..;..;TE
000110: 53 54 20 49 46 20 44 45 20 21 3D 20 48 4C 0D 0A ST IF DE != HL..
000120: 43 43 4E 45 3A 3A 0D 0A 20 20 20 20 20 20 20 20 CCNE::..
000130: 43 41 4C 4C 20 20 20 20 43 43 43 4D 50 0D 0A 20 CALL CCCMP..
000140: 20 20 20 20 20 20 20 52 4E 5A 0D 0A 20 20 20 20 RNZ..
000150: 20 20 20 20 44 43 58 20 20 20 20 20 48 0D 0A 20 DCX H..
000160: 20 20 20 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B RET..;..;
000170: 54 45 53 54 20 49 46 20 44 45 20 3E 20 48 4C 20 TEST IF DE > HL
000180: 28 53 49 47 4E 45 44 29 0D 0A 43 43 47 54 3A 3A (SIGNED)..CCGT::
000190: 0D 0A 20 20 20 20 20 20 20 20 58 43 48 47 0D 0A .. XCHG..
0001A0: 20 20 20 20 20 20 20 20 43 41 4C 4C 20 20 20 20 CALL
0001B0: 43 43 43 4D 50 0D 0A 20 20 20 20 20 20 20 20 52 CCCMP.. R
0001C0: 43 0D 0A 20 20 20 20 20 20 20 20 44 43 58 20 20 C.. DCX
0001D0: 20 20 20 48 0D 0A 20 20 20 20 20 20 20 20 52 45 H.. RE
0001E0: 54 0D 0A 3B 0D 0A 3B 54 45 53 54 20 49 46 20 44 T..;..;TEST IF D
0001F0: 45 20 3C 3D 20 48 4C 20 28 53 49 47 4E 45 44 29 E <= HL (SIGNED)
Size : 512 (Real : 512)
000000: 20 20 20 20 43 43 47 49 4E 54 0D 0A 3B 0D 0A 43 CCGINT..;..C
000010: 43 44 53 47 49 3A 3A 0D 0A 20 20 20 20 20 20 20 CDSGI::..
000020: 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 20 INX H..
000030: 20 20 20 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 INX H..
000040: 20 20 20 20 20 20 20 44 41 44 20 20 20 20 20 53 DAD S
000050: 50 0D 0A 3B 0D 0A 3B 46 45 54 43 48 20 41 20 46 P..;..;FETCH A F
000060: 55 4C 4C 20 31 36 2D 42 49 54 20 49 4E 54 45 47 ULL 16-BIT INTEG
000070: 45 52 20 46 52 4F 4D 20 54 48 45 20 41 44 44 52 ER FROM THE ADDR
000080: 45 53 53 20 49 4E 20 48 4C 20 49 4E 54 4F 20 48 ESS IN HL INTO H
000090: 4C 0D 0A 43 43 47 49 4E 54 3A 3A 0D 0A 20 20 20 L..CCGINT::..
0000A0: 20 20 20 20 20 4D 4F 56 20 20 20 20 20 41 2C 4D MOV A,M
0000B0: 0D 0A 20 20 20 20 20 20 20 20 49 4E 58 20 20 20 .. INX
0000C0: 20 20 48 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 H.. MOV
0000D0: 20 20 20 20 20 48 2C 4D 0D 0A 20 20 20 20 20 20 H,M..
0000E0: 20 20 4D 4F 56 20 20 20 20 20 4C 2C 41 0D 0A 20 MOV L,A..
0000F0: 20 20 20 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 43 RET..;..C
000100: 43 44 45 43 43 3A 3A 0D 0A 20 20 20 20 20 20 20 CDECC::..
000110: 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 20 INX H..
000120: 20 20 20 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 INX H..
000130: 20 20 20 20 20 20 20 44 41 44 20 20 20 20 20 53 DAD S
000140: 50 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 P.. MOV
000150: 20 20 20 44 2C 48 0D 0A 20 20 20 20 20 20 20 20 D,H..
000160: 4D 4F 56 20 20 20 20 20 45 2C 4C 0D 0A 20 20 20 MOV E,L..
000170: 20 20 20 20 20 43 41 4C 4C 20 20 20 20 43 43 47 CALL CCG
000180: 43 48 41 52 0D 0A 20 20 20 20 20 20 20 20 44 43 CHAR.. DC
000190: 58 20 20 20 20 20 48 0D 0A 20 20 20 20 20 20 20 X H..
0001A0: 20 4D 4F 56 20 20 20 20 20 41 2C 4C 0D 0A 20 20 MOV A,L..
0001B0: 20 20 20 20 20 20 53 54 41 58 20 20 20 20 44 0D STAX D.
0001C0: 0A 20 20 20 20 20 20 20 20 52 45 54 0D 0A 3B 0D . RET..;.
0001D0: 0A 43 43 49 4E 43 43 3A 3A 0D 0A 20 20 20 20 20 .CCINCC::..
0001E0: 20 20 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 INX H..
0001F0: 20 20 20 20 20 20 49 4E 58 20 20 20 20 20 48 0D INX H.
Size : 512 (Real : 512)
000000: 0D 0A 43 43 4C 45 3A 3A 0D 0A 20 20 20 20 20 20 ..CCLE::..
000010: 20 20 43 41 4C 4C 20 20 20 20 43 43 43 4D 50 0D CALL CCCMP.
000020: 0A 20 20 20 20 20 20 20 20 52 5A 0D 0A 20 20 20 . RZ..
000030: 20 20 20 20 20 52 43 0D 0A 20 20 20 20 20 20 20 RC..
000040: 20 44 43 58 20 20 20 20 20 48 0D 0A 20 20 20 20 DCX H..
000050: 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B 54 45 53 RET..;..;TES
000060: 54 20 49 46 20 44 45 20 3E 3D 20 48 4C 20 28 53 T IF DE >= HL (S
000070: 49 47 4E 45 44 29 0D 0A 43 43 47 45 3A 3A 0D 0A IGNED)..CCGE::..
000080: 20 20 20 20 20 20 20 20 43 41 4C 4C 20 20 20 20 CALL
000090: 43 43 43 4D 50 0D 0A 20 20 20 20 20 20 20 20 52 CCCMP.. R
0000A0: 4E 43 0D 0A 20 20 20 20 20 20 20 20 44 43 58 20 NC.. DCX
0000B0: 20 20 20 20 48 0D 0A 20 20 20 20 20 20 20 20 52 H.. R
0000C0: 45 54 0D 0A 3B 0D 0A 3B 54 45 53 54 20 49 46 20 ET..;..;TEST IF
0000D0: 44 45 20 3C 20 48 4C 20 28 53 49 47 4E 45 44 29 DE < HL (SIGNED)
0000E0: 0D 0A 43 43 4C 54 3A 3A 0D 0A 20 20 20 20 20 20 ..CCLT::..
0000F0: 20 20 43 41 4C 4C 20 20 20 20 43 43 43 4D 50 0D CALL CCCMP.
000100: 0A 20 20 20 20 20 20 20 20 52 43 0D 0A 20 20 20 . RC..
000110: 20 20 20 20 20 44 43 58 20 20 20 20 20 48 0D 0A DCX H..
000120: 20 20 20 20 20 20 20 20 52 45 54 0D 0A 3B 0D 0A RET..;..
000130: 3B 43 4F 4D 4D 4F 4E 20 52 4F 55 54 49 4E 45 20 ;COMMON ROUTINE
000140: 54 4F 20 50 45 52 46 4F 52 4D 20 41 20 53 49 47 TO PERFORM A SIG
000150: 4E 45 44 20 43 4F 4D 50 41 52 45 20 4F 46 20 44 NED COMPARE OF D
000160: 45 20 41 4E 44 20 48 4C 0D 0A 3B 20 54 48 49 53 E AND HL..; THIS
000170: 20 52 4F 55 54 49 4E 45 20 50 45 52 46 4F 52 4D ROUTINE PERFORM
000180: 53 20 44 45 20 2D 20 48 4C 20 41 4E 44 20 53 45 S DE - HL AND SE
000190: 54 53 20 54 48 45 20 43 4F 4E 44 49 54 49 4F 4E TS THE CONDITION
0001A0: 53 3A 0D 0A 3B 20 43 41 52 52 59 20 52 45 46 4C S:..; CARRY REFL
0001B0: 45 43 54 53 20 53 49 47 4E 20 4F 46 20 44 49 46 ECTS SIGN OF DIF
0001C0: 46 45 52 45 4E 43 45 20 28 53 45 54 20 4D 45 41 FERENCE (SET MEA
0001D0: 4E 53 20 44 45 20 3C 20 48 4C 29 0D 0A 3B 20 5A NS DE < HL)..; Z
0001E0: 45 52 4F 2F 4E 4F 4E 2D 5A 45 52 4F 20 53 45 54 ERO/NON-ZERO SET
0001F0: 20 41 43 43 4F 52 44 49 4E 47 20 54 4F 20 45 51 ACCORDING TO EQ
Size : 512 (Real : 512)
000000: 0A 20 20 20 20 20 20 20 20 44 41 44 20 20 20 20 . DAD
000010: 20 53 50 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 SP.. MOV
000020: 20 20 20 20 20 44 2C 48 0D 0A 20 20 20 20 20 20 D,H..
000030: 20 20 4D 4F 56 20 20 20 20 20 45 2C 4C 0D 0A 20 MOV E,L..
000040: 20 20 20 20 20 20 20 43 41 4C 4C 20 20 20 20 43 CALL C
000050: 43 47 43 48 41 52 0D 0A 20 20 20 20 20 20 20 20 CGCHAR..
000060: 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 20 20 INX H..
000070: 20 20 20 4D 4F 56 20 20 20 20 20 41 2C 4C 0D 0A MOV A,L..
000080: 20 20 20 20 20 20 20 20 53 54 41 58 20 20 20 20 STAX
000090: 44 0D 0A 20 20 20 20 20 20 20 20 52 45 54 0D 0A D.. RET..
0000A0: 3B 0D 0A 43 44 50 44 50 43 3A 3A 0D 0A 20 20 20 ;..CDPDPC::..
0000B0: 20 20 20 20 20 44 41 44 20 20 20 20 20 44 0D 0A DAD D..
0000C0: 43 43 50 44 50 43 3A 3A 0D 0A 20 20 20 20 20 20 CCPDPC::..
0000D0: 20 20 50 4F 50 20 20 20 20 20 42 20 20 20 20 20 POP B
0000E0: 20 20 3B 52 45 54 20 41 44 44 52 0D 0A 20 20 20 ;RET ADDR..
0000F0: 20 20 20 20 20 50 4F 50 20 20 20 20 20 44 0D 0A POP D..
000100: 20 20 20 20 20 20 20 20 50 55 53 48 20 20 20 20 PUSH
000110: 42 0D 0A 3B 0D 0A 3B 53 54 4F 52 45 20 41 20 53 B..;..;STORE A S
000120: 49 4E 47 4C 45 20 42 59 54 45 20 46 52 4F 4D 20 INGLE BYTE FROM
000130: 48 4C 20 41 54 20 54 48 45 20 41 44 44 52 45 53 HL AT THE ADDRES
000140: 53 20 49 4E 20 44 45 0D 0A 43 43 50 43 48 41 52 S IN DE..CCPCHAR
000150: 3A 3A 0D 0A 50 43 48 41 52 3A 20 20 4D 4F 56 20 ::..PCHAR: MOV
000160: 20 20 20 20 41 2C 4C 0D 0A 20 20 20 20 20 20 20 A,L..
000170: 20 53 54 41 58 20 20 20 20 44 0D 0A 20 20 20 20 STAX D..
000180: 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 43 43 44 45 RET..;..CCDE
000190: 43 49 3A 3A 0D 0A 20 20 20 20 20 20 20 20 49 4E CI::.. IN
0001A0: 58 20 20 20 20 20 48 0D 0A 20 20 20 20 20 20 20 X H..
0001B0: 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 20 INX H..
0001C0: 20 20 20 20 44 41 44 20 20 20 20 20 53 50 0D 0A DAD SP..
0001D0: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
0001E0: 44 2C 48 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 D,H.. MOV
0001F0: 20 20 20 20 20 45 2C 4C 0D 0A 20 20 20 20 20 20 E,L..
Size : 512 (Real : 512)
000000: 55 41 4C 49 54 59 2E 0D 0A 43 43 43 4D 50 3A 3A UALITY...CCCMP::
000010: 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 .. MOV
000020: 20 20 41 2C 48 20 20 20 20 20 3B 49 4E 56 45 52 A,H ;INVER
000030: 54 20 53 49 47 4E 20 4F 46 20 48 4C 0D 0A 20 20 T SIGN OF HL..
000040: 20 20 20 20 20 20 58 52 49 20 20 20 20 20 38 30 XRI 80
000050: 48 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 H.. MOV
000060: 20 20 20 48 2C 41 0D 0A 20 20 20 20 20 20 20 20 H,A..
000070: 4D 4F 56 20 20 20 20 20 41 2C 44 20 20 20 20 20 MOV A,D
000080: 3B 49 4E 56 45 52 54 20 53 49 47 4E 20 4F 46 20 ;INVERT SIGN OF
000090: 44 45 0D 0A 20 20 20 20 20 20 20 20 58 52 49 20 DE.. XRI
0000A0: 20 20 20 20 38 30 48 0D 0A 20 20 20 20 20 20 20 80H..
0000B0: 20 43 4D 50 20 20 20 20 20 48 20 20 20 20 20 20 CMP H
0000C0: 20 3B 43 4F 4D 50 41 52 45 20 4D 53 42 53 0D 0A ;COMPARE MSBS..
0000D0: 20 20 20 20 20 20 20 20 4A 4E 5A 20 20 20 20 20 JNZ
0000E0: 43 43 43 4D 50 31 20 20 3B 44 4F 4E 45 20 49 46 CCCMP1 ;DONE IF
0000F0: 20 4E 45 51 0D 0A 20 20 20 20 20 20 20 20 4D 4F NEQ.. MO
000100: 56 20 20 20 20 20 41 2C 45 20 20 20 20 20 3B 43 V A,E ;C
000110: 4F 4D 50 41 52 45 20 4C 53 42 53 0D 0A 20 20 20 OMPARE LSBS..
000120: 20 20 20 20 20 43 4D 50 20 20 20 20 20 4C 0D 0A CMP L..
000130: 43 43 43 4D 50 31 3A 20 4C 58 49 20 48 2C 31 20 CCCMP1: LXI H,1
000140: 20 20 20 20 20 20 20 20 3B 50 52 45 53 45 54 20 ;PRESET
000150: 54 52 55 45 20 43 4F 4E 44 0D 0A 20 20 20 20 20 TRUE COND..
000160: 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B 54 45 53 54 RET..;..;TEST
000170: 20 49 46 20 44 45 20 3E 3D 20 48 4C 20 28 55 4E IF DE >= HL (UN
000180: 53 49 47 4E 45 44 29 0D 0A 43 43 55 47 45 3A 3A SIGNED)..CCUGE::
000190: 0D 0A 20 20 20 20 20 20 20 20 43 41 4C 4C 20 20 .. CALL
0001A0: 20 20 43 43 55 43 4D 50 0D 0A 20 20 20 20 20 20 CCUCMP..
0001B0: 20 20 52 4E 43 0D 0A 20 20 20 20 20 20 20 20 44 RNC.. D
0001C0: 43 58 20 20 20 20 20 48 0D 0A 20 20 20 20 20 20 CX H..
0001D0: 20 20 52 45 54 0D 0A 3B 0D 0A 3B 54 45 53 54 20 RET..;..;TEST
0001E0: 49 46 20 44 45 20 3C 20 48 4C 20 28 55 4E 53 49 IF DE < HL (UNSI
0001F0: 47 4E 45 44 29 0D 0A 43 43 55 4C 54 3A 3A 0D 0A GNED)..CCULT::..
Size : 512 (Real : 512)
000000: 20 20 43 41 4C 4C 20 20 20 20 43 43 47 49 4E 54 CALL CCGINT
000010: 0D 0A 20 20 20 20 20 20 20 20 44 43 58 20 20 20 .. DCX
000020: 20 20 48 0D 0A 20 20 20 20 20 20 20 20 4A 4D 50 H.. JMP
000030: 20 20 20 20 20 43 43 50 49 4E 54 0D 0A 3B 0D 0A CCPINT..;..
000040: 43 43 49 4E 43 49 3A 3A 0D 0A 20 20 20 20 20 20 CCINCI::..
000050: 20 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 INX H..
000060: 20 20 20 20 20 49 4E 58 20 20 20 20 20 48 0D 0A INX H..
000070: 20 20 20 20 20 20 20 20 44 41 44 20 20 20 20 20 DAD
000080: 53 50 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 SP.. MOV
000090: 20 20 20 20 44 2C 48 0D 0A 20 20 20 20 20 20 20 D,H..
0000A0: 20 4D 4F 56 20 20 20 20 20 45 2C 4C 0D 0A 20 20 MOV E,L..
0000B0: 20 20 20 20 20 20 43 41 4C 4C 20 20 20 20 43 43 CALL CC
0000C0: 47 49 4E 54 0D 0A 20 20 20 20 20 20 20 20 49 4E GINT.. IN
0000D0: 58 20 20 20 20 20 48 0D 0A 20 20 20 20 20 20 20 X H..
0000E0: 20 4A 4D 50 20 20 20 20 20 43 43 50 49 4E 54 0D JMP CCPINT.
0000F0: 0A 3B 0D 0A 43 44 50 44 50 49 3A 3A 0D 0A 20 20 .;..CDPDPI::..
000100: 20 20 20 20 20 20 44 41 44 20 20 20 20 20 44 0D DAD D.
000110: 0A 43 43 50 44 50 49 3A 3A 0D 0A 20 20 20 20 20 .CCPDPI::..
000120: 20 20 20 50 4F 50 20 20 20 20 20 42 20 20 20 20 POP B
000130: 20 20 20 3B 52 45 54 20 41 44 44 52 0D 0A 20 20 ;RET ADDR..
000140: 20 20 20 20 20 20 50 4F 50 20 20 20 20 20 44 0D POP D.
000150: 0A 20 20 20 20 20 20 20 20 50 55 53 48 20 20 20 . PUSH
000160: 20 42 0D 0A 3B 0D 0A 3B 53 54 4F 52 45 20 41 20 B..;..;STORE A
000170: 31 36 2D 42 49 54 20 49 4E 54 45 47 45 52 20 49 16-BIT INTEGER I
000180: 4E 20 48 4C 20 41 54 20 54 48 45 20 41 44 44 52 N HL AT THE ADDR
000190: 45 53 53 20 49 4E 20 44 45 0D 0A 43 43 50 49 4E ESS IN DE..CCPIN
0001A0: 54 3A 3A 0D 0A 50 49 4E 54 3A 20 20 20 4D 4F 56 T::..PINT: MOV
0001B0: 20 20 20 20 20 41 2C 4C 0D 0A 20 20 20 20 20 20 A,L..
0001C0: 20 20 53 54 41 58 20 20 20 20 44 0D 0A 20 20 20 STAX D..
0001D0: 20 20 20 20 20 49 4E 58 20 20 20 20 20 44 0D 0A INX D..
0001E0: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
0001F0: 41 2C 48 0D 0A 20 20 20 20 20 20 20 20 53 54 41 A,H.. STA
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 43 41 4C 4C 20 20 20 20 CALL
000010: 43 43 55 43 4D 50 0D 0A 20 20 20 20 20 20 20 20 CCUCMP..
000020: 52 43 0D 0A 20 20 20 20 20 20 20 20 44 43 58 20 RC.. DCX
000030: 20 20 20 20 48 0D 0A 20 20 20 20 20 20 20 20 52 H.. R
000040: 45 54 0D 0A 3B 0D 0A 3B 54 45 53 54 20 49 46 20 ET..;..;TEST IF
000050: 44 45 20 3E 20 48 4C 20 28 55 4E 53 49 47 4E 45 DE > HL (UNSIGNE
000060: 44 29 0D 0A 43 43 55 47 54 3A 3A 0D 0A 20 20 20 D)..CCUGT::..
000070: 20 20 20 20 20 58 43 48 47 0D 0A 20 20 20 20 20 XCHG..
000080: 20 20 20 43 41 4C 4C 20 20 20 20 43 43 55 43 4D CALL CCUCM
000090: 50 0D 0A 20 20 20 20 20 20 20 20 52 43 0D 0A 20 P.. RC..
0000A0: 20 20 20 20 20 20 20 44 43 58 20 20 20 20 20 48 DCX H
0000B0: 0D 0A 20 20 20 20 20 20 20 20 52 45 54 0D 0A 3B .. RET..;
0000C0: 0D 0A 3B 54 45 53 54 20 49 46 20 44 45 20 3C 3D ..;TEST IF DE <=
0000D0: 20 48 4C 20 28 55 4E 53 49 47 4E 45 44 29 0D 0A HL (UNSIGNED)..
0000E0: 43 43 55 4C 45 3A 3A 0D 0A 20 20 20 20 20 20 20 CCULE::..
0000F0: 20 43 41 4C 4C 20 20 20 20 43 43 55 43 4D 50 0D CALL CCUCMP.
000100: 0A 20 20 20 20 20 20 20 20 52 5A 0D 0A 20 20 20 . RZ..
000110: 20 20 20 20 20 52 43 0D 0A 20 20 20 20 20 20 20 RC..
000120: 20 44 43 58 20 20 20 20 20 48 0D 0A 20 20 20 20 DCX H..
000130: 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B 43 4F 4D RET..;..;COM
000140: 4D 4F 4E 20 52 4F 55 54 49 4E 45 20 54 4F 20 50 MON ROUTINE TO P
000150: 45 52 46 4F 52 4D 20 55 4E 53 49 47 4E 45 44 20 ERFORM UNSIGNED
000160: 43 4F 4D 50 41 52 45 0D 0A 3B 20 43 41 52 52 59 COMPARE..; CARRY
000170: 20 53 45 54 20 49 46 20 44 45 20 3C 20 48 4C 0D SET IF DE < HL.
000180: 0A 3B 20 5A 45 52 4F 2F 4E 4F 4E 5A 45 52 4F 20 .; ZERO/NONZERO
000190: 53 45 54 20 41 43 43 4F 52 44 49 4E 47 4C 59 0D SET ACCORDINGLY.
0001A0: 0A 43 43 55 43 4D 50 3A 3A 0D 0A 20 20 20 20 20 .CCUCMP::..
0001B0: 20 20 20 4D 4F 56 20 20 20 20 20 41 2C 44 0D 0A MOV A,D..
0001C0: 20 20 20 20 20 20 20 20 43 4D 50 20 20 20 20 20 CMP
0001D0: 48 0D 0A 20 20 20 20 20 20 20 20 4A 4E 5A 20 20 H.. JNZ
0001E0: 20 20 20 55 43 4D 50 31 0D 0A 20 20 20 20 20 20 UCMP1..
0001F0: 20 20 4D 4F 56 20 20 20 20 20 41 2C 45 0D 0A 20 MOV A,E..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
000010: 4C 2C 41 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 L,A.. MOV
000020: 20 20 20 20 20 41 2C 45 0D 0A 20 20 20 20 20 20 A,E..
000030: 20 20 53 55 42 20 20 20 20 20 43 0D 0A 20 20 20 SUB C..
000040: 20 20 20 20 20 4D 4F 56 20 20 20 20 20 45 2C 41 MOV E,A
000050: 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 .. MOV
000060: 20 20 41 2C 44 0D 0A 20 20 20 20 20 20 20 20 53 A,D.. S
000070: 42 42 20 20 20 20 20 42 0D 0A 20 20 20 20 20 20 BB B..
000080: 20 20 4D 4F 56 20 20 20 20 20 44 2C 41 0D 0A 43 MOV D,A..C
000090: 43 44 49 56 32 3A 20 50 4F 50 20 20 20 20 20 50 CDIV2: POP P
0000A0: 53 57 0D 0A 20 20 20 20 20 20 20 20 44 43 52 20 SW.. DCR
0000B0: 20 20 20 20 41 0D 0A 20 20 20 20 20 20 20 20 4A A.. J
0000C0: 5A 20 20 20 20 20 20 43 43 44 49 56 33 0D 0A 20 Z CCDIV3..
0000D0: 20 20 20 20 20 20 20 50 55 53 48 20 20 20 20 50 PUSH P
0000E0: 53 57 0D 0A 20 20 20 20 20 20 20 20 4A 4D 50 20 SW.. JMP
0000F0: 20 20 20 20 43 43 44 49 56 31 0D 0A 43 43 44 49 CCDIV1..CCDI
000100: 56 33 3A 20 50 4F 50 20 20 20 20 20 50 53 57 0D V3: POP PSW.
000110: 0A 20 20 20 20 20 20 20 20 52 50 0D 0A 20 20 20 . RP..
000120: 20 20 20 20 20 43 41 4C 4C 20 20 20 20 43 43 44 CALL CCD
000130: 45 4E 45 47 0D 0A 20 20 20 20 20 20 20 20 58 43 ENEG.. XC
000140: 48 47 0D 0A 20 20 20 20 20 20 20 20 43 41 4C 4C HG.. CALL
000150: 20 20 20 20 43 43 44 45 4E 45 47 0D 0A 20 20 20 CCDENEG..
000160: 20 20 20 20 20 58 43 48 47 0D 0A 20 20 20 20 20 XCHG..
000170: 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B 4E 45 47 41 RET..;..;NEGA
000180: 54 45 20 54 48 45 20 49 4E 54 45 47 45 52 20 49 TE THE INTEGER I
000190: 4E 20 44 45 20 28 49 4E 54 45 52 4E 41 4C 20 52 N DE (INTERNAL R
0001A0: 4F 55 54 49 4E 45 29 0D 0A 43 43 44 45 4E 45 47 OUTINE)..CCDENEG
0001B0: 3A 20 4D 4F 56 20 20 20 20 41 2C 44 0D 0A 20 20 : MOV A,D..
0001C0: 20 20 20 20 20 20 43 4D 41 0D 0A 20 20 20 20 20 CMA..
0001D0: 20 20 20 4D 4F 56 20 20 20 20 20 44 2C 41 0D 0A MOV D,A..
0001E0: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
0001F0: 41 2C 45 0D 0A 20 20 20 20 20 20 20 20 43 4D 41 A,E.. CMA
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 43 4D 50 20 20 20 20 20 4C CMP L
000010: 0D 0A 55 43 4D 50 31 3A 20 20 4C 58 49 20 20 20 ..UCMP1: LXI
000020: 20 20 48 2C 31 0D 0A 20 20 20 20 20 20 20 20 52 H,1.. R
000030: 45 54 0D 0A 3B 0D 0A 3B 53 48 49 46 54 20 44 45 ET..;..;SHIFT DE
000040: 20 41 52 49 54 48 4D 45 54 49 43 41 4C 4C 59 20 ARITHMETICALLY
000050: 52 49 47 48 54 20 42 59 20 48 4C 20 41 4E 44 20 RIGHT BY HL AND
000060: 52 45 54 55 52 4E 20 49 4E 20 48 4C 0D 0A 43 43 RETURN IN HL..CC
000070: 41 53 52 3A 3A 0D 0A 20 20 20 20 20 20 20 20 58 ASR::.. X
000080: 43 48 47 0D 0A 20 20 20 20 20 20 20 20 44 43 52 CHG.. DCR
000090: 20 20 20 20 20 45 0D 0A 20 20 20 20 20 20 20 20 E..
0000A0: 52 4D 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 RM.. MOV
0000B0: 20 20 20 20 41 2C 48 0D 0A 20 20 20 20 20 20 20 A,H..
0000C0: 20 52 41 4C 0D 0A 20 20 20 20 20 20 20 20 4D 4F RAL.. MO
0000D0: 56 20 20 20 20 20 41 2C 48 0D 0A 20 20 20 20 20 V A,H..
0000E0: 20 20 20 52 41 52 0D 0A 20 20 20 20 20 20 20 20 RAR..
0000F0: 4D 4F 56 20 20 20 20 20 48 2C 41 0D 0A 20 20 20 MOV H,A..
000100: 20 20 20 20 20 4D 4F 56 20 20 20 20 20 41 2C 4C MOV A,L
000110: 0D 0A 20 20 20 20 20 20 20 20 52 41 52 0D 0A 20 .. RAR..
000120: 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 4C MOV L
000130: 2C 41 0D 0A 20 20 20 20 20 20 20 20 4A 4D 50 20 ,A.. JMP
000140: 20 20 20 20 43 43 41 53 52 2B 31 0D 0A 3B 0D 0A CCASR+1..;..
000150: 3B 53 48 49 46 54 20 44 45 20 41 52 49 54 48 4D ;SHIFT DE ARITHM
000160: 45 54 49 43 41 4C 4C 59 20 4C 45 46 54 20 42 59 ETICALLY LEFT BY
000170: 20 48 4C 20 41 4E 44 20 52 45 54 55 52 4E 20 49 HL AND RETURN I
000180: 4E 20 48 4C 0D 0A 43 43 41 53 4C 3A 3A 0D 0A 20 N HL..CCASL::..
000190: 20 20 20 20 20 20 20 58 43 48 47 0D 0A 20 20 20 XCHG..
0001A0: 20 20 20 20 20 44 43 52 20 20 20 20 20 45 0D 0A DCR E..
0001B0: 20 20 20 20 20 20 20 20 52 4D 0D 0A 20 20 20 20 RM..
0001C0: 20 20 20 20 44 41 44 20 20 20 20 20 48 0D 0A 20 DAD H..
0001D0: 20 20 20 20 20 20 20 4A 4D 50 20 20 20 20 20 43 JMP C
0001E0: 43 41 53 4C 2B 31 0D 0A 3B 0D 0A 3B 53 55 42 54 CASL+1..;..;SUBT
0001F0: 52 41 43 54 20 48 4C 20 46 52 4F 4D 20 44 45 20 RACT HL FROM DE
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 .. MOV
000010: 20 20 45 2C 41 0D 0A 20 20 20 20 20 20 20 20 49 E,A.. I
000020: 4E 58 20 20 20 20 20 44 0D 0A 20 20 20 20 20 20 NX D..
000030: 20 20 52 45 54 0D 0A 3B 0D 0A 3B 4E 45 47 41 54 RET..;..;NEGAT
000040: 45 20 54 48 45 20 49 4E 54 45 47 45 52 20 49 4E E THE INTEGER IN
000050: 20 42 43 20 28 49 4E 54 45 52 4E 41 4C 20 52 4F BC (INTERNAL RO
000060: 55 54 49 4E 45 29 0D 0A 43 43 42 43 4E 45 47 3A UTINE)..CCBCNEG:
000070: 20 4D 4F 56 20 20 20 20 41 2C 42 0D 0A 20 20 20 MOV A,B..
000080: 20 20 20 20 20 43 4D 41 0D 0A 20 20 20 20 20 20 CMA..
000090: 20 20 4D 4F 56 20 20 20 20 20 42 2C 41 0D 0A 20 MOV B,A..
0000A0: 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 41 MOV A
0000B0: 2C 43 0D 0A 20 20 20 20 20 20 20 20 43 4D 41 0D ,C.. CMA.
0000C0: 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 . MOV
0000D0: 20 43 2C 41 0D 0A 20 20 20 20 20 20 20 20 49 4E C,A.. IN
0000E0: 58 20 20 20 20 20 42 0D 0A 20 20 20 20 20 20 20 X B..
0000F0: 20 52 45 54 0D 0A 3B 0D 0A 3B 52 4F 54 41 54 45 RET..;..;ROTATE
000100: 20 44 45 20 4C 45 46 54 20 4F 4E 45 20 42 49 54 DE LEFT ONE BIT
000110: 20 28 49 4E 54 45 52 4E 41 4C 20 52 4F 55 54 49 (INTERNAL ROUTI
000120: 4E 45 29 0D 0A 43 43 52 44 45 4C 3A 20 4D 4F 56 NE)..CCRDEL: MOV
000130: 20 20 20 20 20 41 2C 45 0D 0A 20 20 20 20 20 20 A,E..
000140: 20 20 52 41 4C 0D 0A 20 20 20 20 20 20 20 20 4D RAL.. M
000150: 4F 56 20 20 20 20 20 45 2C 41 0D 0A 20 20 20 20 OV E,A..
000160: 20 20 20 20 4D 4F 56 20 20 20 20 20 41 2C 44 0D MOV A,D.
000170: 0A 20 20 20 20 20 20 20 20 52 41 4C 0D 0A 20 20 . RAL..
000180: 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 44 2C MOV D,
000190: 41 0D 0A 20 20 20 20 20 20 20 20 4F 52 41 20 20 A.. ORA
0001A0: 20 20 20 45 0D 0A 20 20 20 20 20 20 20 20 52 45 E.. RE
0001B0: 54 0D 0A 3B 0D 0A 3B 43 4F 4D 50 41 52 45 20 42 T..;..;COMPARE B
0001C0: 43 20 54 4F 20 44 45 20 28 49 4E 54 45 52 4E 41 C TO DE (INTERNA
0001D0: 4C 20 52 4F 55 54 49 4E 45 29 0D 0A 43 43 43 4D L ROUTINE)..CCCM
0001E0: 50 42 43 44 45 3A 20 4D 4F 56 20 20 41 2C 45 0D PBCDE: MOV A,E.
0001F0: 0A 20 20 20 20 20 20 20 20 53 55 42 20 20 20 20 . SUB
Size : 512 (Real : 512)
000000: 41 4E 44 20 52 45 54 55 52 4E 20 49 4E 20 48 4C AND RETURN IN HL
000010: 0D 0A 43 43 53 55 42 3A 3A 0D 0A 20 20 20 20 20 ..CCSUB::..
000020: 20 20 20 4D 4F 56 20 20 20 20 20 41 2C 45 0D 0A MOV A,E..
000030: 20 20 20 20 20 20 20 20 53 55 42 20 20 20 20 20 SUB
000040: 4C 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 L.. MOV
000050: 20 20 20 4C 2C 41 0D 0A 20 20 20 20 20 20 20 20 L,A..
000060: 4D 4F 56 20 20 20 20 20 41 2C 44 0D 0A 20 20 20 MOV A,D..
000070: 20 20 20 20 20 53 42 42 20 20 20 20 20 48 0D 0A SBB H..
000080: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
000090: 48 2C 41 0D 0A 20 20 20 20 20 20 20 20 52 45 54 H,A.. RET
0000A0: 0D 0A 3B 0D 0A 3B 46 4F 52 4D 20 54 48 45 20 54 ..;..;FORM THE T
0000B0: 57 4F 27 53 20 43 4F 4D 50 4C 45 4D 45 4E 54 20 WO'S COMPLEMENT
0000C0: 4F 46 20 48 4C 0D 0A 43 43 4E 45 47 3A 3A 0D 0A OF HL..CCNEG::..
0000D0: 20 20 20 20 20 20 20 20 43 41 4C 4C 20 20 20 20 CALL
0000E0: 43 43 43 4F 4D 0D 0A 20 20 20 20 20 20 20 20 49 CCCOM.. I
0000F0: 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 20 20 20 NX H..
000100: 20 20 52 45 54 0D 0A 3B 0D 0A 3B 46 4F 52 4D 20 RET..;..;FORM
000110: 54 48 45 20 4F 4E 45 27 53 20 43 4F 4D 50 4C 45 THE ONE'S COMPLE
000120: 4D 45 4E 54 20 4F 46 20 48 4C 0D 0A 43 43 43 4F MENT OF HL..CCCO
000130: 4D 3A 3A 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 M::.. MOV
000140: 20 20 20 20 20 41 2C 48 0D 0A 20 20 20 20 20 20 A,H..
000150: 20 20 43 4D 41 0D 0A 20 20 20 20 20 20 20 20 4D CMA.. M
000160: 4F 56 20 20 20 20 20 48 2C 41 0D 0A 20 20 20 20 OV H,A..
000170: 20 20 20 20 4D 4F 56 20 20 20 20 20 41 2C 4C 0D MOV A,L.
000180: 0A 20 20 20 20 20 20 20 20 43 4D 41 0D 0A 20 20 . CMA..
000190: 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 4C 2C MOV L,
0001A0: 41 0D 0A 20 20 20 20 20 20 20 20 52 45 54 0D 0A A.. RET..
0001B0: 3B 0D 0A 3B 4D 55 4C 54 49 50 4C 59 20 44 45 20 ;..;MULTIPLY DE
0001C0: 42 59 20 48 4C 20 41 4E 44 20 52 45 54 55 52 4E BY HL AND RETURN
0001D0: 20 49 4E 20 48 4C 20 28 53 49 47 4E 45 44 20 4D IN HL (SIGNED M
0001E0: 55 4C 54 49 50 4C 59 29 0D 0A 43 43 4D 55 4C 54 ULTIPLY)..CCMULT
0001F0: 3A 3A 0D 0A 4D 55 4C 54 3A 20 20 20 4D 4F 56 20 ::..MULT: MOV
Size : 512 (Real : 512)
000000: 20 43 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 C.. MOV
000010: 20 20 20 20 41 2C 44 0D 0A 20 20 20 20 20 20 20 A,D..
000020: 20 53 42 42 20 20 20 20 20 42 0D 0A 20 20 20 20 SBB B..
000030: 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B 4C 4F 47 RET..;..;LOG
000040: 49 43 41 4C 20 4E 45 47 41 54 49 4F 4E 0D 0A 43 ICAL NEGATION..C
000050: 43 4C 4E 45 47 3A 3A 0D 0A 20 20 20 20 20 20 20 CLNEG::..
000060: 20 4D 4F 56 20 20 20 20 20 41 2C 48 0D 0A 20 20 MOV A,H..
000070: 20 20 20 20 20 20 4F 52 41 20 20 20 20 20 4C 0D ORA L.
000080: 0A 20 20 20 20 20 20 20 20 4A 4E 5A 20 20 20 20 . JNZ
000090: 20 24 2B 36 0D 0A 20 20 20 20 20 20 20 20 4D 56 $+6.. MV
0000A0: 49 20 20 20 20 20 4C 2C 31 0D 0A 20 20 20 20 20 I L,1..
0000B0: 20 20 20 52 45 54 0D 0A 20 20 20 20 20 20 20 20 RET..
0000C0: 4C 58 49 20 20 20 20 20 48 2C 30 0D 0A 20 20 20 LXI H,0..
0000D0: 20 20 20 20 20 52 45 54 0D 0A 3B 0D 0A 3B 20 45 RET..;..; E
0000E0: 58 45 43 55 54 45 20 22 53 57 49 54 43 48 22 20 XECUTE "SWITCH"
0000F0: 53 54 41 54 45 4D 45 4E 54 0D 0A 3B 0D 0A 3B 20 STATEMENT..;..;
000100: 20 48 4C 20 20 3D 20 20 53 57 49 54 43 48 20 56 HL = SWITCH V
000110: 41 4C 55 45 0D 0A 3B 20 28 53 50 29 20 2D 3E 20 ALUE..; (SP) ->
000120: 53 57 49 54 43 48 20 54 41 42 4C 45 0D 0A 3B 20 SWITCH TABLE..;
000130: 20 20 20 20 20 20 20 20 44 57 20 41 44 44 52 31 DW ADDR1
000140: 2C 20 56 41 4C 55 45 31 0D 0A 3B 20 20 20 20 20 , VALUE1..;
000150: 20 20 20 20 44 57 20 41 44 44 52 32 2C 20 56 41 DW ADDR2, VA
000160: 4C 55 45 32 0D 0A 3B 20 20 20 20 20 20 20 20 20 LUE2..;
000170: 2E 2E 2E 0D 0A 3B 20 20 20 20 20 20 20 20 20 44 .....; D
000180: 57 20 30 0D 0A 3B 20 20 20 20 20 20 20 20 5B 4A W 0..; [J
000190: 4D 50 20 64 65 66 61 75 6C 74 5D 0D 0A 3B 20 20 MP default]..;
0001A0: 20 20 20 20 20 20 20 63 6F 6E 74 69 6E 75 61 74 continuat
0001B0: 69 6F 6E 0D 0A 3B 0D 0A 43 43 53 57 49 54 43 48 ion..;..CCSWITCH
0001C0: 3A 3A 0D 0A 20 20 20 20 20 20 20 20 58 43 48 47 ::.. XCHG
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 3B 44 45 20 ;DE
0001E0: 3D 20 20 53 57 49 54 43 48 20 56 41 4C 55 45 0D = SWITCH VALUE.
0001F0: 0A 20 20 20 20 20 20 20 20 50 4F 50 20 20 20 20 . POP
Size : 512 (Real : 512)
000000: 20 20 20 20 42 2C 48 0D 0A 20 20 20 20 20 20 20 B,H..
000010: 20 4D 4F 56 20 20 20 20 20 43 2C 4C 0D 0A 20 20 MOV C,L..
000020: 20 20 20 20 20 20 4C 58 49 20 20 20 20 20 48 2C LXI H,
000030: 30 0D 0A 4D 55 4C 54 31 3A 20 20 4D 4F 56 20 20 0..MULT1: MOV
000040: 20 20 20 41 2C 43 0D 0A 20 20 20 20 20 20 20 20 A,C..
000050: 52 52 43 0D 0A 20 20 20 20 20 20 20 20 4A 4E 43 RRC.. JNC
000060: 20 20 20 20 20 4D 55 4C 54 32 0D 0A 20 20 20 20 MULT2..
000070: 20 20 20 20 44 41 44 20 20 20 20 20 44 0D 0A 4D DAD D..M
000080: 55 4C 54 32 3A 20 20 58 52 41 20 41 0D 0A 20 20 ULT2: XRA A..
000090: 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 41 2C MOV A,
0000A0: 42 0D 0A 20 20 20 20 20 20 20 20 52 41 52 0D 0A B.. RAR..
0000B0: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
0000C0: 42 2C 41 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 B,A.. MOV
0000D0: 20 20 20 20 20 41 2C 43 0D 0A 20 20 20 20 20 20 A,C..
0000E0: 20 20 52 41 52 0D 0A 20 20 20 20 20 20 20 20 4D RAR.. M
0000F0: 4F 56 20 20 20 20 20 43 2C 41 0D 0A 20 20 20 20 OV C,A..
000100: 20 20 20 20 4F 52 41 20 20 20 20 20 42 0D 0A 20 ORA B..
000110: 20 20 20 20 20 20 20 52 5A 0D 0A 20 20 20 20 20 RZ..
000120: 20 20 20 58 52 41 20 20 20 20 20 41 0D 0A 20 20 XRA A..
000130: 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 41 2C MOV A,
000140: 45 0D 0A 20 20 20 20 20 20 20 20 52 41 4C 0D 0A E.. RAL..
000150: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
000160: 45 2C 41 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 E,A.. MOV
000170: 20 20 20 20 20 41 2C 44 0D 0A 20 20 20 20 20 20 A,D..
000180: 20 20 52 41 4C 0D 0A 20 20 20 20 20 20 20 20 4D RAL.. M
000190: 4F 56 20 20 20 20 20 44 2C 41 0D 0A 20 20 20 20 OV D,A..
0001A0: 20 20 20 20 4F 52 41 20 20 20 20 20 45 0D 0A 20 ORA E..
0001B0: 20 20 20 20 20 20 20 52 5A 0D 0A 20 20 20 20 20 RZ..
0001C0: 20 20 20 4A 4D 50 20 20 20 20 20 4D 55 4C 54 31 JMP MULT1
0001D0: 0D 0A 3B 0D 0A 3B 44 49 56 49 44 45 20 44 45 20 ..;..;DIVIDE DE
0001E0: 42 59 20 48 4C 20 41 4E 44 20 52 45 54 55 52 4E BY HL AND RETURN
0001F0: 20 51 55 4F 54 49 45 4E 54 20 49 4E 20 48 4C 2C QUOTIENT IN HL,
Size : 512 (Real : 512)
000000: 20 48 20 20 20 20 20 20 20 3B 48 4C 20 2D 3E 20 H ;HL ->
000010: 53 57 49 54 43 48 20 54 41 42 4C 45 0D 0A 53 57 SWITCH TABLE..SW
000020: 4C 4F 4F 50 3A 20 4D 4F 56 20 20 20 20 20 43 2C LOOP: MOV C,
000030: 4D 0D 0A 20 20 20 20 20 20 20 20 49 4E 58 20 20 M.. INX
000040: 20 20 20 48 0D 0A 20 20 20 20 20 20 20 20 4D 4F H.. MO
000050: 56 20 20 20 20 20 42 2C 4D 20 20 20 20 20 3B 42 V B,M ;B
000060: 43 20 2D 3E 20 43 41 53 45 20 41 44 44 52 2C 20 C -> CASE ADDR,
000070: 45 4C 53 45 20 30 0D 0A 20 20 20 20 20 20 20 20 ELSE 0..
000080: 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 20 20 INX H..
000090: 20 20 20 4D 4F 56 20 20 20 20 20 41 2C 42 0D 0A MOV A,B..
0000A0: 20 20 20 20 20 20 20 20 4F 52 41 20 20 20 20 20 ORA
0000B0: 43 0D 0A 20 20 20 20 20 20 20 20 4A 5A 20 20 20 C.. JZ
0000C0: 20 20 20 53 57 45 4E 44 20 20 20 3B 44 45 46 41 SWEND ;DEFA
0000D0: 55 4C 54 20 4F 52 20 43 4F 4E 54 49 4E 55 41 54 ULT OR CONTINUAT
0000E0: 49 4F 4E 20 43 4F 44 45 0D 0A 20 20 20 20 20 20 ION CODE..
0000F0: 20 20 4D 4F 56 20 20 20 20 20 41 2C 4D 0D 0A 20 MOV A,M..
000100: 20 20 20 20 20 20 20 49 4E 58 20 20 20 20 20 48 INX H
000110: 0D 0A 20 20 20 20 20 20 20 20 43 4D 50 20 20 20 .. CMP
000120: 20 20 45 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 E.. MOV
000130: 20 20 20 20 20 41 2C 4D 0D 0A 20 20 20 20 20 20 A,M..
000140: 20 20 49 4E 58 20 20 20 20 20 48 0D 0A 20 20 20 INX H..
000150: 20 20 20 20 20 4A 4E 5A 20 20 20 20 20 53 57 4C JNZ SWL
000160: 4F 4F 50 0D 0A 20 20 20 20 20 20 20 20 43 4D 50 OOP.. CMP
000170: 20 20 20 20 20 44 0D 0A 20 20 20 20 20 20 20 20 D..
000180: 4A 4E 5A 20 20 20 20 20 53 57 4C 4F 4F 50 0D 0A JNZ SWLOOP..
000190: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
0001A0: 48 2C 42 20 20 20 20 20 3B 43 41 53 45 20 4D 41 H,B ;CASE MA
0001B0: 54 43 48 45 44 0D 0A 20 20 20 20 20 20 20 20 4D TCHED.. M
0001C0: 4F 56 20 20 20 20 20 4C 2C 43 0D 0A 53 57 45 4E OV L,C..SWEN
0001D0: 44 3A 20 20 50 43 48 4C 0D 0A 3B 0D 0A 20 20 20 D: PCHL..;..
0001E0: 20 20 20 20 20 45 4E 44 0D 0A 1A 1A 1A 1A 1A 1A END........
0001F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
Size : 512 (Real : 512)
000000: 20 52 45 4D 41 49 4E 44 45 52 20 49 4E 20 44 45 REMAINDER IN DE
000010: 20 28 53 49 47 4E 45 44 20 44 49 56 49 44 45 29 (SIGNED DIVIDE)
000020: 0D 0A 43 43 44 49 56 3A 3A 0D 0A 44 49 56 3A 20 ..CCDIV::..DIV:
000030: 20 20 20 4D 4F 56 20 20 20 20 20 42 2C 48 0D 0A MOV B,H..
000040: 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 20 20 MOV
000050: 43 2C 4C 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 C,L.. MOV
000060: 20 20 20 20 20 41 2C 44 0D 0A 20 20 20 20 20 20 A,D..
000070: 20 20 58 52 41 20 20 20 20 20 42 0D 0A 20 20 20 XRA B..
000080: 20 20 20 20 20 50 55 53 48 20 20 20 20 50 53 57 PUSH PSW
000090: 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 20 .. MOV
0000A0: 20 20 41 2C 44 0D 0A 20 20 20 20 20 20 20 20 4F A,D.. O
0000B0: 52 41 20 20 20 20 20 41 0D 0A 20 20 20 20 20 20 RA A..
0000C0: 20 20 43 4D 20 20 20 20 20 20 43 43 44 45 4E 45 CM CCDENE
0000D0: 47 0D 0A 20 20 20 20 20 20 20 20 4D 4F 56 20 20 G.. MOV
0000E0: 20 20 20 41 2C 42 0D 0A 20 20 20 20 20 20 20 20 A,B..
0000F0: 4F 52 41 20 20 20 20 20 41 0D 0A 20 20 20 20 20 ORA A..
000100: 20 20 20 43 4D 20 20 20 20 20 20 43 43 42 43 4E CM CCBCN
000110: 45 47 0D 0A 20 20 20 20 20 20 20 20 4D 56 49 20 EG.. MVI
000120: 20 20 20 20 41 2C 31 36 0D 0A 20 20 20 20 20 20 A,16..
000130: 20 20 50 55 53 48 20 20 20 20 50 53 57 0D 0A 20 PUSH PSW..
000140: 20 20 20 20 20 20 20 58 43 48 47 0D 0A 20 20 20 XCHG..
000150: 20 20 20 20 20 4C 58 49 20 20 20 20 20 44 2C 30 LXI D,0
000160: 0D 0A 43 43 44 49 56 31 3A 20 44 41 44 20 20 20 ..CCDIV1: DAD
000170: 20 20 48 0D 0A 20 20 20 20 20 20 20 20 43 41 4C H.. CAL
000180: 4C 20 20 20 20 43 43 52 44 45 4C 0D 0A 20 20 20 L CCRDEL..
000190: 20 20 20 20 20 4A 5A 20 20 20 20 20 20 43 43 44 JZ CCD
0001A0: 49 56 32 0D 0A 20 20 20 20 20 20 20 20 43 41 4C IV2.. CAL
0001B0: 4C 20 20 20 20 43 43 43 4D 50 42 43 44 45 0D 0A L CCCMPBCDE..
0001C0: 20 20 20 20 20 20 20 20 4A 4D 20 20 20 20 20 20 JM
0001D0: 43 43 44 49 56 32 0D 0A 20 20 20 20 20 20 20 20 CCDIV2..
0001E0: 4D 4F 56 20 20 20 20 20 41 2C 4C 0D 0A 20 20 20 MOV A,L..
0001F0: 20 20 20 20 20 4F 52 49 20 20 20 20 20 31 0D 0A ORI 1..
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 23 64 65 66 69 6E 65 20 56 45 52 53 49 4F 4E 20 #define VERSION
000010: 22 56 65 72 73 69 6F 6E 20 31 2E 32 20 28 52 65 "Version 1.2 (Re
000020: 76 2E 20 32 31 29 5C 6E 22 0D 0A 23 64 65 66 69 v. 21)\n"..#defi
000030: 6E 65 20 43 52 49 47 48 54 31 20 22 43 6F 70 79 ne CRIGHT1 "Copy
000040: 72 69 67 68 74 20 31 39 38 35 20 4A 2E 20 45 2E right 1985 J. E.
000050: 20 48 65 6E 64 72 69 78 5C 6E 5C 6E 22 0D 0A 1A Hendrix\n\n"...
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 3B 0D 0A 3B 2D 2D 2D 2D 2D 20 45 4E 44 3A 20 46 ;..;----- END: F
000010: 69 6E 61 6C 20 6D 6F 64 75 6C 65 20 74 6F 20 62 inal module to b
000020: 65 20 6C 6F 61 64 65 64 0D 0A 3B 0D 0A 55 65 6E e loaded..;..Uen
000030: 64 3A 3A 20 6C 68 6C 64 20 20 36 09 09 3B 67 65 d:: lhld 6..;ge
000040: 74 20 62 64 6F 73 20 61 64 64 72 65 73 73 0D 0A t bdos address..
000050: 20 20 20 20 20 20 20 73 70 68 6C 09 09 3B 75 73 sphl..;us
000060: 65 20 66 6F 72 20 62 61 73 65 20 6F 66 20 73 74 e for base of st
000070: 61 63 6B 0D 0A 20 20 20 20 20 20 20 6C 78 69 20 ack.. lxi
000080: 20 20 68 2C 55 65 6E 64 09 3B 67 65 74 20 73 74 h,Uend.;get st
000090: 61 72 74 20 6F 66 20 66 72 65 65 20 6D 65 6D 6F art of free memo
0000A0: 72 79 0D 0A 20 20 20 20 20 20 20 73 68 6C 64 20 ry.. shld
0000B0: 20 55 6D 65 6D 70 74 72 23 23 09 3B 75 73 65 20 Umemptr##.;use
0000C0: 66 6F 72 20 6D 65 6D 6F 72 79 20 61 6C 6C 6F 63 for memory alloc
0000D0: 61 74 69 6F 6E 0D 0A 20 20 20 20 20 20 20 6A 6D ation.. jm
0000E0: 70 20 20 20 55 6D 61 69 6E 23 23 09 3B 70 61 72 p Umain##.;par
0000F0: 73 65 20 63 6F 6D 6D 61 6E 64 20 6C 69 6E 65 2C se command line,
000100: 20 65 78 65 63 75 74 65 20 70 72 6F 67 72 61 6D execute program
000110: 0D 0A 20 20 20 20 20 20 20 65 6E 64 20 20 20 55 .. end U
000120: 65 6E 64 20 20 20 20 20 20 20 0D 0A 1A 1A 1A 1A end ......
000130: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000140: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000150: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000160: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000170: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 53 54 44 49 4F 2E 48 20 2D /*..** STDIO.H -
000010: 2D 20 53 74 61 6E 64 61 72 64 20 53 6D 61 6C 6C - Standard Small
000020: 2D 43 20 44 65 66 69 6E 69 74 69 6F 6E 73 0D 0A -C Definitions..
000030: 2A 2A 0D 0A 2A 2A 20 43 6F 70 79 72 69 67 68 74 **..** Copyright
000040: 20 31 39 38 34 20 20 4C 2E 20 45 2E 20 50 61 79 1984 L. E. Pay
000050: 6E 65 20 61 6E 64 20 4A 2E 20 45 2E 20 48 65 6E ne and J. E. Hen
000060: 64 72 69 78 0D 0A 2A 2F 0D 0A 23 64 65 66 69 6E drix..*/..#defin
000070: 65 20 73 74 64 69 6E 20 20 20 20 30 0D 0A 23 64 e stdin 0..#d
000080: 65 66 69 6E 65 20 73 74 64 6F 75 74 20 20 20 31 efine stdout 1
000090: 0D 0A 23 64 65 66 69 6E 65 20 73 74 64 65 72 72 ..#define stderr
0000A0: 20 20 20 32 0D 0A 23 64 65 66 69 6E 65 20 45 52 2..#define ER
0000B0: 52 20 20 20 28 2D 32 29 0D 0A 23 64 65 66 69 6E R (-2)..#defin
0000C0: 65 20 45 4F 46 20 20 20 28 2D 31 29 0D 0A 23 64 e EOF (-1)..#d
0000D0: 65 66 69 6E 65 20 59 45 53 20 20 20 20 20 20 31 efine YES 1
0000E0: 0D 0A 23 64 65 66 69 6E 65 20 4E 4F 20 20 20 20 ..#define NO
0000F0: 20 20 20 30 0D 0A 23 64 65 66 69 6E 65 20 4E 55 0..#define NU
000100: 4C 4C 20 20 20 20 20 30 0D 0A 23 64 65 66 69 6E LL 0..#defin
000110: 65 20 43 52 20 20 20 20 20 20 31 33 0D 0A 23 64 e CR 13..#d
000120: 65 66 69 6E 65 20 4C 46 20 20 20 20 20 20 31 30 efine LF 10
000130: 0D 0A 23 64 65 66 69 6E 65 20 42 45 4C 4C 20 20 ..#define BELL
000140: 20 20 20 37 0D 0A 23 64 65 66 69 6E 65 20 53 50 7..#define SP
000150: 41 43 45 20 20 27 20 27 0D 0A 23 64 65 66 69 6E ACE ' '..#defin
000160: 65 20 4E 45 57 4C 49 4E 45 20 4C 46 20 20 20 20 e NEWLINE LF
000170: 20 20 2F 2A 32 33 2A 2F 20 2F 2A 34 35 2A 2F 0D /*23*/ /*45*/.
000180: 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000190: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001A0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001B0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
Size : 512 (Real : 512)
000000: 55 6C 69 6E 6B 3A 3A 20 65 78 74 20 55 6D 61 69 Ulink:: ext Umai
000010: 6E 0D 0A 20 20 20 20 20 20 20 20 65 78 74 20 55 n.. ext U
000020: 65 6E 64 0D 0A 20 20 20 20 20 20 20 20 65 6E 64 end.. end
000030: 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000040: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 6D 69 73 63 65 6C 6C 61 6E /*..** miscellan
000010: 65 6F 75 73 20 64 65 66 69 6E 69 74 69 6F 6E 73 eous definitions
000020: 0D 0A 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4D 41 ..*/..#define MA
000030: 58 46 4E 20 20 20 20 20 20 31 35 09 09 2F 2A 20 XFN 15../*
000040: 6D 61 78 20 66 69 6C 65 20 6E 61 6D 65 20 73 70 max file name sp
000050: 61 63 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 ace */..#define
000060: 49 4E 54 53 5A 20 20 20 20 20 20 20 32 09 09 2F INTSZ 2../
000070: 2A 20 69 6E 74 65 67 65 72 20 73 69 7A 65 20 69 * integer size i
000080: 6E 20 62 79 74 65 73 20 2A 2F 0D 0A 23 64 65 66 n bytes */..#def
000090: 69 6E 65 20 43 4F 4D 4D 45 4E 54 20 20 20 27 3B ine COMMENT ';
0000A0: 27 09 09 2F 2A 20 63 6F 6D 6D 65 6E 74 20 64 65 '../* comment de
0000B0: 6C 69 6D 69 74 65 72 20 2A 2F 0D 0A 23 64 65 66 limiter */..#def
0000C0: 69 6E 65 20 41 4E 4F 54 48 45 52 20 20 20 27 7C ine ANOTHER '|
0000D0: 27 09 09 2F 2A 20 61 6E 6F 74 68 65 72 20 6F 70 '../* another op
0000E0: 65 72 61 6E 64 20 6F 70 74 69 6F 6E 20 2A 2F 0D erand option */.
0000F0: 0A 23 64 65 66 69 6E 65 20 4D 41 58 4C 49 4E 45 .#define MAXLINE
000100: 20 20 20 20 38 31 09 09 2F 2A 20 6C 65 6E 67 74 81../* lengt
000110: 68 20 6F 66 20 73 6F 75 72 63 65 20 6C 69 6E 65 h of source line
000120: 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4D 49 43 */..#define MIC
000130: 4F 55 4E 54 20 20 20 31 35 30 09 09 2F 2A 20 6D OUNT 150../* m
000140: 61 63 68 69 6E 65 20 69 6E 73 74 72 75 63 74 69 achine instructi
000150: 6F 6E 20 68 61 73 68 20 73 70 61 63 65 20 2A 2F on hash space */
000160: 0D 0A 23 64 65 66 69 6E 65 20 4D 49 4F 50 4E 44 ..#define MIOPND
000170: 53 20 20 20 33 30 30 09 09 2F 2A 20 6D 61 78 69 S 300../* maxi
000180: 6D 75 6D 20 75 6E 69 71 75 65 20 6F 70 65 72 61 mum unique opera
000190: 6E 64 20 66 6F 72 6D 61 74 73 20 2A 2F 0D 0A 23 nd formats */..#
0001A0: 64 65 66 69 6E 65 20 4D 49 42 55 46 53 5A 20 20 define MIBUFSZ
0001B0: 34 36 30 30 09 09 2F 2A 20 6D 69 74 20 73 79 6E 4600../* mit syn
0001C0: 74 61 78 20 73 70 61 63 65 20 2A 2F 0D 0A 23 64 tax space */..#d
0001D0: 65 66 69 6E 65 20 4F 42 4A 45 58 54 20 20 22 2E efine OBJEXT ".
0001E0: 52 45 4C 22 09 09 2F 2A 20 6F 62 6A 65 63 74 20 REL"../* object
0001F0: 66 69 6C 65 20 65 78 74 65 6E 73 69 6F 6E 20 2A file extension *
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 2F 0D 0A 23 64 65 66 69 6E 65 20 53 52 43 45 58 /..#define SRCEX
000010: 54 20 20 22 2E 4D 41 43 22 09 09 2F 2A 20 73 6F T ".MAC"../* so
000020: 75 72 63 65 20 66 69 6C 65 20 65 78 74 65 6E 73 urce file extens
000030: 69 6F 6E 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 ion */..#define
000040: 4D 41 58 4C 41 42 20 20 20 20 20 20 38 09 09 2F MAXLAB 8../
000050: 2A 20 6D 61 78 69 6D 75 6D 20 6C 61 62 65 6C 20 * maximum label
000060: 63 68 61 72 61 63 74 65 72 73 20 75 73 65 64 20 characters used
000070: 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 53 54 41 43 */..#define STAC
000080: 4B 20 20 20 20 31 30 32 34 09 09 2F 2A 20 72 65 K 1024../* re
000090: 73 65 72 76 65 64 20 66 6F 72 20 73 74 61 63 6B served for stack
0000A0: 20 73 70 61 63 65 20 2A 2F 0D 0A 23 64 65 66 69 space */..#defi
0000B0: 6E 65 20 4F 48 44 4F 50 45 4E 20 20 20 31 36 34 ne OHDOPEN 164
0000C0: 09 09 2F 2A 20 6F 76 65 72 68 65 61 64 20 62 79 ../* overhead by
0000D0: 74 65 73 20 70 65 72 20 6F 70 65 6E 20 66 69 6C tes per open fil
0000E0: 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4D 41 e */..#define MA
0000F0: 58 4F 50 45 4E 20 20 20 20 20 32 09 09 2F 2A 20 XOPEN 2../*
000100: 6D 61 78 69 6D 75 6D 20 6F 70 65 6E 20 66 69 6C maximum open fil
000110: 65 73 20 2A 2F 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 es */..../*..**
000120: 73 79 6D 62 6F 6C 20 74 61 62 6C 65 0D 0A 2A 2F symbol table..*/
000130: 0D 0A 23 64 65 66 69 6E 65 20 53 54 4D 41 58 20 ..#define STMAX
000140: 20 20 35 30 30 09 09 09 2F 2A 20 6D 61 78 69 6D 500.../* maxim
000150: 75 6D 20 6C 61 62 6C 65 73 20 61 6C 6C 6F 77 65 um lables allowe
000160: 64 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 53 54 d */..#define ST
000170: 56 41 4C 55 45 20 28 4D 41 58 4C 41 42 20 2B 20 VALUE (MAXLAB +
000180: 31 29 09 09 2F 2A 20 6F 66 66 73 65 74 20 74 6F 1)../* offset to
000190: 20 76 61 6C 75 65 20 66 69 65 6C 64 20 2A 2F 0D value field */.
0001A0: 0A 23 64 65 66 69 6E 65 20 53 54 46 4C 41 47 20 .#define STFLAG
0001B0: 20 28 53 54 56 41 4C 55 45 20 2B 20 49 4E 54 53 (STVALUE + INTS
0001C0: 5A 29 09 2F 2A 20 6F 66 66 73 65 74 20 74 6F 20 Z)./* offset to
0001D0: 66 6C 61 67 20 62 79 74 65 20 2A 2F 0D 0A 23 64 flag byte */..#d
0001E0: 65 66 69 6E 65 20 53 54 45 4E 54 52 59 20 28 53 efine STENTRY (S
0001F0: 54 46 4C 41 47 20 2B 20 31 29 09 09 2F 2A 20 73 TFLAG + 1)../* s
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 6D 61 63 68 69 6E 65 20 69 /*..** machine i
000010: 6E 73 74 72 75 63 74 69 6F 6E 20 74 61 62 6C 65 nstruction table
000020: 0D 0A 2A 2F 0D 0A 69 6E 74 0D 0A 20 20 6D 69 74 ..*/..int.. mit
000030: 61 62 6C 65 20 3D 20 33 2A 49 4E 54 53 5A 2A 4D able = 3*INTSZ*M
000040: 49 43 4F 55 4E 54 2B 4D 49 42 55 46 53 5A 2C 09 ICOUNT+MIBUFSZ,.
000050: 2F 2A 20 6D 69 74 20 73 69 7A 65 20 73 69 67 6E /* mit size sign
000060: 61 74 75 72 65 20 2A 2F 0D 0A 20 20 6D 69 74 6E ature */.. mitn
000070: 64 78 5B 4D 49 43 4F 55 4E 54 5D 2C 09 09 2F 2A dx[MICOUNT],../*
000080: 20 6D 69 74 20 69 6E 64 69 63 65 73 20 28 68 61 mit indices (ha
000090: 73 68 20 2D 3E 20 77 68 69 63 68 29 20 2A 2F 0D sh -> which) */.
0000A0: 0A 20 20 6D 69 74 6E 78 74 5B 4D 49 43 4F 55 4E . mitnxt[MICOUN
0000B0: 54 5D 2C 09 09 2F 2A 20 6D 69 74 20 73 79 6E 6F T],../* mit syno
0000C0: 6E 79 6D 20 63 68 61 69 6E 20 2A 2F 0D 0A 20 20 nym chain */..
0000D0: 6D 69 74 70 74 72 5B 4D 49 43 4F 55 4E 54 5D 3B mitptr[MICOUNT];
0000E0: 09 09 2F 2A 20 6D 6E 65 6D 6F 6E 69 63 20 73 79 ../* mnemonic sy
0000F0: 6E 74 61 78 20 70 74 72 73 20 2A 2F 0D 0A 63 68 ntax ptrs */..ch
000100: 61 72 0D 0A 20 20 6D 69 74 62 75 66 5B 4D 49 42 ar.. mitbuf[MIB
000110: 55 46 53 5A 5D 3B 09 09 2F 2A 20 69 6E 73 74 72 UFSZ];../* instr
000120: 75 63 74 69 6F 6E 20 73 79 6E 74 61 78 20 62 75 uction syntax bu
000130: 66 66 65 72 20 2A 2F 0D 0A 0D 0A 65 78 74 65 72 ffer */....exter
000140: 6E 20 69 6E 74 09 09 09 2F 2A 20 72 65 73 69 64 n int.../* resid
000150: 65 20 69 6E 20 6D 69 74 2E 63 20 2A 2F 0D 0A 20 e in mit.c */..
000160: 20 6F 70 61 64 6A 2C 09 09 09 2F 2A 20 6F 70 65 opadj,.../* ope
000170: 72 61 74 69 6F 6E 20 63 6F 64 65 20 61 64 6A 75 ration code adju
000180: 73 74 6D 65 6E 74 20 2A 2F 0D 0A 20 20 68 61 73 stment */.. has
000190: 68 76 61 6C 3B 09 09 09 2F 2A 20 67 6C 6F 62 61 hval;.../* globa
0001A0: 6C 20 68 61 73 68 20 76 61 6C 75 65 20 66 6F 72 l hash value for
0001B0: 20 73 70 65 65 64 20 2A 2F 0D 0A 1A 1A 1A 1A 1A speed */.......
0001C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
Size : 512 (Real : 512)
000000: 74 20 65 6E 74 72 79 20 73 69 7A 65 20 2A 2F 0D t entry size */.
000010: 0A 23 64 65 66 69 6E 65 20 53 54 42 55 46 53 5A .#define STBUFSZ
000020: 20 28 73 74 6D 61 78 20 2A 20 53 54 45 4E 54 52 (stmax * STENTR
000030: 59 29 09 2F 2A 20 73 74 20 62 75 66 66 65 72 20 Y)./* st buffer
000040: 73 69 7A 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 size */..#define
000050: 20 4C 41 42 42 49 54 32 20 31 32 38 09 09 09 2F LABBIT2 128.../
000060: 2A 20 6C 61 62 65 6C 20 66 6C 61 67 20 28 70 61 * label flag (pa
000070: 73 73 20 32 29 20 2A 2F 0D 0A 23 64 65 66 69 6E ss 2) */..#defin
000080: 65 20 4C 41 42 42 49 54 20 20 20 36 34 09 09 09 e LABBIT 64...
000090: 2F 2A 20 6C 61 62 65 6C 20 66 6C 61 67 20 2A 2F /* label flag */
0000A0: 0D 0A 23 64 65 66 69 6E 65 20 45 51 55 42 49 54 ..#define EQUBIT
0000B0: 20 20 20 33 32 09 09 09 2F 2A 20 45 51 55 20 66 32.../* EQU f
0000C0: 6C 61 67 20 28 70 61 73 73 20 32 29 20 2A 2F 0D lag (pass 2) */.
0000D0: 0A 23 64 65 66 69 6E 65 20 53 45 54 42 49 54 20 .#define SETBIT
0000E0: 20 20 31 36 09 09 09 2F 2A 20 53 45 54 20 66 6C 16.../* SET fl
0000F0: 61 67 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 58 ag */..#define X
000100: 52 42 49 54 20 20 20 20 20 38 09 09 09 2F 2A 20 RBIT 8.../*
000110: 65 78 74 65 72 6E 61 6C 2D 72 65 66 65 72 65 6E external-referen
000120: 63 65 20 66 6C 61 67 20 2A 2F 0D 0A 23 64 65 66 ce flag */..#def
000130: 69 6E 65 20 45 50 42 49 54 20 20 20 20 20 34 09 ine EPBIT 4.
000140: 09 09 2F 2A 20 65 6E 74 72 79 2D 70 6F 69 6E 74 ../* entry-point
000150: 20 66 6C 61 67 20 2A 2F 0D 0A 23 64 65 66 69 6E flag */..#defin
000160: 65 20 52 45 4C 42 49 54 53 20 20 20 33 09 09 09 e RELBITS 3...
000170: 2F 2A 20 72 65 6C 61 74 69 76 65 20 62 69 74 73 /* relative bits
000180: 20 28 41 42 53 2C 20 50 52 45 4C 29 20 2A 2F 0D (ABS, PREL) */.
000190: 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 6D 61 63 72 6F 20 .../*..** macro
0001A0: 74 61 62 6C 65 0D 0A 2A 2F 0D 0A 23 64 65 66 69 table..*/..#defi
0001B0: 6E 65 20 4D 54 4E 58 54 20 20 20 20 20 20 20 30 ne MTNXT 0
0001C0: 09 09 2F 2A 20 70 6F 69 6E 74 65 72 20 74 6F 20 ../* pointer to
0001D0: 6E 65 78 74 20 6D 61 63 72 6F 20 2A 2F 0D 0A 23 next macro */..#
0001E0: 64 65 66 69 6E 65 20 4D 54 4E 41 4D 20 20 20 49 define MTNAM I
0001F0: 4E 54 53 5A 09 09 2F 2A 20 6D 61 63 72 6F 20 6E NTSZ../* macro n
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 61 6D 65 20 2A 2F 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A ame */..../*..**
000010: 20 61 73 73 65 6D 62 6C 65 72 20 69 6E 73 74 72 assembler instr
000020: 75 63 74 69 6F 6E 20 63 6F 64 65 73 0D 0A 2A 2F uction codes..*/
000030: 0D 0A 23 64 65 66 69 6E 65 20 44 57 20 20 20 20 ..#define DW
000040: 20 31 0D 0A 23 64 65 66 69 6E 65 20 44 42 20 20 1..#define DB
000050: 20 20 20 32 0D 0A 23 64 65 66 69 6E 65 20 44 53 2..#define DS
000060: 20 20 20 20 20 33 0D 0A 23 64 65 66 69 6E 65 20 3..#define
000070: 45 58 20 20 20 20 20 34 0D 0A 23 64 65 66 69 6E EX 4..#defin
000080: 65 20 53 45 54 20 20 20 20 35 0D 0A 23 64 65 66 e SET 5..#def
000090: 69 6E 65 20 45 51 55 20 20 20 20 36 0D 0A 23 64 ine EQU 6..#d
0000A0: 65 66 69 6E 65 20 4F 52 47 20 20 20 20 37 0D 0A efine ORG 7..
0000B0: 23 64 65 66 69 6E 65 20 45 4E 44 20 20 20 20 38 #define END 8
0000C0: 0D 0A 23 64 65 66 69 6E 65 20 4D 41 43 52 4F 20 ..#define MACRO
0000D0: 20 39 0D 0A 23 64 65 66 69 6E 65 20 45 4E 44 4D 9..#define ENDM
0000E0: 20 20 31 30 0D 0A 23 64 65 66 69 6E 65 20 43 41 10..#define CA
0000F0: 4C 4C 20 20 31 31 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A LL 11..........
000100: 52 42 49 54 20 20 20 20 20 38 09 09 09 2F 2A 20 RBIT 8.../*
000110: 65 78 74 65 72 6E 61 6C 2D 72 65 66 65 72 65 6E external-referen
000120: 63 65 20 66 6C 61 67 20 2A 2F 0D 0A 23 64 65 66 ce flag */..#def
000130: 69 6E 65 20 45 50 42 49 54 20 20 20 20 20 34 09 ine EPBIT 4.
000140: 09 09 2F 2A 20 65 6E 74 72 79 2D 70 6F 69 6E 74 ../* entry-point
000150: 20 66 6C 61 67 20 2A 2F 0D 0A 23 64 65 66 69 6E flag */..#defin
000160: 65 20 52 45 4C 42 49 54 53 20 20 20 33 09 09 09 e RELBITS 3...
000170: 2F 2A 20 72 65 6C 61 74 69 76 65 20 62 69 74 73 /* relative bits
000180: 20 28 41 42 53 2C 20 50 52 45 4C 29 20 2A 2F 0D (ABS, PREL) */.
000190: 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 6D 61 63 72 6F 20 .../*..** macro
0001A0: 74 61 62 6C 65 0D 0A 2A 2F 0D 0A 23 64 65 66 69 table..*/..#defi
0001B0: 6E 65 20 4D 54 4E 58 54 20 20 20 20 20 20 20 30 ne MTNXT 0
0001C0: 09 09 2F 2A 20 70 6F 69 6E 74 65 72 20 74 6F 20 ../* pointer to
0001D0: 6E 65 78 74 20 6D 61 63 72 6F 20 2A 2F 0D 0A 23 next macro */..#
0001E0: 64 65 66 69 6E 65 20 4D 54 4E 41 4D 20 20 20 49 define MTNAM I
0001F0: 4E 54 53 5A 09 09 2F 2A 20 6D 61 63 72 6F 20 6E NTSZ../* macro n
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 72 65 6C 2E 68 20 2D 2D 20 /*..** rel.h --
000010: 68 65 61 64 65 72 20 66 6F 72 20 52 45 4C 20 66 header for REL f
000020: 69 6C 65 20 70 72 6F 63 65 73 73 69 6E 67 0D 0A ile processing..
000030: 2A 2F 0D 0A 0D 0A 09 09 09 2F 2A 20 69 74 65 6D */......./* item
000040: 2D 74 79 70 65 20 63 6F 64 65 73 20 2A 2F 0D 0A -type codes */..
000050: 0D 0A 23 64 65 66 69 6E 65 20 41 42 53 20 20 20 ..#define ABS
000060: 20 20 20 20 30 09 2F 2A 20 61 62 73 6F 6C 75 74 0./* absolut
000070: 65 20 69 74 65 6D 20 2A 2F 0D 0A 23 64 65 66 69 e item */..#defi
000080: 6E 65 20 50 52 45 4C 20 20 20 20 20 20 31 09 2F ne PREL 1./
000090: 2A 20 70 72 6F 67 72 61 6D 20 28 63 6F 64 65 29 * program (code)
0000A0: 20 72 65 6C 61 74 69 76 65 20 69 74 65 6D 20 2A relative item *
0000B0: 2F 0D 0A 23 64 65 66 69 6E 65 20 44 52 45 4C 20 /..#define DREL
0000C0: 20 20 20 20 20 32 09 2F 2A 20 64 61 74 61 20 72 2./* data r
0000D0: 65 6C 61 74 69 76 65 20 69 74 65 6D 20 2A 2F 0D elative item */.
0000E0: 0A 23 64 65 66 69 6E 65 20 43 52 45 4C 20 20 20 .#define CREL
0000F0: 20 20 20 33 09 2F 2A 20 63 6F 6D 6D 6F 6E 20 72 3./* common r
000100: 65 6C 61 74 69 76 65 20 69 74 65 6D 20 2A 2F 0D elative item */.
000110: 0A 0D 0A 23 64 65 66 69 6E 65 20 45 4E 41 4D 45 ...#define ENAME
000120: 20 20 20 20 20 34 09 2F 2A 20 65 6E 74 72 79 20 4./* entry
000130: 6E 61 6D 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 name */..#define
000140: 20 43 4E 41 4D 45 20 20 20 20 20 35 09 2F 2A 20 CNAME 5./*
000150: 63 6F 6D 6D 6F 6E 20 62 6C 6F 63 6B 20 6E 61 6D common block nam
000160: 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 50 4E e */..#define PN
000170: 41 4D 45 20 20 20 20 20 36 09 2F 2A 20 70 72 6F AME 6./* pro
000180: 67 72 61 6D 20 6E 61 6D 65 20 2A 2F 0D 0A 23 64 gram name */..#d
000190: 65 66 69 6E 65 20 4C 4E 41 4D 45 20 20 20 20 20 efine LNAME
0001A0: 37 09 2F 2A 20 6C 69 62 72 61 72 79 20 6E 61 6D 7./* library nam
0001B0: 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 45 58 e */..#define EX
0001C0: 54 20 20 20 20 20 20 20 38 09 2F 2A 20 65 78 74 T 8./* ext
0001D0: 65 6E 73 69 6F 6E 20 6C 69 6E 6B 2D 69 74 65 6D ension link-item
0001E0: 20 2A 2F 0D 0A 0D 0A 23 64 65 66 69 6E 65 20 43 */....#define C
0001F0: 53 49 5A 45 20 20 20 20 20 39 09 2F 2A 20 63 6F SIZE 9./* co
Size : 512 (Real : 512)
000000: 65 78 74 65 72 6E 20 69 6E 74 0D 0A 20 20 70 61 extern int.. pa
000010: 73 73 2C 20 62 61 64 73 79 6D 2C 20 67 6F 74 65 ss, badsym, gote
000020: 70 2C 20 67 6F 74 78 72 2C 20 67 6F 74 6C 61 62 p, gotxr, gotlab
000030: 65 6C 2C 20 67 6F 74 6E 61 6D 2C 20 6F 70 61 64 el, gotnam, opad
000040: 6A 2C 0D 0A 20 20 68 61 73 68 76 61 6C 2C 20 6C j,.. hashval, l
000050: 6F 63 2C 20 6C 69 6E 2C 20 65 72 72 2C 20 65 6E oc, lin, err, en
000060: 64 76 2C 20 65 6E 64 74 2C 20 6C 65 72 72 2C 20 dv, endt, lerr,
000070: 73 72 63 66 64 2C 20 65 6F 6D 2C 0D 0A 20 20 6C srcfd, eom,.. l
000080: 69 73 74 2C 20 6C 6C 69 6E 65 2C 20 70 61 72 74 ist, lline, part
000090: 31 2C 20 63 63 6E 74 2C 20 6C 70 61 67 65 2C 20 1, ccnt, lpage,
0000A0: 70 61 75 73 65 2C 20 6C 6F 6F 6B 73 2C 20 6D 69 pause, looks, mi
0000B0: 74 61 62 6C 65 2C 0D 0A 20 20 6D 69 74 6E 64 78 table,.. mitndx
0000C0: 5B 5D 2C 20 6D 69 74 6E 78 74 5B 5D 2C 20 6D 69 [], mitnxt[], mi
0000D0: 74 70 74 72 5B 5D 2C 20 73 74 6D 61 78 2C 20 73 tptr[], stmax, s
0000E0: 74 6E 2C 20 2A 73 74 70 3B 0D 0A 0D 0A 65 78 74 tn, *stp;....ext
0000F0: 65 72 6E 20 63 68 61 72 0D 0A 20 2A 65 70 2C 20 ern char.. *ep,
000100: 2A 6C 70 2C 20 2A 70 72 69 6F 72 2C 20 2A 6D 74 *lp, *prior, *mt
000110: 2C 20 2A 6D 74 6E 65 78 74 2C 20 2A 6D 74 65 6E , *mtnext, *mten
000120: 64 2C 20 20 6C 69 6E 65 5B 5D 2C 0D 0A 20 65 78 d, line[],.. ex
000130: 70 62 75 66 5B 5D 2C 20 73 72 63 66 6E 5B 5D 2C pbuf[], srcfn[],
000140: 20 6F 62 6A 66 6E 5B 5D 2C 0D 0A 20 2A 73 74 2C objfn[],.. *st,
000150: 20 2A 73 74 65 6E 64 2C 20 2A 73 74 70 74 72 2C *stend, *stptr,
000160: 20 73 74 73 79 6D 5B 5D 2C 20 6D 69 74 62 75 66 stsym[], mitbuf
000170: 5B 5D 3B 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A [];.............
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 6D 6D 6F 6E 20 73 69 7A 65 20 26 20 6E 61 6D 65 mmon size & name
000010: 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 58 43 48 */..#define XCH
000020: 41 49 4E 20 20 20 31 30 09 2F 2A 20 65 78 74 65 AIN 10./* exte
000030: 72 6E 61 6C 2D 72 65 66 65 72 65 6E 63 65 2D 63 rnal-reference-c
000040: 68 61 69 6E 20 68 65 61 64 20 26 20 6E 61 6D 65 hain head & name
000050: 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 45 50 4F */..#define EPO
000060: 49 4E 54 20 20 20 31 31 09 2F 2A 20 65 6E 74 72 INT 11./* entr
000070: 79 20 70 6F 69 6E 74 20 6C 6F 63 61 74 69 6F 6E y point location
000080: 20 26 20 6E 61 6D 65 20 2A 2F 0D 0A 0D 0A 23 64 & name */....#d
000090: 65 66 69 6E 65 20 58 4D 4F 46 46 20 20 20 20 31 efine XMOFF 1
0000A0: 32 09 2F 2A 20 65 78 74 65 72 6E 61 6C 20 2D 20 2./* external -
0000B0: 6F 66 66 73 65 74 20 2A 2F 0D 0A 23 64 65 66 69 offset */..#defi
0000C0: 6E 65 20 58 50 4F 46 46 20 20 20 20 31 33 09 2F ne XPOFF 13./
0000D0: 2A 20 65 78 74 65 72 6E 61 6C 20 2B 20 6F 66 66 * external + off
0000E0: 73 65 74 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 set */..#define
0000F0: 44 53 49 5A 45 20 20 20 20 31 34 09 2F 2A 20 64 DSIZE 14./* d
000100: 61 74 61 20 61 72 65 61 20 73 69 7A 65 20 2A 2F ata area size */
000110: 0D 0A 23 64 65 66 69 6E 65 20 53 45 54 4C 43 20 ..#define SETLC
000120: 20 20 20 31 35 09 2F 2A 20 73 65 74 20 6C 6F 63 15./* set loc
000130: 61 74 69 6F 6E 20 63 6F 75 6E 74 65 72 20 66 6F ation counter fo
000140: 72 20 6C 6F 61 64 69 6E 67 20 2A 2F 0D 0A 23 64 r loading */..#d
000150: 65 66 69 6E 65 20 43 48 41 49 4E 20 20 20 20 31 efine CHAIN 1
000160: 36 09 2F 2A 20 63 68 61 69 6E 20 61 64 64 72 65 6./* chain addre
000170: 73 73 20 28 66 69 6C 6C 20 63 68 61 69 6E 20 77 ss (fill chain w
000180: 69 74 68 20 6C 6F 63 20 63 74 72 29 20 20 2A 2F ith loc ctr) */
000190: 0D 0A 23 64 65 66 69 6E 65 20 50 53 49 5A 45 20 ..#define PSIZE
0001A0: 20 20 20 31 37 09 2F 2A 20 70 72 6F 67 72 61 6D 17./* program
0001B0: 20 28 63 6F 64 65 29 20 73 69 7A 65 20 2A 2F 0D (code) size */.
0001C0: 0A 23 64 65 66 69 6E 65 20 45 50 52 4F 47 20 20 .#define EPROG
0001D0: 20 20 31 38 09 2F 2A 20 65 6E 64 20 6F 66 20 70 18./* end of p
0001E0: 72 6F 67 72 61 6D 20 2A 2F 0D 0A 23 64 65 66 69 rogram */..#defi
0001F0: 6E 65 20 45 46 49 4C 45 20 20 20 20 31 39 09 2F ne EFILE 19./
Size : 512 (Real : 512)
000000: 00 BA C4 2F E7 FB 36 AD 80 9F 16 AC 2A F0 02 21 .../..6.....*..!
000010: 00 00 18 75 EC 04 42 01 00 1F 16 AC AB 08 02 21 ...u..B........!
000020: 7F 3F D9 22 10 00 00 44 00 00 30 EE D8 08 84 00 .?."...D..0.....
000030: 00 11 58 80 16 1D DB 01 66 D6 90 0B 82 00 00 00 ..X.....f.......
000040: 5C 10 00 08 02 E0 80 00 80 17 04 00 06 00 B8 20 \..............
000050: 00 40 05 D8 00 02 80 2E C0 00 18 01 76 00 00 E0 .@..........v...
000060: 0A 3A 02 08 00 51 D0 10 48 02 8E 80 82 80 14 74 .:...Q..H......t
000070: 04 16 00 A3 A0 20 C0 05 1D 01 06 80 2A 90 08 38 ..... ......*..8
000080: 01 63 40 41 E0 00 00 00 55 6E 40 19 22 10 10 01 .c@A....Un@."...
000090: CA 3E 00 B3 6F 18 13 05 9B 68 00 0F 8B 56 55 F5 .>..o....h...VU.
0000A0: 01 10 BF 9F EC 91 55 BC 00 11 5A F0 06 4B 14 42 ......U...Z..K.B
0000B0: 08 00 39 47 C0 16 6D E3 02 60 B3 6F 50 09 F1 6A ..9G..m..`.oP..j
0000C0: CA A2 80 42 17 F3 FD 82 C9 10 80 00 03 97 58 AA ...B..........X.
0000D0: FB 00 B3 40 00 01 08 20 00 E5 1F 00 59 B7 8C 09 ...@... ....Y...
0000E0: 82 CD A1 00 47 C5 AB 2A 9B 01 08 5F CF F6 0B 24 ....G..*..._...$
0000F0: 55 46 80 9D 62 10 40 01 9A 00 00 3A DC 2E 56 68 UF..b.@....:..Vh
000100: 00 00 22 A6 E0 42 AB B8 02 C1 64 B1 58 AC 51 08 .."..B....d.X.Q.
000110: 00 00 39 75 88 40 00 06 6D 1D 02 10 80 80 03 97 ..9u.@..m.......
000120: 58 AA A3 81 33 6A D0 10 84 06 00 72 8F 80 2C DB X...3j.....r..,.
000130: C6 04 C1 66 D2 A0 23 E2 D5 95 60 00 84 2F E7 FB ...f..#...`../..
000140: 05 82 C1 64 88 40 80 01 CB AC 55 58 80 99 B5 94 ...d.@....UX....
000150: 08 42 04 00 0E 4A 85 D6 68 00 00 2B 66 D8 90 21 .B...J..h..+f..!
000160: 19 F1 6A CA B9 C0 42 10 40 01 CA 3E 00 B3 6F 18 ..j...B.@..>..o.
000170: 13 05 9B 5C 80 8F 8B 56 55 B7 02 10 BF 9F EC 16 ...\...VU.......
000180: 0B 05 92 21 00 00 07 25 42 EB 36 C9 01 08 D9 B6 ...!...%B.6.....
000190: 58 08 56 EB 15 58 60 23 E8 49 87 62 C0 9A 2D 51 X.V..X`#.I.b..-Q
0001A0: 08 00 00 7D 09 30 5C 2E 56 28 8A E3 81 0A AA 50 ...}.0\.V(.....P
0001B0: 13 05 82 C1 64 B1 44 20 00 00 8A ED 01 08 40 80 ....d.D ......@.
0001C0: 01 CB 36 DF 01 1F 16 AC AB 72 06 2A B2 20 27 C5 ..6......r.*. '.
0001D0: AB 0A 9C 01 8A 80 00 07 28 84 00 00 72 88 40 20 ........(...r.@
0001E0: 07 28 F8 06 CD 00 00 18 2C 16 0B AC 42 01 00 33 .(......,...B..3
0001F0: 40 00 03 E2 D5 95 4C 80 C4 36 F8 0D CA 21 00 80 @.....L..6...!..
Size : 512 (Real : 512)
000000: 2A 20 65 6E 64 20 6F 66 20 66 69 6C 65 20 2A 2F * end of file */
000010: 0D 0A 0D 0A 23 64 65 66 69 6E 65 20 4D 41 58 53 ....#define MAXS
000020: 59 4D 20 20 20 20 36 09 2F 2A 20 6D 61 78 69 6D YM 6./* maxim
000030: 75 6D 20 73 79 6D 62 6F 6C 20 6C 65 6E 67 74 68 um symbol length
000040: 20 61 6C 6C 6F 77 65 64 20 69 6E 20 52 45 4C 20 allowed in REL
000050: 66 69 6C 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 file */..#define
000060: 20 4F 4E 45 53 20 20 20 20 20 2D 31 09 2F 2A 20 ONES -1./*
000070: 61 6C 6C 20 6F 6E 65 20 62 69 74 73 20 2A 2F 0D all one bits */.
000080: 0A 0D 0A 09 09 09 2F 2A 20 63 6F 6D 6D 6F 6E 20 ....../* common
000090: 76 61 72 69 61 62 6C 65 73 20 2A 2F 0D 0A 65 78 variables */..ex
0000A0: 74 65 72 6E 20 69 6E 74 0D 0A 20 69 6E 72 65 6C tern int.. inrel
0000B0: 2C 09 09 09 2F 2A 20 66 69 6C 65 20 64 65 73 63 ,.../* file desc
0000C0: 72 69 70 74 6F 72 20 66 6F 72 20 69 6E 70 75 74 riptor for input
0000D0: 20 52 45 4C 20 66 69 6C 65 20 2A 2F 0D 0A 20 69 REL file */.. i
0000E0: 6E 72 65 6D 2C 09 09 09 2F 2A 20 72 65 6D 61 69 nrem,.../* remai
0000F0: 6E 69 6E 67 20 62 69 74 73 20 69 6E 20 69 6E 63 ning bits in inc
000100: 68 75 6E 6B 20 2A 2F 0D 0A 20 69 6E 63 68 75 6E hunk */.. inchun
000110: 6B 2C 09 09 2F 2A 20 63 75 72 72 65 6E 74 20 63 k,../* current c
000120: 68 75 6E 6B 20 66 72 6F 6D 20 52 45 4C 20 66 69 hunk from REL fi
000130: 6C 65 20 2A 2F 0D 0A 20 6F 75 74 72 65 6C 2C 09 le */.. outrel,.
000140: 09 2F 2A 20 66 69 6C 65 20 64 65 73 63 72 69 70 ./* file descrip
000150: 74 6F 72 20 66 6F 72 20 6F 75 74 70 75 74 20 52 tor for output R
000160: 45 4C 20 66 69 6C 65 20 2A 2F 0D 0A 20 6F 75 74 EL file */.. out
000170: 72 65 6D 2C 09 09 2F 2A 20 72 65 6D 61 69 6E 69 rem,../* remaini
000180: 6E 67 20 62 69 74 73 20 69 6E 20 6F 75 74 63 68 ng bits in outch
000190: 75 6E 6B 20 2A 2F 0D 0A 20 6F 75 74 63 68 75 6E unk */.. outchun
0001A0: 6B 2C 09 09 2F 2A 20 63 75 72 72 65 6E 74 20 63 k,../* current c
0001B0: 68 75 6E 6B 20 66 6F 72 20 52 45 4C 20 66 69 6C hunk for REL fil
0001C0: 65 20 2A 2F 0D 0A 20 69 74 65 6D 2C 09 09 09 2F e */.. item,.../
0001D0: 2A 20 63 75 72 72 65 6E 74 20 69 74 65 6D 20 63 * current item c
0001E0: 6F 64 65 20 2A 2F 0D 0A 20 74 79 70 65 2C 09 09 ode */.. type,..
0001F0: 09 2F 2A 20 74 79 70 65 20 66 69 65 6C 64 20 2A ./* type field *
Size : 512 (Real : 512)
000000: 1C A3 E0 13 34 00 00 60 B0 44 20 00 03 05 92 21 ....4..`.D ....!
000010: 04 00 04 57 DC 08 42 04 00 0E 59 B7 BC 09 D6 2A ...W..B...Y....*
000020: A6 C0 6C D0 00 00 F8 B5 65 55 90 31 08 00 00 39 ..l.....eU.1...9
000030: 75 8A AA 08 1B 36 E1 01 30 EB 40 18 84 00 00 1C u....6..0.@.....
000040: BA C4 20 40 00 E5 9B 4F 40 D9 B5 50 0C 42 04 00 .. @...O@..P.B..
000050: 0E 5C AC DA C6 06 EB 60 B8 5C AC 56 68 00 00 D1 .\.....`.\.Vh...
000060: 66 D6 60 31 55 51 03 75 B8 5C AC DA EC 06 22 AF f.`1UQ.u.\....".
000070: A0 62 AB D0 04 EB 70 B9 59 B4 F8 09 CA 2A A0 60 .b....p.Y....*.`
000080: 6E B1 55 86 03 66 80 00 0E 51 08 10 00 39 66 D6 n.U..f...Q...9f.
000090: E0 30 8B FD FE CD B1 E0 6C D0 00 01 A2 CD 00 00 .0......l.......
0000A0: 1A 21 91 15 89 03 61 DE A0 21 08 04 00 C1 64 82 .!....a..!....d.
0000B0: 80 E2 D1 01 04 C4 6E 37 9C 8D A6 13 60 80 8A 6E ......n7....`..n
0000C0: 32 08 0D E6 61 01 48 8A 4C 10 11 8D 26 C3 28 28 2...a.H.L...&.((
0000D0: 01 19 AF 03 A8 68 68 29 C8 91 9A 80 3A 86 86 82 .....hh)....:...
0000E0: A6 99 19 9A 03 A8 68 68 2A 6A 51 9A B0 3A 86 86 ......hh*jQ..:..
0000F0: 86 9E 9B 19 6B 01 88 68 68 AA 31 9A 20 3C 86 86 ....k..hh.1. <..
000100: 8E 92 9C A9 19 44 03 88 68 68 EA 91 9A 90 2C 86 .....D..hh....,.
000110: 86 98 9C 8A 8F 19 17 03 88 68 69 C8 B1 94 40 28 .........hi...@(
000120: 86 86 9E A5 19 7A 03 C8 68 6A 09 29 CA 91 98 30 .....z..hj.)...0
000130: 3A 86 86 A6 AA 85 19 97 01 C8 68 6A 6A E9 2A 91 :.........hjj.*.
000140: 9B 40 3A 8C 92 8A 98 89 19 29 03 A8 CA 0A AA 8A .@:......)......
000150: 71 DE 30 2C 8E 8A A8 84 92 A9 1D FC 01 C8 E8 AA q.0,............
000160: 88 C9 88 91 D0 00 0C 8E 8A A8 A4 8A 99 1D 95 00 ................
000170: C8 E8 AA 8A 6A 08 B1 D4 E0 2C 8E 8A A8 A6 B2 9B ....j....,......
000180: 1D DF 01 C8 E8 AA 8A 8B 2A 11 99 30 3C 92 9C 86 ........*..0<...
000190: 90 AA 9D 19 FF 02 A9 29 CA 48 A9 91 99 70 3A 92 .......).H...p:.
0001A0: 9C A4 8A 9B 19 DD 02 89 2A 88 A9 B1 80 00 0C 9E ........*.......
0001B0: AA A8 86 90 AB 18 00 00 C9 EA AA 8A 48 A9 91 80 ............H...
0001C0: 00 0C 9E AA A8 A4 8A 9B 19 0D 03 8A 48 A8 28 91 ............H.(.
0001D0: 95 70 2C A6 B2 9A 84 9E 99 19 F9 01 8A 8B 2A 08 .p,...........*.
0001E0: B3 80 00 00 84 D2 53 95 20 64 74 55 44 94 E5 48 ......S. dtUD..H
0001F0: 19 41 55 51 25 39 52 50 00 01 35 18 00 60 B8 5C .AUQ%9RP..5..`.\
Size : 512 (Real : 512)
000000: 2F 0D 0A 20 66 69 65 6C 64 3B 09 09 09 2F 2A 20 /.. field;.../*
000010: 63 75 72 72 65 6E 74 20 62 69 74 20 66 69 65 6C current bit fiel
000020: 64 20 2A 2F 0D 0A 65 78 74 65 72 6E 20 63 68 61 d */..extern cha
000030: 72 0D 0A 20 73 79 6D 62 6F 6C 5B 39 5D 3B 09 09 r.. symbol[9];..
000040: 2F 2A 20 63 75 72 72 65 6E 74 20 73 74 72 69 6E /* current strin
000050: 67 20 2A 2F 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A g */............
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 0A 0D 0A 09 09 09 2F 2A 20 63 6F 6D 6D 6F 6E 20 ....../* common
000090: 76 61 72 69 61 62 6C 65 73 20 2A 2F 0D 0A 65 78 variables */..ex
0000A0: 74 65 72 6E 20 69 6E 74 0D 0A 20 69 6E 72 65 6C tern int.. inrel
0000B0: 2C 09 09 09 2F 2A 20 66 69 6C 65 20 64 65 73 63 ,.../* file desc
0000C0: 72 69 70 74 6F 72 20 66 6F 72 20 69 6E 70 75 74 riptor for input
0000D0: 20 52 45 4C 20 66 69 6C 65 20 2A 2F 0D 0A 20 69 REL file */.. i
0000E0: 6E 72 65 6D 2C 09 09 09 2F 2A 20 72 65 6D 61 69 nrem,.../* remai
0000F0: 6E 69 6E 67 20 62 69 74 73 20 69 6E 20 69 6E 63 ning bits in inc
000100: 68 75 6E 6B 20 2A 2F 0D 0A 20 69 6E 63 68 75 6E hunk */.. inchun
000110: 6B 2C 09 09 2F 2A 20 63 75 72 72 65 6E 74 20 63 k,../* current c
000120: 68 75 6E 6B 20 66 72 6F 6D 20 52 45 4C 20 66 69 hunk from REL fi
000130: 6C 65 20 2A 2F 0D 0A 20 6F 75 74 72 65 6C 2C 09 le */.. outrel,.
000140: 09 2F 2A 20 66 69 6C 65 20 64 65 73 63 72 69 70 ./* file descrip
000150: 74 6F 72 20 66 6F 72 20 6F 75 74 70 75 74 20 52 tor for output R
000160: 45 4C 20 66 69 6C 65 20 2A 2F 0D 0A 20 6F 75 74 EL file */.. out
000170: 72 65 6D 2C 09 09 2F 2A 20 72 65 6D 61 69 6E 69 rem,../* remaini
000180: 6E 67 20 62 69 74 73 20 69 6E 20 6F 75 74 63 68 ng bits in outch
000190: 75 6E 6B 20 2A 2F 0D 0A 20 6F 75 74 63 68 75 6E unk */.. outchun
0001A0: 6B 2C 09 09 2F 2A 20 63 75 72 72 65 6E 74 20 63 k,../* current c
0001B0: 68 75 6E 6B 20 66 6F 72 20 52 45 4C 20 66 69 6C hunk for REL fil
0001C0: 65 20 2A 2F 0D 0A 20 69 74 65 6D 2C 09 09 09 2F e */.. item,.../
0001D0: 2A 20 63 75 72 72 65 6E 74 20 69 74 65 6D 20 63 * current item c
0001E0: 6F 64 65 20 2A 2F 0D 0A 20 74 79 70 65 2C 09 09 ode */.. type,..
0001F0: 09 2F 2A 20 74 79 70 65 20 66 69 65 6C 64 20 2A ./* type field *
Size : 512 (Real : 512)
000000: AC 56 68 00 00 C9 10 81 00 03 96 6D 05 00 75 B0 .Vh........m..u.
000010: 5C 2E 56 2B 34 00 00 64 C6 43 40 32 1A 1A 3A 4A \.V+4..d.C@2..:J
000020: 72 A4 64 54 03 21 A1 A8 24 A7 2A 47 40 00 32 3A r.dT.!..$.*G@.2:
000030: 2A A2 4A 72 A4 74 20 03 28 2A AA 24 A7 2A 4E 00 *.Jr.t .(*.$.*N.
000040: 00 00 85 13 51 54 D4 E0 55 05 55 45 33 28 11 0D ....QT..U.UE3(..
000050: 05 39 52 06 45 52 52 4F 52 32 81 51 54 94 93 D4 .9R.ERROR2.QT...
000060: A5 00 00 13 56 50 01 08 10 00 39 66 80 00 0E 51 ....VP....9f...Q
000070: 08 04 00 E5 66 80 00 0C 16 0B 05 C2 E5 62 B9 59 ....f........b.Y
000080: A0 00 03 05 92 C1 70 B9 58 AE 51 0D 2A 00 72 B3 ......p.X.Q.*.r.
000090: 69 C0 03 05 82 C9 10 0B 44 06 33 09 B8 4E 74 10 i.......D.3..Nt.
0000A0: 1B CE 06 53 70 00 42 04 00 0E 59 B4 14 01 CA 21 ...Sp.B...Y....!
0000B0: 00 80 1C AC DA 1A 00 C1 60 B0 5C 2E 56 2B 95 9B ........`.\.V+..
0000C0: 54 C0 18 2C 96 0B 85 CA C5 72 B3 68 B8 03 04 42 T..,.....r.h...B
0000D0: 07 00 39 59 A0 00 03 05 93 19 61 00 A8 28 49 EA ..9Y......a..(I.
0000E0: 4A 91 D1 B0 08 86 82 9C A9 19 3D 00 C8 68 68 E9 J.........=..hh.
0000F0: 29 CA 91 D5 30 0A 8A A4 A4 9E A5 1D 38 00 C8 AA )...0.......8...
000100: 4A 49 EA 46 51 94 50 0A 8C A0 AA A8 A7 19 59 00 JI.FQ.P.......Y.
000110: 8A 0A AA 8A 71 D0 00 0A A0 AA A8 A6 65 38 00 00 ....q.......e8..
000120: 84 D3 52 55 20 54 F5 04 14 44 A8 19 21 05 4D 21 ..RU T...D..!.M!
000130: 59 06 06 45 58 50 42 55 46 81 12 10 54 D2 20 44 Y..EXPBUF...T. D
000140: 64 94 E4 48 15 35 05 51 0D 22 50 00 01 35 33 05 d..H.5.Q."P..53.
000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 84 00 00 11 50 20 01 08 10 00 39 66 80 00 0C D0 ....P ....9f....
0001C0: 00 01 D6 21 10 00 19 A0 00 01 F1 6A CA B2 80 02 ...!.......j....
0001D0: 10 20 00 72 CD AC 00 0C DA C6 00 E5 1F 00 59 A0 . .r..........Y.
0001E0: 00 03 05 D6 21 00 00 19 A0 00 01 F1 6A CA B2 80 ....!.......j...
0001F0: 02 10 08 01 87 65 C0 04 20 00 01 F1 6A CA B8 E0 .....e.. ...j...
Size : 512 (Real : 512)
000000: 85 91 56 15 11 53 91 20 64 55 85 44 54 E4 49 40 ..V..S. dU.DT.I@
000010: 00 04 D7 44 01 8A 21 00 00 07 2E 51 08 28 00 39 ...D..!....Q.(.9
000020: 66 80 00 0E 51 08 B8 00 E5 66 80 00 0C 16 0B 45 f...Q....f.....E
000030: 9A 00 00 1F 16 AC AA DA 00 E1 72 B9 44 20 60 00 ..........r.D `.
000040: E5 9B 42 C0 1C AC D0 00 01 82 C1 3E 2D 58 54 E8 ..B........>-XT.
000050: 00 42 01 00 30 59 2E 17 2B 94 42 08 00 0E 59 B4 .B..0Y..+.B...Y.
000060: A0 01 CA CD A5 80 0C 16 09 F1 6A C2 AA 80 02 10 ..........j.....
000070: 00 01 82 C9 10 82 00 03 96 6D 42 00 72 88 6D 80 .........mB.r.m.
000080: 03 95 9A 00 00 30 58 22 10 38 01 CA CD 00 00 18 .....0X".8......
000090: 22 10 40 00 72 CD AB 20 0E 56 68 00 00 C1 75 88 ".@.r.. .Vh...u.
0000A0: 41 60 06 68 00 00 7C 5A B2 AC B0 00 84 10 00 1C A`.h..|Z........
0000B0: B3 6B 90 03 94 43 71 40 1C AC D0 00 01 82 C1 10 .k...Cq@........
0000C0: 82 00 03 96 6D 8A 00 72 88 41 00 01 CB 36 CD 80 ....m..r.A...6..
0000D0: 39 59 A0 00 03 05 82 21 00 00 18 2C 91 00 B4 40 9Y.....!...,...@
0000E0: 69 37 1D 8C 26 C3 49 90 40 65 3C 1D 0C A6 E3 99 i7..&.I.@e<.....
0000F0: A4 DE 6E 00 08 05 A2 03 A1 BC DE 20 36 1B CD C6 ..n........ 6...
000100: 70 04 65 A8 02 A0 A1 27 A9 2A 46 68 C0 32 1A 1A p.e....'.*Fh.2..
000110: 3A 4A 72 A4 65 F8 02 21 A1 A3 AA 46 46 40 32 1A :Jr.e..!...FF@2.
000120: 1A 82 4A 72 A4 66 48 03 22 A9 29 27 A9 19 47 40 ..Jr.fH.".)'..G@
000130: 00 32 2A C2 A2 2A 72 24 65 84 02 A8 2A AA 29 99 .2*..*r$e...*.).
000140: 46 69 C0 32 9A A2 92 1A 0A A4 64 4C 03 29 AA 29 Fi.2......dL.).)
000150: 21 A4 29 46 51 80 32 9A A2 92 1A 6A 84 65 D8 03 !.)FQ.2....j.e..
000160: 29 AA 29 26 22 A7 4E 00 00 00 85 11 92 53 11 60 ).)&".N......S.`
000170: 44 F5 04 54 E8 15 0D 31 3D 4D 16 50 00 01 35 59 D..T...1=M.P..5Y
000180: 00 62 88 40 00 01 CB 94 42 08 00 0E 59 A0 00 03 .b.@....B...Y...
000190: 94 42 08 00 0E 59 B4 2C 01 CA CD 00 00 18 2C 16 .B...Y.,......,.
0001A0: 8B 34 00 00 3E 2D 59 54 A0 01 C2 E5 60 B2 44 20 .4..>-YT....`.D
0001B0: 60 00 E5 9B 44 C0 1C AC D0 00 01 82 C1 64 B0 5C `...D........d.\
0001C0: 2E 56 2B 95 9A 00 00 30 4F 8B 56 55 4C 00 10 D4 .V+....0O.VUL...
0001D0: D0 07 2B 34 00 00 60 B2 4C 66 C3 79 CC CA 20 32 ..+4..`.Lf.y.. 2
0001E0: 9C 8E 46 F3 90 02 32 62 01 10 D0 53 95 23 25 A0 ..F...2b...S.#%.
0001F0: 19 0D 0D 1D 25 39 52 32 3A 01 90 D0 D4 12 53 95 ....%9R2:.....S.
Size : 512 (Real : 512)
000000: 02 AA 04 00 EB 10 80 40 0C D0 00 01 CA 21 03 00 .......@.....!..
000010: 07 25 42 EB 36 BB 00 08 D9 A0 00 00 AD 9B 5E 40 .%B.6.........^@
000020: 1C A3 E0 0B 34 00 00 60 B4 43 22 2A 04 00 C3 AB ....4..`.C"*....
000030: 60 02 AA 04 00 EB 60 B8 5C AC 56 68 00 00 EB 64 `.....`.\.Vh...d
000040: B1 58 AC 51 08 00 00 22 00 00 04 20 00 00 E5 CA .X.Q..."... ....
000050: 21 00 00 1C A2 10 30 00 72 E5 10 83 80 03 96 6D !.....0.r......m
000060: AE 00 72 88 52 C0 07 28 F8 04 CD AA A0 0C 16 0B ..r.R..(........
000070: 45 9B 6C 80 1A 22 90 CB 36 F8 00 34 59 B4 00 05 E.l.."..6..4Y...
000080: A2 D5 10 BF DF EC D0 00 00 F8 B5 65 54 80 21 55 ...........eT.!U
000090: DB 00 11 88 A8 D0 08 84 10 00 1C B3 68 30 0B 94 ............h0..
0000A0: 42 06 00 0E 5C A2 10 00 01 D6 21 02 00 07 2C DA B...\.....!...,.
0000B0: 4A 02 29 0C B3 69 B0 0B 45 9B 42 80 5C A3 E0 13 J.)..i..E.B.\...
0000C0: 34 00 00 60 B0 4F 8B 56 15 00 02 10 82 00 03 97 4..`.O.V........
0000D0: 28 84 04 00 72 88 41 80 01 CB 36 9D 80 B9 47 C0 (...r.A...6...G.
0000E0: 26 68 00 00 C1 60 B4 59 B4 FC 04 42 04 00 0E 5C &h...`.Y...B...\
0000F0: AC DA B8 02 E5 10 82 00 03 96 6D 70 01 72 8F 80 ..........mp.r..
000100: 2C D0 00 01 82 11 00 80 03 2D 10 CB 45 9B 5A 00 ,........-..E.Z.
000110: 44 20 40 00 E4 A8 5D 66 D7 80 11 1B 36 C4 80 8A D @...]f....6...
000120: D9 B6 D8 00 F8 B5 65 5F 90 11 55 1E 01 11 88 AD ......e_..U.....
000130: 10 08 84 10 00 1C B3 6C 90 0B 94 42 06 00 0E 59 .......l...B...Y
000140: B6 B4 05 CA 3E 00 B3 40 00 06 0B 94 7C 02 66 D4 ....>..@....|.f.
000150: F0 26 0B 04 F8 B5 65 5D 60 11 08 10 00 39 66 DB .&....e]`....9f.
000160: 50 16 0B 05 82 C9 10 81 00 03 97 2B 36 E8 00 B9 P..........+6...
000170: 44 20 80 00 E5 9B 77 00 5D 62 10 08 01 9A 00 00 D ....w.]b......
000180: 33 6C D0 0B 44 32 D1 66 D9 60 16 1D 8B 01 10 80 3l..D2.f.`......
000190: 00 0C 16 0B 05 92 21 01 00 07 2E 51 08 00 00 EB ......!....Q....
0001A0: 10 81 00 03 96 6D E4 01 14 86 59 B4 38 09 A2 CD .....m....Y.8...
0001B0: BE 80 2E B1 0B FD FE CD B0 E0 07 C5 AB 2A 96 01 .............*..
0001C0: 08 40 00 06 0B 05 82 C9 10 80 00 03 97 28 86 F1 .@...........(..
0001D0: 80 3A C4 20 40 00 E5 9B 44 C0 85 21 96 6D 3A 02 .:. @...D..!.m:.
0001E0: 68 B3 68 B8 13 0E 86 00 88 40 00 06 0B 05 82 C9 h.h......@......
0001F0: 62 B1 58 A2 10 00 00 45 40 00 04 20 40 00 E5 D6 b.X....E@.. @...
Size : 512 (Real : 512)
000000: 23 A6 C0 15 0D 31 3D 4D 16 32 92 01 51 54 94 93 #....1=M.2..QT..
000010: D4 A3 27 80 19 19 0D 31 3D 4D 16 32 2E 01 51 93 ..'....1=M.2..Q.
000020: D4 11 53 A3 A0 00 11 3D 41 15 3A 70 00 00 85 91 ..S....=A.:p....
000030: D1 55 14 91 53 20 64 74 55 45 24 54 C8 19 1D 15 .U..S dtUE$T....
000040: 51 09 25 52 06 47 45 54 53 50 45 81 91 D1 55 11 Q.%R.GETSPE...U.
000050: 93 11 20 64 74 55 45 35 94 D8 19 1D 15 51 51 65 .. dtUE5.....QQe
000060: 42 50 00 01 35 DC 03 10 80 40 0E 51 F0 05 9B 78 BP..5....@.Q...x
000070: C0 98 2C D0 00 00 F8 B5 65 51 60 01 0B F9 FE C9 ..,.....eQ`.....
000080: 15 00 00 07 C5 AB 0A 9F 00 08 41 00 07 28 F8 02 ..........A..(..
000090: CD BC 60 4C 16 6D 0B 00 3E 2D 59 54 D0 00 42 FE ..`L.m..>-YT..B.
0000A0: 7F B2 44 20 00 00 88 00 00 11 00 00 0C 91 08 08 ..D ............
0000B0: 00 E5 1F 00 59 B7 8C 09 82 CD A5 20 07 C5 AB 2A ....Y...... ...*
0000C0: AA 00 08 5F CF F6 48 AA 8B 80 08 A9 C0 00 8A 9D ..._..H.........
0000D0: 80 30 EB 40 02 BD 9B 65 40 19 2C 3A FA 00 CD 00 .0.@...e@.,:....
0000E0: 00 2B 00 00 00 01 59 40 00 20 0A CA 00 02 00 56 .+....Y@. .....V
0000F0: 50 00 18 00 00 00 57 B3 6F E0 0B AC 42 FE 7F B3 P.....W.o...B...
000100: 40 00 03 E2 D5 95 64 40 04 2F E7 FB 24 55 56 00 @.....d@./..$UV.
000110: 19 22 10 20 01 CA 3E 00 B3 6F 18 13 05 9B 52 40 .". ..>..o....R@
000120: 0F 8B 56 55 AB 00 10 BF 9F EC 91 08 00 00 22 AB ..VU..........".
000130: 60 02 AA AA 00 11 02 00 03 22 2B 24 00 2A B6 40 `........"+$.*.@
000140: 0C 3B 2C 02 AF 66 D4 E0 27 58 85 FC FF 66 D8 60 .;,..f..'X...f.`
000150: 03 E2 D5 95 75 40 04 2F E7 FB 25 87 76 C0 55 EC ....u@./..%.v.U.
000160: DB BE 02 EB 10 BF 9F EC DB 94 00 7C 5A B0 A8 70 ...........|Z..p
000170: 0A BD 9B 7F 00 5D 62 17 F3 FD 9B 78 40 0F 8B 56 .....]b....x@..V
000180: 15 0E 01 57 B3 6A 70 13 AC 42 FE 7F B3 6F 88 01 ...W.jp..B...o..
000190: F1 6A C2 A1 C0 22 10 00 01 87 44 40 44 20 10 01 .j..."....D@D ..
0001A0: F1 6A CA A3 40 22 17 F3 FD 92 C3 BB 60 2A F6 6D .j..@"......`*.m
0001B0: DF 01 75 88 5F CF F6 6D 01 01 3E 2D 58 55 0C 05 ..u._..m..>-XU..
0001C0: 5E CD BF 80 2E B1 0B F9 FE CD A4 C0 27 C5 AB 0A ^...........'...
0001D0: A1 80 88 40 00 06 1D 46 01 10 80 40 07 C5 AB 2A ...@...F...@...*
0001E0: A7 80 88 5F CF F6 4B 0E ED 80 AB D9 B7 7C 05 D6 ..._..K......|..
0001F0: 21 7F 3F D9 B4 D8 04 F8 B5 61 57 80 15 7B 36 FE !.?......aW..{6.
Size : 512 (Real : 512)
000000: 21 05 00 07 2C DA 7E 04 CD A8 60 42 10 40 00 72 !...,.~...`B.@.r
000010: CD AC 40 47 C5 AB 0A CB 81 08 41 40 01 CB 36 B6 ..@G......A@..6.
000020: 01 33 6F 70 0B 94 7C 01 66 D7 F0 06 09 F1 6A CA .3op..|.f.....j.
000030: B2 00 42 10 08 01 82 C1 60 B2 44 20 00 03 05 82 ..B.....`.D ....
000040: C1 64 88 40 40 01 CB AC 43 41 00 19 B5 94 08 42 .d.@@...CA.....B
000050: 0A 00 0E 59 B5 E0 09 9B 5E C0 9C A3 E0 0B 34 00 ...Y....^.....4.
000060: 00 60 9F 16 AC AB 90 04 21 05 00 07 25 42 EB 36 .`......!...%B.6
000070: D3 81 08 D9 B6 80 09 87 68 80 84 20 80 00 E5 9B ........h.. ....
000080: 6F C0 99 B6 A8 09 CA 3E 00 B3 6D 80 13 04 F8 B5 o......>..m.....
000090: 65 5E E0 21 08 20 00 39 2A 17 59 B7 34 08 46 CD e^.!. .9*.Y.4.F.
0000A0: B8 60 4C 3B 90 04 21 05 00 07 2C DB CA 04 CD BA .`L;..!...,.....
0000B0: 00 4E 51 F0 05 9B 60 40 98 27 C5 AB 2A A4 01 88 .NQ...`@.'..*...
0000C0: 41 00 01 CB 36 F9 81 33 6F B0 13 94 7C 01 66 DF A...6..3o...|.f.
0000D0: C0 26 09 F1 6A C2 A6 C0 62 10 40 00 72 CD A1 20 .&..j...b.@.r..
0000E0: 6C DA 18 06 EB 10 9F 00 0C DA 3C 04 7C 5A B0 A9 l.........<.|Z..
0000F0: B0 18 84 00 00 61 D3 90 31 08 04 00 7C 5A B2 AA .....a..1...|Z..
000100: 28 18 84 02 00 60 B0 58 2C 96 1D A9 04 10 82 00 (....`.X,.......
000110: 03 96 6D 1F 03 66 D2 20 37 28 F8 02 CD A2 40 6C ..m..f. 7(....@l
000120: 13 E2 D5 95 59 40 C4 20 00 03 05 82 C1 64 88 41 ....Y@. .....d.A
000130: 00 01 CB 36 A6 81 B3 6A 80 1B 94 7C 01 66 80 00 ...6...j...|.f..
000140: 0C 13 E2 D5 95 5E 41 04 20 80 00 E4 A8 5D 66 D6 .....^A. ....]f.
000150: A0 31 1B 36 F4 81 08 40 00 01 CB AC 42 00 00 33 .1.6...@....B..3
000160: 6C 30 18 84 14 00 1C B3 6C 10 1B 36 B6 81 B9 47 l0......l..6...G
000170: C0 16 6D 56 03 60 B3 40 00 03 E2 D5 95 56 41 04 ..mV.`.@.....VA.
000180: 20 A0 00 E5 9B 66 00 D9 B6 6C 0D D6 21 16 00 19 ....f...l..!...
000190: B4 A4 0C F8 B5 65 5C 50 36 1D 59 04 10 82 80 03 .....e\P6.Y.....
0001A0: 96 6D B1 03 66 DB 40 37 58 84 52 00 66 DB B0 33 .m..f.@7X.R.f..3
0001B0: E2 D5 95 7B 80 DA 2D 51 08 00 00 CD BA 80 67 C5 ...{..-Q......g.
0001C0: AB 2A F7 01 88 40 20 06 1D F1 03 10 80 00 07 C5 .*...@ .........
0001D0: AB 2A FC 81 B0 EA C8 20 84 14 00 1C B3 6E 50 1B .*..... .....nP.
0001E0: 36 E6 81 B0 E9 30 20 84 00 00 1C 95 0B AC DB FC 6....0 .........
0001F0: 06 23 66 D9 10 36 1D 33 04 10 80 00 03 92 A1 75 .#f..6.3.......u
Size : 512 (Real : 512)
000000: 99 18 00 00 A9 29 CA 48 A9 B1 9F A0 08 92 A8 8A .....).H........
000010: 9B 19 E7 03 C9 EA AA 88 69 0A B1 9E 30 3C 9E AA ........i...0<..
000020: A8 A4 8A 99 19 1A 04 C9 EA AA 8A 48 A9 B1 D3 B0 ...........H....
000030: 3C A0 AA A8 84 92 A9 1D 5A 02 CA 0A AA 88 C9 88 <.......Z.......
000040: 91 D0 00 0C A0 AA A8 A4 8A 99 1D 9F 02 CA 0A AA ................
000050: 8A 6B 29 B1 D3 E0 2C A0 AA A8 A8 B2 A1 19 AD 02 .k)...,.........
000060: CA 6A 8A 49 88 A9 D1 9E F0 2C A6 B2 9A 84 9E 99 .j.I.....,......
000070: 19 3F 02 8A 8B 2A 08 B1 9F 10 3A AE A4 92 A8 8B .?...*....:.....
000080: 38 00 00 84 D4 91 53 20 54 94 E5 24 54 C8 15 25 8.....S T..$T..%
000090: 39 49 15 36 06 49 4E 43 48 55 4E 81 93 D5 55 14 9I.6.INCHUN...U.
0000A0: 91 53 20 64 F5 55 45 24 54 D8 19 3D 55 51 0D 21 .S d.UE$T..=UQ.!
0000B0: 56 04 49 54 45 4D 81 15 16 54 11 60 54 64 94 54 V.ITEM...T.`Td.T
0000C0: C4 48 19 4D 65 35 09 3D 32 50 00 01 35 1B 00 00 .H.Me5.=2P..5...
0000D0: 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ................
0000E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 11 D1 00 ................
0000F0: 0A 8C 92 8A 98 89 1D 04 00 C9 29 C8 69 0A A9 D1 ..........).i...
000100: D0 00 0A 92 9C A4 8A 99 1D 02 00 A9 29 CA 48 A9 ............).H.
000110: B1 D0 C0 08 92 A8 8A 9B 1D 0A 00 C9 EA AA 88 69 ...............i
000120: 0A B1 D0 60 0C 9E AA A8 A4 8A 99 1D 08 00 C9 EA ...`............
000130: AA 8A 48 A9 B1 D1 20 0C A6 B2 9A 84 9E 99 1D 0E ..H... .........
000140: 00 8A 8B 2A 08 B3 80 00 00 84 D4 91 54 60 65 24 ...*........T`e$
000150: 55 14 E4 25 28 19 1D 15 51 4D 51 4A 06 52 45 51 U..%(...QMQJ.REQ
000160: 53 54 52 94 00 00 4D 72 00 44 2E A7 F8 E5 F2 21 STR...Mr.D.....!
000170: 00 00 1C A3 E0 0B 34 00 00 60 9F 16 AC AA 62 00 ......4..`....b.
000180: 21 B3 C0 0E 51 F0 05 9A 00 00 30 44 21 A0 00 E5 !...Q.....0D!...
000190: 9A 00 00 39 44 20 10 03 94 7C 02 66 80 00 0C 16 ...9D ...|.f....
0001A0: 08 84 04 00 1C B9 44 21 40 03 94 7C 02 66 DE E0 ......D!@..|.f..
0001B0: 06 0B 04 42 00 00 0E 5C A2 10 20 00 72 E5 10 87 ...B...\.. .r...
0001C0: 00 03 96 6D 23 00 72 8F 80 4C D0 00 01 82 C1 68 ...m#.r..L.....h
0001D0: B3 40 00 07 58 84 00 00 66 80 00 07 C5 AB 0A C0 .@..X...f.......
0001E0: 00 08 40 40 01 CB AD C2 E5 0C B3 40 00 03 E2 D5 ..@@.......@....
0001F0: 85 60 00 04 20 00 03 0E C1 80 08 40 20 03 E2 D5 .`.. ......@ ...
Size : 512 (Real : 512)
000000: 9B 43 41 05 6C DA 22 08 C3 A6 60 8C D0 00 02 83 .CA.l."...`.....
000010: 02 0A 00 14 58 10 52 00 00 00 04 20 20 00 E4 A8 ....X.R.... ...
000020: 5D 66 D1 D0 41 1B 36 90 82 0A DC A2 10 60 00 72 ]f..A.6......`.r
000030: 54 2E B3 69 D0 20 8D 9B 4F 81 05 6C DA 02 08 D1 T..i. ..O..l....
000040: 3E 84 98 76 4C 0C 42 02 00 0E 4A 85 D6 6D 49 04 >..vL.B...J..mI.
000050: 11 B3 6A 68 20 AD D6 21 16 00 0F A1 26 0B 45 AA ..jh ..!....&.E.
000060: C5 10 80 00 07 D0 93 0E D1 01 08 41 40 01 C9 50 ...........A@..P
000070: BA CD AC 00 82 36 6D 64 04 15 B3 6A 88 23 94 42 .....6md...j.#.B
000080: 0A 00 0E 4A 85 D6 6D 80 04 11 B3 6C 20 20 AD 9B ...J..m....l ..
000090: 62 01 1C A3 E0 13 34 00 00 60 B0 4F 8B 56 55 2C b.....4..`.O.VU,
0000A0: 05 10 82 00 03 96 6D 92 04 66 D9 A0 43 E2 D5 95 ......m..f..C...
0000B0: 43 C1 44 20 80 00 E5 9B 6B 81 19 B6 C4 11 D6 21 C.D ....k......!
0000C0: 3E 00 19 B7 84 0C F8 B5 65 5F F0 41 55 00 00 11 >.......e_.AU...
0000D0: 88 A8 00 00 84 10 00 1C 95 0B AC DB 7A 08 23 66 ............z.#f
0000E0: D9 60 41 08 28 00 39 75 88 40 80 01 CB 36 EE 02 .`A.(.9u.@...6..
0000F0: 33 6F 00 20 84 04 00 1C BA C4 34 10 01 9B 7B C1 3o. ......4...{.
000100: 18 74 3C 14 42 08 00 0E 4A 85 D6 6D EC 04 11 B3 .t<.B...J..m....
000110: 6F D0 23 0E D4 82 08 41 00 01 CB 36 83 02 B3 6E o.#....A...6...n
000120: 00 23 94 7C 01 66 DA 10 36 09 F1 6A CA A5 80 A2 .#.|.f..6..j....
000130: 10 00 01 82 C1 60 B2 58 76 88 09 82 C1 60 B2 63 .....`.Xv....`.c
000140: 23 A0 B5 05 51 15 39 12 33 48 01 50 D0 D0 54 D3 #...Q.9.3H.P..T.
000150: 23 3A 00 15 0D 0D 11 25 5A 33 8E 09 10 D0 D1 54 #:.....%Z3.....T
000160: 63 22 E0 B9 0D 0D 1D 0D 21 06 32 28 0B 90 D0 D1 c"......!.2(....
000170: D2 53 95 23 2D 40 11 0D 0D 1D 52 33 4A 07 90 D0 .S.#-@....R3J...
000180: D3 13 91 51 E3 22 40 31 0D 0D 39 16 32 14 0B 90 ...Q."@1..9.2...
000190: D0 D4 12 53 95 23 3D 60 35 0D 0D 4D 55 0A 32 4E ...S.#=`5..MU.2N
0001A0: 09 90 D0 D4 D5 D2 55 23 A0 80 19 15 61 41 09 55 ......U#....aA.U
0001B0: 1A 3B A8 01 11 92 53 91 23 28 A0 39 19 31 11 0D .;....S.#(.9.1..
0001C0: 35 42 33 76 03 91 D1 55 12 53 95 23 AA A0 11 21 5B3v...U.S.#...!
0001D0: 05 4D 22 3A 04 01 92 10 54 D2 15 90 63 2E 60 79 .M":....T...c.`y
0001E0: 25 4D 31 3D 5D 16 33 AC 05 92 54 D4 D4 10 50 E3 %M1=].3...T...P.
0001F0: 34 00 99 31 15 61 3D 49 12 33 4C 03 53 13 D3 D2 4..1.a=I.3L.S...
Size : 512 (Real : 512)
000000: 95 64 C0 04 20 00 03 AC 42 16 00 0E 5F 2E B6 48 .d.. ...B..._..H
000010: 84 02 00 75 88 42 C0 01 CB E5 D6 C9 00 08 40 00 ...u.B........@.
000020: 07 28 F8 02 CD A1 80 0C 13 E2 D5 95 72 C0 04 37 .(..........r..7
000030: B4 01 CA 3E 00 B3 68 D8 03 04 42 06 00 0E 59 B5 ...>..h...B...Y.
000040: 40 01 CA 21 00 80 1C A3 E0 13 36 96 80 30 58 22 @..!......6..0X"
000050: 10 20 00 72 CD B7 A0 0E 51 08 10 00 39 66 DD 00 . .r....Q...9f..
000060: 07 28 F8 04 CD BD C0 0C 16 08 84 08 00 1C B3 6E .(.............n
000070: C0 03 36 B9 80 32 40 0C 51 08 18 00 39 66 DE 70 ..6..2@.Q...9f.p
000080: 07 28 84 0C 00 1C B3 6F A0 03 94 42 00 00 39 47 .(.....o...B..9G
000090: C0 36 68 00 00 C1 60 B0 44 20 00 03 94 7C 01 66 .6h...`.D ...|.f
0000A0: DA 60 06 09 F1 6A CA A6 40 22 10 08 01 CA 3E 00 .`...j..@"....>.
0000B0: B3 68 90 0B 05 9A 00 00 1F 16 AC AA 64 02 21 00 .h..........d.!.
0000C0: 80 18 74 D4 04 42 00 00 1F 16 AC AA 9A 02 21 03 ..t..B........!.
0000D0: 00 07 2C DB F8 00 E5 10 80 40 0E 51 F0 09 9B 71 ..,......@.Q...q
0000E0: C0 18 2C 11 08 00 00 39 75 88 40 C0 01 CB 36 9F ..,....9u.@...6.
0000F0: 80 B3 6A E0 03 85 CA CD BD 40 07 C5 AB 2A DC 80 ..j......@...*..
000100: B8 5C AC DA BE 02 EB 10 82 80 0C D0 00 00 F8 B5 .\..............
000110: 65 57 A0 16 1D B9 01 10 81 80 03 96 6D 57 01 72 eW..........mW.r
000120: 88 40 40 01 C9 50 BA CD AF E0 22 36 6D 5A 01 15 .@@..P...."6mZ..
000130: B3 6B 48 0B 94 7C 01 66 80 00 0C 16 89 F4 24 E5 .kH..|.f......$.
000140: 1F 00 59 A0 00 03 04 F8 B5 65 5B 60 11 08 18 00 ..Y......e[`....
000150: 39 2A 17 59 B6 24 04 46 CD B1 A0 2C 3A B8 02 21 9*.Y.$.F...,:..!
000160: 03 00 07 2C DB 60 02 EB 10 80 00 07 D0 93 05 93 ...,.`..........
000170: 19 70 01 88 68 68 AA 31 99 10 1C 86 86 8E 86 90 .p..hh.1........
000180: 83 19 BE 01 C8 68 68 E9 29 CA 91 92 50 1C 86 86 .....hh.)...P...
000190: 98 9C 8A 8F 19 63 00 88 68 69 8A 91 9B 40 1C 86 .....c..hi...@..
0001A0: 86 A0 92 9C A9 19 06 01 A8 C8 E8 AA 8A 71 94 90 .............q..
0001B0: 1A 8C A0 AA A8 A7 1D EE 00 C8 E8 AA 8A 6A 8A 51 .............j.Q
0001C0: 92 10 1C 92 A6 86 9E 9C A7 19 A1 01 C9 2A 6A 0A .............*j.
0001D0: 49 29 D1 9B 50 08 A0 AA A8 A7 1D 00 00 CA 48 AA I)..P.........H.
0001E0: 29 C8 4A 51 D9 F0 0C A4 8A A2 A6 A8 A5 19 97 01 ).JQ............
0001F0: CA 89 EA AA 0A 08 B1 95 60 08 AA A8 9E 93 38 00 ........`.....8.
Size : 512 (Real : 512)
000000: D4 E3 A9 E0 55 35 05 51 0D 22 30 00 01 93 52 55 ....U5.Q."0...RU
000010: 10 50 93 23 00 00 19 35 25 51 09 55 1A 32 64 05 .P.#...5%Q.U.2d.
000020: 93 52 55 13 91 16 23 20 C0 59 35 25 51 39 61 52 .RU...# .Y5%Q9aR
000030: 32 5C 03 93 52 55 14 15 14 A3 A0 00 15 3D 41 05 2\..RU.......=A.
000040: 11 2A 32 C4 03 14 D2 D2 54 23 2F C0 39 4D 51 49 .*2.....T#/.9MQI
000050: 31 15 3A 33 78 01 95 13 D5 54 14 11 67 00 00 00 1.:3x....T..g...
000060: 85 94 15 55 14 91 53 20 65 05 55 45 24 54 C8 19 ...U..S e.UE$T..
000070: 41 55 51 09 25 52 06 50 55 54 46 4C 44 81 94 15 AUQ.%R.PUTFLD...
000080: 55 14 D6 53 60 65 05 55 45 45 95 09 40 00 04 D5 U..S`e.UEE..@...
000090: 04 10 54 00 00 30 EC E8 00 84 00 00 72 88 40 20 ..T..0......r.@
0000A0: 07 28 F8 04 CD A7 60 6C 16 0B 34 00 00 3E 2D 58 .(....`l..4..>-X
0000B0: 54 E8 00 54 00 00 39 44 20 80 03 94 7C 02 66 D3 T..T..9D ...|.f.
0000C0: B0 36 0B 05 9B 45 80 0F 8B 56 15 3A 00 10 80 00 .6...E...V.:....
0000D0: 0C 3A 7A 00 21 00 80 0F 8B 56 55 46 00 10 80 00 .:z.!....VUF....
0000E0: 0C 91 08 04 00 C9 10 80 40 0E 51 08 04 00 E5 1F ........@.Q.....
0000F0: 00 99 B4 EC 0D 82 C1 66 D2 D0 03 E2 D5 85 62 80 .......f......b.
000100: 05 54 04 01 CA 21 01 00 1C A3 E0 13 36 9D 81 B0 .T...!......6...
000110: 58 2C DA B4 00 7C 5A B0 AC 50 02 BD 9B 56 80 99 X,...|Z..P...V..
000120: B5 C4 00 F8 B5 61 58 A0 01 08 00 00 C3 B1 A0 02 .....aX.........
000130: 10 08 00 F8 B5 65 59 60 01 08 00 00 C9 10 80 40 .....eY`.......@
000140: 0C 96 1D B2 00 66 80 00 14 18 00 00 00 A9 40 00 .....f........@.
000150: 10 05 4A 00 01 00 2A 50 00 0C 00 00 00 08 40 80 ..J...*P......@.
000160: 07 28 84 06 00 72 8F 80 4C DA 76 06 C1 60 B3 6B .(...r..L.v..`.k
000170: E8 01 F1 6A C2 BD A0 02 AA C4 00 EB 10 81 00 0C ...j............
000180: D0 00 01 CA 21 02 00 1C A3 E0 13 36 9D 81 B0 58 ....!......6...X
000190: 2C DB 84 00 7C 5A B0 AF 68 00 84 00 00 61 DF 00 ,...|Z..h....a..
0001A0: 01 08 04 00 7C 5A B2 AF C8 00 84 00 00 64 8A AE ....|Z.......d..
0001B0: 50 03 0E FA 80 8A 80 00 07 28 84 04 00 72 8F 80 P........(...r..
0001C0: 4C DA 76 06 C1 60 B3 6F 00 01 F1 6A C2 A5 00 2A L.v..`.o...j...*
0001D0: F6 6D 5A 02 66 D0 F0 13 E2 D5 85 4A 00 44 20 00 .mZ.f......J.D .
0001E0: 03 0E 95 80 88 40 20 03 E2 D5 95 4D 00 44 20 00 .....@ ....M.D .
0001F0: 03 25 5E CD B3 E0 4C DA 36 02 7C 5A B2 AA 20 08 .%^...L.6.|Z.. .
Size : 512 (Real : 512)
000000: 00 85 14 D0 D0 53 A0 54 15 44 54 E4 48 19 19 31 .....S.T.DT.H..1
000010: 11 0D 35 42 04 53 4B 49 50 94 00 00 4D 63 C0 58 ..5B.SKIP...Mc.X
000020: 2E 17 2B 15 87 43 80 04 20 10 03 25 87 47 C0 19 ..+..C.. ..%.G..
000030: A0 00 05 07 00 1D 80 28 38 00 00 01 41 C0 01 40 .......(8...A..@
000040: 00 00 00 42 00 00 32 44 20 40 00 E5 9A 00 00 33 ...B..2D @.....3
000050: 40 00 07 28 84 08 00 1C B3 69 40 03 36 95 80 39 @..(.....i@.6..9
000060: 59 A0 00 03 05 82 7C 5A B0 AB D8 00 84 08 00 1C Y.....|Z........
000070: B3 69 98 03 36 9B 00 39 59 A0 00 03 05 9A 00 00 .i..6..9Y.......
000080: 1F 16 AC AA BC 00 21 00 00 19 22 10 20 00 72 54 ......!...". .rT
000090: 2E B3 6A 40 00 8D 9A 00 00 08 40 40 01 C9 50 BA ..j@......@@..P.
0000A0: CD AC A0 02 36 6D 69 00 61 D2 30 01 08 10 00 39 ....6mi.a.0....9
0000B0: 66 D7 20 06 6D 4B 00 72 B3 40 00 06 09 F1 6A C2 f. .mK.r.@....j.
0000C0: B5 20 02 10 20 00 72 CD B0 00 0C DB 06 00 E5 66 . .. .r........f
0000D0: D0 00 06 09 F1 6A C2 B5 20 02 10 00 01 87 6B 00 .....j.. .....k.
0000E0: 04 20 10 01 F1 6A CA BC E0 0C 17 0B 95 8A CD B2 . ...j..........
0000F0: E0 0E 56 6D 87 00 60 9F 16 AC 2B B2 00 C1 70 B9 ..Vm..`...+...p.
000100: 58 AC DB 6C 00 E5 66 D0 00 06 09 F1 6A C2 BB 20 X..l..f.....j..
000110: 02 10 00 01 87 77 00 04 20 10 01 F1 6A CA BC E0 .....w.. ...j...
000120: 02 10 08 01 87 7A 80 04 20 00 01 F1 6A CA BE 60 .....z.. ...j..`
000130: 02 10 00 01 92 21 02 00 07 2C DB 28 00 CD B8 E0 .....!...,.(....
000140: 0E B6 0B 85 CA C5 66 DF B0 06 68 00 00 C9 62 88 ......f...h...b.
000150: 40 00 01 CB AC 42 04 00 0E 59 B7 E0 01 9B 5D 80 @....B...Y....].
000160: 1C 2E 56 6D 03 01 72 B3 6D D0 03 04 F8 B5 65 53 ..Vm..r.m.....eS
000170: 80 11 08 00 00 39 2A 17 59 B4 50 04 46 CD A2 E0 .....9*.Y.P.F...
000180: 2C 3A 32 02 21 03 00 07 25 42 EB 36 97 80 8A D9 ,:2.!...%B.6....
000190: B4 CC 04 F8 B5 65 58 B0 17 0B 95 9B 47 00 5C AC .....eX.....G.\.
0001A0: DA 9E 00 C1 3E 2D 59 55 A4 04 42 00 00 0E 4A 85 ....>-YU..B...J.
0001B0: D6 6D 3F 01 11 B3 6A 18 0B 0E A5 00 B8 5C AC DA .m?...j......\..
0001C0: 9A 02 E5 66 D2 00 16 09 F1 6A CA B1 00 22 10 00 ...f.....j..."..
0001D0: 00 72 54 2E B3 6B 00 08 8D 9B 59 00 58 75 A4 05 .rT..k....Y.Xu..
0001E0: 87 4E 00 5C 2E 56 0B 26 3A 00 01 50 55 11 53 91 .N.\.V.&:..PU.S.
0001F0: 23 2D 80 39 0D 0D 1D 0D 21 06 32 FE 03 90 D0 D1 #-.9....!.2.....
Size : 512 (Real : 512)
000000: 84 00 00 64 88 40 20 06 48 AA 80 00 B9 44 20 20 ...d.@ .H....D
000010: 03 94 7C 02 66 D3 B0 36 0B 05 9B 4E 40 4F 8B 56 ..|.f..6...N@O.V
000020: 15 71 01 57 B3 6A D0 13 36 AC 00 9F 16 AC 2A E2 .q.W.j..6.....*.
000030: 02 21 00 00 18 75 D0 04 42 01 00 1F 16 AC AA FA .!...u..B.......
000040: 02 21 00 00 19 22 10 08 01 92 2A A9 20 2E 51 08 .!..."....*. .Q.
000050: 08 00 E5 1F 00 99 B4 EC 0D 82 C1 66 D6 40 13 E2 ...........f.@..
000060: D5 85 6A 80 55 EC DA B4 04 CD B2 20 27 C5 AB 0A ..j.U...... '...
000070: D5 00 88 40 00 06 1D AD 01 10 80 40 07 C5 AB 2A ...@.......@...*
000080: DB 00 88 40 00 06 48 A8 00 00 75 88 41 00 06 68 ...@..H...u.A..h
000090: 00 00 7C 5A B2 AF 10 08 84 00 00 72 8A AD B8 0B ..|Z.......r....
0000A0: 94 7C 02 66 D3 B0 36 0B 05 9B 67 40 4F 8B 56 55 .|.f..6...g@O.VU
0000B0: E2 01 10 80 40 0C 3B CA 02 21 00 00 0F 8B 56 55 ....@.;..!....VU
0000C0: EE 01 10 80 00 0C 91 08 04 00 C9 61 D3 A0 26 6D ...........a..&m
0000D0: 9E 00 BF E0 00 90 05 FF 00 05 00 2F F8 00 2C 01 .........../..,.
0000E0: 4D 00 40 80 0A 68 02 05 00 53 40 10 30 02 9A 00 M.@..h...S@.0...
0000F0: 81 C0 14 D0 04 10 00 A9 00 20 C0 05 48 01 06 80 ......... ..H...
000100: 2A 40 08 38 01 52 00 41 E0 0A 90 02 10 00 54 80 *@.8.R.A......T.
000110: 10 88 02 C0 80 84 80 16 D8 04 26 00 00 00 04 20 ..........&....
000120: 00 03 24 55 60 80 5C A2 10 10 01 CA 3E 01 33 69 ..$U`.\.....>.3i
000130: D8 1B 05 82 7C 5A B2 AA B0 10 84 02 00 64 88 40 ....|Z.......d.@
000140: 00 06 48 AA 8F 00 39 44 20 80 03 94 7C 02 66 D3 ..H...9D ...|.f.
000150: B0 36 0B 04 F8 B5 65 58 F0 21 55 5B 02 75 88 41 .6....eX.!U[.u.A
000160: 00 06 68 00 00 E5 10 82 00 0E 51 F0 09 9B 4E C0 ..h.......Q...N.
000170: D8 2C 13 E2 D5 95 63 C0 84 20 10 03 0E C9 01 08 .,....c.. ......
000180: 40 00 03 E2 D5 95 66 C0 84 20 10 03 24 42 00 00 @.....f.. ..$B..
000190: 32 58 AC 51 08 08 00 39 72 88 40 00 07 28 F8 02 2X.Q...9r.@..(..
0001A0: CD 00 00 18 2D 16 68 00 00 EB 10 81 80 0C D0 00 ....-.h.........
0001B0: 00 F8 B5 65 5C B0 21 08 08 00 39 75 88 40 C0 06 ...e\.!...9u.@..
0001C0: 6D B2 02 60 B8 5C AC 57 28 84 06 00 72 8F 80 4C m..`.\.W(...r..L
0001D0: DA 76 06 C1 60 B3 6E A8 09 F1 6A CA BD 20 42 10 .v..`.n...j.. B.
0001E0: 00 01 82 C1 64 88 40 00 01 CB AC 43 69 C0 99 B7 ....d.@....Ci...
0001F0: 24 08 42 02 00 0E 4A 85 D6 68 00 00 2B 66 DF 20 $.B...J..h..+f.
Size : 512 (Real : 512)
000000: D2 53 95 23 2A 60 19 0D 0D 31 39 15 1E 33 06 03 .S.#*`...19..3..
000010: 90 D0 D4 12 53 95 23 20 C0 35 0D 0D 4D 55 0A 32 ....S.# .5..MU.2
000020: 1E 01 90 D0 D4 D5 D2 55 23 A4 60 19 19 31 11 0D .......U#.`..1..
000030: 35 42 32 A2 03 92 54 D1 D4 90 54 23 2E 00 39 25 5B2...T...T#..9%
000040: 4D 4D 41 05 0E 32 74 01 93 11 56 13 D4 91 23 A1 MMA..2t...V...#.
000050: 20 31 4D 2D 25 42 70 00 00 85 94 D1 51 54 91 53 1M-%Bp.....QT.S
000060: 20 24 C4 38 15 5D 25 11 51 22 06 53 45 45 52 45 $.8.]%.Q".SEERE
000070: 4C 81 14 D1 51 4E 20 64 E4 55 74 C4 94 E8 15 4D L...QN d.Ut....M
000080: 15 14 C4 DA 06 53 45 45 4E 41 4D 81 13 D5 55 16 .....SEENAM...U.
000090: A0 55 85 45 95 04 59 40 00 04 D4 4C 14 00 00 00 .U.E..Y@...L....
0000A0: 00 04 2F 87 F8 E5 F2 2A 00 00 18 76 C4 04 54 00 ../....*...v..T.
0000B0: 00 39 44 22 00 03 94 7C 02 66 D1 60 36 0B 04 55 .9D"...|.f.`6..U
0000C0: 40 00 02 20 10 00 64 45 40 00 04 20 00 03 94 7C @.. ..dE@.. ...|
0000D0: 01 66 D7 D0 46 08 84 10 00 1C BE 59 2A F6 6D C6 .f..F......Y*.m.
0000E0: 03 15 50 00 00 88 08 00 19 11 50 00 01 08 00 00 ..P.......P.....
0000F0: E5 1F 00 59 B5 F4 11 82 21 04 00 07 2F 96 48 84 ...Y....!.../.H.
000100: 00 00 1C BA C5 40 00 03 34 00 00 15 50 A0 01 15 .....@..4...P...
000110: 5C 00 57 B3 6E 30 1B 85 CA 22 AC A0 02 10 00 01 \.W.n0..."......
000120: CA 3E 00 B3 6B E8 23 04 42 08 00 0E 5F 2C 91 0D .>..k.#.B..._,..
000130: 40 02 72 88 40 00 07 28 F8 04 CD BF 80 6C 16 0B @.r.@..(.....l..
000140: 0E CF 00 88 6A 68 13 94 42 00 00 39 47 C0 26 6D ....jh..B..9G.&m
000150: FC 03 60 B0 58 76 78 04 42 0A 00 39 44 20 10 03 ..`.Xvx.B..9D ..
000160: 94 7C 02 66 80 00 0C 16 08 86 AD 01 39 44 20 00 .|.f........9D .
000170: 03 94 7C 02 66 DF C0 36 0B 04 42 00 00 08 A8 00 ..|.f..6..B.....
000180: 03 0E CF 00 88 6B 38 13 94 42 00 00 39 47 C0 26 .....k8..B..9G.&
000190: 6D FC 03 60 B0 58 76 78 04 43 5D 00 9C A2 10 08 m..`.Xvx.C].....
0001A0: 01 CA 3E 01 33 40 00 06 0B 04 42 08 00 0E 5F 2C ..>.3@....B..._,
0001B0: 91 0D 89 02 72 88 40 20 07 28 F8 04 CD BF 80 6C ....r.@ .(.....l
0001C0: 16 0B 0E CF 00 88 6C B0 13 94 42 01 00 39 47 C0 ......l...B..9G.
0001D0: 26 6D FC 03 60 B0 58 76 78 04 43 68 C0 9C A2 10 &m..`.Xvx.Ch....
0001E0: 08 01 CA 3E 01 33 6F E0 1B 05 82 C3 B3 C0 22 1B ...>.3o.......".
0001F0: 60 04 E5 10 80 40 0E 51 F0 09 9B 7A 00 18 2C 16 `....@.Q...z..,.
Size : 512 (Real : 512)
000000: 21 19 F1 6A CA A6 A0 62 10 00 00 72 54 2E B3 6F !..j...b...rT..o
000010: D8 10 8D 9B 7F C0 85 6C D0 00 01 CA 21 04 00 1C .......l....!...
000020: A3 E0 13 36 9D 81 B0 58 2C DB B8 04 7C 5A B2 A9 ...6...X,...|Z..
000030: 90 18 84 00 00 60 B0 59 2C 3B E8 04 21 00 80 18 .....`.Y,;..!...
000040: 2C 16 4B 14 42 04 00 0E 59 B4 38 0C F8 B5 65 51 ,.K.B...Y.8...eQ
000050: F0 41 08 10 00 39 66 D4 10 37 58 AA E5 00 B3 6D .A...9f..7X....m
000060: C8 11 F1 6A CA AD 20 62 10 00 00 72 EB 15 55 10 ...j.. b...r..U.
000070: 36 6D 12 03 61 D7 80 31 08 00 00 39 75 88 40 80 6m..a..1...9u.@.
000080: 01 CB 36 A6 81 B3 6B 20 18 A8 00 00 75 B8 5C AC ..6...k ....u.\.
000090: D0 00 01 CA 21 04 00 07 2C DA E6 06 E5 10 82 00 ....!...,.......
0000A0: 03 96 6D 87 03 75 88 40 80 01 CB 36 C7 81 B3 6E ..m..u.@...6...n
0000B0: 88 03 45 9B 5D 80 9C A2 10 20 00 72 CD B2 E0 61 ..E.].... .r...a
0000C0: 17 FB FD 9B 5F C0 D9 A0 00 03 45 9A 00 00 34 43 ...._.....E...4C
0000D0: 22 2A F2 06 21 02 00 07 2E 56 6D A6 03 75 B0 5C "*..!....Vm..u.\
0000E0: 2E 56 2B 36 CD 01 B4 59 B5 D8 0C 55 58 40 DD 6E .V+6...Y...UX@.n
0000F0: 17 2B 36 E4 01 88 AE 78 18 AA EC 01 9F 16 AC 2A .+6....x.......*
000100: 38 08 2A 00 00 1C A2 1B 70 06 E5 10 80 40 0E 51 8.*.....p....@.Q
000110: F0 0D 9A 00 00 30 58 2C 17 58 84 02 00 66 80 00 .....0X,.X...f..
000120: 07 C5 AB 2A 8B 02 08 69 20 23 94 42 01 00 39 47 ...*...i #.B..9G
000130: C0 26 68 00 00 C1 60 88 40 00 06 0B 24 42 08 00 .&h...`.@...$B..
000140: 08 AE D8 1B 0E 9E 01 88 40 20 06 0B 24 14 07 16 ........@ ..$...
000150: 88 0A E7 23 49 D0 CA 20 22 9C 8E 46 F3 90 80 D2 ...#I.. "..F....
000160: 6E 10 14 88 A4 C1 01 18 D2 6C 32 82 80 11 9B 30 n........l2....0
000170: 3A 86 86 82 9C 89 19 AC 03 A8 68 68 2A 69 91 99 :.........hh*i..
000180: E0 3A 86 86 82 A6 A5 19 AF 03 A8 68 68 69 E9 B1 .:.........hhi..
000190: 91 60 3C 86 86 8E 86 90 83 19 C0 03 C8 68 68 E9 .`<..........hh.
0001A0: 29 CA 91 95 40 38 86 86 8E A9 19 25 03 C8 68 69 )...@8.....%..hi
0001B0: 89 C8 A8 F1 9B E0 18 86 86 98 A9 19 FB 03 88 68 ...............h
0001C0: 69 C8 B1 9C C0 3C 86 86 A0 92 9C A9 19 D5 03 A8 i....<..........
0001D0: 68 6A 6A A8 51 9F 60 1C 86 86 A6 AE 92 A9 19 6F hjj.Q.`........o
0001E0: 02 A8 C9 28 A9 88 91 90 D0 4A 8C A0 AA A8 A7 18 ...(.....J......
0001F0: 00 00 C9 29 C8 69 0A A9 D1 80 00 0A 92 9C A4 8A ...).i..........
Size : 512 (Real : 512)
000000: 1D 9A 01 10 DB D0 27 28 84 02 00 72 8F 80 4C DA ......'(...r..L.
000010: 66 02 C1 60 8A A8 80 00 8A 80 00 30 EC D0 08 86 f..`.......0....
000020: E5 01 39 44 20 10 03 94 7C 02 66 D4 50 16 0B 05 ..9D ...|.f.P...
000030: 87 66 80 44 37 5C 09 CA 21 00 80 1C A3 E0 13 36 .f.D7\..!......6
000040: AE 80 B0 58 2C 3B 34 02 21 BC 80 4E 51 08 04 00 ...X,;4.!..NQ...
000050: E5 1F 00 99 B5 BC 05 82 C1 61 D9 A0 11 0D F1 02 .........a......
000060: 72 88 40 20 07 28 F8 04 CD B0 20 2C 16 0B 0E CF r.@ .(.... ,....
000070: 00 AB D9 B7 18 0C 42 01 00 39 47 C0 16 6D 7D 04 ......B..9G..m}.
000080: 60 88 41 00 01 CB E5 92 C3 A0 C0 4C D0 00 02 87 `.A........L....
000090: 80 00 00 14 E0 00 02 00 A7 00 00 20 05 38 00 01 ........... .8..
0000A0: 80 2A B0 00 30 01 55 80 01 A0 0B 00 00 04 00 59 .*..0.U........Y
0000B0: 20 00 28 02 D2 00 01 80 17 2C 00 0E 00 BB A0 00 .(......,......
0000C0: 80 05 F2 00 04 80 28 20 08 28 01 45 80 41 60 0A ......( .(.E.A`.
0000D0: 50 02 0E 00 53 A0 10 78 02 A9 00 84 00 15 90 04 P...S..x........
0000E0: 22 00 AE C0 21 20 05 88 01 09 80 00 00 01 55 62 "...! ........Ub
0000F0: 00 72 88 40 80 01 CB 94 42 06 00 39 47 C0 36 68 .r.@....B..9G.6h
000100: 00 00 C1 60 B0 44 20 20 00 E5 CA 21 00 80 1C A3 ...`.D ...!....
000110: E0 13 36 C9 80 B0 58 22 1B F8 04 E5 10 80 40 0E ..6...X"......@.
000120: 51 F0 09 9B 49 C0 98 2C 11 08 20 00 39 7C B2 44 Q...I..,.. .9|.D
000130: 02 01 00 80 40 65 37 1D 0E 47 91 D0 80 00 20 10 ....@e7..G.... .
000140: 08 04 06 33 79 B4 DA 6F 37 0E 84 00 01 68 80 40 ...3y..o7....h.@
000150: 70 39 1B CC E7 23 09 B4 74 20 00 08 04 02 03 61 p9...#..t .....a
000160: A4 C4 72 30 9C 8F 23 A1 00 00 CA 78 3A 19 4D C7 ..r0..#....x:.M.
000170: 33 49 BC DC 20 36 1A 4D C6 B1 01 A4 E8 65 36 82 3I.. 6.M.....e6.
000180: 80 02 03 19 BC DA 6D 37 9B 84 07 33 D0 E8 40 00 ......m7...3..@.
000190: 10 19 4F 07 41 01 8C D0 61 34 9B 87 42 00 00 80 ..O.A...a4..B...
0001A0: 40 65 37 1D 0E 47 91 01 C0 E8 3A 10 00 04 06 43 @e7..G....:....C
0001B0: 09 D0 C2 20 39 9A 4F 46 51 D0 80 00 20 10 08 0D ... 9.OFQ... ...
0001C0: 86 F3 09 90 40 61 3A 0E 84 00 01 01 B0 C8 20 31 ....@a:....... 1
0001D0: 9A 0D C2 03 09 D0 74 20 00 08 0E 07 23 79 9C 40 ......t ....#y.@
0001E0: 73 34 9E 8C A3 A1 00 00 5A 20 32 9B 8C 82 03 81 s4......Z 2.....
0001F0: C8 DE 67 1D 08 00 02 D1 01 94 DC 64 10 19 8D 26 ..g........d...&
Size : 512 (Real : 512)
000000: 00 00 00 00 02 00 6A 00 04 00 2E 00 0F 00 64 00 ......j.......d.
000010: 10 00 42 00 12 00 20 00 20 00 60 00 2D 00 03 00 ..B... . .`.-...
000020: 2E 00 49 00 34 00 01 00 38 00 59 00 47 00 01 00 ..I.4...8.Y.G...
000030: 47 00 54 00 FF FF FF FF 1A 1A 1A 1A 1A 1A 1A 1A G.T.............
000040: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: C3 28 00 40 69 39 88 0C 26 E1 01 54 DC 6B 37 1B .(.@i9..&..T.k7.
000010: CE E6 E1 01 24 E8 65 36 88 08 66 F3 21 94 14 00 ....$.e6..f.!...
000020: 1D B1 58 A2 AA 04 00 EB 10 80 00 0C D0 00 00 F8 ..X.............
000030: B5 65 53 D0 31 55 07 02 75 88 40 60 06 68 00 00 .eS.1U..u.@`.h..
000040: 7C 5A B2 A9 E8 18 84 02 00 61 D4 00 31 08 00 00 |Z.......a..1...
000050: 7C 5A B2 AB A0 18 AA 80 00 39 44 20 20 00 E5 CA |Z.......9D ...
000060: 21 02 80 1C A3 E0 1B 34 00 00 60 B0 58 22 10 00 !......4..`.X"..
000070: 00 72 E5 1F 00 59 B7 3C 11 82 21 10 00 1C A2 10 .r...Y.<..!.....
000080: 08 01 CA 3E 01 33 6D 78 03 05 82 21 04 80 19 A0 ...>.3mx...!....
000090: 00 03 AC 42 FF 00 33 40 00 07 28 84 04 00 1C B9 ...B..3@..(.....
0000A0: 44 20 30 03 94 7C 03 66 D5 50 36 0B 05 82 21 00 D 0..|.f.P6...!.
0000B0: 00 07 2E 51 F0 05 9B 73 C1 18 22 10 38 01 9B 5E ...Q...s..".8..^
0000C0: 00 CF 8B 56 55 BB 03 10 81 C0 0C DB 44 06 E5 10 ...VU.......D...
0000D0: 80 40 0E 51 F0 09 9B 5C 00 D8 2C 11 55 02 00 11 .@.Q...\..,.U...
0000E0: 88 A8 10 00 CD 82 C1 64 8A AA 50 0B AC 42 08 00 .......d..P..B..
0000F0: 33 40 00 07 28 84 00 00 72 8F 80 4C DA 2C 06 C1 3@..(...r..L.,..
000100: 60 8A AE 38 1B 95 5E CD A7 60 8E 51 F0 09 9B 45 `..8..^..`.Q...E
000110: 80 D8 2C 11 08 80 00 E5 10 80 40 0E 51 F0 09 9B ..,.......@.Q...
000120: 6D C0 D8 2C 16 48 84 02 00 72 8F 80 2C DA FA 08 m..,.H...r..,...
000130: C1 10 80 40 02 2A 04 00 21 02 00 19 B6 B4 0D CA ...@.*..!.......
000140: 21 00 80 1C A3 E0 13 36 9B 01 30 58 2C 17 0B 95 !......6..0X,...
000150: 8A 7C 5A B2 A9 58 22 BD 9B 71 80 C4 20 00 03 94 .|Z..X"..q.. ...
000160: 42 01 00 39 47 C0 26 6D 1A 04 60 B0 59 22 AA DC B..9G.&m..`.Y"..
000170: 00 C3 AB 80 82 11 00 01 92 21 13 80 19 22 11 10 .........!..."..
000180: 01 92 21 3F 00 19 22 11 58 01 92 21 16 80 19 2C ..!?..".X..!...,
000190: 3A F2 08 CD B6 40 35 04 10 00 00 A8 A0 80 10 05 :....@5.........
0001A0: 49 04 01 00 2A 68 20 0C 01 54 41 01 A0 0A AA 08 I...*h ..TA.....
0001B0: 0C 00 00 00 02 11 F8 01 92 2A A0 40 0E B1 08 3C .........*.@...<
0001C0: 00 CD 00 00 0F 8B 56 15 B1 04 60 B8 5C AC 53 E2 ......V...`.\.S.
0001D0: D5 95 68 C1 05 54 08 00 F8 B5 65 5A 30 41 08 04 ..h..T....eZ0A..
0001E0: 00 C3 B4 C0 82 10 00 00 F8 B5 61 5B 10 41 08 00 ..........a[.A..
0001F0: 00 C3 B6 80 82 10 08 00 F8 B5 65 5C E0 41 08 28 ..........e\.A.(
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 00 E5 10 80 40 0E 51 F0 09 9B 7D C0 D8 2C 11 08 ....@.Q...}..,..
000010: 00 00 22 A0 40 0C 96 28 84 00 00 1C BA C4 20 40 ..".@..(...... @
000020: 03 36 88 02 33 6A F8 03 85 CA CD 00 00 1D 62 11 .6..3j........b.
000030: 00 01 9B 48 40 CF 8B 56 55 FF 04 10 80 00 0C D0 ...H@..VU.......
000040: 00 00 56 EB 10 8C 00 07 D0 93 0E EF 02 08 40 80 ..V...........@.
000050: 06 6D D9 04 72 88 40 20 07 28 F8 04 CD A6 C0 8C .m..r.@ .(......
000060: 16 0B 05 93 19 7F 03 A8 68 68 29 C8 91 9C E0 3A ........hh)....:
000070: 86 86 82 A6 A5 19 03 05 C8 68 68 8A 68 E9 31 9E .........hh.h.1.
000080: 80 48 86 86 8A A3 19 E1 04 C8 68 68 E8 69 08 31 .H........hh.i.1
000090: 98 50 48 86 86 8E A9 19 F3 04 C8 68 69 29 C8 69 .PH........hi).i
0000A0: 31 93 00 38 86 86 98 A9 19 DC 04 C8 68 6A 09 29 1..8........hj.)
0000B0: CA 91 95 D0 4C 86 86 A6 AE 92 A9 19 DD 03 A8 C9 ....L...........
0000C0: 28 A9 88 91 9C 40 4A 8C A0 AA A8 87 19 0D 05 A8 (....@J.........
0000D0: CA 0A AA 8A 71 80 00 0C 92 9C 86 90 AA 9D 18 00 ....q...........
0000E0: 00 A9 29 CA 48 A9 91 80 00 0A 92 9C A4 8A 9B 19 ..).H...........
0000F0: 29 03 89 2A 88 A9 B1 91 60 28 92 A8 9E AB 19 8E )..*....`(......
000100: 03 89 2A 89 EB 11 D0 00 04 98 87 1D 7D 04 C9 C8 ..*.........}...
000110: AA E9 89 29 D1 80 00 0C 9E AA A8 86 90 AB 18 00 ...)............
000120: 00 C9 EA AA 8A 48 A9 91 80 00 0C 9E AA A8 A4 8A .....H..........
000130: 9B 1D CF 04 89 EA AA 8B 51 DC 60 3A A6 8A 8A 62 ........Q.`:...b
000140: 6D 1D 16 03 8A 68 A8 A7 11 DF C0 3C A6 8A 8A 9C m....h.....<....
000150: 82 9B 1D 04 00 CA 68 A8 AA 48 A9 91 92 C0 4C A6 ......h..H....L.
000160: B2 9A 84 9E 99 19 3C 04 8A 8B 2A 08 B1 D0 20 0A ......<...*... .
000170: AE 92 88 A8 91 1D 3B 04 AB 0A 8B 2A 08 B3 80 00 ......;....*....
000180: 00 85 15 D0 52 55 20 45 74 14 95 49 40 00 04 D4 ....RU Et..I@...
000190: 88 00 43 45 80 1C A2 10 10 01 CA CD 00 00 18 2C ..CE...........,
0001A0: 11 08 08 00 E5 66 80 00 0C 16 48 28 EE 61 34 9D .....f....H(.a4.
0001B0: 0D 26 E3 38 B8 5C 2E 00 46 44 80 2A 32 3A 2A A2 .&.8.\..FD.*2:*.
0001C0: 1C 64 24 02 A3 28 2A AA 29 C7 40 00 22 BA 0A 4A .d$..(*.).@."..J
0001D0: A4 E0 00 00 9E 00 00 00 1A 1A 1A 1A 1A 1A 1A 1A ................
0001E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 4D 41 43 2E 43 20 2D 2D 20 /*..** MAC.C --
000010: 53 6D 61 6C 6C 2D 4D 61 63 20 41 73 73 65 6D 62 Small-Mac Assemb
000020: 6C 65 72 20 2D 2D 20 50 61 72 74 20 31 3A 20 4D ler -- Part 1: M
000030: 61 69 6E 6C 69 6E 65 20 61 6E 64 20 4D 61 63 72 ainline and Macr
000040: 6F 20 46 75 6E 63 74 69 6F 6E 73 0D 0A 2A 2A 0D o Functions..**.
000050: 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 20 20 20 .**
000060: 20 20 20 20 20 43 6F 70 79 72 69 67 68 74 20 31 Copyright 1
000070: 39 38 35 20 4A 2E 20 45 2E 20 48 65 6E 64 72 69 985 J. E. Hendri
000080: 78 0D 0A 2A 2A 0D 0A 2A 2A 20 55 73 61 67 65 3A x..**..** Usage:
000090: 20 4D 41 43 20 5B 2D 4C 5D 20 5B 2D 4E 4D 5D 20 MAC [-L] [-NM]
0000A0: 5B 2D 50 5D 20 5B 2D 53 23 5D 20 5B 6F 62 6A 65 [-P] [-S#] [obje
0000B0: 63 74 5D 20 73 6F 75 72 63 65 2E 2E 2E 0D 0A 2A ct] source.....*
0000C0: 2A 0D 0A 2A 2A 20 2D 4C 20 20 20 20 20 20 20 20 *..** -L
0000D0: 20 47 65 6E 65 72 61 74 65 20 61 6E 20 61 73 73 Generate an ass
0000E0: 65 6D 62 6C 79 20 6C 69 73 74 69 6E 67 20 6F 6E embly listing on
0000F0: 20 74 68 65 20 73 74 61 6E 64 61 72 64 20 6F 75 the standard ou
000100: 74 70 75 74 20 66 69 6C 65 2E 0D 0A 2A 2A 0D 0A tput file...**..
000110: 2A 2A 20 2D 4E 4D 20 20 20 20 20 20 20 20 4E 6F ** -NM No
000120: 20 6D 61 63 72 6F 20 70 72 6F 63 65 73 73 69 6E macro processin
000130: 67 2E 20 20 54 68 69 73 20 73 70 65 65 64 73 20 g. This speeds
000140: 75 70 20 74 68 65 20 61 73 73 65 6D 62 6C 65 72 up the assembler
000150: 20 73 6F 6D 65 77 68 61 74 2E 0D 0A 2A 2A 20 20 somewhat...**
000160: 20 20 20 20 20 20 20 20 20 20 4D 61 63 72 6F 20 Macro
000170: 70 72 6F 63 65 73 73 69 6E 67 20 69 73 20 4E 4F processing is NO
000180: 54 20 6E 65 65 64 65 64 20 66 6F 72 20 53 6D 61 T needed for Sma
000190: 6C 6C 2D 43 20 32 2E 31 20 6F 75 74 70 75 74 20 ll-C 2.1 output
0001A0: 66 69 6C 65 73 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 2D files...**..** -
0001B0: 50 20 20 20 20 20 20 20 20 20 50 61 75 73 65 20 P Pause
0001C0: 6F 6E 20 65 72 72 6F 72 73 20 77 61 69 74 69 6E on errors waitin
0001D0: 67 20 66 6F 72 20 61 6E 20 6F 70 65 72 61 74 6F g for an operato
0001E0: 72 20 72 65 73 70 6F 6E 73 65 20 6F 66 20 43 52 r response of CR
0001F0: 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 2D 53 23 20 20 20 ...**..** -S#
Size : 512 (Real : 512)
000000: 4D 49 54 0D 0A 47 45 54 52 45 4C 0D 0A 50 55 54 MIT..GETREL..PUT
000010: 52 45 4C 0D 0A 53 45 45 52 45 4C 0D 0A 52 45 4C REL..SEEREL..REL
000020: 0D 0A 45 58 54 45 4E 44 0D 0A 46 49 4C 45 0D 0A ..EXTEND..FILE..
000030: 49 4E 54 0D 0A 4D 45 53 53 0D 0A 52 45 51 0D 0A INT..MESS..REQ..
000040: 53 43 41 4E 0D 0A 57 41 49 54 0D 0A 1A 1A 1A 1A SCAN..WAIT......
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 20 20 20 20 20 53 65 74 20 73 79 6D 62 6F 6C 20 Set symbol
000010: 74 61 62 6C 65 20 73 69 7A 65 20 74 6F 20 61 63 table size to ac
000020: 63 65 70 74 20 23 20 73 79 6D 62 6F 6C 73 2E 0D cept # symbols..
000030: 0A 2A 2A 0D 0A 2A 2A 20 6F 62 6A 65 63 74 20 20 .**..** object
000040: 20 20 20 4E 61 6D 65 20 6F 66 20 74 68 65 20 6F Name of the o
000050: 62 6A 65 63 74 20 66 69 6C 65 20 74 6F 20 62 65 bject file to be
000060: 20 6F 75 74 70 75 74 2E 20 20 49 74 20 6D 75 73 output. It mus
000070: 74 20 68 61 76 65 20 61 20 52 45 4C 0D 0A 2A 2A t have a REL..**
000080: 20 20 20 20 20 20 20 20 20 20 20 20 65 78 74 65 exte
000090: 6E 73 69 6F 6E 20 74 6F 20 62 65 20 72 65 63 6F nsion to be reco
0000A0: 67 6E 69 7A 65 64 20 61 73 20 74 68 65 20 6F 75 gnized as the ou
0000B0: 74 70 75 74 20 66 69 6C 65 2E 20 20 41 20 64 72 tput file. A dr
0000C0: 69 76 65 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 ive..**
0000D0: 20 20 20 73 70 65 63 69 66 69 65 72 20 69 73 20 specifier is
0000E0: 61 6C 6C 6F 77 65 64 2E 20 20 49 66 20 6E 6F 74 allowed. If not
0000F0: 20 73 70 65 63 69 66 69 65 64 2C 20 74 68 65 20 specified, the
000100: 6F 62 6A 65 63 74 20 63 6F 64 65 0D 0A 2A 2A 20 object code..**
000110: 20 20 20 20 20 20 20 20 20 20 20 77 69 6C 6C 20 will
000120: 67 6F 20 69 6E 74 6F 20 61 20 66 69 6C 65 20 28 go into a file (
000130: 6F 6E 20 74 68 65 20 64 65 66 61 75 6C 74 20 64 on the default d
000140: 72 69 76 65 29 20 62 65 61 72 69 6E 67 20 74 68 rive) bearing th
000150: 65 20 73 61 6D 65 0D 0A 2A 2A 20 20 20 20 20 20 e same..**
000160: 20 20 20 20 20 20 6E 61 6D 65 20 61 73 20 74 68 name as th
000170: 65 20 66 69 72 73 74 20 73 6F 75 72 63 65 20 66 e first source f
000180: 69 6C 65 2C 20 62 75 74 20 77 69 74 68 20 61 20 ile, but with a
000190: 52 45 4C 20 65 78 74 65 6E 73 69 6F 6E 2E 0D 0A REL extension...
0001A0: 2A 2A 0D 0A 2A 2A 20 73 6F 75 72 63 65 2E 2E 2E **..** source...
0001B0: 20 20 4E 61 6D 65 73 20 6F 66 20 74 68 65 20 73 Names of the s
0001C0: 6F 75 72 63 65 20 66 69 6C 65 73 20 74 6F 20 62 ource files to b
0001D0: 65 20 61 73 73 65 6D 62 6C 65 64 2E 20 20 54 68 e assembled. Th
0001E0: 65 20 64 65 66 61 75 6C 74 2C 61 6E 64 0D 0A 2A e default,and..*
0001F0: 2A 20 20 20 20 20 20 20 20 20 20 20 20 6F 6E 6C * onl
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 79 20 61 6C 6C 6F 77 65 64 2C 20 65 78 74 65 6E y allowed, exten
000010: 73 69 6F 6E 20 69 73 20 4D 41 43 2E 20 20 41 20 sion is MAC. A
000020: 64 72 69 76 65 20 73 70 65 63 69 66 69 65 72 20 drive specifier
000030: 69 73 20 61 6C 6C 6F 77 65 64 2E 0D 0A 2A 2A 20 is allowed...**
000040: 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 6E The n
000050: 61 6D 65 64 20 66 69 6C 65 73 20 77 69 6C 6C 20 amed files will
000060: 62 65 20 61 73 73 65 6D 62 6C 65 64 20 61 73 20 be assembled as
000070: 6F 6E 65 20 66 69 6C 65 20 63 6F 6E 63 61 74 65 one file concate
000080: 6E 61 74 65 64 0D 0A 2A 2A 20 20 20 20 20 20 20 nated..**
000090: 20 20 20 20 20 69 6E 20 74 68 65 20 6F 72 64 65 in the orde
0000A0: 72 20 67 69 76 65 6E 2E 0D 0A 2A 2A 0D 0A 2A 2A r given...**..**
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 4E 4F 54 45 NOTE
0000C0: 3A 20 54 68 65 20 6D 6F 64 75 6C 65 20 6E 61 6D : The module nam
0000D0: 65 20 69 6E 20 74 68 65 20 52 45 4C 20 66 69 6C e in the REL fil
0000E0: 65 20 77 69 6C 6C 20 62 65 20 74 61 6B 65 6E 20 e will be taken
0000F0: 66 72 6F 6D 0D 0A 2A 2A 20 20 20 20 20 20 20 20 from..**
000100: 20 20 20 20 74 68 65 20 66 69 72 73 74 20 36 20 the first 6
000110: 63 68 61 72 61 63 74 65 72 73 20 6F 66 20 74 68 characters of th
000120: 65 20 6F 62 6A 65 63 74 20 66 69 6C 65 6E 61 6D e object filenam
000130: 65 2E 0D 0A 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 e...*/..#include
000140: 20 3C 73 74 64 69 6F 2E 68 3E 0D 0A 23 69 6E 63 <stdio.h>..#inc
000150: 6C 75 64 65 20 22 6E 6F 74 69 63 65 2E 68 22 0D lude "notice.h".
000160: 0A 23 69 6E 63 6C 75 64 65 20 22 6D 61 63 2E 68 .#include "mac.h
000170: 22 09 0D 0A 23 69 6E 63 6C 75 64 65 20 22 72 65 "...#include "re
000180: 6C 2E 68 22 0D 0A 23 69 6E 63 6C 75 64 65 20 22 l.h"..#include "
000190: 6D 69 74 2E 68 22 0D 0A 23 64 65 66 69 6E 65 20 mit.h"..#define
0001A0: 4E 4F 43 43 41 52 47 43 0D 0A 0D 0A 2F 2A 0D 0A NOCCARGC..../*..
0001B0: 2A 2A 20 73 79 6D 62 6F 6C 20 74 61 62 6C 65 0D ** symbol table.
0001C0: 0A 2A 2F 0D 0A 69 6E 74 0D 0A 20 20 73 74 6D 61 .*/..int.. stma
0001D0: 78 20 3D 20 53 54 4D 41 58 2C 09 09 2F 2A 20 6D x = STMAX,../* m
0001E0: 61 78 69 6D 75 6D 20 73 79 6D 62 6F 6C 73 20 2A aximum symbols *
0001F0: 2F 0D 0A 20 20 73 74 6E 2C 09 09 09 09 2F 2A 20 /.. stn,..../*
Size : 512 (Real : 512)
000000: 09 2F 2A 20 73 6F 75 6E 64 20 74 68 65 20 61 6C ./* sound the al
000010: 61 72 6D 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D 0A 2F arm */.. }..../
000020: 2A 0D 0A 2A 2A 20 70 61 73 73 20 6F 6E 65 0D 0A *..** pass one..
000030: 2A 2F 0D 0A 70 61 73 73 31 28 61 72 67 63 2C 20 */..pass1(argc,
000040: 61 72 67 76 29 20 69 6E 74 20 61 72 67 63 2C 20 argv) int argc,
000050: 2A 61 72 67 76 3B 20 7B 0D 0A 20 20 69 6E 74 20 *argv; {.. int
000060: 6D 61 78 3B 0D 0A 20 20 73 74 20 20 3D 20 63 61 max;.. st = ca
000070: 6C 6C 6F 63 28 53 54 42 55 46 53 5A 2C 20 20 20 lloc(STBUFSZ,
000080: 31 29 3B 09 09 2F 2A 20 61 6C 6C 6F 63 61 74 65 1);../* allocate
000090: 20 7A 65 72 6F 65 64 20 73 79 6D 62 6F 6C 20 74 zeroed symbol t
0000A0: 61 62 6C 65 20 2A 2F 0D 0A 20 20 73 74 70 20 3D able */.. stp =
0000B0: 20 63 61 6C 6C 6F 63 28 73 74 6D 61 78 2C 20 49 calloc(stmax, I
0000C0: 4E 54 53 5A 29 3B 0D 0A 20 20 73 74 65 6E 64 20 NTSZ);.. stend
0000D0: 3D 20 73 74 20 2B 20 53 54 42 55 46 53 5A 3B 09 = st + STBUFSZ;.
0000E0: 09 09 2F 2A 20 72 65 6D 65 6D 62 65 72 20 65 6E ../* remember en
0000F0: 64 20 6F 66 20 74 61 62 6C 65 20 2A 2F 0D 0A 20 d of table */..
000100: 20 6D 61 78 20 3D 20 61 76 61 69 6C 28 59 45 53 max = avail(YES
000110: 29 3B 09 09 09 2F 2A 20 68 6F 77 20 6D 75 63 68 );.../* how much
000120: 20 61 76 61 69 6C 61 62 6C 65 3F 20 2A 2F 0D 0A available? */..
000130: 20 20 6D 61 78 20 2D 3D 20 53 54 41 43 4B 20 2B max -= STACK +
000140: 20 28 4D 41 58 4F 50 45 4E 20 2A 20 4F 48 44 4F (MAXOPEN * OHDO
000150: 50 45 4E 29 3B 09 2F 2A 20 63 61 6C 63 75 6C 61 PEN);./* calcula
000160: 74 65 20 68 6F 77 20 6D 75 63 68 20 2A 2F 0D 0A te how much */..
000170: 20 20 6D 74 20 3D 20 6D 74 6E 65 78 74 20 3D 20 mt = mtnext =
000180: 63 61 6C 6C 6F 63 28 6D 61 78 2C 20 31 29 3B 09 calloc(max, 1);.
000190: 09 2F 2A 20 61 6C 6C 6F 63 61 74 65 20 73 70 61 ./* allocate spa
0001A0: 63 65 20 2A 2F 0D 0A 20 20 6D 74 65 6E 64 20 3D ce */.. mtend =
0001B0: 20 6D 74 20 2B 20 6D 61 78 20 2D 20 4D 41 58 4C mt + max - MAXL
0001C0: 49 4E 45 3B 09 09 2F 2A 20 6E 6F 74 65 20 65 6E INE;../* note en
0001D0: 64 20 6F 66 20 6D 61 63 72 6F 20 62 75 66 66 65 d of macro buffe
0001E0: 72 20 2A 2F 0D 0A 20 20 64 6F 70 61 73 73 28 61 r */.. dopass(a
0001F0: 72 67 63 2C 20 61 72 67 76 29 3B 09 09 09 2F 2A rgc, argv);.../*
Size : 512 (Real : 512)
000000: 6E 75 6D 62 65 72 20 6F 66 20 73 79 6D 62 6F 6C number of symbol
000010: 73 20 6C 6F 61 64 65 64 20 2A 2F 0D 0A 20 2A 73 s loaded */.. *s
000020: 74 70 3B 09 09 09 09 2F 2A 20 73 79 6D 62 6F 6C tp;..../* symbol
000030: 20 74 61 62 6C 65 20 70 6F 69 6E 74 65 72 20 61 table pointer a
000040: 72 72 61 72 20 2A 2F 0D 0A 63 68 61 72 0D 0A 20 rrar */..char..
000050: 2A 73 74 2C 09 09 09 09 2F 2A 20 73 79 6D 62 6F *st,..../* symbo
000060: 6C 20 74 61 62 6C 65 20 62 75 66 66 65 72 20 2A l table buffer *
000070: 2F 0D 0A 20 2A 73 74 65 6E 64 2C 09 09 09 2F 2A /.. *stend,.../*
000080: 20 65 6E 64 20 6F 66 20 73 79 6D 62 6F 6C 20 74 end of symbol t
000090: 61 62 6C 65 20 2A 2F 0D 0A 20 2A 73 74 70 74 72 able */.. *stptr
0000A0: 2C 09 09 09 2F 2A 20 73 74 20 65 6E 74 72 79 20 ,.../* st entry
0000B0: 70 6F 69 6E 74 65 72 20 2A 2F 0D 0A 20 20 73 74 pointer */.. st
0000C0: 73 79 6D 5B 4D 41 58 4C 41 42 2B 31 5D 3B 09 09 sym[MAXLAB+1];..
0000D0: 2F 2A 20 74 65 6D 70 6F 72 61 72 79 20 73 79 6D /* temporary sym
0000E0: 62 6F 6C 20 73 70 61 63 65 20 2A 2F 0D 0A 0D 0A bol space */....
0000F0: 2F 2A 0D 0A 2A 2A 20 6D 61 63 72 6F 20 64 65 66 /*..** macro def
000100: 69 6E 69 74 69 6F 6E 20 74 61 62 6C 65 0D 0A 2A inition table..*
000110: 2F 0D 0A 63 68 61 72 0D 0A 20 2A 6D 74 2C 09 09 /..char.. *mt,..
000120: 09 09 2F 2A 20 6D 61 63 72 6F 20 74 61 62 6C 65 ../* macro table
000130: 20 62 75 66 66 65 72 20 2A 2F 0D 0A 20 2A 6D 74 buffer */.. *mt
000140: 70 72 65 76 2C 09 09 09 2F 2A 20 70 72 65 76 69 prev,.../* previ
000150: 6F 75 73 20 6D 74 20 65 6E 74 72 79 20 2A 2F 0D ous mt entry */.
000160: 0A 20 2A 6D 74 6E 65 78 74 2C 09 09 09 2F 2A 20 . *mtnext,.../*
000170: 6E 65 78 74 20 61 76 61 69 6C 61 62 6C 65 20 6D next available m
000180: 74 20 62 79 74 65 20 2A 2F 0D 0A 20 2A 6D 74 65 t byte */.. *mte
000190: 6E 64 2C 09 09 09 2F 2A 20 65 6E 64 20 6F 66 20 nd,.../* end of
0001A0: 6D 61 63 72 6F 20 74 61 62 6C 65 20 2A 2F 0D 0A macro table */..
0001B0: 20 2A 6D 74 70 74 72 3B 09 09 09 2F 2A 20 6D 74 *mtptr;.../* mt
0001C0: 20 65 6E 74 72 79 20 70 6F 69 6E 74 65 72 20 2A entry pointer *
0001D0: 2F 0D 0A 0D 0A 69 6E 74 0D 0A 20 20 70 61 73 73 /....int.. pass
0001E0: 20 3D 20 31 2C 09 09 09 2F 2A 20 77 68 69 63 68 = 1,.../* which
0001F0: 20 70 61 73 73 3F 20 2A 2F 0D 0A 20 20 62 61 64 pass? */.. bad
Size : 512 (Real : 512)
000000: 20 64 6F 20 70 61 73 73 20 31 20 2A 2F 0D 0A 20 do pass 1 */..
000010: 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 70 61 73 }..../*..** pas
000020: 73 20 74 77 6F 0D 0A 2A 2F 0D 0A 70 61 73 73 32 s two..*/..pass2
000030: 28 61 72 67 63 2C 20 61 72 67 76 29 20 69 6E 74 (argc, argv) int
000040: 20 61 72 67 63 2C 20 2A 61 72 67 76 3B 20 7B 0D argc, *argv; {.
000050: 0A 20 20 69 6E 74 20 69 3B 0D 0A 20 20 6F 75 74 . int i;.. out
000060: 72 65 6C 20 3D 20 6F 70 65 6E 28 6F 62 6A 66 6E rel = open(objfn
000070: 2C 20 22 77 22 29 3B 09 09 2F 2A 20 6F 70 65 6E , "w");../* open
000080: 20 6F 62 6A 65 63 74 20 66 69 6C 65 20 2A 2F 0D object file */.
000090: 0A 20 20 70 75 74 6E 61 6D 65 28 29 3B 09 09 09 . putname();...
0000A0: 09 2F 2A 20 64 65 63 6C 61 72 65 20 6D 6F 64 75 ./* declare modu
0000B0: 6C 65 20 6E 61 6D 65 20 2A 2F 0D 0A 20 20 70 75 le name */.. pu
0000C0: 74 65 6E 74 28 29 3B 09 09 09 09 2F 2A 20 64 65 tent();..../* de
0000D0: 63 6C 61 72 65 20 65 6E 74 72 79 20 70 6F 69 6E clare entry poin
0000E0: 74 73 20 2A 2F 0D 0A 20 20 70 75 74 73 7A 28 29 ts */.. putsz()
0000F0: 3B 09 09 09 09 2F 2A 20 64 65 63 6C 61 72 65 20 ;..../* declare
000100: 70 72 6F 67 72 61 6D 20 73 69 7A 65 20 2A 2F 0D program size */.
000110: 0A 20 20 70 61 73 73 20 3D 20 32 3B 09 09 09 09 . pass = 2;....
000120: 2F 2A 20 73 69 67 6E 61 6C 20 70 61 73 73 20 32 /* signal pass 2
000130: 20 2A 2F 0D 0A 20 20 64 6F 70 61 73 73 28 61 72 */.. dopass(ar
000140: 67 63 2C 20 61 72 67 76 29 3B 09 09 09 2F 2A 20 gc, argv);.../*
000150: 64 6F 20 70 61 73 73 20 32 20 2A 2F 0D 0A 20 20 do pass 2 */..
000160: 70 75 74 65 78 73 28 29 3B 09 09 09 09 2F 2A 20 putexs();..../*
000170: 64 65 63 6C 61 72 65 20 65 70 20 61 6E 64 20 78 declare ep and x
000180: 72 20 73 79 6D 62 6F 6C 73 20 2A 2F 0D 0A 20 20 r symbols */..
000190: 70 75 74 65 6E 64 28 29 3B 09 09 09 09 2F 2A 20 putend();..../*
0001A0: 64 65 63 6C 61 72 65 20 65 6E 64 20 6F 66 20 70 declare end of p
0001B0: 72 6F 67 72 61 6D 20 2A 2F 0D 0A 20 20 69 66 28 rogram */.. if(
0001C0: 66 65 72 72 6F 72 28 6F 75 74 72 65 6C 29 29 20 ferror(outrel))
0001D0: 65 72 72 20 3D 20 59 45 53 3B 0D 0A 20 20 63 6C err = YES;.. cl
0001E0: 6F 73 65 28 6F 75 74 72 65 6C 29 3B 09 09 09 2F ose(outrel);.../
0001F0: 2A 20 63 6C 6F 73 65 20 6F 62 6A 65 63 74 20 66 * close object f
Size : 512 (Real : 512)
000000: 73 79 6D 2C 09 09 09 2F 2A 20 62 61 64 20 73 79 sym,.../* bad sy
000010: 6D 62 6F 6C 3F 20 2A 2F 0D 0A 20 20 67 6F 74 65 mbol? */.. gote
000020: 70 2C 09 09 09 2F 2A 20 68 61 76 65 20 61 6E 20 p,.../* have an
000030: 65 6E 74 72 79 20 70 6F 69 6E 74 3F 20 2A 2F 0D entry point? */.
000040: 0A 20 20 67 6F 74 78 72 2C 09 09 09 2F 2A 20 68 . gotxr,.../* h
000050: 61 76 65 20 61 6E 20 65 78 74 65 72 6E 61 6C 20 ave an external
000060: 72 65 66 65 72 65 6E 63 65 3F 20 2A 2F 0D 0A 20 reference? */..
000070: 20 67 6F 74 6C 61 62 65 6C 2C 09 09 09 2F 2A 20 gotlabel,.../*
000080: 68 61 76 65 20 61 20 6C 61 62 65 6C 3F 20 2A 2F have a label? */
000090: 0D 0A 20 20 67 6F 74 6E 61 6D 2C 09 09 09 2F 2A .. gotnam,.../*
0000A0: 20 68 61 76 65 20 61 20 6E 61 6D 65 3F 20 2A 2F have a name? */
0000B0: 0D 0A 20 20 65 6F 6D 2C 09 09 09 09 2F 2A 20 65 .. eom,..../* e
0000C0: 6E 64 20 6F 66 20 6D 6F 64 75 6C 65 3F 20 2A 2F nd of module? */
0000D0: 0D 0A 20 20 65 6E 64 76 2C 09 09 09 09 2F 2A 20 .. endv,..../*
0000E0: 45 4E 44 20 76 61 6C 75 65 20 2A 2F 0D 0A 20 20 END value */..
0000F0: 65 6E 64 74 2C 09 09 09 09 2F 2A 20 45 4E 44 20 endt,..../* END
000100: 74 79 70 65 20 2A 2F 0D 0A 20 20 65 72 72 2C 09 type */.. err,.
000110: 09 09 09 2F 2A 20 65 72 72 6F 72 3F 20 2A 2F 0D .../* error? */.
000120: 0A 20 20 6C 65 72 72 2C 09 09 09 09 2F 2A 20 6C . lerr,..../* l
000130: 69 6E 65 20 65 72 72 6F 72 20 66 6C 61 67 73 20 ine error flags
000140: 2A 2F 0D 0A 20 20 6C 6F 63 2C 09 09 09 09 2F 2A */.. loc,..../*
000150: 20 6C 6F 63 61 74 69 6F 6E 20 63 6F 75 6E 74 65 location counte
000160: 72 20 2A 2F 0D 0A 20 20 6C 69 6E 2C 09 09 09 09 r */.. lin,....
000170: 2F 2A 20 6C 69 6E 65 20 63 6F 75 6E 74 65 72 20 /* line counter
000180: 2A 2F 0D 0A 20 20 73 72 63 66 64 2C 09 09 09 2F */.. srcfd,.../
000190: 2A 20 73 6F 75 72 63 65 20 66 69 6C 65 20 66 64 * source file fd
0001A0: 20 2A 2F 0D 0A 20 20 6C 69 73 74 2C 09 09 09 09 */.. list,....
0001B0: 2F 2A 20 67 65 6E 65 72 61 74 65 20 61 20 6C 69 /* generate a li
0001C0: 73 74 69 6E 67 3F 20 2A 2F 0D 0A 20 20 6C 6C 69 sting? */.. lli
0001D0: 6E 65 2C 09 09 09 2F 2A 20 6C 69 73 74 69 6E 67 ne,.../* listing
0001E0: 20 6C 69 6E 65 2C 20 66 6F 72 63 65 20 31 73 74 line, force 1st
0001F0: 20 70 61 67 65 20 68 65 61 64 69 6E 67 20 2A 2F page heading */
Size : 512 (Real : 512)
000000: 69 6C 65 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D 0A 2F ile */.. }..../
000010: 2A 0D 0A 2A 2A 20 70 72 6F 63 65 73 73 20 70 61 *..** process pa
000020: 73 73 65 73 20 31 20 61 6E 64 20 32 0D 0A 2A 2F sses 1 and 2..*/
000030: 0D 0A 64 6F 70 61 73 73 28 61 72 67 63 2C 20 61 ..dopass(argc, a
000040: 72 67 76 29 20 69 6E 74 20 61 72 67 63 2C 20 2A rgv) int argc, *
000050: 61 72 67 76 3B 20 7B 0D 0A 20 20 69 6E 74 20 6D argv; {.. int m
000060: 6F 70 3B 0D 0A 20 20 69 6E 74 20 69 3B 0D 0A 20 op;.. int i;..
000070: 20 6D 6C 6E 65 78 74 20 3D 20 6C 70 61 67 65 20 mlnext = lpage
000080: 3D 20 69 20 3D 20 6C 69 6E 20 3D 20 6C 6F 63 20 = i = lin = loc
000090: 3D 20 30 3B 09 2F 2A 20 72 65 73 65 74 20 65 76 = 0;./* reset ev
0000A0: 65 72 79 74 68 69 6E 67 20 2A 2F 0D 0A 20 20 6C erything */.. l
0000B0: 6C 69 6E 65 20 3D 20 31 30 30 3B 09 09 09 09 2F line = 100;..../
0000C0: 2A 20 66 6F 72 63 65 20 70 61 67 65 20 68 65 61 * force page hea
0000D0: 64 69 6E 67 20 2A 2F 0D 0A 20 20 77 68 69 6C 65 ding */.. while
0000E0: 28 67 65 74 61 72 67 28 2B 2B 69 2C 20 73 72 63 (getarg(++i, src
0000F0: 66 6E 2C 20 4D 41 58 46 4E 2C 20 61 72 67 63 2C fn, MAXFN, argc,
000100: 20 61 72 67 76 29 20 21 3D 20 45 4F 46 29 20 7B argv) != EOF) {
000110: 0D 0A 20 20 20 20 69 66 28 73 72 63 66 6E 5B 30 .. if(srcfn[0
000120: 5D 20 3D 3D 20 27 2D 27 29 20 63 6F 6E 74 69 6E ] == '-') contin
000130: 75 65 3B 0D 0A 20 20 20 20 69 66 28 65 78 74 65 ue;.. if(exte
000140: 6E 64 28 73 72 63 66 6E 2C 20 53 52 43 45 58 54 nd(srcfn, SRCEXT
000150: 2C 20 4F 42 4A 45 58 54 29 29 20 63 6F 6E 74 69 , OBJEXT)) conti
000160: 6E 75 65 3B 20 0D 0A 20 20 20 20 73 72 63 66 64 nue; .. srcfd
000170: 20 3D 20 6F 70 65 6E 28 73 72 63 66 6E 2C 20 22 = open(srcfn, "
000180: 72 22 29 3B 09 09 2F 2A 20 6F 70 65 6E 20 73 6F r");../* open so
000190: 75 72 63 65 20 66 69 6C 65 20 2A 2F 0D 0A 20 20 urce file */..
0001A0: 20 20 65 6F 6D 20 3D 20 4E 4F 3B 09 09 09 09 2F eom = NO;..../
0001B0: 2A 20 6E 6F 74 20 65 6E 64 20 6F 66 20 6D 6F 64 * not end of mod
0001C0: 75 6C 65 20 2A 2F 0D 0A 20 20 20 20 67 6F 74 6F ule */.. goto
0001D0: 20 69 6E 70 75 74 3B 0D 0A 20 20 20 20 77 68 69 input;.. whi
0001E0: 6C 65 28 59 45 53 29 20 7B 0D 0A 20 20 20 20 20 le(YES) {..
0001F0: 20 70 6F 6C 6C 28 59 45 53 29 3B 0D 0A 20 20 20 poll(YES);..
Size : 512 (Real : 512)
000000: 0D 0A 20 20 70 61 72 74 31 2C 09 09 09 2F 2A 20 .. part1,.../*
000010: 70 61 72 74 20 31 20 6F 66 20 6C 69 73 74 69 6E part 1 of listin
000020: 67 20 6C 69 6E 65 20 70 72 69 6E 74 65 64 3F 20 g line printed?
000030: 2A 2F 0D 0A 20 20 63 63 6E 74 2C 09 09 09 09 2F */.. ccnt,..../
000040: 2A 20 63 6F 75 6E 74 20 6F 66 20 63 6F 64 65 20 * count of code
000050: 63 68 61 72 61 63 74 65 72 73 20 70 72 69 6E 74 characters print
000060: 65 64 20 2A 2F 0D 0A 20 20 6C 70 61 67 65 2C 09 ed */.. lpage,.
000070: 09 09 2F 2A 20 6C 69 73 74 69 6E 67 20 70 61 67 ../* listing pag
000080: 65 20 2A 2F 0D 0A 20 20 70 61 75 73 65 2C 09 09 e */.. pause,..
000090: 09 2F 2A 20 70 61 75 73 65 20 6F 6E 20 65 72 72 ./* pause on err
0000A0: 6F 72 73 3F 20 2A 2F 0D 0A 20 20 6C 6F 6F 6B 73 ors? */.. looks
0000B0: 2C 09 09 09 2F 2A 20 6E 75 6D 62 65 72 20 6F 66 ,.../* number of
0000C0: 20 6C 6F 6F 6B 73 20 74 6F 20 66 69 6E 64 20 69 looks to find i
0000D0: 6E 73 74 72 75 63 74 69 6F 6E 20 2A 2F 0D 0A 20 nstruction */..
0000E0: 20 6D 61 63 72 6F 73 20 3D 20 59 45 53 2C 09 09 macros = YES,..
0000F0: 09 2F 2A 20 6D 61 63 72 6F 20 70 72 6F 63 65 73 ./* macro proces
000100: 73 69 6E 67 3F 20 2A 2F 0D 0A 20 20 6D 6C 6E 65 sing? */.. mlne
000110: 78 74 2C 09 09 09 2F 2A 20 6E 65 78 74 20 6D 61 xt,.../* next ma
000120: 63 72 6F 20 6C 61 62 65 6C 20 74 6F 20 61 73 73 cro label to ass
000130: 69 67 6E 20 2A 2F 0D 0A 20 20 6D 6C 6E 62 72 5B ign */.. mlnbr[
000140: 31 30 5D 2C 09 09 09 2F 2A 20 6D 61 63 72 6F 20 10],.../* macro
000150: 6C 61 62 65 6C 20 6E 75 6D 62 65 72 73 20 2A 2F label numbers */
000160: 0D 0A 20 20 6D 70 70 74 72 5B 31 30 5D 2C 09 09 .. mpptr[10],..
000170: 09 2F 2A 20 6D 61 63 72 6F 20 70 61 72 61 6D 65 ./* macro parame
000180: 74 65 72 20 70 6F 69 6E 74 65 72 73 20 2A 2F 0D ter pointers */.
000190: 0A 20 20 64 65 66 6D 6F 64 65 2C 09 09 09 2F 2A . defmode,.../*
0001A0: 20 6D 61 63 72 6F 20 64 65 66 69 6E 69 74 69 6F macro definitio
0001B0: 6E 20 6D 6F 64 65 20 2A 2F 0D 0A 20 20 65 78 70 n mode */.. exp
0001C0: 6D 6F 64 65 3B 09 09 09 2F 2A 20 6D 61 63 72 6F mode;.../* macro
0001D0: 20 65 78 70 61 6E 73 69 6F 6E 20 6D 6F 64 65 20 expansion mode
0001E0: 2A 2F 0D 0A 0D 0A 63 68 61 72 0D 0A 20 2A 65 70 */....char.. *ep
0001F0: 2C 09 09 09 09 2F 2A 20 65 78 70 72 65 73 73 69 ,..../* expressi
Size : 512 (Real : 512)
000000: 20 20 20 2B 2B 6C 69 6E 3B 20 6C 65 72 72 20 3D ++lin; lerr =
000010: 20 30 3B 09 09 09 2F 2A 20 62 75 6D 70 20 6C 69 0;.../* bump li
000020: 6E 65 20 63 6F 75 6E 74 65 72 20 26 20 7A 65 72 ne counter & zer
000030: 6F 20 65 72 72 6F 72 73 20 2A 2F 0D 0A 20 20 20 o errors */..
000040: 20 20 20 70 61 72 74 31 20 3D 20 4E 4F 3B 09 09 part1 = NO;..
000050: 09 2F 2A 20 70 61 72 74 20 31 20 6F 66 20 6C 69 ./* part 1 of li
000060: 6E 65 20 6E 6F 74 20 6C 69 73 74 65 64 20 2A 2F ne not listed */
000070: 0D 0A 20 20 20 20 20 20 62 65 67 6C 69 6E 65 28 .. begline(
000080: 29 3B 09 09 09 2F 2A 20 62 65 67 69 6E 20 61 20 );.../* begin a
000090: 6C 69 73 74 69 6E 67 20 6C 69 6E 65 20 2A 2F 0D listing line */.
0000A0: 0A 20 20 20 20 20 20 69 66 28 6D 61 63 72 6F 73 . if(macros
0000B0: 20 3D 3D 20 4E 4F 29 20 7B 0D 0A 20 20 20 20 20 == NO) {..
0000C0: 20 20 20 64 6F 6C 61 62 65 6C 28 29 3B 09 09 09 dolabel();...
0000D0: 2F 2A 20 64 6F 20 6C 61 62 65 6C 20 61 6E 64 20 /* do label and
0000E0: 66 69 6E 64 20 6E 65 78 74 20 66 69 65 6C 64 20 find next field
0000F0: 2A 2F 0D 0A 20 20 20 20 20 20 20 20 69 66 28 21 */.. if(!
000100: 64 6F 6D 61 63 68 28 29 29 20 64 6F 61 73 6D 28 domach()) doasm(
000110: 29 3B 09 09 2F 2A 20 6D 61 63 68 69 6E 65 20 6F );../* machine o
000120: 72 20 61 73 73 65 6D 62 6C 65 72 20 69 6E 73 74 r assembler inst
000130: 72 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 7D r? */.. }
000140: 0D 0A 20 20 20 20 20 20 65 6C 73 65 20 7B 0D 0A .. else {..
000150: 20 20 20 20 20 20 20 20 6C 70 20 3D 20 6C 69 6E lp = lin
000160: 65 3B 0D 0A 20 20 20 20 20 20 20 20 6C 70 20 3D e;.. lp =
000170: 20 67 65 74 73 79 6D 28 6C 70 2C 20 4E 4F 29 3B getsym(lp, NO);
000180: 0D 0A 20 20 20 20 20 20 20 20 69 66 28 21 28 6D .. if(!(m
000190: 6F 70 20 3D 20 6D 61 63 6F 70 28 29 29 20 26 26 op = macop()) &&
0001A0: 20 67 6F 74 6E 61 6D 29 20 7B 2F 2A 20 32 6E 64 gotnam) {/* 2nd
0001B0: 20 66 69 65 6C 64 20 61 20 74 6F 6B 65 6E 3F 20 field a token?
0001C0: 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 6C 70 */.. lp
0001D0: 20 3D 20 73 6B 69 70 28 31 2C 20 6C 69 6E 65 29 = skip(1, line)
0001E0: 3B 09 09 2F 2A 20 6E 6F 2C 20 74 72 79 20 66 69 ;../* no, try fi
0001F0: 72 73 74 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 rst */..
Size : 512 (Real : 512)
000000: 6F 6E 20 70 6F 69 6E 74 65 72 20 2A 2F 0D 0A 20 on pointer */..
000010: 2A 6C 70 2C 09 09 09 09 2F 2A 20 6C 69 6E 65 20 *lp,..../* line
000020: 70 6F 69 6E 74 65 72 20 2A 2F 0D 0A 20 20 6C 69 pointer */.. li
000030: 6E 65 5B 4D 41 58 4C 49 4E 45 5D 2C 09 09 2F 2A ne[MAXLINE],../*
000040: 20 73 6F 75 72 63 65 20 6C 69 6E 65 20 2A 2F 0D source line */.
000050: 0A 20 2A 70 72 69 6F 72 2C 09 09 09 2F 2A 20 70 . *prior,.../* p
000060: 72 69 6F 72 20 65 78 74 20 72 65 66 20 69 6E 20 rior ext ref in
000070: 63 68 61 69 6E 20 2A 2F 0D 0A 20 20 73 72 63 66 chain */.. srcf
000080: 6E 5B 4D 41 58 46 4E 2B 34 5D 2C 09 09 2F 2A 20 n[MAXFN+4],../*
000090: 73 6F 75 72 63 65 20 66 69 6C 65 6E 61 6D 65 20 source filename
0000A0: 2A 2F 0D 0A 20 20 6F 62 6A 66 6E 5B 4D 41 58 46 */.. objfn[MAXF
0000B0: 4E 2B 34 5D 3B 09 09 2F 2A 20 6F 62 6A 65 63 74 N+4];../* object
0000C0: 20 66 69 6C 65 6E 61 6D 65 20 2A 2F 0D 0A 0D 0A filename */....
0000D0: 6D 61 69 6E 28 61 72 67 63 2C 20 61 72 67 76 29 main(argc, argv)
0000E0: 20 69 6E 74 20 61 72 67 63 2C 20 2A 61 72 67 76 int argc, *argv
0000F0: 3B 20 7B 0D 0A 20 20 66 70 75 74 73 28 22 53 6D ; {.. fputs("Sm
000100: 61 6C 6C 2D 4D 61 63 20 41 73 73 65 6D 62 6C 65 all-Mac Assemble
000110: 72 2C 20 22 2C 20 73 74 64 65 72 72 29 3B 20 66 r, ", stderr); f
000120: 70 75 74 73 28 56 45 52 53 49 4F 4E 2C 20 73 74 puts(VERSION, st
000130: 64 65 72 72 29 3B 0D 0A 20 20 66 70 75 74 73 28 derr);.. fputs(
000140: 43 52 49 47 48 54 31 2C 20 73 74 64 65 72 72 29 CRIGHT1, stderr)
000150: 3B 0D 0A 20 20 67 65 74 73 77 28 61 72 67 63 2C ;.. getsw(argc,
000160: 20 61 72 67 76 29 3B 09 09 2F 2A 20 67 65 74 20 argv);../* get
000170: 63 6F 6D 6D 61 6E 64 20 6C 69 6E 65 20 73 77 69 command line swi
000180: 74 63 68 65 73 20 2A 2F 0D 0A 20 20 70 61 73 73 tches */.. pass
000190: 31 28 61 72 67 63 2C 20 61 72 67 76 29 3B 09 09 1(argc, argv);..
0001A0: 2F 2A 20 62 75 69 6C 64 20 73 79 6D 62 6F 6C 20 /* build symbol
0001B0: 74 61 62 6C 65 20 2A 2F 0D 0A 20 20 70 61 73 73 table */.. pass
0001C0: 32 28 61 72 67 63 2C 20 61 72 67 76 29 3B 09 09 2(argc, argv);..
0001D0: 2F 2A 20 67 65 6E 65 72 61 74 65 20 6F 62 6A 65 /* generate obje
0001E0: 63 74 20 63 6F 64 65 20 2A 2F 0D 0A 20 20 69 66 ct code */.. if
0001F0: 28 65 72 72 29 20 61 62 6F 72 74 28 37 29 3B 09 (err) abort(7);.
Size : 512 (Real : 512)
000000: 20 20 6D 6F 70 20 3D 20 6D 61 63 6F 70 28 29 3B mop = macop();
000010: 0D 0A 20 20 20 20 20 20 20 20 20 20 7D 0D 0A 20 .. }..
000020: 20 20 20 20 20 20 20 69 66 28 64 65 66 6D 6F 64 if(defmod
000030: 65 29 20 7B 09 09 09 2F 2A 20 64 65 66 69 6E 69 e) {.../* defini
000040: 74 69 6F 6E 20 6D 6F 64 65 20 2A 2F 0D 0A 20 20 tion mode */..
000050: 20 20 20 20 20 20 20 20 69 66 28 6D 6F 70 20 3D if(mop =
000060: 3D 20 45 4E 44 4D 29 20 64 65 66 6D 6F 64 65 20 = ENDM) defmode
000070: 3D 20 4E 4F 3B 0D 0A 20 20 20 20 20 20 20 20 20 = NO;..
000080: 20 69 66 28 70 61 73 73 20 3D 3D 20 31 29 20 70 if(pass == 1) p
000090: 75 74 6D 61 63 28 29 3B 09 2F 2A 20 70 75 74 20 utmac();./* put
0000A0: 6C 69 6E 65 20 69 6E 20 6D 61 63 72 6F 20 74 61 line in macro ta
0000B0: 62 6C 65 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 ble */..
0000C0: 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 65 6C 73 }.. els
0000D0: 65 20 7B 09 09 09 09 2F 2A 20 63 6F 70 79 20 6F e {..../* copy o
0000E0: 72 20 65 78 70 61 6E 73 69 6F 6E 20 6D 6F 64 65 r expansion mode
0000F0: 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 69 */.. i
000100: 66 28 6D 6F 70 20 3D 3D 20 43 41 4C 4C 29 20 7B f(mop == CALL) {
000110: 09 09 2F 2A 20 65 6E 74 65 72 20 65 78 70 61 6E ../* enter expan
000120: 73 69 6F 6E 20 6D 6F 64 65 20 2A 2F 0D 0A 20 20 sion mode */..
000130: 20 20 20 20 20 20 20 20 20 20 65 78 70 6D 6F 64 expmod
000140: 65 20 3D 20 59 45 53 3B 0D 0A 20 20 20 20 20 20 e = YES;..
000150: 20 20 20 20 20 20 70 75 74 70 61 72 6D 28 29 3B putparm();
000160: 09 09 09 2F 2A 20 73 61 76 65 20 70 61 72 61 6D .../* save param
000170: 65 74 65 72 73 20 2A 2F 0D 0A 20 20 20 20 20 20 eters */..
000180: 20 20 20 20 20 20 64 6F 6C 61 62 65 6C 28 29 3B dolabel();
000190: 09 09 09 2F 2A 20 70 72 6F 63 65 73 73 20 6C 61 .../* process la
0001A0: 62 65 6C 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 bel */..
0001B0: 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 20 }..
0001C0: 20 65 6C 73 65 20 69 66 28 6D 6F 70 20 3D 3D 20 else if(mop ==
0001D0: 4D 41 43 52 4F 29 20 7B 09 2F 2A 20 65 6E 74 65 MACRO) {./* ente
0001E0: 72 20 64 65 66 69 6E 69 74 69 6F 6E 20 6D 6F 64 r definition mod
0001F0: 65 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 e */..
Size : 512 (Real : 512)
000000: 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A );.. }..../*..*
000010: 2A 20 74 65 73 74 20 66 6F 72 20 6D 61 63 72 6F * test for macro
000020: 20 62 75 66 66 65 72 20 6F 76 65 72 66 6C 6F 77 buffer overflow
000030: 0D 0A 2A 2F 0D 0A 6D 61 63 6F 76 65 72 28 70 74 ..*/..macover(pt
000040: 72 29 20 63 68 61 72 20 2A 70 74 72 3B 20 7B 0D r) char *ptr; {.
000050: 0A 20 20 69 66 28 70 74 72 20 3E 20 6D 74 65 6E . if(ptr > mten
000060: 64 29 20 65 72 72 6F 72 28 22 2D 20 4D 61 63 72 d) error("- Macr
000070: 6F 20 42 75 66 66 65 72 20 4F 76 65 72 66 6C 6F o Buffer Overflo
000080: 77 22 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D w");.. }..../*.
000090: 0A 2A 2A 20 66 69 6E 64 20 73 74 73 79 6D 20 69 .** find stsym i
0000A0: 6E 20 6D 61 63 72 6F 20 74 61 62 6C 65 0D 0A 2A n macro table..*
0000B0: 2A 20 72 65 74 75 72 6E 20 74 72 75 65 20 69 66 * return true if
0000C0: 20 66 6F 75 6E 64 2C 20 65 6C 73 65 20 66 61 6C found, else fal
0000D0: 73 65 0D 0A 2A 2A 20 6C 65 61 76 65 20 6D 74 70 se..** leave mtp
0000E0: 74 72 20 70 6F 69 6E 74 69 6E 67 20 74 6F 20 62 tr pointing to b
0000F0: 6F 64 79 20 6F 66 20 64 65 73 69 72 65 64 20 6D ody of desired m
000100: 61 63 72 6F 0D 0A 2A 2F 0D 0A 6D 74 66 69 6E 64 acro..*/..mtfind
000110: 28 29 20 7B 0D 0A 20 20 69 66 28 61 74 65 6E 64 () {.. if(atend
000120: 28 2A 6C 70 29 20 3D 3D 20 30 29 20 7B 0D 0A 20 (*lp) == 0) {..
000130: 20 20 20 6D 74 70 74 72 20 3D 20 6D 74 3B 0D 0A mtptr = mt;..
000140: 20 20 20 20 64 6F 20 7B 0D 0A 20 20 20 20 20 20 do {..
000150: 69 66 28 66 6C 64 63 6D 70 28 6C 70 2C 20 6D 74 if(fldcmp(lp, mt
000160: 70 74 72 20 2B 20 4D 54 4E 41 4D 29 20 3D 3D 20 ptr + MTNAM) ==
000170: 30 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 6D 74 0) {.. mt
000180: 70 74 72 20 2B 3D 20 4D 54 4E 41 4D 3B 0D 0A 20 ptr += MTNAM;..
000190: 20 20 20 20 20 20 20 6D 74 70 74 72 20 2B 3D 20 mtptr +=
0001A0: 73 74 72 6C 65 6E 28 6D 74 70 74 72 29 20 2B 20 strlen(mtptr) +
0001B0: 31 3B 0D 0A 20 20 20 20 20 20 20 20 72 65 74 75 1;.. retu
0001C0: 72 6E 20 28 59 45 53 29 3B 0D 0A 20 20 20 20 20 rn (YES);..
0001D0: 20 20 20 7D 0D 0A 20 20 20 20 20 20 6D 74 70 74 }.. mtpt
0001E0: 72 20 3D 20 67 65 74 69 6E 74 28 6D 74 70 74 72 r = getint(mtptr
0001F0: 29 3B 0D 0A 20 20 20 20 20 20 7D 20 77 68 69 6C );.. } whil
Size : 512 (Real : 512)
000000: 20 20 64 65 66 6D 6F 64 65 20 3D 20 59 45 53 3B defmode = YES;
000010: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 69 66 .. if
000020: 28 70 61 73 73 20 3D 3D 20 31 29 20 6E 65 77 6D (pass == 1) newm
000030: 61 63 28 29 3B 09 2F 2A 20 69 6E 69 74 20 6E 65 ac();./* init ne
000040: 77 20 6D 61 63 72 6F 20 69 6E 20 74 61 62 6C 65 w macro in table
000050: 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 20 */..
000060: 20 7D 0D 0A 20 20 20 20 20 20 20 20 20 20 65 6C }.. el
000070: 73 65 20 69 66 28 6D 6F 70 20 3D 3D 20 45 4E 44 se if(mop == END
000080: 4D 29 20 7B 09 2F 2A 20 6C 65 61 76 65 20 65 78 M) {./* leave ex
000090: 70 61 6E 73 69 6F 6E 20 6D 6F 64 65 20 2A 2F 0D pansion mode */.
0000A0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 65 78 70 . exp
0000B0: 6D 6F 64 65 20 3D 20 4E 4F 3B 0D 0A 20 20 20 20 mode = NO;..
0000C0: 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 }..
0000D0: 20 20 20 20 20 65 6C 73 65 20 7B 0D 0A 20 20 20 else {..
0000E0: 20 20 20 20 20 20 20 20 20 69 66 28 65 78 70 6D if(expm
0000F0: 6F 64 65 29 20 72 65 70 6C 61 63 65 28 29 3B 0D ode) replace();.
000100: 0A 20 20 20 20 20 20 20 20 20 20 20 20 64 6F 6C . dol
000110: 61 62 65 6C 28 29 3B 09 09 09 2F 2A 20 64 6F 20 abel();.../* do
000120: 6C 61 62 65 6C 20 61 6E 64 20 66 69 6E 64 20 6E label and find n
000130: 65 78 74 20 66 69 65 6C 64 20 2A 2F 0D 0A 20 20 ext field */..
000140: 20 20 20 20 20 20 20 20 20 20 69 66 28 21 64 6F if(!do
000150: 6D 61 63 68 28 29 29 20 64 6F 61 73 6D 28 29 3B mach()) doasm();
000160: 09 2F 2A 20 6D 61 63 68 69 6E 65 20 6F 72 20 61 ./* machine or a
000170: 73 73 65 6D 62 6C 65 72 20 69 6E 73 74 72 3F 20 ssembler instr?
000180: 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 */..
000190: 7D 0D 0A 20 20 20 20 20 20 20 20 20 20 7D 0D 0A }.. }..
0001A0: 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 }..
0001B0: 20 65 6E 64 6C 69 6E 65 28 29 3B 09 09 09 2F 2A endline();.../*
0001C0: 20 65 6E 64 20 61 20 6C 69 73 74 69 6E 67 20 6C end a listing l
0001D0: 69 6E 65 20 2A 2F 0D 0A 20 20 20 20 20 20 69 66 ine */.. if
0001E0: 28 70 61 73 73 20 3D 3D 20 32 29 20 67 72 69 70 (pass == 2) grip
0001F0: 65 28 29 3B 09 09 2F 2A 20 67 72 69 70 65 20 61 e();../* gripe a
Size : 512 (Real : 512)
000000: 65 28 6D 74 70 74 72 29 3B 0D 0A 20 20 20 20 7D e(mtptr);.. }
000010: 0D 0A 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B .. return (NO);
000020: 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 .. }..../*..**
000030: 65 73 74 61 62 6C 69 73 68 20 6E 65 77 20 6D 61 establish new ma
000040: 63 72 6F 0D 0A 2A 2F 0D 0A 6E 65 77 6D 61 63 28 cro..*/..newmac(
000050: 29 20 7B 0D 0A 20 20 69 6E 74 20 69 3B 20 69 20 ) {.. int i; i
000060: 3D 20 30 3B 0D 0A 20 20 69 66 28 21 67 6F 74 6E = 0;.. if(!gotn
000070: 61 6D 20 7C 7C 20 62 61 64 73 79 6D 29 20 73 79 am || badsym) sy
000080: 6D 65 72 72 28 29 3B 0D 0A 20 20 65 6C 73 65 20 merr();.. else
000090: 7B 0D 0A 20 20 20 20 6D 61 63 6F 76 65 72 28 6D {.. macover(m
0000A0: 74 6E 65 78 74 29 3B 0D 0A 20 20 20 20 69 66 28 tnext);.. if(
0000B0: 6D 74 70 72 65 76 29 20 70 75 74 69 6E 74 28 6D mtprev) putint(m
0000C0: 74 70 72 65 76 2C 20 6D 74 6E 65 78 74 29 3B 0D tprev, mtnext);.
0000D0: 0A 20 20 20 20 6D 74 70 72 65 76 20 3D 20 6D 74 . mtprev = mt
0000E0: 6E 65 78 74 3B 0D 0A 20 20 20 20 70 75 74 69 6E next;.. putin
0000F0: 74 28 6D 74 6E 65 78 74 2C 20 30 29 3B 0D 0A 20 t(mtnext, 0);..
000100: 20 20 20 6D 74 6E 65 78 74 20 2B 3D 20 49 4E 54 mtnext += INT
000110: 53 5A 3B 0D 0A 20 20 20 20 77 68 69 6C 65 28 2A SZ;.. while(*
000120: 6D 74 6E 65 78 74 2B 2B 20 3D 20 73 74 73 79 6D mtnext++ = stsym
000130: 5B 69 2B 2B 5D 29 20 3B 0D 0A 20 20 20 20 7D 20 [i++]) ;.. }
000140: 20 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A .. }..../*..**
000150: 20 70 75 74 20 61 20 6C 69 6E 65 20 69 6E 20 74 put a line in t
000160: 68 65 20 6D 61 63 72 6F 20 62 75 66 66 65 72 0D he macro buffer.
000170: 0A 2A 2F 0D 0A 70 75 74 6D 61 63 28 29 20 7B 0D .*/..putmac() {.
000180: 0A 20 20 63 68 61 72 20 2A 63 70 3B 20 63 70 20 . char *cp; cp
000190: 3D 20 6C 69 6E 65 3B 0D 0A 20 20 6D 61 63 6F 76 = line;.. macov
0001A0: 65 72 28 6D 74 6E 65 78 74 29 3B 09 09 2F 2A 20 er(mtnext);../*
0001B0: 77 69 6C 6C 20 62 75 66 66 65 72 20 74 61 6B 65 will buffer take
0001C0: 20 69 74 3F 20 2A 2F 0D 0A 20 20 77 68 69 6C 65 it? */.. while
0001D0: 28 2A 6D 74 6E 65 78 74 2B 2B 20 3D 20 2A 63 70 (*mtnext++ = *cp
0001E0: 2B 2B 29 20 3B 09 2F 2A 20 63 6F 70 79 20 65 76 ++) ;./* copy ev
0001F0: 65 72 79 74 68 69 6E 67 20 2A 2F 0D 0A 20 20 7D erything */.. }
Size : 512 (Real : 512)
000000: 62 6F 75 74 20 65 72 72 6F 72 73 20 2A 2F 0D 0A bout errors */..
000010: 20 20 20 20 20 20 69 66 28 65 78 70 6D 6F 64 65 if(expmode
000020: 29 20 67 65 74 6D 61 63 28 29 3B 09 09 2F 2A 20 ) getmac();../*
000030: 66 65 74 63 68 20 6E 65 78 74 20 6D 61 63 72 6F fetch next macro
000040: 20 6C 69 6E 65 20 2A 2F 0D 0A 20 20 20 20 20 20 line */..
000050: 65 6C 73 65 20 7B 0D 0A 20 20 20 20 20 20 20 20 else {..
000060: 69 6E 70 75 74 3A 0D 0A 20 20 20 20 20 20 20 20 input:..
000070: 69 66 28 65 6F 6D 29 20 62 72 65 61 6B 3B 0D 0A if(eom) break;..
000080: 20 20 20 20 20 20 20 20 69 66 28 21 66 67 65 74 if(!fget
000090: 73 28 6C 69 6E 65 2C 20 4D 41 58 4C 49 4E 45 2C s(line, MAXLINE,
0000A0: 20 73 72 63 66 64 29 29 20 65 72 72 6F 72 28 22 srcfd)) error("
0000B0: 2D 20 4D 69 73 73 69 6E 67 20 45 4E 44 22 29 3B - Missing END");
0000C0: 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 .. }..
0000D0: 20 20 20 7D 0D 0A 20 20 20 20 69 66 28 64 65 66 }.. if(def
0000E0: 6D 6F 64 65 29 20 7B 65 72 72 20 3D 20 59 45 53 mode) {err = YES
0000F0: 3B 20 70 75 74 73 28 22 2D 20 4D 69 73 73 69 6E ; puts("- Missin
000100: 67 20 45 4E 44 4D 22 29 3B 7D 0D 0A 20 20 20 20 g ENDM");}..
000110: 63 6C 6F 73 65 28 73 72 63 66 64 29 3B 09 09 09 close(srcfd);...
000120: 2F 2A 20 63 6C 6F 73 65 20 73 6F 75 72 63 65 20 /* close source
000130: 66 69 6C 65 20 2A 2F 0D 0A 20 20 20 20 7D 0D 0A file */.. }..
000140: 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 63 61 }..../*..** ca
000150: 6E 20 6C 69 6E 65 20 74 61 6B 65 20 6D 6F 72 65 n line take more
000160: 3F 0D 0A 2A 2F 0D 0A 63 61 6E 74 61 6B 65 28 69 ?..*/..cantake(i
000170: 2C 20 6E 65 65 64 29 20 69 6E 74 20 69 2C 20 6E , need) int i, n
000180: 65 65 64 3B 20 7B 0D 0A 20 20 72 65 74 75 72 6E eed; {.. return
000190: 20 28 69 20 3C 20 28 4D 41 58 4C 49 4E 45 20 2D (i < (MAXLINE -
0001A0: 20 33 29 20 2D 20 6E 65 65 64 29 3B 0D 0A 20 20 3) - need);..
0001B0: 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 67 65 74 20 }..../*..** get
0001C0: 61 20 6C 69 6E 65 20 66 72 6F 6D 20 74 68 65 20 a line from the
0001D0: 6D 61 63 72 6F 20 62 75 66 66 65 72 0D 0A 2A 2F macro buffer..*/
0001E0: 0D 0A 67 65 74 6D 61 63 28 29 20 7B 0D 0A 20 20 ..getmac() {..
0001F0: 63 68 61 72 20 2A 63 70 3B 20 63 70 20 3D 20 6C char *cp; cp = l
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 73 61 76 65 20 ..../*..** save
000010: 6D 61 63 72 6F 20 63 61 6C 6C 20 70 61 72 61 6D macro call param
000020: 65 74 65 72 73 20 69 6E 20 6D 61 63 72 6F 20 62 eters in macro b
000030: 75 66 66 65 72 0D 0A 2A 2A 20 61 6E 64 20 72 65 uffer..** and re
000040: 73 65 74 20 6D 61 63 72 6F 20 6C 61 62 65 6C 73 set macro labels
000050: 0D 0A 2A 2F 0D 0A 70 75 74 70 61 72 6D 28 29 20 ..*/..putparm()
000060: 7B 0D 0A 20 20 69 6E 74 20 69 2C 20 64 6C 6D 3B {.. int i, dlm;
000070: 20 63 68 61 72 20 2A 63 70 3B 0D 0A 20 20 69 20 char *cp;.. i
000080: 3D 20 2D 31 3B 20 63 70 20 3D 20 6D 74 6E 65 78 = -1; cp = mtnex
000090: 74 3B 0D 0A 20 20 6C 70 20 3D 20 73 6B 69 70 28 t;.. lp = skip(
0000A0: 32 2C 20 6C 70 29 3B 09 09 09 2F 2A 20 73 6B 69 2, lp);.../* ski
0000B0: 70 20 74 6F 20 70 61 72 61 6D 65 74 65 72 73 20 p to parameters
0000C0: 2A 2F 0D 0A 20 20 77 68 69 6C 65 28 2B 2B 69 20 */.. while(++i
0000D0: 3C 20 31 30 29 20 7B 0D 0A 20 20 20 20 6D 6C 6E < 10) {.. mln
0000E0: 62 72 5B 69 5D 20 3D 20 30 3B 09 09 09 2F 2A 20 br[i] = 0;.../*
0000F0: 6E 75 6C 6C 20 6D 61 63 72 6F 20 6C 61 62 65 6C null macro label
000100: 20 6E 62 72 20 2A 2F 0D 0A 20 20 20 20 77 68 69 nbr */.. whi
000110: 6C 65 28 69 73 73 70 61 63 65 28 2A 6C 70 29 29 le(isspace(*lp))
000120: 20 2B 2B 6C 70 3B 0D 0A 20 20 20 20 69 66 28 61 ++lp;.. if(a
000130: 74 65 6E 64 28 2A 6C 70 29 20 7C 7C 20 2A 6C 70 tend(*lp) || *lp
000140: 20 3D 3D 20 27 2C 27 29 20 6D 70 70 74 72 5B 69 == ',') mpptr[i
000150: 5D 20 3D 20 30 3B 0D 0A 20 20 20 20 65 6C 73 65 ] = 0;.. else
000160: 20 7B 0D 0A 20 20 20 20 20 20 6D 61 63 6F 76 65 {.. macove
000170: 72 28 63 70 29 3B 0D 0A 20 20 20 20 20 20 6D 70 r(cp);.. mp
000180: 70 74 72 5B 69 5D 20 3D 20 63 70 3B 0D 0A 20 20 ptr[i] = cp;..
000190: 20 20 20 20 77 68 69 6C 65 28 21 61 74 65 6E 64 while(!atend
0001A0: 28 2A 6C 70 29 20 26 26 20 2A 6C 70 20 21 3D 20 (*lp) && *lp !=
0001B0: 27 2C 27 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 ',') {..
0001C0: 69 66 28 2A 6C 70 20 3D 3D 20 27 5C 22 27 20 7C if(*lp == '\"' |
0001D0: 7C 20 2A 6C 70 20 3D 3D 20 27 5C 27 27 29 20 7B | *lp == '\'') {
0001E0: 09 09 2F 2A 20 73 74 72 69 6E 67 3F 20 2A 2F 0D ../* string? */.
0001F0: 0A 20 20 20 20 20 20 20 20 20 20 64 6C 6D 20 3D . dlm =
Size : 512 (Real : 512)
000000: 69 6E 65 3B 0D 0A 20 20 77 68 69 6C 65 28 2A 63 ine;.. while(*c
000010: 70 2B 2B 20 3D 20 2A 6D 74 70 74 72 2B 2B 29 20 p++ = *mtptr++)
000020: 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A ;.. }..../*..**
000030: 20 67 65 74 20 73 77 69 74 63 68 65 73 20 66 72 get switches fr
000040: 6F 6D 20 63 6F 6D 6D 61 6E 64 20 6C 69 6E 65 0D om command line.
000050: 0A 2A 2F 0D 0A 67 65 74 73 77 28 61 72 67 63 2C .*/..getsw(argc,
000060: 20 61 72 67 76 29 20 69 6E 74 20 61 72 67 63 2C argv) int argc,
000070: 20 2A 61 72 67 76 3B 20 7B 0D 0A 20 20 63 68 61 *argv; {.. cha
000080: 72 20 61 72 67 5B 4D 41 58 46 4E 2B 34 5D 3B 20 r arg[MAXFN+4];
000090: 69 6E 74 20 69 2C 20 6A 2C 20 6C 65 6E 3B 0D 0A int i, j, len;..
0000A0: 20 20 69 20 3D 20 30 3B 0D 0A 20 20 77 68 69 6C i = 0;.. whil
0000B0: 65 28 67 65 74 61 72 67 28 2B 2B 69 2C 20 61 72 e(getarg(++i, ar
0000C0: 67 2C 20 4D 41 58 46 4E 2C 20 61 72 67 63 2C 20 g, MAXFN, argc,
0000D0: 61 72 67 76 29 20 21 3D 20 45 4F 46 29 20 7B 0D argv) != EOF) {.
0000E0: 0A 20 20 20 20 69 66 28 61 72 67 5B 30 5D 20 3D . if(arg[0] =
0000F0: 3D 20 27 2D 27 29 20 7B 0D 0A 20 20 20 20 20 20 = '-') {..
000100: 20 20 20 20 20 69 66 28 74 6F 75 70 70 65 72 28 if(toupper(
000110: 61 72 67 5B 31 5D 29 20 3D 3D 20 27 4C 27 29 20 arg[1]) == 'L')
000120: 6C 69 73 74 20 3D 20 59 45 53 3B 0D 0A 20 20 20 list = YES;..
000130: 20 20 20 65 6C 73 65 20 69 66 28 74 6F 75 70 70 else if(toupp
000140: 65 72 28 61 72 67 5B 31 5D 29 20 3D 3D 20 27 50 er(arg[1]) == 'P
000150: 27 29 20 70 61 75 73 65 20 3D 20 59 45 53 3B 0D ') pause = YES;.
000160: 0A 20 20 20 20 20 20 65 6C 73 65 20 69 66 28 74 . else if(t
000170: 6F 75 70 70 65 72 28 61 72 67 5B 31 5D 29 20 3D oupper(arg[1]) =
000180: 3D 20 27 4E 27 20 26 26 0D 0A 20 20 20 20 20 20 = 'N' &&..
000190: 20 20 20 20 20 20 20 20 74 6F 75 70 70 65 72 28 toupper(
0001A0: 61 72 67 5B 32 5D 29 20 3D 3D 20 27 4D 27 29 20 arg[2]) == 'M')
0001B0: 6D 61 63 72 6F 73 20 3D 20 4E 4F 3B 0D 0A 20 20 macros = NO;..
0001C0: 20 20 20 20 65 6C 73 65 20 69 66 28 74 6F 75 70 else if(toup
0001D0: 70 65 72 28 61 72 67 5B 31 5D 29 20 3D 3D 20 27 per(arg[1]) == '
0001E0: 53 27 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 6C S') {.. l
0001F0: 65 6E 20 3D 20 75 74 6F 69 28 61 72 67 20 2B 20 en = utoi(arg +
Size : 512 (Real : 512)
000000: 20 2A 6C 70 3B 0D 0A 20 20 20 20 20 20 20 20 20 *lp;..
000010: 20 77 68 69 6C 65 28 21 61 74 65 6E 64 28 2A 2B while(!atend(*+
000020: 2B 6C 70 29 29 20 7B 0D 0A 20 20 20 20 20 20 20 +lp)) {..
000030: 20 20 20 20 20 69 66 28 2A 6C 70 20 3D 3D 20 64 if(*lp == d
000040: 6C 6D 20 26 26 20 2A 2B 2B 6C 70 20 21 3D 20 64 lm && *++lp != d
000050: 6C 6D 29 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 lm) break;..
000060: 20 20 20 20 20 20 20 20 2A 63 70 2B 2B 20 3D 20 *cp++ =
000070: 2A 6C 70 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 *lp;..
000080: 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 20 20 7D }.. }
000090: 0D 0A 20 20 20 20 20 20 20 20 65 6C 73 65 20 2A .. else *
0000A0: 63 70 2B 2B 20 3D 20 2A 6C 70 2B 2B 3B 0D 0A 20 cp++ = *lp++;..
0000B0: 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 }..
0000C0: 2A 63 70 2B 2B 20 3D 20 4E 55 4C 4C 3B 0D 0A 20 *cp++ = NULL;..
0000D0: 20 20 20 20 20 7D 0D 0A 20 20 20 20 69 66 28 2A }.. if(*
0000E0: 6C 70 20 3D 3D 20 27 2C 27 29 20 2B 2B 6C 70 3B lp == ',') ++lp;
0000F0: 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 66 28 21 61 .. }.. if(!a
000100: 74 65 6E 64 28 2A 6C 70 29 29 20 70 61 72 65 72 tend(*lp)) parer
000110: 72 28 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D r();.. }..../*.
000120: 0A 2A 2A 20 72 65 70 6C 61 63 65 20 70 61 72 61 .** replace para
000130: 6D 65 74 65 72 73 0D 0A 2A 2F 0D 0A 72 65 70 6C meters..*/..repl
000140: 61 63 65 28 29 20 7B 0D 0A 20 20 63 68 61 72 20 ace() {.. char
000150: 6C 69 6E 5B 4D 41 58 4C 49 4E 45 5D 3B 20 69 6E lin[MAXLINE]; in
000160: 74 20 6E 64 78 3B 0D 0A 20 20 63 68 61 72 20 2A t ndx;.. char *
000170: 63 70 2C 20 2A 63 70 32 3B 20 20 20 20 69 6E 74 cp, *cp2; int
000180: 20 69 3B 0D 0A 20 20 73 74 72 63 70 79 28 6C 69 i;.. strcpy(li
000190: 6E 2C 20 6C 69 6E 65 29 3B 20 63 70 20 3D 20 6C n, line); cp = l
0001A0: 69 6E 3B 20 69 20 3D 20 30 3B 0D 0A 20 20 64 6F in; i = 0;.. do
0001B0: 20 7B 0D 0A 20 20 20 20 69 66 28 2A 63 70 20 3D {.. if(*cp =
0001C0: 3D 20 27 3F 27 29 20 7B 09 09 09 09 2F 2A 20 73 = '?') {..../* s
0001D0: 75 62 73 74 69 74 75 74 69 6F 6E 20 6D 61 72 6B ubstitution mark
0001E0: 65 72 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 69 66 er? */.. if
0001F0: 28 69 73 64 69 67 69 74 28 2A 2B 2B 63 70 29 29 (isdigit(*++cp))
Size : 512 (Real : 512)
000000: 32 2C 20 26 6A 29 3B 0D 0A 20 20 20 20 20 20 20 2, &j);..
000010: 20 69 66 28 6C 65 6E 20 3E 20 30 20 26 26 20 21 if(len > 0 && !
000020: 61 72 67 5B 6C 65 6E 20 2B 20 32 5D 29 20 73 74 arg[len + 2]) st
000030: 6D 61 78 20 3D 20 6A 3B 0D 0A 20 20 20 20 20 20 max = j;..
000040: 20 20 65 6C 73 65 20 75 73 61 67 65 28 29 3B 0D else usage();.
000050: 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 . }..
000060: 20 20 65 6C 73 65 20 75 73 61 67 65 28 29 3B 0D else usage();.
000070: 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 65 6C . }.. el
000080: 73 65 20 7B 0D 0A 20 20 20 20 20 20 69 66 28 65 se {.. if(e
000090: 78 74 65 6E 64 28 61 72 67 2C 20 4F 42 4A 45 58 xtend(arg, OBJEX
0000A0: 54 2C 20 4F 42 4A 45 58 54 29 20 7C 7C 20 21 2A T, OBJEXT) || !*
0000B0: 6F 62 6A 66 6E 29 20 7B 20 0D 0A 20 20 20 20 20 objfn) { ..
0000C0: 20 20 20 69 66 28 61 72 67 5B 31 5D 20 3D 3D 20 if(arg[1] ==
0000D0: 27 3A 27 29 20 6A 20 3D 20 32 3B 20 65 6C 73 65 ':') j = 2; else
0000E0: 20 6A 20 3D 20 30 3B 20 0D 0A 20 20 20 20 20 20 j = 0; ..
0000F0: 20 20 73 74 72 63 70 79 28 6F 62 6A 66 6E 2C 20 strcpy(objfn,
000100: 61 72 67 20 2B 20 6A 29 3B 0D 0A 20 20 20 20 20 arg + j);..
000110: 20 20 20 7D 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 }.. }..
000120: 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D }.. }..../*.
000130: 0A 2A 2A 20 72 65 63 6F 67 6E 69 7A 65 20 6D 61 .** recognize ma
000140: 63 72 6F 20 6F 70 65 72 61 74 69 6F 6E 0D 0A 2A cro operation..*
000150: 2F 0D 0A 6D 61 63 6F 70 28 29 20 7B 0D 0A 20 20 /..macop() {..
000160: 69 66 28 66 6C 64 63 6D 70 28 6C 70 2C 20 22 45 if(fldcmp(lp, "E
000170: 4E 44 4D 22 20 29 20 3D 3D 20 30 29 20 72 65 74 NDM" ) == 0) ret
000180: 75 72 6E 20 28 45 4E 44 4D 29 3B 0D 0A 20 20 69 urn (ENDM);.. i
000190: 66 28 66 6C 64 63 6D 70 28 6C 70 2C 20 22 4D 41 f(fldcmp(lp, "MA
0001A0: 43 52 4F 22 29 20 3D 3D 20 30 29 20 72 65 74 75 CRO") == 0) retu
0001B0: 72 6E 20 28 4D 41 43 52 4F 29 3B 0D 0A 20 20 69 rn (MACRO);.. i
0001C0: 66 28 21 65 78 70 6D 6F 64 65 20 26 26 20 21 64 f(!expmode && !d
0001D0: 65 66 6D 6F 64 65 20 26 26 20 6D 74 66 69 6E 64 efmode && mtfind
0001E0: 28 29 29 20 72 65 74 75 72 6E 20 28 43 41 4C 4C ()) return (CALL
0001F0: 29 3B 0D 0A 20 20 72 65 74 75 72 6E 20 28 4E 4F );.. return (NO
Size : 512 (Real : 512)
000000: 20 7B 09 09 09 2F 2A 20 70 61 72 61 6D 65 74 65 {.../* paramete
000010: 72 20 73 75 62 73 74 69 74 75 74 69 6F 6E 3F 20 r substitution?
000020: 2A 2F 0D 0A 20 20 20 20 20 20 20 20 6E 64 78 20 */.. ndx
000030: 3D 20 2A 63 70 2B 2B 20 2D 20 27 30 27 20 2D 20 = *cp++ - '0' -
000040: 31 3B 09 09 09 2F 2A 20 77 68 69 63 68 20 6F 6E 1;.../* which on
000050: 65 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 69 e? */.. i
000060: 66 28 6E 64 78 20 3C 20 30 29 20 6E 64 78 20 3D f(ndx < 0) ndx =
000070: 20 39 3B 09 09 09 2F 2A 20 6D 61 6B 65 20 30 20 9;.../* make 0
000080: 6D 65 61 6E 20 31 30 20 2A 2F 0D 0A 20 20 20 20 mean 10 */..
000090: 20 20 20 20 69 66 28 63 70 32 20 3D 20 6D 70 70 if(cp2 = mpp
0000A0: 74 72 5B 6E 64 78 5D 29 20 7B 09 09 09 2F 2A 20 tr[ndx]) {.../*
0000B0: 67 6F 74 20 70 61 72 61 6D 65 74 65 72 3F 20 2A got parameter? *
0000C0: 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 77 68 69 /.. whi
0000D0: 6C 65 28 2A 63 70 32 29 09 09 09 09 2F 2A 20 79 le(*cp2)..../* y
0000E0: 65 73 2C 20 63 6F 70 79 20 69 74 20 2A 2F 0D 0A es, copy it */..
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 63 if(c
000100: 61 6E 74 61 6B 65 28 69 2C 20 31 29 29 20 6C 69 antake(i, 1)) li
000110: 6E 65 5B 69 2B 2B 5D 20 3D 20 2A 63 70 32 2B 2B ne[i++] = *cp2++
000120: 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 7D 0D 0A ;.. }..
000130: 20 20 20 20 20 20 20 20 63 6F 6E 74 69 6E 75 65 continue
000140: 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 ;.. }..
000150: 20 20 20 20 7D 0D 0A 20 20 20 20 69 66 28 2A 63 }.. if(*c
000160: 70 20 3D 3D 20 27 40 27 29 20 7B 09 09 09 09 2F p == '@') {..../
000170: 2A 20 6C 61 62 65 6C 20 73 75 62 73 74 69 74 75 * label substitu
000180: 74 69 6F 6E 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 tion? */..
000190: 69 66 28 63 61 6E 74 61 6B 65 28 69 2C 20 31 29 if(cantake(i, 1)
0001A0: 29 20 6C 69 6E 65 5B 69 2B 2B 5D 20 3D 20 27 40 ) line[i++] = '@
0001B0: 27 3B 09 2F 2A 20 69 6E 73 65 72 74 20 6C 61 62 ';./* insert lab
0001C0: 65 6C 20 70 72 65 66 69 78 20 2A 2F 0D 0A 20 20 el prefix */..
0001D0: 20 20 20 20 69 66 28 69 73 64 69 67 69 74 28 2A if(isdigit(*
0001E0: 2B 2B 63 70 29 29 20 7B 09 09 09 2F 2A 20 77 68 ++cp)) {.../* wh
0001F0: 69 63 68 20 6F 6E 65 3F 20 2A 2F 0D 0A 20 20 20 ich one? */..
Size : 512 (Real : 512)
000000: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 64 . }..../*..** d
000010: 65 74 65 72 6D 69 6E 65 20 69 66 20 61 6E 20 61 etermine if an a
000020: 73 73 65 6D 62 6C 65 72 20 69 6E 73 74 72 75 63 ssembler instruc
000030: 74 69 6F 6E 0D 0A 2A 2F 0D 0A 61 69 66 69 6E 64 tion..*/..aifind
000040: 28 29 20 7B 0D 0A 20 20 63 68 61 72 20 2A 63 70 () {.. char *cp
000050: 3B 20 63 70 20 3D 20 6C 70 3B 0D 0A 20 20 77 68 ; cp = lp;.. wh
000060: 69 6C 65 28 69 73 67 72 61 70 68 28 2A 6C 70 29 ile(isgraph(*lp)
000070: 29 20 2B 2B 6C 70 3B 0D 0A 20 20 77 68 69 6C 65 ) ++lp;.. while
000080: 28 69 73 73 70 61 63 65 28 2A 6C 70 29 29 20 2B (isspace(*lp)) +
000090: 2B 6C 70 3B 0D 0A 20 20 20 20 20 20 20 69 66 28 +lp;.. if(
0000A0: 66 6C 64 63 6D 70 28 63 70 2C 20 22 44 57 22 29 fldcmp(cp, "DW")
0000B0: 20 20 3D 3D 20 30 29 20 72 65 74 75 72 6E 20 28 == 0) return (
0000C0: 44 57 29 3B 0D 0A 20 20 65 6C 73 65 20 69 66 28 DW);.. else if(
0000D0: 66 6C 64 63 6D 70 28 63 70 2C 20 22 44 42 22 29 fldcmp(cp, "DB")
0000E0: 20 20 3D 3D 20 30 29 20 72 65 74 75 72 6E 20 28 == 0) return (
0000F0: 44 42 29 3B 0D 0A 20 20 65 6C 73 65 20 69 66 28 DB);.. else if(
000100: 66 6C 64 63 6D 70 28 63 70 2C 20 22 44 53 22 29 fldcmp(cp, "DS")
000110: 20 20 3D 3D 20 30 29 20 72 65 74 75 72 6E 20 28 == 0) return (
000120: 44 53 29 3B 0D 0A 20 20 65 6C 73 65 20 69 66 28 DS);.. else if(
000130: 66 6C 64 63 6D 70 28 63 70 2C 20 22 45 58 54 22 fldcmp(cp, "EXT"
000140: 29 20 3D 3D 20 30 29 20 72 65 74 75 72 6E 20 28 ) == 0) return (
000150: 45 58 29 3B 0D 0A 20 20 65 6C 73 65 20 69 66 28 EX);.. else if(
000160: 66 6C 64 63 6D 70 28 63 70 2C 20 22 53 45 54 22 fldcmp(cp, "SET"
000170: 29 20 3D 3D 20 30 29 20 72 65 74 75 72 6E 20 28 ) == 0) return (
000180: 53 45 54 29 3B 0D 0A 20 20 65 6C 73 65 20 69 66 SET);.. else if
000190: 28 66 6C 64 63 6D 70 28 63 70 2C 20 22 45 51 55 (fldcmp(cp, "EQU
0001A0: 22 29 20 3D 3D 20 30 29 20 72 65 74 75 72 6E 20 ") == 0) return
0001B0: 28 45 51 55 29 3B 0D 0A 20 20 65 6C 73 65 20 69 (EQU);.. else i
0001C0: 66 28 66 6C 64 63 6D 70 28 63 70 2C 20 22 4F 52 f(fldcmp(cp, "OR
0001D0: 47 22 29 20 3D 3D 20 30 29 20 72 65 74 75 72 6E G") == 0) return
0001E0: 20 28 4F 52 47 29 3B 0D 0A 20 20 65 6C 73 65 20 (ORG);.. else
0001F0: 69 66 28 66 6C 64 63 6D 70 28 63 70 2C 20 22 45 if(fldcmp(cp, "E
Size : 512 (Real : 512)
000000: 20 20 20 20 20 6E 64 78 20 3D 20 2A 63 70 2B 2B ndx = *cp++
000010: 20 2D 20 27 30 27 3B 0D 0A 20 20 20 20 20 20 20 - '0';..
000020: 20 69 66 28 21 6D 6C 6E 62 72 5B 6E 64 78 5D 29 if(!mlnbr[ndx])
000030: 20 6D 6C 6E 62 72 5B 6E 64 78 5D 20 3D 20 2B 2B mlnbr[ndx] = ++
000040: 6D 6C 6E 65 78 74 3B 09 2F 2A 20 6E 65 65 64 20 mlnext;./* need
000050: 6E 65 77 20 6C 61 62 65 6C 20 6E 75 6D 62 65 72 new label number
000060: 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 69 66 ? */.. if
000070: 28 63 61 6E 74 61 6B 65 28 69 2C 20 35 29 29 20 (cantake(i, 5))
000080: 7B 0D 0A 20 20 20 20 20 20 20 20 20 20 6C 65 66 {.. lef
000090: 74 28 69 74 6F 75 28 6D 6C 6E 62 72 5B 6E 64 78 t(itou(mlnbr[ndx
0000A0: 5D 2C 20 6C 69 6E 65 20 2B 20 69 2C 20 35 29 29 ], line + i, 5))
0000B0: 3B 09 2F 2A 20 69 6E 73 65 72 74 20 6C 61 62 65 ;./* insert labe
0000C0: 6C 20 6E 75 6D 62 65 72 20 2A 2F 0D 0A 20 20 20 l number */..
0000D0: 20 20 20 20 20 20 20 77 68 69 6C 65 28 6C 69 6E while(lin
0000E0: 65 5B 69 5D 29 20 2B 2B 69 3B 09 09 09 2F 2A 20 e[i]) ++i;.../*
0000F0: 62 79 70 61 73 73 20 6C 61 62 65 6C 20 6E 75 6D bypass label num
000100: 62 65 72 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 ber */..
000110: 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 63 6F 6E }.. con
000120: 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 20 20 20 tinue;..
000130: 7D 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 }.. }..
000140: 69 66 28 63 61 6E 74 61 6B 65 28 69 2C 20 31 29 if(cantake(i, 1)
000150: 29 20 6C 69 6E 65 5B 69 2B 2B 5D 20 3D 20 2A 63 ) line[i++] = *c
000160: 70 2B 2B 3B 0D 0A 20 20 20 20 65 6C 73 65 20 7B p++;.. else {
000170: 0D 0A 20 20 20 20 20 20 6C 69 6E 65 5B 69 2B 2B .. line[i++
000180: 5D 20 3D 20 27 5C 6E 27 3B 0D 0A 20 20 20 20 20 ] = '\n';..
000190: 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 20 20 7D break;.. }
0001A0: 0D 0A 20 20 20 20 7D 20 77 68 69 6C 65 28 2A 63 .. } while(*c
0001B0: 70 29 3B 0D 0A 20 20 6C 69 6E 65 5B 69 5D 20 3D p);.. line[i] =
0001C0: 20 4E 55 4C 4C 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F NULL;.. }..../
0001D0: 2A 0D 0A 2A 2A 20 61 62 6F 72 74 20 77 69 74 68 *..** abort with
0001E0: 20 61 20 75 73 61 67 65 20 6D 65 73 73 61 67 65 a usage message
0001F0: 0D 0A 2A 2F 0D 0A 75 73 61 67 65 28 29 20 7B 0D ..*/..usage() {.
Size : 512 (Real : 512)
000000: 4E 44 22 29 20 3D 3D 20 30 29 20 72 65 74 75 72 ND") == 0) retur
000010: 6E 20 28 45 4E 44 29 3B 0D 0A 20 20 72 65 74 75 n (END);.. retu
000020: 72 6E 20 28 45 52 52 29 3B 0D 0A 20 20 7D 0D 0A rn (ERR);.. }..
000030: 0D 0A 2F 2A 0D 0A 2A 2A 20 62 65 67 69 6E 20 61 ../*..** begin a
000040: 20 6C 69 6E 65 20 69 6E 20 74 68 65 20 6C 69 73 line in the lis
000050: 74 69 6E 67 0D 0A 2A 2F 0D 0A 62 65 67 6C 69 6E ting..*/..beglin
000060: 65 28 29 20 7B 0D 0A 20 20 63 68 61 72 20 73 74 e() {.. char st
000070: 72 5B 36 5D 3B 0D 0A 20 20 69 66 28 70 61 73 73 r[6];.. if(pass
000080: 20 3D 3D 20 32 20 26 26 20 6C 69 73 74 29 20 7B == 2 && list) {
000090: 0D 0A 20 20 20 20 69 66 28 62 65 67 70 61 67 65 .. if(begpage
0000A0: 28 29 29 20 7B 0D 0A 20 20 20 20 20 20 70 75 74 ()) {.. put
0000B0: 73 28 22 6C 69 6E 65 20 20 6C 6F 63 20 2D 2D 2D s("line loc ---
0000C0: 2D 6F 62 6A 65 63 74 2D 2D 2D 2D 20 20 73 6F 75 -object---- sou
0000D0: 72 63 65 22 29 3B 20 70 75 74 73 28 22 22 29 3B rce"); puts("");
0000E0: 0D 0A 20 20 20 20 20 20 6C 6C 69 6E 65 20 2B 3D .. lline +=
0000F0: 20 32 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 2;.. }..
000100: 20 20 69 74 6F 75 28 6C 69 6E 2C 20 73 74 72 2C itou(lin, str,
000110: 20 35 29 3B 20 66 70 75 74 73 28 73 74 72 2C 20 5); fputs(str,
000120: 73 74 64 6F 75 74 29 3B 0D 0A 20 20 20 20 69 74 stdout);.. it
000130: 6F 78 28 6C 6F 63 2C 20 73 74 72 2C 20 36 29 3B ox(loc, str, 6);
000140: 20 66 70 75 74 73 28 73 74 72 2C 20 73 74 64 6F fputs(str, stdo
000150: 75 74 29 3B 0D 0A 20 20 20 20 70 75 74 63 68 61 ut);.. putcha
000160: 72 28 27 20 27 29 3B 20 63 63 6E 74 20 3D 20 30 r(' '); ccnt = 0
000170: 3B 20 2B 2B 6C 6C 69 6E 65 3B 0D 0A 20 20 20 20 ; ++lline;..
000180: 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A }.. }..../*..**
000190: 20 62 65 67 69 6E 20 61 20 70 61 67 65 3F 0D 0A begin a page?..
0001A0: 2A 2F 0D 0A 62 65 67 70 61 67 65 28 29 20 7B 0D */..begpage() {.
0001B0: 0A 20 20 63 68 61 72 20 73 74 72 5B 34 5D 3B 0D . char str[4];.
0001C0: 0A 20 20 69 66 28 6C 6C 69 6E 65 20 3E 3D 20 35 . if(lline >= 5
0001D0: 38 29 20 7B 0D 0A 20 20 20 20 6C 6C 69 6E 65 20 8) {.. lline
0001E0: 3D 20 32 3B 0D 0A 20 20 20 20 2B 2B 6C 70 61 67 = 2;.. ++lpag
0001F0: 65 3B 0D 0A 20 20 20 20 69 66 28 6C 70 61 67 65 e;.. if(lpage
Size : 512 (Real : 512)
000000: 0A 20 20 65 72 72 6F 72 28 22 55 73 61 67 65 3A . error("Usage:
000010: 20 4D 41 43 20 5B 2D 4C 5D 20 5B 2D 4E 4D 5D 20 MAC [-L] [-NM]
000020: 5B 2D 50 5D 20 5B 2D 53 23 5D 20 5B 6F 62 6A 65 [-P] [-S#] [obje
000030: 63 74 5D 20 73 6F 75 72 63 65 2E 2E 2E 22 29 3B ct] source...");
000040: 0D 0A 20 20 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A .. }...........
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 7B 0D 0A 20 20 20 20 20 20 20 20 20 20 6C 65 66 {.. lef
000090: 74 28 69 74 6F 75 28 6D 6C 6E 62 72 5B 6E 64 78 t(itou(mlnbr[ndx
0000A0: 5D 2C 20 6C 69 6E 65 20 2B 20 69 2C 20 35 29 29 ], line + i, 5))
0000B0: 3B 09 2F 2A 20 69 6E 73 65 72 74 20 6C 61 62 65 ;./* insert labe
0000C0: 6C 20 6E 75 6D 62 65 72 20 2A 2F 0D 0A 20 20 20 l number */..
0000D0: 20 20 20 20 20 20 20 77 68 69 6C 65 28 6C 69 6E while(lin
0000E0: 65 5B 69 5D 29 20 2B 2B 69 3B 09 09 09 2F 2A 20 e[i]) ++i;.../*
0000F0: 62 79 70 61 73 73 20 6C 61 62 65 6C 20 6E 75 6D bypass label num
000100: 62 65 72 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 ber */..
000110: 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 63 6F 6E }.. con
000120: 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 20 20 20 tinue;..
000130: 7D 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 }.. }..
000140: 69 66 28 63 61 6E 74 61 6B 65 28 69 2C 20 31 29 if(cantake(i, 1)
000150: 29 20 6C 69 6E 65 5B 69 2B 2B 5D 20 3D 20 2A 63 ) line[i++] = *c
000160: 70 2B 2B 3B 0D 0A 20 20 20 20 65 6C 73 65 20 7B p++;.. else {
000170: 0D 0A 20 20 20 20 20 20 6C 69 6E 65 5B 69 2B 2B .. line[i++
000180: 5D 20 3D 20 27 5C 6E 27 3B 0D 0A 20 20 20 20 20 ] = '\n';..
000190: 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 20 20 7D break;.. }
0001A0: 0D 0A 20 20 20 20 7D 20 77 68 69 6C 65 28 2A 63 .. } while(*c
0001B0: 70 29 3B 0D 0A 20 20 6C 69 6E 65 5B 69 5D 20 3D p);.. line[i] =
0001C0: 20 4E 55 4C 4C 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F NULL;.. }..../
0001D0: 2A 0D 0A 2A 2A 20 61 62 6F 72 74 20 77 69 74 68 *..** abort with
0001E0: 20 61 20 75 73 61 67 65 20 6D 65 73 73 61 67 65 a usage message
0001F0: 0D 0A 2A 2F 0D 0A 75 73 61 67 65 28 29 20 7B 0D ..*/..usage() {.
Size : 512 (Real : 512)
000000: 20 3E 20 31 29 20 70 75 74 73 28 22 5C 6E 5C 6E > 1) puts("\n\n
000010: 5C 6E 5C 6E 5C 6E 5C 6E 5C 6E 22 29 3B 0D 0A 20 \n\n\n\n\n");..
000020: 20 20 20 66 70 75 74 73 28 22 66 69 6C 65 3A 20 fputs("file:
000030: 22 2C 20 73 74 64 6F 75 74 29 3B 20 66 70 75 74 ", stdout); fput
000040: 73 28 73 72 63 66 6E 2C 20 73 74 64 6F 75 74 29 s(srcfn, stdout)
000050: 3B 0D 0A 20 20 20 20 69 74 6F 75 28 6C 70 61 67 ;.. itou(lpag
000060: 65 2C 20 73 74 72 2C 20 34 29 3B 0D 0A 20 20 20 e, str, 4);..
000070: 20 66 70 75 74 73 28 22 20 20 20 70 61 67 65 3A fputs(" page:
000080: 20 22 2C 20 73 74 64 6F 75 74 29 3B 20 70 75 74 ", stdout); put
000090: 73 28 73 74 72 29 3B 20 70 75 74 73 28 22 22 29 s(str); puts("")
0000A0: 3B 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 28 59 ;.. return (Y
0000B0: 45 53 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 72 ES);.. }.. r
0000C0: 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 7D eturn (NO);.. }
0000D0: 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 64 65 74 65 63 ..../*..** detec
0000E0: 74 20 61 73 73 65 6D 62 6C 65 72 20 69 6E 73 74 t assembler inst
0000F0: 72 75 63 74 69 6F 6E 20 61 6E 64 20 70 72 6F 63 ruction and proc
000100: 65 73 73 20 69 74 0D 0A 2A 2F 0D 0A 64 6F 61 73 ess it..*/..doas
000110: 6D 28 29 20 7B 0D 0A 20 20 69 6E 74 20 6A 3B 0D m() {.. int j;.
000120: 0A 20 20 69 66 28 61 74 65 6E 64 28 2A 6C 70 29 . if(atend(*lp)
000130: 20 26 26 20 28 21 73 74 73 79 6D 5B 30 5D 20 7C && (!stsym[0] |
000140: 7C 20 67 6F 74 6C 61 62 65 6C 29 29 20 72 65 74 | gotlabel)) ret
000150: 75 72 6E 3B 0D 0A 20 20 69 66 28 28 6A 20 3D 20 urn;.. if((j =
000160: 61 69 66 69 6E 64 28 29 29 20 3D 3D 20 45 52 52 aifind()) == ERR
000170: 29 20 7B 09 09 2F 2A 20 6C 70 20 2D 3E 20 32 6E ) {../* lp -> 2n
000180: 64 20 66 69 65 6C 64 20 6F 72 20 65 6E 64 20 2A d field or end *
000190: 2F 0D 0A 20 20 20 20 6C 70 20 3D 20 73 6B 69 70 /.. lp = skip
0001A0: 28 31 2C 20 6C 69 6E 65 29 3B 09 09 09 2F 2A 20 (1, line);.../*
0001B0: 6C 70 20 2D 3E 20 31 73 74 20 66 69 65 6C 64 20 lp -> 1st field
0001C0: 2A 2F 0D 0A 20 20 20 20 6A 20 3D 20 61 69 66 69 */.. j = aifi
0001D0: 6E 64 28 29 3B 0D 0A 20 20 20 20 73 74 73 79 6D nd();.. stsym
0001E0: 5B 30 5D 20 3D 20 4E 55 4C 4C 3B 09 09 09 2F 2A [0] = NULL;.../*
0001F0: 20 64 65 63 6C 61 72 65 20 6E 6F 20 73 79 6D 62 declare no symb
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 6F 6C 20 2A 2F 0D 0A 20 20 20 20 7D 0D 0A 20 20 ol */.. }..
000010: 73 77 69 74 63 68 28 6A 29 20 7B 0D 0A 20 20 20 switch(j) {..
000020: 20 63 61 73 65 20 20 45 58 3A 20 64 6F 65 78 74 case EX: doext
000030: 28 29 3B 20 20 20 20 20 20 20 72 65 74 75 72 6E (); return
000040: 3B 0D 0A 20 20 20 20 63 61 73 65 20 20 44 57 3A ;.. case DW:
000050: 20 64 6F 64 61 74 28 49 4E 54 53 5A 29 3B 20 20 dodat(INTSZ);
000060: 72 65 74 75 72 6E 3B 0D 0A 20 20 20 20 63 61 73 return;.. cas
000070: 65 20 20 44 42 3A 20 64 6F 64 61 74 28 31 29 3B e DB: dodat(1);
000080: 20 20 20 20 20 20 72 65 74 75 72 6E 3B 0D 0A 20 return;..
000090: 20 20 20 63 61 73 65 20 20 44 53 3A 20 64 6F 6C case DS: dol
0000A0: 6F 63 28 59 45 53 29 3B 20 20 20 20 72 65 74 75 oc(YES); retu
0000B0: 72 6E 3B 0D 0A 20 20 20 20 63 61 73 65 20 4F 52 rn;.. case OR
0000C0: 47 3A 20 64 6F 6C 6F 63 28 4E 4F 29 3B 20 20 20 G: doloc(NO);
0000D0: 20 20 72 65 74 75 72 6E 3B 0D 0A 20 20 20 20 63 return;.. c
0000E0: 61 73 65 20 53 45 54 3A 20 64 6F 76 61 6C 28 53 ase SET: doval(S
0000F0: 45 54 42 49 54 29 3B 20 72 65 74 75 72 6E 3B 0D ETBIT); return;.
000100: 0A 20 20 20 20 63 61 73 65 20 45 51 55 3A 20 64 . case EQU: d
000110: 6F 76 61 6C 28 30 29 3B 20 20 20 20 20 20 72 65 oval(0); re
000120: 74 75 72 6E 3B 0D 0A 20 20 20 20 63 61 73 65 20 turn;.. case
000130: 45 4E 44 3A 20 64 6F 65 6E 64 28 29 3B 20 20 20 END: doend();
000140: 20 20 20 20 72 65 74 75 72 6E 3B 0D 0A 20 20 20 return;..
000150: 20 7D 0D 0A 20 20 6F 70 72 65 72 72 28 29 3B 0D }.. oprerr();.
000160: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 64 . }..../*..** d
000170: 65 66 69 6E 65 20 64 61 74 61 20 28 44 42 20 26 efine data (DB &
000180: 20 44 57 29 0D 0A 2A 2F 0D 0A 64 6F 64 61 74 28 DW)..*/..dodat(
000190: 73 7A 29 20 69 6E 74 20 73 7A 3B 20 7B 0D 0A 20 sz) int sz; {..
0001A0: 20 69 6E 74 20 64 6C 6D 3B 0D 0A 20 20 77 68 69 int dlm;.. whi
0001B0: 6C 65 28 21 61 74 65 6E 64 28 2A 6C 70 29 29 20 le(!atend(*lp))
0001C0: 7B 0D 0A 20 20 20 20 69 66 28 69 73 73 70 61 63 {.. if(isspac
0001D0: 65 28 2A 6C 70 29 20 7C 7C 20 2A 6C 70 20 3D 3D e(*lp) || *lp ==
0001E0: 20 27 2C 27 29 20 2B 2B 6C 70 3B 0D 0A 20 20 20 ',') ++lp;..
0001F0: 20 65 6C 73 65 20 69 66 28 2A 6C 70 20 3D 3D 20 else if(*lp ==
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 4D 41 43 32 2E 43 20 2D 2D /*..** MAC2.C --
000010: 20 53 6D 61 6C 6C 2D 4D 61 63 20 41 73 73 65 6D Small-Mac Assem
000020: 62 6C 65 72 20 2D 2D 20 50 61 72 74 20 32 3A 20 bler -- Part 2:
000030: 50 61 73 73 20 31 20 61 6E 64 20 32 20 46 75 6E Pass 1 and 2 Fun
000040: 63 74 69 6F 6E 73 0D 0A 2A 2A 0D 0A 2A 2A 20 20 ctions..**..**
000050: 20 20 20 20 20 20 20 20 20 20 20 20 43 6F 70 79 Copy
000060: 72 69 67 68 74 20 31 39 38 35 20 4A 2E 20 45 2E right 1985 J. E.
000070: 20 48 65 6E 64 72 69 78 0D 0A 2A 2F 0D 0A 23 69 Hendrix..*/..#i
000080: 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E 68 3E nclude <stdio.h>
000090: 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6D 61 63 2E ..#include "mac.
0000A0: 68 22 0D 0A 23 69 6E 63 6C 75 64 65 20 22 72 65 h"..#include "re
0000B0: 6C 2E 68 22 0D 0A 23 69 6E 63 6C 75 64 65 20 22 l.h"..#include "
0000C0: 65 78 74 2E 68 22 0D 0A 23 64 65 66 69 6E 65 20 ext.h"..#define
0000D0: 4E 4F 43 43 41 52 47 43 0D 0A 0D 0A 65 78 74 65 NOCCARGC....exte
0000E0: 72 6E 20 69 6E 74 20 69 6C 6F 63 3B 09 09 09 2F rn int iloc;.../
0000F0: 2A 20 69 6E 73 74 72 20 6C 6F 63 61 74 69 6F 6E * instr location
000100: 20 2A 2F 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 61 64 */..../*..** ad
000110: 64 20 61 20 6E 65 77 20 73 79 6D 62 6F 6C 20 74 d a new symbol t
000120: 6F 20 74 68 65 20 73 79 6D 62 6F 6C 20 74 61 62 o the symbol tab
000130: 6C 65 0D 0A 2A 2F 0D 0A 61 64 64 73 79 6D 28 29 le..*/..addsym()
000140: 20 7B 0D 0A 20 20 63 68 61 72 20 2A 64 65 73 74 {.. char *dest
000150: 2C 20 2A 73 6F 75 72 3B 0D 0A 20 20 69 66 28 2A , *sour;.. if(*
000160: 73 74 70 74 72 29 20 65 72 72 6F 72 28 22 2D 20 stptr) error("-
000170: 53 79 6D 62 6F 6C 20 54 61 62 6C 65 20 4F 76 65 Symbol Table Ove
000180: 72 66 6C 6F 77 22 29 3B 0D 0A 20 20 73 74 70 5B rflow");.. stp[
000190: 73 74 6E 2B 2B 5D 20 3D 20 73 74 70 74 72 3B 09 stn++] = stptr;.
0001A0: 09 09 2F 2A 20 73 65 74 20 73 79 6D 62 6F 6C 20 ../* set symbol
0001B0: 70 6F 69 6E 74 65 72 20 2A 2F 0D 0A 20 20 64 65 pointer */.. de
0001C0: 73 74 20 3D 20 73 74 70 74 72 3B 20 73 6F 75 72 st = stptr; sour
0001D0: 20 3D 20 73 74 73 79 6D 3B 0D 0A 20 20 77 68 69 = stsym;.. whi
0001E0: 6C 65 28 2A 64 65 73 74 2B 2B 20 3D 20 74 6F 75 le(*dest++ = tou
0001F0: 70 70 65 72 28 2A 73 6F 75 72 2B 2B 29 29 3B 0D pper(*sour++));.
Size : 512 (Real : 512)
000000: 27 5C 22 27 20 7C 7C 20 2A 6C 70 20 3D 3D 20 27 '\"' || *lp == '
000010: 5C 27 27 29 20 7B 09 09 2F 2A 20 73 74 72 69 6E \'') {../* strin
000020: 67 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 64 6C 6D g? */.. dlm
000030: 20 3D 20 2A 6C 70 3B 0D 0A 20 20 20 20 20 20 77 = *lp;.. w
000040: 68 69 6C 65 28 21 61 74 65 6E 64 28 2A 2B 2B 6C hile(!atend(*++l
000050: 70 29 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 69 p)) {.. i
000060: 66 28 2A 6C 70 20 3D 3D 20 64 6C 6D 20 26 26 20 f(*lp == dlm &&
000070: 2A 2B 2B 6C 70 20 21 3D 20 64 6C 6D 29 20 62 72 *++lp != dlm) br
000080: 65 61 6B 3B 0D 0A 20 20 20 20 20 20 20 20 69 66 eak;.. if
000090: 28 70 61 73 73 20 3D 3D 20 32 29 20 7B 66 69 65 (pass == 2) {fie
0000A0: 6C 64 20 3D 20 2A 6C 70 3B 20 67 65 6E 61 62 73 ld = *lp; genabs
0000B0: 28 73 7A 29 3B 7D 0D 0A 20 20 20 20 20 20 20 20 (sz);}..
0000C0: 65 6C 73 65 20 6C 6F 63 20 2B 3D 20 73 7A 3B 0D else loc += sz;.
0000D0: 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 . }..
0000E0: 20 20 7D 0D 0A 20 20 20 20 65 6C 73 65 20 7B 0D }.. else {.
0000F0: 0A 20 20 20 20 20 20 65 70 20 3D 20 6C 70 3B 09 . ep = lp;.
000100: 09 09 09 09 09 2F 2A 20 65 78 70 72 65 73 73 69 ...../* expressi
000110: 6F 6E 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 65 78 on? */.. ex
000120: 70 72 28 26 66 69 65 6C 64 2C 20 26 74 79 70 65 pr(&field, &type
000130: 29 3B 0D 0A 20 20 20 20 20 20 6C 70 20 3D 20 65 );.. lp = e
000140: 70 3B 0D 0A 20 20 20 20 20 20 69 66 28 70 61 73 p;.. if(pas
000150: 73 20 3D 3D 20 32 29 20 7B 0D 0A 20 20 20 20 20 s == 2) {..
000160: 20 20 20 74 79 70 65 20 26 3D 20 52 45 4C 42 49 type &= RELBI
000170: 54 53 3B 0D 0A 20 20 20 20 20 20 20 20 69 66 28 TS;.. if(
000180: 74 79 70 65 20 3D 3D 20 41 42 53 29 20 67 65 6E type == ABS) gen
000190: 61 62 73 28 73 7A 29 3B 0D 0A 20 20 20 20 20 20 abs(sz);..
0001A0: 20 20 65 6C 73 65 20 7B 0D 0A 20 20 20 20 20 20 else {..
0001B0: 20 20 20 20 69 66 28 73 7A 20 3D 3D 20 31 29 20 if(sz == 1)
0001C0: 7B 72 65 6C 65 72 72 28 29 3B 20 67 65 6E 61 62 {relerr(); genab
0001D0: 73 28 31 29 3B 7D 09 2F 2A 20 31 2D 62 79 74 65 s(1);}./* 1-byte
0001E0: 20 72 65 6C 6F 63 61 74 61 62 6C 65 3F 20 2A 2F relocatable? */
0001F0: 0D 0A 20 20 20 20 20 20 20 20 20 20 65 6C 73 65 .. else
Size : 512 (Real : 512)
000000: 20 69 66 20 6E 6F 20 6C 61 62 65 6C 20 2A 2F 0D if no label */.
000010: 0A 20 20 69 66 28 66 6D 74 20 3D 20 66 69 6E 64 . if(fmt = find
000020: 28 63 70 29 29 20 7B 09 09 09 2F 2A 20 6D 61 63 (cp)) {.../* mac
000030: 68 69 6E 65 20 69 6E 73 74 72 75 63 74 69 6F 6E hine instruction
000040: 3F 20 2A 2F 0D 0A 20 20 20 20 66 6D 74 20 2B 3D ? */.. fmt +=
000050: 20 49 4E 54 53 5A 3B 09 09 09 2F 2A 20 6C 6F 63 INTSZ;.../* loc
000060: 61 74 65 20 66 6F 72 6D 61 74 20 62 79 74 65 20 ate format byte
000070: 69 6E 20 6D 69 74 20 2A 2F 0D 0A 20 20 20 20 69 in mit */.. i
000080: 66 28 70 61 73 73 20 3D 3D 20 32 29 20 64 6F 6D f(pass == 2) dom
000090: 61 63 32 28 66 6D 74 29 3B 09 09 2F 2A 20 64 6F ac2(fmt);../* do
0000A0: 20 70 61 73 73 20 32 20 70 72 6F 63 65 73 73 69 pass 2 processi
0000B0: 6E 67 20 2A 2F 0D 0A 20 20 20 20 65 6C 73 65 20 ng */.. else
0000C0: 6C 6F 63 20 2B 3D 20 28 2A 66 6D 74 20 26 20 33 loc += (*fmt & 3
0000D0: 29 20 2B 20 31 3B 09 09 2F 2A 20 62 75 6D 70 20 ) + 1;../* bump
0000E0: 6C 6F 63 61 74 69 6F 6E 20 63 6F 75 6E 74 65 72 location counter
0000F0: 20 2A 2F 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 */.. return
000100: 28 59 45 53 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 (YES);.. }..
000110: 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 09 09 09 return (NO);...
000120: 09 2F 2A 20 6D 61 79 20 62 65 20 70 73 65 75 64 ./* may be pseud
000130: 6F 2D 6F 70 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D 0A o-op */.. }....
000140: 2F 2A 0D 0A 2A 2A 20 64 65 74 65 63 74 20 6D 61 /*..** detect ma
000150: 63 68 69 6E 65 20 69 6E 73 74 72 75 63 74 69 6F chine instructio
000160: 6E 20 61 6E 64 20 67 65 6E 65 72 61 74 65 20 6F n and generate o
000170: 62 6A 65 63 74 20 63 6F 64 65 0D 0A 2A 2F 0D 0A bject code..*/..
000180: 64 6F 6D 61 63 32 28 70 74 72 29 20 63 68 61 72 domac2(ptr) char
000190: 20 2A 70 74 72 3B 20 7B 0D 0A 20 20 69 6E 74 20 *ptr; {.. int
0001A0: 66 6F 72 6D 61 74 2C 20 6C 65 6E 2C 20 69 6C 65 format, len, ile
0001B0: 6E 2C 20 70 63 72 2C 20 74 2C 20 76 2C 20 6F 70 n, pcr, t, v, op
0001C0: 63 6F 64 65 2C 20 68 6F 6C 64 69 6E 67 3B 0D 0A code, holding;..
0001D0: 20 20 66 6F 72 6D 61 74 20 3D 20 67 65 74 69 6E format = getin
0001E0: 74 28 70 74 72 2B 2B 29 3B 09 09 2F 2A 20 70 74 t(ptr++);../* pt
0001F0: 72 20 69 73 20 6E 6F 77 20 31 20 62 79 74 65 20 r is now 1 byte
Size : 512 (Real : 512)
000000: 20 67 65 6E 72 65 6C 28 29 3B 09 09 09 2F 2A 20 genrel();.../*
000010: 6F 75 74 70 75 74 20 72 65 6C 6F 63 61 74 61 62 output relocatab
000020: 6C 65 20 69 74 65 6D 20 2A 2F 0D 0A 20 20 20 20 le item */..
000030: 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20 }..
000040: 20 7D 0D 0A 20 20 20 20 20 20 65 6C 73 65 20 6C }.. else l
000050: 6F 63 20 2B 3D 20 73 7A 3B 0D 0A 20 20 20 20 20 oc += sz;..
000060: 20 7D 0D 0A 20 20 20 20 7D 0D 0A 20 20 7D 0D 0A }.. }.. }..
000070: 0D 0A 2F 2A 0D 0A 2A 2A 20 70 72 6F 63 65 73 73 ../*..** process
000080: 20 45 4E 44 20 69 6E 73 74 72 75 63 74 69 6F 6E END instruction
000090: 0D 0A 2A 2F 0D 0A 64 6F 65 6E 64 28 29 20 7B 0D ..*/..doend() {.
0000A0: 0A 20 20 65 6F 6D 20 3D 20 59 45 53 3B 09 09 09 . eom = YES;...
0000B0: 09 09 2F 2A 20 66 6C 61 67 20 65 6E 64 20 6F 66 ../* flag end of
0000C0: 20 6D 6F 64 75 6C 65 20 2A 2F 0D 0A 20 20 6F 6E module */.. on
0000D0: 65 78 70 72 28 29 3B 0D 0A 20 20 69 66 28 28 74 expr();.. if((t
0000E0: 79 70 65 20 26 20 52 45 4C 42 49 54 53 29 20 3D ype & RELBITS) =
0000F0: 3D 20 50 52 45 4C 29 20 7B 0D 0A 20 20 20 20 65 = PREL) {.. e
000100: 6E 64 74 20 3D 20 50 52 45 4C 3B 0D 0A 20 20 20 ndt = PREL;..
000110: 20 65 6E 64 76 20 3D 20 66 69 65 6C 64 3B 0D 0A endv = field;..
000120: 20 20 20 20 7D 0D 0A 20 20 65 6C 73 65 20 69 66 }.. else if
000130: 28 66 69 65 6C 64 29 20 72 65 6C 65 72 72 28 29 (field) relerr()
000140: 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A ;.. }..../*..**
000150: 20 64 65 66 69 6E 65 20 65 78 74 65 72 6E 61 6C define external
000160: 20 72 65 66 65 72 65 6E 63 65 20 28 45 58 54 29 reference (EXT)
000170: 0D 0A 2A 2F 0D 0A 64 6F 65 78 74 28 29 20 7B 0D ..*/..doext() {.
000180: 0A 20 20 77 68 69 6C 65 28 21 61 74 65 6E 64 28 . while(!atend(
000190: 2A 6C 70 29 29 20 7B 0D 0A 20 20 20 20 77 68 69 *lp)) {.. whi
0001A0: 6C 65 28 69 73 73 70 61 63 65 28 2A 6C 70 29 20 le(isspace(*lp)
0001B0: 7C 7C 20 2A 6C 70 20 3D 3D 20 27 2C 27 29 20 7B || *lp == ',') {
0001C0: 2B 2B 6C 70 3B 20 63 6F 6E 74 69 6E 75 65 3B 7D ++lp; continue;}
0001D0: 0D 0A 20 20 20 20 6C 70 20 3D 20 67 65 74 73 79 .. lp = getsy
0001E0: 6D 28 6C 70 2C 20 4E 4F 29 3B 09 09 09 2F 2A 20 m(lp, NO);.../*
0001F0: 66 65 74 63 68 20 74 68 65 20 6E 65 78 74 20 73 fetch the next s
Size : 512 (Real : 512)
000000: 65 61 72 6C 79 20 2A 2F 0D 0A 20 20 6C 65 6E 20 early */.. len
000010: 3D 20 69 6C 65 6E 20 3D 20 28 66 6F 72 6D 61 74 = ilen = (format
000020: 20 26 20 37 29 20 2B 20 31 3B 0D 0A 20 20 66 6F & 7) + 1;.. fo
000030: 72 6D 61 74 20 3E 3E 3D 20 33 3B 09 09 09 09 2F rmat >>= 3;..../
000040: 2A 20 66 69 72 73 74 20 63 6F 64 65 2F 65 78 70 * first code/exp
000050: 72 20 62 69 74 20 2A 2F 0D 0A 20 20 69 6C 6F 63 r bit */.. iloc
000060: 20 3D 20 6C 6F 63 3B 09 09 09 09 2F 2A 20 70 72 = loc;..../* pr
000070: 65 73 65 72 76 65 20 69 6E 73 74 72 20 6C 6F 63 eserve instr loc
000080: 20 66 6F 72 20 24 20 2A 2F 0D 0A 20 20 68 6F 6C for $ */.. hol
000090: 64 69 6E 67 20 3D 20 4E 4F 3B 0D 0A 20 20 65 70 ding = NO;.. ep
0000A0: 20 3D 20 65 78 70 62 75 66 3B 09 09 09 09 2F 2A = expbuf;..../*
0000B0: 20 73 65 74 20 65 70 20 66 6F 72 20 65 78 70 72 set ep for expr
0000C0: 28 29 20 2A 2F 0D 0A 20 20 77 68 69 6C 65 28 6C () */.. while(l
0000D0: 65 6E 2D 2D 20 3E 20 30 29 20 7B 09 09 09 2F 2A en-- > 0) {.../*
0000E0: 20 66 6F 72 20 65 61 63 68 20 62 79 74 65 20 6F for each byte o
0000F0: 66 20 63 6F 64 65 20 2A 2F 0D 0A 20 20 20 20 69 f code */.. i
000100: 66 28 66 6F 72 6D 61 74 20 26 20 31 29 20 7B 09 f(format & 1) {.
000110: 09 09 2F 2A 20 65 78 70 72 65 73 73 69 6F 6E 20 ../* expression
000120: 2A 2F 0D 0A 20 20 20 20 20 20 69 66 28 68 6F 6C */.. if(hol
000130: 64 69 6E 67 29 20 7B 0D 0A 20 20 20 20 20 20 20 ding) {..
000140: 20 68 6F 6C 64 69 6E 67 20 3D 20 4E 4F 3B 0D 0A holding = NO;..
000150: 20 20 20 20 20 20 20 20 66 69 65 6C 64 20 3D 20 field =
000160: 6F 70 63 6F 64 65 20 2B 20 6F 70 61 64 6A 3B 09 opcode + opadj;.
000170: 09 2F 2A 20 61 64 6A 75 73 74 20 6C 61 73 74 20 ./* adjust last
000180: 62 79 74 65 20 62 65 66 6F 72 65 20 65 78 70 72 byte before expr
000190: 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 6F 70 61 */.. opa
0001A0: 64 6A 20 3D 20 30 3B 0D 0A 20 20 20 20 20 20 20 dj = 0;..
0001B0: 20 67 65 6E 61 62 73 28 31 29 3B 0D 0A 20 20 20 genabs(1);..
0001C0: 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 65 78 }.. ex
0001D0: 70 72 28 26 76 2C 20 26 74 29 3B 09 09 09 2F 2A pr(&v, &t);.../*
0001E0: 20 65 76 61 6C 75 61 74 65 20 6E 65 78 74 20 65 evaluate next e
0001F0: 78 70 72 65 73 73 69 6F 6E 20 2A 2F 0D 0A 20 20 xpression */..
Size : 512 (Real : 512)
000000: 79 6D 62 6F 6C 20 2A 2F 0D 0A 20 20 20 20 69 66 ymbol */.. if
000010: 28 62 61 64 73 79 6D 29 20 7B 73 79 6D 65 72 72 (badsym) {symerr
000020: 28 29 3B 20 63 6F 6E 74 69 6E 75 65 3B 7D 09 09 (); continue;}..
000030: 2F 2A 20 73 79 6D 62 6F 6C 20 65 72 72 6F 72 20 /* symbol error
000040: 2A 2F 0D 0A 20 20 20 20 65 6C 73 65 20 69 66 28 */.. else if(
000050: 73 74 66 69 6E 64 28 29 29 20 7B 09 09 09 09 2F stfind()) {..../
000060: 2A 20 61 6C 72 65 61 64 79 20 69 6E 20 74 61 62 * already in tab
000070: 6C 65 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 69 66 le? */.. if
000080: 28 73 74 70 74 72 5B 53 54 46 4C 41 47 5D 20 26 (stptr[STFLAG] &
000090: 20 28 4C 41 42 42 49 54 7C 45 51 55 42 49 54 7C (LABBIT|EQUBIT|
0000A0: 53 45 54 42 49 54 29 29 20 7B 72 65 64 65 72 72 SETBIT)) {rederr
0000B0: 28 29 3B 20 63 6F 6E 74 69 6E 75 65 3B 7D 0D 0A (); continue;}..
0000C0: 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 65 6C 73 }.. els
0000D0: 65 20 61 64 64 73 79 6D 28 29 3B 09 09 09 09 2F e addsym();..../
0000E0: 2A 20 6E 6F 74 20 79 65 74 20 64 65 66 69 6E 65 * not yet define
0000F0: 64 20 2A 2F 0D 0A 20 20 20 20 69 66 28 70 61 73 d */.. if(pas
000100: 73 20 3D 3D 20 31 29 20 73 74 70 74 72 5B 53 54 s == 1) stptr[ST
000110: 46 4C 41 47 5D 20 7C 3D 20 58 52 42 49 54 7C 41 FLAG] |= XRBIT|A
000120: 42 53 3B 09 2F 2A 20 31 73 74 20 65 78 74 20 72 BS;./* 1st ext r
000130: 65 66 20 69 73 20 41 42 53 20 30 20 2A 2F 0D 0A ef is ABS 0 */..
000140: 20 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A }.. }..../*
000150: 0D 0A 2A 2A 20 64 65 74 65 63 74 20 6C 61 62 65 ..** detect labe
000160: 6C 20 61 6E 64 20 73 74 6F 77 20 69 74 20 61 77 l and stow it aw
000170: 61 79 0D 0A 2A 2F 0D 0A 64 6F 6C 61 62 65 6C 28 ay..*/..dolabel(
000180: 29 20 7B 0D 0A 20 20 6C 70 20 3D 20 73 6B 69 70 ) {.. lp = skip
000190: 28 31 2C 20 6C 69 6E 65 29 3B 09 09 09 2F 2A 20 (1, line);.../*
0001A0: 6C 6F 63 61 74 65 20 66 69 72 73 74 20 66 69 65 locate first fie
0001B0: 6C 64 20 2A 2F 0D 0A 20 20 6C 70 20 3D 20 67 65 ld */.. lp = ge
0001C0: 74 73 79 6D 28 6C 70 2C 20 4E 4F 29 3B 09 09 09 tsym(lp, NO);...
0001D0: 2F 2A 20 66 65 74 63 68 20 61 20 73 79 6D 62 6F /* fetch a symbo
0001E0: 6C 20 2A 2F 0D 0A 20 20 69 66 28 67 6F 74 6C 61 l */.. if(gotla
0001F0: 62 65 6C 29 20 7B 09 09 09 2F 2A 20 67 6F 74 20 bel) {.../* got
Size : 512 (Real : 512)
000000: 20 20 20 20 66 6F 72 6D 61 74 20 3E 3E 3D 20 31 format >>= 1
000010: 3B 09 09 09 2F 2A 20 70 63 20 72 65 6C 61 74 69 ;.../* pc relati
000020: 76 65 20 62 69 74 20 2A 2F 0D 0A 20 20 20 20 20 ve bit */..
000030: 20 69 66 28 66 6F 72 6D 61 74 20 26 20 31 29 20 if(format & 1)
000040: 7B 0D 0A 20 20 20 20 20 20 20 20 69 66 28 28 74 {.. if((t
000050: 20 26 20 52 45 4C 42 49 54 53 29 20 3D 3D 20 50 & RELBITS) == P
000060: 52 45 4C 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 REL) {..
000070: 20 20 76 20 2D 3D 20 69 6C 65 6E 20 2B 20 69 6C v -= ilen + il
000080: 6F 63 3B 09 09 2F 2A 20 63 61 6C 63 20 6F 66 66 oc;../* calc off
000090: 73 65 74 20 66 72 6F 6D 20 74 68 69 73 20 69 6E set from this in
0000A0: 73 74 72 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 str */..
0000B0: 20 20 74 20 3D 20 28 74 20 26 20 7E 52 45 4C 42 t = (t & ~RELB
0000C0: 49 54 53 29 20 2B 20 41 42 53 3B 09 2F 2A 20 6E ITS) + ABS;./* n
0000D0: 6F 77 20 61 62 73 2C 20 6D 61 79 20 62 65 20 31 ow abs, may be 1
0000E0: 20 62 79 74 65 20 2A 2F 0D 0A 20 20 20 20 20 20 byte */..
0000F0: 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 65 }.. e
000100: 6C 73 65 20 76 20 2D 3D 20 69 6C 65 6E 3B 09 09 lse v -= ilen;..
000110: 09 2F 2A 20 61 64 6A 75 73 74 20 6F 66 66 73 65 ./* adjust offse
000120: 74 20 66 72 6F 6D 20 74 68 69 73 20 69 6E 73 74 t from this inst
000130: 72 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 70 63 r */.. pc
000140: 72 20 3D 20 59 45 53 3B 09 09 09 2F 2A 20 72 65 r = YES;.../* re
000150: 6D 65 6D 62 65 72 20 69 74 27 73 20 70 63 20 72 member it's pc r
000160: 65 6C 61 74 69 76 65 20 2A 2F 0D 0A 20 20 20 20 elative */..
000170: 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 65 6C 73 }.. els
000180: 65 20 70 63 72 20 3D 20 4E 4F 3B 0D 0A 20 20 20 e pcr = NO;..
000190: 20 20 20 66 6F 72 6D 61 74 20 3E 3E 3D 20 31 3B format >>= 1;
0001A0: 09 09 09 2F 2A 20 73 69 7A 65 20 62 69 74 20 2A .../* size bit *
0001B0: 2F 0D 0A 20 20 20 20 20 20 69 66 28 66 6F 72 6D /.. if(form
0001C0: 61 74 20 26 20 31 29 20 7B 09 09 09 2F 2A 20 32 at & 1) {.../* 2
0001D0: 2D 62 79 74 65 20 65 78 70 72 20 2A 2F 0D 0A 20 -byte expr */..
0001E0: 20 20 20 20 20 20 20 69 66 28 74 20 26 20 58 52 if(t & XR
0001F0: 42 49 54 29 20 7B 09 09 09 2F 2A 20 65 78 74 20 BIT) {.../* ext
Size : 512 (Real : 512)
000000: 61 20 6C 61 62 65 6C 20 2A 2F 0D 0A 20 20 20 20 a label */..
000010: 69 66 28 62 61 64 73 79 6D 29 20 7B 6C 61 62 65 if(badsym) {labe
000020: 72 72 28 29 3B 20 72 65 74 75 72 6E 3B 7D 0D 0A rr(); return;}..
000030: 20 20 20 20 69 66 28 73 74 66 69 6E 64 28 29 29 if(stfind())
000040: 20 7B 09 09 09 2F 2A 20 61 6C 72 65 61 64 79 20 {.../* already
000050: 69 6E 20 74 61 62 6C 65 20 2A 2F 0D 0A 20 20 20 in table */..
000060: 20 20 20 69 66 28 70 61 73 73 20 3D 3D 20 31 29 if(pass == 1)
000070: 20 7B 0D 0A 20 20 20 20 20 20 20 20 69 66 28 73 {.. if(s
000080: 74 70 74 72 5B 53 54 46 4C 41 47 5D 20 26 20 28 tptr[STFLAG] & (
000090: 4C 41 42 42 49 54 7C 45 51 55 42 49 54 7C 53 45 LABBIT|EQUBIT|SE
0000A0: 54 42 49 54 7C 58 52 42 49 54 29 29 0D 0A 20 20 TBIT|XRBIT))..
0000B0: 20 20 20 20 20 20 20 20 7B 72 65 64 65 72 72 28 {rederr(
0000C0: 29 3B 20 72 65 74 75 72 6E 3B 7D 0D 0A 20 20 20 ); return;}..
0000D0: 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 65 6C }.. el
0000E0: 73 65 20 69 66 28 73 74 70 74 72 5B 53 54 46 4C se if(stptr[STFL
0000F0: 41 47 5D 20 26 20 28 4C 41 42 42 49 54 32 7C 45 AG] & (LABBIT2|E
000100: 51 55 42 49 54 7C 53 45 54 42 49 54 7C 58 52 42 QUBIT|SETBIT|XRB
000110: 49 54 29 29 0D 0A 20 20 20 20 20 20 20 20 7B 72 IT)).. {r
000120: 65 64 65 72 72 28 29 3B 20 72 65 74 75 72 6E 3B ederr(); return;
000130: 7D 0D 0A 20 20 20 20 20 20 65 6C 73 65 20 73 74 }.. else st
000140: 70 74 72 5B 53 54 46 4C 41 47 5D 20 7C 3D 20 4C ptr[STFLAG] |= L
000150: 41 42 42 49 54 32 3B 0D 0A 20 20 20 20 20 20 7D ABBIT2;.. }
000160: 0D 0A 20 20 20 20 65 6C 73 65 20 61 64 64 73 79 .. else addsy
000170: 6D 28 29 3B 09 09 09 2F 2A 20 6E 6F 74 20 64 65 m();.../* not de
000180: 66 69 6E 65 64 2C 20 73 74 6F 77 20 69 74 20 2A fined, stow it *
000190: 2F 0D 0A 20 20 20 20 69 66 28 70 61 73 73 20 3D /.. if(pass =
0001A0: 3D 20 31 29 20 7B 0D 0A 20 20 20 20 20 20 70 75 = 1) {.. pu
0001B0: 74 69 6E 74 28 73 74 70 74 72 20 2B 20 53 54 56 tint(stptr + STV
0001C0: 41 4C 55 45 2C 20 6C 6F 63 29 3B 09 2F 2A 20 76 ALUE, loc);./* v
0001D0: 61 6C 75 65 20 2A 2F 0D 0A 20 20 20 20 20 20 69 alue */.. i
0001E0: 66 28 67 6F 74 65 70 29 09 09 09 09 2F 2A 20 66 f(gotep)..../* f
0001F0: 6C 61 67 73 20 2A 2F 0D 0A 20 20 20 20 20 20 20 lags */..
Size : 512 (Real : 512)
000000: 72 65 66 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 ref */..
000010: 20 20 69 66 28 76 29 20 7B 09 09 09 2F 2A 20 6D if(v) {.../* m
000020: 75 73 74 20 6F 66 66 73 65 74 20 66 72 6F 6D 20 ust offset from
000030: 65 78 74 20 72 65 66 20 2A 2F 0D 0A 20 20 20 20 ext ref */..
000040: 20 20 20 20 20 20 20 20 69 74 65 6D 20 3D 20 58 item = X
000050: 50 4F 46 46 3B 0D 0A 20 20 20 20 20 20 20 20 20 POFF;..
000060: 20 20 20 74 79 70 65 20 3D 20 41 42 53 3B 0D 0A type = ABS;..
000070: 20 20 20 20 20 20 20 20 20 20 20 20 66 69 65 6C fiel
000080: 64 20 3D 20 76 3B 0D 0A 20 20 20 20 20 20 20 20 d = v;..
000090: 20 20 20 20 6C 69 73 74 63 6F 64 65 28 32 2C 20 listcode(2,
0000A0: 22 2B 20 22 29 3B 09 09 2F 2A 20 6C 69 73 74 20 "+ ");../* list
0000B0: 6F 66 66 73 65 74 20 2A 2F 0D 0A 20 20 20 20 20 offset */..
0000C0: 20 20 20 20 20 20 20 70 75 74 72 65 6C 28 29 3B putrel();
0000D0: 09 09 09 2F 2A 20 77 72 69 74 65 20 32 2D 62 79 .../* write 2-by
0000E0: 74 65 20 6F 66 66 73 65 74 20 2A 2F 0D 0A 20 20 te offset */..
0000F0: 20 20 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 }..
000100: 20 20 20 20 20 20 20 66 69 65 6C 64 20 3D 20 70 field = p
000110: 72 69 6F 72 3B 09 09 2F 2A 20 77 69 6C 6C 20 6C rior;../* will l
000120: 69 6E 6B 20 74 6F 20 70 72 69 6F 72 20 72 65 66 ink to prior ref
000130: 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 7D */.. }
000140: 0D 0A 20 20 20 20 20 20 20 20 65 6C 73 65 20 66 .. else f
000150: 69 65 6C 64 20 3D 20 76 3B 09 09 09 2F 2A 20 65 ield = v;.../* e
000160: 78 70 72 20 76 61 6C 75 65 20 2A 2F 0D 0A 20 20 xpr value */..
000170: 20 20 20 20 20 20 69 66 28 28 74 20 26 20 52 45 if((t & RE
000180: 4C 42 49 54 53 29 20 3D 3D 20 41 42 53 29 0D 0A LBITS) == ABS)..
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6E gen
0001A0: 61 62 73 28 32 29 3B 09 09 09 2F 2A 20 77 72 69 abs(2);.../* wri
0001B0: 74 65 20 32 20 61 62 73 6F 6C 75 74 65 20 62 79 te 2 absolute by
0001C0: 74 65 73 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 tes */..
0001D0: 65 6C 73 65 20 67 65 6E 72 65 6C 28 29 3B 09 09 else genrel();..
0001E0: 09 2F 2A 20 77 72 69 74 65 20 32 20 72 65 6C 6F ./* write 2 relo
0001F0: 63 61 74 61 62 6C 65 20 62 79 74 65 73 20 2A 2F catable bytes */
Size : 512 (Real : 512)
000000: 20 20 20 20 73 74 70 74 72 5B 53 54 46 4C 41 47 stptr[STFLAG
000010: 5D 20 3D 20 4C 41 42 42 49 54 7C 50 52 45 4C 7C ] = LABBIT|PREL|
000020: 45 50 42 49 54 3B 0D 0A 20 20 20 20 20 20 65 6C EPBIT;.. el
000030: 73 65 20 73 74 70 74 72 5B 53 54 46 4C 41 47 5D se stptr[STFLAG]
000040: 20 3D 20 4C 41 42 42 49 54 7C 50 52 45 4C 3B 0D = LABBIT|PREL;.
000050: 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 7D 0D . }.. }.
000060: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 73 . }..../*..** s
000070: 65 74 20 6C 6F 63 61 74 69 6F 6E 20 63 6F 75 6E et location coun
000080: 74 65 72 20 28 4F 52 47 2C 20 44 53 29 0D 0A 2A ter (ORG, DS)..*
000090: 2F 0D 0A 64 6F 6C 6F 63 28 62 75 6D 70 29 20 69 /..doloc(bump) i
0000A0: 6E 74 20 62 75 6D 70 3B 20 7B 0D 0A 20 20 69 66 nt bump; {.. if
0000B0: 28 6F 6E 65 78 70 72 28 29 29 20 7B 0D 0A 20 20 (onexpr()) {..
0000C0: 20 20 69 66 28 62 75 6D 70 29 20 66 69 65 6C 64 if(bump) field
0000D0: 20 3D 20 6C 6F 63 20 2B 3D 20 66 69 65 6C 64 3B = loc += field;
0000E0: 0D 0A 20 20 20 20 65 6C 73 65 20 69 66 28 6C 6F .. else if(lo
0000F0: 63 20 3C 3D 20 66 69 65 6C 64 29 20 6C 6F 63 20 c <= field) loc
000100: 3D 20 66 69 65 6C 64 3B 0D 0A 20 20 20 20 65 6C = field;.. el
000110: 73 65 20 62 61 6B 65 72 72 28 29 3B 0D 0A 20 20 se bakerr();..
000120: 20 20 69 66 28 70 61 73 73 20 3D 3D 20 32 29 20 if(pass == 2)
000130: 7B 69 74 65 6D 20 3D 20 53 45 54 4C 43 3B 20 74 {item = SETLC; t
000140: 79 70 65 20 3D 20 50 52 45 4C 3B 20 70 75 74 72 ype = PREL; putr
000150: 65 6C 28 29 3B 7D 0D 0A 20 20 20 20 7D 0D 0A 20 el();}.. }..
000160: 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 64 65 74 }..../*..** det
000170: 65 63 74 20 6D 61 63 68 69 6E 65 20 69 6E 73 74 ect machine inst
000180: 72 75 63 74 69 6F 6E 20 61 6E 64 20 70 72 6F 63 ruction and proc
000190: 65 73 73 20 69 74 0D 0A 2A 2F 0D 0A 64 6F 6D 61 ess it..*/..doma
0001A0: 63 68 28 29 20 7B 0D 0A 20 20 63 68 61 72 20 2A ch() {.. char *
0001B0: 66 6D 74 2C 20 2A 63 70 3B 0D 0A 20 20 69 66 28 fmt, *cp;.. if(
0001C0: 67 6F 74 6C 61 62 65 6C 29 20 63 70 20 3D 20 6C gotlabel) cp = l
0001D0: 70 3B 0D 0A 20 20 65 6C 73 65 20 20 20 20 20 20 p;.. else
0001E0: 20 20 20 63 70 20 3D 20 73 6B 69 70 28 31 2C 20 cp = skip(1,
0001F0: 6C 69 6E 65 29 3B 09 2F 2A 20 62 61 63 6B 75 70 line);./* backup
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 20 2D 2D 6C 65 6E 3B .. --len;
000010: 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 .. }..
000020: 20 20 20 65 6C 73 65 20 7B 09 09 09 09 2F 2A 20 else {..../*
000030: 31 2D 62 79 74 65 20 65 78 70 72 20 2A 2F 0D 0A 1-byte expr */..
000040: 20 20 20 20 20 20 20 20 69 66 28 28 74 20 26 20 if((t &
000050: 52 45 4C 42 49 54 53 29 20 3D 3D 20 50 52 45 4C RELBITS) == PREL
000060: 29 0D 0A 20 20 20 20 20 20 20 20 20 20 72 65 6C ).. rel
000070: 65 72 72 28 29 3B 09 09 09 2F 2A 20 31 20 62 79 err();.../* 1 by
000080: 74 65 20 63 61 6E 27 74 20 62 65 20 72 65 6C 6F te can't be relo
000090: 63 61 74 61 62 6C 65 20 2A 2F 0D 0A 20 20 20 20 catable */..
0000A0: 20 20 20 20 69 66 28 70 63 72 20 26 26 20 28 76 if(pcr && (v
0000B0: 20 3E 20 31 32 37 20 7C 7C 20 76 20 3C 20 2D 31 > 127 || v < -1
0000C0: 32 38 29 29 0D 0A 20 20 20 20 20 20 20 20 20 20 28))..
0000D0: 72 6E 67 65 72 72 28 29 3B 09 09 09 2F 2A 20 72 rngerr();.../* r
0000E0: 61 6E 67 65 20 65 72 72 6F 72 20 2A 2F 0D 0A 20 ange error */..
0000F0: 20 20 20 20 20 20 20 66 69 65 6C 64 20 3D 20 76 field = v
000100: 3B 09 09 09 2F 2A 20 65 78 70 72 20 76 61 6C 75 ;.../* expr valu
000110: 65 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 67 65 e */.. ge
000120: 6E 61 62 73 28 31 29 3B 09 09 09 2F 2A 20 77 72 nabs(1);.../* wr
000130: 69 74 65 20 31 20 61 62 73 6F 6C 75 74 65 20 62 ite 1 absolute b
000140: 79 74 65 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 yte */..
000150: 7D 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 }.. }..
000160: 65 6C 73 65 20 7B 09 09 09 09 2F 2A 20 63 6F 64 else {..../* cod
000170: 65 20 62 79 74 65 20 2A 2F 0D 0A 20 20 20 20 20 e byte */..
000180: 20 69 66 28 68 6F 6C 64 69 6E 67 29 20 7B 0D 0A if(holding) {..
000190: 20 20 20 20 20 20 20 20 66 69 65 6C 64 20 3D 20 field =
0001A0: 6F 70 63 6F 64 65 3B 09 09 09 2F 2A 20 64 6F 6E opcode;.../* don
0001B0: 27 74 20 61 64 6A 75 73 74 2C 20 6E 6F 74 20 6C 't adjust, not l
0001C0: 61 73 74 20 62 79 74 65 20 2A 2F 0D 0A 20 20 20 ast byte */..
0001D0: 20 20 20 20 20 67 65 6E 61 62 73 28 31 29 3B 09 genabs(1);.
0001E0: 09 09 2F 2A 20 77 72 69 74 65 20 70 72 69 6F 72 ../* write prior
0001F0: 20 63 6F 64 65 20 62 79 74 65 20 2A 2F 0D 0A 20 code byte */..
Size : 512 (Real : 512)
000000: 5C 6E 22 29 3B 0D 0A 20 20 20 20 69 66 28 6C 65 \n");.. if(le
000010: 72 72 20 26 20 20 20 31 36 29 20 6F 75 74 65 72 rr & 16) outer
000020: 72 28 22 2D 20 42 61 64 20 4F 70 65 72 61 74 69 r("- Bad Operati
000030: 6F 6E 5C 6E 22 29 3B 0D 0A 20 20 20 20 69 66 28 on\n");.. if(
000040: 6C 65 72 72 20 26 20 20 20 33 32 29 20 6F 75 74 lerr & 32) out
000050: 65 72 72 28 22 2D 20 52 65 64 75 6E 64 61 6E 74 err("- Redundant
000060: 20 44 65 66 69 6E 69 74 69 6F 6E 5C 6E 22 29 3B Definition\n");
000070: 0D 0A 20 20 20 20 69 66 28 6C 65 72 72 20 26 20 .. if(lerr &
000080: 20 20 36 34 29 20 6F 75 74 65 72 72 28 22 2D 20 64) outerr("-
000090: 42 61 64 20 53 79 6D 62 6F 6C 5C 6E 22 29 3B 0D Bad Symbol\n");.
0000A0: 0A 20 20 20 20 69 66 28 6C 65 72 72 20 26 20 20 . if(lerr &
0000B0: 31 32 38 29 20 6F 75 74 65 72 72 28 22 2D 20 52 128) outerr("- R
0000C0: 65 6C 6F 63 61 74 69 6F 6E 20 45 72 72 6F 72 5C elocation Error\
0000D0: 6E 22 29 3B 0D 0A 20 20 20 20 69 66 28 6C 65 72 n");.. if(ler
0000E0: 72 20 26 20 20 32 35 36 29 20 6F 75 74 65 72 72 r & 256) outerr
0000F0: 28 22 2D 20 55 6E 64 65 66 69 6E 65 64 20 53 79 ("- Undefined Sy
000100: 6D 62 6F 6C 5C 6E 22 29 3B 0D 0A 20 20 20 20 69 mbol\n");.. i
000110: 66 28 6C 65 72 72 20 26 20 20 35 31 32 29 20 6F f(lerr & 512) o
000120: 75 74 65 72 72 28 22 2D 20 42 61 64 20 50 61 72 uterr("- Bad Par
000130: 61 6D 65 74 65 72 5C 6E 22 29 3B 0D 0A 20 20 20 ameter\n");..
000140: 20 69 66 28 6C 65 72 72 20 26 20 31 30 32 34 29 if(lerr & 1024)
000150: 20 6F 75 74 65 72 72 28 22 2D 20 52 61 6E 67 65 outerr("- Range
000160: 20 45 72 72 6F 72 5C 6E 22 29 3B 0D 0A 20 20 20 Error\n");..
000170: 20 69 66 28 70 61 75 73 65 29 20 77 61 69 74 28 if(pause) wait(
000180: 29 3B 0D 0A 20 20 20 20 6F 75 74 65 72 72 28 22 );.. outerr("
000190: 5C 6E 22 29 3B 0D 0A 20 20 20 20 65 72 72 20 3D \n");.. err =
0001A0: 20 59 45 53 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 YES;.. }..
0001B0: 7D 0D 0A 0D 0A 62 61 6B 65 72 72 28 29 20 7B 6C }....bakerr() {l
0001C0: 65 72 72 20 7C 3D 20 20 20 20 31 3B 7D 0D 0A 6E err |= 1;}..n
0001D0: 75 6D 65 72 72 28 29 20 7B 6C 65 72 72 20 7C 3D umerr() {lerr |=
0001E0: 20 20 20 20 32 3B 7D 0D 0A 65 78 70 65 72 72 28 2;}..experr(
0001F0: 29 20 7B 6C 65 72 72 20 7C 3D 20 20 20 20 34 3B ) {lerr |= 4;
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 }..
000010: 6F 70 63 6F 64 65 20 3D 20 2A 2B 2B 70 74 72 20 opcode = *++ptr
000020: 26 20 32 35 35 3B 09 09 2F 2A 20 68 6F 6C 64 20 & 255;../* hold
000030: 74 68 69 73 20 6F 6E 65 2C 20 6D 61 79 20 62 65 this one, may be
000040: 20 6D 6F 72 65 20 2A 2F 0D 0A 20 20 20 20 20 20 more */..
000050: 68 6F 6C 64 69 6E 67 20 3D 20 59 45 53 3B 0D 0A holding = YES;..
000060: 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 66 6F 72 }.. for
000070: 6D 61 74 20 3E 3E 3D 20 31 3B 0D 0A 20 20 20 20 mat >>= 1;..
000080: 7D 0D 0A 20 20 69 66 28 68 6F 6C 64 69 6E 67 29 }.. if(holding)
000090: 20 7B 0D 0A 20 20 20 20 66 69 65 6C 64 20 3D 20 {.. field =
0000A0: 6F 70 63 6F 64 65 20 2B 20 6F 70 61 64 6A 3B 0D opcode + opadj;.
0000B0: 0A 20 20 20 20 67 65 6E 61 62 73 28 31 29 3B 09 . genabs(1);.
0000C0: 09 09 09 2F 2A 20 77 72 69 74 65 20 6C 61 73 74 .../* write last
0000D0: 20 63 6F 64 65 20 62 79 74 65 20 2A 2F 0D 0A 20 code byte */..
0000E0: 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D }.. }..../*.
0000F0: 0A 2A 2A 20 64 65 66 69 6E 65 20 61 20 73 79 6D .** define a sym
000100: 62 6F 6C 20 76 61 6C 75 65 20 28 53 45 54 2C 20 bol value (SET,
000110: 45 51 55 29 0D 0A 2A 2F 0D 0A 64 6F 76 61 6C 28 EQU)..*/..doval(
000120: 73 65 74 29 20 69 6E 74 20 73 65 74 3B 20 7B 0D set) int set; {.
000130: 0A 20 20 63 68 61 72 20 2A 70 74 72 3B 20 69 6E . char *ptr; in
000140: 74 20 66 6F 75 6E 64 3B 0D 0A 20 20 69 66 28 21 t found;.. if(!
000150: 73 74 73 79 6D 5B 30 5D 20 7C 7C 20 62 61 64 73 stsym[0] || bads
000160: 79 6D 20 7C 7C 20 67 6F 74 6C 61 62 65 6C 29 20 ym || gotlabel)
000170: 7B 73 79 6D 65 72 72 28 29 3B 20 72 65 74 75 72 {symerr(); retur
000180: 6E 3B 7D 0D 0A 20 20 69 66 28 28 66 6F 75 6E 64 n;}.. if((found
000190: 20 3D 20 73 74 66 69 6E 64 28 29 29 20 3D 3D 20 = stfind()) ==
0001A0: 30 29 20 61 64 64 73 79 6D 28 29 3B 09 09 2F 2A 0) addsym();../*
0001B0: 20 6E 6F 74 20 64 65 66 69 6E 65 64 20 20 2A 2F not defined */
0001C0: 0D 0A 20 20 70 74 72 20 3D 20 73 74 70 74 72 3B .. ptr = stptr;
0001D0: 09 09 09 09 09 2F 2A 20 70 72 65 73 65 72 76 65 ...../* preserve
0001E0: 20 73 74 70 74 72 20 2A 2F 0D 0A 20 20 6F 6E 65 stptr */.. one
0001F0: 78 70 72 28 29 3B 09 09 09 09 09 2F 2A 20 65 76 xpr();...../* ev
Size : 512 (Real : 512)
000000: 7D 0D 0A 6C 61 62 65 72 72 28 29 20 7B 6C 65 72 }..laberr() {ler
000010: 72 20 7C 3D 20 20 20 20 38 3B 7D 0D 0A 6F 70 72 r |= 8;}..opr
000020: 65 72 72 28 29 20 7B 6C 65 72 72 20 7C 3D 20 20 err() {lerr |=
000030: 20 31 36 3B 7D 0D 0A 72 65 64 65 72 72 28 29 20 16;}..rederr()
000040: 7B 6C 65 72 72 20 7C 3D 20 20 20 33 32 3B 7D 0D {lerr |= 32;}.
000050: 0A 73 79 6D 65 72 72 28 29 20 7B 6C 65 72 72 20 .symerr() {lerr
000060: 7C 3D 20 20 20 36 34 3B 7D 0D 0A 72 65 6C 65 72 |= 64;}..reler
000070: 72 28 29 20 7B 6C 65 72 72 20 7C 3D 20 20 31 32 r() {lerr |= 12
000080: 38 3B 7D 0D 0A 75 6E 64 65 72 72 28 29 20 7B 6C 8;}..underr() {l
000090: 65 72 72 20 7C 3D 20 20 32 35 36 3B 7D 0D 0A 70 err |= 256;}..p
0000A0: 61 72 65 72 72 28 29 20 7B 6C 65 72 72 20 7C 3D arerr() {lerr |=
0000B0: 20 20 35 31 32 3B 7D 0D 0A 72 6E 67 65 72 72 28 512;}..rngerr(
0000C0: 29 20 7B 6C 65 72 72 20 7C 3D 20 31 30 32 34 3B ) {lerr |= 1024;
0000D0: 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 6C 69 73 74 }..../*..** list
0000E0: 20 61 20 63 6F 64 65 20 69 74 65 6D 0D 0A 2A 2F a code item..*/
0000F0: 0D 0A 6C 69 73 74 63 6F 64 65 28 73 7A 2C 20 73 ..listcode(sz, s
000100: 75 66 66 29 20 69 6E 74 20 73 7A 3B 20 63 68 61 uff) int sz; cha
000110: 72 20 73 75 66 66 5B 5D 3B 20 7B 0D 0A 20 20 69 r suff[]; {.. i
000120: 6E 74 20 69 3B 20 63 68 61 72 20 73 74 72 5B 33 nt i; char str[3
000130: 5D 3B 0D 0A 20 20 69 66 28 6C 69 73 74 29 20 7B ];.. if(list) {
000140: 0D 0A 20 20 20 20 69 20 3D 20 73 7A 20 2B 20 73 .. i = sz + s
000150: 7A 20 2B 20 73 74 72 6C 65 6E 28 73 75 66 66 29 z + strlen(suff)
000160: 3B 0D 0A 20 20 20 20 69 66 28 28 63 63 6E 74 20 ;.. if((ccnt
000170: 2B 20 69 29 20 3E 20 31 36 29 20 7B 65 6E 64 6C + i) > 16) {endl
000180: 69 6E 65 28 29 3B 20 62 65 67 6C 69 6E 65 28 29 ine(); begline()
000190: 3B 7D 20 0D 0A 20 20 20 20 77 68 69 6C 65 28 73 ;} .. while(s
0001A0: 7A 2D 2D 29 20 7B 0D 0A 20 20 20 20 20 20 69 66 z--) {.. if
0001B0: 28 73 7A 29 20 69 74 6F 78 28 28 66 69 65 6C 64 (sz) itox((field
0001C0: 20 3E 3E 20 38 29 20 26 20 32 35 35 2C 20 73 74 >> 8) & 255, st
0001D0: 72 2C 20 33 29 3B 0D 0A 20 20 20 20 20 20 65 6C r, 3);.. el
0001E0: 73 65 20 20 20 69 74 6F 78 28 66 69 65 6C 64 20 se itox(field
0001F0: 26 20 32 35 35 2C 20 73 74 72 2C 20 33 29 3B 0D & 255, str, 3);.
Size : 512 (Real : 512)
000000: 61 6C 75 61 74 65 20 65 78 70 72 65 73 73 69 6F aluate expressio
000010: 6E 20 2A 2F 0D 0A 20 20 69 66 28 70 61 73 73 20 n */.. if(pass
000020: 3D 3D 20 31 20 7C 7C 20 73 65 74 29 20 7B 0D 0A == 1 || set) {..
000030: 20 20 20 20 69 66 28 66 6F 75 6E 64 20 3D 3D 20 if(found ==
000040: 30 20 7C 7C 20 70 74 72 5B 53 54 46 4C 41 47 5D 0 || ptr[STFLAG]
000050: 20 26 20 73 65 74 29 20 7B 0D 0A 20 20 20 20 20 & set) {..
000060: 20 70 75 74 69 6E 74 28 70 74 72 20 2B 20 53 54 putint(ptr + ST
000070: 56 41 4C 55 45 2C 20 66 69 65 6C 64 29 3B 09 09 VALUE, field);..
000080: 2F 2A 20 76 61 6C 75 65 20 2A 2F 0D 0A 20 20 20 /* value */..
000090: 20 20 20 70 74 72 5B 53 54 46 4C 41 47 5D 20 3D ptr[STFLAG] =
0000A0: 20 73 65 74 7C 74 79 70 65 3B 09 09 09 2F 2A 20 set|type;.../*
0000B0: 66 6C 61 67 73 20 2A 2F 0D 0A 20 20 20 20 20 20 flags */..
0000C0: 7D 0D 0A 20 20 20 20 65 6C 73 65 20 72 65 64 65 }.. else rede
0000D0: 72 72 28 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 rr();.. }..
0000E0: 65 6C 73 65 20 69 66 28 70 74 72 5B 53 54 46 4C else if(ptr[STFL
0000F0: 41 47 5D 20 26 20 28 4C 41 42 42 49 54 7C 45 51 AG] & (LABBIT|EQ
000100: 55 42 49 54 7C 53 45 54 42 49 54 7C 58 52 42 49 UBIT|SETBIT|XRBI
000110: 54 29 29 20 72 65 64 65 72 72 28 29 3B 0D 0A 20 T)) rederr();..
000120: 20 65 6C 73 65 20 70 74 72 5B 53 54 46 4C 41 47 else ptr[STFLAG
000130: 5D 20 7C 3D 20 45 51 55 42 49 54 3B 0D 0A 20 20 ] |= EQUBIT;..
000140: 69 66 28 70 61 73 73 20 3D 3D 20 32 29 20 7B 09 if(pass == 2) {.
000150: 09 09 09 2F 2A 20 6C 69 73 74 20 76 61 6C 75 65 .../* list value
000160: 20 2A 2F 0D 0A 20 20 20 20 69 66 28 28 70 74 72 */.. if((ptr
000170: 5B 53 54 46 4C 41 47 5D 20 26 20 52 45 4C 42 49 [STFLAG] & RELBI
000180: 54 53 29 20 3D 3D 20 50 52 45 4C 29 0D 0A 20 20 TS) == PREL)..
000190: 20 20 20 20 20 20 20 6C 69 73 74 63 6F 64 65 28 listcode(
0001A0: 32 2C 20 22 27 20 3D 22 29 3B 0D 0A 20 20 20 20 2, "' =");..
0001B0: 65 6C 73 65 20 6C 69 73 74 63 6F 64 65 28 32 2C else listcode(2,
0001C0: 20 22 20 20 3D 22 29 3B 0D 0A 20 20 20 20 7D 0D " =");.. }.
0001D0: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 65 . }..../*..** e
0001E0: 6E 64 20 61 20 6C 69 6E 65 20 69 6E 20 74 68 65 nd a line in the
0001F0: 20 6C 69 73 74 69 6E 67 0D 0A 2A 2F 0D 0A 65 6E listing..*/..en
Size : 512 (Real : 512)
000000: 0A 20 20 20 20 20 20 69 66 28 2A 73 74 72 20 3D . if(*str =
000010: 3D 20 27 20 27 29 20 2A 73 74 72 20 3D 20 27 30 = ' ') *str = '0
000020: 27 3B 0D 0A 20 20 20 20 20 20 66 70 75 74 73 28 ';.. fputs(
000030: 73 74 72 2C 20 73 74 64 6F 75 74 29 3B 0D 0A 20 str, stdout);..
000040: 20 20 20 20 20 7D 0D 0A 20 20 20 20 66 70 75 74 }.. fput
000050: 73 28 73 75 66 66 2C 20 73 74 64 6F 75 74 29 3B s(suff, stdout);
000060: 0D 0A 20 20 20 20 63 63 6E 74 20 2B 3D 20 69 3B .. ccnt += i;
000070: 0D 0A 20 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0D 0A .. }.. }....
000080: 2F 2A 0D 0A 2A 2A 20 6F 75 74 70 75 74 20 61 6E /*..** output an
000090: 20 65 72 72 6F 72 20 6C 69 6E 65 0D 0A 2A 2F 0D error line..*/.
0000A0: 0A 6F 75 74 65 72 72 28 73 74 72 29 20 63 68 61 .outerr(str) cha
0000B0: 72 20 2A 73 74 72 3B 20 7B 0D 0A 20 20 62 65 67 r *str; {.. beg
0000C0: 70 61 67 65 28 29 3B 20 66 70 75 74 73 28 73 74 page(); fputs(st
0000D0: 72 2C 20 73 74 64 6F 75 74 29 3B 20 2B 2B 6C 6C r, stdout); ++ll
0000E0: 69 6E 65 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D ine;.. }..../*.
0000F0: 0A 2A 2A 20 72 65 71 75 69 72 65 20 6F 6E 65 20 .** require one
000100: 65 78 70 72 65 73 73 69 6F 6E 20 6F 6E 6C 79 0D expression only.
000110: 0A 2A 2F 0D 0A 6F 6E 65 78 70 72 28 29 20 7B 0D .*/..onexpr() {.
000120: 0A 20 20 65 70 20 3D 20 6C 70 3B 0D 0A 20 20 65 . ep = lp;.. e
000130: 78 70 72 28 26 66 69 65 6C 64 2C 20 26 74 79 70 xpr(&field, &typ
000140: 65 29 3B 0D 0A 20 20 69 66 28 61 74 65 6E 64 28 e);.. if(atend(
000150: 2A 65 70 29 29 20 72 65 74 75 72 6E 20 28 59 45 *ep)) return (YE
000160: 53 29 3B 0D 0A 20 20 65 78 70 65 72 72 28 29 3B S);.. experr();
000170: 0D 0A 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B .. return (NO);
000180: 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 .. }..../*..**
000190: 6F 75 74 70 75 74 20 65 6E 64 20 6F 66 20 70 72 output end of pr
0001A0: 6F 67 72 61 6D 20 61 6E 64 20 66 69 6C 65 0D 0A ogram and file..
0001B0: 2A 2F 0D 0A 70 75 74 65 6E 64 28 29 20 7B 0D 0A */..putend() {..
0001C0: 20 20 69 74 65 6D 20 3D 20 45 50 52 4F 47 3B 20 item = EPROG;
0001D0: 74 79 70 65 20 3D 20 65 6E 64 74 3B 20 66 69 65 type = endt; fie
0001E0: 6C 64 20 3D 20 65 6E 64 76 3B 20 70 75 74 72 65 ld = endv; putre
0001F0: 6C 28 29 3B 0D 0A 20 20 69 74 65 6D 20 3D 20 45 l();.. item = E
Size : 512 (Real : 512)
000000: 64 6C 69 6E 65 28 29 20 7B 0D 0A 20 20 63 68 61 dline() {.. cha
000010: 72 20 2A 63 70 3B 20 69 6E 74 20 63 6F 6C 3B 20 r *cp; int col;
000020: 63 6F 6C 20 3D 20 30 3B 0D 0A 20 20 69 66 28 70 col = 0;.. if(p
000030: 61 73 73 20 3D 3D 20 32 20 26 26 20 6C 69 73 74 ass == 2 && list
000040: 29 20 7B 0D 0A 20 20 20 20 69 66 28 70 61 72 74 ) {.. if(part
000050: 31 29 20 70 75 74 73 28 22 22 29 3B 0D 0A 20 20 1) puts("");..
000060: 20 20 65 6C 73 65 20 7B 0D 0A 20 20 20 20 20 20 else {..
000070: 70 61 72 74 31 20 3D 20 59 45 53 3B 0D 0A 20 20 part1 = YES;..
000080: 20 20 20 20 77 68 69 6C 65 28 63 63 6E 74 2B 2B while(ccnt++
000090: 20 3C 20 31 36 29 20 70 75 74 63 68 61 72 28 27 < 16) putchar('
0000A0: 20 27 29 3B 0D 0A 20 20 20 20 20 20 63 70 20 3D ');.. cp =
0000B0: 20 6C 69 6E 65 3B 0D 0A 20 20 20 20 20 20 77 68 line;.. wh
0000C0: 69 6C 65 28 2A 63 70 29 20 7B 0D 0A 20 20 20 20 ile(*cp) {..
0000D0: 20 20 20 20 69 66 28 2A 63 70 20 21 3D 20 27 5C if(*cp != '\
0000E0: 74 27 29 20 7B 2B 2B 63 6F 6C 3B 20 70 75 74 63 t') {++col; putc
0000F0: 68 61 72 28 2A 63 70 2B 2B 29 3B 7D 0D 0A 20 20 har(*cp++);}..
000100: 20 20 20 20 20 20 65 6C 73 65 20 7B 64 6F 20 70 else {do p
000110: 75 74 63 68 61 72 28 27 20 27 29 3B 20 77 68 69 utchar(' '); whi
000120: 6C 65 28 2B 2B 63 6F 6C 20 25 20 38 29 3B 20 2B le(++col % 8); +
000130: 2B 63 70 3B 7D 0D 0A 20 20 20 20 20 20 20 20 7D +cp;}.. }
000140: 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 7D .. }.. }
000150: 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 .. }..../*..**
000160: 67 65 6E 65 72 61 74 65 20 61 6E 20 61 62 73 6F generate an abso
000170: 6C 75 74 65 20 76 61 6C 75 65 20 6F 66 20 73 7A lute value of sz
000180: 20 62 79 74 65 73 0D 0A 2A 2F 0D 0A 67 65 6E 61 bytes..*/..gena
000190: 62 73 28 73 7A 29 20 69 6E 74 20 73 7A 3B 20 7B bs(sz) int sz; {
0001A0: 0D 0A 20 20 6C 69 73 74 63 6F 64 65 28 73 7A 2C .. listcode(sz,
0001B0: 20 22 20 22 29 3B 0D 0A 20 20 6C 6F 63 20 2B 3D " ");.. loc +=
0001C0: 20 73 7A 3B 09 09 09 09 2F 2A 20 62 75 6D 70 20 sz;..../* bump
0001D0: 6C 6F 63 61 74 69 6F 6E 20 63 6F 75 6E 74 65 72 location counter
0001E0: 20 2A 2F 0D 0A 20 20 69 74 65 6D 20 3D 20 41 42 */.. item = AB
0001F0: 53 3B 0D 0A 20 20 77 68 69 6C 65 28 73 7A 2D 2D S;.. while(sz--
Size : 512 (Real : 512)
000000: 46 49 4C 45 3B 20 74 79 70 65 20 3D 20 41 42 53 FILE; type = ABS
000010: 3B 20 20 66 69 65 6C 64 20 3D 20 30 3B 20 20 20 ; field = 0;
000020: 20 70 75 74 72 65 6C 28 29 3B 0D 0A 20 20 7D 0D putrel();.. }.
000030: 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 6F 75 74 70 75 74 .../*..** output
000040: 20 65 6E 74 72 79 20 70 6F 69 6E 74 73 0D 0A 2A entry points..*
000050: 2F 0D 0A 70 75 74 65 6E 74 28 29 20 7B 0D 0A 20 /..putent() {..
000060: 20 63 68 61 72 20 2A 63 70 3B 0D 0A 20 20 63 70 char *cp;.. cp
000070: 20 3D 20 73 74 3B 0D 0A 20 20 77 68 69 6C 65 28 = st;.. while(
000080: 63 70 20 3C 20 73 74 65 6E 64 29 20 7B 0D 0A 20 cp < stend) {..
000090: 20 20 20 70 6F 6C 6C 28 59 45 53 29 3B 0D 0A 20 poll(YES);..
0000A0: 20 20 20 69 66 28 2A 63 70 29 20 7B 0D 0A 20 20 if(*cp) {..
0000B0: 20 20 20 20 69 66 28 63 70 5B 53 54 46 4C 41 47 if(cp[STFLAG
0000C0: 5D 20 26 20 45 50 42 49 54 29 20 7B 09 09 2F 2A ] & EPBIT) {../*
0000D0: 20 65 6E 74 72 79 20 70 6F 69 6E 74 20 2A 2F 0D entry point */.
0000E0: 0A 20 20 20 20 20 20 20 20 69 74 65 6D 20 3D 20 . item =
0000F0: 45 4E 41 4D 45 3B 0D 0A 20 20 20 20 20 20 20 20 ENAME;..
000100: 73 74 72 6E 63 70 79 28 73 79 6D 62 6F 6C 2C 20 strncpy(symbol,
000110: 63 70 2C 20 4D 41 58 53 59 4D 20 2B 20 31 29 3B cp, MAXSYM + 1);
000120: 0D 0A 20 20 20 20 20 20 20 20 70 75 74 72 65 6C .. putrel
000130: 28 29 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A ();.. }..
000140: 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 63 70 20 }.. cp
000150: 2B 3D 20 53 54 45 4E 54 52 59 3B 0D 0A 20 20 20 += STENTRY;..
000160: 20 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A }.. }..../*..*
000170: 2A 20 6F 75 74 70 75 74 20 65 6E 74 72 79 20 70 * output entry p
000180: 6F 69 6E 74 20 6F 72 20 65 78 74 65 72 6E 61 6C oint or external
000190: 20 72 65 66 65 72 65 6E 63 65 0D 0A 2A 2F 0D 0A reference..*/..
0001A0: 70 75 74 65 78 28 63 70 2C 20 69 29 20 63 68 61 putex(cp, i) cha
0001B0: 72 20 2A 63 70 3B 20 69 6E 74 20 69 3B 20 7B 0D r *cp; int i; {.
0001C0: 0A 20 20 69 74 65 6D 20 3D 20 69 3B 0D 0A 20 20 . item = i;..
0001D0: 74 79 70 65 20 3D 20 63 70 5B 53 54 46 4C 41 47 type = cp[STFLAG
0001E0: 5D 20 26 20 52 45 4C 42 49 54 53 3B 0D 0A 20 20 ] & RELBITS;..
0001F0: 66 69 65 6C 64 20 3D 20 67 65 74 69 6E 74 28 63 field = getint(c
Size : 512 (Real : 512)
000000: 29 20 7B 70 75 74 72 65 6C 28 29 3B 20 66 69 65 ) {putrel(); fie
000010: 6C 64 20 3E 3E 3D 20 38 3B 7D 0D 0A 20 20 7D 0D ld >>= 8;}.. }.
000020: 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 67 65 6E 65 72 61 .../*..** genera
000030: 74 65 20 61 20 72 65 6C 6F 63 61 74 61 62 6C 65 te a relocatable
000040: 20 69 74 65 6D 0D 0A 2A 2F 0D 0A 67 65 6E 72 65 item..*/..genre
000050: 6C 28 29 20 7B 0D 0A 20 20 6C 69 73 74 63 6F 64 l() {.. listcod
000060: 65 28 32 2C 20 22 27 20 22 29 3B 0D 0A 20 20 6C e(2, "' ");.. l
000070: 6F 63 20 2B 3D 20 32 3B 09 09 09 2F 2A 20 62 75 oc += 2;.../* bu
000080: 6D 70 20 6C 6F 63 61 74 69 6F 6E 20 63 6F 75 6E mp location coun
000090: 74 65 72 20 2A 2F 0D 0A 20 20 69 74 65 6D 20 3D ter */.. item =
0000A0: 20 50 52 45 4C 3B 0D 0A 20 20 70 75 74 72 65 6C PREL;.. putrel
0000B0: 28 29 3B 09 09 09 2F 2A 20 77 72 69 74 65 20 32 ();.../* write 2
0000C0: 2D 62 79 74 65 20 72 65 6C 6F 63 61 74 61 62 6C -byte relocatabl
0000D0: 65 20 69 74 65 6D 20 2A 2F 0D 0A 20 20 7D 0D 0A e item */.. }..
0000E0: 0D 0A 2F 2A 0D 0A 2A 2A 20 67 72 69 70 65 20 61 ../*..** gripe a
0000F0: 62 6F 75 74 20 65 72 72 6F 72 73 20 69 6E 20 61 bout errors in a
000100: 20 6C 69 6E 65 0D 0A 2A 2F 0D 0A 67 72 69 70 65 line..*/..gripe
000110: 28 29 20 7B 0D 0A 20 20 69 66 28 6C 65 72 72 29 () {.. if(lerr)
000120: 20 7B 0D 0A 20 20 20 20 69 66 28 21 6C 69 73 74 {.. if(!list
000130: 29 20 6F 75 74 65 72 72 28 6C 69 6E 65 29 3B 0D ) outerr(line);.
000140: 0A 20 20 20 20 69 66 28 6C 65 72 72 20 26 20 20 . if(lerr &
000150: 20 20 31 29 20 6F 75 74 65 72 72 28 22 2D 20 42 1) outerr("- B
000160: 61 63 6B 77 61 72 64 20 4D 6F 76 65 6D 65 6E 74 ackward Movement
000170: 5C 6E 22 29 3B 0D 0A 20 20 20 20 69 66 28 6C 65 \n");.. if(le
000180: 72 72 20 26 20 20 20 20 32 29 20 6F 75 74 65 72 rr & 2) outer
000190: 72 28 22 2D 20 42 61 64 20 4E 75 6D 62 65 72 5C r("- Bad Number\
0001A0: 6E 22 29 3B 0D 0A 20 20 20 20 69 66 28 6C 65 72 n");.. if(ler
0001B0: 72 20 26 20 20 20 20 34 29 20 6F 75 74 65 72 72 r & 4) outerr
0001C0: 28 22 2D 20 42 61 64 20 45 78 70 72 65 73 73 69 ("- Bad Expressi
0001D0: 6F 6E 5C 6E 22 29 3B 0D 0A 20 20 20 20 69 66 28 on\n");.. if(
0001E0: 6C 65 72 72 20 26 20 20 20 20 38 29 20 6F 75 74 lerr & 8) out
0001F0: 65 72 72 28 22 2D 20 42 61 64 20 4C 61 62 65 6C err("- Bad Label
Size : 512 (Real : 512)
000000: 70 20 2B 20 53 54 56 41 4C 55 45 29 3B 0D 0A 20 p + STVALUE);..
000010: 20 73 74 72 6E 63 70 79 28 73 79 6D 62 6F 6C 2C strncpy(symbol,
000020: 20 63 70 2C 20 4D 41 58 53 59 4D 20 2B 20 31 29 cp, MAXSYM + 1)
000030: 3B 0D 0A 20 20 70 75 74 72 65 6C 28 29 3B 0D 0A ;.. putrel();..
000040: 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 6F 75 }..../*..** ou
000050: 74 70 75 74 20 65 6E 74 20 70 6E 74 20 61 6E 64 tput ent pnt and
000060: 20 65 78 74 20 72 65 66 20 73 79 6D 62 6F 6C 73 ext ref symbols
000070: 0D 0A 2A 2F 0D 0A 70 75 74 65 78 73 28 29 20 7B ..*/..putexs() {
000080: 0D 0A 20 20 69 6E 74 20 69 3B 20 63 68 61 72 20 .. int i; char
000090: 2A 63 70 3B 0D 0A 20 20 63 63 6E 74 20 3D 20 30 *cp;.. ccnt = 0
0000A0: 3B 09 09 09 09 2F 2A 20 69 6E 69 74 20 66 6F 72 ;..../* init for
0000B0: 20 73 68 6F 77 28 29 20 2A 2F 0D 0A 20 20 73 68 show() */.. sh
0000C0: 65 6C 6C 28 30 2C 20 73 74 6E 20 2D 20 31 29 3B ell(0, stn - 1);
0000D0: 09 09 09 2F 2A 20 73 6F 72 74 20 74 68 65 20 73 .../* sort the s
0000E0: 79 6D 62 6F 6C 73 20 2A 2F 0D 0A 20 20 69 66 28 ymbols */.. if(
0000F0: 6C 69 73 74 20 26 26 20 21 62 65 67 70 61 67 65 list && !begpage
000100: 28 29 29 20 7B 2B 2B 6C 6C 69 6E 65 3B 20 70 75 ()) {++lline; pu
000110: 74 73 28 22 22 29 3B 7D 0D 0A 20 20 66 6F 72 28 ts("");}.. for(
000120: 69 20 3D 20 30 3B 20 69 20 3C 20 73 74 6E 3B 20 i = 0; i < stn;
000130: 2B 2B 69 29 20 7B 0D 0A 20 20 20 20 70 6F 6C 6C ++i) {.. poll
000140: 28 59 45 53 29 3B 0D 0A 20 20 20 20 63 70 20 3D (YES);.. cp =
000150: 20 73 74 70 5B 69 5D 3B 0D 0A 20 20 20 20 69 66 stp[i];.. if
000160: 28 6C 69 73 74 29 20 73 68 6F 77 28 63 70 29 3B (list) show(cp);
000170: 0D 0A 20 20 20 20 69 66 28 63 70 5B 53 54 46 4C .. if(cp[STFL
000180: 41 47 5D 20 26 20 58 52 42 49 54 29 20 70 75 74 AG] & XRBIT) put
000190: 65 78 28 63 70 2C 20 58 43 48 41 49 4E 29 3B 0D ex(cp, XCHAIN);.
0001A0: 0A 20 20 20 20 69 66 28 63 70 5B 53 54 46 4C 41 . if(cp[STFLA
0001B0: 47 5D 20 26 20 45 50 42 49 54 29 20 70 75 74 65 G] & EPBIT) pute
0001C0: 78 28 63 70 2C 20 45 50 4F 49 4E 54 29 3B 0D 0A x(cp, EPOINT);..
0001D0: 20 20 20 20 7D 0D 0A 20 20 70 75 74 73 28 22 22 }.. puts(""
0001E0: 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A );.. }..../*..*
0001F0: 2A 20 6F 75 74 70 75 74 20 6D 6F 64 75 6C 65 20 * output module
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 4D 41 43 33 2E 43 20 2D 2D /*..** MAC3.C --
000010: 20 53 6D 61 6C 6C 2D 4D 61 63 20 41 73 73 65 6D Small-Mac Assem
000020: 62 6C 65 72 20 2D 2D 20 50 61 72 74 20 33 3A 20 bler -- Part 3:
000030: 45 78 70 72 65 73 73 69 6F 6E 20 41 6E 61 6C 79 Expression Analy
000040: 7A 65 72 0D 0A 2A 2A 0D 0A 2A 2A 20 20 20 20 20 zer..**..**
000050: 20 20 20 20 20 20 20 20 20 20 20 43 6F 70 79 72 Copyr
000060: 69 67 68 74 20 31 39 38 35 20 4A 2E 20 45 2E 20 ight 1985 J. E.
000070: 48 65 6E 64 72 69 78 0D 0A 2A 2A 0D 0A 2A 2F 0D Hendrix..**..*/.
000080: 0A 23 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F .#include <stdio
000090: 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6D .h>..#include "m
0000A0: 61 63 2E 68 22 0D 0A 23 69 6E 63 6C 75 64 65 20 ac.h"..#include
0000B0: 22 72 65 6C 2E 68 22 0D 0A 23 69 6E 63 6C 75 64 "rel.h"..#includ
0000C0: 65 20 22 65 78 74 2E 68 22 0D 0A 0D 0A 23 64 65 e "ext.h"....#de
0000D0: 66 69 6E 65 20 4E 4F 43 43 41 52 47 43 09 2F 2A fine NOCCARGC./*
0000E0: 20 6E 6F 20 61 72 67 75 6D 65 6E 74 20 63 6F 75 no argument cou
0000F0: 6E 74 20 70 61 73 73 69 6E 67 20 2A 2F 0D 0A 0D nt passing */...
000100: 0A 23 64 65 66 69 6E 65 20 4F 52 20 20 20 20 20 .#define OR
000110: 31 09 2F 2A 20 7C 20 20 2A 2F 0D 0A 23 64 65 66 1./* | */..#def
000120: 69 6E 65 20 58 4F 52 20 20 20 20 32 09 2F 2A 20 ine XOR 2./*
000130: 5E 20 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 41 ^ */..#define A
000140: 4E 44 20 20 20 20 33 09 2F 2A 20 26 20 20 2A 2F ND 3./* & */
000150: 0D 0A 23 64 65 66 69 6E 65 20 45 51 20 20 20 20 ..#define EQ
000160: 20 34 09 2F 2A 20 3D 3D 20 2A 2F 0D 0A 23 64 65 4./* == */..#de
000170: 66 69 6E 65 20 4E 45 20 20 20 20 20 35 09 2F 2A fine NE 5./*
000180: 20 21 3D 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 != */..#define
000190: 4C 45 20 20 20 20 20 36 09 2F 2A 20 3C 3D 20 2A LE 6./* <= *
0001A0: 2F 0D 0A 23 64 65 66 69 6E 65 20 47 45 20 20 20 /..#define GE
0001B0: 20 20 37 09 2F 2A 20 3E 3D 20 2A 2F 0D 0A 23 64 7./* >= */..#d
0001C0: 65 66 69 6E 65 20 4C 54 20 20 20 20 20 38 09 2F efine LT 8./
0001D0: 2A 20 3C 20 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 * < */..#define
0001E0: 20 47 54 20 20 20 20 20 39 09 2F 2A 20 3E 20 20 GT 9./* >
0001F0: 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 52 53 48 20 */..#define RSH
Size : 512 (Real : 512)
000000: 6E 61 6D 65 0D 0A 2A 2F 0D 0A 70 75 74 6E 61 6D name..*/..putnam
000010: 65 28 29 20 7B 0D 0A 20 20 69 6E 74 20 69 2C 20 e() {.. int i,
000020: 6A 3B 0D 0A 20 20 69 74 65 6D 20 3D 20 50 4E 41 j;.. item = PNA
000030: 4D 45 3B 0D 0A 20 20 69 66 28 6F 62 6A 66 6E 5B ME;.. if(objfn[
000040: 31 5D 20 3D 3D 20 27 3A 27 29 20 69 20 3D 20 32 1] == ':') i = 2
000050: 3B 20 65 6C 73 65 20 69 20 3D 20 30 3B 0D 0A 20 ; else i = 0;..
000060: 20 6A 20 3D 20 30 3B 0D 0A 20 20 77 68 69 6C 65 j = 0;.. while
000070: 28 6F 62 6A 66 6E 5B 69 5D 20 26 26 20 6F 62 6A (objfn[i] && obj
000080: 66 6E 5B 69 5D 20 21 3D 20 27 2E 27 20 26 26 20 fn[i] != '.' &&
000090: 6A 20 3C 20 4D 41 58 53 59 4D 29 0D 0A 20 20 20 j < MAXSYM)..
0000A0: 20 73 79 6D 62 6F 6C 5B 6A 2B 2B 5D 20 3D 20 6F symbol[j++] = o
0000B0: 62 6A 66 6E 5B 69 2B 2B 5D 3B 0D 0A 20 20 73 79 bjfn[i++];.. sy
0000C0: 6D 62 6F 6C 5B 6A 5D 20 3D 20 4E 55 4C 4C 3B 0D mbol[j] = NULL;.
0000D0: 0A 20 20 70 75 74 72 65 6C 28 29 3B 0D 0A 20 20 . putrel();..
0000E0: 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 6F 75 74 70 }..../*..** outp
0000F0: 75 74 20 70 72 6F 67 72 61 6D 20 73 69 7A 65 0D ut program size.
000100: 0A 2A 2F 0D 0A 70 75 74 73 7A 28 29 20 7B 0D 0A .*/..putsz() {..
000110: 20 20 69 74 65 6D 20 3D 20 50 53 49 5A 45 3B 0D item = PSIZE;.
000120: 0A 20 20 74 79 70 65 20 3D 20 50 52 45 4C 3B 0D . type = PREL;.
000130: 0A 20 20 66 69 65 6C 64 20 3D 20 6C 6F 63 3B 0D . field = loc;.
000140: 0A 20 20 70 75 74 72 65 6C 28 29 3B 0D 0A 20 20 . putrel();..
000150: 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 73 68 65 6C }..../*..** shel
000160: 6C 20 73 6F 72 74 20 74 68 65 20 73 79 6D 62 6F l sort the symbo
000170: 6C 73 0D 0A 2A 2F 0D 0A 73 68 65 6C 6C 28 6C 2C ls..*/..shell(l,
000180: 20 75 29 20 69 6E 74 20 6C 2C 20 75 3B 20 7B 0D u) int l, u; {.
000190: 0A 20 20 69 6E 74 20 67 61 70 2C 20 69 2C 20 6A . int gap, i, j
0001A0: 2C 20 6B 2C 20 6A 67 3B 0D 0A 20 20 67 61 70 20 , k, jg;.. gap
0001B0: 3D 20 28 75 20 2D 20 6C 20 2B 20 31 29 20 3E 3E = (u - l + 1) >>
0001C0: 20 31 3B 0D 0A 20 20 77 68 69 6C 65 28 67 61 70 1;.. while(gap
0001D0: 20 3E 20 30 29 20 7B 0D 0A 20 20 20 20 69 20 3D > 0) {.. i =
0001E0: 20 67 61 70 20 2B 20 6C 3B 0D 0A 20 20 20 20 77 gap + l;.. w
0001F0: 68 69 6C 65 28 69 20 3C 3D 20 75 29 20 7B 0D 0A hile(i <= u) {..
Size : 512 (Real : 512)
000000: 20 20 31 30 09 2F 2A 20 3E 3E 20 2A 2F 0D 0A 23 10./* >> */..#
000010: 64 65 66 69 6E 65 20 4C 53 48 20 20 20 31 31 09 define LSH 11.
000020: 2F 2A 20 3C 3C 20 2A 2F 0D 0A 23 64 65 66 69 6E /* << */..#defin
000030: 65 20 50 4C 55 53 20 20 31 32 09 2F 2A 20 2B 20 e PLUS 12./* +
000040: 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4D 49 4E */..#define MIN
000050: 55 53 20 31 33 09 2F 2A 20 2D 20 20 2A 2F 0D 0A US 13./* - */..
000060: 23 64 65 66 69 6E 65 20 4D 55 4C 54 20 20 31 34 #define MULT 14
000070: 09 2F 2A 20 2A 20 20 2A 2F 0D 0A 23 64 65 66 69 ./* * */..#defi
000080: 6E 65 20 44 49 56 20 20 20 31 35 09 2F 2A 20 2F ne DIV 15./* /
000090: 20 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4D 4F */..#define MO
0000A0: 44 20 20 20 31 36 09 2F 2A 20 25 20 20 2A 2F 0D D 16./* % */.
0000B0: 0A 23 64 65 66 69 6E 65 20 43 50 4C 20 20 20 31 .#define CPL 1
0000C0: 37 09 2F 2A 20 7E 20 20 2A 2F 0D 0A 23 64 65 66 7./* ~ */..#def
0000D0: 69 6E 65 20 4E 4F 54 20 20 20 31 38 09 2F 2A 20 ine NOT 18./*
0000E0: 21 20 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4C ! */..#define L
0000F0: 50 4E 20 20 20 31 39 09 2F 2A 20 28 20 20 2A 2F PN 19./* ( */
000100: 0D 0A 23 64 65 66 69 6E 65 20 52 50 4E 20 20 20 ..#define RPN
000110: 32 30 09 2F 2A 20 29 20 20 2A 2F 0D 0A 23 64 65 20./* ) */..#de
000120: 66 69 6E 65 20 4C 4F 43 20 20 20 32 31 09 2F 2A fine LOC 21./*
000130: 20 24 20 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 $ */..#define
000140: 53 59 4D 20 20 20 32 32 09 2F 2A 20 73 79 6D 62 SYM 22./* symb
000150: 6F 6C 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4E ol */..#define N
000160: 55 4D 20 20 20 32 33 09 2F 2A 20 6E 75 6D 62 65 UM 23./* numbe
000170: 72 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 45 4F r */..#define EO
000180: 45 20 20 20 32 34 09 2F 2A 20 65 6E 64 20 6F 66 E 24./* end of
000190: 20 65 78 70 72 20 2A 2F 0D 0A 0D 0A 69 6E 74 0D expr */....int.
0001A0: 0A 20 20 6E 75 6D 62 65 72 2C 09 09 09 2F 2A 20 . number,.../*
0001B0: 76 61 6C 75 65 20 6F 66 20 6E 75 6D 65 72 69 63 value of numeric
0001C0: 20 74 6F 6B 65 6E 20 2A 2F 0D 0A 20 20 69 6C 6F token */.. ilo
0001D0: 63 2C 09 09 09 09 2F 2A 20 69 6E 73 74 72 75 63 c,..../* instruc
0001E0: 74 69 6F 6E 20 6C 6F 63 61 74 69 6F 6E 20 2A 2F tion location */
0001F0: 0D 0A 20 20 63 74 3B 09 09 09 09 2F 2A 20 63 75 .. ct;..../* cu
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 6A 20 3D 20 69 2B 2B 20 2D 20 j = i++ -
000010: 67 61 70 3B 0D 0A 20 20 20 20 20 20 77 68 69 6C gap;.. whil
000020: 65 28 6A 20 3E 3D 20 6C 29 20 7B 0D 0A 20 20 20 e(j >= l) {..
000030: 20 20 20 20 20 6A 67 20 3D 20 6A 20 2B 20 67 61 jg = j + ga
000040: 70 3B 0D 0A 20 20 20 20 20 20 20 20 69 66 28 73 p;.. if(s
000050: 74 72 63 6D 70 28 73 74 70 5B 6A 5D 2C 20 73 74 trcmp(stp[j], st
000060: 70 5B 6A 67 5D 29 20 3C 3D 20 30 29 20 62 72 65 p[jg]) <= 0) bre
000070: 61 6B 3B 0D 0A 20 20 20 20 20 20 20 20 6B 20 3D ak;.. k =
000080: 20 73 74 70 5B 6A 67 5D 3B 20 73 74 70 5B 6A 67 stp[jg]; stp[jg
000090: 5D 20 3D 20 73 74 70 5B 6A 5D 3B 20 73 74 70 5B ] = stp[j]; stp[
0000A0: 6A 5D 20 3D 20 6B 3B 0D 0A 20 20 20 20 20 20 20 j] = k;..
0000B0: 20 6A 20 2D 3D 20 67 61 70 3B 0D 0A 20 20 20 20 j -= gap;..
0000C0: 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 7D 0D 0A }.. }..
0000D0: 20 20 20 20 67 61 70 20 3E 3E 3D 20 31 3B 0D 0A gap >>= 1;..
0000E0: 20 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A }.. }..../*
0000F0: 0D 0A 2A 2A 20 73 68 6F 77 20 61 20 73 79 6D 62 ..** show a symb
000100: 6F 6C 0D 0A 2A 2F 0D 0A 73 68 6F 77 28 63 70 29 ol..*/..show(cp)
000110: 20 63 68 61 72 20 2A 63 70 3B 20 7B 0D 0A 20 20 char *cp; {..
000120: 63 68 61 72 20 73 74 72 5B 35 5D 3B 0D 0A 20 20 char str[5];..
000130: 62 65 67 70 61 67 65 28 29 3B 0D 0A 20 20 69 74 begpage();.. it
000140: 6F 78 28 67 65 74 69 6E 74 28 63 70 20 2B 20 53 ox(getint(cp + S
000150: 54 56 41 4C 55 45 29 2C 20 73 74 72 2C 20 35 29 TVALUE), str, 5)
000160: 3B 20 66 70 75 74 73 28 73 74 72 2C 20 73 74 64 ; fputs(str, std
000170: 6F 75 74 29 3B 0D 0A 20 20 69 66 28 28 63 70 5B out);.. if((cp[
000180: 53 54 46 4C 41 47 5D 20 26 20 52 45 4C 42 49 54 STFLAG] & RELBIT
000190: 53 29 20 3D 3D 20 50 52 45 4C 29 20 66 70 75 74 S) == PREL) fput
0001A0: 73 28 22 27 20 22 2C 20 73 74 64 6F 75 74 29 3B s("' ", stdout);
0001B0: 0D 0A 20 20 65 6C 73 65 20 66 70 75 74 73 28 22 .. else fputs("
0001C0: 20 20 22 2C 20 73 74 64 6F 75 74 29 3B 0D 0A 20 ", stdout);..
0001D0: 20 66 70 75 74 73 28 63 70 2C 20 73 74 64 6F 75 fputs(cp, stdou
0001E0: 74 29 3B 0D 0A 20 20 63 63 6E 74 20 2B 3D 20 36 t);.. ccnt += 6
0001F0: 20 2B 20 73 74 72 6C 65 6E 28 63 70 29 3B 0D 0A + strlen(cp);..
Size : 512 (Real : 512)
000000: 72 72 65 6E 74 20 74 6F 6B 65 6E 20 2A 2F 0D 0A rrent token */..
000010: 0D 0A 69 6E 74 09 09 09 09 2F 2A 20 6F 70 65 72 ..int..../* oper
000020: 61 74 6F 72 73 20 62 79 20 70 72 65 63 65 64 65 ators by precede
000030: 6E 63 65 20 6C 65 76 65 6C 20 2A 2F 0D 0A 20 20 nce level */..
000040: 6C 31 6F 70 73 5B 5D 20 3D 20 7B 4F 52 2C 20 4E l1ops[] = {OR, N
000050: 55 4C 4C 7D 2C 0D 0A 20 20 6C 32 6F 70 73 5B 5D ULL},.. l2ops[]
000060: 20 3D 20 7B 58 4F 52 2C 20 4E 55 4C 4C 7D 2C 0D = {XOR, NULL},.
000070: 0A 20 20 6C 33 6F 70 73 5B 5D 20 3D 20 7B 41 4E . l3ops[] = {AN
000080: 44 2C 20 4E 55 4C 4C 7D 2C 0D 0A 20 20 6C 34 6F D, NULL},.. l4o
000090: 70 73 5B 5D 20 3D 20 7B 45 51 2C 20 4E 45 2C 20 ps[] = {EQ, NE,
0000A0: 4E 55 4C 4C 7D 2C 0D 0A 20 20 6C 35 6F 70 73 5B NULL},.. l5ops[
0000B0: 5D 20 3D 20 7B 4C 45 2C 20 47 45 2C 20 4C 54 2C ] = {LE, GE, LT,
0000C0: 20 47 54 2C 20 4E 55 4C 4C 7D 2C 0D 0A 20 20 6C GT, NULL},.. l
0000D0: 36 6F 70 73 5B 5D 20 3D 20 7B 4C 53 48 2C 20 52 6ops[] = {LSH, R
0000E0: 53 48 2C 20 4E 55 4C 4C 7D 2C 0D 0A 20 20 6C 37 SH, NULL},.. l7
0000F0: 6F 70 73 5B 5D 20 3D 20 7B 50 4C 55 53 2C 20 4D ops[] = {PLUS, M
000100: 49 4E 55 53 2C 20 4E 55 4C 4C 7D 2C 0D 0A 20 20 INUS, NULL},..
000110: 6C 38 6F 70 73 5B 5D 20 3D 20 7B 4D 55 4C 54 2C l8ops[] = {MULT,
000120: 20 44 49 56 2C 20 4D 4F 44 2C 20 4E 55 4C 4C 7D DIV, MOD, NULL}
000130: 3B 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 65 76 61 6C ;..../*..** eval
000140: 75 61 74 65 20 74 68 65 20 6E 65 78 74 20 65 78 uate the next ex
000150: 70 72 65 73 73 69 6F 6E 20 61 74 20 65 70 0D 0A pression at ep..
000160: 2A 2A 20 63 61 6C 6C 65 72 20 6D 75 73 74 20 73 ** caller must s
000170: 65 74 20 65 70 0D 0A 2A 2F 0D 0A 65 78 70 72 28 et ep..*/..expr(
000180: 76 61 6C 75 65 2C 20 74 79 70 65 29 20 69 6E 74 value, type) int
000190: 20 2A 76 61 6C 75 65 2C 20 2A 74 79 70 65 3B 20 *value, *type;
0001A0: 7B 0D 0A 20 20 63 74 20 3D 20 4E 55 4C 4C 3B 09 {.. ct = NULL;.
0001B0: 09 09 09 2F 2A 20 6E 6F 20 63 75 72 72 65 6E 74 .../* no current
0001C0: 20 74 6F 6B 65 6E 20 2A 2F 0D 0A 20 20 69 66 28 token */.. if(
0001D0: 74 6F 6B 65 6E 28 45 4F 45 29 29 20 7B 0D 0A 20 token(EOE)) {..
0001E0: 20 20 20 2A 76 61 6C 75 65 20 3D 20 30 3B 20 2A *value = 0; *
0001F0: 74 79 70 65 20 3D 20 41 42 53 3B 09 09 2F 2A 20 type = ABS;../*
Size : 512 (Real : 512)
000000: 20 20 69 66 28 63 70 5B 53 54 46 4C 41 47 5D 20 if(cp[STFLAG]
000010: 26 20 4C 41 42 42 49 54 29 20 7B 70 75 74 63 68 & LABBIT) {putch
000020: 61 72 28 27 3A 27 29 3B 20 2B 2B 63 63 6E 74 3B ar(':'); ++ccnt;
000030: 7D 0D 0A 20 20 69 66 28 63 70 5B 53 54 46 4C 41 }.. if(cp[STFLA
000040: 47 5D 20 26 20 45 50 42 49 54 29 20 20 7B 70 75 G] & EPBIT) {pu
000050: 74 63 68 61 72 28 27 3A 27 29 3B 20 2B 2B 63 63 tchar(':'); ++cc
000060: 6E 74 3B 7D 0D 0A 20 20 69 66 28 63 70 5B 53 54 nt;}.. if(cp[ST
000070: 46 4C 41 47 5D 20 26 20 58 52 42 49 54 29 20 20 FLAG] & XRBIT)
000080: 7B 66 70 75 74 73 28 22 23 23 22 2C 20 73 74 64 {fputs("##", std
000090: 6F 75 74 29 3B 20 63 63 6E 74 20 2B 3D 20 32 3B out); ccnt += 2;
0000A0: 7D 0D 0A 20 20 69 66 28 63 63 6E 74 20 3C 20 36 }.. if(ccnt < 6
0000B0: 30 29 0D 0A 20 20 20 20 77 68 69 6C 65 28 63 63 0).. while(cc
0000C0: 6E 74 20 25 20 32 30 29 20 7B 70 75 74 63 68 61 nt % 20) {putcha
0000D0: 72 28 27 20 27 29 3B 20 2B 2B 63 63 6E 74 3B 7D r(' '); ++ccnt;}
0000E0: 0D 0A 20 20 65 6C 73 65 20 7B 70 75 74 73 28 22 .. else {puts("
0000F0: 22 29 3B 20 2B 2B 6C 6C 69 6E 65 3B 20 63 63 6E "); ++lline; ccn
000100: 74 20 3D 20 30 3B 7D 0D 0A 20 20 7D 0D 0A 0D 0A t = 0;}.. }....
000110: 2F 2A 0D 0A 2A 2A 20 66 69 6E 64 20 73 74 73 79 /*..** find stsy
000120: 6D 20 69 6E 20 73 79 6D 62 6F 6C 20 74 61 62 6C m in symbol tabl
000130: 65 0D 0A 2A 2A 20 6C 65 61 76 65 20 73 74 70 74 e..** leave stpt
000140: 72 20 70 6F 69 6E 74 69 6E 67 20 74 6F 20 64 65 r pointing to de
000150: 73 69 72 65 64 20 6F 72 20 6E 75 6C 6C 20 65 6E sired or null en
000160: 74 72 79 0D 0A 2A 2A 20 72 65 74 75 72 6E 20 74 try..** return t
000170: 72 75 65 20 69 66 20 66 6F 75 6E 64 2C 20 65 6C rue if found, el
000180: 73 65 20 66 61 6C 73 65 0D 0A 2A 2F 0D 0A 73 74 se false..*/..st
000190: 66 69 6E 64 28 29 20 7B 0D 0A 20 20 63 68 61 72 find() {.. char
0001A0: 20 2A 73 74 61 72 74 3B 0D 0A 20 20 73 74 70 74 *start;.. stpt
0001B0: 72 20 3D 20 73 74 61 72 74 20 3D 20 73 74 20 2B r = start = st +
0001C0: 20 68 61 73 68 28 73 74 73 79 6D 2C 20 73 74 6D hash(stsym, stm
0001D0: 61 78 29 20 2A 20 53 54 45 4E 54 52 59 3B 0D 0A ax) * STENTRY;..
0001E0: 20 20 77 68 69 6C 65 28 2A 73 74 70 74 72 29 20 while(*stptr)
0001F0: 7B 0D 0A 20 20 20 20 69 66 28 73 74 72 63 6D 70 {.. if(strcmp
Size : 512 (Real : 512)
000000: 6E 75 6C 6C 20 65 78 70 72 65 73 73 69 6F 6E 20 null expression
000010: 2A 2F 0D 0A 20 20 20 20 72 65 74 75 72 6E 3B 0D */.. return;.
000020: 0A 20 20 20 20 7D 0D 0A 20 20 69 66 28 21 6C 65 . }.. if(!le
000030: 76 65 6C 31 28 76 61 6C 75 65 2C 20 74 79 70 65 vel1(value, type
000040: 29 20 7C 7C 20 63 74 20 21 3D 20 45 4F 45 29 20 ) || ct != EOE)
000050: 65 78 70 65 72 72 28 29 3B 0D 0A 20 20 7D 0D 0A experr();.. }..
000060: 0D 0A 6C 65 76 65 6C 31 28 76 2C 20 74 29 20 69 ..level1(v, t) i
000070: 6E 74 20 2A 76 2C 20 2A 74 3B 20 7B 72 65 74 75 nt *v, *t; {retu
000080: 72 6E 20 28 64 6F 77 6E 28 6C 31 6F 70 73 2C 20 rn (down(l1ops,
000090: 6C 65 76 65 6C 32 2C 20 76 2C 20 74 29 29 3B 7D level2, v, t));}
0000A0: 0D 0A 6C 65 76 65 6C 32 28 76 2C 20 74 29 20 69 ..level2(v, t) i
0000B0: 6E 74 20 2A 76 2C 20 2A 74 3B 20 7B 72 65 74 75 nt *v, *t; {retu
0000C0: 72 6E 20 28 64 6F 77 6E 28 6C 32 6F 70 73 2C 20 rn (down(l2ops,
0000D0: 6C 65 76 65 6C 33 2C 20 76 2C 20 74 29 29 3B 7D level3, v, t));}
0000E0: 0D 0A 6C 65 76 65 6C 33 28 76 2C 20 74 29 20 69 ..level3(v, t) i
0000F0: 6E 74 20 2A 76 2C 20 2A 74 3B 20 7B 72 65 74 75 nt *v, *t; {retu
000100: 72 6E 20 28 64 6F 77 6E 28 6C 33 6F 70 73 2C 20 rn (down(l3ops,
000110: 6C 65 76 65 6C 34 2C 20 76 2C 20 74 29 29 3B 7D level4, v, t));}
000120: 0D 0A 6C 65 76 65 6C 34 28 76 2C 20 74 29 20 69 ..level4(v, t) i
000130: 6E 74 20 2A 76 2C 20 2A 74 3B 20 7B 72 65 74 75 nt *v, *t; {retu
000140: 72 6E 20 28 64 6F 77 6E 28 6C 34 6F 70 73 2C 20 rn (down(l4ops,
000150: 6C 65 76 65 6C 35 2C 20 76 2C 20 74 29 29 3B 7D level5, v, t));}
000160: 0D 0A 6C 65 76 65 6C 35 28 76 2C 20 74 29 20 69 ..level5(v, t) i
000170: 6E 74 20 2A 76 2C 20 2A 74 3B 20 7B 72 65 74 75 nt *v, *t; {retu
000180: 72 6E 20 28 64 6F 77 6E 28 6C 35 6F 70 73 2C 20 rn (down(l5ops,
000190: 6C 65 76 65 6C 36 2C 20 76 2C 20 74 29 29 3B 7D level6, v, t));}
0001A0: 0D 0A 6C 65 76 65 6C 36 28 76 2C 20 74 29 20 69 ..level6(v, t) i
0001B0: 6E 74 20 2A 76 2C 20 2A 74 3B 20 7B 72 65 74 75 nt *v, *t; {retu
0001C0: 72 6E 20 28 64 6F 77 6E 28 6C 36 6F 70 73 2C 20 rn (down(l6ops,
0001D0: 6C 65 76 65 6C 37 2C 20 76 2C 20 74 29 29 3B 7D level7, v, t));}
0001E0: 0D 0A 6C 65 76 65 6C 37 28 76 2C 20 74 29 20 69 ..level7(v, t) i
0001F0: 6E 74 20 2A 76 2C 20 2A 74 3B 20 7B 72 65 74 75 nt *v, *t; {retu
Size : 512 (Real : 512)
000000: 28 73 74 73 79 6D 2C 20 73 74 70 74 72 29 20 3D (stsym, stptr) =
000010: 3D 20 30 29 20 72 65 74 75 72 6E 20 28 59 45 53 = 0) return (YES
000020: 29 3B 0D 0A 20 20 20 20 69 66 28 28 73 74 70 74 );.. if((stpt
000030: 72 20 2B 3D 20 53 54 45 4E 54 52 59 29 20 3E 3D r += STENTRY) >=
000040: 20 73 74 65 6E 64 29 20 73 74 70 74 72 20 3D 20 stend) stptr =
000050: 73 74 3B 0D 0A 20 20 20 20 69 66 28 73 74 70 74 st;.. if(stpt
000060: 72 20 3D 3D 20 73 74 61 72 74 29 20 62 72 65 61 r == start) brea
000070: 6B 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 k;.. }.. ret
000080: 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 7D 0D 0A urn (NO);.. }..
000090: 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000A0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000B0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000100: 74 20 3D 20 30 3B 7D 0D 0A 20 20 7D 0D 0A 0D 0A t = 0;}.. }....
000110: 2F 2A 0D 0A 2A 2A 20 66 69 6E 64 20 73 74 73 79 /*..** find stsy
000120: 6D 20 69 6E 20 73 79 6D 62 6F 6C 20 74 61 62 6C m in symbol tabl
000130: 65 0D 0A 2A 2A 20 6C 65 61 76 65 20 73 74 70 74 e..** leave stpt
000140: 72 20 70 6F 69 6E 74 69 6E 67 20 74 6F 20 64 65 r pointing to de
000150: 73 69 72 65 64 20 6F 72 20 6E 75 6C 6C 20 65 6E sired or null en
000160: 74 72 79 0D 0A 2A 2A 20 72 65 74 75 72 6E 20 74 try..** return t
000170: 72 75 65 20 69 66 20 66 6F 75 6E 64 2C 20 65 6C rue if found, el
000180: 73 65 20 66 61 6C 73 65 0D 0A 2A 2F 0D 0A 73 74 se false..*/..st
000190: 66 69 6E 64 28 29 20 7B 0D 0A 20 20 63 68 61 72 find() {.. char
0001A0: 20 2A 73 74 61 72 74 3B 0D 0A 20 20 73 74 70 74 *start;.. stpt
0001B0: 72 20 3D 20 73 74 61 72 74 20 3D 20 73 74 20 2B r = start = st +
0001C0: 20 68 61 73 68 28 73 74 73 79 6D 2C 20 73 74 6D hash(stsym, stm
0001D0: 61 78 29 20 2A 20 53 54 45 4E 54 52 59 3B 0D 0A ax) * STENTRY;..
0001E0: 20 20 77 68 69 6C 65 28 2A 73 74 70 74 72 29 20 while(*stptr)
0001F0: 7B 0D 0A 20 20 20 20 69 66 28 73 74 72 63 6D 70 {.. if(strcmp
Size : 512 (Real : 512)
000000: 72 6E 20 28 64 6F 77 6E 28 6C 37 6F 70 73 2C 20 rn (down(l7ops,
000010: 6C 65 76 65 6C 38 2C 20 76 2C 20 74 29 29 3B 7D level8, v, t));}
000020: 0D 0A 6C 65 76 65 6C 38 28 76 2C 20 74 29 20 69 ..level8(v, t) i
000030: 6E 74 20 2A 76 2C 20 2A 74 3B 20 7B 72 65 74 75 nt *v, *t; {retu
000040: 72 6E 20 28 64 6F 77 6E 28 6C 38 6F 70 73 2C 20 rn (down(l8ops,
000050: 20 75 6E 61 72 79 2C 20 76 2C 20 74 29 29 3B 7D unary, v, t));}
000060: 0D 0A 0D 0A 75 6E 61 72 79 28 76 2C 20 74 29 20 ....unary(v, t)
000070: 69 6E 74 20 2A 76 2C 20 2A 74 3B 20 20 7B 0D 0A int *v, *t; {..
000080: 20 20 69 66 28 74 6F 6B 65 6E 28 43 50 4C 29 29 if(token(CPL))
000090: 20 7B 09 09 09 2F 2A 20 7E 20 2A 2F 0D 0A 20 20 {.../* ~ */..
0000A0: 20 20 69 66 28 21 75 6E 61 72 79 28 76 2C 20 74 if(!unary(v, t
0000B0: 29 29 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D )) return (NO);.
0000C0: 0A 20 20 20 20 2A 76 20 3D 20 7E 2A 76 3B 0D 0A . *v = ~*v;..
0000D0: 20 20 20 20 67 6F 74 6F 20 63 68 65 63 6B 3B 0D goto check;.
0000E0: 0A 20 20 20 20 7D 0D 0A 20 20 65 6C 73 65 20 69 . }.. else i
0000F0: 66 28 74 6F 6B 65 6E 28 4E 4F 54 29 29 20 7B 09 f(token(NOT)) {.
000100: 09 09 2F 2A 20 21 20 2A 2F 0D 0A 20 20 20 20 69 ../* ! */.. i
000110: 66 28 21 75 6E 61 72 79 28 76 20 2C 74 29 29 20 f(!unary(v ,t))
000120: 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 return (NO);..
000130: 20 20 2A 76 20 3D 20 21 2A 76 3B 0D 0A 20 20 20 *v = !*v;..
000140: 20 67 6F 74 6F 20 63 68 65 63 6B 3B 0D 0A 20 20 goto check;..
000150: 20 20 7D 0D 0A 20 20 65 6C 73 65 20 69 66 28 74 }.. else if(t
000160: 6F 6B 65 6E 28 4D 49 4E 55 53 29 29 20 7B 09 09 oken(MINUS)) {..
000170: 2F 2A 20 2D 20 2A 2F 0D 0A 20 20 20 20 69 66 28 /* - */.. if(
000180: 21 75 6E 61 72 79 28 76 2C 20 74 29 29 20 72 65 !unary(v, t)) re
000190: 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 20 20 turn (NO);..
0001A0: 2A 76 20 3D 20 2D 2A 76 3B 0D 0A 20 20 20 20 63 *v = -*v;.. c
0001B0: 68 65 63 6B 3A 0D 0A 20 20 20 20 69 66 28 2A 74 heck:.. if(*t
0001C0: 20 26 20 52 45 4C 42 49 54 53 29 20 72 65 6C 65 & RELBITS) rele
0001D0: 72 72 28 29 3B 09 09 2F 2A 20 63 61 6E 27 74 20 rr();../* can't
0001E0: 62 65 20 72 65 6C 6F 63 61 74 61 62 6C 65 20 2A be relocatable *
0001F0: 2F 0D 0A 20 20 20 20 2A 74 20 26 3D 20 7E 52 45 /.. *t &= ~RE
Size : 512 (Real : 512)
000000: 20 20 7D 0D 0A 20 20 20 20 7D 0D 0A 20 20 65 6C }.. }.. el
000010: 73 65 20 7B 09 09 09 09 09 2F 2A 20 72 65 6C 20 se {...../* rel
000020: 3C 6F 70 65 72 3E 20 61 62 73 20 2A 2F 0D 0A 20 <oper> abs */..
000030: 20 20 20 69 66 28 74 72 20 3D 3D 20 41 42 53 29 if(tr == ABS)
000040: 20 7B 0D 0A 20 20 20 20 20 20 73 77 69 74 63 68 {.. switch
000050: 28 6F 70 65 72 29 20 7B 0D 0A 20 20 20 20 20 20 (oper) {..
000060: 20 20 63 61 73 65 20 50 4C 55 53 3A 20 63 61 73 case PLUS: cas
000070: 65 20 4D 49 4E 55 53 3A 0D 0A 20 20 20 20 20 20 e MINUS:..
000080: 20 20 2A 74 20 7C 3D 20 50 52 45 4C 3B 0D 0A 20 *t |= PREL;..
000090: 20 20 20 20 20 20 20 72 65 74 75 72 6E 20 28 6F return (o
0000A0: 6B 29 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A k);.. }..
0000B0: 20 20 20 20 20 20 72 65 74 75 72 6E 20 28 4E 4F return (NO
0000C0: 29 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 );.. }..
0000D0: 20 65 6C 73 65 20 7B 09 09 09 09 09 2F 2A 20 72 else {...../* r
0000E0: 65 6C 20 3C 6F 70 65 72 3E 20 72 65 6C 20 2A 2F el <oper> rel */
0000F0: 0D 0A 20 20 20 20 20 20 73 77 69 74 63 68 28 6F .. switch(o
000100: 70 65 72 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 per) {..
000110: 63 61 73 65 20 4D 49 4E 55 53 3A 0D 0A 20 20 20 case MINUS:..
000120: 20 20 20 20 20 63 61 73 65 20 45 51 3A 20 63 61 case EQ: ca
000130: 73 65 20 4C 54 3A 20 63 61 73 65 20 4C 45 3A 0D se LT: case LE:.
000140: 0A 20 20 20 20 20 20 20 20 63 61 73 65 20 4E 45 . case NE
000150: 3A 20 63 61 73 65 20 47 54 3A 20 63 61 73 65 20 : case GT: case
000160: 47 45 3A 0D 0A 20 20 20 20 20 20 20 20 72 65 74 GE:.. ret
000170: 75 72 6E 20 28 6F 6B 29 3B 0D 0A 20 20 20 20 20 urn (ok);..
000180: 20 20 20 7D 0D 0A 20 20 20 20 20 20 72 65 74 75 }.. retu
000190: 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 20 20 20 20 rn (NO);..
0001A0: 7D 0D 0A 20 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0D }.. }.. }...
0001B0: 0A 2F 2A 0D 0A 2A 2A 20 61 70 70 6C 79 20 61 20 ./*..** apply a
0001C0: 62 69 6E 61 72 79 20 6F 70 65 72 61 74 6F 72 0D binary operator.
0001D0: 0A 2A 2F 0D 0A 62 69 6E 61 72 79 28 6C 65 66 74 .*/..binary(left
0001E0: 2C 20 6F 70 65 72 2C 20 72 69 67 68 74 29 20 69 , oper, right) i
0001F0: 6E 74 20 6C 65 66 74 2C 20 6F 70 65 72 2C 20 72 nt left, oper, r
Size : 512 (Real : 512)
000000: 4C 42 49 54 53 3B 09 09 09 2F 2A 20 66 6F 72 63 LBITS;.../* forc
000010: 65 20 41 42 53 20 2A 2F 0D 0A 20 20 20 20 72 65 e ABS */.. re
000020: 74 75 72 6E 20 28 59 45 53 29 3B 09 09 09 2F 2A turn (YES);.../*
000030: 20 6C 69 65 20 61 62 6F 75 74 20 69 74 20 2A 2F lie about it */
000040: 0D 0A 20 20 20 20 7D 0D 0A 20 20 65 6C 73 65 20 .. }.. else
000050: 72 65 74 75 72 6E 20 28 70 72 69 6D 61 72 79 28 return (primary(
000060: 76 2C 20 74 29 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A v, t));.. }....
000070: 70 72 69 6D 61 72 79 28 76 2C 20 74 29 20 69 6E primary(v, t) in
000080: 74 20 2A 76 2C 20 2A 74 3B 20 7B 0D 0A 20 20 69 t *v, *t; {.. i
000090: 6E 74 20 6F 6B 3B 0D 0A 20 20 69 66 28 74 6F 6B nt ok;.. if(tok
0000A0: 65 6E 28 4C 50 4E 29 29 20 7B 09 09 09 09 2F 2A en(LPN)) {..../*
0000B0: 20 28 20 2A 2F 0D 0A 20 20 20 20 6F 6B 20 3D 20 ( */.. ok =
0000C0: 6C 65 76 65 6C 31 28 76 2C 20 74 29 3B 0D 0A 20 level1(v, t);..
0000D0: 20 20 20 69 66 28 74 6F 6B 65 6E 28 52 50 4E 29 if(token(RPN)
0000E0: 29 20 72 65 74 75 72 6E 28 6F 6B 29 3B 0D 0A 20 ) return(ok);..
0000F0: 20 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D return (NO);.
000100: 0A 20 20 20 20 7D 0D 0A 20 20 2A 74 20 3D 20 41 . }.. *t = A
000110: 42 53 3B 20 2A 76 20 3D 20 30 3B 09 09 09 09 2F BS; *v = 0;..../
000120: 2A 20 64 65 66 61 75 6C 74 73 20 2A 2F 0D 0A 20 * defaults */..
000130: 20 69 66 28 74 6F 6B 65 6E 28 4E 55 4D 29 29 20 if(token(NUM))
000140: 7B 09 09 09 09 2F 2A 20 6E 75 6D 62 65 72 20 2A {..../* number *
000150: 2F 0D 0A 20 20 20 20 2A 76 20 3D 20 6E 75 6D 62 /.. *v = numb
000160: 65 72 3B 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 er;.. return
000170: 28 59 45 53 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 (YES);.. }..
000180: 20 65 6C 73 65 20 69 66 28 74 6F 6B 65 6E 28 4C else if(token(L
000190: 4F 43 29 29 20 7B 09 09 09 09 2F 2A 20 24 20 2A OC)) {..../* $ *
0001A0: 2F 0D 0A 20 20 20 20 2A 76 20 3D 20 69 6C 6F 63 /.. *v = iloc
0001B0: 3B 0D 0A 20 20 20 20 2A 74 20 3D 20 50 52 45 4C ;.. *t = PREL
0001C0: 3B 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 28 59 ;.. return (Y
0001D0: 45 53 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 65 ES);.. }.. e
0001E0: 6C 73 65 20 7B 0D 0A 20 20 20 20 69 66 28 74 6F lse {.. if(to
0001F0: 6B 65 6E 28 53 59 4D 29 29 20 7B 09 09 09 09 2F ken(SYM)) {..../
Size : 512 (Real : 512)
000000: 69 67 68 74 3B 20 7B 0D 0A 20 20 73 77 69 74 63 ight; {.. switc
000010: 68 28 6F 70 65 72 29 20 7B 0D 0A 20 20 20 20 63 h(oper) {.. c
000020: 61 73 65 20 4F 52 3A 20 20 20 20 72 65 74 75 72 ase OR: retur
000030: 6E 20 28 6C 65 66 74 20 20 7C 20 20 72 69 67 68 n (left | righ
000040: 74 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 58 4F t);.. case XO
000050: 52 3A 20 20 20 72 65 74 75 72 6E 20 28 6C 65 66 R: return (lef
000060: 74 20 20 5E 20 20 72 69 67 68 74 29 3B 0D 0A 20 t ^ right);..
000070: 20 20 20 63 61 73 65 20 41 4E 44 3A 20 20 20 72 case AND: r
000080: 65 74 75 72 6E 20 28 6C 65 66 74 20 20 26 20 20 eturn (left &
000090: 72 69 67 68 74 29 3B 0D 0A 20 20 20 20 63 61 73 right);.. cas
0000A0: 65 20 45 51 3A 20 20 20 20 72 65 74 75 72 6E 20 e EQ: return
0000B0: 28 6C 65 66 74 20 20 3D 3D 20 72 69 67 68 74 29 (left == right)
0000C0: 3B 0D 0A 20 20 20 20 63 61 73 65 20 4E 45 3A 20 ;.. case NE:
0000D0: 20 20 20 72 65 74 75 72 6E 20 28 6C 65 66 74 20 return (left
0000E0: 20 21 3D 20 72 69 67 68 74 29 3B 0D 0A 20 20 20 != right);..
0000F0: 20 63 61 73 65 20 4C 45 3A 20 20 20 20 72 65 74 case LE: ret
000100: 75 72 6E 20 28 6C 65 66 74 20 20 3C 3D 20 72 69 urn (left <= ri
000110: 67 68 74 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 ght);.. case
000120: 47 45 3A 20 20 20 20 72 65 74 75 72 6E 20 28 6C GE: return (l
000130: 65 66 74 20 20 3E 3D 20 72 69 67 68 74 29 3B 0D eft >= right);.
000140: 0A 20 20 20 20 63 61 73 65 20 4C 54 3A 20 20 20 . case LT:
000150: 20 72 65 74 75 72 6E 20 28 6C 65 66 74 20 20 3C return (left <
000160: 20 20 72 69 67 68 74 29 3B 0D 0A 20 20 20 20 63 right);.. c
000170: 61 73 65 20 47 54 3A 20 20 20 20 72 65 74 75 72 ase GT: retur
000180: 6E 20 28 6C 65 66 74 20 20 3E 20 20 72 69 67 68 n (left > righ
000190: 74 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 52 53 t);.. case RS
0001A0: 48 3A 20 20 20 72 65 74 75 72 6E 20 28 6C 65 66 H: return (lef
0001B0: 74 20 20 3E 3E 20 72 69 67 68 74 29 3B 0D 0A 20 t >> right);..
0001C0: 20 20 20 63 61 73 65 20 4C 53 48 3A 20 20 20 72 case LSH: r
0001D0: 65 74 75 72 6E 20 28 6C 65 66 74 20 20 3C 3C 20 eturn (left <<
0001E0: 72 69 67 68 74 29 3B 0D 0A 20 20 20 20 63 61 73 right);.. cas
0001F0: 65 20 50 4C 55 53 3A 20 20 72 65 74 75 72 6E 20 e PLUS: return
Size : 512 (Real : 512)
000000: 2A 20 73 79 6D 62 6F 6C 20 2A 2F 0D 0A 20 20 20 * symbol */..
000010: 20 20 20 69 66 28 73 74 66 69 6E 64 28 29 29 20 if(stfind())
000020: 7B 0D 0A 20 20 20 20 20 20 20 20 2A 74 20 3D 20 {.. *t =
000030: 73 74 70 74 72 5B 53 54 46 4C 41 47 5D 3B 0D 0A stptr[STFLAG];..
000040: 20 20 20 20 20 20 20 20 69 66 28 21 28 73 74 70 if(!(stp
000050: 74 72 5B 53 54 46 4C 41 47 5D 20 26 20 58 52 42 tr[STFLAG] & XRB
000060: 49 54 29 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 IT)) {..
000070: 20 20 69 66 28 67 6F 74 78 72 29 20 72 65 64 65 if(gotxr) rede
000080: 72 72 28 29 3B 0D 0A 20 20 20 20 20 20 20 20 20 rr();..
000090: 20 2A 76 20 3D 20 67 65 74 69 6E 74 28 73 74 70 *v = getint(stp
0000A0: 74 72 20 2B 20 53 54 56 41 4C 55 45 29 3B 0D 0A tr + STVALUE);..
0000B0: 20 20 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 }..
0000C0: 20 20 20 20 20 65 6C 73 65 20 67 6F 74 6F 20 64 else goto d
0000D0: 6F 78 72 3B 09 09 09 09 2F 2A 20 65 78 74 20 72 oxr;..../* ext r
0000E0: 65 66 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 7D ef */.. }
0000F0: 0D 0A 20 20 20 20 20 20 65 6C 73 65 20 69 66 28 .. else if(
000100: 67 6F 74 78 72 29 20 7B 09 09 09 09 2F 2A 20 64 gotxr) {..../* d
000110: 65 66 69 6E 65 20 6E 65 77 20 65 78 74 20 72 65 efine new ext re
000120: 66 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 61 64 f */.. ad
000130: 64 73 79 6D 28 29 3B 09 09 09 09 2F 2A 20 73 79 dsym();..../* sy
000140: 6D 62 6F 6C 20 2A 2F 0D 0A 20 20 20 20 20 20 20 mbol */..
000150: 20 2A 74 20 3D 20 58 52 42 49 54 7C 41 42 53 3B *t = XRBIT|ABS;
000160: 09 09 09 09 2F 2A 20 31 73 74 20 65 78 74 20 72 ..../* 1st ext r
000170: 65 66 20 69 73 20 41 42 53 20 30 20 2A 2F 0D 0A ef is ABS 0 */..
000180: 20 20 20 20 20 20 20 20 64 6F 78 72 3A 0D 0A 20 doxr:..
000190: 20 20 20 20 20 20 20 70 72 69 6F 72 20 3D 20 67 prior = g
0001A0: 65 74 69 6E 74 28 73 74 70 74 72 20 2B 20 53 54 etint(stptr + ST
0001B0: 56 41 4C 55 45 29 3B 09 2F 2A 20 73 61 76 65 20 VALUE);./* save
0001C0: 70 72 69 6F 72 20 70 74 72 20 2A 2F 0D 0A 20 20 prior ptr */..
0001D0: 20 20 20 20 20 20 70 75 74 69 6E 74 28 73 74 70 putint(stp
0001E0: 74 72 20 2B 20 53 54 56 41 4C 55 45 2C 20 6C 6F tr + STVALUE, lo
0001F0: 63 29 3B 09 09 2F 2A 20 74 68 69 73 20 62 65 63 c);../* this bec
Size : 512 (Real : 512)
000000: 28 6C 65 66 74 20 20 2B 20 20 72 69 67 68 74 29 (left + right)
000010: 3B 0D 0A 20 20 20 20 63 61 73 65 20 4D 49 4E 55 ;.. case MINU
000020: 53 3A 20 72 65 74 75 72 6E 20 28 6C 65 66 74 20 S: return (left
000030: 20 2D 20 20 72 69 67 68 74 29 3B 0D 0A 20 20 20 - right);..
000040: 20 63 61 73 65 20 4D 55 4C 54 3A 20 20 72 65 74 case MULT: ret
000050: 75 72 6E 20 28 6C 65 66 74 20 20 2A 20 20 72 69 urn (left * ri
000060: 67 68 74 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 ght);.. case
000070: 44 49 56 3A 20 20 20 72 65 74 75 72 6E 20 28 6C DIV: return (l
000080: 65 66 74 20 20 2F 20 20 72 69 67 68 74 29 3B 0D eft / right);.
000090: 0A 20 20 20 20 63 61 73 65 20 4D 4F 44 3A 20 20 . case MOD:
0000A0: 20 72 65 74 75 72 6E 20 28 6C 65 66 74 20 20 25 return (left %
0000B0: 20 20 72 69 67 68 74 29 3B 0D 0A 20 20 20 20 7D right);.. }
0000C0: 0D 0A 20 20 72 65 74 75 72 6E 20 28 4E 55 4C 4C .. return (NULL
0000D0: 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A );.. }..../*..*
0000E0: 2A 20 73 63 61 6E 20 66 6F 72 20 6E 65 78 74 20 * scan for next
0000F0: 74 6F 6B 65 6E 0D 0A 2A 2F 0D 0A 74 6F 6B 65 6E token..*/..token
000100: 28 77 61 6E 74 29 20 69 6E 74 20 77 61 6E 74 3B (want) int want;
000110: 20 7B 0D 0A 20 20 69 6E 74 20 6C 65 6E 3B 0D 0A {.. int len;..
000120: 20 20 69 66 28 63 74 29 20 72 65 74 75 72 6E 20 if(ct) return
000130: 28 66 6F 75 6E 64 28 77 61 6E 74 2C 20 63 74 29 (found(want, ct)
000140: 29 3B 09 2F 2A 20 61 6C 72 65 61 64 79 20 68 61 );./* already ha
000150: 76 65 20 61 20 74 6F 6B 65 6E 20 2A 2F 0D 0A 20 ve a token */..
000160: 20 77 68 69 6C 65 28 69 73 73 70 61 63 65 28 2A while(isspace(*
000170: 65 70 29 29 20 2B 2B 65 70 3B 0D 0A 20 20 73 77 ep)) ++ep;.. sw
000180: 69 74 63 68 28 2A 65 70 2B 2B 29 20 7B 0D 0A 20 itch(*ep++) {..
000190: 20 20 20 63 61 73 65 20 27 7C 27 3A 20 72 65 74 case '|': ret
0001A0: 75 72 6E 20 28 66 6F 75 6E 64 28 77 61 6E 74 2C urn (found(want,
0001B0: 20 4F 52 29 29 3B 0D 0A 20 20 20 20 63 61 73 65 OR));.. case
0001C0: 20 27 5E 27 3A 20 72 65 74 75 72 6E 20 28 66 6F '^': return (fo
0001D0: 75 6E 64 28 77 61 6E 74 2C 20 58 4F 52 29 29 3B und(want, XOR));
0001E0: 0D 0A 20 20 20 20 63 61 73 65 20 27 26 27 3A 20 .. case '&':
0001F0: 72 65 74 75 72 6E 20 28 66 6F 75 6E 64 28 77 61 return (found(wa
Size : 512 (Real : 512)
000000: 6F 6D 65 73 20 70 72 65 76 20 2A 2F 0D 0A 20 20 omes prev */..
000010: 20 20 20 20 20 20 73 74 70 74 72 5B 53 54 46 4C stptr[STFL
000020: 41 47 5D 20 7C 3D 20 58 52 42 49 54 7C 50 52 45 AG] |= XRBIT|PRE
000030: 4C 3B 09 09 2F 2A 20 65 78 74 20 72 65 66 20 69 L;../* ext ref i
000040: 73 20 72 65 6C 61 74 69 76 65 20 2A 2F 0D 0A 20 s relative */..
000050: 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 }..
000060: 65 6C 73 65 20 75 6E 64 65 72 72 28 29 3B 09 09 else underr();..
000070: 09 09 2F 2A 20 75 6E 64 65 66 69 6E 65 64 20 2A ../* undefined *
000080: 2F 0D 0A 20 20 20 20 20 20 72 65 74 75 72 6E 20 /.. return
000090: 28 59 45 53 29 3B 0D 0A 20 20 20 20 20 20 7D 0D (YES);.. }.
0000A0: 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 75 72 6E . }.. return
0000B0: 20 28 4E 4F 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F (NO);.. }..../
0000C0: 2A 0D 0A 2A 2A 20 64 72 6F 70 20 74 6F 20 61 20 *..** drop to a
0000D0: 6C 6F 77 65 72 20 6C 65 76 65 6C 0D 0A 2A 2F 0D lower level..*/.
0000E0: 0A 64 6F 77 6E 28 6F 70 73 2C 20 6C 65 76 65 6C .down(ops, level
0000F0: 2C 20 76 2C 20 74 29 20 69 6E 74 20 2A 6F 70 73 , v, t) int *ops
000100: 2C 20 28 2A 6C 65 76 65 6C 29 28 29 2C 20 2A 76 , (*level)(), *v
000110: 2C 20 2A 74 3B 20 7B 0D 0A 20 20 69 6E 74 20 2A , *t; {.. int *
000120: 6F 70 3B 0D 0A 20 20 69 66 28 21 28 2A 6C 65 76 op;.. if(!(*lev
000130: 65 6C 29 28 76 2C 20 74 29 29 20 72 65 74 75 72 el)(v, t)) retur
000140: 6E 20 28 4E 4F 29 3B 0D 0A 20 20 6F 70 20 3D 20 n (NO);.. op =
000150: 2D 2D 6F 70 73 3B 0D 0A 20 20 77 68 69 6C 65 28 --ops;.. while(
000160: 2A 2B 2B 6F 70 29 20 7B 0D 0A 20 20 20 20 69 66 *++op) {.. if
000170: 28 74 6F 6B 65 6E 28 2A 6F 70 29 29 20 7B 0D 0A (token(*op)) {..
000180: 20 20 20 20 20 20 69 66 28 21 64 6F 77 6E 32 28 if(!down2(
000190: 2A 6F 70 2C 20 6C 65 76 65 6C 2C 20 76 2C 20 74 *op, level, v, t
0001A0: 29 29 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D )) return (NO);.
0001B0: 0A 20 20 20 20 20 20 69 66 28 74 6F 6B 65 6E 28 . if(token(
0001C0: 45 4F 45 29 29 20 72 65 74 75 72 6E 20 28 59 45 EOE)) return (YE
0001D0: 53 29 3B 0D 0A 20 20 20 20 20 20 6F 70 20 3D 20 S);.. op =
0001E0: 6F 70 73 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 ops;.. }..
0001F0: 20 20 20 7D 0D 0A 20 20 72 65 74 75 72 6E 20 28 }.. return (
Size : 512 (Real : 512)
000000: 6E 74 2C 20 41 4E 44 29 29 3B 0D 0A 20 20 20 20 nt, AND));..
000010: 63 61 73 65 20 27 2B 27 3A 20 72 65 74 75 72 6E case '+': return
000020: 20 28 66 6F 75 6E 64 28 77 61 6E 74 2C 20 50 4C (found(want, PL
000030: 55 53 29 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 US));.. case
000040: 27 2D 27 3A 20 72 65 74 75 72 6E 20 28 66 6F 75 '-': return (fou
000050: 6E 64 28 77 61 6E 74 2C 20 4D 49 4E 55 53 29 29 nd(want, MINUS))
000060: 3B 0D 0A 20 20 20 20 63 61 73 65 20 27 2A 27 3A ;.. case '*':
000070: 20 72 65 74 75 72 6E 20 28 66 6F 75 6E 64 28 77 return (found(w
000080: 61 6E 74 2C 20 4D 55 4C 54 29 29 3B 0D 0A 20 20 ant, MULT));..
000090: 20 20 63 61 73 65 20 27 2F 27 3A 20 72 65 74 75 case '/': retu
0000A0: 72 6E 20 28 66 6F 75 6E 64 28 77 61 6E 74 2C 20 rn (found(want,
0000B0: 44 49 56 29 29 3B 0D 0A 20 20 20 20 63 61 73 65 DIV));.. case
0000C0: 20 27 25 27 3A 20 72 65 74 75 72 6E 20 28 66 6F '%': return (fo
0000D0: 75 6E 64 28 77 61 6E 74 2C 20 4D 4F 44 29 29 3B und(want, MOD));
0000E0: 0D 0A 20 20 20 20 63 61 73 65 20 27 7E 27 3A 20 .. case '~':
0000F0: 72 65 74 75 72 6E 20 28 66 6F 75 6E 64 28 77 61 return (found(wa
000100: 6E 74 2C 20 43 50 4C 29 29 3B 0D 0A 20 20 20 20 nt, CPL));..
000110: 63 61 73 65 20 27 28 27 3A 20 72 65 74 75 72 6E case '(': return
000120: 20 28 66 6F 75 6E 64 28 77 61 6E 74 2C 20 4C 50 (found(want, LP
000130: 4E 29 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 27 N));.. case '
000140: 29 27 3A 20 72 65 74 75 72 6E 20 28 66 6F 75 6E )': return (foun
000150: 64 28 77 61 6E 74 2C 20 52 50 4E 29 29 3B 0D 0A d(want, RPN));..
000160: 20 20 20 20 63 61 73 65 20 27 24 27 3A 20 72 65 case '$': re
000170: 74 75 72 6E 20 28 66 6F 75 6E 64 28 77 61 6E 74 turn (found(want
000180: 2C 20 4C 4F 43 29 29 3B 0D 0A 20 20 20 20 63 61 , LOC));.. ca
000190: 73 65 20 27 2C 27 3A 20 72 65 74 75 72 6E 20 28 se ',': return (
0001A0: 66 6F 75 6E 64 28 77 61 6E 74 2C 20 45 4F 45 29 found(want, EOE)
0001B0: 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 27 21 27 );.. case '!'
0001C0: 3A 20 69 66 28 2A 65 70 2B 2B 20 3D 3D 20 27 3D : if(*ep++ == '=
0001D0: 27 29 20 72 65 74 75 72 6E 20 28 66 6F 75 6E 64 ') return (found
0001E0: 28 77 61 6E 74 2C 20 4E 45 29 29 3B 20 20 2D 2D (want, NE)); --
0001F0: 65 70 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 20 ep;..
Size : 512 (Real : 512)
000000: 59 45 53 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A YES);.. }..../*
000010: 0D 0A 2A 2A 20 62 69 6E 61 72 79 20 64 72 6F 70 ..** binary drop
000020: 20 74 6F 20 61 20 6C 6F 77 65 72 20 6C 65 76 65 to a lower leve
000030: 6C 0D 0A 2A 2F 0D 0A 64 6F 77 6E 32 28 6F 70 65 l..*/..down2(ope
000040: 72 2C 20 6C 65 76 65 6C 2C 20 76 2C 20 74 29 20 r, level, v, t)
000050: 69 6E 74 20 6F 70 65 72 2C 20 28 2A 6C 65 76 65 int oper, (*leve
000060: 6C 29 28 29 2C 20 2A 76 2C 20 2A 74 3B 20 7B 0D l)(), *v, *t; {.
000070: 0A 20 20 69 6E 74 20 6F 6B 2C 20 76 72 2C 20 74 . int ok, vr, t
000080: 72 2C 20 74 6C 3B 0D 0A 20 20 6F 6B 20 3D 20 28 r, tl;.. ok = (
000090: 2A 6C 65 76 65 6C 29 28 26 76 72 2C 20 26 74 72 *level)(&vr, &tr
0000A0: 29 3B 0D 0A 20 20 2A 76 20 3D 20 62 69 6E 61 72 );.. *v = binar
0000B0: 79 28 2A 76 2C 20 6F 70 65 72 2C 20 76 72 29 3B y(*v, oper, vr);
0000C0: 09 09 09 2F 2A 20 61 70 70 6C 79 20 6F 70 65 72 .../* apply oper
0000D0: 61 74 6F 72 20 2A 2F 0D 0A 20 20 74 6C 20 3D 20 ator */.. tl =
0000E0: 2A 74 20 26 20 52 45 4C 42 49 54 53 3B 0D 0A 20 *t & RELBITS;..
0000F0: 20 2A 74 20 3D 20 28 2A 74 20 7C 20 74 72 29 20 *t = (*t | tr)
000100: 26 20 7E 52 45 4C 42 49 54 53 3B 09 2F 2A 20 6D & ~RELBITS;./* m
000110: 65 72 67 65 20 66 6C 61 67 20 62 69 74 73 20 26 erge flag bits &
000120: 20 64 65 66 61 75 6C 74 20 74 6F 20 41 42 53 20 default to ABS
000130: 2A 2F 0D 0A 20 20 74 72 20 26 3D 20 52 45 4C 42 */.. tr &= RELB
000140: 49 54 53 3B 0D 0A 20 20 69 66 28 74 6C 20 3D 3D ITS;.. if(tl ==
000150: 20 41 42 53 29 20 7B 0D 0A 20 20 20 20 69 66 28 ABS) {.. if(
000160: 74 72 20 3D 3D 20 41 42 53 29 20 72 65 74 75 72 tr == ABS) retur
000170: 6E 20 28 6F 6B 29 3B 09 09 09 2F 2A 20 61 62 73 n (ok);.../* abs
000180: 20 3C 6F 70 65 72 3E 20 61 62 73 20 2A 2F 0D 0A <oper> abs */..
000190: 20 20 20 20 65 6C 73 65 20 7B 09 09 09 09 09 2F else {...../
0001A0: 2A 20 61 62 73 20 3C 6F 70 65 72 3E 20 72 65 6C * abs <oper> rel
0001B0: 20 2A 2F 0D 0A 20 20 20 20 20 20 69 66 28 6F 70 */.. if(op
0001C0: 65 72 20 3D 3D 20 50 4C 55 53 29 20 7B 2A 74 20 er == PLUS) {*t
0001D0: 7C 3D 20 50 52 45 4C 3B 20 72 65 74 75 72 6E 20 |= PREL; return
0001E0: 28 6F 6B 29 3B 7D 0D 0A 20 20 20 20 20 20 72 65 (ok);}.. re
0001F0: 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 20 20 turn (NO);..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 72 65 74 75 72 6E 20 28 66 6F 75 6E return (foun
000020: 64 28 77 61 6E 74 2C 20 4E 4F 54 29 29 3B 0D 0A d(want, NOT));..
000030: 20 20 20 20 63 61 73 65 20 27 3C 27 3A 20 69 66 case '<': if
000040: 28 2A 65 70 2B 2B 20 3D 3D 20 27 3D 27 29 20 72 (*ep++ == '=') r
000050: 65 74 75 72 6E 20 28 66 6F 75 6E 64 28 77 61 6E eturn (found(wan
000060: 74 2C 20 4C 45 29 29 3B 20 20 2D 2D 65 70 3B 0D t, LE)); --ep;.
000070: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 . i
000080: 66 28 2A 65 70 2B 2B 20 3D 3D 20 27 3C 27 29 20 f(*ep++ == '<')
000090: 72 65 74 75 72 6E 20 28 66 6F 75 6E 64 28 77 61 return (found(wa
0000A0: 6E 74 2C 20 4C 53 48 29 29 3B 20 2D 2D 65 70 3B nt, LSH)); --ep;
0000B0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 72 65 74 75 72 6E 20 28 66 6F 75 6E 64 28 77 return (found(w
0000E0: 61 6E 74 2C 20 4C 54 29 29 3B 0D 0A 20 20 20 20 ant, LT));..
0000F0: 63 61 73 65 20 27 3E 27 3A 20 69 66 28 2A 65 70 case '>': if(*ep
000100: 2B 2B 20 3D 3D 20 27 3D 27 29 20 72 65 74 75 72 ++ == '=') retur
000110: 6E 20 28 66 6F 75 6E 64 28 77 61 6E 74 2C 20 47 n (found(want, G
000120: 45 29 29 3B 20 20 2D 2D 65 70 3B 0D 0A 20 20 20 E)); --ep;..
000130: 20 20 20 20 20 20 20 20 20 20 20 69 66 28 2A 65 if(*e
000140: 70 2B 2B 20 3D 3D 20 27 3E 27 29 20 72 65 74 75 p++ == '>') retu
000150: 72 6E 20 28 66 6F 75 6E 64 28 77 61 6E 74 2C 20 rn (found(want,
000160: 52 53 48 29 29 3B 20 2D 2D 65 70 3B 0D 0A 20 20 RSH)); --ep;..
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 ret
000190: 75 72 6E 20 28 66 6F 75 6E 64 28 77 61 6E 74 2C urn (found(want,
0001A0: 20 47 54 29 29 3B 0D 0A 20 20 20 20 63 61 73 65 GT));.. case
0001B0: 20 27 3D 27 3A 20 69 66 28 2A 65 70 2B 2B 20 3D '=': if(*ep++ =
0001C0: 3D 20 27 3D 27 29 20 72 65 74 75 72 6E 20 28 66 = '=') return (f
0001D0: 6F 75 6E 64 28 77 61 6E 74 2C 20 45 51 29 29 3B ound(want, EQ));
0001E0: 20 20 2D 2D 65 70 3B 0D 0A 20 20 20 20 7D 0D 0A --ep;.. }..
0001F0: 20 20 2D 2D 65 70 3B 0D 0A 20 20 65 70 20 3D 20 --ep;.. ep =
Size : 512 (Real : 512)
000000: 63 61 73 65 20 27 56 27 3A 20 63 61 73 65 20 27 case 'V': case '
000010: 57 27 3A 20 63 61 73 65 20 27 58 27 3A 20 63 61 W': case 'X': ca
000020: 73 65 20 27 59 27 3A 20 63 61 73 65 20 27 5A 27 se 'Y': case 'Z'
000030: 3A 0D 0A 20 20 20 20 20 20 20 20 63 61 73 65 20 :.. case
000040: 27 30 27 3A 20 63 61 73 65 20 27 31 27 3A 20 63 '0': case '1': c
000050: 61 73 65 20 27 32 27 3A 20 63 61 73 65 20 27 33 ase '2': case '3
000060: 27 3A 20 63 61 73 65 20 27 34 27 3A 0D 0A 20 20 ': case '4':..
000070: 20 20 20 20 20 20 63 61 73 65 20 27 35 27 3A 20 case '5':
000080: 63 61 73 65 20 27 36 27 3A 20 63 61 73 65 20 27 case '6': case '
000090: 37 27 3A 20 63 61 73 65 20 27 38 27 3A 20 63 61 7': case '8': ca
0000A0: 73 65 20 27 39 27 3A 0D 0A 20 20 20 20 20 20 20 se '9':..
0000B0: 20 63 61 73 65 20 27 5F 27 3A 20 63 61 73 65 20 case '_': case
0000C0: 27 2E 27 3A 20 63 61 73 65 20 27 24 27 3A 20 63 '.': case '$': c
0000D0: 61 73 65 20 27 3F 27 3A 20 63 61 73 65 20 27 40 ase '?': case '@
0000E0: 27 3A 0D 0A 20 20 20 20 20 20 20 20 20 20 69 66 ':.. if
0000F0: 28 6A 20 3C 20 4D 41 58 4C 41 42 29 20 73 74 73 (j < MAXLAB) sts
000100: 79 6D 5B 6A 2B 2B 5D 20 3D 20 74 6F 75 70 70 65 ym[j++] = touppe
000110: 72 28 2A 61 74 29 3B 0D 0A 20 20 20 20 20 20 20 r(*at);..
000120: 20 20 20 2B 2B 61 74 3B 0D 0A 20 20 20 20 20 20 ++at;..
000130: 20 20 20 20 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 continue;..
000140: 20 20 20 20 20 20 20 63 61 73 65 20 27 3A 27 3A case ':':
000150: 0D 0A 20 20 20 20 20 20 20 20 20 20 67 6F 74 6C .. gotl
000160: 61 62 65 6C 20 3D 20 59 45 53 3B 0D 0A 20 20 20 abel = YES;..
000170: 20 20 20 20 20 20 20 69 66 28 2A 2B 2B 61 74 20 if(*++at
000180: 3D 3D 20 27 3A 27 29 20 7B 67 6F 74 65 70 20 3D == ':') {gotep =
000190: 20 59 45 53 3B 20 2B 2B 61 74 3B 7D 0D 0A 20 20 YES; ++at;}..
0001A0: 20 20 20 20 20 20 63 61 73 65 20 27 20 27 3A 20 case ' ':
0001B0: 63 61 73 65 20 27 5C 74 27 3A 20 63 61 73 65 20 case '\t': case
0001C0: 27 5C 6E 27 3A 0D 0A 20 20 20 20 20 20 20 20 63 '\n':.. c
0001D0: 61 73 65 20 27 2C 27 3A 20 63 61 73 65 20 4E 55 ase ',': case NU
0001E0: 4C 4C 3A 20 63 61 73 65 20 43 4F 4D 4D 45 4E 54 LL: case COMMENT
0001F0: 3A 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 :.. }..
Size : 512 (Real : 512)
000000: 67 65 74 73 79 6D 28 65 70 2C 20 59 45 53 29 3B getsym(ep, YES);
000010: 20 69 66 28 73 74 73 79 6D 5B 30 5D 29 20 7B 72 if(stsym[0]) {r
000020: 65 74 75 72 6E 20 28 66 6F 75 6E 64 28 77 61 6E eturn (found(wan
000030: 74 2C 20 53 59 4D 29 29 3B 7D 0D 0A 20 20 69 66 t, SYM));}.. if
000040: 28 6C 65 6E 20 3D 20 67 65 74 6E 75 6D 28 65 70 (len = getnum(ep
000050: 29 29 20 20 20 20 7B 65 70 20 2B 3D 20 6C 65 6E )) {ep += len
000060: 3B 20 72 65 74 75 72 6E 20 28 66 6F 75 6E 64 28 ; return (found(
000070: 77 61 6E 74 2C 20 4E 55 4D 29 29 3B 7D 0D 0A 20 want, NUM));}..
000080: 20 69 66 28 61 74 65 6E 64 28 2A 65 70 29 29 20 if(atend(*ep))
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000A0: 20 20 20 20 20 72 65 74 75 72 6E 20 28 66 6F 75 return (fou
0000B0: 6E 64 28 77 61 6E 74 2C 20 45 4F 45 29 29 3B 0D nd(want, EOE));.
0000C0: 0A 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D . return (NO);.
0000D0: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 77 . }..../*..** w
0000E0: 68 61 74 20 77 61 73 20 66 6F 75 6E 64 3F 0D 0A hat was found?..
0000F0: 2A 2F 0D 0A 66 6F 75 6E 64 28 77 61 6E 74 2C 20 */..found(want,
000100: 68 61 76 65 29 20 69 6E 74 20 77 61 6E 74 2C 20 have) int want,
000110: 68 61 76 65 3B 20 7B 0D 0A 20 20 63 74 20 3D 20 have; {.. ct =
000120: 68 61 76 65 3B 09 09 09 09 09 2F 2A 20 6E 65 77 have;...../* new
000130: 20 63 75 72 72 65 6E 74 20 74 6F 6B 65 6E 20 2A current token *
000140: 2F 0D 0A 20 20 69 66 28 63 74 20 3D 3D 20 77 61 /.. if(ct == wa
000150: 6E 74 29 20 7B 09 09 09 09 2F 2A 20 77 61 73 20 nt) {..../* was
000160: 69 74 20 73 6F 75 67 68 74 3F 20 2A 2F 0D 0A 20 it sought? */..
000170: 20 20 20 69 66 28 63 74 20 21 3D 20 45 4F 45 29 if(ct != EOE)
000180: 20 63 74 20 3D 20 4E 55 4C 4C 3B 09 09 09 2F 2A ct = NULL;.../*
000190: 20 79 65 73 2C 20 70 61 73 73 20 69 74 20 62 79 yes, pass it by
0001A0: 20 2A 2F 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 */.. return
0001B0: 28 59 45 53 29 3B 09 09 09 09 2F 2A 20 63 61 6C (YES);..../* cal
0001C0: 6C 65 72 20 68 61 73 20 61 20 68 69 74 20 2A 2F ler has a hit */
0001D0: 0D 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 75 72 .. }.. retur
0001E0: 6E 20 28 4E 4F 29 3B 09 09 09 09 09 2F 2A 20 73 n (NO);...../* s
0001F0: 6F 72 72 79 2C 20 6E 6F 20 68 69 74 20 2A 2F 0D orry, no hit */.
Size : 512 (Real : 512)
000000: 20 20 20 20 77 68 69 6C 65 28 69 73 73 70 61 63 while(isspac
000010: 65 28 2A 61 74 29 29 20 2B 2B 61 74 3B 0D 0A 20 e(*at)) ++at;..
000020: 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A 20 20 20 break;..
000030: 20 20 20 7D 0D 0A 20 20 20 20 7D 0D 0A 20 20 73 }.. }.. s
000040: 74 73 79 6D 5B 6A 5D 20 3D 20 4E 55 4C 4C 3B 0D tsym[j] = NULL;.
000050: 0A 20 20 69 66 28 73 74 73 79 6D 5B 30 5D 20 26 . if(stsym[0] &
000060: 26 20 21 67 6F 74 6C 61 62 65 6C 29 20 67 6F 74 & !gotlabel) got
000070: 6E 61 6D 20 3D 20 59 45 53 3B 20 65 6C 73 65 20 nam = YES; else
000080: 67 6F 74 6E 61 6D 20 3D 20 4E 4F 3B 0D 0A 20 20 gotnam = NO;..
000090: 72 65 74 75 72 6E 20 28 61 74 29 3B 0D 0A 20 20 return (at);..
0000A0: 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A }...............
0000B0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000100: 79 6D 5B 6A 2B 2B 5D 20 3D 20 74 6F 75 70 70 65 ym[j++] = touppe
000110: 72 28 2A 61 74 29 3B 0D 0A 20 20 20 20 20 20 20 r(*at);..
000120: 20 20 20 2B 2B 61 74 3B 0D 0A 20 20 20 20 20 20 ++at;..
000130: 20 20 20 20 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 continue;..
000140: 20 20 20 20 20 20 20 63 61 73 65 20 27 3A 27 3A case ':':
000150: 0D 0A 20 20 20 20 20 20 20 20 20 20 67 6F 74 6C .. gotl
000160: 61 62 65 6C 20 3D 20 59 45 53 3B 0D 0A 20 20 20 abel = YES;..
000170: 20 20 20 20 20 20 20 69 66 28 2A 2B 2B 61 74 20 if(*++at
000180: 3D 3D 20 27 3A 27 29 20 7B 67 6F 74 65 70 20 3D == ':') {gotep =
000190: 20 59 45 53 3B 20 2B 2B 61 74 3B 7D 0D 0A 20 20 YES; ++at;}..
0001A0: 20 20 20 20 20 20 63 61 73 65 20 27 20 27 3A 20 case ' ':
0001B0: 63 61 73 65 20 27 5C 74 27 3A 20 63 61 73 65 20 case '\t': case
0001C0: 27 5C 6E 27 3A 0D 0A 20 20 20 20 20 20 20 20 63 '\n':.. c
0001D0: 61 73 65 20 27 2C 27 3A 20 63 61 73 65 20 4E 55 ase ',': case NU
0001E0: 4C 4C 3A 20 63 61 73 65 20 43 4F 4D 4D 45 4E 54 LL: case COMMENT
0001F0: 3A 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 :.. }..
Size : 512 (Real : 512)
000000: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 67 . }..../*..** g
000010: 65 74 20 68 65 78 2C 20 64 65 63 2C 20 6F 72 20 et hex, dec, or
000020: 6F 63 74 20 6E 75 6D 62 65 72 20 61 73 20 62 69 oct number as bi
000030: 6E 61 72 79 20 76 61 6C 75 65 20 69 6E 20 6E 75 nary value in nu
000040: 6D 62 65 72 0D 0A 2A 2A 20 72 65 74 75 72 6E 20 mber..** return
000050: 6C 65 6E 67 74 68 20 6F 66 20 66 69 65 6C 64 20 length of field
000060: 70 72 6F 63 65 73 73 65 64 2C 20 65 6C 73 65 20 processed, else
000070: 7A 65 72 6F 0D 0A 2A 2F 20 0D 0A 67 65 74 6E 75 zero..*/ ..getnu
000080: 6D 28 61 74 29 20 63 68 61 72 20 2A 61 74 3B 20 m(at) char *at;
000090: 7B 0D 0A 20 20 69 6E 74 20 62 75 6D 70 2C 20 6C {.. int bump, l
0000A0: 65 6E 3B 20 63 68 61 72 20 2A 65 6E 64 2C 20 2A en; char *end, *
0000B0: 63 70 3B 0D 0A 20 20 63 70 20 3D 20 61 74 3B 0D cp;.. cp = at;.
0000C0: 0A 20 20 69 66 28 28 2A 63 70 20 3D 3D 20 27 5C . if((*cp == '\
0000D0: 27 27 20 7C 7C 20 2A 63 70 20 3D 3D 20 27 22 27 '' || *cp == '"'
0000E0: 29 20 26 26 20 2A 63 70 20 3D 3D 20 63 70 5B 32 ) && *cp == cp[2
0000F0: 5D 29 20 7B 09 2F 2A 20 71 75 6F 74 65 64 20 63 ]) {./* quoted c
000100: 68 61 72 20 2A 2F 0D 0A 20 20 20 20 6E 75 6D 62 har */.. numb
000110: 65 72 20 3D 20 63 70 5B 31 5D 20 26 20 32 35 35 er = cp[1] & 255
000120: 3B 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 28 33 ;.. return (3
000130: 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 73 77 69 );.. }.. swi
000140: 74 63 68 28 2A 63 70 29 20 7B 0D 0A 20 20 20 20 tch(*cp) {..
000150: 63 61 73 65 20 27 30 27 3A 20 63 61 73 65 20 27 case '0': case '
000160: 31 27 3A 20 63 61 73 65 20 27 32 27 3A 20 63 61 1': case '2': ca
000170: 73 65 20 27 33 27 3A 20 63 61 73 65 20 27 34 27 se '3': case '4'
000180: 3A 0D 0A 20 20 20 20 63 61 73 65 20 27 35 27 3A :.. case '5':
000190: 20 63 61 73 65 20 27 36 27 3A 20 63 61 73 65 20 case '6': case
0001A0: 27 37 27 3A 20 63 61 73 65 20 27 38 27 3A 20 63 '7': case '8': c
0001B0: 61 73 65 20 27 39 27 3A 0D 0A 20 20 20 20 65 6E ase '9':.. en
0001C0: 64 20 3D 20 63 70 3B 0D 0A 20 20 20 20 62 75 6D d = cp;.. bum
0001D0: 70 20 3D 20 31 3B 0D 0A 20 20 20 20 77 68 69 6C p = 1;.. whil
0001E0: 65 28 59 45 53 29 20 7B 0D 0A 20 20 20 20 20 20 e(YES) {..
0001F0: 73 77 69 74 63 68 28 74 6F 75 70 70 65 72 28 2A switch(toupper(*
Size : 512 (Real : 512)
000000: 2F 2A 20 0D 0A 2A 2A 20 4C 4E 4B 2E 43 20 2D 2D /* ..** LNK.C --
000010: 20 53 6D 61 6C 6C 2D 4D 61 63 20 4C 69 6E 6B 61 Small-Mac Linka
000020: 67 65 20 45 64 69 74 6F 72 0D 0A 2A 2A 0D 0A 2A ge Editor..**..*
000030: 2A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 *
000040: 20 20 20 20 20 43 6F 70 79 72 69 67 68 74 20 31 Copyright 1
000050: 39 38 35 20 4A 2E 20 45 2E 20 48 65 6E 64 72 69 985 J. E. Hendri
000060: 78 0D 0A 2A 2A 0D 0A 2A 2A 20 55 73 61 67 65 3A x..**..** Usage:
000070: 20 4C 4E 4B 20 5B 2D 42 5D 20 5B 2D 47 23 5D 20 LNK [-B] [-G#]
000080: 5B 2D 4D 5D 20 70 72 6F 67 72 61 6D 20 5B 6D 6F [-M] program [mo
000090: 64 75 6C 65 2F 6C 69 62 72 61 72 79 2E 2E 2E 5D dule/library...]
0000A0: 0D 0A 2A 2A 0D 0A 2A 2A 20 2D 42 20 20 20 20 20 ..**..** -B
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 41 20 42 49 A BI
0000C0: 47 20 70 72 6F 67 72 61 6D 20 69 73 20 62 65 69 G program is bei
0000D0: 6E 67 20 6C 69 6E 6B 65 64 2C 20 73 6F 20 75 73 ng linked, so us
0000E0: 65 20 61 6C 6C 0D 0A 2A 2A 20 20 20 20 20 20 20 e all..**
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 6F 66 20 of
000100: 66 72 65 65 20 6D 65 6D 6F 72 79 20 66 6F 72 20 free memory for
000110: 74 68 65 20 73 79 6D 62 6F 6C 20 74 61 62 6C 65 the symbol table
000120: 20 61 6E 64 20 6C 6F 61 64 20 74 68 65 0D 0A 2A and load the..*
000130: 2A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 *
000140: 20 20 20 20 20 70 72 6F 67 72 61 6D 20 74 6F 20 program to
000150: 64 69 73 6B 20 65 6E 74 69 72 65 6C 79 2E 20 20 disk entirely.
000160: 54 68 69 73 20 69 73 20 73 6C 6F 77 65 72 20 62 This is slower b
000170: 75 74 20 69 74 0D 0A 2A 2A 20 20 20 20 20 20 20 ut it..**
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 get
000190: 73 20 74 68 65 20 6A 6F 62 20 64 6F 6E 65 2E 0D s the job done..
0001A0: 0A 2A 2A 0D 0A 2A 2A 20 2D 47 23 20 20 20 20 20 .**..** -G#
0001B0: 20 20 20 20 20 20 20 20 20 20 20 4D 61 6B 65 20 Make
0001C0: 70 72 6F 67 72 61 6D 20 61 62 73 6F 6C 75 74 65 program absolute
0001D0: 20 61 74 20 61 64 64 72 65 73 73 20 23 20 28 68 at address # (h
0001E0: 65 78 29 20 61 6E 64 0D 0A 2A 2A 20 20 20 20 20 ex) and..**
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6F o
Size : 512 (Real : 512)
000000: 65 6E 64 29 29 20 7B 0D 0A 20 20 20 20 20 20 20 end)) {..
000010: 20 20 64 65 66 61 75 6C 74 3A 20 69 66 28 69 73 default: if(is
000020: 78 64 69 67 69 74 28 2A 65 6E 64 29 29 20 7B 2B xdigit(*end)) {+
000030: 2B 65 6E 64 3B 20 63 6F 6E 74 69 6E 75 65 3B 7D +end; continue;}
000040: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000050: 20 20 20 20 62 75 6D 70 20 3D 20 30 3B 0D 0A 20 bump = 0;..
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 6C 65 6E 20 3D 20 75 74 6F 69 28 63 70 2C 20 len = utoi(cp,
000080: 26 6E 75 6D 62 65 72 29 3B 20 62 72 65 61 6B 3B &number); break;
000090: 0D 0A 20 20 20 20 20 20 20 20 63 61 73 65 20 27 .. case '
0000A0: 51 27 3A 0D 0A 20 20 20 20 20 20 20 20 63 61 73 Q':.. cas
0000B0: 65 20 27 4F 27 3A 20 6C 65 6E 20 3D 20 6F 74 6F e 'O': len = oto
0000C0: 69 28 63 70 2C 20 26 6E 75 6D 62 65 72 29 3B 20 i(cp, &number);
0000D0: 62 72 65 61 6B 3B 0D 0A 20 20 20 20 20 20 20 20 break;..
0000E0: 63 61 73 65 20 27 48 27 3A 20 6C 65 6E 20 3D 20 case 'H': len =
0000F0: 78 74 6F 69 28 63 70 2C 20 26 6E 75 6D 62 65 72 xtoi(cp, &number
000100: 29 3B 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 20 ); break;..
000110: 20 20 20 7D 0D 0A 20 20 20 20 20 20 62 72 65 61 }.. brea
000120: 6B 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 k;.. }..
000130: 20 69 66 28 6C 65 6E 20 21 3D 20 28 65 6E 64 20 if(len != (end
000140: 2D 20 63 70 29 29 20 6E 75 6D 65 72 72 28 29 3B - cp)) numerr();
000150: 09 2F 2A 20 62 61 64 20 6E 75 6D 62 65 72 20 2A ./* bad number *
000160: 2F 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 28 28 /.. return ((
000170: 65 6E 64 20 2D 20 61 74 29 20 2B 20 62 75 6D 70 end - at) + bump
000180: 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 );.. }.. ret
000190: 75 72 6E 20 28 30 29 3B 0D 0A 20 20 7D 0D 0A 0D urn (0);.. }...
0001A0: 0A 2F 2A 0D 0A 2A 2A 20 67 65 74 20 61 20 73 79 ./*..** get a sy
0001B0: 6D 62 6F 6C 20 69 6E 74 6F 20 73 74 73 79 6D 0D mbol into stsym.
0001C0: 0A 2A 2F 0D 0A 67 65 74 73 79 6D 28 61 74 2C 20 .*/..getsym(at,
0001D0: 72 65 66 29 20 63 68 61 72 20 2A 61 74 3B 20 69 ref) char *at; i
0001E0: 6E 74 20 72 65 66 3B 20 7B 0D 0A 20 20 69 6E 74 nt ref; {.. int
0001F0: 20 6A 3B 0D 0A 20 20 6A 20 3D 20 62 61 64 73 79 j;.. j = badsy
Size : 512 (Real : 512)
000000: 75 74 70 75 74 20 61 73 20 22 70 72 6F 67 72 61 utput as "progra
000010: 6D 2E 4C 47 4F 22 20 69 6E 73 74 65 61 64 20 6F m.LGO" instead o
000020: 66 20 22 70 72 6F 67 72 61 6D 2E 43 4F 4D 22 2E f "program.COM".
000030: 0D 0A 2A 2A 0D 0A 2A 2A 20 2D 4D 20 20 20 20 20 ..**..** -M
000040: 20 20 20 20 20 20 20 20 20 20 20 20 4D 6F 6E 69 Moni
000050: 74 6F 72 20 6C 69 6E 6B 69 6E 67 20 61 63 74 69 tor linking acti
000060: 76 69 74 79 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 70 72 vity...**..** pr
000070: 6F 67 72 61 6D 20 20 20 20 20 20 20 20 20 20 20 ogram
000080: 20 41 20 66 69 6C 65 20 73 70 65 63 69 66 69 65 A file specifie
000090: 72 20 66 6F 72 20 74 68 65 20 70 72 6F 67 72 61 r for the progra
0000A0: 6D 20 62 65 69 6E 67 20 6C 69 6E 6B 65 64 2E 0D m being linked..
0000B0: 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 20 20 20 .**
0000C0: 20 20 20 20 20 20 20 54 68 65 20 64 65 66 61 75 The defau
0000D0: 6C 74 2C 20 61 6E 64 20 6F 6E 6C 79 20 61 6C 6C lt, and only all
0000E0: 6F 77 65 64 2C 20 65 78 74 65 6E 73 69 6F 6E 20 owed, extension
0000F0: 69 73 20 52 45 4C 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 is REL...**..**
000100: 6D 6F 64 75 6C 65 2F 6C 69 62 72 61 72 79 2E 2E module/library..
000110: 2E 20 20 41 20 6C 69 73 74 20 6F 66 20 7A 65 72 . A list of zer
000120: 6F 20 6F 72 20 6D 6F 72 65 20 6D 6F 64 75 6C 65 o or more module
000130: 20 28 2E 52 45 4C 29 20 61 6E 64 2F 6F 72 0D 0A (.REL) and/or..
000140: 2A 2A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 **
000150: 20 20 20 20 20 20 6C 69 62 72 61 72 79 20 28 2E library (.
000160: 4C 49 42 29 20 66 69 6C 65 73 2E 20 20 45 61 63 LIB) files. Eac
000170: 68 20 6D 6F 64 75 6C 65 20 69 73 20 6C 69 6E 6B h module is link
000180: 65 64 20 74 6F 0D 0A 2A 2A 20 20 20 20 20 20 20 ed to..**
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 the
0001A0: 20 70 72 6F 67 72 61 6D 20 61 6E 64 20 74 68 65 program and the
0001B0: 20 6C 69 62 72 61 72 69 65 73 20 61 72 65 20 73 libraries are s
0001C0: 65 61 72 63 68 65 64 20 66 6F 72 0D 0A 2A 2A 20 earched for..**
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 20 20 6A 75 73 74 20 74 68 6F 73 65 20 6D 6F just those mo
0001F0: 64 75 6C 65 73 20 77 68 69 63 68 20 73 61 74 69 dules which sati
Size : 512 (Real : 512)
000000: 6D 20 3D 20 67 6F 74 65 70 20 3D 20 67 6F 74 78 m = gotep = gotx
000010: 72 20 3D 20 67 6F 74 6C 61 62 65 6C 20 3D 20 30 r = gotlabel = 0
000020: 3B 0D 0A 20 20 69 66 28 21 69 73 64 69 67 69 74 ;.. if(!isdigit
000030: 28 2A 61 74 29 29 20 7B 0D 0A 20 20 20 20 77 68 (*at)) {.. wh
000040: 69 6C 65 28 59 45 53 29 20 7B 0D 0A 20 20 20 20 ile(YES) {..
000050: 20 20 73 77 69 74 63 68 28 74 6F 75 70 70 65 72 switch(toupper
000060: 28 2A 61 74 29 29 20 7B 0D 0A 20 20 20 20 20 20 (*at)) {..
000070: 20 20 63 61 73 65 20 27 23 27 3A 0D 0A 20 20 20 case '#':..
000080: 20 20 20 20 20 20 20 69 66 28 72 65 66 29 20 7B if(ref) {
000090: 67 6F 74 78 72 20 3D 20 59 45 53 3B 20 69 66 28 gotxr = YES; if(
0000A0: 2A 2B 2B 61 74 20 3D 3D 20 27 23 27 29 20 2B 2B *++at == '#') ++
0000B0: 61 74 3B 20 62 72 65 61 6B 3B 7D 0D 0A 20 20 20 at; break;}..
0000C0: 20 20 20 20 20 64 65 66 61 75 6C 74 3A 0D 0A 20 default:..
0000D0: 20 20 20 20 20 20 20 20 20 69 66 28 72 65 66 29 if(ref)
0000E0: 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 20 20 20 break;..
0000F0: 20 20 20 62 61 64 73 79 6D 20 3D 20 59 45 53 3B badsym = YES;
000100: 0D 0A 20 20 20 20 20 20 20 20 63 61 73 65 20 27 .. case '
000110: 41 27 3A 20 63 61 73 65 20 27 42 27 3A 20 63 61 A': case 'B': ca
000120: 73 65 20 27 43 27 3A 20 63 61 73 65 20 27 44 27 se 'C': case 'D'
000130: 3A 20 63 61 73 65 20 27 45 27 3A 0D 0A 20 20 20 : case 'E':..
000140: 20 20 20 20 20 63 61 73 65 20 27 46 27 3A 20 63 case 'F': c
000150: 61 73 65 20 27 47 27 3A 20 63 61 73 65 20 27 48 ase 'G': case 'H
000160: 27 3A 20 63 61 73 65 20 27 49 27 3A 20 63 61 73 ': case 'I': cas
000170: 65 20 27 4A 27 3A 0D 0A 20 20 20 20 20 20 20 20 e 'J':..
000180: 63 61 73 65 20 27 4B 27 3A 20 63 61 73 65 20 27 case 'K': case '
000190: 4C 27 3A 20 63 61 73 65 20 27 4D 27 3A 20 63 61 L': case 'M': ca
0001A0: 73 65 20 27 4E 27 3A 20 63 61 73 65 20 27 4F 27 se 'N': case 'O'
0001B0: 3A 0D 0A 20 20 20 20 20 20 20 20 63 61 73 65 20 :.. case
0001C0: 27 50 27 3A 20 63 61 73 65 20 27 51 27 3A 20 63 'P': case 'Q': c
0001D0: 61 73 65 20 27 52 27 3A 20 63 61 73 65 20 27 53 ase 'R': case 'S
0001E0: 27 3A 20 63 61 73 65 20 27 54 27 3A 0D 0A 20 20 ': case 'T':..
0001F0: 20 20 20 20 20 20 63 61 73 65 20 27 55 27 3A 20 case 'U':
Size : 512 (Real : 512)
000000: 73 66 79 20 6F 6E 65 20 6F 72 20 6D 6F 72 65 0D sfy one or more.
000010: 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 20 20 20 .**
000020: 20 20 20 20 20 20 20 75 6E 72 65 73 6F 6C 76 65 unresolve
000030: 64 20 65 78 74 65 72 6E 61 6C 20 72 65 66 65 72 d external refer
000040: 65 6E 63 65 73 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 4E ences...**..** N
000050: 4F 54 45 3A 20 4D 65 72 65 6C 79 20 64 65 63 6C OTE: Merely decl
000060: 61 72 69 6E 67 20 61 20 73 79 6D 62 6F 6C 20 74 aring a symbol t
000070: 6F 20 62 65 20 65 78 74 65 72 6E 61 6C 20 77 69 o be external wi
000080: 6C 6C 20 63 61 75 73 65 0D 0A 2A 2A 20 69 74 27 ll cause..** it'
000090: 73 20 6D 6F 64 75 6C 65 20 74 6F 20 62 65 20 6C s module to be l
0000A0: 6F 61 64 65 64 2E 20 20 49 74 20 6E 65 65 64 20 oaded. It need
0000B0: 6E 6F 74 20 61 63 74 75 61 6C 6C 79 20 62 65 20 not actually be
0000C0: 72 65 66 65 72 65 6E 63 65 64 2E 0D 0A 2A 2A 0D referenced...**.
0000D0: 0A 2A 2A 20 4E 4F 54 45 3A 20 54 68 65 20 73 79 .** NOTE: The sy
0000E0: 6D 62 6F 6C 20 54 4D 4E 41 4D 45 20 69 73 20 64 mbol TMNAME is d
0000F0: 65 66 69 6E 65 64 20 74 6F 20 62 65 20 74 68 65 efined to be the
000100: 20 6E 61 6D 65 20 6F 66 20 74 68 65 0D 0A 2A 2A name of the..**
000110: 20 74 65 72 6D 69 6E 61 6C 20 6D 6F 64 75 6C 65 terminal module
000120: 3B 20 69 2E 65 2E 2C 20 74 68 65 20 6D 6F 64 75 ; i.e., the modu
000130: 6C 65 20 77 68 69 63 68 20 6D 75 73 74 20 62 65 le which must be
000140: 20 6C 6F 61 64 65 64 20 6C 61 73 74 0D 0A 2A 2A loaded last..**
000150: 20 6F 66 20 61 6C 6C 2E 20 20 54 68 61 74 20 6D of all. That m
000160: 6F 64 75 6C 65 20 63 6F 6E 74 61 69 6E 73 20 73 odule contains s
000170: 70 65 63 69 61 6C 20 63 6F 64 65 20 77 68 69 63 pecial code whic
000180: 68 20 69 64 65 6E 74 69 66 69 65 73 0D 0A 2A 2A h identifies..**
000190: 20 74 68 65 20 70 68 79 73 69 63 61 6C 20 65 6E the physical en
0001A0: 64 20 6F 66 20 74 68 65 20 70 72 6F 67 72 61 6D d of the program
0001B0: 20 61 6E 64 20 74 68 65 20 62 65 67 69 6E 6E 69 and the beginni
0001C0: 6E 67 20 6F 66 20 66 72 65 65 0D 0A 2A 2A 20 6D ng of free..** m
0001D0: 65 6D 6F 72 79 2E 20 20 54 68 65 20 6C 69 6E 6B emory. The link
0001E0: 65 72 20 69 73 20 73 65 6E 73 69 74 69 76 65 20 er is sensitive
0001F0: 74 6F 20 69 74 73 20 6E 61 6D 65 20 61 6E 64 20 to its name and
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 2D 31 09 09 2F 2A 20 76 -1../* v
000010: 61 6C 75 65 20 6F 66 20 72 65 73 6F 6C 76 65 64 alue of resolved
000020: 20 65 78 74 20 72 65 66 20 2A 2F 0D 0A 23 64 65 ext ref */..#de
000030: 66 69 6E 65 20 58 52 50 4C 55 53 20 20 20 20 20 fine XRPLUS
000040: 2D 32 09 09 2F 2A 20 65 78 74 2D 72 65 66 2D 70 -2../* ext-ref-p
000050: 6C 75 73 2D 6F 66 66 73 65 74 20 66 6C 61 67 20 lus-offset flag
000060: 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 54 4D 4E 41 */..#define TMNA
000070: 4D 45 20 20 20 22 45 4E 44 22 09 09 2F 2A 20 74 ME "END"../* t
000080: 65 72 6D 69 6E 61 6C 20 6D 6F 64 75 6C 65 20 6E erminal module n
000090: 61 6D 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 ame */..#define
0000A0: 4D 4F 44 45 58 54 20 20 22 2E 52 45 4C 22 0D 0A MODEXT ".REL"..
0000B0: 23 64 65 66 69 6E 65 20 4C 49 42 45 58 54 20 20 #define LIBEXT
0000C0: 22 2E 4C 49 42 22 0D 0A 23 64 65 66 69 6E 65 20 ".LIB"..#define
0000D0: 4E 44 58 45 58 54 20 20 22 2E 4E 44 58 22 0D 0A NDXEXT ".NDX"..
0000E0: 23 64 65 66 69 6E 65 20 43 4F 4D 45 58 54 20 20 #define COMEXT
0000F0: 22 2E 43 4F 4D 22 0D 0A 23 64 65 66 69 6E 65 20 ".COM"..#define
000100: 4C 47 4F 45 58 54 20 20 22 2E 4C 47 4F 22 0D 0A LGOEXT ".LGO"..
000110: 23 64 65 66 69 6E 65 20 4F 46 4C 45 58 54 20 20 #define OFLEXT
000120: 20 22 2E 4F 24 22 0D 0A 23 64 65 66 69 6E 65 20 ".O$"..#define
000130: 52 45 46 45 58 54 20 20 20 22 2E 52 24 22 0D 0A REFEXT ".R$"..
000140: 0D 0A 2F 2A 0D 0A 2A 2A 20 73 79 6D 62 6F 6C 20 ../*..** symbol
000150: 74 61 62 6C 65 20 64 65 66 69 6E 69 74 69 6F 6E table definition
000160: 73 0D 0A 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4E s..*/..#define N
000170: 58 54 20 20 20 20 30 09 09 2F 2A 20 6E 65 78 74 XT 0../* next
000180: 2D 65 6E 74 72 79 20 70 6F 69 6E 74 65 72 20 2A -entry pointer *
000190: 2F 0D 0A 23 64 65 66 69 6E 65 20 56 41 4C 20 20 /..#define VAL
0001A0: 20 20 32 09 09 2F 2A 20 6F 66 66 73 65 74 20 76 2../* offset v
0001B0: 61 6C 75 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 alue */..#define
0001C0: 20 53 59 4D 20 20 20 20 34 09 09 2F 2A 20 73 79 SYM 4../* sy
0001D0: 6D 62 6F 6C 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 mbol */..#define
0001E0: 20 53 53 5A 20 28 53 59 4D 2B 4D 41 58 53 59 4D SSZ (SYM+MAXSYM
0001F0: 2B 31 29 09 2F 2A 20 73 69 7A 65 20 6F 66 20 74 +1)./* size of t
Size : 512 (Real : 512)
000000: 77 61 69 74 73 20 75 6E 74 69 6C 0D 0A 2A 2A 20 waits until..**
000010: 61 6C 6C 20 6F 74 68 65 72 20 6D 6F 64 75 6C 65 all other module
000020: 73 20 61 72 65 20 6C 6F 61 64 65 64 20 62 65 66 s are loaded bef
000030: 6F 72 65 20 6C 6F 61 64 69 6E 67 20 74 68 65 20 ore loading the
000040: 74 65 72 6D 69 6E 61 6C 20 6D 6F 64 75 6C 65 2E terminal module.
000050: 0D 0A 2A 2A 0D 0A 2A 2A 20 54 68 65 20 61 62 73 ..**..** The abs
000060: 65 6E 63 65 20 6F 66 20 61 6E 20 65 78 74 65 6E ence of an exten
000070: 73 69 6F 6E 2C 20 6F 72 20 61 20 2E 52 45 4C 20 sion, or a .REL
000080: 65 78 74 65 6E 73 69 6F 6E 2C 20 69 64 65 6E 74 extension, ident
000090: 69 66 69 65 73 20 61 20 6D 6F 64 75 6C 65 3B 0D ifies a module;.
0000A0: 0A 2A 2A 20 77 68 65 72 65 61 73 2C 20 61 20 2E .** whereas, a .
0000B0: 4C 49 42 20 65 78 74 65 6E 73 69 6F 6E 20 69 64 LIB extension id
0000C0: 65 6E 74 69 66 69 65 73 20 61 20 6C 69 62 72 61 entifies a libra
0000D0: 72 79 2E 20 20 49 66 20 6E 65 63 65 73 73 61 72 ry. If necessar
0000E0: 79 2C 20 61 0D 0A 2A 2A 20 6C 69 62 72 61 72 79 y, a..** library
0000F0: 20 69 73 20 72 65 73 63 61 6E 6E 65 64 20 74 6F is rescanned to
000100: 20 72 65 73 6F 6C 76 65 20 62 61 63 6B 77 61 72 resolve backwar
000110: 64 20 65 78 74 65 72 6E 61 6C 20 72 65 66 65 72 d external refer
000120: 65 6E 63 65 73 20 62 65 74 77 65 65 6E 0D 0A 2A ences between..*
000130: 2A 20 6D 6F 64 75 6C 65 73 20 77 69 74 68 69 6E * modules within
000140: 20 74 68 65 20 6C 69 62 72 61 72 79 2E 20 4D 6F the library. Mo
000150: 64 75 6C 65 20 66 69 6C 65 73 20 61 6E 64 20 6C dule files and l
000160: 69 62 72 61 72 69 65 73 20 61 72 65 20 70 72 6F ibraries are pro
000170: 63 65 73 73 65 64 0D 0A 2A 2A 20 69 6E 20 74 68 cessed..** in th
000180: 65 20 6F 72 64 65 72 20 69 6E 20 77 68 69 63 68 e order in which
000190: 20 74 68 65 79 20 6F 63 63 75 72 20 69 6E 20 74 they occur in t
0001A0: 68 65 20 63 6F 6D 6D 61 6E 64 20 6C 69 6E 65 2E he command line.
0001B0: 0D 0A 2A 2A 0D 0A 2A 2A 20 44 72 69 76 65 20 44 ..**..** Drive D
0001C0: 65 73 69 67 6E 61 74 6F 72 73 20 28 65 2E 67 2E esignators (e.g.
0001D0: 20 42 3A 29 3A 0D 0A 2A 2A 20 20 20 20 2D 20 61 B:):..** - a
0001E0: 6C 6C 6F 77 65 64 20 77 69 74 68 20 6D 6F 64 75 llowed with modu
0001F0: 6C 65 20 61 6E 64 20 6C 69 62 72 61 72 79 20 6E le and library n
Size : 512 (Real : 512)
000000: 61 62 6C 65 20 65 6E 74 72 79 20 2A 2F 0D 0A 23 able entry */..#
000010: 64 65 66 69 6E 65 20 48 49 47 48 20 31 32 37 09 define HIGH 127.
000020: 09 2F 2A 20 68 69 67 68 2D 76 61 6C 75 65 20 62 ./* high-value b
000030: 79 74 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 yte */..#define
000040: 43 55 53 48 49 4F 4E 20 20 28 32 30 30 2A 53 53 CUSHION (200*SS
000050: 5A 29 09 2F 2A 20 72 65 73 65 72 76 65 64 20 66 Z)./* reserved f
000060: 6F 72 20 74 61 62 6C 65 20 61 74 20 6F 76 65 72 or table at over
000070: 66 6C 6F 77 20 70 6F 69 6E 74 20 2A 2F 0D 0A 63 flow point */..c
000080: 68 61 72 20 68 69 67 68 5B 5D 20 3D 20 7B 48 49 har high[] = {HI
000090: 47 48 2C 30 7D 3B 09 09 2F 2A 20 68 69 67 68 2D GH,0};../* high-
0000A0: 76 61 6C 75 65 20 73 79 6D 62 6F 6C 20 2A 2F 0D value symbol */.
0000B0: 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 67 6C 6F 62 61 6C .../*..** global
0000C0: 20 76 61 72 69 61 62 6C 65 73 0D 0A 2A 2F 0D 0A variables..*/..
0000D0: 63 68 61 72 0D 0A 20 2A 78 72 2C 09 09 09 09 2F char.. *xr,..../
0000E0: 2A 20 65 78 74 65 72 6E 61 6C 20 72 65 66 65 72 * external refer
0000F0: 65 6E 63 65 20 2A 2F 0D 0A 20 2A 6E 78 74 2C 09 ence */.. *nxt,.
000100: 09 09 09 2F 2A 20 6E 65 78 74 20 69 6E 20 65 78 .../* next in ex
000110: 74 20 72 65 66 20 63 68 61 69 6E 20 2A 2F 0D 0A t ref chain */..
000120: 20 2A 65 70 2C 09 09 09 09 2F 2A 20 65 6E 74 72 *ep,..../* entr
000130: 79 20 70 6F 69 6E 74 20 2A 2F 0D 0A 20 2A 62 75 y point */.. *bu
000140: 66 66 65 72 2C 09 09 09 2F 2A 20 62 65 67 69 6E ffer,.../* begin
000150: 6E 69 6E 67 20 6F 66 20 63 6F 64 65 20 62 75 66 ning of code buf
000160: 66 65 72 20 2A 2F 0D 0A 20 2A 62 6E 65 78 74 2C fer */.. *bnext,
000170: 09 09 09 2F 2A 20 6E 65 78 74 20 62 79 74 65 20 .../* next byte
000180: 69 6E 20 63 6F 64 65 20 62 75 66 66 65 72 20 2A in code buffer *
000190: 2F 0D 0A 20 2A 73 66 72 65 65 2C 09 09 09 2F 2A /.. *sfree,.../*
0001A0: 20 68 65 61 64 20 6F 66 20 66 72 65 65 64 20 65 head of freed e
0001B0: 6E 74 72 79 20 6C 69 73 74 20 2A 2F 0D 0A 20 2A ntry list */.. *
0001C0: 73 6E 65 78 74 2C 09 09 09 2F 2A 20 6E 65 78 74 snext,.../* next
0001D0: 20 73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 65 6E symbol table en
0001E0: 74 72 79 20 2A 2F 0D 0A 20 2A 63 6C 6F 63 2C 09 try */.. *cloc,.
0001F0: 09 09 09 2F 2A 20 6C 6F 63 61 74 69 6F 6E 20 63 .../* location c
Size : 512 (Real : 512)
000000: 61 6D 65 73 0D 0A 2A 2A 20 20 20 20 2D 20 70 72 ames..** - pr
000010: 6F 67 72 61 6D 20 64 72 69 76 65 20 64 65 73 69 ogram drive desi
000020: 67 6E 61 74 6F 72 20 6C 6F 63 61 74 65 73 20 74 gnator locates t
000030: 68 65 20 69 6E 70 75 74 20 2E 52 45 4C 20 66 69 he input .REL fi
000040: 6C 65 0D 0A 2A 2A 20 20 20 20 2D 20 6F 75 74 70 le..** - outp
000050: 75 74 20 67 6F 65 73 20 74 6F 20 74 68 65 20 64 ut goes to the d
000060: 65 66 61 75 6C 74 20 64 72 69 76 65 0D 0A 2A 2A efault drive..**
000070: 0D 0A 2A 2A 20 46 69 6C 65 6E 61 6D 65 20 45 78 ..** Filename Ex
000080: 74 65 6E 73 69 6F 6E 73 3A 0D 0A 2A 2A 20 20 20 tensions:..**
000090: 20 2D 20 6D 75 73 74 20 73 70 65 63 69 66 79 20 - must specify
0000A0: 2E 4C 49 42 20 77 69 74 68 20 6C 69 62 72 61 72 .LIB with librar
0000B0: 79 20 6E 61 6D 65 0D 0A 2A 2A 20 20 20 20 2D 20 y name..** -
0000C0: 73 74 61 6E 64 61 72 64 20 65 78 74 65 6E 73 69 standard extensi
0000D0: 6F 6E 73 20 61 72 65 3A 0D 0A 2A 2A 0D 0A 2A 2A ons are:..**..**
0000E0: 20 20 20 20 20 2E 52 45 4C 20 3D 20 72 65 6C 6F .REL = relo
0000F0: 63 61 74 61 62 6C 65 20 6F 62 6A 65 63 74 20 6D catable object m
000100: 6F 64 75 6C 65 0D 0A 2A 2A 20 20 20 20 20 2E 4C odule..** .L
000110: 49 42 20 3D 20 6C 69 62 72 61 72 79 20 6F 66 20 IB = library of
000120: 6F 62 6A 65 63 74 20 6D 6F 64 75 6C 65 73 0D 0A object modules..
000130: 2A 2A 20 20 20 20 20 2E 4E 44 58 20 3D 20 69 6E ** .NDX = in
000140: 64 65 78 20 74 6F 20 6C 69 62 72 61 72 79 20 28 dex to library (
000150: 6E 6F 74 20 75 73 65 72 20 73 70 65 63 69 66 69 not user specifi
000160: 65 64 29 0D 0A 2A 2A 20 20 20 20 20 2E 43 4F 4D ed)..** .COM
000170: 20 3D 20 43 50 2F 4D 20 63 6F 6D 6D 61 6E 64 20 = CP/M command
000180: 66 69 6C 65 20 28 64 65 66 61 75 6C 74 20 6F 75 file (default ou
000190: 74 70 75 74 29 0D 0A 2A 2A 20 20 20 20 20 2E 4C tput)..** .L
0001A0: 47 4F 20 3D 20 6C 6F 61 64 2D 61 6E 64 2D 67 6F GO = load-and-go
0001B0: 20 66 69 6C 65 20 28 2D 47 23 20 6F 75 74 70 75 file (-G# outpu
0001C0: 74 29 0D 0A 2A 2A 20 20 20 20 20 2E 4F 24 20 20 t)..** .O$
0001D0: 3D 20 74 65 6D 70 6F 72 61 72 79 20 6F 76 65 72 = temporary over
0001E0: 66 6C 6F 77 20 66 69 6C 65 0D 0A 2A 2A 20 20 20 flow file..**
0001F0: 20 20 2E 52 24 20 20 3D 20 74 65 6D 70 6F 72 61 .R$ = tempora
Size : 512 (Real : 512)
000000: 6F 75 6E 74 65 72 20 2A 2F 0D 0A 20 2A 63 6D 6F ounter */.. *cmo
000010: 64 2C 09 09 09 09 2F 2A 20 6D 6F 64 75 6C 65 20 d,..../* module
000020: 6C 6F 63 61 74 69 6F 6E 20 2A 2F 0D 0A 20 2A 63 location */.. *c
000030: 62 61 73 65 2C 09 09 09 2F 2A 20 62 61 73 65 20 base,.../* base
000040: 61 64 64 72 65 73 73 20 2A 2F 0D 0A 20 2A 63 73 address */.. *cs
000050: 69 7A 65 2C 09 09 09 2F 2A 20 70 72 6F 67 72 61 ize,.../* progra
000060: 6D 20 73 69 7A 65 20 28 66 61 6B 65 20 75 6E 73 m size (fake uns
000070: 69 67 6E 65 64 29 20 2A 2F 0D 0A 20 2A 67 6F 6C igned) */.. *gol
000080: 6F 63 2C 09 09 09 2F 2A 20 67 6F 20 6C 6F 63 61 oc,.../* go loca
000090: 74 69 6F 6E 20 2A 2F 0D 0A 20 2A 63 64 69 73 6B tion */.. *cdisk
0000A0: 2C 09 09 09 2F 2A 20 64 69 73 6B 20 6F 76 65 72 ,.../* disk over
0000B0: 66 6C 6F 77 20 6C 6F 63 61 74 69 6F 6E 20 2A 2F flow location */
0000C0: 0D 0A 20 2A 65 70 66 69 72 73 74 2C 09 09 09 2F .. *epfirst,.../
0000D0: 2A 20 66 69 72 73 74 20 65 6E 74 72 79 20 70 6F * first entry po
0000E0: 69 6E 74 20 2A 2F 0D 0A 20 2A 65 70 70 72 65 76 int */.. *epprev
0000F0: 2C 09 09 09 2F 2A 20 70 72 65 76 69 6F 75 73 20 ,.../* previous
000100: 65 6E 74 72 79 20 70 6F 69 6E 74 20 2A 2F 0D 0A entry point */..
000110: 20 2A 65 70 6E 65 78 74 2C 09 09 09 2F 2A 20 6E *epnext,.../* n
000120: 65 78 74 20 65 6E 74 72 79 20 70 6F 69 6E 74 20 ext entry point
000130: 2A 2F 0D 0A 20 2A 78 72 66 69 72 73 74 2C 09 09 */.. *xrfirst,..
000140: 09 2F 2A 20 66 69 72 73 74 20 65 78 74 65 72 6E ./* first extern
000150: 61 6C 20 72 65 66 65 72 65 6E 63 65 20 2A 2F 0D al reference */.
000160: 0A 20 2A 78 72 70 72 65 76 2C 09 09 09 2F 2A 20 . *xrprev,.../*
000170: 70 72 65 76 69 6F 75 73 20 65 78 74 65 72 6E 61 previous externa
000180: 6C 20 72 65 66 65 72 65 6E 63 65 20 2A 2F 0D 0A l reference */..
000190: 20 2A 78 72 6E 65 78 74 2C 09 09 09 2F 2A 20 6E *xrnext,.../* n
0001A0: 65 78 74 20 65 78 74 65 72 6E 61 6C 20 72 65 66 ext external ref
0001B0: 65 72 65 6E 63 65 20 2A 2F 0D 0A 20 20 6D 6F 64 erence */.. mod
0001C0: 6E 61 6D 65 5B 4D 41 58 53 59 4D 2B 31 5D 2C 09 name[MAXSYM+1],.
0001D0: 09 2F 2A 20 6E 61 6D 65 20 6F 66 20 63 75 72 72 ./* name of curr
0001E0: 65 6E 74 20 6D 6F 64 75 6C 65 20 2A 2F 0D 0A 20 ent module */..
0001F0: 20 69 6E 66 6E 20 20 20 5B 4E 41 4D 45 53 49 5A infn [NAMESIZ
Size : 512 (Real : 512)
000000: 72 79 20 72 65 66 65 72 65 6E 63 65 20 66 69 6C ry reference fil
000010: 65 0D 0A 2A 2A 0D 0A 2A 2A 20 45 6E 74 65 72 20 e..**..** Enter
000020: 63 6F 6E 74 72 6F 6C 2D 53 20 74 6F 20 70 61 75 control-S to pau
000030: 73 65 20 61 6E 64 20 63 6F 6E 74 72 6F 6C 2D 43 se and control-C
000040: 20 74 6F 20 61 62 6F 72 74 2E 0D 0A 2A 2A 0D 0A to abort...**..
000050: 2A 2A 20 4E 4F 54 45 3A 20 43 6F 6D 70 69 6C 65 ** NOTE: Compile
000060: 20 6F 6E 6C 79 20 77 69 74 68 20 53 6D 61 6C 6C only with Small
000070: 2D 43 20 32 2E 31 20 28 65 64 69 74 20 6C 65 76 -C 2.1 (edit lev
000080: 65 6C 20 36 33 29 20 6F 72 20 6C 61 74 65 72 2E el 63) or later.
000090: 0D 0A 2A 2A 20 45 64 69 74 20 36 33 20 66 69 78 ..** Edit 63 fix
0000A0: 65 73 20 43 53 59 53 4C 49 42 20 73 6F 20 74 68 es CSYSLIB so th
0000B0: 61 74 20 77 68 65 6E 20 69 74 20 6F 76 65 72 66 at when it overf
0000C0: 6C 6F 77 73 20 61 20 62 75 66 66 65 72 20 77 68 lows a buffer wh
0000D0: 69 6C 65 0D 0A 2A 2A 20 77 72 69 74 69 6E 67 20 ile..** writing
0000E0: 69 6E 74 6F 20 61 20 66 69 6C 65 20 69 74 20 77 into a file it w
0000F0: 69 6C 6C 20 6E 6F 20 6C 6F 6E 67 65 72 20 61 73 ill no longer as
000100: 73 75 6D 65 20 74 68 61 74 20 69 74 20 69 73 20 sume that it is
000110: 61 74 20 74 68 65 0D 0A 2A 2A 20 65 6E 64 20 6F at the..** end o
000120: 66 20 74 68 65 20 66 69 6C 65 2E 20 20 54 68 69 f the file. Thi
000130: 73 20 70 72 65 76 65 6E 74 73 20 69 74 20 66 72 s prevents it fr
000140: 6F 6D 20 70 61 64 64 69 6E 67 20 61 20 73 65 63 om padding a sec
000150: 74 6F 72 20 77 69 74 68 0D 0A 2A 2A 20 31 41 20 tor with..** 1A
000160: 28 68 65 78 29 20 69 6E 20 74 68 65 20 6D 69 64 (hex) in the mid
000170: 64 6C 65 20 6F 66 20 61 20 66 69 6C 65 20 77 68 dle of a file wh
000180: 65 6E 20 72 61 6E 64 6F 6D 20 61 63 63 65 73 73 en random access
000190: 20 69 73 20 62 65 69 6E 67 20 75 73 65 64 2E 0D is being used..
0001A0: 0A 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 73 .*/..#include <s
0001B0: 74 64 69 6F 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 tdio.h>..#includ
0001C0: 65 20 22 6E 6F 74 69 63 65 2E 68 22 0D 0A 23 69 e "notice.h"..#i
0001D0: 6E 63 6C 75 64 65 20 22 72 65 6C 2E 68 22 0D 0A nclude "rel.h"..
0001E0: 0D 0A 23 64 65 66 69 6E 65 20 4E 4F 44 45 42 55 ..#define NODEBU
0001F0: 47 09 09 09 2F 2A 20 64 6F 6E 27 74 20 63 6F 6D G.../* don't com
Size : 512 (Real : 512)
000000: 45 5D 2C 09 09 2F 2A 20 69 6E 70 75 74 20 66 69 E],../* input fi
000010: 6C 65 6E 61 6D 65 20 2A 2F 0D 0A 20 20 6E 64 78 lename */.. ndx
000020: 66 6E 20 20 5B 4E 41 4D 45 53 49 5A 45 5D 2C 09 fn [NAMESIZE],.
000030: 09 2F 2A 20 69 6E 64 65 78 20 66 69 6C 65 6E 61 ./* index filena
000040: 6D 65 20 2A 2F 0D 0A 20 20 74 6D 66 6E 20 20 20 me */.. tmfn
000050: 5B 4E 41 4D 45 53 49 5A 45 5D 2C 09 09 2F 2A 20 [NAMESIZE],../*
000060: 74 65 72 6D 69 6E 61 6C 2D 6D 6F 64 75 6C 65 20 terminal-module
000070: 6C 69 62 72 61 72 79 20 6E 61 6D 65 20 2A 2F 0D library name */.
000080: 0A 20 20 63 73 66 6E 20 20 20 5B 4E 41 4D 45 53 . csfn [NAMES
000090: 49 5A 45 5D 2C 09 09 2F 2A 20 63 6F 64 65 20 73 IZE],../* code s
0000A0: 65 67 20 66 69 6C 65 6E 61 6D 65 20 2A 2F 0D 0A eg filename */..
0000B0: 20 20 63 72 66 6E 20 20 20 5B 4E 41 4D 45 53 49 crfn [NAMESI
0000C0: 5A 45 5D 2C 09 09 2F 2A 20 63 6F 64 65 20 72 65 ZE],../* code re
0000D0: 6C 20 66 69 6C 65 6E 61 6D 65 20 2A 2F 0D 0A 20 l filename */..
0000E0: 20 6F 75 74 66 6E 20 20 5B 4E 41 4D 45 53 49 5A outfn [NAMESIZ
0000F0: 45 5D 3B 09 09 2F 2A 20 6F 75 74 70 75 74 20 66 E];../* output f
000100: 69 6C 65 6E 61 6D 65 20 2A 2F 0D 0A 0D 0A 69 6E ilename */....in
000110: 74 0D 0A 20 20 6C 67 6F 2C 09 09 2F 2A 20 6C 6F t.. lgo,../* lo
000120: 61 64 2D 61 6E 64 2D 67 6F 20 66 6F 72 6D 61 74 ad-and-go format
000130: 3F 20 2A 2F 0D 0A 20 20 6D 6F 6E 69 74 6F 72 2C ? */.. monitor,
000140: 09 2F 2A 20 6D 6F 6E 69 74 6F 72 20 61 63 74 69 ./* monitor acti
000150: 76 69 74 79 3F 20 2A 2F 0D 0A 20 20 69 6E 73 74 vity? */.. inst
000160: 72 2C 09 2F 2A 20 69 6E 73 74 72 75 63 74 69 6F r,./* instructio
000170: 6E 20 74 6F 20 70 6C 61 6E 74 20 61 74 20 30 30 n to plant at 00
000180: 30 30 20 2A 2F 0D 0A 20 20 61 64 64 72 2C 09 09 00 */.. addr,..
000190: 2F 2A 20 73 74 61 72 74 20 61 64 64 72 65 73 73 /* start address
0001A0: 20 2A 2F 0D 0A 20 20 72 65 66 2C 09 09 2F 2A 20 */.. ref,../*
0001B0: 72 65 66 65 72 65 6E 63 65 20 74 6F 20 70 72 6F reference to pro
0001C0: 67 72 61 6D 20 72 65 6C 61 74 69 76 65 20 69 74 gram relative it
0001D0: 65 6D 20 2A 2F 0D 0A 20 20 62 69 67 2C 09 09 2F em */.. big,../
0001E0: 2A 20 6C 69 6E 6B 69 6E 67 20 61 20 62 69 67 20 * linking a big
0001F0: 70 72 6F 67 72 61 6D 3F 20 2A 2F 0D 0A 20 20 78 program? */.. x
Size : 512 (Real : 512)
000000: 70 69 6C 65 20 64 65 62 75 67 20 64 69 73 70 6C pile debug displ
000010: 61 79 73 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 ays */..#define
000020: 4E 4F 43 43 41 52 47 43 09 09 2F 2A 20 64 6F 6E NOCCARGC../* don
000030: 27 74 20 70 61 73 73 20 61 72 67 20 63 6F 75 6E 't pass arg coun
000040: 74 73 20 74 6F 20 66 75 6E 63 74 69 6F 6E 73 20 ts to functions
000050: 2A 2F 0D 0A 0D 0A 23 64 65 66 69 6E 65 20 4E 41 */....#define NA
000060: 4D 45 53 49 5A 45 20 20 20 31 35 0D 0A 23 64 65 MESIZE 15..#de
000070: 66 69 6E 65 20 4D 41 58 46 49 4C 20 20 20 20 20 fine MAXFIL
000080: 31 30 0D 0A 23 64 65 66 69 6E 65 20 53 54 41 43 10..#define STAC
000090: 4B 20 20 20 20 20 35 31 32 09 09 2F 2A 20 61 6C K 512../* al
0000A0: 6C 6F 77 20 66 6F 72 20 73 74 61 63 6B 20 73 70 low for stack sp
0000B0: 61 63 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 ace */..#define
0000C0: 41 55 58 42 55 46 20 20 20 32 30 34 38 09 09 2F AUXBUF 2048../
0000D0: 2A 20 61 75 78 20 62 75 66 66 65 72 20 66 6F 72 * aux buffer for
0000E0: 20 72 65 66 65 72 65 6E 63 65 20 66 69 6C 65 20 reference file
0000F0: 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4D 41 58 4F */..#define MAXO
000100: 50 45 4E 20 20 20 20 20 34 09 09 2F 2A 20 6D 61 PEN 4../* ma
000110: 78 69 6D 75 6D 20 66 69 6C 65 73 20 6F 70 65 6E ximum files open
000120: 65 64 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4F ed */..#define O
000130: 48 44 4F 50 45 4E 20 20 20 31 36 34 09 09 2F 2A HDOPEN 164../*
000140: 20 6D 65 6D 65 72 79 20 6F 76 65 72 68 65 61 64 memery overhead
000150: 20 70 65 72 20 6F 70 65 6E 20 66 69 6C 65 20 2A per open file *
000160: 2F 0D 0A 23 64 65 66 69 6E 65 20 43 4F 4D 42 41 /..#define COMBA
000170: 53 45 20 20 20 32 35 39 09 09 2F 2A 20 30 31 30 SE 259../* 010
000180: 30 48 20 2B 20 33 20 2A 2F 0D 0A 23 64 65 66 69 0H + 3 */..#defi
000190: 6E 65 20 52 45 54 20 20 20 20 20 20 20 32 30 31 ne RET 201
0001A0: 09 09 2F 2A 20 52 45 54 20 69 6E 73 74 72 75 63 ../* RET instruc
0001B0: 74 69 6F 6E 20 28 30 43 39 48 29 20 2A 2F 0D 0A tion (0C9H) */..
0001C0: 23 64 65 66 69 6E 65 20 4A 4D 50 20 20 20 20 20 #define JMP
0001D0: 20 20 31 39 35 09 09 2F 2A 20 4A 4D 50 20 69 6E 195../* JMP in
0001E0: 73 74 72 75 63 74 69 6F 6E 20 28 30 43 33 48 29 struction (0C3H)
0001F0: 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 52 45 53 */..#define RES
Size : 512 (Real : 512)
000000: 72 70 6C 75 73 2C 09 2F 2A 20 76 61 6C 75 65 20 rplus,./* value
000010: 6F 66 20 6F 66 66 73 65 74 20 66 6F 72 20 6E 65 of offset for ne
000020: 78 74 20 65 78 74 20 72 65 66 20 2A 2F 0D 0A 20 xt ext ref */..
000030: 20 78 72 70 66 6C 61 67 3D 58 52 50 4C 55 53 2C xrpflag=XRPLUS,
000040: 09 2F 2A 20 76 61 6C 75 65 20 6F 66 20 78 72 70 ./* value of xrp
000050: 6C 75 73 20 66 6C 61 67 20 2A 2F 0D 0A 20 20 6E lus flag */.. n
000060: 64 78 66 64 2C 09 2F 2A 20 69 6E 64 65 78 20 66 dxfd,./* index f
000070: 64 20 2A 2F 0D 0A 20 20 69 6E 62 6C 6F 63 6B 2C d */.. inblock,
000080: 09 2F 2A 20 62 6C 6F 63 6B 20 6F 66 20 6E 65 78 ./* block of nex
000090: 74 20 6C 69 62 72 61 72 79 20 6D 65 6D 62 65 72 t library member
0000A0: 20 2A 2F 0D 0A 20 20 69 6E 62 79 74 65 2C 09 2F */.. inbyte,./
0000B0: 2A 20 62 79 74 65 20 69 6E 20 62 6C 6F 63 6B 20 * byte in block
0000C0: 6F 66 20 6E 65 78 74 20 6C 69 62 72 61 72 79 20 of next library
0000D0: 6D 65 6D 62 65 72 20 2A 2F 0D 0A 20 20 74 6D 62 member */.. tmb
0000E0: 6C 6F 63 6B 2C 09 2F 2A 20 62 6C 6F 63 6B 20 6F lock,./* block o
0000F0: 66 20 74 65 72 6D 69 6E 61 6C 20 6D 6F 64 75 6C f terminal modul
000100: 65 20 69 6E 20 74 6D 66 6E 20 2A 2F 0D 0A 20 20 e in tmfn */..
000110: 74 6D 62 79 74 65 2C 09 2F 2A 20 62 79 74 65 20 tmbyte,./* byte
000120: 6F 66 20 74 65 72 6D 69 6E 61 6C 20 6D 6F 64 75 of terminal modu
000130: 6C 65 20 69 6E 20 74 6D 62 6C 6F 63 6B 20 2A 2F le in tmblock */
000140: 0D 0A 20 20 63 73 66 64 2C 09 09 2F 2A 20 63 6F .. csfd,../* co
000150: 64 65 20 73 65 67 6D 65 6E 74 20 66 64 20 2A 2F de segment fd */
000160: 0D 0A 20 20 63 72 66 64 2C 09 09 2F 2A 20 63 6F .. crfd,../* co
000170: 64 65 20 72 65 6C 61 74 69 76 65 20 69 6E 64 65 de relative inde
000180: 78 20 66 64 20 2A 2F 0D 0A 20 20 6F 75 74 66 64 x fd */.. outfd
000190: 3B 09 2F 2A 20 6F 75 74 70 75 74 20 66 64 20 2A ;./* output fd *
0001A0: 2F 0D 0A 0D 0A 65 78 74 65 72 6E 20 69 6E 74 20 /....extern int
0001B0: 55 63 68 72 70 6F 73 5B 5D 3B 09 09 2F 2A 20 6C Uchrpos[];../* l
0001C0: 69 76 65 73 20 69 6E 20 43 53 59 53 4C 49 42 20 ives in CSYSLIB
0001D0: 2A 2F 0D 0A 0D 0A 6D 61 69 6E 28 61 72 67 63 2C */....main(argc,
0001E0: 61 72 67 76 29 20 69 6E 74 20 61 72 67 63 2C 20 argv) int argc,
0001F0: 61 72 67 76 5B 5D 3B 20 7B 0D 0A 20 20 66 70 75 argv[]; {.. fpu
Size : 512 (Real : 512)
000000: 20 20 20 69 66 28 28 69 20 3D 20 73 74 72 63 6D if((i = strcm
000010: 70 28 73 79 6D 62 6F 6C 2C 20 78 72 6E 65 78 74 p(symbol, xrnext
000020: 20 2B 20 53 59 4D 29 29 20 3C 20 30 29 20 72 65 + SYM)) < 0) re
000030: 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 20 20 turn (NO);..
000040: 69 66 28 69 20 3D 3D 20 30 29 20 20 72 65 74 75 if(i == 0) retu
000050: 72 6E 20 28 59 45 53 29 3B 0D 0A 20 20 20 20 78 rn (YES);.. x
000060: 72 6E 65 78 74 20 3D 20 67 65 74 69 6E 74 28 78 rnext = getint(x
000070: 72 6E 65 78 74 29 3B 0D 0A 20 20 20 20 7D 0D 0A rnext);.. }..
000080: 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A return (NO);..
000090: 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 6C 69 }..../*..** li
0000A0: 6E 6B 20 65 78 74 65 72 6E 61 6C 20 72 65 66 65 nk external refe
0000B0: 72 65 6E 63 65 73 20 74 6F 20 65 6E 74 72 79 20 rences to entry
0000C0: 70 6F 69 6E 74 73 0D 0A 2A 2F 0D 0A 6C 69 6E 6B points..*/..link
0000D0: 28 29 20 7B 0D 0A 20 20 69 6E 74 20 63 73 70 67 () {.. int cspg
0000E0: 2C 20 63 73 63 68 3B 0D 0A 20 20 63 73 70 67 20 , csch;.. cspg
0000F0: 3D 20 63 74 65 6C 6C 28 63 73 66 64 29 3B 09 09 = ctell(csfd);..
000100: 09 2F 2A 20 72 65 6D 65 6D 62 65 72 20 74 65 6D ./* remember tem
000110: 70 20 66 69 6C 65 20 70 6F 73 69 74 69 6F 6E 20 p file position
000120: 2A 2F 0D 0A 20 20 63 73 63 68 20 3D 20 63 74 65 */.. csch = cte
000130: 6C 6C 63 28 63 73 66 64 29 3B 0D 0A 20 20 78 72 llc(csfd);.. xr
000140: 6E 65 78 74 20 3D 20 67 65 74 69 6E 74 28 78 72 next = getint(xr
000150: 70 72 65 76 20 3D 20 78 72 66 69 72 73 74 29 3B prev = xrfirst);
000160: 09 2F 2A 20 66 69 72 73 74 20 65 78 74 65 72 6E ./* first extern
000170: 61 6C 20 72 65 66 65 72 65 6E 63 65 20 2A 2F 0D al reference */.
000180: 0A 20 20 65 70 6E 65 78 74 20 3D 20 67 65 74 69 . epnext = geti
000190: 6E 74 28 65 70 66 69 72 73 74 29 3B 09 09 2F 2A nt(epfirst);../*
0001A0: 20 66 69 72 73 74 20 65 6E 74 72 79 20 70 6F 69 first entry poi
0001B0: 6E 74 20 2A 2F 0D 0A 20 20 77 68 69 6C 65 28 59 nt */.. while(Y
0001C0: 45 53 29 20 7B 0D 0A 20 20 20 20 69 66 28 73 74 ES) {.. if(st
0001D0: 72 63 6D 70 28 78 72 6E 65 78 74 20 2B 20 53 59 rcmp(xrnext + SY
0001E0: 4D 2C 20 65 70 6E 65 78 74 20 2B 20 53 59 4D 29 M, epnext + SYM)
0001F0: 20 3E 20 30 29 20 7B 09 2F 2A 20 78 72 20 3E 20 > 0) {./* xr >
Size : 512 (Real : 512)
000000: 74 73 28 22 53 6D 61 6C 6C 2D 4D 61 63 20 4C 69 ts("Small-Mac Li
000010: 6E 6B 61 67 65 20 45 64 69 74 6F 72 2C 20 22 2C nkage Editor, ",
000020: 20 73 74 64 65 72 72 29 3B 20 66 70 75 74 73 28 stderr); fputs(
000030: 56 45 52 53 49 4F 4E 2C 20 73 74 64 65 72 72 29 VERSION, stderr)
000040: 3B 0D 0A 20 20 66 70 75 74 73 28 43 52 49 47 48 ;.. fputs(CRIGH
000050: 54 31 2C 20 73 74 64 65 72 72 29 3B 0D 0A 20 20 T1, stderr);..
000060: 67 65 74 73 77 28 61 72 67 63 2C 20 61 72 67 76 getsw(argc, argv
000070: 29 3B 09 09 2F 2A 20 66 65 74 63 68 20 61 6E 64 );../* fetch and
000080: 20 72 65 6D 65 6D 62 65 72 20 73 77 69 74 63 68 remember switch
000090: 65 73 20 2A 2F 0D 0A 20 20 67 65 74 6D 65 6D 28 es */.. getmem(
0000A0: 29 3B 09 09 09 2F 2A 20 61 63 71 75 69 72 65 20 );.../* acquire
0000B0: 6D 61 78 69 6D 75 6D 20 6D 65 6D 6F 72 79 20 62 maximum memory b
0000C0: 75 66 66 65 72 20 2A 2F 0D 0A 20 20 70 68 61 73 uffer */.. phas
0000D0: 65 31 28 61 72 67 63 2C 20 61 72 67 76 29 3B 09 e1(argc, argv);.
0000E0: 09 2F 2A 20 6C 6F 61 64 20 61 6E 64 20 6C 69 6E ./* load and lin
0000F0: 6B 20 2A 2F 0D 0A 20 20 69 66 28 21 6F 6B 61 79 k */.. if(!okay
000100: 28 29 29 20 61 62 6F 72 74 28 37 29 3B 09 09 2F ()) abort(7);../
000110: 2A 20 71 75 69 74 20 65 61 72 6C 79 20 2A 2F 0D * quit early */.
000120: 0A 20 20 70 68 61 73 65 32 28 29 3B 09 09 09 2F . phase2();.../
000130: 2A 20 67 65 6E 65 72 61 74 65 20 66 69 6E 61 6C * generate final
000140: 20 6F 75 74 70 75 74 20 2A 2F 0D 0A 20 20 7D 0D output */.. }.
000150: 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 67 65 74 20 61 73 .../*..** get as
000160: 20 6D 75 63 68 20 6D 65 6D 6F 72 79 20 61 73 20 much memory as
000170: 70 6F 73 73 69 62 6C 65 20 66 6F 72 20 73 79 6D possible for sym
000180: 62 6F 6C 20 74 61 62 6C 65 0D 0A 2A 2F 0D 0A 67 bol table..*/..g
000190: 65 74 6D 65 6D 28 29 20 7B 0D 0A 20 20 63 68 61 etmem() {.. cha
0001A0: 72 20 73 7A 5B 38 5D 3B 0D 0A 20 20 69 6E 74 20 r sz[8];.. int
0001B0: 6D 61 78 3B 0D 0A 20 20 6D 61 78 20 3D 20 61 76 max;.. max = av
0001C0: 61 69 6C 28 59 45 53 29 3B 09 09 09 2F 2A 20 68 ail(YES);.../* h
0001D0: 6F 77 20 6D 75 63 68 20 61 76 61 69 6C 61 62 6C ow much availabl
0001E0: 65 3F 20 2A 2F 0D 0A 20 20 6D 61 78 20 2D 3D 20 e? */.. max -=
0001F0: 53 54 41 43 4B 20 2B 20 41 55 58 42 55 46 20 2B STACK + AUXBUF +
Size : 512 (Real : 512)
000000: 65 70 20 2A 2F 0D 0A 20 20 20 20 20 20 65 70 6E ep */.. epn
000010: 65 78 74 20 3D 20 67 65 74 69 6E 74 28 65 70 6E ext = getint(epn
000020: 65 78 74 29 3B 0D 0A 20 20 20 20 20 20 63 6F 6E ext);.. con
000030: 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 20 7D 0D tinue;.. }.
000040: 0A 20 20 20 20 69 66 28 73 74 72 63 6D 70 28 78 . if(strcmp(x
000050: 72 6E 65 78 74 20 2B 20 53 59 4D 2C 20 65 70 6E rnext + SYM, epn
000060: 65 78 74 20 2B 20 53 59 4D 29 20 3C 20 30 29 20 ext + SYM) < 0)
000070: 7B 09 2F 2A 20 78 72 20 3C 20 65 70 20 2A 2F 0D {./* xr < ep */.
000080: 0A 20 20 20 20 20 20 78 72 6E 65 78 74 20 3D 20 . xrnext =
000090: 67 65 74 69 6E 74 28 78 72 70 72 65 76 20 3D 20 getint(xrprev =
0000A0: 78 72 6E 65 78 74 29 3B 0D 0A 20 20 20 20 20 20 xrnext);..
0000B0: 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 continue;..
0000C0: 20 7D 0D 0A 20 20 20 20 69 66 28 2A 28 78 72 6E }.. if(*(xrn
0000D0: 65 78 74 20 2B 20 53 59 4D 29 20 21 3D 20 48 49 ext + SYM) != HI
0000E0: 47 48 29 20 7B 09 09 09 2F 2A 20 78 72 20 3D 20 GH) {.../* xr =
0000F0: 65 70 20 2A 2F 0D 0A 20 20 20 20 20 20 72 65 73 ep */.. res
000100: 6F 6C 76 65 28 29 3B 09 09 09 2F 2A 20 72 65 73 olve();.../* res
000110: 6F 6C 76 65 20 74 68 69 73 20 65 78 74 20 72 65 olve this ext re
000120: 66 20 2A 2F 0D 0A 20 20 20 20 20 20 70 75 74 69 f */.. puti
000130: 6E 74 28 78 72 70 72 65 76 2C 20 67 65 74 69 6E nt(xrprev, getin
000140: 74 28 78 72 6E 65 78 74 29 29 3B 09 2F 2A 20 64 t(xrnext));./* d
000150: 65 6C 69 6E 6B 20 66 72 6F 6D 20 78 72 20 63 68 elink from xr ch
000160: 61 69 6E 20 2A 2F 0D 0A 20 20 20 20 20 20 70 75 ain */.. pu
000170: 74 69 6E 74 28 78 72 6E 65 78 74 2C 20 73 66 72 tint(xrnext, sfr
000180: 65 65 29 3B 09 09 2F 2A 20 6C 69 6E 6B 20 74 6F ee);../* link to
000190: 20 70 72 65 76 20 66 72 65 65 64 20 65 6E 74 72 prev freed entr
0001A0: 79 20 2A 2F 0D 0A 20 20 20 20 20 20 73 66 72 65 y */.. sfre
0001B0: 65 20 3D 20 78 72 6E 65 78 74 3B 09 09 09 2F 2A e = xrnext;.../*
0001C0: 20 6D 61 6B 65 20 66 69 72 73 74 20 66 72 65 65 make first free
0001D0: 64 20 65 6E 74 72 79 20 2A 2F 0D 0A 20 20 20 20 d entry */..
0001E0: 20 20 78 72 6E 65 78 74 20 3D 20 67 65 74 69 6E xrnext = getin
0001F0: 74 28 78 72 70 72 65 76 29 3B 09 09 2F 2A 20 61 t(xrprev);../* a
Size : 512 (Real : 512)
000000: 20 28 4D 41 58 4F 50 45 4E 20 2A 20 4F 48 44 4F (MAXOPEN * OHDO
000010: 50 45 4E 29 3B 0D 0A 20 20 62 75 66 66 65 72 20 PEN);.. buffer
000020: 3D 20 62 6E 65 78 74 20 3D 20 6D 61 6C 6C 6F 63 = bnext = malloc
000030: 28 6D 61 78 29 3B 09 09 2F 2A 20 61 6C 6C 6F 63 (max);../* alloc
000040: 61 74 65 20 73 70 61 63 65 20 2A 2F 0D 0A 20 20 ate space */..
000050: 73 6E 65 78 74 20 20 3D 20 62 75 66 66 65 72 20 snext = buffer
000060: 2B 20 28 6D 61 78 20 2D 20 53 53 5A 29 3B 09 2F + (max - SSZ);./
000070: 2A 20 66 69 72 73 74 20 65 6E 74 72 79 20 2A 2F * first entry */
000080: 0D 0A 20 20 73 66 72 65 65 20 20 3D 20 30 3B 09 .. sfree = 0;.
000090: 09 09 09 2F 2A 20 6E 6F 20 72 65 75 73 61 62 6C .../* no reusabl
0000A0: 65 20 65 6E 74 72 69 65 73 20 79 65 74 20 2A 2F e entries yet */
0000B0: 0D 0A 23 69 66 64 65 66 20 44 45 42 55 47 0D 0A ..#ifdef DEBUG..
0000C0: 20 20 69 66 28 6D 6F 6E 69 74 6F 72 29 20 7B 69 if(monitor) {i
0000D0: 74 6F 75 28 6D 61 78 2C 20 73 7A 2C 20 38 29 3B tou(max, sz, 8);
0000E0: 20 70 75 74 73 32 28 73 7A 2C 20 22 20 42 79 74 puts2(sz, " Byt
0000F0: 65 20 42 75 66 66 65 72 22 29 3B 7D 0D 0A 23 65 e Buffer");}..#e
000100: 6E 64 69 66 0D 0A 20 20 6E 65 77 74 62 6C 28 26 ndif.. newtbl(&
000110: 65 70 66 69 72 73 74 29 3B 09 09 09 2F 2A 20 73 epfirst);.../* s
000120: 65 74 20 6C 6F 77 20 61 6E 64 20 68 69 67 68 20 et low and high
000130: 65 6E 74 20 70 74 73 20 2A 2F 0D 0A 20 20 6E 65 ent pts */.. ne
000140: 77 74 62 6C 28 26 78 72 66 69 72 73 74 29 3B 09 wtbl(&xrfirst);.
000150: 09 09 2F 2A 20 73 65 74 20 6C 6F 77 20 61 6E 64 ../* set low and
000160: 20 68 69 67 68 20 65 78 74 20 72 65 66 73 20 2A high ext refs *
000170: 2F 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A /.. }..../*..**
000180: 20 67 65 74 20 6E 65 78 74 20 6D 6F 64 75 6C 65 get next module
000190: 20 6E 61 6D 65 0D 0A 2A 2F 0D 0A 67 65 74 6E 61 name..*/..getna
0001A0: 6D 65 28 29 20 7B 0D 0A 20 20 69 66 28 67 65 74 me() {.. if(get
0001B0: 72 65 6C 28 29 20 3D 3D 20 50 4E 41 4D 45 29 20 rel() == PNAME)
0001C0: 7B 0D 0A 20 20 20 20 73 74 72 63 70 79 28 6D 6F {.. strcpy(mo
0001D0: 64 6E 61 6D 65 2C 20 73 79 6D 62 6F 6C 29 3B 0D dname, symbol);.
0001E0: 0A 20 20 20 20 72 65 74 75 72 6E 20 28 59 45 53 . return (YES
0001F0: 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 66 28 );.. }.. if(
Size : 512 (Real : 512)
000000: 64 76 61 6E 63 65 20 74 6F 20 6E 65 78 74 20 65 dvance to next e
000010: 78 74 20 72 65 66 20 2A 2F 0D 0A 20 20 20 20 20 xt ref */..
000020: 20 63 6F 6E 74 69 6E 75 65 3B 09 09 09 09 2F 2A continue;..../*
000030: 20 73 61 6D 65 20 65 78 74 20 72 65 66 20 69 6E same ext ref in
000040: 20 64 69 66 66 20 6D 6F 64 75 6C 65 73 3F 20 2A diff modules? *
000050: 2F 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 /.. }..
000060: 62 72 65 61 6B 3B 0D 0A 20 20 20 20 7D 0D 0A 20 break;.. }..
000070: 20 63 73 65 65 6B 28 63 73 66 64 2C 20 63 73 70 cseek(csfd, csp
000080: 67 2C 20 30 29 3B 09 09 09 2F 2A 20 72 65 73 74 g, 0);.../* rest
000090: 6F 72 65 20 74 65 6D 70 20 66 69 6C 65 20 70 6F ore temp file po
0000A0: 73 69 74 69 6F 6E 20 2A 2F 0D 0A 20 20 55 63 68 sition */.. Uch
0000B0: 72 70 6F 73 5B 63 73 66 64 5D 20 3D 20 63 73 63 rpos[csfd] = csc
0000C0: 68 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A h;.. }..../*..*
0000D0: 2A 20 6C 6F 61 64 20 61 20 6D 6F 64 75 6C 65 0D * load a module.
0000E0: 0A 2A 2F 0D 0A 6C 6F 61 64 28 29 20 7B 0D 0A 20 .*/..load() {..
0000F0: 20 63 68 61 72 20 73 74 72 5B 38 5D 3B 0D 0A 20 char str[8];..
000100: 20 65 70 70 72 65 76 20 3D 20 65 70 66 69 72 73 epprev = epfirs
000110: 74 3B 09 09 09 2F 2A 20 73 74 61 72 74 20 61 74 t;.../* start at
000120: 20 74 68 65 20 76 65 72 79 20 62 65 67 69 6E 6E the very beginn
000130: 69 6E 67 20 2A 2F 0D 0A 20 20 78 72 70 72 65 76 ing */.. xrprev
000140: 20 3D 20 78 72 66 69 72 73 74 3B 0D 0A 20 20 64 = xrfirst;.. d
000150: 6F 20 7B 0D 0A 20 20 20 20 70 6F 6C 6C 28 59 45 o {.. poll(YE
000160: 53 29 3B 0D 0A 20 20 20 20 73 77 69 74 63 68 28 S);.. switch(
000170: 67 65 74 72 65 6C 28 29 29 20 7B 0D 0A 20 20 20 getrel()) {..
000180: 20 20 20 63 61 73 65 20 20 44 53 49 5A 45 3A 20 case DSIZE:
000190: 69 66 28 21 66 69 65 6C 64 29 20 62 72 65 61 6B if(!field) break
0001A0: 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 64 65 66 ;.. def
0001B0: 61 75 6C 74 3A 20 65 72 72 6F 72 28 22 2D 20 55 ault: error("- U
0001C0: 6E 73 75 70 70 6F 72 74 65 64 20 4C 69 6E 6B 20 nsupported Link
0001D0: 49 74 65 6D 22 29 3B 0D 0A 20 20 20 20 20 20 63 Item");.. c
0001E0: 61 73 65 20 20 20 20 45 52 52 3A 20 65 72 72 6F ase ERR: erro
0001F0: 72 28 22 2D 20 43 6F 72 72 75 70 74 20 4D 6F 64 r("- Corrupt Mod
Size : 512 (Real : 512)
000000: 69 74 65 6D 20 3D 3D 20 45 46 49 4C 45 29 20 72 item == EFILE) r
000010: 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 65 eturn (NO);.. e
000020: 72 72 6F 72 32 28 69 6E 66 6E 2C 20 22 20 2D 20 rror2(infn, " -
000030: 43 6F 72 72 75 70 74 65 64 22 29 3B 0D 0A 20 20 Corrupted");..
000040: 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 72 65 61 64 }..../*..** read
000050: 20 6E 65 78 74 20 65 6E 74 72 79 20 66 72 6F 6D next entry from
000060: 20 6C 69 62 72 61 72 79 20 69 6E 64 65 78 20 66 library index f
000070: 69 6C 65 0D 0A 2A 2F 0D 0A 67 65 74 6E 64 78 28 ile..*/..getndx(
000080: 29 20 7B 0D 0A 20 20 69 66 28 72 65 61 64 28 6E ) {.. if(read(n
000090: 64 78 66 64 2C 20 26 69 6E 62 6C 6F 63 6B 2C 20 dxfd, &inblock,
0000A0: 32 29 20 21 3D 20 32 20 7C 7C 09 2F 2A 20 6E 65 2) != 2 ||./* ne
0000B0: 78 74 20 62 6C 6F 63 6B 20 2A 2F 0D 0A 20 20 20 xt block */..
0000C0: 20 20 72 65 61 64 28 6E 64 78 66 64 2C 20 26 69 read(ndxfd, &i
0000D0: 6E 62 79 74 65 2C 20 32 29 20 21 3D 20 32 29 20 nbyte, 2) != 2)
0000E0: 7B 09 2F 2A 20 6E 65 78 74 20 62 79 74 65 20 69 {./* next byte i
0000F0: 6E 20 62 6C 6F 63 6B 20 2A 2F 0D 0A 20 20 20 20 n block */..
000100: 65 72 72 6F 72 32 28 22 2D 20 45 72 72 6F 72 20 error2("- Error
000110: 52 65 61 64 69 6E 67 20 22 2C 20 69 6E 66 6E 29 Reading ", infn)
000120: 3B 0D 0A 20 20 20 20 7D 20 0D 0A 20 20 7D 0D 0A ;.. } .. }..
000130: 0D 0A 2F 2A 0D 0A 2A 2A 20 67 65 74 20 73 77 69 ../*..** get swi
000140: 74 63 68 65 73 20 66 72 6F 6D 20 63 6F 6D 6D 61 tches from comma
000150: 6E 64 20 6C 69 6E 65 0D 0A 2A 2F 0D 0A 67 65 74 nd line..*/..get
000160: 73 77 28 61 72 67 63 2C 20 61 72 67 76 29 20 69 sw(argc, argv) i
000170: 6E 74 20 61 72 67 63 2C 20 2A 61 72 67 76 3B 20 nt argc, *argv;
000180: 7B 0D 0A 20 20 63 68 61 72 20 61 72 67 5B 4E 41 {.. char arg[NA
000190: 4D 45 53 49 5A 45 5D 3B 0D 0A 20 20 69 6E 74 20 MESIZE];.. int
0001A0: 61 72 67 6E 62 72 2C 20 62 2C 20 6C 65 6E 3B 0D argnbr, b, len;.
0001B0: 0A 20 20 61 72 67 6E 62 72 20 3D 20 30 3B 0D 0A . argnbr = 0;..
0001C0: 20 20 77 68 69 6C 65 28 67 65 74 61 72 67 28 2B while(getarg(+
0001D0: 2B 61 72 67 6E 62 72 2C 20 61 72 67 2C 20 4E 41 +argnbr, arg, NA
0001E0: 4D 45 53 49 5A 45 2C 20 61 72 67 63 2C 20 61 72 MESIZE, argc, ar
0001F0: 67 76 29 20 21 3D 20 45 4F 46 29 20 7B 0D 0A 20 gv) != EOF) {..
Size : 512 (Real : 512)
000000: 75 6C 65 22 29 3B 0D 0A 20 20 20 20 20 20 63 61 ule");.. ca
000010: 73 65 20 20 45 50 52 4F 47 3A 20 69 66 28 74 79 se EPROG: if(ty
000020: 70 65 20 3D 3D 20 50 52 45 4C 29 20 7B 0D 0A 20 pe == PREL) {..
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 70 75 74 73 32 28 22 53 74 61 72 74 puts2("Start
000050: 20 49 6E 20 22 2C 20 6D 6F 64 6E 61 6D 65 29 3B In ", modname);
000060: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000070: 20 20 20 20 20 20 20 67 6F 6C 6F 63 20 3D 20 66 goloc = f
000080: 69 65 6C 64 20 2B 20 63 6D 6F 64 3B 0D 0A 20 20 ield + cmod;..
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000A0: 20 20 20 7D 0D 0A 20 20 20 20 20 20 63 61 73 65 }.. case
0000B0: 20 20 45 4E 41 4D 45 3A 20 62 72 65 61 6B 3B 09 ENAME: break;.
0000C0: 09 09 2F 2A 20 62 79 70 61 73 73 20 65 6E 61 6D ../* bypass enam
0000D0: 65 73 20 2A 2F 0D 0A 20 20 20 20 20 20 63 61 73 es */.. cas
0000E0: 65 20 58 43 48 41 49 4E 3A 20 6E 65 77 73 79 6D e XCHAIN: newsym
0000F0: 28 26 78 72 70 72 65 76 2C 20 22 78 72 22 29 3B (&xrprev, "xr");
000100: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000110: 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A 20 20 20 break;..
000120: 20 20 20 63 61 73 65 20 45 50 4F 49 4E 54 3A 20 case EPOINT:
000130: 6E 65 77 73 79 6D 28 26 65 70 70 72 65 76 2C 20 newsym(&epprev,
000140: 22 65 70 22 29 3B 0D 0A 20 20 20 20 20 20 20 20 "ep");..
000150: 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6B break
000160: 3B 0D 0A 20 20 20 20 20 20 63 61 73 65 20 20 50 ;.. case P
000170: 53 49 5A 45 3A 20 63 6D 6F 64 20 3D 20 63 6C 6F SIZE: cmod = clo
000180: 63 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 c;..
000190: 20 20 20 20 20 20 20 69 66 28 6D 6F 6E 69 74 6F if(monito
0001A0: 72 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 20 20 r) {..
0001B0: 20 20 20 20 20 20 20 20 20 20 20 69 74 6F 78 28 itox(
0001C0: 66 69 65 6C 64 2C 20 73 74 72 2C 20 38 29 3B 0D field, str, 8);.
0001D0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0001E0: 20 20 20 20 20 20 66 70 75 74 73 28 73 74 72 2C fputs(str,
0001F0: 20 73 74 64 6F 75 74 29 3B 20 66 70 75 74 73 28 stdout); fputs(
Size : 512 (Real : 512)
000000: 20 20 20 69 66 28 61 72 67 5B 30 5D 20 21 3D 20 if(arg[0] !=
000010: 27 2D 27 29 20 63 6F 6E 74 69 6E 75 65 3B 09 09 '-') continue;..
000020: 09 2F 2A 20 73 6B 69 70 20 66 69 6C 65 20 6E 61 ./* skip file na
000030: 6D 65 73 20 2A 2F 0D 0A 20 20 20 20 69 66 28 74 mes */.. if(t
000040: 6F 75 70 70 65 72 28 61 72 67 5B 31 5D 29 20 3D oupper(arg[1]) =
000050: 3D 20 27 47 27 29 20 7B 0D 0A 20 20 20 20 20 20 = 'G') {..
000060: 6C 67 6F 20 3D 20 59 45 53 3B 0D 0A 20 20 20 20 lgo = YES;..
000070: 20 20 6C 65 6E 20 3D 20 78 74 6F 69 28 61 72 67 len = xtoi(arg
000080: 20 2B 20 32 2C 20 26 62 29 3B 0D 0A 20 20 20 20 + 2, &b);..
000090: 20 20 69 66 28 6C 65 6E 20 3E 3D 20 30 20 26 26 if(len >= 0 &&
0000A0: 20 21 61 72 67 5B 6C 65 6E 20 2B 20 32 5D 29 20 !arg[len + 2])
0000B0: 63 62 61 73 65 20 3D 20 62 3B 20 65 6C 73 65 20 cbase = b; else
0000C0: 75 73 61 67 65 28 29 3B 0D 0A 20 20 20 20 20 20 usage();..
0000D0: 7D 0D 0A 20 20 20 20 65 6C 73 65 20 69 66 28 74 }.. else if(t
0000E0: 6F 75 70 70 65 72 28 61 72 67 5B 31 5D 29 20 3D oupper(arg[1]) =
0000F0: 3D 20 27 42 27 29 20 62 69 67 20 3D 20 59 45 53 = 'B') big = YES
000100: 3B 0D 0A 20 20 20 20 65 6C 73 65 20 69 66 28 74 ;.. else if(t
000110: 6F 75 70 70 65 72 28 61 72 67 5B 31 5D 29 20 3D oupper(arg[1]) =
000120: 3D 20 27 4D 27 29 20 6D 6F 6E 69 74 6F 72 20 3D = 'M') monitor =
000130: 20 59 45 53 3B 0D 0A 20 20 20 20 65 6C 73 65 20 YES;.. else
000140: 75 73 61 67 65 28 29 3B 0D 0A 20 20 20 20 7D 0D usage();.. }.
000150: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 69 . }..../*..** i
000160: 73 20 73 79 6D 62 6F 6C 20 61 6E 20 75 6E 72 65 s symbol an unre
000170: 73 6F 6C 76 65 64 20 65 78 74 20 72 65 66 3F 0D solved ext ref?.
000180: 0A 2A 2A 20 6F 6E 20 72 65 74 75 72 6E 20 6F 66 .** on return of
000190: 20 74 72 75 65 2C 20 78 72 6E 65 78 74 20 2D 3E true, xrnext ->
0001A0: 20 6D 61 74 63 68 69 6E 67 20 78 72 20 65 6E 74 matching xr ent
0001B0: 72 79 0D 0A 2A 2F 0D 0A 69 73 75 6E 72 65 73 28 ry..*/..isunres(
0001C0: 29 20 7B 0D 0A 20 20 69 6E 74 20 69 3B 0D 0A 20 ) {.. int i;..
0001D0: 20 78 72 6E 65 78 74 20 3D 20 67 65 74 69 6E 74 xrnext = getint
0001E0: 28 78 72 66 69 72 73 74 29 3B 0D 0A 20 20 77 68 (xrfirst);.. wh
0001F0: 69 6C 65 28 78 72 6E 65 78 74 29 20 7B 0D 0A 20 ile(xrnext) {..
Size : 512 (Real : 512)
000000: 22 20 42 79 74 65 73 20 61 74 22 2C 20 73 74 64 " Bytes at", std
000010: 6F 75 74 29 3B 0D 0A 20 20 20 20 20 20 20 20 20 out);..
000020: 20 20 20 20 20 20 20 20 20 20 20 20 69 74 6F 78 itox
000030: 28 63 6C 6F 63 2C 20 20 73 74 72 2C 20 36 29 3B (cloc, str, 6);
000040: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000050: 20 20 20 20 20 20 20 66 70 75 74 73 28 73 74 72 fputs(str
000060: 2C 20 73 74 64 6F 75 74 29 3B 20 66 70 75 74 73 , stdout); fputs
000070: 28 22 27 22 2C 20 73 74 64 6F 75 74 29 3B 0D 0A ("'", stdout);..
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 20 20 20 69 74 6F 78 28 63 6C 6F 63 2B 63 itox(cloc+c
0000A0: 62 61 73 65 2C 20 20 73 74 72 2C 20 36 29 3B 0D base, str, 6);.
0000B0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0000C0: 20 20 20 20 20 20 66 70 75 74 73 28 73 74 72 2C fputs(str,
0000D0: 20 73 74 64 6F 75 74 29 3B 20 70 75 74 73 32 28 stdout); puts2(
0000E0: 22 20 22 2C 20 6D 6F 64 6E 61 6D 65 29 3B 0D 0A " ", modname);..
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000100: 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 20 20 }..
000110: 20 20 20 20 20 20 20 20 20 20 20 69 66 28 21 63 if(!c
000120: 73 66 64 20 26 26 0D 0A 20 20 20 20 20 20 20 20 sfd &&..
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 69 (bi
000140: 67 20 7C 7C 20 28 62 6E 65 78 74 20 2B 20 66 69 g || (bnext + fi
000150: 65 6C 64 29 20 3E 20 28 73 6E 65 78 74 20 2D 20 eld) > (snext -
000160: 43 55 53 48 49 4F 4E 29 29 29 20 7B 0D 0A 20 20 CUSHION))) {..
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 20 20 20 63 64 69 73 6B 20 3D 20 63 6C 6F 63 3B cdisk = cloc;
000190: 09 09 2F 2A 20 64 69 73 6B 20 6F 76 65 72 66 6C ../* disk overfl
0001A0: 6F 77 20 70 6F 69 6E 74 20 2A 2F 0D 0A 20 20 20 ow point */..
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 20 63 73 66 64 20 3D 20 6F 70 65 6E 28 63 73 csfd = open(cs
0001D0: 66 6E 2C 20 22 77 2B 22 29 3B 09 2F 2A 20 6F 70 fn, "w+");./* op
0001E0: 65 6E 20 6F 76 65 72 66 6C 6F 77 20 66 69 6C 65 en overflow file
0001F0: 20 2A 2F 0D 0A 23 69 66 64 65 66 20 44 45 42 55 */..#ifdef DEBU
Size : 512 (Real : 512)
000000: 76 20 3D 20 6E 65 77 3B 09 09 09 09 2F 2A 20 74 v = new;..../* t
000010: 68 69 73 20 62 65 63 6F 6D 65 73 20 70 72 65 76 his becomes prev
000020: 20 65 6E 74 72 79 20 2A 2F 0D 0A 20 20 69 66 28 entry */.. if(
000030: 74 79 70 65 20 3D 3D 20 50 52 45 4C 29 20 66 69 type == PREL) fi
000040: 65 6C 64 20 3D 20 66 69 65 6C 64 20 2B 20 63 6D eld = field + cm
000050: 6F 64 3B 2F 2A 20 61 64 6A 75 73 74 20 66 6F 72 od;/* adjust for
000060: 20 6D 6F 64 75 6C 65 20 6C 6F 63 61 74 69 6F 6E module location
000070: 20 2A 2F 0D 0A 20 20 70 75 74 69 6E 74 28 6E 65 */.. putint(ne
000080: 77 20 2B 20 56 41 4C 2C 20 66 69 65 6C 64 29 3B w + VAL, field);
000090: 09 09 2F 2A 20 6C 6F 61 64 20 76 61 6C 75 65 20 ../* load value
0000A0: 2A 2F 0D 0A 20 20 73 74 72 63 70 79 28 6E 65 77 */.. strcpy(new
0000B0: 20 2B 20 53 59 4D 2C 20 73 79 6D 62 6F 6C 29 3B + SYM, symbol);
0000C0: 09 09 2F 2A 20 6C 6F 61 64 20 73 79 6D 62 6F 6C ../* load symbol
0000D0: 20 2A 2F 0D 0A 23 69 66 64 65 66 20 44 45 42 55 */..#ifdef DEBU
0000E0: 47 0D 0A 20 20 69 66 28 6D 6F 6E 69 74 6F 72 29 G.. if(monitor)
0000F0: 20 7B 0D 0A 20 20 20 20 69 74 6F 78 28 67 65 74 {.. itox(get
000100: 69 6E 74 28 6E 65 77 20 2B 20 56 41 4C 29 2C 20 int(new + VAL),
000110: 61 74 2C 20 38 29 3B 0D 0A 20 20 20 20 66 70 75 at, 8);.. fpu
000120: 74 73 28 61 74 2C 20 73 74 64 6F 75 74 29 3B 20 ts(at, stdout);
000130: 66 70 75 74 73 28 22 20 22 2C 20 73 74 64 6F 75 fputs(" ", stdou
000140: 74 29 3B 0D 0A 20 20 20 20 66 70 75 74 73 28 74 t);.. fputs(t
000150: 73 2C 20 73 74 64 6F 75 74 29 3B 20 66 70 75 74 s, stdout); fput
000160: 73 28 22 20 22 2C 20 73 74 64 6F 75 74 29 3B 0D s(" ", stdout);.
000170: 0A 20 20 20 20 70 75 74 73 28 73 79 6D 62 6F 6C . puts(symbol
000180: 29 3B 0D 0A 20 20 20 20 7D 0D 0A 23 65 6E 64 69 );.. }..#endi
000190: 66 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A f.. }..../*..**
0001A0: 20 69 6E 69 74 69 61 6C 20 74 61 62 6C 65 20 65 initial table e
0001B0: 6E 74 72 69 65 73 0D 0A 2A 2F 0D 0A 6E 65 77 74 ntries..*/..newt
0001C0: 62 6C 28 6C 6F 77 29 20 69 6E 74 20 2A 6C 6F 77 bl(low) int *low
0001D0: 3B 20 7B 0D 0A 20 20 2A 6C 6F 77 20 3D 20 73 6E ; {.. *low = sn
0001E0: 65 78 74 3B 09 09 09 09 2F 2A 20 61 6C 77 61 79 ext;..../* alway
0001F0: 73 20 70 6F 69 6E 74 73 20 74 6F 20 6C 6F 77 20 s points to low
Size : 512 (Real : 512)
000000: 47 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 G..
000010: 20 20 20 20 20 20 20 20 69 66 28 6D 6F 6E 69 74 if(monit
000020: 6F 72 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 20 or) {..
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 74 it
000040: 6F 78 28 63 64 69 73 6B 2C 20 73 74 72 2C 20 38 ox(cdisk, str, 8
000050: 29 3B 20 70 75 74 73 32 28 73 74 72 2C 20 22 20 ); puts2(str, "
000060: 4F 76 65 72 66 6C 6F 77 20 50 6F 69 6E 74 22 29 Overflow Point")
000070: 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ;..
000080: 20 20 20 20 20 20 20 20 20 20 7D 0D 0A 23 65 6E }..#en
000090: 64 69 66 0D 0A 20 20 20 20 20 20 20 20 20 20 20 dif..
0000A0: 20 20 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 }..
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 62 72 65 61 6B 3B 0D 0A 20 20 20 20 20 20 63 61 break;.. ca
0000D0: 73 65 20 20 53 45 54 4C 43 3A 20 66 69 65 6C 64 se SETLC: field
0000E0: 20 3D 20 66 69 65 6C 64 20 2B 20 63 6D 6F 64 3B = field + cmod;
0000F0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000100: 20 20 20 20 20 77 68 69 6C 65 28 63 6C 6F 63 20 while(cloc
000110: 3C 20 66 69 65 6C 64 29 20 7B 09 09 2F 2A 20 61 < field) {../* a
000120: 64 6A 20 6C 6F 63 20 63 74 72 20 2A 2F 0D 0A 20 dj loc ctr */..
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000140: 20 20 20 20 69 66 28 63 73 66 64 29 20 77 72 69 if(csfd) wri
000150: 74 65 28 63 73 66 64 2C 20 22 5C 30 22 2C 20 31 te(csfd, "\0", 1
000160: 29 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 );..
000170: 20 20 20 20 20 20 20 20 20 65 6C 73 65 20 2A 62 else *b
000180: 6E 65 78 74 2B 2B 20 3D 20 30 3B 0D 0A 20 20 20 next++ = 0;..
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 2B 2B 63 6C 6F 63 3B 0D 0A 20 20 20 20 20 ++cloc;..
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 7D 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 }..
0001D0: 20 20 20 20 20 20 20 20 62 72 65 61 6B 3B 0D 0A break;..
0001E0: 20 20 20 20 20 20 63 61 73 65 20 20 58 50 4F 46 case XPOF
0001F0: 46 3A 20 77 72 69 74 65 28 63 72 66 64 2C 20 26 F: write(crfd, &
Size : 512 (Real : 512)
000000: 65 6E 74 72 79 20 2A 2F 0D 0A 20 20 73 74 72 63 entry */.. strc
000010: 70 79 28 73 6E 65 78 74 20 2B 20 53 59 4D 2C 20 py(snext + SYM,
000020: 22 22 29 3B 09 09 2F 2A 20 73 74 6F 72 65 20 6C "");../* store l
000030: 6F 77 20 73 79 6D 62 6F 6C 20 2A 2F 0D 0A 20 20 ow symbol */..
000040: 70 75 74 69 6E 74 28 73 6E 65 78 74 2C 20 73 6E putint(snext, sn
000050: 65 78 74 20 2D 20 53 53 5A 29 3B 09 09 2F 2A 20 ext - SSZ);../*
000060: 6C 69 6E 6B 20 74 6F 20 6E 65 78 74 20 28 68 69 link to next (hi
000070: 67 68 29 20 73 79 6D 62 6F 6C 20 2A 2F 0D 0A 20 gh) symbol */..
000080: 20 73 6E 65 78 74 20 2D 3D 20 53 53 5A 3B 09 09 snext -= SSZ;..
000090: 09 09 2F 2A 20 6E 6F 77 20 70 6F 69 6E 74 20 74 ../* now point t
0000A0: 6F 20 6E 65 78 74 20 65 6E 74 72 79 20 2A 2F 0D o next entry */.
0000B0: 0A 20 20 73 74 72 63 70 79 28 73 6E 65 78 74 20 . strcpy(snext
0000C0: 2B 20 53 59 4D 2C 20 68 69 67 68 29 3B 09 09 2F + SYM, high);../
0000D0: 2A 20 73 74 6F 72 65 20 68 69 67 68 20 73 79 6D * store high sym
0000E0: 62 6F 6C 20 2A 2F 0D 0A 20 20 70 75 74 69 6E 74 bol */.. putint
0000F0: 28 73 6E 65 78 74 2C 20 30 29 3B 09 09 09 2F 2A (snext, 0);.../*
000100: 20 65 6E 64 20 6F 66 20 63 68 61 69 6E 20 2A 2F end of chain */
000110: 0D 0A 20 20 73 6E 65 78 74 20 2D 3D 20 53 53 5A .. snext -= SSZ
000120: 3B 09 09 09 09 2F 2A 20 62 75 6D 70 20 74 6F 20 ;..../* bump to
000130: 6E 65 78 74 20 65 6E 74 72 79 20 2A 2F 0D 0A 20 next entry */..
000140: 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 67 65 74 }..../*..** get
000150: 20 6E 65 78 74 20 6D 6F 64 75 6C 65 20 6E 61 6D next module nam
000160: 65 0D 0A 2A 2F 0D 0A 6E 78 74 6D 6F 64 28 29 20 e..*/..nxtmod()
000170: 7B 0D 0A 20 20 67 65 74 6E 64 78 28 29 3B 09 09 {.. getndx();..
000180: 09 09 2F 2A 20 67 65 74 20 6C 6F 63 61 74 69 6F ../* get locatio
000190: 6E 20 61 6E 64 20 2A 2F 0D 0A 20 20 73 65 65 6B n and */.. seek
0001A0: 28 29 3B 09 09 09 09 2F 2A 20 67 6F 20 73 74 72 ();..../* go str
0001B0: 61 69 67 68 74 20 74 6F 20 6E 65 78 74 20 6D 65 aight to next me
0001C0: 6D 62 65 72 20 2A 2F 0D 0A 20 20 72 65 74 75 72 mber */.. retur
0001D0: 6E 20 28 67 65 74 6E 61 6D 65 28 29 29 3B 0D 0A n (getname());..
0001E0: 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 72 65 }..../*..** re
0001F0: 70 6F 72 74 20 74 68 65 20 6F 75 74 63 6F 6D 65 port the outcome
Size : 512 (Real : 512)
000000: 78 72 70 66 6C 61 67 2C 20 32 29 3B 09 09 2F 2A xrpflag, 2);../*
000010: 20 66 6C 61 67 20 78 72 20 70 6C 75 73 20 2A 2F flag xr plus */
000020: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000030: 20 20 20 20 20 77 72 69 74 65 28 63 72 66 64 2C write(crfd,
000040: 20 26 66 69 65 6C 64 2C 20 32 29 3B 09 09 2F 2A &field, 2);../*
000050: 20 78 72 20 6F 66 66 73 65 74 20 2A 2F 0D 0A 20 xr offset */..
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 20 20 break;..
000080: 63 61 73 65 20 20 20 50 52 45 4C 3A 20 66 69 65 case PREL: fie
000090: 6C 64 20 3D 20 66 69 65 6C 64 20 2B 20 63 6D 6F ld = field + cmo
0000A0: 64 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 d;..
0000B0: 20 20 20 20 20 20 20 69 66 28 63 73 66 64 29 20 if(csfd)
0000C0: 77 72 69 74 65 28 63 73 66 64 2C 20 26 66 69 65 write(csfd, &fie
0000D0: 6C 64 2C 20 32 29 3B 09 2F 2A 20 70 75 74 20 6F ld, 2);./* put o
0000E0: 6E 20 64 69 73 6B 20 2A 2F 0D 0A 20 20 20 20 20 n disk */..
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6C el
000100: 73 65 20 7B 09 09 09 09 2F 2A 20 70 75 74 20 69 se {..../* put i
000110: 6E 20 6D 65 6D 6F 72 79 20 2A 2F 0D 0A 20 20 20 n memory */..
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 70 75 74 69 6E 74 28 62 6E 65 78 74 2C 20 putint(bnext,
000140: 66 69 65 6C 64 29 3B 0D 0A 20 20 20 20 20 20 20 field);..
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6E bn
000160: 65 78 74 20 2B 3D 20 32 3B 0D 0A 20 20 20 20 20 ext += 2;..
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 7D 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 }..
000190: 20 20 20 20 20 20 77 72 69 74 65 28 63 72 66 64 write(crfd
0001A0: 2C 20 26 63 6C 6F 63 2C 20 20 32 29 3B 09 2F 2A , &cloc, 2);./*
0001B0: 20 72 65 66 65 72 65 6E 63 65 20 66 6F 72 20 70 reference for p
0001C0: 61 73 73 20 32 20 2A 2F 0D 0A 20 20 20 20 20 20 ass 2 */..
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6C 6F clo
0001E0: 63 20 2B 3D 20 32 3B 0D 0A 20 20 20 20 20 20 20 c += 2;..
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 brea
Size : 512 (Real : 512)
000000: 20 61 6E 64 20 64 65 63 69 64 65 20 77 68 65 74 and decide whet
000010: 68 65 72 20 74 6F 20 71 75 69 74 0D 0A 2A 2F 0D her to quit..*/.
000020: 0A 6F 6B 61 79 28 29 20 7B 0D 0A 20 20 69 6E 74 .okay() {.. int
000030: 20 65 72 72 3B 20 63 68 61 72 20 2A 65 70 6C 61 err; char *epla
000040: 73 74 3B 0D 0A 20 20 65 72 72 20 3D 20 65 70 6C st;.. err = epl
000050: 61 73 74 20 3D 20 30 3B 0D 0A 20 20 78 72 6E 65 ast = 0;.. xrne
000060: 78 74 20 3D 20 67 65 74 69 6E 74 28 78 72 66 69 xt = getint(xrfi
000070: 72 73 74 29 3B 09 09 2F 2A 20 66 69 72 73 74 20 rst);../* first
000080: 65 78 74 65 72 6E 61 6C 20 72 65 66 65 72 65 6E external referen
000090: 63 65 20 2A 2F 0D 0A 20 20 65 70 6E 65 78 74 20 ce */.. epnext
0000A0: 3D 20 67 65 74 69 6E 74 28 65 70 66 69 72 73 74 = getint(epfirst
0000B0: 29 3B 09 09 2F 2A 20 66 69 72 73 74 20 65 6E 74 );../* first ent
0000C0: 72 79 20 70 6F 69 6E 74 20 2A 2F 0D 0A 20 20 77 ry point */.. w
0000D0: 68 69 6C 65 28 59 45 53 29 20 7B 0D 0A 20 20 20 hile(YES) {..
0000E0: 20 70 6F 6C 6C 28 59 45 53 29 3B 0D 0A 20 20 20 poll(YES);..
0000F0: 20 69 66 28 73 74 72 63 6D 70 28 78 72 6E 65 78 if(strcmp(xrnex
000100: 74 20 2B 20 53 59 4D 2C 20 65 70 6E 65 78 74 20 t + SYM, epnext
000110: 2B 20 53 59 4D 29 20 3E 20 30 29 20 7B 09 2F 2A + SYM) > 0) {./*
000120: 20 65 78 74 20 3E 20 65 6E 74 20 2A 2F 0D 0A 20 ext > ent */..
000130: 20 20 20 20 20 69 66 28 65 70 6E 65 78 74 20 3D if(epnext =
000140: 3D 20 65 70 6C 61 73 74 29 20 7B 0D 0A 20 20 20 = eplast) {..
000150: 20 20 20 20 20 70 75 74 73 32 28 22 2D 20 20 52 puts2("- R
000160: 65 64 75 6E 64 61 6E 74 3A 20 22 2C 20 78 72 6E edundant: ", xrn
000170: 65 78 74 20 2B 20 53 59 4D 29 3B 0D 0A 20 20 20 ext + SYM);..
000180: 20 20 20 20 20 65 72 72 20 3D 20 59 45 53 3B 0D err = YES;.
000190: 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 . }..
0001A0: 20 20 65 70 6C 61 73 74 20 3D 20 65 70 6E 65 78 eplast = epnex
0001B0: 74 3B 0D 0A 20 20 20 20 20 20 65 70 6E 65 78 74 t;.. epnext
0001C0: 20 3D 20 67 65 74 69 6E 74 28 65 70 6E 65 78 74 = getint(epnext
0001D0: 29 3B 0D 0A 20 20 20 20 20 20 63 6F 6E 74 69 6E );.. contin
0001E0: 75 65 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 ue;.. }..
0001F0: 20 20 69 66 28 73 74 72 63 6D 70 28 78 72 6E 65 if(strcmp(xrne
Size : 512 (Real : 512)
000000: 6B 3B 0D 0A 20 20 20 20 20 20 63 61 73 65 20 20 k;.. case
000010: 20 20 41 42 53 3A 20 69 66 28 63 73 66 64 29 20 ABS: if(csfd)
000020: 77 72 69 74 65 28 63 73 66 64 2C 20 26 66 69 65 write(csfd, &fie
000030: 6C 64 2C 20 31 29 3B 09 2F 2A 20 70 75 74 20 6F ld, 1);./* put o
000040: 6E 20 64 69 73 6B 20 2A 2F 0D 0A 20 20 20 20 20 n disk */..
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6C el
000060: 73 65 20 2A 62 6E 65 78 74 2B 2B 20 3D 20 66 69 se *bnext++ = fi
000070: 65 6C 64 3B 09 09 2F 2A 20 70 75 74 20 69 6E 20 eld;../* put in
000080: 6D 65 6D 6F 72 79 20 2A 2F 0D 0A 20 20 20 20 20 memory */..
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2B 2B ++
0000A0: 63 6C 6F 63 3B 0D 0A 20 20 20 20 20 20 20 20 20 cloc;..
0000B0: 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6B 3B break;
0000C0: 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 7D .. }.. }
0000D0: 20 77 68 69 6C 65 28 69 74 65 6D 20 21 3D 20 45 while(item != E
0000E0: 50 52 4F 47 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F PROG);.. }..../
0000F0: 2A 0D 0A 2A 2A 20 63 72 65 61 74 65 20 6E 65 77 *..** create new
000100: 20 66 69 6C 65 20 73 70 65 63 69 66 69 65 72 20 file specifier
000110: 66 72 6F 6D 20 61 6E 20 6F 6C 64 20 6F 6E 65 0D from an old one.
000120: 0A 2A 2F 0D 0A 6E 65 77 66 6E 28 64 65 73 74 2C .*/..newfn(dest,
000130: 20 73 6F 75 72 2C 20 65 78 74 29 20 63 68 61 72 sour, ext) char
000140: 20 2A 64 65 73 74 2C 20 2A 73 6F 75 72 2C 20 2A *dest, *sour, *
000150: 65 78 74 3B 20 7B 0D 0A 20 20 69 66 28 73 6F 75 ext; {.. if(sou
000160: 72 5B 31 5D 20 3D 3D 20 27 3A 27 20 26 26 20 73 r[1] == ':' && s
000170: 74 72 63 6D 70 28 65 78 74 2C 20 4E 44 58 45 58 trcmp(ext, NDXEX
000180: 54 29 29 20 73 6F 75 72 20 2B 3D 20 32 3B 0D 0A T)) sour += 2;..
000190: 20 20 77 68 69 6C 65 28 2A 73 6F 75 72 20 26 26 while(*sour &&
0001A0: 20 2A 73 6F 75 72 20 21 3D 20 27 2E 27 29 20 2A *sour != '.') *
0001B0: 64 65 73 74 2B 2B 20 3D 20 2A 73 6F 75 72 2B 2B dest++ = *sour++
0001C0: 3B 0D 0A 20 20 73 74 72 63 70 79 28 64 65 73 74 ;.. strcpy(dest
0001D0: 2C 20 65 78 74 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A , ext);.. }....
0001E0: 2F 2A 0D 0A 2A 2A 20 73 74 6F 72 65 20 6E 65 77 /*..** store new
0001F0: 20 73 79 6D 62 6F 6C 20 74 61 62 6C 65 20 65 6E symbol table en
Size : 512 (Real : 512)
000000: 78 74 20 2B 20 53 59 4D 2C 20 65 70 6E 65 78 74 xt + SYM, epnext
000010: 20 2B 20 53 59 4D 29 20 3C 20 30 29 20 7B 09 2F + SYM) < 0) {./
000020: 2A 20 65 78 74 20 3C 20 65 6E 74 20 2A 2F 0D 0A * ext < ent */..
000030: 20 20 20 20 20 20 70 75 74 73 32 28 22 2D 20 55 puts2("- U
000040: 6E 72 65 73 6F 6C 76 65 64 3A 20 22 2C 20 78 72 nresolved: ", xr
000050: 6E 65 78 74 20 2B 20 53 59 4D 29 3B 0D 0A 20 20 next + SYM);..
000060: 20 20 20 20 65 72 72 20 3D 20 59 45 53 3B 0D 0A err = YES;..
000070: 20 20 20 20 20 20 78 72 6E 65 78 74 20 3D 20 67 xrnext = g
000080: 65 74 69 6E 74 28 78 72 6E 65 78 74 29 3B 0D 0A etint(xrnext);..
000090: 20 20 20 20 20 20 63 6F 6E 74 69 6E 75 65 3B 0D continue;.
0000A0: 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 69 66 . }.. if
0000B0: 28 2A 28 78 72 6E 65 78 74 20 2B 20 53 59 4D 29 (*(xrnext + SYM)
0000C0: 20 21 3D 20 48 49 47 48 29 20 7B 09 09 09 2F 2A != HIGH) {.../*
0000D0: 20 65 78 74 20 3D 20 65 6E 74 20 2A 2F 0D 0A 20 ext = ent */..
0000E0: 20 20 20 20 20 78 72 6E 65 78 74 20 3D 20 67 65 xrnext = ge
0000F0: 74 69 6E 74 28 78 72 6E 65 78 74 29 3B 0D 0A 20 tint(xrnext);..
000100: 20 20 20 20 20 63 6F 6E 74 69 6E 75 65 3B 09 09 continue;..
000110: 09 2F 2A 20 73 61 6D 65 20 65 78 74 20 72 65 66 ./* same ext ref
000120: 20 69 6E 20 64 69 66 66 20 6D 6F 64 75 6C 65 73 in diff modules
000130: 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 ? */.. }..
000140: 20 20 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 7D break;.. }
000150: 0D 0A 20 20 69 66 28 65 72 72 29 20 72 65 74 75 .. if(err) retu
000160: 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 72 65 74 75 rn (NO);.. retu
000170: 72 6E 20 28 59 45 53 29 3B 0D 0A 20 20 7D 0D 0A rn (YES);.. }..
000180: 0D 0A 2F 2A 0D 0A 2A 2A 20 6C 6F 61 64 20 69 6E ../*..** load in
000190: 70 75 74 20 66 69 6C 65 73 20 61 6E 64 20 6C 69 put files and li
0001A0: 62 72 61 72 79 20 6D 65 6D 62 65 72 73 0D 0A 2A brary members..*
0001B0: 2F 0D 0A 70 68 61 73 65 31 28 61 72 67 63 2C 20 /..phase1(argc,
0001C0: 61 72 67 76 29 20 69 6E 74 20 61 72 67 63 2C 20 argv) int argc,
0001D0: 2A 61 72 67 76 3B 20 7B 0D 0A 20 20 63 68 61 72 *argv; {.. char
0001E0: 20 73 7A 5B 38 5D 3B 0D 0A 20 20 69 6E 74 20 69 sz[8];.. int i
0001F0: 2C 20 6C 69 62 2C 20 65 6F 66 3B 0D 0A 20 20 65 , lib, eof;.. e
Size : 512 (Real : 512)
000000: 74 72 79 0D 0A 2A 2A 20 74 68 65 79 20 61 72 72 try..** they arr
000010: 69 76 65 20 69 6E 20 61 6C 70 68 61 6E 75 6D 65 ive in alphanume
000020: 72 69 63 20 6F 72 64 65 72 0D 0A 2A 2F 0D 0A 6E ric order..*/..n
000030: 65 77 73 79 6D 28 70 72 65 76 2C 20 74 73 29 20 ewsym(prev, ts)
000040: 69 6E 74 20 2A 70 72 65 76 3B 20 63 68 61 72 20 int *prev; char
000050: 2A 74 73 3B 20 7B 0D 0A 20 20 63 68 61 72 20 61 *ts; {.. char a
000060: 74 5B 38 5D 2C 20 2A 63 70 2C 20 2A 6E 65 77 3B t[8], *cp, *new;
000070: 0D 0A 20 20 69 66 28 6E 65 77 20 3D 20 73 66 72 .. if(new = sfr
000080: 65 65 29 20 73 66 72 65 65 20 3D 20 67 65 74 69 ee) sfree = geti
000090: 6E 74 28 73 66 72 65 65 29 3B 09 09 2F 2A 20 75 nt(sfree);../* u
0000A0: 73 65 20 6F 6C 64 20 65 6E 74 72 79 20 2A 2F 0D se old entry */.
0000B0: 0A 20 20 65 6C 73 65 20 7B 0D 0A 20 20 20 20 6E . else {.. n
0000C0: 65 77 20 3D 20 73 6E 65 78 74 3B 0D 0A 20 20 20 ew = snext;..
0000D0: 20 69 66 28 28 73 6E 65 78 74 20 2D 3D 20 53 53 if((snext -= SS
0000E0: 5A 29 20 3C 20 62 6E 65 78 74 29 20 65 72 72 6F Z) < bnext) erro
0000F0: 72 28 22 2D 20 4D 75 73 74 20 53 70 65 63 69 66 r("- Must Specif
000100: 79 20 2D 42 20 53 77 69 74 63 68 22 29 3B 0D 0A y -B Switch");..
000110: 20 20 20 20 7D 0D 0A 20 20 63 70 20 3D 20 2A 70 }.. cp = *p
000120: 72 65 76 3B 0D 0A 20 20 77 68 69 6C 65 28 73 74 rev;.. while(st
000130: 72 63 6D 70 28 73 79 6D 62 6F 6C 2C 20 63 70 20 rcmp(symbol, cp
000140: 2B 20 53 59 4D 29 20 3E 3D 20 30 29 20 7B 09 09 + SYM) >= 0) {..
000150: 2F 2A 20 66 69 6E 64 20 70 6F 73 69 74 69 6F 6E /* find position
000160: 20 2A 2F 0D 0A 20 20 20 20 2A 70 72 65 76 20 3D */.. *prev =
000170: 20 63 70 3B 0D 0A 20 20 20 20 63 70 20 3D 20 67 cp;.. cp = g
000180: 65 74 69 6E 74 28 63 70 29 3B 0D 0A 20 20 20 20 etint(cp);..
000190: 7D 0D 0A 20 20 70 75 74 69 6E 74 28 6E 65 77 2C }.. putint(new,
0001A0: 20 63 70 29 3B 09 09 09 2F 2A 20 70 6F 69 6E 74 cp);.../* point
0001B0: 20 6E 65 77 20 65 6E 74 72 79 20 61 68 65 61 64 new entry ahead
0001C0: 20 2A 2F 0D 0A 20 20 70 75 74 69 6E 74 28 2A 70 */.. putint(*p
0001D0: 72 65 76 2C 20 6E 65 77 29 3B 09 09 09 2F 2A 20 rev, new);.../*
0001E0: 70 6F 69 6E 74 20 70 72 65 76 20 65 6E 74 72 79 point prev entry
0001F0: 20 68 65 72 65 20 2A 2F 0D 0A 20 20 2A 70 72 65 here */.. *pre
Size : 512 (Real : 512)
000000: 6F 66 20 3D 20 45 4F 46 3B 0D 0A 20 20 63 64 69 of = EOF;.. cdi
000010: 73 6B 20 3D 20 2D 31 3B 09 09 09 09 2F 2A 20 68 sk = -1;..../* h
000020: 69 67 68 20 76 61 6C 75 65 20 66 6F 72 20 70 6F igh value for po
000030: 69 6E 74 65 72 20 2A 2F 0D 0A 20 20 69 66 28 6C inter */.. if(l
000040: 67 6F 29 20 69 6E 73 74 72 20 3D 20 52 45 54 3B go) instr = RET;
000050: 09 09 09 2F 2A 20 6C 6F 61 64 20 61 6E 64 20 67 .../* load and g
000060: 6F 20 66 6F 72 6D 61 74 20 2A 2F 0D 0A 20 20 65 o format */.. e
000070: 6C 73 65 20 7B 69 6E 73 74 72 20 3D 20 4A 4D 50 lse {instr = JMP
000080: 3B 20 63 62 61 73 65 20 3D 20 43 4F 4D 42 41 53 ; cbase = COMBAS
000090: 45 3B 7D 09 2F 2A 20 43 4F 4D 20 66 69 6C 65 20 E;}./* COM file
0000A0: 66 6F 72 6D 61 74 20 2A 2F 0D 0A 20 20 69 20 3D format */.. i =
0000B0: 20 30 3B 0D 0A 20 20 77 68 69 6C 65 28 67 65 74 0;.. while(get
0000C0: 61 72 67 28 2B 2B 69 2C 20 69 6E 66 6E 2C 20 4E arg(++i, infn, N
0000D0: 41 4D 45 53 49 5A 45 2C 20 61 72 67 63 2C 20 61 AMESIZE, argc, a
0000E0: 72 67 76 29 20 21 3D 20 45 4F 46 29 20 7B 0D 0A rgv) != EOF) {..
0000F0: 20 20 20 20 69 66 28 69 6E 66 6E 5B 30 5D 20 3D if(infn[0] =
000100: 3D 20 27 2D 27 29 20 63 6F 6E 74 69 6E 75 65 3B = '-') continue;
000110: 09 2F 2A 20 73 6B 69 70 20 73 77 69 74 63 68 65 ./* skip switche
000120: 73 20 2A 2F 0D 0A 20 20 20 20 69 66 28 65 78 74 s */.. if(ext
000130: 65 6E 64 28 69 6E 66 6E 2C 20 4D 4F 44 45 58 54 end(infn, MODEXT
000140: 2C 20 4C 49 42 45 58 54 29 29 0D 0A 20 20 20 20 , LIBEXT))..
000150: 20 20 20 20 20 6C 69 62 20 3D 20 59 45 53 3B 0D lib = YES;.
000160: 0A 20 20 20 20 65 6C 73 65 20 6C 69 62 20 3D 20 . else lib =
000170: 4E 4F 3B 0D 0A 20 20 20 20 69 66 28 21 2A 6F 75 NO;.. if(!*ou
000180: 74 66 6E 29 20 7B 09 09 09 2F 2A 20 66 69 72 73 tfn) {.../* firs
000190: 74 20 66 69 6C 65 20 6E 61 6D 65 20 2A 2F 0D 0A t file name */..
0001A0: 20 20 20 20 20 20 69 66 28 6C 67 6F 29 20 6E 65 if(lgo) ne
0001B0: 77 66 6E 28 6F 75 74 66 6E 2C 20 69 6E 66 6E 2C wfn(outfn, infn,
0001C0: 20 4C 47 4F 45 58 54 29 3B 0D 0A 20 20 20 20 20 LGOEXT);..
0001D0: 20 65 6C 73 65 20 20 20 20 6E 65 77 66 6E 28 6F else newfn(o
0001E0: 75 74 66 6E 2C 20 69 6E 66 6E 2C 20 43 4F 4D 45 utfn, infn, COME
0001F0: 58 54 29 3B 0D 0A 20 20 20 20 20 20 6E 65 77 66 XT);.. newf
Size : 512 (Real : 512)
000000: 65 20 2A 2F 0D 0A 20 20 20 20 69 66 28 78 72 70 e */.. if(xrp
000010: 6C 75 73 29 20 7B 0D 0A 20 20 20 20 20 20 66 69 lus) {.. fi
000020: 65 6C 64 20 2B 3D 20 78 72 70 6C 75 73 3B 09 09 eld += xrplus;..
000030: 2F 2A 20 61 70 70 6C 79 20 6F 66 66 73 65 74 20 /* apply offset
000040: 2A 2F 0D 0A 20 20 20 20 20 20 78 72 70 6C 75 73 */.. xrplus
000050: 20 3D 20 30 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A = 0;.. }..
000060: 20 20 20 20 77 72 69 74 65 28 6F 75 74 66 64 2C write(outfd,
000070: 20 26 66 69 65 6C 64 2C 20 32 29 3B 09 2F 2A 20 &field, 2);./*
000080: 63 6F 70 79 20 32 20 62 79 74 65 73 20 61 64 6A copy 2 bytes adj
000090: 75 73 74 65 64 20 2A 2F 0D 0A 20 20 20 20 72 65 usted */.. re
0000A0: 61 64 72 65 66 28 29 3B 09 09 09 2F 2A 20 67 65 adref();.../* ge
0000B0: 74 20 6E 65 78 74 20 72 65 66 65 72 65 6E 63 65 t next reference
0000C0: 20 2A 2F 0D 0A 20 20 20 20 2B 2B 63 6C 6F 63 3B */.. ++cloc;
0000D0: 09 09 09 2F 2A 20 6E 65 65 64 20 61 64 64 69 74 .../* need addit
0000E0: 69 6F 6E 61 6C 20 69 6E 63 72 65 6D 65 6E 74 20 ional increment
0000F0: 2A 2F 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 66 28 */.. }.. if(
000100: 66 65 72 72 6F 72 28 6F 75 74 66 64 29 29 20 20 ferror(outfd))
000110: 65 72 72 6F 72 32 28 22 2D 20 45 72 72 6F 72 20 error2("- Error
000120: 57 72 69 74 69 6E 67 20 22 2C 20 6F 75 74 66 6E Writing ", outfn
000130: 29 3B 0D 0A 20 20 63 6C 6F 73 65 28 6F 75 74 66 );.. close(outf
000140: 64 29 3B 0D 0A 20 20 69 66 28 63 73 66 64 29 20 d);.. if(csfd)
000150: 7B 0D 0A 20 20 20 20 69 66 28 66 65 72 72 6F 72 {.. if(ferror
000160: 28 63 73 66 64 29 29 20 65 72 72 6F 72 32 28 22 (csfd)) error2("
000170: 2D 20 45 72 72 6F 72 20 52 65 61 64 69 6E 67 20 - Error Reading
000180: 22 2C 20 63 73 66 6E 29 3B 0D 0A 20 20 20 20 63 ", csfn);.. c
000190: 6C 6F 73 65 28 63 73 66 64 29 3B 0D 0A 20 20 20 lose(csfd);..
0001A0: 20 64 65 6C 65 74 65 28 63 73 66 6E 29 3B 0D 0A delete(csfn);..
0001B0: 20 20 20 20 7D 0D 0A 20 20 69 66 28 66 65 72 72 }.. if(ferr
0001C0: 6F 72 28 63 72 66 64 29 29 20 20 20 65 72 72 6F or(crfd)) erro
0001D0: 72 32 28 22 2D 20 45 72 72 6F 72 20 52 65 61 64 r2("- Error Read
0001E0: 69 6E 67 20 22 2C 20 63 72 66 6E 29 3B 0D 0A 20 ing ", crfn);..
0001F0: 20 63 6C 6F 73 65 28 63 72 66 64 29 3B 0D 0A 20 close(crfd);..
Size : 512 (Real : 512)
000000: 6E 28 63 73 66 6E 2C 20 69 6E 66 6E 2C 20 4F 46 n(csfn, infn, OF
000010: 4C 45 58 54 29 3B 0D 0A 20 20 20 20 20 20 6E 65 LEXT);.. ne
000020: 77 66 6E 28 63 72 66 6E 2C 20 69 6E 66 6E 2C 20 wfn(crfn, infn,
000030: 52 45 46 45 58 54 29 3B 0D 0A 20 20 20 20 20 20 REFEXT);..
000040: 63 72 66 64 20 3D 20 6F 70 65 6E 28 63 72 66 6E crfd = open(crfn
000050: 2C 20 22 77 2B 22 29 3B 09 09 2F 2A 20 6F 70 65 , "w+");../* ope
000060: 6E 20 72 65 66 65 72 65 6E 63 65 20 66 69 6C 65 n reference file
000070: 20 2A 2F 0D 0A 20 20 20 20 20 20 61 75 78 62 75 */.. auxbu
000080: 66 28 63 72 66 64 2C 20 41 55 58 42 55 46 29 3B f(crfd, AUXBUF);
000090: 09 2F 2A 20 65 78 74 72 61 20 62 75 66 66 65 72 ./* extra buffer
0000A0: 69 6E 67 20 6C 6F 77 65 72 73 20 68 65 61 64 20 ing lowers head
0000B0: 6D 6F 76 65 6D 65 6E 74 20 2A 2F 0D 0A 20 20 20 movement */..
0000C0: 20 20 20 7D 0D 0A 20 20 20 20 69 66 28 6C 69 62 }.. if(lib
0000D0: 29 20 73 65 61 72 63 68 28 29 3B 09 2F 2A 20 73 ) search();./* s
0000E0: 65 61 72 63 68 20 6C 69 62 72 61 72 79 20 69 66 earch library if
0000F0: 20 75 6E 72 65 73 6F 6C 76 65 64 20 65 78 74 20 unresolved ext
000100: 72 65 66 73 20 2A 2F 0D 0A 20 20 20 20 65 6C 73 refs */.. els
000110: 65 20 7B 0D 0A 20 20 20 20 20 20 69 6E 72 65 6C e {.. inrel
000120: 20 3D 20 6F 70 65 6E 28 69 6E 66 6E 2C 20 22 72 = open(infn, "r
000130: 22 29 3B 09 09 2F 2A 20 6D 75 73 74 20 6F 70 65 ");../* must ope
000140: 6E 20 2A 2F 0D 0A 20 20 20 20 20 20 67 65 74 6E n */.. getn
000150: 61 6D 65 28 29 3B 09 09 09 2F 2A 20 70 72 6F 67 ame();.../* prog
000160: 72 61 6D 20 6E 61 6D 65 20 2A 2F 0D 0A 20 20 20 ram name */..
000170: 20 20 20 6C 6F 61 64 28 29 3B 09 09 09 09 2F 2A load();..../*
000180: 20 6C 6F 61 64 20 6D 6F 64 75 6C 65 20 2A 2F 0D load module */.
000190: 0A 20 20 20 20 20 20 6C 69 6E 6B 28 29 3B 09 09 . link();..
0001A0: 09 09 2F 2A 20 6C 69 6E 6B 20 70 72 65 76 69 6F ../* link previo
0001B0: 75 73 20 6D 6F 64 75 6C 65 73 20 2A 2F 0D 0A 20 us modules */..
0001C0: 20 20 20 20 20 63 6C 6F 73 65 28 69 6E 72 65 6C close(inrel
0001D0: 29 3B 09 09 09 2F 2A 20 6D 75 73 74 20 63 6C 6F );.../* must clo
0001E0: 73 65 20 2A 2F 0D 0A 20 20 20 20 20 20 7D 0D 0A se */.. }..
0001F0: 20 20 20 20 7D 0D 0A 20 20 69 66 28 21 2A 6F 75 }.. if(!*ou
Size : 512 (Real : 512)
000000: 20 64 65 6C 65 74 65 28 63 72 66 6E 29 3B 0D 0A delete(crfn);..
000010: 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 72 65 }..../*..** re
000020: 61 64 20 6E 65 78 74 20 72 65 66 65 72 65 6E 63 ad next referenc
000030: 65 0D 0A 2A 2F 0D 0A 72 65 61 64 72 65 66 28 29 e..*/..readref()
000040: 20 7B 0D 0A 20 20 72 65 61 64 28 63 72 66 64 2C {.. read(crfd,
000050: 20 26 72 65 66 2C 20 32 29 3B 09 09 09 2F 2A 20 &ref, 2);.../*
000060: 67 65 74 20 6E 65 78 74 20 72 65 66 65 72 65 6E get next referen
000070: 63 65 20 2A 2F 0D 0A 20 20 69 66 28 72 65 66 20 ce */.. if(ref
000080: 3D 3D 20 58 52 50 4C 55 53 29 20 7B 09 09 09 2F == XRPLUS) {.../
000090: 2A 20 65 78 74 20 72 65 66 20 6F 66 66 73 65 74 * ext ref offset
0000A0: 20 66 6C 61 67 3F 20 2A 2F 0D 0A 20 20 20 20 72 flag? */.. r
0000B0: 65 61 64 28 63 72 66 64 2C 20 26 78 72 70 6C 75 ead(crfd, &xrplu
0000C0: 73 2C 20 32 29 3B 09 09 2F 2A 20 79 65 73 2C 20 s, 2);../* yes,
0000D0: 67 65 74 20 6F 66 66 73 65 74 20 76 61 6C 75 65 get offset value
0000E0: 20 2A 2F 0D 0A 20 20 20 20 72 65 61 64 28 63 72 */.. read(cr
0000F0: 66 64 2C 20 26 72 65 66 2C 20 32 29 3B 09 09 2F fd, &ref, 2);../
000100: 2A 20 74 68 65 6E 20 67 65 74 20 72 65 66 65 72 * then get refer
000110: 65 6E 63 65 20 2A 2F 0D 0A 20 20 20 20 7D 0D 0A ence */.. }..
000120: 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 72 65 }..../*..** re
000130: 73 6F 6C 76 65 20 65 78 74 65 72 6E 61 6C 20 72 solve external r
000140: 65 66 65 72 65 6E 63 65 73 20 74 6F 20 61 20 67 eferences to a g
000150: 69 76 65 6E 20 73 79 6D 62 6F 6C 0D 0A 2A 2F 0D iven symbol..*/.
000160: 0A 72 65 73 6F 6C 76 65 28 29 20 7B 0D 0A 20 20 .resolve() {..
000170: 63 68 61 72 20 61 74 5B 35 5D 3B 0D 0A 20 20 69 char at[5];.. i
000180: 66 28 21 28 78 72 20 3D 20 67 65 74 69 6E 74 28 f(!(xr = getint(
000190: 78 72 6E 65 78 74 20 2B 20 56 41 4C 29 29 29 20 xrnext + VAL)))
0001A0: 72 65 74 75 72 6E 3B 09 2F 2A 20 68 65 61 64 20 return;./* head
0001B0: 6F 66 20 65 78 74 20 72 65 66 20 63 68 61 69 6E of ext ref chain
0001C0: 20 2A 2F 0D 0A 20 20 65 70 20 3D 20 67 65 74 69 */.. ep = geti
0001D0: 6E 74 28 65 70 6E 65 78 74 20 2B 20 56 41 4C 29 nt(epnext + VAL)
0001E0: 3B 09 09 09 2F 2A 20 65 6E 74 72 79 20 70 6F 69 ;.../* entry poi
0001F0: 6E 74 20 61 64 64 72 65 73 73 20 2A 2F 0D 0A 20 nt address */..
Size : 512 (Real : 512)
000000: 74 66 6E 29 20 75 73 61 67 65 28 29 3B 0D 0A 20 tfn) usage();..
000010: 20 69 66 28 2A 74 6D 66 6E 29 20 7B 09 09 09 09 if(*tmfn) {....
000020: 2F 2A 20 6D 75 73 74 20 67 65 74 20 74 65 72 6D /* must get term
000030: 69 6E 61 6C 20 6D 6F 64 75 6C 65 20 2A 2F 0D 0A inal module */..
000040: 20 20 20 20 69 6E 72 65 6C 20 3D 20 6F 70 65 6E inrel = open
000050: 28 74 6D 66 6E 2C 20 22 72 22 29 3B 0D 0A 20 20 (tmfn, "r");..
000060: 20 20 69 6E 62 6C 6F 63 6B 20 3D 20 74 6D 62 6C inblock = tmbl
000070: 6F 63 6B 3B 20 69 6E 62 79 74 65 20 3D 20 74 6D ock; inbyte = tm
000080: 62 79 74 65 3B 0D 0A 20 20 20 20 73 65 65 6B 28 byte;.. seek(
000090: 29 3B 20 67 65 74 6E 61 6D 65 28 29 3B 20 6C 6F ); getname(); lo
0000A0: 61 64 28 29 3B 20 6C 69 6E 6B 28 29 3B 0D 0A 20 ad(); link();..
0000B0: 20 20 20 63 6C 6F 73 65 28 69 6E 72 65 6C 29 3B close(inrel);
0000C0: 0D 0A 20 20 20 20 7D 0D 0A 20 20 63 73 69 7A 65 .. }.. csize
0000D0: 20 3D 20 63 6C 6F 63 3B 0D 0A 20 20 69 66 28 66 = cloc;.. if(f
0000E0: 65 72 72 6F 72 28 63 72 66 64 29 29 20 65 72 72 error(crfd)) err
0000F0: 6F 72 32 28 22 2D 20 45 72 72 6F 72 20 57 72 69 or2("- Error Wri
000100: 74 69 6E 67 20 22 2C 20 63 72 66 6E 29 3B 0D 0A ting ", crfn);..
000110: 20 20 77 72 69 74 65 28 63 72 66 64 2C 20 26 65 write(crfd, &e
000120: 6F 66 2C 20 32 29 3B 0D 0A 20 20 72 65 77 69 6E of, 2);.. rewin
000130: 64 28 63 72 66 64 29 3B 0D 0A 20 20 69 66 28 66 d(crfd);.. if(f
000140: 65 72 72 6F 72 28 63 73 66 64 29 29 20 65 72 72 error(csfd)) err
000150: 6F 72 32 28 22 2D 20 45 72 72 6F 72 20 57 72 69 or2("- Error Wri
000160: 74 69 6E 67 20 22 2C 20 63 73 66 6E 29 3B 0D 0A ting ", csfn);..
000170: 20 20 72 65 77 69 6E 64 28 63 73 66 64 29 3B 0D rewind(csfd);.
000180: 0A 20 20 69 74 6F 78 28 63 73 69 7A 65 2C 20 73 . itox(csize, s
000190: 7A 2C 20 38 29 3B 20 70 75 74 73 32 28 73 7A 2C z, 8); puts2(sz,
0001A0: 20 22 20 42 79 74 65 73 20 28 68 65 78 29 22 29 " Bytes (hex)")
0001B0: 3B 0D 0A 20 20 69 74 6F 75 28 63 73 69 7A 65 2C ;.. itou(csize,
0001C0: 20 73 7A 2C 20 38 29 3B 20 70 75 74 73 32 28 73 sz, 8); puts2(s
0001D0: 7A 2C 20 22 20 42 79 74 65 73 20 28 64 65 63 29 z, " Bytes (dec)
0001E0: 22 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A ");.. }..../*..
0001F0: 2A 2A 20 67 65 6E 65 72 61 74 65 20 61 62 73 6F ** generate abso
Size : 512 (Real : 512)
000000: 20 64 6F 20 7B 0D 0A 23 69 66 64 65 66 20 44 45 do {..#ifdef DE
000010: 42 55 47 0D 0A 20 20 20 20 69 66 28 6D 6F 6E 69 BUG.. if(moni
000020: 74 6F 72 29 20 7B 0D 0A 20 20 20 20 20 20 70 6F tor) {.. po
000030: 6C 6C 28 59 45 53 29 3B 0D 0A 20 20 20 20 20 20 ll(YES);..
000040: 66 70 75 74 73 28 22 52 65 73 6F 6C 76 69 6E 67 fputs("Resolving
000050: 20 22 2C 20 73 74 64 6F 75 74 29 3B 0D 0A 20 20 ", stdout);..
000060: 20 20 20 20 69 74 6F 78 28 78 72 2C 20 61 74 2C itox(xr, at,
000070: 20 35 29 3B 20 66 70 75 74 73 28 61 74 2C 20 73 5); fputs(at, s
000080: 74 64 6F 75 74 29 3B 0D 0A 20 20 20 20 20 20 66 tdout);.. f
000090: 70 75 74 73 28 22 20 74 6F 20 22 2C 20 73 74 64 puts(" to ", std
0000A0: 6F 75 74 29 3B 0D 0A 20 20 20 20 20 20 69 74 6F out);.. ito
0000B0: 78 28 65 70 2C 20 61 74 2C 20 35 29 3B 20 66 70 x(ep, at, 5); fp
0000C0: 75 74 73 28 61 74 2C 20 73 74 64 6F 75 74 29 3B uts(at, stdout);
0000D0: 0D 0A 20 20 20 20 20 20 70 75 74 73 32 28 22 20 .. puts2("
0000E0: 22 2C 20 78 72 6E 65 78 74 20 2B 20 53 59 4D 29 ", xrnext + SYM)
0000F0: 3B 20 20 20 20 0D 0A 20 20 20 20 20 20 7D 0D 0A ; .. }..
000100: 23 65 6E 64 69 66 0D 0A 20 20 20 20 69 66 28 78 #endif.. if(x
000110: 72 20 3C 20 63 64 69 73 6B 29 20 7B 09 09 09 09 r < cdisk) {....
000120: 2F 2A 20 69 6E 20 6D 65 6D 6F 72 79 20 2A 2F 0D /* in memory */.
000130: 0A 20 20 20 20 20 20 6E 78 74 20 3D 20 67 65 74 . nxt = get
000140: 69 6E 74 28 78 72 20 2B 20 62 75 66 66 65 72 29 int(xr + buffer)
000150: 3B 20 20 0D 0A 20 20 20 20 20 20 69 66 28 6E 78 ; .. if(nx
000160: 74 20 3D 3D 20 30 29 20 65 70 20 2B 3D 20 63 62 t == 0) ep += cb
000170: 61 73 65 3B 09 09 2F 2A 20 65 6E 64 20 6F 66 20 ase;../* end of
000180: 63 68 61 69 6E 20 69 73 20 61 62 73 6F 6C 75 74 chain is absolut
000190: 65 20 2A 2F 0D 0A 20 20 20 20 20 20 70 75 74 69 e */.. puti
0001A0: 6E 74 28 78 72 20 2B 20 62 75 66 66 65 72 2C 20 nt(xr + buffer,
0001B0: 65 70 29 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 ep);.. }..
0001C0: 20 20 20 65 6C 73 65 20 7B 09 09 09 09 09 2F 2A else {...../*
0001D0: 20 6F 6E 20 64 69 73 6B 20 2A 2F 0D 0A 20 20 20 on disk */..
0001E0: 20 20 20 78 72 73 65 65 6B 28 78 72 20 2D 20 63 xrseek(xr - c
0001F0: 64 69 73 6B 29 3B 20 72 65 61 64 28 63 73 66 64 disk); read(csfd
Size : 512 (Real : 512)
000000: 6C 75 74 65 20 6F 75 74 70 75 74 20 69 6E 20 43 lute output in C
000010: 4F 4D 20 6F 72 20 4C 47 4F 20 66 6F 72 6D 61 74 OM or LGO format
000020: 0D 0A 2A 2A 0D 0A 2A 2A 20 43 4F 4D 20 66 6F 72 ..**..** COM for
000030: 6D 61 74 3A 20 4A 4D 50 20 3C 73 74 61 72 74 3E mat: JMP <start>
000040: 20 3C 70 72 6F 67 72 61 6D 3E 0D 0A 2A 2A 0D 0A <program>..**..
000050: 2A 2A 20 4C 47 4F 20 66 6F 72 6D 61 74 3A 20 52 ** LGO format: R
000060: 45 54 20 3C 73 74 61 72 74 3E 20 3C 70 72 6F 67 ET <start> <prog
000070: 2D 62 61 73 65 3E 20 3C 70 72 6F 67 2D 73 69 7A -base> <prog-siz
000080: 65 3E 20 3C 70 72 6F 67 72 61 6D 3E 0D 0A 2A 2F e> <program>..*/
000090: 0D 0A 70 68 61 73 65 32 28 29 20 7B 0D 0A 20 20 ..phase2() {..
0000A0: 63 68 61 72 20 61 74 5B 35 5D 3B 0D 0A 20 20 6F char at[5];.. o
0000B0: 75 74 66 64 20 3D 20 6F 70 65 6E 28 6F 75 74 66 utfd = open(outf
0000C0: 6E 2C 20 22 77 22 29 3B 0D 0A 20 20 77 72 69 74 n, "w");.. writ
0000D0: 65 28 6F 75 74 66 64 2C 20 26 69 6E 73 74 72 2C e(outfd, &instr,
0000E0: 20 31 29 3B 09 2F 2A 20 70 6C 61 6E 74 20 66 69 1);./* plant fi
0000F0: 72 73 74 20 69 6E 73 74 72 75 63 74 69 6F 6E 20 rst instruction
000100: 2A 2F 0D 0A 20 20 61 64 64 72 20 3D 20 63 62 61 */.. addr = cba
000110: 73 65 20 2B 20 67 6F 6C 6F 63 3B 0D 0A 20 20 77 se + goloc;.. w
000120: 72 69 74 65 28 6F 75 74 66 64 2C 20 26 61 64 64 rite(outfd, &add
000130: 72 2C 20 32 29 3B 09 2F 2A 20 77 69 74 68 20 69 r, 2);./* with i
000140: 74 73 20 61 64 64 72 65 73 73 20 2A 2F 0D 0A 20 ts address */..
000150: 20 69 66 28 6C 67 6F 29 20 7B 0D 0A 20 20 20 20 if(lgo) {..
000160: 77 72 69 74 65 28 6F 75 74 66 64 2C 20 26 63 62 write(outfd, &cb
000170: 61 73 65 2C 20 32 29 3B 09 2F 2A 20 77 68 65 72 ase, 2);./* wher
000180: 65 20 74 6F 20 6C 6F 61 64 20 66 6F 72 20 65 78 e to load for ex
000190: 65 63 75 74 69 6F 6E 20 2A 2F 0D 0A 20 20 20 20 ecution */..
0001A0: 77 72 69 74 65 28 6F 75 74 66 64 2C 20 26 63 73 write(outfd, &cs
0001B0: 69 7A 65 2C 20 32 29 3B 09 2F 2A 20 68 6F 77 20 ize, 2);./* how
0001C0: 6D 61 6E 79 20 62 79 74 65 73 20 74 6F 20 6C 6F many bytes to lo
0001D0: 61 64 20 2A 2F 0D 0A 20 20 20 20 7D 0D 0A 20 20 ad */.. }..
0001E0: 63 6C 6F 63 20 3D 20 2D 31 3B 09 09 09 2F 2A 20 cloc = -1;.../*
0001F0: 61 6C 6C 6F 77 20 65 66 66 69 63 69 65 6E 74 20 allow efficient
Size : 512 (Real : 512)
000000: 2C 20 26 6E 78 74 2C 20 32 29 3B 0D 0A 20 20 20 , &nxt, 2);..
000010: 20 20 20 69 66 28 6E 78 74 20 3D 3D 20 30 29 20 if(nxt == 0)
000020: 65 70 20 2B 3D 20 63 62 61 73 65 3B 09 09 2F 2A ep += cbase;../*
000030: 20 65 6E 64 20 6F 66 20 63 68 61 69 6E 20 69 73 end of chain is
000040: 20 61 62 73 6F 6C 75 74 65 20 2A 2F 0D 0A 20 20 absolute */..
000050: 20 20 20 20 78 72 73 65 65 6B 28 78 72 20 2D 20 xrseek(xr -
000060: 63 64 69 73 6B 29 3B 20 77 72 69 74 65 28 63 73 cdisk); write(cs
000070: 66 64 2C 20 26 65 70 2C 20 32 29 3B 0D 0A 20 20 fd, &ep, 2);..
000080: 20 20 20 20 7D 0D 0A 20 20 20 20 7D 20 77 68 69 }.. } whi
000090: 6C 65 28 78 72 20 3D 20 6E 78 74 29 3B 0D 0A 20 le(xr = nxt);..
0000A0: 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 73 65 61 }..../*..** sea
0000B0: 72 63 68 20 61 20 6C 69 62 72 61 72 79 0D 0A 2A rch a library..*
0000C0: 2F 0D 0A 73 65 61 72 63 68 28 29 20 7B 0D 0A 20 /..search() {..
0000D0: 20 69 6E 74 20 6C 69 6E 6B 65 64 3B 0D 0A 20 20 int linked;..
0000E0: 6C 69 6E 6B 65 64 20 3D 20 4E 4F 3B 0D 0A 20 20 linked = NO;..
0000F0: 6E 65 77 66 6E 28 6E 64 78 66 6E 2C 20 69 6E 66 newfn(ndxfn, inf
000100: 6E 2C 20 4E 44 58 45 58 54 29 3B 0D 0A 20 20 6E n, NDXEXT);.. n
000110: 64 78 66 64 20 3D 20 6F 70 65 6E 28 6E 64 78 66 dxfd = open(ndxf
000120: 6E 2C 20 22 72 22 29 3B 0D 0A 20 20 69 6E 72 65 n, "r");.. inre
000130: 6C 20 3D 20 6F 70 65 6E 28 69 6E 66 6E 2C 20 22 l = open(infn, "
000140: 72 22 29 3B 0D 0A 20 20 77 68 69 6C 65 28 59 45 r");.. while(YE
000150: 53 29 20 7B 09 09 09 09 09 2F 2A 20 72 65 73 63 S) {...../* resc
000160: 61 6E 20 74 69 6C 6C 20 64 6F 6E 65 20 2A 2F 0D an till done */.
000170: 0A 20 20 20 20 77 68 69 6C 65 28 6E 78 74 6D 6F . while(nxtmo
000180: 64 28 29 29 20 7B 0D 0A 20 20 20 20 20 20 69 66 d()) {.. if
000190: 28 73 74 72 63 6D 70 28 6D 6F 64 6E 61 6D 65 2C (strcmp(modname,
0001A0: 20 54 4D 4E 41 4D 45 29 20 3D 3D 20 30 29 20 7B TMNAME) == 0) {
0001B0: 09 2F 2A 20 77 69 6C 6C 20 6C 6F 61 64 20 74 68 ./* will load th
0001C0: 69 73 20 6F 6E 65 20 6C 61 73 74 20 2A 2F 0D 0A is one last */..
0001D0: 20 20 20 20 20 20 20 20 73 74 72 63 70 79 28 74 strcpy(t
0001E0: 6D 66 6E 2C 20 69 6E 66 6E 29 3B 0D 0A 20 20 20 mfn, infn);..
0001F0: 20 20 20 20 20 74 6D 62 6C 6F 63 6B 20 3D 20 69 tmblock = i
Size : 512 (Real : 512)
000000: 70 72 65 2D 69 6E 63 72 65 6D 65 6E 74 20 2A 2F pre-increment */
000010: 0D 0A 20 20 72 65 61 64 72 65 66 28 29 3B 09 09 .. readref();..
000020: 09 2F 2A 20 67 65 74 20 66 69 72 73 74 20 72 65 ./* get first re
000030: 66 65 72 65 6E 63 65 20 2A 2F 0D 0A 20 20 77 68 ference */.. wh
000040: 69 6C 65 28 2B 2B 63 6C 6F 63 20 3C 20 63 73 69 ile(++cloc < csi
000050: 7A 65 29 20 7B 09 2F 2A 20 77 68 69 6C 65 20 6D ze) {./* while m
000060: 6F 72 65 20 63 6F 64 65 20 2A 2F 0D 0A 20 20 20 ore code */..
000070: 20 69 66 28 63 6C 6F 63 20 21 3D 20 72 65 66 29 if(cloc != ref)
000080: 20 7B 09 09 2F 2A 20 6E 6F 74 20 72 65 6C 61 74 {../* not relat
000090: 69 76 65 20 72 65 66 65 72 65 6E 63 65 20 2A 2F ive reference */
0000A0: 0D 0A 20 20 20 20 20 20 69 66 28 63 6C 6F 63 20 .. if(cloc
0000B0: 3C 20 63 64 69 73 6B 29 0D 0A 20 20 20 20 20 20 < cdisk)..
0000C0: 20 20 66 69 65 6C 64 20 3D 20 2A 28 63 6C 6F 63 field = *(cloc
0000D0: 20 2B 20 62 75 66 66 65 72 29 3B 0D 0A 20 20 20 + buffer);..
0000E0: 20 20 20 65 6C 73 65 20 72 65 61 64 28 63 73 66 else read(csf
0000F0: 64 2C 20 26 66 69 65 6C 64 2C 20 31 29 3B 0D 0A d, &field, 1);..
000100: 20 20 20 20 20 20 77 72 69 74 65 28 6F 75 74 66 write(outf
000110: 64 2C 20 26 66 69 65 6C 64 2C 20 31 29 3B 09 2F d, &field, 1);./
000120: 2A 20 63 6F 70 79 20 6F 6E 65 20 62 79 74 65 20 * copy one byte
000130: 61 73 20 69 73 20 2A 2F 0D 0A 20 20 20 20 20 20 as is */..
000140: 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 continue;..
000150: 20 7D 0D 0A 20 20 20 20 69 66 28 63 6C 6F 63 20 }.. if(cloc
000160: 3C 20 63 64 69 73 6B 29 09 09 2F 2A 20 67 65 74 < cdisk)../* get
000170: 20 6E 65 78 74 20 32 2D 62 79 74 65 20 72 65 6C next 2-byte rel
000180: 61 74 69 76 65 20 69 74 65 6D 20 2A 2F 0D 0A 20 ative item */..
000190: 20 20 20 20 20 66 69 65 6C 64 20 3D 20 67 65 74 field = get
0001A0: 69 6E 74 28 63 6C 6F 63 20 2B 20 62 75 66 66 65 int(cloc + buffe
0001B0: 72 29 3B 0D 0A 20 20 20 20 65 6C 73 65 20 72 65 r);.. else re
0001C0: 61 64 28 63 73 66 64 2C 20 26 66 69 65 6C 64 2C ad(csfd, &field,
0001D0: 20 32 29 3B 0D 0A 20 20 20 20 66 69 65 6C 64 20 2);.. field
0001E0: 3D 20 66 69 65 6C 64 20 2B 20 63 62 61 73 65 3B = field + cbase;
0001F0: 09 2F 2A 20 6D 61 6B 65 20 61 62 73 6F 6C 75 74 ./* make absolut
Size : 512 (Real : 512)
000000: 6E 62 6C 6F 63 6B 3B 0D 0A 20 20 20 20 20 20 20 nblock;..
000010: 20 74 6D 62 79 74 65 20 3D 20 69 6E 62 79 74 65 tmbyte = inbyte
000020: 3B 0D 0A 20 20 20 20 20 20 20 20 63 6F 6E 74 69 ;.. conti
000030: 6E 75 65 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D nue;.. }.
000040: 0A 20 20 20 20 20 20 77 68 69 6C 65 28 67 65 74 . while(get
000050: 72 65 6C 28 29 20 3D 3D 20 45 4E 41 4D 45 29 20 rel() == ENAME)
000060: 7B 0D 0A 20 20 20 20 20 20 20 20 70 6F 6C 6C 28 {.. poll(
000070: 59 45 53 29 3B 0D 0A 20 20 20 20 20 20 20 20 69 YES);.. i
000080: 66 28 69 73 75 6E 72 65 73 28 29 29 20 7B 09 09 f(isunres()) {..
000090: 09 09 2F 2A 20 75 6E 72 65 73 6F 6C 76 65 64 20 ../* unresolved
0000A0: 72 65 66 65 72 65 6E 63 65 3F 20 2A 2F 0D 0A 20 reference? */..
0000B0: 20 20 20 20 20 20 20 20 20 6C 6F 61 64 28 29 3B load();
0000C0: 09 09 09 09 2F 2A 20 6C 6F 61 64 20 6D 6F 64 75 ..../* load modu
0000D0: 6C 65 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 le */..
0000E0: 20 6C 69 6E 6B 28 29 3B 09 09 09 09 2F 2A 20 6C link();..../* l
0000F0: 69 6E 6B 20 74 6F 20 70 72 65 76 69 6F 75 73 20 ink to previous
000100: 6F 6E 65 73 20 2A 2F 0D 0A 20 20 20 20 20 20 20 ones */..
000110: 20 20 20 6C 69 6E 6B 65 64 20 3D 20 59 45 53 3B linked = YES;
000120: 0D 0A 20 20 20 20 20 20 20 20 20 20 62 72 65 61 .. brea
000130: 6B 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 7D 0D k;.. }.
000140: 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 . }..
000150: 20 20 7D 0D 0A 20 20 20 20 69 66 28 21 6C 69 6E }.. if(!lin
000160: 6B 65 64 29 20 62 72 65 61 6B 3B 0D 0A 20 20 20 ked) break;..
000170: 20 6C 69 6E 6B 65 64 20 3D 20 4E 4F 3B 0D 0A 20 linked = NO;..
000180: 20 20 20 72 65 77 69 6E 64 28 6E 64 78 66 64 29 rewind(ndxfd)
000190: 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 63 6C 6F 73 ;.. }.. clos
0001A0: 65 28 6E 64 78 66 64 29 3B 0D 0A 20 20 63 6C 6F e(ndxfd);.. clo
0001B0: 73 65 28 69 6E 72 65 6C 29 3B 0D 0A 20 20 7D 0D se(inrel);.. }.
0001C0: 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 73 65 65 6B 20 74 .../*..** seek t
0001D0: 6F 20 6E 65 78 74 20 6D 65 6D 62 65 72 20 69 6E o next member in
0001E0: 20 6F 6C 64 20 6C 69 62 72 61 72 79 0D 0A 2A 2F old library..*/
0001F0: 0D 0A 73 65 65 6B 28 29 20 7B 0D 0A 20 20 69 66 ..seek() {.. if
Size : 512 (Real : 512)
000000: 65 66 69 6E 65 20 4E 41 4D 45 53 49 5A 45 20 20 efine NAMESIZE
000010: 20 31 35 0D 0A 23 64 65 66 69 6E 65 20 53 54 41 15..#define STA
000020: 43 4B 20 20 20 20 20 32 35 36 09 09 2F 2A 20 61 CK 256../* a
000030: 6C 6C 6F 77 20 66 6F 72 20 73 74 61 63 6B 20 73 llow for stack s
000040: 70 61 63 65 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 pace */..#define
000050: 20 52 45 54 20 20 20 20 20 20 20 32 30 31 09 09 RET 201..
000060: 2F 2A 20 52 45 54 20 69 6E 73 74 72 75 63 74 69 /* RET instructi
000070: 6F 6E 20 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4C on */..#define L
000080: 47 4F 45 58 54 20 20 22 2E 4C 47 4F 22 0D 0A 0D GOEXT ".LGO"...
000090: 0A 2F 2A 0D 0A 2A 2A 20 67 6C 6F 62 61 6C 20 76 ./*..** global v
0000A0: 61 72 69 61 62 6C 65 73 0D 0A 2A 2F 0D 0A 63 68 ariables..*/..ch
0000B0: 61 72 0D 0A 20 2A 62 61 73 65 2C 09 09 09 2F 2A ar.. *base,.../*
0000C0: 20 62 61 73 65 20 61 64 64 72 65 73 73 20 2A 2F base address */
0000D0: 0D 0A 20 2A 73 74 61 72 74 2C 09 09 2F 2A 20 73 .. *start,../* s
0000E0: 74 61 72 74 69 6E 67 20 61 64 64 72 65 73 73 20 tarting address
0000F0: 2A 2F 0D 0A 20 20 69 6E 66 6E 5B 4E 41 4D 45 53 */.. infn[NAMES
000100: 49 5A 45 5D 3B 09 2F 2A 20 69 6E 70 75 74 20 66 IZE];./* input f
000110: 69 6C 65 6E 61 6D 65 20 2A 2F 0D 0A 0D 0A 69 6E ilename */....in
000120: 74 0D 0A 20 20 69 6E 66 64 2C 09 09 09 2F 2A 20 t.. infd,.../*
000130: 69 6E 70 75 74 20 66 64 20 2A 2F 0D 0A 20 20 73 input fd */.. s
000140: 69 7A 65 2C 09 09 09 2F 2A 20 70 72 6F 67 72 61 ize,.../* progra
000150: 6D 20 73 69 7A 65 20 2A 2F 0D 0A 20 20 6D 6F 6E m size */.. mon
000160: 69 74 6F 72 2C 09 09 2F 2A 20 6D 6F 6E 69 74 6F itor,../* monito
000170: 72 20 61 63 74 69 76 69 74 79 3F 20 2A 2F 0D 0A r activity? */..
000180: 20 20 67 6F 3B 09 09 09 2F 2A 20 65 78 65 63 75 go;.../* execu
000190: 74 65 3F 20 2A 2F 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A te? */..../*..**
0001A0: 20 6C 6F 61 64 20 70 72 6F 67 72 61 6D 2E 4C 47 load program.LG
0001B0: 4F 20 77 69 74 68 20 66 6F 72 6D 61 74 3A 0D 0A O with format:..
0001C0: 2A 2A 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 **..**
0001D0: 20 20 52 45 54 20 3C 73 74 61 72 74 3E 20 3C 62 RET <start> <b
0001E0: 61 73 65 3E 20 3C 73 69 7A 65 3E 20 3C 70 72 6F ase> <size> <pro
0001F0: 67 72 61 6D 3E 0D 0A 2A 2F 0D 0A 6D 61 69 6E 28 gram>..*/..main(
Size : 512 (Real : 512)
000000: 28 69 6E 62 6C 6F 63 6B 20 3D 3D 20 45 4F 46 29 (inblock == EOF)
000010: 20 65 72 72 6F 72 28 22 2D 20 50 72 65 6D 61 74 error("- Premat
000020: 75 72 65 20 45 6E 64 20 6F 66 20 49 6E 64 65 78 ure End of Index
000030: 22 29 3B 0D 0A 20 20 69 66 28 63 73 65 65 6B 28 ");.. if(cseek(
000040: 69 6E 72 65 6C 2C 20 69 6E 62 6C 6F 63 6B 2C 20 inrel, inblock,
000050: 30 29 20 3D 3D 20 45 4F 46 29 0D 0A 20 20 20 20 0) == EOF)..
000060: 65 72 72 6F 72 28 22 2D 20 43 6F 72 72 75 70 74 error("- Corrupt
000070: 20 4C 69 62 72 61 72 79 20 6F 72 20 49 6E 64 65 Library or Inde
000080: 78 22 29 3B 0D 0A 20 20 55 63 68 72 70 6F 73 5B x");.. Uchrpos[
000090: 69 6E 72 65 6C 5D 20 3D 20 69 6E 62 79 74 65 3B inrel] = inbyte;
0000A0: 0D 0A 20 20 69 6E 72 65 6D 20 3D 20 30 3B 09 09 .. inrem = 0;..
0000B0: 09 2F 2A 20 66 6F 72 63 65 20 67 65 74 72 65 6C ./* force getrel
0000C0: 28 29 20 74 6F 20 72 65 61 64 20 61 20 62 79 74 () to read a byt
0000D0: 65 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D e */.. }..../*.
0000E0: 0A 2A 2A 20 61 62 6F 72 74 20 77 69 74 68 20 61 .** abort with a
0000F0: 20 75 73 61 67 65 20 6D 65 73 73 61 67 65 0D 0A usage message..
000100: 2A 2F 0D 0A 75 73 61 67 65 28 29 20 7B 0D 0A 20 */..usage() {..
000110: 20 65 72 72 6F 72 28 22 55 73 61 67 65 3A 20 4C error("Usage: L
000120: 4E 4B 20 5B 2D 42 5D 20 5B 2D 47 23 5D 20 5B 2D NK [-B] [-G#] [-
000130: 4D 5D 20 70 72 6F 67 72 61 6D 20 5B 6D 6F 64 75 M] program [modu
000140: 6C 65 2F 6C 69 62 72 61 72 79 2E 2E 2E 5D 22 29 le/library...]")
000150: 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A ;.. }..../*..**
000160: 20 73 65 65 6B 20 65 78 74 65 72 6E 61 6C 20 72 seek external r
000170: 65 66 65 72 65 6E 63 65 0D 0A 2A 2F 0D 0A 78 72 eference..*/..xr
000180: 73 65 65 6B 28 62 79 74 65 29 20 69 6E 74 20 62 seek(byte) int b
000190: 79 74 65 3B 20 7B 0D 0A 20 20 69 66 28 63 73 65 yte; {.. if(cse
0001A0: 65 6B 28 63 73 66 64 2C 20 28 62 79 74 65 20 3E ek(csfd, (byte >
0001B0: 3E 20 37 29 20 26 20 35 31 31 2C 20 30 29 20 3D > 7) & 511, 0) =
0001C0: 3D 20 45 4F 46 29 0D 0A 20 20 20 20 65 72 72 6F = EOF).. erro
0001D0: 72 32 28 22 2D 20 53 65 65 6B 20 45 72 72 6F 72 r2("- Seek Error
0001E0: 20 69 6E 20 22 2C 20 63 73 66 6E 29 3B 0D 0A 20 in ", csfn);..
0001F0: 20 55 63 68 72 70 6F 73 5B 63 73 66 64 5D 20 3D Uchrpos[csfd] =
Size : 512 (Real : 512)
000000: 61 72 67 63 2C 61 72 67 76 29 20 69 6E 74 20 61 argc,argv) int a
000010: 72 67 63 2C 20 61 72 67 76 5B 5D 3B 20 7B 0D 0A rgc, argv[]; {..
000020: 20 20 69 6E 74 20 69 3B 20 63 68 61 72 20 73 74 int i; char st
000030: 72 5B 35 5D 3B 0D 0A 20 20 66 70 75 74 73 28 22 r[5];.. fputs("
000040: 53 6D 61 6C 6C 2D 4D 61 63 20 4C 6F 61 64 2D 61 Small-Mac Load-a
000050: 6E 64 2D 47 6F 20 4C 6F 61 64 65 72 2C 20 22 2C nd-Go Loader, ",
000060: 20 73 74 64 65 72 72 29 3B 20 66 70 75 74 73 28 stderr); fputs(
000070: 56 45 52 53 49 4F 4E 2C 20 73 74 64 65 72 72 29 VERSION, stderr)
000080: 3B 0D 0A 20 20 66 70 75 74 73 28 43 52 49 47 48 ;.. fputs(CRIGH
000090: 54 31 2C 20 73 74 64 65 72 72 29 3B 0D 0A 20 20 T1, stderr);..
0000A0: 67 65 74 73 77 28 61 72 67 63 2C 20 61 72 67 76 getsw(argc, argv
0000B0: 29 3B 09 09 09 09 2F 2A 20 70 72 6F 63 65 73 73 );..../* process
0000C0: 20 73 77 69 74 63 68 65 73 20 2A 2F 0D 0A 20 20 switches */..
0000D0: 69 20 3D 20 30 3B 0D 0A 20 20 77 68 69 6C 65 28 i = 0;.. while(
0000E0: 67 65 74 61 72 67 28 2B 2B 69 2C 20 69 6E 66 6E getarg(++i, infn
0000F0: 2C 20 4E 41 4D 45 53 49 5A 45 2C 20 61 72 67 63 , NAMESIZE, argc
000100: 2C 20 61 72 67 76 29 20 21 3D 20 45 4F 46 29 09 , argv) != EOF).
000110: 2F 2A 20 67 65 74 20 66 6E 20 2A 2F 0D 0A 20 20 /* get fn */..
000120: 20 20 69 66 28 69 6E 66 6E 5B 30 5D 20 21 3D 20 if(infn[0] !=
000130: 27 2D 27 29 20 7B 69 20 3D 20 30 3B 20 62 72 65 '-') {i = 0; bre
000140: 61 6B 3B 7D 0D 0A 20 20 69 66 28 69 29 20 75 73 ak;}.. if(i) us
000150: 61 67 65 28 29 3B 0D 0A 20 20 65 78 74 65 6E 64 age();.. extend
000160: 28 69 6E 66 6E 2C 20 4C 47 4F 45 58 54 2C 20 4C (infn, LGOEXT, L
000170: 47 4F 45 58 54 29 3B 0D 0A 20 20 69 6E 66 64 20 GOEXT);.. infd
000180: 3D 20 6F 70 65 6E 28 69 6E 66 6E 2C 20 22 72 22 = open(infn, "r"
000190: 29 3B 0D 0A 20 20 72 65 61 64 28 69 6E 66 64 2C );.. read(infd,
0001A0: 20 26 62 61 73 65 2C 20 31 29 3B 0D 0A 20 20 69 &base, 1);.. i
0001B0: 66 28 62 61 73 65 20 21 3D 20 52 45 54 29 20 65 f(base != RET) e
0001C0: 72 72 6F 72 28 22 2D 20 49 6E 76 61 6C 69 64 20 rror("- Invalid
0001D0: 4C 47 4F 20 46 6F 72 6D 61 74 22 29 3B 0D 0A 20 LGO Format");..
0001E0: 20 72 65 61 64 28 69 6E 66 64 2C 20 26 73 74 61 read(infd, &sta
0001F0: 72 74 2C 20 32 29 3B 09 09 09 2F 2A 20 67 65 74 rt, 2);.../* get
Size : 512 (Real : 512)
000000: 20 62 79 74 65 20 26 20 31 32 37 3B 0D 0A 20 20 byte & 127;..
000010: 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A }...............
000020: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000030: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000040: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 78 22 29 3B 0D 0A 20 20 55 63 68 72 70 6F 73 5B x");.. Uchrpos[
000090: 69 6E 72 65 6C 5D 20 3D 20 69 6E 62 79 74 65 3B inrel] = inbyte;
0000A0: 0D 0A 20 20 69 6E 72 65 6D 20 3D 20 30 3B 09 09 .. inrem = 0;..
0000B0: 09 2F 2A 20 66 6F 72 63 65 20 67 65 74 72 65 6C ./* force getrel
0000C0: 28 29 20 74 6F 20 72 65 61 64 20 61 20 62 79 74 () to read a byt
0000D0: 65 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D e */.. }..../*.
0000E0: 0A 2A 2A 20 61 62 6F 72 74 20 77 69 74 68 20 61 .** abort with a
0000F0: 20 75 73 61 67 65 20 6D 65 73 73 61 67 65 0D 0A usage message..
000100: 2A 2F 0D 0A 75 73 61 67 65 28 29 20 7B 0D 0A 20 */..usage() {..
000110: 20 65 72 72 6F 72 28 22 55 73 61 67 65 3A 20 4C error("Usage: L
000120: 4E 4B 20 5B 2D 42 5D 20 5B 2D 47 23 5D 20 5B 2D NK [-B] [-G#] [-
000130: 4D 5D 20 70 72 6F 67 72 61 6D 20 5B 6D 6F 64 75 M] program [modu
000140: 6C 65 2F 6C 69 62 72 61 72 79 2E 2E 2E 5D 22 29 le/library...]")
000150: 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A ;.. }..../*..**
000160: 20 73 65 65 6B 20 65 78 74 65 72 6E 61 6C 20 72 seek external r
000170: 65 66 65 72 65 6E 63 65 0D 0A 2A 2F 0D 0A 78 72 eference..*/..xr
000180: 73 65 65 6B 28 62 79 74 65 29 20 69 6E 74 20 62 seek(byte) int b
000190: 79 74 65 3B 20 7B 0D 0A 20 20 69 66 28 63 73 65 yte; {.. if(cse
0001A0: 65 6B 28 63 73 66 64 2C 20 28 62 79 74 65 20 3E ek(csfd, (byte >
0001B0: 3E 20 37 29 20 26 20 35 31 31 2C 20 30 29 20 3D > 7) & 511, 0) =
0001C0: 3D 20 45 4F 46 29 0D 0A 20 20 20 20 65 72 72 6F = EOF).. erro
0001D0: 72 32 28 22 2D 20 53 65 65 6B 20 45 72 72 6F 72 r2("- Seek Error
0001E0: 20 69 6E 20 22 2C 20 63 73 66 6E 29 3B 0D 0A 20 in ", csfn);..
0001F0: 20 55 63 68 72 70 6F 73 5B 63 73 66 64 5D 20 3D Uchrpos[csfd] =
Size : 512 (Real : 512)
000000: 20 73 74 61 72 74 69 6E 67 20 61 64 64 72 65 73 starting addres
000010: 73 20 2A 2F 0D 0A 20 20 72 65 61 64 28 69 6E 66 s */.. read(inf
000020: 64 2C 20 26 62 61 73 65 2C 20 20 32 29 3B 09 09 d, &base, 2);..
000030: 09 2F 2A 20 67 65 74 20 62 61 73 65 20 61 64 64 ./* get base add
000040: 72 65 73 73 20 2A 2F 0D 0A 20 20 72 65 61 64 28 ress */.. read(
000050: 69 6E 66 64 2C 20 26 73 69 7A 65 2C 20 20 32 29 infd, &size, 2)
000060: 3B 09 09 09 2F 2A 20 67 65 74 20 70 72 6F 67 72 ;.../* get progr
000070: 61 6D 20 73 69 7A 65 20 2A 2F 0D 0A 20 20 69 66 am size */.. if
000080: 28 6D 6F 6E 69 74 6F 72 29 20 7B 09 09 09 09 09 (monitor) {.....
000090: 2F 2A 20 6D 6F 6E 69 74 6F 72 3F 20 2A 2F 0D 0A /* monitor? */..
0000A0: 20 20 20 20 66 70 75 74 73 28 22 46 72 6F 6D 20 fputs("From
0000B0: 22 2C 20 20 20 20 73 74 64 6F 75 74 29 3B 20 69 ", stdout); i
0000C0: 74 6F 78 28 62 61 73 65 2C 20 20 20 20 20 20 73 tox(base, s
0000D0: 74 72 2C 20 35 29 3B 20 66 70 75 74 73 28 73 74 tr, 5); fputs(st
0000E0: 72 2C 20 73 74 64 6F 75 74 29 3B 0D 0A 20 20 20 r, stdout);..
0000F0: 20 66 70 75 74 73 28 22 2C 20 54 6F 20 22 2C 20 fputs(", To ",
000100: 20 20 20 73 74 64 6F 75 74 29 3B 20 69 74 6F 78 stdout); itox
000110: 28 62 61 73 65 2B 73 69 7A 65 2C 20 73 74 72 2C (base+size, str,
000120: 20 35 29 3B 20 66 70 75 74 73 28 73 74 72 2C 20 5); fputs(str,
000130: 73 74 64 6F 75 74 29 3B 0D 0A 20 20 20 20 66 70 stdout);.. fp
000140: 75 74 73 28 22 2C 20 53 69 7A 65 20 22 2C 20 20 uts(", Size ",
000150: 73 74 64 6F 75 74 29 3B 20 69 74 6F 78 28 73 69 stdout); itox(si
000160: 7A 65 2C 20 20 20 20 20 20 73 74 72 2C 20 35 29 ze, str, 5)
000170: 3B 20 66 70 75 74 73 28 73 74 72 2C 20 73 74 64 ; fputs(str, std
000180: 6F 75 74 29 3B 0D 0A 20 20 20 20 66 70 75 74 73 out);.. fputs
000190: 28 22 2C 20 53 74 61 72 74 20 22 2C 20 73 74 64 (", Start ", std
0001A0: 6F 75 74 29 3B 20 69 74 6F 78 28 73 74 61 72 74 out); itox(start
0001B0: 2C 20 20 20 20 20 73 74 72 2C 20 35 29 3B 20 20 , str, 5);
0001C0: 70 75 74 73 28 73 74 72 29 3B 0D 0A 20 20 20 20 puts(str);..
0001D0: 7D 0D 0A 20 20 6D 61 6C 6C 6F 63 28 53 54 41 43 }.. malloc(STAC
0001E0: 4B 29 3B 09 2F 2A 20 6E 65 77 20 6D 61 63 68 69 K);./* new machi
0001F0: 6E 65 20 73 74 61 63 6B 20 2A 2F 0D 0A 20 20 6D ne stack */.. m
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 61 6C 6C 6F 63 28 31 29 3B 09 09 2F 2A 20 6C 65 alloc(1);../* le
000010: 61 76 65 73 20 6E 65 77 20 73 74 61 63 6B 20 61 aves new stack a
000020: 64 64 72 65 73 73 20 69 6E 20 48 4C 20 2A 2F 0D ddress in HL */.
000030: 0A 20 20 23 61 73 6D 0D 0A 20 20 53 50 48 4C 09 . #asm.. SPHL.
000040: 09 09 3B 20 6D 6F 76 65 20 73 74 61 63 6B 0D 0A ..; move stack..
000050: 20 20 4C 58 49 20 48 2C 30 09 09 3B 20 43 50 2F LXI H,0..; CP/
000060: 4D 20 72 65 74 75 72 6E 0D 0A 20 20 50 55 53 48 M return.. PUSH
000070: 20 48 09 09 3B 20 72 65 2D 73 74 61 63 6B 20 43 H..; re-stack C
000080: 50 2F 4D 20 72 65 74 75 72 6E 0D 0A 20 20 23 65 P/M return.. #e
000090: 6E 64 61 73 6D 0D 0A 20 20 72 65 61 64 28 69 6E ndasm.. read(in
0000A0: 66 64 2C 20 62 61 73 65 2C 20 73 69 7A 65 29 3B fd, base, size);
0000B0: 09 09 09 2F 2A 20 6C 6F 61 64 20 70 72 6F 67 72 .../* load progr
0000C0: 61 6D 20 2A 2F 0D 0A 20 20 69 66 28 66 65 72 72 am */.. if(ferr
0000D0: 6F 72 28 69 6E 66 64 29 29 20 65 72 72 6F 72 32 or(infd)) error2
0000E0: 28 22 2D 20 45 72 72 6F 72 20 52 65 61 64 69 6E ("- Error Readin
0000F0: 67 20 22 2C 20 69 6E 66 6E 29 3B 0D 0A 20 20 69 g ", infn);.. i
000100: 66 28 67 6F 29 20 7B 09 09 2F 2A 20 65 78 65 63 f(go) {../* exec
000110: 75 74 65 20 70 72 6F 67 72 61 6D 3F 20 2A 2F 0D ute program? */.
000120: 0A 20 20 20 20 73 74 61 72 74 3B 09 09 2F 2A 20 . start;../*
000130: 6C 65 61 76 65 73 20 73 74 61 72 74 69 6E 67 20 leaves starting
000140: 61 64 64 72 65 73 73 20 69 6E 20 48 4C 20 2A 2F address in HL */
000150: 0D 0A 20 20 20 20 23 61 73 6D 0D 0A 20 20 20 20 .. #asm..
000160: 50 43 48 4C 09 09 3B 20 4A 75 6D 70 20 74 6F 20 PCHL..; Jump to
000170: 73 74 61 72 74 20 61 64 64 72 65 73 73 20 77 69 start address wi
000180: 74 68 0D 0A 09 09 09 3B 20 43 50 2F 4D 20 72 65 th.....; CP/M re
000190: 74 75 72 6E 20 6F 6E 20 74 6F 70 20 6F 66 20 74 turn on top of t
0001A0: 68 69 73 20 73 74 61 63 6B 2E 0D 0A 20 20 20 20 his stack...
0001B0: 23 65 6E 64 61 73 6D 0D 0A 20 20 20 20 7D 0D 0A #endasm.. }..
0001C0: 20 20 65 78 69 74 28 30 29 3B 0D 0A 20 20 7D 0D exit(0);.. }.
0001D0: 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 67 65 74 20 73 77 .../*..** get sw
0001E0: 69 74 63 68 65 73 20 66 72 6F 6D 20 63 6F 6D 6D itches from comm
0001F0: 61 6E 64 20 6C 69 6E 65 0D 0A 2A 2F 0D 0A 67 65 and line..*/..ge
Size : 512 (Real : 512)
000000: 2F 2A 20 0D 0A 2A 2A 20 4C 47 4F 2E 43 20 2D 2D /* ..** LGO.C --
000010: 20 53 6D 61 6C 6C 2D 4D 61 63 20 4C 6F 61 64 2D Small-Mac Load-
000020: 61 6E 64 2D 47 6F 20 4C 6F 61 64 65 72 0D 0A 2A and-Go Loader..*
000030: 2A 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 20 *..**
000040: 20 20 20 20 43 6F 70 79 72 69 67 68 74 20 31 39 Copyright 19
000050: 38 35 20 4A 2E 20 45 2E 20 48 65 6E 64 72 69 78 85 J. E. Hendrix
000060: 0D 0A 2A 2A 0D 0A 2A 2A 20 55 73 61 67 65 3A 20 ..**..** Usage:
000070: 4C 47 4F 20 5B 2D 47 5D 20 5B 2D 4D 5D 20 70 72 LGO [-G] [-M] pr
000080: 6F 67 72 61 6D 0D 0A 2A 2A 0D 0A 2A 2A 20 2D 47 ogram..**..** -G
000090: 20 20 20 20 20 45 78 65 63 75 74 65 20 70 72 6F Execute pro
0000A0: 67 72 61 6D 20 61 66 74 65 72 20 6C 6F 61 64 69 gram after loadi
0000B0: 6E 67 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 2D 4D 20 20 ng...**..** -M
0000C0: 20 20 20 4D 6F 6E 69 74 6F 72 20 6C 6F 61 64 20 Monitor load
0000D0: 61 64 64 72 65 73 73 20 61 6E 64 20 73 69 7A 65 address and size
0000E0: 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 22 50 72 6F 67 72 ...**..** "Progr
0000F0: 61 6D 22 20 69 73 20 61 20 66 69 6C 65 20 73 70 am" is a file sp
000100: 65 63 69 66 69 65 72 20 66 6F 72 20 74 68 65 20 ecifier for the
000110: 70 72 6F 67 72 61 6D 20 62 65 69 6E 67 20 6C 6F program being lo
000120: 61 64 65 64 2E 0D 0A 2A 2A 20 44 65 66 61 75 6C aded...** Defaul
000130: 74 2C 20 61 6E 64 20 6F 6E 6C 79 20 61 6C 6C 6F t, and only allo
000140: 77 65 64 2C 20 65 78 74 65 6E 73 69 6F 6E 20 69 wed, extension i
000150: 73 20 4C 47 4F 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 45 s LGO...**..** E
000160: 6E 74 65 72 20 63 6F 6E 74 72 6F 6C 2D 53 20 74 nter control-S t
000170: 6F 20 70 61 75 73 65 20 61 6E 64 20 63 6F 6E 74 o pause and cont
000180: 72 6F 6C 2D 43 20 74 6F 20 61 62 6F 72 74 2E 0D rol-C to abort..
000190: 0A 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 73 .*/..#include <s
0001A0: 74 64 69 6F 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 tdio.h>..#includ
0001B0: 65 20 22 6E 6F 74 69 63 65 2E 68 22 0D 0A 0D 0A e "notice.h"....
0001C0: 23 64 65 66 69 6E 65 20 4E 4F 43 43 41 52 47 43 #define NOCCARGC
0001D0: 09 09 2F 2A 20 64 6F 6E 27 74 20 70 61 73 73 20 ../* don't pass
0001E0: 61 72 67 20 63 6F 75 6E 74 73 20 74 6F 20 66 75 arg counts to fu
0001F0: 6E 63 74 69 6F 6E 73 20 2A 2F 0D 0A 0D 0A 23 64 nctions */....#d
Size : 512 (Real : 512)
000000: 74 73 77 28 61 72 67 63 2C 20 61 72 67 76 29 20 tsw(argc, argv)
000010: 69 6E 74 20 61 72 67 63 2C 20 2A 61 72 67 76 3B int argc, *argv;
000020: 20 7B 0D 0A 20 20 63 68 61 72 20 61 72 67 5B 4E {.. char arg[N
000030: 41 4D 45 53 49 5A 45 5D 3B 0D 0A 20 20 69 6E 74 AMESIZE];.. int
000040: 20 61 72 67 6E 62 72 3B 20 61 72 67 6E 62 72 20 argnbr; argnbr
000050: 3D 20 30 3B 0D 0A 20 20 77 68 69 6C 65 28 67 65 = 0;.. while(ge
000060: 74 61 72 67 28 2B 2B 61 72 67 6E 62 72 2C 20 61 targ(++argnbr, a
000070: 72 67 2C 20 4E 41 4D 45 53 49 5A 45 2C 20 61 72 rg, NAMESIZE, ar
000080: 67 63 2C 20 61 72 67 76 29 20 21 3D 20 45 4F 46 gc, argv) != EOF
000090: 29 20 7B 0D 0A 20 20 20 20 69 66 28 61 72 67 5B ) {.. if(arg[
0000A0: 30 5D 20 21 3D 20 27 2D 27 29 20 63 6F 6E 74 69 0] != '-') conti
0000B0: 6E 75 65 3B 09 09 09 2F 2A 20 73 6B 69 70 20 66 nue;.../* skip f
0000C0: 69 6C 65 20 6E 61 6D 65 73 20 2A 2F 0D 0A 20 20 ile names */..
0000D0: 20 20 69 66 28 74 6F 75 70 70 65 72 28 61 72 67 if(toupper(arg
0000E0: 5B 31 5D 29 20 3D 3D 20 27 47 27 29 20 67 6F 20 [1]) == 'G') go
0000F0: 3D 20 59 45 53 3B 0D 0A 20 20 20 20 65 6C 73 65 = YES;.. else
000100: 20 69 66 28 74 6F 75 70 70 65 72 28 61 72 67 5B if(toupper(arg[
000110: 31 5D 29 20 3D 3D 20 27 4D 27 29 20 6D 6F 6E 69 1]) == 'M') moni
000120: 74 6F 72 20 3D 20 59 45 53 3B 0D 0A 20 20 20 20 tor = YES;..
000130: 65 6C 73 65 20 75 73 61 67 65 28 29 3B 0D 0A 20 else usage();..
000140: 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D }.. }..../*.
000150: 0A 2A 2A 20 61 62 6F 72 74 20 77 69 74 68 20 61 .** abort with a
000160: 20 75 73 61 67 65 20 6D 65 73 73 61 67 65 0D 0A usage message..
000170: 2A 2F 0D 0A 75 73 61 67 65 28 29 20 7B 0D 0A 20 */..usage() {..
000180: 20 65 72 72 6F 72 28 22 55 73 61 67 65 3A 20 4C error("Usage: L
000190: 47 4F 20 5B 2D 47 5D 20 5B 2D 4D 5D 20 70 72 6F GO [-G] [-M] pro
0001A0: 67 72 61 6D 22 29 3B 0D 0A 20 20 7D 0D 0A 1A 1A gram");.. }....
0001B0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
Size : 512 (Real : 512)
000000: 5B 4E 41 4D 45 53 49 5A 45 5D 2C 09 09 2F 2A 20 [NAMESIZE],../*
000010: 6E 65 77 20 6C 69 62 72 61 72 79 20 6E 61 6D 65 new library name
000020: 20 28 74 65 6D 70 6F 72 61 72 79 29 20 2A 2F 0D (temporary) */.
000030: 0A 20 20 6E 65 77 6E 64 78 5B 4E 41 4D 45 53 49 . newndx[NAMESI
000040: 5A 45 5D 2C 09 09 2F 2A 20 6E 65 77 20 69 6E 64 ZE],../* new ind
000050: 65 78 20 6E 61 6D 65 20 28 74 65 6D 70 6F 72 61 ex name (tempora
000060: 72 79 29 20 2A 2F 0D 0A 20 2A 6D 6F 64 6E 61 6D ry) */.. *modnam
000070: 65 3B 09 09 09 2F 2A 20 70 6F 69 6E 74 73 20 74 e;.../* points t
000080: 6F 20 6D 6F 64 75 6C 65 20 6E 61 6D 65 20 62 75 o module name bu
000090: 66 66 65 72 20 2A 2F 0D 0A 0D 0A 69 6E 74 0D 0A ffer */....int..
0000A0: 20 2A 6D 70 74 72 2C 09 09 09 09 2F 2A 20 6D 6F *mptr,..../* mo
0000B0: 64 75 6C 65 20 6E 61 6D 65 20 70 6F 69 6E 74 65 dule name pointe
0000C0: 72 73 20 2A 2F 0D 0A 20 2A 6D 64 6F 6E 65 2C 09 rs */.. *mdone,.
0000D0: 09 09 2F 2A 20 64 6F 6E 65 20 77 69 74 68 20 6D ../* done with m
0000E0: 6F 64 75 6C 65 3F 20 2A 2F 0D 0A 20 20 6D 6F 64 odule? */.. mod
0000F0: 75 6C 65 73 2C 09 09 09 2F 2A 20 63 6F 75 6E 74 ules,.../* count
000100: 20 6F 66 20 6D 6F 64 75 6C 65 73 20 74 6F 20 70 of modules to p
000110: 72 6F 63 65 73 73 20 2A 2F 0D 0A 20 20 61 6C 6C rocess */.. all
000120: 2C 09 09 09 09 2F 2A 20 70 72 6F 63 65 73 73 20 ,..../* process
000130: 61 6C 6C 20 6D 65 6D 62 65 72 73 3F 20 2A 2F 0D all members? */.
000140: 0A 20 20 69 6E 6E 64 78 2C 09 09 09 2F 2A 20 69 . inndx,.../* i
000150: 6E 70 75 74 20 69 6E 64 65 78 20 66 64 20 2A 2F nput index fd */
000160: 0D 0A 20 20 6F 75 74 6E 64 78 2C 09 09 09 2F 2A .. outndx,.../*
000170: 20 6F 75 74 70 75 74 20 69 6E 64 65 78 20 66 64 output index fd
000180: 20 2A 2F 0D 0A 20 20 6F 6C 64 62 6C 6F 63 6B 2C */.. oldblock,
000190: 09 09 09 2F 2A 20 62 6C 6F 63 6B 20 6F 66 20 6E .../* block of n
0001A0: 65 78 74 20 69 6E 70 75 74 20 6D 65 6D 62 65 72 ext input member
0001B0: 20 2A 2F 0D 0A 20 20 6F 6C 64 62 79 74 65 2C 09 */.. oldbyte,.
0001C0: 09 09 2F 2A 20 62 79 74 65 20 69 6E 20 62 6C 6F ../* byte in blo
0001D0: 63 6B 20 6F 66 20 6E 65 78 74 20 69 6E 70 75 74 ck of next input
0001E0: 20 6D 65 6D 62 65 72 20 2A 2F 0D 0A 20 20 6E 65 member */.. ne
0001F0: 77 62 6C 6F 63 6B 2C 09 09 09 2F 2A 20 62 6C 6F wblock,.../* blo
Size : 512 (Real : 512)
000000: 2F 2A 20 0D 0A 2A 2A 20 4C 49 42 2E 43 20 2D 2D /* ..** LIB.C --
000010: 20 53 6D 61 6C 6C 2D 4D 61 63 20 4C 69 62 72 61 Small-Mac Libra
000020: 72 79 20 4D 61 6E 61 67 65 72 0D 0A 2A 2A 0D 0A ry Manager..**..
000030: 2A 2A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 **
000040: 20 20 20 20 43 6F 70 79 72 69 67 68 74 20 31 39 Copyright 19
000050: 38 35 20 4A 2E 20 45 2E 20 48 65 6E 64 72 69 78 85 J. E. Hendrix
000060: 0D 0A 2A 2A 0D 0A 2A 2A 20 55 73 61 67 65 3A 20 ..**..** Usage:
000070: 4C 49 42 20 2D 7B 44 50 54 55 58 7D 5B 41 5D 20 LIB -{DPTUX}[A]
000080: 6C 69 62 72 61 72 79 20 5B 6D 6F 64 75 6C 65 2E library [module.
000090: 2E 2E 5D 0D 0A 2A 2A 0D 0A 2A 2A 20 2D 44 20 20 ..]..**..** -D
0000A0: 20 20 20 64 65 6C 65 74 65 20 6E 61 6D 65 64 20 delete named
0000B0: 6D 6F 64 75 6C 65 73 0D 0A 2A 2A 20 2D 50 5B 41 modules..** -P[A
0000C0: 5D 20 20 70 72 69 6E 74 20 6E 61 6D 65 64 2C 20 ] print named,
0000D0: 6F 72 20 61 6C 6C 20 28 2D 50 41 29 2C 20 6D 6F or all (-PA), mo
0000E0: 64 75 6C 65 73 20 6F 6E 20 73 74 64 6F 75 74 0D dules on stdout.
0000F0: 0A 2A 2A 20 2D 54 5B 41 5D 20 20 74 61 62 6C 65 .** -T[A] table
000100: 20 6F 66 20 63 6F 6E 74 65 6E 74 73 20 6F 66 20 of contents of
000110: 6E 61 6D 65 64 2C 20 6F 72 20 61 6C 6C 20 28 2D named, or all (-
000120: 54 41 29 2C 20 66 69 6C 65 73 20 6F 6E 20 73 74 TA), files on st
000130: 64 6F 75 74 0D 0A 2A 2A 20 2D 55 20 20 20 20 20 dout..** -U
000140: 75 70 64 61 74 65 20 28 61 64 64 69 6E 67 2F 72 update (adding/r
000150: 65 70 6C 61 63 65 29 20 6E 61 6D 65 64 20 6D 6F eplace) named mo
000160: 64 75 6C 65 73 0D 0A 2A 2A 20 20 20 20 20 20 20 dules..**
000170: 20 28 67 65 74 73 20 6D 6F 64 75 6C 65 20 6E 61 (gets module na
000180: 6D 65 73 20 66 72 6F 6D 20 73 74 64 69 6E 20 69 mes from stdin i
000190: 66 20 6E 6F 74 20 69 6E 20 63 6F 6D 6D 61 6E 64 f not in command
0001A0: 20 6C 69 6E 65 29 0D 0A 2A 2A 20 2D 58 5B 41 5D line)..** -X[A]
0001B0: 20 20 65 78 74 72 61 63 74 20 6E 61 6D 65 64 2C extract named,
0001C0: 20 6F 72 20 61 6C 6C 20 28 2D 58 41 29 2C 20 6D or all (-XA), m
0001D0: 6F 64 75 6C 65 73 0D 0A 2A 2A 0D 0A 2A 2A 20 20 odules..**..**
0001E0: 20 20 20 20 20 20 54 68 65 20 41 20 73 75 66 66 The A suff
0001F0: 69 78 20 6F 62 76 69 61 74 65 73 20 70 72 6F 6D ix obviates prom
Size : 512 (Real : 512)
000000: 63 6B 20 6F 66 20 6E 65 78 74 20 6F 75 74 70 75 ck of next outpu
000010: 74 20 6D 65 6D 62 65 72 20 2A 2F 0D 0A 20 20 6E t member */.. n
000020: 65 77 62 79 74 65 3B 09 09 09 2F 2A 20 62 79 74 ewbyte;.../* byt
000030: 65 20 69 6E 20 62 6C 6F 63 6B 20 6F 66 20 6E 65 e in block of ne
000040: 78 74 20 6F 75 74 70 75 74 20 6D 65 6D 62 65 72 xt output member
000050: 20 2A 2F 0D 0A 0D 0A 69 6E 74 20 20 69 74 65 6D */....int item
000060: 32 2C 20 74 79 70 65 32 2C 20 66 69 65 6C 64 32 2, type2, field2
000070: 2C 20 69 6E 72 65 6C 32 2C 20 69 6E 72 65 6D 32 , inrel2, inrem2
000080: 2C 20 69 6E 63 68 32 3B 0D 0A 63 68 61 72 20 73 , inch2;..char s
000090: 79 6D 32 5B 4E 41 4D 45 53 49 5A 45 5D 3B 0D 0A ym2[NAMESIZE];..
0000A0: 0D 0A 6D 61 69 6E 28 61 72 67 63 2C 61 72 67 76 ..main(argc,argv
0000B0: 29 20 69 6E 74 20 61 72 67 63 2C 20 61 72 67 76 ) int argc, argv
0000C0: 5B 5D 3B 20 7B 0D 0A 20 20 66 70 75 74 73 28 22 []; {.. fputs("
0000D0: 53 6D 61 6C 6C 2D 4D 61 63 20 4C 69 62 72 61 72 Small-Mac Librar
0000E0: 79 20 4D 61 6E 61 67 65 72 2C 20 22 2C 20 73 74 y Manager, ", st
0000F0: 64 65 72 72 29 3B 20 66 70 75 74 73 28 56 45 52 derr); fputs(VER
000100: 53 49 4F 4E 2C 20 73 74 64 65 72 72 29 3B 0D 0A SION, stderr);..
000110: 20 20 66 70 75 74 73 28 43 52 49 47 48 54 31 2C fputs(CRIGHT1,
000120: 20 73 74 64 65 72 72 29 3B 0D 0A 20 20 6D 70 74 stderr);.. mpt
000130: 72 20 20 3D 20 63 61 6C 6C 6F 63 28 4D 41 58 4D r = calloc(MAXM
000140: 4F 44 53 2C 20 32 29 3B 09 2F 2A 20 61 6C 6C 6F ODS, 2);./* allo
000150: 63 61 74 65 20 7A 65 72 6F 65 64 20 6D 65 6D 6F cate zeroed memo
000160: 72 79 20 2A 2F 0D 0A 20 20 6D 64 6F 6E 65 20 3D ry */.. mdone =
000170: 20 63 61 6C 6C 6F 63 28 4D 41 58 4D 4F 44 53 2C calloc(MAXMODS,
000180: 20 32 29 3B 0D 0A 20 20 69 66 28 67 65 74 61 72 2);.. if(getar
000190: 67 28 31 2C 20 63 6D 64 2C 20 35 2C 20 61 72 67 g(1, cmd, 5, arg
0001A0: 63 2C 20 61 72 67 76 29 20 3D 3D 20 45 4F 46 29 c, argv) == EOF)
0001B0: 20 75 73 61 67 65 28 29 3B 0D 0A 20 20 63 6D 64 usage();.. cmd
0001C0: 5B 31 5D 20 3D 20 74 6F 75 70 70 65 72 28 63 6D [1] = toupper(cm
0001D0: 64 5B 31 5D 29 3B 0D 0A 20 20 63 6D 64 5B 32 5D d[1]);.. cmd[2]
0001E0: 20 3D 20 74 6F 75 70 70 65 72 28 63 6D 64 5B 32 = toupper(cmd[2
0001F0: 5D 29 3B 0D 0A 20 20 69 66 28 63 6D 64 5B 30 5D ]);.. if(cmd[0]
Size : 512 (Real : 512)
000000: 70 74 69 6E 67 20 73 74 64 69 6E 20 66 6F 72 20 pting stdin for
000010: 6D 6F 64 75 6C 65 0D 0A 2A 2A 20 20 20 20 20 20 module..**
000020: 20 20 6E 61 6D 65 73 20 77 68 65 6E 20 6E 6F 6E names when non
000030: 65 20 61 72 65 20 69 6E 20 74 68 65 20 63 6F 6D e are in the com
000040: 6D 61 6E 64 20 6C 69 6E 65 2E 20 20 54 68 69 73 mand line. This
000050: 20 69 73 20 68 61 6E 64 79 20 66 6F 72 0D 0A 2A is handy for..*
000060: 2A 20 20 20 20 20 20 20 20 65 6C 69 6D 69 6E 61 * elimina
000070: 74 69 6E 67 20 6F 70 65 72 61 74 6F 72 20 69 6E ting operator in
000080: 74 65 72 76 65 6E 74 69 6F 6E 2C 20 65 73 70 65 tervention, espe
000090: 63 69 61 6C 6C 79 20 69 6E 20 62 61 74 63 68 20 cially in batch
0000A0: 6D 6F 64 65 2E 0D 0A 2A 2A 20 20 20 20 20 20 20 mode...**
0000B0: 20 4F 72 64 69 6E 61 72 69 6C 79 2C 20 77 68 65 Ordinarily, whe
0000C0: 6E 20 6E 6F 20 6D 6F 64 75 6C 65 73 20 61 72 65 n no modules are
0000D0: 20 67 69 76 65 6E 20 69 6E 20 74 68 65 20 63 6F given in the co
0000E0: 6D 6D 61 6E 64 20 6C 69 6E 65 2C 0D 0A 2A 2A 20 mmand line,..**
0000F0: 20 20 20 20 20 20 20 4C 49 42 20 70 72 6F 6D 70 LIB promp
000100: 74 73 20 74 68 65 20 75 73 65 72 20 28 69 66 20 ts the user (if
000110: 73 74 64 69 6E 20 69 73 20 6E 6F 74 20 72 65 64 stdin is not red
000120: 69 72 65 63 74 65 64 29 20 61 6E 64 0D 0A 2A 2A irected) and..**
000130: 20 20 20 20 20 20 20 20 61 63 63 65 70 74 73 20 accepts
000140: 6F 6E 65 20 6D 6F 64 75 6C 65 20 6E 61 6D 65 20 one module name
000150: 61 74 20 61 20 74 69 6D 65 20 66 72 6F 6D 20 73 at a time from s
000160: 74 64 69 6E 2E 20 20 49 66 20 6E 6F 6E 65 0D 0A tdin. If none..
000170: 2A 2A 20 20 20 20 20 20 20 20 61 72 65 20 67 69 ** are gi
000180: 76 65 6E 20 28 43 52 20 72 65 73 70 6F 6E 73 65 ven (CR response
000190: 20 74 6F 20 66 69 72 73 74 20 70 72 6F 6D 70 74 to first prompt
0001A0: 29 20 61 6E 64 20 74 68 65 20 63 6F 6D 6D 61 6E ) and the comman
0001B0: 64 0D 0A 2A 2A 20 20 20 20 20 20 20 20 73 77 69 d..** swi
0001C0: 74 63 68 20 69 73 20 2D 50 2C 20 2D 54 2C 20 6F tch is -P, -T, o
0001D0: 72 20 2D 58 20 74 68 65 6E 20 61 6C 6C 20 6D 65 r -X then all me
0001E0: 6D 62 65 72 73 20 6F 66 20 74 68 65 20 6C 69 62 mbers of the lib
0001F0: 72 61 72 79 20 61 72 65 0D 0A 2A 2A 20 20 20 20 rary are..**
Size : 512 (Real : 512)
000000: 20 21 3D 20 27 2D 27 20 7C 7C 20 28 63 6D 64 5B != '-' || (cmd[
000010: 32 5D 20 26 26 20 63 6D 64 5B 32 5D 20 21 3D 20 2] && cmd[2] !=
000020: 27 41 27 29 20 7C 7C 20 73 74 72 6C 65 6E 28 63 'A') || strlen(c
000030: 6D 64 29 20 3E 20 33 29 20 75 73 61 67 65 28 29 md) > 3) usage()
000040: 3B 0D 0A 20 20 69 66 28 67 65 74 61 72 67 28 32 ;.. if(getarg(2
000050: 2C 20 20 6F 6C 64 6C 69 62 2C 20 4E 41 4D 45 53 , oldlib, NAMES
000060: 49 5A 45 2C 20 61 72 67 63 2C 20 61 72 67 76 29 IZE, argc, argv)
000070: 20 3D 3D 20 45 4F 46 29 20 75 73 61 67 65 28 29 == EOF) usage()
000080: 3B 0D 0A 20 20 65 78 74 65 6E 64 28 6F 6C 64 6C ;.. extend(oldl
000090: 69 62 2C 20 4C 49 42 45 58 54 2C 20 4C 49 42 45 ib, LIBEXT, LIBE
0000A0: 58 54 29 3B 0D 0A 20 20 6E 65 77 66 6E 28 6F 6C XT);.. newfn(ol
0000B0: 64 6E 64 78 2C 20 6F 6C 64 6C 69 62 2C 20 4E 44 dndx, oldlib, ND
0000C0: 58 45 58 54 29 3B 0D 0A 20 20 6E 65 77 66 6E 28 XEXT);.. newfn(
0000D0: 6E 65 77 6C 69 62 2C 20 6F 6C 64 6C 69 62 2C 20 newlib, oldlib,
0000E0: 4C 5F 45 58 54 29 3B 0D 0A 20 20 6E 65 77 66 6E L_EXT);.. newfn
0000F0: 28 6E 65 77 6E 64 78 2C 20 6F 6C 64 6C 69 62 2C (newndx, oldlib,
000100: 20 4E 5F 45 58 54 29 3B 0D 0A 20 20 67 65 74 6D N_EXT);.. getm
000110: 6F 64 73 28 61 72 67 63 2C 20 61 72 67 76 29 3B ods(argc, argv);
000120: 09 09 2F 2A 20 67 61 74 68 65 72 20 73 77 69 74 ../* gather swit
000130: 63 68 65 73 20 61 6E 64 20 6D 6F 64 75 6C 65 20 ches and module
000140: 6E 61 6D 65 73 20 2A 2F 0D 0A 20 20 73 77 69 74 names */.. swit
000150: 63 68 28 63 6D 64 5B 31 5D 29 20 7B 0D 0A 20 20 ch(cmd[1]) {..
000160: 20 20 63 61 73 65 20 27 44 27 3A 20 64 72 6F 70 case 'D': drop
000170: 28 29 3B 20 20 20 20 62 72 65 61 6B 3B 0D 0A 20 (); break;..
000180: 20 20 20 63 61 73 65 20 27 54 27 3A 20 74 61 62 case 'T': tab
000190: 6C 65 28 29 3B 20 20 20 62 72 65 61 6B 3B 0D 0A le(); break;..
0001A0: 20 20 20 20 63 61 73 65 20 27 55 27 3A 20 75 70 case 'U': up
0001B0: 64 61 74 65 28 29 3B 20 20 62 72 65 61 6B 3B 0D date(); break;.
0001C0: 0A 20 20 20 20 63 61 73 65 20 27 58 27 3A 20 65 . case 'X': e
0001D0: 78 74 72 61 63 74 28 29 3B 20 62 72 65 61 6B 3B xtract(); break;
0001E0: 0D 0A 20 20 20 20 63 61 73 65 20 27 50 27 3A 20 .. case 'P':
0001F0: 70 72 69 6E 74 28 29 3B 20 20 20 62 72 65 61 6B print(); break
Size : 512 (Real : 512)
000000: 20 20 20 20 70 72 6F 63 65 73 73 65 64 2E 0D 0A processed...
000010: 2A 2A 0D 0A 2A 2A 20 44 72 69 76 65 20 44 65 73 **..** Drive Des
000020: 69 67 6E 61 74 6F 72 73 20 28 65 2E 67 2E 20 42 ignators (e.g. B
000030: 3A 29 3A 0D 0A 2A 2A 20 20 20 20 20 61 6C 6C 6F :):..** allo
000040: 77 65 64 20 77 69 74 68 20 61 6E 79 20 6C 69 62 wed with any lib
000050: 72 61 72 79 20 61 6E 64 20 6D 6F 64 75 6C 65 20 rary and module
000060: 6E 61 6D 65 73 0D 0A 2A 2A 20 20 20 20 20 6E 65 names..** ne
000070: 77 20 6C 69 62 72 61 72 79 20 61 6E 64 20 69 6E w library and in
000080: 64 65 78 20 67 6F 20 6F 6E 20 73 61 6D 65 20 64 dex go on same d
000090: 72 69 76 65 20 61 73 20 6F 6C 64 0D 0A 2A 2A 20 rive as old..**
0000A0: 20 20 20 20 77 69 6C 6C 20 64 65 66 61 75 6C 74 will default
0000B0: 20 74 6F 20 74 68 65 20 64 65 66 61 75 6C 74 20 to the default
0000C0: 64 72 69 76 65 0D 0A 2A 2A 0D 0A 2A 2A 20 46 69 drive..**..** Fi
0000D0: 6C 65 6E 61 6D 65 20 45 78 74 65 6E 73 69 6F 6E lename Extension
0000E0: 73 3A 0D 0A 2A 2A 20 20 20 20 20 64 6F 20 4E 4F s:..** do NO
0000F0: 54 20 73 70 65 63 69 66 79 20 77 69 74 68 20 6C T specify with l
000100: 69 62 72 61 72 79 20 6F 72 20 6D 6F 64 75 6C 65 ibrary or module
000110: 20 6E 61 6D 65 73 0D 0A 2A 2A 20 20 20 20 20 73 names..** s
000120: 74 61 6E 64 61 72 64 20 65 78 74 65 6E 73 69 6F tandard extensio
000130: 6E 73 20 61 72 65 3A 0D 0A 2A 2A 0D 0A 2A 2A 20 ns are:..**..**
000140: 20 20 20 20 2E 52 45 4C 20 3D 20 72 65 6C 6F 63 .REL = reloc
000150: 61 74 61 62 6C 65 20 6F 62 6A 65 63 74 20 6D 6F atable object mo
000160: 64 75 6C 65 0D 0A 2A 2A 20 20 20 20 20 2E 4C 49 dule..** .LI
000170: 42 20 3D 20 6C 69 62 72 61 72 79 20 6F 66 20 6F B = library of o
000180: 62 6A 65 63 74 20 6D 6F 64 75 6C 65 73 0D 0A 2A bject modules..*
000190: 2A 20 20 20 20 20 2E 4E 44 58 20 3D 20 69 6E 64 * .NDX = ind
0001A0: 65 78 20 74 6F 20 6C 69 62 72 61 72 79 0D 0A 2A ex to library..*
0001B0: 2A 20 20 20 20 20 2E 4C 24 20 20 3D 20 74 65 6D * .L$ = tem
0001C0: 70 6F 72 61 72 79 20 6E 65 77 20 6C 69 62 72 61 porary new libra
0001D0: 72 79 0D 0A 2A 2A 20 20 20 20 20 2E 4E 24 20 20 ry..** .N$
0001E0: 3D 20 74 65 6D 70 6F 72 61 72 79 20 6E 65 77 20 = temporary new
0001F0: 69 6E 64 65 78 0D 0A 2A 2A 0D 0A 2A 2A 20 45 6E index..**..** En
Size : 512 (Real : 512)
000000: 3B 0D 0A 20 20 20 20 20 64 65 66 61 75 6C 74 3A ;.. default:
000010: 20 75 73 61 67 65 28 29 3B 0D 0A 20 20 20 20 7D usage();.. }
000020: 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 .. }..../*..**
000030: 61 64 64 20 6D 6F 64 75 6C 65 20 74 6F 20 6C 69 add module to li
000040: 62 72 61 72 79 0D 0A 2A 2F 0D 0A 61 64 64 6D 6F brary..*/..addmo
000050: 64 28 6E 61 6D 65 29 20 63 68 61 72 20 2A 6E 61 d(name) char *na
000060: 6D 65 3B 20 7B 0D 0A 20 20 63 68 61 72 20 2A 63 me; {.. char *c
000070: 70 2C 20 6E 61 6D 5B 4E 41 4D 45 53 49 5A 45 5D p, nam[NAMESIZE]
000080: 3B 0D 0A 20 20 73 61 76 65 72 65 6C 28 29 3B 09 ;.. saverel();.
000090: 09 09 2F 2A 20 73 61 76 65 20 52 45 4C 20 76 61 ../* save REL va
0000A0: 72 69 61 62 6C 65 73 20 2A 2F 0D 0A 20 20 73 74 riables */.. st
0000B0: 72 63 70 79 28 6E 61 6D 2C 20 6E 61 6D 65 29 3B rcpy(nam, name);
0000C0: 20 65 78 74 65 6E 64 28 6E 61 6D 2C 20 4D 4F 44 extend(nam, MOD
0000D0: 45 58 54 2C 20 4D 4F 44 45 58 54 29 3B 0D 0A 20 EXT, MODEXT);..
0000E0: 20 69 6E 72 65 6C 20 3D 20 6F 70 65 6E 28 6E 61 inrel = open(na
0000F0: 6D 2C 20 22 72 22 29 3B 0D 0A 20 20 63 70 79 6D m, "r");.. cpym
000100: 6F 64 28 4E 4F 29 3B 09 09 09 2F 2A 20 64 6F 20 od(NO);.../* do
000110: 6E 6F 74 20 61 6C 72 65 61 64 79 20 68 61 76 65 not already have
000120: 20 68 65 61 64 65 72 20 2A 2F 0D 0A 20 20 63 6C header */.. cl
000130: 6F 73 65 28 69 6E 72 65 6C 29 3B 0D 0A 20 20 72 ose(inrel);.. r
000140: 65 73 74 72 65 6C 28 29 3B 09 09 09 2F 2A 20 72 estrel();.../* r
000150: 65 73 74 6F 72 65 20 52 45 4C 20 76 61 72 69 61 estore REL varia
000160: 62 6C 65 73 20 2A 2F 0D 0A 20 20 73 74 72 63 70 bles */.. strcp
000170: 79 28 6E 61 6D 2C 20 6E 61 6D 65 29 3B 0D 0A 20 y(nam, name);..
000180: 20 69 66 28 6E 61 6D 5B 31 5D 20 3D 3D 20 27 3A if(nam[1] == ':
000190: 27 29 20 63 70 20 3D 20 6E 61 6D 20 2B 20 32 3B ') cp = nam + 2;
0001A0: 20 65 6C 73 65 20 63 70 20 3D 20 6E 61 6D 3B 0D else cp = nam;.
0001B0: 0A 20 20 63 70 5B 4D 41 58 53 59 4D 5D 20 3D 20 . cp[MAXSYM] =
0001C0: 4E 55 4C 4C 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A NULL;.. }..../*
0001D0: 0D 0A 2A 2A 20 63 6C 6F 73 65 20 69 6E 70 75 74 ..** close input
0001E0: 20 6C 69 62 72 61 72 79 20 61 6E 64 20 69 6E 64 library and ind
0001F0: 65 78 0D 0A 2A 2F 0D 0A 63 6C 6F 73 65 69 6E 28 ex..*/..closein(
Size : 512 (Real : 512)
000000: 74 65 72 20 63 6F 6E 74 72 6F 6C 2D 53 20 74 6F ter control-S to
000010: 20 70 61 75 73 65 20 61 6E 64 20 63 6F 6E 74 72 pause and contr
000020: 6F 6C 2D 43 20 74 6F 20 61 62 6F 72 74 2E 0D 0A ol-C to abort...
000030: 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 73 74 */..#include <st
000040: 64 69 6F 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 dio.h>..#include
000050: 20 22 6E 6F 74 69 63 65 2E 68 22 0D 0A 23 69 6E "notice.h"..#in
000060: 63 6C 75 64 65 20 22 72 65 6C 2E 68 22 0D 0A 0D clude "rel.h"...
000070: 0A 23 64 65 66 69 6E 65 20 4E 4F 43 43 41 52 47 .#define NOCCARG
000080: 43 09 09 2F 2A 20 6E 6F 20 61 72 67 75 6D 65 6E C../* no argumen
000090: 74 20 63 6F 75 6E 74 20 70 61 73 73 69 6E 67 20 t count passing
0000A0: 2A 2F 0D 0A 23 64 65 66 69 6E 65 20 4E 41 4D 45 */..#define NAME
0000B0: 53 49 5A 45 20 20 20 31 35 0D 0A 23 64 65 66 69 SIZE 15..#defi
0000C0: 6E 65 20 4D 41 58 4D 4F 44 53 20 20 20 32 30 30 ne MAXMODS 200
0000D0: 0D 0A 23 64 65 66 69 6E 65 20 4D 4F 44 45 58 54 ..#define MODEXT
0000E0: 20 20 22 2E 52 45 4C 22 0D 0A 23 64 65 66 69 6E ".REL"..#defin
0000F0: 65 20 4C 49 42 45 58 54 20 20 22 2E 4C 49 42 22 e LIBEXT ".LIB"
000100: 0D 0A 23 64 65 66 69 6E 65 20 4E 44 58 45 58 54 ..#define NDXEXT
000110: 20 20 22 2E 4E 44 58 22 0D 0A 23 64 65 66 69 6E ".NDX"..#defin
000120: 65 20 4C 5F 45 58 54 20 20 20 22 2E 4C 24 22 0D e L_EXT ".L$".
000130: 0A 23 64 65 66 69 6E 65 20 4E 5F 45 58 54 20 20 .#define N_EXT
000140: 20 22 2E 4E 24 22 0D 0A 23 64 65 66 69 6E 65 20 ".N$"..#define
000150: 48 49 47 48 20 20 20 20 20 20 31 32 37 09 09 2F HIGH 127../
000160: 2A 20 68 69 67 68 2D 76 61 6C 75 65 20 62 79 74 * high-value byt
000170: 65 20 2A 2F 0D 0A 0D 0A 63 68 61 72 0D 0A 20 20 e */....char..
000180: 63 6D 64 5B 35 5D 2C 09 09 09 2F 2A 20 63 6F 6D cmd[5],.../* com
000190: 6D 61 6E 64 20 73 77 69 74 63 68 20 2A 2F 0D 0A mand switch */..
0001A0: 20 20 6F 6C 64 6C 69 62 5B 4E 41 4D 45 53 49 5A oldlib[NAMESIZ
0001B0: 45 5D 2C 09 09 2F 2A 20 6F 6C 64 20 6C 69 62 72 E],../* old libr
0001C0: 61 72 79 20 6E 61 6D 65 20 2A 2F 0D 0A 20 20 6F ary name */.. o
0001D0: 6C 64 6E 64 78 5B 4E 41 4D 45 53 49 5A 45 5D 2C ldndx[NAMESIZE],
0001E0: 09 09 2F 2A 20 6F 6C 64 20 69 6E 64 65 78 20 6E ../* old index n
0001F0: 61 6D 65 20 2A 2F 0D 0A 20 20 6E 65 77 6C 69 62 ame */.. newlib
Size : 512 (Real : 512)
000000: 6D 6F 64 31 2C 20 6D 6F 64 32 29 20 63 68 61 72 mod1, mod2) char
000010: 20 2A 6D 6F 64 31 2C 20 2A 6D 6F 64 32 20 3B 20 *mod1, *mod2 ;
000020: 7B 0D 0A 20 20 63 6C 6F 73 65 28 69 6E 72 65 6C {.. close(inrel
000030: 29 3B 0D 0A 20 20 63 6C 6F 73 65 28 69 6E 6E 64 );.. close(innd
000040: 78 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A x);.. }..../*..
000050: 2A 2A 20 63 6C 6F 73 65 20 6F 75 74 70 75 74 20 ** close output
000060: 6C 69 62 72 61 72 79 20 61 6E 64 20 69 6E 64 65 library and inde
000070: 78 0D 0A 2A 2F 0D 0A 63 6C 6F 73 65 75 70 28 6D x..*/..closeup(m
000080: 6F 64 31 2C 20 6D 6F 64 32 29 20 63 68 61 72 20 od1, mod2) char
000090: 2A 6D 6F 64 31 2C 20 2A 6D 6F 64 32 20 3B 20 7B *mod1, *mod2 ; {
0000A0: 0D 0A 20 20 63 6C 6F 73 65 69 6E 28 29 3B 0D 0A .. closein();..
0000B0: 20 20 65 6E 64 72 65 6C 28 29 3B 0D 0A 20 20 63 endrel();.. c
0000C0: 6C 6F 73 65 28 6F 75 74 72 65 6C 29 3B 0D 0A 20 lose(outrel);..
0000D0: 20 70 75 74 6E 64 78 28 6E 65 77 62 6C 6F 63 6B putndx(newblock
0000E0: 2C 20 6E 65 77 62 79 74 65 29 3B 09 09 09 2F 2A , newbyte);.../*
0000F0: 20 69 6E 64 65 78 20 45 46 49 4C 45 20 2A 2F 0D index EFILE */.
000100: 0A 20 20 70 75 74 6E 64 78 28 45 4F 46 2C 20 45 . putndx(EOF, E
000110: 4F 46 29 3B 09 09 09 09 2F 2A 20 74 65 72 6D 69 OF);..../* termi
000120: 6E 61 74 65 20 6E 65 77 20 69 6E 64 65 78 20 2A nate new index *
000130: 2F 0D 0A 20 20 63 6C 6F 73 65 28 6F 75 74 6E 64 /.. close(outnd
000140: 78 29 3B 0D 0A 20 20 6D 6F 76 66 69 6C 28 6E 65 x);.. movfil(ne
000150: 77 6C 69 62 2C 20 6F 6C 64 6C 69 62 29 3B 09 09 wlib, oldlib);..
000160: 09 2F 2A 20 74 61 6B 65 20 6F 72 69 67 69 6E 61 ./* take origina
000170: 6C 20 6E 61 6D 65 73 20 2A 2F 0D 0A 20 20 6D 6F l names */.. mo
000180: 76 66 69 6C 28 6E 65 77 6E 64 78 2C 20 6F 6C 64 vfil(newndx, old
000190: 6E 64 78 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A ndx);.. }..../*
0001A0: 0D 0A 2A 2A 20 63 6F 6D 70 61 72 65 20 6D 6F 64 ..** compare mod
0001B0: 75 6C 65 20 6E 61 6D 65 73 20 69 67 6E 6F 72 69 ule names ignori
0001C0: 6E 67 20 64 72 69 76 65 20 64 65 73 69 67 6E 61 ng drive designa
0001D0: 74 6F 72 73 0D 0A 2A 2F 0D 0A 63 6D 70 6D 6F 64 tors..*/..cmpmod
0001E0: 28 6D 6F 64 31 2C 20 6D 6F 64 32 29 20 63 68 61 (mod1, mod2) cha
0001F0: 72 20 2A 6D 6F 64 31 2C 20 2A 6D 6F 64 32 3B 20 r *mod1, *mod2;
Size : 512 (Real : 512)
000000: 3D 3D 20 27 54 27 20 7C 7C 20 63 6D 64 5B 31 5D == 'T' || cmd[1]
000010: 20 3D 3D 20 27 58 27 29 29 20 7B 0D 0A 20 20 20 == 'X')) {..
000020: 20 20 20 6D 6F 64 6E 61 6D 65 5B 30 5D 20 3D 20 modname[0] =
000030: 48 49 47 48 3B 09 09 2F 2A 20 68 69 67 68 20 76 HIGH;../* high v
000040: 61 6C 75 65 20 2A 2F 0D 0A 20 20 20 20 20 20 6D alue */.. m
000050: 6F 64 6E 61 6D 65 5B 31 5D 20 3D 20 4E 55 4C 4C odname[1] = NULL
000060: 3B 0D 0A 20 20 20 20 20 20 72 65 74 75 72 6E 3B ;.. return;
000070: 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 7D .. }.. }
000080: 0D 0A 20 20 65 72 72 20 3D 20 65 6F 66 20 3D 20 .. err = eof =
000090: 4E 4F 3B 0D 0A 20 20 77 68 69 6C 65 28 6D 6F 64 NO;.. while(mod
0000A0: 75 6C 65 73 20 3C 20 4D 41 58 4D 4F 44 53 2D 31 ules < MAXMODS-1
0000B0: 29 20 7B 0D 0A 20 20 20 20 70 6F 6C 6C 28 59 45 ) {.. poll(YE
0000C0: 53 29 3B 0D 0A 20 20 20 20 69 66 28 61 72 67 29 S);.. if(arg)
0000D0: 20 7B 0D 0A 20 20 20 20 20 20 69 66 28 67 65 74 {.. if(get
0000E0: 61 72 67 28 61 72 67 2B 2B 2C 20 6E 61 6D 65 2C arg(arg++, name,
0000F0: 20 4E 41 4D 45 53 49 5A 45 2C 20 61 72 67 63 2C NAMESIZE, argc,
000100: 20 61 72 67 76 29 3D 3D 45 4F 46 29 20 7B 65 6F argv)==EOF) {eo
000110: 66 20 3D 20 59 45 53 3B 20 62 72 65 61 6B 3B 7D f = YES; break;}
000120: 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 65 .. }.. e
000130: 6C 73 65 20 7B 0D 0A 20 20 20 20 20 20 69 66 28 lse {.. if(
000140: 21 72 65 71 73 74 72 28 22 4D 6F 64 75 6C 65 20 !reqstr("Module
000150: 4E 61 6D 65 3A 20 22 2C 20 6E 61 6D 65 2C 20 4E Name: ", name, N
000160: 41 4D 45 53 49 5A 45 29 29 20 7B 65 6F 66 20 3D AMESIZE)) {eof =
000170: 20 59 45 53 3B 20 62 72 65 61 6B 3B 7D 0D 0A 20 YES; break;}..
000180: 20 20 20 20 20 7D 0D 0A 20 20 20 20 61 6C 6C 20 }.. all
000190: 3D 20 4E 4F 3B 09 09 09 09 2F 2A 20 64 6F 20 73 = NO;..../* do s
0001A0: 65 6C 65 63 74 65 64 20 6D 6F 64 75 6C 65 73 20 elected modules
0001B0: 6F 6E 6C 79 20 2A 2F 0D 0A 20 20 20 20 69 66 28 only */.. if(
0001C0: 63 70 20 3D 20 73 74 72 63 68 72 28 6E 61 6D 65 cp = strchr(name
0001D0: 2C 20 27 2E 27 29 29 20 7B 0D 0A 20 20 20 20 20 , '.')) {..
0001E0: 20 66 70 75 74 73 28 6E 61 6D 65 2C 20 73 74 64 fputs(name, std
0001F0: 6F 75 74 29 3B 20 70 75 74 73 32 28 22 20 2D 20 out); puts2(" -
Size : 512 (Real : 512)
000000: 7B 0D 0A 20 20 63 68 61 72 20 73 74 72 31 5B 4E {.. char str1[N
000010: 41 4D 45 53 49 5A 45 5D 2C 20 73 74 72 32 5B 4E AMESIZE], str2[N
000020: 41 4D 45 53 49 5A 45 5D 3B 0D 0A 20 20 69 66 28 AMESIZE];.. if(
000030: 6D 6F 64 31 5B 31 5D 20 3D 3D 20 27 3A 27 29 20 mod1[1] == ':')
000040: 6D 6F 64 31 20 2B 3D 20 32 3B 20 73 74 72 6E 63 mod1 += 2; strnc
000050: 70 79 28 73 74 72 31 2C 20 6D 6F 64 31 2C 20 4D py(str1, mod1, M
000060: 41 58 53 59 4D 29 3B 0D 0A 20 20 69 66 28 6D 6F AXSYM);.. if(mo
000070: 64 32 5B 31 5D 20 3D 3D 20 27 3A 27 29 20 6D 6F d2[1] == ':') mo
000080: 64 32 20 2B 3D 20 32 3B 20 73 74 72 6E 63 70 79 d2 += 2; strncpy
000090: 28 73 74 72 32 2C 20 6D 6F 64 32 2C 20 4D 41 58 (str2, mod2, MAX
0000A0: 53 59 4D 29 3B 0D 0A 20 20 72 65 74 75 72 6E 20 SYM);.. return
0000B0: 28 73 74 72 63 6D 70 28 73 74 72 31 2C 20 73 74 (strcmp(str1, st
0000C0: 72 32 29 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A r2));.. }..../*
0000D0: 0D 0A 2A 2A 20 63 6F 70 79 20 6F 6E 65 20 6D 6F ..** copy one mo
0000E0: 64 75 6C 65 20 66 72 6F 6D 20 69 6E 72 65 6C 20 dule from inrel
0000F0: 74 6F 20 6F 75 74 72 65 6C 0D 0A 2A 2F 0D 0A 63 to outrel..*/..c
000100: 70 79 6D 6F 64 28 68 64 72 29 20 69 6E 74 20 68 pymod(hdr) int h
000110: 64 72 3B 20 7B 0D 0A 20 20 69 66 28 6F 75 74 6E dr; {.. if(outn
000120: 64 78 29 20 70 75 74 6E 64 78 28 6E 65 77 62 6C dx) putndx(newbl
000130: 6F 63 6B 2C 20 6E 65 77 62 79 74 65 29 3B 09 2F ock, newbyte);./
000140: 2A 20 6D 75 73 74 20 6E 6F 74 20 62 65 20 65 78 * must not be ex
000150: 74 72 61 63 74 69 6E 67 20 2A 2F 0D 0A 20 20 69 tracting */.. i
000160: 66 28 68 64 72 20 26 26 20 21 70 75 74 72 65 6C f(hdr && !putrel
000170: 28 29 29 20 61 62 6F 72 74 28 37 29 3B 09 2F 2A ()) abort(7);./*
000180: 20 61 6C 72 65 61 64 79 20 68 61 76 65 20 69 6E already have in
000190: 70 75 74 20 68 65 61 64 65 72 20 2A 2F 0D 0A 20 put header */..
0001A0: 20 64 6F 20 7B 0D 0A 20 20 20 20 70 6F 6C 6C 28 do {.. poll(
0001B0: 59 45 53 29 3B 0D 0A 20 20 20 20 69 66 28 67 65 YES);.. if(ge
0001C0: 74 72 65 6C 28 29 20 3D 3D 20 45 52 52 20 7C 7C trel() == ERR ||
0001D0: 20 21 70 75 74 72 65 6C 28 29 29 20 61 62 6F 72 !putrel()) abor
0001E0: 74 20 28 37 29 3B 0D 0A 20 20 20 20 7D 20 77 68 t (7);.. } wh
0001F0: 69 6C 65 28 69 74 65 6D 20 21 3D 20 45 50 52 4F ile(item != EPRO
Size : 512 (Real : 512)
000000: 45 78 74 65 6E 73 69 6F 6E 20 46 6F 72 63 65 64 Extension Forced
000010: 20 74 6F 20 22 2C 20 4D 4F 44 45 58 54 29 3B 0D to ", MODEXT);.
000020: 0A 20 20 20 20 20 20 2A 63 70 20 3D 20 4E 55 4C . *cp = NUL
000030: 4C 3B 0D 0A 20 20 20 20 20 20 65 72 72 20 3D 20 L;.. err =
000040: 59 45 53 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 YES;.. }..
000050: 20 20 20 69 66 28 63 70 20 3D 20 73 74 72 63 68 if(cp = strch
000060: 72 28 6E 61 6D 65 2C 20 27 3A 27 29 29 20 7B 0D r(name, ':')) {.
000070: 0A 20 20 20 20 20 20 69 66 28 63 70 20 3D 3D 20 . if(cp ==
000080: 6E 61 6D 65 2B 31 29 20 2B 2B 63 70 3B 09 09 2F name+1) ++cp;../
000090: 2A 20 73 65 74 20 75 70 20 6E 65 78 74 20 63 68 * set up next ch
0000A0: 65 63 6B 20 2A 2F 0D 0A 20 20 20 20 20 20 65 6C eck */.. el
0000B0: 73 65 20 7B 0D 0A 20 20 20 20 20 20 20 20 70 75 se {.. pu
0000C0: 74 73 32 28 6E 61 6D 65 2C 20 22 20 2D 20 49 6E ts2(name, " - In
0000D0: 76 61 6C 69 64 20 46 6F 72 6D 61 74 20 2D 20 49 valid Format - I
0000E0: 67 6E 6F 72 65 64 22 29 3B 0D 0A 20 20 20 20 20 gnored");..
0000F0: 20 20 20 67 6F 74 6F 20 69 67 6E 6F 72 65 3B 0D goto ignore;.
000100: 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 . }..
000110: 20 20 7D 0D 0A 20 20 20 20 65 6C 73 65 20 63 70 }.. else cp
000120: 20 3D 20 6E 61 6D 65 3B 09 09 09 2F 2A 20 73 65 = name;.../* se
000130: 74 20 75 70 20 6E 65 78 74 20 63 68 65 63 6B 20 t up next check
000140: 2A 2F 0D 0A 20 20 20 20 69 66 28 73 74 72 6C 65 */.. if(strle
000150: 6E 28 63 70 29 20 3E 20 4D 41 58 53 59 4D 29 20 n(cp) > MAXSYM)
000160: 7B 0D 0A 20 20 20 20 20 20 73 74 72 63 70 79 28 {.. strcpy(
000170: 66 6E 2C 20 63 70 29 3B 0D 0A 20 20 20 20 20 20 fn, cp);..
000180: 66 70 75 74 73 28 66 6E 2C 20 73 74 64 6F 75 74 fputs(fn, stdout
000190: 29 3B 0D 0A 20 20 20 20 20 20 66 6E 5B 4D 41 58 );.. fn[MAX
0001A0: 53 59 4D 5D 20 3D 20 4E 55 4C 4C 3B 0D 0A 20 20 SYM] = NULL;..
0001B0: 20 20 20 20 70 75 74 73 32 28 22 20 2D 20 57 69 puts2(" - Wi
0001C0: 6C 6C 20 62 65 20 54 72 75 6E 63 61 74 65 64 20 ll be Truncated
0001D0: 74 6F 20 22 2C 20 66 6E 29 3B 0D 0A 20 20 20 20 to ", fn);..
0001E0: 20 20 65 72 72 20 3D 20 59 45 53 3B 09 2F 2A 20 err = YES;./*
0001F0: 61 73 73 65 6D 62 6C 65 72 20 64 6F 65 73 20 61 assembler does a
Size : 512 (Real : 512)
000000: 47 29 3B 0D 0A 20 20 66 66 6C 75 73 68 28 6F 75 G);.. fflush(ou
000010: 74 72 65 6C 29 3B 09 09 2F 2A 20 6D 75 73 74 20 trel);../* must
000020: 65 6D 70 74 79 20 61 75 78 20 62 75 66 20 66 6F empty aux buf fo
000030: 72 20 63 74 65 6C 6C 28 29 20 2A 2F 0D 0A 20 20 r ctell() */..
000040: 6E 65 77 62 6C 6F 63 6B 20 3D 20 63 74 65 6C 6C newblock = ctell
000050: 28 6F 75 74 72 65 6C 29 3B 09 2F 2A 20 72 65 6D (outrel);./* rem
000060: 65 6D 62 65 72 20 66 6F 72 20 6E 65 78 74 20 6D ember for next m
000070: 65 6D 62 65 72 20 2A 2F 0D 0A 20 20 6E 65 77 62 ember */.. newb
000080: 79 74 65 20 3D 20 63 74 65 6C 6C 63 28 6F 75 74 yte = ctellc(out
000090: 72 65 6C 29 3B 0D 0A 20 20 69 66 28 6E 65 77 62 rel);.. if(newb
0000A0: 79 74 65 20 3D 3D 20 31 32 38 29 20 7B 2B 2B 6E yte == 128) {++n
0000B0: 65 77 62 6C 6F 63 6B 3B 20 6E 65 77 62 79 74 65 ewblock; newbyte
0000C0: 20 3D 20 30 3B 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F = 0;}.. }..../
0000D0: 2A 0D 0A 2A 2A 20 64 72 6F 70 20 6D 6F 64 75 6C *..** drop modul
0000E0: 65 73 20 66 72 6F 6D 20 6C 69 62 72 61 72 79 0D es from library.
0000F0: 0A 2A 2F 0D 0A 64 72 6F 70 28 29 20 7B 0D 0A 20 .*/..drop() {..
000100: 20 63 68 61 72 20 6D 6F 64 5B 4E 41 4D 45 53 49 char mod[NAMESI
000110: 5A 45 5D 3B 0D 0A 20 20 69 66 28 6D 6F 64 75 6C ZE];.. if(modul
000120: 65 73 20 3D 3D 20 30 29 20 65 72 72 6F 72 28 22 es == 0) error("
000130: 2D 20 44 65 6C 65 74 65 20 62 79 20 4E 61 6D 65 - Delete by Name
000140: 20 4F 6E 6C 79 22 29 3B 0D 0A 20 20 6F 70 65 6E Only");.. open
000150: 75 70 28 29 3B 0D 0A 20 20 77 68 69 6C 65 28 6E up();.. while(n
000160: 78 74 6D 6F 64 28 6D 6F 64 29 29 20 7B 0D 0A 20 xtmod(mod)) {..
000170: 20 20 20 69 66 28 6D 61 74 63 68 28 6D 6F 64 2C if(match(mod,
000180: 20 4E 4F 29 29 20 7B 0D 0A 20 20 20 20 20 20 70 NO)) {.. p
000190: 75 74 73 32 28 22 44 65 6C 65 74 65 64 20 22 2C uts2("Deleted ",
0001A0: 20 6D 6F 64 29 3B 0D 0A 20 20 20 20 20 20 63 6F mod);.. co
0001B0: 6E 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 20 7D ntinue;.. }
0001C0: 0D 0A 20 20 20 20 63 70 79 6D 6F 64 28 59 45 53 .. cpymod(YES
0001D0: 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 6D 69 73 );.. }.. mis
0001E0: 73 69 6E 67 28 29 3B 0D 0A 20 20 63 6C 6F 73 65 sing();.. close
0001F0: 75 70 28 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A up();.. }..../*
Size : 512 (Real : 512)
000000: 63 74 75 61 6C 20 74 72 75 6E 63 61 74 69 6F 6E ctual truncation
000010: 20 2A 2F 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 */.. }..
000020: 20 20 69 66 28 63 6D 64 5B 31 5D 20 3D 3D 20 27 if(cmd[1] == '
000030: 55 27 29 20 7B 09 09 09 2F 2A 20 52 45 4C 20 66 U') {.../* REL f
000040: 69 6C 65 20 6D 75 73 74 20 65 78 69 73 74 20 2A ile must exist *
000050: 2F 0D 0A 20 20 20 20 20 20 73 74 72 63 70 79 28 /.. strcpy(
000060: 66 6E 2C 20 6E 61 6D 65 29 3B 20 65 78 74 65 6E fn, name); exten
000070: 64 28 66 6E 2C 20 4D 4F 44 45 58 54 2C 20 4D 4F d(fn, MODEXT, MO
000080: 44 45 58 54 29 3B 0D 0A 20 20 20 20 20 20 69 66 DEXT);.. if
000090: 28 69 20 3D 20 66 6F 70 65 6E 28 66 6E 2C 20 22 (i = fopen(fn, "
0000A0: 72 22 29 29 20 66 63 6C 6F 73 65 28 69 29 3B 0D r")) fclose(i);.
0000B0: 0A 20 20 20 20 20 20 65 6C 73 65 20 7B 0D 0A 20 . else {..
0000C0: 20 20 20 20 20 20 20 70 75 74 73 32 28 6E 61 6D puts2(nam
0000D0: 65 2C 20 22 20 2D 20 43 61 6E 27 74 20 46 69 6E e, " - Can't Fin
0000E0: 64 20 2D 20 49 67 6E 6F 72 65 64 22 29 3B 0D 0A d - Ignored");..
0000F0: 20 20 20 20 20 20 20 20 67 6F 74 6F 20 69 67 6E goto ign
000100: 6F 72 65 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D ore;.. }.
000110: 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 66 6F . }.. fo
000120: 72 28 69 20 3D 20 30 3B 20 69 20 3C 20 6D 6F 64 r(i = 0; i < mod
000130: 75 6C 65 73 3B 20 2B 2B 69 29 20 7B 09 2F 2A 20 ules; ++i) {./*
000140: 66 69 6E 64 20 70 6C 61 63 65 20 66 6F 72 20 6D find place for m
000150: 6F 64 75 6C 65 20 2A 2F 0D 0A 20 20 20 20 20 20 odule */..
000160: 69 66 28 63 6D 70 6D 6F 64 28 6D 70 74 72 5B 69 if(cmpmod(mptr[i
000170: 5D 2C 20 6E 61 6D 65 29 20 3E 20 30 29 20 7B 09 ], name) > 0) {.
000180: 2F 2A 20 73 68 69 66 74 20 6F 74 68 65 72 73 20 /* shift others
000190: 75 70 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 66 up */.. f
0001A0: 6F 72 28 6A 20 3D 20 6D 6F 64 75 6C 65 73 3B 20 or(j = modules;
0001B0: 6A 20 3E 20 69 3B 20 2D 2D 6A 29 20 6D 70 74 72 j > i; --j) mptr
0001C0: 5B 6A 5D 20 3D 20 6D 70 74 72 5B 6A 2D 31 5D 3B [j] = mptr[j-1];
0001D0: 0D 0A 20 20 20 20 20 20 20 20 62 72 65 61 6B 3B .. break;
0001E0: 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 .. }..
0001F0: 20 20 20 69 66 28 63 6D 70 6D 6F 64 28 6E 61 6D if(cmpmod(nam
Size : 512 (Real : 512)
000000: 0D 0A 2A 2A 20 74 65 72 6D 69 6E 61 74 65 20 52 ..** terminate R
000010: 45 4C 20 6F 72 20 4C 49 42 20 66 69 6C 65 0D 0A EL or LIB file..
000020: 2A 2F 0D 0A 65 6E 64 72 65 6C 28 29 20 7B 0D 0A */..endrel() {..
000030: 20 20 69 74 65 6D 20 3D 20 45 46 49 4C 45 3B 0D item = EFILE;.
000040: 0A 20 20 66 69 65 6C 64 20 3D 20 30 3B 0D 0A 20 . field = 0;..
000050: 20 74 79 70 65 20 3D 20 30 3B 0D 0A 20 20 69 66 type = 0;.. if
000060: 28 21 70 75 74 72 65 6C 28 29 29 20 61 62 6F 72 (!putrel()) abor
000070: 74 28 37 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A t(7);.. }..../*
000080: 0D 0A 2A 2A 20 65 78 74 72 61 63 74 20 66 69 6C ..** extract fil
000090: 65 73 20 66 72 6F 6D 20 6C 69 62 72 61 72 79 0D es from library.
0000A0: 0A 2A 2F 0D 0A 65 78 74 72 61 63 74 28 29 20 7B .*/..extract() {
0000B0: 0D 0A 20 20 63 68 61 72 20 6D 6F 64 6E 61 6D 5B .. char modnam[
0000C0: 4E 41 4D 45 53 49 5A 45 5D 3B 0D 0A 20 20 6F 70 NAMESIZE];.. op
0000D0: 65 6E 69 6E 28 29 3B 0D 0A 20 20 77 68 69 6C 65 enin();.. while
0000E0: 28 6E 78 74 6D 6F 64 28 6D 6F 64 6E 61 6D 29 29 (nxtmod(modnam))
0000F0: 20 7B 0D 0A 20 20 20 20 69 66 28 6D 61 74 63 68 {.. if(match
000100: 28 6D 6F 64 6E 61 6D 2C 20 59 45 53 29 29 20 7B (modnam, YES)) {
000110: 0D 0A 20 20 20 20 20 20 65 78 74 65 6E 64 28 6D .. extend(m
000120: 6F 64 6E 61 6D 2C 20 4D 4F 44 45 58 54 2C 20 4D odnam, MODEXT, M
000130: 4F 44 45 58 54 29 3B 0D 0A 20 20 20 20 20 20 6F ODEXT);.. o
000140: 75 74 72 65 6C 20 3D 20 6F 70 65 6E 28 6D 6F 64 utrel = open(mod
000150: 6E 61 6D 2C 20 22 77 22 29 3B 0D 0A 20 20 20 20 nam, "w");..
000160: 20 20 63 70 79 6D 6F 64 28 59 45 53 29 3B 0D 0A cpymod(YES);..
000170: 20 20 20 20 20 20 65 6E 64 72 65 6C 28 29 3B 0D endrel();.
000180: 0A 20 20 20 20 20 20 63 6C 6F 73 65 28 6F 75 74 . close(out
000190: 72 65 6C 29 3B 0D 0A 20 20 20 20 20 20 70 75 74 rel);.. put
0001A0: 73 32 28 22 43 72 65 61 74 65 64 20 22 2C 20 6D s2("Created ", m
0001B0: 6F 64 6E 61 6D 29 3B 0D 0A 20 20 20 20 20 20 7D odnam);.. }
0001C0: 0D 0A 20 20 20 20 7D 0D 0A 20 20 6D 69 73 73 69 .. }.. missi
0001D0: 6E 67 28 29 3B 0D 0A 20 20 63 6C 6F 73 65 69 6E ng();.. closein
0001E0: 28 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A ();.. }..../*..
0001F0: 2A 2A 20 67 65 74 20 6D 6F 64 75 6C 65 20 6E 61 ** get module na
Size : 512 (Real : 512)
000000: 65 2C 20 6D 70 74 72 5B 69 5D 29 20 3D 3D 20 30 e, mptr[i]) == 0
000010: 29 20 7B 09 2F 2A 20 61 6C 72 65 61 64 79 20 6C ) {./* already l
000020: 6F 61 64 65 64 20 2A 2F 0D 0A 20 20 20 20 20 20 oaded */..
000030: 20 20 70 75 74 73 32 28 6D 70 2C 20 22 20 2D 20 puts2(mp, " -
000040: 44 75 70 6C 69 63 61 74 65 20 4E 61 6D 65 20 2D Duplicate Name -
000050: 20 49 67 6E 6F 72 65 64 22 29 3B 0D 0A 20 20 20 Ignored");..
000060: 20 20 20 20 20 67 6F 74 6F 20 69 67 6E 6F 72 65 goto ignore
000070: 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 ;.. }..
000080: 20 20 20 20 7D 0D 0A 20 20 20 20 6D 70 74 72 5B }.. mptr[
000090: 69 5D 20 3D 20 6D 70 3B 09 09 09 2F 2A 20 6C 6F i] = mp;.../* lo
0000A0: 61 64 20 6D 6F 64 6E 61 6D 65 20 70 6F 69 6E 74 ad modname point
0000B0: 65 72 20 2A 2F 0D 0A 20 20 20 20 73 74 72 63 70 er */.. strcp
0000C0: 79 28 6D 70 2C 20 6E 61 6D 65 29 3B 09 09 09 2F y(mp, name);.../
0000D0: 2A 20 6C 6F 61 64 20 6D 6F 64 6E 61 6D 65 20 62 * load modname b
0000E0: 75 66 66 65 72 20 2A 2F 0D 0A 20 20 20 20 77 68 uffer */.. wh
0000F0: 69 6C 65 28 2A 6D 70 2B 2B 29 20 3B 09 09 09 2F ile(*mp++) ;.../
000100: 2A 20 73 63 6F 6F 74 20 74 6F 20 6E 65 78 74 20 * scoot to next
000110: 61 64 64 72 65 73 73 20 2A 2F 0D 0A 20 20 20 20 address */..
000120: 2B 2B 6D 6F 64 75 6C 65 73 3B 09 09 09 09 2F 2A ++modules;..../*
000130: 20 62 75 6D 70 20 6E 75 6D 62 65 72 20 6F 66 20 bump number of
000140: 6D 6F 64 75 6C 65 73 20 2A 2F 0D 0A 20 20 20 20 modules */..
000150: 63 6F 6E 74 69 6E 75 65 3B 0D 0A 0D 0A 20 20 20 continue;....
000160: 20 69 67 6E 6F 72 65 3A 0D 0A 20 20 20 20 65 72 ignore:.. er
000170: 72 20 3D 20 59 45 53 3B 0D 0A 20 20 20 20 7D 0D r = YES;.. }.
000180: 0A 20 20 6D 70 74 72 5B 6D 6F 64 75 6C 65 73 5D . mptr[modules]
000190: 20 3D 20 6D 70 3B 09 09 09 2F 2A 20 6C 6F 61 64 = mp;.../* load
0001A0: 20 74 65 72 6D 69 6E 61 6C 20 70 6F 69 6E 74 65 terminal pointe
0001B0: 72 20 2A 2F 0D 0A 20 20 2A 6D 70 2B 2B 20 3D 20 r */.. *mp++ =
0001C0: 48 49 47 48 3B 09 09 09 09 2F 2A 20 68 69 67 68 HIGH;..../* high
0001D0: 20 76 61 6C 75 65 20 2A 2F 0D 0A 20 20 2A 6D 70 value */.. *mp
0001E0: 20 20 20 3D 20 4E 55 4C 4C 3B 0D 0A 20 20 69 66 = NULL;.. if
0001F0: 28 21 65 6F 66 29 20 65 72 72 6F 72 28 22 2D 20 (!eof) error("-
Size : 512 (Real : 512)
000000: 6D 65 73 0D 0A 2A 2F 0D 0A 67 65 74 6D 6F 64 73 mes..*/..getmods
000010: 28 61 72 67 63 2C 20 61 72 67 76 29 20 69 6E 74 (argc, argv) int
000020: 20 61 72 67 63 2C 20 61 72 67 76 5B 5D 3B 20 7B argc, argv[]; {
000030: 0D 0A 20 20 63 68 61 72 20 2A 63 70 2C 20 2A 6D .. char *cp, *m
000040: 70 2C 20 6E 61 6D 65 5B 4E 41 4D 45 53 49 5A 45 p, name[NAMESIZE
000050: 5D 2C 20 66 6E 5B 4E 41 4D 45 53 49 5A 45 5D 3B ], fn[NAMESIZE];
000060: 0D 0A 20 20 69 6E 74 20 65 72 72 2C 20 65 6F 66 .. int err, eof
000070: 2C 20 61 72 67 2C 20 69 2C 20 6A 3B 0D 0A 20 20 , arg, i, j;..
000080: 69 66 28 21 28 6D 70 20 3D 20 6D 6F 64 6E 61 6D if(!(mp = modnam
000090: 65 20 3D 20 6D 61 6C 6C 6F 63 28 4D 41 58 4D 4F e = malloc(MAXMO
0000A0: 44 53 2A 31 30 29 29 29 20 65 72 72 6F 72 28 22 DS*10))) error("
0000B0: 2D 20 4D 65 6D 6F 72 79 20 4F 76 65 72 66 6C 6F - Memory Overflo
0000C0: 77 22 29 3B 0D 0A 20 20 69 66 28 28 6A 20 3D 20 w");.. if((j =
0000D0: 61 76 61 69 6C 28 4E 4F 29 29 20 3E 3D 20 30 20 avail(NO)) >= 0
0000E0: 26 26 20 6A 20 3C 20 35 31 32 29 20 7B 0D 0A 20 && j < 512) {..
0000F0: 20 20 20 70 75 74 73 28 22 2D 20 4C 69 6D 69 74 puts("- Limit
000100: 65 64 20 53 74 61 63 6B 20 53 70 61 63 65 22 29 ed Stack Space")
000110: 3B 0D 0A 20 20 20 20 65 72 72 20 3D 20 59 45 53 ;.. err = YES
000120: 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 61 6C 6C 20 ;.. }.. all
000130: 3D 20 59 45 53 3B 09 09 09 2F 2A 20 64 65 66 61 = YES;.../* defa
000140: 75 6C 74 20 74 6F 20 61 6C 6C 20 6D 6F 64 75 6C ult to all modul
000150: 65 73 20 2A 2F 0D 0A 20 20 69 66 28 61 72 67 63 es */.. if(argc
000160: 20 3E 20 33 29 20 61 72 67 20 3D 20 33 3B 09 09 > 3) arg = 3;..
000170: 2F 2A 20 67 65 74 20 6D 6F 64 75 6C 65 20 6E 61 /* get module na
000180: 6D 65 73 20 66 72 6F 6D 20 63 6F 6D 6D 61 6E 64 mes from command
000190: 20 6C 69 6E 65 20 2A 2F 0D 0A 20 20 65 6C 73 65 line */.. else
0001A0: 20 7B 0D 0A 20 20 20 20 61 72 67 20 3D 20 30 3B {.. arg = 0;
0001B0: 09 09 09 2F 2A 20 67 65 74 20 6D 6F 64 75 6C 65 .../* get module
0001C0: 20 6E 61 6D 65 73 20 66 72 6F 6D 20 73 74 64 69 names from stdi
0001D0: 6E 20 2A 2F 0D 0A 20 20 20 20 69 66 28 63 6D 64 n */.. if(cmd
0001E0: 5B 32 5D 20 26 26 20 28 63 6D 64 5B 31 5D 20 3D [2] && (cmd[1] =
0001F0: 3D 20 27 50 27 20 7C 7C 20 63 6D 64 5B 31 5D 20 = 'P' || cmd[1]
Size : 512 (Real : 512)
000000: 54 6F 6F 20 4D 61 6E 79 20 4D 6F 64 75 6C 65 73 Too Many Modules
000010: 20 53 70 65 63 69 66 69 65 64 22 29 3B 0D 0A 20 Specified");..
000020: 20 69 66 28 65 72 72 29 20 7B 0D 0A 20 20 20 20 if(err) {..
000030: 66 70 75 74 73 28 22 5C 6E 43 6F 6E 74 69 6E 75 fputs("\nContinu
000040: 65 3F 20 22 2C 20 73 74 64 65 72 72 29 3B 0D 0A e? ", stderr);..
000050: 20 20 20 20 66 67 65 74 73 28 6E 61 6D 65 2C 20 fgets(name,
000060: 4E 41 4D 45 53 49 5A 45 2C 20 73 74 64 65 72 72 NAMESIZE, stderr
000070: 29 3B 0D 0A 20 20 20 20 69 66 28 74 6F 75 70 70 );.. if(toupp
000080: 65 72 28 2A 6E 61 6D 65 29 20 21 3D 20 27 59 27 er(*name) != 'Y'
000090: 29 20 65 78 69 74 28 37 29 3B 0D 0A 20 20 20 20 ) exit(7);..
0000A0: 7D 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A }.. }..../*..**
0000B0: 20 72 65 61 64 20 61 6E 20 65 6E 74 72 79 20 66 read an entry f
0000C0: 72 6F 6D 20 74 68 65 20 6F 6C 64 20 69 6E 64 65 rom the old inde
0000D0: 78 0D 0A 2A 2F 0D 0A 67 65 74 6E 64 78 28 29 20 x..*/..getndx()
0000E0: 7B 0D 0A 20 20 69 66 28 72 65 61 64 28 69 6E 6E {.. if(read(inn
0000F0: 64 78 2C 20 26 6F 6C 64 62 6C 6F 63 6B 2C 20 32 dx, &oldblock, 2
000100: 29 20 21 3D 20 32 20 7C 7C 09 2F 2A 20 6E 65 78 ) != 2 ||./* nex
000110: 74 20 62 6C 6F 63 6B 20 2A 2F 0D 0A 20 20 20 20 t block */..
000120: 20 72 65 61 64 28 69 6E 6E 64 78 2C 20 26 6F 6C read(inndx, &ol
000130: 64 62 79 74 65 2C 20 20 32 29 20 21 3D 20 32 29 dbyte, 2) != 2)
000140: 09 2F 2A 20 6E 65 78 74 20 62 79 74 65 20 69 6E ./* next byte in
000150: 20 62 6C 6F 63 6B 20 2A 2F 0D 0A 20 20 20 20 65 block */.. e
000160: 72 72 6F 72 28 22 2D 20 45 72 72 6F 72 20 52 65 rror("- Error Re
000170: 61 64 69 6E 67 20 49 6E 64 65 78 22 29 3B 0D 0A ading Index");..
000180: 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 63 68 }..../*..** ch
000190: 65 63 6B 20 69 66 20 6E 61 6D 65 20 6D 61 74 63 eck if name matc
0001A0: 68 65 73 20 6D 6F 64 75 6C 65 20 6C 69 73 74 0D hes module list.
0001B0: 0A 2A 2F 0D 0A 6D 61 74 63 68 28 6E 61 6D 65 2C .*/..match(name,
0001C0: 20 71 75 69 74 29 20 63 68 61 72 20 2A 6E 61 6D quit) char *nam
0001D0: 65 3B 20 69 6E 74 20 71 75 69 74 3B 20 7B 0D 0A e; int quit; {..
0001E0: 20 20 69 6E 74 20 69 2C 20 64 6F 6E 65 3B 0D 0A int i, done;..
0001F0: 20 20 63 68 61 72 20 2A 6D 70 3B 0D 0A 20 20 69 char *mp;.. i
Size : 512 (Real : 512)
000000: 74 6F 20 74 68 65 20 6E 65 77 20 69 6E 64 65 78 to the new index
000010: 0D 0A 2A 2F 0D 0A 70 75 74 6E 64 78 28 62 6C 6F ..*/..putndx(blo
000020: 63 6B 2C 20 62 79 74 65 29 20 69 6E 74 20 62 6C ck, byte) int bl
000030: 6F 63 6B 2C 20 62 79 74 65 3B 20 7B 0D 0A 20 20 ock, byte; {..
000040: 69 66 28 77 72 69 74 65 28 6F 75 74 6E 64 78 2C if(write(outndx,
000050: 20 26 62 6C 6F 63 6B 2C 20 32 29 20 21 3D 20 32 &block, 2) != 2
000060: 20 7C 7C 09 2F 2A 20 6E 65 78 74 20 62 6C 6F 63 ||./* next bloc
000070: 6B 20 74 6F 20 69 6E 64 65 78 20 2A 2F 0D 0A 20 k to index */..
000080: 20 20 20 20 77 72 69 74 65 28 6F 75 74 6E 64 78 write(outndx
000090: 2C 20 26 62 79 74 65 2C 20 32 29 20 21 3D 20 32 , &byte, 2) != 2
0000A0: 29 09 2F 2A 20 6E 65 78 74 20 62 79 74 65 20 69 )./* next byte i
0000B0: 6E 20 62 6C 6F 63 6B 20 74 6F 20 69 6E 64 65 78 n block to index
0000C0: 20 2A 2F 0D 0A 20 20 20 20 65 72 72 6F 72 28 22 */.. error("
0000D0: 2D 20 45 72 72 6F 72 20 57 72 69 74 69 6E 67 20 - Error Writing
0000E0: 4E 65 77 20 49 6E 64 65 78 22 29 3B 0D 0A 20 20 New Index");..
0000F0: 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 72 65 73 74 }..../*..** rest
000100: 6F 72 65 20 52 45 4C 20 76 61 72 69 61 62 6C 65 ore REL variable
000110: 73 0D 0A 2A 2F 0D 0A 72 65 73 74 72 65 6C 28 29 s..*/..restrel()
000120: 20 7B 0D 0A 20 20 69 74 65 6D 20 20 20 20 3D 20 {.. item =
000130: 69 74 65 6D 32 3B 0D 0A 20 20 74 79 70 65 20 20 item2;.. type
000140: 20 20 3D 20 74 79 70 65 32 3B 0D 0A 20 20 66 69 = type2;.. fi
000150: 65 6C 64 20 20 20 3D 20 66 69 65 6C 64 32 3B 0D eld = field2;.
000160: 0A 20 20 73 74 72 63 70 79 28 73 79 6D 62 6F 6C . strcpy(symbol
000170: 2C 20 73 79 6D 32 29 3B 0D 0A 20 20 69 6E 72 65 , sym2);.. inre
000180: 6C 20 20 20 3D 20 69 6E 72 65 6C 32 3B 0D 0A 20 l = inrel2;..
000190: 20 69 6E 63 68 75 6E 6B 20 3D 20 69 6E 63 68 32 inchunk = inch2
0001A0: 3B 0D 0A 20 20 69 6E 72 65 6D 20 20 20 3D 20 69 ;.. inrem = i
0001B0: 6E 72 65 6D 32 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F nrem2;.. }..../
0001C0: 2A 0D 0A 2A 2A 20 73 61 76 65 20 52 45 4C 20 76 *..** save REL v
0001D0: 61 72 69 61 62 6C 65 73 0D 0A 2A 2F 0D 0A 73 61 ariables..*/..sa
0001E0: 76 65 72 65 6C 28 29 20 7B 0D 0A 20 20 69 74 65 verel() {.. ite
0001F0: 6D 32 20 20 3D 20 69 74 65 6D 3B 0D 0A 20 20 74 m2 = item;.. t
Size : 512 (Real : 512)
000000: 66 28 61 6C 6C 29 20 72 65 74 75 72 6E 28 59 45 f(all) return(YE
000010: 53 29 3B 0D 0A 20 20 64 6F 6E 65 20 3D 20 59 45 S);.. done = YE
000020: 53 3B 0D 0A 20 20 66 6F 72 28 69 20 3D 20 30 3B S;.. for(i = 0;
000030: 20 69 20 3C 20 6D 6F 64 75 6C 65 73 3B 20 2B 2B i < modules; ++
000040: 69 29 20 7B 0D 0A 20 20 20 20 69 66 28 63 6D 70 i) {.. if(cmp
000050: 6D 6F 64 28 6D 70 74 72 5B 69 5D 2C 20 6E 61 6D mod(mptr[i], nam
000060: 65 29 20 3D 3D 20 30 29 20 7B 0D 0A 20 20 20 20 e) == 0) {..
000070: 20 20 6D 64 6F 6E 65 5B 69 5D 20 3D 20 59 45 53 mdone[i] = YES
000080: 3B 0D 0A 20 20 20 20 20 20 72 65 74 75 72 6E 28 ;.. return(
000090: 59 45 53 29 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A YES);.. }..
0000A0: 20 20 20 20 69 66 28 21 6D 64 6F 6E 65 5B 69 5D if(!mdone[i]
0000B0: 29 20 64 6F 6E 65 20 3D 20 4E 4F 3B 0D 0A 20 20 ) done = NO;..
0000C0: 20 20 7D 0D 0A 20 20 69 66 28 71 75 69 74 20 26 }.. if(quit &
0000D0: 26 20 64 6F 6E 65 29 20 65 78 69 74 28 30 29 3B & done) exit(0);
0000E0: 0D 0A 20 20 72 65 74 75 72 6E 28 4E 4F 29 3B 0D .. return(NO);.
0000F0: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 70 . }..../*..** p
000100: 72 69 6E 74 20 22 6E 6F 74 20 69 6E 20 6C 69 62 rint "not in lib
000110: 72 61 72 79 22 20 6D 65 73 73 61 67 65 73 0D 0A rary" messages..
000120: 2A 2F 0D 0A 6D 69 73 73 69 6E 67 28 29 20 7B 0D */..missing() {.
000130: 0A 20 20 69 6E 74 20 69 3B 0D 0A 20 20 66 6F 72 . int i;.. for
000140: 28 69 20 3D 20 30 3B 20 69 20 3C 20 6D 6F 64 75 (i = 0; i < modu
000150: 6C 65 73 3B 20 2B 2B 69 29 0D 0A 20 20 20 20 69 les; ++i).. i
000160: 66 28 21 6D 64 6F 6E 65 5B 69 5D 29 20 70 75 74 f(!mdone[i]) put
000170: 73 32 28 6D 70 74 72 5B 69 5D 2C 20 22 20 57 61 s2(mptr[i], " Wa
000180: 73 20 4E 6F 74 20 69 6E 20 4C 69 62 72 61 72 79 s Not in Library
000190: 22 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A ");.. }..../*..
0001A0: 2A 2A 20 6D 6F 76 65 20 66 69 6C 65 31 20 74 6F ** move file1 to
0001B0: 20 66 69 6C 65 32 0D 0A 2A 2F 0D 0A 6D 6F 76 66 file2..*/..movf
0001C0: 69 6C 28 66 69 6C 65 31 2C 20 66 69 6C 65 32 29 il(file1, file2)
0001D0: 20 63 68 61 72 20 2A 66 69 6C 65 31 2C 20 2A 66 char *file1, *f
0001E0: 69 6C 65 32 3B 20 7B 0D 0A 20 20 75 6E 6C 69 6E ile2; {.. unlin
0001F0: 6B 28 66 69 6C 65 32 29 3B 0D 0A 20 20 69 66 28 k(file2);.. if(
Size : 512 (Real : 512)
000000: 79 70 65 32 20 20 3D 20 74 79 70 65 3B 0D 0A 20 ype2 = type;..
000010: 20 66 69 65 6C 64 32 20 3D 20 66 69 65 6C 64 3B field2 = field;
000020: 0D 0A 20 20 73 74 72 63 70 79 28 73 79 6D 32 2C .. strcpy(sym2,
000030: 20 73 79 6D 62 6F 6C 29 3B 0D 0A 20 20 69 6E 72 symbol);.. inr
000040: 65 6C 32 20 3D 20 69 6E 72 65 6C 3B 0D 0A 20 20 el2 = inrel;..
000050: 69 6E 63 68 32 20 20 3D 20 69 6E 63 68 75 6E 6B inch2 = inchunk
000060: 3B 0D 0A 20 20 69 6E 72 65 6D 32 20 3D 20 69 6E ;.. inrem2 = in
000070: 72 65 6D 3B 0D 0A 20 20 69 6E 72 65 6D 20 20 3D rem;.. inrem =
000080: 20 30 3B 09 09 2F 2A 20 66 6F 72 63 65 20 67 65 0;../* force ge
000090: 74 72 65 6C 28 29 20 74 6F 20 72 65 61 64 20 61 trel() to read a
0000A0: 20 62 79 74 65 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D byte */.. }...
0000B0: 0A 2F 2A 0D 0A 2A 2A 20 73 65 65 6B 20 74 6F 20 ./*..** seek to
0000C0: 6E 65 78 74 20 6D 65 6D 62 65 72 20 69 6E 20 6F next member in o
0000D0: 6C 64 20 6C 69 62 72 61 72 79 0D 0A 2A 2F 0D 0A ld library..*/..
0000E0: 65 78 74 65 72 6E 20 69 6E 74 20 55 63 68 72 70 extern int Uchrp
0000F0: 6F 73 5B 5D 3B 09 09 2F 2A 20 6C 69 76 65 73 20 os[];../* lives
000100: 69 6E 20 43 53 59 53 4C 49 42 20 2A 2F 0D 0A 73 in CSYSLIB */..s
000110: 65 65 6B 28 29 20 7B 0D 0A 20 20 67 65 74 6E 64 eek() {.. getnd
000120: 78 28 29 3B 0D 0A 20 20 69 66 28 6F 6C 64 62 6C x();.. if(oldbl
000130: 6F 63 6B 20 3D 3D 20 45 4F 46 29 20 65 72 72 6F ock == EOF) erro
000140: 72 28 22 2D 20 50 72 65 6D 61 74 75 72 65 20 45 r("- Premature E
000150: 6E 64 20 6F 66 20 49 6E 64 65 78 22 29 3B 0D 0A nd of Index");..
000160: 20 20 69 66 28 63 73 65 65 6B 28 69 6E 72 65 6C if(cseek(inrel
000170: 2C 20 6F 6C 64 62 6C 6F 63 6B 2C 20 30 29 20 3D , oldblock, 0) =
000180: 3D 20 45 4F 46 29 0D 0A 20 20 20 20 65 72 72 6F = EOF).. erro
000190: 72 28 22 2D 20 43 6F 72 72 75 70 74 20 4C 69 62 r("- Corrupt Lib
0001A0: 72 61 72 79 20 6F 72 20 49 6E 64 65 78 22 29 3B rary or Index");
0001B0: 0D 0A 20 20 55 63 68 72 70 6F 73 5B 69 6E 72 65 .. Uchrpos[inre
0001C0: 6C 5D 20 3D 20 6F 6C 64 62 79 74 65 3B 0D 0A 20 l] = oldbyte;..
0001D0: 20 69 6E 72 65 6D 20 3D 20 30 3B 09 09 09 2F 2A inrem = 0;.../*
0001E0: 20 66 6F 72 63 65 20 67 65 74 72 65 6C 28 29 20 force getrel()
0001F0: 74 6F 20 72 65 61 64 20 61 20 62 79 74 65 20 2A to read a byte *
Size : 512 (Real : 512)
000000: 66 69 6C 65 32 5B 31 5D 20 3D 3D 20 27 3A 27 29 file2[1] == ':')
000010: 20 66 69 6C 65 32 20 2B 3D 20 32 3B 0D 0A 20 20 file2 += 2;..
000020: 69 66 28 72 65 6E 61 6D 65 28 66 69 6C 65 31 2C if(rename(file1,
000030: 20 66 69 6C 65 32 29 29 20 65 72 72 6F 72 28 22 file2)) error("
000040: 2D 20 43 61 6E 27 74 20 52 65 6E 61 6D 65 20 46 - Can't Rename F
000050: 69 6C 65 73 22 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A iles");.. }....
000060: 2F 2A 0D 0A 2A 2A 20 63 72 65 61 74 65 20 6E 65 /*..** create ne
000070: 77 20 66 69 6C 65 6E 61 6D 65 20 66 72 6F 6D 20 w filename from
000080: 6F 6C 64 20 66 69 6C 65 6E 61 6D 65 20 61 6E 64 old filename and
000090: 20 73 70 65 63 69 66 69 65 64 20 65 78 74 65 6E specified exten
0000A0: 73 69 6F 6E 0D 0A 2A 2F 0D 0A 6E 65 77 66 6E 28 sion..*/..newfn(
0000B0: 64 65 73 74 2C 20 73 6F 75 72 2C 20 65 78 74 29 dest, sour, ext)
0000C0: 20 63 68 61 72 20 2A 64 65 73 74 2C 20 2A 73 6F char *dest, *so
0000D0: 75 72 2C 20 2A 65 78 74 3B 20 7B 0D 0A 20 20 77 ur, *ext; {.. w
0000E0: 68 69 6C 65 28 2A 73 6F 75 72 20 26 26 20 2A 73 hile(*sour && *s
0000F0: 6F 75 72 20 21 3D 20 27 2E 27 29 20 2A 64 65 73 our != '.') *des
000100: 74 2B 2B 20 3D 20 2A 73 6F 75 72 2B 2B 3B 0D 0A t++ = *sour++;..
000110: 20 20 73 74 72 63 70 79 28 64 65 73 74 2C 20 65 strcpy(dest, e
000120: 78 74 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D xt);.. }..../*.
000130: 0A 2A 2A 20 67 65 74 20 6E 65 78 74 20 6D 6F 64 .** get next mod
000140: 75 6C 65 20 6E 61 6D 65 0D 0A 2A 2F 0D 0A 6E 78 ule name..*/..nx
000150: 74 6D 6F 64 28 6E 61 6D 65 29 20 63 68 61 72 20 tmod(name) char
000160: 2A 6E 61 6D 65 3B 20 7B 0D 0A 20 20 73 65 65 6B *name; {.. seek
000170: 28 29 3B 09 09 09 09 2F 2A 20 67 6F 20 73 74 72 ();..../* go str
000180: 61 69 67 68 74 20 74 6F 20 6E 65 78 74 20 6D 65 aight to next me
000190: 6D 62 65 72 20 2A 2F 0D 0A 20 20 69 66 28 67 65 mber */.. if(ge
0001A0: 74 72 65 6C 28 29 20 3D 3D 20 50 4E 41 4D 45 29 trel() == PNAME)
0001B0: 20 7B 0D 0A 20 20 20 20 73 74 72 63 70 79 28 6E {.. strcpy(n
0001C0: 61 6D 65 2C 20 73 79 6D 62 6F 6C 29 3B 0D 0A 20 ame, symbol);..
0001D0: 20 20 20 72 65 74 75 72 6E 20 28 59 45 53 29 3B return (YES);
0001E0: 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 66 28 69 74 .. }.. if(it
0001F0: 65 6D 20 3D 3D 20 45 46 49 4C 45 29 20 7B 0D 0A em == EFILE) {..
Size : 512 (Real : 512)
000000: 2F 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A /.. }..../*..**
000010: 20 70 72 69 6E 74 20 74 61 62 6C 65 20 6F 66 20 print table of
000020: 63 6F 6E 74 65 6E 74 73 0D 0A 2A 2F 0D 0A 74 61 contents..*/..ta
000030: 62 6C 65 28 29 20 7B 0D 0A 20 20 63 68 61 72 20 ble() {.. char
000040: 6E 61 6D 65 5B 4E 41 4D 45 53 49 5A 45 5D 3B 20 name[NAMESIZE];
000050: 69 6E 74 20 69 2C 20 6A 3B 0D 0A 20 20 6F 70 65 int i, j;.. ope
000060: 6E 69 6E 28 29 3B 0D 0A 20 20 70 75 74 73 28 22 nin();.. puts("
000070: 22 29 3B 0D 0A 20 20 69 20 3D 20 30 3B 0D 0A 20 ");.. i = 0;..
000080: 20 77 68 69 6C 65 28 6E 78 74 6D 6F 64 28 6E 61 while(nxtmod(na
000090: 6D 65 29 29 20 7B 0D 0A 20 20 20 20 70 6F 6C 6C me)) {.. poll
0000A0: 28 59 45 53 29 3B 0D 0A 20 20 20 20 69 66 28 6D (YES);.. if(m
0000B0: 61 74 63 68 28 6E 61 6D 65 2C 20 59 45 53 29 29 atch(name, YES))
0000C0: 20 7B 0D 0A 20 20 20 20 20 20 66 70 75 74 73 28 {.. fputs(
0000D0: 6E 61 6D 65 2C 20 73 74 64 6F 75 74 29 3B 0D 0A name, stdout);..
0000E0: 20 20 20 20 20 20 6A 20 3D 20 39 20 2D 20 73 74 j = 9 - st
0000F0: 72 6C 65 6E 28 6E 61 6D 65 29 3B 0D 0A 20 20 20 rlen(name);..
000100: 20 20 20 77 68 69 6C 65 28 6A 2D 2D 29 20 70 75 while(j--) pu
000110: 74 63 68 61 72 28 27 20 27 29 3B 0D 0A 20 20 20 tchar(' ');..
000120: 20 20 20 69 66 20 28 21 28 2B 2B 69 20 25 20 38 if (!(++i % 8
000130: 29 29 20 70 75 74 73 28 22 22 29 3B 0D 0A 20 20 )) puts("");..
000140: 20 20 20 20 7D 0D 0A 20 20 20 20 7D 0D 0A 20 20 }.. }..
000150: 70 75 74 73 28 22 22 29 3B 0D 0A 20 20 6D 69 73 puts("");.. mis
000160: 73 69 6E 67 28 29 3B 0D 0A 20 20 63 6C 6F 73 65 sing();.. close
000170: 69 6E 28 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A in();.. }..../*
000180: 0D 0A 2A 2A 20 75 70 64 61 74 65 20 28 61 64 64 ..** update (add
000190: 20 61 6E 64 20 72 65 70 6C 61 63 65 29 20 6D 6F and replace) mo
0001A0: 64 75 6C 65 73 20 69 6E 20 61 6C 70 68 61 6E 75 dules in alphanu
0001B0: 6D 65 72 69 63 20 6F 72 64 65 72 0D 0A 2A 2F 0D meric order..*/.
0001C0: 0A 75 70 64 61 74 65 28 29 20 7B 0D 0A 20 20 63 .update() {.. c
0001D0: 68 61 72 20 6D 6F 64 5B 4E 41 4D 45 53 49 5A 45 har mod[NAMESIZE
0001E0: 5D 3B 20 69 6E 74 20 6D 3B 0D 0A 20 20 6F 70 65 ]; int m;.. ope
0001F0: 6E 75 70 28 29 3B 0D 0A 20 20 6D 20 3D 20 30 3B nup();.. m = 0;
Size : 512 (Real : 512)
000000: 20 20 20 20 2A 6E 61 6D 65 2B 2B 20 3D 20 48 49 *name++ = HI
000010: 47 48 3B 09 09 09 2F 2A 20 68 69 67 68 20 76 61 GH;.../* high va
000020: 6C 75 65 20 2A 2F 0D 0A 20 20 20 20 2A 6E 61 6D lue */.. *nam
000030: 65 20 20 20 3D 20 4E 55 4C 4C 3B 0D 0A 20 20 20 e = NULL;..
000040: 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 return (NO);..
000050: 20 20 20 7D 0D 0A 20 20 65 72 72 6F 72 28 22 2D }.. error("-
000060: 20 43 6F 72 72 75 70 74 20 4C 69 62 72 61 72 79 Corrupt Library
000070: 20 6F 72 20 49 6E 64 65 78 22 29 3B 0D 0A 20 20 or Index");..
000080: 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 6F 70 65 6E }..../*..** open
000090: 20 6C 69 62 72 61 72 79 20 61 6E 64 20 69 6E 64 library and ind
0000A0: 65 78 20 66 6F 72 20 69 6E 70 75 74 0D 0A 2A 2F ex for input..*/
0000B0: 0D 0A 6F 70 65 6E 69 6E 28 29 20 7B 0D 0A 20 20 ..openin() {..
0000C0: 77 68 69 6C 65 28 21 28 69 6E 72 65 6C 20 3D 20 while(!(inrel =
0000D0: 66 6F 70 65 6E 28 6F 6C 64 6C 69 62 2C 20 22 72 fopen(oldlib, "r
0000E0: 22 29 29 29 20 7B 0D 0A 20 20 20 20 70 75 74 73 "))) {.. puts
0000F0: 28 22 5C 6E 43 72 65 61 74 69 6E 67 20 4E 65 77 ("\nCreating New
000100: 20 4C 69 62 72 61 72 79 22 29 3B 0D 0A 20 20 20 Library");..
000110: 20 6F 75 74 72 65 6C 20 3D 20 6F 70 65 6E 28 6F outrel = open(o
000120: 6C 64 6C 69 62 2C 20 22 77 22 29 3B 0D 0A 20 20 ldlib, "w");..
000130: 20 20 69 74 65 6D 20 3D 20 45 46 49 4C 45 3B 0D item = EFILE;.
000140: 0A 20 20 20 20 70 75 74 72 65 6C 28 29 3B 0D 0A . putrel();..
000150: 20 20 20 20 63 6C 6F 73 65 28 6F 75 74 72 65 6C close(outrel
000160: 29 3B 0D 0A 20 20 20 20 6F 75 74 6E 64 78 20 3D );.. outndx =
000170: 20 6F 70 65 6E 28 6F 6C 64 6E 64 78 2C 20 22 77 open(oldndx, "w
000180: 22 29 3B 0D 0A 20 20 20 20 70 75 74 6E 64 78 28 ");.. putndx(
000190: 30 2C 20 30 29 3B 0D 0A 20 20 20 20 70 75 74 6E 0, 0);.. putn
0001A0: 64 78 28 45 4F 46 2C 20 45 4F 46 29 3B 20 0D 0A dx(EOF, EOF); ..
0001B0: 20 20 20 20 63 6C 6F 73 65 28 6F 75 74 6E 64 78 close(outndx
0001C0: 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 6E 6E );.. }.. inn
0001D0: 64 78 20 3D 20 6F 70 65 6E 28 6F 6C 64 6E 64 78 dx = open(oldndx
0001E0: 2C 20 22 72 22 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A , "r");.. }....
0001F0: 2F 2A 0D 0A 2A 2A 20 6F 70 65 6E 20 6C 69 62 72 /*..** open libr
Size : 512 (Real : 512)
000000: 09 09 09 09 2F 2A 20 66 69 72 73 74 20 69 6E 20 ..../* first in
000010: 6D 6F 64 75 6C 65 20 6C 69 73 74 20 2A 2F 0D 0A module list */..
000020: 20 20 6E 78 74 6D 6F 64 28 6D 6F 64 29 3B 09 09 nxtmod(mod);..
000030: 09 09 2F 2A 20 66 69 72 73 74 20 69 6E 20 6F 6C ../* first in ol
000040: 64 20 6C 69 62 72 61 72 79 20 2A 2F 0D 0A 20 20 d library */..
000050: 77 68 69 6C 65 28 59 45 53 29 20 7B 0D 0A 20 20 while(YES) {..
000060: 20 20 69 66 28 63 6D 70 6D 6F 64 28 6D 70 74 72 if(cmpmod(mptr
000070: 5B 6D 5D 2C 20 6D 6F 64 29 20 3E 20 30 29 20 7B [m], mod) > 0) {
000080: 09 2F 2A 20 6D 6F 64 75 6C 65 20 3E 20 6D 65 6D ./* module > mem
000090: 62 65 72 20 2A 2F 0D 0A 20 20 20 20 20 20 63 70 ber */.. cp
0000A0: 79 6D 6F 64 28 59 45 53 29 3B 09 09 09 2F 2A 20 ymod(YES);.../*
0000B0: 63 6F 70 79 20 72 65 73 74 20 6F 66 20 6D 65 6D copy rest of mem
0000C0: 62 65 72 20 2A 2F 0D 0A 20 20 20 20 20 20 6E 78 ber */.. nx
0000D0: 74 6D 6F 64 28 6D 6F 64 29 3B 09 09 09 2F 2A 20 tmod(mod);.../*
0000E0: 6E 65 78 74 20 69 6E 20 6F 6C 64 20 6C 69 62 72 next in old libr
0000F0: 61 72 79 20 2A 2F 0D 0A 20 20 20 20 20 20 63 6F ary */.. co
000100: 6E 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 20 7D ntinue;.. }
000110: 0D 0A 20 20 20 20 69 66 28 63 6D 70 6D 6F 64 28 .. if(cmpmod(
000120: 6D 70 74 72 5B 6D 5D 2C 20 6D 6F 64 29 20 3C 20 mptr[m], mod) <
000130: 30 29 20 7B 09 2F 2A 20 6D 6F 64 75 6C 65 20 3C 0) {./* module <
000140: 20 6D 65 6D 62 65 72 20 2A 2F 0D 0A 20 20 20 20 member */..
000150: 20 20 61 64 64 6D 6F 64 28 6D 70 74 72 5B 6D 5D addmod(mptr[m]
000160: 29 3B 09 09 09 2F 2A 20 61 64 64 20 6E 65 77 20 );.../* add new
000170: 6D 6F 64 75 6C 65 20 2A 2F 0D 0A 20 20 20 20 20 module */..
000180: 20 70 75 74 73 32 28 22 20 20 20 41 64 64 65 64 puts2(" Added
000190: 20 22 2C 20 6D 70 74 72 5B 6D 5D 29 3B 0D 0A 20 ", mptr[m]);..
0001A0: 20 20 20 20 20 2B 2B 6D 3B 09 09 09 09 2F 2A 20 ++m;..../*
0001B0: 6E 65 78 74 20 69 6E 20 6D 6F 64 75 6C 65 20 6C next in module l
0001C0: 69 73 74 20 2A 2F 0D 0A 20 20 20 20 20 20 63 6F ist */.. co
0001D0: 6E 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 20 7D ntinue;.. }
0001E0: 0D 0A 20 20 20 20 69 66 28 2A 6D 6F 64 20 21 3D .. if(*mod !=
0001F0: 20 48 49 47 48 29 20 7B 09 09 09 2F 2A 20 65 71 HIGH) {.../* eq
Size : 512 (Real : 512)
000000: 61 72 69 65 73 20 61 6E 64 20 69 6E 64 69 63 65 aries and indice
000010: 73 20 66 6F 72 20 75 70 64 61 74 69 6E 67 0D 0A s for updating..
000020: 2A 2F 0D 0A 6F 70 65 6E 75 70 28 29 20 7B 0D 0A */..openup() {..
000030: 20 20 6F 70 65 6E 69 6E 28 29 3B 0D 0A 20 20 6F openin();.. o
000040: 75 74 72 65 6C 20 3D 20 6F 70 65 6E 28 6E 65 77 utrel = open(new
000050: 6C 69 62 2C 20 22 77 22 29 3B 0D 0A 20 20 6F 75 lib, "w");.. ou
000060: 74 6E 64 78 20 3D 20 6F 70 65 6E 28 6E 65 77 6E tndx = open(newn
000070: 64 78 2C 20 22 77 22 29 3B 0D 0A 20 20 61 75 78 dx, "w");.. aux
000080: 62 75 66 28 6F 75 74 72 65 6C 2C 20 34 30 39 36 buf(outrel, 4096
000090: 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A );.. }..../*..*
0000A0: 2A 20 70 72 69 6E 74 20 66 69 6C 65 73 20 66 72 * print files fr
0000B0: 6F 6D 20 6C 69 62 72 61 72 79 0D 0A 2A 2F 0D 0A om library..*/..
0000C0: 70 72 69 6E 74 28 29 20 7B 0D 0A 20 20 63 68 61 print() {.. cha
0000D0: 72 20 6D 6F 64 6E 61 6D 5B 4E 41 4D 45 53 49 5A r modnam[NAMESIZ
0000E0: 45 5D 3B 0D 0A 20 20 6F 70 65 6E 69 6E 28 29 3B E];.. openin();
0000F0: 0D 0A 20 20 77 68 69 6C 65 28 6E 78 74 6D 6F 64 .. while(nxtmod
000100: 28 6D 6F 64 6E 61 6D 29 29 20 7B 0D 0A 20 20 20 (modnam)) {..
000110: 20 69 66 28 6D 61 74 63 68 28 6D 6F 64 6E 61 6D if(match(modnam
000120: 2C 20 59 45 53 29 29 20 7B 0D 0A 20 20 20 20 20 , YES)) {..
000130: 20 77 68 69 6C 65 28 59 45 53 29 20 7B 0D 0A 20 while(YES) {..
000140: 20 20 20 20 20 20 20 70 6F 6C 6C 28 59 45 53 29 poll(YES)
000150: 3B 0D 0A 20 20 20 20 20 20 20 20 69 66 28 69 74 ;.. if(it
000160: 65 6D 20 3E 20 45 4E 41 4D 45 29 20 73 65 65 72 em > ENAME) seer
000170: 65 6C 28 29 3B 0D 0A 20 20 20 20 20 20 20 20 67 el();.. g
000180: 65 74 72 65 6C 28 29 3B 0D 0A 20 20 20 20 20 20 etrel();..
000190: 20 20 69 66 28 69 74 65 6D 20 3D 3D 20 45 50 52 if(item == EPR
0001A0: 4F 47 29 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 OG) break;..
0001B0: 20 20 20 20 7D 0D 0A 20 20 20 20 20 20 7D 0D 0A }.. }..
0001C0: 20 20 20 20 7D 0D 0A 20 20 6D 69 73 73 69 6E 67 }.. missing
0001D0: 28 29 3B 0D 0A 20 20 63 6C 6F 73 65 69 6E 28 29 ();.. closein()
0001E0: 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A ;.. }..../*..**
0001F0: 20 77 72 69 74 65 20 61 6E 20 65 6E 74 72 79 20 write an entry
Size : 512 (Real : 512)
000000: 75 61 6C 20 61 6E 64 20 6E 6F 74 20 61 74 20 65 ual and not at e
000010: 6E 64 20 2A 2F 0D 0A 20 20 20 20 20 20 61 64 64 nd */.. add
000020: 6D 6F 64 28 6D 70 74 72 5B 6D 5D 29 3B 09 09 09 mod(mptr[m]);...
000030: 2F 2A 20 61 64 64 20 6E 65 77 20 6D 6F 64 75 6C /* add new modul
000040: 65 20 2A 2F 0D 0A 20 20 20 20 20 20 2B 2B 6D 3B e */.. ++m;
000050: 09 09 09 09 2F 2A 20 6E 65 78 74 20 69 6E 20 6D ..../* next in m
000060: 6F 64 75 6C 65 20 6C 69 73 74 20 2A 2F 0D 0A 20 odule list */..
000070: 20 20 20 20 20 70 75 74 73 32 28 22 52 65 70 6C puts2("Repl
000080: 61 63 65 64 20 22 2C 20 6D 6F 64 29 3B 0D 0A 20 aced ", mod);..
000090: 20 20 20 20 20 6E 78 74 6D 6F 64 28 6D 6F 64 29 nxtmod(mod)
0000A0: 3B 09 09 09 2F 2A 20 6E 65 78 74 20 69 6E 20 6F ;.../* next in o
0000B0: 6C 64 20 6C 69 62 72 61 72 79 20 2A 2F 0D 0A 20 ld library */..
0000C0: 20 20 20 20 20 63 6F 6E 74 69 6E 75 65 3B 0D 0A continue;..
0000D0: 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 62 72 65 }.. bre
0000E0: 61 6B 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 63 6C ak;.. }.. cl
0000F0: 6F 73 65 75 70 28 29 3B 0D 0A 20 20 7D 0D 0A 0D oseup();.. }...
000100: 0A 2F 2A 0D 0A 2A 2A 20 61 62 6F 72 74 20 77 69 ./*..** abort wi
000110: 74 68 20 61 20 75 73 61 67 65 20 6D 65 73 73 61 th a usage messa
000120: 67 65 0D 0A 2A 2F 0D 0A 75 73 61 67 65 28 29 20 ge..*/..usage()
000130: 7B 0D 0A 20 20 65 72 72 6F 72 28 22 55 73 61 67 {.. error("Usag
000140: 65 3A 20 4C 49 42 20 2D 7B 44 50 54 55 58 7D 5B e: LIB -{DPTUX}[
000150: 41 5D 20 6C 69 62 72 61 72 79 20 5B 6D 6F 64 75 A] library [modu
000160: 6C 65 2E 2E 2E 5D 22 29 3B 0D 0A 20 20 7D 0D 0A le...]");.. }..
000170: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000180: 20 70 75 74 73 32 28 22 20 20 20 41 64 64 65 64 puts2(" Added
000190: 20 22 2C 20 6D 70 74 72 5B 6D 5D 29 3B 0D 0A 20 ", mptr[m]);..
0001A0: 20 20 20 20 20 2B 2B 6D 3B 09 09 09 09 2F 2A 20 ++m;..../*
0001B0: 6E 65 78 74 20 69 6E 20 6D 6F 64 75 6C 65 20 6C next in module l
0001C0: 69 73 74 20 2A 2F 0D 0A 20 20 20 20 20 20 63 6F ist */.. co
0001D0: 6E 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 20 7D ntinue;.. }
0001E0: 0D 0A 20 20 20 20 69 66 28 2A 6D 6F 64 20 21 3D .. if(*mod !=
0001F0: 20 48 49 47 48 29 20 7B 09 09 09 2F 2A 20 65 71 HIGH) {.../* eq
Size : 512 (Real : 512)
000000: 6D 62 65 72 20 6F 66 20 6C 6F 6F 6B 73 20 74 6F mber of looks to
000010: 20 66 69 6E 64 20 69 74 20 2A 2F 0D 0A 0D 0A 6D find it */....m
000020: 61 69 6E 28 61 72 67 63 2C 20 61 72 67 76 29 20 ain(argc, argv)
000030: 69 6E 74 20 61 72 67 63 2C 20 2A 61 72 67 76 3B int argc, *argv;
000040: 20 7B 0D 0A 20 20 63 68 61 72 20 73 74 72 5B 4D {.. char str[M
000050: 41 58 46 4E 5D 3B 0D 0A 20 20 66 70 75 74 73 28 AXFN];.. fputs(
000060: 22 53 6D 61 6C 6C 2D 4D 61 63 20 4D 49 54 20 43 "Small-Mac MIT C
000070: 6F 6D 70 69 6C 65 72 2C 20 22 2C 20 73 74 64 65 ompiler, ", stde
000080: 72 72 29 3B 20 66 70 75 74 73 28 56 45 52 53 49 rr); fputs(VERSI
000090: 4F 4E 2C 20 73 74 64 65 72 72 29 3B 0D 0A 20 20 ON, stderr);..
0000A0: 66 70 75 74 73 28 43 52 49 47 48 54 31 2C 20 73 fputs(CRIGHT1, s
0000B0: 74 64 65 72 72 29 3B 0D 0A 20 20 67 65 74 73 77 tderr);.. getsw
0000C0: 28 61 72 67 63 2C 20 61 72 67 76 29 3B 09 09 2F (argc, argv);../
0000D0: 2A 20 66 65 74 63 68 20 61 6E 64 20 72 65 6D 65 * fetch and reme
0000E0: 6D 62 65 72 20 73 77 69 74 63 68 65 73 2C 20 65 mber switches, e
0000F0: 74 63 2E 20 2A 2F 0D 0A 20 20 6C 6F 61 64 28 29 tc. */.. load()
000100: 3B 0D 0A 20 20 69 66 28 6C 69 73 74 29 20 70 72 ;.. if(list) pr
000110: 69 6E 74 28 29 3B 0D 0A 20 20 69 66 28 63 6F 6E int();.. if(con
000120: 29 20 63 6F 6E 66 69 67 28 29 3B 0D 0A 20 20 7D ) config();.. }
000130: 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 63 6F 6E 66 69 ..../*..** confi
000140: 67 75 72 65 20 61 73 73 65 6D 62 6C 65 72 20 77 gure assembler w
000150: 69 74 68 20 6D 61 63 68 69 6E 65 20 69 6E 73 74 ith machine inst
000160: 72 75 63 74 69 6F 6E 20 74 61 62 6C 65 0D 0A 2A ruction table..*
000170: 2F 0D 0A 65 78 74 65 72 6E 20 69 6E 74 20 55 63 /..extern int Uc
000180: 68 72 70 6F 73 5B 5D 3B 0D 0A 63 6F 6E 66 69 67 hrpos[];..config
000190: 28 29 20 7B 0D 0A 20 20 69 6E 74 20 66 64 2C 20 () {.. int fd,
0001A0: 73 7A 3B 0D 0A 20 20 66 64 20 3D 20 6F 70 65 6E sz;.. fd = open
0001B0: 28 6D 61 63 66 6E 2C 20 22 72 2B 22 29 3B 09 09 (macfn, "r+");..
0001C0: 2F 2A 20 6D 75 73 74 20 65 78 69 73 74 20 2A 2F /* must exist */
0001D0: 0D 0A 20 20 55 63 68 72 70 6F 73 5B 66 64 5D 20 .. Uchrpos[fd]
0001E0: 3D 20 33 3B 09 09 09 2F 2A 20 73 65 65 6B 20 74 = 3;.../* seek t
0001F0: 6F 20 6D 69 74 61 62 6C 65 20 77 6F 72 64 20 2A o mitable word *
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 2F 0D 0A 20 20 72 65 61 64 28 66 64 2C 20 26 73 /.. read(fd, &s
000010: 7A 2C 20 49 4E 54 53 5A 29 3B 09 09 09 2F 2A 20 z, INTSZ);.../*
000020: 72 65 61 64 20 74 61 62 6C 65 20 73 69 7A 65 20 read table size
000030: 2A 2F 0D 0A 20 20 69 66 28 73 7A 20 21 3D 20 6D */.. if(sz != m
000040: 69 74 61 62 6C 65 29 20 7B 0D 0A 20 20 20 20 70 itable) {.. p
000050: 72 69 6E 74 66 28 22 25 73 20 4D 49 54 20 69 73 rintf("%s MIT is
000060: 20 25 75 20 42 79 74 65 73 20 62 75 74 20 53 68 %u Bytes but Sh
000070: 6F 75 6C 64 20 62 65 20 25 75 5C 6E 22 2C 20 6D ould be %u\n", m
000080: 61 63 66 6E 2C 20 73 7A 2C 20 6D 69 74 61 62 6C acfn, sz, mitabl
000090: 65 29 3B 0D 0A 20 20 20 20 61 62 6F 72 74 28 37 e);.. abort(7
0000A0: 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 77 72 69 );.. }.. wri
0000B0: 74 65 28 66 64 2C 20 26 6D 69 74 61 62 6C 65 20 te(fd, &mitable
0000C0: 2B 20 31 2C 20 6D 69 74 61 62 6C 65 29 3B 0D 0A + 1, mitable);..
0000D0: 20 20 69 66 28 66 65 72 72 6F 72 28 66 64 29 29 if(ferror(fd))
0000E0: 20 65 72 72 6F 72 32 28 6D 61 63 66 6E 2C 20 22 error2(macfn, "
0000F0: 20 2D 20 57 72 69 74 65 20 45 72 72 6F 72 22 29 - Write Error")
000100: 3B 0D 0A 20 20 63 6C 6F 73 65 28 66 64 29 3B 0D ;.. close(fd);.
000110: 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A 20 67 . }..../*..** g
000120: 65 74 20 73 77 69 74 63 68 65 73 20 66 72 6F 6D et switches from
000130: 20 63 6F 6D 6D 61 6E 64 20 6C 69 6E 65 0D 0A 2A command line..*
000140: 2F 0D 0A 67 65 74 73 77 28 61 72 67 63 2C 20 61 /..getsw(argc, a
000150: 72 67 76 29 20 69 6E 74 20 61 72 67 63 2C 20 2A rgv) int argc, *
000160: 61 72 67 76 3B 20 7B 0D 0A 20 20 63 68 61 72 20 argv; {.. char
000170: 61 72 67 5B 4D 41 58 46 4E 5D 3B 0D 0A 20 20 69 arg[MAXFN];.. i
000180: 6E 74 20 69 2C 20 62 2C 20 6C 65 6E 3B 0D 0A 20 nt i, b, len;..
000190: 20 69 20 3D 20 30 3B 0D 0A 20 20 77 68 69 6C 65 i = 0;.. while
0001A0: 28 67 65 74 61 72 67 28 2B 2B 69 2C 20 61 72 67 (getarg(++i, arg
0001B0: 2C 20 4D 41 58 46 4E 2C 20 61 72 67 63 2C 20 61 , MAXFN, argc, a
0001C0: 72 67 76 29 20 21 3D 20 45 4F 46 29 20 7B 0D 0A rgv) != EOF) {..
0001D0: 20 20 20 20 69 66 28 61 72 67 5B 30 5D 20 3D 3D if(arg[0] ==
0001E0: 20 27 2D 27 29 20 7B 0D 0A 20 20 20 20 20 20 69 '-') {.. i
0001F0: 66 28 74 6F 75 70 70 65 72 28 61 72 67 5B 31 5D f(toupper(arg[1]
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 43 4D 49 54 2E 43 20 2D 2D /*..** CMIT.C --
000010: 20 4D 61 63 68 69 6E 65 20 49 6E 73 74 72 75 63 Machine Instruc
000020: 74 69 6F 6E 20 54 61 62 6C 65 20 43 6F 6D 70 69 tion Table Compi
000030: 6C 65 72 0D 0A 2A 2A 0D 0A 2A 2A 20 20 20 20 20 ler..**..**
000040: 20 20 20 20 20 20 20 20 53 6D 61 6C 6C 2D 4D 61 Small-Ma
000050: 63 20 41 73 73 65 6D 62 6C 65 72 20 43 6F 6E 66 c Assembler Conf
000060: 69 67 75 72 61 74 69 6F 6E 20 55 74 69 6C 69 74 iguration Utilit
000070: 79 0D 0A 2A 2A 0D 0A 2A 2A 20 20 20 20 20 20 20 y..**..**
000080: 20 20 20 20 20 20 20 20 20 20 20 20 43 6F 70 79 Copy
000090: 72 69 67 68 74 20 31 39 38 35 20 4A 2E 20 45 2E right 1985 J. E.
0000A0: 20 48 65 6E 64 72 69 78 0D 0A 2A 2A 0D 0A 2A 2A Hendrix..**..**
0000B0: 20 55 73 61 67 65 3A 20 43 4D 49 54 20 5B 2D 43 Usage: CMIT [-C
0000C0: 5D 20 5B 2D 4C 5D 20 5B 74 61 62 6C 65 5D 20 5B ] [-L] [table] [
0000D0: 6D 61 63 5D 20 0D 0A 2A 2A 0D 0A 2A 2A 20 2D 43 mac] ..**..** -C
0000E0: 20 20 20 20 20 43 6F 6E 66 69 67 75 72 65 20 74 Configure t
0000F0: 68 65 20 65 78 65 63 75 74 61 62 6C 65 20 61 73 he executable as
000100: 73 65 6D 62 6C 65 72 20 28 4D 41 43 2E 43 4F 4D sembler (MAC.COM
000110: 29 20 77 69 74 68 20 74 68 65 20 69 6E 64 69 63 ) with the indic
000120: 61 74 65 64 2C 0D 0A 2A 2A 20 20 20 20 20 20 20 ated,..**
000130: 20 6F 72 20 64 65 66 61 75 6C 74 2C 20 6D 61 63 or default, mac
000140: 68 69 6E 65 20 69 6E 73 74 72 75 63 74 69 6E 20 hine instructin
000150: 74 61 62 6C 65 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 2D table...**..** -
000160: 4C 20 20 20 20 20 4C 69 73 74 20 74 68 65 20 63 L List the c
000170: 6F 6D 70 69 6C 65 64 20 6D 61 63 68 69 6E 65 20 ompiled machine
000180: 69 6E 73 74 72 75 63 74 69 6F 6E 20 74 61 62 6C instruction tabl
000190: 65 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 74 61 62 6C 65 e...**..** table
0001A0: 20 20 54 68 65 20 6E 61 6D 65 20 6F 66 20 74 68 The name of th
0001B0: 65 20 6D 61 63 68 69 6E 65 20 69 6E 73 74 72 75 e machine instru
0001C0: 63 74 69 6F 6E 20 74 61 62 6C 65 20 66 69 6C 65 ction table file
0001D0: 20 69 6E 20 73 6F 75 72 63 65 0D 0A 2A 2A 20 20 in source..**
0001E0: 20 20 20 20 20 20 66 6F 72 6D 61 74 20 28 64 65 format (de
0001F0: 66 61 75 6C 74 20 38 30 38 30 2E 4D 49 54 29 2E fault 8080.MIT).
Size : 512 (Real : 512)
000000: 29 20 3D 3D 20 27 43 27 29 20 20 20 20 20 20 63 ) == 'C') c
000010: 6F 6E 20 3D 20 59 45 53 3B 0D 0A 20 20 20 20 20 on = YES;..
000020: 20 65 6C 73 65 20 69 66 28 74 6F 75 70 70 65 72 else if(toupper
000030: 28 61 72 67 5B 31 5D 29 20 3D 3D 20 27 4C 27 29 (arg[1]) == 'L')
000040: 20 6C 69 73 74 20 3D 20 59 45 53 3B 0D 0A 20 20 list = YES;..
000050: 20 20 20 20 65 6C 73 65 20 75 73 61 67 65 28 29 else usage()
000060: 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 ;.. }..
000070: 65 6C 73 65 20 7B 0D 0A 20 20 20 20 20 20 69 66 else {.. if
000080: 28 65 78 74 65 6E 64 28 61 72 67 2C 20 4D 49 54 (extend(arg, MIT
000090: 45 58 54 2C 20 43 4F 4D 45 58 54 29 29 20 0D 0A EXT, COMEXT)) ..
0000A0: 20 20 20 20 20 20 20 20 20 20 20 73 74 72 63 70 strcp
0000B0: 79 28 6D 61 63 66 6E 2C 20 61 72 67 29 3B 0D 0A y(macfn, arg);..
0000C0: 20 20 20 20 20 20 65 6C 73 65 20 73 74 72 63 70 else strcp
0000D0: 79 28 6D 69 74 66 6E 2C 20 61 72 67 29 3B 0D 0A y(mitfn, arg);..
0000E0: 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 7D 0D 0A }.. }..
0000F0: 20 20 69 66 28 21 63 6F 6E 29 20 6C 69 73 74 20 if(!con) list
000100: 3D 20 59 45 53 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F = YES;.. }..../
000110: 2A 0D 0A 2A 2A 20 6C 6F 61 64 20 74 61 62 6C 65 *..** load table
000120: 20 66 72 6F 6D 20 64 69 73 6B 65 74 74 65 0D 0A from diskette..
000130: 2A 2F 0D 0A 6C 6F 61 64 28 29 20 7B 0D 0A 20 20 */..load() {..
000140: 63 68 61 72 20 73 74 72 5B 4D 41 58 4C 49 4E 45 char str[MAXLINE
000150: 5D 2C 20 2A 6D 69 74 65 6E 64 2C 20 2A 76 70 74 ], *mitend, *vpt
000160: 72 2C 20 2A 6C 61 73 74 2C 20 2A 70 74 72 2C 20 r, *last, *ptr,
000170: 2A 63 70 3B 0D 0A 20 20 69 6E 74 20 66 64 2C 20 *cp;.. int fd,
000180: 74 6F 70 2C 20 62 69 74 73 2C 20 62 79 74 65 2C top, bits, byte,
000190: 20 69 6C 65 6E 2C 20 68 2C 20 69 2C 20 6A 2C 0D ilen, h, i, j,.
0001A0: 0A 20 20 20 20 20 20 6F 70 6E 64 5B 4D 49 4F 50 . opnd[MIOP
0001B0: 4E 44 53 5D 2C 20 6F 70 6E 64 73 2C 20 65 74 2C NDS], opnds, et,
0001C0: 20 2A 66 70 74 72 3B 0D 0A 20 20 66 64 20 3D 20 *fptr;.. fd =
0001D0: 6F 70 65 6E 28 6D 69 74 66 6E 2C 20 22 72 22 29 open(mitfn, "r")
0001E0: 3B 0D 0A 20 20 70 74 72 20 3D 20 6D 69 74 62 75 ;.. ptr = mitbu
0001F0: 66 3B 0D 0A 20 20 6D 69 74 65 6E 64 20 3D 20 6D f;.. mitend = m
Size : 512 (Real : 512)
000000: 20 20 54 68 65 20 64 65 66 61 75 6C 74 20 61 6E The default an
000010: 64 20 6F 6E 6C 79 20 61 6C 6C 6F 77 65 64 0D 0A d only allowed..
000020: 2A 2A 20 20 20 20 20 20 20 20 66 69 6C 65 6E 61 ** filena
000030: 6D 65 20 65 78 74 65 6E 73 69 6F 6E 20 69 73 20 me extension is
000040: 4D 49 54 2E 20 20 41 20 64 72 69 76 65 20 73 70 MIT. A drive sp
000050: 65 63 69 66 69 65 72 20 69 73 20 61 6C 6C 6F 77 ecifier is allow
000060: 65 64 2E 0D 0A 2A 2A 0D 0A 2A 2A 20 6D 61 63 20 ed...**..** mac
000070: 20 20 20 41 73 73 65 6D 62 6C 65 72 20 43 4F 4D Assembler COM
000080: 20 66 69 6C 65 20 28 64 65 66 61 75 6C 74 20 4D file (default M
000090: 41 43 2E 43 4F 4D 29 2E 20 20 4D 75 73 74 20 68 AC.COM). Must h
0000A0: 61 76 65 20 43 4F 4D 20 65 78 74 65 6E 73 69 6F ave COM extensio
0000B0: 6E 0D 0A 2A 2A 20 20 20 20 20 20 20 20 74 6F 20 n..** to
0000C0: 62 65 20 72 65 63 6F 67 6E 69 7A 65 64 20 61 73 be recognized as
0000D0: 20 73 75 63 68 2E 20 20 4E 65 65 64 20 73 70 65 such. Need spe
0000E0: 63 69 66 79 20 6F 6E 6C 79 20 69 66 20 6E 6F 74 cify only if not
0000F0: 20 6F 6E 20 74 68 65 0D 0A 2A 2A 20 20 20 20 20 on the..**
000100: 20 20 20 64 65 66 61 75 6C 74 20 64 72 69 76 65 default drive
000110: 20 6F 72 20 68 61 73 20 61 20 64 69 66 66 65 72 or has a differ
000120: 65 6E 74 20 6E 61 6D 65 2E 0D 0A 2A 2A 0D 0A 2A ent name...**..*
000130: 2A 20 20 20 20 20 20 20 20 4E 4F 54 45 3A 20 69 * NOTE: i
000140: 66 20 6E 6F 20 73 77 69 74 63 68 65 73 20 61 72 f no switches ar
000150: 65 20 67 69 76 65 6E 2C 20 2D 4C 20 69 73 20 61 e given, -L is a
000160: 73 73 75 6D 65 64 2E 20 20 49 66 20 61 6E 79 20 ssumed. If any
000170: 73 77 69 74 63 68 65 73 0D 0A 2A 2A 20 20 20 20 switches..**
000180: 20 20 20 20 61 72 65 20 67 69 76 65 6E 2C 20 6F are given, o
000190: 6E 6C 79 20 74 68 6F 73 65 20 61 63 74 69 6F 6E nly those action
0001A0: 73 20 73 6F 20 73 70 65 63 69 66 69 65 64 20 61 s so specified a
0001B0: 72 65 20 74 61 6B 65 6E 2E 0D 0A 2A 2A 0D 0A 2A re taken...**..*
0001C0: 2A 20 20 20 20 20 20 20 20 4E 4F 54 45 3A 20 41 * NOTE: A
0001D0: 66 74 65 72 20 63 6F 6D 70 69 6C 69 6E 67 20 61 fter compiling a
0001E0: 6E 64 20 6C 69 6E 6B 69 6E 67 20 61 20 6E 65 77 nd linking a new
0001F0: 20 4D 41 43 2E 43 4F 4D 2C 20 69 74 20 6D 75 73 MAC.COM, it mus
Size : 512 (Real : 512)
000000: 69 74 62 75 66 20 2B 20 28 4D 49 42 55 46 53 5A itbuf + (MIBUFSZ
000010: 20 2D 20 4D 41 58 4C 49 4E 45 29 3B 0D 0A 20 20 - MAXLINE);..
000020: 6F 70 6E 64 73 20 3D 20 30 3B 0D 0A 20 20 77 68 opnds = 0;.. wh
000030: 69 6C 65 28 66 67 65 74 73 28 73 74 72 2C 20 4D ile(fgets(str, M
000040: 41 58 4C 49 4E 45 2C 20 66 64 29 29 20 7B 09 09 AXLINE, fd)) {..
000050: 2F 2A 20 6C 6F 61 64 20 6F 70 65 72 61 6E 64 20 /* load operand
000060: 66 69 65 6C 64 73 20 2A 2F 0D 0A 20 20 20 20 70 fields */.. p
000070: 6F 6C 6C 28 59 45 53 29 3B 0D 0A 20 20 20 20 63 oll(YES);.. c
000080: 70 20 3D 20 73 6B 69 70 28 33 2C 20 73 74 72 29 p = skip(3, str)
000090: 3B 09 09 09 09 2F 2A 20 73 6B 69 70 20 74 6F 20 ;..../* skip to
0000A0: 6F 70 65 72 61 6E 64 20 66 69 65 6C 64 20 2A 2F operand field */
0000B0: 0D 0A 20 20 20 20 69 66 28 21 69 73 67 72 61 70 .. if(!isgrap
0000C0: 68 28 2A 63 70 29 29 20 63 6F 6E 74 69 6E 75 65 h(*cp)) continue
0000D0: 3B 09 09 09 2F 2A 20 6E 6F 20 6F 70 65 72 61 6E ;.../* no operan
0000E0: 64 20 74 6F 20 6C 6F 61 64 20 2A 2F 0D 0A 20 20 d to load */..
0000F0: 20 20 66 6F 72 28 6A 20 3D 20 30 3B 20 6A 20 3C for(j = 0; j <
000100: 20 6F 70 6E 64 73 3B 20 2B 2B 6A 29 09 09 09 2F opnds; ++j).../
000110: 2A 20 61 6C 72 65 61 64 79 20 68 61 76 65 20 69 * already have i
000120: 74 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 69 66 28 t? */.. if(
000130: 66 6C 64 63 6D 70 28 63 70 2C 20 6F 70 6E 64 5B fldcmp(cp, opnd[
000140: 6A 5D 29 20 3D 3D 20 30 29 20 62 72 65 61 6B 3B j]) == 0) break;
000150: 0D 0A 20 20 20 20 69 66 28 6A 20 3C 20 6F 70 6E .. if(j < opn
000160: 64 73 29 20 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 ds) continue;..
000170: 20 20 20 69 66 28 70 74 72 20 3E 20 6D 69 74 65 if(ptr > mite
000180: 6E 64 29 20 67 6F 74 6F 20 6D 69 74 6F 76 72 31 nd) goto mitovr1
000190: 3B 0D 0A 20 20 20 20 6F 70 6E 64 5B 6F 70 6E 64 ;.. opnd[opnd
0001A0: 73 2B 2B 5D 20 3D 20 70 74 72 3B 09 09 09 2F 2A s++] = ptr;.../*
0001B0: 20 74 65 6D 70 20 6F 70 65 72 61 6E 64 20 70 74 temp operand pt
0001C0: 72 20 2A 2F 0D 0A 20 20 20 20 69 66 28 6F 70 6E r */.. if(opn
0001D0: 64 73 20 3D 3D 20 4D 49 4F 50 4E 44 53 29 20 65 ds == MIOPNDS) e
0001E0: 72 72 6F 72 32 28 73 74 72 2C 20 22 2D 20 4D 49 rror2(str, "- MI
0001F0: 54 20 4F 70 65 72 61 6E 64 20 4F 76 65 72 66 6C T Operand Overfl
Size : 512 (Real : 512)
000000: 74 20 62 65 0D 0A 2A 2A 20 20 20 20 20 20 20 20 t be..**
000010: 63 6F 6E 66 69 67 75 72 65 64 20 62 79 20 72 75 configured by ru
000020: 6E 6E 69 6E 67 20 74 68 69 73 20 70 72 6F 67 72 nning this progr
000030: 61 6D 20 62 65 66 6F 72 65 20 69 74 20 6D 61 79 am before it may
000040: 20 62 65 20 65 78 65 63 75 74 65 64 2E 0D 0A 2A be executed...*
000050: 2A 20 20 20 20 20 20 20 20 41 20 70 72 65 76 69 * A previ
000060: 6F 75 73 6C 79 20 63 6F 6E 66 69 67 75 72 65 64 ously configured
000070: 20 4D 41 43 2E 43 4F 4D 20 6D 61 79 20 62 65 20 MAC.COM may be
000080: 72 65 63 6F 6E 66 69 67 75 72 65 64 20 61 74 20 reconfigured at
000090: 61 6E 79 20 74 69 6D 65 2E 0D 0A 2A 2F 0D 0A 23 any time...*/..#
0000A0: 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E 68 include <stdio.h
0000B0: 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6D 61 63 >..#include "mac
0000C0: 2E 68 22 09 2F 2A 20 6D 75 73 74 20 62 65 20 69 .h"./* must be i
0000D0: 6E 63 6C 75 64 65 64 20 66 69 72 73 74 20 2A 2F ncluded first */
0000E0: 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6D 69 74 2E ..#include "mit.
0000F0: 68 22 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6E 6F h"..#include "no
000100: 74 69 63 65 2E 68 22 0D 0A 0D 0A 23 64 65 66 69 tice.h"....#defi
000110: 6E 65 20 43 4F 4D 45 58 54 20 20 22 2E 43 4F 4D ne COMEXT ".COM
000120: 22 0D 0A 23 64 65 66 69 6E 65 20 4D 49 54 45 58 "..#define MITEX
000130: 54 20 20 22 2E 4D 49 54 22 0D 0A 0D 0A 63 68 61 T ".MIT"....cha
000140: 72 0D 0A 20 20 6D 61 63 66 6E 5B 4D 41 58 46 4E r.. macfn[MAXFN
000150: 5D 20 3D 20 22 4D 41 43 2E 43 4F 4D 22 2C 09 2F ] = "MAC.COM",./
000160: 2A 20 64 65 66 61 75 6C 74 20 61 73 73 65 6D 62 * default assemb
000170: 6C 65 72 20 66 69 6C 65 6E 61 6D 65 20 2A 2F 0D ler filename */.
000180: 0A 20 20 6D 69 74 66 6E 5B 4D 41 58 46 4E 5D 20 . mitfn[MAXFN]
000190: 3D 20 22 38 30 38 30 2E 4D 49 54 22 3B 09 2F 2A = "8080.MIT";./*
0001A0: 20 64 65 66 61 75 6C 74 20 6D 69 74 20 66 69 6C default mit fil
0001B0: 65 6E 61 6D 65 20 2A 2F 0D 0A 69 6E 74 0D 0A 20 ename */..int..
0001C0: 20 63 6F 6E 2C 09 09 09 2F 2A 20 63 6F 6E 66 69 con,.../* confi
0001D0: 67 75 72 65 3F 20 2A 2F 0D 0A 20 20 6C 69 73 74 gure? */.. list
0001E0: 2C 09 09 09 2F 2A 20 6C 69 73 74 3F 20 2A 2F 0D ,.../* list? */.
0001F0: 0A 20 20 6C 6F 6F 6B 73 3B 09 09 2F 2A 20 6E 75 . looks;../* nu
Size : 512 (Real : 512)
000000: 6F 77 22 29 3B 0D 0A 20 20 20 20 77 68 69 6C 65 ow");.. while
000010: 28 69 73 67 72 61 70 68 28 2A 70 74 72 20 3D 20 (isgraph(*ptr =
000020: 2A 63 70 2B 2B 29 29 20 2B 2B 70 74 72 3B 09 09 *cp++)) ++ptr;..
000030: 2F 2A 20 63 6F 70 79 20 6F 70 65 72 61 6E 64 20 /* copy operand
000040: 66 69 65 6C 64 20 2A 2F 0D 0A 20 20 20 20 2A 70 field */.. *p
000050: 74 72 2B 2B 20 3D 20 4E 55 4C 4C 3B 0D 0A 20 20 tr++ = NULL;..
000060: 20 20 7D 0D 0A 20 20 69 66 28 72 65 77 69 6E 64 }.. if(rewind
000070: 28 66 64 29 29 20 65 72 72 6F 72 28 22 2D 20 43 (fd)) error("- C
000080: 61 6E 27 74 20 52 65 77 69 6E 64 20 4D 49 54 20 an't Rewind MIT
000090: 46 69 6C 65 22 29 3B 2F 2A 20 32 6E 64 20 70 61 File");/* 2nd pa
0000A0: 73 73 20 2A 2F 0D 0A 20 20 6C 61 73 74 20 3D 20 ss */.. last =
0000B0: 70 74 72 3B 20 2A 6C 61 73 74 20 3D 20 4E 55 4C ptr; *last = NUL
0000C0: 4C 3B 0D 0A 20 20 74 6F 70 20 3D 20 30 3B 0D 0A L;.. top = 0;..
0000D0: 20 20 77 68 69 6C 65 28 66 67 65 74 73 28 73 74 while(fgets(st
0000E0: 72 2C 20 4D 41 58 4C 49 4E 45 2C 20 66 64 29 29 r, MAXLINE, fd))
0000F0: 20 7B 09 09 2F 2A 20 6C 6F 61 64 20 6D 6E 65 6D {../* load mnem
000100: 6F 6E 69 63 73 2C 20 65 74 63 2E 20 2A 2F 0D 0A onics, etc. */..
000110: 20 20 20 20 70 6F 6C 6C 28 59 45 53 29 3B 0D 0A poll(YES);..
000120: 20 20 20 20 69 66 28 70 74 72 20 3E 20 6D 69 74 if(ptr > mit
000130: 65 6E 64 29 20 20 20 7B 6D 69 74 6F 76 72 31 3A end) {mitovr1:
000140: 20 65 72 72 6F 72 32 28 73 74 72 2C 20 22 2D 20 error2(str, "-
000150: 4D 49 54 20 42 75 66 66 65 72 20 4F 76 65 72 66 MIT Buffer Overf
000160: 6C 6F 77 22 29 3B 7D 0D 0A 20 20 20 20 69 66 28 low");}.. if(
000170: 74 6F 70 20 3E 3D 20 4D 49 43 4F 55 4E 54 29 20 top >= MICOUNT)
000180: 65 72 72 6F 72 28 22 2D 20 4D 49 54 20 4D 6E 65 error("- MIT Mne
000190: 6D 6F 6E 69 63 20 4F 76 65 72 66 6C 6F 77 22 29 monic Overflow")
0001A0: 3B 0D 0A 20 20 20 20 63 70 20 3D 20 73 6B 69 70 ;.. cp = skip
0001B0: 28 32 2C 20 73 74 72 29 3B 09 09 09 09 2F 2A 20 (2, str);..../*
0001C0: 73 6B 69 70 20 74 6F 20 6D 6E 65 6D 6F 6E 69 63 skip to mnemonic
0001D0: 20 66 69 65 6C 64 20 2A 2F 0D 0A 20 20 20 20 69 field */.. i
0001E0: 66 28 66 6C 64 63 6D 70 28 63 70 2C 20 6C 61 73 f(fldcmp(cp, las
0001F0: 74 29 29 20 7B 09 09 09 2F 2A 20 6E 65 77 20 6D t)) {.../* new m
Size : 512 (Real : 512)
000000: 7D 0D 0A 20 20 66 6F 72 28 69 20 3D 20 6A 20 3D }.. for(i = j =
000010: 20 30 3B 20 69 20 3C 20 74 6F 70 3B 20 2B 2B 69 0; i < top; ++i
000020: 29 20 7B 09 2F 2A 20 63 72 65 61 74 65 20 68 61 ) {./* create ha
000030: 73 68 20 69 6E 64 69 63 65 73 20 2D 20 70 61 73 sh indices - pas
000040: 73 20 32 20 2A 2F 0D 0A 20 20 20 20 70 6F 6C 6C s 2 */.. poll
000050: 28 59 45 53 29 3B 0D 0A 20 20 20 20 68 20 3D 20 (YES);.. h =
000060: 68 61 73 68 28 6D 69 74 70 74 72 5B 69 5D 2C 20 hash(mitptr[i],
000070: 4D 49 43 4F 55 4E 54 29 3B 0D 0A 20 20 20 20 69 MICOUNT);.. i
000080: 66 28 6D 69 74 6E 64 78 5B 68 5D 20 21 3D 20 69 f(mitndx[h] != i
000090: 29 20 7B 0D 0A 20 20 20 20 20 20 77 68 69 6C 65 ) {.. while
0000A0: 28 6D 69 74 6E 64 78 5B 6A 5D 20 21 3D 20 45 4F (mitndx[j] != EO
0000B0: 46 29 20 2B 2B 6A 3B 09 2F 2A 20 6D 75 73 74 20 F) ++j;./* must
0000C0: 62 65 20 65 6D 70 74 79 20 73 6C 6F 74 20 2A 2F be empty slot */
0000D0: 0D 0A 20 20 20 20 20 20 6D 69 74 6E 64 78 5B 6A .. mitndx[j
0000E0: 5D 20 3D 20 69 3B 0D 0A 20 20 20 20 20 20 77 68 ] = i;.. wh
0000F0: 69 6C 65 28 6D 69 74 6E 78 74 5B 68 5D 20 21 3D ile(mitnxt[h] !=
000100: 20 45 4F 46 29 20 68 20 3D 20 6D 69 74 6E 78 74 EOF) h = mitnxt
000110: 5B 68 5D 3B 0D 0A 20 20 20 20 20 20 6D 69 74 6E [h];.. mitn
000120: 78 74 5B 68 5D 20 3D 20 6A 3B 0D 0A 20 20 20 20 xt[h] = j;..
000130: 20 20 7D 0D 0A 20 20 20 20 7D 0D 0A 20 20 63 6C }.. }.. cl
000140: 6F 73 65 28 66 64 29 3B 0D 0A 20 20 7D 0D 0A 0D ose(fd);.. }...
000150: 0A 2F 2A 0D 0A 2A 2A 20 70 72 69 6E 74 20 63 6F ./*..** print co
000160: 6D 70 69 6C 65 64 20 6D 61 63 68 69 6E 65 20 69 mpiled machine i
000170: 6E 73 74 72 75 63 74 69 6F 6E 20 74 61 62 6C 65 nstruction table
000180: 0D 0A 2A 2F 0D 0A 70 72 69 6E 74 28 29 20 7B 0D ..*/..print() {.
000190: 0A 20 20 69 6E 74 20 69 20 2C 6B 2C 20 62 61 6B . int i ,k, bak
0001A0: 2C 20 66 64 2C 20 66 6D 74 2C 20 6C 65 6E 2C 20 , fd, fmt, len,
0001B0: 6F 70 63 6F 64 65 2C 20 68 6F 6C 64 69 6E 67 3B opcode, holding;
0001C0: 0D 0A 20 20 63 68 61 72 20 6C 69 6E 5B 4D 41 58 .. char lin[MAX
0001D0: 4C 49 4E 45 5D 2C 20 69 6E 73 74 5B 4D 41 58 4C LINE], inst[MAXL
0001E0: 49 4E 45 5D 2C 20 2A 70 74 72 2C 20 2A 76 70 74 INE], *ptr, *vpt
0001F0: 72 2C 20 2A 63 70 3B 0D 0A 20 20 66 64 20 3D 20 r, *cp;.. fd =
Size : 512 (Real : 512)
000000: 6E 65 6D 6F 6E 69 63 20 2A 2F 0D 0A 20 20 20 20 nemonic */..
000010: 20 20 2A 70 74 72 2B 2B 20 3D 20 30 3B 09 09 09 *ptr++ = 0;...
000020: 09 2F 2A 20 74 65 72 6D 69 6E 61 74 65 20 70 72 ./* terminate pr
000030: 69 6F 72 20 69 6E 73 74 72 20 2A 2F 0D 0A 20 20 ior instr */..
000040: 20 20 20 20 6D 69 74 70 74 72 5B 74 6F 70 2B 2B mitptr[top++
000050: 5D 20 3D 20 6C 61 73 74 20 3D 20 70 74 72 3B 09 ] = last = ptr;.
000060: 09 2F 2A 20 6D 6E 65 6D 6F 6E 69 63 20 70 74 72 ./* mnemonic ptr
000070: 20 2A 2F 0D 0A 20 20 20 20 20 20 77 68 69 6C 65 */.. while
000080: 28 69 73 67 72 61 70 68 28 2A 70 74 72 20 3D 20 (isgraph(*ptr =
000090: 2A 63 70 2B 2B 29 29 20 2B 2B 70 74 72 3B 09 2F *cp++)) ++ptr;./
0000A0: 2A 20 63 6F 70 79 20 6D 6E 65 6D 6F 6E 69 63 20 * copy mnemonic
0000B0: 66 69 65 6C 64 20 2A 2F 0D 0A 20 20 20 20 20 20 field */..
0000C0: 2A 70 74 72 2B 2B 20 3D 20 4E 55 4C 4C 3B 0D 0A *ptr++ = NULL;..
0000D0: 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 76 70 74 }.. vpt
0000E0: 72 20 3D 20 70 74 72 2B 2B 3B 20 2A 76 70 74 72 r = ptr++; *vptr
0000F0: 20 3D 20 32 2A 49 4E 54 53 5A 3B 09 09 2F 2A 20 = 2*INTSZ;../*
000100: 76 6C 65 6E 20 66 69 65 6C 64 20 2A 2F 0D 0A 20 vlen field */..
000110: 20 20 20 63 70 20 3D 20 73 6B 69 70 28 33 2C 20 cp = skip(3,
000120: 73 74 72 29 3B 09 09 09 09 2F 2A 20 6C 6F 63 61 str);..../* loca
000130: 74 65 20 6F 70 65 72 61 6E 64 20 2A 2F 0D 0A 20 te operand */..
000140: 20 20 20 69 66 28 69 73 67 72 61 70 68 28 2A 63 if(isgraph(*c
000150: 70 29 29 20 7B 09 09 09 09 2F 2A 20 68 61 73 20 p)) {..../* has
000160: 61 6E 20 6F 70 65 72 61 6E 64 20 66 69 65 6C 64 an operand field
000170: 20 2A 2F 0D 0A 20 20 20 20 20 20 66 6F 72 28 6A */.. for(j
000180: 20 3D 20 30 3B 20 6A 20 3C 20 6F 70 6E 64 73 3B = 0; j < opnds;
000190: 20 2B 2B 6A 29 0D 0A 20 20 20 20 20 20 20 20 69 ++j).. i
0001A0: 66 28 66 6C 64 63 6D 70 28 63 70 2C 20 6F 70 6E f(fldcmp(cp, opn
0001B0: 64 5B 6A 5D 29 20 3D 3D 20 30 29 20 62 72 65 61 d[j]) == 0) brea
0001C0: 6B 3B 0D 0A 20 20 20 20 20 20 69 66 28 6A 20 3D k;.. if(j =
0001D0: 3D 20 6F 70 6E 64 73 29 20 65 72 72 6F 72 32 28 = opnds) error2(
0001E0: 73 74 72 2C 20 22 2D 20 43 61 6E 27 74 20 46 69 str, "- Can't Fi
0001F0: 6E 64 20 4F 70 65 72 61 6E 64 22 29 3B 0D 0A 20 nd Operand");..
Size : 512 (Real : 512)
000000: 6F 70 65 6E 28 6D 69 74 66 6E 2C 20 22 72 22 29 open(mitfn, "r")
000010: 3B 0D 0A 20 20 77 68 69 6C 65 28 66 67 65 74 73 ;.. while(fgets
000020: 28 6C 69 6E 2C 20 4D 41 58 4C 49 4E 45 2C 20 66 (lin, MAXLINE, f
000030: 64 29 29 20 7B 0D 0A 20 20 20 20 70 6F 6C 6C 28 d)) {.. poll(
000040: 59 45 53 29 3B 0D 0A 20 20 20 20 69 20 3D 20 30 YES);.. i = 0
000050: 3B 20 63 70 20 3D 20 73 6B 69 70 28 32 2C 20 6C ; cp = skip(2, l
000060: 69 6E 29 3B 0D 0A 20 20 20 20 77 68 69 6C 65 28 in);.. while(
000070: 69 73 67 72 61 70 68 28 69 6E 73 74 5B 69 2B 2B isgraph(inst[i++
000080: 5D 20 3D 20 2A 63 70 2B 2B 29 29 20 3B 0D 0A 20 ] = *cp++)) ;..
000090: 20 20 20 69 66 28 69 6E 73 74 5B 69 2D 31 5D 20 if(inst[i-1]
0000A0: 3D 3D 20 27 5C 6E 27 29 20 69 6E 73 74 5B 69 2D == '\n') inst[i-
0000B0: 31 5D 20 3D 20 27 20 27 3B 0D 0A 20 20 20 20 62 1] = ' ';.. b
0000C0: 61 6B 20 3D 20 69 3B 0D 0A 20 20 20 20 63 70 20 ak = i;.. cp
0000D0: 3D 20 73 6B 69 70 28 33 2C 20 6C 69 6E 29 3B 0D = skip(3, lin);.
0000E0: 0A 20 20 20 20 64 6F 20 7B 0D 0A 20 20 20 20 20 . do {..
0000F0: 20 69 20 3D 20 62 61 6B 3B 20 20 0D 0A 20 20 20 i = bak; ..
000100: 20 20 20 77 68 69 6C 65 28 69 73 67 72 61 70 68 while(isgraph
000110: 28 2A 63 70 29 20 26 26 20 2A 63 70 20 21 3D 20 (*cp) && *cp !=
000120: 41 4E 4F 54 48 45 52 29 20 69 6E 73 74 5B 69 2B ANOTHER) inst[i+
000130: 2B 5D 20 3D 20 2A 63 70 2B 2B 3B 0D 0A 20 20 20 +] = *cp++;..
000140: 20 20 20 69 6E 73 74 5B 69 5D 20 3D 20 30 3B 0D inst[i] = 0;.
000150: 0A 20 20 20 20 20 20 69 66 28 2A 63 70 20 3D 3D . if(*cp ==
000160: 20 41 4E 4F 54 48 45 52 29 20 2B 2B 63 70 3B 0D ANOTHER) ++cp;.
000170: 0A 20 20 20 20 20 20 70 72 69 6E 74 66 28 22 25 . printf("%
000180: 2D 31 35 73 20 22 2C 20 69 6E 73 74 29 3B 09 09 -15s ", inst);..
000190: 2F 2A 20 6D 6E 65 6D 6F 6E 69 63 20 2A 2F 0D 0A /* mnemonic */..
0001A0: 20 20 20 20 20 20 69 66 28 21 28 70 74 72 20 3D if(!(ptr =
0001B0: 20 66 69 6E 64 28 69 6E 73 74 29 29 29 0D 0A 20 find(inst)))..
0001C0: 20 20 20 20 20 20 20 65 72 72 6F 72 28 22 2D 20 error("-
0001D0: 43 61 6E 27 74 20 46 69 6E 64 20 49 6E 73 74 72 Can't Find Instr
0001E0: 75 63 74 69 6F 6E 20 69 6E 20 4D 49 54 22 29 3B uction in MIT");
0001F0: 0D 0A 20 20 20 20 20 20 70 72 69 6E 74 66 28 22 .. printf("
Size : 512 (Real : 512)
000000: 20 20 20 20 20 70 75 74 69 6E 74 28 70 74 72 2C putint(ptr,
000010: 20 6F 70 6E 64 5B 6A 5D 29 3B 0D 0A 20 20 20 20 opnd[j]);..
000020: 20 20 7D 0D 0A 20 20 20 20 65 6C 73 65 20 70 75 }.. else pu
000030: 74 69 6E 74 28 70 74 72 2C 20 30 29 3B 09 09 09 tint(ptr, 0);...
000040: 2F 2A 20 68 61 73 20 6E 6F 20 6F 70 65 72 61 6E /* has no operan
000050: 64 20 2A 2F 0D 0A 20 20 20 20 70 74 72 20 2B 3D d */.. ptr +=
000060: 20 49 4E 54 53 5A 3B 0D 0A 20 20 20 20 66 70 74 INTSZ;.. fpt
000070: 72 20 3D 20 70 74 72 3B 20 70 74 72 20 2B 3D 20 r = ptr; ptr +=
000080: 49 4E 54 53 5A 3B 20 2A 66 70 74 72 20 3D 20 30 INTSZ; *fptr = 0
000090: 3B 09 2F 2A 20 66 6D 74 20 66 69 65 6C 64 20 2A ;./* fmt field *
0000A0: 2F 0D 0A 20 20 20 20 62 69 74 73 20 3D 20 31 33 /.. bits = 13
0000B0: 3B 0D 0A 20 20 20 20 69 6C 65 6E 20 3D 20 2D 31 ;.. ilen = -1
0000C0: 3B 0D 0A 20 20 20 20 63 70 20 3D 20 73 6B 69 70 ;.. cp = skip
0000D0: 28 31 2C 20 73 74 72 29 3B 09 09 09 09 2F 2A 20 (1, str);..../*
0000E0: 63 6F 64 65 20 66 69 65 6C 64 20 2A 2F 0D 0A 20 code field */..
0000F0: 20 20 20 77 68 69 6C 65 28 69 73 67 72 61 70 68 while(isgraph
000100: 28 2A 63 70 29 29 20 7B 0D 0A 20 20 20 20 20 20 (*cp)) {..
000110: 69 66 28 69 73 6C 6F 77 65 72 28 2A 63 70 29 29 if(islower(*cp))
000120: 20 7B 09 09 09 2F 2A 20 78 31 2C 20 78 32 2C 20 {.../* x1, x2,
000130: 65 74 63 2E 20 2A 2F 0D 0A 20 20 20 20 20 20 20 etc. */..
000140: 20 65 74 20 3D 20 2A 63 70 2B 2B 3B 09 09 09 09 et = *cp++;....
000150: 2F 2A 20 65 78 70 72 20 74 79 70 65 20 2A 2F 0D /* expr type */.
000160: 0A 20 20 20 20 20 20 20 20 62 69 74 73 20 2D 3D . bits -=
000170: 20 33 3B 20 2A 66 70 74 72 20 3D 20 28 28 2A 66 3; *fptr = ((*f
000180: 70 74 72 20 3E 3E 20 33 29 20 26 20 38 31 39 31 ptr >> 3) & 8191
000190: 29 20 2B 20 38 31 39 32 3B 0D 0A 20 20 20 20 20 ) + 8192;..
0001A0: 20 20 20 73 77 69 74 63 68 28 2A 63 70 29 20 7B switch(*cp) {
0001B0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 64 65 66 .. def
0001C0: 61 75 6C 74 3A 20 65 72 72 6F 72 32 28 73 74 72 ault: error2(str
0001D0: 2C 20 22 2D 20 42 61 64 20 45 78 70 72 65 73 73 , "- Bad Express
0001E0: 69 6F 6E 20 53 70 65 63 69 66 69 65 72 22 29 3B ion Specifier");
0001F0: 0D 0A 20 20 20 20 20 20 20 20 20 20 63 61 73 65 .. case
Size : 512 (Real : 512)
000000: 20 28 25 32 75 20 6C 6F 6F 6B 73 29 20 22 2C 20 (%2u looks) ",
000010: 6C 6F 6F 6B 73 29 3B 0D 0A 20 20 20 20 20 20 70 looks);.. p
000020: 74 72 20 2B 3D 20 49 4E 54 53 5A 3B 0D 0A 20 20 tr += INTSZ;..
000030: 20 20 20 20 66 6D 74 20 3D 20 67 65 74 69 6E 74 fmt = getint
000040: 28 70 74 72 29 3B 09 09 2F 2A 20 70 74 72 20 2D (ptr);../* ptr -
000050: 3E 20 66 69 72 73 74 20 63 6F 64 65 20 62 79 74 > first code byt
000060: 65 20 2A 2F 0D 0A 20 20 20 20 20 20 70 74 72 20 e */.. ptr
000070: 2B 3D 20 49 4E 54 53 5A 3B 0D 0A 20 20 20 20 20 += INTSZ;..
000080: 20 6C 65 6E 20 3D 20 28 66 6D 74 20 26 20 37 29 len = (fmt & 7)
000090: 20 2B 20 31 3B 0D 0A 20 20 20 20 20 20 66 6D 74 + 1;.. fmt
0000A0: 20 3E 3E 3D 20 33 3B 0D 0A 20 20 20 20 20 20 68 >>= 3;.. h
0000B0: 6F 6C 64 69 6E 67 20 3D 20 4E 4F 3B 0D 0A 20 20 olding = NO;..
0000C0: 20 20 20 20 77 68 69 6C 65 28 6C 65 6E 2D 2D 20 while(len--
0000D0: 3E 20 30 29 20 7B 09 09 2F 2A 20 66 6F 72 20 65 > 0) {../* for e
0000E0: 61 63 68 20 62 79 74 65 20 6F 66 20 63 6F 64 65 ach byte of code
0000F0: 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 69 66 28 */.. if(
000100: 66 6D 74 20 26 20 31 29 20 7B 09 09 09 2F 2A 20 fmt & 1) {.../*
000110: 65 78 70 72 65 73 73 69 6F 6E 20 2A 2F 0D 0A 20 expression */..
000120: 20 20 20 20 20 20 20 20 20 69 66 28 68 6F 6C 64 if(hold
000130: 69 6E 67 29 20 7B 0D 0A 20 20 20 20 20 20 20 20 ing) {..
000140: 20 20 20 20 6F 70 63 6F 64 65 20 2B 3D 20 6F 70 opcode += op
000150: 61 64 6A 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 adj;..
000160: 20 20 6F 70 61 64 6A 20 3D 20 30 3B 0D 0A 20 20 opadj = 0;..
000170: 20 20 20 20 20 20 20 20 20 20 68 6F 6C 64 69 6E holdin
000180: 67 20 3D 20 4E 4F 3B 0D 0A 20 20 20 20 20 20 20 g = NO;..
000190: 20 20 20 20 20 70 72 69 6E 74 66 28 22 20 25 32 printf(" %2
0001A0: 78 22 2C 20 6F 70 63 6F 64 65 29 3B 0D 0A 20 20 x", opcode);..
0001B0: 20 20 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 }..
0001C0: 20 20 20 20 20 20 20 66 6D 74 20 3E 3E 3D 20 31 fmt >>= 1
0001D0: 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 73 77 69 ;.. swi
0001E0: 74 63 68 28 66 6D 74 20 26 20 33 29 20 7B 0D 0A tch(fmt & 3) {..
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 case
Size : 512 (Real : 512)
000000: 20 27 32 27 3A 20 2A 66 70 74 72 20 2B 3D 20 33 '2': *fptr += 3
000010: 32 37 36 38 3B 20 69 6C 65 6E 20 2B 3D 20 32 3B 2768; ilen += 2;
000020: 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 20 20 20 break;..
000030: 20 20 20 63 61 73 65 20 27 31 27 3A 20 2B 2B 69 case '1': ++i
000040: 6C 65 6E 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 len;..
000050: 7D 0D 0A 20 20 20 20 20 20 20 20 69 66 28 65 74 }.. if(et
000060: 20 3D 3D 20 27 70 27 29 20 2A 66 70 74 72 20 2B == 'p') *fptr +
000070: 3D 20 31 36 33 38 34 3B 09 09 2F 2A 20 70 63 20 = 16384;../* pc
000080: 72 65 6C 61 74 69 76 65 20 65 78 70 72 20 2A 2F relative expr */
000090: 0D 0A 20 20 20 20 20 20 20 20 2B 2B 63 70 3B 0D .. ++cp;.
0000A0: 0A 20 20 20 20 20 20 20 20 63 6F 6E 74 69 6E 75 . continu
0000B0: 65 3B 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 e;.. }..
0000C0: 20 20 20 20 20 69 66 28 69 73 78 64 69 67 69 74 if(isxdigit
0000D0: 28 2A 63 70 29 29 20 7B 0D 0A 20 20 20 20 20 20 (*cp)) {..
0000E0: 20 20 69 66 28 28 6A 20 3D 20 78 74 6F 69 28 63 if((j = xtoi(c
0000F0: 70 2C 20 26 62 79 74 65 29 29 20 3E 20 32 29 20 p, &byte)) > 2)
000100: 65 72 72 6F 72 32 28 73 74 72 2C 20 22 2D 20 42 error2(str, "- B
000110: 61 64 20 48 65 78 20 42 79 74 65 22 29 3B 0D 0A ad Hex Byte");..
000120: 20 20 20 20 20 20 20 20 63 70 20 2B 3D 20 6A 3B cp += j;
000130: 0D 0A 20 20 20 20 20 20 20 20 2A 70 74 72 2B 2B .. *ptr++
000140: 20 3D 20 62 79 74 65 3B 20 2A 76 70 74 72 20 2B = byte; *vptr +
000150: 3D 20 31 3B 0D 0A 20 20 20 20 20 20 20 20 2D 2D = 1;.. --
000160: 62 69 74 73 3B 20 2A 66 70 74 72 20 3D 20 28 28 bits; *fptr = ((
000170: 2A 66 70 74 72 20 3E 3E 20 31 29 20 26 20 33 32 *fptr >> 1) & 32
000180: 37 36 37 29 3B 0D 0A 20 20 20 20 20 20 20 20 2B 767);.. +
000190: 2B 69 6C 65 6E 3B 0D 0A 20 20 20 20 20 20 20 20 +ilen;..
0001A0: 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 20 20 20 20 continue;..
0001B0: 20 20 20 7D 0D 0A 20 20 20 20 20 20 2B 2B 63 70 }.. ++cp
0001C0: 3B 09 09 09 09 2F 2A 20 62 75 6D 70 20 70 61 73 ;..../* bump pas
0001D0: 74 20 66 69 65 6C 64 20 73 65 70 61 72 61 74 6F t field separato
0001E0: 72 20 2A 2F 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 r */.. }..
0001F0: 20 20 20 2A 66 70 74 72 20 3E 3E 3D 20 62 69 74 *fptr >>= bit
Size : 512 (Real : 512)
000000: 20 30 3A 20 70 72 69 6E 74 66 28 22 20 78 31 22 0: printf(" x1"
000010: 29 3B 20 62 72 65 61 6B 3B 09 09 2F 2A 20 31 2D ); break;../* 1-
000020: 62 79 74 65 20 2A 2F 0D 0A 20 20 20 20 20 20 20 byte */..
000030: 20 20 20 20 20 63 61 73 65 20 31 3A 20 70 72 69 case 1: pri
000040: 6E 74 66 28 22 20 70 31 22 29 3B 20 62 72 65 61 ntf(" p1"); brea
000050: 6B 3B 09 09 2F 2A 20 31 2D 62 79 74 65 20 70 63 k;../* 1-byte pc
000060: 20 72 65 6C 20 2A 2F 0D 0A 20 20 20 20 20 20 20 rel */..
000070: 20 20 20 20 20 63 61 73 65 20 32 3A 20 70 72 69 case 2: pri
000080: 6E 74 66 28 22 20 78 32 22 29 3B 20 2D 2D 6C 65 ntf(" x2"); --le
000090: 6E 3B 20 62 72 65 61 6B 3B 09 2F 2A 20 32 2D 62 n; break;./* 2-b
0000A0: 79 74 65 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 yte */..
0000B0: 20 20 20 20 63 61 73 65 20 33 3A 20 70 72 69 6E case 3: prin
0000C0: 74 66 28 22 20 70 32 22 29 3B 20 2D 2D 6C 65 6E tf(" p2"); --len
0000D0: 3B 20 62 72 65 61 6B 3B 09 2F 2A 20 32 2D 62 79 ; break;./* 2-by
0000E0: 74 65 20 70 63 20 72 65 6C 20 2A 2F 0D 0A 20 20 te pc rel */..
0000F0: 20 20 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 }..
000100: 20 20 20 20 20 20 20 66 6D 74 20 3E 3E 3D 20 31 fmt >>= 1
000110: 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 7D 0D 0A ;.. }..
000120: 20 20 20 20 20 20 20 20 65 6C 73 65 20 7B 09 09 else {..
000130: 09 09 09 2F 2A 20 63 6F 64 65 20 62 79 74 65 20 .../* code byte
000140: 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 69 66 */.. if
000150: 28 68 6F 6C 64 69 6E 67 29 20 70 72 69 6E 74 66 (holding) printf
000160: 28 22 20 25 32 78 22 2C 20 6F 70 63 6F 64 65 29 (" %2x", opcode)
000170: 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 6F 70 63 ;.. opc
000180: 6F 64 65 20 3D 20 2A 70 74 72 2B 2B 20 26 20 32 ode = *ptr++ & 2
000190: 35 35 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 68 55;.. h
0001A0: 6F 6C 64 69 6E 67 20 3D 20 59 45 53 3B 0D 0A 20 olding = YES;..
0001B0: 20 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 }..
0001C0: 20 20 20 20 66 6D 74 20 3E 3E 3D 20 31 3B 0D 0A fmt >>= 1;..
0001D0: 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 }..
0001E0: 20 69 66 28 68 6F 6C 64 69 6E 67 29 20 7B 0D 0A if(holding) {..
0001F0: 20 20 20 20 20 20 20 20 6F 70 63 6F 64 65 20 2B opcode +
Size : 512 (Real : 512)
000000: 73 3B 09 09 09 2F 2A 20 72 69 67 68 74 20 61 64 s;.../* right ad
000010: 6A 75 73 74 20 66 6F 72 6D 61 74 20 62 79 74 65 just format byte
000020: 20 2A 2F 0D 0A 20 20 20 20 2A 66 70 74 72 20 7C */.. *fptr |
000030: 3D 20 69 6C 65 6E 20 26 20 37 3B 09 09 09 2F 2A = ilen & 7;.../*
000040: 20 61 6E 64 20 69 6E 73 65 72 74 20 69 6E 73 74 and insert inst
000050: 72 20 6C 65 6E 67 74 68 20 2A 2F 0D 0A 20 20 20 r length */..
000060: 20 7D 0D 0A 20 20 2A 70 74 72 2B 2B 20 3D 20 30 }.. *ptr++ = 0
000070: 3B 09 09 09 09 2F 2A 20 74 65 72 6D 69 6E 61 74 ;..../* terminat
000080: 65 20 70 72 69 6F 72 20 69 6E 73 74 72 20 2A 2F e prior instr */
000090: 0D 0A 20 20 70 72 69 6E 74 66 28 22 20 20 4F 70 .. printf(" Op
0000A0: 65 72 61 74 69 6F 6E 20 43 6F 64 65 73 20 25 35 eration Codes %5
0000B0: 75 5C 6E 22 2C 20 74 6F 70 29 3B 0D 0A 20 20 70 u\n", top);.. p
0000C0: 72 69 6E 74 66 28 22 42 75 66 66 65 72 20 53 70 rintf("Buffer Sp
0000D0: 61 63 65 20 55 73 65 64 20 25 35 75 5C 6E 22 2C ace Used %5u\n",
0000E0: 20 70 74 72 20 2D 20 6D 69 74 62 75 66 29 3B 0D ptr - mitbuf);.
0000F0: 0A 20 20 66 6F 72 28 69 20 3D 20 30 3B 20 69 20 . for(i = 0; i
000100: 3C 20 4D 49 43 4F 55 4E 54 3B 20 2B 2B 69 29 09 < MICOUNT; ++i).
000110: 09 2F 2A 20 69 6E 69 74 20 68 61 73 68 20 69 6E ./* init hash in
000120: 64 69 63 65 73 20 2A 2F 0D 0A 20 20 20 20 6D 69 dices */.. mi
000130: 74 6E 64 78 5B 69 5D 20 3D 20 6D 69 74 6E 78 74 tndx[i] = mitnxt
000140: 5B 69 5D 20 3D 20 45 4F 46 3B 0D 0A 20 20 66 6F [i] = EOF;.. fo
000150: 72 28 69 20 3D 20 30 3B 20 69 20 3C 20 74 6F 70 r(i = 0; i < top
000160: 3B 20 2B 2B 69 29 20 7B 09 09 2F 2A 20 63 72 65 ; ++i) {../* cre
000170: 61 74 65 20 68 61 73 68 20 69 6E 64 69 63 65 73 ate hash indices
000180: 20 2D 20 70 61 73 73 20 31 20 2A 2F 0D 0A 20 20 - pass 1 */..
000190: 20 20 70 6F 6C 6C 28 59 45 53 29 3B 0D 0A 20 20 poll(YES);..
0001A0: 20 20 68 20 3D 20 68 61 73 68 28 6D 69 74 70 74 h = hash(mitpt
0001B0: 72 5B 69 5D 2C 20 4D 49 43 4F 55 4E 54 29 3B 0D r[i], MICOUNT);.
0001C0: 0A 20 20 20 20 69 66 28 6D 69 74 6E 64 78 5B 68 . if(mitndx[h
0001D0: 5D 20 3D 3D 20 45 4F 46 29 20 7B 0D 0A 20 20 20 ] == EOF) {..
0001E0: 20 20 20 6D 69 74 6E 64 78 5B 68 5D 20 3D 20 69 mitndx[h] = i
0001F0: 3B 0D 0A 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 ;.. }..
Size : 512 (Real : 512)
000000: 3D 20 6F 70 61 64 6A 3B 0D 0A 20 20 20 20 20 20 = opadj;..
000010: 20 20 70 72 69 6E 74 66 28 22 20 25 32 78 22 2C printf(" %2x",
000020: 20 6F 70 63 6F 64 65 29 3B 0D 0A 20 20 20 20 20 opcode);..
000030: 20 20 20 7D 0D 0A 20 20 20 20 20 20 70 75 74 73 }.. puts
000040: 28 22 22 29 3B 0D 0A 20 20 20 20 20 20 7D 20 77 ("");.. } w
000050: 68 69 6C 65 28 2A 63 70 20 3E 20 27 20 27 29 3B hile(*cp > ' ');
000060: 0D 0A 20 20 20 20 7D 0D 0A 20 20 63 6C 6F 73 65 .. }.. close
000070: 28 66 64 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A (fd);.. }..../*
000080: 0D 0A 2A 2A 20 61 62 6F 72 74 20 77 69 74 68 20 ..** abort with
000090: 61 20 75 73 61 67 65 20 6D 65 73 73 61 67 65 0D a usage message.
0000A0: 0A 2A 2F 0D 0A 75 73 61 67 65 28 29 20 7B 0D 0A .*/..usage() {..
0000B0: 20 20 65 72 72 6F 72 28 22 55 73 61 67 65 3A 20 error("Usage:
0000C0: 43 4D 49 54 20 5B 2D 43 5D 20 5B 2D 4C 5D 20 5B CMIT [-C] [-L] [
0000D0: 74 61 62 6C 65 5D 20 5B 6D 61 63 5D 22 29 3B 0D table] [mac]");.
0000E0: 0A 20 20 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A . }............
0000F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000100: 20 20 20 20 20 20 20 66 6D 74 20 3E 3E 3D 20 31 fmt >>= 1
000110: 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 7D 0D 0A ;.. }..
000120: 20 20 20 20 20 20 20 20 65 6C 73 65 20 7B 09 09 else {..
000130: 09 09 09 2F 2A 20 63 6F 64 65 20 62 79 74 65 20 .../* code byte
000140: 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 20 69 66 */.. if
000150: 28 68 6F 6C 64 69 6E 67 29 20 70 72 69 6E 74 66 (holding) printf
000160: 28 22 20 25 32 78 22 2C 20 6F 70 63 6F 64 65 29 (" %2x", opcode)
000170: 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 6F 70 63 ;.. opc
000180: 6F 64 65 20 3D 20 2A 70 74 72 2B 2B 20 26 20 32 ode = *ptr++ & 2
000190: 35 35 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 68 55;.. h
0001A0: 6F 6C 64 69 6E 67 20 3D 20 59 45 53 3B 0D 0A 20 olding = YES;..
0001B0: 20 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 }..
0001C0: 20 20 20 20 66 6D 74 20 3E 3E 3D 20 31 3B 0D 0A fmt >>= 1;..
0001D0: 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 }..
0001E0: 20 69 66 28 68 6F 6C 64 69 6E 67 29 20 7B 0D 0A if(holding) {..
0001F0: 20 20 20 20 20 20 20 20 6F 70 63 6F 64 65 20 2B opcode +
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 69 66 20 66 6E 20 68 61 73 /*..** if fn has
000010: 20 6E 6F 20 65 78 74 65 6E 73 69 6F 6E 2C 20 65 no extension, e
000020: 78 74 65 6E 64 20 69 74 20 77 69 74 68 20 65 78 xtend it with ex
000030: 74 31 0D 0A 2A 2A 20 69 66 20 66 6E 20 68 61 73 t1..** if fn has
000040: 20 61 6E 20 65 78 74 65 6E 73 69 6F 6E 2C 20 72 an extension, r
000050: 65 71 75 69 72 65 20 69 74 20 74 6F 20 6D 61 74 equire it to mat
000060: 63 68 20 65 78 74 31 20 6F 72 20 65 78 74 32 0D ch ext1 or ext2.
000070: 0A 2A 2A 20 72 65 74 75 72 6E 20 74 72 75 65 20 .** return true
000080: 69 66 20 66 6E 27 73 20 65 78 74 65 6E 73 69 6F if fn's extensio
000090: 6E 20 6D 61 74 63 68 65 73 20 65 78 74 32 2C 20 n matches ext2,
0000A0: 65 6C 73 65 20 66 61 6C 73 65 0D 0A 2A 2F 0D 0A else false..*/..
0000B0: 23 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E #include <stdio.
0000C0: 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6D 61 h>..#include "ma
0000D0: 63 2E 68 22 0D 0A 23 64 65 66 69 6E 65 20 4E 4F c.h"..#define NO
0000E0: 43 43 41 52 47 43 0D 0A 65 78 74 65 6E 64 28 66 CCARGC..extend(f
0000F0: 6E 2C 20 65 78 74 31 2C 20 65 78 74 32 29 20 63 n, ext1, ext2) c
000100: 68 61 72 20 2A 66 6E 2C 20 2A 65 78 74 31 2C 20 har *fn, *ext1,
000110: 2A 65 78 74 32 3B 20 7B 0D 0A 20 20 63 68 61 72 *ext2; {.. char
000120: 20 2A 63 70 3B 0D 0A 20 20 69 66 28 63 70 20 3D *cp;.. if(cp =
000130: 20 73 74 72 63 68 72 28 66 6E 2C 20 27 2E 27 29 strchr(fn, '.')
000140: 29 20 7B 0D 0A 20 20 20 20 69 66 28 73 74 72 63 ) {.. if(strc
000150: 6D 70 28 63 70 2C 20 65 78 74 32 29 20 3D 3D 20 mp(cp, ext2) ==
000160: 30 29 20 72 65 74 75 72 6E 20 28 59 45 53 29 3B 0) return (YES);
000170: 0D 0A 20 20 20 20 69 66 28 73 74 72 63 6D 70 28 .. if(strcmp(
000180: 63 70 2C 20 65 78 74 31 29 20 3D 3D 20 30 29 20 cp, ext1) == 0)
000190: 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 return (NO);..
0001A0: 20 20 70 75 74 73 32 28 66 6E 2C 20 22 20 2D 20 puts2(fn, " -
0001B0: 69 6E 76 61 6C 69 64 20 65 78 74 65 6E 73 69 6F invalid extensio
0001C0: 6E 22 29 3B 0D 0A 20 20 20 20 61 62 6F 72 74 28 n");.. abort(
0001D0: 37 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 66 7);.. }.. if
0001E0: 28 73 74 72 6C 65 6E 28 66 6E 29 20 3E 20 4D 41 (strlen(fn) > MA
0001F0: 58 46 4E 2D 34 29 20 65 72 72 6F 72 32 28 66 6E XFN-4) error2(fn
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 44 52 45 4C 2E 43 20 2D 2D /*..** DREL.C --
000010: 20 64 75 6D 70 20 52 45 4C 20 6F 72 20 4C 49 42 dump REL or LIB
000020: 20 66 69 6C 65 0D 0A 2A 2A 0D 0A 2A 2A 20 20 20 file..**..**
000030: 20 20 20 20 20 20 20 20 43 6F 70 79 72 69 67 68 Copyrigh
000040: 74 20 31 39 38 35 20 4A 2E 20 45 2E 20 48 65 6E t 1985 J. E. Hen
000050: 64 72 69 78 0D 0A 2A 2A 0D 0A 2A 2A 20 20 4E 6F drix..**..** No
000060: 20 63 6F 6D 6D 61 6E 64 20 6C 69 6E 65 20 73 77 command line sw
000070: 69 74 63 68 65 73 20 61 72 65 20 61 63 63 65 70 itches are accep
000080: 74 65 64 2E 20 20 54 68 65 20 75 73 65 72 20 69 ted. The user i
000090: 73 20 70 72 6F 6D 70 74 65 64 0D 0A 2A 2A 20 20 s prompted..**
0000A0: 66 6F 72 20 65 61 63 68 20 66 69 6C 65 20 74 6F for each file to
0000B0: 20 62 65 20 64 75 6D 70 65 64 2E 20 20 4F 75 74 be dumped. Out
0000C0: 70 75 74 20 67 6F 65 73 20 74 6F 20 74 68 65 20 put goes to the
0000D0: 73 74 61 6E 64 61 72 64 0D 0A 2A 2A 20 20 6F 75 standard..** ou
0000E0: 74 70 75 74 20 66 69 6C 65 20 61 6E 64 20 69 73 tput file and is
0000F0: 2C 20 74 68 65 72 65 66 6F 72 65 2C 20 72 65 64 , therefore, red
000100: 69 72 65 63 74 61 62 6C 65 20 74 6F 20 61 6E 79 irectable to any
000110: 20 6F 75 74 70 75 74 0D 0A 2A 2A 20 20 64 65 76 output..** dev
000120: 69 63 65 20 6F 72 20 74 6F 20 61 20 64 69 73 6B ice or to a disk
000130: 20 66 69 6C 65 2E 20 20 49 66 20 61 6E 20 69 6E file. If an in
000140: 70 75 74 20 66 69 6C 65 20 63 61 6E 6E 6F 74 20 put file cannot
000150: 62 65 20 66 6F 75 6E 64 0D 0A 2A 2A 20 20 74 68 be found..** th
000160: 65 20 75 73 65 72 20 69 73 20 70 72 6F 6D 70 74 e user is prompt
000170: 65 64 20 66 6F 72 20 61 6E 6F 74 68 65 72 20 69 ed for another i
000180: 6E 70 75 74 20 66 69 6C 65 2E 20 20 46 69 6C 65 nput file. File
000190: 20 6E 61 6D 65 73 20 6D 75 73 74 0D 0A 2A 2A 20 names must..**
0001A0: 20 62 65 20 67 69 76 65 6E 2C 20 63 6F 6D 70 6C be given, compl
0001B0: 65 74 65 20 77 69 74 68 20 65 78 74 65 6E 73 69 ete with extensi
0001C0: 6F 6E 73 2E 20 20 44 72 69 76 65 20 73 70 65 63 ons. Drive spec
0001D0: 69 66 69 65 72 73 20 6D 61 79 20 62 65 0D 0A 2A ifiers may be..*
0001E0: 2A 20 20 67 69 76 65 6E 2E 0D 0A 2A 2F 0D 0A 23 * given...*/..#
0001F0: 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E 68 include <stdio.h
Size : 512 (Real : 512)
000000: 2C 20 22 20 2D 20 54 6F 6F 20 4C 6F 6E 67 22 29 , " - Too Long")
000010: 3B 0D 0A 20 20 73 74 72 63 61 74 28 66 6E 2C 20 ;.. strcat(fn,
000020: 65 78 74 31 29 3B 0D 0A 20 20 72 65 74 75 72 6E ext1);.. return
000030: 20 28 4E 4F 29 3B 0D 0A 20 20 7D 0D 0A 1A 1A 1A (NO);.. }.....
000040: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 69 66 20 66 6E 27 73 20 65 78 74 65 6E 73 69 6F if fn's extensio
000090: 6E 20 6D 61 74 63 68 65 73 20 65 78 74 32 2C 20 n matches ext2,
0000A0: 65 6C 73 65 20 66 61 6C 73 65 0D 0A 2A 2F 0D 0A else false..*/..
0000B0: 23 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E #include <stdio.
0000C0: 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6D 61 h>..#include "ma
0000D0: 63 2E 68 22 0D 0A 23 64 65 66 69 6E 65 20 4E 4F c.h"..#define NO
0000E0: 43 43 41 52 47 43 0D 0A 65 78 74 65 6E 64 28 66 CCARGC..extend(f
0000F0: 6E 2C 20 65 78 74 31 2C 20 65 78 74 32 29 20 63 n, ext1, ext2) c
000100: 68 61 72 20 2A 66 6E 2C 20 2A 65 78 74 31 2C 20 har *fn, *ext1,
000110: 2A 65 78 74 32 3B 20 7B 0D 0A 20 20 63 68 61 72 *ext2; {.. char
000120: 20 2A 63 70 3B 0D 0A 20 20 69 66 28 63 70 20 3D *cp;.. if(cp =
000130: 20 73 74 72 63 68 72 28 66 6E 2C 20 27 2E 27 29 strchr(fn, '.')
000140: 29 20 7B 0D 0A 20 20 20 20 69 66 28 73 74 72 63 ) {.. if(strc
000150: 6D 70 28 63 70 2C 20 65 78 74 32 29 20 3D 3D 20 mp(cp, ext2) ==
000160: 30 29 20 72 65 74 75 72 6E 20 28 59 45 53 29 3B 0) return (YES);
000170: 0D 0A 20 20 20 20 69 66 28 73 74 72 63 6D 70 28 .. if(strcmp(
000180: 63 70 2C 20 65 78 74 31 29 20 3D 3D 20 30 29 20 cp, ext1) == 0)
000190: 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 return (NO);..
0001A0: 20 20 70 75 74 73 32 28 66 6E 2C 20 22 20 2D 20 puts2(fn, " -
0001B0: 69 6E 76 61 6C 69 64 20 65 78 74 65 6E 73 69 6F invalid extensio
0001C0: 6E 22 29 3B 0D 0A 20 20 20 20 61 62 6F 72 74 28 n");.. abort(
0001D0: 37 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 66 7);.. }.. if
0001E0: 28 73 74 72 6C 65 6E 28 66 6E 29 20 3E 20 4D 41 (strlen(fn) > MA
0001F0: 58 46 4E 2D 34 29 20 65 72 72 6F 72 32 28 66 6E XFN-4) error2(fn
Size : 512 (Real : 512)
000000: 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6E 6F 74 >..#include "not
000010: 69 63 65 2E 68 22 0D 0A 23 69 6E 63 6C 75 64 65 ice.h"..#include
000020: 20 22 6D 61 63 2E 68 22 0D 0A 23 69 6E 63 6C 75 "mac.h"..#inclu
000030: 64 65 20 22 72 65 6C 2E 68 22 0D 0A 0D 0A 6D 61 de "rel.h"....ma
000040: 69 6E 28 29 20 7B 0D 0A 20 20 63 68 61 72 20 66 in() {.. char f
000050: 6E 5B 4D 41 58 46 4E 5D 3B 0D 0A 20 20 66 70 75 n[MAXFN];.. fpu
000060: 74 73 28 22 53 6D 61 6C 6C 2D 4D 61 63 20 52 45 ts("Small-Mac RE
000070: 4C 2F 4C 49 42 20 44 75 6D 70 20 55 74 69 6C 69 L/LIB Dump Utili
000080: 74 79 2C 20 22 2C 20 73 74 64 65 72 72 29 3B 20 ty, ", stderr);
000090: 66 70 75 74 73 28 56 45 52 53 49 4F 4E 2C 20 73 fputs(VERSION, s
0000A0: 74 64 65 72 72 29 3B 0D 0A 20 20 66 70 75 74 73 tderr);.. fputs
0000B0: 28 43 52 49 47 48 54 31 2C 20 73 74 64 65 72 72 (CRIGHT1, stderr
0000C0: 29 3B 0D 0A 20 20 77 68 69 6C 65 28 59 45 53 29 );.. while(YES)
0000D0: 20 7B 0D 0A 20 20 20 20 69 66 28 21 72 65 71 73 {.. if(!reqs
0000E0: 74 72 28 22 4C 69 62 72 61 72 79 2F 4D 6F 64 75 tr("Library/Modu
0000F0: 6C 65 20 4E 61 6D 65 3A 20 22 2C 20 66 6E 2C 20 le Name: ", fn,
000100: 4D 41 58 46 4E 29 29 20 65 78 69 74 28 29 3B 0D MAXFN)) exit();.
000110: 0A 20 20 20 20 69 66 28 21 28 69 6E 72 65 6C 20 . if(!(inrel
000120: 3D 20 66 6F 70 65 6E 28 66 6E 2C 20 22 72 22 29 = fopen(fn, "r")
000130: 29 29 20 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 20 )) continue;..
000140: 20 20 64 6F 20 7B 0D 0A 20 20 20 20 20 20 70 6F do {.. po
000150: 6C 6C 28 59 45 53 29 3B 09 09 09 2F 2A 20 70 6F ll(YES);.../* po
000160: 6C 6C 20 66 6F 72 20 75 73 65 72 20 69 6E 74 65 ll for user inte
000170: 72 72 75 70 74 20 2A 2F 0D 0A 20 20 20 20 20 20 rrupt */..
000180: 69 66 28 67 65 74 72 65 6C 28 29 20 3D 3D 20 45 if(getrel() == E
000190: 52 52 29 20 61 62 6F 72 74 28 37 29 3B 09 2F 2A RR) abort(7);./*
0001A0: 20 67 65 74 20 6E 65 78 74 20 52 45 4C 20 69 74 get next REL it
0001B0: 65 6D 20 2A 2F 0D 0A 20 20 20 20 20 20 73 65 65 em */.. see
0001C0: 72 65 6C 28 29 3B 09 09 09 09 2F 2A 20 64 69 73 rel();..../* dis
0001D0: 70 6C 61 79 20 69 74 20 2A 2F 0D 0A 20 20 20 20 play it */..
0001E0: 20 20 7D 20 77 68 69 6C 65 28 69 74 65 6D 20 21 } while(item !
0001F0: 3D 20 45 46 49 4C 45 29 3B 0D 0A 20 20 20 20 66 = EFILE);.. f
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 66 69 6C 65 20 72 65 6C 61 /*..** file rela
000010: 74 65 64 20 66 75 6E 63 74 69 6F 6E 73 0D 0A 2A ted functions..*
000020: 2F 0D 0A 23 64 65 66 69 6E 65 20 4E 4F 43 43 41 /..#define NOCCA
000030: 52 47 43 0D 0A 6F 70 65 6E 28 6E 61 6D 65 2C 20 RGC..open(name,
000040: 6D 6F 64 65 29 20 63 68 61 72 20 2A 6E 61 6D 65 mode) char *name
000050: 2C 20 2A 6D 6F 64 65 3B 20 7B 0D 0A 20 20 69 6E , *mode; {.. in
000060: 74 20 66 64 3B 0D 0A 20 20 69 66 28 66 64 20 3D t fd;.. if(fd =
000070: 20 66 6F 70 65 6E 28 6E 61 6D 65 2C 20 6D 6F 64 fopen(name, mod
000080: 65 29 29 20 72 65 74 75 72 6E 28 66 64 29 3B 0D e)) return(fd);.
000090: 0A 20 20 63 61 6E 74 28 6E 61 6D 65 29 3B 0D 0A . cant(name);..
0000A0: 20 20 7D 0D 0A 63 6C 6F 73 65 28 66 64 29 20 69 }..close(fd) i
0000B0: 6E 74 20 66 64 3B 20 7B 0D 0A 20 20 69 66 28 66 nt fd; {.. if(f
0000C0: 63 6C 6F 73 65 28 66 64 29 29 20 65 72 72 6F 72 close(fd)) error
0000D0: 28 22 43 6C 6F 73 65 20 45 72 72 6F 72 22 29 3B ("Close Error");
0000E0: 0D 0A 20 20 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A .. }...........
0000F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 63 6C 6F 73 65 28 69 6E 72 65 6C 29 3B 0D 0A 20 close(inrel);..
000010: 20 20 20 7D 0D 0A 20 20 7D 0D 0A 1A 1A 1A 1A 1A }.. }.......
000020: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000030: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000040: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 74 79 2C 20 22 2C 20 73 74 64 65 72 72 29 3B 20 ty, ", stderr);
000090: 66 70 75 74 73 28 56 45 52 53 49 4F 4E 2C 20 73 fputs(VERSION, s
0000A0: 74 64 65 72 72 29 3B 0D 0A 20 20 66 70 75 74 73 tderr);.. fputs
0000B0: 28 43 52 49 47 48 54 31 2C 20 73 74 64 65 72 72 (CRIGHT1, stderr
0000C0: 29 3B 0D 0A 20 20 77 68 69 6C 65 28 59 45 53 29 );.. while(YES)
0000D0: 20 7B 0D 0A 20 20 20 20 69 66 28 21 72 65 71 73 {.. if(!reqs
0000E0: 74 72 28 22 4C 69 62 72 61 72 79 2F 4D 6F 64 75 tr("Library/Modu
0000F0: 6C 65 20 4E 61 6D 65 3A 20 22 2C 20 66 6E 2C 20 le Name: ", fn,
000100: 4D 41 58 46 4E 29 29 20 65 78 69 74 28 29 3B 0D MAXFN)) exit();.
000110: 0A 20 20 20 20 69 66 28 21 28 69 6E 72 65 6C 20 . if(!(inrel
000120: 3D 20 66 6F 70 65 6E 28 66 6E 2C 20 22 72 22 29 = fopen(fn, "r")
000130: 29 29 20 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 20 )) continue;..
000140: 20 20 64 6F 20 7B 0D 0A 20 20 20 20 20 20 70 6F do {.. po
000150: 6C 6C 28 59 45 53 29 3B 09 09 09 2F 2A 20 70 6F ll(YES);.../* po
000160: 6C 6C 20 66 6F 72 20 75 73 65 72 20 69 6E 74 65 ll for user inte
000170: 72 72 75 70 74 20 2A 2F 0D 0A 20 20 20 20 20 20 rrupt */..
000180: 69 66 28 67 65 74 72 65 6C 28 29 20 3D 3D 20 45 if(getrel() == E
000190: 52 52 29 20 61 62 6F 72 74 28 37 29 3B 09 2F 2A RR) abort(7);./*
0001A0: 20 67 65 74 20 6E 65 78 74 20 52 45 4C 20 69 74 get next REL it
0001B0: 65 6D 20 2A 2F 0D 0A 20 20 20 20 20 20 73 65 65 em */.. see
0001C0: 72 65 6C 28 29 3B 09 09 09 09 2F 2A 20 64 69 73 rel();..../* dis
0001D0: 70 6C 61 79 20 69 74 20 2A 2F 0D 0A 20 20 20 20 play it */..
0001E0: 20 20 7D 20 77 68 69 6C 65 28 69 74 65 6D 20 21 } while(item !
0001F0: 3D 20 45 46 49 4C 45 29 3B 0D 0A 20 20 20 20 66 = EFILE);.. f
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 20 20 69 6E 72 65 6D 20 3D 20 30 3B 09 09 09 2F inrem = 0;.../
000010: 2A 20 66 6F 72 63 65 20 62 79 74 65 20 62 6F 75 * force byte bou
000020: 6E 64 61 72 79 20 2A 2F 0D 0A 20 20 20 20 20 20 ndary */..
000030: 62 72 65 61 6B 3B 0D 0A 20 20 20 20 63 61 73 65 break;.. case
000040: 20 31 35 3A 09 09 09 09 2F 2A 20 65 6E 64 20 6F 15:..../* end o
000050: 66 20 66 69 6C 65 20 2A 2F 0D 0A 20 20 20 20 20 f file */..
000060: 20 69 6E 72 65 6D 20 3D 20 30 3B 09 09 09 2F 2A inrem = 0;.../*
000070: 20 66 6F 72 63 65 20 62 79 74 65 20 62 6F 75 6E force byte boun
000080: 64 61 72 79 20 2A 2F 0D 0A 20 20 20 20 7D 0D 0A dary */.. }..
000090: 20 20 72 65 74 75 72 6E 20 28 69 74 65 6D 29 3B return (item);
0000A0: 0D 0A 20 20 7D 0D 0A 0D 0A 67 65 74 74 79 70 28 .. }....gettyp(
0000B0: 29 20 7B 0D 0A 20 20 69 66 28 21 67 65 74 62 69 ) {.. if(!getbi
0000C0: 74 73 28 32 29 29 20 72 65 74 75 72 6E 20 28 45 ts(2)) return (E
0000D0: 52 52 29 3B 09 09 2F 2A 20 67 65 74 20 32 2D 62 RR);../* get 2-b
0000E0: 69 74 20 66 69 65 6C 64 20 74 79 70 65 20 2A 2F it field type */
0000F0: 0D 0A 20 20 72 65 74 75 72 6E 20 28 74 79 70 65 .. return (type
000100: 20 3D 20 66 69 65 6C 64 29 3B 0D 0A 20 20 7D 0D = field);.. }.
000110: 0A 0D 0A 67 65 74 66 6C 64 28 29 20 7B 09 09 09 ...getfld() {...
000120: 09 2F 2A 20 67 65 74 20 74 79 70 65 20 61 6E 64 ./* get type and
000130: 20 76 61 6C 75 65 20 6F 66 20 66 69 65 6C 64 20 value of field
000140: 2A 2F 0D 0A 20 20 69 6E 74 20 6C 6F 77 3B 0D 0A */.. int low;..
000150: 20 20 69 66 28 21 67 65 74 62 69 74 73 28 38 29 if(!getbits(8)
000160: 29 20 72 65 74 75 72 6E 20 28 45 52 52 29 3B 09 ) return (ERR);.
000170: 09 2F 2A 20 67 65 74 20 66 69 72 73 74 20 38 20 ./* get first 8
000180: 62 69 74 73 20 2A 2F 0D 0A 20 20 6C 6F 77 20 3D bits */.. low =
000190: 20 66 69 65 6C 64 3B 09 09 09 09 2F 2A 20 73 61 field;..../* sa
0001A0: 76 65 20 61 73 20 6C 6F 77 20 6F 72 64 65 72 20 ve as low order
0001B0: 62 79 74 65 20 2A 2F 0D 0A 20 20 69 66 28 21 67 byte */.. if(!g
0001C0: 65 74 62 69 74 73 28 38 29 29 20 72 65 74 75 72 etbits(8)) retur
0001D0: 6E 20 28 45 52 52 29 3B 09 09 2F 2A 20 67 65 74 n (ERR);../* get
0001E0: 20 6E 65 78 74 20 38 20 62 69 74 73 20 2A 2F 0D next 8 bits */.
0001F0: 0A 20 20 66 69 65 6C 64 20 3D 20 28 66 69 65 6C . field = (fiel
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 67 65 74 72 65 6C 20 2D 2D /*..** getrel --
000010: 20 72 65 61 64 20 61 20 72 65 6C 6F 63 61 74 61 read a relocata
000020: 62 6C 65 2D 6F 62 6A 65 63 74 20 66 69 6C 65 0D ble-object file.
000030: 0A 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 73 .*/..#include <s
000040: 74 64 69 6F 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 tdio.h>..#includ
000050: 65 20 22 72 65 6C 2E 68 22 0D 0A 23 69 6E 63 6C e "rel.h"..#incl
000060: 75 64 65 20 22 6D 61 63 2E 68 22 0D 0A 0D 0A 2F ude "mac.h"..../
000070: 2A 0D 0A 2A 2A 20 67 65 74 20 6E 65 78 74 20 52 *..** get next R
000080: 45 4C 20 69 74 65 6D 0D 0A 2A 2A 20 72 65 74 75 EL item..** retu
000090: 72 6E 20 69 74 65 6D 20 63 6F 64 65 20 6F 6E 20 rn item code on
0000A0: 73 75 63 63 65 73 73 2C 20 45 52 52 20 6F 6E 20 success, ERR on
0000B0: 65 72 72 6F 72 0D 0A 2A 2A 20 6F 6E 20 73 75 63 error..** on suc
0000C0: 63 65 73 73 66 75 6C 20 72 65 74 75 72 6E 3A 0D cessful return:.
0000D0: 0A 2A 2A 20 20 20 20 69 74 65 6D 20 3D 20 69 74 .** item = it
0000E0: 65 6D 20 63 6F 64 65 0D 0A 2A 2A 20 20 20 20 74 em code..** t
0000F0: 79 70 65 20 3D 20 74 79 70 65 20 6F 66 20 66 69 ype = type of fi
000100: 65 6C 64 0D 0A 2A 2A 20 20 20 66 69 65 6C 64 20 eld..** field
000110: 3D 20 76 61 6C 75 65 20 6F 66 20 66 69 65 6C 64 = value of field
000120: 0D 0A 2A 2A 20 20 73 79 6D 62 6F 6C 20 3D 20 73 ..** symbol = s
000130: 79 6D 62 6F 6C 20 6E 61 6D 65 0D 0A 2A 2F 20 0D ymbol name..*/ .
000140: 0A 67 65 74 72 65 6C 28 29 20 7B 0D 0A 20 20 69 .getrel() {.. i
000150: 66 28 21 67 65 74 62 69 74 73 28 31 29 29 20 72 f(!getbits(1)) r
000160: 65 74 75 72 6E 20 28 45 52 52 29 3B 09 09 2F 2A eturn (ERR);../*
000170: 20 67 65 74 20 31 20 62 69 74 20 2A 2F 0D 0A 20 get 1 bit */..
000180: 20 69 66 28 66 69 65 6C 64 20 3D 3D 20 30 29 20 if(field == 0)
000190: 7B 09 09 09 2F 2A 20 61 62 73 6F 6C 75 74 65 20 {.../* absolute
0001A0: 69 74 65 6D 20 2A 2F 0D 0A 20 20 20 20 69 66 28 item */.. if(
0001B0: 21 67 65 74 62 69 74 73 28 38 29 29 20 72 65 74 !getbits(8)) ret
0001C0: 75 72 6E 20 28 45 52 52 29 3B 09 2F 2A 20 67 65 urn (ERR);./* ge
0001D0: 74 20 6E 65 78 74 20 38 20 62 69 74 73 20 2A 2F t next 8 bits */
0001E0: 0D 0A 20 20 20 20 72 65 74 75 72 6E 20 28 74 79 .. return (ty
0001F0: 70 65 20 3D 20 69 74 65 6D 20 3D 20 41 42 53 29 pe = item = ABS)
Size : 512 (Real : 512)
000000: 64 20 3C 3C 20 38 29 20 7C 20 6C 6F 77 3B 09 09 d << 8) | low;..
000010: 2F 2A 20 63 6F 6D 62 69 6E 65 20 68 69 67 68 20 /* combine high
000020: 26 20 6C 6F 77 20 62 79 74 65 73 20 2A 2F 0D 0A & low bytes */..
000030: 20 20 72 65 74 75 72 6E 20 28 69 74 65 6D 29 3B return (item);
000040: 0D 0A 20 20 7D 0D 0A 0D 0A 67 65 74 73 79 6D 28 .. }....getsym(
000050: 29 20 7B 09 09 09 09 2F 2A 20 67 65 74 20 73 79 ) {..../* get sy
000060: 6D 62 6F 6C 20 2A 2F 0D 0A 20 20 69 6E 74 20 69 mbol */.. int i
000070: 2C 20 73 61 76 65 3B 20 63 68 61 72 20 2A 63 70 , save; char *cp
000080: 3B 0D 0A 20 20 63 70 20 3D 20 73 79 6D 62 6F 6C ;.. cp = symbol
000090: 3B 0D 0A 20 20 73 61 76 65 20 3D 20 66 69 65 6C ;.. save = fiel
0000A0: 64 3B 09 09 09 09 2F 2A 20 73 61 76 65 20 66 69 d;..../* save fi
0000B0: 65 6C 64 20 2A 2F 0D 0A 20 20 69 66 28 21 67 65 eld */.. if(!ge
0000C0: 74 62 69 74 73 28 33 29 29 20 72 65 74 75 72 6E tbits(3)) return
0000D0: 20 28 45 52 52 29 3B 09 09 2F 2A 20 67 65 74 20 (ERR);../* get
0000E0: 33 2D 62 69 74 20 73 79 6D 62 6F 6C 20 6C 65 6E 3-bit symbol len
0000F0: 67 74 68 20 2A 2F 0D 0A 20 20 69 20 3D 20 66 69 gth */.. i = fi
000100: 65 6C 64 3B 09 09 09 09 2F 2A 20 63 61 70 74 75 eld;..../* captu
000110: 72 65 20 73 79 6D 62 6F 6C 20 6C 65 6E 67 74 68 re symbol length
000120: 20 2A 2F 0D 0A 20 20 77 68 69 6C 65 28 69 2D 2D */.. while(i--
000130: 29 20 7B 0D 0A 20 20 20 20 69 66 28 21 67 65 74 ) {.. if(!get
000140: 62 69 74 73 28 38 29 29 20 72 65 74 75 72 6E 20 bits(8)) return
000150: 28 45 52 52 29 3B 09 2F 2A 20 67 65 74 20 6E 65 (ERR);./* get ne
000160: 78 74 20 62 79 74 65 20 2A 2F 0D 0A 20 20 20 20 xt byte */..
000170: 2A 63 70 2B 2B 20 3D 20 66 69 65 6C 64 3B 0D 0A *cp++ = field;..
000180: 20 20 20 20 7D 0D 0A 20 20 2A 63 70 20 3D 20 4E }.. *cp = N
000190: 55 4C 4C 3B 09 09 09 09 2F 2A 20 74 65 72 6D 69 ULL;..../* termi
0001A0: 6E 61 74 65 20 73 79 6D 62 6F 6C 20 2A 2F 0D 0A nate symbol */..
0001B0: 20 20 66 69 65 6C 64 20 3D 20 73 61 76 65 3B 09 field = save;.
0001C0: 09 09 09 2F 2A 20 72 65 73 74 6F 72 65 20 66 69 .../* restore fi
0001D0: 65 6C 64 20 2A 2F 0D 0A 20 20 72 65 74 75 72 6E eld */.. return
0001E0: 20 28 69 74 65 6D 29 3B 0D 0A 20 20 7D 0D 0A 0D (item);.. }...
0001F0: 0A 2F 2A 0D 0A 2A 2A 20 67 65 74 20 6E 65 78 74 ./*..** get next
Size : 512 (Real : 512)
000000: 3B 09 09 2F 2A 20 61 62 73 6F 6C 75 74 65 20 69 ;../* absolute i
000010: 74 65 6D 20 2A 2F 0D 0A 20 20 20 20 7D 0D 0A 20 tem */.. }..
000020: 20 69 66 28 21 67 65 74 62 69 74 73 28 32 29 29 if(!getbits(2))
000030: 20 72 65 74 75 72 6E 20 28 45 52 52 29 3B 09 09 return (ERR);..
000040: 2F 2A 20 67 65 74 20 6E 65 78 74 20 32 20 62 69 /* get next 2 bi
000050: 74 73 20 2A 2F 0D 0A 20 20 73 77 69 74 63 68 28 ts */.. switch(
000060: 74 79 70 65 20 3D 20 69 74 65 6D 20 3D 20 66 69 type = item = fi
000070: 65 6C 64 29 20 7B 0D 0A 20 20 20 20 63 61 73 65 eld) {.. case
000080: 20 30 3A 20 72 65 74 75 72 6E 20 28 67 65 74 73 0: return (gets
000090: 70 65 63 28 29 29 3B 09 09 2F 2A 20 73 70 65 63 pec());../* spec
0000A0: 69 61 6C 20 6C 69 6E 6B 20 69 74 65 6D 20 2A 2F ial link item */
0000B0: 0D 0A 20 20 20 20 63 61 73 65 20 31 3A 09 09 09 .. case 1:...
0000C0: 09 2F 2A 20 70 72 6F 67 72 61 6D 20 72 65 6C 61 ./* program rela
0000D0: 74 69 76 65 20 69 74 65 6D 20 2A 2F 0D 0A 20 20 tive item */..
0000E0: 20 20 63 61 73 65 20 32 3A 09 09 09 09 2F 2A 20 case 2:..../*
0000F0: 64 61 74 61 20 72 65 6C 61 74 69 76 65 20 69 74 data relative it
000100: 65 6D 20 2A 2F 0D 0A 20 20 20 20 63 61 73 65 20 em */.. case
000110: 33 3A 09 09 09 09 2F 2A 20 63 6F 6D 6D 6F 6E 20 3:..../* common
000120: 72 65 6C 61 74 69 76 65 20 69 74 65 6D 20 2A 2F relative item */
000130: 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 66 28 67 65 .. }.. if(ge
000140: 74 66 6C 64 28 29 20 3D 3D 20 45 52 52 29 20 72 tfld() == ERR) r
000150: 65 74 75 72 6E 20 28 45 52 52 29 3B 09 2F 2A 20 eturn (ERR);./*
000160: 67 65 74 20 6E 65 78 74 20 31 36 20 62 69 74 73 get next 16 bits
000170: 20 2A 2F 0D 0A 20 20 72 65 74 75 72 6E 20 28 69 */.. return (i
000180: 74 65 6D 29 3B 09 09 09 2F 2A 20 72 65 6C 61 74 tem);.../* relat
000190: 69 76 65 20 69 74 65 6D 73 20 2A 2F 0D 0A 20 20 ive items */..
0001A0: 7D 0D 0A 0D 0A 67 65 74 73 70 65 63 28 29 20 7B }....getspec() {
0001B0: 09 09 09 09 2F 2A 20 67 65 74 20 6E 65 78 74 20 ..../* get next
0001C0: 73 70 65 63 69 61 6C 20 69 74 65 6D 20 2A 2F 0D special item */.
0001D0: 0A 20 20 69 66 28 21 67 65 74 62 69 74 73 28 34 . if(!getbits(4
0001E0: 29 29 20 72 65 74 75 72 6E 20 28 45 52 52 29 3B )) return (ERR);
0001F0: 09 09 2F 2A 20 67 65 74 20 6E 65 78 74 20 34 20 ../* get next 4
Size : 512 (Real : 512)
000000: 20 6E 20 62 69 74 73 20 66 72 6F 6D 20 52 45 4C n bits from REL
000010: 20 66 69 6C 65 20 69 6E 74 6F 20 22 66 69 65 6C file into "fiel
000020: 64 22 0D 0A 2A 2A 20 72 65 74 75 72 6E 20 74 72 d"..** return tr
000030: 75 65 20 6F 6E 20 73 75 63 63 65 73 73 2C 20 66 ue on success, f
000040: 61 6C 73 65 20 6F 6E 20 65 72 72 6F 72 0D 0A 2A alse on error..*
000050: 2F 0D 0A 67 65 74 62 69 74 73 28 6E 29 20 69 6E /..getbits(n) in
000060: 74 20 6E 3B 20 7B 0D 0A 20 20 69 6E 74 20 67 65 t n; {.. int ge
000070: 74 3B 0D 0A 20 20 66 69 65 6C 64 20 3D 20 30 3B t;.. field = 0;
000080: 09 09 09 09 09 2F 2A 20 69 6E 69 74 69 61 6C 69 ...../* initiali
000090: 7A 65 20 72 65 73 75 6C 74 20 2A 2F 0D 0A 20 20 ze result */..
0000A0: 77 68 69 6C 65 28 6E 29 20 7B 09 09 09 09 09 2F while(n) {...../
0000B0: 2A 20 6D 6F 72 65 20 62 69 74 73 20 74 6F 20 66 * more bits to f
0000C0: 65 74 63 68 20 2A 2F 0D 0A 20 20 20 20 69 66 28 etch */.. if(
0000D0: 69 6E 72 65 6D 20 3D 3D 20 30 29 20 7B 09 09 09 inrem == 0) {...
0000E0: 09 2F 2A 20 6E 65 65 64 20 61 6E 6F 74 68 65 72 ./* need another
0000F0: 20 63 68 75 6E 6B 20 2A 2F 0D 0A 20 20 20 20 20 chunk */..
000100: 20 69 66 28 72 65 61 64 28 69 6E 72 65 6C 2C 20 if(read(inrel,
000110: 26 69 6E 63 68 75 6E 6B 2C 20 31 29 20 21 3D 20 &inchunk, 1) !=
000120: 31 29 20 7B 09 2F 2A 20 67 65 74 20 6E 65 78 74 1) {./* get next
000130: 20 62 69 74 20 63 6C 75 73 74 65 72 20 2A 2F 0D bit cluster */.
000140: 0A 20 20 20 20 20 20 20 20 66 70 75 74 73 28 22 . fputs("
000150: 5C 6E 5C 37 2D 20 41 62 6E 6F 72 6D 61 6C 20 45 \n\7- Abnormal E
000160: 6E 64 20 6F 66 20 52 45 4C 20 46 69 6C 65 5C 6E nd of REL File\n
000170: 22 2C 20 73 74 64 6F 75 74 29 3B 0D 0A 20 20 20 ", stdout);..
000180: 20 20 20 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 return (NO)
000190: 3B 09 09 09 09 2F 2A 20 66 61 69 6C 75 72 65 20 ;..../* failure
0001A0: 2A 2F 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 */.. }..
0001B0: 20 20 20 20 20 69 6E 72 65 6D 20 3D 20 38 3B 09 inrem = 8;.
0001C0: 09 09 09 2F 2A 20 38 20 62 69 74 73 20 72 65 6D .../* 8 bits rem
0001D0: 61 69 6E 20 2A 2F 0D 0A 20 20 20 20 20 20 7D 0D ain */.. }.
0001E0: 0A 20 20 20 20 69 66 28 6E 20 3E 20 69 6E 72 65 . if(n > inre
0001F0: 6D 29 20 67 65 74 20 3D 20 69 6E 72 65 6D 3B 20 m) get = inrem;
Size : 512 (Real : 512)
000000: 62 69 74 73 20 2A 2F 0D 0A 20 20 74 79 70 65 20 bits */.. type
000010: 3D 20 41 42 53 3B 09 09 09 09 2F 2A 20 64 65 66 = ABS;..../* def
000020: 61 75 6C 74 20 74 79 70 65 20 2A 2F 0D 0A 20 20 ault type */..
000030: 69 74 65 6D 20 3D 20 66 69 65 6C 64 20 2B 20 34 item = field + 4
000040: 3B 0D 0A 20 20 73 77 69 74 63 68 28 66 69 65 6C ;.. switch(fiel
000050: 64 29 20 7B 0D 0A 20 20 20 20 63 61 73 65 20 20 d) {.. case
000060: 30 3A 09 09 09 09 2F 2A 20 65 6E 74 72 79 20 73 0:..../* entry s
000070: 79 6D 62 6F 6C 20 2A 2F 0D 0A 20 20 20 20 63 61 ymbol */.. ca
000080: 73 65 20 20 31 3A 09 09 09 09 2F 2A 20 73 65 6C se 1:..../* sel
000090: 65 63 74 20 63 6F 6D 6D 6F 6E 20 62 6C 6F 63 6B ect common block
0000A0: 20 2A 2F 0D 0A 20 20 20 20 63 61 73 65 20 20 32 */.. case 2
0000B0: 3A 09 09 09 09 2F 2A 20 70 72 6F 67 72 61 6D 20 :..../* program
0000C0: 6E 61 6D 65 20 2A 2F 0D 0A 20 20 20 20 63 61 73 name */.. cas
0000D0: 65 20 20 33 3A 09 09 09 09 2F 2A 20 72 65 71 75 e 3:..../* requ
0000E0: 65 73 74 20 6C 69 62 72 61 72 79 20 73 65 61 72 est library sear
0000F0: 63 68 20 2A 2F 0D 0A 20 20 20 20 63 61 73 65 20 ch */.. case
000100: 20 34 3A 09 09 09 09 2F 2A 20 65 78 74 65 6E 73 4:..../* extens
000110: 69 6F 6E 20 6C 69 6E 6B 20 69 74 65 6D 73 20 2A ion link items *
000120: 2F 0D 0A 20 20 20 20 20 20 69 66 28 67 65 74 73 /.. if(gets
000130: 79 6D 28 29 20 3D 3D 20 45 52 52 29 20 72 65 74 ym() == ERR) ret
000140: 75 72 6E 20 28 45 52 52 29 3B 0D 0A 20 20 20 20 urn (ERR);..
000150: 20 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 63 61 break;.. ca
000160: 73 65 20 20 35 3A 09 09 09 09 2F 2A 20 64 65 66 se 5:..../* def
000170: 69 6E 65 20 63 6F 6D 6D 6F 6E 20 73 69 7A 65 20 ine common size
000180: 2A 2F 0D 0A 20 20 20 20 63 61 73 65 20 20 36 3A */.. case 6:
000190: 09 09 09 09 2F 2A 20 68 65 61 64 20 6F 66 20 65 ..../* head of e
0001A0: 78 74 65 72 6E 61 6C 20 72 65 66 65 72 65 6E 63 xternal referenc
0001B0: 65 20 63 68 61 69 6E 20 2A 2F 0D 0A 20 20 20 20 e chain */..
0001C0: 63 61 73 65 20 20 37 3A 09 09 09 09 2F 2A 20 64 case 7:..../* d
0001D0: 65 66 69 6E 65 20 65 6E 74 72 79 20 70 6F 69 6E efine entry poin
0001E0: 74 20 2A 2F 0D 0A 20 20 20 20 20 20 69 66 28 67 t */.. if(g
0001F0: 65 74 74 79 70 28 29 20 3D 3D 20 45 52 52 20 7C ettyp() == ERR |
Size : 512 (Real : 512)
000000: 65 6C 73 65 20 67 65 74 20 3D 20 6E 3B 09 2F 2A else get = n;./*
000010: 20 68 6F 77 20 6D 61 6E 79 20 66 72 6F 6D 20 74 how many from t
000020: 68 69 73 20 63 68 75 6E 6B 20 2A 2F 0D 0A 20 20 his chunk */..
000030: 20 20 6E 20 20 20 20 20 2D 3D 20 67 65 74 3B 09 n -= get;.
000040: 09 09 09 2F 2A 20 64 65 63 72 65 6D 65 6E 74 20 .../* decrement
000050: 62 69 74 73 20 6E 65 65 64 65 64 20 2A 2F 0D 0A bits needed */..
000060: 20 20 20 20 69 6E 72 65 6D 20 20 20 2D 3D 20 67 inrem -= g
000070: 65 74 3B 09 09 09 09 2F 2A 20 64 65 63 72 20 72 et;..../* decr r
000080: 65 6D 61 69 6E 69 6E 67 20 62 69 74 73 20 2A 2F emaining bits */
000090: 0D 0A 20 20 20 20 66 69 65 6C 64 20 20 3D 20 28 .. field = (
0000A0: 66 69 65 6C 64 20 20 3C 3C 20 67 65 74 29 20 2B field << get) +
0000B0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .. (
0000C0: 28 69 6E 63 68 75 6E 6B 20 3E 3E 20 69 6E 72 65 (inchunk >> inre
0000D0: 6D 29 20 26 20 7E 28 4F 4E 45 53 20 3C 3C 20 67 m) & ~(ONES << g
0000E0: 65 74 29 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 et));.. }..
0000F0: 72 65 74 75 72 6E 20 28 59 45 53 29 3B 09 09 09 return (YES);...
000100: 09 09 2F 2A 20 73 75 63 63 65 73 73 20 2A 2F 0D ../* success */.
000110: 0A 20 20 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A . }............
000120: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000130: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000140: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000150: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000160: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000170: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000180: 20 20 20 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 return (NO)
000190: 3B 09 09 09 09 2F 2A 20 66 61 69 6C 75 72 65 20 ;..../* failure
0001A0: 2A 2F 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 */.. }..
0001B0: 20 20 20 20 20 69 6E 72 65 6D 20 3D 20 38 3B 09 inrem = 8;.
0001C0: 09 09 09 2F 2A 20 38 20 62 69 74 73 20 72 65 6D .../* 8 bits rem
0001D0: 61 69 6E 20 2A 2F 0D 0A 20 20 20 20 20 20 7D 0D ain */.. }.
0001E0: 0A 20 20 20 20 69 66 28 6E 20 3E 20 69 6E 72 65 . if(n > inre
0001F0: 6D 29 20 67 65 74 20 3D 20 69 6E 72 65 6D 3B 20 m) get = inrem;
Size : 512 (Real : 512)
000000: 7C 20 67 65 74 66 6C 64 28 29 20 3D 3D 20 45 52 | getfld() == ER
000010: 52 20 7C 7C 20 67 65 74 73 79 6D 28 29 20 3D 3D R || getsym() ==
000020: 20 45 52 52 29 20 72 65 74 75 72 6E 20 28 45 52 ERR) return (ER
000030: 52 29 3B 0D 0A 20 20 20 20 20 20 62 72 65 61 6B R);.. break
000040: 3B 0D 0A 20 20 20 20 63 61 73 65 20 20 38 3A 09 ;.. case 8:.
000050: 09 09 09 2F 2A 20 65 78 74 65 72 6E 61 6C 20 2D .../* external -
000060: 20 6F 66 66 73 65 74 20 2A 2F 0D 0A 20 20 20 20 offset */..
000070: 63 61 73 65 20 20 39 3A 09 09 09 09 2F 2A 20 65 case 9:..../* e
000080: 78 74 65 72 6E 61 6C 20 2B 20 6F 66 66 73 65 74 xternal + offset
000090: 20 2A 2F 0D 0A 20 20 20 20 63 61 73 65 20 31 30 */.. case 10
0000A0: 3A 09 09 09 09 2F 2A 20 73 69 7A 65 20 6F 66 20 :..../* size of
0000B0: 64 61 74 61 20 61 72 65 61 20 2A 2F 0D 0A 20 20 data area */..
0000C0: 20 20 63 61 73 65 20 31 31 3A 09 09 09 09 2F 2A case 11:..../*
0000D0: 20 73 65 74 20 6C 6F 61 64 69 6E 67 20 6C 6F 63 set loading loc
0000E0: 61 74 69 6F 6E 20 63 6F 75 6E 74 65 72 20 2A 2F ation counter */
0000F0: 0D 0A 20 20 20 20 63 61 73 65 20 31 32 3A 09 09 .. case 12:..
000100: 09 09 2F 2A 20 63 68 61 69 6E 20 61 64 64 72 20 ../* chain addr
000110: 28 66 69 6C 6C 20 63 68 61 69 6E 20 77 69 74 68 (fill chain with
000120: 20 6C 63 29 20 2A 2F 0D 0A 20 20 20 20 63 61 73 lc) */.. cas
000130: 65 20 31 33 3A 09 09 09 09 2F 2A 20 73 69 7A 65 e 13:..../* size
000140: 20 6F 66 20 70 72 6F 67 72 61 6D 20 2A 2F 0D 0A of program */..
000150: 20 20 20 20 20 20 69 66 28 67 65 74 74 79 70 28 if(gettyp(
000160: 29 20 3D 3D 20 45 52 52 20 7C 7C 20 67 65 74 66 ) == ERR || getf
000170: 6C 64 28 29 20 3D 3D 20 45 52 52 29 20 72 65 74 ld() == ERR) ret
000180: 75 72 6E 20 28 45 52 52 29 3B 0D 0A 20 20 20 20 urn (ERR);..
000190: 20 20 62 72 65 61 6B 3B 0D 0A 20 20 20 20 63 61 break;.. ca
0001A0: 73 65 20 31 34 3A 09 09 09 09 2F 2A 20 65 6E 64 se 14:..../* end
0001B0: 20 6F 66 20 70 72 6F 67 72 61 6D 20 2A 2F 0D 0A of program */..
0001C0: 20 20 20 20 20 20 69 66 28 67 65 74 74 79 70 28 if(gettyp(
0001D0: 29 20 3D 3D 20 45 52 52 20 7C 7C 20 67 65 74 66 ) == ERR || getf
0001E0: 6C 64 28 29 20 3D 3D 20 45 52 52 29 20 72 65 74 ld() == ERR) ret
0001F0: 75 72 6E 20 28 45 52 52 29 3B 0D 0A 20 20 20 20 urn (ERR);..
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 70 75 74 72 65 6C 20 2D 2D /*..** putrel --
000010: 20 77 72 69 74 65 20 61 20 72 65 6C 6F 63 61 74 write a relocat
000020: 61 62 6C 65 2D 6F 62 6A 65 63 74 20 66 69 6C 65 able-object file
000030: 0D 0A 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 20 3C ..*/..#include <
000040: 73 74 64 69 6F 2E 68 3E 0D 0A 23 69 6E 63 6C 75 stdio.h>..#inclu
000050: 64 65 20 22 72 65 6C 2E 68 22 0D 0A 23 69 6E 63 de "rel.h"..#inc
000060: 6C 75 64 65 20 22 6D 61 63 2E 68 22 0D 0A 0D 0A lude "mac.h"....
000070: 2F 2A 0D 0A 2A 2A 20 70 75 74 20 6E 65 78 74 20 /*..** put next
000080: 52 45 4C 20 69 74 65 6D 0D 0A 2A 2A 20 72 65 74 REL item..** ret
000090: 75 72 6E 20 74 72 75 65 20 6F 6E 20 73 75 63 63 urn true on succ
0000A0: 65 73 73 2C 20 66 61 6C 73 65 20 6F 6E 20 65 72 ess, false on er
0000B0: 72 6F 72 0D 0A 2A 2A 20 6F 6E 20 63 61 6C 6C 3A ror..** on call:
0000C0: 0D 0A 2A 2A 20 20 20 20 69 74 65 6D 20 3D 20 69 ..** item = i
0000D0: 74 65 6D 20 63 6F 64 65 0D 0A 2A 2A 20 20 20 20 tem code..**
0000E0: 74 79 70 65 20 3D 20 74 79 70 65 20 6F 66 20 66 type = type of f
0000F0: 69 65 6C 64 0D 0A 2A 2A 20 20 20 66 69 65 6C 64 ield..** field
000100: 20 3D 20 76 61 6C 75 65 20 6F 66 20 66 69 65 6C = value of fiel
000110: 64 0D 0A 2A 2A 20 20 73 79 6D 62 6F 6C 20 3D 20 d..** symbol =
000120: 73 79 6D 62 6F 6C 20 6E 61 6D 65 0D 0A 2A 2F 20 symbol name..*/
000130: 0D 0A 70 75 74 72 65 6C 28 29 20 7B 0D 0A 20 20 ..putrel() {..
000140: 73 77 69 74 63 68 28 69 74 65 6D 29 20 7B 0D 0A switch(item) {..
000150: 20 20 20 20 63 61 73 65 20 41 42 53 3A 0D 0A 20 case ABS:..
000160: 20 20 20 20 20 69 66 28 21 70 75 74 62 69 74 73 if(!putbits
000170: 28 30 2C 20 31 29 20 7C 7C 20 21 70 75 74 62 69 (0, 1) || !putbi
000180: 74 73 28 66 69 65 6C 64 2C 20 38 29 29 20 72 65 ts(field, 8)) re
000190: 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 20 20 turn (NO);..
0001A0: 20 20 72 65 74 75 72 6E 20 28 59 45 53 29 3B 0D return (YES);.
0001B0: 0A 20 20 20 20 63 61 73 65 20 50 52 45 4C 3A 20 . case PREL:
0001C0: 20 63 61 73 65 20 44 52 45 4C 3A 20 20 63 61 73 case DREL: cas
0001D0: 65 20 43 52 45 4C 3A 0D 0A 20 20 20 20 20 20 69 e CREL:.. i
0001E0: 66 28 21 70 75 74 62 69 74 73 28 31 2C 20 31 29 f(!putbits(1, 1)
0001F0: 20 7C 7C 20 21 70 75 74 62 69 74 73 28 69 74 65 || !putbits(ite
Size : 512 (Real : 512)
000000: 75 63 63 65 73 73 20 2A 2F 0D 0A 20 20 7D 0D 0A uccess */.. }..
000010: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000020: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000030: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000040: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 65 6E 74 20 62 69 74 73 20 74 6F 20 70 75 74 20 ent bits to put
000090: 2A 2F 0D 0A 20 20 20 20 6F 75 74 72 65 6D 20 2D */.. outrem -
0000A0: 3D 20 70 75 74 3B 09 09 09 09 2F 2A 20 64 65 63 = put;..../* dec
0000B0: 72 20 72 65 6D 61 69 6E 69 6E 67 20 62 69 74 73 r remaining bits
0000C0: 20 2A 2F 0D 0A 20 20 20 20 69 66 28 6F 75 74 72 */.. if(outr
0000D0: 65 6D 20 3D 3D 20 30 29 20 7B 09 09 09 09 2F 2A em == 0) {..../*
0000E0: 20 6E 65 65 64 20 61 6E 6F 74 68 65 72 20 63 68 need another ch
0000F0: 75 6E 6B 20 2A 2F 0D 0A 20 20 20 20 20 20 69 66 unk */.. if
000100: 28 77 72 69 74 65 28 6F 75 74 72 65 6C 2C 20 26 (write(outrel, &
000110: 6F 75 74 63 68 75 6E 6B 2C 20 31 29 20 21 3D 20 outchunk, 1) !=
000120: 31 29 20 7B 09 2F 2A 20 70 75 74 20 6E 65 78 74 1) {./* put next
000130: 20 62 69 74 20 63 6C 75 73 74 65 72 20 2A 2F 0D bit cluster */.
000140: 0A 20 20 20 20 20 20 20 20 66 70 75 74 73 28 22 . fputs("
000150: 5C 6E 5C 37 2D 20 57 72 69 74 65 20 45 72 72 6F \n\7- Write Erro
000160: 72 20 69 6E 20 52 45 4C 20 46 69 6C 65 5C 6E 22 r in REL File\n"
000170: 2C 20 73 74 64 6F 75 74 29 3B 0D 0A 20 20 20 20 , stdout);..
000180: 20 20 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B return (NO);
000190: 09 09 09 09 2F 2A 20 66 61 69 6C 75 72 65 20 2A ..../* failure *
0001A0: 2F 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 /.. }..
0001B0: 20 20 20 20 6F 75 74 72 65 6D 20 3D 20 38 3B 09 outrem = 8;.
0001C0: 09 09 09 2F 2A 20 38 20 62 69 74 73 20 72 65 6D .../* 8 bits rem
0001D0: 61 69 6E 20 2A 2F 0D 0A 20 20 20 20 20 20 7D 0D ain */.. }.
0001E0: 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 75 72 6E . }.. return
0001F0: 20 28 59 45 53 29 3B 09 09 09 09 09 2F 2A 20 73 (YES);...../* s
Size : 512 (Real : 512)
000000: 6D 2C 20 32 29 20 7C 7C 20 21 70 75 74 66 6C 64 m, 2) || !putfld
000010: 28 29 29 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B ()) return (NO);
000020: 0D 0A 20 20 20 20 20 20 72 65 74 75 72 6E 20 28 .. return (
000030: 59 45 53 29 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 YES);.. }..
000040: 69 66 28 21 70 75 74 62 69 74 73 28 34 2C 20 33 if(!putbits(4, 3
000050: 29 20 7C 7C 20 21 70 75 74 62 69 74 73 28 69 74 ) || !putbits(it
000060: 65 6D 2D 34 2C 20 34 29 29 20 72 65 74 75 72 6E em-4, 4)) return
000070: 20 28 4E 4F 29 3B 0D 0A 20 20 73 77 69 74 63 68 (NO);.. switch
000080: 28 69 74 65 6D 29 20 7B 0D 0A 20 20 20 20 63 61 (item) {.. ca
000090: 73 65 20 43 53 49 5A 45 3A 20 20 63 61 73 65 20 se CSIZE: case
0000A0: 58 43 48 41 49 4E 3A 20 20 63 61 73 65 20 45 50 XCHAIN: case EP
0000B0: 4F 49 4E 54 3A 0D 0A 20 20 20 20 20 20 69 66 28 OINT:.. if(
0000C0: 21 70 75 74 62 69 74 73 28 74 79 70 65 2C 20 32 !putbits(type, 2
0000D0: 29 20 7C 7C 20 21 70 75 74 66 6C 64 28 29 29 20 ) || !putfld())
0000E0: 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A 0D 0A return (NO);....
0000F0: 20 20 20 20 63 61 73 65 20 45 4E 41 4D 45 3A 20 case ENAME:
000100: 20 63 61 73 65 20 43 4E 41 4D 45 3A 20 20 63 61 case CNAME: ca
000110: 73 65 20 50 4E 41 4D 45 3A 20 20 63 61 73 65 20 se PNAME: case
000120: 4C 4E 41 4D 45 3A 20 20 63 61 73 65 20 45 58 54 LNAME: case EXT
000130: 3A 0D 0A 20 20 20 20 20 20 69 66 28 21 70 75 74 :.. if(!put
000140: 73 79 6D 28 29 29 20 72 65 74 75 72 6E 20 28 4E sym()) return (N
000150: 4F 29 3B 0D 0A 20 20 20 20 20 20 72 65 74 75 72 O);.. retur
000160: 6E 20 28 59 45 53 29 3B 0D 0A 0D 0A 20 20 20 20 n (YES);....
000170: 63 61 73 65 20 58 4D 4F 46 46 3A 20 20 63 61 73 case XMOFF: cas
000180: 65 20 58 50 4F 46 46 3A 20 20 63 61 73 65 20 44 e XPOFF: case D
000190: 53 49 5A 45 3A 0D 0A 20 20 20 20 63 61 73 65 20 SIZE:.. case
0001A0: 53 45 54 4C 43 3A 20 20 63 61 73 65 20 43 48 41 SETLC: case CHA
0001B0: 49 4E 3A 20 20 63 61 73 65 20 50 53 49 5A 45 3A IN: case PSIZE:
0001C0: 0D 0A 20 20 20 20 20 20 69 66 28 21 70 75 74 62 .. if(!putb
0001D0: 69 74 73 28 74 79 70 65 2C 20 32 29 20 7C 7C 20 its(type, 2) ||
0001E0: 21 70 75 74 66 6C 64 28 29 29 20 72 65 74 75 72 !putfld()) retur
0001F0: 6E 20 28 4E 4F 29 3B 0D 0A 20 20 20 20 20 20 72 n (NO);.. r
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 73 65 65 72 65 6C 20 2D 2D /*..** seerel --
000010: 20 73 68 6F 77 20 52 45 4C 20 69 74 65 6D 73 0D show REL items.
000020: 0A 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 20 3C 73 .*/..#include <s
000030: 74 64 69 6F 2E 68 3E 0D 0A 23 69 6E 63 6C 75 64 tdio.h>..#includ
000040: 65 20 22 72 65 6C 2E 68 22 0D 0A 69 6E 74 20 6C e "rel.h"..int l
000050: 63 2C 20 77 69 64 74 68 3B 0D 0A 2F 2A 0D 0A 2A c, width;../*..*
000060: 2A 20 64 69 73 70 6C 61 79 20 52 45 4C 20 69 74 * display REL it
000070: 65 6D 0D 0A 2A 2A 20 6F 6E 20 63 61 6C 6C 3A 0D em..** on call:.
000080: 0A 2A 2A 20 20 20 20 69 74 65 6D 20 3D 20 69 74 .** item = it
000090: 65 6D 20 63 6F 64 65 0D 0A 2A 2A 20 20 20 20 74 em code..** t
0000A0: 79 70 65 20 3D 20 74 79 70 65 20 6F 66 20 66 69 ype = type of fi
0000B0: 65 6C 64 0D 0A 2A 2A 20 20 20 66 69 65 6C 64 20 eld..** field
0000C0: 3D 20 76 61 6C 75 65 20 6F 66 20 66 69 65 6C 64 = value of field
0000D0: 0D 0A 2A 2A 20 20 73 79 6D 62 6F 6C 20 3D 20 73 ..** symbol = s
0000E0: 79 6D 62 6F 6C 20 6E 61 6D 65 0D 0A 2A 2F 20 0D ymbol name..*/ .
0000F0: 0A 73 65 65 72 65 6C 28 29 20 7B 0D 0A 20 20 63 .seerel() {.. c
000100: 68 61 72 20 73 74 72 5B 36 5D 3B 20 69 6E 74 20 har str[6]; int
000110: 74 6D 70 3B 0D 0A 20 20 73 77 69 74 63 68 28 69 tmp;.. switch(i
000120: 74 65 6D 29 20 7B 0D 0A 20 20 20 20 63 61 73 65 tem) {.. case
000130: 20 20 20 20 41 42 53 3A 20 73 65 65 38 28 66 69 ABS: see8(fi
000140: 65 6C 64 2C 20 27 20 27 29 3B 20 6C 63 20 2B 3D eld, ' '); lc +=
000150: 20 31 3B 20 6E 65 77 6C 69 6E 28 4E 4F 29 3B 20 1; newlin(NO);
000160: 72 65 74 75 72 6E 3B 0D 0A 20 20 20 20 63 61 73 return;.. cas
000170: 65 20 20 20 50 52 45 4C 3A 20 0D 0A 20 20 20 20 e PREL: ..
000180: 63 61 73 65 20 20 20 44 52 45 4C 3A 20 0D 0A 20 case DREL: ..
000190: 20 20 20 63 61 73 65 20 20 20 43 52 45 4C 3A 20 case CREL:
0001A0: 73 65 65 31 36 28 29 3B 20 6C 63 20 2B 3D 20 32 see16(); lc += 2
0001B0: 3B 20 6E 65 77 6C 69 6E 28 4E 4F 29 3B 20 72 65 ; newlin(NO); re
0001C0: 74 75 72 6E 3B 0D 0A 20 20 20 20 63 61 73 65 20 turn;.. case
0001D0: 20 58 4D 4F 46 46 3A 0D 0A 20 20 20 20 63 61 73 XMOFF:.. cas
0001E0: 65 20 20 58 50 4F 46 46 3A 20 74 6D 70 20 3D 20 e XPOFF: tmp =
0001F0: 74 79 70 65 3B 20 74 79 70 65 20 3D 20 69 74 65 type; type = ite
Size : 512 (Real : 512)
000000: 65 74 75 72 6E 20 28 59 45 53 29 3B 0D 0A 0D 0A eturn (YES);....
000010: 20 20 20 20 63 61 73 65 20 45 50 52 4F 47 3A 0D case EPROG:.
000020: 0A 20 20 20 20 20 20 69 66 28 21 70 75 74 62 69 . if(!putbi
000030: 74 73 28 74 79 70 65 2C 20 32 29 20 7C 7C 20 21 ts(type, 2) || !
000040: 70 75 74 66 6C 64 28 29 29 20 72 65 74 75 72 6E putfld()) return
000050: 20 28 4E 4F 29 3B 0D 0A 20 20 20 20 63 61 73 65 (NO);.. case
000060: 20 45 46 49 4C 45 3A 0D 0A 20 20 20 20 20 20 69 EFILE:.. i
000070: 66 28 6F 75 74 72 65 6D 20 3C 20 38 20 26 26 20 f(outrem < 8 &&
000080: 21 70 75 74 62 69 74 73 28 30 2C 20 6F 75 74 72 !putbits(0, outr
000090: 65 6D 29 29 20 72 65 74 75 72 6E 20 28 4E 4F 29 em)) return (NO)
0000A0: 3B 2F 2A 20 66 69 6E 69 73 68 20 62 79 74 65 20 ;/* finish byte
0000B0: 2A 2F 0D 0A 20 20 20 20 20 20 72 65 74 75 72 6E */.. return
0000C0: 20 28 59 45 53 29 3B 0D 0A 20 20 20 20 7D 0D 0A (YES);.. }..
0000D0: 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A return (NO);..
0000E0: 20 20 7D 0D 0A 0D 0A 70 75 74 74 79 70 28 29 20 }....puttyp()
0000F0: 7B 0D 0A 20 20 69 66 28 70 75 74 62 69 74 73 28 {.. if(putbits(
000100: 74 79 70 65 2C 20 32 29 29 20 72 65 74 75 72 6E type, 2)) return
000110: 20 28 59 45 53 29 3B 09 2F 2A 20 70 75 74 20 32 (YES);./* put 2
000120: 2D 62 69 74 20 66 69 65 6C 64 20 74 79 70 65 20 -bit field type
000130: 2A 2F 0D 0A 20 20 72 65 74 75 72 6E 20 28 4E 4F */.. return (NO
000140: 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 70 75 74 66 6C );.. }....putfl
000150: 64 28 29 20 7B 09 09 09 09 2F 2A 20 70 75 74 20 d() {..../* put
000160: 6C 6F 77 20 74 68 65 6E 20 68 69 67 68 20 62 79 low then high by
000170: 74 65 20 2A 2F 0D 0A 20 20 69 66 28 70 75 74 62 te */.. if(putb
000180: 69 74 73 28 66 69 65 6C 64 2C 20 38 29 20 26 26 its(field, 8) &&
000190: 20 70 75 74 62 69 74 73 28 66 69 65 6C 64 20 3E putbits(field >
0001A0: 3E 20 38 2C 20 38 29 29 20 72 65 74 75 72 6E 20 > 8, 8)) return
0001B0: 28 59 45 53 29 3B 0D 0A 20 20 72 65 74 75 72 6E (YES);.. return
0001C0: 20 28 4E 4F 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 70 (NO);.. }....p
0001D0: 75 74 73 79 6D 28 29 20 7B 09 09 09 09 2F 2A 20 utsym() {..../*
0001E0: 70 75 74 20 73 79 6D 62 6F 6C 20 2A 2F 0D 0A 20 put symbol */..
0001F0: 20 69 6E 74 20 69 3B 20 63 68 61 72 20 2A 63 70 int i; char *cp
Size : 512 (Real : 512)
000000: 6D 3B 20 73 65 65 31 36 28 29 3B 0D 0A 20 20 20 m; see16();..
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 79 ty
000020: 70 65 20 3D 20 74 6D 70 3B 20 6E 65 77 6C 69 6E pe = tmp; newlin
000030: 28 4E 4F 29 3B 20 72 65 74 75 72 6E 3B 0D 0A 0D (NO); return;...
000040: 0A 20 20 20 20 63 61 73 65 20 20 45 4E 41 4D 45 . case ENAME
000050: 3A 20 73 65 65 6E 61 6D 28 22 20 20 20 20 20 65 : seenam(" e
000060: 6E 74 72 79 3A 20 22 2C 20 4E 4F 29 3B 20 67 6F ntry: ", NO); go
000070: 74 6F 20 65 6F 6C 3B 0D 0A 20 20 20 20 63 61 73 to eol;.. cas
000080: 65 20 20 43 4E 41 4D 45 3A 20 73 65 65 6E 61 6D e CNAME: seenam
000090: 28 22 20 20 20 20 63 6F 6D 6D 6F 6E 3A 20 22 2C (" common: ",
0000A0: 20 4E 4F 29 3B 20 67 6F 74 6F 20 65 6F 6C 3B 0D NO); goto eol;.
0000B0: 0A 20 20 20 20 63 61 73 65 20 20 50 4E 41 4D 45 . case PNAME
0000C0: 3A 20 66 70 75 74 63 28 27 5C 6E 27 2C 20 73 74 : fputc('\n', st
0000D0: 64 6F 75 74 29 3B 20 0D 0A 20 20 20 20 20 20 20 dout); ..
0000E0: 20 20 20 20 20 20 20 20 20 20 73 65 65 6E 61 6D seenam
0000F0: 28 22 2D 20 20 70 72 6F 67 72 61 6D 3A 20 22 2C ("- program: ",
000100: 20 4E 4F 29 3B 0D 0A 20 20 20 20 20 20 20 20 20 NO);..
000110: 20 20 20 20 20 20 20 20 6C 63 20 3D 20 30 3B 0D lc = 0;.
000120: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000130: 20 20 67 6F 74 6F 20 65 6F 6C 3B 0D 0A 20 20 20 goto eol;..
000140: 20 63 61 73 65 20 20 4C 4E 41 4D 45 3A 20 73 65 case LNAME: se
000150: 65 6E 61 6D 28 22 20 20 20 6C 69 62 72 61 72 79 enam(" library
000160: 3A 20 22 2C 20 4E 4F 29 3B 20 67 6F 74 6F 20 65 : ", NO); goto e
000170: 6F 6C 3B 0D 0A 20 20 20 20 63 61 73 65 20 20 20 ol;.. case
000180: 20 45 58 54 3A 20 66 70 75 74 73 28 22 65 78 74 EXT: fputs("ext
000190: 65 6E 73 69 6F 6E 20 6C 69 6E 6B 20 69 74 65 6D ension link item
0001A0: 5C 6E 22 2C 20 73 74 64 6F 75 74 29 3B 20 72 65 \n", stdout); re
0001B0: 74 75 72 6E 3B 0D 0A 0D 0A 20 20 20 20 63 61 73 turn;.... cas
0001C0: 65 20 20 43 53 49 5A 45 3A 20 73 65 65 6E 61 6D e CSIZE: seenam
0001D0: 28 22 20 63 6F 6D 6D 6F 6E 20 73 7A 3A 20 22 2C (" common sz: ",
0001E0: 20 59 45 53 29 3B 20 67 6F 74 6F 20 65 6F 6C 3B YES); goto eol;
0001F0: 0D 0A 20 20 20 20 63 61 73 65 20 58 43 48 41 49 .. case XCHAI
Size : 512 (Real : 512)
000000: 3B 0D 0A 20 20 69 66 28 28 69 20 3D 20 73 74 72 ;.. if((i = str
000010: 6C 65 6E 28 73 79 6D 62 6F 6C 29 29 20 3E 20 4D len(symbol)) > M
000020: 41 58 53 59 4D 29 20 69 20 3D 20 4D 41 58 53 59 AXSYM) i = MAXSY
000030: 4D 3B 09 2F 2A 20 65 6E 66 6F 72 63 65 20 6D 61 M;./* enforce ma
000040: 78 20 6C 65 6E 67 74 68 20 2A 2F 0D 0A 20 20 69 x length */.. i
000050: 66 28 21 70 75 74 62 69 74 73 28 69 2C 20 33 29 f(!putbits(i, 3)
000060: 29 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 09 2F ) return (NO);./
000070: 2A 20 70 75 74 20 33 2D 62 69 74 20 73 79 6D 62 * put 3-bit symb
000080: 6F 6C 20 6C 65 6E 67 74 68 20 2A 2F 0D 0A 20 20 ol length */..
000090: 63 70 20 3D 20 73 79 6D 62 6F 6C 3B 0D 0A 20 20 cp = symbol;..
0000A0: 77 68 69 6C 65 28 69 2D 2D 29 20 7B 0D 0A 20 20 while(i--) {..
0000B0: 20 20 69 66 28 21 70 75 74 62 69 74 73 28 2A 63 if(!putbits(*c
0000C0: 70 2B 2B 2C 20 38 29 29 20 72 65 74 75 72 6E 20 p++, 8)) return
0000D0: 28 4E 4F 29 3B 09 2F 2A 20 70 75 74 20 6E 65 78 (NO);./* put nex
0000E0: 74 20 62 79 74 65 20 2A 2F 0D 0A 20 20 20 20 7D t byte */.. }
0000F0: 0D 0A 20 20 72 65 74 75 72 6E 20 28 59 45 53 29 .. return (YES)
000100: 3B 0D 0A 20 20 7D 0D 0A 0D 0A 2F 2A 0D 0A 2A 2A ;.. }..../*..**
000110: 20 70 75 74 20 6E 65 78 74 20 6E 20 62 69 74 73 put next n bits
000120: 20 66 72 6F 6D 20 66 6C 64 20 69 6E 74 6F 20 52 from fld into R
000130: 45 4C 20 66 69 6C 65 0D 0A 2A 2A 20 72 65 74 75 EL file..** retu
000140: 72 6E 20 74 72 75 65 20 6F 6E 20 73 75 63 63 65 rn true on succe
000150: 73 73 2C 20 66 61 6C 73 65 20 6F 6E 20 65 72 72 ss, false on err
000160: 6F 72 0D 0A 2A 2F 0D 0A 70 75 74 62 69 74 73 28 or..*/..putbits(
000170: 66 6C 64 2C 20 6E 29 20 69 6E 74 20 66 6C 64 2C fld, n) int fld,
000180: 20 6E 3B 20 7B 0D 0A 20 20 69 6E 74 20 70 75 74 n; {.. int put
000190: 3B 0D 0A 20 20 77 68 69 6C 65 28 6E 29 20 7B 09 ;.. while(n) {.
0001A0: 09 09 09 09 2F 2A 20 6D 6F 72 65 20 62 69 74 73 ..../* more bits
0001B0: 20 74 6F 20 70 75 74 20 2A 2F 0D 0A 20 20 20 20 to put */..
0001C0: 69 66 28 6E 20 3E 20 6F 75 74 72 65 6D 29 20 70 if(n > outrem) p
0001D0: 75 74 20 3D 20 6F 75 74 72 65 6D 3B 20 65 6C 73 ut = outrem; els
0001E0: 65 20 70 75 74 20 3D 20 6E 3B 09 2F 2A 20 68 6F e put = n;./* ho
0001F0: 77 20 6D 61 6E 79 20 66 6F 72 20 74 68 69 73 20 w many for this
Size : 512 (Real : 512)
000000: 4E 3A 20 73 65 65 6E 61 6D 28 22 20 65 78 74 20 N: seenam(" ext
000010: 63 68 61 69 6E 3A 20 22 2C 20 59 45 53 29 3B 20 chain: ", YES);
000020: 67 6F 74 6F 20 65 6F 6C 3B 0D 0A 20 20 20 20 63 goto eol;.. c
000030: 61 73 65 20 45 50 4F 49 4E 54 3A 20 73 65 65 6E ase EPOINT: seen
000040: 61 6D 28 22 20 20 65 6E 74 72 79 20 70 74 3A 20 am(" entry pt:
000050: 22 2C 20 59 45 53 29 3B 20 67 6F 74 6F 20 65 6F ", YES); goto eo
000060: 6C 3B 0D 0A 0D 0A 20 20 20 20 63 61 73 65 20 20 l;.... case
000070: 44 53 49 5A 45 3A 20 20 66 70 75 74 73 28 22 20 DSIZE: fputs("
000080: 64 61 74 61 20 73 69 7A 65 3A 20 22 2C 20 73 74 data size: ", st
000090: 64 6F 75 74 29 3B 20 67 6F 74 6F 20 66 6C 64 3B dout); goto fld;
0000A0: 0D 0A 20 20 20 20 63 61 73 65 20 20 53 45 54 4C .. case SETL
0000B0: 43 3A 20 20 66 70 75 74 73 28 22 20 20 20 6C 6F C: fputs(" lo
0000C0: 61 64 20 61 74 3A 20 22 2C 20 73 74 64 6F 75 74 ad at: ", stdout
0000D0: 29 3B 20 6C 63 20 3D 20 66 69 65 6C 64 3B 20 67 ); lc = field; g
0000E0: 6F 74 6F 20 66 6C 64 3B 0D 0A 20 20 20 20 63 61 oto fld;.. ca
0000F0: 73 65 20 20 43 48 41 49 4E 3A 20 20 66 70 75 74 se CHAIN: fput
000100: 73 28 22 20 6C 64 20 63 68 6E 20 61 74 3A 20 22 s(" ld chn at: "
000110: 2C 20 73 74 64 6F 75 74 29 3B 20 67 6F 74 6F 20 , stdout); goto
000120: 66 6C 64 3B 0D 0A 20 20 20 20 63 61 73 65 20 20 fld;.. case
000130: 50 53 49 5A 45 3A 20 20 66 70 75 74 73 28 22 20 PSIZE: fputs("
000140: 70 72 6F 67 20 73 69 7A 65 3A 20 22 2C 20 73 74 prog size: ", st
000150: 64 6F 75 74 29 3B 20 67 6F 74 6F 20 66 6C 64 3B dout); goto fld;
000160: 0D 0A 0D 0A 20 20 20 20 63 61 73 65 20 20 45 50 .... case EP
000170: 52 4F 47 3A 20 20 66 70 75 74 73 28 22 2D 20 65 ROG: fputs("- e
000180: 6E 64 20 70 72 6F 67 3A 20 22 2C 20 73 74 64 6F nd prog: ", stdo
000190: 75 74 29 3B 20 67 6F 74 6F 20 66 6C 64 3B 0D 0A ut); goto fld;..
0001A0: 20 20 20 20 63 61 73 65 20 20 45 46 49 4C 45 3A case EFILE:
0001B0: 20 20 66 70 75 74 73 28 22 2D 20 65 6E 64 20 66 fputs("- end f
0001C0: 69 6C 65 22 2C 20 73 74 64 6F 75 74 29 3B 20 20 ile", stdout);
0001D0: 20 67 6F 74 6F 20 65 6F 6C 3B 0D 0A 0D 0A 20 20 goto eol;....
0001E0: 20 20 20 20 20 20 20 20 20 20 66 6C 64 3A 20 73 fld: s
0001F0: 65 65 31 36 28 29 3B 0D 0A 20 20 20 20 20 20 20 ee16();..
Size : 512 (Real : 512)
000000: 63 68 75 6E 6B 20 2A 2F 0D 0A 20 20 20 20 6F 75 chunk */.. ou
000010: 74 63 68 75 6E 6B 20 3D 20 28 6F 75 74 63 68 75 tchunk = (outchu
000020: 6E 6B 20 3C 3C 20 70 75 74 29 20 2B 0D 0A 20 20 nk << put) +..
000030: 20 20 20 20 20 20 20 20 20 20 20 28 28 66 6C 64 ((fld
000040: 20 3E 3E 20 28 6E 2D 70 75 74 29 29 20 26 20 7E >> (n-put)) & ~
000050: 28 4F 4E 45 53 20 3C 3C 20 70 75 74 29 29 3B 0D (ONES << put));.
000060: 0A 20 20 20 20 6E 20 20 20 20 20 20 2D 3D 20 70 . n -= p
000070: 75 74 3B 09 09 09 09 2F 2A 20 64 65 63 72 65 6D ut;..../* decrem
000080: 65 6E 74 20 62 69 74 73 20 74 6F 20 70 75 74 20 ent bits to put
000090: 2A 2F 0D 0A 20 20 20 20 6F 75 74 72 65 6D 20 2D */.. outrem -
0000A0: 3D 20 70 75 74 3B 09 09 09 09 2F 2A 20 64 65 63 = put;..../* dec
0000B0: 72 20 72 65 6D 61 69 6E 69 6E 67 20 62 69 74 73 r remaining bits
0000C0: 20 2A 2F 0D 0A 20 20 20 20 69 66 28 6F 75 74 72 */.. if(outr
0000D0: 65 6D 20 3D 3D 20 30 29 20 7B 09 09 09 09 2F 2A em == 0) {..../*
0000E0: 20 6E 65 65 64 20 61 6E 6F 74 68 65 72 20 63 68 need another ch
0000F0: 75 6E 6B 20 2A 2F 0D 0A 20 20 20 20 20 20 69 66 unk */.. if
000100: 28 77 72 69 74 65 28 6F 75 74 72 65 6C 2C 20 26 (write(outrel, &
000110: 6F 75 74 63 68 75 6E 6B 2C 20 31 29 20 21 3D 20 outchunk, 1) !=
000120: 31 29 20 7B 09 2F 2A 20 70 75 74 20 6E 65 78 74 1) {./* put next
000130: 20 62 69 74 20 63 6C 75 73 74 65 72 20 2A 2F 0D bit cluster */.
000140: 0A 20 20 20 20 20 20 20 20 66 70 75 74 73 28 22 . fputs("
000150: 5C 6E 5C 37 2D 20 57 72 69 74 65 20 45 72 72 6F \n\7- Write Erro
000160: 72 20 69 6E 20 52 45 4C 20 46 69 6C 65 5C 6E 22 r in REL File\n"
000170: 2C 20 73 74 64 6F 75 74 29 3B 0D 0A 20 20 20 20 , stdout);..
000180: 20 20 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B return (NO);
000190: 09 09 09 09 2F 2A 20 66 61 69 6C 75 72 65 20 2A ..../* failure *
0001A0: 2F 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 /.. }..
0001B0: 20 20 20 20 6F 75 74 72 65 6D 20 3D 20 38 3B 09 outrem = 8;.
0001C0: 09 09 09 2F 2A 20 38 20 62 69 74 73 20 72 65 6D .../* 8 bits rem
0001D0: 61 69 6E 20 2A 2F 0D 0A 20 20 20 20 20 20 7D 0D ain */.. }.
0001E0: 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 75 72 6E . }.. return
0001F0: 20 28 59 45 53 29 3B 09 09 09 09 09 2F 2A 20 73 (YES);...../* s
Size : 512 (Real : 512)
000000: 20 20 20 20 20 65 6F 6C 3A 20 6E 65 77 6C 69 6E eol: newlin
000010: 28 59 45 53 29 3B 0D 0A 20 20 20 20 20 20 20 20 (YES);..
000020: 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6E 3B return;
000030: 0D 0A 20 20 20 20 7D 0D 0A 20 20 69 74 6F 75 28 .. }.. itou(
000040: 69 74 65 6D 2C 20 73 74 72 2C 20 36 29 3B 20 66 item, str, 6); f
000050: 70 75 74 73 28 73 74 72 2C 20 20 73 74 64 6F 75 puts(str, stdou
000060: 74 29 3B 0D 0A 20 20 66 70 75 74 73 28 22 20 69 t);.. fputs(" i
000070: 73 20 61 6E 20 55 6E 6B 6E 6F 77 6E 20 49 74 65 s an Unknown Ite
000080: 6D 20 43 6F 64 65 5C 6E 22 2C 20 73 74 64 6F 75 m Code\n", stdou
000090: 74 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 73 65 65 38 t);.. }....see8
0000A0: 28 76 61 6C 75 65 2C 20 73 75 66 66 29 20 69 6E (value, suff) in
0000B0: 74 20 76 61 6C 75 65 2C 20 73 75 66 66 3B 20 7B t value, suff; {
0000C0: 09 2F 2A 20 64 69 73 70 6C 61 79 20 38 2D 62 69 ./* display 8-bi
0000D0: 74 73 20 2A 2F 0D 0A 20 20 63 68 61 72 20 73 74 ts */.. char st
0000E0: 72 5B 35 5D 3B 0D 0A 20 20 69 66 28 77 69 64 74 r[5];.. if(widt
0000F0: 68 20 3D 3D 20 30 20 26 26 20 69 74 65 6D 20 3C h == 0 && item <
000100: 20 43 52 45 4C 29 20 7B 09 2F 2A 20 6E 65 65 64 CREL) {./* need
000110: 20 6C 6F 63 20 63 74 72 20 70 72 65 66 20 2A 2F loc ctr pref */
000120: 0D 0A 20 20 20 20 69 74 6F 78 28 6C 63 2C 20 73 .. itox(lc, s
000130: 74 72 2C 20 35 29 3B 0D 0A 20 20 20 20 6F 75 74 tr, 5);.. out
000140: 7A 28 73 74 72 29 3B 09 09 09 09 2F 2A 20 6F 75 z(str);..../* ou
000150: 74 70 75 74 20 6C 6F 63 20 63 74 72 20 2A 2F 0D tput loc ctr */.
000160: 0A 20 20 20 20 66 70 75 74 63 28 27 20 27 2C 20 . fputc(' ',
000170: 73 74 64 6F 75 74 29 3B 09 09 09 2F 2A 20 6F 75 stdout);.../* ou
000180: 74 70 75 74 20 73 70 61 63 65 72 20 2A 2F 0D 0A tput spacer */..
000190: 20 20 20 20 7D 0D 0A 20 20 69 74 6F 78 28 76 61 }.. itox(va
0001A0: 6C 75 65 20 26 20 32 35 35 2C 20 73 74 72 2C 20 lue & 255, str,
0001B0: 33 29 3B 09 09 2F 2A 20 63 6F 6E 76 65 72 74 20 3);../* convert
0001C0: 74 6F 20 68 65 78 20 73 74 72 69 6E 67 20 2A 2F to hex string */
0001D0: 0D 0A 20 20 6F 75 74 7A 28 73 74 72 29 3B 09 09 .. outz(str);..
0001E0: 09 09 2F 2A 20 6F 75 74 70 75 74 20 68 65 78 20 ../* output hex
0001F0: 62 79 74 65 20 2A 2F 0D 0A 20 20 69 66 28 73 75 byte */.. if(su
Size : 512 (Real : 512)
000000: 0D 0A 2F 2A 0D 0A 2A 2A 20 6D 65 73 73 2E 63 20 ../*..** mess.c
000010: 2D 2D 20 6D 65 73 73 61 67 65 20 66 75 6E 63 74 -- message funct
000020: 69 6F 6E 73 0D 0A 2A 2F 0D 0A 23 69 6E 63 6C 75 ions..*/..#inclu
000030: 64 65 20 3C 73 74 64 69 6F 2E 68 3E 0D 0A 23 64 de <stdio.h>..#d
000040: 65 66 69 6E 65 20 4E 4F 43 43 41 52 47 43 0D 0A efine NOCCARGC..
000050: 70 75 74 73 32 28 73 74 72 31 2C 20 73 74 72 32 puts2(str1, str2
000060: 29 20 63 68 61 72 20 2A 73 74 72 31 2C 20 2A 73 ) char *str1, *s
000070: 74 72 32 3B 20 7B 0D 0A 20 20 66 70 75 74 73 28 tr2; {.. fputs(
000080: 73 74 72 31 2C 20 73 74 64 6F 75 74 29 3B 0D 0A str1, stdout);..
000090: 20 20 70 75 74 73 28 73 74 72 32 29 3B 0D 0A 20 puts(str2);..
0000A0: 20 7D 0D 0A 63 61 6E 74 28 73 74 72 29 20 63 68 }..cant(str) ch
0000B0: 61 72 20 2A 73 74 72 3B 20 7B 0D 0A 20 20 65 72 ar *str; {.. er
0000C0: 72 6F 72 32 28 73 74 72 2C 20 22 20 2D 20 43 61 ror2(str, " - Ca
0000D0: 6E 27 74 20 4F 70 65 6E 22 29 3B 0D 0A 20 20 7D n't Open");.. }
0000E0: 0D 0A 65 72 72 6F 72 32 28 73 74 72 31 2C 20 73 ..error2(str1, s
0000F0: 74 72 32 29 20 63 68 61 72 20 2A 73 74 72 31 2C tr2) char *str1,
000100: 20 2A 73 74 72 32 3B 20 7B 0D 0A 20 20 66 70 75 *str2; {.. fpu
000110: 74 73 28 73 74 72 31 2C 20 73 74 64 6F 75 74 29 ts(str1, stdout)
000120: 3B 0D 0A 20 20 65 72 72 6F 72 28 73 74 72 32 29 ;.. error(str2)
000130: 3B 0D 0A 20 20 7D 0D 0A 65 72 72 6F 72 28 73 74 ;.. }..error(st
000140: 72 29 20 63 68 61 72 20 2A 73 74 72 3B 20 7B 0D r) char *str; {.
000150: 0A 20 20 70 75 74 73 28 73 74 72 29 3B 0D 0A 20 . puts(str);..
000160: 20 61 62 6F 72 74 28 37 29 3B 0D 0A 20 20 7D 0D abort(7);.. }.
000170: 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 66 66 29 20 66 70 75 74 63 28 73 75 66 66 2C 20 ff) fputc(suff,
000010: 73 74 64 6F 75 74 29 3B 09 09 2F 2A 20 6F 75 74 stdout);../* out
000020: 70 75 74 20 73 75 66 66 69 78 3F 20 2A 2F 0D 0A put suffix? */..
000030: 20 20 2B 2B 77 69 64 74 68 3B 09 09 09 09 2F 2A ++width;..../*
000040: 20 62 75 6D 70 20 6C 69 6E 65 20 77 69 64 74 68 bump line width
000050: 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D 0A 73 65 65 31 */.. }....see1
000060: 36 28 29 20 7B 09 09 09 09 2F 2A 20 64 69 73 70 6() {..../* disp
000070: 6C 61 79 20 66 69 65 6C 64 20 2A 2F 0D 0A 20 20 lay field */..
000080: 73 65 65 38 28 66 69 65 6C 64 20 3E 3E 20 38 2C see8(field >> 8,
000090: 20 30 29 3B 09 09 09 2F 2A 20 64 69 73 70 6C 61 0);.../* displa
0000A0: 79 20 68 69 67 68 20 62 79 74 65 20 20 2A 2F 0D y high byte */.
0000B0: 0A 20 20 73 65 65 38 28 66 69 65 6C 64 2C 20 78 . see8(field, x
0000C0: 74 79 70 65 28 29 29 3B 09 09 09 2F 2A 20 64 69 type());.../* di
0000D0: 73 70 6C 61 79 20 6C 6F 77 20 62 79 74 65 20 26 splay low byte &
0000E0: 20 74 79 70 65 20 2A 2F 0D 0A 20 20 66 70 75 74 type */.. fput
0000F0: 63 28 27 20 27 2C 20 73 74 64 6F 75 74 29 3B 09 c(' ', stdout);.
000100: 09 09 2F 2A 20 6F 75 74 70 75 74 20 73 70 61 63 ../* output spac
000110: 65 72 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D 0A 73 65 er */.. }....se
000120: 65 6E 61 6D 28 70 72 65 66 2C 20 76 61 6C 29 20 enam(pref, val)
000130: 63 68 61 72 20 2A 70 72 65 66 3B 20 69 6E 74 20 char *pref; int
000140: 76 61 6C 3B 20 7B 2F 2A 20 64 69 73 70 6C 61 79 val; {/* display
000150: 20 73 79 6D 62 6F 6C 20 2A 2F 0D 0A 20 20 6E 65 symbol */.. ne
000160: 77 6C 69 6E 28 59 45 53 29 3B 0D 0A 20 20 77 69 wlin(YES);.. wi
000170: 64 74 68 20 3D 20 31 3B 09 09 09 09 2F 2A 20 61 dth = 1;..../* a
000180: 76 6F 69 64 20 61 64 64 72 65 73 73 20 70 72 65 void address pre
000190: 66 69 78 20 2A 2F 0D 0A 20 20 66 70 75 74 73 28 fix */.. fputs(
0001A0: 70 72 65 66 2C 20 20 20 20 73 74 64 6F 75 74 29 pref, stdout)
0001B0: 3B 0D 0A 20 20 69 66 28 76 61 6C 29 20 73 65 65 ;.. if(val) see
0001C0: 31 36 28 29 3B 09 09 09 2F 2A 20 6F 75 74 70 75 16();.../* outpu
0001D0: 74 20 61 20 76 61 6C 75 65 20 2A 2F 0D 0A 20 20 t a value */..
0001E0: 66 70 75 74 73 28 73 79 6D 62 6F 6C 2C 20 20 73 fputs(symbol, s
0001F0: 74 64 6F 75 74 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A tdout);.. }....
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 78 74 79 70 65 28 29 20 7B 0D 0A 20 20 73 77 69 xtype() {.. swi
000010: 74 63 68 28 74 79 70 65 29 20 7B 0D 0A 20 20 20 tch(type) {..
000020: 20 63 61 73 65 20 20 20 41 42 53 3A 20 72 65 74 case ABS: ret
000030: 75 72 6E 28 27 20 27 29 3B 0D 0A 20 20 20 20 63 urn(' ');.. c
000040: 61 73 65 20 20 50 52 45 4C 3A 20 72 65 74 75 72 ase PREL: retur
000050: 6E 28 27 5C 27 27 29 3B 0D 0A 20 20 20 20 63 61 n('\'');.. ca
000060: 73 65 20 20 44 52 45 4C 3A 20 72 65 74 75 72 6E se DREL: return
000070: 28 27 5C 22 27 29 3B 0D 0A 20 20 20 20 63 61 73 ('\"');.. cas
000080: 65 20 20 43 52 45 4C 3A 20 72 65 74 75 72 6E 28 e CREL: return(
000090: 27 7E 27 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 '~');.. case
0000A0: 58 50 4F 46 46 3A 20 72 65 74 75 72 6E 28 27 2B XPOFF: return('+
0000B0: 27 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 58 4D ');.. case XM
0000C0: 4F 46 46 3A 20 72 65 74 75 72 6E 28 27 2D 27 29 OFF: return('-')
0000D0: 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 75 ;.. }.. retu
0000E0: 72 6E 28 27 3F 27 29 3B 0D 0A 20 20 7D 0D 0A 0D rn('?');.. }...
0000F0: 0A 6E 65 77 6C 69 6E 28 6E 6C 29 20 69 6E 74 20 .newlin(nl) int
000100: 6E 6C 3B 20 7B 09 09 09 2F 2A 20 64 65 63 69 64 nl; {.../* decid
000110: 65 20 61 62 6F 75 74 20 6E 65 77 20 6C 69 6E 65 e about new line
000120: 20 2A 2F 0D 0A 20 20 69 66 28 77 69 64 74 68 20 */.. if(width
000130: 3E 20 31 35 20 7C 7C 20 28 6E 6C 20 26 26 20 77 > 15 || (nl && w
000140: 69 64 74 68 29 29 20 7B 0D 0A 20 20 20 20 66 70 idth)) {.. fp
000150: 75 74 63 28 27 5C 6E 27 2C 20 73 74 64 6F 75 74 utc('\n', stdout
000160: 29 3B 0D 0A 20 20 20 20 77 69 64 74 68 20 3D 20 );.. width =
000170: 30 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0;.. }.. }..
000180: 0D 0A 6F 75 74 7A 28 73 74 72 29 20 63 68 61 72 ..outz(str) char
000190: 20 2A 73 74 72 3B 20 7B 09 09 09 2F 2A 20 7A 65 *str; {.../* ze
0001A0: 72 6F 20 66 69 6C 6C 20 61 6E 64 20 6F 75 74 70 ro fill and outp
0001B0: 75 74 20 73 74 72 20 2A 2F 0D 0A 20 20 63 68 61 ut str */.. cha
0001C0: 72 20 2A 63 70 3B 0D 0A 20 20 63 70 20 3D 20 73 r *cp;.. cp = s
0001D0: 74 72 3B 0D 0A 20 20 77 68 69 6C 65 28 2A 63 70 tr;.. while(*cp
0001E0: 20 3D 3D 20 27 20 27 29 20 2A 63 70 2B 2B 20 3D == ' ') *cp++ =
0001F0: 20 27 30 27 3B 09 2F 2A 20 73 75 70 70 6C 79 20 '0';./* supply
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 73 63 61 6E 6E 69 6E 67 20 /*..** scanning
000010: 66 75 6E 63 74 69 6F 6E 73 0D 0A 2A 2F 0D 0A 23 functions..*/..#
000020: 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E 68 include <stdio.h
000030: 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6D 61 63 >..#include "mac
000040: 2E 68 22 0D 0A 23 64 65 66 69 6E 65 20 4E 4F 43 .h"..#define NOC
000050: 43 41 52 47 43 0D 0A 0D 0A 61 74 65 6E 64 28 63 CARGC....atend(c
000060: 68 29 20 69 6E 74 20 63 68 3B 20 7B 09 09 09 2F h) int ch; {.../
000070: 2A 20 69 73 20 63 68 20 61 74 20 65 6E 64 20 6F * is ch at end o
000080: 66 20 6C 69 6E 65 3F 20 2A 2F 0D 0A 20 20 73 77 f line? */.. sw
000090: 69 74 63 68 28 63 68 29 20 7B 0D 0A 20 20 20 20 itch(ch) {..
0000A0: 63 61 73 65 20 43 4F 4D 4D 45 4E 54 3A 20 63 61 case COMMENT: ca
0000B0: 73 65 20 4E 55 4C 4C 3A 20 63 61 73 65 20 27 5C se NULL: case '\
0000C0: 6E 27 3A 20 72 65 74 75 72 6E 20 28 59 45 53 29 n': return (YES)
0000D0: 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 75 ;.. }.. retu
0000E0: 72 6E 20 28 4E 4F 29 3B 0D 0A 20 20 7D 0D 0A 0D rn (NO);.. }...
0000F0: 0A 66 6C 64 63 6D 70 28 73 2C 20 74 29 20 63 68 .fldcmp(s, t) ch
000100: 61 72 20 2A 73 2C 20 2A 74 3B 20 7B 09 09 2F 2A ar *s, *t; {../*
000110: 20 63 6F 6D 70 61 72 65 20 66 69 65 6C 64 73 20 compare fields
000120: 69 6E 20 61 20 6C 69 6E 65 20 2A 2F 0D 0A 20 20 in a line */..
000130: 77 68 69 6C 65 28 6C 65 78 6F 72 64 65 72 28 2A while(lexorder(*
000140: 73 2C 20 2A 74 29 20 3D 3D 20 30 29 20 7B 0D 0A s, *t) == 0) {..
000150: 20 20 20 20 69 66 28 21 69 73 67 72 61 70 68 28 if(!isgraph(
000160: 2A 73 29 29 20 72 65 74 75 72 6E 20 28 30 29 3B *s)) return (0);
000170: 0D 0A 20 20 20 20 2B 2B 73 3B 20 2B 2B 74 3B 0D .. ++s; ++t;.
000180: 0A 20 20 20 20 7D 0D 0A 20 20 69 66 28 28 69 73 . }.. if((is
000190: 73 70 61 63 65 28 2A 73 29 20 7C 7C 20 61 74 65 space(*s) || ate
0001A0: 6E 64 28 2A 73 29 29 20 26 26 0D 0A 20 20 20 20 nd(*s)) &&..
0001B0: 20 28 69 73 73 70 61 63 65 28 2A 74 29 20 7C 7C (isspace(*t) ||
0001C0: 20 61 74 65 6E 64 28 2A 74 29 29 29 20 72 65 74 atend(*t))) ret
0001D0: 75 72 6E 20 28 30 29 3B 0D 0A 20 20 72 65 74 75 urn (0);.. retu
0001E0: 72 6E 20 28 2A 73 20 2D 20 2A 74 29 3B 0D 0A 20 rn (*s - *t);..
0001F0: 20 7D 0D 0A 0D 0A 73 6B 69 70 28 6E 2C 20 73 74 }....skip(n, st
Size : 512 (Real : 512)
000000: 6C 65 61 64 69 6E 67 20 7A 65 72 6F 65 73 20 2A leading zeroes *
000010: 2F 0D 0A 20 20 66 70 75 74 73 28 73 74 72 2C 20 /.. fputs(str,
000020: 20 73 74 64 6F 75 74 29 3B 0D 0A 20 20 7D 0D 0A stdout);.. }..
000030: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000040: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 65 20 20 43 52 45 4C 3A 20 72 65 74 75 72 6E 28 e CREL: return(
000090: 27 7E 27 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 '~');.. case
0000A0: 58 50 4F 46 46 3A 20 72 65 74 75 72 6E 28 27 2B XPOFF: return('+
0000B0: 27 29 3B 0D 0A 20 20 20 20 63 61 73 65 20 58 4D ');.. case XM
0000C0: 4F 46 46 3A 20 72 65 74 75 72 6E 28 27 2D 27 29 OFF: return('-')
0000D0: 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 75 ;.. }.. retu
0000E0: 72 6E 28 27 3F 27 29 3B 0D 0A 20 20 7D 0D 0A 0D rn('?');.. }...
0000F0: 0A 6E 65 77 6C 69 6E 28 6E 6C 29 20 69 6E 74 20 .newlin(nl) int
000100: 6E 6C 3B 20 7B 09 09 09 2F 2A 20 64 65 63 69 64 nl; {.../* decid
000110: 65 20 61 62 6F 75 74 20 6E 65 77 20 6C 69 6E 65 e about new line
000120: 20 2A 2F 0D 0A 20 20 69 66 28 77 69 64 74 68 20 */.. if(width
000130: 3E 20 31 35 20 7C 7C 20 28 6E 6C 20 26 26 20 77 > 15 || (nl && w
000140: 69 64 74 68 29 29 20 7B 0D 0A 20 20 20 20 66 70 idth)) {.. fp
000150: 75 74 63 28 27 5C 6E 27 2C 20 73 74 64 6F 75 74 utc('\n', stdout
000160: 29 3B 0D 0A 20 20 20 20 77 69 64 74 68 20 3D 20 );.. width =
000170: 30 3B 0D 0A 20 20 20 20 7D 0D 0A 20 20 7D 0D 0A 0;.. }.. }..
000180: 0D 0A 6F 75 74 7A 28 73 74 72 29 20 63 68 61 72 ..outz(str) char
000190: 20 2A 73 74 72 3B 20 7B 09 09 09 2F 2A 20 7A 65 *str; {.../* ze
0001A0: 72 6F 20 66 69 6C 6C 20 61 6E 64 20 6F 75 74 70 ro fill and outp
0001B0: 75 74 20 73 74 72 20 2A 2F 0D 0A 20 20 63 68 61 ut str */.. cha
0001C0: 72 20 2A 63 70 3B 0D 0A 20 20 63 70 20 3D 20 73 r *cp;.. cp = s
0001D0: 74 72 3B 0D 0A 20 20 77 68 69 6C 65 28 2A 63 70 tr;.. while(*cp
0001E0: 20 3D 3D 20 27 20 27 29 20 2A 63 70 2B 2B 20 3D == ' ') *cp++ =
0001F0: 20 27 30 27 3B 09 2F 2A 20 73 75 70 70 6C 79 20 '0';./* supply
Size : 512 (Real : 512)
000000: 72 29 20 69 6E 74 20 6E 3B 20 63 68 61 72 20 73 r) int n; char s
000010: 74 72 5B 5D 3B 20 7B 09 2F 2A 20 66 69 6E 64 20 tr[]; {./* find
000020: 6E 74 68 20 6E 6F 6E 2D 62 6C 61 6E 6B 20 66 69 nth non-blank fi
000030: 65 6C 64 20 69 6E 20 73 74 72 20 2A 2F 0D 0A 20 eld in str */..
000040: 20 63 68 61 72 20 2A 63 70 3B 20 63 70 20 3D 20 char *cp; cp =
000050: 73 74 72 3B 0D 0A 20 20 77 68 69 6C 65 28 69 73 str;.. while(is
000060: 73 70 61 63 65 28 2A 63 70 29 29 20 2B 2B 63 70 space(*cp)) ++cp
000070: 3B 0D 0A 20 20 77 68 69 6C 65 28 2D 2D 6E 29 20 ;.. while(--n)
000080: 7B 0D 0A 20 20 20 20 77 68 69 6C 65 28 69 73 67 {.. while(isg
000090: 72 61 70 68 28 2A 63 70 29 29 20 2B 2B 63 70 3B raph(*cp)) ++cp;
0000A0: 0D 0A 20 20 20 20 77 68 69 6C 65 28 69 73 73 70 .. while(issp
0000B0: 61 63 65 28 2A 63 70 29 29 20 2B 2B 63 70 3B 0D ace(*cp)) ++cp;.
0000C0: 0A 20 20 20 20 7D 0D 0A 20 20 72 65 74 75 72 6E . }.. return
0000D0: 20 28 63 70 29 3B 0D 0A 20 20 7D 0D 0A 1A 1A 1A (cp);.. }.....
0000E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000100: 61 72 20 2A 73 2C 20 2A 74 3B 20 7B 09 09 2F 2A ar *s, *t; {../*
000110: 20 63 6F 6D 70 61 72 65 20 66 69 65 6C 64 73 20 compare fields
000120: 69 6E 20 61 20 6C 69 6E 65 20 2A 2F 0D 0A 20 20 in a line */..
000130: 77 68 69 6C 65 28 6C 65 78 6F 72 64 65 72 28 2A while(lexorder(*
000140: 73 2C 20 2A 74 29 20 3D 3D 20 30 29 20 7B 0D 0A s, *t) == 0) {..
000150: 20 20 20 20 69 66 28 21 69 73 67 72 61 70 68 28 if(!isgraph(
000160: 2A 73 29 29 20 72 65 74 75 72 6E 20 28 30 29 3B *s)) return (0);
000170: 0D 0A 20 20 20 20 2B 2B 73 3B 20 2B 2B 74 3B 0D .. ++s; ++t;.
000180: 0A 20 20 20 20 7D 0D 0A 20 20 69 66 28 28 69 73 . }.. if((is
000190: 73 70 61 63 65 28 2A 73 29 20 7C 7C 20 61 74 65 space(*s) || ate
0001A0: 6E 64 28 2A 73 29 29 20 26 26 0D 0A 20 20 20 20 nd(*s)) &&..
0001B0: 20 28 69 73 73 70 61 63 65 28 2A 74 29 20 7C 7C (isspace(*t) ||
0001C0: 20 61 74 65 6E 64 28 2A 74 29 29 29 20 72 65 74 atend(*t))) ret
0001D0: 75 72 6E 20 28 30 29 3B 0D 0A 20 20 72 65 74 75 urn (0);.. retu
0001E0: 72 6E 20 28 2A 73 20 2D 20 2A 74 29 3B 0D 0A 20 rn (*s - *t);..
0001F0: 20 7D 0D 0A 0D 0A 73 6B 69 70 28 6E 2C 20 73 74 }....skip(n, st
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 23 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E #include <stdio.
000010: 68 3E 0D 0A 23 64 65 66 69 6E 65 20 4E 4F 43 43 h>..#define NOCC
000020: 41 52 47 43 0D 0A 2F 2A 0D 0A 2A 2A 20 77 61 69 ARGC../*..** wai
000030: 74 2E 63 20 2D 2D 20 77 61 69 74 20 66 6F 72 20 t.c -- wait for
000040: 6F 70 65 72 61 74 6F 72 20 72 65 73 70 6F 6E 73 operator respons
000050: 65 0D 0A 2A 2F 0D 0A 77 61 69 74 28 29 20 7B 09 e..*/..wait() {.
000060: 09 2F 2A 20 77 61 69 74 20 66 6F 72 20 75 73 65 ./* wait for use
000070: 72 20 62 65 66 6F 72 65 20 63 6C 65 61 72 69 6E r before clearin
000080: 67 20 74 68 65 20 6D 65 73 73 61 67 65 20 2A 2F g the message */
000090: 0D 0A 20 20 66 70 75 74 73 28 22 5C 6E 57 61 69 .. fputs("\nWai
0000A0: 74 69 6E 67 2E 2E 2E 22 2C 20 73 74 64 65 72 72 ting...", stderr
0000B0: 29 3B 0D 0A 20 20 66 67 65 74 63 28 73 74 64 65 );.. fgetc(stde
0000C0: 72 72 29 3B 0D 0A 20 20 7D 0D 0A 1A 1A 1A 1A 1A rr);.. }.......
0000D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 5F 5F 20 20 20 20 20 20 20 20 7C 20 20 20 __ |
000020: 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 20 20 ..**
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7C 5F |_
000040: 5F 7C 2E 2E 2E 30 30 20 20 76 6C 65 6E 20 20 6F _|...00 vlen o
000050: 70 74 72 20 20 20 20 20 66 6D 74 20 20 20 20 6F ptr fmt o
000060: 62 6A 2E 2E 2E 0D 0A 2A 2A 20 20 20 20 20 20 20 bj.....**
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5F _
000090: 5F 20 20 20 5F 5F 5F 5F 5F 20 20 20 5F 5F 5F 5F _ _____ ____
0000A0: 5F 20 20 20 5F 5F 0D 0A 2A 2A 20 20 20 20 20 66 _ __..** f
0000B0: 6F 72 6D 61 74 20 62 69 74 73 20 28 3C 2D 29 20 ormat bits (<-)
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7C |
0000D0: 5F 5F 7C 20 7C 5F 5F 7C 5F 5F 7C 20 7C 5F 5F 7C __| |__|__| |__|
0000E0: 5F 5F 7C 20 7C 5F 5F 7C 2E 2E 2E 0D 0A 2A 2A 20 __| |__|.....**
0000F0: 20 20 20 20 20 20 33 2D 62 69 74 20 69 6E 73 74 3-bit inst
000100: 72 20 6C 65 6E 67 74 68 20 28 2D 31 29 20 20 20 r length (-1)
000110: 20 20 20 20 20 20 20 20 20 20 20 20 7C 0D 0A 2A |..*
000120: 2A 20 20 20 20 20 20 20 66 69 65 6C 64 20 74 79 * field ty
000130: 70 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 pes
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 56 0D V.
000150: 0A 2A 2A 20 20 20 20 20 20 20 20 20 30 20 3D 20 .** 0 =
000160: 6F 62 6A 20 62 79 74 65 20 20 20 20 20 20 20 20 obj byte
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 6F 70 65 72 61 6E 64 20 70 61 74 74 65 72 6E 0D operand pattern.
000190: 0A 2A 2A 20 20 20 20 20 20 20 30 30 31 20 3D 20 .** 001 =
0001A0: 38 2D 62 69 74 20 65 78 70 72 20 20 20 20 20 20 8-bit expr
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 5F 5F 0D 0A 2A 2A 20 20 20 20 20 20 20 30 31 __..** 01
0001D0: 31 20 3D 20 38 2D 62 69 74 20 70 63 20 72 65 6C 1 = 8-bit pc rel
0001E0: 20 65 78 70 72 20 20 20 20 20 20 20 20 20 20 20 expr
0001F0: 20 20 20 20 7C 5F 5F 7C 2E 2E 2E 30 30 0D 0A 2A |__|...00..*
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 2A 20 20 20 20 20 20 20 31 30 31 20 3D 20 31 36 * 101 = 16
000010: 2D 62 69 74 20 65 78 70 72 0D 0A 2A 2A 20 20 20 -bit expr..**
000020: 20 20 20 20 31 31 31 20 3D 20 31 36 2D 62 69 74 111 = 16-bit
000030: 20 70 63 20 72 65 6C 20 65 78 70 72 0D 0A 2A 2A pc rel expr..**
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 20 20 20 20 20 20 0D 0A 2A 2F 0D 0A ..*/..
000060: 23 69 6E 63 6C 75 64 65 20 3C 73 74 64 69 6F 2E #include <stdio.
000070: 68 3E 0D 0A 23 69 6E 63 6C 75 64 65 20 22 6D 61 h>..#include "ma
000080: 63 2E 68 22 09 2F 2A 20 6D 75 73 74 20 62 65 20 c.h"./* must be
000090: 69 6E 63 6C 75 64 65 64 20 66 69 72 73 74 20 2A included first *
0000A0: 2F 0D 0A 2F 2A 0D 0A 23 64 65 66 69 6E 65 20 4E /../*..#define N
0000B0: 4F 43 43 41 52 47 43 0D 0A 2A 2F 0D 0A 69 6E 74 OCCARGC..*/..int
0000C0: 0D 0A 20 20 6F 70 61 64 6A 2C 09 09 09 2F 2A 20 .. opadj,.../*
0000D0: 6F 70 65 72 61 74 69 6F 6E 20 63 6F 64 65 20 61 operation code a
0000E0: 64 6A 75 73 74 6D 65 6E 74 20 2A 2F 0D 0A 20 20 djustment */..
0000F0: 68 61 73 68 76 61 6C 3B 09 09 09 2F 2A 20 67 6C hashval;.../* gl
000100: 6F 62 61 6C 20 68 61 73 68 20 76 61 6C 75 65 20 obal hash value
000110: 66 6F 72 20 73 70 65 65 64 20 2A 2F 0D 0A 63 68 for speed */..ch
000120: 61 72 0D 0A 20 20 65 78 70 62 75 66 5B 4D 41 58 ar.. expbuf[MAX
000130: 4C 49 4E 45 5D 3B 09 09 2F 2A 20 62 75 66 66 65 LINE];../* buffe
000140: 72 20 66 6F 72 20 6F 70 65 72 61 6E 64 20 65 78 r for operand ex
000150: 70 72 65 73 73 69 6F 6E 73 20 2A 2F 0D 0A 0D 0A pressions */....
000160: 65 78 74 65 72 6E 20 69 6E 74 0D 0A 20 20 6D 69 extern int.. mi
000170: 74 61 62 6C 65 2C 09 09 09 2F 2A 20 6D 61 63 68 table,.../* mach
000180: 69 6E 65 20 69 6E 73 74 72 75 63 74 69 6F 6E 20 ine instruction
000190: 74 61 62 6C 65 20 28 73 69 7A 65 29 20 2A 2F 0D table (size) */.
0001A0: 0A 20 20 6D 69 74 6E 64 78 5B 5D 2C 09 09 09 2F . mitndx[],.../
0001B0: 2A 20 6D 69 74 20 69 6E 64 69 63 65 73 20 28 68 * mit indices (h
0001C0: 61 73 68 20 2D 3E 20 77 68 69 63 68 29 20 2A 2F ash -> which) */
0001D0: 0D 0A 20 20 6D 69 74 6E 78 74 5B 5D 2C 09 09 09 .. mitnxt[],...
0001E0: 2F 2A 20 6D 69 74 20 73 79 6E 6F 6E 79 6D 20 63 /* mit synonym c
0001F0: 68 61 69 6E 20 2A 2F 0D 0A 20 20 6D 69 74 70 74 hain */.. mitpt
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 69 6E 74 65 67 65 72 20 6D /*..** integer m
000010: 61 6E 69 70 75 6C 61 74 69 6F 6E 0D 0A 2A 2F 0D anipulation..*/.
000020: 0A 23 64 65 66 69 6E 65 20 4E 4F 43 43 41 52 47 .#define NOCCARG
000030: 43 0D 0A 67 65 74 69 6E 74 28 61 29 20 69 6E 74 C..getint(a) int
000040: 20 2A 61 3B 20 7B 72 65 74 75 72 6E 20 28 2A 61 *a; {return (*a
000050: 29 3B 7D 09 2F 2A 20 67 65 74 20 69 6E 74 65 67 );}./* get integ
000060: 65 72 20 66 72 6F 6D 20 61 64 64 72 65 73 73 20 er from address
000070: 61 20 2A 2F 0D 0A 70 75 74 69 6E 74 28 61 2C 20 a */..putint(a,
000080: 69 29 20 69 6E 74 20 2A 61 2C 20 69 3B 20 7B 2A i) int *a, i; {*
000090: 61 20 3D 20 69 3B 7D 09 2F 2A 20 70 75 74 20 69 a = i;}./* put i
0000A0: 6E 74 65 67 65 72 20 69 20 61 74 20 61 64 64 72 nteger i at addr
0000B0: 65 73 73 20 61 20 2A 2F 0D 0A 1A 1A 1A 1A 1A 1A ess a */........
0000C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0000F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 72 5B 5D 3B 09 09 09 2F 2A 20 6D 6E 65 6D 6F 6E r[];.../* mnemon
000010: 69 63 20 73 79 6E 74 61 78 20 70 74 72 73 20 2A ic syntax ptrs *
000020: 2F 0D 0A 65 78 74 65 72 6E 20 63 68 61 72 0D 0A /..extern char..
000030: 20 20 6D 69 74 62 75 66 5B 5D 3B 09 09 09 2F 2A mitbuf[];.../*
000040: 20 69 6E 73 74 72 75 63 74 69 6F 6E 20 73 79 6E instruction syn
000050: 74 61 78 20 62 75 66 66 65 72 20 2A 2F 0D 0A 0D tax buffer */...
000060: 0A 65 78 74 65 72 6E 20 69 6E 74 0D 0A 20 20 6C .extern int.. l
000070: 6F 6F 6B 73 3B 09 09 2F 2A 20 6E 75 6D 62 65 72 ooks;../* number
000080: 20 6F 66 20 6C 6F 6F 6B 73 20 74 6F 20 66 69 6E of looks to fin
000090: 64 20 69 74 20 2A 2F 0D 0A 0D 0A 68 61 73 68 28 d it */....hash(
0000A0: 70 74 72 2C 20 63 6E 74 29 20 63 68 61 72 20 2A ptr, cnt) char *
0000B0: 70 74 72 3B 20 69 6E 74 20 63 6E 74 3B 20 7B 09 ptr; int cnt; {.
0000C0: 09 2F 2A 20 63 61 6C 63 75 6C 61 74 65 20 68 61 ./* calculate ha
0000D0: 73 68 20 76 61 6C 75 65 20 2A 2F 0D 0A 20 20 68 sh value */.. h
0000E0: 61 73 68 76 61 6C 20 3D 20 30 3B 0D 0A 20 20 77 ashval = 0;.. w
0000F0: 68 69 6C 65 28 2A 70 74 72 20 3E 20 27 20 27 20 hile(*ptr > ' '
000100: 26 26 20 61 74 65 6E 64 28 2A 70 74 72 29 20 3D && atend(*ptr) =
000110: 3D 20 30 29 0D 0A 20 20 20 20 68 61 73 68 76 61 = 0).. hashva
000120: 6C 20 3D 20 28 68 61 73 68 76 61 6C 20 3C 3C 20 l = (hashval <<
000130: 31 29 20 2B 20 74 6F 75 70 70 65 72 28 2A 70 74 1) + toupper(*pt
000140: 72 2B 2B 29 3B 0D 0A 20 20 72 65 74 75 72 6E 20 r++);.. return
000150: 28 68 61 73 68 76 61 6C 20 25 20 63 6E 74 29 3B (hashval % cnt);
000160: 0D 0A 20 20 7D 0D 0A 0D 0A 66 69 6E 64 28 69 6E .. }....find(in
000170: 73 74 29 20 63 68 61 72 20 2A 69 6E 73 74 3B 20 st) char *inst;
000180: 7B 09 09 09 2F 2A 20 73 65 61 72 63 68 20 66 6F {.../* search fo
000190: 72 20 69 6E 73 74 72 20 69 6E 20 6D 69 74 20 2A r instr in mit *
0001A0: 2F 0D 0A 20 20 63 68 61 72 20 2A 6D 69 74 3B 0D /.. char *mit;.
0001B0: 0A 20 20 69 6E 74 20 68 2C 20 6E 64 78 3B 0D 0A . int h, ndx;..
0001C0: 20 20 6C 6F 6F 6B 73 20 3D 20 30 3B 0D 0A 20 20 looks = 0;..
0001D0: 6E 64 78 20 3D 20 6D 69 74 6E 64 78 5B 68 20 3D ndx = mitndx[h =
0001E0: 20 68 61 73 68 28 69 6E 73 74 2C 20 4D 49 43 4F hash(inst, MICO
0001F0: 55 4E 54 29 5D 3B 09 2F 2A 20 63 61 6C 63 20 68 UNT)];./* calc h
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 61 73 68 20 69 6E 64 65 78 20 2A 2F 0D 0A 20 20 ash index */..
000010: 77 68 69 6C 65 28 6E 64 78 20 21 3D 20 45 4F 46 while(ndx != EOF
000020: 29 20 7B 0D 0A 20 20 20 20 2B 2B 6C 6F 6F 6B 73 ) {.. ++looks
000030: 3B 0D 0A 20 20 20 20 69 66 28 66 6C 64 63 6D 70 ;.. if(fldcmp
000040: 28 69 6E 73 74 2C 20 6D 69 74 20 3D 20 6D 69 74 (inst, mit = mit
000050: 70 74 72 5B 6E 64 78 5D 29 20 3D 3D 20 30 29 20 ptr[ndx]) == 0)
000060: 7B 09 2F 2A 20 6D 6E 65 6D 6F 6E 69 63 20 6D 61 {./* mnemonic ma
000070: 74 63 68 65 73 20 2A 2F 0D 0A 20 20 20 20 20 20 tches */..
000080: 69 6E 73 74 20 3D 20 73 6B 69 70 28 32 2C 20 69 inst = skip(2, i
000090: 6E 73 74 29 3B 09 09 09 2F 2A 20 69 6E 73 74 72 nst);.../* instr
0000A0: 20 6F 70 65 72 61 6E 64 20 66 69 65 6C 64 20 2A operand field *
0000B0: 2F 0D 0A 20 20 20 20 20 20 6D 69 74 20 2B 3D 20 /.. mit +=
0000C0: 73 74 72 6C 65 6E 28 6D 69 74 29 20 2B 20 31 3B strlen(mit) + 1;
0000D0: 09 09 09 2F 2A 20 66 69 72 73 74 20 76 61 72 69 .../* first vari
0000E0: 61 6E 74 20 2A 2F 0D 0A 20 20 20 20 20 20 77 68 ant */.. wh
0000F0: 69 6C 65 28 2A 6D 69 74 2B 2B 29 20 7B 09 09 09 ile(*mit++) {...
000100: 09 2F 2A 20 61 6E 6F 74 68 65 72 20 76 61 72 69 ./* another vari
000110: 61 6E 74 3F 20 2A 2F 0D 0A 20 20 20 20 20 20 20 ant? */..
000120: 20 2B 2B 6C 6F 6F 6B 73 3B 0D 0A 20 20 20 20 20 ++looks;..
000130: 20 20 20 69 66 28 6D 61 74 63 68 28 69 6E 73 74 if(match(inst
000140: 2C 20 67 65 74 69 6E 74 28 6D 69 74 29 29 29 20 , getint(mit)))
000150: 72 65 74 75 72 6E 20 28 6D 69 74 29 3B 0D 0A 20 return (mit);..
000160: 20 20 20 20 20 20 20 6D 69 74 20 2B 3D 20 2A 28 mit += *(
000170: 6D 69 74 20 2D 20 31 29 3B 09 09 09 2F 2A 20 6E mit - 1);.../* n
000180: 65 78 74 20 76 61 72 69 61 6E 74 20 2A 2F 0D 0A ext variant */..
000190: 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 }..
0001A0: 20 72 65 74 75 72 6E 20 28 30 29 3B 0D 0A 20 20 return (0);..
0001B0: 20 20 20 20 7D 0D 0A 20 20 20 20 69 66 28 28 68 }.. if((h
0001C0: 20 3D 20 6D 69 74 6E 78 74 5B 68 5D 29 20 3D 3D = mitnxt[h]) ==
0001D0: 20 45 4F 46 29 20 72 65 74 75 72 6E 20 28 30 29 EOF) return (0)
0001E0: 3B 0D 0A 20 20 20 20 6E 64 78 20 3D 20 6D 69 74 ;.. ndx = mit
0001F0: 6E 64 78 5B 68 5D 3B 0D 0A 20 20 20 20 7D 0D 0A ndx[h];.. }..
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 6D 69 74 2E 63 20 2D 2D 20 /*..** mit.c --
000010: 6D 61 63 68 69 6E 65 20 69 6E 73 74 72 75 63 74 machine instruct
000020: 69 6F 6E 20 74 61 62 6C 65 20 66 75 6E 63 74 69 ion table functi
000030: 6F 6E 73 0D 0A 2A 2A 0D 0A 2A 2A 20 20 20 20 20 ons..**..**
000040: 20 20 20 20 20 6D 69 74 6E 64 78 5B 5D 20 20 20 mitndx[]
000050: 20 20 6D 69 74 70 74 72 5B 5D 20 20 20 20 6D 69 mitptr[] mi
000060: 74 6E 78 74 5B 5D 0D 0A 2A 2A 20 20 20 20 20 20 tnxt[]..**
000070: 20 20 20 20 20 5F 5F 5F 5F 5F 20 20 20 20 20 20 _____
000080: 20 20 5F 5F 5F 5F 5F 20 20 20 20 20 20 20 5F 5F _____ __
000090: 5F 5F 5F 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 ___..**
0000A0: 20 7C 5F 5F 7C 5F 5F 7C 20 20 20 20 20 20 7C 5F |__|__| |_
0000B0: 5F 7C 5F 5F 7C 20 20 20 20 20 7C 5F 5F 7C 5F 5F _|__| |__|__
0000C0: 7C 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 7C |..** |
0000D0: 5F 5F 7C 5F 5F 7C 20 20 20 20 20 20 7C 5F 5F 7C __|__| |__|
0000E0: 5F 5F 7C 20 20 20 20 20 7C 5F 5F 7C 5F 5F 7C 3C __| |__|__|<
0000F0: 2D 2B 0D 0A 2A 2A 20 68 61 73 68 20 2D 3E 20 20 -+..** hash ->
000100: 7C 5F 5F 7C 5F 5F 7C 20 20 2D 3E 20 20 7C 5F 5F |__|__| -> |__
000110: 7C 5F 5F 7C 20 20 20 20 20 7C 5F 5F 7C 5F 5F 7C |__| |__|__|
000120: 20 20 7C 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 |..**
000130: 20 7C 5F 5F 7C 5F 5F 7C 20 20 20 20 20 20 7C 5F |__|__| |_
000140: 5F 7C 5F 5F 7C 20 20 20 20 20 7C 5F 5F 7C 5F 5F _|__| |__|__
000150: 7C 2D 2D 2B 0D 0A 2A 2A 20 20 20 20 20 20 20 20 |--+..**
000160: 20 20 7C 5F 5F 7C 5F 5F 7C 20 20 20 20 20 20 7C |__|__| |
000170: 5F 5F 7C 5F 5F 7C 20 20 20 20 20 7C 5F 5F 7C 5F __|__| |__|_
000180: 5F 7C 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 _|..**
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 7C 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 20 |..**
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 56 V
0001C0: 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 20 20 20 ..**
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6D 6E mn
0001E0: 65 6D 6F 6E 69 63 20 20 20 76 61 72 69 61 6E 74 emonic variant
0001F0: 2E 2E 2E 0D 0A 2A 2A 20 20 20 20 20 20 20 20 20 .....**
Size : 512 (Real : 512)
000000: 20 20 72 65 74 75 72 6E 20 28 30 29 3B 0D 0A 20 return (0);..
000010: 20 7D 0D 0A 0D 0A 6D 61 74 63 68 28 69 6E 73 74 }....match(inst
000020: 2C 20 6D 69 74 29 20 63 68 61 72 20 2A 69 6E 73 , mit) char *ins
000030: 74 2C 20 2A 6D 69 74 3B 20 7B 09 09 2F 2A 20 6D t, *mit; {../* m
000040: 61 74 63 68 20 6F 70 65 72 61 6E 64 73 20 74 6F atch operands to
000050: 20 6D 69 74 20 2A 2F 0D 0A 20 20 63 68 61 72 20 mit */.. char
000060: 2A 62 61 63 6B 75 70 2C 20 2A 65 78 70 3B 20 69 *backup, *exp; i
000070: 6E 74 20 6E 65 73 74 3B 0D 0A 20 20 6F 70 61 64 nt nest;.. opad
000080: 6A 20 3D 20 30 3B 0D 0A 20 20 62 61 63 6B 75 70 j = 0;.. backup
000090: 20 3D 20 69 6E 73 74 3B 0D 0A 20 20 69 66 28 6D = inst;.. if(m
0000A0: 69 74 20 3D 3D 20 30 29 20 7B 0D 0A 20 20 20 20 it == 0) {..
0000B0: 69 66 28 61 74 65 6E 64 28 2A 69 6E 73 74 29 29 if(atend(*inst))
0000C0: 20 72 65 74 75 72 6E 20 28 59 45 53 29 3B 0D 0A return (YES);..
0000D0: 20 20 20 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B return (NO);
0000E0: 0D 0A 20 20 20 20 7D 0D 0A 20 20 65 78 70 20 3D .. }.. exp =
0000F0: 20 65 78 70 62 75 66 3B 09 09 09 09 09 2F 2A 20 expbuf;...../*
000100: 69 6E 69 74 20 65 78 70 72 20 62 75 66 66 65 72 init expr buffer
000110: 20 2A 2F 0D 0A 20 20 77 68 69 6C 65 28 59 45 53 */.. while(YES
000120: 29 20 7B 0D 0A 20 20 20 20 77 68 69 6C 65 28 69 ) {.. while(i
000130: 73 73 70 61 63 65 28 2A 69 6E 73 74 29 29 20 2B sspace(*inst)) +
000140: 2B 69 6E 73 74 3B 0D 0A 20 20 20 20 77 68 69 6C +inst;.. whil
000150: 65 28 69 73 73 70 61 63 65 28 2A 6D 69 74 29 29 e(isspace(*mit))
000160: 20 2B 2B 6D 69 74 3B 0D 0A 20 20 20 20 69 66 28 ++mit;.. if(
000170: 61 74 65 6E 64 28 2A 69 6E 73 74 29 29 20 7B 0D atend(*inst)) {.
000180: 0A 20 20 20 20 20 20 69 66 28 61 74 65 6E 64 28 . if(atend(
000190: 2A 6D 69 74 29 20 7C 7C 20 2A 6D 69 74 20 3D 3D *mit) || *mit ==
0001A0: 20 41 4E 4F 54 48 45 52 29 20 72 65 74 75 72 6E ANOTHER) return
0001B0: 20 28 59 45 53 29 3B 0D 0A 20 20 20 20 20 20 67 (YES);.. g
0001C0: 6F 74 6F 20 6E 65 78 74 3B 0D 0A 20 20 20 20 20 oto next;..
0001D0: 20 7D 0D 0A 20 20 20 20 69 66 28 61 74 65 6E 64 }.. if(atend
0001E0: 28 2A 6D 69 74 29 29 20 72 65 74 75 72 6E 20 28 (*mit)) return (
0001F0: 4E 4F 29 3B 0D 0A 20 20 20 20 69 66 28 69 73 6C NO);.. if(isl
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 72 65 71 2E 63 20 2D 2D 20 /*..** req.c --
000010: 72 65 71 75 65 73 74 20 75 73 65 72 20 69 6E 70 request user inp
000020: 75 74 0D 0A 2A 2F 0D 0A 23 69 6E 63 6C 75 64 65 ut..*/..#include
000030: 20 3C 73 74 64 69 6F 2E 68 3E 0D 0A 0D 0A 72 65 <stdio.h>....re
000040: 71 6E 62 72 28 70 72 6F 6D 70 74 2C 20 6E 62 72 qnbr(prompt, nbr
000050: 29 20 63 68 61 72 20 70 72 6F 6D 70 74 5B 5D 3B ) char prompt[];
000060: 20 69 6E 74 20 2A 6E 62 72 3B 20 7B 09 09 2F 2A int *nbr; {../*
000070: 20 72 65 71 75 65 73 74 20 6E 75 6D 62 65 72 20 request number
000080: 2A 2F 0D 0A 20 20 63 68 61 72 20 73 74 72 5B 32 */.. char str[2
000090: 30 5D 3B 0D 0A 20 20 69 6E 74 20 73 7A 3B 0D 0A 0];.. int sz;..
0000A0: 20 20 69 66 28 69 73 63 6F 6E 73 28 73 74 64 69 if(iscons(stdi
0000B0: 6E 29 29 20 7B 0D 0A 20 20 20 20 70 75 74 73 28 n)) {.. puts(
0000C0: 22 22 29 3B 0D 0A 20 20 20 20 66 70 75 74 73 28 "");.. fputs(
0000D0: 70 72 6F 6D 70 74 2C 20 73 74 64 6F 75 74 29 3B prompt, stdout);
0000E0: 0D 0A 20 20 20 20 7D 0D 0A 20 20 67 65 74 73 74 .. }.. getst
0000F0: 72 28 73 74 72 2C 20 32 30 29 3B 0D 0A 20 20 69 r(str, 20);.. i
000100: 66 28 28 73 7A 20 3D 20 75 74 6F 69 28 73 74 72 f((sz = utoi(str
000110: 2C 20 6E 62 72 29 29 20 3C 20 30 20 7C 7C 20 73 , nbr)) < 0 || s
000120: 74 72 5B 73 7A 5D 29 20 72 65 74 75 72 6E 20 28 tr[sz]) return (
000130: 4E 4F 29 3B 0D 0A 20 20 72 65 74 75 72 6E 20 28 NO);.. return (
000140: 59 45 53 29 3B 0D 0A 20 20 7D 0D 0A 0D 0A 72 65 YES);.. }....re
000150: 71 73 74 72 28 70 72 6F 6D 70 74 2C 20 73 74 72 qstr(prompt, str
000160: 2C 20 73 7A 29 20 63 68 61 72 20 70 72 6F 6D 70 , sz) char promp
000170: 74 5B 5D 2C 20 2A 73 74 72 3B 20 69 6E 74 20 73 t[], *str; int s
000180: 7A 3B 20 7B 09 2F 2A 20 72 65 71 75 65 73 74 20 z; {./* request
000190: 73 74 72 69 6E 67 20 2A 2F 0D 0A 20 20 69 66 28 string */.. if(
0001A0: 69 73 63 6F 6E 73 28 73 74 64 69 6E 29 29 20 7B iscons(stdin)) {
0001B0: 0D 0A 20 20 20 20 70 75 74 73 28 22 22 29 3B 0D .. puts("");.
0001C0: 0A 20 20 20 20 66 70 75 74 73 28 70 72 6F 6D 70 . fputs(promp
0001D0: 74 2C 20 73 74 64 6F 75 74 29 3B 0D 0A 20 20 20 t, stdout);..
0001E0: 20 7D 0D 0A 20 20 67 65 74 73 74 72 28 73 74 72 }.. getstr(str
0001F0: 2C 20 73 7A 29 3B 0D 0A 20 20 72 65 74 75 72 6E , sz);.. return
Size : 512 (Real : 512)
000000: 6F 77 65 72 28 2A 6D 69 74 29 29 20 7B 09 09 09 ower(*mit)) {...
000010: 09 2F 2A 20 65 78 70 72 65 73 73 69 6F 6E 20 2A ./* expression *
000020: 2F 0D 0A 20 20 20 20 20 20 2B 2B 6D 69 74 3B 09 /.. ++mit;.
000030: 09 09 09 09 2F 2A 20 62 75 6D 70 20 70 61 73 74 ..../* bump past
000040: 20 78 20 6F 72 20 79 20 2A 2F 0D 0A 20 20 20 20 x or y */..
000050: 20 20 6E 65 73 74 20 3D 20 30 3B 0D 0A 20 20 20 nest = 0;..
000060: 20 20 20 77 68 69 6C 65 28 21 61 74 65 6E 64 28 while(!atend(
000070: 2A 69 6E 73 74 29 29 20 7B 09 09 09 2F 2A 20 62 *inst)) {.../* b
000080: 79 70 61 73 73 20 65 78 70 72 65 73 73 69 6F 6E ypass expression
000090: 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 69 66 28 */.. if(
0000A0: 2A 69 6E 73 74 20 3D 3D 20 27 2C 27 29 20 62 72 *inst == ',') br
0000B0: 65 61 6B 3B 0D 0A 20 20 20 20 20 20 20 20 69 66 eak;.. if
0000C0: 28 2A 69 6E 73 74 20 3D 3D 20 27 29 27 20 26 26 (*inst == ')' &&
0000D0: 20 6E 65 73 74 20 3D 3D 20 30 29 20 62 72 65 61 nest == 0) brea
0000E0: 6B 3B 0D 0A 20 20 20 20 20 20 20 20 73 77 69 74 k;.. swit
0000F0: 63 68 28 2A 69 6E 73 74 29 20 7B 0D 0A 20 20 20 ch(*inst) {..
000100: 20 20 20 20 20 20 20 63 61 73 65 20 27 28 27 3A case '(':
000110: 20 2B 2B 6E 65 73 74 3B 20 62 72 65 61 6B 3B 0D ++nest; break;.
000120: 0A 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 . case
000130: 27 29 27 3A 20 2D 2D 6E 65 73 74 3B 0D 0A 20 20 ')': --nest;..
000140: 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 20 }..
000150: 20 20 20 2A 65 78 70 2B 2B 20 3D 20 2A 69 6E 73 *exp++ = *ins
000160: 74 2B 2B 3B 09 09 09 2F 2A 20 65 78 74 72 61 63 t++;.../* extrac
000170: 74 20 65 78 70 72 65 73 73 69 6F 6E 73 20 2A 2F t expressions */
000180: 0D 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 .. }..
000190: 20 20 20 2A 65 78 70 2B 2B 20 3D 20 27 2C 27 3B *exp++ = ',';
0001A0: 20 2A 65 78 70 20 3D 20 4E 55 4C 4C 3B 09 09 2F *exp = NULL;../
0001B0: 2A 20 74 65 72 6D 69 6E 61 74 65 20 65 78 70 72 * terminate expr
0001C0: 65 73 73 69 6F 6E 20 2A 2F 0D 0A 20 20 20 20 20 ession */..
0001D0: 20 63 6F 6E 74 69 6E 75 65 3B 0D 0A 20 20 20 20 continue;..
0001E0: 20 20 7D 0D 0A 20 20 20 20 69 66 28 6C 65 78 6F }.. if(lexo
0001F0: 72 64 65 72 28 2A 69 6E 73 74 2B 2B 2C 20 2A 6D rder(*inst++, *m
Size : 512 (Real : 512)
000000: 20 28 2A 73 74 72 29 3B 09 09 09 2F 2A 20 6E 75 (*str);.../* nu
000010: 6C 6C 20 6E 61 6D 65 20 72 65 74 75 72 6E 73 20 ll name returns
000020: 66 61 6C 73 65 20 2A 2F 0D 0A 20 20 7D 0D 0A 0D false */.. }...
000030: 0A 67 65 74 73 74 72 28 73 74 72 2C 20 73 7A 29 .getstr(str, sz)
000040: 20 63 68 61 72 20 2A 73 74 72 3B 20 69 6E 74 20 char *str; int
000050: 73 7A 3B 20 7B 09 2F 2A 20 67 65 74 20 73 74 72 sz; {./* get str
000060: 69 6E 67 20 66 72 6F 6D 20 75 73 65 72 20 2A 2F ing from user */
000070: 0D 0A 20 20 63 68 61 72 20 2A 63 70 3B 0D 0A 20 .. char *cp;..
000080: 20 66 67 65 74 73 28 73 74 72 2C 20 73 7A 2C 20 fgets(str, sz,
000090: 73 74 64 69 6E 29 3B 0D 0A 20 20 69 66 28 69 73 stdin);.. if(is
0000A0: 63 6F 6E 73 28 73 74 64 69 6E 29 20 26 26 20 21 cons(stdin) && !
0000B0: 69 73 63 6F 6E 73 28 73 74 64 6F 75 74 29 29 0D iscons(stdout)).
0000C0: 0A 20 20 20 20 20 66 70 75 74 73 28 73 74 72 2C . fputs(str,
0000D0: 20 73 74 64 6F 75 74 29 3B 09 09 2F 2A 20 65 63 stdout);../* ec
0000E0: 68 6F 20 2A 2F 0D 0A 20 20 63 70 20 3D 20 73 74 ho */.. cp = st
0000F0: 72 3B 0D 0A 20 20 77 68 69 6C 65 28 2A 63 70 29 r;.. while(*cp)
000100: 20 7B 09 09 09 09 2F 2A 20 74 72 69 6D 20 63 74 {..../* trim ct
000110: 6C 20 63 68 61 72 73 20 26 20 6D 61 6B 65 20 75 l chars & make u
000120: 63 20 2A 2F 0D 0A 20 20 20 20 69 66 28 2A 63 70 c */.. if(*cp
000130: 20 3D 3D 20 27 5C 6E 27 29 20 62 72 65 61 6B 3B == '\n') break;
000140: 0D 0A 20 20 20 20 69 66 28 69 73 70 72 69 6E 74 .. if(isprint
000150: 28 2A 73 74 72 20 3D 20 74 6F 75 70 70 65 72 28 (*str = toupper(
000160: 2A 63 70 2B 2B 29 29 29 20 2B 2B 73 74 72 3B 0D *cp++))) ++str;.
000170: 0A 20 20 20 20 7D 0D 0A 20 20 2A 73 74 72 20 3D . }.. *str =
000180: 20 4E 55 4C 4C 3B 0D 0A 20 20 7D 0D 0A 1A 1A 1A NULL;.. }.....
000190: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001A0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001B0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
Size : 512 (Real : 512)
000000: 69 74 2B 2B 29 29 20 7B 0D 0A 20 20 20 20 20 20 it++)) {..
000010: 6E 65 78 74 3A 0D 0A 20 20 20 20 20 20 77 68 69 next:.. whi
000020: 6C 65 28 2A 6D 69 74 29 20 7B 0D 0A 20 20 20 20 le(*mit) {..
000030: 20 20 20 20 69 66 28 2A 6D 69 74 20 3D 3D 20 41 if(*mit == A
000040: 4E 4F 54 48 45 52 29 20 7B 09 09 2F 2A 20 65 6E NOTHER) {../* en
000050: 64 20 6F 66 20 73 79 6E 74 61 78 20 66 6F 72 20 d of syntax for
000060: 74 68 69 73 20 74 72 79 20 2A 2F 0D 0A 20 20 20 this try */..
000070: 20 20 20 20 20 20 20 2B 2B 6F 70 61 64 6A 3B 09 ++opadj;.
000080: 09 09 2F 2A 20 62 75 6D 70 20 6F 70 63 6F 64 65 ../* bump opcode
000090: 20 61 64 6A 75 73 74 6D 65 6E 74 20 2A 2F 0D 0A adjustment */..
0000A0: 20 20 20 20 20 20 20 20 20 20 2B 2B 6D 69 74 3B ++mit;
0000B0: 20 69 6E 73 74 20 3D 20 62 61 63 6B 75 70 3B 09 inst = backup;.
0000C0: 09 2F 2A 20 73 65 74 75 70 20 6E 65 78 74 20 74 ./* setup next t
0000D0: 72 79 20 2A 2F 0D 0A 20 20 20 20 20 20 20 20 20 ry */..
0000E0: 20 65 78 70 20 3D 20 65 78 70 62 75 66 3B 09 09 exp = expbuf;..
0000F0: 09 2F 2A 20 72 65 73 65 74 20 65 78 70 72 20 62 ./* reset expr b
000100: 75 66 66 65 72 20 70 6F 69 6E 74 65 72 20 2A 2F uffer pointer */
000110: 0D 0A 20 20 20 20 20 20 20 20 20 20 62 72 65 61 .. brea
000120: 6B 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 7D 0D k;.. }.
000130: 0A 20 20 20 20 20 20 20 20 2B 2B 6D 69 74 3B 0D . ++mit;.
000140: 0A 20 20 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 . }..
000150: 20 20 69 66 28 61 74 65 6E 64 28 2A 6D 69 74 29 if(atend(*mit)
000160: 29 20 72 65 74 75 72 6E 20 28 4E 4F 29 3B 0D 0A ) return (NO);..
000170: 20 20 20 20 20 20 7D 0D 0A 20 20 20 20 7D 0D 0A }.. }..
000180: 20 20 7D 0D 0A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A }.............
000190: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001A0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001B0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001C0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001D0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001E0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
0001F0: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 2F 2A 0D 0A 2A 2A 20 72 65 6C 2E 63 20 2D 2D 20 /*..** rel.c --
000010: 63 6F 6D 6D 6F 6E 20 64 61 74 61 20 66 6F 72 20 common data for
000020: 52 45 4C 20 66 69 6C 65 20 70 72 6F 63 65 73 73 REL file process
000030: 69 6E 67 0D 0A 2A 2F 0D 0A 09 09 09 2F 2A 20 63 ing..*/...../* c
000040: 6F 6D 6D 6F 6E 20 76 61 72 69 61 62 6C 65 73 20 ommon variables
000050: 2A 2F 0D 0A 69 6E 74 0D 0A 20 69 6E 72 65 6C 2C */..int.. inrel,
000060: 09 09 09 2F 2A 20 66 69 6C 65 20 64 65 73 63 72 .../* file descr
000070: 69 70 74 6F 72 20 66 6F 72 20 69 6E 70 75 74 20 iptor for input
000080: 52 45 4C 20 66 69 6C 65 20 2A 2F 0D 0A 20 69 6E REL file */.. in
000090: 72 65 6D 20 3D 20 30 2C 09 09 2F 2A 20 72 65 6D rem = 0,../* rem
0000A0: 61 69 6E 69 6E 67 20 62 69 74 73 20 69 6E 20 69 aining bits in i
0000B0: 6E 70 75 74 20 63 68 75 6E 6B 20 2A 2F 0D 0A 20 nput chunk */..
0000C0: 69 6E 63 68 75 6E 6B 2C 09 09 2F 2A 20 63 75 72 inchunk,../* cur
0000D0: 72 65 6E 74 20 63 68 75 6E 6B 20 66 72 6F 6D 20 rent chunk from
0000E0: 52 45 4C 20 66 69 6C 65 20 2A 2F 0D 0A 20 6F 75 REL file */.. ou
0000F0: 74 72 65 6C 2C 09 09 2F 2A 20 66 69 6C 65 20 64 trel,../* file d
000100: 65 73 63 72 69 70 74 6F 72 20 66 6F 72 20 6F 75 escriptor for ou
000110: 74 70 75 74 20 52 45 4C 20 66 69 6C 65 20 2A 2F tput REL file */
000120: 0D 0A 20 6F 75 74 72 65 6D 20 3D 20 38 2C 09 09 .. outrem = 8,..
000130: 2F 2A 20 72 65 6D 61 69 6E 69 6E 67 20 62 69 74 /* remaining bit
000140: 73 20 69 6E 20 6F 75 74 70 75 74 20 63 68 75 6E s in output chun
000150: 6B 20 2A 2F 0D 0A 20 6F 75 74 63 68 75 6E 6B 2C k */.. outchunk,
000160: 09 09 2F 2A 20 63 75 72 72 65 6E 74 20 63 68 75 ../* current chu
000170: 6E 6B 20 66 6F 72 20 52 45 4C 20 66 69 6C 65 20 nk for REL file
000180: 2A 2F 0D 0A 20 69 74 65 6D 2C 09 09 09 2F 2A 20 */.. item,.../*
000190: 63 75 72 72 65 6E 74 20 69 74 65 6D 20 63 6F 64 current item cod
0001A0: 65 20 2A 2F 0D 0A 20 74 79 70 65 2C 09 09 09 2F e */.. type,.../
0001B0: 2A 20 74 79 70 65 20 66 69 65 6C 64 20 2A 2F 0D * type field */.
0001C0: 0A 20 66 69 65 6C 64 3B 09 09 09 2F 2A 20 63 75 . field;.../* cu
0001D0: 72 72 65 6E 74 20 62 69 74 20 66 69 65 6C 64 20 rrent bit field
0001E0: 2A 2F 0D 0A 63 68 61 72 0D 0A 20 73 79 6D 62 6F */..char.. symbo
0001F0: 6C 5B 39 5D 3B 09 09 2F 2A 20 63 75 72 72 65 6E l[9];../* curren
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 74 20 73 74 72 69 6E 67 20 2A 2F 0D 0A 1A 1A 1A t string */.....
000010: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000020: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000030: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000040: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000050: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000060: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000070: 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A ................
000080: 52 45 4C 20 66 69 6C 65 20 2A 2F 0D 0A 20 69 6E REL file */.. in
000090: 72 65 6D 20 3D 20 30 2C 09 09 2F 2A 20 72 65 6D rem = 0,../* rem
0000A0: 61 69 6E 69 6E 67 20 62 69 74 73 20 69 6E 20 69 aining bits in i
0000B0: 6E 70 75 74 20 63 68 75 6E 6B 20 2A 2F 0D 0A 20 nput chunk */..
0000C0: 69 6E 63 68 75 6E 6B 2C 09 09 2F 2A 20 63 75 72 inchunk,../* cur
0000D0: 72 65 6E 74 20 63 68 75 6E 6B 20 66 72 6F 6D 20 rent chunk from
0000E0: 52 45 4C 20 66 69 6C 65 20 2A 2F 0D 0A 20 6F 75 REL file */.. ou
0000F0: 74 72 65 6C 2C 09 09 2F 2A 20 66 69 6C 65 20 64 trel,../* file d
000100: 65 73 63 72 69 70 74 6F 72 20 66 6F 72 20 6F 75 escriptor for ou
000110: 74 70 75 74 20 52 45 4C 20 66 69 6C 65 20 2A 2F tput REL file */
000120: 0D 0A 20 6F 75 74 72 65 6D 20 3D 20 38 2C 09 09 .. outrem = 8,..
000130: 2F 2A 20 72 65 6D 61 69 6E 69 6E 67 20 62 69 74 /* remaining bit
000140: 73 20 69 6E 20 6F 75 74 70 75 74 20 63 68 75 6E s in output chun
000150: 6B 20 2A 2F 0D 0A 20 6F 75 74 63 68 75 6E 6B 2C k */.. outchunk,
000160: 09 09 2F 2A 20 63 75 72 72 65 6E 74 20 63 68 75 ../* current chu
000170: 6E 6B 20 66 6F 72 20 52 45 4C 20 66 69 6C 65 20 nk for REL file
000180: 2A 2F 0D 0A 20 69 74 65 6D 2C 09 09 09 2F 2A 20 */.. item,.../*
000190: 63 75 72 72 65 6E 74 20 69 74 65 6D 20 63 6F 64 current item cod
0001A0: 65 20 2A 2F 0D 0A 20 74 79 70 65 2C 09 09 09 2F e */.. type,.../
0001B0: 2A 20 74 79 70 65 20 66 69 65 6C 64 20 2A 2F 0D * type field */.
0001C0: 0A 20 66 69 65 6C 64 3B 09 09 09 2F 2A 20 63 75 . field;.../* cu
0001D0: 72 72 65 6E 74 20 62 69 74 20 66 69 65 6C 64 20 rrent bit field
0001E0: 2A 2F 0D 0A 63 68 61 72 0D 0A 20 73 79 6D 62 6F */..char.. symbo
0001F0: 6C 5B 39 5D 3B 09 09 2F 2A 20 63 75 72 72 65 6E l[9];../* curren
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 128 (Real : 128)
000000: 01 02 03 04 05 00 03 00 30 80 00 00 10 00 88 04 ........0.......
000010: 09 18 55 51 00 01 00 35 32 33 2D 30 33 37 43 20 ..UQ...523-037C
000020: 20 20 20 20 20 20 20 53 43 48 4E 45 49 44 45 52 SCHNEIDER
000030: 20 44 55 50 20 33 22 2D 31 30 30 2F 34 30 20 32 DUP 3"-100/40 2
000040: 53 20 44 44 20 53 53 00 00 20 20 20 20 20 20 20 S DD SS..
000050: 20 20 20 20 20 20 20 00 00 00 00 37 30 32 39 32 ....70292
000060: 2D 30 30 77 00 04 00 77 00 8E 01 00 00 00 00 00 -00w...w........
000070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
   
Tous droits réservés. Reproduction sans autorisation interdite. © Kukulcan