win3x
« High Definition Audio »

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



« Previous Topic | Next Topic »
Pages: 1 ... 7 8 9 10 11  12 Reply Notify Send Topic Print
 veryhotthread  Author  Topic: High Definition Audio  (Read 2666 times)
watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #120 on: Dec 9th, 2017, 3:00pm »
Quote


CD audio is digital audio.
You should be able to fit many times more digital music onto a USB drive.
How is the USB legacy disk support on your amd motherboard?

Although I don't usually have a CD connected to my computers,
I seem to remember some old games and programs that made use of CD audio tracks.
Deomsh, do you have any software that requires the MCI CD?
« Last Edit: Dec 9th, 2017, 3:57pm by watler » User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #121 on: Dec 10th, 2017, 11:00am »
Quote

Sure, if I want to play audio CD's I need a CD-player. And I have many audio CD's.
Musicbox from Windows 3.0 is really nice, only needs MCI-CDAUDIO to send command to the CD-drive with help of the MS-DOS CD-drivers. Seeing the files in MS-DOS or Windows is not possible, but a CD-player shows the tracks. The playing part of the audio CD is a fully analog process, going from the CD-drive through audio cable and analog part of the sound card, in my case the ALC662. rolleyes

Your driver works great for CDAudio with following verbs in HDAICOUT.HDA. I am posting HDAICIN.TXT actually. Other verbs are not necessary. Widget 1B is by default set as input: Line2.

sent $014F0700; got $00000020 ticks=00000000
sent $014707C0; got $00000000 ticks=00000000
sent $014F0700; got $000000C0 ticks=00000000
sent $014B8000; got $00000080 ticks=00000000
sent $0143B07F; got $00000000 ticks=00000000
sent $014B8000; got $00000000 ticks=00000037
sent $00BB0003; got $00000080 ticks=00000000
sent $00B3731F; got $00000000 ticks=00000000
sent $00BB0003; got $0000001F ticks=00000000
sent $00CB0001; got $00000080 ticks=00000000
sent $00C3717F; got $00000000 ticks=00000000
sent $00CB0001; got $00000000 ticks=00000000

The GET-verbs are only to control things of cause, and can be left out. So, with only two extra verbs and after installing MCI-CDAUDIO from Windows Driver-Setup I can play CDaudio.

Audio-CD volume control is now through my headphone, but I can try to control volume by sending verbs with AHDA17l to channel 1 of sum-widget 0C. All WAVE-AUDIO I tested earlier is still working.

Do you have any plans to make recording possible with HDA2.DLL? tongue
« Last Edit: Dec 10th, 2017, 1:32pm by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #122 on: Dec 10th, 2017, 2:34pm »
Quote

Most of my CD drives have a built in headphone jack.

Necessity is the mother of invention.
Thank you for the thorough explanation of CD audio operations.

HDADRV was written in my spare time for fun.
I've had had no need of recording.
For your media on CD, It sounds like what you need is a CD track ripping program.
No sound card is required for that sort of software.


Most music collectors have far too much to fit on common low density media.
Are you saying that you're actually a brick and mortar collector? shocked

Your ingenuity has already bypassed my driver's operations.
Will you try karaoke now?
User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #123 on: Dec 13th, 2017, 5:31pm »
Quote

I am more the 'Click and Mortal' type.

Never thought you would like Karaoke. wink

But your 'suggestion' fired my imagination. With following verbs it should be possible with four channels: one Microphone, one Line-In, CD-audio and WAVE-audio. So, if on your party there is only a 786 & Windows 3.1... cool

HDAICOUT.HDA (GET-verbs only for control):
begin
$014F0700;
$014707C0;REAR_HEADPHONEamp&outputamp_enable
$014F0700;
$014B8000;
$0143B000;REAR_HEADPHONEamp&outputamp_unmute
$014B8000;
$018F0700;
$018B0000;
$01AF0700;
$01AB0000;
$00BB0000;
$00B3701F;MIXER_max_vol_ch0=REAR_Mic1
$00BB0000;
$00BB0002;
$00B3721F;MIXER_max_vol_ch2=REAR_Line1
$00BB0002;
$00BB0003;
$00B3731F;MIXER_max_vol_ch3=Line2_CDAUDIO_(=OUT_on_Internal_connector)
$00BB0003;
$00CB0000;
$00CB0001;
$00C37100;SUMWIDGET_mixer_unmute
$00CB0001;
$002A0000;
$002F0600;
$00270610; DAC1_stream_1
$002F0600;
end

HDALOG.TXT:
$000F0000=$10EC0662
$000F0004=$00000000
$000F0005=$00000000
$000F0000=$10EC0662
$000F0002=$00100101
$000F0004=$00010001
$001F0011=$40000002
$001F2000=$18497662
$001F000F=$0000000F
$001F000A=$000E0160
$001F000B=$00000001
$00224011=$00000000
$00270610=$00000000
$00270500=$00000000
$0023A07F=$00000000
$0023907F=$00000000

HDAICIN.TXT
sent $014F0700; got $00000020 ticks=00000000
sent $014707C0; got $00000000 ticks=00000000
sent $014F0700; got $000000C0 ticks=00000000
sent $014B8000; got $00000080 ticks=00000000
sent $0143B000; got $00000000 ticks=00000000
sent $014B8000; got $00000000 ticks=00000036
sent $018F0700; got $00000020 ticks=00000000
sent $018B0000; got $00000000 ticks=00000000
sent $01AF0700; got $00000020 ticks=00000000
sent $01AB0000; got $00000000 ticks=00000000
sent $00BB0000; got $00000080 ticks=00000000
sent $00B3701F; got $00000000 ticks=00000000
sent $00BB0000; got $0000001F ticks=00000000
sent $00BB0002; got $00000080 ticks=00000000
sent $00B3721F; got $00000000 ticks=00000000
sent $00BB0002; got $0000001F ticks=00000037
sent $00BB0003; got $00000080 ticks=00000000
sent $00B3731F; got $00000000 ticks=00000000
sent $00BB0003; got $0000001F ticks=00000000
sent $00CB0000; got $00000000 ticks=00000000
sent $00CB0001; got $00000080 ticks=00000000
sent $00C37100; got $00000000 ticks=00000000
sent $00CB0001; got $00000000 ticks=00000037
sent $002A0000; got $00000020 ticks=00000000
sent $002F0600; got $00000000 ticks=00000000
sent $00270610; got $00000000 ticks=00000000
sent $002F0600; got $00000010 ticks=00000000

As you can see, Pin-widgets 18 and 1A are by default enabled as inputs. Strange enough Pin-widget 14 too.

Using AHDA17l as a Mixer is not really fast as one can imagine, but setting volume-levels is possible. During listening to Bach's 'Goldberg Variations' and playing with AHDA I learned there is no Master Volume widget, Pin-widget 14 (green-rear and my headphone-output) can only be unmuted, volume cannot be set!

Strange: HDA2.DLL sets Pin-widget 14 as volume widget by default (and must be changed to $02 for WAVE-audio, as mentioned earlier). huh
But with the right settings in HDAICOUT.HDA almost everything is possible. tongue

You have made really great tools! rolleyes
« Last Edit: Dec 14th, 2017, 11:09am by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #124 on: Dec 15th, 2017, 4:23pm »
Quote

Deomsh, you are a true High Definition Audio enthusiast.
I appreciate your help.

Today, I tested a HP slimline V3000. (Realtek 888)
It works with volume widget of $0C.

It may be possible to create applets,modules,plugins or programs for custom HDA configurations.
Are you interested in creating custom win3x HDA tools?

User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #125 on: Dec 17th, 2017, 07:14am »
Quote

Sounds like an interesting project. As far is I can do I will help, with my highly resistant chipset or otherwise.

I took a look at the blockdiagram of the Realtek ALC888 manual, widget 0C is the right one for playback volume. ALC888 has much more possibilties to redirect signals compared with ALC662. undecided
« Last Edit: Dec 17th, 2017, 07:14am by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #126 on: Dec 17th, 2017, 2:01pm »
Quote

Does your computer yet resist?
I've found several computers that will not play.

One friend's apple computer will run DOS but not Win3x.

I was given a Thinkpad T43 that will not play sound for any operating system and will not run win3x in standard or enhanced mode.

My cousin has a Compaq Presario V2000 (Win XP) that will not boot DOS from USB.

He also has a Dell 3520 that looks like it could work.
(Dell 3520)
[HDA_1E208086,05551028]
PCI_BUS=$00
PCI_DEVICE=$1B
PCI_FUNCTION=$0
GCTL=00000001
CODEC BITMAP=00001001
CODEC_VID=$1013
CODEC_DID=$4213
CODEC_REV=$100100
CODEC_NODEINFO=$010001
VolumeWidget=$14
OutputWidget=$02
Although Soundrec play position moves, no music is yet audible. lipsrsealed


« Last Edit: Dec 17th, 2017, 2:05pm by watler » User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #127 on: Dec 18th, 2017, 3:47pm »
Quote

I think you have already broken my chipset's resistance, my only problem left with your driver my dos-prompt most of the time doesn't work.

Just for fun I took a fast look on your Dell 3520. Based on this source: https://askubuntu.com/questions/874756/alsa-and-realtek-alc3246-on-ubuntu-16-04 maybe there is a bios-setting that can cure your problem.

Or otherwise, based on this source: http://140.136.149.249/lxr/source/the-tree/sound/pci/hda/patch_realtek.c (.c is part of the web address!) I imagine following verbs for Headphone-playback, as a first start.

HDACFG.INI:
Volumewidget=$02

HDAICOUT.HDA (parameter verbs only for information and changes):
begin
$015F0700;
$015707C0;
$015F0700;
$015B8000;
$0153B000;
$015B8000;
$00CB0000;
$00C37000;
$00CB0000;
$002A0000;
$002F0600;
$00270610;
$002F0600;
end

Good luck!
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #128 on: Dec 18th, 2017, 5:05pm »
Quote

Thank you for your advice, deomsh.
I will try my cousin's laptop when he lets me.

DOS-prompt often doesn't work?

Which windows mode did you start? (Standard/Enhanced)
What video driver are you using? (MCGA,SVGA,VGA,etc...)

Do DOS-boxes work when my driver is not installed?

User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #129 on: Dec 19th, 2017, 5:13pm »
Quote

I use Windows 3.1 in Enhanced mode, with ordinary VGA-driver.

Without your driver DOS-boxes are fine. Only with HDA2.DLL installed, nine out of ten times Windows completely crashes, without any message. Even ctrl+alt+del is not working anymore. So I have used my reset-button many times lately. sad
Sometimes a DOS-box works, but after "Exit" NEVER a second time - always a complete crash in that case.

I tried many SYSTEM.INI [386Enh] settings related to VM's, but without any succes. huh
« Last Edit: Dec 22nd, 2017, 6:25pm by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #130 on: Dec 20th, 2017, 3:25pm »
Quote

Since DOS boxes are "Virtual Machines" perhaps they require "Virtual Memory".
Have you tested the driver with Virtual Memory(swap file) enabled?

What DOS applications do you require from within windows?

User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #131 on: Dec 22nd, 2017, 11:23am »
Quote

Deomsh, after I appended your verb list to hdaicout.hda , my cousin's Dell inspiron 3520 works.
The Onboard speakers are nice and loud.

I fear I've run out of new HDA devices to test.

Were you able to get your Virtual Machines working?
User IP Logged

deomsh
Moderator
ImageImageImageImageImage


member is offline

Avatar




PM


Posts: 109
xx Re: High Definition Audio
« Reply #132 on: Dec 22nd, 2017, 6:24pm »
Quote

That's good to hear. After reading the ALSA document I guessed the Dell 3520 codec was a sort of ALC269-clone (but without loopback from the input-mixer). Only widget 15 is the Headphone-output, so maybe Dell decided otherwise. ALC269 datasheet is on the internet. cheesy
If the Dell has Windows 7 or higher onboard, you can try Windows High Definition Audio Utility to gather more information about the codec on the Dell-machine. rolleyes

I have found a nice workaround in case of the "DOS-prompt and DOS Boxes starting-problem". Actually I only need the command prompt inside Windows when an installation program wants to run a batchfile. It appears that when I start Windows 3.1 in standard mode, DOS-prompt starts and batchfiles are running without problems. Sound is okay before, but after usage of a DOS-prompt, or running a batch-file its impossible playing a WAV-file again. cry Unless one restarts Windows (possible without using the reset-button). cool

Only CDAudio is unaffected. So when you want to listen to your favourite music during DOS-sessions, maybe this old technology isn't to bad. kiss

Are your DOS Boxes working in Windows Enhanced mode?
« Last Edit: Dec 22nd, 2017, 6:30pm by deomsh » User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #133 on: Dec 22nd, 2017, 7:52pm »
Quote

My Enhanced-Mode Virtual Machines are working just fine.
However, I had noticed that when Enhanced Mode has no "Virtual Memory", "Virtual Machines" may have some issues. rolleyes
Have you adjusted the size of your Virtual Memory? (Control Panel -> 386 Enhanced)


Are you using the Loop or Timer method under Standard Mode?

Do you use any Win16 multimedia applications or games that require DOS-boxes? wink
User IP Logged

watler
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 164
xx Re: High Definition Audio
« Reply #134 on: Dec 23rd, 2017, 11:52am »
Quote

I have adjusted hdadrv to better suit your needs.
http://turkeys4me.byethost4.com/files/HDADRV9I.zip

This version should allow the HDA device to continue playing after Standard Mode has run a DOS program.

If you wish to use Virtual Machines with Virtual Memory disabled, change this hdacfg.ini setting:
mytimer=0
And then, press the activation program's "loop" button.

« Last Edit: Dec 23rd, 2017, 11:53am by watler » User IP Logged

Pages: 1 ... 7 8 9 10 11  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