c Xerox Corporation 1980Inter-Office MemorandumToMesa UsersDateJuly 11, 1980FromRichard JohnssonLocationPalo AltoSubjectMesa 6.0u Change SummaryOrganizationSDD/SS/MesaXEROX Filed on: [Igor]Doc>Summary60u.bravoThis memo outlines changes made in Mesa since the last alpha update (Mesa 60.t, June 11, 1980).It contains changes from the documents contained in that update (those documents are also beingupdated to correctly reflect the differences between Mesa 5.0 and Mesa 6.0). As Mesa60u.press thisdocument also includes documentation of two new Debugger tools and a list of ARs fixed since6.0t.LanguageThe language extensions to Mesa 5.0 have been modified in the following areas:DIRECTORY clauses have an additional form for dealing with parameterization.Uncounted zones have been modified.The type specification StringBody[n] describes a STRING of n characters (n need not be aconstant); it can be only used with NEW and SIZE.The Mesa 6.0 Compiler Update has been updated with complete descriptions of these changes.SystemAll of the system interfaces have been recompiled for 6.0u. This means that all modules must berecompiled/rebound to use the new Mesa.image. No source changes are necessary. Several newinterface items and defaults were added. Additions include:ForgotDefs: all item are now in SegmentDefs and copied into ForgotDefs for temporarycompatibility. You should remove references to ForgotDefs as soon as possible.FrameDefs.LoadConfig added.Process/ProcessDefs.Aborted = ABORTED.SegmentDefs.DefaultBaseN (N IN [0..3]) added.˙î$˙ďpqôXî]ďg~rôiî śďcsî]qôX î-¤sî7Bq î śď]űsî]qî-¤sî7Bqî śďYsî]tî-¤s î7Bq îüďSěuqî ˇďM˙sôFđ/î ˇďGĚqôšđ6ô›đ)î ˇďF$ô đ&ôĄđ9î ˇďD}ôˆđLô‰î ˇďBÖôąđ'ô˛đ5î ˇďA.î ˇď=/tî ˇď9áqôđNî­ď6’sqđCî­ď3Cđ#î­ď/őôžôŸv q sqvq vq î­ď.Môđ$sqsqî ˇď*˙ôÄ ôĹđNî ˇď'tî ˇď#ąqôđ`î ˇď" ôŠđOôŞ î ˇď bôđ<î­ďv qô•v qô– v q î­ďlôđ0v qî­ďvqî­ďĎvđ%qî­ď€vq˙üŇ>çd ŮMesa 6.0u Change Summary2DebuggerIn addition to many bug fixes and some performance improvements, the following changes oradditions have been made:AScii Display [address, count] is equivalent to interpretingLOOPHOLE[address, POINTER TO PACKED ARRAY OF CHARACTER][0!count].ATtach Condition [BreakPoint#, Condition] changes a normal breakpoint into aconditional breakpoint. Restrictions on conditions are as in the Mesa 5.0 debugger. Theinterpreter evaluates conditions at attach time in the context of the breakpoint.ATtach Keystrokes replaces ATtach Expression.ATtach Loadstate [imageFile] attaches the initial loadstate of an image file ratherthan the current loadstate. This command is for wizards only. Don't worry if you don'tunderstand.CLear Break [BreakPoint#] clears breakpoints by number. Typing insteadof a number will clear the current breakpoint, i.e. the one that got you into the debugger.CLear Condition [BreakPoint#] changes a conditional breakpoint into a normalbreakpoint. Typing acts the same as in Clear Break.CLear Keystrokes [BreakPoint#] undoes ATtach Keystrokes. Typing acts the same as in Clear Break.-- comments can now be entered in display stack and display process modes.Type REAL is supported for output only. You cannot type in or do arithmetic on REALs.Variables declared in nested blocks are shown indented according to the nesting level indisplay stack mode."?" in a variable display now uniformly means that the value is out of range; ". . ." isused to indicate that there are additional fields which cannot be displayed due to lack ofsymbols.Debugger User InterfaceThe method for invoking scrollbars remains the same but, the scrollbars themselves are twice aswide and you can "see through" them.The keyset edit functions are now also available on the keyboard as control characters:Ctrl-C-- CutCtrl-F-- PasteCtrl-K-- Replace/NextCtrl-N-- NextCtrl-R-- ReplaceCtrl-S-- Stuffî ˇďfńtôîGďî ˇďbî ˇď^ĎqôĐđ!ôŃđ8î ˇď](ôî­ďYŮwqî­ďX2wđ@qî­ďTăwô“đ)qđ#î­ďS<ôĽđJôŚî­ďQ”ôđQî­ďNFwq wqî­ďJ÷wôŹqô­đ7î­ďIPôĽôŚđ<î­ďG¨ î­ďDZwô§qô¨đ7î­ďB˛ôšđHô›î­ď?dwôÝq ôŢđ%î­ď=źôđ=î­ď:nwô–qwô— qî­ď8Ćôî­ď5xwqđHî­ď2)ô™wqđ8ôšwqî­ď.Úô´đGôľî­ď-3ôî­ď)äô˘đOwôŁqî­ď(=ô§ô¨đSî­ď&–î ˇď"—tôî ˇďHqôśđ*ôˇđ5î ˇďĄôđ$î ˇďRđWîŹďîĹîŹď\îĹîŹďľîĹîŹď îĹîŹďfîĹ îŹďżîĹ˙– ˇx=çY“÷Mesa 6.0u Change Summary3Note that edit functions are available only if the window is editable.Reporting Debugger ProblemsThere is a new command in "//" mode to aid in collecting data for reporting debugger problems:Trace Stack dumps the debugger's call stack in octal.ARs reporting debugger problems that result in uncaught signals or entering "//" mode for anyother reason should be accompanied by a debug log which includes the output of this command.Distribution:Mesa UsersMesa GroupSDSupportî ˇďfńtôîGďî ˇďbqđ=xqî ˇď^tî ˇďZĐqô“wqô”đ1î­ďWvô qđ*î ˇďT3ô­ ôŽđ@wq î ˇďR‹ôĽđ7ôŚđ%î śďKî î ČďJGôX î ČďHŸ î ČďFřđ śFą=ç!ZP110.0 File ToolThe File Tool provides a means of dealing with the files on the local disk as well as remote filesystems from within the Development Environment.10.1 The User IllusionThe File Tool employs the standard features of the Development Environment. See section 3 forfurther details.10.2 Tool AppearanceBelow is an illustration of a File Tool with the List Options window (explained below) alsoavailable.<==gôspđ6îď;rpđEîď7ĘrpôĚđ$ôÍđ4îéď6#ôđ'îď1Pqîď.%pô…đLô†îď,ĄôŁô¤đUîď+ôłô´rpîď)™ô  ôĄđ5rpîď(ôđQîď$ĆôƒđMrpô„rpîď#ôrpđ0îďĐr pôšđ@ô›rpîéď(îďÚr pô˜đ!rpđ#ô™ îéď2ô—đEsô˜îéď‹ô!pô"îéďär psôîď•rpôđ&rpôžtspîéďîôđ-îď ŸrpôŒôđVîéď řôîďŠr pđ>îďZr pô…đItpô†îéďłôČđ+ôÉđ'îéď ô„đRô… îéďdôđ-˙ Ć ˇ7=çYÔ%3Remote-Delete! deletes the file name specified in Source: from the remote file system. You maydesignate multiple files by the use of * expansion only to the extent that the remote serversupports it.Retrieve! transfers the filename specified in Source: from the remote file system to the local disk.The filename must conform to the file-naming conventions on the remote host. You maydesignate multiple files by the use of * expansion only to the extent that the remote serversupports it.Close! closes the currently open FTP connection.If Verify is TRUE, then for each file that might be transferred, the following commands are displayed Confirm! do the operation.Deny! don't do the operation.Stop! don't do the operation and terminate the command. This may take some time while the terminationis negotiated with the server.10.5 List Options windowThe List Options window is created by the List-Options! command. The properties that will bedisplayed, in addition to the file name, by a Local-List! or Remote-List! are governed by thebooleans in this window. After changing the options to be shown use Apply! to effect thosechanges. The Abort! command will restore the options to what they were before the List-Options!command was chosen. Choosing either of the commands in the List Options window will causethat window to be removed.10.6 ExceptionsThe actual transfer takes place in a background process so the user is free to issue other commandsor even change the values in the parameter subwindow without affecting the command currentlyexecuting. Changing a parameter while the FileTool is waiting for Confirm! will not affect thename of the destination file; you should abort the transfer and reissue the command with thedesired parameter already set.Warning: If you are using the FileTool from inside the debugger, be careful not to change any filesout from under the program you are debugging; the debugger makes no provisions for checkingthis when you delete or update a local file!î<˘ďEopîď@œr pô‰ôŠrpđ&îéď>ôô‘ô’đDîéď=Mô îď9ţrpô‹đ&rpôŒsîéď8Wpôœđ,ôđ)îéď6°ô‘ô’đDîéď5ô îď1şrpđ+îď.Žôrpupđ=ô‚ôîď+@rpîď'ńrpîď$˘rpôˆđ&ô‰vđ-îéď"űôîď(qîďýpô­đ*r pôŽđ&îďyôźđ"ô˝ r pr pîďőôĐôŃđ&rpîďqô rpđ:ô‘r îďípôŽ ôŻđOîďiôîď=qîď pôŒđZôîď Žô°đ4ôąđ(îď ôşôťđ#rpqp îď†ôĘôËđ?îďôîďłqô pđ:ô‚îď ôŻđ"ô°đ9îďdôđ,Ô ˇ!‚>çF‰ňInter-Office MemorandumToMesa UsersDateJuly 11, 1980FromJim Sandman, John WickLocationPalo AltoSubjectIntegrated Mesa EnvironmentOrganizationSDD/SS/MesaXEROX Filed on: [Iris]Doc>CommandCentral.bravo (and .press)DRAFTThis memo documents a small executive called Command Central; this Tool is intended to beinstalled with the Debugger and can be used to invoke the Compiler, the Binder, and clientprograms, all of which upon completion are directed to return to Command Central rather than tothe Alto Executive. The idea is that, while programming in Mesa, you enter Command Central'scontrol only once, and you rarely have to leave it; this is made possible by the editor that is nowincluded in the Debugger, as well as by the context switching facilities provided by CommandCentral.InstallationTo include Command Central in the Debugger, type the following Alto Executive command wheninstalling, after retrieving PupAndFtp.bcd, FileTool.bcd, andUtilities>CommandCentral.bcd. (If you have more than 64K of memory, be sure to consultthe Installation section of the Debugger documentation before proceeding.)>XDebug PupAndFtp/l FileTool/l CommandCentralWhile it is possible to use Command Central without also installing the FileTool, including it willhelp minimize the number of times you have to leave the Mesa environment. If you have enoughmemory on your machine, you might consider installing other Tools with your Debugger as well(e.g., Chat, SndMsg).Entering Command CentralWhen using Command Central, the Debugger becomes the executive from which all programs areinvoked. To first enter this environment, type>Mesa/dto the Alto Executive. You can now use the FileTool to retrieve the modules you wish to work onand the Tools editor to modify them. When you have finished your changes, turn your attention tothe Command Central window.îaďUřpôiî şďQqîarôX î+¨qî5Fr î şďLRqîarî+¨qî5Frî şďG\qîasî+¨q î5Fr îďBCtrî ťď;_qôFđ;î=‹uî ťď5 rôÇôČđPî ťď3aôŰđ+ôÜđ/î ťď1şô•đPô–î ťď0ôŁđEô¤î ťď.kôđWôž î ťď,ÄôÇđTôČî ťď+î ťď's î ťď#Ďrôšđ>ô›î ťď"'ô’vrô“vrî ťď €vđ"rô™ôšwđ8î ťďŮôđJîąďŠvđ-î ťď;rô“ô”đ1xrî ťď”ô’đ*ô“đ3î ťďíô­đTôŽî ťďEôxrxrî ťďFsî ťď řrôœôđHî ťď Pôđ/îąďvî ťďłrôƒô„xrđ,î ťď ô…đ$ô†đ=î ťďdôRüŠ=çWYďIntegrated Mesa Environment2Command Central WindowThis window implements three fields and five commands; it also supports the standard windowoperations (scrolling, growing, etc.).<==Dˆ!@H•""Tˆ DT‰"""""dČ!AH•2"TČ DHT‰2 ""ˆŠ"X° ‡,âT° CˆTxŃŔˆˆˆŠ@€€ €ˆˆ""@€ €ŕ""""""ˆŠˆˆˆŠˆˆ""""""""ˆŠ˙˙˙˙˙˙˙ˆˆˆŠG÷˙ď˙ń˙ý€ˆˆ""[˙˙ď˙ö˙ý€€€""""[ÇO.:vńĺ‡8°@‡8°ƀ""ˆŠC÷6ÍŮ°îف&DČ@&DČ$I€ˆˆˆŠ]÷vě÷oÝA"|€A"|€$€ˆˆ""]÷víű÷oÝA"@€A"@€$€""""]÷vÍŰ÷nŮA&D€@A&D€C$I€""ˆŠC÷w.;đńĺ8€@8€BƀˆˆˆŠ˙˙˙˙˙˙˙ˆˆ""˙˙˙˙˙˙˙""""˙˙˙˙˙˙˙""ˆŠˆˆˆŠˆˆ""""""""ˆŠˆˆˆŠ@€@ˆˆ""@@Ŕ""""XqcÁH–,8°@ÇqąĂG""ˆŠd‰‘ˆ™2DČ@H‘P$ȀˆˆˆŠ"D‰‘"|€OŒQäO€ˆˆ"">D‰ˆ‘"@€H"R$H"""""d‰!I‘"D€@H‘"R$Ȁ""ˆŠ"XqÁF‘"8€@GQăGˆˆˆŠ@ˆˆ""€""""""ˆŠˆˆˆŠˆˆ""""""""ˆŠˆˆˆŠˆˆ""""""""ˆŠˆˆˆŠˆˆ""""""""ˆŠˆˆˆŠˆˆ""""""""ˆ‹˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙řˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆ""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""ˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆ""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<==<<îď[Xsôî<8îďV…îďS6rôżđ'ôŔđ4îďQôđ&îďN@,îď4XôáôâđJîď2ąôˆvrô‰wđ'îď1 ôđLîď-ťrôvrvrvrô‚đ'îď,ô˜vrvrvrô™vrîď*lô„vrvrvrvrô…îď(ĹôĄđLô˘îď%vôîđ]îď#ĎvrôžvrôŸđ)îď"'ô›đZôœîď €ôîď1ô vrô!đ<îďŠôŤôŹđBîďăvrôŞvrôŤvrîď;ôăvrôäđ)îď”ôđ(îďEô‘ô’đHîďžô…ô†đEîď÷ô’ô“đNîďOô‚ôƒ vrđ/îď ¨ôîďŠsîďZrôˆvrđ!v r ô‰îďłôŒ vrôvrvîď rô wđDô‚đ&îďdrôđ?xrxr ˇ ™>ç\r˙î˙ďd˙üČ % @ő0dpî˙ďdńJ.° ˇYuŔäIntegrated Mesa Environment3You can also run arbitrary .image and .run files using Command Central, but unless they havemade provision to return control to the Debugger, they will exit to the Alto Executive uponcompletion. Use the Mesa/d command to reenter Command Central.LimitationsIf you use the Compile!, Bind!, Run!, or Go! commands when you are in the middle of adebugging session (at a breakpoint or an uncaught signal, for example), the state of the client willbe lost. In particular, normal termination processing of the client will not take place (e.g., open fileswill be left dangling).Distribution:Mesa UsersMesa GroupSDSupport˙îď ]sôî<9îďŠrô˜vrvrô™đ2îďâôÚđVôŰîď;ôvrđ$îď INCORRECT TYPE errors in three or four 4632 MBrown Compiler LONG DESCRIPTOR FOR ARRAY OF longDescriptorRec 4637 McJones Compiler Missing . in subrange constructor gives ERROR in Pass 3 4670 McJones Compiler Wrong SIZE of M.D. record with explicit bit positions 4731 birrell Compiler Type mis-match on initialising to imported variable 4760 Newman Compiler "Foo.run/r" puts "Foo.run/" in Com.cm 4780 ayers Compiler Catch phrase in imported INLINE gives pass 4 error 2052 McJones Debugger Doc: Return Values vs Local Variables 2336 Hamilton Debugger Can't Comment in Display Stack Mode 2431 Schwartz Debugger Doc: One dash (rather than two) defines a comment. 3648 Levin Debugger Attach Image to use current loadstate 4160 LNelson Debugger Condition breaks vs subranges 4419 Murray Debugger ARRAY [0..1000) OF WORD 4421 Murray Debugger very long STRING printout 4437 Murray Debugger process not bound 4518 Hamilton Debugger Leaves Display Stack mode unasked 4564 Kayashima Debugger Xdebug Hangs when Move or Grow sized window 4575 mbrown Debugger infinite chain of uncaught SIGNAL 10601B, msg=177777B 4576 Sweet Debugger Nested blocks in main body 4614 Kayashima Debugger Stripping Bravo Trailers 4619 birrell Debugger source windows: length increase not displayed 4633 mbrown Debugger Confusion about contexts 4672 Gobbel Debugger Debugger bitmap goes away sometimes if Edit is used. 4680 morris Debugger Debugger crash 4739 Levin Debugger Internal debugger won't install 4743 Levin Debugger Lockup while repainting windows 4745 Murray Debugger Can't install Internal Debugger 4758 Newman Debugger "ATtach TtachSymbols" 4761 Newman Debugger Misleading error message from Display Frame 4777 Murray Debugger context mixup 4781 ayers Debugger missing source during DisplayStack 4783 ayers Debugger Debuggers erxtra-memory bitmap space 4789 ayers Debugger temp>xdebug.image Intall problems 4804 Levin Debugger Debugger bootloading: NIL PuntInfo gives PointerFault 4824 Newman Debugger Interpreter doesn't know size of UNSPECIFIED 4844 Newman Debugger ATtach Conditon command rejected 2906 israel Ether Pup: FTP: Slow on Dorado 3626 Murray Ether FTP: sending mail 3900 Murray Ether FTP: UNWIND from FTPEnumerate/retrieve 4352 Karlton Ether FTP: FTPAltoFile.PreProcessFile does a blind ReleaseFile 4456 Birrell Ether Pup: FTP: Recompile packages to fix long return record bug 4499 Murray Ether FTP: FTPTransferFile doesn't pass through the creation date 4544 birrell Ether FTP: FTPRetrieve hangs until timeout on a "no" mark 4552 Birrell Ether Pup: ByteStream timeout 725 White System Pause primitive 2007 Murray System Image Files Poisoned With Bad FP 3061 israel System Nil and bounds checking 3129 Olmstead System Request for info 3619 Levin System Bootmesa hack 3661 Birrell System Aborting process in ReadChar leaves keyboard monitor locked 3668 Birrell System XMesa Nucleus: determining memory size 3751 Wyatt System re: MakeImage problem (see previous AR) 4108 Levin System More processes and GFT slots in Mesa.image 4218 Levin System RunConfig: Return global frame of the control module loaded 4244 Levin System Loader Bug 4245 Levin System UnNewConfig bug 4267 Levin System UnNewConfig bugs: FindNLinks bugs 4410 Schmidt.PA System GetFileTimes should use ActOnPages 4441 Murray System ABORTED#ProcessDefs.Aborted 4604 Newman System FrameDefs.[New/Run]Config should return a GlobalFrameHandle 4662 McGregor System Allocating Space in Specific Banks 4786 mitchell System Incorrectly raised InsufficientVM error îďbÂîGCîď_†đ`îď^Ođ`îď[áđ`îďZŞđ`îďYsđ`îďX<đ`îďWđ`îďUÎđ`îďT—đ`îďS`đ`îďR)đ`îďPňđ`îďOťđ`îďN„đ`îďMMđ`îďLđ`îďJßđ`îďI¨đ`îďHqđ`îďG:đ`îďFđ`îďDĚđ`îďC•đ`îďB^đ`îďA'đ`îď?đđ`îď>šđ`îď=‚đ`îď