wwarthen / RomWBW

System Software for Z80/Z180/Z280 Computers
GNU Affero General Public License v3.0
323 stars 93 forks source link

Disk definition for IBM floppies #346

Closed OliverUrbann closed 1 year ago

OliverUrbann commented 1 year ago

I am trying to get my CP/M system to work with cpmtools and IBM PC 1.44 MB floppies so I can transfer data that way. For the first files it works, but some files are located wrongly. I wonder why DPB_FD144 in cbios.asm defines a disc with 72 sectors per track. Shouldn't it be 18?

My diskdefs for cpmtools looks like this:

diskdef pc144
  seclen 512
  tracks 160
  sectrk 18
  blocksize 2048
  maxdir 256
  skew 1
  boottrk 2
  os 2.2
end
wwarthen commented 1 year ago

Surprisingly, 72 is correct. CP/M uses a logical sector size of 128 bytes. If the physical sector size is larger (normal), then the CBIOS uses blocking/deblocking to adapt the logical sector size to the physical sector size. The BPB is the logical disk configuration. A physical track is 512x18, so a logical track is 128x72 (for 1.44MB media).

If you want to describe your challenges with cpmtools a bit more, I will be happy to try and help.

Thanks,

Wayne

OliverUrbann commented 1 year ago

Thx for the explanation. Besides the above general explanation, I could give an example of my problem. My system is a custom design using the floppy design and driver from this project. Using a PC and cpmtools, I have written a disk with the CP/M programs asm.com, stat.com etc. Some of them work as expected, e.g. asm.com. However, ed.com seems to start X.com from WordStar, which is currently not on the disk, but was previously on it. So I assume that a translation related to diskdefs is different on both systems.

wwarthen commented 1 year ago

Hi Oliver,

Let me ask a few questions to help isolate the problem.

Have you tried writing a floppy with one of the floppy disk images provided in the RomWBW distribution? If that works, then you will know that there is not a hardware or software issue with your CP/M system.

Can you provide more detail on how you used cpmtools to create your disk image? I would like to see the exact command line (or lines) that you used.

Perhaps you could send me the actual disk image that is exhibiting the problems.

Thanks,

Wayne

OliverUrbann commented 1 year ago

Hi Wayne,

thanks again for your help. Indeed the RomWBW images work, so I changed some little things so that it matches RomWBW better, e.g. "skew 0", before mkfs.cpm creating an empty file of correct size etc. Can't tell what the problem exactly was but its gone now.

wwarthen commented 1 year ago

Glad you got it working.