Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Three Kingdom 9 PK failed to start #3167

Closed
dbz400 opened this issue Aug 14, 2013 · 15 comments
Closed

Three Kingdom 9 PK failed to start #3167

dbz400 opened this issue Aug 14, 2013 · 15 comments

Comments

@dbz400
Copy link
Contributor

dbz400 commented Aug 14, 2013

It failed to pass the 'Now Loading' at the very beginning when start . Last working build is 1173 .

@unknownbrackets
Copy link
Collaborator

Which 1174 is broken?
v0.8.1-1174-ge7c7c5b
v0.8.1-1174-gc2a86d6
v0.8.1-1174-gc067c48

Is it affected by "multithreaded" being enabled?

-[Unknown]

@dbz400
Copy link
Contributor Author

dbz400 commented Aug 14, 2013

Let me check which build above .I'm using default setting to test it and multihreaded should be off .

@dbz400
Copy link
Contributor Author

dbz400 commented Aug 14, 2013

@unknownbrackets . Confirmed .It is affected by ScheduleEvent(GPU_EVENT_PROCESS_QUEUE);

Comment out is fine for Outrun and Three Kingdom 9 PK

@unknownbrackets
Copy link
Collaborator

I think it's very interesting that there are pending display lists at this time. It'd be great to know what the state of the first list in dlQueue is when there's a pending list at that point.

-[Unknown]

@dbz400
Copy link
Contributor Author

dbz400 commented Aug 14, 2013

Humm just wonder how to check it , may be i can get it from that two games .

@unknownbrackets
Copy link
Collaborator

if (!dlQueue.empty())
{
   int firstListID = *(dlQueue.begin());
   NOTICE_LOG(HLE, "Pending list with state = %d", dls[firstListID].state);
}

Or similar to that...

-[Unknown]

hrydgard added a commit that referenced this issue Aug 14, 2013
Temporary fix issue #3167 in non-multithread mode
@dbz400
Copy link
Contributor Author

dbz400 commented Aug 14, 2013

Here. state = 2 (Three Kingdom 9 PK)

47:28:728 I[HLE]: HLE\sceKernelThread.cpp:1986 sceKernelStartThread(thread=384, argSize=4, argPtr=09fa9250)
47:28:728 I[ME]: HLE\sceMpeg.cpp:292 Stream offset: 2048, Stream size: 0x88800
47:28:728 I[ME]: HLE\sceMpeg.cpp:293 First timestamp: 90000, Last timestamp: 633543
47:28:750 I[HLE]: HLE\sceKernelThread.cpp:2090 sceKernelExitThread(0)
47:28:750 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2
47:28:756 idle0 I[HLE]: GLES\Framebuffer.cpp:1221 Destroying FBO for 00000000 : 480 x 272 x 3
47:28:756 idle0 I[HLE]: GLES\Framebuffer.cpp:1221 Destroying FBO for 00088000 : 480 x 272 x 3
47:28:768 user_main I[HLE]: GLES\Framebuffer.cpp:568 Creating FBO for 00088000 : 480 x 272 x 3
47:28:768 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2
47:28:808 user_main I[HLE]: GLES\Framebuffer.cpp:568 Creating FBO for 00000000 : 480 x 272 x 3
47:28:808 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2
47:28:825 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2
47:28:841 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2

@unknownbrackets
Copy link
Collaborator

2 is PSP_GE_DL_STATE_RUNNING. That's strange. That's with multithreaded off?

PSP_GE_DL_STATE_RUNNING should in other words mean stalled in that case. It shouldn't be possible for running the list to change things...

-[Unknown]

@dbz400
Copy link
Contributor Author

dbz400 commented Aug 15, 2013

Yep , it is state =2 when multithread OFF .Both appear in Outrun and Three Kingdom 9 PK

@unknownbrackets
Copy link
Collaborator

Okay. Then, what about .pc and .stall? Do they match? If yes, then I really don't get it.

-[Unknown]

@dbz400
Copy link
Contributor Author

dbz400 commented Aug 16, 2013

Here . Multithread OFF

14:19:606 user_main I[HLE]: Util\BlockAllocator.cpp:363 Block: 09fffc00 - 0a000000 size 00000400 taken=0 tag=stack/root
14:19:697 user_main I[HLE]: HLE\sceGe.cpp:500 sceGeEdramSetAddrTranslation(1024)
14:19:700 user_main I[HLE]: HLE\scePower.cpp:243 scePowerSetClockFrequency(333,333,166)
14:19:731 user_main I[HLE]: HLE\scePower.cpp:243 scePowerSetClockFrequency(222,222,111)
14:19:766 user_main I[HLE]: GLES\Framebuffer.cpp:573 Creating FBO for 00000000 : 480 x 272 x 3
14:19:767 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899824, stall = 0
14:19:781 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851192, stall = 0
14:19:833 user_main I[HLE]: GLES\Framebuffer.cpp:573 Creating FBO for 00088000 : 480 x 272 x 3
14:19:833 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899768, stall = 0
14:19:848 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851192, stall = 0
14:19:864 user_main I[HLE]: HLE\sceAtrac.cpp:1295 sceAtracReinit(2, 2)
14:19:864 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 300=sceKernelCreateThread(name=, entry=08af2f24, prio=10, stacksize=4096
14:19:864 user_main I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=300, argSize=4, argPtr=09fff4f0)
14:19:864 user_main I[HLE]: HLE\sceSas.cpp:89 sceSasInit(09f6bc80, 512, 32, 0, 44100)
14:19:865 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 313=sceKernelCreateThread(name=, entry=08af9420, prio=12, stacksize=4096
14:19:865 user_main I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=313, argSize=4, argPtr=09fff4d4)
14:19:865 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 314=sceKernelCreateThread(name=, entry=08af92e8, prio=11, stacksize=1433
14:19:865 user_main I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=314, argSize=4, argPtr=09fff4d4)
14:19:866 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 333=sceKernelCreateThread(name=, entry=08af92e8, prio=11, stacksize=1433
14:19:866 user_main I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=333, argSize=4, argPtr=09fff4a4)
14:19:866 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 335=sceKernelCreateThread(name=, entry=08af92e8, prio=11, stacksize=1433
14:19:866 user_main I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=335, argSize=4, argPtr=09fff4a4)
14:19:866 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 337=sceKernelCreateThread(name=, entry=08af92e8, prio=11, stacksize=1433
14:19:866 user_main I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=337, argSize=4, argPtr=09fff4a4)
14:19:866 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 339=sceKernelCreateThread(name=, entry=08af92e8, prio=11, stacksize=1433
14:19:866 user_main I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=339, argSize=4, argPtr=09fff4a4)
14:19:869 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899768, stall = 0
14:19:898 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851192, stall = 0
14:19:900 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899768, stall = 0
14:19:969 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851192, stall = 0
14:20:001 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899768, stall = 0
14:20:036 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851192, stall = 0
14:20:074 user_main I[HLE]: HLE\sceMpeg.cpp:347 sceMpegInit()
14:20:080 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899768, stall = 0
14:20:102 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851192, stall = 0
14:20:104 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899768, stall = 0
14:20:171 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851192, stall = 0
14:20:207 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899768, stall = 0
14:20:238 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149850840, stall = 0
14:20:272 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899416, stall = 0
14:20:277 user_main I[HLE]: FileSystems\DirectoryFileSystem.cpp:165 Actually opening E:\ppsspp-master\memstick\PSP\SAVEDATA\ULJM0
NG
14:20:286 user_main I[HLE]: FileSystems\DirectoryFileSystem.cpp:165 Actually opening E:\ppsspp-master\memstick\PSP\SAVEDATA\ULJM0
FO
14:20:291 user_main I[HLE]: Dialog\PSPSaveDialog.cpp:58 sceUtilitySavedataInitStart(0999c640)
14:20:291 user_main I[HLE]: Dialog\PSPSaveDialog.cpp:59 Mode: 0
14:20:307 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149867280, stall = 0
14:20:340 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150915856, stall = 0
14:20:340 user_main I[HLE]: Dialog\SavedataParam.cpp:470 Loading file with size 204800 in ms0:/PSP/SAVEDATA/ULJM05842SYSTEM/SAVEF
14:20:340 user_main I[HLE]: FileSystems\DirectoryFileSystem.cpp:165 Actually opening E:\ppsspp-master\memstick\PSP\SAVEDATA\ULJM0
E.BIN
14:20:342 user_main I[HLE]: FileSystems\DirectoryFileSystem.cpp:165 Actually opening E:\ppsspp-master\memstick\PSP\SAVEDATA\ULJM0
FO
14:20:342 user_main I[HLE]: FileSystems\DirectoryFileSystem.cpp:165 Actually opening E:\ppsspp-master\memstick\PSP\SAVEDATA\ULJM0
FO
14:20:373 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149867280, stall = 0
14:20:407 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150915856, stall = 0
14:20:442 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149850840, stall = 0
14:20:473 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:20:473 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851132, stall = 0
14:20:541 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:20:575 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851132, stall = 0
14:20:607 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:20:641 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851132, stall = 0
14:20:675 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:20:708 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851132, stall = 0
14:20:740 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:20:774 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851132, stall = 0
14:20:808 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:20:840 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851132, stall = 0
14:20:874 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:20:908 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851132, stall = 0
14:20:940 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:20:974 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851132, stall = 0
14:21:008 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899708, stall = 0
14:21:041 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851252, stall = 0
14:21:073 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899828, stall = 0
14:21:107 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149851252, stall = 0
14:21:141 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899660, stall = 0
14:21:143 user_main W[HLE]: e:\ppsspp-master\core\hle\sceKernel.h:454 Kernel: Bad object handle 0 (00000000)
14:21:143 user_main W[HLE]: HLE\sceKernelSemaphore.cpp:469 sceKernelWaitSema: Trying to wait for invalid semaphore 0
14:21:143 user_main W[HLE]: e:\ppsspp-master\core\hle\sceKernel.h:454 Kernel: Bad object handle 0 (00000000)
14:21:143 user_main W[HLE]: HLE\sceKernelSemaphore.cpp:390 sceKernelSignalSema : Trying to signal invalid semaphore 0
14:21:143 user_main I[HLE]: HLE\sceMpeg.cpp:425 0989bfa0=sceMpegCreate(09f6ba30, 0989bf70, 65536, 09f6ba38, 512, 0, 0)
14:21:173 user_main I[HLE]: HLE\sceMpeg.cpp:534 sceMpegRegistStream(09f6ba30, 0, 0)
14:21:173 user_main I[HLE]: HLE\sceMpeg.cpp:534 sceMpegRegistStream(09f6ba30, 1, 0)
14:21:173 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 346=sceKernelCreateThread(name=, entry=08ae9474, prio=3d, stacksize=4096
14:21:173 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 351=sceKernelCreateThread(name=, entry=08aebde4, prio=3e, stacksize=4096
14:21:173 user_main E[HLE]: HLE\sceMpeg.cpp:1285 UNIMPL sceMpegAvcInitYCbCr(09f6ba30, 1, 480, 272, 098b88b0)
14:21:173 user_main E[HLE]: HLE\sceMpeg.cpp:1285 UNIMPL sceMpegAvcInitYCbCr(09f6ba30, 1, 480, 272, 098e8630)
14:21:173 user_main E[HLE]: HLE\sceMpeg.cpp:1285 UNIMPL sceMpegAvcInitYCbCr(09f6ba30, 1, 480, 272, 099183b0)
14:21:173 user_main E[HLE]: HLE\sceMpeg.cpp:1285 UNIMPL sceMpegAvcInitYCbCr(09f6ba30, 1, 480, 272, 09948130)
14:21:174 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 354=sceKernelCreateThread(name=, entry=08ae8d04, prio=41, stacksize=4096
14:21:174 user_main I[HLE]: HLE\sceKernelThread.cpp:1932 356=sceKernelCreateThread(name=, entry=08aea8e8, prio=3f, stacksize=4096
14:21:190 user_main I[ME]: HLE\sceMpeg.cpp:292 Stream offset: 2048, Stream size: 0x88800
14:21:190 user_main I[ME]: HLE\sceMpeg.cpp:293 First timestamp: 90000, Last timestamp: 633543
14:21:190 user_main I[ME]: HLE\sceMpeg.cpp:292 Stream offset: 2048, Stream size: 0x88800
14:21:190 user_main I[ME]: HLE\sceMpeg.cpp:293 First timestamp: 90000, Last timestamp: 633543
14:21:194 user_main I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=356, argSize=4, argPtr=09fff4c0)
14:21:194 I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=346, argSize=4, argPtr=09fa9250)
14:21:194 I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=351, argSize=4, argPtr=09fa9250)
14:21:194 I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=354, argSize=4, argPtr=09fa9250)
14:21:195 I[ME]: HLE\sceMpeg.cpp:292 Stream offset: 2048, Stream size: 0x88800
14:21:195 I[ME]: HLE\sceMpeg.cpp:293 First timestamp: 90000, Last timestamp: 633543
14:21:212 I[HLE]: HLE\sceKernelThread.cpp:2079 sceKernelExitThread(0)
14:21:212 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149850840, stall = 0
14:21:213 idle0 I[HLE]: GLES\Framebuffer.cpp:1232 Destroying FBO for 00000000 : 480 x 272 x 3
14:21:213 idle0 I[HLE]: GLES\Framebuffer.cpp:1232 Destroying FBO for 00088000 : 480 x 272 x 3
14:21:216 user_main I[HLE]: GLES\Framebuffer.cpp:573 Creating FBO for 00088000 : 480 x 272 x 3
14:21:216 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899416, stall = 0
14:21:266 user_main I[HLE]: GLES\Framebuffer.cpp:573 Creating FBO for 00000000 : 480 x 272 x 3
14:21:266 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149850840, stall = 0
14:21:284 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899488, stall = 0
14:21:298 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149850916, stall = 0
14:21:334 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899492, stall = 0
14:21:376 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 149850916, stall = 0
14:21:399 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899492, stall = 0

@dbz400
Copy link
Contributor Author

dbz400 commented Aug 16, 2013

If multithread ON

17:07:474 HLE\sceKernelModule.cpp:988 I[LOAD]: Module entry: 08ad1160
17:07:475 root N[HLE]: GLES\Framebuffer.cpp:217 GPU Vendor : NVIDIA Corporation
17:07:588 root N[BOOT]: EmuScreen.cpp:105 Loading E:\psp\Three Kingdom 9 PK.cso...
17:07:588 root I[HLE]: HLE\sceKernelThread.cpp:1932 276=sceKernelCreateThread(name=user_main, entry=08ad1280, prio=20, stacksize=2621
17:07:588 root I[HLE]: HLE\sceKernelThread.cpp:1975 sceKernelStartThread(thread=276, argSize=33, argPtr=09fffe00)
17:07:588 root I[HLE]: HLE\sceKernelThread.cpp:2061 __KernelReturnFromThread: 0
17:07:588 user_main I[HLE]: Util\BlockAllocator.cpp:359 -----------
17:07:588 user_main I[HLE]: Util\BlockAllocator.cpp:363 Block: 08800000 - 08804000 size 00004000 taken=0 tag=(untitled)
17:07:588 user_main I[HLE]: Util\BlockAllocator.cpp:363 Block: 08804000 - 09f6cb00 size 01768b00 taken=1 tag=ELF
17:07:588 user_main I[HLE]: Util\BlockAllocator.cpp:363 Block: 09f6cb00 - 09f7d000 size 00010500 taken=1 tag=UserSbrk
17:07:588 user_main I[HLE]: Util\BlockAllocator.cpp:363 Block: 09f7d000 - 09fbfc00 size 00042c00 taken=0 tag=(untitled)
17:07:588 user_main I[HLE]: Util\BlockAllocator.cpp:363 Block: 09fbfc00 - 09fffc00 size 00040000 taken=1 tag=stack/user_main
17:07:588 user_main I[HLE]: Util\BlockAllocator.cpp:363 Block: 09fffc00 - 0a000000 size 00000400 taken=0 tag=stack/root
17:07:680 user_main I[HLE]: HLE\sceGe.cpp:500 sceGeEdramSetAddrTranslation(1024)
17:07:682 user_main I[HLE]: HLE\scePower.cpp:243 scePowerSetClockFrequency(333,333,166)
17:07:714 user_main I[HLE]: HLE\scePower.cpp:243 scePowerSetClockFrequency(222,222,111)
17:07:748 user_main N[HLE]: GPUCommon.cpp:53 Pending list with state = 2, pc= 150899384, stall = 0
17:07:749 user_main I[HLE]: GLES\Framebuffer.cpp:573 Creating FBO for 00000000 : 480 x 272 x 3

@unknownbrackets
Copy link
Collaborator

Well, that's strange. How is it getting a pending list without a stall address, but not running it? Generally speaking it always runs lists after it modifies them...

And for it to be RUNNING too, that implies it must've been stalled at some point, unstalled, and then not run?

-[Unknown]

@dbz400
Copy link
Contributor Author

dbz400 commented Aug 16, 2013

@unknownbrackets , FYI .I put the following in DrawSync only.

if (!dlQueue.empty())
{
int firstListID = *(dlQueue.begin());
NOTICE_LOG(HLE, "Pending list with state = %d", dls[firstListID].state);
}

@dbz400
Copy link
Contributor Author

dbz400 commented Sep 9, 2013

This issue should be resolved lately .Closed.

@dbz400 dbz400 closed this as completed Sep 9, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants