Page 1 of 1

CP/M Disks

PostPosted: March 10th, 2019, 2:56 pm
by kwiebe
Noob questions:

Out of the box the clone includes CP/M 2.2. If I boot that floppy, CP/M loads and I get the A> prompt as expected. If I switch to drive B:, CP/M accepts it and tells me there are no files. If I attempt to switch to C: I get a BDOS error and the computer seems to go into an endless loop.

I watched video 16 which is a CP/M intro and on that video there are files on B: and even C:.

So a few questions:

How do I get content to/from CP/M disks, once CP/M is running?

What tells CP/M the disks it has to work with?

On the support site there are .dsk files, some of which are bootable and some not. I'm thinking the bootable ones go into the clone config monitor but not sure how I work with non-bootable. I think I just need a nudge in the right direction to understand conceptually how all this ties together.

Is there a graceful way to get out of a loop caused by doing something like trying to access a drive that does not exist?

Re: CP/M Disks

PostPosted: March 10th, 2019, 4:11 pm
by toml_12953
kwiebe wrote:Noob questions:

Out of the box the clone includes CP/M 2.2. If I boot that floppy, CP/M loads and I get the A> prompt as expected. If I switch to drive B:, CP/M accepts it and tells me there are no files. If I attempt to switch to C: I get a BDOS error and the computer seems to go into an endless loop.

I watched video 16 which is a CP/M intro and on that video there are files on B: and even C:.

So a few questions:

How do I get content to/from CP/M disks, once CP/M is running?

What tells CP/M the disks it has to work with?

On the support site there are .dsk files, some of which are bootable and some not. I'm thinking the bootable ones go into the clone config monitor but not sure how I work with non-bootable. I think I just need a nudge in the right direction to understand conceptually how all this ties together.

Is there a graceful way to get out of a loop caused by doing something like trying to access a drive that does not exist?


Did you mount CP/M formatted disks in all the drives you want to access? CP/M can't use Altair BASIC disks. You mount the non-bootable disks in B:, C:, D: etc. After you boot CP/M, you specify the drive letter in front of the program name you want to run. Suppose CHESS.COM is on the disk in drive C:. At the A> prompt you'd type C:CHESS to run the program. Alternatively, you could make C: the default drive by typing C and pressing Enter at the A> prompt. The prompt will then change to C> and you can just type CHESS to run the program.

Re: CP/M Disks

PostPosted: March 10th, 2019, 4:18 pm
by kwiebe
toml_12953 wrote:
Did you mount CP/M formatted disks in all the drives you want to access? CP/M can't use Altair BASIC disks. You mount the non-bootable disks in B:, C:, D: etc.


That is what I don't know how to do. I boot CP/M 2.2 and at that point I have an A: drive (with files on it) and a B: drive (no files, but recognized as a drive). I understand there is a difference between CP/M disks and BASIC disks. Also I do see CP/M disk images on the site. But I don't understand how to manipulate bootable and non-bootable images in and out of CP/M running on the clone.

Manipulating disks within CP/M is different than manipulating disks at the Altair (config monitor) level, I think anyway.

At least for a bootable disk I could get that into config monitor and boot from it, right? But then I'm still missing something as far as the drives accessible from within CP/M.

What do A, B, C, D etc. map to and how is that mapping accomplished?

Is this as simple as A=0, B=1, and C=2?

If it is, that's great. I guess what threw me was, when I loaded CP/M I booted from drive 0 of course. At the time, drive 1 had Disk Basic 300-5-F, and drive 2 had Altair DOS. So when I told CP/M to switch to "B:" it was looking at Disk Basic 300-5-F? (it found a valid disk B; but no files). And when I switched to C which caused it heartburn, it was looking at Altair DOS? (I can see why it would have heartburn)

Re: CP/M Disks

PostPosted: March 17th, 2019, 8:45 pm
by TronDD
Manipulating disks within CP/M is different than manipulating disks at the Altair (config monitor) level, I think anyway

Sort of, yes. You use the Clone's admin menu to represent physically inserting and removing disks from drives. Changing which disk you are reading is, of course controlled by CP/M.

[At least for a bootable disk I could get that into config monitor and boot from it, right?/quote]
You boot from the disk in drive 0 using a bootloader. For example, the Multi-boot loader in the PROM at 0xFF00

Is this as simple as A=0, B=1, and C=2?

Yes. As long as they are all formatted for CP/M, as you found out already.

At the time, drive 1 had Disk Basic 300-5-F, and drive 2 had Altair DOS. So when I told CP/M to switch to "B:" it was looking at Disk Basic 300-5-F? (it found a valid disk B; but no files).

Yes. Apparently, the disk formatting is similar enough for CP/M to access the disk, but in a way it can read what's on it.

While running CP/M, you can access the admin menu with STOP + Left AUX, change disks, exit out, switch back to RUN and CP/M picks up right where it was and you can access the new disk.