Flowcode Project File Parser
Ben Rowland 2019 (C) Matrix TSL
Target Device
ARD.ATMEGA.Arduino Uno R3 PDIP
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
BOOL false
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
BOOL true
Globals
BYTE sector_address_length
UNSIGNED LONG folder_size
HANDLE file_handle
UNSIGNED INT fat_size
BYTE sim_card_connected
HANDLE ConsoleBufferHandle
UNSIGNED LONG file_pointer
UNSIGNED LONG root_start
BYTE fat_system
HANDLE ConsoleHandle
STRING sim_folder_path_4
UNSIGNED LONG file_size
STRING sim_folder_path_3
BYTE Pvt_Prescale
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
BYTE init
UNSIGNED INT CREATE_TIME
BYTE file_idx
BYTE card_buffer_l
BYTE Pvt_Channel
UNSIGNED INT root_sectors
UNSIGNED LONG eof_marker
STRING GCommand
UNSIGNED LONG file_sector
UNSIGNED LONG cluster
HANDLE card_position_h
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
MoveToNextFileSector
Return: BYTE
Params: BYTE Force_Next_Sector
WriteByteToBuffer
Return: VOID
Params: UNSIGNED INT Address
BYTE Data
AppendByteToFile
Return: BYTE
Params: BYTE Data
sim_delete_file
Return: BYTE
Params: STRING Filename
CloseFile
Return: VOID
ReadByteFromFile
Return: UNSIGNED INT
Vars: UNSIGNED INT Idx
BYTE Data_Byte
UNSIGNED INT Sector_Size
ReadByteFromIndex
Return: BYTE
Params: UNSIGNED LONG Address
DeleteFile
Return: BYTE
Params: STRING Filename
CreateFile
Return: BYTE
Params: STRING Filename
sim_open_file
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
sim_append_byte_to_file
Return: BYTE
Params: BYTE data
sim_move_to_next_file_sector
Return: BYTE
Params: BYTE force_next_sector
sim_open_folder
Return: BYTE
Params: STRING Folder_Name
OpenFolder
Return: BYTE
Params: STRING Folder_Name
ReadFileLength
Return: SIGNED INT
Vars: SIGNED LONG temp
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
sim_append_string_to_file
Return: BYTE
Params: STRING Str
sim_write_file_sector
Return: BYTE
sim_create_file
Return: BYTE
Params: STRING Filename
AppendStringToFile
Return: BYTE
Params: STRING Data_String
sim_read_byte_from_file
Return: UNSIGNED INT
Vars: UNSIGNED INT Idx
BYTE Data_Byte
UNSIGNED INT Sector_Size
sim_read_byte_from_index
Return: BYTE
Params: UNSIGNED LONG Address
ReadFileSize
Return: UNSIGNED LONG
Main
Return: VOID
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