Jump to content

Net7Proxy on Win98


Recommended Posts

/*

Net7Proxy & OpenSSL Win98


Problem: Visual Studio 2008 Compiler/Linker is not creating binaries that

  run on Win98/NT4


Solution:


NO WARRANTY on ANYTHING. Don't try this when you are uncomfortable using dosbox.

All other requirements of Net7 (like .Net for LaunchNet7, etc) still apply.

NO SUPPORT WHATSOEVER! I only did this for the nostalgic feeling of playing

EnB on my old box from live/beta.


Requirements:

  Win98 VC Redist from http://www.slproweb.com/products/Win32OpenSSL.html you need

  to download "Visual C++ 2008 Redistributables for Windows 9x/NT4"


Note: Whenever I write "run" I mean: start a "command.com" dosbox and

      change directory to your "net7\bin" directory first!

      As always when messing with files. Make sure you have a backup first!


Steps to generate Win98 OpenSSL files:

  start "RunMagic.bat" from the redist package

  it creates an MS directory


  copy petlkrnl.dll and vc90hook.dll to your Net7\bin dir

  copy MS\msvcr90.dll, MS\unicows.dll, MS\vc90krnl.dll to your Net7\bin


  You can now download OpenSSL from the page above, or patch the files included

  with Net7 (easier way!). Your choice. The resulting files are the same.

  Files to patch: ssleay32.dll and libeay32.dll


  If you want to patch the Net7 files you can use PEPatch from the OpenSSL redist. (easier way!)

    Copy PEPatch.exe to net7\bin

    Rename ssleay32.dll and libeay32.dll

    to ssleay32.org.dll and libeay32.org.dll

    Then run:

    PEPatch ssleay32.org.dll ssleay32.dll -osver=4.0 -subsysver=4.0 -stripcodesigning -fixchecksum

    PEPatch libeay32.org.dll libeay32.dll -osver=4.0 -subsysver=4.0 -stripcodesigning -fixchecksum


  Now your OpenSSL works on Win98! Well done!


To fix up Net7Proxy there are two ways:


  1. use PEProxy from the OpenSSL redist (easier way!):

    run:

    PEProxy kernel32.dll krnlnet7 vc90hook.dll*unicows.dll Net7Proxy.exe


    jump to step 3.


  2. Patch the Net7Proxy Source Code and recompile:

    to recompile use your favourite merge-tool (Tortoise-SVN, etc) and apply Win98CRT.patch

    on the file net7.cpp from the net7proxy source

    Set the Linker option: /FORCE:multiple

    rebuild and see the two warnings about the runtime function the patch overrides


  3. No matter which way you want to go you will have to use PEPatch to make Net7Proxy run.

    To do that rename Net7Proxy.exe to Net7Proxy.org.exe

    then run:

    PEPatch Net7Proxy.org.exe Net7Proxy.exe -osver=4.0 -subsysver=4.0 -stripcodesigning -fixchecksum


Enjoy Earth and Beyond on your old machine from times long forgotten 


What it does (technical):

  PEPatch changes the EXEs PE header, so that the OS will not display

  "Unsupported OS" when you start it. Nothing else. No Magic.

  PEProxy can hook DLL calls in this case the functions that display text in the dosbox need

  to be patched. Those are contained in the C Runtime Library. Some Magic involved. 

  It in fact doesn't do much different stuff than the patch I provided. Just without the

  need to recompile.


Joe Cool

*/


Maybe just compiling net7proxy with VC6 would also work, but the DEVs chose VS2008 so there :)

If this breaks any rules, or violates policy just delete it. But I thought having a larger potential userbase (as the original client runs fine on W98) might be a good thing. I tested it with my own server and on play.net-7.org and found no problems. Everything is works just fine, like it did during live (only better :P ).

Win98CRT.patch.txt

Link to comment
Share on other sites

  • 3 weeks later...
  • 5 years later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...