home *** CD-ROM | disk | FTP | other *** search
- Newser Device Doc File
-
- The first thing that I want to say, is that this is not my program. The
- code was written by Dan Babcock for an article that appeared in Amazing
- Computing Volume 6 No. 2, in February 1991. The article was called
- "More Ports for Your Amiga: An I/O Expansion Board" by Jeff Lavin.
- It explains how to build a multi I/O serial/parallel board for your Amiga.
- The board and parts can be purchased from "The Puzzle Factory, Inc." in
- Veneta OR.
- Now this is where I come in. I built the board for a friend to add to
- his computer. The source code for the device driver was included on a
- disk with the purchase of the parts. At this time, I was also working on
- SerServer Version 2.20. Well SerServer requires control of the DTR line
- to work properly. There was no method in newser, short of hitting the
- hardware to control the line. I have always felt that Commodore made a
- mistake in the code for the serial.device, not having provided a method
- in message passing, to control the line. I feel that ASDG did it right in
- the siosbx.device to provide the service in message passing. I then
- decided to add the code to newser.device. This is how it works;
-
- Name - SetCtrlLines - Allows setting of various control lines
-
- Function - This function allows the state of various control lines to
- be affected without closing the expansion serial device.
- The effect of the command will take place immediately.
-
- IO Request Format
-
- io_Command - SIOCMD_SETCTRLLINES (16 decimal or 0x10 hex)
- io_Offset - A bit mask containing a one in each bit position which
- will be changed. Any bit position with a zero value
- will be unchanged irrespective of the value contained
- in io_Length.
- io_Length - The values each affected bit should be set to. Any bit
- position which has a zero in the corresponding position
- in io_Offset will be ignored.
-
- The valid bit positions (masks) are:
-
- SIOB_SET_RTS - bit position 0.
- SIOB_SET_DTR - bit position 1.
-
-
- To turn off RTS, you would send the following message;
-
- IOB->io_Command = 0x10; /* The command */
- IOB->io_Offset = 2; /* specify bit 1 be changed */
- IOB->io_Length = 0; /* it will be changed to a 0 */
-
-
- To turn RTS off and DTR on at the same time, the following message is sent;
-
- IOB->io_Command = 0x10; /* The command */
- IOB->io_Offset = 3; /* specify bits 0 & 1 be changed */
- IOB->io_Length = 1; /* bit 0 set and bit 1 unset */
-
-
- So thats how it works. If you want to use SerServer 2.20 with this card,
- then I suggest that you use this code (the device driver) to control the
- hardware. SerServer will not function properly, if you do otherwise. This
- LHARC contains the executable, the modified source code, a header file and
- this doc file. I hope Dan or Jeff, see fit to change the original source,
- to handle this new command.
-
-
- Mike Mossman CIS - 76515,3017
- FIDO- 1:255/1.4
- PUNTER - NODE 95
-
-
-
-