Subject:Fugue.2ReleaseofInterlisp-DTo:LispUsers^.paFrom:LispSupport.paReply-to:LispSupport.paThismessageannouncestheavailabilityoftheFugue.2releaseofInterlisp-D--thesecondofficialreleaseofFugue(apreliminaryversionwasreleasedonJune30,1983).SignificantchangeshavetakenplacesincesinceJune30;thisnoteliststhosechanges,togetherwithasummaryoftheimportantchangesfromtheoriginalFuguerelease.Synopsisofchangesfollows;first10itemsarethenewerthingssincethefirstFuguerelease.Eachnumbereditemismorefullydescribedlaterinthismessage.[1]Multipleprocessarchitectureextended.Affects"primary"I/O,(TTYDISPLAYSTREAM),Window"switching"betweenprocesses;newHELPinterrupt.ItisimportantforALLUSERStoreadthedocumentationrelatingtothis.[2]XeroxNetworkSystemsprotocolsforfilingsupported,inadditiontoprinting[3]Dandelion'sfloppydiskdrive--Interlispcanreadfromit[4]TeleRaid:aremotedebuggingaidinlieuofRaid.[5]TimeoutsforSAVEVM,RECLAIMinbackgroundnownoticemouseaction.[6]EDITEMBEDTOKENisnow"&",affectsbothDEDITandEDITF.[Formerly,itwas"*"forTeletype-styleeditor,andforDEDIT.][7]PROMPT#FLGnowinitializedtoT:historyeventnumbersareprinted.[8]Miscellaneousnewvariables:NETWORKOSTYPES,MAX.SMALLP,MIN.SMALLP,MAX.FIXP,MIN.FIXP[9]RESTART.ETHER--functiontore-initializeetherdrivers.[10]NewcapabilitiesforRS232users:Functionsforcontrolofmodemlines,RS232READSTRINGfor"fast"inputAsynchronousinputbufferingatslowspeeds"Roll"modeforRS232CHATwindow,a{RS232}deviceinterface[11]Fuguerunscompatiblyonallthreemachinesofthe1100family:The1100(Dolphin),the1108(Dandelion)andthe1132(Dorado)Anoperators'guidefortheDandelionisavailable[12]WindowSystemchangesandadditions:Incompatiblechange--(CURRENTDISPLAYSTREAM)removedNewfunctions--OPENWP,OPENWINDOWS,CREATEREGION,BITMAPWIDTH,BITMAPHEIGHT,BITSPERPIXEL,PRESSBITMAP,FILLCIRCLE,DEFAULTFONT[13]DEDITisinstandardloadup[14]TTYINinstalledasdefaultlinebuffereditor[15]AllAltodiskpartitionsof1100s(and1132s)arenowaccessiblefromLisp[16]PupFtpprotocolnowsupported;DIRECTORYworksonremotefileserversLeafprotocolre-implementedwithmoreflexibility[17]Incompatiblechangesinlow-levelEthernetcode:PUPrecorddeclarations,GETPUPetc.[18]System-levelLispUserspackagesnowinstandardloadupDURATION(functionsSETUPTIMERandTIMEREXPIRED?andnewI.S.OPRS)PROMPTFORWORD(formerlycalledREADAWORD)[19]Additionallogicalarithmeticfunctions(inspiredbyCommonLisp)LOGNOT,BITTEST,BITCLEAR,MASK.1'S,MASK.0'S,LOADBYTE,LDB,DEPOSITBYTE,DPB,ROT[20]Accesstosystemwindowandbackgroundmenus:Newfunctions:DOWINDOWCOM,DOBACKGROUNDCOMNewvars:xxxMenuandxxxMenuCommandsforxxxin{Window,Icon,Background}[21]NewandrevisedLispUserspackages;someincompatiblebetweenChorusandFugue[22]Finally,someitemsthathaveNOTbeenfixedinthisreleasep c/a qBt `2  [ ^  ], 9 [ Z& X   "$&@+f/1G 8%9o9;@YDIJW   K#%(*./0 5:=AzDH!U -Pp$3)e,P-M346=BE8GiT =R Q h S#%($, /385i8<1@A6DyO QG!$&b(N L  ( $&K B J |+pI B J W . %s%(, H B J D!Z$F&w /4t5F  += # &w -.35OD  "K b$'P*<-tCy  b!!f"%m&A  W"`# +7. 16@s  !&)!.0> B J : $F(o*.s0=m  Z/ N!#'+k03;  ` :g B J s % /7d8  ^ '+37a  f ix!v5 B J R s#$.14 74[ B J R d #2 B J R6E$%.&++/1U /  f  J"({*,7/O3.O B J Kc $< %(G*x-3[, B J  #`$+I  fQM ) B J A/(C B J  ) 5& B J R  $j %= B J R  ! #  fJr5"7  f7}u #  fr0  B #'), 251  f5oD !)-/46H B J  !$ +  f  !'%* B J  !%  f +d #%N* B J  ' $'6 358a B J  u$;   f  1 $K)+  B J !(0  B J ( #B&*  f&rl &L* B J   " B J c(*,.4k7  f #'8 /=4{9;?@   f="D%r(*@,  l q?[Toruninthissystem,obtainNEWVERSIONSofthefollowingfilesfrom[Phylum]Fugue>foryourlocaldisk:for1100:Lisp.run,INIT.LISP,DolphinLispMC.eb,AltoD0MC.eb(useXMBDolphinLispMC.ebfor1100'swith10MBEthernet)for1132:Lisp.run,INIT.LISP,DoradoLispMC.eb,AltoD1MC.ebfor1108:none(getinstallationinstructionsfromfile[Phylum]Fugue>1108OperatorsGuide.press/ttyForallmachines,therearenewversionsofthecanonicalsite-dependentinitfiles(tobestoredas{DSK}INIT.LISPoneverypartition/machine)on[Phylum](note,nosub-directory).WehavecreatedversionsfortheCIS,CSL,KSAareasatPARC--siteliasonsatotherlocationsshouldmodifythesetofitthelocalenvironment(e.g.,toindicatewherethedefaultprinter,fileserver,userinitfilesetc.arestored).Inaddition,[Phylum]containsupdatedversionsoftheNewUserDisk.andUpdateLisp.files.The"standard"releasesysoutis[Phylum]Fugue>Lisp.sysout.Inaddition,thereisasmallerloadupavailableasSMALL.sysoutthatomitsmanyofthenewnetworkingcodeandisabout800pagessmaller.Furthermore,thereisanenhancedsysouton[Phylum]Fugue>FULL.sysout,whichincludesTELERAIDandtheLispUserspackagesTEDIT(texteditor),LAFITE(XeroxGrapevineelectronicmailservice),andFILEBROWSER(menu-driveninterfacetofiledirectories),.Thesepackagesareunderrapiddevelopmentandhavenotbeenincludedinthestandardreleaseatthistime.UsersatsitesotherthanPaloAltoshouldwaitforanannouncementoftheavailabilityoffilesontheirlocalfileserverfromtheirlocalLispliason.WehavebeenhardatworkcompletingamajorrevisionoftheInterlispReferenceManual,whichwillincludematerialfromtheInterlisp-Dusersguide.Thiswillbeavailablesooninthefallof1983;untilthen,thefollowingdocumentationfilesareavailablenowon[phylum]Fugue>:ReleaseMessage.press/txt(thismessage)PROC.<<>>ttyCHAT.<<>>ttyNEWETHER.<<>>ttyNEWARITH.<<>>ttyNS.<<>>ttyPROMPTFORWORD.<<>>ttyDURATION.<<>>ttyDEDIT.<<>>ttyTTYIN.<<>>tty<<<1108OperatorGuide.press/tty>>>Asusual,pleasesubmitallproblemreports,questions,toLispSupport.PA.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------[1]Multipleprocessarchitectureextended.Affects"primary"I/O,(TTYDISPLAYSTREAM),Window"switching"betweenprocesses;newHELPinterrupt.ItisimportantforALLUSERStoreadthedocumentationrelatingtothis.Althoughthemulti-processingenvironmentislargelyupwardcompatiblewithChorus,therearesomeimportantdifferencesinthebehaviorofmousefunctionsandmenus.UsersMUSTreadthecurrentversionof[phylum]Fugue>PROC.PRESS,forimportantinstructionsonlivingwiththeprocessworld.ForthoseusersfamiliarwiththechangestoPROCintheFugue.0release,asummaryofthemajorchangessince c8a q`2 ^  J<':(*036DFJ],  6[ Z&  :; * X B J R Z bz!#'*.W  :; S** U  :i 9 %c(*T B J R Z b0R Q O  f'V"$<&m,M 5R7:`BCN  k&( 2t608AAXCFL ."r%',+a,.3E48=AF|IK  j <Q ,X$(*/c46V:=W?BeDFI ] !&+124ACH SF D  ]G3J35D:>1?o@lEInCy rK "%&'), 369":`>@yDII[A 3##%;?EE]@s E~#'*/c49J? EH>  < %+,. 6w6:@6B\F/I=m o#n$',02J4; :g @7! #T&(-) 346 =? ACFI8  $:QfP7a 5  G_R ":#7&+-/4;J@DdF4[ & !$S(E(+./5M8c9<>N?CjFI2   (! &)i+A91U / @"+.O , +I ) (C & %= # "7  1  +  $ +, s% s    ( $& B J |+p B J W . %s%(,  B J D!Z$F&w /4t5  $&4*~/N 6+9>AkCF  a!"&,/337<?A9EJi   u#i%x+ 248L;7=hB FFuH Y ".&n'*/E34:yB?G;J~ q?[1thenisherewithpresented.>Globalinput/outputstatenowperprocessThereareseveralentitiesintheLispsystemthatare"global"inInterlisp-10,andusedtobeglobalinInterlisp-D.InFugue.2,thesehaveseparatebindingsineachprocess:primaryinputandoutput,terminalinputandoutput,primaryreadtableandterminaltable,andthedribblefile.Thischangeislargelytransparenttousercode;however,anycodecontainingtheform(TTYDISPLAYSTREAM)MUSTberecompiled,asthisformhadamacrothatexplicitlyaccessedavariablethatisnolongerglobal.Thedefaultinitialvaluesforprimaryandterminali/owhenaprocessiscreatedare"placeholders".Whentheprocessactuallytriestoprint/readtotheprimaryinput/outputortheTstreamwithouthavinginstalledsomerealstreamasprimary(usingINPUT,OUTPUTorTTYDISPLAYSTREAM),aTTYwindowiscreatedfortheprocess.Theuser-settablevariableDEFAULTTTYREGIONistheregionwherethesedefaultwindowscomeup.Thefunction(HASTTYWINDOWPprocess)istrueiftheprocesshasattywindowotherthantheinitialdefault;NILdefaultstothecurrentprocess.BreakwindowsarepositionedneartheTTYwindowofthebrokenprocess,asdeterminedbythevariableBREAKREGIONSPEC.ThisvariableisaregionwhoseLEFTandBOTTOMareanoffsetfromtheLEFTandBOTTOMoftheTTYwindowwherethebreakwindowshouldgo;itsWIDTHandHEIGHTdeterminethesizeofthebreakwindow.>Keyboardinput&ttyswitching.Themodelforspecifyingwhichprocessgetskeyboardinputisthat"totypetoaprocess,youclickinitswindow."AnyprocessdesiringkeyboardinputshouldputitsprocesshandleasthePROCESSpropertyofitswindow(s)[usingWINDOWPROP].ThefunctionTTYDISPLAYSTREAMdoesthisautomaticallywhenthettydisplaystreamisswitchedtoanewwindow.ThewindowmanagernoticeswhenyouclickinawindowthathasaPROCESSproperty,andmakesthatprocessbetheTtyProcess,whichcausesallkeystrokestogotothatprocess.WhenevertheTtyProcessisswitched,typeaheadissaved,sothattheinputgoestotheprocessthatitwas(presumably)intendedfor.Thisdefaultmechanismcanbeoverridden.WritersofcodethatneedmorecarefulcontroloverwhenandhowtheTtyProcessisswitched,inparticularthosewhocalledPROCESS.SWITCH.TO.WINDOWorusedthePROCESS.IDLEFN,PROCESS.ENTRYFNandPROCESS.EXITFNpropertiesintheoldProcessimplementation,shouldreadtherelevantportionoftheProcessdocumentationfordetailsofthenewmechanism.ProgramsthatusedtoswitchtoPROMPTWINDOWtoreadarenowdiscouragedfromdoingso,toavoidcontentionforthatwindow.ThefunctionPROCESS.READstillexists,butyoumaynotneeditanymore.AprocesscansimplyREAD,andthereadingwillhappenintheprocess'sownttywindow,poppedupifneedbe.Anattempttoreadunderneaththemouseautomaticallygrabsthettyprocess.(READPT)nowreturnsNILimmediatelyifthecallerisnottheTtyProcess(andthereisnosavedinput).Implication:programsthatcalledREADP(oritsinternalsubfunction\SYSBUFP)andthenflashedacaretortookotheractiontoindicatetheirbeingaliveand/orreceptivetoinputshouldconsidertesting(TTY.PROCESSP)first.Thefunction(WAIT.FOR.TTY)efficientlyblocksuntil(TTY.PROCESSP)istrue.>Interruptcharacters.SomeinterruptsarestillfieldedbytheTtyProcess.However,BREAK(^B),ERROR(^E)andRESET(^D)arepreferentiallytakenbythemouseprocessifitisnot"idle"(otherwisebythettyprocess,asbefore).TheHELPinterrupt(^H,thoughmanyusersmoveitto^G)putsupamenuofprocessesaskingwhichonetheuserdesirestointerrupt,andthenperformstheinterruptinthatprocess.>MiscellaneousThemousenowrunsinitsownprocess,calledMOUSE,separatefromtheotherbackgroundtasks,suchaswritingdirtypagesbacktothedisk. c8a q  `2 ^ \ npE ], [ CO j$'U){.0L 7:M=Z>@DFZ& w %1*,/479=<?@CIX dw #8(,.05`78I;3?@E3W k6q!$ +-0A)EGcU 5(` # )6./|47 8^:6>IBT R    #_(*.P/M35.9;@EF IQ  w !s"%$** 2<367A;@[DIO N$*,<=@EGN  #y(~8S9;?CGL aY" 057-9;=FAD0E-GK SJ{4!$$)*,1MI H .T !%*+-2L7G79 @6BD5I:F 4"##a$^(q,o0_29k;=T@D'FXJHD  s#%).256DCy :krIA @s - > =m   "n% *.]/2:4j7K89>AKDUEG; C#'+Z-/X38Q9<BHI:g   "E$*59<> G2J8  OC @#(Q(+R0L5:!=@/C9DEJ7a  @#&q+,/ 69=? F4GIv5  j [ #$*1 2I6=7:r<@CDF4[ ,T #2 1U  KKk $$)+&.=04 7n;@OC:FII/   , %.(+r/8E)FI.O  (* 6 =6>@C!G, 3P#a( )+0w 9;?A^CFO+I ) (C v  *q+.13 ;:>rB"DEI& 3# .1X557:<?+BYCIWIJ%= IIK!%(D,.~06.9:@9EFH# 2  # %>)h 157P94"7 V+ $5%h'+,[.0 7:=?@DHI41 Z $\&k(, 4RAF.G+JY  tJD [#' +1.26(:r?C+ ! -m 37: FlG %     ?x! () /4`7=?BiGAJY   M!%&()B+/o 579;@B>G-GJ.  "&')0+.015C6<@DGI8    x$&,i-0   ~"z&@,!1I46:! AxDGI  k)@  q?[ThedefaultvalueoftheRESTARTABLEargumentforADD.PROCESSisnowtoneverrestart.IfyouwantaprocesstorestartwhenaHARDRESEToccurs(theFugue.0default),specifyaRESTARTABLEofHARDRESET.Scrollholdingworksforthettywindowofeachprocess.Ofcourse,ifyouusethenormalmechanism,andtheholdhappensinotherthanthettyprocess,youhavetoclickintheheldwindowbeforeyougettotypesomethingtoreleasethehold.ThereisanewiteminthesystembackgroundmenulabeledPSW,whichbringsupaprocessstatuswindow.-------------------------------------------------------------------------------------------------------------------[2]XeroxNetworkSystemsprotocolsforfilingsupported,inadditiontoprintingFuguesupportsapreliminaryversionofNSfilingtoXerox8030fileservers.AnydevicewithacoloninitsnameispresumedtobeaccessiblewithNSprotocolsratherthanPUP,e.g.,{STARFILE:}.ThegeneralformatofNSfileserverdevicenamesis{ServerName:Domain:Organization};thedevicespecificationforan8000-seriesproductmustcontaintheClearingHousedomainandorganization,butifnotsupplieddirectly,thentheyareobtainedfromthedefaults,whichthemselvesarefoundbyasearchforthenearestClearingHouse.NSfileserversaremodeledaftertheStarworld,andhave"FileDrawers"ratherthandirectories;"FileFolders"arelikesub-directories.ThefunctionsDIRECTORY,FILEBROWSER,INFILE,COPYFILE,LOAD,andMAKEFILEareworkingnowwithNSfileservers.SupportforInterpress-82output(forXerox8040printers)includestransmittalofscreenimageswithscalingandrotation,listingswithmultiplefonts,linesandgraphics;ingeneral,hardcopyfilesmaybeineitherINTERPRESSorPRESSformat.(PRINTERMODE'INTERPRESS)changesthedefaultforLISTFILESandhardcopyofwindowsandscreenimagestouseInterpressformat,andtosendtoInterpressprinters.OutputgoestoNS.DEFAULT.PRINTER,ifnon-NIL,orelsethefirstlocalprinteritfindsinyourclosestclearinghouse(seedocumentationonClearinghouseprotocols).(PRINTERMODE'PRESS)changesthedefaulttoPRESS.[Otherprintermodesarepossible;forexample,thePRINTERLispUserspackageincludessupportforalow-costdot-matrixprinterconnectedthroughtheparallelport.]Currently,theinterfaceisnotsmartenoughtoinferthemodefromapreviouslyformattedfileorthenameofthehost--youmustexplicitlysetthemodeifyouaresendingapreviouslyformatted(.PRESSor.INTERPRESS)file.FugueincludesfullsupportforstandardXeroxNetworkSystems(NS)protocols,includingSPP,Courier,Clearinghouse,Printing,andFiling.Seepreliminarydocumentation[Phylum]Fugue>NS.press/ttyformoredetailsonSPP,Courier,andClearinghouseprotocols.-------------------------------------------------------------------------------------------------------------------[3]Dandelion'sfloppydiskdrive--InterlispcanreadfromitInterlisp-Dcanreadfromthefloppydrive,whichisdevice{FLOPPY}.ThefunctionsDIRECTORY,FILEBROWSER,INFILE,COPYFILE,LOAD,READ,SETFILEPTR,etc.worknow,withsupportforwritingandforCP/Mformattingtocomelater.TheactualfloppyformatiscompatiblewithPilot'susage.Quitelikely,wewillbesendingsomeupdatefilesviathesefloppydisks.-------------------------------------------------------------------------------------------------------------------[4]TeleRaid:aremotedebuggingaidinlieuofRaidThe1108hasnoRaiddebugger(sinceRaidiswritteninBCPL),butdoesprovidealow-level"TeleRaid" c8a q  @ #)+ 647r:G;?cCDEqG`2 8B&*-28<=~ HI^ ], [ |M\q"k#&+,J.-234/68;/? GIZ&  YH?p!T!&)/,G-02Q47m8;k?BjCgFHuJ!K {^! ."$Y*-04\7 @@CH,I 5  "'!99n;? G`IoH  vf " +03Q ;J=>AFrF  "(=, 248:;?ACHsD fCy A  *d_l #R'e)-0]6V:4=+ DDvG@s gb!c'. 0r ;l@H> @/!$'), =m ;  ^ $'-O2 9':>CFJ]:g  s.q#R&](.05:=@BECG8 @7a B J  !5  "(g)/p16:d;>+ D[H4[  s D#&(G89?ADF8H2  `KW '* 35 >[ DEA1U B J M/ `!%*,:139q;BMH.O ,"B (-438:?rBCM I,  h# %;(,--n 3:<;=@CEGOJ+I  4 n #)%O*4+1 17=7>?% I) (C &  :o~"&,]1o4 :@CH%=   ; #S * 3IF#  ]{Sk!0 ) "7 s1   "K b$'P*<-t+  %Iz $T(1)o-55q8= G)% p#=( , 68`;>AFH k.  ?#''^   e !$(  tn %W(*$-~15@5  s  b!!f"%m&    !$%*x+03 6:;A H 8 q?[servicewhenitwouldotherwisefallintoRAID.WhenthemachineisinTeleRaid,itcanbedebuggedfromanothermachine,orinsomecasestheusercanissuecommandstocontinueorbreakintothecomputationinlimitedways.1100sand1132scanalsorunTeleRaid.OnceamachineisinTeleRaid,thenanothermaybeusedtodebugitbycalling(TELERAID),whereisthePupnameornumberofthemachinerunningtheTeleRaidserver.ThefunctionTELERAIDisnotinthestandardloadup(butisintheFULL.SYSOUTloadup);toloadit,youmustloadthefilesREADSYS.DCOM,RDSYS.DCOM,VMEM.DCOM,andREMOTEVMEM.DCOM.TheuserinterfaceforTELERAIDissimilartothatofRaid;type?foranenumerationofcommands.Whenthemaintenancepanelofan1108indicatesaLisp-inducedhalt,pressingtheUNDOkeystartstheTeleRaidserver.TeleRaidchangesthecursortotheTeleRaidcursor,takesovertheethernetcontrollerandkeyboard,thenwaitsforcommandsfromeithertheEtherorthekeyboard.Keyboardcommandsaregivenbyholdingdownthecommandkey(bottomblank,orSTOPonthe1108)andstrikinganotherkey.Asyoustrikeakey,thecursorchangestogivefeedbackaboutthecommandyouareabouttoexecute;thecommandisexecutedwhenyouletgoofthekey,butifyouletgoofthecommandkeyfirst,thecommandisaborted.Thecommandsareasfollows:N-likeRaid^N:continuethecomputation.D-likeRaid^D:doaHARDRESET.B-causeabreakunderneaththeerror.P-displaythemachine'sPuphostnumber(decimal)inthemaintenancepanel(forremotedebugging).TeleRaidrefusestoexecutethe"B"commandiftheuserisexecutinginaplace(e.g.,insideofagarbagecollection)thatwouldbedangeroustoallowauserbreak.Youcanputan1100or1132(DoradoorDolphin)intoTeleRaidservermodebygivingthe"R"commandtoRaidandthusremotelydebugitormakeuseofTeleRaid'sBcommand(nothingcorrespondingtothiscommandisavailableinstandardRAID).-------------------------------------------------------------------------------------------------------------------[5]TimeoutsforSAVEVM,RECLAIMinbackgroundnownoticemouseaction.ThebackgroundRECLAIMandSAVEVMarenolongerhandledbyPERIODICALLYRECLAIMonPROMPTCHARFORMS,butruninthebackgroundprocess,andnowpayattentiontomouseactionsaswellastypein.AbackgroundRECLAIMhappensiftheuserhasmadenokeyboardormouseactionforRECLAIMWAITseconds.AbackgroundSAVEVMhappens,ifthevmemconditionsareright,iftheuserisinttyinputwaitandhasmadenokeyboardormouseactionforSAVEVMWAITseconds(note:thisisachangeinthemeaningofSAVEVMWAIT).-------------------------------------------------------------------------------------------------------------------[6]EDITEMBEDTOKENisnow"&",affectsbothDEDITandEDITF.[Formerly,itwas"*"forTeletype-styleeditor,andforDEDIT.]ThevariableEDITEMBEDTOKENholdsthetokenusedintheembeddingcommandsofboththedisplayandtty-basededitors.Itsinitialvalueis&,whichisachangeforBOTHeditors(formerly,itwas*fortheTeletype-styleeditor,andforDEDIT).Usersare,ofcourse,freetochangethevalueintheirinitfiles.-------------------------------------------------------------------------------------------------------------------[7]PROMPT#FLGnowinitializedtoT:historyeventnumbersareprinted.ThevariablePROMPT#FLGnowinitialziedtoT,sothathistoryeventnumbersareprintedoutattheexecutive,makingiteasiertousehistorycommands.PROMPT#FLGusedtobeinitializedtoNIL.-------------------------------------------------------------------------------------------------------------------[8]Miscellaneousnewvariables: c8a q@ "'$'|+e-24'5;<?CAG JX`2 o-!^$)&)0f17Y8<?=An I2J^ jGle"$j], [ YVg~ u%O(%),.u2t35j9AFJZ& R8_[ #(j-p/5`99<AI~IX  (n!}# -33479;>ACFW  ![ +q->0>A1ADTIU  ,K#|&]'C)R+ 24pT R  e"(I)F 1b4M9t;@mBF9HjQ 6""& ')/374: [ *&Y'),-35>6;9<@B'C$H=m b '!%&(,; :g  &xAY!#A)+1g5E8:>@CI8  j ~!<$'( /.0l6; DF9H7a W_5 4[ s2 1U  W"`# +7. 16/ .O  |$&(,23EG, )!#B */247e<>yBGH+I  )@ #(*,B/ 1T46<>)BSF:HI) X $*h/113b7a =?CoDFI(C  ( Y1 %'u+/1 ;@DFH2I/& b| %= # s"7  !&)!.01 B J : $F(o*.s0 +   $&&W)- .07>b?BE*I  s*.!/"m$/( )J*G.05#9x ?@CbDjFyH% 1%o%)n+-w146 :<@0ADG  s   Z/ N!#'+k03    <  &0')F*-{15a:=ACE[G *q")*3 479d;' AFB s    `  q?[eNETWORKOSTYPES,MAX.SMALLP,MIN.SMALLP,MAX.FIXP,MIN.FIXPNETWORKOSTYPES[Variable]ForproperservicefromfileserversotherthantheXeroxIFS,youshouldaddentriestothesystema-listNETWORKOSTYPESassociatingthehostname(alluppercase)withitsoperatingsystemtype,currentlyoneofTENEX,TOPS20,UNIX,VMS.E.g.,(ADDTOVARNETWORKOSTYPES(MAXC2.TENEX)).NewglobalvariablesMIN.SMALLP,MAX.SMALLP,MIN.FIXPandMAX.FIXParerespectivelytheminandmaxontherangeofthefunctionsSMALLPandFIXP.-------------------------------------------------------------------------------------------------------------------[9]RESTART.ETHER--functiontore-initializeetherdrivers.(RESTART.ETHER)[Function]Underrareconditions,theDandelionEthernetdrivercangetintoabadstatewheretheEthernetappearstotallyunresponsive.CallingRESTART.ETHERwilltrytoreinitializealltheappropriateitemstogetyougoingagain.-------------------------------------------------------------------------------------------------------------------[10]NewcapabilitiesforRS232users:Functionsforcontrolofmodemlines,RS232READSTRINGfor"fast"inputAsynchronousinputbufferingatslowspeeds"Roll"modeforRS232CHATwindow,a{RS232}deviceinterfaceTheRS232driverfilenowsupportscontrolofamodemwiththefunctions(RS232MODEMCONTROLsignalslst)[NoSpreadFunction]Setsthemodemcontrollineshaveonthesignalsinthelist"signalslst";returnstheformersettingofthelines.If"signalslst"isnotsupplied[whichisnotthesameassupplyingNIL],thenthecontrollinesaremerelyreturned.CurrentsignalnamesusableareDTRandRTS.(RS232MODIFYMODEMCONTROLsignalsonlstsignalsofflst)[Function]Changesonlythosemodemcontrollinesspecifiedintheunionofthetwoarguments;thosein"signalsonlst"aresettobeon,andthosein"signalsofflst"aresetoff.Returnstheformerstatejustas(RS232MODEMCONTROL)does.(RS232MODEMSTATUSPbooleanform)[Function]Returnsnon-nulliffthereadingofthemodemstatuslinesisconsistentwiththeform"booleanform"[modemstatussignalscurrentlysupportedareCTS,DSR,RI,andRLSD]."booleanform"maybeanyAND/OR/NOTcombinationoverthesignalnames.Forexample,(ANDCTS(NOTRLSD)).(RS232MODEMHANGUP)[Function]Takeswhateverstepsappropriatetocausethemodemto"hangup"[mostly,thismeansturningtheDTRsignaldownforabout3seconds,oruntiltheDSRsignalhasgonedown].(RS232READSTRING#chars.limit?stopcode?noblocksflgwait?timerUnitsoldstrbuffer)RS232READSTRINGwilltakeinputbytesfromtheRS232portuntiloneofthreeconditionsobtains.(1)thetotalnumberofcharacterstakeninbythiscallisequalto"#chars.limit?"[NILmeansnolimit];(2)acharacterisreadwithcharactercodeequaltotheargument"stopcode?"[NILmeansnolimitingcharcter];or(3)anintervaloftimegreaterthanthatspecifiedby"wait?"haspassedwithnobytesavailableattheport.If"wait?"isnon-null,itmustbeaninteger,and"timerUnits"specifiestheunits(seetheDURATIONdocumentation).If"noblocksflg"isnon-null,thenRS232READSTRINGwillconsumealltheCPUcycleswithoutofferingtoyieldtootherprocesses[includingtheMOUSEprocess];thismodeisimportanttovery-time-criticalapplications.If"oldstrbuffer"issupplied,itmustbeastringandtheresultcharactersaresmashedintoit[sothatnoconsingisdone]. c8a q B J s % /7d`2 ^ "' ],  f?y#J&A(r,e/E168<>`@DH [  !$(=*w 1+45;?C3HZ&  g~"`"%. <BCvX W  !A +k2X4<7>] EGJxU  sI!Ry!u'*T R sQ O  ^ '+3N L !&} K  !F&*,/125=8?<(>YCHI  ZH (_*,.T 468 ?CmDGIH F D sCy A  f ix!v@s B J R s#$.14 7> B J R d #=m B J R6E$%.&++/; :g 8 7a   $&'+.165 4[ p '-2  *B!#K') +;-I 498;i?CEG1U L *p$ %J')-.48G;>=oADG / K d`"0&D(j+.W.O , "f )y 1111 +I I3q"(*,6/1365 =+@B J)  Brj$&(*+Q0X269<^=(C & %=  ( # "7 X5!&*+-6.t 479< F/ #&)p- /H167 @PC&DG\1  !%**p,269= + 2:  \  @#%*,F0/27:.>CBE"H% @OE"%"(f,!.h1  / !' .2" 8 @ 1!u$(*C.y1C4Y68a; B)GGoIiI     b!#&"(})-K.88<0@EBF HI m $%'- 558{<>hCU IB  zcQ!H#)p+>/2=6s9^;6>D#EG  cpm &!#(p*+Q 3c8:;3>k>AbC +* 'T(.Q1H?AGH  _&"$;'-v 35;r@CbGHF   $% &^ /0S66`7:<=A'CEI| %KRzr!"'( q?[(RS232BACKGROUNDstate)[Funciton]The"state"argumentmustbeamong{OFF,INPUT,OUTPUT,BOTH,ON};exceptforinputofOFF,thisturnsonabackgroundlow-levelprocesswhichwillservicetheUARTatleastonceevery16millisecondsand/orflushouttheoutputbuffer.A"state"ofOFFshutsthisbackgroundactivityoff.A"state"ofINPUTcausesonlytheinputbuffertobeserviced;OUTPUTforonlytheoutputbuffer,andeitherONorBOTHforbothbuffers.Aperiodof16millisecondsfortheinputservicetimeshouldgivetheappearanceofasynchronousbuffering,withoutdroppinganycharacters,whenusedatspeedsoflessthanabout600baud.RS232CHATwillpayattentiontotheDSPSCROLLsettingofthechatwindow,andwilldo"roll"moderatherthan"wrap"modeprovidedthatitcandosowithoutdroppingcharacters["roll"describesthe"scrollup"actionwhentypeoutreachesthebottomofthewindow].IftheXON/XOFFprotocolisbeingused,orifthebackgroundprocessmentionedaboveisinoperation,thenlikelytherewillbenoproblemisusing"roll"mode.The{RS232}deviceiscreatedbyRS232INIT;onecanobtainastreaminterfacetotheRS232portbycalling(GETSTREAM'{RS232}).However,inmostcases,thisstreamapproachwillnotworkunlesstheasynchronousbufferingmentionedaboveissuccessful--thetimetakenbygeneralI/Ooperationsisunpredictableandoftenquitelarge.Ordinarily,ahostwillsendaCR/LFfor"newline",butsomesendonlyone;themenuselectionletsyoupickoneortheotherifthisisthecase(especiallyusefulwithUNIXsystems).Similarly,youcanspecifythattheRETURNkeysendeitherjustCRorbothCR/LF.SeveralmoreimplementationsoftheMODEMprotocolforFTPingareavailable:onefortheIBM/PCisavailableonfloppydiskthroughXSIS(andisalsoon[MAXC]IBMFTP.ASC).Severalfilesareavailablealsoon[MAXC]forVAX/VMSusers:XMODEM.FORandQIO.DCKareanimplementationinFORTRAN;TOXMOD.FORandFMXMOD.FORarehelpfulfordealingwiththestructureoffilesinVMS'srecordmanagementsystem.Reviseddocumentationison[Phylum]RS232.press/tty.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------TheremainderofthismessagerecapitulateschangesmadeinFugue.0.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------[11]Fuguerunscompatiblyonallthreemachinesofthe1100family:The1100(Dolphin),the1108(Dandelion)andthe1132(Dorado)<<>>FugueInterlisp-Dwillrunonthe1108(Dandelionprocessor)aswellasthe1100(Dolphin)and1132(Dorado).1108configurationssupportedincludethe8011(10MBSA1000disk),8012(29MBSA4000disk)<,8014(40MBQuantumdisk)withmemorysizesfrom1MByteto1.5MByte.Allversionsarecompletelycompatible--itispossibletotakeANYInterlisp-Dmemoryimageandmoveitdirectlyfromonemachinetoanother.The1108Interlisp-DisimplementedsolelyinmicrocodeandLisp;ithasnoMesanorBCPL,anditsmicrocodefitsinthestandard4Kcontrolstore.The1108isbootedfromthediskbyaslightlygeneralizedInitialmicrocode.Itcanbeinstalledfromfloppydisksorfromafileserver.Any8010workstationwithsufficientmemoryandaPilotLogicalVolumewithapproximately12000pagescanrunInterlisp-D,withoutdisturbingMesaorStar.Forhelpingettingstarted,seethedocumentationonthefile[Phylum]Fugue>.press/tty.------------------------------------------------------------------------------------------------------------------- c8a q`2 Cn ^  '!@%~*1D599>@-CE2H],  \  %-) +/2 6w7:=AuC-[ :"'G'(-`.2!5{7 ?DCF6FGZ& L '"&(x*;/68"; ==A}EH]X 2,8!!j"&(}*5 136 9=@EGJ W v  "&,/ 59)<6=ACbEHU T R )+!\*.G/24: <?$@DH\Q c "G#o%'):.3 :>*CFJ9O  ~ei %1&(..0M2~:?A DH IN  N H $%' -04Q7:&;=CDQGL K I  )={ &)+{/04:@;=B'DFH   &&,.f15/7;AD)FoIF  mD%)* 12i47; <AD/ JD  ( &!r!Cy A   " )+/L2Y5C898:>tCF7H@s  ;qT!E '+.28V8 >A6CGJ>  1!#$&0=m ;  &,*.935, ;-;>@BBGI:g rJs17!$%(*\>L>CGFH+8 r !(, 79@BDD7a  (-* 5-7S;=BE{G5 u> &4[ 2  ]5#1U / s.O s, +I   $)-e.) (C s& s%= #  f  J"({*,7/O3"7 B J Kc $< %(G*x- 5k B J  #`$ 1   b! ( /N0355f7:@CpCF+  $ #)#(.*_*-2;7 :;>BGp )A 4#(\+\./35r7<.<>CE%  0X!#%%)w) 059CCrFGI_   "#&+W0\3G <?CwEH<   S "d%p%   fQ2- (\*4,e.  s  \ q?[:[12]WindowSystemchangesandadditions:Incompatiblechange--(CURRENTDISPLAYSTREAM)removedNewfunctions--OPENWP,OPENWINDOWS,CREATEREGION,BITMAPWIDTH,BITMAPHEIGHT,BITSPERPIXEL,PRESSBITMAP,FILLCIRCLE,DEFAULTFONT****incompatiblechange****ThefunctionCURRENTDISPLAYSTREAM,andthenotionofa"primary"displaystreamhavebeendeletedfromthesystem.Displayfunctionsnowdefaulttheirdestinationstreamtothe"primaryoutput",justasotheroutputfunctionsdo.IfaDSPxxxfunctioniscalledwithdisplaystreamNIL,andtheprimaryoutputisNOTadisplaystreamorwindow,anerrorisgenerated.AnyusercodethatrefersexplicitlytoCURRENTDISPLAYSTREAMmustbechanged;inaddition,usercodethatcallsdisplaystreamoperationsdefaultingthedisplaystreamargumentmayneedtobeexamined.CallstoCURRENTDISPLAYSTREAMwiththeintentofdeterminingthefontofaprototypicaldisplaystreamcanusethenewlyprovidedfunctionDEFAULTFONT,below.Newfunctions:(DEFAULTFONTDEVICEFONTNOERRORFLG)[Function]ReturnsthefontthatisusedasthedefaultforthedeviceDEVICE.IfFONTisafont,itreplacesthedefaultforthedeviceDEVICE.ThefunctionsOPENWPandOPENWINDOWSarenowsynonymsof(andthepreferrednamesfor)ACTIVEWPandACTIVEWINDOWS,respectively.(CREATEREGIONLEFTBOTTOMWIDTHHEIGHT)[Function]ReturnsaninstanceoftheREGIONrecord,withLEFT,BOTTOM,WIDTHandHEIGHTcomponents.FunctionsBITMAPWIDTH,BITMAPHEIGHT,andBITSPERPIXELwereaddedtofacilitateaccesstothefieldsofabitmap.ThefunctionPRESSBITMAPisnowinthestandardloadup.(FILLCIRCLEXYRADIUSTEXTUREDISPLAYSTREAM)[Function]FillsacircularareaofradiusRADIUSaboutthepoint(X,Y),inthewindowordisplaystreamDISPLAYSTREAMwiththetextureTEXTURE.-------------------------------------------------------------------------------------------------------------------[13]DEDITinstandardloadupDEDITisinstalledasthe"standard"editor.DEDITdocumentationisintheInterlisp-DUsersGuideandwillbeinthenewInterlispReferenceManual.TheversioninFugueisacompletelynewre-implementationoftheversionofformerreleases,andshouldbequiteapparentlyfaster.ThefunctionEDITMODEnowtakesTELETYPEinsteadofSTANDARDtodescribethe"TTY"editorofchapter9oftheReferenceManual.STANDARDwillalsobeacceptedforawhile.NOTE:ThevalueofEDITEMBEDTOKEN,usedbybothDedit'sReplacecommandandtheteletypeeditor'sMBDcommandisnow&bydefault.Seeitem[6]ofthisnote.NewFeatures:ABreakcommand(doesaBREAKINAROUNDthecurrentexpression).DPnowallowsasecondargumentwhichitwillinterpretasapropertytobeedited,i.e.DP(FOOMACRO).Thesingleargumentformgetsthewholepropertylistasbefore.Shiftselection(COPY)remainsactiveevenwhenDEditisnot.Thusonecanunreadparticularlychoice c8a q fQM `2 B J A/^ B J  ) 5], B J R  $j [ B J R  ! Z& X  W U  &)O+/13208=AXDpGT $'j+. 5: ;=CrHR  \LW 3!0&M+,03 ;?)ACHQ *h A$)%)/*m 0164 69<@3 EGfO ~!#z)1*0D36&8; D JN 9j !$')Q+L K ,#@&+(\,#- 517b:!;<= DlHI +q$ 0CH F D  Cy A V +,,h, @s BIz9#$L&[(,234d89:>?6DGFx> ap=m ;  ^[ '* ,3$479?CFW:g M " 8 7a H8!'-2 5 B d <!c%(- 39G;A 4[ 2 " V (:* 58<<0= C FHjJ1U n' (7)u,J-/5e/ .O C$ 15 , B B "x&)(Z+-0)138:j B+I eP ) (C s& %=  fJ4# "7  R $) 3 4G57 >B}FI  e(!1&m)-/-3L45 !(*/N   1`Y#6$^&,M-.4457w;=CJ?  NGO#+(*,#   !q$(,-?/3*58<| CG q?[2piecesoftextfromDEditwindowsintothetypescriptwindow.(Selectionsareotherwisedisabledwhentheywouldbeinappropriate,e.g.undernestedcomputations).(RESETDEDIT)completelyreinitializesDEditifitgetsbadlyscrambled.Switchingtotty(orother)editors:SubcommandsonEditallowmultipleoptionsofusingDEDIT,TTYIN,orthe(old)teletypeeditoroneitherthecurrentexpressionoronitsdefinition.OnecannowgiveTTYeditorcommandsdirectlyintothetypeinbufferbyprefixingthemwith^Z.Areadmacroon^ZinterpretstherestofthelineasanEditComwhichwillbeexecutedwhenthelineisclosed.Likewise,youmayenjoy^S(Substituteoldnew)and^F(Find)commands.CommandsaredefinedbyeditingthevariableDEDITTYPEINCOMSinwhatshouldbeafairlyobviousway,andthenRESETDEDITing.ThesevariouschangesallowtheusertowritearbitraryprogrammedtransformationstouseunderDEDITsincethefullprogrammablepoweroftheTTYeditorisavailable.Facilitiesnowexistforusersaddingcommandstoandreorganizingtheeditcommandwindow.Detailsonrequest.-------------------------------------------------------------------------------------------------------------------[14]TTYINinstalledasdefaultlinebuffereditorTTYINisinstalledasthestandard"linebuffer"--themini-editorforkeyboardinputfromtheso-calledTstream.TTYINfeatureseditingofthetype-inbufferwithmouseorcontrol-keycommands,and"automaticwordcompletion".DocumentationforTTYINisavailableon[Phylum]Fugue>TTYIN.tty/press.Itmaysomedaybecomeobsoletewhenamoregeneraltexteditoriscompletedandinstalled.-------------------------------------------------------------------------------------------------------------------[15]Alldiskpartitionsof1100s(and1132s)arenowaccessiblefromInterlisp-DThelowlevelimplementationofthediskdrivershasbeensubstantiallyrevised,withaconsequencethatInterlisp-Dcanaccesspartitionsotherthantheonewhichwasbooted.Iftheotherpartitionispassword-protected,Lispinsistsonthecorrectpasswordbeforeaccessinganyfiles.Partitionsaredenotedby{DSK1}forPartition1,{DSK2}forPartition2,etc.TheDIRcommand,DIRECTORY,etc.allworkforotherpartitions.However,SYSOUTdoesnotyetworkforpartitionsotherthanthedefault.-------------------------------------------------------------------------------------------------------------------[16]PupFtpprotocolnowsupported;DIRECTORYworksonremotefileserversLeafprotocolre-implementedwithmoreflexibilityFugueincludesanimplementationofthePupFtpprotocol,whichsupportstransferringfilessequentiallyonly.Inthosecaseswheresequentialaccess(asopposedtorandomaccess)toafileisappropriate,theuseofPupFtpgenerallyresultsinconsiderablespeedimprovementoverLeaf,particularlyforwritingfilesonanIFS.ThesystemtriestousePupFtpwherepossibleforSYSOUTandforthedestinationfileofaCOPYFILE.OnecanindicatethatafileisgoingtobeaccessedonlysequentiallybyincludingthekeywordSEQUENTIALinthelistofMACHINE.DEPENDENT.PARAMETERSpassedtoOPENFILE;thePupFtpwillbeused,ifpossible.ThisreleasedoesnotsupporthavingPupFtpasthesoleprotocolsupportedbyafileserver;thenecessaryintegrationwilloccurinthenextrelease.IfforsomereasonyourfileserversupportsPupFtpbutyoudonotwishCOPYFILEorSYSOUTtouseit,youcansettheinternalvariable\FTPAVAILABLEtoNIL.TheDIRcommand,andtheDIRECTORYandFILDIRfunctionsnowworkforfilesonremoteservers(byusingPupFtp)aswellasonthelocaldisk.FuguecontainsanewimplementationoftheLeaffilingprotocol,whichtoleratessimultaneousaccesstothesameserverfromdifferentprocessesandpermitsmoreoverlappingofLispcomputationwithfileserver c8a q]"6$g */0) 69>D3GJ`2  U# ^ ], @  # &(2)Z+/ [ Z&  qh6 (*k-?05:<4?DJX   ="n' -/#02 W U  #_("*,156<{?BEE]FIT  J!#%&,0b24:+=?BiCGHSR Q' "B$|'*>,,0J7T7>@EGQ U$&c)-/04 8;>AyO }O#'Z),V-1$6 >HIN  1+\ &*,9.j15f6 L K [\k &(N* 247H=wBG>II H sF D  f7}u #Cy A ?["'A(* 139=@PBGI<@s SOE!v%),1 2 9@C> J> C < "*&(9-/$HHhI=m  ?$T !%;),g081v7:z ; :g 8 s7a 5  fG 2Y $&) /3 4[ 2   L }#;')- 49<= ERG1U % !]$T&),/]44w57;l@B/ !&A, 0,58U;j; ACH.O  #2\ "(H),,\/28 AD.EI<,  h +I ) 6Q!# )-/2/(C & s%= #  f5oD !)-/46H"7 B -  $; B1  : !/#`(/-16 >3@ HR +% !$&,/-268v9s;<=C DFI>+  uD $Q(([ 036 =@DG?I  .u"D&-+<-K3L57: @C!DE% @: #$N')h++0t3^ :<BmDJ }.<6v:<,DFO 4\M!7%(*/38:IhCLHQ =   $'K,2h5=8:=W?/CHJO d-lDu    :7 !#)%Z([+1Z57:~ BFmGJ 9O #'+@ 24!7 >ACG  q?[6operations,allowingforimprovedperformance.AcorollaryofthelatterthatyoushouldbeawareofisthatafileisnotclosedtheinstantthatCLOSEFreturns--Lispisclosingthefile"inthebackground".ItisthereforemoreimportantthaneverthatyouexitLisp"normally",via(LOGOUT),or(LOGOUTT),ratherthanbootthemachineorexitviaRaid.-------------------------------------------------------------------------------------------------------------------[17]Incompatiblechangesinlow-levelEthernetcode:PUPrecorddeclarations,GETPUP,etc.TheethernetcodewassubstantiallyrewrittenforFuguetoaccommodatethe10MBandNetworkSystemprotocols,andalsotoputintoLispallthebackgroundcodeformerlywritteninBCPL.Anumberofincompatiblechangesresulted:thePUPrecordchanged,neccessitatingatleasttherecompilationofallpupusercode;GETPUPreturnsabrandnewpup,ratherthancopyingtheincomingpupintoauser-suppliedpupdatum;SENDPUPsynchronizesdifferentlywiththetransmitter;CREATESOCKETandFLUSHSOCKETwererenamedOPENPUPSOCKETandCLOSEPUPSOCKET.Fordetails,seeFugue>NewEther.press/tty.Whenamachinestartsup,theEthernetcodegetsthetimefromaserveronthelocalnet,ifpossible.Theinformationsuppliedbytheserverincludesthelocaltimezone.UserswhoarenotonanEthernetandnotinthePacifictimezoneneedtosettheglobalvariable\TimeZoneCompinthelocaldisk'sINIT.LISP.Thevalueof\TimeZoneCompisthenumberofhourswestofGreenwich(negativeifeast).-------------------------------------------------------------------------------------------------------------------[18]System-levelLispUserspackagesnowinstandardloadupDURATION(functionsSETUPTIMERandTIMEREXPIRED?andnewI.S.OPRS)PROMPTFORWORD(formerlycalledREADAWORD)ThefunctionsSETUPTIMERandTIMEREXPIRED?aretohelpwritecodethat"timesout";thereareseveralnewI.S.OPRStofacilitatescopingsuchcode.Seethedocumentationon[Phylum]Fugue>DURATION.tty/press.AnewfunctionPROMPTFORWORDhasreplacedtheLispUserspackagecalledREADAWORD.Itprovidesasystem-levelalternativetoASKUSER,withpromptingsimilartowhattheAltoExecutiveprovidedforloginandpasswordreading.Seethedocumentationfile[Phylum]Fugue>PROMPTFORWORD.tty/press.-------------------------------------------------------------------------------------------------------------------[19]Additionallogicalarithmeticfunctions(inspiredbyCommonLisp)LOGNOT,BITTEST,BITCLEAR,MASK.1'S,MASK.0'S,LOADBYTE,LDB,DEPOSITBYTE,DPB,ROTThefollowing"logical"arithmeticfunctionsarederivedfromCommonLisp,andhavebothmacroandfunctiondefinitions(themacrosareforspeedinrunningofcompiledcode).Thefollowingcodeequivalencesareprimarilyfordefinitionalpurposes,andshouldnotbeconsideredanimplementation(especiallysincetheirealimplementationtendstobefasterandless"consy"thanapparenthere).(LOGNOTx)==(LOGXORx-1)(BITTESTxmask)==(NOT(ZEROP(LOGANDxmask)))(BITCLEARxmask)==(LOGANDx(LOGNOTmask))(BITSETxmask)==(LOGORxmask)(MASK.1'Spossize)==(LLSH(SUB1(EXPT2size)pos)(MASK.0'spossize)==(LOGNOT(MASK.1'Spossize))(LOADBYTExpossize)==(LOGAND(LRSHxpos)(MASK.1'S0size))(DEPOSITBYTExpossizebyte)==(LOGOR(BITCLEARx(MASK.1'Spossize))(LLSH(LOGANDbyte(MASK.1'S0size))pos))Thenotionofa"bytespecifier"hasbeenadded;fromapairofpositonand c8a q   'E'(.02?58B:?@DF*GhJ`2 !_$ ,-2K4|68; CuCEFU^ 2)"%&'* 13;=aDiFxJV],  ex[ Z& sX W  f  !'%U B J  !T R  [ %'+-b 56/8`D^HQ &!K#| *-3]79_=>?_D[EO j"&,h 4629(;Y CEaG"IN  ER #e&g*E-<264g:<<?@ HL  - !c '*- 4G @BK t +7-;;>dBEEXI H F #"i%(*P-F0~1{5Y719b s=m ;  f +d #%N*:g B J  ' $'6 358a8 B J  u$; 7a 5  ^ m +O-u.15.8E:?B}EG4[ K   #&*&*~,/ 8F:2 '1U / I P "7$~),2;7L; EsEG.O GD  M (;+&16 7:<?E, m9#T#&(E 1t3+I ,) (C s& %=  f  1 $K)+ # B J5!(/"7 B Jj "&o) 1  q G%'8+/458W:=AEG 1 u ",%'^,d-377:@C+  #),L024 ;Q= F d #i&(d*'-0A27:@0%  r PZ1d;!(O)u 'd;!%+2c4 d;!(O)0 Pd;!'x)&m Zd;!&+02c7m Zd;!(O04 !(O-Y/3:;=Ne 1  oFyP'Z1d;!'x/19=N oFyP'Z1d; !"n#E$$%&'x,3:7m?AGb ]    q FC  #@'*+.047K q?[Ksizearguments,abyte-specisconstructedbythemacroBYTE[notereversalofargumentsascomparewithabovefunctions](BYTEsizepos)Similarly,themacrosBYTESIZEandBYTEPOSITIONwillselectoutthetwofields.[currently,byte-specsareimplementedasatyperecord;CommonLispleavesunspecifiedwhetherthereareanyrangelimitationson"size"or"pos"]Twomore"byte"functionsareprovided,withcompilermacrosupportalso:(LDBbspecval)==(LOADBYTEval(BYTEPOSITIONbspec)(BYTESIZEbspec))(DPBnbspecval)==(DEPOSITBYTEval(BYTEPOSITIONbspec)(BYTESIZEbspec)n)Thefinalfunctioninthisseriesisnotquitesoeasytodescribe--ROTfor"Rotatebitsinfield".(ROTxnfieldsize)isaslightextensionoftheCommonLispROTfunction.Itperformsabitwiseleft-rotationoftheintegerx,bynplaces,withinafieldoffieldsizebitswide;bitsbeingshiftedoutofthepositionselectedby(EXPT2(SUB1fieldsize))willflowintothe"units"position.Theoptionalargumentfieldsizedefaultsto"cell"size(theintegerlengthofthecurrentmaximumfixp),andmusteitherbeapositiveinteger,orelsebeoneofthelitatomsCELLorWORD.Inthelattertwocasestheappropriatenumericalvaluesarerespectivelysubstituted.AmacrooptimizesthecasewherefieldsizeisWORDandnis1.-------------------------------------------------------------------------------------------------------------------[20]Accesstosystemwindowandbackgroundmenus:Newfunctions:DOWINDOWCOM,DOBACKGROUNDCOMNewvars:xxxMenuandxxxMenuCommandsforxxxin{Window,Icon,Background}Therearesixuser-accessiblevariablesforcontrollingthecontentsofthestandardWindowmenu,IconmenuandBackgroundmenu.Foreachmenu,thereisavariablexxxMenuthatcachestheactualmenu,andavariablexxxMenuCommandsthatholdsthecommandsforthemenu,intheformatofanITEMSfieldofaMENU.ThemenuisrecreatedfromthelistofcommandswheneverthexxxMenumenuvariableissettoanon-MENU(e.g.,toNIL).Thevariablesare:WindowMenuandWindowMenuCommands--themenu(anditscommands)thatisbroughtupinresponsetoarightbuttoninawindow.AcommandinWindowMenuCommandsshouldreturnafunctionnamethatwillbeAPPLYedtothewindow.IconWindowMenuandIconWindowMenuCommands--analogous,usedinresponsetoarightbuttoninashrunkenwindow.BackgroundMenuandBackgroundMenuCommands--themenu(anditscommands)thatisbroughtupinresponsetoarightbuttoninthebackground.AcommandinBackgroundMenuCommandsshouldreturnaformthatwillbeEVALed.Forexample,toaddcommandstothewindowmenu,simplyaddthecommandstoWindowMenuCommands,andsetWindowMenutoNIL.Tochangethefontusedinthemenus,changeMENUFONTandsetallthexxxMenuvariablestoNIL.Thefollowingfunctionsprovideafunctionalinterfacetotheinteractivewindowoperationssothatuserprogramscancallthemdirectly:(DOWINDOWCOMWINDOW)[Function]IfWINDOWisNIL,itcallsDOBACKGROUNDCOM.IfWINDOWisashrunkenwindow,itbringsuptheIconWindowMenu. c8a q f ;8Y #z%H'y+w/27`2  us ^ r ]W q !M ,).244z6[    &,'( /5ZQ  S y"& -.24`X WK  COu#l&W+/4U rT d(O+ 7m=NESC Q yd *.0 9?P oFyP'Z1d; !"n#E$$%&'x(O)&)*3:9O; oFyP'Z1d; !"n#E$$%&'x(O)&)*M L` q Z\ $9%(*%/W036J L+I r y' H q ( % Q "&+,,j-3_4\8F Jr"'(+,14/D .#(*C r PZ "nB! q eO(%}"&'U-N2r7m@  j%K h!$%, /25I?  Qo2!:#k(o,v. 3S35M7~= N@ k#') 1 < IG<m-$:%x*h,./M: 9 s7 6  f&rl &L*4 B J   "3 B J c(*,.4k7 1 / !R#a *,L135E:@ DG J.z  s K"&-'k(h-m3[5:&-|35;?QDVEGIJ) |(4#f(n & V%'A)r-$0&18;<ACEEJ%h  j gIFN$}%59=>D+GJ[#  e(2"b k+3,} 3 67=>?BFHmIj\  V p*++u-1X4Z6=2?AFGIy ^= %%'S-/@EIJP "< J  fB!s&m*w.1?3p:#; l[ (>),-Q/I358;=>?oCHuD F5'"'),Y >  q< %`*,T. 59 @tB DGt ) 8 #( 2 B J / B J !#'(+,7 J q?[.IfWINDOWisaunshrunkenwindow,itbringsuptheWindowMenu.Theinitialitemsinthesemenusaredescribedabove.Iftheuserselectsoneoftheitemsfromtheprovidedmenu,thatitemisAPPLYedtoWINDOW.(DOBACKGROUNDCOM)[Function]BringsuptheBackgroundMenu.Theinitialitemsinthismenuaredescribedabove.Iftheuserselectsoneoftheitemsfromthemenu,thatitemisEVAL'd.-------------------------------------------------------------------------------------------------------------------[21]NewandrevisedLispUserspackages;someincompatiblebetweenChorusandFuguePleasenotethatnewornewlyrevisedLispUserspackageshaveonlybeenverifiedtorununderFugue.Someofthesemaynotworkcorrectlywhenloadedintoolderreleases.Conversely,olderversionsofLispUserspackagesmaynotworkcorrectly(orevencrashthesystem)whenloadedintotheFuguerelease.Asalways,therearemanyrevisedpackages,notsynchronizedwiththerelease.ThefollowingpackagesareknownnottobecompatiblebetweenChorusandFugue,withnewversionavailableon[Phylum]:PRESSBITMAPEVALSERVERallRS232filesRPC(TheCedarremoteprocedureprotocol)LAFITE,GRAPEVINE,MAILCLIENT(forelectronicmailfiles).OldversionsofthesepackageswillnotworkcorrectlyinFugue,butwillbepreservedon[Phylum]Chorus>foraperiodoftime.Thefollowingpackagesareincludedinthestandardloadupandthusneednotbeloaded;inmostcasestheoldversionsareincompatiblewithFugue:ADDARITHBSP,CHATCHARCODEDEDIT,DSPRINTDEF,NEWPRINTDEFDURATIONPROCREADAWORDGLOBALRESOURCEThefollowinghaveappearedrecently:EDITBITMAP-MorebitmapmanipulationsalaNotepadEDITMACROS-some(TELETYPE)editormacrosFILEBROWSER-Amenu-driveninterfacetoafilestructure;MainentryisfunctionFILEBROWSERLISPUSERS.TTY-anindexofallLispUserspackages,withbriefdescriptionofeach.LOGOCLOCK-AclockprocessintheInterlisp-DwindowMAKEGRAPH-producesforestsbywalkingoverdatastructuresaccordingtoaspecificationforthatwalkNQUEENS-solvesthen-QueensproblemgraphicallyPRINTER-LISTFILESandHARDCOPYW(ofwindows,bitmaps,etc.)onC.Itohandotherlow-costgraphicsprinters.RPC-LispversionofCedarMESA'sremoteprocedurecallmechanismSAMPLER-graphicsdemosSTOCKICONS-useinconjunctionwithICONWSTYLESHEET-coordinatedselectionsfromasetofmenus c8a q B J  +#}$(*, 56J`2  LF%**u+-0^  g##&N)D*02[], [ !& Z& B JhL} )"&*+-139=>H?ADHX  g# #$W U sT R  f #'8 /=4{9;Q O N r2!'U,026:BG$G|L uK!Q$)!+/,4]4 ;?YDtEK #!$&)- /Q47;>@DIII  Zv (I.60| 8;=BaH F  q,!#G% +1%58Q<?BsG D rJCy A B @s B > B  =m B  B+ ; B   $`& ,/3l:g 8  |"|!%*,025V7=(?7a $%5 4[  q, "$P).%0368:?~@D+GoI2  $?e jU1U / B .O B , B +I B .  ) B (C B & B %= B # "7  qK!1  -5 &'))+ A& "&} < l ^%'R(O* % B J R Z bjr"?  4%+.1 8: 6_ !C#t *R #{+ "'*x-N  B J R Z bjr"/ "Y$h' HP &(  EMvi(T*X0.5 B J R Z bjr"#@(} p x(08: %&B*1 3d  ai  h/ y#d X / #%&]'Z)I*7 q?[aSIGNAL-LispversionofCedarMESA'ssignalmechanismTRAJECTORY-FOLLOWER-causesa'snake'tocrawlalongacurve.Thefollowinghavebeenrecentlyrevised:EVALSERVER-18-JUN-83(Fugue-onlyversion)BIG-29-JUL-83BITMAPFNS-minorfixesTEDIT-greatlyrevisedversion.TEXTOFDTEDITHCPYCMLARRAY-2-JUL-83COMPILEBANG-10-MAR-83COREHAX-3-JUN-83CROCK-25-JUL-83HANOI-2-JUN-83HEADLINE-11-MAY-83HISTMENU-31-MAR-83ICONW-9-AUG-83LLCOLOR-6-JUL-83NOTEPAD-11-AUG-83POLYGONS-5-MAY-83PROMPTREMINDERS-25-JULY-83TMENU-5-JUN-83UTILPROC-7-MAR-83---------------------------------------------------------------------------[22]KnownproblemswiththisreleaseThecaretisstillglobal,ratherthanbeingapartofthewindowstructure.Thismeansthattherearetimeswhereacaretgetsleftupinawindowwhenitshouldhavecomedown.Usersmayfindthatattywindow(muchlikeabreakwindow)popsupunexpectedlyforaprocessthatapparentlyhadnoneedforit.Wehaveremovedmostsuchcasesfromsystemcode;however,thereareseveralcasesinwhichtechnicallyincorrectusercodecancausethisbehavior,whereinearlierreleasesthecodewentunnoticed.AtypicalsuchcaseiswhereusercodecallsoneoftheDSPxxxoperations,defaultingthedisplaystream.UnlessthecodeREALLYwantstoaccesstheprimaryoutputoftheprocess,thecodeshouldexplicitlyspecifyadestination.IfyouLOGOUTwhilesomeotherprocessisactivelywritingafile,itisnotguaranteedthatanythingreasonablehappenstothefile.Thereisnoutilizationofthe1108'srigiddiskforthe{DSK}device--itisonly"ephemeral"andfilesplacedtherewillnotsurviveare-loadingorre-booting.Laterthisfall,fullsupport,withdirectoriestoo,willbeannounced.Theswappingfile(Lisp.VirtualMemon1100sand1132s)muststillbea"small"numberofdisksgements.Swappingperformancewilldegradedrasticallywhenthisnumberofsegmentsisexceeded,andRAIDwillinformyouofsuchhappening.Generally,thesetupofadiskpartitionwithaswappingfileofabout10000pagesisadequateformostusers,butsomehaveneededtogoto12000;"setup"byCREATEFILE.RUNonanewly-installeddiskwillkeepthenumberofsegmentsassmallaspossible(oftenjustoneortwo),andafewextensionsbeyondthatwillprobablynotcauseanyharm.---------------------------------------------------------------------------- c8a qt$|M& %)`2 X)"3#0'),01 ^ ], [  qZ& X  ai: %W  -5=EnU =EnUT FNV-R BQ BO OWN W_0L mu%}-K u%}-5I  x(08aH 6>FF  dltED W_goCy u%}-A 8@H@s 5=En>  =m S[ c; HP:g 8 7a K5 4[ 2  f S1U /  o#($%&(e*/ 5r58<?hBDHb.O GD!>$%*6-N0, +I g&"%;&8)/Q2s4W <>?D/F) %Y"q'+.1c48*C%EVHm# 4 SP "7  ?V>$P%*\./2l347 =@F1 Du +  "%').2356U9? A&CFmJ D  ~ 'O'+!-0%27: ACF$G%    u "&(,/2e4(5%9>@zC8IFII  Z a &*5,13.89=:{@CG'I J]_ H $&&W)+],Z/47j8g>I@BEI pS $ '!+-:.0|49;f HQJ)  Y{$&3+-k02Z7i;F=@5AEGH  ] %#?%) +~ L q?[{~GACHA  TIMESROMAN ~GACHA a " - M9 \D P Z <f r } wj/l({PHYLUM}FUGUE>RELEASEMESSAGE.TXT;1JONL.PA19-AUG-83 08:23:08