FlexiDOS

Software discussion & Emulation
Pernod
Posts: 37
Joined: Thu Oct 24, 2019 11:23 am
Location: Croydon, UK

FlexiDOS

Post by Pernod »

Anyone heard of, or know anything about FlexiDOS?

Thanks to @RetroBC_Pete here's a ROM dump.

And here it is running in MAME:
0002.png
0002.png (2.26 KiB) Viewed 16003 times
Attachments
Tatung FlexiDos 2.2.zip
(3.11 KiB) Downloaded 667 times
retrogamer
Posts: 77
Joined: Tue Jun 01, 2021 12:00 am

Re: FlexiDOS

Post by retrogamer »

Can't find any reference to this anywhere! Version 2.2 so obviously more than one version out there. And a serial number suggests it's a commercial product. Very interesting.

Looks like it might need a formatted disc in Drive 0 to avoid the disc error.

I'm guessing the DOS supports other disc formats besides the usual XtalDOS 1.31, rather like System 80 (DOS80 V1.0) or System 5 Plus (XtalDOS 2.05) that both support single and double sided formats up to 80 tracks.

Intrigued to know what happens if 'C' is pressed to 'Configure System'. Does it offer different format options?
Pernod
Posts: 37
Joined: Thu Oct 24, 2019 11:23 am
Location: Croydon, UK

Re: FlexiDOS

Post by Pernod »

retrogamer wrote: Mon Oct 10, 2022 6:43 pm Intrigued to know what happens if 'C' is pressed to 'Configure System'. Does it offer different format options?
Here you go ...
0003.png
0003.png (1.55 KiB) Viewed 15979 times
0004.png
0004.png (2.02 KiB) Viewed 15979 times
0005.png
0005.png (2.14 KiB) Viewed 15979 times
Just seems to ask you to select the type of each drive selected.

Incidentally, there's a message in the ROM that says it requires MOS 1.21, but it was actually found in a machine with MOs 1.2.
retrogamer
Posts: 77
Joined: Tue Jun 01, 2021 12:00 am

Re: FlexiDOS

Post by retrogamer »

A fairly good guess on my part then! We’re looking at the four possible configurations of 40/80 tracks and single/double sided drives. In the 1980s, quite a few companies starting selling external higher capacity drives - I had both 80 track 5 1/4 inch and 3 1/2 inch drives for my Amstrad 6128 managed by various additional ROMS.

I’ve posted fairly extensively in another thread here about other DOS options. I was intrigued to see that DOS80 on the Einstein looks to the DOS tracks in Drive 0 for the format configuration of all four drives, not the discs themselves!

So this makes me think the FlexiDOS ROM is trying to patch Drive 0 system tracks (patching the RAM directly is pointless as the DOS tracks often get reloaded into memory) and thus support an alternative disc format for drive 1. There might be some direct patching of values in the Disc Parameter Block (DPB) to support this alternative format for drive 1. Each DOS I looked at has slightly different addresses for the DPB, which might explain why it wants to see DOS 1.31.

DOS80 allows each of the four drives to have a different format so I suspect works slightly differently from FlexiDOS. For those interested in how the configuration of all drives is stored with DOS80, it's all cleverly encapsulated in one byte (stored at 0xE106) where each bit flags 40/80 tracks or single/double sided for each of the four drives. It's this byte that is changed on the boot disc by CONFIG as DOS is often reloaded.

The tricky thing to do is to format a disc in the alternative format with more tracks and/or sectors (a double sided disc has 20 sectors per track rather than the usual 10 found on a single sided disc). DOS80 has a different formatting program that supports this. So does the FlexiDOS boot option (‘B’) format a disc? Doesn’t sound likely to me, in which case there’s some extra software needed to support this - unless it’s hidden away somewhere in the ROM …
Pernod
Posts: 37
Joined: Thu Oct 24, 2019 11:23 am
Location: Croydon, UK

Re: FlexiDOS

Post by Pernod »

retrogamer wrote: Tue Oct 11, 2022 12:40 am So does the FlexiDOS boot option (‘B’) format a disc? Doesn’t sound likely to me, in which case there’s some extra software needed to support this - unless it’s hidden away somewhere in the ROM …
After selecting the drive type for each drive it then wants to write this info back to the disk that was inserted to enter the configuration. So it's basically re-formatting a previously formatted DOS 1.31 disk. I'm really not familiar enough with XtalDOS and the DPB to appreciate what it's doing.

The 'B' option simply boots the current disk.
Pernod
Posts: 37
Joined: Thu Oct 24, 2019 11:23 am
Location: Croydon, UK

Re: FlexiDOS

Post by Pernod »

Were there any other ROMs intended for this socket? So far I'm only aware of this FlexiDOS and the ROM for the Silicon Disc.
User avatar
MikeDHalliday
Posts: 229
Joined: Fri Oct 25, 2019 9:52 am
Location: Crewe
Contact:

Re: FlexiDOS

Post by MikeDHalliday »

There was an Einstein on sale from eBay ages ago that had the spare rom socket filled

http://tatungeinstein.hopto.org/8-bit/T ... 29_949.jpg

Some sort of custom telephony software on it.
Ex owner of a real TC01 with Gotek boot drive and second drive, Joysticks, DAC hardware (Built but untested) and loads of manuals, books and mags. Living the emulation life now!
retrogamer
Posts: 77
Joined: Tue Jun 01, 2021 12:00 am

Re: FlexiDOS

Post by retrogamer »

It doesn't sound like there is any provision to format the disc in Drive 1. So I'm reasonably sure there must be some disc-based formatting software to support FlexiDOS. But I doubt we'll ever locate an accompanying disc :(

It's probably not critical as we can use other software to generate the required formatted discs in Drive 1. Versions of BACKUP or FORMAT from System 5 or System 80 will probably work.

If FlexiDOS needs the MOS, then I would expect it's using the standard MOS disc routines for disc access.

If it also needs a standard DOS disc in Drive 0, then it's probably copying the system tracks into some spare RAM so it can patch the DPB before overwriting the system tracks on Drive 0 so that Drive 1 can then support the configured different format whenever DOS is loaded into RAM and initialised.

The Disc Parameter Block is a 15 byte table in RAM that holds the values for the drive. I would imagine that the FlexiDOS ROM Is simply changing the DPB values on the system tracks to enable DOS to see larger discs.

Details of the DPB are here for those interested:
http://www.seasip.info/Cpm/format22.html

I may be wrong, but I suspect the ROM plays no part in reading or writing to discs, once the system tracks in Drive 0 have been patched.

Actually we don't need an 80 track disc in Drive 1 to test the ROM. A standard formatted disc will work as DOS won't realise it's the wrong size until we start writing to it. Be interesting to press 2 to set Drive 1 to double the size. Then a DIR of Drive 1 even with a standard disc should show a much larger disc with double the amount of free space in Drive 1!
Pernod
Posts: 37
Joined: Thu Oct 24, 2019 11:23 am
Location: Croydon, UK

Re: FlexiDOS

Post by Pernod »

MikeDHalliday wrote: Tue Oct 11, 2022 1:54 pm There was an Einstein on sale from eBay ages ago that had the spare rom socket filled

http://tatungeinstein.hopto.org/8-bit/T ... 29_949.jpg

Some sort of custom telephony software on it.
Don't suppose anyone here acquired it? These uncommon extras are always interesting to find and play with.
Pernod
Posts: 37
Joined: Thu Oct 24, 2019 11:23 am
Location: Croydon, UK

Re: FlexiDOS

Post by Pernod »

For anyone interested in playing with FlexiDOS it is now supported in the latest MAME 0.249 release. I've added the 2nd ROM socket so that any ROM can be loaded into it, in case any others are eventually found.
Post Reply