Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

GBA NDS FAT: Difference between revisions

From GameBrew
No edit summary
No edit summary
Line 2: Line 2:
| title      = GBA NDS FAT
| title      = GBA NDS FAT
| image      =  
| image      =  
| type        = PC utility
| type        = PC Utility
| version    = 2005-06-12
| version    = 3 Mar 2006
| licence    = Mixed
| licence    = Mixed
| author      = chishm (Michael Chisholm)
| author      = chishm (Michael Chisholm)
Line 52: Line 52:


==Changelog==
==Changelog==
'''2006-03-03'''
'''2006/03/03'''
* Improved NMMC (MK2 / MK3) driver.
* Improved NMMC (MK2 / MK3) driver.
* Optimised LFNs into loops, thanks to dwedit.
* Optimised LFNs into loops, thanks to dwedit.
Line 61: Line 61:
* Added EFA2 support, thanks to CyteX.
* Added EFA2 support, thanks to CyteX.


'''2006-02-09'''
'''2006/02/09'''
* Fixed file and directory names starting with a dot ("."), or containing more than one dot.
* Fixed file and directory names starting with a dot ("."), or containing more than one dot.
* Added Neoflash MK2 / MK3 support, thanks to www.neoflash.com.
* Added Neoflash MK2 / MK3 support, thanks to www.neoflash.com.
Line 74: Line 74:
** Long file names with less than 12 characters now work, thanks to DragonMinded for pointing it out.
** Long file names with less than 12 characters now work, thanks to DragonMinded for pointing it out.


'''2006-01-04'''
'''2006/01/04'''
* Fixed FAT_fwrite when writing in cluster aligned chunks.
* Fixed FAT_fwrite when writing in cluster aligned chunks.


'''2005-11-27'''
'''2005/11/27'''
* Fixed reading / writing of sector buffer in FAT_fread and FAT_fwrite, thanks to AgentQ.
* Fixed reading / writing of sector buffer in FAT_fread and FAT_fwrite, thanks to AgentQ.


'''2005-11-26'''
'''2005/11/26'''
* disc_io now has a HostType function, for determining what type of flash cart is inserted.
* disc_io now has a HostType function, for determining what type of flash cart is inserted.


'''2005-11-25'''
'''2005/11/25'''
* Clusters are now allocated as they are needed.
* Clusters are now allocated as they are needed.
* Fixed seeking in append mode.
* Fixed seeking in append mode.
Line 89: Line 89:
* Added support for standard GBA Flash Carts, with SRAM.
* Added support for standard GBA Flash Carts, with SRAM.


'''2005-11-24'''
'''2005/11/24'''
* Fixed FAT_fseek bug, thanks to AgentQ.
* Fixed FAT_fseek bug, thanks to AgentQ.
* Added cluster allocation in FAT_fseek.
* Added cluster allocation in FAT_fseek.
Line 95: Line 95:
* Added FAT_FindFirstFileLFN and FAT_FindNextFileLFN - Long file name versions of FAT_FindFirstFile and FAT_FindNextFile.
* Added FAT_FindFirstFileLFN and FAT_FindNextFileLFN - Long file name versions of FAT_FindFirstFile and FAT_FindNextFile.


'''2005-11-21'''
'''2005/11/21'''
* Removed EOF marking from FAT_fclose.
* Removed EOF marking from FAT_fclose.
* FAT_fwrite now takes a const void* buffer. rather than a void* buffer.
* FAT_fwrite now takes a const void* buffer. rather than a void* buffer.
* FAT_fwrite initialises new sectors before using them.
* FAT_fwrite initialises new sectors before using them.


'''2005-11-17'''
'''2005/11/17'''
* Added FAT_fgets and FAT_fputs, with thanks again to MightyMax.
* Added FAT_fgets and FAT_fputs, with thanks again to MightyMax.


'''2005-11-15'''
'''2005/11/15'''
* FAT_fopen uses string functions for checking mode.
* FAT_fopen uses string functions for checking mode.


'''2005-11-14'''
'''2005/11/14'''
* Improved error handling in FAT_fread and FAT_fwrite.
* Improved error handling in FAT_fread and FAT_fwrite.
* FAT_GetLongFilename uses strncpy instead of custom code.
* FAT_GetLongFilename uses strncpy instead of custom code.
* Added DMA support for use on NDS.
* Added DMA support for use on NDS.


'''2005-11-09'''
'''2005/11/09'''
* Long directory entries are now fit amongst old ones, rather than at the end.
* Long directory entries are now fit amongst old ones, rather than at the end.
* Changed FAT_DeleteFile to FAT_remove and added ability to remove empty directories.
* Changed FAT_DeleteFile to FAT_remove and added ability to remove empty directories.
* Added FAT_mkdir to create a new directory.
* Added FAT_mkdir to create a new directory.


'''2005-11-08'''
'''2005/11/08'''
* Added ability to use unaligned buffers, thanks to wwcube.
* Added ability to use unaligned buffers, thanks to wwcube.
* No longer need to define NDS when compiling for the NDS (this is automatically done for you).
* No longer need to define NDS when compiling for the NDS (this is automatically done for you).


'''2005-11-07'''
'''2005/11/07'''
* Switched to memcpy instead of copy loops in fread and fwrite.
* Switched to memcpy instead of copy loops in fread and fwrite.


'''2005-11-06'''
'''2005/11/06'''
* Added FAT12 support and fixed FAT buffer bugs.
* Added FAT12 support and fixed FAT buffer bugs.
* Added FAT_FileExists - returns FT_NONE if no file exists, FT_DIR or FT_FILE if it does.
* Added FAT_FileExists - returns FT_NONE if no file exists, FT_DIR or FT_FILE if it does.
Line 129: Line 129:
* Added SuperCard CF support.
* Added SuperCard CF support.


'''2005-10-31'''
'''2005/10/31'''
* Changed FAT_CWD to FAT_chdir.
* Changed FAT_CWD to FAT_chdir.
* FAT_ftell now returns u32 instead of long int.
* FAT_ftell now returns u32 instead of long int.


'''2005-10-17'''
'''2005/10/17'''
* Fixed FAT_fseek when trying to SEEK_END, thanks to MoonLight.
* Fixed FAT_fseek when trying to SEEK_END, thanks to MoonLight.


'''2005-10-16'''
'''2005/10/16'''
* Added file time and date modification for writing, thanks to Joat.
* Added file time and date modification for writing, thanks to Joat.


'''2005-10-15'''
'''2005/10/15'''
* Changed file functions to use FAT_FILE* handles instead of int handles. Please change your code to reflect this change.
* Changed file functions to use FAT_FILE* handles instead of int handles. Please change your code to reflect this change.
* Split source into hardware and disk level files and renamed the files. Include gba_nds_cf.h into your project instead of gbamp_cf.h.
* Split source into hardware and disk level files and renamed the files. Include gba_nds_cf.h into your project instead of gbamp_cf.h.
* Added M3 adapter support.
* Added M3 adapter support.


'''2005-10-12'''
'''2005/10/12'''
* Fixed long file name bug in FAT_GetDirEntry. Thanks goes to MoonLight for pointing it out.
* Fixed long file name bug in FAT_GetDirEntry. Thanks goes to MoonLight for pointing it out.


'''2005-09-21'''
'''2005/09/21'''
* Improved FAT_fseek speed.
* Improved FAT_fseek speed.


'''2005-09-18'''
'''2005/09/18'''
* Fixed fseek bug with u32 offset instead of s32. Thanks goes to MightyMax for pointing that out.
* Fixed fseek bug with u32 offset instead of s32. Thanks goes to MightyMax for pointing that out.


'''2005-09-15'''
'''2005/09/15'''
* Added ability to read multiple sectors at once.
* Added ability to read multiple sectors at once.
* Improved FAT_fread and FAT_fwrite functions.
* Improved FAT_fread and FAT_fwrite functions.
* Fixed bug when trying to create a file in a non-existant directory.
* Fixed bug when trying to create a file in a non-existant directory.


'''2005-09-10'''
'''2005/09/10'''
* Fixed problem with FAT_GetDirEntry not initialising the attrib of the returned DIR_ENT.
* Fixed problem with FAT_GetDirEntry not initialising the attrib of the returned DIR_ENT.


'''2005-09-05''
'''2005/09/05''
* Added FAT_GetFileCluster - Returns the start cluster of the last file accessed.
* Added FAT_GetFileCluster - Returns the start cluster of the last file accessed.


'''2005-08-21'''
'''2005/08/21'''
* Added FAT_GetFileSize - Returns the size of the last file accessed.
* Added FAT_GetFileSize - Returns the size of the last file accessed.
* Included automatic memory access control setting for the NDS.
* Included automatic memory access control setting for the NDS.
* Removed typedef of bool (not needed with libnds).
* Removed typedef of bool (not needed with libnds).


'''2005-08-07'''
'''2005/08/07'''
* Fixed FAT_CWD bug when changing to ".." from a 1st level subdirectory.
* Fixed FAT_CWD bug when changing to ".." from a 1st level subdirectory.


'''2005-08-05'''
'''2005/08/05'''
* Fixed FAT_fopen bug in append mode.
* Fixed FAT_fopen bug in append mode.
* Fixed FAT_AddDirEntry bug that created orphen clusters if a directory entry was created that filled the end of a cluster.
* Fixed FAT_AddDirEntry bug that created orphen clusters if a directory entry was created that filled the end of a cluster.


'''2005-07-24'''
'''2005/07/24'''
* Modified for use on the NDS.
* Modified for use on the NDS.
* When using it on the ARM9 you don't need to modify anything. On the ARM7 you will have to manually define NDS.
* When using it on the ARM9 you don't need to modify anything. On the ARM7 you will have to manually define NDS.


'''2005-07-14'''
'''2005/07/14'''
* Fixed FAT_fseek() buffer bug.
* Fixed FAT_fseek() buffer bug.


'''2005-07-13'''
'''2005/07/13'''
* Added option not to use DMA.
* Added option not to use DMA.


'''2005-07-12'''
'''2005/07/12'''
* Some bug fixes:  
* Some bug fixes:  
** Reading & writing files on FAT16 cards in the root directory is now fixed.
** Reading & writing files on FAT16 cards in the root directory is now fixed.
** Accessing files near the end of FAT32 cards is now fixed.
** Accessing files near the end of FAT32 cards is now fixed.


'''2005-06-27'''
'''2005/06/27'''
* Third release.
* Third release.
* Bug fix for small cards.
* Bug fix for small cards.
Line 197: Line 197:
* Structure packing changed to be more compatible with non GCC compilers.
* Structure packing changed to be more compatible with non GCC compilers.


'''2005-06-24'''
'''2005/06/24'''
* Second proper release.
* Second proper release.
* All known bugs fixed.
* All known bugs fixed.
Line 204: Line 204:
* Long filenames now work.
* Long filenames now work.


'''2005-06-15'''
'''2005/06/15'''
* First release of file system driver.
* First release of file system driver.
* File reading implemented.
* File reading implemented.


'''2005-06-13'''
'''2005/06/13'''
* Started work on file system driver.
* Started work on file system driver.


'''2005-06-12'''
'''2005/06/12'''
* Successfully reverse engineered the reading of compact flash cards.
* Successfully reverse engineered the reading of compact flash cards.



Revision as of 14:02, 28 July 2021

GBA NDS FAT
General
Author(s)chishm (Michael Chisholm)
TypePC Utility
Version3 Mar 2006
LicenceMixed
Links
[Media:Gbandsfat20060303.zip Download]
Website
Advertisements

<htmlet>adsense</htmlet>

Advertising: