mirror of
https://github.com/azure-rtos/filex.git
synced 2025-01-18 01:22:52 +08:00
6.1 Release
This commit is contained in:
parent
215f8bf21d
commit
56de97dfaf
@ -25,4 +25,4 @@ Renesas:
|
|||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
More coming soon. Please check back frequently for updates.
|
More coming soon. Please check back frequently for updates.
|
@ -101,8 +101,9 @@ Professional support plans (https://azure.microsoft.com/en-us/support/options/)
|
|||||||
The following are references to additional Azure RTOS and Azure IoT in general:
|
The following are references to additional Azure RTOS and Azure IoT in general:
|
||||||
| | |
|
| | |
|
||||||
|---|---|
|
|---|---|
|
||||||
| Azure RTOS Website: | https://azure.microsoft.com/en-us/services/rtos/ |
|
| Azure RTOS Documenation and Guides: | https://docs.microsoft.com/azure/rtos |
|
||||||
|
| Azure RTOS Website: | https://azure.microsoft.com/services/rtos/ |
|
||||||
| Azure RTOS Sales Questions: | https://azure-rtos.ms-iot-contact.com/ |
|
| Azure RTOS Sales Questions: | https://azure-rtos.ms-iot-contact.com/ |
|
||||||
| Microsoft Q/A for Azure IoT: | https://docs.microsoft.com/en-us/answers/products/azure?product=iot |
|
| For technical questions check out Microsoft Q/A for Azure IoT: | https://aka.ms/QnA/azure-rtos |
|
||||||
| Internet of Things Show: | https://aka.ms/iotshow |
|
| Internet of Things Show for latest announcements and online training: | https://aka.ms/iotshow |
|
||||||
| IoT Tech Community: | https://aka.ms/iottechcommunity |
|
| IoT Tech Community: | https://aka.ms/community/azure-rtos |
|
@ -26,7 +26,7 @@
|
|||||||
/* APPLICATION INTERFACE DEFINITION RELEASE */
|
/* APPLICATION INTERFACE DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_api.h PORTABLE C */
|
/* fx_api.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -43,6 +43,12 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* updated product constants, */
|
||||||
|
/* and added conditionals to */
|
||||||
|
/* disable few declarations */
|
||||||
|
/* for code size reduction, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
@ -84,10 +90,13 @@ extern "C" {
|
|||||||
/* Define the major/minor version information that can be used by the application
|
/* Define the major/minor version information that can be used by the application
|
||||||
and the FileX source as well. */
|
and the FileX source as well. */
|
||||||
|
|
||||||
#define EL_PRODUCT_FILEX
|
#define AZURE_RTOS_FILEX
|
||||||
#define FILEX_MAJOR_VERSION 6
|
#define FILEX_MAJOR_VERSION 6
|
||||||
#define FILEX_MINOR_VERSION 0
|
#define FILEX_MINOR_VERSION 1
|
||||||
|
#define FILEX_PATCH_VERSION 0
|
||||||
|
|
||||||
|
/* Define the following symbols for backward compatibility */
|
||||||
|
#define EL_PRODUCT_FILEX
|
||||||
|
|
||||||
/* Override the interrupt protection provided in FileX port files to simply use ThreadX protection,
|
/* Override the interrupt protection provided in FileX port files to simply use ThreadX protection,
|
||||||
which is often in-line assembly. */
|
which is often in-line assembly. */
|
||||||
@ -821,6 +830,10 @@ typedef struct FX_MEDIA_STRUCT
|
|||||||
UCHAR *fx_media_memory_buffer;
|
UCHAR *fx_media_memory_buffer;
|
||||||
ULONG fx_media_memory_size;
|
ULONG fx_media_memory_size;
|
||||||
|
|
||||||
|
#ifdef FX_DISABLE_CACHE
|
||||||
|
ULONG64 fx_media_memory_buffer_sector;
|
||||||
|
#else
|
||||||
|
|
||||||
/* Define the flag that indicates whether the logical cache utilizes
|
/* Define the flag that indicates whether the logical cache utilizes
|
||||||
a hash function or is a linear search. If set, the logical cache
|
a hash function or is a linear search. If set, the logical cache
|
||||||
is accessed via a hash function on the requested sector. */
|
is accessed via a hash function on the requested sector. */
|
||||||
@ -847,6 +860,7 @@ typedef struct FX_MEDIA_STRUCT
|
|||||||
/* Define the outstanding dirty sector counter. This is used to optimize
|
/* Define the outstanding dirty sector counter. This is used to optimize
|
||||||
the searching of sectors to flush to the media. */
|
the searching of sectors to flush to the media. */
|
||||||
ULONG fx_media_sector_cache_dirty_count;
|
ULONG fx_media_sector_cache_dirty_count;
|
||||||
|
#endif /* FX_DISABLE_CACHE */
|
||||||
|
|
||||||
/* Define the basic information about the associated media. */
|
/* Define the basic information about the associated media. */
|
||||||
UINT fx_media_bytes_per_sector;
|
UINT fx_media_bytes_per_sector;
|
||||||
@ -1069,6 +1083,7 @@ typedef struct FX_MEDIA_STRUCT
|
|||||||
CHAR fx_media_rename_buffer[FX_MAXIMUM_PATH];
|
CHAR fx_media_rename_buffer[FX_MAXIMUM_PATH];
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_CACHE
|
||||||
/* Define the sector cache control structures for this media. */
|
/* Define the sector cache control structures for this media. */
|
||||||
struct FX_CACHED_SECTOR_STRUCT
|
struct FX_CACHED_SECTOR_STRUCT
|
||||||
fx_media_sector_cache[FX_MAX_SECTOR_CACHE];
|
fx_media_sector_cache[FX_MAX_SECTOR_CACHE];
|
||||||
@ -1076,6 +1091,7 @@ typedef struct FX_MEDIA_STRUCT
|
|||||||
/* Define the sector cache hash mask so that the hash algorithm can be used with
|
/* Define the sector cache hash mask so that the hash algorithm can be used with
|
||||||
any power of 2 number of cache sectors. */
|
any power of 2 number of cache sectors. */
|
||||||
ULONG fx_media_sector_cache_hash_mask;
|
ULONG fx_media_sector_cache_hash_mask;
|
||||||
|
#endif /* FX_DISABLE_CACHE */
|
||||||
|
|
||||||
/* Define a variable to disable burst cache. This is used by the underlying
|
/* Define a variable to disable burst cache. This is used by the underlying
|
||||||
driver. */
|
driver. */
|
||||||
@ -1215,6 +1231,13 @@ typedef FX_FILE *FX_FILE_PTR;
|
|||||||
|
|
||||||
#ifndef FX_SOURCE_CODE
|
#ifndef FX_SOURCE_CODE
|
||||||
|
|
||||||
|
#ifdef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
|
#define fx_file_seek(f, b) fx_file_extended_seek(f, (ULONG64)b)
|
||||||
|
#define fx_file_allocate(f, s) fx_file_extended_allocate(f, (ULONG64)s);
|
||||||
|
#define fx_file_truncate(f, s) fx_file_extended_truncate(f, (ULONG64)s);
|
||||||
|
#define fx_file_relative_seek(f, b, sf) fx_file_extended_relative_seek(f, (ULONG64)b, sf);
|
||||||
|
#define fx_file_truncate_release(f, s) fx_file_extended_truncate_release(f, (ULONG64)s);
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
|
|
||||||
/* Determine if error checking is desired. If so, map API functions
|
/* Determine if error checking is desired. If so, map API functions
|
||||||
to the appropriate error checking front-ends. Otherwise, map API
|
to the appropriate error checking front-ends. Otherwise, map API
|
||||||
@ -1249,7 +1272,9 @@ typedef FX_FILE *FX_FILE_PTR;
|
|||||||
#define fx_directory_short_name_get _fx_directory_short_name_get
|
#define fx_directory_short_name_get _fx_directory_short_name_get
|
||||||
#define fx_directory_short_name_get_extended _fx_directory_short_name_get_extended
|
#define fx_directory_short_name_get_extended _fx_directory_short_name_get_extended
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
#define fx_file_allocate _fx_file_allocate
|
#define fx_file_allocate _fx_file_allocate
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
#define fx_file_attributes_read _fx_file_attributes_read
|
#define fx_file_attributes_read _fx_file_attributes_read
|
||||||
#define fx_file_attributes_set _fx_file_attributes_set
|
#define fx_file_attributes_set _fx_file_attributes_set
|
||||||
#define fx_file_best_effort_allocate _fx_file_best_effort_allocate
|
#define fx_file_best_effort_allocate _fx_file_best_effort_allocate
|
||||||
@ -1259,11 +1284,15 @@ typedef FX_FILE *FX_FILE_PTR;
|
|||||||
#define fx_file_delete _fx_file_delete
|
#define fx_file_delete _fx_file_delete
|
||||||
#define fx_file_open _fx_file_open
|
#define fx_file_open _fx_file_open
|
||||||
#define fx_file_read _fx_file_read
|
#define fx_file_read _fx_file_read
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
#define fx_file_relative_seek _fx_file_relative_seek
|
#define fx_file_relative_seek _fx_file_relative_seek
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
#define fx_file_rename _fx_file_rename
|
#define fx_file_rename _fx_file_rename
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
#define fx_file_seek _fx_file_seek
|
#define fx_file_seek _fx_file_seek
|
||||||
#define fx_file_truncate _fx_file_truncate
|
#define fx_file_truncate _fx_file_truncate
|
||||||
#define fx_file_truncate_release _fx_file_truncate_release
|
#define fx_file_truncate_release _fx_file_truncate_release
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
#define fx_file_write _fx_file_write
|
#define fx_file_write _fx_file_write
|
||||||
#define fx_file_write_notify_set _fx_file_write_notify_set
|
#define fx_file_write_notify_set _fx_file_write_notify_set
|
||||||
#define fx_file_extended_allocate _fx_file_extended_allocate
|
#define fx_file_extended_allocate _fx_file_extended_allocate
|
||||||
@ -1342,7 +1371,9 @@ typedef FX_FILE *FX_FILE_PTR;
|
|||||||
#define fx_directory_short_name_get _fxe_directory_short_name_get
|
#define fx_directory_short_name_get _fxe_directory_short_name_get
|
||||||
#define fx_directory_short_name_get_extended _fxe_directory_short_name_get_extended
|
#define fx_directory_short_name_get_extended _fxe_directory_short_name_get_extended
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
#define fx_file_allocate _fxe_file_allocate
|
#define fx_file_allocate _fxe_file_allocate
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
#define fx_file_attributes_read _fxe_file_attributes_read
|
#define fx_file_attributes_read _fxe_file_attributes_read
|
||||||
#define fx_file_attributes_set _fxe_file_attributes_set
|
#define fx_file_attributes_set _fxe_file_attributes_set
|
||||||
#define fx_file_best_effort_allocate _fxe_file_best_effort_allocate
|
#define fx_file_best_effort_allocate _fxe_file_best_effort_allocate
|
||||||
@ -1352,11 +1383,15 @@ typedef FX_FILE *FX_FILE_PTR;
|
|||||||
#define fx_file_delete _fxe_file_delete
|
#define fx_file_delete _fxe_file_delete
|
||||||
#define fx_file_open(m, f, n, t) _fxe_file_open(m, f, n, t, sizeof(FX_FILE))
|
#define fx_file_open(m, f, n, t) _fxe_file_open(m, f, n, t, sizeof(FX_FILE))
|
||||||
#define fx_file_read _fxe_file_read
|
#define fx_file_read _fxe_file_read
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
#define fx_file_relative_seek _fxe_file_relative_seek
|
#define fx_file_relative_seek _fxe_file_relative_seek
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
#define fx_file_rename _fxe_file_rename
|
#define fx_file_rename _fxe_file_rename
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
#define fx_file_seek _fxe_file_seek
|
#define fx_file_seek _fxe_file_seek
|
||||||
#define fx_file_truncate _fxe_file_truncate
|
#define fx_file_truncate _fxe_file_truncate
|
||||||
#define fx_file_truncate_release _fxe_file_truncate_release
|
#define fx_file_truncate_release _fxe_file_truncate_release
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
#define fx_file_write _fxe_file_write
|
#define fx_file_write _fxe_file_write
|
||||||
#define fx_file_write_notify_set _fxe_file_write_notify_set
|
#define fx_file_write_notify_set _fxe_file_write_notify_set
|
||||||
#define fx_file_extended_allocate _fxe_file_extended_allocate
|
#define fx_file_extended_allocate _fxe_file_extended_allocate
|
||||||
@ -1442,7 +1477,9 @@ UINT fx_directory_rename(FX_MEDIA *media_ptr, CHAR *old_directory_name, CHAR *ne
|
|||||||
UINT fx_directory_short_name_get(FX_MEDIA *media_ptr, CHAR *long_file_name, CHAR *short_file_name);
|
UINT fx_directory_short_name_get(FX_MEDIA *media_ptr, CHAR *long_file_name, CHAR *short_file_name);
|
||||||
UINT fx_directory_short_name_get_extended(FX_MEDIA* media_ptr, CHAR* long_file_name, CHAR* short_file_name, UINT short_file_name_length);
|
UINT fx_directory_short_name_get_extended(FX_MEDIA* media_ptr, CHAR* long_file_name, CHAR* short_file_name, UINT short_file_name_length);
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT fx_file_allocate(FX_FILE *file_ptr, ULONG size);
|
UINT fx_file_allocate(FX_FILE *file_ptr, ULONG size);
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION*/
|
||||||
UINT fx_file_attributes_read(FX_MEDIA *media_ptr, CHAR *file_name, UINT *attributes_ptr);
|
UINT fx_file_attributes_read(FX_MEDIA *media_ptr, CHAR *file_name, UINT *attributes_ptr);
|
||||||
UINT fx_file_attributes_set(FX_MEDIA *media_ptr, CHAR *file_name, UINT attributes);
|
UINT fx_file_attributes_set(FX_MEDIA *media_ptr, CHAR *file_name, UINT attributes);
|
||||||
UINT fx_file_best_effort_allocate(FX_FILE *file_ptr, ULONG size, ULONG *actual_size_allocated);
|
UINT fx_file_best_effort_allocate(FX_FILE *file_ptr, ULONG size, ULONG *actual_size_allocated);
|
||||||
@ -1459,11 +1496,15 @@ UINT _fxe_file_open(FX_MEDIA *media_ptr, FX_FILE *file_ptr, CHAR *file_name,
|
|||||||
UINT open_type, UINT file_control_block_size);
|
UINT open_type, UINT file_control_block_size);
|
||||||
#endif
|
#endif
|
||||||
UINT fx_file_read(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG request_size, ULONG *actual_size);
|
UINT fx_file_read(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG request_size, ULONG *actual_size);
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT fx_file_relative_seek(FX_FILE *file_ptr, ULONG byte_offset, UINT seek_from);
|
UINT fx_file_relative_seek(FX_FILE *file_ptr, ULONG byte_offset, UINT seek_from);
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
UINT fx_file_rename(FX_MEDIA *media_ptr, CHAR *old_file_name, CHAR *new_file_name);
|
UINT fx_file_rename(FX_MEDIA *media_ptr, CHAR *old_file_name, CHAR *new_file_name);
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT fx_file_seek(FX_FILE *file_ptr, ULONG byte_offset);
|
UINT fx_file_seek(FX_FILE *file_ptr, ULONG byte_offset);
|
||||||
UINT fx_file_truncate(FX_FILE *file_ptr, ULONG size);
|
UINT fx_file_truncate(FX_FILE *file_ptr, ULONG size);
|
||||||
UINT fx_file_truncate_release(FX_FILE *file_ptr, ULONG size);
|
UINT fx_file_truncate_release(FX_FILE *file_ptr, ULONG size);
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
UINT fx_file_write(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG size);
|
UINT fx_file_write(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG size);
|
||||||
UINT fx_file_write_notify_set(FX_FILE *file_ptr, VOID (*file_write_notify)(FX_FILE *));
|
UINT fx_file_write_notify_set(FX_FILE *file_ptr, VOID (*file_write_notify)(FX_FILE *));
|
||||||
UINT fx_file_extended_allocate(FX_FILE *file_ptr, ULONG64 size);
|
UINT fx_file_extended_allocate(FX_FILE *file_ptr, ULONG64 size);
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* COMPONENT DEFINITION RELEASE */
|
/* COMPONENT DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_directory.h PORTABLE C */
|
/* fx_directory.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -42,6 +42,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* COMPONENT DEFINITION RELEASE */
|
/* COMPONENT DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_directory_exFAT.h PORTABLE C */
|
/* fx_directory_exFAT.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -41,6 +41,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* COMPONENT DEFINITION RELEASE */
|
/* COMPONENT DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_fault_tolerant.h PORTABLE C */
|
/* fx_fault_tolerant.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -42,6 +42,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* COMPONENT DEFINITION RELEASE */
|
/* COMPONENT DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_file.h PORTABLE C */
|
/* fx_file.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -42,6 +42,10 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* added conditional to */
|
||||||
|
/* disable one line function, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
@ -51,7 +55,11 @@
|
|||||||
|
|
||||||
/* Define the external File component function prototypes. */
|
/* Define the external File component function prototypes. */
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT _fx_file_allocate(FX_FILE *file_ptr, ULONG size);
|
UINT _fx_file_allocate(FX_FILE *file_ptr, ULONG size);
|
||||||
|
#else
|
||||||
|
#define _fx_file_allocate(f, s) _fx_file_extended_allocate(f, (ULONG64)s);
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
UINT _fx_file_attributes_read(FX_MEDIA *media_ptr, CHAR *file_name, UINT *attributes_ptr);
|
UINT _fx_file_attributes_read(FX_MEDIA *media_ptr, CHAR *file_name, UINT *attributes_ptr);
|
||||||
UINT _fx_file_attributes_set(FX_MEDIA *media_ptr, CHAR *file_name, UINT attributes);
|
UINT _fx_file_attributes_set(FX_MEDIA *media_ptr, CHAR *file_name, UINT attributes);
|
||||||
UINT _fx_file_best_effort_allocate(FX_FILE *file_ptr, ULONG size, ULONG *actual_size_allocated);
|
UINT _fx_file_best_effort_allocate(FX_FILE *file_ptr, ULONG size, ULONG *actual_size_allocated);
|
||||||
@ -63,11 +71,21 @@ UINT _fx_file_delete(FX_MEDIA *media_ptr, CHAR *file_name);
|
|||||||
UINT _fx_file_open(FX_MEDIA *media_ptr, FX_FILE *file_ptr, CHAR *file_name,
|
UINT _fx_file_open(FX_MEDIA *media_ptr, FX_FILE *file_ptr, CHAR *file_name,
|
||||||
UINT open_type);
|
UINT open_type);
|
||||||
UINT _fx_file_read(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG request_size, ULONG *actual_size);
|
UINT _fx_file_read(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG request_size, ULONG *actual_size);
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT _fx_file_relative_seek(FX_FILE *file_ptr, ULONG byte_offset, UINT seek_from);
|
UINT _fx_file_relative_seek(FX_FILE *file_ptr, ULONG byte_offset, UINT seek_from);
|
||||||
|
#else
|
||||||
|
#define _fx_file_relative_seek(f, b, sf) _fx_file_extended_relative_seek(f, (ULONG64)b, sf);
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
UINT _fx_file_rename(FX_MEDIA *media_ptr, CHAR *old_file_name, CHAR *new_file_name);
|
UINT _fx_file_rename(FX_MEDIA *media_ptr, CHAR *old_file_name, CHAR *new_file_name);
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT _fx_file_seek(FX_FILE *file_ptr, ULONG byte_offset);
|
UINT _fx_file_seek(FX_FILE *file_ptr, ULONG byte_offset);
|
||||||
UINT _fx_file_truncate(FX_FILE *file_ptr, ULONG size);
|
UINT _fx_file_truncate(FX_FILE *file_ptr, ULONG size);
|
||||||
UINT _fx_file_truncate_release(FX_FILE *file_ptr, ULONG size);
|
UINT _fx_file_truncate_release(FX_FILE *file_ptr, ULONG size);
|
||||||
|
#else
|
||||||
|
#define _fx_file_seek(f, b) _fx_file_extended_seek(f, (ULONG64)b)
|
||||||
|
#define _fx_file_truncate(f, s) _fx_file_extended_truncate(f, (ULONG64)s);
|
||||||
|
#define _fx_file_truncate_release(f, s) _fx_file_extended_truncate_release(f, (ULONG64)s);
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
UINT _fx_file_write(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG size);
|
UINT _fx_file_write(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG size);
|
||||||
UINT _fx_file_write_notify_set(FX_FILE *file_ptr, VOID (*file_write_notify)(FX_FILE *));
|
UINT _fx_file_write_notify_set(FX_FILE *file_ptr, VOID (*file_write_notify)(FX_FILE *));
|
||||||
UINT _fx_file_extended_allocate(FX_FILE *file_ptr, ULONG64 size);
|
UINT _fx_file_extended_allocate(FX_FILE *file_ptr, ULONG64 size);
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* COMPONENT DEFINITION RELEASE */
|
/* COMPONENT DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_media.h PORTABLE C */
|
/* fx_media.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -42,6 +42,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* COMPONENT DEFINITION RELEASE */
|
/* COMPONENT DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_system.h PORTABLE C */
|
/* fx_system.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -42,6 +42,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* COMPONENT DEFINITION RELEASE */
|
/* COMPONENT DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_unicode.h PORTABLE C */
|
/* fx_unicode.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -42,6 +42,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* PORT SPECIFIC C INFORMATION RELEASE */
|
/* PORT SPECIFIC C INFORMATION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_user.h PORTABLE C */
|
/* fx_user.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
@ -45,6 +45,11 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* added product constants */
|
||||||
|
/* to enable code */
|
||||||
|
/* size optimization, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
@ -183,6 +188,53 @@
|
|||||||
|
|
||||||
/*#define FX_FAULT_TOLERANT_BOOT_INDEX 116 */
|
/*#define FX_FAULT_TOLERANT_BOOT_INDEX 116 */
|
||||||
|
|
||||||
|
/* Below FX_DISABLE_XXX macros can be used for code size optimization required for memory
|
||||||
|
critical aplications */
|
||||||
|
|
||||||
|
/* Defined, error checking is disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DISABLE_ERROR_CHECKING */
|
||||||
|
|
||||||
|
|
||||||
|
/* Defined, cache is disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DISABLE_CACHE */
|
||||||
|
|
||||||
|
|
||||||
|
/* Defined, file close is disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DISABLE_FILE_CLOSE */
|
||||||
|
|
||||||
|
|
||||||
|
/* Defined, fast open is disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DISABLE_FAST_OPEN */
|
||||||
|
|
||||||
|
|
||||||
|
/* Defined, force memory operations are disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DISABLE_FORCE_MEMORY_OPERATION */
|
||||||
|
|
||||||
|
|
||||||
|
/* Defined, build options is disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DISABLE_BUILD_OPTIONS */
|
||||||
|
|
||||||
|
|
||||||
|
/* Defined, one line function is disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
|
|
||||||
|
|
||||||
|
/* Defined, FAT entry refresh is disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DIABLE_FAT_ENTRY_REFRESH */
|
||||||
|
|
||||||
|
|
||||||
|
/* Defined, consecutive detect is disabled. */
|
||||||
|
|
||||||
|
/*#define FX_DISABLE_CONSECUTIVE_DETECT */
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
/* COMPONENT DEFINITION RELEASE */
|
/* COMPONENT DEFINITION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* fx_utility.h PORTABLE C */
|
/* fx_utility.h PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -42,6 +42,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_attributes_read PORTABLE C */
|
/* _fx_directory_attributes_read PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -74,6 +74,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_attributes_read(FX_MEDIA *media_ptr, CHAR *directory_name, UINT *attributes_ptr)
|
UINT _fx_directory_attributes_read(FX_MEDIA *media_ptr, CHAR *directory_name, UINT *attributes_ptr)
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_attributes_set PORTABLE C */
|
/* _fx_directory_attributes_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -82,6 +82,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_attributes_set(FX_MEDIA *media_ptr, CHAR *directory_name, UINT attributes)
|
UINT _fx_directory_attributes_set(FX_MEDIA *media_ptr, CHAR *directory_name, UINT attributes)
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_create PORTABLE C */
|
/* _fx_directory_create PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -94,6 +94,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_create(FX_MEDIA *media_ptr, CHAR *directory_name)
|
UINT _fx_directory_create(FX_MEDIA *media_ptr, CHAR *directory_name)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_default_get PORTABLE C */
|
/* _fx_directory_default_get PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -67,6 +67,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_default_get(FX_MEDIA *media_ptr, CHAR **return_path_name)
|
UINT _fx_directory_default_get(FX_MEDIA *media_ptr, CHAR **return_path_name)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_default_get_copy PORTABLE C */
|
/* _fx_directory_default_get_copy PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -68,6 +68,9 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_default_get_copy(FX_MEDIA *media_ptr, CHAR *return_path_name_buffer, UINT return_path_name_buffer_size)
|
UINT _fx_directory_default_get_copy(FX_MEDIA *media_ptr, CHAR *return_path_name_buffer, UINT return_path_name_buffer_size)
|
||||||
@ -95,7 +98,7 @@ UINT path_name_length_with_null_terminator;
|
|||||||
{
|
{
|
||||||
|
|
||||||
/* Copy the path name into the user's buffer. */
|
/* Copy the path name into the user's buffer. */
|
||||||
_fx_utility_memory_copy((UCHAR *) return_path_name, (UCHAR *) return_path_name_buffer, path_name_length_with_null_terminator);
|
_fx_utility_memory_copy((UCHAR *) return_path_name, (UCHAR *) return_path_name_buffer, path_name_length_with_null_terminator); /* Use case of memcpy is verified. */
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -44,7 +44,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_default_set PORTABLE C */
|
/* _fx_directory_default_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -80,6 +80,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_default_set(FX_MEDIA *media_ptr, CHAR *new_path_name)
|
UINT _fx_directory_default_set(FX_MEDIA *media_ptr, CHAR *new_path_name)
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_delete PORTABLE C */
|
/* _fx_directory_delete PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -92,6 +92,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_delete(FX_MEDIA *media_ptr, CHAR *directory_name)
|
UINT _fx_directory_delete(FX_MEDIA *media_ptr, CHAR *directory_name)
|
||||||
|
@ -42,7 +42,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_entry_read PORTABLE C */
|
/* _fx_directory_entry_read PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -83,6 +83,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
#ifdef FX_ENABLE_EXFAT
|
#ifdef FX_ENABLE_EXFAT
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_entry_write PORTABLE C */
|
/* _fx_directory_entry_write PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -76,6 +76,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_entry_write(FX_MEDIA *media_ptr, FX_DIR_ENTRY *entry_ptr)
|
UINT _fx_directory_entry_write(FX_MEDIA *media_ptr, FX_DIR_ENTRY *entry_ptr)
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_exFAT_entry_read PORTABLE C */
|
/* _fx_directory_exFAT_entry_read PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -86,6 +86,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_exFAT_entry_read(FX_MEDIA *media_ptr, FX_DIR_ENTRY *source_dir,
|
UINT _fx_directory_exFAT_entry_read(FX_MEDIA *media_ptr, FX_DIR_ENTRY *source_dir,
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_exFAT_entry_write PORTABLE C */
|
/* _fx_directory_exFAT_entry_write PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -81,6 +81,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_exFAT_entry_write(FX_MEDIA *media_ptr, FX_DIR_ENTRY *entry_ptr, UCHAR update_level)
|
UINT _fx_directory_exFAT_entry_write(FX_MEDIA *media_ptr, FX_DIR_ENTRY *entry_ptr, UCHAR update_level)
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_free_search PORTABLE C */
|
/* _fx_directory_free_search PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -80,6 +80,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_exFAT_free_search(FX_MEDIA *media_ptr, FX_DIR_ENTRY *directory_ptr, FX_DIR_ENTRY *entry_ptr)
|
UINT _fx_directory_exFAT_free_search(FX_MEDIA *media_ptr, FX_DIR_ENTRY *directory_ptr, FX_DIR_ENTRY *entry_ptr)
|
||||||
|
@ -42,7 +42,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_exFAT_unicode_entry_write PORTABLE C */
|
/* _fx_directory_exFAT_unicode_entry_write PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -88,6 +88,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_exFAT_unicode_entry_write(FX_MEDIA *media_ptr, FX_DIR_ENTRY *entry_ptr,
|
UINT _fx_directory_exFAT_unicode_entry_write(FX_MEDIA *media_ptr, FX_DIR_ENTRY *entry_ptr,
|
||||||
|
@ -40,7 +40,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_first_entry_find PORTABLE C */
|
/* _fx_directory_first_entry_find PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -73,6 +73,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_first_entry_find(FX_MEDIA *media_ptr, CHAR *directory_name)
|
UINT _fx_directory_first_entry_find(FX_MEDIA *media_ptr, CHAR *directory_name)
|
||||||
|
@ -39,7 +39,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_first_full_entry_find PORTABLE C */
|
/* _fx_directory_first_full_entry_find PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -80,6 +80,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_first_full_entry_find(FX_MEDIA *media_ptr,
|
UINT _fx_directory_first_full_entry_find(FX_MEDIA *media_ptr,
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_free_search PORTABLE C */
|
/* _fx_directory_free_search PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -80,6 +80,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_free_search(FX_MEDIA *media_ptr, FX_DIR_ENTRY *directory_ptr, FX_DIR_ENTRY *entry_ptr)
|
UINT _fx_directory_free_search(FX_MEDIA *media_ptr, FX_DIR_ENTRY *directory_ptr, FX_DIR_ENTRY *entry_ptr)
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_information_get PORTABLE C */
|
/* _fx_directory_information_get PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -80,6 +80,9 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_information_get(FX_MEDIA *media_ptr, CHAR *directory_name,
|
UINT _fx_directory_information_get(FX_MEDIA *media_ptr, CHAR *directory_name,
|
||||||
@ -149,7 +152,7 @@ FX_FILE *search_ptr;
|
|||||||
|
|
||||||
/* The file has been opened for writing by a previous call. Use the information used by
|
/* The file has been opened for writing by a previous call. Use the information used by
|
||||||
the writer instead of what is currently on the media. */
|
the writer instead of what is currently on the media. */
|
||||||
_fx_utility_memory_copy((UCHAR *)&search_ptr -> fx_file_dir_entry, (UCHAR *)&dir_entry, sizeof(FX_DIR_ENTRY));
|
_fx_utility_memory_copy((UCHAR *)&search_ptr -> fx_file_dir_entry, (UCHAR *)&dir_entry, sizeof(FX_DIR_ENTRY)); /* Use case of memcpy is verified. */
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_local_path_clear PORTABLE C */
|
/* _fx_directory_local_path_clear PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -73,6 +73,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_local_path_clear(FX_MEDIA *media_ptr)
|
UINT _fx_directory_local_path_clear(FX_MEDIA *media_ptr)
|
||||||
|
@ -40,7 +40,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_local_path_get PORTABLE C */
|
/* _fx_directory_local_path_get PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_local_path_get(FX_MEDIA *media_ptr, CHAR **return_path_name)
|
UINT _fx_directory_local_path_get(FX_MEDIA *media_ptr, CHAR **return_path_name)
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_local_path_get_copy PORTABLE C */
|
/* _fx_directory_local_path_get_copy PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -70,6 +70,9 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_local_path_get_copy(FX_MEDIA *media_ptr, CHAR *return_path_name_buffer, UINT return_path_name_buffer_size)
|
UINT _fx_directory_local_path_get_copy(FX_MEDIA *media_ptr, CHAR *return_path_name_buffer, UINT return_path_name_buffer_size)
|
||||||
@ -97,7 +100,7 @@ UINT path_name_length_with_null_terminator;
|
|||||||
{
|
{
|
||||||
|
|
||||||
/* Copy the path name into the user's buffer. */
|
/* Copy the path name into the user's buffer. */
|
||||||
_fx_utility_memory_copy((UCHAR *) return_path_name, (UCHAR *) return_path_name_buffer, path_name_length_with_null_terminator);
|
_fx_utility_memory_copy((UCHAR *) return_path_name, (UCHAR *) return_path_name_buffer, path_name_length_with_null_terminator); /* Use case of memcpy is verified. */
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -40,7 +40,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_local_path_restore PORTABLE C */
|
/* _fx_directory_local_path_restore PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_local_path_restore(FX_MEDIA *media_ptr, FX_LOCAL_PATH *local_path_ptr)
|
UINT _fx_directory_local_path_restore(FX_MEDIA *media_ptr, FX_LOCAL_PATH *local_path_ptr)
|
||||||
|
@ -40,7 +40,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_local_path_set PORTABLE C */
|
/* _fx_directory_local_path_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -76,6 +76,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_local_path_set(FX_MEDIA *media_ptr, FX_LOCAL_PATH *local_path_ptr, CHAR *new_path_name)
|
UINT _fx_directory_local_path_set(FX_MEDIA *media_ptr, FX_LOCAL_PATH *local_path_ptr, CHAR *new_path_name)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_long_name_get PORTABLE C */
|
/* _fx_directory_long_name_get PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_long_name_get(FX_MEDIA *media_ptr, CHAR *short_file_name, CHAR *long_file_name)
|
UINT _fx_directory_long_name_get(FX_MEDIA *media_ptr, CHAR *short_file_name, CHAR *long_file_name)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_long_name_get_extended PORTABLE C */
|
/* _fx_directory_long_name_get_extended PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -69,6 +69,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_long_name_get_extended(FX_MEDIA *media_ptr, CHAR *short_file_name, CHAR *long_file_name, UINT long_file_name_buffer_length)
|
UINT _fx_directory_long_name_get_extended(FX_MEDIA *media_ptr, CHAR *short_file_name, CHAR *long_file_name, UINT long_file_name_buffer_length)
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_name_extract PORTABLE C */
|
/* _fx_directory_name_extract PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -70,6 +70,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
CHAR *_fx_directory_name_extract(CHAR *source_ptr, CHAR *dest_ptr)
|
CHAR *_fx_directory_name_extract(CHAR *source_ptr, CHAR *dest_ptr)
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_name_test PORTABLE C */
|
/* _fx_directory_name_test PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_name_test(FX_MEDIA *media_ptr, CHAR *directory_name)
|
UINT _fx_directory_name_test(FX_MEDIA *media_ptr, CHAR *directory_name)
|
||||||
|
@ -43,7 +43,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_next_entry_find PORTABLE C */
|
/* _fx_directory_next_entry_find PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -80,6 +80,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_next_entry_find(FX_MEDIA *media_ptr, CHAR *directory_name)
|
UINT _fx_directory_next_entry_find(FX_MEDIA *media_ptr, CHAR *directory_name)
|
||||||
|
@ -43,7 +43,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_next_full_entry_find PORTABLE C */
|
/* _fx_directory_next_full_entry_find PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -89,6 +89,8 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_next_full_entry_find(FX_MEDIA *media_ptr,
|
UINT _fx_directory_next_full_entry_find(FX_MEDIA *media_ptr,
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_rename PORTABLE C */
|
/* _fx_directory_rename PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -88,6 +88,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_rename(FX_MEDIA *media_ptr, CHAR *old_directory_name, CHAR *new_directory_name)
|
UINT _fx_directory_rename(FX_MEDIA *media_ptr, CHAR *old_directory_name, CHAR *new_directory_name)
|
||||||
|
@ -43,7 +43,7 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_search PORTABLE C */
|
/* _fx_directory_search PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -86,6 +86,10 @@ FX_LOCAL_PATH_SETUP
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* added conditional to */
|
||||||
|
/* disable media search cache, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_search(FX_MEDIA *media_ptr, CHAR *name_ptr, FX_DIR_ENTRY *entry_ptr,
|
UINT _fx_directory_search(FX_MEDIA *media_ptr, CHAR *name_ptr, FX_DIR_ENTRY *entry_ptr,
|
||||||
@ -95,7 +99,9 @@ UINT _fx_directory_search(FX_MEDIA *media_ptr, CHAR *name_ptr, FX_DIR_ENTRY *en
|
|||||||
ULONG i, n;
|
ULONG i, n;
|
||||||
UINT found;
|
UINT found;
|
||||||
UINT status;
|
UINT status;
|
||||||
|
#ifndef FX_MEDIA_DISABLE_SEARCH_CACHE
|
||||||
UINT v, j;
|
UINT v, j;
|
||||||
|
#endif /* FX_MEDIA_DISABLE_SEARCH_CACHE */
|
||||||
ULONG cluster, next_cluster = 0;
|
ULONG cluster, next_cluster = 0;
|
||||||
ULONG64 directory_size;
|
ULONG64 directory_size;
|
||||||
CHAR *dir_name_ptr;
|
CHAR *dir_name_ptr;
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_short_name_get PORTABLE C */
|
/* _fx_directory_short_name_get PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_short_name_get(FX_MEDIA *media_ptr, CHAR *long_file_name, CHAR *short_file_name)
|
UINT _fx_directory_short_name_get(FX_MEDIA *media_ptr, CHAR *long_file_name, CHAR *short_file_name)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_directory_short_name_get_extended PORTABLE C */
|
/* _fx_directory_short_name_get_extended PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -69,6 +69,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_directory_short_name_get_extended(FX_MEDIA *media_ptr, CHAR *long_file_name, CHAR *short_file_name, UINT short_file_name_length)
|
UINT _fx_directory_short_name_get_extended(FX_MEDIA *media_ptr, CHAR *long_file_name, CHAR *short_file_name, UINT short_file_name_length)
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_add_FAT_log PORTABLE C */
|
/* _fx_fault_tolerant_add_FAT_log PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -67,6 +67,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_add_FAT_log(FX_MEDIA *media_ptr, ULONG cluster, ULONG value)
|
UINT _fx_fault_tolerant_add_FAT_log(FX_MEDIA *media_ptr, ULONG cluster, ULONG value)
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_add_bitmap_log PORTABLE C */
|
/* _fx_fault_tolerant_add_bitmap_log PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -68,6 +68,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_add_bitmap_log(FX_MEDIA *media_ptr, ULONG cluster, ULONG value)
|
UINT _fx_fault_tolerant_add_bitmap_log(FX_MEDIA *media_ptr, ULONG cluster, ULONG value)
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_add_checksum_log PORTABLE C */
|
/* _fx_fault_tolerant_add_checksum_log PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -71,6 +71,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_add_checksum_log(FX_MEDIA *media_ptr, ULONG64 logical_sector, ULONG offset, USHORT checksum)
|
UINT _fx_fault_tolerant_add_checksum_log(FX_MEDIA *media_ptr, ULONG64 logical_sector, ULONG offset, USHORT checksum)
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_add_dir_log PORTABLE C */
|
/* _fx_fault_tolerant_add_dir_log PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,9 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_add_dir_log(FX_MEDIA *media_ptr, ULONG64 logical_sector, ULONG offset,
|
UINT _fx_fault_tolerant_add_dir_log(FX_MEDIA *media_ptr, ULONG64 logical_sector, ULONG offset,
|
||||||
@ -115,7 +118,7 @@ FX_FAULT_TOLERANT_DIR_LOG *dir_log;
|
|||||||
_fx_utility_64_unsigned_write((UCHAR *)&dir_log -> fx_fault_tolerant_dir_log_sector, logical_sector);
|
_fx_utility_64_unsigned_write((UCHAR *)&dir_log -> fx_fault_tolerant_dir_log_sector, logical_sector);
|
||||||
_fx_utility_32_unsigned_write((UCHAR *)&dir_log -> fx_fault_tolerant_dir_log_offset, offset);
|
_fx_utility_32_unsigned_write((UCHAR *)&dir_log -> fx_fault_tolerant_dir_log_offset, offset);
|
||||||
|
|
||||||
memcpy(media_ptr -> fx_media_fault_tolerant_memory_buffer +
|
memcpy(media_ptr -> fx_media_fault_tolerant_memory_buffer + /* Use case of memcpy is verified. */
|
||||||
media_ptr -> fx_media_fault_tolerant_file_size + FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE,
|
media_ptr -> fx_media_fault_tolerant_file_size + FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE,
|
||||||
data, data_size);
|
data, data_size);
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_apply_logs PORTABLE C */
|
/* _fx_fault_tolerant_apply_logs PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -78,6 +78,9 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_apply_logs(FX_MEDIA *media_ptr)
|
UINT _fx_fault_tolerant_apply_logs(FX_MEDIA *media_ptr)
|
||||||
@ -212,8 +215,13 @@ ULONG tail_cluster;
|
|||||||
|
|
||||||
copy_size = log_len - FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE;
|
copy_size = log_len - FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE;
|
||||||
|
|
||||||
|
if ((copy_offset + copy_size) > media_ptr -> fx_media_memory_size)
|
||||||
|
{
|
||||||
|
return(FX_FILE_CORRUPT);
|
||||||
|
}
|
||||||
|
|
||||||
/* Copy data into destination sector. */
|
/* Copy data into destination sector. */
|
||||||
memcpy(media_ptr -> fx_media_memory_buffer + copy_offset,
|
memcpy(media_ptr -> fx_media_memory_buffer + copy_offset, /* Use case of memcpy is verified. */
|
||||||
current_ptr + FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE, copy_size);
|
current_ptr + FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE, copy_size);
|
||||||
|
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_calculate_checksum PORTABLE C */
|
/* _fx_fault_tolerant_calculate_checksum PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -70,6 +70,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
USHORT _fx_fault_tolerant_calculate_checksum(UCHAR *data, UINT len)
|
USHORT _fx_fault_tolerant_calculate_checksum(UCHAR *data, UINT len)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_cleanup_FAT_chain PORTABLE C */
|
/* _fx_fault_tolerant_cleanup_FAT_chain PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -83,6 +83,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_cleanup_FAT_chain(FX_MEDIA *media_ptr, UINT operation)
|
UINT _fx_fault_tolerant_cleanup_FAT_chain(FX_MEDIA *media_ptr, UINT operation)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_create_log_file PORTABLE C */
|
/* _fx_fault_tolerant_create_log_file PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -76,6 +76,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_create_log_file(FX_MEDIA *media_ptr)
|
UINT _fx_fault_tolerant_create_log_file(FX_MEDIA *media_ptr)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_enable PORTABLE C */
|
/* _fx_fault_tolerant_enable PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -84,6 +84,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_enable(FX_MEDIA *media_ptr, VOID *memory_buffer, UINT memory_size)
|
UINT _fx_fault_tolerant_enable(FX_MEDIA *media_ptr, VOID *memory_buffer, UINT memory_size)
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_read_FAT PORTABLE C */
|
/* _fx_fault_tolerant_read_FAT PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -73,6 +73,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_read_FAT(FX_MEDIA *media_ptr, ULONG cluster, ULONG *value, ULONG log_type)
|
UINT _fx_fault_tolerant_read_FAT(FX_MEDIA *media_ptr, ULONG cluster, ULONG *value, ULONG log_type)
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_read_directory_sector PORTABLE C */
|
/* _fx_fault_tolerant_read_directory_sector PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,9 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_read_directory_sector(FX_MEDIA *media_ptr, ULONG64 logical_sector,
|
UINT _fx_fault_tolerant_read_directory_sector(FX_MEDIA *media_ptr, ULONG64 logical_sector,
|
||||||
@ -149,8 +152,13 @@ FX_FAULT_TOLERANT_DIR_LOG *dir_log;
|
|||||||
|
|
||||||
copy_size = log_len - FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE;
|
copy_size = log_len - FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE;
|
||||||
|
|
||||||
|
if ((copy_offset + copy_size) > media_ptr -> fx_media_bytes_per_sector)
|
||||||
|
{
|
||||||
|
return(FX_FILE_CORRUPT);
|
||||||
|
}
|
||||||
|
|
||||||
/* Copy data into destination sector. */
|
/* Copy data into destination sector. */
|
||||||
memcpy(current_buffer_ptr + copy_offset,
|
memcpy(current_buffer_ptr + copy_offset, /* Use case of memcpy is verified. */
|
||||||
current_ptr + FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE, copy_size);
|
current_ptr + FX_FAULT_TOLERANT_DIR_LOG_ENTRY_SIZE, copy_size);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_read_log_file PORTABLE C */
|
/* _fx_fault_tolerant_read_log_file PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -64,6 +64,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_read_log_file(FX_MEDIA *media_ptr)
|
UINT _fx_fault_tolerant_read_log_file(FX_MEDIA *media_ptr)
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_recover PORTABLE C */
|
/* _fx_fault_tolerant_recover PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -87,6 +87,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_recover(FX_MEDIA *media_ptr)
|
UINT _fx_fault_tolerant_recover(FX_MEDIA *media_ptr)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_reset_log_file PORTABLE C */
|
/* _fx_fault_tolerant_reset_log_file PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -84,6 +84,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_set_FAT_chain PORTABLE C */
|
/* _fx_fault_tolerant_set_FAT_chain PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -77,6 +77,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_set_FAT_chain(FX_MEDIA *media_ptr, UINT use_bitmap, ULONG insertion_front,
|
UINT _fx_fault_tolerant_set_FAT_chain(FX_MEDIA *media_ptr, UINT use_bitmap, ULONG insertion_front,
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_transaction_end PORTABLE C */
|
/* _fx_fault_tolerant_transaction_end PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -89,6 +89,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_transaction_end(FX_MEDIA *media_ptr)
|
UINT _fx_fault_tolerant_transaction_end(FX_MEDIA *media_ptr)
|
||||||
|
@ -31,7 +31,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_transaction_fail PORTABLE C */
|
/* _fx_fault_tolerant_transaction_fail PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -76,6 +76,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_transaction_fail(FX_MEDIA *media_ptr)
|
UINT _fx_fault_tolerant_transaction_fail(FX_MEDIA *media_ptr)
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_transaction_start PORTABLE C */
|
/* _fx_fault_tolerant_transaction_start PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -78,6 +78,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_transaction_start(FX_MEDIA *media_ptr)
|
UINT _fx_fault_tolerant_transaction_start(FX_MEDIA *media_ptr)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_fault_tolerant_write_log_file PORTABLE C */
|
/* _fx_fault_tolerant_write_log_file PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -71,6 +71,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_fault_tolerant_write_log_file(FX_MEDIA *media_ptr, ULONG relative_sector)
|
UINT _fx_fault_tolerant_write_log_file(FX_MEDIA *media_ptr, ULONG relative_sector)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_allocate PORTABLE C */
|
/* _fx_file_allocate PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -69,11 +69,16 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* Added conditional to */
|
||||||
|
/* disable one line function, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT _fx_file_allocate(FX_FILE *file_ptr, ULONG size)
|
UINT _fx_file_allocate(FX_FILE *file_ptr, ULONG size)
|
||||||
{
|
{
|
||||||
|
|
||||||
return(_fx_file_extended_allocate(file_ptr, (ULONG64)size));
|
return(_fx_file_extended_allocate(file_ptr, (ULONG64)size));
|
||||||
}
|
}
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_attributes_read PORTABLE C */
|
/* _fx_file_attributes_read PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -73,6 +73,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_attributes_read(FX_MEDIA *media_ptr, CHAR *file_name, UINT *attributes_ptr)
|
UINT _fx_file_attributes_read(FX_MEDIA *media_ptr, CHAR *file_name, UINT *attributes_ptr)
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_attributes_set PORTABLE C */
|
/* _fx_file_attributes_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -82,6 +82,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_attributes_set(FX_MEDIA *media_ptr, CHAR *file_name, UINT attributes)
|
UINT _fx_file_attributes_set(FX_MEDIA *media_ptr, CHAR *file_name, UINT attributes)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_best_effort_allocate PORTABLE C */
|
/* _fx_file_best_effort_allocate PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_best_effort_allocate(FX_FILE *file_ptr, ULONG size, ULONG *actual_size_allocated)
|
UINT _fx_file_best_effort_allocate(FX_FILE *file_ptr, ULONG size, ULONG *actual_size_allocated)
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_close PORTABLE C */
|
/* _fx_file_close PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -69,6 +69,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_close(FX_FILE *file_ptr)
|
UINT _fx_file_close(FX_FILE *file_ptr)
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_create PORTABLE C */
|
/* _fx_file_create PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -86,6 +86,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_create(FX_MEDIA *media_ptr, CHAR *file_name)
|
UINT _fx_file_create(FX_MEDIA *media_ptr, CHAR *file_name)
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_date_time_set PORTABLE C */
|
/* _fx_file_date_time_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -75,6 +75,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_date_time_set(FX_MEDIA *media_ptr, CHAR *file_name,
|
UINT _fx_file_date_time_set(FX_MEDIA *media_ptr, CHAR *file_name,
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_delete PORTABLE C */
|
/* _fx_file_delete PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -87,6 +87,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_delete(FX_MEDIA *media_ptr, CHAR *file_name)
|
UINT _fx_file_delete(FX_MEDIA *media_ptr, CHAR *file_name)
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_extended_allocate PORTABLE C */
|
/* _fx_file_extended_allocate PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -90,6 +90,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_extended_allocate(FX_FILE *file_ptr, ULONG64 size)
|
UINT _fx_file_extended_allocate(FX_FILE *file_ptr, ULONG64 size)
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_extended_best_effort_allocate PORTABLE C */
|
/* _fx_file_extended_best_effort_allocate PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -91,6 +91,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_extended_best_effort_allocate(FX_FILE *file_ptr, ULONG64 size, ULONG64 *actual_size_allocated)
|
UINT _fx_file_extended_best_effort_allocate(FX_FILE *file_ptr, ULONG64 size, ULONG64 *actual_size_allocated)
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_extended_relative_seek PORTABLE C */
|
/* _fx_file_extended_relative_seek PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -77,6 +77,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_extended_relative_seek(FX_FILE *file_ptr, ULONG64 byte_offset, UINT seek_from)
|
UINT _fx_file_extended_relative_seek(FX_FILE *file_ptr, ULONG64 byte_offset, UINT seek_from)
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_extended_seek PORTABLE C */
|
/* _fx_file_extended_seek PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -71,6 +71,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_extended_seek(FX_FILE *file_ptr, ULONG64 byte_offset)
|
UINT _fx_file_extended_seek(FX_FILE *file_ptr, ULONG64 byte_offset)
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_extended_truncate PORTABLE C */
|
/* _fx_file_extended_truncate PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -79,6 +79,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_extended_truncate(FX_FILE *file_ptr, ULONG64 size)
|
UINT _fx_file_extended_truncate(FX_FILE *file_ptr, ULONG64 size)
|
||||||
|
@ -40,7 +40,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_extended_truncate_release PORTABLE C */
|
/* _fx_file_extended_truncate_release PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -86,6 +86,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_extended_truncate_release(FX_FILE *file_ptr, ULONG64 size)
|
UINT _fx_file_extended_truncate_release(FX_FILE *file_ptr, ULONG64 size)
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_open PORTABLE C */
|
/* _fx_file_open PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -75,12 +75,20 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* added conditional to */
|
||||||
|
/* disable fast open and */
|
||||||
|
/* consecutive detect, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_open(FX_MEDIA *media_ptr, FX_FILE *file_ptr, CHAR *file_name, UINT open_type)
|
UINT _fx_file_open(FX_MEDIA *media_ptr, FX_FILE *file_ptr, CHAR *file_name, UINT open_type)
|
||||||
{
|
{
|
||||||
|
|
||||||
UINT status, leading_consecutive;
|
UINT status;
|
||||||
|
#ifndef FX_DISABLE_CONSECUTIVE_DETECT
|
||||||
|
UINT leading_consecutive;
|
||||||
|
#endif /* FX_DISABLE_CONSECUTIVE_DETECT */
|
||||||
ULONG cluster;
|
ULONG cluster;
|
||||||
ULONG contents = 0;
|
ULONG contents = 0;
|
||||||
ULONG open_count;
|
ULONG open_count;
|
||||||
@ -92,7 +100,9 @@ ULONG cluster_count;
|
|||||||
ULONG64 bytes_available;
|
ULONG64 bytes_available;
|
||||||
ULONG64 bytes_remaining;
|
ULONG64 bytes_remaining;
|
||||||
ULONG fat_last;
|
ULONG fat_last;
|
||||||
|
#ifndef FX_DISABLE_FAST_OPEN
|
||||||
UINT fast_open;
|
UINT fast_open;
|
||||||
|
#endif /* FX_DISABLE_FAST_OPEN */
|
||||||
UCHAR not_a_file_attr;
|
UCHAR not_a_file_attr;
|
||||||
|
|
||||||
|
|
||||||
@ -134,6 +144,7 @@ UCHAR not_a_file_attr;
|
|||||||
not_a_file_attr = FX_DIRECTORY | FX_VOLUME;
|
not_a_file_attr = FX_DIRECTORY | FX_VOLUME;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_FAST_OPEN
|
||||||
/* Determine if a fast open is selected. */
|
/* Determine if a fast open is selected. */
|
||||||
if (open_type == FX_OPEN_FOR_READ_FAST)
|
if (open_type == FX_OPEN_FOR_READ_FAST)
|
||||||
{
|
{
|
||||||
@ -150,6 +161,7 @@ UCHAR not_a_file_attr;
|
|||||||
/* A fast open is not selected, set the flag to false. */
|
/* A fast open is not selected, set the flag to false. */
|
||||||
fast_open = FX_FALSE;
|
fast_open = FX_FALSE;
|
||||||
}
|
}
|
||||||
|
#endif /* FX_DISABLE_FAST_OPEN */
|
||||||
|
|
||||||
/* If trace is enabled, register this object. */
|
/* If trace is enabled, register this object. */
|
||||||
FX_TRACE_OBJECT_REGISTER(FX_TRACE_OBJECT_TYPE_FILE, file_ptr, file_name, 0, 0)
|
FX_TRACE_OBJECT_REGISTER(FX_TRACE_OBJECT_TYPE_FILE, file_ptr, file_name, 0, 0)
|
||||||
@ -308,8 +320,12 @@ UCHAR not_a_file_attr;
|
|||||||
|
|
||||||
last_cluster = 0;
|
last_cluster = 0;
|
||||||
cluster_count = 0;
|
cluster_count = 0;
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_CONSECUTIVE_DETECT
|
||||||
leading_consecutive = 1;
|
leading_consecutive = 1;
|
||||||
|
#endif /* FX_DISABLE_CONSECUTIVE_DETECT */
|
||||||
file_ptr -> fx_file_consecutive_cluster = 1;
|
file_ptr -> fx_file_consecutive_cluster = 1;
|
||||||
|
#ifndef FX_DISABLE_FAST_OPEN
|
||||||
|
|
||||||
/* Determine if the file is being open for reading with the fast option. */
|
/* Determine if the file is being open for reading with the fast option. */
|
||||||
if (fast_open)
|
if (fast_open)
|
||||||
@ -329,6 +345,7 @@ UCHAR not_a_file_attr;
|
|||||||
#endif /* FX_ENABLE_EXFAT */
|
#endif /* FX_ENABLE_EXFAT */
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
#endif /* FX_DISABLE_FAST_OPEN */
|
||||||
{
|
{
|
||||||
#ifdef FX_ENABLE_EXFAT
|
#ifdef FX_ENABLE_EXFAT
|
||||||
|
|
||||||
@ -405,6 +422,8 @@ UCHAR not_a_file_attr;
|
|||||||
return(FX_FAT_READ_ERROR);
|
return(FX_FAT_READ_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_CONSECUTIVE_DETECT
|
||||||
|
|
||||||
/* Check if present and next clusters are consecutive */
|
/* Check if present and next clusters are consecutive */
|
||||||
if (cluster + 1 == contents)
|
if (cluster + 1 == contents)
|
||||||
{
|
{
|
||||||
@ -423,6 +442,7 @@ UCHAR not_a_file_attr;
|
|||||||
/* The clusters are no longer consecutive, clear the consecutive flag. */
|
/* The clusters are no longer consecutive, clear the consecutive flag. */
|
||||||
leading_consecutive = 0;
|
leading_consecutive = 0;
|
||||||
}
|
}
|
||||||
|
#endif /* FX_DISABLE_CONSECUTIVE_DETECT */
|
||||||
|
|
||||||
/* Save the last valid cluster. */
|
/* Save the last valid cluster. */
|
||||||
last_cluster = cluster;
|
last_cluster = cluster;
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_read PORTABLE C */
|
/* _fx_file_read PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -76,6 +76,9 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_read(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG request_size, ULONG *actual_size)
|
UINT _fx_file_read(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG request_size, ULONG *actual_size)
|
||||||
@ -193,7 +196,7 @@ ULONG trace_timestamp;
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Actually perform the memory copy. */
|
/* Actually perform the memory copy. */
|
||||||
_fx_utility_memory_copy(((UCHAR *)media_ptr -> fx_media_memory_buffer) +
|
_fx_utility_memory_copy(((UCHAR *)media_ptr -> fx_media_memory_buffer) + /* Use case of memcpy is verified. */
|
||||||
file_ptr -> fx_file_current_logical_offset,
|
file_ptr -> fx_file_current_logical_offset,
|
||||||
destination_ptr, copy_bytes);
|
destination_ptr, copy_bytes);
|
||||||
|
|
||||||
@ -291,7 +294,7 @@ ULONG trace_timestamp;
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Actually perform the memory copy. */
|
/* Actually perform the memory copy. */
|
||||||
_fx_utility_memory_copy((UCHAR *)media_ptr -> fx_media_memory_buffer, destination_ptr, media_ptr -> fx_media_bytes_per_sector);
|
_fx_utility_memory_copy((UCHAR *)media_ptr -> fx_media_memory_buffer, destination_ptr, media_ptr -> fx_media_bytes_per_sector); /* Use case of memcpy is verified. */
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_relative_seek PORTABLE C */
|
/* _fx_file_relative_seek PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -74,11 +74,17 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* Added conditional to */
|
||||||
|
/* disable one line function, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT _fx_file_relative_seek(FX_FILE *file_ptr, ULONG byte_offset, UINT seek_from)
|
UINT _fx_file_relative_seek(FX_FILE *file_ptr, ULONG byte_offset, UINT seek_from)
|
||||||
{
|
{
|
||||||
|
|
||||||
return(_fx_file_extended_relative_seek(file_ptr, (ULONG64)byte_offset, seek_from));
|
return(_fx_file_extended_relative_seek(file_ptr, (ULONG64)byte_offset, seek_from));
|
||||||
}
|
}
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_rename PORTABLE C */
|
/* _fx_file_rename PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -87,6 +87,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_rename(FX_MEDIA *media_ptr, CHAR *old_file_name, CHAR *new_file_name)
|
UINT _fx_file_rename(FX_MEDIA *media_ptr, CHAR *old_file_name, CHAR *new_file_name)
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_seek PORTABLE C */
|
/* _fx_file_seek PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -68,11 +68,16 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* Added conditional to */
|
||||||
|
/* disable one line function, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT _fx_file_seek(FX_FILE *file_ptr, ULONG byte_offset)
|
UINT _fx_file_seek(FX_FILE *file_ptr, ULONG byte_offset)
|
||||||
{
|
{
|
||||||
|
|
||||||
return(_fx_file_extended_seek(file_ptr, (ULONG64) byte_offset));
|
return(_fx_file_extended_seek(file_ptr, (ULONG64) byte_offset));
|
||||||
}
|
}
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_truncate PORTABLE C */
|
/* _fx_file_truncate PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -68,11 +68,16 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* Added conditional to */
|
||||||
|
/* disable one line function, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT _fx_file_truncate(FX_FILE *file_ptr, ULONG size)
|
UINT _fx_file_truncate(FX_FILE *file_ptr, ULONG size)
|
||||||
{
|
{
|
||||||
|
|
||||||
return(_fx_file_extended_truncate(file_ptr, (ULONG64)size));
|
return(_fx_file_extended_truncate(file_ptr, (ULONG64)size));
|
||||||
}
|
}
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_truncate_release PORTABLE C */
|
/* _fx_file_truncate_release PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -70,11 +70,17 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* Added conditional to */
|
||||||
|
/* disable one line function, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
|
#ifndef FX_DISABLE_ONE_LINE_FUNCTION
|
||||||
UINT _fx_file_truncate_release(FX_FILE *file_ptr, ULONG size)
|
UINT _fx_file_truncate_release(FX_FILE *file_ptr, ULONG size)
|
||||||
{
|
{
|
||||||
|
|
||||||
return(_fx_file_extended_truncate_release(file_ptr, (ULONG64)size));
|
return(_fx_file_extended_truncate_release(file_ptr, (ULONG64)size));
|
||||||
}
|
}
|
||||||
|
#endif /* FX_DISABLE_ONE_LINE_FUNCTION */
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_write PORTABLE C */
|
/* _fx_file_write PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -92,6 +92,9 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_write(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG size)
|
UINT _fx_file_write(FX_FILE *file_ptr, VOID *buffer_ptr, ULONG size)
|
||||||
@ -1291,7 +1294,7 @@ UCHAR dont_use_fat_old = FX_FALSE; /* Used by exFAT logic to in
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Actually perform the memory copy. */
|
/* Actually perform the memory copy. */
|
||||||
_fx_utility_memory_copy(source_ptr, ((UCHAR *)media_ptr -> fx_media_memory_buffer) +
|
_fx_utility_memory_copy(source_ptr, ((UCHAR *)media_ptr -> fx_media_memory_buffer) + /* Use case of memcpy is verified. */
|
||||||
file_ptr -> fx_file_current_logical_offset,
|
file_ptr -> fx_file_current_logical_offset,
|
||||||
copy_bytes);
|
copy_bytes);
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_file_write_notify_set PORTABLE C */
|
/* _fx_file_write_notify_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -67,6 +67,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_file_write_notify_set(FX_FILE *file_ptr, VOID (*file_write_notify)(FX_FILE *file))
|
UINT _fx_file_write_notify_set(FX_FILE *file_ptr, VOID (*file_write_notify)(FX_FILE *file))
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_abort PORTABLE C */
|
/* _fx_media_abort PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -69,6 +69,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_abort(FX_MEDIA *media_ptr)
|
UINT _fx_media_abort(FX_MEDIA *media_ptr)
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_boot_info_extract PORTABLE C */
|
/* _fx_media_boot_info_extract PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -108,6 +108,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_boot_info_extract(FX_MEDIA *media_ptr)
|
UINT _fx_media_boot_info_extract(FX_MEDIA *media_ptr)
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_cache_invalidate PORTABLE C */
|
/* _fx_media_cache_invalidate PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -69,6 +69,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_cache_invalidate(FX_MEDIA *media_ptr)
|
UINT _fx_media_cache_invalidate(FX_MEDIA *media_ptr)
|
||||||
|
@ -57,7 +57,7 @@ typedef struct CURRENT_DIRECTORY_ENTRY_STRUCT
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_check PORTABLE C */
|
/* _fx_media_check PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -163,6 +163,8 @@ typedef struct CURRENT_DIRECTORY_ENTRY_STRUCT
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_check(FX_MEDIA *media_ptr, UCHAR *scratch_memory_ptr, ULONG scratch_memory_size, ULONG error_correction_option, ULONG *errors_detected)
|
UINT _fx_media_check(FX_MEDIA *media_ptr, UCHAR *scratch_memory_ptr, ULONG scratch_memory_size, ULONG error_correction_option, ULONG *errors_detected)
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_check_FAT_chain_check PORTABLE C */
|
/* _fx_media_check_FAT_chain_check PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -73,6 +73,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
ULONG _fx_media_check_FAT_chain_check(FX_MEDIA *media_ptr, ULONG starting_cluster, ULONG *last_valid_cluster, ULONG *total_valid_clusters, UCHAR *logical_fat)
|
ULONG _fx_media_check_FAT_chain_check(FX_MEDIA *media_ptr, ULONG starting_cluster, ULONG *last_valid_cluster, ULONG *total_valid_clusters, UCHAR *logical_fat)
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_check_lost_cluster_check PORTABLE C */
|
/* _fx_media_check_lost_cluster_check PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -74,6 +74,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
ULONG _fx_media_check_lost_cluster_check(FX_MEDIA *media_ptr, UCHAR *logical_fat, ULONG total_clusters, ULONG error_correction_option)
|
ULONG _fx_media_check_lost_cluster_check(FX_MEDIA *media_ptr, UCHAR *logical_fat, ULONG total_clusters, ULONG error_correction_option)
|
||||||
@ -171,7 +173,7 @@ UINT status;
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_check_exFAT_lost_cluster_check PORTABLE C */
|
/* _fx_media_check_exFAT_lost_cluster_check PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -209,6 +211,8 @@ UINT status;
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
ULONG _fx_media_check_exFAT_lost_cluster_check(FX_MEDIA *media_ptr, UCHAR *logical_fat, ULONG total_clusters, ULONG error_correction_option)
|
ULONG _fx_media_check_exFAT_lost_cluster_check(FX_MEDIA *media_ptr, UCHAR *logical_fat, ULONG total_clusters, ULONG error_correction_option)
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_close PORTABLE C */
|
/* _fx_media_close PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -84,14 +84,22 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* added conditional to */
|
||||||
|
/* disable file close */
|
||||||
|
/* and cache, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_close(FX_MEDIA *media_ptr)
|
UINT _fx_media_close(FX_MEDIA *media_ptr)
|
||||||
{
|
{
|
||||||
|
|
||||||
FX_INT_SAVE_AREA
|
FX_INT_SAVE_AREA
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_FILE_CLOSE
|
||||||
ULONG open_count;
|
ULONG open_count;
|
||||||
FX_FILE *file_ptr;
|
FX_FILE *file_ptr;
|
||||||
|
#endif /* FX_DISABLE_FILE_CLOSE */
|
||||||
UINT status;
|
UINT status;
|
||||||
|
|
||||||
|
|
||||||
@ -112,6 +120,7 @@ UINT status;
|
|||||||
/* Protect against other threads accessing the media. */
|
/* Protect against other threads accessing the media. */
|
||||||
FX_PROTECT
|
FX_PROTECT
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_FILE_CLOSE
|
||||||
/* Loop through the media's open files. */
|
/* Loop through the media's open files. */
|
||||||
open_count = media_ptr -> fx_media_opened_file_count;
|
open_count = media_ptr -> fx_media_opened_file_count;
|
||||||
file_ptr = media_ptr -> fx_media_opened_file_list;
|
file_ptr = media_ptr -> fx_media_opened_file_list;
|
||||||
@ -178,6 +187,7 @@ UINT status;
|
|||||||
file_ptr = file_ptr -> fx_file_opened_next;
|
file_ptr = file_ptr -> fx_file_opened_next;
|
||||||
open_count--;
|
open_count--;
|
||||||
}
|
}
|
||||||
|
#endif /* FX_DISABLE_FILE_CLOSE */
|
||||||
|
|
||||||
/* Flush the cached individual FAT entries */
|
/* Flush the cached individual FAT entries */
|
||||||
_fx_utility_FAT_flush(media_ptr);
|
_fx_utility_FAT_flush(media_ptr);
|
||||||
@ -224,12 +234,16 @@ UINT status;
|
|||||||
ULONG signature;
|
ULONG signature;
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_CACHE
|
||||||
/* Setup a pointer to the first cached entry's buffer. */
|
/* Setup a pointer to the first cached entry's buffer. */
|
||||||
buffer_ptr = (media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector_memory_buffer;
|
buffer_ptr = (media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector_memory_buffer;
|
||||||
|
|
||||||
/* Invalidate this cache entry. */
|
/* Invalidate this cache entry. */
|
||||||
(media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector = (~(ULONG64)0);
|
(media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector = (~(ULONG64)0);
|
||||||
(media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector_valid = FX_FALSE;
|
(media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector_valid = FX_FALSE;
|
||||||
|
#else
|
||||||
|
buffer_ptr = media_ptr -> fx_media_memory_buffer;
|
||||||
|
#endif /* FX_DISABLE_CACHE */
|
||||||
|
|
||||||
/* Read the FAT32 additional information sector from the device. */
|
/* Read the FAT32 additional information sector from the device. */
|
||||||
media_ptr -> fx_media_driver_request = FX_DRIVER_READ;
|
media_ptr -> fx_media_driver_request = FX_DRIVER_READ;
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_close_notif_set PORTABLE C */
|
/* _fx_media_close_notif_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -66,6 +66,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_close_notify_set(FX_MEDIA *media_ptr, VOID (*media_close_notify)(FX_MEDIA *media))
|
UINT _fx_media_close_notify_set(FX_MEDIA *media_ptr, VOID (*media_close_notify)(FX_MEDIA *media))
|
||||||
|
@ -449,7 +449,7 @@ const ULONG UpCaseTableCheckSum = 0xE619D30D;
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_exFAT_format PORTABLE C */
|
/* _fx_media_exFAT_format PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -510,6 +510,9 @@ const ULONG UpCaseTableCheckSum = 0xE619D30D;
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), verified */
|
||||||
|
/* memcpy usage, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_exFAT_format(FX_MEDIA *media_ptr,
|
UINT _fx_media_exFAT_format(FX_MEDIA *media_ptr,
|
||||||
@ -628,11 +631,11 @@ UINT status;
|
|||||||
/* Clear work buffer. */
|
/* Clear work buffer. */
|
||||||
_fx_utility_memory_set(byte_ptr, 0x00, FX_BOOT_SECTOR_SIZE);
|
_fx_utility_memory_set(byte_ptr, 0x00, FX_BOOT_SECTOR_SIZE);
|
||||||
|
|
||||||
_fx_utility_memory_copy((UCHAR *)jump_boot,
|
_fx_utility_memory_copy((UCHAR *)jump_boot, /* Use case of memcpy is verified. */
|
||||||
&byte_ptr[FX_JUMP_INSTR],
|
&byte_ptr[FX_JUMP_INSTR],
|
||||||
sizeof(jump_boot));
|
sizeof(jump_boot));
|
||||||
|
|
||||||
_fx_utility_memory_copy((UCHAR *)file_system_name,
|
_fx_utility_memory_copy((UCHAR *)file_system_name, /* Use case of memcpy is verified. */
|
||||||
&byte_ptr[FX_OEM_NAME],
|
&byte_ptr[FX_OEM_NAME],
|
||||||
sizeof(file_system_name));
|
sizeof(file_system_name));
|
||||||
|
|
||||||
@ -800,7 +803,7 @@ UINT status;
|
|||||||
offset = sizeof(fat_init_mask);
|
offset = sizeof(fat_init_mask);
|
||||||
|
|
||||||
/* Copy the initial values for FAT table. */
|
/* Copy the initial values for FAT table. */
|
||||||
_fx_utility_memory_copy((UCHAR *)fat_init_mask,
|
_fx_utility_memory_copy((UCHAR *)fat_init_mask, /* Use case of memcpy is verified. */
|
||||||
byte_ptr,
|
byte_ptr,
|
||||||
sizeof(fat_init_mask));
|
sizeof(fat_init_mask));
|
||||||
|
|
||||||
@ -1076,7 +1079,7 @@ UINT status;
|
|||||||
_fx_utility_memory_set(byte_ptr, 0x00, media_ptr -> fx_media_bytes_per_sector);
|
_fx_utility_memory_set(byte_ptr, 0x00, media_ptr -> fx_media_bytes_per_sector);
|
||||||
|
|
||||||
/* Copy the remaining bytes. */
|
/* Copy the remaining bytes. */
|
||||||
_fx_utility_memory_copy((UCHAR *)_fx_utility_exFAT_upcase_table_compressed + sizeof(_fx_utility_exFAT_upcase_table_compressed) - i, byte_ptr, i);
|
_fx_utility_memory_copy((UCHAR *)_fx_utility_exFAT_upcase_table_compressed + sizeof(_fx_utility_exFAT_upcase_table_compressed) - i, byte_ptr, i); /* Use case of memcpy is verified. */
|
||||||
|
|
||||||
/* Write out the sector. */
|
/* Write out the sector. */
|
||||||
status = _fx_utility_exFAT_system_sector_write(media_ptr, byte_ptr,
|
status = _fx_utility_exFAT_system_sector_write(media_ptr, byte_ptr,
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_extended_space_available PORTABLE C */
|
/* _fx_media_extended_space_available PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -68,6 +68,8 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_extended_space_available(FX_MEDIA *media_ptr, ULONG64 *available_bytes_ptr)
|
UINT _fx_media_extended_space_available(FX_MEDIA *media_ptr, ULONG64 *available_bytes_ptr)
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_flush PORTABLE C */
|
/* _fx_media_flush PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -78,6 +78,10 @@
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* added conditional to */
|
||||||
|
/* disable cache, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_flush(FX_MEDIA *media_ptr)
|
UINT _fx_media_flush(FX_MEDIA *media_ptr)
|
||||||
@ -221,6 +225,7 @@ FX_INT_SAVE_AREA
|
|||||||
UCHAR *buffer_ptr;
|
UCHAR *buffer_ptr;
|
||||||
ULONG signature;
|
ULONG signature;
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_CACHE
|
||||||
|
|
||||||
/* Setup a pointer to the first cached entry's buffer. */
|
/* Setup a pointer to the first cached entry's buffer. */
|
||||||
buffer_ptr = (media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector_memory_buffer;
|
buffer_ptr = (media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector_memory_buffer;
|
||||||
@ -228,6 +233,9 @@ FX_INT_SAVE_AREA
|
|||||||
/* Invalidate this cache entry. */
|
/* Invalidate this cache entry. */
|
||||||
(media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector = (~(ULONG64)0);
|
(media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector = (~(ULONG64)0);
|
||||||
(media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector_valid = FX_FALSE;
|
(media_ptr -> fx_media_sector_cache_list_ptr) -> fx_cached_sector_valid = FX_FALSE;
|
||||||
|
#else
|
||||||
|
buffer_ptr = media_ptr -> fx_media_memory_buffer;
|
||||||
|
#endif /* FX_DISABLE_CACHE */
|
||||||
|
|
||||||
/* Read the FAT32 additional information sector from the device. */
|
/* Read the FAT32 additional information sector from the device. */
|
||||||
media_ptr -> fx_media_driver_request = FX_DRIVER_READ;
|
media_ptr -> fx_media_driver_request = FX_DRIVER_READ;
|
||||||
|
@ -59,7 +59,7 @@ ULONG _fx_media_format_volume_id = 1;
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_format PORTABLE C */
|
/* _fx_media_format PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -112,6 +112,10 @@ ULONG _fx_media_format_volume_id = 1;
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), and */
|
||||||
|
/* added conditional to */
|
||||||
|
/* disable force memset, */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT _fx_media_format(FX_MEDIA *media_ptr, VOID (*driver)(FX_MEDIA *media), VOID *driver_info_ptr, UCHAR *memory_ptr, UINT memory_size,
|
UINT _fx_media_format(FX_MEDIA *media_ptr, VOID (*driver)(FX_MEDIA *media), VOID *driver_info_ptr, UCHAR *memory_ptr, UINT memory_size,
|
||||||
@ -178,6 +182,7 @@ UINT sectors_per_fat, f, s;
|
|||||||
/* Move the buffer pointer into a local copy. */
|
/* Move the buffer pointer into a local copy. */
|
||||||
byte_ptr = media_ptr -> fx_media_driver_buffer;
|
byte_ptr = media_ptr -> fx_media_driver_buffer;
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_FORCE_MEMORY_OPERATION
|
||||||
/* Clear the buffer record out, assuming it is large enough for one sector. */
|
/* Clear the buffer record out, assuming it is large enough for one sector. */
|
||||||
for (i = 0; i < bytes_per_sector; i++)
|
for (i = 0; i < bytes_per_sector; i++)
|
||||||
{
|
{
|
||||||
@ -185,6 +190,9 @@ UINT sectors_per_fat, f, s;
|
|||||||
/* Clear each byte of the boot record. */
|
/* Clear each byte of the boot record. */
|
||||||
byte_ptr[i] = (UCHAR)0;
|
byte_ptr[i] = (UCHAR)0;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
_fx_utility_memory_set(byte_ptr, 0, bytes_per_sector);
|
||||||
|
#endif /* FX_DISABLE_FORCE_MEMORY_OPERATION */
|
||||||
|
|
||||||
/* Set jump instruction at the beginning of the sector. */
|
/* Set jump instruction at the beginning of the sector. */
|
||||||
byte_ptr[0] = (UCHAR)0xEB;
|
byte_ptr[0] = (UCHAR)0xEB;
|
||||||
@ -417,13 +425,16 @@ UINT sectors_per_fat, f, s;
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Now blank-pad the remainder of the volume name. */
|
/* Now blank-pad the remainder of the volume name. */
|
||||||
|
#ifndef FX_DISABLE_FORCE_MEMORY_OPERATION
|
||||||
while (i < 11)
|
while (i < 11)
|
||||||
{
|
{
|
||||||
|
|
||||||
byte_ptr[j + i] = (UCHAR)' ';
|
byte_ptr[j + i] = (UCHAR)' ';
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
_fx_utility_memory_set(&byte_ptr[j + i], ' ', (11 - i));
|
||||||
|
#endif /* FX_DISABLE_FORCE_MEMORY_OPERATION */
|
||||||
|
|
||||||
|
|
||||||
#ifdef FX_FORCE_512_BYTE_BOOT_SECTOR
|
#ifdef FX_FORCE_512_BYTE_BOOT_SECTOR
|
||||||
@ -466,11 +477,15 @@ UINT sectors_per_fat, f, s;
|
|||||||
if ((total_clusters >= FX_16_BIT_FAT_SIZE) && (bytes_per_sector == 512))
|
if ((total_clusters >= FX_16_BIT_FAT_SIZE) && (bytes_per_sector == 512))
|
||||||
{
|
{
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_FORCE_MEMORY_OPERATION
|
||||||
/* Clear sector buffer. */
|
/* Clear sector buffer. */
|
||||||
for (i = 0; i < bytes_per_sector; i++)
|
for (i = 0; i < bytes_per_sector; i++)
|
||||||
{
|
{
|
||||||
byte_ptr[i] = (CHAR)0;
|
byte_ptr[i] = (CHAR)0;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
_fx_utility_memory_set(byte_ptr, 0, bytes_per_sector);
|
||||||
|
#endif /* FX_DISABLE_FORCE_MEMORY_OPERATION */
|
||||||
|
|
||||||
/* Build the FSINFO fields. */
|
/* Build the FSINFO fields. */
|
||||||
|
|
||||||
@ -584,11 +599,15 @@ UINT sectors_per_fat, f, s;
|
|||||||
i = 0;
|
i = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_FORCE_MEMORY_OPERATION
|
||||||
/* Clear remainder of sector buffer. */
|
/* Clear remainder of sector buffer. */
|
||||||
for (; i < bytes_per_sector; i++)
|
for (; i < bytes_per_sector; i++)
|
||||||
{
|
{
|
||||||
byte_ptr[i] = (CHAR)0;
|
byte_ptr[i] = (CHAR)0;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
_fx_utility_memory_set(&byte_ptr[i], 0, (bytes_per_sector - i));
|
||||||
|
#endif /* FX_DISABLE_FORCE_MEMORY_OPERATION */
|
||||||
|
|
||||||
/* Build sector write command. */
|
/* Build sector write command. */
|
||||||
media_ptr -> fx_media_driver_logical_sector = reserved_sectors + (f * sectors_per_fat) + s;
|
media_ptr -> fx_media_driver_logical_sector = reserved_sectors + (f * sectors_per_fat) + s;
|
||||||
@ -614,11 +633,15 @@ UINT sectors_per_fat, f, s;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef FX_DISABLE_FORCE_MEMORY_OPERATION
|
||||||
/* Clear sector buffer. */
|
/* Clear sector buffer. */
|
||||||
for (i = 0; i < bytes_per_sector; i++)
|
for (i = 0; i < bytes_per_sector; i++)
|
||||||
{
|
{
|
||||||
byte_ptr[i] = (CHAR)0;
|
byte_ptr[i] = (CHAR)0;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
_fx_utility_memory_set(byte_ptr, 0, bytes_per_sector);
|
||||||
|
#endif /* FX_DISABLE_FORCE_MEMORY_OPERATION */
|
||||||
|
|
||||||
/* Now clear the root directory sectors. */
|
/* Now clear the root directory sectors. */
|
||||||
for (s = 0; s < root_sectors; s++)
|
for (s = 0; s < root_sectors; s++)
|
||||||
|
@ -40,7 +40,7 @@ UINT fx_media_format_oem_name_set(UCHAR new_oem_name[8]);
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_format_oem_name_set PORTABLE C */
|
/* _fx_media_format_oem_name_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -72,6 +72,8 @@ UINT fx_media_format_oem_name_set(UCHAR new_oem_name[8]);
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT fx_media_format_oem_name_set(UCHAR new_oem_name[8])
|
UINT fx_media_format_oem_name_set(UCHAR new_oem_name[8])
|
||||||
|
@ -40,7 +40,7 @@ UINT fx_media_format_type_set(UCHAR new_media_type);
|
|||||||
/* FUNCTION RELEASE */
|
/* FUNCTION RELEASE */
|
||||||
/* */
|
/* */
|
||||||
/* _fx_media_format_type_set PORTABLE C */
|
/* _fx_media_format_type_set PORTABLE C */
|
||||||
/* 6.0 */
|
/* 6.1 */
|
||||||
/* AUTHOR */
|
/* AUTHOR */
|
||||||
/* */
|
/* */
|
||||||
/* William E. Lamie, Microsoft Corporation */
|
/* William E. Lamie, Microsoft Corporation */
|
||||||
@ -71,6 +71,8 @@ UINT fx_media_format_type_set(UCHAR new_media_type);
|
|||||||
/* DATE NAME DESCRIPTION */
|
/* DATE NAME DESCRIPTION */
|
||||||
/* */
|
/* */
|
||||||
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
/* 05-19-2020 William E. Lamie Initial Version 6.0 */
|
||||||
|
/* 09-30-2020 William E. Lamie Modified comment(s), */
|
||||||
|
/* resulting in version 6.1 */
|
||||||
/* */
|
/* */
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
UINT fx_media_format_type_set(UCHAR new_media_type)
|
UINT fx_media_format_type_set(UCHAR new_media_type)
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user