Flowcode Project File Parser

Ben Rowland 2019 (C) Matrix TSL


Target Device

PIC.16F.16F1937

Constants

SIGNED INT FT800_CORERST     SIGNED INT BLACK     SIGNED LONG RED     SIGNED INT FT800_CLK48M     SIGNED INT BLUE     BOOL false     SIGNED INT MEM_READ     SIGNED INT MEM_WRITE     SIGNED LONG GREEN     SIGNED INT FT800_CLK36M     SIGNED INT FT800_PWRDOWN     SIGNED INT FT800_SLEEP     SIGNED INT FT800_ACTIVE     SIGNED INT FT800_STANDBY     SIGNED INT FT800_CLKEXT     SIGNED LONG WHITE     BOOL true    

Globals

UNSIGNED LONG PointY     UNSIGNED LONG PointX     UNSIGNED LONG ramDisplayList     UNSIGNED INT PointSize     UNSIGNED LONG Colour    

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

IncrementCommandOffset

Return:     UNSIGNED INT
Params:     UNSIGNED INT currentOffset     BYTE commandSize    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

Ev_Timer

Return:     UNSIGNED LONG
Params:     UNSIGNED LONG TimerID    
Vars:     HANDLE Handle    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

MemRead16

Return:     UNSIGNED INT
Params:     UNSIGNED LONG Address    
Vars:     BYTE low     BYTE med     BYTE high    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

Ev_Initialise

Return:     UNSIGNED LONG

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

MemRead8

Return:     BYTE
Params:     UNSIGNED LONG Address    
Vars:     BYTE low     BYTE med     BYTE high    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

MemRead32

Return:     UNSIGNED LONG
Params:     UNSIGNED LONG Address    
Vars:     BYTE low     BYTE med     BYTE high    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

Ev_Property

Return:     UNSIGNED LONG
Vars:     STRING tempstr    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

MemWrite16

Return:     VOID
Params:     UNSIGNED LONG Address     UNSIGNED INT Data    
Vars:     BYTE Low     BYTE Med     BYTE High    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

Ev_Renamed

Return:     UNSIGNED LONG
Vars:     STRING Name    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

MemWrite8

Return:     VOID
Params:     UNSIGNED LONG Address     BYTE Data    
Vars:     BYTE Low     BYTE Med     BYTE High    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

CommandWrite

Return:     VOID
Params:     BYTE Command    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

Loop

Return:     VOID
Vars:     UNSIGNED INT BuffRd     UNSIGNED INT BuffWr     UNSIGNED INT CmdOffset    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

Main

Return:     VOID

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

MemWrite32

Return:     VOID
Params:     UNSIGNED LONG Address     UNSIGNED LONG Data    
Vars:     BYTE Low     BYTE Med     BYTE High     BYTE DatH     BYTE DatH2    

Your browser does not support the HTML5 canvas tag.

IncrementCommandOffset    /    Ev_Timer    /    MemRead16    /    Ev_Initialise    /    MemRead8    /    MemRead32    /    Ev_Property    /    MemWrite16    /    Ev_Renamed    /    MemWrite8    /    CommandWrite    /    Loop    /    Main    /    MemWrite32    /    Initialise

Initialise

Return:     BYTE
Vars:     BYTE RetVal     BYTE duty    

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