home *** CD-ROM | disk | FTP | other *** search
-
- Interrupt-driven Serial I/O Testbed
- by John Schultz
- 4/16/90
-
- This code directly accesses the hardware and achieves very high
- baud rates without errors. This code should be legal if the serial
- device is first opened and exclusive access is granted. Speeds of
- over 130k baud between a stock, nofastmem 500 and a 25mhz GVP 68030
- have been achieved. The '030 Amiga can go much faster; it can read
- at least 223,720 baud. The 500 poops out at 132,575 baud. Writing
- fast is no problem, reading eats up some bandwidth, and is thus
- the bottleneck. Polled I/O (yuk) can yield faster rates. These
- baud rates were accomplished with a direct 2,3,7 wire, 50 foot
- shielded cable. Max baud rates may vary depending on cable and
- hardware configurations.
- The current test code, ST (Serial Test), writes characters typed
- on the keyboard 10 times. Errors at high speed show up when less
- than 10 characters are received or funny characters are inserted.
- I can run DNet and leave it running while I run this code! DNet
- must be idling, and the baud rate must be the same as DNet's (usually
- 19200) the last time you run ST. This is very useful as quiting and
- restarting DNet is not necessary.
- Part of the original assembly code came from the Amiga Transactor,
- September 1989: Volume 2, Issue 6,pp 42-44, by Mike Schwartz. The
- example changed the AutoVectors directly, and had a few typos. I use
- SetIntVector(), and do things a little differently with the rbf and
- tbe code. This was pretty much the first assembly language program I
- wrote, so experts feel free to point out improvements.
- I wrote the code using Lattice 5.04. I currently use the Cape
- or Devpac assemblers for speed, but for this example used Lattice's
- asm (everyone with Lattice should have it).
-
- As always, please point out any optimizations, errors, or illegal
- acts committed in this code. If you enhance the code, please email me
- a copy.
-
- Use this code as you wish; no strings, ropes, cables, or
- bungee cords attached.
-
-
-
- John
-