;;; -*- Mode:Lisp; Readtable:ZL; Package:USER; Base:8; Patch-File:T -*- ;;; Patch file for Unix-Interface version 9.1 ;;; Reason: ;;; don't fool with share-ttys on explorers ;;; Written 18-Mar-86 13:04:31 by pace at site LMI Cambridge ;;; while running on Lambda Two from band 2 ;;; with Experimental System 110.121, Experimental Lambda-Diag 7.0, Experimental Local-File 68.1, Experimental FILE-Server 18.2, Experimental Unix-Interface 9.0, Experimental ZMail 65.7, Experimental Object Lisp 3.0, Experimental Tape 6.0, Experimental Site Data Editor 3.1, Experimental Tiger 24.0, Experimental KERMIT 31.2, Experimental Window-Maker 1.0, Experimental Gateway 4.0, Experimental TCP-Kernel 39.5, Experimental TCP-User 62.5, Experimental TCP-Server 45.5, Experimental MEDIUM-RESOLUTION-COLOR 3.0, Experimental MICRO-COMPILATION-TOOLS 3.0, microcode 1408, SDU ROM 102, Alpha III Cambridge. ;; *** Note: *** ;; You may lose because the buffer has no readtable attribute. ;; ************* ; From modified file DJ: L.UNIX; LAMTTY.LISP#55 at 18-Mar-86 13:04:31 #8R UNIX#: (COMPILER-LET ((*PACKAGE* (PKG-FIND-PACKAGE "UNIX"))) (COMPILER::PATCH-SOURCE-FILE "SYS: UNIX; LAMTTY  " (defun make-all-share-ttys (&aux share-ttys) (select-processor (:lambda (setq *share-ttys* nil) (cond ((zerop (si:%system-configuration-number-of-share-ttys si:*sys-conf*)) (process-wait "unix share tty setup" #'(lambda () (not (zerop (si:%system-configuration-number-of-share-ttys si:*sys-conf*))))) (process-sleep 60.))) (let ((base-adr (si:sdu-phys-to-virtual (si:%system-configuration-share-tty-0 si:*sys-conf*))) (nttys (si:%system-configuration-number-of-share-ttys si:*sys-conf*)) share-tty-0) (setq share-tty-0 (si:make-share-tty-virtual base-adr)) (dotimes (i nttys) (let* ((vaddr (+ base-adr (* i (+ (max (si:%share-tty-lisp-to-unix-buffer share-tty-0) (si:%share-tty-unix-to-lisp-buffer share-tty-0)) (truncate (si:%share-tty-buf-size share-tty-0) 4))))) (st (si:make-share-tty-virtual vaddr))) (push st share-ttys) (si:add-shared-device :name (format nil "UNIX-STREAM-~d" i) :shared-device-flavor 'unix-stream-shared-device :owner-virtual-address (+ vaddr si:%share-tty-owner) :default-flavor-and-init-options `(unix-stream :port-number ,i) :property-list `(share-tty ,st)) ))) (setq *share-ttys* (reverse share-ttys))) ((:explorer :cadr)))) )) ; From modified file DJ: L.UNIX; LAMTTY.LISP#55 at 18-Mar-86 13:05:22 #8R UNIX#: (COMPILER-LET ((*PACKAGE* (PKG-FIND-PACKAGE "UNIX"))) (COMPILER::PATCH-SOURCE-FILE "SYS: UNIX; LAMTTY  " (defmethod (unix-stream :after :describe) () (declare (special si:share-tty-qs)) (select-processor (:lambda (dolist (q si:share-tty-qs) (format t "~&~s:~40t~o" q (funcall q share-tty)))) ((:explorer :cadr)))) )) ; From modified file DJ: L.UNIX; LAMTTY.LISP#55 at 18-Mar-86 13:15:40 #8R UNIX#: (COMPILER-LET ((*PACKAGE* (PKG-FIND-PACKAGE "UNIX"))) (COMPILER::PATCH-SOURCE-FILE "SYS: UNIX; LAMTTY  " (defmethod (unix-stream :setup) () (select-processor ((:explorer :cadr) (ferror nil "only for lambda")) (:lambda)) (setq ready-p nil) (cond ((not (si:share-mode-active-p)) (ferror nil "not in share mode"))) (setq share-tty (get-share-tty-number port-number)) (setq buf-size (si:%share-tty-buf-size share-tty)) (cond ((zerop buf-size) (ferror nil "share-tty not really set up"))) (setq lisp-to-unix-array (make-array buf-size :type art-string :displaced-to share-tty :displaced-index-offset (* 4 (si:%share-tty-lisp-to-unix-buffer share-tty)))) (setq unix-to-lisp-array (make-array buf-size :type art-string :displaced-to share-tty :displaced-index-offset (* 4 (si:%share-tty-unix-to-lisp-buffer share-tty)))) (send self :set-carrier t) (setq ready-p t)) ))