Image Map Image Map
Page 1 of 2 12 LastLast
Results 1 to 10 of 13

Thread: Need assistance fine tuning floppy emulator on Kaypro 4/84

  1. #1
    Join Date
    Jan 2012
    Location
    Connecticut, USA
    Posts
    2,006

    Default Need assistance fine tuning floppy emulator on Kaypro 4/84

    So I had some time to kill on this particularly rainy saturday; So I thought Id finally get to setting up my gotek floppy emulator for use in one of my kaypro 4/84's.
    I decided to go with the HXC firmware..... Just because. I like the HXC website and documentation I suppose. I flashed the gotek with the HXC loader and installed the newest beta firmware (all this per the documentation)

    I also decided to install the OLED screen and piezo sound mod... Because why not?

    So first off, it all seems to work.. Sort of. Documentation to use a gotek with HXC firmware on a kaypro is pretty spotty so im just picking and grabbing at facts I find.

    The big problem I get is I am using the floppy file format from Joes computer museum explains here: https://youtu.be/CL2C4geiF7Q?t=142
    I made a couple blank floppies using this format and saved them to the usb stick. I used the IMD image disks found on daves old computers http://www.classiccmp.org/dunfield/img54306/system.htm
    and with the hxc floppy emulator software I converted the IMD files into HFE files. I was then able to boot the kaypro from a CP/M boot image.
    ITs strange, HXC states the reader will read image disk .IMD file formats but mine only seems to like the HFE format, thats why I did that.

    So I created those blank floppy images and then using MFDISK.COM I formatted them to Kaypro DS/DD and they went to track 80 with no errors.

    When I try to use pip and copy files from the floppy B: (which is still a standard floppy drive) I get an error. See attached images.

    IMG_20180519_151413647[1].jpg

    I am wondering if I have a setting wrong somewhere. Is write protect enabled somewhere? I assume not if I can format it. I have a jumper across the SO pins on the header with JB going to the piezo and thats it.
    IMG_20180519_152325866.jpg

    On another note, does anyone know how to change the volume on the piezo speaker? Its set way to low I think and I want to try the max setting.

  2. #2
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,680
    Blog Entries
    20

    Default

    Try doing a Crtl-C before you do the PIP. Usually, CP/M BDOS gives that message when it detects that you've changed a disk that you're writing to without telling it about what you did. In other words, CP/M computes a checksum from the disk directory and if said checksum changes when BDOS is about to write, it shuts you down and declares the target to be R/O.

  3. #3
    Join Date
    Jan 2012
    Location
    Connecticut, USA
    Posts
    2,006

    Default

    Hey Chuck, problem with that is it does a warm boot. See when I boot it to a floppy image with CP/M I then have to switch to a blank floppy image. If I do a warm boot then it will try loading cp/m from the selected blank image and just sit there.

    Again, just trying to copy files from the B: floppy drive to the blank formatted disk on the gotek. Its weird

  4. #4
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,680
    Blog Entries
    20

    Default

    I suppose you could write a little program to do a BDOS CP/M call to "reset disk system", but I think your cheapest and dirtiest option is to make the real floppy drive A: and the HxC one B: I assume that you have a boot diskette.

  5. #5
    Join Date
    Jan 2012
    Location
    Connecticut, USA
    Posts
    2,006

    Default

    Sure I can do that. But in my mind that somehow defeats the purpose of the whole venture. Having to rely on the old floppies. Reason I started doing this is 4 kaypro floppy drives died on me. I was able to get one working again by calibrating it, but these things are ticking time bombs. Wont be that long before they expire.

  6. #6
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,680
    Blog Entries
    20

    Default

    An alternative is to place valid boot data on your A: drive images. It doesn't occupy any user disk space--that way, you can still do the Crtl-C and not worry about not having a system to load.

    Back in the day when I still cared about using CP/M, that was my modus operandi when formatting up a blank floppy--always have boot data on every floppy.

  7. #7
    Join Date
    Jan 2012
    Location
    Connecticut, USA
    Posts
    2,006

    Default

    Well Chuck, your method is working. If I run sysgen and make each diskette a boot disk IT lets me copy the files over with PIP. Anyway, Id still like to understand what is really going on here. What is loaded into RAM that is causing the bdos error when I change disks?

  8. #8
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,680
    Blog Entries
    20

    Default

    As I explained, everytime the BDOS accesses the disk directory, it computes a checksum of a (BIOS-determined) number of the directory entries. Clearly, the number for hard disks is zero, as most hard-disk CP/M systems don't change media in mid-task. When the BDOS is going to write (or update) a directory entry, it first re-computes the checksum and compares it against the one it last computed.

    If the two sums are different, then the floppy has been changed and it is no longer safe to write to that disk. So BDOS sets the status of the drive to read-only and it stays that way until either a program makes a BDOS call 13 or the system is rebooted (warm or cold).

    Were this not to happen, then any disk swapped in could inadvertently get overwritten. This situation is well-understood and has been part of CP/M since at least version 1.4.

  9. #9
    Join Date
    Jan 2012
    Location
    Connecticut, USA
    Posts
    2,006

    Default

    Thanks for explaining it Chuck. Guess, I will learn to work around this functionality.

  10. #10
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,680
    Blog Entries
    20

    Default

    You could write a small program to issue a BDOS 13 request, but where would you put it?

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •