home *** CD-ROM | disk | FTP | other *** search
- [PINWHL2.CNV]
- [Include #%]
- [H.V.McIntosh, 20.12.86]
- [MS-DOS version: G. Cisneros, 24.8.86]
-
- [dragons nest]
- (()(
- (1.11.3.11.7.7.11.3.11.1.) 0
- )()(
- (,(WHILE,(0 1),(0),<0>.<1>,<<
- >>(WHILE,(2 3),(0),<2>.<3>,<<
- >>(WHILE,(4 5),(0),<4>.<5>,<<
- >>(g,(e,(REC|0$ryGO2$ryGO4$ryGO++12/L#I|))),<<
- >><5>),<3>),<1>));
- )) a
-
- [tiny vector increments]
- (()()()(
- (10,3<,>-5);
- (11,5<,>-3);
- (0,6<,>0);
- (1,5<,>3);
- (2,3<,>5);
- (3,0<,>6);
- (4,-3<,>5);
- (5,-5<,>3);
- (6,-6<,>0);
- (7,-5<,>-3);
- (8,-3<,>-5);
- (9,0<,>-6);
- )) e
-
- [small vector increments]
- (()()()(
- (10,5<,>-8);
- (11,8<,>-5);
- (0,10<,>0);
- (1,8<,>5);
- (2,5<,>8);
- (3,0<,>10);
- (4,-5<,>8);
- (5,-8<,>5);
- (6,-10<,>0);
- (7,-8<,>-5);
- (8,-5<,>-8);
- (9,0<,>-10);
- )) c
-
- [vector increments]
- (()()()(
- (10,10<,>-17);
- (11,17<,>-10);
- (0,20<,>0);
- (1,17<,>10);
- (2,10<,>17);
- (3,0<,>20);
- (4,-10<,>17);
- (5,-17<,>10);
- (6,-20<,>0);
- (7,-17<,>-10);
- (8,-10<,>-17);
- (9,0<,>-20);
- )) b
-
- [graph a segment]
- (()()(0 1)(
- (-<0><,>0,(L)(until,0,<0>,(%G,12,al=2,cx=(X),dx=(y)),(#p,<=>),));
- (0<,>-<1>,(D)(until,0,<1>,(%G,12,al=2,cx=(x),dx=(Y)),(#p,<=>),));
- (<0><,>0,(R)(until,0,<0>,(%G,12,al=2,cx=(X),dx=(y)),(#p,<=>),));
- (0<,><1>,(U)(until,0,<1>,(%G,12,al=2,cx=(x),dx=(Y)),(#p,<=>),));
- (-<0><,>-<1>,(if,(#>,<0>,<1>),t,<<
- >>(L)(until,0,<0>,<<
- >>(%G,12,al=2,cx=(X),dx=(w,-<=>)),<<
- >>(#p,<=>),)(d),<<
- >>(D)(until,0,<1>,<<
- >>(%G,12,al=2,cx=(v,-<=>),dx=(Y)),<<
- >>(#p,<=>),)(l)));
- (<0><,>-<1>,(if,(#>,<0>,<1>),t,<<
- >>(R)(until,0,<0>,<<
- >>(%G,12,al=2,cx=(X),dx=(w,-<=>)),<<
- >>(#p,<=>),)(d),<<
- >>(D)(until,0,<1>,<<
- >>(%G,12,al=2,cx=(v,+<=>),dx=(Y)),<<
- >>(#p,<=>),)(r)));
- (-<0><,><1>,(if,(#>,<0>,<1>),t,<<
- >>(L)(until,0,<0>,<<
- >>(%G,12,al=2,cx=(X),dx=(w,+<=>)),<<
- >>(#p,<=>),)(u),<<
- >>(U)(until,0,<1>,<<
- >>(%G,12,al=2,cx=(v,-<=>),dx=(Y)),<<
- >>(#p,<=>),)(l)));
- (<0><,><1>,(if,(#>,<0>,<1>),t,<<
- >>(R)(until,0,<0>,<<
- >>(%G,12,al=2,cx=(X),dx=(w,+<=>)),<<
- >>(#p,<=>),)(u),<<
- >>(U)(until,0,<1>,<<
- >>(%G,12,al=2,cx=(v,+<=>),dx=(Y)),<<
- >>(#p,<=>),)(r)));
- )) g
-
- [main program]
- (()(
- ((%r,ARR:xy[1])) x
- ((%r,ARR:xy[2])) y
- ((%r,CTR:X)(REC|JQDO320+320/L#I|)) X
- ((%r,CTR:Y)(REC|JQDO200+200/L#I|)) Y
- ((%W,CTR:X,(x),-1)(l)) L
- ((%W,CTR:Y,(y),-1)(d)) D
- ((%W,CTR:X,(x),1)(r)) R
- ((%W,CTR:Y,(y),1)(u)) U
- ((%W,ARR:xy[1],(REC|z<@xJQDO0$ryGO-,320+320/L#I>|))) l
- ((%W,ARR:xy[2],(REC|z<@yJQDO1$ryGO-,200+200/L#I>|))) d
- ((%W,ARR:xy[1],(REC|z<@xJQDO0$ryGO+320/L#I>|))) r
- ((%W,ARR:xy[2],(REC|z<@yJQDO1$ryGO+200/L#I>|))) u
- (<=>(REC|AQDO0$ryGO*1$ryGO/&LJQD('-'=~;L;)320+@xJQDO+320/L#I|)) v
- (<=>(REC|AQDO1$ryGO*0$ryGO/&LJQD('-'=~;L;)200+@yJQDO+200/L#I|)) w
- )()(
- (,(%Or,ARR:xy,2,6)(%Or,CTR:X)(%Or,CTR:Y)<<
- >>(%W,ARR:xy[1],10)(%W,ARR:xy[2],100)<<
- >>(%G,0,al=4)(%G,11,bl=1,bh=1)(a)(REC/RL/)(%G,0,al=3));
- ))
-
- [end]