costin@h-sc1.UUCP (dan costin) (10/01/85)
[] It would be really nice, I think, if one could set some sort of flag in the finder that would cause any application run from any disk to terminate by returning to the finder it left from. That is, if I'm running the Finder on disk 1, and I call an application on disk 2, the program should terminate by running the Finder on disk 1, even if there is a System and a Finder on disk 2. Ideally, the application should behave as if there were no System or Finder on disk 2. This would be very useful right now when you're using a RamDisk, and will be a necessity, I think, when the Finder will be in ROM. Does anyone have a way of doing this now, or does someone have to write yet another version of the Finder? Apple, are you listening? Could this be a feature in the next Finder release? -dan
lsr@apple.UUCP (Larry Rosenstein) (10/07/85)
In article <582@h-sc1.UUCP> costin@h-sc1.UUCP (dan costin) writes: >It would be really nice, I think, if one could set some sort of flag in the >finder that would cause any application run from any disk to terminate by >returning to the finder it left from. > The version of the Finder that comes with the new Hard Disk 20 (it is supposed to be version 5.0) does this for the hard disk. Once the system disk is established on the hard disk, the Finder will not change it unless you explicitly request it when launching an application. You cannot choose this feature on a disk by disk basis; there is some criteria that the Finder uses to decide if it should switch the system disk. I don't remember what the criteria is, but I am pretty sure that a 400K Sony doesn't qualify. I think that someone could write a program that does the right thing even on small floppies. I don't have the time to do this, but here are my ideas on the subject, and maybe someone else will try this out. Basically, the system disk is switched when the Finder calls InitResources. The thing to do would be to patch the InitResource trap and make sure that the default volume at the time of the call is the disk you want to keep as the system disk. You would need to store a tiny piece of code in the system heap that reset the default volume properly and then branched to the "real" implementation of InitResources. There are undoubtedly other issues to deal with, (eg., you would want a nice interface that installs/uninstalls the patch, a way to override it when launching an application, etc.), but that is the general idea. I don't guarantee that this will actually work, because I haven't check with a Finder expert to see if there are any problems. -- Larry Rosenstein Apple Computer UUCP: {voder, idi, nsc, ios, mtxinu, dual}!apple!lsr CSNET: lsr@Apple.CSNET
guido@boring.UUCP (10/07/85)
In article <582@h-sc1.UUCP> costin@h-sc1.UUCP (dan costin) writes: >That is, if I'm running the Finder on disk 1, and I call an application on >disk 2, the program should terminate by running the Finder on disk 1, even if >there is a System and a Finder on disk 2. Ideally, the application should >behave as if there were no System or Finder on disk 2. The Lisa (Macintosh/XL) with hard disk already has this feature. It works with all Finders and System files I have seen, so I believe they have put a different version of Launch and/or ExitToShell in the toolbox (which is in RAM). Guido van Rossum, CWI, Amsterdam (guido@mcvax.UUCP)