Path: utzoo!utgpu!attcan!uunet!lll-winken!lll-ncis!helios.ee.lbl.gov!pasteur!ucbvax!UREGINA1.BITNET!CRONEJP From: CRONEJP@UREGINA1.BITNET (Jonathan Crone) Newsgroups: comp.sys.amiga Subject: CheapNet Message-ID: <8901062235.AA12520@jade.berkeley.edu> Date: 6 Jan 89 21:10:31 GMT Sender: daemon@ucbvax.BERKELEY.EDU Lines: 113 Seeing as how I find myself in the unfortunate position of having to do YET ANOTHER PROJECT.... I figured that I'd do something that would at least be applicable to my amiga.... Please consider that this is an alpha spec (IE I'm still screwing around with the idea) but that it IS going to have to be hammered out within about a week or so into a preliminary design spec.... I'd appreciate Net comment, Net ideas, Net sample code, Net sympathy etc I'd especially like to hear what some of the commodore people and Matt Dillon think. (ESP. Matt) Ok here it is.... as part of a class in hardware design, and software support of said hardware, I would like to come up with a cheap network for the amiga. My idea is as follows.... Utilizing the amiga serial port ( yeah, ok, its there, and I don't have any of the hardware manuals so I don't know how to use the parallel port as a simultaneous input and output device) as a relatively high speed output device (I seem to recall hearing over the net that the amiga can do about 100k bps out the serial port without a sweat, and about 200k bps with a lot of sweating ) I would like to build a network by tieing the transmit line of each system to the receive line of the next system in line, thus forming a ugly looking ring network. The hardwrae handshaking would be handled by connecting the RTS line of the sending system to the CTS line of the receiving system... The hardware interface would be primitively simple, DB25 connectors run to the amiga serial port, with two RJ11C 4 wire conectors on the back, one being the in line, and the other being the out. Only three wires would be used, the transmit/receive line, the request/clear to send line and a ground, but I'm trying to use parts that are in my junk box... The idea for the software is to create a network device... called NET: (now, i've programmed under microsloth dos, and unix, and on my amiga but i've never programmed a device driver, so if people can mail me sample device driver source code, like PIPE:, P:, NULL: I'd certainly appreciate it...) the idea is that access to the network would be as such, NET:0/df0:foo/glar/spam NET is the device name, the 0 is the net number, and the rest is the filespec for the remote system. The actual transmissions would be as follows, initiate packet. node number ANDed with 128 (is the idenifier for a initiate packet) is byte 1. length of packet (filepath/name) is byte 2. read or write is byte 3 rest of packet is the filepath/name packet terminator is NULL/001/NULL/001/NULL error packet is nodenumber ANDed with 64 (identifier for an error) byte 1 Packet to resend. byte 2 packet terminator data packet node number byte 1 packet number byte 2 packet length bytes 3 and 4 data packet two byte checksum packet terminator the receiving system would receive the packets, see if its for it, and if it isn't send it on. Obviously i'm still fleshing it together.... now for my questions. obviously i have to write a device driver for this thing. Now, does this device driver have to grab the serial port directly? or can it talk to SER: IS THIS THING FEASIBLE OR HAVE I BEEN DRINKING TOO MUCH ROOT BEER??? :-) (sorry for shouting.... :-) ) Will Lattice V5.0 be all that I need to accomplish this??? obviously a network watchdog program would be nice as well, obviously that should be in a window.... can cheapnet.device create error messaging that another task can catch and display??? Please send comments, corrections, etc. etc. to cronejp@uregina1.bitnet or if you cannot find this address, use cronejp@mcl.uucp and yes, I know that this is an imposition, but i really would like to write this thing to the point that i can get a mark for it then, maybe release it as a freely redistributable type of thing thanks very much.... Jonathan P. Crone CRONEJP@UREGINA1.BITNET cronejp@mcl.UUCP