#8019 - Stephanj - Mon Jun 30, 2003 8:17 pm
I'm working on a new project related to GBAdev (it does requrie a GBA) but, it will run on the comp. I'm writing this in C++. Okay, I need some help w/ things. I'm not sure if there is direct code I can put in my source for this, or if I can link these programs to my header files seperately.
1. I need a basic ISP finder. Person just presses this and it shows their current ISP
2. I need a program that will connect 2 computers through there ISP (Give each other ISP, and a little box would ask for the ISP, you put in their ISP, and it asks them if they want to connect
3. My program is going to require USB. I need to have something in there that will make sure there USB perihpheral is attached. What the program needs to do is to take one person USB thing that goes into the comp, through the program, to another persons comp, and then to there USB thing. What the goal is is to make the USB things think they are just connected one to another, when really they are connected over the net. (It's kinda like XBConnect, if anyone has ever used that).
That is all for now, any help would be greatly appreciated. Thanks!
-Stephanj
*edit* - i've looked at the USB pinouts and have figured out that there aren't enough wires on USB, it wouldnt work w/o some hardware mods and programming. I'm now checking up on Printer Port, so some help with that would rule, thanks again.
#8045 - sgeos - Tue Jul 01, 2003 6:18 am
Stephanj wrote: |
1. I need a basic ISP finder. Person just presses this and it shows their current ISP
2. I need a program that will connect 2 computers through there ISP (Give each other ISP, and a little box would ask for the ISP, you put in their ISP, and it asks them if they want to connect |
Basic sockets programming maybe? (I've never done any myself, just read a little about it.)
-Brendan
#8062 - Stephanj - Tue Jul 01, 2003 3:07 pm
sounds like it makes sense
#8246 - Eats - Sat Jul 05, 2003 9:38 am
I don't think anything you posted makes sense.
First of all you can't connect through an ISP, maybe you mean an IP?
Further, usb is much faster then a printer port....
#8253 - Cyberman - Sat Jul 05, 2003 5:16 pm
Stephanj wrote: |
I'm working on a new project related to GBAdev (it does requrie a GBA) but, it will run on the comp. I'm writing this in C++. Okay, I need some help w/ things. I'm not sure if there is direct code I can put in my source for this, or if I can link these programs to my header files seperately.
|
Ok.. step back breath easy. Stop thinking about 'how I want to implement this project' and instead detail 'What it is and is to do.'
Stephanj wrote: |
1. I need a basic ISP finder. Person just presses this and it shows their current ISP
|
Ummm... Ok ISP for WHO IE finding an ISP on the GBA? this doesn't make sense, again you are leaping before quantifying what you are doing. If on the GBA you need to BUY a TCP/IP stack or get some of the code off the internet and port it to the GBA. TCP/IP with PPP PLIP or what have you.
Stephanj wrote: |
2. I need a program that will connect 2 computers through there ISP (Give each other ISP, and a little box would ask for the ISP, you put in their ISP, and it asks them if they want to connect
|
Again. .see above it's not making sense, you are trying to implement what you are doing in your mind on the fly and your questions are confusing.
As for this.. ummm what the heck do you need someones ISP for? I don't follow. However you just need to connect to there ISP connecting two people is a completely different matter. If they are both connected to the internet then thety just need each others IP address and utilize the proper socket addresses to make a point to point connection, one will need to be the server and the other the client though.
Stephanj wrote: |
3. My program is going to require USB. I need to have something in there that will make sure there USB perihpheral is attached. What the program needs to do is to take one person USB thing that goes into the comp, through the program, to another persons comp, and then to there USB thing. What the goal is is to make the USB things think they are just connected one to another, when really they are connected over the net. (It's kinda like XBConnect, if anyone has ever used that).
|
USB is not a program, why would your program require USB? USB is a hardware and software interaction protocol specification and to be honest there is a huge difference between a USB periferal and a USB host. WHAT is it you are trying to do... that would help more.
On USB, for a periferal USB is relatively simple thank goodness.. there is an additional spec that allows a periferal to act as a single device connection host. For example connection a digital camera to a USB printer will allow you to print from your camera to the printer directly.
As a host the software is significantly more complicated.
Stephanj wrote: |
That is all for now, any help would be greatly appreciated. Thanks!
-Stephanj
*edit* - i've looked at the USB pinouts and have figured out that there aren't enough wires on USB, it wouldnt work w/o some hardware mods and programming. I'm now checking up on Printer Port, so some help with that would rule, thanks again. |
Umm... this again makes no sense, USB only needs 2 wires for communication and 2 wires for power. It seems to me you are trying to implement something without doing proper research on what you are doing. This is a good way to have a bad result. Simply put, sit down calm down write down what you need to acomplish then meticulously go through it.
USB only needs ground +5V and +- period. That's it end of story. USB is a communication protocol and physical specification. You can get a USB periferal microcontroler that has plenty of IO on it. You can do quite a bit with using USB, so again nothing you've said has made sense thus far.
Does this have anything to do with the GBA even? I can't really tell to be honest.
Cyb - puzzled at the questions period
#8254 - tepples - Sat Jul 05, 2003 5:50 pm
I think (s)he wants to get the PC to talk through the USB or printer port to the GBA, and then have the PC act as the GBA's proxy to talk to other machines. Is this right?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#8267 - peebrain - Sun Jul 06, 2003 2:45 pm
I think he's trying to get people to link GBA's over the internet... in which case good luck :-P. I'm pretty sure it's impossible (if that IS what you're trying to do).
As far as the ISP (I think you meant IP) stuff went.... try Sockets programming like they suggested or you can try DirectPlay I think.
EDIT: Oh and you can use Sockets to find the persons IP. If you want me to look it up I can but my book is a couple feet away and I'd rather not right now :-P.
~Sean
_________________
http://www.pbwhere.com
#8293 - JasperW - Mon Jul 07, 2003 1:52 pm
peebrain wrote: |
I think he's trying to get people to link GBA's over the internet... in which case good luck :-P. I'm pretty sure it's impossible (if that IS what you're trying to do).
~Sean |
It's very possible to connect your GBA to the internet. The last couple of month I've been working on just that. Because the GBA has a standard RS232 / UART port the you just need an implementation of SLIP or PPP to connect to a server. At the moment my PPP and IP layer are finished and I'm beginning work on TCP. Here's a screenshot of me pinging my GBA @ 192.168.0.6 for the first time. In the bottom-right you can see the connection icon next to the disconnected network icon.
Also note that this has all been done before with the GBA Webserver unfortunately without any decent source code. All you need is a cable that converts GBA voltages (0..+3V) to PC voltages (+ and - 5 to 25 V).
Jasper
#8315 - peebrain - Tue Jul 08, 2003 3:40 am
Yeah, I remember reading about hooking up the GBA to the internet. I find no problems with that - I find problems with the 180ms ping time. You'd have to design games specifically to be played over the internet. Which means all commercial games = no internet gaming.
~Sean
_________________
http://www.pbwhere.com
#8322 - JasperW - Tue Jul 08, 2003 10:37 am
The 180 ms ping time is because I was running at 9600 baud instead of the maximum 115200 baud. The speed is then 9600 / 10 = 960 bytes per second. So ~ 1 byte every ms. Considering the packet is more than 60 bytes you already have a round trip of more than 120 ms. When running at 115200 baud the ping is around 20-30 ms but can be improved when optimizing the software.
Of course real-time gaming over the internet isn't going to happen but turn based games could be a reality. I'm not saying the thread starter is realistic in his goals, just saying it's possible.
Jasper
#8323 - tepples - Tue Jul 08, 2003 12:15 pm
JasperW wrote: |
Of course real-time gaming over the internet isn't going to happen |
Then what was Quake III: Arena?
I can imagine future games with two modes: a "LAN mode" that uses a standard multiplayer cable and an "Internet mode" that uses a PC gateway. However, whether Nintendo would approve of such a gateway is debatable.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#8343 - JasperW - Tue Jul 08, 2003 7:45 pm
tepples wrote: |
JasperW wrote: | Of course real-time gaming over the internet isn't going to happen |
Then what was Quake III: Arena? |
Oh... I forgot about that Q3A GBA port Carmack coded himself but Activision refused to publish because it clashed with Nintendo's policy on violence. The screenshots did look nice though... :) (This is the GBADev forum btw? Or have I misplaced my post in the GameFAQs PC shooter forum again :|...
Anyway I've never done any realtime network coding but I figure that having a TCP/IP stack that is difficult to run asynchronously and the little processing power of the GBA isn't enough to run a realtime game on. TCP/IP and prediction algorithm's will probably take up quite some programming power.
Jasper
#9522 - visage - Thu Aug 07, 2003 4:40 pm
I know this is an old topic, but I will tell you why it will not work.
I worked on the same exact type of topic before and here are two reasons why it is just a waste of time:
1) Commercial games will expect a very low latency between the GBAs. The second you try to send them over jthe internet, the GBAs will time out. Unless it is a Turn Based Game, which will still probably time out.
2) Why in the world would you want to put your GBA next to your computer and play it? It is small, and dark, and cramped. Instead of wasting your time on this, why not try to make an emulater with internet capabilities. If I am going to sit at my computer, I would much prefer to use its amazing display. Are you really going to sit at your computer and use a GBA?
So good luck if you still want to try. I dropped my project like that long ago.
#9552 - Istondil - Fri Aug 08, 2003 11:01 am
Wouldn't have to be your PC, you know. Could connect to your Laptop, sitting in your backyard with Wireless LAN patching you through to the Internet.
I'd kill for some internet, Player versus Player, Advance Wars ;) I personally own a Gameboy Player for the GameCube and I'm actually wondering if there's any way to enable link-play through the GC's high speed port. (Haven't found any posts or topics about it).
#9557 - tepples - Fri Aug 08, 2003 4:33 pm
The GameCube routes GBA link play communication through the GB Player's serial port rather than through the Ethernet adapter because only the GB Player's serial port can provide the sub-ms latency that GBA link play demands. Any Ethernet-based link solution would have to emulate all four GBA systems on each host.
I've always wondered about that note in the manual: why does Nintendo recommend against linking multiple GB Players?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#9560 - Istondil - Fri Aug 08, 2003 6:38 pm
I think you're missing the point here - Not all GBA games are action-type games that require immediate respons. It would be an excellent medium for turn based games, as other people stated earlier as well. Discarding the current technical difficulties that both the GBPlayer and the GBA (or any GB system) has games can be designed or slightly modified to support this type of online play.
Examples of games that already dont give a damn is the respons is 0.5 or even 5 seconds late: Advance Wars, Yi-Gi-Oh, Pokemon, Board Games (think Monopoly, Chess, Shogi or the likes), or games that allow you to build and link-exchange custom map data. Speed isn't really relative in these cases.
I've read an article somewhere on some guys linking up 4 GameCubes with GBPlayers and they didn't have any problems whatsoever. (Doubt it would be too interesting to have a room filled with 4 TVs + 4 GameCubes). Big N is probably giving the warning for a reason though, either because it can harm your hardware or the GB Player is lacking the power to decently emulate with some games. We'll never find out I suppose, unless more people are willing to sacrifice their equipment for thorough testing.
#9561 - tepples - Fri Aug 08, 2003 7:41 pm
"games can be designed or slightly modified"? Would Nintendo let you do that to existing games? If you did design a system for linking turn-based games through some sort of modem and get it approved with Nintendo (slim chance), it would still work only with games programmed specifically for your device. In fact, there was such an adapter called "Mobile System GB" sold in Japan, but it only ever worked with Mario Kart Advance (J) and a couple other titles, and it's been discontinued anyway due to lack of consumer interest.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#9566 - Istondil - Fri Aug 08, 2003 10:47 pm
<I>Would Nintendo let you do that to existing games?</I>
The Dev community itself reverse engineering and rebuilding existing games? Most definately not due to the legal implications alone. However once such a technology will actually (re-)emerge the "official" game developers can take online play into consideration, or when carts are being reprinted/updated.
It still proves that there are such capabilities, and after some facts digging there was a lot of stuff to do for Pokemon Crystal on an actual special Nintendo server. You had to pay for every "event" you participated in though, on top of the cell-phone costs. (read more). More interesting is the fact that apparently you were able to play realtime games through that adapter, though I haven't been able to find any reports on latency issues.
If you ask me, the Mobile System GB failed just because it cost so much. I can understand that if you want to host everything on central servers that you have your monthly maintainance / bandwidth costs, but lets face it: the Gameboy Advance is a children orientated console. They cant spend that much money on these recurring costs. I think using broadband internet is a viable alternative to the expensive mobile. You could set up a server for it, design some spiffy web application for game matchmaking with a solid GUI (hmmm... GBASpy?) and let users play against eachother connecting to eachother's IP. I'm no tech guru, but I'm sure it's possible hardware wise, especially if we're thinking turn-based.
Deja Vu on this particular topic though, sure I've read it before. I'm curious if anyone has ever been able to simulate internet transfer speed anyway by modding the link cable. Alternatively you could pull out and jam your cable into the GBA while playing games to see how it responds.
Even so, with the technology out there: no game titles, no interest. I still don't see why I should get an ethernet adapter for my GCN and PS2, while it's quite obvious there are some more titles available for XBox Live.
Just my ?0.02