> > There is another problem in the time before a transfer is started. The
sender
> > must wait for the receiver to be ready. If it waits while interrupts are
> > disabled, interrupts can be disabled for quite a while (maximum: timeout
> > value). If it waits while interrupts are enabled, the waiting can be
> > interrupted and the receiver must wait for the sender, resulting in a
more
> > complex protocol.
>
> Interrupts must be disabled during waiting and the timeout value must be
> smaller than 1/60th of a second.

Music (games/apps) and Modem (apps) won't be happy with that.


> > "Know the time used for the operation" is not as simple as it sounds.
It's
> > different for Z80 at 3.5MHz/6MHz/7Mhz/8MhZ, R800, Z380 and non-MSX
machines.
> > And on machines with a cache it's impossible to calculate exactly, you
can
> > give only minimum and maximum times, but that's not good enough. Even
the
> > simple fact that the R800 doesn't send CAS (or was it RAS?) when it
isn't
> > needed adds a lot of complexity to the calculation (it matters how many
> > 512-byte boundaries are crossed by the code).
>
> Hmmmmm, that makes things awfully complicated, indeed.

I don't understand how you can use asynchronous communication with JoyNet.
It requires a timer on both sides running both at the same speed. Which you
haven't, unless both have a MusicModule or OPL4 plugged in (timings of MM
and OPL4 are slightly different, so they have to be equal on both machines),
and then the transfer rate will still be very slow compared to synchronous
communication and the entire concept of JoyNet (cheap, easy) will be lost.

Synchronous communication doesn't require the interrupts to be disabled, and
it's faster. However I haven't got ideas on how to implement it (think about
it yourself). I do have ideas on how to implement a bidirectional
peer-to-peer link using JoyNet (=2 computers only).

As far as I can see, it's also not possible to communicate bidirectional
using a JoyNet network (>2 computers), since it has only 1 dataline (ack)
going back to the previous host (for acknowledgement), and the other two
datalines (dat1 and dat2) go to the next host. However if you have every
host connected to two others using a peer-to-peer link (2 computers, so not
really a 'network') in both joystickports (which make it a network again),
then bidirectional transfer is indeed be possible. However you haven't got
any spare joystickports then, the amount of cables is twice as much, and the
setup has to be changed depending on the implementation (some might require
'real' JoyNet ring network, which is actually quite logical, and some might
require a semi JoyNet ring with simple peer-to-peer links like described
above).


~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