summaryrefslogtreecommitdiff
path: root/Kernel/Patches/BlkDevAddFDC.HC
blob: 3a9d749ec40f0694ede45b78f2ffb3d6c8b931d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
case BDT_FLOPPY:
  dv->dv_signature=DRV_SIGNATURE_VAL;
  if (!BlkDevInit(bd))
    dv->dv_signature=0;
  else {
    dv->dv_signature=0;
    if (make_free)
      dv=DrvMakeFreeSlot(bd->first_drive_let);
    else
      dv=DrvMakeFreeSlot(DrvNextFreeLet(bd->first_drive_let))
    if (bd->heads!=FDCChk(bd))
      dv->fs_type=FSt_UNKNOWN;
    else {
      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;