win3x
« High Definition Audio »

Welcome Guest. Please Login or Register.
Feb 22nd, 2018, 10:41pm



« Previous Topic | Next Topic »
Pages: 1 ... 3 4 5 6 7  ...  12 Reply Notify Send Topic Print
 veryhotthread  Author  Topic: High Definition Audio  (Read 2662 times)
deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #60 on: Oct 23rd, 2017, 5:12pm »
Quote

I didn't find my oscilloscope yet, but I found my old HP 400E AC voltmeter (analog, from 1 mV full scale up to 300V).
I measured when starting Windows and while playing a wav-file, but the needle doesn't move from the 8 mV position (that signal will be a small 50Hz hum). In Windows 10 the needle moves a lot when playing sound, of course. cool

Placing HDAICOUT.HDA in a Windows.310 directory, didn't bring anything, I even added that directory as the first instance to the path. HDALOG.TXT is still in the root.

Thanks for the new files, I will test them soon.

I found some SB710 documentation (southbridge of my motherboard), I will compare them to your SB600 docs for ALC662.
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #61 on: Oct 24th, 2017, 11:56am »
Quote

I thought you might be down with the fluke or something.
Glad to hear that you are feeling well.
If you can find a tach you can test the dwell.

Since it seems things are going down the wrong path, lets see If I can keep to the windows directory.
http://turkeys4me.byethost4.com/files/HDADRV92.zip

Fixed ICH IC error reset bind:
http://turkeys4me.byethost4.com/programs/AHDA17E.zip

Let me know if you spot any peculiarities that distinguish your device from the rest.
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #62 on: Oct 25th, 2017, 1:21pm »
Quote

Do your widgets have power management?

I've added simple PM control:
http://turkeys4me.byethost4.com/programs/HDADRV94.zip

Since someone recently gave me a Gateway GT5026E, I have been able to produce sound on it by powering up the AFG and Audio Output (widget 02).

[HDA_27D88086,5049107B]
PCI_BUS=$00
PCI_DEVICE=$1B
PCI_FUNCTION=$0
GCTL=00000001
CODEC BITMAP=00000100
CODEC Index=$2
CODEC_VID=$8384
CODEC_DID=$7680
CODEC_REV=$103201
CODEC_NODEINFO=$010001
VolumeWidget=$02
OutputWidget=$02
SleepingWidget=$02

The same settings seem to work with the my Dell E510.

[HDA_27D88086,01D21028]
PCI_BUS=$00
PCI_DEVICE=$1B
PCI_FUNCTION=$0
GCTL=00000001
CODEC BITMAP=00000001
CODEC Index=$0
CODEC_VID=$8384
CODEC_DID=$7680
CODEC_REV=$103201
CODEC_NODEINFO=$010001
VolumeWidget=$02
OutputWidget=$02
SleepingWidget=$02


I hope your AMD chipset works better than these two intel ones.



User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #63 on: Oct 25th, 2017, 5:46pm »
Quote

About your question about power management, according to the Realtek ALC662 series datasheet 1.3
http://www.hardwaresecrets.com/datasheets/ALC662_DataSheet_1.3.pdf
there are three supported power states (described in 7.5/8.1.13/8.16/8.17).

I will try version 9.4 soon.

Today I compared the SB600 and SB710 docs, but I couldn't find any differences according to HDA, so the self-identification of the HDA-controller as SB600 seems to be correct.

I tested further version 9.1 an 9.2. This time I got HDALOG.TXT and HDAICGOT.WRI in the root for 9.1. Version 9.2 gives HDALOG.TXT and HDAICIN.TXT in the Windows-directory. laugh

HDALOG.TXT (both versions!):
4999
etc, many times
4999
CODEC 1 not sending!
CODEC 2 not sending!
CODEC F not sending!

HDAICIN.TXT (version 9.2):
sent $01470740; got $00000000 ticks=000000A5 + w g
sent $0143B07F; got $00000000 ticks=000000A5 + w g
sent $0143B07F; got $00000000 ticks=000000A5 + w g
sent $01570740; got $00000000 ticks=000000A4 + w g
sent $0153B07F; got $00000000 ticks=000000A5 + w g
sent $0153B07F; got $00000000 ticks=000000A5 + w g
sent $01670740; got $00000000 ticks=000000A5 + w g
sent $0163B07F; got $00000000 ticks=000000A5 + w g
sent $0163B07F; got $00000000 ticks=000000A4 + w g
sent $01770740; got $00000000 ticks=000000A5 + w g
sent $0173B07F; got $00000000 ticks=000000A5 + w g
sent $0173B07F; got $00000000 ticks=000000A5 + w g
sent $01870740; got $00000000 ticks=000000A4 + w g
sent $0183B07F; got $00000000 ticks=000000A5 + w g
sent $0183B07F; got $00000000 ticks=000000A5 + w g
sent $01970740; got $00000000 ticks=000000A5 + w g
sent $0193B07F; got $00000000 ticks=000000A4 + w g
sent $0193B07F; got $00000000 ticks=000000A5 + w g
sent $01A70740; got $00000000 ticks=000000A5 + w g
sent $01A3B07F; got $00000000 ticks=000000A5 + w g
sent $01A3B07F; got $00000000 ticks=000000A5 + w g
sent $01B70740; got $00000000 ticks=000000A4 + w g
sent $01B3B07F; got $00000000 ticks=000000A5 + w g
sent $01B3B07F; got $00000000 ticks=000000A5 + !g
sent $00224011; got $00000000 ticks=000000A5 + w g
sent $00270610; got $00000000 ticks=000000A4 + w g
sent $00324011; got $00000000 ticks=000000A5 + w g
sent $00370610; got $00000000 ticks=000000A5 + w g
sent $00424011; got $00000000 ticks=000000A5 + w g
sent $00470610; got $00000000 ticks=000000A5 + w g
sent $0033B0FF; got $00000000 ticks=000000A4 + w g
sent $0043B0FF; got $00000000 ticks=000000A5 + w g
sent $0063B0FF; got $00000000 ticks=000000A5 + w g
sent $00C3B0FF; got $00000000 ticks=000000A5 + w g
sent $00D3B0FF; got $00000000 ticks=000000A4 + w g
sent $00E3B0FF; got $00000000 ticks=000000A5 + w g
sent $0023A07F; got $00000000 ticks=000000A5 + w g
sent $0023907F; got $00000000 ticks=000000A5 + w g
sent $0033A07F; got $00000000 ticks=000000A5 + w g
sent $0033907F; got $00000000 ticks=000000A4 + w g
sent $0043A07F; got $00000000 ticks=000000A5 + w g
sent $0043907F; got $00000000 ticks=000000A5 + w g
sent $00C3A07F; got $00000000 ticks=000000A5 + w g
sent $00C3907F; got $00000000 ticks=000000A4 + w g
sent $00D3A07F; got $00000000 ticks=000000A5 + w g
sent $00D3907F; got $00000000 ticks=000000A5 + w g
sent $00E3A07F; got $00000000 ticks=000000A5 + w g
sent $00E3907F; got $00000000 ticks=000000A5 + w g
sent $000F0000; got $10EC0662 ticks=000000A4 + w g
sent $000F0001; got $10EC0662 ticks=000000A5 + w g
sent $000F0002; got $10EC0662 ticks=000000A5 + w g
sent $000F0003; got $10EC0662 ticks=000000A5 + w g
sent $000F0004; got $10EC0662 ticks=000000A4 + w g
sent $000F0005; got $10EC0662 ticks=000000A5 + w g
sent $000F0006; got $10EC0662 ticks=000000A5 + w g
sent $000F0007; got $10EC0662 ticks=000000A5 + w g
sent $001F7700; got $00000000 ticks=000000A4 + w g
sent $001F7700; got $00000000 ticks=000000A5 + w g
sent $000F0000; got $10EC0662 ticks=000000A5 + w g
sent $000F0001; got $10EC0662 ticks=000000A5 + w g
sent $000F0002; got $10EC0662 ticks=000000A5 + w g
sent $000F0003; got $10EC0662 ticks=000000A4 + w g
sent $000F0004; got $10EC0662 ticks=000000A5 + w g
sent $000F0005; got $10EC0662 ticks=000000A5 + w g
sent $000F0006; got $10EC0662 ticks=000000A5 + w g
sent $000F0007; got $10EC0662 ticks=000000A4 + w g
sent $100F0004; got $15D70380 ticks=00000414 + w!
sent $200F0004; got $15D70380 ticks=00000414 + w!

There are four differences in version 9.1 HDAICGOT.WRI:
(second) sent $01B3B07F; got $00000000 ticks=000000A5 + w g
sent $0033A07F; got $00000000 ticks=000000A5 + !g
last two lines are:
sent $100F0004; got $15D70377 ticks=00000414 + w!
sent $200F0004; got $15D70377 ticks=00000414 + w!
(instead of two times "got $15D70380"!).

What means "+ w/w!/g/!g"?

HDACFG.INI was unchanged since last report:
[ALLHDA]
$00A2=$43831002

[HDA]
TSR=TSR Found
PCI_VID=$1002
PCI_DID=$4383

[BUSMASTER]
myPCIHI=$0011
myPCILO=$0000
myPCImem=$00110000
myPCIaddr=$00100000
aPCIHI=$0020
aPCILO=$0000
aPCIaddr=$00200000

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

I tested several OutputWidget-values and also PCIaddr $FBFF4000.

WAV-files gave movement in SoundRec, so they are playing. No sound yet, no crackling. Starting with a 16-bit 48000 file gave not always playing with movement, but after first playing a 16-bit 44100 file there was always movement. kiss

Finally I did some tests with AHDA17E, but the only node/widgets-output is still the boring "10EC0662" huh
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #64 on: Oct 26th, 2017, 3:18pm »
Quote

Deomsh, I fear that I've run out of handy HDA chipsets that do not work with my driver. sad
If we are to continue, testing may require a bit more of you.

Untill I have an ATI HDA compatible chipset, SB600 testing will be rather unhandy for me.
Unless someone can pinpoint exactly what needs done for your motherboard, it may be a while before I figure out a solution.

Do you percieve some forthright forthcoming solution?
Are you soundly decided to continue?
User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #65 on: Oct 26th, 2017, 4:35pm »
Quote

I'd like to go on. cool

Today I tested version 9.4. Except for the SleepingWidget things didn't changed compared to version 9.2. Do you need HDAICIN.TXT?

I tested various values for SleepingWidget, no luck sad

In my Windows 10 program "High Definition Audio Utility" gives for "Parameter Power States" Verb 0x000F000F with Response 0X0000000F which means supported powers states D0, D1, D2 and D3. Same as ALC662 datasheet, although my chipsets response code looks different to me.
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #66 on: Oct 26th, 2017, 8:31pm »
Quote

+ indicates that the CODEC was not busy. ($68=0)
After this the command is written to $60 and the driver sets $68 to $0001;

! indicates that when $68 was read it was equal to $0000
w indicates that when $68 was read it was equal to $0001

G indicates that the CODEC set $68 to $0002;


Have you tried to compile any of the open source DOS HDA players that you have found?

Although I'm not very good with C or C++, I did try to compile a few.
I found that none of the DOS players would compile from within windows 3.1
I used Win98 , Open Watcom, and NASM to compile JUD.

Perhaps you may have better luck from Windows 10.

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

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #67 on: Oct 26th, 2017, 9:01pm »
Quote

Years ago, I was told that I should create a High Definition Audio driver. rolleyes
After that I was given several HDA computers.
However, before I was able to create my HDA driver, I had to ask several HDA enthusiasts (and a few experts) about the subject.
Although each had their own viewpoint, everyone I asked was somewhat helpful.
If you want to know about the exact details of your hardware, you may have to ask.

I asked Asus for advice on my Asus motherboard and I asked Dell about my Dell machines.
Many thanks to everyone for their help and advice.

Since you own an ASROCK motherboard, ASROCK may have some rock solid advice to give.

I seem to remember AMD giving very helpful advice.
Do you think that they might further explain your motherboards HDA operations?

If the programmers of the DOS HDA players have time, they might gladly give their advice.
The least you could do is thank them for their works.


Although I enjoy programming in pascal, I don't know much about HDA.
Deomsh, have you talked with any one other than me about the subject?
« Last Edit: Oct 26th, 2017, 9:09pm by watler » User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #68 on: Oct 28th, 2017, 06:15am »
Quote

Thank you very much for all your efforts.

Basically I am on my own now. I am thinking about a efficient strategie to move on.

Am I right that I can use Delphi 1.0 to work with your HDA-driver?
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #69 on: Oct 28th, 2017, 2:08pm »
Quote

Deomsh, you have given up on me now? cry

There are many things I could still try.
http://turkeys4me.byethost4.com/programs/HDADRV95.zip

If you must gain a greater individuality, I would think it more toward expansion than isolation.
There are many people to talk with about the subjects involved.

I'm still here and learning about High Definition Audio.
However, I don't know much about your motherboard's HDA.

Asking some one who already knows the answer might be the fastest solution.
Experimenting with your motherboard might produce results more quickly than my guesswork.

You should have expected me to talk about programming. grin
Yes, the HDADRV source code will compile with 16-bit Delphi. (1.x)

Your problem is at the initialization/communication level.
The bulk of the HDA spec is only relevant after that step.

The PCI device has been detected.
The PCI IO/BAR seems to be working.
The Immediate Command ports do not respond as mine . ($60,$64,$68)
User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #70 on: Oct 28th, 2017, 3:30pm »
Quote

Watler, of cause I have'nt give you up. But my programming skills are on very low level, so I feel I have to study a bit to ask the right questions later (and have an understanding of the answers. rolleyes
I ordered an audio front level device for testing the possibility my motherboard gives only front output with your driver, also I ordered a book about Programming in Turbo Pascal and Delphi 1.0, with these programs on the CD that accompanies the book.
In the mean time I am VERY happy with a new opportunity to test version 9.5. laugh
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #71 on: Oct 28th, 2017, 6:37pm »
Quote

A survivalist shoot first ask questions later type approach?
Sort of a Rambo type programmer? shocked

Delphi is the only compiler that will comple the HDADRV project without adjustments.

However, you need not purchase anything unless you wish.
I could create a plugin system, some realtime hooks, or a new TSR interface to make use of other compilers.

Turbo pascal, Borland Pascal, Turbo Pascal for Windows, and Delphi are all somewhat code compatible.
A few older versions of Pascal are available at no cost.
You should be able to find Turbo Pascal 3 and Turbo Pascal 5.5 free (for personal/educational use).

Although it is a bit different, 16-bit POW! Oberon 2 is free and runs under 386 Enhanced mode.

Although Open Watcom is a DOS compiler system, it is free and it can compile DOS,Win16,win32s, and Linux code .
It has an IDE that will try to compile using the virtual DOS boxes of Enhanced mode.

Regular DOS applications can be used to support windows drivers.
You could try to compile JUDAS with Open Watcom and NASM. (bat files in JUD)


When you have time please list your HDA GCAP value.
« Last Edit: Oct 28th, 2017, 6:38pm by watler » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #72 on: Oct 29th, 2017, 3:16pm »
Quote

I adjusted the resolution and range of IC inquiry.
http://turkeys4me.byethost4.com/programs/HDADRV96.zip
Let me know if any missing ichcfg.ini data is filled in.

User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #73 on: Oct 29th, 2017, 6:37pm »
Quote

Thanks for the new version, I will try to test tomorrow.

Today I tested version 9.5. Same as usual.

These values are new in HDACFG.INI:
GCAP=$4401
VMIN=$00
VMAJ=$01

GCTL-value changed from $00000001 to
GCTL=$0001

I have also some good news for your database (If yo like to have one) wink. I installed Windows 3.1 on a USB stick to test your driver on my wife's computer, although I only succeeded to start Windows in standard mode (has nothing to do with your driver). With help form HDARUN.EXE I could play some WAV-files with sound coming from the speakers connected to the back panel. laugh
The motherboard in question is an Asus P541GT-M LE with Realtek codec ALC887 (Intel® G41 / ICH7). Maybe this is nothing new, but my MS-DOS 7.10 based setup is working with your driver. tongue
« Last Edit: Oct 29th, 2017, 6:41pm by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #74 on: Oct 30th, 2017, 11:32am »
Quote

Congratulations, to you and your wife.
You truly are pioneers in the field.

The HDAcfg.ini from the Asus P541GT-M LE would be interesting to see.
You are also welcome to list other HDA computers that do not produce sound.

Your wife must have good taste in hardware.

On my Dell E510(ICH7) there is an interrupt conflict between BIOS controlled usb devices.
You must move the USB mouse after each USB key press or the system will lock up.
You have to use a windows 3.1 USB mouse driver to get around that problem.

A few computers can only use enhanced mode from local storage(SATA/PATA/SCSI) for similar reasons.

Although the himem from windows 98 works well for standard mode, often you must use other versions.
Machines with more than 1gb of RAM may require himemx for Enhanced Mode:
device=himemx /noabove16 /max=1000000

The himem included with windows 3.1 works on a few machines and can be used with setxmsto.
« Last Edit: Oct 30th, 2017, 11:40am by watler » User IP Logged

Pages: 1 ... 3 4 5 6 7  ...  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