| MODULE GraphTool; (*NW 8.8.2013*) |
| | .MODULE GraphTool (KEY 682929EE, VERSION 1, SIZE 00001D98) |
| | .IMPORT Files (KEY 73F5D686) |
| | .IMPORT Texts (KEY 0B9E9984) |
| | .IMPORT Fonts (KEY F4C9F557) |
| | .IMPORT Oberon (KEY A89CCEE2) |
| | .IMPORT Display (KEY 4C08D3EA) |
| | .IMPORT Viewers (KEY 25ABF199) |
| | .DATA 28H |
| | .STRING 28H "decode " |
| | .STRING 30H "other class =" |
| | .STRING 40H " not a graphics file" |
| | .STRING 58H " not found" |
| | .STRING 64H "decode " |
| | .STRING 6CH "other class =" |
| | .STRING 7CH " not a graphics file" |
| | .STRING 94H " not found" |
| | .STRING A0H "decode library1 " |
| | .STRING B4H "other class =" |
| | .STRING C4H "---" |
| | .STRING C8H " not a graphics library" |
| | .STRING E0H " not found" |
| | .STRING ECH "convert library " |
| | .STRING 100H " => " |
| | .STRING 108H "alien class " |
| | .STRING 118H " not a graphics library" |
| | .STRING 130H " done" |
| | .STRING 138H " not found" |
| | .STRING 144H "GraphTool 8.8.2013" |
| | .POINTER_REFERENCES 0H 4H 24H 18H |
| | .FIXUP T 0H |
| IMPORT Files, Texts, Oberon; |
| |
| CONST Context = 0; Line = 1; Caption = 2; Macro = 3; Rectangles = 4; |
| VAR W: Texts.Writer; |
| |
| PROCEDURE DecGraph*; |
| VAR ch: CHAR; |
| class, col, fno, cat, inx, libno: BYTE; |
| xy, wh: INTEGER; |
| name: ARRAY 32 OF CHAR; |
| F: Files.File; R: Files.Rider; |
| S: Texts.Scanner; |
| BEGINa Texts.OpenScanner(S,b Oberon.Par.text,c Oberon.Par.pos)d;e Texts.Scan(S)f;g |
| 0000 | a .PROC 1 |
| 0000 | a .COMMAND DecGraph |
| 0000 | a(4EE900C4): SUB SP, SP, C4H |
| 0001 | a(AFE00000): STR LNK, SP, 0H |
| 0002 | b(40E80050): ADD R0, SP, 50H |
| 0003 | b .FIXUP D |
| 0003 | b(8D200003): LDR SB, MT, MOD2 [Texts] |
| 0004 | b(41D80003): ADD R1, SB, VAR3 |
| 0005 | c .FIXUP D |
| 0005 | c(8D400002): LDR SB, MT, MOD4 [Oberon] |
| 0006 | c(42D8000E): ADD R2, SB, VAR14 |
| 0007 | c(82200008): LDR R2, R2, 8H |
| 0008 | d .FIXUP D |
| 0008 | d(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 0009 | d(43D8000E): ADD R3, SB, VAR14 |
| 000A | d(8330000C): LDR R3, R3, CH |
| 000B | e .FIXUP P |
| 000B | e(F721500B): BL MOD2 [Texts] PROC21 |
| 000C | f(40E80050): ADD R0, SP, 50H |
| 000D | f .FIXUP D |
| 000D | f(8D200005): LDR SB, MT, MOD2 [Texts] |
| 000E | f(41D80003): ADD R1, SB, VAR3 |
| 000F | g .FIXUP P |
| 000F | g(F7216004): BL MOD2 [Texts] PROC22 |
| IF S.class = Texts.Name THENh |
| 0010 | h(80E0008C): LDR R0, SP, 8CH |
| 0011 | h(40090001): SUB R0, R0, 1H |
| 0012 | h(E900016D): BNE 365 [0180H] |
| Texts.WriteString(W,i "decode ")j;k Texts.WriteString(W,l S.s)m;n |
| 0013 | i .FIXUP D |
| 0013 | i(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 0014 | i(40D80000): ADD R0, SB, 0H [data] |
| 0015 | i .FIXUP D |
| 0015 | i(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0016 | i(41D80005): ADD R1, SB, VAR5 |
| 0017 | j .FIXUP D |
| 0017 | j(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 0018 | j(42D80028): ADD R2, SB, 28H ["decode "] |
| 0019 | j(43000008): MOV R3, R0, 8H |
| 001A | k .FIXUP P |
| 001A | k(F721D00B): BL MOD2 [Texts] PROC29 |
| 001B | l .FIXUP D |
| 001B | l(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 001C | l(40D80000): ADD R0, SB, 0H [data] |
| 001D | l .FIXUP D |
| 001D | l(8D200002): LDR SB, MT, MOD2 [Texts] |
| 001E | l(41D80005): ADD R1, SB, VAR5 |
| 001F | m(42E800A4): ADD R2, SP, A4H |
| 0020 | m(43000020): MOV R3, R0, 20H |
| 0021 | n .FIXUP P |
| 0021 | n(F721D007): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)o;p Texts.Append(Oberon.Log,q W.buf)r;s |
| 0022 | o .FIXUP D |
| 0022 | o(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0023 | o(40D80000): ADD R0, SB, 0H [data] |
| 0024 | o .FIXUP D |
| 0024 | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0025 | o(41D80005): ADD R1, SB, VAR5 |
| 0026 | p .FIXUP P |
| 0026 | p(F721C005): BL MOD2 [Texts] PROC28 |
| 0027 | q .FIXUP D |
| 0027 | q(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 0028 | q(80D0000D): LDR R0, SB, VAR13 |
| 0029 | r .FIXUP D |
| 0029 | r(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 002A | r(81D00000): LDR R1, SB, 0H [data] |
| 002B | s .FIXUP P |
| 002B | s(F720E005): BL MOD2 [Texts] PROC14 |
| F := Files.Old(S.s)t;u |
| 002C | t(40E800A4): ADD R0, SP, A4H |
| 002D | t(41000020): MOV R1, R0, 20H |
| 002E | u .FIXUP P |
| 002E | u(F7102003): BL MOD1 [Files] PROC2 |
| 002F | u(A0E00034): STR R0, SP, 34H |
| IF F # NIL THENv |
| 0030 | v(80E00034): LDR R0, SP, 34H |
| 0031 | v(E100013C): BEQ 316 [016EH] |
| Files.Set(R,w F,x 0)y;z Files.Read(R,a ch)b;c |
| 0032 | w(40E80038): ADD R0, SP, 38H |
| 0033 | w .FIXUP D |
| 0033 | w(8D10000A): LDR SB, MT, MOD1 [Files] |
| 0034 | w(41D80001): ADD R1, SB, VAR1 |
| 0035 | x(82E00034): LDR R2, SP, 34H |
| 0036 | y(43000000): MOV R3, R0, 0H |
| 0037 | z .FIXUP P |
| 0037 | z(F710B009): BL MOD1 [Files] PROC11 |
| 0038 | a(40E80038): ADD R0, SP, 38H |
| 0039 | a .FIXUP D |
| 0039 | a(8D100006): LDR SB, MT, MOD1 [Files] |
| 003A | a(41D80001): ADD R1, SB, VAR1 |
| 003B | b(42E80004): ADD R2, SP, 4H |
| 003C | c .FIXUP P |
| 003C | c(F7110005): BL MOD1 [Files] PROC16 |
| IF ch = 0F8X THENd |
| 003D | d(90E00004): LDR R0, SP, 4H |
| 003E | d(400900F8): SUB R0, R0, F8H |
| 003F | d(E9000125): BNE 293 [0165H] |
| Files.ReadByte(R,e class)f;g |
| 0040 | e(40E80038): ADD R0, SP, 38H |
| 0041 | e .FIXUP D |
| 0041 | e(8D100008): LDR SB, MT, MOD1 [Files] |
| 0042 | e(41D80001): ADD R1, SB, VAR1 |
| 0043 | f(42E80005): ADD R2, SP, 5H |
| 0044 | g .FIXUP P |
| 0044 | g(F710E008): BL MOD1 [Files] PROC14 |
| WHILE ~R.eof &h (iclass < 255)j DOk |
| 0045 | h(90E00038): LDR R0, SP, 38H |
| 0046 | i(E900011D): BNE 285 [0164H] |
| 0047 | j(90E00005): LDR R0, SP, 5H |
| 0048 | j(400900FF): SUB R0, R0, FFH |
| 0049 | k(ED00011A): BGE 282 [0164H] |
| Texts.WriteInt(W,l class,m 4)n;o |
| 004A | l .FIXUP D |
| 004A | l(8D000009): LDR SB, MT, MOD0 [GraphTool] |
| 004B | l(40D80000): ADD R0, SB, 0H [data] |
| 004C | l .FIXUP D |
| 004C | l(8D200002): LDR SB, MT, MOD2 [Texts] |
| 004D | l(41D80005): ADD R1, SB, VAR5 |
| 004E | m(92E00005): LDR R2, SP, 5H |
| 004F | n(43000004): MOV R3, R0, 4H |
| 0050 | o .FIXUP P |
| 0050 | o(F721E00C): BL MOD2 [Texts] PROC30 |
| IF class = Context THENp |
| 0051 | p(90E00005): LDR R0, SP, 5H |
| 0052 | p(E9000042): BNE 66 [0095H] |
| Files.ReadByte(R,q cat)r;s Files.ReadByte(R,t inx)u;v Texts.WriteInt(W,w cat,x 4)y;z Texts.WriteInt(W,a inx,b 4)c;d |
| 0053 | q(40E80038): ADD R0, SP, 38H |
| 0054 | q .FIXUP D |
| 0054 | q(8D100008): LDR SB, MT, MOD1 [Files] |
| 0055 | q(41D80001): ADD R1, SB, VAR1 |
| 0056 | r(42E80008): ADD R2, SP, 8H |
| 0057 | s .FIXUP P |
| 0057 | s(F710E007): BL MOD1 [Files] PROC14 |
| 0058 | t(40E80038): ADD R0, SP, 38H |
| 0059 | t .FIXUP D |
| 0059 | t(8D100005): LDR SB, MT, MOD1 [Files] |
| 005A | t(41D80001): ADD R1, SB, VAR1 |
| 005B | u(42E80009): ADD R2, SP, 9H |
| 005C | v .FIXUP P |
| 005C | v(F710E005): BL MOD1 [Files] PROC14 |
| 005D | w .FIXUP D |
| 005D | w(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 005E | w(40D80000): ADD R0, SB, 0H [data] |
| 005F | w .FIXUP D |
| 005F | w(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0060 | w(41D80005): ADD R1, SB, VAR5 |
| 0061 | x(92E00008): LDR R2, SP, 8H |
| 0062 | y(43000004): MOV R3, R0, 4H |
| 0063 | z .FIXUP P |
| 0063 | z(F721E007): BL MOD2 [Texts] PROC30 |
| 0064 | a .FIXUP D |
| 0064 | a(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0065 | a(40D80000): ADD R0, SB, 0H [data] |
| 0066 | a .FIXUP D |
| 0066 | a(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0067 | a(41D80005): ADD R1, SB, VAR5 |
| 0068 | b(92E00009): LDR R2, SP, 9H |
| 0069 | c(43000004): MOV R3, R0, 4H |
| 006A | d .FIXUP P |
| 006A | d(F721E007): BL MOD2 [Texts] PROC30 |
| Files.ReadString(R,e name)f;g Texts.Write(W,h " ")i;j Texts.WriteString(W,k name)l;m |
| 006B | e(40E80038): ADD R0, SP, 38H |
| 006C | e .FIXUP D |
| 006C | e(8D100006): LDR SB, MT, MOD1 [Files] |
| 006D | e(41D80001): ADD R1, SB, VAR1 |
| 006E | f(42E80014): ADD R2, SP, 14H |
| 006F | f(43000020): MOV R3, R0, 20H |
| 0070 | g .FIXUP P |
| 0070 | g(F7114006): BL MOD1 [Files] PROC20 |
| 0071 | h .FIXUP D |
| 0071 | h(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0072 | h(40D80000): ADD R0, SB, 0H [data] |
| 0073 | h .FIXUP D |
| 0073 | h(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0074 | h(41D80005): ADD R1, SB, VAR5 |
| 0075 | i(42000020): MOV R2, R0, 20H |
| 0076 | j .FIXUP P |
| 0076 | j(F721B006): BL MOD2 [Texts] PROC27 |
| 0077 | k .FIXUP D |
| 0077 | k(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0078 | k(40D80000): ADD R0, SB, 0H [data] |
| 0079 | k .FIXUP D |
| 0079 | k(8D200002): LDR SB, MT, MOD2 [Texts] |
| 007A | k(41D80005): ADD R1, SB, VAR5 |
| 007B | l(42E80014): ADD R2, SP, 14H |
| 007C | l(43000020): MOV R3, R0, 20H |
| 007D | m .FIXUP P |
| 007D | m(F721D007): BL MOD2 [Texts] PROC29 |
| IF cat = 2 THENn Files.ReadString(R,o name)p;q Texts.Write(W,r " ")s;t Texts.WriteString(W,u name)v ENDw |
| 007E | n(90E00008): LDR R0, SP, 8H |
| 007F | n(40090002): SUB R0, R0, 2H |
| 0080 | n(E9000013): BNE 19 [0094H] |
| 0081 | o(40E80038): ADD R0, SP, 38H |
| 0082 | o .FIXUP D |
| 0082 | o(8D100009): LDR SB, MT, MOD1 [Files] |
| 0083 | o(41D80001): ADD R1, SB, VAR1 |
| 0084 | p(42E80014): ADD R2, SP, 14H |
| 0085 | p(43000020): MOV R3, R0, 20H |
| 0086 | q .FIXUP P |
| 0086 | q(F7114009): BL MOD1 [Files] PROC20 |
| 0087 | r .FIXUP D |
| 0087 | r(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0088 | r(40D80000): ADD R0, SB, 0H [data] |
| 0089 | r .FIXUP D |
| 0089 | r(8D200002): LDR SB, MT, MOD2 [Texts] |
| 008A | r(41D80005): ADD R1, SB, VAR5 |
| 008B | s(42000020): MOV R2, R0, 20H |
| 008C | t .FIXUP P |
| 008C | t(F721B006): BL MOD2 [Texts] PROC27 |
| 008D | u .FIXUP D |
| 008D | u(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 008E | u(40D80000): ADD R0, SB, 0H [data] |
| 008F | u .FIXUP D |
| 008F | u(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0090 | u(41D80005): ADD R1, SB, VAR5 |
| 0091 | v(42E80014): ADD R2, SP, 14H |
| 0092 | v(43000020): MOV R3, R0, 20H |
| 0093 | w .FIXUP P |
| 0093 | w(F721D007): BL MOD2 [Texts] PROC29 |
| ELSE Filesx.ReadInt(R,y xy)z;a |
| 0094 | x(E70000C4): B 196 [0159H] |
| 0095 | y(40E80038): ADD R0, SP, 38H |
| 0096 | y .FIXUP D |
| 0096 | y(8D100007): LDR SB, MT, MOD1 [Files] |
| 0097 | y(41D80001): ADD R1, SB, VAR1 |
| 0098 | z(42E8000C): ADD R2, SP, CH |
| 0099 | a .FIXUP P |
| 0099 | a(F7111006): BL MOD1 [Files] PROC17 |
| Texts.WriteInt(W,b xy * 10000H DIVc 10000H,d 5)e;f Texts.WriteInt(W,g xy DIV 10000H,h 5)i;j |
| 009A | b .FIXUP D |
| 009A | b(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 009B | b(40D80000): ADD R0, SB, 0H [data] |
| 009C | b .FIXUP D |
| 009C | b(8D200002): LDR SB, MT, MOD2 [Texts] |
| 009D | b(41D80005): ADD R1, SB, VAR5 |
| 009E | c(82E0000C): LDR R2, SP, CH |
| 009F | c(42210010): LSL R2, R2, 10H |
| 00A0 | d(42220010): ASR R2, R2, 10H |
| 00A1 | e(43000005): MOV R3, R0, 5H |
| 00A2 | f .FIXUP P |
| 00A2 | f(F721E009): BL MOD2 [Texts] PROC30 |
| 00A3 | g .FIXUP D |
| 00A3 | g(8D000007): LDR SB, MT, MOD0 [GraphTool] |
| 00A4 | g(40D80000): ADD R0, SB, 0H [data] |
| 00A5 | g .FIXUP D |
| 00A5 | g(8D200002): LDR SB, MT, MOD2 [Texts] |
| 00A6 | g(41D80005): ADD R1, SB, VAR5 |
| 00A7 | h(82E0000C): LDR R2, SP, CH |
| 00A8 | h(42220010): ASR R2, R2, 10H |
| 00A9 | i(43000005): MOV R3, R0, 5H |
| 00AA | j .FIXUP P |
| 00AA | j(F721E008): BL MOD2 [Texts] PROC30 |
| Files.ReadInt(R,k wh)l;m |
| 00AB | k(40E80038): ADD R0, SP, 38H |
| 00AC | k .FIXUP D |
| 00AC | k(8D100007): LDR SB, MT, MOD1 [Files] |
| 00AD | k(41D80001): ADD R1, SB, VAR1 |
| 00AE | l(42E80010): ADD R2, SP, 10H |
| 00AF | m .FIXUP P |
| 00AF | m(F7111005): BL MOD1 [Files] PROC17 |
| Texts.WriteInt(W,n wh * 10000H DIVo 10000H,p 5)q;r Texts.WriteInt(W,s wh DIV 10000H,t 5)u;v |
| 00B0 | n .FIXUP D |
| 00B0 | n(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 00B1 | n(40D80000): ADD R0, SB, 0H [data] |
| 00B2 | n .FIXUP D |
| 00B2 | n(8D200002): LDR SB, MT, MOD2 [Texts] |
| 00B3 | n(41D80005): ADD R1, SB, VAR5 |
| 00B4 | o(82E00010): LDR R2, SP, 10H |
| 00B5 | o(42210010): LSL R2, R2, 10H |
| 00B6 | p(42220010): ASR R2, R2, 10H |
| 00B7 | q(43000005): MOV R3, R0, 5H |
| 00B8 | r .FIXUP P |
| 00B8 | r(F721E009): BL MOD2 [Texts] PROC30 |
| 00B9 | s .FIXUP D |
| 00B9 | s(8D000007): LDR SB, MT, MOD0 [GraphTool] |
| 00BA | s(40D80000): ADD R0, SB, 0H [data] |
| 00BB | s .FIXUP D |
| 00BB | s(8D200002): LDR SB, MT, MOD2 [Texts] |
| 00BC | s(41D80005): ADD R1, SB, VAR5 |
| 00BD | t(82E00010): LDR R2, SP, 10H |
| 00BE | t(42220010): ASR R2, R2, 10H |
| 00BF | u(43000005): MOV R3, R0, 5H |
| 00C0 | v .FIXUP P |
| 00C0 | v(F721E008): BL MOD2 [Texts] PROC30 |
| Files.ReadByte(R,w col)x;y Files.Read(R,z ch)a;b Texts.WriteInt(W,c col,d 5)e;f Texts.Write(W,g "|")h;i |
| 00C1 | w(40E80038): ADD R0, SP, 38H |
| 00C2 | w .FIXUP D |
| 00C2 | w(8D100007): LDR SB, MT, MOD1 [Files] |
| 00C3 | w(41D80001): ADD R1, SB, VAR1 |
| 00C4 | x(42E80006): ADD R2, SP, 6H |
| 00C5 | y .FIXUP P |
| 00C5 | y(F710E005): BL MOD1 [Files] PROC14 |
| 00C6 | z(40E80038): ADD R0, SP, 38H |
| 00C7 | z .FIXUP D |
| 00C7 | z(8D100005): LDR SB, MT, MOD1 [Files] |
| 00C8 | z(41D80001): ADD R1, SB, VAR1 |
| 00C9 | a(42E80004): ADD R2, SP, 4H |
| 00CA | b .FIXUP P |
| 00CA | b(F7110005): BL MOD1 [Files] PROC16 |
| 00CB | c .FIXUP D |
| 00CB | c(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 00CC | c(40D80000): ADD R0, SB, 0H [data] |
| 00CD | c .FIXUP D |
| 00CD | c(8D200002): LDR SB, MT, MOD2 [Texts] |
| 00CE | c(41D80005): ADD R1, SB, VAR5 |
| 00CF | d(92E00006): LDR R2, SP, 6H |
| 00D0 | e(43000005): MOV R3, R0, 5H |
| 00D1 | f .FIXUP P |
| 00D1 | f(F721E007): BL MOD2 [Texts] PROC30 |
| 00D2 | g .FIXUP D |
| 00D2 | g(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 00D3 | g(40D80000): ADD R0, SB, 0H [data] |
| 00D4 | g .FIXUP D |
| 00D4 | g(8D200002): LDR SB, MT, MOD2 [Texts] |
| 00D5 | g(41D80005): ADD R1, SB, VAR5 |
| 00D6 | h(4200007C): MOV R2, R0, 7CH |
| 00D7 | i .FIXUP P |
| 00D7 | i(F721B006): BL MOD2 [Texts] PROC27 |
| IF class = Line THENj |
| 00D8 | j(90E00005): LDR R0, SP, 5H |
| 00D9 | j(40090001): SUB R0, R0, 1H |
| 00DA | j(E9000001): BNE 1 [00DCH] |
| ELSIF classk = Caption THENl |
| 00DB | k(E700007D): B 125 [0159H] |
| 00DC | l(90E00005): LDR R0, SP, 5H |
| 00DD | l(40090002): SUB R0, R0, 2H |
| 00DE | l(E9000020): BNE 32 [00FFH] |
| Files.ReadByte(R,m fno)n;o Texts.WriteInt(W,p fno,q 5)r;s Texts.Write(W,t " ")u;v |
| 00DF | m(40E80038): ADD R0, SP, 38H |
| 00E0 | m .FIXUP D |
| 00E0 | m(8D10000C): LDR SB, MT, MOD1 [Files] |
| 00E1 | m(41D80001): ADD R1, SB, VAR1 |
| 00E2 | n(42E80007): ADD R2, SP, 7H |
| 00E3 | o .FIXUP P |
| 00E3 | o(F710E00C): BL MOD1 [Files] PROC14 |
| 00E4 | p .FIXUP D |
| 00E4 | p(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 00E5 | p(40D80000): ADD R0, SB, 0H [data] |
| 00E6 | p .FIXUP D |
| 00E6 | p(8D200002): LDR SB, MT, MOD2 [Texts] |
| 00E7 | p(41D80005): ADD R1, SB, VAR5 |
| 00E8 | q(92E00007): LDR R2, SP, 7H |
| 00E9 | r(43000005): MOV R3, R0, 5H |
| 00EA | s .FIXUP P |
| 00EA | s(F721E007): BL MOD2 [Texts] PROC30 |
| 00EB | t .FIXUP D |
| 00EB | t(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 00EC | t(40D80000): ADD R0, SB, 0H [data] |
| 00ED | t .FIXUP D |
| 00ED | t(8D200002): LDR SB, MT, MOD2 [Texts] |
| 00EE | t(41D80005): ADD R1, SB, VAR5 |
| 00EF | u(42000020): MOV R2, R0, 20H |
| 00F0 | v .FIXUP P |
| 00F0 | v(F721B006): BL MOD2 [Texts] PROC27 |
| Files.ReadString(R,w name)x;y Texts.WriteString(W,z name)a |
| 00F1 | w(40E80038): ADD R0, SP, 38H |
| 00F2 | w .FIXUP D |
| 00F2 | w(8D100005): LDR SB, MT, MOD1 [Files] |
| 00F3 | w(41D80001): ADD R1, SB, VAR1 |
| 00F4 | x(42E80014): ADD R2, SP, 14H |
| 00F5 | x(43000020): MOV R3, R0, 20H |
| 00F6 | y .FIXUP P |
| 00F6 | y(F7114006): BL MOD1 [Files] PROC20 |
| 00F7 | z .FIXUP D |
| 00F7 | z(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 00F8 | z(40D80000): ADD R0, SB, 0H [data] |
| 00F9 | z .FIXUP D |
| 00F9 | z(8D200002): LDR SB, MT, MOD2 [Texts] |
| 00FA | z(41D80005): ADD R1, SB, VAR5 |
| 00FB | a(42E80014): ADD R2, SP, 14H |
| 00FC | a(43000020): MOV R3, R0, 20H |
| ELSIFb classc = Macro THENd |
| 00FD | b .FIXUP P |
| 00FD | b(F721D007): BL MOD2 [Texts] PROC29 |
| 00FE | c(E700005A): B 90 [0159H] |
| 00FF | d(90E00005): LDR R0, SP, 5H |
| 0100 | d(40090003): SUB R0, R0, 3H |
| 0101 | d(E9000020): BNE 32 [0122H] |
| Files.ReadByte(R,e libno)f;g Files.ReadString(R,h name)i;j |
| 0102 | e(40E80038): ADD R0, SP, 38H |
| 0103 | e .FIXUP D |
| 0103 | e(8D10000A): LDR SB, MT, MOD1 [Files] |
| 0104 | e(41D80001): ADD R1, SB, VAR1 |
| 0105 | f(42E8000A): ADD R2, SP, AH |
| 0106 | g .FIXUP P |
| 0106 | g(F710E009): BL MOD1 [Files] PROC14 |
| 0107 | h(40E80038): ADD R0, SP, 38H |
| 0108 | h .FIXUP D |
| 0108 | h(8D100005): LDR SB, MT, MOD1 [Files] |
| 0109 | h(41D80001): ADD R1, SB, VAR1 |
| 010A | i(42E80014): ADD R2, SP, 14H |
| 010B | i(43000020): MOV R3, R0, 20H |
| 010C | j .FIXUP P |
| 010C | j(F7114006): BL MOD1 [Files] PROC20 |
| Texts.WriteInt(W,k libno,l 4)m;n Texts.Write(W,o " ")p;q Texts.WriteString(W,r name)s |
| 010D | k .FIXUP D |
| 010D | k(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 010E | k(40D80000): ADD R0, SB, 0H [data] |
| 010F | k .FIXUP D |
| 010F | k(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0110 | k(41D80005): ADD R1, SB, VAR5 |
| 0111 | l(92E0000A): LDR R2, SP, AH |
| 0112 | m(43000004): MOV R3, R0, 4H |
| 0113 | n .FIXUP P |
| 0113 | n(F721E007): BL MOD2 [Texts] PROC30 |
| 0114 | o .FIXUP D |
| 0114 | o(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0115 | o(40D80000): ADD R0, SB, 0H [data] |
| 0116 | o .FIXUP D |
| 0116 | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0117 | o(41D80005): ADD R1, SB, VAR5 |
| 0118 | p(42000020): MOV R2, R0, 20H |
| 0119 | q .FIXUP P |
| 0119 | q(F721B006): BL MOD2 [Texts] PROC27 |
| 011A | r .FIXUP D |
| 011A | r(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 011B | r(40D80000): ADD R0, SB, 0H [data] |
| 011C | r .FIXUP D |
| 011C | r(8D200002): LDR SB, MT, MOD2 [Texts] |
| 011D | r(41D80005): ADD R1, SB, VAR5 |
| 011E | s(42E80014): ADD R2, SP, 14H |
| 011F | s(43000020): MOV R3, R0, 20H |
| ELSIFt classu = Rectangles THENv |
| 0120 | t .FIXUP P |
| 0120 | t(F721D007): BL MOD2 [Texts] PROC29 |
| 0121 | u(E7000037): B 55 [0159H] |
| 0122 | v(90E00005): LDR R0, SP, 5H |
| 0123 | v(40090004): SUB R0, R0, 4H |
| 0124 | v(E9000025): BNE 37 [014AH] |
| Files.ReadByte(R,w fno)x;y Texts.WriteInt(W,z fno,a 4)b;c Files.ReadByte(R,d fno)e;f Texts.WriteInt(W,g fno,h 4)i;j |
| 0125 | w(40E80038): ADD R0, SP, 38H |
| 0126 | w .FIXUP D |
| 0126 | w(8D10000A): LDR SB, MT, MOD1 [Files] |
| 0127 | w(41D80001): ADD R1, SB, VAR1 |
| 0128 | x(42E80007): ADD R2, SP, 7H |
| 0129 | y .FIXUP P |
| 0129 | y(F710E009): BL MOD1 [Files] PROC14 |
| 012A | z .FIXUP D |
| 012A | z(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 012B | z(40D80000): ADD R0, SB, 0H [data] |
| 012C | z .FIXUP D |
| 012C | z(8D200002): LDR SB, MT, MOD2 [Texts] |
| 012D | z(41D80005): ADD R1, SB, VAR5 |
| 012E | a(92E00007): LDR R2, SP, 7H |
| 012F | b(43000004): MOV R3, R0, 4H |
| 0130 | c .FIXUP P |
| 0130 | c(F721E007): BL MOD2 [Texts] PROC30 |
| 0131 | d(40E80038): ADD R0, SP, 38H |
| 0132 | d .FIXUP D |
| 0132 | d(8D100006): LDR SB, MT, MOD1 [Files] |
| 0133 | d(41D80001): ADD R1, SB, VAR1 |
| 0134 | e(42E80007): ADD R2, SP, 7H |
| 0135 | f .FIXUP P |
| 0135 | f(F710E005): BL MOD1 [Files] PROC14 |
| 0136 | g .FIXUP D |
| 0136 | g(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0137 | g(40D80000): ADD R0, SB, 0H [data] |
| 0138 | g .FIXUP D |
| 0138 | g(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0139 | g(41D80005): ADD R1, SB, VAR5 |
| 013A | h(92E00007): LDR R2, SP, 7H |
| 013B | i(43000004): MOV R3, R0, 4H |
| 013C | j .FIXUP P |
| 013C | j(F721E007): BL MOD2 [Texts] PROC30 |
| Files.ReadByte(R,k fno)l;m Texts.WriteInt(W,n fno,o 4)p |
| 013D | k(40E80038): ADD R0, SP, 38H |
| 013E | k .FIXUP D |
| 013E | k(8D100006): LDR SB, MT, MOD1 [Files] |
| 013F | k(41D80001): ADD R1, SB, VAR1 |
| 0140 | l(42E80007): ADD R2, SP, 7H |
| 0141 | m .FIXUP P |
| 0141 | m(F710E005): BL MOD1 [Files] PROC14 |
| 0142 | n .FIXUP D |
| 0142 | n(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0143 | n(40D80000): ADD R0, SB, 0H [data] |
| 0144 | n .FIXUP D |
| 0144 | n(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0145 | n(41D80005): ADD R1, SB, VAR5 |
| 0146 | o(92E00007): LDR R2, SP, 7H |
| 0147 | p(43000004): MOV R3, R0, 4H |
| ELSEq Textsr.WriteString(W,s "other class =")t;u Texts.WriteInt(W,v class,w 4)x |
| 0148 | q .FIXUP P |
| 0148 | q(F721E007): BL MOD2 [Texts] PROC30 |
| 0149 | r(E700000F): B 15 [0159H] |
| 014A | s .FIXUP D |
| 014A | s(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 014B | s(40D80000): ADD R0, SB, 0H [data] |
| 014C | s .FIXUP D |
| 014C | s(8D200002): LDR SB, MT, MOD2 [Texts] |
| 014D | s(41D80005): ADD R1, SB, VAR5 |
| 014E | t .FIXUP D |
| 014E | t(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 014F | t(42D80030): ADD R2, SB, 30H ["other class ="] |
| 0150 | t(4300000E): MOV R3, R0, EH |
| 0151 | u .FIXUP P |
| 0151 | u(F721D009): BL MOD2 [Texts] PROC29 |
| 0152 | v .FIXUP D |
| 0152 | v(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0153 | v(40D80000): ADD R0, SB, 0H [data] |
| 0154 | v .FIXUP D |
| 0154 | v(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0155 | v(41D80005): ADD R1, SB, VAR5 |
| 0156 | w(92E00005): LDR R2, SP, 5H |
| 0157 | x(43000004): MOV R3, R0, 4H |
| ENDy |
| 0158 | y .FIXUP P |
| 0158 | y(F721E007): BL MOD2 [Texts] PROC30 |
| END ; |
| Texts.WriteLn(W)z;a Files.ReadByte(R,b class)c |
| 0159 | z .FIXUP D |
| 0159 | z(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 015A | z(40D80000): ADD R0, SB, 0H [data] |
| 015B | z .FIXUP D |
| 015B | z(8D200002): LDR SB, MT, MOD2 [Texts] |
| 015C | z(41D80005): ADD R1, SB, VAR5 |
| 015D | a .FIXUP P |
| 015D | a(F721C005): BL MOD2 [Texts] PROC28 |
| 015E | b(40E80038): ADD R0, SP, 38H |
| 015F | b .FIXUP D |
| 015F | b(8D100004): LDR SB, MT, MOD1 [Files] |
| 0160 | b(41D80001): ADD R1, SB, VAR1 |
| 0161 | c(42E80005): ADD R2, SP, 5H |
| ENDd |
| 0162 | d .FIXUP P |
| 0162 | d(F710E005): BL MOD1 [Files] PROC14 |
| 0163 | d(E7FFFEE1): B -287 [0045H] |
| ELSE Textse.WriteString(W,f " not a graphics file")g |
| 0164 | e(E7000008): B 8 [016DH] |
| 0165 | f .FIXUP D |
| 0165 | f(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 0166 | f(40D80000): ADD R0, SB, 0H [data] |
| 0167 | f .FIXUP D |
| 0167 | f(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0168 | f(41D80005): ADD R1, SB, VAR5 |
| 0169 | g .FIXUP D |
| 0169 | g(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 016A | g(42D80040): ADD R2, SB, 40H [" not a graphics file"] |
| 016B | g(43000015): MOV R3, R0, 15H |
| ENDh |
| 016C | h .FIXUP P |
| 016C | h(F721D00A): BL MOD2 [Texts] PROC29 |
| ELSE Textsi.WriteString(W,j " not found")k |
| 016D | i(E7000008): B 8 [0176H] |
| 016E | j .FIXUP D |
| 016E | j(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 016F | j(40D80000): ADD R0, SB, 0H [data] |
| 0170 | j .FIXUP D |
| 0170 | j(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0171 | j(41D80005): ADD R1, SB, VAR5 |
| 0172 | k .FIXUP D |
| 0172 | k(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 0173 | k(42D80058): ADD R2, SB, 58H [" not found"] |
| 0174 | k(4300000B): MOV R3, R0, BH |
| ENDl ; |
| 0175 | l .FIXUP P |
| 0175 | l(F721D009): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)m;n Texts.Append(Oberon.Log,o W.buf)p |
| 0176 | m .FIXUP D |
| 0176 | m(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0177 | m(40D80000): ADD R0, SB, 0H [data] |
| 0178 | m .FIXUP D |
| 0178 | m(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0179 | m(41D80005): ADD R1, SB, VAR5 |
| 017A | n .FIXUP P |
| 017A | n(F721C005): BL MOD2 [Texts] PROC28 |
| 017B | o .FIXUP D |
| 017B | o(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 017C | o(80D0000D): LDR R0, SB, VAR13 |
| 017D | p .FIXUP D |
| 017D | p(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 017E | p(81D00000): LDR R1, SB, 0H [data] |
| ENDq |
| 017F | q .FIXUP P |
| 017F | q(F720E005): BL MOD2 [Texts] PROC14 |
| ENDr DecGraph; |
| 0180 | r(8FE00000): LDR LNK, SP, 0H |
| 0181 | r(4EE800C4): ADD SP, SP, C4H |
| 0182 | r(C700000F): B LNK |
| |
| PROCEDURE DecGraph1*; |
| VAR ch: CHAR; |
| class, col, fno, len, lw, vers, cat, inx, libno: BYTE; |
| xy, wh: INTEGER; |
| name: ARRAY 32 OF CHAR; |
| F: Files.File; R: Files.Rider; |
| S: Texts.Scanner; |
| BEGINs Texts.OpenScanner(S,t Oberon.Par.text,u Oberon.Par.pos)v;w Texts.Scan(S)x;y |
| 0183 | s .PROC 2 |
| 0183 | s .COMMAND DecGraph1 |
| 0183 | s(4EE900C8): SUB SP, SP, C8H |
| 0184 | s(AFE00000): STR LNK, SP, 0H |
| 0185 | t(40E80054): ADD R0, SP, 54H |
| 0186 | t .FIXUP D |
| 0186 | t(8D200009): LDR SB, MT, MOD2 [Texts] |
| 0187 | t(41D80003): ADD R1, SB, VAR3 |
| 0188 | u .FIXUP D |
| 0188 | u(8D400002): LDR SB, MT, MOD4 [Oberon] |
| 0189 | u(42D8000E): ADD R2, SB, VAR14 |
| 018A | u(82200008): LDR R2, R2, 8H |
| 018B | v .FIXUP D |
| 018B | v(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 018C | v(43D8000E): ADD R3, SB, VAR14 |
| 018D | v(8330000C): LDR R3, R3, CH |
| 018E | w .FIXUP P |
| 018E | w(F721500F): BL MOD2 [Texts] PROC21 |
| 018F | x(40E80054): ADD R0, SP, 54H |
| 0190 | x .FIXUP D |
| 0190 | x(8D200005): LDR SB, MT, MOD2 [Texts] |
| 0191 | x(41D80003): ADD R1, SB, VAR3 |
| 0192 | y .FIXUP P |
| 0192 | y(F7216004): BL MOD2 [Texts] PROC22 |
| IF S.class = Texts.Name THENz |
| 0193 | z(80E00090): LDR R0, SP, 90H |
| 0194 | z(40090001): SUB R0, R0, 1H |
| 0195 | z(E9000168): BNE 360 [02FEH] |
| Texts.WriteString(W,a "decode ")b;c Texts.WriteString(W,d S.s)e;f |
| 0196 | a .FIXUP D |
| 0196 | a(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 0197 | a(40D80000): ADD R0, SB, 0H [data] |
| 0198 | a .FIXUP D |
| 0198 | a(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0199 | a(41D80005): ADD R1, SB, VAR5 |
| 019A | b .FIXUP D |
| 019A | b(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 019B | b(42D80064): ADD R2, SB, 64H ["decode "] |
| 019C | b(43000008): MOV R3, R0, 8H |
| 019D | c .FIXUP P |
| 019D | c(F721D00B): BL MOD2 [Texts] PROC29 |
| 019E | d .FIXUP D |
| 019E | d(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 019F | d(40D80000): ADD R0, SB, 0H [data] |
| 01A0 | d .FIXUP D |
| 01A0 | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 01A1 | d(41D80005): ADD R1, SB, VAR5 |
| 01A2 | e(42E800A8): ADD R2, SP, A8H |
| 01A3 | e(43000020): MOV R3, R0, 20H |
| 01A4 | f .FIXUP P |
| 01A4 | f(F721D007): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)g;h Texts.Append(Oberon.Log,i W.buf)j;k |
| 01A5 | g .FIXUP D |
| 01A5 | g(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 01A6 | g(40D80000): ADD R0, SB, 0H [data] |
| 01A7 | g .FIXUP D |
| 01A7 | g(8D200002): LDR SB, MT, MOD2 [Texts] |
| 01A8 | g(41D80005): ADD R1, SB, VAR5 |
| 01A9 | h .FIXUP P |
| 01A9 | h(F721C005): BL MOD2 [Texts] PROC28 |
| 01AA | i .FIXUP D |
| 01AA | i(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 01AB | i(80D0000D): LDR R0, SB, VAR13 |
| 01AC | j .FIXUP D |
| 01AC | j(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 01AD | j(81D00000): LDR R1, SB, 0H [data] |
| 01AE | k .FIXUP P |
| 01AE | k(F720E005): BL MOD2 [Texts] PROC14 |
| F := Files.Old(S.s)l;m |
| 01AF | l(40E800A8): ADD R0, SP, A8H |
| 01B0 | l(41000020): MOV R1, R0, 20H |
| 01B1 | m .FIXUP P |
| 01B1 | m(F7102003): BL MOD1 [Files] PROC2 |
| 01B2 | m(A0E00038): STR R0, SP, 38H |
| IF F # NIL THENn |
| 01B3 | n(80E00038): LDR R0, SP, 38H |
| 01B4 | n(E1000137): BEQ 311 [02ECH] |
| Files.Set(R,o F,p 0)q;r Files.Read(R,s ch)t;u |
| 01B5 | o(40E8003C): ADD R0, SP, 3CH |
| 01B6 | o .FIXUP D |
| 01B6 | o(8D10000A): LDR SB, MT, MOD1 [Files] |
| 01B7 | o(41D80001): ADD R1, SB, VAR1 |
| 01B8 | p(82E00038): LDR R2, SP, 38H |
| 01B9 | q(43000000): MOV R3, R0, 0H |
| 01BA | r .FIXUP P |
| 01BA | r(F710B009): BL MOD1 [Files] PROC11 |
| 01BB | s(40E8003C): ADD R0, SP, 3CH |
| 01BC | s .FIXUP D |
| 01BC | s(8D100006): LDR SB, MT, MOD1 [Files] |
| 01BD | s(41D80001): ADD R1, SB, VAR1 |
| 01BE | t(42E80004): ADD R2, SP, 4H |
| 01BF | u .FIXUP P |
| 01BF | u(F7110005): BL MOD1 [Files] PROC16 |
| IF ch = 0FAX THENv |
| 01C0 | v(90E00004): LDR R0, SP, 4H |
| 01C1 | v(400900FA): SUB R0, R0, FAH |
| 01C2 | v(E9000120): BNE 288 [02E3H] |
| Files.ReadByte(R,w class)x;y |
| 01C3 | w(40E8003C): ADD R0, SP, 3CH |
| 01C4 | w .FIXUP D |
| 01C4 | w(8D100008): LDR SB, MT, MOD1 [Files] |
| 01C5 | w(41D80001): ADD R1, SB, VAR1 |
| 01C6 | x(42E80005): ADD R2, SP, 5H |
| 01C7 | y .FIXUP P |
| 01C7 | y(F710E008): BL MOD1 [Files] PROC14 |
| WHILE ~R.eof &z (aclass < 255)b DOc |
| 01C8 | z(90E0003C): LDR R0, SP, 3CH |
| 01C9 | a(E9000118): BNE 280 [02E2H] |
| 01CA | b(90E00005): LDR R0, SP, 5H |
| 01CB | b(400900FF): SUB R0, R0, FFH |
| 01CC | c(ED000115): BGE 277 [02E2H] |
| Texts.WriteInt(W,d class,e 4)f;g |
| 01CD | d .FIXUP D |
| 01CD | d(8D000009): LDR SB, MT, MOD0 [GraphTool] |
| 01CE | d(40D80000): ADD R0, SB, 0H [data] |
| 01CF | d .FIXUP D |
| 01CF | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 01D0 | d(41D80005): ADD R1, SB, VAR5 |
| 01D1 | e(92E00005): LDR R2, SP, 5H |
| 01D2 | f(43000004): MOV R3, R0, 4H |
| 01D3 | g .FIXUP P |
| 01D3 | g(F721E00C): BL MOD2 [Texts] PROC30 |
| IF class = Context THENh |
| 01D4 | h(90E00005): LDR R0, SP, 5H |
| 01D5 | h(E9000042): BNE 66 [0218H] |
| Files.ReadByte(R,i cat)j;k Files.ReadByte(R,l inx)m;n Texts.WriteInt(W,o cat,p 4)q;r Texts.WriteInt(W,s inx,t 4)u;v |
| 01D6 | i(40E8003C): ADD R0, SP, 3CH |
| 01D7 | i .FIXUP D |
| 01D7 | i(8D100008): LDR SB, MT, MOD1 [Files] |
| 01D8 | i(41D80001): ADD R1, SB, VAR1 |
| 01D9 | j(42E8000B): ADD R2, SP, BH |
| 01DA | k .FIXUP P |
| 01DA | k(F710E007): BL MOD1 [Files] PROC14 |
| 01DB | l(40E8003C): ADD R0, SP, 3CH |
| 01DC | l .FIXUP D |
| 01DC | l(8D100005): LDR SB, MT, MOD1 [Files] |
| 01DD | l(41D80001): ADD R1, SB, VAR1 |
| 01DE | m(42E8000C): ADD R2, SP, CH |
| 01DF | n .FIXUP P |
| 01DF | n(F710E005): BL MOD1 [Files] PROC14 |
| 01E0 | o .FIXUP D |
| 01E0 | o(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 01E1 | o(40D80000): ADD R0, SB, 0H [data] |
| 01E2 | o .FIXUP D |
| 01E2 | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 01E3 | o(41D80005): ADD R1, SB, VAR5 |
| 01E4 | p(92E0000B): LDR R2, SP, BH |
| 01E5 | q(43000004): MOV R3, R0, 4H |
| 01E6 | r .FIXUP P |
| 01E6 | r(F721E007): BL MOD2 [Texts] PROC30 |
| 01E7 | s .FIXUP D |
| 01E7 | s(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 01E8 | s(40D80000): ADD R0, SB, 0H [data] |
| 01E9 | s .FIXUP D |
| 01E9 | s(8D200002): LDR SB, MT, MOD2 [Texts] |
| 01EA | s(41D80005): ADD R1, SB, VAR5 |
| 01EB | t(92E0000C): LDR R2, SP, CH |
| 01EC | u(43000004): MOV R3, R0, 4H |
| 01ED | v .FIXUP P |
| 01ED | v(F721E007): BL MOD2 [Texts] PROC30 |
| Files.ReadString(R,w name)x;y Texts.Write(W,z " ")a;b Texts.WriteString(W,c name)d;e |
| 01EE | w(40E8003C): ADD R0, SP, 3CH |
| 01EF | w .FIXUP D |
| 01EF | w(8D100006): LDR SB, MT, MOD1 [Files] |
| 01F0 | w(41D80001): ADD R1, SB, VAR1 |
| 01F1 | x(42E80018): ADD R2, SP, 18H |
| 01F2 | x(43000020): MOV R3, R0, 20H |
| 01F3 | y .FIXUP P |
| 01F3 | y(F7114006): BL MOD1 [Files] PROC20 |
| 01F4 | z .FIXUP D |
| 01F4 | z(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 01F5 | z(40D80000): ADD R0, SB, 0H [data] |
| 01F6 | z .FIXUP D |
| 01F6 | z(8D200002): LDR SB, MT, MOD2 [Texts] |
| 01F7 | z(41D80005): ADD R1, SB, VAR5 |
| 01F8 | a(42000020): MOV R2, R0, 20H |
| 01F9 | b .FIXUP P |
| 01F9 | b(F721B006): BL MOD2 [Texts] PROC27 |
| 01FA | c .FIXUP D |
| 01FA | c(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 01FB | c(40D80000): ADD R0, SB, 0H [data] |
| 01FC | c .FIXUP D |
| 01FC | c(8D200002): LDR SB, MT, MOD2 [Texts] |
| 01FD | c(41D80005): ADD R1, SB, VAR5 |
| 01FE | d(42E80018): ADD R2, SP, 18H |
| 01FF | d(43000020): MOV R3, R0, 20H |
| 0200 | e .FIXUP P |
| 0200 | e(F721D007): BL MOD2 [Texts] PROC29 |
| IF cat = 2 THENf Files.ReadString(R,g name)h;i Texts.Write(W,j " ")k;l Texts.WriteString(W,m name)n ENDo |
| 0201 | f(90E0000B): LDR R0, SP, BH |
| 0202 | f(40090002): SUB R0, R0, 2H |
| 0203 | f(E9000013): BNE 19 [0217H] |
| 0204 | g(40E8003C): ADD R0, SP, 3CH |
| 0205 | g .FIXUP D |
| 0205 | g(8D100009): LDR SB, MT, MOD1 [Files] |
| 0206 | g(41D80001): ADD R1, SB, VAR1 |
| 0207 | h(42E80018): ADD R2, SP, 18H |
| 0208 | h(43000020): MOV R3, R0, 20H |
| 0209 | i .FIXUP P |
| 0209 | i(F7114009): BL MOD1 [Files] PROC20 |
| 020A | j .FIXUP D |
| 020A | j(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 020B | j(40D80000): ADD R0, SB, 0H [data] |
| 020C | j .FIXUP D |
| 020C | j(8D200002): LDR SB, MT, MOD2 [Texts] |
| 020D | j(41D80005): ADD R1, SB, VAR5 |
| 020E | k(42000020): MOV R2, R0, 20H |
| 020F | l .FIXUP P |
| 020F | l(F721B006): BL MOD2 [Texts] PROC27 |
| 0210 | m .FIXUP D |
| 0210 | m(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0211 | m(40D80000): ADD R0, SB, 0H [data] |
| 0212 | m .FIXUP D |
| 0212 | m(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0213 | m(41D80005): ADD R1, SB, VAR5 |
| 0214 | n(42E80018): ADD R2, SP, 18H |
| 0215 | n(43000020): MOV R3, R0, 20H |
| 0216 | o .FIXUP P |
| 0216 | o(F721D007): BL MOD2 [Texts] PROC29 |
| ELSE Filesp.ReadInt(R,q xy)r;s |
| 0217 | p(E70000BF): B 191 [02D7H] |
| 0218 | q(40E8003C): ADD R0, SP, 3CH |
| 0219 | q .FIXUP D |
| 0219 | q(8D100007): LDR SB, MT, MOD1 [Files] |
| 021A | q(41D80001): ADD R1, SB, VAR1 |
| 021B | r(42E80010): ADD R2, SP, 10H |
| 021C | s .FIXUP P |
| 021C | s(F7111006): BL MOD1 [Files] PROC17 |
| Texts.WriteInt(W,t xy * 10000H DIVu 10000H,v 5)w;x Texts.WriteInt(W,y xy DIV 10000H,z 5)a;b |
| 021D | t .FIXUP D |
| 021D | t(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 021E | t(40D80000): ADD R0, SB, 0H [data] |
| 021F | t .FIXUP D |
| 021F | t(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0220 | t(41D80005): ADD R1, SB, VAR5 |
| 0221 | u(82E00010): LDR R2, SP, 10H |
| 0222 | u(42210010): LSL R2, R2, 10H |
| 0223 | v(42220010): ASR R2, R2, 10H |
| 0224 | w(43000005): MOV R3, R0, 5H |
| 0225 | x .FIXUP P |
| 0225 | x(F721E009): BL MOD2 [Texts] PROC30 |
| 0226 | y .FIXUP D |
| 0226 | y(8D000007): LDR SB, MT, MOD0 [GraphTool] |
| 0227 | y(40D80000): ADD R0, SB, 0H [data] |
| 0228 | y .FIXUP D |
| 0228 | y(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0229 | y(41D80005): ADD R1, SB, VAR5 |
| 022A | z(82E00010): LDR R2, SP, 10H |
| 022B | z(42220010): ASR R2, R2, 10H |
| 022C | a(43000005): MOV R3, R0, 5H |
| 022D | b .FIXUP P |
| 022D | b(F721E008): BL MOD2 [Texts] PROC30 |
| Files.ReadInt(R,c wh)d;e |
| 022E | c(40E8003C): ADD R0, SP, 3CH |
| 022F | c .FIXUP D |
| 022F | c(8D100007): LDR SB, MT, MOD1 [Files] |
| 0230 | c(41D80001): ADD R1, SB, VAR1 |
| 0231 | d(42E80014): ADD R2, SP, 14H |
| 0232 | e .FIXUP P |
| 0232 | e(F7111005): BL MOD1 [Files] PROC17 |
| Texts.WriteInt(W,f wh * 10000H DIVg 10000H,h 5)i;j Texts.WriteInt(W,k wh DIV 10000H,l 5)m;n |
| 0233 | f .FIXUP D |
| 0233 | f(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0234 | f(40D80000): ADD R0, SB, 0H [data] |
| 0235 | f .FIXUP D |
| 0235 | f(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0236 | f(41D80005): ADD R1, SB, VAR5 |
| 0237 | g(82E00014): LDR R2, SP, 14H |
| 0238 | g(42210010): LSL R2, R2, 10H |
| 0239 | h(42220010): ASR R2, R2, 10H |
| 023A | i(43000005): MOV R3, R0, 5H |
| 023B | j .FIXUP P |
| 023B | j(F721E009): BL MOD2 [Texts] PROC30 |
| 023C | k .FIXUP D |
| 023C | k(8D000007): LDR SB, MT, MOD0 [GraphTool] |
| 023D | k(40D80000): ADD R0, SB, 0H [data] |
| 023E | k .FIXUP D |
| 023E | k(8D200002): LDR SB, MT, MOD2 [Texts] |
| 023F | k(41D80005): ADD R1, SB, VAR5 |
| 0240 | l(82E00014): LDR R2, SP, 14H |
| 0241 | l(42220010): ASR R2, R2, 10H |
| 0242 | m(43000005): MOV R3, R0, 5H |
| 0243 | n .FIXUP P |
| 0243 | n(F721E008): BL MOD2 [Texts] PROC30 |
| Files.ReadByte(R,o col)p;q Texts.WriteInt(W,r col,s 5)t;u Texts.Write(W,v "|")w;x |
| 0244 | o(40E8003C): ADD R0, SP, 3CH |
| 0245 | o .FIXUP D |
| 0245 | o(8D100007): LDR SB, MT, MOD1 [Files] |
| 0246 | o(41D80001): ADD R1, SB, VAR1 |
| 0247 | p(42E80006): ADD R2, SP, 6H |
| 0248 | q .FIXUP P |
| 0248 | q(F710E005): BL MOD1 [Files] PROC14 |
| 0249 | r .FIXUP D |
| 0249 | r(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 024A | r(40D80000): ADD R0, SB, 0H [data] |
| 024B | r .FIXUP D |
| 024B | r(8D200002): LDR SB, MT, MOD2 [Texts] |
| 024C | r(41D80005): ADD R1, SB, VAR5 |
| 024D | s(92E00006): LDR R2, SP, 6H |
| 024E | t(43000005): MOV R3, R0, 5H |
| 024F | u .FIXUP P |
| 024F | u(F721E007): BL MOD2 [Texts] PROC30 |
| 0250 | v .FIXUP D |
| 0250 | v(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0251 | v(40D80000): ADD R0, SB, 0H [data] |
| 0252 | v .FIXUP D |
| 0252 | v(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0253 | v(41D80005): ADD R1, SB, VAR5 |
| 0254 | w(4200007C): MOV R2, R0, 7CH |
| 0255 | x .FIXUP P |
| 0255 | x(F721B006): BL MOD2 [Texts] PROC27 |
| IF class = Line THENy |
| 0256 | y(90E00005): LDR R0, SP, 5H |
| 0257 | y(40090001): SUB R0, R0, 1H |
| 0258 | y(E9000001): BNE 1 [025AH] |
| ELSIF classz = Caption THENa |
| 0259 | z(E700007D): B 125 [02D7H] |
| 025A | a(90E00005): LDR R0, SP, 5H |
| 025B | a(40090002): SUB R0, R0, 2H |
| 025C | a(E9000020): BNE 32 [027DH] |
| Files.ReadByte(R,b fno)c;d Texts.WriteInt(W,e fno,f 5)g;h Texts.Write(W,i " ")j;k |
| 025D | b(40E8003C): ADD R0, SP, 3CH |
| 025E | b .FIXUP D |
| 025E | b(8D10000C): LDR SB, MT, MOD1 [Files] |
| 025F | b(41D80001): ADD R1, SB, VAR1 |
| 0260 | c(42E80007): ADD R2, SP, 7H |
| 0261 | d .FIXUP P |
| 0261 | d(F710E00C): BL MOD1 [Files] PROC14 |
| 0262 | e .FIXUP D |
| 0262 | e(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0263 | e(40D80000): ADD R0, SB, 0H [data] |
| 0264 | e .FIXUP D |
| 0264 | e(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0265 | e(41D80005): ADD R1, SB, VAR5 |
| 0266 | f(92E00007): LDR R2, SP, 7H |
| 0267 | g(43000005): MOV R3, R0, 5H |
| 0268 | h .FIXUP P |
| 0268 | h(F721E007): BL MOD2 [Texts] PROC30 |
| 0269 | i .FIXUP D |
| 0269 | i(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 026A | i(40D80000): ADD R0, SB, 0H [data] |
| 026B | i .FIXUP D |
| 026B | i(8D200002): LDR SB, MT, MOD2 [Texts] |
| 026C | i(41D80005): ADD R1, SB, VAR5 |
| 026D | j(42000020): MOV R2, R0, 20H |
| 026E | k .FIXUP P |
| 026E | k(F721B006): BL MOD2 [Texts] PROC27 |
| Files.ReadString(R,l name)m;n Texts.WriteString(W,o name)p |
| 026F | l(40E8003C): ADD R0, SP, 3CH |
| 0270 | l .FIXUP D |
| 0270 | l(8D100005): LDR SB, MT, MOD1 [Files] |
| 0271 | l(41D80001): ADD R1, SB, VAR1 |
| 0272 | m(42E80018): ADD R2, SP, 18H |
| 0273 | m(43000020): MOV R3, R0, 20H |
| 0274 | n .FIXUP P |
| 0274 | n(F7114006): BL MOD1 [Files] PROC20 |
| 0275 | o .FIXUP D |
| 0275 | o(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0276 | o(40D80000): ADD R0, SB, 0H [data] |
| 0277 | o .FIXUP D |
| 0277 | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0278 | o(41D80005): ADD R1, SB, VAR5 |
| 0279 | p(42E80018): ADD R2, SP, 18H |
| 027A | p(43000020): MOV R3, R0, 20H |
| ELSIFq classr = Macro THENs |
| 027B | q .FIXUP P |
| 027B | q(F721D007): BL MOD2 [Texts] PROC29 |
| 027C | r(E700005A): B 90 [02D7H] |
| 027D | s(90E00005): LDR R0, SP, 5H |
| 027E | s(40090003): SUB R0, R0, 3H |
| 027F | s(E9000020): BNE 32 [02A0H] |
| Files.ReadByte(R,t libno)u;v Files.ReadString(R,w name)x;y |
| 0280 | t(40E8003C): ADD R0, SP, 3CH |
| 0281 | t .FIXUP D |
| 0281 | t(8D10000A): LDR SB, MT, MOD1 [Files] |
| 0282 | t(41D80001): ADD R1, SB, VAR1 |
| 0283 | u(42E8000D): ADD R2, SP, DH |
| 0284 | v .FIXUP P |
| 0284 | v(F710E009): BL MOD1 [Files] PROC14 |
| 0285 | w(40E8003C): ADD R0, SP, 3CH |
| 0286 | w .FIXUP D |
| 0286 | w(8D100005): LDR SB, MT, MOD1 [Files] |
| 0287 | w(41D80001): ADD R1, SB, VAR1 |
| 0288 | x(42E80018): ADD R2, SP, 18H |
| 0289 | x(43000020): MOV R3, R0, 20H |
| 028A | y .FIXUP P |
| 028A | y(F7114006): BL MOD1 [Files] PROC20 |
| Texts.WriteInt(W,z libno,a 4)b;c Texts.Write(W,d " ")e;f Texts.WriteString(W,g name)h |
| 028B | z .FIXUP D |
| 028B | z(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 028C | z(40D80000): ADD R0, SB, 0H [data] |
| 028D | z .FIXUP D |
| 028D | z(8D200002): LDR SB, MT, MOD2 [Texts] |
| 028E | z(41D80005): ADD R1, SB, VAR5 |
| 028F | a(92E0000D): LDR R2, SP, DH |
| 0290 | b(43000004): MOV R3, R0, 4H |
| 0291 | c .FIXUP P |
| 0291 | c(F721E007): BL MOD2 [Texts] PROC30 |
| 0292 | d .FIXUP D |
| 0292 | d(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0293 | d(40D80000): ADD R0, SB, 0H [data] |
| 0294 | d .FIXUP D |
| 0294 | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0295 | d(41D80005): ADD R1, SB, VAR5 |
| 0296 | e(42000020): MOV R2, R0, 20H |
| 0297 | f .FIXUP P |
| 0297 | f(F721B006): BL MOD2 [Texts] PROC27 |
| 0298 | g .FIXUP D |
| 0298 | g(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0299 | g(40D80000): ADD R0, SB, 0H [data] |
| 029A | g .FIXUP D |
| 029A | g(8D200002): LDR SB, MT, MOD2 [Texts] |
| 029B | g(41D80005): ADD R1, SB, VAR5 |
| 029C | h(42E80018): ADD R2, SP, 18H |
| 029D | h(43000020): MOV R3, R0, 20H |
| ELSIFi classj = Rectangles THENk |
| 029E | i .FIXUP P |
| 029E | i(F721D007): BL MOD2 [Texts] PROC29 |
| 029F | j(E7000037): B 55 [02D7H] |
| 02A0 | k(90E00005): LDR R0, SP, 5H |
| 02A1 | k(40090004): SUB R0, R0, 4H |
| 02A2 | k(E9000025): BNE 37 [02C8H] |
| Files.ReadByte(R,l len)m;n Texts.WriteInt(W,o len,p 4)q;r |
| 02A3 | l(40E8003C): ADD R0, SP, 3CH |
| 02A4 | l .FIXUP D |
| 02A4 | l(8D10000A): LDR SB, MT, MOD1 [Files] |
| 02A5 | l(41D80001): ADD R1, SB, VAR1 |
| 02A6 | m(42E80008): ADD R2, SP, 8H |
| 02A7 | n .FIXUP P |
| 02A7 | n(F710E009): BL MOD1 [Files] PROC14 |
| 02A8 | o .FIXUP D |
| 02A8 | o(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 02A9 | o(40D80000): ADD R0, SB, 0H [data] |
| 02AA | o .FIXUP D |
| 02AA | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02AB | o(41D80005): ADD R1, SB, VAR5 |
| 02AC | p(92E00008): LDR R2, SP, 8H |
| 02AD | q(43000004): MOV R3, R0, 4H |
| 02AE | r .FIXUP P |
| 02AE | r(F721E007): BL MOD2 [Texts] PROC30 |
| Files.ReadByte(R,s lw)t;u Texts.WriteInt(W,v lw,w 4)x;y |
| 02AF | s(40E8003C): ADD R0, SP, 3CH |
| 02B0 | s .FIXUP D |
| 02B0 | s(8D100006): LDR SB, MT, MOD1 [Files] |
| 02B1 | s(41D80001): ADD R1, SB, VAR1 |
| 02B2 | t(42E80009): ADD R2, SP, 9H |
| 02B3 | u .FIXUP P |
| 02B3 | u(F710E005): BL MOD1 [Files] PROC14 |
| 02B4 | v .FIXUP D |
| 02B4 | v(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 02B5 | v(40D80000): ADD R0, SB, 0H [data] |
| 02B6 | v .FIXUP D |
| 02B6 | v(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02B7 | v(41D80005): ADD R1, SB, VAR5 |
| 02B8 | w(92E00009): LDR R2, SP, 9H |
| 02B9 | x(43000004): MOV R3, R0, 4H |
| 02BA | y .FIXUP P |
| 02BA | y(F721E007): BL MOD2 [Texts] PROC30 |
| Files.ReadByte(R,z vers)a;b Texts.WriteInt(W,c vers,d 4)e |
| 02BB | z(40E8003C): ADD R0, SP, 3CH |
| 02BC | z .FIXUP D |
| 02BC | z(8D100006): LDR SB, MT, MOD1 [Files] |
| 02BD | z(41D80001): ADD R1, SB, VAR1 |
| 02BE | a(42E8000A): ADD R2, SP, AH |
| 02BF | b .FIXUP P |
| 02BF | b(F710E005): BL MOD1 [Files] PROC14 |
| 02C0 | c .FIXUP D |
| 02C0 | c(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 02C1 | c(40D80000): ADD R0, SB, 0H [data] |
| 02C2 | c .FIXUP D |
| 02C2 | c(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02C3 | c(41D80005): ADD R1, SB, VAR5 |
| 02C4 | d(92E0000A): LDR R2, SP, AH |
| 02C5 | e(43000004): MOV R3, R0, 4H |
| ELSEf Textsg.WriteString(W,h "other class =")i;j Texts.WriteInt(W,k class,l 4)m |
| 02C6 | f .FIXUP P |
| 02C6 | f(F721E007): BL MOD2 [Texts] PROC30 |
| 02C7 | g(E700000F): B 15 [02D7H] |
| 02C8 | h .FIXUP D |
| 02C8 | h(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 02C9 | h(40D80000): ADD R0, SB, 0H [data] |
| 02CA | h .FIXUP D |
| 02CA | h(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02CB | h(41D80005): ADD R1, SB, VAR5 |
| 02CC | i .FIXUP D |
| 02CC | i(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 02CD | i(42D8006C): ADD R2, SB, 6CH ["other class ="] |
| 02CE | i(4300000E): MOV R3, R0, EH |
| 02CF | j .FIXUP P |
| 02CF | j(F721D009): BL MOD2 [Texts] PROC29 |
| 02D0 | k .FIXUP D |
| 02D0 | k(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 02D1 | k(40D80000): ADD R0, SB, 0H [data] |
| 02D2 | k .FIXUP D |
| 02D2 | k(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02D3 | k(41D80005): ADD R1, SB, VAR5 |
| 02D4 | l(92E00005): LDR R2, SP, 5H |
| 02D5 | m(43000004): MOV R3, R0, 4H |
| ENDn |
| 02D6 | n .FIXUP P |
| 02D6 | n(F721E007): BL MOD2 [Texts] PROC30 |
| END ; |
| Texts.WriteLn(W)o;p Files.ReadByte(R,q class)r |
| 02D7 | o .FIXUP D |
| 02D7 | o(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 02D8 | o(40D80000): ADD R0, SB, 0H [data] |
| 02D9 | o .FIXUP D |
| 02D9 | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02DA | o(41D80005): ADD R1, SB, VAR5 |
| 02DB | p .FIXUP P |
| 02DB | p(F721C005): BL MOD2 [Texts] PROC28 |
| 02DC | q(40E8003C): ADD R0, SP, 3CH |
| 02DD | q .FIXUP D |
| 02DD | q(8D100004): LDR SB, MT, MOD1 [Files] |
| 02DE | q(41D80001): ADD R1, SB, VAR1 |
| 02DF | r(42E80005): ADD R2, SP, 5H |
| ENDs |
| 02E0 | s .FIXUP P |
| 02E0 | s(F710E005): BL MOD1 [Files] PROC14 |
| 02E1 | s(E7FFFEE6): B -282 [01C8H] |
| ELSE Textst.WriteString(W,u " not a graphics file")v |
| 02E2 | t(E7000008): B 8 [02EBH] |
| 02E3 | u .FIXUP D |
| 02E3 | u(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 02E4 | u(40D80000): ADD R0, SB, 0H [data] |
| 02E5 | u .FIXUP D |
| 02E5 | u(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02E6 | u(41D80005): ADD R1, SB, VAR5 |
| 02E7 | v .FIXUP D |
| 02E7 | v(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 02E8 | v(42D8007C): ADD R2, SB, 7CH [" not a graphics file"] |
| 02E9 | v(43000015): MOV R3, R0, 15H |
| ENDw |
| 02EA | w .FIXUP P |
| 02EA | w(F721D00A): BL MOD2 [Texts] PROC29 |
| ELSE Textsx.WriteString(W,y " not found")z |
| 02EB | x(E7000008): B 8 [02F4H] |
| 02EC | y .FIXUP D |
| 02EC | y(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 02ED | y(40D80000): ADD R0, SB, 0H [data] |
| 02EE | y .FIXUP D |
| 02EE | y(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02EF | y(41D80005): ADD R1, SB, VAR5 |
| 02F0 | z .FIXUP D |
| 02F0 | z(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 02F1 | z(42D80094): ADD R2, SB, 94H [" not found"] |
| 02F2 | z(4300000B): MOV R3, R0, BH |
| ENDa ; |
| 02F3 | a .FIXUP P |
| 02F3 | a(F721D009): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)b;c Texts.Append(Oberon.Log,d W.buf)e |
| 02F4 | b .FIXUP D |
| 02F4 | b(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 02F5 | b(40D80000): ADD R0, SB, 0H [data] |
| 02F6 | b .FIXUP D |
| 02F6 | b(8D200002): LDR SB, MT, MOD2 [Texts] |
| 02F7 | b(41D80005): ADD R1, SB, VAR5 |
| 02F8 | c .FIXUP P |
| 02F8 | c(F721C005): BL MOD2 [Texts] PROC28 |
| 02F9 | d .FIXUP D |
| 02F9 | d(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 02FA | d(80D0000D): LDR R0, SB, VAR13 |
| 02FB | e .FIXUP D |
| 02FB | e(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 02FC | e(81D00000): LDR R1, SB, 0H [data] |
| ENDf |
| 02FD | f .FIXUP P |
| 02FD | f(F720E005): BL MOD2 [Texts] PROC14 |
| ENDg DecGraph1; |
| 02FE | g(8FE00000): LDR LNK, SP, 0H |
| 02FF | g(4EE800C8): ADD SP, SP, C8H |
| 0300 | g(C700000F): B LNK |
| |
| PROCEDURE DecLibrary1*; |
| VAR ch: CHAR; |
| class, col, fno, cat, inx, libno, len, lnw, vers: BYTE; |
| xy, wh: INTEGER; |
| name: ARRAY 32 OF CHAR; |
| F: Files.File; R: Files.Rider; |
| S: Texts.Scanner; |
| BEGINh Texts.OpenScanner(S,i Oberon.Par.text,j Oberon.Par.pos)k;l Texts.Scan(S)m;n |
| 0301 | h .PROC 3 |
| 0301 | h .COMMAND DecLibrary1 |
| 0301 | h(4EE900C8): SUB SP, SP, C8H |
| 0302 | h(AFE00000): STR LNK, SP, 0H |
| 0303 | i(40E80054): ADD R0, SP, 54H |
| 0304 | i .FIXUP D |
| 0304 | i(8D200009): LDR SB, MT, MOD2 [Texts] |
| 0305 | i(41D80003): ADD R1, SB, VAR3 |
| 0306 | j .FIXUP D |
| 0306 | j(8D400002): LDR SB, MT, MOD4 [Oberon] |
| 0307 | j(42D8000E): ADD R2, SB, VAR14 |
| 0308 | j(82200008): LDR R2, R2, 8H |
| 0309 | k .FIXUP D |
| 0309 | k(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 030A | k(43D8000E): ADD R3, SB, VAR14 |
| 030B | k(8330000C): LDR R3, R3, CH |
| 030C | l .FIXUP P |
| 030C | l(F721500F): BL MOD2 [Texts] PROC21 |
| 030D | m(40E80054): ADD R0, SP, 54H |
| 030E | m .FIXUP D |
| 030E | m(8D200005): LDR SB, MT, MOD2 [Texts] |
| 030F | m(41D80003): ADD R1, SB, VAR3 |
| 0310 | n .FIXUP P |
| 0310 | n(F7216004): BL MOD2 [Texts] PROC22 |
| IF S.class = Texts.Name THENo |
| 0311 | o(80E00090): LDR R0, SP, 90H |
| 0312 | o(40090001): SUB R0, R0, 1H |
| 0313 | o(E900018E): BNE 398 [04A2H] |
| Texts.WriteString(W,p "decode library1 ")q;r Texts.WriteString(W,s S.s)t;u |
| 0314 | p .FIXUP D |
| 0314 | p(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 0315 | p(40D80000): ADD R0, SB, 0H [data] |
| 0316 | p .FIXUP D |
| 0316 | p(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0317 | p(41D80005): ADD R1, SB, VAR5 |
| 0318 | q .FIXUP D |
| 0318 | q(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 0319 | q(42D800A0): ADD R2, SB, A0H ["decode library1 "] |
| 031A | q(43000011): MOV R3, R0, 11H |
| 031B | r .FIXUP P |
| 031B | r(F721D00B): BL MOD2 [Texts] PROC29 |
| 031C | s .FIXUP D |
| 031C | s(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 031D | s(40D80000): ADD R0, SB, 0H [data] |
| 031E | s .FIXUP D |
| 031E | s(8D200002): LDR SB, MT, MOD2 [Texts] |
| 031F | s(41D80005): ADD R1, SB, VAR5 |
| 0320 | t(42E800A8): ADD R2, SP, A8H |
| 0321 | t(43000020): MOV R3, R0, 20H |
| 0322 | u .FIXUP P |
| 0322 | u(F721D007): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)v;w Texts.Append(Oberon.Log,x W.buf)y;z |
| 0323 | v .FIXUP D |
| 0323 | v(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0324 | v(40D80000): ADD R0, SB, 0H [data] |
| 0325 | v .FIXUP D |
| 0325 | v(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0326 | v(41D80005): ADD R1, SB, VAR5 |
| 0327 | w .FIXUP P |
| 0327 | w(F721C005): BL MOD2 [Texts] PROC28 |
| 0328 | x .FIXUP D |
| 0328 | x(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 0329 | x(80D0000D): LDR R0, SB, VAR13 |
| 032A | y .FIXUP D |
| 032A | y(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 032B | y(81D00000): LDR R1, SB, 0H [data] |
| 032C | z .FIXUP P |
| 032C | z(F720E005): BL MOD2 [Texts] PROC14 |
| F := Files.Old(S.s)a;b |
| 032D | a(40E800A8): ADD R0, SP, A8H |
| 032E | a(41000020): MOV R1, R0, 20H |
| 032F | b .FIXUP P |
| 032F | b(F7102003): BL MOD1 [Files] PROC2 |
| 0330 | b(A0E00038): STR R0, SP, 38H |
| IF F # NIL THENc |
| 0331 | c(80E00038): LDR R0, SP, 38H |
| 0332 | c(E100015D): BEQ 349 [0490H] |
| Files.Set(R,d F,e 0)f;g Files.Read(R,h ch)i;j |
| 0333 | d(40E8003C): ADD R0, SP, 3CH |
| 0334 | d .FIXUP D |
| 0334 | d(8D10000A): LDR SB, MT, MOD1 [Files] |
| 0335 | d(41D80001): ADD R1, SB, VAR1 |
| 0336 | e(82E00038): LDR R2, SP, 38H |
| 0337 | f(43000000): MOV R3, R0, 0H |
| 0338 | g .FIXUP P |
| 0338 | g(F710B009): BL MOD1 [Files] PROC11 |
| 0339 | h(40E8003C): ADD R0, SP, 3CH |
| 033A | h .FIXUP D |
| 033A | h(8D100006): LDR SB, MT, MOD1 [Files] |
| 033B | h(41D80001): ADD R1, SB, VAR1 |
| 033C | i(42E80004): ADD R2, SP, 4H |
| 033D | j .FIXUP P |
| 033D | j(F7110005): BL MOD1 [Files] PROC16 |
| IF ch = 0FBX THENk |
| 033E | k(90E00004): LDR R0, SP, 4H |
| 033F | k(400900FB): SUB R0, R0, FBH |
| 0340 | k(E9000146): BNE 326 [0487H] |
| Files.ReadByte(R,l class)m;n |
| 0341 | l(40E8003C): ADD R0, SP, 3CH |
| 0342 | l .FIXUP D |
| 0342 | l(8D100008): LDR SB, MT, MOD1 [Files] |
| 0343 | l(41D80001): ADD R1, SB, VAR1 |
| 0344 | m(42E80005): ADD R2, SP, 5H |
| 0345 | n .FIXUP P |
| 0345 | n(F710E008): BL MOD1 [Files] PROC14 |
| WHILE (class < 255)o & ~pR.eof DOq |
| 0346 | o(90E00005): LDR R0, SP, 5H |
| 0347 | o(400900FF): SUB R0, R0, FFH |
| 0348 | p(ED00013D): BGE 317 [0486H] |
| 0349 | q(90E0003C): LDR R0, SP, 3CH |
| 034A | q(E900013B): BNE 315 [0486H] |
| WHILE class < 255 DOr |
| 034B | r(90E00005): LDR R0, SP, 5H |
| 034C | r(400900FF): SUB R0, R0, FFH |
| 034D | r(ED0000F8): BGE 248 [0446H] |
| Texts.WriteInt(W,s class,t 4)u;v |
| 034E | s .FIXUP D |
| 034E | s(8D00000C): LDR SB, MT, MOD0 [GraphTool] |
| 034F | s(40D80000): ADD R0, SB, 0H [data] |
| 0350 | s .FIXUP D |
| 0350 | s(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0351 | s(41D80005): ADD R1, SB, VAR5 |
| 0352 | t(92E00005): LDR R2, SP, 5H |
| 0353 | u(43000004): MOV R3, R0, 4H |
| 0354 | v .FIXUP P |
| 0354 | v(F721E00F): BL MOD2 [Texts] PROC30 |
| IF class = Context THENw |
| 0355 | w(90E00005): LDR R0, SP, 5H |
| 0356 | w(E9000042): BNE 66 [0399H] |
| Files.ReadByte(R,x cat)y;z Files.ReadByte(R,a inx)b;c Texts.WriteInt(W,d cat,e 4)f;g Texts.WriteInt(W,h inx,i 4)j;k |
| 0357 | x(40E8003C): ADD R0, SP, 3CH |
| 0358 | x .FIXUP D |
| 0358 | x(8D100008): LDR SB, MT, MOD1 [Files] |
| 0359 | x(41D80001): ADD R1, SB, VAR1 |
| 035A | y(42E80008): ADD R2, SP, 8H |
| 035B | z .FIXUP P |
| 035B | z(F710E007): BL MOD1 [Files] PROC14 |
| 035C | a(40E8003C): ADD R0, SP, 3CH |
| 035D | a .FIXUP D |
| 035D | a(8D100005): LDR SB, MT, MOD1 [Files] |
| 035E | a(41D80001): ADD R1, SB, VAR1 |
| 035F | b(42E80009): ADD R2, SP, 9H |
| 0360 | c .FIXUP P |
| 0360 | c(F710E005): BL MOD1 [Files] PROC14 |
| 0361 | d .FIXUP D |
| 0361 | d(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0362 | d(40D80000): ADD R0, SB, 0H [data] |
| 0363 | d .FIXUP D |
| 0363 | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0364 | d(41D80005): ADD R1, SB, VAR5 |
| 0365 | e(92E00008): LDR R2, SP, 8H |
| 0366 | f(43000004): MOV R3, R0, 4H |
| 0367 | g .FIXUP P |
| 0367 | g(F721E007): BL MOD2 [Texts] PROC30 |
| 0368 | h .FIXUP D |
| 0368 | h(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0369 | h(40D80000): ADD R0, SB, 0H [data] |
| 036A | h .FIXUP D |
| 036A | h(8D200002): LDR SB, MT, MOD2 [Texts] |
| 036B | h(41D80005): ADD R1, SB, VAR5 |
| 036C | i(92E00009): LDR R2, SP, 9H |
| 036D | j(43000004): MOV R3, R0, 4H |
| 036E | k .FIXUP P |
| 036E | k(F721E007): BL MOD2 [Texts] PROC30 |
| Files.ReadString(R,l name)m;n Texts.Write(W,o " ")p;q Texts.WriteString(W,r name)s;t |
| 036F | l(40E8003C): ADD R0, SP, 3CH |
| 0370 | l .FIXUP D |
| 0370 | l(8D100006): LDR SB, MT, MOD1 [Files] |
| 0371 | l(41D80001): ADD R1, SB, VAR1 |
| 0372 | m(42E80018): ADD R2, SP, 18H |
| 0373 | m(43000020): MOV R3, R0, 20H |
| 0374 | n .FIXUP P |
| 0374 | n(F7114006): BL MOD1 [Files] PROC20 |
| 0375 | o .FIXUP D |
| 0375 | o(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0376 | o(40D80000): ADD R0, SB, 0H [data] |
| 0377 | o .FIXUP D |
| 0377 | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0378 | o(41D80005): ADD R1, SB, VAR5 |
| 0379 | p(42000020): MOV R2, R0, 20H |
| 037A | q .FIXUP P |
| 037A | q(F721B006): BL MOD2 [Texts] PROC27 |
| 037B | r .FIXUP D |
| 037B | r(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 037C | r(40D80000): ADD R0, SB, 0H [data] |
| 037D | r .FIXUP D |
| 037D | r(8D200002): LDR SB, MT, MOD2 [Texts] |
| 037E | r(41D80005): ADD R1, SB, VAR5 |
| 037F | s(42E80018): ADD R2, SP, 18H |
| 0380 | s(43000020): MOV R3, R0, 20H |
| 0381 | t .FIXUP P |
| 0381 | t(F721D007): BL MOD2 [Texts] PROC29 |
| IF cat = 2 THENu Files.ReadString(R,v name)w;x Texts.Write(W,y " ")z;a Texts.WriteString(W,b name)c ENDd |
| 0382 | u(90E00008): LDR R0, SP, 8H |
| 0383 | u(40090002): SUB R0, R0, 2H |
| 0384 | u(E9000013): BNE 19 [0398H] |
| 0385 | v(40E8003C): ADD R0, SP, 3CH |
| 0386 | v .FIXUP D |
| 0386 | v(8D100009): LDR SB, MT, MOD1 [Files] |
| 0387 | v(41D80001): ADD R1, SB, VAR1 |
| 0388 | w(42E80018): ADD R2, SP, 18H |
| 0389 | w(43000020): MOV R3, R0, 20H |
| 038A | x .FIXUP P |
| 038A | x(F7114009): BL MOD1 [Files] PROC20 |
| 038B | y .FIXUP D |
| 038B | y(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 038C | y(40D80000): ADD R0, SB, 0H [data] |
| 038D | y .FIXUP D |
| 038D | y(8D200002): LDR SB, MT, MOD2 [Texts] |
| 038E | y(41D80005): ADD R1, SB, VAR5 |
| 038F | z(42000020): MOV R2, R0, 20H |
| 0390 | a .FIXUP P |
| 0390 | a(F721B006): BL MOD2 [Texts] PROC27 |
| 0391 | b .FIXUP D |
| 0391 | b(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0392 | b(40D80000): ADD R0, SB, 0H [data] |
| 0393 | b .FIXUP D |
| 0393 | b(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0394 | b(41D80005): ADD R1, SB, VAR5 |
| 0395 | c(42E80018): ADD R2, SP, 18H |
| 0396 | c(43000020): MOV R3, R0, 20H |
| 0397 | d .FIXUP P |
| 0397 | d(F721D007): BL MOD2 [Texts] PROC29 |
| ELSE Filese.ReadInt(R,f xy)g;h |
| 0398 | e(E70000A2): B 162 [043BH] |
| 0399 | f(40E8003C): ADD R0, SP, 3CH |
| 039A | f .FIXUP D |
| 039A | f(8D100007): LDR SB, MT, MOD1 [Files] |
| 039B | f(41D80001): ADD R1, SB, VAR1 |
| 039C | g(42E80010): ADD R2, SP, 10H |
| 039D | h .FIXUP P |
| 039D | h(F7111006): BL MOD1 [Files] PROC17 |
| Texts.WriteInt(W,i xy * 10000H DIVj 10000H,k 5)l;m Texts.WriteInt(W,n xy DIV 10000H,o 5)p;q |
| 039E | i .FIXUP D |
| 039E | i(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 039F | i(40D80000): ADD R0, SB, 0H [data] |
| 03A0 | i .FIXUP D |
| 03A0 | i(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03A1 | i(41D80005): ADD R1, SB, VAR5 |
| 03A2 | j(82E00010): LDR R2, SP, 10H |
| 03A3 | j(42210010): LSL R2, R2, 10H |
| 03A4 | k(42220010): ASR R2, R2, 10H |
| 03A5 | l(43000005): MOV R3, R0, 5H |
| 03A6 | m .FIXUP P |
| 03A6 | m(F721E009): BL MOD2 [Texts] PROC30 |
| 03A7 | n .FIXUP D |
| 03A7 | n(8D000007): LDR SB, MT, MOD0 [GraphTool] |
| 03A8 | n(40D80000): ADD R0, SB, 0H [data] |
| 03A9 | n .FIXUP D |
| 03A9 | n(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03AA | n(41D80005): ADD R1, SB, VAR5 |
| 03AB | o(82E00010): LDR R2, SP, 10H |
| 03AC | o(42220010): ASR R2, R2, 10H |
| 03AD | p(43000005): MOV R3, R0, 5H |
| 03AE | q .FIXUP P |
| 03AE | q(F721E008): BL MOD2 [Texts] PROC30 |
| Files.ReadInt(R,r wh)s;t |
| 03AF | r(40E8003C): ADD R0, SP, 3CH |
| 03B0 | r .FIXUP D |
| 03B0 | r(8D100007): LDR SB, MT, MOD1 [Files] |
| 03B1 | r(41D80001): ADD R1, SB, VAR1 |
| 03B2 | s(42E80014): ADD R2, SP, 14H |
| 03B3 | t .FIXUP P |
| 03B3 | t(F7111005): BL MOD1 [Files] PROC17 |
| Texts.WriteInt(W,u wh * 10000H DIVv 10000H,w 5)x;y Texts.WriteInt(W,z wh DIV 10000H,a 5)b;c |
| 03B4 | u .FIXUP D |
| 03B4 | u(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 03B5 | u(40D80000): ADD R0, SB, 0H [data] |
| 03B6 | u .FIXUP D |
| 03B6 | u(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03B7 | u(41D80005): ADD R1, SB, VAR5 |
| 03B8 | v(82E00014): LDR R2, SP, 14H |
| 03B9 | v(42210010): LSL R2, R2, 10H |
| 03BA | w(42220010): ASR R2, R2, 10H |
| 03BB | x(43000005): MOV R3, R0, 5H |
| 03BC | y .FIXUP P |
| 03BC | y(F721E009): BL MOD2 [Texts] PROC30 |
| 03BD | z .FIXUP D |
| 03BD | z(8D000007): LDR SB, MT, MOD0 [GraphTool] |
| 03BE | z(40D80000): ADD R0, SB, 0H [data] |
| 03BF | z .FIXUP D |
| 03BF | z(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03C0 | z(41D80005): ADD R1, SB, VAR5 |
| 03C1 | a(82E00014): LDR R2, SP, 14H |
| 03C2 | a(42220010): ASR R2, R2, 10H |
| 03C3 | b(43000005): MOV R3, R0, 5H |
| 03C4 | c .FIXUP P |
| 03C4 | c(F721E008): BL MOD2 [Texts] PROC30 |
| Files.ReadByte(R,d col)e;f Texts.WriteInt(W,g col,h 5)i;j |
| 03C5 | d(40E8003C): ADD R0, SP, 3CH |
| 03C6 | d .FIXUP D |
| 03C6 | d(8D100007): LDR SB, MT, MOD1 [Files] |
| 03C7 | d(41D80001): ADD R1, SB, VAR1 |
| 03C8 | e(42E80006): ADD R2, SP, 6H |
| 03C9 | f .FIXUP P |
| 03C9 | f(F710E005): BL MOD1 [Files] PROC14 |
| 03CA | g .FIXUP D |
| 03CA | g(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 03CB | g(40D80000): ADD R0, SB, 0H [data] |
| 03CC | g .FIXUP D |
| 03CC | g(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03CD | g(41D80005): ADD R1, SB, VAR5 |
| 03CE | h(92E00006): LDR R2, SP, 6H |
| 03CF | i(43000005): MOV R3, R0, 5H |
| 03D0 | j .FIXUP P |
| 03D0 | j(F721E007): BL MOD2 [Texts] PROC30 |
| IF class = Line THENk |
| 03D1 | k(90E00005): LDR R0, SP, 5H |
| 03D2 | k(40090001): SUB R0, R0, 1H |
| 03D3 | k(E9000001): BNE 1 [03D5H] |
| ELSIF classl = Caption THENm |
| 03D4 | l(E7000066): B 102 [043BH] |
| 03D5 | m(90E00005): LDR R0, SP, 5H |
| 03D6 | m(40090002): SUB R0, R0, 2H |
| 03D7 | m(E9000026): BNE 38 [03FEH] |
| Texts.Write(W,n "|")o;p Files.ReadByte(R,q fno)r;s Texts.WriteInt(W,t fno,u 5)v;w Texts.Write(W,x " ")y;z |
| 03D8 | n .FIXUP D |
| 03D8 | n(8D00000C): LDR SB, MT, MOD0 [GraphTool] |
| 03D9 | n(40D80000): ADD R0, SB, 0H [data] |
| 03DA | n .FIXUP D |
| 03DA | n(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03DB | n(41D80005): ADD R1, SB, VAR5 |
| 03DC | o(4200007C): MOV R2, R0, 7CH |
| 03DD | p .FIXUP P |
| 03DD | p(F721B00D): BL MOD2 [Texts] PROC27 |
| 03DE | q(40E8003C): ADD R0, SP, 3CH |
| 03DF | q .FIXUP D |
| 03DF | q(8D100005): LDR SB, MT, MOD1 [Files] |
| 03E0 | q(41D80001): ADD R1, SB, VAR1 |
| 03E1 | r(42E80007): ADD R2, SP, 7H |
| 03E2 | s .FIXUP P |
| 03E2 | s(F710E005): BL MOD1 [Files] PROC14 |
| 03E3 | t .FIXUP D |
| 03E3 | t(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 03E4 | t(40D80000): ADD R0, SB, 0H [data] |
| 03E5 | t .FIXUP D |
| 03E5 | t(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03E6 | t(41D80005): ADD R1, SB, VAR5 |
| 03E7 | u(92E00007): LDR R2, SP, 7H |
| 03E8 | v(43000005): MOV R3, R0, 5H |
| 03E9 | w .FIXUP P |
| 03E9 | w(F721E007): BL MOD2 [Texts] PROC30 |
| 03EA | x .FIXUP D |
| 03EA | x(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 03EB | x(40D80000): ADD R0, SB, 0H [data] |
| 03EC | x .FIXUP D |
| 03EC | x(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03ED | x(41D80005): ADD R1, SB, VAR5 |
| 03EE | y(42000020): MOV R2, R0, 20H |
| 03EF | z .FIXUP P |
| 03EF | z(F721B006): BL MOD2 [Texts] PROC27 |
| Files.ReadString(R,a name)b;c Texts.WriteString(W,d name)e |
| 03F0 | a(40E8003C): ADD R0, SP, 3CH |
| 03F1 | a .FIXUP D |
| 03F1 | a(8D100005): LDR SB, MT, MOD1 [Files] |
| 03F2 | a(41D80001): ADD R1, SB, VAR1 |
| 03F3 | b(42E80018): ADD R2, SP, 18H |
| 03F4 | b(43000020): MOV R3, R0, 20H |
| 03F5 | c .FIXUP P |
| 03F5 | c(F7114006): BL MOD1 [Files] PROC20 |
| 03F6 | d .FIXUP D |
| 03F6 | d(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 03F7 | d(40D80000): ADD R0, SB, 0H [data] |
| 03F8 | d .FIXUP D |
| 03F8 | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 03F9 | d(41D80005): ADD R1, SB, VAR5 |
| 03FA | e(42E80018): ADD R2, SP, 18H |
| 03FB | e(43000020): MOV R3, R0, 20H |
| ELSIFf classg = Rectangles THENh |
| 03FC | f .FIXUP P |
| 03FC | f(F721D007): BL MOD2 [Texts] PROC29 |
| 03FD | g(E700003D): B 61 [043BH] |
| 03FE | h(90E00005): LDR R0, SP, 5H |
| 03FF | h(40090004): SUB R0, R0, 4H |
| 0400 | h(E900002B): BNE 43 [042CH] |
| Texts.Write(W,i "|")j;k Files.ReadByte(R,l len)m;n Texts.WriteInt(W,o len,p 4)q;r |
| 0401 | i .FIXUP D |
| 0401 | i(8D000009): LDR SB, MT, MOD0 [GraphTool] |
| 0402 | i(40D80000): ADD R0, SB, 0H [data] |
| 0403 | i .FIXUP D |
| 0403 | i(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0404 | i(41D80005): ADD R1, SB, VAR5 |
| 0405 | j(4200007C): MOV R2, R0, 7CH |
| 0406 | k .FIXUP P |
| 0406 | k(F721B00A): BL MOD2 [Texts] PROC27 |
| 0407 | l(40E8003C): ADD R0, SP, 3CH |
| 0408 | l .FIXUP D |
| 0408 | l(8D100005): LDR SB, MT, MOD1 [Files] |
| 0409 | l(41D80001): ADD R1, SB, VAR1 |
| 040A | m(42E8000B): ADD R2, SP, BH |
| 040B | n .FIXUP P |
| 040B | n(F710E005): BL MOD1 [Files] PROC14 |
| 040C | o .FIXUP D |
| 040C | o(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 040D | o(40D80000): ADD R0, SB, 0H [data] |
| 040E | o .FIXUP D |
| 040E | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 040F | o(41D80005): ADD R1, SB, VAR5 |
| 0410 | p(92E0000B): LDR R2, SP, BH |
| 0411 | q(43000004): MOV R3, R0, 4H |
| 0412 | r .FIXUP P |
| 0412 | r(F721E007): BL MOD2 [Texts] PROC30 |
| Files.ReadByte(R,s lnw)t;u Texts.WriteInt(W,v lnw,w 4)x;y |
| 0413 | s(40E8003C): ADD R0, SP, 3CH |
| 0414 | s .FIXUP D |
| 0414 | s(8D100006): LDR SB, MT, MOD1 [Files] |
| 0415 | s(41D80001): ADD R1, SB, VAR1 |
| 0416 | t(42E8000C): ADD R2, SP, CH |
| 0417 | u .FIXUP P |
| 0417 | u(F710E005): BL MOD1 [Files] PROC14 |
| 0418 | v .FIXUP D |
| 0418 | v(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0419 | v(40D80000): ADD R0, SB, 0H [data] |
| 041A | v .FIXUP D |
| 041A | v(8D200002): LDR SB, MT, MOD2 [Texts] |
| 041B | v(41D80005): ADD R1, SB, VAR5 |
| 041C | w(92E0000C): LDR R2, SP, CH |
| 041D | x(43000004): MOV R3, R0, 4H |
| 041E | y .FIXUP P |
| 041E | y(F721E007): BL MOD2 [Texts] PROC30 |
| Files.ReadByte(R,z vers)a;b Texts.WriteInt(W,c vers,d 4)e |
| 041F | z(40E8003C): ADD R0, SP, 3CH |
| 0420 | z .FIXUP D |
| 0420 | z(8D100006): LDR SB, MT, MOD1 [Files] |
| 0421 | z(41D80001): ADD R1, SB, VAR1 |
| 0422 | a(42E8000D): ADD R2, SP, DH |
| 0423 | b .FIXUP P |
| 0423 | b(F710E005): BL MOD1 [Files] PROC14 |
| 0424 | c .FIXUP D |
| 0424 | c(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0425 | c(40D80000): ADD R0, SB, 0H [data] |
| 0426 | c .FIXUP D |
| 0426 | c(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0427 | c(41D80005): ADD R1, SB, VAR5 |
| 0428 | d(92E0000D): LDR R2, SP, DH |
| 0429 | e(43000004): MOV R3, R0, 4H |
| ELSEf Textsg.WriteString(W,h "other class =")i;j Texts.WriteInt(W,k class,l 4)m |
| 042A | f .FIXUP P |
| 042A | f(F721E007): BL MOD2 [Texts] PROC30 |
| 042B | g(E700000F): B 15 [043BH] |
| 042C | h .FIXUP D |
| 042C | h(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 042D | h(40D80000): ADD R0, SB, 0H [data] |
| 042E | h .FIXUP D |
| 042E | h(8D200002): LDR SB, MT, MOD2 [Texts] |
| 042F | h(41D80005): ADD R1, SB, VAR5 |
| 0430 | i .FIXUP D |
| 0430 | i(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 0431 | i(42D800B4): ADD R2, SB, B4H ["other class ="] |
| 0432 | i(4300000E): MOV R3, R0, EH |
| 0433 | j .FIXUP P |
| 0433 | j(F721D009): BL MOD2 [Texts] PROC29 |
| 0434 | k .FIXUP D |
| 0434 | k(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0435 | k(40D80000): ADD R0, SB, 0H [data] |
| 0436 | k .FIXUP D |
| 0436 | k(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0437 | k(41D80005): ADD R1, SB, VAR5 |
| 0438 | l(92E00005): LDR R2, SP, 5H |
| 0439 | m(43000004): MOV R3, R0, 4H |
| ENDn |
| 043A | n .FIXUP P |
| 043A | n(F721E007): BL MOD2 [Texts] PROC30 |
| END ; |
| Texts.WriteLn(W)o;p Files.ReadByte(R,q class)r |
| 043B | o .FIXUP D |
| 043B | o(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 043C | o(40D80000): ADD R0, SB, 0H [data] |
| 043D | o .FIXUP D |
| 043D | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 043E | o(41D80005): ADD R1, SB, VAR5 |
| 043F | p .FIXUP P |
| 043F | p(F721C005): BL MOD2 [Texts] PROC28 |
| 0440 | q(40E8003C): ADD R0, SP, 3CH |
| 0441 | q .FIXUP D |
| 0441 | q(8D100004): LDR SB, MT, MOD1 [Files] |
| 0442 | q(41D80001): ADD R1, SB, VAR1 |
| 0443 | r(42E80005): ADD R2, SP, 5H |
| ENDs ; |
| 0444 | s .FIXUP P |
| 0444 | s(F710E005): BL MOD1 [Files] PROC14 |
| 0445 | s(E7FFFF05): B -251 [034BH] |
| (*end macro*) Texts.WriteString(W,t "---")u;v |
| 0446 | t .FIXUP D |
| 0446 | t(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0447 | t(40D80000): ADD R0, SB, 0H [data] |
| 0448 | t .FIXUP D |
| 0448 | t(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0449 | t(41D80005): ADD R1, SB, VAR5 |
| 044A | u .FIXUP D |
| 044A | u(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 044B | u(42D800C4): ADD R2, SB, C4H ["---"] |
| 044C | u(43000004): MOV R3, R0, 4H |
| 044D | v .FIXUP P |
| 044D | v(F721D009): BL MOD2 [Texts] PROC29 |
| Files.ReadInt(R,w wh)x;y Texts.WriteInt(W,z wh MOD 10000H,a 5)b;c Texts.WriteInt(W,d wh DIV 10000H,e 5)f;g |
| 044E | w(40E8003C): ADD R0, SP, 3CH |
| 044F | w .FIXUP D |
| 044F | w(8D100005): LDR SB, MT, MOD1 [Files] |
| 0450 | w(41D80001): ADD R1, SB, VAR1 |
| 0451 | x(42E80014): ADD R2, SP, 14H |
| 0452 | y .FIXUP P |
| 0452 | y(F7111005): BL MOD1 [Files] PROC17 |
| 0453 | z .FIXUP D |
| 0453 | z(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0454 | z(40D80000): ADD R0, SB, 0H [data] |
| 0455 | z .FIXUP D |
| 0455 | z(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0456 | z(41D80005): ADD R1, SB, VAR5 |
| 0457 | a(82E00014): LDR R2, SP, 14H |
| 0458 | a(4224FFFF): AND R2, R2, FFFFFFFFH |
| 0459 | b(43000005): MOV R3, R0, 5H |
| 045A | c .FIXUP P |
| 045A | c(F721E008): BL MOD2 [Texts] PROC30 |
| 045B | d .FIXUP D |
| 045B | d(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 045C | d(40D80000): ADD R0, SB, 0H [data] |
| 045D | d .FIXUP D |
| 045D | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 045E | d(41D80005): ADD R1, SB, VAR5 |
| 045F | e(82E00014): LDR R2, SP, 14H |
| 0460 | e(42220010): ASR R2, R2, 10H |
| 0461 | f(43000005): MOV R3, R0, 5H |
| 0462 | g .FIXUP P |
| 0462 | g(F721E008): BL MOD2 [Texts] PROC30 |
| Files.ReadString(R,h name)i;j Texts.Write(W,k " ")l;m Texts.WriteString(W,n name)o;p |
| 0463 | h(40E8003C): ADD R0, SP, 3CH |
| 0464 | h .FIXUP D |
| 0464 | h(8D100007): LDR SB, MT, MOD1 [Files] |
| 0465 | h(41D80001): ADD R1, SB, VAR1 |
| 0466 | i(42E80018): ADD R2, SP, 18H |
| 0467 | i(43000020): MOV R3, R0, 20H |
| 0468 | j .FIXUP P |
| 0468 | j(F7114006): BL MOD1 [Files] PROC20 |
| 0469 | k .FIXUP D |
| 0469 | k(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 046A | k(40D80000): ADD R0, SB, 0H [data] |
| 046B | k .FIXUP D |
| 046B | k(8D200002): LDR SB, MT, MOD2 [Texts] |
| 046C | k(41D80005): ADD R1, SB, VAR5 |
| 046D | l(42000020): MOV R2, R0, 20H |
| 046E | m .FIXUP P |
| 046E | m(F721B006): BL MOD2 [Texts] PROC27 |
| 046F | n .FIXUP D |
| 046F | n(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0470 | n(40D80000): ADD R0, SB, 0H [data] |
| 0471 | n .FIXUP D |
| 0471 | n(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0472 | n(41D80005): ADD R1, SB, VAR5 |
| 0473 | o(42E80018): ADD R2, SP, 18H |
| 0474 | o(43000020): MOV R3, R0, 20H |
| 0475 | p .FIXUP P |
| 0475 | p(F721D007): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)q;r Texts.Append(Oberon.Log,s W.buf)t;u Files.ReadByte(R,v class)w |
| 0476 | q .FIXUP D |
| 0476 | q(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0477 | q(40D80000): ADD R0, SB, 0H [data] |
| 0478 | q .FIXUP D |
| 0478 | q(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0479 | q(41D80005): ADD R1, SB, VAR5 |
| 047A | r .FIXUP P |
| 047A | r(F721C005): BL MOD2 [Texts] PROC28 |
| 047B | s .FIXUP D |
| 047B | s(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 047C | s(80D0000D): LDR R0, SB, VAR13 |
| 047D | t .FIXUP D |
| 047D | t(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 047E | t(81D00000): LDR R1, SB, 0H [data] |
| 047F | u .FIXUP P |
| 047F | u(F720E005): BL MOD2 [Texts] PROC14 |
| 0480 | v(40E8003C): ADD R0, SP, 3CH |
| 0481 | v .FIXUP D |
| 0481 | v(8D100004): LDR SB, MT, MOD1 [Files] |
| 0482 | v(41D80001): ADD R1, SB, VAR1 |
| 0483 | w(42E80005): ADD R2, SP, 5H |
| ENDx |
| 0484 | x .FIXUP P |
| 0484 | x(F710E005): BL MOD1 [Files] PROC14 |
| 0485 | x(E7FFFEC0): B -320 [0346H] |
| ELSE Textsy.WriteString(W,z " not a graphics library")a |
| 0486 | y(E7000008): B 8 [048FH] |
| 0487 | z .FIXUP D |
| 0487 | z(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 0488 | z(40D80000): ADD R0, SB, 0H [data] |
| 0489 | z .FIXUP D |
| 0489 | z(8D200002): LDR SB, MT, MOD2 [Texts] |
| 048A | z(41D80005): ADD R1, SB, VAR5 |
| 048B | a .FIXUP D |
| 048B | a(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 048C | a(42D800C8): ADD R2, SB, C8H [" not a graphics library"] |
| 048D | a(43000018): MOV R3, R0, 18H |
| ENDb |
| 048E | b .FIXUP P |
| 048E | b(F721D00A): BL MOD2 [Texts] PROC29 |
| ELSE Textsc.WriteString(W,d " not found")e |
| 048F | c(E7000008): B 8 [0498H] |
| 0490 | d .FIXUP D |
| 0490 | d(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0491 | d(40D80000): ADD R0, SB, 0H [data] |
| 0492 | d .FIXUP D |
| 0492 | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0493 | d(41D80005): ADD R1, SB, VAR5 |
| 0494 | e .FIXUP D |
| 0494 | e(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 0495 | e(42D800E0): ADD R2, SB, E0H [" not found"] |
| 0496 | e(4300000B): MOV R3, R0, BH |
| ENDf ; |
| 0497 | f .FIXUP P |
| 0497 | f(F721D009): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)g;h Texts.Append(Oberon.Log,i W.buf)j |
| 0498 | g .FIXUP D |
| 0498 | g(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0499 | g(40D80000): ADD R0, SB, 0H [data] |
| 049A | g .FIXUP D |
| 049A | g(8D200002): LDR SB, MT, MOD2 [Texts] |
| 049B | g(41D80005): ADD R1, SB, VAR5 |
| 049C | h .FIXUP P |
| 049C | h(F721C005): BL MOD2 [Texts] PROC28 |
| 049D | i .FIXUP D |
| 049D | i(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 049E | i(80D0000D): LDR R0, SB, VAR13 |
| 049F | j .FIXUP D |
| 049F | j(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 04A0 | j(81D00000): LDR R1, SB, 0H [data] |
| ENDk |
| 04A1 | k .FIXUP P |
| 04A1 | k(F720E005): BL MOD2 [Texts] PROC14 |
| ENDl DecLibrary1; |
| 04A2 | l(8FE00000): LDR LNK, SP, 0H |
| 04A3 | l(4EE800C8): ADD SP, SP, C8H |
| 04A4 | l(C700000F): B LNK |
| |
| PROCEDURE ConvertFontname(VAR x: ARRAY OF CHAR); |
| BEGINm (* Syntax --> Oberon *) |
| 04A5 | m(4EE9000C): SUB SP, SP, CH |
| 04A6 | m(AFE00000): STR LNK, SP, 0H |
| 04A7 | m(A0E00004): STR R0, SP, 4H |
| 04A8 | m(A1E00008): STR R1, SP, 8H |
| IF (x[0]n = "S")o & (px[1]q = "y")r & (sx[2]t = "n")u & (vx[3]w = "t")x & (yx[4]z = "a")a & (bx[5]c = "x")d THENe |
| 04A9 | n(40000000): MOV R0, R0, 0H |
| 04AA | n(81E00008): LDR R1, SP, 8H |
| 04AB | n(01090001): SUB R1, R0, R1 |
| 04AC | n(DA1F141C): BLCC MT [trap=1, pos=7956] |
| 04AD | n(81E00004): LDR R1, SP, 4H |
| 04AE | n(00180000): ADD R0, R1, R0 |
| 04AF | o(90000000): LDR R0, R0, 0H |
| 04B0 | o(40090053): SUB R0, R0, 53H |
| 04B1 | p(E900005D): BNE 93 [050FH] |
| 04B2 | q(40000001): MOV R0, R0, 1H |
| 04B3 | q(81E00008): LDR R1, SP, 8H |
| 04B4 | q(01090001): SUB R1, R0, R1 |
| 04B5 | q(DA1F231C): BLCC MT [trap=1, pos=7971] |
| 04B6 | q(81E00004): LDR R1, SP, 4H |
| 04B7 | q(00180000): ADD R0, R1, R0 |
| 04B8 | r(90000000): LDR R0, R0, 0H |
| 04B9 | r(40090079): SUB R0, R0, 79H |
| 04BA | s(E9000054): BNE 84 [050FH] |
| 04BB | t(40000002): MOV R0, R0, 2H |
| 04BC | t(81E00008): LDR R1, SP, 8H |
| 04BD | t(01090001): SUB R1, R0, R1 |
| 04BE | t(DA1F321C): BLCC MT [trap=1, pos=7986] |
| 04BF | t(81E00004): LDR R1, SP, 4H |
| 04C0 | t(00180000): ADD R0, R1, R0 |
| 04C1 | u(90000000): LDR R0, R0, 0H |
| 04C2 | u(4009006E): SUB R0, R0, 6EH |
| 04C3 | v(E900004B): BNE 75 [050FH] |
| 04C4 | w(40000003): MOV R0, R0, 3H |
| 04C5 | w(81E00008): LDR R1, SP, 8H |
| 04C6 | w(01090001): SUB R1, R0, R1 |
| 04C7 | w(DA1F411C): BLCC MT [trap=1, pos=8001] |
| 04C8 | w(81E00004): LDR R1, SP, 4H |
| 04C9 | w(00180000): ADD R0, R1, R0 |
| 04CA | x(90000000): LDR R0, R0, 0H |
| 04CB | x(40090074): SUB R0, R0, 74H |
| 04CC | y(E9000042): BNE 66 [050FH] |
| 04CD | z(40000004): MOV R0, R0, 4H |
| 04CE | z(81E00008): LDR R1, SP, 8H |
| 04CF | z(01090001): SUB R1, R0, R1 |
| 04D0 | z(DA1F501C): BLCC MT [trap=1, pos=8016] |
| 04D1 | z(81E00004): LDR R1, SP, 4H |
| 04D2 | z(00180000): ADD R0, R1, R0 |
| 04D3 | a(90000000): LDR R0, R0, 0H |
| 04D4 | a(40090061): SUB R0, R0, 61H |
| 04D5 | b(E9000039): BNE 57 [050FH] |
| 04D6 | c(40000005): MOV R0, R0, 5H |
| 04D7 | c(81E00008): LDR R1, SP, 8H |
| 04D8 | c(01090001): SUB R1, R0, R1 |
| 04D9 | c(DA1F5F1C): BLCC MT [trap=1, pos=8031] |
| 04DA | c(81E00004): LDR R1, SP, 4H |
| 04DB | c(00180000): ADD R0, R1, R0 |
| 04DC | d(90000000): LDR R0, R0, 0H |
| 04DD | d(40090078): SUB R0, R0, 78H |
| 04DE | e(E9000030): BNE 48 [050FH] |
| x[0]f := "O";g x[1]h := "b";i x[2]j := "e";k x[3]l := "r";m x[4]n := "o";o x[5]p := "n" |
| 04DF | f(40000000): MOV R0, R0, 0H |
| 04E0 | f(81E00008): LDR R1, SP, 8H |
| 04E1 | f(01090001): SUB R1, R0, R1 |
| 04E2 | f(DA1F761C): BLCC MT [trap=1, pos=8054] |
| 04E3 | f(81E00004): LDR R1, SP, 4H |
| 04E4 | f(00180000): ADD R0, R1, R0 |
| 04E5 | g(4100004F): MOV R1, R0, 4FH |
| 04E6 | g(B1000000): STR R1, R0, 0H |
| 04E7 | h(40000001): MOV R0, R0, 1H |
| 04E8 | h(81E00008): LDR R1, SP, 8H |
| 04E9 | h(01090001): SUB R1, R0, R1 |
| 04EA | h(DA1F831C): BLCC MT [trap=1, pos=8067] |
| 04EB | h(81E00004): LDR R1, SP, 4H |
| 04EC | h(00180000): ADD R0, R1, R0 |
| 04ED | i(41000062): MOV R1, R0, 62H |
| 04EE | i(B1000000): STR R1, R0, 0H |
| 04EF | j(40000002): MOV R0, R0, 2H |
| 04F0 | j(81E00008): LDR R1, SP, 8H |
| 04F1 | j(01090001): SUB R1, R0, R1 |
| 04F2 | j(DA1F901C): BLCC MT [trap=1, pos=8080] |
| 04F3 | j(81E00004): LDR R1, SP, 4H |
| 04F4 | j(00180000): ADD R0, R1, R0 |
| 04F5 | k(41000065): MOV R1, R0, 65H |
| 04F6 | k(B1000000): STR R1, R0, 0H |
| 04F7 | l(40000003): MOV R0, R0, 3H |
| 04F8 | l(81E00008): LDR R1, SP, 8H |
| 04F9 | l(01090001): SUB R1, R0, R1 |
| 04FA | l(DA1F9D1C): BLCC MT [trap=1, pos=8093] |
| 04FB | l(81E00004): LDR R1, SP, 4H |
| 04FC | l(00180000): ADD R0, R1, R0 |
| 04FD | m(41000072): MOV R1, R0, 72H |
| 04FE | m(B1000000): STR R1, R0, 0H |
| 04FF | n(40000004): MOV R0, R0, 4H |
| 0500 | n(81E00008): LDR R1, SP, 8H |
| 0501 | n(01090001): SUB R1, R0, R1 |
| 0502 | n(DA1FAA1C): BLCC MT [trap=1, pos=8106] |
| 0503 | n(81E00004): LDR R1, SP, 4H |
| 0504 | n(00180000): ADD R0, R1, R0 |
| 0505 | o(4100006F): MOV R1, R0, 6FH |
| 0506 | o(B1000000): STR R1, R0, 0H |
| 0507 | p(40000005): MOV R0, R0, 5H |
| 0508 | p(81E00008): LDR R1, SP, 8H |
| 0509 | p(01090001): SUB R1, R0, R1 |
| 050A | p(DA1FB71C): BLCC MT [trap=1, pos=8119] |
| 050B | p(81E00004): LDR R1, SP, 4H |
| 050C | p(00180000): ADD R0, R1, R0 |
| ENDq |
| 050D | q(4100006E): MOV R1, R0, 6EH |
| 050E | q(B1000000): STR R1, R0, 0H |
| ENDr ConvertFontname; |
| 050F | r(8FE00000): LDR LNK, SP, 0H |
| 0510 | r(4EE8000C): ADD SP, SP, CH |
| 0511 | r(C700000F): B LNK |
| |
| PROCEDURE ConvertLibrary*; |
| VAR ch: CHAR; |
| class, col, fno, cat, inx, libno, len, lnw, vers: BYTE; |
| xy, wh: INTEGER; |
| name: ARRAY 32 OF CHAR; |
| F, G: Files.File; R, Q: Files.Rider; |
| S: Texts.Scanner; |
| BEGINs Texts.OpenScanner(S,t Oberon.Par.text,u Oberon.Par.pos)v;w Texts.Scan(S)x;y |
| 0512 | s .PROC 4 |
| 0512 | s .COMMAND ConvertLibrary |
| 0512 | s(4EE900E4): SUB SP, SP, E4H |
| 0513 | s(AFE00000): STR LNK, SP, 0H |
| 0514 | t(40E80070): ADD R0, SP, 70H |
| 0515 | t .FIXUP D |
| 0515 | t(8D200076): LDR SB, MT, MOD2 [Texts] |
| 0516 | t(41D80003): ADD R1, SB, VAR3 |
| 0517 | u .FIXUP D |
| 0517 | u(8D400002): LDR SB, MT, MOD4 [Oberon] |
| 0518 | u(42D8000E): ADD R2, SB, VAR14 |
| 0519 | u(82200008): LDR R2, R2, 8H |
| 051A | v .FIXUP D |
| 051A | v(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 051B | v(43D8000E): ADD R3, SB, VAR14 |
| 051C | v(8330000C): LDR R3, R3, CH |
| 051D | w .FIXUP P |
| 051D | w(F721507C): BL MOD2 [Texts] PROC21 |
| 051E | x(40E80070): ADD R0, SP, 70H |
| 051F | x .FIXUP D |
| 051F | x(8D200005): LDR SB, MT, MOD2 [Texts] |
| 0520 | x(41D80003): ADD R1, SB, VAR3 |
| 0521 | y .FIXUP P |
| 0521 | y(F7216004): BL MOD2 [Texts] PROC22 |
| IF S.class = Texts.Name THENz |
| 0522 | z(80E000AC): LDR R0, SP, ACH |
| 0523 | z(40090001): SUB R0, R0, 1H |
| 0524 | z(E90001AA): BNE 426 [06CFH] |
| Texts.WriteString(W,a "convert library ")b;c Texts.WriteString(W,d S.s)e;f |
| 0525 | a .FIXUP D |
| 0525 | a(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 0526 | a(40D80000): ADD R0, SB, 0H [data] |
| 0527 | a .FIXUP D |
| 0527 | a(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0528 | a(41D80005): ADD R1, SB, VAR5 |
| 0529 | b .FIXUP D |
| 0529 | b(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 052A | b(42D800EC): ADD R2, SB, ECH ["convert library "] |
| 052B | b(43000011): MOV R3, R0, 11H |
| 052C | c .FIXUP P |
| 052C | c(F721D00B): BL MOD2 [Texts] PROC29 |
| 052D | d .FIXUP D |
| 052D | d(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 052E | d(40D80000): ADD R0, SB, 0H [data] |
| 052F | d .FIXUP D |
| 052F | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0530 | d(41D80005): ADD R1, SB, VAR5 |
| 0531 | e(42E800C4): ADD R2, SP, C4H |
| 0532 | e(43000020): MOV R3, R0, 20H |
| 0533 | f .FIXUP P |
| 0533 | f(F721D007): BL MOD2 [Texts] PROC29 |
| F := Files.Old(S.s)g;h |
| 0534 | g(40E800C4): ADD R0, SP, C4H |
| 0535 | g(41000020): MOV R1, R0, 20H |
| 0536 | h .FIXUP P |
| 0536 | h(F7102003): BL MOD1 [Files] PROC2 |
| 0537 | h(A0E00038): STR R0, SP, 38H |
| IF F # NIL THENi |
| 0538 | i(80E00038): LDR R0, SP, 38H |
| 0539 | i(E1000183): BEQ 387 [06BDH] |
| Texts.Scan(S)j;k G := Files.New(S.s)l;m |
| 053A | j(40E80070): ADD R0, SP, 70H |
| 053B | j .FIXUP D |
| 053B | j(8D20000C): LDR SB, MT, MOD2 [Texts] |
| 053C | j(41D80003): ADD R1, SB, VAR3 |
| 053D | k .FIXUP P |
| 053D | k(F7216007): BL MOD2 [Texts] PROC22 |
| 053E | l(40E800C4): ADD R0, SP, C4H |
| 053F | l(41000020): MOV R1, R0, 20H |
| 0540 | m .FIXUP P |
| 0540 | m(F7103003): BL MOD1 [Files] PROC3 |
| 0541 | m(A0E0003C): STR R0, SP, 3CH |
| Texts.WriteString(W,n " => ")o;p Texts.WriteString(W,q S.s)r;s |
| 0542 | n .FIXUP D |
| 0542 | n(8D000007): LDR SB, MT, MOD0 [GraphTool] |
| 0543 | n(40D80000): ADD R0, SB, 0H [data] |
| 0544 | n .FIXUP D |
| 0544 | n(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0545 | n(41D80005): ADD R1, SB, VAR5 |
| 0546 | o .FIXUP D |
| 0546 | o(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 0547 | o(42D80100): ADD R2, SB, 100H [" => "] |
| 0548 | o(43000005): MOV R3, R0, 5H |
| 0549 | p .FIXUP P |
| 0549 | p(F721D009): BL MOD2 [Texts] PROC29 |
| 054A | q .FIXUP D |
| 054A | q(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 054B | q(40D80000): ADD R0, SB, 0H [data] |
| 054C | q .FIXUP D |
| 054C | q(8D200002): LDR SB, MT, MOD2 [Texts] |
| 054D | q(41D80005): ADD R1, SB, VAR5 |
| 054E | r(42E800C4): ADD R2, SP, C4H |
| 054F | r(43000020): MOV R3, R0, 20H |
| 0550 | s .FIXUP P |
| 0550 | s(F721D007): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)t;u Texts.Append(Oberon.Log,v W.buf)w;x |
| 0551 | t .FIXUP D |
| 0551 | t(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0552 | t(40D80000): ADD R0, SB, 0H [data] |
| 0553 | t .FIXUP D |
| 0553 | t(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0554 | t(41D80005): ADD R1, SB, VAR5 |
| 0555 | u .FIXUP P |
| 0555 | u(F721C005): BL MOD2 [Texts] PROC28 |
| 0556 | v .FIXUP D |
| 0556 | v(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 0557 | v(80D0000D): LDR R0, SB, VAR13 |
| 0558 | w .FIXUP D |
| 0558 | w(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 0559 | w(81D00000): LDR R1, SB, 0H [data] |
| 055A | x .FIXUP P |
| 055A | x(F720E005): BL MOD2 [Texts] PROC14 |
| Files.Set(R,y F,z 0)a;b Files.Set(Q,c G,d 0)e;f Files.Read(R,g ch)h;i |
| 055B | y(40E80040): ADD R0, SP, 40H |
| 055C | y .FIXUP D |
| 055C | y(8D100004): LDR SB, MT, MOD1 [Files] |
| 055D | y(41D80001): ADD R1, SB, VAR1 |
| 055E | z(82E00038): LDR R2, SP, 38H |
| 055F | a(43000000): MOV R3, R0, 0H |
| 0560 | b .FIXUP P |
| 0560 | b(F710B006): BL MOD1 [Files] PROC11 |
| 0561 | c(40E80058): ADD R0, SP, 58H |
| 0562 | c .FIXUP D |
| 0562 | c(8D100006): LDR SB, MT, MOD1 [Files] |
| 0563 | c(41D80001): ADD R1, SB, VAR1 |
| 0564 | d(82E0003C): LDR R2, SP, 3CH |
| 0565 | e(43000000): MOV R3, R0, 0H |
| 0566 | f .FIXUP P |
| 0566 | f(F710B006): BL MOD1 [Files] PROC11 |
| 0567 | g(40E80040): ADD R0, SP, 40H |
| 0568 | g .FIXUP D |
| 0568 | g(8D100006): LDR SB, MT, MOD1 [Files] |
| 0569 | g(41D80001): ADD R1, SB, VAR1 |
| 056A | h(42E80004): ADD R2, SP, 4H |
| 056B | i .FIXUP P |
| 056B | i(F7110005): BL MOD1 [Files] PROC16 |
| IF ch = 0FDX THENj |
| 056C | j(90E00004): LDR R0, SP, 4H |
| 056D | j(400900FD): SUB R0, R0, FDH |
| 056E | j(E900013B): BNE 315 [06AAH] |
| Files.Write(Q,k 0FBX)l;m Files.ReadByte(R,n class)o;p |
| 056F | k(40E80058): ADD R0, SP, 58H |
| 0570 | k .FIXUP D |
| 0570 | k(8D100008): LDR SB, MT, MOD1 [Files] |
| 0571 | k(41D80001): ADD R1, SB, VAR1 |
| 0572 | l(420000FB): MOV R2, R0, FBH |
| 0573 | m .FIXUP P |
| 0573 | m(F7118008): BL MOD1 [Files] PROC24 |
| 0574 | n(40E80040): ADD R0, SP, 40H |
| 0575 | n .FIXUP D |
| 0575 | n(8D100005): LDR SB, MT, MOD1 [Files] |
| 0576 | n(41D80001): ADD R1, SB, VAR1 |
| 0577 | o(42E80005): ADD R2, SP, 5H |
| 0578 | p .FIXUP P |
| 0578 | p(F710E005): BL MOD1 [Files] PROC14 |
| WHILE (class < 255)q & ~rR.eof DOs |
| 0579 | q(90E00005): LDR R0, SP, 5H |
| 057A | q(400900FF): SUB R0, R0, FFH |
| 057B | r(ED00012D): BGE 301 [06A9H] |
| 057C | s(90E00040): LDR R0, SP, 40H |
| 057D | s(E900012B): BNE 299 [06A9H] |
| WHILE class < 255 DOt |
| 057E | t(90E00005): LDR R0, SP, 5H |
| 057F | t(400900FF): SUB R0, R0, FFH |
| 0580 | t(ED0000EB): BGE 235 [066CH] |
| Files.WriteByte(Q,u class)v;w |
| 0581 | u(40E80058): ADD R0, SP, 58H |
| 0582 | u .FIXUP D |
| 0582 | u(8D10000D): LDR SB, MT, MOD1 [Files] |
| 0583 | u(41D80001): ADD R1, SB, VAR1 |
| 0584 | v(92E00005): LDR R2, SP, 5H |
| 0585 | w .FIXUP P |
| 0585 | w(F711600D): BL MOD1 [Files] PROC22 |
| IF class = Context THENx |
| 0586 | x(90E00005): LDR R0, SP, 5H |
| 0587 | x(E9000067): BNE 103 [05EFH] |
| Files.ReadByte(R,y cat)z;a Files.ReadByte(R,b inx)c;d Texts.WriteInt(W,e cat,f 4)g;h Texts.WriteInt(W,i inx,j 4)k;l |
| 0588 | y(40E80040): ADD R0, SP, 40H |
| 0589 | y .FIXUP D |
| 0589 | y(8D100007): LDR SB, MT, MOD1 [Files] |
| 058A | y(41D80001): ADD R1, SB, VAR1 |
| 058B | z(42E80008): ADD R2, SP, 8H |
| 058C | a .FIXUP P |
| 058C | a(F710E007): BL MOD1 [Files] PROC14 |
| 058D | b(40E80040): ADD R0, SP, 40H |
| 058E | b .FIXUP D |
| 058E | b(8D100005): LDR SB, MT, MOD1 [Files] |
| 058F | b(41D80001): ADD R1, SB, VAR1 |
| 0590 | c(42E80009): ADD R2, SP, 9H |
| 0591 | d .FIXUP P |
| 0591 | d(F710E005): BL MOD1 [Files] PROC14 |
| 0592 | e .FIXUP D |
| 0592 | e(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0593 | e(40D80000): ADD R0, SB, 0H [data] |
| 0594 | e .FIXUP D |
| 0594 | e(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0595 | e(41D80005): ADD R1, SB, VAR5 |
| 0596 | f(92E00008): LDR R2, SP, 8H |
| 0597 | g(43000004): MOV R3, R0, 4H |
| 0598 | h .FIXUP P |
| 0598 | h(F721E007): BL MOD2 [Texts] PROC30 |
| 0599 | i .FIXUP D |
| 0599 | i(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 059A | i(40D80000): ADD R0, SB, 0H [data] |
| 059B | i .FIXUP D |
| 059B | i(8D200002): LDR SB, MT, MOD2 [Texts] |
| 059C | i(41D80005): ADD R1, SB, VAR5 |
| 059D | j(92E00009): LDR R2, SP, 9H |
| 059E | k(43000004): MOV R3, R0, 4H |
| 059F | l .FIXUP P |
| 059F | l(F721E007): BL MOD2 [Texts] PROC30 |
| Files.WriteByte(Q,m cat)n;o Files.WriteByte(Q,p inx)q;r |
| 05A0 | m(40E80058): ADD R0, SP, 58H |
| 05A1 | m .FIXUP D |
| 05A1 | m(8D100006): LDR SB, MT, MOD1 [Files] |
| 05A2 | m(41D80001): ADD R1, SB, VAR1 |
| 05A3 | n(92E00008): LDR R2, SP, 8H |
| 05A4 | o .FIXUP P |
| 05A4 | o(F7116005): BL MOD1 [Files] PROC22 |
| 05A5 | p(40E80058): ADD R0, SP, 58H |
| 05A6 | p .FIXUP D |
| 05A6 | p(8D100005): LDR SB, MT, MOD1 [Files] |
| 05A7 | p(41D80001): ADD R1, SB, VAR1 |
| 05A8 | q(92E00009): LDR R2, SP, 9H |
| 05A9 | r .FIXUP P |
| 05A9 | r(F7116005): BL MOD1 [Files] PROC22 |
| Files.ReadString(R,s name)t;u Texts.Write(W,v " ")w;x Texts.WriteString(W,y name)z;a |
| 05AA | s(40E80040): ADD R0, SP, 40H |
| 05AB | s .FIXUP D |
| 05AB | s(8D100005): LDR SB, MT, MOD1 [Files] |
| 05AC | s(41D80001): ADD R1, SB, VAR1 |
| 05AD | t(42E80018): ADD R2, SP, 18H |
| 05AE | t(43000020): MOV R3, R0, 20H |
| 05AF | u .FIXUP P |
| 05AF | u(F7114006): BL MOD1 [Files] PROC20 |
| 05B0 | v .FIXUP D |
| 05B0 | v(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 05B1 | v(40D80000): ADD R0, SB, 0H [data] |
| 05B2 | v .FIXUP D |
| 05B2 | v(8D200002): LDR SB, MT, MOD2 [Texts] |
| 05B3 | v(41D80005): ADD R1, SB, VAR5 |
| 05B4 | w(42000020): MOV R2, R0, 20H |
| 05B5 | x .FIXUP P |
| 05B5 | x(F721B006): BL MOD2 [Texts] PROC27 |
| 05B6 | y .FIXUP D |
| 05B6 | y(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 05B7 | y(40D80000): ADD R0, SB, 0H [data] |
| 05B8 | y .FIXUP D |
| 05B8 | y(8D200002): LDR SB, MT, MOD2 [Texts] |
| 05B9 | y(41D80005): ADD R1, SB, VAR5 |
| 05BA | z(42E80018): ADD R2, SP, 18H |
| 05BB | z(43000020): MOV R3, R0, 20H |
| 05BC | a .FIXUP P |
| 05BC | a(F721D007): BL MOD2 [Texts] PROC29 |
| IF cat = 0 THENb (*font*) ConvertFontname(name)c ENDd ; |
| 05BD | b(90E00008): LDR R0, SP, 8H |
| 05BE | b(E9000003): BNE 3 [05C2H] |
| 05BF | c(40E80018): ADD R0, SP, 18H |
| 05C0 | c(41000020): MOV R1, R0, 20H |
| 05C1 | d(F7FFFEE3): BL -285 [04A5H] |
| Files.WriteString(Q,e name)f;g |
| 05C2 | e(40E80058): ADD R0, SP, 58H |
| 05C3 | e .FIXUP D |
| 05C3 | e(8D10000B): LDR SB, MT, MOD1 [Files] |
| 05C4 | e(41D80001): ADD R1, SB, VAR1 |
| 05C5 | f(42E80018): ADD R2, SP, 18H |
| 05C6 | f(43000020): MOV R3, R0, 20H |
| 05C7 | g .FIXUP P |
| 05C7 | g(F711C00B): BL MOD1 [Files] PROC28 |
| IF cat = 2 THENh (*class*) Files.ReadString(R,i name)j;k Texts.Write(W,l " ")m;n Texts.WriteString(W,o name)p;q Files.WriteString(Q,r name)s ENDt ; |
| 05C8 | h(90E00008): LDR R0, SP, 8H |
| 05C9 | h(40090002): SUB R0, R0, 2H |
| 05CA | h(E9000019): BNE 25 [05E4H] |
| 05CB | i(40E80040): ADD R0, SP, 40H |
| 05CC | i .FIXUP D |
| 05CC | i(8D100009): LDR SB, MT, MOD1 [Files] |
| 05CD | i(41D80001): ADD R1, SB, VAR1 |
| 05CE | j(42E80018): ADD R2, SP, 18H |
| 05CF | j(43000020): MOV R3, R0, 20H |
| 05D0 | k .FIXUP P |
| 05D0 | k(F7114009): BL MOD1 [Files] PROC20 |
| 05D1 | l .FIXUP D |
| 05D1 | l(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 05D2 | l(40D80000): ADD R0, SB, 0H [data] |
| 05D3 | l .FIXUP D |
| 05D3 | l(8D200002): LDR SB, MT, MOD2 [Texts] |
| 05D4 | l(41D80005): ADD R1, SB, VAR5 |
| 05D5 | m(42000020): MOV R2, R0, 20H |
| 05D6 | n .FIXUP P |
| 05D6 | n(F721B006): BL MOD2 [Texts] PROC27 |
| 05D7 | o .FIXUP D |
| 05D7 | o(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 05D8 | o(40D80000): ADD R0, SB, 0H [data] |
| 05D9 | o .FIXUP D |
| 05D9 | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 05DA | o(41D80005): ADD R1, SB, VAR5 |
| 05DB | p(42E80018): ADD R2, SP, 18H |
| 05DC | p(43000020): MOV R3, R0, 20H |
| 05DD | q .FIXUP P |
| 05DD | q(F721D007): BL MOD2 [Texts] PROC29 |
| 05DE | r(40E80058): ADD R0, SP, 58H |
| 05DF | r .FIXUP D |
| 05DF | r(8D100006): LDR SB, MT, MOD1 [Files] |
| 05E0 | r(41D80001): ADD R1, SB, VAR1 |
| 05E1 | s(42E80018): ADD R2, SP, 18H |
| 05E2 | s(43000020): MOV R3, R0, 20H |
| 05E3 | t .FIXUP P |
| 05E3 | t(F711C006): BL MOD1 [Files] PROC28 |
| Texts.WriteLn(W)u;v Texts.Append(Oberon.Log,w W.buf)x |
| 05E4 | u .FIXUP D |
| 05E4 | u(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 05E5 | u(40D80000): ADD R0, SB, 0H [data] |
| 05E6 | u .FIXUP D |
| 05E6 | u(8D200002): LDR SB, MT, MOD2 [Texts] |
| 05E7 | u(41D80005): ADD R1, SB, VAR5 |
| 05E8 | v .FIXUP P |
| 05E8 | v(F721C005): BL MOD2 [Texts] PROC28 |
| 05E9 | w .FIXUP D |
| 05E9 | w(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 05EA | w(80D0000D): LDR R0, SB, VAR13 |
| 05EB | x .FIXUP D |
| 05EB | x(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 05EC | x(81D00000): LDR R1, SB, 0H [data] |
| ELSEy Filesz.ReadInt(R,a xy)b;c Files.WriteInt(Q,d xy)e;f Files.ReadInt(R,g wh)h;i Files.WriteInt(Q,j wh)k;l |
| 05ED | y .FIXUP P |
| 05ED | y(F720E005): BL MOD2 [Texts] PROC14 |
| 05EE | z(E7000077): B 119 [0666H] |
| 05EF | a(40E80040): ADD R0, SP, 40H |
| 05F0 | a .FIXUP D |
| 05F0 | a(8D100005): LDR SB, MT, MOD1 [Files] |
| 05F1 | a(41D80001): ADD R1, SB, VAR1 |
| 05F2 | b(42E80010): ADD R2, SP, 10H |
| 05F3 | c .FIXUP P |
| 05F3 | c(F7111006): BL MOD1 [Files] PROC17 |
| 05F4 | d(40E80058): ADD R0, SP, 58H |
| 05F5 | d .FIXUP D |
| 05F5 | d(8D100005): LDR SB, MT, MOD1 [Files] |
| 05F6 | d(41D80001): ADD R1, SB, VAR1 |
| 05F7 | e(82E00010): LDR R2, SP, 10H |
| 05F8 | f .FIXUP P |
| 05F8 | f(F7119005): BL MOD1 [Files] PROC25 |
| 05F9 | g(40E80040): ADD R0, SP, 40H |
| 05FA | g .FIXUP D |
| 05FA | g(8D100005): LDR SB, MT, MOD1 [Files] |
| 05FB | g(41D80001): ADD R1, SB, VAR1 |
| 05FC | h(42E80014): ADD R2, SP, 14H |
| 05FD | i .FIXUP P |
| 05FD | i(F7111005): BL MOD1 [Files] PROC17 |
| 05FE | j(40E80058): ADD R0, SP, 58H |
| 05FF | j .FIXUP D |
| 05FF | j(8D100005): LDR SB, MT, MOD1 [Files] |
| 0600 | j(41D80001): ADD R1, SB, VAR1 |
| 0601 | k(82E00014): LDR R2, SP, 14H |
| 0602 | l .FIXUP P |
| 0602 | l(F7119005): BL MOD1 [Files] PROC25 |
| Files.ReadByte(R,m col)n;o Files.Read(R,p ch)q;r Files.WriteByte(Q,s 1)t;u |
| 0603 | m(40E80040): ADD R0, SP, 40H |
| 0604 | m .FIXUP D |
| 0604 | m(8D100005): LDR SB, MT, MOD1 [Files] |
| 0605 | m(41D80001): ADD R1, SB, VAR1 |
| 0606 | n(42E80006): ADD R2, SP, 6H |
| 0607 | o .FIXUP P |
| 0607 | o(F710E005): BL MOD1 [Files] PROC14 |
| 0608 | p(40E80040): ADD R0, SP, 40H |
| 0609 | p .FIXUP D |
| 0609 | p(8D100005): LDR SB, MT, MOD1 [Files] |
| 060A | p(41D80001): ADD R1, SB, VAR1 |
| 060B | q(42E80004): ADD R2, SP, 4H |
| 060C | r .FIXUP P |
| 060C | r(F7110005): BL MOD1 [Files] PROC16 |
| 060D | s(40E80058): ADD R0, SP, 58H |
| 060E | s .FIXUP D |
| 060E | s(8D100005): LDR SB, MT, MOD1 [Files] |
| 060F | s(41D80001): ADD R1, SB, VAR1 |
| 0610 | t(42000001): MOV R2, R0, 1H |
| 0611 | u .FIXUP P |
| 0611 | u(F7116005): BL MOD1 [Files] PROC22 |
| IF class = Line THENv |
| 0612 | v(90E00005): LDR R0, SP, 5H |
| 0613 | v(40090001): SUB R0, R0, 1H |
| 0614 | v(E9000001): BNE 1 [0616H] |
| ELSIF classw = Caption THENx |
| 0615 | w(E7000050): B 80 [0666H] |
| 0616 | x(90E00005): LDR R0, SP, 5H |
| 0617 | x(40090002): SUB R0, R0, 2H |
| 0618 | x(E9000017): BNE 23 [0630H] |
| Files.ReadByte(R,y fno)z;a Files.WriteByte(Q,b fno)c;d Files.ReadString(R,e name)f;g Files.WriteString(Q,h name)i |
| 0619 | y(40E80040): ADD R0, SP, 40H |
| 061A | y .FIXUP D |
| 061A | y(8D10000C): LDR SB, MT, MOD1 [Files] |
| 061B | y(41D80001): ADD R1, SB, VAR1 |
| 061C | z(42E80007): ADD R2, SP, 7H |
| 061D | a .FIXUP P |
| 061D | a(F710E00C): BL MOD1 [Files] PROC14 |
| 061E | b(40E80058): ADD R0, SP, 58H |
| 061F | b .FIXUP D |
| 061F | b(8D100005): LDR SB, MT, MOD1 [Files] |
| 0620 | b(41D80001): ADD R1, SB, VAR1 |
| 0621 | c(92E00007): LDR R2, SP, 7H |
| 0622 | d .FIXUP P |
| 0622 | d(F7116005): BL MOD1 [Files] PROC22 |
| 0623 | e(40E80040): ADD R0, SP, 40H |
| 0624 | e .FIXUP D |
| 0624 | e(8D100005): LDR SB, MT, MOD1 [Files] |
| 0625 | e(41D80001): ADD R1, SB, VAR1 |
| 0626 | f(42E80018): ADD R2, SP, 18H |
| 0627 | f(43000020): MOV R3, R0, 20H |
| 0628 | g .FIXUP P |
| 0628 | g(F7114006): BL MOD1 [Files] PROC20 |
| 0629 | h(40E80058): ADD R0, SP, 58H |
| 062A | h .FIXUP D |
| 062A | h(8D100006): LDR SB, MT, MOD1 [Files] |
| 062B | h(41D80001): ADD R1, SB, VAR1 |
| 062C | i(42E80018): ADD R2, SP, 18H |
| 062D | i(43000020): MOV R3, R0, 20H |
| ELSIFj classk = Rectangles THENl |
| 062E | j .FIXUP P |
| 062E | j(F711C006): BL MOD1 [Files] PROC28 |
| 062F | k(E7000036): B 54 [0666H] |
| 0630 | l(90E00005): LDR R0, SP, 5H |
| 0631 | l(40090004): SUB R0, R0, 4H |
| 0632 | l(E9000024): BNE 36 [0657H] |
| Files.ReadByte(R,m len)n;o Files.WriteByte(Q,p len)q;r Files.ReadByte(R,s len)t;u |
| 0633 | m(40E80040): ADD R0, SP, 40H |
| 0634 | m .FIXUP D |
| 0634 | m(8D10000A): LDR SB, MT, MOD1 [Files] |
| 0635 | m(41D80001): ADD R1, SB, VAR1 |
| 0636 | n(42E8000B): ADD R2, SP, BH |
| 0637 | o .FIXUP P |
| 0637 | o(F710E009): BL MOD1 [Files] PROC14 |
| 0638 | p(40E80058): ADD R0, SP, 58H |
| 0639 | p .FIXUP D |
| 0639 | p(8D100005): LDR SB, MT, MOD1 [Files] |
| 063A | p(41D80001): ADD R1, SB, VAR1 |
| 063B | q(92E0000B): LDR R2, SP, BH |
| 063C | r .FIXUP P |
| 063C | r(F7116005): BL MOD1 [Files] PROC22 |
| 063D | s(40E80040): ADD R0, SP, 40H |
| 063E | s .FIXUP D |
| 063E | s(8D100005): LDR SB, MT, MOD1 [Files] |
| 063F | s(41D80001): ADD R1, SB, VAR1 |
| 0640 | t(42E8000B): ADD R2, SP, BH |
| 0641 | u .FIXUP P |
| 0641 | u(F710E005): BL MOD1 [Files] PROC14 |
| Files.ReadByte(R,v lnw)w;x Files.WriteByte(Q,y lnw)z;a |
| 0642 | v(40E80040): ADD R0, SP, 40H |
| 0643 | v .FIXUP D |
| 0643 | v(8D100005): LDR SB, MT, MOD1 [Files] |
| 0644 | v(41D80001): ADD R1, SB, VAR1 |
| 0645 | w(42E8000C): ADD R2, SP, CH |
| 0646 | x .FIXUP P |
| 0646 | x(F710E005): BL MOD1 [Files] PROC14 |
| 0647 | y(40E80058): ADD R0, SP, 58H |
| 0648 | y .FIXUP D |
| 0648 | y(8D100005): LDR SB, MT, MOD1 [Files] |
| 0649 | y(41D80001): ADD R1, SB, VAR1 |
| 064A | z(92E0000C): LDR R2, SP, CH |
| 064B | a .FIXUP P |
| 064B | a(F7116005): BL MOD1 [Files] PROC22 |
| Files.ReadByte(R,b vers)c;d Files.WriteByte(Q,e vers)f |
| 064C | b(40E80040): ADD R0, SP, 40H |
| 064D | b .FIXUP D |
| 064D | b(8D100005): LDR SB, MT, MOD1 [Files] |
| 064E | b(41D80001): ADD R1, SB, VAR1 |
| 064F | c(42E8000D): ADD R2, SP, DH |
| 0650 | d .FIXUP P |
| 0650 | d(F710E005): BL MOD1 [Files] PROC14 |
| 0651 | e(40E80058): ADD R0, SP, 58H |
| 0652 | e .FIXUP D |
| 0652 | e(8D100005): LDR SB, MT, MOD1 [Files] |
| 0653 | e(41D80001): ADD R1, SB, VAR1 |
| 0654 | f(92E0000D): LDR R2, SP, DH |
| ELSEg Textsh.WriteString(W,i "alien class ")j;k Texts.WriteInt(W,l class,m 4)n |
| 0655 | g .FIXUP P |
| 0655 | g(F7116005): BL MOD1 [Files] PROC22 |
| 0656 | h(E700000F): B 15 [0666H] |
| 0657 | i .FIXUP D |
| 0657 | i(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0658 | i(40D80000): ADD R0, SB, 0H [data] |
| 0659 | i .FIXUP D |
| 0659 | i(8D200002): LDR SB, MT, MOD2 [Texts] |
| 065A | i(41D80005): ADD R1, SB, VAR5 |
| 065B | j .FIXUP D |
| 065B | j(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 065C | j(42D80108): ADD R2, SB, 108H ["alien class "] |
| 065D | j(4300000D): MOV R3, R0, DH |
| 065E | k .FIXUP P |
| 065E | k(F721D009): BL MOD2 [Texts] PROC29 |
| 065F | l .FIXUP D |
| 065F | l(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 0660 | l(40D80000): ADD R0, SB, 0H [data] |
| 0661 | l .FIXUP D |
| 0661 | l(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0662 | l(41D80005): ADD R1, SB, VAR5 |
| 0663 | m(92E00005): LDR R2, SP, 5H |
| 0664 | n(43000004): MOV R3, R0, 4H |
| ENDo |
| 0665 | o .FIXUP P |
| 0665 | o(F721E007): BL MOD2 [Texts] PROC30 |
| END ; |
| Files.ReadByte(R,p class)q |
| 0666 | p(40E80040): ADD R0, SP, 40H |
| 0667 | p .FIXUP D |
| 0667 | p(8D100006): LDR SB, MT, MOD1 [Files] |
| 0668 | p(41D80001): ADD R1, SB, VAR1 |
| 0669 | q(42E80005): ADD R2, SP, 5H |
| ENDr ; |
| 066A | r .FIXUP P |
| 066A | r(F710E005): BL MOD1 [Files] PROC14 |
| 066B | r(E7FFFF12): B -238 [057EH] |
| Files.WriteByte(Q,s 255)t;u (*end macro*) Files.ReadInt(R,v wh)w;x Files.WriteInt(Q,y wh)z;a |
| 066C | s(40E80058): ADD R0, SP, 58H |
| 066D | s .FIXUP D |
| 066D | s(8D100006): LDR SB, MT, MOD1 [Files] |
| 066E | s(41D80001): ADD R1, SB, VAR1 |
| 066F | t(420000FF): MOV R2, R0, FFH |
| 0670 | u .FIXUP P |
| 0670 | u(F7116006): BL MOD1 [Files] PROC22 |
| 0671 | v(40E80040): ADD R0, SP, 40H |
| 0672 | v .FIXUP D |
| 0672 | v(8D100005): LDR SB, MT, MOD1 [Files] |
| 0673 | v(41D80001): ADD R1, SB, VAR1 |
| 0674 | w(42E80014): ADD R2, SP, 14H |
| 0675 | x .FIXUP P |
| 0675 | x(F7111005): BL MOD1 [Files] PROC17 |
| 0676 | y(40E80058): ADD R0, SP, 58H |
| 0677 | y .FIXUP D |
| 0677 | y(8D100005): LDR SB, MT, MOD1 [Files] |
| 0678 | y(41D80001): ADD R1, SB, VAR1 |
| 0679 | z(82E00014): LDR R2, SP, 14H |
| 067A | a .FIXUP P |
| 067A | a(F7119005): BL MOD1 [Files] PROC25 |
| Files.ReadString(R,b name)c;d Files.WriteString(Q,e name)f;g |
| 067B | b(40E80040): ADD R0, SP, 40H |
| 067C | b .FIXUP D |
| 067C | b(8D100005): LDR SB, MT, MOD1 [Files] |
| 067D | b(41D80001): ADD R1, SB, VAR1 |
| 067E | c(42E80018): ADD R2, SP, 18H |
| 067F | c(43000020): MOV R3, R0, 20H |
| 0680 | d .FIXUP P |
| 0680 | d(F7114006): BL MOD1 [Files] PROC20 |
| 0681 | e(40E80058): ADD R0, SP, 58H |
| 0682 | e .FIXUP D |
| 0682 | e(8D100006): LDR SB, MT, MOD1 [Files] |
| 0683 | e(41D80001): ADD R1, SB, VAR1 |
| 0684 | f(42E80018): ADD R2, SP, 18H |
| 0685 | f(43000020): MOV R3, R0, 20H |
| 0686 | g .FIXUP P |
| 0686 | g(F711C006): BL MOD1 [Files] PROC28 |
| Texts.WriteString(W,h name)i;j Texts.WriteInt(W,k wh MOD 10000H,l 4)m;n Texts.WriteInt(W,o wh DIV 10000H,p 4)q;r |
| 0687 | h .FIXUP D |
| 0687 | h(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 0688 | h(40D80000): ADD R0, SB, 0H [data] |
| 0689 | h .FIXUP D |
| 0689 | h(8D200002): LDR SB, MT, MOD2 [Texts] |
| 068A | h(41D80005): ADD R1, SB, VAR5 |
| 068B | i(42E80018): ADD R2, SP, 18H |
| 068C | i(43000020): MOV R3, R0, 20H |
| 068D | j .FIXUP P |
| 068D | j(F721D007): BL MOD2 [Texts] PROC29 |
| 068E | k .FIXUP D |
| 068E | k(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 068F | k(40D80000): ADD R0, SB, 0H [data] |
| 0690 | k .FIXUP D |
| 0690 | k(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0691 | k(41D80005): ADD R1, SB, VAR5 |
| 0692 | l(82E00014): LDR R2, SP, 14H |
| 0693 | l(4224FFFF): AND R2, R2, FFFFFFFFH |
| 0694 | m(43000004): MOV R3, R0, 4H |
| 0695 | n .FIXUP P |
| 0695 | n(F721E008): BL MOD2 [Texts] PROC30 |
| 0696 | o .FIXUP D |
| 0696 | o(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 0697 | o(40D80000): ADD R0, SB, 0H [data] |
| 0698 | o .FIXUP D |
| 0698 | o(8D200002): LDR SB, MT, MOD2 [Texts] |
| 0699 | o(41D80005): ADD R1, SB, VAR5 |
| 069A | p(82E00014): LDR R2, SP, 14H |
| 069B | p(42220010): ASR R2, R2, 10H |
| 069C | q(43000004): MOV R3, R0, 4H |
| 069D | r .FIXUP P |
| 069D | r(F721E008): BL MOD2 [Texts] PROC30 |
| Texts.WriteLn(W)s;t Files.ReadByte(R,u class)v |
| 069E | s .FIXUP D |
| 069E | s(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 069F | s(40D80000): ADD R0, SB, 0H [data] |
| 06A0 | s .FIXUP D |
| 06A0 | s(8D200002): LDR SB, MT, MOD2 [Texts] |
| 06A1 | s(41D80005): ADD R1, SB, VAR5 |
| 06A2 | t .FIXUP P |
| 06A2 | t(F721C005): BL MOD2 [Texts] PROC28 |
| 06A3 | u(40E80040): ADD R0, SP, 40H |
| 06A4 | u .FIXUP D |
| 06A4 | u(8D100004): LDR SB, MT, MOD1 [Files] |
| 06A5 | u(41D80001): ADD R1, SB, VAR1 |
| 06A6 | v(42E80005): ADD R2, SP, 5H |
| ENDw |
| 06A7 | w .FIXUP P |
| 06A7 | w(F710E005): BL MOD1 [Files] PROC14 |
| 06A8 | w(E7FFFED0): B -304 [0579H] |
| ELSE Textsx.WriteString(W,y " not a graphics library")z |
| 06A9 | x(E7000008): B 8 [06B2H] |
| 06AA | y .FIXUP D |
| 06AA | y(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 06AB | y(40D80000): ADD R0, SB, 0H [data] |
| 06AC | y .FIXUP D |
| 06AC | y(8D200002): LDR SB, MT, MOD2 [Texts] |
| 06AD | y(41D80005): ADD R1, SB, VAR5 |
| 06AE | z .FIXUP D |
| 06AE | z(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 06AF | z(42D80118): ADD R2, SB, 118H [" not a graphics library"] |
| 06B0 | z(43000018): MOV R3, R0, 18H |
| ENDa ; |
| 06B1 | a .FIXUP P |
| 06B1 | a(F721D00A): BL MOD2 [Texts] PROC29 |
| Files.Register(G)b;c Texts.WriteString(W,d " done")e |
| 06B2 | b(80E0003C): LDR R0, SP, 3CH |
| 06B3 | c .FIXUP P |
| 06B3 | c(F7104002): BL MOD1 [Files] PROC4 |
| 06B4 | d .FIXUP D |
| 06B4 | d(8D000006): LDR SB, MT, MOD0 [GraphTool] |
| 06B5 | d(40D80000): ADD R0, SB, 0H [data] |
| 06B6 | d .FIXUP D |
| 06B6 | d(8D200002): LDR SB, MT, MOD2 [Texts] |
| 06B7 | d(41D80005): ADD R1, SB, VAR5 |
| 06B8 | e .FIXUP D |
| 06B8 | e(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 06B9 | e(42D80130): ADD R2, SB, 130H [" done"] |
| 06BA | e(43000006): MOV R3, R0, 6H |
| ELSEf Textsg.WriteString(W,h " not found")i |
| 06BB | f .FIXUP P |
| 06BB | f(F721D008): BL MOD2 [Texts] PROC29 |
| 06BC | g(E7000008): B 8 [06C5H] |
| 06BD | h .FIXUP D |
| 06BD | h(8D000005): LDR SB, MT, MOD0 [GraphTool] |
| 06BE | h(40D80000): ADD R0, SB, 0H [data] |
| 06BF | h .FIXUP D |
| 06BF | h(8D200002): LDR SB, MT, MOD2 [Texts] |
| 06C0 | h(41D80005): ADD R1, SB, VAR5 |
| 06C1 | i .FIXUP D |
| 06C1 | i(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 06C2 | i(42D80138): ADD R2, SB, 138H [" not found"] |
| 06C3 | i(4300000B): MOV R3, R0, BH |
| ENDj ; |
| 06C4 | j .FIXUP P |
| 06C4 | j(F721D009): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)k;l Texts.Append(Oberon.Log,m W.buf)n |
| 06C5 | k .FIXUP D |
| 06C5 | k(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 06C6 | k(40D80000): ADD R0, SB, 0H [data] |
| 06C7 | k .FIXUP D |
| 06C7 | k(8D200002): LDR SB, MT, MOD2 [Texts] |
| 06C8 | k(41D80005): ADD R1, SB, VAR5 |
| 06C9 | l .FIXUP P |
| 06C9 | l(F721C005): BL MOD2 [Texts] PROC28 |
| 06CA | m .FIXUP D |
| 06CA | m(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 06CB | m(80D0000D): LDR R0, SB, VAR13 |
| 06CC | n .FIXUP D |
| 06CC | n(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 06CD | n(81D00000): LDR R1, SB, 0H [data] |
| ENDo |
| 06CE | o .FIXUP P |
| 06CE | o(F720E005): BL MOD2 [Texts] PROC14 |
| ENDp ConvertLibrary; |
| 06CF | p(8FE00000): LDR LNK, SP, 0H |
| 06D0 | p(4EE800E4): ADD SP, SP, E4H |
| 06D1 | p(C700000F): B LNK |
| |
| BEGINq Texts.OpenWriter(W)r;s Texts.WriteString(W,t "GraphTool 8.8.2013")u;v |
| 06D2 | q .PROC 0 |
| 06D2 | q .ENTRYPOINT |
| 06D2 | q(4EE90004): SUB SP, SP, 4H |
| 06D3 | q(AFE00000): STR LNK, SP, 0H |
| 06D4 | r .FIXUP D |
| 06D4 | r(8D000008): LDR SB, MT, MOD0 [GraphTool] |
| 06D5 | r(40D80000): ADD R0, SB, 0H [data] |
| 06D6 | r .FIXUP D |
| 06D6 | r(8D200002): LDR SB, MT, MOD2 [Texts] |
| 06D7 | r(41D80005): ADD R1, SB, VAR5 |
| 06D8 | s .FIXUP P |
| 06D8 | s(F721700A): BL MOD2 [Texts] PROC23 |
| 06D9 | t .FIXUP D |
| 06D9 | t(8D000003): LDR SB, MT, MOD0 [GraphTool] |
| 06DA | t(40D80000): ADD R0, SB, 0H [data] |
| 06DB | t .FIXUP D |
| 06DB | t(8D200002): LDR SB, MT, MOD2 [Texts] |
| 06DC | t(41D80005): ADD R1, SB, VAR5 |
| 06DD | u .FIXUP D |
| 06DD | u(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 06DE | u(42D80144): ADD R2, SB, 144H ["GraphTool 8.8.2013"] |
| 06DF | u(43000013): MOV R3, R0, 13H |
| 06E0 | v .FIXUP P |
| 06E0 | v(F721D008): BL MOD2 [Texts] PROC29 |
| Texts.WriteLn(W)w;x Texts.Append(Oberon.Log,y W.buf)z;a |
| 06E1 | w .FIXUP D |
| 06E1 | w(8D000004): LDR SB, MT, MOD0 [GraphTool] |
| 06E2 | w(40D80000): ADD R0, SB, 0H [data] |
| 06E3 | w .FIXUP D |
| 06E3 | w(8D200002): LDR SB, MT, MOD2 [Texts] |
| 06E4 | w(41D80005): ADD R1, SB, VAR5 |
| 06E5 | x .FIXUP P |
| 06E5 | x(F721C005): BL MOD2 [Texts] PROC28 |
| 06E6 | y .FIXUP D |
| 06E6 | y(8D400003): LDR SB, MT, MOD4 [Oberon] |
| 06E7 | y(80D0000D): LDR R0, SB, VAR13 |
| 06E8 | z .FIXUP D |
| 06E8 | z(8D000002): LDR SB, MT, MOD0 [GraphTool] |
| 06E9 | z(81D00000): LDR R1, SB, 0H [data] |
| 06EA | a .FIXUP P |
| 06EA | a(F720E005): BL MOD2 [Texts] PROC14 |
| END GraphTool.b |
| 06EB | b(8FE00000): LDR LNK, SP, 0H |
| 06EC | b(4EE80004): ADD SP, SP, 4H |
| 06ED | b(C700000F): B LNK |