Any help or suggestions appreciated
Chris Eby
Hunt down my DOSPLS25 or DOSPLSOR distributions. DOSPLUS uses
timestamping, but with slightly different specifications than CPM
3. The point is that the source for the directory initiation is
included, and you could modify it to the CPM 3 specifications.
However, you might just consider using DOSPLUS anyhow. It
maintains 3 dates, not 2, and does not do file passwords. It is
generally completely CPM 2.2 compatible, but with many of the CPM
3 capabilities. However, it does require a Z80 and just won't run
on an 8080. It takes *exactly* the same space as CPM 2.2.
If there is any real demand I can arrange to make the packages
available on my site below. I will consider 2 or 3 e-mails
requesting it real demand :-)
--
Chuck F (cbfal...@yahoo.com) (cbfal...@worldnet.att.net)
Available for consulting/temporary embedded and systems.
<http://cbfalconer.home.att.net> USE worldnet address!
There's a copy in <http://www.cpm.z80.de/download/cpm3-b.zip>.
--
------------- http://www.seasip.demon.co.uk/index.html --------------------
John Elliott |BLOODNOK: "But why have you got such a long face?"
|SEAGOON: "Heavy dentures, Sir!" - The Goon Show
:-------------------------------------------------------------------------)
> I have been using myz80 (Simeon Cran) for several years running cpm
> 2.2.
> Recently I decided to bring up cpm Plus (cpm3.0) with this emulator.
> I have not been able to locate the utility "initdir.com" to initialize
> the disk directorys for date/time stamping.
There is a compatible program (also called INITDIR.COM in ZSDOS2.ZIP) on
my web page. Source code for it is also available in ZSDOS4.ZIP. It
should run on any generic CP/M 2 compatible system. Hal
http://home.att.net/~halbower
Have downloaded, unzipped, installed and run initdir.com and now have
date and time stamps per cpm3.0. I do have a complete set of DR CPM
PLus manuals (Came with Morrow MD11) and a good bit of SD Systems
S-100 stuff with complete documentation and manuals if anyone
interested.
Chris Eby
I'm very pleased to hear that someone has CP/M v3.0 up and running
on MYZ80 -- have others done this already? (It's the first I've
heard of, but I don't always pay attention).
--
Douglas Beattie Jr. http://www2.whidbey.net/~beattidp/
>From what I remember reading, ZPM3 by Simeon Cran was supposed to be
a superior replacement for the CP/M v3.0 BDOS, fixing bugs that Digital
Research never even did.
There was also a note in the distribution set: contact Simeon Cran if
you have any serious problems installing ZPM... But I must realize that
it is very old. Here's the banner from the ZPM3.TXT file:
.. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. .
Z P M 3 by Simeon Cran
========================
A Z80 coded CP/M 3.0 compatible BDOS replacement.
The first public release: 27/3/92
This document dated: 16/6/92
Distributed at: Z-Node 62 (Perth, Western Australia)
V21,V22,V22bis 09 450 0200
.. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. .
And of course Mr. Cran isn't talking to anyone now. I remember writing
him several more times (after he had stopped replying). He still had
a www site, but seemed to ignore (maybe just me?) people. From what I
understand, he's into Windows and Microsoft now. At one time, he was
studying at The University of Queensland, Brisbane Australia. His web
site is no-longer accessible ( http://student.uq.edu.au/~s373718/ ),
and he does not appear in the Student Directory.
So, if you have ever been successful in installing ZPM3 (especially on
a TRS-80 Model 4), perhaps you might have some words of advice for me.
Well, different bugs anyway.
The two ZPM3 bugs of which I'm aware are:
* Function 98h (parse text to FCB) puts the password, if supplied, in the
wrong place.
* Function 0Ah (line input) doesn't accept ^Z characters, which PIP and ED
depend on.
The only computers I've installed ZPM3 on have been Amstrads, where I could
either use ZPM3INST to patch the boot file, or do a proper GENCPM.
The main/only problem of ZPM3 is that it uses the index registers
but does not save/restore them on BIOS calls. So every system
where the BIOS makes any use of the index registers won't run
with ZPM3.
This is a very stupid bug, and also completely undocumented.
I found it after having completely disassembled ZPM3. This was
necessary since Simeon Cran was unable or unwilling to help me
at all. He answered only one of my many messages.
My CPU280 system runs with ZPM3 since I found this and modified
my BIOS to save/restore the index registers where they were used.
Besides this bug and a few smaller ineffeciencies, it is really
fine and reliable. I don't wonder about that however, since it
has almost completely identical sources to CP/M-3 - Simeon just
replaced absolute jumps by relatives and some 8080 instruction
blocks by more powerful Z80 commands, and used the gained space
to add a few extras. I like those extras (those of the ZCCP too),
so I'm pretty satisfied now (after those years of searching that
stupid bug).
Tilmann Reh
==================================================================
In a world without walls and fences, who needs Windows and Gates ?
(Sun Microsystems)
I don't know if there is a good tabulation of which
applications softwares uses which features of z80
and which platforms use z80 code for BIOS, roms, BDOS
replacements, etc.
The only system for which I had most of this information was
the Heath-Zenith H89-90 computers.
--
Clarence Wilkerson \ HomePage: http://www.math.purdue.edu/~wilker
Prof. of Math. \ Internet: wil...@math.purdue.edu
Dept. of Mathematics \ Messages: (765) 494-1903, FAX 494-0548
Purdue University, \
W. Lafayette, IN 47907-1395 \
As I recall DOSPLUS took care to save all z80 auxiliary registers
on entry into the BDOS, just to prevent such foulups in the bios
area. This doesn't prevent foulups on user code that calls the
bios entries directly though. However I believe there is a
protected BDOS call to access the bios vectors.
I just took a quick look at the source. The index registers are
protected, but not the auxiliary register set. IIRC I took the
attitude that the auxiliary set were reserved for fast interrupt
routines, and that I had no business messing with them. There is
a notation in there that the Osborne bios used the index
registers, which was why I protected them.
I never had any trouble running SuperCalc and SC2 on 8085 machines, when
did it ever do anything that was Z80 only ?
I strongly disagree with this statement.
If the system has a Z80 CPU, and the BDOS makes use of the extras,
it *must* be aware that the BIOS also might use these extras.
This has nothing to do with application software which was mainly
written for the 8080 and so don't use Z80 extras at all.
Allison
nos...@nouce.bellatlantic.net wrote:
>
> On Tue, 04 Jun 2002 09:42:30 +0200, Tilmann Reh
> <tilma...@autometer.de> wrote:
>
> >If the system has a Z80 CPU, and the BDOS makes use of the extras,
> >it *must* be aware that the BIOS also might use these extras.
> >
> >
> >Tilmann Reh
> >
>
> I don't know about you but I always wrote a bios on the assumption
> that only the passing registers could be changed and *all* others
> will be preserved. it may have been extra effort on my part but I
> found it was bullet proof. This was especially true wnen the bios was
> running in mapped memory.
>
> Allison
I personally always treated lower level code (like the CP/M
bios, although I've never written a complete one myself) as if
it were an interrupt service routine. Any registers used by
the subprogram get stashed on the stack on entry and restored
on exit. If I had to store the entire machine state, I used a
new stack. This was hammered into my head many years ago and
has spared me a lot of grief since.
I have never written code that used the alternate register
set in the Z80 mainly out of paranoia. If you could specify
which bank in the instruction, I probably would have been more
confident in using it. As a toggle function, however, I was
always concerned about being "out of sync" with the correct
set.
Of course, if they had the silicon space to implement 4 or 8
register banks back in the mid 70s when it was designed, and
an instruction that could explicitly select a bank, that would
have been really really useful.
-Frank
They did. It was called the Z280.
Allison
But if every Z80 chip produced since the beginning had that
facility, it would have made using that facility much easier.
Too bad the Z280 had some never-solved bugs and was
discontinued.
-Frank
Because to change the Z80 and add that it would not be a z80.
> Too bad the Z280 had some never-solved bugs and was
>discontinued.
I have a few late rev parts that are fairly bug free. The popularity
of the PC and other pressures killed the Z280 not design issues.
Allison
[Re: Z280]
: I have a few late rev parts that are fairly bug free. The popularity
: of the PC and other pressures killed the Z280 not design issues.
For hobbyist/experimenter use, would there be any value in playing
with an emulated Z280 system? Unless the Z280 was itself 500 MHz, I'd think
that current x86 or PPC systems would be plenty fast enough to emulate it
successfully...and the software could fix the hardware bugs :-)
*Rich*
--
Richard F. Drushel, Ph.D. | "Aplysia californica" is your taxonomic
Department of Biology, Slug Division | nomenclature. / A slug, by any other
Case Western Reserve University | name, is still a slug by nature.
Cleveland, Ohio 44106-7080 U.S.A. | -- apologies to Data, "Ode to Spot"
>nos...@nouce.bellatlantic.net spake unto the ether:
> For hobbyist/experimenter use, would there be any value in playing
>with an emulated Z280 system? Unless the Z280 was itself 500 MHz, I'd think
>that current x86 or PPC systems would be plenty fast enough to emulate it
>successfully...and the software could fix the hardware bugs :-)
No Interest here. The Z280 I'm running is a 12.5mhz part with the MMU
and cache running... really boogies nice with 8mb ram. I have the ram
partitioned as part ramdisk and working ram (1mb makes for a lot of
context switching possibilities). This is an offshoot of the project
that Tim Olmstead started. His project was Z280 with 16mb, and
Z8000(16mhz part) on PC IDE bus. It got as a far as assembly of the
first boards and initial bring up. My Z280 was a proto for sofware
development leading up to that machine.
Allison