Hacking Unoffical -- USBloader_GX(S)

  • Thread starter Thread starter Sketter
  • Start date Start date
  • Views Views 68,143
  • Replies Replies 321
This topic again ? When is the source going to be shared if ever ? I've put in serious time on this and got nowhere. Everything you need is not here and unless you know what to ask for, it will never come about.

Good luck,

ChokeD
 
Hi,
I compiled sneek revision 72 with giantpune patch and USB+DI Works.
I spent about 10-15 hours to change usbloader-GX source following all the pune's recommendations and now I have a usbloader-GX that load games from puneek. Awesome! Thanks to giantpune
bow.gif


But now I have a problem that I cannot fix.

When usbloader-GX start "SDCard_Init()" fail mounting SD and loader configuration fail too. But after the GUI is started if I click on SDCard button the configuration loads regularly.
I cannot track the bug. I am going crazy. Why before gui loading SD do not works, but after gui loading works?
Someone have some advice?

Thanks

Note: I am using a nand dump 4.1 cleaned and updated to 4.2 from sneek.
 
i had that same bug too. the reason is because loading IOS from sneek is slower than from nand. if you look at the usb gecko logs, the app tries to start the sd card before the sd module of the IOS has loaded. just put sleep( 1 ); as the very first line in main() and also put it right after the IOS_Reload() before starting a game.

1 is long enough for my HDD. if you have a slower drive, you may need longer.
 
patrash said:
Hi,
I compiled sneek revision 72 with giantpune patch and USB+DI Works.
I spent about 10-15 hours to change usbloader-GX source following all the pune's recommendations and now I have a usbloader-GX that load games from puneek. Awesome! Thanks to giantpune
bow.gif


But now I have a problem that I cannot fix.

When usbloader-GX start "SDCard_Init()" fail mounting SD and loader configuration fail too. But after the GUI is started if I click on SDCard button the configuration loads regularly.
I cannot track the bug. I am going crazy. Why before gui loading SD do not works, but after gui loading works?
Someone have some advice?

Thanks

Note: I am using a nand dump 4.1 cleaned and updated to 4.2 from sneek.
Any chance you'd post the USB-GX compile?
 
giantpune said:
i had that same bug too. the reason is because loading IOS from sneek is slower than from nand. if you look at the usb gecko logs, the app tries to start the sd card before the sd module of the IOS has loaded. just put sleep( 1 ); as the very first line in main() and also put it right after the IOS_Reload() before starting a game.

1 is long enough for my HDD. if you have a slower drive, you may need longer.


Ok, with sleep(1) works!! Thanks!

Sorry but I do not have usb gecko yet. I just ordered on internet. I think it will arrive in the weekend.
My debug today is printf and WindowsPrompt only.

Best regards
 
patrash said:
giantpune said:
i had that same bug too. the reason is because loading IOS from sneek is slower than from nand. if you look at the usb gecko logs, the app tries to start the sd card before the sd module of the IOS has loaded. just put sleep( 1 ); as the very first line in main() and also put it right after the IOS_Reload() before starting a game.

1 is long enough for my HDD. if you have a slower drive, you may need longer.


Ok, with sleep(1) works!! Thanks!

Sorry but I do not have usb gecko yet. I just ordered on internet. I think it will arrive in the weekend.
My debug today is printf and WindowsPrompt only.

Best regards
Where did you order your USB Gecko from?
 
patrash said:
I compiled sneek revision 72 with giantpune patch and USB+DI Works.
I spent about 10-15 hours to change usbloader-GX source following all the pune's recommendations and now I have a usbloader-GX that load games from puneek. Awesome! Thanks to giantpune
bow.gif

[snip]

Congrats
toot.gif


Unfortunately it'll be some time until I can find 10-15 spare hours
cry.gif
 
Could somebody port the fst.bin rebuilder to windows? All it needs is a way to differentiate between a folder and a file because windows doesn't support dirent.d_type.
 
Pune, did I do something wrong when compiling? SNEEK just seems to panic on a thread when booting, for me. I compiled with DKA r24 and checked out r72 of the SNEEK svn, then dropped your modified source files right into where they belong.

MEM: enabling MMU
MEM: init done
IOSflags: 0000ff22 00000000 00000000
00000000 00000000 cafebabe
Interrupts initialized
crypto support initialized
NAND initialized.
found valid boot2 blockmap at page 0xbf, submap 0, generation 2
found valid boot2 blockmap at page 0x1bf, submap 0, generation 3
boot2 blocks: 01 02 03 04 05 06 07
boot2 title key: 180d129b36dbc2b9094f77a34e7000f6
boot2 content size: 0x23f71 (padded: 0x23f80)
boot2 copy 0 loaded to 0x13f01300
Initializing IPC...
Initializing SDHC...
sdhc_bus_power(1)
sdhc_bus_clock(25000)
CID: mid=03 name='SDSD04G' prv=128.8 psn=003bf21d mdt=9/2008
csd: 00 40 0e 00 32 5b 59 00 00 1d 8a 7f 80 0a 40 40
sdmmc: sdhc mode, c_size=7562, card size = 3872256k
sdmmc_select: resp=700
Mounting SD...
booting boot2 with title 00000001-00000002
f_read( 0xfffe2e10, 0x11000000, 165364, 165364):0
Found SWI v70 offset @1101e7a8
Found Syscall @11026318
HdrSize:0010 LdrSize:0584
boot2 is at 0x11000010
Shutting down IPC...
Shutting down interrupts...
Shutting down caches and MMU...
Vectoring to 0x11000010...
Updated DDR settings in lomem for current map
load segment @ [20000000, 20007354] (29524 bytes)
load segment @ [20008000, 200082ac] (684 bytes)
load segment @ [20009000, 2004f9ec] (289260 bytes)
load segment @ [20100000, 2010b314] (45844 bytes)
load segment @ [2010c000, 2010c160] (352 bytes)
load segment @ [2010d000, 2011162c] (17964 bytes)
priority = 88, stackSize = 2048, stackPtr = 2004f1ec
starting thread entry: 0x20000000
priority = 121, stackSize = 16384, stackPtr = 2010d5a0
starting thread entry: 0x20100000
$IOSVersion: IOSP: 11/24/08 15:39:12 64M $
$IOSVersion: FFS-SD: Apr 13 2010 12:18:16 64M Release$
Thread 0 [fffe0000]: (ready)
CPSR: 000000df, IRQ: D, FIQ: D, mode: SYS
Pri: 0, PID: 0 (kernel)
R00-03: ffff9760 fffe0000 000000df ffff23b4
R04-07: fffe0000 00000000 00000000 00000000
R08-11: 00000001 0000000a 00004000 0000000a
R12-15: fffe0254 13ac039c ffff0813 ffff23e0
Syscall stack: 13ac0400 (236/1024 used)

Thread 1 [fffe00b0]: (waiting)
CPSR: 800000df, IRQ: D, FIQ: D, mode: SYS
Pri: 126, PID: 0 (kernel)
R00-03: fffe44dc fffe00b0 800000df fffe00b0
R04-07: fffe44dc 00000004 00000000 ffff9e80
R08-11: 00000000 00000000 ffff9e80 00000000
R12-15: 00000000 13ac07a8 ffff298d ffff23e0
Syscall stack: 13ac0800 (92/1024 used)

Thread 2 [fffe0160]: (waiting)
CPSR: 800000df, IRQ: D, FIQ: D, mode: SYS
Pri: 126, PID: 0 (kernel)
R00-03: fffe4514 fffe0160 800000df fffe0160
R04-07: fffe4514 00000004 00000000 ffff9e80
R08-11: 13ac0ba4 00000000 ffff9e80 00000000
R12-15: 00000000 13ac0b64 ffff298d ffff23e0
Syscall stack: 13ac0c00 (164/1024 used)

Thread 3 [fffe0210]: (waiting)
CPSR: 800000df, IRQ: D, FIQ: D, mode: SYS
Pri: 126, PID: 0 (kernel)
R00-03: fffe454c fffe0210 800000df fffe0210
R04-07: fffe454c 00000004 00000000 ffff9e80
R08-11: 13ac0f94 00000000 ffff9e80 13ac0f94
R12-15: 00000000 13ac0f50 ffff298d ffff23e0
Syscall stack: 13ac1000 (184/1024 used)

Thread 4 [fffe02c0]: (ready)
CPSR: 000000df, IRQ: D, FIQ: D, mode: SYS
Pri: 64, PID: 0 (kernel)
R00-03: ffff9760 fffe02c0 000000df ffff23b4
R04-07: fffe02c0 00000040 00000000 00000000
R08-11: 00000000 00000000 00000000 00000000
R12-15: 00000000 13ac13ac ffff0813 ffff23e0
Syscall stack: 2004f98c (88/1024 used)

Thread 5 [fffe0370]: (faulted)
CPSR: 60000010, IRQ: E, FIQ: E, mode: USR
Pri: 88, PID: 2 (fs)
R00-03: 00000002 00000000 00000000 00000000
R04-07: 00000000 00000000 00000000 00000000
R08-11: 00000000 00000000 00000000 00000000
R12-15: 00000000 2004f1ec 1386a8a0 200005f8
Syscall stack: 13ac1800 (96/1024 used)

Thread 6 [fffe0420]: (ready)
CPSR: 000000df, IRQ: D, FIQ: D, mode: SYS
Pri: 80, PID: 1 (eticket)
R00-03: ffff9760 fffe0420 000000df ffff23b4
R04-07: fffe0420 00000050 00000000 00000000
R08-11: 13ac1c00 e6000010 00000009 ffff07b1
R12-15: 00000000 13ac1bec ffff0813 ffff23e0
Syscall stack: 13ac1c00 (24/1024 used)

Panic: abort in thread 0xfffe0370 @ PC 200005f8
DFSR: ff [permission (page)]
IFSR: 0 []
FAR: 0d070038


BootMii v1.1
Copyright © 2008, 2009 Team Twiizers.
All rights reserved. Redistribution or sale is prohibited.
BOOT2 header (@0x10100000):
Header size: 00000010
Loader size: 00003ff0
ELF size: 00000293
Argument: 00000000
ELF at 0x10104000
Trying to mount SD...
CID: mid=03 name='SDSD04G' prv=128.8 psn=003bf21d mdt=9/2008
csd: 00 40 0e 00 32 5b 59 00 00 1d 8a 7f 80 0a 40 40
sdmmc: sdhc mode, c_size=7562, card size = 3872256k
Trying to open SD:/bootmii/armboot.bin
Trying to read ARMBOOT header to 0x10408200
ARMBOOT header (@0x10408200):
Header size: 00000010
Loader size: 000004d0
ELF size: 0000ab8b
Argument: 00000000
Total ARMBOOT size: 0xb06b
Trying to read ARMBOOT to 0x10408200
ARMBOOT read
Setting argument to 0x10100000
Launching ARMBOOT @ 0x10408210

mini loading
Initializing exceptions...
Configuring caches and MMU...
MEM: cleaning up
MEM: unprotecting memory
MEM: mapping sections
MEM: enabling caches
MEM: enabling MMU
MEM: init done
IOSflags: 0000ff22 00000000 00000000
00000000 00000000 cafebabe
Interrupts initialized
crypto support initialized
NAND initialized.
found valid boot2 blockmap at page 0xbf, submap 0, generation 2
found valid boot2 blockmap at page 0x1bf, submap 0, generation 3
boot2 blocks: 01 02 03 04 05 06 07
boot2 title key: 180d129b36dbc2b9094f77a34e7000f6
boot2 content size: 0x23f71 (padded: 0x23f80)
boot2 copy 0 loaded to 0x13f01300
Initializing IPC...
Initializing SDHC...
sdhc_bus_power(1)
sdhc_bus_clock(25000)
CID: mid=03 name='SDSD04G' prv=128.8 psn=003bf21d mdt=9/2008
csd: 00 40 0e 00 32 5b 59 00 00 1d 8a 7f 80 0a 40 40
sdmmc: sdhc mode, c_size=7562, card size = 3872256k
sdmmc_select: resp=700
Mounting SD...
booting boot2 with title 00000001-00000002
f_read( 0xfffe2e10, 0x11000000, 165364, 165364):0
Found SWI v70 offset @1101e7a8
Found Syscall @11026318
HdrSize:0010 LdrSize:0584
boot2 is at 0x11000010
Shutting down IPC...
Shutting down interrupts...
Shutting down caches and MMU...
Vectoring to 0x11000010...
Updated DDR settings in lomem for current map
load segment @ [20000000, 20007354] (29524 bytes)
load segment @ [20008000, 200082ac] (684 bytes)
load segment @ [20009000, 2004f9ec] (289260 bytes)
load segment @ [20100000, 2010b314] (45844 bytes)
load segment @ [2010c000, 2010c160] (352 bytes)
load segment @ [2010d000, 2011162c] (17964 bytes)
priority = 88, stackSize = 2048, stackPtr = 2004f1ec
starting thread entry: 0x20000000
priority = 121, stackSize = 16384, stackPtr = 2010d5a0
starting thread entry: 0x20100000
$IOSVersion: IOSP: 11/24/08 15:39:12 64M $
$IOSVersion: FFS-SD: Apr 13 2010 12:29:52 64M Release$
Thread 0 [fffe0000]: (ready)
CPSR: 000000df, IRQ: D, FIQ: D, mode: SYS
Pri: 0, PID: 0 (kernel)
R00-03: ffff9760 fffe0000 000000df ffff23b4
R04-07: fffe0000 00000000 00000000 00000000
R08-11: 00000001 0000000a 00004000 0000000a
R12-15: fffe0254 13ac039c ffff0813 ffff23e0
Syscall stack: 13ac0400 (236/1024 used)

Thread 1 [fffe00b0]: (waiting)
CPSR: 800000df, IRQ: D, FIQ: D, mode: SYS
Pri: 126, PID: 0 (kernel)
R00-03: fffe44dc fffe00b0 800000df fffe00b0
R04-07: fffe44dc 00000004 00000000 ffff9e80
R08-11: 00000000 00000000 ffff9e80 00000000
R12-15: 00000000 13ac07a8 ffff298d ffff23e0
Syscall stack: 13ac0800 (92/1024 used)

Thread 2 [fffe0160]: (waiting)
CPSR: 800000df, IRQ: D, FIQ: D, mode: SYS
Pri: 126, PID: 0 (kernel)
R00-03: fffe4514 fffe0160 800000df fffe0160
R04-07: fffe4514 00000004 00000000 ffff9e80
R08-11: 13ac0ba4 00000000 ffff9e80 00000000
R12-15: 00000000 13ac0b64 ffff298d ffff23e0
Syscall stack: 13ac0c00 (164/1024 used)

Thread 3 [fffe0210]: (waiting)
CPSR: 800000df, IRQ: D, FIQ: D, mode: SYS
Pri: 126, PID: 0 (kernel)
R00-03: fffe454c fffe0210 800000df fffe0210
R04-07: fffe454c 00000004 00000000 ffff9e80
R08-11: 13ac0f94 00000000 ffff9e80 13ac0f94
R12-15: 00000000 13ac0f50 ffff298d ffff23e0
Syscall stack: 13ac1000 (184/1024 used)

Thread 4 [fffe02c0]: (ready)
CPSR: 000000df, IRQ: D, FIQ: D, mode: SYS
Pri: 64, PID: 0 (kernel)
R00-03: ffff9760 fffe02c0 000000df ffff23b4
R04-07: fffe02c0 00000040 00000000 00000000
R08-11: 00000000 00000000 00000000 00000000
R12-15: 00000000 13ac13ac ffff0813 ffff23e0
Syscall stack: 2004f98c (88/1024 used)

Thread 5 [fffe0370]: (faulted)
CPSR: 60000010, IRQ: E, FIQ: E, mode: USR
Pri: 88, PID: 2 (fs)
R00-03: 00000002 00000000 00000000 00000000
R04-07: 00000000 00000000 00000000 00000000
R08-11: 00000000 00000000 00000000 00000000
R12-15: 00000000 2004f1ec 1386a8a0 200005f8
Syscall stack: 13ac1800 (96/1024 used)

Thread 6 [fffe0420]: (ready)
CPSR: 000000df, IRQ: D, FIQ: D, mode: SYS
Pri: 80, PID: 1 (eticket)
R00-03: ffff9760 fffe0420 000000df ffff23b4
R04-07: fffe0420 00000050 00000000 00000000
R08-11: 13ac1c00 e6000010 00000009 ffff07b1
R12-15: 00000000 13ac1bec ffff0813 ffff23e0
Syscall stack: 13ac1c00 (24/1024 used)

Panic: abort in thread 0xfffe0370 @ PC 200005f8
DFSR: ff [permission (page)]
IFSR: 0 []
FAR: 0d070038

Edit: Seems like I was using the wrong boot2.bin(from the UNEEK generated folder, oops). But now it just hangs after ES:Loaded Module(5):"/shared1/00000046.app", it seems like. I'll wait for a bit.
 
You should only be running IOSKpatch with -u, or with -v as well if you want the debug output. And make sure that you're only using the modified es and fs files to compile the modules.
 
ES:Loaded Module(5):"/shared1/00000046.app really isnt useful information by itself. you need to look at which IOS it is trying to load. That is the same kind of error you get when you try to start a cIOS in sneek. That also can happen if your nand dump is messed up. I've had it happen by removing my drive from my PC while stupid windows was using the delayed cache writing crap.
 
your always supposed to safely remove anyways
tongue.gif
if its still doing stuff and you try to safely remove it it won't let you.
 
thats what this is. in crediar's sneek / uneek, you can either run nand OR disc games from usb, but not both. this is a little change to run everything from usb or sd.
 
giantpune said:
thats what this is. in crediar's sneek / uneek, you can either run nand OR disc games from usb, but not both. this is a little change to run everything from usb or sd.

So basiclly the setup for me would be:

USB HD, Fat32/32k cluster size
*usb:\(nand folders)
*usb:\games\
*usb:\bootmii\

etc

?
 
what breakthrough are you expecting? it already does what i set out to make it do... combine sneek's FS and DI stuff into the USB drive and allow common usb loaders to work to select the game with under 300 lines of code changed.
aside from syncing it to the latest sneek or usb loader SVN, theres not much else to do with it.

i have a wode in the mail, so i was thinking that i might try to get this to read everything from that. then it would allow NTFS & ext formatted drives to be used as nand, and eventually stream the whole nand from a SMB share. but as the thing hasnt even arrived at my house, i have no idea if it will work or what kind of speeds it would bring. its just a pipe dream right now.
 

Site & Scene News

Popular threads in this forum