| 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 |