isolar
MemberContent Type
Profiles
Forums
Events
Everything posted by isolar
-
Native (WDM) HD Audio driver for Windows 98se/Me
isolar replied to Drew Hoffman's topic in Windows 9x/ME
Thanks Drew, more than happy to provide any info that can help. What you suggest is happening seems logical here, i'm not 100% sure how the HDA.SYS driver functions and what verbs it sends on enumeration (could you please advise?), but definitely when I rename HDA.SYS to HDA.BAK then sound stops. Renaming back to HDA.SYS - sound returns again. Deomsh has advised possibly your driver enumerates GPIO pins which I am not touching in the HDAICOUT file.. yet.. but currently investigating. And/Or nosnoop bit set on audio controller.. also under investigation but this is brand new info for me . The main mystery is how HDACfg.ini maps codec $2 instead of $0 (Codec $2 is HDMI audio out.. so Watler's should be doing nothing to get sound possible here). Chipset I am struggling to identify due to the nature of this motherboard (without installing Win8+ that has drivers to identify).. it is a Lenovo S20-30 with Lenovo Edonis 2A1 motherboard, Baytrail-M CPU Intel Celeron N2840 and Valleyview integrated graphics. The audio controller is Intel 8086 0F04. Codec is Realtek HD Audio 10EC 0280. For chipset if you know any hardware identifier progs that work on win98SE and can identify newer chipsets then I will be happy to try. Currently HWInfo32 shows 'unknown' chipset. Wishing you a speedy recovery and hope to hear from you soon! -
Thanks Deomsh, great to be back with you again! I am looking into these options now. 1)I have WPCREdit 1.4 and have located the registers for the HD Audio device 8086 0F04. How can I tell (if it exists) which bit is nosnoop and what to set it to? 2)I have currently sent verbs (via HDAICOUT) to map all of these except GPIO. Suspect number 1.. I will investigate further and let you know findings. 3)Side thought.. what does PCIPATCHB do and how can I tell if I should adjust it? Current verb list is (please advise if ordering of verbs could be wrong?): No double reset or power verbs - I had these in initially but found on reset that the codec sets power states to D0 - this seems to happen when Hoffman's driver is disabled too so not included. $01470C02 - Enable EAPD on Lineout $00C3B000 - Unmute Audio Mixer $0143B000 - Unmute LineOut $00270610 - DAC stream and channel set to stream 1 channel 0 (stream 1 as HDA specs say stream 0 is reserved as unused) $00220011 - DAC stream 48khz 16bit 2 channels $00C70100 - Audio Mixer connected to DAC $01470100 - LineOut connected to Audio Mixer $01470740 - LineOut Output enabled SleepingWidget=$01 (AFG) VolumeWidget=$02 (DAC - DAC at reset has volume set to 0dB so simply unmuting Audio Mixer and LineOut should still produce 0dB?) OutputWidget=$02 (DAC - is this correct?) Thanks hope to hear from you soon!
-
Hi Deomsh! I was on this thread about 5 years ago and you assisted me to get audio working on a Soundmax AD1981HD codec. Since then I have also managed to get audio working on IDT 92HD75B3X5 codec and a Realtek ALC272 codec. I'm currently working on a 10EC 0280 codec which I have had limited success with so far, seemingly by using a mix of Watler's driver and Drew Hoffman's driver he is developing. If there's any info I can provide to assist your database please let me know and I'll be happy to assist. To note: the 10EC 0280 codec using Watler's is having the codec index mapping issue (it is mapped as index $2 which is actually the HDMI audio out, and the codec index should be $0), but with a combination of Hoffman's driver I am able to get sound - but no idea why. If you have any theories here I would be keen to know. Thank you and all the best!
-
Native (WDM) HD Audio driver for Windows 98se/Me
isolar replied to Drew Hoffman's topic in Windows 9x/ME
Hi Drew, With initial help from Deomsh over at the 'Audio driver for Realtek HD Audio' thread, I have been using Watler's driver to get HD Audio working on Windows 98 laptops for a while, and came across one that I had some trouble with. Currently I have managed to get SoundMax AD1981HD working on a HP6710b laptop, IDT 92HD75B3X5 working on a HP 6550b laptop, and Realtek ALC272 working on a Lenovo S10-3 laptop with Watler's. Attempting a Lenovo S20-30 proved difficult as the codec was identified as 10EC 0280 of which I could not locate a datasheet for. I used HDAICIN responses to identify all NID's/CAPS and found the connection path to be the same as ALC 272 (and most other Realtek codecs from the looks of things) with $01 = AFG, $02 = DAC, $0C = Audio Out connected to NID $14, and NID $14 = Line Out. I managed to create a working HDAICOUT.HDA file but no sound. I had stumbled across your driver (great work I can see this being invaluable in the future!) and trialed v16, but sadly no sound to start with. So I re-installed Watler's to try some other options. What I notice is that your driver, although removed from device manager and 're-installed' to Watler's, is maybe still using the registry entries, so when I go to multimedia settings I can see the WDM driver still listed as an option, along with the midi/volume control, however Watler's is selected and installed. The HDA.SYS driver file still exists in windows\system32. The veeeery interesting thing here is that this combination has helped me to get sound working (although buggy) on the S20-30 laptop! I have no idea how or why this works but hoping you could shed some light on it, or I can provide you some more info that may be able to help you with development? I did try to rename HDA.SYS to HDA.BAK and rebooted but got no sound at reboot which indicates to me that although Watler's driver is installed it is still somehow using HDA.SYS in combination with HDA2.DLL to route the sound to the speaker - I am good with verbs but not with codec initialization, CORB, RIRB etc. To note: HDAcfg.ini from Watler's driver shows codec index $2 is active, which is incorrect (this is the HDMI audio out, whereas the 10EC 0280 codec is on index $0) so how I am getting any sound at all is a mystery.. At boot I get a high pitched squeal through the speakers until the initial windows start sound finishes, then I can go to sounds and play the sound samples. DirectX 9C is installed and runs the tests all okay. Happy to assist here with any information I can provide to get you further and help me understand why sound works with this combination, just let me know if anything is required. All the best and I will be following your progress. Cheers! -
Awesome thanks for clarifying the settings from HDAConfig.ini, that makes more sense now. I will try the outputs you recommend. Correct it can all seemingly be routed directly from the DAC to Mono Out ($07). I have had no success with that so far as it seems that one of the outputs may be hardwired to the speakers, being its running in a laptop with no actual line-out port. Just a headphone jack and a mic-in jack for ports which i'm testing too. As it passes through selector widget ($0B) there is an option listed in the notes of the datasheet to redirect the stream to the analog mixer ($0E) - which I have set in HDAICOUT, although the diagram does not show this path, there is just a greyed out arrow coming out of selector widget ($0B) and into sum widget ($0F) which I assume indicates this. I notice the path from DAC splits down to the Analog Mixer ($0E) but passes through amp ($11) and then a mute before hitting the sum widget. At the moment I have Mono Out ($07) set to 'not connected' so might be possible that ($11) - Amp going into Analog Mixer ($0E) is a candidate for Waveout.exe... unless the greyed out arrow on the datasheet is indicating to use ($0F) as the volume control. Lots to try!! Sure thing! Attached here \m/ VDMS.INI
-
This is why you are now the HDA sensei! Ah sorry I meant to control the volume using Waveout.exe - Which widget to set in hdaconfig.ini. Still to test but it should be either $11 (The amplifier between DAC and Analog mixer), or the analog mixer itself $0E according to the 1981HD datasheet. The physical volume buttons on the laptop DID work with Judas but only the mute button works in 9x. I'll have to have a look at the laptop datasheet to see how the volume button is wired to the speakers to see what controls it. Just for clarity in HDAConfig.ini - Sleeping Widget = The DAC? Volume Widget = The Amp connected to DAC OR the Analog mixer? Output Widget = The Amp connected to DAC OR the Analog mixer? There's a version of VDMS called 'Alpha3' and it seems to handle midi - to the point where the games are detecting the port at 0x330 and allowing me to select soundblaster pro, and then playing it. As for whether these are true midi sounds or how good the emulation is I can't say (I'll leave that to the midi critics) but certainly playing with no stutters. There's another item on my 'to test' list which is MUNT for 9x which seems to have had some success over at Vogons - Can handle Roland MT-32 in a 9x dos window apparently?
-
Thanks Deomsh! I went on a journey into binary and hex land and made it out the other side still in 1 piece! The reading on the IHDA specification made a lot more sense this time through. I was able to convert the hex offset bytes from the verbs into bits and then divide the bits according to the specs to see the settings. I was then able to decode the Default Configuration Parameters from my datasheet and tweak as necessary for this laptop. On further investigation regarding the '41' offset = This is indeed disabling the mono output to enable the DAC to send the stream to the analog mixer instead. I am still testing with the volume controls through hdaconfig. I'm down to 2 possibilities to test - either the amp attached to the analog mixer, or the analog mixer itself. Hoping to have some success today with that! I am also testing the jack-sense settings. Further studies: I attempted to run VDMSound for 9x to see if it plays nicely with HDA2.dll (to emulate a soundblaster on A220 I7 D1) and am happy to report it works great! I was able to run quite a few old DOS games in 9x with soundblaster audio (and midi) output through the HDA interface. The games that come with soundcard detectors in the install packages had no issues detecting and setting. I have 2 questions that i'm hoping you can help advise on: 1 - (I highly doubt, but) Would there be a way through the verb setting to tell the HDA controller to report itself as a soundblaster? The verb 'Subsystem ID' bytes 1 to 4 I am interested in. 2 - When I tested Judas according to your procedure it produced sound in DOS mode simply using the HDATSR. At that point I did not have sound working in 9x so Judas was able to interface directly with the HDA controller and produce sound in DOS by itself. Is there a way to determine how Judas was able to play audio, to be able to determine what Address, IRQ, and DMA it is using, and to be able to use that to get audio functioning in DOS mode for games and applications? Cheers! \m/
-
Hello gents! Very happy to report that after following this thread I have sound working in Win98SE on a HP 6710b laptop with Microsoft UAA (8086 27D4) and Soundmax AD1981HD (11D4 1981) on board. This laptop also has an Agere HDA modem attached and strangely the hdacfg.ini is registering this device as the codec.. I assume im not playing through the HDA modem codec as it sounds great! I typed up and rejigged the AD1984 HD HDAICOUT.HDA from DEOMSH's diagram to suit the widgets on the AD1981 but still no sound. I downloaded the HP manufacturer driver for the AD1981 and checked out the WDM inf to find verbs in there specific to this laptops configuration for the codec!! In this case I was trying to set mono out as the mixer by setting '00' after the '701' connection select verb. The inf file showed this set as '03' which worked! - 03 is the DAC I assume? as NID03 is the (only) DAC on this codec along with an S/PDIF on NID02. I found these 3 verbs - Set LineOut, HP and Mono out to the same initial levels (-3 dB) Whilst Lineout and HP used the '3B0' Amplifier gain/mute verb to set this, Mono out was set by '71F' verb - Config Def byte 4 (31:24) to '41'. - Still learning my bits and bytes so I have no idea what 41 means or how to calculate/find it other than the inf, but it works at full blast! Going to add some more to the HDAICOUT tomorrow and test with the volume control app. - To note the laptops volume button did not change levels (yet) but the mute button worked. Thanks very much to Deomsh and all of the testers on here for all of this great info! I will post back with any more updates. Side note: The laptop has an Intel 965GM video chip and is being driven by a patched version of the SVGA driver (1024x768x256) that was for Win3.1 \m/ Cheers!