| MODULE Rectangles; (*NW 25.2.90 / 18.4.2013*) |
| .MODULE Rectangles (KEY 7C80275E, VERSION 1, SIZE 00000AE0) |
| .IMPORT Display (KEY 4C08D3EA) |
| .IMPORT Files (KEY 73F5D686) |
| .IMPORT Input (KEY 5DE391A8) |
| .IMPORT Texts (KEY 0B9E9984) |
| .IMPORT Fonts (KEY F4C9F557) |
| .IMPORT Oberon (KEY A89CCEE2) |
| .IMPORT Viewers (KEY 25ABF199) |
| .IMPORT Graphics (KEY F7357DD9) |
| .IMPORT Modules (KEY 41C6A19A) |
| .IMPORT GraphicFrames (KEY 84ABBF86) |
| .TYPEDESC 00000040 00000001 FFFFFFFF FFFFFFFF 00000014 00000018 FFFFFFFF |
| .DATA CH |
| .STRING TABLE SKIPPED |
| .POINTER_REFERENCES 1CH |
| .FIXUP T 1H |
| IMPORT SYSTEM, Display, Files, Input, Texts, Oberon, Graphics, GraphicFrames; |
| |
| TYPE |
| Rectangle* = POINTER TO RectDesc; |
| RectDesc* = RECORD (Graphics.ObjectDesc) |
| lw*, vers*: INTEGER |
| END ; |
| |
| VAR method*: Graphics.Method; |
| tack*, grey*: INTEGER; |
| |
| PROCEDURE New*; |
| VAR r: Rectangle; |
| BEGINa NEW(r);b r.doc := method;d Graphics.New(r)e |
0000 | a .PROC 1 |
0000 | a .PROC 5 |
0000 | a .COMMAND New |
0000 | a(4EE90008): SUB SP, SP, 8H |
0001 | a(AFE00000): STR LNK, SP, 0H |
0002 | b(40E80004): ADD R0, SP, 4H |
0003 | b .FIXUP D |
0003 | b(8D000003): LDR SB, MT, MOD0 [Rectangles] |
0004 | b(41D80000): ADD R1, SB, 0H [data] |
0005 | b(D701760C): BL MT [trap=0, pos=374] |
0006 | c(80E00004): LDR R0, SP, 4H |
0007 | c .PROC 2 |
0007 | c(D1017B4C): BLEQ MT [trap=4, pos=379] |
0008 | d .PROC 3 |
0008 | d .FIXUP D |
0008 | d(8D000005): LDR SB, MT, MOD0 [Rectangles] |
0009 | d .PROC 4 |
0009 | d(81D0001C): LDR R1, SB, 1CH [data] |
000A | d(A1000014): STR R1, R0, 14H |
000B | e(80E00004): LDR R0, SP, 4H |
| ENDf New; |
000C | f .FIXUP P |
000C | f(F781500C): BL MOD8 [Graphics] PROC21 |
000D | f(8FE00000): LDR LNK, SP, 0H |
000E | f(4EE80008): ADD SP, SP, 8H |
000F | f(C700000F): B LNK |
| |
| PROCEDURE Copy(src, dst: Graphics.Object); |
| BEGINg dst.xh := src.xi;j dst.yk := src.yl;m dst.wn := src.wo;p dst.hq := src.hr;s dst.colt := src.colu;v |
0010 | g(4EE9000C): SUB SP, SP, CH |
0011 | g(AFE00000): STR LNK, SP, 0H |
0012 | g(A0E00004): STR R0, SP, 4H |
0013 | g(A1E00008): STR R1, SP, 8H |
0014 | h(80E00008): LDR R0, SP, 8H |
0015 | h(D101DD4C): BLEQ MT [trap=4, pos=477] |
0016 | i(81E00004): LDR R1, SP, 4H |
0017 | i(D101E64C): BLEQ MT [trap=4, pos=486] |
0018 | j(81100000): LDR R1, R1, 0H |
0019 | j(A1000000): STR R1, R0, 0H |
001A | k(80E00008): LDR R0, SP, 8H |
001B | k(D101ED4C): BLEQ MT [trap=4, pos=493] |
001C | l(81E00004): LDR R1, SP, 4H |
001D | l(D101F64C): BLEQ MT [trap=4, pos=502] |
001E | m(81100004): LDR R1, R1, 4H |
001F | m(A1000004): STR R1, R0, 4H |
0020 | n(80E00008): LDR R0, SP, 8H |
0021 | n(D101FD4C): BLEQ MT [trap=4, pos=509] |
0022 | o(81E00004): LDR R1, SP, 4H |
0023 | o(D102064C): BLEQ MT [trap=4, pos=518] |
0024 | p(81100008): LDR R1, R1, 8H |
0025 | p(A1000008): STR R1, R0, 8H |
0026 | q(80E00008): LDR R0, SP, 8H |
0027 | q(D1020D4C): BLEQ MT [trap=4, pos=525] |
0028 | r(81E00004): LDR R1, SP, 4H |
0029 | r(D102164C): BLEQ MT [trap=4, pos=534] |
002A | s(8110000C): LDR R1, R1, CH |
002B | s(A100000C): STR R1, R0, CH |
002C | t(80E00008): LDR R0, SP, 8H |
002D | t(D1021F4C): BLEQ MT [trap=4, pos=543] |
002E | u(81E00004): LDR R1, SP, 4H |
002F | u(D1022A4C): BLEQ MT [trap=4, pos=554] |
0030 | v(91100010): LDR R1, R1, 10H |
0031 | v(B1000010): STR R1, R0, 10H |
| dst(Rectangle)w.lw := src(Rectangle)x.lw;y dst(Rectangle)z.vers := src(Rectangle)a.vers |
0032 | w(80E00008): LDR R0, SP, 8H |
0033 | w(E1000005): BEQ 5 [0039H] |
0034 | w(810FFFF8): LDR R1, R0, FFFFFFF8H |
0035 | w(81100004): LDR R1, R1, 4H |
0036 | w .FIXUP D |
0036 | w(8D00002E): LDR SB, MT, MOD0 [Rectangles] |
0037 | w(42D80000): ADD R2, SB, 0H [data] |
0038 | w(02290001): SUB R2, R2, R1 |
0039 | w(D9023E2C): BLNE MT [trap=2, pos=574] |
003A | x(81E00004): LDR R1, SP, 4H |
003B | x(E1000004): BEQ 4 [0040H] |
003C | x(821FFFF8): LDR R2, R1, FFFFFFF8H |
003D | x(82200004): LDR R2, R2, 4H |
003E | x(43D80000): ADD R3, SB, 0H |
003F | x(03390002): SUB R3, R3, R2 |
0040 | x(D902532C): BLNE MT [trap=2, pos=595] |
0041 | y(8110001C): LDR R1, R1, 1CH |
0042 | y(A100001C): STR R1, R0, 1CH |
0043 | z(80E00008): LDR R0, SP, 8H |
0044 | z(E1000004): BEQ 4 [0049H] |
0045 | z(810FFFF8): LDR R1, R0, FFFFFFF8H |
0046 | z(81100004): LDR R1, R1, 4H |
0047 | z(42D80000): ADD R2, SB, 0H |
0048 | z(02290001): SUB R2, R2, R1 |
0049 | z(D902662C): BLNE MT [trap=2, pos=614] |
004A | a(81E00004): LDR R1, SP, 4H |
004B | a(E1000004): BEQ 4 [0050H] |
004C | a(821FFFF8): LDR R2, R1, FFFFFFF8H |
004D | a(82200004): LDR R2, R2, 4H |
004E | a(43D80000): ADD R3, SB, 0H |
004F | a(03390002): SUB R3, R3, R2 |
0050 | a(D9027D2C): BLNE MT [trap=2, pos=637] |
| ENDb Copy; |
0051 | b(81100020): LDR R1, R1, 20H |
0052 | b(A1000020): STR R1, R0, 20H |
0053 | b(8FE00000): LDR LNK, SP, 0H |
0054 | b(4EE8000C): ADD SP, SP, CH |
0055 | b(C700000F): B LNK |
| |
| PROCEDURE mark(f: GraphicFrames.Frame; col, x, y: INTEGER); |
| BEGINc GraphicFrames.ReplConst(f,d col,e x+1,f y+1,g 4,h 4,i 0)j |
0056 | c(4EE90014): SUB SP, SP, 14H |
0057 | c(AFE00000): STR LNK, SP, 0H |
0058 | c(A0E00004): STR R0, SP, 4H |
0059 | c(A1E00008): STR R1, SP, 8H |
005A | c(A2E0000C): STR R2, SP, CH |
005B | c(A3E00010): STR R3, SP, 10H |
005C | d(80E00004): LDR R0, SP, 4H |
005D | e(81E00008): LDR R1, SP, 8H |
005E | f(82E0000C): LDR R2, SP, CH |
005F | f(42280001): ADD R2, R2, 1H |
0060 | g(83E00010): LDR R3, SP, 10H |
0061 | g(43380001): ADD R3, R3, 1H |
0062 | h(44000004): MOV R4, R0, 4H |
0063 | i(45000004): MOV R5, R0, 4H |
0064 | j(46000000): MOV R6, R0, 0H |
| ENDk mark; |
0065 | k .FIXUP P |
0065 | k(F7A16059): BL MOD10 [GraphicFrames] PROC22 |
0066 | k(8FE00000): LDR LNK, SP, 0H |
0067 | k(4EE80014): ADD SP, SP, 14H |
0068 | k(C700000F): B LNK |
| |
| PROCEDURE Draw(obj: Graphics.Object; VAR M: Graphics.Msg); |
| VAR x, y, w, h, lw, col: INTEGER; f: GraphicFrames.Frame; |
| |
| PROCEDUREl draw(f: GraphicFrames.Frame; col, x, y, w, h, lw: INTEGER); |
0069 | l(E7000034): B 52 [009EH] |
| BEGINm |
006A | m(4EE90020): SUB SP, SP, 20H |
006B | m(AFE00000): STR LNK, SP, 0H |
006C | m(A0E00004): STR R0, SP, 4H |
006D | m(A1E00008): STR R1, SP, 8H |
006E | m(A2E0000C): STR R2, SP, CH |
006F | m(A3E00010): STR R3, SP, 10H |
0070 | m(A4E00014): STR R4, SP, 14H |
0071 | m(A5E00018): STR R5, SP, 18H |
0072 | m(A6E0001C): STR R6, SP, 1CH |
| GraphicFrames.ReplConst(f,n col,o x,p y,q w,r lw,s Display.replace)t;u |
0073 | n(80E00004): LDR R0, SP, 4H |
0074 | o(81E00008): LDR R1, SP, 8H |
0075 | p(82E0000C): LDR R2, SP, CH |
0076 | q(83E00010): LDR R3, SP, 10H |
0077 | r(84E00014): LDR R4, SP, 14H |
0078 | s(85E0001C): LDR R5, SP, 1CH |
0079 | t(46000000): MOV R6, R0, 0H |
007A | u .FIXUP P |
007A | u(F7A16015): BL MOD10 [GraphicFrames] PROC22 |
| GraphicFrames.ReplConst(f,v col,w x+w-xlw,y y,z lw,a h,b Display.replace)c;d |
007B | v(80E00004): LDR R0, SP, 4H |
007C | w(81E00008): LDR R1, SP, 8H |
007D | x(82E0000C): LDR R2, SP, CH |
007E | x(83E00014): LDR R3, SP, 14H |
007F | x(02280003): ADD R2, R2, R3 |
0080 | y(83E0001C): LDR R3, SP, 1CH |
0081 | y(02290003): SUB R2, R2, R3 |
0082 | z(83E00010): LDR R3, SP, 10H |
0083 | a(84E0001C): LDR R4, SP, 1CH |
0084 | b(85E00018): LDR R5, SP, 18H |
0085 | c(46000000): MOV R6, R0, 0H |
0086 | d .FIXUP P |
0086 | d(F7A1600C): BL MOD10 [GraphicFrames] PROC22 |
| GraphicFrames.ReplConst(f,e col,f x,g y+h-hlw,i w,j lw,k Display.replace)l;m |
0087 | e(80E00004): LDR R0, SP, 4H |
0088 | f(81E00008): LDR R1, SP, 8H |
0089 | g(82E0000C): LDR R2, SP, CH |
008A | h(83E00010): LDR R3, SP, 10H |
008B | h(84E00018): LDR R4, SP, 18H |
008C | h(03380004): ADD R3, R3, R4 |
008D | i(84E0001C): LDR R4, SP, 1CH |
008E | i(03390004): SUB R3, R3, R4 |
008F | j(84E00014): LDR R4, SP, 14H |
0090 | k(85E0001C): LDR R5, SP, 1CH |
0091 | l(46000000): MOV R6, R0, 0H |
0092 | m .FIXUP P |
0092 | m(F7A1600C): BL MOD10 [GraphicFrames] PROC22 |
| GraphicFrames.ReplConst(f,n col,o x,p y,q lw,r h,s Display.replace)t |
0093 | n(80E00004): LDR R0, SP, 4H |
0094 | o(81E00008): LDR R1, SP, 8H |
0095 | p(82E0000C): LDR R2, SP, CH |
0096 | q(83E00010): LDR R3, SP, 10H |
0097 | r(84E0001C): LDR R4, SP, 1CH |
0098 | s(85E00018): LDR R5, SP, 18H |
0099 | t(46000000): MOV R6, R0, 0H |
| ENDu draw; |
009A | u .FIXUP P |
009A | u(F7A16008): BL MOD10 [GraphicFrames] PROC22 |
009B | u(8FE00000): LDR LNK, SP, 0H |
009C | u(4EE80020): ADD SP, SP, 20H |
009D | u(C700000F): B LNK |
| |
| BEGINv |
009E | v(4EE9002C): SUB SP, SP, 2CH |
009F | v(AFE00000): STR LNK, SP, 0H |
00A0 | v(A0E00004): STR R0, SP, 4H |
00A1 | v(A1E00008): STR R1, SP, 8H |
00A2 | v(A2E0000C): STR R2, SP, CH |
| CASE M OF GraphicFrames.DrawMsg:w |
00A3 | w(80E0000C): LDR R0, SP, CH |
00A4 | w(80000004): LDR R0, R0, 4H |
00A5 | w .FIXUP D |
00A5 | w(8DA0006F): LDR SB, MT, MOD10 [GraphicFrames] |
00A6 | w(41D80003): ADD R1, SB, VAR3 |
00A7 | w(01190000): SUB R1, R1, R0 |
00A8 | w(E9000084): BNE 132 [012DH] |
| x := obj.xx + M.x;y y := obj.yz + M.y;a w := obj.wb;c h := obj.hd;e f := M.f;f |
00A9 | x(80E00004): LDR R0, SP, 4H |
00AA | x(D1054F4C): BLEQ MT [trap=4, pos=1359] |
00AB | y(80000000): LDR R0, R0, 0H |
00AC | y(81E00008): LDR R1, SP, 8H |
00AD | y(81100004): LDR R1, R1, 4H |
00AE | y(00080001): ADD R0, R0, R1 |
00AF | y(A0E00010): STR R0, SP, 10H |
00B0 | z(80E00004): LDR R0, SP, 4H |
00B1 | z(D105614C): BLEQ MT [trap=4, pos=1377] |
00B2 | a(80000004): LDR R0, R0, 4H |
00B3 | a(81E00008): LDR R1, SP, 8H |
00B4 | a(81100008): LDR R1, R1, 8H |
00B5 | a(00080001): ADD R0, R0, R1 |
00B6 | a(A0E00014): STR R0, SP, 14H |
00B7 | b(80E00004): LDR R0, SP, 4H |
00B8 | b(D105734C): BLEQ MT [trap=4, pos=1395] |
00B9 | c(80000008): LDR R0, R0, 8H |
00BA | c(A0E00018): STR R0, SP, 18H |
00BB | d(80E00004): LDR R0, SP, 4H |
00BC | d(D1057F4C): BLEQ MT [trap=4, pos=1407] |
00BD | e(8000000C): LDR R0, R0, CH |
00BE | e(A0E0001C): STR R0, SP, 1CH |
00BF | f(80E00008): LDR R0, SP, 8H |
00C0 | f(80000000): LDR R0, R0, 0H |
00C1 | f(A0E00028): STR R0, SP, 28H |
| lw := obj(Rectangle)g.lw;h |
00C2 | g(80E00004): LDR R0, SP, 4H |
00C3 | g(E1000005): BEQ 5 [00C9H] |
00C4 | g(810FFFF8): LDR R1, R0, FFFFFFF8H |
00C5 | g(81100004): LDR R1, R1, 4H |
00C6 | g .FIXUP D |
00C6 | g(8D000021): LDR SB, MT, MOD0 [Rectangles] |
00C7 | g(42D80000): ADD R2, SB, 0H [data] |
00C8 | g(02290001): SUB R2, R2, R1 |
00C9 | g(D905A52C): BLNE MT [trap=2, pos=1445] |
00CA | h(8000001C): LDR R0, R0, 1CH |
00CB | h(A0E00020): STR R0, SP, 20H |
| IF (x < f.X1i)j & (kx+w >l f.Xm)n & (oy < f.Y1p)q & (ry+h >s f.Yt)u THENv |
00CC | i(80E00028): LDR R0, SP, 28H |
00CD | i(D105BC4C): BLEQ MT [trap=4, pos=1468] |
00CE | j(81E00010): LDR R1, SP, 10H |
00CF | j(80000028): LDR R0, R0, 28H |
00D0 | j(01190000): SUB R1, R1, R0 |
00D1 | k(ED00005B): BGE 91 [012DH] |
00D2 | l(80E00010): LDR R0, SP, 10H |
00D3 | l(81E00018): LDR R1, SP, 18H |
00D4 | l(00080001): ADD R0, R0, R1 |
00D5 | m(81E00028): LDR R1, SP, 28H |
00D6 | m(D105CA4C): BLEQ MT [trap=4, pos=1482] |
00D7 | n(81100008): LDR R1, R1, 8H |
00D8 | n(00090001): SUB R0, R0, R1 |
00D9 | o(E6000053): BLE 83 [012DH] |
00DA | p(80E00028): LDR R0, SP, 28H |
00DB | p(D105D74C): BLEQ MT [trap=4, pos=1495] |
00DC | q(81E00014): LDR R1, SP, 14H |
00DD | q(8000002C): LDR R0, R0, 2CH |
00DE | q(01190000): SUB R1, R1, R0 |
00DF | r(ED00004D): BGE 77 [012DH] |
00E0 | s(80E00014): LDR R0, SP, 14H |
00E1 | s(81E0001C): LDR R1, SP, 1CH |
00E2 | s(00080001): ADD R0, R0, R1 |
00E3 | t(81E00028): LDR R1, SP, 28H |
00E4 | t(D105E54C): BLEQ MT [trap=4, pos=1509] |
00E5 | u(8110000C): LDR R1, R1, CH |
00E6 | u(00090001): SUB R0, R0, R1 |
00E7 | v(E6000045): BLE 69 [012DH] |
| IF M.col = Display.black THENw col := obj.colx ELSEy colz := M.col ENDa ; |
00E8 | w(80E00008): LDR R0, SP, 8H |
00E9 | w(8000000C): LDR R0, R0, CH |
00EA | w(E9000005): BNE 5 [00F0H] |
00EB | x(80E00004): LDR R0, SP, 4H |
00EC | x(D106204C): BLEQ MT [trap=4, pos=1568] |
00ED | y(90000010): LDR R0, R0, 10H |
00EE | y(A0E00024): STR R0, SP, 24H |
00EF | z(E7000003): B 3 [00F3H] |
00F0 | a(80E00008): LDR R0, SP, 8H |
00F1 | a(8000000C): LDR R0, R0, CH |
00F2 | a(A0E00024): STR R0, SP, 24H |
| IF M.mode = 0 THENb |
00F3 | b(80E00008): LDR R0, SP, 8H |
00F4 | b(80000010): LDR R0, R0, 10H |
00F5 | b(E9000012): BNE 18 [0108H] |
| draw(f,c col,d x,e y,f w,g h,h lw)i;j |
00F6 | c(80E00028): LDR R0, SP, 28H |
00F7 | d(81E00024): LDR R1, SP, 24H |
00F8 | e(82E00010): LDR R2, SP, 10H |
00F9 | f(83E00014): LDR R3, SP, 14H |
00FA | g(84E00018): LDR R4, SP, 18H |
00FB | h(85E0001C): LDR R5, SP, 1CH |
00FC | i(86E00020): LDR R6, SP, 20H |
00FD | j(F7FFFF6C): BL -148 [006AH] |
| IF obj.selectedk THENl mark(f,m Display.white,n x,o y)p ENDq |
00FE | k(80E00004): LDR R0, SP, 4H |
00FF | k(D106954C): BLEQ MT [trap=4, pos=1685] |
0100 | l(90000011): LDR R0, R0, 11H |
0101 | l(E1000005): BEQ 5 [0107H] |
0102 | m(80E00028): LDR R0, SP, 28H |
0103 | n(41000001): MOV R1, R0, 1H |
0104 | o(82E00010): LDR R2, SP, 10H |
0105 | p(83E00014): LDR R3, SP, 14H |
0106 | q(F7FFFF4F): BL -177 [0056H] |
| ELSIF Mr.mode = 1 THENs mark(f,t Display.white,u x,v y)w (*normal -> selected*) |
0107 | r(E7000025): B 37 [012DH] |
0108 | s(80E00008): LDR R0, SP, 8H |
0109 | s(80000010): LDR R0, R0, 10H |
010A | s(40090001): SUB R0, R0, 1H |
010B | s(E9000006): BNE 6 [0112H] |
010C | t(80E00028): LDR R0, SP, 28H |
010D | u(41000001): MOV R1, R0, 1H |
010E | v(82E00010): LDR R2, SP, 10H |
010F | w(83E00014): LDR R3, SP, 14H |
| ELSIFx My.mode = 2 THENz mark(f,a Display.black,b x,c y)d (*selected -> normal*) |
0110 | x(F7FFFF45): BL -187 [0056H] |
0111 | y(E700001B): B 27 [012DH] |
0112 | z(80E00008): LDR R0, SP, 8H |
0113 | z(80000010): LDR R0, R0, 10H |
0114 | z(40090002): SUB R0, R0, 2H |
0115 | z(E9000006): BNE 6 [011CH] |
0116 | a(80E00028): LDR R0, SP, 28H |
0117 | b(41000000): MOV R1, R0, 0H |
0118 | c(82E00010): LDR R2, SP, 10H |
0119 | d(83E00014): LDR R3, SP, 14H |
| ELSIFe Mf.mode = 3 THENg draw(f,h Display.black,i x,j y,k w,l h,m lw)n;o mark(f,p Display.black,q x,r y)s (*erase*) |
011A | e(F7FFFF3B): BL -197 [0056H] |
011B | f(E7000011): B 17 [012DH] |
011C | g(80E00008): LDR R0, SP, 8H |
011D | g(80000010): LDR R0, R0, 10H |
011E | g(40090003): SUB R0, R0, 3H |
011F | g(E900000D): BNE 13 [012DH] |
0120 | h(80E00028): LDR R0, SP, 28H |
0121 | i(41000000): MOV R1, R0, 0H |
0122 | j(82E00010): LDR R2, SP, 10H |
0123 | k(83E00014): LDR R3, SP, 14H |
0124 | l(84E00018): LDR R4, SP, 18H |
0125 | m(85E0001C): LDR R5, SP, 1CH |
0126 | n(86E00020): LDR R6, SP, 20H |
0127 | o(F7FFFF42): BL -190 [006AH] |
0128 | p(80E00028): LDR R0, SP, 28H |
0129 | q(41000000): MOV R1, R0, 0H |
012A | r(82E00010): LDR R2, SP, 10H |
012B | s(83E00014): LDR R3, SP, 14H |
| ENDt |
012C | t(F7FFFF29): BL -215 [0056H] |
| END |
| END |
| ENDu Draw; |
012D | u(8FE00000): LDR LNK, SP, 0H |
012E | u(4EE8002C): ADD SP, SP, 2CH |
012F | u(C700000F): B LNK |
| |
| PROCEDURE Selectable(obj: Graphics.Object; x, y: INTEGER): BOOLEAN; |
| BEGINv |
0130 | v(4EE90010): SUB SP, SP, 10H |
0131 | v(AFE00000): STR LNK, SP, 0H |
0132 | v(A0E00004): STR R0, SP, 4H |
0133 | v(A1E00008): STR R1, SP, 8H |
0134 | v(A2E0000C): STR R2, SP, CH |
| RETURN (obj.xw <= x)x & (yx <= obj.xz + 4)a & (bobj.yc <= y)d & (ey <= obj.yf + 4)g |
0135 | w(80E00004): LDR R0, SP, 4H |
0136 | w(D1085B4C): BLEQ MT [trap=4, pos=2139] |
0137 | x(80000000): LDR R0, R0, 0H |
0138 | x(81E00008): LDR R1, SP, 8H |
0139 | x(00090001): SUB R0, R0, R1 |
013A | y(EE000016): BGT 22 [0151H] |
013B | z(80E00004): LDR R0, SP, 4H |
013C | z(D1086F4C): BLEQ MT [trap=4, pos=2159] |
013D | a(80000000): LDR R0, R0, 0H |
013E | a(40080004): ADD R0, R0, 4H |
013F | a(81E00008): LDR R1, SP, 8H |
0140 | a(01190000): SUB R1, R1, R0 |
0141 | b(EE00000F): BGT 15 [0151H] |
0142 | c(80E00004): LDR R0, SP, 4H |
0143 | c(D1087D4C): BLEQ MT [trap=4, pos=2173] |
0144 | d(80000004): LDR R0, R0, 4H |
0145 | d(81E0000C): LDR R1, SP, CH |
0146 | d(00090001): SUB R0, R0, R1 |
0147 | e(EE000009): BGT 9 [0151H] |
0148 | f(80E00004): LDR R0, SP, 4H |
0149 | f(D108914C): BLEQ MT [trap=4, pos=2193] |
014A | g(80000004): LDR R0, R0, 4H |
014B | g(40080004): ADD R0, R0, 4H |
014C | g(81E0000C): LDR R1, SP, CH |
014D | g(01190000): SUB R1, R1, R0 |
| ENDh Selectable; |
014E | h(EE000002): BGT 2 [0151H] |
014F | h(40000001): MOV R0, R0, 1H |
0150 | h(E7000001): B 1 [0152H] |
0151 | h(40000000): MOV R0, R0, 0H |
0152 | h(8FE00000): LDR LNK, SP, 0H |
0153 | h(4EE80010): ADD SP, SP, 10H |
0154 | h(C700000F): B LNK |
| |
| PROCEDURE Change(obj: Graphics.Object; VAR M: Graphics.Msg); |
| VAR x0, y0, x1, y1, dx, dy: INTEGER; k: SET; |
| BEGINi |
0155 | i(4EE9002C): SUB SP, SP, 2CH |
0156 | i(AFE00000): STR LNK, SP, 0H |
0157 | i(A0E00004): STR R0, SP, 4H |
0158 | i(A1E00008): STR R1, SP, 8H |
0159 | i(A2E0000C): STR R2, SP, CH |
| CASE M OF |
| Graphics.WidMsg:j obj(Rectangle)k.lw := M.w |l |
015A | j(80E0000C): LDR R0, SP, CH |
015B | j(80000004): LDR R0, R0, 4H |
015C | j .FIXUP D |
015C | j(8D800096): LDR SB, MT, MOD8 [Graphics] |
015D | j(41D80003): ADD R1, SB, VAR3 |
015E | j(01190000): SUB R1, R1, R0 |
015F | j(E900000C): BNE 12 [016CH] |
0160 | k(80E00004): LDR R0, SP, 4H |
0161 | k(E1000005): BEQ 5 [0167H] |
0162 | k(810FFFF8): LDR R1, R0, FFFFFFF8H |
0163 | k(81100004): LDR R1, R1, 4H |
0164 | k .FIXUP D |
0164 | k(8D000008): LDR SB, MT, MOD0 [Rectangles] |
0165 | k(42D80000): ADD R2, SB, 0H [data] |
0166 | k(02290001): SUB R2, R2, R1 |
0167 | k(D909532C): BLNE MT [trap=2, pos=2387] |
0168 | l(81E00008): LDR R1, SP, 8H |
0169 | l(81100000): LDR R1, R1, 0H |
016A | l(A100001C): STR R1, R0, 1CH |
| Graphicsm.ColorMsg:n obj.colo := M.col |
016B | m(E700000B): B 11 [0177H] |
016C | n(80E0000C): LDR R0, SP, CH |
016D | n(80000004): LDR R0, R0, 4H |
016E | n .FIXUP D |
016E | n(8D80000A): LDR SB, MT, MOD8 [Graphics] |
016F | n(41D80004): ADD R1, SB, VAR4 |
0170 | n(01190000): SUB R1, R1, R0 |
0171 | n(E9000005): BNE 5 [0177H] |
0172 | o(80E00004): LDR R0, SP, 4H |
0173 | o(D1097E4C): BLEQ MT [trap=4, pos=2430] |
| ENDp |
0174 | p(81E00008): LDR R1, SP, 8H |
0175 | p(81100000): LDR R1, R1, 0H |
0176 | p(B1000010): STR R1, R0, 10H |
| ENDq Change; |
0177 | q(8FE00000): LDR LNK, SP, 0H |
0178 | q(4EE8002C): ADD SP, SP, 2CH |
0179 | q(C700000F): B LNK |
| |
| PROCEDURE Read(obj: Graphics.Object; VAR R: Files.Rider; VAR C: Graphics.Context); |
| VAR b: BYTE; len: INTEGER; |
| BEGINr Files.ReadByte(R,s b)t;u (*len*); |
017A | r(4EE90020): SUB SP, SP, 20H |
017B | r(AFE00000): STR LNK, SP, 0H |
017C | r(A0E00004): STR R0, SP, 4H |
017D | r(A1E00008): STR R1, SP, 8H |
017E | r(A2E0000C): STR R2, SP, CH |
017F | r(A3E00010): STR R3, SP, 10H |
0180 | r(A4E00014): STR R4, SP, 14H |
0181 | s(80E00008): LDR R0, SP, 8H |
0182 | s(81E0000C): LDR R1, SP, CH |
0183 | t(42E80018): ADD R2, SP, 18H |
0184 | u .FIXUP P |
0184 | u(F720E0EA): BL MOD2 [Files] PROC14 |
| Files.ReadByte(R,v b)w;x obj(Rectangle)y.lw := b;z |
0185 | v(80E00008): LDR R0, SP, 8H |
0186 | v(81E0000C): LDR R1, SP, CH |
0187 | w(42E80018): ADD R2, SP, 18H |
0188 | x .FIXUP P |
0188 | x(F720E004): BL MOD2 [Files] PROC14 |
0189 | y(80E00004): LDR R0, SP, 4H |
018A | y(E1000005): BEQ 5 [0190H] |
018B | y(810FFFF8): LDR R1, R0, FFFFFFF8H |
018C | y(81100004): LDR R1, R1, 4H |
018D | y .FIXUP D |
018D | y(8D00001F): LDR SB, MT, MOD0 [Rectangles] |
018E | y(42D80000): ADD R2, SB, 0H [data] |
018F | y(02290001): SUB R2, R2, R1 |
0190 | y(D90A622C): BLNE MT [trap=2, pos=2658] |
0191 | z(91E00018): LDR R1, SP, 18H |
0192 | z(A100001C): STR R1, R0, 1CH |
| Files.ReadByte(R,a b)b;c obj(Rectangle)d.vers := b;e |
0193 | a(80E00008): LDR R0, SP, 8H |
0194 | a(81E0000C): LDR R1, SP, CH |
0195 | b(42E80018): ADD R2, SP, 18H |
0196 | c .FIXUP P |
0196 | c(F720E00E): BL MOD2 [Files] PROC14 |
0197 | d(80E00004): LDR R0, SP, 4H |
0198 | d(E1000005): BEQ 5 [019EH] |
0199 | d(810FFFF8): LDR R1, R0, FFFFFFF8H |
019A | d(81100004): LDR R1, R1, 4H |
019B | d .FIXUP D |
019B | d(8D00000E): LDR SB, MT, MOD0 [Rectangles] |
019C | d(42D80000): ADD R2, SB, 0H [data] |
019D | d(02290001): SUB R2, R2, R1 |
019E | d(D90A942C): BLNE MT [trap=2, pos=2708] |
019F | e(91E00018): LDR R1, SP, 18H |
01A0 | e(A1000020): STR R1, R0, 20H |
| ENDf Read; |
01A1 | f(8FE00000): LDR LNK, SP, 0H |
01A2 | f(4EE80020): ADD SP, SP, 20H |
01A3 | f(C700000F): B LNK |
| |
| PROCEDURE Write(obj: Graphics.Object; cno: INTEGER; VAR W: Files.Rider; VAR C: Graphics.Context); |
| BEGINg Graphics.WriteObj(W,h cno,i obj)j;k Files.WriteByte(W,l 2)m;n |
01A4 | g(4EE9001C): SUB SP, SP, 1CH |
01A5 | g(AFE00000): STR LNK, SP, 0H |
01A6 | g(A0E00004): STR R0, SP, 4H |
01A7 | g(A1E00008): STR R1, SP, 8H |
01A8 | g(A2E0000C): STR R2, SP, CH |
01A9 | g(A3E00010): STR R3, SP, 10H |
01AA | g(A4E00014): STR R4, SP, 14H |
01AB | g(A5E00018): STR R5, SP, 18H |
01AC | h(80E0000C): LDR R0, SP, CH |
01AD | h(81E00010): LDR R1, SP, 10H |
01AE | i(82E00008): LDR R2, SP, 8H |
01AF | j(83E00004): LDR R3, SP, 4H |
01B0 | k .FIXUP P |
01B0 | k(F782401A): BL MOD8 [Graphics] PROC36 |
01B1 | l(80E0000C): LDR R0, SP, CH |
01B2 | l(81E00010): LDR R1, SP, 10H |
01B3 | m(42000002): MOV R2, R0, 2H |
01B4 | n .FIXUP P |
01B4 | n(F7216004): BL MOD2 [Files] PROC22 |
| Files.WriteByte(W,o obj(Rectangle)p.lw)q;r Files.WriteByte(W,s obj(Rectangle)t.vers)u |
01B5 | o(80E0000C): LDR R0, SP, CH |
01B6 | o(81E00010): LDR R1, SP, 10H |
01B7 | p(82E00004): LDR R2, SP, 4H |
01B8 | p(E1000005): BEQ 5 [01BEH] |
01B9 | p(832FFFF8): LDR R3, R2, FFFFFFF8H |
01BA | p(83300004): LDR R3, R3, 4H |
01BB | p .FIXUP D |
01BB | p(8D000020): LDR SB, MT, MOD0 [Rectangles] |
01BC | p(44D80000): ADD R4, SB, 0H [data] |
01BD | p(04490003): SUB R4, R4, R3 |
01BE | p(D90B752C): BLNE MT [trap=2, pos=2933] |
01BF | q(8220001C): LDR R2, R2, 1CH |
01C0 | r .FIXUP P |
01C0 | r(F721600C): BL MOD2 [Files] PROC22 |
01C1 | s(80E0000C): LDR R0, SP, CH |
01C2 | s(81E00010): LDR R1, SP, 10H |
01C3 | t(82E00004): LDR R2, SP, 4H |
01C4 | t(E1000005): BEQ 5 [01CAH] |
01C5 | t(832FFFF8): LDR R3, R2, FFFFFFF8H |
01C6 | t(83300004): LDR R3, R3, 4H |
01C7 | t .FIXUP D |
01C7 | t(8D00000C): LDR SB, MT, MOD0 [Rectangles] |
01C8 | t(44D80000): ADD R4, SB, 0H [data] |
01C9 | t(04490003): SUB R4, R4, R3 |
01CA | t(D90B9C2C): BLNE MT [trap=2, pos=2972] |
01CB | u(82200020): LDR R2, R2, 20H |
| ENDv Write; |
01CC | v .FIXUP P |
01CC | v(F721600C): BL MOD2 [Files] PROC22 |
01CD | v(8FE00000): LDR LNK, SP, 0H |
01CE | v(4EE8001C): ADD SP, SP, 1CH |
01CF | v(C700000F): B LNK |
| |
| (* PROCEDURE Print(obj: Graphics.Object; x, y: INTEGER); |
| VAR w, h, lw, s: INTEGER; |
| BEGIN INC(x, obj.x * 4); INC(y, obj.y * 4); w := obj.w * 4; h := obj.h * 4; |
| lw := obj(Rectangle).lw * 2; s := obj(Rectangle).vers; |
| Printer.ReplConst(x, y, w, lw); |
| Printer.ReplConst(x+w-lw, y, lw, h); |
| Printer.ReplConst(x, y+h-lw, w, lw); |
| Printer.ReplConst(x, y, lw, h); |
| IF s > 0 THEN Printer.ReplPattern(x, y, w, h, s) END |
| END Print; *) |
| |
| PROCEDURE Make*; (*command*) |
| VAR x0, x1, y0, y1: INTEGER; |
| R: Rectangle; |
| G: GraphicFrames.Frame; |
| BEGINw G := GraphicFrames.Focus();x |
01D0 | w .PROC 6 |
01D0 | w .COMMAND Make |
01D0 | w(4EE9001C): SUB SP, SP, 1CH |
01D1 | w(AFE00000): STR LNK, SP, 0H |
01D2 | x .FIXUP P |
01D2 | x(F7A09006): BL MOD10 [GraphicFrames] PROC9 |
01D3 | x(A0E00018): STR R0, SP, 18H |
| IF (G # NIL)y & (zG.marka.next # NIL)b THENc |
01D4 | y(80E00018): LDR R0, SP, 18H |
01D5 | z(E100006B): BEQ 107 [0241H] |
01D6 | a(80E00018): LDR R0, SP, 18H |
01D7 | a(D10E264C): BLEQ MT [trap=4, pos=3622] |
01D8 | b(80000048): LDR R0, R0, 48H |
01D9 | c(E1000067): BEQ 103 [0241H] |
| GraphicFrames.Deselect(G)d;e |
01DA | d(80E00018): LDR R0, SP, 18H |
01DB | e .FIXUP P |
01DB | e(F7A12009): BL MOD10 [GraphicFrames] PROC18 |
| x0 := G.markf.x;g y0 := G.markh.y;i x1 := G.markj.next.xk;l y1 := G.markm.next.yn;o |
01DC | f(80E00018): LDR R0, SP, 18H |
01DD | f(D10E6B4C): BLEQ MT [trap=4, pos=3691] |
01DE | g(80000040): LDR R0, R0, 40H |
01DF | g(A0E00004): STR R0, SP, 4H |
01E0 | h(80E00018): LDR R0, SP, 18H |
01E1 | h(D10E7B4C): BLEQ MT [trap=4, pos=3707] |
01E2 | i(80000044): LDR R0, R0, 44H |
01E3 | i(A0E0000C): STR R0, SP, CH |
01E4 | j(80E00018): LDR R0, SP, 18H |
01E5 | j(D10E8B4C): BLEQ MT [trap=4, pos=3723] |
01E6 | k(80000048): LDR R0, R0, 48H |
01E7 | k(D10E924C): BLEQ MT [trap=4, pos=3730] |
01E8 | l(80000000): LDR R0, R0, 0H |
01E9 | l(A0E00008): STR R0, SP, 8H |
01EA | m(80E00018): LDR R0, SP, 18H |
01EB | m(D10EA04C): BLEQ MT [trap=4, pos=3744] |
01EC | n(80000048): LDR R0, R0, 48H |
01ED | n(D10EA74C): BLEQ MT [trap=4, pos=3751] |
01EE | o(80000004): LDR R0, R0, 4H |
01EF | o(A0E00010): STR R0, SP, 10H |
| NEW(R);p R.colq := Oberon.CurCol;r |
01F0 | p(40E80014): ADD R0, SP, 14H |
01F1 | p .FIXUP D |
01F1 | p(8D00002A): LDR SB, MT, MOD0 [Rectangles] |
01F2 | p(41D80000): ADD R1, SB, 0H [data] |
01F3 | p(D70EB60C): BL MT [trap=0, pos=3766] |
01F4 | q(80E00014): LDR R0, SP, 14H |
01F5 | q(D10EBC4C): BLEQ MT [trap=4, pos=3772] |
01F6 | r .FIXUP D |
01F6 | r(8D600005): LDR SB, MT, MOD6 [Oberon] |
01F7 | r(81D00010): LDR R1, SB, VAR16 |
01F8 | r(B1000010): STR R1, R0, 10H |
| R.ws := ABS(x1-x0)t;u R.hv := ABS(y1-y0)w;x |
01F9 | s(80E00014): LDR R0, SP, 14H |
01FA | s(D10ED84C): BLEQ MT [trap=4, pos=3800] |
01FB | t(81E00008): LDR R1, SP, 8H |
01FC | t(82E00004): LDR R2, SP, 4H |
01FD | t(01190002): SUB R1, R1, R2 |
01FE | u(41190000): SUB R1, R1, 0H |
01FF | u(ED000002): BGE 2 [0202H] |
0200 | u(42000000): MOV R2, R0, 0H |
0201 | u(01290001): SUB R1, R2, R1 |
0202 | u(A1000008): STR R1, R0, 8H |
0203 | v(80E00014): LDR R0, SP, 14H |
0204 | v(D10EEB4C): BLEQ MT [trap=4, pos=3819] |
0205 | w(81E00010): LDR R1, SP, 10H |
0206 | w(82E0000C): LDR R2, SP, CH |
0207 | w(01190002): SUB R1, R1, R2 |
0208 | x(41190000): SUB R1, R1, 0H |
0209 | x(ED000002): BGE 2 [020CH] |
020A | x(42000000): MOV R2, R0, 0H |
020B | x(01290001): SUB R1, R2, R1 |
020C | x(A100000C): STR R1, R0, CH |
| IF x1 < x0 THENy x0 := x1 ENDz ; |
020D | y(80E00008): LDR R0, SP, 8H |
020E | y(81E00004): LDR R1, SP, 4H |
020F | y(00090001): SUB R0, R0, R1 |
0210 | y(ED000002): BGE 2 [0213H] |
0211 | z(80E00008): LDR R0, SP, 8H |
0212 | z(A0E00004): STR R0, SP, 4H |
| IF y1 < y0 THENa y0 := y1 ENDb ; |
0213 | a(80E00010): LDR R0, SP, 10H |
0214 | a(81E0000C): LDR R1, SP, CH |
0215 | a(00090001): SUB R0, R0, R1 |
0216 | a(ED000002): BGE 2 [0219H] |
0217 | b(80E00010): LDR R0, SP, 10H |
0218 | b(A0E0000C): STR R0, SP, CH |
| R.xc := x0 - G.xd;e R.yf := y0 - G.yg;h |
0219 | c(80E00014): LDR R0, SP, 14H |
021A | c(D10F4E4C): BLEQ MT [trap=4, pos=3918] |
021B | d(81E00018): LDR R1, SP, 18H |
021C | d(D10F5A4C): BLEQ MT [trap=4, pos=3930] |
021D | e(82E00004): LDR R2, SP, 4H |
021E | e(81100030): LDR R1, R1, 30H |
021F | e(01290001): SUB R1, R2, R1 |
0220 | e(A1000000): STR R1, R0, 0H |
0221 | f(80E00014): LDR R0, SP, 14H |
0222 | f(D10F5F4C): BLEQ MT [trap=4, pos=3935] |
0223 | g(81E00018): LDR R1, SP, 18H |
0224 | g(D10F6B4C): BLEQ MT [trap=4, pos=3947] |
0225 | h(82E0000C): LDR R2, SP, CH |
0226 | h(81100034): LDR R1, R1, 34H |
0227 | h(01290001): SUB R1, R2, R1 |
0228 | h(A1000004): STR R1, R0, 4H |
| R.lwi := Graphics.width;j R.versk := 0;l R.dom := method;n |
0229 | i(80E00014): LDR R0, SP, 14H |
022A | i(D10F774C): BLEQ MT [trap=4, pos=3959] |
022B | j .FIXUP D |
022B | j(8D800035): LDR SB, MT, MOD8 [Graphics] |
022C | j(81D0000F): LDR R1, SB, VAR15 |
022D | j(A100001C): STR R1, R0, 1CH |
022E | k(80E00014): LDR R0, SP, 14H |
022F | k(D10F914C): BLEQ MT [trap=4, pos=3985] |
0230 | l(41000000): MOV R1, R0, 0H |
0231 | l(A1000020): STR R1, R0, 20H |
0232 | m(80E00014): LDR R0, SP, 14H |
0233 | m(D10F9C4C): BLEQ MT [trap=4, pos=3996] |
0234 | n .FIXUP D |
0234 | n(8D000009): LDR SB, MT, MOD0 [Rectangles] |
0235 | n(81D0001C): LDR R1, SB, 1CH [data] |
0236 | n(A1000014): STR R1, R0, 14H |
| Graphics.Add(G.grapho,p R)q;r |
0237 | o(80E00018): LDR R0, SP, 18H |
0238 | o(D10FC24C): BLEQ MT [trap=4, pos=4034] |
0239 | p(8000001C): LDR R0, R0, 1CH |
023A | q(81E00014): LDR R1, SP, 14H |
023B | r .FIXUP P |
023B | r(F7816060): BL MOD8 [Graphics] PROC22 |
| GraphicFrames.Defocus(G)s;t GraphicFrames.DrawObj(G,u R)v |
023C | s(80E00018): LDR R0, SP, 18H |
023D | t .FIXUP P |
023D | t(F7A11002): BL MOD10 [GraphicFrames] PROC17 |
023E | u(80E00018): LDR R0, SP, 18H |
023F | v(81E00014): LDR R1, SP, 14H |
| ENDw |
0240 | w .FIXUP P |
0240 | w(F7A0E003): BL MOD10 [GraphicFrames] PROC14 |
| ENDx Make; |
0241 | x(8FE00000): LDR LNK, SP, 0H |
0242 | x(4EE8001C): ADD SP, SP, 1CH |
0243 | x(C700000F): B LNK |
| |
| BEGINy NEW(method);z |
0244 | y .PROC 0 |
0244 | y .ENTRYPOINT |
0244 | y(4EE90004): SUB SP, SP, 4H |
0245 | y(AFE00000): STR LNK, SP, 0H |
0246 | z .FIXUP D |
0246 | z(8D000012): LDR SB, MT, MOD0 [Rectangles] |
0247 | z(40D8001C): ADD R0, SB, 1CH [data] |
0248 | z .FIXUP D |
0248 | z(8D800002): LDR SB, MT, MOD8 [Graphics] |
0249 | z(41D8000B): ADD R1, SB, VAR11 |
024A | z(D7102B0C): BL MT [trap=0, pos=4139] |
| method.modulea := "Rectangles";b method.allocatorc := "New";d |
024B | a .FIXUP D |
024B | a(8D000003): LDR SB, MT, MOD0 [Rectangles] |
024C | a(80D0001C): LDR R0, SB, 1CH [data] |
024D | a(D1103B4C): BLEQ MT [trap=4, pos=4155] |
024E | b(41D80028): ADD R1, SB, 28H |
024F | b(82100000): LDR R2, R1, 0H |
0250 | b(41180004): ADD R1, R1, 4H |
0251 | b(A2000000): STR R2, R0, 0H |
0252 | b(40080004): ADD R0, R0, 4H |
0253 | b(42220018): ASR R2, R2, 18H |
0254 | b(E9FFFFFA): BNE -6 [024FH] |
0255 | c(80D0001C): LDR R0, SB, 1CH |
0256 | c(D1105D4C): BLEQ MT [trap=4, pos=4189] |
0257 | d(40080020): ADD R0, R0, 20H |
0258 | d(41D80034): ADD R1, SB, 34H |
0259 | d(82100000): LDR R2, R1, 0H |
025A | d(41180004): ADD R1, R1, 4H |
025B | d(A2000000): STR R2, R0, 0H |
025C | d(40080004): ADD R0, R0, 4H |
025D | d(42220018): ASR R2, R2, 18H |
025E | d(E9FFFFFA): BNE -6 [0259H] |
| method.newe := New;f method.copyg := Copy;h method.drawi := Draw;j |
025F | e(80D0001C): LDR R0, SB, 1CH |
0260 | e(D110744C): BLEQ MT [trap=4, pos=4212] |
0261 | f(F7000000): BL 0 [0262H] |
0262 | f(41F90988): SUB R1, LNK, 988H |
0263 | f(A1000040): STR R1, R0, 40H |
0264 | g(80D0001C): LDR R0, SB, 1CH |
0265 | g(D110884C): BLEQ MT [trap=4, pos=4232] |
0266 | h(F7000000): BL 0 [0267H] |
0267 | h(41F9095C): SUB R1, LNK, 95CH |
0268 | h(A1000044): STR R1, R0, 44H |
0269 | i(80D0001C): LDR R0, SB, 1CH |
026A | i(D1109D4C): BLEQ MT [trap=4, pos=4253] |
026B | j(F7000000): BL 0 [026CH] |
026C | j(41F90738): SUB R1, LNK, 738H |
026D | j(A1000048): STR R1, R0, 48H |
| method.selectablek := Selectable;l method.changem := Change;n |
026E | k(80D0001C): LDR R0, SB, 1CH |
026F | k(D110BA4C): BLEQ MT [trap=4, pos=4282] |
0270 | l(F7000000): BL 0 [0271H] |
0271 | l(41F90504): SUB R1, LNK, 504H |
0272 | l(A1000050): STR R1, R0, 50H |
0273 | m(80D0001C): LDR R0, SB, 1CH |
0274 | m(D110D74C): BLEQ MT [trap=4, pos=4311] |
0275 | n(F7000000): BL 0 [0276H] |
0276 | n(41F90484): SUB R1, LNK, 484H |
0277 | n(A100004C): STR R1, R0, 4CH |
| method.reado := Read;p method.writeq := Write;r (*method.print := Print*) |
0278 | o(80D0001C): LDR R0, SB, 1CH |
0279 | o(D110F04C): BLEQ MT [trap=4, pos=4336] |
027A | p(F7000000): BL 0 [027BH] |
027B | p(41F90404): SUB R1, LNK, 404H |
027C | p(A1000054): STR R1, R0, 54H |
027D | q(80D0001C): LDR R0, SB, 1CH |
027E | q(D111064C): BLEQ MT [trap=4, pos=4358] |
027F | r(F7000000): BL 0 [0280H] |
0280 | r(41F90370): SUB R1, LNK, 370H |
0281 | r(A1000058): STR R1, R0, 58H |
| tack := SYSTEM.ADR($0707 4122 1408 1422 4100$);s |
0282 | s(40D80038): ADD R0, SB, 38H |
0283 | s(A0D00020): STR R0, SB, 20H |
| grey := SYSTEM.ADR($2004 0000 1111 1111 0000 0000 4444 4444 0000 0000$) |
| ENDt Rectangles.u |
0284 | t(40D80044): ADD R0, SB, 44H |
0285 | t(A0D00024): STR R0, SB, 24H |
0286 | u(8FE00000): LDR LNK, SP, 0H |
0287 | u(4EE80004): ADD SP, SP, 4H |
0288 | u(C700000F): B LNK |