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

Maximum CP/M-80 2.2 volume size?

960 views
Skip to first unread message

Steven Hirsch

unread,
Mar 9, 2009, 6:27:27 PM3/9/09
to
I have Googled extensively and dragged out every book on the shelf, but cannot
find an answer to this question! Much discussion of maximum _file_ size, but
nothing on the disk itself.

From a purely mathematical standpoint, it would seem to be 1GB, but somehow I
think the limit is lower.

Steve

All...@localhost.net

unread,
Mar 9, 2009, 7:56:55 PM3/9/09
to
On Mon, 09 Mar 2009 18:27:27 -0400, Steven Hirsch <snhi...@gmail.com>
wrote:

it's 65525*128 or 8mb in roundish numbers.

Reason they only do 16bit math and the limit is the total number of
sectors not the total number of allocation blocks.

If it were the latter it could go to 1GB. If you want that then look
at P2dos, Novados, suprbdos, Zrdos, Dosplus. Before someone else
chimes in we also had DRIs improved but those only go to 32mb
namely CP/m+ and MPM.


Allison

All...@localhost.net

unread,
Mar 9, 2009, 8:02:00 PM3/9/09
to
On Mon, 09 Mar 2009 23:56:55 GMT, All...@localhost.net wrote:

>On Mon, 09 Mar 2009 18:27:27 -0400, Steven Hirsch <snhi...@gmail.com>
>wrote:

>> From a purely mathematical standpoint, it would seem to be 1GB, but somehow I
>>think the limit is lower.
>>
>>Steve
>
>it's 65525*128 or 8mb in roundish numbers.
>
>Reason they only do 16bit math and the limit is the total number of
>sectors not the total number of allocation blocks.
>
>If it were the latter it could go to 1GB. If you want that then look
>at P2dos, Novados, suprbdos, Zrdos, Dosplus. Before someone else
>chimes in we also had DRIs improved but those only go to 32mb
>namely CP/m+ and MPM.

I forgot one detail, CP/M deals in logical disks. So if you have a
32mb disk it can be partitioned in the bios as four 8mb drives. The
limit there is a maximum of 16 drives (cp/m 2.x). So the drive can
be 10gb but you can only use 8mb chunks and a maximum of 16 of those.

The improved BDOS allow larger drives but no big help on the number of
them.

For practical use 32mb is big, 45mb is huge especially when compared
to floppies.

Allison


Steven Hirsch

unread,
Mar 9, 2009, 8:58:19 PM3/9/09
to
All...@localhost.net wrote:
> On Mon, 09 Mar 2009 23:56:55 GMT, All...@localhost.net wrote:
>
>> On Mon, 09 Mar 2009 18:27:27 -0400, Steven Hirsch <snhi...@gmail.com>
>> wrote:
>>> From a purely mathematical standpoint, it would seem to be 1GB, but somehow I
>>> think the limit is lower.
>>>
>>> Steve
>> it's 65525*128 or 8mb in roundish numbers.
>>
>> Reason they only do 16bit math and the limit is the total number of
>> sectors not the total number of allocation blocks.

Ah. Interesting. Thanks!

>> If it were the latter it could go to 1GB. If you want that then look
>> at P2dos, Novados, suprbdos, Zrdos, Dosplus. Before someone else
>> chimes in we also had DRIs improved but those only go to 32mb
>> namely CP/m+ and MPM.

I did find mention of that in the ZSDOS documentation.

Jeffrey W. Shook

unread,
Mar 9, 2009, 10:07:27 PM3/9/09
to

Hello Allison,

I thought that the maximum disk size for CP/M 3.0 was 512 MB
although I never had one anywhere near that large. A check of
the CP/M 3 Programmer's Guide revealed the following table.

2.3 BDOS File System CP/M 3 Programmer's Guide

Table 2-2 displays the relationship between data block size
and drive capacity.

Table 2-2. Logical Drive Capacity

Data Block Size Maximum Drive Capacity
1K 256 Kilobytes
2K 64 Megabytes
4K 128 Megabytes
8K 256 Megabytes
16K 512 Megabytes


What looks like the same table is also in the MP/M II PG.

MP/M II Programmer's Guide 2.2.1 File Naming Conventions

2.2.2 Disk Drive and File Organization

The BDOS file system can support from one to sixteen logical
drives. The maximum file size supported on a drive is 32 megabytes.
The maximum capacity of a drive is determined by the data block size
specified for the drive in the XIOS. The data block size is the
basic unit in which the BDOS allocates disk space to files. Table
2-2 displays the relationship between data block size and drive
capacity.

Table 2-2. Logical Drive Capacity

Data Block Size Maximum Drive Capacity
1K 256 Kilobytes
2K 64 Megabytes
4K 128 Megabytes
8K 256 Megabytes
16K 512 Megabytes


Jeffrey W. Shook

All...@localhost.net

unread,
Mar 9, 2009, 10:41:58 PM3/9/09
to


That happens, memory refresh fails. Do check to see if the largest
file is 32M. I'm remembering 32M from those versions for a reason.

Largest CP/m system I have is the AmproLB+ with a 45mb scsi (7
partitions) the next larger has two quantum D540s (31mb each).
The rest have 10 or 31mb drives or 32MB CFs. Anything larger
gets too unweildly and directory searches become a "go for coffee"
thing.


Allison

Mr Emmanuel Roche, France

unread,
Mar 10, 2009, 5:56:31 AM3/10/09
to
Hello, Jeffrey!

My last messages to you do not seem to have reached you, since I never
got an answer...

So, could you send me a message to my private e-mail address?

We need to re-synchronize.

Yours Sincerely,
Mr. Emmanuel Roche, France

Steven Hirsch

unread,
Mar 10, 2009, 7:09:22 AM3/10/09
to
Jeffrey W. Shook wrote:

>>> I have Googled extensively and dragged out every book on the shelf,
>>> but cannot find an answer to this question! Much discussion of
>>> maximum _file_ size, but nothing on the disk itself.

>> it's 65525*128 or 8mb in roundish numbers.


>>
>> Reason they only do 16bit math and the limit is the total number of
>> sectors not the total number of allocation blocks.
>> If it were the latter it could go to 1GB. If you want that then look
>> at P2dos, Novados, suprbdos, Zrdos, Dosplus. Before someone else
>> chimes in we also had DRIs improved but those only go to 32mb
>> namely CP/m+ and MPM.

> I thought that the maximum disk size for CP/M 3.0 was 512 MB


> although I never had one anywhere near that large. A check of
> the CP/M 3 Programmer's Guide revealed the following table.
>
> 2.3 BDOS File System CP/M 3 Programmer's Guide
>
> Table 2-2 displays the relationship between data block size
> and drive capacity.
>
> Table 2-2. Logical Drive Capacity
>
> Data Block Size Maximum Drive Capacity
> 1K 256 Kilobytes
> 2K 64 Megabytes
> 4K 128 Megabytes
> 8K 256 Megabytes
> 16K 512 Megabytes

The above applies to CP/M 3.0 only and that CP/M 2.2 is in fact 8MB. Is that
correct?

All...@localhost.net

unread,
Mar 10, 2009, 7:32:57 AM3/10/09
to
On Tue, 10 Mar 2009 07:09:22 -0400, Steven Hirsch <snhi...@gmail.com>
wrote:

>Jeffrey W. Shook wrote:


Yes.

Hal

unread,
Mar 10, 2009, 2:51:39 PM3/10/09
to
On Tue, 10 Mar 2009 07:09:22 -0400
Steven Hirsch <snhi...@gmail.com> wrote:

> Jeffrey W. Shook wrote:

> > 2.3 BDOS File System CP/M 3 Programmer's Guide
> >
> > Table 2-2 displays the relationship between data block size
> > and drive capacity.
> >
> > Table 2-2. Logical Drive Capacity
> >
> > Data Block Size Maximum Drive Capacity
> > 1K 256 Kilobytes
> > 2K 64 Megabytes
> > 4K 128 Megabytes
> > 8K 256 Megabytes
> > 16K 512 Megabytes
>
> The above applies to CP/M 3.0 only and that CP/M 2.2 is in fact
> 8MB. Is that correct?
>

This 512 MB limit also exists in ZSDOS/ZDDOS and is due to the
20-bit math implemented in the hard-disk code (1024 512-byte
"sectors" = 512 Megabytes).

Hal

CBFalconer

unread,
Mar 10, 2009, 8:52:59 PM3/10/09
to

I don't remember about CP/M 2.2, but it is smaller than DOSPLUS.
DOSPLUS 2.5 can handle files of over 262,000 records, or close to 3
megabytes. See:

<http://cbfalconer.home.att.net/download/cpm/>

--
[mail]: Chuck F (cbfalconer at maineline dot net)
[page]: <http://cbfalconer.home.att.net>
Try the download section.


CBFalconer

unread,
Mar 10, 2009, 8:56:40 PM3/10/09
to
All...@localhost.net wrote:
> Steven Hirsch <snhi...@gmail.com> wrote:
>
>> I have Googled extensively and dragged out every book on the
>> shelf, but cannot find an answer to this question! Much
>> discussion of maximum _file_ size, but nothing on the disk
>> itself. From a purely mathematical standpoint, it would seem
>> to be 1GB, but somehow I think the limit is lower.
>
> it's 65525*128 or 8mb in roundish numbers.

I think those numbers are in serious error for CP/M 2.2.

All...@localhost.net

unread,
Mar 10, 2009, 11:35:07 PM3/10/09
to
On Tue, 10 Mar 2009 19:56:40 -0500, CBFalconer <cbfal...@yahoo.com>
wrote:

>All...@localhost.net wrote:
>> Steven Hirsch <snhi...@gmail.com> wrote:
>>
>>> I have Googled extensively and dragged out every book on the
>>> shelf, but cannot find an answer to this question! Much
>>> discussion of maximum _file_ size, but nothing on the disk
>>> itself. From a purely mathematical standpoint, it would seem
>>> to be 1GB, but somehow I think the limit is lower.
>>
>> it's 65525*128 or 8mb in roundish numbers.
>
>I think those numbers are in serious error for CP/M 2.2.

Try a larger disk and see what happens. I did, all sorts of file
corruption as the math does not extend far enough for CP/m2.2
to go beyond 8mb and you get wrap around.

In theory it allows for 65536* alloc and that easily goes past
8mb but, the internal math is broke and the total number of
sectors is the limit or 65536*128 where 128 is the logical sector
size.

It's covered in Andy Johnson-Lairds book. Almost all of the P2DOS
derived/inspired BDOS improvements and CP/M2 replacements all
have far larger limits of at least 512MB.

Allison


All...@localhost.net

unread,
Mar 10, 2009, 11:42:10 PM3/10/09
to
On Tue, 10 Mar 2009 19:52:59 -0500, CBFalconer <cbfal...@yahoo.com>
wrote:

>Steven Hirsch wrote:
>>
>> I have Googled extensively and dragged out every book on the
>> shelf, but cannot find an answer to this question! Much discussion
>> of maximum _file_ size, but nothing on the disk itself.
>>
>> From a purely mathematical standpoint, it would seem to be 1GB,
>> but somehow I think the limit is lower.
>
>I don't remember about CP/M 2.2, but it is smaller than DOSPLUS.
>DOSPLUS 2.5 can handle files of over 262,000 records, or close to 3
>megabytes. See:
>
> <http://cbfalconer.home.att.net/download/cpm/>

You slipped a digit, I think you meant 32MB. Thats file size not
disk size.

CP/M 2 cannot. It reads more like 8mb or 65536 records (record is
128bytes) whichever is larger. Since the math is broke if you try to
have disk larger than 8mb and put files larger than 8mb on it bad
stuff happens.

Allison

Steven Hirsch

unread,
Mar 11, 2009, 6:54:46 AM3/11/09
to
All...@localhost.net wrote:

> In theory it allows for 65536* alloc and that easily goes past
> 8mb but, the internal math is broke and the total number of
> sectors is the limit or 65536*128 where 128 is the logical sector
> size.
>
> It's covered in Andy Johnson-Lairds book. Almost all of the P2DOS
> derived/inspired BDOS improvements and CP/M2 replacements all
> have far larger limits of at least 512MB.

For my curiousity: Where in the Johnson-Laird book is this limit discussed?
That was the first place I looked and failed to find a mention of disk size
limits.

All...@localhost.net

unread,
Mar 11, 2009, 7:29:41 AM3/11/09
to
On Wed, 11 Mar 2009 06:54:46 -0400, Steven Hirsch <snhi...@gmail.com>
wrote:

>All...@localhost.net wrote:

Page 38 below mid page...

" The number of directory entries (less -1) is best set to 511 for
logical disks of 1 megabyte and either 1023 or 2047 for larger disks.
Remember that under CP/M version 2 you cannot have a logical disk
lager than 8 megabytes."

I've also seen ths mentioned in other places including the source for
P2dos, novados and other CP/M 2 replacements.


Allison

Roger Schmidt

unread,
Mar 11, 2009, 4:55:55 PM3/11/09
to
Steven Hirsch skrev:

This all could be changed with a BDOS rewrite right?? The 8MB limit that
is...

Roger

All...@localhost.net

unread,
Mar 11, 2009, 7:47:56 PM3/11/09
to
On Wed, 11 Mar 2009 20:55:55 GMT, Roger Schmidt <ro...@ammeberg.com>
wrote:


Yes, it's been done. It's called P2dos, novados, suprbdos, Zrdos
Zsdos, DosPlus, CP/M+, MPM and likely I forgot a few.

Allison

dott.Piergiorgio

unread,
Mar 12, 2009, 1:05:00 AM3/12/09
to
Question:

This 8 Mb limit was because back then the common HD available was 10 MB
(unformatted) whose once formatted has actually 8 MB for data ?

Late 70s and early 80s was characterized by lack of margins for the very
rapid increase in prestations, the most known being the 640K limit of
the MS-DOG PCs...

Best regards from Italy,
Dott. Piergiorgio.

All...@localhost.net

unread,
Mar 12, 2009, 7:32:17 AM3/12/09
to
On Thu, 12 Mar 2009 06:05:00 +0100, "dott.Piergiorgio"
<dott.Pierg...@KAIGUN.fastwebnet.it> wrote:

>Question:
>
>This 8 Mb limit was because back then the common HD available was 10 MB
>(unformatted) whose once formatted has actually 8 MB for data ?

No, it's a limitation of the internal artihmetic. It's a design
breakage.

>
>Late 70s and early 80s was characterized by lack of margins for the very
>rapid increase in prestations, the most known being the 640K limit of
>the MS-DOG PCs...

that is not part of this.

Allison

Peter Hill

unread,
Mar 12, 2009, 1:41:36 PM3/12/09
to
On Thu, 12 Mar 2009 06:05:00 +0100, "dott.Piergiorgio"
<dott.Pierg...@KAIGUN.fastwebnet.it> wrote:

I've got 2 examples of MS-DOS computers that have and report 768K.
It's purely a IBM PC and IBM PC clone limitation due to location of
expansion cards in memory.
--
Peter Hill
Spamtrap reply domain as per NNTP-Posting-Host in header
Can of worms - what every fisherman wants.
Can of worms - what every PC owner gets!

All...@localhost.net

unread,
Mar 12, 2009, 11:08:40 PM3/12/09
to
On Thu, 12 Mar 2009 17:41:36 +0000, Peter Hill
<peter....@nospam.demon.co.uk> wrote:

>On Thu, 12 Mar 2009 06:05:00 +0100, "dott.Piergiorgio"
><dott.Pierg...@KAIGUN.fastwebnet.it> wrote:
>
>>Question:
>>
>>This 8 Mb limit was because back then the common HD available was 10 MB
>>(unformatted) whose once formatted has actually 8 MB for data ?
>>
>>Late 70s and early 80s was characterized by lack of margins for the very
>>rapid increase in prestations, the most known being the 640K limit of
>>the MS-DOG PCs...
>>
>>Best regards from Italy,
>>Dott. Piergiorgio.
>
>I've got 2 examples of MS-DOS computers that have and report 768K.
>It's purely a IBM PC and IBM PC clone limitation due to location of
>expansion cards in memory.

there were msdos on S100 crates too many with as much as a full 1mb
using shadow rom.

IBM figured 256k was adaquate initially.

Allison

0 new messages