Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

z80 emulator running cp/m v1.3

433 views
Skip to first unread message

retrogear

unread,
Jan 20, 2014, 11:45:57 PM1/20/14
to
I don't know if this has been produced before but I have been experimenting with
Wiley J Moore's Z80 Emulator. He had it configured to boot CPM 1.4 with a Tarbell controller. I found sources in Rlee Peter's archive for Tarbell CPM 1.3 and have spent the past few weeks working with it and got it to boot !!! cpm.com functions just like movcpm. I matched the serial fields to get it to work. I haven't got the sysgen to work yet.

** emulated session start

TARBELL 64K CPM V1.3 OF 8-13-77
2-DRIVE VERSION
HOW MANY DISKS? 2
A>dir

A: CPM COM
A: DDT COM
A: STAT COM
A: ABOUT TXT
A: PIP COM
A>pip

PIP - VERS 1.33
*b:=a:about.txt

*^C

A>type b:about.txt

This is cp/m 1.3 running in Z80 Emulator using source files from Rlee Peters Tarbell CPM_1-3 archive !!
A>cpm 63 0


CONSTRUCTING 63K CP/M VERS 1.3
READY FOR "SYSGEN" OR
"SAVE 32 CPM63.COM"
A>save 32 cpm63.com

A>ddt

DDT VERS 1.3
-dee00

EE00 14 00 00 00 00 34 21 33 F9 71 2C 73 23 72 C3 2E .....m!3.q,s#r..
EE10 F7 43 4F 50 59 52 49 47 48 54 20 28 43 29 20 31 .COPYRIGHT (C) 1
EE20 39 37 36 2C 20 44 49 47 49 54 41 4C 20 52 45 53 976, DIGITAL RES
EE30 45 41 52 43 48 C3 06 FA C9 21 3C F9 7E 0F D2 46 EARCH....!<.~..F
EE40 EE 36 00 2C 7E C9 C3 09 FA C9 21 3C F9 7E 0F D2 .6.,~.....!<.~..
EE50 55 EE 3E 01 C9 CD 35 EE 0F D2 7B EE CD 39 EE 21 U.>...5...{..9.!
EE60 3D F9 77 D6 13 C2 75 EE CD 39 EE D6 03 C2 73 EE =.w...u..9....s.
EE70 C3 03 FA AF C9 2D 36 01 3E 01 C9 AF C9 21 3F F9 .....-6.>....!?.
EE80 71 C3 0C FA C9 21 40 F9 71 CD 4A EE 0F D2 90 EE q....!@.q.J.....
EE90 21 40 F9 4E CD 7D EE C9 21 41 F9 71 C3 0F FA C9 !@.N.}..!A.q....
EEA0 21 42 F9 71 C3 12 FA C9 C3 15 FA C9 C3 18 FA C9 !B.q............
EEB0 21 43 F9 71 C3 1B FA C9 21 44 F9 71 C3 1E FA C9 !C.q....!D.q....
-g0

A>

** end of session

The serial# is the first six digits at EE00. Serial# is 52, Product is 0,
The OEM is 20 for Tarbell ?


Larry

retrogear

unread,
Jan 21, 2014, 10:28:04 AM1/21/14
to
From what I've read so far, the 1975 cp/m plm source is claimed to be version 1.3 but no version # is indicated. This clearly indicates DRI Copyright 1976 and cp/m vers 1.3 at the end of this memory dump. I haven't found a source for the 1976 bdos/ccp. I used cpm.com to relocate it to 64k then spliced in Tarbell boot and bios assembled for 64k from source, then hex edited it into the system track. Kind of crude but it worked. I'll figure out sysgen eventually.


TARBELL 64K CPM V1.3 OF 8-13-77
2-DRIVE VERSION
HOW MANY DISKS? 2
A>ddt cpm.com

DDT VERS 1.3
NEXT PC
2400 0100
-d100,39f

0100 C3 2C 01 43 4F 50 59 52 49 47 48 54 20 28 43 29 .,.COPYRIGHT (C)
0110 20 44 49 47 49 54 41 4C 20 52 45 53 45 41 52 43 DIGITAL RESEARC
0120 48 2C 20 31 39 37 36 20 20 20 20 20 31 00 08 11 H, 1976 1...
0130 5D 00 1A FE 20 CA 91 01 FE 3F CA 91 01 21 00 00 ]... ....?...!..
0140 1A 13 FE 20 CA 5F 01 B7 CA 5F 01 D6 30 FE 0A D2 ... ._..._..0...
0150 72 01 29 E5 29 29 C1 09 4F 06 00 09 C3 40 01 7C r.).))..O....@.|
0160 B7 C2 72 01 7D FE 10 DA 72 01 2E 00 67 29 29 C3 ..r.}...r...g)).
0170 A5 01 11 7B 01 CD 6A 03 C3 00 00 0D 0A 49 4E 56 ...{..j......INV
0180 41 4C 49 44 20 4D 45 4D 4F 52 59 20 53 49 5A 45 ALID MEMORY SIZE
0190 24 21 00 00 24 CA A1 01 7E 2F 77 BE 2F 77 CA 94 $!..$...~/w./w..
01A0 01 7C E6 FC 67 E5 2A 06 00 22 6F 03 E1 E5 7C 0F .|..g.*.."o...|.
01B0 0F E6 3F 47 21 82 03 3E 30 77 23 77 21 83 03 34 ..?G!..>0w#w!..4
01C0 7E FE 3A DA CA 01 36 30 2B 34 05 C2 BC 01 11 73 ~.:...60+4.....s
01D0 03 CD 6A 03 21 01 08 4E 23 46 C5 21 00 09 11 84 ..j.!..N#F.!....
01E0 03 78 B1 CA 27 02 0B C5 0E 0F E5 1A BE C2 15 02 .x..'...........
01F0 13 23 0D CA 1B 02 C3 EB 01 01 AF 3D C2 FB 01 21 .#.........=...!
0200 F3 76 22 6F 03 21 6C 03 36 CD 11 7D 02 21 05 00 .v"o.!l.6..}.!..
0210 19 EB C3 6A 03 E1 23 C1 C3 DE 01 E1 C1 2B 11 83 ...j..#......+..
0220 03 1A 77 2B 1B 1A 77 01 6F 03 0A FE 06 3E 00 C2 ..w+..w.o....>..
0230 4F 02 02 C1 E1 7D 91 6F 7C 98 67 22 71 03 EB 21 O....}.o|.g"q..!
0240 00 09 C5 3A 6D 00 FE 20 CA 58 02 09 C3 65 02 21 ...:m.. .X...e.!
0250 FA 01 22 FC 02 C3 FB 02 78 B1 CA 65 02 0B 7E 12 ..".....x..e..~.
0260 13 23 C3 58 02 C1 E5 2A 71 03 EB 21 00 01 19 3A .#.X...*q..!...:
0270 6D 00 FE 20 CA 7A 02 11 00 09 78 B1 CA B5 02 C3 m.. .z....x.....
0280 99 02 0D 0A 53 59 4E 43 52 4F 4E 49 5A 41 54 49 ....SYNCRONIZATI
0290 4F 4E 20 45 52 52 4F 52 24 0B 7B E6 07 C2 A5 02 ON ERROR$.{.....
02A0 E3 7E 23 E3 6F 7D 17 6F D2 B1 02 1A 84 12 C3 B1 .~#.o}.o........
02B0 02 13 C3 7A 02 D1 11 00 13 2A 6F 03 0E 06 1A BE ...z.....*o.....
02C0 C2 4F 02 23 13 0D C2 BE 02 3A 6D 00 FE 20 CA 62 .O.#.....:m.. .b
02D0 03 06 80 21 00 09 7E B7 C2 FE 02 23 05 C2 D6 02 ...!..~....#....
02E0 EB 2A 01 08 01 80 FF 09 44 4D 21 00 09 78 B1 CA .*......DM!..x..
02F0 FE 02 0B 1A 77 13 23 C3 ED 02 01 C3 FB 02 21 01 ....w.#.......!.
0300 08 4E 23 46 21 00 09 09 44 21 54 03 3E 30 77 23 .N#F!...D!T.>0w#
0310 77 05 CA 26 03 21 55 03 34 7E FE 3A DA 11 03 36 w..&.!U.4~.:...6
0320 30 2B 34 C3 11 03 2A 82 03 22 5A 03 11 35 03 CD 0+4...*.."Z..5..
0330 6A 03 C3 00 00 0D 0A 52 45 41 44 59 20 46 4F 52 j......READY FOR
0340 20 22 53 59 53 47 45 4E 22 20 4F 52 0D 0A 22 53 "SYSGEN" OR.."S
0350 41 56 45 20 30 30 20 43 50 4D 30 30 2E 43 4F 4D AVE 00 CPM00.COM
0360 22 24 11 00 16 2A 71 03 19 E9 0E 09 C3 05 00 00 "$...*q.........
0370 00 00 00 0D 0A 43 4F 4E 53 54 52 55 43 54 49 4E .....CONSTRUCTIN
0380 47 20 30 30 4B 20 43 50 2F 4D 20 56 45 52 53 20 G 00K CP/M VERS
0390 31 2E 33 24 00 00 00 00 00 00 00 00 00 00 00 00 1.3$............
-


Larry

Udo Munk

unread,
Jan 25, 2014, 11:59:31 AM1/25/14
to

Interesting. For this cpm.com patch locations 22f-231 to 0 and 2c0-2c2 to 0, so that it won't run into the serialization error.

I have never bothered about that stupid serialization code, i just patch it out and be done with it ;-)

retrogear

unread,
Jan 25, 2014, 1:11:55 PM1/25/14
to
On Saturday, January 25, 2014 10:59:31 AM UTC-6, Udo Munk wrote:
> Interesting. For this cpm.com patch locations 22f-231 to 0 and 2c0-2c2 to 0, so that it won't run into the serialization error.
>
>
>
> I have never bothered about that stupid serialization code, i just patch it out and be done with it ;-)

Udo, good to hear from you. I'm more of a purist, I guess. I just null out the serial fields themselves.

Larry

Udo Munk

unread,
Jan 25, 2014, 1:24:17 PM1/25/14
to
No, it nulls out the JP Z,xxxx to the error handling routine, which displays the serialization error and then runs into a HALT instruction. AT DRI they were pretty creative to confuse software debuggers and even some hardware debuggers with self modifying code in the serialization test routine. Might work for stupid machines, but it is very easy to overcome with tracing the program flow.

I've always done it this way, I won't even know what to put into the serialization fields of the various CP/M releases, so that the test routine finds a valid result.

Udo Munk

unread,
Jan 25, 2014, 1:29:42 PM1/25/14
to
Ops, I meant JP NZ,xxxx, their algo always results to 0 with the correct serial bits.

Al Kossow

unread,
Jan 25, 2014, 1:45:54 PM1/25/14
to
On 1/25/14 10:24 AM, Udo Munk wrote:
> I won't even know what to put into the serialization fields of the various CP/M releases, so that the test routine finds a valid result.
>

There was some work on documenting this that was mentioned on here while you've been away for CP/M 3

Udo Munk

unread,
Jan 25, 2014, 2:11:27 PM1/25/14
to
Am Samstag, 25. Januar 2014 19:45:54 UTC+1 schrieb Al Kossow:

> There was some work on documenting this that was mentioned on here while you've been away for CP/M 3

Yes, I read through it, thanks. It is a one time problem, the first bootable disk created with movcpm will include the correct serial bits, so I always patched the jumps out, when I had to use another CP/M to initially run the relocator. So there is no real need to figure out the correct serial bits, but sure is interesting to document, so that others nowadays can understand how it was done.

retrogear

unread,
Jan 25, 2014, 4:04:58 PM1/25/14
to
On Saturday, January 25, 2014 1:11:27 PM UTC-6, Udo Munk wrote:
> Am Samstag, 25. Januar 2014 19:45:54 UTC+1 schrieb Al Kossow: > There was some work on documenting this that was mentioned on here while you've been away for CP/M 3 Yes, I read through it, thanks. It is a one time problem, the first bootable disk created with movcpm will include the correct serial bits, so I always patched the jumps out, when I had to use another CP/M to initially run the relocator. So there is no real need to figure out the correct serial bits, but sure is interesting to document, so that others nowadays can understand how it was done.

I've got the entire build script of movcpm for cp/m 2.2 and the disk serialization
process for the CompuPro emulation under Altairz80. I've been trying to contact Peter Schorn to post it on his website. Maybe he's busy or my gmail gets funky sometimes. This script adheres more to the method used by DRI. Here's the script:

xsub
mac cpmovec
mac gbboot0
mac os2ccp0
mac os3bdos0
mac gbbios0
ddt
f100,25ff,0
igbboot0.hex
r
ios2ccp0.hex
r0E00
ios3bdos0.hex
r0E00
igbbios0.hex
rED00
g0
save 36 cpm0.com
mac gbboot1
mac os2ccp1
mac os3bdos1
mac gbbios1
ddt
f100,25ff,0
igbboot1.hex
r
ios2ccp1.hex
r0D00
ios3bdos1.hex
r0D00
igbbios1.hex
rEC00
g0
save 36 cpm1.com
genhex cpm0.com
genhex cpm1.com 100
pip cpm10.hex = cpm0.hex,cpm1.hex
genmod cpm10.hex cpm10.com
ddt
icpm10.com
r700
f100,7ff,0
icpmovec.hex
r
g0
save 49 movcpm1.com

Larry

retrogear

unread,
Feb 2, 2014, 11:14:08 PM2/2/14
to

This is now on Altairz80 website under Other Operating Systems

Larry

William

unread,
Feb 6, 2014, 1:29:21 AM2/6/14
to
Udo Munk wrote:
> Interesting. For this cpm.com patch locations 22f-231 to 0 and 2c0-2c2 to 0, so that it won't run into the serialization error.

Using the modified CPM.COM as above and the CP/M 1.4 BIOS, I've managed to get CP/M 1.3 to boot up on Altair SIMH. Interestingly the CCP is a page longer and the BDOS a page shorter (0900H, and 0C00H bytes respectively) compared to 1.4

Unfortunately disk writes are not working. Does anyone have some specifications for the 1.3 BIOS?

retrogear

unread,
Feb 6, 2014, 5:38:53 AM2/6/14
to
On Thursday, February 6, 2014 12:29:21 AM UTC-6, William wrote:
> Udo Munk wrote: > Interesting. For this cpm.com patch locations 22f-231 to 0 and 2c0-2c2 to 0, so that it won't run into the serialization error. Using the modified CPM.COM as above and the CP/M 1.4 BIOS, I've managed to get CP/M 1.3 to boot up on Altair SIMH. Interestingly the CCP is a page longer and the BDOS a page shorter (0900H, and 0C00H bytes respectively) compared to 1.4 Unfortunately disk writes are not working. Does anyone have some specifications for the 1.3 BIOS?

Here is the one I used:

http://z80cpu.eu/79-data-articles/archive/78-rlee-peter-archive

T/TARBELL/CPM_1-3/CBIOS.OLD

It works on zemu emulator with Tarbell i/o. I haven't tried to port to Altairz80

Larry

Udo Munk

unread,
Feb 6, 2014, 5:58:01 AM2/6/14
to
When porting this CP/M 1.3 to another machine one should read the included Tarbell BIOS as reference. The different memory layout from 1.4 is one thing, but Tarbell also added additional functions to the BIOS jumps for read/write without head load for some reason.

Mr. Emmanuel Roche, France

unread,
Feb 6, 2014, 10:57:22 AM2/6/14
to
Udo Munk wrote:

> When porting this CP/M 1.3 to another machine one should read the included Tarbell BIOS as reference.

The beauty of this CBIOS is that it is/was running on *THREE* (3) different systems:

STD EQU FALSE ;TRUE IF STANDARD I/O.
MSIO2 EQU FALSE ;TRUE IF MITS 2SIO.
ISIO2 EQU FALSE ;TRUE IF IMSAI SIO-2.
TUART EQU TRUE ;TRUE IF CROMEMCO TUART.

(By "Standard I/O", I understand: "ASR-33 Teletype".)

So, apparently, it should run under the Altair emulator of Peter Schorn, since the MITS 2SIO is supported.


> Tarbell also added additional functions to the BIOS jumps for read/write without head load for some reason.

; THESE ENTRY POINTS ADDED BY TARBELL ELECTRONICS.
JMP READN ;READ WITH NO HEAD LOAD.
JMP WRITEN ;WRITE WITH NO HEAD LOAD.

Yours Sincerely,
Mr. Emmanuel Roche, France

William

unread,
Feb 12, 2014, 8:07:41 AM2/12/14
to

> ; THESE ENTRY POINTS ADDED BY TARBELL ELECTRONICS.
>
> JMP READN ;READ WITH NO HEAD LOAD.
>
> JMP WRITEN ;WRITE WITH NO HEAD LOAD.

I have now decompiled 99% of the CP/M 1.3 BDOS code back to PL/M. I'm reordering the data declarations and I expect to resurrect something very close to the original source, complete with ALL original identifiers this weekend. Alas the binary was patched (as was BDOS 1.4) so it will not be possible to recreate the binary.

The 1.3 BDOS does not use the above non-standard BIOS calls. Maybe they are used by utilities?

BDOS 1.3 was compiled with the PL/M cross compiler (written in FORTRAN). It does not implement 1.4's check vectors and so is a page smaller (0C00H bytes) even though the character I/O routines are written in PL/M rather than assembler. (The Cross compiler does not permit linking with other object modules).

Bill Gunshannon

unread,
Feb 12, 2014, 8:12:55 AM2/12/14
to
In article <936bbfec-9d78-4c19...@googlegroups.com>,
William <mr.c...@physics.org> writes:
>
>> ; THESE ENTRY POINTS ADDED BY TARBELL ELECTRONICS.
>>
>> JMP READN ;READ WITH NO HEAD LOAD.
>>
>> JMP WRITEN ;WRITE WITH NO HEAD LOAD.
> I have now decompiled 99% of the CP/M 1.3 BDOS code back to PL/M. I'm reordering the data declarations and I expect to resurrect something very close to the original source, complete with ALL original identifiers this weekend. Alas the binary was patched (as was BDOS 1.4) so it will not be possible=
> to recreate the binary.
> The 1.3 BDOS does not use the above non-standard BIOS calls. Maybe they are used by utilities?
> BDOS 1.3 was compiled with the PL/M cross compiler (written in FORTRAN). It does not implement 1.4's check vectors and so is a page smaller (0C00H bytes) even though the character I/O routines are written in PL/M rather than assembler. (The Cross compiler does not permit linking with other object modules).

Just out of curiosity, did you fix the Fortran error in the compiler code
or are you just running it was?

bill


--
Bill Gunshannon | de-moc-ra-cy (di mok' ra see) n. Three wolves
bill...@cs.scranton.edu | and a sheep voting on what's for dinner.
University of Scranton |
Scranton, Pennsylvania | #include <std.disclaimer.h>

William

unread,
Feb 12, 2014, 11:02:25 AM2/12/14
to

> Just out of curiosity, did you fix the Fortran error in the compiler code
Well I recall (back in 2008) increasing the buffer sizes. If you know of any bugs or enhancements to the Fortran code I would be interested!

Bill Gunshannon

unread,
Feb 12, 2014, 11:39:43 AM2/12/14
to
In article <1be0409b-c1f4-453c...@googlegroups.com>,
Well, a simple test would be to run the command "grep CBIT PLM82.FOR"
Then, look at the size of CBITS which is contained in the COMMON Blocks.
Notice that it is an INTEGER Array with 43 elements in every Subroutine
except OPERAT where it only has 22 elements. Good thing it was the
last item in the COMMON Block or it could have been real interesting.

William

unread,
Feb 12, 2014, 1:20:06 PM2/12/14
to
Thanks Bill! Actually my copy already had that patch! :)

Mr. Emmanuel Roche, France

unread,
Feb 14, 2014, 9:01:57 AM2/14/14
to
One week ago, I wrote:

> The beauty of this CBIOS is that it is/was running on *THREE* (3) different systems:

Well, guess what?

; CP/M BASIC INPUT/OUTPUT OPERATING SYSTEM (BIOS)
;( TARBELL ELECTRONICS) CVE MOD OF 9-5-81
; 1.4 VERSION OF 7-20-79
; THIS BIOS CAN ALSO BE USED WITH 1.3

; (NOTE THAT CP/M VERSION 1.3 ONLY SUPPORTS 2 DRIVES,
; WHILE CP/M VERSION 1.4 WILL SUPPORT 4 DRIVES.)

STD EQU TRUE ;TRUE IF STANDARD I/O OR SSM IO4.
MSIO2 EQU FALSE ;TRUE IF MITS 2SIO.
ISIO2 EQU FALSE ;TRUE IF IMSAI SIO-2.
TUART EQU FALSE ;TRUE IF CROMEMCO TUART.
VDM EQU FALSE ;TRUE IF PROC TECH VDM.
FLASH EQU FALSE ;TRUE IF VG FLASHWRITER.
VB1 EQU FALSE ;TRUE IF SSM VB1-B.
OTHER EQU FALSE ;TRUE IF SOMETHING ELSE.
SOLOS EQU FALSE ;TRUE IF PROC TECH SOLOS.

So, as far as I understand, this later version was running the same for 8 different I/O cards...

http://www.z80cpu.eu/files/archive/rlee/D/DIGITAL%20RESEARCH/CPM_1-4/IO4OS32.ASM

So, it should be possible to run CP/M 1.3, as long as you have an emulator for one of the above 8 "Classic" microcomputer.

Now, the find the 1976 CP/M 1.3 manuals...

William

unread,
Feb 14, 2014, 12:56:29 PM2/14/14
to
> So, it should be possible to run CP/M 1.3, as long as you have an emulator for one of the above 8 "Classic" microcomputer.

At the risk of repeating myself, the CP/M 1.3 BDOS uses a standard BIOS. The nice thing about 1.3 is that it gives you an extra page of TPA compared to 1.4 (which in turn offers a bigger TPA than banked CP/M 3).


Udo Munk

unread,
Feb 14, 2014, 3:00:53 PM2/14/14
to
On Friday, February 14, 2014 6:56:29 PM UTC+1, William wrote:
> > So, it should be possible to run CP/M 1.3, as long as you have an emulator for one of the above 8 "Classic" microcomputer.
>
>
>
> At the risk of repeating myself, the CP/M 1.3 BDOS uses a standard BIOS. The nice thing about 1.3 is that it gives you an extra page of TPA compared to 1.4 (which in turn offers a bigger TPA than banked CP/M 3).

Besides that, the few bits for the serial port are trivial to adjust appropriate. This Tarbell BIOS requires a Tarbell FDC of course, which isn't in an original Altair or IMSAI system, nor in most of the emulations. So in most cases the Tarbell BIOS only is useful as reference to write a BIOS for the FDC available. If a 1.4 BIOS exists for the target FDC, all one needs to modify is the different memory layout. The 1.3 sysgen is functional, but one also can use a 1.4 or 2.2 sysgen, they are more advanced.

The 1.3 manual from 1976, An Introduction to CP/M Features and Facilities, is available since a long time at the DRI manual archive. This is what in later releases was called the User Guide, it explains all the commands and how to use them. Interesting read because it shows, how the software advanced from 1.3 to 1.4.

Jon Saxton

unread,
Feb 14, 2014, 3:26:05 PM2/14/14
to
On 2014-02-15 03:56, William wrote:
> > So, it should be possible to run CP/M 1.3, as long as you have an emulator for one of the above 8 "Classic" microcomputer.
>
> At the risk of repeating myself, the CP/M 1.3 BDOS uses a standard BIOS. The nice thing about 1.3 is that it gives you an extra page of TPA compared to 1.4 (which in turn offers a bigger TPA than banked CP/M 3).
>

Really? So 1.4 would give a TPA in excess of 60 kB and 1.3 even more?
My CP/M 3 systems both have the BDOS at F000.

--
Former sysop of Tesseract RCPM+ which operated
in the 1980s from Dural, NSW, Australia.
http://triton.vg/TesseractRCPM+Catalog.html

Udo Munk

unread,
Feb 14, 2014, 4:43:44 PM2/14/14
to
On Friday, February 14, 2014 6:56:29 PM UTC+1, William wrote:
> At the risk of repeating myself, the CP/M 1.3 BDOS uses a standard BIOS. The nice thing about 1.3 is that it gives you an extra page of TPA compared to 1.4 (which in turn offers a bigger TPA than banked CP/M 3).

I took the both jumps Tarbell added out of my BIOS, the system still works. William is right, the BDOS doesn't use the both added functions. Also their format program is standalone and so it doesn't use any BIOS calls and the tape to disk copy program is a normal CP/M program using BDOS calls. I have no idea why they added this both jumps, they are not needed for anything we have for this 1.3 version.

Udo Munk

unread,
Feb 14, 2014, 5:27:35 PM2/14/14
to
I have uploaded a usable CP/M 1.3 disk to:

http://www.autometer.de/unix4fun/z80pack/

The disk includes BIOS and BOOT source for the cpmsim machine included in z80pack, as well as a sysgen.sub to build a bootable disk.

Your can compare it with the CP/M 1.4 disk for z80pack and see what I have done.

William

unread,
Feb 15, 2014, 12:44:02 AM2/15/14
to

> Really? So 1.4 would give a TPA in excess of 60 kB and 1.3 even more?
>
> My CP/M 3 systems both have the BDOS at F000.
That's exactly my point. The CP/M 1.3 BDOS is only 0C00H bytes long so it offers a larger TPA than CP/M 3. The 1.4 BDOS is 0D00H long. In both cases the BIOS is tiny.
0 new messages