VOGONS


Reply 40 of 45, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
red-ray wrote on Yesterday, 12:31:

when I boot NT 3.51 SP5

LSS10999 wrote on Yesterday, 15:46:

Is your NT 3.51 Workstation instance on Service Pack 5, or is it RTM or maybe a different service pack level? I wonder if there were any official NT 3.51 kernel binary that actually worked with more than 8 CPUs (cores). That is, with RegisteredProcessors set to higher than 8 and a CPU with more than 8 actual cores.

As I specified SP5. My NT 3.51 Workstation is from the official MSDN CDs and RegisteredProcessors is always 32 even before I install SP5

As to if > 8 will ever work I have no real idea, back then were there any systems that supported NT 3.51 with > 8 CPUs? I doubt it.

I don't have a system with > 4 CPUs that I could sensibly install NT 3.51 on. My DL580 Gen8 has 120 CPUs/60 Cores, but there is no way it's going to run NT 3.51 as there is no RAID disk driver and AFAIK it can't boot NVMe drives, same for my 24 core DL560 G5.

Reply 41 of 45, by Gelip

User metadata
Rank Newbie
Rank
Newbie

I tested HAL MPS in WinNT 4.0 SP6 on Haswell and no PCI or PCIe device works.

I tested standard HAL (HAL.DLL) on several machines - Haswell, Coffee Lake, Sandy Bridge, Core2Duo and it works fine on all of them, so why use another MPS HAL?
What are the benefits of using HAL MPS?
Are there any WinNT applications that can take advantage of multiple cores???

Reply 42 of 45, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
red-ray wrote on Yesterday, 16:00:
As I specified SP5. My NT 3.51 Workstation is from the official MSDN CDs and RegisteredProcessors is always 32 even before I ins […]
Show full quote
red-ray wrote on Yesterday, 12:31:

when I boot NT 3.51 SP5

LSS10999 wrote on Yesterday, 15:46:

Is your NT 3.51 Workstation instance on Service Pack 5, or is it RTM or maybe a different service pack level? I wonder if there were any official NT 3.51 kernel binary that actually worked with more than 8 CPUs (cores). That is, with RegisteredProcessors set to higher than 8 and a CPU with more than 8 actual cores.

As I specified SP5. My NT 3.51 Workstation is from the official MSDN CDs and RegisteredProcessors is always 32 even before I install SP5

As to if > 8 will ever work I have no real idea, back then were there any systems that supported NT 3.51 with > 8 CPUs? I doubt it.

I don't have a system with > 4 CPUs that I could sensibly install NT 3.51 on. My DL580 Gen8 has 120 CPUs/60 Cores, but there is no way it's going to run NT 3.51 as there is no RAID disk driver and AFAIK it can't boot NVMe drives, same for my 24 core DL560 G5.

Well... never mind, as even 4 cores are well enough for NT 3.51 use cases.

My main issue at the moment is to look for the reason why it takes this long (>50 min) to boot NT 3.51 with NVME2K.

Reply 43 of 45, by red-ray

User metadata
Rank Oldbie
Rank
Oldbie
Gelip wrote on Yesterday, 16:09:

I tested HAL MPS in WinNT 4.0 SP6 on Haswell and no PCI or PCIe device works.

My Dual Intel Pentium II Overdrive (Deschutes) @ 333MHz system has used the HAL MPS 1.4 - APIC platform ever since 2000-01-14 and everything works.

Maybe your MPS table has issues, what's in it?
Have you tried both MPS 1.1 and MPS 1.4?

file.php?view&id=231173

Reply 44 of 45, by SweetLow

User metadata
Rank Newbie
Rank
Newbie
LSS10999 wrote on Yesterday, 16:17:

My main issue at the moment is to look for the reason why it takes this long (>50 min) to boot NT 3.51 with NVME2K.

You probably has unworked IRQ. In such situation it takes 1 second for each I/O request (on firing Fallback Timer).

Reply 45 of 45, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
SweetLow wrote on Yesterday, 18:02:
LSS10999 wrote on Yesterday, 16:17:

My main issue at the moment is to look for the reason why it takes this long (>50 min) to boot NT 3.51 with NVME2K.

You probably has unworked IRQ. In such situation it takes 1 second for each I/O request (on firing Fallback Timer).

I wonder if PCICFG is good enough for checking info about the system's IRQ info? If so, what should I pay attention to about the NVMe devices, that may be the cause of the issue?

Also, when I tested Win98SE installed on NVMe disk, even after applying all necessary patches (rloew's as well as PATCH9X), as well as copying all additional disk drivers, the startup process would hang at a relatively early phase (boot animations stopped), likely before any disk drivers are involved. It's still first boot after finishing the initial installation and nothing have been configured yet. I wonder if this hang is also due to IRQ problem? Not sure if it will eventually proceed after waiting long enough (like hours)...

A side topic: This board (ASRock X99M Killer/3.1) is my first test board for dISAppointment v0.2. Using its TPM port and with its LDRQ1# brought out using a wire, the LPC-ISA adapter works as expected after configuring the decoding ranges. It currently has a Sound Blaster 16 PnP (CT2950) installed, and is fully operational once it has been initialized, preferably with UNISOUND. Of several boards I experimented, this is the only board that can use ISA PnP cards (whereas other boards can only use non-PnP ones). ISA PnP probably works with other ASRock boards as well.

The board's UEFI BIOS offers very few options regarding IRQ. To free IRQ7 for the CT2950 I had to primarily disable the onboard audio, which wants that IRQ most. Later on I discovered I have to additionally disable onboard Intel LAN as that will also take IRQ7 if the board's serial port (which is on 3F8h/IRQ4) is enabled. The board has an additional network adapter (Atheros Killer E2200) which happened to have wider OS support, such as usable Packet and NDIS2 drivers, and it does not take an additional IRQ. IRQ5, on the other hand, is hopeless to free as it's wanted by pretty much everyone as far as I've tested.

I checked the system's PIRQ registers (00:1f.0, registers 60h and 68h) and right now only 3, 5, 10, 11 are taken by first four PIRQs with current setup. The other 4 PIRQs are inactive, including one exclusively for the onboard audio, and one exclusively for the Intel LAN.

My boot process is like, booting to DOS, just set up the LPC-ISA bridge and initialize the card with UNISOUND, then run GRUB4DOS to launch the NTLDR meant for NT 3.51. This process works, and CT2950 will work with NT 3.51's default SNDBLST driver (which is non-PnP) if already configured via UNISOUND. However, on this board, NT 3.51 seems to suggest IRQ7 is also being taken by something, but it allowed me to use IRQ2, so I adjusted UNISOUND to configure the sound card as such. After installing the driver, reboot, and wait long enough, I get to hear "Tada" after logging in. The sound card is working great!

And here's the question... Could it be NT 3.51's MPS HAL (APIC) is somehow configuring the IRQs differently? AFAICT IRQ7 should have been available under this circumstance, as back then the card did work correctly (including in Creative's DIAGNOSE) when I configured it to use IRQ7 while in DOS, Win3.x and 9x (even WinXP). The OSes were previously installed on SATA disks back then, yet I was not able to get UniATA to work with NT 3.51, so I had no idea of how NT 3.51's HAL works on this system until now.

And back to the IRQ fallback timer question... I wonder if this is tweakable in case of IRQ-broken environments like this, to hopefully improve performance and reduce startup delay, while avoiding breakage if possible...