diff options
| author | Harley Travis <harleytravis123@outlook.com> | 2026-06-06 19:50:29 -0500 |
|---|---|---|
| committer | Harley Travis <harleytravis123@outlook.com> | 2026-06-06 19:50:29 -0500 |
| commit | f7a9082e4277f8f50a4278e37734c8aab0a24f93 (patch) | |
| tree | da9685dd255030c84daf8b25d3048937d633d062 | |
| parent | 340c9ba93e8c9ad880e2e7deb2738d072c016f5a (diff) | |
| download | templeos-floppy-driver-f7a9082e4277f8f50a4278e37734c8aab0a24f93.tar.gz | |
Update BlkDevAddFDC.HC
The BlkDevAdd code now checks if the floppy disk has a valid RedSea boot sector before attempting to initialize it.
| -rw-r--r-- | Kernel/Patches/BlkDevAddFDC.HC | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/Kernel/Patches/BlkDevAddFDC.HC b/Kernel/Patches/BlkDevAddFDC.HC index cc3e14b..3a9d749 100644 --- a/Kernel/Patches/BlkDevAddFDC.HC +++ b/Kernel/Patches/BlkDevAddFDC.HC @@ -11,10 +11,14 @@ case BDT_FLOPPY: if (bd->heads!=FDCChk(bd)) dv->fs_type=FSt_UNKNOWN; else { - dv->dv_signature=DRV_SIGNATURE_VAL; - dv->bd=bd; - dv->fs_type=FSt_REDSEA; - RedSeaInit(dv); + FDCReadBlks(bd,&br,0,1); + if (br.signature==MBR_PT_REDSEA && br.signature2==0xAA55) { + dv->dv_signature=DRV_SIGNATURE_VAL; + dv->bd=bd; + dv->fs_type=FSt_REDSEA; + RedSeaInit(dv); + } else + dv->fs_type=FSt_UNKNOWN; } } break;
\ No newline at end of file |
