Ich versuche mit ReadSZL den Diagnosepuffer auszulesen.

Das funktioniert auch bei einer 300er und 400er CPU! Nun habe Ich aber das Problem die Anzahl der gelsenen einträge rauszufinden.

Habe das mal so gemacht:

Code:
 List<LibNoDaveDataTypes.DiagnosticEntry> retVal = new List<LibNoDaveDataTypes.DiagnosticEntry>();
            byte[] buffer = new byte[65536]; 
            int ret = _dc.readSZL(0xA0, 0, buffer); 

            if (ret < 0)
                throw new Exception("Error: " + libnodave._daveStrerror(ret));

            int cnt = buffer[7] + buffer[6]*256;
Das funktioniert auch auf der 300er, doch auf der 400er kommt in buffer[7] und buffer[6] 255 d.h. er denkt ich hätte 65536 einträge gelesen, das ist jedoch falsch.

Aber laut doku steht im 3ten wort die Anzahl, hat jemand einen Tipp?