0 of 0

File information

Last updated

Original upload

Created by

Boroda111

Uploaded by

boroda111

Virus scan

Some suspicious files

Tags for this mod

About this mod

Patched eduke32

Permissions and credits
Mirrors
eduke32 mod for Ion Fury: Aftershock on Windows XP 32 bits


Short way:

1) Download modded binaries

https://disk.yandex.ru/d/PYprvzXPwfWo6w

There are two functionaly equal packs - Default and Custom.

Default contains "native" One-Core-Api dlls only.

Custom contains older One-Core-Api dlls and custom simple kernel32.dll wrapper (called kernel33.dll, sources included).
Custom wrapper jumps directly to native XP kernel32.dll functions, except small amount of functions from One-Core-Api kernel32.dll (renamed to kernel34.dll)
Functions, taken from One-Core-Api kernel32.dll (called kernel34.dll):

    - FlsAlloc
    - FlsFree
    - FlsSetValue
    - FlsGetValue
    - GetCurrentProcessorNumber
    - GetLargePageMinimum
    - GetTickCount64
    - SetThreadStackGuarantee
    - InitializeCriticalSectionEx

It's not necessary, it just minimizes probability of crashes (because of possible realization bugs in One-Core-Api kernel32.dll)
Anyway, in my case there were no crashes at all on both packs.

You can use any pack you want.

2) Place fury.grp and fury.grpinfo near eduke32.exe

3) Play

Advice:
Disable voxels in graphics menu. Performance with enabled voxels is awful (something about 5 fps on GTX 680).


Long way (modding binaries by yourself):

1) Take eduke32_win32_20230926-10459-8feaf6c25 (https://dukeworld.com/eduke32/synthesis/20230926-10459-8feaf6c25/) or compile it with sources

2) Take 4 dlls from One-Core-Api (https://github.com/Skulltrail192/One-Core-API-Binaries) or compile it with sources

One-Core-API-Binaries/Packages/x86/Base Installer
    - ntext.dll
    - msvcrt.dll
    - kernelbase.dll

One-Core-API-Binaries/Packages/x86/Base Installer\XPSP3
    - xpspkernel32.dll

3) Replace 2 bytes in msvcrt.dll from One-Core-Api:

    Address        Byte change    Purpose
    0x000002A7    0x32 to 0x33    Import table kernel32.dll to kernel33.dll
    0x0009B82F    0x32 to 0x33    Import table kernel32.dll to kernel33.dll

4) Place 4 dlls from One-Core-Api near eduke32.exe and then rename them (because of "known dlls"):

    One-Core-Api dll    Rename to

    - xpspkernel32.dll    - kernel33.dll
    - ntext.dll        - ntext.dll
    - msvcrt.dll        - msvcru.dll
    - kernelbase.dll    - kernelbase.dll


5) Replace 3 bytes in eduke32.exe:

    Address        Byte change    Purpose

    -0x00043AC9    0x01 to 0x00    minicoro calls CreateFiberEx with argument FIBER_FLAG_FLOAT_SWITCH (1). This flag is not supported by Windows XP, change it to 0
    -0x005F0F7F    0x32 to 0x33    Import table kernel32.dll to kernel33.dll
    -0x005F11C9    0x74 to 0x75    Import table msvcrt.dll to msvcru.dll

6) Place fury.grp and fury.grpinfo near eduke32.exe

7) Play