
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Ich habe den Fehler jetzt lokalisiert: Das 'NoHi' muss nach dem ersten END IF stehen! Bei Platzierung hinter dem zweiten 'END IF' wird am Ende jeder Zifferngruppe die ANSI-Sequenz zur Rücksetzung der Farbattribute auch ausgegeben. Diese wird aber nur benötigt wenn eine direkt vorstehende Zifferngruppe durch die Highlightfunktion farblich hervorgehoben ist. Erkannt habe ich den subtilen Fehler erst, nachdem ich ein Terminalprogramm ohne ANSI-Unterstützung zum Testen verwendet habe. Nur die zu langsame Ausgabegeschwindigkeit war mir aufgefallen. Mit der heutigen Korrektur benötigt das Programm auf meiner Original C-Control 1.1 etwa 10 Sekunden weniger für die ursprüngliche Aufgabe. Siehe vorstehenden Post. \\ Beispielausgabe mit überschüssigen ANSI-Steuersequenzen enthalten: ?[34;47m ~ 07440ms ?[1;37;44m (A),(M),(Q),(H)=233?[0m,?[34;47m250?[0ma????????????????????????[34;47m(A)= ???????500 00500 (HiByte=001 LoByte=244)?[0m 00500 001_244; 039?[0m 032?[0m 031?[0m 032?[0m 067?[0m 067?[0m 049?[0m 046?[0m 049?[0m 045?[0m 056?[0m 053?[0m ' . CC1.1-85 00512 002_000; 053?[0m 045?[0m 052?[0m 048?[0m 052?[0m 032?[0m 100?[0m 097?[0m 115?[0m 032?[0m 124?[0m 095?[0m 5-404 das |_ 00524 002_012; 032?[0m 084?[0m 101?[0m 097?[0m 109?[0m 032?[0m 040?[0m 000?[0m 005?[0m 013?[0m 220?[0m 026?[0m Team (..._. 00536 002_024; 010?[0m 005?[0m 015?[0m 046?[0m 031?[0m 044?[0m 000?[0m 005?[0m 013?[0m 252?[0m 026?[0m 010?[0m .....,...n.. 00548 002_036; 005?[0m 015?[0m 046?[0m 031?[0m 044?[0m 000?[0m 005?[0m 014?[0m 028?[0m 026?[0m 000?[0m 005?[0m ....,....... 00560 002_048; 014?[0m 060?[0m 026?[0m 010?[0m 023?[0m 000?[0m 023?[0m 010?[0m 051?[0m 026?[0m 000?[0m 005?[0m .<......3... 00572 002_060; 014?[0m 124?[0m 026?[0m 010?[0m 023?[0m 000?[0m 023?[0m 010?[0m 051?[0m 026?[0m 000?[0m 023?[0m .|......3... 00584 002_072; 000?[0m 020?[0m 000?[0m 000?[0m 062?[0m 004?[0m 002?[0m 088?[0m 020?[0m 127?[0m 255?[0m 026?[0m ....>..X.¦ . 00596 002_084; 010?[0m 003?[0m 002?[0m 092?[0m 023?[0m 000?[0m 026?[0m 010?[0m 005?[0m 015?[0m 046?[0m 031?[0m ...\........ 00608 002_096; 041?[0m 032?[0m 000?[0m 005?[0m 016?[0m 226?[0m 026?[0m 010?[0m 005?[0m 015?[0m 046?[0m 020?[0m ) ...G...... 00620 002_108; 000?[0m 216?[0m 025?[0m 023?[0m 005?[0m 012?[0m 166?[0m 005?[0m 011?[0m 166?[0m 020?[0m 000?[0m .+....ª..ª.. 00632 002_120; 217?[0m 025?[0m 023?[0m 005?[0m 012?[0m 166?[0m 020?[0m 000?[0m 218?[0m 025?[0m 023?[0m 005?[0m +....ª..+... 00644 002_132; 012?[0m 166?[0m 022?[0m 023?[0m 020?[0m 000?[0m 218?[0m 065?[0m 004?[0m 002?[0m 146?[0m 003?[0m .ª....+A..Æ. 00656 002_144; 002?[0m 195?[0m 020?[0m 000?[0m 008?[0m 027?[0m 000?[0m 004?[0m 026?[0m 010?[0m 020?[0m 000?[0m .+.......... 00668 002_156; 013?[0m 027?[0m 000?[0m 004?[0m 026?[0m 011?[0m 031?[0m 013?[0m 010?[0m 000?[0m 022?[0m 020?[0m ............ 00680 002_168; 032?[0m 022?[0m 021?[0m 032?[0m 022?[0m 022?[0m 032?[0m 022?[0m 023?[0m 032?[0m 031?[0m 032?[0m .. .. .. . 00692 002_180; 124?[0m 095?[0m 032?[0m 062?[0m 032?[0m 060?[0m 000?[0m 020?[0m 000?[0m 008?[0m 032?[0m 020?[0m |_ > <.... . ?[34;47m ~ 07440ms ?[1;37;44m (A),(M),(Q),(H)=233?[0m,?[34;47m250?[0m Beispielausgabe nach Berichtigung des Codes: ?[34;47m ~ 06240ms ?[1;37;44m (A),(M),(Q),(H)=233?[0m,?[34;47m250?[0ma????????????????????????[34;47m(A)= ???????500 00500 (HiByte=001 LoByte=244)?[0m 00500 001_244; 039 032 031 032 067 067 049 046 049 045 056 053 ' . CC1.1-85 00512 002_000; 053 045 052 048 052 032 100 097 115 032 124 095 5-404 das |_ 00524 002_012; 032 084 101 097 109 032 040 000 005 013 220 026 Team (..._. 00536 002_024; 010 005 015 046 031 044 000 005 013 252 026 010 .....,...n.. 00548 002_036; 005 015 046 031 044 000 005 014 028 026 000 005 ....,....... 00560 002_048; 014 060 026 010 023 000 023 010 051 026 000 005 .<......3... 00572 002_060; 014 124 026 010 023 000 023 010 051 026 000 023 .|......3... 00584 002_072; 000 020 000 000 062 004 002 088 020 127 255 026 ....>..X.¦ . 00596 002_084; 010 003 002 092 023 000 026 010 005 015 046 031 ...\........ 00608 002_096; 041 032 000 005 016 226 026 010 005 015 046 020 ) ...G...... 00620 002_108; 000 216 025 023 005 012 166 005 011 166 020 000 .+....ª..ª.. 00632 002_120; 217 025 023 005 012 166 020 000 218 025 023 005 +....ª..+... 00644 002_132; 012 166 022 023 020 000 218 065 004 002 146 003 .ª....+A..Æ. 00656 002_144; 002 195 020 000 008 027 000 004 026 010 020 000 .+.......... 00668 002_156; 013 027 000 004 026 011 031 013 010 000 022 020 ............ 00680 002_168; 032 022 021 032 022 022 032 022 023 032 031 032 .. .. .. . 00692 002_180; 124 095 032 062 032 060 000 020 000 008 032 020 |_ > <.... . ?[34;47m ~ 06240ms ?[1;37;44m (A),(M),(Q),(H)=233?[0m,?[34;47m250?[0m Hier der berichtigte Codeteil: Procedure PrintLZHLbyte(b6) ' (Print with LeadingZerosHighLightBytes.) '3-stellige Dezimalausgabe eines Bytes mit fuehrenden Nullen und farblicher Hervorhebung bei Uebereinstimmung mit b19, bzw. b20: Put " " IF (b6 >< b19) AND (b6 >< b20) THEN PrintLZ(b6) ELSE IF b6=b19 THEN HiA : PrintLZ(b6) ELSE HiB : PrintLZ(b6) END IF NoHi ' Farbattribute nur setzen wenn zuvor 'HiA' und/oder 'HiB' durchlaufen wurden END IF '''NoHi - an dieser Stelle falsch (ca. 1,2 Sekunden mehr Zeitbedarf je Ausgabeabschnitt @9615 bd) RETURN @Dietmar - Vielen Dank für den Tipp! ![]() Passender Link: Imagedatei für C-Control 1.1 (8KB, 4MHz) |
| Antwort schreiben |