Path: utzoo!yunexus!geac!syntron!jtsv16!uunet!super!udel!princeton!njin!rutgers!mailrus!purdue!decwrl!ucbvax!HNYKUN11.BITNET!U211344 From: U211344@HNYKUN11.BITNET (Olaf 'Rhialto' Seibert) Newsgroups: comp.sys.amiga Subject: PATH: and (pseudo)announcement of RDF: Message-ID: <8810261438.AA14294@jade.berkeley.edu> Date: 26 Oct 88 14:27:06 GMT Article-I.D.: jade.8810261438.AA14294 Sender: daemon@ucbvax.BERKELEY.EDU Lines: 58 The following is from the recently posted source of the PATH: handler, Submitted by: Rico Mariani #define FH struct FileHandle #define PArg1 dospacket->dp_Arg1 /* oslt */ #define BTOC(x) BADDR(x) /* or something like that */ FH *p; if (p = Open(buf1,PType)) { bmov(BTOC(p),BTOC(PArg1),sizeof(FH)); FreeMem(BTOC(p),sizeof(FH)); /* <-- Note This */ } else error = IoErr(); Are you sure that you free all the memory here, i.e. that the FileHandle was not DosAllocMem()ed (using Arp lingo)? And if so, how did you know without disassembling the DOS and/or using other questionable practices ? :-) The proper way to do it is, of course, send your own hand-made DOS packet to the proper handler, asking it to fill in the FileHandle (PArg1) for you. In that case, you save yourself a rendez-vous with one icky BPTR. Now we are talking about PATH: anyway... did everybody see that the code to be added to Matt's original RAM disk is fairly minimal?? I would like to suggest that code like this could be added to the *normal* file system in a next release, using one of those protection bits. In fact, if you have the code for a search-path-file, you almost have symbolic links. These are even slightly simpler. Isn't there a lot of room left in the file header block? That space could also be used in the future for some useful information. Now a pseudo-announcement... I have written a RDF: handler. That is a Raw DFx: interface: it turns your floppy (or your hard disk) into a sequential stream of bytes (just like Unix :-). You can (with some minor limitations) Zoo to it, for example, and have a *real* 880K Zoo archive on a single floppy. You can disassemble the boot block directly from the disk, or just look at it using TYPE Olaf.Seibert; +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +++ Let me tell you that I disclaim anything you care to name +++ --- Olaf Rhialto Seibert the Marvellous --- U211344@hnykun11.bitnet --- 7167 BYTES FREE *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* (Yes: You get a disk icon with DF0:ZOO below it)