d**********************9n* *Ux* THE TABLER... *q* ** Yet another shape ** table editor!!! ** ** by Michael Black ** AKA Mick B * * August 1989 AD *5 * *Q * Shareware fee: $5 *m * * * Michael Black * * 213 Iroquois * * Laurium, MI 49913 * * * **********************  "! ,**********************= 6* *Y @* An explanation of *u J* the syntax of DATA * T* * ^* U = up D = down * h* L = left R = right * r* E = end of shape * |* XXX = end of data * * *9 * UPPER CASE = PLOT *U * lower = no plot *q * * * A preceding number * * indicates how many * * vectors in a row: * * e.g. 3L = L,L,L * * * * GOOD LUCK! *5 * *Q **********************W ] h 16384r 1170 :SC1:X100:Y100:HC3:IN1 &:21 0" - / + : next / previous shape | SHAPE # 0 | X = 100"? :"<-- / --> : rotate shape | ROT = 0 | Y = 100" D" < / > : change scale | SCALE = 1 | INC = 1" N" C / Q : change color / quit | COLOR = 3 | 0 - 9 : increment value"; X:20:b" - / +"l"<-- / -->"%v" < / >"6" C / Q";w21:1403,60:"I";:22:1403,58:"J K";:23:1403,60:"M";RO:SC:HC:SHX,Y49168,0(49152)128680Z$((49152)128)Z$"-"Z$"_"730SHSHIN:SH0SHD1?21:50:SH" ";:21:2::"-";::CK(49200):CK(49200):600XZ$"+"Z$"="760rSHSHIN:SHD1SH021:50:SH" ";:21:8::"+";::CK(49200):CK(49200):600(49152)149790ROROIN:RO64RO0* 22:50:RO" ";:22:7::"-->";::CK(49200):CK(49200):600A(49152)136820Z ROROIN:RO0RO64*22:50:RO" ";:22:1403,0::"<--";::CK(49200):CK(49200):6004Z$"<"Z$","850>SCSCIN:SC0SC255H23:50:SC" ";:23:2::"<";::CK(49200):CK(49200):6003RZ$">"Z$"."880M\SCSCIN:SC255SC0f23:50:SC" ";:23:8::">";::CK(49200):CK(49200):600pZ$"C"Z$"c"910zHCHC1:HC7HC024:1403,1::"C";::24:50:HC;:CK(49200):CK(49200):600Z$"Q"Z$"q"1010:CK(49200):CK(49200)o::"Do you wish to save this shape table? ";:Z$:Z$"N"Z$"n"990Z$"Y"Z$"y"940965Z$::"What do you wish to name this shape table? ";N$:38400:9706:"Dat didna woik. D'ya wanna try again? ";:216,0:940U(4)"BSAVE "N$",A"TQ",E"K:"Poke these values before using this table : ";::"POKE 232,"(232);::" & ";::"POKE 233,"(233)::"Bye. (reloading THE TABLER... hi-res graphics erases end of program)"996(1000O"Darn... I was unsuccessful.":l:(4)"LOAD THE.TABLER"Z$"I"Z$"i"104021:1403,60::"I";:CK(49200):CK(49200)::YYIN:Y0Y19122:1403,70:Y3((Y)));:600 Z$"M"Z$"m"1070O23:1403,60::"M";:CK(49200):CK(49200)::YYIN:Y191Y0t$22:1403,70:Y3((Y)));:600.Z$"J"Z$"j"1100822:1403,58::"J";:CK(49200):CK(49200)::XXIN:X0X279B21:1403,70:X3((X)));:600LZ$"K"Z$"k"1130WV22:1403,62::"K";:CK(49200):CK(49200)::XXIN:X279X0|`21:1403,70:X3((X)));:600jZ$"0"Z$"9"1160tZ$"0"Z$"10"~CK(49200):CK(49200):IN(Z$):23:1403,72:IN" ";:670670:::(4)"PR#3"::ZZ1:Z2Z0(::::::W1:Z);:XZ1803:T120:T:"* ";:Xb::::::X223:X:1403,79:(XZ)3((XZ)3)ĺ"*";:1240" ";X23:2Z);:X80Z13:T110:T:23:1403,(X1):"*";X78ĺ" "; X77ĺ" ";XL X2321:X:1403,0:(XZ)3((XZ)3)ĺ"*";:1310V" ";]X~((49152)127Ĺ49168,0:15602I11180<I1F3:HT4PHT:" THE TABLER... A vector-based shape table generator.")ZHT:" Written by Michael J. Black (Mick B) in August 1989"OdHT:" Shareware fee: $5.00"lnHT:" 213 Iroquois"xHT:" Laurium, MI 49913"HT:"Here's a short explanation of the syntax of the data statements:"0HT:"'U' = plot up, 'u' = no plot up, 'D' = plot down, 'd' = no plot down"HT:"'L' = plot left, 'l' = no plot left, 'R' = plot right, 'r' = no plot right"HT:"'E' = end of shape definition, 'XXX' = end of vector data"HT:"A preceding number indicates vector repetitions: i.e. 3L = L,L,L"$:HT9mHT:"This program is more or less self-explanatory, but you should"HT:"probably know two things:"HT:"1. This is a two-part program--it will run part 2 automatically."*HT:"2. Part way through the definition the program may pause for a"bHT:" minute or so due to a quirk of Applesoft"hHT:" (hit a key to continue)"1180T0:TT$""!":::"What address do you want to put the shape table at?":"($hex, decimal, or %binary addresses accepted) ";T$D,Z1(T$):(T$,Z,1)" "1600Z6TT$TT$(T$,Z,1)h@Z:T$TT$J(T$,1)"$"(T$,1)"%"T(T$):1730T(T$,1)"$"1660^Z2(T$):MI((T$,Z,1)):MI0MI1T0:1730hTTMI2((T$)Z)rZ:1730|Z2(T$)EM$(T$,Z,1):M$"a"M$"f"M$((M$)32)tM$"0"(M$"9"(M$"A"M$"F"))T0:1730M$"0"M$"9"T1(M$):1710T1(M$)55TTT1(16((T$)Z))Z:T(T)T0ĺ"Say what bro?":1890-T65535ĺ"Why don't you try something lower.":1890{T256ĺ"I don't think you want your shape table in the zero page.":1890T512ĺ"I don't think you want your shape table in the stack.":1890 T768ĺ"I don't think you want your shape table in the input buffer.":1890d T854ĺ"Are you sure it'll fit? There's not much space there. ";:1930 T1024ĺ"I don't think you want your shape table mixed up with those vectors":1890 !T2048ĺ"Do you really want your shape table in the text screen? ";:1930g!T3328ĺ"Do you really want your shape table in the secondary text screen? ";:1930!T8192ĺ"Do you really want your shape table there? (That's where BASIC is usually) ";:1930 "&T16384ĺ"Do you really want your shape table in the graphics screen? ";:1930"0T24576ĺ"Do you really want your shape table in the secondary graphics screen? ":"(there may be memory problems in part 2) ";:1930":T53247ĺ"And just how am I s'posed to put your shape table in ROM? ":1890Y#DT49151ĺ"I don't think you want your shape table mixed up with hardware I/O.":1890#NT38400ĺ"In my personal opinion, you have made an excellent choice, monsieur.":1960#X"Do you really want your shape table to over-write DOS? ";:1930%$b"(hit any key to continue)":49168,0<$l(49152)1281900I$v49168,0S$1560o$Z$:Z$"Y"Z$"y"2000$Z$"N"Z$"n"1560$1930$T1$"(hit any key to continue)":49168,0$(49152)1281980$49168,0$:10"%1403,25:"*******************************"R%1403,25:"* *"%1403,25:"* 1 vector counted *"%1403,25:"* *"%1403,25:"*******************************"% 12&A$:(A$,1)"0"(A$,1)"9"A$"1"A$8& A(A$):A$(A$,(A$)((A)))g&*A$"XXX"2170: "XXX" DENOTES END OF DATA&4CCA:A$"E"CC3:KK2:K1K11&>C1000BS$(C)" vectors counted"&HC999BS$((C),3)","((C),3)" vectors counted"'R1403,25((31(BS$))2):BS$;'\7'f "E" = end of definitionA'p2070G'z^'V$(C3),P$(C23)h':10'1403,23:"***********************************"'1403,23:"* *"(1403,23:"* Shape table 0.00% computed *"8(1403,23:"* *"l(1403,23:"***********************************"t(12(A$:(A$,1)"0"(A$,1)"9"A$"1"A$(A(A$):A$(A$,(A$)((A)))(A$"XXX"2450(A$"Z"VV$"0" )A$"Z"VV$"1":A$((A$)32)%) A$"u"VV$VV$"00">) A$"r"VV$VV$"01"W) A$"l"VV$VV$"11"p)$ A$"d"VV$VV$"10"). A$"e"VV$"E":EEEE2)8 Z1A)B CCCC1)L V$(CC)VV$)V Z)` BS$((CCC10000.15)100))j ((BS$,2),1)"."BS$BS$"0"#*t ((BS$,3),1)"."BS$BS$".00"C*~ 1403,39:BS$"% computed ";M* 2260{* V$(C1)"000":V$(C2)"000":V$(C3)"000"* W1* E0* EE1* BS$((WC10000.15)10015)* ((BS$,2),1)"."BS$BS$"0"+ ((BS$,3),1)"."BS$BS$".00"+ 1403,39:BS$;%+ E1EE2600Y+ V$(W)"E"P$(E)"00000000":WW1:E1E12:2480+ V$(W1)"E"P$(E)"00"V$(W)"000":EE1:P$(E)"00000000":WW2:E1E12:2480, V$(W2)"E"P$(E)"00"V$(W1)V$(W):EE1:E1E12:P$(E)"00000000":WW3:2480o, V$(W3)"E"(V$(W2),1)"0"P$(E)(V$(W2),2)V$(W1)V$(W):EE1:P$(E)"00000000":WW4:E1E12:2480, (V$(W2),1)"1"V$(W2)"000":P$(E)"00"V$(W1)V$(W):WW2:2480, P$(E)(V$(W2),2)V$(W1)V$(W):WW3:2480,( M(E),2 Z1E-< ZZ07:BS$""B-F BS$(((Z81ZZ)(E8)10000.65)10030)e-P ((BS$,2),1)"."BS$BS$"0"-Z ((BS$,3),1)"."BS$BS$".00"-d (BS$)5BS$(BS$,5)-n 1403,39:BS$;-x M(Z)M(Z)(((P$(Z),8ZZ,1)))2ZZ- ZZ- Z. TQT:KEET2:QTT5. 232,((T256)(T256))256:233,(T256)I. KK2:TT2:XEO. Z. Z1X}. BS$((ZX10000.05)10095). ((BS$,2),1)"."BS$BS$"0". ((BS$,3),1)"."BS$BS$".00". (BS$)5BS$(BS$,5). 1403,39:BS$;. MM(Z)/ K,M/ M02900!/ DD15/" P((KQT)256)O/, PP((KQT)256P)256Y/6 T,PPd/@ T1,Pn/J TT2x/T KK1/^ Z/h TQ,D/r TQ1,0/| 540/ / / Here be the data!/ / / E/ 22R,18D,22L,18U,E0 20R,18D,20L,18U,Ez0 4L,D,2L,8R,D,R,10L,D,L,12R,D,R,14L,D,14R,D,R,16L,D,16R,D,16L,R,D,14R,D,14L,R,D,12R,L,D,10L,R,D,8R,2L,D,4L,U,L,D,E1 4L,D,2L,8R,D,L,2R,D,R,2D,R,U,2D,R,D,L,D,R,L,D,L,D,R,L,D,L,D,L,D,L,U,D,L,D,L,U,L,D,L,U,L,D,U,L,U,L,D,U,L,U,L,U,L,U,R,L,U,L,U,R,U,L,R,U,R,U,L,R,U,R,U,2R,U,E#1 XXX