VOGONS


First post, by xcomcmdr

User metadata
Rank Member
Rank
Member

Hello,

First off, thank you so much for the greatest wrapper of all time (I mean it) which fixes thousands of games. 😁

Alas, I can't trick this one into working. I've tried quite a lot of times.

The game crash at startup. It's a D3D 8.1 game. I'm using dgVoodoo2 V2.63.2, default settings.
Same thing without dgVoodoo2. Same with dgVoodoo2 v2.54, and WineD3D.
Same thing in 16 BPP mode setup in RM_Setup_DX8.exe and the 16BITCOLOR compat' option (I tried that because of the log below, but I think it's a red herring).

Debug Log :

00000001	22:25:08	[11756] Direct3DCreate8 (SDKVersion = 78)	
00000002 22:25:08 [11756] [dgVoodoo] INFO: Reading config from file C:\Jeux\ABWFR\RaymanM\dgVoodoo.conf.
00000003 22:25:08 [11756] [dgVoodoo] ERROR: Cannot open file C:\Jeux\ABWFR\RaymanM\dgVoodoo.conf.
00000004 22:25:08 [11756] [dgVoodoo] INFO: Reading config from file C:\Jeux\ABWFR\RaymanM\dgVoodoo.conf.
00000005 22:25:08 [11756] [dgVoodoo] ERROR: Cannot open file C:\Jeux\ABWFR\RaymanM\dgVoodoo.conf.
00000006 22:25:08 [11756] [dgVoodoo] INFO: Reading config from file C:\Users\max\AppData\Roaming\dgVoodoo\dgVoodoo.conf.
00000007 22:25:08 [11756] [dgVoodoo] INFO: INI file based version of config file is successfully read.
00000008 22:25:08 [11756] [dgVoodoo] INFO: D3D8 is successfully loaded: C:\Jeux\ABWFR\RaymanM\D3D8.dll
00000009 22:25:08 [11756] [dgVoodoo] INFO: Reading config from file C:\Jeux\ABWFR\RaymanM\dgVoodoo.conf.
00000010 22:25:08 [11756] [dgVoodoo] ERROR: Cannot open file C:\Jeux\ABWFR\RaymanM\dgVoodoo.conf.
00000011 22:25:08 [11756] [dgVoodoo] INFO: Reading config from file C:\Jeux\ABWFR\RaymanM\dgVoodoo.conf.
00000012 22:25:08 [11756] [dgVoodoo] ERROR: Cannot open file C:\Jeux\ABWFR\RaymanM\dgVoodoo.conf.
00000013 22:25:08 [11756] [dgVoodoo] INFO: Reading config from file C:\Users\max\AppData\Roaming\dgVoodoo\dgVoodoo.conf.
00000014 22:25:08 [11756] [dgVoodoo] INFO: INI file based version of config file is successfully read.
00000015 22:25:08 [11756] [dgVoodoo] INFO: Direct3D8 (065EAF00) DirectDraw has been loaded: C:\Jeux\ABWFR\RaymanM\DDRAW.DLL
00000016 22:25:08 [11756] [dgVoodoo] INFO: Direct3D8 (065EAF00) is created. Number of display outputs (on which devices can be created): 1
00000017 22:25:08 [11756] [dgVoodoo] INFO: Direct3D8 (065EAF00) Device 0: Name: "NVIDIA GeForce GTX 1070", Description: "\\.\DISPLAY1", Monitor rect: (0, 0, 1920, 1080), system primary monitor
00000018 22:25:08 [11756] [dgVoodoo] INFO: Direct3D8 (065EAF00) Virtual video card is 'dgVoodoo Virtual 3D Accelerated' with 64MB onboard memory.
00000019 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::Init: Implicit swapchain (06F263A8) is created. Its display mode is 640x480, 32 bit, 60 Hz, fullscreen mode
00000020 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::Init: Requested output API type is "Best Available", DDI type is D3D 11.0, hardware accelerated
00000021 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::Init: Device is successfully initialized on output device index: 0. Maximum video memory: 65536 kBs, currently available video memory: 60416 kBs
00000022 22:25:08 [11756] [dgVoodoo] INFO: Direct3D8 (065EAF00)::CreateDevice: Direct3DDevice8 (07017C70) is created on output device 0, device type: D3DDEVTYPE_HAL.
00000023 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (0667FD88, IDirect3DVertexBuffer8 = 0667FDE4) is created.
00000024 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (0667FA28, IDirect3DVertexBuffer8 = 0667FA84) is created.
00000025 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CDFE0, IDirect3DIndexBuffer8 = 100CE024) is created.
00000026 22:25:08 [11756] [dgVoodoo] WARNING: Direct3D8 (065EAF00)::CheckDeviceFormat: Resource type D3DRTYPE_TEXTURE with format D3DFMT_R8G8B8 and usage (0) is not available on device type D3DDEVTYPE_HAL with adapter format D3DFMT_X8R8G8B8.
00000027 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateTexture: Direct3DTexture8 (100CC620, IDirect3DTexture8 = 100CC678) is created.
00000028 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateImageSurface: Direct3DSurface8 (06FCE138, IDirect3DSurface8 = 06FCE260) is created.
00000029 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateImageSurface: Direct3DSurface8 (06FCEB88, IDirect3DSurface8 = 06FCECB0) is created.
00000030 22:25:08 [11756] [dgVoodoo] INFO: Direct3DSurface8 (06FCEB88) is released.
00000031 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (06681450, IDirect3DVertexBuffer8 = 066814AC) is created.
00000032 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CDB60, IDirect3DIndexBuffer8 = 100CDBA4) is created.
00000033 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F7810, IDirect3DVertexBuffer8 = 102F786C) is created.
00000034 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CDAA0, IDirect3DIndexBuffer8 = 100CDAE4) is created.
00000035 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F8818, IDirect3DVertexBuffer8 = 102F8874) is created.
00000036 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CE820, IDirect3DIndexBuffer8 = 100CE864) is created.
00000037 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F83E0, IDirect3DVertexBuffer8 = 102F843C) is created.
00000038 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CEEE0, IDirect3DIndexBuffer8 = 100CEF24) is created.
00000039 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F7660, IDirect3DVertexBuffer8 = 102F76BC) is created.
00000040 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CDE60, IDirect3DIndexBuffer8 = 100CDEA4) is created.
00000041 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F7A98, IDirect3DVertexBuffer8 = 102F7AF4) is created.
00000042 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CE8E0, IDirect3DIndexBuffer8 = 100CE924) is created.
00000043 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F8590, IDirect3DVertexBuffer8 = 102F85EC) is created.
00000044 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CE9A0, IDirect3DIndexBuffer8 = 100CE9E4) is created.
00000045 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F84B8, IDirect3DVertexBuffer8 = 102F8514) is created.
00000046 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CF960, IDirect3DIndexBuffer8 = 100CF9A4) is created.
00000047 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F7B70, IDirect3DVertexBuffer8 = 102F7BCC) is created.
00000048 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CF2A0, IDirect3DIndexBuffer8 = 100CF2E4) is created.
00000049 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateVertexBuffer: Direct3DVertexBuffer8 (102F8668, IDirect3DVertexBuffer8 = 102F86C4) is created.
00000050 22:25:08 [11756] [dgVoodoo] INFO: Direct3DDevice8 (07017C70)::CreateIndexBuffer: Direct3DIndexBuffer8 (100CF7E0, IDirect3DIndexBuffer8 = 100CF824) is created.
00000051 22:25:08 [11756]
00000052 22:25:08 [11756] === Begin DirectDraw / Direct3D leak report ========
00000053 22:25:08 [11756]
00000054 22:25:08 [11756]
00000055 22:25:08 [11756] === No leaked objects were found
00000056 22:25:08 [11756]
00000057 22:25:08 [11756] === End DirectDraw / Direct3D leak report ========
00000058 22:25:08 [11756]
00000059 22:25:08 [11756] [dgVoodoo] WARNING: Leaked D3D8 objects detected at unloading D3D8 (probably process exit)!

Hardware Config :
Windows 10 x64 1909, Intel Core i7 6700K, nVidia GeForce GTX 1070.

Game info :

md5sum: ddcd4074c9e567b0d6681a453ccce427
name: RaymanM.exe
2001 French Release

RM_Setup_DX8.exe saves the graphical options and the rendering device GUID (the nVidia card) inside %WINDIR%\Ubisoft\ubi.ini.
The fact that the Guid doesn't correspond to dgVoodoo2's virtual D3D card doesn't seem to be the culprit, since it also doesn't run natively.

This is very puzzling indeed.

OllyDbg Info :
Crash occurs when calling D3D8.Direct3DCreate8.
Exception in KERNELBASE : 'MS C++ exception, module DXGI, class '?AV_comm_error@@ object [ObjectID]'

A program dump (taken from Task Explorer, while OllyDbg was showing the exception and dgVoodoo2 V2.63.3-Debug was used) is below :
https://drive.google.com/file/d/11nzefAzjNHXh … iew?usp=sharing

Dege, if you want any other information / data, let me know.
If you decide to take this, thank you so much in advance !

Last edited by xcomcmdr on 2020-08-31, 15:34. Edited 1 time in total.

Reply 1 of 6, by xcomcmdr

User metadata
Rank Member
Rank
Member

I took the fan-patch named 'Widescreen fix', and skipped the CD Check :
https://drive.google.com/file/d/1Fp9sm-a8NWZF … iew?usp=sharing

Seems to work better but all the labels on the main menu are off which makes it difficult to use.

Without dgVoodoo2's scaling / resolution forcing the sound skips a lot.

Last edited by xcomcmdr on 2020-06-07, 15:03. Edited 2 times in total.

Reply 2 of 6, by dr_st

User metadata
Rank l33t
Rank
l33t

Rayman M works on Win10 x64 without any API wrappers (and the widescreen fix helps). Is the expectation to get better graphical quality from using dgVoodoo2?

https://cloakedthargoid.wordpress.com/ - Random content on hardware, software, games and toys

Reply 3 of 6, by xcomcmdr

User metadata
Rank Member
Rank
Member
dr__st wrote:

Rayman M works on Win10 x64 without any API wrappers

Sadly, as written above, that's not my experience on two Windows 10 (Intel CPU, NVidia GPU) computers at all.
Another person running Windows 10 cannot run it either.

Without the 'widescreen fix' executable I don't have anything. The game crashs at launch.

Maybe its because I'm using the French release ?
The original (or NOCDed) EXE that won't launch has a size of 1804 KiB. The Widescreen fix has a size of 1808 KiB.

dr__st wrote:

Is the expectation to get better graphical quality from using dgVoodoo2?

dgVoodoo2 is just one of the many wrappers and compat' options I tried.

Reply 4 of 6, by dr_st

User metadata
Rank l33t
Rank
l33t

Edit: I've successfully run both Rayman M (European version) and Rayman Arena (North-American version) on Win10 1903 64-bit. All I had to do is use Rayman Control Panel to install (because the CD installer is outdated and wouldn't run), run RM_Setup_DX8 once, to configure the graphics, and use WinXP compatibility mode on the game executable (otherwise it does not detect the saved settings file). No graphical glitches that I could notice. My PC is i7-8700K and nVidia GTX 1070 Ti.

If you still cannot get it to work, please check if the information in this thread helps you.

https://cloakedthargoid.wordpress.com/ - Random content on hardware, software, games and toys

Reply 6 of 6, by xcomcmdr

User metadata
Rank Member
Rank
Member

Fixed: I had to manually enter 1920x1080 or any other widescreen resolution in c:\windows\ubisoft\ubi.ini

The widescreen fix'd exe won't work with the 4:3 resolutions the Rayman M setup utility displays.