Comments (9)
Known issue, I have no idea how to fix it or what causes the crash.
from sm64-port.
I forgot to say that the likely reason for this is that, when starting the game, there is a lv2 exception ocurring, which can only be seen on development devices or by someone with UART flag set and UART pins soldered (retails)
from sm64-port.
Game: game exec processID = [0x01010200]
Loading configuration from 'sm64config.txt'
Config file 'sm64config.txt' not found. Creating it.
Saving configuration to 'sm64config.txt'
gfx_ps3_init: set mode 1920x1080
lv2(2): #
lv2(2): #
lv2(2): # SDK version: 192001
lv2(2): # system software version: 4.84 (DEH)
lv2(2): # revision: 50697
gfx_ps3_init: init complete
lv2(2): #
lv2(2): # Lv-2 detected an interrupt(exception) in a user PPU Thread.
lv2(2): #
lv2(2): # Interrupt(exception) Info.
lv2(2): # Type : Data Storage
lv2(2): # SRR0 : 0x00000000000ff62c
lv2(2): # SRR1 : 0x800000000000e032
lv2(2): # DSISR: 0x0000000042000000
lv2(2): # DAR : 0x0000000000000000
lv2(2): # TB : 0x00000000daa72663
lv2(2): # HW Thread #: 0
lv2(2): #
lv2(2): # Backtrace
lv2(2): # 0xfffffffffffffffc
lv2(2): # 0x00000000000ff770
lv2(2): # 0xbadadd0010400ccc
lv2(2): #
lv2(2): # User PPU Thread Info.
lv2(2): # ID : 0x010400cd
lv2(2): # Name : sm64 audio
lv2(2): # Stack addr: 0x00000000d0109000
lv2(2): # Stack size: 0x0000000000010000
lv2(2): # Priority : 1500
lv2(2): # Proc name : /dev_hdd0/game/NINT99999/USRDIR/EBOOT.BIN
lv2(2): # Proc ID : 0x1010200
lv2(2): #
lv2(2): # Register Info.
lv2(2): # LR: 0x0000000000000000 CR:0x00002008
lv2(2): # CTR: 0x0000000000000100
lv2(2): #
lv2(2): # GPR 0: 0x0000000000000000 GPR 1: 0x00000000d0118b60
lv2(2): # GPR 2: 0x000000000023d5f0 GPR 3: 0x0000000000000000
lv2(2): # GPR 4: 0x800000000055fbc0 GPR 5: 0x0000000000000000
lv2(2): # GPR 6: 0x0000000000000000 GPR 7: 0x0000000000000085
lv2(2): # GPR 8: 0x8000000000865000 GPR 9: 0x0000000000000000
lv2(2): # GPR10: 0x0000000000000002 GPR11: 0x0000000000000000
lv2(2): # GPR12: 0x0000000000000001 GPR13: 0x0000000030007fc0
lv2(2): # GPR14: 0x0000000000000000 GPR15: 0x0000000000000000
lv2(2): # GPR16: 0x0000000000000000 GPR17: 0x0000000000000000
lv2(2): # GPR18: 0x0000000000000000 GPR19: 0x0000000000000000
lv2(2): # GPR20: 0x0000000000000000 GPR21: 0x0000000000000000
lv2(2): # GPR22: 0x0000000000000000 GPR23: 0x0000000010e07140
lv2(2): # GPR24: 0x00000000d0118bd0 GPR25: 0x00000000000002ac
lv2(2): # GPR26: 0x0000000000000000 GPR27: 0x0000000000000000
lv2(2): # GPR28: 0x0000000000000000 GPR29: 0x0000000010e07100
lv2(2): # GPR30: 0x000000001031e684 GPR31: 0x0000000000000008
lv2(2): #
lv2(2): # XER: 0x0000000000000000 FPSCR: 0x00002000
lv2(2): #
lv2(2): # FPR 0: 0x0000000000000000 FPR 1: 0x00000010403cd000
lv2(2): # FPR 2: 0x00000010403cd000 FPR 3: 0x00000010403cd000
lv2(2): # FPR 4: 0x00000010403cd000 FPR 5: 0x00000010403cd000
lv2(2): # FPR 6: 0x00000010403cd000 FPR 7: 0x00000010403cd000
lv2(2): # FPR 8: 0x00000010403cd000 FPR 9: 0x00000010403cd000
lv2(2): # FPR10: 0x0000000000000000 FPR11: 0x3f00000000000000
lv2(2): # FPR12: 0x3f00000000000000 FPR13: 0x00000010403cd000
lv2(2): # FPR14: 0x00000010403cd000 FPR15: 0x00000010403cd000
lv2(2): # FPR16: 0x00000010403cd000 FPR17: 0x00000010403cd000
lv2(2): # FPR18: 0x00000010403cd000 FPR19: 0x00000010403cd000
lv2(2): # FPR20: 0x00000010403cd000 FPR21: 0x00000010403cd000
lv2(2): # FPR22: 0x00000010403cd000 FPR23: 0x00000010403cd000
lv2(2): # FPR24: 0x00000010403cd000 FPR25: 0x00000010403cd000
lv2(2): # FPR26: 0x00000010403cd000 FPR27: 0x00000010403cd000
lv2(2): # FPR28: 0x00000010403cd000 FPR29: 0x00000010403cd000
lv2(2): # FPR30: 0x00000010403cd000 FPR31: 0x00000010403cd000
lv2(2): #
lv2(2): # PRX Info: 7 PRX in process
lv2(2): # --/--: id-------- path------------------------------ version segments---
lv2(2): # 0/ 7: 0x23000000 [/dev_flash/sys/external/liblv2.sprx] 1. 1 2 segments
lv2(2): # ---/--- base------+filesz----+(mem-file) [flags-----]
lv2(2): # 0/ 2: 0x10fd0000+0x00013b98+0x00000000 [0x00000001]
lv2(2): # 1/ 2: 0x10ff0000+0x00000d94+0x00000888 [0x00000001]
lv2(2): # 1/ 7: 0x23000c00 [/dev_flash/sys/external/libsysmodule.sprx] 1. 1 2 segments
lv2(2): # ---/--- base------+filesz----+(mem-file) [flags-----]
lv2(2): # 0/ 2: 0x11000000+0x00008a68+0x00000000 [0x00000001]
lv2(2): # 1/ 2: 0x11010000+0x000014d8+0x00000034 [0x00000001]
lv2(2): # 2/ 7: 0x23000e00 [/dev_flash/sys/external/libsysutil.sprx] 1. 1 2 segments
lv2(2): # ---/--- base------+filesz----+(mem-file) [flags-----]
lv2(2): # 0/ 2: 0x11020000+0x0001ee60+0x000010a0 [0x00000001]
lv2(2): # 1/ 2: 0x11040000+0x00000874+0x0000cf8c [0x00000001]
lv2(2): # 3/ 7: 0x23002100 [/dev_flash/sys/external/libgcm_sys.sprx] 1. 1 2 segments
lv2(2): # ---/--- base------+filesz----+(mem-file) [flags-----]
lv2(2): # 0/ 2: 0x11050000+0x0000f9e8+0x00000000 [0x00000001]
lv2(2): # 1/ 2: 0x11060000+0x00000ab8+0x00002858 [0x00000001]
lv2(2): # 4/ 7: 0x23002200 [/dev_flash/sys/external/libaudio.sprx] 1. 1 2 segments
lv2(2): # ---/--- base------+filesz----+(mem-file) [flags-----]
lv2(2): # 0/ 2: 0x11070000+0x000057e0+0x00000000 [0x00000001]
lv2(2): # 1/ 2: 0x11080000+0x00000358+0x000006d0 [0x00000001]
lv2(2): # 5/ 7: 0x23002300 [/dev_flash/sys/external/libio.sprx] 1. 1 2 segments
lv2(2): # ---/--- base------+filesz----+(mem-file) [flags-----]
lv2(2): # 0/ 2: 0x11090000+0x0000ccf0+0x00000000 [0x00000001]
lv2(2): # 1/ 2: 0x110a0000+0x00000f10+0x00000038 [0x00000001]
lv2(2): # 6/ 7: 0x23002400 [/dev_flash/sys/external/libsre.sprx] 1. 1 2 segments
lv2(2): # ---/--- base------+filesz----+(mem-file) [flags-----]
lv2(2): # 0/ 2: 0x110b0000+0x0002e000+0x00002000 [0x00000001]
lv2(2): # 1/ 2: 0x110e0000+0x00003fe0+0x00000360 [0x00000001]
lv2(2): #
lv2(2): # Continue... (Lv-2 is still running.)
lv2(2): #
from sm64-port.
That's interesting, thanks for the info. However I got absolutely no idea what could be causing it to happen and all the useful info I can get out of that exception log is that it happens in the audio thread.
from sm64-port.
For some reason the exit callback isn't being triggered upon exiting through ps button. I suppose the main thread is too busy to check any of lv2's exit signals. (Lv2 detects this as a hang and restarts). We can however force it to check with sysUtilCheckCallback.
Something like this in pc_main.c
will work.
while (1) {
wm_api->main_loop(produce_one_frame);
sysUtilCheckCallback();
}
from sm64-port.
Thanks, I added that in 64c20f2. Can't test on a real PS3, but on RPCS3 the "Send exit cmd" button now kills the game properly.
from sm64-port.
will ask one of my testers and report back. thanks @OsirizX ! and thanks for the commit @fgsfdsfgs :)
from sm64-port.
RoxanneToday at 7:34 PM
XMB still flickers
but quitting works @zecoxao
from sm64-port.
seems to work fine. i suppose we can close this
from sm64-port.
Related Issues (20)
- PS1 port HOT 11
- [Feature Request, DOS] Support joysticks
- Instructions for Compiling PS3 port in Win10 environment fails to build Docker image HOT 2
- Working ps2 elf HOT 38
- [PS2] Is there a way to render in 240p? HOT 6
- Problems Building the DOS version manually HOT 2
- xbox port, no sound. HOT 1
- PS2 Version HOT 24
- PS2 Verison: Not saving HOT 5
- [PS2] Experimenting with native 720p support - is it possible? HOT 3
- [Software] Texture glitch with transparent ghosts HOT 10
- [PS2] Russian translation HOT 2
- [PS2] ELF not recognized HOT 7
- SM64 port not loading from PS2 HDD OSD. HOT 2
- PS2 port build error HOT 1
- text broken in ps2 europe version
- [PS2] movement is only 8 directional
- SM64 Port PS2 Not working with MX4SIO HOT 4
- PS3 build error
- [PS2] [QUESTION] Could this port be made to run in 240p? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sm64-port.