) (10/31/89)
From: phil@vaxphw.enet.dec.com (Phil Hunt) Newsgroups: comp.sys.mac,comp.sys.mac.programmer Subject: INIT user guidlines proposal Date: 30 OCT 89 22:13:39 Organization: Digital Equipment Corporation A Modest Proposal on INIT setup 10-30-89 Hi, As everyone knows, INITs are a wonderful part of the Macintosh Architecture. INITs let us customize our systems by modifying the System to fit our personal likes and dislikes. But as we also know, INITs can be a headache. INITs can conflict with each other in strange and wonderful or mysterious ways. Also, it is very difficult to turn off selectively some INITS as each requires a different key to cause it not to load. An INIT also doesn't give a user any 'warning' as to when to press the 'no load' key. The following is a proposal, a 'Human Guidelines for INIT writing' document that should allow some standardization in the way the user interacts with an INIT during startup. =================================================================== Human Guidlines for INIT Writing An INIT, when it begins execution, should display a startup ICON using SHOWINIT or SHOWCINIT code (or any other compatible code segment) that has been floating around the networks for a long time. It should display a 'successful' or 'question mark' ICON on startup. The 'question mark' ICON is a modified 'successful' ICON with a question mark on top of it. This tells the user the INIT is waiting for user response. The INIT should then check for the SHIFT key. If it is depressed, the INIT should wait 1 second before continuing. This will allow the SHIFT key to act as a 'slow motion' startup, allowing the user to find an INIT to selectively load or not load easily. Whether the INIT continued or waited 1 second, it should then check for 2 keys, the 'pretzel' key or the OPTION key. If the 'pretzel' key is found depressed, thew INIT should show a 'NO LOAD/UNSUCCESSFUL' ICON, which is a successful ICON with a 'X' on top. If this is displayed, the INIT should exit with no processing occurring. The OPTION key is used by INITs that require configuration. This key, if found means the user would like to configure the INIT, causing a dialog window to appear. Upon completion of the INIT configuration, the INIT will execute it's startup code. At the completion of the startup code, the INIT should display it's 'successful' ICON and complete execution. Note, all ICONS should appear on top of each other, overwriting the previous ICON or status of the INIT. If all INITs followed these guidelines, eventually a user could very easily turn INITs on or off as well as see which INITs loaded or didn't load. ==================================================================== I can be reached with any questions or responses at: Compuserve: 76424,2545 Genie: XMG17394 Usenet: Above address (or return path of this message) But better yet, lets keep this proposal in the public limelight and build on it. Keep the discussion on the public networks for all to contribute. Lets create a standard for INITs like the rest of the Macintosh has had for years. In the long run, we will all benefit. ================================================================== Phil Hunt "Wherever you go, there you are!!!" Digital Equipment Corporation Phone: (508)486-2164 ENET: VAXPHW::PHIL USENET: phil@vaxphw.enet.dec.com MOREUSENET: phil%vaxphw.dec@decwrl.enet.dec.com EVENMORE: ....!decwrl!dec-vaxphw!phil
rcbaem@eutrc3.urc.tue.nl (Ernst <pooh> Mulder) (10/31/89)
The idea is very nice, the user interface isn't what you'd call 'intuitive'.. I know, the current interfacing is very bad, the one INIT quits when you press the mouse-button. The other when you press option-shift. Some inits let you know they're not loaded by not showing their ICON, others by displaying their ICON with an X drawn over it.. Others display their ICON whether or not they're loaded... I liked what the TOPS INIT does: Display a small modal DiaLOG 'Install TOPS?' with yes/no (or was it OK/Cancel) buttons. At least then you'd know whether or not TOPS is loaded. Maybe all INITs should do this, or something similar. And only when any of the modifier-keys/mouse is pressed. Then you could switch on/off any INIT, and you'd only use the mouse. Hmm, think I wanna hear more proposals.. pooh.
sluggor@Athena.MIT.EDU (Scott Howlett) (11/01/89)
I would definitely like some sort of unified approach to the handling of INIT selection, but, as a user, I would rather be able to bring up a dialog at the beginning of the INIT loading process and select all of the INITs to be loaded/skipped at once, rather than to wait for each one to load and ask me if I really want to load it. In an ideal world, the INIT31 mechanism could be expanded to provide this capability and more. I would really like the capability of storing several sets of INITs to be loaded, so I can, say, pick my Behind Dark Castle set, or my Really Intense Programming set, or my Man of Leisure set, rather than having to specify the load/no load status of each INIT individually every time. I would also like to be able to choose different orders of loading for each set, which would alleviate much of the INIT renaming question. In addition, I feel that it is important not to violate other INITs by changing their file types as the version of INIT cdev does. Anybody interested in an expanded rewrite of INIT31?
oster@dewey.soe.berkeley.edu (David Phillip Oster) (11/01/89)
1.) there should be some indiciation that an INIT failed to load successfully. Either drawing an X on its icon, or not drawing its icon are okay choices, though I prefer the former. 2.) There should be a one-key way to make an INIT not load. The command key is a good choice. 3.) Inits should have NO user interface, NO modal dialogs. If the init needs to talk to the user, it should do it through a Control Panel CDEV. 4.) I don't like TOP's modal dialog. It gets in the way when all I want is to reboot without multifinder. 5.) There already is a good interface for turning INITs on and off. It is called the Finder. Provided you can turn off a buggy INIT so you can get up under the Finder, you can choose what INITs you want by just moving things into and out of the system folder. Arrange your INITs in patterns that make it easier. Apple wants users to use the Finder for this kind of thing, for example the Font/DA mover will be replaced by just dragging fonts and DAs around in the Finder, in System 7, in all likelihood. > The mac is a detour in the inevitable march of mediocre computers. > drs@bnlux0.bnl.gov (David R. Stampf) --- David Phillip Oster -master of the ad hoc odd hack. Arpa: oster@dewey.soe.berkeley.edu Uucp: {uwvax,decvax}!ucbvax!oster%dewey.soe.berkeley.edu
chuq@Apple.COM (Chuq Von Rospach) (11/01/89)
>I would definitely like some sort of unified approach to the handling of >INIT selection, >but, as a user, I would rather be able to bring up a dialog at the >beginning of the INIT >loading process and select all of the INITs to be loaded/skipped at >once, rather than to >wait for each one to load and ask me if I really want to load it. Which is exactly what CE Software's Aask does already. There are a number of other INITs that have this kind of functionality also. > Anybody interested in an expanded rewrite of INIT31? The functionality already exists for people who want it. Does it have to go into INIT31? -- Chuq Von Rospach <+> Editor,OtherRealms <+> Member SFWA/ASFA chuq@apple.com <+> CI$: 73317,635 <+> [This is myself speaking] Aftershock. Bummer.
time@oxtrap.oxtrap.UUCP (Tim Endres) (11/02/89)
In article <32278@ucbvax.BERKELEY.EDU> oster@dewey.soe.berkeley.edu (David Phillip Oster) writes:
3.) Inits should have NO user interface, NO modal dialogs. If the init
needs to talk to the user, it should do it through a Control Panel CDEV.
YES YES YES, I want NO interface. I like little icons scurrying across
the bottom of my screen. I like X's and other indicators.
I HATE MY BOOT PROCESS STOPPING FOR ANY REASON.
The Control Panel is the place I want to go to configure.
If you can't start your INIT until I do the Control Panel, FINE.
lim@iris.ucdavis.edu (Lloyd Lim) (11/02/89)
My two cents: The comment that all INIT icons should write on top of each other seems to be a rather personal and arbitrary choice. It also doesn't go along with the current ShowInit scheme. As for ease of use, this scheme might be better than the current no scheme but it certainly doesn't seem that easy. Three modifier keys are involved although probably only two during a startup when you want to disable one thing or something. Even though there is "slow-motion", there is still some timing skill involved in order to hit the right modifier on the right INIT. I don't think this even begins to compare with any of the INIT managers out there where you just hold down one modifier and you get an explicit list of INITs that you can enable/disable individually or as a group. This is a clearer and easier approach. I don't think you should have to be able to set INIT options at startup. That's what CDEVs are for. Setting INIT options at startup makes the code unnecessarily bigger and violates the dialog at startup no-no. I think the answer for now is the use of one of the INIT managers (personally I like INITPicker). I think the ideal solution for the future is a rewrite of INIT 31 to include the one modifier, explicit list ease of use for all INITs. Only Apple or someone with lots of guts could do this. +++ Lloyd Lim Internet: lim@iris.ucdavis.edu (128.120.57.20) Compuserve: 72647,660 US Mail: 146 Lysle Leach Hall, U.C. Davis, Davis, CA 95616
wdh@well.UUCP (Bill Hofmann) (11/02/89)
In article <32278@ucbvax.BERKELEY.EDU> oster@dewey.soe.berkeley.edu.UUCP (David Phillip Oster) writes: >2.) There should be a one-key way to make an INIT not load. The command >key is a good choice. I thought there was already a defacto one-key way, many INITs won't run if *option* is down (I know all my INITs work this way, as do many I've Nosy'd). In addition, holding down the mouse button should also cause it to fail to run. The reason for not using the command key is that it is used to defeat the launch of Multifinder: I don't want to have to try to catch the exact right time to press command to disable MF without disabling my INITs. -Bill Hofmann
mike@octel.UUCP (Michael D. Crawford) (11/02/89)
IMHO an init should not _require_ one to do any action at all upon booting. For example, BigScreen, a shareware init that is like Stepping Out, puts up a dialog asking you for the desired screen size before allowing the boot to continue. This would be better handled in a control panel document. I like to flick on my mac and hard drive, and leave it be while I do something else for a moment, and come back with the finder open. When programming, one reboots a lot (I do anyway. Maybe when I get better I won't!), and having to fiddle with inits during a programming session makes me just turn them off. A very good way to handle inits is with initCDEV. I have downloaded but not yet tried FreshStart. These are CDEV's and inits that allow you to selectively turn inits on and off, without dragging them. I find dragging inits to be a real drag. Having a single key to disable the loading of any inits at all would be handy. -- Michael David Crawford Consulting for: Oddball Enterprises Octel Communications Corp 694 Nobel Drive 890 Tasman Drive Santa Cruz, CA 95060 Milpitas CA 95035 uunet!apple!vsi1!octel!mike CI$ 72377,623 Tilting at Windmills for a Better Tommorrow.
d88-jwa@nada.kth.se (Jon Watte) (11/03/89)
In article <32278@ucbvax.BERKELEY.EDU> oster@dewey.soe.berkeley.edu.UUCP (David Phillip Oster) writes: >2.) There should be a one-key way to make an INIT not load. The command >key is a good choice. In article <14402@well.UUCP> wdh@well.UUCP (Bill Hofmann) writes: >I thought there was already a defacto one-key way, many INITs won't >run if *option* is down (I know all my INITs work this way, as do many And many INITs I know won't load if the SHIFT key is down. See what we mean ? I suggest Apple includes the guidelines posted here as is, they were well thought through, in a TechNote and in the coming IM VI. >try to catch the exact right time to press command to disable MF without >disabling my INITs. Why not use WaitINIT (my claim to fame) Of course it's FreeWare, just mail me for a copy. It displays a mouse with a flashing arrow, and waits for the mouse button to be pressed, then it continues. And yes, I repeatedly call SystemTask... Happy Hacking ! h+@nada.kth.se == h+@proxxi.se -- This .signature is longer than 4 lines. If you'd like to see it in whole, please send a note to me. I'm h+@nada.kth.se and also h+@proxxi.se 8')