[mod.mac] Delphi Mac Digest V3 #10

SHULMAN@RED.RUTGERS.EDU.UUCP (02/08/87)

Delphi Mac Digest        Sunday, 8 February 1987       Volume 3 : Issue 10

Today's Topics:
     RE: color laserwriter cartridges
     Using 400K drive as 3rd drive on Mac+
     MaxMemory 2x4 RAM upgrade (4 messages)
     Doors 1 and 2 in Dark Castle
     Pascal and C interface (8 messages)
     LaserSpeed -> WOW (2 messages)
     RE: Another Mac Interface Comment
     RE: LoTR fonts for the Mac
     draw-grab
     Re: Find an applicaton
     Re: Scuzzy info needed
     Re: Re: Animated watch cursor. (2 messages)
     Re: Hard Disk Controllers?

---------------------------------------------------------------------- 

From: MOUSEKETEER
Subject: RE: color laserwriter cartridges
Date: 5-FEB-22:34: Network Digests

To: jonathan@mitre-gateway.arpa (Jonathan Leblang)
Subject: color laserwriter cartridges

Hi Jonathan,

   Two firms that can help you with color laserwriter carts:

Laser Printer Products, 11 Freeman St., Stoughton, MA 02072
(617) 321-3005. I have only used their black recharging kits, but
I believe they stock several colors. You can either buy a kit and
do the charging yourself (not hard, but no fun either) or send
in your used cart. for charging. They charge $40 to do it for you
with black toner, probably more for color.

Toner Distributors, Barbara LeMaire, 5355-G Avenida Encinas,
Carlsbad, CA 92008 (619) 438-2811. They too sell toners or will
recharge your used cart., prices about the same as above, $40 for
black, $60 for color (choice of brown, blue, red, green). If you
don't have a used cart, they sell reconditioned ones in color
for around $150.

I've found that you can easily expect three rechargings for each
cart. you use, maybe more. LPP above uses a fine quality toner that
seems superior to what Canon packs in the carts we buy from Apple.

Alf

------------------------------

From: UJL0079
Subject: Using 400K drive as 3rd drive on Mac+
Date: 5-FEB-22:32: Hardware & Peripherals

Things I'd like to see someone do. Many of the people who have
upgraded their 128K/512K Macs to Mac+'s have also opted for an 800K
external drive to replace their 400K external drive.  Since the Mac+
has only one external drive port, the old 400K drives can't be also be
connected to the Mac+ to provide the user with 3 disk drives -- 2 800K
and 1 400K.  And yet there's that nice, new SCSI port sitting back
there going to waste. Is there a way to drive a 400K disk drive
through the SCSI port?  And if so, what would the wiring diagram for
the drive-SCSI port adaptor look like? What would be the point of
having a third drive, you ask?  A 400K drive at that?  Because some of
us aren't yet ready for hard disks (still too expensive and far too
unreliable and noisy), but we still need extra disk space for
KanjiTalk, large spelling dictionaries, etc., A 400K drive could hold
the KanjiTalk application or dictionary, allow us to put a large
application(s) on the 800K KanjiTalk system disk and still leave us
with a third drive -- 800K -- for our documents, effectively putting
an end to disk shuffling.  And we do have that 400K drive with little
or no market value just sitting on the shelf.

------------------------------

From: MACINTOUCH
Subject: MaxMemory 2x4 RAM upgrade
Date: 6-FEB-00:42: Hardware & Peripherals

I got the MacMemory 2x4 memory upgrade for the Mac Plus.  The bad news is
that it's still something of a kludge, even though it uses 1Mbit chips and
lists at $799 for the upgrade to 2.5MB total.  The good news is that it
works and doesn't seem to change the voltage much of any.

What I didn't realize before is that 1Mb chips are *twice the size* of
256Kb chips.  This means that the SIMM cards in the 2x4 kit are twice the
size of the Apple memory cards.  When installed, this extra size makes the
top of the chips on one card press tightly against the soldered pins on the
bottom of the other card.  I tried putting one Apple and then one MacMemory
then an Apple then a MacMemory card, trying to get better spacing and heat
escape, but it seems you have to put the two 1MB cards in the first slots
(closest to the 68000).  The logic board goes back into the Mac OK, but not
as easily as it did before.  These cards are supposedly compatible with all
hard disks, but some tweaking of clip-on connectors seems to be required,
and the Radius FPD apparently doesn't have room enough with these cards.

I also didn't realize that you have to *cut* resistor R8 on your Mac logic
board!  This is labelled "RAM size" on the board.

I measured voltages (not an easy task - I ended up putting a push pin into
the mouse port, pin 2, and attaching the analog VOM to that), and as far as
I could tell, there was less than a 0.1 V. change.

When I finally tried booting, I thought I'd ruined the Mac.  It took *so
long* to check memory and boot, it seemed as if it was broken.  But it has
been up and running for two days without incident.  (I do have a System
Saver Mac fan running all the time - I'm chicken.)

The bottom line is that it's a kludge, but the memory is very nice.  I'm
using TurboCharger 2.0 for caching, and I expanded the System heap to 64K
without any repercussions so far.  Speed is a lot better with the cache and
I feel better having the extra RAM headroom for large documents.  ResEdit
seems to run quite a bit faster.  I'd be interested in hearing if anyone has
installed the Dove upgrade which also uses 1Mb chips.

Ric Ford
"MacInTouch" newsletter

------------------------------

From: MACINTOUCH
Subject: RE: MaxMemory 2x4 RAM upgrade (Re: Msg 17110)
Date: 6-FEB-09:38: Hardware & Peripherals

Looking back at the previous message, I thought I'd better test the thing
with the fan turned off.  Being late at night, I not only turned off the fan,
I left it in place blocking the top vent!  No problems overnight, although
it's only about 70 degrees F. in the room.

Postscript 1:  I don't see how Apple is going to be able to do any better
with the space problem (although surface-mount chips will help a *little* and
MaxMemory claims they'll upgrade you free [and also offer a 2-year warranty])
unless they come up with a *very* creative SIMM board design.

Postscript 2:  There ain't nothin on these boards:  8 chips [marked "Japan 8647
HM511000-12 R00157NO] and 8 little yellow cylindrical devices (caps? diodes?)
That's *it.*  The skill involved in developing the product seems to be
all marketing, distribution and purchasing.

Ric

------------------------------

From: PEABO
Subject: RE: MaxMemory 2x4 RAM upgrade (Re: Msg 17110)
Date: 6-FEB-13:10: Hardware & Peripherals

Cutting resistor R8 is not so bad.  It does mean you can't easily undo the
installation, but you could (if you had to) desolder the stubs and put a new
resistor in.  Desoldering the resistor to start with would not be a smart idea
though, since working on the multi-layer Mac board is a job for a skilled tech.

peter

------------------------------

From: PEABO
Subject: RE: MaxMemory 2x4 RAM upgrade (Re: Msg 17115)
Date: 6-FEB-13:24: Hardware & Peripherals

Add 'workmanship' if they assemble the boards.

peter

PS:  The little round things are capacitors.

------------------------------

From: MALOY
Subject: Doors 1 and 2 in Dark Castle
Date: 6-FEB-18:22: Games and Entertainment

  Bill- The patch you wanted for Dark Castle is given here.  First of
all, you'll want to start with a copy of your original disk.  Copy the
file called "Data A" to a disk containing FEdit+ or some other disk
editor. Do a hex search for "4A68FFFA6F04" and replace it with
"4E714E714E71". Don't type the quotes, silly. Also, you'll need to
search for "4A68FFFA6F06" and replace it with "4E714E714E71".  Don't
forget to write the sector back to the disk. (The two sequences above
should be in the same sector.) After the patch is made, copy the
modified "Data A" file onto the copy of the game disk. (Yes, replace
existing "Data A") Now, whenever you type a "1" key you'll go to the
dungeon (i.e.  Trouble 1), and door "2" will lead to the outside of
the castle. (Fireballs 1)
  This should make the game a little more fun to play.

 B. R. Maloy

------------------------------

From: JIMH
Subject: Pascal and C interface
Date: 3-FEB-20:25: Programming Techniques

Well if Apple and IBM can talk i thought i would learn to talk to C
routines! I am working on a code module that is written in LSP and
gets called from a program written in C.  The problem is that Pascal
cleans up the stack before it returns and C wants to do this itself.
Does anyone know how i can get Pascal to leave the arguments on the
stack? I guess i can kludge up an ASM routine to stick some extra
bytes on the stack so it comes out even in the end but i would like a
more elegent solution, any ideas would be gratefully accepted!  thanks
jim

------------------------------

From: PEABO
Subject: RE: Pascal and C interface (Re: Msg 1220)
Date: 3-FEB-22:38: Programming Techniques

Most Macintosh C compilers have a special 'storage class' to declare Pascal
routines.  You do this in C:

     pascal short mumble();

What this does is tell the C compiler to push the arguments on the stack in
reverse order and accommodate the returned value from the Pascal routine.

I don't know of any way you can do the reverse (get a Pascal routine to imitate
a C routine).

peter

------------------------------

From: LOFTUSBECKER
Subject: RE: Pascal and C interface (Re: Msg 1220)
Date: 4-FEB-20:26: Programming Techniques

I would write/debug it in Lightspeed and then compile the final
version in TML Pascal, compiling to .ASM code. Then just squash the
final cleanup and assemble.

Wish I could think of something more elegant. -:ofty

------------------------------

From: JIMH
Subject: RE: Pascal and C interface (Re: Msg 1223)
Date: 4-FEB-20:28: Programming Techniques

Peter, the problem is i am interfacing with someone elses C program and dont
have the option of changing the interface to get there code to conform to
Pascal.  Oh well i got everything working last night. Its something of a kludge
but it works, and my da dad always said "if it ain't broke, don't fix it!"
jim

------------------------------

From: JIMH
Subject: RE: Pascal and C interface (Re: Msg 1226)
Date: 4-FEB-20:31: Programming Techniques

Lofty, actually i just wrote a ASM routine to shove an extra set of arguments (
actually just moved the SP) and take the function result off the stack and put
it in D0.  I call this elegent little routine which i call just before existing
my code module "CK ludge" (grin).  but it works so why fight it.  best jim PS
heard a good description of C today, the guy called it a "write only language",
how true it is!!! A Pascal chauvinist!

------------------------------

From: DDUNHAM
Subject: RE: Pascal and C interface (Re: Msg 1220)
Date: 5-FEB-03:30: Programming Techniques

Since you gotta have glue anyway, if your function is returning a value (all C
compilers I'm familiar with expect a function's value to be in register D0,
while Lisa Pascal leaves the result on top of the stack), it's not all that
inelegant.  More elegant, tho less efficient, would be to write glue that
simulates a C routine, and itself calls a Pascal routine.

------------------------------

From: MACLAIRD
Subject: RE: Pascal and C interface (Re: Msg 1223)
Date: 5-FEB-05:38: Programming Techniques

Jim,
According to the "2/15/85 Software Supplement", the Lisa Pascal Compiler
supports C parameter passing.  The example given is

     Procedure Foo(parameters:parametertypes); C; EXTERNAL;

and from the MPW Pascal manual

     Procedure Allen(howl: string); C; EXTERNAL;

should coerce the Pascal compiler into leaving the arguments on the stack and
the result(s) in D0/D1&A0, if that's the way the Green Hills' compiler does it
(the other 68000 compilers do it that way, I believe).

Laird

------------------------------

From: LOGICHACK
Subject: RE: Pascal and C interface (Re: Msg 1220)
Date: 6-FEB-01:04: Programming Techniques

Jim, if you were using MPW, it would be easy.  That's why its called an
integrated environment.

Paul :)

------------------------------

From: STEVEMALLER
Subject: LaserSpeed -> WOW
Date: 7-FEB-03:52: Business Mac

 Wow.

 I just had a chance to play with LaserSpeed from Think Technologies,
 and I am _very_ impressed!  As a matter of fact, it is quietly printing
 a 25-page Microsoft Word file as I type this message.

 First of all, in typical Think fashion, this is a very pretty program.
 The user interface consists of a Desk Accessory.  It contains buttons
 to contain various aspects of the spooling, and status windows for
 viewing the contents of the print queue.  In the same manner as the
 Lightspeed languages, you can drag names in the list to reorder them.
 This way, you can quickly blast an important memo ahead of your
 associate's 40 ThunderScanned views of Madonna in various stages of
 undress that are currently printing.  But what about the speed?  As I
 said above, Wow.

 These benchmarks are by no means extensive, but were repeated at least
 2-3 times each, so they are somewhat reliable when taken in context.
 This is on a ONE Mac network under ideal conditions.  Equipment is a
 Macintosh Plus, System v3.2, LaserWriter driver v3.1, and a standard
 Apple LaserWriter (non-plussed).

 Times given are the time before control was returned to the user.

 No spooling
 ===========
 Action                 Application                Time
 ------------------------------------------------------
 "Print Catalog"        Finder                     0:52
 Print 2-page document  Microsoft Word             2:06 [1]
     ""             (for the second time)      1:13

 LaserSpeed spooler enabled
 ==========================
 Action                 Application                Time
 ------------------------------------------------------
 "Print Catalog"        Finder                     0:17
 Print 2-page document  Microsoft Word             0:25
     ""             (for the second time)      0:25

      [1] The difference here is apparently because of the
      extra time required by the LaserWriter to image
      the fonts used in my document.  The second time
      through, the fonts were already imaged.

 See what I mean?  Wow!

 Steve Maller

------------------------------

From: PEABO
Subject: RE: LaserSpeed -> WOW (Re: Msg 17138)
Date: 7-FEB-18:03: Business Mac

Does the ability to move things around in the queue require some
special privilege?  After all, what if my associate moves his 40 pix
of Madonna ahead of the MORE treechart I need for my presentation in 7
minutes?

peter

------------------------------

From: DDUNHAM
Subject: RE: Another Mac Interface Comment
Date: 7-FEB-04:00: Network Digests

 > From: chuq@Sun.COM (Chuq Von Rospach)
 > Subject: Re: Another Mac Interface Comment

I think you may well be right -- we don't need more general multitasking, we
need better support for the multitasking we already have (i.e. desk
accessories).  I don't see any technical need for a limit on the number of DAs.

 David Dunham     "Efficiency is intelligent laziness."
 Maitreya Design

------------------------------

From: MOUSEKETEER
Subject: RE: LoTR fonts for the Mac
Date: 7-FEB-22:20: Network Digests

To: pdc@cs.nott.ac.uk (Piers David Cawley)
Subject: LoTR fonts for the Mac

Hi Piers,

Here's a font called CIRTH, which appears to be an excellent implementation
of the Angerthas Daeron, after the rearrangement inspired by the Feanorian
System, and no doubt influenced by the values later assigned by the Dwarvish
Angerthas Moria.

The font was created in 1984 by Bill Andel. Let me know when you find some
Sindarian Dwarves who can read it.

Alf

[ The font has been posted - Jeff ]

------------------------------

From: EVOLUTION
Subject: draw-grab
Date: 8-FEB-01:34: Mousing Around

I am looking for a DA which will allow me to get into mac draw
pictures the same way that art-grabber and artisit let me get into
macpaint docs.

------------------------------

From: BRECHER
Subject: Re: Find an applicaton
Date: 8-FEB-06:15: MUGS Online

To : Tom Dowdy  CML5A9@IRISHMVS.BITNET
Subject: Find an applicaton

If your application has not changed the default volume, GetVol will return the
vRefNum (or WDRefNum) of the volume (or directory) which contains the
application.  When an application is started, its volume is the default volume.

------------------------------

From: BRECHER
Subject: Re: Scuzzy info needed
Date: 8-FEB-06:16: MUGS Online

To: carlton@ji.Berkeley.EDU (Mike Carlton)
Subject: Scuzzy info needed

The SCSI Manager routine SCSIGet arbitrates for use of the SCSI bus.
That is, it causes the Mac to attempt to be the device on the bus
which controls bus transactions.  It will fail if the bus is not free,
i.e., if a device on the bus already has control of the bus.

SCSISelect causes the Mac, which is assumed to have control of the bus, to
select another device as the target of subsequent commands.  It is as the Mac
were to say, "Device, wake up and be ready to receive a command."

If you issue SCSIGet, SCSISelect, SCSIGet, the second SCSIGet will fail because
the bus is not free:  it is busy due to the first SCSIGet.  To find out whether
a device is on the bus, send it a command (usually, Test Unit Ready) after the
SCSISelect.  The sequence would be:  SCSIGet, SCSISelect, SCSICmd, SCSIStatus.
After the SCSIStatus, the bus will be free.

SCSIReset asserts a signal on the bus that causes all devices to
initialize ( loosely speaking, as if their power switches were
cycled); the bus is free after a reset.  I don't know why your SCSIGet
failed after a reset. However, reset should not be issued in the
normal course of events, since it affects all devices on the bus and
may cause some of them to lose the effects of initialization set-up
that was performed by their drivers; the drivers will not know this
has happened, and subsequent I/O to such devices will fail (or worse,
be incorrect without indication of error).

------------------------------

From: BRECHER
Subject: Re: Re: Animated watch cursor.
Date: 8-FEB-06:16: MUGS Online

From: joel@gould9.UUCP (Joel West)
Subject: Re: Animated watch cursor.

Subsequent to MPW 1.0.1  -- i.e., in alpha releases of a later version -- the
MPW library cursor routines were generalized to use resources instead of hard-
coded beach balls.  The CURS resources are the cursors, and the acur resource
specifies their sequence.

------------------------------

From: BRECHER
Subject: Re: Re: Animated watch cursor.
Date: 8-FEB-06:18: MUGS Online

To: sara@mcvax.cwi.nl (SARA)
Subject: Re: Animated watch cursor.

Many QuickDraw routines, including SetCursor, do not alter the heap
configuration.  The only QuickDraw routines that cannot be called from a VBL
task are those that create or expand regions, pictures, or polygons, and those
which might load fonts.  None of the non-text drawing routines nor calculation
routines alter the heap.

------------------------------

From: BRECHER
Subject: Re: Hard Disk Controllers?
Date: 8-FEB-06:17: MUGS Online

To: hamachi@turtlevax.UUCP (Gordon Hamachi)
Subject: Hard Disk Controllers?

You will need a formatter/installer and driver that is compatible with your
controller.  While SCSI is a standard, it allows various optional commands and
permutations, so no single driver can be used with any arbitrary SCSI device.
You needn't worry, however, about incompatibility with Mac system software, or
compatibility with the HD20SC.  The Mac does not contain a SCSI disk driver --
until one is loaded from the SCSI disk at start up time.  The HD20SC has no
special status -- it has its driver loaded from disk just as each third-party
disk does.

What the Mac does contain (in ROM, with RAM patches) is a SCSI Manager, which
provides device-independent routines to access the SCSI bus through the Mac's
NCR 5380 SCSI host adapter.  SCSI device drivers typically contain calls to the
SCSI Manager routines.

Avoid controllers that implement the "Unit Attention" feature, since
they cannot be booted from.  The SMS/OMTI 31xx family or the Adaptec
40xx family are probably the most widely used separate controllers in
Mac products.  Some products use integrated disk-controller combos,
most often from Seagate or Rodime.  The HD20SC uses a Seagate 225N,
with custom changes to provide 532-byte sectors in support of file
tags.

------------------------------

End of Delphi Mac Digest
************************
-------