I've downloaded a version of MP/M-86 which I would like to install on an old
IBM XT. The downloaded archive consists of the binary files taken from 3
disks. They are not disk images. How would I go about creating a bootable
disk from this archive? What was the original media format for this OS ?
Any help would be much appreciated !
Cheers,
Dave
PS. Having a go at this as I seem to have come to a dead end with my
attempts at booting my Gemini system :(
On 2003-01-09 da...@darkstar64.freeserve.co.uk said:
>I've downloaded a version of MP/M-86 which I would like to install
>on an old IBM XT. The downloaded archive consists of the binary
>files taken from 3 disks. They are not disk images. How would I go
>about creating a bootable disk from this archive? What was the
>original media format for this OS ?
>
>Any help would be much appreciated !
1. First, make certain that the version of MP/M-86 you have is
designed for the IBM PC or PC/XT.
If you aren't certain, use a binary file browser under DOS to
examine the MP/M-86 xxxxxxx.SYS file, and look for text strings
in that file.
You should find a line of text that says something like "MP/M-86
For The IBM PC and PC/XT."
There were many different permutations of MP/M-86, and each one
was specific to the hardware platform for which it was designed.
Non-IBM versions of MP/M-86 will =NOT= run on an IBM or clone.
The non-IBM machines were totally proprietary, and were not IBM
compatible.
If you find a text string in the .SYS file that mentions -any-
non-IBM computer (such as Eagle PC, Columbia Data Products, DEC
Rainbow, etc.), ABORT THE PROJECT NOW. You're dead.
The prime directive:
Non-IBM versions of MP/M-86 will =NOT= run on an IBM or clone,
and =CANNOT BE MADE= to run on an IBM or clone.
If you have "MP/M-86 For The IBM," then continue.
2. Be sure your XT has a genuine 360k DS/DD drive installed, and
NOT a 1.2 meg high density drive.
3. Download the CP/M-86 emulator for DOS from:
http://www.seanet.com/~klaw/dosfiles.htm
Look for the file named 86DOSUTIL.ZIP, and download it.
4. While you're at that site, also download the DOS-based disk file
transfer program 22DISK.
Those two files will give you the software tools you need.
5. Under DOS, use the CP/M-86 emulator (CPM.EXE) to run the MP/M-86
DSKMAINT.CMD program. Use DSKMAINT to format a floppy disk as
"double-sided."
6. After formatting the floppy disk, use 22DISK under DOS to transfer
the MP/M-86 "xxxxxxx.SYS" file to that disk. This is the MP/M-86
operating system file.
CP/M-86 and MP/M-86 disk formats are identical, so use the "IBM2"
disk identifier for 22DISK. It's easiest if you set a DOS environ-
ment variable before you begin: SET CPMDISK=IBM2
7. Now transfer the remaining MP/M-86 files to the floppy disk with
22DISK.
8. Put the floppy disk in your XT's A: drive, reboot, and enjoy MP/M-86!
-----= Posted via Newsfeed.Com, Uncensored Usenet News =-----
http://www.newsfeed.com - The #1 Newsgroup Service in the World!
-----== 100,000 Groups! - 19 Servers! - Unlimited Download! =-----
> I've downloaded a version of MP/M-86 which I would like to install on an old
> IBM XT. The downloaded archive consists of the binary files taken from 3
> disks. They are not disk images. How would I go about creating a bootable
> disk from this archive? What was the original media format for this OS ?
I doubt that you could get MP/M-86 running on an XT. MP/M-86 was
released in 1981 (version 1.1) and the last version was March 1983
(version 2.1). This was before the XT existed. For the IBM-PC
Concurrent-CP/M-86 had replaced MP/M-86 with the first release in
September 1982 and version 1 for the XT in mid 1983.
You probably have a version of MP/M-86 for a Compupro or for an Altos
or similar.
Versions of Concurrent-DOS up to version 6.2 were available for the XT
but will only be really useful if you can get an EEMS memory card (not
just an EMS) such as AST RamPage. The IBM-PC design limit of 640Kb
main memory puts too much restriction for a useful multi-user or
multi-tasking system. Typically the OS size is 200 Kb or so. This
leaves 400Kb total for all programs. With CDOS-XM (versions 5.x or
6.x) and a RamPage card there is a fixed OS area of 240Kb plus several
400Kb 'banks' allowing multiple 400Kb programs - even on an XT.
Compupro, Altos and ICL 8088 and 8086 machines had a clear 1 Mbyte of
RAM and thus had 800Kb for multiple programs - enough for 3 or 4
users, especially with shared code segments. Some later machines had
bank switched memory of different designs.
The OS needs to match the hardware.
> Non-IBM versions of MP/M-86 will =NOT= run on an IBM or clone.
> The non-IBM machines were totally proprietary, and were not IBM
> compatible.
The IBM-PC was also 'totally proprietry'. It just happens that it was
able to be cloned because of the availability of BIOS knock-offs.
> The prime directive:
> Non-IBM versions of MP/M-86 will =NOT= run on an IBM or clone,
> and =CANNOT BE MADE= to run on an IBM or clone.
or vice versa.
On 2003-01-09 rip...@Azonic.co.nz (Richard) said:
>The IBM-PC was also 'totally proprietry' [sic]. It just happens
>that it was able to be cloned because of the availability of BIOS
>knock-offs.
Well, yes; of course. No one's disputing that.
But if the original poster has a copy of (for example) "MP/M-86 For
The Compupro," it simply won't run on his IBM-compatible.
THAT was the point.
When dealing with -ANY- Digital Research operating system designed
for an Intel x86-based machine, the Prime Directive is:
"If it don' match da partic'lah moe-sheen you gots, you DO be
daid, dawg."
No, wait...sorry, that's the 'Ebonics' version of the Prime Directive.
The Literate English version is:
"If it doesn't match the particular machine you have, you're dead."
I believe that the XT came out in 1982, about a year after the original
IBM-PC. I believe that your comment "This (the last version of MP/M-86
in 1983) was before the XT existed." actually applies to the PC-AT, not
the PC-XT.
In 1983 I offered MP/M-86 as a commercial product for the Zenith Z-100
and sold a few hundred copies of it. It supported up to 8 terminals,
although 2-4 was more reasonable. That system, although not an XP
clone, was a similar system that used an 8088 CPU with a 768k maximum
memory.
If you had an XIOS, boot code and utilities for the IBM-PC (XT), you
COULD port it to a PC XT in a fairly straightforward manner.
There is (and was in 1982) much more than enough information available
to write an XIOS, boot code and utilities from scratch. However the
task is not trivial, it would take an EXPERT programmer months to do
from scratch (it took about 6+ months to do the Z-100 implementation,
with CP/M-86 as a "by-product" along the way).
Barry Watzman
> When dealing with -ANY- Digital Research operating system designed
> for an Intel x86-based machine, the Prime Directive is:
Actually that is true for -ANY- Operating System for any processor. A
version of MS-DOS for the Vector Sirius won't work on a DEC Rainbow.
On 2003-01-10 Wat...@neo.rr.com (Barry Watzman) said:
>...
>
>If you had an XIOS, boot code and utilities for the IBM-PC (XT),
>you COULD port it to a PC XT in a fairly straightforward manner.
>
>...
>
>However the task is not trivial, it would take an EXPERT programmer
>months to do from scratch...
And THAT'S the point, Barry. Sure; technically, it's possible
to take, e.g., "MP/M-86 For Columbia Data Products" and hack it
so that it would run on an IBM clone.
But such a project is beyond the ken of the average -- or even
the above-average -- computer hobbyist.
> CP/M-86 and MP/M-86 disk formats are identical, so use the "IBM2"
> disk identifier for 22DISK. It's easiest if you set a DOS environ-
> ment variable before you begin: SET CPMDISK=IBM2
So technically speaking, assuming it were MP/M-86 for IBM PC/XT would it
work with Freek Heite's 144PATCH2 (& a patch made for it to work on
ATs/386s/486 etc etc)?
Regards,
Ross.
The 8086 based XTs came out in 1983-4. Hard Disks came out in 1983 too, so
any copies made prior to that won't support it. Don't know if Freek Heite's
Hard Disk patches for CP/M-86 would bring support to it though (perhaps
not).
Regards,
Ross.
> There was never an IBM PC-XT that used an 8086. The PC-XT used an 8088
> running at 4.77 MHz, just like the original PC. There were non-IBM
> computers that used 8086's, but IBM didn't use it in the PC line, after
> the XT came the PC-AT which used the 80286.
Oops!! I clearly have no idea what I'm talking about! :-) According to my
book here, the IBM PC & IBM PC/XT came out at the same time (1981). However
if MP/M-86 came out for an IBM of some sort at the time, then the IBM PC-XT
should be compatable with it.
Originally, I didn't think the XT existed before 1983, but this book states
otherwise.
Regards,
Ross.
On 2003-01-11 rosssimpson@my_spammers_address.com.au (Ross Simpson) said:
>"Anonymous Guy" <anon...@bogus-address.con> wrote in message...
>
> > CP/M-86 and MP/M-86 disk formats are identical, so use the
> > "IBM2" disk identifier for 22DISK...
>
>So technically speaking, assuming it were MP/M-86 for IBM PC/XT
>would it work with Freek Heite's 144PATCH2 (& a patch made for it
>to work on ATs/386s/486 etc etc)?
The CP/M-86 "AT Patch" definitely would not work.
However, one might be able to develop such a patch
specifically for "MP/M-86 For The IBM."
Don't know about the CP/M-86 1.44 meg floppy disk
driver, but I suspect it wouldn't work with MP/M-86,
either.
> I have to take issue with that.
>
> I believe that the XT came out in 1982, about a year after the original
> IBM-PC.
The IBM PC/XT was March 1983.
> I believe that your comment "This (the last version of MP/M-86
> in 1983) was before the XT existed." actually applies to the PC-AT, not
> the PC-XT.
The PC-AT was August 1984.
> In 1983 I offered MP/M-86 as a commercial product for the Zenith Z-100
> and sold a few hundred copies of it.
MP/M-86 was implemented by Zenith for the Z-100, it was implemented by
Compupro for their machines, it was implemented by Altos for theirs. No
one did an MP/M-86 for the IBM PC or XT. DRI did, however, implement a
CCP/M-86 for the IBM-PC.
> If you had an XIOS, boot code and utilities for the IBM-PC (XT), you
> COULD port it to a PC XT in a fairly straightforward manner.
Of course you could 'write your own'. 'Straightforward' ?. I doubt it.
> Oops!! I clearly have no idea what I'm talking about! :-) According to my
> book here, the IBM PC & IBM PC/XT came out at the same time (1981).
Your book is wrong. The XT was March 1983. The XT required PC-DOS 2.0
which also came out in March 1983.
> However if MP/M-86 came out for an IBM of some sort at the time, then the
> IBM PC-XT should be compatable with it.
There would be no point at all implementing MP/M-86 as a multiuser system
for the IBM PC (pre-XT) which was floppy disk only, and rather limited in
memory (Model A was limited to 256Kb maximum). All the MP/M and MP/M-86
systems were hard disk based and had multiple serial ports for user
terminals.
By the time the PC/XT came out DRI had already moved to Concurrent-CP/M-86
as a replacement for MP/M-86.
> > Oops!! I clearly have no idea what I'm talking about! :-) According to
my
> > book here, the IBM PC & IBM PC/XT came out at the same time (1981).
>
> Your book is wrong. The XT was March 1983. The XT required PC-DOS 2.0
> which also came out in March 1983.
That's what I thought! That book does get a little sidetracked. :-)
> > However if MP/M-86 came out for an IBM of some sort at the time, then
the
> > IBM PC-XT should be compatable with it.
>
> There would be no point at all implementing MP/M-86 as a multiuser system
> for the IBM PC (pre-XT) which was floppy disk only, and rather limited in
> memory (Model A was limited to 256Kb maximum). All the MP/M and MP/M-86
> systems were hard disk based and had multiple serial ports for user
> terminals.
Yes, I would tend to agree with you on that. Mainly because there were more
established 16Bit computers. But there seems to another problem with that.
This may sound stupid comming from me, but doesn't '86' stand for the last 2
digits of the CPU? hence 8086.
The only other 2 systems that were well established (in terms of hardware)
are the DEC Rainbow, (which used 8088 for the 16Bit side) & Victor 9000,
(had a different name in the U.K. I believe & perhaps used that same name
here in Aust.) also 8088. Like the IBM PC the DEC Rainbow had limited memory
(256k), might support more now, however in contrast to when the book was
published, Concurrent CP/M-86 had arrived, also the DEC Rainbow supported a
Hard Disk at the time. The Victor 9000 had no worries in either dept., it
supported up to 896k expanded (128k unexpanded) & hard disks @ either 5 or
10Mb respectively.
> By the time the PC/XT came out DRI had already moved to Concurrent-CP/M-86
> as a replacement for MP/M-86.
Yes, I'd agree that MP/M-86 evolved into Concurrent CP/M-86 (maybe evolved
isn't the right word though, in case of saving an argument).
Regards,
Ross.
> MP/M-86 was implemented by Zenith for the Z-100, it was implemented by
> Compupro for their machines, it was implemented by Altos for theirs. No
> one did an MP/M-86 for the IBM PC or XT. DRI did, however, implement a
> CCP/M-86 for the IBM-PC.
Well there you go. Strangly though the Zenith I'm looking at (yes that's the
Z100 series) also used an 8088! ;-)
Translating MP/M-86 might be a battle after all! It's a shame it had to
finish on a sad note!
Regards,
Ross.
> The only other 2 systems that were well established (in terms of hardware)
> are the DEC Rainbow, (which used 8088 for the 16Bit side) & Victor 9000,
> (had a different name in the U.K. I believe & perhaps used that same name
> here in Aust.) also 8088. Like the IBM PC the DEC Rainbow had limited
memory
> (256k), might support more now, however in contrast to when the book was
> published, Concurrent CP/M-86 had arrived, also the DEC Rainbow supported
a
> Hard Disk at the time. The Victor 9000 had no worries in either dept., it
> supported up to 896k expanded (128k unexpanded) & hard disks @ either 5 or
> 10Mb respectively.
Oops! I better change 2 to 3 (can't forget those Zenith Users out there now
can we?). I cannot quite follow how the memory in a Zenith, according to
this guide it states it has 128k of memory (I'm fine with that bit!), 192k
on board or 768k with S100 boards! 768k sounds nice & 8088 (16bit side
obviously).
Boy I am slipping! :-) Can anyone tell me a little bit about the Texas
Intruments TI Professional? Is it IBM Compatable? There's nothing different
in terms of memory/Floppy Disk (in comparasion to an IBM PC), that too
though supports a Hard Disk! :-)
Regards,
Ross.
> > > CP/M-86 and MP/M-86 disk formats are identical, so use the
> > > "IBM2" disk identifier for 22DISK...
> >
> >So technically speaking, assuming it were MP/M-86 for IBM PC/XT
> >would it work with Freek Heite's 144PATCH2 (& a patch made for it
> >to work on ATs/386s/486 etc etc)?
>
> The CP/M-86 "AT Patch" definitely would not work.
> However, one might be able to develop such a patch
> specifically for "MP/M-86 For The IBM."
>
> Don't know about the CP/M-86 1.44 meg floppy disk
> driver, but I suspect it wouldn't work with MP/M-86,
> either.
Well it looks like MP/M-86 may not have been available for the IBM PC/XTs
(whatever) fullstop!
Regards,
Ross.
IBM did use 8086 in the PC line, namely in IBM PS/2 model 30 from april
1987 and IBM PS/2 model 25 from august 1987. Both ran at 8MHz.
Elar
On 2003-01-11 rosssimpson@my_spammers_address.com.au (Ross Simpson) said:
>Well it looks like MP/M-86 may not have been available for
>the IBM PC/XTs...
Good. Because if it was anything like Concurrent CP/M-86, it
undoubtedly sucked big-time.
Digital Research really went off the track with MP/M-86 and
CCP/M-86, IMHO.
Those O.S.es were much too "tech-ified" for acceptance by
anyone other than hard-core computer nerds.
Admittedly, they preserved the computer "geek mystique"
that was so prevalent in the '70s and the '80s. I'm sure
some corporate SysAdmins made a comfortable living for a
few years off those O.S.es.
On the plus side, they showed that mainframe-like functionality
could be brought to businesses at a relatively affordable price.
But at best, they were transitional (and transitory) O.S.es.
DRI finally got back on track with the release of DR-DOS,
although by then it was pretty much too late. The die was
cast when IBM entered the PC market sans a DRI operating
system.
Of course, it's easy to make these observations in the clear
light of hindsight. It brings no joy, however.
About the only solace we can take at this point is that with
each new release of Mikro$loth's pointee-clickee abomination,
Emperor Bill figuratively sheds yet another article of apparel.
Perhaps one day, a significant number of computer users will
ultimately see that The Emperor has no clothes.
But I suppose that's a pipe-dream. There are always new
generations of computer users coming up -- and they're all
being suckled at Mother Gates' teat.
P.T. Barnum was right.
=====
Written and posted to the 'Net completely under DR-DOS.
(Yes, Virginia, it IS possible without WinDoze!)
Went off _what_ tracks ? These systems were for the small business
multi-user market, not for the toy/games market. Your comment is like
saying that Mack 'went off the tracks' and should have stuck with the skate
boards.
> Those O.S.es were much too "tech-ified" for acceptance by
> anyone other than hard-core computer nerds.
>
> Admittedly, they preserved the computer "geek mystique"
> that was so prevalent in the '70s and the '80s. I'm sure
> some corporate SysAdmins made a comfortable living for a
> few years off those O.S.es.
Actually one of the advantages of the DRI MP/M, Concurrent, DR-MDOS line
was that it _never_ needed a SysAdmin. I have installed and written
software for dozens of these systems, there are still some running with the
later versions of this line. Mostly I never heard from the users, the
systems just did what they were supposed to.
If I did need to do anything on the system by way of admin I could dial in
to it. If it was a user problem I could 'take over' their screen and see
what they had done.
The OS never broke, and would not require so much as a reboot for months or
years.
> On the plus side, they showed that mainframe-like functionality
> could be brought to businesses at a relatively affordable price.
Nothing to do with mainframes, they showed that micros could run like minis.
> But at best, they were transitional (and transitory) O.S.es.
Transitional from what to what ? They competed with other multi-user
systems such as Pick, Unix, TheOS and several multi-DOS systems such as
PC-MOS. Now the market has moved to Linux which also is multi-user.
> DRI finally got back on track with the release of DR-DOS,
Only if 'on-track- is 'being noticed by the PeeCee magazines'.
> although by then it was pretty much too late. The die was
> cast when IBM entered the PC market sans a DRI operating
> system.
The IBM PC 'entered the market' with PC-DOS 1.0, CP/M-86 and UCSD Pascal as
the operating systems.
DR-DOS 5 and 6 took the PC out of its stagnation, it took MS nearly 2 years
to catch up with MS-DOS 5, and then another year to catch up with 6.
> Of course, it's easy to make these observations in the clear
> light of hindsight. It brings no joy, however.
Of course it would help if you actually knew anything about the subject
instead of fragments from PeeCee editorials.
> But I suppose that's a pipe-dream. There are always new
> generations of computer users coming up -- and they're all
> being suckled at Mother Gates' teat.
Fortunately the small-business and corporate markets have already moved
away from that. The retail buyers are always mezmerised by flash and glitz
and more impressed by pretty pictures.
Hi Richard,
> > Good. Because if it was anything like Concurrent CP/M-86, it
> > undoubtedly sucked big-time.
> >
> > Digital Research really went off the track with MP/M-86 and
> > CCP/M-86, IMHO.
>
> Went off _what_ tracks ? These systems were for the small business
> multi-user market, not for the toy/games market. Your comment is like
> saying that Mack 'went off the tracks' and should have stuck with the
skate
> boards.
The tracks Anonymous Guy is referning to is on the 'side'. CP/M-86 (or DOS
for that manner originally) wasn't for the toy/games market, but look at it
now! :-) MP/M I believe started life on the 8bits (though the 16Bit came out
at the same time), which didn't really do much for the 8bits since they
aren't really designed for multitasking.
> Actually one of the advantages of the DRI MP/M, Concurrent, DR-MDOS line
> was that it _never_ needed a SysAdmin. I have installed and written
> software for dozens of these systems, there are still some running with
the
> later versions of this line. Mostly I never heard from the users, the
> systems just did what they were supposed to.
Well that's good you've done what you've been able to do.
> If I did need to do anything on the system by way of admin I could dial in
> to it. If it was a user problem I could 'take over' their screen and see
> what they had done.
>
> The OS never broke, and would not require so much as a reboot for months
or
> years.
As long as your happy with it, that's what matters.
> > On the plus side, they showed that mainframe-like functionality
> > could be brought to businesses at a relatively affordable price.
>
> Nothing to do with mainframes, they showed that micros could run like
minis.
True.
> > But at best, they were transitional (and transitory) O.S.es.
>
> Transitional from what to what ? They competed with other multi-user
> systems such as Pick, Unix, TheOS and several multi-DOS systems such as
> PC-MOS. Now the market has moved to Linux which also is multi-user.
Only because of this certain amount of power the new PC offers.
Regards,
Ross.
On 2003-01-11 rip...@Azonic.co.nz (Richard Plinston) said:
>The IBM PC 'entered the market' with PC-DOS 1.0, CP/M-86
>and UCSD Pascal as the operating systems.
Yes, CP/M-86 and UCSD Pascal were nominally available for
the IBM PC. The reality is, they were priced to insure
that hardly anyone would buy them.
>Of course it would help if you actually knew anything about
>the subject instead of fragments from PeeCee editorials.
Heh! Pretty arrogant for a guy with an e-mail address at
the end of the earth. ;)
Every individual sees the world in a slightly different way,
Dick. Universal ultimate truth is a commodity that's in
relatively short supply these days.
None of the multi-user/multi-tasking DRI O.S.es ever achieved
anything remotely resembling "mainstream" status (not that
being "mainstream" imbues any particular validity. Look at
WinDoze, fergawdssake).
> > There are always new generations of computer users coming
> > up -- and they're all being suckled at Mother Gates' teat.
>
>Fortunately the small-business and corporate markets have already
>moved away from that.
In New Zealand, maybe. But walk into 100 U.S. small businesses
and small-to-medium corporations, and something like 90 per cent
of'em sport the soft, bluish glow of a Mikro$loth pointee-clickee
O.S. on their computer screens.
>The retail buyers are always mezmerised by flash and glitz
>and more impressed by pretty pictures.
We can agree on THAT.
> MP/M I believe started life on the 8bits (though the 16Bit
> came out at the same time), which didn't really do much for the 8bits
> since they aren't really designed for multitasking.
MP/M 1 came out in 1978, the 16bit version was 3 years later. Originally
MP/M was intended to be a file server using CP/Net with CP/M-80 as the
client machines sharing the very expensive hard drive. In fact 8080 and
Z80 based machines have been multi-user since around 1976 with PolyMorphics
and Oasys (later named TheOS on 16bit machines).
An ICL PC2 8085 based with 256 Kb RAM or a Z80 based Onyx was quite capable
of running a Cobol accounting system with 3 users. The hardware included
bank switched RAM and autonymous (interrupt driven) hard drive controller
so that the CPU time could be reused for other users during disk seek,
latency and transfer.
This meant that the CPU utilisation was typically only about 50% as mostly
the programs were waiting for keystrokes or disk transfers.
MS-DOS and Windows programs (and programmers) typically have no concern for
system efficiency and have no clues about interacting with other programs
or resources. Thus they use as much hardware is thrown at them and can't
see how anything less than a Pentium 4 could possibly be useful for
anything.
> Heh! Pretty arrogant for a guy with an e-mail address at
> the end of the earth. ;)
At least I have a name, and this 'end of earth' (Middle Earth) gets the day
first.
> None of the multi-user/multi-tasking DRI O.S.es ever achieved
> anything remotely resembling "mainstream" status
No, and Mack never became 'mainstream' by selling as many vehicles as
VolksWagen.
As far as I understood, that is not quite correct. MS/DOS as originally
designed did not talk to any kind of hardware but only do standard
interfaces supplied by a ROM BIOS to come with the board. In practice
programmers soon found that slow impractical and cumbersome and
circumvented it, but standard MS/DOS as designed ought to run itself
and its programs on anything with an x86 and a BIOS, totally oblivious
of substitution of a 2770 floppy controller for the 768 and all other
things of that nature.
In practice you are quite and totally right of course, in spite of
living in a pre-mediaval world where people only have one given name
and surnames have not yet been invented.
--
Tschö wa
Axel
How many RS-232 ports did the IBM-PC, and then the IBM-XT have? COM1,
COM2, 3? 4? -doesn't seem enough ports for a multiuser setup.
The MP/M-86 and CCP/M-86 code base is very close. Both are quite
apart from the cp/m-86 for the IBM-PC code base.
The MP/M-86 system guide describes how to develop/debug a XIOS by
using CP/M-86 and DDT86 to load MP/M-86 as a transient under DDT86,
after Gensys'ing the MP/M components to run at DDT86 loading address
of the MP/M System. Then DDT86 is used to run/monitor/debug the
loaded MP/M-86 system.
The system guide strongly suggests developing an XIOS from the fully
debugged CP/M-86 BIOS re: the target machine.
'Straightforward' is certainly in the eyes of the beholder.
Straightforward perhaps but not trivial. It seems to me, to be better
use of effort, to target the AT class machines.
> How many RS-232 ports did the IBM-PC, and then the IBM-XT have? COM1,
> COM2, 3? 4? -doesn't seem enough ports for a multiuser setup.
The IBM-PC design caters for up to 7 serial port addresses, but the 8250s
are unsuitable being unbuffered and the interrupt system on the PC is too
limited having to share interrupts for those above 2. The result is that
PC and XT ports are mostly unusable for multi-user, COM3 and COM4 certainly
are unusable.
DRI did its own 'StarNet' multiport card, I used Arnet 8 port cards.
> The MP/M-86 and CCP/M-86 code base is very close. Both are quite
> apart from the cp/m-86 for the IBM-PC code base.
Your point being ?
> 'Straightforward' is certainly in the eyes of the beholder.
> Straightforward perhaps but not trivial.
Having a boot disk for a different system is also completely the wrong
place to start, what is required is the developers kit.
> It seems to me, to be better
> use of effort, to target the AT class machines.
Given that several versions of various DRI systems have been available for
XT, AT, 386 and Pentium machines for many years then any effort to get
MP/M-86 running is a complete waste anyway.
Just get Concurrent-DOS 6.2 plus an Arnet card and AST RAMPage for an XT or
AT 286, or DR-Multiuser-DOS 5.1 for a 386 or above.
> As far as I understood, that is not quite correct. MS/DOS as originally
> designed did not talk to any kind of hardware but only do standard
> interfaces supplied by a ROM BIOS to come with the board. In practice
> programmers soon found that slow impractical and cumbersome and
> circumvented it, but standard MS/DOS as designed ought to run itself
> and its programs on anything with an x86 and a BIOS,
No. MS-DOS is designed like CP/M to have 3 software parts: an unchanging
BDOS, a command shell: CCP or COMMAND.COM and a BIOS that is tailored for
each different machine to interface to hardware on one side and to the BDOS
on the other. That is the 'Operating System' consists of BDOS, CCP, and
BIOS, just like CP/M. Thus the OS _is_ talking to the hardware through its
hardware interfacing layer the BIOS.
Now, as it happens, one particular type of machine, the IBM PC implemented
most of the required BIOS functionality in a proprietry ROM instead of as a
bootable module. This makes the software BIOS very small (but it is there).
On other machine types (and here you may be surprised to discover that not
all x86 machines were designed by IBM), such as Vector Sirius, HP 150, Wang
PC, SCP S100 machines, and many others, the MS-DOS BIOS was implemented as
a bootable part of the OS, there being no ROM BIOS, or not one that was
anything like an IBM one.
This meant that the MS-DOS for a Wang-PC would not boot on an IBM or
vice-versa.
It was only later when clones of the IBM PC BIOS became available that
other makers started making machines that could boot PC-DOS or IBM-PC
versions of MS-DOS.
You are confused. _Programs_ running under MS-DOS should not talk to the
hardware and should only use MS-DOS as the interface and it is the
_programs_ that bypassed the BDOS and the BIOS and went directly to the
hardware on IBM-PCs.
> totally oblivious
> of substitution of a 2770 floppy controller for the 768 and all other
> things of that nature.
If a program only used the Operating System interface, then just like a
CP/M program, a MS-DOS program could run on any machine with MS-DOS such as
a Sirius, a SCP S100 8086 Zebra, Lomas LDP88, Sharp MZ-5600 or whatever.
Many of these pre-dated IBM-PCs.
> On other machine types (and here you may be surprised to discover that not
> all x86 machines were designed by IBM), such as Vector Sirius, HP 150,
Wang
> PC, SCP S100 machines, and many others, the MS-DOS BIOS was implemented as
> a bootable part of the OS, there being no ROM BIOS, or not one that was
> anything like an IBM one.
>
> This meant that the MS-DOS for a Wang-PC would not boot on an IBM or
> vice-versa.
>
> It was only later when clones of the IBM PC BIOS became available that
> other makers started making machines that could boot PC-DOS or IBM-PC
> versions of MS-DOS.
>
> You are confused. _Programs_ running under MS-DOS should not talk to the
> hardware and should only use MS-DOS as the interface and it is the
> _programs_ that bypassed the BDOS and the BIOS and went directly to the
> hardware on IBM-PCs.
Was this so that M$-DO$ could run on those other systems?
One wonders why CP/M-86 for the IBM PC/XT wasn't like PC-DOS, after all,
there were many different versions designed many different systems. Yet none
of them were designed to really fully use the capabilities of the machine,
but then I suppose that's a good thing! :-)
> If a program only used the Operating System interface, then just like a
> CP/M program, a MS-DOS program could run on any machine with MS-DOS such
as
> a Sirius, a SCP S100 8086 Zebra, Lomas LDP88, Sharp MZ-5600 or whatever.
> Many of these pre-dated IBM-PCs.
Until you come across my graphical demos which use INT10h! :-) Unfortunately
my programs are VERY machine orientated. One minute it's Video Interrupts on
an IBM, next it's Firmware for the Amstrad!
Regards,
Ross.
> Was this so that M$-DO$ could run on those other systems?
MS-DOS _started_ on 'other system'. It was originally written by SCP for
their S-100 machines with an 8086 CPU. Later, when IBM released the PC it
was just one of many machines in the market MS hoped to OEM them all with
its 'CP/M-alike'.
> One wonders why CP/M-86 for the IBM PC/XT wasn't like PC-DOS, after all,
> there were many different versions designed many different systems. Yet
> none of them were designed to really fully use the capabilities of the
> machine, but then I suppose that's a good thing! :-)
PC-DOS 1.x provided the same services that CP/M did. What is it that you
thought was different between CP/M-86 and PC-DOS ?
>> If a program only used the Operating System interface, then just like a
>> CP/M program, a MS-DOS program could run on any machine with MS-DOS such
> Until you come across my graphical demos which use INT10h! :-)
> Unfortunately my programs are VERY machine orientated. One minute it's
> Video Interrupts on an IBM, next it's Firmware for the Amstrad!
Your programs are not 'MS-DOS programs', they are 'IBM-PC CGA (or EGA, VGA,
etc) programs'. INT10h is a an IBM-PC ROM facility, not a PC-DOS facility.
Just like any of the machines of the day graphics functions were unique to
the hardware.
If you wanted a hardware inmdependant graphics then you bought DRI GSX
library or DRI GEM which ran on a variety of different machine types
(including Atari) or, later, Windows 1 which again was not limited to
IBM-PC but provided an abstraction layer.
To show how different machines can be I have a BBC Master which is a 6502
based machine (like an Apple II) that has a 2nd processor card with an
Intel 80288 and 512Kb RAM that runs DRO DOS Plus (CP/M-86 and MS-DOS
2.0compatible) and GEM. Any GEM program will run on this or on an IBM-PC
or on an ICL DRS300 with GEM or ..
Each version of GSX or GEM or Windows used a 'Graphics BIOS' or Driver that
was specific to the machine, just as Windows does to drive a wide variety
of completely different hardware from VGA to GeForce4 3D.
> MS-DOS _started_ on 'other system'. It was originally written by SCP for
> their S-100 machines with an 8086 CPU. Later, when IBM released the PC it
> was just one of many machines in the market MS hoped to OEM them all with
> its 'CP/M-alike'.
>
> > One wonders why CP/M-86 for the IBM PC/XT wasn't like PC-DOS, after all,
> > there were many different versions designed many different systems. Yet
> > none of them were designed to really fully use the capabilities of the
> > machine, but then I suppose that's a good thing! :-)
>
> PC-DOS 1.x provided the same services that CP/M did. What is it that you
> thought was different between CP/M-86 and PC-DOS ?
Heh! I was looking at that from a programmers viewpoint, unfortunately. The
PC-DOS version of TP3 in comparison with the CP/M-86 version has lots of
little goodies (for programs to look nicer looking), while the CP/M-86
version is more like the M$-DO$ version (generic).
> >> If a program only used the Operating System interface, then just like a
> >> CP/M program, a MS-DOS program could run on any machine with MS-DOS
such
>
> > Until you come across my graphical demos which use INT10h! :-)
> > Unfortunately my programs are VERY machine orientated. One minute it's
> > Video Interrupts on an IBM, next it's Firmware for the Amstrad!
>
> Your programs are not 'MS-DOS programs', they are 'IBM-PC CGA (or EGA,
VGA,
> etc) programs'. INT10h is an IBM-PC ROM facility, not a PC-DOS facility.
> Just like any of the machines of the day graphics functions were unique
to
> the hardware.
So they won't run under M$-DO$? Even if it was on an IBM compatible wouldn't
it have access to the IBM-PC ROM facility? Or is M$-DOS rigged up so you
cannot touch that area?
> If you wanted a hardware independant graphics then you bought DRI GSX
> library or DRI GEM which ran on a variety of different machine types
> (including Atari) or, later, Windows 1 which again was not limited to
> IBM-PC but provided an abstraction layer.
Amstrad CPCs had it too, but I've gone straight into the Machine
capabilities (The Firmware), which provides more than just graphics. Quite a
deal is accessible in it's interpreted BASIC, but I'm going to try to set it
up, so it's accessible through TP & at the same time produce some compliable
programs.
> To show how different machines can be I have a BBC Master which is a 6502
> based machine (like an Apple II) that has a 2nd processor card with an
> Intel 80288 and 512Kb RAM that runs DRO DOS Plus (CP/M-86 and MS-DOS
> 2.0compatible) and GEM. Any GEM program will run on this or on an IBM-PC
> or on an ICL DRS300 with GEM or ..
Sounds Impressive.
Regards,
Ross.
>> PC-DOS 1.x provided the same services that CP/M did. What is it that you
>> thought was different between CP/M-86 and PC-DOS ?
>
> Heh! I was looking at that from a programmers viewpoint, unfortunately.
> The PC-DOS version of TP3 in comparison with the CP/M-86 version has lots
> of little goodies (for programs to look nicer looking), while the CP/M-86
> version is more like the M$-DO$ version (generic).
And the 'little goodies' have nothing to do with PC-DOS or MS-DOS, the OS
never notices that you are using them because they go direct to the
hardware or to the IBM PC ROM.
I have run the MS-DOS TP3 on a system that had a Lear-Sieglar ADM-3a serial
terminal. This version uses MS-DOS facilities for everything it does and
thus will run on any machine with MS-DOS. The 'PC-DOS' versions is
actually 'PC-DOS + IBM ROM' but then PC-DOS was only available for actual
IBM machines at the time.
Borland could have done a version 'CP/M-86 + IBM ROM' with the 'little
goodies' and CP/M-86 wouldn't have noticed these being used either.
>> >> If a program only used the Operating System interface, then just like
>> Your programs are not 'MS-DOS programs', they are 'IBM-PC CGA (or EGA,
> VGA,
>> etc) programs'. INT10h is an IBM-PC ROM facility, not a PC-DOS facility.
>> Just like any of the machines of the day graphics functions were unique
> to
>> the hardware.
>
> So they won't run under M$-DO$? Even if it was on an IBM compatible
> wouldn't it have access to the IBM-PC ROM facility? Or is M$-DOS rigged up
> so you cannot touch that area?
You are not following this very well. INT10h is _not_ a facility of MS-DOS
or PC-DOS, it is a facility of the IBM-PC ROM BIOS. Your program uses
MS-DOS for some things (such as program loading, possibly for disk access
if it does any) and IBM ROM for graphics. MS-DOS never notices that you
bypass it completely if you use direct screen writes or ROM BIOS calls. If
your program only does graphics then if a direct load could be arranged it
wouldn't require MS-DOS or PC-DOS to be there at all.
On a genuine IBM PC there was also a copy or ROM Basic on the motherboard
and this would start up if no boot disk was loaded. This could do all the
INT10h graphics and no trace of xx-DOS in the machine at all - just like an
Apple ][.
Programs could also be started from cassette tape or directly from ROM
without any DOS.
Programs can also exist as a bootable disk image and boot without there
being any MS-DOS or PC-DOS.
> Borland could have done a version 'CP/M-86 + IBM ROM' with the 'little
> goodies' and CP/M-86 wouldn't have noticed these being used either.
Apparently, according to my Turbo Pascal 3 Manual there is another version
of TP3 for CP/M-86 which accommodates for the 8087 maths processor, so the
286,386,etc should also be able to use it. Some of the nicer things about it
is it's faster from the ordinary & accommodates for larger reals.
> > So they won't run under M$-DO$? Even if it was on an IBM compatible
> > wouldn't it have access to the IBM-PC ROM facility? Or is M$-DOS rigged
up
> > so you cannot touch that area?
>
> You are not following this very well. INT10h is _not_ a facility of
MS-DOS
> or PC-DOS, it is a facility of the IBM-PC ROM BIOS. Your program uses
> MS-DOS for some things (such as program loading, possibly for disk access
> if it does any) and IBM ROM for graphics. MS-DOS never notices that you
> bypass it completely if you use direct screen writes or ROM BIOS calls.
If
> your program only does graphics then if a direct load could be arranged it
> wouldn't require MS-DOS or PC-DOS to be there at all.
I thought I was following it just fine!
> On a genuine IBM PC there was also a copy or ROM Basic on the motherboard
> and this would start up if no boot disk was loaded. This could do all the
> INT10h graphics and no trace of xx-DOS in the machine at all - just like
an
> Apple ][.
Yes I understand that! :-)
> Programs could also be started from cassette tape or directly from ROM
> without any DOS.
To my knowledge the cassette tape was only used in BASIC ROM, nothing else.
> Programs can also exist as a bootable disk image and boot without there
> being any MS-DOS or PC-DOS.
Did know about that, can you explain this a little further?
Regards,
Ross.
For running applications true. For kicking, poking and tweeking an
multi-tasking OS, I don't think so. The source code for mp/m,ccp/m-86
is somewhat available, the others aren't, to my knowledge. Besides,
those Fat based platforms are tied to rather dated expanded memory
schemes, LIM, EMS,EEMS or whatever, it seems to me.
> Agreed, but where does one find the developers kit? Are we talking a
> DRI OEM's development package?
Exactly, as issued to OEMs for rather large amounts of money as the basic
needs of getting the system to build for a machine (after writing all the
bits that are hardware specific).
> Besides,
> those Fat based platforms are tied to rather dated expanded memory
> schemes, LIM, EMS,EEMS or whatever, it seems to me.
Actually EEMS (LIM or EMS is of no use at all) is only 'tied' to the rather
dated PC, XT and 286 systems when using the 'XM' IBM-PC versions of
Concurrent-DOS, versions 5.x and 6.x.
Previous versions, including MP/M-86 use the 'rather more dated'
non-expanded real memory.
But of course the XM versions will work without an EEMS card so it is not
'tied' to anything, it will just use the 640Kb real memory on an XT if
there is no EEMS (or up to 1Mb of RAM on non-IBM-PCs).
CDOS-386 and later, including DR-MDOS, use the 'rather less dated' 386
memory management and Virtual-8086-mode.
> Apparently, according to my Turbo Pascal 3 Manual there is another version
> of TP3 for CP/M-86 which accommodates for the 8087 maths processor, so the
> 286,386,etc should also be able to use it.
AFAIK all x86 versions of TP3 had a x87 emulator version and a
co-processor version included. A '286, 386, etc' would only be able to
'use it' if the machine included a co-processor. A 286 would require
a 80287, a 80386 would require a 80387, a 80486SX would require a
'80487' (or actually a 486DX). The first with a buily-in co-processor
was the 486.
But this has nothing to do with IBM-PCs or ROM BIOS, or the 'little
goodies' for the PC-DOS version of TP3.
> > Programs could also be started from cassette tape or directly from ROM
> > without any DOS.
>
> To my knowledge the cassette tape was only used in BASIC ROM, nothing else.
There was no MS-DOS access to the Cassette tape, it was a ROM BIOS
facility on the IBM-PC accessed via INT 0x15 services 0 to 3. Just
like the graphics the DOS neither knew nor cared if it was used, and
it can be used without any DOS at all.
> > Programs can also exist as a bootable disk image and boot without there
> > being any MS-DOS or PC-DOS.
>
> Did know about that, can you explain this a little further?
What's to explain ? Put a program as memory image onto a raw
diskette, add a bootloader to track zero and switch on. The program
loads and can do whatever it wishes including INT 10h graphics.
PC-DOS is a program that loads just like that, and so is CP/M-86.
Several games were too, they would boot without DOS and just use the
ROM.
>> One wonders why CP/M-86 for the IBM PC/XT wasn't like PC-DOS, after
all,
>> there were many different versions designed many different systems.
Yet none
>> of them were designed to really fully use the capabilities of the
machine,
The point being that the 'little goodies' are not a difference between
PC-DOS and CP/M-86 (or MS-DOS) because there is no significant
difference, but between IBM-PC with ROM (or a clone or emulation of
it) and non-IBM-PC.
Of course other machines also had graphics and other features.
CP/M-86 (and later) could use GSX modules for programs to use a device
independant way of accessing graphics for whatever screen or printer
they were running on. So the same program could run on a properly
configured IBM with CGA or on a Sharp MZ-5600.
So, contrary to your question, CP/M-86 (plus GSX) was not like PC-DOS
because it (CP/M-86) _could_ fully use the capabilities of many
machines, while PC-DOS was entirely oblivious of hardware dependant
programs going past it.
Of course bit-banging the hardware tended to be faster, and the
machines were too slow anyway.
> Oops! I better change 2 to 3
There were many machines using 8086 around when the IBM-PC was
released (and none of them IBM compatible). Altos, SCP, Lomas,
CompuPro, ACT. MS had been selling Xenix for the 8086 since 1980, and
of course SCP-DOS (or 86-DOS) and CP/M-86 and MP/M-86 were available
for them.
Most were still 8085 or Z80 based, but were quick to get 8088 versions
of these out soon after the IBM. In fact the IBM-PC was based on a
Z80 machine, the System 23. CP/M machines were relatively easy to
redesign into 16bit because the 8088 was designed to fit into 8bit
designs.
> Boy I am slipping! :-) Can anyone tell me a little bit about the Texas
> Intruments TI Professional? Is it IBM Compatable? There's nothing different
> in terms of memory/Floppy Disk (in comparasion to an IBM PC), that too
> though supports a Hard Disk! :-)
It will run Lotus-123 which is often a test of being 'IBM Compatible',
but that may be a version for the TI, or it may be a fiddle like
'softclone'. Lotus-123 does direct screen writes to the text mode
video memory. As long as there is RAM at those addresses it is simple
to scrape the 0xB800 addresses and put it to the actual machine
display, even if its a serial terminal. As it says that it requires
the memory expansion card for Lotus-123 I suspect that it is not
compatible, but is softcloned.
The later Z-100 (the one with the "2803" motherboard) allowed the 3
memory banks to be populated with either 64k parts (192k) or 256k parts
(768k on the motherboard), and it still retained the 5-slot S-100 card
cage. This motherboard also supported the 8MHz 8088 CPU speed.
[The remaining 4 banks of 64k in the Z-100 were used for the BIOS ROM
(64k) and 64k each for bit-mapped red, blue and green video display
refresh buffer, in individual pixel bit-mapped graphics mode [there was
no text mode, everything was done in graphics mode.]
The "86" in MP/M-86 refereed to the entire "X86" CPU family, which
included both the 8086 and the 8088. The 8086 came out first (1978, I
think), but the IBM-PC, which came out in 1981, used the 8088. IBM
never used the 8086 in a "PC" product (they did use it in some systems
made by other divisions).
The Z-100, Victor 9000, Dec Rainbow and the TI Pro, as well as many
others, were not IBM compatible but did use "X86" processors, so they
could run MS-DOS, but it was not the same MS-DOS as the IBM-PC. You had
media compatability, but no further compatability existed at the
hardware level. I believe that the Z-100 was by far the most successful
of these machines, due to contract with the US Military, which bought
about 100,000 of them.
Richard Plinston wrote:
> Barry Watzman wrote:
>
>
>>I have to take issue with that.
>>
>>I believe that the XT came out in 1982, about a year after the original
>>IBM-PC.
>
>
> The IBM PC/XT was March 1983.
>
>
>>I believe that your comment "This (the last version of MP/M-86
>>in 1983) was before the XT existed." actually applies to the PC-AT, not
>>the PC-XT.
>
>
> The PC-AT was August 1984.
>
>
>>In 1983 I offered MP/M-86 as a commercial product for the Zenith Z-100
>>and sold a few hundred copies of it.
>
>
> MP/M-86 was implemented by Zenith for the Z-100, it was implemented by
> Compupro for their machines, it was implemented by Altos for theirs. No
> one did an MP/M-86 for the IBM PC or XT. DRI did, however, implement a
> CCP/M-86 for the IBM-PC.
>
>
> The "86" in MP/M-86 refereed to the entire "X86" CPU family, which
> included both the 8086 and the 8088. The 8086 came out first (1978, I
> think), but the IBM-PC, which came out in 1981, used the 8088. IBM
> never used the 8086 in a "PC" product (they did use it in some systems
> made by other divisions).
The 8086 is a much more powerful processor than the 8088 isn't it? I would
have imagine it would have been a step backwards if the 8088 came out later.
> The Z-100, Victor 9000, Dec Rainbow and the TI Pro, as well as many
> others, were not IBM compatible but did use "X86" processors, so they
> could run MS-DOS, but it was not the same MS-DOS as the IBM-PC. You had
> media compatability, but no further compatability existed at the
> hardware level. I believe that the Z-100 was by far the most successful
> of these machines, due to contract with the US Military, which bought
> about 100,000 of them.
Sorry, I wasn't imply that they were IBM compatable. Merely comparing how
well those other machines were established against the IBM machine.
Regards,
Ross.
> "Barry Watzman" <Wat...@neo.rr.com> wrote in message...
>
> The 8086 is a much more powerful processor than the 8088 isn't it? I would
> have imagine it would have been a step backwards if the 8088 came out
> later.
No, there wasn't much difference between an 8086 and 8088 at the same MHz.
In fact some functions worked considerably faster on 8088. For example
instructions using character data on an 8088 could just write the 8bit wide
memory directly, the same code on an 8086 would need to read a 16bit wide
word, change the byte and write back the word. This took extra cycles and
ran slower.
As there was no requirement to have aligned integers on x86 (as there was
on M680x0) if integers were word aligned then the 8086 was _slightly_
faster than 8088, if unaligned then the 8086 was _noticeably_ slower.
Alignment made no difference to 8088.
Of course some 8086's ran at 6 or 8 MHz when the IBM-PC stuck to 4.7MHz.
Turbo-PCs pushed this to 10 or 12 MHz.
> "Barry Watzman" <Wat...@neo.rr.com> wrote in message...
>> The Z-100, Victor 9000, Dec Rainbow and the TI Pro, as well as many
>> others, were not IBM compatible but did use "X86" processors, so they
>> could run MS-DOS, but it was not the same MS-DOS as the IBM-PC. You had
>> media compatability,
No. There was certainly no 'media compatability' between DEC RainBow and
IBM-PC, nor between many other MS-DOS machines in the early 1980s. DEC and
others used 80 track DD (QD) drives, others used early 3.5 drives. FBN's
Alienm lists 85 MS-DOS diskette formats that it can read and write for
conversion purposes. Most (except the actual IBM ones) fail when tried
directly on an IBM, even when nominally the same configuration.
Wasn't the Victor 9000 a user of the variable speed drives where more
sectors were written on the outer tracks to keep the same actual density
across the surface. This was certainly not 'media compatible' with
anything. Also tunes could be played with the drive motor by accessing the
tracks in specific sequences.
In case you are wondering, the CP/M formats are accessed by AlienC with 335
listed.
Memory or I/O block transfers effectively ran twice as fast on an 86. For
instance, IDE disk I/O in mode 0 supports 16-bit transfers (okay, all modes
do unless 8-bit mode is turned on). An 8088 had to work twice as hard to get
information on or off the hard drive.
There was also the NEC V20 and V30, enhanced 8088 and 8086 pin compatible
CPUs with improved microcode. Basic architecture was still the same, 8 or
16 bit bus units in front of an identical execution unit. I switched out an
8086 on an S-100 for a V30 primarily for the power savings. The NEC parts
were CMOS and ran cooler.
Jack Peacock
The V20 also had an 8080 (or was it Z-80, I can't remember) hardware
emulation mode, it could run 8080 opcodes directly in hardware. This
was used in some applications for running older 8-bit CP/M on IBM-PC
compatibles. As an example, Pat Swayne of the Heath User's Group wrote
a program to run CP/M (8-bit version 2.2) software on a Zenith Z-150/160
series computers, which were single processor "pure" IBM clones, if the
cpu was changed from an 8088 to an NEC V-20.
Yes; the 8086 was about 30% faster than the 8088 with a typical
instruction mix, and with both CPUs running at the same clock speed,
same number of wait states, etc.
Barry also wrote:
> But if the software was not properly written (if data variables were
> not "byte aligned"), it could actually be slower.
And Richard Plinston wrote:
> In fact some functions worked considerably faster on 8088. For
> example instructions using character data on an 8088 could just
> write the 8bit wide memory directly, the same code on an 8086
> would need to read a 16bit wide word, change the byte and write
> back the word. This took extra cycles and ran slower.
No. The 8086 *was* able to read/write single bytes of data; it had
separate addresses for the high and low bytes; A0 and BHE (Byte High
Enable), so the only speed penalty for non-word aligned data was that it
accessed the information at the same speed as the 8088 -- one byte at a
time.
Jack Peacock wrote:
> The 8086 had a slightly deeper queue in the bus unit.
The 8086 instruction queue was 8 bytes, vs. 6 bytes for the 8088. This
helped speed up execution a little bit.
> The 8086 came out first, the 8088 came out later (but still before
> the IBM-PC) as a cost-saving measure.
There was no physical difference between the 8086 and 8088; same
package, same chip size, etc. so any cost differences there were just
marketing. But the 8088 was cheaper in a system, because you could use
the old well-established 8xxx 8-bit peripheral chips developed for the
8080.
Barry also wrote:
> The V20 also had an 8080 (or was it Z-80, I can't remember) hardware
> emulation mode, it could run 8080 opcodes directly in hardware.
8080 only, not Z80. And, there were a few "gotchas"; undocumented
opcodes that worked on a real 8080 would crash the V20.
--
Lee A. Hart Ring the bells that still can ring
814 8th Ave. N. Forget your perfect offering
Sartell, MN 56377 USA There is a crack in everything
leeahart_at_earthlink.net That's how the light gets in - Leonard Cohen
> Enable), so the only speed penalty for non-word aligned data was that it
> accessed the information at the same speed as the 8088 -- one byte at a
> time.
That is true for reading, the unwanted bytes could be discarded, but
writing an unaligned word required that the two words be read from the 16
bit memory before the byte is changed in each and rewritten to preserve the
unwritten bytes, this required extra cycles.
No, this is definitely not the case. 16-bit 8088/86 addresses specify a
particular BYTE of memory or I/O. There are two separate address
signals; A0 and /BHE. According to Intel 8088/86 data sheet:
"The /BHE and A0 signals are used to select the proper byte(s) of the
memory/IO word to be read or written accoding to the following table:"
/BHE A0 Characteristics
---- -- ---------------
0 0 whole word
0 1 upper byte from/to odd address
1 0 lower byte from/to even address
1 1 no memory or I/O access
And, I can tell you that having designed 8086 CPU boards and systems
using them that mis-aligned addresses only slowed it down to the same
speed as the 8088. The 8086 never did read-modify-writes to change only
the high or low byte of a word.