Cacodemon
Register | User Profile | Member List | F.A.Q | Privacy Policy | New Blog | Search Forums | Forums Home
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Special Interest > Eternity > Windows 95 Compatibility
 
Author
All times are GMT. The time now is 13:16. Post New Thread    Post A Reply
Ramon_Demestre
Green Marine


Posts: 33
Registered: 08-08


I tried to run Eternity on windows 95B.
I downloaded msvc80.dll which is needed and then encountered importations error problems. here they are and How I fixed them:

Eternity-r979

msvc80.DLL [Version 8.00.50727.42]:
GetLongPathNameW -> GetFullPathNameW
IsDebuggerPresent -> FreeConsole

ETERNITY.EXE:
IsDebuggerPresent -> FreeConsole
InterlockedCompareExchange -> CreateFileA
At offset 0x9D8D5 : 53 56 57 FF 15 18 E0 49 00 -> 89 D8 F0 0F B1 37 90 90 90

That is, replace:
push ebx
push esi
push edi
Call dword ptr [InterlockedCompareExchange]

With:
mov eax, ebx
lock cmpxchg [edi], esi

With all the above fix, now eternity works like a charm on Win95.
I see now there are more recent versions, Those kind of fix should work too.
|-| EDIT |-|
With latest relese (fixed it this morning)
ETERNITY.EXE-r1163 :
At ofset 0x9FDD5
53 56 57 FF 15 18 10 4A 00 -> 89 D8 F0 0F B1 37 90 90 90

And other modifications are same.

This makes Eternity to run on Windows NT 3.51 Too
However, having no VooDoo III and no SBPCI Drivers for NT3.51, I must run ee Windowed in SuperVGA (800x600-16colors) and without sounds and it looks bad.

Last edited by Ramon_Demestre on 05-14-10 at 10:19

Old Post 05-13-10 08:02 #
Ramon_Demestre is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Csonicgo


Posts: 4434
Registered: 03-04


I'm sure this would help win98's issues as well.

Old Post 05-13-10 08:31 #
Csonicgo is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 6006
Registered: 08-00



Csonicgo said:
I'm sure this would help win98's issues as well.

This is why there are two different releases for Win32. The version built with Visual Studio 6.0 runs on Win9x out of the zip without modification.

Newer compilers don't allow building for Win9x compatibility. SVN builds by Gez are built with Visual Studio 2005, which I think is friendly down to Win98SE. The "Win32 Plus" release version was built with Visual Studio 2008 which will not allow programs to execute on anything older than Windows 2000.

Old Post 05-15-10 00:21 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Ramon_Demestre
Green Marine


Posts: 33
Registered: 08-08


Will this be fixed or will I have to Hex Edit every time I update?
One should not to merge Win95 and Win98 in Win9x, because none of the still in devloppement Ports that I tested worked directly on Win95, wen they did on 98, Exept Chocolate-Doom which even works on NT3.51, without modifications.

Old Post 05-15-10 10:51 #
Ramon_Demestre is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7712
Registered: 01-03


This cannot be fixed because the newer MS compilers are no longer compatible with Windows 95 and the SVN build maintainers don't have a compiler that still can create executables that will work with it.

So yes, you'll either have to hex edit each version or upgrade your OS.

Old Post 05-15-10 11:01 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 6006
Registered: 08-00


If you are requesting an up-to-date Win95-compatible build I could create one, but this would not be a regular thing because I simply don't have the time or resources to do nightly SVN builds on top of all the other stuff I keep busy with. This is why we have Gez, who graciously takes the time to do this with the tools he has at his disposal.

But what Graf says is correct. The problem functions you are changing are being called by code that is outside of the Eternity code (ie. crt0 or other objects that have been linked into the EXE). I can't fix it by simply changing something in Eternity, because we don't call any of these functions directly.

Old Post 05-16-10 22:57 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
myk
volveré y seré millones


Posts: 15226
Registered: 04-02


You guys might want to check out KernelEx. It does things to Windows 98 to enable stuff that's been compiled specifically for newer Windows. It's how I'm posting from FireFox 3.6.3 on Windows 98, for instance.

If it does what it takes, then you could just recommend installing it before trying to install the corresponding source port.

Old Post 05-17-10 09:24 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
All times are GMT. The time now is 13:16. Post New Thread    Post A Reply
 
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Special Interest > Eternity > Windows 95 Compatibility

Show Printable Version | Email this Page | Subscribe to this Thread

 

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are OFF
[IMG] code is ON
 

< Contact Us - Doomworld >

Powered by: vBulletin Version 2.2.5
Copyright ©2000, 2001, Jelsoft Enterprises Limited.