> Hi, MSXers,
>
> I'm needing help from someone who has experience with external
> modems with MSX. I need to know all (!) the basic things:
>
> 1. How to start a serial connection with the modem (what are the
> serial parameters of the modem: speed, stopbits, flow control, parity)

Pfff... Use the standard settings: 8N1, and make the speed configurable (you
can also set it to the max. speed for simplicity's sake. However I do not
recommend it for a final version).


> 2. How to configure the modem (ATwxyz, etc)

ATZ is the standard thing. However I suggest to use a config-file instead.
I do, at least...


> 3. How to make the modem dial and establish a connection

send init string:
ATZ
OK
and then dial:
ATDT0123456789
CONNECT 115200

Now you are connected to the peer.


> 4. How to detect that the server I dialed send some strings
> ("login:", "password:", etc)

That's part of the SLIP protocol. DO NOT USE IT!!! It really, really sucks.
For example, it doesn't support IP address negociation etc, and it's often
not supported by the server. Instead send a PPP Conf_Req in an HDLC frame
immediately after the CONNECT message to start using PPP.

The only disadvantage of PPP over HDLC instead of SLIP is that HDLC is more
secure and has an FCS check over all the outgoing and incoming bytes, which
is a bit double since the upper level protocols (IP, TCP) also have a
checksum. You can ignore the FCS when receiving frames, and it is quite
easily calculated for outgoing frames (in most cases the outgoing traffic is
lower than the incoming traffic, so it's not really a problem). And using an
experimental protocol (I don't know how much servers implement it, but my
guess is most do) you can even disable the FCS check. However in my PPP
implementation I don't support that yet.


> 5. How to send to the server some strings (the user name and
> password)

Use the Password Authentication Protocol (PAP).


> 6. How to send/receive data from modem (authentication finished,
> so I want to start sending/receiving data!)

It's all in the PPP protocol, RFC1661.TXT to be precise. And don't forget
HDLC (RFC1662.TXT), it's a nessecity. It's a bit poorly documented so if you
don't fully understand it after reading the docs let me know.

What I did to figure it out was calling my MSX from my PC (ISDN v34
emulation) on the other phone line. I was very confused with the incoming
packets until I learned about the HDLC protocol...


> 7. How to disconnect (ok, I finished sending/receiving data, now I
> want to disconnect!)

It's all done through PPP (in this case using Terminate_Request packets).
You must see it this way: you connect to your provider, and start
immediately with PPP (over HDLC). Then you progress through a number of
'phases':

1. Configuration Phase (LCP, the Link Control Protocol)
LCP is an integrated part of PPP. Send Conf_Request, Conf_Reject, Conf_Nak
and Conf_Ack packets until all options have been negociated. Options include
Authentication Protocol negociation (PAP or CHAP (yuk!) or something else),
HDLC mask (all zero is the most efficient and fastest setting, however it
requires hardware flow control), Header Compression (matters a very few
bytes, not worth the effort), and several other things which are only making
things complex like Magic Number etc.

2. Authentication Phase (PAP, the Password Authentication Protocol)
PAP is a very simple protocol, just send the user/pass combination in an
LCP-like packet and receive an acknowledgement or an rejection.

3. Network-layer Phase (use the NCP (Network Control Protocol) IPCP
(Internet Protocol Control Protocol))
Configure IP using LCP-like packets and receive your own and the peer's
IP-address.

4. Established.
Now you can start sending IP packets to the peer (using PPP protocol #0021).

5. Link Termination (LCP, the Link Control Protocol)
No need to let the other protocols close down first. Send a small simple
packet back and forth and you can close the link.

If you need to be helped out you can ask me specific questions (me=PPP
expert :)).


> Oh, and I don't have an external modem (someone wants to send me
> an old 2400bps one? :)

Bit slow, eh???
Here there are 33k6 modems (WiseCom, the one I've got myself) in a local
Dump-shop for only 20 guilders. I will take some with me to the Bussum fair
(but I guess you won't be there... :)... Anyways a good modem shouldn't be
an expense too big. The computer shop bought a little too much 33k6 modems
but people want only 56k modems nowadays so he got a leftover... And 33k6 is
fast enough for MSX (even IF you can reach a higher speed with a 56k-modem,
which often isn't the case).

I've got two 2400bps modems layin' around, but the mail cost would exeed the
value of the modem 10 times. It's not worth the money.


~Grauw


--
>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<
 email me: [EMAIL PROTECTED] or ICQ: 10196372
      visit my homepage at http://grauw.blehq.org/
>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<


****
Problems? contact [EMAIL PROTECTED] See also http://www.faq.msxnet.org/
****

Reply via email to