home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1987-04-21 | 13.3 KB | [TEXT/KAHL] |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
You can browse this item here: SimpleDemo.c
Confidence | Program | Detection | Match Type | Support
|
---|
66%
| dexvert
| Compact Compressed (Unix) (archive/compact)
| ext
| Supported |
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, inited, Tue Apr 21 21:58:34 1987, modified Tue Apr 21 21:58:34 1987, creator Think C, type ASCII, 12956 bytes "SimpleDemo.c" , at 0x331c 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 |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [KAHL] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0c 53 69 6d 70 6c 65 | 44 65 6d 6f 2e 63 00 00 |..Simple|Demo.c..|
|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 4b 41 48 | 4c 01 00 00 00 00 00 00 |.TEXTKAH|L.......|
|00000050| 00 00 00 00 00 32 9c 00 | 00 01 5c 9c b1 d4 4a 9c |.....2..|..\...J.|
|00000060| b1 d4 4a 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |..J.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 b0 95 00 00 |........|........|
|00000080| 0d 2f 2a 0d 09 54 69 74 | 6c 65 09 3a 20 53 69 6d |./*..Tit|le.: Sim|
|00000090| 70 6c 65 44 65 6d 6f 2e | 63 0d 09 41 75 74 68 6f |pleDemo.|c..Autho|
|000000a0| 72 09 3a 20 45 72 69 6b | 20 4b 69 6c 6b 0d 09 44 |r.: Erik| Kilk..D|
|000000b0| 61 74 65 09 3a 20 4a 75 | 6e 65 20 39 2c 20 31 39 |ate.: Ju|ne 9, 19|
|000000c0| 38 35 0d 09 52 65 76 69 | 73 65 64 09 3a 20 4a 75 |85..Revi|sed.: Ju|
|000000d0| 6c 79 20 31 37 2c 20 31 | 39 38 35 2c 20 4e 6f 76 |ly 17, 1|985, Nov|
|000000e0| 65 6d 62 65 72 20 31 39 | 38 36 0d 09 0d 09 53 79 |ember 19|86....Sy|
|000000f0| 6e 6f 70 73 69 73 3a 20 | 41 20 64 65 6d 6f 6e 73 |nopsis: |A demons|
|00000100| 74 72 61 74 69 6f 6e 20 | 6f 66 20 74 68 65 20 75 |tration |of the u|
|00000110| 73 65 20 6f 66 20 53 69 | 6d 70 6c 65 54 6f 6f 6c |se of Si|mpleTool|
|00000120| 73 20 77 69 74 68 20 0d | 09 09 6f 74 68 65 72 20 |s with .|..other |
|00000130| 74 6f 6f 6c 62 6f 78 20 | 63 61 6c 6c 73 2e 20 20 |toolbox |calls. |
|00000140| 54 68 69 73 20 64 65 6d | 6f 6e 73 74 72 61 74 65 |This dem|onstrate|
|00000150| 73 20 61 20 76 65 72 79 | 20 0d 09 09 61 64 76 61 |s a very| ...adva|
|00000160| 6e 63 65 64 20 75 73 65 | 20 6f 66 20 53 69 6d 70 |nced use| of Simp|
|00000170| 6c 65 54 6f 6f 6c 73 2e | 20 20 49 27 76 65 20 61 |leTools.| I've a|
|00000180| 6c 77 61 79 73 20 64 69 | 73 6c 69 6b 65 64 0d 09 |lways di|sliked..|
|00000190| 09 62 65 69 6e 67 20 67 | 69 76 65 6e 20 73 69 6d |.being g|iven sim|
|000001a0| 70 6c 65 20 65 78 61 6d | 70 6c 65 73 2e 20 20 53 |ple exam|ples. S|
|000001b0| 6f 2c 20 74 68 69 73 20 | 65 78 61 6d 70 6c 65 20 |o, this |example |
|000001c0| 0d 09 09 75 73 65 73 20 | 6d 61 6e 79 2c 20 6d 61 |...uses |many, ma|
|000001d0| 6e 79 20 6f 70 74 69 6f | 6e 61 6c 20 66 65 61 74 |ny optio|nal feat|
|000001e0| 75 72 65 73 20 6f 66 20 | 53 69 6d 70 6c 65 54 6f |ures of |SimpleTo|
|000001f0| 6f 6c 73 20 61 6e 64 0d | 09 09 73 68 6f 77 73 20 |ols and.|..shows |
|00000200| 68 6f 77 20 79 6f 75 20 | 63 61 6e 20 75 73 65 20 |how you |can use |
|00000210| 74 68 65 20 73 74 61 6e | 64 61 72 64 20 74 6f 6f |the stan|dard too|
|00000220| 6c 62 6f 78 20 63 61 6c | 6c 73 2e 0d 09 09 0d 09 |lbox cal|ls......|
|00000230| 54 68 65 20 53 69 6d 70 | 6c 65 54 6f 6f 6c 73 20 |The Simp|leTools |
|00000240| 72 6f 75 74 69 6e 65 73 | 20 61 72 65 20 62 65 69 |routines| are bei|
|00000250| 6e 67 20 66 72 65 65 6c | 79 20 64 69 73 74 72 69 |ng freel|y distri|
|00000260| 62 75 74 65 64 2e 0d 09 | 59 6f 75 20 6d 61 79 20 |buted...|You may |
|00000270| 75 73 65 20 74 68 65 6d | 2c 20 64 69 73 74 72 69 |use them|, distri|
|00000280| 62 75 74 65 20 79 6f 75 | 72 20 61 70 70 6c 69 63 |bute you|r applic|
|00000290| 61 74 69 6f 6e 73 20 77 | 68 69 63 68 20 75 73 65 |ations w|hich use|
|000002a0| 20 74 68 65 6d 2c 0d 09 | 61 6e 64 20 63 6f 70 79 | them,..|and copy|
|000002b0| 20 74 68 65 6d 20 69 66 | 20 79 6f 75 20 73 65 6e | them if| you sen|
|000002c0| 64 20 24 32 30 20 6f 72 | 20 6d 6f 72 65 20 74 6f |d $20 or| more to|
|000002d0| 3a 0d 09 0d 09 09 09 45 | 72 69 6b 20 4b 69 6c 6b |:......E|rik Kilk|
|000002e0| 0d 09 09 09 34 39 34 39 | 20 53 6e 79 64 65 72 20 |....4949| Snyder |
|000002f0| 4c 61 6e 65 2c 20 23 32 | 34 37 0d 09 09 09 52 6f |Lane, #2|47....Ro|
|00000300| 68 6e 65 72 74 20 50 61 | 72 6b 2c 20 20 43 41 20 |hnert Pa|rk, CA |
|00000310| 20 39 34 39 32 38 0d 09 | 09 09 0d 09 4c 69 6e 6b | 94928..|....Link|
|00000320| 20 74 68 69 73 20 64 65 | 6d 6f 6e 73 74 72 61 74 | this de|monstrat|
|00000330| 69 6f 6e 20 70 72 6f 67 | 72 61 6d 20 77 69 74 68 |ion prog|ram with|
|00000340| 20 53 69 6d 70 6c 65 54 | 6f 6f 6c 73 2e 0d 09 09 | SimpleT|ools....|
|00000350| 0d 2a 2f 0d 0d 2f 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.*/../**|********|
|00000360| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000370| 2a 2a 2a 2a 2a 2a 2a 2f | 0d 2f 2a 20 20 44 45 46 |*******/|./* DEF|
|00000380| 49 4e 49 54 49 4f 4e 53 | 20 46 4f 52 20 53 49 4d |INITIONS| FOR SIM|
|00000390| 50 4c 45 54 4f 4f 4c 53 | 20 20 2a 2f 0d 2f 2a 2a |PLETOOLS| */./**|
|000003a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000003b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2f |********|*******/|
|000003c0| 0d 0d 23 69 6e 63 6c 75 | 64 65 20 22 73 69 6d 70 |..#inclu|de "simp|
|000003d0| 6c 65 2e 68 22 0d 0d 0d | 2f 2a 2a 2a 2a 2a 2a 2a |le.h"...|/*******|
|000003e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000003f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2f 0d 2f 2a 20 20 49 4e |********|/./* IN|
|00000400| 43 4c 55 44 45 20 46 49 | 4c 45 53 20 46 4f 52 20 |CLUDE FI|LES FOR |
|00000410| 54 4f 4f 4c 42 4f 58 20 | 20 2a 2f 0d 2f 2a 2a 2a |TOOLBOX | */./***|
|00000420| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000430| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2f 0d 0d 23 |********|****/..#|
|00000440| 69 66 64 65 66 20 4d 45 | 47 41 4d 41 58 0d 20 20 |ifdef ME|GAMAX. |
|00000450| 23 69 6e 63 6c 75 64 65 | 20 3c 71 64 2e 68 3e 0d |#include| <qd.h>.|
|00000460| 20 20 23 69 6e 63 6c 75 | 64 65 20 3c 65 76 65 6e | #inclu|de <even|
|00000470| 74 2e 68 3e 0d 20 20 23 | 69 6e 63 6c 75 64 65 20 |t.h>. #|include |
|00000480| 3c 6d 65 6d 2e 68 3e 0d | 20 20 23 69 6e 63 6c 75 |<mem.h>.| #inclu|
|00000490| 64 65 20 3c 66 6f 6e 74 | 2e 68 3e 0d 20 20 23 69 |de <font|.h>. #i|
|000004a0| 6e 63 6c 75 64 65 20 3c | 71 64 76 61 72 73 2e 68 |nclude <|qdvars.h|
|000004b0| 3e 0d 20 20 23 69 6e 63 | 6c 75 64 65 20 3c 6d 69 |>. #inc|lude <mi|
|000004c0| 73 63 2e 68 3e 0d 20 20 | 23 69 6e 63 6c 75 64 65 |sc.h>. |#include|
|000004d0| 20 3c 77 69 6e 2e 68 3e | 0d 20 20 23 69 6e 63 6c | <win.h>|. #incl|
|000004e0| 75 64 65 20 3c 73 74 72 | 69 6e 67 2e 68 3e 0d 20 |ude <str|ing.h>. |
|000004f0| 20 23 69 6e 63 6c 75 64 | 65 20 3c 73 74 64 69 6f | #includ|e <stdio|
|00000500| 2e 68 3e 0d 20 20 23 64 | 65 66 69 6e 65 20 54 52 |.h>. #d|efine TR|
|00000510| 55 45 20 28 2d 31 29 09 | 09 09 2f 2a 20 43 6f 6d |UE (-1).|../* Com|
|00000520| 6d 6f 6e 20 62 6f 6f 6c | 65 61 6e 20 63 6f 6e 73 |mon bool|ean cons|
|00000530| 74 61 6e 74 73 20 2a 2f | 0d 20 20 23 64 65 66 69 |tants */|. #defi|
|00000540| 6e 65 20 46 41 4c 53 45 | 20 30 0d 23 65 6c 73 65 |ne FALSE| 0.#else|
|00000550| 0d 20 20 23 69 6e 63 6c | 75 64 65 20 3c 51 75 69 |. #incl|ude <Qui|
|00000560| 63 6b 64 72 61 77 2e 68 | 3e 0d 20 20 23 69 6e 63 |ckdraw.h|>. #inc|
|00000570| 6c 75 64 65 20 3c 45 76 | 65 6e 74 4d 67 72 2e 68 |lude <Ev|entMgr.h|
|00000580| 3e 0d 20 20 23 69 6e 63 | 6c 75 64 65 20 3c 4d 65 |>. #inc|lude <Me|
|00000590| 6d 6f 72 79 4d 67 72 2e | 68 3e 0d 20 20 23 69 6e |moryMgr.|h>. #in|
|000005a0| 63 6c 75 64 65 20 3c 66 | 6f 6e 74 4d 67 72 2e 68 |clude <f|ontMgr.h|
|000005b0| 3e 0d 20 20 23 69 6e 63 | 6c 75 64 65 20 3c 57 69 |>. #inc|lude <Wi|
|000005c0| 6e 64 6f 77 4d 67 72 2e | 68 3e 0d 20 20 23 69 6e |ndowMgr.|h>. #in|
|000005d0| 63 6c 75 64 65 20 3c 73 | 74 72 69 6e 67 73 2e 68 |clude <s|trings.h|
|000005e0| 3e 0d 20 20 23 69 6e 63 | 6c 75 64 65 20 3c 73 74 |>. #inc|lude <st|
|000005f0| 64 69 6f 2e 68 3e 0d 23 | 65 6e 64 69 66 0d 0d 2f |dio.h>.#|endif../|
|00000600| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000610| 2a 2a 2a 2a 2a 2a 2f 0d | 2f 2a 20 20 47 4c 4f 42 |******/.|/* GLOB|
|00000620| 41 4c 20 56 41 52 49 41 | 42 4c 45 53 20 20 2a 2f |AL VARIA|BLES */|
|00000630| 0d 2f 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |./******|********|
|00000640| 2a 2a 2a 2a 2a 2a 2a 2a | 2f 0d 0d 69 6e 74 20 63 |********|/..int c|
|00000650| 69 72 63 73 70 65 65 64 | 20 3d 20 35 30 3b 09 09 |ircspeed| = 50;..|
|00000660| 2f 2a 20 72 61 74 65 20 | 6f 66 20 64 72 61 77 69 |/* rate |of drawi|
|00000670| 6e 67 20 6e 65 77 20 63 | 69 72 63 6c 65 73 20 2a |ng new c|ircles *|
|00000680| 2f 0d 69 6e 74 20 6f 75 | 72 70 65 6e 73 69 7a 65 |/.int ou|rpensize|
|00000690| 20 3d 20 31 3b 09 09 2f | 2a 20 67 6c 6f 62 61 6c | = 1;../|* global|
|000006a0| 20 70 65 6e 20 73 69 7a | 65 20 69 6e 73 74 65 61 | pen siz|e instea|
|000006b0| 64 20 6f 66 20 77 69 6e | 64 6f 77 73 20 2a 2f 0d |d of win|dows */.|
|000006c0| 52 65 63 74 20 64 72 61 | 67 3b 09 09 09 2f 2a 20 |Rect dra|g;.../* |
|000006d0| 66 6f 72 20 6d 6f 76 69 | 6e 67 20 6f 75 72 20 66 |for movi|ng our f|
|000006e0| 72 65 65 20 6d 65 6d 20 | 6d 61 6e 75 61 6c 6c 79 |ree mem |manually|
|000006f0| 20 2a 2f 0d 63 68 61 72 | 20 6e 61 6d 65 5b 31 30 | */.char| name[10|
|00000700| 30 5d 3b 0d 63 68 61 72 | 20 6f 75 74 73 74 72 69 |0];.char| outstri|
|00000710| 6e 67 5b 31 30 30 5d 3b | 0d 0d 0d 2f 2a 2a 2a 2a |ng[100];|.../****|
|00000720| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000730| 2a 2f 0d 2f 2a 20 20 20 | 4f 64 64 73 20 61 6e 64 |*/./* |Odds and|
|00000740| 20 45 6e 64 73 20 20 20 | 2a 2f 0d 2f 2a 2a 2a 2a | Ends |*/./****|
|00000750| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000760| 2a 2f 0d 0d 6e 6f 70 28 | 29 20 09 09 09 09 2f 2a |*/..nop(|) ..../*|
|00000770| 20 41 74 74 61 63 68 65 | 64 20 61 73 20 61 20 6e | Attache|d as a n|
|00000780| 75 6c 6c 20 70 6f 69 6e | 74 65 72 20 2a 2f 0d 7b |ull poin|ter */.{|
|00000790| 0d 7d 09 09 09 0d 0d 2f | 2a 2a 2a 2a 2a 2a 2a 2a |.}...../|********|
|000007a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2f |********|*******/|
|000007b0| 0d 2f 2a 20 20 53 6b 65 | 74 63 68 20 57 69 6e 64 |./* Ske|tch Wind|
|000007c0| 6f 77 20 20 20 20 20 20 | 2a 2f 0d 2f 2a 2a 2a 2a |ow |*/./****|
|000007d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000007e0| 2a 2a 2a 2f 0d 0d 73 6b | 65 74 61 63 74 69 76 61 |***/..sk|etactiva|
|000007f0| 74 65 28 29 09 09 09 2f | 2a 20 41 74 74 61 63 68 |te().../|* Attach|
|00000800| 65 64 20 74 6f 20 73 6b | 65 74 63 68 27 73 20 61 |ed to sk|etch's a|
|00000810| 63 74 69 76 61 74 65 20 | 2a 2f 0d 7b 09 09 09 09 |ctivate |*/.{....|
|00000820| 2f 2a 20 44 69 73 61 62 | 6c 65 20 74 68 65 20 77 |/* Disab|le the w|
|00000830| 68 6f 6c 65 20 73 6b 65 | 74 63 68 20 6d 65 6e 75 |hole ske|tch menu|
|00000840| 20 2a 2f 0d 20 20 6d 65 | 6e 75 20 28 22 53 6b 65 | */. me|nu ("Ske|
|00000850| 74 63 68 22 2c 20 22 22 | 2c 20 69 74 65 6d 65 6e |tch", ""|, itemen|
|00000860| 61 62 6c 65 29 3b 0d 20 | 20 6d 65 6e 75 20 28 22 |able);. | menu ("|
|00000870| 45 64 69 74 22 2c 20 22 | 43 6c 65 61 72 22 2c 20 |Edit", "|Clear", |
|00000880| 68 6f 6d 65 29 3b 20 20 | 2f 2a 20 70 75 74 20 6f |home); |/* put o|
|00000890| 75 72 20 63 6c 65 61 72 | 20 72 6f 75 74 69 6e 65 |ur clear| routine|
|000008a0| 20 69 6e 74 6f 20 70 6c | 61 63 65 20 2a 2f 0d 7d | into pl|ace */.}|
|000008b0| 0d 09 0d 73 6b 65 74 64 | 65 61 63 74 69 76 61 74 |...sketd|eactivat|
|000008c0| 65 28 29 09 09 2f 2a 20 | 41 74 74 61 63 68 65 64 |e()../* |Attached|
|000008d0| 20 74 6f 20 73 6b 65 74 | 63 68 27 73 20 64 65 61 | to sket|ch's dea|
|000008e0| 63 74 69 76 61 74 65 20 | 2a 2f 0d 7b 09 09 09 09 |ctivate |*/.{....|
|000008f0| 2f 2a 20 45 6e 61 62 6c | 65 20 74 68 65 20 77 68 |/* Enabl|e the wh|
|00000900| 6f 6c 65 20 73 6b 65 74 | 63 68 20 6d 65 6e 75 20 |ole sket|ch menu |
|00000910| 2a 2f 0d 20 20 6d 65 6e | 75 20 28 22 53 6b 65 74 |*/. men|u ("Sket|
|00000920| 63 68 22 2c 20 22 22 2c | 20 69 74 65 6d 64 69 73 |ch", "",| itemdis|
|00000930| 61 62 6c 65 29 3b 0d 20 | 20 6d 65 6e 75 20 28 22 |able);. | menu ("|
|00000940| 45 64 69 74 22 2c 20 22 | 43 6c 65 61 72 22 2c 20 |Edit", "|Clear", |
|00000950| 6e 6f 70 29 3b 09 2f 2a | 20 74 61 6b 65 20 6f 66 |nop);./*| take of|
|00000960| 66 20 6f 75 72 20 63 6c | 65 61 72 20 72 6f 75 74 |f our cl|ear rout|
|00000970| 69 6e 65 20 2a 2f 0d 7d | 0d 0d 73 6b 65 74 63 68 |ine */.}|..sketch|
|00000980| 28 78 2c 79 29 09 09 09 | 2f 2a 20 66 6f 6c 6c 6f |(x,y)...|/* follo|
|00000990| 77 20 6d 6f 75 73 65 20 | 77 68 69 6c 65 20 69 74 |w mouse |while it|
|000009a0| 27 73 20 64 6f 77 6e 20 | 2a 2f 0d 69 6e 74 20 78 |'s down |*/.int x|
|000009b0| 2c 79 3b 09 09 09 2f 2a | 20 77 65 20 77 69 6c 6c |,y;.../*| we will|
|000009c0| 20 67 65 74 20 70 61 73 | 73 65 64 20 74 68 65 20 | get pas|sed the |
|000009d0| 6d 6f 75 73 65 20 50 6f | 69 6e 74 20 2a 2f 0d 7b |mouse Po|int */.{|
|000009e0| 0d 20 20 50 6f 69 6e 74 | 20 78 79 2c 20 6c 61 73 |. Point| xy, las|
|000009f0| 74 78 79 3b 09 09 2f 2a | 20 70 6f 69 6e 74 73 20 |txy;../*| points |
|00000a00| 6f 66 20 69 6e 74 65 72 | 65 73 74 20 2a 2f 0d 20 |of inter|est */. |
|00000a10| 20 57 69 6e 64 6f 77 50 | 74 72 20 6f 75 72 70 6f | WindowP|tr ourpo|
|00000a20| 72 74 3b 0d 20 20 0d 20 | 20 47 65 74 50 6f 72 74 |rt;. . | GetPort|
|00000a30| 20 28 26 6f 75 72 70 6f | 72 74 29 3b 0d 20 20 50 | (&ourpo|rt);. P|
|00000a40| 65 6e 53 69 7a 65 20 28 | 6f 75 72 70 65 6e 73 69 |enSize (|ourpensi|
|00000a50| 7a 65 2c 20 6f 75 72 70 | 65 6e 73 69 7a 65 29 3b |ze, ourp|ensize);|
|00000a60| 0d 20 20 4d 6f 76 65 54 | 6f 20 28 78 2c 20 79 29 |. MoveT|o (x, y)|
|00000a70| 3b 09 09 2f 2a 20 70 6f | 73 69 74 69 6f 6e 20 70 |;../* po|sition p|
|00000a80| 65 6e 20 61 74 20 6d 6f | 75 73 65 20 64 6f 77 6e |en at mo|use down|
|00000a90| 20 50 6f 69 6e 74 20 2a | 2f 0d 20 20 77 68 69 6c | Point *|/. whil|
|00000aa0| 65 20 28 20 53 74 69 6c | 6c 44 6f 77 6e 28 29 20 |e ( Stil|lDown() |
|00000ab0| 29 20 7b 09 2f 2a 20 77 | 68 69 6c 65 20 74 68 65 |) {./* w|hile the|
|00000ac0| 20 42 75 74 74 6f 6e 20 | 69 73 20 70 72 65 73 73 | Button |is press|
|00000ad0| 65 64 20 2a 2f 0d 20 20 | 20 20 47 65 74 4d 6f 75 |ed */. | GetMou|
|00000ae0| 73 65 20 28 26 78 79 29 | 3b 09 09 2f 2a 20 72 65 |se (&xy)|;../* re|
|00000af0| 61 64 20 74 68 65 20 6d | 6f 75 73 65 20 70 6f 73 |ad the m|ouse pos|
|00000b00| 69 74 69 6f 6e 20 2a 2f | 0d 20 20 20 20 23 69 66 |ition */|. #if|
|00000b10| 64 65 66 20 4d 45 47 41 | 4d 41 58 0d 20 20 20 20 |def MEGA|MAX. |
|00000b20| 69 66 20 28 20 28 78 79 | 2e 61 2e 76 20 21 3d 20 |if ( (xy|.a.v != |
|00000b30| 6c 61 73 74 78 79 2e 61 | 2e 76 29 20 7c 7c 20 28 |lastxy.a|.v) || (|
|00000b40| 78 79 2e 61 2e 68 20 21 | 3d 20 6c 61 73 74 78 79 |xy.a.h !|= lastxy|
|00000b50| 2e 61 2e 68 29 20 29 20 | 7b 0d 20 20 20 20 20 20 |.a.h) ) |{. |
|00000b60| 4c 69 6e 65 54 6f 20 28 | 78 79 2e 61 2e 68 2c 20 |LineTo (|xy.a.h, |
|00000b70| 78 79 2e 61 2e 76 29 3b | 09 2f 2a 20 69 66 20 6d |xy.a.v);|./* if m|
|00000b80| 6f 75 73 65 20 6d 6f 76 | 65 64 2c 20 64 72 61 77 |ouse mov|ed, draw|
|00000b90| 20 61 20 4c 69 6e 65 20 | 74 6f 20 69 74 20 2a 2f | a Line |to it */|
|00000ba0| 0d 20 20 20 20 20 20 6c | 61 73 74 78 79 2e 61 2e |. l|astxy.a.|
|00000bb0| 76 20 3d 20 78 79 2e 61 | 2e 76 3b 09 2f 2a 20 72 |v = xy.a|.v;./* r|
|00000bc0| 65 63 6f 72 64 20 70 6f | 73 69 74 69 6f 6e 20 73 |ecord po|sition s|
|00000bd0| 6f 20 77 65 20 63 61 6e | 20 64 65 74 65 63 74 20 |o we can| detect |
|00000be0| 2a 2f 0d 20 20 20 20 20 | 20 6c 61 73 74 78 79 2e |*/. | lastxy.|
|00000bf0| 61 2e 68 20 3d 20 78 79 | 2e 61 2e 68 3b 09 2f 2a |a.h = xy|.a.h;./*|
|00000c00| 20 20 20 61 20 4d 6f 76 | 65 2e 20 2a 2f 0d 20 20 | a Mov|e. */. |
|00000c10| 20 20 7d 09 09 09 09 2f | 2a 20 63 6f 75 6c 64 20 | }..../|* could |
|00000c20| 72 75 6e 72 75 6e 73 20 | 68 65 72 65 20 74 6f 20 |runruns |here to |
|00000c30| 68 61 76 65 20 63 69 72 | 63 6c 65 73 20 2a 2f 0d |have cir|cles */.|
|00000c40| 20 20 20 20 23 65 6c 73 | 65 0d 20 20 20 20 69 66 | #els|e. if|
|00000c50| 20 28 20 28 78 79 2e 76 | 20 21 3d 20 6c 61 73 74 | ( (xy.v| != last|
|00000c60| 78 79 2e 76 29 20 7c 7c | 20 28 78 79 2e 68 20 21 |xy.v) ||| (xy.h !|
|00000c70| 3d 20 6c 61 73 74 78 79 | 2e 68 29 20 29 20 7b 0d |= lastxy|.h) ) {.|
|00000c80| 20 20 20 20 20 20 4c 69 | 6e 65 54 6f 20 28 78 79 | Li|neTo (xy|
|00000c90| 2e 68 2c 20 78 79 2e 76 | 29 3b 09 2f 2a 20 69 66 |.h, xy.v|);./* if|
|00000ca0| 20 6d 6f 75 73 65 20 6d | 6f 76 65 64 2c 20 64 72 | mouse m|oved, dr|
|00000cb0| 61 77 20 61 20 4c 69 6e | 65 20 74 6f 20 69 74 20 |aw a Lin|e to it |
|00000cc0| 2a 2f 0d 20 20 20 20 20 | 20 6c 61 73 74 78 79 2e |*/. | lastxy.|
|00000cd0| 76 20 3d 20 78 79 2e 76 | 3b 09 09 2f 2a 20 72 65 |v = xy.v|;../* re|
|00000ce0| 63 6f 72 64 20 70 6f 73 | 69 74 69 6f 6e 20 73 6f |cord pos|ition so|
|00000cf0| 20 77 65 20 63 61 6e 20 | 64 65 74 65 63 74 20 2a | we can |detect *|
|00000d00| 2f 0d 20 20 20 20 20 20 | 6c 61 73 74 78 79 2e 68 |/. |lastxy.h|
|00000d10| 20 3d 20 78 79 2e 68 3b | 09 09 2f 2a 20 20 20 61 | = xy.h;|../* a|
|00000d20| 20 4d 6f 76 65 2e 20 2a | 2f 0d 20 20 20 20 7d 09 | Move. *|/. }.|
|00000d30| 09 09 09 2f 2a 20 63 6f | 75 6c 64 20 72 75 6e 72 |.../* co|uld runr|
|00000d40| 75 6e 73 20 68 65 72 65 | 20 74 6f 20 68 61 76 65 |uns here| to have|
|00000d50| 20 63 69 72 63 6c 65 73 | 20 2a 2f 0d 20 20 20 20 | circles| */. |
|00000d60| 23 65 6e 64 69 66 0d 09 | 72 75 6e 72 75 6e 73 28 |#endif..|runruns(|
|00000d70| 30 4c 29 3b 0d 09 53 65 | 74 50 6f 72 74 20 28 6f |0L);..Se|tPort (o|
|00000d80| 75 72 70 6f 72 74 29 3b | 0d 20 20 7d 0d 7d 0d 20 |urport);|. }.}. |
|00000d90| 20 20 20 0d 73 65 74 70 | 65 6e 73 69 7a 65 28 73 | .setp|ensize(s|
|00000da0| 69 7a 65 29 09 09 2f 2a | 20 41 74 74 61 63 68 65 |ize)../*| Attache|
|00000db0| 64 20 74 6f 20 70 65 6e | 20 73 69 7a 65 20 6d 65 |d to pen| size me|
|00000dc0| 6e 75 73 20 2a 2f 0d 63 | 68 61 72 20 2a 73 69 7a |nus */.c|har *siz|
|00000dd0| 65 3b 09 09 09 2f 2a 20 | 6d 65 6e 75 20 49 74 65 |e;.../* |menu Ite|
|00000de0| 6d 20 6e 61 6d 65 20 67 | 69 76 65 6e 20 74 6f 20 |m name g|iven to |
|00000df0| 75 73 20 2a 2f 0d 7b 0d | 20 20 73 74 61 74 69 63 |us */.{.| static|
|00000e00| 20 63 68 61 72 20 6c 61 | 73 74 73 69 7a 65 5b 35 | char la|stsize[5|
|00000e10| 5d 3d 7b 27 31 27 2c 27 | 5c 30 27 7d 3b 09 2f 2a |]={'1','|\0'};./*|
|00000e20| 20 6b 65 65 70 20 6c 61 | 73 74 20 73 65 74 74 69 | keep la|st setti|
|00000e30| 6e 67 20 2a 2f 0d 20 20 | 6d 65 6e 75 20 28 22 53 |ng */. |menu ("S|
|00000e40| 6b 65 74 63 68 22 2c 20 | 6c 61 73 74 73 69 7a 65 |ketch", |lastsize|
|00000e50| 2c 20 69 74 65 6d 75 6e | 63 68 65 63 6b 29 3b 09 |, itemun|check);.|
|00000e60| 2f 2a 20 72 65 6d 6f 76 | 65 20 6f 6c 64 20 63 68 |/* remov|e old ch|
|00000e70| 65 63 6b 20 6d 61 72 6b | 20 2a 2f 0d 20 20 6d 65 |eck mark| */. me|
|00000e80| 6e 75 20 28 22 53 6b 65 | 74 63 68 22 2c 20 73 69 |nu ("Ske|tch", si|
|00000e90| 7a 65 2c 20 69 74 65 6d | 63 68 65 63 6b 29 3b 09 |ze, item|check);.|
|00000ea0| 2f 2a 20 69 6e 73 74 61 | 6c 6c 20 61 20 6e 65 77 |/* insta|ll a new|
|00000eb0| 20 63 68 65 63 6b 20 6d | 61 72 6b 20 2a 2f 0d 20 | check m|ark */. |
|00000ec0| 20 73 74 72 63 70 79 20 | 28 6c 61 73 74 73 69 7a | strcpy |(lastsiz|
|00000ed0| 65 2c 20 73 69 7a 65 29 | 3b 09 2f 2a 20 73 61 76 |e, size)|;./* sav|
|00000ee0| 65 20 73 69 7a 65 20 66 | 6f 72 20 74 68 65 20 6e |e size f|or the n|
|00000ef0| 65 78 74 20 73 65 74 70 | 65 6e 73 69 7a 65 20 2a |ext setp|ensize *|
|00000f00| 2f 0d 20 20 6f 75 72 70 | 65 6e 73 69 7a 65 20 3d |/. ourp|ensize =|
|00000f10| 20 2a 73 69 7a 65 20 2d | 20 27 30 27 3b 09 09 2f | *size -| '0';../|
|00000f20| 2a 20 63 6f 6e 76 65 72 | 74 20 74 6f 20 61 20 6e |* conver|t to a n|
|00000f30| 75 6d 62 65 72 20 2a 2f | 0d 7d 0d 0d 2f 2a 2a 2a |umber */|.}../***|
|00000f40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000f50| 2a 2a 2a 2a 2a 2a 2a 2f | 0d 2f 2a 20 20 20 54 68 |*******/|./* Th|
|00000f60| 65 20 43 69 72 63 6c 65 | 73 20 57 69 6e 64 6f 77 |e Circle|s Window|
|00000f70| 20 20 20 2a 2f 0d 2f 2a | 2a 2a 2a 2a 2a 2a 2a 2a | */./*|********|
|00000f80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000f90| 2a 2f 0d 0d 69 6e 74 20 | 6e 65 77 61 62 73 28 78 |*/..int |newabs(x|
|00000fa0| 29 09 09 09 2f 2a 20 61 | 6e 20 61 62 73 6f 6c 75 |).../* a|n absolu|
|00000fb0| 74 65 20 76 61 6c 75 65 | 20 66 75 6e 74 69 6f 6e |te value| funtion|
|00000fc0| 20 2a 2f 0d 69 6e 74 20 | 78 3b 0d 7b 0d 20 20 69 | */.int |x;.{. i|
|00000fd0| 66 20 28 78 20 3c 20 30 | 29 0d 20 20 20 20 78 20 |f (x < 0|). x |
|00000fe0| 3d 20 2d 78 3b 0d 20 20 | 72 65 74 75 72 6e 20 28 |= -x;. |return (|
|00000ff0| 78 29 3b 0d 7d 0d 0d 63 | 69 72 63 6c 65 73 28 29 |x);.}..c|ircles()|
|00001000| 09 09 09 2f 2a 20 64 72 | 61 77 20 61 20 52 61 6e |.../* dr|aw a Ran|
|00001010| 64 6f 6d 20 73 69 7a 65 | 64 20 63 69 72 63 6c 65 |dom size|d circle|
|00001020| 20 2a 2f 0d 7b 0d 20 20 | 73 74 61 74 69 63 20 57 | */.{. |static W|
|00001030| 69 6e 64 6f 77 50 74 72 | 20 77 69 6e 64 20 3d 20 |indowPtr| wind = |
|00001040| 28 57 69 6e 64 6f 77 50 | 74 72 29 20 30 3b 20 2f |(WindowP|tr) 0; /|
|00001050| 2a 20 6b 65 65 70 20 22 | 63 69 72 63 6c 65 22 20 |* keep "|circle" |
|00001060| 57 69 6e 64 6f 77 50 74 | 72 20 2a 2f 0d 20 20 73 |WindowPt|r */. s|
|00001070| 74 61 74 69 63 20 69 6e | 74 20 73 70 65 65 64 20 |tatic in|t speed |
|00001080| 3d 20 31 3b 09 09 2f 2a | 20 63 75 72 72 65 6e 74 |= 1;../*| current|
|00001090| 20 63 6f 75 6e 74 20 62 | 65 74 77 65 65 6e 20 6e | count b|etween n|
|000010a0| 65 77 20 63 69 72 63 6c | 65 73 20 2a 2f 0d 20 20 |ew circl|es */. |
|000010b0| 72 65 67 69 73 74 65 72 | 20 69 6e 74 20 63 78 2c |register| int cx,|
|000010c0| 20 63 79 3b 09 09 2f 2a | 20 63 65 6e 74 65 72 20 | cy;../*| center |
|000010d0| 6f 66 20 74 68 65 20 63 | 69 72 63 6c 65 20 2a 2f |of the c|ircle */|
|000010e0| 0d 20 20 69 6e 74 20 72 | 2c 20 62 2c 20 72 64 3b |. int r|, b, rd;|
|000010f0| 09 09 09 2f 2a 20 72 69 | 67 68 74 20 61 6e 64 20 |.../* ri|ght and |
|00001100| 62 6f 74 74 6f 6d 20 65 | 64 67 65 73 20 2a 2f 0d |bottom e|dges */.|
|00001110| 20 20 72 65 67 69 73 74 | 65 72 20 50 61 74 74 65 | regist|er Patte|
|00001120| 72 6e 20 2a 63 6f 6c 6f | 72 3b 09 2f 2a 20 63 6f |rn *colo|r;./* co|
|00001130| 6c 6f 72 20 66 6f 72 20 | 74 68 65 20 63 69 72 63 |lor for |the circ|
|00001140| 6c 65 20 2a 2f 0d 20 20 | 52 65 63 74 20 74 68 65 |le */. |Rect the|
|00001150| 72 65 63 74 3b 09 09 09 | 2f 2a 20 72 65 63 74 61 |rect;...|/* recta|
|00001160| 6e 67 6c 65 20 74 6f 20 | 64 72 61 77 20 63 69 72 |ngle to |draw cir|
|00001170| 63 6c 65 20 69 6e 20 2a | 2f 0d 20 20 69 66 20 28 |cle in *|/. if (|
|00001180| 20 2d 2d 73 70 65 65 64 | 20 3d 3d 20 30 29 20 7b | --speed| == 0) {|
|00001190| 09 09 2f 2a 20 63 6f 75 | 6e 74 2c 20 61 6e 64 20 |../* cou|nt, and |
|000011a0| 69 66 20 69 74 20 72 65 | 61 63 68 65 73 20 7a 65 |if it re|aches ze|
|000011b0| 72 6f 2e 2e 2e 20 2a 2f | 0d 20 20 20 20 73 70 65 |ro... */|. spe|
|000011c0| 65 64 20 3d 20 63 69 72 | 63 73 70 65 65 64 3b 09 |ed = cir|cspeed;.|
|000011d0| 09 2f 2a 20 72 65 73 65 | 74 20 74 68 65 20 63 6f |./* rese|t the co|
|000011e0| 75 6e 74 20 2a 2f 0d 20 | 20 20 20 69 66 20 28 28 |unt */. | if ((|
|000011f0| 6c 6f 6e 67 29 77 69 6e | 64 20 3d 3d 20 30 4c 29 |long)win|d == 0L)|
|00001200| 20 09 2f 2a 20 67 65 74 | 20 77 69 6e 64 6f 77 20 | ./* get| window |
|00001210| 70 6f 69 6e 74 65 72 20 | 69 66 20 77 65 20 6e 65 |pointer |if we ne|
|00001220| 65 64 20 2a 2f 0d 20 20 | 20 20 20 20 77 69 6e 64 |ed */. | wind|
|00001230| 20 3d 20 77 69 6e 64 6f | 77 70 6f 69 6e 74 20 28 | = windo|wpoint (|
|00001240| 22 43 69 72 63 6c 65 73 | 22 29 3b 20 20 2f 2a 20 |"Circles|"); /* |
|00001250| 73 61 76 65 20 77 69 6e | 64 6f 77 20 66 6f 72 20 |save win|dow for |
|00001260| 6e 65 78 74 20 74 69 6d | 65 20 2a 2f 0d 20 20 20 |next tim|e */. |
|00001270| 20 53 65 74 50 6f 72 74 | 20 28 77 69 6e 64 29 3b | SetPort| (wind);|
|00001280| 09 09 2f 2a 20 73 65 74 | 20 6f 75 74 70 75 74 20 |../* set| output |
|00001290| 74 6f 20 74 68 65 20 63 | 69 72 63 6c 65 20 77 69 |to the c|ircle wi|
|000012a0| 6e 64 6f 77 20 2a 2f 0d | 20 20 20 20 23 69 66 64 |ndow */.| #ifd|
|000012b0| 65 66 20 4d 45 47 41 4d | 41 58 0d 20 20 20 20 20 |ef MEGAM|AX. |
|000012c0| 20 72 20 3d 20 77 69 6e | 64 2d 3e 70 6f 72 74 52 | r = win|d->portR|
|000012d0| 65 63 74 2e 61 2e 72 69 | 67 68 74 3b 09 2f 2a 20 |ect.a.ri|ght;./* |
|000012e0| 67 65 74 20 63 75 72 72 | 65 6e 74 20 73 69 7a 65 |get curr|ent size|
|000012f0| 20 6f 66 20 77 69 6e 64 | 6f 77 20 2a 2f 0d 20 20 | of wind|ow */. |
|00001300| 20 20 20 20 62 20 3d 20 | 77 69 6e 64 2d 3e 70 6f | b = |wind->po|
|00001310| 72 74 52 65 63 74 2e 61 | 2e 62 6f 74 74 6f 6d 3b |rtRect.a|.bottom;|
|00001320| 0d 20 20 20 20 23 65 6c | 73 65 0d 20 20 20 20 20 |. #el|se. |
|00001330| 20 72 20 3d 20 77 69 6e | 64 2d 3e 70 6f 72 74 52 | r = win|d->portR|
|00001340| 65 63 74 2e 72 69 67 68 | 74 3b 09 2f 2a 20 67 65 |ect.righ|t;./* ge|
|00001350| 74 20 63 75 72 72 65 6e | 74 20 73 69 7a 65 20 6f |t curren|t size o|
|00001360| 66 20 77 69 6e 64 6f 77 | 20 2a 2f 0d 20 20 20 20 |f window| */. |
|00001370| 20 20 62 20 3d 20 77 69 | 6e 64 2d 3e 70 6f 72 74 | b = wi|nd->port|
|00001380| 52 65 63 74 2e 62 6f 74 | 74 6f 6d 3b 0d 20 20 20 |Rect.bot|tom;. |
|00001390| 20 23 65 6e 64 69 66 0d | 20 20 20 20 63 78 20 3d | #endif.| cx =|
|000013a0| 20 6e 65 77 61 62 73 28 | 52 61 6e 64 6f 6d 28 29 | newabs(|Random()|
|000013b0| 29 20 25 20 28 72 2d 33 | 30 29 20 2b 20 31 3b 09 |) % (r-3|0) + 1;.|
|000013c0| 2f 2a 20 70 69 63 6b 20 | 61 20 52 61 6e 64 6f 6d |/* pick |a Random|
|000013d0| 20 6c 6f 63 61 74 69 6f | 6e 20 2a 2f 0d 20 20 20 | locatio|n */. |
|000013e0| 20 63 79 20 3d 20 6e 65 | 77 61 62 73 28 52 61 6e | cy = ne|wabs(Ran|
|000013f0| 64 6f 6d 28 29 29 20 25 | 20 28 62 2d 33 30 29 20 |dom()) %| (b-30) |
|00001400| 2b 20 31 3b 0d 20 20 20 | 20 72 64 20 3d 20 6e 65 |+ 1;. | rd = ne|
|00001410| 77 61 62 73 28 52 61 6e | 64 6f 6d 28 29 29 20 25 |wabs(Ran|dom()) %|
|00001420| 20 32 35 20 2b 20 35 3b | 09 09 2f 2a 20 61 6e 64 | 25 + 5;|../* and|
|00001430| 20 73 69 7a 65 20 2a 2f | 0d 20 20 20 20 53 65 74 | size */|. Set|
|00001440| 52 65 63 74 20 28 20 26 | 74 68 65 72 65 63 74 2c |Rect ( &|therect,|
|00001450| 20 63 78 2c 20 63 79 2c | 20 63 78 2b 72 64 2c 20 | cx, cy,| cx+rd, |
|00001460| 63 79 2b 72 64 29 3b 09 | 2f 2a 20 6d 61 6b 65 20 |cy+rd);.|/* make |
|00001470| 61 20 72 65 63 74 61 6e | 67 6c 65 20 2a 2f 0d 20 |a rectan|gle */. |
|00001480| 20 20 20 73 77 69 74 63 | 68 20 28 20 6e 65 77 61 | switc|h ( newa|
|00001490| 62 73 28 52 61 6e 64 6f | 6d 28 29 29 20 25 20 34 |bs(Rando|m()) % 4|
|000014a0| 29 20 7b 09 09 2f 2a 20 | 70 69 63 6b 20 61 20 63 |) {../* |pick a c|
|000014b0| 6f 6c 6f 72 20 2a 2f 0d | 20 20 20 20 20 20 63 61 |olor */.| ca|
|000014c0| 73 65 20 30 3a 20 63 6f | 6c 6f 72 20 3d 20 28 50 |se 0: co|lor = (P|
|000014d0| 61 74 74 65 72 6e 20 2a | 29 28 26 64 6b 47 72 61 |attern *|)(&dkGra|
|000014e0| 79 29 3b 20 62 72 65 61 | 6b 3b 0d 20 20 20 20 20 |y); brea|k;. |
|000014f0| 20 63 61 73 65 20 31 3a | 20 63 6f 6c 6f 72 20 3d | case 1:| color =|
|00001500| 20 28 50 61 74 74 65 72 | 6e 20 2a 29 28 26 6c 74 | (Patter|n *)(<|
|00001510| 47 72 61 79 29 3b 20 62 | 72 65 61 6b 3b 0d 20 20 |Gray); b|reak;. |
|00001520| 20 20 20 20 63 61 73 65 | 20 32 3a 20 63 6f 6c 6f | case| 2: colo|
|00001530| 72 20 3d 20 28 50 61 74 | 74 65 72 6e 20 2a 29 28 |r = (Pat|tern *)(|
|00001540| 26 67 72 61 79 29 3b 20 | 62 72 65 61 6b 3b 0d 20 |&gray); |break;. |
|00001550| 20 20 20 20 20 63 61 73 | 65 20 33 3a 20 63 6f 6c | cas|e 3: col|
|00001560| 6f 72 20 3d 20 28 50 61 | 74 74 65 72 6e 20 2a 29 |or = (Pa|ttern *)|
|00001570| 28 26 62 6c 61 63 6b 29 | 3b 20 62 72 65 61 6b 3b |(&black)|; break;|
|00001580| 0d 20 20 20 20 7d 0d 20 | 20 20 20 46 69 6c 6c 4f |. }. | FillO|
|00001590| 76 61 6c 20 28 20 26 74 | 68 65 72 65 63 74 2c 20 |val ( &t|herect, |
|000015a0| 63 6f 6c 6f 72 29 3b 09 | 2f 2a 20 6d 61 6b 65 20 |color);.|/* make |
|000015b0| 74 68 65 20 63 69 72 63 | 6c 65 20 2a 2f 0d 20 20 |the circ|le */. |
|000015c0| 7d 0d 7d 0d 0d 73 65 74 | 73 70 65 65 64 28 6e 61 |}.}..set|speed(na|
|000015d0| 6d 65 29 09 09 09 09 2f | 2a 20 61 74 74 61 63 68 |me)..../|* attach|
|000015e0| 65 64 20 74 6f 20 63 69 | 72 63 6c 65 27 73 20 6d |ed to ci|rcle's m|
|000015f0| 65 6e 75 20 2a 2f 0d 63 | 68 61 72 20 2a 6e 61 6d |enu */.c|har *nam|
|00001600| 65 3b 0d 7b 0d 20 20 6d | 65 6e 75 20 28 22 43 69 |e;.{. m|enu ("Ci|
|00001610| 72 63 6c 65 73 22 2c 22 | 53 6c 6f 77 2f 53 22 2c |rcles","|Slow/S",|
|00001620| 20 69 74 65 6d 75 6e 63 | 68 65 63 6b 29 3b 09 2f | itemunc|heck);./|
|00001630| 2a 20 61 6e 6f 74 68 65 | 72 20 77 61 79 20 74 6f |* anothe|r way to|
|00001640| 20 75 6e 63 68 65 63 6b | 20 6c 61 73 74 20 2a 2f | uncheck| last */|
|00001650| 0d 20 20 6d 65 6e 75 20 | 28 22 43 69 72 63 6c 65 |. menu |("Circle|
|00001660| 73 22 2c 22 4d 65 64 69 | 75 6d 2f 4d 22 2c 20 69 |s","Medi|um/M", i|
|00001670| 74 65 6d 75 6e 63 68 65 | 63 6b 29 3b 20 2f 2a 20 |temunche|ck); /* |
|00001680| 6a 75 73 74 20 75 6e 63 | 68 65 63 6b 20 65 76 65 |just unc|heck eve|
|00001690| 72 79 74 68 69 6e 67 20 | 2a 2f 0d 20 20 6d 65 6e |rything |*/. men|
|000016a0| 75 20 28 22 43 69 72 63 | 6c 65 73 22 2c 22 46 61 |u ("Circ|les","Fa|
|000016b0| 73 74 2f 46 22 2c 20 69 | 74 65 6d 75 6e 63 68 65 |st/F", i|temunche|
|000016c0| 63 6b 29 3b 0d 20 20 6d | 65 6e 75 20 28 22 43 69 |ck);. m|enu ("Ci|
|000016d0| 72 63 6c 65 73 22 2c 20 | 6e 61 6d 65 2c 20 69 74 |rcles", |name, it|
|000016e0| 65 6d 63 68 65 63 6b 29 | 3b 09 2f 2a 20 74 68 65 |emcheck)|;./* the|
|000016f0| 6e 20 63 68 65 63 6b 20 | 74 68 65 20 63 75 72 72 |n check |the curr|
|00001700| 65 6e 74 20 20 2a 2f 0d | 20 20 69 66 20 28 73 74 |ent */.| if (st|
|00001710| 72 63 6d 70 28 22 53 6c | 6f 77 2f 53 22 2c 20 6e |rcmp("Sl|ow/S", n|
|00001720| 61 6d 65 29 20 3d 3d 30 | 29 20 63 69 72 63 73 70 |ame) ==0|) circsp|
|00001730| 65 65 64 20 3d 20 31 30 | 30 3b 20 20 2f 2a 20 73 |eed = 10|0; /* s|
|00001740| 65 74 20 74 68 65 20 72 | 65 73 65 74 20 63 6f 75 |et the r|eset cou|
|00001750| 6e 74 20 2a 2f 0d 20 20 | 65 6c 73 65 20 69 66 20 |nt */. |else if |
|00001760| 28 73 74 72 63 6d 70 28 | 22 4d 65 64 69 75 6d 2f |(strcmp(|"Medium/|
|00001770| 4d 22 2c 20 6e 61 6d 65 | 29 20 3d 3d 30 29 20 63 |M", name|) ==0) c|
|00001780| 69 72 63 73 70 65 65 64 | 20 3d 20 35 30 3b 0d 20 |ircspeed| = 50;. |
|00001790| 20 65 6c 73 65 20 69 66 | 20 28 73 74 72 63 6d 70 | else if| (strcmp|
|000017a0| 28 22 46 61 73 74 2f 46 | 22 2c 20 6e 61 6d 65 29 |("Fast/F|", name)|
|000017b0| 20 3d 3d 30 29 20 63 69 | 72 63 73 70 65 65 64 20 | ==0) ci|rcspeed |
|000017c0| 3d 20 31 3b 0d 7d 0d 0d | 2f 2a 2a 2a 2a 2a 2a 2a |= 1;.}..|/*******|
|000017d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000017e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000017f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2f 0d 2f 2a 20 20 20 47 |********|/./* G|
|00001800| 65 6e 65 72 61 74 65 20 | 61 20 6e 65 77 20 73 6b |enerate |a new sk|
|00001810| 65 74 63 68 20 77 69 6e | 64 6f 77 20 62 79 20 63 |etch win|dow by c|
|00001820| 6f 6d 6d 61 6e 64 20 20 | 20 2a 2f 0d 2f 2a 2a 2a |ommand | */./***|
|00001830| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001840| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001850| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2f 0d 0d 6e |********|****/..n|
|00001860| 77 69 6e 64 6f 77 28 29 | 09 09 09 2f 2a 20 63 6f |window()|.../* co|
|00001870| 6d 6d 61 6e 64 20 74 6f | 20 61 74 74 61 74 63 68 |mmand to| attatch|
|00001880| 20 74 6f 20 6e 65 77 20 | 77 69 6e 64 6f 77 20 6d | to new |window m|
|00001890| 65 6e 75 20 2a 2f 0d 7b | 0d 20 20 73 74 61 74 69 |enu */.{|. stati|
|000018a0| 63 20 74 6f 70 70 6c 61 | 63 65 20 3d 20 31 30 30 |c toppla|ce = 100|
|000018b0| 3b 09 2f 2a 20 72 65 6d | 65 6d 62 65 72 20 77 68 |;./* rem|ember wh|
|000018c0| 65 72 65 20 74 6f 20 70 | 75 74 20 6e 65 78 74 20 |ere to p|ut next |
|000018d0| 77 69 6e 64 6f 77 20 2a | 2f 0d 20 20 63 68 61 72 |window *|/. char|
|000018e0| 20 6e 65 77 6e 61 6d 65 | 5b 32 35 35 5d 3b 09 09 | newname|[255];..|
|000018f0| 2f 2a 20 73 74 72 69 6e | 67 20 73 74 6f 72 61 67 |/* strin|g storag|
|00001900| 65 20 66 6f 72 20 77 69 | 6e 64 6f 77 27 73 20 6e |e for wi|ndow's n|
|00001910| 61 6d 65 20 2a 2f 0d 20 | 20 73 74 72 63 70 79 20 |ame */. | strcpy |
|00001920| 28 6e 65 77 6e 61 6d 65 | 2c 20 22 4e 65 77 20 57 |(newname|, "New W|
|00001930| 69 6e 64 6f 77 22 29 3b | 09 2f 2a 20 64 65 66 61 |indow");|./* defa|
|00001940| 75 6c 74 20 77 69 6e 64 | 6f 77 20 6e 61 6d 65 20 |ult wind|ow name |
|00001950| 2a 2f 0d 72 65 74 72 79 | 3a 09 09 09 09 2f 2a 20 |*/.retry|:..../* |
|00001960| 70 72 6f 6d 70 74 20 66 | 6f 72 20 74 68 65 20 6e |prompt f|or the n|
|00001970| 61 6d 65 20 66 72 6f 6d | 20 75 73 65 72 20 2a 2f |ame from| user */|
|00001980| 0d 20 20 69 66 20 28 70 | 72 6f 6d 70 74 20 28 22 |. if (p|rompt ("|
|00001990| 47 69 76 65 20 6d 65 20 | 61 20 75 6e 69 71 75 65 |Give me |a unique|
|000019a0| 20 6e 61 6d 65 20 66 6f | 72 20 74 68 65 20 6e 65 | name fo|r the ne|
|000019b0| 77 20 77 69 6e 64 6f 77 | 3a 22 2c 20 6e 65 77 6e |w window|:", newn|
|000019c0| 61 6d 65 29 29 20 7b 0d | 20 20 20 20 69 66 20 28 |ame)) {.| if (|
|000019d0| 20 28 6c 6f 6e 67 29 77 | 69 6e 64 6f 77 70 6f 69 | (long)w|indowpoi|
|000019e0| 6e 74 28 6e 65 77 6e 61 | 6d 65 29 20 21 3d 20 30 |nt(newna|me) != 0|
|000019f0| 4c 20 29 20 7b 0d 20 20 | 20 20 20 20 69 66 20 28 |L ) {. | if (|
|00001a00| 6d 65 73 73 61 67 65 20 | 28 22 53 6f 72 72 79 2c |message |("Sorry,|
|00001a10| 20 61 20 77 69 6e 64 6f | 77 20 62 79 20 74 68 61 | a windo|w by tha|
|00001a20| 74 20 6e 61 6d 65 20 61 | 6c 72 65 61 64 79 20 65 |t name a|lready e|
|00001a30| 78 69 73 74 73 2e 22 29 | 29 20 0d 20 20 20 20 20 |xists.")|) . |
|00001a40| 20 20 20 67 6f 74 6f 20 | 72 65 74 72 79 3b 09 09 | goto |retry;..|
|00001a50| 2f 2a 20 69 66 20 65 78 | 69 73 74 73 2c 20 61 73 |/* if ex|ists, as|
|00001a60| 6b 20 66 6f 72 20 61 6e | 6f 74 68 65 72 20 6e 61 |k for an|other na|
|00001a70| 6d 65 20 2a 2f 0d 20 20 | 20 20 7d 20 65 6c 73 65 |me */. | } else|
|00001a80| 20 7b 0d 20 20 20 20 20 | 20 69 66 20 28 20 73 74 | {. | if ( st|
|00001a90| 72 6c 65 6e 28 6e 65 77 | 6e 61 6d 65 29 20 3e 20 |rlen(new|name) > |
|00001aa0| 30 29 20 20 7b 20 20 2f | 2a 20 69 66 20 6f 6b 2c |0) { /|* if ok,|
|00001ab0| 20 6d 61 6b 65 20 74 68 | 65 20 6e 65 77 20 77 69 | make th|e new wi|
|00001ac0| 6e 64 6f 77 20 2a 2f 0d | 20 20 20 20 20 20 20 20 |ndow */.| |
|00001ad0| 2f 2a 20 74 68 65 6e 20 | 69 74 20 69 73 20 6e 65 |/* then |it is ne|
|00001ae0| 77 20 2a 2f 0d 20 20 20 | 20 20 20 20 20 77 69 6e |w */. | win|
|00001af0| 64 6f 77 20 28 6e 65 77 | 6e 61 6d 65 2c 20 32 30 |dow (new|name, 20|
|00001b00| 2c 74 6f 70 70 6c 61 63 | 65 2c 20 32 30 30 2c 74 |,topplac|e, 200,t|
|00001b10| 6f 70 70 6c 61 63 65 2b | 36 30 2c 20 0d 09 20 20 |opplace+|60, .. |
|00001b20| 73 6b 65 74 61 63 74 69 | 76 61 74 65 2c 20 73 6b |sketacti|vate, sk|
|00001b30| 65 74 64 65 61 63 74 69 | 76 61 74 65 2c 20 6e 6f |etdeacti|vate, no|
|00001b40| 70 2c 20 73 6b 65 74 63 | 68 29 3b 0d 20 20 20 20 |p, sketc|h);. |
|00001b50| 20 20 20 20 74 6f 70 70 | 6c 61 63 65 20 2b 3d 20 | topp|lace += |
|00001b60| 35 3b 09 09 2f 2a 20 61 | 64 6a 75 73 74 20 74 6f |5;../* a|djust to|
|00001b70| 70 20 66 6f 72 20 6e 65 | 78 74 20 6e 65 77 20 77 |p for ne|xt new w|
|00001b80| 69 6e 64 6f 77 20 2a 2f | 0d 20 20 20 20 20 20 20 |indow */|. |
|00001b90| 20 69 66 20 28 74 6f 70 | 70 6c 61 63 65 20 3e 20 | if (top|place > |
|00001ba0| 33 30 30 29 20 74 6f 70 | 70 6c 61 63 65 20 3d 20 |300) top|place = |
|00001bb0| 31 30 30 3b 20 20 2f 2a | 20 72 65 73 65 74 20 74 |100; /*| reset t|
|00001bc0| 6f 70 20 69 66 20 74 6f | 6f 20 6c 6f 77 20 2a 2f |op if to|o low */|
|00001bd0| 0d 20 20 20 20 20 20 7d | 0d 20 20 20 20 7d 0d 20 |. }|. }. |
|00001be0| 20 7d 0d 7d 0d 0d 2f 2a | 2a 2a 2a 2a 2a 2a 2a 2a | }.}../*|********|
|00001bf0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2f 0d 2f |********|*****/./|
|00001c00| 2a 20 20 41 62 6f 75 74 | 20 53 69 6d 70 6c 65 44 |* About| SimpleD|
|00001c10| 65 6d 6f 20 20 2a 2f 0d | 2f 2a 2a 2a 2a 2a 2a 2a |emo */.|/*******|
|00001c20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2f |********|*******/|
|00001c30| 0d 0d 75 73 61 67 65 69 | 6e 66 6f 28 29 09 09 2f |..usagei|nfo()../|
|00001c40| 2a 20 6d 65 73 73 61 67 | 65 73 20 66 6f 72 20 55 |* messag|es for U|
|00001c50| 73 61 67 65 20 49 6e 66 | 6f 20 6d 65 6e 75 20 63 |sage Inf|o menu c|
|00001c60| 68 6f 69 63 65 20 2a 2f | 0d 7b 0d 20 20 63 68 61 |hoice */|.{. cha|
|00001c70| 72 20 6d 65 73 73 5b 32 | 35 35 5d 3b 09 2f 2a 20 |r mess[2|55];./* |
|00001c80| 73 74 72 69 6e 67 20 74 | 6f 20 66 6f 72 6d 20 61 |string t|o form a|
|00001c90| 20 6d 65 73 73 61 67 65 | 20 2a 2f 0d 20 20 73 74 | message| */. st|
|00001ca0| 72 63 70 79 20 28 6d 65 | 73 73 2c 22 59 6f 75 20 |rcpy (me|ss,"You |
|00001cb0| 6d 61 79 20 75 73 65 2c | 20 64 69 73 74 72 69 62 |may use,| distrib|
|00001cc0| 75 74 65 20 79 6f 75 72 | 20 70 72 6f 67 72 61 6d |ute your| program|
|00001cd0| 73 20 77 68 69 63 68 20 | 75 73 65 2c 20 22 29 3b |s which |use, ");|
|00001ce0| 0d 20 20 73 74 72 63 61 | 74 20 28 6d 65 73 73 2c |. strca|t (mess,|
|00001cf0| 22 61 6e 64 20 63 6f 70 | 79 20 53 69 6d 70 6c 65 |"and cop|y Simple|
|00001d00| 54 6f 6f 6c 73 20 69 66 | 20 79 6f 75 20 73 65 6e |Tools if| you sen|
|00001d10| 64 20 22 29 3b 0d 20 20 | 73 74 72 63 61 74 20 28 |d ");. |strcat (|
|00001d20| 6d 65 73 73 2c 22 24 32 | 30 20 6f 72 20 6d 6f 72 |mess,"$2|0 or mor|
|00001d30| 65 20 74 6f 20 2e 2e 2e | 22 29 3b 0d 20 20 69 66 |e to ...|");. if|
|00001d40| 20 28 6d 65 73 73 61 67 | 65 20 28 6d 65 73 73 29 | (messag|e (mess)|
|00001d50| 29 20 7b 20 20 2f 2a 20 | 69 66 20 4f 4b 20 70 72 |) { /* |if OK pr|
|00001d60| 65 73 73 65 64 20 66 6f | 72 20 66 69 72 73 74 20 |essed fo|r first |
|00001d70| 6d 65 73 73 61 67 65 20 | 2a 2f 0d 20 20 20 20 73 |message |*/. s|
|00001d80| 74 72 63 70 79 20 28 6d | 65 73 73 2c 20 22 45 72 |trcpy (m|ess, "Er|
|00001d90| 69 6b 20 4b 69 6c 6b 5c | 72 34 39 34 39 20 53 6e |ik Kilk\|r4949 Sn|
|00001da0| 79 64 65 72 20 4c 61 6e | 65 2c 20 23 32 34 37 5c |yder Lan|e, #247\|
|00001db0| 72 22 29 3b 0d 20 20 20 | 20 73 74 72 63 61 74 20 |r");. | strcat |
|00001dc0| 28 6d 65 73 73 2c 20 22 | 52 6f 68 6e 65 72 74 20 |(mess, "|Rohnert |
|00001dd0| 50 61 72 6b 2c 20 43 41 | 20 20 39 34 39 32 38 22 |Park, CA| 94928"|
|00001de0| 29 3b 0d 20 20 20 20 69 | 66 20 28 6d 65 73 73 61 |);. i|f (messa|
|00001df0| 67 65 20 28 6d 65 73 73 | 29 29 20 20 2f 2a 20 69 |ge (mess|)) /* i|
|00001e00| 66 20 4f 4b 20 70 72 65 | 73 73 65 64 20 66 6f 72 |f OK pre|ssed for|
|00001e10| 20 32 6e 64 20 6d 65 73 | 73 61 67 65 20 2a 2f 0d | 2nd mes|sage */.|
|00001e20| 20 20 20 20 20 20 6d 65 | 73 73 61 67 65 20 28 22 | me|ssage ("|
|00001e30| 54 68 61 6e 6b 20 79 6f | 75 20 66 6f 72 20 79 6f |Thank yo|u for yo|
|00001e40| 75 72 20 73 75 70 70 6f | 72 74 2e 22 29 3b 20 20 |ur suppo|rt."); |
|00001e50| 2f 2a 20 73 68 6f 77 20 | 66 69 6e 61 6c 20 6d 65 |/* show |final me|
|00001e60| 73 73 61 67 65 20 2a 2f | 0d 20 20 7d 0d 7d 0d 0d |ssage */|. }.}..|
|00001e70| 74 65 6c 6c 61 62 6f 75 | 74 28 29 09 09 2f 2a 20 |tellabou|t()../* |
|00001e80| 66 6f 72 20 74 68 65 20 | 41 62 6f 75 74 20 53 69 |for the |About Si|
|00001e90| 6d 70 6c 65 44 65 6d 6f | 20 6d 65 6e 75 20 63 68 |mpleDemo| menu ch|
|00001ea0| 6f 69 63 65 20 2a 2f 0d | 7b 0d 20 20 63 68 61 72 |oice */.|{. char|
|00001eb0| 20 6d 65 73 73 5b 32 35 | 35 5d 3b 09 2f 2a 20 73 | mess[25|5];./* s|
|00001ec0| 74 72 69 6e 67 20 74 6f | 20 66 6f 72 6d 20 61 20 |tring to| form a |
|00001ed0| 6d 65 73 73 61 67 65 20 | 2a 2f 0d 20 20 73 74 72 |message |*/. str|
|00001ee0| 63 70 79 20 28 6d 65 73 | 73 2c 22 53 69 6d 70 6c |cpy (mes|s,"Simpl|
|00001ef0| 65 44 65 6d 6f 20 2d 2d | 20 43 6f 70 79 72 69 67 |eDemo --| Copyrig|
|00001f00| 68 74 20 31 39 38 36 20 | 45 72 69 6b 20 4b 69 6c |ht 1986 |Erik Kil|
|00001f10| 6b 5c 72 22 29 3b 0d 20 | 20 73 74 72 63 61 74 20 |k\r");. | strcat |
|00001f20| 28 6d 65 73 73 2c 22 41 | 20 64 65 6d 6f 6e 73 74 |(mess,"A| demonst|
|00001f30| 72 61 74 69 6f 6e 20 6f | 66 20 74 68 65 20 75 73 |ration o|f the us|
|00001f40| 65 20 6f 66 20 53 69 6d | 70 6c 65 54 6f 6f 6c 73 |e of Sim|pleTools|
|00001f50| 22 29 3b 0d 20 20 73 74 | 72 63 61 74 20 28 6d 65 |");. st|rcat (me|
|00001f60| 73 73 2c 22 20 61 73 20 | 61 20 4d 61 63 69 6e 74 |ss," as |a Macint|
|00001f70| 6f 73 68 20 74 6f 6f 6c | 62 6f 78 20 61 69 64 2e |osh tool|box aid.|
|00001f80| 22 29 3b 0d 20 20 69 66 | 20 28 6d 65 73 73 61 67 |");. if| (messag|
|00001f90| 65 20 28 6d 65 73 73 29 | 29 09 2f 2a 20 64 69 73 |e (mess)|)./* dis|
|00001fa0| 70 6c 61 79 20 74 68 65 | 20 73 74 72 69 6e 67 20 |play the| string |
|00001fb0| 69 6e 20 61 20 64 69 61 | 6c 6f 67 20 2a 2f 0d 20 |in a dia|log */. |
|00001fc0| 20 20 20 75 73 61 67 65 | 69 6e 66 6f 28 29 3b 0d | usage|info();.|
|00001fd0| 7d 0d 20 20 0d 2f 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |}. ./**|********|
|00001fe0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001ff0| 2f 0d 2f 2a 20 54 68 65 | 20 66 72 65 65 20 6d 65 |/./* The| free me|
|00002000| 6d 6f 72 79 20 77 69 6e | 64 6f 77 20 2a 2f 0d 2f |mory win|dow */./|
|00002010| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002020| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2f 0d 0d 77 72 69 |********|**/..wri|
|00002030| 74 65 6d 65 6d 28 66 6f | 72 73 75 72 65 29 09 09 |temem(fo|rsure)..|
|00002040| 09 2f 2a 20 77 72 69 74 | 65 20 74 68 65 20 46 72 |./* writ|e the Fr|
|00002050| 65 65 4d 65 6d 20 76 61 | 6c 75 65 20 2a 2f 0d 69 |eeMem va|lue */.i|
|00002060| 6e 74 20 66 6f 72 73 75 | 72 65 3b 09 09 09 09 2f |nt forsu|re;..../|
|00002070| 2a 20 74 72 75 65 20 69 | 66 20 66 6f 72 63 65 20 |* true i|f force |
|00002080| 77 72 69 74 65 20 2a 2f | 0d 7b 09 09 09 09 09 2f |write */|.{...../|
|00002090| 2a 20 66 61 6c 73 65 20 | 69 66 20 6f 6e 6c 79 20 |* false |if only |
|000020a0| 6f 6e 20 63 68 61 6e 67 | 65 20 2a 2f 0d 20 20 73 |on chang|e */. s|
|000020b0| 74 61 74 69 63 20 6c 6f | 6e 67 20 6c 61 73 74 6d |tatic lo|ng lastm|
|000020c0| 65 6d 3b 0d 20 20 6c 6f | 6e 67 20 6d 65 6d 3b 0d |em;. lo|ng mem;.|
|000020d0| 20 20 69 6e 74 20 66 6f | 6f 3b 0d 20 20 63 68 61 | int fo|o;. cha|
|000020e0| 72 20 74 68 65 73 74 72 | 69 6e 67 5b 31 30 5d 2c |r thestr|ing[10],|
|000020f0| 20 6f 75 74 73 74 72 5b | 31 30 5d 3b 0d 20 20 52 | outstr[|10];. R|
|00002100| 65 63 74 20 65 72 61 73 | 65 61 72 65 61 3b 0d 20 |ect eras|earea;. |
|00002110| 20 6d 65 6d 20 3d 20 46 | 72 65 65 4d 65 6d 28 29 | mem = F|reeMem()|
|00002120| 3b 09 09 09 2f 2a 20 67 | 65 74 20 6e 65 77 20 66 |;.../* g|et new f|
|00002130| 72 65 65 20 6d 65 6d 6f | 72 79 20 2a 2f 0d 20 20 |ree memo|ry */. |
|00002140| 66 6f 6f 20 3d 20 6d 65 | 6d 20 21 3d 20 6c 61 73 |foo = me|m != las|
|00002150| 74 6d 65 6d 3b 09 09 09 | 2f 2a 20 63 6f 6d 70 61 |tmem;...|/* compa|
|00002160| 72 65 20 69 74 20 74 6f | 20 6c 61 73 74 20 72 65 |re it to| last re|
|00002170| 61 64 69 6e 67 20 2a 2f | 0d 20 20 69 66 20 28 20 |ading */|. if ( |
|00002180| 66 6f 72 73 75 72 65 20 | 7c 20 66 6f 6f 20 29 20 |forsure || foo ) |
|00002190| 7b 09 09 2f 2a 20 69 66 | 20 66 6f 72 73 75 72 65 |{../* if| forsure|
|000021a0| 20 6f 72 20 64 69 66 66 | 65 72 65 6e 74 20 2a 2f | or diff|erent */|
|000021b0| 0d 20 20 20 20 77 69 74 | 68 77 69 6e 64 6f 77 20 |. wit|hwindow |
|000021c0| 28 22 46 72 65 65 4d 65 | 6d 22 29 3b 09 09 2f 2a |("FreeMe|m");../*|
|000021d0| 20 73 65 74 20 77 69 6e | 64 6f 77 20 66 6f 72 20 | set win|dow for |
|000021e0| 6f 75 74 70 75 74 20 2a | 2f 0d 20 20 20 20 68 6f |output *|/. ho|
|000021f0| 6d 65 28 29 3b 0d 20 20 | 20 20 4d 6f 76 65 54 6f |me();. | MoveTo|
|00002200| 20 28 30 2c 20 31 32 29 | 3b 09 09 09 2f 2a 20 77 | (0, 12)|;.../* w|
|00002210| 72 69 74 65 20 6e 65 77 | 20 76 61 6c 75 65 20 2a |rite new| value *|
|00002220| 2f 0d 20 20 20 20 4e 75 | 6d 54 6f 53 74 72 69 6e |/. Nu|mToStrin|
|00002230| 67 20 28 6d 65 6d 2c 20 | 74 68 65 73 74 72 69 6e |g (mem, |thestrin|
|00002240| 67 29 3b 0d 20 20 20 20 | 23 69 66 6e 64 65 66 20 |g);. |#ifndef |
|00002250| 4d 45 47 41 4d 41 58 0d | 20 20 20 20 20 20 50 74 |MEGAMAX.| Pt|
|00002260| 6f 43 73 74 72 20 28 74 | 68 65 73 74 72 69 6e 67 |oCstr (t|hestring|
|00002270| 29 3b 0d 20 20 20 20 23 | 65 6e 64 69 66 0d 20 20 |);. #|endif. |
|00002280| 20 20 73 74 72 63 70 79 | 20 28 6f 75 74 73 74 72 | strcpy| (outstr|
|00002290| 2c 20 22 20 46 72 65 65 | 20 22 29 3b 0d 20 20 20 |, " Free| ");. |
|000022a0| 20 73 74 72 63 61 74 20 | 28 6f 75 74 73 74 72 2c | strcat |(outstr,|
|000022b0| 20 74 68 65 73 74 72 69 | 6e 67 29 3b 0d 20 20 20 | thestri|ng);. |
|000022c0| 20 23 69 66 6e 64 65 66 | 20 4d 45 47 41 4d 41 58 | #ifndef| MEGAMAX|
|000022d0| 0d 20 20 20 20 20 20 43 | 74 6f 50 73 74 72 20 28 |. C|toPstr (|
|000022e0| 6f 75 74 73 74 72 29 3b | 0d 20 20 20 20 23 65 6e |outstr);|. #en|
|000022f0| 64 69 66 0d 20 20 20 20 | 44 72 61 77 53 74 72 69 |dif. |DrawStri|
|00002300| 6e 67 20 28 6f 75 74 73 | 74 72 29 3b 0d 20 20 20 |ng (outs|tr);. |
|00002310| 20 6c 61 73 74 6d 65 6d | 20 3d 20 6d 65 6d 3b 09 | lastmem| = mem;.|
|00002320| 09 09 2f 2a 20 72 65 63 | 6f 72 64 20 74 68 69 73 |../* rec|ord this|
|00002330| 20 66 6f 72 20 6e 65 78 | 74 20 74 69 6d 65 20 2a | for nex|t time *|
|00002340| 2f 0d 20 20 7d 0d 7d 0d | 0d 73 68 6f 77 6d 65 6d |/. }.}.|.showmem|
|00002350| 28 77 69 6e 64 70 29 09 | 09 09 09 2f 2a 20 77 72 |(windp).|.../* wr|
|00002360| 69 74 65 20 46 72 65 65 | 4d 65 6d 20 6f 6e 20 61 |ite Free|Mem on a|
|00002370| 6e 20 75 70 64 61 74 65 | 20 2a 2f 0d 57 69 6e 64 |n update| */.Wind|
|00002380| 6f 77 50 74 72 20 77 69 | 6e 64 70 3b 0d 7b 0d 20 |owPtr wi|ndp;.{. |
|00002390| 20 45 6e 64 55 70 64 61 | 74 65 20 28 77 69 6e 64 | EndUpda|te (wind|
|000023a0| 70 29 3b 09 09 09 2f 2a | 20 61 6c 6c 6f 77 20 75 |p);.../*| allow u|
|000023b0| 73 65 20 6f 66 20 65 6e | 74 69 72 65 20 77 69 6e |se of en|tire win|
|000023c0| 64 6f 77 20 2a 2f 0d 20 | 20 77 72 69 74 65 6d 65 |dow */. | writeme|
|000023d0| 6d 28 54 52 55 45 29 3b | 09 09 09 2f 2a 20 63 6c |m(TRUE);|.../* cl|
|000023e0| 65 61 72 20 61 6e 64 20 | 77 72 69 74 65 20 6e 65 |ear and |write ne|
|000023f0| 77 20 76 61 6c 75 65 20 | 2a 2f 0d 20 20 42 65 67 |w value |*/. Beg|
|00002400| 69 6e 55 70 64 61 74 65 | 20 28 77 69 6e 64 70 29 |inUpdate| (windp)|
|00002410| 3b 0d 7d 0d 0d 6e 65 77 | 6d 65 6d 76 61 6c 75 65 |;.}..new|memvalue|
|00002420| 28 29 09 09 09 09 2f 2a | 20 77 72 69 74 65 20 46 |()..../*| write F|
|00002430| 72 65 65 4d 65 6d 20 6f | 63 63 61 73 69 6f 6e 61 |reeMem o|ccasiona|
|00002440| 6c 6c 79 20 2a 2f 0d 7b | 0d 20 20 77 72 69 74 65 |lly */.{|. write|
|00002450| 6d 65 6d 28 46 41 4c 53 | 45 29 3b 09 09 09 2f 2a |mem(FALS|E);.../*|
|00002460| 20 77 72 69 74 65 20 6f | 6e 6c 79 20 69 66 20 76 | write o|nly if v|
|00002470| 61 6c 75 65 20 63 68 61 | 6e 67 65 64 20 2a 2f 0d |alue cha|nged */.|
|00002480| 7d 0d 0d 2f 2a 20 54 68 | 69 73 20 69 73 20 61 20 |}../* Th|is is a |
|00002490| 73 70 65 63 69 61 6c 2c | 20 6e 6f 6e 2d 73 74 61 |special,| non-sta|
|000024a0| 6e 64 61 72 64 2c 20 6d | 65 74 68 6f 64 20 6f 66 |ndard, m|ethod of|
|000024b0| 20 6d 6f 76 69 6e 67 20 | 61 20 77 69 6e 64 6f 77 | moving |a window|
|000024c0| 2e 20 20 4f 75 72 0d 20 | 20 20 66 72 65 65 20 6d |. Our. | free m|
|000024d0| 65 6d 6f 72 79 20 77 69 | 6e 64 6f 77 20 64 6f 65 |emory wi|ndow doe|
|000024e0| 73 20 6e 6f 74 20 68 61 | 76 65 20 61 20 74 69 74 |s not ha|ve a tit|
|000024f0| 6c 65 20 62 61 72 2e 20 | 20 53 6f 2c 20 49 20 68 |le bar. | So, I h|
|00002500| 61 76 65 20 64 65 63 69 | 64 65 64 0d 20 20 20 74 |ave deci|ded. t|
|00002510| 6f 20 61 6c 6c 6f 77 20 | 69 74 20 74 6f 20 62 65 |o allow |it to be|
|00002520| 20 6d 6f 76 65 64 20 69 | 66 20 74 68 65 20 6d 6f | moved i|f the mo|
|00002530| 75 73 65 20 69 73 20 63 | 6c 69 63 6b 65 64 20 69 |use is c|licked i|
|00002540| 6e 20 69 74 73 20 63 6f | 6e 74 65 6e 74 0d 20 20 |n its co|ntent. |
|00002550| 20 52 65 67 69 6f 6e 2e | 20 20 54 68 69 73 20 72 | Region.| This r|
|00002560| 6f 75 74 69 6e 65 20 69 | 73 20 61 74 74 61 63 68 |outine i|s attach|
|00002570| 65 64 20 74 6f 20 74 68 | 65 20 66 72 65 65 20 6d |ed to th|e free m|
|00002580| 65 6d 6f 72 79 20 69 6e | 20 63 6f 6e 74 65 6e 74 |emory in| content|
|00002590| 0d 20 20 20 70 72 6f 63 | 65 64 75 72 65 20 77 69 |. proc|edure wi|
|000025a0| 74 68 20 53 69 6d 70 6c | 65 54 6f 6f 6c 73 2e 20 |th Simpl|eTools. |
|000025b0| 20 53 69 6d 70 6c 65 54 | 6f 6f 6c 73 20 63 6f 6e | SimpleT|ools con|
|000025c0| 76 65 6e 69 65 6e 6c 79 | 20 67 69 76 65 73 20 75 |venienly| gives u|
|000025d0| 73 0d 20 20 20 76 61 72 | 69 6f 75 73 20 70 61 72 |s. var|ious par|
|000025e0| 61 6d 65 74 65 72 73 2c | 20 68 65 72 65 20 77 65 |ameters,| here we|
|000025f0| 20 6e 65 65 64 20 74 68 | 65 20 77 69 6e 64 6f 77 | need th|e window|
|00002600| 20 70 6f 69 6e 74 65 72 | 20 61 6e 64 20 74 68 65 | pointer| and the|
|00002610| 20 65 76 65 6e 74 0d 20 | 20 20 72 65 63 6f 72 64 | event. | record|
|00002620| 2e 20 20 54 68 65 20 65 | 76 65 6e 74 20 72 65 63 |. The e|vent rec|
|00002630| 6f 72 64 20 68 61 73 20 | 74 68 65 20 63 6f 6f 72 |ord has |the coor|
|00002640| 64 69 6e 61 74 65 73 20 | 6f 66 20 74 68 65 20 6d |dinates |of the m|
|00002650| 6f 75 73 65 20 69 6e 0d | 20 20 20 67 6c 6f 62 61 |ouse in.| globa|
|00002660| 6c 73 20 2a 2f 0d 20 20 | 20 0d 6d 6f 76 65 6d 65 |ls */. | .moveme|
|00002670| 6d 28 78 2c 79 2c 77 69 | 6e 64 70 2c 65 76 65 6e |m(x,y,wi|ndp,even|
|00002680| 74 29 09 2f 2a 20 66 72 | 65 65 20 6d 65 6d 27 73 |t)./* fr|ee mem's|
|00002690| 20 69 6e 43 6f 6e 74 65 | 6e 74 20 70 72 6f 63 65 | inConte|nt proce|
|000026a0| 64 75 72 65 20 2a 2f 0d | 69 6e 74 20 78 2c 79 3b |dure */.|int x,y;|
|000026b0| 09 09 09 2f 2a 20 53 69 | 6d 70 6c 65 54 6f 6f 6c |.../* Si|mpleTool|
|000026c0| 73 20 67 69 76 65 73 20 | 75 73 20 74 68 65 73 65 |s gives |us these|
|000026d0| 20 66 6f 72 20 2a 2f 0d | 57 69 6e 64 6f 77 50 74 | for */.|WindowPt|
|000026e0| 72 20 77 69 6e 64 70 3b | 09 09 2f 2a 20 61 6e 20 |r windp;|../* an |
|000026f0| 69 6e 2d 63 6f 6e 74 65 | 6e 74 20 70 72 6f 63 65 |in-conte|nt proce|
|00002700| 64 75 72 65 20 2a 2f 0d | 45 76 65 6e 74 52 65 63 |dure */.|EventRec|
|00002710| 6f 72 64 20 2a 65 76 65 | 6e 74 3b 0d 7b 0d 20 20 |ord *eve|nt;.{. |
|00002720| 23 69 66 64 65 66 20 4d | 45 47 41 4d 41 58 0d 20 |#ifdef M|EGAMAX. |
|00002730| 20 09 44 72 61 67 57 69 | 6e 64 6f 77 20 28 77 69 | .DragWi|ndow (wi|
|00002740| 6e 64 70 2c 20 26 28 65 | 76 65 6e 74 2d 3e 77 68 |ndp, &(e|vent->wh|
|00002750| 65 72 65 29 2c 20 26 64 | 72 61 67 29 3b 0d 20 20 |ere), &d|rag);. |
|00002760| 23 65 6c 73 65 0d 20 20 | 09 44 72 61 67 57 69 6e |#else. |.DragWin|
|00002770| 64 6f 77 20 28 77 69 6e | 64 70 2c 20 65 76 65 6e |dow (win|dp, even|
|00002780| 74 2d 3e 77 68 65 72 65 | 2c 20 26 64 72 61 67 29 |t->where|, &drag)|
|00002790| 3b 0d 20 20 23 65 6e 64 | 69 66 0d 7d 0d 0d 2f 2a |;. #end|if.}../*|
|000027a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000027b0| 2a 2a 2a 2a 2a 2a 2a 2f | 0d 2f 2a 20 20 20 51 75 |*******/|./* Qu|
|000027c0| 65 73 74 69 6f 6e 20 77 | 69 6e 64 6f 77 20 20 20 |estion w|indow |
|000027d0| 20 2a 2f 0d 2f 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | */./***|********|
|000027e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2f 0d 0d |********|*****/..|
|000027f0| 71 75 65 73 74 5f 75 70 | 64 61 74 65 20 28 29 09 |quest_up|date ().|
|00002800| 09 09 09 2f 2a 20 72 65 | 70 61 69 6e 74 20 71 75 |.../* re|paint qu|
|00002810| 65 73 74 69 6f 6e 20 77 | 69 6e 64 6f 77 09 2a 2f |estion w|indow.*/|
|00002820| 0d 7b 0d 20 20 20 20 73 | 74 67 6f 74 6f 78 79 20 |.{. s|tgotoxy |
|00002830| 28 30 2c 20 30 29 3b 09 | 09 09 2f 2a 20 74 6f 70 |(0, 0);.|../* top|
|00002840| 20 6c 65 66 74 20 63 6f | 72 6e 65 72 20 74 65 78 | left co|rner tex|
|00002850| 74 77 69 73 65 09 2a 2f | 0d 20 20 20 20 73 74 72 |twise.*/|. str|
|00002860| 63 70 79 20 28 6f 75 74 | 73 74 72 69 6e 67 2c 20 |cpy (out|string, |
|00002870| 22 48 65 6c 6c 6f 2c 20 | 22 29 3b 0d 20 20 20 20 |"Hello, |");. |
|00002880| 73 74 72 63 61 74 20 28 | 6f 75 74 73 74 72 69 6e |strcat (|outstrin|
|00002890| 67 2c 20 6e 61 6d 65 29 | 3b 0d 20 20 20 20 23 69 |g, name)|;. #i|
|000028a0| 66 6e 64 65 66 20 4d 45 | 47 41 4d 41 58 0d 20 20 |fndef ME|GAMAX. |
|000028b0| 20 20 09 43 74 6f 50 73 | 74 72 28 6f 75 74 73 74 | .CtoPs|tr(outst|
|000028c0| 72 69 6e 67 29 3b 0d 20 | 20 20 20 23 65 6e 64 69 |ring);. | #endi|
|000028d0| 66 0d 20 20 20 20 44 72 | 61 77 53 74 72 69 6e 67 |f. Dr|awString|
|000028e0| 28 6f 75 74 73 74 72 69 | 6e 67 29 3b 0d 7d 0d 0d |(outstri|ng);.}..|
|000028f0| 71 75 65 73 74 5f 67 65 | 74 6e 61 6d 65 20 28 29 |quest_ge|tname ()|
|00002900| 09 09 09 2f 2a 20 67 65 | 74 20 61 20 6e 61 6d 65 |.../* ge|t a name|
|00002910| 20 69 6e 20 71 75 65 73 | 74 20 77 69 6e 64 6f 77 | in ques|t window|
|00002920| 09 2a 2f 0d 7b 0d 20 20 | 20 20 67 65 74 6c 69 6e |.*/.{. | getlin|
|00002930| 65 63 61 70 73 20 3d 20 | 54 52 55 45 3b 09 09 09 |ecaps = |TRUE;...|
|00002940| 2f 2a 20 66 6f 72 63 65 | 20 65 61 63 68 20 77 6f |/* force| each wo|
|00002950| 72 64 20 74 6f 20 62 65 | 20 63 61 70 27 64 09 2a |rd to be| cap'd.*|
|00002960| 2f 0d 20 20 20 20 73 68 | 6f 77 61 77 69 6e 64 6f |/. sh|owawindo|
|00002970| 77 20 28 22 51 75 65 73 | 74 69 6f 6e 73 22 29 3b |w ("Ques|tions");|
|00002980| 09 09 2f 2a 20 6d 61 6b | 65 20 77 69 6e 64 6f 77 |../* mak|e window|
|00002990| 20 61 63 74 69 76 65 09 | 09 2a 2f 0d 20 20 20 20 | active.|.*/. |
|000029a0| 71 75 65 73 74 5f 75 70 | 64 61 74 65 20 28 29 3b |quest_up|date ();|
|000029b0| 0d 20 20 20 20 73 74 67 | 6f 74 6f 78 79 20 28 30 |. stg|otoxy (0|
|000029c0| 2c 20 32 29 3b 09 09 09 | 2f 2a 20 33 72 64 20 72 |, 2);...|/* 3rd r|
|000029d0| 6f 77 2c 20 66 61 72 20 | 6c 65 66 74 20 74 65 78 |ow, far |left tex|
|000029e0| 74 77 69 73 65 09 2a 2f | 0d 20 20 20 20 73 74 72 |twise.*/|. str|
|000029f0| 63 70 79 20 28 6f 75 74 | 73 74 72 69 6e 67 2c 22 |cpy (out|string,"|
|00002a00| 57 68 61 74 20 69 73 20 | 79 6f 75 72 20 6e 61 6d |What is |your nam|
|00002a10| 65 3f 20 22 29 3b 20 20 | 0d 20 20 20 20 23 69 66 |e? "); |. #if|
|00002a20| 6e 64 65 66 20 4d 45 47 | 41 4d 41 58 0d 20 20 20 |ndef MEG|AMAX. |
|00002a30| 20 09 43 74 6f 50 73 74 | 72 20 28 6f 75 74 73 74 | .CtoPst|r (outst|
|00002a40| 72 69 6e 67 29 3b 0d 20 | 20 20 20 23 65 6e 64 69 |ring);. | #endi|
|00002a50| 66 0d 20 20 20 20 44 72 | 61 77 53 74 72 69 6e 67 |f. Dr|awString|
|00002a60| 20 28 6f 75 74 73 74 72 | 69 6e 67 29 3b 0d 20 20 | (outstr|ing);. |
|00002a70| 20 20 67 65 74 6c 69 6e | 65 20 28 22 22 2c 20 6e | getlin|e ("", n|
|00002a80| 61 6d 65 29 3b 09 09 09 | 2f 2a 20 61 73 6b 20 66 |ame);...|/* ask f|
|00002a90| 6f 72 20 6e 61 6d 65 20 | 6f 66 20 75 73 65 72 09 |or name |of user.|
|00002aa0| 09 2a 2f 0d 20 20 20 20 | 68 6f 6d 65 20 28 29 3b |.*/. |home ();|
|00002ab0| 09 09 09 09 2f 2a 20 65 | 72 61 73 65 20 74 68 65 |..../* e|rase the|
|00002ac0| 20 77 69 6e 64 6f 77 09 | 09 2a 2f 0d 20 20 20 20 | window.|.*/. |
|00002ad0| 71 75 65 73 74 5f 75 70 | 64 61 74 65 20 28 29 3b |quest_up|date ();|
|00002ae0| 09 09 09 2f 2a 20 72 65 | 70 61 69 6e 74 20 74 68 |.../* re|paint th|
|00002af0| 65 20 77 69 6e 64 6f 77 | 09 09 2a 2f 0d 7d 0d 0d |e window|..*/.}..|
|00002b00| 2f 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |/*******|********|
|00002b10| 2a 2a 2a 2a 2a 2a 2a 2f | 0d 2f 2a 20 20 20 49 6e |*******/|./* In|
|00002b20| 69 74 69 61 6c 69 7a 61 | 74 69 6f 6e 20 20 20 2a |itializa|tion *|
|00002b30| 2f 0d 2f 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |/./*****|********|
|00002b40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2f 0d 0d 73 65 74 75 |********|*/..setu|
|00002b50| 70 28 29 09 09 2f 2a 20 | 74 6f 20 62 65 20 63 61 |p()../* |to be ca|
|00002b60| 6c 6c 65 64 20 77 69 74 | 68 20 53 74 61 72 74 20 |lled wit|h Start |
|00002b70| 44 65 6d 6f 20 6d 65 6e | 75 20 63 68 6f 69 63 65 |Demo men|u choice|
|00002b80| 20 2a 2f 0d 7b 0d 20 20 | 69 6e 74 20 74 65 6d 70 | */.{. |int temp|
|00002b90| 3b 0d 20 20 73 74 72 63 | 70 79 20 28 6e 61 6d 65 |;. strc|py (name|
|00002ba0| 2c 20 22 57 6f 72 6c 64 | 22 29 3b 0d 20 20 53 65 |, "World|");. Se|
|00002bb0| 74 52 65 63 74 20 28 26 | 64 72 61 67 2c 20 34 2c |tRect (&|drag, 4,|
|00002bc0| 20 32 34 2c 20 35 30 38 | 2c 20 33 33 38 29 3b 20 | 24, 508|, 338); |
|00002bd0| 20 2f 2a 20 64 72 61 67 | 20 61 72 65 61 20 66 6f | /* drag| area fo|
|00002be0| 72 20 66 72 65 65 20 6d | 65 6d 20 77 69 6e 64 6f |r free m|em windo|
|00002bf0| 77 20 2a 2f 0d 20 20 77 | 69 6e 64 6d 65 6e 75 20 |w */. w|indmenu |
|00002c00| 3d 20 46 41 4c 53 45 3b | 09 2f 2a 20 6d 6f 64 69 |= FALSE;|./* modi|
|00002c10| 66 79 20 64 65 66 61 75 | 6c 74 20 76 61 6c 75 65 |fy defau|lt value|
|00002c20| 73 2c 20 6f 70 74 69 6f | 6e 61 6c 20 2a 2f 0d 20 |s, optio|nal */. |
|00002c30| 20 64 6f 67 6f 61 77 61 | 79 20 3d 20 46 41 4c 53 | dogoawa|y = FALS|
|00002c40| 45 3b 09 2f 2a 20 6f 70 | 74 69 6f 6e 61 6c 20 63 |E;./* op|tional c|
|00002c50| 68 61 6e 67 65 20 2a 2f | 0d 20 20 77 69 6e 64 6f |hange */|. windo|
|00002c60| 77 28 22 43 69 72 63 6c | 65 73 22 2c 20 32 30 2c |w("Circl|es", 20,|
|00002c70| 20 35 35 2c 20 32 34 35 | 2c 20 33 31 35 2c 6e 6f | 55, 245|, 315,no|
|00002c80| 70 2c 20 6e 6f 70 2c 20 | 6e 6f 70 2c 20 6e 6f 70 |p, nop, |nop, nop|
|00002c90| 29 3b 20 2f 2a 20 63 69 | 72 63 6c 65 73 20 2a 2f |); /* ci|rcles */|
|00002ca0| 0d 20 20 74 65 6d 70 20 | 3d 20 77 70 72 6f 63 69 |. temp |= wproci|
|00002cb0| 64 3b 09 2f 2a 20 73 61 | 76 65 20 76 61 6c 75 65 |d;./* sa|ve value|
|00002cc0| 20 66 6f 72 20 61 6e 20 | 6f 70 74 69 6f 6e 61 6c | for an |optional|
|00002cd0| 20 63 68 61 6e 67 65 20 | 2a 2f 0d 20 20 77 70 72 | change |*/. wpr|
|00002ce0| 6f 63 69 64 20 3d 20 33 | 3b 20 09 09 2f 2a 20 6f |ocid = 3|; ../* o|
|00002cf0| 70 74 69 6f 6e 61 6c 20 | 63 68 61 6e 67 65 20 74 |ptional |change t|
|00002d00| 6f 20 73 65 74 20 74 6f | 20 61 6c 74 44 42 6f 78 |o set to| altDBox|
|00002d10| 50 72 6f 63 20 2a 2f 0d | 20 20 77 69 6e 64 6f 77 |Proc */.| window|
|00002d20| 20 28 22 46 72 65 65 4d | 65 6d 22 2c 20 34 30 37 | ("FreeM|em", 407|
|00002d30| 2c 20 33 32 32 2c 20 35 | 30 32 2c 20 33 33 37 2c |, 322, 5|02, 337,|
|00002d40| 20 6e 6f 70 2c 20 6e 6f | 70 2c 20 73 68 6f 77 6d | nop, no|p, showm|
|00002d50| 65 6d 2c 20 6d 6f 76 65 | 6d 65 6d 29 3b 0d 20 20 |em, move|mem);. |
|00002d60| 77 70 72 6f 63 69 64 20 | 3d 20 74 65 6d 70 3b 09 |wprocid |= temp;.|
|00002d70| 2f 2a 20 72 65 74 75 72 | 6e 20 74 6f 20 64 65 66 |/* retur|n to def|
|00002d80| 61 75 6c 74 73 20 2a 2f | 0d 20 20 77 69 6e 64 6d |aults */|. windm|
|00002d90| 65 6e 75 20 3d 20 54 52 | 55 45 3b 09 0d 20 20 64 |enu = TR|UE;.. d|
|00002da0| 6f 67 6f 61 77 61 79 20 | 3d 20 54 52 55 45 3b 0d |ogoaway |= TRUE;.|
|00002db0| 20 20 77 69 6e 64 6f 77 | 20 28 22 53 6b 65 74 63 | window| ("Sketc|
|00002dc0| 68 22 2c 20 32 36 35 2c | 20 35 35 2c 20 34 39 30 |h", 265,| 55, 490|
|00002dd0| 2c 20 33 31 35 2c 73 6b | 65 74 61 63 74 69 76 61 |, 315,sk|etactiva|
|00002de0| 74 65 2c 73 6b 65 74 64 | 65 61 63 74 69 76 61 74 |te,sketd|eactivat|
|00002df0| 65 2c 20 0d 20 20 09 6e | 6f 70 2c 20 73 6b 65 74 |e, . .n|op, sket|
|00002e00| 63 68 29 3b 09 2f 2a 20 | 64 69 73 70 6c 61 79 20 |ch);./* |display |
|00002e10| 74 68 65 20 73 6b 65 74 | 63 68 20 70 61 64 20 77 |the sket|ch pad w|
|00002e20| 69 6e 64 6f 77 20 2a 2f | 0d 20 20 77 69 6e 64 6f |indow */|. windo|
|00002e30| 77 20 28 22 51 75 65 73 | 74 69 6f 6e 73 22 2c 20 |w ("Ques|tions", |
|00002e40| 31 34 36 2c 20 32 37 36 | 2c 20 33 36 38 2c 20 33 |146, 276|, 368, 3|
|00002e50| 33 37 2c 20 6e 6f 70 2c | 20 6e 6f 70 2c 20 71 75 |37, nop,| nop, qu|
|00002e60| 65 73 74 5f 75 70 64 61 | 74 65 2c 20 6e 6f 70 29 |est_upda|te, nop)|
|00002e70| 3b 0d 20 20 6d 65 6e 75 | 20 28 20 61 70 70 6c 65 |;. menu| ( apple|
|00002e80| 73 74 72 69 6e 67 2c 20 | 22 41 62 6f 75 74 20 53 |string, |"About S|
|00002e90| 69 6d 70 6c 65 44 65 6d | 6f 22 2c 20 74 65 6c 6c |impleDem|o", tell|
|00002ea0| 61 62 6f 75 74 29 3b 0d | 20 20 6d 65 6e 75 20 28 |about);.| menu (|
|00002eb0| 20 61 70 70 6c 65 73 74 | 72 69 6e 67 2c 20 22 41 | applest|ring, "A|
|00002ec0| 62 6f 75 74 20 53 69 6d | 70 6c 65 44 65 6d 6f 22 |bout Sim|pleDemo"|
|00002ed0| 2c 20 69 74 65 6d 65 6e | 61 62 6c 65 29 3b 0d 20 |, itemen|able);. |
|00002ee0| 20 6d 65 6e 75 20 28 20 | 22 46 69 6c 65 22 2c 20 | menu ( |"File", |
|00002ef0| 22 4e 65 77 22 2c 20 6e | 77 69 6e 64 6f 77 29 3b |"New", n|window);|
|00002f00| 09 09 2f 2a 20 73 65 74 | 75 70 20 46 69 6c 65 20 |../* set|up File |
|00002f10| 6d 65 6e 75 20 2a 2f 0d | 20 20 6d 65 6e 75 20 28 |menu */.| menu (|
|00002f20| 20 22 46 69 6c 65 22 2c | 20 22 4e 65 77 22 2c 20 | "File",| "New", |
|00002f30| 69 74 65 6d 65 6e 61 62 | 6c 65 29 3b 0d 20 20 6d |itemenab|le);. m|
|00002f40| 65 6e 75 20 28 20 22 46 | 69 6c 65 22 2c 20 22 53 |enu ( "F|ile", "S|
|00002f50| 65 74 20 4e 61 6d 65 22 | 2c 20 71 75 65 73 74 5f |et Name"|, quest_|
|00002f60| 67 65 74 6e 61 6d 65 29 | 3b 0d 20 20 73 69 6d 70 |getname)|;. simp|
|00002f70| 6c 65 71 75 69 74 73 20 | 28 29 3b 09 09 09 09 2f |lequits |();..../|
|00002f80| 2a 20 54 72 61 6e 73 66 | 65 72 20 61 6e 64 20 51 |* Transf|er and Q|
|00002f90| 75 69 74 09 2a 2f 0d 20 | 20 6d 65 6e 75 20 28 22 |uit.*/. | menu ("|
|00002fa0| 43 69 72 63 6c 65 73 22 | 2c 20 22 53 70 65 65 64 |Circles"|, "Speed|
|00002fb0| 22 2c 20 69 74 65 6d 64 | 69 73 61 62 6c 65 29 3b |", itemd|isable);|
|00002fc0| 09 2f 2a 20 69 6e 73 74 | 61 6c 6c 20 63 69 72 63 |./* inst|all circ|
|00002fd0| 6c 65 73 20 6d 65 6e 75 | 20 2a 2f 0d 20 20 6d 65 |les menu| */. me|
|00002fe0| 6e 75 20 28 22 43 69 72 | 63 6c 65 73 22 2c 20 22 |nu ("Cir|cles", "|
|00002ff0| 53 6c 6f 77 2f 53 22 2c | 20 73 65 74 73 70 65 65 |Slow/S",| setspee|
|00003000| 64 29 3b 09 09 2f 2a 20 | 6f 70 74 69 6f 6e 61 6c |d);../* |optional|
|00003010| 20 6b 65 79 20 65 71 75 | 69 76 73 20 2a 2f 0d 20 | key equ|ivs */. |
|00003020| 20 6d 65 6e 75 20 28 22 | 43 69 72 63 6c 65 73 22 | menu ("|Circles"|
|00003030| 2c 20 22 4d 65 64 69 75 | 6d 2f 4d 22 2c 20 73 65 |, "Mediu|m/M", se|
|00003040| 74 73 70 65 65 64 29 3b | 0d 20 20 6d 65 6e 75 20 |tspeed);|. menu |
|00003050| 28 22 43 69 72 63 6c 65 | 73 22 2c 20 22 46 61 73 |("Circle|s", "Fas|
|00003060| 74 2f 46 22 2c 20 73 65 | 74 73 70 65 65 64 29 3b |t/F", se|tspeed);|
|00003070| 0d 20 20 6d 65 6e 75 20 | 28 22 43 69 72 63 6c 65 |. menu |("Circle|
|00003080| 73 22 2c 20 22 4d 65 64 | 69 75 6d 2f 4d 22 2c 20 |s", "Med|ium/M", |
|00003090| 69 74 65 6d 63 68 65 63 | 6b 29 3b 0d 20 20 6d 65 |itemchec|k);. me|
|000030a0| 6e 75 20 28 22 53 6b 65 | 74 63 68 22 2c 20 22 50 |nu ("Ske|tch", "P|
|000030b0| 65 6e 20 53 69 7a 65 22 | 2c 20 69 74 65 6d 64 69 |en Size"|, itemdi|
|000030c0| 73 61 62 6c 65 29 3b 20 | 20 2f 2a 20 69 6e 73 74 |sable); | /* inst|
|000030d0| 61 6c 6c 20 73 6b 65 74 | 63 68 65 73 20 6d 65 6e |all sket|ches men|
|000030e0| 75 20 2a 2f 0d 20 20 6d | 65 6e 75 20 28 22 53 6b |u */. m|enu ("Sk|
|000030f0| 65 74 63 68 22 2c 20 22 | 22 2c 20 69 74 65 6d 64 |etch", "|", itemd|
|00003100| 69 73 61 62 6c 65 29 3b | 0d 20 20 6d 65 6e 75 20 |isable);|. menu |
|00003110| 28 22 53 6b 65 74 63 68 | 22 2c 20 22 31 22 2c 20 |("Sketch|", "1", |
|00003120| 73 65 74 70 65 6e 73 69 | 7a 65 29 3b 0d 20 20 6d |setpensi|ze);. m|
|00003130| 65 6e 75 20 28 22 53 6b | 65 74 63 68 22 2c 20 22 |enu ("Sk|etch", "|
|00003140| 31 22 2c 20 69 74 65 6d | 63 68 65 63 6b 29 3b 0d |1", item|check);.|
|00003150| 20 20 6d 65 6e 75 20 28 | 22 53 6b 65 74 63 68 22 | menu (|"Sketch"|
|00003160| 2c 20 22 32 22 2c 20 73 | 65 74 70 65 6e 73 69 7a |, "2", s|etpensiz|
|00003170| 65 29 3b 0d 20 20 6d 65 | 6e 75 20 28 22 53 6b 65 |e);. me|nu ("Ske|
|00003180| 74 63 68 22 2c 20 22 33 | 22 2c 20 73 65 74 70 65 |tch", "3|", setpe|
|00003190| 6e 73 69 7a 65 29 3b 0d | 20 20 6d 65 6e 75 20 28 |nsize);.| menu (|
|000031a0| 22 53 6b 65 74 63 68 22 | 2c 20 22 34 22 2c 20 73 |"Sketch"|, "4", s|
|000031b0| 65 74 70 65 6e 73 69 7a | 65 29 3b 0d 20 20 6d 65 |etpensiz|e);. me|
|000031c0| 6e 75 20 28 22 53 6b 65 | 74 63 68 22 2c 20 22 35 |nu ("Ske|tch", "5|
|000031d0| 22 2c 20 73 65 74 70 65 | 6e 73 69 7a 65 29 3b 0d |", setpe|nsize);.|
|000031e0| 20 20 6d 65 6e 75 20 28 | 22 53 6b 65 74 63 68 22 | menu (|"Sketch"|
|000031f0| 2c 20 22 36 22 2c 20 73 | 65 74 70 65 6e 73 69 7a |, "6", s|etpensiz|
|00003200| 65 29 3b 0d 20 20 72 75 | 6e 20 28 63 69 72 63 6c |e);. ru|n (circl|
|00003210| 65 73 29 3b 09 09 2f 2a | 20 6b 65 65 70 20 64 72 |es);../*| keep dr|
|00003220| 61 77 69 6e 67 20 63 69 | 72 63 6c 65 73 20 2a 2f |awing ci|rcles */|
|00003230| 0d 20 20 72 75 6e 20 28 | 6e 65 77 6d 65 6d 76 61 |. run (|newmemva|
|00003240| 6c 75 65 29 3b 09 09 2f | 2a 20 63 68 65 63 6b 20 |lue);../|* check |
|00003250| 69 66 20 6d 65 6d 20 63 | 68 61 6e 67 65 64 20 6f |if mem c|hanged o|
|00003260| 63 63 61 73 69 6f 6e 61 | 6c 6c 79 20 2a 2f 0d 7d |ccasiona|lly */.}|
|00003270| 0d 0d 6d 61 69 6e 28 29 | 0d 7b 0d 20 20 73 69 6d |..main()|.{. sim|
|00003280| 70 6c 65 74 6f 6f 6c 73 | 28 22 41 62 6f 75 74 20 |pletools|("About |
|00003290| 53 69 6d 70 6c 65 44 65 | 6d 6f 22 29 3b 09 2f 2a |SimpleDe|mo");./*|
|000032a0| 20 73 65 74 75 70 20 41 | 70 70 6c 65 20 61 6e 64 | setup A|pple and|
|000032b0| 20 45 64 69 74 20 6d 65 | 6e 75 73 20 2a 2f 0d 20 | Edit me|nus */. |
|000032c0| 20 73 65 74 75 70 28 29 | 3b 09 09 09 09 2f 2a 20 | setup()|;..../* |
|000032d0| 73 65 74 75 70 20 6f 75 | 72 20 70 72 6f 67 72 61 |setup ou|r progra|
|000032e0| 6d 20 2a 2f 0d 20 20 66 | 6f 72 20 28 3b 3b 29 20 |m */. f|or (;;) |
|000032f0| 73 69 6d 70 6c 65 65 76 | 65 6e 74 73 28 29 3b 09 |simpleev|ents();.|
|00003300| 09 2f 2a 20 70 72 6f 63 | 65 73 73 20 65 76 65 6e |./* proc|ess even|
|00003310| 74 73 20 2a 2f 0d 7d 0d | 20 20 20 20 00 00 00 00 |ts */.}.| ....|
|00003320| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003340| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003380| 00 00 01 00 00 00 01 16 | 00 00 00 16 00 00 00 46 |........|.......F|
|00003390| 10 1f 20 5f 66 04 a2 08 | 60 02 a6 08 3e 80 4e d1 |.. _f...|`...>.N.|
|000033a0| 22 5f 10 1f 20 5f 66 04 | a2 09 60 02 a6 09 3e 80 |"_.. _f.|..`...>.|
|000033b0| 0c 53 69 6d 70 6c 65 44 | 65 6d 6f 2e 63 44 02 00 |.SimpleD|emo.cD..|
|000033c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000033d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000033e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000033f0| 00 00 9f ab 5d 67 00 00 | 32 9c 00 00 01 5c 20 5f |....]g..|2....\ _|
|00003400| 66 04 a2 0d 60 02 a6 0d | 3e 80 4e d1 70 00 60 62 |f...`...|>.N.p.`b|
|00003410| 70 04 60 5e 70 08 60 5a | 70 0c 60 56 70 10 60 52 |p.`^p.`Z|p.`Vp.`R|
|00003420| 70 14 60 4e 70 18 60 4a | 70 1c 60 46 70 20 60 42 |p.`Np.`J|p.`Fp `B|
|00003430| 70 24 60 3e 70 28 60 3a | 70 2c 60 36 70 30 60 32 |p$`>p(`:|p,`6p0`2|
|00003440| 70 34 60 2e 70 38 60 2a | 70 3c 60 26 70 40 60 22 |p4`.p8`*|p<`&p@`"|
|00003450| 70 44 60 1e 70 48 60 1a | 70 4c 60 16 70 50 60 12 |pD`.pH`.|pL`.pP`.|
|00003460| 70 54 60 0e 70 58 60 0a | 70 5c 60 06 70 60 60 02 |pT`.pX`.|p\`.p``.|
|00003470| 70 64 20 5f 3f 00 2f 08 | ad e7 a8 36 2f 48 00 04 |pd _?./.|...6/H..|
|00003480| 00 00 00 04 00 06 00 08 | 00 00 00 0a 00 09 06 4d |........|.......M|
|00003490| 6f 6e 61 63 6f ff 00 00 | 01 00 00 00 01 16 00 00 |onaco...|........|
|000034a0| 00 16 00 00 00 46 00 03 | 27 cc 02 f2 00 00 00 1c |.....F..|'.......|
|000034b0| 00 46 00 01 45 54 41 42 | 00 00 00 12 45 46 4e 54 |.F..ETAB|....EFNT|
|000034c0| 00 00 00 1e 03 ec ff ff | 00 00 00 00 00 03 27 1c |........|......'.|
|000034d0| 03 eb ff ff 00 00 00 08 | 00 03 27 20 00 00 00 00 |........|..' ....|
|000034e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000034f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+