(FILECREATED "29-May-87 11:44:17" ("compiled on " {MCS:MCS:STANFORD}TALK.LSP;175 {MCS:MCS:STANFORD}TALKGAP.LSP;3) "12-Nov-85 14:59:23" bcompl'd in "INTERLISP-D 24-Jul-86 ..." dated "24-Jul-86 15:37:30") (FILECREATED "29-May-87 10:26:45" {MCS:MCS:STANFORD}TALK.LSP;175 changes to: (VARS TALKCOMS ( PROGN TALK.TEDIT.ADVISEDFNS)) (FNS TALK.IP.PROTOCOLP TALK.TEDIT.READVISE) previous date: "21-May-87 10:31:34" {MCS:MCS:STANFORD}TALK.LSP;173) (FILECREATED "26-Mar-87 09:58:58" {MCS:MCS:STANFORD}TALKGAP.LSP;3 previous date: " 3-Mar-87 10:52:35" {MCS:MCS:STANFORD}TALKGAP.LSP;2) TALK D1 (L (2 PROTOCOL 1 SERVICE 0 USER.OR.HOSTNAME)) ^ @bhB`AOO'oBh`Y oBhjK[Ihh_^hY@H A`AOObI_HAlOZJdgooBh_jLO_OOh__O_MO&__@kMXOmiiN[`oAho@h__jOO_OOh__O_lFAdkhn+AdnJ$dnjdnIdninAnAAH H i(261Q FORCEOUTPUT 254Q READP 250Q PRINTCCODE 144Q PRINTCCODE 103Q PRINTCCODE 23Q OPENP 3 TEXTOBJ) (13Q TALK 6 TEXTOBJ) () TALK.TTY.DISPLAY D1 (L (5 USER 4 PROTOCOL 3 OUTPUTSTREAM 2 INPUTSTREAM 1 WINDOW 0 MAINWINDOW)) X`@ `A g@ gA E@goE @gg@CD`h X H (125Q TTY.PROCESS 121Q PUTWINDOWPROP 115Q ADD.PROCESS 57Q PUTWINDOWPROP 54Q CONCAT 36Q DSPSCROLL 27Q DSPSCROLL 20Q DSPFONT 11Q DSPFONT) (75Q TALK.PROTOCOLTYPES 67Q TALK.TTY.CHARFN 64Q TALK.TTY.PROCESS 44Q ICON 32Q ON 23Q ON 14Q TALK.TTY.FONT 5 TALK.TTY.FONT) ( 50Q "Talk with ") TALK.TTY.LISTEN D1 (L (3 PROTOCOL 2 OUTPUTSTREAM 0 WINDOW) I 1 INPUTSTREAM) hhlA` RC`]M\@ A B ABlKA s@Hg h^A VCgAi A DA ^lLJl Jdl@ J(^Zlh@ II@ N@ @Hg e(276Q TALK.FLASH.CARET 264Q PRINTCCODE 255Q DSPBACKUP 243Q DSPXPOSITION 221Q TALK.RINGBELLS 170Q READCCODE 162Q READP 155Q SPP.CLEAREOM 140Q OPENP 130Q TALK.FLASH.CARET 116Q OPENP 74Q OPENP 62Q OPENP 50Q OPENWP 12Q CHARWIDTH) (273Q ON 146Q NS 125Q OFF 21Q TALK.PROTOCOLTYPES 7 TALK.TTY.FONT) () TALK.TTY.CHARFNA0001A0002 D1 (NAME ERRORSET F 0 RESETVARSLST F 1 RESETY) ,g` hhPcgi hhPcci(46Q READCCODE 31Q CONTROL 10Q SETTERMTABLE) (25Q CONTROL 5 TALK.TERMTABLE 2 SETTERMTABLE) () TALK.TTY.CHARFNA0001 D1 (NAME ERRORSET L (0 NIL) P 3 RESETY P 2 LISPXHIST F 5 OUTPUTSTREAM F 6 DISPLAYSTREAM F 7 LISPXHIST F 10Q MACROY F 11Q RESETVARSLST F 12Q CHARARRAY) tlA` U _V YW!Wog hg\ LKYIlhV HHV WIU hi U I(ci(146Q FORCEOUTPUT 140Q READP 132Q PRINTCCODE 120Q DSPBACKUP 107Q DSPXPOSITION 67Q ERROR! 61Q RESETRESTORE 47Q TALK.TTY.CHARFNA0001A0002 24Q OPENWP 16Q OPENP 7 CHARWIDTH) (55Q ERROR 44Q INTERNAL 4 TALK.TTY.FONT) ( 41Q (TALK.TTY.CHARFNA0001A0002)) TALK.TTY.CHARFN D1 (P 3 RESETSTATE P 2 MACROY P 0 OLDVALUE I 2 CHARARRAY I 1 OUTPUTSTREAM I 0 DISPLAYSTREAM F 4 RESETVARSLST) A@ 1gHhhTcog gIcgI Ki (76Q TTY.PROCESS 70Q ERROR! 62Q APPLY 36Q TALK.TTY.CHARFNA0001 3 TTYDISPLAYSTREAM) (53Q TTYDISPLAYSTREAM 42Q ERROR 33Q INTERNAL 11Q TTYDISPLAYSTREAM) ( 30Q (TALK.TTY.CHARFNA0001)) TALK.ICON.BUTTONEVENTFN D1 (L (0 WINDOW)) s@g !`lZjJJ H@gi Hi o@g o &@g h@g Y @ @ I (160Q PROMPTPRINT 154Q FLASHWINDOW 147Q CLOSEW 142Q PROCESSP 136Q TALK 133Q GETWINDOWUSERPROP 123Q GETWINDOWUSERPROP 112Q MOUSECONFIRM 107Q CONCAT 100Q GETWINDOWUSERPROP 64Q NOTIFY.EVENT 57Q PUTWINDOWPROP 45Q ALLOW.BUTTON.EVENTS 40Q \FZEROP 14Q GETMOUSESTATE 6 PUTWINDOWPROP) (130Q PROTOCOL 120Q ADDRESS 75Q USERNAME 53Q RESULT 20Q LASTMOUSEBUTTONS 3 EVENT) ( 104Q "?" 71Q "(Re)Connect to ") TALK.ICON.CLOSEFN D1 (L (0 WINDOW)) @g @` i (27Q NOTIFY.EVENT 17Q DREMOVE 6 PUTWINDOWPROP) (22Q TALK.ICON.WINDOWS 14Q TALK.ICON.WINDOWS 3 EVENT) () TALK.TEDIT.INSERT D1 (L (3 SCRATCHPTR 2 STRINGSTREAM 1 STRING.OR.CCODE 0 TEXTSTREAM)) 8B@A  HjHH @AkHC Bj h(63Q SETFILEPTR 56Q TEDIT.INSERT 53Q SUBSTRING 41Q \FZEROP 21Q GETFILEPTR 15Q TEDIT.INSERT 12Q MKSTRING 7 CHARACTER) NIL () TALK.TEDIT.DELETE D1 (L (0 TEXTSTREAM)) @d (7 TEDIT.DELETE 4 TEDIT.GETSEL) NIL () TALK.TEDIT.BACKSPACE D1 (L (0 TEXTSTREAM)) )@ @HdgH kk (46Q TEDIT.DELETE 3 TEDIT.GETSEL) (36Q SELECTION 30Q SELECTION 21Q LEFT 14Q SELECTION) () TALK.TEDIT.UNDO D1 (L (0 TEXTSTREAM)) @ (6 TEDIT.UNDO 3 TEXTOBJ) NIL () TALK.TEDIT.REDO D1 (L (0 TEXTSTREAM)) @ (6 TEDIT.REDO 3 TEXTOBJ) NIL () TALK.TEDIT.WORDDELETE D1 (L (0 TEXTSTREAM)) @ (6 \TEDIT.WORDDELETE 3 TEXTOBJ) NIL () TALK.SELFN D1 (L (3 FINAL? 2 SELECTMODE 1 SELECTION 0 TEXTOBJ)) RCgKBgBgBg8@ Fg'H "lH lH A BhH H h(116Q FORCEOUTPUT 111Q PRIN2 101Q TALK.ENCODE.SEL 74Q PRINTCCODE 65Q PRINTCCODE 55Q OPENP 35Q TEXTOBJ) (45Q TALK 40Q TEXTOBJ 26Q DELETE 20Q PENDINGDEL 12Q NORMAL 3 FINAL) () TALK.SETSELFN D1 (L (6 OPERATION 5 LEAVECARETLOOKS 4 PENDINGDELFLG 3 POINT 2 LEN 1 CH#ORSEL 0 TEXTSTREAM)) E@ Fg'H /lH lH ABC F DgghH H h(101Q FORCEOUTPUT 74Q PRIN2 51Q TALK.ENCODE.SEL 42Q PRINTCCODE 33Q PRINTCCODE 23Q OPENP 3 TEXTOBJ) (65Q NORMAL 61Q PENDINGDEL 13Q TALK 6 TEXTOBJ) () TALK.TEDIT.SETSEL D1 (L (1 STREAM 0 TEXTSTREAM)) A @HH (17Q TALK.DECODE.SEL 3 READ) NIL () TALK.IMAGEOBJFN D1 (L (2 CH#ORSEL 1 OBJECT 0 TEXTSTREAM)) K@ Fg'H 5lH lH AH @ BI I H H h(107Q FORCEOUTPUT 102Q PRIN2 76Q TALK.ENCODE.SEL 55Q TEDIT.GETSEL 50Q WRITEIMAGEOBJ 42Q PRINTCCODE 33Q PRINTCCODE 23Q OPENP 3 TEXTOBJ) (71Q SELECTION 63Q SELECTION 13Q TALK 6 TEXTOBJ) () TALK.TEDIT.INSERT.OBJECTA0001 D1 (NAME ERRORSET F 0 MACROY)  ci(5 ERRORSET 2 READ) NIL () TALK.TEDIT.INSERT.OBJECT D1 (L (1 STREAM 0 TEXTSTREAM) P 3 RESETSTATE P 2 MACROY P 0 OLDVALUE F 4 RESETVARSLST) MA 1gHhhTcog gIcgI KJd@dA (112Q TEDIT.INSERT.OBJECT 107Q TALK.DECODE.SEL 104Q READ 70Q ERROR! 62Q APPLY 36Q TALK.TEDIT.INSERT.OBJECTA0001 3 INPUT) (53Q INPUT 42Q ERROR 33Q INTERNAL 11Q INPUT) ( 30Q (TALK.TEDIT.INSERT.OBJECTA0001)) TALK.LOOKSFN D1 (L (3 LEN 2 CH#ORSEL 1 NEWLOOKS 0 TEXTSTREAM)) 9@ Fg'H #lH lH ABC hH H h(65Q FORCEOUTPUT 60Q PRIN2 51Q TALK.ENCODE.SEL 42Q PRINTCCODE 33Q PRINTCCODE 23Q OPENP 3 TEXTOBJ) (13Q TALK 6 TEXTOBJ) () TALK.TEDIT.LOOKS D1 (L (1 STREAM 0 TEXTSTREAM)) A @H@H (23Q TEDIT.LOOKS 20Q TALK.DECODE.SEL 3 READ) NIL () TALK.PARAFN D1 (L (3 LEN 2 CH#ORSEL 1 NEWLOOKS 0 TEXTOBJ)) 9@ Fg'H #lH lH ABC hH H h(65Q FORCEOUTPUT 60Q PRIN2 51Q TALK.ENCODE.SEL 42Q PRINTCCODE 33Q PRINTCCODE 23Q OPENP 3 TEXTOBJ) (13Q TALK 6 TEXTOBJ) () TALK.TEDIT.PARALOOKS D1 (L (1 STREAM 0 TEXTSTREAM)) A @ H@H (26Q TEDIT.PARALOOKS 23Q TALK.DECODE.SEL 12Q TEXTOBJ 3 READ) NIL () TALK.INSERTFN D1 (L (4 DONTSCROLL 3 LOOKS 2 CH#ORSEL 1 TEXT 0 TEXTSTREAM)) <@ Fg'H &lH lH AB CDhH H h(70Q FORCEOUTPUT 63Q PRIN2 50Q TALK.ENCODE.SEL 42Q PRINTCCODE 33Q PRINTCCODE 23Q OPENP 3 TEXTOBJ) (13Q TALK 6 TEXTOBJ) () TALK.TEDIT.INSERT.TEXT D1 (L (1 STREAM 0 TEXTSTREAM)) A @H@H HH (35Q TEDIT.INSERT 20Q TALK.DECODE.SEL 3 READ) NIL () TALK.INCLUDEFN D1 (L (3 END 2 START 1 FILE 0 TEXTSTREAM)) 7@ Fg'H !lH lH ABChH H h(63Q FORCEOUTPUT 56Q PRIN2 42Q PRINTCCODE 33Q PRINTCCODE 23Q OPENP 3 TEXTOBJ) (13Q TALK 6 TEXTOBJ) () TALK.TEDIT.INCLUDE D1 (L (1 STREAM 0 TEXTSTREAM)) A @HHH (23Q TEDIT.INCLUDE 3 READ) NIL () TALK.DELETEFN D1 (L (2 LEN 1 CH#ORSEL 0 TEXTSTREAM)) ?@ Fg'H )lH lH A@ B BhH H h(73Q FORCEOUTPUT 66Q PRIN2 56Q TALK.ENCODE.SEL 52Q TEDIT.GETSEL 42Q PRINTCCODE 33Q PRINTCCODE 23Q OPENP 3 TEXTOBJ) (13Q TALK 6 TEXTOBJ) () TALK.TEDIT.DELETE.TEXT D1 (L (1 STREAM 0 TEXTSTREAM)) A @dH H (23Q TEDIT.DELETE 15Q TALK.DECODE.SEL 3 READ) NIL () TALK.GETFN D1 (L (2 WHEN 1 FULLFILENAME 0 TEXTSTREAM)) :Bg3@ Fg'H lH lH AhH H h(66Q FORCEOUTPUT 61Q PRIN2 51Q PRINTCCODE 42Q PRINTCCODE 32Q OPENP 12Q TEXTOBJ) (22Q TALK 15Q TEXTOBJ 3 BEFORE) () TALK.TEDIT.GET D1 (L (1 STREAM 0 TEXTSTREAM)) "@ Hj,jdhA HI (37Q TEDIT.GET 30Q READ 3 TEXTOBJ) (12Q TEXTOBJ) () TALK.ENCODE.SEL D1 (L (2 POINT 1 LEN 0 CH#ORSEL)) W@`40odd@og hXI HZYJ YHg@gAjgBgh(64Q LAST 36Q RECORDACCESS) (115Q LEFT 107Q POINT 100Q DCH 74Q CH# 33Q FETCH 4 SELECTIONTYPE#) ( 30Q (DATATYPE SELECTION (Y0 (* Y value of topmost line of selection) X0 (* X value of left edge of selection) DX (* Width of the selection, if it's on one line.) CH# (* CH# of the first selected character) XLIM (* X value of right edge of last selected character) CHLIM (* CH# of the last character in the selection) DCH (* # of characters selected (can be zero, for point selection.)) L1 (* -> line descriptor for the line where the first selected character is) LN (* -> line descriptor for the line which contains the end of the selection) YLIM (* Y value of the bottom of the line that ends the selection) POINT (* Which end should the caret appear at? (LEFT or RIGHT)) (SET FLAG) (* T if this selection is real; NIL if not) (\TEXTOBJ FULLXPOINTER) (* TEXTOBJ that describes the selected text) SELKIND (* What kind of selection? CHAR or WORD or LINE or PARA) HOW (* SHADE used to highlight this selection) HOWHEIGHT (* Height of the highlight (1 usually, full line for delete selection...)) (HASCARET FLAG) (* T if there should be a caret for this selection) SELOBJ (* If this selection is inside an object, which object?) (ONFLG FLAG) (* T if the selection is highlighted on the screen, else NIL) SELOBJINFO (* A Place for the selected object to put info about selection inside itself.)) SET _ NIL HOW _ BLACKSHADE HOWHEIGHT _ 1 HASCARET _ T Y0 _ 0 X0 _ 0 POINT _ (QUOTE LEFT) L1 _ (LIST NIL) LN _ (LIST NIL)) 16Q (CH# CHLIM DCH POINT SET SELKIND HOW HOWHEIGHT HASCARET SELOBJ ONFLG)) TALK.DECODE.SEL D1 (L (2 SELECTMODE 1 PLST 0 TEXTSTREAM)) (@Ag' @ Ag'Ag'BghB (45Q TEDIT.SETSEL 13Q TEDIT.GETSEL) (36Q PENDINGDEL 31Q POINT 24Q DCH 16Q SELECTION 4 CH#) () CH.USER.WORKSTATION D1 (L (1 WORKSTATION 0 USER)) EA;A X`#Hj@g @gHhXo @HAo @g (102Q CH.DELETE.PROPERTY 72Q ERROR 56Q CH.ADD.ITEM.PROPERTY 37Q CH.DELETE.PROPERTY 11Q \COERCE.TO.NSADDRESS) (77Q ADDRESS.LIST 43Q ADDRESS.LIST 34Q ADDRESS.LIST 25Q NSADDRESS 16Q NSADDRESSTYPE#) ( 67Q "Address for host not found!" 53Q (SEQUENCE NSADDRESS)) TALK.NS.HOSTNAME D1 (L (0 HOSTNAME)) @d` (13Q \COERCE.TO.NSADDRESS) (5 NSADDRESSTYPE#) () TALK.NS.USERNAME D1 (L (4 USER 3 MODE 2 SERVICE 1 OUTPUTSTREAM 0 INPUTSTREAM)) oBgCg.Xo h``H HA A A BgCg@` @ BgA kPDb(116Q RATOM 72Q FORCEOUTPUT 65Q TERPRI 60Q PRIN1 51Q CH.LOOKUP.OBJECT 32Q STREQUAL 22Q USERNAME) (142Q SPPCON 135Q STREAM 127Q TTY 113Q TALK.READTABLE 105Q SERVER 77Q TEdit 44Q CH.NET.HINT 40Q LOCAL.CLEARINGHOUSE 14Q CLIENT 6 TEdit) ( 27Q "") TALK.NS.CONNECT D1 (L (1 SERVICE 0 HOST)) i R@hig@ ZAM hrJ gMhMMJgg`g`h[.hhh` `HIg dgg𲨰NLLiKNiJd g(233Q SPPOUTPUTSTREAM 152Q COURIER.CALL 135Q \APPEND2 52Q CLOSEF? 31Q COURIER.OPEN 26Q PACK* 7 CH.GETAUTHENTICATOR 3 CH.GETAUTHENTICATOR) (241Q CONNECT 167Q noAnswerOrBusy 157Q ERROR 146Q RETURNERRORS 141Q SPP.USER.TIMEOUT 132Q TALK.GAP.TRANSPORT 112Q GAP.SERVICETYPES 107Q service 104Q TALK.GAP.PARAMETERS 101Q Create 76Q GAP 55Q ANSWER 22Q TALK#) () TALK.NS.EVENT D1 (L (1 OUTPUTSTREAM 0 INPUTSTREAM)) N@ >@ A @ Hdn @ @ dg@ @ g@ (113Q SPP.CLEAREOM 76Q SPP.CLEARATTENTION 63Q EOFP 55Q OPENP 45Q AWAIT.EVENT 34Q READP 27Q OPENP 21Q OPENP) (104Q EOM 67Q ATTENTION 10Q SPPCON 3 STREAM) () TALK.NS.CREDENTIALS D1 (L (0 CREDENTIALS)) @ddgg km (26Q SUBATOM 20Q COURIER.READ.REP) (15Q NAME 12Q CLEARINGHOUSE) () TALK.TEDIT.SERVER D1 (L (7 VERIFIER 6 CREDENTIALS 5 WAITTIME 4 TRANSPORT 3 PARAMETERS 2 PROCEDURE 1 PROGRAM 0 INPUTSTREAM)) ZF @ Ijg`jJ4`HggI o@AB` @d gggH o(122Q TALK.PROCESS 104Q SPPOUTPUTSTREAM 77Q COURIER.RETURN 60Q TALK.ANSWER 7 SPP.DESTADDRESS 3 TALK.NS.CREDENTIALS) (115Q SERVER 112Q NS 107Q TEdit 74Q TALK.GAP.HANDLE 54Q NS 51Q TEdit 44Q TALK.GAG 27Q TALK.SERVICETYPES 24Q TEdit 16Q NSADDRESS) ( 127Q (ABORT serviceNotFound) 65Q (ABORT noAnswerOrBusy)) TALK.TTY.SERVER D1 (L (7 VERIFIER 6 CREDENTIALS 5 WAITTIME 4 TRANSPORT 3 PARAMETERS 2 PROCEDURE 1 PROGRAM 0 INPUTSTREAM)) EF @ Ij`HggI o@AB` @d gggH (102Q TALK.PROCESS 64Q SPPOUTPUTSTREAM 57Q COURIER.RETURN 40Q TALK.ANSWER 7 SPP.DESTADDRESS 3 TALK.NS.CREDENTIALS) (75Q SERVER 72Q NS 67Q TTY 54Q TALK.GAP.HANDLE 34Q NS 31Q TTY 24Q TALK.GAG 16Q NSADDRESS) ( 45Q (ABORT serviceNotFound)) GAP.SERVER D1 (L (7 VERIFIER 6 CREDENTIALS 5 WAITTIME 4 TRANSPORT 3 PARAMETERS 2 PROCEDURE 1 PROGRAM 0 STREAM)) l`gD[hHi`X8o`hY hX L)iLJ JJiIK H@ABCDEFGlM(124Q \DEFINEDP 72Q EQP) (42Q GAP.SERVICETYPES 24Q GAP.SERVICETYPES 5 service) ( 34Q (ABORT serviceNotFound)) DEFINE.GAP.SERVER D1 NIL gg rgg 1Hg'gKZg'Y+Jgg `Hg'L'ggH 5gigIh` ^NM L\ggg gg gg gg (242Q UNMARKASCHANGED 231Q DELDEF 220Q UNMARKASCHANGED 206Q COPYDEF 164Q PUTASSOC 150Q PUTASSOC 121Q PUTDEF 65Q LISTPUT 23Q GETDEF 10Q HASDEF) (237Q COURIERPROGRAM 234Q TALKGAP 226Q COURIERPROGRAM 223Q TALKGAP 215Q COURIERPROGRAM 212Q GAP 203Q COURIERPROGRAM 200Q GAP 175Q TALKGAP 145Q GAP.SERVICETYPES 136Q DEFAULT 127Q GAP.SERVER 115Q COURIERPROGRAM 112Q GAP 76Q ERRORS 71Q GAP.ADDITIONAL.ERRORS 62Q GAP.SERVER 57Q IMPLEMENTEDBY 47Q IMPLEMENTEDBY 40Q Create 33Q PROCEDURES 20Q COURIERPROGRAM 15Q GAP 5 COURIERPROGRAM 2 GAP) () TALK.START.IP.SERVER D1 NIL ,g #g`jHogg h(47Q ADD.PROCESS 5 FIND.PROCESS) (44Q SYSTEM 41Q RESTARTABLE 15Q TALK.PROTOCOLTYPES 12Q IP 2 TALK.IP.SERVER) ( 36Q (TALK.IP.SERVER)) TALK.IP.SERVERA0001 D1 (NAME ERRORSET L (0 NIL) F 17Q SOCKET F 20Q RESETVARSLST)  g` chhhW c Wi YH$H_lOCjWg IH_lOC H_lOC`[KZJ`\L_jOIk WI `4H_lOCllH_lOC _JgH$ Il WI ?Ij I_ WI H$hOgg ] MNJggOi (432Q TALK.PROCESS 411Q TCP.OTHER.STREAM 405Q TCP.OPEN 364Q UDP.SEND 355Q UDP.APPEND.WORD 350Q \TCP.SELECT.PORT 343Q UDP.APPEND.BYTE 332Q UDP.SEND 323Q UDP.APPEND.BYTE 313Q TALK.ANSWER 277Q \GETBASESTRING 223Q UDP.SEND 214Q UDP.APPEND.BYTE 126Q UDP.APPEND.BYTE 101Q UDP.SETUP 44Q \ALLOCATE.ETHERPACKET 40Q UDP.GET 10Q UDP.OPEN.SOCKET) (423Q SERVER 420Q IP 401Q INPUT 376Q PASSIVE 305Q IP 231Q TALK.GAG 170Q TALK.SERVICETYPES 152Q GAP.SERVICETYPES 75Q FREE 5 TALK.UDP.PORT 2 UDP.CLOSE.SOCKET) () TALK.IP.SERVER D1 (P 2 RESETY P 1 LISPXHIST P 0 SOCKET F 4 LISPXHIST F 5 RESETVARSLST) %T!Uog hg[ KJ(40Q ERROR! 33Q RESETRESTORE 21Q TALK.IP.SERVERA0001) (27Q ERROR 16Q INTERNAL) ( 13Q (TALK.IP.SERVERA0001)) TALK.IP.USERNAME D1 (L (4 USER 3 MODE 2 SERVICE 1 OUTPUTSTREAM 0 INPUTSTREAM)) 7Bg*do hA A A @` @ Db(52Q RATOM 42Q FORCEOUTPUT 35Q TERPRI 30Q PRIN1 21Q STREQUAL 11Q USERNAME) (47Q TALK.READTABLE 3 TEdit) ( 16Q "") TALK.IP.EVENT D1 (L (1 OUTPUTSTREAM 0 INPUTSTREAM)) $@ A @d h @ (37Q BLOCK 33Q CLOSEF? 26Q EOFP 20Q READP 11Q OPENP 3 OPENP) NIL () TALK.IP.CONNECTA0001 D1 (NAME ERRORSET L (0 NIL) P 12Q SERVICE F 13Q SOCKET F 14Q RESETVARSLST F 15Q HOST F 16Q SERVICE F 17Q RESETY)  gchhhWc[o hW O9h\WI_lOChggi Z LJd O_hO_O_XW`jWg H`h]Jh Hj Hj HK HK WH` Ydj_lOCdkhONNiMl7i.O+i'ggci(302Q UDP.EXCHANGE 270Q UDP.APPEND.STRING 262Q UDP.APPEND.WORD 257Q NCHARS 251Q UDP.APPEND.WORD 243Q UDP.APPEND.BYTE 235Q UDP.APPEND.BYTE 215Q UDP.SETUP 175Q \ALLOCATE.ETHERPACKET 140Q TCP.OTHER.STREAM 126Q STREAMP 122Q TCP.OPEN 42Q STREQUAL 32Q USERNAME 5 UDP.OPEN.SOCKET) (422Q ANSWER 416Q CONNECT 277Q SPP.USER.TIMEOUT 222Q GAP.SERVICETYPES 211Q FREE 203Q TALK.UDP.PORT 115Q INPUT 112Q ACTIVE 2 UDP.CLOSE.SOCKET) ( 37Q "") TALK.IP.CONNECT D1 (P 2 RESETY P 1 LISPXHIST P 0 SOCKET I 1 SERVICE I 0 HOST F 4 LISPXHIST F 5 RESETVARSLST) %T!Uog hg[ KJ(40Q ERROR! 33Q RESETRESTORE 21Q TALK.IP.CONNECTA0001) (27Q ERROR 16Q INTERNAL) ( 13Q (TALK.IP.CONNECTA0001)) TALK.IP.PROTOCOLP D1 NIL od i(11Q FGETD) NIL ( 3 (UDP.GET TCP.OPEN)) TALK.TEDIT.READVISE D1 NIL 8`1HIH gH d` J KhZYHXK&Z(41Q MEMB 30Q APPLY) (36Q ADVISEDFNS 24Q READVISE 2 TALK.TEDIT.ADVISEDFNS) () COURIER.RESET.SOCKET D1 NIL lg i (13Q CLOSENSOCKET 7 OPENNSOCKET) (4 ACCEPT) () (PRETTYCOMPRINT TALKCOMS) (RPAQQ TALKCOMS ((* * TALK server/client code) (LOCALVARS . T) (FNS TALK) (FNS TALK.PROCESS TALK.DISPLAY TALK.LISTEN TALK.CLOSEFN TALK.USERFN TALK.ANSWER TALK.ANSWER.WINDOW TALK.ANSWER.USERNAME TALK.GET.NAME TALK.ADD.NAME TALK.FLASH.CARET TALK.WHENSELECTEDFN TALK.RINGBELLS) (FNS TALK.TEDIT.DISPLAY TALK.TEDIT.LISTEN TALK.TEDIT.CHARFN) (FNS TALK.TTY.DISPLAY TALK.TTY.LISTEN TALK.TTY.CHARFN) (FNS TALK.ICON.BUTTONEVENTFN TALK.ICON.CLOSEFN) (* * TALK TEdit hooks) (FNS TALK.TEDIT.INSERT TALK.TEDIT.DELETE TALK.TEDIT.BACKSPACE TALK.TEDIT.UNDO TALK.TEDIT.REDO TALK.TEDIT.WORDDELETE TALK.SELFN TALK.SETSELFN TALK.TEDIT.SETSEL TALK.IMAGEOBJFN TALK.TEDIT.INSERT.OBJECT TALK.LOOKSFN TALK.TEDIT.LOOKS TALK.PARAFN TALK.TEDIT.PARALOOKS TALK.INSERTFN TALK.TEDIT.INSERT.TEXT TALK.INCLUDEFN TALK.TEDIT.INCLUDE TALK.DELETEFN TALK.TEDIT.DELETE.TEXT TALK.GETFN TALK.TEDIT.GET) (FNS TALK.ENCODE.SEL TALK.DECODE.SEL) (* * TALK data) (DECLARE: DONTCOPY ( MACROS TALKOPCODE) (RECORDS TALK.SERVICETYPE TALK.PROTOCOLTYPE)) (VARS TALK.ACTIONS TALK.MENU.ITEMS TALK.USER.MESSAGES) (ADDVARS (TALK.SERVICETYPES (TEdit (LAMBDA NIL (FGETD (QUOTE OPENTEXTSTREAM))) TALK.TEDIT.DISPLAY TALK.TEDIT.LISTEN) (TTY TRUE TALK.TTY.DISPLAY TALK.TTY.LISTEN))) (INITVARS TALK.GAG TALK.PROTOCOLTYPES TALK.HOSTNAMES TALK.ICON.WINDOWS (TALK.ANSWER.WAIT 15) (TALK.READTABLE ( COPYREADTABLE (QUOTE ORIG))) (TALK.TERMTABLE (COPYTERMTABLE (QUOTE ORIG))) (TALK.DEFAULT.REGION ( CREATEREGION 0 0 500 500)) (TALK.TTY.FONT DEFAULTFONT) (TALK.ICON.FONT LITTLEFONT)) (VARS TALK.FROM.TEDIT.PROPS TALK.TO.TEDIT.PROPS) (GLOBALVARS TALK.ACTIONS TALK.MENU.ITEMS TALK.USER.MESSAGES TALK.SERVICETYPES TALK.GAG TALK.PROTOCOLTYPES TALK.HOSTNAMES TALK.ICON.WINDOWS TALK.ANSWER.WAIT TALK.READTABLE TALK.TERMTABLE TALK.DEFAULT.REGION TALK.TTY.FONT TALK.ICON.FONT TALK.TO.TEDIT.PROPS TALK.FROM.TEDIT.PROPS) (* * NS GAP Interface) (FNS CH.USER.WORKSTATION) (FNS TALK.NS.HOSTNAME TALK.NS.USERNAME TALK.NS.CONNECT TALK.NS.EVENT TALK.NS.CREDENTIALS) (FNS TALK.TEDIT.SERVER TALK.TTY.SERVER) (FNS GAP.SERVER DEFINE.GAP.SERVER) (ADDVARS (GAP.SERVICETYPES (5 TTY TALK.TTY.SERVER) (6 TEdit TALK.TEDIT.SERVER)) (TALK.PROTOCOLTYPES (NS TRUE TALK.NS.HOSTNAME TALK.NS.USERNAME TALK.NS.CONNECT TALK.NS.EVENT))) (INITVARS (TALK.GAP.HANDLE (QUOTE ((0 0))))) (VARS TALK.GAP.PARAMETERS TALK.GAP.TRANSPORT GAP.ADDITIONAL.ERRORS) (GLOBALVARS GAP.SERVICETYPES TALK.GAP.HANDLE TALK.GAP.PARAMETERS TALK.GAP.TRANSPORT GAP.ADDITIONAL.ERRORS) (DECLARE: DONTCOPY ( RECORDS GAP.SERVICETYPE)) (DECLARE: DONTCOPY DONTEVAL@LOAD DOEVAL@COMPILE (FILES ETHERRECORDS ( LOADCOMP) SPP)) (* * Interim IP Interface) (FNS TALK.START.IP.SERVER TALK.IP.SERVER TALK.IP.USERNAME TALK.IP.EVENT TALK.IP.CONNECT TALK.IP.PROTOCOLP) (INITVARS (TALK.UDP.PORT 517)) (APPENDVARS ( TALK.PROTOCOLTYPES (IP TALK.IP.PROTOCOLP DODIP.HOSTP TALK.IP.USERNAME TALK.IP.CONNECT TALK.IP.EVENT))) (GLOBALVARS TALK.UDP.PORT) (DECLARE: DONTCOPY (RECORDS TALK.IP.PACKET)) (* * etc.) (DECLARE: DONTCOPY (CONSTANTS (COURIER.SOCKET 5))) (FILES COURIERSERVE) (FNS TALK.TEDIT.READVISE COURIER.RESET.SOCKET) ( APPENDVARS (BACKGROUNDFNS COURIER.START.SERVER) (BEFORELOGOUTFORMS (COURIER.RESET.SOCKET))) (ADDVARS ( TALK.TEDIT.ADVISEDFNS TEDIT.SETSEL TEDIT.INSERT TEDIT.DELETE TEDIT.INSERT.OBJECT TEDIT.LOOKS TEDIT.PARALOOKS OPENFILE-IN-TEDIT.INCLUDE)) (ADVICE * (PROGN TALK.TEDIT.ADVISEDFNS)) (DECLARE: DONTCOPY DOEVAL@COMPILE (ALISTS (CHARACTERNAMES UNDO REDO NEXT MARGINS FONT SHIFT.UNDO SHIFT.REDO SHIFT.NEXT SHIFT.MARGINS SHIFT.FONT SHIFT.DEL))) (ALISTS (BackgroundMenuCommands Talk)) (VARS ( BackgroundMenu)) (BITMAPS TALK.ICON.BITMAP) (GLOBALVARS TALK.TEDIT.ADVISEDFNS TALK.ICON.BITMAP COURIER.SOCKET) (P (if (FGETD (QUOTE OPENTEXTSTREAM)) then (TALK.TEDIT.READVISE)) (SETSYNTAX (CHARCODE SPACE) (CHARCODE A) TALK.READTABLE) (ECHOCHAR (CHARCODE BS) (QUOTE IGNORE) TALK.TERMTABLE) ( COURIER.START.SERVER) (TALK.START.IP.SERVER)) (DECLARE: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA) (NLAML) (LAMA TALK.USERFN))))) (RPAQQ TALK.ACTIONS ((8 TALK.TEDIT.BACKSPACE) (15 TALK.TEDIT.INCLUDE) (16 TALK.TEDIT.DELETE.TEXT) (17 TALK.TEDIT.GET) (18 TALK.TEDIT.INSERT.TEXT) (19 TALK.TEDIT.SETSEL) (20 TALK.TEDIT.INSERT.OBJECT) (21 TALK.TEDIT.LOOKS) (22 TALK.TEDIT.PARALOOKS) (23 TALK.TEDIT.WORDDELETE) (127 TALK.TEDIT.DELETE) (516 TALK.TEDIT.UNDO) (520 TALK.TEDIT.REDO) (530 TEDIT.NEXT))) (RPAQQ TALK.MENU.ITEMS ((Disconnect (TALK.CLOSEFN MAINWINDOW) "Close TALK connection and keep window open.") (RingBells (PROGN (PRINTCCODE (CHARCODE ^G) (CDR STREAMS)) (FORCEOUTPUT (CDR STREAMS)) (FLASHWINDOW MAINWINDOW))) (Message (LET ((MESSAGE (MENU (create MENU ITEMS _ TALK.USER.MESSAGES)))) (if (AND MESSAGE (TTY.PROCESSP (WINDOWPROP MAINWINDOW (QUOTE PROCESS)))) then (BKSYSBUF MESSAGE))) "Insert a generic message."))) (RPAQQ TALK.USER.MESSAGES (("One moment please" "One moment please..." NIL (SUBITEMS ( "the phone's ringing" "One moment please, the phone's ringing...") ("there's someone at the door" "One moment please, there's someone at the door...") ("someone is trying to TALK to me" "One moment please, someone is trying to TALK to me..."))) (DATE (DATE) "The current date and time.") "Bye.")) (ADDTOVAR TALK.SERVICETYPES (TEdit (LAMBDA NIL (FGETD (QUOTE OPENTEXTSTREAM))) TALK.TEDIT.DISPLAY TALK.TEDIT.LISTEN) (TTY TRUE TALK.TTY.DISPLAY TALK.TTY.LISTEN)) (RPAQ? TALK.GAG NIL) (RPAQ? TALK.PROTOCOLTYPES NIL) (RPAQ? TALK.HOSTNAMES NIL) (RPAQ? TALK.ICON.WINDOWS NIL) (RPAQ? TALK.ANSWER.WAIT 15) (RPAQ? TALK.READTABLE (COPYREADTABLE (QUOTE ORIG))) (RPAQ? TALK.TERMTABLE (COPYTERMTABLE (QUOTE ORIG))) (RPAQ? TALK.DEFAULT.REGION (CREATEREGION 0 0 500 500)) (RPAQ? TALK.TTY.FONT DEFAULTFONT) (RPAQ? TALK.ICON.FONT LITTLEFONT) (RPAQQ TALK.FROM.TEDIT.PROPS (READONLY T NOTITLE T COPYBYBKSYSBUF T MENU ((Put (QUOTE Put) NIL ( SUBITEMS Plain-Text Old-Format)) Find Quit))) (RPAQQ TALK.TO.TEDIT.PROPS (CHARFN TALK.TEDIT.CHARFN SELFN TALK.SELFN GETFN TALK.GETFN IMAGEOBJFN TALK.IMAGEOBJFN LOOKSFN TALK.LOOKSFN PARAFN TALK.PARAFN INSERTFN TALK.INSERTFN SETSELFN TALK.SETSELFN DELETEFN TALK.DELETEFN INCLUDEFN TALK.INCLUDEFN NOTITLE T QUITFN TRUE COPYBYBKSYSBUF T)) (ADDTOVAR GAP.SERVICETYPES (5 TTY TALK.TTY.SERVER) (6 TEdit TALK.TEDIT.SERVER)) (ADDTOVAR TALK.PROTOCOLTYPES (NS TRUE TALK.NS.HOSTNAME TALK.NS.USERNAME TALK.NS.CONNECT TALK.NS.EVENT) ) (RPAQ? TALK.GAP.HANDLE (QUOTE ((0 0)))) (RPAQQ TALK.GAP.PARAMETERS (ttyHost (seven even two 100 (none 0 0)))) (RPAQQ TALK.GAP.TRANSPORT ((teletype))) (RPAQQ GAP.ADDITIONAL.ERRORS ((serviceTooBusy 17) (userNotAuthenticated 18) (userNotAuthorized 19) ( serviceNotFound 20) (registeredTwice 21) (transmissionMediumHardwareProblem 22) ( transmissionMediumUnavailable 23) (transmissionMediumNotReady 24) (noAnswerOrBusy 25) ( noRouteToGAPService 26) (gapServiceNotResponding 27) (courierProtocolMismatch 28) (gapVersionMismatch 29))) (RPAQ? TALK.UDP.PORT 517) (APPENDTOVAR TALK.PROTOCOLTYPES (IP TALK.IP.PROTOCOLP DODIP.HOSTP TALK.IP.USERNAME TALK.IP.CONNECT TALK.IP.EVENT)) (FILESLOAD COURIERSERVE) (APPENDTOVAR BACKGROUNDFNS COURIER.START.SERVER) (APPENDTOVAR BEFORELOGOUTFORMS (COURIER.RESET.SOCKET)) (ADDTOVAR TALK.TEDIT.ADVISEDFNS TEDIT.SETSEL TEDIT.INSERT TEDIT.DELETE TEDIT.INSERT.OBJECT TEDIT.LOOKS TEDIT.PARALOOKS OPENFILE-IN-TEDIT.INCLUDE) (PUTPROPS TEDIT.SETSEL READVICE (NIL (BEFORE NIL (TALK.USERFN (QUOTE SETSELFN) STREAM CH# LEN POINT PENDINGDELFLG LEAVECARETLOOKS OPERATION)))) (PUTPROPS TEDIT.INSERT READVICE (NIL (BEFORE NIL (TALK.USERFN (QUOTE INSERTFN) STREAM TEXT CH#ORSEL LOOKS DONTSCROLL)))) (PUTPROPS TEDIT.DELETE READVICE (NIL (BEFORE NIL (TALK.USERFN (QUOTE DELETEFN) STREAM SEL LEN)))) (PUTPROPS TEDIT.INSERT.OBJECT READVICE (NIL (BEFORE NIL (TALK.USERFN (QUOTE IMAGEOBJFN) STREAM OBJECT CH#)))) (PUTPROPS TEDIT.LOOKS READVICE (NIL (BEFORE NIL (TALK.USERFN (QUOTE LOOKSFN) STREAM NEWLOOKS SELORCH# LEN)))) (PUTPROPS TEDIT.PARALOOKS READVICE (NIL (BEFORE NIL (TALK.USERFN (QUOTE PARAFN) TEXTOBJ NEWLOOKS SEL LEN)))) (PUTPROPS OPENFILE-IN-TEDIT.INCLUDE READVICE ((TEDIT.INCLUDE . OPENFILE) (BEFORE NIL (TALK.USERFN ( QUOTE INCLUDEFN) STREAM FILE START END)))) (ADDTOVAR BackgroundMenuCommands (Talk (QUOTE (PROMPTPRINT (TALK))) "Start a TALK session with another user/host." (SUBITEMS (On (QUOTE (SETQ TALK.GAG NIL)) "Enable TALK server.") (Off (QUOTE (SETQ TALK.GAG T)) "Disable TALK server.")))) (RPAQQ BackgroundMenu NIL) (RPAQ TALK.ICON.BITMAP (READBITMAP)) (72 72 "OOOOOOOOOOOOOOOOOO@@" "LAIKKGHHDBNOOOOOOO@@" "OGFKJOKKEJDMOOOOOO@@" "OG@KHOHHEJJOOOOOOO@@" "OGFKJOKJMJNMOOOOOO@@" "OGFHKGKKDBNOOOOOOO@@" "OOOOOOOOOOOOOOOOOO@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "OOOOOOOOOOOOOOOOOO@@" "LAKGDGOOOOOOOOOOOO@@" "OGKBENOOOOOOOOOOOO@@" "OGKEDGOOOOOOOOOOOO@@" "OGKGENOOOOOOOOOOOO@@" "OGKGDGOOOOOOOOOOOO@@" "OOOOOOOOOOOOOOOOOO@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "OOOOOOOOOOOOOOOOOO@@" "MM@HLGOOOOOOOOOOOO@@" "LIFKENOOOOOOOOOOOO@@" "MEFKDGOOOOOOOOOOOO@@" "MMFKENOOOOOOOOOOOO@@" "MM@HLGOOOOOOOOOOOO@@" "OOOOOOOOOOOOOOOOOO@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "H@@@@@@@@@@@@@@@@A@@" "OOOOOOOOOOOOOOOOOO@@") (if (FGETD (QUOTE OPENTEXTSTREAM)) then (TALK.TEDIT.READVISE)) (SETSYNTAX (CHARCODE SPACE) (CHARCODE A) TALK.READTABLE) (ECHOCHAR (CHARCODE BS) (QUOTE IGNORE) TALK.TERMTABLE) (COURIER.START.SERVER) (TALK.START.IP.SERVER) (PUTPROPS TALK.LSP COPYRIGHT ("Stanford University" 1987)) (PRETTYCOMPRINT TALKGAPCOMS) (RPAQQ TALKGAPCOMS ((COURIERPROGRAMS TALKGAP) (P (DEFINE.GAP.SERVER)))) (COURIERPROGRAM TALKGAP (3 3) TYPES ((WaitTime CARDINAL) (CharLength (ENUMERATION (five 0) (six 1) ( seven 2) (eight 3))) (Parity (ENUMERATION (none 0) (odd 1) (even 2) (one 3) (zero 4))) (StopBits ( ENUMERATION (one 0) (two 1))) (FlowControl (RECORD (type (ENUMERATION (none 0) (xOnXOff 1))) (xOn UNSPECIFIED) (xOff UNSPECIFIED))) (SessionHandle (ARRAY 2 UNSPECIFIED)) (SessionParameterObject ( CHOICE (xerox800 0 NIL) (xerox850 1 UNSPECIFIED) (xerox860 2 UNSPECIFIED) (system6 3 (RECORD ( sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) (cmcll 4 (RECORD (sendBlockSize CARDINAL) ( receiveBlockSize CARDINAL))) (ibm2770 5 (RECORD (sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) (ibm2770Host 6 (RECORD (sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) (ibm6670 7 (RECORD ( sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) (ibm6670Host 8 (RECORD (sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) (ibm3270 9 NIL) (ibm3270Host 10 NIL) (OldTtyHost 11 (RECORD (charLength CharLength) (parity Parity) (stopBits StopBits) (frameTimeout CARDINAL))) (OldTty 12 (RECORD ( charLength CharLength) (parity Parity) (stopBits StopBits) (frameTimeout CARDINAL))) (other 13 NIL) ( unknown 14 NIL) (ibm2780 15 (RECORD (sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) ( ibm2780Host 16 (RECORD (sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) (ibm3780 17 (RECORD ( sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) (ibm3780Host 18 (RECORD (sendBlockSize CARDINAL) (receiveBlockSize CARDINAL))) (siemens9750 19 NIL) (siemens9750Host 20 NIL) (ttyHost 21 (RECORD ( charLength CharLength) (parity Parity) (stopBits StopBits) (frameTimeout CARDINAL) (flowControl FlowControl))) (tty 22 (RECORD (charLength CharLength) (parity Parity) (stopBits StopBits) ( frameTimeout CARDINAL) (flowControl FlowControl))))) (TransportObject (CHOICE (rs232c 0 (RECORD ( CommParams CommParamObject) (preemptOthers ReserveType) (preemptMe ReserveType) (phoneNumber STRING) ( line (CHOICE (alreadyReserved 0 (RECORD (resource Resource))) (reserveNeeded 1 (RECORD (lineNumber CARDINAL))))))) (bsc 1 (RECORD (localTerminalID STRING) (localSecurityID STRING) (lineControl LineControl) (authenticateProc UNSPECIFIED))) (teletype 2 NIL) (polledBSCController 3 (RECORD ( hostControllerName STRING) (controllerAddress ControllerAddress) (portsOnController CARDINAL))) ( sdlcController 4 (RECORD (hostControllerName STRING) (controllerAddress ControllerAddress) ( portsOnController CARDINAL))) (polledBSCTerminal 5 (RECORD (hostControllerName STRING) ( terminalAddress TerminalAddress))) (sdlcTerminal 6 (RECORD (hostControllerName STRING) ( terminalAddress TerminalAddress))) (service 7 (RECORD (id LONGCARDINAL))) (unused 8 NIL) ( polledBSCPrinter 9 (RECORD (hostControllerName STRING) (printerAddress TerminalAddress))) (sdlcPrinter 10 (RECORD (hostControllerName STRING) (printerAddress TerminalAddress))))) (Sequence.TransportObject (SEQUENCE TransportObject)) (BidReply (ENUMERATION (wack 0) (nack 1) (default 2))) (ExtendedBoolean ( ENUMERATION (true 0) (false 1) (default 2))) (DeviceType (ENUMERATION (undefined 0) (terminal 1) ( printer 2))) (AccessDetail (CHOICE (directConn 0 (RECORD (duplex (ENUMERATION (full 0) (half 1))) ( lineType LineType) (lineSpeed LineSpeed))) (dialConn 1 (RECORD (duplex (ENUMERATION (full 0) (half 1)) ) (lineType LineType) (lineSpeed LineSpeed) (dialMode (ENUMERATION (manual 0) (auto 1))) (dialerNumber CARDINAL) (retryCount CARDINAL))))) (CommParamObject (RECORD (accessDetail AccessDetail))) (LineType (ENUMERATION (bitSynchronous 0) (byteSynchronous 1) (asynchronous 2) (autoRecognition 3))) (LineSpeed (ENUMERATION (bps50 0) (bps75 1) (bps110 2) (bps135p5 3) (bps150 4) (bps300 5) (bps600 6) (bps1200 7) (bps2400 8) (bps3600 9) (bps4800 10) (bps7200 11) (bps9600 12) (bps19200 13) (bps28800 14) (bps38400 15) (bps48000 16) (bps56000 17) (bps57600 18))) (LineControl (ENUMERATION (primary 0) (secondary 1))) (ControllerAddress CARDINAL) (TerminalAddress CARDINAL) (credentials (AUTHENTICATION . CREDENTIALS)) ( verifier (AUTHENTICATION . VERIFIER)) (Duplexity (ENUMERATION (full 0) (half 1))) (PortClientType ( ENUMERATION (unassigned 0) (outOfService 1) (its 2) (irs 3) (gws 4) (ibm3270Host 5) (ttyEmulation 6) ( rbs 7) (fax 8) (mailGateway 9) (phototypesetter 10))) (PortDialerType (ENUMERATION (none 0) (vadic 1) (hayes 2) (ventel 3) (rs366 4))) (PortEchoingLocation (ENUMERATION (application 0) (ciu 1) (terminal 2 ))) (ReserveType (ENUMERATION (preemptNever 0) (preemptAlways 1) (preemptInactive 2))) (RS232CData ( RECORD (cIUPort BOOLEAN) (owningClientType PortClientType) (preemptionAllowed BOOLEAN) (lineNumber CARDINAL) (dialerNumber CARDINAL) (duplexity Duplexity) (dialingHardware PortDialerType) (charLength CharLength) (echoing PortEchoingLocation) (flowControl FlowControl) (lineSpeed LineSpeed) (parity Parity) (stopBits StopBits) (portActsAsDCE BOOLEAN) (accessControl NSNAME) (validLineSpeeds (SEQUENCE LineSpeed))))) PROCEDURES ((Reset 0) (Create 2 (SessionParameterObject Sequence.TransportObject WaitTime credentials verifier) RETURNS (SessionHandle) REPORTS (badAddressFormat controllerAlreadyExists controllerDoesNotExist dialingHardwareProblem illegalTransport inconsistentParams mediumConnectFailed noCommunicationHardware noDialingHardware terminalAddressInUse terminalAddressInvalid tooManyGateStreams transmissionMediumUnavailable serviceTooBusy userNotAuthenticated userNotAuthorized serviceNotFound) IMPLEMENTEDBY GAP.SERVER)) ERRORS (( unimplemented 0) (noCommunicationHardware 1) (illegalTransport 2) (mediumConnectFailed 3) ( badAddressFormat 4) (noDialingHardware 5) (dialingHardwareProblem 6) (transmissionMediumUnavailable 23 ) (inconsistentParams 8) (tooManyGateStreams 9) (bugInGAPCode 10) (gapNotExported 11) ( gapCommunicationError 12) (controllerAlreadyExists 13) (controllerDoesNotExist 14) ( terminalAddressInUse 15) (terminalAddressInvalid 16) (serviceTooBusy 17) (userNotAuthenticated 18) ( userNotAuthorized 19) (serviceNotFound 20) (registeredTwice 21) (transmissionMediumHardwareProblem 22) (transmissionMediumNotReady 24) (noAnswerOrBusy 25) (noRouteToGAPService 26) (gapServiceNotResponding 27) (courierProtocolMismatch 28) (gapVersionMismatch 29))) (DEFINE.GAP.SERVER) NIL