[Coco] Does the DIR option of OPEN work in Basic09 ?

L. Curtis Boyle curtisboyle at sasktel.net
Sun May 23 14:49:08 EDT 2021


Whoops. In my defence, I did raw type that into the email. ;-)

Sent from my iPhone

> On May 23, 2021, at 11:56 AM, coco at jechar.ca wrote:
> 
> 
> Thanks worked fine after I replaced
> DIM dirpathname:STRING2[256]
> with
> DIM dirpathname:STRING[256]
> 
>> On 2021-05-22 22:58, L. Curtis Boyle wrote:
>> As others have mentioned, directory entries are not just the
>> filenames, but also include a 24 bit start cluster number. The name is
>> also high bit terminated (so basically +$80 on the ASCII value). You
>> also should be checking for filenames that start with a CHR$(0), which
>> is a directory entry for a deleted file.
>> A program to do this would look something like this:
>> PROCEDURE ReadDir
>> DIM dirprintname:STRING[29]
>> TYPE direntry=name:STRING[29];startcluster(3):BYTE
>> DIM dirent:direntry
>> DIM c:INTEGER
>> DIM curchar,dirpath:BYTE
>> DIM dirpathname:STRING2[256]
>> dirpathname="/dd/sys"
>> OPEN #dirpath,dirpathname:READ+DIR
>> WHILE NOT(EOF(#dirpath)) DO
>>  GET #dirpath,dirent
>>  IF LEFT$(dirent.name,1)<>CHR$(0) THEN
>>    dirprintname=""
>>    FOR c=1 TO 29
>>      curchar=ASC(MID$(dirent.name,c,1))
>>    EXITIF curchar>127 THEN
>>      dirprintname=dirprintname+CHR$(curchar-128)
>>    ENDEXIT
>>    dirprintname=dirprintname+CHR$(curchar)
>>    NEXT c
>>    PRINT dirprintname
>>  ENDIF
>> ENDWHILE
>> CLOSE #dirpath
>> END
>> L. Curtis Boyle
>> curtisboyle at sasktel.net
>> TRS-80 Color Computer Games website
>> http://www.lcurtisboyle.com/nitros9/coco_game_list.html
>> NitrOS-9 Ease of Use (EOU) Project
>> http://www.lcurtisboyle.com/nitros9/nitros9.html
>>>> On May 22, 2021, at 1:33 PM, coco at jechar.ca wrote:
>>> I tried this OPEN #dp,dline$:READ+DIR
>>> But
>>>  dline$="/dd/SYS"
>>>  OPEN #dp,dline$:READ+DIR
>>>  REPEAT
>>>     READ #dp,line$
>>>     PRINT line$
>>>  UNTIL EOF(#dp)
>>> Did not print the SYS directory, Why ?
>>> Charlie
>>> --
>>> Coco mailing list
>>> Coco at maltedmedia.com
>>> https://pairlist5.pair.net/mailman/listinfo/coco
> 



More information about the Coco mailing list