First of all, PLEASE put empty lines between your procedures/functions. Without them, the code is quite hard to read (for me atleast).

You should be looking here:
Code:
Procedure DrawQuadRT(X, Y, Wid, Hgt, Lev, Tu, Tu2, Tv,Tv2: single);
begin
  Tv := 1-Tv;  //<< comment this line and the next one
  Tv2 := 1-Tv2;
  glBegin(GL_QUADS);
    glTexCoord2f(Tu,  Tv); glVertex3f(X,     Y, -lev);
    glTexCoord2f(Tu2, Tv); glVertex3f(X+Wid, Y, -lev);
    glTexCoord2f(Tu2,Tv2); glVertex3f(X+Wid, Y-Hgt, -lev);
    glTexCoord2f(Tu, Tv2); glVertex3f(X,     Y-Hgt, -lev);
  glEnd;
end;
The calls to glTexcoord2f() are used to specify texture coordinates. If your text is upside down, you should flip the coordinates to make it work. Play arround with this. Try to remove the first two lines, or swap Tv by Tv2.

Good luck!