Aug 87 Mousehole
Volume Number: | | 3
|
Issue Number: | | 8
|
Column Tag: | | Mousehole Report
|
Mousehole Report
By Rusty Hodge, Mousehole BBS
This months MouseHole report was edited on Microsoft Word 3.0, starting with an almost 200k text file and ending up as what you read here. During the course of editing, Word ran low on memory 4 times (Low On Memory, Please Save and Restart), created 6-8 temp files that it did not remove (one was > 160k) and Bombed 3 times. Word 3.01 should be available to registered owners [By order of the Publisher, MacTutor refuses to print the following slang phrase in a family Journal: by the time you read this. -Ed] , but the date (Originally 30-Jun-87) keeps getting pushed back as MS finds more bugs. - Rusty
more SE fan woes...
From: Mysteray
Do you notice any flicker on the left side of the CRT display? Like an up-down jitter. Maybe it will be more easily seen if you cover up the fan intake on the left side on the back. Use your hand to adjust the amount of air flow--the sound will increase in pitch, like a vacuum cleaner whose hose is being closed off. As you adjust the speed there will be a point where a very obvious ripple should be seen running up and down the screen. Is it there? Probably!!
It is caused by the far field (i.e., magnetic field) of the fan motor being spatially modulated by the rotation of the fan impeller, and perturbs the CRT deflection slightly, just enough to be noticed. With the fan at full speed the beat frequency with the vertical scan rate is maybe 6-8 Hertz. If the fan speeds up the beat approaches zero because the frequency difference is smaller.
Anyway, this wobble is becoming increasingly annoying to me. I am getting used to the noise but this jitter is too much. [I agree. Our SE has the same problem. The fan is a custom DC job that uses four magnetic coils to accelerate a disk around, feeding air from one side to the other. Since the power supply is now sealed, Apple apparently chose a DC design. But they seem to be more noisy and interference prone than AC fans. Calling Dr. Loy Spurlock after you design a battery holder for the Mac II, how about a new Fan design for the SE? -Ed.]
System Problems
From: Richard Hyman
A small complaint concerns the strings in systems and finders that identify the version. Most strings are Pascal strings, but one of the strings in the SE system/finder has no length byte. On eof the old finders didnt identify itself correctly ( 4.2 identified itself as 2.2). The content of the strings isnt consistent; the new Mac II system/finder has changed the wording and doesnt have version dates. This inconsistency makes it hard to write version appls that can be rather important on large AppleTalk nets with inexperienced users. The suggestion for this is of course that Apple be consistent in the use of these strings, no matter what standard they use.
PRAM loses the SCSI bus...
From: Jim Reekes
About five times a day I get a call from a user or dealer that just got our 80MB internal drive for his Mac II. It is always the same exact story. I had a system bomb and now I cant get the hard disk to be recognized. Ive reformatted, installed new drivers, and even ran Disk First Aid on it and they all worked. But I still dont get the disk icon on the desktop.
My response is always exactly the same. There is a bug in the Mac II. Many times after a system error, parameter RAM gets trashed. What you need to do is hold Shift - Option - Cmd and open the control panel. Then reboot. Im about to get an answering machine hooked up to my phone to repeat this message to everyone calling me for tech support.
The Mac II as a Workstation...
From: Dave Kosiur
I just spent some time talking to a few people who attended MacWorlds conference for developers last weekend. One interesting comment came out of all this - it appears as though Apples marketing people (and others?) have not the faintest idea of how to market the Mac II as an engineering workstation. One acquaintance went so far as to say that, if the Mac II does succeed as an engr. workstation, it ll be because of a fluke. I think that the Mac II may have great potential as a engr. workstation, but I agree that Apple and its approach to the dealer network arent going to help. What do you think?
[Apples problem is that the dealer network doesnt know anything beyond how to turn on the machine and double-click on a few demo applications. There is a crying need in this country for some good ole fashioned No Fluff computer stores to service the more technically oriented workstation user. See our ad in this issue for readers to identify their favorite No Fluff computer store. -Ed]
Geez!
From: Power Hopeful
Heres a laugh... Im messing with MPW 2.0 commando (neat), and the Prodigy SE in my machine causes the scrolling to be so fast that I cant get it to stop on any of the middle items ! !
Omnis vs 4th Dim.
From: Mick Billesbach
I was at an Omnis developers conference last weekend and had a chance to observe 4th dim. It certainly is slick, but a couple of negatives occurred to me. It definitely seemed slower to open and redraw screens. 4th Dim. creates separate files (icons on the desktop) for a lot of the components of the database. If the name of any of the many files is accidentally changed on the desktop, 4th Dim. cannot find the file and behaves irrationally. [They should read this months feature article from Dave Rausch to find out how to do it right! -Ed].
1 meg SIMM board
From: Wayne Correia
Computer Partners has the nice price on 1 meg SIMM expansion boards. Prices start at <$300.00 each, and they have quantity pricing. The phone number is 714/826-9190 ask for Mac Mike or Dave Lawrence...
Mac II arrives!
From: David Smith
I got my Mac II today! I ordered about the time of the Apple developers conference so that should give you an idea on the backlog. I also ordered two video cards, b/w and color monitors, 80 meg disk and memory expansion. What I got was a bare bones get running system. The Mac, b/w video, one video card. No disk, no memory upgrade, not even the video card expansions. So you can expect a minimum shipment. Fortunately the Datafram 40 xp works just great with it! One big problem: MacWrite doesnt work!! Fortunately someone on Apple Link sent me an underground copy of the yet-to-be-released version 4.6. (Incidentally, you can reach me at D0435 if you have an Apple Link account. Always fun to get mail!)
Commando
From: Rick Boarman
MPWs Commando is slick!! Type in commando <any tool name> and see what you get. Its a graphic interface overlayed on top of the tools. Theres a new chapter in the manual explaining how to use it and how to create your own commandos.
The only things lacking in commando are commandos for commando and saving defaults. Its a pain to always type in commando and whatever tool you want. Itd be nice to just type commando commando and get a list of all commando tools to select from. Also, I wish that if you pass in the parameters for the tool, commando would set up all the right defaults so you wouldnt have to. This is a real pain to do when multiple files and folders are involved.
Calling Commando
From: Chief Wizard
Theres a faster way to call commando for a particular tool. In addition to typing commando toolname, you can type toolname..., where the ... is the single character elipses (option-;).
Another tip: If you hold down the command and option keys when you hit the button in commando that activate the tool, the command line for the tool is written to the worksheet, but isnt executed. This way, you can re-execute the command (and even modify it), without the overhead of going into Commando every time.
Favored Hard Disk
From: The Toolsmith
For anybody who is interested, Ive had my Jasmine 80 for about 2 months now and ZERO problems. Fast as the 40XP I use at work, too. They seem to be for real...
From: Mike Steiner
Ive had very good experiences with my 80 meg CMS. Good experiences as in not blowing up, no bad blocks, etc. It just sits there and does its job. Ive had it for only one month, though, so I cant give it an unqualified recommendation; however, if it behaves the way it has been behaving, it deserves a high recommendation. Besides, we have their tech support person here on the hole (Reekes) in case something does go wrong.
[CMS also has drives up to 320mb for the Mac, and they work on the Mac II, unlike Apples yet to ship 80 meg drive!- Rusty]
Mac SE Hard Disk
From: Wayne Correia
Today, a customer came in to our store with a new Mac SE with the internal MINISCRIBE hard disk mech. It was dead, but I diagnosed it in a funny way. The RED in-use light blinked *** -- *** which is SOS in morse code!...
SE Ram Failures
From: Wayne Correia
If you have a problem with RAM, you will get a SAD MAC screen with a code. to isolate a faulty SIMM on a Mac SE, refer to the chart below:
0000000ESIMM#1 000000XX
0000000ESIMM#2 0000XX00
00000002 SIMM#1 000000XX
00000002 SIMM#2 0000XX00
00000004 SIMM#3 000000XX
00000004SIMM#4 0000XX00
XX in the chart above indicates a non-zero digit in one or both of the positions. An unreadable code often indicates that SIMM #3 or #4 is at fault.
Filter Procs
From: Chief Wizard
If you pass a pointer to a procedure to a routine (i.e. @myFilter for ModalDialog, or @myResume for InitDialogs), then that procedure MUST be at the outermost level of your program. Heres why:
Most current (maybe all) Pascal compilers use address register A6 as a local stack frame pointer. This pointer lets the routine access its own local variables as well as the parameters passed into the routine.
Now, since a procedure (lets call it Procedure B) that is local to another procedure (say, Procedure A), can access the outer procedures variables and parameters, extra steps have to be taken. For example, lets say you have the following structure:
PROCEDURE A(param1 : AType; param2 : AnotherType);
VAR {some variables local to procedure A}
PROCEDURE B(param3 : Type3; param4 : Type4);
VAR {variables local to procedure B}
BEGIN
END;
BEGIN
END;
Procedure A uses register A6 to access its parameters and local variables. Procedure B also uses register A6 for ITS parms and local variables. In general, when one procedure calls another, A6 gets saved and restored, so each procedure has its own A6 value.
The catch is this: procedure B has to be able to access the params and local variables of procedure A because of Pascals scoping rules. So, the Pascal compiler passes procedure As A6 register to procedure B as an extra parameter. This way, procedure B has its own A6, but it also has procedure As A6, because it was passed to B as a parameter.
This causes procedure B to have one more parameter than you specified in the procedure declaration. AND, since the Mac ROM is expecting to call a procedure with a certain set of parms, it doesnt pass the extra A6 parameter. This trashes the stack, and causes a crash.
The net effect of all this is that you have to put your filter procs at the outermost level. Annoying, but not too bad.
Word printing problems
From: Jim Reekes
Make sure you turn RAM CACHING OFF with Word 3.0 !! Youll not be able to print with the System 4.1 RAM CACHE. If you want faster speed, use Words internal caching system.
PageMaker 2.0 RAM warning
From: Laser Dolphin
I would like to warn everyone about a potentially troublesome bug in PageMaker 2.0. If you are going to modify a large graphic, such as by cropping it, PageMaker creates a bitmap version of it for speedy display. If you are doing this in 200% mode, this obviously quadruples the number of bits in the bitmap. I was doing this to a large graphic that covers most of a page (to be used as a background for the text), and had my usual 256K RAM cache on. Sure enough, PageMaker ran out of memory (I have a 1MB Plus). It put up a dialog box to tell me of this disaster, which box would not go away when I clicked OK. It was stuck in a loop, and I had to hit the programmers switch. Moral: have mondo big much RAM when using PageMaker, particularly in this situation. Solutions: more RAM or always disable caching when PageMaking.
Keyboard Polling
From: The Cloud
I need to know exactly how to poll the keyboard each time through the main event loop (alon with my cursor-checking) so that if JUST the option key is down (and the cursor is in a particular region), I can change it. IM says that the only way to do this is to call GetKeys... but this returns a packed boolean array...
Option key
From: DON
You can easily check for a depressed option key in your event loop by simply looking in your event record. The modifiers word in your event record contains a bit which will be set if the option key is down. Do a logical AND on the modifiers word with the predefined mask called (cleverly) "optionKey" (equal to 2048 decimal) to see if the bit is set. Note that you need to be receiving null events to check for this continually during a null event.