(FILECREATED "26-Nov-85 09:55:30" ("compiled on " {ROSEBOWL}LISP>BUGREPORT.;13) "12-Nov-85 14:59:23" recompiled changes: BUGREPORT BUGREPORT.CHOOSEBREAK1 BUGREPORT.GETUSERCOMMENT BUGREPORT.MAKEREPORT? BUGREPORT.PRINT BUGREPORT.PRINTVARVAL in "INTERLISP-D 19-Nov-85 ..." dated "19-Nov-85 10:39:55") (FILECREATED "26-Nov-85 09:54:57" {ROSEBOWL}LISP>BUGREPORT.;13 20614 changes to: (FNS BUGREPORT.GETUSERCOMMENT BUGREPORT.PRINT BUGREPORT.PRINTVARVAL BUGREPORT BUGREPORT.CHOOSEBREAK1 BUGREPORT.MAKEREPORT?) (VARS BUGREPORTCOMS) previous date: "12-Apr-85 13:08:45" {ROSEBOWL}LISP>BUGREPORT.;11) BUGREPORT D1 (I 2 ERRORN I 1 BRKTYPE I 0 BRKFN F 0 BUGREPORT.EXCLUDED.FRAMENAMELIST) 6`g`P !``g`gggg  (63Q ERROR! 57Q BUGREPORT.PRINT 54Q PACKFILENAME 16Q BUGREPORT.MAKE.FLOPPY.FILE) (50Q TTY 45Q EXTENSION 42Q BUGREPORT 37Q NAME 34Q BUGREPORT.DEVICE 31Q HOST 26Q BUGREPORT.EXCLUDED.FRAMENAMELST 23Q BUGREPORT.FRAMENAMELST 12Q BUGREPORT.FRAMENAMELST 5 {FLOPPY} 2 BUGREPORT.DEVICE) () BUGREPORT.CHOOSEBREAK1 D1 (I 5 ERRORN I 4 BRKTYPE I 3 BRKCOMS I 2 BRKFN I 1 BRKWHEN I 0 BRKEXP) qg l oo C1`,E dgohgggg dgg@ABCDEh (156Q ERROR! 151Q APPLY 115Q OLDBREAK1 60Q BUGREPORT.MAKEREPORT? 43Q RESET 40Q CLOSEALL 35Q PROMPTPRINT 32Q ERRORN 17Q CHARACTER 12Q RINGBELLS 5 STKPOS) (131Q OLDBREAK1 122Q BREAK 111Q ERRORN 106Q BRKTYPE 103Q BRKCOMS 100Q BRKFN 64Q YES 52Q BUGREPORT.REPORTNOBREAK? 2 BUGREPORT) ( 74Q (BUGREPORT BRKFN BRKTYPE ERRORN) 27Q " The bugreport in progress will not be created; the system will be reset. " 23Q " An error has occurred while processing a bugreport.") BUGREPORT.GETUSERCOMMENTA0001 D1 (NAME ERRORSET P 0 COMMENTWINDOW F 1 FILENAME F 2 RESETVARSLST F 3 \PROMPTFORWORD.CURSOR F 4 RESETY) XgS hhRcohl oQ ohdHhdl h  Q H Q Q hci(120Q TERPRI 113Q TERPRI 106Q CLOSEW 101Q PRIN1 75Q BUGREPORT.SEGMENT.STRING 72Q PROMPTFORWORD 64Q CHARACTER 45Q PRIN1 32Q CREATEW 6 CURSOR) (2 CURSOR) ( 52Q "Type in comment to be included in bug report as an indication in your own words of what you tried to do. Type a carriage return to end (for no comment, simply type a carriage return): " 41Q "User Comment: " 24Q (404Q 351Q 745Q 461Q)) BUGREPORT.GETUSERCOMMENT D1 (P 2 RESETZ P 1 RESETY P 0 LISPXHIST I 0 FILENAME F 3 LISPXHIST F 4 RESETVARSLST) "S!Tog hgZ JI(35Q ERROR! 30Q RESETRESTORE 16Q BUGREPORT.GETUSERCOMMENTA0001) (24Q ERROR 13Q INTERNAL) ( 10Q (BUGREPORT.GETUSERCOMMENTA0001)) BUGREPORT.SEGMENT.STRING D1 (P 6 Rest P 5 FirstPart P 4 Position P 3 Value P 2 Num P 1 TestString P 0 TempString I 0 String) gkl kl lHK#Jk I@JdH J[JkٺKlH!@kL ]@Lk ^dlH@ @k Ml N (144Q CONCAT 141Q BUGREPORT.SEGMENT.STRING 135Q CHARACTER 126Q SUBSTRING 117Q BUGREPORT.STRING.LENGTH 106Q SUBSTRING 76Q SUBSTRING 45Q STREQUAL 42Q SUBSTRING 30Q EQUAL 13Q ALLOCSTRING 5 ALLOCSTRING) NIL () BUGREPORT.INCLUDEFRAMEP D1 (I 2 EXCLUDED.FRAMENAMELIST I 1 FRAMENAMELST I 0 NAME) >Ai4@dB hkd ggB @kd ggB i@A (73Q MEMB 62Q MEMB 46Q SUBATOM 36Q MEMB 22Q SUBATOM 12Q MEMB) (56Q * 51Q * 32Q \ 25Q \) () BUGREPORT.INITIALIZE D1 NIL gg gg (21Q MOVD 10Q MOVD?) (16Q BREAK1 13Q BUGREPORT.CHOOSEBREAK1 5 OLDBREAK1 2 BREAK1) () BUGREPORT.INITIALIZEFILE D1 (I 0 FILENAME F 0 USERNAME) )ooP @ @ @ @ @ @ (46Q TERPRI 42Q TERPRI 36Q TERPRI 32Q TERPRI 26Q TERPRI 22Q PRIN1 16Q CONCAT 6 GDATE) NIL ( 12Q " SUBMITTED BY: " 3 "BUG REPORT DATE: ") BUGREPORT.INSUREBRFLOPPY D1 (P 1 NEWFLOPPY? P 0 SIZE I 1 FLOPPYNAME I 0 BUGFILE) @g oAo h` hoAo ` I o` Ai A ioo Hni(165Q FLOPPY.FREE.PAGES 156Q PROMPTPRINT 147Q FLOPPY.NAME 137Q RINGBELLS 130Q FLOPPY.NAME 123Q EQUAL 117Q FLOPPY.NAME 113Q FLOPPY.FORMAT 105Q \PFLOPPY.GET.PSECTOR9 101Q PRIN1 66Q FLOPPY.WAIT.FOR.FLOPPY 61Q PRIN1 53Q CONCAT 34Q MOUSECONFIRM 25Q CONCAT 6 GETFILEINFO) (76Q PROMPTWINDOW 56Q PROMPTWINDOW 31Q PROMPTWINDOW 3 SIZE) ( 153Q " Please insert a blank floppy or a bug report floppy. " 144Q "That floppy is named " 73Q "done. Thank you." 50Q " floppy to be inserted into the floppy drive...." 43Q "Waiting for a new " 22Q " floppy?" 15Q "Are you still sure you want to make a ") BUGREPORT.MAKE.FLOPPY.FILEA0001 D1 (NAME ERRORSET F 0 RESETVARSLST F 1 FRAMENAMELST F 2 EXCLUDED.FRAMENAMELIST F 3 RESETY) ;gg hhPcQRg gg gg g ci(65Q DELFILE 56Q COPYFILE 44Q BUGREPORT.INSUREBRFLOPPY 32Q BUGREPORT.PRINT 10Q FLOPPY.MODE) (62Q {DSK}BUGREPORT.SCRATCH 53Q {FLOPPY}BUGREPORT.TTY 50Q {DSK}BUGREPORT.SCRATCH 41Q Bug% Report 36Q {DSK}BUGREPORT.SCRATCH 27Q {DSK}BUGREPORT.SCRATCH 5 PILOT 2 FLOPPY.MODE) () BUGREPORT.MAKE.FLOPPY.FILE D1 (P 2 RESETZ P 1 RESETY P 0 LISPXHIST I 1 EXCLUDED.FRAMENAMELIST I 0 FRAMENAMELST F 3 LISPXHIST F 4 RESETVARSLST) "S!Tog hgZ JI(35Q ERROR! 30Q RESETRESTORE 16Q BUGREPORT.MAKE.FLOPPY.FILEA0001) (24Q ERROR 13Q INTERNAL) ( 10Q (BUGREPORT.MAKE.FLOPPY.FILEA0001)) BUGREPORT.MAKEREPORT? D1 (I 0 ERRORN F 2 WindowTitleDisplayStream) `ooohHdI@KoHdIdi hR HdIdg dgjdndhHdI  d3@ o@ @dh (214Q CONCATLIST 177Q CONCAT 165Q ERRORSTRING 150Q MENU 70Q DSPFONT) (115Q DEFAULTMENUHELDFN 106Q CLRPROMPT 2 MENUTYPE#) ( 171Q " - " 44Q "A break has occurred in the program" 17Q ("Bring up a Break Window" (QUOTE BREAK)) 13Q ("Exit Without Making the Report" (QUOTE NO)) 7 ("Make a Bug Report" (QUOTE YES))) BUGREPORT.PRINTA0001 D1 (NAME ERRORSET P 2 POS P 1 FILENAME P 0 STKPTR F 3 RESETVARSLST F 4 FILE F 5 EXCLUDED.FRAMENAMELIST F 6 RESETY F 7 FRAMENAMELST) gg` hhSco mTg I I I H ZI o` c i WU JI HkX(136Q BUGREPORT.PRINTENTRY 130Q BUGREPORT.INCLUDEFRAMEP 122Q STKNAME 113Q PRIN1 100Q CLOSEF 71Q STKNTH 64Q BUGREPORT.PRINTFORMS 57Q BUGREPORT.GETUSERCOMMENT 52Q BUGREPORT.INITIALIZEFILE 43Q OPENFILE 31Q PROMPTPRINT 10Q CURSOR) (110Q PROMPTWINDOW 40Q OUTPUT 5 WAITINGCURSOR 2 CURSOR) ( 105Q "done." 26Q "Making Bug Report ...") BUGREPORT.PRINT D1 (P 2 RESETZ P 1 RESETY P 0 LISPXHIST I 2 FILE I 1 EXCLUDED.FRAMENAMELIST I 0 FRAMENAMELST F 3 LISPXHIST F 4 RESETVARSLST) "S!Tog hgZ JI(35Q ERROR! 30Q RESETRESTORE 16Q BUGREPORT.PRINTA0001) (24Q ERROR 13Q INTERNAL) ( 10Q (BUGREPORT.PRINTA0001)) BUGREPORT.PRINTENTRY D1 (P 2 VARIABLE I 1 FILENAME I 0 POS) :@ A @ @ "IH A A JKA IH(57Q BUGREPORT.PRINTVARVAL 46Q TERPRI 42Q TERPRI 17Q VARIABLES 13Q STKARGS 7 PRINT 3 STKNAME) NIL () BUGREPORT.PRINTVARVAL D1 (I 2 FILENAME I 1 VALUE I 0 VARIABLE) A go@ABlH(3 TYPENAME) (6 PRINTFN) ( 15Q (LAMBDA (VARIABLE VALUE FILENAME) (printout FILENAME .TAB 5 VARIABLE .TAB 36Q .PPV VALUE T))) BUGREPORT.USERDATA D1 (I 0 INSTANCE) g@o (12Q RECORDACCESS) (2 USERDATA) ( 7 (DATATYPE WINDOW (DSP NEXTW SAVE REG BUTTONEVENTFN RIGHTBUTTONFN CURSORINFN CURSOROUTFN CURSORMOVEDFN REPAINTFN RESHAPEFN EXTENT USERDATA VERTSCROLLREG HORIZSCROLLREG SCROLLFN VERTSCROLLWINDOW HORIZSCROLLWINDOW CLOSEFN MOVEFN WTITLE NEWREGIONFN WBORDER PROCESS WINDOWENTRYFN))) BUGREPORT.PRINTFORMSA0001 D1 (NAME ERRORSET F 0 Form) P h(3 EVAL) NIL () BUGREPORT.PRINTFORMS D1 (P 1 Form I 0 FILENAME) t`dL@ @ o@ @ o@ @ @ H@ o@ @ @ hY@ o@ o @ HX(154Q PRINT 147Q BUGREPORT.PRINTFORMSA0001 137Q PRIN1 126Q PRIN1 116Q TERPRI 111Q TERPRI 104Q PRIN1 73Q TERPRI 62Q TERPRI 55Q TERPRI 50Q PRIN1 37Q TERPRI 32Q PRIN1 21Q TERPRI 14Q TERPRI) (2 BUGREPORT.FORMS) ( 144Q (BUGREPORT.PRINTFORMSA0001) 133Q " ==> " 100Q " ********** " 44Q " Bug Report Forms. " 26Q " ********** ") BUGREPORT.STRING.LENGTH D1 (I 0 String) @ l(3 STRINGWIDTH) NIL () (PRETTYCOMPRINT BUGREPORTCOMS) (RPAQQ BUGREPORTCOMS ((* * This package is intended for use by an applications programmer who wants to shield the user from the possibility of a Lisp break window. Instead of the Lisp break windows, a menu appears asking if a bug report should be made of not. If the answer is yes, the system creates a file (BUGREPORT.TTY defaulting on a floppy if the machine is a DLION, on {DSK} if the machine is a Dorado or Dolphin) which contains information that the system maintenance people can use to determine the cause of the bug. The system is customizeable by the system designer - there are many variables that they can set to determine the exact behavior of the system. See the description of the variables below, or the documentation.) (FNS BUGREPORT BUGREPORT.CHOOSEBREAK1 BUGREPORT.GETUSERCOMMENT BUGREPORT.SEGMENT.STRING BUGREPORT.INCLUDEFRAMEP BUGREPORT.INITIALIZE BUGREPORT.INITIALIZEFILE BUGREPORT.INSUREBRFLOPPY BUGREPORT.MAKE.FLOPPY.FILE BUGREPORT.MAKEREPORT? BUGREPORT.PRINT BUGREPORT.PRINTENTRY BUGREPORT.PRINTVARVAL BUGREPORT.USERDATA BUGREPORT.PRINTFORMS BUGREPORT.STRING.LENGTH) (* These variables should be set by the programmer who wishes to use BUGREPORT to get reports on bugs in his program. If BUGREPORT.REPORTNOBREAK? is NIL then when a BREAK occurs, the normal break window will appear; otherwise, the user will be prompted to create a bug report or not. BUGREPORT.DEVICE should be either {DSK}, {CORE}, or {FLOPPY}, to specify where the file BUGREPORT.TTY will be put when created. BUGREPORT.FRAMENAMELST is a list of frame names that the programmer wishes to see in the bug report. This will very likely be (FILEFNSLST File) , where File is the name of the File that the programmer has created. If BUGREPORT.FRAMENAMELST is T, all frames will be print, if BUGREPORT.FRAMENAMELST is NIL, no frames. BUGREPORT.FORMS is a list of forms which will be printed followed by the EVAL of the form. This is meant to give the system creator the ability to have information in the bug report that might not otherwise be printed.) (GLOBALVARS BUGREPORT.REPORTNOBREAK? BUGREPORT.DEVICE BUGREPORT.FRAMENAMELST BUGREPORT.EXCLUDED.FRAMENAMELST BUGREPORT.FORMS BUGREPORT.MENU) (INITVARS BUGREPORT.REPORTNOBREAK? (BUGREPORT.DEVICE (QUOTE {DSK})) ( BUGREPORT.FRAMENAMELST T) BUGREPORT.FORMS (BUGREPORT.EXCLUDED.FRAMENAMELST (QUOTE (BUGREPORT BUGREPORT.CHOOSEBREAK1 BUGREPORT.GETUSERCOMMENT BUGREPORT.INCLUDEFRAMEP BUGREPORT.INITIALIZE BUGREPORT.INITIALIZEFILE BUGREPORT.INSUREBRFLOPPY BUGREPORT.MAKE.FLOPPY.FILE BUGREPORT.MAKEREPORT? BUGREPORT.PRINT BUGREPORT.PRINTENTRY BUGREPORT.PRINTVARVAL BUGREPORT.USERDATA BUGREPORT.PRINTFORMS)))) (P (BUGREPORT.INITIALIZE)) (PROP PRINTFN WINDOW) (DECLARE: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA) (NLAML BUGREPORT.CHOOSEBREAK1) (LAMA))))) (RPAQ? BUGREPORT.REPORTNOBREAK? NIL) (RPAQ? BUGREPORT.DEVICE (QUOTE {DSK})) (RPAQ? BUGREPORT.FRAMENAMELST T) (RPAQ? BUGREPORT.FORMS NIL) (RPAQ? BUGREPORT.EXCLUDED.FRAMENAMELST (QUOTE (BUGREPORT BUGREPORT.CHOOSEBREAK1 BUGREPORT.GETUSERCOMMENT BUGREPORT.INCLUDEFRAMEP BUGREPORT.INITIALIZE BUGREPORT.INITIALIZEFILE BUGREPORT.INSUREBRFLOPPY BUGREPORT.MAKE.FLOPPY.FILE BUGREPORT.MAKEREPORT? BUGREPORT.PRINT BUGREPORT.PRINTENTRY BUGREPORT.PRINTVARVAL BUGREPORT.USERDATA BUGREPORT.PRINTFORMS))) (BUGREPORT.INITIALIZE) (PUTPROPS WINDOW PRINTFN (LAMBDA (VARIABLE VALUE FILENAME) (printout FILENAME .TAB 5 VARIABLE .TAB 25 (WINDOWPROP VALUE (QUOTE TITLE)) T .TAB 30 .PPF (BUGREPORT.USERDATA VALUE)))) (PUTPROPS BUGREPORT COPYRIGHT ("Xerox Corporation" 1985)) NIL