) (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
denbeste@bgsuvax.UUCP (William C. DenBesten) (10/31/89)
From article <8910310233.AA09123@decwrl.dec.com>, by phil@vaxphw.dec.com (At 'MAC'simum efficiency!): > 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. > 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. I think that the INIT 31 code should be modified to do this for us. After all, the code would then only appear in one place and it would be impossible to create an init that the user didn't know about, which is a good thing in the light of viruses. It should also patch out InitGraf so that unfriendly inits don't erase other icons. [for each init...] > It should display a 'successful' or 'question mark' ICON on startup. > allow the SHIFT key to act as a 'slow motion' startup, > 'pretzel' key is [...] show a 'NO LOAD/UNSUCCESSFUL' > The OPTION key is used by INITs that require configuration. Holding down various keys at just the appropiate time is a clumsy and non-intuitive approach to handling inits. I would like it better if INIT 31 had a mechanism for selectively disabling inits and displaying an x-ed out icon for the init. Being able to communicate with the init and tell it to go into a verbose mode would also be nice. Then we would need only one secret key to convice INIT 31 to ask us what we want to do. In this context, cdevs and rdevs should also count as inits. > 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 believe that convincing every INIT writer to follow a set of guidelines would be difficult to impossible. Fixing INIT 31 would be a much simpler approach. Actually, what I envision is mostly handled with 3rd party init managers. The problem is that INIT developers have to build in their own tricks because they can not count on everyone having an init manager. Perhaps the time is right for apple to incorporate one into the system. Note: I have heavily chopped the parent article. I apologize to the author if I am now quoting out of context. -- William C. DenBesten is denbeste@bgsu.edu or denbesten@bgsuopie.bitnet
isr@rodan.acs.syr.edu ( ISR group account) (11/01/89)
In article <8910310233.AA09123@decwrl.dec.com> phil@vaxphw.dec.com (At 'MAC'simum efficiency!) writes: >From: phil@vaxphw.enet.dec.com (Phil Hunt) >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. The standardiztion of INITS is definetily an idea whose time is needed, but instead of having specific actions assigned to specific keys, I think it may be better to have ANY key other than SHIFT/OPTION/CTRL/CMND pressed cause a 'slow motion' startup, ANY ONE of SHIFT/OPTION/CTRL/CMND should cause a "no load" and OPTION-O be defined as invoking an option dialog. This will keep some compatibility with older INITS, as it seems that many of them use one or another of the "control" keys as an no-load control, I don't know of any (but I don't use many, so...) that use NORMAL keys as "control" keys, so slowing down newer ones won't cause older ones to incorrectly not load. Perhaps the TAB key would be useful as an option indcicator, as some older ones may pick up the OPTION-O as an OPTION. BTW, where do if find the SHOWINIT code? -- Mike Schechter, Institute for Sensory Research, Syracuse Univ. InterNet: isr@rodan.syr.edu msschech@rodan.syr.edu Bitnet: SENSORY@SUNRISE