home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Basic / bb_exa.dms / in.adf / simonsdemos / isoblaster.bb < prev    next >
Unknown  |  1995-10-19  |  3.9 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 00 3b 20 49 73 6f 42 | 6c 61 73 74 65 72 20 56 |;.; IsoB|laster V|
|00000010| 30 2e 31 20 62 79 20 53 | 69 6d 6f 6e 20 41 72 6d |0.1 by S|imon Arm|
|00000020| 73 74 72 6f 6e 67 00 3b | 00 3b 20 59 6f 75 20 68 |strong.;|.; You h|
|00000030| 61 76 65 20 74 6f 20 72 | 75 6e 20 49 73 6f 72 65 |ave to r|un Isore|
|00000040| 6e 64 65 72 20 66 69 72 | 73 74 20 74 6f 20 63 72 |nder fir|st to cr|
|00000050| 65 61 74 65 20 74 68 65 | 20 73 68 61 70 65 73 00 |eate the| shapes.|
|00000060| 00 3b 00 3b 20 73 65 74 | 20 75 70 20 61 6c 6c 20 |.;.; set| up all |
|00000070| 74 68 65 20 6d 61 69 6e | 20 74 79 70 65 73 20 61 |the main| types a|
|00000080| 6e 64 20 61 72 72 61 79 | 73 00 3b 00 00 80 01 20 |nd array|s.;.... |
|00000090| 2e 6f 62 6a 65 63 74 20 | 20 3b 73 61 6d 65 20 69 |.object | ;same i|
|000000a0| 73 20 49 73 6f 52 65 6e | 64 65 72 2e 62 62 20 62 |s IsoRen|der.bb b|
|000000b0| 75 74 20 77 69 74 68 20 | 65 78 74 72 61 20 66 69 |ut with |extra fi|
|000000c0| 65 6c 64 73 00 20 20 64 | 65 70 74 68 2e 71 3a 69 |elds. d|epth.q:i|
|000000d0| 64 20 20 20 20 20 3b 64 | 65 70 74 68 20 61 6e 64 |d ;d|epth and|
|000000e0| 20 73 68 61 70 65 20 69 | 64 20 30 3d 6d 65 20 31 | shape i|d 0=me 1|
|000000f0| 3d 6d 6f 7a 7a 79 00 20 | 20 78 3a 79 3a 7a 20 20 |=mozzy. | x:y:z |
|00000100| 20 20 20 20 20 20 20 20 | 3b 33 44 20 63 6f 6f 72 | |;3D coor|
|00000110| 64 69 6e 61 74 65 73 20 | 6f 66 20 73 68 61 70 65 |dinates |of shape|
|00000120| 00 20 20 76 78 3a 76 79 | 20 20 20 20 20 20 20 20 |. vx:vy| |
|00000130| 20 20 3b 76 65 6c 6f 63 | 69 74 79 20 69 6e 20 62 | ;veloc|ity in b|
|00000140| 6f 74 68 20 78 20 61 6e | 64 20 79 00 20 20 72 6f |oth x an|d y. ro|
|00000150| 74 3a 72 6f 74 32 3a 72 | 6f 74 76 20 20 3b 72 6f |t:rot2:r|otv ;ro|
|00000160| 74 61 74 69 6f 6e 20 76 | 61 72 69 61 62 6c 65 73 |tation v|ariables|
|00000170| 00 20 20 73 78 3a 73 79 | 20 20 20 20 20 20 20 20 |. sx:sy| |
|00000180| 20 20 3b 73 63 72 65 65 | 6e 20 70 6f 73 69 74 69 | ;scree|n positi|
|00000190| 6f 6e 20 61 66 74 65 72 | 20 61 6e 20 69 73 6f 2d |on after| an iso-|
|000001a0| 70 72 6f 6a 65 63 74 69 | 6f 6e 00 80 02 20 80 01 |projecti|on... ..|
|000001b0| 00 00 80 04 20 80 b3 20 | 62 6f 62 2e 6f 62 6a 65 |.... .. |bob.obje|
|000001c0| 63 74 28 35 30 29 00 00 | 80 33 20 2e 6f 62 6a 65 |ct(50)..|.3 .obje|
|000001d0| 63 74 20 2a 6d 65 00 00 | 80 04 20 71 73 69 6e 28 |ct *me..|.. qsin(|
|000001e0| 32 35 35 29 2c 71 63 6f | 73 28 32 35 35 29 20 20 |255),qco|s(255) |
|000001f0| 3b 73 65 74 20 75 70 20 | 61 72 72 61 79 20 6f 66 |;set up |array of|
|00000200| 20 73 69 6e 2f 63 6f 73 | 20 76 61 6c 75 65 73 20 | sin/cos| values |
|00000210| 73 6f 00 80 16 20 72 3d | 30 20 80 18 20 32 35 35 |so... r=|0 .. 255|
|00000220| 20 20 20 20 20 20 20 20 | 20 20 20 3b 77 65 20 64 | | ;we d|
|00000230| 6f 6e 27 74 20 68 61 76 | 65 20 74 6f 20 63 61 6c |on't hav|e to cal|
|00000240| 6c 20 73 79 73 20 6f 6e | 65 73 20 69 6e 20 67 61 |l sys on|es in ga|
|00000250| 6d 65 00 20 20 71 73 69 | 6e 28 72 29 3d e0 0a 28 |me. qsi|n(r)=..(|
|00000260| 80 ba 2a 72 2f 31 32 38 | 29 3a 71 63 6f 73 28 72 |..*r/128|):qcos(r|
|00000270| 29 3d e0 05 28 80 ba 2a | 72 2f 31 32 38 29 00 80 |)=..(..*|r/128)..|
|00000280| 17 00 00 80 04 20 6d 61 | 70 2e 77 28 32 30 2c 32 |..... ma|p.w(20,2|
|00000290| 30 29 20 3b 62 69 74 20 | 73 6d 61 6c 6c 65 72 20 |0) ;bit |smaller |
|000002a0| 74 68 61 6e 20 74 68 65 | 20 64 75 6e 67 65 6f 6e |than the| dungeon|
|000002b0| 20 28 61 74 20 70 72 65 | 73 65 6e 74 29 00 00 3b | (at pre|sent)..;|
|000002c0| 00 3b 20 6c 6f 61 64 20 | 61 6c 6c 20 74 68 65 20 |.; load |all the |
|000002d0| 67 72 61 70 68 69 63 73 | 20 66 72 6f 6d 20 64 69 |graphics| from di|
|000002e0| 73 6b 00 3b 00 00 cd 0a | 20 30 2c 22 62 6c 6f 63 |sk.;....| 0,"bloc|
|000002f0| 6b 73 2e 73 68 61 70 65 | 73 22 20 20 3b 74 69 6c |ks.shape|s" ;til|
|00000300| 65 73 20 66 6f 72 20 74 | 68 65 20 67 72 6f 75 6e |es for t|he groun|
|00000310| 64 00 cd 0a 20 34 2c 22 | 62 61 6c 6c 73 2e 73 68 |d... 4,"|balls.sh|
|00000320| 61 70 65 73 22 20 20 20 | 3b 62 61 6c 6c 73 20 66 |apes" |;balls f|
|00000330| 6f 72 20 66 78 20 65 74 | 63 2e 00 ce 01 20 30 2c |or fx et|c.... 0,|
|00000340| 22 62 61 6c 6c 73 2e 69 | 66 66 22 20 20 20 20 20 |"balls.i|ff" |
|00000350| 3b 70 61 6c 65 74 74 65 | 20 66 6f 72 20 66 6f 72 |;palette| for for|
|00000360| 67 72 6f 75 6e 64 20 70 | 6c 61 79 66 69 65 6c 64 |ground p|layfield|
|00000370| 00 ce 01 20 30 2c 22 62 | 6c 6f 63 6b 73 2e 69 66 |... 0,"b|locks.if|
|00000380| 66 22 2c 38 20 20 3b 70 | 61 6c 65 74 74 65 20 66 |f",8 ;p|alette f|
|00000390| 6f 72 20 62 61 63 6b 72 | 67 72 6f 75 6e 64 00 cd |or backr|ground..|
|000003a0| 0a 20 31 36 2c 22 69 73 | 6f 73 68 61 70 65 73 22 |. 16,"is|oshapes"|
|000003b0| 20 20 20 20 20 3b 73 68 | 61 70 65 73 20 72 65 6e | ;sh|apes ren|
|000003c0| 64 65 72 65 64 20 62 79 | 20 49 73 6f 52 65 6e 64 |dered by| IsoRend|
|000003d0| 65 72 2e 62 62 00 00 d0 | 01 20 30 2c 33 32 30 2b |er.bb...|. 0,320+|
|000003e0| 36 34 2c 32 35 36 2b 38 | 30 2c 33 20 20 3b 66 6f |64,256+8|0,3 ;fo|
|000003f0| 72 65 67 72 6f 75 6e 64 | 20 41 00 d0 01 20 31 2c |reground| A... 1,|
|00000400| 33 32 30 2b 36 34 2c 32 | 35 36 2b 38 30 2c 33 20 |320+64,2|56+80,3 |
|00000410| 20 3b 66 6f 72 65 67 72 | 6f 75 6e 64 20 42 00 d0 | ;foregr|ound B..|
|00000420| 01 20 32 2c 36 34 30 2c | 35 31 32 2c 33 20 20 20 |. 2,640,|512,3 |
|00000430| 20 20 20 20 20 3b 6c 61 | 72 67 65 20 73 63 72 6f | ;la|rge scro|
|00000440| 6c 6c 69 6e 67 20 62 61 | 63 6b 67 72 6f 75 6e 64 |lling ba|ckground|
|00000450| 00 00 ca 01 20 30 2c 33 | 32 3a ca 01 20 31 2c 33 |.... 0,3|2:.. 1,3|
|00000460| 32 20 20 20 20 20 3b 74 | 77 6f 20 71 75 65 75 65 |2 ;t|wo queue|
|00000470| 73 20 66 6f 72 20 64 6f | 75 62 6c 65 20 62 75 66 |s for do|uble buf|
|00000480| 66 65 72 65 64 20 62 6c | 69 74 74 69 6e 67 00 00 |fered bl|itting..|
|00000490| 80 0d 20 70 20 33 32 30 | 2b 28 60 31 2d 60 32 29 |.. p 320|+(`1-`2)|
|000004a0| 80 44 20 34 2c 31 32 38 | 2b 28 60 31 2b 60 32 2d |.D 4,128|+(`1+`2-|
|000004b0| 60 33 29 80 44 33 3a 80 | 02 20 80 0d 20 20 20 20 |`3).D3:.|. .. |
|000004c0| 20 20 20 3b 62 61 63 6b | 00 80 0d 20 66 20 33 32 | ;back|... f 32|
|000004d0| 30 2b 33 32 2d 73 78 2b | 28 60 31 2d 60 32 29 80 |0+32-sx+|(`1-`2).|
|000004e0| 44 34 2c 31 32 38 2b 33 | 32 2d 73 79 2b 28 60 31 |D4,128+3|2-sy+(`1|
|000004f0| 2b 60 32 2d 60 33 29 80 | 44 33 3a 80 02 20 80 0d |+`2-`3).|D3:.. ..|
|00000500| 20 20 3b 66 72 6f 6e 74 | 00 00 3b 00 3b 20 63 72 | ;front|..;.; cr|
|00000510| 65 61 74 65 20 42 6c 69 | 74 7a 20 4d 6f 64 65 20 |eate Bli|tz Mode |
|00000520| 64 69 73 70 6c 61 79 20 | 77 68 69 63 68 20 66 6f |display |which fo|
|00000530| 72 20 74 68 69 73 20 67 | 61 6d 65 20 69 73 00 3b |r this g|ame is.;|
|00000540| 20 64 75 61 6c 20 70 6c | 61 79 66 69 65 6c 64 20 | dual pl|ayfield |
|00000550| 77 69 74 68 20 64 6f 75 | 62 6c 65 20 62 75 66 66 |with dou|ble buff|
|00000560| 65 72 65 64 20 66 6f 72 | 65 67 72 6f 75 6e 64 21 |ered for|eground!|
|00000570| 00 3b 00 00 80 34 00 c8 | 01 20 30 2c 34 34 2c 33 |.;...4..|. 0,44,3|
|00000580| 32 30 2c 32 35 36 2c 24 | 66 66 66 61 2c 36 2c 38 |20,256,$|fffa,6,8|
|00000590| 2c 33 32 2c 33 32 30 2b | 36 34 2c 36 34 30 00 80 |,32,320+|64,640..|
|000005a0| 2c 20 ce 09 20 30 00 00 | 80 06 20 73 65 74 75 70 |, .. 0..|.. setup|
|000005b0| 6d 61 70 20 20 3b 70 6c | 61 63 65 20 61 20 66 65 |map ;pl|ace a fe|
|000005c0| 77 20 62 6c 6f 63 6b 73 | 20 69 6e 20 74 68 65 20 |w blocks| in the |
|000005d0| 32 44 20 61 72 72 61 79 | 00 80 06 20 64 72 61 77 |2D array|... draw|
|000005e0| 6d 61 70 20 20 20 3b 64 | 72 61 77 20 6d 61 70 20 |map ;d|raw map |
|000005f0| 6f 6e 74 6f 20 6c 61 72 | 67 65 20 62 61 63 6b 67 |onto lar|ge backg|
|00000600| 72 6f 75 6e 64 20 70 6c | 61 79 66 69 65 6c 64 00 |round pl|ayfield.|
|00000610| 80 06 20 69 6e 69 74 67 | 61 6d 65 20 20 3b 69 6e |.. initg|ame ;in|
|00000620| 69 74 69 61 6c 69 73 65 | 20 6f 62 6a 65 63 74 73 |itialise| objects|
|00000630| 20 69 6e 20 74 68 65 20 | 67 61 6d 65 00 00 3b 20 | in the |game..; |
|00000640| 74 68 65 6e 20 6f 66 20 | 63 6f 75 72 73 65 20 74 |then of |course t|
|00000650| 68 65 20 73 74 61 6e 64 | 61 72 64 20 6d 61 69 6e |he stand|ard main|
|00000660| 20 6c 6f 6f 70 20 6f 66 | 20 61 6e 79 20 67 61 6d | loop of| any gam|
|00000670| 65 2e 2e 2e 00 00 80 0c | 20 df 04 28 30 29 3d 30 |e.......| ..(0)=0|
|00000680| 00 20 20 80 37 3a c8 05 | 20 64 62 2c 33 32 2c 34 |. .7:..| db,32,4|
|00000690| 30 2c 73 78 3a c8 06 20 | 32 2c 73 78 2c 73 79 2c |0,sx:.. |2,sx,sy,|
|000006a0| 33 32 20 20 3b 70 6f 73 | 69 74 69 6f 6e 20 62 69 |32 ;pos|ition bi|
|000006b0| 74 6d 61 70 73 20 69 6e | 20 64 69 73 70 6c 61 79 |tmaps in| display|
|000006c0| 00 20 20 64 62 3d 31 2d | 64 62 3a 80 2c 20 d0 01 |. db=1-|db:., ..|
|000006d0| 20 64 62 20 20 20 20 20 | 3b 73 77 61 70 20 62 75 | db |;swap bu|
|000006e0| 66 66 65 72 20 66 6f 72 | 20 64 6f 75 62 6c 65 20 |ffer for| double |
|000006f0| 62 75 66 66 65 72 65 64 | 20 64 72 61 77 69 6e 67 |buffered| drawing|
|00000700| 00 20 20 80 06 20 6d 6f | 76 65 6d 65 20 20 20 20 |. .. mo|veme |
|00000710| 20 20 20 20 20 20 20 20 | 20 20 3b 6d 6f 76 65 20 | | ;move |
|00000720| 6d 65 00 20 20 80 06 20 | 6d 6f 76 65 74 68 65 6d |me. .. |movethem|
|00000730| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 61 6e 64 | | ;and|
|00000740| 20 74 68 65 6d 00 20 20 | ca 03 20 64 62 3a 80 06 | them. |.. db:..|
|00000750| 20 64 72 61 77 62 6f 62 | 73 20 3b 74 68 65 6e 20 | drawbob|s ;then |
|00000760| 64 72 61 77 20 65 76 65 | 72 79 6f 6e 65 20 69 6e |draw eve|ryone in|
|00000770| 20 6e 65 77 20 70 6f 73 | 00 3b 20 20 4d 4f 56 45 | new pos|.; MOVE|
|00000780| 23 2d 31 2c 24 64 66 66 | 31 38 30 20 20 20 3b 76 |#-1,$dff|180 ;v|
|00000790| 69 65 77 20 66 72 61 6d | 65 20 74 69 6d 65 21 00 |iew fram|e time!.|
|000007a0| 80 c1 00 00 80 02 00 00 | 3b 00 3b 20 61 6e 64 20 |........|;.; and |
|000007b0| 6e 6f 77 20 77 68 61 74 | 20 6d 61 6b 65 73 20 65 |now what| makes e|
|000007c0| 76 65 72 79 74 68 69 6e | 67 20 77 6f 72 6b 20 70 |verythin|g work p|
|000007d0| 72 6f 70 65 72 6c 79 21 | 00 3b 00 00 2e 6d 6f 76 |roperly!|.;...mov|
|000007e0| 65 6d 65 3a 00 20 20 80 | ca 20 2a 6d 65 20 20 20 |eme:. .|. *me |
|000007f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000800| 20 20 3b 75 73 65 20 70 | 6f 69 6e 74 65 72 20 74 | ;use p|ointer t|
|00000810| 6f 20 6d 79 20 6f 62 6a | 65 63 74 20 69 6e 20 6c |o my obj|ect in l|
|00000820| 69 73 74 00 20 20 5c 72 | 6f 74 3d bc 06 28 5c 72 |ist. \r|ot=..(\r|
|00000830| 6f 74 2d df 01 28 31 29 | 2f 32 2c 30 2c 31 36 29 |ot-..(1)|/2,0,16)|
|00000840| 20 3b 72 6f 74 61 74 65 | 20 61 63 63 6f 72 64 69 | ;rotate| accordi|
|00000850| 6e 67 20 74 6f 20 6a 6f | 79 73 74 69 63 6b 00 20 |ng to jo|ystick. |
|00000860| 20 80 0b 20 df 04 28 31 | 29 3d 31 20 20 20 20 20 | .. ..(1|)=1 |
|00000870| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b | | ;|
|00000880| 69 66 20 66 69 72 65 00 | 20 20 20 20 5c 76 78 2b |if fire.| \vx+|
|00000890| 71 73 69 6e 28 5c 72 6f | 74 20 80 44 20 34 29 20 |qsin(\ro|t .D 4) |
|000008a0| 80 45 20 36 20 20 20 20 | 3b 74 68 65 6e 20 74 68 |.E 6 |;then th|
|000008b0| 72 75 73 74 20 69 6e 20 | 64 69 72 65 63 74 69 6f |rust in |directio|
|000008c0| 6e 20 49 00 20 20 20 20 | 5c 76 79 2b 71 63 6f 73 |n I. |\vy+qcos|
|000008d0| 28 5c 72 6f 74 20 80 44 | 20 34 29 20 80 45 20 36 |(\rot .D| 4) .E 6|
|000008e0| 20 20 20 20 3b 61 6d 20 | 70 6f 69 6e 74 69 6e 67 | ;am |pointing|
|000008f0| 20 28 6d 79 20 5c 72 6f | 74 29 00 20 20 80 c0 00 | (my \ro|t). ...|
|00000900| 20 20 5c 76 78 2d 5c 76 | 78 20 80 45 20 35 20 20 | \vx-\v|x .E 5 |
|00000910| 20 20 20 20 20 20 20 20 | 3b 74 68 69 73 20 73 75 | |;this su|
|00000920| 62 74 72 61 63 74 73 20 | 61 20 66 72 61 63 74 69 |btracts |a fracti|
|00000930| 6f 6e 20 6f 66 20 6d 79 | 20 76 65 6c 6f 63 69 74 |on of my| velocit|
|00000940| 79 00 20 20 5c 76 79 2d | 5c 76 79 20 80 45 20 35 |y. \vy-|\vy .E 5|
|00000950| 20 20 20 20 20 20 20 20 | 20 20 3b 6f 66 66 20 6d | | ;off m|
|00000960| 79 20 76 65 6c 6f 63 69 | 74 79 20 28 73 61 6d 65 |y veloci|ty (same|
|00000970| 20 61 73 20 64 72 61 67 | 29 00 20 20 5c 78 3d bc | as drag|). \x=.|
|00000980| 0a 28 5c 78 2b 5c 76 78 | 2c 30 2c 31 39 29 20 3b |.(\x+\vx|,0,19) ;|
|00000990| 74 68 69 73 20 61 64 64 | 73 20 63 65 6c 6f 63 69 |this add|s celoci|
|000009a0| 74 79 20 74 6f 20 6d 79 | 20 70 6f 73 69 74 69 6f |ty to my| positio|
|000009b0| 6e 00 20 20 5c 79 3d bc | 0a 28 5c 79 2b 5c 76 79 |n. \y=.|.(\y+\vy|
|000009c0| 2c 30 2c 31 39 29 00 20 | 20 5c 73 78 3d 21 70 7b |,0,19). | \sx=!p{|
|000009d0| 5c 78 2c 5c 79 2c 5c 7a | 7d 20 20 20 20 20 20 20 |\x,\y,\z|} |
|000009e0| 20 20 3b 63 61 6c 63 75 | 6c 61 74 65 20 73 63 72 | ;calcu|late scr|
|000009f0| 65 65 6e 20 63 6f 6f 72 | 64 69 6e 61 74 65 73 00 |een coor|dinates.|
|00000a00| 20 20 73 78 3d bc 0a 28 | 5c 73 78 2d 31 36 30 2c | sx=..(|\sx-160,|
|00000a10| 30 2c 33 32 30 29 20 3b | 63 61 6c 75 6c 61 74 65 |0,320) ;|calulate|
|00000a20| 20 73 63 72 6f 6c 6c 20 | 76 61 6c 75 65 73 20 66 | scroll |values f|
|00000a30| 6f 72 20 64 69 73 70 6c | 61 79 20 73 6f 00 20 20 |or displ|ay so. |
|00000a40| 73 79 3d bc 0a 28 5c 73 | 79 2d 31 32 38 2c 30 2c |sy=..(\s|y-128,0,|
|00000a50| 32 35 36 29 20 3b 49 20 | 61 6d 20 61 73 20 63 6c |256) ;I |am as cl|
|00000a60| 6f 73 65 20 74 6f 20 63 | 65 6e 74 65 72 20 61 73 |ose to c|enter as|
|00000a70| 20 70 6f 73 73 69 62 6c | 65 00 20 20 5c 73 78 2d | possibl|e. \sx-|
|00000a80| 73 78 2b 33 32 3a 5c 73 | 79 2d 73 79 2b 33 32 00 |sx+32:\s|y-sy+32.|
|00000a90| 20 20 5c 64 65 70 74 68 | 3d 5c 78 2b 5c 79 20 20 | \depth|=\x+\y |
|00000aa0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 64 6f 6e 27 | | ;don'|
|00000ab0| 74 20 66 6f 72 67 65 74 | 20 6d 79 20 64 65 70 74 |t forget| my dept|
|00000ac0| 68 20 76 61 72 69 61 62 | 6c 65 00 20 20 80 0b 20 |h variab|le. .. |
|00000ad0| 6d 61 70 28 5c 78 2c 5c | 79 29 3d 31 20 20 20 20 |map(\x,\|y)=1 |
|00000ae0| 20 20 20 20 20 20 3b 6f | 68 20 61 6e 64 20 63 6f | ;o|h and co|
|00000af0| 6c 6f 75 72 20 69 6e 20 | 62 6c 6f 63 6b 20 69 66 |lour in |block if|
|00000b00| 20 49 20 73 74 61 6e 64 | 20 6f 6e 20 6f 6e 65 00 | I stand| on one.|
|00000b10| 20 20 20 20 80 2c 20 d0 | 01 20 32 3a 78 3d bc 02 | ., .|. 2:x=..|
|00000b20| 28 5c 78 29 3a 79 3d bc | 02 28 5c 79 29 3a cb 01 |(\x):y=.|.(\y):..|
|00000b30| 20 32 2c 21 70 7b 78 2c | 79 2c 30 7d 3a 80 2c 20 | 2,!p{x,|y,0}:., |
|00000b40| d0 01 20 64 62 00 20 20 | 80 c0 00 20 20 80 07 00 |.. db. |... ...|
|00000b50| 00 2e 6d 6f 76 65 74 68 | 65 6d 3a 00 20 20 80 ca |..moveth|em:. ..|
|00000b60| 20 62 6f 62 28 29 20 20 | 20 20 20 20 20 20 20 20 | bob() | |
|00000b70| 20 3b 73 69 6d 70 6c 65 | 20 72 6f 75 74 69 6e 65 | ;simple| routine|
|00000b80| 20 74 68 61 74 20 6c 6f | 6f 70 73 20 74 68 72 6f | that lo|ops thro|
|00000b90| 75 67 68 00 20 20 c0 04 | 20 62 6f 62 28 29 20 20 |ugh. ..| bob() |
|00000ba0| 20 20 20 20 20 20 20 3b | 61 6c 6c 20 73 68 61 70 | ;|all shap|
|00000bb0| 65 73 20 6d 61 6b 65 69 | 6e 67 20 2f 69 64 3d 32 |es makei|ng /id=2|
|00000bc0| 20 73 68 61 70 65 73 00 | 20 20 80 0c 20 c0 03 28 | shapes.| .. ..(|
|00000bd0| 62 6f 62 28 29 29 20 20 | 20 3b 66 6c 79 20 72 6f |bob()) | ;fly ro|
|00000be0| 75 6e 64 20 69 6e 20 63 | 69 72 63 6c 65 73 2e 2e |und in c|ircles..|
|00000bf0| 2e 00 20 20 20 20 80 0b | 20 5c 69 64 3d 32 00 20 |.. ..| \id=2. |
|00000c00| 20 20 20 20 20 5c 72 6f | 74 3d bc 06 28 5c 72 6f | \ro|t=..(\ro|
|00000c10| 74 2b 5c 72 6f 74 76 2c | 30 2c 31 36 29 00 20 20 |t+\rotv,|0,16). |
|00000c20| 20 20 20 20 5c 72 6f 74 | 32 3d bc 06 28 5c 72 6f | \rot|2=..(\ro|
|00000c30| 74 32 2b 31 2c 30 2c 31 | 36 29 00 20 20 20 20 20 |t2+1,0,1|6). |
|00000c40| 20 5c 78 2b 71 73 69 6e | 28 5c 72 6f 74 20 80 44 | \x+qsin|(\rot .D|
|00000c50| 20 34 29 20 80 45 20 34 | 3a 5c 79 2b 71 63 6f 73 | 4) .E 4|:\y+qcos|
|00000c60| 28 5c 72 6f 74 20 80 44 | 20 34 29 20 80 45 20 34 |(\rot .D| 4) .E 4|
|00000c70| 00 20 20 20 20 20 20 5c | 73 78 3d 21 66 7b 5c 78 |. \|sx=!f{\x|
|00000c80| 2c 5c 79 2c 5c 7a 7d 00 | 20 20 20 20 20 20 5c 64 |,\y,\z}.| \d|
|00000c90| 65 70 74 68 3d 5c 78 2b | 5c 79 00 20 20 20 20 80 |epth=\x+|\y. .|
|00000ca0| c0 00 20 20 80 c1 00 00 | 2e 64 72 61 77 62 6f 62 |.. ....|.drawbob|
|00000cb0| 73 3a 00 20 20 c0 0e 20 | 62 6f 62 28 29 2c 30 20 |s:. .. |bob(),0 |
|00000cc0| 20 20 20 20 20 20 20 3b | 73 6f 72 74 20 66 72 6f | ;|sort fro|
|00000cd0| 6d 20 62 61 63 6b 20 74 | 6f 20 66 72 6f 6e 74 00 |m back t|o front.|
|00000ce0| 20 20 c0 04 20 62 6f 62 | 28 29 20 20 20 20 20 20 | .. bob|() |
|00000cf0| 20 20 20 3b 6c 6f 6f 70 | 20 74 68 72 6f 75 67 68 | ;loop| through|
|00000d00| 20 61 6e 64 20 64 72 61 | 77 2c 20 69 66 20 74 68 | and dra|w, if th|
|00000d10| 65 79 00 20 20 80 ca 20 | 62 6f 62 28 29 20 20 20 |ey. .. |bob() |
|00000d20| 20 20 20 20 20 20 20 20 | 3b 61 72 65 20 5c 69 64 | |;are \id|
|00000d30| 3d 32 20 64 72 61 77 20 | 70 72 6f 70 65 6c 6c 6f |=2 draw |propello|
|00000d40| 72 20 61 73 20 77 65 6c | 6c 00 20 20 80 0c 20 c0 |r as wel|l. .. .|
|00000d50| 03 28 62 6f 62 28 29 29 | 00 20 20 20 20 80 0b 20 |.(bob())|. .. |
|00000d60| b4 09 28 5c 73 78 2c 5c | 73 79 2c 31 2c 31 2c 31 |..(\sx,\|sy,1,1,1|
|00000d70| 36 2c 34 30 2c 33 32 30 | 2b 33 31 2c 32 35 36 2b |6,40,320|+31,256+|
|00000d80| 34 30 29 00 20 20 20 20 | 20 20 ca 02 20 64 62 2c |40). | .. db,|
|00000d90| 5c 69 64 2a 31 36 2b 5c | 72 6f 74 2c 5c 73 78 2c |\id*16+\|rot,\sx,|
|00000da0| 5c 73 79 00 20 20 20 20 | 20 20 80 0b 20 5c 69 64 |\sy. | .. \id|
|00000db0| 3d 32 20 80 21 20 ca 02 | 20 64 62 2c 5c 69 64 2a |=2 .! ..| db,\id*|
|00000dc0| 31 36 2b 31 36 2b 5c 72 | 6f 74 32 2c 5c 73 78 2c |16+16+\r|ot2,\sx,|
|00000dd0| 5c 73 79 00 20 20 20 20 | 80 c0 00 20 20 80 c1 00 |\sy. |... ...|
|00000de0| 20 20 80 07 00 00 2e 69 | 6e 69 74 67 61 6d 65 3a | .....i|nitgame:|
|00000df0| 00 20 20 c0 07 20 62 6f | 62 28 29 00 20 20 c0 02 |. .. bo|b(). ..|
|00000e00| 20 62 6f 62 28 29 3a 2a | 6d 65 2e 6f 62 6a 65 63 | bob():*|me.objec|
|00000e10| 74 3d 62 6f 62 28 29 00 | 20 20 2a 6d 65 5c 69 64 |t=bob().| *me\id|
|00000e20| 3d 31 2c 2e 35 2c 2e 35 | 2c 30 00 20 20 80 16 20 |=1,.5,.5|,0. .. |
|00000e30| 69 3d 30 20 80 18 20 32 | 00 20 20 20 20 80 0b 20 |i=0 .. 2|. .. |
|00000e40| c0 02 28 62 6f 62 28 29 | 29 00 20 20 20 20 20 20 |..(bob()|). |
|00000e50| 62 6f 62 28 29 5c 69 64 | 3d 32 2c bc 07 28 31 39 |bob()\id|=2,..(19|
|00000e60| 29 2c bc 07 28 31 39 29 | 3a 5c 72 6f 74 76 3d 28 |),..(19)|:\rotv=(|
|00000e70| bc 07 28 31 29 2d 2e 35 | 29 80 45 20 32 00 20 20 |..(1)-.5|).E 2. |
|00000e80| 20 20 80 c0 00 20 20 80 | 17 00 20 20 80 07 00 00 | ... .|.. ....|
|00000e90| 2e 73 65 74 75 70 6d 61 | 70 3a 00 20 20 80 16 20 |.setupma|p:. .. |
|00000ea0| 78 3d 30 20 80 18 20 31 | 39 3a 80 16 20 79 3d 30 |x=0 .. 1|9:.. y=0|
|00000eb0| 20 80 18 20 31 39 3a 6d | 61 70 28 78 2c 79 29 3d | .. 19:m|ap(x,y)=|
|00000ec0| 31 3a 80 17 3a 80 17 00 | 20 20 80 16 20 78 3d 39 |1:..:...| .. x=9|
|00000ed0| 20 80 18 20 31 31 3a 80 | 16 20 79 3d 39 20 80 18 | .. 11:.|. y=9 ..|
|00000ee0| 20 31 31 3a 6d 61 70 28 | 78 2c 79 29 3d 2d 31 3a | 11:map(|x,y)=-1:|
|00000ef0| 80 17 3a 80 17 00 20 20 | 80 07 00 00 2e 64 72 61 |..:... |.....dra|
|00000f00| 77 6d 61 70 3a 00 20 20 | 80 2c 20 d0 01 20 32 00 |wmap:. |., .. 2.|
|00000f10| 20 20 80 16 20 78 3d 30 | 20 80 18 20 31 39 00 20 | .. x=0| .. 19. |
|00000f20| 20 20 20 80 16 20 79 3d | 30 20 80 18 20 31 39 00 | .. y=|0 .. 19.|
|00000f30| 20 20 20 20 20 20 80 0b | 20 6d 61 70 28 78 2c 79 | ..| map(x,y|
|00000f40| 29 3e 2d 31 20 80 21 20 | cb 01 20 6d 61 70 28 78 |)>-1 .! |.. map(x|
|00000f50| 2c 79 29 2c 21 70 7b 78 | 2c 79 2c 30 7d 00 20 20 |,y),!p{x|,y,0}. |
|00000f60| 20 20 80 17 00 20 20 80 | 17 00 20 20 80 07 00 00 | ... .|.. ....|
+--------+-------------------------+-------------------------+--------+--------+