From 16fa8c6a2463967bb18f038d1e3ecc71d4ede5d5 Mon Sep 17 00:00:00 2001 From: Nick Briggs Date: Wed, 17 Dec 2025 13:08:38 -0800 Subject: [PATCH 1/9] Updates \ETHEREVENTFN to remove early exit when the ethernet is unvailable. In the case that the ethernet is unavailable the \ETHEREVENTFN should still call \SETETHERFLAGS, \SETLOCALNSNUMBERS, and \FLUSHNDBS, or a newly started image will retain information from the system on which it was built (such as ethernet MAC address in the NS address). This will also ensure that the NS address is not set to 0, instead initializing with a fake address based on the system serial number (calls \SERIALNUMBER). --- sources/LLETHER | 520 +++++++++++++++++++++---------------------- sources/LLETHER.LCOM | Bin 43862 -> 43618 bytes 2 files changed, 254 insertions(+), 266 deletions(-) diff --git a/sources/LLETHER b/sources/LLETHER index 6bc70986..7171a26e 100644 --- a/sources/LLETHER +++ b/sources/LLETHER @@ -1,15 +1,11 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED " 3-May-2021 23:13:56" {DSK}larry>ilisp>medley>sources>LLETHER.;4 139646 - changes to%: (FNS \ETHEREVENTFN \ETHER-AVAILABLE) - (VARS LLETHERCOMS) +(FILECREATED "20-Dec-2025 14:12:06" {DSK}briggs>projects>medley>sources>LLETHER.;2 138541 - previous date%: " 2-May-2021 12:37:02" {DSK}larry>ilisp>medley>sources>LLETHER.;3) + :CHANGES-TO (FNS \ETHEREVENTFN) + :PREVIOUS-DATE "17-Dec-2025 11:02:51" {DSK}briggs>projects>medley>sources>LLETHER.;1) -(* ; " -Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. -") (PRETTYCOMPRINT LLETHERCOMS) @@ -17,19 +13,19 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. [(DECLARE%: EVAL@COMPILE DONTCOPY (FILES (SOURCE) LLNSDECLS)) [COMS (* ; - "Stuff that should be somewhere else!") + "Stuff that should be somewhere else!") (INITVARS (ERRORMESSAGESTREAM T) (PROMPTWINDOW T)) (GLOBALVARS ERRORMESSAGESTREAM PROMPTWINDOW) (COMS (* ; - "Queue management for data which can be chain-linked through the first cell") + "Queue management for data which can be chain-linked through the first cell") (DECLARE%: DONTCOPY (EXPORT (RECORDS SYSQUEUE QABLEITEM) (MACROS \QUEUEHEAD))) (INITRECORDS SYSQUEUE) (SYSRECORDS SYSQUEUE) (FNS CANONICAL.HOSTNAME \ENQUEUE \DEQUEUE \QUEUELENGTH \ONQUEUE \UNQUEUE) (* ; - "Queue management constructed by TCONC") + "Queue management constructed by TCONC") (EXPORT (MACROS \DETCONC \ENTCONC \PEEKTCONC] (COMS (* ; "General packet management") (DECLARE%: DONTCOPY @@ -124,7 +120,7 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE DONTCOPY (GLOBALVARS \CENTICLOCKFACTOR \CENTICLOCKBOX) (RECORDS CENTICLOCK))) (COMS (* ; - "3MB stuff, which is not needed in DandeLion") + "3MB stuff, which is not needed in DandeLion") (FNS \3MBGETPACKET \3MB.CREATENDB \3MBSENDPACKET \3MBWATCHER \3MBENCAPSULATE \3MB.BROADCASTP \3MBFLUSH) (INITVARS (\MAXWATCHERGETS 5)) @@ -168,19 +164,18 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE (DATATYPE SYSQUEUE ((NIL BYTE) - (SYSQUEUEHEAD POINTER) - (NIL BYTE) - (SYSQUEUETAIL POINTER))) + (SYSQUEUEHEAD POINTER) + (NIL BYTE) + (SYSQUEUETAIL POINTER))) (BLOCKRECORD QABLEITEM ((NIL BITS 4) - (QLINK POINTER) (* ; - "Link to next thing in queue always in first pointer of datum, independent of what the datum is") - ) - (BLOCKRECORD QABLEITEM ((NIL BITS 4) - (LINK POINTER) - (* ; - "Let's also be able to call it a LINK") - ))) + (QLINK POINTER) (* ; + "Link to next thing in queue always in first pointer of datum, independent of what the datum is") + ) + (BLOCKRECORD QABLEITEM ((NIL BITS 4) + (LINK POINTER)(* ; + "Let's also be able to call it a LINK") + ))) ) (/DECLAREDATATYPE 'SYSQUEUE '(BYTE POINTER BYTE POINTER) @@ -192,7 +187,7 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE (PUTPROPS \QUEUEHEAD MACRO ((Q) - (fetch (SYSQUEUE SYSQUEUEHEAD) of Q))) + (fetch (SYSQUEUE SYSQUEUEHEAD) of Q))) ) (* "END EXPORTED DEFINITIONS") @@ -208,9 +203,9 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (ADDTOVAR SYSTEMRECLST (DATATYPE SYSQUEUE ((NIL BYTE) - (SYSQUEUEHEAD POINTER) - (NIL BYTE) - (SYSQUEUETAIL POINTER))) + (SYSQUEUEHEAD POINTER) + (NIL BYTE) + (SYSQUEUETAIL POINTER))) ) (DEFINEQ @@ -362,9 +357,9 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE (PUTPROPS \DETCONC MACRO [OPENLAMBDA (TQ) - (PROG1 (\PEEKTCONC TQ) - (if [NULL (CAR (RPLACA TQ (CDAR TQ] - then (RPLACD TQ)))]) + (PROG1 (\PEEKTCONC TQ) + (if [NULL (CAR (RPLACA TQ (CDAR TQ] + then (RPLACD TQ)))]) (PUTPROPS \ENTCONC MACRO (= . TCONC)) @@ -382,48 +377,48 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE (DATATYPE ETHERPACKET ((NIL BYTE) - (EPLINK POINTER) (* ; "For queue maintenence") - (EPFLAGS BYTE) (* ; - "optional flags for some applications") - (EPUSERFIELD POINTER) (* ; - "Arbitrary pointer for applications") - (NIL BYTE) - (EPPLIST POINTER) (* ; - "Extra field for use as an A-list for properties") - (EPTRANSMITTING FLAG) (* ; - "True while packet is being transmitted and hence cannot be reused") - (EPRECEIVING FLAG) (* ; - "True when a packet has been seen at the head of the network's input queue at least once") - (NIL BITS 6) - (EPREQUEUE POINTER) (* ; - "Where to requeue this packet after transmission") - (NIL BYTE) - (EPSOCKET POINTER) - (NIL BYTE) - (EPNETWORK POINTER) - (EPTYPE WORD) (* ; - "Type of packet to be encapsulated (PUP or XIP or 10TO3)") - (NIL WORD) - (EPTIMESTAMP FIXP) (* ; - "Gets RCLK value when transmitted/received") - (EPREQUEUEFN POINTER) (* ; "FN to perform requeueing") - (NIL 4 WORD) (* ; "Space for expansion") + (EPLINK POINTER) (* ; "For queue maintenence") + (EPFLAGS BYTE) (* ; + "optional flags for some applications") + (EPUSERFIELD POINTER) (* ; + "Arbitrary pointer for applications") + (NIL BYTE) + (EPPLIST POINTER) (* ; + "Extra field for use as an A-list for properties") + (EPTRANSMITTING FLAG) (* ; + "True while packet is being transmitted and hence cannot be reused") + (EPRECEIVING FLAG) (* ; + "True when a packet has been seen at the head of the network's input queue at least once") + (NIL BITS 6) + (EPREQUEUE POINTER) (* ; + "Where to requeue this packet after transmission") + (NIL BYTE) + (EPSOCKET POINTER) + (NIL BYTE) + (EPNETWORK POINTER) + (EPTYPE WORD) (* ; + "Type of packet to be encapsulated (PUP or XIP or 10TO3)") + (NIL WORD) + (EPTIMESTAMP FIXP) (* ; + "Gets RCLK value when transmitted/received") + (EPREQUEUEFN POINTER) (* ; "FN to perform requeueing") + (NIL 4 WORD) (* ; "Space for expansion") (* ; - "Note: This next field wants to be quad+2 aligned so that the 10mb packet is quad+3 aligned") - (EPENCAPSULATION 8 WORD) (* ; - "10mb encapsulation, or 3mb encapsulation with padding") - (EPBODY 289 WORD) (* ; - "Body of packet, header up to 16 words plus data up to 546 bytes") - )) + "Note: This next field wants to be quad+2 aligned so that the 10mb packet is quad+3 aligned") + (EPENCAPSULATION 8 WORD) (* ; + "10mb encapsulation, or 3mb encapsulation with padding") + (EPBODY 289 WORD) (* ; + "Body of packet, header up to 16 words plus data up to 546 bytes") + )) (ACCESSFNS ETHERAUX ((AUXPTR (CDR (ASSOC 'AUXPTR (fetch EPPLIST of DATUM))) - (\EP.PUT.AUX DATUM 'AUXPTR NEWVALUE)) - (AUXWORD (OR (CDR (ASSOC 'AUXWORD (fetch EPPLIST of DATUM))) - 0) - (\EP.PUT.AUX DATUM 'AUXWORD NEWVALUE)) - (AUXBYTE (OR (CDR (ASSOC 'AUXBYTE (fetch EPPLIST of DATUM))) - 0) - (\EP.PUT.AUX DATUM 'AUXBYTE NEWVALUE)))) + (\EP.PUT.AUX DATUM 'AUXPTR NEWVALUE)) + (AUXWORD (OR (CDR (ASSOC 'AUXWORD (fetch EPPLIST of DATUM))) + 0) + (\EP.PUT.AUX DATUM 'AUXWORD NEWVALUE)) + (AUXBYTE (OR (CDR (ASSOC 'AUXBYTE (fetch EPPLIST of DATUM))) + 0) + (\EP.PUT.AUX DATUM 'AUXBYTE NEWVALUE)))) ) (/DECLAREDATATYPE 'ETHERPACKET @@ -1140,26 +1135,26 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (ADDTOVAR SYSTEMRECLST (DATATYPE ETHERPACKET ((NIL BYTE) - (EPLINK POINTER) - (EPFLAGS BYTE) - (EPUSERFIELD POINTER) - (NIL BYTE) - (EPPLIST POINTER) - (EPTRANSMITTING FLAG) - (EPRECEIVING FLAG) - (NIL BITS 6) - (EPREQUEUE POINTER) - (NIL BYTE) - (EPSOCKET POINTER) - (NIL BYTE) - (EPNETWORK POINTER) - (EPTYPE WORD) - (NIL WORD) - (EPTIMESTAMP FIXP) - (EPREQUEUEFN POINTER) - (NIL 4 WORD) - (EPENCAPSULATION 8 WORD) - (EPBODY 289 WORD))) + (EPLINK POINTER) + (EPFLAGS BYTE) + (EPUSERFIELD POINTER) + (NIL BYTE) + (EPPLIST POINTER) + (EPTRANSMITTING FLAG) + (EPRECEIVING FLAG) + (NIL BITS 6) + (EPREQUEUE POINTER) + (NIL BYTE) + (EPSOCKET POINTER) + (NIL BYTE) + (EPNETWORK POINTER) + (EPTYPE WORD) + (NIL WORD) + (EPTIMESTAMP FIXP) + (EPREQUEUEFN POINTER) + (NIL 4 WORD) + (EPENCAPSULATION 8 WORD) + (EPBODY 289 WORD))) ) (DEFINEQ @@ -1499,21 +1494,19 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. HOSTNAMEP _ 'NILL]) (\ETHEREVENTFN - [LAMBDA (DEV EVENT) (* ; "Edited 3-May-2021 23:12 by larry") + [LAMBDA (DEV EVENT) (* ; "Edited 17-Dec-2025 11:01 by nhb") + (* ; "Edited 3-May-2021 23:12 by larry") (PROG (NDB TURNOFFNS TIMESET) (SELECTQ EVENT ((NIL AFTERLOGOUT AFTERSYSOUT AFTERMAKESYS AFTERSAVEVM RESTART) (SETQ \PUP.READY (SETQ \NS.READY (SETQ \IP.READY))) - (OR (\ETHER-AVAILABLE) - (RETURN)) (\SETETHERFLAGS) (\SETLOCALNSNUMBERS) (\FLUSHNDBS EVENT) (SETQ \10MBLOCALNDB (COND (\10MBFLG (SETQ NDB (\10MB.CREATENDB \10MBFLG)) (COND - (\LOCALNDBS (replace NDBNEXT of - \LOCALNDBS + (\LOCALNDBS (replace NDBNEXT of \LOCALNDBS with NDB)) (T (SETQ \LOCALNDBS NDB))) NDB))) @@ -1536,10 +1529,10 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. ((BEFOREMAKESYS BEFORELOGOUT BEFORESYSOUT BEFORESAVEVM) (COND ((EQ EVENT 'BEFORESAVEVM) (* ; - "Save passwords in place outside vmem to avoid having to reenter them later") + "Save passwords in place outside vmem to avoid having to reenter them later") (\STASH.PASSWORDS)) (T (* ; - "No need to flush this before SAVEVM") + "No need to flush this before SAVEVM") (CLRHASH \ETHERPORTS))) (CLRHASH LOGINPASSWORDS)) NIL]) @@ -1706,40 +1699,40 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (DECLARE%: DONTCOPY (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE -(DATATYPE NDB ((NETTYPE BYTE) (* ; "10 or 3 for now") - (NDBNEXT POINTER) (* ; "Link to next NDB") - (NDBPUPNET# BYTE) (* ; - "Pup number of this net. May be different from NS net number, though not in Xerox world") - (NDBNSNET# POINTER) (* ; - "Can be 32-bits, so might as well leave its box around") - (NDBTASK# BYTE) (* ; "Task # of this network") - (NDBBROADCASTP POINTER) (* ; - "Function that returns true if packet is of broadcast type") - (NDBPUPHOST# BYTE) (* ; - "My pup address on this net. NS address is global to all nets, so not needed here") - (NDBTRANSMITTER POINTER) (* ; - "(NDB PACKET) -- fn to send a raw packet on this net. returns NIL on failure") - (NIL BYTE) - (NDBENCAPSULATOR POINTER) (* ; - "(NDB PACKET HOST LENGTH TYPE) -- fn to encapsulate and send a higher-level packet on this net ") - (NDBCSB POINTER) (* ; "Pointer to CSB for this network") - (NDBIQLENGTH BYTE) - (NDBIQ POINTER) (* ; - "Queue of empty packets for receiver") - (NDBTQ POINTER) (* ; "Queue of packets to transmit") - (NDBTRANSLATIONS POINTER) (* ; - "Cache of translations, 3:10 or 10:3 according to network") - (NDBETHERFLUSHER POINTER) (* ; "Turns off this ether. Args NDB") - (NDBWATCHER POINTER) - (NDBCANHEARSELF POINTER) (* ; - "True if receiver can hear packets sent by transmitter") - (NDBIPNET# POINTER) - (NDBIPHOST# POINTER) - (NDBPUPTYPE WORD) (* ; - "The packet encapsulation of PUP on this net") - (NIL WORD) - (NIL POINTER) (* ; "Spares") - )) +(DATATYPE NDB ((NETTYPE BYTE) (* ; "10 or 3 for now") + (NDBNEXT POINTER) (* ; "Link to next NDB") + (NDBPUPNET# BYTE) (* ; + "Pup number of this net. May be different from NS net number, though not in Xerox world") + (NDBNSNET# POINTER) (* ; + "Can be 32-bits, so might as well leave its box around") + (NDBTASK# BYTE) (* ; "Task # of this network") + (NDBBROADCASTP POINTER) (* ; + "Function that returns true if packet is of broadcast type") + (NDBPUPHOST# BYTE) (* ; + "My pup address on this net. NS address is global to all nets, so not needed here") + (NDBTRANSMITTER POINTER) (* ; + "(NDB PACKET) -- fn to send a raw packet on this net. returns NIL on failure") + (NIL BYTE) + (NDBENCAPSULATOR POINTER) (* ; + "(NDB PACKET HOST LENGTH TYPE) -- fn to encapsulate and send a higher-level packet on this net ") + (NDBCSB POINTER) (* ; "Pointer to CSB for this network") + (NDBIQLENGTH BYTE) + (NDBIQ POINTER) (* ; + "Queue of empty packets for receiver") + (NDBTQ POINTER) (* ; "Queue of packets to transmit") + (NDBTRANSLATIONS POINTER) (* ; + "Cache of translations, 3:10 or 10:3 according to network") + (NDBETHERFLUSHER POINTER) (* ; "Turns off this ether. Args NDB") + (NDBWATCHER POINTER) + (NDBCANHEARSELF POINTER) (* ; + "True if receiver can hear packets sent by transmitter") + (NDBIPNET# POINTER) + (NDBIPHOST# POINTER) + (NDBPUPTYPE WORD) (* ; + "The packet encapsulation of PUP on this net") + (NIL WORD) + (NIL POINTER) (* ; "Spares") + )) (RECORD ROUTING (RTNET# RTHOPCOUNT RTGATEWAY# RTNDB RTTIMER RTRECENT)) ) @@ -1786,26 +1779,24 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE (PUTPROPS ENCAPSULATE.ETHERPACKET MACRO ((NDB PACKET HOST LENGTH TYPE) - (SPREADAPPLY* (fetch NDBENCAPSULATOR - of NDB) - NDB PACKET HOST LENGTH TYPE))) + (SPREADAPPLY* (fetch NDBENCAPSULATOR of NDB) + NDB PACKET HOST LENGTH TYPE))) (PUTPROPS TRANSMIT.ETHERPACKET MACRO ((NDB PACKET) - (SPREADAPPLY* (fetch NDBTRANSMITTER of NDB) - NDB PACKET))) + (SPREADAPPLY* (fetch NDBTRANSMITTER of NDB) + NDB PACKET))) (PUTPROPS BROADCASTP MACRO ((PACKET) - ([LAMBDA (NDB) - (AND NDB (APPLY* (fetch NDBBROADCASTP of NDB) - PACKET NDB] - (fetch EPNETWORK of PACKET)))) + ([LAMBDA (NDB) + (AND NDB (APPLY* (fetch NDBBROADCASTP of NDB) + PACKET NDB] + (fetch EPNETWORK of PACKET)))) (PUTPROPS \CHECK.ROUTING.TABLE MACRO [(TABLE) - (if (NEQ (NTYPX TABLE) - \ROUTING.TABLE.TYPENUM) - then (CL:ERROR 'CONDITIONS:SIMPLE-TYPE-ERROR - :CULPRIT TABLE :EXPECTED-TYPE - 'RoutingTable]) + (if (NEQ (NTYPX TABLE) + \ROUTING.TABLE.TYPENUM) + then (CL:ERROR 'CONDITIONS:SIMPLE-TYPE-ERROR :CULPRIT TABLE + :EXPECTED-TYPE 'RoutingTable]) ) (DECLARE%: DOEVAL@COMPILE DONTCOPY @@ -1851,28 +1842,28 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (ADDTOVAR SYSTEMRECLST (DATATYPE NDB ((NETTYPE BYTE) - (NDBNEXT POINTER) - (NDBPUPNET# BYTE) - (NDBNSNET# POINTER) - (NDBTASK# BYTE) - (NDBBROADCASTP POINTER) - (NDBPUPHOST# BYTE) - (NDBTRANSMITTER POINTER) - (NIL BYTE) - (NDBENCAPSULATOR POINTER) - (NDBCSB POINTER) - (NDBIQLENGTH BYTE) - (NDBIQ POINTER) - (NDBTQ POINTER) - (NDBTRANSLATIONS POINTER) - (NDBETHERFLUSHER POINTER) - (NDBWATCHER POINTER) - (NDBCANHEARSELF POINTER) - (NDBIPNET# POINTER) - (NDBIPHOST# POINTER) - (NDBPUPTYPE WORD) - (NIL WORD) - (NIL POINTER))) + (NDBNEXT POINTER) + (NDBPUPNET# BYTE) + (NDBNSNET# POINTER) + (NDBTASK# BYTE) + (NDBBROADCASTP POINTER) + (NDBPUPHOST# BYTE) + (NDBTRANSMITTER POINTER) + (NIL BYTE) + (NDBENCAPSULATOR POINTER) + (NDBCSB POINTER) + (NDBIQLENGTH BYTE) + (NDBIQ POINTER) + (NDBTQ POINTER) + (NDBTRANSLATIONS POINTER) + (NDBETHERFLUSHER POINTER) + (NDBWATCHER POINTER) + (NDBCANHEARSELF POINTER) + (NDBIPNET# POINTER) + (NDBIPHOST# POINTER) + (NDBPUPTYPE WORD) + (NIL WORD) + (NIL POINTER))) ) (DEFINEQ @@ -2231,48 +2222,49 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE (ACCESSFNS ETHERTRANS [(TRANSBODY (LOCF (fetch (ETHERPACKET EPBODY) of DATUM] - [BLOCKRECORD TRANSBODY ((TRANSOPERATION WORD) + [BLOCKRECORD TRANSBODY ((TRANSOPERATION WORD) (* ; "Request or response") - (BASETRANSNSHOST 3 WORD) + (BASETRANSNSHOST 3 WORD) (* ; "Known or desired NS address") - (TRANSPUPHOST BYTE) + (TRANSPUPHOST BYTE) (* ; "Known or desired PUP address") - (NIL BYTE) (* ; "Padding") - (BASETRANSSENDERNSHOST 3 WORD) + (NIL BYTE) (* ; "Padding") + (BASETRANSSENDERNSHOST 3 WORD) (* ; "Sender's info") - (TRANSSENDERPUPHOST BYTE) - (NIL BYTE)) - [ACCESSFNS BASETRANSNSHOST ((TRANSNSHOST (\LOADNSHOSTNUMBER - (LOCF DATUM)) - (\STORENSHOSTNUMBER (LOCF DATUM) - NEWVALUE] - (ACCESSFNS BASETRANSSENDERNSHOST ((TRANSSENDERNSHOST - (\LOADNSHOSTNUMBER (LOCF DATUM)) - (\STORENSHOSTNUMBER (LOCF DATUM) - NEWVALUE] - [ACCESSFNS ETHERTRANS - ([TRANSNSADDRESS - (PROGN (* ; - "Kludge to get a pointer that looks like a full ns address") - (\ADDBASE DATUM (CONSTANT (+ (INDEXF (FETCH - (ETHERPACKET EPBODY) - of T)) - (INDEXF (FETCH - (ETHERTRANS + (TRANSSENDERPUPHOST BYTE) + (NIL BYTE)) + [ACCESSFNS BASETRANSNSHOST ((TRANSNSHOST (\LOADNSHOSTNUMBER (LOCF DATUM) + ) + (\STORENSHOSTNUMBER (LOCF DATUM) + NEWVALUE] + (ACCESSFNS BASETRANSSENDERNSHOST ((TRANSSENDERNSHOST (\LOADNSHOSTNUMBER + (LOCF DATUM)) + (\STORENSHOSTNUMBER + (LOCF DATUM) + NEWVALUE] + [ACCESSFNS ETHERTRANS + ([TRANSNSADDRESS (PROGN (* ; + "Kludge to get a pointer that looks like a full ns address") + (\ADDBASE + DATUM + (CONSTANT (+ (INDEXF (FETCH (ETHERPACKET EPBODY + ) + of T)) + (INDEXF (FETCH (ETHERTRANS BASETRANSNSHOST - ) of - T)) - -2] - (TRANSSENDERNSADDRESS - (\ADDBASE DATUM (CONSTANT (+ (INDEXF (FETCH (ETHERPACKET - EPBODY) - of T)) - (INDEXF (FETCH (ETHERTRANS + ) + of T)) + -2] + (TRANSSENDERNSADDRESS (\ADDBASE + DATUM + (CONSTANT (+ (INDEXF (FETCH (ETHERPACKET EPBODY) + of T)) + (INDEXF (FETCH (ETHERTRANS BASETRANSSENDERNSHOST - ) - of T)) - -2] - (TYPE? (type? ETHERPACKET DATUM))) + ) + of T)) + -2] + (TYPE? (type? ETHERPACKET DATUM))) ) (DECLARE%: EVAL@COMPILE @@ -2571,7 +2563,7 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (RPAQ? \RAWTRACING ) (ADDTOVAR \PACKET.PRINTERS (512 . PRINTPUP) - (1537 . PRINT10TO3)) + (1537 . PRINT10TO3)) (DECLARE%: DOEVAL@COMPILE DONTCOPY (GLOBALVARS \RAWTRACING \PACKET.PRINTERS PUPTRACEFILE XIPTRACEFILE \RCLKMILLISECOND) @@ -2615,7 +2607,7 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE (BLOCKRECORD CENTICLOCK ((CENTICLOCKSIGNBIT BITS 1) - (CENTICLOCKMAGNITUDE BITS 31))) + (CENTICLOCKMAGNITUDE BITS 31))) ) ) @@ -2757,43 +2749,41 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (DECLARE%: DONTCOPY (DECLARE%: EVAL@COMPILE -(ACCESSFNS 3MBENCAPSULATION [(3MBENCAPSTART (LOCF (fetch (ETHERPACKET EPENCAPSULATION) - of DATUM] - (BLOCKRECORD 3MBENCAPSTART ((NIL 5 WORD) +(ACCESSFNS 3MBENCAPSULATION [(3MBENCAPSTART (LOCF (fetch (ETHERPACKET EPENCAPSULATION) of DATUM] + (BLOCKRECORD 3MBENCAPSTART ((NIL 5 WORD) (* ; "waste space") - (3MBLENGTH WORD) + (3MBLENGTH WORD) (* ; - "Length of packet in words, starting at the next word") - (3MBDESTHOST BYTE) + "Length of packet in words, starting at the next word") + (3MBDESTHOST BYTE) (* ; "Immediate destination host") - (3MBSOURCEHOST BYTE) + (3MBSOURCEHOST BYTE) (* ; "Us") - (3MBTYPE WORD) + (3MBTYPE WORD) (* ; - "Type of packet -- PUP or XIP or 10TO3") - ) - [ACCESSFNS 3MBLENGTH ((3MBBASE (LOCF DATUM] + "Type of packet -- PUP or XIP or 10TO3") + ) + [ACCESSFNS 3MBLENGTH ((3MBBASE (LOCF DATUM] (* ; "What to hand to BCPL") - ) - (TYPE? (type? ETHERPACKET DATUM))) + ) + (TYPE? (type? ETHERPACKET DATUM))) (BLOCKRECORD PBI ((PBILINK WORD) - (PBIQUEUE WORD) - (PBISOCKET WORD) - (PBINDB WORD) - (PBIINPUTP FLAG) - (PBIALLNETSP FLAG) - (PBINOZEROP FLAG) - (NIL BITS 13) - (PBITIMER WORD) - (PBILENGTH WORD) - (PBIENCAPSULATION 2 WORD) - (PBIFIRSTPUPWORD 10 WORD) - (PBIFIRSTPUPDATAWORD WORD)) - [ACCESSFNS PBI ((PBIPUPSTART (LOCF (fetch PBIFIRSTPUPWORD of DATUM))) - (PBIPUPDATASTART (LOCF (fetch PBIFIRSTPUPDATAWORD - of DATUM))) - (PBIRAWSTART (LOCF (fetch PBILENGTH of DATUM]) + (PBIQUEUE WORD) + (PBISOCKET WORD) + (PBINDB WORD) + (PBIINPUTP FLAG) + (PBIALLNETSP FLAG) + (PBINOZEROP FLAG) + (NIL BITS 13) + (PBITIMER WORD) + (PBILENGTH WORD) + (PBIENCAPSULATION 2 WORD) + (PBIFIRSTPUPWORD 10 WORD) + (PBIFIRSTPUPDATAWORD WORD)) + [ACCESSFNS PBI ((PBIPUPSTART (LOCF (fetch PBIFIRSTPUPWORD of DATUM))) + (PBIPUPDATASTART (LOCF (fetch PBIFIRSTPUPDATAWORD of DATUM))) + (PBIRAWSTART (LOCF (fetch PBILENGTH of DATUM]) ) (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE @@ -2879,8 +2869,8 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. T]) ) -(RPAQQ ROUTINGINFOMACRO (1 "Operation = " WORDS 2 "Info: " REPEAT "(" SEPR ", " INTEGER -4 WORDS - SEPR ") " -2 FINALLY ")")) +(RPAQQ ROUTINGINFOMACRO (1 "Operation = " WORDS 2 "Info: " REPEAT "(" SEPR ", " INTEGER -4 WORDS SEPR + ") " -2 FINALLY ")")) (DECLARE%: EVAL@COMPILE DONTCOPY (DECLARE%: DOEVAL@COMPILE DONTCOPY @@ -2913,10 +2903,10 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (DECLARE%: DONTCOPY (RPAQQ D0DEVICES ((\DEVICE.3MBETHERIN 7) - (\DEVICE.3MBETHEROUT 6) - (\DEVICE.10MBETHER 21) - (\DEVICE.SA4000 3) - (\DEVICE.DISPLAY 2))) + (\DEVICE.3MBETHEROUT 6) + (\DEVICE.10MBETHER 21) + (\DEVICE.SA4000 3) + (\DEVICE.DISPLAY 2))) (DECLARE%: EVAL@COMPILE (RPAQQ \DEVICE.3MBETHERIN 7) @@ -2947,33 +2937,31 @@ Copyright (c) 1982-1988, 1990-1993, 2021 by Venue & Xerox Corporation. (* "END EXPORTED DEFINITIONS") ) -(PUTPROPS LLETHER COPYRIGHT ("Venue & Xerox Corporation" 1982 1983 1984 1985 1986 1987 1988 1990 1991 -1992 1993 2021)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (10792 19248 (CANONICAL.HOSTNAME 10802 . 12391) (\ENQUEUE 12393 . 15038) (\DEQUEUE 15040 - . 16367) (\QUEUELENGTH 16369 . 16669) (\ONQUEUE 16671 . 16937) (\UNQUEUE 16939 . 19246)) (52949 56815 - (\ALLOCATE.ETHERPACKET 52959 . 54000) (\RELEASE.ETHERPACKET 54002 . 55075) (RELEASE.PUP 55077 . 55222 -) (\FLUSH.PACKET.QUEUE 55224 . 55575) (\REQUEUE.ETHERPACKET 55577 . 56091) (\EP.PUT.AUX 56093 . 56813) -) (57389 68770 (\SETLOCALNSNUMBERS 57399 . 58784) (\LOADNSADDRESS 58786 . 59078) (\STORENSADDRESS -59080 . 59261) (\PRINTNSADDRESS 59263 . 60346) (\NSADDRESS.DEFPRINT 60348 . 65293) ( -\NSADDRESS.PRINT.DECIMAL 65295 . 67426) (\LOADNSHOSTNUMBER 67428 . 68057) (\STORENSHOSTNUMBER 68059 . -68463) (PRINTNSHOSTNUMBER 68465 . 68768)) (68883 74631 (\ETHERINIT 68893 . 69463) (\ETHEREVENTFN 69465 - . 71997) (\ETHER-AVAILABLE 71999 . 72157) (\TIME.NOT.SET 72159 . 72485) (\SETETHERFLAGS 72487 . 72938 -) (\FLUSHNDBS 72940 . 74118) (\FLUSH.NDB.QUEUE 74120 . 74629)) (74632 77924 (\CHECKSUM 74642 . 76574) -(\HANDLE.RAW.OTHER 76576 . 76931) (\HANDLE.RAW.PACKET 76933 . 77445) (\ADD.PACKET.FILTER 77447 . 77679 -) (\DEL.PACKET.FILTER 77681 . 77922)) (85757 86282 (ENCAPSULATE.ETHERPACKET 85767 . 86039) ( -TRANSMIT.ETHERPACKET 86041 . 86280)) (86570 99166 (\AGE.ROUTING.TABLE 86580 . 88729) ( -\ADD.ROUTING.TABLE.ENTRY 88731 . 89427) (\CLEAR.ROUTING.TABLE 89429 . 90156) (\MAP.ROUTING.TABLE 90158 - . 90686) (PRINTROUTINGTABLE 90688 . 94313) (\ROUTINGTABLE.INFOHOOK 94315 . 99164)) (99651 106436 ( -\TRANSLATE.10TO3 99661 . 101445) (\NOTE.10TO3 101447 . 103063) (\HANDLE.RAW.10TO3 103065 . 106434)) ( -110418 125240 (PRINTPACKET 110428 . 110989) (\MAYBEPRINTPACKET 110991 . 112648) (PRINT10TO3 112650 . -114018) (PRINTPACKETDATA 114020 . 119310) (PRINTPACKETQUEUE 119312 . 119741) (TIME.SINCE.PACKET 119743 - . 120228) (MAKE-NETWORK-TRACE-WINDOW 120230 . 123772) (\CHANGE.ETHER.TRACING 123774 . 125238)) ( -125611 126426 (\CENTICLOCK 125621 . 126424)) (126881 132981 (\3MBGETPACKET 126891 . 128311) ( -\3MB.CREATENDB 128313 . 129028) (\3MBSENDPACKET 129030 . 131213) (\3MBWATCHER 131215 . 131953) ( -\3MBENCAPSULATE 131955 . 132503) (\3MB.BROADCASTP 132505 . 132676) (\3MBFLUSH 132678 . 132979)) ( -135935 137878 (ASSURE.ETHER.ON 135945 . 136275) (INITPUPLEVEL1 136277 . 136757) (TURN.ON.ETHER 136759 - . 136904) (RESTART.ETHER 136906 . 137280) (TURN.OFF.ETHER 137282 . 137600) (PRINTWORDS 137602 . -137876)) (138153 138688 (\DEVICE.INPUT 138163 . 138328) (\DEVICE.OUTPUT 138330 . 138524) (\D0.STARTIO -138526 . 138686))))) + (FILEMAP (NIL (10564 19020 (CANONICAL.HOSTNAME 10574 . 12163) (\ENQUEUE 12165 . 14810) (\DEQUEUE 14812 + . 16139) (\QUEUELENGTH 16141 . 16441) (\ONQUEUE 16443 . 16709) (\UNQUEUE 16711 . 19018)) (52579 56445 + (\ALLOCATE.ETHERPACKET 52589 . 53630) (\RELEASE.ETHERPACKET 53632 . 54705) (RELEASE.PUP 54707 . 54852 +) (\FLUSH.PACKET.QUEUE 54854 . 55205) (\REQUEUE.ETHERPACKET 55207 . 55721) (\EP.PUT.AUX 55723 . 56443) +) (57019 68400 (\SETLOCALNSNUMBERS 57029 . 58414) (\LOADNSADDRESS 58416 . 58708) (\STORENSADDRESS +58710 . 58891) (\PRINTNSADDRESS 58893 . 59976) (\NSADDRESS.DEFPRINT 59978 . 64923) ( +\NSADDRESS.PRINT.DECIMAL 64925 . 67056) (\LOADNSHOSTNUMBER 67058 . 67687) (\STORENSHOSTNUMBER 67689 . +68093) (PRINTNSHOSTNUMBER 68095 . 68398)) (68513 74207 (\ETHERINIT 68523 . 69093) (\ETHEREVENTFN 69095 + . 71573) (\ETHER-AVAILABLE 71575 . 71733) (\TIME.NOT.SET 71735 . 72061) (\SETETHERFLAGS 72063 . 72514 +) (\FLUSHNDBS 72516 . 73694) (\FLUSH.NDB.QUEUE 73696 . 74205)) (74208 77500 (\CHECKSUM 74218 . 76150) +(\HANDLE.RAW.OTHER 76152 . 76507) (\HANDLE.RAW.PACKET 76509 . 77021) (\ADD.PACKET.FILTER 77023 . 77255 +) (\DEL.PACKET.FILTER 77257 . 77498)) (85004 85529 (ENCAPSULATE.ETHERPACKET 85014 . 85286) ( +TRANSMIT.ETHERPACKET 85288 . 85527)) (85817 98413 (\AGE.ROUTING.TABLE 85827 . 87976) ( +\ADD.ROUTING.TABLE.ENTRY 87978 . 88674) (\CLEAR.ROUTING.TABLE 88676 . 89403) (\MAP.ROUTING.TABLE 89405 + . 89933) (PRINTROUTINGTABLE 89935 . 93560) (\ROUTINGTABLE.INFOHOOK 93562 . 98411)) (98898 105683 ( +\TRANSLATE.10TO3 98908 . 100692) (\NOTE.10TO3 100694 . 102310) (\HANDLE.RAW.10TO3 102312 . 105681)) ( +109673 124495 (PRINTPACKET 109683 . 110244) (\MAYBEPRINTPACKET 110246 . 111903) (PRINT10TO3 111905 . +113273) (PRINTPACKETDATA 113275 . 118565) (PRINTPACKETQUEUE 118567 . 118996) (TIME.SINCE.PACKET 118998 + . 119483) (MAKE-NETWORK-TRACE-WINDOW 119485 . 123027) (\CHANGE.ETHER.TRACING 123029 . 124493)) ( +124862 125677 (\CENTICLOCK 124872 . 125675)) (126128 132228 (\3MBGETPACKET 126138 . 127558) ( +\3MB.CREATENDB 127560 . 128275) (\3MBSENDPACKET 128277 . 130460) (\3MBWATCHER 130462 . 131200) ( +\3MBENCAPSULATE 131202 . 131750) (\3MB.BROADCASTP 131752 . 131923) (\3MBFLUSH 131925 . 132226)) ( +134970 136913 (ASSURE.ETHER.ON 134980 . 135310) (INITPUPLEVEL1 135312 . 135792) (TURN.ON.ETHER 135794 + . 135939) (RESTART.ETHER 135941 . 136315) (TURN.OFF.ETHER 136317 . 136635) (PRINTWORDS 136637 . +136911)) (137184 137719 (\DEVICE.INPUT 137194 . 137359) (\DEVICE.OUTPUT 137361 . 137555) (\D0.STARTIO +137557 . 137717))))) STOP diff --git a/sources/LLETHER.LCOM b/sources/LLETHER.LCOM index 6398f6660e2eb31a8c436049516f9925154e2f2f..4250c3b100c994dd2ec893225ad44272612afc7a 100644 GIT binary patch delta 2520 zcmaJ?O>7%g5cY0Ds|FPM-&84d>NagcWwY`HD?(!RhmclH z5k&}$IDilwTK2*Lfz%U1LTc-lYbDf!;RK?pkT_9^3#TB2xPV~ZuAMlkR3FxF=DnRa z^L^jUK71%XdLUk#$x$g~HRn=Pq6&~qme4FENf=MgU3~4*`Gw{@TwH`C483Ksske{3 zzSO+DbnKPO=g*#9I(F&u#S6{3D@)g}?QYQtNUn<{saZuy!WAB9;m|ysUxcA#p;j(K z|G{)RorL+>D|pdk0ko{7CMSl*3r^Y2S8X$}t;Y^wzIbR4JUPDw3PjeG41u9+zGS*Z zo23E|#tSZkh8>jbsy%JHLBXAXtdDEQtFe@Y7ebO~efW^9M6(Lw^JF|mKM_-hEew;l zU9(~bUc80^5NMP<7H}_{fW$`$F(FL)p(Qqj6X93lK|v0G6rU4`5iX0PEklROlo@yx z&{c5!-kXrop^-OT&vo)WV~%oZp*54vpS1s>ONiz)j=%`Afo*}!H2Mh01FcLv_yE@VS*MBjG*-nm@~ z{H;Fjg*QgNK5#RCmb;hRd(8RnYFl^lWo+L`hF5p*ZJpbk7?+8J$yZAzD*-i(zBQ)J z0(7T+tZc@sS_~+api%bnQ?W_(3|8YhLAr?a&6rrMMlpHMN2-a6n;4)PAQnIr4H{S? zvxC5?*k}`Ip@Y8-M8dm>RLP}d<+)Z4bi|}kuCWpt40PlYU&X7k8!Tf>*VfIc-l@fNCmtwE8@%(K}LSUM&EsN?ivAiyTVN zQ8A}%R_9=7z%!*1mSzPOyEHr3%*`$}ff(@)F(klCIRnQ_;BM>#2~IkGP&M;5#>GbP z5<)`s!z6g3riPP4J6eF{`zSdAiX1HhgcxMC>m*vdKzNbVm0&n2cz3L^WwO>r@%Qg@ z5i15HPbVQmaU?h=F}u{W`UC{lSf;r!jWoW-18hHB}@eW?z;v5ZG131V=zD0D?`@(*)&Z zyIx?Yi4=HpB=`uw*d)3E6}y6h(Xpb4+2s?Z1_tb#Y%TEd6uh|jt-CFyoB$-DE4QIS3q&>SIrrY z5S0jDMs*pKFA=o9nZZL6BxKDU1fe;OkY->XPB0yBA~KEPrL-R$98+@dCW5osuVn+k zZ|z|)2)w{YIOjrD*1Urs#%@NKK2Hp#y(H72Z3shJpcdz delta 2791 zcmZuzU5p!774~?y+p<-o7NyC;O60^<(p}nh=iaer##WQ=*uM4-JDzc8#+w)x=r*yM zE!*{WlU9u&G73L0MFKHG@PMewDln~gG(jGSNz`VD_rLWalLF9WrOEvDR-s!%HH-)_bT;v zDMw$gMeDboz1DlBdvRxLfB)vi?VY5leWuTrX+Fo;@e#UJHmtH<$kB`Pgq^(0{qp&Ij;?OqzyK zd#_zrvB5h>{P*{yu<=?$wOspIZL(S`fv)(-b%}^ZksL(NM>rNarsic$JI&vuTiS2nmI(kqj zQWS@+AVN8*>Xn@+3aUVp89HssJAi1dgJPJp>5eTMryUu^64h&BgA7g=H~nb5L7nUR zjTP~H+d(yTD#s#B?|1v#eEgS!u9mJE=$ z>V<1gv_=Nw$8#OQMKPB1E#Pn|2y1|a+tlCmg6eu|vyx2ScjJ5mRJ-H=8(Rm4LCcSb zS$K#O!WhsIGjSdei9{T`O+gG$!Iql=DDY)^vyx9a>(?q&0>*W(9j(EL$c8g^;%2As z`H|mlRs{HG8){jRu&T-M1?`x)S%ODj?!jSd1xcibG@W%3b%2mjBpE(uvbJ$8+S|I)t!!QIf>P-d zhKq5j#3hYeLS-Y{5rlQG0dQCfh%!J+Af={;1zt%MJOv9gMtmsFZTR3*+-b>nr!{6Z z1h+e<9ZCsn7gp0aPdvtE($JnU7iz=zR(H;R&>7CErQz)1&kr*Hb%&|Pa7LQ{aEEDa zhgoU2Y8vbtp_zla(xL zie?3G9kh%IKjWSPJS{1y^vsUQBFSdx`t$;~&E((KVjmUYhM7u|TWP5{=QK%ij`lM_ zMWLjsYKa6uXeH1ocA}f6&4GRl+VU7!K-s@r*)PTVFG+zMZL~K$9 z+-8FV`?uO0_+dSeNp6)F=Dw{;GWc=%b6Ve`3KYH$3{tp{h-%y8LZEF=QkbEgN}J($ zjvhLlyal1RCxpzw-RFoy|6jof<;zxB;B@W@)$RH!309!cxuhPU{+P;Dh9-_F+S>$r zvRn+Ub?OcVbe@A$Z90pQ<0dw$8UsEPfIw%~_$HjHr=FD(5lPra`Q@0e%KYLmI&1dj?`EanE+zy|5 z@`74>$4ooP@X_6D=J2O#?cI~=?@cu(AB1N$GdcX~sTrW2JREh-0q{3~z(m;6_|Dwu?!MNg^K`kp-+P0qz5Tu3{??7{-Y!~W p37;hx3^^3!P?Uoy2TKk%27DD^U^I_WdY2$fd?PL|&-<=7|9>5T&vF0& From 6e00dcf458c27347a79cc8dc6a6522454738b11f Mon Sep 17 00:00:00 2001 From: Nick Briggs Date: Thu, 1 Jan 2026 18:05:52 -0800 Subject: [PATCH 2/9] When no ethernet \FIND.LOCALPUPHOSTNUMBER should immediately return NIL If there is NO ethernet it is better to avoid a delay waiting for a PUP lookup response that will never come, and there is no value in asking for the user to enter a PUP host number that will not be used. --- sources/PUP | 380 +++++++++++++++++++++++------------------------ sources/PUP.LCOM | Bin 34876 -> 34941 bytes 2 files changed, 188 insertions(+), 192 deletions(-) diff --git a/sources/PUP b/sources/PUP index c64000e1..6967ba0b 100644 --- a/sources/PUP +++ b/sources/PUP @@ -1,15 +1,13 @@ -(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP" BASE 8) -(FILECREATED " 1-May-2021 19:49:18" {DSK}larry>ilisp>medley>sources>PUP.;2 336270Q +(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 8) - changes to%: (FNS \PUP.SETTIME CANONICAL.HOSTNAME) - (VARS PUPCOMS) +(FILECREATED "22-Dec-2025 11:58:55" {DSK}briggs>projects>medley>sources>PUP.;4 334515Q - previous date%: "19-Jan-93 11:14:09" {DSK}larry>ilisp>medley>sources>PUP.;1) + :EDIT-BY nhb + :CHANGES-TO (FNS \FIND.LOCALPUPHOSTNUMBER) + + :PREVIOUS-DATE "20-Dec-2025 13:51:34" {DSK}briggs>projects>medley>sources>PUP.;3) -(* ; " -Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. -") (PRETTYCOMPRINT PUPCOMS) @@ -45,13 +43,13 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (FNS CLEARPUP PUTPUPWORD GETPUPBYTE PUTPUPBYTE GETPUPSTRING GETPUPSTREAM PUTPUPSTRING) (OPTIMIZERS GETPUPWORD PUTPUPWORD GETPUPBYTE PUTPUPBYTE)) (COMS (* ; - "Reading property lists from streams") + "Reading property lists from streams") (FNS READPLIST) (INITVARS \READPLIST.READTABLES) (GLOBALVARS \READPLIST.READTABLES)) (COMS (FNS \CANONICAL.HOSTNAME \CANONICALIZE.PUP.HOSTNAME) (P (* ; - "Default this for when IP not loaded") + "Default this for when IP not loaded") (MOVD? 'NILL '\CANONICALIZE.IP.HOSTNAME NIL T)) (ADDVARS (\HOSTNAMES) (\SYSTEMCACHEVARS \HOSTNAMES)) @@ -138,53 +136,52 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE (ACCESSFNS PUP [(PUPBASE (LOCF (fetch (ETHERPACKET EPBODY) of DATUM] - [BLOCKRECORD PUPBASE ((PUPLENGTH WORD) - (PUPTCONTROL BYTE) - (PUPTYPE BYTE) - (PUPID FIXP) - (PUPDEST WORD) - (PUPDESTSOCKET FIXP) - (PUPSOURCE WORD) - (PUPSOURCESOCKET FIXP) - (PUPDATASTART 412Q WORD)) - (BLOCKRECORD PUPBASE ((NIL WORD) - (TYPEWORD WORD) - (PUPIDHI WORD) - (PUPIDLO WORD) - (PUPDESTNET BYTE) - (PUPDESTHOST BYTE) - (PUPDESTSOCKETHI WORD) - (PUPDESTSOCKETLO WORD) - (PUPSOURCENET BYTE) - (PUPSOURCEHOST BYTE) - (PUPSOURCESOCKETHI WORD) - (PUPSOURCESOCKETLO WORD)) + [BLOCKRECORD PUPBASE ((PUPLENGTH WORD) + (PUPTCONTROL BYTE) + (PUPTYPE BYTE) + (PUPID FIXP) + (PUPDEST WORD) + (PUPDESTSOCKET FIXP) + (PUPSOURCE WORD) + (PUPSOURCESOCKET FIXP) + (PUPDATASTART 412Q WORD)) + (BLOCKRECORD PUPBASE ((NIL WORD) + (TYPEWORD WORD) + (PUPIDHI WORD) + (PUPIDLO WORD) + (PUPDESTNET BYTE) + (PUPDESTHOST BYTE) + (PUPDESTSOCKETHI WORD) + (PUPDESTSOCKETLO WORD) + (PUPSOURCENET BYTE) + (PUPSOURCEHOST BYTE) + (PUPSOURCESOCKETHI WORD) + (PUPSOURCESOCKETLO WORD)) (* ; "Temporary extra synonyms") - (SYNONYM PUPDESTNET (DESTNET)) - (SYNONYM PUPDESTHOST (DESTHOST)) - (SYNONYM PUPDESTSOCKETHI (DESTSKTHI)) - (SYNONYM PUPDESTSOCKETLO (DESTSKTLO)) - (SYNONYM PUPSOURCENET (SOURCENET)) - (SYNONYM PUPSOURCEHOST (SOURCEHOST)) - (SYNONYM PUPSOURCESOCKETHI (SOURCESKTHI)) - (SYNONYM PUPSOURCESOCKETLO (SOURCESKTLO))) - (SYNONYM PUPDEST (DEST)) - (SYNONYM PUPDESTSOCKET (DESTSKT)) - (SYNONYM PUPSOURCE (SOURCE)) - (SYNONYM PUPSOURCESOCKET (SOURCESKT)) - (ACCESSFNS PUPDATASTART ((PUPCONTENTS (LOCF DATUM] - [ACCESSFNS PUP [(PUPCHECKSUMBASE (fetch PUPBASE of DATUM)) - (PUPCHECKSUMLOC (\ADDBASE (fetch PUPBASE of DATUM) - (FOLDLO (SUB1 (fetch PUPLENGTH - of DATUM)) - BYTESPERWORD] - (BLOCKRECORD PUPCHECKSUMLOC ((PUPCHECKSUM WORD] - (TYPE? (type? ETHERPACKET DATUM))) + (SYNONYM PUPDESTNET (DESTNET)) + (SYNONYM PUPDESTHOST (DESTHOST)) + (SYNONYM PUPDESTSOCKETHI (DESTSKTHI)) + (SYNONYM PUPDESTSOCKETLO (DESTSKTLO)) + (SYNONYM PUPSOURCENET (SOURCENET)) + (SYNONYM PUPSOURCEHOST (SOURCEHOST)) + (SYNONYM PUPSOURCESOCKETHI (SOURCESKTHI)) + (SYNONYM PUPSOURCESOCKETLO (SOURCESKTLO))) + (SYNONYM PUPDEST (DEST)) + (SYNONYM PUPDESTSOCKET (DESTSKT)) + (SYNONYM PUPSOURCE (SOURCE)) + (SYNONYM PUPSOURCESOCKET (SOURCESKT)) + (ACCESSFNS PUPDATASTART ((PUPCONTENTS (LOCF DATUM] + [ACCESSFNS PUP [(PUPCHECKSUMBASE (fetch PUPBASE of DATUM)) + (PUPCHECKSUMLOC (\ADDBASE (fetch PUPBASE of DATUM) + (FOLDLO (SUB1 (fetch PUPLENGTH of DATUM)) + BYTESPERWORD] + (BLOCKRECORD PUPCHECKSUMLOC ((PUPCHECKSUM WORD] + (TYPE? (type? ETHERPACKET DATUM))) (ACCESSFNS PUPADDRESS ((PUPNET# (LRSH DATUM 10Q)) - (PUPHOST# (LOGAND DATUM 377Q))) - (CREATE (IPLUS (LLSH PUPNET# 10Q) - PUPHOST#))) + (PUPHOST# (LOGAND DATUM 377Q))) + (CREATE (IPLUS (LLSH PUPNET# 10Q) + PUPHOST#))) ) (DECLARE%: EVAL@COMPILE @@ -274,23 +271,26 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (RETURN T])]) (\FIND.LOCALPUPHOSTNUMBER - [LAMBDA (NDB EVENT QUIET) (* bvm%: "26-Jul-84 16:27") + [LAMBDA (NDB EVENT QUIET) (* ; "Edited 22-Dec-2025 11:58 by nhb") + (* ; "Edited 20-Dec-2025 13:51 by nhb") + (* bvm%: "26-Jul-84 16:27") (* ;; "Finds out our pup address on this 10mb NDB") (PROG (NEWNUMBER) [COND + ((NOT (\ETHER-AVAILABLE)) + (RETURN NIL)) [(SETQ NEWNUMBER (\LOOKUPPUPNUMBER \MY.NSHOSTNUMBER NDB)) (COND - (PUPTRACEFLG (printout PUPTRACEFILE "My pup address = " (fetch PUPNET# - of NEWNUMBER) + (PUPTRACEFLG (printout PUPTRACEFILE "My pup address = " (fetch PUPNET# of NEWNUMBER) "#" (fetch PUPHOST# of NEWNUMBER) "#" T] (QUIET (RETURN NIL)) (T (SETQ NEWNUMBER (\PROMPT.FOR.PUP.NUMBER (AND (EQ EVENT 'AFTERLOGOUT) - (NEQ \OLDPUPHOST# 0) - (OCTALSTRING \OLDPUPHOST#] + (NEQ \OLDPUPHOST# 0) + (OCTALSTRING \OLDPUPHOST#] (* ;; "Only rely on the host number part of reply. There is confusion for machines that exist on more than one net") @@ -470,14 +470,14 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE (ACCESSFNS ERRORPUP ((ERRORPUPBASE (fetch PUPCONTENTS of DATUM))) - (BLOCKRECORD ERRORPUPBASE ((ERRORPUPCOPY 12Q WORD) + (BLOCKRECORD ERRORPUPBASE ((ERRORPUPCOPY 12Q WORD) (* ; "Copy of pup header") - (ERRORPUPCODE WORD) - (ERRORPUPARG WORD) + (ERRORPUPCODE WORD) + (ERRORPUPARG WORD) (* ; "Usually zero") - (ERRORPUPSTRINGBASE WORD) + (ERRORPUPSTRINGBASE WORD) (* ; "Human readable message") - ))) + ))) ) (RPAQQ PUPERRORCODES @@ -1174,24 +1174,22 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. ) (DEFOPTIMIZER GETPUPWORD (PUPARG WORD#) - `(\GETBASE (fetch PUPCONTENTS of (\DTEST ,PUPARG 'ETHERPACKET)) - ,WORD#)) + `(\GETBASE (fetch PUPCONTENTS of (\DTEST ,PUPARG 'ETHERPACKET)) + ,WORD#)) (DEFOPTIMIZER PUTPUPWORD (PUPARG WORD# VALUE) - `(\PUTBASE (fetch PUPCONTENTS of (\DTEST ,PUPARG 'ETHERPACKET)) - ,WORD# - ,VALUE)) + `(\PUTBASE (fetch PUPCONTENTS of (\DTEST ,PUPARG 'ETHERPACKET)) + ,WORD# + ,VALUE)) (DEFOPTIMIZER GETPUPBYTE (PUPARG BYTE#) - `(\GETBASEBYTE (fetch PUPCONTENTS of (\DTEST ,PUPARG - 'ETHERPACKET)) - ,BYTE#)) + `(\GETBASEBYTE (fetch PUPCONTENTS of (\DTEST ,PUPARG 'ETHERPACKET)) + ,BYTE#)) (DEFOPTIMIZER PUTPUPBYTE (PUPARG BYTE# VALUE) - `(\PUTBASEBYTE (fetch PUPCONTENTS of (\DTEST ,PUPARG - 'ETHERPACKET)) - ,BYTE# - ,VALUE)) + `(\PUTBASEBYTE (fetch PUPCONTENTS of (\DTEST ,PUPARG 'ETHERPACKET)) + ,BYTE# + ,VALUE)) @@ -1282,7 +1280,7 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. ) (* ; - "Default this for when IP not loaded") + "Default this for when IP not loaded") (MOVD? 'NILL '\CANONICALIZE.IP.HOSTNAME NIL T) @@ -1301,8 +1299,8 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE (PUTPROPS BINDPUPS MACRO [X (CONS (LIST 'LAMBDA (CAR X) - (CONS 'PROGN (CDR X))) - (in (CAR X) collect (LIST 'ALLOCATE.PUP]) + (CONS 'PROGN (CDR X))) + (in (CAR X) collect (LIST 'ALLOCATE.PUP]) ) (PUTPROPS BINDPUPS INFO BINDS) @@ -1597,12 +1595,12 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (DECLARE%: DONTCOPY (DECLARE%: EVAL@COMPILE -(BLOCKRECORD PUPROUTINGINFO ( (* ; - "Format of each entry in a pup routing info packet. We only actually use NET# and #HOPS") - (NET# BYTE) - (GATENET# BYTE) - (GATEHOST# BYTE) - (%#HOPS BYTE))) +(BLOCKRECORD PUPROUTINGINFO ( (* ; + "Format of each entry in a pup routing info packet. We only actually use NET# and #HOPS") + (NET# BYTE) + (GATENET# BYTE) + (GATEHOST# BYTE) + (%#HOPS BYTE))) ) (DECLARE%: EVAL@COMPILE @@ -1628,24 +1626,24 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE (DATATYPE PUPSOCKET ((NIL BITS 4) - (PUPSOCLINK POINTER) (* ; "So that we can Queue them") - (PSOCKET# FIXP) - (INQUEUE POINTER) - (INQUEUELENGTH WORD) - (PUPSOC#ALLOCATION WORD) - (PUPSOCHANDLE WORD) (* ; "Back-fitting for Bcpl") - (PUPSOCPUPADDRESS WORD) (* ; "Local net/host") - (NIL BITS 4) - (PUPSOCEVENT POINTER) (* ; - "Event that is notified when a pup arrives on this socket") - (NIL BITS 4) - (NIL POINTER)) - (BLOCKRECORD PUPSOCKET ((NIL BITS 4) - (NIL POINTER) - (PSOCKETHI WORD) - (PSOCKETLO WORD))) - INQUEUE _ (create SYSQUEUE) - PUPSOC#ALLOCATION _ \MAX.EPKTS.ON.PUPSOCKET) + (PUPSOCLINK POINTER) (* ; "So that we can Queue them") + (PSOCKET# FIXP) + (INQUEUE POINTER) + (INQUEUELENGTH WORD) + (PUPSOC#ALLOCATION WORD) + (PUPSOCHANDLE WORD) (* ; "Back-fitting for Bcpl") + (PUPSOCPUPADDRESS WORD) (* ; "Local net/host") + (NIL BITS 4) + (PUPSOCEVENT POINTER) (* ; + "Event that is notified when a pup arrives on this socket") + (NIL BITS 4) + (NIL POINTER)) + (BLOCKRECORD PUPSOCKET ((NIL BITS 4) + (NIL POINTER) + (PSOCKETHI WORD) + (PSOCKETLO WORD))) + INQUEUE _ (create SYSQUEUE) + PUPSOC#ALLOCATION _ \MAX.EPKTS.ON.PUPSOCKET) ) (/DECLAREDATATYPE 'PUPSOCKET '((BITS 4) @@ -1670,11 +1668,11 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE (PUTPROPS \PUPSOCKET.FROM# MACRO (OPENLAMBDA (SOCHI SOCLO) - (for SOC in \PUPSOCKETS - when (AND (EQ (fetch PSOCKETLO of SOC) - SOCLO) - (EQ (fetch PSOCKETHI of SOC) - SOCHI)) do (RETURN SOC)))) + (for SOC in \PUPSOCKETS + when (AND (EQ (fetch PSOCKETLO of SOC) + SOCLO) + (EQ (fetch PSOCKETHI of SOC) + SOCHI)) do (RETURN SOC)))) ) (DECLARE%: DOEVAL@COMPILE DONTCOPY @@ -1704,17 +1702,17 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (ADDTOVAR SYSTEMRECLST (DATATYPE PUPSOCKET ((NIL BITS 4) - (PUPSOCLINK POINTER) - (PSOCKET# FIXP) - (INQUEUE POINTER) - (INQUEUELENGTH WORD) - (PUPSOC#ALLOCATION WORD) - (PUPSOCHANDLE WORD) - (PUPSOCPUPADDRESS WORD) - (NIL BITS 4) - (PUPSOCEVENT POINTER) - (NIL BITS 4) - (NIL POINTER))) + (PUPSOCLINK POINTER) + (PSOCKET# FIXP) + (INQUEUE POINTER) + (INQUEUELENGTH WORD) + (PUPSOC#ALLOCATION WORD) + (PUPSOCHANDLE WORD) + (PUPSOCPUPADDRESS WORD) + (NIL BITS 4) + (PUPSOCEVENT POINTER) + (NIL BITS 4) + (NIL POINTER))) ) (DEFINEQ @@ -1826,21 +1824,21 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE (BLOCKRECORD PORT ((NETHOST WORD) - (SOCKET FIXP)) - (BLOCKRECORD PORT ((NET BYTE) - (HOST BYTE) - (SOCKETHI WORD) - (SOCKETLO WORD)))) + (SOCKET FIXP)) + (BLOCKRECORD PORT ((NET BYTE) + (HOST BYTE) + (SOCKETHI WORD) + (SOCKETLO WORD)))) (ACCESSFNS ERRORPUP ((ERRORPUPBASE (fetch PUPCONTENTS of DATUM))) - (BLOCKRECORD ERRORPUPBASE ((ERRORPUPCOPY 12Q WORD) + (BLOCKRECORD ERRORPUPBASE ((ERRORPUPCOPY 12Q WORD) (* ; "Copy of pup header") - (ERRORPUPCODE WORD) - (ERRORPUPARG WORD) + (ERRORPUPCODE WORD) + (ERRORPUPARG WORD) (* ; "Usually zero") - (ERRORPUPSTRINGBASE WORD) + (ERRORPUPSTRINGBASE WORD) (* ; "Human readable message") - ))) + ))) ) (DECLARE%: DOEVAL@COMPILE DONTCOPY @@ -1868,20 +1866,20 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE (PUTPROPS \GETPUPWORD DMACRO ((PUP WORD#) - (\GETBASE (fetch PUPCONTENTS of PUP) - WORD#))) + (\GETBASE (fetch PUPCONTENTS of PUP) + WORD#))) (PUTPROPS \PUTPUPWORD DMACRO ((PUP WORD# VALUE) - (\PUTBASE (fetch PUPCONTENTS of PUP) - WORD# VALUE))) + (\PUTBASE (fetch PUPCONTENTS of PUP) + WORD# VALUE))) (PUTPROPS \GETPUPBYTE DMACRO ((PUP BYTE#) - (\GETBASEBYTE (fetch PUPCONTENTS of PUP) - BYTE#))) + (\GETBASEBYTE (fetch PUPCONTENTS of PUP) + BYTE#))) (PUTPROPS \PUTPUPBYTE DMACRO ((PUP BYTE# VALUE) - (\PUTBASEBYTE (fetch PUPCONTENTS of PUP) - BYTE# VALUE))) + (\PUTBASEBYTE (fetch PUPCONTENTS of PUP) + BYTE# VALUE))) ) (RPAQQ RAWPUPTYPES @@ -2033,13 +2031,13 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (RPAQ? PUPTYPES RAWPUPTYPES) (RPAQQ WELLKNOWNPUPSOCKETS ((\PUPSOCKET.TELNET 1) - (\PUPSOCKET.ROUTING 2) - (\PUPSOCKET.FTP 3) - (\PUPSOCKET.MISCSERVICES 4) - (\PUPSOCKET.ECHO 5) - (\PUPSOCKET.EFTP 20Q) - (\PUPSOCKET.PRINTERSTATUS 21Q) - (\PUPSOCKET.LEAF 43Q))) + (\PUPSOCKET.ROUTING 2) + (\PUPSOCKET.FTP 3) + (\PUPSOCKET.MISCSERVICES 4) + (\PUPSOCKET.ECHO 5) + (\PUPSOCKET.EFTP 20Q) + (\PUPSOCKET.PRINTERSTATUS 21Q) + (\PUPSOCKET.LEAF 43Q))) (DECLARE%: EVAL@COMPILE (RPAQQ \PUPSOCKET.TELNET 1) @@ -2074,9 +2072,9 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (RPAQQ PUPCONSTANTS ((\PUPHEADERLEN 24Q) - (\NetMask 177400Q) - (\HILOCALSOCKET 1) - (\PORTIDLEN 3))) + (\NetMask 177400Q) + (\HILOCALSOCKET 1) + (\PORTIDLEN 3))) (DECLARE%: EVAL@COMPILE (RPAQQ \PUPHEADERLEN 24Q) @@ -2097,28 +2095,28 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (DECLARE%: EVAL@COMPILE (PUTPROPS PUPDEBUGGING MACRO [(X . Y) - (COND - (PUPTRACEFLG (printout PUPTRACEFILE X . Y]) + (COND + (PUPTRACEFLG (printout PUPTRACEFILE X . Y]) ) (ADDTOVAR PUPPRINTMACROS (210Q CHARS) - (214Q CHARS) - (211Q CHARS) - (213Q CHARS) - (201Q WORDS 2 CHARS 24Q |...|) - (30Q CHARS)) + (214Q CHARS) + (211Q CHARS) + (213Q CHARS) + (201Q WORDS 2 CHARS 24Q |...|) + (30Q CHARS)) (DECLARE%: EVAL@COMPILE (BLOCKRECORD TIMEPUPCONTENTS ((TIMEPUPVALUEHI WORD) - (TIMEPUPVALUELO WORD) - (TIMEPUPEASTP FLAG) - (TIMEPUPHOURS BITS 7) - (TIMEPUPMINUTES BITS 10Q) - (TIMEPUPBEGINDST WORD) - (TIMEPUPENDDST WORD)) (* ; "format of alto time response") - ) + (TIMEPUPVALUELO WORD) + (TIMEPUPEASTP FLAG) + (TIMEPUPHOURS BITS 7) + (TIMEPUPMINUTES BITS 10Q) + (TIMEPUPBEGINDST WORD) + (TIMEPUPENDDST WORD)) (* ; "format of alto time response") + ) ) ) @@ -2447,10 +2445,10 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (ADDTOVAR PUPIGNORETYPES ) (ADDTOVAR PUPPRINTMACROS (4 . PRINTERRORPUP) - (220Q CHARS) - (221Q REPEAT BYTES -2 WORDS -4) - (223Q BYTES -2 WORDS) - (224Q CHARS)) + (220Q CHARS) + (221Q REPEAT BYTES -2 WORDS -4) + (223Q BYTES -2 WORDS) + (224Q CHARS)) (DECLARE%: DONTEVAL@LOAD (\PUPINIT) @@ -2469,32 +2467,30 @@ Copyright (c) 3676-3711, 3745 by Venue & Xerox Corporation. (PUTPROPS PUP MAKEFILE-ENVIRONMENT (:READTABLE "INTERLISP" :PACKAGE "INTERLISP" :BASE 10Q)) (PUTPROPS PUP FILETYPE CL:COMPILE-FILE) -(PUTPROPS PUP COPYRIGHT ("Venue & Xerox Corporation" 3676Q 3677Q 3700Q 3701Q 3702Q 3703Q 3704Q 3705Q -3706Q 3707Q 3710Q 3711Q 3745Q)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (25631Q 61606Q (\STARTPUP 25643Q . 26515Q) (ASSURE.PUP.READY 26517Q . 34612Q) ( -\FIND.LOCALPUPHOSTNUMBER 34614Q . 37012Q) (\PROMPT.FOR.PUP.NUMBER 37014Q . 41034Q) (\HANDLE.RAW.PUP -41036Q . 57136Q) (\FORWARD.PUP 57140Q . 60060Q) (\SETPUPCHECKSUM 60062Q . 61604Q)) (66376Q 73470Q ( -\PUPERROR 66410Q . 73466Q)) (73527Q 112663Q (SETUPPUP 73541Q . 76727Q) (SWAPPUPPORTS 76731Q . 77546Q) -(GETPUP 77550Q . 102462Q) (SENDPUP 102464Q . 106306Q) (EXCHANGEPUPS 106310Q . 110346Q) (DISCARDPUPS -110350Q . 111154Q) (GETPUPWORD 111156Q . 111475Q) (\PUPINIT 111477Q . 112661Q)) (112664Q 154244Q ( -ETHERHOSTNAME 112676Q . 122024Q) (ETHERHOSTNUMBER 122026Q . 122441Q) (ETHERPORT 122443Q . 126162Q) ( -BESTPUPADDRESS 126164Q . 136224Q) (NETDAYTIME0 136226Q . 136557Q) (\PUP.SETTIME 136561Q . 137206Q) ( -\SETNEWTIME0 137210Q . 140270Q) (\NET.SETTIME 140272Q . 141361Q) (NETDATE 141363Q . 141720Q) ( -\LOOKUPPORT 141722Q . 147561Q) (\PARSE.PORTCONSTANT 147563Q . 152673Q) (\FIXLOCALNET 152675Q . 154242Q -)) (154245Q 155602Q (PORTSTRING 154257Q . 155246Q) (OCTALSTRING 155250Q . 155600Q)) (156174Q 165305Q ( -CLEARPUP 156206Q . 160721Q) (PUTPUPWORD 160723Q . 161250Q) (GETPUPBYTE 161252Q . 161575Q) (PUTPUPBYTE -161577Q . 162130Q) (GETPUPSTRING 162132Q . 163563Q) (GETPUPSTREAM 163565Q . 164514Q) (PUTPUPSTRING -164516Q . 165303Q)) (167410Q 175227Q (READPLIST 167422Q . 175225Q)) (175410Q 200610Q ( -\CANONICAL.HOSTNAME 175422Q . 176467Q) (\CANONICALIZE.PUP.HOSTNAME 176471Q . 200606Q)) (203163Q -236370Q (\PUPGATELISTENER 203175Q . 207026Q) (\HANDLE.PUP.ROUTING.INFO 207030Q . 221367Q) (\ROUTE.PUP -221371Q . 225224Q) (\LOCATE.PUPNET 225226Q . 231763Q) (SORT.PUPHOSTS.BY.DISTANCE 231765Q . 234241Q) ( -\PUPNET.CLOSERP 234243Q . 235424Q) (PUPNET.DISTANCE 235426Q . 236366Q)) (250017Q 257771Q ( -OPENPUPSOCKET 250031Q . 254512Q) (CLOSEPUPSOCKET 254514Q . 256173Q) (PUPSOCKETNUMBER 256175Q . 256426Q -) (PUPSOCKETFROMNUMBER 256430Q . 257067Q) (PUPSOCKETEVENT 257071Q . 257350Q) (\FLUSHPUPSOCQUEUE -257352Q . 257767Q)) (257772Q 260537Q (\GETMISCSOCKET 260004Q . 260535Q)) (300551Q 313341Q ( -PUP.ECHOSERVER 300563Q . 303370Q) (PUP.ECHOUSER 303372Q . 313337Q)) (313372Q 322523Q (\PEEKPUP 313404Q - . 320535Q) (\MAYBEPEEKPUP 320537Q . 322521Q)) (323124Q 334361Q (PRINTPUP 323136Q . 327306Q) ( -PRINTPUPROUTE 327310Q . 331255Q) (PRINTPUPDATA 331257Q . 331727Q) (PRINTERRORPUP 331731Q . 332431Q) ( -PUPTRACE 332433Q . 332744Q) (PRINTCONSTANT 332746Q . 334357Q))))) + (FILEMAP (NIL (25117Q 61405Q (\STARTPUP 25131Q . 26003Q) (ASSURE.PUP.READY 26005Q . 34100Q) ( +\FIND.LOCALPUPHOSTNUMBER 34102Q . 36611Q) (\PROMPT.FOR.PUP.NUMBER 36613Q . 40633Q) (\HANDLE.RAW.PUP +40635Q . 56735Q) (\FORWARD.PUP 56737Q . 57657Q) (\SETPUPCHECKSUM 57661Q . 61403Q)) (66151Q 73243Q ( +\PUPERROR 66163Q . 73241Q)) (73302Q 112436Q (SETUPPUP 73314Q . 76502Q) (SWAPPUPPORTS 76504Q . 77321Q) +(GETPUP 77323Q . 102235Q) (SENDPUP 102237Q . 106061Q) (EXCHANGEPUPS 106063Q . 110121Q) (DISCARDPUPS +110123Q . 110727Q) (GETPUPWORD 110731Q . 111250Q) (\PUPINIT 111252Q . 112434Q)) (112437Q 154017Q ( +ETHERHOSTNAME 112451Q . 121577Q) (ETHERHOSTNUMBER 121601Q . 122214Q) (ETHERPORT 122216Q . 125735Q) ( +BESTPUPADDRESS 125737Q . 135777Q) (NETDAYTIME0 136001Q . 136332Q) (\PUP.SETTIME 136334Q . 136761Q) ( +\SETNEWTIME0 136763Q . 140043Q) (\NET.SETTIME 140045Q . 141134Q) (NETDATE 141136Q . 141473Q) ( +\LOOKUPPORT 141475Q . 147334Q) (\PARSE.PORTCONSTANT 147336Q . 152446Q) (\FIXLOCALNET 152450Q . 154015Q +)) (154020Q 155355Q (PORTSTRING 154032Q . 155021Q) (OCTALSTRING 155023Q . 155353Q)) (155747Q 165060Q ( +CLEARPUP 155761Q . 160474Q) (PUTPUPWORD 160476Q . 161023Q) (GETPUPBYTE 161025Q . 161350Q) (PUTPUPBYTE +161352Q . 161703Q) (GETPUPSTRING 161705Q . 163336Q) (GETPUPSTREAM 163340Q . 164267Q) (PUTPUPSTRING +164271Q . 165056Q)) (166651Q 174470Q (READPLIST 166663Q . 174466Q)) (174651Q 200051Q ( +\CANONICAL.HOSTNAME 174663Q . 175730Q) (\CANONICALIZE.PUP.HOSTNAME 175732Q . 200047Q)) (202406Q +235613Q (\PUPGATELISTENER 202420Q . 206251Q) (\HANDLE.PUP.ROUTING.INFO 206253Q . 220612Q) (\ROUTE.PUP +220614Q . 224447Q) (\LOCATE.PUPNET 224451Q . 231206Q) (SORT.PUPHOSTS.BY.DISTANCE 231210Q . 233464Q) ( +\PUPNET.CLOSERP 233466Q . 234647Q) (PUPNET.DISTANCE 234651Q . 235611Q)) (247006Q 256760Q ( +OPENPUPSOCKET 247020Q . 253501Q) (CLOSEPUPSOCKET 253503Q . 255162Q) (PUPSOCKETNUMBER 255164Q . 255415Q +) (PUPSOCKETFROMNUMBER 255417Q . 256056Q) (PUPSOCKETEVENT 256060Q . 256337Q) (\FLUSHPUPSOCQUEUE +256341Q . 256756Q)) (256761Q 257526Q (\GETMISCSOCKET 256773Q . 257524Q)) (277224Q 312014Q ( +PUP.ECHOSERVER 277236Q . 302043Q) (PUP.ECHOUSER 302045Q . 312012Q)) (312045Q 321176Q (\PEEKPUP 312057Q + . 317210Q) (\MAYBEPEEKPUP 317212Q . 321174Q)) (321577Q 333034Q (PRINTPUP 321611Q . 325761Q) ( +PRINTPUPROUTE 325763Q . 327730Q) (PRINTPUPDATA 327732Q . 330402Q) (PRINTERRORPUP 330404Q . 331104Q) ( +PUPTRACE 331106Q . 331417Q) (PRINTCONSTANT 331421Q . 333032Q))))) STOP diff --git a/sources/PUP.LCOM b/sources/PUP.LCOM index 82a817906eef3c9178405992ae777fb480e89b97..4bb0cc79982d8eca01394bcbe6a85044d59da6ce 100644 GIT binary patch delta 7829 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 SfAQH?tL@LeDO5wAU;BSD_8W2l delta 7772 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 From 09b6b1e8542cab26db4a4b4a3d9d14d3923dc994 Mon Sep 17 00:00:00 2001 From: Nick Briggs Date: Fri, 23 Jan 2026 18:31:19 -0800 Subject: [PATCH 3/9] Updates \SETETHERFLAGS to avoid setting \10MBFLG when no ethernet --- sources/LLETHER | 66 +++++++++++++++++++++++-------------------- sources/LLETHER.LCOM | Bin 43618 -> 43657 bytes 2 files changed, 35 insertions(+), 31 deletions(-) diff --git a/sources/LLETHER b/sources/LLETHER index 7171a26e..fd0719d9 100644 --- a/sources/LLETHER +++ b/sources/LLETHER @@ -1,10 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "20-Dec-2025 14:12:06" {DSK}briggs>projects>medley>sources>LLETHER.;2 138541 +(FILECREATED "23-Jan-2026 12:42:02" {DSK}briggs>PROJECTS>Medley>sources>LLETHER.;4 138728 - :CHANGES-TO (FNS \ETHEREVENTFN) + :EDIT-BY nhb - :PREVIOUS-DATE "17-Dec-2025 11:02:51" {DSK}briggs>projects>medley>sources>LLETHER.;1) + :CHANGES-TO (FNS \SETETHERFLAGS) + + :PREVIOUS-DATE "20-Dec-2025 14:12:06" {DSK}briggs>PROJECTS>Medley>sources>LLETHER.;3) (PRETTYCOMPRINT LLETHERCOMS) @@ -1549,11 +1551,13 @@ (printout PROMPTWINDOW T "[Time not set]"]) (\SETETHERFLAGS - [LAMBDA NIL (* ; "Edited 2-May-2021 12:35 by larry") + [LAMBDA NIL (* ; "Edited 23-Jan-2026 12:39 by nhb") + (* ; "Edited 2-May-2021 12:35 by larry") (* ;; "for Medley there is no 3MB ethernet ; used to be conditional on \MACHINETYPE") - (SETQ \10MBFLG 0) + (SETQ \10MBFLG (AND (\ETHER-AVAILABLE) + 0)) (SETQ \3MBFLG NIL) (SETQ *MAXIMUM-PACKET-SIZE* (- (TIMES 2 BYTESPERPAGE) (UNFOLD (INDEXF (FETCH EPBODY)) @@ -2938,30 +2942,30 @@ ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (10564 19020 (CANONICAL.HOSTNAME 10574 . 12163) (\ENQUEUE 12165 . 14810) (\DEQUEUE 14812 - . 16139) (\QUEUELENGTH 16141 . 16441) (\ONQUEUE 16443 . 16709) (\UNQUEUE 16711 . 19018)) (52579 56445 - (\ALLOCATE.ETHERPACKET 52589 . 53630) (\RELEASE.ETHERPACKET 53632 . 54705) (RELEASE.PUP 54707 . 54852 -) (\FLUSH.PACKET.QUEUE 54854 . 55205) (\REQUEUE.ETHERPACKET 55207 . 55721) (\EP.PUT.AUX 55723 . 56443) -) (57019 68400 (\SETLOCALNSNUMBERS 57029 . 58414) (\LOADNSADDRESS 58416 . 58708) (\STORENSADDRESS -58710 . 58891) (\PRINTNSADDRESS 58893 . 59976) (\NSADDRESS.DEFPRINT 59978 . 64923) ( -\NSADDRESS.PRINT.DECIMAL 64925 . 67056) (\LOADNSHOSTNUMBER 67058 . 67687) (\STORENSHOSTNUMBER 67689 . -68093) (PRINTNSHOSTNUMBER 68095 . 68398)) (68513 74207 (\ETHERINIT 68523 . 69093) (\ETHEREVENTFN 69095 - . 71573) (\ETHER-AVAILABLE 71575 . 71733) (\TIME.NOT.SET 71735 . 72061) (\SETETHERFLAGS 72063 . 72514 -) (\FLUSHNDBS 72516 . 73694) (\FLUSH.NDB.QUEUE 73696 . 74205)) (74208 77500 (\CHECKSUM 74218 . 76150) -(\HANDLE.RAW.OTHER 76152 . 76507) (\HANDLE.RAW.PACKET 76509 . 77021) (\ADD.PACKET.FILTER 77023 . 77255 -) (\DEL.PACKET.FILTER 77257 . 77498)) (85004 85529 (ENCAPSULATE.ETHERPACKET 85014 . 85286) ( -TRANSMIT.ETHERPACKET 85288 . 85527)) (85817 98413 (\AGE.ROUTING.TABLE 85827 . 87976) ( -\ADD.ROUTING.TABLE.ENTRY 87978 . 88674) (\CLEAR.ROUTING.TABLE 88676 . 89403) (\MAP.ROUTING.TABLE 89405 - . 89933) (PRINTROUTINGTABLE 89935 . 93560) (\ROUTINGTABLE.INFOHOOK 93562 . 98411)) (98898 105683 ( -\TRANSLATE.10TO3 98908 . 100692) (\NOTE.10TO3 100694 . 102310) (\HANDLE.RAW.10TO3 102312 . 105681)) ( -109673 124495 (PRINTPACKET 109683 . 110244) (\MAYBEPRINTPACKET 110246 . 111903) (PRINT10TO3 111905 . -113273) (PRINTPACKETDATA 113275 . 118565) (PRINTPACKETQUEUE 118567 . 118996) (TIME.SINCE.PACKET 118998 - . 119483) (MAKE-NETWORK-TRACE-WINDOW 119485 . 123027) (\CHANGE.ETHER.TRACING 123029 . 124493)) ( -124862 125677 (\CENTICLOCK 124872 . 125675)) (126128 132228 (\3MBGETPACKET 126138 . 127558) ( -\3MB.CREATENDB 127560 . 128275) (\3MBSENDPACKET 128277 . 130460) (\3MBWATCHER 130462 . 131200) ( -\3MBENCAPSULATE 131202 . 131750) (\3MB.BROADCASTP 131752 . 131923) (\3MBFLUSH 131925 . 132226)) ( -134970 136913 (ASSURE.ETHER.ON 134980 . 135310) (INITPUPLEVEL1 135312 . 135792) (TURN.ON.ETHER 135794 - . 135939) (RESTART.ETHER 135941 . 136315) (TURN.OFF.ETHER 136317 . 136635) (PRINTWORDS 136637 . -136911)) (137184 137719 (\DEVICE.INPUT 137194 . 137359) (\DEVICE.OUTPUT 137361 . 137555) (\D0.STARTIO -137557 . 137717))))) + (FILEMAP (NIL (10585 19041 (CANONICAL.HOSTNAME 10595 . 12184) (\ENQUEUE 12186 . 14831) (\DEQUEUE 14833 + . 16160) (\QUEUELENGTH 16162 . 16462) (\ONQUEUE 16464 . 16730) (\UNQUEUE 16732 . 19039)) (52600 56466 + (\ALLOCATE.ETHERPACKET 52610 . 53651) (\RELEASE.ETHERPACKET 53653 . 54726) (RELEASE.PUP 54728 . 54873 +) (\FLUSH.PACKET.QUEUE 54875 . 55226) (\REQUEUE.ETHERPACKET 55228 . 55742) (\EP.PUT.AUX 55744 . 56464) +) (57040 68421 (\SETLOCALNSNUMBERS 57050 . 58435) (\LOADNSADDRESS 58437 . 58729) (\STORENSADDRESS +58731 . 58912) (\PRINTNSADDRESS 58914 . 59997) (\NSADDRESS.DEFPRINT 59999 . 64944) ( +\NSADDRESS.PRINT.DECIMAL 64946 . 67077) (\LOADNSHOSTNUMBER 67079 . 67708) (\STORENSHOSTNUMBER 67710 . +68114) (PRINTNSHOSTNUMBER 68116 . 68419)) (68534 74394 (\ETHERINIT 68544 . 69114) (\ETHEREVENTFN 69116 + . 71594) (\ETHER-AVAILABLE 71596 . 71754) (\TIME.NOT.SET 71756 . 72082) (\SETETHERFLAGS 72084 . 72701 +) (\FLUSHNDBS 72703 . 73881) (\FLUSH.NDB.QUEUE 73883 . 74392)) (74395 77687 (\CHECKSUM 74405 . 76337) +(\HANDLE.RAW.OTHER 76339 . 76694) (\HANDLE.RAW.PACKET 76696 . 77208) (\ADD.PACKET.FILTER 77210 . 77442 +) (\DEL.PACKET.FILTER 77444 . 77685)) (85191 85716 (ENCAPSULATE.ETHERPACKET 85201 . 85473) ( +TRANSMIT.ETHERPACKET 85475 . 85714)) (86004 98600 (\AGE.ROUTING.TABLE 86014 . 88163) ( +\ADD.ROUTING.TABLE.ENTRY 88165 . 88861) (\CLEAR.ROUTING.TABLE 88863 . 89590) (\MAP.ROUTING.TABLE 89592 + . 90120) (PRINTROUTINGTABLE 90122 . 93747) (\ROUTINGTABLE.INFOHOOK 93749 . 98598)) (99085 105870 ( +\TRANSLATE.10TO3 99095 . 100879) (\NOTE.10TO3 100881 . 102497) (\HANDLE.RAW.10TO3 102499 . 105868)) ( +109860 124682 (PRINTPACKET 109870 . 110431) (\MAYBEPRINTPACKET 110433 . 112090) (PRINT10TO3 112092 . +113460) (PRINTPACKETDATA 113462 . 118752) (PRINTPACKETQUEUE 118754 . 119183) (TIME.SINCE.PACKET 119185 + . 119670) (MAKE-NETWORK-TRACE-WINDOW 119672 . 123214) (\CHANGE.ETHER.TRACING 123216 . 124680)) ( +125049 125864 (\CENTICLOCK 125059 . 125862)) (126315 132415 (\3MBGETPACKET 126325 . 127745) ( +\3MB.CREATENDB 127747 . 128462) (\3MBSENDPACKET 128464 . 130647) (\3MBWATCHER 130649 . 131387) ( +\3MBENCAPSULATE 131389 . 131937) (\3MB.BROADCASTP 131939 . 132110) (\3MBFLUSH 132112 . 132413)) ( +135157 137100 (ASSURE.ETHER.ON 135167 . 135497) (INITPUPLEVEL1 135499 . 135979) (TURN.ON.ETHER 135981 + . 136126) (RESTART.ETHER 136128 . 136502) (TURN.OFF.ETHER 136504 . 136822) (PRINTWORDS 136824 . +137098)) (137371 137906 (\DEVICE.INPUT 137381 . 137546) (\DEVICE.OUTPUT 137548 . 137742) (\D0.STARTIO +137744 . 137904))))) STOP diff --git a/sources/LLETHER.LCOM b/sources/LLETHER.LCOM index 4250c3b100c994dd2ec893225ad44272612afc7a..bd6f4cd55ab364b9e06a57394fa98091dcbfa1fd 100644 GIT binary patch delta 415 zcmaEKg{ku@(}V~iV_mPrJY6FLBQpgBV*dlTR}$ z)SGB3C>fd|sW!7RFtRc*R#Hex&d)8#QBP6G%v0b}atrnGQ9xFxr>Cc+kdj!Enu5&$ zLsKP9E)6$NA6MrfSH}=n7X>9FG&cclF;bFKsCEhVuC+mRS&+Y%t8+-Oo$q9SM)7(R z1w&&Cb0Z4{E-P0T&k$XwNQJzNBn2yH4@WsYS(hNky6I>BV*hMfq8& z$tA^hxs&}F#WRdF6_kunwHcUMnVKpolqBcp7UZa>C}id-a4ETk`uHdyE7a4|Q&LDt zEJ;nlG{D@-z)VS#OT*36$JIH=)iK1?W%3$E3E66wVDDNRJkF^%QZO{OFf}n$;IeY| zaP)I`4b~0uSI}_t3s#764e@Xdat(9!3vu()RImyFvOWDngLPei<|`-}nj`t$(8|Eb z%G6LvfeWvdsVO Date: Fri, 23 Jan 2026 18:51:15 -0800 Subject: [PATCH 4/9] Avoids making copy of \10MBLOCALNDB as \MAIKO.10MB.NDB for \MAIKO.ETHER-INTERRUPT --- sources/MAIKOETHER | 249 ++++++++++++++++++---------------------- sources/MAIKOETHER.LCOM | Bin 8970 -> 9099 bytes 2 files changed, 110 insertions(+), 139 deletions(-) diff --git a/sources/MAIKOETHER b/sources/MAIKOETHER index 56332f19..955495f8 100644 --- a/sources/MAIKOETHER +++ b/sources/MAIKOETHER @@ -1,14 +1,14 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10) -(FILECREATED "25-Oct-2021 15:12:33" |{DSK}larry>medley>sources>MAIKOETHER.;2| 28792 +(FILECREATED "30-Dec-2025 19:09:34" |{DSK}briggs>projects>medley>sources>MAIKOETHER.;7| 26899 - |changes| |to:| (FNS \\DISPLAYLINE) - (VARS MAIKOETHERCOMS) + :EDIT-BY |nhb| - |previous| |date:| "25-Mar-2021 09:50:57" |{DSK}larry>medley>sources>MAIKOETHER.;1|) + :CHANGES-TO (VARS MAIKOETHERCOMS) + :PREVIOUS-DATE "30-Dec-2025 18:50:46" |{DSK}briggs>projects>medley>sources>MAIKOETHER.;6| +) -; Copyright (c) 1988-1991, 2021 by Venue & Xerox Corporation. (PRETTYCOMPRINT MAIKOETHERCOMS) @@ -23,10 +23,6 @@ (DECLARE\: EVAL@COMPILE DONTCOPY (FILES (LOADCOMP) 10MBDRIVER) (GLOBALVARS \\MAIKO.INPUT.PACKET |\\ETHERtopMonitor|) - - (* |;;| "The NDB for Maiko's 10MB connection; used by \\MAIKO.ETHER-INTERRUPT:") - - (GLOBALVARS \\MAIKO.10MB.NDB) (GLOBALVARS \\MAIKO.IO-INTERRUPT-FLAGS \\MAIKO.IO-INTERRUPT-VECTOR)) (ADDVARS (\\MAIKO.MOVDS (\\MAIKO.10MBSTARTDRIVER \\10MB.STARTDRIVER) (\\MAIKO.10MBWATCHER \\10MBWATCHER) @@ -35,9 +31,13 @@ (\\MAIKO.10MBTURNONETHER \\10MB.TURNONETHER) (\\MAIKO.ETHERRESUME \\10MB.RESTART.ETHER) (\\MAIKO.CHECKSUM \\CHECKSUM))) - (COMS (* \; "MAIKO handler for new interrupt-driven incoming ethernet communication, rather than polling for it.") + (COMS + (* |;;| "MAIKO handler for new interrupt-driven incoming ethernet communication, rather than polling for it.") + (FNS \\MAIKO.ETHER-INTERRUPT)) - (COMS (* \; "MAIKO Log & Console message handling. Interrupt-driven message printing, instead of polled printing.") + (COMS + (* |;;| "MAIKO Log & Console message handling. Interrupt-driven message printing, instead of polled printing.") + (FNS \\MAIKO.CONSOLE-LOG-PRINT)) (COMS (* |;;| "Asynchronous I/O handling") @@ -48,13 +48,12 @@ (DEFINEQ (\\10MB.RESTART.ETHER - (LAMBDA NIL (* \; "Edited 11-May-88 16:09 by MASINTER") + (LAMBDA NIL (* \; "Edited 11-May-88 16:09 by MASINTER") (SUBRCALL ETHER-RESUME))) (\\10MB.STARTDRIVER - (LAMBDA (NDB RESTARTFLG MYNSNUMBER) (* \; "Edited 5-Apr-89 15:03 by snow") - (DECLARE (GLOBALVARS \\MAIKO.INPUT.PACKET \\10MB.EXPECTED.RECEIVE.INTERVAL - \\10MB.INPUT.TIMEOUT)) + (LAMBDA (NDB RESTARTFLG MYNSNUMBER) (* \; "Edited 5-Apr-89 15:03 by snow") + (DECLARE (GLOBALVARS \\MAIKO.INPUT.PACKET \\10MB.EXPECTED.RECEIVE.INTERVAL \\10MB.INPUT.TIMEOUT)) (SUBRCALL ETHER-SUSPEND) (OR (\\INIT.ETHER.BUFFER.POOL) (ERROR "Unable to create buffer pool")) @@ -65,21 +64,17 @@ 0 0) (PROG ((CSB (|fetch| NDBCSB |of| NDB))) (OR \\MAIKO.INPUT.PACKET (SETQ \\MAIKO.INPUT.PACKET (\\ALLOCATE.ETHERPACKET))) - (|replace| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB) |with| - \\ES.PENDING) - (SUBRCALL ETHER-GET \\10MBPACKETLENGTH (|fetch| 10MBPACKETBASE |of| - \\MAIKO.INPUT.PACKET - )) - (|replace| NDBWATCHER |of| NDB |with| (ADD.PROCESS (LIST '\\10MBWATCHER - (KWOTE NDB)) - 'RESTARTABLE - 'SYSTEM - 'AFTEREXIT - 'DELETE)) + (|replace| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB) |with| \\ES.PENDING) + (SUBRCALL ETHER-GET \\10MBPACKETLENGTH (|fetch| 10MBPACKETBASE |of| \\MAIKO.INPUT.PACKET)) + (|replace| NDBWATCHER |of| NDB |with| (ADD.PROCESS (LIST '\\10MBWATCHER (KWOTE NDB)) + 'RESTARTABLE + 'SYSTEM + 'AFTEREXIT + 'DELETE)) (RETURN NDB)))) (\\10MB.TURNOFFETHER - (LAMBDA NIL (* \; "Edited 11-May-88 16:11 by MASINTER") + (LAMBDA NIL (* \; "Edited 11-May-88 16:11 by MASINTER") (SUBRCALL ETHER-SUSPEND))) (\\10MB.TURNONETHER @@ -92,20 +87,16 @@ (PROG ((CSB (|fetch| NDBCSB |of| NDB))) (\\MAIKO.ETHERSUSPEND) - (OR CSB (|replace| NDBCSB |of| NDB |with| (SETQ CSB - (LOCF (|fetch| DLETHERNET - |of| \\IOPAGE))))) + (OR CSB (|replace| NDBCSB |of| NDB |with| (SETQ CSB (LOCF (|fetch| DLETHERNET |of| \\IOPAGE + ))))) (|replace| DLFIRSTOCB |of| CSB |with| 0) (|replace| DLFIRSTICB |of| CSB |with| 0) (AND NSHOSTNUMBER (COND ((EQ NSHOSTNUMBER T) (\\BLT (LOCF (|fetch| DLLOCALHOST0 |of| CSB)) - (LOCF (|fetch| (IFPAGE |NSHost0|) |of| - |\\InterfacePage|) - ) + (LOCF (|fetch| (IFPAGE |NSHost0|) |of| |\\InterfacePage|)) \\#WDS.NSHOSTNUMBER)) - (T (\\STORENSHOSTNUMBER (LOCF (|fetch| DLLOCALHOST0 |of| - CSB)) + (T (\\STORENSHOSTNUMBER (LOCF (|fetch| DLLOCALHOST0 |of| CSB)) NSHOSTNUMBER)))) (AND OUTINTERRUPT (|replace| DLOUTPUTMASK |of| CSB |with| OUTINTERRUPT)) (AND ININTERRUPT (|replace| DLINPUTMASK |of| CSB |with| ININTERRUPT)) @@ -117,7 +108,7 @@ (RETURN NDB)))) (\\10MBSENDPACKET - (LAMBDA (NDB PACKET) (* \; "Edited 11-May-88 16:10 by MASINTER") + (LAMBDA (NDB PACKET) (* \; "Edited 11-May-88 16:10 by MASINTER") (PROG NIL (COND (\\RAWTRACING (\\MAYBEPRINTPACKET PACKET 'RAWPUT))) @@ -125,23 +116,23 @@ ((OR (|fetch| 10MBMULTICASTP |of| PACKET) (EQNSADDRESS.HOST \\MY.NSADDRESS (|fetch| 10MBDESTHOSTBASE |of| PACKET))) (* \; - "We would hear this packet if our hardware let us, so fake receipt") + "We would hear this packet if our hardware let us, so fake receipt") (PROG ((COPYPACKET (\\ALLOCATE.ETHERPACKET))) (\\BLT (LOCF (|fetch| 10MBLENGTH |of| COPYPACKET)) (LOCF (|fetch| 10MBLENGTH |of| PACKET)) (ADD1 (|fetch| 10MBLENGTH |of| PACKET))) (* \; - "Copy all data that would have been transmitted") + "Copy all data that would have been transmitted") (|replace| EPNETWORK |of| COPYPACKET |with| NDB) (|replace| EPTYPE |of| COPYPACKET |with| (|for| PAIR |in| \\10MBTYPE.TRANSLATIONS - |bind| (TYPE _ (|fetch| 10MBTYPE |of| PACKET)) - |when| (EQ TYPE (CAR PAIR)) |do| + |bind| (TYPE _ (|fetch| 10MBTYPE |of| PACKET)) + |when| (EQ TYPE (CAR PAIR)) |do| (* |;;| "TYPE is the raw type of the etherpacket. These do not always correspond one-to-one with the EPTYPE constants we use (in particular, for pups), so translate if necessary.") - (RETURN (CDR PAIR)) - |finally| (RETURN TYPE))) + (RETURN (CDR PAIR)) + |finally| (RETURN TYPE))) (COND (\\RAWTRACING (\\MAYBEPRINTPACKET COPYPACKET 'RAWGET))) (\\HANDLE.RAW.PACKET COPYPACKET)))) @@ -154,20 +145,21 @@ (RETURN T)))) (\\10MBWATCHER - (LAMBDA (NDB) (* \; "Edited 16-May-88 22:24 by MASINTER") + (LAMBDA (NDB) (* \; "Edited 16-May-88 22:24 by MASINTER") (* |;;| "merge message and packet reading") (PROG ((CNTR 0) MESSAGE-BUFFER MESSAGE-LENGTH PACKET) LP (IF (SUBRCALL MESSAGE-READP) - THEN (PROMPTPRINT (IF (SETQ MESSAGE-LENGTH (SUBRCALL MESSAGE-READ - (OR MESSAGE-BUFFER - (SETQ MESSAGE-BUFFER - (ALLOCSTRING 1024))) - 1024)) - THEN (SUBSTRING MESSAGE-BUFFER 1 MESSAGE-LENGTH) - ELSE "?? system message: polling failed"))) + THEN (PROMPTPRINT (IF (SETQ MESSAGE-LENGTH (SUBRCALL MESSAGE-READ (OR MESSAGE-BUFFER + (SETQ + MESSAGE-BUFFER + (ALLOCSTRING + 1024))) + 1024)) + THEN (SUBSTRING MESSAGE-BUFFER 1 MESSAGE-LENGTH) + ELSE "?? system message: polling failed"))) (UNINTERRUPTABLY (SUBRCALL ETHER-CHECK) (SETQ PACKET (\\MAIKO.INPUT.INTERRUPT NDB))) @@ -182,31 +174,31 @@ (GO LP)))) (\\MAIKO.10MBSENDPACKET - (LAMBDA (NDB PACKET) (* \; "Edited 31-Oct-89 14:10 by bvm") + (LAMBDA (NDB PACKET) (* \; "Edited 31-Oct-89 14:10 by bvm") (PROG NIL (COND (\\RAWTRACING (\\MAYBEPRINTPACKET PACKET 'RAWPUT))) (COND ((OR (|fetch| 10MBMULTICASTP |of| PACKET) - (EQNSADDRESS.HOST \\MY.NSADDRESS (|fetch| 10MBDESTNSADDRESSBASE |of| PACKET - )))(* \; - "We would hear this packet if our hardware let us, so fake receipt") + (EQNSADDRESS.HOST \\MY.NSADDRESS (|fetch| 10MBDESTNSADDRESSBASE |of| PACKET))) + (* \; + "We would hear this packet if our hardware let us, so fake receipt") (PROG ((COPYPACKET (\\ALLOCATE.ETHERPACKET))) (\\BLT (LOCF (|fetch| 10MBLENGTH |of| COPYPACKET)) (LOCF (|fetch| 10MBLENGTH |of| PACKET)) (ADD1 (|fetch| 10MBLENGTH |of| PACKET))) (* \; - "Copy all data that would have been transmitted") + "Copy all data that would have been transmitted") (|replace| EPNETWORK |of| COPYPACKET |with| NDB) (|replace| EPTYPE |of| COPYPACKET |with| (|for| PAIR |in| \\10MBTYPE.TRANSLATIONS - |bind| (TYPE _ (|fetch| 10MBTYPE |of| PACKET)) - |when| (EQ TYPE (CAR PAIR)) |do| + |bind| (TYPE _ (|fetch| 10MBTYPE |of| PACKET)) + |when| (EQ TYPE (CAR PAIR)) |do| (* |;;| "TYPE is the raw type of the etherpacket. These do not always correspond one-to-one with the EPTYPE constants we use (in particular, for pups), so translate if necessary.") - (RETURN (CDR PAIR)) - |finally| (RETURN TYPE))) + (RETURN (CDR PAIR)) + |finally| (RETURN TYPE))) (COND (\\RAWTRACING (\\MAYBEPRINTPACKET COPYPACKET 'RAWGET))) (\\HANDLE.RAW.PACKET COPYPACKET)))) @@ -219,20 +211,21 @@ (RETURN T)))) (\\MAIKO.10MBWATCHER - (LAMBDA (NDB) (* \; "Edited 16-May-88 22:24 by MASINTER") + (LAMBDA (NDB) (* \; "Edited 16-May-88 22:24 by MASINTER") (* |;;| "merge message and packet reading") (PROG ((CNTR 0) MESSAGE-BUFFER MESSAGE-LENGTH PACKET) LP (IF (SUBRCALL MESSAGE-READP) - THEN (PROMPTPRINT (IF (SETQ MESSAGE-LENGTH (SUBRCALL MESSAGE-READ - (OR MESSAGE-BUFFER - (SETQ MESSAGE-BUFFER - (ALLOCSTRING 1024))) - 1024)) - THEN (SUBSTRING MESSAGE-BUFFER 1 MESSAGE-LENGTH) - ELSE "?? system message: polling failed"))) + THEN (PROMPTPRINT (IF (SETQ MESSAGE-LENGTH (SUBRCALL MESSAGE-READ (OR MESSAGE-BUFFER + (SETQ + MESSAGE-BUFFER + (ALLOCSTRING + 1024))) + 1024)) + THEN (SUBSTRING MESSAGE-BUFFER 1 MESSAGE-LENGTH) + ELSE "?? system message: polling failed"))) (UNINTERRUPTABLY (SUBRCALL ETHER-CHECK) (SETQ PACKET (\\MAIKO.INPUT.INTERRUPT NDB))) @@ -247,15 +240,15 @@ (GO LP)))) (\\MAIKO.ETHERRESUME - (LAMBDA NIL (* \; "Edited 11-May-88 16:09 by MASINTER") + (LAMBDA NIL (* \; "Edited 11-May-88 16:09 by MASINTER") (SUBRCALL ETHER-RESUME))) (\\MAIKO.ETHERSUSPEND - (LAMBDA NIL (* \; "Edited 11-May-88 16:11 by MASINTER") + (LAMBDA NIL (* \; "Edited 11-May-88 16:11 by MASINTER") (SUBRCALL ETHER-SUSPEND))) (\\MAIKO.INPUT.INTERRUPT - (LAMBDA (NDB) (* \; "Edited 11-May-88 16:05 by MASINTER") + (LAMBDA (NDB) (* \; "Edited 11-May-88 16:05 by MASINTER") (* |;;| "This routine gets called when 10MB input signals an interrupt. See if the \\MAIKO.INPUT.PACKET has indeed been processed, and if so, take care of it") @@ -266,43 +259,38 @@ (|replace| 10MBLENGTH |of| PACKET |with| LENGTH) (\\RCLK (LOCF (|fetch| EPTIMESTAMP |of| PACKET))) (|replace| EPNETWORK |of| PACKET |with| NDB) - (|replace| EPTYPE |of| PACKET |with| (|for| PAIR |in| - \\10MBTYPE.TRANSLATIONS - |bind| (TYPE _ - (|fetch| - 10MBTYPE - |of| PACKET - )) - |when| (EQ TYPE (CAR PAIR)) - |do| (RETURN (CDR PAIR)) - |finally| (RETURN TYPE))) + (|replace| EPTYPE |of| PACKET |with| (|for| PAIR |in| \\10MBTYPE.TRANSLATIONS + |bind| (TYPE _ (|fetch| 10MBTYPE |of| PACKET)) + |when| (EQ TYPE (CAR PAIR)) + |do| (RETURN (CDR PAIR)) + |finally| (RETURN TYPE))) (COND (\\RAWTRACING (\\MAYBEPRINTPACKET PACKET 'RAWGET))) (RETURN (PROG1 PACKET (SETQ \\MAIKO.INPUT.PACKET (\\ALLOCATE.ETHERPACKET)) - (|replace| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB) - |with| \\ES.PENDING) - (SUBRCALL ETHER-GET \\10MBPACKETLENGTH (|fetch| 10MBPACKETBASE - |of| \\MAIKO.INPUT.PACKET)))) - ) + (|replace| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB) |with| \\ES.PENDING) + (SUBRCALL ETHER-GET \\10MBPACKETLENGTH (|fetch| 10MBPACKETBASE |of| + \\MAIKO.INPUT.PACKET + ))))) (T (RETURN NIL)))))) (\\NS.SETTIME - (LAMBDA (RETFLG) (* \; "Edited 13-May-88 15:22 by MASINTER") + (LAMBDA (RETFLG) (* \; "Edited 13-May-88 15:22 by MASINTER") (CL:UNLESS (AND RETFLG (NOT (STRINGP RETFLG))) (SETQ |\\TimeZoneComp| (SUBRCALL GETUNIXTIME 8 NIL))) (\\PROCESS.RESET.TIMERS) (DAYTIME))) (\\PUP.SETTIME - (LAMBDA (RETFLG) (* \; "Edited 13-May-88 15:22 by MASINTER") + (LAMBDA (RETFLG) (* \; "Edited 13-May-88 15:22 by MASINTER") (CL:UNLESS (AND RETFLG (NOT (STRINGP RETFLG))) (SETQ |\\TimeZoneComp| (SUBRCALL GETUNIXTIME 8 NIL))) (\\PROCESS.RESET.TIMERS) (DAYTIME))) (\\MAIKO.10MBSTARTDRIVER - (LAMBDA (NDB RESTARTFLG MYNSNUMBER) (* \; "Edited 4-May-91 15:50 by jds") + (LAMBDA (NDB RESTARTFLG MYNSNUMBER) (* \; "Edited 30-Dec-2025 18:50 by nhb") + (* \; "Edited 4-May-91 15:50 by jds") (* |;;| "Start the \"driver\" for the 10MB ethernet on Sun Medley. In particular, turn on the C ehternet code, queue up the first input packet, and start the \\10MBWATCHER process.") @@ -312,13 +300,11 @@ (|replace| NDBTQ |of| NDB |with| (|create| SYSQUEUE)) (SETQ \\10MB.RAWPACKETQ (|create| SYSQUEUE)) (SETQ \\10MB.INPUT.TIMEOUT (TIMES \\RCLKSECOND \\10MB.EXPECTED.RECEIVE.INTERVAL)) - (SETQ \\MAIKO.10MB.NDB NDB) (\\10MB.TURNONETHER NDB NIL NIL (OR MYNSNUMBER T) 0 0) (PROG ((CSB (|fetch| NDBCSB |of| NDB))) (OR \\MAIKO.INPUT.PACKET (SETQ \\MAIKO.INPUT.PACKET (\\ALLOCATE.ETHERPACKET))) - (|replace| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB) |with| - \\ES.PENDING) + (|replace| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB) |with| \\ES.PENDING) (AND (SUBRCALL ETHER-GET \\10MBPACKETLENGTH (|fetch| 10MBPACKETBASE |of| \\MAIKO.INPUT.PACKET )) @@ -340,20 +326,16 @@ (PROG ((CSB (|fetch| NDBCSB |of| NDB))) (\\MAIKO.ETHERSUSPEND) - (OR CSB (|replace| NDBCSB |of| NDB |with| (SETQ CSB - (LOCF (|fetch| DLETHERNET - |of| \\IOPAGE))))) + (OR CSB (|replace| NDBCSB |of| NDB |with| (SETQ CSB (LOCF (|fetch| DLETHERNET |of| \\IOPAGE + ))))) (|replace| DLFIRSTOCB |of| CSB |with| 0) (|replace| DLFIRSTICB |of| CSB |with| 0) (AND NSHOSTNUMBER (COND ((EQ NSHOSTNUMBER T) (\\BLT (LOCF (|fetch| DLLOCALHOST0 |of| CSB)) - (LOCF (|fetch| (IFPAGE |NSHost0|) |of| - |\\InterfacePage|) - ) + (LOCF (|fetch| (IFPAGE |NSHost0|) |of| |\\InterfacePage|)) \\#WDS.NSHOSTNUMBER)) - (T (\\STORENSHOSTNUMBER (LOCF (|fetch| DLLOCALHOST0 |of| - CSB)) + (T (\\STORENSHOSTNUMBER (LOCF (|fetch| DLLOCALHOST0 |of| CSB)) NSHOSTNUMBER)))) (AND OUTINTERRUPT (|replace| DLOUTPUTMASK |of| CSB |with| OUTINTERRUPT)) (AND ININTERRUPT (|replace| DLINPUTMASK |of| CSB |with| ININTERRUPT)) @@ -365,14 +347,14 @@ (RETURN NDB)))) (\\MAIKO.10MB.RESTART.ETHER - (LAMBDA (NDB) (* \; "Edited 11-May-88 16:08 by MASINTER") + (LAMBDA (NDB) (* \; "Edited 11-May-88 16:08 by MASINTER") (* |;;;| "Kick the Ethernet receiver task to restart the Ethernet receiver task. This function gets called when the 10MBDRIVER thinks the Ethernet has been accidentally disabled") (SUBRCALL ETHER-RESUME))) (\\MAIKO.CHECKSUM - (LAMBDA (BASE NWORDS INITSUM) (* \; "Edited 20-May-88 11:48 by MASINTER") + (LAMBDA (BASE NWORDS INITSUM) (* \; "Edited 20-May-88 11:48 by MASINTER") (SUBRCALL CHECK-SUM BASE NWORDS INITSUM))) ) @@ -391,41 +373,37 @@ (DECLARE\: DOEVAL@COMPILE DONTCOPY -(GLOBALVARS \\MAIKO.10MB.NDB) -) - -(DECLARE\: DOEVAL@COMPILE DONTCOPY - (GLOBALVARS \\MAIKO.IO-INTERRUPT-FLAGS \\MAIKO.IO-INTERRUPT-VECTOR) ) ) (ADDTOVAR \\MAIKO.MOVDS (\\MAIKO.10MBSTARTDRIVER \\10MB.STARTDRIVER) - (\\MAIKO.10MBWATCHER \\10MBWATCHER) - (\\MAIKO.10MBSENDPACKET \\10MBSENDPACKET) - (\\MAIKO.ETHERSUSPEND \\10MB.TURNOFFETHER) - (\\MAIKO.10MBTURNONETHER \\10MB.TURNONETHER) - (\\MAIKO.ETHERRESUME \\10MB.RESTART.ETHER) - (\\MAIKO.CHECKSUM \\CHECKSUM)) + (\\MAIKO.10MBWATCHER \\10MBWATCHER) + (\\MAIKO.10MBSENDPACKET \\10MBSENDPACKET) + (\\MAIKO.ETHERSUSPEND \\10MB.TURNOFFETHER) + (\\MAIKO.10MBTURNONETHER \\10MB.TURNONETHER) + (\\MAIKO.ETHERRESUME \\10MB.RESTART.ETHER) + (\\MAIKO.CHECKSUM \\CHECKSUM)) -(* \; +(* |;;| "MAIKO handler for new interrupt-driven incoming ethernet communication, rather than polling for it.") (DEFINEQ (\\MAIKO.ETHER-INTERRUPT - (LAMBDA NIL (* \; "Edited 4-May-91 13:46 by jds") + (LAMBDA NIL (* \; "Edited 30-Dec-2025 18:36 by nhb") + (* \; "Edited 4-May-91 13:46 by jds") (* |;;| "This routine gets called when 10MB input signals an interrupt. See if the \\MAIKO.INPUT.PACKET has indeed been processed, and if so, take care of it") - (PROG ((NDB \\MAIKO.10MB.NDB) + (PROG ((NDB \\10MBLOCALNDB) LENGTH) (* |;;| "First, turn off the interrupt flag:") - (REPLACE (INTERRUPTSTATE ETHERINTERRUPT) OF \\INTERRUPTSTATE WITH NIL) + (|replace| (INTERRUPTSTATE ETHERINTERRUPT) |of| \\INTERRUPTSTATE |with| NIL) (* |;;| "Now handle it:") @@ -437,33 +415,27 @@ READ-MORE-LOOP (COND - ((NEQ (SETQ LENGTH (|fetch| DLFIRSTICB |of| (|fetch| NDBCSB - |of| NDB))) + ((NEQ (SETQ LENGTH (|fetch| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB))) \\ES.PENDING) (|replace| 10MBLENGTH |of| PACKET |with| LENGTH) (\\RCLK (LOCF (|fetch| EPTIMESTAMP |of| PACKET))) (|replace| EPNETWORK |of| PACKET |with| NDB) (|replace| EPTYPE |of| PACKET |with| (|for| PAIR |in| \\10MBTYPE.TRANSLATIONS - |bind| (TYPE _ (|fetch| 10MBTYPE |of| PACKET - )) - |when| (EQ TYPE (CAR PAIR)) - |do| (RETURN (CDR PAIR)) |finally| (RETURN - TYPE))) + |bind| (TYPE _ (|fetch| 10MBTYPE |of| PACKET)) + |when| (EQ TYPE (CAR PAIR)) |do| (RETURN (CDR PAIR)) + |finally| (RETURN TYPE))) (COND (\\RAWTRACING (\\MAYBEPRINTPACKET PACKET 'RAWGET))) (\\HANDLE.RAW.PACKET PACKET) (SETQ \\MAIKO.INPUT.PACKET (\\ALLOCATE.ETHERPACKET)) - (|replace| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB) - |with| \\ES.PENDING) + (|replace| DLFIRSTICB |of| (|fetch| NDBCSB |of| NDB) |with| \\ES.PENDING) (COND ((SUBRCALL ETHER-GET \\10MBPACKETLENGTH (|fetch| 10MBPACKETBASE - |of| - \\MAIKO.INPUT.PACKET) - ) + |of| \\MAIKO.INPUT.PACKET)) (* |;;| - "Returned T, so there's another packet waiting already. Process it.") + "Returned T, so there's another packet waiting already. Process it.") (SETQ PACKET \\MAIKO.INPUT.PACKET) (GO READ-MORE-LOOP))))))))))) @@ -471,7 +443,7 @@ -(* \; +(* |;;| "MAIKO Log & Console message handling. Interrupt-driven message printing, instead of polled printing." ) @@ -527,14 +499,13 @@ (RPAQ \\MAIKO.IO-INTERRUPT-FLAGS (\\CREATECELL \\FIXP)) (RPAQQ \\MAIKO.IO-INTERRUPT-VECTOR NIL) -(PUTPROPS MAIKOETHER COPYRIGHT ("Venue & Xerox Corporation" 1988 1989 1990 1991 2021)) (DECLARE\: DONTCOPY - (FILEMAP (NIL (2591 22216 (\\10MB.RESTART.ETHER 2601 . 2761) (\\10MB.STARTDRIVER 2763 . 4522) ( -\\10MB.TURNOFFETHER 4524 . 4684) (\\10MB.TURNONETHER 4686 . 7056) (\\10MBSENDPACKET 7058 . 9429) ( -\\10MBWATCHER 9431 . 10770) (\\MAIKO.10MBSENDPACKET 10772 . 13150) (\\MAIKO.10MBWATCHER 13152 . 14497) - (\\MAIKO.ETHERRESUME 14499 . 14658) (\\MAIKO.ETHERSUSPEND 14660 . 14821) (\\MAIKO.INPUT.INTERRUPT -14823 . 17085) (\\NS.SETTIME 17087 . 17367) (\\PUP.SETTIME 17369 . 17650) (\\MAIKO.10MBSTARTDRIVER -17652 . 19307) (\\MAIKO.10MBTURNONETHER 19309 . 21684) (\\MAIKO.10MB.RESTART.ETHER 21686 . 22039) ( -\\MAIKO.CHECKSUM 22041 . 22214)) (23271 26336 (\\MAIKO.ETHER-INTERRUPT 23281 . 26334)) (26458 27821 ( -\\MAIKO.CONSOLE-LOG-PRINT 26468 . 27819)) (27867 28547 (\\MAIKO.IO-INTERRUPT 27877 . 28545))))) + (FILEMAP (NIL (2301 20787 (\\10MB.RESTART.ETHER 2311 . 2475) (\\10MB.STARTDRIVER 2477 . 3863) ( +\\10MB.TURNOFFETHER 3865 . 4029) (\\10MB.TURNONETHER 4031 . 6121) (\\10MBSENDPACKET 6123 . 8481) ( +\\10MBWATCHER 8483 . 9926) (\\MAIKO.10MBSENDPACKET 9928 . 12296) (\\MAIKO.10MBWATCHER 12298 . 13747) ( +\\MAIKO.ETHERRESUME 13749 . 13912) (\\MAIKO.ETHERSUSPEND 13914 . 14079) (\\MAIKO.INPUT.INTERRUPT 14081 + . 15925) (\\NS.SETTIME 15927 . 16211) (\\PUP.SETTIME 16213 . 16498) (\\MAIKO.10MBSTARTDRIVER 16500 . +18150) (\\MAIKO.10MBTURNONETHER 18152 . 20247) (\\MAIKO.10MB.RESTART.ETHER 20249 . 20606) ( +\\MAIKO.CHECKSUM 20608 . 20785)) (21751 24528 (\\MAIKO.ETHER-INTERRUPT 21761 . 24526)) (24652 26015 ( +\\MAIKO.CONSOLE-LOG-PRINT 24662 . 26013)) (26061 26741 (\\MAIKO.IO-INTERRUPT 26071 . 26739))))) STOP diff --git a/sources/MAIKOETHER.LCOM b/sources/MAIKOETHER.LCOM index 471181fa8da480664095c8c052ce4ec93be21eae..3b214126d1c65ef40940c22627e7a68f365ab82e 100644 GIT binary patch delta 1718 zcmb_cU2NM_6po!HO}(W}x~)mtwcLb`ITA_j{5zehI`K{8#`&r3Y-bu`L z=R4oImkX~=yfKxJa}lXIABl0XB;tiECuEbE5Mo2~t=09VmF5C!t)UQNj29)Xv~{Mw z+1%J1o7-5rcyV)VeWSJ9oWHaQzf&i-(?%GD?jy@&lYBN23n639BwIPXU?5{@%|J}3 zP*)UmFE|>F65PVGmzo6h5SnB<6lU0htl+$gMIB2IfP`T)^LT=g{7a(4X#>Sl89_iy z7E7`o$xS0;ZE?;(*?du~OkgddSK%GXm(SKzd{(a3wTMI_J`j);$7K_#|DX(&f^PaH z>QmUE1Mr6@44=_Gz}}pAr))7sOn-)A;4q?P1URBkpzz# z4W29K&WU=yh*iYLQ>Y^45FbmxEw3-g3x|N3m@i>n!IcTUhZ1i7_+B5) zBe>AJ3qN<wRCT#H*gJ#X80nZMS@V`F1!B#F}&Yb-`Oc<7xdu>sbj=DrF) z^|`agO+L#CkS_uKC`H2uGf$HKK>A5##4WSE?;kpC8Ldoi1aSgK?lIh*tz5lOz-k!2@$V3x*+7B> zLa8)x?o;G{KM?Q{hBy*APRJnBv~s0TC8ZSL$3P$#q>J{e9g7}nnwllG*?yT>zTNgs zI_$fXmhs+`Y0694mrLEpiuC!tZ*6SSG+JQ>tJNAwGM)lu@FZycv0*b~mRy{=KAo?Y zYpPt)k)<*b1*>FB3p4Fk`(+w(gP0*#-C0r95X-=o!KXnQ^1yFhN1$uyqYh(q)PT>2 Q-n16&XCABBJIuEI1*J2>^8f$< delta 2213 zcmb_e&2JM|5chf$2o6phoY-+f(upZ_ofhL=$Dg6#wY`ZqUVq?SlNhWDlNjOF*`2^4HuZ4g7*mvBVnH}>k#Tan9Ox&0(C{ipZiJBA#=YP22 zeKu?mf`O2*feNo_EY=VkHWup@y))^8H0gc3L4rB`1`Cz zW>hq{>WzqhpC7$G+HfF;0#7>~QNxlBw_RS1%^JNg(8 zxxkL*{62_Filj-v`#m6zX;My_k~Pe+57dIHNhw@H(4>3lr%+3k824CUAEedL7pDz!wZ_aZaJOJYi>6|#(w0Q`;UUJ=P>uR*H2=!22%1c@yEA48K z@2xH}+WKktaSYp*$nB0UrWv`!swG00EgIt|_q**z50FQL-NVR|kpMJ`MY+0IuAeAP zm$RjlT21$ycV`#3^u{NQ{T)Z{ZwWBr3 zuEt2P-8VFgFGM{}6$^7yNimN|%DDVx(s*?Fx`E>Z0=d7n*XRwBLA#CdlFqiofZzx8 zZ(PCz=(poW%ZV{LJr1D|`Mc9W>f8C1hi&gOFDk(C(2N9lARUjoAPY2VavGDE%V+g$ zxxjF@mE1Hb`wWTszI!75-|9Q{^LJ~BEtD%1d~>zw0V}hs3G$(BpvBr{X(5I7J?0w| zNkpGCE`K2#3*?>lCB{rl+ewR=bD7Dt?T!IN^K1~L)BK~|%!MdhQsUHOvY?kLYQJo9 zp)qI2aGNS*1zaSQpT;|J8b)cNfs)hHIzs#}#b${`5H zgCq!?D1LyTXTrB7|1RuF!+10~g z5|9^K<#hQ-ty+#@vun7>1Itk0|F?R!YluVt1V|OqYC4~a(sEiaJoMvnlJVmA4CJCw z?AJY*nVpHQvX!|Rb2FW~TqA=!g5-e1!BWlT71sU%6+Ond7h_C z!ZIGgV|FAZ9<~Pq`a{28PaifoH!XQLS!%h0Ik;_o9_2&pKnl_O084m-fJjFr>+vl|@1NVL+#E`hvDqdV z#=KIpw=hir5r>_;)%y!#dd0ENsyF&(9BAq3w7u#WWDx`T-SIA-I@>pb0SAA8h^F1R z9~$g#*SU#Dz!1OO?}+ehf?aKywJ-(d7~(Pfab)h%O3y?qdu2kW>L;?1xiOc-3N=nG z|775N0%l0`Njp)iL#k9cReNCp zvzm&+bgfz~PcK$#)loRNfP?$^d2-OvI}~=}kmkmfOjK0#QASI3BiHC7u?{9oCY&Ss zTaG*!%62@}{7vMb^R5{uAsv0d4MTC1Tzl@au{gRCfGm5I!!C~_DEs7;gjgn9$jRdg x4ZkH0m#gQ>um`5f_1fzYtJTlc>LrTQiLE#oq#}eO Date: Sun, 25 Jan 2026 15:45:29 -0800 Subject: [PATCH 5/9] RESTART.ETHER at end of loadup-lisp to ensure network structures are set up. --- internal/loadups/LOADUP-LISP | 16 ++++++++++------ internal/loadups/LOADUP-LISP.LCOM | Bin 3704 -> 3725 bytes 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/internal/loadups/LOADUP-LISP b/internal/loadups/LOADUP-LISP index 23875a66..1ccf4b2f 100644 --- a/internal/loadups/LOADUP-LISP +++ b/internal/loadups/LOADUP-LISP @@ -1,13 +1,14 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10) -(FILECREATED " 5-Nov-2025 09:04:36" |{DSK}larry>il>MEDLEY>INTERNAL>loadups>LOADUP-LISP.;2| 7333 +(FILECREATED "25-Jan-2026 15:20:40"  +|{DSK}briggs>Projects>medley>internal>loadups>LOADUP-LISP.;10| 7587 - :EDIT-BY "lmm" + :EDIT-BY |nhb| :CHANGES-TO (FNS LOADUP-LISP) - :PREVIOUS-DATE "16-Oct-2025 16:55:27" -|{DSK}larry>il>MEDLEY>INTERNAL>loadups>LOADUP-LISP.;1|) + :PREVIOUS-DATE "12-Jan-2026 17:02:19" +|{DSK}briggs>Projects>medley>internal>loadups>LOADUP-LISP.;9|) (PRETTYCOMPRINT LOADUP-LISPCOMS) @@ -20,7 +21,9 @@ (DEFINEQ (LOADUP-LISP - (LAMBDA (DRIBBLEFILE) (* \; "Edited 5-Nov-2025 09:01 by lmm") + (LAMBDA (DRIBBLEFILE) (* \; "Edited 25-Jan-2026 15:20 by nhb") + (* \; "Edited 12-Jan-2026 17:02 by nhb") + (* \; "Edited 5-Nov-2025 09:01 by lmm") (* \; "Edited 16-Oct-2025 16:55 by rmk") (* \; "Edited 18-Aug-2025 12:08 by rmk") (* \; "Edited 15-Jun-2025 14:39 by rmk") @@ -137,6 +140,7 @@ (LOADUP '(PUP 10MBDRIVER LEAF LLETHER DPUPFTP LOCALFILE DSKDISPLAY COURIER LLNS TRSERVER SPP NSPRINT AUTHENTICATION BSP CLEARINGHOUSE NSFILING MAIKOETHER)) + (RESTART.ETHER) (DRIBBLE) (SETQ MAKESYSNAME :MEDLEY))) ) @@ -149,5 +153,5 @@ (GLOBALVARS MAKESYSFILENAME MEDLEY-INIT-VARS MEDLEYDIR SYSTEMINITVARS USERRECLST) ) (DECLARE\: DONTCOPY - (FILEMAP (NIL (675 7127 (LOADUP-LISP 685 . 7125))))) + (FILEMAP (NIL (691 7381 (LOADUP-LISP 701 . 7379))))) STOP diff --git a/internal/loadups/LOADUP-LISP.LCOM b/internal/loadups/LOADUP-LISP.LCOM index 3a1d86082e364029f635560cfc3fcdf3f8043af9..d02e4dda3c591b0caebacde248149b2d5f5500a7 100644 GIT binary patch delta 454 zcmew%(FFsc)TAVqqyp7oF~-zXNs~*%&C|!#Imp#9#MK3;2*t5r*P0lBEUR`2 z_O7)FElw>ewj;vjDh4$Q=B5_r3RbQzo*}wUkqR|=8A&w?R?Z%de(tWpx*`4wT$495 zDmxh=dCuI*z{twbl63pT7%eAjFoiMh-CWPKfl;4>0SMATggA&0V9+ozHd1g2@^o_Y zaaAxeGFJ$44GwV(3ej^7@o){=?9Q^CQOLwd!Pn8-H8?WZ&(RmC%Gi9f09ytJ0Mpoh A%m4rY delta 433 zcmeB`{UI|UP(;C0*Dt?J*T}%gRKdW~%D}|R*lc2|f<#VYQBkE`W{#b&tBa3oq@AZ< zh-;9aqtE1gMzMOM8chWy1rvl$Lo+KwBP(MQC54)#qSWO4+=9%U)RY zVyhYjAAd)e&;VT@&)@)sn#{Z!1trITfM5k=WAya&fF`6QmVoqPvB1P!Ns~*%&E3<- z)j7!3F~rpcs0xb*fQD4N1bf%ogche372DzSi;7W=g1ND=F_(gstBYrdu2ZCfQciBJ zl7f}9hohgnYp`yJzry5IjLOz#y8g)}kbnYu*VNR?$Xp5NK_V>@pRC3d#<*j1Ez<@@ ziF5`a5C;(g3>qdz<_a!Bo=#3auA5_6wlfMDn=AM_db Date: Thu, 26 Mar 2026 18:42:51 -0700 Subject: [PATCH 6/9] Removes OCTALSTRING from PUP - now in APRINT --- sources/PUP | 63 ++++++++++++++++++++++------------------------- sources/PUP.LCOM | Bin 34941 -> 34565 bytes 2 files changed, 29 insertions(+), 34 deletions(-) diff --git a/sources/PUP b/sources/PUP index 6967ba0b..09aed83b 100644 --- a/sources/PUP +++ b/sources/PUP @@ -1,12 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 8) -(FILECREATED "22-Dec-2025 11:58:55" {DSK}briggs>projects>medley>sources>PUP.;4 334515Q +(FILECREATED " 3-Feb-2026 18:40:52" {DSK}briggs>Projects>medley>sources>PUP.;6 334127Q :EDIT-BY nhb - :CHANGES-TO (FNS \FIND.LOCALPUPHOSTNUMBER) + :CHANGES-TO (VARS PUPCOMS) - :PREVIOUS-DATE "20-Dec-2025 13:51:34" {DSK}briggs>projects>medley>sources>PUP.;3) + :PREVIOUS-DATE "22-Dec-2025 11:58:55" {DSK}briggs>Projects>medley>sources>PUP.;5) (PRETTYCOMPRINT PUPCOMS) @@ -33,7 +33,7 @@ (FNS SETUPPUP SWAPPUPPORTS GETPUP SENDPUP EXCHANGEPUPS DISCARDPUPS GETPUPWORD \PUPINIT) (FNS ETHERHOSTNAME ETHERHOSTNUMBER ETHERPORT BESTPUPADDRESS NETDAYTIME0 \PUP.SETTIME \SETNEWTIME0 \NET.SETTIME NETDATE \LOOKUPPORT \PARSE.PORTCONSTANT \FIXLOCALNET) - (FNS PORTSTRING OCTALSTRING) + (FNS PORTSTRING) (INITVARS (\ETHERPORTS (HASHARRAY 24Q)) (\ETHERTIMEOUT 3720Q) (\MAXETHERTRIES 4) @@ -1080,11 +1080,6 @@ (COND (SOCKET (OCTALSTRING SOCKET)) (T ""]) - -(OCTALSTRING - [LAMBDA (N) (* bvm%: "21-JUL-81 12:16") - (GLOBALRESOURCE (\NUMSTR \NUMSTR1) - (CONCAT (\CONVERTNUMBER N 10Q NIL NIL \NUMSTR \NUMSTR1]) ) (RPAQ? \ETHERPORTS (HASHARRAY 24Q)) @@ -2468,29 +2463,29 @@ (PUTPROPS PUP FILETYPE CL:COMPILE-FILE) (DECLARE%: DONTCOPY - (FILEMAP (NIL (25117Q 61405Q (\STARTPUP 25131Q . 26003Q) (ASSURE.PUP.READY 26005Q . 34100Q) ( -\FIND.LOCALPUPHOSTNUMBER 34102Q . 36611Q) (\PROMPT.FOR.PUP.NUMBER 36613Q . 40633Q) (\HANDLE.RAW.PUP -40635Q . 56735Q) (\FORWARD.PUP 56737Q . 57657Q) (\SETPUPCHECKSUM 57661Q . 61403Q)) (66151Q 73243Q ( -\PUPERROR 66163Q . 73241Q)) (73302Q 112436Q (SETUPPUP 73314Q . 76502Q) (SWAPPUPPORTS 76504Q . 77321Q) -(GETPUP 77323Q . 102235Q) (SENDPUP 102237Q . 106061Q) (EXCHANGEPUPS 106063Q . 110121Q) (DISCARDPUPS -110123Q . 110727Q) (GETPUPWORD 110731Q . 111250Q) (\PUPINIT 111252Q . 112434Q)) (112437Q 154017Q ( -ETHERHOSTNAME 112451Q . 121577Q) (ETHERHOSTNUMBER 121601Q . 122214Q) (ETHERPORT 122216Q . 125735Q) ( -BESTPUPADDRESS 125737Q . 135777Q) (NETDAYTIME0 136001Q . 136332Q) (\PUP.SETTIME 136334Q . 136761Q) ( -\SETNEWTIME0 136763Q . 140043Q) (\NET.SETTIME 140045Q . 141134Q) (NETDATE 141136Q . 141473Q) ( -\LOOKUPPORT 141475Q . 147334Q) (\PARSE.PORTCONSTANT 147336Q . 152446Q) (\FIXLOCALNET 152450Q . 154015Q -)) (154020Q 155355Q (PORTSTRING 154032Q . 155021Q) (OCTALSTRING 155023Q . 155353Q)) (155747Q 165060Q ( -CLEARPUP 155761Q . 160474Q) (PUTPUPWORD 160476Q . 161023Q) (GETPUPBYTE 161025Q . 161350Q) (PUTPUPBYTE -161352Q . 161703Q) (GETPUPSTRING 161705Q . 163336Q) (GETPUPSTREAM 163340Q . 164267Q) (PUTPUPSTRING -164271Q . 165056Q)) (166651Q 174470Q (READPLIST 166663Q . 174466Q)) (174651Q 200051Q ( -\CANONICAL.HOSTNAME 174663Q . 175730Q) (\CANONICALIZE.PUP.HOSTNAME 175732Q . 200047Q)) (202406Q -235613Q (\PUPGATELISTENER 202420Q . 206251Q) (\HANDLE.PUP.ROUTING.INFO 206253Q . 220612Q) (\ROUTE.PUP -220614Q . 224447Q) (\LOCATE.PUPNET 224451Q . 231206Q) (SORT.PUPHOSTS.BY.DISTANCE 231210Q . 233464Q) ( -\PUPNET.CLOSERP 233466Q . 234647Q) (PUPNET.DISTANCE 234651Q . 235611Q)) (247006Q 256760Q ( -OPENPUPSOCKET 247020Q . 253501Q) (CLOSEPUPSOCKET 253503Q . 255162Q) (PUPSOCKETNUMBER 255164Q . 255415Q -) (PUPSOCKETFROMNUMBER 255417Q . 256056Q) (PUPSOCKETEVENT 256060Q . 256337Q) (\FLUSHPUPSOCQUEUE -256341Q . 256756Q)) (256761Q 257526Q (\GETMISCSOCKET 256773Q . 257524Q)) (277224Q 312014Q ( -PUP.ECHOSERVER 277236Q . 302043Q) (PUP.ECHOUSER 302045Q . 312012Q)) (312045Q 321176Q (\PEEKPUP 312057Q - . 317210Q) (\MAYBEPEEKPUP 317212Q . 321174Q)) (321577Q 333034Q (PRINTPUP 321611Q . 325761Q) ( -PRINTPUPROUTE 325763Q . 327730Q) (PRINTPUPDATA 327732Q . 330402Q) (PRINTERRORPUP 330404Q . 331104Q) ( -PUPTRACE 331106Q . 331417Q) (PRINTCONSTANT 331421Q . 333032Q))))) + (FILEMAP (NIL (25063Q 61351Q (\STARTPUP 25075Q . 25747Q) (ASSURE.PUP.READY 25751Q . 34044Q) ( +\FIND.LOCALPUPHOSTNUMBER 34046Q . 36555Q) (\PROMPT.FOR.PUP.NUMBER 36557Q . 40577Q) (\HANDLE.RAW.PUP +40601Q . 56701Q) (\FORWARD.PUP 56703Q . 57623Q) (\SETPUPCHECKSUM 57625Q . 61347Q)) (66115Q 73207Q ( +\PUPERROR 66127Q . 73205Q)) (73246Q 112402Q (SETUPPUP 73260Q . 76446Q) (SWAPPUPPORTS 76450Q . 77265Q) +(GETPUP 77267Q . 102201Q) (SENDPUP 102203Q . 106025Q) (EXCHANGEPUPS 106027Q . 110065Q) (DISCARDPUPS +110067Q . 110673Q) (GETPUPWORD 110675Q . 111214Q) (\PUPINIT 111216Q . 112400Q)) (112403Q 153763Q ( +ETHERHOSTNAME 112415Q . 121543Q) (ETHERHOSTNUMBER 121545Q . 122160Q) (ETHERPORT 122162Q . 125701Q) ( +BESTPUPADDRESS 125703Q . 135743Q) (NETDAYTIME0 135745Q . 136276Q) (\PUP.SETTIME 136300Q . 136725Q) ( +\SETNEWTIME0 136727Q . 140007Q) (\NET.SETTIME 140011Q . 141100Q) (NETDATE 141102Q . 141437Q) ( +\LOOKUPPORT 141441Q . 147300Q) (\PARSE.PORTCONSTANT 147302Q . 152412Q) (\FIXLOCALNET 152414Q . 153761Q +)) (153764Q 154767Q (PORTSTRING 153776Q . 154765Q)) (155361Q 164472Q (CLEARPUP 155373Q . 160106Q) ( +PUTPUPWORD 160110Q . 160435Q) (GETPUPBYTE 160437Q . 160762Q) (PUTPUPBYTE 160764Q . 161315Q) ( +GETPUPSTRING 161317Q . 162750Q) (GETPUPSTREAM 162752Q . 163701Q) (PUTPUPSTRING 163703Q . 164470Q)) ( +166263Q 174102Q (READPLIST 166275Q . 174100Q)) (174263Q 177463Q (\CANONICAL.HOSTNAME 174275Q . 175342Q +) (\CANONICALIZE.PUP.HOSTNAME 175344Q . 177461Q)) (202020Q 235225Q (\PUPGATELISTENER 202032Q . 205663Q +) (\HANDLE.PUP.ROUTING.INFO 205665Q . 220224Q) (\ROUTE.PUP 220226Q . 224061Q) (\LOCATE.PUPNET 224063Q + . 230620Q) (SORT.PUPHOSTS.BY.DISTANCE 230622Q . 233076Q) (\PUPNET.CLOSERP 233100Q . 234261Q) ( +PUPNET.DISTANCE 234263Q . 235223Q)) (246420Q 256372Q (OPENPUPSOCKET 246432Q . 253113Q) (CLOSEPUPSOCKET + 253115Q . 254574Q) (PUPSOCKETNUMBER 254576Q . 255027Q) (PUPSOCKETFROMNUMBER 255031Q . 255470Q) ( +PUPSOCKETEVENT 255472Q . 255751Q) (\FLUSHPUPSOCQUEUE 255753Q . 256370Q)) (256373Q 257140Q ( +\GETMISCSOCKET 256405Q . 257136Q)) (276636Q 311426Q (PUP.ECHOSERVER 276650Q . 301455Q) (PUP.ECHOUSER +301457Q . 311424Q)) (311457Q 320610Q (\PEEKPUP 311471Q . 316622Q) (\MAYBEPEEKPUP 316624Q . 320606Q)) ( +321211Q 332446Q (PRINTPUP 321223Q . 325373Q) (PRINTPUPROUTE 325375Q . 327342Q) (PRINTPUPDATA 327344Q + . 330014Q) (PRINTERRORPUP 330016Q . 330516Q) (PUPTRACE 330520Q . 331031Q) (PRINTCONSTANT 331033Q . +332444Q))))) STOP diff --git a/sources/PUP.LCOM b/sources/PUP.LCOM index 4bb0cc79982d8eca01394bcbe6a85044d59da6ce..87a0bd8ef50c032b1ec299d48c8865bb4e5e08db 100644 GIT binary patch delta 335 zcmZ{fJx_yB7)C=kneAZW@a85e441%#OX-biL_U;=LisX|Qb?_-U`pd+jFYRO=}+Ou zIhknVqDJ@gu{BHerUV@LWc&Ki2VAiR5apJ@{2|&oqD26Z%t>8QsfrXKi zc|jUu`%?*s5Nwx|&2b8f!l=P0MZo`K`ME@ZDv-zw-go C8Cehj delta 679 zcmZ{g&ubGw6vuaSD9vI)v0{ZD9t+jo!-k!m*~AXDcC$N47RO!pSD=tXZ4#Q6q?V>P zDfQx2QgZMl_$LUVXU~HFgGc`g!P%xZG3XrTy_xs@y!Yk3|4{ffDvX+|mSuR|wqco; z4G2+tlbYo6XhS}^9If|=u7GNxzZ9fG5mMo-{bq2|f6{@&V^C`u=P<7;l}ajfUY~V4 z|KhQ&>WWtLIdfy?q|6(ClGj$>ddZ9Pt!&sm9d7TR9v&PFw{sIZ0gQ=_>U&XBHhgo8HqPLiD&iTjGMidhjl>dyA@#Lqx zV_$@B>hL6u{h$uid#Y$0G!p_{2PrB@lDsF0bG6xjSIm>W{JJ8`dAL`Qclyh{PQzbW z%HP+5#=|`Q>QBSn-ZXys_9yu+X?8gRHw;`S1sh#N&=QX(i_;)`S!FR`bX(4M;cy Date: Thu, 2 Apr 2026 09:20:02 -0700 Subject: [PATCH 7/9] Prevents \LOOKUPPORT waiting for an ethernet timeout if PUP has already been detected as unavailable --- sources/PUP | 118 +++++++++++++++++++++++------------------------ sources/PUP.LCOM | Bin 34565 -> 34629 bytes 2 files changed, 58 insertions(+), 60 deletions(-) diff --git a/sources/PUP b/sources/PUP index 09aed83b..9f657fb5 100644 --- a/sources/PUP +++ b/sources/PUP @@ -1,12 +1,12 @@ -(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 8) +(DEFINE-FILE-INFO :PACKAGE "INTERLISP" :READTABLE "INTERLISP" :BASE 8) -(FILECREATED " 3-Feb-2026 18:40:52" {DSK}briggs>Projects>medley>sources>PUP.;6 334127Q +(FILECREATED " 2-Apr-2026 09:13:04" {DSK}briggs>projects>medley>sources>PUP.;8 333567Q - :EDIT-BY nhb + :EDIT-BY "briggs" - :CHANGES-TO (VARS PUPCOMS) + :CHANGES-TO (FNS \LOOKUPPORT) - :PREVIOUS-DATE "22-Dec-2025 11:58:55" {DSK}briggs>Projects>medley>sources>PUP.;5) + :PREVIOUS-DATE " 3-Feb-2026 18:40:52" {DSK}briggs>projects>medley>sources>PUP.;7) (PRETTYCOMPRINT PUPCOMS) @@ -969,11 +969,13 @@ (\DAYTIME0 (create FIXP]) (\LOOKUPPORT - [LAMBDA (NAME) (* ; "Edited 1-Apr-87 12:37 by bvm:") + [LAMBDA (NAME) (* ; "Edited 2-Apr-2026 09:08 by briggs") + (* ; "Edited 1-Apr-87 12:37 by bvm:") (* ;;; "Looks up the ether address of NAME, returning a list of dotted pairs (nethost . socket), or NIL on failure") - (AND NAME + (AND NAME (EQ (OR \PUP.READY (ASSURE.PUP.READY)) + T) (PROG ((SOC (\GETMISCSOCKET)) (OPUP (ALLOCATE.PUP)) RESULT BUF LEN IPUP) @@ -981,35 +983,31 @@ (PUTPUPSTRING OPUP NAME) [to \MAXETHERTRIES when (SETQ IPUP (EXCHANGEPUPS SOC OPUP NIL T)) do (SELECTC (fetch PUPTYPE of IPUP) - (\PT.NAMERESPONSE - [COND - ((> (SETQ LEN (IQUOTIENT (FOLDLO (- (fetch PUPLENGTH - of IPUP) - \PUPOVLEN) - BYTESPERWORD) - \PORTIDLEN)) - 1) - (COND - (PUPTRACEFLG (printout PUPTRACEFILE - "Multiple response received for " NAME T - ] - [RETURN (SETQ RESULT (from 1 to LEN - as (PTR _ (fetch PUPCONTENTS - of IPUP)) - by (\ADDBASE PTR \PORTIDLEN) - collect (CONS (fetch (PORT NETHOST) - of PTR) - (fetch (PORT SOCKET) - of PTR]) - (\PT.NAME/ADDRERROR + (\PT.NAMERESPONSE + [COND + ((> (SETQ LEN (IQUOTIENT (FOLDLO (- (fetch PUPLENGTH of IPUP) + \PUPOVLEN) + BYTESPERWORD) + \PORTIDLEN)) + 1) (COND - (PUPTRACEFLG (printout PUPTRACEFILE "Name lookup error for " - NAME ": " (GETPUPSTRING IPUP) - T))) - (RETURN)) - NIL) finally (COND - (PUPTRACEFLG (printout PUPTRACEFILE - "Name lookup timed out" T] + (PUPTRACEFLG (printout PUPTRACEFILE + "Multiple response received for " NAME T] + [RETURN (SETQ RESULT (from 1 to LEN + as (PTR _ (fetch PUPCONTENTS of IPUP)) + by (\ADDBASE PTR \PORTIDLEN) + collect (CONS (fetch (PORT NETHOST) + of PTR) + (fetch (PORT SOCKET) of PTR]) + (\PT.NAME/ADDRERROR + (COND + (PUPTRACEFLG (printout PUPTRACEFILE "Name lookup error for " NAME + ": " (GETPUPSTRING IPUP) + T))) + (RETURN)) + NIL) finally (COND + (PUPTRACEFLG (printout PUPTRACEFILE "Name lookup timed out" + T] (AND IPUP (RELEASE.PUP IPUP)) (RELEASE.PUP OPUP) (RETURN RESULT]) @@ -2463,29 +2461,29 @@ (PUTPROPS PUP FILETYPE CL:COMPILE-FILE) (DECLARE%: DONTCOPY - (FILEMAP (NIL (25063Q 61351Q (\STARTPUP 25075Q . 25747Q) (ASSURE.PUP.READY 25751Q . 34044Q) ( -\FIND.LOCALPUPHOSTNUMBER 34046Q . 36555Q) (\PROMPT.FOR.PUP.NUMBER 36557Q . 40577Q) (\HANDLE.RAW.PUP -40601Q . 56701Q) (\FORWARD.PUP 56703Q . 57623Q) (\SETPUPCHECKSUM 57625Q . 61347Q)) (66115Q 73207Q ( -\PUPERROR 66127Q . 73205Q)) (73246Q 112402Q (SETUPPUP 73260Q . 76446Q) (SWAPPUPPORTS 76450Q . 77265Q) -(GETPUP 77267Q . 102201Q) (SENDPUP 102203Q . 106025Q) (EXCHANGEPUPS 106027Q . 110065Q) (DISCARDPUPS -110067Q . 110673Q) (GETPUPWORD 110675Q . 111214Q) (\PUPINIT 111216Q . 112400Q)) (112403Q 153763Q ( -ETHERHOSTNAME 112415Q . 121543Q) (ETHERHOSTNUMBER 121545Q . 122160Q) (ETHERPORT 122162Q . 125701Q) ( -BESTPUPADDRESS 125703Q . 135743Q) (NETDAYTIME0 135745Q . 136276Q) (\PUP.SETTIME 136300Q . 136725Q) ( -\SETNEWTIME0 136727Q . 140007Q) (\NET.SETTIME 140011Q . 141100Q) (NETDATE 141102Q . 141437Q) ( -\LOOKUPPORT 141441Q . 147300Q) (\PARSE.PORTCONSTANT 147302Q . 152412Q) (\FIXLOCALNET 152414Q . 153761Q -)) (153764Q 154767Q (PORTSTRING 153776Q . 154765Q)) (155361Q 164472Q (CLEARPUP 155373Q . 160106Q) ( -PUTPUPWORD 160110Q . 160435Q) (GETPUPBYTE 160437Q . 160762Q) (PUTPUPBYTE 160764Q . 161315Q) ( -GETPUPSTRING 161317Q . 162750Q) (GETPUPSTREAM 162752Q . 163701Q) (PUTPUPSTRING 163703Q . 164470Q)) ( -166263Q 174102Q (READPLIST 166275Q . 174100Q)) (174263Q 177463Q (\CANONICAL.HOSTNAME 174275Q . 175342Q -) (\CANONICALIZE.PUP.HOSTNAME 175344Q . 177461Q)) (202020Q 235225Q (\PUPGATELISTENER 202032Q . 205663Q -) (\HANDLE.PUP.ROUTING.INFO 205665Q . 220224Q) (\ROUTE.PUP 220226Q . 224061Q) (\LOCATE.PUPNET 224063Q - . 230620Q) (SORT.PUPHOSTS.BY.DISTANCE 230622Q . 233076Q) (\PUPNET.CLOSERP 233100Q . 234261Q) ( -PUPNET.DISTANCE 234263Q . 235223Q)) (246420Q 256372Q (OPENPUPSOCKET 246432Q . 253113Q) (CLOSEPUPSOCKET - 253115Q . 254574Q) (PUPSOCKETNUMBER 254576Q . 255027Q) (PUPSOCKETFROMNUMBER 255031Q . 255470Q) ( -PUPSOCKETEVENT 255472Q . 255751Q) (\FLUSHPUPSOCQUEUE 255753Q . 256370Q)) (256373Q 257140Q ( -\GETMISCSOCKET 256405Q . 257136Q)) (276636Q 311426Q (PUP.ECHOSERVER 276650Q . 301455Q) (PUP.ECHOUSER -301457Q . 311424Q)) (311457Q 320610Q (\PEEKPUP 311471Q . 316622Q) (\MAYBEPEEKPUP 316624Q . 320606Q)) ( -321211Q 332446Q (PRINTPUP 321223Q . 325373Q) (PRINTPUPROUTE 325375Q . 327342Q) (PRINTPUPDATA 327344Q - . 330014Q) (PRINTERRORPUP 330016Q . 330516Q) (PUPTRACE 330520Q . 331031Q) (PRINTCONSTANT 331033Q . -332444Q))))) + (FILEMAP (NIL (25073Q 61361Q (\STARTPUP 25105Q . 25757Q) (ASSURE.PUP.READY 25761Q . 34054Q) ( +\FIND.LOCALPUPHOSTNUMBER 34056Q . 36565Q) (\PROMPT.FOR.PUP.NUMBER 36567Q . 40607Q) (\HANDLE.RAW.PUP +40611Q . 56711Q) (\FORWARD.PUP 56713Q . 57633Q) (\SETPUPCHECKSUM 57635Q . 61357Q)) (66125Q 73217Q ( +\PUPERROR 66137Q . 73215Q)) (73256Q 112412Q (SETUPPUP 73270Q . 76456Q) (SWAPPUPPORTS 76460Q . 77275Q) +(GETPUP 77277Q . 102211Q) (SENDPUP 102213Q . 106035Q) (EXCHANGEPUPS 106037Q . 110075Q) (DISCARDPUPS +110077Q . 110703Q) (GETPUPWORD 110705Q . 111224Q) (\PUPINIT 111226Q . 112410Q)) (112413Q 153423Q ( +ETHERHOSTNAME 112425Q . 121553Q) (ETHERHOSTNUMBER 121555Q . 122170Q) (ETHERPORT 122172Q . 125711Q) ( +BESTPUPADDRESS 125713Q . 135753Q) (NETDAYTIME0 135755Q . 136306Q) (\PUP.SETTIME 136310Q . 136735Q) ( +\SETNEWTIME0 136737Q . 140017Q) (\NET.SETTIME 140021Q . 141110Q) (NETDATE 141112Q . 141447Q) ( +\LOOKUPPORT 141451Q . 146740Q) (\PARSE.PORTCONSTANT 146742Q . 152052Q) (\FIXLOCALNET 152054Q . 153421Q +)) (153424Q 154427Q (PORTSTRING 153436Q . 154425Q)) (155021Q 164132Q (CLEARPUP 155033Q . 157546Q) ( +PUTPUPWORD 157550Q . 160075Q) (GETPUPBYTE 160077Q . 160422Q) (PUTPUPBYTE 160424Q . 160755Q) ( +GETPUPSTRING 160757Q . 162410Q) (GETPUPSTREAM 162412Q . 163341Q) (PUTPUPSTRING 163343Q . 164130Q)) ( +165723Q 173542Q (READPLIST 165735Q . 173540Q)) (173723Q 177123Q (\CANONICAL.HOSTNAME 173735Q . 175002Q +) (\CANONICALIZE.PUP.HOSTNAME 175004Q . 177121Q)) (201460Q 234665Q (\PUPGATELISTENER 201472Q . 205323Q +) (\HANDLE.PUP.ROUTING.INFO 205325Q . 217664Q) (\ROUTE.PUP 217666Q . 223521Q) (\LOCATE.PUPNET 223523Q + . 230260Q) (SORT.PUPHOSTS.BY.DISTANCE 230262Q . 232536Q) (\PUPNET.CLOSERP 232540Q . 233721Q) ( +PUPNET.DISTANCE 233723Q . 234663Q)) (246060Q 256032Q (OPENPUPSOCKET 246072Q . 252553Q) (CLOSEPUPSOCKET + 252555Q . 254234Q) (PUPSOCKETNUMBER 254236Q . 254467Q) (PUPSOCKETFROMNUMBER 254471Q . 255130Q) ( +PUPSOCKETEVENT 255132Q . 255411Q) (\FLUSHPUPSOCQUEUE 255413Q . 256030Q)) (256033Q 256600Q ( +\GETMISCSOCKET 256045Q . 256576Q)) (276276Q 311066Q (PUP.ECHOSERVER 276310Q . 301115Q) (PUP.ECHOUSER +301117Q . 311064Q)) (311117Q 320250Q (\PEEKPUP 311131Q . 316262Q) (\MAYBEPEEKPUP 316264Q . 320246Q)) ( +320651Q 332106Q (PRINTPUP 320663Q . 325033Q) (PRINTPUPROUTE 325035Q . 327002Q) (PRINTPUPDATA 327004Q + . 327454Q) (PRINTERRORPUP 327456Q . 330156Q) (PUPTRACE 330160Q . 330471Q) (PRINTCONSTANT 330473Q . +332104Q))))) STOP diff --git a/sources/PUP.LCOM b/sources/PUP.LCOM index 87a0bd8ef50c032b1ec299d48c8865bb4e5e08db..e806a51ebed6410e1468ce216d244d28d341f347 100644 GIT binary patch delta 1013 zcmZuwU2D@&7;fjqbj%MJlPMd#L}VM7kaKd<&M4EYJ?%oXB+Z9z*o%F%&hEpOwqA)8 z1icZ4T|n?se}QxEC-?&d|AR2R*qt|mzG=2v=0Zac&w1YGdEWP&yxJM~x-&32mE}3Z z;$qG)xoB898#G7H6!bg?!LWSpnug~H5Po<)*10z}LPfpa5UEU4Am7%Ag1^qj&1Ajv zcDy|^Jp=;uGiEeJ)ksQ!)>>`5zBO5f>QfMMfoVcNPm&}7$}6o(`K)?{2-8DTQNE1J zb)RQXk-9NtCXB-KtXFt(H)vKG&DqsPb$z`#8wUeLQPfnr2pZ2CzBsppL1TgdT4r9i z^4t@B8>VuW2PMf7*66H=xyouh05YR7SyQP1LuWZRY8#cc zR&#c{^L`|m-v5#OB|-IKB9XlR<=o4?nbi`n6!EROE(C4SBuPpZSw zPU&FK+Wh|MFuX(FT`q6!9(~;Vv%DPbe0~^yyFMQNCRZ=KiGhh)c!^4FrWV2FCf7YK zIe`PJk~#%YWZ=;{t^q2cMZkqcfTffo?t6f$k;?_L0{zlJa_Q~ zxCfC-2}!+%Fuxo=V%KhAN~8-K-bp5-l3=ZDS757F+k94sN~2M0z+-&zgOt^fu^am> H)^Yy=IzSRp delta 998 zcmZ`%%Wl(95KRgK5f!m0l|X_ry5i9+9Qj^fC&fZ7u6>i3I*wyIZIQZ2AE7OMq)N-G zLXnWzRul_9pkF{*_y87cShM335P}^`nA?Ps2C!slG;`*hGc)(Y-oW#{fr(LDR{fR3>nv$P!FX=Nd_; zMx|#9jYY!l19faLG7P(RIQ8^ib-Ui&9$#p#E-!D7OJkc^&@@h2t^$Uzok*E{n1aof z1u(3l=@mq%L}eJAHiHoSs&AD`VHylS5YtY%8Y(tQ0%1(C>x*)59Vj*QF+ zT%@lr&8)xte$f6|tI5jYgZL|DaqaqWY_j1N(<%@MSD2y5pkdG{?@OqNz;pV613afz z00WN#*RvHUhzNVa2r~uX9Cy+!%JpBC7h*KSPJ6>y|Ct^zlGaUy7ET&jdOAf;Meb*AclAeuV?AqIK+ zdF27-O6IJHiXy-hh!6(@t|1XI@L6*e35YkpQHS+LW9`Wn)SJyl6CUADa8I}>Qi@;k Y8)t#4TI}+x1L;)!{`Tdgk9;@y1?x5mqW}N^ From 784107444496509b9b9bca00bded2a5e6b95875b Mon Sep 17 00:00:00 2001 From: Nick Briggs Date: Sun, 17 May 2026 16:59:40 -0700 Subject: [PATCH 8/9] Globally enables XNS networking Later, the result of (\ETHER-AVAILABLE) controls whether any networking is turned on. --- internal/loadups/LOADUP-LISP | 15 +++++++-------- internal/loadups/LOADUP-LISP.LCOM | Bin 3674 -> 3671 bytes 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/internal/loadups/LOADUP-LISP b/internal/loadups/LOADUP-LISP index 9d7dca17..9497dd39 100644 --- a/internal/loadups/LOADUP-LISP +++ b/internal/loadups/LOADUP-LISP @@ -1,14 +1,12 @@ -(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10) +(DEFINE-FILE-INFO :PACKAGE "INTERLISP" :READTABLE "XCL" :BASE 10) -(FILECREATED "26-Mar-2026 18:38:22"  -|{DSK}briggs>Projects>medley>internal>loadups>LOADUP-LISP.;14| 7604 - - :EDIT-BY "briggs" +(FILECREATED "17-May-2026 12:28:45"  +|{DSK}briggs>projects>medley>internal>loadups>LOADUP-LISP.;16| 7600 :CHANGES-TO (FNS LOADUP-LISP) - :PREVIOUS-DATE "22-Feb-2026 14:15:31" -|{DSK}briggs>Projects>medley>internal>loadups>LOADUP-LISP.;13|) + :PREVIOUS-DATE "26-Mar-2026 18:38:22" +|{DSK}briggs>projects>medley>internal>loadups>LOADUP-LISP.;15|) (PRETTYCOMPRINT LOADUP-LISPCOMS) @@ -138,6 +136,7 @@ (LOADUP '(PUP 10MBDRIVER LEAF LLETHER DPUPFTP LOCALFILE DSKDISPLAY COURIER LLNS TRSERVER SPP NSPRINT AUTHENTICATION BSP CLEARINGHOUSE NSFILING MAIKOETHER)) + (SETQ \\NSFLG T) (RESTART.ETHER) (DRIBBLE) (SETQ MAKESYSNAME :MEDLEY))) @@ -151,5 +150,5 @@ (GLOBALVARS MAKESYSFILENAME MEDLEY-INIT-VARS MEDLEYDIR SYSTEMINITVARS USERRECLST) ) (DECLARE\: DONTCOPY - (FILEMAP (NIL (695 7398 (LOADUP-LISP 705 . 7396))))) + (FILEMAP (NIL (670 7394 (LOADUP-LISP 680 . 7392))))) STOP diff --git a/internal/loadups/LOADUP-LISP.LCOM b/internal/loadups/LOADUP-LISP.LCOM index 2bbfe60e0452616843302c768ecc57ca17b25bae..6bb5db27ca7a7469297992e8396358180f5efc6b 100644 GIT binary patch delta 447 zcmaKoF>As=7=}GtL;{7j6kHrWZfPPUBr%B+I`m8~8jOkLVrjueREl8L!KF0Cp>qfE z2lPh>UHU@`{WZOFawxsw<9KbaYoZ9 zWPJ>7N{OG5R>b3bFXBOqFbamQNRljAj~6oP12!6JZ}hC1y6J#nx@Ob0EetXqFP~Pk z`E&xy1z?c!7oT-sZ?>B=wA#LF8z)ydYag*q*Kk~27u~gh=hu@Q^4TH>ES%uDtZ5pC zd@@>3dFQWZEUf(NSrVd_y}Lz~gOBax&~S7eT(3joHf3s-fE>gOq$nZ&psxxCg)b|m zcVRMMs?Wc_t0DD(BYRgXvP%e{4#Q#0f~c(k`a~!Dx8esecw6#LKimlNSCq)7Ly*2>-zqx6qJ7fz5i{X delta 419 zcmaKo&1%9x6onZPDS`{>qAgf^nN1UDLNbXzgl;Cu#0Fy&CxyDyDk4}d)?Fh$K^Kw- zXx|~rK0;Sr75X%tNEa?j;jTW;Iegr&%6DZexy)p15db<~OYsRv`hT=^|zg=Q!rbU`rcAb^ym*W`X*&+t)-39?1 zhE-L?5RZrJiOBphV;Wfg*E9J*=X;SWGloW8Gr?l6A1U?#@MtxgPM?H_<=oJ)#kdl6 zLGnTl$s4L3lLKed(rcEXC!gqKzlMzDG{*}vpcLiOP3{#X7x}Xi0k`kl*)vVOk+S?d VDii3?Hsb>x(vHBSk(LYI(GT@QYUKa` From 30ecf3fced4327b987b401d6b16927425c6b9981 Mon Sep 17 00:00:00 2001 From: Nick Briggs Date: Mon, 18 May 2026 18:08:50 -0700 Subject: [PATCH 9/9] Reintroduce changes to enable XNS when ethernet is available Necessitated by a merge of the LOADUP-LISP function from the main branch. --- internal/loadups/LOADUP-LISP | 14 +++++++++----- internal/loadups/LOADUP-LISP.LCOM | Bin 3583 -> 3650 bytes 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/internal/loadups/LOADUP-LISP b/internal/loadups/LOADUP-LISP index b681d3ac..b766256d 100644 --- a/internal/loadups/LOADUP-LISP +++ b/internal/loadups/LOADUP-LISP @@ -1,12 +1,14 @@ (DEFINE-FILE-INFO :PACKAGE "INTERLISP" :READTABLE "XCL" :BASE 10) -(FILECREATED "16-Apr-2026 09:06:26" |{WMEDLEY}loadups>LOADUP-LISP.;32| 7864 +(FILECREATED "18-May-2026 17:55:46"  +|{DSK}briggs>projects>medley>internal>loadups>LOADUP-LISP.;20| 8046 - :EDIT-BY |rmk| + :EDIT-BY |nhb| :CHANGES-TO (FNS LOADUP-LISP) - :PREVIOUS-DATE "15-Apr-2026 23:27:22" |{WMEDLEY}loadups>LOADUP-LISP.;31|) + :PREVIOUS-DATE "16-Apr-2026 09:06:26" +|{DSK}briggs>projects>medley>internal>loadups>LOADUP-LISP.;19|) (PRETTYCOMPRINT LOADUP-LISPCOMS) @@ -19,7 +21,8 @@ (DEFINEQ (LOADUP-LISP - (LAMBDA (DRIBBLEFILE) (* \; "Edited 16-Apr-2026 09:06 by rmk") + (LAMBDA (DRIBBLEFILE) (* \; "Edited 18-May-2026 17:55 by nhb") + (* \; "Edited 16-Apr-2026 09:06 by rmk") (* \; "Edited 5-Apr-2026 21:35 by rmk") (* \; "Edited 26-Mar-2026 18:38 by briggs") (* \; "Edited 22-Feb-2026 14:15 by rmk") @@ -138,6 +141,7 @@ (LOADUP '(PUP 10MBDRIVER LEAF LLETHER DPUPFTP LOCALFILE DSKDISPLAY COURIER LLNS TRSERVER SPP NSPRINT AUTHENTICATION BSP CLEARINGHOUSE NSFILING MAIKOETHER)) + (SETQ \\NSFLG T) (RESTART.ETHER) (DRIBBLE) (SETQ MAKESYSNAME :MEDLEY))) @@ -151,5 +155,5 @@ (GLOBALVARS MAKESYSFILENAME MEDLEY-INIT-VARS MEDLEYDIR SYSTEMINITVARS USERRECLST) ) (DECLARE\: DONTCOPY - (FILEMAP (NIL (640 7658 (LOADUP-LISP 650 . 7656))))) + (FILEMAP (NIL (692 7840 (LOADUP-LISP 702 . 7838))))) STOP diff --git a/internal/loadups/LOADUP-LISP.LCOM b/internal/loadups/LOADUP-LISP.LCOM index e13f8ab08fede6eafd775b0130c6b41722ce7b51..0f622ebfb3a4fe3962980e5e56fd028bf41e583e 100644 GIT binary patch delta 437 zcmew_eMn|Pke7w7Z(^mck%5t!f}y#UsfCq^p^}1zQgVK7L1s>Bib8&#f|3GPO|?s~ zcdbomacWVqT~bkIdU~;4K~a8IYH~@jU2bYhPHLsyWFJO3OCy6CO$8-Gb0kxZtc(q; zjEz91lz@!QQBSE+sL9N$QBZOV_3;5(3sOAsqi`aIJ`*cb6D3V94L468SLYyC#}HQ+ zpy6mvHnlP_Bf*KPKqo3#7?_wTSh>1*hUhv)D%9j_J3@s;rW(*cma8oc=h>7tFcJp!9RAAi5$h_HyX%?eqW-=QG0}z0TbP!7% zL3x-xCD7RIr+FMm>8OF=3!aJC}eD);Opq^8XOty=jaO*H!|IPgw>h@0DS9t AssI20 delta 401 zcmX>k^Iv*Gkb#-5V?mLwk%5t!f`O%#fti(&nUaErQgVK7L1s>Bib8&#f|5c_b-1sq zi;rt$t}=K?03Q%$DgXcg