Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!usc!julius.cs.uiuc.edu!ux1.cso.uiuc.edu!ux1.cso.uiuc.edu!m.cs.uiuc.edu!gillies From: gillies@m.cs.uiuc.edu Newsgroups: comp.sys.next Subject: NeXT Limitations? Message-ID: <61300046@m.cs.uiuc.edu> Date: 23 Nov 90 18:02:00 GMT Lines: 57 Nf-ID: #N:m.cs.uiuc.edu:61300046:000:3167 Nf-From: m.cs.uiuc.edu!gillies Nov 23 12:02:00 1990 What are the main limitations of the software and hardware for NeXT machines? I suspect there is a serious limitation in the malleability of the user interface and UNIX. For instance, you can do the following to a mac: 1. Change the template for window creation (window looks) system-wide? 2. Write GLOBAL patches to sense actions in the systems (like when a particular file is written to disk, or when a user makes a particular action with the mouse / keyboard, then pop up a special menu, etc). 3. Add functions keys (FKEYs) to the system (special keyboard patch). 4. Sense inactivity of keyboard/mouse and launch a screen saver 5. Completely supercede some graphics primitives for fast animation in certain special cases, YET, still continue to function in harmony with the toolbox (for instance, MS-Word seems to use special screen-scroll algorithm when the text window is in the default screen location; bit alignment doubles scrolling speed, and does not interfere with other programs). 6. Do weird things like make the mouse wrap around on the screen, make eyes follow mouse on screen, muck with color table arbitrarily, do fast animation of up to 50 small (32*32 pixel) objects, etc. 7. Force a redraw of the screen and capture all the postscript. 8. Put a real-time clock somewhere useful (in menu bar or in icon). 9. Take over the hardware at lowest level (i.e. ethernet) and do something neat / fast / different (this is a bane of UNIX). I.e. make the machine transmit XNS packets, or INIT a floppy disk in 5 seconds (without verifying blocks are good), etc. Can I do all these things without hacking the NeXT kernel? That seems to be the big disadvantage about most UNIX systems I've seen -- not enough malleability without recompiling the kernel. Does the NeXT have the concept of an "INIT" (user-installed boot-time patch)? The mac has some dumb limitations: 1. Limit on fonts in menu (8) (this may be fixed, I don't know) 2. Painful way of installing fonts, DA's, FKeys 3. Zillions of special-cases must be made to get software to work (does this machine have color quickdraw? Are we running multifinder? Are their multiple monitors? How much memory can we work with? etc. etc. etc.) 4. Some pieces of hardware have almost zero system support software (i.e. no language and little standardization for sounds) 5. Jumpy mouse (interrupts off) when floppy disk is active. 6. Broken printing architecture 7. Broken on purpose in many areas, so that 3rd-party software writers can make money "fixing" it. I.e. no backup software, no screen saver, no text editor, (almost) no disk scavenger / repair / recovery utility, no way to partition a disk, crippled "find" program, crippled scripting program, no supplied way to invert screen video. What is the mechanism for customizing the NeXT? I've used one other workstation (Xerox XDE/Viewpoint) and the method for customization was pretty awful (in former, build one huge file with magic words, in latter, no customization was possible). The Mac's control panel is a great step forward.