51 lines
2.0 KiB
Plaintext
51 lines
2.0 KiB
Plaintext
=== FC 99: DBMOV [STL] ===
|
|
INTERFACE:
|
|
Input:
|
|
QuellDB : Int // Quell-DB
|
|
QuellDW : Int // Quell-1.DW
|
|
ZielDB : Int // Ziel-DB
|
|
ZielDW : Int // Ziel-1.DW
|
|
Anzahl_DW : Int // Anzahl der zu kopierenden DWs
|
|
Output:
|
|
RE_VAL : Int // Rückmeldung
|
|
InOut:
|
|
Temp:
|
|
Quelle : Any // Zeiger, wo Rein-Daten sind
|
|
Ziel : Any // Zeiger, FIFO-Stelle
|
|
Constant:
|
|
Return:
|
|
Ret_Val : Void
|
|
|
|
--- NW 1: ---
|
|
// Kennung + Datenbytes
|
|
L 16#1004 // Kennung 10 + Word=04
|
|
T LW0
|
|
T LW10 // Any-Kennung, Datentyp
|
|
L Anzahl_DW // Datenwords speichern
|
|
T LW2
|
|
T LW12 // Wiederholungen
|
|
|
|
// Quelle-Pointer erzeugen:
|
|
L QuellDB
|
|
T LW4 // DB_Nummer
|
|
L QuellDW // Adresse
|
|
SLD 3
|
|
L 16#8400_0000 // Kennung: Daten
|
|
OD
|
|
T LD6 // Kennung, Adresse
|
|
|
|
// Ziel-Pointer erzeugen:
|
|
L ZielDB
|
|
T LW14 // DB_Nummer
|
|
L ZielDW // Adresse
|
|
SLD 3
|
|
L 16#8400_0000 // Kennung: Daten
|
|
OD
|
|
T LD16 // Kennung, Adresse
|
|
|
|
CALL SYS "BLKMOV" (SRCBLK:=Quelle, RET_VAL:=RE_VAL, DSTBLK:=Ziel) // Datenliste-Daten speichern
|
|
|
|
|
|
--- NW 2: Ende ---
|
|
BE
|