Anwendungsbeispiel zu den Textausgabe-Routinen So, um Euch nun noch die Anwendung der Textausgabe-Routis zu zeigen, habe ich hier ein kleines Prog geschrieben, das den Ge- schwindigkeitszuwachs bei der Verwendung dieser Routinen gegen- ber dem bisherigen OutTextXY demonstrieren soll. Auf meinem Rechner luft das vergleichbare G_TranText() etwa 6 mal so schnell, und das obwohl man gleichzeitig noch die Farbe whlen kann (mu bei OutTextXY separat geschehen) und der 14'er anstelle des 8'er Zeichensatzes benutzt wird (es werden also 6 Bytes pro Zeichen mehr ausgegeben). Die Unit 'TIME' habe ich beim letzten mal schon vorgestellt, liegt aber auch diesmal in PAS/TPU-Form bei. PROGRAM TestGrfText; USES CRT,GRAPH,TIME; VAR Zeit1,Zeit2 : REAL; i : WORD; {$F+} {$L grftext.obj} PROCEDURE T_TranText(x,y : WORD; VF: BYTE; Text : STRING); EXTERNAL; PROCEDURE G_TranText(x,y : WORD; VF: BYTE; Text : STRING); EXTERNAL; PROCEDURE T_SolidText(x,y : WORD; VF,HF: BYTE; Text : STRING); EXTERNAL; PROCEDURE G_SolidText(x,y : WORD; VF,HF: BYTE; Text : STRING); EXTERNAL; {$F-} PROCEDURE Init12h; VAR d : INTEGER; BEGIN d := 0; InitGraph(d,d,'bgi\'); {Eigenen Pfad angeben!} END; BEGIN WriteLn('Zuerst wird der String ''MicroCode'' 10000 mal mit'+ 'OutTextXY ausgegeben.'); WriteLn('Dann wird das Gleiche mit G_TranText wiederholt.'); WriteLn('Bitte lange genug warten und jetzt Enter drcken'); ReadLn; Init12h; Zeit1 := Timer; FOR i := 1 TO 10000 DO OutTextXY(10,10,'MicroCode'); Zeit1 := Timer - Zeit1; Zeit2 := Timer; FOR i := 1 TO 10000 DO G_TranText(10,20,15,'MicroCode'); Zeit2 := Timer - Zeit2; CloseGraph; WriteLn('So, das war''s. Hier die Zeiten:'); WriteLn('OutTextXY : ',Zeit1:1:4); WriteLn('G_TranText: ',Zeit2:1:4); ReadLn; END. Tja, sieht noch nach nichts aus, aber probiert's am besten mal aus. Wenn nichts dazwischen gekommen ist, heit das Prog TextTest.PAS und sollte im SOURCE-Pfad zu finden sein. Kemil.