[comp.sys.amiga] Question on Serial Interrupt Servers

chin-lon@puff.UUCP (04/18/87)

After reading the example on how to use the parallel port interrupt,
I have the following question on the serial port. Hopefully someone
on the netland (commodore?) would respond:

I planned to write a serial interrupt handling routine for reading and
writing from/to the serial port. I've had success at doing this,
as I was able to both transmit and receive. But I do have one concern:
How can I be sure that when I do a SetIntVector(), that I'm not
taking over someone else's interrupt handler (belonging to the
serial.device, say). In other words, I want to set the interrupt
server only when no one else has one set up.

This issue brings to a more general problem of coordinating between
different programs using the serial port. Suppose that there are
a number of programs, all talking to the same instrument attached to the 
serial port, with each wanting to use the serial port only for
brief durations in its existence. Some programs can make do with
the serial.deivce, while others need to set up their own interrupt handlers.
How can they be coordinated?

Any help is very much appreciated.

Chin-Long Cheng
UW.Madison

# ARPA: chin-lon@puff.wisc.edu 
# CSNET: chin-lon%puff.wisc.edu@csnet-relay
# UUCP: ...!{ihnp4,hplabs,seismo,topaz,etc.}!uwvax!puff!chin-lon

phillip@cbmvax.cbm.UUCP (Phillip Lindsay CATS) (04/20/87)

in article <664@puff.WISC.EDU>, chin-lon@puff.WISC.EDU (Chin-long Cheng) says:
> Keywords: amiga serial interrupt
........ 
> I planned to write a serial interrupt handling routine for reading and
> writing from/to the serial port. I've had success at doing this,
> as I was able to both transmit and receive. But I do have one concern:
> How can I be sure that when I do a SetIntVector(), that I'm not
> taking over someone else's interrupt handler (belonging to the
> serial.device, say). In other words, I want to set the interrupt
> server only when no one else has one set up.

The "misc.resource" manages the serial port. Look in resources/misc.h.
The serial port is "MR_SERIALPORT" and protocol bits "MR_SERIALBITS."
==============================================================================
Phillip (Flip) Lindsay - Commodore Business Machines - Amiga Technical Support
  UUCP: {ihnp4|seismo|caip}!cbmvax!phillip      - Phone: (215) 431-9180
  No warranty is implied or otherwise given in the form of suggestion or 
  example. Any opinions found here are of my making. 	

chin-lon@puff.WISC.EDU (Chin-long Cheng) (04/21/87)

In article <1693@cbmvax.cbmvax.cbm.UUCP>, phillip@cbmvax.cbm.UUCP (Phillip Lindsay CATS) writes:

> The "misc.resource" manages the serial port. Look in resources/misc.h.
> The serial port is "MR_SERIALPORT" and protocol bits "MR_SERIALBITS."

So, that's what the MR_SERIALPORT is for? I didn't know whether or not
it was for the SDR on the 8520's, or the serial port. But what about
the MR_SERIALBITS? The MR_PAARALLELBITS are used to lock certain
bits on the 8520 for the parallel port, but such equivalent
for the serial port does not appear on the 8520. (As far as I understand
it.) If you have time, please respond.

Chin-Long cheng
# ARPA: chin-lon@puff.wisc.edu 
# CSNET: chin-lon%puff.wisc.edu@csnet-relay
# UUCP: ...!{ihnp4,hplabs,seismo,topaz,etc.}!uwvax!puff!chin-lon

phillip@cbmvax.cbm.UUCP (Phillip Lindsay CATS) (04/27/87)

in article <689@puff.WISC.EDU>, chin-lon@puff.WISC.EDU (Chin-long Cheng) says:
> 
> In article <1693@cbmvax.cbmvax.cbm.UUCP>, phillip@cbmvax.cbm.UUCP (Phillip Lindsay CATS) writes:
> 
>> The "misc.resource" manages the serial port. Look in resources/misc.h.
>> The serial port is "MR_SERIALPORT" and protocol bits "MR_SERIALBITS."
> 
..[CHOMP]....
> But what about the MR_SERIALBITS? The MR_PAARALLELBITS are used to lock
> certain bits on the 8520 for the parallel port, but such equivalent
> for the serial port does not appear on the 8520. (As far as I understand
> it.) If you have time, please respond.

MR_SERIALBITS refers to the serial (rs232) handshake bits on CIAB Parallel
		 port A.

	MR_SERIALBITS		       MR_PARALLELBITS        
BFD000	7=DTR 6=RTS 5=CD 4=CTS 3=DSR | 2=SEL 1=POUT 0=BUSY
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ^^^^^^^^^^^^^^^^^^^
	SERIAL HANDSHAKE/MISC. LINES | PARALLEL HANDSHAKE/MISC. LINES

Hope this helps.
-phil
==============================================================================
Phillip (Flip) Lindsay - Commodore Business Machines - Amiga Technical Support
  UUCP: {ihnp4|seismo|caip}!cbmvax!phillip      - Phone: (215) 431-9180
  No warranty is implied or otherwise given in the form of suggestion or 
  example. Any opinions found here are of my making.