Hallo,
ich versuche einen aus einem Multiinstanz DB 30 einzelne Bits in einem anderen DB 503 zu verschieben.
Das herauslesen funktioniert, die CPU meldet jedoch einen internen Fehler bei den Pointer-Zeilen (Adressüberschreitung).
Das laden in den 503 funktioniert gar nicht.
Wie würde es richtiger ausschauen? Bin nicht so der Profi wie ihr seht ;)
Wäre wirklich dankbar wenn ihr weiter helfen könntet
ich versuche einen aus einem Multiinstanz DB 30 einzelne Bits in einem anderen DB 503 zu verschieben.
Das herauslesen funktioniert, die CPU meldet jedoch einen internen Fehler bei den Pointer-Zeilen (Adressüberschreitung).
Das laden in den 503 funktioniert gar nicht.
Wie würde es richtiger ausschauen? Bin nicht so der Profi wie ihr seht ;)
Code:
//--- Pointing first ZM instance
L P#0.0
T #ZM_Adr
L 220 //Start adresse
T #ZM_AdrDest
L 64
NEXT: T #ZM_loop
//*** Starting Loop *********
AUF DB 30 // Activ DB Read
L #ZM_Adr
//---------------------------
LAR1
L DBB [AR1,P#25.0] // Load DBB 25 Status
T #ZM_BZM1 // xxxx xxxx
L B#16#1 // 0000 0001
UW // ---- ---x 25.0 frg
T #ZM_BZM2 // 0000 000x
L #ZM_BZM1 // xxxx xxxx
L B#16#80 // 1000 0000
UW // x--- ---- 25.7 SEV
SRW 5 // ---- -x--
L #ZM_BZM2 // 0000 000x
OW
T #ZM_BZM2 // 0000 0x0x
L DBB [AR1,P#24.0] // Load DBB 24 Status
T #ZM_BZM1 // xxxx xxxx
L B#16#1 // 0000 0001
UW // ---- ---x 24.0 SER
SLW 1 // ---- --x-
L #ZM_BZM2 // 0000 0x0x
OW
T #ZM_BZM2 // 0000 0xxx
L #ZM_BZM1 // xxxx xxxx
L B#16#8 // 0000 1000
UW // ---- x--- 24.3 STO
L #ZM_BZM2 // 0000 0xxx
OW
T #ZM_BZM2 // 0000 xxxx
//--- Pointing next ZM instance
L P#26.0 // Offset
L #ZM_Adr // Adr ZM act
+D // Adr +Offset
T #ZM_Adr //=Adr ZM next
AUF DB 504 //Transfer to DB
L #ZM_BZM2
T DBB [#ZM_AdrDest]
L P#1.0
L #ZM_AdrDest
+I
// Oder:
// L #ZM_AdrDest
// LAR1
// AUF DB 504
// L #ZM_BZM2
// T DBB [AR1,P#1.0]
//*** Ending Loop ************
L #ZM_loop
LOOP NEXT
Wäre wirklich dankbar wenn ihr weiter helfen könntet