Efforts to come

Former Xbanders on SNES or Genesis can get in touch with each other here. Also for people who wish to help with the Xband revival project.
User avatar
rush6432
Posts: 246
Joined: Sun May 07, 2006 4:10 pm

Post by rush6432 »

if anyone has a genesis modem and can try it please do and let us know. screenshots also if you can.....
User avatar
Warp2063
League Veteran
League Veteran
Posts: 1594
Joined: Mon Mar 03, 2008 4:28 am
Location: Virginia, USA

Post by Warp2063 »

I was curious to see if the codes worked with the Saturn's Xband menu, which appears to be nearly identical to the SNES one. They don't, though. If there's a code to get to a debug menu in the Genesis Xband, it would have to be different from the SNES... the Genesis doesn't have an L button.

I also got shipping notification of my Genesis Xband modem. Apparently it's shipping from the city I live in, just from a different zip code... so I suspect that I'll get it on Monday. =P
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
neviksti
Posts: 61
Joined: Mon Aug 14, 2006 5:54 pm

Post by neviksti »

Xranger60 wrote:So Neviksti, I'd be interested in the second part. You say anyone can help with that. I don't have much knowledge when it comes to protocals, but when it comes to being given some direction to start in, perhaps I can be helpful?
Great!
I'm pretty sure I understand the base protocal. On top of that appears to ride an ADSP protocal, which I don't fully understand.

I think ADSP stands for AppleTalk Data Stream Protocal or something like that, which may help in your searching.

Of particular importance is the header. The code treats it as follows:

Code: Select all

ADSP header, $0D bytes long 
how the code treats the data - 
(word), (two dword entries - treated as a pair?), (word), ?flags? (byte) 

header data is in network byte order (most significant byte first)
The last time I returned to this project for a bit was middle of last year, and I focussed on trying to understand how in the world the OS stored and handled data. So I haven't touched the protocal stuff in a couple years. Practically verbatum where I left off is written here:
http://saturnleague.com/board/viewtopic.php?p=993#993

It is possible the protocal stuff is even buried in those links I found and didn't fully follow up on.

I also need to understand how connections are made (what is the order of ADSP control packets to setup and maintain connections, etc.). This is a standard, so there has got to be info about it on the internet somewhere.


Anything you find would be great. Once we get this protocal layer done, we can finally focus on the next and most fun protocal layer: the server command and response structure!
I haven't found this in the code yet... much more assembly work needs to be done.
Last edited by neviksti on Sat Jan 10, 2009 10:23 pm, edited 2 times in total.
neviksti
Posts: 61
Joined: Mon Aug 14, 2006 5:54 pm

Post by neviksti »

neviksti wrote:The last time I returned to this project for a bit was middle of last year, and I focussed on trying to understand how in the world the OS stored and handled data.
Oh, and regarding that, I figured out most of it.
It is structured such that each "type" of data has its own lookup list. I understand almost all of accessing (and maybe even putting in new data, I forgot where I left off) the data. However it is difficult (just by looking at the disassembled ROM) to figure out what each "type" of data is (email, game patch, cartridge ID, player pictures, etc.).

Can you ask your XBand employee contacts if the "Database" portion of the OS was the same across all systems? (Heck, anything they can remember about what was and was not the same between systems would be useful.)

I'm really hoping you can get access to some source code. That would be great! Heck, even just a bunch of the *.h header files would be incredibly useful despite not having code in them. For instance, there should be a header file defining all the database type IDs, etc.
User avatar
Xranger60
Site Admin
Posts: 668
Joined: Wed Dec 31, 1969 7:00 pm
Location: Long Island
Contact:

Post by Xranger60 »

I'm going to be back up at school monday. I'll be able to test my genesis Xband as soon as I'm up there, which should be afternoon. I'll post my results asap. Neviksti when I get home tonight I'll look through your protocal posts more closely.
Willing to play Bomberman, Duke Nukem 3d, Virtual On, Sega Rally. Send me a PM.
User avatar
rush6432
Posts: 246
Joined: Sun May 07, 2006 4:10 pm

Post by rush6432 »

Xranger60 wrote:I'm going to be back up at school monday. I'll be able to test my genesis Xband as soon as I'm up there, which should be afternoon. I'll post my results asap. Neviksti when I get home tonight I'll look through your protocal posts more closely.
Let me know if either of those codes work. obviously the one with the "l" in it might not work unless it means using the 6 button controller.....

Neviksti, i sent you an email on your gmail account. it contains some source code to the debugger portion and some game patches with .H header files :) it does have locations of things in hardware to access the modem and other things as well as explination of how the data stream for a connection is handled in some of the game patch files (mk2patch.a) and a few others... please look through this stuff and let me know if any of those hardware adresses will help you... im pretty sure the networking protocol is an appletalk variant because some of the programmers at catapult were ex-apple employees.....

the file i sent is genesis only. so if you dont have a genesis modem and console i suggest you get one :) this one seems to be the easiest to get working right off the bat as we dont have any snes sources just yet. im sure the hardware addresses are TOTALLY diffrent between the two...

In that file i sent i also included what i know in my own text files as well. also a proposed plan to get the modem working without a server if thats all we can do.. as for now i dont have sources to the OS/GUI, so we have to rely on hacking the rom image in a hex editor or trying to decompile and figure out a few things....
User avatar
rush6432
Posts: 246
Joined: Sun May 07, 2006 4:10 pm

Post by rush6432 »

Ranger, id like to request that we open a private forum to doing all the tech talk that only allows myself, Neviksti, and Warp2063. We are the only ones so far on the team here on this forum. I dont know if you can create a sub section for us. let me know.
User avatar
Xranger60
Site Admin
Posts: 668
Joined: Wed Dec 31, 1969 7:00 pm
Location: Long Island
Contact:

Post by Xranger60 »

Done.
Willing to play Bomberman, Duke Nukem 3d, Virtual On, Sega Rally. Send me a PM.
nick944
Posts: 46
Joined: Sat May 12, 2007 2:52 pm
Location: The Woodlands, TX

Post by nick944 »

It's great to see this project is being worked on again :) I can't help with much, but I can give a link to sealed xband modems for $5 http://www.gameexpress.com/product_deta ... 6377002005
Own:
Virtual On Netlink Edition
Sega Rally Championship Netlink Edition
User avatar
Warp2063
League Veteran
League Veteran
Posts: 1594
Joined: Mon Mar 03, 2008 4:28 am
Location: Virginia, USA

Post by Warp2063 »

Sweet! Thanks for the link! I think I'll pick up a second for debug purposes.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
neviksti
Posts: 61
Joined: Mon Aug 14, 2006 5:54 pm

Post by neviksti »

Does someone have a rom dump of the US version of the Genesis XBand? And are there any emulators which run it enough that you can move through the menus?

Anyway, if someone has the rom dump, search it in a hex editor for the phrase 'Playground'. The US version contains the phrase "Welcome to Josh's Playground" which is displayed upon enterring the memory viewer. If the phrase doesn't exist in the Genesis version, then it probably doesn't have the memory viewer.
User avatar
Warp2063
League Veteran
League Veteran
Posts: 1594
Joined: Mon Mar 03, 2008 4:28 am
Location: Virginia, USA

Post by Warp2063 »

I got my Xband for the Genesis today, and I'll dump the ROM later tonight if I have time.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
neviksti
Posts: 61
Joined: Mon Aug 14, 2006 5:54 pm

Post by neviksti »

Well, based on the genesis XBand dumps, it looks like they don't support the memory viewer or remote diagnostic mode that the snes version does.
Xranger60 wrote:Neviksti when I get home tonight I'll look through your protocal posts more closely.
Any luck figuring out what the data in the ADSP header is?
And what packets need to be sent / received for a connection to be made and maintained?

I know where the code is in the ROM that handles the ADSP header, but since I don't understand the ADSP protocal ... I don't really know what anything is.

If there is anyone else that knows assembly language, please let me know as it would help to have more people attacking it from the ROM side along with me.
User avatar
Xranger60
Site Admin
Posts: 668
Joined: Wed Dec 31, 1969 7:00 pm
Location: Long Island
Contact:

Post by Xranger60 »

Hey, so I have the time to go through this and see what I can do for you. I'm going to search for any ADSP info I can find and report back here for you.
Willing to play Bomberman, Duke Nukem 3d, Virtual On, Sega Rally. Send me a PM.
User avatar
Xband411
Posts: 64
Joined: Thu Apr 20, 2006 8:37 am
Location: Fort Wayne, IN
Contact:

Post by Xband411 »

Hey guys, any help needed on this project still? It's been a crazy 3 years, but I'm back around if anyone needs me.

I still have my original SNES xband modem, but I'm so afraid that the battery is going to die any time now. :(
Post Reply