md500/sneek

Many games black screen on newer revisions of sneek-di

Closed this issue · 55 comments

What steps will reproduce the problem?
1.  update sneek-di to newer revision (103+ or so)
2.  attempt to play games that have been working fine

What is the expected output? What do you see instead?
Many games black screen when being started up, a couple of others will actually 
freeze the disc channel and on a reboot the wii will freeze on the health 
screen before the A button pops up until I delete the diconfig.bin.  There are 
no blinks of any kind.  IOS's definitely aren't the issue because using r102 
almost every game works, and past that the black screening starts.  
Interestingly the black screen isn't always consistent, every now and then a 
game will mysteriously work and then not work again for a while, and some games 
will rarely have any issues starting up.

What revision are you using? With what configuration
(SNEEK/UNEEK/SNEEK+DI)?
r103+ SNEEK-DI

Please provide any additional information below.
Using a 250GB Seagate Freeagent Go, formatted and set up properly (spindown 
disabled, 32k cluster size, etc.).  Additionally a 16GB Sandisk Mini Cruzer 
flash drive demonstrates the same problem.

Original issue reported on code.google.com by NReale3...@gmail.com on 23 Aug 2010 at 2:17

I had a similar issue, and installing older versions of my IOSes got it to work 
again.

Not sure why that would do it, but maybe you should try that.

Original comment by jhoff81@gmail.com on 29 Aug 2010 at 5:20

Thanks, that was one of the things I tried, my IOS's are fairly old as I've 
been updating just by downloading the latest of the system menu and its 
necessary IOS from NUSD.  I tried a variety of versions.  Some games that need 
say IOS 53 would work fine but another game needing the same IOS wouldn't work 
at all.

Original comment by NReale3...@gmail.com on 29 Aug 2010 at 5:24

and what games do not work?

Original comment by urt...@gmail.com on 1 Sep 2010 at 12:07

Wii Sports works maybe 50% of the time, Mario Kart Wii also 50%.  Dead Space: 
Extraction wouldn't work at all, nor would LEGO Harry Potter, or Metroid Prime 
Trilogy.  Wii Play worked maybe 80% of the time, and Mario Party 8 more like 
90% of the time.  I didn't bother installing/trying more games after that.  
Hope that helps and thank you!

Original comment by NReale3...@gmail.com on 1 Sep 2010 at 12:49

I can't reproduce this, I tried a few games and all worked fine (using latest 
svn with SNEEK+DI)

-metroid triology, tried MP3
-sam&max, tried episodes one
-endless ocean 2
-mario kart
-fragile dreams
-sin and punishment 2
-metroid another m
-wii play

Original comment by urt...@gmail.com on 2 Sep 2010 at 8:26

maybe its a hard drive related issue?  I've read on gbatemp a few people with 
black screen issues in the sneek-di thread that I think might be related.  Wish 
I had a gecko to tell you more :(

Original comment by NReale3...@gmail.com on 2 Sep 2010 at 4:37

Theoretically what might cause SNEEK/UNEEK-DI to freeze while attempting to to 
load a game in the disc channel?

Original comment by NReale3...@gmail.com on 3 Sep 2010 at 4:35

I was able to reproduce this - but I'm not quite sure how. I was using r118 
UNEEK+DI without any problems, yet after playing Metroid Other M once with no 
problems the problems described above will now happen every single time that 
game is loaded. The problem persists over r121. I have not tried SNEEK+DI (only 
UNEEK).

I've managed to track down the culprit: the fs module segfaults while 
processing the DVDOpen call made by DVDLowReadDiscID in the di module. This 
happens for me every time Metroid Other M (USA version) is loaded and 
DVDLowReadDiscID is called. So if I select the game from the game list it 
freezes after a few seconds, if the disc was loaded when the Wii was booting it 
freezes at the health screen.

Funnily enough I cannot get this problem to occur with any other games so far...

I'm not quite sure why or how this is happening, but I'm willing to help any 
way possible. I have access to a USB Gecko (which is what I used to track down 
the problem a little more precisely) and know my way around C. Let me know what 
I can do to help out!

Original comment by thuli...@gmail.com on 3 Sep 2010 at 8:09

Yup sounds like my exact problem.  Try an old sneek (I'm using 103 atm).  r121 
does it, 103 runs everything perfect.  I imagine the answer we seek is 
somewhere in the di changes since then

Original comment by NReale3...@gmail.com on 3 Sep 2010 at 9:07

You're definitely onto something, I tried mixed the r103 di.bin with the r121's 
kernel.bin and armboot.bin in SNEEK-DI (I don't think this will work for UNEEK 
as 103 predates UNEEK-DI) and everything runs fine amazingly, so the problem is 
definitely in the di module

Original comment by NReale3...@gmail.com on 3 Sep 2010 at 9:19

I think it has something to do with the way DIGlue in the DI module and the ES 
module work together... DVDOpen() is a call in DIGlue, after all. I'm still not 
quite sure why this is happening though, all the code in that area looks pretty 
failsafe...

Original comment by thuli...@gmail.com on 3 Sep 2010 at 10:21

can you post the USBGeko log of the crash using r121?

Original comment by urt...@gmail.com on 4 Sep 2010 at 3:40

Sure thing. Here's the full log of r121 UNEEK+DI:
- Booting normally with Tetris Deluxe loaded
- After booting to system menu (4.3E, if that matters) loading Metroid Other M 
and crashing

Original comment by thuli...@gmail.com on 4 Sep 2010 at 10:38

Attachments:

[deleted comment]
I did some test and the problem is that your path name is too long.
While testing I found out that only up to 23 chars are supported!

(why 23? the total path i.e. /games/123456789abcdef12345678/ is 31 with string 
end exactly 32, so who knows; maybe two pathes can not be longer than 32 
chars??(normally pathnames can only be 13 chars on the real NAND-FS!))

Original comment by urt...@gmail.com on 4 Sep 2010 at 1:34

  • Changed state: Fixed
I thought so too at first, but unfortunately renaming the folder to for example 
MetroidOM still gives the exact same results. Also, other games using the same 
folder naming scheme work. Plus the fact that this exact configuration worked 
before... (so it's not a bad dump or anything)

What could be causing FS to crash in kernel code when DVDOpen is called, I 
wonder? 
Testing shows that it definately crashes somewhere during that call - it never 
returns, at least. Is there a way to hook a debugger over the USB Gecko? That 
would certainly provide some more clarity... if possible.

Original comment by thuli...@gmail.com on 4 Sep 2010 at 1:35

try to remove some folders from the games folder (five or so)

Original comment by urt...@gmail.com on 4 Sep 2010 at 2:15

Interesting! I moved 10 random folders to a different folder from the games 
folder, and the problem magically went away (10 was the first amount I tried).
Is there a limit to the amount of folders that can be in a directory? I went 
from 47 to 37 in this test, in case that matters.

Original comment by thuli...@gmail.com on 4 Sep 2010 at 7:56

sneek definitely has a limitation on folder lengths if any of them had names 
longer than others try giving them shorter names and moving them back, if they 
all just had game ID for names then my comment is of no help.

Original comment by poormexi...@gmail.com on 5 Sep 2010 at 1:47

That did take care of my disc channel freezing, Metroid Prime Trilogy is now 
just black screening on start, made the backup myself, 4.3U on my sneek NAND, 
IOS 35 (the one the game requires according to wit) v3349

Original comment by NReale3...@gmail.com on 5 Sep 2010 at 4:00

I have/had long filenames for all my game folders. It is very well possible 
that Metroid put it over 23 characters per folder average (after all, the 
folder had a 24 character name!). I assume the directory contents are loaded 
into a buffer that is 32*contents_count bytes in length... That would certainly 
explain the crashing during Nintendo code. I'll rename them to just ID's and 
hopefully that will keep this problem away.

I have not been able to get black screens when starting games at all though - 
it looks like this issue is seperated from the freezing problems. I guess all I 
can say is try a different (known-working) NAND, and see if that can boot it. 
If it does, it is a problem with your NAND (IOS's or something else) and not 
with SNEEK. It would definately help if you had a USBGecko and were able to see 
what is going wrong.

Original comment by thuli...@gmail.com on 5 Sep 2010 at 10:38

Yeah I'm gonna tinker more today/tomorrow with different NANDs and UNEEK and 
whatever.  I believed the freezing issue to be related since they seemed to 
happen together.  Anyway great to have your help here!

Original comment by NReale3...@gmail.com on 5 Sep 2010 at 3:41

Hmm weird, with UNEEK-DI and the exact same NAND thanks to the "title fix" we 
realized here everything is running fine.  Thanks again guys!

Original comment by NReale3...@gmail.com on 5 Sep 2010 at 4:46

is everyone else having the problem with home button freezing the wii on other 
M, the game works fine otherwise until home is pressed, it wouldn't be a big 
deal if i didn't keep forgetting home isn't pause.

Original comment by poormexi...@gmail.com on 5 Sep 2010 at 8:15

Yup happens to me too, several other people have mentioned it too

Original comment by NReale3...@gmail.com on 5 Sep 2010 at 8:25

The home thing is a very odd issue, when using an EUR NAND with the USA version 
the home menu worked all the time. But when using an USA NAND with the USA 
version the home menu crashes in-game (it works fine in the menu!).
Consider this issue never to be fixed, as there is nothing failing on SNEEKs 
side.

Original comment by urt...@gmail.com on 5 Sep 2010 at 10:10

Really? On my EUR NAND it crashes in-game as well when the home button is 
pressed... I should note though, this was originally a USA NAND that got 
converted into EUR (EUR system menu and settings installed, but old USA files 
never got deleted).
So, it must be one of the USA files that makes it crash? That makes me think it 
could be possible to work around it...

Anyway, that's a completely different issue, so I don't think this is the place 
to discuss that :) Oh, and there's the looping-at-health-screen issue that some 
people have with this game, too (one of my NANDs has this - none of the others 
though, weirdly enough). Also very odd, since it doesn't seem to really be 
SNEEK-related, just like the home button issue.

Original comment by thuli...@gmail.com on 5 Sep 2010 at 11:40

[deleted comment]
Really? The home menu comes up just fine with my retail disc of "Metroid: Other 
M" with UNEEK. (USA WOD on USA NAND)

Original comment by logan.gba on 6 Sep 2010 at 4:24

I just tried it again (with latest rev121) and I just can't get it to crash 
again.
I tried usa setting and eur setting both let me open the home menu fine.

my advice for now is try the latest revision.

Original comment by urt...@gmail.com on 6 Sep 2010 at 6:34

I just found out what makes Metroid loop the health screen - it is caused by 
having too many savegames on the nand. I tested and know 86 savegames still 
works, but 171 savegames definately makes this issue occur 100% of the time.
Might be related to this bug, since it has to do with big folders?
Crediar: Is there anything that can be done in SNEEK to prevent these "path" 
issues, or is it all Nintendo code causing this?

Original comment by thuli...@gmail.com on 7 Sep 2010 at 12:13

I don't have that many saves on my NAND, no where near it.  I've noticed home 
works when you first start playing but after about 5 minutes it will freeze on 
pressing

Original comment by NReale3...@gmail.com on 7 Sep 2010 at 8:33

[deleted comment]
Any updates on this (black screen on launching games)? Still happens on r151 ...

Original comment by fgfemperor@gmail.com on 14 Feb 2011 at 1:42

I've found that shortening the titles of the game folders did the trick for me

Original comment by NReale3...@gmail.com on 14 Feb 2011 at 5:12

My folders are already 6 char IDs...

Original comment by fgfemperor@gmail.com on 14 Feb 2011 at 5:15

Try a different NAND and/or clean up the NAND you have. I've found many issues 
with blackscreens are caused by *something* being wrong with the NAND dump 
itself. After some tinkering I managed to create a NAND that will run all games 
I wanted it to run...

Provided of course you follow the rules for short directories as mentioned 
above, but it sounds like you already did all that properly.

Original comment by ja...@vietors.com on 14 Feb 2011 at 11:05

I`ve used ModMii to generate a NAND so I take that's as clean as it gets... Is 
there another method to generate a clean NAND? Thanks!

Original comment by fgfemperor@gmail.com on 15 Feb 2011 at 12:13

same isseus here..changing games makes my pointer dissapear.
Also out of region games give black screen or desync UNeek.

Original comment by hielk...@gmail.com on 28 Mar 2011 at 10:04

I posted this under issue 107 a few months back. This solves a lot of random 
problems for me:


I have done a lot of testing. Here is some feedback:

The changes since r125 (sneek menu changes, frame grabber/cheat menu) also 
cause problems returning to wii system menu with many games (e.g. geometry 
wars, sin and punishment, etc). 

I have compiled a version of sneek using r125 as base then adding changes from 
r140,r141,r142 and r144 (basically discarding sneek system menu changes since 
r125). This version is very stable and returning to wii system menu works all 
the time with sneek+DI and uneek+DI. Compatibility with sneek+DI or uneek+DI is 
exactly the same. All games I have tested so far work (including monster hunter 
tri).

I have only picked up problems with these two games (both in sneek+DI and 
uneek+DI)

1) Metroid other M freezes when home button is pressed (known issue)
2) No more heroes 2 gives an error that it cant write to NAND (copying an empty 
save game solves this problem)

Original comment by betakoopa@gmail.com on 28 Mar 2011 at 4:56

@betakoopa great, how can I test and use it? =)

Original comment by fgfemperor@gmail.com on 28 Mar 2011 at 5:26

Here are the instructions:

1) check out r125


2) get these source files from r140:


/trunk/fs-usb/ff.h  
/trunk/fs-usb/ffconf.h  
/trunk/fs/ffconf.h  

3) get these source files from r141:

/trunk/fs/FS.c  
/trunk/fs/ff.c  
/trunk/fs/main.c    

4) get these source files from r142:

/trunk/fs-usb/FS.c  
/trunk/fs-usb/ff.c  
/trunk/fs-usb/main.c

5) get these source files from r144:    

/trunk/es/ES.c

6) Copy files from step 2,3,4,5 into r125 folder (overwrite existing r125 files)

7) Compile as per normal. I am using system menu 4.3U, 4.2U works just as well.
I did not use ModMii to generate NAND. I just used Showmiiwads and manually 
created the NAND.
You should be able to use ModMii however, it shouldn't make a difference.

This version is very stable, no issues returning to Wii system menu or hanging 
when running 
games using uneek+DI or sneek+DI.

Original comment by betakoopa@gmail.com on 28 Mar 2011 at 7:59

Tried this today, and it is quite stable! I haven't had a black screen or wii 
refusing to turn off/go back to system menu.  However my games list is a little 
weird.  The last item on the list is 6 7 (invalid) with the first game in the 
list refusing to even load disc, and every game below that actually loading the 
previous one on the list (with invalid loading the last game).  Deleting 
diconfig.bin and it makes the same thing

Original comment by NReale3...@gmail.com on 5 Apr 2011 at 4:57

@betakoopa:  I wonder if "The Legend of Zelda: Twilight Princess" works on your 
UNEEK+DI compilation, if so, is there any way you could upload somewhere your 
UNEEK+DI compilation, please ?

Original comment by wilchess...@gmail.com on 23 Apr 2011 at 3:21

@betakoopa did you compile using build_boot2 ? And which flavor did you use? I 
tried SNEEK+DI using your recipe and I only got a black screen =\ I'm gonna try 
and download DevKitARM r24 , because it seems release 33 does not work... WHat 
release are you using?

Original comment by fgfemperor@gmail.com on 27 Jun 2011 at 1:54

the latest sneek/uneek fixed all my black screening problems and shuts off/goes 
back to the wii menu beautifully! I can also confirm fgfemperor the devkitarm 
r33 black screening issue.  I rolled back to r32 and that works fine!

Original comment by NReale3...@gmail.com on 27 Jun 2011 at 2:23

Hmm great, thanks! I'll be testing with r32 then and post back my results!

Original comment by fgfemperor@gmail.com on 27 Jun 2011 at 4:27

Well, I've tried r155 + devkitarm r32 and my wii booted up fine, but the 2 
games I was getting black screen are still doing that: Mario Party 8 and Wii 
Sports Resort =\

Original comment by fgfemperor@gmail.com on 29 Jun 2011 at 6:09

try r156

Original comment by urt...@gmail.com on 9 Jul 2011 at 8:31

Black screen at start up on r158, using both my own builds with r34 and r32 and 
the official builds in the downloads section here.  r155 still works fine for 
me and i haven't tested any in between.  it does seem to be writing the 
channelcache and diconfig properly (including all detected games) but seems to 
stop before the health screen.  There IS video output because my blue no signal 
screen turns black.

Original comment by NReale3...@gmail.com on 13 Jul 2011 at 8:44

Hello,

This is the same for me.
My wii remote is synchronize because the blue light is on but i never see the 
health screen since i update sneek to r158.
Before this version, i was using r154 where it works like a charme.
But i would like to have the r158 because this version have a interesting 
feature.
The di module use only one usb port.

Sorry for my very poor english.

Original comment by mickael....@gmail.com on 14 Jul 2011 at 7:14

Hi there,

I did some testing and it seems that the changes in es/es.c broke things 
between r155 and r156, at least on my black EUR 4.3 Wii with UNEEK+DI.
I compiled everything with devkitARM r32.

r155 from svn: works fine

r156 from svn: hangs before health screen, wiimote in sync, 
diconfig/channelcache gets written

r156 with es/es.c from r155: boots fine, everything working again

r159 with included patch: boots fine, even dumping now seems to works :-)

Try it, maybe it works for you :-)
And big thanks for this great piece of software, Crediar !!


Original comment by lima...@web.de on 17 Jul 2011 at 11:26

Attachments:

r162 worked like a charm with devkitarm r32, with r34 it didn't even get to the 
black screen.  That being said I build my own devkitarm on cygwin using the 
devkitpro buildscripts svn so someone else should verify that.

Original comment by NReale3...@gmail.com on 21 Jul 2011 at 4:28

r172 has fixed all black screening problems for me and compiles nicely on r32 
of devkitarm.  I'll be trying a build with the newest devkitarm at some point 
in the next couple of weeks when I find the time to build it

Original comment by NReale3...@gmail.com on 17 Nov 2011 at 4:29

fixed in r162 & r172

Original comment by urt...@gmail.com on 19 Nov 2011 at 2:33

  • Changed state: Fixed