Flowcode Project File Parser

Ben Rowland 2019 (C) Matrix TSL


Target Device

PIC.16F.16F1937

Constants

BOOL false     BOOL true    

Globals

BYTE Servo_Enabled     BYTE AutoMoving     BYTE Servo_Idx     BYTE Clocks_Per_Inst     BYTE Servo_Position     SIGNED INT Servo_Trim     BYTE Servo_Required     BYTE AutoMoveSpeed    

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

Ev_Timer

Return:     UNSIGNED LONG
Params:     UNSIGNED LONG TimerID    
Vars:     HANDLE Handle     HANDLE Pivot     BYTE Axis     SIGNED INT Trim     BYTE Idx     SIGNED INT calc    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

DisableServo

Return:     VOID
Params:     BYTE Channel    
Vars:     BYTE Dummy    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

Ev_Stop

Return:     UNSIGNED LONG

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

Ev_AddInterrupts

Return:     UNSIGNED LONG
Params:     STRING HandlerCode    
Vars:     STRING temp    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

SetPosition

Return:     VOID
Params:     BYTE Channel     BYTE Position    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

Ev_ChipChange

Return:     UNSIGNED LONG
Params:     STRING Target    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

Ev_Property

Return:     UNSIGNED LONG
Vars:     STRING str     UNSIGNED LONG ClockSpeed     BYTE MasterDivider     UNSIGNED LONG Calc     FLOAT CalcR     STRING product     STRING family    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

MoveToPosition_Sim

Return:     BYTE
Params:     BYTE Channel     BYTE Position    
Vars:     HANDLE Handle     HANDLE Pivot     BYTE Axis     SIGNED INT Trim    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

EnableServo_Sim

Return:     VOID
Params:     BYTE Channel    
Vars:     HANDLE Handle     BYTE Axis     HANDLE Pivot     SIGNED INT Trim    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

SetPosition_Sim

Return:     VOID
Params:     BYTE Channel     BYTE Position    
Vars:     HANDLE Handle     BYTE Axis     HANDLE Pivot     SIGNED INT Trim    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

MoveToPosition

Return:     BYTE
Params:     BYTE Channel     BYTE Position    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

SetTrim

Return:     VOID
Params:     BYTE Channel     BYTE Trim    
Vars:     SIGNED INT tcalc    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

IsAutoMoving

Return:     BYTE

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

DisableServo_Sim

Return:     VOID
Params:     BYTE Channel    
Vars:     BYTE Dummy    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

AutoMoveToPosition

Return:     VOID
Params:     BYTE Channel     BYTE Position    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

EnableServo

Return:     VOID
Params:     BYTE Channel    
Vars:     BYTE Dummy    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

ISR

Return:     VOID
Vars:     UNSIGNED LONG ServoCal     SIGNED INT Trim     SIGNED INT calc    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

AutoMoveToPosition_Sim

Return:     VOID
Params:     BYTE Channel     BYTE Position    
Vars:     HANDLE Handle     HANDLE Pivot     BYTE Axis     SIGNED INT Trim    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

Ev_Start

Return:     UNSIGNED LONG

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

SetAutoMoveSpeed

Return:     VOID
Params:     BYTE Speed    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

Main

Return:     VOID

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    DisableServo    /    Ev_Stop    /    Ev_AddInterrupts    /    SetPosition    /    Ev_ChipChange    /    Ev_Property    /    MoveToPosition_Sim    /    EnableServo_Sim    /    SetPosition_Sim    /    MoveToPosition    /    SetTrim    /    IsAutoMoving    /    DisableServo_Sim    /    AutoMoveToPosition    /    EnableServo    /    ISR    /    AutoMoveToPosition_Sim    /    Ev_Start    /    SetAutoMoveSpeed    /    Main    /    Initialise

Initialise

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