Flowcode Project File Parser

Ben Rowland 2019 (C) Matrix TSL


Target Device

PIC.16F.16F877A

Constants

BOOL false     BOOL true    

Globals

BYTE RX     BYTE test     BYTE TX     HANDLE ConsoleHandle     UNSIGNED LONG PosIn     HANDLE FHO     UNSIGNED LONG PosOut     UNSIGNED LONG LenIn     HANDLE FHI     UNSIGNED INT DataOutStart     UNSIGNED LONG LenOut     BYTE DetCR     BYTE CountIn     UNSIGNED INT DataOutEnd    

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

SPITransferTrans

Return:     VOID
Params:     BYTE Channel     UNSIGNED INT Count     BYTE DataOut     BYTE DataIn    
Vars:     UNSIGNED INT idx    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

InitialiseInjector

Return:     BYTE
Params:     STRING InjectorName    
Vars:     BYTE Type    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

Ev_Timer

Return:     UNSIGNED LONG
Params:     UNSIGNED LONG TimerID    
Vars:     STRING GpsData    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

UARTBaud

Return:     VOID
Params:     BYTE Channel     BYTE Rate    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

RxByteCount

Return:     BYTE

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

Ev_Stop

Return:     UNSIGNED LONG

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

UARTCheckRX

Return:     BYTE
Params:     BYTE Channel    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

UARTInitialise

Return:     VOID
Params:     BYTE Channel    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

Ev_Initialise

Return:     UNSIGNED LONG
Vars:     STRING temp    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

TimeStamp

Return:     STRING
Vars:     BYTE DataIn    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

TxByte

Return:     VOID
Params:     BYTE DataByte    
Vars:     BYTE data     STRING ascii     BYTE rxbyte     UNSIGNED INT temp    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

RxByte

Return:     UNSIGNED INT
Vars:     BYTE data     STRING ascii     BYTE rxbyte     BYTE Index     BYTE Val    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

SPITransfer

Return:     BYTE
Params:     BYTE Channel     BYTE DataOut    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

ReadTime

Return:     BYTE
Params:     BYTE Unit    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

GetConsoleHandle

Return:     HANDLE

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

Ev_Property

Return:     UNSIGNED LONG
Vars:     STRING SVar    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

SkipTimeStamp

Return:     VOID
Params:     UNSIGNED LONG CurrentCount    
Vars:     BYTE Skip     STRING TimeString     BYTE Count    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

Ev_Renamed

Return:     UNSIGNED LONG
Vars:     STRING Name    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

SPIPrescaler

Return:     VOID
Params:     BYTE Channel     BYTE Prescaler    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

ReadDate

Return:     BYTE
Params:     BYTE Unit    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

UARTReceive

Return:     BYTE
Params:     BYTE Channel    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

SPIInitialise

Return:     VOID
Params:     BYTE Channel    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

UARTSend

Return:     VOID
Params:     BYTE Channel     BYTE Data    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

GenerateTimestamp

Return:     VOID
Params:     UNSIGNED LONG CurrentCount    
Vars:     BYTE Gen     STRING TimeString    

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

Ev_Start

Return:     UNSIGNED LONG

Your browser does not support the HTML5 canvas tag.

SPITransferTrans    /    InitialiseInjector    /    Ev_Timer    /    UARTBaud    /    RxByteCount    /    Ev_Stop    /    UARTCheckRX    /    UARTInitialise    /    Ev_Initialise    /    TimeStamp    /    TxByte    /    RxByte    /    SPITransfer    /    ReadTime    /    GetConsoleHandle    /    Ev_Property    /    SkipTimeStamp    /    Ev_Renamed    /    SPIPrescaler    /    ReadDate    /    UARTReceive    /    SPIInitialise    /    UARTSend    /    GenerateTimestamp    /    Ev_Start    /    Main

Main

Return:     VOID

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