Flowcode Project File Parser

Ben Rowland 2019 (C) Matrix TSL


Target Device

PIC.16F.16F877A

Constants

SIGNED INT CellYSz     SIGNED INT Tmr_Redraw     BOOL false     SIGNED INT CellXSz     SIGNED INT CellMax    

Globals

BYTE OldData     BYTE Data     BOOL TimerRunning     UNSIGNED INT ScrollX    

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Ev_Timer

Return:     UNSIGNED LONG
Params:     UNSIGNED LONG TimerID    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Clear

Return:     VOID
Vars:     BYTE CharCount     BYTE CharWidth     BYTE RowCount     SIGNED INT Temp     BYTE Column     BYTE Row     BYTE Idx    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

AddChar

Return:     VOID
Params:     SIGNED INT X     SIGNED INT Y     BYTE Char    
Vars:     BYTE CursorAddress    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Ev_Stop

Return:     UNSIGNED LONG

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Ev_Initialise

Return:     UNSIGNED LONG
Vars:     BYTE idx     SIGNED INT PHeight     SIGNED INT PWidth     BYTE Font     BYTE Calc     BYTE CharWidth    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

GetScrollX

Return:     UNSIGNED INT

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

ClearLine

Return:     VOID
Params:     BYTE Line    
Vars:     BYTE CharCount     BYTE CharWidth     BYTE RowCount     SIGNED INT Temp     BYTE Column     BYTE Idx     BYTE Offset    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Prv_Redraw

Return:     VOID
Vars:     STRING Str     BYTE Xpix     BYTE Ypix     BYTE idx    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

SetScrollX

Return:     VOID
Params:     BYTE Pos    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Ev_Property

Return:     UNSIGNED LONG
Vars:     SIGNED INT PWidth     SIGNED INT PHeight     BYTE CharWidth     BYTE Font     BYTE Calc    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

AddText

Return:     VOID
Params:     SIGNED INT X     SIGNED INT Y     STRING Text    
Vars:     BYTE Len     BYTE Idx     BYTE CursorAddress    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Prv_DisplaySettings

Return:     VOID
Vars:     BYTE Calc     BYTE CharWidth     BYTE Font     BYTE idx     SIGNED INT PHeight     SIGNED INT PWidth    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Prv_RedrawDelayed

Return:     VOID

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Ev_Start

Return:     UNSIGNED LONG
Vars:     BYTE idx     UNSIGNED LONG Colour    

Your browser does not support the HTML5 canvas tag.

Ev_Timer    /    Clear    /    AddChar    /    Ev_Stop    /    Ev_Initialise    /    GetScrollX    /    ClearLine    /    Prv_Redraw    /    SetScrollX    /    Ev_Property    /    AddText    /    Prv_DisplaySettings    /    Prv_RedrawDelayed    /    Ev_Start    /    Main

Main

Return:     VOID
Vars:     SIGNED LONG TestVar    

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