Q *************************************************************************** Q * A function to convert numbers between bases, for number bases in the * Q * range 2 through 16. (C) Danny Langton 11/88. * Q * Use in your own programs with a call such as : * Q * result$=FNbases(sourcebase,destinationbase,sourcenumber$) . * Q * e.g., PRINT FNbases(2,16,"1101") will give the result "D". * Q *************************************************************************** : &ݤbases(f%,t%,s$) err$,bad%,L%,T% err$="Bad input to FNbases" %f%<2f%>16t%<2t%>167:err$': 0L%=1s$:("&"+s$,L%,1))>=f%bad%=:L%=s$ :bad%err$:': f%=t%:=s$ $f%=16s$=à("&"+s$):f%=10:T%=s$ @$f%<>10L%=1s$:T%=T%+("&"+s$,L%,1))*f%^(s$-L%):T%=s$ Bt%=16:=~T% -Vs$="":s$=~(T%t%)+s$:T%=T%t%:T%=0:=s$