EmuTOS + non-TOS partitions = pain

General Discussion, STOS.

Moderator: troed

Post Reply
User avatar
stephen_usher
Posts: 5578
Joined: Mon Nov 13, 2017 7:19 pm
Location: Oxford, UK.
Contact:

EmuTOS + non-TOS partitions = pain

Post by stephen_usher »

One good thing about this weekend has been that I've managed to get a working EmuTOS 1.0 EPROM so I can play with it.

However, I've hit a bit of a snag. On my UltraSATAN the card is partitioned so that it has a Spectre GCR Mac partition first and then the TOS partitions afterward, as is required by Spectre GCR. Normal TOS just ignores the Spectre partition and makes the first valid TOS partition C. EmuTOS on the other hand puts the Spectre partition as C, meaning that it can't auto boot from it. I think this must be the EmuTOS built-in disk driver doing this as HDDriver never gets a look in.

I take it there's no way to tell EmuTOS to ignore non-TOS partitions when assigning drive letters?
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
czietz
Posts: 547
Joined: Sun Jan 14, 2018 1:02 pm

Re: EmuTOS + non-TOS partitions = pain

Post by czietz »

Adhering to the XHDI specification, EmuTOS assigns BIOS drive numbers and GEMDOS drive letters even to partitions that it does not support. This is important for people booting FreeMiNT on top of EmuTOS, because it might be a partition that -- while not usable under EmuTOS -- is supported by a MiNT file system driver. This is the e.g. the case for FAT32, ext2, Minix ... -- and theoretically one could also write a Mac/HFS driver for FreeMiNT and expect the partition to be assigned a drive letter.

Now, I concede that in your particular use case adherence to the XHDI standard leads to behavior that you would not expect; but it's not (trivially) fixable without risking breaking something for our MiNT users. I'll have to discuss it. Meanwhile, you should be able to press "D" at the EmuTOS boot screen to select D: as your boot drive. I'm aware that this is just a workaround and not a perfect solution.
anodyne
Posts: 18
Joined: Sat Nov 02, 2019 8:21 pm

Re: EmuTOS + non-TOS partitions = pain

Post by anodyne »

I'd like to verify the partition id of the Spectre GCR partition. Can you post a screenshot of HDDRUTIL showing the partitions on the drive in question? I can't tell you exactly which HDDRUTIL menu item to use, since it varies depending on the version of HDDRIVER you're using.

Thanks!
User avatar
stephen_usher
Posts: 5578
Joined: Mon Nov 13, 2017 7:19 pm
Location: Oxford, UK.
Contact:

Re: EmuTOS + non-TOS partitions = pain

Post by stephen_usher »

The partiton ID is "OOP".

I do hate the HDDRUTIL interface. You can tell that it's designed by an engineer and not someone versed in UI design. You can never tell if you're going to accidentally change something and break things. Give me the ICD utils or AHDI any day.
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
anodyne
Posts: 18
Joined: Sat Nov 02, 2019 8:21 pm

Re: EmuTOS + non-TOS partitions = pain

Post by anodyne »

stephen_usher wrote: Tue Nov 10, 2020 12:42 pm The partiton ID is "OOP".

I do hate the HDDRUTIL interface. You can tell that it's designed by an engineer and not someone versed in UI design. You can never tell if you're going to accidentally change something and break things. Give me the ICD utils or AHDI any day.
Thanks! When I looked at the Spectre GCR manual in the Internet Archive, it mentioned an id of "ACK". And then I had vague memories that both "ACK" and "OOP" were used, depending on the circumstances. By chance, do you know anything about that?

Also, the Spectre GCR manual I looked at gave an example of formatting where the first partition was Atari-compatible, and partitions 2 & 3 were Mac-compatible, using HFS, which makes me wonder why your system has to have the Mac partition first. Unfortunately the manual didn't mention anywhere about partition ids.

Regardless, we will likely just ignore both partition types, although I need to think about it some more to make sure we don't create a future problem for ourselves somehow.
anodyne
Posts: 18
Joined: Sat Nov 02, 2019 8:21 pm

Re: EmuTOS + non-TOS partitions = pain

Post by anodyne »

anodyne wrote: Wed Nov 11, 2020 12:46 am
stephen_usher wrote: Tue Nov 10, 2020 12:42 pm The partiton ID is "OOP".

I do hate the HDDRUTIL interface. You can tell that it's designed by an engineer and not someone versed in UI design. You can never tell if you're going to accidentally change something and break things. Give me the ICD utils or AHDI any day.
Thanks! When I looked at the Spectre GCR manual in the Internet Archive, it mentioned an id of "ACK". And then I had vague memories that both "ACK" and "OOP" were used, depending on the circumstances. By chance, do you know anything about that?
Answering myself ... I eventually found another piece of documentation. Apparently "ACK" partitions are from Spectre GCR 2.65 & earlier, "OOP" from later. And "OOP" partitions have space for some extra Mac-related data.

I'm still mildly puzzled by the requirement to have the Mac partition first, but you have the hardware, so you know best :-).

Roger
anodyne
Posts: 18
Joined: Sat Nov 02, 2019 8:21 pm

Re: EmuTOS + non-TOS partitions = pain

Post by anodyne »

I've now pushed a fix for this to the repository. You can test it with emutos.prg to make sure it works for you, before you burn another EPROM.
Thanks for the report!
Post Reply

Return to “SOFTWARE”