Version 1.3a: thrashing in Mess-Routine durch Umstellung vermindert:
              vorher 10-thrash-Adressen, Nachher 5-thrash-Adressen
        1.3b: LA-Option (Port-80h-Ausgabe) als Compileroption
        1.3c: 16 KB-Cache => IntelDX4 falls rel < 1.1
              ET-Bit zur IBMSLC2/BL3-Unterscheidung geht nicht!!
        1.3c  Diskriminante bei L2-WB auf 4 Prozent verringert
        1.4   Arbeitet mit Univers im extended von 2 M bis 4 M
              4M Speicher Minimum!!!  => ctcm3
        1.4a  getCachessize neu, Routine thrash viermal fr jeden
              Wert von Asso eine eigene Routine =>
              innere Looptime krzer
        1.4b  Cachesize bei Useheap mit Startadr $10000
                        bei UseXMM  mit Startadr extstartadr
              XMM-bedarf auf 1MB runtergestuft
        1.4c  Pentium-Timestamp eingefgt
        1.4d  Codemess relativ zu D40A eingefhrt da sonst
              bei schnellen Proz ohne L2 Messungen zu ungenau
        1.4e  codemess nach  messunit ausgelagert
        1.4f  cpuerkennung nach getcpu ausgelagert
              Cpudetekterror falls cpuiD <> Timing
              Parameter jetzt zwingend mit /xxx
              Ausnahme die dokumentierten, die beides erlauben
        1.5   1.- Messroutine wird jetzt als Messproc konstruiert
              alle Variablen als Konstante ersetzt=> weniger
              Thrashing
              2.- Dirty und Write/Back-Erkennung nicht mehr via
              MOVSD, sondern schnelles, aufeinanderfolgendes Laden mit
              Adredifferenz von 32,
              3.- CacheSize-Detektion nach Unit Cachesiz verlagert
               neue CacheSize-Detektion ber MOVSD zugefgt
        1.5b  TransmessUntillMintime eingefgt
        Maxrange nicht mehr statisch auf 2MB, sondern bis zu Maxmemavail
        1.5bx Startgre fr Cache bei CX486SLC .. auf 0,5 KB
        1.5by Ausgabe fr AMD5x86 mit CPUID 0E und 0F auf
              x4 WB oder x4 WT erweitert
        1.5bz Default mit WBinvld in der Messroutine
        1.6   Mit CodeCache-Ermittlung
              WBINvld nur bei AMD K5, oder Kommando  /WBINVD
        1.6a  CPUID bei PPRO mit Cacheangabe
        1.6b  CodeCache-Ermittlung korrigiert.
        1.6b  mit AMD 5k86 PRxx-Angabe fr Model 0, 1,2
              mit Pentium MMX
        1.6c  Mit Innerloop ber BX-Register fr
              L1-Cache-Hit-Transfer => grere Genauigkeit bei
              L1-Transfer-Messung, ist auch erheblich schneller!
        1.6c  Neue Transfer-Messroutinen, nun komplett mit L2Fill
              und Preload in einem Rutsch ohne zwischenzeitlichen
              Datenzugriff!. Die mhsame Patchroutinen in Pascal
              sind komplett entfallen, das Transfer-Programm (in Assembler)
              patcht sich jedesmal selbst. L2Fill Reihenfolge nicht mehr
              2->2, 0->0, 1->1, sondern 0->0, 1->1, 2->2 ...
              Fr I/O-Timer und  usepentiumtimer, Fastmove nur ber I/O.
        1.6d  Hauptspeicher-Detektion sucht Memory holes und
              Noncacheable Areas
        1.6e  Mit Messmethode Pentx: benutzt Pentium-Performance-Timer
              falls /msr und /ex gesetzt.
              /msr=xx,yy setzt events 0,1
        1.6f  Neue Routine zur Parameter-Auswertung
              Nach Unit Common.pas verlagert
        1.6g  Videomessung erweitert, VESA-Modi
              Nach Unit Video verlagert
        1.6h  Memory-Holes/ NoncacheArea-Messung nach Unit Memory
              Umrechenfeld Block zu Adresse x[block] aufgelst
              stattdessen Funktion blockadr(block) eingefgt
              (spart 4KByte Platz im Datensegment )
              bergabe an Messfunktionen hinfort Adresse, nicht Blocknr.
              Reihenfolge von Wohin/Woher in Transmess getauscht
       1.6i   MaxL1cacheSize (globaler Parameter) eingefhrt,
              fr Prozessoren der Familie 3,4: 32 KB
                                          >=5: 128 KB
              >= CX686                       : 128 KB
              MaxL2CacheSize je nach verfgbaren Speicher wird
              bei nicht erkanntem L2-Cache ausgegeben
              Maximale Messlnge in Messunit von 42 KB  auf
              freien Platz im Real Heap vergrert

        1.6j  Messfeld umgebaut: Transfers mit L1/2 mglich
              Messfeld global in Main
              Z[x,x,x,x,x,x] und Zlin aufgelst, stattdessen Funktion
              getresult('name'): sucht nach Messname in Messfeld
              resultarray fr die Messergebnisse
              Angabe des Fillbocks mglich (L in messrec eingefhrt)
              Blockbezeichnung gendert, /0 statt 8, /1 statt 9 etc
              Messname erweitert um c/d fr L1-miss
              Zwei fehlerhafe TransferEintrge im  Messfeld korrigiert
              Ausgabe von Write-Allokation und Hidden-Castoff
              Keine Simulation bei L2 > 1M, dazu Parameter
              /Nogew fr keine Gewichtung
              Neue CodeCacheSize-Detection
              WriteAlloc fr K6, M1,M2 ein/abschaltbar ;
              WritePipe beim K5
              Parameter /WA= off/on

        1.6k  Partiell Windowstauglich gemacht:
                kein Protection Fault unter Windows;
                CPUID  und Takt auch unter Windows
                VESAinfo        "
              Ausgabe der VESA-Strings gendert:
                statt bis Endemarke #0  wird nur so lange ausgegeben,
                wie char in Ascii
               neuer Parameter: /F : gibt CPUID.Features aus
               Transmess statt xmove in GetDataCachesize mit pentmsr
                => weniger Thrashing
               Parameter /XM: benutzt altes Xmove
               L1dis fr jeden Prozessor individuell (in Proztab)

               Haltepunkte neu sortiert
               p80inf neu sortiert
               Testwalloc mit p80inf
               Testwalloc berarbeitet (PII-tauglich)
               get/setmsr mit Fehlercode
                Result=0 ok, 6=Unknown, $D=protection fault
               setmsr mit option Flush: WBINVLD und Clear TLB/I-Cache
               Parameter Cache= gestrichen, dafr
               L1=xxx mit xxx =on/off (geplant sind auch WB, WT etc)
               L2=xxx mit xxx =on/off  "
               Timerberlauf bei 1MByte L1-Caches,
               berlauf wg. zu frh STI nicht erkannt
               + 54 ms bei berlauf => Mezeit bis 108 ms bei IOTimer
               WBinv bei allen TransMessroutinen vor L2fill
               => erhebliche Perf. Verbesserung bei 6x86MX im L1
               INT06 fr 386 abgefangen
               Perf. Montitoring fr Pentium und 6x86MX korrigiert
               TestWBINVD hinzugefgt (fhrt WBinvd zu L2-Flush ?)
         1.6l  TestWalloc nochmals gendert (wg. 6x86)
               TestReplacement hinzugefgt
               Alle Messroutinen nach ctcmb.asm ausgelagert
               Messungen im 32-Bit Segment mglich
               Messungen via FPU hinzugefgt
         1.6m  Setzt nderungen von MSR 11E beim PII zurck
               gibt bei ext MSR11E aus
               Writealloc von 0 1,2 auf (stay, on, off) umgesetzt
               Testwballoc erwartet bergabe von Cachesize
               FTransmess in FMOVmess umbenannt
               FLODmess hinzugefgt
               Testwalloc auf FLODmess gendert
               WA fr PII via MSR 11E Bit 5 war Irrtum, stattdessen ECC
               Cachelinesize fr Showtakt (Parameter /L)
                 eingefhrt (war Standard auf 16)
                 jetzt bei Pentium und Co auf 32 gesetzt
               Timerberlauf bei langsamen Rechnern beseitigt
               L2-Latency-Anzeige bei PII
               /LAT erlaubt Eingabe der L2Latency
               Multilingualsupport (fr gr/us/nl), extended weiterhin nur gr
               Hilfefunktion /?, /H hinzugefgt
         1.6n  Untersttzung fr AMD K6-2
               Fehlerbereinigt bezueglich Cyrix/IBM-Prozessoren

