home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 109 / EnigmaAmiga109CD.iso / dalla rivista / amiga.free / sorgenti vari / wolf3dmacsource.sit / Wolf3DMacSource / Sight.c < prev    next >
MacBinary  |  1994-10-04  |  5.6 KB  |  [TEXT/CWIE]

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
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 Oct 4 19:44:02 1994, modified Tue Oct 4 19:44:02 1994, creator 'CWIE', type ASCII, 5147 bytes "Sight.c" , at 0x149b 382 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[CWIE]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 07 53 69 67 68 74 2e | 63 00 00 00 00 00 00 00 |..Sight.|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 43 57 49 | 45 01 00 00 00 00 00 00 |.TEXTCWI|E.......|
|00000050| 00 00 00 00 00 14 1b 00 | 00 01 7e aa b7 99 42 aa |........|..~...B.|
|00000060| b7 99 42 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |..B.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 21 a4 00 00 |........|....!...|
|00000080| 23 69 6e 63 6c 75 64 65 | 20 22 77 6f 6c 66 64 65 |#include| "wolfde|
|00000090| 66 2e 68 22 0d 0d 2f 2a | 2a 2a 2a 2a 2a 2a 2a 2a |f.h"../*|********|
|000000a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000000b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 0d 0d 09 52 65 74 75 |********|*...Retu|
|000000c0| 72 6e 73 20 54 72 75 65 | 20 69 66 20 61 20 73 74 |rns True| if a st|
|000000d0| 72 61 69 67 68 74 20 6c | 69 6e 65 20 62 65 74 77 |raight l|ine betw|
|000000e0| 65 65 6e 20 74 68 65 20 | 70 6c 61 79 65 72 20 61 |een the |player a|
|000000f0| 6e 64 20 61 63 74 6f 72 | 20 69 73 20 75 6e 6f 62 |nd actor| is unob|
|00000100| 73 74 72 75 63 74 65 64 | 0d 0d 2a 2a 2a 2a 2a 2a |structed|..******|
|00000110| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000120| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2f 0d 0d 42 |********|****/..B|
|00000130| 6f 6f 6c 65 61 6e 20 43 | 68 65 63 6b 4c 69 6e 65 |oolean C|heckLine|
|00000140| 28 61 63 74 6f 72 5f 74 | 20 2a 41 63 74 6f 72 50 |(actor_t| *ActorP|
|00000150| 74 72 29 0d 7b 0d 09 57 | 6f 72 64 20 61 63 74 6f |tr).{..W|ord acto|
|00000160| 72 78 2c 61 63 74 6f 72 | 79 2c 61 63 74 6f 72 74 |rx,actor|y,actort|
|00000170| 78 2c 61 63 74 6f 72 74 | 79 3b 09 09 2f 2a 20 43 |x,actort|y;../* C|
|00000180| 75 72 72 65 6e 74 20 61 | 63 74 6f 72 27 73 20 63 |urrent a|ctor's c|
|00000190| 6f 6f 72 64 73 20 2a 2f | 0d 09 57 6f 72 64 20 70 |oords */|..Word p|
|000001a0| 6c 61 79 65 72 78 2c 70 | 6c 61 79 65 72 79 2c 70 |layerx,p|layery,p|
|000001b0| 6c 61 79 65 72 74 78 2c | 70 6c 61 79 65 72 74 79 |layertx,|playerty|
|000001c0| 3b 09 2f 2a 20 50 6c 61 | 79 65 72 27 73 20 63 6f |;./* Pla|yer's co|
|000001d0| 6f 72 64 73 20 2a 2f 0d | 09 57 6f 72 64 20 78 6c |ords */.|.Word xl|
|000001e0| 2c 78 68 2c 79 6c 2c 79 | 68 3b 09 09 09 09 2f 2a |,xh,yl,y|h;..../*|
|000001f0| 20 4d 69 6e 20 78 2c 79 | 20 4d 61 78 20 78 2c 79 | Min x,y| Max x,y|
|00000200| 20 66 6f 72 20 74 65 73 | 74 20 2a 2f 0d 09 69 6e | for tes|t */..in|
|00000210| 74 20 64 65 6c 74 61 3b | 09 09 2f 2a 20 50 69 78 |t delta;|../* Pix|
|00000220| 65 6c 20 64 69 66 66 65 | 72 61 6e 63 65 20 74 6f |el diffe|rance to|
|00000230| 20 63 61 6c 63 20 53 74 | 65 70 20 61 6e 64 20 46 | calc St|ep and F|
|00000240| 72 61 63 20 2a 2f 0d 09 | 69 6e 74 20 53 74 65 70 |rac */..|int Step|
|00000250| 3b 09 09 2f 2a 20 53 74 | 65 70 20 76 61 6c 75 65 |;../* St|ep value|
|00000260| 20 66 6f 72 20 65 61 63 | 68 20 77 68 6f 6c 65 20 | for eac|h whole |
|00000270| 78 79 20 2a 2f 0d 09 57 | 6f 72 64 20 46 72 61 63 |xy */..W|ord Frac|
|00000280| 3b 09 09 2f 2a 20 46 72 | 61 63 74 69 6f 6e 61 6c |;../* Fr|actional|
|00000290| 20 78 79 20 73 74 65 70 | 70 65 72 20 2a 2f 0d 09 | xy step|per */..|
|000002a0| 57 6f 72 64 20 64 65 6c | 74 61 66 72 61 63 3b 09 |Word del|tafrac;.|
|000002b0| 2f 2a 20 54 72 75 65 20 | 64 69 73 74 61 6e 63 65 |/* True |distance|
|000002c0| 20 66 6f 72 20 77 68 6f | 6c 65 20 6e 75 6d 62 65 | for who|le numbe|
|000002d0| 72 73 20 2a 2f 0d 09 57 | 6f 72 64 20 69 6e 74 65 |rs */..W|ord inte|
|000002e0| 72 63 65 70 74 3b 09 2f | 2a 20 54 65 6d 70 20 66 |rcept;./|* Temp f|
|000002f0| 6f 72 20 64 6f 6f 72 20 | 63 6f 64 65 20 2a 2f 0d |or door |code */.|
|00000300| 09 57 6f 72 64 20 74 69 | 6c 65 3b 09 09 2f 2a 20 |.Word ti|le;../* |
|00000310| 54 65 6d 70 20 66 6f 72 | 20 74 69 6c 65 20 63 68 |Temp for| tile ch|
|00000320| 65 63 6b 20 2a 2f 0d 09 | 42 79 74 65 20 70 61 72 |eck */..|Byte par|
|00000330| 74 69 61 6c 3b 09 2f 2a | 20 46 72 61 63 74 69 6f |tial;./*| Fractio|
|00000340| 6e 20 74 6f 20 66 6f 72 | 63 65 20 77 68 6f 6c 65 |n to for|ce whole|
|00000350| 20 6e 75 6d 62 65 72 73 | 20 2a 2f 0d 09 0d 09 61 | numbers| */....a|
|00000360| 63 74 6f 72 78 20 3d 20 | 41 63 74 6f 72 50 74 72 |ctorx = |ActorPtr|
|00000370| 2d 3e 78 3b 09 09 2f 2a | 20 47 65 74 20 74 68 65 |->x;../*| Get the|
|00000380| 20 61 63 74 6f 72 27 73 | 20 78 2c 79 20 2a 2f 0d | actor's| x,y */.|
|00000390| 09 61 63 74 6f 72 74 78 | 20 3d 20 61 63 74 6f 72 |.actortx| = actor|
|000003a0| 78 3e 3e 46 52 41 43 42 | 49 54 53 3b 09 2f 2a 20 |x>>FRACB|ITS;./* |
|000003b0| 47 65 74 20 74 68 65 20 | 61 63 74 6f 72 27 73 20 |Get the |actor's |
|000003c0| 74 69 6c 65 20 78 2c 79 | 20 2a 2f 0d 09 61 63 74 |tile x,y| */..act|
|000003d0| 6f 72 79 20 3d 20 41 63 | 74 6f 72 50 74 72 2d 3e |ory = Ac|torPtr->|
|000003e0| 79 3b 0d 09 61 63 74 6f | 72 74 79 20 3d 20 61 63 |y;..acto|rty = ac|
|000003f0| 74 6f 72 79 3e 3e 46 52 | 41 43 42 49 54 53 3b 0d |tory>>FR|ACBITS;.|
|00000400| 0d 09 70 6c 61 79 65 72 | 78 20 3d 20 61 63 74 6f |..player|x = acto|
|00000410| 72 73 5b 30 5d 2e 78 3b | 09 2f 2a 20 47 65 74 20 |rs[0].x;|./* Get |
|00000420| 74 68 65 20 70 6c 61 79 | 65 72 27 73 20 78 2c 79 |the play|er's x,y|
|00000430| 20 2a 2f 0d 09 70 6c 61 | 79 65 72 74 78 20 3d 20 | */..pla|yertx = |
|00000440| 70 6c 61 79 65 72 78 3e | 3e 46 52 41 43 42 49 54 |playerx>|>FRACBIT|
|00000450| 53 3b 09 2f 2a 20 47 65 | 74 20 74 68 65 20 70 6c |S;./* Ge|t the pl|
|00000460| 61 79 65 72 27 73 20 74 | 69 6c 65 20 78 2c 79 20 |ayer's t|ile x,y |
|00000470| 2a 2f 0d 09 70 6c 61 79 | 65 72 79 20 3d 20 61 63 |*/..play|ery = ac|
|00000480| 74 6f 72 73 5b 30 5d 2e | 79 3b 09 0d 09 70 6c 61 |tors[0].|y;...pla|
|00000490| 79 65 72 74 79 20 3d 20 | 70 6c 61 79 65 72 79 3e |yerty = |playery>|
|000004a0| 3e 46 52 41 43 42 49 54 | 53 3b 0d 0d 09 2f 2a 20 |>FRACBIT|S;.../* |
|000004b0| 54 68 65 20 61 63 74 6f | 72 20 43 4f 55 4c 44 20 |The acto|r COULD |
|000004c0| 62 65 20 73 74 61 6e 64 | 69 6e 67 20 6f 6e 20 61 |be stand|ing on a|
|000004d0| 20 62 6c 6f 63 6b 65 64 | 20 74 69 6c 65 20 28 4f | blocked| tile (O|
|000004e0| 6e 20 61 20 43 4c 4f 53 | 49 4e 47 20 64 6f 6f 72 |n a CLOS|ING door|
|000004f0| 20 74 69 6c 65 29 20 2a | 2f 0d 0d 23 69 66 20 30 | tile) *|/..#if 0|
|00000500| 0d 09 69 66 20 28 74 69 | 6c 65 6d 61 70 5b 61 63 |..if (ti|lemap[ac|
|00000510| 74 6f 72 74 79 5d 5b 61 | 63 74 6f 72 74 78 5d 20 |torty][a|ctortx] |
|00000520| 26 20 54 49 5f 42 4c 4f | 43 4b 53 49 47 48 54 29 |& TI_BLO|CKSIGHT)|
|00000530| 20 7b 09 2f 2a 20 49 73 | 20 74 68 65 20 61 63 74 | {./* Is| the act|
|00000540| 6f 72 20 49 4e 20 61 20 | 77 61 6c 6c 3f 20 2a 2f |or IN a |wall? */|
|00000550| 0d 09 09 72 65 74 75 72 | 6e 20 46 41 4c 53 45 3b |...retur|n FALSE;|
|00000560| 09 09 09 2f 2a 20 54 68 | 69 73 20 63 6f 75 6c 64 |.../* Th|is could|
|00000570| 20 68 61 70 70 65 6e 20 | 6f 6e 20 61 20 63 6c 6f | happen |on a clo|
|00000580| 73 69 6e 67 20 64 6f 6f | 72 20 2a 2f 0d 09 7d 0d |sing doo|r */..}.|
|00000590| 23 65 6e 64 69 66 0d 0d | 2f 2a 20 63 68 65 63 6b |#endif..|/* check|
|000005a0| 20 66 6f 72 20 73 6f 6c | 69 64 20 74 69 6c 65 73 | for sol|id tiles|
|000005b0| 20 61 74 20 78 20 63 72 | 6f 73 73 69 6e 67 73 20 | at x cr|ossings |
|000005c0| 2a 2f 0d 09 0d 09 69 66 | 20 28 70 6c 61 79 65 72 |*/....if| (player|
|000005d0| 74 78 21 3d 61 63 74 6f | 72 74 78 29 20 7b 09 09 |tx!=acto|rtx) {..|
|000005e0| 2f 2a 20 53 63 61 6e 20 | 69 6e 20 74 68 65 20 78 |/* Scan |in the x|
|000005f0| 20 64 69 72 65 63 74 69 | 6f 6e 3f 20 2a 2f 0d 09 | directi|on? */..|
|00000600| 09 69 66 20 28 61 63 74 | 6f 72 74 78 3c 70 6c 61 |.if (act|ortx<pla|
|00000610| 79 65 72 74 78 29 20 7b | 09 09 0d 09 09 09 70 61 |yertx) {|......pa|
|00000620| 72 74 69 61 6c 20 3d 20 | 2d 61 63 74 6f 72 78 3b |rtial = |-actorx;|
|00000630| 09 2f 2a 20 49 73 6f 6c | 61 74 65 20 74 68 65 20 |./* Isol|ate the |
|00000640| 66 72 61 63 74 69 6f 6e | 20 2a 2f 0d 09 09 09 78 |fraction| */....x|
|00000650| 6c 20 3d 20 61 63 74 6f | 72 74 78 2d 31 3b 09 09 |l = acto|rtx-1;..|
|00000660| 09 2f 2a 20 41 63 74 6f | 72 20 69 73 20 6f 6e 20 |./* Acto|r is on |
|00000670| 74 68 65 20 6c 65 66 74 | 20 73 69 64 65 20 2a 2f |the left| side */|
|00000680| 0d 09 09 09 78 68 20 3d | 20 70 6c 61 79 65 72 74 |....xh =| playert|
|00000690| 78 2d 31 3b 0d 09 09 09 | 79 6c 20 3d 20 61 63 74 |x-1;....|yl = act|
|000006a0| 6f 72 79 3b 0d 09 09 09 | 79 68 20 3d 20 70 6c 61 |ory;....|yh = pla|
|000006b0| 79 65 72 79 3b 0d 09 09 | 09 64 65 6c 74 61 66 72 |yery;...|.deltafr|
|000006c0| 61 63 20 3d 20 70 6c 61 | 79 65 72 78 2d 61 63 74 |ac = pla|yerx-act|
|000006d0| 6f 72 78 3b 09 2f 2a 20 | 44 69 73 74 61 6e 63 65 |orx;./* |Distance|
|000006e0| 20 69 6e 20 70 69 78 65 | 6c 73 20 2a 2f 0d 09 09 | in pixe|ls */...|
|000006f0| 7d 20 65 6c 73 65 20 7b | 0d 09 09 09 70 61 72 74 |} else {|....part|
|00000700| 69 61 6c 20 3d 20 2d 70 | 6c 61 79 65 72 78 3b 0d |ial = -p|layerx;.|
|00000710| 09 09 09 78 6c 20 3d 20 | 70 6c 61 79 65 72 74 78 |...xl = |playertx|
|00000720| 3b 09 09 09 2f 2a 20 50 | 6c 61 79 65 72 20 69 73 |;.../* P|layer is|
|00000730| 20 6f 6e 20 74 68 65 20 | 6c 65 66 74 20 73 69 64 | on the |left sid|
|00000740| 65 20 2a 2f 0d 09 09 09 | 78 68 20 3d 20 61 63 74 |e */....|xh = act|
|00000750| 6f 72 74 78 3b 0d 09 09 | 09 79 6c 20 3d 20 70 6c |ortx;...|.yl = pl|
|00000760| 61 79 65 72 79 3b 0d 09 | 09 09 79 68 20 3d 20 61 |ayery;..|..yh = a|
|00000770| 63 74 6f 72 79 3b 0d 09 | 09 09 64 65 6c 74 61 66 |ctory;..|..deltaf|
|00000780| 72 61 63 20 3d 20 61 63 | 74 6f 72 78 2d 70 6c 61 |rac = ac|torx-pla|
|00000790| 79 65 72 78 3b 09 2f 2a | 20 44 69 73 74 61 6e 63 |yerx;./*| Distanc|
|000007a0| 65 20 69 6e 20 70 69 78 | 65 6c 73 20 2a 2f 0d 09 |e in pix|els */..|
|000007b0| 09 7d 0d 09 09 64 65 6c | 74 61 20 3d 20 79 68 2d |.}...del|ta = yh-|
|000007c0| 79 6c 3b 09 09 09 09 2f | 2a 20 59 20 61 64 6a 75 |yl;..../|* Y adju|
|000007d0| 73 74 20 28 53 69 67 6e | 65 64 29 20 2a 2f 0d 09 |st (Sign|ed) */..|
|000007e0| 09 69 66 20 28 77 5f 61 | 62 73 28 64 65 6c 74 61 |.if (w_a|bs(delta|
|000007f0| 29 20 3e 3d 20 28 31 36 | 2a 46 52 41 43 55 4e 49 |) >= (16|*FRACUNI|
|00000800| 54 29 20 7c 7c 20 64 65 | 6c 74 61 66 72 61 63 20 |T) || de|ltafrac |
|00000810| 3e 3d 20 28 31 36 2a 46 | 52 41 43 55 4e 49 54 29 |>= (16*F|RACUNIT)|
|00000820| 29 20 7b 09 2f 2a 20 46 | 61 72 74 68 65 72 20 74 |) {./* F|arther t|
|00000830| 68 61 6e 20 31 36 20 74 | 69 6c 65 73 3f 20 2a 2f |han 16 t|iles? */|
|00000840| 0d 09 09 09 72 65 74 75 | 72 6e 20 46 41 4c 53 45 |....retu|rn FALSE|
|00000850| 3b 0d 09 09 7d 0d 09 09 | 53 74 65 70 20 3d 20 46 |;...}...|Step = F|
|00000860| 69 78 65 64 44 69 76 28 | 64 65 6c 74 61 2c 64 65 |ixedDiv(|delta,de|
|00000870| 6c 74 61 66 72 61 63 29 | 3b 09 09 2f 2a 20 48 6f |ltafrac)|;../* Ho|
|00000880| 77 20 6d 75 63 68 20 74 | 6f 20 79 20 73 74 65 70 |w much t|o y step|
|00000890| 20 2a 2f 0d 09 09 46 72 | 61 63 20 3d 20 46 69 78 | */...Fr|ac = Fix|
|000008a0| 65 64 42 79 46 72 61 63 | 28 53 74 65 70 2c 70 61 |edByFrac|(Step,pa|
|000008b0| 72 74 69 61 6c 29 2b 79 | 6c 3b 09 2f 2a 20 49 6e |rtial)+y|l;./* In|
|000008c0| 69 74 20 74 68 65 20 59 | 20 63 6f 6f 72 64 20 2a |it the Y| coord *|
|000008d0| 2f 0d 09 09 64 6f 20 7b | 0d 09 09 09 2b 2b 78 6c |/...do {|....++xl|
|000008e0| 3b 0d 09 09 09 74 69 6c | 65 20 3d 20 74 69 6c 65 |;....til|e = tile|
|000008f0| 6d 61 70 5b 46 72 61 63 | 3e 3e 46 52 41 43 42 49 |map[Frac|>>FRACBI|
|00000900| 54 53 5d 5b 78 6c 5d 3b | 09 09 2f 2a 20 47 65 74 |TS][xl];|../* Get|
|00000910| 20 74 68 65 20 63 75 72 | 72 65 6e 74 20 74 69 6c | the cur|rent til|
|00000920| 65 20 2a 2f 0d 09 09 09 | 69 66 20 28 74 69 6c 65 |e */....|if (tile|
|00000930| 20 26 20 54 49 5f 42 4c | 4f 43 4b 53 49 47 48 54 | & TI_BL|OCKSIGHT|
|00000940| 29 20 7b 0d 09 09 09 09 | 72 65 74 75 72 6e 20 46 |) {.....|return F|
|00000950| 41 4c 53 45 3b 09 09 2f | 2a 20 43 61 6e 27 74 20 |ALSE;../|* Can't |
|00000960| 73 65 65 21 20 2a 2f 0d | 09 09 09 7d 0d 09 09 09 |see! */.|...}....|
|00000970| 69 66 20 28 74 69 6c 65 | 20 26 20 54 49 5f 44 4f |if (tile| & TI_DO|
|00000980| 4f 52 29 20 7b 09 2f 2a | 20 73 65 65 20 69 66 20 |OR) {./*| see if |
|00000990| 74 68 65 20 64 6f 6f 72 | 20 69 73 20 6f 70 65 6e |the door| is open|
|000009a0| 20 65 6e 6f 75 67 68 2a | 2f 0d 09 09 09 09 69 6e | enough*|/.....in|
|000009b0| 74 65 72 63 65 70 74 20 | 3d 20 28 28 53 74 65 70 |tercept |= ((Step|
|000009c0| 2f 32 29 2b 46 72 61 63 | 29 26 30 78 66 66 3b 0d |/2)+Frac|)&0xff;.|
|000009d0| 09 09 09 09 69 66 20 28 | 69 6e 74 65 72 63 65 70 |....if (|intercep|
|000009e0| 74 20 3e 20 64 6f 6f 72 | 73 5b 74 69 6c 65 26 54 |t > door|s[tile&T|
|000009f0| 49 5f 4e 55 4d 4d 41 53 | 4b 5d 2e 70 6f 73 69 74 |I_NUMMAS|K].posit|
|00000a00| 69 6f 6e 29 20 7b 0d 09 | 09 09 09 09 72 65 74 75 |ion) {..|....retu|
|00000a10| 72 6e 20 46 41 4c 53 45 | 3b 09 2f 2a 20 43 61 6e |rn FALSE|;./* Can|
|00000a20| 27 74 20 73 65 65 21 20 | 2a 2f 0d 09 09 09 09 7d |'t see! |*/.....}|
|00000a30| 0d 09 09 09 7d 0d 09 09 | 09 46 72 61 63 20 2b 3d |....}...|.Frac +=|
|00000a40| 20 53 74 65 70 3b 0d 09 | 09 7d 20 77 68 69 6c 65 | Step;..|.} while|
|00000a50| 20 28 78 6c 3c 78 68 29 | 3b 0d 09 7d 0d 0d 2f 2a | (xl<xh)|;..}../*|
|00000a60| 20 63 68 65 63 6b 20 66 | 6f 72 20 73 6f 6c 69 64 | check f|or solid|
|00000a70| 20 74 69 6c 65 73 20 61 | 74 20 79 20 63 72 6f 73 | tiles a|t y cros|
|00000a80| 73 69 6e 67 73 20 2a 2f | 0d 0d 09 69 66 20 28 70 |sings */|...if (p|
|00000a90| 6c 61 79 65 72 74 79 21 | 3d 61 63 74 6f 72 74 79 |layerty!|=actorty|
|00000aa0| 29 20 7b 0d 09 09 69 66 | 20 28 61 63 74 6f 72 74 |) {...if| (actort|
|00000ab0| 79 3c 70 6c 61 79 65 72 | 74 79 29 20 7b 0d 09 09 |y<player|ty) {...|
|00000ac0| 09 70 61 72 74 69 61 6c | 20 3d 20 2d 61 63 74 6f |.partial| = -acto|
|00000ad0| 72 79 3b 0d 09 09 09 78 | 6c 20 3d 20 61 63 74 6f |ry;....x|l = acto|
|00000ae0| 72 78 3b 0d 09 09 09 78 | 68 20 3d 20 70 6c 61 79 |rx;....x|h = play|
|00000af0| 65 72 78 3b 0d 09 09 09 | 79 6c 20 3d 20 61 63 74 |erx;....|yl = act|
|00000b00| 6f 72 74 79 2d 31 3b 0d | 09 09 09 79 68 20 3d 20 |orty-1;.|...yh = |
|00000b10| 70 6c 61 79 65 72 74 79 | 2d 31 3b 0d 09 09 09 64 |playerty|-1;....d|
|00000b20| 65 6c 74 61 66 72 61 63 | 20 3d 20 70 6c 61 79 65 |eltafrac| = playe|
|00000b30| 72 79 2d 61 63 74 6f 72 | 79 3b 0d 09 09 7d 20 65 |ry-actor|y;...} e|
|00000b40| 6c 73 65 20 7b 0d 09 09 | 09 70 61 72 74 69 61 6c |lse {...|.partial|
|00000b50| 20 3d 20 2d 70 6c 61 79 | 65 72 79 3b 0d 09 09 09 | = -play|ery;....|
|00000b60| 78 6c 20 3d 20 70 6c 61 | 79 65 72 78 3b 0d 09 09 |xl = pla|yerx;...|
|00000b70| 09 78 68 20 3d 20 61 63 | 74 6f 72 78 3b 0d 09 09 |.xh = ac|torx;...|
|00000b80| 09 79 6c 20 3d 20 70 6c | 61 79 65 72 74 79 3b 0d |.yl = pl|ayerty;.|
|00000b90| 09 09 09 79 68 20 3d 20 | 61 63 74 6f 72 74 79 3b |...yh = |actorty;|
|00000ba0| 0d 09 09 09 64 65 6c 74 | 61 66 72 61 63 20 3d 20 |....delt|afrac = |
|00000bb0| 61 63 74 6f 72 79 2d 70 | 6c 61 79 65 72 79 3b 0d |actory-p|layery;.|
|00000bc0| 09 09 7d 0d 09 09 64 65 | 6c 74 61 20 3d 20 78 68 |..}...de|lta = xh|
|00000bd0| 2d 78 6c 3b 09 09 2f 2a | 20 4e 75 6d 62 65 72 20 |-xl;../*| Number |
|00000be0| 6f 66 20 74 69 6c 65 73 | 20 74 6f 20 73 63 61 6e |of tiles| to scan|
|00000bf0| 20 2a 2f 0d 09 09 69 66 | 20 28 77 5f 61 62 73 28 | */...if| (w_abs(|
|00000c00| 64 65 6c 74 61 29 20 3e | 3d 20 31 36 2a 46 52 41 |delta) >|= 16*FRA|
|00000c10| 43 55 4e 49 54 20 7c 7c | 20 64 65 6c 74 61 66 72 |CUNIT ||| deltafr|
|00000c20| 61 63 20 3e 3d 20 31 36 | 2a 46 52 41 43 55 4e 49 |ac >= 16|*FRACUNI|
|00000c30| 54 29 20 7b 0d 09 09 09 | 72 65 74 75 72 6e 20 46 |T) {....|return F|
|00000c40| 41 4c 53 45 3b 0d 09 09 | 7d 0d 09 09 53 74 65 70 |ALSE;...|}...Step|
|00000c50| 20 3d 20 46 69 78 65 64 | 44 69 76 28 64 65 6c 74 | = Fixed|Div(delt|
|00000c60| 61 2c 64 65 6c 74 61 66 | 72 61 63 29 3b 0d 09 09 |a,deltaf|rac);...|
|00000c70| 46 72 61 63 20 3d 20 46 | 69 78 65 64 42 79 46 72 |Frac = F|ixedByFr|
|00000c80| 61 63 28 53 74 65 70 2c | 70 61 72 74 69 61 6c 29 |ac(Step,|partial)|
|00000c90| 2b 78 6c 3b 0d 09 09 64 | 6f 20 7b 0d 09 09 09 2b |+xl;...d|o {....+|
|00000ca0| 2b 79 6c 3b 09 0d 09 09 | 09 74 69 6c 65 20 3d 20 |+yl;....|.tile = |
|00000cb0| 74 69 6c 65 6d 61 70 5b | 79 6c 5d 5b 46 72 61 63 |tilemap[|yl][Frac|
|00000cc0| 3e 3e 46 52 41 43 42 49 | 54 53 5d 3b 0d 09 09 09 |>>FRACBI|TS];....|
|00000cd0| 69 66 20 28 74 69 6c 65 | 20 26 20 54 49 5f 42 4c |if (tile| & TI_BL|
|00000ce0| 4f 43 4b 53 49 47 48 54 | 29 20 7b 0d 09 09 09 09 |OCKSIGHT|) {.....|
|00000cf0| 72 65 74 75 72 6e 20 46 | 41 4c 53 45 3b 0d 09 09 |return F|ALSE;...|
|00000d00| 09 7d 0d 09 09 09 69 66 | 20 28 74 69 6c 65 20 26 |.}....if| (tile &|
|00000d10| 20 54 49 5f 44 4f 4f 52 | 29 20 7b 09 2f 2a 20 73 | TI_DOOR|) {./* s|
|00000d20| 65 65 20 69 66 20 74 68 | 65 20 64 6f 6f 72 20 69 |ee if th|e door i|
|00000d30| 73 20 6f 70 65 6e 20 65 | 6e 6f 75 67 68 2a 2f 0d |s open e|nough*/.|
|00000d40| 09 09 09 09 69 6e 74 65 | 72 63 65 70 74 20 3d 20 |....inte|rcept = |
|00000d50| 28 28 53 74 65 70 2f 32 | 29 2b 46 72 61 63 29 26 |((Step/2|)+Frac)&|
|00000d60| 30 78 66 66 3b 0d 09 09 | 09 09 69 66 20 28 69 6e |0xff;...|..if (in|
|00000d70| 74 65 72 63 65 70 74 20 | 3e 20 64 6f 6f 72 73 5b |tercept |> doors[|
|00000d80| 74 69 6c 65 26 54 49 5f | 4e 55 4d 4d 41 53 4b 5d |tile&TI_|NUMMASK]|
|00000d90| 2e 70 6f 73 69 74 69 6f | 6e 29 20 7b 0d 09 09 09 |.positio|n) {....|
|00000da0| 09 09 72 65 74 75 72 6e | 20 46 41 4c 53 45 3b 09 |..return| FALSE;.|
|00000db0| 2f 2a 20 43 61 6e 27 74 | 20 73 65 65 21 20 2a 2f |/* Can't| see! */|
|00000dc0| 0d 09 09 09 09 7d 0d 09 | 09 09 7d 0d 09 09 09 46 |.....}..|..}....F|
|00000dd0| 72 61 63 20 2b 3d 20 53 | 74 65 70 3b 0d 09 09 7d |rac += S|tep;...}|
|00000de0| 20 77 68 69 6c 65 20 28 | 79 6c 3c 79 68 29 3b 0d | while (|yl<yh);.|
|00000df0| 09 7d 0d 09 72 65 74 75 | 72 6e 20 54 52 55 45 3b |.}..retu|rn TRUE;|
|00000e00| 09 2f 2a 20 59 6f 75 20 | 61 72 65 20 76 69 73 69 |./* You |are visi|
|00000e10| 62 6c 65 20 2a 2f 0d 7d | 0d 0d 2f 2a 2a 2a 2a 2a |ble */.}|../*****|
|00000e20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000e30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 0d 0d 09 |********|*****...|
|00000e40| 50 75 74 73 20 61 63 74 | 6f 72 20 69 6e 74 6f 20 |Puts act|or into |
|00000e50| 61 74 74 61 63 6b 20 6d | 6f 64 65 2c 20 65 69 74 |attack m|ode, eit|
|00000e60| 68 65 72 20 61 66 74 65 | 72 20 72 65 61 63 74 69 |her afte|r reacti|
|00000e70| 6f 6e 20 74 69 6d 65 20 | 6f 72 20 62 65 69 6e 67 |on time |or being|
|00000e80| 20 73 68 6f 74 0d 0d 2a | 2a 2a 2a 2a 2a 2a 2a 2a | shot..*|********|
|00000e90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000ea0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2f 0d 0d 76 6f 69 64 |********|*/..void|
|00000eb0| 20 46 69 72 73 74 53 69 | 67 68 74 69 6e 67 28 61 | FirstSi|ghting(a|
|00000ec0| 63 74 6f 72 5f 74 20 2a | 41 63 74 6f 72 50 74 72 |ctor_t *|ActorPtr|
|00000ed0| 29 0d 7b 0d 09 63 6c 61 | 73 73 69 6e 66 6f 5f 74 |).{..cla|ssinfo_t|
|00000ee0| 09 2a 69 6e 66 6f 3b 0d | 09 57 6f 72 64 20 73 6f |.*info;.|.Word so|
|00000ef0| 75 6e 64 3b 0d 09 0d 09 | 69 6e 66 6f 20 3d 20 26 |und;....|info = &|
|00000f00| 63 6c 61 73 73 69 6e 66 | 6f 5b 41 63 74 6f 72 50 |classinf|o[ActorP|
|00000f10| 74 72 2d 3e 63 6c 61 73 | 73 5d 3b 09 2f 2a 20 47 |tr->clas|s];./* G|
|00000f20| 65 74 20 70 6f 69 6e 74 | 65 72 20 74 6f 20 69 6e |et point|er to in|
|00000f30| 66 6f 20 72 65 63 6f 72 | 64 20 2a 2f 0d 09 73 6f |fo recor|d */..so|
|00000f40| 75 6e 64 20 3d 20 69 6e | 66 6f 2d 3e 73 69 67 68 |und = in|fo->sigh|
|00000f50| 74 73 6f 75 6e 64 3b 09 | 09 09 2f 2a 20 47 65 74 |tsound;.|../* Get|
|00000f60| 20 74 68 65 20 72 65 71 | 75 65 73 74 65 64 20 73 | the req|uested s|
|00000f70| 6f 75 6e 64 20 2a 2f 0d | 09 69 66 20 28 73 6f 75 |ound */.|.if (sou|
|00000f80| 6e 64 20 3d 3d 20 53 4e | 44 5f 45 53 45 45 29 20 |nd == SN|D_ESEE) |
|00000f90| 7b 09 2f 2a 20 6d 61 6b | 65 20 72 61 6e 64 6f 6d |{./* mak|e random|
|00000fa0| 20 68 75 6d 61 6e 20 73 | 6f 75 6e 64 2a 2f 0d 09 | human s|ound*/..|
|00000fb0| 09 73 6f 75 6e 64 20 3d | 20 4e 61 7a 69 53 6f 75 |.sound =| NaziSou|
|00000fc0| 6e 64 5b 77 5f 72 6e 64 | 28 29 26 33 5d 3b 09 2f |nd[w_rnd|()&3];./|
|00000fd0| 2a 20 4d 61 6b 65 20 61 | 20 64 69 66 66 65 72 61 |* Make a| differa|
|00000fe0| 6e 74 20 73 6f 75 6e 64 | 20 2a 2f 0d 09 7d 0d 09 |nt sound| */..}..|
|00000ff0| 50 6c 61 79 53 6f 75 6e | 64 28 73 6f 75 6e 64 7c |PlaySoun|d(sound||
|00001000| 30 78 38 30 30 30 29 3b | 09 09 09 2f 2a 20 50 6c |0x8000);|.../* Pl|
|00001010| 61 79 20 74 68 65 20 73 | 69 67 68 74 20 73 6f 75 |ay the s|ight sou|
|00001020| 6e 64 20 2a 2f 0d 09 4e | 65 77 53 74 61 74 65 28 |nd */..N|ewState(|
|00001030| 41 63 74 6f 72 50 74 72 | 2c 69 6e 66 6f 2d 3e 73 |ActorPtr|,info->s|
|00001040| 69 67 68 74 73 74 61 74 | 65 29 3b 09 2f 2a 20 53 |ightstat|e);./* S|
|00001050| 65 74 20 74 68 65 20 6e | 65 78 74 20 73 74 61 74 |et the n|ext stat|
|00001060| 65 20 2a 2f 0d 09 41 63 | 74 6f 72 50 74 72 2d 3e |e */..Ac|torPtr->|
|00001070| 66 6c 61 67 73 20 7c 3d | 20 46 4c 5f 41 43 54 49 |flags |=| FL_ACTI|
|00001080| 56 45 3b 09 09 09 2f 2a | 20 4d 61 6b 65 20 69 74 |VE;.../*| Make it|
|00001090| 20 61 63 74 69 76 65 20 | 2a 2f 0d 7d 0d 0d 2f 2a | active |*/.}../*|
|000010a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000010b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000010c0| 2a 0d 0d 09 43 61 6c 6c | 65 64 20 62 79 20 61 63 |*...Call|ed by ac|
|000010d0| 74 6f 72 73 20 74 68 61 | 74 20 41 52 45 20 4e 4f |tors tha|t ARE NO|
|000010e0| 54 20 63 68 61 73 69 6e | 67 20 74 68 65 20 70 6c |T chasin|g the pl|
|000010f0| 61 79 65 72 2e 20 49 66 | 20 74 68 65 20 70 6c 61 |ayer. If| the pla|
|00001100| 79 65 72 0d 20 09 69 73 | 20 64 65 74 65 63 74 65 |yer. .is| detecte|
|00001110| 64 20 28 62 79 20 73 69 | 67 68 74 2c 20 6e 6f 69 |d (by si|ght, noi|
|00001120| 73 65 2c 20 6f 72 20 70 | 72 6f 78 69 6d 69 74 79 |se, or p|roximity|
|00001130| 29 2c 20 74 68 65 20 61 | 63 74 6f 72 20 69 73 20 |), the a|ctor is |
|00001140| 70 75 74 20 69 6e 74 6f | 0d 20 09 69 74 27 73 20 |put into|. .it's |
|00001150| 63 6f 6d 62 61 74 20 66 | 72 61 6d 65 2e 0d 0d 20 |combat f|rame... |
|00001160| 09 49 6e 63 6f 72 70 6f | 72 61 74 65 73 20 61 20 |.Incorpo|rates a |
|00001170| 72 61 6e 64 6f 6d 20 72 | 65 61 63 74 69 6f 6e 20 |random r|eaction |
|00001180| 64 65 6c 61 79 2e 0d 0d | 2a 2a 2a 2a 2a 2a 2a 2a |delay...|********|
|00001190| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000011a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2f 0d 0d 76 6f 69 |********|**/..voi|
|000011b0| 64 20 54 5f 53 74 61 6e | 64 28 61 63 74 6f 72 5f |d T_Stan|d(actor_|
|000011c0| 74 20 2a 41 63 74 6f 72 | 50 74 72 29 0d 7b 0d 09 |t *Actor|Ptr).{..|
|000011d0| 69 66 20 28 41 63 74 6f | 72 50 74 72 2d 3e 72 65 |if (Acto|rPtr->re|
|000011e0| 61 63 74 74 69 6d 65 29 | 20 7b 09 09 2f 2a 20 57 |acttime)| {../* W|
|000011f0| 61 69 74 69 6e 67 20 74 | 6f 20 72 65 61 63 74 3f |aiting t|o react?|
|00001200| 20 2a 2f 0d 09 09 69 66 | 20 28 41 63 74 6f 72 50 | */...if| (ActorP|
|00001210| 74 72 2d 3e 72 65 61 63 | 74 74 69 6d 65 3e 54 69 |tr->reac|ttime>Ti|
|00001220| 63 43 6f 75 6e 74 29 20 | 7b 09 2f 2a 20 53 74 69 |cCount) |{./* Sti|
|00001230| 6c 6c 20 77 61 69 74 69 | 6e 67 3f 20 2a 2f 0d 09 |ll waiti|ng? */..|
|00001240| 09 09 41 63 74 6f 72 50 | 74 72 2d 3e 72 65 61 63 |..ActorP|tr->reac|
|00001250| 74 74 69 6d 65 2d 3d 54 | 69 63 43 6f 75 6e 74 3b |ttime-=T|icCount;|
|00001260| 09 2f 2a 20 43 6f 75 6e | 74 20 64 6f 77 6e 20 2a |./* Coun|t down *|
|00001270| 2f 0d 09 09 09 72 65 74 | 75 72 6e 3b 0d 09 09 7d |/....ret|urn;...}|
|00001280| 0d 09 09 69 66 20 28 41 | 63 74 6f 72 50 74 72 2d |...if (A|ctorPtr-|
|00001290| 3e 66 6c 61 67 73 26 46 | 4c 5f 41 4d 42 55 53 48 |>flags&F|L_AMBUSH|
|000012a0| 20 29 20 7b 09 2f 2a 20 | 41 6d 62 75 73 68 20 61 | ) {./* |Ambush a|
|000012b0| 63 74 6f 72 3f 20 2a 2f | 0d 09 09 09 69 66 20 28 |ctor? */|....if (|
|000012c0| 21 43 68 65 63 6b 4c 69 | 6e 65 28 41 63 74 6f 72 |!CheckLi|ne(Actor|
|000012d0| 50 74 72 29 29 20 7b 09 | 2f 2a 20 43 61 6e 20 49 |Ptr)) {.|/* Can I|
|000012e0| 20 73 65 65 20 79 6f 75 | 3f 20 2a 2f 0d 09 09 09 | see you|? */....|
|000012f0| 09 41 63 74 6f 72 50 74 | 72 2d 3e 72 65 61 63 74 |.ActorPt|r->react|
|00001300| 74 69 6d 65 3d 31 3b 09 | 2f 2a 20 62 65 20 76 65 |time=1;.|/* be ve|
|00001310| 72 79 20 72 65 61 64 79 | 2c 20 62 75 74 2a 2f 0d |ry ready|, but*/.|
|00001320| 09 09 09 09 72 65 74 75 | 72 6e 3b 09 09 09 09 09 |....retu|rn;.....|
|00001330| 2f 2a 20 64 6f 6e 27 74 | 20 61 74 74 61 63 6b 20 |/* don't| attack |
|00001340| 79 65 74 2a 2f 0d 09 09 | 09 7d 0d 09 09 09 41 63 |yet*/...|.}....Ac|
|00001350| 74 6f 72 50 74 72 2d 3e | 66 6c 61 67 73 20 26 3d |torPtr->|flags &=|
|00001360| 20 7e 46 4c 5f 41 4d 42 | 55 53 48 3b 09 2f 2a 20 | ~FL_AMB|USH;./* |
|00001370| 43 6c 65 61 72 20 74 68 | 65 20 61 6d 62 75 73 68 |Clear th|e ambush|
|00001380| 20 66 6c 61 67 20 2a 2f | 0d 09 09 7d 0d 09 09 46 | flag */|...}...F|
|00001390| 69 72 73 74 53 69 67 68 | 74 69 6e 67 28 41 63 74 |irstSigh|ting(Act|
|000013a0| 6f 72 50 74 72 29 3b 09 | 09 2f 2a 20 41 74 74 61 |orPtr);.|./* Atta|
|000013b0| 63 6b 20 74 68 65 20 70 | 6c 61 79 65 72 21 20 2a |ck the p|layer! *|
|000013c0| 2f 0d 09 09 41 63 74 6f | 72 50 74 72 2d 3e 72 65 |/...Acto|rPtr->re|
|000013d0| 61 63 74 74 69 6d 65 3d | 30 3b 0d 09 7d 0d 0d 2f |acttime=|0;..}../|
|000013e0| 2a 20 48 61 76 65 6e 27 | 74 20 73 65 65 6e 20 70 |* Haven'|t seen p|
|000013f0| 6c 61 79 65 72 20 79 65 | 74 2a 2f 0d 0d 09 69 66 |layer ye|t*/...if|
|00001400| 20 28 6d 61 64 65 6e 6f | 69 73 65 20 7c 7c 20 43 | (madeno|ise || C|
|00001410| 68 65 63 6b 4c 69 6e 65 | 28 41 63 74 6f 72 50 74 |heckLine|(ActorPt|
|00001420| 72 29 29 20 7b 09 2f 2a | 20 4d 61 64 65 20 61 20 |r)) {./*| Made a |
|00001430| 67 75 6e 20 73 68 6f 74 | 3f 20 53 65 65 6e 3f 20 |gun shot|? Seen? |
|00001440| 2a 2f 0d 09 09 41 63 74 | 6f 72 50 74 72 2d 3e 72 |*/...Act|orPtr->r|
|00001450| 65 61 63 74 74 69 6d 65 | 20 3d 20 28 77 5f 72 6e |eacttime| = (w_rn|
|00001460| 64 28 29 20 26 20 63 6c | 61 73 73 69 6e 66 6f 5b |d() & cl|assinfo[|
|00001470| 41 63 74 6f 72 50 74 72 | 2d 3e 63 6c 61 73 73 5d |ActorPtr|->class]|
|00001480| 2e 72 65 61 63 74 69 6f | 6e 6d 61 73 6b 29 2a 34 |.reactio|nmask)*4|
|00001490| 2b 31 3b 0d 09 7d 0d 7d | 0d 0d 0d 00 00 00 00 00 |+1;..}.}|........|
|000014a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001500| 00 00 01 00 00 00 01 4c | 00 00 00 4c 00 00 00 32 |.......L|...L...2|
|00001510| 69 74 20 28 29 3b 0d 20 | 20 20 20 2a 53 50 43 37 |it ();. | *SPC7|
|00001520| 30 30 50 6f 72 74 30 20 | 3d 20 76 6f 69 63 65 3b |00Port0 |= voice;|
|00001530| 07 53 69 67 68 74 2e 63 | 02 00 00 00 54 45 58 54 |.Sight.c|....TEXT|
|00001540| 70 64 6f 73 01 00 00 d0 | 01 80 00 00 00 00 0b fe |pdos....|........|
|00001550| 00 00 54 45 58 54 70 64 | 6f 73 01 00 00 d0 01 80 |..TEXTpd|os......|
|00001560| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001570| 00 00 a9 61 c9 bc 00 00 | 14 1b 00 00 01 7e 6c 6f |...a....|.....~lo|
|00001580| 6e 67 29 63 75 72 72 61 | 74 65 5b 76 6f 69 63 65 |ng)curra|te[voice|
|00001590| 5d 2a 28 30 78 65 30 20 | 2b 20 28 62 65 6e 64 3e |]*(0xe0 |+ (bend>|
|000015a0| 3e 32 29 29 20 29 20 3e | 3e 38 3b 0d 20 20 20 20 |>2)) ) >|>8;. |
|000015b0| 53 6e 64 43 6d 64 20 28 | 20 44 52 56 5f 50 49 54 |SndCmd (| DRV_PIT|
|000015c0| 43 48 42 45 4e 44 20 29 | 3b 0d 20 20 20 20 2f 2a |CHBEND )|;. /*|
|000015d0| 20 61 73 6d 20 7b 70 6c | 70 7d 3b 20 2a 2f 0d 7d | asm {pl|p}; */.}|
|000015e0| 0d 0d 0d 76 6f 69 64 20 | 6c 6f 61 64 69 6e 73 74 |...void |loadinst|
|000015f0| 72 75 6d 65 6e 74 20 28 | 69 6e 74 20 69 6e 73 74 |rument (|int inst|
|00001600| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 00 00 00 |...H..Mo|naco....|
|00001610| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001620| 00 00 00 00 00 00 00 03 | 00 04 00 36 00 0e 01 c4 |........|...6....|
|00001630| 02 72 00 36 00 0e 01 c4 | 02 72 aa ca b8 2c 00 00 |.r.6....|.r...,..|
|00001640| 0a 4c 00 00 0a 4c 00 00 | 09 dd 01 00 00 00 01 00 |.L...L..|........|
|00001650| 00 00 01 4c 00 00 00 4c | 00 00 00 32 00 ba db 18 |...L...L|...2....|
|00001660| 0d 98 00 00 00 1c 00 32 | 00 00 4d 50 53 52 00 00 |.......2|..MPSR..|
|00001670| 00 0a 03 ed ff ff 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+