Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won

  • Donations

  • Country


Everything posted by deomsh

  1. Sorry, lowest Q-number on my computer is Q192425 (I am more 'in' Win98SE ). However I 'found' a higher version of VPOWERD.VXD, maybe you can use it. vpowerd 4.00.1111.zip
  2. @iMic I found something on my computer. According to the INF-files inside this is UPD961018a and will update HSFLOP.PDR, INT13.VXD, IOS.VXD and VFBACKUP.VXD. Archive contains DISKTSD.VXD too. All files are ProductVersion 4.00.1111. All files except DISKTSD.VXD are FileVersion 4.00.1112 (DISKTSD.VXD is FileVersion 4.00.953). BTW: Modification Time of 1112-file versions seems to be adjusted one hour by (stupid!) Windows', because of Modification Date. But Command Prompt seems to give the 'right' time. I hope this the version you are looking for. FLOPUPD.EXE
  3. Sorry, typo indeed, corrected in earlier post. 3GB should be MaxPhysPage=C0000
  4. No correction needed, you are right. I said earlier: each 10000 MaxPhysPage stands for 256MB Window's memory. I prefer memorizable and usable units And 3 x 4 x 10000 is C0000 in hex. One Page = 4KB https://wiki.preterhuman.net/Specifying_Amount_of_RAM_Available_to_Windows_Using_MaxPhysPage BTW 10000h x 4 =
  5. It's strange, but if it is working on your system... But 3GB is still C0000, so better use this value for MaxPhysPage. Maybe you can found *something* in the documentation of RLOEW's memory patch.
  6. If your system is okay with HDATSR.EXE and *some* MaxPhysPage setting, better use these settings together. I vaguely remember RLOEW said *somewhere* that occasionally a high setting of MaxPhysPage is needed with his memory patch. Of course you can stop experimenting at MaxPhysPage=80000, but it would of interest to the community to go as high as possible, so around max C0000 SystemReg=0 disables SCANREG.EXE during Windows' boot. See https://www.mdgx.com/msdos.htm
  7. Thanks for info. About SCANREG/ SCANREGW: if using experimental drivers in my experience it is important to add to MSDOS.SYS the line SystemReg=0 As you can see your new entries are overwritten by the TSR (line 'TSR=TSR Found' in HDACFG.INI !). So next try higher values of MaxPhysPage (WITH HDATSR.EXE active). Best start with MaxPhysPage=40000 and then always 10000 higher (10000=256MB), up to 3 x 40000 = C0000 in hex. Full reboot in between!
  8. Hmm This is a strange result, HDATSR.EXE should not be necessary with the trick described above. Can you please upload HDACFG.INI, so I can take a look what is going on? So your last working version WITH HDATSR.EXE. Thanks for mentioning ERUNT, I will search for this program for my WIN10 installation. I do no special things on WIN10, but I make periodically a sector-to-sector copy of my WIN10-disk (I gave up using bootmanagers - I use just F11, my BIOS key to select disks. If I experiment with WIN98SE, I even pull out the cable of my WIN10-disk). Further: which SCANREG-version was active? The MS-DOS or the Windows version?
  9. Dangerous experiments! Personally I always backup my entire Windows' folder, or at least system files with ERU (a tool included with Win95, I prefer this MS-tool above SCANREG - still available as ERUZIP.EXE). Removing HDATSR.EXE only means that the memory buffer needed by HDA2.DLL is not defined and not protected if Windows is started. In the link I gave you, the procedure for WinME is described. Actual RAM is not important, just the amount 'visible' to Windows, and the location of the buffer. Availaible Windows memory can be limited with MaxPhysPage in SYSTEM.INI, the location of the buffer with PCIHI/ PCILO in HDACFG.INI. In the sparse documentation of HDA2.DLL Watler, who programmed HDA2.DLL, used the phrase 'outside the reach of Windows ', if I remember well. I do not use WinME, the only instance of the procedure to relocate the buffer is described in the thread I linked to. So you can try first following: 1) Comment out HDATSR.EXE in AUTOEXEC.BAT 2) Add to SYSTEM.INI [386Enh] MaxPhysPage=3E6FF (if the entrance already exists with a higher value, change to 3E6FF. 3) Add to HDACFG.INI [BUSMASTER] myPCIHI=$3E82 myPCILO=$0000 myPCI=$3E820000 aPCIHI=$3E81 aPCILO=$0000 aPCI=$3E810000 BTW this will limit Windows' memory to a value just below 1GB. But if this approach is working on your system, I can make calculations for a value around 3GB.
  10. Looks like a memory issue. If you use Win98SE: did you use HDATSR.EXE in AUTOEXEC.BAT? If HDATSR gives no relief, or otherwise, you can mess around with MaxPhysPage in SYSTEM.INI and PCIHI/ PCILO entrances in HDACFG.INI, to give HDA2.DLL a few MB's not available to Windows BTW WITHOUT HDATSR this time. There is an (WinME-related) example in the thread, links below, based on 1GB max Windows' memory. https://msfn.org/board/topic/175104-windows-me-on-thinkpad-r60/?tab=comments#comment-1165076 If HDATSR is of no help, try II. If it's working we can always try to reach you max memory (if I remember well about 3GB with RLoew's patches)
  11. To disable MS-DOS' SCANREG.EXE the right entry in MSDOS.SYS should be SystemReg=0. See https://www.mdgx.com/98-1.htm Disabling auto-SCANDISK after improper shutdown with AutoScan=0 is a bad idea. MS-DOS' SCANDISK is your Best Friend (but like 'best friends' unexpected visits are not always appreciated). @schwups Are you sure you didn't mis-read winfaq? CHKDSK is not used in this case in Win9x. I don't expect because of your German....
  12. You can try FIND.EXE https://en.m.wikibooks.org/wiki/First_steps_towards_system_programming_under_MS-DOS_7/Selected_utilities
  13. Your welcome. If you are experiencing problems with 'choice', don't hesitate asking for help. I About the other Widget-values in HDACFG.INI: 1) you can try SleepingWiget=$01 and commenting out $00170500;Power up! to ;;$00170500;Power up! (or just deleting the whole line). But from earlier HDAICIN.TXT we saw: sent $001F0500; got $00000033 sent $00170500; got $00000000 sent $001F0500; got $00000000 AND sent $010F0500; got $00000033 sent $01070500; got $00000000 sent $010F0500; got $00000000 So Codec_Reset + setting the AFG-widget to full power has NO effect on power state of DAC0 (last '00' is highest power-state, '33' lowest power-state implemented for STAC9205). From the datasheet (p.40) it's not clear to me what 'referenced node' means, in this respect. Watler from 'Watlers World', the programmer of HDA2DLL, didn't include sending 'standard' $00170500. Although it's clearly needed in case of STAC9205. No offence to Watler of course, he did a great job! 2) OutputWidget=$10 is 'Good'. Overruled by Verbs in latest D830-version HDAICOUT.HDA anyway. 3) VolumeWidget=$10: needed for WAVEOUT.EXE, as found earlier. II About $00A70100;AC_VERB_Set_Connection_Select_Control AND $00D70100;AC_VERB_Set_Connection_Select_Control in HDAICOUT.HDA: I do not understand the 'why' of the 'black screen' you described. In earlier HDAICIN.TXT Verb 701 didn't change anything, so why it's needed in HDAICOUT.HDA? BTW relationship Codec <=> External Amplifier is not clear to me, maybe D830 'expects' *some* electrical output from the codec?
  14. Good. Strange about the need of having a jack plugged in during boot in this case. Good to know! Set Verb $00D70720 is the only way I saw with HDA2.DLL in combination with STAC9205. It's not an official way, just my 'hack'. I believe the only difference with the Set Verbs sent by HDA2.DLL as can be seen in HDACFG.INI is Set Verb $00170500;Power up! (apart form settings of $00A and $00D). This codec has only Power saving Verbs (in the playback-mode) for the DAC's and the main Audio Function Group (AFG) node $001. Maybe $00A70100 and $00D70100 can be commented out, Port A and Port D seems to be connected with DAC0 already after Codec_Reset. You can try. This will be the final working version of HDAICOUT.HDA in case of Dell D830 (probably D630 too), with VolumeWidget in HDACFG.INI set to $10 for use with WAVEOUT.EXE. I can't found anything that mutes the speaker after the headphone-jack is inserted (with this driver). It would be of interest what happens with the muted speaker while still in Windows if you change $00D70720 back to $00D70740 (RUN => Notepad HDAICOUT.HDA should work). Probably no difference? Otherwise you will have a choice before starting Windows. Can be easily automated in a batch-file or in AUTOEXEC.BAT with choice, or with menu's in CONFIG.SYS/ AUTOEXEC.BAT. With purpose to copy 'right' HDAICOUT.HDA to %windir% according to chosen speaker-mode.
  15. And if you go back to earlier version of HDAICOUT.HDA below (cleaned version of Saturday at 12:23 AM, but with $00D70720)? No need to edit HDACFG.INI again, widgets can stay on $10. Begin $0017FF00; CODEC RESET $0017FF00; CODEC RESET $00170500;Power up! End Begin $01070500;Power up! $01024011;AC_VERB_SET_Converter_FORMAT_44.1kHz_16-bits $01070610;AC_VERB_SET_CHANNEL_STREAMID_1 $0103907F;AC_VERB_SET_AMP_GAIN_MUTE;max_vol_right $0103A07F;AC_VERB_SET_AMP_GAIN_MUTE;max_vol_left End Begin $00A70100;AC_VERB_Set_Connection_Select_Control $00A70740;AC_VERB_SET_PIN_WIDGET_CONTROL;out_enable End Begin $00D70100;AC_VERB_Set_Connection_Select_Control $00D70720;AC_VERB_SET_PIN_WIDGET_CONTROL;in_enable ;;$00D70740;AC_VERB_SET_PIN_WIDGET_CONTROL;out_enable End If still everything muted, activate line with $00D70740 and comment-out ;;$00D70720 and report. No files needed.
  16. And if you comment out the two first Codec_Reset lines (;;$0017FF00)? If no difference, change $00D70720 back to $00D70740 and report (still with ;;$0017FF00 - two times!). There is no mute option for node $00D, that's why I changed direction to input (70720) to try if that has same result, instead of output as normally (707040)
  17. I ment two semi-colons to be sure ';;' Nevermind, one should work too. No further difference without CODEC_RESET. But headphone was detected on $00A with Verb F09: $FFFFFFFF instead $7FFFFFFF before. I found an electric diagram of Dell D830 (dell_latitude_d830_discrete_256mb_quanta_jm7b__100.pdf). It seems internal MonoOut is unused ($014 is unconnected) Instead LineOut (Port D = 0x00D) is wired to inputs of an External Stereo Amplifier. Headphone on Port A too. But there is some Sense A back-signaling. There are mute-possibilities too, but not directly (as you experienced already). Next is trying a minimal number of Set_Verbs and muting the Speaker. Please set all three Widget-entries in HDACFG.INI to $10 and try if Speaker is muted, while headphones are active. With following HDAICOUT.HDA Begin $0017FF00; CODEC RESET $0017FF00; CODEC RESET $001F0800;Get_Unsol_Resp End Begin $00AF0100;AC_VERB_Get_Connection_Select_Control $00A70100;AC_VERB_Set_Connection_Select_Control $00AF0100;AC_VERB_Get_Connection_Select_Control $00AF0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $00A70740;AC_VERB_SET_PIN_WIDGET_CONTROL;out_enable $00AF0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $00AF0900;Get_Pin_Sense; $00AF0800;Get_Unsol_Resp End Begin $00DF0100;AC_VERB_Get_Connection_Select_Control $00D70100;AC_VERB_Set_Connection_Select_Control $00DF0100;AC_VERB_Get_Connection_Select_Control $00DF0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $00D70720;AC_VERB_SET_PIN_WIDGET_CONTROL;in_enable $00DF0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $00DF0800;Get_Unsol_Resp End BTW This time I will need HDALOG.TXT and HDAICIN.TXT both.
  18. Can you repeat the procedure? This time with headphone jack inserted. Further with the First two Codec_Reset lines commented out (maybe with two semi-colon's?). Good idea to make changes in Safe mode! I only need HDAICIN.TXT this time. After booting try if there is any response from your speaker if you pull out the jack/ insert again while playing an audio-file.
  19. Thanks! According to the response in HDAICIN.TXT to Verbs $00AF0900 and $00DF0900 there was NO headphone jack inserted during that test. Is that true?
  20. You have the real spirit! First I rearranged HDAICOUT.HDA to the signal path of STAC9205, according to the datasheet. Only many GET-Verbs added, to retrieve information. $010=DAC0 $00A=Port A $00D=Port D $014=MonoOut $015=MonoOutMix $024=ExtVolume Copy code below to an empty HDAICOUT.HDA (always backup previous version first) and set VolumeWidget to $10 Begin $0017FF00; CODEC RESET $0017FF00; CODEC RESET $001F000F;AC_PAR_POWER_STATE $001F0500;AC_VERB_GET_POWER_STATE $00170500;Power up! $001F0500;AC_VERB_GET_POWER_STATE End Begin $001F0000;get_gpio_caps $001F1500;get_gpio $001F1600;get_gpio_en $001F1700;get_gpio_dir $001F1800;get_gpio_wake $001F1900;get_gpio_unsol $001F1A00;get_gpio_sticky $001FEE00;get_gpio_invert $001FEF00;get_gpio_drive Begin $010A0000;AC_VERB_GET_Converter_FORMAT $01024011;AC_VERB_SET_Converter_FORMAT_44.1kHz_16-bits $010A0000;AC_VERB_GET_Converter_FORMAT $010B8000;AC_VERB_GET_AMP_GAIN_MUTE;status_output_right $0103907F;AC_VERB_SET_AMP_GAIN_MUTE;max_vol_right $010B8000;AC_VERB_GET_AMP_GAIN_MUTE;status_output_right $010BA000;AC_VERB_GET_AMP_GAIN_MUTE;status_output_left $0103A07F;AC_VERB_SET_AMP_GAIN_MUTE;max_vol_left $010BA000;AC_VERB_GET_AMP_GAIN_MUTE;status_output_left $010F0009;WCap $010F0500;AC_VERB_GET_POWER_STATE $01070500;Power up! $010F0500;AC_VERB_GET_POWER_STATE $010F0600;AC_VERB_GET_CHANNEL_STREAMID $010F0610;AC_VERB_GET_CHANNEL_STREAMID_1 $01070610;AC_VERB_SET_CHANNEL_STREAMID_1 $010F0600;AC_VERB_GET_CHANNEL_STREAMID $010F0610;AC_VERB_GET_CHANNEL_STREAMID_1 End Begin $00AF0009;WCap $00AF000C;PinCap $00AF000E;ConnLen $00AF0200;ConnList $00AF0100;AC_VERB_Get_Connection_Select_Control $00A70100;AC_VERB_Set_Connection_Select_Control $00AF0100;AC_VERB_Get_Connection_Select_Control $00AF0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $00A70740;AC_VERB_SET_PIN_WIDGET_CONTROL;out_enable $00AF0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $00AF0800;UnsolResp $00AF0900;Get_Pin_Sense; $00AF1C00;PinConfig End Begin $00DF0009;WCap $00DF000C;PinCap $00DF000E;ConnLen $00DF0200;ConnList $00DF0100;AC_VERB_Get_Connection_Select_Control $00D70100;AC_VERB_Set_Connection_Select_Control $00DF0100;AC_VERB_Get_Connection_Select_Control $00DF0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $00D70740;AC_VERB_SET_PIN_WIDGET_CONTROL;out_enable $00DF0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $00DF0800;UnsolResp $00DF0900;Get_Pin_Sense; $00DF1C00;PinConfig End Begin $014BA000;AC_VERB_GET_AMP_GAIN_MUTE;status_output_left $0143A07F;AC_VERB_SET_AMP_GAIN_MUTE;max_vol_left $014BA000;AC_VERB_GET_AMP_GAIN_MUTE;status_output_left $014F0009;WCap $014F000C;PinCap $014F0012;OutAmpCap $014F000E;ConnLen $014F0200;ConnLst $014F0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $01470740;AC_VERB_SET_PIN_WIDGET_CONTROL;out_enable $014F0700;AC_VERB_GET_PIN_WIDGET_CONTROL;out_status $014F1C00;PinConfig End Begin $015F0009;WCap $015F000E;ConnLen $015F0200;ConnList End Begin $024F0009;WCap $024F0013;KnobCap $024F000E;ConnLen $024F0200;ConnList $024F0800;UnsolResp $024F0F00;KnobCtl $024FE000;KnobVSR End I will need HDAICIN.TXT and HDALOG.TXT
  21. Strange If you like, I can try to write a more specific HDAICOUT.HDA for your codec. Will be a lengthy excercise, because first the codec have to be read-out with Get-Verbs and output in HDAICIN.TXT, for comparison with the datasheet. Maybe things will become better, likely not. If you are happy with your current results there is no need to go into this heavy stuff, which will need some testing on your side of course. Although you can stop every time you like.
  22. If you want to mute the speaker, you can try by commenting out all entries in HDAICOUT.HDA starting with $014 (with a semicolon before the entry).
  23. Yes, if it's working... But does it work actually in that way. Is the speaker reacting on WAVEOUT.EXE?
  24. Sorry, I forgot VolumeWidget=$14 is the default setting of HDACFG.INI But how can you set only the speaker-volume to zero without losing headphones? Or is there an independent line-out jack? Or otherwise?
  25. I have done some reading in the datasheet of (IDT) STAC9204,05. I'm afraid auto-switching will be not possible with HDA2.DLL, but it seems PortMonoOut (will be SPEAKER) has it's own independent volume (see page 110 of STAC9204,05.PDF - 213 pages!). So you can try VolumeWidget=$14 in HDACFG.INI with WAVEOUT.EXE Of course you will loose volume with WAVEOUT.EXE on your headphone. But - if the headphone still has sound after this change - volume-slider on most players will do the job too as Master volume (Direct Sound enabled!). Or else the physical volume-slider on many headphones.... BTW The Datasheet mentioned this codec can not play 8-bit audio, only 16/20/24-bit. So you will have to stick to 16-bit.

  • Create New...