; This demonstrates Mapping Offsets

BaudRate 12m

;     Node ILen OLen DeviceID
PbSlave  4   60   60 0x08a5
Name "TestTarget"

IpAddr 10.10.0.198
RPI 10

AssemIns 6
O_T_ConnPt 2
T_O_ConnPt 1

; Pbs Offsets are 16-bit (Int)
; Eth Offsets are 16-bit (Int) by default
;     Byte, Int, Dint and Real can modify the offset
; 16-bit values must be 16-bit aligned
; 32-bit values must be 32-bit aligned

Inputs 38  ; Bytes: 'Seq'2 + 'StsHdr'4 + 'Payload'32 (16 ints or 8 dints)
; header 0 1 2 3 4 5 6 7 8 9...
;            0 1 2 3 4 5 6 7...
PbsInt[0] <- Int[header 0]  ; Status Header - Not generally used by A-B drives
PbsInt[1] <- Int[header 1]

PbsInt[2] <- Int[       0]
PbsInt[3] <- Int[header 2]
; *** Duplicate source mapping for demonstration

PbsDint[10] <- Dint[header 0] ; Status Header - Not generally used by A-B drives
EndInputs

Outputs 38  ; Bytes: 'Seq'2 + 'Run/IdleHdr'4 + 'Payload'32 (16 ints or 8 dints)
; Outputs looped back for display on Test Target
PbsInt[  0] -> Int[  0]
PbsInt[  1] -> Int[  3]

PbsDint[ 2] -> Dint[10]
PbsDint[ 4] -> Dint[12]
EndOutputs

EndPbSlave