home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / archives / tiexplorer.zip / sclose.lsp < prev    next >
Lisp/Scheme  |  1986-09-22  |  3KB  |  57 lines

  1.  
  2. ;;; -*- Mode: Lisp; Package: User; Base: 8.; Patch-File: T -*-
  3.  
  4. ;;;                           RESTRICTED RIGHTS LEGEND
  5.  
  6. ;;;Use, duplication, or disclosure by the Government is subject to
  7. ;;;restrictions as set forth in subdivision (b)(3)(ii) of the Rights in
  8. ;;;Technical Data and Computer Software clause at 52.227-7013.
  9. ;;;
  10. ;;;                     TEXAS INSTRUMENTS INCORPORATED.
  11. ;;;                              P.O. BOX 2909
  12. ;;;                           AUSTIN, TEXAS 78769
  13. ;;;                                 MS 2151
  14. ;;;
  15. ;;; Copyright (c) 1986, Texas Instruments Incorporated.  All rights reserved.
  16.  
  17. ;;; Written 5/16/86 17:44:10 by FORD,
  18. ;;; Reason: Change :CLOSE to clear the hardware registers.
  19. ;;; while running on B from band LOD2
  20. ;;; with System 2.44, Compiler 2.5, File System 2.1, Universal Command Loop 2.0, Window System 2.5, Input Editor 2.0, ZMACS 2.5, Error Handler 2.0, Suggestions 2.1, Debug Utilities 2.7, Explorer-Net 2.6, Telnet 2.2, Vt100 2.0, File Server 2.0, Net-Config 2.2, Font Editor 2.2, Mailer 2.4, Mail-Reader 2.4, Streamer-Tape 2.7, Local-File 2.15, System-Log 2.2, Serial-Parallel 2.8, Printer 2.0, Glossary 2.0, IMAGEN 2.1, NVRAM 2.3, User Profile Utility 2.1, IP 1.15, Experimental Code Management Interface 2.22, Experimental Explorer Bug System 20.0, microcode 287, FAN23-MCR287-AUS.
  21.  
  22.  
  23.  
  24. #!Z
  25. ; From file SERIAL-STREAM.LISP#> SERIAL; A:
  26. #8R SYSTEM-INTERNALS#:
  27. (COMPILER-LET ((PACKAGE (PKG-FIND-PACKAGE "SYSTEM-INTERNALS"))
  28.                          (SI:LISP-MODE :ZETALISP)
  29.                          (*READTABLE* STANDARD-READTABLE)
  30.                          (SI:*READER-SYMBOL-SUBSTITUTIONS* NIL))
  31.   (COMPILER#:PATCH-SOURCE-FILE "SYS: SERIAL; SERIAL-STREAM.#"
  32.  
  33.  
  34. (Defmethod (Serial-Stream-Mixin :CLOSE) (&Optional Abort-P)
  35.   ;; deallocate the serial buffers
  36.   (IF *serial-output-buffer*
  37.       (PROGN
  38.         (IF (NOT abort-p) (FUNCALL-SELF ':finish))
  39.         (return-serial-buffer *serial-Output-Buffer*)
  40.         (SETQ *Serial-Output-Buffer* nil)))
  41.   (IF *Serial-Input-Buffer*
  42.       (PROGN
  43.         (return-serial-buffer *Serial-Input-Buffer*)
  44.         (SETQ *Serial-Input-Buffer* nil)))
  45.   (array-dpb-offset 0 %%q-pointer *serial-port* %serial-receive-buffer)
  46.   (array-dpb-offset 0 %%q-pointer *serial-port* %serial-transmit-buffer)
  47.   (setq *serial-port-owner* nil)
  48.   (write-z-reg 9   0)  ;clear master interrupt control register
  49.   (write-z-reg 5   0)  ;DTR, RTS, Tx disable
  50.   (write-z-reg 3   0)  ;Rx disable
  51.   (write-z-reg 15. 0)  ;disable external interrupts
  52.   (write-z-reg 1   0)  ;disable interrupts
  53.   (disable-serial-event)              ;disable SIB serial event posting
  54.   )
  55. ))
  56.  
  57.