diff --git a/Main_Window.cpp b/Main_Window.cpp
index f8cb244..d56eddf 100644
--- a/Main_Window.cpp
+++ b/Main_Window.cpp
@@ -325,6 +325,12 @@ void Main_Window::Connect_Signals()
 	connect( ui.CH_PCSPK, SIGNAL(clicked()),
 			 this, SLOT(VM_Changet()) );
 	
+	connect( ui.CH_HDA, SIGNAL(clicked()),
+			 this, SLOT(VM_Changet()) );
+	
+	connect( ui.CH_cs4231a, SIGNAL(clicked()),
+			 this, SLOT(VM_Changet()) );
+	
 	connect( ui.CH_Fullscreen, SIGNAL(clicked()),
 			 this, SLOT(VM_Changet()) );
 	
@@ -810,6 +816,12 @@ bool Main_Window::Create_VM_From_Ui( Virtual_Machine *tmp_vm, Virtual_Machine *o
 	if( ui.CH_AC97->isChecked() ) snd_card.Audio_AC97 = true;
 	else snd_card.Audio_AC97 = false;
 	
+	if( ui.CH_HDA->isChecked() ) snd_card.Audio_HDA = true;
+	else snd_card.Audio_HDA = false;
+	
+	if( ui.CH_cs4231a->isChecked() ) snd_card.Audio_cs4231a = true;
+	else snd_card.Audio_cs4231a = false;
+	
 	tmp_vm->Set_Audio_Cards( snd_card );
 	
 	// Memory
@@ -1498,6 +1510,12 @@ void Main_Window::Update_VM_Ui()
 	if( tmp_vm->Get_Audio_Cards().Audio_AC97 ) ui.CH_AC97->setChecked( true );
 	else ui.CH_AC97->setChecked( false );
 	
+	if( tmp_vm->Get_Audio_Cards().Audio_HDA ) ui.CH_HDA->setChecked( true );
+	else ui.CH_HDA->setChecked( false );
+	
+	if( tmp_vm->Get_Audio_Cards().Audio_cs4231a ) ui.CH_cs4231a->setChecked( true );
+	else ui.CH_cs4231a->setChecked( false );
+	
 	// RAM
 	if( tmp_vm->Get_Memory_Size() < 1 )
 	{
@@ -2116,7 +2134,8 @@ void Main_Window::Update_Info_Text( int info_mode )
 			cell_cursor = cell.firstCursorPosition();
 			
 			if( ui.CH_sb16->isChecked() || ui.CH_es1370->isChecked() || ui.CH_Adlib->isChecked() ||
-				ui.CH_AC97->isChecked() || ui.CH_GUS->isChecked()	 || ui.CH_PCSPK->isChecked() )
+				ui.CH_AC97->isChecked() || ui.CH_GUS->isChecked()	 || ui.CH_PCSPK->isChecked() ||
+				ui.CH_HDA->isChecked() || ui.CH_cs4231a->isChecked() )
 			{
 				cell_cursor.insertText( tr("Yes"), format );
 			}
@@ -6099,6 +6118,12 @@ void Main_Window::Apply_Emulator( int mode )
 			if( curComp.Audio_Card_List.Audio_PC_Speaker ) ui.CH_PCSPK->setEnabled( true );
 			else ui.CH_PCSPK->setEnabled( false );
 			
+			if( curComp.Audio_Card_List.Audio_HDA ) ui.CH_HDA->setEnabled( true );
+			else ui.CH_HDA->setEnabled( false );
+			
+			if( curComp.Audio_Card_List.Audio_cs4231a ) ui.CH_cs4231a->setEnabled( true );
+			else ui.CH_cs4231a->setEnabled( false );
+			
 			// Other Options
 			Update_Disabled_Controls();
 			break;
diff --git a/Main_Window.ui b/Main_Window.ui
index 92d4898..c7a7e3a 100644
--- a/Main_Window.ui
+++ b/Main_Window.ui
@@ -1170,6 +1170,36 @@
                  </property>
                 </widget>
                </item>
+               <item row="2" column="0">
+                <widget class="QCheckBox" name="CH_HDA">
+                 <property name="text">
+                  <string>Intel HDA</string>
+                 </property>
+                 <property name="checked">
+                  <bool>false</bool>
+                 </property>
+                </widget>
+               </item>
+               <item row="2" column="1">
+                <spacer>
+                 <property name="orientation">
+                  <enum>Qt::Horizontal</enum>
+                 </property>
+                 <property name="sizeHint" stdset="0">
+                  <size>
+                   <width>21</width>
+                   <height>20</height>
+                  </size>
+                 </property>
+                </spacer>
+               </item>
+               <item row="2" column="2">
+                <widget class="QCheckBox" name="CH_cs4231a">
+                 <property name="text">
+                  <string>cs4231a</string>
+                 </property>
+                </widget>
+               </item>
               </layout>
              </widget>
             </item>
@@ -4736,8 +4766,10 @@ To Disable This Function in Current VM choose &quot;Don't Use Embedded VNC Displ
   <tabstop>CH_Remove_RAM_Size_Limitation</tabstop>
   <tabstop>CH_sb16</tabstop>
   <tabstop>CH_AC97</tabstop>
+  <tabstop>CH_HDA</tabstop>
   <tabstop>CH_es1370</tabstop>
   <tabstop>CH_GUS</tabstop>
+  <tabstop>CH_cs4231a</tabstop>
   <tabstop>CH_Adlib</tabstop>
   <tabstop>CH_PCSPK</tabstop>
   <tabstop>CH_Fullscreen</tabstop>
diff --git a/System_Info.cpp b/System_Info.cpp
index 32ca029..b5c535b 100644
--- a/System_Info.cpp
+++ b/System_Info.cpp
@@ -2363,10 +2363,12 @@ Available_Devices System_Info::Get_Emulator_Info( const QString &path, bool *ok,
 		
 		if( qemu_dev_name == "sb16" ) tmp_dev.Audio_Card_List.Audio_sb16 = true;
 		else if( qemu_dev_name == "es1370" ) tmp_dev.Audio_Card_List.Audio_es1370 = true;
-		else if( qemu_dev_name == "gus" ) tmp_dev.Audio_Card_List.Audio_Adlib = true;
-		else if( qemu_dev_name == "adlib" ) tmp_dev.Audio_Card_List.Audio_PC_Speaker = true;
-		else if( qemu_dev_name == "pcspk" ) tmp_dev.Audio_Card_List.Audio_GUS = true;
+		else if( qemu_dev_name == "gus" ) tmp_dev.Audio_Card_List.Audio_GUS = true;
+		else if( qemu_dev_name == "adlib" ) tmp_dev.Audio_Card_List.Audio_Adlib = true;
+		else if( qemu_dev_name == "pcspk" ) tmp_dev.Audio_Card_List.Audio_PC_Speaker = true;
 		else if( qemu_dev_name == "ac97" ) tmp_dev.Audio_Card_List.Audio_AC97 = true;
+		else if( qemu_dev_name == "hda" ) tmp_dev.Audio_Card_List.Audio_HDA = true;
+		else if( qemu_dev_name == "cs4231a" ) tmp_dev.Audio_Card_List.Audio_cs4231a = true;
 		else
 		{
 			if( ! qemu_dev_name.isEmpty() )
diff --git a/VM.cpp b/VM.cpp
index e45fcbb..2dedadd 100644
--- a/VM.cpp
+++ b/VM.cpp
@@ -5159,6 +5159,8 @@ QStringList Virtual_Machine::Build_QEMU_Args()
 	if( Audio_Card.Audio_PC_Speaker && Current_Emulator_Devices.Audio_Card_List.Audio_PC_Speaker ) audio_list << "pcspk";
 	if( Audio_Card.Audio_GUS && Current_Emulator_Devices.Audio_Card_List.Audio_GUS ) audio_list << "gus";
 	if( Audio_Card.Audio_AC97 && Current_Emulator_Devices.Audio_Card_List.Audio_AC97 ) audio_list << "ac97";
+	if( Audio_Card.Audio_HDA && Current_Emulator_Devices.Audio_Card_List.Audio_HDA ) audio_list << "hda";
+	if( Audio_Card.Audio_cs4231a && Current_Emulator_Devices.Audio_Card_List.Audio_cs4231a ) audio_list << "cs4231a";
 	
 	if( audio_list.count() > 0 )
 	{
diff --git a/VM_Devices.cpp b/VM_Devices.cpp
index 09def34..8ae5468 100644
--- a/VM_Devices.cpp
+++ b/VM_Devices.cpp
@@ -424,6 +424,8 @@ bool Emulator::Load( const QString &path )
 			tmpDev.Audio_Card_List.Audio_PC_Speaker = (thirdElement.firstChildElement("PC_Speaker").text() == "yes");
 			tmpDev.Audio_Card_List.Audio_GUS = (thirdElement.firstChildElement("GUS").text() == "yes");
 			tmpDev.Audio_Card_List.Audio_AC97 = (thirdElement.firstChildElement("AC97").text() == "yes");
+			tmpDev.Audio_Card_List.Audio_HDA = (thirdElement.firstChildElement("HDA").text() == "yes");
+			tmpDev.Audio_Card_List.Audio_cs4231a = (thirdElement.firstChildElement("cs4231a").text() == "yes");
 			
 			// Video Cards
 			tmpDev.Video_Card_List.clear();
@@ -780,6 +782,16 @@ bool Emulator::Save() const
 		thirdElement.appendChild( domText );
 		deviceElement.appendChild( thirdElement );
 		
+		thirdElement = domDocument.createElement( "HDA" );
+		domText = domDocument.createTextNode( (tmpDev.Audio_Card_List.Audio_HDA ? "yes" : "no") );
+		thirdElement.appendChild( domText );
+		deviceElement.appendChild( thirdElement );
+		
+		thirdElement = domDocument.createElement( "cs4231a" );
+		domText = domDocument.createTextNode( (tmpDev.Audio_Card_List.Audio_cs4231a ? "yes" : "no") );
+		thirdElement.appendChild( domText );
+		deviceElement.appendChild( thirdElement );
+		
 		domElement.appendChild( deviceElement );
 		
 		// Video Cards
diff --git a/VM_Devices.h b/VM_Devices.h
index 2dfa0cd..e163cb5 100644
--- a/VM_Devices.h
+++ b/VM_Devices.h
@@ -44,7 +44,7 @@ class VM
 		// Virtual Machine State
 		enum VM_State { VMS_Running, VMS_Power_Off, VMS_Pause, VMS_Saved, VMS_In_Error };
 		
-		// x86 audio cars ( one or more )
+		// x86 audio cards ( one or more )
 		class Sound_Cards
 		{
 			public:
@@ -54,10 +54,12 @@ class VM
 				bool Audio_PC_Speaker;
 				bool Audio_GUS;
 				bool Audio_AC97;
+				bool Audio_HDA;
+				bool Audio_cs4231a;
 				
 				Sound_Cards()
 				{
-					Audio_sb16 = Audio_es1370 = Audio_Adlib = Audio_PC_Speaker = Audio_GUS = Audio_AC97 = false;
+					Audio_sb16 = Audio_es1370 = Audio_Adlib = Audio_PC_Speaker = Audio_GUS = Audio_AC97 = Audio_HDA = Audio_cs4231a = false;
 				}
 				
 				bool operator==( const Sound_Cards &v ) const
@@ -67,7 +69,9 @@ class VM
 						Audio_Adlib == v.Audio_Adlib &&
 						Audio_PC_Speaker == v.Audio_PC_Speaker &&
 						Audio_GUS == v.Audio_GUS &&
-						Audio_AC97 == v.Audio_AC97 )
+						Audio_AC97 == v.Audio_AC97 &&
+						Audio_HDA == v.Audio_HDA &&
+						Audio_cs4231a == v.Audio_cs4231a )
 					{
 						return true;
 					}
diff --git a/os_templates/FreeBSD 4.aqvmt b/os_templates/FreeBSD 4.aqvmt
index a42b016..d35782e 100644
--- a/os_templates/FreeBSD 4.aqvmt	
+++ b/os_templates/FreeBSD 4.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>64</Memory_Size>
diff --git a/os_templates/FreeBSD 7.aqvmt b/os_templates/FreeBSD 7.aqvmt
index 2f03555..9538218 100644
--- a/os_templates/FreeBSD 7.aqvmt	
+++ b/os_templates/FreeBSD 7.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>256</Memory_Size>
diff --git a/os_templates/FreeBSD 8.aqvmt b/os_templates/FreeBSD 8.aqvmt
index 2f03555..9538218 100644
--- a/os_templates/FreeBSD 8.aqvmt	
+++ b/os_templates/FreeBSD 8.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>256</Memory_Size>
diff --git a/os_templates/Linux 2.0.aqvmt b/os_templates/Linux 2.0.aqvmt
index bc1ce2a..c322332 100644
--- a/os_templates/Linux 2.0.aqvmt	
+++ b/os_templates/Linux 2.0.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>64</Memory_Size>
diff --git a/os_templates/Linux 2.4.aqvmt b/os_templates/Linux 2.4.aqvmt
index 83719fb..faf8a64 100644
--- a/os_templates/Linux 2.4.aqvmt	
+++ b/os_templates/Linux 2.4.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>128</Memory_Size>
diff --git a/os_templates/Linux 2.6 x86_64.aqvmt b/os_templates/Linux 2.6 x86_64.aqvmt
index 0896e34..af3e482 100644
--- a/os_templates/Linux 2.6 x86_64.aqvmt	
+++ b/os_templates/Linux 2.6 x86_64.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>256</Memory_Size>
diff --git a/os_templates/Linux 2.6.aqvmt b/os_templates/Linux 2.6.aqvmt
index 4f737aa..ccef137 100644
--- a/os_templates/Linux 2.6.aqvmt	
+++ b/os_templates/Linux 2.6.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>256</Memory_Size>
diff --git a/os_templates/MacOS X x86.aqvmt b/os_templates/MacOS X x86.aqvmt
index 69c8fab..281c76d 100644
--- a/os_templates/MacOS X x86.aqvmt	
+++ b/os_templates/MacOS X x86.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>1024</Memory_Size>
diff --git a/os_templates/Windows 2000.aqvmt b/os_templates/Windows 2000.aqvmt
index fd1bb24..e0d28f0 100644
--- a/os_templates/Windows 2000.aqvmt	
+++ b/os_templates/Windows 2000.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>192</Memory_Size>
diff --git a/os_templates/Windows 7 x64.aqvmt b/os_templates/Windows 7 x64.aqvmt
index fa45afe..551f258 100644
--- a/os_templates/Windows 7 x64.aqvmt	
+++ b/os_templates/Windows 7 x64.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>1024</Memory_Size>
diff --git a/os_templates/Windows 7.aqvmt b/os_templates/Windows 7.aqvmt
index c1f9735..1b5ca28 100644
--- a/os_templates/Windows 7.aqvmt	
+++ b/os_templates/Windows 7.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>1024</Memory_Size>
diff --git a/os_templates/Windows 9X.aqvmt b/os_templates/Windows 9X.aqvmt
index a0bfa87..bb1d7ef 100644
--- a/os_templates/Windows 9X.aqvmt	
+++ b/os_templates/Windows 9X.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>128</Memory_Size>
diff --git a/os_templates/Windows Vista x64.aqvmt b/os_templates/Windows Vista x64.aqvmt
index 148a5bc..a93cbbf 100644
--- a/os_templates/Windows Vista x64.aqvmt	
+++ b/os_templates/Windows Vista x64.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>1024</Memory_Size>
diff --git a/os_templates/Windows Vista.aqvmt b/os_templates/Windows Vista.aqvmt
index c4504a2..368cee7 100644
--- a/os_templates/Windows Vista.aqvmt	
+++ b/os_templates/Windows Vista.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>1024</Memory_Size>
diff --git a/os_templates/Windows XP x64.aqvmt b/os_templates/Windows XP x64.aqvmt
index f4b7bc3..496e1a3 100644
--- a/os_templates/Windows XP x64.aqvmt	
+++ b/os_templates/Windows XP x64.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>256</Memory_Size>
diff --git a/os_templates/Windows XP.aqvmt b/os_templates/Windows XP.aqvmt
index 32d1fd3..78dc2f3 100644
--- a/os_templates/Windows XP.aqvmt	
+++ b/os_templates/Windows XP.aqvmt	
@@ -22,6 +22,8 @@
             <Audio_PC_Speaker>false</Audio_PC_Speaker>
             <Audio_GUS>false</Audio_GUS>
             <Audio_AC97>false</Audio_AC97>
+            <Audio_HDA>false</Audio_HDA>
+            <Audio_cs4231a>false</Audio_cs4231a>
         </Audio_Cards>
         <Check_Free_RAM>false</Check_Free_RAM>
         <Memory_Size>256</Memory_Size>
