--- a
+++ b/trunk/RetroGames/Pong/GameObjects/FB_Board_1/svnobj
@@ -0,0 +1,5 @@
+Gx_l£!0…jüoj
+%÷w|*3”aSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument	L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
+TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}Id
longTagText:udiTimeNow := SysTimeGetMs();NudiTimeDiff := udiTimeNow - udiTimeOld;`// The vector is stored in pixel per millisecond4IF (udiTimeDiff <> 0) THEN¦vecOut.rVY := INT_TO_REAL(posIn.iYPos - posOld.iYPos) / UDINT_TO_REAL(udiTimeDiff);ELSE"	vecOut.rVY := 0;END_IF vecOut.rVX := 0;2udiTimeOld := udiTimeNow;8posOut.iYPos := posIn.iYPos;R// Call generic implementation of base fbSUPER^();InterfaceL{a9ed5b7e-75c5-4651-af16-d2c27e98cb94} T/// This function block describes a board.!d/// A board is always repositioned by the external"(/// poti or encoder.#///$r/// The output vector is ca lculated automatically, based%–/// on the movement of the object. The new position should be calculated by&,/// the derived class.'ZFUNCTION_BLOCK FB_Board EXTENDS FB_ObjectBase(VAR_INPUT)END_VAR*VAR_OUTPUT+VAR,VAR_TEMP-(	udiTimeNow : UDINT;.*	udiTimeDiff : UDINT;/VAR CONSTANT0(	iWidth : INT := 20;1,	iHeight : INT := 100;2"UniqueIdGenerator31054POULevel5L{8e575c5b-1d37-49c6-941b-5c0ec7874787}6Standard7 ChildObjectGuids88System.Collections.ArrayList9,AddAttributeSubsequent:boolÐÐ-ÐÐ	E
+ÐÐ
­8ÚÐ-ÐÐ
­:ÚÐ-ÐÐ
­<ÚÐ-ÐÐ
­=ÚÐ-ÐÐ
­LÚÐ-ÐÐ
­?ÚÐ-ÐÐ
­PÚÐ-ÐÐ
­QÚÐ-ÐÐ
­MÚÐ-ÐÐ
­OÚÐ-ÐÐ
­NÚÐ-ÐÐ
­RÚÐ-ÐÐ
­IÚÐ-ÐÐ
­JÚÐ-ÐÐ
­AÚÐ-ÐÐ
­@ÚÐ-ÐÐ
­	ÚÐ-ÐÐ	E
+ÐÐ
­SÚÐ- ÐÐ
­TÚÐ-!ÐÐ
­UÚÐ-"ÐÐ
­VÚÐ-#ÐÐ
­WÚÐ-$ÐÐ
­XÚÐ-%ÐÐ
­YÚÐ-&ÐÐ
­ZÚÐ-#ÐÐ
­[ÚÐ-'ÐÐ
­\ÚÐ-(ÐÐ
­]ÚÐ-)ÐÐ
­^ÚÐ-*ÐÐ
­_ÚÐ-)ÐÐ
­`ÚÐ-+ÐÐ
­aÚÐ-)ÐÐ
­bÚÐ-,ÐÐ
­cÚÐ--ÐÐ
­dÚÐ-.ÐÐ
­eÚÐ-)ÐÐ
­fÚÐ-/ÐÐ
­gÚÐ-0ÐÐ
­hÚÐ-1ÐÐ
­iÚÐ-)ÐÐ
­ÚÐ-Ð2-3Ð45-678Ð9:­
\ No newline at end of file