I will gladly e-mail/post my 8086/286/386 detect code
in exchange for 486 detect code.
--
Daniel Gross \ My opinions ALWAYS
FLOW Research, Inc. | reflect those of my company.
ent...@panix.com | If yours don't, consider quitting.
>Intel released "standard" assembler code fragments which
>let you determine the CPU type you're on. These are now
>in widespread circulation. But I haven't seen anything
>on detecting a 486 (which *passes* the 386 detect test).
You might try the following (I *think* it should work, but I haven't
actually tried it...):
AND SP,0FFFCh ; put SP on 4-byte boundary
PUSHFD ; save the EFLAGS register
POP AX ; low-order word of EFLAGS
POP BX ; high-order word of EFLAGS
MOV CX,BX ; copy high-order word of EFLAGS
XOR CX,4 ; invert AC (alignment check) flag
PUSH CX ; put new EFLAGS on stack
PUSH AX ; ...
POPFD ; pop the EFLAGS register
PUSHFD ; save the EFLAGS register
POP CX ; low-order word of EFLAGS (to be thrown away)
POP CX ; high-order word of EFLAGS
PUSH BX ; in any event, put the flags back the way
PUSH AX ; they were to begin with
POPFD ; ...
CMP BX,CX ; was AC change preserved?
JNE IS_486 ; yes - on a 486
IS_386 ... ; no - on a 386
The 486 has a new flag in the flag register that causes the processor
to issue an interrupt if a misaligned operand is referenced. I think
the 386 will always write this bit out as 0. The above code fragment
should change the state of the bit on a 486 and presumably this change
will be reflected in successive references to EFLAGS...
Jonathan
>Intel released "standard" assembler code fragments which
>let you determine the CPU type you're on. These are now
>in widespread circulation. But I haven't seen anything
>on detecting a 486 (which *passes* the 386 detect test).
I guess I don't understand your comment about "passing"
the 386 detection test. All of the detection code that I
have seen checks for 8086, 80286, 80386 and 80486 in sequence.
You only *try* the 80486 test if the chip appears to be at
least an 80386 ...
Anyway the standard test for an 80486 is to attempt to set
and clear the AC bit (bit 18, or 0x40000) of the eflags
register - this bit can be set and cleared on the 80486 but
not on previous processors.
the code looks something like this (assuming Intel / Microsoft
style assembler mnemonics and that you are running in real mode) ...
mov bp, sp ; save sp
and sp, 0fffcH ; align sp to avoid possible AC fault
pushfd ; save original eflags
pushfd ; and get a copy
pop eax ; in eax
xor eax, 040000h ; flip AC bit
push eax
popfd ; try to load new value into eflags
pushfd ; and get it back
pop edx ; in edx
popfd ; restore original eflags
mov sp, bp ; restore original sp
cmp eax, edx ; see if we were able to change AC
je is_486 ; yes - it's a 486!
; else not a 486 ....
--
================================
Marty Del Vecchio
Software Engineer
Shiva Corporation
** Everett Kaser Hewlett-Packard Company
** ...hplabs!hp-pcd!everett work: (503) 750-3569 Corvallis, Oregon
** eve...@hpcvra.cv.hp.com "Today is a good day to die."
>Intel released "standard" assembler code fragments which
>let you determine the CPU type you're on. These are now
>in widespread circulation. But I haven't seen anything
>on detecting a 486 (which *passes* the 386 detect test).
Probably simplest would be to take over the illegal instruction interrupt,
and execute a real-mode 486 instruction which is not a 386/7 instruction.
Be sure to give back the interrupt when you are done with it.
--
216-...@mcimail.com 7070...@compuserve.com art...@pnet01.cts.com (personal)
a_r...@dsg4.dse.beckman.com (work)
My opinions are my own, and do not represent those of my employer.
[Forgive my ignorance, but...]
Are there any such instructions which can only be executed on a 486?
I thought that a 486 had the same instruction set as a 386, but with an
on-chip 387 and cache.
While we are on the subject, what is a 486-SX? And is there a code sequence
to detect if your CPU is a 486-SX?
Fergus Henderson. [sick of .sigs]
>Fergus Henderson. [sick of .sigs]
David e. Doughty
dou...@julia.ColumbiaSC.NCR.COM
sa...@hubcap.clemson.edu
> I haven't seen any code for this, but I imagine you could differentiate
> between a 386 and a 486 by the different sizes of the prefetch queue. To do
> this, you'd probably have to write a routine that modifies itself close
> enough to the current CS:IP so that a 386 would reflect the change but a
> 486 wouldn't. Not very helpful, but just an idea.
This might work, but I would hazard a guess that you would run into trouble
with onboard or secondary caches. The changes would no doubt be written to the
cache, only to be fetched directly for instruction execution.
I have a similar piece of code that allows me to differentiate between 80x86 and
80x88 chips by writing to an odd address. The penalty picked up by the 80x86
for the odd address, breaks the tie.
A useable approach (I haven't checked this one out yet) would be to make use of
the new AC (Alignment Check) flag in EFLAGS. The i386 manual states it should
be 0, so hopefully the following should work (I'm assuming we know it's at
least a i386):
PUSHFD ; Save the old value of AC
PUSHFD ; Put EFLAGS on stack
POP EAX ; Get into EAX to set AC
BTS EAX, 18 ; Set the AC bit
PUSH EAX ; Store changed AC
POPFD ; Load back into EFLAGS
PUSHFD ; Write back (i386 should reset AC to 0)
POP EAX ; Get back into EAX to test it
POPFD ; Restore original value of AC
BTS EAX, 18 ; Test value of AC
; Now CF := (Machine = i486)
Could somebody please try this and let me know if it works?
Andries
*---------------*--------------------------------------------------*
* __ * APJ Dippenaar (a...@sunvax.sun.ac.za) *
* /| \ * University of Stellenbosch, South Africa *
* /__|__/ *--------------------------------------------------*
* / | * *
* / \__| * I may be temporarily down, but I'm never out *
* * -- Me *
*---------------*--------------------------------------------------*
|> [Forgive my ignorance, but...]
|> Are there any such instructions which can only be executed on a 486?
|> I thought that a 486 had the same instruction set as a 386, but with an
|> on-chip 387 and cache.
|>
|> While we are on the subject, what is a 486-SX? And is there a code sequence
|> to detect if your CPU is a 486-SX?
|>
|> Fergus Henderson. [sick of .sigs]
There are 6 instructions that the 486 has wich the 386/387 don't have:
XADD exchange & add
BSWAP byte swap
CMPXCHG compare & exchange
INVD invalidate cache
WBIND write+invalidate cache
INVLLPG invalidate tlb
I am not sure that all the mnemonics are spelled correctly, but i hope so.
The 486 also has more test-registers and uses more bits in CR0, because of the
cache.
A 486-SX is a 486 without the 387 and with a 16-bit bus. It could be detected
by first detecting a 486 instruction like BSWAP, then attempting a floating-point
operation. This will not work if you also have a 487, but in that case I think the only difference from a 486 would be speed.
It is possible to detect speed difference by measuring the speed of 16-bit
and 32-bit writes to memory. On a 486 the speed should be the same, on
a 486SX the 32-bit writes would be slower because of the 16-bit bus.
Detecting processors could have been so much easier if Intel had included
an extra register containing the processor type...
Or, do 32bit reads on odd and even boundries. On a 486sx they will take the
same amount of time, on a 486, the even boundy reads will take less time.
This method will also work on the 386/386sx line.
Michael
--
Michael Kaufman | I've seen things you people wouldn't believe. Attack ships on
kaufman | fire off the shoulder of Orion. I watched C-beams glitter in
@eecs.nwu.edu | the dark near the Tannhauser gate. All those moments will be
| lost in time - like tears in rain. Time to die. Roy Batty
>A 486-SX is a 486 without the 387 and with a 16-bit bus. It could be detected
>by first detecting a 486 instruction like BSWAP, then attempting a
>floating-point operation. This will not work if you also have a 487, but in
>that case I think the only difference from a 486 would be speed.
>It is possible to detect speed difference by measuring the speed of 16-bit
>and 32-bit writes to memory. On a 486 the speed should be the same, on
>a 486SX the 32-bit writes would be slower because of the 16-bit bus.
Does the 486SX really have only a 16-bit bus? I know the 386SX has a 16-bit
bus, but I thought the 486SX was the same as a 486, except for the math
coprocessor. If it really has only a 16-bit bus, how could Intel be pushing
the 486SX as being better than a 386DX?
Sanjay Aiyagari (S.K.Ai...@cornell.edu)
Doug
Two: and 486SX does *not* have a 16-bit bus. It has a full 32-bit bus, 8K
onboard chache, and burst mode memory transfers. There are two things which
the 486SX does not have -- a *functional* floating point unit, and a _raison
d'etre_.
michaelkjohnson
john...@stolaf.edu
I don't do .sig's
Hmmm, as a side track to this dicussion, has anyone noticed television
commercials by Intel on their 486 SX?
It starts with an outside view of a 486 SX computer. Then, the viewer
goes in through the disk drive, flies over the motherboard, weaves
through small clearences between the peripherals and eventually ends up
looking at an installed 486-SX and a neon sign over an empty socket
nearby flashing "An Upgrade Path" (or something like that).
From the looks of it, Intel is trying to promote this idea _ALOT_.
And why not? It's like 92 octane gasoline and bottled water... If
enough people believe its worth, they will buy it.
By the way, if anyones know how they managed to 'film' this ad, I am very
interested. I can't see how anyone could make a camera "that small", and
the images looked too realistic to be generated or constructed with a model.
>michaelkjohnson
>john...@stolaf.edu
>I don't do .sig's
--
Joseph Chiu, Dept. of Computer Science, California Institute of Technology
1-57 California Institute of Technology, Pasadena, California 91126
I have read with amazement all the various ways of detecting a 486,
considering how many times this question has come up before.
For a _clean_ way of detecting between the 8088/86, 80286, 80386,
and 80486 CPUs, then check page 513 of PC Magazine, November 26, 1991.
It is PC Magazine's 8th annual printer issue. Buy the issue or borrow
your friend's and make a Xerox copy. There is no detection in the code
for an 80186, because folks don't normally use the 80186 in PCs (the
only exception I know of being the late Tandy model 2000). If you need
to determine between an 8086 and an 80186, then you can do a rotate with
the CX register set to 32. On the 8086 the register used as the operand
will be cleared, but the 186 and above corrected this bug by shifting
with CX mod 32. Do this _after_ you've determined you're _not_ running
on the 80286 with an appropriate 80286 instruction sequence.
--
William H. Beebe, Jr. - wbe...@bilver.UUCP
UUCP - {ucf-cs,peora,uunet}!tarpit!bilver!wbeebe
- bilver Public Access Unix, Orlando FL
- (407)644-8327 1200/2400 24 hours 8N1
It is just a guess, but I suspect that the "disabled" floating point unit
on a 486SX is one that failed testing. That is, it could not have been
sold as a 486 anyhow. Intel may have put extra logic on chip so that
they could cleanly shutdown the floating point unit if it had a flaw.
Using a laser to cut a line or a programable fuse is a common technique
to support redundant logic on circuits. This is, of course SPECULATION.
Tom Griest
After RESET, both the 386 and 486 have the processor ID (3 or 4) in the
DH register and the "Stepping ID" in the DL register. Any decent "boot"
prom should save this information and provide it to the application via
a system call. I would not like to see a register dedicated to this
purpose, since it would increase cost and provide no additional benefit.
However, it would be nice (for software vendors) if the processors would
also have a unique chip ID that could be used for licensing control.
Tom Griest
NO NO NO!!!!!!!!
Then what happens if your chip (or, if a motherboard ID, motherboard)
fails ?? YOUR PROGRAMS STOP WORKING!!!!
***THIS IS A PARTICULARLY ******BAD***** FORM OF COPY PROTECTION AND
IS **ABSOLUTELY** UNACCEPTABLE!!!!!
I would **NEVER** buy any computer with such a disaster in it. And I hope
no one else would either. I thought that copy protection was dead. I
sure hope it is.
Doug McDonald
The 486 has three new user instructions, BSWAP which does a 32 bit byte
swap in a register, and XADD and CMPXCHG which are synchronization primitives
more sophisticated than XCHG. But it's probably still easier to see if you
can set the new AC flag in the flags register.
>While we are on the subject, what is a 486-SX? And is there a code sequence
>to detect if your CPU is a 486-SX?
It's a 486 with the floating point turned off (or in the newer chips, not
there at all.) You detect it by the usual FPU presence test.
--
John R. Levine, IECC, POB 349, Cambridge MA 02238, +1 617 492 3869
jo...@iecc.cambridge.ma.us, {ima|spdcc|world}!iecc!johnl "You can take the
girl out of New Jersey, but you can't take New Jersey out of the girl."
A 486SX is a 486 without a floating point processor. That's what the
"block box" is documented to contain. Worrying about how Intel chooses to
build these black boxes is pointless.
--
* Dana H. Myers KK6JQ | Views expressed here are *
* (213) 337-5136 | mine and do not necessarily *
* da...@locus.com | reflect those of my employer *
* "Dammit Bones, spare me the lecture and give me the shot!" *
Glen
I was told (unconfirmed internal rumour) that LucasFilm's ILM
(Industrial Light & Magic)
was paid to do it. That should explain everything.
--Jim Trethewey, $WORK = fla...@mithril.intel.com, $HOME = flamer@alfirin
5200 NE Elam Young Parkway HF3-73, Hillsboro OR 97124-6497 (503)696-5444
All Sun workstations have serial numbers in PROM. Maybe you wouldn't
buy such a computer, but since Sun is the largest workstation producer,
obviously someone does.
I think your concern about your processor failing is a bit extreme. The
problem with floppy disk related protection schemes is that the disks do
get lost or develop read errors. This is very rare with processor chips.
Electronics do fail however, and I recognize there is inconvenience in
having to move chips around (or more likely call the software manufacture
and get a number to enter into a "fixup" program).
I know software packages like Interleaf on HP workstations require a
plug for an I/O port that provides a serial number.
Protection schemes are not popular with many and it is a hot topic
that probably does not belong on this newsgroup list. Let's take
the philosophy stuff off-line and stick to processor issues here.
Tom
It'd seem to me that chips which pass the 486 testing suite in all but the
FP unit would be applicable to becoming 486sx'es, thus decreasing the
number of defects. However, not being an EE, I don't know if this is
feasable.
Doug
Read page 3-42 of the "i486 Microprocessor Programmers Reference Manual"
More official stuff to distinguish 386's from 8086's and 286's can be found
in the 386 manual. Intel gives away such manuals if you have a good
story. If you don't, they sell them cheaply enough. They can even be
found in bookstores. 1-800-548-4725 looks like a good #. They say they
take VISA, MasterCard, or American Express.
It is plausible that Intel would find it awkward to make future members of
the *86 family which would give grossly inaccurate answers to code
fragments found in their manuals. It seems likely that fragments from
PC magazines or netnews articles will be less constraining.
More amazing than the things you can find by RTFM'ing is the number of
people who don't.
Vernon Schryver, v...@rhyolite.com
>A 486-SX is a 486 without the 387 and with a 16-bit bus. It could be detected
>by first detecting a 486 instruction like BSWAP, then attempting a floating-point
>operation. This will not work if you also have a 487, but in that case I think the only difference from a 486 would be speed.
I beg your pardon, but the 486SX is a 486 _without the math coprocessor_.
It is also speced at 20MHz, while a standard 486DX starts at 25MHz.
Further, a 487 is nothing more than a 486DX, that is, another 486 with the
FPU. When a 487 is installed in a 486SX system, the SX is disabled.
This has been pointed out in more than one trade publication, and in
most quarters roundly denounced.
I would assume (having not done this myself) that once you had determined
you were on a base 486 chip that you would then attempt to perform FPU
detection just like you would on a 386-based machine. And heaven knows
that there's plenty of published code showing how to do that.
>Detecting processors could have been so much easier if Intel had included
>an extra register containing the processor type...
Only partially correct. I quote first from the 1990 Microprocessor data
manual, page 4-256, section 5.7 of the 386DX section:
"To assist 386 DX users, the 386 DX after reset holds
a component identifier and a revision identifier
in its DX register. The upper 8 bits of DX hold 03h as
identification of the 386 DX component."
Then, on page 4-471, section 5.6 of the 386SX section:
"To assist users, the 386 SX Microprocessor after
reset holds a component indentifier and revision iden-
tifier in its DX register. The upper 8 bits of DX hold
23H as identification of the 386 SX Microprocessor
(the lower nibble, 03H, refers to the Intel386 DX Ar-
chitecture. The upper nibble, 02H, refers to the sec-
ond member of the Intel386 DX Family).
The i486 is 0400H + revision ID. I don't have the manual for the 486SX
to determine what its reset identifier is. I don't remember what state
the 86 or 286 registers are in after reset.
If you're designing the system from scratch, identification is moot.
You write your code towards the processor and embed it. If we're going
to throw blame, then throw a little at the BIOS cloners; if I can call
a ROM bios function and get an equipment byte, then why can't there be
an extension call to return the type of processor (if one already exists,
I'd sure like to hear about it).
Just to add more fuel to your Intel bashing (wait, why are you doing
this on comp.sys.intel?) Motorola just did the same thing for '040 chips.
Of course, the LC040's can't take any coprocessor.
The reality is that it is **CHEAPER** to make a 486SX than a 486DX. Think
about all the 486 chips that are functional except for the FPU. Without the
486SX label, all those chips are scrape. With the 486SX label, they turn
into real money, which means Intel can sell the complete 486DX for a lot
less money and still make the same profit. (Check the recent price drops
for the 486DX). This appears to me to be a "Good Thing".
--
Stanley Chow BitNet: sc...@BNR.CA
BNR UUCP: ..!psuvax1!BNR.CA.bitnet!schow
(613) 763-2831 ..!utgpu!bnr-vpa!bnr-rsc!schow
Me? Represent other people? Don't make them laugh so hard.
I do not believe the 486SX has a 16 bit external bus.
Is the FP unit in the 486 a complete 387, or is it missing some opcodes, as
the 68040 is missing some 68881/2 opcodes? Could that be used to tell if you
have a real 486 or a 486SX+387 (if such a combination is possible)?
Note that the 487SX is a complete 486, so there is not likely any difference
between a "486SX+487" and a "real" 486.
(as an aside, is everyone else as disgusted by the recent intel ads for their
FPU and the 486SX "room for expansion" scam? Is any company actually making
a motherboard that accepts a 487 instead of simply having a socket for a 486?)
--
-- Peter da Silva
-- Ferranti International Controls Corporation
-- Sugar Land, TX 77487-5012; +1 713 274 5180
-- "Have you hugged your wolf today?"
Close. It's one that was never tested. They actually probably DO get slightly
better yeilds out of the 486SX line for that reason, but it's not composed
of rejects.
Speaking of which (and why this is xposted to a.f.c), there are frequently
stories about chip X being composed of the rejects from chip Y, or of 25%
resistors being the ones that failed the 5% test, or of SS floppies having
flaws on the backside... how often does this actually happen?
OK, OK, I recant my former position on the 486SX. It was obviously based on
old knowledge and faulty. I have found out through mail and news that there
are enough failures on the 486DX's floating point unit that it makes economic
sense to have the 486SX. I have also been told that Intel is now making the
486SX *without* the f-p unit at all. I have no problems with this. Thanks
to all who have corrected me.
Well, I don't have specific information about Intel chips, but based on
experiences with other semiconductors, there is an element of truth in the
statement. However, it's not a simple pass/fail phenomenon. One criteria
used to classify a chip might be clock rate; the chips are assembled and
tested, and then branded with an appropriate clock rate. This process is
clearer with respect to simple semiconductors, such as transistors. Completed
parts are sorted with respect to gain, breakdown, etc, and then branded with
a part number. The art of manufacture is maximizing yield of the most
valuable components, of course. As a small aside - years ago, when I was first
exposed to this side of manufacturing, the company I worked for bought
transistors from GE that had a common part number, but color-coded on the end
as to gain range. They were also shipped in a barrel, and priced by the
pound 8-)
With respect to IC's, I was told that a "house number" part is often a
standard part held to tighter tolerances, or, on occasion, looser tolerances,
when the user's circuit design allows it. The user gets a lower price on
the part, because of the increased fabrication yield. Interestingly, if the
part is popular, all parts shipped may be at the limits of the range, if all
the "good" parts are diverted to mainstream production.
Anyone out there remember selecting commercial replacements for
PDP-11 Unibus interface chips?...
Resistors may not fall into this category - modern production
techniques are pretty good. I recall testing a couple hundred 10% resistors
and finding a standard deviation of about 1%, but the mean value was close
to the edge of the 10% range. The floppy disk situation may have been true
in the early days of the double-sided disk, but I suspect that eventually
manufacturers simply skipped final polishing/testing, or just testing, on
one side.
--Joe Pollock
A
A
A
A
A
A
Don't you hate people who send out authoritative sounding but wrong news
messages? The 486SX has the same 32 bit bus interface as the 486. Only
the floating point is missing. Also, it's probably easier to test for the
new flag bits on the 486 rather than try a BSWAP. After all, if you're
on a 386 some helpful operating system might trap and emulate BSWAP so that
486 programs will work.
As suggested elsewhere, there is no useful difference between a 486DX and
a 487SX, even though the 487SX is slower and costs more.
>Two: and 486SX does *not* have a 16-bit bus. It has a full 32-bit bus, 8K
>onboard chache, and burst mode memory transfers. There are two things which
>the 486SX does not have -- a *functional* floating point unit, and a _raison
>d'etre_.
The reason for the 486SX is cost, pure and simple. It is a lot cheaper to
_test_ the core CPU than it is to test the core and FPU. A lot of people
don't _need_ the internal floating point, and a lot that do can get by
nicely with emulation. Those that need real floating point will buy the
full-up chip, and if they need more, then they'll get a Wytek. So it's
not quite like 92 octane and bottled water. Oh yes, one other factoid.
A 20 MHz 486SX has the same general performance as a 33 MHz 386. The
supporting motherboard is going to be cheaper to make for the 20 MHz
part than it would be for the 33 MHz part. Think about it.
--
William H. Beebe, Jr. - wbe...@vicstoy.UUCP
UUCP - {ucf-cs,peora,uunet}!tarpit!bilver!vicstoy!wbeebe
- vicstoy Public Access Unix, Orlando FL
- (407)299-3661 1200/2400/9600 V.32 24 hours 8N1
This is the same "feature" found on a number of mainframes.
As far as copy protection goes, copy protection will only cease to exist
when software is no longer pirated for _any_ reason, and the rights of
the software authors are respected. If you don't want my product because
it costs too much or it lacks certain features, then don't buy or use it.
That's what markets are all about. But don't use my work and not pay me
for my effort.
This can become a long, convoluted argument, generating much heat and
little light. I would strongly suggest we move this thread of conversation
to something else other than here. Email would be appropriate. I only
comment here because of the strong and misguided objections of the poster.
There are two sides to this copy protection issue, and I can play both
sides with ease, but let's do it somewhere else.
> > It is just a guess, but I suspect that the "disabled" floating point unit
> > on a 486SX is one that failed testing.
>
> Close. It's one that was never tested. They actually probably DO get slightly
> better yeilds out of the 486SX line for that reason, but it's not composed
> of rejects.
>
As Spock would put it, "This reasoning is illogical". :). Logically, if
the floating point unit is functional, it would become a 486DX --- since
486DX is still trying to keep up with demand. So, I don't think they will
take one with good / untested floating point unit and label it 486SX.
> Speaking of which (and why this is xposted to a.f.c), there are frequently
> stories about chip X being composed of the rejects from chip Y, or of 25%
> resistors being the ones that failed the 5% test, or of SS floppies having
> flaws on the backside... how often does this actually happen?
>
Same reasoning as above. If the more strigent parts are in short supply,
then the likelihood of this story being true is high. If the process used
to produce the part far exceed the strigent test, then it is probably not
true.
Take 386 for example. It seems logical that in the beginning, as the
IC process is being modified to produce 25 or 33 MHz parts, the parts
would probably be tested at 20 MHz to start with and progressively up
the frequency range until they fail or until they pass the 33 MHz test.
Then the parts are labelled accordingly. As the years go by and IC process
improves, the number of chip failing 33 MHz test which are still functional
is getting rare (ie. the process improved so that almost all parts pass
33 MHz test; only those that are totally dead fail the test). So, they were
probably all tested at 33 MHz only and labelled 20 MHz, 25 MHz and 33 MHz
depending on demand. Since testing at 20 MHz would be more like a waste of
time now.
Hope this 2 cents worth is making some sense. :)
Regards, ___o``\________________________________________________ ___ __ _ _
Peter Lim. V````\ @ @ . .. ... .- -> 76 MIPS at under US$20K !! --- -- - -
/.------------------------------------------------ === == = =
>--_// . .. ... .- -> 57 MIPS at under US$12K !!
`' . If you guess SUN, IBM or DEC, you guess wrong !
E-mail: pl...@hpsgwg.HP.COM Snail-mail: Hewlett Packard Singapore,
Tel: (065)-279-2289 (ICDS, ICS)
Telnet: 520-2289 1150 Depot Road,
Singapore 0410.
#include <standard_disclaimer.hpp>
A small point, perhaps, but my understanding is that the 486SX has a
co-processor, but it's DISABLED. The 486SX is a marketing step, not a
technological one.
-Joel
(jo...@wam.umd.edu)
I'll post here because I consider it important: copy protection is BAD,
period, no possible exceptions. There are no two sides to this issue.
Doug McDonald