I had wanted to know how to adapt the following code to use larger fonts , I figured it out, much trial and error

Update2:
Ok i figured it out,

but i have a new problem, some of the expected characters are wrong, "H" when it shoulg be "G" etc I dont really understand the "asc(mid" funtion, so i think it will be beyond me to work out why its messing up, I really need help on this one, please

Looking at the font png i noticed that if i use a G ill get the first next line being a H. Q gives me R which is also on the next line, i figure my Png font spacing might be off around the edge, ill look into that as a possable fault
; Updated to work with PB v4.02 and changed the code to work with DX Sprites indeed Images
; by va!n (thorsten will) in 2007
;
;============================================================================================
Global xres.w , yres.w , loop.w ,xp.w , yp.w , t.s , tptr.w , sco.b
xres = 800 ; ScreenWidth
yres = 600 ; ScreenHeight
sco = 0
tptr = 1
t.s = " "
t.s = t.s + "I FIGURED OUT THE FONT MY NEW PROBLEM "
t.s = t.s + "WHY ARE SOME OF THE LETTERS WRONG, MY SPELLING IS RIGHT "
t.s = t.s + "BUT ITS NOT DISPLAYING CORRECTLY, WHY? DOEST ANYONE KNOW?"
t.s = t.s + " "
; -------- Init needed Stuff --------
InitSprite() ; Needed to init DX Screen and DX Drawings
InitKeyboard() ; Needed for handling DX keyboard inputs
UsePNGImageDecoder() ; Needed to work with PNG Image
; -------- If Font successfully load, open Screen --------
window = OpenScreen( xres , yres , 32 , "PBWINDOW") ; Open DirectX Screen
If window = 0 ; If creating DX screen failed,
MessageRequester("Error", "Cant open Window", 0) ; we alert an error and
End ; stop the application
EndIf
; -------- Load Font Gfx as Sprite--------
font = LoadSprite (#PB_Any, "output.PNG") ; Load the font PNG as Sprite
If font = 0 ; If loading Spritefailed,
MessageRequester("Error", "Cant load font.PNG", 0) ; we alert an error and
End ; stop the application
EndIf
; -------- MainLoop --------
Repeat
ClearScreen($0) ; Clear Screen with color $0
ExamineKeyboard() ; Update for keyboard inputs
cco = 0
For cc = 0 To 25
letter = Asc(Mid(t.s, tptr+cc, 1))- 31
yCharPos = letter / 10
xCharPos = letter % 10
If xCharPos = -1 : xCharPos = 9
ElseIf xCharPos > 0 : xCharPos = xCharPos - 1
EndIf
ClipSprite(font, xCharPos*94, yCharPos*78, 70, 70) ;the magic
TransparentSpriteColor(font,#White) ;sets the transparacy color of the font png
DisplayTransparentSprite(font, sco+cco, 300+50*Sin((cc+cco+sco+m)/120)) ;
cco = cco + 32
Next
m = m -5
sco = sco -3
;
If sco < -32
tptr = tptr + 1
sco = sco + 32
EndIf
;
If tptr > Len(t.s)-30
tptr = 1
EndIf
; Stop drawing on DX Screen
FlipBuffers() ; Bring backround buffer to forground
Until KeyboardPushed (#PB_Key_Escape) ; Repeats until key ESCAPE has pressed
End