win3x
« High Definition Audio »

Welcome Guest. Please Login or Register.
Feb 18th, 2018, 02:56am



« Previous Topic | Next Topic »
Pages: 1 2 3 4 5 6  ...  12 Reply Notify Send Topic Print
 veryhotthread  Author  Topic: High Definition Audio  (Read 2614 times)
watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #45 on: Oct 12th, 2017, 5:49pm »
Quote


When you place a file in the Main "windows" directory called "hdaicout.hda", HDADRV8X will execute the commands within hdaicout.hda and output/print the results to HDAicgot.wri;

There is an example hdaicout.hda included in the zip file;
copy c:\hdadrv8x\hdaicout.hda c:\windows\hdaicout.hda

Next time you notice that sounds are not playing, use ahda to examine the "WALCLK Wall Clock Counter".

Soundrec may start to play if you manually restart the HDA controller.


HDAlog.txt is a dump of the data that function hda_single_send_cmd sends to the HDA.
(See HDA.PAS line 1089)

Although I do not have all of the HDA commands memorized, I can try to oversimplify the topic. tongue

HDA.PAS line 351: { GET verbs}
HDA.PAS line 428 : Parameter IDs


Codec,Node,Verb,Parameter

$F0000000 Codec
$0FF00000 Node
$000FFF00 Verb
$000000FF Parameter

$0 00 F00 00

Codec=0
Node=0
Verb=F00
Parameter=0

$000F0000
The Verb F00 means "Get Parameter"
Zero is the Parameter (0=Vendor ID)

$000F0002
The Verb F00 means "Get Parameter"
Two is the Parameter (2=Revision ID)


« Last Edit: Oct 12th, 2017, 5:55pm by watler » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #46 on: Oct 14th, 2017, 10:19am »
Quote

This version should correct some startup/shutdown errors.
http://turkeys4me.byethost4.com/HDADRV8Y.zip

[HDA_03F010DE,0D14105B]
PCI_BUS=$00
PCI_DEVICE=$05
PCI_FUNCTION=$0
GCTL=00000001
CODEC BITMAP=00000001
CODEC_VID=$10EC
CODEC_DID=$0662
CODEC_REV=$100101
CODEC_NODEINFO=$010001
VolumeWidget=$02
OutputWidget=$02

[HDA_03F010DE,837F1043]
PCI_BUS=$00
PCI_DEVICE=$05
PCI_FUNCTION=$0
GCTL=00000001
CODEC BITMAP=00000001
CODEC_VID=$10EC
CODEC_DID=$0662
CODEC_REV=$100101
CODEC_NODEINFO=$010001
VolumeWidget=$0C
OutputWidget=$02

[HDA_43831002,960F1002]
PCI_BUS=$01
PCI_DEVICE=$05
PCI_FUNCTION=$1
GCTL=00000001
CODEC BITMAP=00000001
CODEC_VID=$1002
CODEC_DID=$791A
CODEC_REV=$100000
CODEC_NODEINFO=$010001

[HDA_43831002,76621849]
PCI_BUS=$00
PCI_DEVICE=$14
PCI_FUNCTION=$2
GCTL=00000001
CODEC BITMAP=00000001
CODEC_VID=$10EC
CODEC_DID=$0662
CODEC_REV=$EC0662
CODEC_NODEINFO=$EC0662

My 0662 are function zero.
Your 0662 is showing as the third function of device $14.

Deomsh, perhaps you need a driver for the main device.

http://support.amd.com/TechDocs/42119_sb600_ds_pub_3.07.pdf
http://support.amd.com/TechDocs/46155_sb600_rrg_pub_3.03.pdf
http://support.amd.com/TechDocs/46156_sb600_rpr_pub_3.02b.pdf
http://support.amd.com/TechDocs/46157_sb600_bdg_pub.3.00.pdf

« Last Edit: Oct 14th, 2017, 12:50pm by watler » User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 106
xx Re: High Definition Audio
« Reply #47 on: Oct 14th, 2017, 6:07pm »
Quote

Thank you Watler,

I've tried all new versions, but no progress.

Today my PS/2-port does not work anymore, so maybe my motherboard is the problem indeed.

When my kids where swimming this afternoon, I found MS High Definition Audio Utility 3.3 (HdauSetup.msi). I can read things about my codec (inside Windows 10).

I can see:
[Parameters]
Vendor Id: 0x10EC0662;
Revision ID: 0x00100101;
Subordinate node count: 0x00010001;
[Audio Function Group]
Controls;
Parameters;
Pivots;
Widgets.

And inside those four groups much, much more, up to widget 37 (0x26).

Export is only in xml-format. You can load this file in the High Definition Audio Utility 3.3. Shall I mail you the xml-file (389K)?
« Last Edit: Oct 14th, 2017, 6:11pm by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #48 on: Oct 14th, 2017, 8:16pm »
Quote

Thank you for your help, deomsh.
Good to hear that everyone was able to enjoy the day.

Have you tried another PS/2 keyboard (or mouse)?
Can a USB device be used in its place?

If you are able to setup batch files, testing my driver may not require much input.
Perhaps you can edit hdaicout.hda from Windows 10 and then read the results from hdaicgot.wri;

Now that we know that your Revision ID and Node count are not the same as your VID/DID,
we must figure out how to properly read them from windows 3.1.
Once you have moved hdaicout.hda from your windows system folder to your main windows directory, please run windows 3.1 and post the resulting hdaicgot.wri;


By default my driver does not use any Widget info.
However, it must be able to send and receive those sort of commands for the user.
If your computer's BIOS has not set up your HDA's widgets and nodes, you may still need your HDA widget information.

I do not have access to Windows 10.
Feel free to email me as you like.


User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 106
xx Re: High Definition Audio
« Reply #49 on: Oct 15th, 2017, 4:36pm »
Quote

Found an old PS/2 mouse that is working with my motherboard. So I can go on.

I think I can manage batchfiles, I am willing to test further.

The HDAut.msi needs at least Windows 7 audio drivers.

Of cause I copied HDAICOUT.HDA to the Windows directory, as you said. During latest tests I got only ONE time HDAICGOT.WRI:
sent $01470740; got $00000000
sent $0143B07F; got $00000000
sent $0143B07F; got $00000000
sent $01570740; got $00000000
sent $0153B07F; got $00000000
sent $0153B07F; got $00000000
sent $01670740; got $00000000
sent $0163B07F; got $00000000
sent $0163B07F; got $00000000
sent $01770740; got $00000000
sent $0173B07F; got $00000000
sent $0173B07F; got $00000000
sent $01870740; got $00000000
sent $0183B07F; got $00000000
sent $0183B07F; got $00000000
sent $01970740; got $00000000
sent $0193B07F; got $00000000
sent $0193B07F; got $00000000
sent $01A70740; got $00000000
sent $01A3B07F; got $00000000
sent $01A3B07F; got $00000000
sent $01B70740; got $00000000
sent $01B3B07F; got $00000000
sent $01B3B07F; got $00000000
sent $00224011; got $00000000
sent $00270610; got $00000000
sent $00324011; got $00000000
sent $00370610; got $00000000
sent $00424011; got $00000000
sent $00470610; got $00000000
sent $0033B0FF; got $00000000
sent $0043B0FF; got $00000000
sent $0063B0FF; got $00000000
sent $00C3B0FF; got $00000000
sent $00D3B0FF; got $00000000
sent $00E3B0FF; got $00000000
sent $0023A07F; got $00000000
sent $0023907F; got $00000000
sent $0033A07F; got $00000000
sent $0033907F; got $00000000
sent $0043A07F; got $00000000
sent $0043907F; got $00000000
sent $00C3A07F; got $00000000
sent $00C3907F; got $00000000
sent $00D3A07F; got $00000000
sent $00D3907F; got $00000000
sent $00E3A07F; got $00000000
sent $00E3907F; got $00000000
sent $000F0000; got $10EC0662
sent $000F0001; got $10EC0662
sent $000F0002; got $10EC0662
sent $000F0003; got $10EC0662
sent $000F0004; got $10EC0662
sent $000F0005; got $10EC0662
sent $000F0006; got $10EC0662
sent $000F0007; got $10EC0662
sent $001F7700; got $00000000
sent $001F7700; got $00000000
sent $000F0000; got $10EC0662
sent $000F0001; got $10EC0662
sent $000F0002; got $10EC0662
sent $000F0003; got $10EC0662
sent $000F0004; got $10EC0662
sent $000F0005; got $10EC0662
sent $000F0006; got $10EC0662
sent $000F0007; got $10EC0662

The "got's" after sent values $000F0000-$001F7700 are consistent with my results with AHDA17c I posted in Reply #38.

Makes it any difference if HDAICOUT.HDA is during install already in the Windows directory? I assume not.
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #50 on: Oct 15th, 2017, 5:46pm »
Quote

Good to see that everything is working well. cool

Hdaicout.hda is optional and must be managed by the user.
Each new hdaicgot.wri will overwrite the old one.

We are using the Immediate Command ports to talk with the CODEC.
Although most HDA support this method, for HDA the Immediate Command interface is optional.

Since your CODEC is responding.
You might try a different CODEC ID.
You can edit, add, and remove the commands within
hdaicout.hda.

$100F0002;
$200F0002;
$400F0002;
$F00F0002;


Why don't you give version Y a try?
User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 106
xx Re: High Definition Audio
« Reply #51 on: Oct 16th, 2017, 5:23pm »
Quote

I have tested 8Y already, as I tried to say in Reply #47. I will experiment again, but first I have to read more documentation. As I am not a programmer its not really easy.
« Last Edit: Oct 16th, 2017, 5:24pm by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #52 on: Oct 16th, 2017, 6:53pm »
Quote

Deomsh, were you able to try a different codec index?

You might adjust your batch files to erase the old hdalog.txt and hdaicgot.wri before windows 3.1 starts.

http://turkeys4me.byethost4.com/HDADRV8Z.zip



I have seen and used only a small number of HDA devices and I have no access to an AMD HDA version.
You are my primary source of information for this device.

It would appear that your HDA is not in the same vein as my HDA controllers.
Surely there is some nuance in implementation that effects initialization.
However, I've no notion what it is. huh

My drivers are rather simplistic in nature.
HDA2.DLL expects hardware to be preconfigured and autonomous.
Any HDA interface that works with my 16-bit driver must be extremely verbose.

Perhaps one of the ledgemen at ASROCk could refer you to the architect that sculptured your motherboard.


(I don't own windows 7)

« Last Edit: Oct 16th, 2017, 7:04pm by watler » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #53 on: Oct 17th, 2017, 1:59pm »
Quote

Adjusted initialization and output:
http://turkeys4me.byethost4.com/HDADRV8~.zip

Are the HDA reset pop/crack sounds audible at windows 3.1 startup?
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #54 on: Oct 18th, 2017, 11:00am »
Quote

HDA startup code added:
http://turkeys4me.byethost4.com/HDADRV90.zip


Deomsh, has anything changed for you?
User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 106
xx Re: High Definition Audio
« Reply #55 on: Oct 18th, 2017, 6:04pm »
Quote

Help, your going very fast rolleyes. I will test version 90 soon.

This evening I have tested 8z and 8~. As long I don't first use a DOS HDA-player, the new versions are playing very well, no shutdown problems. Still no sound, no crackling noise at startup. Only when I play in a DOS HDA-player, there is heavy crackling sound at startup and sometimes during, but impossible to use Sound Recorder because of the 'Device is in use by an other application'. After a full (BIOS-)reboot tis error is gone. It seems to me the driver has problems to reset the codec.

There is a new line in HDACFG.INI: 'CODEC Index=$0', but I am not able to edit the value. After reboot its zero again.

No HDAICGOT.WRI with 8Z and 8~. I tested earlier versions, only with 8W I got SOMETIMES cry this file (same values as in Reply #49).

I did some preliminary reading in Intel's High Definition Audio Specification, I am beginning to have some (vague) notion of a HDA-codec.

Further I found a way to get some verb and response values with MS High Definition Audio Utility 3.3.

RootNode
Revision Id: Verb: 0x000F0002 Reponse: 0x00100101
Subordinate Node Count: Verb: 0x000F0004 Reponse: 0x00010001
« Last Edit: Oct 18th, 2017, 6:08pm by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #56 on: Oct 18th, 2017, 7:48pm »
Quote

It is good to hear that the codec is working.

There is a new hdaicout.hda that you can copy to the main windows 3.1 directory.
The meaning of hdalog.txt and HDAicgot.wri has changed between the last few versions.

Even if they appear similar, I would like to see each new version's HDAicgot.wri and hdalog.txt.

Has the windows 3.1 startup time changed between versions or settings?
Does the HDA snap/tick when the computer is first turned on?

Set the windows startup sound to "none".
Have both a 44100hz and a 48000hz wave handy.

Remember to pray. wink
User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 106
xx Re: High Definition Audio
« Reply #57 on: Oct 19th, 2017, 5:36pm »
Quote

Thanks a lot for all your efforts. I have tested version 90.

-No crackling noise at startup. System sounds were already disabled.
-44100 and 48000 wav files, both 16 bit, play fine in sound Recorder, but still silence embarassed
-No HDAICGOT.WRI. Only empty HDALOG.TXT in the root directory (in my case C:\).
-Changing in HDACFG.INI VolumeWidget values or OutputWidget values makes no difference.
-Using ACTIVATE.EXE or WAVEOUT.EXE (Volume Mixer) makes no difference. sad

This weekend I will search my old oscilloscope and measure electric output signals.
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #58 on: Oct 20th, 2017, 1:18pm »
Quote

Thank you for testing my drivers, deomsh.
There is no way to know about them till you try them.

As long as the Immediate Command interface is not working, my driver will be unable to make use of your HDA CODEC.
Perhaps your HDA implementation is incompatible with 16-bit access.
No sound during boot may indicate that the BIOS has not activated the HDA (or has disabled it).

You are welcome to peruse my code at your leisure.
If you spot any errors in my code or have any recommendations, just let me know. smiley


User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 161
xx Re: High Definition Audio
« Reply #59 on: Oct 23rd, 2017, 12:36pm »
Quote

Deomsh, you have not mentioned your oscilloscope results.
Did everything go well for you?


http://turkeys4me.byethost4.com/HDADRV91.zip
You say that the position of windows wave files is now moving?

I ususally run windows from the a directory called C:\win310.
Since you are finding HDALOG.TXT in the root directory, I suppose hdaicout.hda should be placed in that directory also.

I added an AHDA setting to manually change the CODEC index:
http://turkeys4me.byethost4.com/files/AHDA17D.zip
You can now edit grid values with the Keyboard's Enter key.

User IP Logged

Pages: 1 2 3 4 5 6  ...  12 Reply Notify Send Topic Print
« Previous Topic | Next Topic »

Donate $6.99 for 50,000 Ad-Free Pageviews!

| |

This forum powered for FREE by Conforums ©
Sign up for your own Free Message Board today!
Terms of Service | Privacy Policy | Conforums Support | Parental Controls