VOGONS


Reply 60 of 90, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
LSS10999 wrote on 2025-11-17, 03:42:
Consider the partition's bootsector is still intact (I suppose) I may consider testing a bit further, notably: - Will JEMM (pref […]
Show full quote

Consider the partition's bootsector is still intact (I suppose) I may consider testing a bit further, notably:
- Will JEMM (preferably JEMMEX) still work?
- Will protected mode software (e.g. DOS4GW powered) still work (with and without JEMM)?

These are what matters more at the moment. On the other hand, on some other systems, I do notice some DOS4GW programs randomly crash with errors if JEMM was loaded, but perfectly fine if only XMS driver (e.g. XMGR) is used.

Answering my own questions:
- JEMM (JEMMEX) does not work. Same symptom as MS EMM386. This time, the system disk is totally hosed for good (Invalid system disk). Time to start over.
- Protected mode software powered by DOS4GW works without issues when using only XMS driver. I'm using XMGR in this case.

Since UniATA is not working on this system (so no SATA disks be it IDE or AHCI)... so now if I want to keep NT 3.51 usable (despite the ~50min startup time) then I have to give up the idea of using EMM... unless the INT13H handler can be fixed (very unlikely I think)...

Reply 62 of 90, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on 2025-11-18, 21:33:

@LSS10999
This is my debug build for NT4, IDK does it work.
http://sweetlow.orgfree.com/download/nvment4.zip

Your build doesn't appear to make too much a difference in my case. The system still takes quite a while to load.

I think I'm done testing NVMe stuffs for now. At least I know that NT 3.51 and NVME2K v1.0.0.2 does work on my board, though not ideal at the moment.

Will revert the system layout back to using SATA (AHCI) for DOS and legacy stuffs, as at least everything worked as expected. Unless I could figure out why UniATA doesn't work on that board, or there is a better AHCI driver alternative, I won't be trying NT 3.51 there for the time being, for I've already acquired the answers I've been looking for.

PS: The attempts to load EMM has indeed caused considerable damage to the system partition's filesystem. Some important bits of errors that manifest on Win9x DOS can only be fixed by SCANDISK. Linux, on the other hand, is more tolerant. A damaged filesystem like this can be mounted just fine with everything in it accessible, and no apparent errors/corruptions. Even fsck.fat won't report anything, yet it would not work correctly with Win9x DOS.

Reply 63 of 90, by SweetLow

User metadata
Rank Newbie
Rank
Newbie
LSS10999 wrote on 2025-11-19, 14:56:

Your build doesn't appear to make too much a difference in my case. The system still takes quite a while to load.

But did you check ISA HAL? It's pretty simple.

Reply 64 of 90, by Duffman

User metadata
Rank Oldbie
Rank
Oldbie

@LSI10999

Did you have the same slowness on NT4 and 2000?

MB: ASRock B550 Steel Legend
CPU: Ryzen 9 5950X
RAM: Corsair 64GB Kit (4x16GB) DDR4 Veng LPX C18 4000MHz
SSDs: 2x Crucial MX500 1TB SATA + 1x Samsung 980 (non-pro) 1TB NVMe SSD
OSs: Win 11 Pro (NVMe) + WinXP Pro SP3 (SATA)
GPU: RTX2070 (11) GT730 (XP)

Reply 65 of 90, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on 2025-11-19, 19:56:
LSS10999 wrote on 2025-11-19, 14:56:

Your build doesn't appear to make too much a difference in my case. The system still takes quite a while to load.

But did you check ISA HAL? It's pretty simple.

You mean Standard PC? I did try that with official v1.0.0.2 before and it felt even worse.

With MPS Multiprocessor HAL at least I can see the HDD LED blink at a slow frequency when booting, before showing the first dot. With Standard PC HAL it hardly ever blinks, and I stopped testing like after ~20 minutes without it showing the first dot.

Haven't tested your build yet. I'm not sure if it had any changes that might be relevant...

Duffman wrote on 2025-11-20, 00:23:

@LSI10999

Did you have the same slowness on NT4 and 2000?

I haven't tried NT4 or 2000 yet. I don't really have a plan using those OSes nowadays, as WinXP pretty much covered their use cases, with everything already worked there very well.

If only the legacy MDI behavior, namely the ability to minimize MDI childs such as program groups into icons rather than titlebars, can be somehow ported to newer Windows versions at least as a compatibility option. IMO this is one of the main difference between Win3.x and 95/NT4, that made the former kind of irreplaceable. IIRC some "Program Manager" clones did try to imitate that old behavior, but special window-drawing code has to be written to achieve it, so it's not going to be generic.

Reply 66 of 90, by SweetLow

User metadata
Rank Newbie
Rank
Newbie

@LSS10999
>I did try that with official v1.0.0.2
Ok.
>WinXP
WinXP is good for testing too. nvme2k version for 2000 has to work under XP AFAIK.
P.S. Or you tested nvme2k there already with success?

Reply 67 of 90, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on 2025-11-20, 06:26:
@LSS10999 >I did try that with official v1.0.0.2 Ok. >WinXP WinXP is good for testing too. nvme2k version for 2000 has to work u […]
Show full quote

@LSS10999
>I did try that with official v1.0.0.2
Ok.
>WinXP
WinXP is good for testing too. nvme2k version for 2000 has to work under XP AFAIK.
P.S. Or you tested nvme2k there already with success?

I didn't test nvme2k there. I'm using the backported stornvme driver with WinXP. It already works, in a PAE-enabled environment (64GB RAM).

Reply 68 of 90, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on 2025-11-20, 06:26:

WinXP is good for testing too. nvme2k version for 2000 has to work under XP AFAIK.

I can confirm the official v1.0.0.2 works on WXP provided you don't do unbuffered reads of >= 512KB, when I did it failed and and I could not shutdown the system, I had to press reset.

I have an Alpha release that is less bad, WXP no longer locks up, but reads of >= 512KB still have issues, some reads take over a second!

file.php?id=231496

Reply 69 of 90, by SweetLow

User metadata
Rank Newbie
Rank
Newbie
LSS10999 wrote on 2025-11-20, 07:51:

I'm using the backported stornvme driver with WinXP. It already works

Very good, we have the right test environment where only drivers are different.
P.S. Could you get the (text) dump of PCI config space for NVMe controller under stornvme? Read&Write Everything, Aida64, cpu-z or anything else.

Reply 70 of 90, by SweetLow

User metadata
Rank Newbie
Rank
Newbie
red-ray wrote on 2025-11-20, 08:14:

provided you don't do unbuffered reads of >= 512KB

I noted the big slowdown of 512KB requests under Windows 98 SE too (more than 512K DMA requests just do not supported on the system level in Windows 9x) so I restricted request size to 256K for Windows 9x target already :
> 3. MaximumTransferLength is 256K now
But I thought that is the double buffering effect of OS, not the driver (or controller) problem... Have to investigate into this.

Reply 71 of 90, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on 2025-11-20, 08:41:

I noted the big slowdown of 512KB requests under Windows 98 SE too (more than 512K DMA requests just do not supported on the system level in Windows 9x) so I restricted request size to 256K for Windows 9x target already :

As I recall Dominik said me moved some of the initialisation to after the size limits on the NVMe SSD had been read to fix the 512KB lockup. Once he has figured out the timeouts there will be a new driver.

What happens when you run SIV32L V5.84 on W9x and ask it to do a 512KB read? Press [ Test Setup ] to change the read size then press [ Do Xfer ].

Please, from a command window, do SIV32L -DBGSDM > SIV_DBGOUT.log and post the .LOG file. This should tell me if SMARTVSD finds the NVMe drive, I suspect it won't

Reply 72 of 90, by SweetLow

User metadata
Rank Newbie
Rank
Newbie

>I suspect it won't
Of course no. SMARTVSD will work only with *.PDR implementing IOR_IDE_PASS_THROUGH requests processing and only in some cases on unpatched SMARTVSD.VXD & ESDI_506.PDR
JFYI:
https://msfn.org/board/topic/186313-patches-f … ck-21-and-more/
If you want to see ATAPI IDENTIFY working through the OFFICIAL interface...

Reply 73 of 90, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on 2025-11-20, 09:16:

Of course no.

Looking at https://helparchive.huntertur.net/docum ... gisters%2C it says:

IDE Passthrough support was added to accommodate the Vendor-Supplied Driver Smartvsd.vxd (Self-Monitoring Analysis and Reporting Technology) that resides in the IOS layered driver hierarchy.

So if the NVMe9x driver supported IDE Passthrough then SMARTVSD should work. The 1.0.0.2 NVMe2K driver has PATA/SATA SMART, do you plan to make NVMe9x work with SMARTVSD ?

file.php?id=231499

Reply 74 of 90, by SweetLow

User metadata
Rank Newbie
Rank
Newbie
red-ray wrote on 2025-11-20, 13:05:

So if the NVMe9x driver supported IDE Passthrough then SMARTVSD should work.

My friend, they are DIFFERENT Passthroughs 😀 The first as I said is IOR_IDE_PASS_THROUGH request available for .PDR (native for Windows 9x) type of storage drivers only and unavailable for *.MPD without help of additional VSD layer driver. The second is NT specific IOCTLs like IOCTL_IDE_PASS_THROUGH. And the third is SCSI SAT. And the SMARTVSD "knows" about the first only.

Reply 75 of 90, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on 2025-11-20, 13:20:
red-ray wrote on 2025-11-20, 13:05:

So if the NVMe9x driver supported IDE Passthrough then SMARTVSD should work.

My friend, they are DIFFERENT Passthroughs 😀 The first as I said is IOR_IDE_PASS_THROUGH request available for .PDR (native for Windows 9x) type of storage drivers only and unavailable for *.MPD without help of additional VSD layer driver. The second is NT specific IOCTLs like IOCTL_IDE_PASS_THROUGH. And the third is SCSI SAT. And the SMARTVSD "knows" about the first only.

Yes and so what? My reading is that the SMART reporting program does SMART_RCV_DRIVE_DATA + IDE_COMMAND_IDENTIFY/IDE_COMMAND_SMART to SMARTVSD which then does the IOCTL_IDE_PASS_THROUGH to the vendor supplied driver.

I am asking about W9x so why are you telling me what NT does? I know what NT does, SIV has reported RSTe RAID drive SATA SMART data + VROC RAID drive NVMe SMART + SCSI SMART + ... for a very long time. It's all sensible on NT, you just open the GUID_DEVINTERFACE_DISK + GUID_DEVINTERFACE_HIDDEN_DISK drives and do the IOCTLs. SIV even support hot-plug USB drive SMART reporting!

Reply 76 of 90, by SweetLow

User metadata
Rank Newbie
Rank
Newbie

@red-ray
>IOCTL_IDE_PASS_THROUGH
>do the IOCTLs
May be you don't understand well, but NT IOCTL interface does NOT work on Windows 9x. That's why I said "NT specific". So no matter what you know about NT - all you knowlege has zero meaning for Windows 9x. Am I clear enough now? You can use SMARTVSD interface and ASPI32 interface under Windows 9x and that is all available for user mode apps.

Ok, returning to the topic, the large request problem is really solved already (I suppose) by changes in Guard Timer using.
So
http://sweetlow.orgfree.com/download/nvme9x.zip
- returned 2M as MaximumTransferLength
and
http://sweetlow.orgfree.com/download/nvment.zip
NT4 and 2000 builds for test, large requests should be fast now

Reply 77 of 90, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on 2025-11-20, 08:21:
LSS10999 wrote on 2025-11-20, 07:51:

I'm using the backported stornvme driver with WinXP. It already works

Very good, we have the right test environment where only drivers are different.
P.S. Could you get the (text) dump of PCI config space for NVMe controller under stornvme? Read&Write Everything, Aida64, cpu-z or anything else.

I'm afraid I won't be conducting tests for nvme2k on WinXP for the time being. I think nvme2k might be more suited for situations where ACPI might be problematic, per this issue comment. On the other hand, I'm not sure how it performs with PAE-enabled Win2K editions (Advanced and Datacenter Server).

I'm currently working on restoring that system's partition structure back to previous state so I can reinstall the OSes I've been running on it, including WinXP. I may consider taking a look at how to extract PCI config space info from WinXP (with stornvme driver), if possible.

Reply 78 of 90, by SweetLow

User metadata
Rank Newbie
Rank
Newbie
LSS10999 wrote on 2025-11-21, 03:32:

I'm afraid I won't be conducting tests for nvme2k on WinXP for the time being. I think nvme2k might be more suited for situations where ACPI might be problematic, per this issue comment. On the other hand, I'm not sure how it performs with PAE-enabled Win2K editions (Advanced and Datacenter Server).

I'm currently working on restoring that system's partition structure back to previous state so I can reinstall the OSes I've been running on it, including WinXP. I may consider taking a look at how to extract PCI config space info from WinXP (with stornvme driver), if possible.

>nvme2k might be more suited for situations where ACPI might be problematic
nvme2k is just one of many drivers. No more, no less. And its testing is just installing new driver -> tests -> installing old driver. It's PnP.
But no one violates you to do this, of course.
> I may consider taking a look at how to extract PCI config space info from WinXP (with stornvme driver), if possible.
I already gave you the bunch of tools (two from three are free) so "how" is not the problem.

Reply 79 of 90, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
LSS10999 wrote on 2025-11-21, 03:32:

On the other hand, I'm not sure how it performs with PAE-enabled Win2K editions (Advanced and Datacenter Server).

I have not seen any issues when I use NVMe2K on 2000 Advanced Server or 2003 Enterprise Server on my Supermicro X7SBL with 8GB of DDR2-800 memory.

The 1.0.0.2 release has issues with lots of big transfers that the next release should address. Running an alpha NVMe2K driver on my ASUS P5WDG2 WS Pro, 8GB of DDR2-677 memory and 2003 Enterprise Server booted with /3GB all was well with just shy of 1GB of reads outstanding.

file.php?id=231703

I wonder what the oldest/slowest system is that the NVMe2K driver will run on, will it run an i486? I would try it, but my i486 motherboard does not have PCI, it runs OK on my PentiumPro .

file.php?id=231702

The 2nd set of numbers are for a QUANTUM ATLAS V 18 WLS via a n Adaptec AHA-2940UW.