home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / sys / mac / programm / 18570 < prev    next >
Encoding:
Internet Message Format  |  1992-11-17  |  1.9 KB

  1. Path: sparky!uunet!pageworks.com!world!eff!sol.ctr.columbia.edu!zaphod.mps.ohio-state.edu!uwm.edu!rpi!batcomputer!munnari.oz.au!ariel.ucs.unimelb.EDU.AU!ucsvc.ucs.unimelb.edu.au!lugb!lure.latrobe.edu.au!chergr
  2. Newsgroups: comp.sys.mac.programmer
  3. Subject: Re: Fixing Apples serial drivers. How?
  4. Message-ID: <1992Nov18.122053.1@lure.latrobe.edu.au>
  5. From: chergr@lure.latrobe.edu.au
  6. Date: Wed, 18 Nov 1992 02:20:53 GMT
  7. Sender: news@lugb.latrobe.edu.au (USENET News System)
  8. Organization: VAX Cluster, Computer Centre, La Trobe University 
  9. Lines: 30
  10.  
  11. Here is some more background on my serial driver. 
  12.  
  13. The serial driver on the micro I have been talking to at 38400 baud
  14. is interrupt driven with recieve and transmit buffer $80 in size.
  15. The current implementation of this sends an xoff for every character recieved
  16. that fills the buffer behond a certain size. I have looked into this
  17. driver very thoroughly. It does have some potential problems which I fixed
  18. to do with the interrupt routine stealing the xoff which was a polled
  19. routine within the recieve interrupt handler. Fixing other potential
  20. problems similar to this appeared to have very little effect. 
  21.  
  22. I eventually got the thing working properly by changing the character
  23. limit to a higher value ($30->$70) so that the xoff is sent when the buffer
  24. has a lot more characters in it. The person who wrote the serial handler
  25. for the micro was trying to solve what may have been another proble
  26. by setting the character limit so low. The mac plus can now send the
  27. data without artificial delays being inserted. 
  28.  
  29. So why doesn't it work with such a small buffer size??? My hypothesis is
  30. that the Mac ends up recieving twice as many characters as it is sending.
  31. That is each echoed character plus an xoff. The recieve interrupt on the
  32. mac has a higher priorty than the transmit. Could it be that the transmit
  33. buffer on the mac is overflowing???
  34.  
  35.  
  36. Thanks for everones contributions
  37.  
  38. Richard Rothwell
  39.  
  40.  
  41.