- x = x_draw;\r
- romFontsData.chw = 0;\r
- addrq += (page->stridew) * 8;\r
- addrr = addrq;\r
- y += 8;\r
- continue;\r
- }\r
-\r
- // load the character into romFontsData.l\r
- // no need for inline assembly!\r
- // NTS: It might even be faster to just let the modexDrawChar point directly at ROM font than to copy per char! --J.C.\r
- _fmemcpy(romFontsData.l,MK_FP(s,o+(w*c))/*ROM font location*/,w/*char size*/);\r
- modexDrawChar(page, x_draw/*for mode X planar use*/, t, col, bgcol, addrr);\r
- x_draw += 8; /* track X for edge of screen */\r
- addrr += 2; /* move 8 pixels over (2 x 4 planar pixels per byte) */\r
+ case 0:\r
+ printf("%s\n", str);\r
+ break;\r
+ case 1:\r
+ if(tlsw){ x-=page->tlx; y-=page->tly; }\r
+ x_draw = x/4;\r
+ addrq = (page->stridew) * y + (word)(x_draw) +\r
+ ((word)page->data);\r
+ addrr = addrq;\r
+ s=romFonts[t].seg;\r
+ o=romFonts[t].off;\r
+ w=romFonts[t].charSize;\r
+ romFontsData.chw=0;\r
+\r
+ for(; *str != '\0'; str++)\r
+ {\r
+ c = (*str);\r
+ if(c=='\n')\r
+ {\r
+ x = x_draw;\r
+ romFontsData.chw = 0;\r
+ addrq += (page->stridew) * 8;\r
+ addrr = addrq;\r
+ y += 8;\r
+ continue;\r
+ }\r
+\r
+ // load the character into romFontsData.l\r
+ // no need for inline assembly!\r
+ // NTS: It might even be faster to just let the modexDrawChar point directly at ROM font than to copy per char! --J.C.\r
+ _fmemcpy(romFontsData.l,MK_FP(s,o+(w*c))/*ROM font location*/,w/*char size*/);\r
+ modexDrawChar(page, x_draw/*for mode X planar use*/, t, col, bgcol, addrr);\r
+ x_draw += 8; /* track X for edge of screen */\r
+ addrr += 2; /* move 8 pixels over (2 x 4 planar pixels per byte) */\r
+ }\r
+ //printf("print xy:%dx%d tlxy:%dx%d\n", x, y, page->tlx, page->tly);\r
+ break;\r