home *** CD-ROM | disk | FTP | other *** search
/ Eagles Nest BBS 8 / Eagles_Nest_Mac_Collection_Disc_8.TOAST / Developer Environments / 68000ASM / Example Programs / Sample Example / Sources / SampCont.Asm next >
MacBinary  |  1986-06-02  |  7.3 KB  |  [TEXT/EDIT]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, Mon Jun 2 13:34:40 1986, modified Mon Jun 2 13:34:40 1986, creator Macintosh Edit, type ASCII, 6803 bytes "SampCont.Asm" , at 0x1b13 348 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[EDIT]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0c 53 61 6d 70 43 6f | 6e 74 2e 41 73 6d 00 00 |..SampCo|nt.Asm..|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 45 44 49 | 54 00 00 00 00 00 00 00 |.TEXTEDI|T.......|
|00000050| 00 00 00 00 00 1a 93 00 | 00 01 5c 9b 07 89 b0 9b |........|..\.....|
|00000060| 07 89 b0 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 0a 6f 00 00 |........|.....o..|
|00000080| 3b 20 46 69 6c 65 20 53 | 61 6d 70 43 6f 6e 74 2e |; File S|ampCont.|
|00000090| 41 73 6d 0d 3b 20 57 72 | 69 74 74 65 6e 20 62 79 |Asm.; Wr|itten by|
|000000a0| 20 42 75 64 20 54 72 69 | 62 62 6c 65 20 20 20 31 | Bud Tri|bble 1|
|000000b0| 37 2d 46 65 62 2d 38 35 | 0d 3b 20 4d 6f 64 69 66 |7-Feb-85|.; Modif|
|000000c0| 69 65 64 20 66 6f 72 20 | 6e 65 77 20 65 71 75 61 |ied for |new equa|
|000000d0| 74 65 73 20 32 39 2d 4d | 61 79 2d 38 36 0d 0d 58 |tes 29-M|ay-86..X|
|000000e0| 44 65 66 09 09 43 6f 6e | 74 65 6e 74 0d 58 52 65 |Def..Con|tent.XRe|
|000000f0| 66 09 09 57 72 69 74 65 | 4e 75 6d 0d 0d 49 6e 63 |f..Write|Num..Inc|
|00000100| 6c 75 64 65 09 09 54 72 | 61 70 73 2e 44 0d 49 6e |lude..Tr|aps.D.In|
|00000110| 63 6c 75 64 65 09 09 51 | 75 69 63 6b 45 71 75 2e |clude..Q|uickEqu.|
|00000120| 44 0d 0d 3b 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |D..; ---|--------|
|00000130| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 20 53 61 6d 70 |--------|--- Samp|
|00000140| 6c 65 20 43 6f 6e 74 65 | 6e 74 73 20 53 75 62 72 |le Conte|nts Subr|
|00000150| 6f 75 74 69 6e 65 73 20 | 2d 2d 2d 2d 2d 2d 2d 2d |outines |--------|
|00000160| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 0d 3b |--------|------.;|
|00000170| 0d 3b 20 54 68 69 73 20 | 66 69 6c 65 20 6d 75 73 |.; This |file mus|
|00000180| 74 20 62 65 20 61 73 73 | 65 6d 62 6c 65 64 20 61 |t be ass|embled a|
|00000190| 6e 64 20 6c 69 6e 6b 65 | 64 20 77 69 74 68 20 6d |nd linke|d with m|
|000001a0| 61 69 6e 6c 69 6e 65 20 | 22 53 61 6d 70 6c 65 2e |ainline |"Sample.|
|000001b0| 52 65 6c 22 2e 0d 3b 20 | 49 74 20 63 6f 6e 74 61 |Rel"..; |It conta|
|000001c0| 69 6e 73 20 73 65 76 65 | 72 61 6c 20 69 6c 6c 75 |ins seve|ral illu|
|000001d0| 73 74 72 61 74 69 76 65 | 20 73 75 62 72 6f 75 74 |strative| subrout|
|000001e0| 69 6e 65 73 20 77 68 69 | 63 68 20 61 72 65 20 63 |ines whi|ch are c|
|000001f0| 61 6c 6c 65 64 20 66 72 | 6f 6d 0d 3b 20 74 68 65 |alled fr|om.; the|
|00000200| 20 6d 61 69 6e 20 65 76 | 65 6e 74 20 6c 6f 6f 70 | main ev|ent loop|
|00000210| 20 77 69 74 68 69 6e 20 | 74 68 65 20 22 53 61 6d | within |the "Sam|
|00000220| 70 6c 65 22 20 70 72 6f | 67 72 61 6d 2e 20 20 54 |ple" pro|gram. T|
|00000230| 68 65 20 6a 6f 62 20 66 | 69 6c 65 20 6e 61 6d 65 |he job f|ile name|
|00000240| 64 0d 3b 20 22 53 61 6d | 70 6c 65 2e 4a 6f 62 22 |d.; "Sam|ple.Job"|
|00000250| 20 6d 61 79 20 62 65 20 | 75 73 65 64 20 74 6f 20 | may be |used to |
|00000260| 61 73 73 65 6d 62 6c 65 | 20 61 6e 64 20 6c 69 6e |assemble| and lin|
|00000270| 6b 20 61 6c 6c 20 74 68 | 65 20 66 69 6c 65 73 20 |k all th|e files |
|00000280| 66 6f 72 20 74 68 65 0d | 3b 20 61 70 70 6c 69 63 |for the.|; applic|
|00000290| 61 74 69 6f 6e 20 22 53 | 61 6d 70 6c 65 22 2c 20 |ation "S|ample", |
|000002a0| 69 6e 63 6c 75 64 69 6e | 67 20 22 53 61 6d 70 4d |includin|g "SampM|
|000002b0| 65 6e 75 2e 41 73 6d 22 | 20 61 6e 64 20 22 53 61 |enu.Asm"| and "Sa|
|000002c0| 6d 70 43 6f 6e 74 2e 41 | 73 6d 22 2e 0d 3b 0d 3b |mpCont.A|sm"..;.;|
|000002d0| 20 54 68 65 20 22 43 6f | 6e 74 65 6e 74 22 20 72 | The "Co|ntent" r|
|000002e0| 6f 75 74 69 6e 65 20 69 | 73 20 63 61 6c 6c 65 64 |outine i|s called|
|000002f0| 20 77 68 65 6e 65 76 65 | 72 20 74 68 65 20 75 73 | wheneve|r the us|
|00000300| 65 72 20 63 6c 69 63 6b | 73 20 69 6e 20 74 68 65 |er click|s in the|
|00000310| 0d 3b 20 63 6f 6e 74 65 | 6e 74 20 72 65 67 69 6f |.; conte|nt regio|
|00000320| 6e 20 6f 66 20 74 68 65 | 20 77 69 6e 64 6f 77 2e |n of the| window.|
|00000330| 20 4f 6e 20 65 6e 74 72 | 79 2c 20 41 30 20 63 6f | On entr|y, A0 co|
|00000340| 6e 74 61 69 6e 73 20 61 | 20 70 6f 69 6e 74 65 72 |ntains a| pointer|
|00000350| 20 74 6f 0d 3b 20 74 68 | 65 20 28 67 6c 6f 62 61 | to.; th|e (globa|
|00000360| 6c 29 20 6d 6f 75 73 65 | 20 63 6f 6f 72 64 69 6e |l) mouse| coordin|
|00000370| 61 74 65 73 20 70 61 73 | 73 65 64 20 62 79 20 47 |ates pas|sed by G|
|00000380| 65 74 4e 65 78 74 45 76 | 65 6e 74 2e 20 41 6c 73 |etNextEv|ent. Als|
|00000390| 6f 2c 20 44 30 20 63 6f | 6e 74 61 69 6e 73 0d 3b |o, D0 co|ntains.;|
|000003a0| 20 74 68 65 20 76 61 6c | 75 65 20 6f 66 20 74 68 | the val|ue of th|
|000003b0| 65 20 63 75 72 72 65 6e | 74 20 69 74 65 6d 20 28 |e curren|t item (|
|000003c0| 31 2e 2e 6e 29 20 73 65 | 6c 65 63 74 65 64 20 66 |1..n) se|lected f|
|000003d0| 72 6f 6d 20 74 68 65 20 | 4d 6f 75 73 65 20 6d 65 |rom the |Mouse me|
|000003e0| 6e 75 2e 0d 3b 0d 0d 3b | 20 2d 2d 2d 2d 2d 2d 2d |nu..;..;| -------|
|000003f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000400| 2d 2d 2d 2d 2d 2d 20 43 | 6f 6e 74 65 6e 74 20 52 |------ C|ontent R|
|00000410| 6f 75 74 69 6e 65 73 20 | 2d 2d 2d 2d 2d 2d 2d 2d |outines |--------|
|00000420| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000430| 2d 2d 0d 3b 20 43 61 6c | 6c 65 64 20 77 68 65 6e |--.; Cal|led when|
|00000440| 20 74 68 65 72 65 20 69 | 73 20 61 20 6d 6f 75 73 | there i|s a mous|
|00000450| 65 20 64 6f 77 6e 20 65 | 76 65 6e 74 20 69 6e 20 |e down e|vent in |
|00000460| 74 68 65 20 63 6f 6e 74 | 65 6e 74 20 72 65 67 69 |the cont|ent regi|
|00000470| 6f 6e 20 6f 66 20 74 68 | 65 0d 3b 20 77 69 6e 64 |on of th|e.; wind|
|00000480| 6f 77 2e 20 20 4f 6e 20 | 65 6e 74 72 79 2c 20 41 |ow. On |entry, A|
|00000490| 30 20 70 6f 69 6e 74 73 | 20 74 6f 20 74 68 65 20 |0 points| to the |
|000004a0| 6d 6f 75 73 65 20 6c 6f | 63 61 74 69 6f 6e 20 70 |mouse lo|cation p|
|000004b0| 61 73 73 65 64 20 62 79 | 20 47 65 74 4e 65 78 74 |assed by| GetNext|
|000004c0| 45 76 65 6e 74 2c 0d 3b | 20 28 63 6f 6e 76 65 72 |Event,.;| (conver|
|000004d0| 74 65 64 20 74 6f 20 6c | 6f 63 61 6c 20 63 6f 6f |ted to l|ocal coo|
|000004e0| 72 64 69 6e 61 74 65 73 | 29 2c 20 61 6e 64 20 44 |rdinates|), and D|
|000004f0| 30 20 63 6f 6e 74 61 69 | 6e 73 20 74 68 65 20 63 |0 contai|ns the c|
|00000500| 75 72 72 65 6e 74 6c 79 | 20 73 65 6c 65 63 74 65 |urrently| selecte|
|00000510| 64 0d 3b 20 69 74 65 6d | 20 66 72 6f 6d 20 74 68 |d.; item| from th|
|00000520| 65 20 22 4d 6f 75 73 65 | 22 20 6d 65 6e 75 2e 0d |e "Mouse|" menu..|
|00000530| 3b 0d 0d 43 6f 6e 74 65 | 6e 74 0d 09 0d 09 4d 4f |;..Conte|nt....MO|
|00000540| 56 45 4d 2e 4c 09 09 44 | 34 2f 41 32 2d 41 34 2c |VEM.L..D|4/A2-A4,|
|00000550| 2d 28 53 50 29 09 09 3b | 20 53 61 76 65 20 72 65 |-(SP)..;| Save re|
|00000560| 67 65 73 74 65 72 0d 09 | 4c 45 41 09 09 70 6f 69 |gester..|LEA..poi|
|00000570| 6e 74 28 41 35 29 2c 41 | 34 09 09 3b 20 41 34 20 |nt(A5),A|4..; A4 |
|00000580| 70 6f 69 6e 74 73 20 74 | 6f 20 70 6f 69 6e 74 0d |points t|o point.|
|00000590| 09 4d 4f 56 45 2e 4c 09 | 09 28 41 30 29 2c 28 41 |.MOVE.L.|.(A0),(A|
|000005a0| 34 29 09 09 3b 20 43 6f | 70 79 20 70 61 72 61 6d |4)..; Co|py param|
|000005b0| 65 74 65 72 0d 09 4d 4f | 56 45 2e 4c 09 09 44 30 |eter..MO|VE.L..D0|
|000005c0| 2c 44 34 09 09 09 3b 20 | 44 34 20 68 61 73 20 6d |,D4...; |D4 has m|
|000005d0| 65 6e 75 20 69 74 65 6d | 20 6e 75 6d 62 65 72 0d |enu item| number.|
|000005e0| 0d 09 3b 20 50 52 4f 43 | 45 44 55 52 45 20 47 65 |..; PROC|EDURE Ge|
|000005f0| 74 50 65 6e 53 74 61 74 | 65 20 28 56 41 52 20 70 |tPenStat|e (VAR p|
|00000600| 6e 53 74 61 74 65 3a 20 | 50 65 6e 53 74 61 74 65 |nState: |PenState|
|00000610| 29 3b 0d 09 50 45 41 09 | 09 70 6e 53 74 61 74 65 |);..PEA.|.pnState|
|00000620| 28 41 35 29 09 09 09 3b | 20 53 61 76 65 20 70 65 |(A5)...;| Save pe|
|00000630| 6e 20 73 74 61 74 65 0d | 09 5f 47 65 74 50 65 6e |n state.|._GetPen|
|00000640| 53 74 61 74 65 0d 3b 20 | 44 69 73 70 61 74 63 68 |State.; |Dispatch|
|00000650| 65 72 20 66 6f 72 20 22 | 4d 6f 75 73 65 22 20 6d |er for "|Mouse" m|
|00000660| 65 6e 75 20 76 61 6c 75 | 65 73 0d 09 43 4d 50 09 |enu valu|es..CMP.|
|00000670| 09 23 31 2c 44 34 09 09 | 09 3b 20 46 69 72 73 74 |.#1,D4..|.; First|
|00000680| 20 69 74 65 6d 0d 09 42 | 45 51 09 09 53 6b 65 74 | item..B|EQ..Sket|
|00000690| 63 68 0d 09 43 4d 50 09 | 09 23 32 2c 44 34 0d 09 |ch..CMP.|.#2,D4..|
|000006a0| 42 45 51 09 09 42 6f 78 | 65 73 09 09 09 3b 20 53 |BEQ..Box|es...; S|
|000006b0| 65 63 6f 6e 64 20 69 74 | 65 6d 0d 09 43 4d 50 09 |econd it|em..CMP.|
|000006c0| 09 23 33 2c 44 34 0d 09 | 42 45 51 09 09 4f 76 61 |.#3,D4..|BEQ..Ova|
|000006d0| 6c 73 09 09 09 3b 20 54 | 68 69 72 64 20 69 74 65 |ls...; T|hird ite|
|000006e0| 6d 0d 09 43 4d 50 09 09 | 23 34 2c 44 34 0d 09 42 |m..CMP..|#4,D4..B|
|000006f0| 45 51 09 09 4c 6f 63 61 | 74 69 6f 6e 09 09 3b 20 |EQ..Loca|tion..; |
|00000700| 46 6f 75 72 74 68 20 69 | 74 65 6d 0d 09 4a 4d 50 |Fourth i|tem..JMP|
|00000710| 09 09 43 52 65 74 75 72 | 6e 09 09 09 3b 20 53 68 |..CRetur|n...; Sh|
|00000720| 6f 75 6c 64 27 6e 74 20 | 67 65 74 20 68 65 72 65 |ould'nt |get here|
|00000730| 0d 09 0d 3b 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...;----|--------|
|00000740| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000750| 2d 2d 2d 2d 20 53 6b 65 | 74 63 68 20 2d 2d 2d 2d |---- Ske|tch ----|
|00000760| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000770| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 09 0d |--------|------..|
|00000780| 53 6b 65 74 63 68 09 0d | 09 3b 50 72 6f 63 65 64 |Sketch..|.;Proced|
|00000790| 75 72 65 20 4d 6f 76 65 | 54 6f 28 68 2c 76 3a 20 |ure Move|To(h,v: |
|000007a0| 49 4e 54 45 47 45 52 29 | 0d 09 4d 4f 56 45 09 09 |INTEGER)|..MOVE..|
|000007b0| 68 28 41 34 29 2c 2d 28 | 53 50 29 09 09 3b 20 48 |h(A4),-(|SP)..; H|
|000007c0| 20 63 6f 6f 72 64 69 6e | 61 74 65 0d 09 4d 4f 56 | coordin|ate..MOV|
|000007d0| 45 09 09 76 28 41 34 29 | 2c 2d 28 53 50 29 09 09 |E..v(A4)|,-(SP)..|
|000007e0| 3b 20 56 20 63 6f 6f 72 | 64 69 6e 61 74 65 0d 09 |; V coor|dinate..|
|000007f0| 5f 4d 6f 76 65 54 6f 09 | 09 09 09 09 3b 20 44 72 |_MoveTo.|....; Dr|
|00000800| 61 77 20 61 20 6c 69 6e | 65 0d 0d 09 3b 50 72 6f |aw a lin|e...;Pro|
|00000810| 63 65 64 75 72 65 20 47 | 65 74 4d 6f 75 73 65 20 |cedure G|etMouse |
|00000820| 28 56 41 52 20 6d 6f 75 | 73 65 4c 6f 63 3a 20 50 |(VAR mou|seLoc: P|
|00000830| 6f 69 6e 74 29 3b 0d 40 | 31 09 50 45 41 09 09 74 |oint);.@|1.PEA..t|
|00000840| 50 6f 69 6e 74 28 41 35 | 29 09 09 3b 20 50 6f 69 |Point(A5|)..; Poi|
|00000850| 6e 74 20 74 6f 20 74 65 | 6d 70 20 70 6f 69 6e 74 |nt to te|mp point|
|00000860| 0d 09 5f 47 65 74 4d 6f | 75 73 65 09 09 09 09 3b |.._GetMo|use....;|
|00000870| 20 47 65 74 20 63 6f 6f | 72 64 69 6e 61 74 65 73 | Get coo|rdinates|
|00000880| 0d 09 4d 4f 56 45 2e 4c | 09 09 74 50 6f 69 6e 74 |..MOVE.L|..tPoint|
|00000890| 28 41 35 29 2c 44 30 09 | 09 3b 20 69 6e 74 6f 20 |(A5),D0.|.; into |
|000008a0| 44 30 0d 09 43 4d 50 2e | 4c 09 09 28 41 34 29 2c |D0..CMP.|L..(A4),|
|000008b0| 44 30 09 09 09 3b 20 48 | 61 73 20 70 6f 69 6e 74 |D0...; H|as point|
|000008c0| 20 63 68 61 6e 67 65 64 | 3f 0d 09 42 45 51 2e 53 | changed|?..BEQ.S|
|000008d0| 09 09 40 32 09 09 09 3b | 20 4e 6f 2c 20 73 6b 69 |..@2...;| No, ski|
|000008e0| 70 2c 20 65 6c 73 65 20 | 70 6c 6f 74 0d 09 4d 4f |p, else |plot..MO|
|000008f0| 56 45 2e 4c 09 09 44 30 | 2c 28 41 34 29 09 09 09 |VE.L..D0|,(A4)...|
|00000900| 3b 20 53 74 6f 72 65 20 | 6e 65 77 20 6d 6f 75 73 |; Store |new mous|
|00000910| 65 20 70 6f 69 6e 74 0d | 09 3b 50 72 6f 63 65 64 |e point.|.;Proced|
|00000920| 75 72 65 20 4c 69 6e 65 | 54 6f 28 68 2c 76 3a 20 |ure Line|To(h,v: |
|00000930| 49 4e 54 45 47 45 52 29 | 0d 09 4d 4f 56 45 09 09 |INTEGER)|..MOVE..|
|00000940| 68 28 41 34 29 2c 2d 28 | 53 50 29 09 09 3b 20 48 |h(A4),-(|SP)..; H|
|00000950| 20 63 6f 6f 72 64 69 6e | 61 74 65 0d 09 4d 4f 56 | coordin|ate..MOV|
|00000960| 45 09 09 76 28 41 34 29 | 2c 2d 28 53 50 29 09 09 |E..v(A4)|,-(SP)..|
|00000970| 3b 20 56 20 63 6f 6f 72 | 64 69 6e 61 74 65 0d 09 |; V coor|dinate..|
|00000980| 5f 4c 69 6e 65 54 6f 09 | 09 09 09 09 3b 20 44 72 |_LineTo.|....; Dr|
|00000990| 61 77 20 61 20 6c 69 6e | 65 0d 09 3b 46 75 6e 63 |aw a lin|e..;Func|
|000009a0| 74 69 6f 6e 20 53 74 69 | 6c 6c 44 6f 77 6e 3a 20 |tion Sti|llDown: |
|000009b0| 42 4f 4f 4c 45 41 4e 0d | 40 32 09 53 55 42 51 09 |BOOLEAN.|@2.SUBQ.|
|000009c0| 09 23 32 2c 53 50 09 09 | 09 3b 20 53 70 61 63 65 |.#2,SP..|.; Space|
|000009d0| 20 66 6f 72 20 72 65 73 | 75 6c 74 0d 09 5f 53 74 | for res|ult.._St|
|000009e0| 69 6c 6c 44 6f 77 6e 09 | 09 09 09 3b 20 4d 6f 75 |illDown.|...; Mou|
|000009f0| 73 65 20 62 75 74 74 6f | 6e 20 73 74 69 6c 6c 20 |se butto|n still |
|00000a00| 64 6f 77 6e 3f 0d 09 54 | 53 54 2e 42 09 09 28 53 |down?..T|ST.B..(S|
|00000a10| 50 29 2b 09 09 09 3b 20 | 43 68 65 63 6b 20 72 65 |P)+...; |Check re|
|00000a20| 73 75 6c 74 0d 09 42 4e | 45 2e 53 09 09 40 31 09 |sult..BN|E.S..@1.|
|00000a30| 09 09 3b 20 4c 6f 6f 70 | 20 75 6e 74 69 6c 20 62 |..; Loop| until b|
|00000a40| 75 74 74 6f 6e 20 75 70 | 0d 09 42 52 41 09 09 43 |utton up|..BRA..C|
|00000a50| 52 65 74 75 72 6e 09 09 | 09 3b 20 74 68 65 6e 20 |Return..|.; then |
|00000a60| 72 65 74 75 72 6e 0d 0d | 3b 2d 2d 2d 2d 2d 2d 2d |return..|;-------|
|00000a70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a80| 2d 2d 2d 2d 2d 2d 2d 20 | 42 6f 78 65 73 20 2d 2d |------- |Boxes --|
|00000a90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000aa0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ab0| 2d 2d 2d 09 0d 42 6f 78 | 65 73 09 0d 4f 76 61 6c |---..Box|es..Oval|
|00000ac0| 73 09 09 09 09 09 09 3b | 20 28 4f 76 61 6c 73 20 |s......;| (Ovals |
|00000ad0| 64 72 61 77 6e 20 68 65 | 72 65 20 74 6f 6f 29 0d |drawn he|re too).|
|00000ae0| 09 4d 4f 56 45 09 09 23 | 70 61 74 58 6f 72 2c 2d |.MOVE..#|patXor,-|
|00000af0| 28 53 50 29 09 09 3b 20 | 53 65 74 20 70 65 6e 20 |(SP)..; |Set pen |
|00000b00| 6d 6f 64 65 20 74 6f 20 | 58 4f 52 0d 09 5f 50 65 |mode to |XOR.._Pe|
|00000b10| 6e 4d 6f 64 65 0d 0d 09 | 4c 45 41 09 09 6f 6c 64 |nMode...|LEA..old|
|00000b20| 52 65 63 74 28 41 35 29 | 2c 41 32 09 09 3b 20 50 |Rect(A5)|,A2..; P|
|00000b30| 6f 69 6e 74 20 74 6f 20 | 6f 6c 64 52 65 63 74 0d |oint to |oldRect.|
|00000b40| 09 4d 4f 56 45 2e 4c 09 | 09 28 41 34 29 2c 74 6f |.MOVE.L.|.(A4),to|
|00000b50| 70 4c 65 66 74 28 41 32 | 29 09 3b 20 46 69 6c 6c |pLeft(A2|).; Fill|
|00000b60| 20 69 6e 20 77 69 74 68 | 20 6d 6f 75 73 65 20 70 | in with| mouse p|
|00000b70| 74 0d 09 4d 4f 56 45 2e | 4c 09 09 28 41 34 29 2c |t..MOVE.|L..(A4),|
|00000b80| 62 6f 74 52 69 67 68 74 | 28 41 32 29 0d 09 4c 45 |botRight|(A2)..LE|
|00000b90| 41 09 09 6e 65 77 52 65 | 63 74 28 41 35 29 2c 41 |A..newRe|ct(A5),A|
|00000ba0| 33 09 09 3b 20 53 61 6d | 65 20 66 6f 72 20 6e 65 |3..; Sam|e for ne|
|00000bb0| 77 52 65 63 74 0d 09 4d | 4f 56 45 2e 4c 09 09 28 |wRect..M|OVE.L..(|
|00000bc0| 41 34 29 2c 74 6f 70 4c | 65 66 74 28 41 33 29 0d |A4),topL|eft(A3).|
|00000bd0| 09 4d 4f 56 45 2e 4c 09 | 09 28 41 34 29 2c 62 6f |.MOVE.L.|.(A4),bo|
|00000be0| 74 52 69 67 68 74 28 41 | 33 29 0d 0d 44 72 61 77 |tRight(A|3)..Draw|
|00000bf0| 4c 6f 6f 70 0d 09 3b 46 | 75 6e 63 74 69 6f 6e 20 |Loop..;F|unction |
|00000c00| 53 74 69 6c 6c 44 6f 77 | 6e 3a 20 42 4f 4f 4c 45 |StillDow|n: BOOLE|
|00000c10| 41 4e 0d 09 53 55 42 51 | 09 09 23 32 2c 53 50 09 |AN..SUBQ|..#2,SP.|
|00000c20| 09 09 3b 20 53 70 61 63 | 65 20 66 6f 72 20 72 65 |..; Spac|e for re|
|00000c30| 73 75 6c 74 0d 09 5f 53 | 74 69 6c 6c 44 6f 77 6e |sult.._S|tillDown|
|00000c40| 09 09 09 09 3b 20 4d 6f | 75 73 65 20 62 75 74 74 |....; Mo|use butt|
|00000c50| 6f 6e 20 73 74 69 6c 6c | 20 64 6f 77 6e 3f 0d 09 |on still| down?..|
|00000c60| 54 53 54 2e 42 09 09 28 | 53 50 29 2b 09 09 09 3b |TST.B..(|SP)+...;|
|00000c70| 20 43 68 65 63 6b 20 72 | 65 73 75 6c 74 0d 09 42 | Check r|esult..B|
|00000c80| 4e 45 09 09 40 32 09 09 | 09 3b 20 53 6b 69 70 20 |NE..@2..|.; Skip |
|00000c90| 69 66 20 62 75 74 74 6f | 6e 20 64 6f 77 6e 0d 09 |if butto|n down..|
|00000ca0| 4d 4f 56 45 09 09 23 70 | 61 74 43 6f 70 79 2c 2d |MOVE..#p|atCopy,-|
|00000cb0| 28 53 50 29 09 09 3b 20 | 45 6c 73 65 20 73 65 74 |(SP)..; |Else set|
|00000cc0| 20 70 65 6e 20 6d 6f 64 | 65 20 74 6f 20 70 61 74 | pen mod|e to pat|
|00000cd0| 43 6f 70 79 0d 09 3b 20 | 50 52 4f 43 45 44 55 52 |Copy..; |PROCEDUR|
|00000ce0| 45 20 50 65 6e 4d 6f 64 | 65 28 20 6d 6f 64 65 3a |E PenMod|e( mode:|
|00000cf0| 20 49 4e 54 45 47 45 52 | 29 3b 0d 09 5f 50 65 6e | INTEGER|);.._Pen|
|00000d00| 4d 6f 64 65 0d 09 4a 53 | 52 09 09 44 72 61 77 49 |Mode..JS|R..DrawI|
|00000d10| 74 09 09 09 3b 20 44 72 | 61 77 20 74 52 65 63 74 |t...; Dr|aw tRect|
|00000d20| 20 69 6e 20 63 6f 70 79 | 20 6d 6f 64 65 09 0d 09 | in copy| mode...|
|00000d30| 42 52 41 09 09 43 52 65 | 74 75 72 6e 09 09 09 3b |BRA..CRe|turn...;|
|00000d40| 20 61 6e 64 20 72 65 74 | 75 72 6e 0d 09 0d 40 32 | and ret|urn...@2|
|00000d50| 09 0d 3b 0d 3b 20 41 32 | 20 70 6f 69 6e 74 73 20 |..;.; A2| points |
|00000d60| 74 6f 20 6f 6c 64 52 65 | 63 74 0d 3b 20 41 33 20 |to oldRe|ct.; A3 |
|00000d70| 70 6f 69 6e 74 73 20 74 | 6f 20 6e 65 77 52 65 63 |points t|o newRec|
|00000d80| 74 0d 3b 20 41 34 20 70 | 6f 69 6e 74 73 20 74 6f |t.; A4 p|oints to|
|00000d90| 20 6d 6f 75 73 65 20 70 | 6f 69 6e 74 0d 3b 0d 09 | mouse p|oint.;..|
|00000da0| 3b 50 52 4f 43 45 44 55 | 52 45 20 47 65 74 4d 6f |;PROCEDU|RE GetMo|
|00000db0| 75 73 65 20 28 56 41 52 | 20 6d 6f 75 73 65 4c 6f |use (VAR| mouseLo|
|00000dc0| 63 3a 20 50 6f 69 6e 74 | 29 3b 0d 09 4d 4f 56 45 |c: Point|);..MOVE|
|00000dd0| 2e 4c 09 09 41 34 2c 2d | 28 53 50 29 09 09 3b 20 |.L..A4,-|(SP)..; |
|00000de0| 50 6f 69 6e 74 20 74 6f | 20 6d 6f 75 73 65 20 70 |Point to| mouse p|
|00000df0| 6f 69 6e 74 0d 09 5f 47 | 65 74 4d 6f 75 73 65 09 |oint.._G|etMouse.|
|00000e00| 09 09 09 3b 20 47 65 74 | 20 63 6f 6f 72 64 69 6e |...; Get| coordin|
|00000e10| 61 74 65 73 0d 09 4d 4f | 56 45 2e 4c 09 09 28 41 |ates..MO|VE.L..(A|
|00000e20| 34 29 2c 62 6f 74 52 69 | 67 68 74 28 41 33 29 09 |4),botRi|ght(A3).|
|00000e30| 3b 20 46 69 6c 6c 20 69 | 6e 20 6e 65 77 52 65 63 |; Fill i|n newRec|
|00000e40| 74 0d 09 3b 20 46 55 4e | 43 54 49 4f 4e 20 45 71 |t..; FUN|CTION Eq|
|00000e50| 75 61 6c 52 65 63 74 20 | 28 72 65 63 74 41 2c 20 |ualRect |(rectA, |
|00000e60| 72 65 63 74 42 3a 20 52 | 65 63 74 29 3a 20 42 4f |rectB: R|ect): BO|
|00000e70| 4f 4c 45 41 4e 3b 0d 09 | 53 55 42 51 09 09 23 32 |OLEAN;..|SUBQ..#2|
|00000e80| 2c 53 50 09 09 09 3b 20 | 53 70 61 63 65 20 66 6f |,SP...; |Space fo|
|00000e90| 72 20 72 65 73 75 6c 74 | 0d 09 4d 4f 56 45 2e 4c |r result|..MOVE.L|
|00000ea0| 09 09 41 32 2c 2d 28 53 | 50 29 0d 09 4d 4f 56 45 |..A2,-(S|P)..MOVE|
|00000eb0| 2e 4c 09 09 41 33 2c 2d | 28 53 50 29 0d 09 5f 45 |.L..A3,-|(SP).._E|
|00000ec0| 71 75 61 6c 52 65 63 74 | 09 09 09 09 3b 20 6f 6c |qualRect|....; ol|
|00000ed0| 64 52 65 63 74 20 3d 20 | 6e 65 77 52 65 63 74 20 |dRect = |newRect |
|00000ee0| 3f 0d 09 54 53 54 2e 42 | 09 09 28 53 50 29 2b 09 |?..TST.B|..(SP)+.|
|00000ef0| 09 09 3b 20 43 68 65 63 | 6b 20 72 65 73 75 6c 74 |..; Chec|k result|
|00000f00| 0d 09 42 4e 45 09 09 44 | 72 61 77 4c 6f 6f 70 09 |..BNE..D|rawLoop.|
|00000f10| 09 3b 20 59 65 73 2c 20 | 6c 6f 6f 70 0d 0d 09 4d |.; Yes, |loop...M|
|00000f20| 4f 56 45 2e 4c 09 09 74 | 6f 70 4c 65 66 74 28 41 |OVE.L..t|opLeft(A|
|00000f30| 32 29 2c 74 52 65 63 74 | 2b 74 6f 70 4c 65 66 74 |2),tRect|+topLeft|
|00000f40| 28 41 35 29 20 3b 20 74 | 52 65 63 74 20 3c 2d 2d |(A5) ; t|Rect <--|
|00000f50| 20 6f 6c 64 52 65 63 74 | 0d 09 4d 4f 56 45 2e 4c | oldRect|..MOVE.L|
|00000f60| 09 09 62 6f 74 52 69 67 | 68 74 28 41 32 29 2c 74 |..botRig|ht(A2),t|
|00000f70| 52 65 63 74 2b 62 6f 74 | 52 69 67 68 74 28 41 35 |Rect+bot|Right(A5|
|00000f80| 29 0d 09 4a 53 52 09 09 | 44 72 61 77 49 74 09 09 |)..JSR..|DrawIt..|
|00000f90| 09 3b 20 58 4f 52 20 6f | 6c 64 20 72 65 63 74 2c |.; XOR o|ld rect,|
|00000fa0| 20 6f 76 61 6c 2c 20 65 | 74 63 2e 0d 09 4d 4f 56 | oval, e|tc...MOV|
|00000fb0| 45 2e 4c 09 09 74 6f 70 | 4c 65 66 74 28 41 33 29 |E.L..top|Left(A3)|
|00000fc0| 2c 74 52 65 63 74 2b 74 | 6f 70 4c 65 66 74 28 41 |,tRect+t|opLeft(A|
|00000fd0| 35 29 20 3b 20 74 52 65 | 63 74 20 3c 2d 2d 20 6e |5) ; tRe|ct <-- n|
|00000fe0| 65 77 52 65 63 74 0d 09 | 4d 4f 56 45 2e 4c 09 09 |ewRect..|MOVE.L..|
|00000ff0| 62 6f 74 52 69 67 68 74 | 28 41 33 29 2c 74 52 65 |botRight|(A3),tRe|
|00001000| 63 74 2b 62 6f 74 52 69 | 67 68 74 28 41 35 29 0d |ct+botRi|ght(A5).|
|00001010| 09 4a 53 52 09 09 44 72 | 61 77 49 74 09 09 09 3b |.JSR..Dr|awIt...;|
|00001020| 20 58 4f 52 20 6e 65 77 | 20 72 65 63 74 2c 20 6f | XOR new| rect, o|
|00001030| 76 61 6c 2c 20 65 74 63 | 2e 0d 09 0d 09 4d 4f 56 |val, etc|.....MOV|
|00001040| 45 2e 4c 09 09 74 6f 70 | 4c 65 66 74 28 41 33 29 |E.L..top|Left(A3)|
|00001050| 2c 74 6f 70 4c 65 66 74 | 28 41 32 29 09 3b 20 43 |,topLeft|(A2).; C|
|00001060| 6f 70 79 20 6e 65 77 52 | 65 63 74 20 74 6f 20 6f |opy newR|ect to o|
|00001070| 6c 64 52 65 63 74 0d 09 | 4d 4f 56 45 2e 4c 09 09 |ldRect..|MOVE.L..|
|00001080| 62 6f 74 52 69 67 68 74 | 28 41 33 29 2c 62 6f 74 |botRight|(A3),bot|
|00001090| 52 69 67 68 74 28 41 32 | 29 0d 09 42 52 41 09 09 |Right(A2|)..BRA..|
|000010a0| 44 72 61 77 4c 6f 6f 70 | 09 09 3b 20 61 6e 64 20 |DrawLoop|..; and |
|000010b0| 6c 6f 6f 70 0d 3b 0d 3b | 20 4c 6f 63 61 6c 20 72 |loop.;.;| Local r|
|000010c0| 6f 75 74 69 6e 65 20 74 | 6f 20 46 72 61 6d 52 65 |outine t|o FramRe|
|000010d0| 63 74 28 74 52 65 63 74 | 29 20 6f 72 20 46 72 61 |ct(tRect|) or Fra|
|000010e0| 6d 65 4f 76 61 6c 28 74 | 52 65 63 74 29 0d 3b 20 |meOval(t|Rect).; |
|000010f0| 64 65 70 65 6e 64 69 6e | 67 20 6f 6e 20 76 61 6c |dependin|g on val|
|00001100| 75 65 20 69 6e 20 44 34 | 0d 3b 0d 44 72 61 77 49 |ue in D4|.;.DrawI|
|00001110| 74 09 0d 09 3b 20 74 52 | 65 63 74 20 68 61 73 20 |t...; tR|ect has |
|00001120| 72 65 63 74 20 74 6f 20 | 64 72 61 77 0d 09 4c 45 |rect to |draw..LE|
|00001130| 41 09 09 74 52 65 63 74 | 28 41 35 29 2c 41 30 09 |A..tRect|(A5),A0.|
|00001140| 09 3b 20 50 6f 69 6e 74 | 20 74 6f 20 74 52 65 63 |.; Point| to tRec|
|00001150| 74 0d 09 4d 4f 56 45 09 | 09 62 6f 74 74 6f 6d 28 |t..MOVE.|.bottom(|
|00001160| 41 30 29 2c 44 30 09 09 | 3b 20 46 69 72 73 74 2c |A0),D0..|; First,|
|00001170| 20 73 6f 72 74 20 76 20 | 70 6f 69 6e 74 73 20 69 | sort v |points i|
|00001180| 6e 20 72 65 63 74 0d 09 | 43 4d 50 09 09 74 6f 70 |n rect..|CMP..top|
|00001190| 28 41 30 29 2c 44 30 0d | 09 42 47 45 09 09 40 31 |(A0),D0.|.BGE..@1|
|000011a0| 09 09 09 3b 20 53 6b 69 | 70 20 69 66 20 69 6e 20 |...; Ski|p if in |
|000011b0| 6f 72 64 65 72 0d 09 4d | 4f 56 45 09 09 74 6f 70 |order..M|OVE..top|
|000011c0| 28 41 30 29 2c 62 6f 74 | 74 6f 6d 28 41 30 29 09 |(A0),bot|tom(A0).|
|000011d0| 3b 20 45 6c 73 65 20 73 | 77 61 70 20 70 6f 69 6e |; Else s|wap poin|
|000011e0| 74 73 0d 09 4d 4f 56 45 | 09 09 44 30 2c 74 6f 70 |ts..MOVE|..D0,top|
|000011f0| 28 41 30 29 0d 0d 40 31 | 09 4d 4f 56 45 09 09 72 |(A0)..@1|.MOVE..r|
|00001200| 69 67 68 74 28 41 30 29 | 2c 44 30 09 09 3b 20 4e |ight(A0)|,D0..; N|
|00001210| 6f 77 20 73 6f 72 74 20 | 68 20 70 6f 69 6e 74 73 |ow sort |h points|
|00001220| 0d 09 43 4d 50 09 09 6c | 65 66 74 28 41 30 29 2c |..CMP..l|eft(A0),|
|00001230| 44 30 0d 09 42 47 45 09 | 09 40 32 09 09 09 3b 20 |D0..BGE.|.@2...; |
|00001240| 53 6b 69 70 20 69 66 20 | 69 6e 20 6f 72 64 65 72 |Skip if |in order|
|00001250| 0d 09 4d 4f 56 45 09 09 | 6c 65 66 74 28 41 30 29 |..MOVE..|left(A0)|
|00001260| 2c 72 69 67 68 74 28 41 | 30 29 09 3b 20 45 6c 73 |,right(A|0).; Els|
|00001270| 65 20 73 77 61 70 20 70 | 6f 69 6e 74 73 0d 09 4d |e swap p|oints..M|
|00001280| 4f 56 45 09 09 44 30 2c | 6c 65 66 74 28 41 30 29 |OVE..D0,|left(A0)|
|00001290| 0d 0d 0d 40 32 09 4d 4f | 56 45 2e 4c 09 09 41 30 |...@2.MO|VE.L..A0|
|000012a0| 2c 2d 28 53 50 29 09 09 | 3b 20 50 75 73 68 20 70 |,-(SP)..|; Push p|
|000012b0| 6f 69 6e 74 65 72 20 74 | 6f 20 74 52 65 63 74 0d |ointer t|o tRect.|
|000012c0| 09 43 4d 50 09 09 23 32 | 2c 44 34 09 09 09 3b 20 |.CMP..#2|,D4...; |
|000012d0| 42 6f 78 65 73 3f 0d 09 | 42 4e 45 09 09 40 33 09 |Boxes?..|BNE..@3.|
|000012e0| 09 09 3b 20 4e 6f 2c 20 | 73 6b 69 70 0d 09 4a 53 |..; No, |skip..JS|
|000012f0| 52 09 09 53 79 6e 63 09 | 09 09 3b 20 53 79 6e 63 |R..Sync.|..; Sync|
|00001300| 20 77 69 74 68 20 76 69 | 64 65 6f 0d 09 3b 20 50 | with vi|deo..; P|
|00001310| 52 4f 43 45 44 55 52 45 | 20 46 72 61 6d 65 52 65 |ROCEDURE| FrameRe|
|00001320| 63 74 28 20 72 3a 20 52 | 65 63 74 29 3b 09 3b 20 |ct( r: R|ect);.; |
|00001330| 45 6c 73 65 20 46 72 61 | 6d 65 20 52 65 63 74 0d |Else Fra|me Rect.|
|00001340| 09 5f 46 72 61 6d 65 52 | 65 63 74 0d 40 33 09 43 |._FrameR|ect.@3.C|
|00001350| 4d 50 09 09 23 33 2c 44 | 34 09 09 09 3b 20 4f 76 |MP..#3,D|4...; Ov|
|00001360| 61 6c 73 3f 0d 09 42 4e | 45 09 09 40 39 09 09 09 |als?..BN|E..@9...|
|00001370| 3b 20 4e 6f 2c 20 73 6b | 69 70 0d 09 4a 53 52 09 |; No, sk|ip..JSR.|
|00001380| 09 53 79 6e 63 09 09 09 | 3b 20 53 79 6e 63 20 77 |.Sync...|; Sync w|
|00001390| 69 74 68 20 76 69 64 65 | 6f 0d 09 3b 20 50 52 4f |ith vide|o..; PRO|
|000013a0| 43 45 44 55 52 45 20 46 | 72 61 6d 65 4f 76 61 6c |CEDURE F|rameOval|
|000013b0| 28 20 72 3a 20 52 65 63 | 74 29 3b 09 3b 20 45 6c |( r: Rec|t);.; El|
|000013c0| 73 65 20 46 72 61 6d 65 | 20 4f 76 61 6c 0d 09 5f |se Frame| Oval.._|
|000013d0| 46 72 61 6d 65 4f 76 61 | 6c 0d 0d 40 39 09 52 54 |FrameOva|l..@9.RT|
|000013e0| 53 09 09 09 09 09 3b 20 | 61 6e 64 20 72 65 74 75 |S.....; |and retu|
|000013f0| 72 6e 0d 0d 3b 20 4c 6f | 63 61 6c 20 72 6f 75 74 |rn..; Lo|cal rout|
|00001400| 69 6e 65 20 74 6f 20 73 | 79 6e 63 68 72 6f 6e 69 |ine to s|ynchroni|
|00001410| 7a 65 20 77 69 74 68 20 | 76 69 64 65 6f 0d 3b 0d |ze with |video.;.|
|00001420| 53 79 6e 63 09 3b 20 46 | 55 4e 43 54 49 4f 4e 20 |Sync.; F|UNCTION |
|00001430| 54 69 63 6b 43 6f 75 6e | 74 3a 20 4c 6f 6e 67 49 |TickCoun|t: LongI|
|00001440| 6e 74 3b 0d 09 53 55 42 | 51 09 09 23 34 2c 53 50 |nt;..SUB|Q..#4,SP|
|00001450| 09 09 09 3b 20 52 6f 6f | 6d 20 66 6f 72 20 72 65 |...; Roo|m for re|
|00001460| 73 75 6c 74 0d 09 5f 54 | 69 63 6b 43 6f 75 6e 74 |sult.._T|ickCount|
|00001470| 0d 40 31 09 53 55 42 51 | 09 09 23 34 2c 53 50 09 |.@1.SUBQ|..#4,SP.|
|00001480| 09 09 3b 20 47 65 74 20 | 69 74 20 61 67 61 69 6e |..; Get |it again|
|00001490| 0d 09 5f 54 69 63 6b 43 | 6f 75 6e 74 0d 09 4d 4f |.._TickC|ount..MO|
|000014a0| 56 45 2e 4c 09 09 28 53 | 50 29 2b 2c 44 30 09 09 |VE.L..(S|P)+,D0..|
|000014b0| 3b 20 47 65 74 20 74 69 | 63 6b 43 6f 75 6e 74 20 |; Get ti|ckCount |
|000014c0| 69 6e 20 44 30 0d 09 43 | 4d 50 2e 4c 09 09 28 53 |in D0..C|MP.L..(S|
|000014d0| 50 29 2c 44 30 09 09 09 | 3b 20 48 61 73 20 69 74 |P),D0...|; Has it|
|000014e0| 20 63 68 61 6e 67 65 64 | 3f 0d 09 42 45 51 09 09 | changed|?..BEQ..|
|000014f0| 40 31 09 09 09 3b 20 4e | 6f 2c 20 6c 6f 6f 70 0d |@1...; N|o, loop.|
|00001500| 09 41 44 44 51 09 09 23 | 34 2c 53 50 09 09 09 3b |.ADDQ..#|4,SP...;|
|00001510| 20 65 6c 73 65 20 70 6f | 70 20 6f 6c 64 20 74 69 | else po|p old ti|
|00001520| 63 6b 43 6f 75 6e 74 0d | 09 52 54 53 09 09 09 09 |ckCount.|.RTS....|
|00001530| 09 3b 20 61 6e 64 20 72 | 65 74 75 72 6e 0d 3b 20 |.; and r|eturn.; |
|00001540| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001550| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001560| 20 4c 6f 63 61 74 69 6f | 6e 20 2d 2d 2d 2d 2d 2d | Locatio|n ------|
|00001570| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001580| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 09 0d 3b 20 57 72 69 |--------|-..; Wri|
|00001590| 74 65 20 6d 6f 75 73 65 | 20 63 6f 6f 72 64 69 6e |te mouse| coordin|
|000015a0| 61 74 65 73 20 6f 6e 20 | 73 63 72 65 65 6e 2e 0d |ates on |screen..|
|000015b0| 3b 20 28 43 61 6c 6c 73 | 20 57 72 69 74 65 4e 75 |; (Calls| WriteNu|
|000015c0| 6d 20 69 6e 20 53 61 6d | 70 4d 65 6e 75 2e 41 73 |m in Sam|pMenu.As|
|000015d0| 6d 29 0d 3b 0d 4c 6f 63 | 61 74 69 6f 6e 0d 09 3b |m).;.Loc|ation..;|
|000015e0| 50 52 4f 43 45 44 55 52 | 45 20 47 65 74 4d 6f 75 |PROCEDUR|E GetMou|
|000015f0| 73 65 20 28 56 41 52 20 | 6d 6f 75 73 65 4c 6f 63 |se (VAR |mouseLoc|
|00001600| 3a 20 50 6f 69 6e 74 29 | 3b 0d 09 4d 4f 56 45 2e |: Point)|;..MOVE.|
|00001610| 4c 09 09 41 34 2c 2d 28 | 53 50 29 09 09 3b 20 50 |L..A4,-(|SP)..; P|
|00001620| 6f 69 6e 74 20 74 6f 20 | 6d 6f 75 73 65 20 70 6f |oint to |mouse po|
|00001630| 69 6e 74 0d 09 5f 47 65 | 74 4d 6f 75 73 65 09 09 |int.._Ge|tMouse..|
|00001640| 09 09 3b 20 47 65 74 20 | 63 6f 6f 72 64 69 6e 61 |..; Get |coordina|
|00001650| 74 65 73 0d 09 4a 53 52 | 09 09 53 79 6e 63 09 09 |tes..JSR|..Sync..|
|00001660| 09 3b 20 53 79 6e 63 20 | 77 69 74 68 20 76 69 64 |.; Sync |with vid|
|00001670| 65 6f 0d 09 4d 4f 56 45 | 09 09 68 28 41 34 29 2c |eo..MOVE|..h(A4),|
|00001680| 44 31 09 09 3b 20 68 20 | 6c 6f 63 61 74 69 6f 6e |D1..; h |location|
|00001690| 0d 09 4d 4f 56 45 09 09 | 23 31 33 2c 44 30 09 09 |..MOVE..|#13,D0..|
|000016a0| 09 3b 20 4c 69 6e 65 20 | 6e 75 6d 62 65 72 0d 09 |.; Line |number..|
|000016b0| 4c 45 41 09 09 27 68 20 | 6c 6f 63 61 74 69 6f 6e |LEA..'h |location|
|000016c0| 3a 20 27 2c 41 30 09 3b | 20 4c 61 62 65 6c 20 73 |: ',A0.;| Label s|
|000016d0| 74 72 69 6e 67 0d 09 4a | 53 52 09 09 57 72 69 74 |tring..J|SR..Writ|
|000016e0| 65 4e 75 6d 09 09 3b 20 | 57 72 69 74 65 20 74 6f |eNum..; |Write to|
|000016f0| 20 73 63 72 65 65 6e 0d | 0d 09 4a 53 52 09 09 53 | screen.|..JSR..S|
|00001700| 79 6e 63 09 09 09 3b 20 | 53 79 6e 63 20 77 69 74 |ync...; |Sync wit|
|00001710| 68 20 76 69 64 65 6f 0d | 09 4d 4f 56 45 09 09 76 |h video.|.MOVE..v|
|00001720| 28 41 34 29 2c 44 31 09 | 09 3b 20 68 20 6c 6f 63 |(A4),D1.|.; h loc|
|00001730| 61 74 69 6f 6e 0d 09 4d | 4f 56 45 09 09 23 31 34 |ation..M|OVE..#14|
|00001740| 2c 44 30 09 09 09 3b 20 | 4c 69 6e 65 20 6e 75 6d |,D0...; |Line num|
|00001750| 62 65 72 0d 09 4c 45 41 | 09 09 27 76 20 6c 6f 63 |ber..LEA|..'v loc|
|00001760| 61 74 69 6f 6e 3a 20 27 | 2c 41 30 09 3b 20 4c 61 |ation: '|,A0.; La|
|00001770| 62 65 6c 20 73 74 72 69 | 6e 67 0d 09 4a 53 52 09 |bel stri|ng..JSR.|
|00001780| 09 57 72 69 74 65 4e 75 | 6d 09 09 3b 20 57 72 69 |.WriteNu|m..; Wri|
|00001790| 74 65 20 74 6f 20 73 63 | 72 65 65 6e 0d 0d 09 3b |te to sc|reen...;|
|000017a0| 46 75 6e 63 74 69 6f 6e | 20 53 74 69 6c 6c 44 6f |Function| StillDo|
|000017b0| 77 6e 3a 20 42 4f 4f 4c | 45 41 4e 0d 09 53 55 42 |wn: BOOL|EAN..SUB|
|000017c0| 51 09 09 23 32 2c 53 50 | 09 09 09 3b 20 53 70 61 |Q..#2,SP|...; Spa|
|000017d0| 63 65 20 66 6f 72 20 72 | 65 73 75 6c 74 0d 09 5f |ce for r|esult.._|
|000017e0| 53 74 69 6c 6c 44 6f 77 | 6e 09 09 09 09 3b 20 4d |StillDow|n....; M|
|000017f0| 6f 75 73 65 20 62 75 74 | 74 6f 6e 20 73 74 69 6c |ouse but|ton stil|
|00001800| 6c 20 64 6f 77 6e 3f 0d | 09 54 53 54 2e 42 09 09 |l down?.|.TST.B..|
|00001810| 28 53 50 29 2b 09 09 09 | 3b 20 43 68 65 63 6b 20 |(SP)+...|; Check |
|00001820| 72 65 73 75 6c 74 0d 09 | 42 4e 45 09 09 4c 6f 63 |result..|BNE..Loc|
|00001830| 61 74 69 6f 6e 09 09 3b | 20 4c 6f 6f 70 20 69 66 |ation..;| Loop if|
|00001840| 20 62 75 74 74 6f 6e 20 | 64 6f 77 6e 0d 0d 09 42 | button |down...B|
|00001850| 52 41 09 09 43 52 65 74 | 75 72 6e 09 09 09 3b 20 |RA..CRet|urn...; |
|00001860| 65 6c 73 65 20 72 65 74 | 75 72 6e 0d 0d 3b 20 2d |else ret|urn..; -|
|00001870| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001880| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001890| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000018a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000018b0| 2d 2d 2d 2d 2d 2d 2d 2d | 09 0d 0d 43 52 65 74 75 |--------|...CRetu|
|000018c0| 72 6e 09 3b 20 50 52 4f | 43 45 44 55 52 45 20 53 |rn.; PRO|CEDURE S|
|000018d0| 65 74 50 65 6e 53 74 61 | 74 65 28 70 6e 53 74 61 |etPenSta|te(pnSta|
|000018e0| 74 65 3a 20 50 65 6e 53 | 74 61 74 65 29 3b 0d 09 |te: PenS|tate);..|
|000018f0| 50 45 41 09 09 70 6e 53 | 74 61 74 65 28 41 35 29 |PEA..pnS|tate(A5)|
|00001900| 09 09 09 3b 20 52 65 73 | 74 6f 72 65 20 70 65 6e |...; Res|tore pen|
|00001910| 20 73 74 61 74 65 0d 09 | 5f 53 65 74 50 65 6e 53 | state..|_SetPenS|
|00001920| 74 61 74 65 0d 09 4d 4f | 56 45 4d 2e 4c 09 09 28 |tate..MO|VEM.L..(|
|00001930| 53 50 29 2b 2c 44 34 2f | 41 32 2d 41 34 09 09 3b |SP)+,D4/|A2-A4..;|
|00001940| 20 52 65 73 74 6f 72 65 | 20 72 65 67 69 73 74 65 | Restore| registe|
|00001950| 72 0d 09 52 54 53 09 09 | 09 09 09 3b 20 61 6e 64 |r..RTS..|...; and|
|00001960| 20 72 65 74 75 72 6e 0d | 09 0d 3b 20 2d 2d 2d 2d | return.|..; ----|
|00001970| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001980| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 20 47 6c 6f 62 61 |--------|-- Globa|
|00001990| 6c 20 44 61 74 61 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |l Data -|--------|
|000019a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000019b0| 2d 2d 2d 2d 2d 0d 3b 20 | 54 68 69 73 20 64 61 74 |-----.; |This dat|
|000019c0| 61 20 73 70 61 63 65 20 | 69 73 20 61 6c 6c 6f 63 |a space |is alloc|
|000019d0| 61 74 65 64 20 72 65 6c | 61 74 69 76 65 20 74 6f |ated rel|ative to|
|000019e0| 20 41 35 20 28 67 6c 6f | 62 61 6c 73 20 70 6f 69 | A5 (glo|bals poi|
|000019f0| 6e 74 65 72 29 0d 3b 20 | 41 6c 6c 20 67 6c 6f 62 |nter).; |All glob|
|00001a00| 61 6c 20 72 65 61 64 2f | 77 72 69 74 65 20 64 61 |al read/|write da|
|00001a10| 74 61 20 73 68 6f 75 6c | 64 20 62 65 20 73 74 6f |ta shoul|d be sto|
|00001a20| 72 65 64 20 68 65 72 65 | 2e 0d 0d 70 6f 69 6e 74 |red here|...point|
|00001a30| 09 44 53 2e 4c 09 09 31 | 09 09 3b 20 6d 6f 75 73 |.DS.L..1|..; mous|
|00001a40| 65 20 70 6f 69 6e 74 20 | 73 74 6f 72 65 64 20 68 |e point |stored h|
|00001a50| 65 72 65 0d 0d 74 50 6f | 69 6e 74 09 44 53 2e 4c |ere..tPo|int.DS.L|
|00001a60| 09 09 31 09 09 3b 20 54 | 65 6d 70 6f 72 61 72 79 |..1..; T|emporary|
|00001a70| 20 70 6f 69 6e 74 20 73 | 74 6f 72 61 67 65 0d 0d | point s|torage..|
|00001a80| 74 52 65 63 74 09 44 53 | 2e 57 09 09 34 09 09 3b |tRect.DS|.W..4..;|
|00001a90| 20 74 65 6d 70 20 72 65 | 63 74 61 6e 67 6c 65 0d | temp re|ctangle.|
|00001aa0| 0d 6f 6c 64 52 65 63 74 | 09 44 53 2e 57 09 09 34 |.oldRect|.DS.W..4|
|00001ab0| 09 09 3b 20 6f 6c 64 20 | 72 65 63 74 61 6e 67 6c |..; old |rectangl|
|00001ac0| 65 09 09 09 09 0d 0d 6e | 65 77 52 65 63 74 09 44 |e......n|ewRect.D|
|00001ad0| 53 2e 57 09 09 34 09 09 | 3b 20 6e 65 77 20 72 65 |S.W..4..|; new re|
|00001ae0| 63 74 61 6e 67 6c 65 0d | 09 0d 70 6e 53 74 61 74 |ctangle.|..pnStat|
|00001af0| 65 09 44 53 2e 57 09 09 | 39 09 09 3b 20 50 65 6e |e.DS.W..|9..; Pen|
|00001b00| 20 73 74 61 74 65 20 72 | 65 63 6f 72 64 0d 0d 09 | state r|ecord...|
|00001b10| 45 4e 44 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |END.....|........|
|00001b20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b80| 00 00 01 00 00 00 01 16 | 00 00 00 16 00 00 00 46 |........|.......F|
|00001b90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ba0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bb0| 0c 53 61 6d 70 43 6f 6e | 74 2e 41 73 6d 6e 02 00 |.SampCon|t.Asmn..|
|00001bc0| 00 00 54 45 58 54 45 44 | 49 54 00 00 00 00 00 00 |..TEXTED|IT......|
|00001bd0| 00 00 54 45 58 54 45 44 | 49 54 00 00 00 00 00 00 |..TEXTED|IT......|
|00001be0| 51 8b 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |Q.......|........|
|00001bf0| 00 00 98 85 e5 89 00 00 | 1a 93 00 00 01 5c 00 00 |........|.....\..|
|00001c00| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c80| 00 00 00 0a 00 09 06 4d | 6f 6e 61 63 6f 41 00 00 |.......M|onacoA..|
|00001c90| 00 04 00 06 00 08 00 00 | 01 00 00 00 01 16 00 00 |........|........|
|00001ca0| 00 16 00 00 00 46 00 00 | cc 28 02 36 00 00 00 1c |.....F..|.(.6....|
|00001cb0| 00 46 00 01 45 46 4e 54 | 00 00 00 12 45 54 41 42 |.F..EFNT|....ETAB|
|00001cc0| 00 00 00 1e 03 eb ff ff | 00 00 00 00 00 01 78 e0 |........|......x.|
|00001cd0| 03 ec ff ff 00 00 00 0e | 00 01 79 04 00 00 00 00 |........|..y.....|
|00001ce0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+