I Can't see why the first block move returns 8325 but second works. (well i can see why the second works)..
What is wrong with my pointers, please help me out.
Error 8325: as far as i understand something is wrong with the destination pointer (parameter 3, passed to the "BLKMOV" and 25 states it is a Range error when writing a parameter. What am i missing here..
What is wrong with my pointers, please help me out.
Error 8325: as far as i understand something is wrong with the destination pointer (parameter 3, passed to the "BLKMOV" and 25 states it is a Range error when writing a parameter. What am i missing here..
Code:
_200: L #TxDB // Open TxDB
T #L_TX_DBB
OPN DB [#L_TX_DBB]
LAR1 P##SrcPtr // Source Ptr
L W#16#1002 // S7 + Byte
T W [AR1,P#0.0]
L DBB 130 // Bytes to be copied
T W [AR1,P#2.0]
L #TxDB // DB to copy from
T W [AR1,P#4.0]
L P#DBX 131.0 // DBB to copy from
T W [AR1,P#6.0]
LAR1 P##DstPtr // Destination Ptr
L W#16#1002 // S7 + Byte
T W [AR1,P#0.0]
L DBB 130 // Bytes to be copied
T W [AR1,P#2.0]
L #TxDB // DB to copy to
T W [AR1,P#4.0]
L P#DBX 192.0 // DBB to copy to
T W [AR1,P#6.0]
// This first "BLKMOV" fails, returning 8325
CALL "BLKMOV"
SRCBLK :=#SrcPtr
RET_VAL:=#RetVal
DSTBLK :=#DstPtr
// This "BLKMOV" works fine
CALL "BLKMOV"
SRCBLK :=P#DB1.DBX131.0 BYTE 16
RET_VAL:=#RetVal
DSTBLK :=P#DB1.DBX192.0 BYTE 16