1.44 BM dsk image

Page 3/3
1 | 2 |

By Briqunullus

Paladin (768)

Briqunullus's picture

08-06-2023, 18:49

sdsnatcher73 wrote:

Well the FDD ROM created by konamiman for the RookieDrive NX does support 1.4MB (USB) disk drives, it can format them and it can use them in DOS1. So the Z80 is not a problem with the higher data rate. I do think the disk controllers used in MSXs did not support this high data rate. Do we know which controller was used in the MX-2021?

The RookieDrive already is one of my favorite extensions. This feature even makes it more interesting. Maybe I should have a look at how things are done.

However, if we're unlucky, all of the fancy stuff is in the modern hardware part. Even the data rate can be lowered. Like the USB controller reads a 18 sector track at high data rate, buffers it, and sends it to the MSX at regular data rate.

Ultimately, that's what I'm trying to achieve with my openMSX tricks. Since we're dealing with disk images, I only need to add support for that image file size. The data rate will be regular, because the disk emulation part only knows one data rate. I hope.

cjs wrote:

Given that this is all custom stuff anyway, it's reasonable to add some RAM to the disk controller cartridge and use that for buffering. This seems to me likely to Just Work with MSX Disk BASIC (and free up several kilobytes of BASIC RAM), but MSX-DOS may need some tweaks depending on how much it uses the ROM for disk operations and how much it tries to do itself.

Interesting idea. Until now I only have been tinkering with disk parameters and media descriptor byte interpretation. Not changing any code.

By zeilemaker54

Champion (355)

zeilemaker54's picture

08-06-2023, 19:54

There is a lot of talking about the limitation of the diskrom, in regards to 1.44 disks.
The diskrom is actually 2 parts, the disk kernel and the disk driver. The later is manufacturer specific. The limitation is NOT in the disk kernel part, it is in the disk driver part. Most disk drivers only support media with media descriptor byte 0F8H-0FFH, some even a subset of this. Therefor they are limited to 9 sectors or 8 sectors (512 bytes per sector) per track media. 1.44 disks have a media descriptor byte of 0F0H and 18 sectors per track. So this is why those disk drivers never will read 1.44 media correctly.
Further more, the DOS1 kernel has the complete FAT in memory (the FAT buffer), in contrast to the DOS2 kernel. 1.44 media have a FAT size of 9 sectors. This means that the FAT buffer is 3 times bigger than normal MSX media (FAT size is max 3 sectors). So this means that the free memory is at least 3KB less. This is also why DOS1 kernel is limited in HD support in regards to FAT size.

By Briqunullus

Paladin (768)

Briqunullus's picture

08-06-2023, 22:50

Hi Arjen, I could not run these experiments without the commented source code on your site. Thanks for your excellent work. You are absolutely right in your statement, and some things I have already mentioned here. Also I am breaking compatibility on many levels, for instance my 1008K disk reuses the 0FBH media descriptor. For me it's more about the fun exploring than the result.

Page 3/3
1 | 2 |