ÿÕ :�à *********************************************** 3 DIMENSIONAL Version 1.0 --> 3 DIMENSIONAL BAR CHART (c)1982 Zenith Data Systems *********************************************** ß ‰  Æ"D":‘ œn�ôÿ�(),ÿÒ$,ÿÑ$:� ’:� Lþ:� xÿ3 (‘ ÿ–()"x5";::�à No CursorE )‘ ÿ–()"x1";ï 2BOX$()ñ"c=colors(cb%);l=bx10%;u=by%;r=bx10%;c=colors(0);nl1c=colors(cb%);bl=bx10%;e=bx20%;r=bx10%;ng=bx20%;d=by%;g=bx20%;u=by%;c=colors(0);nd1c=colors(cb%);bd=by%;" <BOX$()ñ"u=by%;nl=bx10%;ne=bx20%;bd=by%;"u FGRID$()ñ"c=colors(7);u=pixup%;be=dwle%;d=pixup%;r=bxro%;g=dwle%;l=bxro%;bg=dwle%;"¹ KGRID$()ñ"c=colors(3);bu9e=dwle%;r=bxro%;d9l=bxro%;g=dwle%;bu9"PGRID$()ñ"c=colors(3);bu9ng=dwle%;e=dwle%;r=bxro%;d9l=bxro%;g=dwle%;ng=dwle%;bu9"0ZASñê€::�à Aspect of x-yidASDñ((((óAS÷))÷€)õAS)õ€::�àdiagonal aspect¢nD3MX%ñ::�à maximum number of files in 3-d displayØxBXRO%ñà::�àlength of x that boxes are placed on‚SSPINTñ::�àbox spacing interval multiplierDŒDSPINTñ`�::�àbox diagonal down-left spacing intervalS–XSTART%ñFb YSTART%ñ°ªPSX%ñ(XSTART%óBXRO%)öó”´PSY%ñYSTART%öô±¾PLX%ñ(XSTART%óBXRO%)öóÆÈPLY%ñYSTART%öôðæDIAGSZ%ñ::�àfixed depth of diagonals ðDWLE%ñDIAGSZ%õDSPINT;úPIXUP%ñ�::�àpixels for full range deflectionUCB%ñ::�àBorder color‚CI%ñ::�àstart row internal color of box“:�àWIDTH 255³6� ª::�àhere read what.runä@‹ COLORS()ñ Ô °(,)ô(€,à),COLORS(),BFñJCURX%ñ þTCURY%ñ Ž]‹ COLORS()ñ Ô BGRñCOLORS():� èý :¡ CURX%ñ:� –:‘"A Z-100 with color capability is required for three dimensional charts ...";:‰ "˜^� –¸hTFN$ñÿƒ(AA$,ß(AA$,".")ó,)r‹ TFN$ñ"DM3" ù TFN$ñ"dm3" Ô ‰ | :¡ Š "menu" ::�à do 3-d else menu3|‘"Preparing three dimensional bar chart....";d†� ¸::�àSet up files info & data array miscn�� 4xš� f”¤‚ J%ñ Ó NF%:� `:ƒ J%§¥PBX%ñXSTART%öº¦PBY%ñYSTART%öá©CURX%ñPBX%:CURY%ñPBY%:� –:‘ BOT$뮉 "¸º"I",,AA$:° …#,TITLE$'Â…#, NF%::�ànumber of files»Ì‹ NF%ðD3MX% Ô ¾: ‘: ‘ "Error in three dimensional bar chart request...": ‘"there must be no more than "D3MX%" rows in the chart.": ‰ "óó:�à(S. MICHAEL SARNA) (C) 1982, ZENITH DATA Systems.ô† NFILE$(NF%)::�àName of files-- number of files times?þ‚ J%ñ Ó NF%T° …#,NFILE$(J%)]ƒ J%nD† NLEG$(NF%)N‚ J%ñ Ó NF%µX° …#,NLEG$(J%):ƒ J%::�àget legends' descriptionsÝZ…#, NRECORDS%:† DESCRS$(NRECORDS%)2]‚ J%ñ Ó NRECORDS%:° …#,A$:XSTEVEñß(A$," "): ‹ XSTEVEð Ô A$ñÿ�(A$,XSTEVEô)J^DESCRS$(J%)ñA$:ƒ J%|l° …#,XHEAD$:° …#,YHEAD$: …#,MIN::�àminimum”v …#,MAX::�àmaximum®€ …#,INC::�àincrement´¼¾ÐƆ VALUES(NF%,NRECORDS%)áЂ J%ñ Ó NF%÷Úº"I",,NFILE$(J%)ä‚ K%ñ Ó NRECORDS%;î° …#,IGNORE$::�àforget the descriptionsQø…#,VALUES(J%,K%)Zƒ K%` ¾iƒ J%o ¾u*Ž4� xÿ’>Î ,:Ï:‘" ":ϲH°(,)ô(€,à),COLORS(),BÑR� ::�àgive chart a name×\ŽøfÌ(XSTART%,YSTART%),COLORS()pCURX%ñPLX%zCURY%ñPLY%.ƒBGRñCOLORS():� èý?„‚ L%ñ Ó NF%NŽÊ GRID$()†˜� –:‘ ÿ�(NLEG$(L%),):CURY%ñCURY%ó:CURX%ñCURX%ô�¢ƒ L%§¬BOT$ñÿ˜(BXRO%öó )Á¶BQ%ñBXRO%ööNRECORDS%ÚÀ‚ L%ñ Ó NRECORDS%ôÅHALF%ñ(BQ%ôÿ’(DESCRS$(L%ó)))ö:‹ HALF%ò Ô HALF%ñBÊÿƒ(BOT$,L%õBQ%óóHALF%,BQ%ô)ñDESCRS$(L%ó)KÔƒ L%lÌ(XSTART%,YSTART%),COLORS(){CURX%ñPSX%ŠCURY%ñPSY%š$‚ L%ñ Ó ­.Ê GRID$(NF%ó) 8‹ ÿ…(L%ö)ñL%ö Ô � –:‘ ÿ�(ÿ‚(ÿ“(INCõL%óMIN),ÿ’(ÿ“(INCõL%óMIN))ô),);:CURY%ñCURY%ô@B‹ L%ñ Ô � –:‘ ÿ�(ÿ‚(ÿ“(MAX),ÿ’(ÿ“(MAX))ô),);ILƒ L%PVŽ ‚_:�àenter this routine with j% indexing a fileº`BX10%ñ(BXRO%öNRECORDS%)öSSPINT::�àfront size of boxðtBX12%ñ(BX10%õSSPINT)::�àbox side spacing interval~BX20%ñDIAGSZ%::�àdiagonal size of boxiˆÌ(XSTART%óBX12%õ@€,YSTART%),COLORS()::�àpoint to start of box building€’‚ K%ñ Ó NRECORDS%¡œBY%ñVALUES(J%,K%)öMAXõPIXUP%¯¦Ê BOX$()İ‹ BY%ðñ Ô � pÒºÊ BOX$()æ¿‹ BY%ò Ô � z÷ÄÊ"br=bx12%;"΃ K%ØXSTART%ñXSTART%ôDWLE%QâYSTART%ñYSTART%óDWLE%::�àdrop to next rox of boxes_ìCI%ñCI%ómöCB%ñCB%ósŽ„ :�àCHARTNAME�TITLE$ñÿ�(TITLE$,P)¹CURX%ñ(Pôÿ’(TITLE$))öÅ(CURY%ñÏ2� –<‹ COLORS()ñ Ô BGRñCOLORS():� èý::¡ BGRñCOLORS():� èýF‘ TITLE$4PXHEAD$ñÿ�(XHEAD$,N)PZCURX%ñ(Nôÿ’(XHEAD$))ö]dCURY%ñgn� –ux‘ XHEAD$;ŽzYHEAD$ñÿ�(YHEAD$,)›|CURX%ñN¹~CURY%ñó(ôÿ’(YHEAD$))öÑ‚ L%ñ Ó ÿ’(YHEAD$)ü€� –:‘ ÿƒ(YHEAD$,L%,);:CURY%ñCURY%ó�ƒ L% ‚ŽŒ:�àPRINTATb–È CURY%ó,CURX%ó:�à PRINT CHR$(27)"Y"CHR$(32+CURY%)CHR$(32+CURX%);h Ž–ªº"R",,"WHAT.RUN", :‚ Añ  Ó :A$ñå:ƒ A»´» #,AS A$,AS B$,AS C$,AS D$ž¼ ,ÒÈAñÿ«(A$)ßÒBñÿ«(B$)óÜTIMLOOP1ñÿ«(C$)æTIMLOOP2ñÿ«(D$)ðMODEñA#ú» #, AS A$6¼ ,Bó:AA$ñA$<¾BŽN"CURX%ñ[6CURY%ñš?‹ COLORS()ñ Ô BGRñCOLORS():� èý :¡ BGRñCOLORS():� èý¤@� –ÎT‘ ÿ–()"p";"PRESS ";ÿ–()"q";ê^COUNTñCOUNT ó :JACK$ñåh‹ MODEð ø JACK$ñÿ–() Ô †Dr‹ COUNTðTIMLOOP2 ø MODEñ Ô Ï: Š"MENU"à|‹ COUNTðTIMLOOP1 ø MODEð Ô † :¡ ‹ JACK$òðÿ–( ) Ô ^ :¡ Ï: ’:¶ "menu",0uù†º"R",,"WHAT.RUN",  �» #, AS A$,AS B$ š¼ ,( ¤Añÿ«(A$)5 ®Bñÿ«(B$)? ¸BñBóa ‹ BðA Ô FLñ: Bñ :¡ FLñp ÌÄ B$ñÿ²(B) ÖÄ A$ñÿ²(A)‰ འ,› ê» #, AS C$® ô¼ ,Bó:CC$ñC$´ þ¾ð ‹ FLñ Ô Ï: Š"MENU" :¡ TYPE$ñÿƒ(CC$,ß(CC$,".")ó,)S!‹ TYPE$ñ"D" ù TYPE$ñ"d" Ô Ï: Š :¡ Ï: Š TYPE$Y!��!p‹ COLORS()ñ Ô Ë Ö (ô,ô),CI%,CB%:Ì Ö(ó,ó),CB%–!qŽÍ!z‹ COLORS()ñ Ô Ë Ö (ô,ô),CI%,CB%:Ì Ö(ó,ó),CB%Ó!{Ž"èý‹ BGRñ ù BGRñ Ô BGRñBGRó :¡ ‹ BGRñ ù BGRñ Ô BGRñBGRôS"êý‹ FGRñ ù FGRñ Ô FGRñFGRó :¡ ‹ FGRñ ù FGRñ Ô FGRñFGRô�"íý‹ COLORS() ø FGRñBGR Ô FGRñCOLORS():BGRñCOLORS()�"òýÎ FGR,BGR:޽"LþÌ (,),:PTñã(,):Í (,)#Vþ ‹ PTòð Ô COLORS$ñ"07777777" :¡ COLORS$ñ"01234567"J#`þ‚ Jñ Ó :COLORS(J)ñÿ”(ÿƒ(COLORS$,Jó,)):ƒ J:FGRñCOLORS():Žj#xÿ‹ COLORS()ñ Ô Ï:Ž :¡ Ï:Ž COLORS$ñ"01234567"J#`þ‚ Jñ