Multi-platform distribution format (Was: Backups [was
Jerome H. Fine
jhfinedp3k at compsys.to
Mon Sep 21 20:09:14 CDT 2015
>Johnny Billquist wrote:
>> In any case, adding and correcting the extra code was quite
>> easy. The challenge was to also add support for a user buffer
>> being above the 1/4 MB boundary in a PDP-11 with all 4 MB
>> of memory when a Mapped RT-11 Monitor was used since
>> the controller supported only 18-bit addresses.
>
> This would be the Qbus controller. And that is an annoying detail,
> yes. You need a bounce buffer in the low part of memory. One of a few
> Qbus controllers with 18-bit addressing for DMA.
Well, it was an early controller and since it was for a floppy
drive and the problem was really only with a Mapped RT-11
Monitor when the user buffer was in extended memory above
1/4 MB, it really was not a major problem. What actually
might be more of a problem (if I ever finish the job of placing
the code and bounce buffer into extended memory) is making
sure that the portion of extended memory is below 1/4 MB.
That would be the responsibility of the installation code to
allocate the memory and check to make sure that the bounce
buffer is below 1/4 MB.
I guess that could also be done with the RK05 controller
and the original RL01 / RL02 controller. The latter versions
of the RL01 / RL02 controller support 22-bit user buffer
addresses. What about tape controllers?
And then there is the problem of making sure that other programs
and device drivers don't gobble up the memory below 1/4 MB
which they don't actually require. That aspect, it turns out is
actually very easy to solve. The code to allocate any extended
memory in RT-11 normally allocates memory from the bottom
up. However, it is possible to change a single word of just one
of the instructions in the XALLOC subroutine in RT-11 so that
all of the memory is allocated from the top down! And since it
is a single word being changed, it is not even necessary to stop
interrupts while it is being done. Eventually I want to write the
code for XAX.SYS which will support:
SET XA HIGH
SET XA LOW
SET XA TOGGLE
SET XA BOOT=[LOW,HIGH]
SET XA SHOW
SET XA HELP
and allow the user to control how extended memory is allocated
under a Mapped RT-11 Monitor.
R RESORC /Z
already provides the current setting, otherwise provided by:
SHOW CONFIGURATION
I guess I could check the setting in DYX.SYS before I allocate
the extended memory and toggle the setting back after the
extended memory is allocated.
>> Another problem was that the index hole for single-sided floppies
>> was offset about 1/2" from the index hole for double-sided
>> floppies. That challenge was solved by using a DPDT switch
>> to flip the sensors that were used on the DSD 880/30 and
>> that supported using, as double-sided, floppies with the single-
>> sided index hole. While a number of 8" floppies had been
>> purchased that had the double-sided index hole, that was less
>> than 10% of the total and after punching the extra pair of holes
>> in single-sided floppies just a few times, it was very quickly
>> apparent that the DPDT switch was a much better one-time
>> solution. What was initially a surprise was that EITHER the
>> single-sided OR double-sided index hole could be used with
>> the same floppy to access the sectors even though the holes
>> were in different positions. The timing did not seem to matter.
>> Only the device driver software cared if the bit was set one
>> way or the other, so flipping the sensors which were activated
>> was an excellent one-time solution when the user (me!!)
>> wanted to use a floppy with a single-sided index hole as a
>> double-sided floppy.
>>
>> In any case, the code was enhanced, my version of DYX.SYS
>> supported the RX03 double-density, double-sided floppy drive
>> under a 22-bit RT-11 monitor. So I set about the job of the
>> LLFs for double-sided 8" floppy media. As mentioned above,
>> in addition to a couple of dozen 8" DEC floppies, I had about
>> a dozen other brands. To make a long story short at this point,
>> the results were "interesting". Every non-DEC branded 8" floppy
>> could hold an LLF for double-sided, double-density. On the other
>> hand, I seem to remember that only about 2/3 of the DEC 8"
>> floppies managed to complete the LLF. The other 1/3 of the
>> DEC 8" floppies could hold an LLF on the normal first side,
>> but not on the second side.
>>
>> Obviously this story was somewhat different since it was not
>> necessary to ask DEC maintenance to make the LLF capability
>> with the DSD 880/30 to work - it already worked. In addition,
>> there was no DEC maintenance contract in the first place and
>> there was no 50 gallon oil drum. There was also no refusal
>> by DEC to enhance the DY.MAC device driver to support
>> the RX03 floppy drive since DEC was not asked.
>>
>> Over the decades since, I have always wondered how it was
>> even possible for ONLY the DEC 8" floppies to be unable to
>> take an LLF double-sided when every other brand managed
>> to do so. There was probably one floppy that was so severely
>> damaged that it would not take an LLF on either side, but that
>> was a specific exception. Any 8" floppy which could take a
>> double-sided, double-density LLF held the data successfully
>> when used in practice.
>
> Probably qualification differences. DEC only cared if one side was
> good. So floppies with one bad side were still acceptable for DEC,
> since they only used one side anyway.
> Floppies sold as double sided needed to pass testing on both sides.
I would agree with your analysis if any of the other non-DEC floppy
brands had even a couple of floppies which had not accepted an LLF
for double-sided operation. BUT, NOT EVEN ONE??????????
It seems a bit unlikely unless DEC specifically managed to locate a
shipment at an excellent cost advantage and the floppies could be
made at less expense.
Don't forget that except for less than 10% of the floppies being
specifically for double-sided operation, all of the other non-DEC
brand floppies were also sold ONLY for single-sided operation.
So how did ONLY DEC manage to acquire the one batch of
floppy media that supported using a substantial portion of them
(about 33% if I remember correctly) on only one side even
though they were coated on both sides. In fact, I used to wonder
why the floppy material was coated on both sides in the first
place. By then, double-sided 5 1/4" floppies were the standard
for the PC systems, so it was reasonable for all floppy media
to be produced to support double-sided operation.
ALL LONG AGO NOW IN THE PAST!!!!!!!!!!!!!!!!!!
Jerome Fine
More information about the cctalk
mailing list