How to run the Windows 3dfx/Glide versions of Longbow Gold and Longbow Anthology natively in Windows 10 using compatibility fixes, Glide and DirectX/Windows wrappers.
I'll be using cd images to save wear and tear on cds and drive. Your Longbow cds can be ripped to data only iso cd images, there is no cd audio on the Longbow cds.
It will be installed and played natively in Windows 10, in theory PCem should be another solution, however the Glide components of PCem fail when running Longbow Glide versions.
Before you begin
Running Longbow Gold or Anthology natively in Windows 10 is an involved process and although the results are more stable than ever before, there are still issues and workarounds to be aware of.
That's why I'm suggesting you read up on the issues that still remain (below) and take a look at the process in setting up, to make sure you're comfortable with the steps of the process and once the work is done, the issues that remain are ones you can live with while playing.
Versions and patches
For a list the various releases of Longbow and the recommended patches for each version take a look at the Longbow primer.
This guide covers Windows Glide versions of Longbow Gold and Anthology only (there is no DOS Glide version. There's a separate setup guide for the DOS and Windows non-Glide versions. The preferred version is Longbow Anthology as does not suffer from the movie issue (described below) which affects Longbow Gold.
Installation
Before running the installation, set the compatibility option, 'Run this program in compatibility mode for: Windows 95' on the setup.exe properties. Running the installation should be straight-forward.
For Anthology, choose a custom install and skip installing the GoldFX(A) patch. This will be done later.
If you've installed Longbow previously, you may have followed the PC Gaming Wiki advice and added the HEAP_PERCENT option to the ca.ini config file. This can be found in the Longbow installation folder. You should remove/comment out this line in the file, it won't be needed.
CD emulation
The developers of Longbow, left in a functional cd emulation facility. This is a very useful facility as it saves you having to swap physical cd or cd images in PCem. To use it, copy the contents of each cd to a folder on the PCem emulated machine.
Then create a file CDEmu.ini in the Longbow installation folder (in my case C:\Janes\Longbow) and specify the folder for each cd, like so:
[CDEmulate]
CD001=C:\Janes\Longbow1
CD002=C:\Janes\Longbow2
CD003=C:\Janes\Longbow3
Longbow Anthology only has two Longbow cds, the third and fourth cds are Longbow 2, so the CDEmu.ini file only requires two entries.
Patching
To patch Longbow Gold you need to run the GoldFX patch only. The GoldFX patch is only compatible with the base Longbow Gold game.
To patch Longbow Anthology you need to run the GoldFX(A) patch, the Anthology version of the GoldFX patch.
Before running the patch installer, set the compatibility option, 'Run this program in compatibility mode for: Windows 98 / Windows ME' and 'Run as Administrator' on the setup.exe properties. Running the installer should now be straight-forward.
A quick break
We've reached the point where the game is installed and patched. From this point on we'll be using a variety of tools to fix compatibility issues encountered when running on a Windows 10 platform.
This starts to get a lot more involved so read ahead, take your time. You may find it tricky when you do this for the first time, I know I did.
We'll be setting up three separate components:
Windows compatibility fixes.
The Windows/DirectX wrapper DxWnd.
The Glide wrapper nGlide.
Windows compatibility fixes
The first step is make sure there are no existing compatibility fixes on the Longbow executable, lbwin.exe. Go to Properties and the Compatibility tab and make sure all the Compatibility fixes are disabled.
The Windows compatibility fixes are included in the below zip file. The fixes were created with the Microsoft Compatibility administrator (32 bit). Follow the link for an overview.
There are fixes for Longbow Gold and Longbow Anthology in the application compatibility database file JanesLongbowGlide.sdb. There is a LongbowGlidePatchInstall.bat to install the patch and a LongbowGlidePatchUninstall.bat to uninstall the patch.
This is my first application compatibility patch I've produced for others. The fixes should only apply to the Longbow Gold/Anthology Glide versions of lbwin.exe with a particular checksum so 'should' work on any Windows 10 machine.
To use the patch, download, extract to a folder and run LongbowGlidePatchInstall.bat. If you wish to uninstall later, run LongbowGlidePatchUninstall.bat.
If you prefer to exercise caution when it comes to downloading files from strangers (I can completely understand), then take a look at the  Microsoft Compatibility administrator guide.
You should be able to download and install the Assessment and deployment kit, use the Compatibility administrator to produce your own patch and install it. You'll need to use the following fixes/shims:
EmulateCreateFileMapping
GlobalMemoryStatusLie
IgnoreException
You can also use the Compatibility administrator to open my JanesLongbowGlide.sdb file and see the same fixes/shims for both Longbow Gold and Anthology.
Now the fixes are installed it's time to set up the wrappers.
Wrappers
DxWnd Windows/DirectX wrapper
A lot of the work that was done by the Windows compatibility settings, will instead be done by the Windows/DirectX wrapper DxWnd. To quote the maintainer of DxWnd, Ghotik:
Windows hooker - intercepts system calls to make Win32 programs run in a window, to enhance application compatibility, to enhance video modes, to stretch timing and emulate CD disk data and audio tracks. It is typically very useful to run old Windows games.
DxWnd has been awarded a well deserved open source excellence badge, the latest version (at time of writing) is v2.06.05.fx1 and can be obtained from the SourceForge DxWnd page.
Installation
Once downloaded as a rar archive, it just needs to be extracted to a folder on your machine, (I used 7zip). Installation complete!
Setup
Once you start it up things look a little bit empty. Go to Edit and Add a profile. You'll be presented with a profile dialog containing a huge array of tabs and options. A number of options are set by default, so I'll only cover the additional options you need to set.
Main tab:
Name: give the profile a name.
Path: set it to the lbwin.exe in your installation folder.
For Longbow Anthology:
Uncheck Run in Window.
These don't really change anything just personal preference:
Check Hide desktop background.
Check Keep aspect ratio.
Check Desktop.
Mouse tab:
Check Position message processing.
DirectX tab:
Check Vsync ON.
Check Wait for Frequency.
Libs tab:
Check Emulate Win9X heap.
Check Hook Glide libs.
Once they are set click on ok and you should be returned to the profile window with a new Longbow profile. Go to File and Save to save what is called the task list. This doesn't save anything to file, to save your profile to a file, you need to right click on the profile and Export. You can choose a name and location to save to.
Using my profile
This is the profile (zipped) I created:
If you wish to use it (you may prefer to do the setup yourself), unzip it to a folder, there should be a dxw config file (.dxw). Run DxWnd and go to File and Import, select this file and open it.
The imported profile will be disabled, DxWnd does not store the path, as my path to the lbwin.exe file could be completely different to yours.
Right click on the profile, go to Modify to open the options dialog and specify the Path in the Main tab. Click on ok and you should have an active DxWnd Longbow profile!
Note: If you are using Longbow Anthology, you will need to uncheck the 'Run in Window' option as described above.
And finally a huge thank you to Ghotik for all his hard work on the DxWnd wrapper!
nGlide Glide wrapper
The preferred Glide wrapper is nGlide v2.10. nGlide can be obtained from the nGlide website.
If you already have an existing Glide wrapper installed then you may want to take a look at the Glide wrapper guide. It will explain options you have, if you wish to keep your existing nGlide wrapper and wish to install nGlide v2.10 as a local Glide wrapper.
Installation should be straight-forward. Once installed, use the nGlide configurator to ensure the:
Video backend is set to 'Automatic'.
Screen resolution is set to 'By app (Default)' or 'by desktop' (I use by desktop).
Aspect ratio is set to 'Aspect correction'.
I'd recommend setting 3Dfx logo splash screen to 'On (Default)', to make sure nGlide is being used, then turn it off later if you want to.
In my case I have nGlide v2.10 installed as the system Glide wrapper.
Controller setup
If you have more than 4 axes with your HOTAS controllers combined (and I do) then you'll have to use your HOTAS profile software to create a virtual controller and limit it to 4 axes (joystick x & y axes, throttle axis and rudder (pedal) axis). For a quick discussion on virtual controller, see my earlier article, Controllers and retro sims part 2: Virtual controllers.
The rudder will probably be the z-rotation axis (it was for me) rather than the x-rotation axis. Again with a little testing you should discover which.
Issues and workarounds
The Longbow setup is quite stable but not perfect. There are still a number of outstanding issues, some of which can cause a repeatable crash to desktop, as described below, with a recommended workaround.
It is recommended that automatic saving of progress be turned off. If an issue occurs without a crash to desktop the game may continue and automatically set the mission as a failure. With the auto-save option disabled you will be asked whether progress should be saved.
Longbow Anthology
Early mission planning crash:
Trigger: Start the game, go to historical missions and select a mission. On the mission prep screen select mission planning, after a short delay the game will crash to desktop.
Workaround: Select a mission with an already loaded terrain set e,g, free flight. Once in the Apache, quit the mission. The crash should no longer occur. Â In order to guarantee a particular terrain set is loaded, before quitting the sim, start the free flight mission, quit the mission, then quit the sim.
Early terrain load crash:
Trigger: Start the game, go to a mission that requires the terrain to be loaded, e.g. free flight or historical mission. When the last high terrain set is nearly loaded the game will crash to desktop.
Workaround: Select a mission with an already loaded terrain set e,g, free flight. Once in the Apache, quit the mission. The crash should no longer occur. In order to guarantee a particular terrain set is loaded, before quitting the sim, start the free flight mission, quit the mission, then quit the sim.
Longbow Gold
Longbow Gold suffers from the same two repeatable issues as Longbow Anthology. There is one other issue:
Corrupt in-game movies:
Trigger: Start the game, the intro movie will play for a couple of seconds in a corrupted state before ending early. The game continues to the on-base screen. Other movies throughout the game show similar corruption.
Workaround: Disable intro and end credit movies with the on-base options. Leave the game alone at the on-base screen for 60-75 seconds. This seems to fix the issue and other in-game movies should play without issue.
Testing
If you wish to test with alternative or additional options to see if you can get better results, I'll be adding a guide with scenarios to test, that were particularly crash prone in the past.
Running the Longbow Glide version
To run the Longbow game we need to invoke the DxWnd profile. This can be done directly in the DxWnd application by clicking on the Longbow profile.
Alternatively we can create a shortcut to DxWnd and invoke the Longbow profile with a cmd line option, by editing the Target field of the shortcut, e.g.
C:\Dxwnd\dxwnd.exe /R:1
This runs the first profile in the list.
From the DxWnd help file:
/R:n Automatically starts DxWnd iconized in the system tray, runs the nth program in the configuration file, and exits DxWnd.
Game options and manuals
The earlier guide, Running Jane's AH-64D Longbow (DOS) in DOSBox Staging has a brief discussion on gameplay options and manuals.
Good hunting!
Comments