• Steam recently changed the default privacy settings for all users. This may impact tracking. Ensure your profile has the correct settings by following the guide on our forums.

[WIP] Project StarGatePSP

Hellcat

Contributor
Ohhhh.... when I read StarGate, I thought more like this:
img-91217_sgag_g-r-full.gif


But on topic ;)
What exactely is this going to do?
"Outsource" all INet functions to the PC? Why?

About the "strange thing" you're getting, maybe it's some PSP FW internal voodoo?

/me keeps an eye one this :)
 

NoEffex

Seth's On A Boat.
Ohhhh.... when I read StarGate, I thought more like this:
[qimg]http://ut3.hellcat.net/pictures/img-91217_sgag_g-r-full.gif[/qimg]

But on topic ;)
What exactely is this going to do?
"Outsource" all INet functions to the PC? Why?

About the "strange thing" you're getting, maybe it's some PSP FW internal voodoo?

* Hellcat;101332 keeps an eye one this :)

It's some sort of internal routing. I tried redirecting it to google and it obviously tries to send something. I can log the packets, but it's probably, like you said, voodoo. I'll have to investigate it.

Excuse the ignorance, but could you explain to us noobs what this is? :)

I tried downloading something and it took too long for my tastes. Since the PC can handle usb and sockets faster than the PSP can handle sockets, I decided that I'd hook alllllllllllllllllll of the functions needed to have the PC be doing all of the socket work, and DNS resolving.

Current the DNS resolving is done completely PC-side. The sockets would be done PC-side, but the voodoo is a major cockblock atm. They are technically done PC-side, but not everything works, and I can't test everything because I'm not going to load an eboot every time when I can just load the browser.

Though, the voodoo is called to..like this. 0x140004 is the voodoo.

Code:
Socket 1 (AF_ROUTE)
Socket 2 (AF_ROUTE)
Send 124 bytes to socket 2
Sendto (socket 2) 5 bytes to 0x140004
Failed send, returns -1
Socket 3
Send 124 bytes to socket 3
Sendto (socket 3) 5 bytes to 0x140004

...so on until like 6 which then it creates like 20 sockets until it just says "Failed to connect to server" on the PSP.

Also, my point proven. I named it stargate because it's a gate that's much quicker than doing it the right way.

Before:
beforesg.jpg


After:
aftersg.jpg

 

karnbmx

ceebs. :)
Am I correct by saying that you're connecting your PSP to the internet using your PC as a router?
 

Hellcat

Contributor
What function, from what PRX usually handles that request?
Maybe it'll help to look at the original function to see how it handles this.
Maybe it "fetches" this special/internal (?) address and parses it somehow to set some internal settings.... or whatever.... what are the 5 bytes that get sent? Everytime the same?
 

NoEffex

Seth's On A Boat.
Am I correct by saying that you're connecting your PSP to the internet using your PC as a router?

What function, from what PRX usually handles that request?
Maybe it'll help to look at the original function to see how it handles this.
Maybe it "fetches" this special/internal (?) address and parses it somehow to set some internal settings.... or whatever.... what are the 5 bytes that get sent? Everytime the same?

I take that back, it's 20 bytes, and yes, it's the same.

I don't know what calls it, as it happens during the inits.

Basically, the first 8 bytes vary, as far as I can tell. Nothing has told me otherwise.

Offset 0 = ? Possibly socket type (Argument 1)
Offset 4 - 7 = address location
Offset 8 = 11 Some length?
Offset C = 3 Probably argument 2
Offset 10 = 0 Probably argument 3

So,
0x0 0x000000XX
0x4 0xXXXXXXXX - in_addr_t
0x8 0x00000011
0xC0x00000003
0x10 0x00000000

Here's like 10 of the logged packets. I had to delete two of them because of an error on my part, but they're the same thing.

Download data.tar.gz from Sendspace.com - send big files the easy way

Order now:

Code:
Attempt to resolve some IP, unimportant
Socket 1 created
Socket 2 created
Send 124 bytes to socket 2
Attempt to sendto 20 bytes to socket 2 address 0x140004
Fail with -1
Socket 3 created
Send 124 bytes to socket 3
Attempt to send 20 bytes to socket 3 address 0x140004
Fail with -1
PSP fails

After the 3rd socket, it hits an exception

Exception - Bus error (instr)
Thread ID - 0x055D6217
Th Name - sceHtmlViewerHttp
EPC - 0x00000000
Cause - 0x10000018
BadVAddr - 0x6DDFDC42
Status - 0x00088613
zr:0x00000000 at:0xDEADBEEF v0:0x00000000 v1:0x00000001
a0:0xDEADBEEF a1:0xDEADBEEF a2:0xDEADBEEF a3:0xDEADBEEF
t0:0xDEADBEEF t1:0xDEADBEEF t2:0xDEADBEEF t3:0xDEADBEEF
t4:0xDEADBEEF t5:0xDEADBEEF t6:0xDEADBEEF t7:0xDEADBEEF
s0:0x0862F068 s1:0x08593180 s2:0x00000001 s3:0x085952DC
s4:0x0862FD4C s5:0x0862FBC8 s6:0x02000001 s7:0xDEADBEEF
t8:0xDEADBEEF t9:0xDEADBEEF k0:0x09FD1B00 k1:0x00000000
gp:0x09DA7960 sp:0x09FD1930 fp:0x09FD1AC0 ra:0x00000001

It's gotta be requesting some sort of new data or something (Or even just passing a structure).
 
Top