basically heres how it works, i have 3 functions:
MakeTextBlock(blocknum,numberofchars)
this one just creates a memblock of the same size as numberofchars (honestly this one really is unneeded but why not have one?)
WriteToTextBlock(blocknum,string$)
this one goes through each memblock byte and writes to it the ascii value of each char (however since string$ can only hold 255 chars, to get more you need to call this function multiple times, not to worry it will automatically know where to begin the writing process so data wont be overwritten
and PrintTextBlock(blocknum,x,y,charsperline)
first it sets the cursor (the top left corner of where the first print will go to) to x,y
then it loops through the memblock until all the text has been written, going in increments of charsperline (since print can only run 255 chars max at a time I wanted a way to control how many per line)
then it prints that line
the only rule involving this is your string CANNOT contain the ~ sign, (not the minus, the shift + ` one) because thats the character that signals the end of the string, not too big a problem since that character is rarely used
sorry its not done, still working some bugs out
sounds cool though doesnt it?