VOGONS


Reply 40 of 56, by UCyborg

User metadata
Rank Oldbie
Rank
Oldbie

That is correct. Couple of years ago, I published the patch addressing this and some other issues. Though the workarounds for other memory bugs are a bit silly, I just added parameter to initialize allocated memory to zero in couple of places as I didn't find the real cause, it must have reduced the probability of other crashes somewhat. Presumably accesses are happening outside of allocated memory regions.

Arthur Schopenhauer wrote:

A man can be himself only so long as he is alone; and if he does not love solitude, he will not love freedom; for it is only when he is alone that he is really free.

Reply 41 of 56, by willow

User metadata
Rank Member
Rank
Member
BEEN_Nath_58 wrote on 2025-04-15, 09:11:
To be honest I don't know. It just passed my testing and other than that, we never had conversations of it. The DLL was the hard […]
Show full quote
willow wrote on 2025-04-15, 09:01:
BEEN_Nath_58 wrote on 2025-04-14, 21:46:
You won't find one yet. […]
Show full quote

You won't find one yet.

Password is "heap".

TO use, load cmd and type earlyload.exe gamename.exe

Should be backword compatible with Windows XP as well, but since it is built on MSVC22, earlyload.exe doesn't work. On XP, using DxWnd with this file is currently the only options (still inferior) unless someone builds earlyloader.exe on an older MSVC

Thanks.
Has the author intended to make it publicly available in the future? If so, will it be released as a command-line tool or with a more accessible user interface?

To be honest I don't know. It just passed my testing and other than that, we never had conversations of it. The DLL was the hard part to handle, and also make it portable across XP to 11

The Detours based command line utility was just based for testing it and it just worked better than DxWnd hooking. Other devs can implement a GUI based tool for the same.

Did you test it ?

I have tested with RTC
H:\jeux\Return to Castle Wolfenstein>earlyload.exe WolfSP.exe
and it works

Reply 42 of 56, by willow

User metadata
Rank Member
Rank
Member
BEEN_Nath_58 wrote on 2025-04-15, 14:04:
willow wrote on 2025-04-15, 13:57:
BEEN_Nath_58 wrote on 2025-04-15, 13:35:

I don't really remember where the game needed EmulateHeap. I think it was the Autorun application which plays some intro video then proceeds to the game.

You can also throw it any Win98 compatible random program (like San Andreas) and it should be working

What games heve need emulate heap ?

NFS Porsche Unleashed, Interstate 76, Battlezone, Jane's Longbow 2, Superbike 2000, Superbike 2001, ...

I have tried superbike 2000 found on archive.net with and without use of earlyload. Without early load, I must use windowsxp sp2 compatibility to launch game. If I use earlyload, withtout compatibility, game launch

But in both cas I have this problem
Sans-titre.png Sans-titre2.jpg Sans-titre3.jpg
Although, I can access to the option menu but I can't launch race because i don't have crack no cd and I didn't find no cd on internet.

Reply 43 of 56, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
willow wrote on 2025-04-16, 12:57:
I have tried superbike 2000 found on archive.net with and without use of earlyload. Without early load, I must use windowsxp sp2 […]
Show full quote
BEEN_Nath_58 wrote on 2025-04-15, 14:04:
willow wrote on 2025-04-15, 13:57:

What games heve need emulate heap ?

NFS Porsche Unleashed, Interstate 76, Battlezone, Jane's Longbow 2, Superbike 2000, Superbike 2001, ...

I have tried superbike 2000 found on archive.net with and without use of earlyload. Without early load, I must use windowsxp sp2 compatibility to launch game. If I use earlyload, withtout compatibility, game launch

But in both cas I have this problem
Sans-titre.png Sans-titre2.jpg Sans-titre3.jpg
Although, I can access to the option menu but I can't launch race because i don't have crack no cd and I didn't find no cd on internet.

The error is due to lack of correctly supporting SEM_NOOPENFILEERRORBOX.

Using the shim IgnoreLoadLibray will fix it.

For the race launching, consider putting dgVoodoo2 or DDrawCompat which launches it for me. It is not related to NO CD, the game uses SafeDisc so you would have been stopped before even getting the window

previously known as Discrete_BOB_058

Reply 44 of 56, by willow

User metadata
Rank Member
Rank
Member
BEEN_Nath_58 wrote on 2025-04-16, 13:36:
The error is due to lack of correctly supporting SEM_NOOPENFILEERRORBOX. […]
Show full quote
willow wrote on 2025-04-16, 12:57:
I have tried superbike 2000 found on archive.net with and without use of earlyload. Without early load, I must use windowsxp sp2 […]
Show full quote
BEEN_Nath_58 wrote on 2025-04-15, 14:04:

NFS Porsche Unleashed, Interstate 76, Battlezone, Jane's Longbow 2, Superbike 2000, Superbike 2001, ...

I have tried superbike 2000 found on archive.net with and without use of earlyload. Without early load, I must use windowsxp sp2 compatibility to launch game. If I use earlyload, withtout compatibility, game launch

But in both cas I have this problem
Sans-titre.png Sans-titre2.jpg Sans-titre3.jpg
Although, I can access to the option menu but I can't launch race because i don't have crack no cd and I didn't find no cd on internet.

The error is due to lack of correctly supporting SEM_NOOPENFILEERRORBOX.

Using the shim IgnoreLoadLibray will fix it.

For the race launching, consider putting dgVoodoo2 or DDrawCompat which launches it for me. It is not related to NO CD, the game uses SafeDisc so you would have been stopped before even getting the window

I have used dgvooodoo 2 and the game said that
Sans-titre.jpg

edit: iso wasn't mounted.

Withouth early load, when I launched race, game crash and return to windows.

With earlyload, when I launch race, game works and no crash.

I notice that with earlyload, It doesn't work if I use direct12 in output api in dgvoodoo 2, only direct3d 11 options works. It's a bug I think.

This hooker must be available for all people because it's very usefull. I hope that the author will distribute this software. Have you a link for ask any question at the author ?

how use the shim IgnoreLoadLibray ?

Reply 45 of 56, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
willow wrote on 2025-04-16, 14:27:

I notice that with earlyload, It doesn't work if I use direct12 in output api in dgvoodoo 2, only direct3d 11 options works. It's a bug I think.

This hooker must be available for all people because it's very usefull. I hope that the author will distribute this software. Have you a link for ask any question at the author ?

how use the shim IgnoreLoadLibray ?

Direct3D12 output renderer generally has (had) more issues. Only Dege can handle that

For IgnoreLoadLibrary, you need to use Microsoft Application Compatibility Toolkit.

Author: link
It will be distributed sometime sooner or later. The problem has already been fixed, it is just different implementation of giving programs the way to use it

previously known as Discrete_BOB_058

Reply 46 of 56, by willow

User metadata
Rank Member
Rank
Member
BEEN_Nath_58 wrote on 2025-04-16, 18:00:
willow wrote on 2025-04-16, 14:27:

I notice that with earlyload, It doesn't work if I use direct12 in output api in dgvoodoo 2, only direct3d 11 options works. It's a bug I think.

This hooker must be available for all people because it's very usefull. I hope that the author will distribute this software. Have you a link for ask any question at the author ?

how use the shim IgnoreLoadLibray ?

Direct3D12 output renderer generally has (had) more issues. Only Dege can handle that

For IgnoreLoadLibrary, you need to use Microsoft Application Compatibility Toolkit.

Thanks. I wanted to use direct3d 12 because with dgvoodoo and direct3d 11 superbike can stutter (framerate vary between 100 fps and 25 fps) by moment. I don't know if I can speak about this file with dege because it's not a final version.

BEEN_Nath_58 wrote on 2025-04-16, 18:00:

Author: link
It will be distributed sometime sooner or later. The problem has already been fixed, it is just different implementation of giving programs the way to use it

Thanks.
I hope that we will can use it without the need of dxwnd.

It's a shame that Ms has broken this compatibility and doesn't care about it.

Reply 47 of 56, by Nicknine

User metadata
Rank Newbie
Rank
Newbie
BEEN_Nath_58 wrote on 2025-04-14, 21:46:
You won't find one yet. […]
Show full quote
willow wrote on 2025-04-14, 21:24:
BEEN_Nath_58 wrote on 2025-04-08, 21:17:

Tested crazyc's fixed EmulateHeap hooker and module. Seems to be running well on Windows 11. All tested games work now (12 of them)

Have you a link with crazyc's fixed EmulateHeap hooker ? I didn't find a link with google search.

You won't find one yet.

Password is "heap".

TO use, load cmd and type earlyload.exe gamename.exe

Should be backword compatible with Windows XP as well, but since it is built on MSVC22, earlyload.exe doesn't work. On XP, using DxWnd with this file is currently the only options (still inferior) unless someone builds earlyloader.exe on an older MSVC

Is there any way to load this DLL without using DxWnd or earlyload.exe? Could using InjectDll ACT shim work?

EDIT: Ok, InjectDll shim doesn't work since it loads dll after all the imported dlls.

Reply 48 of 56, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
Nicknine wrote on 2025-04-19, 00:32:
BEEN_Nath_58 wrote on 2025-04-14, 21:46:
You won't find one yet. […]
Show full quote
willow wrote on 2025-04-14, 21:24:

Have you a link with crazyc's fixed EmulateHeap hooker ? I didn't find a link with google search.

You won't find one yet.

Password is "heap".

TO use, load cmd and type earlyload.exe gamename.exe

Should be backword compatible with Windows XP as well, but since it is built on MSVC22, earlyload.exe doesn't work. On XP, using DxWnd with this file is currently the only options (still inferior) unless someone builds earlyloader.exe on an older MSVC

Is there any way to load this DLL without using DxWnd or earlyload.exe?

It should be possible, but I don't have any other options as of now. It should be loaded before execution

previously known as Discrete_BOB_058

Reply 49 of 56, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
UCyborg wrote on 2025-04-16, 07:05:

That is correct. Couple of years ago, I published the patch addressing this and some other issues. Though the workarounds for other memory bugs are a bit silly, I just added parameter to initialize allocated memory to zero in couple of places as I didn't find the real cause, it must have reduced the probability of other crashes somewhat. Presumably accesses are happening outside of allocated memory regions.

Pinging you here on the game again. How did you determine the frame rate? Was it based on what you felt close to the actual time period, or because that was some engine limitation?

Although I haven't tested but did you include a frame limiter for the -gdi game?

previously known as Discrete_BOB_058

Reply 50 of 56, by UCyborg

User metadata
Rank Oldbie
Rank
Oldbie

Car and weapon physics is all wrong at higher frame rates, clouds move faster. It was all guessing and not sure 20 FPS is optimal either. 30 FPS is definitely still glitchy in some aspects, one forum mentions 24 being the magic number, but I don't recall if I tested that rate or how I ended up at 20. None felt entirely right TBH and that old 133 MHz Pentium is long gone, so didn't have any good point of reference. I don't recall that beginning of the scene where you drive to the race track, before chatter occurs, as problematic on old computer, that is your car not moving entirely smoothly in a jumping/skipping fashion.

The frame rate limiter in the patch is supposed to work in all graphics modes.

Arthur Schopenhauer wrote:

A man can be himself only so long as he is alone; and if he does not love solitude, he will not love freedom; for it is only when he is alone that he is really free.

Reply 51 of 56, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
UCyborg wrote on 2025-05-02, 00:17:

Car and weapon physics is all wrong at higher frame rates, clouds move faster. It was all guessing and not sure 20 FPS is optimal either. 30 FPS is definitely still glitchy in some aspects, one forum mentions 24 being the magic number, but I don't recall if I tested that rate or how I ended up at 20. None felt entirely right TBH and that old 133 MHz Pentium is long gone, so didn't have any good point of reference. I don't recall that beginning of the scene where you drive to the race track, before chatter occurs, as problematic on old computer, that is your car not moving entirely smoothly in a jumping/skipping fashion.

The frame rate limiter in the patch is supposed to work in all graphics modes.

Okay can confirm it works with GDI modes as well. Although the game crashes, I had to apply MechWarrior 2's BitBlt values to get it working

previously known as Discrete_BOB_058

Reply 52 of 56, by UCyborg

User metadata
Rank Oldbie
Rank
Oldbie

What about BitBlt? Is it something specific to newer Win11? Works here on Win11 23H2. Music doesn't play though, no idea why. Pretty sure it was working with music ripped to disk using DxWnd's virtual CD audio player. I had an old DxWnd from 2019, it just hung when I launched the game and the WerFault.exe spawned without any window. Downloaded new DxWnd, extracted to an empty folder, put the old dxwnd.ini inside, my profiles are there. Holy crap, it has even more knobs now! But music still doesn't play. Without DxWnd running, game just crashes in winmmbase.dll.

Never played MechWarrior 2 though, Interstate '76 must use slightly newer version of its engine. The former might be even buggier.

Arthur Schopenhauer wrote:

A man can be himself only so long as he is alone; and if he does not love solitude, he will not love freedom; for it is only when he is alone that he is really free.

Reply 53 of 56, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
UCyborg wrote on 2025-05-02, 13:24:

What about BitBlt? Is it something specific to newer Win11? Works here on Win11 23H2. Music doesn't play though, no idea why. Pretty sure it was working with music ripped to disk using DxWnd's virtual CD audio player. I had an old DxWnd from 2019, it just hung when I launched the game and the WerFault.exe spawned without any window. Downloaded new DxWnd, extracted to an empty folder, put the old dxwnd.ini inside, my profiles are there. Holy crap, it has even more knobs now! But music still doesn't play. Without DxWnd running, game just crashes in winmmbase.dll.

Never played MechWarrior 2 though, Interstate '76 must use slightly newer version of its engine. The former might be even buggier.

A restart later, now the game doesn't need the BitBlt specification. Previously it was wanting the number of scan lines as the value of BitBlt, as MW2 wants.

Rename the exe and probably add Handle exceptions, you are on Win11 so you need to escape the realm of EmulateHeap

previously known as Discrete_BOB_058

Reply 54 of 56, by UCyborg

User metadata
Rank Oldbie
Rank
Oldbie

I disable Windows' shims anyway if I got the game patched to not need them. Music magically started working, but it doesn't stop during cutscene playback.

Arthur Schopenhauer wrote:

A man can be himself only so long as he is alone; and if he does not love solitude, he will not love freedom; for it is only when he is alone that he is really free.

Reply 55 of 56, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
UCyborg wrote on 2025-05-02, 14:21:

I disable Windows' shims anyway if I got the game patched to not need them. Music magically started working, but it doesn't stop during cutscene playback.

Hm this looks new, it definitely wasn't there last year. I should report about it then.

previously known as Discrete_BOB_058

Reply 56 of 56, by BEEN_Nath_58

User metadata
Rank l33t
Rank
l33t
UCyborg wrote on 2025-05-02, 14:21:

I disable Windows' shims anyway if I got the game patched to not need them. Music magically started working, but it doesn't stop during cutscene playback.

I found the problem. Maybe we should continue in a more appropriate thread like: Re: Interstate 76 on Windows 10 (or at least Windows 7?)

Continuing, unfortunately it comes from the AiO Patch so I need some answers:
1. This game version correctly puts mixer to 100% when using DxWnd sound emulation, unlike the original 1.2 Gold game which maxes out at 49% (definitely wrong in DxWnd but how does AiO fix it?)
2. The sound not stopping in mission is not encountered in the 1.2 Gold game, but only in AiO patch.

I am thinking you patched some specific version of the game instead of just jumping to the 1.2 Gold game. Which one is that?

Btw I was thinking of 30Fps also because it talked of a 30FPS patch here:
https://www.interstate76.com/download/

previously known as Discrete_BOB_058