.via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_IWM
        },
 
        /*
                .via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_IWM
        }, {
                .ident          = MAC_MODEL_IIX,
                .name           = "IIx",
                .via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_IICX,
                .name           = "IIcx",
                .via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_SE30,
                .name           = "SE/30",
                .via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        },
 
        /*
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_IIFX,
                .name           = "IIfx",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_IOP,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_IOP
        }, {
                .ident          = MAC_MODEL_IISI,
                .name           = "IIsi",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_IIVI,
                .name           = "IIvi",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_IIVX,
                .name           = "IIvx",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        },
 
        /*
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_CCL,
                .name           = "Color Classic",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS},
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
+       },
 
        /*
         *      Some Mac LC machines. Basically the same as the IIci, ADB like IIsi
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_LCII,
                .name           = "LC II",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_LCIII,
                .name           = "LC III",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        },
 
        /*
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_Q605_ACC,
                .name           = "Quadra 605",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_Q610,
                .name           = "Quadra 610",
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_Q630,
                .name           = "Quadra 630",
                .ide_type       = MAC_IDE_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_Q650,
                .name           = "Quadra 650",
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        },
        /*      The Q700 does have a NS Sonic */
        {
                .scsi_type      = MAC_SCSI_QUADRA2,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_Q800,
                .name           = "Quadra 800",
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_Q840,
                .name           = "Quadra 840AV",
                .scsi_type      = MAC_SCSI_QUADRA3,
                .scc_type       = MAC_SCC_PSC,
                .ether_type     = MAC_ETHER_MACE,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_AV
        }, {
                .ident          = MAC_MODEL_Q900,
                .name           = "Quadra 900",
                .scsi_type      = MAC_SCSI_QUADRA2,
                .scc_type       = MAC_SCC_IOP,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_IOP
        }, {
                .ident          = MAC_MODEL_Q950,
                .name           = "Quadra 950",
                .scsi_type      = MAC_SCSI_QUADRA2,
                .scc_type       = MAC_SCC_IOP,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_IOP
        },
 
        /*
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_P475,
                .name           =  "Performa 475",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_P475F,
                .name           =  "Performa 475",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_P520,
                .name           =  "Performa 520",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_P550,
                .name           =  "Performa 550",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        },
        /* These have the comm slot, and therefore the possibility of SONIC ethernet */
        {
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_II,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_P588,
                .name           = "Performa 588",
                .ide_type       = MAC_IDE_QUADRA,
                .scc_type       = MAC_SCC_II,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_TV,
                .name           = "TV",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_P600,
                .name           = "Performa 600",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        },
 
        /*
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_C650,
                .name           = "Centris 650",
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR1
        }, {
                .ident          = MAC_MODEL_C660,
                .name           = "Centris 660AV",
                .scsi_type      = MAC_SCSI_QUADRA3,
                .scc_type       = MAC_SCC_PSC,
                .ether_type     = MAC_ETHER_MACE,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_AV
        },
 
        /*
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB145,
                .name           = "PowerBook 145",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB150,
                .name           = "PowerBook 150",
                .scsi_type      = MAC_SCSI_OLD,
                .ide_type       = MAC_IDE_PB,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB160,
                .name           = "PowerBook 160",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB165,
                .name           = "PowerBook 165",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB165C,
                .name           = "PowerBook 165c",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB170,
                .name           = "PowerBook 170",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB180,
                .name           = "PowerBook 180",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB180C,
                .name           = "PowerBook 180c",
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB190,
                .name           = "PowerBook 190",
                .scsi_type      = MAC_SCSI_OLD,
                .ide_type       = MAC_IDE_BABOON,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB520,
                .name           = "PowerBook 520",
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        },
 
        /*
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB230,
                .name           = "PowerBook Duo 230",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB250,
                .name           = "PowerBook Duo 250",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB270C,
                .name           = "PowerBook Duo 270c",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB280,
                .name           = "PowerBook Duo 280",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        }, {
                .ident          = MAC_MODEL_PB280C,
                .name           = "PowerBook Duo 280c",
                .via_type       = MAC_VIA_IIci,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS
+               .nubus_type     = MAC_NUBUS,
+               .floppy_type    = MAC_FLOPPY_SWIM_ADDR2
        },
 
        /*