VirtualBox

Changeset 56459 in vbox for trunk


Ignore:
Timestamp:
Jun 16, 2015 4:24:14 PM (9 years ago)
Author:
vboxsync
Message:

Main: Added audio codec type property, including recommended type.

Location:
trunk/src/VBox/Main
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r56423 r56459  
    94269426
    94279427      <param name="controllerType" type="StorageControllerType" dir="in">
    9428         <desc>The storage controller to the setting for.</desc>
     9428        <desc>The storage controller type to get the setting for.</desc>
    94299429      </param>
    94309430
     
    94399439
    94409440      <param name="controllerType" type="StorageControllerType" dir="in">
    9441         <desc>The storage controller to check for.</desc>
     9441        <desc>The storage controller to check the setting for.</desc>
    94429442      </param>
    94439443
     
    94749474  <interface
    94759475    name="IGuestOSType" extends="$unknown"
    9476     uuid="03f64ba0-4915-e398-caa4-70a05bd341b4"
     9476    uuid="d7cb0243-97bf-48ac-9d44-1c3bade5ea0f"
    94779477    wsmap="struct"
    94789478    reservedAttributes="4"
     
    95789578
    95799579    <attribute name="recommendedAudioController" type="AudioControllerType" readonly="yes">
    9580       <desc>Recommended audio type.</desc>
     9580      <desc>Recommended audio controller type.</desc>
     9581    </attribute>
     9582
     9583    <attribute name="recommendedAudioCodec" type="AudioCodecType" readonly="yes">
     9584      <desc>Recommended audio codec type.</desc>
    95819585    </attribute>
    95829586
     
    1841318417  </enum>
    1841418418
     18419  <enum
     18420    name="AudioCodecType"
     18421    uuid="7b406301-f520-420c-9805-8ce11c086370"
     18422    >
     18423    <desc>
     18424      The exact variant of audio codec hardware presented
     18425      to the guest; see <link to="IAudioAdapter::audioCodec" />.
     18426    </desc>
     18427
     18428    <const name="Null"          value="0">
     18429      <desc>@c null value. Never used by the API.</desc>
     18430    </const>
     18431    <const name="SB16"          value="1">
     18432      <desc>SB16; this is the only option for the SB16 device.</desc>
     18433    </const>
     18434    <const name="STAC9700"      value="2">
     18435      <desc>A STAC9700 AC'97 codec.</desc>
     18436    </const>
     18437    <const name="AD1980"        value="3">
     18438      <desc>An AD1980 AC'97 codec. Recommended for Linux guests.</desc>
     18439    </const>
     18440    <const name="STAC9221"      value="4">
     18441      <desc>A STAC9221 HDA codec.</desc>
     18442    </const>
     18443  </enum>
     18444
    1841518445  <interface
    1841618446    name="IAudioAdapter" extends="$unknown"
    18417     uuid="40ab4d08-4f91-b43b-f2de-0cb5b239b2da"
     18447    uuid="aeccc0a8-e0a0-427f-b946-c42063f54d81"
    1841818448    wsmap="managed"
    1841918449    reservedMethods="1" reservedAttributes="1"
     
    1844518475    <attribute name="audioController" type="AudioControllerType">
    1844618476      <desc>
    18447         The audio hardware we emulate.
     18477        The emulated audio controller.
     18478      </desc>
     18479    </attribute>
     18480    <attribute name="audioCodec" type="AudioCodecType">
     18481      <desc>
     18482        The exact variant of audio codec hardware presented
     18483        to the guest.
     18484        Depending on this value, VirtualBox will provide a different
     18485        virtual storage controller hardware to the guest.
     18486        For HDA and SB16, only one variant is available, but for AC'97,
     18487        there are several.
    1844818488      </desc>
    1844918489    </attribute>
  • trunk/src/VBox/Main/include/AudioAdapterImpl.h

    r56088 r56459  
    6565    HRESULT getAudioController(AudioControllerType_T *aAudioController);
    6666    HRESULT setAudioController(AudioControllerType_T aAudioController);
     67    HRESULT getAudioCodec(AudioCodecType_T *aAudioCodec);
     68    HRESULT setAudioCodec(AudioCodecType_T aAudioCodec);
    6769    HRESULT getPropertiesList(std::vector<com::Utf8Str>& aProperties);
    6870    HRESULT getProperty(const com::Utf8Str &aKey, com::Utf8Str &aValue);
  • trunk/src/VBox/Main/include/Global.h

    r55214 r56459  
    7777        const ChipsetType_T            chipsetType;
    7878        const AudioControllerType_T    audioControllerType;
     79        const AudioCodecType_T         audioCodecType;
    7980    };
    8081
  • trunk/src/VBox/Main/include/GuestOSTypeImpl.h

    r55401 r56459  
    7575    HRESULT getRecommendedChipset(ChipsetType_T *aChipsetType);
    7676    HRESULT getRecommendedAudioController(AudioControllerType_T *aAudioController);
     77    HRESULT getRecommendedAudioCodec(AudioCodecType_T *aAudioCodec);
    7778    HRESULT getRecommendedFloppy(BOOL *aRecommendedFloppy);
    7879    HRESULT getRecommendedUSB(BOOL *aRecommendedUSB);
     
    9899    const ChipsetType_T mChipsetType;
    99100    const AudioControllerType_T mAudioControllerType;
     101    const AudioCodecType_T mAudioCodecType;
    100102};
    101103
  • trunk/src/VBox/Main/src-all/Global.cpp

    r56447 r56459  
    3333      VBOXOSTYPE_Unknown,         VBOXOSHINT_NONE,
    3434        64,   4,  2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    35       StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97 },
     35      StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700 },
    3636    { "Other",   "Other",             "Other_64",           "Other/Unknown (64-bit)",
    3737      VBOXOSTYPE_Unknown_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    3838        64,   4,  2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    39       StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97 },
     39      StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700 },
    4040    { "Windows", "Microsoft Windows", "Windows31",          "Windows 3.1",
    4141      VBOXOSTYPE_Win31,           VBOXOSHINT_FLOPPY,
    4242        32,   4,  1 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    43         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     43        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    4444    { "Windows", "Microsoft Windows", "Windows95",          "Windows 95",
    4545      VBOXOSTYPE_Win95,           VBOXOSHINT_FLOPPY,
    4646        64,   4,  2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    47         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     47        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    4848    { "Windows", "Microsoft Windows", "Windows98",          "Windows 98",
    4949      VBOXOSTYPE_Win98,           VBOXOSHINT_FLOPPY,
    5050        64,   4,  2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    51         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     51        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    5252    { "Windows", "Microsoft Windows", "WindowsMe",          "Windows ME",
    5353      VBOXOSTYPE_WinMe,           VBOXOSHINT_FLOPPY | VBOXOSHINT_USBTABLET,
    5454        128,  4,  4 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    55         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     55        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    5656    { "Windows", "Microsoft Windows", "WindowsNT4",         "Windows NT 4",
    5757      VBOXOSTYPE_WinNT4,          VBOXOSHINT_NONE,
    5858       128,  16,  2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    59         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     59        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    6060    { "Windows", "Microsoft Windows", "Windows2000",        "Windows 2000",
    6161      VBOXOSTYPE_Win2k,            VBOXOSHINT_USBTABLET,
    6262       168,  16,  4 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    63         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     63        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    6464    { "Windows", "Microsoft Windows", "WindowsXP",          "Windows XP (32-bit)",
    6565      VBOXOSTYPE_WinXP,            VBOXOSHINT_USBTABLET,
    6666       192,  16, 10 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    67         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     67        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    6868    { "Windows", "Microsoft Windows", "WindowsXP_64",       "Windows XP (64-bit)",
    6969      VBOXOSTYPE_WinXP_x64,       VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    7070       512,  16, 10 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    71         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     71        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    7272    { "Windows", "Microsoft Windows", "Windows2003",        "Windows 2003 (32-bit)",
    7373      VBOXOSTYPE_Win2k3,           VBOXOSHINT_USBTABLET,
    7474       512,  16, 20 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    75         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     75        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    7676    { "Windows", "Microsoft Windows", "Windows2003_64",     "Windows 2003 (64-bit)",
    7777      VBOXOSTYPE_Win2k3_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    7878       512,  16, 20 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    79         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_HDA  },
     79        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    8080    { "Windows", "Microsoft Windows", "WindowsVista",       "Windows Vista (32-bit)",
    8181      VBOXOSTYPE_WinVista,         VBOXOSHINT_USBTABLET,
    8282       512,  16, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    83         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     83        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    8484    { "Windows", "Microsoft Windows", "WindowsVista_64",    "Windows Vista (64-bit)",
    8585      VBOXOSTYPE_WinVista_x64,    VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    8686       512,  16, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    87         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     87        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    8888    { "Windows", "Microsoft Windows", "Windows2008",        "Windows 2008 (32-bit)",
    8989      VBOXOSTYPE_Win2k8,           VBOXOSHINT_USBTABLET,
    9090       512,  16, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    91         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     91        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    9292    { "Windows", "Microsoft Windows", "Windows2008_64",     "Windows 2008 (64-bit)",
    9393      VBOXOSTYPE_Win2k8_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    9494       512,  16, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    95         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     95        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    9696    { "Windows", "Microsoft Windows", "Windows7",           "Windows 7 (32-bit)",
    9797      VBOXOSTYPE_Win7,             VBOXOSHINT_USBTABLET,
    9898       512,  16, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    99         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     99        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    100100    { "Windows", "Microsoft Windows", "Windows7_64",        "Windows 7 (64-bit)",
    101101      VBOXOSTYPE_Win7_x64,        VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    102102       512,  16, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    103         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     103        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    104104    { "Windows", "Microsoft Windows", "Windows8",           "Windows 8 (32-bit)",
    105105      VBOXOSTYPE_Win8,             VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET | VBOXOSHINT_PAE,
    106106       1024,128, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    107         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     107        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    108108    { "Windows", "Microsoft Windows", "Windows8_64",        "Windows 8 (64-bit)",
    109109      VBOXOSTYPE_Win8_x64,        VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    110110       2048,128, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    111         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     111        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    112112    { "Windows", "Microsoft Windows", "Windows81",          "Windows 8.1 (32-bit)",
    113113      VBOXOSTYPE_Win81,            VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET | VBOXOSHINT_PAE,
    114114       1024,128, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    115         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     115        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    116116    { "Windows", "Microsoft Windows", "Windows81_64",       "Windows 8.1 (64-bit)",
    117117      VBOXOSTYPE_Win81_x64,       VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    118118       2048,128, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    119         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     119        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    120120    { "Windows", "Microsoft Windows", "Windows2012_64",     "Windows 2012 (64-bit)",
    121121      VBOXOSTYPE_Win2k12_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    122122       2048,128, 25 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    123         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     123        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    124124    { "Windows", "Microsoft Windows", "Windows10",          "Windows 10 (32-bit)",
    125125      VBOXOSTYPE_Win10,            VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET | VBOXOSHINT_PAE,
    126126       1024,128, 32 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    127         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     127        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    128128    { "Windows", "Microsoft Windows", "Windows10_64",       "Windows 10 (64-bit)",
    129129      VBOXOSTYPE_Win10_x64,       VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    130130       2048,128, 32 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    131         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA  },
     131        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    132132    { "Windows", "Microsoft Windows", "WindowsNT",          "Other Windows (32-bit)",
    133133      VBOXOSTYPE_WinNT,           VBOXOSHINT_NONE,
    134134       512,  16, 20 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    135         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     135        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    136136    { "Windows", "Microsoft Windows", "WindowsNT_64",       "Other Windows (64-bit)",
    137137      VBOXOSTYPE_WinNT_x64,       VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    138138       512,  16, 20 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    139         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     139        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    140140    { "Linux",   "Linux",             "Linux22",            "Linux 2.2",
    141141      VBOXOSTYPE_Linux22,         VBOXOSHINT_RTCUTC,
    142142        64,   4,  2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    143         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     143        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    144144    { "Linux",   "Linux",             "Linux24",            "Linux 2.4 (32-bit)",
    145145      VBOXOSTYPE_Linux24,         VBOXOSHINT_RTCUTC,
    146146       128,   4,  4 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    147         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     147        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    148148    { "Linux",   "Linux",             "Linux24_64",         "Linux 2.4 (64-bit)",
    149149      VBOXOSTYPE_Linux24_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    150150       128,   4,  4 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    151         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     151        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    152152    { "Linux",   "Linux",             "Linux26",            "Linux 2.6 / 3.x / 4.x (32-bit)",
    153153      VBOXOSTYPE_Linux26,         VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    154154       256,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    155         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     155        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    156156    { "Linux",   "Linux",             "Linux26_64",         "Linux 2.6 / 3.x / 4.x (64-bit)",
    157157      VBOXOSTYPE_Linux26_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    158158       256,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    159         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     159        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    160160    { "Linux",   "Linux",             "ArchLinux",          "Arch Linux (32-bit)",
    161161      VBOXOSTYPE_ArchLinux,       VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    162162       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    163         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     163        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    164164    { "Linux",   "Linux",             "ArchLinux_64",       "Arch Linux (64-bit)",
    165165      VBOXOSTYPE_ArchLinux_x64,   VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    166166       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    167         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     167        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    168168    { "Linux",   "Linux",             "Debian",             "Debian (32-bit)",
    169169      VBOXOSTYPE_Debian,          VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    170170       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    171         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     171        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    172172    { "Linux",   "Linux",             "Debian_64",          "Debian (64-bit)",
    173173      VBOXOSTYPE_Debian_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    174174       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    175         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97},
     175        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980},
    176176    { "Linux",   "Linux",             "OpenSUSE",           "openSUSE (32-bit)",
    177177      VBOXOSTYPE_OpenSUSE,        VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    178178       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    179         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     179        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    180180    { "Linux",   "Linux",             "OpenSUSE_64",        "openSUSE (64-bit)",
    181181      VBOXOSTYPE_OpenSUSE_x64,    VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    182182       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    183         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     183        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    184184    { "Linux",   "Linux",             "Fedora",             "Fedora (32-bit)",
    185185      VBOXOSTYPE_FedoraCore,      VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    186186       768,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    187         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     187        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    188188    { "Linux",   "Linux",             "Fedora_64",          "Fedora (64-bit)",
    189189      VBOXOSTYPE_FedoraCore_x64,  VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    190190       768,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    191         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     191        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    192192    { "Linux",   "Linux",             "Gentoo",             "Gentoo (32-bit)",
    193193      VBOXOSTYPE_Gentoo,          VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    194194       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    195         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     195        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    196196    { "Linux",   "Linux",             "Gentoo_64",          "Gentoo (64-bit)",
    197197      VBOXOSTYPE_Gentoo_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    198198       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    199         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     199        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    200200    { "Linux",   "Linux",             "Mandriva",           "Mandriva (32-bit)",
    201201      VBOXOSTYPE_Mandriva,        VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    202202       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    203         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     203        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    204204    { "Linux",   "Linux",             "Mandriva_64",        "Mandriva (64-bit)",
    205205      VBOXOSTYPE_Mandriva_x64,    VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    206206       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    207         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     207        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    208208    { "Linux",   "Linux",             "RedHat",             "Red Hat (32-bit)",
    209209      VBOXOSTYPE_RedHat,          VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE,
    210210       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    211         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     211        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    212212    { "Linux",   "Linux",             "RedHat_64",          "Red Hat (64-bit)",
    213213      VBOXOSTYPE_RedHat_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    214214       768,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    215         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     215        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    216216    { "Linux",   "Linux",             "Turbolinux",         "Turbolinux (32-bit)",
    217217      VBOXOSTYPE_Turbolinux,      VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    218218       384,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    219         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     219        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    220220    { "Linux",   "Linux",             "Turbolinux_64",      "Turbolinux (64-bit)",
    221221      VBOXOSTYPE_Turbolinux_x64,  VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    222222       384,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    223         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     223        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    224224    { "Linux",   "Linux",             "Ubuntu",             "Ubuntu (32-bit)",
    225225      VBOXOSTYPE_Ubuntu,          VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE | VBOXOSHINT_USBTABLET,
    226226       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    227         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     227        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    228228    { "Linux",   "Linux",             "Ubuntu_64",          "Ubuntu (64-bit)",
    229229      VBOXOSTYPE_Ubuntu_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    230230       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    231         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     231        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    232232    { "Linux",   "Linux",             "Xandros",            "Xandros (32-bit)",
    233233      VBOXOSTYPE_Xandros,         VBOXOSHINT_RTCUTC,
    234234       256,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    235         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     235        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    236236    { "Linux",   "Linux",             "Xandros_64",         "Xandros (64-bit)",
    237237      VBOXOSTYPE_Xandros_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    238238       256,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    239         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     239        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    240240    { "Linux",   "Linux",             "Oracle",             "Oracle (32-bit)",
    241241      VBOXOSTYPE_Oracle,          VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE,
    242242       512,  12, 12 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    243         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     243        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    244244    { "Linux",   "Linux",             "Oracle_64",          "Oracle (64-bit)",
    245245      VBOXOSTYPE_Oracle_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    246246       768,  12, 12 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    247         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     247        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    248248    { "Linux",   "Linux",             "Linux",              "Other Linux (32-bit)",
    249249      VBOXOSTYPE_Linux,           VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    250250       256,  12,  8 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    251         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     251        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
    252252    { "Linux",   "Linux",             "Linux_64",           "Other Linux (64-bit)",
    253253      VBOXOSTYPE_Linux_x64,       VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
    254254       512,  12,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    255         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     255        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    256256    { "Solaris", "Solaris",           "Solaris",            "Oracle Solaris 10 5/09 and earlier (32-bit)",
    257257      VBOXOSTYPE_Solaris,         VBOXOSHINT_NONE,
    258258       768,  12, 16 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    259         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     259        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    260260    { "Solaris", "Solaris",           "Solaris_64",         "Oracle Solaris 10 5/09 and earlier (64-bit)",
    261261      VBOXOSTYPE_Solaris_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    262262      1536,  12, 16 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    263         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     263        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    264264    { "Solaris", "Solaris",           "OpenSolaris",        "Oracle Solaris 10 10/09 and later (32-bit)",
    265265      VBOXOSTYPE_OpenSolaris,     VBOXOSHINT_USBTABLET,
    266266       768,  12, 16 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    267         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     267        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    268268    { "Solaris", "Solaris",           "OpenSolaris_64",     "Oracle Solaris 10 10/09 and later (64-bit)",
    269269      VBOXOSTYPE_OpenSolaris_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    270270      1536,  12, 16 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    271         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     271        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    272272    { "Solaris", "Solaris",           "Solaris11_64",       "Oracle Solaris 11 (64-bit)",
    273273      VBOXOSTYPE_Solaris11_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_USBTABLET,
    274274      1536,  12, 16 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_IntelAhci, StorageBus_SATA,
    275         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97  },
     275        StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    276276    { "BSD",     "BSD",               "FreeBSD",            "FreeBSD (32-bit)",
    277277      VBOXOSTYPE_FreeBSD,         VBOXOSHINT_NONE,
    278278       128,   4,  2 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    279         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     279        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    280280    { "BSD",     "BSD",               "FreeBSD_64",         "FreeBSD (64-bit)",
    281281      VBOXOSTYPE_FreeBSD_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    282282       128,   4,  2 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    283         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     283        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    284284    { "BSD",     "BSD",               "OpenBSD",            "OpenBSD (32-bit)",
    285285      VBOXOSTYPE_OpenBSD,         VBOXOSHINT_HWVIRTEX,
    286286        64,   4,  2 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    287         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     287        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    288288    { "BSD",     "BSD",               "OpenBSD_64",         "OpenBSD (64-bit)",
    289289      VBOXOSTYPE_OpenBSD_x64,     VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC,
    290290        64,   4,  2 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    291         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     291        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    292292    { "BSD",     "BSD",               "NetBSD",             "NetBSD (32-bit)",
    293293      VBOXOSTYPE_NetBSD,          VBOXOSHINT_RTCUTC,
    294294        64,   4,  2 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    295         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     295        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    296296    { "BSD",     "BSD",               "NetBSD_64",          "NetBSD (64-bit)",
    297297      VBOXOSTYPE_NetBSD_x64,      VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
    298298        64,   4,  2 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    299         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     299        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    300300    { "OS2",     "IBM OS/2",          "OS2Warp3",           "OS/2 Warp 3",
    301301      VBOXOSTYPE_OS2Warp3,        VBOXOSHINT_HWVIRTEX | VBOXOSHINT_FLOPPY,
    302302        48,   4,  1 * _1G64, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
    303         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     303        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    304304    { "OS2",     "IBM OS/2",          "OS2Warp4",           "OS/2 Warp 4",
    305305      VBOXOSTYPE_OS2Warp4,        VBOXOSHINT_HWVIRTEX | VBOXOSHINT_FLOPPY,
    306306        64,   4,  2 * _1G64, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
    307         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     307        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    308308    { "OS2",     "IBM OS/2",          "OS2Warp45",          "OS/2 Warp 4.5",
    309309      VBOXOSTYPE_OS2Warp45,       VBOXOSHINT_HWVIRTEX | VBOXOSHINT_FLOPPY,
    310310        128,  4,  2 * _1G64, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
    311         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     311        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    312312    { "OS2",     "IBM OS/2",          "OS2eCS",             "eComStation",
    313313      VBOXOSTYPE_ECS,             VBOXOSHINT_HWVIRTEX,
    314314        256,  4,  2 * _1G64, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
    315         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     315        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    316316    { "OS2",     "IBM OS/2",          "OS21x",              "OS/2 1.x",
    317317      VBOXOSTYPE_OS21x,           VBOXOSHINT_FLOPPY | VBOXOSHINT_NOUSB | VBOXOSHINT_TFRESET,
    318318        8, 4, 500 * _1M, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
    319         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     319        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    320320    { "OS2",     "IBM OS/2",          "OS2",                "Other OS/2",
    321321      VBOXOSTYPE_OS2,             VBOXOSHINT_HWVIRTEX | VBOXOSHINT_FLOPPY | VBOXOSHINT_NOUSB,
    322322        96,   4,  2 * _1G64, NetworkAdapterType_Am79C973, 1, StorageControllerType_PIIX4, StorageBus_IDE,
    323         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     323        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    324324    { "MacOS",   "Mac OS X",          "MacOS",              "Mac OS X (32-bit)",
    325325      VBOXOSTYPE_MacOS,           VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE
     
    327327      2048,   4, 20 * _1G64, NetworkAdapterType_I82545EM, 0,
    328328       StorageControllerType_IntelAhci, StorageBus_SATA, StorageControllerType_IntelAhci, StorageBus_SATA,
    329       ChipsetType_ICH9, AudioControllerType_HDA  },
     329      ChipsetType_ICH9, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    330330    { "MacOS",   "Mac OS X",          "MacOS_64",           "Mac OS X (64-bit)",
    331331      VBOXOSTYPE_MacOS_x64,       VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE |  VBOXOSHINT_64BIT
     
    333333      2048,   4, 20 * _1G64, NetworkAdapterType_I82545EM, 0,
    334334      StorageControllerType_IntelAhci, StorageBus_SATA, StorageControllerType_IntelAhci, StorageBus_SATA,
    335       ChipsetType_ICH9, AudioControllerType_HDA  },
     335      ChipsetType_ICH9, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    336336    { "MacOS",   "Mac OS X",          "MacOS106",           "Mac OS X 10.6 Snow Leopard (32-bit)",
    337337      VBOXOSTYPE_MacOS106,        VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE
     
    339339      2048,   4, 20 * _1G64, NetworkAdapterType_I82545EM, 0,
    340340       StorageControllerType_IntelAhci, StorageBus_SATA, StorageControllerType_IntelAhci, StorageBus_SATA,
    341       ChipsetType_ICH9, AudioControllerType_HDA  },
     341      ChipsetType_ICH9, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    342342    { "MacOS",   "Mac OS X",          "MacOS106_64",        "Mac OS X 10.6 Snow Leopard (64-bit)",
    343343      VBOXOSTYPE_MacOS106_x64,    VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE |  VBOXOSHINT_64BIT
     
    345345      2048,   4, 20 * _1G64, NetworkAdapterType_I82545EM, 0,
    346346      StorageControllerType_IntelAhci, StorageBus_SATA, StorageControllerType_IntelAhci, StorageBus_SATA,
    347       ChipsetType_ICH9, AudioControllerType_HDA  },
     347      ChipsetType_ICH9, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    348348    { "MacOS",   "Mac OS X",          "MacOS107_64",        "Mac OS X 10.7 Lion (64-bit)",
    349349      VBOXOSTYPE_MacOS107_x64,    VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE |  VBOXOSHINT_64BIT
     
    351351      2048,   4, 20 * _1G64, NetworkAdapterType_I82545EM, 0,
    352352      StorageControllerType_IntelAhci, StorageBus_SATA, StorageControllerType_IntelAhci, StorageBus_SATA,
    353       ChipsetType_ICH9, AudioControllerType_HDA  },
     353      ChipsetType_ICH9, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    354354    { "MacOS",   "Mac OS X",          "MacOS108_64",        "Mac OS X 10.8 Mountain Lion (64-bit)",  /* Aka "Mountain Kitten". */
    355355      VBOXOSTYPE_MacOS108_x64,    VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE |  VBOXOSHINT_64BIT
     
    357357      2048,   4, 20 * _1G64, NetworkAdapterType_I82545EM, 0,
    358358      StorageControllerType_IntelAhci, StorageBus_SATA, StorageControllerType_IntelAhci, StorageBus_SATA,
    359       ChipsetType_ICH9, AudioControllerType_HDA  },
     359      ChipsetType_ICH9, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    360360    { "MacOS",   "Mac OS X",          "MacOS109_64",        "Mac OS X 10.9 Mavericks (64-bit)", /* Not to be confused with McCain. */
    361361      VBOXOSTYPE_MacOS109_x64,    VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_EFI | VBOXOSHINT_PAE |  VBOXOSHINT_64BIT
     
    363363      2048,   4, 20 * _1G64, NetworkAdapterType_I82545EM, 0,
    364364      StorageControllerType_IntelAhci, StorageBus_SATA, StorageControllerType_IntelAhci, StorageBus_SATA,
    365       ChipsetType_ICH9, AudioControllerType_HDA  },
     365      ChipsetType_ICH9, AudioControllerType_HDA, AudioCodecType_STAC9221  },
    366366    { "Other",   "Other",             "DOS",                "DOS",
    367367      VBOXOSTYPE_DOS,             VBOXOSHINT_FLOPPY | VBOXOSHINT_NOUSB,
    368368        32,   4,  500 * _1M, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    369         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16  },
     369        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_SB16, AudioCodecType_SB16  },
    370370    { "Other",   "Other",             "Netware",            "Netware",
    371371      VBOXOSTYPE_Netware,         VBOXOSHINT_HWVIRTEX,
    372372       512,   4,  4 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    373         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     373        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    374374    { "Other",   "Other",             "L4",                 "L4",
    375375      VBOXOSTYPE_L4,              VBOXOSHINT_NONE,
    376376        64,   4,  2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    377         StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     377        StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    378378    { "Other",   "Other",             "QNX",                "QNX",
    379379#ifdef VBOX_WITH_RAW_RING1
     
    383383#endif
    384384       512,   4,  4 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    385       StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97  },
     385      StorageControllerType_PIIX4, StorageBus_IDE, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    386386    { "Other",   "Other",             "JRockitVE",          "JRockitVE",
    387387        VBOXOSTYPE_JRockitVE,     VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_PAE,
    388388        1024, 4,  8 * _1G64, NetworkAdapterType_I82545EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
    389         StorageControllerType_BusLogic, StorageBus_SCSI, ChipsetType_PIIX3, AudioControllerType_AC97  },
     389        StorageControllerType_BusLogic, StorageBus_SCSI, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_STAC9700  },
    390390};
    391391
  • trunk/src/VBox/Main/src-server/AudioAdapterImpl.cpp

    r56096 r56459  
    3939    AudioDriverType_T mAudioDriver;
    4040    AudioControllerType_T mAudioController;
     41    AudioCodecType_T mAudioCodec;
    4142    settings::StringsMap  properties;
    4243};
     
    348349}
    349350
     351HRESULT AudioAdapter::getAudioCodec(AudioCodecType_T *aAudioCodec)
     352{
     353    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
     354
     355    *aAudioCodec = mData->m->mAudioCodec;
     356
     357    return S_OK;
     358}
     359
     360HRESULT AudioAdapter::setAudioCodec(AudioCodecType_T aAudioCodec)
     361{
     362    /* the machine needs to be mutable */
     363    AutoMutableStateDependency adep(mParent);
     364    if (FAILED(adep.rc())) return adep.rc();
     365
     366    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
     367
     368    HRESULT rc = S_OK;
     369
     370    /*
     371     * which audio hardware type are we supposed to use?
     372     */
     373    switch (mData->m->mAudioController)
     374    {
     375        case AudioControllerType_AC97:
     376        {
     377            if (   (aAudioCodec != AudioCodecType_STAC9700)
     378                && (aAudioCodec != AudioCodecType_AD1980))
     379                rc = E_INVALIDARG;
     380            break;
     381        }
     382
     383        case AudioControllerType_SB16:
     384        {
     385            if (aAudioCodec != AudioCodecType_SB16)
     386                rc = E_INVALIDARG;
     387            break;
     388        }
     389
     390        case AudioControllerType_HDA:
     391        {
     392            if (aAudioCodec != AudioCodecType_STAC9221)
     393                rc = E_INVALIDARG;
     394            break;
     395        }
     396
     397        default:
     398            AssertMsgFailed (("Wrong audio controller type %d\n",
     399                              mData->m->mAudioController));
     400            rc = E_FAIL;
     401    }
     402
     403    if (!SUCCEEDED(rc))
     404        return setError(rc,
     405                        tr ("Invalid audio codec type %d"),
     406                        aAudioCodec);
     407
     408    if (mData->m->mAudioCodec != aAudioCodec)
     409    {
     410        mData->m.backup();
     411        mData->m->mAudioCodec = aAudioCodec;
     412        alock.release();
     413        AutoWriteLock mlock(mParent COMMA_LOCKVAL_SRC_POS);  // mParent is const, needs no locking
     414        mParent->i_setModified(Machine::IsModified_AudioAdapter);
     415    }
     416
     417    return rc;
     418}
     419
    350420HRESULT AudioAdapter::getPropertiesList(std::vector<com::Utf8Str>& aProperties)
    351421{
  • trunk/src/VBox/Main/src-server/GuestOSTypeImpl.cpp

    r55401 r56459  
    3838    , mChipsetType(ChipsetType_PIIX3)
    3939    , mAudioControllerType(AudioControllerType_AC97)
     40    , mAudioCodecType(AudioCodecType_STAC9700)
    4041{
    4142}
     
    126127    unconst(mChipsetType)               = ostype.chipsetType;
    127128    unconst(mAudioControllerType)       = ostype.audioControllerType;
     129    unconst(mAudioCodecType)            = ostype.audioCodecType;
    128130
    129131    /* Confirm a successful initialization when it's the case */
     
    371373
    372374
     375HRESULT GuestOSType::getRecommendedAudioCodec(AudioCodecType_T *aAudioCodec)
     376{
     377    *aAudioCodec = mAudioCodecType;
     378
     379    return S_OK;
     380}
     381
     382
    373383HRESULT GuestOSType::getRecommendedFloppy(BOOL *aRecommendedFloppy)
    374384{
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette