[net.micro.cpm] Directory

MKATZ%UMDB.BITNET@wiscvm.ARPA (03/24/86)

I know that most of you are 8-bit CPMers, but maybe there is someone
out there using CPM-86 (or CCPM-86 or MPM-86) who can help me.  I am using
an Altos 586 running MPM-86.  I have a 20 meg (15 formatted) hard disk, but
I am always almost out of directory entries even though I have only filled
about half the disk.  The problem seems to be that the disk can only have
1024 directory entries and since XFCBs (which give me time/date stamping
and password protection which I really need) nearly double the number of
entries required (especially since I have a lot of little programs, etc.)
I can only have about 500 individual files on the drive.  In MPM-86, XFCBs
are optional but I think they are automatic in Concurrent CPM-86 so I am
probably not the only one with this problem.  MS-DOS doesn't have this problem
because the direectories (except the root) are stored as files.  I don't
need a directory structure - 16 user areas is plenty - but I could really
use the larger directory space.  The Altos manual briefly mentions multiple
logical drives on one physical drive but nowhere in the Altos or DRI
documentation does it say how to do this.  Does anyone know how to get around
this problem ???  Any help will be greatly appreciated.
                        Manasseh Katz

jp@lanl.ARPA (James Potter) (03/24/86)

I am running Concurrent CP/M.  The time/date stamping is optional and
uses 25% of the directory for the date and time info.  What you have to do
to partition your disk is to set up drive definition entries for each
partitiion.  One of the pieces of information in each table is how many
tracks to offset for the start of the "logical disk".  Perhaps you
remember for the floppy disks there are two tracks reserved for the system.
This uses the same entry to the table that I am describing for the 
partitioned hard disk.  There is no limit on the number of traks to
skip.  For instance if your disk has 315 tracks (cylinders), skip 0
for partition A, 105 for partition B, and 210 for partition C.  If there
are 6 heads and 9 1K sectors per track this divides the disk into three
5.6 Megabyte partitions.  There is no special reason why each partition
needs to be the same size.  Dividde it up however you like.  All of this
requires that you modify your BIOS and reassemble it.  You cannot do this
without the source code for at least this part of your BIOS.  Consult your
computer manuals.  I have set up my CompuPro system with an 8 Mbyte hard
disk as drive A and a 16 Mbyte hard disk with two 5 Mbyte and one 6 Mbyte
partitions.  It took me a while to figure all of the ins and outs of this,
especially having two different hard disks with differing partion schemes
but it is basically straight forward once you learn all the details you
would rather not have learned about your system.

Jim Potter  jp@lanl.arpa

MKATZ%UMDB.BITNET@wiscvm.ARPA (03/30/86)

Well, I received many replies to my directory problem.  The easiest seemed
to be to change a couple of numbers (Alloc0/1, #dir. entries -1) in the
XIOS and everything should work right away.  Unfortunately, that didn't
work.  I did get 2048 directory entries (instead of 1024), but I also got
a lot of garbage in the directory after the MPM system files.  I decided to
give it another try.  I looked at the XIOS files again.  The only other number
which seemed like it should have an effect was the number of directory tracks
to cache (the Altos has a 64K disk cache which speeds things up a lot).
Anyway, I got the same results.  I think the problem is that INSTMPM (an Altos
utility to install MPM on the hard disk) may have certain values such as the
# of directory entries hardcoded in some way so that even when I change them
in the XIOS, the initial installation will mess up the directory.  I don't
know what to do next.  I don't want to try multiple logical disks,
because I know that is more complicated and therefore more likely to run
into similar problems.  If anyone out there has any ideas, please let me know.
The solution might be to bypass INSTMPM, but since I have never installed a
hard disk without, I am not sure what I need to do.  I don't know how to
initialize the hard disk other than that the Altos manual says to erase
the disk to E5E5 before installing MPM.  There is a word in the XIOS that
specifies what type of disk(s) are on the system, and it appears to be changed
by INSTMPM.
                                  Manasseh Katz