Flowcode Project File Parser
Ben Rowland 2019 (C) Matrix TSL
Target Device
PIC.16F.16F1937
Constants
SIGNED INT ERROR_SECT_BYTES
SIGNED INT ERROR_FILE_NOT_FOUND
SIGNED INT ACK_FILE_EMPTY
SIGNED INT ACK_END_OF_FILE
SIGNED INT ERROR_NO_CARD
SIGNED INT ERROR_ROOT_FULL
SIGNED INT CMD_APP
SIGNED INT ERROR_BAD_CLUSTER
SIGNED INT ACK_FILE_TYPE
SIGNED INT ERROR_TIMEOUT
SIGNED INT ERROR_INVALID_MBR
SIGNED INT ERROR_NO_ACK
SIGNED INT CMD_GO_IDLE_STATE
SIGNED INT ERROR_READING_MBR
SIGNED INT ERROR_READING_MBR2
SIGNED INT ERROR_FREE_SECTOR
SIGNED INT CMD_SEND_IF_COND
SIGNED INT ERROR_RESERVED
SIGNED INT ACK_OK
SIGNED INT CMD_READ_SINGLE_BLOCK
SIGNED INT CMD_SEND_OP_COND
SIGNED INT CMD_WRITE_SINGLE_BLOCK
SIGNED INT ERROR_NO_RESPONSE
SIGNED INT CMD_READ_OCR
Globals
BYTE sector_address_length
UNSIGNED LONG folder_size
HANDLE file_handle
UNSIGNED INT fat_size
HANDLE ConsoleBufferHandle
UNSIGNED LONG file_pointer
UNSIGNED LONG root_start
BYTE fat_system
HANDLE ConsoleHandle
UNSIGNED LONG file_sectoridx
STRING sim_folder_path_4
UNSIGNED LONG file_size
STRING sim_folder_path_3
UNSIGNED LONG not_address_marker
STRING sim_folder_path_2
STRING sim_folder_path_1
UNSIGNED INT fats_per_sector
STRING sim_folder_path_0
UNSIGNED INT CREATE_TIME
STRING LastFilename
BYTE file_idx
BYTE card_buffer_l
UNSIGNED INT root_sectors
UNSIGNED LONG eof_marker
UNSIGNED LONG file_sector
UNSIGNED LONG cluster
BYTE card_type
BYTE card_buffer_h
BYTE SimInitPrinted
BYTE sdhc_flag
UNSIGNED INT CREATE_DATE
UNSIGNED LONG data_start
UNSIGNED INT read_address
BYTE name_ext
BYTE sects_per_clust
UNSIGNED LONG file_address
UNSIGNED LONG fat_start
BYTE file_entry
UNSIGNED LONG folder_start
sim_read_file_sector
Return: BYTE
Vars: UNSIGNED LONG count
STRING temp_str
UNSIGNED INT count2
BYTE Index
BYTE buf
BYTE InnerIndex
ReadStringFromFile
Return: STRING
Params: UNSIGNED INT NumBytes
BYTE EndChar
Vars: UNSIGNED INT Idx
BYTE Data_Byte
UNSIGNED INT Sector_Size
ReadFloatArrayFromFile
Return: UNSIGNED INT
Params: FLOAT Data
UNSIGNED INT Length
BOOL MSBFirst
Vars: UNSIGNED INT Ret
WriteByteToBuffer
Return: VOID
Params: UNSIGNED INT Address
BYTE Data
MoveToNextFileSector
Return: BYTE
Params: BYTE Force_Next_Sector
AppendFloatArrayToFile
Return: BYTE
Params: FLOAT Data
UNSIGNED INT Length
Vars: UNSIGNED INT Idx
BYTE Temp
ReadINTArrayFromFile
Return: UNSIGNED INT
Params: UNSIGNED INT Data
UNSIGNED INT Length
BOOL MSBFirst
Vars: UNSIGNED INT Ret
sim_delete_file
Return: BYTE
Params: STRING Filename
Vars: STRING Filepath
BYTE i
UNSIGNED INT Len
BYTE char
AppendByteToFile
Return: BYTE
Params: BYTE Data
Vars: BYTE idx
SIGNED INT length
BYTE offset
UNSIGNED INT idx16
BYTE str_len
BYTE j
Ev_Stop
Return: UNSIGNED LONG
Vars: BYTE idx
Pvt_Copy_CAL_Props
Return: VOID
Params: HANDLE CAL_type
STRING Property
Vars: BYTE Idx
BYTE Len
STRING PropStr
STRING sRef
SIGNED LONG Ref
ReadFileSector
Return: BYTE
CloseFile
Return: VOID
ReadByteFromFile
Return: UNSIGNED INT
Vars: UNSIGNED INT Idx
BYTE Data_Byte
UNSIGNED INT Sector_Size
DeleteFile
Return: BYTE
Params: STRING Filename
Vars: STRING name_comp
UNSIGNED LONG fat_address
BYTE i
UNSIGNED INT idx
BYTE j
UNSIGNED LONG temp_cluster
ReadByteFromIndex
Return: BYTE
Params: UNSIGNED LONG Address
Vars: UNSIGNED LONG SectorAddress
UNSIGNED INT ByteAddress
BYTE BailOut
Ev_Initialise
Return: UNSIGNED LONG
Vars: STRING temp_str
AppendLongArrayToFile
Return: BYTE
Params: UNSIGNED LONG Data
UNSIGNED INT Length
BOOL MSBFirst
Vars: UNSIGNED INT Idx
BYTE Temp
Send_Command
Return: BYTE
Params: BYTE Command
UNSIGNED LONG Address
Vars: BYTE i
BYTE j
BYTE buf
ReadStringFromScan
Return: STRING
Vars: BYTE idx
Ev_ChipChange
Return: UNSIGNED LONG
Params: STRING Target
Vars: STRING temp_str
CreateFile
Return: BYTE
Params: STRING Filename
Vars: BYTE i
BYTE j
UNSIGNED INT idx
ScanCurrentFolder
Return: BYTE
Params: UNSIGNED INT Current_Idx
BYTE Scan_Type
Vars: BYTE i
UNSIGNED INT idx
BYTE j
SendBuffer
Return: BYTE
Params: UNSIGNED LONG Address
Vars: UNSIGNED INT idx
sim_open_file
Return: BYTE
Params: STRING Filename
Vars: BYTE i
STRING Filepath
UNSIGNED INT count
STRING temp_str
BYTE char
UNSIGNED INT Len
ReadByteFromScan
Return: BYTE
Params: BYTE idx
GetBuffer
Return: BYTE
Params: UNSIGNED LONG Address
Vars: UNSIGNED INT count
sim_append_byte_to_file
Return: BYTE
Params: BYTE data
Vars: BYTE i
STRING str
Init_Card
Return: BYTE
Vars: BYTE sd_version
SIGNED INT idx
ReadTime
Return: BYTE
Params: BYTE Unit
Add_Sector_To_File
Return: VOID
Vars: UNSIGNED LONG idx_fat
UNSIGNED LONG fat_address
UNSIGNED LONG fat_pointer
BYTE j
Ev_Property
Return: UNSIGNED LONG
Vars: STRING tempstr
sim_open_folder
Return: BYTE
Params: STRING Folder_Name
Vars: STRING FilePath
BYTE i
BYTE Char
UNSIGNED INT Len
sim_move_to_next_file_sector
Return: BYTE
Params: BYTE force_next_sector
sim_LoadHighSpeedPrescaleOptions
Return: VOID
Vars: STRING DeviceFamily
STRING PrescaleStr
Read_Next_File_Sector
Return: BYTE
Vars: UNSIGNED LONG temp_cluster
UNSIGNED LONG old_cluster
UNSIGNED LONG fat_address
BYTE j
OpenFolder
Return: BYTE
Params: STRING Folder_Name
Vars: BYTE i
STRING name_comp
UNSIGNED INT idx
BYTE j
ReadByteFromBuffer
Return: BYTE
Params: UNSIGNED INT Address
ReadFileLength
Return: SIGNED INT
Vars: SIGNED LONG temp
Ev_Renamed
Return: UNSIGNED LONG
Vars: STRING Name
AppendINTArrayToFile
Return: BYTE
Params: UNSIGNED INT Data
UNSIGNED INT Length
BOOL MSBFirst
Vars: UNSIGNED INT Idx
BYTE Temp
sim_append_string_to_file
Return: BYTE
Params: STRING Str
Vars: BYTE i
Ev_GetVarSize
Return: UNSIGNED LONG
Params: STRING VarName
Elements
Vars: BYTE comp
OpenFile
Return: BYTE
Params: STRING Filename
Vars: BYTE i
STRING name_comp
UNSIGNED INT idx_fat
UNSIGNED INT idx
UNSIGNED LONG fat_pointer
UNSIGNED LONG fat_address
BYTE j
UNSIGNED INT temp
WriteFileSector
Return: BYTE
Vars: UNSIGNED INT idx
UNSIGNED LONG temp
BYTE j
sim_write_file_sector
Return: BYTE
Vars: UNSIGNED LONG count
SetFileIndex
Return: VOID
Params: BYTE File_Index
sim_update_file_sector
Return: VOID
Vars: UNSIGNED LONG count
sim_create_file
Return: BYTE
Params: STRING Filename
Vars: STRING Filepath
HANDLE FileHandle
BYTE i
UNSIGNED INT Len
BYTE char
AppendStringToFile
Return: BYTE
Params: STRING Data_String
Vars: BYTE idx
SIGNED INT length
BYTE offset
UNSIGNED INT idx16
BYTE str_len
BYTE j
Ev_AddVar
Return: UNSIGNED LONG
Params: STRING VarName
STRING ExpandName
STRING Expansion
Vars: BYTE data
STRING temp
BYTE length
UNSIGNED INT NewData
sim_read_byte_from_file
Return: UNSIGNED INT
Vars: UNSIGNED INT Idx
BYTE Data_Byte
UNSIGNED INT Sector_Size
ReadDate
Return: BYTE
Params: BYTE Unit
sim_read_byte_from_index
Return: BYTE
Params: UNSIGNED LONG Address
Vars: BYTE buffer
ReadLongArrayFromFile
Return: UNSIGNED INT
Params: UNSIGNED LONG Data
UNSIGNED INT Length
BOOL MSBFirst
Vars: UNSIGNED INT Ret
Clear_Buffer
Return: VOID
Vars: UNSIGNED INT count
Format_File_String
Return: VOID
Params: STRING Filename
Vars: BYTE i
BYTE j
STRING filename_copy
ReadFileSize
Return: UNSIGNED LONG
UpdateFileSector
Return: VOID
CheckAutoConfig
Return: VOID
Vars: STRING str
Ev_Resize
Return: UNSIGNED LONG
Params: HANDLE Component
HANDLE PrevPos
BOOL Final
sim_read_string_from_file
Return: STRING
Params: UNSIGNED INT NumBytes
BYTE EndChar
Vars: UNSIGNED INT Idx
BYTE Data_Byte
UNSIGNED INT Sector_Size
SetTimeAndDate
Return: VOID
Params: UNSIGNED INT Time
UNSIGNED INT Date
sim_scan_current_folder
Return: BYTE
Params: UNSIGNED INT Current_Idx
BYTE Scan_Type
Ev_Start
Return: UNSIGNED LONG
AppendByteArrayToFile
Return: BYTE
Params: BYTE Data
UNSIGNED INT Length
Vars: UNSIGNED INT Idx
ReadByteArrayFromFile
Return: UNSIGNED INT
Params: BYTE Data
UNSIGNED INT Length
Vars: UNSIGNED INT Idx
UNSIGNED INT Ret
Main
Return: VOID
sim_init_fat
Return: BYTE
Initialise
Return: BYTE
Vars: BYTE retval
BYTE i
BYTE num_fats
UNSIGNED INT bytes_per_sect
UNSIGNED INT reserved_sectors
UNSIGNED LONG partition_start
UNSIGNED LONG root_size
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