Flowcode Project File Parser

Ben Rowland 2019 (C) Matrix TSL


Target Device

PIC.16F.16F1937

Constants

SIGNED INT UseTX     SIGNED INT UseRX    

Globals

BOOL RS485_State     BOOL Connected     HANDLE console    

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

SendString

Return:     VOID
Params:     STRING Data    
Vars:     BYTE Idx     BYTE Len    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Prv_TextConsole

Return:     VOID
Params:     STRING Str     BYTE colour    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Ev_Stop

Return:     UNSIGNED LONG

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Prv_GetParentName

Return:     VOID
Vars:     HANDLE ObjHandle     STRING ObjName    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Ev_Initialise

Return:     UNSIGNED LONG
Vars:     STRING filter    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Receive

Return:     SIGNED INT
Params:     UNSIGNED INT Timeout    
Vars:     STRING str     STRING cstr    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Ev_Property_Change

Return:     UNSIGNED LONG
Vars:     STRING temp_str     STRING CompName     HANDLE ObjHandle     UNSIGNED LONG calc     FLOAT fCalc    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Prv_SetupConsole

Return:     VOID
Vars:     STRING str     UNSIGNED LONG inst    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

GetNumber

Return:     UNSIGNED INT
Params:     STRING text    
Vars:     UNSIGNED INT l     UNSIGNED INT x    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Ev_Decode

Return:     UNSIGNED LONG
Params:     HANDLE StreamH     SIGNED LONG TimeOffset     UNSIGNED LONG PacketSize    
Vars:     UNSIGNED LONG baud_period_in_tics     UNSIGNED LONG step     FLOAT baud_period    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Prv_PopulateInjectorFilter

Return:     VOID
Vars:     HANDLE ObjHandle     HANDLE RootHandle     HANDLE OldHandle     STRING ObjName     STRING CmpName     BYTE Index     BYTE X     STRING OldName     BYTE Idx    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

ScanForDeviceID

Return:     BYTE
Params:     STRING HWID    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Send

Return:     VOID
Params:     UNSIGNED INT Char    
Vars:     STRING str     STRING cstr     BOOL cts    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

GetConsoleHandle

Return:     HANDLE

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

SendByteArray

Return:     VOID
Params:     BYTE Data     UNSIGNED INT NumBytes    
Vars:     UNSIGNED INT Idx     STRING cstr     STRING str    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Init

Return:     VOID
Vars:     STRING str    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Ev_FmtPacket

Return:     UNSIGNED LONG
Params:     HANDLE StreamH     SIGNED LONG TimeOffset     UNSIGNED LONG Duration     BYTE Data     UNSIGNED LONG Bits     UNSIGNED LONG EventId     STRING Result    
Vars:     STRING summary    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Ev_Adding

Return:     UNSIGNED LONG
Params:     HANDLE Component    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Ev_Renamed

Return:     UNSIGNED LONG
Vars:     STRING Name    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Prv_GetInjectorHandle

Return:     VOID
Params:     UNSIGNED INT Index    
Vars:     HANDLE ObjHandle     HANDLE RootHandle     HANDLE OldHandle     BYTE Count     STRING ObjName     STRING CmpName     STRING OldName     BYTE Idx     BYTE X    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Uninit

Return:     VOID
Vars:     STRING str    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

ReceiveByteArray

Return:     UNSIGNED INT
Params:     BYTE Data     UNSIGNED INT NumBytes     UNSIGNED INT Timeout    
Vars:     UNSIGNED INT idx     STRING str     STRING cstr    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

Main

Return:     VOID
Vars:     BYTE ix     STRING text     BYTE ret    

Your browser does not support the HTML5 canvas tag.

SendString    /    Prv_TextConsole    /    Ev_Stop    /    Prv_GetParentName    /    Ev_Initialise    /    Receive    /    Ev_Property_Change    /    Prv_SetupConsole    /    GetNumber    /    Ev_Decode    /    Prv_PopulateInjectorFilter    /    ScanForDeviceID    /    Send    /    GetConsoleHandle    /    SendByteArray    /    Init    /    Ev_FmtPacket    /    Ev_Adding    /    Ev_Renamed    /    Prv_GetInjectorHandle    /    Uninit    /    ReceiveByteArray    /    Main    /    ReceiveString

ReceiveString

Return:     BYTE
Params:     STRING StringData     UNSIGNED INT NumBytes     UNSIGNED INT Timeout    
Vars:     UNSIGNED INT in     UNSIGNED INT tout    

Your browser does not support the HTML5 canvas tag.

Verison History

Version 0.6
12/09/19 BR - Created initial recursive parser
14/09/19 BR - Added support for disabled icons
18/09/19 BR - Fixed decision icon parsing
19/09/19 BR - Added switch icon support
23/09/19 BR - Fixed recursive loop spacing
27/09/19 BR - Further tweaked spacing and added Macro menu
30/09/19 BR - Improved all string spacing
01/10/19 BR - Improved While icon support