Demon's Souls help for issues
Started by El-Armandooo




2 posts in this topic
El-Armandooo
Member


0
3 posts 1 threads Joined: Oct 2017
10-28-2017, 02:41 PM -
#1
Hello there, I've been trying for hours now to launch Demon's Souls from the emulator, and I've been really annoyed (and I still am) by errors that I couldn't really fix, because I'm clearly not an expert of programming. 
So I decided to analyze in detail all the errors that occured while trying to get the game launched...

*Before I start, I am sorry if I am not in the right forum to explain some issues, etc. I will let admins put my topic in the right place if it isn't the case Smile*

Anyway, my goal here is to help people with some issues they might have in common with me, and try to help them fixing them with what I did.

The issues that I have fixed here are : 

E {rsx::thread} RSX: OpenGL: initialization of (x) failed.

**Issues Unsolved :** 

F {PPU[0x1000000] Thread (main_thread) [0x01d55058]} MEM: Access violation reading location 0xfffffffe


I will give my computer specs : 

-------------------------------------------------------------------
SPECS : 

CPU : Intel Core i7-2670QM @ 2.20Ghz
GPU : NVIDIA GeForce GT 555M + Intel HD Graphics 3000
RAM : 8Gb
Threads : 8


RPCS3 version : v.0.0.3-3-882e949 Alpha

Windows version : Windows 10
So I started the game with these Config parameters : 

CPU -----------------------------------

PPU decoder : Recompiler (LLVM)
SPU decoder : Recompiler (ASMJIT)

Preferred SPU Threads : Auto

Additional Settings : Enable SPU loop detection

Firmware settings : Load liblv2 .sprx only

GPU -----------------------------------

Renderer : OpenGL
Aspect Ratio : 16:9
Anisotropic filter : Auto
Framelimit : Off
Default Resolution : 720x576

Additional Settings : Write Color Buffers

Resolution Scale : 100% (Default)
Resolution Scale Threshold : 128x128 (Default)

Audio ---------------------------------

Audio Out : XAudio2

Audio Settings : Downmix to Stereo

I/O -----------------------------------

Keyboard Handler : Basic
Mouse Handler : Basic
Camera Input : Unknown
Camera Settings : Null

System --------------------------------

Console Language : French
Console Region : None 
Homebrew : None

Network -------------------------------

Network Status : Disconnected

Emulator ------------------------------

Emulator Settings :

- Automatically start games after boot
- Show framerate counter in window title
- Show trophy popups

*Other options in the 'emulator' settings are not able to be modified.*

------------------------------------------------------------

While booting , this log has shown this :

(Console spam redacted)


At the moment when a blank OpenGL window opened, the log popped all the OpenGL errors in the end, and then RPCS3 crashed entirely, popping an error message : 

"Unhandled Win32 exception 0xC0000005
Segfault writing location 0000000000000000 at 0000000000000000.
Instruction address :  0000000000000000.
RPCS3 image base : 0000000000010000."

So after a hour or two trying to understand what happened, I finally had found that all the OpenGL initilizations, even if I activated the "write Color Buffers" parameter were failed because of the "Unimplemented syscall" and the "Unimplemented SPU Thread Options".

So if I haven't implemented the necessary SPU threads, it means that I need to modify the Firmware settings to "manually load selected libraries", and find, somehow, the libraries that I needed to load the rest.
To do so, I decided to load ALL the firmware libraries and see in the log which libraries were loaded and which ones weren't. After that, I deleted one by one the libraries and kept the ones that, if they were not there, were responsible for error lines. Then I kept these : 

- libgcm_sys.sprx
- liblv2.sprx
- liblv2coredump.sprx
- libad_core.sprx

Note : I recommend you to do the same steps of libraries search and not just add these libraries, you may need different ones for your computer or the game you are trying to boot.

Still, the game cannot be booted, but RPCS3 didn't crash, so I believe that it is significant of an improvement.
I'm adding the log that was the most successful (fith the four upmentionned libraries activated) :


(Redacted console output)




So the only problem here is the fatal error appearing in the last line, with no error before that. I found in the forums that this error is quite common, but I haven't been able to find the source of the problem. 

I opened the debugger to try to find the given location by going in the adress mentioned with it.

Adress (may change for you) : 01d55058
location : 0xfffffffe

So in the address is written to the right side of the window :

Type: class ppu_thread
State: 0x100[PAUSE]
Priority: 1001
Stack: 0xd0001000..0xd0100fff
Joiner: detached
Commands: 37



Registers:
=========
GPR[0] = 0x1
GPR[1] = 0xd0100b10
GPR[2] = 0x1d6fa90
GPR[3] = **# 0xfffffffe**
GPR[4] = 0x0
GPR[5] = 0xffffffff
GPR[6] = 0x12000005e
GPR[7] = 0x6
GPR[8] = 0x0
GPR[9] = 0xfffffffe
GPR[10] = 0x30
GPR[11] = 0x2000005e
GPR[12] = 0x2
GPR[13] = 0x1d95060
GPR[14] = 0x0
GPR[15] = 0x0
GPR[16] = 0x0
GPR[17] = 0x0
GPR[18] = 0x0
GPR[19] = 0x20000060
GPR[20] = 0x0
GPR[21] = 0x0
GPR[22] = 0xfffffffe
GPR[23] = 0x2000
GPR[24] = 0x200
GPR[25] = 0x2
GPR[26] = 0xd0100c10
GPR[27] = 0x0
GPR[28] = 0x20000060
GPR[29] = 0x1d67db0
GPR[30] = 0x20000060
GPR[31] = 0x6
FPR[0] = 0
FPR[1] = 0
FPR[2] = 0
FPR[3] = 0
FPR[4] = 0
FPR[5] = 0
FPR[6] = 0
FPR[7] = 0
FPR[8] = 0
FPR[9] = 0
FPR[10] = 0
FPR[11] = 0
FPR[12] = 0
FPR[13] = 0
FPR[14] = 0
FPR[15] = 0
FPR[16] = 0
FPR[17] = 0
FPR[18] = 0
FPR[19] = 0
FPR[20] = 0
FPR[21] = 0
FPR[22] = 0
FPR[23] = 0
FPR[24] = 0
FPR[25] = 0
FPR[26] = 0
FPR[27] = 0
FPR[28] = 0
FPR[29] = 0
FPR[30] = 0
FPR[31] = 0
VR[0] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[1] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[2] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[3] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[4] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[5] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[6] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[7] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[8] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[9] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[10] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[11] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[12] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[13] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[14] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[15] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[16] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[17] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[18] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[19] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[20] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[21] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[22] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[23] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[24] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[25] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[26] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[27] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[28] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[29] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[30] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
VR[31] = 0x00000000000000000000000000000000 [x: 0 y: 0 z: 0 w: 0]
CR = 0x40002024
LR = 0x1d57324
CTR = 0x0
VRSAVE = 0xffffffff
XER = [CA=0 | OV=0 | SO=0 | CNT=0]
VSCR = [SAT=0 | NJ=1]
FPSCR = [FL=0 | FG=0 | FE=0 | FU=0]

Call stack:
=========
0x01d55058 (0x0) called
> from 0x01d574ac (0x0)
> from 0x01d530c8 (0x0)
> from 0x01d53040 (0x0)



And here is where I cannot understand anything Big Grin 
I never used any debugger and I don't know how to use it.
I put in evidence for you the location given by the fatal error. 

For any smart guy, moderator or developer of th emulator that comes here, I hope I have given enough information for you to deal with ! 
If anyone has a solution or a question for me, don't hesitate to comment here.
This post was last modified: 10-28-2017, 07:58 PM by Ani.


Messages In This Thread
Demon's Souls help for issues - by El-Armandooo - 10-28-2017, 02:41 PM
RE: Demon's Souls help for issues - by Ani - 10-28-2017, 08:01 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)