So langsam geht es vorran mit der WinCE Version von RUTIS.
Doch leider hänge ich an einem großen Problem.
Anscheinend kann WinCE Variablen nicht außerhalb ihres Rasters abfragen.
Beispiel:
Delphi-Quellcode:
var
Data :
Array [0..64]
of Byte;
begin
//Die folgenden Befehle funktionieren alle problemlos
PCardinal(@Data[0]) := 1;
PCardinal(@Data[4]) := 2;
PCardinal(@Data[8]) := 3;
...
//Die folgenden Befehle verursachen auf WinCE mindestens mal eine AV (wenn nicht schlimmer)
PCardinal(@Data[1]) := 1;
PCardinal(@Data[3]) := 2;
PCardinal(@Data[7]) := 3;
end;
Ich hab bisher keine einzige möglichkeit gefunden, das Problem zu umgehen - bzw keine effektive.
Ich habe das ganze unter
Win32 im Debugger mal geprüft:
Die
AV tritt bei einem AMS Befehl wie
MOV [EAX], ESI auf
Das ganze ergibt iwie keinen Sinn.
Auffällig ist noch, das der Fehler nicht nur auf einem echten PocketPC auftritt, sondern auch im Windows Device Emulator, wo ich das Programm meistens teste.
Ich hoffe jemand hat ne Idee was man dagegen machen kann, bzw wo dieses Problem herkommt.
PS: Ich nutze Free-Pascal (Lazarus) zum kompilieren
MFG