Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Network module replacement (ps2) #2

Closed
inada-s opened this issue Mar 26, 2020 · 7 comments
Closed

Network module replacement (ps2) #2

inada-s opened this issue Mar 26, 2020 · 7 comments
Labels
in the future support in the future, but postpone

Comments

@inada-s
Copy link
Owner

inada-s commented Mar 26, 2020

The embedded protocol stack AVE_TCP is installed as irx modules in the PS2 game.
In the original implementation, the game communicate with game server through this module.
I think it is difficult to reuse this well, so it is better to develop the replacement module using ps2sdk's tcpip and use it instead of AVE_TCP.

I have no knowledge of the irx module, so I have to start with a survey. Fortunately, the irx module in the game still has debug symbols.

In the future, it may be better to provide patches for the original game iso image.

@gh0stl1ne
Copy link
Collaborator

Do you think it is possible to create an IRX module that is able to use the broadband adapter instead of the modem?
Another idea would be to reuse the modules from Monster Hunter or Gundam vs. Z-Gundam.

@inada-s
Copy link
Owner Author

inada-s commented Mar 31, 2020

Do you think it is possible to create an IRX module that is able to use the broadband adapter instead of the modem?

It is not possible to just replace the irx module.
We need to patch the r5900 to skip the ppp step.

Skip modem operations (modem recognition, ppp connection).

  • This can be achieved by skipping some function calls on r5900. sample

Replace socket operations (TCP open, read, write, select, close, sockopt).

  • If we have a socket implementation, just plug it into it. sample
  • tcp/ip impl that use network adapter there is in ps2sdk.

Another idea would be to reuse the modules from Monster Hunter or Gundam vs. Z-Gundam.

Yes, I think this is another approach. Gundam DX already have AVE protocol stack and network adapter drivers, so we may just need to imitate how to use them.

@inada-s
Copy link
Owner Author

inada-s commented Mar 31, 2020

The ps2 version of the game is easy to get, but unsatisfactory for fans.
Perhaps it would be better to make the DC version playable on a emulator.
So it's better to think about which version to use for playing before replacing the network module.

@vkedwardli
Copy link
Contributor

From my investigation, as long as we can emulate the correct server response, it is better to use https://github.com/flyinghead/flycast with the DC version.

Attached is the MODEM log (I've added the modem reg write log myself)

D[MODEM]: ModemNormalWrite : TBUFFER = 1
I[MODEM]: MODEM Dialing
D[MODEM]: modem reg 010 write 1
D[MODEM]: ModemNormalWrite : TBUFFER = 8
D[MODEM]: modem reg 010 write 8
D[MODEM]: ModemNormalWrite : TBUFFER = 6
D[MODEM]: modem reg 010 write 6
D[MODEM]: Stats sent 0 (0.00 kB/s) received 0 (0.00 kB/s) TDBE 1 RDBF 0
D[MODEM]: Switching to RINGING state
D[MODEM]: 		 *** RINGING STATE ***
D[MODEM]: modem reg 010 write 0
D[MODEM]: modem reg 010 write 0
D[MODEM]: modem reg 010 write 5
D[MODEM]: modem reg 010 write 3
D[MODEM]: modem reg 010 write 6
D[MODEM]: modem reg 010 write 3
D[MODEM]: modem reg 010 write 1
D[MODEM]: modem reg 010 write 3
D[MODEM]: modem reg 010 write 1
D[MODEM]: modem reg 010 write 2
D[MODEM]: modem reg 010 write 0
D[MODEM]: modem reg 010 write 3
D[MODEM]: modem reg 001 write 40
D[MODEM]: modem reg 01D write A 
D[MODEM]: modem reg 01D write A 
D[MODEM]: modem reg 01D write 2A 
D[MODEM]: modem reg 01C write A1 
D[MODEM]: modem reg 018 write C2 
D[MODEM]: modem reg 019 write 8 
D[MODEM]: DSP mem Write (w) address 00000aa1 = 8c2

When the modem is going into the ringing state, it reads + dial the number from the 010 register.

So the DC version is using the MODEM to dial to 186-0053-63-13-1203, which matches the KDDI ISDN回線, also according to the KDDI call menu0053-63 is out of service.

From the PS2 MIPS code, I also found the game is dialing to a very similar number:

186-0053-63-13-1202

Finally the below is the full modem log, you can find that the game instructed the modem to dial a number, handshake correctly and the connection is established successfully. (all by modem emulation, no connection is made actually) Then the game is waiting for the initial data from the server, timed out, and close the connection (reset the modem)

 hw/modem/modem.cpp:431 D[MODEM]: Modem reset start ...
 hw/modem/modem.cpp:440 I[MODEM]: MODEM Reset
 hw/modem/modem.cpp:374 D[MODEM]: DSPTestStart
 hw/modem/modem.cpp:367 D[MODEM]: DSPTestEnd
 hw/modem/modem.cpp:431 D[MODEM]: Modem reset start ...
 hw/modem/modem.cpp:440 I[MODEM]: MODEM Reset
 hw/modem/modem.cpp:144 D[MODEM]: Stats sent 0 (0.00 kB/s) received 0 (0.00 kB/s) TDBE 0 RDBF 0
 hw/modem/modem.cpp:374 D[MODEM]: DSPTestStart
 hw/modem/modem.cpp:367 D[MODEM]: DSPTestEnd
 hw/modem/modem.cpp:431 D[MODEM]: Modem reset start ...
 hw/modem/modem.cpp:440 I[MODEM]: MODEM Reset
 hw/modem/modem.cpp:374 D[MODEM]: DSPTestStart
 hw/modem/modem.cpp:367 D[MODEM]: DSPTestEnd
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000006a9 = 7
 hw/modem/modem.cpp:624 D[MODEM]: NEWC CONF=76
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 0000009f == 0
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 0000009f == 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000010f = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000021e = 1
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000021f = d2
 hw/modem/modem.cpp:431 D[MODEM]: Modem reset start ...
 hw/modem/modem.cpp:440 I[MODEM]: MODEM Reset
 hw/modem/modem.cpp:144 D[MODEM]: Stats sent 0 (0.00 kB/s) received 0 (0.00 kB/s) TDBE 0 RDBF 0
 hw/modem/modem.cpp:374 D[MODEM]: DSPTestStart
 hw/modem/modem.cpp:367 D[MODEM]: DSPTestEnd
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000006a9 = 7
 hw/modem/modem.cpp:624 D[MODEM]: NEWC CONF=76
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 0000009f == 0
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 0000009f == 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000010f = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000021e = 1
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000021f = d2
 hw/modem/modem.cpp:431 D[MODEM]: Modem reset start ...
 hw/modem/modem.cpp:440 I[MODEM]: MODEM Reset
 hw/modem/modem.cpp:144 D[MODEM]: Stats sent 0 (0.00 kB/s) received 0 (0.00 kB/s) TDBE 0 RDBF 0
 hw/modem/modem.cpp:374 D[MODEM]: DSPTestStart
 hw/modem/modem.cpp:367 D[MODEM]: DSPTestEnd
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000006a9 = 7
 hw/modem/modem.cpp:624 D[MODEM]: NEWC CONF=76
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa1 = 8c2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa2 = ee7c
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa3 = 8c2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa4 = c774
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa5 = 74fe
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba1 = 8c2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba2 = 1184
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba3 = 8c2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba4 = cd4f
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba5 = 6495
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba0 = 7b30
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa0 = 4cf
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab8 = 500
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb8 = 500
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa7 = 205
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa8 = fbf9
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa9 = 206
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aaa = c147
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aab = d22d
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba7 = 205
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba8 = 380
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba9 = 206
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000baa = c147
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bab = d1f8
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba6 = 7e67
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa6 = 2df
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab9 = 2a00
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb9 = 1c00
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab2 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab3 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab4 = 7fff
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab5 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab6 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb2 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb3 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb4 = 7fff
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb5 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb6 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aad = 244
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aae = fb7b
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aaf = 245
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab0 = c147
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab1 = 35a7
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bad = 244
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bae = ca
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000baf = 245
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb0 = c147
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb1 = 3574
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bac = 7e67
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aac = 2df
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aba = 2a00
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bba = 1c00
 hw/modem/modem.cpp:624 D[MODEM]: NEWC CONF=76
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 0000029b = 11b2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 0000029c = 11
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 0000029d = 1648
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 0000029e = 16
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000218 = ed
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002db = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000219 = ed
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002dc = 0
 hw/modem/modem.cpp:624 D[MODEM]: NEWC CONF=81
 hw/modem/modem.cpp:624 D[MODEM]: NEWC CONF=81
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 0000029b = 11b2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 0000029c = 11
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 0000029d = 1648
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 0000029e = 16
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000218 = ed
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002db = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000219 = ed
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002dc = 0
 hw/modem/modem.cpp:504 D[MODEM]: ModemNormalWrite : TBUFFER = 1
 hw/modem/modem.cpp:507 I[MODEM]: MODEM Dialing
 hw/modem/modem.cpp:504 D[MODEM]: ModemNormalWrite : TBUFFER = 8
 hw/modem/modem.cpp:504 D[MODEM]: ModemNormalWrite : TBUFFER = 6
 hw/modem/modem.cpp:144 D[MODEM]: Stats sent 0 (0.00 kB/s) received 0 (0.00 kB/s) TDBE 1 RDBF 0
 hw/modem/modem.cpp:172 D[MODEM]: Switching to RINGING state
 hw/modem/modem.cpp:186 D[MODEM]: 		 *** RINGING STATE ***
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa1 = 8c2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa2 = ee7c
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa3 = 8c2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa4 = c774
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa5 = 74fe
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba1 = 8c2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba2 = 1184
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba3 = 8c2
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba4 = cd4f
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba5 = 6495
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba0 = 7b30
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa0 = 4cf
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab8 = 200
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb8 = 200
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa7 = 205
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa8 = fbf9
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa9 = 206
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aaa = c147
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aab = d22d
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba7 = 205
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba8 = 380
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba9 = 206
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000baa = c147
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bab = d1f8
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ba6 = 7e67
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aa6 = 2df
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab9 = 2a00
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb9 = 1c00
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab2 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab3 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab4 = 7fff
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab5 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab6 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb2 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb3 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb4 = 7fff
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb5 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb6 = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aad = 244
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aae = fb7b
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aaf = 245
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab0 = c147
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000ab1 = 35a7
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bad = 244
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bae = ca
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000baf = 245
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb0 = c147
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bb1 = 3574
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bac = 7e67
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aac = 2df
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000aba = 2a00
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 00000bba = 1c00
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 00000305 == 4028
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 00000304 == 28c0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000306 = 2840
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000307 = 2803
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000308 = 2884
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000304 = 28c0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000305 = 2828
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 0000013f == 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000013f = 40
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 00000100 == 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000100 = 0
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 00000105 == 0
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 00000101 == 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000105 = f0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000101 = 38
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002c4 = 99
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002c5 = 9
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002c6 = 99
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002c7 = 9
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002c0 = 99
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002c1 = 9
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002c2 = 99
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000002c3 = 9
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000309 = ce
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000382 = e0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000383 = 3f
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 00000304 = c8
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000006a3 = 0
 hw/modem/modem.cpp:624 D[MODEM]: NEWC CONF=aa
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write (w) address 000003da = 4000
 hw/modem/modem.cpp:624 D[MODEM]: NEWC CONF=aa
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 00000304 == 28c8
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 000003a5 == 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 000003a5 = 10
 hw/modem/modem.cpp:450 D[MODEM]: DTR asserted. starting handshaking
 hw/modem/modem.cpp:490 D[MODEM]: TPDM = 0 ASYN = 0
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 0000010d == 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000010d = 8
 hw/modem/modem.cpp:144 D[MODEM]: Stats sent 0 (0.00 kB/s) received 0 (0.00 kB/s) TDBE 1 RDBF 0
 hw/modem/modem.cpp:195 D[MODEM]: 		 *** HANDSHAKING STATE ***
 hw/modem/modem.cpp:211 I[MODEM]: MODEM Connected
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 00 == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 01 == 40
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 02 == 41
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 03 == 10
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 04 == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 05 == 08
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 06 == 00
2020-03-16 18:14:01.364453+0800 Flycast[6447:5796323] hw/modem/picoppp.cpp:716 I[MODEM]: pico_thread_func: fuck
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 07 == 82
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 08 == 01
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 09 == 35
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 0a == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 0b == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 0c == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 0d == 02
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 0e == 02
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 0f == d0
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 10 == 03
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 11 == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 12 == a1
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 13 == 79
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 14 == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 15 == 31
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 16 == 74
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 17 == ff
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 18 == 08
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 19 == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 1a == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 1b == 00
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 1c == 0d
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 1d == 01
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 1e == 08
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 1f == 08
 hw/modem/modem.cpp:281 D[MODEM]: modem_regs 20 == 00
2020-03-16 18:14:01.441888+0800 Flycast[6447:5796323] hw/modem/picoppp.cpp:643 I[MODEM]: My IP is XXX.XX.XXX.XXX
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000026b = 20
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000026c = 64
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000026d = 60
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 00000302 == e0d8
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 00000303 == c8e0
 hw/modem/modem.cpp:603 D[MODEM]: DSP mem Read address 0000009f == 0
 hw/modem/modem.cpp:431 D[MODEM]: Modem reset start ...
 hw/modem/modem.cpp:440 I[MODEM]: MODEM Reset
 hw/modem/modem.cpp:374 D[MODEM]: DSPTestStart
 hw/modem/modem.cpp:367 D[MODEM]: DSPTestEnd
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000010f = 0
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000021e = 1
 hw/modem/modem.cpp:583 D[MODEM]: DSP mem Write address 0000021f = d2
 hw/modem/modem.cpp:431 D[MODEM]: Modem reset start ...

@inada-s
Copy link
Owner Author

inada-s commented Apr 3, 2020

thanks for good investigation!
In the ps2 version, there was a big problem with connection in the battle scene, so I was thinking about what to do.
I will also investigate the dc version.

@inada-s
Copy link
Owner Author

inada-s commented Apr 3, 2020

The ppp code seems to be disabled in the MSVC environment on Windows.
In what environment did you debug?

@inada-s inada-s added the in the future support in the future, but postpone label Nov 12, 2020
@inada-s
Copy link
Owner Author

inada-s commented Sep 30, 2022

I decided not to fix this issue.

@inada-s inada-s closed this as completed Sep 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in the future support in the future, but postpone
Projects
None yet
Development

No branches or pull requests

3 participants