Author Topic: FID files and multiple drives  (Read 883 times)

0 Members and 1 Guest are viewing this topic.

Offline JonB

  • 6128 Plus
  • ******
  • Posts: 757
  • Country: gb
  • Liked: 206
  • Likes Given: 48
FID files and multiple drives
« on: 18:48, 20 January 17 »
One for the FID experts.


Most of my information comes from http://www.seasip.info/Cpm/amsfid.html



I have got my IDE driver to a working state, and I would like to allocate multiple drives in its FID_EMS routine. This means calling the SVC_D_HOOK several times. Each time it is called, I pass the same DPT (which is right, as all drives have the same parameters) and the same ALV buffer size. I expect SVC_D_HOOK to allocate a new ALV buffer for each call, and (on successful return) I retrieve the drive ID and use it to build a map of drive ID to IDE partition number. This is then used in the FID read/write routines to choose the correct IDE partition for the corresponding drive ID.


So far, so good; only it doesn't quite work. So what I have done instead is to hard code the IDE partition ID into two copies of the FID. One uses IDE partition 0, the other partition 1, but they load separately (which takes time), and of course there is more memory usage. But this does work. Today I successfully copied all of the PCW CP/M files onto C: from B:, then from C: to D: (which was pretty fast!).


I guess my question is about other IDE driver implementations. Do any of them support multiple IDE drives from one FID? If so, I know that my mapping scheme will work, as it does on my CP/M 2.2 IDE driver.

Offline GeoffB17

  • 6128 Plus
  • ******
  • Posts: 644
  • Country: gb
  • PCW since '85
  • Liked: 143
  • Likes Given: 7
Re: FID files and multiple drives
« Reply #1 on: 21:09, 20 January 17 »
Jon,


Sounds like you're making great progress.


I don't know the answer to your question, but I suspect that back in those days, few people would have wondered about adding more than 1 HD to any computer.   Even having 1 HD to add was a major thing, whichever way you looked at it.


I don't remember any mention of any of the add-on HDs being any more than 'a' HD, as in singular.


Could the original PC(XT) cope with more than 1 HD?


I understand that reference to the Joyce emulator may be a total aside, but that will allow HDs of C: thru to P: (excl M: which is already assigned).   That used only the one FID file.   Did you get around to dis-assembling that file?


Best wishes,


Geoff

Offline JonB

  • 6128 Plus
  • ******
  • Posts: 757
  • Country: gb
  • Liked: 206
  • Likes Given: 48
Re: FID files and multiple drives
« Reply #2 on: 22:23, 21 January 17 »
No, Geoff not yet. It started working, and besides it's far better to work this out for myself. Therein lies the satisfaction, despite the questions I've asked to speed things up.

So. I think it's possible to implement up to 6 drives under CP/M and only one tiny little FID. They are really partitions on a single physical drive, although the TRS-80 driver supports 32 partitions across 2 separate devices (master/slave) under CP/M 2.2., You can only access 16 at any one time, but you can map any of the 32 partitions to any drive letter using a utility I wrote. But due to the limitations of the FID under CP/M 3, I think there's little point in implementing drive mapping on the PCW.

I'm definitely getting closer. Now, what about the hardware? That is next up.
« Last Edit: 23:57, 21 January 17 by JonB »

Offline JonB

  • 6128 Plus
  • ******
  • Posts: 757
  • Country: gb
  • Liked: 206
  • Likes Given: 48
Re: FID files and multiple drives
« Reply #3 on: 13:11, 22 January 17 »
I think this will do nicely...
« Last Edit: 13:13, 22 January 17 by JonB »

Offline JonB

  • 6128 Plus
  • ******
  • Posts: 757
  • Country: gb
  • Liked: 206
  • Likes Given: 48
Re: FID files and multiple drives
« Reply #4 on: 13:17, 22 January 17 »
Some notes:
  • It's yellow because my 9512 is plugged into a TV with an amber filter fixed over the screen.
  • B: is missing because I hadn't logged it in prior to doing SHOW.
  • Drives have different capacities because I've copied stuff onto them to test they work.
  • Drives with 8,144k have no files so are showing the full capacity.