Lemmings Revolution in a window or larger resolution

Started by jclampy, July 16, 2012, 01:21:29 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

jclampy

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Edit: Please disregard this obsolete DXWind post and find my new method using D3DWindower in the posts further down this thread. D3DWindower can be used with the Custom Hack Patch.

You can find how to install D3DWindower here:
http://www.lemmingsforums.com/index.php?topic=646.msg14233#msg14233" class="bbc_link" target="_blank">http://www.lemmingsforums.com/index.php?topic=646.msg14233#msg14233

You can find my current tweaked settings instructions here:
http://www.lemmingsforums.com/index.php?topic=646.msg14237#msg14237" class="bbc_link" target="_blank">http://www.lemmingsforums.com/index.php?topic=646.msg14237#msg14237

Custom Hack Patch thread can be found here:
http://www.lemmingsforums.com/index.php?topic=615.0

Current Custom Hack Patch version as at 24th August 2012 Full Color v1.0 (Final) available here:
http://www.lemmingsforums.com/index.php?topic=615.msg14573#msg14573" class="bbc_link" target="_blank">http://www.lemmingsforums.com/index.php?topic=615.msg14573#msg14573
Or alternatively here:
http://tle.vaarties.nl/patches/" class="bbc_link" target="_blank">http://tle.vaarties.nl/patches/

How to solve in-game font issues if you have that problem here:
http://www.lemmingsforums.com/index.php?topic=646.msg14732#msg14732" class="bbc_link" target="_blank">http://www.lemmingsforums.com/index.php?topic=646.msg14732#msg14732
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



Ok, just looking at this game for first time the last couple of days.  http://www.lemmingsforums.com/Smileys/lemmings/laugh.gif" alt=":D" title="Laugh" class="smiley" />

Anyhow, read a couple of posts about people wanting to know if can run in a window or at a higher resolution.
Maybe this may help?

I found that latest version of DXWind can run Lemmings Revolution in a window and you can choose the said windows size. You can find DXWind here: http://sourceforge.net/projects/dxwnd/" class="bbc_link" target="_blank">http://sourceforge.net/projects/dxwnd/

I have only successfully tested DXWind with an official patch#1 v1.0.0.1 Lemmings Revolution game.

As at the date of this post I don't believe DXWind will work with the Full Color v1.0 (Beta 4) - April 27, 2012 custom "Hacking Lemmings Revolution" patch. I will post a message in that thread to see if anything can be done?

Anyhow, to try it with one of the official versions:
Step 1)
http://i1187.photobucket.com/albums/z399/jclampy/DXWind/Step1.png" alt="" class="bbc_img" />
A) First under the 'Edit' menu select 'Add'

Step 2)
http://i1187.photobucket.com/albums/z399/jclampy/DXWind/Step2.png" alt="" class="bbc_img" />
A) Give the entry a title, ie: Lemmings Revolution
B) Browse to your games .exe file
C) Under 'Window initial position & size' you can enter the (W)Width and (H)Height of the resolution you want
D) Select 'Keep cursor within window' (see notes section at bottom of post why this is important)
E) 'Optimize CPU (DirectX1-7)' This will cap the framerate of the game, may help if the game is running to fast for you.
Otherwise, you could leave this unticked instead, whatever suits you best.
F) Click [OK] button when done

Step 3)
A) At this point I would suggest you exit out of DXWind. At the moment DXWind only saves changes to it's .ini file when you exit. So it is a good idea to do this now because if you don't and DXWind were to crash you would have to start from Step 1) all over again.

Step 4)
A) Ok now restart DXWind
http://i1187.photobucket.com/albums/z399/jclampy/DXWind/Step3.png" alt="" class="bbc_img" />
B) Scroll down to the Lemmings Revolution entry you made; it will be at the bottom of the list. (Unless you go 'File' then 'Sort programs list'.
C) Now either double-click on your game entry or right-click and select 'Run'.
D) Have fun!

Notes:
1) Don't click outside of the game window as will cause crash. Hint; that's why we use the 'Keep cursor within window' DXWind option.
2) Don't use [ALT-TAB] as will cause a crash
3) Don't use with the Full Color v1.0 (Beta 4) - April 27, 2012 custom "Hacking Lemmings Revolution" patch as will lock your desktop and require you to press your computers reset button.  http://www.lemmingsforums.com/Smileys/lemmings/cry.gif" alt=":'(" title="Cry" class="smiley" />
4) I have only had a quick look at using this, no doubt some of the DXWind settings may improve functionality?
5) Unfortunately with my quick glimpse this DXWind setup and Fraps don't seem to play nice together so unless someone can work out what DXWind settings can eleviate that problem, don't use with Fraps.

Please post your experiences on setting DXWind up with Lemmings Revolution.  http://www.lemmingsforums.com/Smileys/lemmings/cool.gif" alt="8)" title="Cool" class="smiley" />

jclampy

*Update*

Solved the [Alt][Tab] crashing issue so we can now freely multi-task while playing Lemmings Revolution in a window.  http://www.lemmingsforums.com/Smileys/lemmings/thumbsup.gif" alt=":thumbsup:" title="Thumbs Up" class="smiley" />

After going through all the settings this is what I am using now:
http://i1187.photobucket.com/albums/z399/jclampy/DXWind/NEWStep2.png" alt="" class="bbc_img" />
A) Give the entry a title, ie: Lemmings Revolution
B) Browse to your games .exe file. I am only using official patch#1 v1.0.0.1 Lemmings Revolution game.
C) Under 'Window initial position & size' you can enter the (W)Width and (H)Height of the resolution you want. I don't know if it is preferable to keep to an aspect ratio of 4:3, but you CAN put whatever resolution you like here. I recommend making the window size a little smaller than your desktop resolution to make room for the window border and title bar. For example with a desktop resolution of 1152x864 I chose to play lemmings at 1144x808 which worked nicely.  http://www.lemmingsforums.com/Smileys/lemmings/wink.gif" alt=";)" title="Wink" class="smiley" /> The X & Y is for game window placement within your monitors screen/desktop area, if you know what you are doing you could 'center' your game window, otherwise just leave them at 0.
D) Under 'Generic' tick 'Do not notify on task switch', this is what makes multi-tasking possible.
E) 'Optimize CPU (DirectX1-7)' This will cap the framerate of the game, may help if the game is running to fast for you.
Otherwise, you could leave this unticked instead, whatever suits you best.
F) 'Intercept Alt-F4 key' is a good idea for two reasons. Firstly, because if DXWind/Lemmings Revolution lockup or crash you could try [Alt][F4] to terminate to regain control. Secondly, you can also use [Alt][F4] to quickly quit from the game whenever you feel like, without the need to go back through the game menus.
G) Click [OK] button when done
H) Remember you should exit DXWind to allow the saving of the changes you just made to the .ini file.


* Note; No longer need to select 'Keep cursor within window' since multi-tasking no longer crashes DXWind/Lemmings Revolution.  http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" />

mobius

This would definitely come in handy especially for use with an editor. I might tinker around with this in the next couple days and see if I can get the patched (Guy's color patch) version to work windowed.

Thanks in advance, I'll give input if I get to try it out. http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" />
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


jclampy

Glad to hear someone else finds this interesting.  http://www.lemmingsforums.com/Smileys/lemmings/cool.gif" alt="8)" title="Cool" class="smiley" />

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DXWind can be a useful tool when playing these older games, here is another example:
I have been trying DXWind out with another game 'Warhammer: Dark Omen' with some interesting results.
Problem with that game (also happens with some other old games as well) is that when you play it fullscreen there is always a 'flicker'. Basically the game image 'blinks' about every 3 to 10 seconds and I just won't play a game in that situation.
Anyhow, turns out that if the game is played in a window using DXWind (an alternative program D3DWindower wouldn't work) the 'flicker' is gone. Happy days indeed, although I think game performance may have slowed down a little.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Actually, I was hoping that we could use one lot of settings that can work for all games or if maybe some of the fixes in the Lemming Revolution Custom Hack Patch could be transfered to help fix other old games.

Unfortunately I think either the games don't work similarly or DXWind does not work the same for all games. This was most noticeable where Lemmings Revolution in a window showed a 'border' and 'title bar' where Dark Omen in a window had no title or border. Also, where Lemmings Revolution 'fully captured' the mouse, Dark Omen did not. It was as though DXWind had Dark Omen in some kind of 'overlay', if you know what I mean. Both games were 'windowed' well enough for full playability, but there was no consistancy of settings or how DXWind was visibly displaying them.

Keen to hear results of your trials.  http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" />


Edit:
Lemmings Revolution was able to be played in any size window you wanted (even something unconventional like 1144x808) where Dark Omen would only work in a 640x480 window. So I would change my desktop to 800x600 and play Dark Omen at 640x480 which would show in a window with no border or title bar. If I change my desktop to 640x480 and play Dark Omen at 640x480 then it did show in a window with border and title bar. If I change my desktop to anything higher than 800x600 then DXWind can't run Dark Omen which crashes before the intro/logo videos are displayed.

jclampy

Sorry for double posting but I am hoping some progress might be able to be made?

Ok, tried just doing the sound fix on the Lemming Revolution .exe and running that through DXWind.
No problems, went fine.

Then just tried changing 000BDBA3, replaced DDRAW.DLL with PATCH.DLL without any of the other hex changes.
DXWind and game crash horrible death on startup requiring reset button.
If not using DXWind then it starts fine.

Is there something we can change with the patch.dll or implement it differently?

I am wondering if either something is conflicting in the patch.dll with DXWind (could a duplicate naming convention or similar cause a conflict?) or is the patch.dll capturing the display of the game for output?

Another idea, is it possible to implement the patch.dll inside the games .exe instead. I wonder if since it is external to the .exe that it could be causing problems with DXWind?

Any ideas anyone?  http://www.lemmingsforums.com/Smileys/lemmings/huh.gif" alt="???" title="Huh?" class="smiley" />

GuyPerfect

The patch.dll file masquerades as ddraw.dll from the perspective of the game's EXE file. This allows some custom code to be loaded for use in the process alongside the existing code.

The reason ddraw.dll was chosen is because the game only uses two functions from that file: DirectDrawEnumerate() and DirectDrawCreate(). These are both implemented in patch.dll as simple spoofs: the enumerator returns a phony "DirectL" rendering device that causes the program to call Create with the parameters for the default device, and Create just passes along the input parameters to the authentic DirectX function. In other words, in terms of what ddraw.dll does, patch.dll doesn't do any differently.

The only other functionality in patch.dll is a custom texture handler, which processes textures with separate alpha masks in a way that conforms to the DirectX standard. The code within Lemmings Revolution does not, which is why it isn't working correctly on Windows 7. The function in the EXE file was modified to call the function in the DLL, through a bit of tip-toeing, but it gets the job done.

The assembly injected into the EXE can be seen by using the -debug command line switch when running the Full Color patch. Here's an example:

http://i7.photobucket.com/albums/y255/bgng/FullColorUnderhood.png" alt="" class="bbc_img" />

This is literally just modifying the EXE a bit to run with a custom DLL rather than the system's internal DirectX DLL. Adjustments are minimal, so I'm not sure why DXWind wouldn't be compatible with it.

GuyPerfect

Heh. I poked around in the code and found the spot where it sets the screen resolution, changed that, and... got some peculiar results (click for full image):

http://i7.photobucket.com/albums/y255/bgng/NotQuiteResized.jpg" class="bbc_link" target="_blank">http://i7.photobucket.com/albums/y255/bgng/NotQuiteResized_Thumb.jpg" alt="" class="bbc_img" />

Simply setting the screen mode isn't sufficient to make the game run at a different size. There's still the 2D graphics, which are drawn at their 640x480 sizes even though the 3D and picking (mouse interaction) work with the larger screen size. Whatever DXWind does, it apparently shimmies its way between the game and DirectX and translates graphics instructions between the intended results and the overriden parameters.

The patch.dll file from the Full Color hack also shimmies its way in between the game and DirectX. Knowing what I know now, I'm not surprised that they don't play nice together.

I'll continue investigating the program tomorrow to see if I can get the 2D elements to draw at the correct sizes and locations. Though if it's more involved than changing a 640 here and a 480 there, don't expect any promising results; I don't aim to reprogram the game.

jclampy

Hmm, so the image you posted, that is still playing the game 'fullscreen' right?
Quite impressive how that turned out. Although it does look funny.  http://www.lemmingsforums.com/Smileys/lemmings/laugh.gif" alt=":D" title="Laugh" class="smiley" />
Fingers crossed you will be able to sort something out.

I guess you are using a widescreen display? If the game is set to a resolution of around 4:3 ratio then there would be a little less distortion.

"Whatever DXWind does, it apparently shimmies its way between the game and DirectX and translates graphics instructions between the intended results and the overriden parameters."

I would have thought DXWind just puts the games output display into a box and then DXWind has the ability to set the size of said box. So DXWind is not actually scaling or doing anything to the internal objects of the game as such as it is only working with the games 'output'. Ofcourse that is just my 'take' on it though, I could be wrong.

I think I read somewhere before that Lemmings Revolution is using DDraw to create it's 3D world and not Direct3D.
I think that would probably cancel out Anti-Aliasing as an option then, as I guess it won't do anything to a DDraw game.

PS1: I tried forcing AA on GTA3 & GTA:VC and made no difference to either game which was a disappointment, atleast once you go to about 1280x960 or 1280x1024 the 'jaggies' aren't that bad. I Still haven't concluded if it is possible to have AA in a 'windowed' game yet, hopefully I'll get some more time for testing soon.

PS2: GTA3 & GTA:VC couldn't be 'windowed' with DXWind, but could with D3DWindower. Both games originally use DirectX8 as API although it is possible to use ENB's DirectX8 to DirectX9 Converter .dll which worked fine. There is another DirectX8 & DirectX9 replacement called SwiftShader but I haven't tried that yet. I think DXWind might only work for DDraw based games where as D3DWindower works with DDraw.dll and Direct3D games (ie: games that use either D3D8.dll or D3D9.dll).

So maybe D3DWindower might need another look with Lemmings Revolution. Just tested if D3DWindower can 'window' Lemmings Revolution official version and it can. Intro/Game Video is not centered in window but I will investigate.
I can't find a homepage for D3DWindower but easily can be found on Google, not sure if 1.88 is the latest version, so maybe just get the English one.

jclampy

Ok, I got Lemmings Revolution Custom Hack Patch working in D3DWindower.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
These are instructions for getting D3DWindower running:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1) First download D3DWindower English. Please search for it on Google, etc. hopefully it won't be too hard to find as I fear links may disappear if we were to list them here. As far as I know the latest English version is 1.88 and originally came out around 2004.

2) Extract the .rar or .zip (D3DWindower) to your Lemmings Revolution installed folder. You should only need D3DWindower-English.exe & D3dHook.dll an hook.ini file will be created once we have finished setting up D3DWindower.

3) Run D3DWindower and you should see this:
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Install1.png" alt="" class="bbc_img" />

4) Click on the blue + sign and choose your Lemmings Revolution.exe and click [open] button.
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Install2.png" alt="" class="bbc_img" />

5) Now single click with the left mouse button on the Lemmings Revolution entry to select it only.
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Install3.png" alt="" class="bbc_img" />

6) You can now click on the 'Run program' button to start Lemmings Revolution.
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Install5.png" alt="" class="bbc_img" />

It should work, but it may not look exactly as we would like because we haven't tweaked the settings yet.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For my current tweaked settings instructions see the post here:
http://www.lemmingsforums.com/index.php?topic=646.msg14237#msg14237" class="bbc_link" target="_blank">http://www.lemmingsforums.com/index.php?topic=646.msg14237#msg14237
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


1144x808 game window at 1152x864 desktop resolution
(click to enlarge)
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/D3DWindower1144x808.jpg" class="bbc_link" target="_blank">http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/D3DWindower1144x808_50.jpg" alt="" class="bbc_img" />

Edit1: Ok, I am noticing some issues so will list them below;
A) Intro/Videos not shown centered.  http://www.lemmingsforums.com/Smileys/lemmings/sad.gif" alt=":(" title="Sad" class="smiley" />
B) If window resolution is 640x480 then screen did not flicker which is good.  http://www.lemmingsforums.com/Smileys/lemmings/cool.gif" alt="8)" title="Cool" class="smiley" />
C1) I noticed with larger resolutions screen flickering. Turn off 'DDraw Colour Convert' under 'Window Mode' settings tab to fix this.  http://www.lemmingsforums.com/Smileys/lemmings/thumbsup.gif" alt=":thumbsup:" title="Thumbs Up" class="smiley" />
C2) I noticed framerate drops quite a bit when played in window. Turning off 'DDraw Colour Convert' under 'Window Mode' tab helped increase the framerate as well. (FPS Increased about 50%). http://www.lemmingsforums.com/Smileys/lemmings/thumbsup.gif" alt=":thumbsup:" title="Thumbs Up" class="smiley" />
C3) Unfortunately having 'DDraw Colour Convert' turned off makes the game videos not play anymore. Turn off 'DDraw Colour Emulate' under 'Window Mode' settings tab to bring the videos back.  http://www.lemmingsforums.com/Smileys/lemmings/thumbsup.gif" alt=":thumbsup:" title="Thumbs Up" class="smiley" />
D) If you [Alt][Tab] away from the game and then back to it again the music stops. Sound effects/voices and game still works. When you finish the level the music starts up again though. To fix this go to 'Foreground Control' tab and turn on 'Use Foreground Control'.  http://www.lemmingsforums.com/Smileys/lemmings/thumbsup.gif" alt=":thumbsup:" title="Thumbs Up" class="smiley" />


PS: See that the API is listed as Direct3Dx; from quick research Direct3Dx was around back before DirectX7 and was kind of inbetween when Microsoft was moving from using DDraw to Direct3D for 3D gaming engine standard.

GuyPerfect

I think I read somewhere before that Lemmings Revolution is using DDraw to create it's 3D world and not Direct3D.
I think that would probably cancel out Anti-Aliasing as an option then, as I guess it won't do anything to a DDraw game.

It uses Direct3D. The game calls DirectDrawCreate() to produce an IDirectDraw, then calls that interface's QueryInterface() method to create an IDirectDraw4. It then queries that interface to create an IDirect3D3. What was confusing initially is that the game does 3D without importing anything from d3d.dll, but that's included dynamically through calls to ddraw.dll.

Ok, I got Lemmings Revolution Custom Hack Patch working in D3DWindower.

The image you posted looks like the 640x480 image stretched out to fill the size of the window it's in.

jclampy

http://www.lemmingsforums.com/index.php?topic=646.msg14235#msg14235">Quote from: GuyPerfect on 2012-07-20 09:11:06
The image you posted looks like the 640x480 image stretched out to fill the size of the window it's in.

Yeah, seems how D3DWindower does it. Works in that it allows you to play the game in a higher resolution. Granted, not as good as if we had anti-aliasing but once you go double original resolution of 1280x960 and larger then it combats the 'jaggies' quite well.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
These are my current tweaked settings instructions, which I have tested for a couple of hours:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

First single click with the left mouse button on the Lemmings Revolution entry to select it only
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Install3.png" alt="" class="bbc_img" />
Now click on the [settings] button to change settings for Lemmings Revolution.
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Install4.png" alt="" class="bbc_img" />
This window should popup; just go through the tabs one at a time and make them look as follows:
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Final1.png" alt="" class="bbc_img" />
Note: D3DWindower has the Width & Height boxes named incorrectly, they work as shown in my screenshot. Some people may prefer to keep an aspect ratio of 4:3, but you CAN put whatever resolution you like here. I recommend making the window size a little smaller than your desktop resolution to make room for the window border and title bar. For example with a desktop resolution of 1152x864 I chose to play lemmings at 1144x808 which worked nicely.
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Final2.png" alt="" class="bbc_img" />
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Final3.png" alt="" class="bbc_img" />
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Final4.png" alt="" class="bbc_img" />
Once you click on the [OK] button you only need to click on the 'Run program' button to start Lemmings Revolution
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Install5.png" alt="" class="bbc_img" />

Here is example of playing in a 1024x768 window on a 1152x864 desktop:
(click to enlarge)
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/D3DWindower1024x768.jpg" class="bbc_link" target="_blank">http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/D3DWindower1024x768_50.jpg" alt="" class="bbc_img" />]

Notice the 73FPS framerate is around my desktop refresh rate of 75Hz, so all is good!  http://www.lemmingsforums.com/Smileys/lemmings/thumbsup.gif" alt=":thumbsup:" title="Thumbs Up" class="smiley" />

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If you don't know how to install D3DWindower then I suggest you read this post here:
http://www.lemmingsforums.com/index.php?topic=646.msg14233#msg14233" class="bbc_link" target="_blank">http://www.lemmingsforums.com/index.php?topic=646.msg14233#msg14233
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

GuyPerfect

Well, I located the exact function in the Lemmings program responsible for setting the screen size, and the dimensions are hard-coded: 640x480x16bpp.

Code: [Select]
0045F1FC | 6A 10       | PUSH    10
0045F1FE | 68 E0010000 | PUSH    1E0
0045F203 | 68 80020000 | PUSH    280
0045F208 | B9 70CE5800 | MOV     ECX, 58CE70
0045F20D | E8 F5F70000 | CALL    0046EA07

Modifying these values had the same effect as changing the parameters to the DirectX screen-changer function. In summary:
  • All of the 3D and mouse picking works correctly at the new size.
  • Buttons and graphics on the main menu are centered in the screen, but their vertical positions are hard-coded.
  • The bitmap generated for the level select screen fills the whole screen, but the mouse still has to be in the old 640x480 locations to trigger them.
  • The GUI elements in the main game have hard-coded coordinates.
  • The Lemmings to not scale in size to match the screen.
While working with the .bmp compression a couple months ago, I found a particular bitmap that was a pixel mask for the level select screen. I don't remember the name, or the exact colors, but I remember varying degrees of red circles at each of the locations where levels can be selected on the level select screen. My guess is that the game loads the color of that mask pixel at the same location as the mouse pixel on the screen, and depending on the exact mathematical shade of red, determines which level to load at that location.

That is to say, the level select screen functions in such a way that it can't be arbitrarily resized.

Properly implementing resize functionality would require reprogramming the game in regards to how and where elements are drawn to the screen. Fortunately, it's only a matter of a few 2D aspects, but it's still more effort than I necessarily want to put into it right now. All of the 2D elements need to be scaled and positioned properly, which is a simple matter of adding multipliers for screen width and height, but the hard part is hunting down where in the program to multiply.

For now, stick with D3DWindower if you need to run the game in a window. Implementing a resize solution is a more specialized hack, similar to the compatibility patch. If you're adamant about making it a reality, jclampy, you might want to start by looking into computer programming. (-:

jclampy

A shame, but understandable due to your detailed explanation.  http://www.lemmingsforums.com/Smileys/lemmings/cool.gif" alt="8)" title="Cool" class="smiley" />
Ofcourse, if it was doable then we would have to look at use larger textures to make it look nicer as well as the small textures would have looked bad if they were stretched over larger objects.  http://www.lemmingsforums.com/Smileys/lemmings/wink.gif" alt=";)" title="Wink" class="smiley" />

Yes, you are right I am a noob at programming although I am comfortable hex editing if I am given necessary details.  http://www.lemmingsforums.com/Smileys/lemmings/embarrassed.gif" alt=":-[" title="Embarrassed" class="smiley" />

Still, you must agree that playing Lemmings Revolution in a window of 1024x768 or larger is easier on the eyes than playing fullscreen at original 640x480 resolution. Those 'jaggies' sharp edges cut my eyes.  http://www.lemmingsforums.com/Smileys/lemmings/sick.gif" alt=":sick:" title="Sick" class="smiley" />

Please if anyone try's D3DWindower with Lemmings Revolution, post your experience incase unique issues arise that I have not noticed on my PC hardware or OS.

mobius

First of all I apologize if I go over anything already mentioned I didn't have time to read this thread in it's entirety.

How do you get to these options?: Is this a part of DxWind or something else?

s that matter for Lemmings Revolution that I have ironed out over testing for a couple of hours:
http://i1187.photobucket.com/albums/z399/jclampy/D3DWindower/Final1.png" alt="" class="bbc_img" />

I've tested using DxWind without any of your latest instructions (for the above reasons) and it doesn't work however it doesn't freeze up my computer like you said it did. The mouse does stop working (I can't click on anything) but I can Cnt/alt/delete and the task manager still works and when I terminate the program it goes back to normal.

Also-- I didn't realize until afterward that once the program is added to the list in DXWind trying to start the program noramlly doesn't work? It always uses DxWind then? Because when I tried to run it normally the same thing happened.
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


jclampy

http://www.lemmingsforums.com/index.php?topic=646.msg14266#msg14266">Quote from: thick molasses on 2012-07-22 15:49:36
How do you get to these options?: Is this a part of DxWind or something else?

Yes, no longer using DXWind, that is part of D3DWindower. I have put a message at the top of the thread so now people can just jump straight to the new method.

http://www.lemmingsforums.com/index.php?topic=646.msg14266#msg14266">Quote from: thick molasses on 2012-07-22 15:49:36
I've tested using DxWind without any of your latest instructions (for the above reasons) and it doesn't work however it doesn't freeze up my computer like you said it did. The mouse does stop working (I can't click on anything) but I can Cnt/alt/delete and the task manager still works and when I terminate the program it goes back to normal.

Good to know that DXWind didn't work, as maybe we can put DXWind to rest for now and use D3DWindower instead. I assume the difference in 'recoverable freezing' from 'hardlocking requiring reset' will be due to different graphic card manufacturer and or different DirectX / Operating System versions.

http://www.lemmingsforums.com/index.php?topic=646.msg14266#msg14266">Quote from: thick molasses on 2012-07-22 15:49:36
Also-- I didn't realize until afterward that once the program is added to the list in DXWind trying to start the program noramlly doesn't work? It always uses DxWind then? Because when I tried to run it normally the same thing happened.

This only happens if you have DXWind still open. If you have DXWind running in the background or it can also be minimized down into the system tray. Then whenever you run a game that is in it's list it will use DXWind settings.

If you close DXWind; you can also check if it shows under 'task manager' 'Applications' or 'Processes' then it will not interfere with games.

Normally DXWind will not interefere with games unless you have it running in the background or in the system tray. It is possible that when you recovered from your computer freezing, although DXWind might have disappeared from your desktop it still could have been in resident memory. The next time you restarted your Windows Operating System would have cleared that up.

Anyhow, forget about DXWind for now and try D3DWindower out. You should find it a 'night and day' difference.

Please try and find D3Dwindower English using Google, etc. It is very hard to find working sources and I fear more may disappear if we were to list them here. As far as I know the latest English version is 1.88 and originally came out around 2004.