Skip to content

[kernel] Only use CMOS register 0x10 in DF driver for floppy count#2679

Merged
ghaerr merged 1 commit into
masterfrom
dfcmos
May 10, 2026
Merged

[kernel] Only use CMOS register 0x10 in DF driver for floppy count#2679
ghaerr merged 1 commit into
masterfrom
dfcmos

Conversation

@ghaerr
Copy link
Copy Markdown
Owner

@ghaerr ghaerr commented May 10, 2026

Correct some issues found using MartyPC and QEMU v11 in #2678, as well as allow the DF driver to function on IBM XT systems, where no CMOS is present.

These issues are:

  • Don't use CMOS register 0x14 (equipment config byte) to determine number of floppies present. It appears that QEMU v11 doesn't maintain this legacy register anymore.
  • When CMOS register 0x10 (floppy type byte) returns 15 for floppy type, default to 360k floppy. By spec, value 0 indicates no floppy, and values 1-5 specify valid drive types. Allowing for 15 to specify 360k drive(s) allows MartyPC to work when emulating non-existentCMOS by returning all 1 bits in this register.

@ghaerr ghaerr merged commit 8987cbf into master May 10, 2026
1 check passed
@ghaerr ghaerr deleted the dfcmos branch May 10, 2026 17:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant