[comp.sys.mac] Mac clone rumor

mfi@beach.cis.ufl.edu (Mark Interrante) (05/20/89)

This is reposted without permission (i'm not sure if any is needed) from:
                   *---== ST REPORT ONLINE MAGAZINE ==---*
 May 05, 1989                                            Volume III  No.86
 R.F. Mariano  Publisher - Editor
 Voice: 904-783-3319  10 AM - 4 PM EDT
 BBS:   904-786-4176    12-24-96 HST

CPU INSIGHTS?
=============
                                         Turning Point:  The End of an Era
                                         ---------------------------------


      James McHugh, President of C.E.K.A., recently announced that he was
selling a hardware Macintosh emulator for the Atari ST for $250-300, which
not only can read/write to Mac Disks, but runs most Macintosh MIDI programs
and doesn't require Apple's Macintosh ROMs for its use.  While Spectre GCR
can already read/write to Mac disks, NO Macintosh-compatible system,
Emulator or otherwise, can operate without the Macintosh ROMs, which hold
significant parts of the Mac's operating system.  So how did they do it?

      The answer to this question is deceptively obvious:  C.E.K.A. has
developed a ROM chipset which CLONES the 128K version of Apple's Macintosh
ROMs. 

[description of Mac  deleted.]

      With the exception of Macintosh Emulators.  When Dave Small invented
this industry in 1986 with the Magic Sac, the only warning that Apple gave
was that he could not bundle the Macintosh's ROMs with it.  Even though the
Magic Sac (and later the Spectre 128) used software to emulate the Mac, it
required Apple's Mac ROMs to function.  Apple's early attitude resulted in
an increasing market for Mac Emulators, such as Spectre 128, Aladdin (a
European Mac Emulator), and Readysoft's AMax, a Macintosh emulator for the
Amiga.  However, it seems that now, with Apple telling dealers not to sell
Mac ROMs to anyone using a non-Apple environment, the popularity of Mac
Emulators has grown a tad too much for Apple's tastes.  And so, with no
Macintosh Clones, no Apple ROMs with which to operate Macintosh Emulators,
and no competition, it seemed as if Apple's monopoly (as well as its legal
department) was going to continue its domination of the industry....

[Description of Phoenix BIOS and IBM clones deleted]

      James McHugh of C.E.K.A. used a variation of the "Clean Room" method
to clone the 128K Apple Macintosh ROMs.  Utilizing over twelve books on the
Macintosh, including Inside Macintosh Volumes I, II, III, IV, and V
(a total of 2224 pages of pure information about the Macintosh), he and his
company were able to singlehandedly produce a Clone of the Apple 128K Mac
ROMs within a 2 1/2 year period.  The result of his labor, collectively
termed the "Macintosh Replacement Project", has just recently been
completed.

      According to C.E.K.A, their 128K Mac ROMs are not only completely
compatible with Apple's Mac ROMs, but run from 10 to 30 percent faster in
most operations, due to the fact that they are written purely in 68000
assembly language (Apple wrote their Mac ROMs using C).  Also, C.E.K.A's
Mac ROMs are much less buggy than Apple's 128K Mac ROMs, performing some
functions (such as memory allocation) more efficiently.

      However, C.E.K.A. has added a few conveniences to their Mac ROMs
which aren't in Apple's Mac ROMs.  In order to prevent possible piracy of
their Mac ROMs,  C.E.K.A stores their Mac ROM code in modified EPROMs
designed at IBM's Research Labs, which ERASE themselves if anyone tries to
dump their code onto disk using software, or copy them using an EPROM
Burner.  This, however, brings up some interesting points.  There are about
30 badly behaved Macintosh programs that C.E.K.A knows of which make the
same illegal memory calls that the EPROMs "protect" themselves against, and
if you run any of these programs, you risk losing your ROMs.  C.E.K.A.
provides a FULL LIST of these programs, and since a pirate may have erased
their EPROMs in an attempt to copy C.E.K.A's code using an EPROM Burner,
C.E.K.A. will not replace any ROMs that were erased UNLESS the program that
triggered the EPROMs into erasing themselves is not on their list of buggy
Mac programs.  Inconvenient, but since software pirates....

      Also, C.E.K.A.'s Mac ROMs provide some defense against any onslaught
by Mac viruses.  According to C.E.K.A., their Mac ROMs monitor all activity
in the Mac's Resource Handler, watching for operations (such as illegal
system calls) which, while not common among ordinary Mac programs, are
usually used in Mac viruses.  If it detects any sign of a Mac virus, a
dialog box automatically appears on the screen with a description of the
problem, its diagnosis of whether it is virus-related or not, and (in case
the program causing the trouble may just be a ill-behaved Mac application)
a prompt on whether to eliminate the problem or not....

      In response to C.E.K.A.'s work, several of the biggest US computer
manufacturers in the industry, and at least one Japanese corporation, are
said to both be funding C.E.K.A.'s research with a war chest of around
100 million dollars, and using the C.E.K.A. Mac ROMs as a basis for their
own development of Macintosh Compatible computers.  Also, C.E.K.A. is
planning to make a pseudo-clone of Apple's NEW 256K Mac ROMs.  Apple's
upcoming revision of their 256K Mac ROMs is said to be upgraded for 32-bit
operation, and to have a 32-Bit Color QuickDraw.  The difference between
C.E.K.A.'s pseudo-256K Mac ROMs and the Apple 256K Mac ROMs will be that
Apple's 256K Mac ROMs require a 68020 or 68030 to operate, and C.E.K.A.'s
256K Mac ROMs will be able to function with a 68000 installed.

      Since some of the Mac "Clones" being made by the companies dealing
with C.E.K.A.'s will be announced before the end of 1989, and given that
the Japanese have wanted to enter the US computer market for a VERY long
time, one could easily see that before 1991....

[description of Atari ST package using Clone chipset deleted]

      C.E.K.A. is a registered licensee of Apple's System/Finder, so with
C.E.K.A. bundling the latest releases of the Mac's System software AND the 
ac ROMs necessary for its operation, ST Users have "plug in and play"
functionality that was lacking in previous Macintosh Emulators.

      C.E.K.A. is also making versions of their Mac Emulator for the NeXT
and Sun Workstations, which will also cost $250.00.  Since the NeXT and
the Sun run Unix, the C.E.K.A. Mac Emulator uses a special driver to allow
them to multitask Macintosh programs as a task under Unix.  However,
because of some aspects of Unix, the C.E.K.A. Emulator will only be 70
percent Mac Compatible if it is run as a task under Unix.  C.E.K.A. also
allows Users to let the Emulator take over the machine, using it like an
ordinary Macintosh.  In this mode, 99 percent Mac Compatibility is assured
by C.E.K.A.  However, the Mac Emulators for the NeXT and Sun/1 workstations
may not appear until the Third or Fourth Quarters of 1989, as C.E.K.A.
plans to use their 256K Mac ROMs in those versions of their Mac Emulator
to allow the NeXT and Sun to run Mac II software....

[description of possible Amiga chipset deleted]

Editor Note:
-----------
Although Mr. McHugh has assured us that the products he speaks of do
exist, and that he has shipped a test unit to us at STReport, we can neither
endorse or verify that such products exist.  When we receive the device
we will provide a complete and impartial review.


-----------------------------------------------------------------------------
Mark Interrante   		Software Engineering Research Center
mfi@beach.cis.ufl.edu		CIS Department, University of Florida 32611
-----------------------------------------------------------------------------
"Imagine what it would be like if TV actually were good. It would be the end
 of everything we know."  Marvin Minsky

trebor@biar.UUCP (Robert J Woodhead) (05/22/89)

In article <20335@uflorida.cis.ufl.EDU> mfi@beach.cis.ufl.edu () writes:
>C.E.K.A stores their Mac ROM code in modified EPROMs
>designed at IBM's Research Labs, which ERASE themselves if anyone tries to
>dump their code onto disk using software, or copy them using an EPROM
>Burner.

The first case is flat out impossible to protect against.  Any debugger
that can single step will be able to read the EPROMS, and worst case,
a modicum of extra hardware could easily snoop out the contents of the
EPROMS (they have to be read during instruction/data fetches anyway, and
you can just monitor the address and data lines).

In addition, it's foolish.  If it's possible to write a program that
trashes the EPROMS, what happens if, just by accident, System 7.0 just
happens to do this?  Ooops.

Bottom line; assuming they have a real product, they will lose more sales
because of pissed off customers trashing their EPROMS (plus god knows how
much $ spent in support) than they will from pirates stealing the EPROMS.

-- 
Robert J Woodhead, Biar Games, Inc.  !uunet!biar!trebor | trebor@biar.UUCP
"The lamb will lie down with the lion, but the lamb won't get much sleep."
     -- Woody Allen.

fiddler%concertina@Sun.COM (Steve Hix) (05/23/89)

In article <20335@uflorida.cis.ufl.EDU>, mfi@beach.cis.ufl.edu (Mark Interrante) writes:
> 
>       According to C.E.K.A, their 128K Mac ROMs are not only completely
> compatible with Apple's Mac ROMs, but run from 10 to 30 percent faster in
> most operations, due to the fact that they are written purely in 68000
> assembly language (Apple wrote their Mac ROMs using C).  

Interesting.  This must explain why Mac Toolbox calls take their
arguments in Pascal rather than C order.  And why the various C
implementations on the Mac use glue routines to pass parameters
correctly to and from the Toolbox routines.

mahan@zaphod.ncsa.uiuc.edu (05/24/89)

I don't know what method CEKA is using to protect their roms, but one
possible way is to have just a few memory addresses trigger the wipe.  Since
a typical rom copy routine is going to read every address.  Since we don't
know which addresses ( or block of addresses ) would trigger the wipe....

lsr@Apple.COM (Larry Rosenstein) (05/24/89)

In article <20335@uflorida.cis.ufl.EDU> mfi@beach.cis.ufl.edu (Mark 
Interrante) writes:
> most operations, due to the fact that they are written purely in 68000
> assembly language (Apple wrote their Mac ROMs using C).  Also, C.E.K.A's

Well this is false.  The 128K ROMs were written 100% in assembler.  Later 
ROM version have included some C code (I think), but are still primarily 
in assembler.

Larry Rosenstein, Apple Computer, Inc.
Object Specialist

Internet: lsr@Apple.com   UUCP: {nsc, sun}!apple!lsr
AppleLink: Rosenstein1

captkidd@athena.mit.edu (Ivan Cavero Belaunde) (05/24/89)

In article <600039@zaphod> mahan@zaphod.ncsa.uiuc.edu writes:
>
>I don't know what method CEKA is using to protect their roms, but one
>possible way is to have just a few memory addresses trigger the wipe.  Since
>a typical rom copy routine is going to read every address.  Since we don't
>know which addresses ( or block of addresses ) would trigger the wipe....

There still would be multiple ways around it if you want to figure out how
to copy them.  You might need quite a few ROMs (to play with and experiment
where they wipe out), but you could just read through the ROMs, recording which
locations trigger the wipeout.  You could even read, wait a few cycles, and
read again to check if the same contents are still there (just in case the
ROM erasure is delayed).  However, if the protection is done this way,
*one* bad system crash that sends the CPU fetching instructions where it's
not supposed to, and your ROMs are gone.  It seems to me that CEKA's protection
scheme is more trouble than it's worth, since pissed off people about wiped-out
ROMs while using their machines can wreak havoc with your reputation as a
supplier as well as yell loud enough to make other people pissed off at you
as well.

I have further reservations about these ROMs, some of which have been
discussed in the net:

1) If development was done in a "clean room" environment (ie w/o looking at
	the originals but only at what they do) then how the heck do they
	work around the code in the system file which is location dependent
	(you know, the stuff that checks the stack to check where it was
	called from and what not).

2) How do they work around Apple's patents on display technology (discontinuous
	regions, specifically)?  Or do they completely disregard them and
	leave themselves wide open for a lawsuit?

3) Who are these people, anyway?  I mean, I was under the impression that
	the 128K ROM code was written in assembly code and "hand-optimized"
	by hotshot 68K programmers.  It seems a little off-the-wall, to
	say the least, for an outfit to appear seemingly out of nowhere
	claiming to have done what they do, and to have written faster code
	than Apple's.  Not impossible, but they're pushing it.

4) How are they going to work around System 7 if Apple decides to put random
	checks inside the System software?

Needless to say, I am *very* skeptical about these people's claims, especially
in light of the various mistakes in the article (Apple's ROMs written in C,
their being able to provide Apple's System and Finder to run on non-Apple
machines [that's a big no-no in the licensing agreement], etc.)  I'll believe
it when I see it, and if that happens I hope to see them squashed in court.

-Ivan Cavero Belaunde

	"War is Peace.  Freedom is Slavery.  ARA is Edible."

EMail: captkidd@athena.mit.edu
USnail: 407 Memorial Dr.
	Cambridge, MA 02139
Phone: (617) 621-0312

rubinoff@linc.cis.upenn.edu (Robert Rubinoff) (05/24/89)

Has anyone actually seen one of these clones?  The description struck me as
very unlikely.  The idea of erasing the (EP)ROM if you try to read it strikes
me as nuts; the machine is guaranteed to self-destruct sooner or later.  And
I don't think many people will be happy about the idea that if they do destroy
the ROM, they can get it replaced eventually (if they can prove it was an
accident).  This will go over real well: my paper's due in 12 hours, but oops!
my machine just self-destructed.  Well, I can get it fixed day after tomorrow
(if the dealer has spare ROMs in stock).  And what business would even consider
buying such a machine?

Not to mention the unlikely claims that they're much faster than Apple's code,
and that it's legal to use Apple software on these machines.

I suspect the information is either drastically garbled or a delayed April
Fool's joke.

   Robert

Cj.Flynn@f823.n102.z1.FIDONET.ORG (Cj Flynn) (05/30/89)

Good C code doesn't take 30% longer anyway...some people jsut like to
complain.


--  
Cj Flynn  via cmhGate - Net 226 fido<=>uucp gateway Col, OH
UUCP:  ...!osu-cis!n8emr!cmhgate!102!823!Cj.Flynn