RE: [Bug(?)] Phantasy Star Portable 2 and the Port Offset Conundrum
(10-19-2016 02:36 PM)AdamN Wrote: Hmm.. there might be another network function i missed and being used by PSP2 that uses port but didn't shift the port number.
Does PSP2 also need Port Offset = 0 on Windows in order to work? or is it only happening on Linux (i don't have the game)
Btw, when using Port Offset = 0 does PSP2 binds port 80? just in case it uses non-adhoc network function that suppose to access HTTP port 80 by default, because as i remember only functions related to adhoc that was shifted by port offset.
I remember there was a game that bind port 80 and was conflicting with my webserver on my PC a game where we rides a dragon (don't remember the title and i haven't tested it with port offset back then)
I can't check if PSP2 binds to port 80 at the moment because of a typhoon, stuck on mobile.
But yes, Windows does need Port Offset = 0 to work as well. Beyond that, Windows will be also be stuck in the lobby and not get into the game.
This also applies to every other platform too including Android.
I placed the status of it in the first post to let everyone know.
So it does seem that PSP2 is using a network function that doesn't pass through the Port Offset.
EDIT: I did some port checking and these are the things that is used while connecting on Port Offset.
On Port Offset 3000
Code:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
PPSSPPSDL 658 0 21u IPv4 1565984 0t0 TCP 127.0.0.7:34803->127.0.0.1:27312 (ESTABLISHED)
PPSSPPSDL 658 0 22u IPv4 1547680 0t0 TCP *:27312 (LISTEN)
PPSSPPSDL 658 0 23u IPv4 1565325 0t0 TCP 127.0.0.1:27312->127.0.0.7:34803 (ESTABLISHED)
PPSSPPSDL 658 0 24u IPv4 1566602 0t0 TCP 127.0.0.7:16001 (LISTEN)
PPSSPPSDL 658 0 25u IPv4 1564563 0t0 TCP 127.0.0.7:3000->127.0.0.7:16009 (ESTABLISHED)
PPSSPPSDL 658 0 26u IPv4 1566604 0t0 TCP 127.0.0.7:15000 (LISTEN)
PPSSPPSDL 658 0 27u IPv4 1564558 0t0 TCP 127.0.0.7:16009 (LISTEN)
PPSSPPSDL 658 0 28u IPv4 1564559 0t0 TCP 127.0.0.7:15039 (LISTEN)
PPSSPPSDL 658 0 29u IPv4 1564560 0t0 TCP 127.0.0.7:16006 (LISTEN)
PPSSPPSDL 658 0 30u IPv4 1564564 0t0 TCP 127.0.0.7:16009->127.0.0.7:3000 (ESTABLISHED)
On Port Offset 0
Code:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
PPSSPPSDL 6910 0 21u IPv4 891627 0t0 TCP *:27312 (LISTEN)
PPSSPPSDL 6910 0 22u IPv4 907154 0t0 TCP 127.0.0.6:42425->127.0.0.1:27312 (ESTABLISHED)
PPSSPPSDL 6910 0 23u IPv4 908402 0t0 TCP 127.0.0.1:27312->127.0.0.6:42425 (ESTABLISHED)
PPSSPPSDL 6910 0 24u IPv4 951272 0t0 TCP 127.0.0.6:13001 (LISTEN)
PPSSPPSDL 6910 0 25u IPv4 952234 0t0 TCP 127.0.0.6:46103->127.0.0.6:13009 (ESTABLISHED)
PPSSPPSDL 6910 0 26u IPv4 951274 0t0 TCP 127.0.0.6:12000 (LISTEN)
PPSSPPSDL 6910 0 27u IPv4 952228 0t0 TCP 127.0.0.6:13009 (LISTEN)
PPSSPPSDL 6910 0 28u IPv4 952229 0t0 TCP 127.0.0.6:12039 (LISTEN)
PPSSPPSDL 6910 0 29u IPv4 952230 0t0 TCP 127.0.0.6:13006 (LISTEN)
PPSSPPSDL 6910 0 30u IPv4 952238 0t0 TCP 127.0.0.6:44677->127.0.0.6:13009 (ESTABLISHED)
PPSSPPSDL 6910 0 31u IPv4 952235 0t0 TCP 127.0.0.6:13009->127.0.0.6:46103 (ESTABLISHED)
PPSSPPSDL 6910 0 32u IPv4 952250 0t0 TCP 127.0.0.6:13009->127.0.0.6:44677 (ESTABLISHED)
PPSSPPSDL 6910 0 33u IPv4 955711 0t0 TCP 127.0.0.6:33831->127.0.0.6:12000 (ESTABLISHED)
PPSSPPSDL 6910 0 34u IPv4 955725 0t0 TCP 127.0.0.6:12000->127.0.0.6:33831 (ESTABLISHED)
Using the Debug Log this is what I get from the Port 3000 one, I removed the un-readable bits:
Code:
38:54:817 user_main I[NET]: HLE/sceNetAdhoc.cpp:2102 sceNetAdhocPtpListen( ,13001,8224,200000,300,5,0)
38:54:818 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,13009,16448,200000,300,0)
38:54:818 user_main I[NET]: HLE/sceNetAdhoc.cpp:2102 sceNetAdhocPtpListen(2,12000,8224,200000,300,5,0)
38:54:853 user_main I[NET]: HLE/sceNetAdhoc.cpp:2102 sceNetAdhocPtpListen( ,13009,8224,200000,300,5,0)
38:54:853 user_main I[NET]: HLE/sceNetAdhoc.cpp:2102 sceNetAdhocPtpListen( ,12039,8224,200000,300,5,0)
38:54:853 user_main I[NET]: HLE/sceNetAdhoc.cpp:2102 sceNetAdhocPtpListen( ,13006,8224,200000,300,5,0)
38:54:853 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,13009,16448,200000,300,0)
38:54:883 user_main I[NET]: HLE/sceNetAdhoc.cpp:2054 sceNetAdhocPtpClose(2,0) at 08cc5914
38:54:884 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,13009,16448,200000,300,0)
38:54:884 user_main I[NET]: HLE/sceNetAdhoc.cpp:1932 sceNetAdhocPtpConnect(2, 0, 00000001) at 08cc55c8
38:54:884 user_main E[NET]: HLE/sceNetAdhoc.cpp:1973 sceNetAdhocPtpConnect[2]: Socket Error (115) to 127.0.0.12:16009
38:54:884 user_main I[NET]: HLE/sceNetAdhoc.cpp:1882 sceNetAdhocPtpAccept[4->7:13009]: Established (127.0.0.12:0)
38:54:886 user_main I[NET]: HLE/sceNetAdhoc.cpp:2279 sceNetAdhocPtpSend[7:13009]: Sent 40 bytes to 0C:0C:0C:0C:0C:0C:0
38:54:886 user_main I[NET]: HLE/sceNetAdhoc.cpp:2279 sceNetAdhocPtpSend[7:13009]: Sent 56 bytes to 0C:0C:0C:0C:0C:0C:0
38:54:931 user_main I[NET]: HLE/sceNetAdhoc.cpp:1932 sceNetAdhocPtpConnect(2, 0, 00000001) at 08cc5e58
38:54:931 user_main I[NET]: HLE/sceNetAdhoc.cpp:1987 sceNetAdhocPtpConnect[2:0]: Already Connected
38:54:931 user_main I[NET]: HLE/sceNetAdhoc.cpp:2367 sceNetAdhocPtpRecv[2:0]: Received 96 bytes from 0C:0C:0C:0C:0C:0C:13009
38:54:963 user_main I[NET]: HLE/sceNetAdhoc.cpp:2279 sceNetAdhocPtpSend[2:0]: Sent 40 bytes to 0C:0C:0C:0C:0C:0C:13009
38:54:963 user_main I[NET]: HLE/sceNetAdhoc.cpp:2279 sceNetAdhocPtpSend[2:0]: Sent 56 bytes to 0C:0C:0C:0C:0C:0C:13009
38:54:963 user_main I[NET]: HLE/sceNetAdhoc.cpp:2367 sceNetAdhocPtpRecv[7:13009]: Received 96 bytes from 0C:0C:0C:0C:0C:0C:0
38:55:963 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:00:066 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:04:170 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:08:272 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:12:376 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:16:479 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:20:582 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:24:685 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:28:788 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:32:891 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:36:995 user_main I[NET]: HLE/sceNetAdhoc.cpp:1628 sceNetAdhocPtpOpen( ,0, ,12000,65664,200000,300,0)
39:41:099 user_main I[NET]: HLE/sceNetAdhoc.cpp:2054 sceNetAdhocPtpClose(3,0) at 08cc6a0c
39:41:099 user_main I[NET]: HLE/sceNetAdhoc.cpp:2054 sceNetAdhocPtpClose(1,0) at 08cc6a0c
39:41:100 user_main I[NET]: HLE/sceNetAdhoc.cpp:2054 sceNetAdhocPtpClose(2,0) at 08cc5914
39:41:100 user_main I[NET]: HLE/sceNetAdhoc.cpp:2054 sceNetAdhocPtpClose(5,0) at 08cc6a0c
39:41:100 user_main I[NET]: HLE/sceNetAdhoc.cpp:2054 sceNetAdhocPtpClose(4,0) at 08cc6a0c
39:41:100 user_main I[NET]: HLE/sceNetAdhoc.cpp:2054 sceNetAdhocPtpClose(7,0) at 08cc5914
39:41:101 user_main I[NET]: HLE/sceNetAdhoc.cpp:2054 sceNetAdhocPtpClose(6,0) at 08cc6a0c
|