So, here's the situation. I'm trying to reverse engineer the Dream Arena authentication system. I have a TCP server running which games successfully connect to, but they wait for an immediate response and I need to work out what to send back. What I would like to do is write a test app with the SDK which tries to authenticate with my server repeatedly so I can rapidly test different responses. So what I'd like to do is be able to write, compile and run this client program from Windows (or Linux) without involving any Dreamcast hardware. Now, obviously the SDK is compiled for SH4, so the "running" part of this is going to require an emulator with dial-up modem / broadband adapter support. I'm not sure such a thing exists. So my questions are: If I install the SDK on Windows, does that provide everything I need to compile the built-in sample apps? Once I have those apps compiled, is there an emulator that can run them which supports networking? How do I launch such an emulator so that it just runs my sample program? Do I need to generate a CDI/GDI? Does the SDK do that automatically?
The sdk does allons you to crosscompile sh4 on i386 architecture. I dont even think it includes a native sh4 compiler. Even back then, the DC was kinda low powered compared with expensive dev rigs. I think there are modem plugins for nullDC, I dunno how advanced they are though. IIRC nulldc can load elf/BIN files directly. Else you can build cdi easily using cdi4dc. Ofc this is not supported in the sdk, as milcd is an exploit of the bootstraps.
Demul emulates the BBA already (using a tap interface as bridge). Wasn't the DreamArena auth already broken? We are able to play Toy Racer online nowadays.
Only over BBA, Toy Racer doesn't work over dial up because of auth. Neither does PAL Quake 3. I'll have a play with the sdk, thanks!
I need to check the responses of the authent.lib functions in the SDK. Which don't exist in KallistiOS
Dream Arena has already been reverse engineered. I will release the server as soon as I can. If I remember correctly, the problem I was looking to fix is that a dial-in server has to provide some information, so commercial ISP connections won't work.
Wow really?! Can you share any more information about the protocol? Will you open source the server? I have hosting if you need it - this is the missing piece to get all games working with the Dreampi software
I will have to look up the project to remember where I left off with it. Q3 and Toy Racer have been tested with it. As with all of the servers I've created, it's entirely open source. I have a site I'm releasing this server and the others through, but thank you for the offer .
I found the sample server that was supposed to be included in the official SDK. I also had the same idea that the Peter Pan reference had to be some sort of identifier for packets, and it is. While it's possible it could have been figured out without the sample server through trial and error, having the sample server definitely made it a lot easier to determine the protocol's full functionality.
Hah! I knew it! I have the full list of commands I just didn't know in what format to send them! A sample server definitely makes things easier!