• CP/M-68K and FAT File System

    From Tom Szolyga@21:1/5 to All on Fri Dec 16 11:24:28 2022
    I am trying to run CP/M-68K on a ROSCO 68K SBC. The issue is the ROSCO ROM boot code only understands a FAT formatted disc and will only boot from a FAT disc. This ROSCO boot code loads a file called ROSCOBOOT.BIN into memory at 4000 hex and executes
    it. This app can load any .BIN file and execute it. CP/M-68K has it's own disc format that is not compatible with FAT. The question is how to boot CP/M-68K?
    I have written an app that is loaded and executed by the ROSCO Boot app. It has the binary files for CCP, BDOS and BIOS inside the app. It relocates these files to high memory and executes them. CP/M-68K starts and runs until it tries to do a disc
    operation. It fails because the disc is FAT. This is close, but no cigar. What is the disc was formatted with two partitions? The first partition would be FAT and rather small. The second partition would be the rest of the disc but not formatted. CP/M-68K would boot as above. All of the CP/M disc drives would be in the
    unformatted area. These virtual discs would be defined with a track offset that is the size of the FAT partition. in this way, the two file systems could co-exist and ignore each other.
    Thoughts???

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From David Schultz@21:1/5 to Tom Szolyga on Fri Dec 16 15:01:11 2022
    On 12/16/22 1:24 PM, Tom Szolyga wrote:

    What is the disc was formatted with two partitions? The first partition would be FAT and rather small. The second partition would be the rest of the disc but not formatted. CP/M-68K would boot as above. All of the CP/M disc drives would be in the
    unformatted area. These virtual discs would be defined with a track offset that is the size of the FAT partition. in this way, the two file systems could co-exist and ignore each other.
    Thoughts???
    Works for me. Except that I would use the loader version of CP/M-68K in
    the FAT file system. Then changes to CPM.SYS could skip messing with
    that again.

    --
    http://davesrocketworks.com
    David Schultz

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Bill Shen@21:1/5 to tszo....net on Sat Dec 17 05:10:01 2022
    On Friday, December 16, 2022 at 12:24:29 PM UTC-7, tszo....net wrote:
    What is the disc was formatted with two partitions? The first partition would be FAT and rather small. The second partition would be the rest of the disc but not formatted. CP/M-68K would boot as above. All of the CP/M disc drives would be in the
    unformatted area. These virtual discs would be defined with a track offset that is the size of the FAT partition. in this way, the two file systems could co-exist and ignore each other.

    Yes, use the offset to skip over non-CPM disk area is the easiest way. My own implmentation has system programs/utilities in the non-CPM disk area. They are directly accessible as long as the LBA addresses and program length are known.
    Bill

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Randy McLaughlin@21:1/5 to All on Sat Dec 17 08:41:04 2022
    Quick and dirty do the above using an offset.

    Right answer put the cpm loader in small fat directory and have the BIOS read the MBR and have CPM partitions for the CPM drives.

    It is much easier to use a fixed offset.


    Randy

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)