> I have looked into it a bit further. > When RISC OS boots it itterates through directories asking for one entry at > a time. This in contrast when the filer shows you a directory it then asks > for more entries. > If during booting Func 15 is called to get an entry the new hostfs code > tries to send an indication when the last entry is returned (sets r4 to -1). > I do not know if this is allowed or not but the result is that the entry is > skipped.
The PRMs state that on exit from FSEntry_Func_15 R4 should contain an offset of next item to read (if the directory has not yet been read fully) or -1 to indicate that the final entry or entries are being returned. I put together a quick test program that reads the contents of a HostFS directory asking for one entry at a time, and the behaviour appears fine. I studied the boot sequence of RISC OS 4.02, and found that the requests through FSEntry_Func_14 were for 1 entry at a time, and the returned values looked OK. For example it looked at the files in !Boot.Resources.!System, and returned the correct number of entries (11 in my case). Are you able to create a test program that demonstrates the problem? That would be very useful. Unfortunately I can not follow your explanation beyond the above. Matthew _______________________________________________ Rpcemu mailing list [email protected] http://www.riscos.info/cgi-bin/mailman/listinfo/rpcemu
