Jump to content

All Activity

This stream auto-updates

  1. Past hour
  2. Hi @Drew Hoffman , didn't expect you in this thread.... I am aware of your project (I am reading MSFN daily). So far I had no time to test your driver, but your project looks promising, at least in case of Windows 98. About your question: difficult to say. If you search in this thread for IDT, it seems there is one report, working with some quasi-universal version of HDAICOUT.HDA. But that's a while ago... I also 'did' one VIA codec (VT1708B) in this thread, additional verbs where needed in that case. But at home I did VT1705 on Asrock N68C-S UCC without. Somehow Realtek codecs have the 'easiest' architecture, I 'did' a few. ALC66x-ALC88x and ALC1220 have roughly the same nodes and same output pin's Apart from extra's in ALC88x. ALC231/ALC260 are already different. This is in my notes (ment for personal use): The lines in my quasi-universal version of HDAICOUT.HDA focus on a few nodes/ widgets for power up, open the playback path and to set the DAC and volume to default values. Because there are about max 200 verbs free for sending at once, and because in my approach HDAICOUT.HDA is used sent same verb to all nodes/ widgets, type of verbs is limited. As such this quasi-universal approach is fully 'blind', no intelligence at all (hopefully some in the maker). All based on Intel's High Definition Audio Specification, NOT on specific Realtek codecs. In most of my versions of HDAICOUT.HDA I have concentrated on output's, but I had plans to make a new version to 'open' input-ampifiers too (mixers). But furthermore ignoring Connection Select will be the price to pay. So maybe you can play with '35xxx', '36xxx' or L+R combined: '37xxx', just an idea. From my notes: Set Amplifier Gain 3 Payload(s) Set Amplifier Gain 3 5 0 8 0 Mute Input Channel 0 R Set Amplifier Gain 3 5 0 0 0 UnMute Input Channel 0 R Set Amplifier Gain 3 5 0 7 F Max Input Volume Channel 0 R Set Amplifier Gain 3 6 0 8 0 Mute Input Channel 0 L Set Amplifier Gain 3 6 0 0 0 UnMute Input Channel 0 L Set Amplifier Gain 3 6 0 7 F Max Input Volume Channel 0 L Set Amplifier Gain 3 7 0 8 0 Mute Input Channel 0 R+L Set Amplifier Gain 3 7 0 0 0 UnMute Input Channel 0 R+L Set Amplifier Gain 3 7 0 7 F Max Input Volume Channel 0 R+L Set Amplifier Gain 3 7 1 7 F Max Input Volume Channel 1 R+L But in case of EAPD, Unsollicited Response and GPIO, things are different and often model-specific (laptops). In that case more information is needed. I only did a few codecs/ chipsets, always on a n=1 basis, with help of study of Linux (ALSA)-sources to find appropiate verbs. However you have a parser, should make things more easy (Watler delivers a seperate parser too in version L, but his driver does not use a parser as such). I am willing to help, but I am not a programmer, just an ordinary Joe with more spare time because I am not interested in sports (no offence to readers of this thread ment of course).
  3. So maybe a driver that only does Adlib emulation would be better to create? It's just that SBEMUL is a SYS driver not a VxD (and i think it has to be, because it's acting as a kernel streaming filter driver) but it's using the ASM interface to VMM to install the IO handlers. The alpha of VDMSound does the same port-trapping but for its own SB16 and Adlib emulation and all written as a VxD. I guess there is no other interface to the VDM on 9x? I don't have much experience or knowledge of x86 assembly.
  4. Today
  5. Is it known yet whether Firefox 115 ESR support will be extended in February 2026? It seems it will end permanently then, because I can't find currently any information about it being extended again. In a sense this is surprising, the W7 and 8.1 market share seems to be fairly stable, and Mozilla previously indicated that they considered the market share high enough to provide 115 ESR with security updates. On the other hand, I hope Firefox 153 ESR will work on W7 and 8.1, so we can continue with updates for at least another year.
  6. Thank you, I think this helps with my question 2). According to your guess, this reform the structure to Opt_Instance_Table struct dw offset sysinittable, 0, CC ; 00 00 C9 00 CC 00 ; This makes sense 0000 + 00CC = 00CC (This is the beginning of SFT) dw offset dosdata:carpos,0, 114DH ; F9 01 C9 00 4D 11 ; This makes sense: 01F9 + 114D = 1346 (This is the begining of DPB) dw 0, 0 ; 00 00 00 00 Opt_Instance_Table ends So, this struct provides two areas for ??? purpose, excluding SFT and DPB.
  7. Sorry to resurrect this again but I think the yt-dlp4vlc script has an error. I think the probe function is incorrect . . . function probe() -- Check if the input is a YouTube link return vlc.access == "http" or vlc.access == "https" and (string.match(vlc.path, "youtube%.com") or string.match(vlc.path, "youtu%.be")) . . . should be . . . function probe() -- Check if the input is a YouTube link return (vlc.access == "http" or vlc.access == "https") and (string.match(vlc.path, "youtube%.com") or string.match(vlc.path, "youtu%.be")) . . . notice the brackets around the first 'or' pair. Bit marginal but without those brackets any http url will return true. Ben.
  8. Today's "underdog prediction" - Michigan will *NOT* win by 25 or more points.
  9. >Instance_Table struct from binary dump I can guess that it is not your code rather some array of structures of far pointer (4 bytes) + value (2 bytes), and pointers point to DOS DATA segment (00C9h)
  10. I did some digging about the Win386 support info data structures inside MS-DOS 7.1 data segment (The segement you can obtain by using INT 21H, AH=52H). I find that there are several fields in these data structures that I cannot understand. Any one here can give me some hint? Below is my reversed Win386 support info codes, with references from RBIL61, Leaked MSDOS 6.0 source code, and Jeff Parson's SPY source code. Two main questions: 1) What are the meanings of two mentioned flag as UDF1, and UDF2 in the Instance_Table struct? Currently, I know that the flag at offset 12B8 are copied along with INDOS, the flag at offset 12B9 are changed in the process of writing CON. I also know that these two flags are changed in the process of the w command of DEBUG (I use Japth's enhanced DEBUG). 2) What is the meaning of the Fifth field in Opt_Instance_Table struct? I have totally no idea about it. Additionally, is there a detailed map for MS-DOS 7.1 data segment somewhere? I cannot find detailed referecnes for this. Below is my revered struct, offsets and binary dumps are in comments All comments are welcome. ; === ; Win386_Info ; This is from memory dump and inferred based on Jeff Parsons SPY:DOS.INC, and MD6S:dostab.asm. ; MD6S(MS-DOS 6 source code leaks) ; === ; @dosdata:EE1 Win386_Info struct db 4, 0 ; 04 00 dd 0, 0, 0 ; 00 00 00 00 ; 00 00 00 00 ; 00 00 00 00 dw offset dosdata:Instance_Table, 0 ; F7 0E C9 00 dw offset dosdata:Opt_Instance_Table, 0 ; 3D 0F C9 00 Win386_Info ends ; === ; Instance_Table ; UDF1 and UDF2 are two undocumented flags, located just before NLS_DATA ; Tail Zeros seem too long. May be other fields. ; NLS_DATA: the data returned by Int 21H, AX=7000H, RBIL61 ; What are the meaning of UDF1 and UDF2? ; === ; @dosdata:EF7 Instance_Table struct dw offset dosdata:contpos,0,2 ; 22 00 C9 00 02 00 dw offset dosdata:bcon,0,4 ; 32 00 C9 00 04 00 dw offset dosdata:carpos,0,106h ; F9 01 C9 00 06 01 dw offset dosdata:charco,0,1 ; 00 03 C9 00 01 00 dw offset dosdata:exec_init_sp,0,34 ; BF 0E C9 00 00 22 dw offset dosdata:umbflag,0,1 ; 89 00 C9 00 01 00 dw offset dosdata:umb_head,0,2 ; 8C 00 C9 00 02 00 dw offset dosdata:EXECA20,0,1 ; 86 00 C9 00 01 00 dw offset dosdata:UDF1,0,1 ; B8 12 C9 00 01 00 dw offset dosdata:UDF2,0,1 ; B9 12 C9 00 01 00 dw 0, 0, 0, 0, 0 Instance_Table ends ; === ; Opt_Instance_Table ; This is all guessed. I cannot find useful references, except Jeff Parsons SPY:DOS.INC ; dosdata:114D is a position of nowhere among a large piece of zero in my memory dump ; === ; @dosdata:F3D Opt_Instance_Table struct dw 0 ; 00 00 dw dosdata ; C9 00 dw offset dosdata:SFT ; CC 00 dw offset dosdata:carpos,0 ; F9 01 C9 00 dw offset ?? ;What's this? ; 4D 11 dw 0, 0 ; 00 00 00 00 Opt_Instance_Table ends ; === ; Win386_DOSVars ; All from MD6S:dostab.asm ; === ; @dosdata:F4D Win386_DOSVars struct db 5, 0 ; Version ; 05 00 dw offset dosdata:SaveDS ; EC 05 dw offset dosdata:SaveBX ; EA 05 dw offset dosdata:Indos ; 21 03 dw offset dosdata:User_id ; 2E 03 dw offset dosdata:CritPatch ; 15 03 dw offset dosdata:UMB_Head ; 8C 00 Win386_DOSVars ends ; @dosdata: F5B db IsWin386 db Enable_Win3x ; This is from RBIL61, Int 2FH, AX=1231H
  11. Another "win" by way of hypothetical bet on the double-digit underdog. I was reluctant to "predict" and just leave the topic on a high note, lol. I am half-tempted to just keep posting "predictions" and two months from now see how well I did, with MSFN as my public witness. Regardless, doesn't matter how "successful" those two months is (or is not), it's really not for me as far as "real money".
  12. I will try these flags today. Thank you for the tip. Regards
  13. Yes, I use the loader of 360 Chrome browser. Works very well with Supermium and Thorium too. Regards
  14. Problem is really strange as for example pangomis'es MSI PRO H610M-B DDR4 (Realtek ALC892/ALC897) with core gen12 has HDA controller as PCI device too. So driver works on core gen8 and core gen12 but does not work on core gen10. But I slightly do not understand why his system did not work on previous versions of driver (if he tested these versions, of course). This one. And SB16 emulation is just bonus in process of finding Registry settings as I paid attention on the string for environment with T6 type and then found variable responsible for switch - that does not export through the Registry key. The fact that SBEMUL sets (null) hook for FM synthesis was the main surprise for me But I don't understand why do you need exactly such thing. You can DISABLE FM synthesis in SBEMUL and enable it anywhere (real hardware or other emulator). P.S. >but couldn't make much sense of the int 20 hooks I did not understand what you are talking about for the first but now I understand. Man, you are in Windows in 386 Enhanced mode These are just VxD calls/jumps. Some disassemblers should understand them (and I wrote few simple tools for decoding them to human readable values).
  15. We are on XP forum. Of course applications working on XP use old DLLs. Are any newer DLLs swappable over libeay32.dll ssleay32.dll by renaming them? Some popular programs included SSL inside them statically and the DLLs were not accessible (ApexDC, Opera 12, FileZilla).
  16. @genieautravail The ungoogled version has the flags #disable-encryption and #disable-machine-id. Enabling them will disable encryption and machine ID creation, allowing you to transfer your profile to another computer. The developer will not transfer them to the regular version, leaving the functionality completely stock. Therefore, for the regular version, use third-party tools to create a portable version.
  17. Thank you for sharing the patch @bearwindows I haven't seen you around for, um, at least a few years now. Anyway, I'm glad that you are still active. You have worked a lot on Windows NT 4 in the past. But did you also stumble over bugs in win32k.sys of Windows 2000 while you were working on your universal VBE driver? I would be interessed if you have any patches for win32k.sys of Windows 2000. But you are right that the bug with the limitation of display modes doesn't seem to exist in Windows 2000. My graphics driver announces about 11,000 display modes and Windows 2000 seems to be able to handle it. Desk.cpl is a bit slow with many modes but there doesn't seem to be a real bug in Windows 2000 regarding the amount of display modes.
  18. Yesterday
  19. If you examine twsfprintpdf.inf you will see the manufacturer's name is given as Intelligent Software Systems Inc and the device ID is "TW SF Print PDF Driver" = PDF, LPTENUM\TWSFPrinter_14062010_300 LPTENUM seems to be an acronym for LPT enumerator. The LPT enumerator is used to obtain identification information from LPT port hardware and calls the printer class installer using this INF file. You can read more about it in this Microsoft article Printer connected to an LPT port. As far as I can tell this is a plug and play hardware driver and not a PDF printer driver, but I cannot understand why they use the word "PDF" in the description. I have never seen a Microsoft PDF printer driver available as a downloadable installer, and only Windows 10/11 have printing to PDF included as a feature.
  20. @deomsh does your universal hdaicout.hda file work for any IDT and VIA HD Audio codecs or only Realtek? I'm looking for hints on what verbs I might be missing for my native WDM HD Audio driver which now works on most Intel chipsets with a Realtek codec but is still silent on IDT and VIA codecs . Unlike the Watler's driver I have a codec node parser if a very basic one taken from a hobbyist OS. https://msfn.org/board/topic/187713-native-wdm-hd-audio-driver-for-windows-98seme/page/1/
  21. I don't have any Intel 10th Gen systems immediately available to test on and there are still similar issues with some AMD chipsets as well both older and newer. Right now I am focused on refactoring to allow support for multiple codecs on a link which is required to support laptop docking stations and HDMI display audio. @SweetLow you did some research on the SBEMUL.SYS driver a year ago and patched it to allow the SB16 over the low DMA channel. Did you decompile the whole thing or just reverse engineer the registry settings? Since it already traps the port for Adlib FM do you think it would be possible to route the command & data port writes to the DOSBox or Nuked OPL emulator? I have tried putting that driver into Ghidra but couldn't make much sense of the int 20 hooks and couldn't load symbols for PortCls and KS in SYM format so I didn't get very far.
  22. Are you sure that your profile is set up to be portable? ie, with either a "loader" or something like "chrome++"?
  23. @ED_Sln Please, as I don't have a GitHub account, can you ask to the developper to remove the code that delete all extensions when you move the portable versions of Chromium and Ungoogled Chromium from one computer to another. It's a horrible feature added by Google... I'm not sure about that but it seems that even some settings are restored by default with the move. Tested with Chromium 146.0.7656.0 and Ungoogled Chromium 144.0.7559.59. Regards
  24. Ok, I paid few more time as caching theme on x86 was slightly unclear for me (as I learnt this theme more from NT point of view - universal drivers for different architectures). But for x86 things are more simple as there is stated that PCI devices always work in cache coherent mode (as PCI-E devices with cleared no-snoop bit) and chipset is responsible for snooping. It means that all memory buffers can have usual WB chache mode and no explicit software cache control needed. But OTOH it is unclear now why my Core gen 10 system does not work - it has HDA Controller as PCI device - exactly as Core gen8.
  25. Only won by 18. So "I win".
  26. Well... That's the latest official 'xidel-0.9.9.20230616.8842.e14a96920e01.openssl.win32.zip' on https://sourceforge.net/projects/videlibri/files/Xidel/Xidel development/. Or 'xidel-0.9.9_2025-02-22-git-3e7e88a62307-openssl-win32.7z' on https://rwijnsma.home.xs4all.nl/files/xidel/personal_builds/, which I compiled myself. On Linux Xidel by default requires OpenSSL to open https urls at all. On Windows the normal win32/win64 binary relies on Microsoft's SChannel SSP (Secure Channel Security Service Provider) to do that. On Windows XP SChannel is limited to TLS 1.1, while practically all websites nowadays use TLS 1.2 and newer. So Benito, Xidel's author, created the openssl-win32 build especially for WinXP users. Xidel supports all OpenSSL versions. If you'd like to know what Xidel can do, I suggest you have a look at StackOverflow here or here. Obviously every piece of software that requires the OpenSSL dlls for internet connectivity can use these.
  27. Last week
  28. Just for fun... I am not a gambler, just kinda finding the "hypothetical bet" a tad fun... I'll publicly post that yeah, Duke is going to win, but "if I were a gambling man", I would put $100 on Boston College (ie, that Duke will NOT win by 27 or more points).
  29. Do note that the OpenSSL-3.x.x DLLs are actually integral parts of every CPython for Windows higher than py3.10 (CPython-3.10.x, by default, uses OpenSSL-1.1.1.x), so they're not necessarily linked to just "YouTube downloaders" ; any other python application/script requiring py3.11+ may use those... libeay32.dll+ssleay32.dll are part of very old/insecure OpenSSL versions, the last branch that used them was the 1.0.2.x one; the 1.1.x.x branches used DLLs named libcrypto-1_1.dll and libssl-1_1.dll; BTW, TLSv1.3 support was first introduced with the OpenSSL-1.1.1.x series; so, your "legacy applications" can only use up to TLSv1.2 when connecting to the web...
  1. Load more activity
×
×
  • Create New...