Sieh dir bitte zuerst die FAQ des Forums an, da gibt es sehr gute Beiträge zum Thema Pointer und Any und indirekte Adressierung. Dann kannst du hier im Forum ebenfalls suchen, Stichwörter wären "Pointer" "indirekte Adressierung". Damit hast du erst mal eine Menge zu lesen und zu verstehen, aber das macht durchaus Sinn.
In deinem Falle gibt es verschiedene Vorgehensmöglichkeiten (na ja, wie eigentlich immer).
Code:
L Index //Index als INT
L 4 //DWORD besteht aus 4 Byte, daher zur Adressierung des richtigen DBD *4 (das geht natürlich auch mit SLD 5 statt SLD 3)
*D
SLD 3 //Pointerformat erstellen
LAR1 //in das Adressregister 1 laden
Damit kannst du dann auf einzelne Bits des DWORD zugreifen (P#0.0 bis P#3.7)
Code:
AUF "BOX_DB"
U DBX [AR1,P#1.0]
Ich bin mir gerade nicht sicher, in welcher Reihenfolge die Bits adressiert werden müssen,
also ob in dem DWORD Bit0 auch P#0.0 oder P3.0 ist, das müßte ich auch erst mal nachsehen,
aber das kannst über ein kleines Testprogramm auch selbst herausbekommen.
Es gibt noch ein andere Möglichkeit, indem man die Variable per indirekter Adressierung auf eine Hilfsvariable
kopiert und dann mit den einzelnen Bits dieser Hilfsvariable weiterarbeitet und anschließend das Ganze wieder Return,
das ist aber schwieriger zu erklären.