DWB 18 DEMO P 416 T.COMMANDS P 1448 T.TEXT P 599 T.MOIRE P 221 T.BAR P 599 T.CIRCLE P 1168 T.CUBE P 2167 T.GRAPHS P 2225 T.STARWARS P 938 PIC.XWING 1V8 P 4826 PIC.XWING 2V8 P 5037 PIC.XWING 3V8 P 3591 PIC.XWING 4V8 P 3226 STARS P 1429 CURSIVE FONT P 1026 COMPUTER FONT P 514 GOTHIC FONT P 730 ROMAN FONT P 730 @@ BASIC PROGRAM SETUP6@%: ENABLE 2 MH MODEi@47,0:48,68:: SET UP 16K BUFFER FOR @STASH@(@,0:@,0,2: GOTO ULTRA HIRES SCREEN (640 X 200) AND SET COLORS BG,FG@2 CLEAR ULTRA HIRES SCREENA< 100: SET UP SYNTAX ERROR TRAP TO RETURN TO TEXT MODE AND LIST ERROR%AF:?AP PROGRAM BEGINS HEREKAZ@WALRUSSAd 5An GOTO TEXT MODE, PRINT STATUS AND END PROGRAMAx@,0: "T.COMMANDS@@ %@@,15,0:@,0#@ 360B@("COMPUTER FO*",B0,P45000^@2"ROMAN FO*",B0,P40000@<@,45000,112,0,2,2,"ULTRA HIRES COMMAND SUMMARY "@F@,40000,0,16,1,1,"@GRAPHIC,,"@P@,40000,0,24,1,1,"@CLR,VALUE"@Z@,40000,0,32,1,1,"@TEXT")Ad@,40000,0,40,1,1,"@FONT,#(1-2),ADDRESS"UAn@,40000,0,48,1,1,"@DOT,X,Y,MODE (0-1)"Ax@,40000,0,56,1,1,"@DRAW,X1,Y1,X2,Y2,MODE"A@,40000,0,64,1,1,"@BOX,X1,Y1,X2,Y2,MODE"A@,40000,0,72,1,1,"@CIRCLE,MODE,CX,CY,XR,YR,SA,EA,THETA,INC"3B@,40000,0,80,1,1,"@PAINT,X,Y,MODE,P1,P2,P3,P4,P5,P6,P7,P8"oB@,40000,0,88,1,1,"@HCOPY,SIZE (1-4),SECONDARY ADDRESS"B@,40000,0,96,1,1,"@STASH,BUF ADDRESS,X,Y,DX,DY"B@,40000,0,104,1,1,"@FETCH,BUF ADDRESS,X,Y"C@,40000,0,112,1,1,"@COPY,X,Y,DX,DY,ENDX,ENDY"4C@,40000,0,120,1,1,"@DRWMODE,MODE (0-1)"nC@,40000,0,128,1,1,"@BAR,X,Y,DX,DY,HEIGHT,MODE (0-1)"C@,40000,0,136,1,1,"@SAVE,COMPRESS FLAG (0,1),"(34)"FILENAME"(34)D@,40000,0,144,1,1,"@LOAD,COMPRESS FLAG (0,1),"(34)"FILENAME"(34)DD@,40000,0,152,1,1,"@CHAR,FONT ADDRESS,X,Y,HT,WIDTH,STRING"D@,40000,0,160,1,1," UNDERLINE UNDERLINE "D@,40000,0,168,1,1," " E@,40000,0,176,1,1," "*E@,40000,0,184,1,1,"@"E"@,40000,0,191,1,1,"RINTERS SUPPORTED BY LTRA IRES (1) PSON (2) PIRIT 80 (3) LIVETTI"E, 5Eh "T.TEXT@@ %@@,0:@,0,6!@ 90@(@,7168,0,0,1,0,"HIS IS A TEST OF 160 CHARACTERS PER LINE. OU WILL NOTICE THAT IT IS STILL POSSIBLE TO READ THEM ON THIS 1902 MONITOR.":A2@,55296,0,12,1,1,"HIS IS A TEST OF 80 CHARACTERS PER LINE. OU WILL NOTICE IT IS THE SAME AS IN NORMAL 80 COLUMN TEXT MODE."A<@,40000,0,32,1,2,"HIS IS A 40 COLUMN CHARACTER TEST. ERE WE HAVE THE SAME RESOLUTION AS IN COMPOSITE MODE."BF@,55296,0,66,2,2,"THIS IS DOUBLE HEIGHT, DOUBLE WIDTH. LOOKS GOOD, RIGHT?">BP@,45000,0,102,6,5," WE COULD DO THIS ALL DAY!"FBZ 5TBd"T.MOIRE@@ %@120!@@,0,4:@,05@(I0 639 10L@2@,320,100,I,199,1R@<f@FI0 639 10{@P@,320,100,I,0,1@Z@d@,53248,0,0,16,16,"MOIRE"@n@,45000,8,130,8,11,"PATTERN"@x 5@"T.BAR@@ 3D BAR DEMO.@%: ENABLE 2 MH MODEo@@,0,9:@,0: ENABLE ULTRA HIRES 640 X 200 AND CLEAR SCREEN@( 200: SET UP SYNTAX ERROR TRAP TO RETURN TO TEXT MODE AND LIST ERROR@2@,53248,0,0,1,1,""A<@,53248,0,24,4,4," 3D BARS BY COMMAND"AF@BAR,200,190,200,50,80,1&AP 27AZ@,0,13:@,0LAd@,0,0,639,199,1aAn X0 599 48{Ax HT((1)179)8A @BAR,X,199,29,10,HT,1A Z199HT2A HT8 190A C$(HT)A C$(C$,(C$)1) B @,53248,X,Z,1,1,C$BB 5EB GOTO TEXT MODE, PRINT STATUS AND ENDTB"T.CIRCLE@@ %: ENABLE 2 MH MODEO@47,0:48,68:: SET UP 16K BUFFER FOR @STASH@@,6,0:@,0: ENABLE ULTRA HIRES 640 X 200 AND CLEAR SCREEN@( 440: SET UP SYNTAX ERROR TRAP TO RETURN TO TEXT MODE AND LIST ERROR@2@,0A<@,55296,64,0,9,9,""AF RD9 99 10?AP@,1,320,100,2.5RD,RD,0,360,0,10EAZMAd 5]An@,0:@,6,8uAx TH 1 180 10A@,1,320,100,30,99,0,360,TH,12AA 5A@,0A@,55296,64,0,16,16,""A 3A@,0:@,6,2BCX24:CY8:SC2.5:FL0:R10JB DRAW CIRCLE CENTER X=CX, CENTER Y=CY, X RADIUS=XR Y RADIUS=YRB SA=0 EA=360 TH=0 INC=8 (ALL DEFAULTS AND NOT REQUIRED PARAMETERS)B YR1 8 2:XRYR2.5B@,1,CX,CY,XR,YRB YRB 5B DUPLICATE CIRCLE WITH @COPY COMMANDC YC0 183 202C" XC0 590 50WC, @,0,0,48,20,XC,YCdC6 jC@rCJ 5CT@,0,0,0,48,16C^ ANIMATE WITH FETCHChTY1:TX8:X((1)583)7:Y((1)10)20Cr I1 1084C| @!,0,X,YD XXTX: X590 TXTX11D X8 TXTX1UD YYTY: Y184 TYTY1pD Y1 TYTY1vD~D 5D"T.GRAPHS@@ %: ENABLE 2 MH MODEP@47,0:48,132:: SET UP 32K BUFFER FOR @STASH@@,0,11:@,0: ENABLE ULTRA HIRES 640 X 200 AND CLEAR SCREEN@( 480: SET UP SYNTAX ERROR TRAP TO RETURN TO TEXT MODE AND LIST ERROR@2 X(19),Y(19),Z(19),A(65)A< READ CUBE DATA INTO ARRAYSEAF@,35000,0,100,2,4,"FRAMES TO GO "TAP I1 18oAZ X(I),Y(I),Z(I)uAdAnRH10:D48:TH2:P1.4:CX80:CY36:MC0:SD6.5AxA LOOP TO DRAW 3D CUBE AND @STASH EACH FRAME INTO BUFFERA CT1 64)B @,35000,424,100,2,4,(65CT)" "UB S1(TH):S2(P):C1(TH):C2(P)B XX(1):YY(1):ZZ(1): 500:OXSX:OYSYB I2 5B XX(I):YY(I):ZZ(I): 500:@,OX,OY,SX,SY,1:OXSX:OYSYB C XX(6):YY(6):ZZ(6): 500:OXSX:OYSY4C I7 10|C XX(I):YY(I):ZZ(I): 500:@,OX,OY,SX,SY,1:OXSX:OYSYC C I11 17 2C XX(I):YY(I):ZZ(I): 500:OXSX:OYSYD XX(I1):YY(I1):ZZ(I1): 500:@,OX,OY,SX,SY,17D OXSX:OYSYCD" `D, @,MC,45,10,70,55D6 A(CT)MC:MC(250)(251)2561: NEXT AVAILABLE ADDRESSD@ DDSD: D249 D249DJ THTH.2:@,320,0,300,75,0,0DTE^@,0: BEGINNING OF ANIMATION ROUTINEIEh@,35000,80,0,2,3,"3D GRAPHICS ARE EASY"yEr@,35000,56,24,2,3,"USING C128 ULTRA HIRES"E|@,35000,56,146,2,3,"WITH @STASH AND @FETCH"E@,35000,56,170,2,3,"IN YOUR BASIC PROGRAMS"E 5F BLITTER ANIMATION USING THE @FETCH COMMAND!FWQ110BF K1 64:@!,A(K),250,65:dF K33 64:@!,A(K),250,65:F K64 33 1:@!,A(K),250,65:F K64 1 1:@!,A(K),250,65:FF GOTO TEXT MODE, PRINT STATUS AND ENDF "T.STARWARSG CONVERT X,Y,Z TO SCREEN X,Y[GXTXS1YC1:YTXC1C2YS1C2ZS2:ZTXS2C1YS2S1ZC2RH}GSXDXTZTCX:SYCYDYTZT:G DATA THAT DESCRIBES 3D CUBEG -1,-.75,.5,1,-.75,.5,1,-.75,-.5,-1,-.75,-.5,-1,-.75,.5H -1,.75,.5,-1,.75,-.5,1,.75,-.5,1,.75,.5,-1,.75,.5PH& -1,-.75,.5,-1,.75,.5,-1,-.75,-.5,-1,.75,-.5,1,-.75,.5tH0 1,.75,.5,1,-.75,-.5,1,.75,-.5@@ BASIC PROGRAM SETUP6@%: ENABLE 2 MH MODEj@47,0:48,132:: SET UP 32K BUFFER FOR @STASH@(@,6,0: GOTO ULTRA HIRES SCREEN (640 X 200) AND SET COLORS BG,FG@2@,0: CLEAR ULTRA HIRES SCREEN@<1,"@GRAPHIC,0," AF "COMPUTER FONT",B0,P35000*AP "ROMAN FONT",B0,P40000HAZ AD(100),X(2,70),Y(2,70)Ad 740: SET UP SYNTAX ERROR TRAP TO RETURN TO TEXT MODE AND LIST ERRORAn:Ax PROGRAM BEGINS HEREAAMC0A SAVE BLANK AREAS FOR WINDOWSB@,MC,10,10,310,120:AD(0)MC: 770:MCADAB@,MC,320,80,310,110:AD(1)MC:770:MCADVB@,0,0,639,199,1yBYH019910:@,0,YH,20,YH,1:BXH063920:@,XH,199,XH,190,1:BX0:Y199:CT0B MAKE FIRST LARGE GRAPHB X639BOXX:OYY(CDX((1)10)10:DY((1)200):XXDX:YDY:X639X639VCX(1,CT)OX:X(2,CT)X:Y(1,CT)OY:Y(2,CT)YiC@,OX,OY,X,Y,1uCCTCT1{C"C,@,35000,16,50,13,13,"GRAPHS"C6@,MC,10,10,310,120:AD(2)MC: 770:MCADC@CJ MAKE SECOND GRAPHDT@!,AD(0),10,10: MAKE BLANK WINDOW*D^@,10,10,319,129,1JDh@,40000,16,105,3,2,"ALES"[DrCX160:CY65qD|@,1,CX,CY,120,48D@,CX,CY,CX30,CY46,1D@,CX,CY,CX30,CY46,1D@,CX,CY,CX20,CY47,1D@,CX,CY,CX120,CY,1D@,7168,16,35,1,0," MITH"E@,7168,144,116,1,0," OHNSON"?E@,7168,274,25,1,0,"AVIDSON"`E@,7168,274,105,1,0,"ONES "yE@,CX10,CY,1,51,204E@,CX10,CY25,1,15,240E@,CX10,CY25,1,3,45,136,56,222,18,129,66E@,CX80,CY10,1,1,2,4,8,16,32,64,128F SAVE SECOND GRAPH4F@,MC,10,10,310,120:AD(3)MC: 770:MCADVF SAVE AREA UNDER THIRD GRAPHF@,MC,320,80,310,110:AD(4)MC:770:MCADF&F0 MAKE THIRD GRAPHF:@!,AD(1),320,80: MAKE BLANK WINDOWFD@,320,80,629,189,1FNX324:YB186GX I1 10GbHT((1)70)10/Gl@BAR,X,YB,18,5,HT,1:GvXX30@GgG@,55296,325,85,2,1,"NVENTORY "~G SAVE THIRD GRAPHG@,MC,320,80,310,110:AD(5)MC:770:MCADGG RESTORE AREA UNDER THIRD GRAPHG@!,AD(4),320,80H RESTORE AREA UNDER SECOND GRAPH&H@!,AD(2),10,10JH@,35000,16,50,13,13,"GRAPHS"PHH GOTO TEXT MODE, PRINT STATUS AND END PROGRAMH "T.CUBEHAD(250)(251)2561:@@ %: ENABLE 2 MH MODEP@47,0:48,204:: SET UP 50K BUFFER FOR @STASHW@%i@VO$"V8":MC0@(@,0,15:@,0: ENABLE ULTRA HIRES 640 X 200 AND CLEAR SCREEN@2 350: SET UP SYNTAX ERROR TRAP TO RETURN TO TEXT MODE AND LIST ERRORA< A(32) AF 180.AK "COMPUTER FONT",B0,P35000YAP@,0: BEGINNING OF ANIMATION ROUTINEjAd@,1,"STARS"~An@!,A(0),250,65Ax 1A BLITTER ANIMATION USING THE @FETCH COMMANDAWQ110A K1 32:@!,A(K),250,65:B K17 32:@!,A(K),250,65:,B K32 1 1:@!,A(K),250,65:2B  8~}s #G|px @_ < gp p3p @@@< x@@   $~  ?~ xx #?0?  o~G      ? 9  _     p~ D` ?    $  ?    ? ߓ  9? @ >~   # @    @< ? Q |@ ? O|? ?  ? @  ??0?  B p<= ?a@  |y@ @ s 3dy  ` x =y ?  | Ǟ_@ ?  y?  O0p ???A9$> ;|  x  #`xp@@@@ P    t @@@8@/9 <%%%c  1  D@ F@E w c@ f @ GPG 39 lp DQ  ? Hz8 30 > ̀14 '+ HH p3: &lx p ~C|x` BH( 33 ǀx @- "(` 38   ʠ> #$4 30 @X pN p'  ; `4p ,`x  7   6` D' 0? p   )Ӏ  c~ 5ǀ g@8N a x@  3 008~  y!'`  '3      N@@@@ A:`&!& `%@xpp0`d``0@     < x00`p`@`dh@    d  @ 0   8  $`0  @  3 0  $@0 L` y I` m3  I `  f9 ŀ "@? 2X g. $$ 2BI dP \ $ $ 2Z A q $ $ d P @  $ @$ d  @/ pw $ @$  $ ?t Y ? $ @$ $ > g*< I$ @$ 6{H$91 d@$ <5 (/tH 28>pv dd GK E @p dd P  .o 0  Ed x &@ c $@ E ? H 0(%L@  <ـ R E!  $PH 7xr R Ia C( H1 x`  Ie C9  @#R   8 pQ a D| /  ( r@ G  xwp ~~yǀp߀  v8 O; : ` ??'  {38 < @>   x? @  p8  @@ A <; x G $@?3 w xF  C|s ~ ?p ? ~   = @@| 6', = _  8C|   ?` x  @= ?;  @fx|  !x=p<   '9z @ ` xg  # <`>9 >8p?  o9 {ǀ ? @ 10ßϘ o8` ?? @ < `<` | ??8 @  p8s0 ^ 0 0  @   ? ?  @  @  @ ~@? @@ @@|@  0 &@@e@e W80`0_ ?3?@87H  ?? ??@  ? D @$  ?$ @@ @  @          4?@  A??         ! 0       / ?@@@@ Y    t @@@@x LH  ߀?56  ?H ?   f~ ??  ?р? q?3g/ =?Hx$?$?? ?  ?K??  ?     ?8A?  6? DL b    a@@@@ Y    t @@@@?G ' 4 ? _` "` " " !? ?  '    @@@@@@@ @ |  ?? !  1 X?  ??r?     r?  ?A   @  ? a  v æ`  z?  G ?@ > ' 1  ?HL    a@@@@ Y    t!@&o7 U? ^1@@) @@ Eo@SV&@P :+ <@a X A@Q N#@v2<9h   ~@C?_@o .!~*=j3 }L"@&;  @4@ @, :@, 2  <U+4O* >4"@/q #_ i)d'&@6! D0+@f%&>%@O@@ @ BJ ( :g@E MP=,@M 5F@@  D3G@BdN6 7A+ ?@F  Z @1I8@-k 4  C 4 7c Rڨ`<|bf 0fFf<00`0~~p  paR"BE9bR"%(0I]IIIcX cbR <~L0`000033333f3f333333̙3f̙3flxp`~ff~``~``~f`fff8888x```II~ff~ff~ff~bb 008888ffffff8III8888<00000<`0 < <<~008888ffffffff~@~~bf 0fF 888|dd00`0~~p  p 88۬||<>f;`|fff:d`b< 6nff;>d~`<2L```;ff6<`|fff8<  L8`lpJp````hl vffffx>||0002\flfx0II6h09fn6xB|0<00000< 0|0b< <<~00ffffffff>`<|bf 0fFx`s|  000 0 0f<f<00`0~~p  p|00||6f~fffFlff:l`f<x(H|#&gfN7ffx0IIII[lh08M#fk6D8> 0ff;|ffff>f``b<>ffff;f|0>f||ffff8~  l8nh|lf8<~vfffw;000x>`<B|~ ffff;bb48mv6"b<8Lfff~|f 3<00000<00`< <<~00ffffffff>`<|bf 0fFfcccf10>01fbx``~~cccc~~f|dhxlf```bfw[[[KrZZNFbp<F|<bbbbb<bbb44nfb4,Fb4<~F 0b~