Tak zacząłem przerabiać funkcję View_AddText tak, aby dzieliła text na dwie części. Lecz gdy ilość znaków jest >od mojej wartości to printuje tylko te ostatnie znaki... 
Taki jest skrypt:
func void ViewPtr_AddText(var int ptr, var int x, var int y, var string text, var string font) {
    var zCView v; v = _^(ptr);
    var int field; 
	var int SecondLine;
	var int field2;
	if(STR_Len(text)>=30)
	{
	var string str1; str1 = STR_SubStr (text, 0, 18);
	var string str2; str2 = STR_SubStr (text, 18, 60);
	field=Print_TextField(x-200, y-30, str1, font, Print_ToVirtual(Print_GetFontHeight(font), v.pposy+v.psizey));
	field2=Print_TextField(x-200, y+500, str2, font, Print_ToVirtual(Print_GetFontHeight(font), v.pposy+v.psizey));
	SecondLine=true;
	}
    else
	{
	field = Print_TextField(x, y, text, font, Print_ToVirtual(Print_GetFontHeight(font), v.pposy+v.psizey));
	};
	if(v.textLines_next) {
        List_Concat(v.textLines_next, field);
		 if(SecondLine){
		 List_Concat(v.textLines_next, field2);
		};
    }
    else 
	{
	v.textLines_next = field;
	if(SecondLine){
        v.textLines_next = field2;
		};
	};
};
Ktoś wie o co chodzi D:?