Saturn and Netlink Info - Help Needed

This is the place for anything about Sega Saturn
User avatar
Warp2063
League Veteran
League Veteran
Posts: 1594
Joined: Mon Mar 03, 2008 4:28 am
Location: Virginia, USA

Post by Warp2063 »

Out of curiosity, how do you plan to generate the phone ringing signal for the Saturn that's waiting for a call? Both Saturns can't dial into a computer, because then they'll both think that they're the game host. Generating the dialtone shouldn't be too difficult, but I haven't heard of a way to generate the ring signal using a modem. It's not a sound, it's a high voltage, low current alternating current signal at a low frequency. Signals that represent sounds are conveyed over wires using direct current. I don't think that a modem can generate an AC pulse.

This problem is the whole reason I'm having to build an external device. My reasoning behind building such a complex circuit is because it solves all of the PC-Saturn or Saturn-Saturn connection problems: ringing, dial tone, and providing enough power to move data along the line. As far as I can tell, a voice-compatible modem can only solve part of the problem. Only hosting systems could use that method, and you'd still need a line voltage inducer for most situations. There would be no way to connect a second player without a difficult line-swap trick, and there's still no guarantee that that would even work. Not to mention that this circuit I'm building removes the requirement of having a voice-compatible modem, so it would raise the compatibility rate dramatically.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
XL2K5
Posts: 57
Joined: Thu Jan 24, 2008 12:39 am
Location: Montréal, Québec

Post by XL2K5 »

Modems can dial, so using your device would work. I would just generate a call with the modem so that the Saturn picks up the line. As for the calling Saturn, your dialtone would trick the Saturn and make it dial, so then I would tunnel the data online right away (using a technique similar to answering machines, but send the data online instead) so a voice modem is needed because non-voice modems can't pick up the line. Btw, other than ringing and dialtone, it's all sounds, isn't it? Like tunneling the sound is enough, no special current tricks involved, isn't it?
Games owned :
Duke Nukem 3D
Sega Rally Championship : NetLink Edition
Saturn Bomberman
Virtual On : 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 »

You could generate the dialtone with a voice compatible modem, as it's just a sound - so that's not the issue. (Don't forget, for this method, you'd still need a line voltage inducer or an external modem that could apply enough voltage to the line for the Saturn to believe that it was connected to a live line.) Therefore, you don't need my circuit to generate the dial tone, although it does remove a lot of hassle, as you won't need a separate line voltage inducer or a voice-compatible modem. Using either method, you could get the Saturn to dial out.

The problem is this: without a ringer circuit, there's no way to make the Saturn "pick up" - the signal that tells it that the line is ringing which causes it to "pick up" is that AC voltage, which the modem cannot generate. So, if you generated a dial tone with a voice modem, you could get the Saturn to dial out (be the host system for a game). However, you could never get another Saturn to pick up, because without a ringer circuit, there would be no way to generate the electrical signal that the Saturn's modem detects, a "ring", so it can never answer (and the system waiting for someone to connect will wait indefinitely). You can't have both systems dial up, because the only way the Saturn will dial out is if it's hosting the game, and you can't have two people hosting.

If you somehow got both Saturns to connect via your method, one as a host, and one as a client, then yes, you could stream the sound online. However, you'd have the same issues as a VoIP phone, Skype, or other voice chat programs/applications. For one, unlike a phone call, the internet does not run at a constant speed; rather, it's a bunch of short bursts at different intervals of time. Latency is likely to become an issue. Two, voice data takes a lot of bandwidth, so without a very high-speed connection, there would be stuttering (the inconsistent speed problem again) - bad for a modem's connection. Doing other things online at the same time (downloading, surfing, etc.) will only amplify the problem. And three, if you tried to compress the audio data to save on bandwidth (which just about every program like what you've proposed does to help reduce the bandwidth issue), the sound would be distorted, and it's likely that the receiving modem would be unable to interpret the commands being sent to it, as modems depend on very specific tones.

In short:
1-the internet isn't as reliable (constant) as a phone call
2-bandwidth is expensive and hard to keep at a steady rate
3-compression degrades the sound

Even shorter: The problems are delay, timing, and distortion.

Theoretically, sending the uncompressed sound would work... but under most circumstances, it doesn't, as you'd fall victim to those problems. If you wrote a sound compression scheme that cut out most of the unnecessary frequencies and focused mainly on keeping those that the modem needs to communicate successfully intact with a high degree of accuracy in order to save bandwidth and hopefully cut back on the likelihood of lag and therefore hopefully keep a steady enough signal for the other Saturn... that might work.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
XL2K5
Posts: 57
Joined: Thu Jan 24, 2008 12:39 am
Location: Montréal, Québec

Post by XL2K5 »

Just to clear up something : Voice-compatible modem doesn't mean it talks or something, it just means it can pick up calls from a fax or another modem. Your modem has to be able to listen to the line until it detects a call and then answer it, which is what a voice-compatible modem does.

My technique isn't to make both Saturns call, obviously, but to make one wait and the other call since it's the only way it can be done. Now you told me that the dialtone is only sound, then that would help as only the one waiting will need your device, but that person needs a voice-compatible modem because his modem will have to pickup the line and answer, unless it can be done without it since the modem will just send the data online, not really answer it, but anyway almost every modern 56k modems are voice-compatible.

As for compressions, it will just make it lag worse, as the computer will need to compress/uncompress data which takes some time to do. About the priority (you said if internet is shared, if you download or things like that), the program will be given an above average priority (you can choose when you code if you want your processes to have high priority or very high priority, but very high causes crashes as only the program works and nothing else is left for other ressources)

About internet being not that reliable, well sadly I can't do much about it, but it should work, as Lan games work for other consoles when tunnelled online (For example, to play Halo 1 online), you just need a good connection.

To reduce bandwidth, I thought about that too, like to only send the right frequencies only, but I'm afraid that filtering what's being sent might slow down the sound data being sent and cause extra lag if it's not well done. I will try that later in the program's dev, right now I'll try it without compression and without filtering just to make the program working, then I'll focus on that extra challenge and will ask for help (Companies building modems should be able to tell me what frequency are being used, and I could ask some experienced coders about how to filter that).

If we are lucky we might play our first online Netlink game within 6 months, lol!

Edit : You think you could find the maximum frequency and minimum frequency of a 28,8 kbps modem? I've searched for a while but found nothing. The range of frequencies must be lower than what most VOIP programs supports.

Btw, anyone got the NetLink to work well on a VOIP network? Or does it always work badly?
Games owned :
Duke Nukem 3D
Sega Rally Championship : NetLink Edition
Saturn Bomberman
Virtual On : 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 »

So, if only a voice-compatible modem can connect to another modem, what good is a modem that is not voice-compatible? :roll:

Voice-compatible does mean that it is capable of sending and/or receiving an audio stream (e.g. voice, music, a dialtone (as it's just a sound), etc.). Think of it like this: You could take a phone and dial a phone number of a line that is connected to a computer's modem. This computer's modem could then pick up the line, and the program controlling it could then speak, over the phone line, a list of options to the caller. It could then listen to if a caller said a number or dialed a number on the keypad, and then do something in response to that response. This is something a voice-compatible modem could do, whereas another one could not. A regular modem still communicates using sounds/tones, but it is not capable of generating or understanding/interpreting any sounds that are outside of those that are not used for its communications. As for faxes, most modems can double as a fax machine; the modem just has to listen for a different command set. Most fax machines communicate using the same standard tones that normal modems do.

I think I finally understand part of the rest of what you're saying, though. I think you ARE saying that you'd need the circuit for the receiving Saturn. And yes, if you want to transmit the raw modem sound stream coming out of the Saturn, you would need a voice-compatible modem for each computer connecting via your method. Your method seems to be treating the communication between each Saturn (as it passes through the computers) as if it were a spoken phone call. For a long time I misunderstood and thought that you had a solution to make a Saturn pick up using only a voice-compatible modem.

For compressing: compression can either increase or decrease the delay. Yes, there is a short delay as the computer has to compress the sound and decompress it on the other side, but if your compression scheme is good enough, it can take less time to compress, transmit, and decompress an audio stream than it does to transmit the same uncompressed audio.

And I never meant to say that the internet is unreliable - it's just less reliable than a phone line in that instead of one long continuous connection, it's a bunch of short bursts, which will make it take longer to send the audio than it would take over a normal phone line if your bandwidth isn't high enough.

As for the frequencies... I don't know either. You'd probably have to talk to someone in the industry who would know, or know where to look. Best I've found so far is Wikipedia.
http://en.wikipedia.org/wiki/Modem#Brea ... 6k_barrier
http://en.wikipedia.org/wiki/V.34
http://telecom.tbi.net/modem.html
A 28.8k modem should fall under the V.34 standard, but it was around that time that the signals sent between modems were becoming extremely complex. I know I found a paper about the different schemes used for encoding data into sound for a modem, but I can't remember where it was. One of parts of the scheme was phase-shifting. I've also read that the carrier frequencies can vary for the V.34 standard... so I really don't know. Talk to professors if you can; one of my professors at another school worked for several startup companies in the 90's and knew quite a bit about telecommunications. I tried talking to him when I still went there, but at that point I didn't know enough about modems to ask the right questions or understand his answers. At the very least, you might find someone who knows where to look or who to talk to for the right information.

And VoIP: everyone who's talked about VoIP has said that their systems keep trying to resynchronize. This means that either the delay is throwing off the other modem, parts of the signal are being lost in compression, or some combination of the two. I guess latency as their call was routed over the internet would be another possibility as well.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
XL2K5
Posts: 57
Joined: Thu Jan 24, 2008 12:39 am
Location: Montréal, Québec

Post by XL2K5 »

Lol, we finally understood each others it seems. I guess maybe my english isn't good enough so I don't express myself well-enough. Yes, I need your circuit (or a similar device), and a voice-compatible modem will be needed. As for compression, it might be a bit too complex for me right now plus if I only send the right frequencies the audio sent online shouldn't take too much bandwidth and hopefully will be fast enough to make it work. I don't think it's gonna work for long distances (Montréal to L.A., for example, wouldn't work in my opinion) but for some moderate distances it should be ok. I will have to find the frequencies used by a modem and filter out everything else to send as little data online as possible. I'll look at VOIP open-source programs to see how to send audio-data online, and use TAPI to make the modems pick-up the line, "call" to your device, etc.
Games owned :
Duke Nukem 3D
Sega Rally Championship : NetLink Edition
Saturn Bomberman
Virtual On : 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 »

When you get the modem to generate a dialtone, let me know. Anyone using the device wouldn't require it, but it would be a cool feature to have in the program anyway.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
XL2K5
Posts: 57
Joined: Thu Jan 24, 2008 12:39 am
Location: Montréal, Québec

Post by XL2K5 »

Generating the dial tone shouldn't be too hard. I'll do that in about 3 weeks once I get back home (august 16th). I almost bought a line simulator (TELTONE one, seems really good) for 70$ on eBay, but then I convinced myself not to waste my money, that you will be able to build a cheap device, lol! Anyway, any progresses so far?
Games owned :
Duke Nukem 3D
Sega Rally Championship : NetLink Edition
Saturn Bomberman
Virtual On : 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 »

I've run into some problems identifying some of the components that I need to buy. I'm trying to enlist the help of a friend who knows a good bit more about electronics than I do to help me figure out which parts to buy, but it's not going quickly. I'm planning to do more research tomorrow, too.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
XL2K5
Posts: 57
Joined: Thu Jan 24, 2008 12:39 am
Location: Montréal, Québec

Post by XL2K5 »

Any updates so far?
Did you manage to buy all the required parts yet?
Games owned :
Duke Nukem 3D
Sega Rally Championship : NetLink Edition
Saturn Bomberman
Virtual On : 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 »

I'm currently broke and jobless, so I can't buy the parts yet. :lol: I'm in the process of applying to various stores, so I'm hoping that I'll have a job again soon.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
XL2K5
Posts: 57
Joined: Thu Jan 24, 2008 12:39 am
Location: Montréal, Québec

Post by XL2K5 »

So, did you get your job yet? :D Any news? Or did you give up?
Games owned :
Duke Nukem 3D
Sega Rally Championship : NetLink Edition
Saturn Bomberman
Virtual On : 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 »

Yes, I have a job. No, I haven't given up, but the project is on semi-hold. I fiddle with it here and there, but there isn't much concentrated effort at the moment. The big problem was -- and still is -- the phone line simulator. I could build one for an estimated $35 or so, but there is a TON of effort involved in building the circuit. (I'd have to fabricate the printed circuit boards myself, and then there are about 200 solder joints that I'd have to do by hand.) The other option is that I could buy a phone line simulator, but they're really expensive -- from $80 for the cheapest option (which I'm not convinced would work because it lacks a dial tone generator), to around $150 for a good solution which would probably suit my needs, to around $250-$300 for the best models, which are probably overkill, but offer tons of cool options.

Now, to do the testing and programming here, I would need two of these units to test with... either very expensive or very time-consuming. On top of that, everyone who wanted to play over the internet would need one. Which means everyone would either have to fork over a ton of cash to buy a professionally-made one, build one themselves, or someone would have to volunteer to build and sell them. I don't think that most people are willing to spend the $150 just to play on the Netlink, even if it IS only a one-time charge. It's a tough call for ME, and I'm the one working on the project and facing the possibility of having to buy two.

I'm considering a cheaper, easier method... but again, it would probably involve me building my own circuit... it would just be a significantly less complex, and would probably involve the user hitting a button or two to make it work.

I really can't do any experiments with writing the software to make this work until I have this hardware barrier out of the way. On the bright side, with the exception of this phone line simulator, I have enough Saturns, game discs, computers, software, and other equipment to test and program with to proceed. These were other things I've been working on collecting/repairing/setting up in my spare time. Unfortunately, I can't make the connection between everything without the phone line simulator.
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
User avatar
Warp2063
League Veteran
League Veteran
Posts: 1594
Joined: Mon Mar 03, 2008 4:28 am
Location: Virginia, USA

Post by Warp2063 »

A new discovery! I think I've found a way to eliminate the need for a dial tone! However, I still need to provide a ringing signal. But this simplifies matters! This means I could either use the $80 device or look for another, even cheaper alternative. :D
I have my Saturns, I have some of my games, I have a RasPi. Gotta put all this stuff together!
User avatar
HoboJoe
Posts: 67
Joined: Mon Feb 25, 2008 7:42 pm

Post by HoboJoe »

Yay!
Post Reply