>
>Subject: Re: CP/M survey
> From: "Chuck Guzis" <cclist at sydex.com>
> Date: Thu, 19 Apr 2007 08:48:40 -0700
> To: "General Discussion: On-Topic and Off-Topic Posts" <cctalk at classiccmp.org>
>
>On 19 Apr 2007 at 3:20, Sridhar Ayengar wrote:
>
>> How does it differ? Aren't all drivers just fundamentally open, close,
>> read, write and ioctl?
>
>Well, CP/M 2.2 have no "open" and "close" function, just read and
>write--single character for character devices and a single 128 byte
>block for mass storage. The closest thing to ioctl is the "select
>unit", "set track" and "set sector" entry points.
Yes.
>While BDOS
>supports open and close functions, it's entirely up to the user to
>track open files--the BDOS doesn't contain so much as a list of open
>files. Early MS-DOS operated the same way--using FCBs for file I/O
>like CP/M.
While the OS didn't do that it was easy to have your own FCB(s) and
the OS would not limit you.
CP/M was a big step up from OSs like NSdos that only did sequential
allocation and even more limited user interface.
>Directories are, of course, flat, though you could
>qualify entries with a "User area" field that was not considered to
>be part of the filename. Allocation information is kept with each
>directory name entry; when a file got large enough, another directory
>"extent" was allocated. There was a very firm upper limit
>(implementation defined) on the number of files one could have on a
>volume. IIRC, the upper limit on disk storage was about 8 MB per
>volume.
The limit is for CP/M2 were 65535addressable sectors * 128bytes =8mb
it would be higher if the math didn't truncate at 16bits. The improved
BDOSs (P2DOS and friends) fixed the math and it was then:
65535 * allocation block size (up to 32k) =2gb
CPM3 and MPM allowed for 512byte sectors and 32mb max logical drive size.
>One needn't worry about reentrancy, multiple character/block requests
>or interrupts. Everything's done with a jump vector table; since
>CP/M is non-multitasking, management of driver data is simple.
CP/M2 is non multitasking, V3 and MPM which are related (same filesystem
and bdos calls) it can be an issue. However, the non-multitask status
of CP/MV2 didn't prevent things like background printing or interrupt
driven IO though it meant the BIOS implmentor had to do the work.
One nasty with a flat file system and allocation scheme is with an 8mb
drive and directory sized for say 2048 entries a directory search on a
moderately full disk was SLOW. It was a sequential search.
>If you were dealing with disks with sector sizes larger than 128
>bytes, some write-behind, read-ahead logic was unavoidable, but even
>there, the BDOS would help out by signifying if the read was for a
>directory block or the write was for a newly-allocated block. If
>you had sufficient RAM to do full track reads and writes, you could
>often improve the speed of CP/M I/O significantly.
IDE helps as it has on drive buffering/cache and a few floppy and
harddisk controllers were buffered and did deblocking in hardware.
One floppy controler that could do this was the JADE DoubleD.
Other oddities is there was no MBR or on disk partition tables for
large drives. The partition info was kept in the DPH/DPB inside the BIOS.
>Disk volume tracking was done using a simple "checksum" on a
>installation-defined number of directory entries. If a disk was
>changed unexpectedly, the BDOS responded by setting its status to
>Read-Only and displaying an error.
Only required for floppy or the uncommon removable harddisk
(CDC hawk anyone).
>Later versions of CP/M supported multi-block I/O and file date and
>time stamps.
They did significantly advancement CP/M as it allowed existing
program base to live on.
Allison
>
>Subject: Re: CP/M survey
> From: Jim Battle <frustum at pacbell.net>
> Date: Thu, 19 Apr 2007 12:19:48 -0500
> To: General Discussion: On-Topic and Off-Topic Posts <cctalk at classiccmp.org>
>
>Chuck Guzis wrote:
>> ... And most professional apps for CP/M used the 8080 instruction
>> set initially--only later did a bunch of Z80-specific (e.g. ZCPR)
>> code come out. I never could understand this--in general, little to
>> be gained in speed by using Z80 codes.
>
>I thought the main motivation was footprint, not speed. The relative
>jumps save a byte each time they are used, and djnz saved two.
the Z80 instruction set not only had the relative jump, and DJNZ but also
small fixes like the the asymetric problem of you could load the SP
but in 8080 you had to burn a register to get the SP contents. The
block moves and bit tests are worthwhile too.
Where the Z80 gained speed was 4mhz and faster (best 8080 hit was 3)
and a much more sophisticated interrupt capability. That and those
index registers helped solve those times when 8080 needed more
registers to play with pointers without twisty code.
>One of the most wasteful features in the 8080 instruction set, I
>thought, were the 8 conditional calls and 8 conditional returns. I
>would have much rather they had only unconditional call and
>unconditional return only and used those 16 opcodes for something more
>useful. Sure, they were useful once in a while, but not so often that
>they should use up 6% of the single byte opcode space.
;) 8080 was what it was and compare to the 8008 a huge improvement. What
was more interesting to me at that time was to 6800 and 6502 which were
in many ways simpler yet better by a differt route.
One of the oddities of most cpus is 90% of the code is done with a small
portion of the instrucion set. the remaining 10% of code may use less
than 50% of the unused to that point instructions. There are always
a few that are nearly never used.
One example of a 8080 (and 8085 and z80 usage) is ORA A with in one
assembler I renamed to SEF (set flags). The 8080 family is loaded with
instructions like that.
At the other extreme.. 8085 and z80 "unsupported" instructions that every
chip maker insures are there and behave the same even if not specified.
Allison
>
>Subject: Re: WH-27 Problems (was RE: Heathkit H8's, H9's and H-11's)
> From: "Barry Watzman" <Watzman at neo.rr.com>
> Date: Thu, 19 Apr 2007 12:54:42 -0400
> To: <cctech at classiccmp.org>
>
>Re:
>
>From: "Robert Armstrong" <bob at jfcl.com>
>Subject: WH-27 Problems (was RE: Heathkit H8's, H9's and H-11's)
>
>.....
>
> In extended mode the drive could handle 512K diskettes ... So the bottom
>line is that if you want to run standard RT-11 on the H-11, you have to set
>the switch to RX-01 mode and you have the equivalent of an RX01 drive. No
>double density ...
>
>*************
>
>I don't think that's correct; the controller in the H-27 (WH-27) is a Z-80
>with a Western Digital 1771. The 1771 is most definitely single density
>only. It's not capable of double density.
Barry is correct. I know the beastie well enough and single density was
it's thing. However there was a third party version on the market that
could do DD (but not DEC RX02) and was modeled like the H27.
there wer others in the PDP-11 market that did compatable rx02 DD (two
sided) such as the DSD880 and a few others.
Allison
Hi all,
Cutting back on my collection... Synertek SYM Model 1, untested, in great
physical shape.
http://tinyurl.com/ysf2s2
USA only...sorry...Post Office issues...
Thanks for looking. JT
>
>Subject: Re: CP/M survey
> From: "Chuck Guzis" <cclist at sydex.com>
> Date: Wed, 18 Apr 2007 23:35:31 -0700
> To: "General Discussion: On-Topic and Off-Topic Posts" <cctalk at classiccmp.org>
>
>On 18 Apr 2007 at 17:17, Allison wrote:
>
>>> I'd do the bios development on one of the existing long list of
>systems.
>> All of my listed systems work especially the CP/M hardware.
>
>Not me--I do it under emulation on a nice speedy windoze system.
>It's amazing how fast MAC will munch code running on a software
>emulator.
:) I do have Myz80 and Dave Dunfeilds NS Horizon emulator as tools
for when I'm purely messing with code. But when I have a hefty
10mhz z80 S100 crate next to the PC with solid tools and a good
programmer in it why mess with a PC.
>> Qualifies as an 8080! With a bunch of Pc hardware to impair it. ;)
>
>Maybe, but ti couldn't run JRT Pascal. AFAIK, the only commercial
>product that ever used the bizarre coding sequence:
>
> LXI SP, PROC-1
> CALL PROC
JRT Pascal was Z80 code if memory serves. But LXI SP, value is
valid as the arithmetic is done at compile time not execution.
Loading a stack address prior to a call is ok if you need to
recover the stack content (for recursion or some such) but
I'd expect prior code to save/restore the stack or the routine
making the call will return to nowhere. I've seen a lot of
code that mucks with the stack in the past and it's ok if you
remember your return addresses are on that pile!
I've not encounterd this problem with V20. That sequence is
not so strange to me. though I've not used JRT Pascal (or
many other high level) tools on a V20 because I haven't found
that a V20 XT PC to be all that great compared to a 4mhz z80.
I have been meaning to try the Tandy 1000HX which has a V20
and see if thats better. In the end running an 8080 (V20)
when I have Z80 or even fast(6mhz HmosII) 8085s is sort of
less than interesting.
Allison
>
>Subject: Re: CP/M survey
> From: ard at p850ug1.demon.co.uk (Tony Duell)
> Date: Thu, 19 Apr 2007 18:40:54 +0100 (BST)
> To: cctalk at classiccmp.org
>
>> just tell it what particular ICs you're using and at what port addresses, and
>> away it goes? Or was it more complex than that, and realistically you'd have
>> to write your own comms / FDC driver which exposed some defined interface to
>> CP/M itself?
>
>You had to write something called a CBIOS (Customised Basic Input Output
>System IIRC). This was a set of routines to handle terminal I/O (and
>printer, paper tape I/O if you wanted that), disk block read/write, and
>so on. There's a manual giving the specs for these routines, how to get
>CP/M onto the target machine, and so on. The original CP/M distibution
>came with the source for a CBIOS for the Intel MDS800 (IIRC)m which you
>could use as a starting point
>
>I've never done it, but it ;ooks like quite a 'fun' thing to do for
>suitable values of 'fun'. Of course if you bought a packaged machine to
>run CP/M it came with a CBIOS written for that machine. And alas you
>rarely got the soruce of that :-(
>
>-tony
Trust me haveing done it more tha a few times it was fun or at least
interesting.
You did miss the third case, packaged machine and time for upgrade. In
that case sometime the existing BIOS was needed or not. Having sone more
than a few random integrations (S100 crates) usually you didn't have a
explict bios to match but did have similar or at least a pattern. Often
during S100 upgrades here the FDC was the item being upgraded or outright
replaced it was easier to start from scratch and build in features the
earlier bios neglected like buffered IO for serial lines or better
error messages.
Allison
I received an email asking if I was interested in a Bondwell 2 laptop.
You can learn a little bit more about it from one of my web pages:
http://www.thebattles.net/bondwell/bondwell.html
It has a 640x200 bitmapped LCD display (capable of displaying 80x25
text), a 4 MHz Z80, integral floppy drive. The downsides are that it
has a pair of heavy sealed lead acid batteries (I replaced the two 6v
bricks in mine with a single 12v brick; as I recall it cost $15 or so),
and that scrolling text is painful since the text is just drawn as
bitmapped graphics.
I don't want another one, so I offered to pass along his contact
information. He is in Redwood City, CA (just south of san francisco),
but it seems he is willing to ship; ask him to be sure. When I asked
about price, he said:
"SURE, GO AHEAD AND LIST IT, I WOULD MUCH APPRECIATE.
I DON'T WANT ALOT OF MONEY, I'M JUST LOOKING FOR A
GOOD HOME FOR IT."
I'll obscure the email address to prevent harvesting.
Robert is his name. Reply to:
AcopsBisCtops @ yaDhoo . comE
Remove the capital letters and spaces.
Hi guys,
as myself being a harddrive collector, this video really hurts alot !
Such clips should be forbidden...
Regards,
Pierre
>
> A nightmare is up on youtube. At least it hits me that way, as a full time
> disk person.
>
>
>
> Billy
>
>
>
> http://www.youtube.com/watch?v=JUQzGIqp4t8
>
>
_______________________________________________________________
SMS schreiben mit WEB.DE FreeMail - einfach, schnell und
kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192
>
>Subject: Re: CP/M survey
> From: Jeffrey Armstrong <jba at sdf.lonestar.org>
> Date: Thu, 19 Apr 2007 12:08:11 +0000 (UTC)
> To: cctalk at classiccmp.org
>
>
>>> >
>>> >Subject: CP/M survey
>>> > From: Mark Tapley <mtapley at swri.edu>
>>> > Date: Wed, 18 Apr 2007 09:09:45 -0500
>>> > To: cctalk at classiccmp.org
>>> >
>>> >DEC Rainbow (8087, 832k (max for -A model), but
>>> that's irrelevant to CP/M-80).
>>>
>>> Not true as the rainbow also ran CP/M-80/88 as it
>>> was a dual CPU (has a z80).
>>>
>>> Allison
>>
>> Could it access more then 64k under CP/M-80? Don't
>> you mean CP/M-86? Not to nit pick...
>> I don't know about specific Rainbow revisions, but I
>>was under the impression the 'bow could go up to 896k.
>>Maybe I'm thinking of the Tandy 2000 via an 3rd party upgrade.
>
>I think Mark was trying to say that an 8-bit CP/M program on the Rainbow
>can only access 64k RAM, which is true, under Rainbow CP/M-86/80. A
>16-bit program could access all of the Rainbow's system RAM under CP/M.
Of course and I referred to that. What I avoid trying to do was say, hey
it's a Z80 and 8bitters like 8080 and Z80 without only address 64k. Granted
you can hang bank hardware on them and extend but the addressing is
still only 64k.
>And he's also right about the memory. A 100A maxed out at 832k, while a
>100B/100+ maxed out at 896k. This is because 100A models shipped with
>128k on the motherboard, while 100B/100+ models shipped with 192k. So
>when a maxed-out ram expansion card was installed, the 100A still had 64k
>less than an equivalent 100B/100+.
>
>One interesting thing about 16-bit programs on CP/M-86/80 on the Rainbow
>was that some were confused by too much RAM. The most notable examples
>are all the Rainbow ports of Infocom adventures; they all complain about
>"not enough memory" if you have more than 512k or something like that.
Unlike PCs were 640k was all there was.
Allison
> -----Original Message-----
> From: cctalk-bounces at classiccmp.org [mailto:cctalk-bounces at classiccmp.org]
> On Behalf Of Chuck Guzis
> Sent: Wednesday, April 11, 2007 11:02 PM
> To: cctalk at classiccmp.org
> Subject: PC-MOS?
>
> I was looking for something else and ran across a two-binder set of
> something called "PC-MOS" by The Software Link, circa 1992. I opened
> the shrinkwrap on the nstallation manual and the thing looks like
> it's a multi-user version of MS-DOS, talking to terminals. I
> appear to have a 5 user version.
>
> Anyone familiar with this animal? The version is 4.2.
>
> Cheers,
> Chuck
Sounds like the PC-MOS I used in the mid-80's to build a multi-user system using an IBM PC/AT with an expansion box that had one CGA card per user. The expansion box had special cables for monitor and keyboard (thick & bulky). This let me run DBase III, Wordstar 2000, etc. in an office for up to eight stations. Each station appeared to have the PC/AT to itself. Worked really well.
I wonder if I was using the same PC-MOS but a very early version.
david.
> I have download the kaypro disks
> from dave's site and the system disk 2 is really multiplan.
It is REALLY REALLY important that you tell Dave, or other archivists
when errors are found in disc images.
One of the most difficult things to do is to verify that a distribution
disc still contains good copies of what it claims to on the label.
>
>Subject: Re: WH-27 Problems (was RE: Heathkit H8's, H9's and H-11's)
> From: "Ethan Dicks" <ethan.dicks at gmail.com>
> Date: Thu, 19 Apr 2007 09:31:25 -0400
> To: "General Discussion: On-Topic and Off-Topic Posts" <cctalk at classiccmp.org>
>
>On 4/19/07, Robert Armstrong <bob at jfcl.com> wrote:
>> The [W]H-27 drives were both the best and the most disappointing part of
>> the H-11 system...
>
>> Yes, most people would not be impressed by a drive that can format
>> diskettes, but real DEC RX01/2 users never knew this joy.
>
>And, except for Rainbow uses, most RX50 users never knew this joy, either.
Other than Robin (Vt180), Rainbow and Vaxmate (sorta PC) formatting a disk
was unheard of. The first vax widely available that could format it's hard
disk or a floppy was the Microvax-2000 without resorting to diagnotic
software kits (MDM for VAX or XXDP for PDP11).
>> So the bottom line is that if you want to run standard RT-11 on the H-11,
>> you have to set the switch to RX-01 mode and you have the equivalent of an
>> RX01 drive. No double density, and no formatting.
>Perhaps, but, then again, with a "custom" OS, there might have been
>some check somewhere in the Monitor to enforce compliance. It will be
>interesting to take apart the OS and see where the differences lie.
>One could then, presumably, build a patch kit to "transform" a genuine
>RT-11 kit into HT-11, as folks already do with various versions of
>Infocom adventures (i.e. - *you* get a legitimate copy of the game
>file, then acquire and apply patches to it to turn it into the
>different release versions of the game. Since the patches are based
>on a known quantity and aren't themselves the game, they are made
>freely available)
It was simpler than that. It was an old version of RT11 and from that
version to current the driver structure apparently is different enough
to not work. However if you used drivers from V2.x HT11 was happy.
>I have never seen one, but another list member has offered to send me
>some H-11 media. Once I get things working, I'll see about archiving
>it.
I'd have to dig as I have media and tu58 tape that overlaps that timeframe
and OS use. Not anytime soon as I'm ripping the room apart to build a
new desk in.
Allison
>
>Subject: Re: CP/M survey
> From: Sridhar Ayengar <ploopster at gmail.com>
> Date: Thu, 19 Apr 2007 03:20:51 -0400
> To: General Discussion: On-Topic and Off-Topic Posts <cctalk at classiccmp.org>
>
>Dave McGuire wrote:
>> On Apr 18, 2007, at 4:43 PM, Jules Richardson wrote:
>>> Interesting; did CP/M ship with a range of UART and FDC drivers then,
>>> so you just tell it what particular ICs you're using and at what port
>>> addresses, and away it goes? Or was it more complex than that, and
>>> realistically you'd have to write your own comms / FDC driver which
>>> exposed some defined interface to CP/M itself?
>>
>> The CP/M distribution, as shipped only boots & runs on one particular
>> type of machine: an Intel MDS-800 development system. If you (or a
>> computer manufacturer, say Kaypro for example) wanted your machine to
>> run CP/M, and it wasn't exactly like the MDS-800 in terms of what I/O
>> chips were used and at what addresses, you had to write the drivers to
>> support your hardware. These drivers form the BIOS. CP/M was shipped
>> with the intention that users would write their own BIOS code to support
>> their own systems.
>>
>> In truth it is really not all that difficult. The BIOS interface is
>> very simple and well-defined. Under the tutelage of an experienced
>> mentor, I was writing BIOS code on my Imsai when I was about fourteen.
>> It's nothing like the complexity of, say, a device driver system for an
>> implementation of UNIX.
>
>How does it differ? Aren't all drivers just fundamentally open, close,
>read, write and ioctl?
Not under CP/M.
this is the bios call entry table.
;
; perform following functions
; boot cold start
; wboot warm start (save i/o byte)
; (boot and wboot are the same for mds)
; const console status
; reg-a = 00 if no character ready
; reg-a = ff if character ready
; conin console character in (result in reg-a)
; conout console character out (char in reg-c)
; list list out (char in reg-c)
; punch punch out (char in reg-c)
; reader paper tape reader in (result to reg-a)
; home move to track 00
;
; (the following calls set-up the io parameter block for the
; mds, which is used to perform subsequent reads and writes)
; seldsk select disk given by reg-c (0,1,2...)
; settrk set track address (0,...76) for subsequent read/write
; setsec set sector address (1,...,26) for subsequent read/write
; setdma set subsequent dma address (initially 80h)
;
; (read and write assume previous calls to set up the io parameters)
; read read track/sector to preset dma address
; write write track/sector from preset dma address
;
; jump vector for indiviual routines
jmp boot
wboote: jmp wboot
jmp const
jmp conin
jmp conout
jmp list
jmp punch
jmp reader
jmp home
jmp seldsk
jmp settrk
jmp setsec
jmp setdma
jmp read
jmp write
jmp listst ;list status
jmp sectran
;
The relevent ones for char IO are conin, conout, constat, list, listst,
punch, reader.
Disk or any block addressable device is seldsk, settrk, setsec, setdma,
read, write and sectran. While the names are descriptive they do not
adaquately tell you what the task is. For example SELDSK selects a disk
and to do that was do several things like save the number of the drive
to be used and return a pointer to a table (DPH or disk parameter table)
of addresses of information and scratch areas needed for that disk. One
very important address in that table is the DPblock which actually descibes
the size, CHS organization and allocation block size of the reference drive.
The BDOS uses these to compute the calls to seltrk(set track) and
selsec(set sector) that will be used for reading or writing.
These are in unix terms the very rawest level device calls.
What CP/M is/does is provice three major functions.
CCP, console command processor and simple monitor that is the user
interface.
BDOS, this does "high level" stuff like open a file, get a char, put a char
put a char to list device and other filesystem and IO sundries.
BIOS, this is the layer that translates a standard set of calls from the
BDOS to perform things that are very hardware specific. Modern term
is hardware abstraction layer. The bios tried to make the various
different disk controllers and connected disks and serial/parallel
devices looks like very standardized but elementary IO.
What you call a driver in *nix is the BDOS level calls in CP/M for equivilent
level of functionality.
included is the BDOS command dispatch table from CP/M2 (8080):
;
; command dispatch table
DISTBL: DEFW WBOOTF ; 0: System reset
DEFW REDCON ; 1: Console input
DEFW WRTCON ; 2: Console output
DEFW XRQ ; 3: Reader input
DEFW XRQ ; 4: Punch output
DEFW LISTF ; 5: List output
DEFW DIRTIO ; 6: Direct console I/O
DEFW GETIOB ; 7: Get I/O Byte
DEFW PUTIOB ; 8: Set I/O Byte
DEFW PRNBUF ; 9: Print string
DEFW REDBUF ; 10: Read console buffer
DEFW GCSTAT ; 11: Get console status
DEFW GETVER ; 12: Return version number
DEFW RESET ; 13: Reset disk system
DEFW LOGIN ; 14: Select disk
DEFW OPEN ; 15: Open file
DEFW CLOSE ; 16: Close file
DEFW SEAR1 ; 17: Search for first
DEFW SEARN ; 18: Search for next
DEFW DELETE ; 19: Delete file
DEFW READ ; 20: Read sequential
DEFW WRITE ; 21: Write sequential
DEFW CREATE ; 22: Make file
DEFW RENAME ; 23: Rename file
DEFW GLOGIN ; 24: Return login vector
DEFW GETDRV ; 25: Return current disk
DEFW DMASET ; 26: Set DMA address
DEFW GALLOC ; 27: Get addr (alloc)
DEFW MAKRO ; 28: Write protect disk
DEFW GROVEC ; 29: Get R/O vector
DEFW SETATT ; 30: Set file attributes
DEFW GETPAR ; 31: Get addr (disk parms)
DEFW MODUSR ; 32: Set/Get user code
DEFW REDRND ; 33: Read random
DEFW WRTRND ; 34: Write random
DEFW FILSIZ ; 35: Compute file size
DEFW SETRND ; 36: Set random record
DEFW RESDRV ; 37: Reset drive
DEFW XRQ ; 38: Undefined - go back
DEFW XRQ ; 39: Undefined - go back
DEFW ZERRND ; 40: Fill random file w/ zeros
;
To wrap up:
The cpm prompt A:>edit fred.txt causes the CCP to do this>>
call bdos open and see if edit exists, if it does it does several read
sequential andd loads the read file startin at 100h in memory and
jumps to it. *runs edit*
That program calls the bdos open to see if fred.txt exits, if yes it
loads it's buffer(s) as needed with further bdos calls. IF not then it
may create a file entry and allocate a block to it for future storage use.
Of course the bdos makes a pile of calls to gets and put characters, check
the console device for any keys pressed and outputting characters as well
as disk related IO.
Very un *nix like. Likely more than anyone wanted to know but while
CP/M is pervasive not everyone is familiar or familiar to the code
level.
Allison
>> >
>> >Subject: CP/M survey
>> > From: Mark Tapley <mtapley at swri.edu>
>> > Date: Wed, 18 Apr 2007 09:09:45 -0500
>> > To: cctalk at classiccmp.org
>> >
>> >DEC Rainbow (8087, 832k (max for -A model), but
>> that's irrelevant to CP/M-80).
>>
>> Not true as the rainbow also ran CP/M-80/88 as it
>> was a dual CPU (has a z80).
>>
>> Allison
>
> Could it access more then 64k under CP/M-80? Don't
> you mean CP/M-86? Not to nit pick...
> I don't know about specific Rainbow revisions, but I
>was under the impression the 'bow could go up to 896k.
>Maybe I'm thinking of the Tandy 2000 via an 3rd party upgrade.
I think Mark was trying to say that an 8-bit CP/M program on the Rainbow
can only access 64k RAM, which is true, under Rainbow CP/M-86/80. A
16-bit program could access all of the Rainbow's system RAM under CP/M.
And he's also right about the memory. A 100A maxed out at 832k, while a
100B/100+ maxed out at 896k. This is because 100A models shipped with
128k on the motherboard, while 100B/100+ models shipped with 192k. So
when a maxed-out ram expansion card was installed, the 100A still had 64k
less than an equivalent 100B/100+.
One interesting thing about 16-bit programs on CP/M-86/80 on the Rainbow
was that some were confused by too much RAM. The most notable examples
are all the Rainbow ports of Infocom adventures; they all complain about
"not enough memory" if you have more than 512k or something like that.
Jeff Armstrong
jba at sdf.lonestar.org
SDF Public Access UNIX System - http://sdf.lonestar.org
>
>Subject: Re: CP/M survey
> From: Chris M <chrism3667 at yahoo.com>
> Date: Wed, 18 Apr 2007 14:10:05 -0700 (PDT)
> To: "General Discussion: On-Topic and Off-Topic Posts" <cctalk at classiccmp.org>
>
>
>--- Allison <ajp166 at bellatlantic.net> wrote:
>
>> >
>> >Subject: CP/M survey
>> > From: Mark Tapley <mtapley at swri.edu>
>> > Date: Wed, 18 Apr 2007 09:09:45 -0500
>> > To: cctalk at classiccmp.org
>> >
>> >DEC Rainbow (8087, 832k (max for -A model), but
>> that's irrelevant to CP/M-80).
>>
>> Not true as the rainbow also ran CP/M-80/88 as it
>> was a dual CPU (has a z80).
>>
>> Allison
>
> Could it access more then 64k under CP/M-80? Don't
>you mean CP/M-86? Not to nit pick...
No. However there was software to use the 8088 and the bulk ram
as a ramdisk.
CP/M80 (other than V3) didnt care there was more than 64k,
Applications that ran under it (mutiplan, Dbase, others)
didn't care there was more than 64k (z80 address space) as
they were all written back when 64k was a BIG system and
MMUs were uncommon.
> I don't know about specific Rainbow revisions, but I
>was under the impression the 'bow could go up to 896k.
>Maybe I'm thinking of the Tandy 2000 via an 3rd party upgrade.
The Rainbow was one of the few that could beat the 640k limits.
Allison
--------------- Original Message:
Date: Wed, 18 Apr 2007 13:28:14 -0700
From: Brent Hilpert <hilpert at cs.ubc.ca>
Subject: Re: CP/M survey
Just because I don't think it's been mentioned:
Vector Graphic MZ
(or are we not distinguishing between various S100 boxes..?)
Given to me a few years ago but really haven't done much with it other than to
power it up, boot CP/M from the solitary disk it came with and see that it
will load & run BASIC from the disk. Seems to be a well-built S100 box, but
with hard-sectored floppy drives and a 'unique' SSI/MSI disk controller. Also
came with a 'really dumb' terminal: just the monitor and keyboard in a
terminal case and all the terminal smarts on an S100 card back in the processor.
------------ Reply:
Aw, and I was just going to mention my MZ (although mine uses a normal terminal).
Also runs MDOS.
Also several Cromemcos (Sys 1, Sys 3, CS-300, CS-420). Also run CDOS & Cromix.
While on the subject of Cromemco and CP/M, does anyone have a late version
of CP/M (i.e. 2.2 or later) running on a Cromemco and using a hard disk (IMI or ST412)?
mike
>Ethan Dicks [ethan.dicks at gmail.com] wrote:
>[W]H-27 problems...
>I can get the system to read in the boot sector from the floppy,
>but it hangs about the time RT-11 is running far enough to
>turn the interrupts on.
Dumb question - you _do_ have the RX-01/Extended switch set to RX-01,
right? Extended mode isn't DEC compatible and the RT11 driver won't work
with it.
Bob
Hi,
Looking for any sparc based laptop (eg sparcbook,
powerlite/etc). Anything considered?
Running out of space - so need to condense my
sparc's down a bit :)
Cheers
Ian
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
I seem to have my PDP-11 system running pretty well although it is
still using a borrowed RX33 drive from a DECmate III+. I'm now
looking to assemble it into a decent looking box. I'm using a BA23
that started life as a MicroVAX I and so it has a back panel from an
MVI. Can I use the module labeled "FUNCT SEL/SLU MODULE" from the MVI
with the KDJ11-B processor? This is the module that has a rotary
switch for selecting the baud rate and a jack to plug the console
into along with a switch to control the power up mode and a display
to show the CPU status. Will the MVII panel work with the KDJ11-B
processor?
Also, does anyone have a PDP-11 badge for the front of the machine
that I can use to replace the one that says MicroVAX I?
Thanks!
David
>
>Subject: Re: CP/M survey
> From: Jules Richardson <julesrichardsonuk at yahoo.co.uk>
> Date: Wed, 18 Apr 2007 15:43:45 -0500
> To: General Discussion: On-Topic and Off-Topic Posts <cctalk at classiccmp.org>
>
>Chuck Guzis wrote:
>> On 18 Apr 2007 at 12:28, Jules Richardson wrote:
>>
>>> I doubt there's any shortage of CP/M capable hardware owned by people on the
>>> list - there's just a shortage of CP/M "hardcore" knowledge, because the
>>> systems don't get used often enough for people to remember the real nuts and
>>> bolts.
>>
>> ...and how many of us could assemble a CP/M capable machine from
>> what's in our junkbox? Really, for a functional system, you'd need a
>> x80-capable processor, some RAM, a UART (if it's not already on the
>> processor chip) and an FDC (a WD1770/1772 will do just fine)--and a
>> bit of PROM to get it booted.
>
>Interesting; did CP/M ship with a range of UART and FDC drivers then, so you
>just tell it what particular ICs you're using and at what port addresses, and
>away it goes? Or was it more complex than that, and realistically you'd have
>to write your own comms / FDC driver which exposed some defined interface to
>CP/M itself?
No. The bios was the interface between CP/M core and the hardware and it was
hardware specific. So if you created a new system with new hardware you needed
a new bios. CP/M bios writing once understood was fairly reasonable task.
>> What there's not a lot of knowledge for are the CP/M "add-ons" such
>> as Display Manager and Access Manager and the networking (was it
>> CP/Net or something like that?).
>
>Hmm, one of my Research Machines (RML) systems has the networking add-ons; I
>think they called their implementation Z-net. Clients have enough ROM-resident
>code to invoke some form of network boot from the server - what I'm not sure
>is whether the OS image transfer is part of core "network aware CP/M" or
>whether that's a Research Machines extension (with the core stuff only really
>providing network-aware file services).
>
>The manuals are rather buried at the moment, but I seem to recall that they
>weren't exactly big on details anyway (RML were great at producing hardware
>documentation, but not so hot at writing down how the software side worked)
Unfortunatly that was common in smaller companies. There were those that
thought some aspect of their system should be "secret" to prevent copying.
Allison
>
>Subject: Re: CP/M survey
> From: "Chuck Guzis" <cclist at sydex.com>
> Date: Wed, 18 Apr 2007 11:51:01 -0700
> To: "General Discussion: On-Topic and Off-Topic Posts" <cctalk at classiccmp.org>
>
>On 18 Apr 2007 at 12:28, Jules Richardson wrote:
>
>> I doubt there's any shortage of CP/M capable hardware owned by people on the
>> list - there's just a shortage of CP/M "hardcore" knowledge, because the
>> systems don't get used often enough for people to remember the real nuts and
>> bolts.
>
>....and how many of us could assemble a CP/M capable machine from
>what's in our junkbox? Really, for a functional system, you'd need a
>x80-capable processor, some RAM, a UART (if it's not already on the
>processor chip) and an FDC (a WD1770/1772 will do just fine)--and a
>bit of PROM to get it booted.
I could do it in hearbeat, and have.
I'd do the bios development on one of the existing long list of systems.
All of my listed systems work especially the CP/M hardware.
>At least that would be the case for CP/M 2.2. CP/M 3.0 (aka CP/M
>Plus) is a bit more of a problem, as it involves support for things
>such as time-of-day and bank-switching. The same goes for MP/M,
>which also requires a timer interrupt.
They will run on a minimal system but somethings will require the timer.
>What there's not a lot of knowledge for are the CP/M "add-ons" such
>as Display Manager and Access Manager and the networking (was it
>CP/Net or something like that?).
CPNet was a BDOSs that had complementary functions such that it would
be a good client to MPM and it didn't really specify the physical layer
(could be shared bus, serial or whatever).
>I once redid a ROM set for an IBM PC so it would boot CP/M 80 when
>equipped with a V20 CPU. I/O was handled in x88 mode. Since the V20
>supported the 8080 instruction set, did this qualify as a emulator or
>not?
Qualifies as an 8080! With a bunch of Pc hardware to impair it. ;)
Allison
>
>Subject: CP/M survey
> From: Mark Tapley <mtapley at swri.edu>
> Date: Wed, 18 Apr 2007 09:09:45 -0500
> To: cctalk at classiccmp.org
>
>DEC Rainbow (8087, 832k (max for -A model), but that's irrelevant to CP/M-80).
Not true as the rainbow also ran CP/M-80/88 as it was a dual CPU (has a z80).
Allison
I have an Altos 886... have had it for some time...
unfortunately the hd doesn't access
I'm looking for the diag? disk (with low level formatter) and OS floppies.
Back when I got it, Acer referred me to a company supporting the old boxes.
When they quoted me for a set of OS disks, I laughed at them (in my head).
Now I'm wishing I had paid the money... but I didn't deem it worth while
for a hobby/toy machine at the time...
Now, all the companies that supported this stuff (that Acer has info on) are
either out of business or haven't supported those boxes in ages (and have
since disposed of all the material).
I did find someone on another mailing list I am on who had one of these
and the disks (and was fairly local to me), but before we ever could close
the loop on any of this... his e-mail address (work addr) started bouncing
as not a valid address... and he appears to have never rejoined that
list with
any other address..... (2nd miss on getting an OS for this old box).
So.... anyone got an OS and/or diag diskette(s) for an Altos 886 ?
(My best research so far seems to indicate that this box has a Xenix unique
to itself (886 model only), and last ran Xenix 3.2f ?)
Thanks,
-- Curt
Since CP/M machine discussion came up...
I have an ATR8000. In addition, it has a (forgot brand) board that goes
between
the cpu and the mainboard and gives it a SASI ? interface. I also have
a Xebec
bridgeboard (S1410?) to then convert that to MFM.
The only thing I didn't get was the MFM drive (it had long since be
recycled by
the previous owner into a PC). What I never was able to figure out was
how to
low level format the HD !
I don't know that I have the formatter. (Either that or it is there and
I simply
don't know how to use it).
I would love it if someone could fill in that long outstanding blank for
me...
Also, any idea if a SCSI drive could be hooked up in lieu of the Xebec
and MFM
drive ? I know SASI and SCSI1 are close... but I don't dare do this
till I know it
will work (don't want to toast the hardware).
-- Curt
I got a call from Lucy Frost of Granite House (a video production company)
in Austin just now. She's desperately in need of a 5.25" or 8" floppy
disk for a video shoot they are doing tonight. They are doing a spoof
infomercial for a client around the Btrieve software product. Yes, that
Btrieve...it's still being published by a company called Pervasive
Software.
Anyway, if you can help (Jim Battle?) then please contact her directly:
Lucy Frost
512/844-2520 cell
512/481-1300 office
lucy at granitehouse.com
She tells me they Buda to Roundrock is her vicinity. She knows about the
Goodwill Computer Works and is going to try calling them today to see if
they can help. I also suggested she try other local thrift stores in the
area as they normally have some 5.25" floppies in the electronics section.
I don't believe there is any preference for either size format. They
just need one and need one now. They had a 5.25" floppy ready for the
shoot but it's been misplaced.
Someone please help Lucy.
--
Sellam Ismail Vintage Computer Festival
------------------------------------------------------------------------------
International Man of Intrigue and Danger http://www.vintage.org
[ Old computing resources for business || Buy/Sell/Trade Vintage Computers ]
[ and academia at www.VintageTech.com || at http://marketplace.vintage.org ]