Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Re: [lpc2000] Re: Cheap SD Flash File System

2005-11-13 by Tom Walsh

rtstofer wrote:

>>>I need to correct myself re: RDCF2.  I compiled it and it 
>>>      
>>>
>executes 
>  
>
>>>well when installed on a floppy and interacting with a floppy.
>>>
>>>It does not work from my hard drive whether interacting with the 
>>>      
>>>
>HD 
>  
>
>>>where it fails completely or the floppy where it gets just about 
>>>everything wrong.
>>>
>>>I traced the hard drive failure to the first call to absread 
>>>      
>>>
>where 
>  
>
>>>the code is trying to read absolute sector 0.  I have to think 
>>>      
>>>
>about 
>  
>
>>>this but I think it is incorrect.  In any event, the call fails.
>>>
>>>Another limitation to RDCF2 is a 32 MB limit so the code is for a 
>>>very early version of FAT.  From the very first paragraph of the 
>>>      
>>>
>doc 
>  
>
>>>file: "RDCF is a reentrant and ROMable DOS-compatible file system 
>>>designed for use with floppy diskettes and hard disk partitions 
>>>      
>>>
>that 
>  
>
>>>do not exceed 32 Mbytes in size."
>>>
>>>Anyway, scrap that version; it doesn't really work.
>>>
>>> 
>>>
>>>      
>>>
>>No, there is code in there to adapt between 12bit & 16bit FATs..  
>>    
>>
>It 
>  
>
>>does appear to be working, I'm writing files onto a 128Meg MMC 
>>    
>>
>image.  
>  
>
>>More testing is needed before I'm confident that what I reworked 
>>    
>>
>is 
>  
>
>>doing what it should: write a bunch of 32Meg files and verify 
>>    
>>
>contents.
>  
>
>>TomW
>>    
>>
>
>I really don't understand why it doesn't work, I can only report my 
>observation and a 10 minute excursion with the debugger.  It is also 
>broken in some regard with file move because it will move a 
>file 'junk' into a subdirectory named 'junk' and then refuse to 
>delete or rename the file; an observation that came about because of 
>the completely off the wall path requirements.
>  
>
I'm only interested in the rdcf2.c file, I threw cache.c and file.c 
away.  What I'm doing is interfacing it to file streams of NewLib.  I 
don't need / want long filenames.

>If multiple drives are allowed, every path must include a drive.  A 
>backslash can never follow a drive specification.  These kinds of 
>things are a drag.  I understand the issue of not having a current 
>working path (or directory) but it does add a measure of confusion.
>
>I saw the code for FAT12 and FAT16 and the differences seem 
>reasonable.  The first partition of the HDD I was using was 502 MB 
>FAT16.
>
>I'm considering buying the FLASH File driver even though the CF code 
>is an upgrade to the basic price.  I'm also considering leaving 
>things as they are.  I can read FAT32 and the write requirement may 
>not be worth the effort.  It works quite well as it is and until I 
>have FAT32, CF, MP3 and RTOS running I don't know how much memory 
>will be left to implement a complete file system.  But several 
>thousand lines of additional code will probably push the limit of 
>the LPC2106.
>  
>
Yeah,  My target is an LCP2138, so I have lots of Flash but very little 
RAM.  I am still running the code under the native gcc compiler on the 
Linux box and don't know how large it will end up once I get it patched 
into the cross-dev environment.

I'll post my results.

Regards,

TomW

-- 
Tom Walsh - WN3L - Embedded Systems Consultant
http://openhardware.net, http://cyberiansoftware.com
"Windows? No thanks, I have work to do..."
----------------------------------------------------

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.