glitch said:
...looked into creating hard sector simulator...
Its a simple sequencer. Catch a Index pulse, time the assertion of simulated sector pulses, constantly calibrate by the period between index pulses.
Maybe the others failed because they had no auto-calibration scheme when doing it in TTL hardware.
If you used a simple micro-controller with 10 pins or less, you could put more intelligence into it. For example, a micro could auto-calibrate with no additional circuitry assuring that sector pulses are proportional to the current index period. It might also encode in internal reall-time clock (RTC) value on the index pulse line when the drive motor was turned off... i.e. a phantom signal for RTC anytime the system micro wanted it.
The MSP430 is overkill but could do the RTC feature by adding a tiny surface-mount RTC crystal. A tiny PIC could also do the job without the RTC feature. Either way the add-on surface mount circuitry would likely fit within the TTL DIP profile so that a 74xx chip swap would be the only installation (ideally) for the simple version of synthesizing 10 auto-calibrated sector pulses per revolution.
You could then always unplug the add-in DIP circuit and put the original 74xx DIP back in the socket. No software changes required.
Taking it further (probably no real justification as the best pay-off is using soft-sectored floppies). you
might add a higher storage format geometry. It would be nice to get more storage on each MDS floppy. Maybe a larger sectors size with a smaller sector count? Maybe adding 80 track drive support would be a transparent enhancement requiring only firmware driver changes. I did a 4x floppy storage increase via Rom hack to add 80 track double sided support in my Xerox 820s long ago.
I've got my MDS system at home now and will look through the schematics and documentation to see what is really feasible.
Using a tiny micro allows the possibility to bit-banged one of the drive control lines with a command semaphore to switch to perhaps 11 sectors a track instead of 10 or even 5 or 6 sector pulses for larger sector sizes. Its quite possible there is room for more data by some altered track geometry. The only hard sector floppies I recall being available were 10 and maybe 16 back in the day, so its quite possible 10 sectors was not optimal.
I'll have a better idea what track geometries are possible when I map-out a used NS floppy. Until then I'll do it the the long way via documentation and schematics.
However, I do remember working through the operations manuals and still believe that the micro just monitors MDC flags via the MDS code, and then starts reading or writing if a very crude manner. In this case the circuit simulator could be done, but only saves patching the code to do it without. It has the advantage of ease. To do switchable format geometries, obviously you'd have to modify the MDS drivers.
That auto-recalibration trick could be used in software too. Most systems won't have a CTC timer but I'll explore the MDC's schematics this weekend and see if a viable hack allows software only conversions. As I've designed real-time controllers most of my career, should be fun.
Update: NorthStar MDS Documentation:
(1) NorthStar BASIC, Ver 6, Ver 6-FPB, Copyright 1977, Rev 5, booklet, 26 pages
(2) NorthStar Disk Operating System, Ver 2 Rel 3, Copyright 1977, Rev 5, booklet, 21 pages
(3) NorthStar Micro-Disk System MDS-A, Copyright 1977, Rev 5, booklet, 31 pages
(4) NorthStar Monitor, Ver 1, Copyright 1977, Rev 1, stapled set, 16 pages
(5) Release 4 System Software Changes, June 1978, stapled set, 10 pages
(6) Release 4 Software Errata Sheet, June 30 1978, 1 page
(7) Missing: Parts List has an "OEM Manual" that I checked as included back in 1978.
Above, (3), has the good stuff:
Parts List, Theory of Operation, Block Diagram, Commands, Status Bytes, Floppy Format, Software, Interrupts, Assembly and Check-out Instructions, System Integration, Schematics.