IMD 1.18: 23/09/2013 10:55:00 II.0 utility  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ÅÙÔÁ×@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@åÖÓñÄèâÁÕ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@æÈÄÙñ@ÄÁãÁ@@@@@@@@@@@@@@@ðøð@ðñððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ðñððñ@ÄÄÙñ@ÄÁãÁðù@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñð@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁññ@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñò@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñó@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñô@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñõ@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñö@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñ÷@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñø@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁñù@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁòð@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁòñ@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁòò@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁòó@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁòô@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁòõ@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ÄÄÙñ@ÄÁãÁòö@@@@@@@@@@@@@ðøð@÷ôððñ@÷óðòö@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@÷ôððñ@ Àß‹tÿý€”vÿú€ÿ ?B-NO BOOT ON VOLUME €ü@ˆ†w pˆ@ˆú‡w À ÿû÷ wPø×­ ×­ú w œ ÿþ÷ ® fŬ& æXT:[aŸ�“ FORMAT.CODE:[ž“« REMOTE.TEXT:[š«Ã CALC.TEXT:[ˆ›ÃË CALC.CODE:[žËã COMP2.Tf€ˆ†wÒW# w v ÿý…‡Í ¡õ ž@æîâˆ÷ ’ —€@ˆ†wPù Ć @& æ¦�ˆ†7 " ÷” BLOCK@÷  ÷„ IS BAD … Ä ¯ä÷  Í EXT:[šÍ×-ÖøÌ‚@÷ &üÓ÷ Ì  # ÷ pø@÷ zw 7 Pø7 Rø÷ &¿ü BÌ g †wDÁ¨ ÷ ªÑ•�÷ ºûÃó‹§ Rì§ À÷ ¢Á¢ñ ñ± À÷ ª sЧ ó‹§ ƒ ãÀÅpÁš÷ x’÷�]Àœ§ ÷ \ÀÁZñ 1± ÷ d Àœ§ sЧ ÷¬§ -çæ2Á&w*ñ ååååååååå UTILITYî~`Cž  YALOE.CODEÞjCžJL2.CODEÞj¢žJQ LIBMAP.CODEÞjŸQUMARKDUPDIR.CODEå7ŸUXCOPYDUPDIR.CODE7ŸX^EDITTORT11.CODEÈŸ^hRT11TOEDIT.CODECžho LIBRARY.CODEžZsžo˜DISASM.II.CODEZå4ž˜� OPCODES.II.0žZ`4ž�§ BASICIO.CODE:k´ž§ÅBASIC.COMPILERk´žÅÕ SC.GEN.CODE:[…žÕíPATCH.DOC.TEXååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååT[Öží PATCH.CODE:[DžREC.DOCUM.TEXTZ7žRECOVER.G.CODEZ–ž$ 11.ERRORSúlòß$' 11.OPCODES UTILITYî~`Cž  YALOE.CODEÞjCžJL2.CODEÞj¢žJQ LIBMAP.CODEÞjŸQUMARKDUPDIR.CODEúlŸ'W ASM11.CODEúlåŸW[ READ.ME.TEXTžZåž[{ XXREF.TEXT:[ªž{„ XXREF.CODE:[šŸ„� FORMAT.TE7ŸUXCOPYDUPDIR.CODE7ŸX^EDITTORT11.CODEÈŸ^hRT11TOEDIT.CODECžho LIBRARY.CODEžZsžo˜DISASM.II.CODEZ åLost workfile sourceͶ͸¹E¶צ Workfile Ͳ.¾Å¡¶².Ͷ Ͷצread inͶ͹*«ö¿¶צNo workåfile to readͶͫ« ­23r"ÒêÌÆž ÆÇžÛÇž «¥$ÛÇ‘ÍáôêÇÿ‚ëÉ¡|Çþ‘ öêÇþ‚ž ÌöêÛÇÿØ‚žåÛÇÿ؂؀‚ž ¥$ÛÇ‘ÍË¡5Æž!¶צOutput file error: HelpͶͥ$ÍžêÇÿ‚Ø‚«¹öêëÉ¡_öëÇëê••ž öêÛÇž¥$Û4ž˜� OPCODES.II.0žZ`4ž�§ BASICIO.CODE:k´ž§ÅBASIC.COMPILERk´žÅÕ SC.GEN.CODE:[…žÕíPATCH.DOC.TEXåT[Öží PATCH.CODE:[DžREC.DOCUM.TEXTZ7žRECOVER.G.CODEZ–ž$ 11.ERRORSúlòß$' 11.OPCODES dnPASCALSYSEDITOR úlŸ'W ASM11.CODEúlåŸW[ READ.ME.TEXTžZåž[{ XXREF.TEXT:[ªž{„ XXREF.CODE:[šŸ„� FORMAT.TE XT:[aŸ�“ FORMAT.CODE:[ž“« REMOTE.TEXT:[š«Ã CALC.TEXT:[ˆ›ÃË CALC.CODE:[žËã COMP2.TEXT:[š;COPYRIGHT (C) 1979, REGENTS OF THE UNIVERSITY OF CALIFORNIAÛÚÅ¡Ú̹ÛÌ­@Ì¥$ÆÍáòêÌ ëê•ÌîÛ•ÌÚêÅ¡ öêöÚÛž¹%¶צnot enough spaceͶÍ̹ôÌ ê¡Ì ê‚«Úê•Çå†Ì¥$öêÜÇ‘ÍÌ¥$Í “ž"Ë�Ü�¡.¥$Ͷצnot enough spaceͶÍà«Ì¹Y܆Ìá¡ê•«öê‚öêßÇ�žêÌßÅ¡7ß•ÌêÇÿå‚«ÝÇ‚ÌÇ‘öêž ÌêÞ‚‚«ßÅ¡ öÝöêÇž¹ö¥$ÍöÚöêÛžÛê‚«öë¿à«­@\ <¶¦YALOE:×Ͷ¢º“¡%¶צ - ? å for detailsͶͥÇôžÇè«¶ÿÌÆž ÛڕLjÉÛÚ•Å„ÌÜ“¡ÆÇôžïÇè‚«Ü¡öïÉ¡Ç}«¥2ž« ÌíÝÈ¡ Æ2ží‚«¹ôå« ÌíÝÈ¡¥í¤¢Ÿší‚«¹ò««ï«« « ¶¢"º« ¶¢,º« ¶¢,º« ¶¡ð¥$ÌÆ²ÍƦ:×ÍÆ²&ÍÆÍÏ¡*¶צ r is ͶïÍ ¶צ bytes, ͶëÍ ¶צ of which are filled, leaving Ͷïë•Í ¶Í¶צYour 'save' text is Ígh space×ͶÍÌïë•ÌïÌÙîÅ¡'¶צ'save' area deleted.ͶÍï«öêöêÚ‚îêÚ‚•žõìöêÚžëÚ‚«êÚ‚«Ú« Ø¡žìÚ‚«­¹¶ïî•Í ¶צ bytesÍ­@ä ªõÇèñž ̶ÌÊ¢ÌÊ¢ÌÊ¢ºÃÌ Ê¢+ºÌÊºÌ Ê¢ºÌÊ¢ºÌÌ Ì«ÌÀ¶á¥® ¹ê¶‚«êɶÉ„¡«¹ êÉêëÅ�¡ë«­t:ƶ® ¶È¡öêöØëê•‚žëêØ••«êêØ••«¹öØöêëØ•‚žëØê••«­Ì¶ÆÍ¶Í ¡óÌÚñËÙ“�¡èÚá¶¢º¡Üǀá̹ǀÌÚñÃÌÙ¡¹òÚÝálíÅ¡gí•«â¡#á¡ ¶õí¾Í¹¶%Ͷõí¾Í¹<õíDƶ® ¶È¡ öØêØ•ž¹ öêØê•ž­,¶ɶ Å�¡#® ¥¶¤ùŸÃ¡ ¥¶¤¢2žõ삾Ìíì•Øõ삞 ÌÙíì•ÃÙdÅ�¾ áÌÌÛÊÈ¡¶ôÍۂ̹ö¹¶ôͶ ͶôÍÚòágâ¡¶¦ orìíÉÌÜ¡ ¸¶צ macro haltedͶ͹öثګ٫ܡž­Z Öì‚«ñõìž ÌØÈØÅ„¡öÆØ¿õìÆØž¥$ÆÍž"á Ç‘ÍË¡7Æž!¶¦Output file error. HELP!×Ͷͥ$͞ƞ!¥$ÍÙ«­sú .Ƴ$ $  ½ØøÆ¼ (^X).ͶͶÆÍÚá « ž¹Úñá¶ÆÍÚñá ž¡î¹0Ø“ÚóÄ¡(¶צ please finishͶͶÍ̶ÆÍ¶Í‹“¡[Í%²Fצ@Quit: U(pdate work file, E(xit without update, R(eturn to editorªPÍ'¶ØÍ¶ÍØøUÃØøuÃ�¡wÆצ*SYSTEM.WRK.TEX ¡óÌÚ Ä¡Ú܂̹ê¶$ͶÍí•«­“;Ýö|¶+< ¶ØÍ¶¦ : IS IN ERROR, COMMAND STOPPED.×Ͷ͞­Tª¥$ÆÍϲ²?ª²&¦SYSTEM.WRK.TEXTת¸Æ¦*SYSTEM.WRK.CODEת¥$ÆÍ¥$͸²צªØøÆ¼‹¡ö­õ. Æž D ÙêšØÈ¡2ÙÙø•šÙø‚‘óöÙøž ÌÙÙøÚ‚šØ‚ÌØÅÙøÉ�¡öÙÙø‚š¹'ëÙø••óöÙøž ÌÙÙøÚ‚‚šØ•ÌØÃÙøëÃ�¡ô­*^ n ¶Í%¶צ!Yet Another Line Oriented Editor.ͶͶͶ¦5Advance Beginning Change Delete Get Insert Jump×Í¶Í¶á Æ® Øê•¸ê¶‚̶ɡØÉ¡ÌöêöØëê•‚žëêØ••«Ø«¹$ØëÄØÉ�¡ ê«ö꿹öØöêëØ•‚žëØê••«­l ¶É¡!êê‘¶öêž ‚צ5Kill List Macro Now ͶͶ¦8Quit Read Save Unsave Verif«êÈ¡ ¸«ž¹"êëê•‚¶öêž ‚«êëÄ¡ ¸ë«žöê²¶ž²²9¯¸ê¶‚«¶¡ö­nv¶É¡ ¶‘¸‘̹Ìì‚y×ͶͶ¦ Write eXchange ?elp×ͶͶ¦%Ctrl-X (can) to cancel command input.×ͶͶͶצ The«Ìõì¾ÌõìØ‚¾ñˡ؂̹öØfÄ¡!¶צ Find too longͶ͞õìÆ9ØžÆ9Ø¿ÆØ¿ÌÌζ•¸¶ÈÚ�¡ôÚ¡'¶Æ9Ͷצ no macros you have defined are:ͶͶצ - Í« ÌíÙÈ¡&¥í¤ùŸË¡¶íÍ ¶צ - Íí‚«¹ö¶Í¶צYour text buffet foundͶ͞Ùɡꂫ¹êØ‚•«ìØ‚«Ø« ­ZªÖ Ö Ìì‚«íì•ñõìž ÌëÚ‚ÌÙïÅ¡@¶¦%insertion truncated, not enou ÌÆÆ(ÍÆ¦.TEXT×-ÍÆª(Æؾ.áÆØÍ¥$ÆÍž"áϹS¶ÌƦFile: ×ÍÆÆ.ÍÆצ is in error. Write not done.KÍywusqoqnHFyFDB@ƒ…:<>@BDéäáÝÛØÚØ»¹·µ³±¯±®ˆ†¹†„‚€ÃŹÛÎ ì‚«¹ì­–ÄÆÍ¶Íž¹!¶¦ Illegal title×Í¶ÍžìØ‚«­(x ÌÆ³ñÿ ½«ìíÉ¡êõì¾ó— —œñ—œ³œ‹ìíÉ„¡â < d´ Ò+ EDITOR ì‚«¹öõì¾ÌÛ-ÃÌÛ³Æ(‹¡ ì‚«õì¾ÌÛÆ¼‹¡,ÌÚ �õ쾂0•Ìì‚«õì¾Æ¼‹“ÚÇ€ Å�¡ôõì¾Ì¹ÌÛ³ €‹¡$ÚË¡ÛÎ ¹Û=á INITIALIOUT COPYFILEENVIRONMPUTSYNTAEDITCOREð‘̹ǼÌì‚«õì¾ÌܡڑÌìíÄ¡žÛ³Iÿþÿÿþÿ€‹¡îÛ¹òϹð¥ÚÎ ¹ð«¹ðΠιðÎ ¹ðÍ%¹ðÎ ¹ð¶¦ Unimplemented×Ͷ͹ðιðιðιðιðιðιðÛÎ ¹ðõì‚¾ÌÆÏÛ³ ‹Ìž¹ðιðιðιðιðιðÎιð¬$?z¹x©©¤¡�›˜š˜{ywusqoqnHFyFDB@ƒ…:<>@BDéäáÝÛØÚØ»¹·µ³±¯±®ˆ†¹†„‚€ÃŹÛÎ ì‚«¹ì­–ÄÛÚÉ¡Û̹ÚÌ­ ÛÚÅ¡Û̹ÚÌ­ ¶ÆÍ¶Í ¡ ÌÚÌ­ Ú¶¢ºÃÚË„¡OÏÌÚ¶¢(ºÃ¡Ì¹6Ú<Æ$Æ�PÇ‘Íζ*ÍΠΡöÆ$ÍÁ’.t† ˆ|XBŒÌl ”ê \ Ð  4ä4 Nb2‹¡$ÚË¡ÛÎ ¹Û=á¶¢(ºÃ¡Ì¹%Ú¶¢'ºÃ¡Ì¹Ú¶¢'ºÃ¡Ì¹Ì¹ ¥�ôÚ¤øÌ­pÚ³ÿþÿ‹¡Ú •̹ÚÌ­* ¶¢Ìð‘̹ǼÌì‚«õì¾ÌܡڑÌìíÄ¡žÛ³Iÿþÿÿþÿ€‹¡îÛ¹òϹð¥ÚÎ ¹ð«¹ðΠιðÎ ¹ðÍ%¹ðÎ ¹ð¶¦ Unimplemented×ͶÍٺˡ ¶ÙºÍعI¶Ù¢ºÍ¹L¶ÙºÍ¹?¶Ù¢ºÍ¹0¶Ù¢ºÍ¹!¶Ù¢ºÍ¹¬¹ QD9,­€¶¹ðιðιðιðιðιðιðÛÎ ¹ðõì‚¾ÌÆÏÛ³ ‹Ìž¹ðιðιðιðιðιðÎιð¬$?z¹x©©¤¡�›˜š˜{ Í­ØÍÏ­ÏÏ¥…F¥„ôªP¶¥„ôÍ­ Ï­ Ï­ Ï­ ¥…ï¿Ï¡ž¹x¥$ÌÆÆ(ÍÆ¦.TEXT×-ÍÆÍž"á Ï¡ž¹D¶¦File: ×ͶÆÍ¶צ is in error. Not readͶÍywusqoqnHFyFDB@ƒ…:<>@BDéäáÝÛØÚØ»¹·µ³±¯±®ˆ†¹†„‚€ÃŹÛÎ ì‚«¹ì­–Äž¹$¶¦File name error.×Í¶ÍžìØ‚«­¡,Z îÆ¶® ¶È¡êٕ̹Ùê•ÌïØ•«îëÈ¡1ï«¶צNot enough room to saveÖÿ í3ð(£‘¢ß²–©ß²ZhýgÚVþÿ[^?`‰Îó%2^jì|í–íî~îrïNðñ8ñ‚ñÂñbóŠòàóRôÆôõ*øÚúöû*ýÿDXêV+ Nb2‹¡$ÚË¡ÛÎ ¹Û=á inͶ͞¶È¡ öÙöîØž¹öêöîØž­t¶á﫹Sëê•Ìïî•ÌêØ‚ÌÙÚ‚îÉ¡öêöÙÚžöîöêØžëØ‚«ö뿹$¶צnot enough ð‘̹ǼÌì‚«õì¾ÌܡڑÌìíÄ¡žÛ³Iÿþÿÿþÿ€‹¡îÛ¹òϹð¥ÚÎ ¹ð«¹ðΠιðÎ ¹ðÍ%¹ðÎ ¹ð¶¦ Unimplemented×ͶÍspaceͶ͞­žh¸®¸®­ì‚«ñõìž ÌØÅØÈ„¡öÆØ¿õìÆØžÆؾ.ËÆؾ]˄צ.TEXTÆÍġƹðιðιðιðιðιðιðÛÎ ¹ðõì‚¾ÌÆÏÛ³ ‹Ìž¹ðιðιðιðιðιðÎιð¬$?z¹x©©¤¡�›˜š˜{ áž¹<¶¦& Please press to continue.×ÍÏ áö«�­R‚ÛÌÌöÛ¾³¡‹¡5öÛ¾áÛ‚ÌÝöÛ¾‚ •̹Þß‚ÌÜß‚Ìà¡ðÚñè•Ü‚‚é•Ïñè•Ü‚‚«öèöÜñè•‚žöé¿é•ÝÏ «ÏèêÏ «­iZ6^Ø üÆÙªP«�Ï϶ÆÍ¶צ what maröÛ¾ á݂̹ ݆‚�Ìۂ̹öÚÛÜ•šÝÌ­eP ^ÏÌ©�ÌÛ¥ÏòÏ «ìØÍÛí‚ÌÇÿ öÛž ÌÙòì•‚Ï Ï ÌöÛÆÚžöÛker? ͶÆ-PͶÍÌ,Æ-¾ÌVÊ,ÊVÈ¡Æ-Ê,Æ-Ê,¾Ï ¿Ê,‚Ì,¹öÆ-ØÆ-¾Ï žØÆ-¾Æ-¾•Ï ž ­ÌC¨ ’צBad disk tranÚ‚¾ Ë¡ ÆÚ•Ï !¿¶ÆÚUÍÛÙ‚‚ÌØ‚ÌØóÅÛéÄ�¡ö­s^† öè¾ Ã¡è̹è‚ÌښܕÌÇÿ‘ öÜž Ü‚ÌÚÚø‚šÚøÙáÜÌÚøóÅ©�Üsfer.Ï­ $©�‚©�ÄÌÛ“¡MÚá%©�‚«�¥�¤¥…o©�©�‚ÍË¡Ï$¹#©�•«�¥�¤¥…o©�©�‚ÍË¡Ï$Û“Ì­h"‚ÃØ“„�ÜÉ�¡öÚøóÅ¡ Û‚«�Ï ÚÙš¹©�Ü‚áØ¡Ï ¹«�Ï ­éd €Øš©�ÌÇÿ öÝž Ý‚ÌÜèÉ¡ØØø‚šÜ‚ÌÇÿ öÝž ݂̹öÝÆÏÚé�È„Úé�©�Ä„�ÌÛ“¡MÚá%¥�¤¥…o©�©�‚ÍË¡Ï$©�•«�¹#¥�¤¥…o©�©�‚ÍË¡Ï$©�‚«�Û“Ì­t!©�ŸéÅ¡ÌÙòÚÛ•èÝ•‚Ï š­Å: XÆÆÏÙØÍ­öÌÌî³ÿ‹“¡Ì¹-ÚÇèÅ¡Ì¹Ú �î‚0•ÌÏ«î³ÿ‹“Û�¡«�¡ÌØáòéÌÜñǸ •ÉÞ„¡uØÏ!ÌÞ¡iÇ‘¥…oÇÿž ǂ̥…oöÜ̩ٞ‚õ•ÌÝßÈ¡/¥ƒFݤø©�•᥃Fݤ‘š¥ƒZݤ¥ƒZݤøÜ‚šÝ‚̹öÜöÛ¡ צRepeatfactor > 10,000Ï̹ÚÌîÏ« ­\€è«öë¾ Ã¡ë•«Çÿ‘ öëž ë‚‚«ë¥Ï«ëí‚«­6ÛÚ•€ñé• ‚Åق̶.͹ôÜ«ö鿹ìñé•‚ÌÚ•ÌÜÏööÚéžÜǸ ÄÞ„¡{ØÏ!ÌÞ¡oÇÿ‘¥…oÇÿž ǂ̥…oöÜÙ•‚ÙžÜÙ•ÌÌ©‚õ•ÌÝßÈ¡1¥ƒFݤø©�¡k¥„ô¦KThere is no room to copy the deletion. Do you wish to delete anyway? (y/n)תPÏÏÏ Yá̹̹(«�¡ÛÚ•€«� ñ©� •‚«‚᥃Fݤ‘š¥ƒZݤ¥ƒZݤøÜ‚‚šÝ‚̹ð¶.͹îñÜ•ÌèÛ‚é•«Ü‘ÏÛ«öÜ‚öÛžöé¿­«ªhÅPpÚÛÄ¡ôöÛ¥…oÚÛ•‚ž¥…�ŸöÛÚÏ ö©�Ÿ©� žÌ­¨ÙØÍÛÛøÚ‚šÇÿ öÛøž ÌÜòÙ•‚Ï Ï ÌöÛøÆÝžöÛøÝ‚¾ Ë¡ÝÏ ÌÆÝ•!¿¶ÆÝUÍÛÛøÜ‚‚š­oÚÛ•‚ÇÿÚÛ••ž ¶Ï"ÌÌ©‚õ•ÌÜÝÈ¡T¥ƒFܤø‘Ã¥ƒZܤøÛÄ„¥ƒZܤøÚÈ„¡-¶á ¥ƒFܤ©�š¹ ¥ƒFܤ©�š¥ƒZܤ¥ƒZܤøÛ•šÜ‚̹ö¶.ÏZfÚ¡ÏØÍØÏ¥íìØÏ¹?Ù¡ ¥�©�Ϲ1ØÍØÏÏëÌÛ¥ÏòÏ «ÆíìØÏØ‚ÌØóÅÛéÄ�¡ö­%`Ì©‚õ•ÌÚÛÈ¡3¥Í¹Ì­ñk ª%ØÃ¡òèÇÈ•Ï ÌÌÚÇþ‚ÙÏ ÌÇÿ‘ öÛž Û‚ÌÚÝÉ¡.ÚÝÎ%Ìߡ݂̹צRan out of disk roomϹÌ߃FÚ¤ø‘á ¥ƒZÚ¤øÙÄ¡¥ƒZÚ¤¥ƒZÚ¤øØ‚ÙÏ šÚ‚̹ö©�ŸÙÄ©�ŸéÉ„¡ ©�ŸØ‚ÙÏ «�Ÿ­TfèÌÚ«Ïöê¾ —©ƒ„—œ‹¡žØ¡6ë•«ÏëÈ“ÛÙÃ�¡ö©�ŸÚÉ¡«�¡¹©�¡©�ŸéÉ„¡ ©�ŸÚ•‚«�ŸéÚ•‚«öÚö镞öé¿Ì©‚õ•Ì ÞàÈ¡*¥ƒFÞ¤ø‘᥃ZÞ¤¥ƒZÞ¤øÚ•‚Ï šÞ‚̹ôèÚ•‚«¹îéö꾩ƒ„— —œ‹�¡öö꾩ƒ„— —œ‹¡è‚̹̩ƒƒÌ¹ëÌ쩃ƒÃ¡©ƒƒÌ¹©ƒ�ÌñéÜ••‚«öÜöèéÜ•žöÜ¿öÜ‚Þ ‚¿Ü‚Ìöè• ¿Ì öè¾ — —œ—œ‹¡ö辕ÌèÌèÇÈ‚é•Ï «ÏëÌÚÇþ•ÙÏ ÌÛÙáÛ̹Çÿ öÛž Û‚‚ÌÝÚÉ¡.ÝÚÎ%Ìߡݕ̹¦Ran out of disk room×ϹÌÛÙÃß“�¡ð©�áè‚«¹è‚«¹ôèÌöè¾ —³ œ‹“¡è‚«¹òöè¾-áö肾 áè‚«ö蕾³à€@‹¡öè¾ Ãö肾 ġ肫èÛ•‚ÌÞß‚©ƒ‚Å©ƒ‚©ƒ�¡©�ŸéÅ„©�¡©�Ÿ©� ‚ÙÉ„�«�¡Ù«öé¿é•ÜÏ «­Ü”±ë†¢ Ïêë•Å¡2öêöë‚éꕞëë‚ê•ÏØØøë‚‚ꕚéë‚‚ê•«öë¿öë‚ì ‚¿­¡¥…F¥…ªPÏ϶¥…Í­& ¶ÍÏ ­ØÍÏ­ÆÙªPž&ØÃ¡Ï¹Ï϶צERROR: ͶÆÍØ•‚ßÈ�¡,öÜ•¾ áÜ•ÌöÜ ¿öÜ‚¿öÜ‚©ƒ� ‚¿Ü‚Ì©ƒ�Ìè‚«öÛöÜßžö蕾 á7öè¾Ã¡Ì ¹+Ïöê¾ Ãö꾩ƒ„Ã�Ì à“¡öÜß‚• ¿ö蕾 áÜ•Ì DÎFÎIÎJÎLÎM ÎN ÎP ÎQ ÎR ÎSÎVÎXÎZÎ,Î>Î.Î+Î-Î?Î/Î=Î<ζ¢ºÃ¡,¶¢(ºÎ¶¢'ºÎ¶(but workfile not updated)ͶͶ¦1 R(eturn to the editor without doing anything×ͶÍÍÍ «î³$ ¢(ºÎ¶¢'ºÎ¶¢+ºÎ Î Î Î0Ì9Ì‚GÜÊ‚GÈ¡ ÜÎ܂̹öÇø*Ç‚Ì ¥ž ÌÆÇžß‚ÌÎ Ç•Ì àÅàáÉ„ß?Ã�¡ôßÇ�•« ‹¡öîRá¹îîEá{ÌÍ¥�¤Í¥‡š¾Å¡c¥�¤¥‡šÍž"á¥�¤¥‡ÃÎ¥�¤Í¹=¶¦-Backup file not present (tried to remove it).×ͶD#Æ�ÌÆ‚øÇ‘ÍÆ�¤Æ‚ÐÇ‘ÍÍ ÎèêÎ «¥�ó†‚Ϋ�¶ Å¡ÍÎÎÍôáÍ ¹ôáÍ ô áöÍ ¡ô¶¢»Æ�ÌÍÆ�ñÉ¡Çÿ« ÆžÙš«�«�««Í¶צ>Edit:ͶͶ¡VÆ Ì‚GÆ‚G²ÍÆ‚G¦:×ÍÆ‚G²&ÍÆ‚GªPÆ Î¥�¤¥‡ÃÍž"Ë¡¦W¤ÍÁŸYBÖŠ~†”¨â8¶NP¼" Ž < x þ  v † p † è ú H”° ª Ö.Ü F‚ò J%Þ¤øÚ•‚Ï šÞ‚̹ôèÚ•‚«¹îéorkfile lost.×͹ô¦4No workfile is present. File? ( for no file ) תP¶¥„ôꦮ PÍ¶ÍÆ ¾Ã¡òÆ ¦*SYSTEM.WRK¥�ô٤ؚٳÿþÿ‹¡ ¥�ô Ù‚¤Øš­.¸ ؾ̶ ÙÈ¡ض ض ¾Í ¿¶ ‚¸ ¹ö¦.TEXTרÍؾ•ÃØ¾Ä„¡ ØØ¾•Í.TEXTתPÆ Îöñ‚ž ö ¿¥‚ôÇž ¥�¤¥‡ÃÍ¥‡š×¦ªPž"Ë¡ ¦System volume not on line×Í¥�¤Î«�©�¡©�•«�¥�¤Æ5©��•¥‡ÃÌÆØPÍÆצ.TEXTUÍÆªP¥‡šÌÆØPÍÆ¦.BACK×UÍÆªP­‡V ˜©‚ôË¡d¥‚ôÇž «ƒ€«ƒ«ƒ~^«ƒ„«ƒ�«ƒƒò«ƒ‚¸ ÍË¡!צFile system terminal errorÍ¥�¤Í²²?ª²&¦SYSTEM.WRK.TEXTת¸¥�¤×¦*SYSTEM.WRK.CODEÍ¥�¤Í¸²צ̶ ØÈ¡¥ƒn¶ �À»¶ ‚¸ ¹ö¥ƒ…²C¨‘«ƒ‡¥ƒ†²C¨«‚ô­P: vÆتP¦:ׯÍÌ,Ê,Å¡ÆÊ,ÍÆ¾*áÆÍÙÆ.:žÆª¥�¤×¦*SYSTEM.WRK.TEXTÍ©�«�¹JÆ Î¥�¤¥‡ÃÍ¥„ôצNot present. File? ªPž"áð¥�¤Î«�Îöñ‚ž ö ¿Îö镾 ËéÃ�¡ öé Æ.&žÆ-»Æ-»Æ- d»Æ-Æ.8žÆ.Ù:ž­¨�lÚ²‚5$ž²‚5¤ø²‚5¤ø•†Ì­(ÆÆ�3Ç‘ÍÆ¥‡šÍž"Ë¡ ¿é‚«>«««�¡«�¶¢%Ì‚GÊ‚G¢º«�Ê‚G¢º«�Ê‚G¢º«�Ê‚G¢º«�Ê‚Gù•« Ê‚Gø•« 󆂫�¶¢»«�ž«��Ωƒ‡‚«ƒ‡ÌÇÿצCan't open backup file! ÍÆ®ÌÚ©�É¡$¦Not enough room for backup! ×Ͷצ Copying to Ͷ¥‡šÍ¶ÍÚ©�•‚«Ì‚GÜÊ‚GÈ¡¥ܤܚ܂̹ìAÌZÌ‚GÜÊ‚GÈ¡¥ܤAšÜ‚̹êaÌzÌ‚GÜÊ‚GÈ¡¥ܤAšÜ‚̹è0Ì9Ì‚GÜÊ‚GÈ¡¥ܤAšÜ‚Ì¹æ¥ ¤ 𥠤 š¥‡oV�Ì©�©�‚Ì¥�¤¥‚ôÍË¡¦Reading Page Zero×͸ ©‚õ•Ì/¶ Ê/È¡"¥ƒF¶ ¤¥ƒF¶ ¤ø©�‚•š¶ ‚¸ ¹öÆ¥‚ôÍË¡ ž ¥…F ªP­L4RpŽ>ÆrÆê¤ºÀØLLzìh  &¦SYSTEM.WRK.TEXTת¸¥�¤×¦*SYSTEM.WRK.CODEÍ¥�¤Í¸²צצWriting Page ZeroÍñdž̥�¤öØÜÍÌž"Ë¡צBad input file.ÍÙË¡CÆöÙÛÍÙË¡¦Ran out of room.×Íž"Ë¡צOª¥�¤×¦*SYSTEM.WRK.TEXTÍ©�«�¹JÆ Î¥�¤¥‡ÃÍ¥„ôצNot present. File? ªPž"áð¥�¤Î«�Îöñ‚ž ö ¿Îö镾 ËéÃ�¡ öé n backup file.ÍÛÙ‚ÌÜÙ‚ÌÙáô¥�¤¥‡š®¥�¤ÍÆ¥‡Ã®ÆÍÚ«�¥�¤¥‡ÃÍÆÍ­µ^úͶצ>Edit:ͶͶצÆتP¦:ׯÍÌ,Ê,Å¡ÆÊ,ÍÆ¾*áÆÍÙÆ.:žÆÆ.&žÆ-»Æ-»Æ- d»Æ-Æ.8žÆ.Ù:ž­�l¥�¤ÆžÆ ¤ØReadingÍ¥�¤Í¥�¤¥‚ôÇ‘ÍË¡צ Reading fileͶ.ÍÍ­!n¶ÿ¶•Ì­ ¥�ôÇž AÎBÎCΚƥ�¤ž­Í$ÌÍ¥…F¦>Quit:תP¶¥…FͶͶ¦# U(pdate the workfile and leave×ͶͶצ% E(xit  צImproper marker specification.Í ž­ 2ö¶öè¶ž¶‚è¶‚•Íéè‚¶‚•«¥Í#¶‚ÌÆÍ#­>צMarkeÐ ×· �¡U²‚=ÆÍË¡®²‚Ð ×· ¡ ²‚²² Î ²‚ Ð ×· ¡ ²‚ ²²Î ­˜ Æ‚=ƃiǑͥr exceeds file bounds.Í®¥�©�Í ž­:ñéè••¸éè•‚¸è•¸öèö¶¶ž­*צ[²‚ÍÌÚá$²‚Ð …צ& Copy: From what file[marker,marker]? ªPÍ ¶Æ‚PÍ¶ÍÆ‚¾Ã¡ žÎÆ‚=Ƃͥ…¦# Copy: File not present. Filename ר²‚ ×Ð ¨¹öצ]²‚ÍÌÙÃÙÚÉ�Ù²‚¾Ë�¡®Æ²‚Æ.Ú‚ÙÚ••ÍÆ.ªP²‚²‚Æ.Ú•ÍÆ.ªP¦,ׯÍÌØÃ¡®Æ? תPž"áö¥…צ CopyªPÍ ÎÎ àÌÎÞÚÄâ“„¡ Î ÞÚ•ÌιôßÛÉÝÚÉ„¡ÞÚ•Ý•Í Î¹ÞÚ•ÎßÛÄÝÚÄ�â“„¡%Î ÎßÛÉÝÚÉ„¡Ú•Ý•Í Î¹¾Ø•ÌÆ²‚Ø•Í ž²‚ؕؕ•Í ž ÆØ‚²‚ ÛÍ ž²‚ ÛÛ•Í ž ÌÌ.ÛÊ.È¡²‚Û²‚Û¾Í ¿Û‚̹ôÌÌ.ÛÊ.ÆبƺᶦNONE×Í¹ìÆº ÃÆºÄ¡¶צ ChristmasÍ¹îÆºÃÆºÄ¡¶צ New YearsÍ¹ðÆº ÃÆºÄ¡¶צÈ¡²‚ Û²‚ Û¾Í ¿Û‚̹ò̲‚¾Ì.ÛÊ.È¡²‚Û²‚Û¾Í ¿Û‚̹ðצ.TEXT²‚Ͳ‚¾•˲‚¾È�²‚²‚¾¾.Ë„¡#²‚Ì.Æ. Halloween͹òƺ¹öƦJanuaryתP¹ôƦFebruaryתP¹ôÆצMarchªP¹ôÆצAprilªP¹ôÆצMayªP¹ôÆצJuneªP¹Æ¦JulyתP¹rÆצA͹îÍéÇÇ‚«¶¦Writing×ÍÍ ¥ƒ†²C¨©�‚©�áÌ͹î©�‚©�Å¡¦ LPAGE+1>RPAGE×Í©�‚�Ì©��Ìñdž̶*²‚PÍÆ.צ.TEXTUÍÆ.ªP²‚²‚¾¾.ᲂ²‚¾Í­”¿åí°äÙØÈ¡HØÙ•‚ÌèÚ‚Çú‚¶Ä¡&¦Buffer overflow.×Ͷͥ�¤öÝßÍÌž"Ë¡¹ðÜË¡¥�¤öÜÞÍÜË¡¹ðž"Ë¡¹ðÞÜ‚ÌßÜ‚ÌÜáô©�‚©�‚©�•�ÎÌ©‚õ•Ì‚2ÛÊ‚2È¡,¥ƒFÛ¤ø©�Ä¡¥ƒFÛ¤‚«® ž¹² ÙöèÚžèÚ‚«­²V²‚=² ¶¶‚Í˸ ž"Ë¡%¦Bad disk transfer×Ͷ‚«® ž¶.Ͷ “¡Ç‘¥ƒFÛ¤ø©�©�••‚šÛ‚̹ò¥�¤¥‚ôÍË¡¹ð̶ͶצThe workfile, Ͷ¥‡ÃͶצ, is Ͷ©�‚©�‚©�•�Í ¶² Çÿž Ç‚¸¹¸¶‚¸­€¶¶Ķ¶É„¡¶‚¸¶¶•¸­d, ÆÚ¨Ìß¶ÉÆ²ߤ· „¡ß‚̹öƲ¦ blocks long.×Ͷͥ‡š¾Å¡'¶¦The backup file is ×Ͷ¥‡šÍ¥�¤Í¹צWriting out the fileÍ­e |_`ߤ· ¡¦Marker not there.×Í® žÙ²gߤøšØ²SߤøšØøÃ¡ ÙÙø•šØš­h x ¸ ¸Çÿ¸Çÿ¸²‚Ð ×· ²‚ jpš éÇÇ‚«¶¦Writing×ÍÍ ¥ƒ†²C¨©�‚©�áÌ͹î©�‚©�Å¡¦ LPAGE+1>RPAGE×Í©�‚�Ì©��Ìñdž̶*Ð ×· �¡U²‚=ÆÍË¡®²‚Ð ×· ¡ ²‚²² Î ²‚ Ð ×· ¡ ²‚ ²²Î ­˜ Æ‚=ƃiǑͥͥ�¤öÝßÍÌž"Ë¡¹ðÜË¡¥�¤öÜÞÍÜË¡¹ðž"Ë¡¹ðÞÜ‚ÌßÜ‚ÌÜáô©�‚©�‚©�•�ÎÌ©‚õ•Ì‚2ÛÊ‚2È¡,¥ƒFÛ¤ø©�Ä¡¥ƒFÛ¤…צ& Copy: From what file[marker,marker]? ªPÍ ¶Æ‚PÍ¶ÍÆ‚¾Ã¡ žÎÆ‚=Ƃͥ…¦# Copy: File not present. Filename¥ƒFÛ¤ø©�©�••‚šÛ‚̹ò¥�¤¥‚ôÍË¡¹ð̶ͶצThe workfile, Ͷ¥‡ÃͶצ, is Ͷ©�‚©�‚©�•�Í ¶? תPž"áö¥…צ CopyªPÍ ÎÎ àÌÎÞÚÄâ“„¡ Î ÞÚ•ÌιôßÛÉÝÚÉ„¡ÞÚ•Ý•Í Î¹ÞÚ•ÎßÛÄÝÚÄ�â“„¡%Î ÎßÛÉÝÚÉ„¡Ú•Ý•Í Î¹¦ blocks long.×Ͷͥ‡š¾Å¡'¶¦The backup file is ×Ͷ¥‡šÍ¥�¤Í¹צWriting out the fileÍ­e |_`ڕιòž"Ë¡¦ Disk Error.×ÍÎ¥�©�ÍÆ‚=ÍÆ‚=Í­fšÈVø^xª0Œv¦æ* Çÿ¸²‚Ð ×· ²‚  ¹n¥ƒn¶À»¹a¥ƒn¶À»¹T¬-R¹L?  "$&(*,.C2468:<>mB�FHJl¶ØÍ­ƒ‡Í ¶¦).×Í­r> â Í¥…צ+ Environment: {options} to leaveªPÍ «�Î Î ¥…¾ÍÍÍ «î —³žÍ¶צNSet tabs: C(ol# {N(o R(ight L(eft D(ecimal stop} ͶͶÍÌòÌÙÛÈ¡I¥ƒnÙÀº¹(Jœ‹“¡צ Not optionÍÍ ¹òî¹öÍΫƒ~¹ôÍΫƒ¹ôÍÎ•Í «ƒ�¹ôÍÎ•Í «ƒ‚¹{ÍΕ¶-͹.¶L͹$¶R͹¶D͹¬¹¹0( ق̹öÌͶצColumn #Í Í¶Ú‚Í ÚÍÍÍ «ÍÌÍ «ƒƒ¹eͶ¥ƒ„͹UÎÍÍ Î Î ¥…¾Í¹>ÍΫƒ€¹0¬¶AT¹(›A —•q"‹Q<¥…¾Íî —³î³AP ‹¡îιaîCá Í®ò‚Í •Í Ì¹?ôá ÚØ•Í Ì¹-ôá ÚØ‚òÍ Ì¹î©�—³œ‹“¡¶Íî©�ᜋ¡ðÍ ­ "Tv|d FèŠ À ò  Created ×Í¥ƒ…®¶צ; Last updated Í¥ƒ†®¶צ (Revision Ͷ©ô$«­­ Œ¶Í¶¦ A(uto indent ×Í©ƒ~®¶צ F(illing Í©ƒ®¶¦ L(eft margin ×Ͷ©ƒ�‚¥„ô¦Syntax Error #תPͶ¶ Í ¶צ . Type Í­@Æ‚ ƃ7Ç‘ÍÆ‚ צ*SYSTEM.SYNTAXÍž"ˡιò¶ mȡ̹-Í ¶Í¶¦ R(ight margin ×Ͷ©ƒ‚‚Í ¶Í¶¦ P(ara margin ×Ͷ©ƒƒ‚Í ¶Í¶¦ C(ommand ch ×Ͷ ǃȡ̹¶ ǜȡ̹¶ Çþȡ̹ ÌÆ‚ Æ ÚÍˡιôÆ ¾á̶̹ d†Ì¶ Ýd�• †Ì¶ ŽÌÆ Ý0‚¿Æ Ü0‚¿Æ Û0‚¶©ƒ„ͶͶ¦ S(et tabstops ×ͶͶ¦ T(oken def ×Í©ƒ€®¶Í¶éÍ ¶צ bytes used, Ͷñé•¿Æ0ž Çÿ:Æ Ùž ÌÆ ÙÆؕ؞ØÙ‚ÌÇÿ Æ Ùž Ù‚‚ÌÆ Ư Æ Ù¾Ã�¡öÆ Ù¾Ã¡Î¹GÆ Ø‚¥„ôÙØ••ž¥„ôDÙØ••Í ¿ÍͶ¥„ô‚Í ¶¦ available.×ͶͶצ There are Ͷ©�Í ¶צ pages in the left stack, and Ͷ©�©�•Í ¶צ pageͶצ . Type ÍÍÍ á𸠸 ¸ Æ‚ Í­#%¿d„Šast updated Í¥ƒ†®¶צ (Revision Ͷ©ugustªP¹cƦ SeptemberתP¹QƦOctoberתP¹AƦNovemberתP¹0ÆצDecemberªP¹¬ ¹½¯ ”ˆ~sh[K=.¶ÆÍ¶ Ͷs in the right stack.ͶͶצ You have Ͷ©�©�••Í ¶¦ pages of room,×Ͷצ and at most ͶéÇÀ†‚Í ÆºÍ ¶צ, ꦮ ºÇl‚Í ­¦!#%DeTº¶ ÍÌ ÌØÙÈ¡¶Í؂̹ö­,Ø¡¶צTrue͹¶¦ pages worth in the buffer.×ͶͶͭ¶¦ ©�ž©���¡ö¶צ Patterns:Ͷͩ��¡2¶צ = '¶צFalseͶͭ0®ÍÍ ÌÚ³¹@‹“¡@¶צT or FÍ«�Ì©�ÛÈ¡¶©�Í©�‚«�¹öÍÍͶ¥�©�›Ç€Í¶'Í©�ž¡.¶¦ , = '×Ͷ¥�[©�œÇ€Í¶'ͶͶͩ‚õÅ¡¶צ Markers:ͶͶ ̹ôÚTᶦTrue ×Í̹¶צFalse ÍÌ­„Z œ®ÌÍÌÚ — —œ³ÿœ‹“¡¶#ͶͶ©�ÍÚ צ ͸©‚õ•̶ØÈ¡ò¶צ Í¥ƒF¶¤ø‘á ¶ ͹!¥ƒF¶¤ø©�È¡ ¶<͹¶>Ͷ¥‚ö¶¤Í¶©‚õ•˶‚— —œ³ÿœ‹¡öÚ³ÿ‹¡¶ÚÍÛÇèÉ¡ Û �Ú‚0•ÌÚ — —œ‹¡ôÛ̶¦ ×Í­�� œع7-Ì¥ƒn¶À»¹{¥ƒn¶À»ŽÃ„¡¶Í¶¦ ×Ͷ‚¸¹ô¶Í¶Í¶¦ Created ×Í¥ƒ…®¶צ; Last updated Í¥ƒ†®¶צ (Revision Ͷ©  t, E(nd of the file. תPÍ «�ÍÍÍ ÌØ©�—³¡dœ‹¡öØ©�Ë¡ ÍÍØFá Í Í¹cØBá Í Í¹TØSá‹¡öÍ®­G~¥�©�ÍÍ®­o¥…¦< eXchange: TEXT { a char} [ escapes; accepts]תPÍ «�Í#©�Å¡ÍÍ«Í Í¹ô«¹,ØEá'©�©�É¡ÍÍé•«Í Í¹òé•«Ø©�Ë¡ ¥�©�Í®­•=g &¥…¦! CopyèÌÌÍ«îÍá2èÙÅ¡+Ø•Ìè•«öèÆؾ¿¶Í¶öè¾Í¶Í¹Zî áÍ͹Mî©�—©�—œ‹“öè¾ Ë„¡9î³ ÿÿÿÿÿÿÿÿÿÿÿ‹: B(uffer F(rom file תPÍ «�ÍÍ «î©�—³fDœ‹¡öîBáò©�¡“é©� ‚ ‚©�ŸÅ©�ŸéÄ„�¡צ Invalid copy.͹ôé©� “¡?«ÆØö辿öèî¿Ø‚Ìè‚«¶îÍî©�—©�—œ‹¡öî©�áÙ«ÆöèØžÍ¶ÆØÇ€ÍÍ®­Ò„.õè•€PÅ¡r¥…¦L WARNING! You a‚ñÄ¡¦No room×͹{©�¢¡Íë«öèöè©� ‚éè•‚ž©�ŸèÄ©�ŸéÉ„¡ö©�Ÿ©� ‚öè©� ž¹ ö©�Ÿöè©� žé©� ‚«è©� Í¥Í#è«è©� ‚«¥Í#Íèêre about to zap more than 80 chars, do you wish to zap? (y/n)תPÍ «�ÍÍ YË¡ Í®žèõÍ èõÍ Í¡A«�¢èõÍ èõÍ «¥�©�͹ îFážÍ®­ 8®­ ¸Í¶¦Leaping×Í¥ƒF¶¤ø©�È¡-©�Å¥ƒF¶¤ø‘Ë„¡Í•€‘ÍèõÅ¡ öèöõé蕞¹ öõöèéõ•žéèõ•€•«õ«¥�©�ÍÍ®­öÞÍñéè••¸éè•‚¸öèö¶¶žÍ¶è•É¡"צNo room to inÍ«Í Í¹ö¹/©�©�É¥ƒF¶¤ø‘Ë„¡ÍÍé•«Í Í¹ô­1` � ̦Jump toׯÍÆÐ ×· ¡ôÌÙ©‚õÉsert.ÍÍ® žö¶•¿ö¶•ì ‚¿­f¶¶“„©ƒ“©ƒ~�„î©�Ë„¡&é‚«¶•¸¶‚¸Çÿ‘ ö蕞 è‚«ö¶öè¶ž¶‚èÆ¥‚öÙ¤· „¡Ù‚̹öÆ¥‚öÙ¤· ¡צ Not there.͹W¥ƒFÙ¤ø‘ˡΠ¥ƒFÙ¤ø‘Ë¡¦Marker all messed up.×͹ ¥ƒZÙ¤ø«ÍèêÍ ¶‚•Íéè‚¶‚•«©ƒ©ƒ~“„î©�Ä¡è͸² ² Ͷ¶î©�Ã�¶ ÍÍèêÍ «¶‚««�¡õ«�Ÿèõ•«� ®­ÄÌÚ¶È«¥�©�ØÍ­• Ä ¥…¦$ JUMP: B(eginning E(nd M(arker תPÍ «�ÍÍ ÌØBá«Íê«¥�͹)ØEáé•«¥�¡6¸Ì¦No insertion to back over.×ÍÍ ¶ ¶ ͹oÚ¶Çÿ•Ä¡d¶“¡5¦Please finish up the insertion×ÍÍ ¶ ¶ ͸ڶó•͹ØMáÎ ¹ Ø©�Ë¡ÍØ©�—³ $ œ‹¡ö®­Zi ¤ ©ƒ©ƒ~“„¡ÍèðÍ¥�©�͹ צInappropriate environment •Å¡ ¦Buffer Overflow!!!!×Í® ž­«¸î á(¶ ‚Ì¥ƒnØÀºÃØòÉ„¡Ø‚̹öض •¸¹¸è¶‚®¡öè¶ ž è¶‚«­Í«�¡Í®­«R «�©‚õÍ «‚õ©‚õáôÍÌ©‚õ•ÌÙÞÈ¡G¶aقͶ¦) ×Ͷ¥‚ö٤Ͷ¦ ×ÍÙ‚ŽÃ¡¶B V¶¡®öè ¿©ƒ~¡Í¹ ©ƒ¡Íöê¾ Ã¡©ƒƒ«¹©ƒ�«¹«èì‚‚®¡öè‚ì ž èì‚‚«¸­\îáÍ뮡ë«Íق̹ö¥„ôצEMarker overflow. Which one to replace? (Type in the letter or ) ªPÍÍÍ «¥�©�Íî³þÿ¹Hî©�Ãö蕾Ãö蕾 Ã�“„¡è¶‚É¡¸¹è•«¹©�«Íë•®¡ë•«¸­döè ¿ÍíÄ¡ öêöë‚èꕞ¹"è‚í•®¡öêöê‚ôá>«¹<«Í¶ïÍÍ®­A&¥…¦% Banish: To the L(eft or Right תPÍ «�ÍÍÍ ÌØ©�—³‹¡îA•̹¹t¹©‚õÌצSetÆÍÆ×Ð · ¡PÌ©‚õ•ÌÙÞÈ¡¥‚ö٤Ư ¡ÙÌق̹ò¥‚öؤƨ¥ƒZؤ蚥ƒFؤ‘𨩂õá©‚õ‚«‚œ‹¡öØ©�Ë¡ ÍÍØLáÍ ¹ ØRáÍ Ø©�Ë¡ ¥�©�Í®­_ ž¥…¦J Next: F(orwards, B(ackwards in the file; S(tarõ­IwI v¥…¦ Set: E(nvironment M(arker תPÍ «�ÍÍ ÌØEáž¹ØM᮹ Ø©�Ë¡ÍØ©�—³ œ  ¡ ²¶Í¹ ²©�Ͷô Ë„¡Í ¸¶¸¶¸­°"ÌÍØðÈëÅ„¡ë•«Í¶•¸Ø‚̹öê¶ì•í‚ë‚Çÿ öèž è‚̥͂ƒnÛÀºÃÛÚÉ„¡Û‚̹ö¹Í¥ƒnÛÀºÃÛìÅ„¡Û•̹ôÛ¶•€« ï>á®&¹®%ق̹ò­î}6T ’,¸ ¸ ¸©�£¡Mô¹®(¹<®)¹8í•èꕞ¹¸žèí••«öë¿öë‚ ì‚¿­V¸Í«îÍá©�«î©�—©�—œ©�—œ©�—œ³"œ‹¡4¡®¹!î á Í Í «¶É¡®"­T b#ÌÇÿ öèž è‚ÌÙé•ÉØðÈ„¡4Ù‚«Çÿ öèž è‚ÌÙéÉ¡¶‚¸Ø‚̶ó‚á踹ö¶óÅ¡¶®¹î©�—©�—œ³œ‹¡®¹-î!Éî~Å�¡?«¶¡®è‚®¶„¡ ¸öèî¿è‚«¶¡ö­!¤ ¬¶ ¡ ¶ ¶ ͹ ¸ ¶ ¶ Ͷ ó•óĶ �¡®"¹ ¶¶ó•® Íé•ê¶ì•í‚ë‚Çÿ öèž è‚Í Í Í «­‘ ª$Íêèð•ÅèðÅ„¡7ðèê•‚•« öè¾ Ã¡è•«Çÿ‘ öè¶ Í¶ ¶ Ͷ Ͷ óá ¸ó•¸ ¶²¶ ǀ͸­—d¶ Ø‚òÈ¡¶ÙØÍ¶ Ø‚òÄ¡ò¶ Ͷ Ø‚òÅ¡¶!Íò¶ Íž è‚Í «¶•¸Í¹öêèð•Í Í «¶É¡®"²²Í­gr%Çÿ öèž è‚ÌØèð‚ÉØé•É„¡9ðØè•‚•« Ø‚«Íê«¶‚¸ò¶ Ø‚Í ¸ ­P¸¶ ¡¶ òÉ¡ ¶ ¶ ͹ ¸ ¶ ¶ Ͷ ‚¸ ¶ óÅ¡¶ •¸ ¶Í¸¶ Ë¡®­Z¶¡®¶ó‚áë¸Çÿ öèž è‚̹ö¶óÅ¡¶ó•óĶ �¡®"¹ ¶¶ó•® é•èð‚Í «²²Í­€–&Ìï<áRÙØÈèÅ„¡/öè¾ Ã¡è•«Çÿ‘-ö蕞 Çÿ‘ ö蕞 Í è‚ÌèÙ•ÌØ©ƒ‚©ƒ�•ġî-á¶-Ͷ Ø•‚¶ Ͷ Ø•‚¶ ÍöÙöÙ‚ØžöÙ‚ÆØžè‚«öÙ ¿öÇÿ‘ öèž è‚«èÄ¡ ¶•¸Ù‚̹öèÍ «èø ¶É¡®"¹yÙØÈèé•É„¡1Çÿ öèž è‚‚«èéɡق̶‚¸¶ó‚á踹ôèé•ĸÙ‚¿©ƒ~¡èÌÙ«ÍÚ«¹©ƒ�«öÙ‚ì ‚¿®ì¸ ¶ ¶ Í¶ÆØUͶ Ø‚¸ ¸­\ØÌ Çÿ öèž Ì öèÆâžòâ•Ì ÎéÌ¥…צH In ¶óÅ¡#¶ó•óĶ �ô Ã�¶ �¡®"¹ ¶¶ó•® èé•Í «Íê«ì¸­†Ú ê'«¥�Í­Å(é•«¥�óÍ­sert: Text { a char, a line} [ accepts, escapes]ªPÍ Ì«�è•ÌÌÆ Æ ÍäãÍäãÍÌâË¡PáäÅ¡áãͶÆ)ÍìØ‚É¡ì‘Ìöë¾Ãêë•Ä¡ö낾؂ •¸¹eêë•Å¡ öêöë‚éꕞ¹.éñd•Å¡צBuffer overflowÍ*ž¹ öêöë‚éꕞë‚êË¡ëë‚ê•ÍéâÇ€Íäã͹3ÌäãͶÍãóáó•Ì Ìáã‚ͶÆâÇ€ÍäãÍÎî©�—©�—œ©�—œ³© œ‹“¡}¥�ôî¤øá$äòÈ¡¶Í¶ Íë‚‚ê•«öë¿ìØ‚¸öë‚¶ ‚¿ë‚«Í¶Í¶Í¥íì¶Í¶¶Í­‚Ê+ï̸¸ 諸 ¥…¦K Adjust: L(just R(just ¶Íä•Ì ¹ î á æÎ¹©ƒä‚©ƒ‚Ä„¡Î¹îΩƒ“äò•Äî©�Ë„¡¶ÍâËäáĄۄ¡Îäã͹xî á ÎìÌ äã͹gî©�áNãÈ¡$è‚«öC(enter { to leave}תPÍ «�ÌͲ²ÍÌÍ«îÍ« «�£ôá« «�£Í«¥�ôî¤ø« ¹è ¿Æ ©�ÍâË¡ÎÜ¡Í Ì¹ãÍÌ ãÍã•Ì Íìí•è‚ë•Ì äã͹îá Ì äãÍäãÍî©�—©�—œ‹¡öî©�áÙ‚«Ø«Î­4ž (ôá Í« ¹« ô³0‹¡ôôá<«¹>«Ì¸ ¶ “ØðÈ©�£�„¡d؂̮'¶ “¡TÜáÙÎ+¹JÇÿ öêž Ìܹ-©ƒ�ì•Î+¹2©ƒ‚Ú•‚ì•Î+¹%©ƒ‚ ÌÇÿ ö©�ž ©�‚‚ÌÛØÉÚéÉ„¡Ú«�Çÿ öÚž Ú‚‚Ìۂ̹öÌóÍÛ‚Ì٥ͫ¶ ÍÆíìóͶ•¸ÛØÄÙé•Ä�¡ô¸­è9©ƒ�•‚Ú•†ì•©ƒ�‚Î+¹¬¹5.#¹ö¹òôáð‘Î+Ùð•Ì̹vôá ðÎ+Ùð‚Ì̹dôÇ!‹¡OÍÇÿ öêž Ìôá Ì©ƒ�ì•Î+¹-ô áÌ©ƒ‚Ú•g † ¶ ¡^¶óÄ¡)²Íè¶•€¶€Å¡¶•Í ¶®!¹(²ó•Ͷ¶Íè¶•€¶€Å¡¶ ͸ ¹)ô Ãï<öó޶Ã�„‚ì•Î+¹Ì©ƒ‚©ƒ�•‚Ú•†ì•©ƒ�‚Î+¹ î©�Ë¡ÍÍî©�áðÛ«­lš ø*ðÌÌØÌÙÜÈ¡u« ï>á®&¹®%¶Ìï>á)Çÿ öèž ¶  Í¡OèÙÍ èÙ•€‘ÍèëÃÜ„«�¢ÙèÉ¡ öèöÙé蕞¹ öÙöèéÙ•žéèÙ•€•«èÙÍ «ÍêèÍ «¹Ø«¹«�¢«�¡èÙÍ «�ŸèÙ•€«� Ù«¸ ¶Þö“�¡ô­4ù H9Æ.ÛªPÆÚªP¥…Æ.ªPÍ ¶[Í©�£¡ ¶/͹¶ÙÍ ¶צ]: ÍØ¡%¶ ᶦL(it×͹¶¦T(ok×Ͷ “„ÌÝÝ“¶Í®­Ž0ôáÎ0¹ ôáÎ*®¹Î-­ Í«î©�á¶“¡Í Í®žî ö„¡ ¸Í¹¶îÍ­o¶ÆÍ­•¤z<¶€‘¡² ©�¶“ͦ Replace×צ' aborts, 'R' replaces, ' ' doesn'tð¶•‚®<ÍÍ«î©�áÍèêD1î — —œ —œ‹¡®1¹ö­2îÍ «îLḠ®1¹îVá ¸€‘®1¹ îTḠ®1îÍ «îVÃîTÃ�îLÃ�“¡ö®2îSÃîsÃ�¡¸€’­VÍ «®žîRËîrË„¡ð‚« ¹ö©�œèõ•Å¡Y©�œèõ••é‚ñÇȕš9¦Buffer full. Aborting Replace×ÍÍèêÍ «®ž¹ öèöõ©�œ‚é蕞¹©�œ^3®2î©�—³Lÿþÿÿþÿÿœ‹¡(¦Invalid delimiter.×Ͷ“¡Í ®žî¸Ì®1î©�á*ÙÛ¾ ËÛÅ„¡¶ Ͷ©�ÍÛèõ•É¡ öèöõ©�œ‚é蕞¥�[öõ©�œž©�œèõ•Ë¡ õ©�œèõ••Íé©�œ‚èõ••«è©�œ‚èõ••«¸­@=ÌÌÌ€’Ì€‘©ƒ€¡Ì ¹Ì ôáצ Fiï<á®(¹®)¹+¬ ¹$ .,20. 46«�®ž²²Í¶¸¶¸ô¹E®%¹l®&¹hï<á®%¹®&¹[®#¹W®$¹Sð®'¹NðÇè•̹͹ ÙÛî¿Û‚Ìî¶ÃÛÄ�¡öÛÇÿÄ¡.צYour pattern is too longͶ“¡Í ®žØÛ•š­Ã„ Ú4ÌÛ¶ÉöÚÛ‚¾²۾Ä¡ÛÅ¡¦Too many×͹óð�®'¹/®,¹+¬ ¹$* IGb`% Of¶ô Ã�¡ ¶¶Í¹}¶¶á1¶¶‚á͹¶¶•‚̹öÛ¶ÃÌ­#.5öØø¾ — —œ—œ —œ‹¡öØø¾áØØø‚𹨨ø‚š¹ö­,46̸²Ç€ ž ¥�¶²¶žÙ¶“„¡o¶ ¶á ¶Í¹ ¶¶Í¹C¶¶á1¶¶‚á ¶ ͹¶¶•á͹ ¶¶Í¹ ¶¶Í« ®ô³¡ð‹“¡ö¶¡Í Í­/Ä¡¶ ‘²¾ö¶ ž ̹¶ ‘Ìض ‘á ̸¹8¶ Ø‚¸ ¶ •¸ ö¶ •¾á¶ ¸ ¹ö¶ ®5¡¸¹¶ ¸ ¹ô­Äzt ¤7̸ž-ÙÌÚØÈ¡EöÚ¾ á-ڂ̶ÍÚÆÍÌÚØÉÜÅ„¡¶ ÜÍÚۂ̹¶öÚ¾Íڂ̹ö­M X.ÛÚÍÛÌÚÌØ•ÌÜÞÈ¡ÜË¡ÝÜͲǀ ž ¥�¶²¶žÚ¶“„¡oé¶•¶ •‚ÌÙšٲ¾ö¶ ž ̹ÙÌØÙá ̸¹8ض ‚¸ ¶ ‚¸ ö¶ •¾á¶ ¸ ¹ö¶ ®Ì¶Í܂̹öÚØË¡ÌÙÌÜÞÈ¡¶ Í܂̹ô¹ÛÌÙÌÜÞÈ¡¶ Í܂̹ò­4` x!¶Ì¶Ì¶Ì¶Ì¶ ¶Å¡è•Ì5¡¸¹¶ ¸ ¹ô­Äzt ¤8¸¶¸©�›•¶©�›¶• ¥�¶ž ‚Í ¸¶©�›•á¶Í ¸¸¶‚¸­X:¸¶Ìܕ̹¶ ¶É¡¶•ÌèÌە̹/žÚÙÅÚÙÃÜÛÅ„�¡ÞÌÝÌØÌÚÌÙÌØÌÜÌÛÌØÌ¶ €¶€Å¡ÜÚÛÙ®!¹ ÜÚÍÞÝ®.¶¶Í­¶¸¥�¶¾ — —œ —œ‹¶©�›•É„¡ ¶‚¸¹ö¶¸¥¥�¶¾¤ø¥¥�¶‚¾¤øÃ¶©�›•É„¡ ¶‚¸¹ô¶©�›•Í ¸¶‚¸¥�¢/¸ ¸ ¸ ¸è̸ ÍëÌèêÃÌ¥…¦@ Delete: < > { to delete, to abort}תPÍ «�Ͳ²Í¶¾ — —œ —œ‹¶©�›É„¡ ¶‚¸¹ò¶©�›Ã¡¶Í ¸¸­?Џ Ê;¸¶ ¸ ¶ ¸ ¸¶ áÎ:¹Î;¶¶•‚¸ï>á®8¶Ì踶 ¸¶¸¶¸Í«¥�ôî¤ø« ôá Í« ¹« ô³ü‹¡vô¹K®%¹e®&¹aï<á®%¹®&¹T®#¹P®$¹Lð®'¹Gôá<«¹>«Í¶¹®7¶¡v¶ ¸ ¸¶“¶„¡b¶ áÎ:¹Î;¶ ¶‚¸ ² ®6¶¶•‚¸²Ç€ ž ¥�¶²¶ž¶ ¶‚éÅ¡¸¹¶ ®5“¡¸¹ö¶ïͶ¶Í¹"®,¹¬¹13B@[YH_èÙ•¸ ®/¹î©�Ëî©�Ë„¡ Ͷ¶Íî©�—©�—œ‹¡öî©�ápÍÜèêÄ¡ ë«ÙÌÚÌèÙ áx¥²¾¤øAáj¶¡e¶ Åö¶ •¾Ë„¶ È�¡¥ö¶ ¾¤ø¥ö¶ •¾¤øÃ¡¸¶ ¶‚é•È¥ö¶ ¶‚•¾¤ø¥ö¶ ¶‚¾¤øÃ„¡¸¶  ®¹t®¹p®¹l®¹hõ«ÍèêÍ «¥�©�ÍÍ®¹H®¹D¬¡¹Îô Ë¡Î>¹ö­« Êܬ” ¶` š Î ®  2 ž ¼ à>âv|Hd~n ‚2š~Rž êJ  €Àä@þÈ 4!"L#j#ference͹ ¬¹W>%¶ Ë¡)¥�+צ (Í¥�+¶ Í ¥�+צ times)͹¥�+¦ (once)×Í¥�+ÍÌ+¶ ‚†Ì5Ê+Ê5È¡ Æ,® Ê+‚Ì+¹ôî#j%2'l&Æ% ìÐ'à')J*î*z|>D©�¡^¥…צL Edit: A(djst C(py D(lete F(ind I(nsrt J(mp R(place Q(uit X(chng Z(ap [L.2]ªPÍ «­#h ò ¥�+¥#؈¤ÍÌ ¥c؈¤ø¹ö¥�+¦ completely linked segment×Í¥�+Íž¹ô¥�+צ Pascal host outer blockÍ�ÍÍ«îÍ« ­z«�£ôá « «�£®¹ôá Í« ¹« ô¹lÍÍ®¹ö®¹ö®¹ö®¹ö®¹ö®¹ö® ¹ö® ¹ö®¹ö® ¹ö®¹~¹|®¹x¥�+͹ô¥�+¦ Pascal segment×Í¥�+Í¥s؈¤øÎ“Ì ¹p¥�+¦ library unit×Í¥�+Í¥s؈¤øÎ“Ì ¹@¥�+¦ separate proc” LIBMAP edure segment×Í¥�+͹¬@¹ ôÅœl>̥؈¤Ì�Ê�øÊ�ùÇÿ‚dž‚Ì©‚Zä�¡æÆÎ ©‚[¡<ÆÆ�žÌ�Ì�Ê�Ê�È¡Æ�Ê� ˆ¤ÏÊ�‚Ì�¹òÆ�ÆžßË¡êÆÏ¡ìß¹ð©‚Z¡M¥�+Æ Í¥�+¦ global addr P #×Í¥�+àÍ ¥�+צ, I #Í¥�+áÍ ¥�+͹Z¡6¥�+Æ Í¥�+¦ public var base = ×Í¥�+àÍ ¥�+͹Z¡5¥�+Æ Í¥�+צ constant value of Í¥�+àÍ ¥�+͹Y¡5¥�+Ændצ =>ðÎ<¹(צ Replace¦ V(fy =>×ðÎ<«�Î1Î2Î3Ê€’“¡ ¥�¥�›Î4«��ô áÎ1Î2Ì€’Î3Ê€’“¡ ¥�[¥�œÎ4«�žÍ?COPYRIGHT (C) 1979, THE REGENTS OF THE UNIVERSITY OF CALIFORNIAÍôé��„ô é�ž„©��„�¡ìÌÌèÌ åðÈ©�£�Ù„¡îÎ9å‚ÌÙ¡ âß‚«à«ô áÎ=ï<áà•Ì ¹èÌ ¹òï>é�©�É„ï<é�Å„�¡ôÛ¡Y«¹b¥„ô¦4End oØøÌÆÆºÇÿˆ»ÆÆºÇÿˆ»ØÙš­@.ÌÌÆˆ¾ÃˆÌˆÌˆÌÛÞÈ¡$ÚÛˆ¤ÌßøÌÆÜˆ¾Ë¡Ì¹Û‚̹ö­@,f Buffer encountered. Get more from disk? (Y/N)תPÍÌÍÍ «î³Ã@‹¡öîYáAÌ¥„ô¦FindingתPÍÌå•Ìï>áé  TˆÌˆÌÙÛÈ¡AØÌÜÙˆ¤ÌÝÏÝ¢ÏÜ¢`Ùˆ¤øÌÆÏÜ¢`Ùˆ¤ښܢpÙˆ¤Ïق̹ö­H \ÌÌÌÛÜÈ¡"ÚÛˆ¾³•«Í ͹ «Í ÍèÌ ¹¹O¹ðÙ“¡1©�£åÅ„“¡'Û¡«Ì¦Pattern not in the file×͹¦No old pattern.×ÍÍêèÍ «Æ ©�ÿ‡þÿÿ‹“¡¹ ۂ̹öÌ­Ü- >ÌÚÈÚÇÈÅ�¡ÌžÌ ¥�Æ ÚÍË¡,¥�+¦Interface read error×Í¥�+ÍÌÌ ç“ÍÍ®­3lnrtÞ$D©�¡^¥…צL Edit: A(djst C(py D(lete F(ind I(nsrt J(mp R(place Q(uit X(chng Z(ap [L.2]ªPÍ «¹|Ú‚ÌÌÆ ÛÇÿˆ¾³ÿþÿÿþÿ‹¡ÛÌ ÆÆ žÜ4ÃÌ Æ ÛÇÿˆ¾ áÆ Û‚Çÿˆ¾Ã¡ Û•Ì ÇÿÌÛ‚ÌãÛÇÿÅ�¡ö¥�+Æ âÇÍ¥�+Íã¡�ÍÍ«îÍ« ­z«�£ôá « «�£®¹ôá Í« ¹« ô¹lÍÍ®¹ö®¹ö®¹ö®¹ö®¹ö®¹ö® ¹ö® ¹ö®¹ö® ¹ö®¹~¹|®¹xô¥�+Í­Æ‚ è̶áI ¸¥�²¶ÍËÌÙ¡%¥�+¦library read error!×Í¥�+͹¶‚¸² ¶•ˆ¤ØžÙ¡  -----------------------------------------KÍ¥�+Í¥�+ÍØ‚̹ô­°  Æ«‚[¥�Ͷצenter library name: ͶÆ,¶ÆÍž¶ÍžÚYÃÚyÃ�Ì­b$Õ"¶ Íž¶Íž¶¦-Duplicate Directory Marker { July 13, 1978 } ×Íž¶Íž¶PÍ¶ÍÆ,צ¯¡ ¥�+ÍžÆ,*¯¡Æ,¦*SYSTEM.LIBRARYתP¥�Æ,Íž"Ë¡¦.CODEׯ,PÆ,¾‚Í¥�Æ,Í¥�¥ÍË¡¶צÍž¶צ) Enter drive # of user's disk [4 or 5]: Íž¶¥Íž¶Íž¶Íž¥¾Å¡ ¥›¾0•«¹žë0‹¡öë¥Çž¥bad fileͶ͹ö¥Ï¡¥Ï«‚[ˆÌˆÌUØÊUÈ¡]¥Øˆ¤ùɥ؈¤øÉ�¥Øˆ¤øÇ,Å�¥#؈¤Ï“�¡!¶¦not a code fileˆ•¤�Çÿˆ¾«„©„Å©„È�¡K¶צ4Illegal volume name. Do you want to mark it anyway? ͞Γ¡ž¥ˆ•¤�Çÿˆ¤ø Ë×Ͷ͹ö؂̹ô¶¦list linker info table (Y/N)? ×ͶÆÍÙ³Ê@@‹¡ò¶ÙͶÍÙ³Z‹¡ð¶¦1A duplicate directory is not being maintained on ×Íž«„•©„‚Ì„©„ʄȡ'¶¥ˆ•¤�©„Çÿˆ¾Íž©„‚«„¹ô¶«‚Z©‚Z¡o¶¦list referenced items (Y/N)? ×ͶÆÍÙ³@@‹¡ð¶ÙͶÍÙ³ ‹«‚Y¹«‚Y©‚X¡ìצ: .Íž¶Íž¥ˆ•¤�Çÿˆ¤øá¶¦;WARNING! It appears that blocks 6 - 9 are not free for use.×Íž¶Íž¶צ¶¦map output file name: ×ͶÆPÍ¶ÍÆ¦×¯¡ÆצCONSOLE:ªPÆÆ¾›¾.á ÆÆ¾Í¹ ÆÆ¾›¾:Ë¡¦.TEXTׯPƾ‚Í¥" Are you sure that they are free? Íž¹?¶צ3 Are you sure that blocks 6 - 9 are free for use? ͞Ρò¶¦, Do you wa�+ÆÍž"áî¥�+Í¥�+צ LIBRARY MAP FOR Í¥�+Æ,Í¥�+Í¥�+Í¥€Û¾Å¡¥�+ Í¥�+¥€ÛÍ¥�+Í¥�+Í¥�+Í­ gøKÀMnt the directories to be marked? ×͞Ρb¥ˆ•¤�Çÿˆ¤ šë¥Çžë¥Çž¶צ+ Directories are now marked as d.ª6 Æ�+Æ‚WÍÆ�Æ‚/Ç‘ÍÕ‚1¶¦Library map utility [II.0]×Ͷͫ‚XÎ «‚XΡöÆ�+ÍÆ�ÍÁ²lrðuplicate. Íž¹ì¶¦6 A duplicate directory is already being maintained on ×Íž«„•©„‚Ì„©„ʄȡ'¶¥ˆ•¤�©„Çÿèl ~¶^ ¢  ^  ferenced items (Y/N)? ×ͶÆÍÙ³@@‹¡ð¶ÙͶÍÙ³ ‹«‚Y¹«‚Y©‚X¡ìˆ¾Íž©„‚«„¹î¶¦: .×Íž¶Íž¶צ Mark not done. Íž¶צType to exit. Íž¶ÍžÁ+�âæ«õ Œ DUPLICAT Z`re that they are free? Íž¹?¶צ3 Are you sure that blocks 6 - 9 are free for use? ͞Ρò¶¦, Do you wa Í¥�+צ external proc P #Í¥�+àÍ ¥�+͹î¥�+Æ Í¥�+¦ separate proc P #×Í¥�+àÍ ¥�+͹{¦ global×Î ¹m¦ public ×Î ¹_¦ constant×Î ¹O¦ separate×Î ¹?¦ unit×Î ¹3¦ private×Î ¹$¬s¹#aUK©Wâ䪬KMßáè­s 6 Nb,tˆÌˆÌØÙÈ¡ò¥Øˆ¤ÌÚùÅ¡ö¥�+צ Segment #Í¥�+ØÍ ¥�+¦: ×ÍØˆÎ¥�+Í¥�+צF----------------------------- nt the directories to be marked? ×͞Ρb¥ˆ•¤�Çÿˆ¤ šë¥Çžë¥Çž¶צ+ Directories are now marked as dctory of ×Íž«„•©„‚Ì„©„ʄȡ'¶¥ˆ•¤�©„Çÿˆ¾Íž©„‚«„¹ô¶¦: {blocks 2-5}? ×͞Ρ•¤�Çÿuplicate. Íž¹ì¶¦6 A duplicate directory is already being maintained on ×Íž«„•©„‚Ì„©„ʄȡ'¶¥ˆ•¤�©„ÇÿØ EDITTORT b DUPLICAT   ÙÉÌÛ¡ ÙÇÿ‚‚ÌØˆÙ(Ž¿Û¡*Ù(†Ç3‚ÌØˆ¾ Ä¡Ù‚ÌØˆØˆ¾‚(Ž¿¹Ù(†Ì؈Ù(Ž¿ØˆÙ(†¿ÌÌÚÜÈ¡;ØÚˆ¾ÌÙá ̹ÙÈ¡¶ÆÍž¶ÍžÚYÃÚyÃ�Ì­b$Õ'¶ Íž¶Íž¶¦-Duplicate Directory Copier { July 12, 1978 } ×Íž¶Íž¶Ù@‚̹Ùġق̹ ÌØÚˆÙ¿Ú‚Ì¹ö­B®ÆÙ¨ÌÌ ßàÈ¡OÆßˆ¾AÄ¡Æßˆ¤Æßˆ¾@•š¹)Æßˆ¾0Ä¡Æßˆ¤Æßˆ¾•š¹ Íž¶צ) Enter drive # of user's disk [4 or 5]: Íž¶¥Íž¶Íž¥¾Å¡ ¥›¾0•«¹žë0‹¡öë¥Çž¥ˆ•¤�Æßˆ¤šß‚̹öØÆˆ¤øÆˆ¤ø(�‚ƈ¤øÇ@�‚š­{Ž¶Íž¶¦ TITLE SIZE START×Íž¶Íž¶ÍžÇÿˆ¾«„©„Å©„È�¡?¶צ1Illegal volume name. Do you want to copy anyway? Íž¹ò¶¦.Are you sure you want to zap the direÌõÌ¥ÙGˆ¤øÇË¡ô¥ÙGˆ¤ÌÜøÇá[ÜùÆÏ¶ÆÍžÜúÆÏ¶ÆÍžÜûÆÏÆ×Ð · ¡¶.Íž¶ÆÍž¹ ¶ Ížctory of ×Íž«„•©„‚Ì„©„ʄȡ'¶¥ˆ•¤�©„Çÿˆ¾Íž©„‚«„¹ô¶¦: {blocks 2-5}? ×͞Ρ•¤�Çÿ¹¶¦ ×Íž¶ÜüÍ ž¶ØÍ ž¶ÍžØÜü‚Ìق̹ö­À ÌÌõ«¥ÜGˆ¤øÇËÝ“„¡ò¥ÜGˆ¤ÌåøÇáp判ø ˡ𶦠to exit. Íž¶ÍžÁ QŠb°Ë 06 sure you want to zap the dire 4ÌÌõ««¥Ú‚Gˆ¤øÇË¡¥ÚGˆ¤ÌêÝü‚«Ú‚ÌÚ«¹ö¥íGˆ¤øÇÃíFÄ�¡:¶Íž¶¦No space at end of RT11 disk×Í êžê‚««¥‚Çž ¥‚ëÇÿˆØ¿ë‚«­ž> ¥‚Çž «¶Íž¥ƒÍ “¡;¥ƒÍ ¡¥ƒÍž¶Íž Ï Ï ¹¥ƒÆÍžÍÌÛ‘Ë¡ÛÌÌÚÜÈ¡צ ¥‚PÛÍڂ̹ö¥‚Рר¥‚›¥‚ ˆ¥‚¾žÌ­C ¶¶¦ Enter title of output Tex¶ØÍžØÏ ¹öëË¡ð¥‚Çêžê‚«­Í_ | ƃÆ„;Ç‘ÍÕ�9¶¦@Place RT11 disk in drive, indicate unit number [4,5], tt file:×Íž¶¥‚PÍž¶Íž¥‚¾Å¡ò¶צEnter unit # of Pascal disk :Íž¶¥Í ž¶Ížõ¹ö¥‚ÌÆ¦#4:×ÍÆ¥‚V RT11TOTE SÍÆªP¹ô¥‚ÌÆצ#5:ÍÆ¥‚SÍÆªP¹ô¥‚ÌÆ¦#9:×ÍÆ¥‚SÍÆªP¹ô¥‚ÌÆצ#10:ÍÆ¥‚TÍÆªP¹^¥‚ÌÆצ#11:Íž¶Íž¹ô¥í‚Gˆ¤¥í‚Gˆ¤¨¥í‚Gˆ¤¥íGˆ¤¨¥í‚Gˆ¤¢š¥íGˆ¤Ì¥‚ ˆÆˆžÆÝ¢Ï¥‚  ˆÆˆžÆÝ¢Ï¥‚   ˆÆˆžÆÝ¢ÏÝÇšð¥ Çžê«¶Íž¶¦File established at block ×Íž¶êÍ ž¶ÍžÌ­åZ nêì•̶͞¶צNew File Length = Íž¶ØÍ ž¶צ BlocksÍž¶Íž¥í‚Gˆ¤¢¥íGˆ¤üØ•š¥íGˆ¤¢Øš¥íGˆ¤Çšð¥ ;COPYRIGHT (C) 1979, REGENTS OF THE UNIVERSITY OF CALIFORNIAÇž­”¶¦"Enter title of new RT11 text file:×̶͞ÆPÍž¶ÍžÆ¾Å¡ôצ.ÆÍÌÛ‘Ë¡ÛÌÌ.ÚÊ.È¡¦ÙÉÌÛ¡ ÙÇÿ‚‚ÌØˆÙ(Ž¿Û¡*Ù(†Ç3‚ÌØˆ¾ Ä¡Ù‚ÌØˆØˆ¾‚(Ž¿¹Ù(†Ì؈Ù(Ž¿ØˆÙ(†¿ÌÌÚÜÈ¡;ØÚˆ¾ÌÙá ̹ÙÈ¡ ׯPÛÍڂ̹ö¥‚ РרÆ›¥‚ ˆÆ¾žÏ¡A¶Íž¶¦#File Exists - May Not Be Re-written×Íž¶Íž¹Ì­Ù@‚̹Ùġق̹ ÌØÚˆÙ¿Ú‚Ì¹ö­B®Ù †ÌØÙ Ž(Ú Ž�‚Ç@Ú †�‚Dz?•š­$¶Íž¶¦ TITLE SIZE START׉X ö̶צEnter title of input Text file:Íž¶ÆPÍž¶ÍžÆ¾Å¡¥ƒÆÍžÌ­T` ëÇáð¥‚ÇÍž¶Íž¶Íž«©«¥íGˆ¤øÇË¡ô¥íGˆ¤ÌØøÇá[Øù¥Ï¶¥ÍžØú¥Ï¶¥ÍžØû¥Ï¥Ð ×· ¡¶.Íž¶êžê‚««¥‚Çž ¥‚ëÇÿˆØ¿ë‚«­ž> ¥‚Çž «¶Íž¥ƒÍ “¡;¥ƒÍ ¡¥ƒÍž¶Íž Ï Ï ¹¥ƒÆÍž¥Íž¹ ¶ Íž¹¶צ Íž¶ØüÍ ž¶ìÍ ž¶ÍžìØü‚«í‚«¹ö­@Á ÌÌ©«¥ÙGˆ¤øÇ¶ØÍžØÏ ¹öëË¡ð¥‚Çêžê‚«­Í_ | ƃÆ„;Ç‘ÍÕ�9¶¦@Place RT11 disk in drive, indicate unit number [4,5], tËÚ“„¡ò¥ÙGˆ¤ÌÛøÇáuÛù¥Ï¥ˆ¥‚ ˆžÛú¥Ï¥ˆ¥‚ ˆžÛû¥Ï¥Ð ׯ ¡Ì ÌØÜÈ¡¥‚Ø ˆ ¿Ø‚̹ö¹¥‚ ˆ.¿¥hen (C/R)×Íž¶¥ Í ž¶Ížð¥ Çžð0‹ž"Ä¡ö¶¦Display the directory? (y/n)×Íž¶¥Ížî³x‹ˆ¥‚ ˆž¥‚¥‚¯ ÌÚ“¡ ìÛü‚«Ù‚̹ôÚ¡e¶Íž¥ÙGˆ¤ü«¶¥‚ Íž¶¦ SIZE:×Íž¶ëÍ ž¶צ, START:Íž¶¡Î¶ÍžÎ¡Î ¡Î¡Î Î¥ƒÍžÆƒÍÁðr�Ô:6ÐD~Ž" ƒÆÍžÌ­T` ëÇáð¥‚ÇìÍ ž¶Íž¹‘«­@o&¿ :¶¦%Enter title of wanted RT11 text file:×̶͞¥‚PÍž¶Íž¥‚¾Å¡Z¦.×¥‚ ð¥šoÇö)ž ¥†nÇ(ž ¥‚nÇž ¶צ'Place RT11 Disk In Drive and Type Íž¶Íž¶¥ ÍžëÄ¡ Ç�̹Çë�Ì¥†nÜìÜ‹¡Î¶ÍžÎ¡Z𳫋¡"ÎÎó¡©‚¹Î ¹Î ¹ ¬E¹¹ ÎÎó¡©‚¹Î ¹Î ¹ ¬¹¶צ)Place Pascal Disk In Drive and Type Íž¶Íž¶¥ ÍžÌÌÌ ÌÚܕȡô¥†nÚÇ(ˆ¾ÌßÇ‹“¡w¶ßÍžß ¶Íž¶¦(Put system disk in drive, then type [Y]:×Íž¶Íž¶¥ Íž¹Q¶¦3The RT11 directory on the Pascal disk was nᥚoÙÇô)ˆ ¿Ù‚ÌÌ Ì¹Pà¡=ß Ã¡Ø‚Ì¹/¥šoÙÇô)ˆ¿¥šoÙ‚Çô)ˆ Ø‚¿Ì ¥šoÙ‚Çô)ˆß¿Ù‚̹¥šoÙÇô)ˆß¿Ù‚Ìڂ̹ö¥¯j¥‚nÇ‘ot found×Íž¶Íž¶ÍžÆ¯jÍÁZ!_ÌÒ¶Z”Ìî X h $ dv ž¶¥ Í ž¶Ížò³A‹ÍžÌ¥¯j¥šoÜdžǑ͞Ìë•«ì‚«¶ÍžîÝ‚«¹òîÞË¡6¶¦ THERE WAS AN ERROR IN TRANSFER!!×Íž¶Íž¹Ý¡¥¯j¥‚n¡ ô¥Çž¹!¥‚Eצ RT-11.DIRªP¥‚EÎô¥ÇïžôÇ0‹ž"Ä¡öïˡïÄ¡ô¶¦Display the directory? (y/n)×Íž¶¥ Ížò³Ç‘̥͞¯jÍž­_ ¬H2 «ëÌëÅ¡ô¶צ'Place RT11 Disk in Drive and Type Íž¶Íž¶¥ Ížëġ܋¡Î¶ÍžÎ¡Z𳫋¡"ÎÎó¡©‚¹Î ¹Î ¹ ¬E¹¹ ÎÎó¡©‚¹Î ¹Î ¹ ¬¹ Ç�̹Çë�Ì¥†nØì¶צ)Place Pascal Disk in Drive and Type Íž¶Íž¶¥ Íž¥¯j¥†nØÇ†Ç‘ÍžÌë¶Íž¶¦(Put system disk in drive, then type [Y]:×Íž¶Íž¶¥ Íž¹Q¶¦3The RT11 directory on the Pascal disk was nÆ¥‚TÍÆªP¹<¥‚ÌÆצ#12:ÍÆ¥‚TÍÆªP¹¬ ¹Ѳ ™zZ:¥¯j¥‚Íž« ¶¦(Transfer Option? B(inary R(t•«ì‚«îÚ‚«¹öÚÙË¡6¶¦ THERE WAS AN ERROR IN TRANSFER!!×Íž¶Íž¹ ¥¯jÍž­ G& 4 ÌëÌØÚÈ¡ô¥„nÇìì‚11 edit :×Íž¶ÆÍž¶ÍžØ³@ÿþÿ‹¡Ø •ÌØBá«‚¹ØRá«‚¹«‚¹« ­–²X ¶¦*Place Pasca«¥¯j¥„nǑ͞ÌÙË¡J¶Íž¶צ OUTPUT ERROR, program terminatedÍž¶Íž¶ÍžžØ‚̹ö¥¯jÍž­ �l disk in drive then Type ×Íž¶Íž¶Ížž"áö¶¦ Enter title of output Text file:×Íž¶¥‚PÍž¶Íž¥‚ ž ÆتP!Ì-Ì„/ƾÌ+ôÆ.ÇžÊ-ÇÉÊ„/“„¡mÆ›¾Æ.Ê-Lj¾Ã¡Ì„/Ê-‚Ì-Ì,Ê+Ì„1Ê,Ê„1È¡%ÆÊ,›¾Æ.Ê-Lj¾Ë¡Ì„/Ê-‚Ì-Ê,‚Ì,¹¾Å¡ô¥¯j¥‚Íž« ¶צ(Transfer Option? B(inary R(t11 edit :Íž¶ÆÍž¶ÍžØ³ÿþÿ‹¡Ø •ÌØBá«‚öÊ„/“¡ Ê-‚Ê+•Ì-¹ Ê-Ê+••Ì-¹ôÊ-ÇòÅ¡‘«¹-Ê-•Ì-¥ˆÆ.Ê-Lj¾¿¥ˆÆ.Ê-‚Lj¾¿ê«­·ˆ` ÞƯjư–Ç‘ÍÕ�æ«¶צ¹ØRá«‚¹«‚¹« ­* 2¥¯j¥‚nÇ‘ÍžÌØš¥‚nÇž ­T, ¥„nÇž ¥‚nÇž ¥¯j¥‚nÍžÌÌ(Are you using a standard RT11 disk[Y,N]?Íž¶¥ Íž¶Íž¶צ,Are you using a Single floppy drive machine?Íž¶¥ ÍÌÌÌëÌÛßÈ¡îô¥„nÇìì‚«ÌÚÇÿÈ¡ò¥„nÚÇÿˆ¾ÌÝÇ‹“¡ö¶ÝÍžÝ á#¥‚nÙÇÿˆ ¿Ù‚ÌÌÌÙǬÅ¡ÆÏ ¹PÞ¡=Ý Ã¡Ø‚ž¶Íž¶צAPlace RT11 disk in drive, indicate unit number [4-12], then (C/R)Íž¶¥ Í ž¶Ížò³A‹Ì¹/¥‚nÙÇÿˆ¿¥‚nÙ‚Çÿˆ Ø‚¿Ì¥‚nÙ‚ÇÿˆÝ¿Ù‚̹¥‚nÙÇÿˆÝ¿Ù‚Ìڂ̹ôۂ̹ðÆÏ ¥¯jÍž­ØÁ% «ëÌëÅ¡¡ ô¥Çž¹!¥‚Eצ RT-11.DIRªP¥‚EÎô¥ÇïžôÇ0‹ž"Ä¡öïˡïÄ¡ô¶¦Display the directory? (y/n)×Íž¶¥ Ížò³ ØøÌÆÆº»ÆÆº»ØÙš­@$ÌÌÆ¾ÃÌÌÌÛÞÈ¡ÚÛ¤ÌßøÌÆܾˡ̹ۂ̹ö­@&  BÌÌÙÚÈ¡(ØÌÛÙ¤‹¡ð¶ÌÛÚ¤ùÅ¡òÚ«²-צSeg to link into? ªP®¶¥Í ïÇ‘‹¡ô¶²ÍY¸¶,ï¤ùË¡V²-צØÍØá¶Í¶²-Ͷ¢Ì¶ÙºÍ¶Ù¢ºÍ­Dž"ÃÌž"d. Please Reconfirm (y/n) - ªP®¶²Í¶Í¶³‹Ì­»)B²¾Å¡?¥�[¶Íá¶® Ë¡#ž"̲-¦ I/O error # תP®¶ÚÍ ­Ù8²-¦Link Code File -> תP®¶²PͶͲ*¯¡²צ*SYSTEM.LIBRARYªP¹$ž"«²-¦ Read error # תP®¶ëÍ ©�¬¡¶Ï¡ ¶Ï«�«¹¹:©�«¶Ï·¡"²-צIncompatible byte sexªP®¹ ©�«¡¶Ï²-צ²¾Å¡¥ ²ªP¥�[²Í®²¾Ã�¡ö­x €ÙÍØÌÌÌÚÜÈ¡ô¶ÚÍ ¶-Ͷۢ ڤͶÛÚ¤ùÍ ¶Ú‚Í ¶7Segment # to link and , N(ew file, Q(uit, A(bortªP®Î¡ ©�¬¡«�¬Î ¶³c@@‹¡ö¥�[Í­¶5  ¶-Ͷۢ Ú‚¤Í¶ÛÚ‚¤ùÍ ¶Ú‚Í ¶-Ͷۢ Ú‚¤Í¶ÛÚ‚¤ùÍ ¶Ú ‚Í ¶-Ͷۢ Ú ‚¤Í¶ÛÚ ‚¤ ÍÆ-צPascal System Librarian [II.0]ªPÎÆ,ÇžÆÇžÆ-צOutput code file -> ªP ζ¥ PͶͥ *¯¡¥ צ*SYSTEM.LIBùÍ ¶Íڂ̹ö²-¦Code file length - תP ®¶êÍ ­(ö  ¶á¥�[² ¶ÍË¡#²-¦Link info read errתP®RARYªP¥ ¾Ã¡ž¹ ¥�ƒ¥ Í¥ ¾ÃÎ�¡ö«¥ÇžÇÇË¡ž'Ê,Çž Ê,ÌV«ÌWïÊWÈ¡ÊV¢ ï¤Ð רï‚«¹ô«�¬«�«ÎÎ ¸¹G¥�ƒ² êÍË¡#²-¦Code file overflowתP®¸¹ê‚«¶‚¸ ¸¶“¡²² ¶•¤¨¶•¸­¬ ÌÌÎ س‹¡òس‹¡žÆ-צNotice? ªPζÊ,¢€ØOͶͩ�«¡Ê,Ï¥�ƒÊ,Íá ¥�ƒÍ¹!¶¦C©�«¡Æ¤ÏƤøÇÿ‹“¡²-¦ Bad link infoתP®Æ¤šÆ¤øÃÌÛ“¡3ƤøÇ>`‹¡&©�«¡Æ¤ÏƤø‚†ÌÚÅ¡ Πڕ̹öÛ¡ô­ode write error ×Ͷͭ@¢ÍK® ¬Æ�[Æ‚‡Ç‘ÍÆ�ƒÆ‚¯Ç‘ÍÎÆ�[ÍÆ�ƒÍÁT2€ò^Vòª¼B € LÌ  X ‚ ’ ØÈØÇÈÅ�¡ž¶î¤øØ•ÌÙÈÙ�¡²-צInterface errorªP®ž¶,¢pï¤êšÌÌ¥�[ÆØÚ‚ÍË¡"²-צInterfaceÆ-צPascal System Librarian [II.0]ªPÎÆ,ÇžÆÇžÆ-צOutput code file -> ªP ζ¥ PͶͥ *¯¡¥ צ*SYSTEM.LIB„ LIBRARIA  read errªP®Ì¹D¥�ƒÆêÍË¡#²-צInterface write errªP®Ì¹ê‚«Ú‚ÌÚÙÃÌÛ¡ö­Ö¶ÌØî¤Ì¶,¢p駱آ` î¤ø‹¡ Ø¢pî¤øÎÙùÇÿ‚dž¸¥�[í¶ÙøÍ¶Ë¡'²-צError reading seg ªP®¶îÍ ¹ö¥�ƒí¶êͶˡ(²-צI/O error - no room on diskªP®¹j¶,¢ ï¤Ø¢ ¶,濫Ùùš¶,ï¤êšê¶‚«Ø¢`î¤øÉØ¢`î¤øÅ�¡Ø¢`¶,¢`ï¤Ø¢`î¤øšØ¢`î¤øË¡Ùø¶?COPYRIGHT (C) 1979, THE REGENTS OF THE UNIVERSITY OF CALIFORNIA‚Î ¶,® ­@  , Ì̲-¦×ªP®¶²Í¶áÚ †Ì¶³ùÿ‹¡ Ú �¶‚0•̶—³ÿœ‹“¡ö¶ Ë¡žÚÇ‘ س‹¡òس‹¡žÆ-צNotice? ªPζÊ,¢€ØOͶͩ�«¡Ê,Ï¥�ƒÊ,Íá ¥�ƒÍ¹!¶¦Cž¥ƒÄÊ,¨ƒ0ÌÇÿÌ…ˆØÊ…ˆÈ¡RÊ,¢ƒ0ØÇÿˆ¤øÇÿÅ¡Ê,¢ƒ0ØÇÿˆ¤øÇ†Ì¹Ê,¢ƒ0ØÇÿˆ¤øÌ¥†ôØÇÿˆÀÙ»ÙÎØ‚̹öÆ,ÍžÍ Í`d!^%  CODESTAT ¶¦UCSD P-CODE DISASSEMBLER ×Íž¶צ II.0 [a.6]Íž¶ÍžÍ¶¦Input code file: ×Íž¶ÆPÍž¶Íž¥‚l INIT DISASSEMGATHER DATACOUN Ì…ˆÆ…ˆÆPÍÆ…ˆ¦.CODE×UÍÆ…ˆÍž"Ë¡ ¥‚lÆÍž¥‚l¥‚ÄǑ͞á«Ì…ˆíÊ…ˆÈ¡R¥‚Äí�Çÿˆ¾¥‚Äí�‚Çÿˆ¾‚Ë¡!¥‡Ë툤Ǘž¥‡Ë툤øÇ.ž ¹ ¥‡Ë툤Ÿší‚«¹ôÍ Í¶ Íž¶צ(Is this code file designed for a machineÍž¶Íž¶ Íž¶צ9where byte zero is the most significant byte ?Íž¶¥ÍžìYÃìyÃ�«Í Ͷצ*Dis-assembly output fÍÌ(ÌØÙÈ¡¶ÍžØ‚̹öÍ­.¶Íž¶ëÍž¶ëÍž¶¦press spacebar to continue...×Íž¶ÆÍile ( for none): Íž¶ÆPÍž¶Íž¥ˆ£ÆªPƦ׷«ÆצCONSOLE:¯Æ¦#1:ׯ�«ê¡ ¥�/ÆÍž««'«#«"«!« ««žØ áö¶Íž­hÆ‚lƃ˜Ç‘ÍÆ�/Æ‚[ÍÕ…õÍ Í ©¡Í Í ¥ˆ£¦×·©“„¡ ¥�/͞ƂlÍÆ�/ÍÁØ’X^Ì+¥‚\Ð ר¥‚dÐ0123456789ABCDEFר¥‚¤ ž ¥‚” ž «Æ,Í­ø7d ®´ �Çÿˆ¾¥‚Äí�‚Çÿˆ¾‚Ë¡!¥‡Ëí·«ÆצCONSOLE:¯Æ¦#1:ׯ�«êÆ¥ˆ£·„¡¥�/Íž¥�/ÆÍž¥ˆ£ÆªPÍÎê¡¥�/ΩšÛúιôê¡ö¥�/ëÍž¥�/ëÍž¥�/צ sˆ¤Ç—ž¥‡Ë툤øÇ.ž ¹ ¥‡Ë툤Ÿší‚«¹ôÍ Í¶ Íž¶צ(Is this code file designed for a machineÍž¶Íž¶ orry but there were no accessesÍž¥�/צ3 to this data segment from dis-assembled proceduresÍž¥�/ÍžÍÆž!­ Z ÜÛ‚Ì©(Ú‚«(©(©)•Ç�«Ýï•ÄÝï•Çý É„¡ö¥‚l¥ˆÌ©(ÍžáÝï•Ì­= JñÉ¡ïñ‚‘‘®« ©%•«%¹ ñ•« ©%•«%¥ˆÌñÇÿ ˆ¾Çÿعö¥/¶Çÿˆ¤ž¹ô¥/¶Çÿˆ¤ ž¹ô¥/¶Çÿˆ¤ ž¹ô¥/¶Çÿˆ¤ ž¹ô¥/¶Çÿˆ¤ž¹ô¥/¶Çÿˆ¤-ž¹s¥/¶Çÿˆ¤ž¹b¥/¶ˆÌ­>ñÇÿ Å¡ ïñ‚®« ¥ˆÌñÇÿ ˆ¾ÇÿˆÌ©+É¡FÆ¥ˆÌñÇÿ ˆ¾Çÿˆ»¥‚\©+ˆ¥‚dƺˆ¾¿¥‚\©+‚ˆ¥‚dƺˆ¾¿©+‚«+ñÇÿˆ¤1ž¹Q¥/¶Çÿˆ¤*ž¹@¥/¶Çÿˆ¤ž¹/¥/¶Çÿˆ¤ž¹¬å ¹ôƒteVœ¯K<-¥/¶Çÿˆ¤øÌعòÙš¹ðÙšÙ¢ž ¹ð‚« ­|®ÇÿˆÌÛÅ¡"Æ®Çÿˆ»ÆÛÇ€•Çÿˆ»Ú̹ÛÌ­>©¡Æ®Çÿˆ»Æ®Çÿˆ»¹Æ®ÇÿÙšÙ¢ž Ù¢ ž Ù¢8ž ¹wÙšÙ¢ ž ¹jÙšÙ¢ž Ù¢ ž ¹UÙšÙ¢ ž Ù¢ ž Ù¢! ž ¹8ÙšÙ¢Rž ¹+ÙšÙ¢ ž ¹¬å ¹�ˆ»Æ®Çÿˆ»ÚÌ­JÚɡ̹‘ÌÛ‚ÌÚ†ÌÚáöÛÌ­*¥/öÇÿˆ¤ø¥/öÇÿˆ¤øø‚šöÇÖá«öǀɡK©#‚«#êRARYªP¥ ¾Ã¡ž¹ ¥�ƒ¥ Í¥ ¾ÃÎ�¡ö«¥ÇžÇÇË¡ž'Ê,Çž Ê,ÌV«ÌWïÊWÈ¡ÊV¢ ï¤Ð רï‚«¹ô«�¬«�«ÎÎ �e„\I—™2'u­"¾Þ¤Æ,Æ�XÇ0Í «Æ,צ OPCODES.II.0Íž"Ë¡4¶¦ *OPCODES.II.0 not on system disk×Í¶Í Û¢òˆ¤ø‚š®ÇÿˆÌÚÙÄØÄ«ÚÙÄØÅ„ØÉ„¡Wۢ؈•¤Û¢Øˆ•¤ø‚šê¡8¥�/¥ƒÄ8Ø‚4Çÿˆ4•¤Íž¥�/ Íž¥�/¥‚\Ížˆ¤øÌÛÛø‚šê¡¥�/¥ƒÄö4Çÿˆ4•¤Íž®Çÿˆ«ê¡)¥�/öÍ ž¥�/ Íž¥�/¥‚\Íž¥�/Ížö®« Û¢òˆ¤Û¢òˆ¤ø‚šñ¡¥�/Íž¹aÚ¡(¥‡ËÙˆ¤øØÇ–ˆ¤¥‡ËÙˆ¤øØÇ–ˆ¤ø‚šê¡3¥�/ÙÍ ž¥�/ØÍ ž¥�/ Íž¥�/¥‚\Íž¥�/͞خ« Û¢ òˆ¤Û¢ ò®ÌÌöÌÙÜÈ¡T«+¥‚\×Ð ¨®Ìê¡)¥�/Ú)Í ž¥�/ Íž¥�/¥‚\Íž¥�/͞ق̹ö­‚\ ô«$ñ•« ©%•«%¡@¥�/¥ƒÄ4Çÿˆ4•¤Íž¥�/öÍ ž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹òê¡¥�/¥ƒÄö4Çÿˆ4•¤ÍžöÇ×Å¡ôöÇèÉ¡E©"‚«"©¡ ©öÇו®êˆ¤ø‚š­f¥/öÇÿˆ¤øÌÙÙø‚šê¡¥�/¥ƒÄö4Çÿˆ4•¤Íž®Ìê¡)¥�/ØÍ ž¥�/ Íž¥�/¥‚\Íž¥�/͞خ« Ù¢ò¡-¥�/öÇוÍ ž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹ööÇøÉ¡D©!‚«!©¡öÇç•®ê¡-¥�/öÇç•Í ž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹6© ‚ˆ¤Ù¢òˆ¤ø‚š­„¥/öÇÿˆ¤øÌÛÛø‚šê¡¥�/¥ƒÄö4Çÿˆ4•¤Ížñ¡ ®Çÿˆ«®ÌÚ®« Û¢òˆ¤Û¢òˆ¤ø‚š®Ì« ê¡-¥�/öÇø•Í ž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹"ê¡¥�/ Íž¥�/¥‚\Íž¥�/Íž©¡ ê¡¥�/Íž­6: ¦ ¶ÉÌØÙ®« Û¢òˆ¤Û¢òˆ¤ø‚šÙÚ•‚®« Û¢!òˆ¤Û¢!òˆ¤ø‚š®Çÿˆ«®Çÿˆ«öǀɡ ïñ‚ö‚©•̹¥ˆ?Çö••†cˆ¤øÌê¡=¥�¡¶‘¸‘« ò‚« ¶†¸¶áöØ¡¥‚”òˆ¤¥‚”òˆ¤ø‚𹥂¤òˆ¤¥‚¤òˆ¤ø‚š­Gd ¥/öÇÿˆ¤øÌÚÚø‚šê¡¥�/¥ƒÄö4Çÿ/ÚÍ ž¥�/ÙÍ ž¥�/ØÍ ž¥�/ Íž¥�/¥‚\Íž¥�/ÍžÙÚ•‚ÌÌÙÌÚÜÈ¡`«+¥‚\×Ð ¨®Ìïñ‚Ø••©•Ìê¡)¥�/ˆ4•¤ÍžöÇ­ÃöÇÁÃ�¡«öÇ¡—ǹ—œÇÓ—œÇÔ—œ‹¡ö®Çÿˆ«öǀɡ@©‚«öÌÎ ê¡0¥�/ïñ‚ö‚©•Í ž¥�/ Íž¥�/¥‚\Íž¥�/ÍØ)Í ž¥�/ Íž¥�/¥‚\Íž¥�/͞ڂ̹ö­¢h œ¥/öÇÿˆ¤øÌØØø‚šê¡¥�/¥ƒÄö4Çÿˆ4•¤Íž®Çÿˆ«ê¡8¥�/¥ƒÄVö‚ž¹`©‚«¥ˆ?Çö••†cˆ¤øïñ‚©••ÌÎ ê¡:¥�/¥ˆ?Çö••†cˆ¤øÍ ž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹ôöÇ®—ÇΗœÇÏ—œ‹Ì®Ç4Çÿˆ4•¤Íž¥�/ Íž¥�/¥‚\Íž¥�/͞آö(ˆ¤Ø¢ö(ˆ¤ø‚š­ ’¥/öÇÿˆ¤øÌÙÙø‚šê¡¥�/¥ƒÄö4Çÿˆ4•¤Ížÿˆ«Ù¡(¥‡Ë툤øöÇ–ˆ¤¥‡Ë툤øöÇ–ˆ¤ø‚šê¡)¥�/öÍ ž¥�/ Íž¥�/¥‚\Íž¥�/Íž©¡ ê¡¥�/Ížö®« Ú¢òˆ¤Ú¢ò®Çÿˆ«Ù¢ö†ˆ•¤Ù¢ö†ˆ•¤ø‚šö Ãö Ã�¡®Ìê¡òö¹ö¥�/צREALÍž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹ô¥�/¦STR ×Íž¥�ˆ¤ø‚š­¤ ´ ¥/öÇÿˆ¤øÌÛÛø‚š©¡$öÇÆ—ÇÊ—œÇÌ—œ‹ÌöÇ¥—ǧ—œÇ«—œ‹Ìê¡¥�/¥ƒÄö4Çÿˆ4•¤Íž®ÌØ®« Û¢ò/ Íž¥�/¥‚\Íž¥�/Íž¹ô¥�/צBOOLÍž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹ô¥�/¦POWR×Íž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹ˆ¤Û¢òˆ¤ø‚š©¡Ú¡©Ø®¹Ù¡Ø®ê¡)¥�/ØÍ ž¥�/ Íž¥�/¥‚\Íž¥�/Íž­¤ ¥/öÇÿˆ¤øÌÚÚø‚šê¡¥�/¥ƒÄö4Çÿˆô¥�/צBYTEÍž¥�/ØÍ ž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹X¥�/¦WORD×Íž¥�/ØÍ ž¥�/ Íž¥�/¥‚\Íž¥�/Íž¹¬ ¹A4•¤Íž®Çÿˆ«ê¡ ¥�/öÍ žöÌö®« Ú¢òˆ¤Ú¢òˆ¤ø‚š®ÌÙ®« Ú¢ òˆ¤Ú¢ òˆ¤ø‚š©¡©ؕٮê¡)¥�/ÙÍ ž¥�ç º�V­# Ð¥/öÇÿˆ¤øÌÚÚø‚šê¡¥�/¥ƒÄö4Çÿˆ4•¤Íž®Çÿˆ«ê¡¥�/öÍ ž¥�/צ 'Ížö®/ Íž¥�/¥‚\Íž¥�/Íž­È ¥/öÇÿˆ¤øÌÛÛø‚šê¡¥�/¥ƒÄö4Çÿˆ4•¤ÍžöÇÍá̹̮ÇÿˆÌÙ®« Û¢òˆ¤« Ú¢òˆ¤Ú¢òˆ¤ø‚šê¡!ÌöÌØÛÈ¡¥�/®ÍžØ‚̹ö¹ÌöÌØÛÈ¡ ®Ì؂̹ôê¡¥�/'Íž¥�/Íž­/*M Ð¥/öÇÿ 3)/-?=©¡ô­K�Zê¡ìÆ¥‡4¨€—ÌÇ–Ì�3ÛÊ�3ȡƀœÛÇ–ˆ¤ÛÇÿˆšÛ‚̹öÌ¥‡4Ç–ˆ¤øÌ�3ÛÊ�3È¡ðÌž¶¥‡4Ç–ˆ¤øÍ ž¶צ proceduresÍž¶ëÍž¶ëÍž¶Ížê“¡2¶ëÍž¶ëÍž¶(Íž¶íÍ ž¶)ÍÌÛÌ¥‡4Ç–ˆ¤øÌ�4ÚÊ�4È¡&ÆÚÇ–ˆ¤øÙÄ¡ÆÚÇ–ˆ¤øÌÚÌڂ̹ôÆØÇ–ˆ¤ÆÛÇ–ˆ¤øšÆÛÇ–ˆ¤Æ€œØÇ–ˆ¤øšÆ€œØÇ–ˆ¤Æ€œÛÇž®ÍQ«¹êì0Äì9È„¡ìì0•«¶¥Ížì0Äì9È„¡ î �ì‚0•«îÉ4Ç–ˆ¤øÅ�¡G¶ëÍž¶¦$I didn't say you had THAT procedure!×Í–ˆ¤øÇÿˆšÛ‚̹òÌ¥‡4Ç–ˆ¤øÌ�3ÛÊ�3È¡;ÆÛÇ–ˆ¤ø«©“Û2ŽÃ„¡¶ëÍž¶¦ ×Íž®Û‚̹î¹G«¥‡4Ç–ˆ¤øÌ�3îÊ�3Èž¶ÍžÍ¹î©“¡MͶצdis-assembling procedureÍž¶îÍ ž¶ëÍž¶Íž®Í «¹dî«í«Î©«¥žÌ©‚†ÌÙ¡.©“î2ŽÃ„¡¶ëÍž¶צ Íž®î‚«¹ê­7K‘¥D'zh–©¡5¥‚Äí�‚Çÿˆ¾«)¥‚Äí�‚Çÿˆ¾¥‚Äí�‚Çÿˆ¾Ç�‚«ÛÈ¡ ƞق̹ò÷©�ž «¥‡4Ç–ˆ¤øÌîÛÈ¡®¥‡Ûîcˆ¤©šî‚«¹ð«ìQÃìqÃ�ìÃ�¡æ­X6cXÃrͶצ$Segme&¹1¥‚Äí�Çÿˆ¾«)¥‚Äí�‚Çÿˆ¾Ç�¥‚Äí�‚Çÿˆ¾‚«&©)«(©&Ç Å¡ ©&‘®« ¹ ©&‘®« ¥‡4Ç–ˆ¤¥ˆÌñÇÿ ˆ¾šñ¥‡4Ç–ˆ¤ø�••nt guide: #(of segment),Q(uit)Íž¶Íž¶ëÍž¶ëÍž¶צyou have these segments:Íž¶ÍžÌÌÙÚÈ¡V¶ÙÍ ©$‚«$®Ì®Çÿˆ«©¡¥ˆ?©$cˆ¤ïñ‚öÇ�•Ø•š¹¥ˆ?©$cˆ¤ïñ‚ö•ØÇ�•šØÇÿˆ«öÅ©$cÃ�¡ö¥ˆ?cˆ¤©$•šñ©%•É¡ïñ‚©%‘‘®« ¹« ¥‡4Ç–ˆ¤ø«ÌîØÄ¡¥‡4îÇ–ˆ¤®šî•«¹ö©©�“¡®­ø) úÙ¥‡Û©cˆ¤øÃî©Ä„¡òí©á<î©ÃÌîÌ¥‡ÛÛcˆ¤ø¥‡Û©cˆ¤øñ©%•« ïñ‚««$¥ˆ?cˆ¤øÌ©$ÙÈ¡!¥ˆ?©$cˆ¤¥ˆ?©$cˆ¤ø©•š©$‚«$¹ô­)Æ Ü¥‡4îÇ–ˆ¤øÃ¡+¶¦Procedure not in file×Íšە̹öÛ©á ÷ؤ÷ؤø‚š¹?©Ãí©Å„¡4íÌ¥‚´Úˆ¤ø¥‚´©ˆ¤øÅ¡Ú•̹ôÚ©á ÷ؤ÷ؤø‚š­¤6y ¤®ñ•« ©¡*®«ž¶Íž¹î©&ï•î‚�•¥‡4îÇ–ˆ¤ø••« ñÉ¡!©&î‚�•¥‡4îÇ–ˆ¤ø‘•‘®« ¹ñÇü Å¡ ïñ‚®« ®«%®Ì®«ñ•« ©Çÿá©®Ç�‚«®Ì©®Ç�‚Ø‚«¹(®Ç�«©®‚«®Ç�Ì©®‚Ø‚«©†«­‚lͶ 2ͫ͞¥‡4Ç–ˆ‘«©©�“¡ðÙáN¶¦ Procedure ×Íž¶îÍ ž¶¦ is written in Assembly.×Íž¶Íž¹òΫê¡ö¥�/ Íž¥�/¦BLOCK #×ͤø†‚¸¸¥‡4Ç–ˆ¤ø•¶†Ì¶ØÈ¡%¶צ # LL SIZEÍž¶‚¸¹ö¶Íž«¥‡4Ç–ˆ¤øÌîØÈ¡H®î•¶†�î•¶Ž‚ž¥�/ñdž©(‚Í ž¥�/¦ OFFSET IN BLOCK=×Íž¥�/ñÇŽÍ ž¥�/ëÍž¥�/צSEGMENT PROC OFFSET#Íž¥�/ #Íž¥�/צͶîÍ ž¶:Íž¶©Í ž¶©Í žî‚«¹ô¸¥‡4Ç–ˆ¤øŽ•̶ØÈ¡¶Íž¶‚¸¹òÍ«­“"‡Î ®ÍHEX CODEÍž¥�/Íž©“¡8©¡*¶ëÍž¶[Íž¶îÍ ž¶]Íž¹ ¶.ÍžÌïñ‚©•Ìê¡x¥�/íÍ ž¥�/îÍ ž¥�/ØÍ ž¶צ"Procedure guide: #(of procedure),Íž©¡&¶צL(isting),Q(uit)Íž¶Íž¹*¶צA(ll),L(isting),Q(uit)Íž¶Í¥�/(Íž¥�/¥‚dƺˆ¾Íž¥�/¥‚dƺˆ¾Íž¥�/¥‚dƺˆ¾Íž¥�/צ): Íž©©“„¡0¶.ÍžÚ‚ÌÚ2ŽÃ¡¶ëÍž¶צ to segment: ÍžÌÌÙÛÈ¡ ¶¥‚Ä?í�‚Ù‚Çÿˆ¾ÍžÙ‚̹ö«¶ëÍž¶ëÍž¶צwhich procedure Íž©¡$¶ž¶¦ ×Íž«+¥‚\Ð ר®Çÿˆ«©'‚«'¥†ôöÇÿˆÀº¹,® ¹E®¹A®¹=® ¹9®¹5®¹1® ¹-® ¹)®¹%®¹!®¹¬ ¹צdata segment to watch?Íž¹¶צto dis-assemble?Íž¶¥ÍžìLÃìlÃ�¡Î¹èìAÃìaÃ�©“„¡ôͶ¦dis-assembling all×Í ¹ôÍ«­ÍTÝ ìÍ Í¶¦1 Do you wish to keep track of references×Íž¶ëÍž¶צ2 to a parž©Å¡ô¥�/ëÍž¥�/צ5 Positive jumps Negative jumpsÍž¥�/Íž¥�/®ÌÌØÙÈ¡w¥�/Ø‚Í ž¥�/¥‚¤Øticular procedure's data segment?Íž¶¥ÍžìYÃìyÃ�«©¡Î¹«Í Ͷצ&Do you wish control over dis-assembly?Íž¶ˆ¤ø Í ž¥�/¥‚¤Øˆ¤ø©Љ‡dŠ�Ïž¥�/¥‚”؈¤ø Í ž¥�/¥‚”؈¤ø©Љ‡dŠ�Ïž¥�/͞؂̹ö¹3¥�/ëÍž¥�/¦Sorry no ju¥ÍžìYÃìyÃ�«©¡öÍͶ͞¶¦;*** WARNING - - STATISTICS ARE GATHERED ON DIS-ASSEMBLED×Íž¶צ PROCEDURESmps today!×Íž¥�/Íž­r6¶ z¥�/ëÍž¥�/¦Procedure call statistics×Íž¥�/ÍžÌÌÙÚȡËÙˆ¤øŸË¡òÌÇ– ONLY ***Íž¶Íž©¡q¶ëÍž¶ëÍž¶¦ ×Íž¶¦/*** THIS INCLUDES DATA SEGMENT WATCHING ***×ÌØÛÈ¡ô¥‡ËÙˆ¤øØÇ–ˆ¤øÅ¡z¥�/¦ Segment:×Íž¥�/ÙÍ ž¥�/¦ Procedure:×Íž¥�/ØÍ ž¥�/¦ Calls:×Íž¥�/¥‡ËÙˆ¤Íž¶Íž¶¥ÍžÎ¹|©“¡¶ Íž¶ëÍž«ÌíØÈ¡U©“¡(¶ëÍž¶(Íž¶íÍ ž¶)Íž¥‚Äí�Çÿˆ¾¥‚Äí�‚øØÇ–ˆ¤øÍ ž¥�/͞؂̹öق̹ð­à ®ØôЉ‡Š�žÌÌØÌÙÚÈ¡¥�/*͞ق̹ö­2Øë͞ئSLDÇÿˆ¾‚Ë¡Îí‚«¹ôÍ­e`� Š�‚2 P Àl l f JDðˆ*´ în¸Úä ˆ¸ L Î !: ol over dis-assembly?Íž¶C OPCODE: 0..127 TOTAL:×͞ة#Í žØ©#©'Љ‡dŠ�Ϟئ % ×Íž©#®©#Ë¡òØëÍžØÍžØ®« ÌðÙÈ¡ôØðÍ žØ:Íž¥ÍžìYÃìyÃ�«©¡öÍͶ͞¶¦;*** WARNING - - STATISTICS ARE GATHERED ON DIS-ASSEMBLED×Íž¶צ PROCEDURESØ¥/ðÇÿˆ¤øøÍ žØ¥/ðÇÿˆ¤øø©#Љ‡dŠ�ÏžØð ‚Í žØ:͞إ/ð ‚Çÿˆ¤øøÍ žØ¥/ð ‚Çÿˆ¤øø©#Љ‡dŠ�ÏžØð@‚Í žØ:ÍعöÙצ Parameter oneÍžÙÍž¹ôÙצ Bits used Total PercentageÍžÙÍž¹ôÙצ7 Parameter one žØ¥/ð@‚Çÿˆ¤øøÍ žØ¥/ð@‚Çÿˆ¤øø©#Љ‡dŠ�ÏžØð`‚Í žØ:͞إ/ð`‚Çÿˆ¤øøÍ žØ¥/ð`‚Çÿˆ¤øø©#Љ‡dŠ�ÏžØÍžž¶¦ ×ÍžÌÌØÛÈ¡ ¶¥‚Ä?Ù�‚Ø‚Çÿˆ¾ÍžØ‚̹ö¶ÍžÙ‚̹ô¶ëÍž¶¦which segment to look at ×Íž©¡ Parameter two ÍžÙÍž¹ôÙ¦7Bits used Total Percentage Total Percentage×ÍžÙÍž¹ôÙצ. Para(¶צto decide on DATA SEGMENT?Íž¹&¶צfor possible DIS-ASSEMBLY?Íž¶¥ÍžìQËìqË„¡ò«ì0Äì9È„¡ì0•«¶¥Ížì0Ämeter one Parameter twoÍžÙצ Case table sizeÍžÙÍž¹ôÙצ7Bits used Total Percentage Totalì9È„¡ í �ì‚0•«¥‚Äí�Çÿˆ¾¥‚Äí�‚Çÿˆ¾‚ÃíÅ�¡L¶ëÍž¶¦"I didn't say you had THAT segment!×Íž¶Íž¶¥Íž¹ ® PercentageÍžÙ¦ Total Percentage×ÍžÙÍž¹ôÙצ*Flavor Total Percentage FlavorÍžÙצ TotalìË¡A«ìQÃìqÃ�ìÃ�¡ð­&©„4«‘«®ìQÃìqÃ�¡iÍ Í¶¦7have you changed your mind about data segment watching? PercentageÍžÙÍž¹ôÙ¦2 # Total Pct # Total Pct # Total×ÍžÙ¦ Pct # Total Pct×ÍžÙÍ×Íž¶Íž¶¥ÍžìYÃìyÃ�¡«ìé“�¡ö©¡Q«ÌíØÈ¡F¥‚Äí�Çÿˆ¾¥‚Äí�‚Çÿˆ¾‚Ë¡®«®¥‚´íˆ¤©š¹ ¥‚´íˆ¤dší‚«ž¹¬¹‰c3ì¥CÛ~­ ¨¥�/ëÍž¥�/¦Jump statistics on the×Íž¥�/©Í ž¥�/צ Total jumpsÍž¥�/Í ˆ¤øø©"Љ‡dŠ�ÏžØð‚Í žØ:͞إ/ð‚Çÿˆ¤øøÍ žØ¥/ð‚Çÿˆ¤øø©"Љ‡dŠ�ÏžØð ‚Í žØ:͞إ/ð ‚Çÿˆ¤øøÍ žØ¥¢ ؈¤ø Í ž¥�/Ù¢ ؈¤øÙøŠ‰‡dŠ�Ïž¥�/͞؂̹ôðÇÍáä¥�/Íž¥�/®ÙøÃ¡ìÌÌØÚÈ¡î¥�/¥ƒÄ8Ø‚4Çÿˆ4•¤Íž¥�/Ù¢Ø/ð ‚Çÿˆ¤øø©"Љ‡dŠ�ÏžØÍžð‚« ¹ð­"©«ÉJØëÍžØë͞ئSLDO OPCODE: 232..247 TOTAL:×͞ة!Í žˆ•¤ø Í ž¥�/³Ïž¥�/¦ ×Íž¥�/¥ƒÄ8Ø‚‚4Çÿˆ4•¤Íž¥�/٢؂ˆ•¤ø Í ž¥�/³Ïž¥�/ÍžØ‚Ì¹ð¹æØ©!©'Љ‡dŠ�Ϟئ % ×Íž©!®©!Ë¡òØëÍžØÍžØ®Çè« ÇëÌðÙÈ¡ôØðÍ žØ:͞إ/ðÇÿˆ¤øøÍ žØ¥/ðÇÿˆ¤øø©!Љ‡dÌÌØÚÈ¡è¥�/¥ƒÄ8Ø‚4Çÿˆ4•¤Íž¥�/٢؈•¤ø Í ž¥�/٢؈•¤øÙøŠ‰‡dŠ�Ïž¥�/צ Íž¥�/¥ƒÄ8Ø‚‚4Çÿˆ4•¤ÍžŠ�ÏžØð‚Í žØ:͞إ/ð‚Çÿˆ¤øøÍ žØ¥/ð‚Çÿˆ¤øø©!Љ‡dŠ�ÏžØð‚Í žØ:͞إ/ð‚Çÿˆ¤øøÍ žØ¥/ð‚Çÿˆ¤¥�/٢؂ˆ•¤ø Í ž¥�/٢؂ˆ•¤øÙøŠ‰‡dŠ�Ïž¥�/͞؂̹ê­ÉÑÕz�Š ¥/ðÇÿˆ¤øÌÙø« ¥�/óÍ žøø©!Љ‡dŠ�ÏžØð ‚Í žØ:͞إ/ð ‚Çÿˆ¤øøÍ žØ¥/ð ‚Çÿˆ¤øø©!Љ‡dŠ�ÏžØÍžð‚« ¹öØëÍžØëÍžØ×¦SIND OPCOD¥�/ó©'Љ‡dŠ�Ïž¥�/צ % ÍžÙøË¡ôÙø®¥�/ëÍž¥�/Íž¥�/®¥�/Íž¥�/®ÌÌØÚÈ¡I¥�/Ø‚Í ž¥�/٢؈¤ø Í ž¥�/ÙE: 248..255 TOTAL:͞ة Í žØ© ©'Љ‡dŠ�ÏžØ×¦ % Íž© ®© Ë¡ìØëÍžØÍžØ®Çø« ÇùÌðÙÈ¡îØðÍ žØ:͞إ/ð¢Øˆ¤øÙøŠ‰‡dŠ�Ïž¥�/͞؂̹ö¹¥�/Íž­ \ Ö ¥/ðÇÿˆ¤øÌÙø« ¥�/óÍ ž¥�/ó©'Љ‡dŠ�Ïž¥�/צ % ÍžÙøËÇÿˆ¤øøÍ žØ¥/ðÇÿˆ¤øø© Љ‡dŠ�ÏžØð‚Í žØ:͞إ/ð‚Çÿˆ¤øøÍ žØ¥/ð‚Çÿˆ¤øø© Љ‡dŠ�ÏžØð‚Í žØ:͞ءòÙø®¥�/ëÍž¥�/Íž¥�/®¥�/Íž¥�/®ÌÌØÚÈ¡w¥�/Ø‚Í ž¥�/٢؈¤ø Í ž¥�/٢؈¤øÙøŠ‰‡dŠ�Ïž¥�/Ù¢ ؈¤ø Í¥/ð‚Çÿˆ¤øøÍ žØ¥/ð‚Çÿˆ¤øø© Љ‡dŠ�ÏžØð‚Í žØ:͞إ/ð‚Çÿˆ¤øøÍ žØ¥/ð‚Çÿˆ¤øø© Љ‡dŠ�ÏžØÍžð‚«  ž¥�/Ù¢ ؈¤øÙøŠ‰‡dŠ�Ïž¥�/͞؂̹öÌÌØÚÈ¡I¥�/Ø‚Í ž¥�/Ù¢ ؈¤ø$Í ž¥�/Ù¢ ؈¤øÙøŠ‰‡dŠ�Ïž¥�/͞؂̹ðØÍž­ (¯±Ï\ ¥�/Î¥�/Î ­¥/ðÇÿˆ¤øø« ¥�/óÍ ž¥�/ó©'Љ‡dŠ�Ïž¥�/¦ % ×Ížó®¥�/Íž­¹ô¹¥�/Íž­ \à Z¥/ðÇÿˆ¤øÌÙø« ¥�/óÍ ž¥�/ó©'Љ‡dŠ�Ïž¥�/צ % ÍžÙøË¡òÙø®¥�/ëÍž¥�/Íž¥�/®¥�/ÍL ¥/ðÇÿˆ¤øÌÙø« ¥�/óÍ ž¥�/ó©'Љ‡dŠ�Ïž¥�/צ % ÍžÙøË¡ôÙø®¥�/ëÍž¥�/Íž¥�/®¥�/Íž¥�/®ÌÌØÚÈ¡I¥�/ž¥�/®ÌÌØÚÈ¡ô¥�/Ø‚Í ž¥�/٢؈¤ø Í ž¥�/٢؈¤øÙøŠ‰‡dŠ�Ïž¥�/٢؈¤ø Í ž¥�/٢؈¤øÙøŠ‰‡dŠ�Ïž¥�/Ø‚Í ž¥�/٢؈¤ø Í ž¥�/٢؈¤øÙøŠ‰‡dŠ�Ïž¥�/͞؂̹ö¹¥�/Íž­ \ Ö ¥/ðÇÿˆ¤øÌ¥�/ÙøÍ ž¥�/Ùø©'ŠÙ¢!؈¤ø Í ž¥�/Ù¢!؈¤øÙøŠ‰‡dŠ�Ïž¥�/͞؂̹ö¹¥�/Íž­ º 4¥/ðÇÿˆ¤øÌ¥�/ÙøÍ ž¥�/Ùø©'Љ‡dŠ�Ïžð‚« ¹öØëÍžØëÍžØ×¦SLDL OPCODE: 216..231 TOTAL:͞ة"Í žØ©"©'Љ‡dŠ�ÏžØ×¦ % Íž©"®©"Ë¡ìØëÍžØÍžØ‰‡dŠ�Ïž¥�/צ % ÍžÙø®¥�/ëÍž¥�/Íž¥�/®¥�/Íž¥�/®ÙøÃ¡mÌÌØÚÈ¡`¥�/Ø‚Í ž¥�/٢؈¤ø Í ž¥�/³Ù®ÇØ« ÇÛÌðÙÈ¡îØðÍ žØ:͞إ/ðÇÿˆ¤øøÍ žØ¥/ðÇÿˆ¤øø©"Љ‡dŠ�ÏžØð‚Í žØ:͞إ/ð‚Çÿˆ¤øøÍ žØ¥/ð‚ÇÿÏž¥�/Ù¢ ؈¤ø Í ž¥�/³Ïž¥�/͞؂̹ö¹òÌÌØÚÈ¡w¥�/Ø‚Í ž¥�/٢؈¤ø Í ž¥�/٢؈¤øÙøŠ‰‡dŠ�Ïž¥�/Ù 'Í ž¶צ Total operatorsÍž¶Íž­ £TT "ÙÉØÉ�¡ÌÌÆ¼е¡ÆÆ¼’½Æ -¿¹Æ  ¿ÌÆ Æ¼½Æ¼ž$û®­XÆž Í Í¶Íž¶¦8Output file for data segment statistics( for none): ×Íž¶ÆPÍž¶ÍžÆ¦¥�/צ % ÍžÙø®¥�/ëÍž¥�/Íž¥�/®ÙøÃ¡òÌÌØÚÈ¡ô¥�/¥ƒÄVØ‚4Çÿˆ4•¤Íž¥�/Ù¢Ø(ˆ¤ø Í ž¥�/³Ïž¥�/¦ °¡ Æ ¼ž$°¡Ý‚ÌÆ Ƽݞ$‡½¹ö¹'Æ¼Š·¡Ý•ÌÆ Ƽݑž$�½Æ ¼ž$°¡ôØÃØÝ‚‚Å�¡Æ Æ ¼ž$‰‡ƒ½¹ØÝ‚‚Ä¡Æ Æ ¼ØÝ‚‚ž$ ×Íž¥�/¥ƒÄjØ‚4Çÿˆ4•¤Íž¥�/٢؂(ˆ¤ø Í ž¥�/³Ïž¥�/͞؂̹ö¥�/¥ƒÄ~4Çÿˆ4•¤,Íž¥�/Ù¢((ˆ¤ø Í ž¥‰‡ƒ½Æ ¼ž$°¡Ý‚ÌÆ Æ ¼ž$‡½ÌÌßÊÈ¡%Æ ¼žÌÆ ßÞ0‚¿Æ Æ ¼ÞŠ–ž$�½ß‚̹òØÃÝÄ�¡VÆ Æ ¾¿Æ .¿ÌÝË¡: ÌÆ E¿ÝÉ¡ Ì�/³Ïž¥�/Íž¹ìÌÌØÚÈ¡î¥�/¥ƒÄVØ‚4Çÿˆ4•¤Íž¥�/Ù¢Ø(ˆ¤ø Í ž¥�/Ù¢Ø(ˆ¤øÙøŠ‰‡dŠ�Ïž¥�/¥ƒÄjØ‚4Çÿˆ4•¤ ÍÆ -¿Ý‘ÌÝ Å¡ß‚ÌÆ ßÝ †0‚¿ß‚ÌÆ ßÝ Ž0‚¿Æ ß¿¹`ÝÄ¡(Æ Æ Ý‚žÆ Ý‚.¿Æ ØÝ•• ž Æ ؂݂¿¹3Æ Æ Ý•žÆ 0¿Æ .¿Æ Ý‘•0ž Æ ž¥�/٢؂(ˆ¤ø Í ž¥�/٢؂(ˆ¤øÙøŠ‰‡dŠ�Ïž¥�/͞؂̹ð¥�/¥ƒÄ~4Çÿˆ4•¤,Íž¥�/Ù¢((ˆ¤ø Í ž¥�/Ù¢((ˆ¤øÙøŠ‰‡Ý•݂ؕ ž Æ Ø‚¿ÙÆ ¾É¡Æ ¾ÌÜÆ ÙÍ­|¨, ô Øj¤  à èÄ,Žà.® o look at ×Íž©¡(¶צto decidŠ�Ïž¥�/Íž­RúGæP¥/ðÇÿˆ¤øÌÙø« ¥�/óÍ ž¥�/ó©'Љ‡dŠ�Ïž¥�/צ % ÍžÙø®¥�/ëÍž¥�/Íž¥�/de on DATA SEGMENT?Íž¹&¶צfor possible DIS-ASSEMBLY?Íž¶¥ÍžìQËìqË„¡ò«ì0Äì9È„¡ì0•«¶¥Ížì0Äì9È„¡ í �ì‚0•«®ÌÌØÚÈ¡ôóË¡]¥�/¥ƒÄ3Ø‚4Çÿˆ4•¤Íž¥�/٢؈•¤ø Í ž¥�/٢؈•¤øóЉ‡dŠ�Ïž¥�/¦ ×Íž¹N¥�/¥ƒÄ3Ø‚4Çÿˆ4•¤¥‚Äí�Çÿˆ¾¥‚Äí�‚Çÿˆ¾‚ÃíÅ�¡L¶ëÍž¶¦"I didn't say you had THAT segment!×Íž¶Íž¶¥Íž¹ ®ìË¡A«ìQÃìqÃÍž¥�/٢؈•¤ø Í ž¥�/³Ïž¥�/¦ ×͞؎á¥�/͞؂̹ö­/Ð 6« Ç€« Ç×ÌðØÈ¡ô¥/ðÇÿˆ¤�ìÃ�¡ð­&©„4«‘«®ìQÃìqÃ�¡iÍ Í¶¦7have you changed your mind about data segment watching?×Íž¶ÍžøÌ¥†ôðÇÿˆÀº¹TÙøôÅ¡Ùø« ¹dÙøôÅ¡Ùø« ¹XÙøôÅ¡Ùø« ¹LÙøôÅ¡Ùø« ¹@ÙøôÅ¡Ùø« ¹4ÙøôÅ¡Ùø« ¹(ÙøôÅ¡Ùø« ¹¬/ ¹\FT>4fh.$÷¶¤øØøÉ¡=ØûŸË¡Øû®¹/²ž¶¢¶š¶÷¶¤øš¶¢Ÿš¶¢ŸšØ¢¶š¹;ØúŸË¡Øú®¹/²ž¶¢¶š¶÷¶¤øš¶¢Ÿš¶¢ŸšØ¢Vð‚« ¹ö­‰� ²ÎÍ Í¶Íž¶¦3Output file for opcode statistics ( for none): ×Íž¶ÆPÍž¶Íž¶š­Œ²ž¶š¶¢Ÿš¶¢Ÿš«Ìةؕ�÷ؤž †‚Ì÷ؤøÅ¡¶Î©÷ؤø‚«÷ؤšØ©Ä¡ö­¶= dØëÍžÆצ·«Æ¦CONSOLE:ׯÆצ#1:¯�«ê¡òÆ¥ˆ£·¡¥�/Íž¥�/ÆÍž¥ˆ£ÆªPÍÎÎÎÇ€« Ç×Ì*ðÊ*È¡ô¥�/ëÍž¥�/¥ƒÄð4Çÿˆ4•¤Øë͞ئData Segment size:×ÍžØ©Í žØ×¦ Data references:ÍžØ©Í žØ¦ Lex level×͞إ‡Û©cˆ¤øÍ žÍž¥�/צ Opcode:Íž¥�/ðÍ ž¥�/¦ Total:×Íž¥†ôðÇÿˆÀº¹ Î ¹:Î ¹6Î ¹2Î ¹.ι*ι&ι"鬃 ¹("(" ,ØÍžØëÍžØëÍžØ×¦ For segment ÍžÌÌÙÚȡإ‚Ä?©�‚Ù‚Çÿˆ¾ÍžÙ‚̹öØ×¦ Procedure #ÍžØ©Í žØÍžØ¦O. 8ð‚« ¹ö¥�/ëÍž¥�/ëÍž¥�/ëÍž¥�/©'Í ž¥�/¦ Total operators×Íž¥�/Íž¶ëÍž¶ëÍž¶ëÍž¶©ffset(word) Total %×ÍžØÍž­u8ØúŸË¡Øú®Øø¸ê¡3¥�/Øù Í ž¥�/¶ Í ž¥�/¶©Љ‡dŠ� Ïž¥�/ÍžØûŸË¡Ø ®ÇØ« ÇÛÌðÙÈ¡îØðÍ žØ:͞إ/ðÇÿˆ¤øøÍ žØ¥/ðÇÿˆ¤øø©"Љ‡dŠ�ÏžØð‚Í žØ:͞إ/ð‚Çÿˆ¤øøÍ žØ¥/ð‚ÇÿSLDO SLDO SLDO SLDO SIND SIND SIND SIND SIND SIND SIND SIND REAL STRING BOOLEAN POWER BYTE WORD EXEC-ERRINIT RESET OPEN CLOSE GET PUT SEEK EOF EOLN READINT WRITEINTREADREALWRITREALREADCHARWRITCHARREADSTR WRITESTRWRITBYTSREADLNN WRITELN CONCAT INSERT COPY DELETE POS BLOCKIO GOTOXY IOCHECK NEW MOVELEFTMOVERGHTEXIT UREAD UWRITE IDSEARCHTREESRCHTIME FILLCHARSCAN DRAWLINEDRAWBLOC    ×·«ÆצCONSOLE:¯Æ¦#1:ׯ�«êÆ¥ˆ£·„¡¥�/Íž¥�/ÆÍž¥ˆ£ÆªPÍÎê¡¥�/ΩšÛúιôê¡ö¥�/ëÍž¥�/ëÍž¥�/צ s TRUNC ROUND SIN COS LOG ATAN LN orry but there were no accessesÍž¥�/צ3 to this data segment from dis-assembled proceduresÍž¥�/ÍžÍÆž!­ Z EXP SQRT MARK RELEASE IORESULTUBUSY PWROFTENUWAIT UCLEAR HALT MEMAVAL SLDC ABI ABR ADI ADR pÙÉØÉ�¡ÌÌÆ¼е¡ÆÆ¼’½Æ -¿¹Æ  ¿ÌÆ Æ¼½Æ¼ž$°¡ Æ ¼ž$°¡Ý‚ÌÆ Ƽݞ$‡½¹ö¹'Æ¼Š·¡Ý•ÌÆ ƼݑžLAND DIF DVI DVR CHK FLO FLT INN INT LOR MODI MPI MPR NGI NGR LNOT $�½Æ ¼ž$°¡ôØÃØÝ‚‚Å�¡Æ Æ ¼ž$‰‡ƒ½¹ØÝ‚‚Ä¡Æ Æ ¼ØÝ‚‚ž$‰‡ƒ½Æ ¼ž$°¡Ý‚ÌÆ Æ ¼ž$‡½ÌÌßÊÈ¡%Æ ¼žÌÆ ßÞ0‚¿SRS SBI SBR SGS SQI SQR STO IXS UNI LDE CSP LDCN ADJ FJP INC IND Æ Æ ¼ÞŠ–ž$�½ß‚̹òØÃÝÄ�¡VÆ Æ ¾¿Æ .¿ÌÝË¡: ÌÆ E¿ÝÉ¡ ÌÆ -¿Ý‘ÌÝ Å¡ß‚ÌÆ ßÝ †0‚¿ß‚ÌÆ ßÝ Ž0‚¿Æ ß¿¹`ÝÄ¡(Æ Æ IXA LAO LSA LAE MOV LDO SAS SRO XJP RNP CIP EQU GEQ GTR LDA LDC Ý‚žÆ Ý‚.¿Æ ØÝ•• ž Æ ؂݂¿¹3Æ Æ Ý•žÆ 0¿Æ .¿Æ Ý‘•0ž Æ Ý•Ø•Ý‚ ž Æ Ø‚¿ÙÆ ¾É¡Æ ¾ÌÜÆ ÙÍ­|¨, ôpLEQ LES LOD NEQ STR UJP LDP STP LDM STM LDB STB IXP RBP CBP EQUI Ît øøÍ žØ¥/ðÇÿˆ¤øø©#Љ‡dŠ�ÏžØð ‚Í žØ:͞إ/ð ‚Çÿˆ¤øøÍ žØ¥/ð ‚Çÿˆ¤øø©#Љ‡dŠ�ÏžØð@‚Í žØ:ÍGEQI GTRI LLA LDCI LEQI LESI LDL NEQI STL CXP CLP CGP LPA STE BYT EFJ žØ¥/ð@‚Çÿˆ¤øøÍ žØ¥/ð@‚Çÿˆ¤øø©#Љ‡dŠ�ÏžØð`‚Í žØ:͞إ/ð`‚Çÿˆ¤øøÍ žØ¥/ð`‚Çÿˆ¤øø©#Љ‡dŠ�ÏžØÍžNFJ BPT XIT NOP SLDL SLDL SLDL SLDL SLDL SLDL SLDL SLDL SLDL SLDL SLDL SLDL ð‚« ¹öØëÍžØëÍžØ×¦SLDL OPCODE: 216..231 TOTAL:͞ة"Í žØ©"©'Љ‡dŠ�ÏžØ×¦ % Íž©"®©"Ë¡ìØëÍžØÍžØSLDL SLDL SLDL SLDL SLDO SLDO SLDO SLDO SLDO SLDO SLDO SLDO SLDO SLDO SLDO SLDO  HEN FGET(F); *WHILE (FWINDOW^[0] = ' ') AND NOT FEOF DO FGET(F); *IF FEOF THEN GOTO 1; *CH := FWINDOW^[0]; *IF (CH = '+') OR (CH = '-') THEN ,BEGIN NEG := CH = '-'; FGET(F); CH := FWINDOW^[0] END; *WHILE (CH IN DIGITS) AND NOT FEOF DO ,BEGIN XVALID  Type  word = Packed Array[1..16] Of Boolean; "otherword = Packed Array[0..15] Of 0..1; "stackra = Array[0..30] Of Integer;:= TRUE; .X := X*10 + (ORD(CH)-ORD('0')); .FGET(F); CH := FWINDOW^[0] ,END; *IF FEOF THEN GOTO 1; *IPOT := -1; *IF CH = '. " "PROCEDURE BREADREAL(VAR F: FIB; VAR X: REAL); "PROCEDURE BWRITEREAL(VAR F: FIB; X: REAL; W, D: INTEGER); "Procedure Bgos' THEN ,BEGIN IPOT := 0; .REPEAT FGET(F); CH := FWINDOW^[0]; 0IF CH IN DIGITS THEN 2BEGIN XVALID := TRUE; IPOT := IPOT + 1; ub(Var stackptr: Integer; Var substack: stackra); "Procedure Breturn(Var stackptr: Integer; Var substack: stackra); "Procedure4X := X + (ORD(CH)-ORD('0'))/PWROFTEN(IPOT) 2END .UNTIL FEOF OR NOT (CH IN DIGITS); .IF FEOF THEN GOTO 1 ,END;  Bgetchar(Var s: String); "Function Bopenfile(Var donefile: word; 3Var FIBPTR:FIB;WINDPTR:WINDOWP;FILENUM:INTEGER; 3VAR TITLEÙÌØŠ½ÌÌÞûáÙÍÞø¾ ÃÞú“„¡Ù͹öÞú¡¹ðÞø¾ÌÚ+ÃÚ-Ã�¡Ú-ÃÌÙÍÞø¾ÌÚ²z¼‹Þú“„¡ÌØØ¼ Š�Ú0•Šƒ½ÙÍÞø¾Ì¹ôÞú¡¹ð:STRING;OLD:BOOLEAN):REAL; "Function Brandom(Var seed: Integer):Real; "Procedure Bautoinits(Var stackptr: Integer; 7Var donef‘ÌÚ.áBÌÙÍÞø¾ÌÚ²z¼‹¡ÌÝ‚ÌØØ¼Ú0•Ýž$‰‡ƒ½ÞúÚ²z¼‹“�¡òÞú¡¹jÚeÃÚEÃ�ÛÝÉ�„¡EÞûáÙ͹ޢšÙÆÍ Þú¡¹>Û“¡Øнile: Integer; Type  word = Packed Array[1..16] Of Boolean; "otherword = Packed Array[0..15] Of 0..1; "stackra = Array[0..30] Of Integer; " "PROCEDURE BREADREAL(VAR F: FIB; VAR X: REAL); "PROCEDURE BWRITEREAL(VAR F: FIB; X: REAL; W, D: INTEGER); "Procedure Bgosub(Var stackptr: Integer; Var substack: stackra); "Procedure Breturn(Var stackptr: Integer; Var substack: s7Var seed: Integer); "Procedure Bautorandomizedinits(Var stackptr: Integer; AVar donefile: Integer; $  4êPASCALSYBASICIO  Var seed: otherword); "  IMPLEMENTATION " "PROCEDURE BREADREAL(*VAR F: FIB; VAR X: REAL*); $LABEL 1; $VAR CH: CHAR;  NEG,XVALID: BOOLEAN; IPOT: INTEGER; "BEGIN $WITH F DO (BEGIN X := 0; NEG := FALSE; XVALID := FALSE; *IF FSTATE = FNEEDCHAR T ÝÉ¡ ÌÆ -¿Ý‘ÌÝ Å¡ß‚ÌÆ ßÝ †0‚¿ß‚ÌÆ ßÝ Ž0‚¿Æ ß¿¹`ÝÄ¡(Æ Æ Ý‚žÆ Ý‚.¿Æ ØÝ•• ž Æ ؂݂¿¹3Æ Æ Ý•žÆ 0¿Æ .¿Æ Ý‘BRANDOM BWRITERE ðBWRITERE  ØÙø¤Æ‘•¤ø‚šÙÙø‚šÙøˆÌ­&ÙÙø•šÙøˆÌÆ‘•¤Ø•0ž Æ Ý•Ø•Ý‚ ž Æ Ø‚¿ÙÆ ¾É¡Æ ¾ÌÜÆ ÙÍ­|¨, ôØÙø¤Æ‘•¤ø‚šÙÙø‚šÙøˆÌ­&ÙÙø•šÙøˆÌÆ‘•¤ØÙø¤øš­$Ø*ªP¶ÆÍ¶Í ¡Ø›¿¹¶Í ¡Ø› ¿¹Ø›Ù¿­¼<ß܈•Àº¡Þ͹ÞÝ‘ÍÞÛÚàÍÆž"нßÜˆÙø¤øš­$Ø*ªP¶ÆÍ¶Í ¡Ø›¿¹¶Í ¡Ø› ¿¹Ø›Ù¿­¼<ß܈•Àº¡Þ͹ÞÝ‘ÍÞÛÚàÍÆž"нß܈¶\Ä|'PASCALSYBASICCOMNUMBER2 NUMBER3 NUMBER4 NUMBER5 NUMBER6 NUMBER7 •À»­>ÚøÌÞ†ÌÇÿÞ•ÌÇÿÝ•ÌÞÛ„ÜÝ„�ÌÞÇ�ÌÇÿÞ•ÌÇÿÝ•ÌÞÛ„ÜÝ„�ÌÚÞšÆÞÇÿЉ‡½­TÚšÙšØÇ�Tš­•NUMBER8 NUMBER9 COMPINITCOMPCLOSPROG ÚšÆÆž ÙšÌÌÛÝÈ¡ØÛˆÀÆÛ•ˆÀºˆ»Û‚̹ö؈Àˆ»­ÿ4 N VpÊPz¦  Ý•žÆ 0¿Æ .¿Æ Ý‘ II0D0 Copyright(c)1979 Regents of the University of California, San DiegoTION I•0ž Æ Ý•Ø•Ý‚ ž Æ Ø‚¿ÙÆ ¾É¡Æ ¾ÌÜÆ ÙÍ­|¨, ôØÙø¤Æ‘•¤ø‚šÙÙø‚šÙøˆÌ­&ÙÙø•šÙøˆÌÆ‘•¤ØÙø¤øš­$Ø*ªP¶ÆÍ¶Í ¡Ø›¿¹¶Í ¡Ø› ¿¹Ø›Ù¿­¼<ß܈•Àº¡Þ͹ÞÝ‘ÍÞÛÚàÍÆž"нß܈ÆÙ¨¥SƾA•¤øñá¥SƾA•¤ž¥SƾA•¤øÌ¹G¥SƾA•¤øÌßñË¡ßÌÆߢµ ¡ßùÌ¹ßøÌ¹öÆžÆÞ¢µ ¡Þ¢ßš¹ÞßšßÌÞÌ à¢ñšàBASICIO BGOSUB ðBGOSUB BAUTOINI ðBAUTOINI BAUTORAN ðBAUTORAN BGETCHAR ðñšà¢Æ¨à¢Øš­S˜¥ žAÌZÌØÙÈ¡¥SØA•¤ñšØ‚̹öÐATN ×Î×ÐBY ÎÐCAT$ × Î×ÐCOS ÎÐCOP$ × Î×ÐBGETCHAR BOPENFIL ðBOPENFILBREADREA ðBREADREA BRETURN ðBRETURN BRANDOM ðDEF ÎÐDEL$ ×Î×ÐDIM ÎÐDATA ×Î×ÐEND )ÎÐEXP ×Î×ÐFOR ÎÐFN ×Î×ÐGOSUB ÎÐGOTO ×Î×BRANDOM BWRITERE ðBWRITERE  ØÙø¤Æ‘•¤ø‚šÙÙø‚šÙøˆÌ­&ÙÙø•šÙøˆÌÆ‘•¤ØÐGET$ ÎÐINPUT × Î×ÐIF ÎÐINS$ × Î×ÐINT ÎÐLET ×!Î×ÐLEN ÎÐLOG ×Î×ÐLN ÎÐMOD ×ÎÌÝÉ¡ ØØ¼Ý€ž$‡½¹ ØØ¼Ýž$�½Û¡Ü¡ ØØ¼’½¹¹¶š­­ì$ DÙÉØÉ�¡ÌÌÆ¼е¡ÆÆ¼’½Æ -¿¹Æ  ¿ÌÆ Æ¼½Ùø¤øš­$Ø*ªP¶ÆÍ¶Í ¡Ø›¿¹¶Í ¡Ø› ¿¹Ø›Ù¿­¼<ß܈•Àº¡Þ͹ÞÝ‘ÍÞÛÚàÍÆž"нß܈Ƽž$°¡ Æ ¼ž$°¡Ý‚ÌÆ Ƽݞ$‡½¹ö¹'Æ¼Š·¡Ý•ÌÆ Ƽݑž$�½Æ ¼ž$°¡ôØÃØÝ‚‚Å�¡Æ Æ ¼ž$‰‡ƒ½¹ØÝ‚‚Ä¡Æ Æ ¼ÖAÿõ¶ ZZüYØê3büï3ÆLû ûºûüXüšüÄüðü&OINI ðBAUTOINI BAUTORAN ðBAUTORAN BGETCHAR ðØÝ‚‚ž$‰‡ƒ½Æ ¼ž$°¡Ý‚ÌÆ Æ ¼ž$‡½ÌÌßÊÈ¡%Æ ¼žÌÆ ßÞ0‚¿Æ Æ ¼ÞŠ–ž$�½ß‚̹òØÃÝÄ�¡VÆ Æ ¾¿Æ .¿ÌÝË¡: ÌÆ E¿BGETCHAR BOPENFIL ðBOPENFILBREADREA ðBREADREA BRETURN ðBRETURN BRANDOM ð ×ÐNEXT "ÎÐNEW ×Î×ÐON #ÎÐORD ×Î×ÐOLD ÎÐPRINT ×$Î×ÐPOS ÎÐRETURN ×&Î×ÐREAD %ÎÐREM ×Ìڂ̹ö­ .ÆÛ¨¥•ÃÚ¤ùË¡/Ì Ì àáÈ¡Æà¾Íà‚Ì ¹öÙÍ¥•ÃÚ¤ùÍØÍÍ­•,  JΡòÇÂÍ ×ÐBWRITEREÎ×ÐRND ÎÐSTEP ×Î×ÐSIN ÎÐSTR$ ×Î×ÐTHEN ÎÐTO ×έ- @¥•åǃ¿¥•åÇÏ¿¥•åÇ凌åÇž¿ Î×ÐBREADREA Î×ÐBGOSUB  Î×ÐBRETURN  Î×ÐBGETCHAR Î×ÐBOPENFIL Î×ÐBRANDOM  Î×ÐBAUTOINI Î×ÐBAUTORAN¥•åÇÍ¿¥•åLJ¿¥•åÇŠ¿¥•åÇ¡¿¥•åǤ¿¥•å Ç›¿¥•å Ç¥¿¥•å Ǧ¿¥•å dz¿¥•å ÇÊ¿¥•åǼ¿¥•åÇÆ¿¥•åǶ¿¥•åÇŽ¿¥•åÇ�¿¥•åÇ’¿ ÎÌÌØÙÈ¡ ÍØ‚̹öÍ©@Íðǎˡ͹ô­‚/ Ú©BŸË¡ô©Búdž̶ÆÙ͸©BÌ�Ê�údžÙË¡,¶ÆÙ¥•åÇÁ¿¥•åÇ­¿¥•åǪ¿¥•åÇ–¿¥•åǽ¿¥•åÇš¿¥•åǹ¿¥•åǬ¿¥•åǾ¿¥•åÇ׿­ø¥P77•ǰ¿¥P87•Ç·¿¥P97•Ç´¿¥P:7•DZ¿Í¸Ê�údž̶ÆÙ͸Ê�úÄ¡ÆÊ�úÇŽÊ�ù¿¹.Ê�¢ÆžÆÊ�úÇŽ‘ƾ¿ÆÊ�úÇŽ‘‚ƾ¿¥BÍ ©BŸÃ¡ö­¹”¥P;7•ǵ¿¥P<7•ǯ¿­>¥•¯•¤𥕝•¤𥕝 •¤𥕝 •¤𥕝 •¤𥕝 •¤𥕝•¤𥕝•¤𥕝•¤𥕝•¤ ¼Îζ¥�¯ðò•Çÿ‚džǑÍÌέ,2Ò"øX Í¥•ÃÚ¤ùÍØÍÍ­•,  JΡòÇÂÍ ×ÐBWRITERE𥕝•¤𥕝•¤𥕝•¤𥕝•¤𥕝•¤ÇŽš¥•¯•¤𥕝•¤š­´ÎÎÎÎÇÿ'‚ǎæOUTBUFSIZE MOD 512 <> Î×ÐBREADREA Î×ÐBGOSUB  Î×ÐBRETURN  Î×ÐBGETCHAR Î×ÐBOPENFIL Î×ÐBRANDOM  Î×ÐBAUTOINI Î×ÐBAUTORAN 0×Ͷ ¥•ôÇ‘ÍÌÙË¡"¶צWORKFILE EMPTYͶ͞¶ ¥•ôÇ‘ÍÌÙË¡"¶¦WORKFILE EMPTY×Ͷ͞« ÎÌÌØÙÈ¡ ÍØ‚̹öÍ©@Íðǎˡ͹ô­‚/ Ú©BŸË¡ô©Búdž̶ÆÙ͸©BÌ�Ê�údžÙË¡,¶ÆÙ«—õ«««;ÌÌÚÛÈ¡¥•ÕÚ•¤šÚ‚̹öÌÌØÛÈ¡¥•ÃØ¤¢šØ‚̹ôÌÇÌÚÛÈ¡¥€‘Ú¤ŸšÚ‚̹ò¥€�³$€ ½¥y³€ ¥•ÃÚ¤ùᥕÃÚ¤¢©9š©9‚«9¥OÍ©O‘š¥•ÃÚ¤ùÌ­¶8ë•ÌÌØÅÙÈ„¡¥•ôؾ áÙ‚ÌØ•̹öØÌë•ÌØÚÈ¡¶¥•ôؾÍØ‚̽¥u³×  ½¥€‰³{ü¥y¼œ ½¥q³ÿ€‘ ½¥mÇ@n ½¥€…³ €Ä¥q¼œ ½¥€�³@ ¥m¼œ ½¥}¥€…¼¥€�¼œ¹ô­B R¶¦+PRESS SPACEBAR TO CONTINUE OR ESC TO ESCAPE×ͶͶÆÍØ ÃØÃ�¡öØáž­Í `ÆتP®¶ ½«@¥Ež©E«F¥Cž©C«DŸ«AŸ«BŸ«KŸ«JŸ«IŸ«HŸ«GŸ«OŸ«N«MÌ?ÌÚÛÈ¡ ¥�¯Ú¿Ú‚̹ð@ÌÇ¿ÌÚÛÈ¡ ¥�¯Ú ¿Ú‚̹îÇÀÌÇÿÌÚÛÈ¡ ¥�¯Ú¿Úצ <--ͶÆÍ¶Í®­R.©;¡ØšÙ©?š©?‚«?©?©=Å¡©?«=¹/Øš©IŸÃ¡ÙÍ ÆÍÚÙøš¹ ©IÌ©Iù«IÙÚøšÚ¢©KšÚ«K­¡V‚̹ìÇ« «9« «¶צUCSD BASIC Compiler [D0]Í­÷Ecr’°tz4xºx ¦WORKFILE EMPTY×Ͷ͞«©;¡©?•«?¹$ÌÌØÚÈ¡©KÌ©Kù«KÙ¢©IšÙ«I؂̹ö­ :©;¡ØšÚ©?š©?)‚«?©?©=Å¡©?«=¹/Øš©HŸÃ¡Ú)Í ÆÍÛÚøš¹ ©HÌ©Hù«H«—õ«««;ÌÌÚÛÈ¡¥•ÕÚ•¤šÚ‚̹öÌÌØÛÈ¡¥•ÃØ¤¢šØ‚̹ôÌÇÌÚÛÈ¡¥€‘Ú¤ŸšÚ‚̹ò¥€�³$€ ½¥y³€ ÚÛøšÛ¢©JšÛ«J­¡V©;¡©>«?¹©JŸË¡©JÌ©Jù«JØ¢©HšØ«H¹ö­. ÆÆžÙƾǀ‚Í Ù‚Æ¾Í ­H( ¥PØ7•¾Í©OŸË¡©Oø‘á͹ð©Oø•Í©Où«O¹öÍ©9•ÍÍ ðÇŽÍ ðÇ•Ç†Í ðǎˡ͹ô­\ dÌÌÌÚÛÈ¡¥•ÃÚ¤ùˡͭ€ ¥PØ7•¾ÍÍ­€ ÙØ•ÌÆÆžÙÆ¾Í Ù‚Æ¾Í ­( ØÙ••ÌÚÄÚÈ„¡ÙÚÍ ¹"©M@á¥NÍ©NØš©M  Ë¡ö­ $Ú%Å¡¦ EXP TOO BIG×®¹3Ú%‘É¡¦ EXP TOO SMALL×®¹ÚÄ¡ ÆÚž$½¹ ÆÚ‘ž$‰‡½­R%Øšê0Äê9È„¡ØØø �𨨸ê0•ÜžÜø¢Û‚Ú®-ÌÜøÞšÛšܸ¢š¹Üø¢ šÝÞ® ÞÜøù‚�̹ܟšÚÌ­ f-í-ÃØŸË„¡®#®+¥•¯•¤ø®ÍØøÍØú̹öí-ÃØŸË�¡צ WRO‚š®"¹ö­(&ÛÆ¼½Úšê³Øÿ‹¡ÚÚø‚šÛÛ¼ Š�ꊃ0Š–½®"¹ö­ , >'¶¸¥צªPê¶Ë¡'¥ÌÆ¥PÍÆ¦*×QÍNG # DIMS®­ÜD L.®# ÍðÌð‚« ®+¥•¯•¤ø®ÍðÌð‚« Ù¡Ú¢Ø®-ÌÚÜšÚ¢ šÛÜÚù‚�Í ¹Úú®.ÚøÌÝÜ® ÞÛø® í3Ë¡)® ®#­ÆªP¥¥¾ê¿®!¹ö¸¶‚¸®!ê¶Ë¡ô¸¶†Ì¶ØÈ¡/¥ÌÆ¥PÍÆ¦*×QÍÆªP¥¥¾¶¿¶‚¸¹ò¶¡ð>«ê á®"­•Ig›l/öÌ¥€‘Ù¤øŸÃ¡Ù®¥€‘Ù¤øûŸÃÌØ¡¥€‘Ù¤ø¢ž¥€‘Ù¤øû¢ž¥€‘Ù¤øû¥€‘Ù¤øûùØ®/­V0öÌ¥€‘Ù¤øŸÃ¡Ù®¥€‘Ù¤øúŸÃÌ‚«MÙÇø©M•©M•Í ­©BÚ©DùÈ¡I©C¢Úš©DÌÝùÚË¡ÝøÌ¹öÝ©Cá¦DIDN'T FIND LINE NUMBER׮ءÙÝú® ¹ÙÝú®¹E©E¢Çÿš©FÌÚÝùÅ¡ T°(®"ê-øê-Ãê+Ã�¡®"ê0Éê9Ä�¡ צEXPONENT® ² ®&¶¡¶ ‘¸ ¥ ¥ ¼¶ ®%�½­R)ï¡ì««¹àêÌê'Ëê"Ë„¡®"¹®!Ù ÃÝÌÝøÌ¹ôÆÍÛ¢ÚšÛ¢ٚءÛ¢Ûú‘šÛݚݩFáÛ«F¹ÜÛš­ú<‰ ¢ÙðØ®ð‚« Ø¡ð‚« ­©C¢‘šÙ©DùÈ¡צLINE #'S NOT ¡X©—õ2ŽÃ¡ ¶Í¶<Ͷ©—õÍ ¶>Ͷ.Í©—õ‚«—õêá®!®!ê0Äê9È„¡ ¥Î&?«¹¹ö¹âÙ"ÉÙ^Å�¡N¶Í¶צORD(c)= ͶÙIN ORDER®ÆÍڢٚڢؚکDšÚ«D©E¢‘šÙ©Fùá©FúÉ¡ ©Fú‘Ø® ¹©FúØ®¥FÍ ¹ö­Æ' t ÍÍð¡ÍÆÆ�žÆ¾ÍƾÍÍ ¶Í¦!CHARACTER DOES NOT BEGIN A SYMBOL×®¹äÙ¹èê=á:Î$¹ ê>á<Î$¹7«¹æê=á;Î$¹ ê<á<Î$¹9«¹æê<á:Î$¹ ê>á;Î$¹8«¹æêÆ¾ÍÆ¾Í­> ÍØÍÍÍ­ ÍØÍÍÍ­ÆتPð“¡Í ÍÆ¾ÍÌ+ƾÌ,Ê+Ê,È¡ÆÊ+*á1Î$¹6«¹æ1«¹æ.«¹æ/«¹æ0«¹æ2«¹æ3«¹æ4«¹æ5«¹æ-«¹æê Ë¡®!¹ô¹ö¹æÎ(¹æ¥ Æ Ù0•ŠÎ'ê.á®"¥ Æ ¥ ¼Î'¥ ¥ ¼áÎ%‡½êEáÎ)=«¹¾ÍÊ+‚Ì+¹ö­VBءͩ;¡Í¹Í¹ ÍÙÍ­Ê(©;¡Í¹ÍØÍ­ÍØÍ­ÍÍæê0Éê9Å�¡ צFRACTION® ¥ Æ ³žÎ'¥ ¥ ¼áÎ%‡½êEáÎ)=«¹æêAÉêZÅ�¡0ê0Äê9È„¡ÙA• �ê0•‚‚«®"¹ÙA•«ê$á(«®"¹'«¹êÙFÃêNÄ¡ ØÍ­¥€‘ؤž¥€‘ؤøÌÙ¢ŸšÙŸšÙ¢ŸšÙ¢ŸšÙ¢ŸšÙ¢Ÿš­6©:+᥀‘©L¤øüù̹ ¥€‘©L¤øýùÌÌÝŸË¡ÛÝùÃÝúÚÄ¡ Ì«®"¹ö¹ì¥SÙA•¤øÌ¥SêA•¤øÌÚÌÌ Ì ä¡2ÚñË¡ Ì ÝÌÚ̹Ýñáצ RESERVED WORD® ¹öã‚Ì ®"¹0ÛñË¡ Ì ÝÌÛ̹Ýñáצ RESERVED WORDÜÝøšŸÌ¹Ýû̹ö­F% P¥€‘¶¤øùŸÃ¡¥€‘¶¤ø¢ž¥€‘¶¤øùÍ ¶¥€‘¶¤øùøš­ÌB¥€‘Ù¤øŸÃ¡Ù®Øš©;¡%Ù©Lé:*® ¹ö®"ã‚Ì ñ¢ãê¿ÝÌêÝ¢ã¾Ë¡êÝ¢ã¾É¡ÝùÌ¹ÝøÌ¹òܢ㾠ÃÝñÄ¡ðÜþá=ê Ë¡®!¹îä¡®#í?Ë¡צ END OF LINE® õð®¹ö¹צ RESERVED WORDġؚښ¹ÚÙ'®¡Î¹Øš¹Î­D¥€‘¶¤øøŸÃ¡¥€‘¶¤øž¥€‘¶¤øø)Í ¶¥€‘¶¤øøøš­@¥€‘Ù¤øŸÃ¡Ù®Ø® ä¡Üþ«¹«Üþ«'«ÙA•«¹æ¶Í¶¦c = ×ͶÙͶÍצ!CHARACTER DOES NOT BEGIN A SYMBOL®¹æ¬P"^¹z&DVXZ0XUš©;¡&Ù©Lé:+Ä¡ ØšÚ©<š¹ÚÙ(®¡Î¹Øš¹Î­FÆتP®¶צ <--EXPECTED ͶÆÍ¶Í®­R8 ¥•ô뾫êÃhLqk>@BDFHJLNP‚oî¾ÙŒoîðòôöøúüþ   ÄÆÈØî¡Pí³€‹“¡¦REAL,¡Q¶ ¥•ôǑͫ—ö©—öË¡+¶¦UNEXPECTED END OF INPUT×Ͷ͞«¥•ô뾫ë‚«­j!®!ê Ë¡ö­Ã "Ø«®!êSTR,INT FUNC OR FNEND×® í¹*«¹+«¹,«¹¬ ')¹«­(VXZ\à.0‡(¼t|#í-áS®#®+¥•¯•¤ø®ÍðÌð‚«  ¼б�¡¦INT MUST BE IN 1..16×®¥•Õ¥ ¼ž•¤øË¡ צFILE #'S MAY NOT BE CHANGED®Í ÆÇ,Í ¥•Õ¥ ¼ž•¤ÙšÙÍ ÆÍ ØÍ ð¡ÍÍ ©=•¶•�Ͷ¶‚ÍðØ•Íð¶•Í¥OÍ©Oðš©9•ÍÍ­bI®#í¥u¼‹“¡ צFN IDS® ö«Lí«:®#ÎBÎCÎDÎGÍð‚« ¥ ¼žÍ®#®8¥•¯¶•¤øÍÍÍͮͭ"=íÌ®#عöÎ5¹ôÎ9¹ôÎ:¹ôÎ7¥•¯Ø•¤ø®¹ôÎ=¹ôÎ7Î8͹ôÎ7¥•¯Ø•¤ø®ÍðÌÎEÎF©F©EË¡צUNRESOLVED FORWARD JMP(S)®ÎIÎHÝ•ð®­nA©?«>®+® ­JÆتP®¶צ <--ͶÆÍ¶Íí?Ë¡®¹ôÍ ÍÍͮ͹ôÎ7Î8ÍÍ¥•¯Ø•¤ø®Í¹bÎ;¹^Î<¹ZÎ7Í͹MÎ7¥•¯Ø•¤øÍ ÍÍ͹0¬C¹(:'6<#¹ö® *ž­ÎR >KÆتP®¶צ <--EXPECTED ͶÆÍ¶Íí?Ë¡®#¹ö® *ž­RFL®#í'Ë¡ ¦VARIABLE×®LöÌ®#í8Ë¡¼¶eºÀš¼¾ÀÂÄÆ´º¼šØ³Í‹“¡ í3Ë¡)® ®#­L 4í'á!®#í2á®0¹ ÆöÆ®ØÚÍ Í͹Eí=á ¥ ¼®®#¹6í2Ã=®L®#ÆÞÆ ®ØàÍ ®JÍÍíË¡צTO®L®#ÆÆ®ÝßÍ ®JÍÍÆÆ®ÜßÍ íá®#®J¹Š®ÍÍí?Ë¡¦ END OF LINE×®Lõð®®#ðÌØà¡®#®+í3Ë¡)® ®#¹!í*á®2¹í¥q¼‹¡®4¹ צFACTOR® ­t>®>í1á ®#¥•¯•¤ø®®>Í¥•¯•¤ø®¹ö­¡( 2?®?í³¡AÍ ÍÍÝßÍ ÍÍ9® ÍðÌð‚« í"Ë¡®*í?Ë¡¦ END OF LINE×®Lõð®®#¹ö®#ØàÍ ØàÍ ÍÍÜßÍ ÍÍÍÍÍÍðÚ®‹¡íÌ®#®?Ø6á͹͹ö­*4@Ìí/á®#¹ í.áÌ®#Î@í³ÃÀ‹¡íÌ®#Î@Ø/á͹͹öÙ¡Í­#0 Pð‚« Ûð®í'Ë¡צ VARIABLE NAME®LÞöË¡¦IMPROPER FOR-NEXT NESTING×®K®#®­æ£ pM®#©?«>í¥€…¼‹¡®+̹®,Ìí¥€�¼‹“¡¦ CØ¡¥€‘Ù¤ø¢ž¥€‘Ù¤øú¢ž¥€‘Ù¤øú¥€‘Ù¤øúùØ)®/­V1؟áí2áצ NO ARGUMENTS® ¹jí2Ë¡צ ARGUMENTS® ®#Øú(Ë¡®+¹®,ØûÌ+í¥m¼‹¡®4¹2í(á®#í2á®1¹ ÆöÆ®ÙØÍ ¹í+á®2¹ í>᥮®#­H,¥€‘©L¤øŸÃ¡©L®©:+á?¥€‘©L¤øüŸË¡¦FN ALREADY DEØŸÃí-Ë�¡öØŸË¡צMORE ARGUMENTS® ¹í-áצLESS ARGUMENTS® í3Ë¡)® ®#­¶Z ’3öÌíÌ®#¥€‘Ù¤øŸÃ¡ ¦UNDEF FN×®Ú+áB¥€‘Ù¤øFINED×®¥€‘©L¤ø¢ž¥€‘©L¤øü©9š¹=¥€‘©L¤øýŸË¡צFN ALREADY DEFINED®¥€‘©L¤ø¢ž¥€‘©L¤øý©9š­šB©9ÇþÅ¡'צ EXCEEDED üŸÃ¡ ¦UNDEF FN×®Æ)Æ®ØÛÍ ¥€‘Ù¤øüùÎ3¥€‘Ù¤øüø®ØÛÍ ¹7¥€‘Ù¤øýŸÃ¡ ¦UNDEF FN×®¥€‘Ù¤øýùÎ3ÍÍ¥€‘Ù¤øýø®­¦2ÆMAX NUMBER OF FUNCTIONS®¹©9‚«9­×>C©:*ḹ¸Ÿ¸¸í2áw®#í¥y¼‹“¡ ¦ARGUMENT×® ¶ŸÃ¡ Æžظ¹ Ø¢žØûÌ)²®ضÍ ÍÍضÍ í2Ë¡(® ®#®,PÍ¥•¯¶•¤ø®ضÍ í-Ë¡ö­ $ R5Øá®,¹®+Øá ¥•¯•¤ø®­ $6í2Ë¡ØÌÙ¢öšÙ¢íší(á¶‚¸¶‚¸¹¶‚¸®#í-Ë¡öí3Ë¡)® ®#Ø¢Ÿš©:+á ¶‚¸¶«<­� ²D¶¶•)�‚‚̶̩:+á¶(® ®#Ø®6­ 7í-Ë¡,® ®#Ø®6­ 8Æ)²®ضÍ ®7ÍPÍضÍ ®8®8¥•¯¶•¤ø®­<9®7Æ)²®ضÍ̹¶‚ÌØŸË¡>ØÌÛú(á'Ù•ÌÍÚÍ ÍÙÍÍPÍÛÚšÚ)•̹ٕÌÛÙšØû̹ö©:+᥀‘©L¤øü¢¶š¹¥€‘©L¤øý¢¶š­šl  ضÍ ®8ÍPÍضÍ ®8®8¥•¯¶•¤ø®­F:Æ)²®ضÍ ®7ÍPÍضÍ ­*;Æ)²®ضÍ Í®œE«;¶¶)�‚‚«?©?«=í8á0®#ÍÍ©:+á®,¹®+©:*á Í͹ÍP͹.í?Ë¡צEND OF LINE OR =® õð®®#í,Ë¡®*í,áö®#«;­ÍضÍ ­*<©;¡"צOLD AND NEW NOT ALLOWED IN FN®í2Ë¡(® ®#í=Ë¡¦ INT CONST×® ¥ ¼¥ ¼žŠ·¡צ INT CONST® ¥ ¼е¥ 3„F©F¸©E«F©D¸©C«D©N¸Ÿ«N©M¸«M­*G¶«F©D©CË¡¥DÍ ¹ö¶«D¶«N¶«M­,HðÌÍ©:*áÍ¹Í Ë¡(®L®#¥€‘ö¤øú¢ž¥€‘ö¤øúùÎQÌ¥€‘ö¤øúÙÍ ¹^¥€‘ö¤øûŸË¡צARRAY PREEXISTS®K¥€‘ö¤ø¢ží2Ë¡(®L®#¥€‘ö¤øû¢ž¥€‘ö¤øûùits: stackptr's offset <> 5×ÍÆÍ ØÃצ$genautoinits: substack's offset <> 6Í­Ð]¥OÍ©O‘šÎ#Î]ðÌÍ Í Í ÍÎQÌ¥€‘ö¤øûÙÍ í3Ë¡)®L®#í-Ë¡ö­Í  P¶¦READ STMT NOT IMPLEMENTED×Ͷͮ#í4á®#í=Ë¡¦ FILE NUMBER×®L®#í¥y¼‹¡)ÎÍí?Ë¡¦ LINE NUMBER×Î õðÎÎ#í)Ë¡(íáÎA¹Î*í?Ë¡צ END OF LINEÎ õðÎÎ#¹ö©F©EË¡¦UNRESOLVED FORWARD JMPS×ÎÎ\ðÌÍÍ®#í-á"®#í¥y¼‹“¡¦ VARIABLE NAME×®L®#¹ö­ž* †Rí¥y¼‹“¡צ VARIABLE NAME®Lö¸¶¡®?ÍÍ®®¶¶®©?«>í(á3ð¡ÍÍ ©@•�ÍÍðØ•ÍðÙ•ÍðÍÍÍ­�Þ亂:ˆÀú.äJ D.®j ‚ Î  š  4 d î �HŒ8 Î@®#í2á®1¹²¶²®¶¶Í PÍ®¶¶®®¹+®#í2á®0¹ ²¶²®¶¶Í ͮͮ ®­R´T®#ÌÌí4ás®#íÆîNšÜø>ÌBšÜ8”XV¤`J¢XœÊ"Ö>VÆN  Þ ˜ (!~!º!Ô!ê! "8"€"ž"¼"#z#š#B$Š$¸$Ô$ð$%R%®%î%J&~&ä&<'º ]toin=Ë¡צ INT CONST®L¥ ¼ž¥ ¼‰·¡¦FRACTION NOT ALLOWED×®K¥•Õ¥ ¼ž•¤øÃ¡צ UNDEF FILE®KÌ¥•Õ¥ ¼ž•¤øÌ®#ÎTí-á®#ÎT¹ö­®its: stackptr's offset <> 5×ÍÆÍ ØÃצ$genautoinits: substack's offset <> 6Í­Ð]¥OÍ©O‘šÎ#Î]ðÌÍ Í Í Í ˜S¶¶®©?«>í¥€…¼‹¡®+ÍÍͮ͹ ®,Í®® ® ®­FV®#ÌÌí4ás®#í=Ë¡צ INT CONST®L¥ ¼ž¥ Ù©@š©@Ø‚«@­ ØøÌ©GŸÃ¡Øž¹ Ø©Gš©Gù«GØø¢Ùš­ (ØøùÌØø¢©G𨸫GØÙš­GÙòÄ¡ ¥�¯Ùò•Ø¿¹¥BÏ©BÌÛ¢ÙšÛ¢¼‰·¡¦FRACTION NOT ALLOWED×®K¥•Õ¥ ¼ž•¤øÃ¡צ UNDEF FILE®KÌ¥•Õ¥ ¼ž•¤øÌ®#ÌÌí¥}¼‹Ù„¡!ÌÎVí³ ‹ÌÙ¡íØšðòÇÿ'‚á*©—ô¶¥�¯Çÿ'‚džǑ͂«—ôòÇÿ'‚‚« ­\ ðØÏ ð‚« ­Ø¥•娾Ï­­ÆÆžÆ¾ÏƾÏ5ËÌ®#¹öÛ¡ ØÚ®®®­< ÊU¶¦DATA STATEMENT NOT IMPLEMENTED×Ͷͮ"®#í¥€…¼‹¡®+¹®,í-á®#í¥€…¼‹¡®+¹®,¹ö­­ÛØÈ¡ØÏ¹ÆÆžÆ¾Ç€‚ÏÆ¾Ï­',©OÌ©9•ÌÙÌÚÜÄ¡ ÛùÌڕ̹öÛø‘Ãצ FILLINDICTÏÛØš­)>¦ fW®#í=Ë¡¦ LINE NUMBER×®L¥ ¼žÌÍØ®®#­Í2X®#í=Ë¡¦ LINE NUMBER×®L¥ ¼žÌÍ Í Í®ÍÍØ®ØøÌ©AŸÃ¡Øž¹ Ø©A𨸸«AØøÙš­&ØøøÌØø©A𨸫AØÙš­š Øá Ϲ ØÃ¡Ï¹ ÏÙÏ­" ©NŸË¡ ð©Nø•Ï¥NϹOMPARATOR×®LíÌ®#Ù¡®+Ø® ¹®,Ø® ® í³Í@‹“¡¦ THEN OR GOTO×®L®#í=Ë¡¦ LINE NUMBER×®L¥ ¼žÌÍÚ®®#­®œN®#®J¥•¯•®#­,HYÍ Í Í®Í®#­ Zí!á®#í¥y¼‹“¡ ¦VARIABLE×®LöÌ©?«>í(á-®#í2á®1¹ ÆÙÆ®ØÚÍ í8Ë¡=®L®#®¤ø®íË¡ צGOTO®L®#Íð¡ÍÍðÌð‚« ÍdžÍí=Ë¡¦ LINE NUMBER×®L¥ ¼ž®®#Ìí-á)®#í=Ë¡¦ LINE NUMBER×®L¥ ¼ž®®#,ÍP͹+®#í2á®0¹ ÆÙÆ®ØÚÍ í8Ë¡=®L®#®+ÍÍ® ­Œ[í¥€‰¼‹“¡¦COMMAND KEYWORD×ÎLí¹0Î[¹RÎR¹NÎM¹JÎN¹FÎO¹BÎP¹>ÎUق̹öÆÆžØÆ¾Í Ø‚Æ¾Í ­K¶Oí=Ë¡¦ DIMENSION×®LÚ¢¥ ¼žš®#í-á®#Ú¢žÚÚú®QšÚù‚Úø�̹¶¡Ú)š¹ÚšÚøÚù¹:ÎW¹6ÎX¹2ÎY¹.ÎZ¹*ÎS¹&¬(¹&4 6F:4J(RT­€*ÌÌØÙÈ¡(¥•ÕØ•¤øË¡¥•ÕØ•¤øÍ ͮ؂̹ö­B0‚�ÌÚ¢Ÿš­bQ®#í¥y¼‹“¡צARRAY VARIABLE®L¥€‘ö¤øŸÃ¡ö®í(ÃÌ®#Ø¡e¥€‘ö¤øúŸË¡¦ARRAY ALREADY EXISTS×®K¥€‘ö¤ø¢ží2 >\ÆÍ Øæ genautoinits: seed's offset <> 3×ÍÆÍ ØÃצ$genautoinits: donefile's offset <> 4ÍÆÍ Øæ$genautoin Í Í Í Á,è/\Ú޲ŒÜüFhÀ Ø2­\ ðØÏ ð‚« ­Ø¥•娾Ï­­ÆÆžÆ¾ÏÆ¾Ï   TYPE $   TYPE $   TYPE $ ­ÛØÈ¡ØÏ¹ÆÆžÆ¾Ç€‚ÏÆ¾Ï­',©OÌ©9•ÌÙÌÚÜÄ¡ ÛùÌڕ̹öÛø‘Ãצ FILLINDICTÏÛØš­)>   TYPE $   TYPE $   TYPE $ ØøÌ©AŸÃ¡Øž¹ Ø©A𨸸«AØøÙš­&ØøøÌØø©A𨸫AØÙš­š Øá Ϲ ØÃ¡Ï¹ ÏÙÏ­" ©NŸË¡ ð©Nø•Ï¥NϹ   TYPE $   TYPE $   TYPE $ ÖÿÆتPÙ“¡XÌ,dÌ-Ê,Ê-È¡¶ÍÊ,‚Ì,¹ö¶¦"ASSERTION FAILED, REPORT MESSAGE: ×ͶÆÍ¶Í­UV l   TYPE $   TYPE $   TYPE $   TYÍ Í Í Á,è/\Ú޲ŒÜüFhÀ Ø2­\ ðØÏ ð‚« ­Ø¥•娾Ï­­ÆÆžÆ¾ÏƾÏPE $   TYPE $   TYPE $   TYPE $ ­ÛØÈ¡ØÏ¹ÆÆžÆ¾Ç€‚ÏÆ¾Ï­',©OÌ©9•ÌÙÌÚÜÄ¡ ÛùÌڕ̹öÛø‘Ãצ FILLINDICTÏÛØš­)>   TYPE $   TYPE $   TYPE $ ØøÌ©AŸÃ¡Øž¹ Ø©A𨸸«AØøÙš­&ØøøÌØø©A𨸫AØÙš­š Øá Ϲ ØÃ¡Ï¹ ÏÙÏ­" ©NŸË¡ ð©Nø•Ï¥NϹ$SCDATETYPE = PACKED RECORD 6MONTH: 0..12; 6DAY: 0..31; 6YEAR: 0..100 4END; $ $SCCHSET = SET OF CHAR; $ $SCšEDITORUNSCONTROL LONGSTRING = STRING[255]; $ $SCSCRNCOMMAND = (SCWHOME,SCERASS,SCERASEEOL,SCCLEARLNE,SCCLEARSCN, 5SCUPCURSOR,SCDOWNCURSOR,SCL EFTCURSOR,SCRIGHTCURSOR); 5 $SCKEYCOMMAND = (SCBACKSPACEKEY,SCDC1KEY,SCEOFKEY,SCETXKEY,SCESCAPEKEY, 4SCDELKEY,SCUPKEY,SCDOWNKEY,SCLEFTKEY,SCRIGHTKEY,SCNOTLEGAL); 0  SCCHOICE = (SCGET,SCGIVE); $  VAR "SCVERSION : STRING; "SCDATE : SCDATETYPE;   PROCEDURE SCUSEDATE(DOWHAT:SCCHOICE; VAR TDATE: SCDATETYPE);  PROCEDURE SCERASETOEOL(X,LINE: INTEGER);  PROCEDURE   TYPE $   TYPE $   TYPE $   TY SCINIT;  PROCEDURE SCLEFT;  PROCEDURE SCRIGHT;  PROCEDURE SCUP;  PROCEDURE SCDOWN;  PROCEDURE SCGETCCH(VAR CH: CHAR; RETURö­Ï  ÆتPÙ“¡XÌ,dÌ-Ê,Ê-È¡¶ÍÊ,‚Ì,¹ö¶¦"ASSERTION FAILED, REPORT MESSAGE: ×ͶÆÍ¶Í­UV lPE $   TYPE $   TYPE $   TYPE $  Ù¢ º¿¥€¢ÀÙ¢$Àº»¥€¢Ù¢ º¿¥€¢ÀÙ¢$Àº»¥€¢Ù¢#º¿¥€¢ÀÙ¢$Àº»¥€¢Ù¢#º¿¥€¢ÀÙ¢$Àº»¥€¢Ù¢ÆÆ�צ:ÆÍÍÆ�ªPÆצ:ÆÍÍÊƀȾ‚‚Ì€ÅÊ€ÅÆ€ñ¾‚̀ƶÆ€ÈͶ¢º“¡ôÆʀ¾ áʀ‚̀ÂÊ€ÅÊÏÆ¾Ê€Â•¥€ºÊ!º¿¥€¢ÀÙ¢$Àº»¥€¢ ¿¥€¢À»¥€¢Ù¢"º¿¥€¢ÀÙ¢$Àº»¥€¢Ù¢!º¿¥€¢ÀÙ¢$Àº»¥€Ù£.À»¥€¢Ù£.¿¥€€Å‚•ʀƕÏÌ€ÄÆ¾Ê€Â•¥€º•ʀƕšʀđ ÆÊ€ÂʀĂž Ì€ÃÊ€ÄÊ€Ã‚Ì€ÄÆ€™Ê€Ä¿ÆÊ€ÂÆ€™ʀжƀ™ÍÚ“¡¶¦ ? ×͹ ¶צ NONMATCH: SCCHSET);  PROCEDURE SCCLRSCREEN;  PROCEDURE SCCLRLINE(Y: INTEGER);  PROCEDURE SCHOME;  PROCEDURE SCERASEOS(X,LINE¢ÀÙ¢/ Àº»¥€Ù£.À»¥€¢¿¥€¢À»¥€Ù¢)ºÀ»¥€¢Ù¢)º¿¥€¢ÀÙ¢/ Àº»¥€Ù¢-ºÀ»¥€¢Ù¢-º¿¥€¢ÀÙ¢: INTEGER);  FUNCTION SCSCRNHAS(WHAT: SCSCRNCOMMAND): BOOLEAN;  FUNCTION SCHASKEY(WHAT: SCKEYCOMMAND): BOOLEAN; / Àº»¥€Ù¢,ºÀ»¥€¢Ù¢,º¿¥€¢ÀÙ¢/ Àº»¥€Ù¢,ºÀ»¥€¢Ù¢,º¿¥€¢ÀÙ¢/ Àº»¥€Ù¢'ºÀ»¥€¢Ù¢'º¿¥€¢ FUNCTION SCMAPCRTCOMMAND(VAR KCH: CHAR): SCKEYCOMMAND;  FUNCTION SCPROMPT( 3LINE:SCLONGSTRING; XCURSOR,YCURSOR,XPOS,WHERE:ÀÙ¢/Àº»¥€Ù¢'ºÀ»¥€¢Ù¢'º¿¥€¢ÀÙ¢/Àº»¥€Ù¢(ºÀ»¥€¢Ù¢(º¿¥€¢ÀÙ¢/Àº»¥€Ù¢(ºÀ »¥€¢ Ù¢(INTEGER; 3RETURNONMATCH:SCCHSET; NOCHARBACK: BOOLEAN 2): CHAR;   IMPLEMENTATION  CONST "SCEOL = 13; SCLF = 10; SCDC1 = 1º¿¥€¢ ÀÙ¢/Àº»¥€¢¾Ã¡¥€¢¿¥€¦#For use with SYSTEM.MISCINFO [S.5b]תP¥€V ž ¥€ ž ¶¢"º Å¡ ¶¢" »¥€¶¢7;  SCMAXSW = 84; {Maximum allowable screenwidth} "  VAR "TRANSLATE : PACKED ARRAY[CHAR] OF SCKEYCOMMAND; "SCFILLIT : ST"º¿­F€ �ÙáزC¨¹ ²Cب¥€Ø¨­¹"¥€Ì¶¥€ÍÙ¢ØÀº¡ ¶ÙøÍ¶Ù¢ؾÍ­6ÙØÍÏ¡RING[11]; (*For writing in front of controls*) "SCSCREEN : PACKED RECORD (* For sending to screen *) 0PREFIX: CHAR; 0HEIGHT,Ϲ7Ø¥€¢ºÃ¡¥€¥€ºÙ•ž¹¥€¥€ºÙ•‚žÙØÍ­PÏ­ Ï­ Ï­ Ï­WIDTH: 0..255; 0CANUPSCROLL,CANDOWNSCROLL,SLOW: BOOLEAN; 0HASPREFIX: PACKED ARRAY[SCSCRNCOMMAND] OF BOOLEAN; 0CH: PACK ¥€¢Ú¾ËÌ­ ¥€¢Ú¾ËÌ­¥€ÌÚøÝºÃݺ˄¡ ̶Ú͹̥€ÚøÀºÌÛ Ë¡ܓݢÛÀº„ÜÝ¢ÛÀºED ARRAY[SCSCRNCOMMAND] OF CHAR .END; {screen} ) "SCKEYBRD : PACKED RECORD (*For recieving from keyboard *) 1PREFIX: CHAR;“„�¡ ÌÛÌ­\Ï¡ϹÏÏ­ Ï¡Ϲ ØÍØÏ­ Ï¡ϹÍ­Ï ÙØÍÏ 1CANBREAK: BOOLEAN; { Valid break key } 1HASPREFIX: PACKED ARRAY[SCKEYCOMMAND] OF BOOLEAN; 1CH: PACKED ARRAY[SCKEYCOM¡Ϲ-ÙØÏØ‚Ì¥€¢ºÌÚÛÈ¡¶ÍÚÏڂ̹öÙØÍ­H ¶ÊÍ¶Í ¡Ê šÊø³€ÿþÿ‹¡ÊÊø •šÊø?ÃÊMAND] OF CHAR /END; { Keyboard } !  SCBLANKAREA : PACKED ARRAY[0..SCMAXSW] OF CHAR; " "PROCEDURE SCINIT; "CONST øÆ¼‹�¡ö­L" TÛÚÉ¡Û̹ÚÌ­ ÆÊªÿÚ¡Ì€ÇÊÊÏÆ¾¥€ºÊ•È¡/¶ÆÍÊÄ¡ÊÊÍÚ“¡Æ€ÇƼ ÏÊ€ÇÌÇÿÌØÙÈ¡¥€ØÀ »Ø‚̹ö¶Ì¥€ÌÚÙ¢ºšÚ¢Ù£%•»ÚÙ£&•»Ú¢ »Ú¢ »¥€Ù¢-º»¥€¢Ù¢º¿¥€¢ÀÙ¢$Àº»¥€¢?Ë¡ö¹ðÌ€ÃÌ€ÂÆ€ñ¦×ªPƀȦתPצ[ÆÍË¡AÆ€ñÆÆ�¦[ׯÍÆ¾×¦[ÆÍ•‚ÍÆ�ªPÆÆ€ñÆÍÆ€ñ¾Íצ:ÆÍË¡-Æ€È! T&SCINIT ðSCINIT SCCLRSCR ðSCCLRSCR SCCLRLIN ðSCCLRLIN §¥žåžSCDOWN ðSCDOWN SCHOME ðSCHOME %SCUP ðSCUP SCERASET ðSCERASET JŠFpSCERASEO ðSCERASEO )SCPROMPT ðSCPROMPTSCUSEDAT ðSCUSEDAT TRANSLAT @i�®Û5b�¼éÝCONTROL ðCONTROL  JZjz!?a„MIN ðMIN Œ šSCCLRSCR SCCLRLIN ðSCCLRLIN § ͶƀñÍÊ€ÂʀẰÂʀ‚ƾġ̀ÂÊÄ¡ÊÊÍÚ“¡ Æ€ÇÆ¼ ÏÚÊ€Ç?ËÊ€ÇÆ¼‹„�¡òÊ€ÇÌ­/<÷0<B„dÆàSCDOWN ðSCDOWN SCHOME ðSCHOME %SCUP ðSCUP SCERASET ðÀ.Rp(:NÞתPצ[ÆÍË¡AÆ€ñÆÆ�¦[ׯÍÆ¾×¦[ÆÍ•‚ÍÆ�ªPÆÆ€ñÆÍÆ€ñ¾Íצ:ÆÍË¡-Æ€ÈSCERASET JŠFpSCERASEO ðSCERASEO )SCPROMPT ðSCPROMPTSCUSEDAT ðÆÆ�צ:ÆÍÍÆ�ªPÆצ:ÆÍÍÊƀȾ‚‚Ì€ÅÊ€ÅÆ€ñ¾‚̀ƶÆ€ÈͶ¢º“¡ôÆʀ¾ áʀ‚̀ÂÊ€ÅÊÏÆ¾Ê€Â•¥€ºÊSCUSEDAT TRANSLAT @i�®Û5b�¼éÝCONTROL ðCONTROL  JZjz!?a„€Å‚•ʀƕÏÌ€ÄÆ¾Ê€Â•¥€º•ʀƕšʀđ ÆÊ€ÂʀĂž Ì€ÃÊ€ÄÊ€Ã‚Ì€ÄÆ€™Ê€Ä¿ÆÊ€ÂÆ€™ʀжƀ™ÍÚ“¡¶¦ ? ×͹ ¶צ ÖI†ÿMIN Œ šSCCLRSCR SCCLRLIN ðSCCLRLIN §SCONTROLSCDATE ¨SCHASKEY ðSCHASKEYSCMAPCRT ðSCMAPCRTSCSCRNHA ðSCDOWN ðSCDOWN SCHOME ðSCHOME %SCUP ðSCUP SCERASET ðSCSCRNHAý:\SCSCREEN#^k}Šœ©»ÈÚçù +8JW»*‰‘Lz™SCGETCCH ðSCERASET JŠFpSCERASEO ðSCERASEO )SCPROMPT ðSCPROMPTSCUSEDAT ðSCGETCCH |FSCKEYBRDRt~›£¼Ééö#CPp}�ªÊ×÷!¡¹SCLEFT ðSCUSEDAT TRANSLAT @i�®Û5b�¼éÝCONTROL ðCONTROL  JZjz!?a„SCLEFT SCVERSIO)SCFILLIT\yÃSCRIGHT ðSCRIGHT SCBLANKA+ C ^" contains a generous helping of very explict error ,messages to explain what is wrong. This document is ,intended to be on han,corresponding to the first character of the option. ,All characters not explicitly shown on the prompt ,line are ignored. d and read along with the user's ,first few uses of PATCH. It will not necessarily ,describe exactly what will appear on the Throughout the program Upper and ,Lower case characters are considered the same. $ ,All error messages appear on the bottom lscreen partly ,because such description is tedious and partly ,because a picture is worth a thousand words. $ ,PATCH uses a ine of the ,screen. The symbol that appears after each ,message is to remind the user that the program will ,not conSCREEN CONTROL MODULE ( section ???.? ) ,to do most of the displaying on the screen. It is ,thus terminal ( those that have 8tinue until the user types a . This is ,to signify that the error message has been read. ,Occasionally an error will 0 character lines ,and 24 lines per screen ) independent. ( If compiled generate several error ,messages that will come out one after the other. $ ,All numbers wanted by the program are first read ,with the proper Module. ) The program has also been ,written to be machine independant. $ ,PATCH is a utility program that as ,strings and then converted to integers. Only the ,first five characters of the string are considered. ,If there are anygives the user two ,very useful capabilities that are not available ,elsewhere in the system. $ ,One capability is the abil non-numeric characters in the string ,the integer is defaulted to zero. If integer overflow ,occurs the integer will be defaity to edit files on a byte ,basis. What this means is that instead of treating ,files as text files they are treated as fileulted to MAXINT. ( ,Since integer overflow can only be dectected by the s of ,bytes. This allows the user to edit not only text ,files, but also to do quick fixes to code files and ,to create specialized test data. This is the EDIT ,mode of PATCH. $ ,The other capability is the "dumping" of files out to ,a text file i PRELIMINARY *** PRELIMINARY *** PRELIMINARY ***PRELIMINARY *** PRELIMINARY , ,The PATCH program that this document describesn various numeric data types, so that ,user can see his non-text files in formats that are ,more meaningful to him. This part ,contains most of the features of previous releases of ,the PATCH program. Several new features have been ,added and the use of PATCH also has ,the ability to read from core memory. ( This is ,primarily so that Interpreter and BIOS can be seen at ,r interface of the program has been ,given a complete overhaul. $ ,The program itself is reasonably self-documenting and ,run time. ) This is the DUMP mode of PATCH. $ $GLOBAL CHARATERISTICS $ ,All prompt lines expect single characters #  for EDIT are : $ $  EDIT : D(ump, G(et, R(ead, S(ave, M(ix, T(ype, I(nfo, F(or, B(ack, ? II.0   EDIT : V(iew, W(ipe, Q(uceeding block in the file, if 8already at the beginning does nothing, but does 8put out message to that effect. 8 it, ? * ,( theses prompt lines only appear one at a time. The ,question mark allows one to toggle back and forth ,between t*V(iew - displays the current block according to MIXED * *W(ipedisplay - cleans the display of the block off the screehem. All commands are valid regardless of ,which prompt is being displayed. ) , * * *D(ump - calls DUMP * *G(et n. :( no need to ever use this ) : *Q(uit - quits the PATCH program 9 *T(ype - goes into the "typing" mode, t - gets the file that one wishes to edit * does an initial read of block zero if the file 8was opened. * *Rhis is the mode 8through which the block can be changed. : : -The prompt line for TYPE is : : "TYPE : C(har, H(ex, F(ill(ead - reads the specified block number of the gotten file * *S(ave - writes the contents of the buffer out to the, U(p, D(own, L(eft, R(ight, , Q(uit 2 2C(haracter - Exchanges the next characters that are ?typed for the byt 8current block, if any block has been read in 8successfully. 8 e at which the cursor ?is pointing to. The cursor is auto- ?matically moved to the right one byte. ?Only printable character*M(ixed - a toggle that changes the mode that current block 8will be displayed in. There are two modes : ; ;Mixed - whis are accepted. ?This mode is terminated by typing . ? 3H(ex - Puts the next hexadeciaml digits typed in the ?buffch displays the printable ASCII Ccharacters, or the corresponding CHexadecimal if they are not printable. C ;Hex - displer at the position the cursor is pointing ?to. The cursor is advanced one to the right. ?This mode is terminated by typing a ays the block in Hexadecimal. < 7 *I(nformation - displays the known information about the current :file that the EDIT mod'Q'. ?( lowercase letters are accepted ) ? 3F(ill - This mode allows the user to fill large parts e is using. This :includes the File name, the length of the file, the :current block being accessed, if it is open, are :?of the block with the same byte pattern. ?It will accept either characters or hexadecimal ?digits for the pattern. When finunitreads being done, the unitnumber ( -1 if UNITIO :is FALSE ), and the byte sex of the machine. :The byte sex makes no diffished the ?cursor will be positioned after the last ?byte filled. There is a particular syntax ?required for telling Fill ,precesence of a negative number, integers in the range ,65536 .. 98303 will come out modulous 32768. ) $ $ $ $ & $ $Terence to the user or :the program. ( see section 3.6, BYTE - SWAPPING, :in the document ) : *F(orward - gets the next HE EDIT MODE $ ,EDIT allows the looking at and the editing of files or ,Units one block at a time. & & ,The prompt linesblock in the file, if already at 8the end does nothing but puts out message to that 8effect. 7 *B(ackward - gets the pre$ t. This is specified by the number of words the ,user wants across one line. 15 fills an 132 character ,line. 9 fills an 80 isplay each word as two bytes in decimal format. In byte 3order. - -O) : Display each word as two bytes in octal format. Iwhat to do. The ?syntax is displayed in the prompt and the ?errors messages tell the user exactly what ?part of the syntaxcharacter line. ( (The Specifications ( *A) : This is the input disk file or Unit.   failed when the error ?was generated. ? 2The following commands move the cursor around within the 2block of data being di*B) : This is the starting block number of the file or Unit. 0If it is a Unit, there is no range checking on the block 0numbsplayed. The cursor will never point 2to an undefined point on the screen. There is complete 2wraparound ( side to side, toer. 0 *C) : The number of blocks to print out, can be over specified. * *D) : When specifications are set, this says Do itp to bottom ) on cursor movement 2 6U(p - moves the cursor up one row 6 6D(own - moves the cursor down one row 6 6L(ef. * *E) : If true then reads from core, if false reads from File 0specified in A). * *F) : Offset from byte 0 to start att - moves the cursor left one column 6 6R(ight - moves the cursor right one column 6 6 - these are the vecto. Limit is MAXINT. * *G) : Number of bytes to print, limit is MAXINT * *H) : Output file, opened as a text file * *I)r arrows designated Hby SETUP. They will do the same Hrespective action as U,D,L,R. H  : Width in words of output line. 1 <= Width <= 15 * * *The following have three booleans that have to be specified. *The2Q(uit - Quits the TYPE mode and returns to the >EDIT mode. ? ? 2 2 (THE DUMP MODE ( ,The DUMP mode is used to cre USE variable ( the untitled first column ) tells DUMP *whether or not to even consider printing out in that format. * *The Fate "dumps" of files out ,to a text file. It does so in the following formats : ,Decimal, Hexadecimal, Octal words, CharacterLIP column tells DUMP whether or not to flip the bytes *before displaying the word in that format. * *The BOTH column is for s ( if ,printable ), Decimal bytes, Octal Bytes. In addition ,to the variety of formats, DUMP is also capable of ,flipping thsimultaneously displaying both Flipped *and non-Flipped versions of the line. If BOTH is true, it does e bytes in a word before displaying it and ,displaying both flipped and non-flipped lines ,simultaneously. ( ,DUMP has two d*not matter what FLIP is. * -J) : Display each word as a decimal integer - -K) : Display each word in hexadecimal digits ifferent ways to read input. One is ,from a diskfile or Unit specified by the user. The ,other is to read directly from corein byte order - -L) : Display the word as an Octal integer. This is the octal 3equivalent of J. 3 -M) : Display each wo ( this is ,primarily to see the Interpreter and/or the BIOS ). ( ,DUMP also has a specification for the width of the ,outpurd in characters in byte order. If the 3characters are not printable the hexadecimal digits will 3be displayed. 3 -N) : D% ÌؾÌÙÚÈ¡.ØÙ›¾³ÿþÿ‹¡ ØÙ›ØÙ›¾a•A‚¿Ù‚̹ö­6 FÙØÏ¶¦ FILENAME : < c/r for Unit I/O > ×Íž¶ÆPÍž¶ÍžÆ¾Å¡öÚÍžÚÆÍž"Ë¡4צ!Error opening file. Ioresult is ž"ÏÛ¢šÙØÏ¹BÛÌ/Ê/¢šÊ/¢šÆÏÊ/¢ÆªPÊ/¢šÊ/¢ÚÏšÊ/‘š×¦ File opened. ϹðÙØÏ¶¦Unitnumber : 2 .. ×Íž¶ Í ž¶¦ ( 0 quits ) ×Íž¶ÆPÍž¶Íö@ PATCH žÆÏÌ.Ê.Çý‹¡ôÊ.Å¡òÚÍžÊ.ž&ž"Ë¡5צ"Error clearing unit. Ioresult is ž"ÏÛ¢šÙØÏ¹<ÛÌ/Ê/¢šÊ/¢šÊ/¢šÊ/¢ÇÿšÊ/Ê.n byte 3order. 0 * *Q) : Goes back to the EDIT mode. DUMP will remember the current 0specifications. 0 *S) : Put a bla nk line after the non-Flipped version of the line. 0( Used to put a blank line between the non-flipped 2and flipped versions of one type of output ) * *T) : Put a blank line between each different type of line printed 0out. 0 *    ,Both the EDIT and DUMP modes remember all their ,pertinent information when the other mode is ,operating.    ÆÚªPØ¡ ¶ÍžÍƾš ¶ÆÍžÙË¡¶ÙÍ ž¶ Íž¶צ Íž¶Æ-ÍžÊ- áöÏ­åT vÆتP(( note - Some users might notice that although DUMP 1can read from core EDIT cannot. This is done to 1encourge better progr϶ÆÍž­RÆتP϶ÆÍž­R¶ÆÍžÚÌÆÏÌÜÇÀ‹¡)ܹU̹D̹L̹R̹¬ ¹¹8amming habits. ( i.e. To prevent 1the user from modifing his system at run time. ) 1Should the user wish to change his run timÛ³ ÿþÿ‹¡ Úa•A‚̹۳ÿþÿÿƒ‹“¡ZÌÚÌ­åŠÆÚªPƾšƾ Æ›ž Ì-Ê-Å¡Ì-¹Ì-ÆÊ-‚ƾÊ-•Íe system all 1he has to do is change the system disk files. )        Ì.Ê-Ä¡sÆÊ-›¾³ÿ‹¡&Ê.ÆÊ-›¾0•¥ƒþƾÊ-•ˆ¤ø�‚Ì.Ê-•Ì-¹6צ)Error in string. Value defaults to zero.ÏÌ.Ì-¹öÊ.É¡'צInteger constant overflowÏÇÿ̹Ê.Ì­å­Z òÙÇÿ‘•áئ-32768תP¹lÙáØ0ªP¹aØ×¦ ªPÌÙÉ¡ Ìّ̹ÌÙÅ¡ØÛ›¥„Ù Žˆ¤ø¿Û•ÌÙ †Ì¹öÚ¡ ØÛ›-¿Û•ÌØÛ‚›Ø›Û•žØÛ•¿­CŽÆ‘¤øÌ­¦ÚÏÌÛ¤øÛ¤ø•Ì­& �Í ž¥‚Gצ| Íž¥‚G²EÍž¥‚GÍž©�𡥂GÍž©�í©�ì�¡ð²E›¶� ž ̶•ÌØÙÈ¡e²ˆ¥/¶Ø‚�¥�׈¤ø‚Çÿˆ¾¿²�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿¥/¶Ø‚�‚Çÿˆ¾¥„¼‹¡²EØ�‚›¥/¶Ø‚�‚Çÿˆ¾¿¹`²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆˆ¥/¶Ø‚�¥�׈¤ø‚Çÿˆ¾¿¶²Ï²²EØ�‚Ç€ˆ®"؂̹ò¥‚G¶�Í ž¥‚G¦| ×Íž¥‚G²EÍž¥‚GÍž©�ï¡¥‚GÍž­¤ø¿²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿Ø‚̹ö¥‚G¶�Í ž¥‚Gצ| Íž¥‚G²EÍž¥‚GÍž©�𡥂GÍž©�ä©�ã�¡5¬Î?h#©�ê“©�é�¡ò²E›¶� ž ̶•ÌØÙÈ¡ô²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿²EØ�‚›¥„¥/¶Ø‚�¥ì²E›¶� ž ̶•ÌØÙÈ¡î¥/¶Ø‚�‚Çÿˆ¾¥„¼‹¡²EØ�‚›¥/¶Ø‚�‚Çÿˆ¾¿¹`²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿Ø‚̹¤ø¿²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿¥/¶Ø‚�‚Çÿˆ¾¥„¼‹¡²EØ�‚›¥/¶Ø‚�‚Çÿˆ¾¿¹`²EØ�‚›¥„¥/¶Ø‚�ö¥‚G¶�Í ž¥‚Gצ| Íž¥‚G²EÍž¥‚GÍž©�𡥂GÍž©�ê©�é�¡ì²E›¶� ž ̶•ÌØÙÈ¡î²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿Ø‚̹ð¥‚G¶�Í ž¥‚G¦| ×Íž¥‚G²EÍž¥‚GÍø‚ÇÿˆÀºˆ¤ø¿²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿²EØ�‚›¥„¥ž©�ï¡¥‚GÍž­ B~ ßD&©�á©�Ö®!“©�à�¡ô²E›¶� ž ̶•ÌØÙÈ¡i¥/¶Ø‚�¥�׈¤ø‚Çÿˆ¾²Ï²²EØ�‚/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿Ø‚̹ð¥‚G¶�Í ž¥‚G¦| ×Íž¥‚G²EÍž¥‚GÍž©�ï¡¥‚GÍž­åB2q?h$Ç€ˆ®"¥/¶Ø‚�¥�׈¤ø‚Çÿˆ¾²Ï²²EØ�‚Ç€ˆ®"؂̹ö¥‚G¶�Í ž¥‚G¦| ×Íž¥‚G²EÍž¥‚GÍž©�𡥂GÍž©�á©�šÊ/¢ÆªP¦ File opened. ×Ï¹ÙØÏÍ­ VæÙØÏ¶¦ Filename: ×Íž¶ÆPÍž¶ÍžÆ¾Å¡öÚÍžÚÆÍž"©�ç“©�æ�¡ò²E›¶� ž ̶•ÌØÙÈ¡ô¥/¶Ø‚Çÿˆ¤Ì²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Ú ºˆ¤ø¿²EØ�‚›¥„Ú ºˆ¤ø¿²EØË¡4צ!Error opening file. Ioresult is ž"ÏÛ¢šÙØÏ¹?ÛÌ.Ê.¢šÊ.¢šÊ.‘šÊ.¢šÊ.¢ÇÿšÆÏÊ.¢ÆªPצ File opened.ÏÍ­�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø¿Ø‚̹ö¥‚G¶�Í ž¥‚Gצ| Íž¥‚G²EÍž¥‚GÍž©�𡥂GÍTÌÌÛÌÜû¡GÜø¥/ÇÜùžž"Ë¡2¦#Error reading block.U Ioresult is מ"ÏÏ̹EÚ¥/Üù͞ˡ2צ#Error reading bž©�ç©�æ�¡ì²E›¶� ž ̶•ÌØÙȡ¥/¶Ø‚�¥�׈¤ø‚Çÿˆ¾¿²ˆ¥/¶Ø‚�¥�׈¤ø‚Çÿˆ¾¿²EØ�‚›¥„²ºlock.B Ioresult is ž"ÏÏÌ­žÇÌÆˆ¾ë�Ö©�Ö¡V¥�׈¤ˆš¥�׈¤ˆš¥�Ùˆ¤ˆš¥�Ùˆ¤ˆš¥�Ùˆ¤ø¿²EØ�‚›¥„² ºˆ¤ø¿²EØ�‚›¥„² ºˆ¤ø¿²EØ�‚›¥„²ºˆ¤ø¿²EØ�‚›¥„²ºˆ¤ø¿²EØ�‚›¥„²ºˆ¤ˆ¤ˆš¥�Ùˆ¤ˆš¹T¥�׈¤ˆš¥�׈¤ˆš¥�Ùˆ¤ˆš¥�Ùˆ¤ˆš¥�Ùˆ¤ˆš¥�Ùˆ¤ˆš­ÈÛ“Ú„ÛÚ“„ø¿Ø‚̹ð¥‚G¶�Í ž¥‚G¦| ×Íž¥‚G²EÍž¥‚GÍž©�ï¡¥‚GÍž­¡B*L‹3\%©�ä“©�ã�¡ò²E›¶� ž ̶•Ì�Ì­Ã!Ú›Ù؛ھž­Ã"©�í“©�ì�¡ô²E›¶� ž ̶•ÌØÙÈ¡-¥/¶Ø‚Çÿˆ¤ø²Ï²²EØ�‚Ç€ˆ®"؂̹ö¥‚G¶ØÙÈ¡ô¥/¶Ø‚�‚Çÿˆ¾¥„¼‹¡²EØ�‚›¥/¶Ø‚�‚Çÿˆ¾¿¹`²EØ�‚›¥„¥/¶Ø‚�¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤ø¿²EØ�‚›¥„¥/¶Ø‚' ¥„Ú ºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø¿Ø‚̹ö¥‚G¶�Í ž¥‚G¦| ×Íž¥‚G²EÍž¥‚GÍž©�𡥂GÍž©�Þ©�Ö®!©�Ý�¡ì²E›¶ž¶¦ C) Number of Blocks ×Íž¶Íž¶Íž¶צ E) Read from Memory Íž¶Íž¶¦ F) Starting Byte � ž ̶•ÌØÙÈ¡î¥/¶Ø‚Çÿˆ¤Ì²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Ú ºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø ×Íž¶Íž¶צ G) Number of Bytes Íž¶Íž¶Íž¶¦ H) Output File ×Íž¶Íž¶צ I) ¿²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø¿Ø‚̹ð¥‚G¶�Í ž¥‚G¦| ×Íž¥‚G²EÍž¥‚GÍž©�ï¡¥‚GÍž­BêRWidth in words Íž¶Íž¶¦@ Flip Both ×Íž¶Íž¶¦ J) ú*(ÆEØ�¿©�î¡Î#©�ë¡Î$©�è¡Î%©�å¡Î&©�â¡Î'©�ß¡Î(­‚: ÌÇ©�ó†•ÌØÙȡة�ó�©�ó® Ø‚̹öÇ©�óŽÅ¡ÇÇ©Decimal ×Íž¶Íž¶צ K) Hexadecimal Íž¶Íž¶¦ L) Characters ×Íž¶Íž¶�óŽ•Ç©�óŽ® ­›8 N)¥‚G¦ ×Íž©�óÈ¡7Ì©�ó•ÌØÙÈ¡&¥‚GØ�Í ž¥‚Gצ: ͞؂̹ö¹eÌÌØÙÈ¡&¥‚GØ�Í צ M) Octal Íž¶Íž¶¦ N) Decimal bytes ×Íž¶Íž¶צ O) Octal bytes Íž¶Íž¥‚G¦: ×͞؂̹ôÌ©�ó•ÌØÙÈ¡%¥‚GØ�Í ž¥‚Gצ: ͞؂̹ò¥‚GÍž­4k  Ê*©�ôdž̩�ôÇŽÌÙÅ¡ž¶Íž¶¦ S) Space between Lines ×Íž¶Íž¶צ T) Space between Groups Íž¶ÍžÍ¶¥ƒ§ÍžòÌÙ•ÌØÛÈ¡ô©�ö©�õØÇ�‚¥/Çž¥‚G¦CORE DUMP Startbyte : ×Íž¥‚G©�õØÇ�‚Í ž¥‚G¦ Number of valid bytes : ×͞Ͷ©ƒ£Í žÍ¶©�òÍ žÍ©�ñ¡¶צTrue Íž¹¶¦False×͞Ͷ©�õÍ žÍ¶©�ôÍ ž Ͷ¥ƒyÍ¥‚GÇÍ ž¥‚GÍž®*®)؂̹öÚÅ¡ð©�ö©�õÙÇ�‚¥/Úž¥/ÚÇÿˆÇÚ•ž ¥‚G¦CORE DUMP Startbyte : ×Íž¥‚G©�õÙÇ�‚Í ž¥‚ž Ͷ©�óÍ ž¥�ì Î.¥�éÎ.¥�ãÎ.¥�æÎ.¥�àÎ.¥�ÝÎ.Í©�ð¡¶צTrueÍž¹¶צFalseͩ͞�ï¡¶¦True×Íž¹G¦ Number of valid bytes : ×Íž¥‚GÚÍ ž¥‚GÍž®*®)­Ÿ¡9`+©ƒ£©�ò‚ÌÌÙ©ƒ£ÚÉ„¡ò¥ƒ¢¥�÷Ï¡f¥‚Gצ Block numb¶¦False×ͭ͞¨-¶ÆÍžÚ³ @@‹¡öÚ³‹¡¶¦True×̹͞¶צFalseÍer [ Íž¥‚G©ƒ£Í ž¥‚Gצ ] of the file Íž¥‚G¥ƒ§Íž¥‚GÍž®*®)©ƒ£‚«ƒ£¹z¦Error occurred reading block שƒ£Ï¦!Do žÌ­¦f n/Î-ÏÌÙ³³þÿ‹¡îÙ¹òÏ¥ƒ¢¥�÷Ï©ƒ¢Ã¡«�ñ¹«�ñ϶¥ƒ§Íž¹ð©ƒ¦¡w϶ÆPÍž¶ÍžÖ®!¡ð²E›¶� ž ̶•ÌØÙÈ¡i¥/¶Ø‚�¥�׈¤ø‚Çÿˆ¾²Ï²²EØ�‚Ç€ˆ®"¥/¶Ø‚�¥�׈¤ø‚Çÿˆ¾²Ï²²EØ�‚Çyou want to continue ? ( y/n )×϶ÆÍžØ³@@‹¡öØYÃØyÃ�ÌϹô­©ü7 ,ÆÙ¨ØÍÜ¡¶צTrueÍž€ˆ®"؂̹ò¥‚G¶�Í ž¥‚G¦| ×Íž¥‚G²EÍž¥‚GÍž©�ï¡¥‚GÍž­E°Õ‚²'©�Þ©�Ö®!“©�Ý�¡ò²E›¶� ž ̶¹¶צFalseÍž'ØÍÛ¡¶¦True×Íž¹¶¦False×Íž8ØÍÚ¡¶צTrueÍž¹¶צFalseÍž­Ž.Ï ¶¦DUM•ÌØÙÈ¡ô¥/¶Ø‚Çÿˆ¤Ì²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›¥„Úºˆ¤ø¿²EØ�‚›P : D(o, Q(uit ×Íž¶Íž¶Íž¶¦ A) Input File ×Íž¶Íž¶צ B) Starting Block Íž¶Í( ÆÏÌØÄØ©ƒ¤È„¡Ø«ƒ£¹5¦,Value out of range. Maximum block number is שƒ¤Ï϶©ƒ£Í ž¹'צ Input file must be opened firºˆ¤øÍž©�0¥/Çþ‚Çÿˆ¾¥„¼‹„¡"¶¥/Çþ‚Çÿˆ¾Íž¶ Íž¹V¶¥„¥/Çü¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤øÍž¶¥„¥/Çüst.Ϲð϶ÆPÍž¶ÍžÆÏÌØÅ¡Ø«�ò¹(¦!Number must be greater than zero.×Ï϶ØÍ ž¹ð©ƒx¡ô©�ñ¡Î+¹)©ƒ¦¡Î,¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤øÍž©-‚©.‚Í­8�C€ ¦1צBlocknumber : ϶ÆPÍž¶ÍžÆÏÌ*Ê*ÉÊ*©ƒÒ•Å�¡@¦/B¹ צInput file is not opened.Ï¥ƒy¦CONSOLE:ׯ©ƒ¦©�ñ�„¡H¶¦#Type < space > to redisplay prompts×Íž¶Íž¶ÆÍžÙ Ãlocknumber is out of range. Highest value is שƒÒ•ÏϹ*Ê*«ƒÑ¥ƒÐ¥‚Ï¡צRead was successful.ÏOÍ­T´2©ƒÑ©ƒÒ•¡öÎ-¹!צOutput file is not opened.ϹðÏÎ/«�ñ¹ð϶ÆPÍž¶ÍžÆÏ«�õ϶©�õÍ ž¹ð϶ÆPÍž¶ÍžÆÉ¡1©ƒÑ‚«ƒÑ¥ƒÐ¥‚Ï¡¦Read was successful.×ÏÏ1¹ צHave reached end of file.Ï­d3©ƒÑÅ¡1©ƒÑ•«ƒÑ¥ƒÐ¥‚Ï¡¦ReaÏ«�ô϶©�ôÍ ž¹ð Ï¥ƒt¥‚G Ï Ï¶¥ƒyÍž¹ð ϶ÆPÍž¶ÍžÆÏÌØÄØÈ„¡Ø«�ó¹+צ Value out range. Defad was successful.×ÏÏ1¹צAlready at block # 0.Ï­\4©ƒÓ¡S©ƒÐ¥/Ç©ƒÑžž"Ë¡+צ!Error saving block. Ioresult is ž"ults to 15.Ï«�ó ϶©�óÍ ž¹ð ÏÎ/«�î' ÍÎ/«�í8 ÍÎ/«�ì¹ðÏÎ/«�ë'ÍÎ/«�ê8ÍÎ/«�é¹ðÏÎ/«�å'ÍϹ¦ Block saved.×ϹS¥‚¥/©ƒÑ͞ˡ,צ"Error saving buffer. Ioresult is ž"Ϲצ Block saved.Ï­´5϶¦Î/«�äÎ/«�ç8ÍÎ/«�æ¹ðÏÎ/«�â'ÍÎ/«�á8ÍÎ/«�à¹nÏÎ/«�ß'ÍÎ/«�Þ8ÍÎ/«�ݹIÏÎ/«�ð¹<ÏÎ/«�ï¹/¬File : ×Íž¶¥ƒÕÍž¶צ Length : Íž¶©ƒÒÍ ž¶צ Current : Íž¶©ƒÑÍ ž©�Ö¡+¶צ Byte 0 : HIGH AT¹(Ó¤¡åÚªz\óЭ…b "$E:ÍÙQáìÏ ©�/¡¥�ZϹ¥�1Ï­Î8"$UPeVL•Ͷצ: 0: 2: ByteÍž¶Íž¹)¶¦ Byte 0 : LOW Byte×Íž¶ÍžÏ©ƒÔ¡¶¦ Open : True ×Íž¹¶¦ Open : False×Íž©ƒÓ¡%¶4: 6: 8: 10: 12: 14: 16: 18: 20:Íž¶צ 22: 24: 26: 28:Íž¶ÍžÌÌØÙÈ¡$؂ͶØ�Í ž¶|Ížצ Unit I/O : True Íž¹#¶¦ Unit I/O : False×Íž¶צ Unitnumber : Íž¶©ƒÐÍ ž¶צ ؂̹ö­+®0Ï0Ì•ÌÚÛÈ¡ð•Ú‚ÍÌÌÙÜÈ¡ôÚ�ÙÙ‚‚̶ Íž©�0¥/Ø‚Çÿˆ¾¥„¼‹„¡ ¶¥/Ø‚Çÿˆ¾Íž¶ ÍÍž¶¥�ÕÍž©�Õ Ã¡öÏ©�/¡¥�ZϹ¥�1Ï­ø* À6•ÌÌØÙÈ¡ Ø‚ÏØ‚̹ö­$7©.Å¡ ©.•ˆ«.Ϲj©-Å¡1•ž¹V¶¥„¥/ØØ‚¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤øÍž¶¥„¥/ØØ‚¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤øÍž©�0¥/Ø‚Çÿˆ¾¥„¼‹„¡ ¶¥/Ø‚Çÿˆ¾ˆ«.©-•Iˆ«-©-‚©.‚Í©-Žá ©-•Iˆ«-Ϲ3©-Å¡-ˆ«.©-•Iˆ«-©-‚©.‚Í©-Žá ©-•Iˆ«-Ï­ †9©.•É©-É©.•Ä�Íž¶ Íž¹V¶¥„¥/ØØ‚¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤øÍž¶¥„¥/ØØ‚¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤øÍžÙ‚̹öڂ̹ò‚Í©�0¡ ©.‚ˆ«.Ϲ3©-IÉ¡-ˆ«.©-‚Iˆ«-©-‚©.‚Í©-Žá ©-‚Iˆ«-Ï­\:©-Å¡ ©-•Iˆ«-Ï©-Žá ©-•Iˆ«-Ϲ ©.Å¡IIˆ«-¥/Çþ‚Çÿˆ¾¥„¼‹„¡"¶¥/Çþ‚Çÿˆ¾Íž¶ Íž¹V¶¥„¥/Çü¥�Ùˆ¤ø‚ÇÿˆÀºˆ¤øÍž¶¥„¥/Çü¥�Ùˆ¤ø‚ÇÿˆÀ©.•ˆ«.©-‚©.‚Í­N;©-IÉ©.É„©.é-É„�¡%©-‚Iˆ«-Ï©-Žé.É„¡ ©-‚Iˆ«-Ϲ ©-IáIˆ«-©.‚ˆ«.©-‚©.‚Í­) <�©-†�©-Ž‚‚ÌÚŽ ‹¡Ú•̹ڂ̩�Ö¡ÚŽ‹¡Ú‚Ì¹Ú•ÌØ¥„3¼‹¡¥/ÚÇÿˆÀØ0•ˆ»¹Bس~‹¡¥/ÚÇÿˆÀØA• ‚ˆ» open. ι9¬?W¹2•� ;‰=±, "$&¡£¥.©É©�ÕQáðÎAÆ‚GÍÆ�÷ÍÆ‚ÍÁÑ"$_‚ #ÌÇÿ̹¥/ÚÇÿˆÀØa• ‚ˆ»Øa•A‚̶ØÍž©-‚©.‚Í®<¹צ Invalid inputÏ©-‚©.‚ÍÛáòÏ©-‚©.‚Í­Æ: h@¥�¬ÏØÙÈ¡¥„CØÀ »Ø‚̹ö¶Ì¥„ƒÌÚÙ¢ºšÚ¢Ù£%•»ÚÙ£&•»Ú¢ »Ú¢ »¥„‹Ù¢-º»¥„ƒ¢Ù¢º¿¥„ƒ¢ÀÙ¢$Àº»¥„ƒ¢Ù¢ º©-‚©.‚ÍÏÌس $X‹¡LعÎ?¹EÎ@¹AÎ=¹=Î9¹9Î:¹5Î;¹1Î<¹-¬CU¹&#! )!)"$;ØQáö©�/¡¥�ZÏ¿¥„ƒ¢ÀÙ¢$Àº»¥„ƒ¢Ù¢ º¿¥„ƒ¢ÀÙ¢$Àº»¥„ƒ¢Ù¢#º¿¥„ƒ¢ÀÙ¢$Àº»¥„ƒ¢Ù¢#º¿¥„ƒ¢ÀÙ¢$Àº»¥„ƒ¢Ù¢!º¿¥„ƒb<©.�©-ކ©-†�‚‚ÌÛØø‚ÇÅ¡ØÇÛ•šÌØø•ÌÚÜÈ¡¥/ÛÚ‚ÇÿˆÙ¿Ú‚̹ö­P>צNumber of bytes : ϶ÆPÍž¶Í¹¥�1Ï­~–8¥‚GÍž¥�÷Íž¥‚Íž­$AÏ ¥�ZÌÆצ!EDIT : D(ump, G(et, R(ead, S(ave,!ÍÆצ. M(ix, T(ypžÆÏÌ+Ê+ÈÊ+ÇÅ�¡,Ì+צ Number of bytes is out of range.Ϲê¦What pattern : ×Ï¥�ƒÏͶÆPÍž¶ÍžÆ¾É¡צe, I(nfo, F(or, B(ack, ? II.0 OÍÆªP¥�1ÌÆ¦!EDIT : V(iew, W(ipe, Q(uit, ? ×!ÍÆ¦. Invalid format.ÏÌ+¹ìÆ›¾³‹¡îÆ›¾¹òÆ›¾Æ+Î>Ï1©.Ê+†‚ˆ«.¹ðƾɡצInvalid format.ÏÌ+¹ôÆ›¾¥„#¼ ×OÍÆªP¥�¬¦LTYPE : C(har, H(ex, F(ill, U(p, D(own, L(eft, R(ight, , Q(uitתP¥�ƒ¦HValid format : C<‹Æ›¾¥„#¼‹„¡öÆ›¾³O~‹¡Æ›¾A• ‚�Ì*¹3Æ›¾³~‹¡Æ›¾a• ‚�Ì*¹ Æ›¾0•�Ì*Æ›¾³~‹¡Æprintable char> or H תP«�0«�/¥„³•ÿÿÿÿÿÿÿÿÿÿÿ ½¥„3³ÿ ½¥„#³~~ÿ›¾A• ‚Ê*‚Ì*¹6Æ›¾³~‹¡Æ›¾a• ‚Ê*‚Ì*¹ Æ›¾0•Ê*‚Ì*Ê*Æ+Î>Ï1©.Ê+†‚ˆ«.¹@צ6Invalid format. Hexdigits ::= 0 ..  ½¥ƒþˆ¤š¥ƒþˆ¤ š¥ƒþˆ¤dš¥ƒþˆ¤Ç蚥ƒþˆ¤Ç'šÌ ÌØÚÈ¡¥„؈¤0Ø‚šØ‚̹öÌÌØÚÈ¡¥„Ø ‚ˆ¤AØ‚šØ‚Ì9 , A .. F, a .. f ÏÌ+¹T¬Ch¹Lk \ "$&(*,.02468:<>@«DFHJœ¹Aצ7Invalid for¹ôIˆ«-ˆ«.ÌÙ«�ö«�î«�í«�ì«�ë«�ê«�é«�è«�ç«�æ«�å«�ä«�ã«�â«�á«�à«�ß«�Þ«�Ý«�ó«�ò«�õ«�ô«�ñ«�ð«�弄Õצªmat. Must have prefix character, 'C' or 'H' ÏÌ+¥�¬ÏÏ©-‚©.‚ÍÌ,Ê+ŽÌ.Ê,Ê.È¡ ®<®<Ê,‚Ì,¹è­57z~ÔØ\"=P«ƒÔ«ƒÓ«ƒÒ«ƒÑ‘«ƒÐ¥ƒ§¦×ªP«ƒ¦«ƒ¥«ƒ¤«ƒ£‘«ƒ¢¥ƒyצªP«ƒx«ƒw«ƒv«ƒu‘«ƒtÏ­íT BÆ‚GƃsÇ‘ÍÆ�÷ƃ#Ç‘ÍÆ‚Æצ2CHARACTERS : , quits Ï©-Žé-ŽÃ�¡ ©-•Iˆ«-©-‚©.‚ͶÆÍžØÌÆÏÌÚË¡zÙ¥„¼‹¡M¥/ƒKÇ‘ÍÕ‰HÎÎB¥�ZÎOͶ¥�ÕÍž©�Õ³ÿþÿ‹¡ ©�Õa•A‚«�Õ©�Õ³ªÜÔ"€‹¡ò©�Õ¹öιô¥ƒÐ¥‚ΩƒÔ¡ ¥ƒÐ¥‚Ω.�©-ކ©-†�‚‚ÇÿˆÙ¿¶ÙÍž¶ Íž©-‚©.‚Í®<®<©.é-Ä¡®;¹#¦Invalid character×Ï©-‚©.‚ÍÚáöÏ©-‚©.‚Í¡¹ô©�0“«�0©�0¡6צ/The display will be in characters if printable.ι/צ*The display will be in hexadecimal digits.ιôÎ6¹ôÎ7¹ô©­ª ?צ6HEXADECIMAL : 0 .. 9 , A .. F , a .. f , QuitsÏ©-‚©.‚ͶÆÍžØÌÆÏÌÛË¡ôØ¥„#¼‹ÙØÃ„¡ö©.�/¡¥�1ι¥�ZΩ�/“«�/¹ô©ƒÔ¡P©�Õ¹Î2¹EÎ5¹AÎ8¹=Î3¹9Î4¹5Î1¹1¬BV¹*  ?=;(3¹צError. File not* ¥„ƒ¢Ú¾ËÌ­¥„‹¢Ú¾ËÌ­¥„‹ÌÚøÝºÃݺ˄¡ ̶Ú͹̥„CÚøÀºÌÛ Ë¡ܓݢÛÀº„ÜÝ¢ÛÀº“„�¡ ÌÛÌ­\Ï¡ÏC¹Ï Ï ­ Ï¡ÏC¹ ØÍØÏ­ Ï¡ÏC¹Í­Ï ÙØÍÏ¡ÏC¹-ÙØÏØ‚Ì¥„ƒ¢ºÌÚÛÈ¡¶ÍÚÏ Ú‚Ì¹öÙØÍ­H ¶ÊÍ¶Í ¡Ê šÊø³€ÿþÿ‹¡ÊÊø •šÊø?ÃÊøÆ¼‹�¡ö­L" T ÛÚÉ¡Û̹ÚÌ­ DÆÊªÿÚ¡Ì€ÇÊÊÏÆ¾¥„ƒºÊ•È¡/¶ÆÍÊÄ¡ÊÊÍÚ“¡Æ€ÇƼ Ï Ê€Ç?Ë¡ö¹ðÌ€ÃÌ€ÂÆ€ñ¦×ªPƀȦתPצ[ÆÍË¡AÆ€ñÆÆ�¦[ׯÍÆ¾×¦[ÆÍ•‚ÍÆ�ªPÆÆ€ñÆÍÆ€ñ¾Íצ:ÆÍË¡-Æ€ÈÆÆ�צ:ÆÍÍÆ�ªPÆצ:ÆÍÍÊƀȾ‚‚Ì€ÅÊ€ÅÆ€ñ¾‚̀ƶÆ€ÈͶ¢º“¡ôÆʀ¾ áʀ‚̀ÂÊ€ÅÊÏÆ¾Ê€Â•¥„ƒºÊ€Å‚•ʀƢÀÙ¢$Àº»¥„ƒ¢ ¿¥„ƒ¢À»¥„ƒ¢Ù¢"º¿¥„ƒ¢ÀÙ¢$Àº»¥„ƒ¢Ù¢!º¿¥„ƒ¢ÀÙ¢$Àº»¥„CÙ£.À»¥„‹¢Ù£.¿¥„‹¢ÀÙ¢•ÏDÌ€ÄÆ¾Ê€Â•¥„ƒº•ʀƕšʀđ ÆÊ€ÂʀĂž Ì€ÃÊ€ÄÊ€Ã‚Ì€ÄÆ€™Ê€Ä¿ÆÊ€ÂÆ€™ʀжƀ™ÍÚ“¡¶¦ ? ×͹ ¶צ Ͷ/ Àº»¥„CÙ£.À»¥„‹¢¿¥„‹¢À»¥„CÙ¢)ºÀ»¥„‹¢Ù¢)º¿¥„‹¢ÀÙ¢/ Àº»¥„CÙ¢-ºÀ»¥„‹¢Ù¢-º¿¥„‹¢ÀÙ¢/ Àº»¥Æ€ñÍÊ€ÂʀẰÂʀ‚ƾġ̀ÂÊÄ¡ÊÊÍÚ“¡ Æ€ÇÆ¼ Ï ÚÊ€Ç?ËÊ€ÇÆ¼‹„�¡òÊ€ÇÌ­/<÷0<B„� ¶ zè üxà„CÙ¢,ºÀ»¥„‹¢Ù¢,º¿¥„‹¢ÀÙ¢/ Àº»¥„CÙ¢,ºÀ»¥„‹¢Ù¢,º¿¥„‹¢ÀÙ¢/ Àº»¥„CÙ¢'ºÀ»¥„‹¢Ù¢'º¿¥„‹¢ÀÙ¢/4–ð $NÎ0šT"$'z"º'Ò(8*+š+Ê-‚/Ì2.5œ7 9$9l+ÔB9:´:†;r=¾=à=ø=Œ>„?@6@X@hÆ(B"p�´ÒfxŠœb°@üDM®¹}Í Àº»¥„CÙ¢'ºÀ»¥„‹¢Ù¢'º¿¥„‹¢ÀÙ¢/Àº»¥„CÙ¢(ºÀ»¥„‹¢Ù¢(º¿¥„‹¢ÀÙ¢/Àº»¥„CÙ¢(ºÀ »¥„‹¢ Ù¢(º¿¥„‹¢©-¡®÷Ë« ó“¡Í ó¡ö¶áÙ®%M®©-¡®­¡® &©?Ì÷ö„¡;©}Rœ ÆÍ ÚþŸË¡(Úþùá!Úþú©9áÍ ÚÌ÷"‹“¡Í  ÀÙ¢/Àº»¥„‹¢¾Ã¡¥„‹¢¿¥€¦#For use with SYSTEM.MISCINFO [S.5b]תP¥„™V ž ¥„“ ž ¶¢"º Å¡ ¶¢" »¥„“¶¢"º¿­F÷áÍ ¶÷Ë„¡òÛ®%²¼&œ ®ëÌØŸË¡#ØÌßùÅ¡®¹® ßùá$Í ®®®÷á%Í ²¼&œ ®ëŸË¡ ëôË¡Í ® Ì¹ÌØôá Ù¡€ �ÙáزC¨¹ ²Cب¥€,ب­¹"¥„ƒÌ¶¥„“ÍÙ¢ØÀº¡ ¶ÙøÍ¶Ù¢ؾÍ­6CÙØÍÏ¡ÏC¹7Ø¥„E^ƒ¢ºÃ¡¥„™¥„ƒºÙ•ž¹¥„™¥„ƒºÙ•‚žÙØÍ­PÏC­ ÏC­ ÏC­ ÏC­ 7ž7ž+  read single sectors and to  override CRC errors. The II.0.g version uses the UNITREAD primitive.  In the II.0.g each of the  directories 4 blocks uses a separate unit  read, while in the II.0.terak each sector is a separate read. In  both cases this enables the recovery of partial directories.   Action: %First the directory is read. Each entry is checked for  validity. Entries with errors are removed. Entries found valid  are listed as "ENTRY.NAME found". The user is then prompted: ©�Mˆ¤ ÌؚآšØ¢»Ø¢¥�ªØ¢ê‚𨢩�Mˆš¶צ%GO AHEAD AND UPDATE DIRECTORY? (Y/N) Ͷ¥�Í©�³@‹¡ö "Are there still IMPORTANT files missing? (Y/N)". If the user  answers N (no) then a directory write is performed. If the us¶Í©�Yáeì©�Çìžž"á¶צWRITE OKͶ͹9¶צ)SECTOR ID ERROR--DISK MUST BE REFORMATTEDͶͭ’üer  answers Y (yes) then the area of the disk not occupies by "found"  files is searched. Text and Code files are detected a©�ŸÃ¡¥�ž©�¥� ª ©�¢Ÿš¹ô©�«�©�¥� ·©�þŸË„¡ ©�þ«�¹ö©�¥� ·¡©�¢ž©�þ¥� ª ©�þ¢Ÿš¹o¥� ¾Ä¡¥� ¥� ÆÍƪ¥� nd inserted.   Non-action:  %Datafiles, Infofiles, Fotofiles, Datafiles and Xdskfiles are  not detected. Text files may ÌÆ¥� ÍÆצ.ÍÆ¥�ÍÆª¥�›¥�›¾‚¿¥�›¾9Å¡¥�›0¿¥�›¥�›¾‚¿®­² Þë‚«¥� צDUMMYNNXª¥� ›ë †0contain an odd number of blocks, this  probably means that the back portion of the file was overwritten,  however determinat‚¿¥� ›ë Ž0‚¿®­þ6¥ØÇÿˆ¾ áØ‚Ì¹ö¥ØÇÿˆ¾³¿ÿþÿ‹“¡®¹s¥� צ ªˆÌ¥ØÇÿˆ¾³ÿþÿ³ion of validity is left to the user. Unlinked code  files will not contain their linker information. NOTHING will be  writte ÿœ‹ÙÉ„¡Ù‚ˆÌ¥� Ù›¥ØÇÿˆ¾¿Ø‚̹ô¥� ¥� ÆÙÍÆª®­_¬ ´Øšž"á-Ì¥ÙÇÿˆ¾ÃÙÇÿÉ„¡Ù‚̹ö¥ÙÇÿ0Recover versions II.0.terak and II.0.g 0  Differences:  The version II.0.terak is specific to the II.0 LSI-11  inten to the user disk until after the "GO AHEAD AND UPDATE"  prompt is answered. rpreter as configured for the Terak microcomputer. The II.0.g  version will run on all machines having standard UCSD Pascal  systems. The difference between the versions is confined to the  section which tries to read the existing, and possibly damaged,  directory.  %The II.0.terak version makes modification to the I/O drivers at  the BIOS level. They are reconfigured to¦ RECOVER , Ü¡ØØø•š¹êØÚ𨨸‚šì¥ÇØøž@Ì¥ÝÇÿˆ¾³ÿþÿÿ‹¡Ý‚̹òÝǾÄÌÜ“¡>ÌǦÌÇÿÌÝÞÈ¡¥ÝÇÿˆ¾Ë¡Ì݂̹ðÜ¡ì¥ÒÌ©�Ú¤ ÌÚábÜøÃÜ¢ºÃ„Ü¢¾Å„Ü¢¾ȄܣĄܣMÈ„¡5ÌÛÜ¢¾ÈÜ¢Û¾³ÿGÿÿÿ@‹„¡Û‚̹öÛÜ¢¾Å¡Ì¹vÜ¢ºÇØø‚žÆ®ØøÙÄÜ�¡îÜ¡ØØø•š¹ ¬¹ Ÿ­¤W“ý*Ì©�‚ÌÜ©�ÈÛÜË„¡Ú©�ÜMˆ¤ øÈ¡Ü̹܂̹öÛ©�ȡ٩�ÅÜ¢ºȄܢ¾Å„Ü¢¾È„ÜùܸĄܣ ÇȄܣ ńܢ  ºdÉ„¡6ÌÛÜ¢¾ÈÜ¢Û¾³¶ÿGÿÿÿ@‹„¡Û‚̹ôÛÜ¢¾Å¡Ì­5® ôÛMˆ¤ øÄ¡ ©�ÛMˆ¤ øÌ©�ÌÛÌÜÝÄ¡©�Ü‚Mˆ¤ ©�ÜMˆ¤ ¨ ܕ̹ô©�ÛMˆ¤ ÌÝښݢÙ‚šÝ¢ػݢ Lj»Ý¢»Øá!¥� ÌÆ¥� Î¥�ÇöžÎΡ©�¤ ÌÚÿ•«Ú£«�¹A¶צHow many blocks on disk ? Ͷ¥Í ¶Íž"áöê•«M«�ÌØ©�È¡aØÎ¡'¶©�ÍÆ¦.TEXT×ÍÆªØá!¥� ÌÆ¥� ÍÆ¦.CODE×ÍÆªÝ¢¥� ªÝ¢ ÇLjšÝ¢ ¥�¨¶צFile Ͷ¥� Ͷ¦ inserted aؤ ¢Í¶¦ found×Ͷ͹,ØÌ©�ÌÙÚÈ¡©�Ù¤ ©�Ù‚¤ ¨ ق̹ô©�•«�؂̹ò­‚k0³ äÕ�ßζͶצ/Are thet blocks ×ͶÚÍ ¶-ͶÙÍ ¶Í­` r ̸ÌÌÚÇ@¥�¾•ÉÛ“„¡¥ÚÇÿˆ¾³ÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ‹¡FÌ¥ÚÙ‚re still IMPORTANT files missing? (Y/N) Ͷ¥�Í©�³@‹“¡ ¶¥�͹ö¶©�Ͷͩ�YáÎÎÁ?8 ”Çÿˆ¾¥�Ù‚›¾ÃÙÉ„¡Ù‚̹ö¥Ú‚Çÿˆ¾¥�›¾ÃÙÄ¡ÌÚ‚®¹Ø‚ÌØ Å¡ Ç@̸ڂ̹ô¶“Û“„¡®­Ø�m ´ ؚǦÌÇÿÌ‚R~®¢l¶–ØP€ Æ € ¼ ¢ $Ȅܣ ńܢ  ºdÉ„¡6ÌÛÜ¢¾ÈÜ¢Û¾³¶ÿGÿÿÿ@‹„¡Û‚̹ôÛÜ¢¾Å¡Ì­5® ôÛÝÈ¡¥ÛÇÿˆ¾Ë¡ØšÛ‚̹öØø¡ì¥ÇÚ‚žØ®Øø¡ì¥ÇÚ‚žÎ ØøÜ“„¡ÚÙ¥�®Ú©�® Øš¹Øšì¥ÇÚž­Úo „ Øš@Î¥�ÇöžÎΡ©�¤ ÌÚÿ•«Ú£«�¹A¶צHow many blocks on disk ? Ͷ¥Í ¶Íž"áöê•«M«�ÌØ©�È¡aØÎ¡'¶©�Ì¥ÛÇÿˆ¾³ÿþÿÿ‹¡Û‚̹öØÛÇ¾ÄšØø¡ò@®ÌÌÌ ÛàÈ¡iƈ¥Û�Çÿˆ¾¿Æˆ¥Û�‚Çÿˆ¾¿ßÌÆˆ¥Û�‚Çÿˆ¾¿Æؤ ¢Í¶¦ found×Ͷ͹,ØÌ©�ÌÙÚÈ¡©�Ù¤ ©�Ù‚¤ ¨ ق̹ô©�•«�؂̹ò­‚k0³ äÕ�ßζͶצ/Are theˆ¥Û�‚Çÿˆ¾¿Üßdž‚ÌÞÝÅ¡ÞÌۂ̹ôÚÝ‚ÙÉ¡ÚÝ‚ÌÚÙ¥�®Ú©�® ­ÆŽÊ  Ø ÌÌ©�ÌÚÛÈ¡)©�ÚMˆ¤ ̶ܸĶÜùÉ„ A' or 'B' expecteddexed addressingPROCtBundefined labelcteddexed addressingPROCtBoperand out of rangeexed addressingPROCtBm¡ÌÜù¸Ú‚̹ö­Ì1 D ©�MÄ¡ž©�Mˆ¤ ù á Ì¹ÌØêÈ¡FÎ ¡>ì¥ÇØžØêÆÎ Ù“¡ØêÆÎ Ù¡©�‚Mˆ«�©�MÅ¡žust have procedure name addressingPROCtBnumber of parameters expectedessingPROCtBextra garbage on lineexpectedessingPROCtBinp©�ÌØ‚̹ö­Mv©�ÌìØÇžìØÇÇžìØÇÇžìØÇÇìž­ž<¶ÆÍ ¶ÆÍ¶ÆÍ ¶ÆÍ¶ÆÍut line over 80 charactersessingPROCtBnot enough .IF's80 charactersessingPROCtB&must be declared in .ASECT before usedCtBident ¶Í¥�Ûˆ»¥�Ú ˆ»¥� Ùdˆ»­T¶¦Recover - Version II.0.g×Ͷ͟«�¥�¦02ת«¥�צPROGRAMª¶¦Eifier previously declaredore usedCtBimproper formatiously declaredore usedCtB .EQU expectedatiously declaredore usedCtB&must .Eˆ¾Ã¡Øš­,@Û¹ìØÚ‚šÌØØø‚šì¥ÇØøžÌÇÿÌÝÞÈ¡6¥ÝÇÿˆ¾— —œ —œ—œ³ÿÿÿÿÿÿÿÿÿÿÿœ‹“¡Ì݂̹öØøÙÄÜ�¡ôNTER TODAY'S DATE MM-DD-YY:×ÍζצUSER'S DISK IN DRIVE:Ͷ¥Í ¶Í¶¦USER'S VOLUME ID:×Ͷ¥�ͶͭÆ- rracters 1eBstring expectedrdn .ASECTmeterracters 1eBbad block, parity error (CRC)rracters 1eBbad unit numberty error (CRC)rrMTPD €�MFPD @�MTPS �MFPS À�PC SP R7 R6 R5 R4 acters 1eBbad mode, illegal operationC)rracters 1eBundefined hardware errorionC)rracters 1eB$lost unit, unit is no longer on-lR3 R2 R1 R0 MARK SOB ~TRAP ‰ EMT ˆ BPT IOT RTI QU before use if not to a labelCtBmacro identifier expectedot to a labelCtBword addressed machinetedot to a labelCtB#backward ines 1eB(lost file, file is no longer in directorBbad title, illegal file name in directorB#no room, insufficient space on disk.ORG currently not allowedbelCtBidentifier expectedntly not allowedbelCtBconstant expectededntly not allowedbelCtBinvalid strectorBno unit, no such volume on-linediskectorBno file, no such file on volumediskectorBduplicate filech file on volumediskecuctureedntly not allowedbelCtBextra special symboltly not allowedbelCtBbranch too farsymboltly not allowedbelCtBvariable not torB(not closed, attempt to open an open fileB(not open, attempt to access a closed filB(bad format, error in reading real or inPC relativenot allowedbelCtBillegal macro parameter indexllowedbelCtBnot enough macro parametersexllowedbelCtBoperand not abstB nested macro definitions illegall or intB'=' or '<>' expectedions illegall or intBmay not EQU to undefined labelsll or intBoluteametersexllowedbelCtBillegal use of special symbolslowedbelCtBill-formed expressionl symbolslowedbelCtBnot enough operan'must declare .ABSOLUTE before 1st .PROCtB ust declare .ABSOLUTE before 1st .PROCtB ust declare .ABSOLUTE before 1st .PROCtB dsonl symbolslowedbelCtB&cannot handle this relative expressionCtBconstant overflows relative expressionCtBillegal decimal conust declare .ABSOLUTE before 1st .PROCtB ust declare .ABSOLUTE before 1st .PROCtB ust declare .ABSOLUTE before 1st .PROCtB usstantive expressionCtBillegal octal constantntive expressionCtBillegal binary constanttive expressionCtBinvalid key wordonstat declare .ABSOLUTE before 1st .PROCtB ust declare .ABSOLUTE before 1st .PROCtB ust declare .ABSOLUTE before 1st .PROCtB ust nttive expressionCtB%macro stack overflow - 5 nested limitnCtBinclude files may not be nested limitnCtBunexpected end of inputdeclare .ABSOLUTE before 1st .PROCtB ust declare .ABSOLUTE before 1st .PROCtB ust declare .ABSOLUTE before 1st .PROCtBclose pe nested limitnCtB(this is a bad place for an .INCLUDE fileB'only labels & comments may occupy col 1eBexpected local labelts maaren ')' expectedefore 1st .PROCtBregister expectedxpectedefore 1st .PROCtBtoo many special symbolsefore 1st .PROCtBunrecogniy occupy col 1eBlocal label stack overflow occupy col 1eB#string constant must be on one lineol 1eB%string constant exceeds 80 zable operandlsefore 1st .PROCtBregister reference onlysefore 1st .PROCtBfirst operand must be register1st .PROCtBcomma ',' echaracters 1eBillegal use of macro parameterracters 1eBno local labels in .ASECTmeterracters 1eBexpected key wordn .ASECTmetexpected be register1st .PROCtBunimplimented instructionister1st .PROCtBmust branch backwards to label1st .PROCtB. ž¥I¥‚³Ø¤Íž©Dó„“¡)¶Íž¶¦>>>>>×Íž¶¥‚³Ø¤ÍžÏ¥‚³Ø¤¢ŸšØ‚̹ö©*«,¥‚¡©¤ø«*­Ž  ©‚“áu©)ÇÿÉ¡mÇÿï•«©>¡6ï• ¥†H©)‚ž «ïfÉ¡¥†H©)‚¥‚#ïž¹¥†H©)‚¥‚#fž¹,ï ¥†H©)ž «ïfÉ¡¥†H©)¥‚#ïž¹ ¥†H©)¥‚#fž­„ó©D„“¡N&6 B° %¸.˜ TLA @¶Íž¶[Íž¶ž(Í ž¶¦]<×Íž¶©!Í ž¶>Íž­#P©D¡¥IÍž¥IÍž¹ ¥I Íž¥I¦PAGE - ×Íž¥I© INITIALISYMTBLDUPROCEND ASSEMBLEPRINTERR "Í ž¥I¦ ×Íž¥I¥ˆoÍž¥Iצ FILE:Íž¥I¥�†Ížó©D„¡¥IÍž¥Iצ Íž¥I¥�ÇÍž¥IÍž¥IÍž¥IÍž« ©"‚«"­º ©!‚«!ó©D„“¡¶.Íž©!2ŽÃ¡Ïó¡ö© ‚« © 7ŽÃ¡Ï ©Ï ì•É¡Cì•‚Ì¥ˆcì¿¥ˆcì‚Ø ‚¿¥ˆcÆì‚žÆì‚¿¥Iצ| Í RTT RESET WAIT HALT CLR CLRB ŠCOM @ COMB @ŠINC € INCB €ŠCCOPYRIGHT (C) 1979 REGENTS OF UNIVERSITY OF CALIFORNIA AT SAN DIEGODEC À DECB ÀŠNEG NEGB ‹TST À TSTB À‹ASR € ASRB €ŒASL À ASLB ÀŒROR ó¡ö¥IÍž¥I¥‚#ffÍž¥IÍž¥I¦ERROR #×Íž¥IÙÍ ž¥I͞ءE¥I"Íž¥I¦11×Íž¥Iצ.ERRORS" file not aroundÍž¥IÍ RORB ŒROL @ ROLB @ŒSWAB ÀADC @ ADCB @‹SBC € SBCB €‹SXT À MOV  MOVBžÌ¹Ì© Ú‚« ©Dó„“¡ô¶Íž¶¥‚#ffÍž¶Íž¶¦ERROR #×Íž¶ÙÍ ž¶ÍžØ¡D¶"Íž¶¦11×Íž¶¦.ERRORS � CMP CMPB   ADD ` SUB à BIT 0 BITB ° BIC @ BICB À BIS P BISB Ð " file not around×Íž¶Íž­” ,©‚«ž(ÇÅ¡ØÍ¹ØÏ¶¦E(dit,,×Íž¶Íž¶ÆÍžÙ¶ÃØ/BR BNE BEQ BPL €BMI �BVC „BVS …BCC †BCS ‡BGE BLT ÄØ<È„�¡¥„o¥�–Í¥„oÍžÙEÃÙeÃ�¡:©<¡©%¸ ©&•¸ ¹ ©)¸ ©'•¸ Çô¸ ¥„o¥�–Í¥„oÍž٠áöÏó© 7ŽÉ„¡Ï ­®ÎBGT BLE BHI ‚BLOS ƒBHIS †BLO ‡CLC ¡CLV ¢CLZ ¤CLN ¨SEC ÚÌÆÆº»ÆÆº»ÛÌ­"¶Ï ¥Iצ* Íž¶ØÏ ¥IÍž© ‚« © 7ŽÃ¡Ï ­8ÆÙ¨ÛÌÆº¡ößÅßÇ€‘É�¡mÜ ±SEV ²SEZ ´SEN ¸SCC ¿CCC ¯NOP  JMP @JSR RTS €MFPI @ ̶¦ Location ×Íž¶¥ˆHÆ º¾Íž¶¥ˆHƺ¾Íž¶¥ˆHƺ¾Íž¶¥ˆHƺ¾Íž¶ÍžÏ¹©HØÆº¿ó©8„¡Î¹MTPI € XOR xMUL p DIV r ASH t ASHC v FADD zFSUB zFMUL zFDIV z©HØÆº¿©H؂ƺ¿ó©8„¡Î­7  Äž"Ë¡.ž"‚ÏØ¡ž&ž­©*Ì©,•ÌØÙÈ¡x¥‚³Ø¤ýŸË¡fó¡&¥IÍž¥Iצ>>>>>Í/ ƺ0‚¿¥ˆcì‚Æº0‚¿¥ˆcì‚Æº0‚¿¥ˆcì‚ ¿ì‚«­­þ ÆÚ¨ÆÆ¨ÛÏÌó¡öØ�¡ÆÆ¨¹ÆÆ¨Ù†ÙŽ�‚Ìáfì‚È¡_¥ˆc)¥‚#ïž¹ ¥†H©)¥‚#fž­È©GØø‚¾« ØØø‚šò1Éò9Å�¡Ï¹òò1•Ì¥‚›©•¤øÌ©Å¡^¥‚•©•¤ø«GÚË©GÙ¾ Ë„©GÙ¾;Ë„¡©GÙ¾,áÚ•ì*ž ÙÉ¡¥ˆc쥈HÆ º¾¿¥ˆcì‚¥ˆHƺ¾¿ÙŽË¡ ¥ˆcì‚¥ˆHƺ¾¿¥ˆcì‚¥ˆHƺ¾¿¥ˆcì‚ ¿ì‚«ázì‚È¡s¥ˆcì*ž ÙÉ¡(¥ˆcìÆº0‚Ìق̹öf ©GÙž ÌÙÚ‚Ì©GÙ¾« ò Ãò;Ã�¡ ¥‚•©¤ø«G¹BÚË¥†HÙ¾ Ë„¥†HÙ¾;Ë„¡¥†HÙ¾,áÚ•Ìق̹ôf ¥†HÙž ÌÙÚ‚Ì¥†HÙ¾« ò Ëò;Ë„¡¿¥ˆcì‚Æ º0‚¿¥ˆcì‚Æ º0‚¿ÙŽË¡*¥ˆcì‚Æº0‚¿¥ˆcì‚Æº0‚¿¥ˆcì‚Æº0‚¿¥ˆcì‚ ¿ì‚«Ø“¡«BÆºÏ ÆºÏ «B­ @«‚“¥‚§©¤Øøš©•«Ù««>Ï­lÀ ©‚“¹ò©>¡ î‚«ï‚«¹«>©Gî¾á,©G« ò •ëCïeÉ¡¥‚#ï¿¥‚#ï‚ò¿ï‚«î‚«©G  ô¢©4šô¢©šô»ô»ô¢¶š¸­*©?©‚r$Ë„¡8Úøá$©„oØš©„o¢Ù¨¥„oÍž©‚«Ùž ÚšÙÚø¤©4šÚÚø‚š­JÌò%á ©«¥Î¹Jò éA„¡*f ©Gîž ÌïØ‚fÉ¡¥‚#ïØ ž ïØ‚•«îØ‚•«¹ò Ë¡ïfÉ¡¥‚#ïò¿ò á « ¹ð©>¡ ©‚«ï‚«¹«>©Å¡ ©G©¾« ¹¥†ØÌ©‚n¹ô¹ò¥0¥‚ŠÎ¹ò©‚o¡5Îô¢¥‚³©‚p¤ý𥂳©‚p¤¢ôš©‚‘ŸË¡©‚‘« ©‚‘ü«‚‘¹¥ ž¥0¥‚ŠÎ¹ò©‚sý¹?¥0¥‚ŠÎ¹öÎô¢©‚sÿš©‚s¢ôš©‚‘ŸË¡H©¾« ò%éÅ„¡¥Î¹ôò,Ãò Ã�ò;Ã�¡Z©‚«©Å¡F‘ ©G©•ž ̹F‘ ¥†H©•ž ÌïØ‚«¥‚•©¤ø«G©©á«‚“¹ ¥‚§©¤ø««>Ϲ]ò é‚‘« ©‚‘ü«‚‘¹¥ ž¥0¥‚ŠÎ¹T¬¡&¹LG  "$&(*,.0246s:<>@B‰‹H�‡¹ò©‚sýË¡0©‚s¢©A„¡BïfÉ¡¥‚#ï ¿ï‚«©‚«©Å¡ ©G©¾« ¹¥†H©¾« ò Ë¡ö « ©•«ï•«¹ïfÉ¡¥‚#ïò¿ò á « ¹ð©>¡©)‚«)¹«>©)÷ġϥ†H©)¾é:“„¡©‚sÿ‚š¥‚tž©‚t©4Ç•š©‚t¢©‚s£š©‚s¢©‚tš©‚sý¹¥.¥‚|ι&¥/¥‚ƒÎ¹¥-¥‚uι¬!¹ (,$¹¬.¹ W|gk¥‚n¥‚V¨Æ¥†H©)‚¾« ò •ëC©)‚«)¥†H©)¾« ò;áf ¥†H©)ž Ì©)Ø‚«) « ¹0ò éA„©:“„¡f ¥†H©)ž Ì©)Ø‚•«)¹ ò Ë¡ò á « ¹ ¬¹C�ž­ÚÏ ­$˜ ”ô¢©4šô¢©šô¶»¶¡3¸Ç‘„Ç‘„�¡ô¢©4‚šô»©‚r%á ô¢©‚q©•š¹¸ô»©‚r%á ô¢¶©•š­Î¨ÿ^Ýõ³À‹“„¡Ï̹*ÜöÛÉöÚÅ�„¡Ï̹Þí‘Ë„¡ Ï‘«Ì¹Ì­JÏë(ˡϹö¸ž­ž¥IÆÍž¹¥I¦| ×Íž¥I¥ˆcÍžïeÅ¡e«¥‚#Æï‚žÆï‚¿©‚“á¥I#Íž¥IÆÍž¥IÍž¹¥I Íž¥IÆÍž¥IÍžnÇ‘¶„¡¶†¸¶Ç€‘ĶÈ„¡²²º»¹Ï­<¶¡©‚r%á ©‚q©•¸¹©‚q¸®¹©‚r%á ¶©•¸­­©‚”á©«¹©«¥ˆc¥ˆX¨ «¥‚#¥�ð¨3‘«­*j& ÙÌØ¡Uá"¥I¥ˆHƺ¾Íž¥I¥ˆHƺ¾Ížá'¥IÆºÍ ž¥IÆºÍ :ÌÚÌ©‚n¹ôÙ¡©‚qÌιòιò©‚o¡7Îô¢¥‚³©‚p¤ý𥂳©‚p¤¢ôš©‚‘ŸË¡©‚‘« ©‚‘ü«‚‘¹¥ ž¹Î¹ò©‚sý¹1ιöÎô¢©‚sÿš©‚s¢ôš©‚‘Ÿž¥IÆºÍ ž¹öáD¥I¥ˆHÆ º¾Íž¥I¥ˆHƺ¾Íž¥I¥ˆHƺ¾Íž¥I¥ˆHƺ¾ÍžáN¥IÆºÍ ž¥IÆ ºÍ ž¥IÆ ºË¡©‚‘« ©‚‘ü«‚‘¹¥ ž¹T¬&¹L9  "$&(*,.0246k:<>@B{}H�¹Hó¡¥IÍž¥I©‚sÍÍ ž¥IÆºÍ ž¥IÆºÍ ž¥IÆºÍ ž­¡  ©5ÇÿÅ¡G¶©HðÍá6ÏÏð‚« ð©2Å¡ð«2©HÇ©H•Ç�ž©5Çž©Dó„“¡¶Íž¶©‚s͞Ϲ¬¹ ÍB#¥‚n¥‚V¨ÆÝÏ ­#^ L¥‚#¥�ð¨3«©<¡¥„G¥†H©'Í«(¹¶ ¥†H•«5©6Ç‚«6©H©5Ø¿©5‚«5©6©5‚«4©4©3Å¡©4«3©‚«ó©B“„¡{ØÌá2ì‚È¡+¥ˆc쥈Hƺ¾¿¥ˆcì‚¥ˆHƺ¾¿¥ˆcì‚ ¿ì‚«á<ì‚È¡5¥ˆcì©'Í«(«)©'©(‚«'©(á>©<¡0©&«'©%«)¶ ¥†H©'•Í«(«<¥„GÍ¥�†¥�vª¹ $Ïž&žÏf ¥†H©)ž «Ç¥†Hž «ïfÉ¡¥†H©0 ¹¸ž­ ²¶•¤ºË¡ê¶Ä¡²¶•¤ºË̹Ìݡ•¤ºHáð²¶•¤ºÌ²¶¤ºÌÙ³Àyßá¡ê­G  ¡,„Ë4,Æ. ªPÆ ªPò³~ÿ‹¡7òAÄ¡ Æ.ò7•¿¹Æ.ò0•¿ÆÌXÆXÆPÍÆXÆ.Ç ÍÆXªPòÌϹöÆÍ‹¡$ÌسÀ‹¡$ÌÙ$ÃØ$Ä©?©‚o�“�̲¶¤ù̲¶•¤ºÌ²¶•¤ÌÚ³¥<<‹“¡®¹òÚ¹öÙ$ÃØ$Ã�¡Þ¢ÞùÛ‚šØ$Ë¡ÞØ»¹®¹Æ¾ËƾÃ�¡ôòHá̹8ò.á ̹.òá̹$òBá̹ÛBáÌÆÆ¾Í¹Ì«>E«Æ.¿«Ú¹âƾšϹMƾɡÆÌXÆXÆ.PÍôØ$ÃØ$ËÙØÃ„�¡Þ¢ÞùÛ•šØ$Ë¡Þ$»¹®¹ôÜ¡ Þ¢ÞùÛ�š¹®¹ôÜ¡ Þ¢ÞùÛ„š¹®¹zܡޢÞùÛ“„Þù“Û„�š¹®¹bÜ¡ Þ¢ÞùÛ�š¹®¹QÜ¡ Þ¢ÞùÛ†š¹®ÆXÆÇ ÍÆXªP¹òÆW ƾ»ÆWƾ»ÆWƾ»ÆWƾ»ÊW«¹àƾšϹyƾɡÆÌXÆXÆ.PÍÆXÆÇ ÍÆXªP¹ðÌÌÌXÙÊXÈ¡"ÆÙ¾¹@Ü¡ Þ¢ÞùÛŽš¹®¹/¬¹(tT-  Ú»^‰¶•¸¹®¹ì²¶¤º$á{²¶•¤ÌÞº¹1Þ¢²¶¤ù‘š¹ Å¡ Ï ž¹ Ø �ÆÙ¾‚Ìق̹îØÇÌ ÅØÇÌ ÃÆ¾Å„�¡Ï¹ Ø �ƾ‚«¹àÆ¾ÅÆ¾ÅƾÄ�¡Ï¹èƾɡÆÌXÆXÆ.PÍÆXÆÇ ÍÆXªEÞ¢²¶¤ùš¹6Þ¢²¶¤ù‘•š¹$¬)¹ AS¶•¸ÞH»Þ$»¹®­’˜¤¦×X¥‚n¥‚V¨‘P¹ìÌÌXÙÊXÈ¡ÆÙ¾Å¡Ï žÙ‚̹êÆWƾ»ÆW ƾ»ÆW ƾ»ÆWƾ»ÆWƾ»ÆWƾ»ÊW«¹àƾšϹZƾɡÆÌXÆXÆ.PÌ©;¡Ï¹«;ë³x}?ÿË“¡Î¹ìÆÜ‚¤Ìë¹ðÜ‚ÌÊ뻹îܑˡ Ü‚ÌÊ»¹%«;Ïêýáí‚«¥‚­í¤š¹ Ü‚ÌÊ»¹îÜ‘áI**áÍÆXÆÇ ÍÆXªP¹æÌÌXÙÊXÈ¡%ÆÙ¾Å¡ Ï ž¹ ÆWÙ•ÀÆÙ¾»Ù‚̹äÊW«¹&¬N¹q §­*]Š›ó 5܂̩‚”á Ê¢©š¹Ê¢©š«‚nÊ%»ÊH»Üšι í‚«¥‚­í¤ëš¹ Ü‚ÌÊ뻹î܂̩‚”á Ê¢©š¹Ê¢©š¥‚n¥‚V¯ ¡«‚n¹©Šº�ØPê ÏÆÐ רÌò³ÿþÿÿ‹¡ØÉ¡ÆØò¿Ø‚ÌϹöØÃ¡-ϑ̫E©E“Ø É„¡Ø‚Ì¥…£Ø¤Æ¯ «E¹ô©E“¡-‚n᥂n¥‚V¨Ê%»ÊH»ÜšιîÜ‚ÌÊ¢šëEá Ê¢©š¹6¥�ž¾È¡+Ì¥�ž¾ÌÛÊȡʢÊùÇ�¥�žÛ¾‚šÛ‚̹ö¹ÎÊ$»ÊH»Ü¶>Íž¶ÆÍž¶<Íž¶Íž!Ϲ ¥†'ؤø««>ëGáì©•«Ï©Å¡%¥‚•©¤ø«G¥‚›©¤ø«©Gî¾ Ë¡î‚«¹ò¹«‚“¥†H©)¾ Ë¡©Å¡Î¹î©‚o¡¥‚³©+¤þ&áϹ¥‚³©+¤þ&á«‚o«‚n©+«‚pÜ‚ÌÊ¢¥‚³©+¤üšÊ%»ÊH»ÜšιnÜ‚ÌÊ¢šÊ»ÊH»Üšι)‚«)¹ðÏë(á#¥�ð¨3‘«Ï©@ó“„©©Ä¡©•«« ©D¡¶ÍžÏ¹âëAáä©<¡#Ϲ橂“Ë¡%Ϲè«<Æ0 ªPÆ ªPÏò Ëò Ë„¡ Æ0ò¿ÆÌYÆYîÜ‚Ìêý¹ôÊ¢êþšÊêý»¹òÊ¢šÊ%»©‚o¡Ï¹ «‚o«‚nê«‚s¹òÊ¢êþšÊ%»©‚o“¡«‚nê«‚s¹òÊ¢šÊ%»©‚o“¡«‚nê«‚s¹sÊ¢šÊÆPÍÆYÆ0Ç ÍÆYªPò áê©'«&©)«%¥„GÆÍÏÆž ¥�†Æª«'Ç«)(«©Dó„“¡¶Íž¶¥‚#ff͞ϭƒ¬éý˜ÐRêý»©‚o“¡«‚nê«‚s¹V¬ž&¹N’C  "$&(*,¾ÀÂÄÆÈº_aceg¢‡Ú¨ÎÊH»Üšιîιîí‚ì!ÆÐ רÌò³žÿ‡þÿÿ‹¡ØÉ¡ÆØò¿Ø‚ÌϹöÌ«EÌÌØßÈ¡ÚÚ‚ÌÆؾÌÚ“Ù„ÚÙ“„�ÌØ‚̹ôÚ„ÌÚÇ€†ÌÚ“Ù„ÚÙ“„�ëÇ‹¡ í‚«¥‚­í¤ëš¶‘á#ëá ¸ž¹¶¡ ϸ¹¸¹ô¶ò¶¤ºHÄ¡&²¶¤ù«²¶¤º«õ«‚rö«‚q¸¹ö¶Ã«¥‚­í¤ëš¹îÜáÎÆÜ•¤ºË¡ÎÆÜ•¤¢ÆܤùšÆÜ•¤Æܤº»ÆÜ•¤Æܤº»Ü•ÌÆܤºHË¡ÎÜšιî¬F¹î�ƒO²¤ºHIJ¶¤º³f‹„¡_í‚«²¶¤º¹¥‚­í¤š¹!¥‚­í¤š¹¥‚­í¤ëš¹ ¬¹%²¤ù«²¤º«õ«‚rö«‚q¸QSUW‹‘��iŽ$od,u©0­¯±³µâ>@BDFHJLNPÑTVXZ\^`ýdfhjlnprtvxz|~€‚„†1 XFæ,ˆzšøèöT–¢òÀ#ö$J„ „žÜ2x|„° p!Æ!P"ö"# $H$H$«¹ò«¹òÏò+᫹ò᫹««>¹òÏò-á«Í¹O¥žêƨڡꢶWüÍš¶WýÍÌê¢Ûš¹ê¢¶Wýšê¢¶Wüšê¢¥ƒÆÙ¤øš¥ƒÆÙ¤êš²WͲWÍ ¶W¾Ã�¡ð²WÍ«=&«‚’«'«ÌÚ„Ì¥ƒÆÚ¤ø«©E“êŸË„¡êƯ ¡«E¹êü«¹ò©E“¡î©‚’¹h¥ž¹ð©‚’¹¥ ž¹%¥ ž¹¥ ž¹¥ ž¹¬¹!¹$!ꢚꢚꢟš¹u¥¹ò(᫹««>¹ò«¹ò«¹ò«¹ò«¹ò«¹ò«¹òÏò>᫹««>¹ò«¹ò«¹ò¬à!~¹ò…�ð¶3?õÔB”îz ¦ž¹n¥ž¹g¥žê¢šê¢Ÿš¹V¬'¹N'  "$&(*,.0246O:£¥§©DdHJc¼êƨꢩ‚’š "$&(vî\EL ó468:<>@BDFHJLNPRTVXZ\^`bdfVxA´~€‚„†ˆŠŒŽ�’”–˜šœž ¢¤¦¨ê¢¥ƒÆÚ¤øš¥ƒÆÚ¤êš¹èêý'áê©á"Ϲv©Å¡ ¥‚›©¤îš¹ ¥‚›©¤©)šò ˡϹìÏ «‚“¥‚¡©¤©*š©,«*©‚«¥‚•©¤êþšêþ«G©©•á©G¾¡ª¬®°²´‘õw�­ÊÕ䯄oÆ…›ÍÆ„GÆ…sÇ‘ÍÆIÆ�uÍÍ Í ©$Å©@„¡Í Í ë?áöÆ„oÍÆ„GÍÆIÍÁ-þ©«¹ « ©D¡Ï«(«Ïž©C¡ ò:áÏB«¹êýÄêýÈ„¡#«¹F««>­(*‡µØ¾<V"ÆÐ ר̩̩‚“ÃÌØ¡$¥‚¥…£¤ÐALIGN ר¥†'¤$𥅣¤×ÐASCII ¨¥†'¤𥅣¤ÐBLOCK ר¥†'¤%𥅣¤×ÐBYTE ¨¥†'¤'𥅣¤ÐCONST ר¥¡Û¤ø«+Û‚©á©*̹ ¥‚¡Û‚¤øÌ¹©*«+©,Ìò³Æÿ‹¡ÙÉ¡ÆÙò¿Ù‚ÌϹöÙá'Ï«E©E“©+ÚÉ„¡¥‚³©+¤Æ¯ ¡«E¹©+‚«+¹ô©E“†'¤8𥅣¤×ÐEQU ¨¥†'¤3𥅣¤ÐFUNC ר¥†'¤>𥅣¤×ÐPUBLIC ¨¥†'¤6𥅣¤ÐPRIVATE ר¥†'¤7𥅣 ¤×ÐPROC¡}©,á (Ïž¹nØ¡H¥‚³©+¤¥‚³©+‚¤©,©+•�ž©*‚«*Û‚Ì©•Ì ÙàÈ¡¥‚¡Ù¤¥‚¡Ù¤ø‚šÙ‚̹ò¥‚³©+¤Ì àÆ¨à¢&šà¢šà¢Ÿš©,‚«,C ¨¥†' ¤=𥅣 ¤ÐWORD ר¥†' ¤&𥅣 ¤×ÐINTERP ¨¥†' ¤0𥅣 ¤ÐMACRO ר¥†' ¤1𥅣 ¤×ÐENDM ¨¥†' ¤G𥅣¤«©Cò:ġϫ>­R¼ì @#D««AÌÆ ªP¥�ž¦×ªPÏÌò"ËØPÉ„ò Ë„¡5Æò¿¥�žÌ,Æ,¥�žPÍÆ,ÆÇ ÍÆ,ªP©‚“áÌÏØ‚̹öÐIF ר¥†'¤2𥅣¤×ÐENDC ¨¥†'¤)𥅣¤ÐELSE ר¥†'¤*𥅣¤×ÐREF ¨¥†'¤4𥅣¤ÐDEF ר¥†'¤5«A١ؑ ¥�žØž Ì¥�ž¥�ž¾Ø‚¿ò á(«)ÏØPÅ¡*Ï­wø š$ë(ëCÏò áÏ«C¹öò á(«¹ðò¹ôÎ ¹òÎ"¹òÎ!¹ò«¹ò«¹ò «¹ò «¹ò𥅣¤×ÐORG ¨¥†'¤"𥅣¤ÐINCLUDE ר¥†'¤A𥅣¤×ÐLIST ¨¥†'¤9𥅣¤ÐNOLIST ר¥†'¤:𥅣¤×ÐASECT ¨«¹ò«¹ò«¹ò «¹ò «¹ò «¹ò(«¹ò«¹ò*$áÏò0Éò9Å�¡««>¹Î#¹ÏÎ#¹òÎ$¹ò«¹ò«¹òÏò+᫹ò᫹««>¹òÏò-á«¥†'¤ 𥅣¤ÐPSECT ר¥†'¤!𥅣¤×ÐTITLE ¨¥†'¤<𥅣¤ÐEND ר¥†'¤?𥅣¤×ÐPAGE ¨¥†'¤;𥅣¤ÐMACR¹ò(᫹««>¹ò«¹ò«¹ò«¹ò«¹ò«¹ò«¹òÏò>᫹««>¹ò«¹ò«¹ò¬à!~¹ò…�ð¶3?õÔB”îz ¦OLISר¥†'¤+𥅣¤×ÐNOMACROL¨¥†'¤,𥅣¤ÐPATCHLISר¥†'¤-𥅣¤×ÐNOPATCHL¨¥†'¤.𥅣 ¤ÐABSOLUTEר¥†' ¤/š­ "$&(vî\EL ó468:<>@BDFHJLNPRTVXZ\^`bdfVxA´~€‚„†ˆŠŒŽ�’”–˜šœž ¢¤¦¨„ÌÆ¾ë9­ ¸Ì ¶àÈ¡¥ƒÆ¶¤Ÿš¶‚¸¹ö®¶WüË̲WÍÆ¶W¨Ì«E¸Ì ¶àÈ¡"ÙÙ‚ÌÆ¶¾ÌÙ“Ø„ÙØª¬®°²´‘õw�­ÊÕ䯄oÆ…›ÍÆ„GÆ…sÇ‘ÍÆIÆ�uÍÍ Í ©$Å©@„¡Í Í ë?áöÆ„oÍÆ„GÍÆIÍÁ-þ“„�̶‚¸¹ôÙ„ÌÙÇ€†ÌÙ“Ø„ÙØ“„�ÌÙ„Ì¥ƒÆÙ¤ø«©E“êŸË„¡êƯ ¡«E¹êü«¹ò©E¡2¶¦Opcode declared twice=×ͶÆÍ¶2 ‚W¥ˆnž «;«A«:«<«F«B««««‘«¥ˆoÐ ר«"¥�Ç ªPó¡)¥I¦PAGE - ×Íž¥I©"Í ž¥IÍž©"‚«"¥„o¥�–Í«Í---ª ÌÌÝùÎ¥�ÇÆ6ªP¥IÍž© ‚« Í Æž!­åؾ .4È ÌÌ_ÜÊ_È¡z¥ƒÆÜ¤ø«êŸË¡eêý¹êιV¬×'¹N  ¥žÎÍ«‚”ÆWÍ­Êh-æjPVø�ª Ù‚ÌÆÙò¿ò áôÆÙ¿ÆצCONSOLE:¯Æ¦#1:ׯ�«DÆצ·¡ò©DƦPRINTER:× "$&(*,.0246C:GIKMOQSUWYêü«¹ö܂̹ôÆ6¥�ǪP¥�ǦSYMBOLTABLE DUMPתPÍ ¥I¦>AB - Absolute L¯�Ʀ#6:ׯ�ÆצREMOUT:¯�Ʀ#8:ׯ�¡ ¥IÆÍ¹b¦.TEXTׯÍá+¥IÌ�‰Æ�‰ÆPÍÆ�‰×¦.TEXT[*]XÍÆ�‰Í¹$¥IÌ�‰Æ�‰ÆPÍB - Label UD - Undefined MC - Macro×Íž¥IÍž¥I¦=RF - Ref DF - Def PR - Proc FC - Func×ÍžÆ�‰¦[*]×SÍÆ�‰Íž"ÃÌÍØ¡ðÆצ·« ó«@ó¡«¹‘««8«7«?Ì Ì�‰ÚÊ�‰È¡¶ÍžÚ‚̹V«‚XŸ«‚[&«‚Z«‚Y¥‚n¥‚V¨«¥IÍž¥Iצ,PB - Public PV - Private CS - ConstsÍž¥IÍž¥IÍž¥IÍž© ‚« ÌáÆצ------ª ÌÌáÆצ->««‚“Ç«)«(««,«*¥‚¡ ž ­FRòBƒ’¥�–¦*LINKER.INFO[*]ת².ÌÆ¦11×ÍÆצ.OPCODES ÍÆªP²WÌÆ¦*ׂW¥ˆnž «;«A«:«<«F«B««««‘«¥ˆoÐ ר«"¥�Ç ªPó¡)¥I¦PAGE - ×Íž¥I©"Í ž¥IÍž©"‚«"¥„o¥�–Í«ÍÍÆ².QÍÆÍž"Ë¡ò²WÌÆ¦#4:×ÍÆ².SÍÆÍž"Ë¡ô²WÌÆ¦#5:×ÍÆ².SÍÆÍž"Ë¡ö²WÌÆ¦#9:×ÍÆ².Æب̶ÌÝÌÆßø± ¡'ßùŸÃ¡ߢžÌßù¢Ÿšßù¢Ÿšßùêš¹ßù̹%ßúŸÃ¡ߢžÌßú¢Ÿšßú¢Ÿšßúêš¹ßúÌÞ¡ö­]rØúŸË¡Øú®SÍÆÍž"Ë¡u²WÌÆ¦#10:×ÍÆ².TÍÆÍž"Ë¡L²WÌÆצ#11:ÍÆ².TÍÆÍž"Ë¡#²WÌÆ¦#12:×ÍÆ².TÍÆØø«¥IêÍžêý¹ö² ¦ AB תP¹ô² ¦ LB תP¹ô² ¦ PR תP¹ô² ¦ FC תP¹ô² ¦ PB תP¹ô² ¦ PV תP¹ô² ¦ RF תP¹ô² ¦ DF תPÍž"Ë¡8¶².Ͷ¦ not on any vol on line×Ͷ͞&ž­@BDV œÆWÆ�ƒÍÎ¥�ðfž ¥‚#¥�ð¨3ζצ11Ͷ¹r² ¦ UD תP¹d² ¦ MC תP¹V¬«'¹Nx  "$&(*,.0246Z:–>Œ€t®ÚÎnb¥I² Ížêצ Assembler Ͷצ II.0 [d.4]ͶÍÌÌ�‰ÚÊ�‰È¡ ¥ˆXÚ ¿Ú‚̹ö¥ˆc¥ˆX¨ «¥ˆHÐ0123456789ABCDEFר«5«Çÿ««!‘«ý³o4‹¡êþÍ ¹ ¥I²Íž¶‚¸¶¶ŽÃ©D“„¶¶ŽÃ©D„�¡¥IÍž© ‚« © 7ŽÃ¡Í ¹¥I¦| ×ÍžØùŸË¡Øù®­¯†Þ«$« ².¾Ã¡ ¥�v²&ª¹¥�v².ª¥�†¥�vª« «@¶¦2Output file for assembled listing: ( for none)×Í̶¥ Íòáž ŽÆž ë?á Í ¥‚#¥�ð¨3¥ žêÐ רÆžÝêšÝ¢ŸšÝ¢ŸšÌÌ_ÜÊ_È¡z¥ƒÆÜ¤ø«êŸË¡eêý¹êιV¬×'¹N  ¹@òá$ÙÄ¡¶Í¶ ͶÍٕ̹ò Ë¡¶òÍÙ‚ÌÆÙò¿ò áôÆÙ¿ÆצCONSOLE:¯Æ¦#1:ׯ�«DÆצ·¡ò©DƦPRINTER:× "$&(*,.0246C:GIKMOQSUWYêü«¹ö܂̹ôÆ6¥�ǪP¥�ǦSYMBOLTABLE DUMPתPÍ ¥I¦>AB - Absolute L¯�Ʀ#6:ׯ�ÆצREMOUT:¯�Ʀ#8:ׯ�¡ ¥IÆÍ¹b¦.TEXTׯÍá+¥IÌ�‰Æ�‰ÆPÍÆ�‰×¦.TEXT[*]XÍÆ�‰Í¹$¥IÌ�‰Æ�‰ÆPÍB - Label UD - Undefined MC - Macro×Íž¥IÍž¥I¦=RF - Ref DF - Def PR - Proc FC - Func×ÍžÆ�‰¦[*]×SÍÆ�‰Íž"ÃÌÍØ¡ðÆצ·« ó«@ó¡«¹‘««8«7«?Ì Ì�‰ÚÊ�‰È¡¶ÍžÚ‚̹V«‚XŸ«‚[&«‚Z«‚Y¥‚n¥‚V¨«¥IÍž¥Iצ,PB - Public PV - Private CS - ConstsÍž¥IÍž¥IÍž¥IÍž© ‚« ÌáÆצ------ª ÌÌáÆצ-3 š¹k¶�V¢š¹a¶�V¢ š¹W¶�V¢ š¹M¬#¹F  "$&(*,.02468:‡u�ogU¶�Vê¨êý¹ò¶�V¢ÚH•¾¿Ú‚̹ôÆ¿ÆÇ¿ÆÇ �‚¿ÆÇ¿ž"á¶ÆÍá6Í©@©D“„¡ò¥IÍ¥I¦Assembly complete:×Í¥I©! Í ¥Iצ lineš¶�V¢êÿš¶�V¢êþš¶�V®¸ê£ŸË¡;¶�V¶¤ê£øš¶‚¸¶á¶�V®¶�Vž ¸ê¢ê£ùš¹ô¶Ë¡¶�V®ê¢šê¢Ÿš¹ð¶�V¢sÍ¥IÍ¥I©Í ¥Iצ" Errors flagged on this AssemblyÍ¥IÍ¥I Í¥IÍÆ�.ÍÍž&¶Íž¶צAssembly complete:Íš¶�V¢©$š¶�V¢êþš¶�V®¹ðêýá ¶�V¢ š¹¶�V¢ š¶�V¢êÿš¶�V¢êþš¶�V®¶�V¢š¶�V¢êÿš¶�V¢š¶�V®¹N¬#¹F[ž¶©! Í ž¶¦ lines×Íž¶Íž¶©Í ž¶צ" Errors flagged on this AssemblyÍž¶Íž¹ì¥ˆnž ©$‚«$«««¥  "$&(*,.02468:9;=?ÀŸ¹T¬¦&¹Lú  "$&(*,.0246‹‚Šž «0¥‚ƒž «/¥‚|ž «.¥‚už «-©«©$Å¡Æ�VÍž¥„o¥�–Íž¥„o©Ïž¥ žô¢ŸšŸ«‚‘©4«1ë=á«‚’¹#«‚’ÍëFË¡Í:468:<>HJŸêü«¹êØ‚Ì¹æ­ ÊÀnr–Èø²�V¥�–͞ƞ ©©Ë¡ ²�V©Ïž©‚Ì©Ì ÞàÈ¡/²�VÍž¶�¹>©$᥈sꨥˆoê¨ê¢©$šÍëáÍëEˡ͹ꢩšÍ¹ê¢š¥ˆc¥ˆX¨ «ó¡Í ë(Ë¡Íë(ˡ͹îÍ ¥‚#¥�ð¨3‘«&«‚’Æ�VÍÆVøÃ¡Æ¶�V¢¨Ü®ÆÜ©6•Íނ̹ö­7 l ©ž(Å¡ž(«©@¡F¥I¦Current minimum space is ×Íž¥I©Í ž¥I¦ words×Íž�.Í­/!¿�¿ ¶šÙý¡îÙÌÝ¢ÌÌÇÌØÉÝ£“�ÞúÃÝüÄ�¡¹ìÝüÇÉ¡3ÇÝü†ÌØÚ•Ä¡$ØÚ•ÌÜÚÝü�‚ÌÜÇšۂÌÜÇ¥IÍž©@©D„“¡M¶Íž¶צCurrent minimum space is Íž¶©Í ž¶צ wordsÍžÍÍ¥„o͞Π©3Ω6©5‚«4©5¡Í ¥‚n•̹ö¹ôØÅ¡"Ø•ÌÜÝü‚ÌÜÇšۂÌÜǕ̹ò¹ðÞùÞø•ÌÛÚÅÛÚÃÜÞ£ Ä„�¡ÚÌÞ£ ÌÛÝ£ Ë¡RÝ£ ¡&Ý¢ šÝ¢šÝÿÝ¢!ÇÞøÝ£ ‚•žž"Ë¡¹ìÛ©9·¡!ØÌÌÚÛÈ¡ÙÚ¤ÙÚ¤øÍšÚ‚̹ö²�VÍž©‚«­- BØ©6É¡f©4džð•‚ÌÙš̶©HÙðÍÙÉ¡6ÍðÙ‚©2Å¡ðÙ¥‚V¨Î©4©1•ÍÍÎ¥ˆw©$¤©4©1•š©#©4‚©1•«#¥ƒÆ¥ƒF¨€€¥ˆnž!­ÆÇžØ«H¥ƒF¥ƒÆ¨€€¸Ì¶ÙÈ¡ÆÇž¶‚¸¹ö©HÇÿž‚«2ØÇ†« ž"á¶©HðÍáðÇ�«6ØÇŽ«5¹ôØ©6Çÿ‚Å¡ö©4džð•‚ÌÙš̶©HÙðÍÙÉ¡6ÍðÙ‚©2Å¡ðÙ‚«2ØÇ†« ð©2Ä¡( ó¡W¥IÍ ž¥I¦ blocks for procedure code ×Íž¥Iž(Í ž¥Iצ words leftÍž¥IÍžó©D„“¡_¶Íž¶Í ž¶¦ blocksž"á¶©Hð©2•©2Íð©2•É¡6Íð«2¹ž"á¶©HðÍáðÇ�«6ØÇŽ«5¹Ø©6•«5Í­ Ì©?¡ð©©Ë¡g²�V©Ï for procedure code ×Íž¶ž(Í ž¶צ words leftÍžÍÇ«6Ç«4Ç«3« «2«5«#¥ˆwž ¶©HÇ‘Íá6ÍÍž©‚Ì©ÌÚÝÈ¡N²�VÍž¶�VøÙá5ÌÌÜÞÈ¡*¶�V¢ܤøË¡©4¶�V¢ܤø•ÍÛ‚Ì܂̹öڂ̹ôÌÌÜÝÈ¡ ØÜ¤øË¡©4ØÜ¤ø•ÍÛ­�$ F Æ�VÆ‚‚ÍÆ�.Æ‚ZÇ‘ÍÆ‚ŠÇ@‘¤#ž©$šιΠë?áðÌ©$ÌÌ‚‹ÚÊ‚‹Ä¡ÙÍÙ¥ˆwÚ¤ø‚‚Ìڕ̹öÍ ©$Í Ù«#©5‚Ì܂̹òÛÍ­-ˆm ´¥‚uÎ¥‚ŠÎ¥‚ƒÎ¥‚|έ ©Ë¡ ²�V©ÏžÌÌØÙÈ¡ä¥ƒÆØ¤ø«êŸË¡èêý¹îó¡'¥IÍž¥I¦Çÿ‚dž̶©HÚðÍÚÉ¡6ÍðÚ‚« Ê�Vž Ê�VÐ רÊ�VÎÆ�VÍÆ�.¥�–Í©�Çÿ‚dž̞"áÆ�.©HÚÇ‘Íá©H>>>>>×Íž¥IêÍž© ‚« ©Dó„“¡$¶Íž¶¦>>>>>×Íž¶ê͞͹ì¶�Vž êý¹F¶�V¢š¹ö¶�V¢š¹¶�V¢š¹u¶�V¢©�Çž ž"á¶©HÚðÍÚÉ¡6ÍÆÇž ©#ÌÆÆº¿ÆÆº¿Æ@Ç€ ž Æ�¦ II.0 [d.4]תPÆ�ÆÇô žHÌOÌ‚‹ÚÊ‚‹È¡ÆÚ¥ˆs4 Í¡ öÜÃÌÚۯ̹̹̭X¤©‚«©ÌΓ¡ìë(Ë¡Íë(ˡ͹öÍ ÌÍïeÅ¡Íò ᥂#¥�ð¨3‘«Í¹ðò.áòÆ×Ð Ä¡Í ëË¡ö­8X ©‚”á ©‚«Í¹EÌÌ͡ǀ‘ÇÿÍ¡öÌÆºÍ ó¡Ù‚ÌÙŽÃëÄ¡Í ëË¡ö­E b  ¨ÌÍò³ÿþÿÿ‹ÙÉ„¡ÆÙò¿Ù‚Ì͹ô«>ÆÐIF ׯ ¡©‚«¹(ÆÐENDC ׯ ¡©É¡ Í ž¹©•«Ø©ÃÆÍ¡UÇÿÍ¡G©‚”áö«¹;©é?“„¡ ö«©«¹(ö©É¡Í¹ö©•ÌÌØÌÙÚÈ¡ Í Ù‚Ì¹ö­ h빫‚’¹)«‚’¹# «‚’¹ÐELSE ׯ „Ø©‚ÃÆ×ÐENDC ¯ „�ÌÚ¡îH«Í­ä®ü©ÌÍ ÌÍïeÅ¡Íò ᥂#¥�ð¨3‘«Í¹òò.áôÌÆ!«‚’¹«‚’¹¬48¹ #-ÍëFˡ͹Cêý©‚’Ë¡ ͹5©‚’ á+êÌÍëáÍëEáØ¢©š¹Í͹آš¹ÍëË¡ö&«‚’­\Ð רÍò³ÿþÿÿ‹ÙÉ„¡ÆÙò¿Ù‚Ì͹ö«>ÆÐIF ׯ ¡©‚«¹(ÆÐENDC ׯ ¡©É¡ Í ž¹©•«Ø©–ÍëDá ¥�Ç¥�žªP¹.ÍÍ­"ÌؚٚܚۚÍ¡ôÙšÚöšõá.í‘áÜš¹Ü𥂭¤øËíË�¡Í‘«ÛêþšÙš¹öëá‚ÃÆÐENDC ׯ „ÌÚ¡ðÍ­©Ê ”âÙŸË¡cÙüÌÙû©6•ÌÙ¢ÙùØ‚šÇ‘Ùº„¡Ù¢Ùù†šÚÄÚÇÿÉ„¡ÙÚ͹©„oš©„o¢Ù¨¥„oÍJí•«íÃ¥‚­¤øÄ¡Ì‘«ÜÝ‚šÍëFÃêýÄ¡ÛêþšÍë Ë¡L͹͹M͹vÛší‘á ØšÚö•šÜš¹`íá.¥‚­¤øá ØšÚö•šÜ𹥂ž©‚«Ù¢©‚‘šÙ«‚‘Û̹ö­jrŸÌëBáZêÿÌ«Fê«„Fê¢©š©‚”ÃÙŸË„¡Íêýáê¢"š¹+êý&á©‚”á ê¢$šê¢©š¹ê¢%š¹ Í­¤øáÜš¹Í¹)íá ¥‚­¤øÃ¥‚­¤øÄ¡Üš¹Í¹NÍ‘«¹ðëáòí•«í‘Ë¥‚­¤øÄ¡ÌÍëFÃêýÄ¡dÛêþšÍë áRÍëá«FŸÌ¹N«F©‚”á,͹>¥‚³©+¤þ&Ë¡ ͹,¥‚³©+¤¢%𥂳©+¤¢©𥂳©+¤ýÌ¥‚³©+¤¢ŸšëBáÍÍë3ˡ٩®­ÎÍ¡> ÍÜÝ‚š¹>íÝÄ¡¥‚­í¤øá ÜÝ‚ší•«¹O͹¥‚­¤øá ÜšÙšÚš¹ÜšÙš¹L͹MÍÝáí•«¹OÍ­„ ©­ Ê©¡Ç ÇÿÍ¡0öÅ¡©öŽÌ¹ÌÙÅ¡öÙ•ÌÌÙÌØÚÈ¡ Í Ø‚Ì¹ô­ RÍëDá<¥�ž¾ÌÌÙÌØÚÈ¡(ó¡ØŽÃØË„¡ Í ¥‚#¥�ð¨Í êþ« ñÍÍ­Ù©¡Ç Í êþ« Í¡©‚q•«‚qñÍ­,©¡Ç Í êþ« ÆÆÆÆÆ®¥‚h¥‚n¨¥‚n¥‚V¨¥ Ú»¥ 3¥�žØ¾Í ؂̹ö¹ ÍÍ­¡9 V©F“¡ ͹öÍ¡x©‚o¡?͹5©„Fý"Ë¡-©‚”á ©„F¢$𹩄Fý³0À‹¡ ©„F¢õš¹Í©„F¢Ù»ñÍÜ¡¥‚n¥‚h¨Û¡ØÍ¹ØÍ­ \©¡Ç Í êþ« Íêýᥠêþ»ñÍ͹PÍ­4©¡Ç Í êþ« Íêýá ¥ êöšöÌÆÍ ©„FÿŸË¡©„Fý%é„Fý"Ã�¡ ©„Fÿ©„Fþ®¹ Í«F­˜ '«‚’©‚“Ë¡=͹òÍë³@‹“¡ Íê¢'š¥Gžê¢©GšÍþ»¹QÍÍëË¡RÍÆÆÆÆÆ®¥‚h¥‚n¨¥‚n¥‚V¨¥ Ú»¥ Ù»ñÍÜ¡¥‚n¥‚h¨Û¡ØÍ¹ØÍ­ ~SÍ­ ©¡Ç Í Ý£ ÈÜÇË„¡ÝÿÝ¢!ÇÞøÛ‚•žž"Ë¡¹\Ý£ Ý£ šݢ Ý£ šÝ¢Ý£š¹Ý£ Ý£ Ãݣݣń¡Ý¢Ý£šÝ¢šÝ¢šÝ¢šÝûˡݢšÝ¢ ۚݢÜš¹¶ò áö«>©G©7¿«ÌÆÐ ר«:î Å¡¥Gž«ÍïešͩGîò¿ò áÍ Í¹(ò.áÌÆ×Ð ¨¹ØÉ¡ ÆØò¿Ø‚Ìî‚« š­ ò/ xŒì^‚ ` > äf � ꢩšÍ¹ê¢š¥ˆc¥ˆX¨ «ó¡Í ë(Ë¡Íë(ˡ͹îÍ ¥‚#¥�ð¨3‘«&«‚’Æ�VÍÆÆÐENDM ׯ ¡ôî È¡©Gî ¿¹ ¥Gž©G ¿&«‚’«:Í­޹ ü Í¡aÇÿÍ¡S©‚”á ©ö‚«Í¹AöÌÌëáÍ¡ÍëDáAÆ¥�žªPÍëÃÌÚ“¡ ëË¡>ÍÍëDá¥�žÆ¯ÌÚۯ̹.ÍÌ͹S«;Í¡E©‚o¡Í¹8í‘áöË̹+öÌ¥‚­í¤øÃÌí•«Ç€‘ÇÿÍ¡öÌÌØÌÙÛÈ¡ÆºÍ Ù‚Ì¹ô­ v ÌÌ©‚”á ©‚«Í¹6͡͡öÌØÍó¡Ù‚ÌÙŽÃë5 êþ« ÍêýáR¥ êþ»Íëá=Í¡3õ%á*©‚ö•†«@Í¡¥‚n¥‚V¨¥ ö»ñ͹T͹R͹QÍ­v©¡Ç Í êþ« Æ"Ë¡8ÆÌ�mÆ�mצ#9:ÍÆ�m¦11×ÍÆ�m¦.ERRORS× ÍÆ�mÍž"Ë¡9ÆÌ�mÆ�mצ#10:ÍÆ�mצ11ÍÆ�mצ.ERRORS ÍÆ�mÍž"ËÆÆÆ Æ ®¥  Ý»¥ Ü»¥‚h¥‚n¨¥‚n¥‚V¨ëË¡RÍÆÆÆÆÆ®¥ Ú»¥ Ù»¥‚b¥‚n¨¥‚n¥‚V¨ñÍá¡¥‚n¥‚h¨à¡Û͹ÛÍß¡¥‚n¥‚b¨¡9ÆÌ�mÆ�m¦#11:×ÍÆ�m¦11×ÍÆ�m¦.ERRORS× ÍÆ�mÍž"Ë¡9ÆÌ�mÆ�mצ#12:ÍÆ�mצ11ÍÆ�mצ.ERRORS ÍÆ�mÍÆ�Cž žÞ¡á¡Ø•ÌØÍ¹ØÍ­°©¡Ç Í êþ« ÆÆÆÆÆ®ëË¡RÍÍêýá ¥ êþ»¹QÍÍ¥‚h¥‚n¨¥‚n¥‚V¨¥ Ú»¥ Ù»ñÍ"Ë¡ØÍ¹wÆØÏžÆÍžó¡0¥IÍž¥I¥‚#ffÍž¥IÍž¥IÙÍž¥IÍž© ‚« ©Dó„“¡/¶Íž¶¥‚#ffÍž¶Íž¶ÙÍž¶ÍÜ¡¥‚n¥‚h¨Û¡ØÍ¹ØÍ­ ~©¡Ç Í êþ« ͡ǀ‘ÇÿÍ¡¥ ö»ñÍ­¹:êý¹(ι@ι<ι8ι4ι0ι,žÆÍ­rä ¶šÙý¡îÙÌÝ¢ÌÌÇÌØÉÝ£“�ÞúÃÝüÄ�¡¹ìÝüÇÉ¡3ÇÝü†ÌØÚ•Ä¡$ØÚ•ÌÜÚÝü�‚ÌÜÇšۂÌÜǕ̹ö¹ôι(ι$ι ι¬ñ ¹0.,*(&$" ­P‘«ó¡ Í « ©D¡ÍÍ­ ©@¡2ÌÌÙ©ÈØ„¡¥‚•Ù¤ø¾ÌØ¡Ù‚ÌØÅ¡"Ø•ÌÜÝü‚ÌÜÇšۂÌÜǕ̹ò¹ðÞùÞø•ÌÛÚÅÛÚÃÜÞ£ Ä„�¡ÚÌÞ£ ÌÛÝ£ Ë¡RÝ£ ¡&Ý¢ šÝ¢šÝÿÝ¢!ÇÞøÝ£ ‚•žž"Ë¡¹ìÛÝ£ ÈÜǹöÙ•«ó“¡Í « Í­2 DÆÇ@‘¤#žó¡5¥IצCurrent memory available:Íž¥Iž(Í ž¥IÍžÍÍëBÃëCÃ�¡Î©‚”Ë„¡ÝÿÝ¢!ÇÞøÛ‚•žž"Ë¡¹\Ý£ Ý£ šݢ Ý£ šÝ¢Ý£š¹Ý£ Ý£ Ãݣݣń¡Ý¢Ý£šÝ¢šÝ¢šÝ¢šÝûˡݢšÝ¢ ۚݢÜš¹¶ š­ Ãë³æø‹“„ëÈ�ë@Ä�©$Ãë(É„�¡Íë(ˡ͹öÍ ¹îë¹ôιòιò«7͹ò«7͹ò«8͹ò«8͹ò©$Å¡@͹«?͹ò«‚”͹ò«ò/ x€žó¡0¥IÍž¥I¥‚#ffÍž¥IÍž¥IÙÍž¥IÍž© ‚« ©Dó„“¡/¶Íž¶¥‚#ffÍž¶Íž¶ÙÍž¶Í‚”͹òιòιòÎ ¹òÎ ¹òÎ ¹òÎ ¹òÎ ¹òιòó¡Í ͹òιòž(©É¡ž(« ž¹qιmιiιe©É¡Í¹©•«Í¹NιJ¬¡?¹Bkƒ|YO^ykig7=ÍÇÁ»µ$‡Q�Y[]_aíó‡~|~€í‘Ë¡‘«Íë(Ë¡Íë(ˡ͹ðÍ «F¡ì­y2~GÒØ"œ¢žåžÜ`’¤(bÄö^ì° † ä ` b \ ´ ˆ  ê< צCurrent memory available:Íž¥Iž(Í ž¥IÍžÍÍëBÃëCÃ�¡Î©‚”Ãë³æø‹“„ëÈ�ë@Ä�©$Ãë(É„�¡Íë(ˡ͹öÍ ¹îë¹ôιòιò«7͹ò«7͹ò«8͹ò«8͹ò©$Å¡@͹«?͹ò«‚”͹ò«‚”͹òιòιòÎ ¹òÎ ¹òÎ ¹òÎ ¹òÎ ¹òιòó¡Í ͹òιòž(©É¡ž(« ž¹qιmιiιe©É¡Í¹©•«Í¹NιJ¬¡?¹Bkƒ|YÆÆ�.ÍÆÌ�mÆ�mצ#4:ÍÆ�m¦11×ÍÆ�m¦.ERRORS× ÍÆ�mÍž"Ë¡8ÆÌ�mÆ�mצ#5:ÍÆ�m¦11×ÍÆ�m¦.ERRORS× ÍÆ�mÍž6 O^ *) (* *) (* THIS PROGRAMÉžªž PRODUCES A CROSS-REFERENCE LISTING FOR ANY *) (* PASCAL PROGRAM. OCCURENCES ONLY ARE LISTED. NO DISTINCTION IS *) (* MADE BETWEEN DEFINITIONS AND REFERENCES. *) %THE FILE BASICIO.CODE MUST BE PLACED IN THE SYSTEM LIBRARY USING THE  PROGRAM LIBRARY IN ORDER TO RUN THE BASIC COMPILER. THE FILE SC.GEN.CODE MUST  BE PLACED IN THE SYSTEM LIBRARY IN ORDER TO RUN PATCH. FOR MORE DETAILS ON  THE USAGE OF THE LIBRARY PROGRAM OR THE BASIC COMPILER READ THE REFERENCE  MANUAL, CATALOG NUMBER U380. (*$LC.LST.TEXT*)  (*====================================================================*) (*  *) (* PROGRAM TITLE: PASCAL CROSS-REFERENCING PROGRAM *) (*  *) (* PROGRAM FILE: XREF.TEXT *) (* *) (* LAST UPDATE: 29-SEP-77 10:25  *) (* OCT-79 R.L.P. *) (* PROGRAM SUMMARY: 7 ; ITEMPTR = ^ITEM; WORD = RECORD KEY: ALFA; FIRST, LAST: ITEMPTR;  '; KEY[10] := 'END '; KEY[11] := 'FOR '; KEY[12] := 'FUNCTION '; KEY[13] := 'IF '; KEY[1 FOL: INDEX END ; CHARSET = SET OF CHAR; NUMREFS = 1..REFSPERITEM; REFTYPE = (COUNT,4] := 'IN '; KEY[15] := 'MOD '; KEY[16] := 'NIL '; KEY[17] := 'NOT '; KEY[18] := 'OF  PTR); ITEM = RECORD REF : ARRAY[NUMREFS] OF 0..MAXLINES; CASE REFTYPE OF  '; KEY[19] := 'OR '; KEY[20] := 'PROCEDURE '; KEY[21] := 'PROGRAM '; KEY[22] := 'RECORD '; KEY[23] : COUNT: (REFNUM: NUMREFS); PTR: (NEXT: ITEMPTR) END ; VAR TOP: INDEX; (*TOP OF CHAIN = 'REPEAT '; KEY[24] := 'SET '; KEY[25] := 'THEN '; KEY[26] := 'TO '; LINKING ALL ENTRIES IN T*) N: INTEGER; (*CURRENT LINE NUMBER*) CH: CHAR; (*CURRENT CHAR SCANNED *)  KEY[27] := 'TYPE '; KEY[28] := 'UNTIL '; KEY[29] := 'VAR '; KEY[30] := 'WHILE '; KEY[31] := 'W C1, C2: INTEGER; (*FREQUENCY COUNTERS*) T: ARRAY [INDEX] OF WORD; (*HASH TABLE*) KEY: ARRAY [1..NK] OF ALFAITH '; NUMERICS := [ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' ]; ALPHAS := [ 'A'(* *) (* ; (* RESERVED KEYWORD TABLE *) ERROR, (* ERROR FLAG *) LISTING: BOOLEAN;  *) (*====================================================================*) PROGRAM XREF; (*CROSS REFERENCE G(* LISTING OPTION *) I: INTEGER; (* YOU-KNOW-WHAT *) INFILE, PRINTER: TEXT; ALPHAS, ENERATOR FOR PASCAL PROGRAMS. N.WIRTH, 7.5.74*) (*'QUADRATIC QUOTIENT' HASH METHOD*) (* ORIGINAL CODE ASSUMED 48 BIT INTEGER OALPHANUMERICS, NUMERICS, SPECIALCHARS: CHARSET; LINECOUNT: INTEGER; EMPTYFILE: BOOLEAN; $ F CDC 6000 MACHINES *)  (* MODIFIED BY R. L. PALASEK SEPT/OCT 1979 TO RUN ON U.C.S.D PASCAL *)  (* ON AN LSI/11 PROCESSOR . TH$UCSDLST: BOOLEAN; (*THE FILE TO BE CROSS REFERENCED IS A LISTING BGENERATED BY THE UCSD COMPILER *) $ PROCEDUREE HASH METHOD WAS CHANGED TO  (* PREVENT INTEGER OVERFLOW *)   CONST P = 749; (*SIZE OF HASHTABLE*) N INITIALIZE; BEGIN (* INITIALIZE *) ERROR := FALSE; FOR I := 0 TO P DO T[I].KEY := ' '; C1 := 0; K = 31; (*NO. OF KEYWORDS*) MAXLINES = 10000; ALFALEN = 10; REFSPERLINE = 15; REFSPERIT C2 := 0; KEY[ 1] := 'AND '; KEY[ 2] := 'ARRAY '; KEY[ 3] := 'BEGIN '; KEY[ 4] := 'CASE '; KEM = 5; PAGESIZE = 55; TYPE ALFA = PACKED ARRAY[1..ALFALEN] OF CHAR; TEXT = FILE OF CHAR; INDEX = 0..PEY[ 5] := 'CONST '; KEY[ 6] := 'DIV '; KEY[ 7] := 'DOWNTO '; KEY[ 8] := 'DO '; KEY[ 9] := 'ELSE 8 (', '/', '{' ]; N := 0; TOP := P; CH := ' ' END; (* INITIALIZE *) PROCEDURE OPENFILES; VAR NUMBLOCKS: INTE (* WRITEOLN *) PROCEDURE NEWLINE;  VAR I: INTEGER; DUMMYCH: CHAR;  BEGIN (* NEWLINE *) (*COMPLETELY REDONE OCT 79. R.GER; OPENOK: BOOLEAN; OPENERRNUM : INTEGER; LISTOPTION: CHAR; FILENAME: STRING; BEGIN (* OPEN *) L.P. *) IF LISTING THEN BEGIN # &WRITEOLN; # IF UCSDLST THEN BEGIN # READ(INFILE,N); *WRITE(PRINTER,N:6); *F REPEAT WRITELN; WRITE( 'INPUT FILE NAME - ' ); READLN( FILENAME ); IF LENGTH(FILENAME) >0 OR I := 7 TO 23 DO BEGIN -READ(INFILE,DUMMYCH); -WRITE(PRINTER ,DUMMYCH) END END &ELSE BEGIN )N := N + 1; )WRITE(PRINTER , THEN (*$I- DISABLE I/O CHECKS *) OPENOLD( INFILE, FILENAME ); (*$I+ ENABLE AGAIN *) N:6, ' ') END END $ #ELSE &IF UCSDLST THEN BEGIN )READ(INFILE,N); )FOR I := 7 TO 23 DO READ(INFILE,DUMMYCH) END &ELSE )N OPENERRNUM := IORESULT; OPENOK := ( OPENERRNUM = 0 ); IF NOT OPENOK THEN WRITELN( '*** I := N + 1; ) # IF N MOD PAGESIZE = 0 THEN BEGIN WRITELN; )WRITELN( 'Running...' ); NPUT OPEN ERROR #', OPENERRNUM ); UNTIL OPENOK; OPENNEW( PRINTER, 'XREF.LISTING' ); IF LENGTH(FILENAME) > 0 TH)WRITE('<',N,'>') END; # #WRITE('.') # END; (* NEWLINE *) PROCEDURE GETNEXTCHAR; BEGIN (* GETNEXTCHAR *) IF EOLN(IEN BEGIN ,WRITELN; (* RLP SEPT 79 *) ,WRITELN('WAS ', FILENAME, ' GENERATED AS A'); ,WRITELN('NFILE) THEN IF N < MAXLINES THEN NEWLINE ELSE BEGIN LISTING FILE BY THE '); ,WRITE('U.C.S.D. PASCAL COMPILER? (Y/N)? ' ); , ,READLN(LISTOPTION); ,UCSDLST := (LISTOPTION = 'Y'); PAGE; WRITELN( PRINTER, ' **** TOO MANY LINES' ); ERROR := TRUE EN , ,LISTING := FALSE; , ,{IF NOT UCSDLST THEN BEGIN}  /WRITELN; /WRITE( 'LISTING OF INPUT FILE (Y/N)?' ); /READLN( LISTD; #READ( INFILE, CH );(*CODE MOTION HERE. RLP OCT 79 *) # #IF LISTING &THEN )IF CH = CHR(12) ,THEN /BEGIN 2P, 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', OPTION ); # /LISTING := NOT(LISTOPTION = 'N'){ END}; # ,EMPTYFILE := FALSE END ELSE  'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h' EMPTYFILE := TRUE END; (* OPEN *) PROCEDURE PAGE; BEGIN (* PAGE *) WRITELN( PRINTER ); WRITELN( PRINTER, CH, 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'R(12) ); WRITE( PRINTER, ' ' ); LINECOUNT := 0 END; (* PAGE *) PROCEDURE WRITEOLN; BEGIN (* WRITEOLN *) WRITELN(y', 'z', '#', '$', '%', '&', '_' ]; ALPHANUMERICS := ALPHAS + NUMERICS; SPECIALCHARS := [ '''', ' PRINTER ); WRITE( PRINTER, ' ' ); LINECOUNT := LINECOUNT + 1; IF LINECOUNT = PAGESIZE THEN PAGE END;9 EAN; VAR I,J,K: INTEGER; BEGIN I := 1; J := NK; REPEAT K := (I+J) DIV 2; (*BINARY SEARCH*) I; X^.REFNUM := 1; X^.REF[1] := N; T[H].KEY := ID; F KEY[K] <= X THEN I := K+1; IF KEY[K] >= X THEN J := K-1; UNTIL I > J;  T[H].FIRST := X; T[H].LAST := X; T[H].FOL := TOP; T NOKEY := KEY[K] <> X END (*NOKEY*) ; FUNCTION ORDALFA(ID: ALFA): INTEGER; VAR I, J: INTEGER; BEGIN J := 0; OP := H END ELSE BEGIN (*COLLISION*) H := H+D;  FOR I := 1 TO ALFALEN DO J := (J*10 + ORD(ID[I]) ) 8MOD (MAXINT DIV 11);(*RLP SEPT 79*) ORDALFA := ABS(J) END; (* D := D+2; IF H >= P THEN H := H - P;  ORDALFA *) PROCEDURE SEARCH( ID: ALFA ); (*MODULO P HASH SEARCH*) (*GLOBAL: T, TOP*) VAR H,D : INTEGER;  IF D = P THEN BEGIN PAGE; X : ITEMPTR; F : BOOLEAN; BEGIN H := ORDALFA(ID) MOD P; F := FALSE; D := 1; C2 := C2 + 1; REPEAT  WRITELN( PRINTER, ' **** TABLE FULL' ); ERROR := TRUE  IF T[H].KEY = ID THEN BEGIN (*FOUND*) F := TRUE; IF T[H].LAST^.REF END ; END UNTIL F OR ERROR END (*SEARCH*) ; PROCEDURE PRINTWORD(W: WORD); NUM = REFSPERITEM THEN BEGIN NEW(X);  VAR L: INTEGER; X: ITEMPTR; FUNCTION NEXTREF : INTEGER; VAR THISREF: NUMREFS; BEGIN THISREF := (L-1) MOD REFSPX^.REFNUM := 1; X^.REF[1] := N; T[H].LAST^.NEXT:= X; ERITEM + 1; NEXTREF := X^.REF[ THISREF ]; IF THISREF = X^.REFNUM THEN X := NIL ELSE IF THISR T[H].LAST := X; END ELSE WITH T[H].LAST^ DO EF = REFSPERITEM THEN X := X^.NEXT END; (* NEXTREF *) BEGIN WRITE(PRINTER,' '); WRITE( PRINT BEGIN REFNUM := REFNUM + 1; REF[REFNUM] := N ER, W.KEY ); X := W.FIRST; L := 0; REPEAT IF L = REFSPERLINE THEN BEGIN L  END END ELSE IF T[H].KEY = ' ' THEN := 0; WRITEOLN; WRITE( PRINTER, ' ' ) END ; L := L+1; WRITE( PAGE; 2WRITE( PRINTER, N:6, ' ' ) /END ,ELSE /WRITE( PRINTER, CH )  END; (* GETNEXTCHAR *) FUNCTION NOKEY(X: ALFA): BOOL BEGIN (*NEW ENTRY*) F := TRUE; C1 := C1 + 1; NEW(X): TNUMBER *) PROCEDURE GETCHARLIT; BEGIN REPEAT GETNEXTCHAR UNTIL (CH = '''') OR ERROR OR EOF(INFILE); GETN 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y'EXTCHAR END; (* GETCHARLIT *) PROCEDURE GETPARENSCOMMENT; BEGIN (* GETPARENSCOMMENT *) GETNEXTCHAR; IF CH = '*' , 'Z': GETIDENTIFIER; 'a', 'b', 'c', 'd', 'e', 'f', RINTER, NEXTREF:6 ) UNTIL X = NIL; WRITEOLN; WRITEOLN END (*PRINTWORD*) ; PROCEDURE PRINTTABLE; VAR I,J,M: I THEN BEGIN GETNEXTCHAR; WHILE (CH <> ')') AND NOT(ERROR OR EOF(INFILE)) DO NDEX; BEGIN I := TOP; WHILE I <> P DO BEGIN (*FIND MINIMAL WORD*) M := I; J := T[I].FOL; BEGIN WHILE (CH <> '*') AND NOT(ERROR OR EOF(INFILE)) DO GETNEXTCHAR;  WHILE J <> P DO BEGIN IF T[J].KEY < T[M].KEY THEN M : GETNEXTCHAR END; GETNEXTCHAR END END; (* GETPARENSCOMMENT *) PROCEDURE GETSLASHCOMME= J; J := T[J].FOL END ; PRINTWORD(T[M]); IF M <> I THEN NT; BEGIN (* GETSLASHCOMMENT *) GETNEXTCHAR; IF CH = '*' THEN BEGIN GETNEXTCHAR;  BEGIN T[M].KEY := T[I].KEY; T[M].FIRST := T[I].FIRST; T[M].LAST := T[I] WHILE (CH <> '/') AND NOT(ERROR OR EOF(INFILE)) DO BEGIN .LAST END ; I := T[I].FOL END END (*PRINTTABLE*) ; PROCEDURE GETIDENTIFIER; VAR I: INTE WHILE (CH <> '*') AND NOT(ERROR OR EOF(INFILE)) DO GETNEXTCHAR; GETNEXGER; ID: ALFA; BEGIN (* GETIDENTIFIER *) I := 0; ID := ' '; REPEAT IF I < ALFALEN THETCHAR END; GETNEXTCHAR END END; (* GETSLASHCOMMENT *) PROCEDURE GETCURLYCOMMENT; BEGN BEGIN I := I+1; IF ('a' <= CH) AND (CH <= 'z') THEN IN (* GETCURLYCOMMENT *) GETNEXTCHAR; WHILE (CH <> '}') AND NOT(ERROR OR EOF(INFILE)) DO GETNEXTCHAR; GETNEXTC ID[I] := CHR( ORD(CH) - ORD('a') + ORD('A') ) ELSE ID[I] := CH END;HAR END; (* GETCURLYCOMMENT *) BEGIN (* CROSSREF *) INITIALIZE; OPENFILES; IF LISTING THEN PAGE;  GETNEXTCHAR UNTIL NOT(CH IN ALPHANUMERICS); IF NOKEY(ID) THEN SEARCH(ID)  NEWLINE; WHILE NOT(EOF(INFILE) OR EMPTYFILE OR ERROR) DO BEGIN IF CH IN (ALPHANUMERICS + SPECIALCHARS) END; (* GETIDENTIFIER *) PROCEDURE GETNUMBER; BEGIN REPEAT GETNEXTCHAR UNTIL NOT(CH IN NUMERICS); END; (* GE THEN CASE CH OF 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',; š XREF ͞ƾšô¶Íž¶¦WAS ×Íž¶ÆÍž¶צ GENERATED AS AÍž¶Íž¶¦LISTING FILE BY THE ×Íž¶Íž¶¦ !U.C.S.D. PASCAL COMPILER? (Y/N)? ×Íž¶ÆÍž¶ÍžÛYÃ«š²«˜¶Íž¶צLISTING OF INPUT FILE (Y/N)?Íž¶ÆÍž¶ÍžÛNÓ«˜«š±¹«š±­¾Z Æ¥˜Íž¥˜ Íž¥˜Íž¥˜ Íž«š°­0¥˜Íž¥˜ Íž©š°‚«š°©š°7áÏ­«,©˜¡^Ï©š²¡<¥™C¥Í ž¥˜ëÍ žÌÌØÚÈ¡¥™CÆÍž¥˜Ù͞؂̹ö¹ë‚«¥˜ëÍ ž¥˜ Íž¹2©š²¡(¥™C¥Í žÌ«˜«˜ÇíÌ©˜ØÈ¡%¥©˜Ç툤Рר©˜‚«˜¹ö««¥—xˆ•¤Ð AND ר¥—xˆ•¤Ð ARRAY ר¥—xˆ•¤Ð ÌØÚÈ¡¥™CÆÍžØ‚̹ô¹ë‚«ë7ŽÃ¡D¶Íž¶¦ Running...×Íž¶Íž¶<Íž¶ëÍ ž¶>Íž¶.Íž­tÈ 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u',BEGIN ר¥—xˆ•¤Ð CASE ר¥—xˆ•¤Ð CONST ר¥—xˆ•¤Ð DIV ר¥—xˆ•¤Ð DOWNTO ר¥—xˆ•¤ 'v', 'w', 'x', 'y', 'z': GETIDENTIFIER; '#', '$', '%', Ð DO ר¥—x ˆ•¤Ð ELSE ר¥—x ˆ•¤Ð END ר¥—x ˆ•¤Ð FOR ר¥—x ˆ•¤Ð FUNCTION ר¥—x ˆ• '&', '_': GETIDENTIFIER; '0', '1', '2', '3', '4', '5', '6', '7', ¤Ð IF ר¥—xˆ•¤Ð IN ר¥—xˆ•¤Ð MOD ר¥—xˆ•¤Ð NIL ר¥—xˆ•¤Ð NOT ר¥—xˆ '8', '9': GETNUMBER; '''': GETCHARLIT; '(': GETPARENSCOMMEN•¤Ð OF ר¥—xˆ•¤Ð OR ר¥—xˆ•¤Ð PROCEDURE ר¥—xˆ•¤Ð PROGRAM ר¥—xˆ•¤Ð RECORD ר¥—xT; '/': GETSLASHCOMMENT; '{': GETCURLYCOMMENT END (* CASE *) ˆ•¤Ð REPEAT ר¥—xˆ•¤Ð SET ר¥—xˆ•¤Ð THEN ר¥—xˆ•¤Ð TO ר¥—xˆ•¤Ð TYPE ר¥—xELSE GETNEXTCHAR END; (* WHILE *) PAGE; PRINTTABLE; WRITEOLN; WRITE( PRINTER, C1:6, ' IDEˆ•¤Ð UNTIL ר¥—xˆ•¤Ð VAR ר¥—xˆ•¤Ð WHILE ר¥—xˆ•¤Ð WITH ר¥š€³ÿ ½¥š ³ÿþÿNTIFIERS' ); WRITELN( PRINTER, C2:6, ' OCCURRENCES' ); PAGE; CLOSE( INFILE ); CLOSE( PRINTER, LOCK ) END.  ÿ‡þÿx ½¥š�¥š ¼¥š€¼œ ½¥šp³€� ½«ÇíÇ툫 «­ Å Ú¶Íž¶¦INPUT FILE NAME - ×Íž¶ÆPÍž¶ÍžÆ¾Å¡ ¥™CÆÍž"ÌÚÃÌÙ“¡4¶¦*** INPUT OPEN ERROR #×Íž¶ÚÍ ž¶ÍžÙ¡ö¥˜צ XREF.LISTING< ¡*Ï¥˜¦ **** TABLE FULL×Íž¥˜Íž«˜ᩘ�¡ô­Nf  Œ ¶ •Ž‚ˆÌ¶ Úˆ•¤øÌÚ¶ ý៸ ¹ Úá¶ ý¸ ­O^> Æب¥˜ Íž¥˜Æ ÍžßÌ Ì ááÌ Ï¥˜צ Ížá‚Ì ¥˜Î Í žâŸÃ¡öÏÏ­ß? h êÇíˆÌÚÇíË¡aŸòÚÇíˆÌ¥ÚÇ툤ÿÇíˆÌÙÇíË¡5¥ÙÇ툤¥ØÇ툤µ ¡ÙÇíˆÌ¥ÙÇ툤ÿÇíˆÌ¹ö¥ØÇíˆ¤Ï ØÚË¡F¥ØÇ툤¥ÚÇ툤¨¥ØÇ툤¢¥ÚÇ툤þš¥ØÇ툤¢¥ÚÇ툤ýš¥ÚÇ툤ÿÇíˆÌ¹ô­Ì­ Þ ÌÆ×Ð ¨Ø É¡(Ø‚ÌaìÈìzÈ„¡ÆØ ˆ•ìa•A‚¿¹ ÆØ ˆ•ì¿Ï쥚�¼‹“¡öÆÏ¡ÆÏ ­H dÏ쥚€¼‹“¡ö­  Ïì'é˜�¥™CÍ �¡öÏ­ Ïì*á2Ïì)Ë©˜¥™CÍ �“„¡ì*Ë©˜¥™CÍ �“„¡Ï¹öϹôÏ­ 3" FÏì*á2Ïì/Ë©˜¥™CÍ �“„¡ì*Ë©˜¥™CÍ �“„¡Ï¹öϹôÏ­ 3" FÏì}Ë©˜¥™CÍ �“„¡Ï¹öÏ­* &ƘÆ™BÇ‘ÍÆ™CÆšoÇ‘ÍÕ‚òÎΩ˜¡ÎÎ¥™CÍ ©š±�©˜�“¡ð쥚�¼¥šp¼œ‹¡ôì¹ Î¹öιöιöιöιöιöιöιö¬#{¹ö!#%'579;=?ACEG02468:<cegikmoqs ö¥™CÍ ¡9ëÇ'ɡϹ.Ï¥˜צ **** TOO MANY LINESÍž¥˜Íž«˜¥™C¥Íž©˜¡'ì áÏ¥˜ëÍ ž¥˜ Íž¹ ¥˜ìÍž­uwy{}�ƒ…‡‰‹��‘“•rtvx—|Ÿ¡£¥§©«­¯±³µ·¹»½¿ÁÃÅÇÉËÍÏÑ»¹Î¹òÎΠΥ˜îÍ ž¥˜¦ ¡‚ÆÚ¨Ì Ì âá‚†Ì ¥—xàˆ•¤Æ´ ¡à‚Ì ¥—xàˆ•¤Æ° ¡à•Ì âáÅ¡ö¥—xàˆ•¤Æ· Ì­¥O bÆÚ¨Ì Ì Ì IDENTIFIERS×Íž¥˜íÍ ž¥˜¦ OCCURRENCES×Íž¥˜ÍžÎ¥™CÍž¥˜ÍžÆ˜ÍÆ™CÍÁv~~‚`5´ºæ2~¤Â,áâÈ¡à �Æá ˆ•¾‚Çÿ †ŽÌ á‚Ì ¹öà€Ì­( > ÆبÆÏ ÇíŽÌÌ Ìí‚«¥ßÇ툤Ư ¡zÌ ¥ßÇ툤ýýá<Æ žà¢ˆ|ÂT˜ˆ„¶ì¸ &CÍ �“„¡Ï¹öÏ­* &ƘÆ™BÇ‘ÍÆ™CÆšoÇ‘ÍÕ‚òÎΩ˜¡ÎÎ¥™CÍ ©š±�©˜�“¡ð쥚�¼¥ššàˆ•¤ëÇ'ˆš¥ßÇ툤ý¢àš¥ßÇ툤¢àš¹)¥ßÇ툤ýÌ â¢âý‚ˆšââýˆ•¤ëÇ'ˆš¹ö¥ßÇ툤×Ð ¯ ¡lÌ î‚«Æp¼œ‹¡ôì¹ Î¹öιöιöιöιöιöιöιö¬#{¹ö!#%'579;=?ACEG02468:<cegikmoqs žà¢ˆšàˆ•¤ëÇ'ˆš¥ßÇ툤ƨ¥ßÇ툤¢àš¥ßÇ툤¢àš¥ßÇ툤¢êÇ툚ßÇ툫¹IßÞ‚ÌÞ‚ÌßÇíÄ¡ßÇí•ÌÞÇíÃuwy{}�ƒ…‡‰‹��‘“•rtvx—|Ÿ¡£¥§©«­¯±³µ·¹»½¿ÁÃÅÇÉËÍÏÑ»¹Î¹òÎΠΥ˜îÍ ž¥˜¦ =  IF A LINE STARTS WITH &A '#' AND IS NOT A PRINTER CONTROL LINE THE PROGRAM &WILL PRINT IT DIRECTLY & &THE COMMANDS SO FAR: STRING ; 'INFILE, PRINTER : TEXT; 'LINENUM, PAGENUM, PAGEBOTTOM, PAGETOP, PAGESIZE, SPACING : INTEGER; & *#PG - SKIP TO THE TOP OF THE NEXT PAGE *#SK - SKIP NUM LINES *#PN - PRINT PAGE NUMBERS AT TOP OF PAGE *#NN -'TEST, PRTPGNUM : BOOLEAN; ' ' #PROCEDURE ATTOPPAGE; %VAR I : INTEGER; %BEGIN 'IF PRTPGNUM THEN WRITE(PRINTER,'':60,'PAG DON'T PRINT PAGE NUMBERS *#PT - PAGETOP - WHERE ON THE PAGE FOR FIRST LINE OF TEXT *#PB - PAGEBOTTOM - LAST E ',PAGENUM:5); 'FOR I := LINENUM TO PAGETOP-1 DO WRITELN(PRINTER); 'LINENUM := PAGETOP; %END; # # #PROCEDURE ENDPAGE; %VLINE ON PAGE FOR TEXT *#PS - TOTAL NUMBER OF LINES ON A PAGE *#SN - SET PAGE NUMBER TO *#LS - LAR I : INTEGER; %BEGIN 'FOR I := LINENUM TO PAGESIZE DO WRITELN(PRINTER); 'LINENUM := 1; 'PAGENUM := PAGENUM+1; %END; % %INE SPACING, 1=> SINGLE SPACING, 2=> DOUBLE SPACING F3=> TRIPLE SPACING ETC. * * *DEFAULTS , ,PAGESIZE = 66 ,PAGETOP = 6 #PROCEDURE LIST; %VAR I : INTEGER; %BEGIN 'IF LINENUM > PAGEBOTTOM THEN ENDPAGE; 'IF LINENUM < PAGETOP THEN ATTOPPAGE; ' ,PAGEBOTTON = 60 ,DON'T PRINT PAGE NUMBER ,LINE SPACING = 1 ,PAGE NUMBER STARTS AT 1 WRITELN(PRINTER,LINE); 'FOR I := 1 TO SPACING DO WRITELN(PRINTER); 'LINENUM := LINENUM +1+SPACING %END; % % #FUNCTION NUMB,ASSUMES PRINTER SITTING ON LINE 1 OF PAGE WHEN PROGRAM IS RUN , *COMMUNICATION WITH USER ,THE PROGRAM ASKS THE USER FOR THEER ( VAR STR : RSTRING ) : INTEGER; %VAR VALUE : INTEGER; %BEGIN 'VALUE := 0; 'STR := CONCAT(STR,' 0 '); 'WHILE STR[1] = '  FILES TO PRINT. ,THE PROMPT IS 'COM?'. THERE ARE TWO LEGAL THINGS ,TO ANSWER WITH. THE FIRST IS A COMPLETE FILE NAME, ,THE ' DO DELETE(STR,1,1); 'WHILE STR[1] IN [ '0','1','2','3','4','5','6','7','8','9'] DO )BEGIN +VALUE := VALUE*10 + ORD(STR[1])-OTHER IS A COMMAND STARTING WITH '#'. BEWARE! ,IF THE COMMAND STARTING WITH A '#' IS NOT A LEGAL ,COMMAND THE THE PROGRAM IT ORD('0'); +DELETE(STR,1,1) )END; % NUMBER := VALUE; %END; % % #PROCEDURE SKIPLINES; %VAR NUM : INTEGER; %BEGIN WILL BE PRINTED ON THE ,PRINTER. THIS WAS DONE SO THAT AT THE BEGINNING ,OF THE RUN THE USER CAN SPECIFY THE ACTUAL PAPER ,S'IF LINENUM < PAGETOP THEN ATTOPPAGE; 'DELETE(LINE,1,3); 'NUM := NUMBER(LINE); 'WHILE (LINENUM <= PAGEBOTTOM) AND (NUM > 0) IZE HE IS USING ( IF IT IS DIFFERENT FROM THE ,DEFAULT ) OR ANY OTHER THING THAT HE MIGHT WANT TO ,DO. THE COMMAND TO CHANGE DO )BEGIN +WRITELN(PRINTER); +LINENUM := LINENUM+1; +NUM := NUM-1 )END; %END; % % #PROCEDURE CONTROL; %VAR ITEM :RSTRI (*$D-,R-,I-*)   PROGRAM PRINT ;  "(* THIS PROGRAM IS A SIMPLE PRINTING PROGRAM THAT &PRINTS FILES ON THE PRINTER AND DTHE PAGE NUMBER WAS ,PUT IN SO THAT THE USER COULD PRINT MORE THAN ONE ,FILE IN A RUN AND HAVE BOTH SETS OF OUTPUT START ,AT OES SIMPLE &PRINTER CONTROL FOR THE USER. & &THE COMMANDS TO THE PROGRAM ARE ON SEPERATE LINES &AND MUST BEGIN WITH '#'. PAGE 1. , , * * * *) # #TYPE RSTRING = STRING[120]; # # #VAR LINE : R> ¥¾Ë¡¥¾#áιιιö¥�mÍ«‚¡¹«‚¡©‚¡¡ðÎÆ@ÍÆ�mÍÁåîd¼JPJ–üTŒ¯¡¥Í¥Ï«‚œ¹xÆצNG; %BEGIN 'ITEM := COPY(LINE,2,2); 'IF ITEM = 'PG' THEN ENDPAGE 'ELSE IF ITEM = 'SK' THEN SKIPLINES 'ELSE IF ITEM = 'PN' THEN PRTPGNUM := TRUE 'ELSE IF ITEM = 'NN' THEN PRTPGNUM := FALSE 'ELSE IF ITEM = 'PT' THEN -BEGIN /DELETE(LINE,1,3); /PAGETæ PRINT OP := NUMBER(LINE) -END 'ELSE IF ITEM = 'PB' THEN -BEGIN /DELETE(LINE,1,3); /PAGEBOTTOM := NUMBER(LINE); -END 'ELSE IF I TEM = 'PS' THEN -BEGIN /DELETE(LINE,1,3); /PAGESIZE := NUMBER(LINE) -END 'ELSE IF ITEM = 'SN' THEN -BEGIN /DELETE(LINE,1,3); /PAGENUM := NUMBER(LINE) -END 'ELSE IF ITEM = 'LS' THEN -BEGIN /DELETE(LINE,1,3); /SPACING := NUMBER(LINE) - 1 -END 'ELSE LIST; %END; % # # # #BEGIN %PAGENUM := 1; %LINENUM := 1; %PAGEBOTTOM := 60; %PAGETOP := 6; %PAGESIZE := 66; ©‚ ¡ ¥@¦×<Í¥@צPAGE Í¥@©‚žÍ ©‚ŸÌ©‚œ•ÌØÙÈ¡ ¥@ÍØ‚̹ö©‚œ«‚Ÿ­R©‚ŸÌ©‚›ÌØÙÈ¡ ¥@ÍØ‚̹ö«‚Ÿ©‚ž‚«‚ž­%PRTPGNUM := FALSE; %TEST := FALSE; %SPACING := 0; %REWRITE(PRINTER,'PRINTER:'); % %REPEAT 'WRITE(OUTPUT,'COM? '); 'READ  2©‚Ÿ©‚�šϩ‚Ÿ©‚œÉ¡Ï¥@¥Í¥@ÍÌ©‚šÌØÙÈ¡ ¥@ÍØ‚̹ö©‚Ÿ‚©‚š‚«‚Ÿ­RÌÚÌÆÚxÍÆצ 0 {ÍÆªxLN(INPUT,LINE); 'IF LINE[1] = '#' THEN CONTROL 'ELSE (IF LINE <> 'END.' THEN *BEGIN ,LINE := CONCAT(LINE,'.TEXT'); ,RESET(Ú¾ áÚ͹öÚ¾³ÿ‹¡Û �Ú¾‚0•ÌÚ͹ôÛÌ­):~ `©‚Ÿ©‚œÉ¡Ï¥Í¥ÏÌ©‚Ÿ©‚�ÈØÅ„¡¥@Í©‚Ÿ‚«‚ŸØ•̹INFILE,LINE); ,IF IORESULT <> 0 THEN WRITELN(OUTPUT,'NO SUCH FILE',CHR(8)) ,ELSE .BEGIN 0WHILE NOT EOF(INFILE) DO 2BEGIN 4ö­$ FÆ¥Æ>ÍÆ>ªxƦPGׯ¡Ï¹ðÆצSK¯¡Ï¹òƦPNׯ¡«‚ ¹ôÆצNN¯¡«‚ ¹öƦPTׯ¡¥Í¥Ï«‚œ¹xÆצREADLN(INFILE,LINE); 4IF LENGTH(LINE) <> 0 THEN 6IF LINE[1] = '#' THEN CONTROL ELSE LIST 4ELSE LIST; 2END; 0CLOSE(INFILE); PB¯¡¥Í¥Ï«‚�¹[ƦPSׯ¡¥Í¥Ï«‚›¹>ÆצSN¯¡¥Í¥Ï«‚ž¹!ƦLSׯ¡¥Í¥Ï•«‚š¹Ï­ô, END; ,TEST := FALSE *END )ELSE TEST := TRUE; $ UNTIL TEST;  ENDPAGE; #END.  ôÆ@Æ�lÇ‘ÍÆ�mÆ‚™Ç‘ÍÕ€§«‚ž«‚Ÿ<«‚�«‚œB«‚›«‚ «‚¡«‚š¥@צPRINTER:Ͷ¦COM? ×Ͷ¥xͶͥ¾#áιò¥צEND.·¡ô¥Ì‚¢Æ‚¢¥xÍÆ‚¢¦.TEXT×}ÍÆ‚¢ªx¥�m¥Íž"Ë¡&¶¦ NO SUCH FILE×ͶͶ͹=¥�mÍ “¡+¥�m¥xÍ¥�mÍ? 127; NUL = 0; ESC = 27; DLE = 16; DC2 = 18; CR = 13; LF = 10; BS = 8; &US = 31;   4] := OCTAL(1,7,7,7,5,6); H^.CODE[ 5] := OCTAL(1,1,3,7,1,0); "H^.CODE[ 6] := OCTAL(1,7,7,5,2,2); "H^.CODE[ 7] := OCTAL(1,4,2TYPE HANDLER = RECORD 1QBASE: INTEGER; (*ADDRESS OF QUEUE ARRAY*) 1QHEAD: INTEGER; (*BYTE INDEX-HANDLER INSERTS*,7,2,0); "H^.CODE[ 8] := OCTAL(0,0,0,2,0,0); "H^.CODE[ 9] := OCTAL(1,6,6,7,0,0); "H^.CODE[10] := OCTAL(1,7,7,7,4,2); ) 1QTAIL: INTEGER; (*BYTE INDEX-PROGRAM REMOVES*) 1QSIZE: INTEGER; (* # OF BYTES IN CIRC QUEUE*) 1CODE: ARRAY ["H^.CODE[11] := OCTAL(0,2,0,0,6,7); "H^.CODE[12] := OCTAL(1,7,7,7,4,4); "H^.CODE[13] := OCTAL(0,0,1,0,0,1); "H^.CODE[14] := 0..20] OF INTEGER /END; / %KWTRICK = ARRAY [0..7] OF INTEGER; QUEUE = PACKED ARRAY [0..QUEUESIZE] OF CHAR; % %DLOCTAL(0,0,5,0,0,0); "H^.CODE[15] := OCTAL(0,1,0,0,6,7); "H^.CODE[16] := OCTAL(1,7,7,7,3,0); "H^.CODE[17] := OCTAL(0,1,2,6,0,011 = RECORD .RCSR: INTEGER; .RBUF: INTEGER; .XCSR: INTEGER; .XBUF: INTEGER ,END; , , VAR Q : ^QUEUE; $H : ^HANDLER; $CDL, (*CONSOLE DL-11*) $HDL: ^ DL11; (*HOST DL-11*) $ALPHALOCK,DONEBIT,PARITYMASK: BOOLEAN; PAGEINX,CH,QSIZE,INTENABLE,TIMER: INTEGER; TRIX: RECORD CASE INTEGER OF ,0: (P: ^DL11); ,1: (M: ^INTEGER); ,2: (I: INTEGER) *END; $KW: ^KWTRICK; PAGE: PACKED ARRAY [0..1023] OF CHAR;  FUNCTION OCTAL(P1,P2,P3,P4,P5,P6: INTEGER): INTEGER;  BEGIN "IF P1 <> 0 THEN P1 := 16384+16384; (*32768*) "OCTAL := (((P2*8+P3)*8+P4)*8+P5)*8+P6+P1  END (*OCTAL*) ;  PROCEDURE INITIALIZE; VAR I: INTEGER; BEGIN  (*INITIALIZE MISC THINGS*) "ALPHALOCK := FALSE; QSIZE := QUEUESIZE; DONEBIT := ODD(OCTAL(0,0,0,2,0,0)); "PARITYMASK := ODD(OCTAL(0,0,0,1,7,7)); "INTENABLE := OCTAL(0,0,0,1,0,0); "NEW(H); "NEW(Q);  (*INITIALIZE RECEIVE HANDLER STUFF*) "H^.QBASE := ORD(Q); "H^.QHEAD := 0; "H^.QTAIL := 0; "H^.QSIZE := QSIZE; "H^.CODE[ 0] := OCTAL(0,1,0,0,(*$G+,R-,I-*) PROGRAM TERMINAL;   LABEL 1;  CONST QUEUESIZE = 24576; HALFDUPLEX = FALSE; CTRLD = 4; &RUBOUT = 4,6); "H^.CODE[ 1] := OCTAL(0,1,6,7,0,0); "H^.CODE[ 2] := OCTAL(1,7,7,7,6,4); "H^.CODE[ 3] := OCTAL(0,6,6,7,0,0); "H^.CODE[ @ "KW^[6] := OCTAL(0,0,0,0,0,6); "KW^[7] := 0; "TRIX.I := OCTAL(0,0,0,1,0,0); "TRIX.M^ := ORD(KW);  (*MAKE FLOPPY INTERRUPTABCHR(I-1); WRITECH(CHR(LF)) "END (*READS*) ; " PROCEDURE SENDFILE(BINARYMODE: BOOLEAN); " VAR I,LINECNT,REPTCNT: INTEGELE*) "TRIX.I := OCTAL(0,0,0,2,5,2); "TRIX.M^ := 0;  (*SET UP B6700 DL-11 STATUS*) "TRIX.I := OCTAL(1,7,7,5,2,0); "HDL := TRR; (ABORT: BOOLEAN; CH: CHAR; (BF: FILE; F: TEXT; $PROCEDURE WAITFOR(CH: INTEGER); $BEGIN &REPEAT (ABORT := ORD(ODD(CDLIX.P; "HDL^.RCSR := INTENABLE; "HDL^.XCSR := 0; "CDL^.XBUF := US; HDL^.XBUF := CR  END (*INITIALIZE*) ; PROCEDURE TERMINA^.RBUF) AND PARITYMASK) = ESC &UNTIL ABORT OR (ORD(ODD(HDL^.RBUF) AND PARITYMASK) = CH) $END (*WAITFOR*) ; $ TE;  VAR I: INTEGER; BEGIN  (*REPAIR TRAP VECTOR AND EXIT*) "TRIX.I := OCTAL(0,0,0,0,1,4); "I := TRIX.M^; "TRIX.I := OCTA PROCEDURE SEND(CH: CHAR); $BEGIN &REPEAT &UNTIL ORD(ODD(HDL^.XCSR) AND DONEBIT) <> 0; &HDL^.XBUF := ORD(CH) $END (*SENDL(0,0,0,1,0,0); "TRIX.M^ := I; TRIX.I := OCTAL(0,0,0,2,5,2); "TRIX.M^ := OCTAL(0,0,0,2,4,0); "CDL^.RCSR := INTENABLE; "EXI*) ; $ PROCEDURE SENDBINFILE; &CONST TIMEOUT = 20; VAR I,J: INTEGER; $ BUF: PACKED ARRAY [0..7,0..127] OF 0..1T(PROGRAM)  END (*TERMINATE*) ;  PROCEDURE FILEXFER;  VAR CH: CHAR; TITLE,S: STRING[50]; "PROCEDURE WRITECH(CH: CHAR); 5; BEGIN &WHILE (BLOCKREAD(BF,BUF,1) = 1) AND NOT ABORT DO (FOR I := 0 TO 7 DO *BEGIN ,FOR J := 0 TO 127 DO .BEGIN 0S"BEGIN $REPEAT $UNTIL ORD(ODD(CDL^.XCSR) AND DONEBIT) <> 0; $CDL^.XBUF := ORD(CH) "END (*WRITECH*) ; " "PROCEDURE WRITELN;END(CHR(BUF[I,J]+ORD('@'))); , TIMER := TIMEOUT; 0REPEAT TIMER := TIMER-1 0UNTIL TIMER = 0 .END; IF ORD(ODD(C); "H^.CODE[18] := OCTAL(0,0,0,0,0,6); (*SET UP TRAP VECTOR FOR B6700 RECEIVE*) "TRIX.I := OCTAL(0,0,0,1,2,0); "TRIX.M^ := OR "BEGIN $WRITECH(CHR(CR)); $WRITECH(CHR(LF)) "END (*WRITELN*) ; " "PROCEDURE WRITES(S: STRING); " VAR I: INTEGER; D(H)+8; "TRIX.I := OCTAL(0,0,0,1,2,2); "TRIX.M^ := OCTAL(0,0,0,2,0,0);  (*SET UP CONSOLE DL-11 STATUS*) "TRIX.I := OCTAL(1,7"BEGIN $FOR I := 1 TO LENGTH(S) DO &WRITECH(S[I]) "END (*WRITES*) ; " "PROCEDURE READCH(VAR CH: CHAR); "BEGIN $REPEAT $,7,5,6,0); CDL := TRIX.P; CDL^.RCSR := 0; "CDL^.XCSR := 0; (*MAKE BPT VECTOR POINT AT CLOCK HANDLER*) "TRIX.I := OCTAL(0,0UNTIL ORD(ODD(CDL^.RCSR) AND DONEBIT) <> 0; $CH := CHR(ORD(ODD(CDL^.RBUF) AND PARITYMASK)); " IF ALPHALOCK THEN &IF (CH >= ',0,1,0,0);  I := TRIX.M^; "TRIX.I := OCTAL(0,0,0,0,1,4); "TRIX.M^ := I; "TRIX.I := OCTAL(0,0,0,0,1,6); "TRIX.M^ := 0; (*Sa') AND (CH <= 'z') THEN (CH := CHR(ORD(CH)-ORD('a')+ORD('A')); WRITECH(CH) (*ALWAYS ECHO*) END (*READCH*) ; " "PROCEDUET UP NEW CLOCK HANDLER...PREVENTS REENTRY*) "NEW(KW); "KW^[0] := OCTAL(0,0,5,1,6,7); "KW^[1] := OCTAL(0,0,0,0,1,2); "KW^[2]RE READS(VAR S: STRING); $VAR I: INTEGER; CH: CHAR; "BEGIN $I := 1; $REPEAT &READCH(CH); &IF CH = CHR(BS) THEN (IF I > 1  := OCTAL(0,0,1,4,0,1); "KW^[3] := OCTAL(0,0,0,0,0,3); "KW^[4] := OCTAL(0,0,5,1,6,7); "KW^[5] := OCTAL(0,0,0,0,0,2); THEN I := I-1 (ELSE (*NOTHIN*) &ELSE (IF CH <> CHR(CR) THEN *BEGIN S[I] := CH; I := I+1 END $UNTIL CH = CHR(CR); $S[0] := A HEN *OPENOLD(BF,S) (ELSE *OPENOLD(F,S) $UNTIL (LENGTH(S) = 0) OR (IORESULT = 0); $IF LENGTH(S) > 0 THEN &BEGIN CR); &H^.QHEAD := 0; H^.QTAIL := 0; &FOR I := 1 TO LENGTH(S) DO (BEGIN *WHILE ORD(ODD(HDL^.XCSR) AND DONEBIT) = 0 DO; *HDL^(WRITES('Host output file? '); READS(TITLE); (IF LENGTH(TITLE) > 0 THEN *BEGIN LINECNT := 0; ABORT := FALSE; ,S := CONCAT('c.XBUF := ORD(S[I]) (END; REPEAT UNTIL ORD(ODD(HDL^.RBUF) AND PARITYMASK) = LF; HDL^.RCSR := INTENABLE; TIMER at > ',TITLE,' '); ,S[LENGTH(S)] := CHR(CR); ,FOR I := 1 TO LENGTH(S) DO SEND(S[I]); WAITFOR(LF); IF B:= TIMEOUT; &REPEAT (IF H^.QHEAD <> H^.QTAIL THEN *BEGIN ,TIMER := TIMEOUT; (*RESET TIMEOUT COUNTER*) ,CH := Q^[H^.QTAIL]INARYMODE THEN , SENDBINFILE ELSE .BEGIN 0READ(F,CH); REPTCNT := 1; 0WHILE NOT (ABORT OR EOF(F)) DO 2BEGIN 4I; ,H^.QTAIL := H^.QTAIL+1; ,IF H^.QTAIL = QSIZE THEN H^.QTAIL := 0; IF CH <> CHR(LF) THEN .BEGIN F EOLN(F) THEN 6BEGIN SEND(CHR(CR)); 8WAITFOR(LF); 8WRITECH('.'); 8LINECNT := LINECNT+1; 8IF LINECNT MOD 50 = 0 THEN WRITEL0PAGE[PAGEINX] := CH; 0PAGEINX := PAGEINX+1; 0IF CH = CHR(CR) THEN 2BEGIN 4WRITECH('.'); 4LINECNT := LINECNT+1; 4IF LINECN; 8TIMER := 200; (*50 MS*) 8REPEAT TIMER := TIMER-1 8UNTIL TIMER = 0; 8REPTCNT := 0 6END; 4IF CH = CHR(DLE) THEN 6BEGIN NT MOD 50 = 0 THEN WRITELN; 4IF PAGEINX > 920 THEN 6IF WRITEPAGE THEN TIMER := 0 2END .END *END; (IF ORD(ODD(CDL^.RBUF) ANREAD(F,CH); 8REPTCNT := ORD(CH)-32; 8CH := ' ' 6END; 4IF REPTCNT > 0 THEN SEND(CH); 4REPTCNT := REPTCNT-1; 4IF REPTCNT <= D PARITYMASK) = ESC THEN *TIMER := 0; (*ABORT XFER*) (TIMER := TIMER-1 &UNTIL TIMER <= 0; &WRITELN; HDL^.RCSR := 0; &0 THEN 6BEGIN READ(F,CH); REPTCNT := 1 END 3END; 0CLOSE(F) .END; ,IF ABORT THEN CH := CHR(NUL) ,ELSE CH := CHR(CTRLD); ,SIF (PAGEINX > 0) AND (TIMER = 0) THEN (BEGIN *IF PAGEINX > 2 THEN ,IF (PAGE[PAGEINX-2] = '%') AND , (PAGE[PAGEINX-1] = ' 'END(CH); ,WRITELN; WRITES('Transfer '); ,IF ABORT THEN WRITES('aborted') ,ELSE WRITES('complete'); ,WRITELN ) THEN 1PAGEINX := PAGEINX-2; *IF WRITEPAGE THEN TIMER := -1 $ END END (*GETFTP*) ; $ BEGIN (*GETFILE*) $WRITES('H& END END "END (*SENDFILE*) ; " PROCEDURE GETFILE; VAR LINECNT: INTEGER; F: FILE; " $FUNCTION WRITEPAGE: BOOost input file? '); READS(TITLE); $IF LENGTH(TITLE) > 0 THEN &BEGIN (REPEAT *WRITES('Pascal output file? '); READS(S); *IF DL^.RBUF) AND PARITYMASK) = ESC THEN .BEGIN ABORT := TRUE; I := 10 END; SEND(CHR(CR)); ,WAITFOR(LF); LLEAN; $BEGIN WRITEPAGE := FALSE; &FILLCHAR(PAGE[PAGEINX],1024-PAGEINX,0); &PAGEINX := 0; &IF BLOCKWRITE(F,PAGE,2) <> 2 THEN INECNT := LINECNT+1; ,WRITECH('.'); IF LINECNT MOD 50 = 0 THEN .WRITELN & END; CLOSE(BF) $END (*SENDBIN(BEGIN *WRITES('Disk output error'); *WRITELN; ( WRITEPAGE := TRUE END $END (*WRITEPAGE*) ; $ $PROCEDURE GETFTP;FILE*) ; $ BEGIN (*SENDFILE*) REPEAT &WRITES('Pascal input file? '); READS(S); &IF LENGTH(S) > 0 THEN (IF BINARYMODE T $ CONST TIMEOUT = 5000; VAR I: INTEGER; CH: CHAR; BEGIN S := CONCAT('cat ',TITLE,' '); &S[LENGTH(S)] := CHR(B LENGTH(S) > 0 THEN OPENNEW(F,S) (UNTIL (IORESULT = 0) OR (LENGTH(S) = 0); (IF LENGTH(S) > 0 THEN *BEGIN (*TRANSFER!*) ,PAGEI(CDL^.XCSR) AND DONEBIT) <> 0 THEN &BEGIN (CDL^.XBUF := ORD(Q^[H^.QTAIL]); (H^.QTAIL := H^.QTAIL+1; (IF H^.QTAIL = QSIZE THENX := 0; LINECNT := 0; ,IF WRITEPAGE THEN TIMER := -1 ,ELSE GETFTP; IF TIMER < 0 THEN .BEGIN N H^.QTAIL := 0 &END; GOTO 1  END. 0WRITES('Transfer aborted'); 0WRITELN; CLOSE(F,PURGE) .END ,ELSE .BEGIN WRITES(TITLE);  WRITES(' transferred'); 0WRITELN; CLOSE(F,LOCK) .END *END &END "END (*GETFILE*) ;   BEGIN (*FILEXFER*) WRITELN; REPEAT $HDL^.RCSR := 0; $WRITES('Filexfer: S(end), G(et), B(insend), P(ascal), H(ost)'); $READCH(CH);,– æŠ&¶þ t¶þxÐx€ ö&àŠ&¶þ âöT(Œ–P½Œ–tÁþßWÁŠ– €ž–¼x WRITELN; IF (CH >= 'a') AND (CH <= 'z') THEN &CH := CHR(ORD(CH)-ORD('a')+ORD('A')); $CASE CH OF &'P': TERMINATE; &'G': GETFILE; &'B': SENDFILE(TRUE); 'S': SENDFILE(FALSE) $END "UNTIL CH = 'H'; "H^.QHEAD := 0; H^.QTAIL := 0; "HDL^.RCSR := INTENABLE; "CDL^.XBUF := US; "HDL^.XBUF := CR  END (*FILEXFER*) ;  PROCEDURE SENDBREAK;  BEGIN (*200 MS*) "TIMER := 800; "HDL^.XCSR := 1; "REPEAT TIMER := TIMER-1 "UNTIL TIMER = 0; "HDL^.XCSR := 0; "H^.QTAIL := H^.QHEAD  END (*SENDBREAK*) ;  BEGIN INITIALIZE;  1: "IF ORD(ODD(CDL^.RCSR) AND DONEBIT) <> 0 THEN $BEGIN &CH := ORD(ODD(CDL^.RBUF) AND PARITYMASK); &IF CH = ESC THEN (FILEXFER &ELSE (IF CH = DC2 THEN *ALPHALOCK := NOT ALPHALOCK (ELSE *BEGIN ,IF ALPHALOCK THEN .IF (CH >= ORD('a')) AND (CH <= ORD('z')) THEN 0CH := CH-ORD('a')+ORD('A'); ,IF HALFDUPLEX THEN CDL^.XBUF := CH; ,HDL^.XBUF := CH; ,IF CH = NUL THEN SENDBREAK *END $END; "IF H^.QTAIL <> H^.QHEAD THEN $IF ORD(ODDC OLEPART: REAL; DODECIMAL: BOOLEAN; FUNCTION NUMBER (FRACTION: BOOLEAN): REAL; (* Returns number as whole or fraction  IF NAMETABLE[INDEX].ISVAR THEN TOKENTYPE:=VARIDENV ELSE TOKENTYPE:=FUCIDENV ELSE TOKENTYPE:=UNRECIDV *) VAR SUM, COUNT: REAL; BEGIN COUNT := 1; SUM := 0; REPEAT IF SUM < 0.9E37 (*MAXREAL*) THEN BEGIN SUM END END (* OF GETID *); BEGIN (*SCANNER*) DONTEAT:=FALSE; IF CH IN ALPHA THEN GETID ELSE IF CH IN NUMERIC+['.'] T := 10*SUM + ORD(CH) - ORD('0'); COUNT := 10*COUNT END; GETCHAR UNTIL NOT (CH IN NUMERIC); IF FRACTION THEN NUHEN GETCONSTANT ELSE IF CH IN OPERATORS THEN CASE CH OF '+': TOKENTYPE:=PLUSV; '-': TOKENTYPE:=MINUSV; PROGRAM CALCULATOR;(* WRITTEN BY DALE ANDER JULY 8, 1977 *) (* CHANGED TO A CALCULATOR ON JULY 17, 1977 *) CONST IDLENGTH MBER := SUM / COUNT ELSE NUMBER := SUM END (*NUMBER*); BEGIN (*GETCONSTANT*) TOKENTYPE := CONSTV; IF CH <> '.' THEN B= 7; TABLESIZE = 35; (* INCREASE TABLESIZE FOR MORE MEMORY *) IDBLANKS = ' '; LASTX = 'LASTX '; EGIN WHOLEPART := NUMBER(FALSE); IF CH='.' THEN GETCHAR; DODECIMAL := (CH IN NUMERIC); END ELSE BEGI TYPE TOKENKINDS = (CONSTV, EOFV, FUCIDENV, LINEV, LPARENV, MINUSV, PLUSV, RPARENV, SLASHV, STARV, UNRECIN WHOLEPART := 0; GETCHAR; DODECIMAL := (CH IN NUMERIC); IF NOT DODECIMAL THEN TOKENTYPE := UNRECSYMV DV, UNRECSYMV, UPARROWV, VARIDENV, EQUALV, LASTXV); IDKIND = PACKED ARRAY[0..IDLENGTH] OF CHAR; V END; IF DODECIMAL THEN NUM := WHOLEPART + NUMBER(TRUE) ELSE NUM := WHOLEPART; DONTEAT:=CH<>' '; (* DONT EAT NEAR CH: CHAR; J, TOTALIDS, INDEX: INTEGER; OPERATORS, ALPHA, NUMERIC: SET OF CHAR; NUM, ANSWER: REAL; SOURCE: STRXT NONBLANK IF CH IS NONBLANK DA 7/11/77 *) END (* OF GETCONSTANT *); PROCEDURE GETID; VAR ID: IDKIND; I: INTEGER; FUNING; TOKENTYPE: TOKENKINDS; NAMETABLE: ARRAY[0..TABLESIZE] OF RECORD NAME: IDKIND; CASE ISVARCTION LOOKUP(IDTEXT: IDKIND):INTEGER; VAR I: INTEGER; BEGIN I:=TOTALIDS; NAMETABLE[0].NAME:=IDTEXT;(* NOTE DON'T C: BOOLEAN OF TRUE: (VALUE: REAL) END; TEMP: REAL; ITSOK, GAVEERR: BOOLEAN; PROCEDURE GETCHAR; BEGIN J:=J+1HANGE THIS AS THIS FACT IS USED INSIDE OF PRIMARY!!!!!!! *) WHILE NAMETABLE[I].NAME<>; (* J IS THE INDEX INTO THE SOURCE STRING *) IF J<=LENGTH(SOURCE) THEN CH:=SOURCE[J] IDTEXT DO I:=I-1; LOOKUP:=I END (* OF LOOKUP *); BEGIN (*GETID*) ID:=IDBLANKS; I:=0; REPEAT IF I<=IDLENGTH THE ELSE CH:='#'; (* EOF SOURCE CHAR *) IF (CH>='a') AND (CH<='z') THEN CH:=CHR(ORD(CH)-32) (*CHANGE TO UPPER CASE*) END (* ON ID[I]:=CH; I:=I+1; GETCHAR UNTIL NOT(CH IN ['A'..'Z','0'..'9']); DONTEAT:=CH<>' '; (* DONT GET NEXT NONBLANKF GETCHAR *); PROCEDURE SCANNER; VAR DONTEAT: BOOLEAN; PROCEDURE GETCONSTANT; (* Real number scanner RJH 9 July 77 *) VAR WH IF CH IS NONBLANK *) IF ID=LASTX THEN TOKENTYPE:=LASTXV ELSE BEGIN INDEX:=LOOKUP(ID); IF INDEX>0 THEN D ARENEXPRESSION(VAR ANS: REAL): BOOLEAN ; BEGIN PARENEXPRESSION := FALSE; IF TOKENTYPE=LPARENV THEN BEGIN SCANNER; := FALSE; IF GAVEERR THEN EVALU8 := FALSE END (* OF EVALU8 *); BEGIN (*PRIMARY*) PRIMARY:=FALSE; IF TOKENTYPE=CONSTV THEN IF EXPRESS(ANS) THEN IF TOKENTYPE=RPARENV THEN BEGIN SCANNER; PARENEXPRESSION := TRUE END  (*CONSTANT*) BEGIN ANS:=NUM; (*GLOBAL SET BY GETCONSTANT*) PRIMARY:=TRUE; SCANNER END ELSE ELSE IF TOKENTYPE<>EOFV THEN BEGIN GAVEERR:=TRUE; WRITE ('Right parenthesis mi IF TOKENTYPE IN [VARIDENV, UNRECIDV] THEN BEGIN SAVETOK:=TOKENTYPE; SAVEID:=NAMETABLE[0].NAME; (* THISssing') END END ELSE IF TOKENTYPE IN [UNRECIDV, UNRECSYMV] THEN BEGIN GAVEERR:=TRUE;  WAS PUT THERE BY LOOKUP IN GETID *) SAVEINDEX:=INDEX; (*GLOBAL SET IN GETID*) (*THIS MAY NOT BE NECESSARY*) SCA WRITE ('Illegal symbol') END ELSE IF TOKENTYPE<>EOFV THEN BEGIN GAVEERR:=TRUE; WRITNNER; IF TOKENTYPE=EQUALV THEN (* MEMORY ASSIGNMENT *) BEGIN SCANNER; IF EXPRESS(ANS) THEN E ('Left parenthesis missing') END END (* OF PARENEXPRESSION *); FUNCTION EVALU8 (VAR ANS: REAL): BOOLEAN; VAR ARG, TEM BEGIN IF SAVETOK=UNRECIDV THEN IF TOTALIDS+1<=TABLESIZE THEN BEGIN TOTALIDS:=TOTALIDS+1; SAVEI '*': TOKENTYPE:=STARV; '/': TOKENTYPE:=SLASHV; '\': TOKENTYPE:=LINEV; '^': TOKENTYPE:=UPARROWV; '(': TOKENTYPE:=LPP: REAL; I: INTEGER; BEGIN EVALU8 := TRUE; IF PARENEXPRESSION (ARG) THEN CASE FUCNUM OF 1: ANS:=SIN(ARG); ARENV; ')': TOKENTYPE:=RPARENV; '=': TOKENTYPE:=EQUALV; '#': BEGIN TOKENTYPE:=EOFV; DONTEAT:=TRUE END END  2: ANS:=COS(ARG); 3: IF COS(ARG)=0 THEN BEGIN WRITE('Undefined TAN'); GAVEERR:=TRUE END ELSE ANS:=SIN(ARG)/COS( ELSE TOKENTYPE := UNRECSYMV; IF NOT DONTEAT THEN REPEAT GETCHAR UNTIL CH<>' ' (* GETNONBLANK *) END (* OF SCANNER *); FUNCTARG); 4: IF ARG<=0 THEN BEGIN WRITE('Undefined LOG'); GAVEERR:=TRUE END ELSE ANS:=LOG(ARG); 5: IF ARG<=0 THEN BION EXPRESS(VAR ANS: REAL): BOOLEAN ; VAR OK, CHANGESIGN: BOOLEAN; RSLT1, RSLT2: REAL; SAVEOP: TOKENKIND; FUNCTION TERMEGIN WRITE('Undefined LN'); GAVEERR:=TRUE END ELSE ANS:=LN(ARG); 6: ANS:=ABS(ARG); 7: IF ARG<0 THEN BEGIN WRITE(VAR ANS: REAL): BOOLEAN ; VAR OK: BOOLEAN; SAVEOP: TOKENKIND; RSLT1, RSLT2: REAL; FUNCTION FACTOR(VAR ANS: REAL): BOOL('Undefined SQRT'); GAVEERR:=TRUE END ELSE ANS:=SQRT(ARG); 10: IF (ROUND(ARG)>33) OR (ROUND(ARG)<0) THEN EAN ; VAR OK: BOOLEAN; RSLT1, RSLT2: REAL; FUNCTION PRIMARY(VAR ANS: REAL): BOOLEAN ; (* REWRITTEN BY RJH 12 JULY 77 *) BEGIN WRITE('Cannot calculate factorial GTR 33'); GAVEERR:=TRUE END ELSE BEGIN TEMP:=1; (* REREWRITTEN BY D ANDER 7/14/77 *) VAR FUCNUM, SAVEINDEX: INTEGER; SAVEID: IDKIND; SAVETOK: TOKENKINDS; FUNCTION P FOR I:=2 TO ROUND(ARG) DO TEMP:=TEMP*I; ANS:=TEMP END END (* OF CASE *) ELSE EVALU8 E  GAVEERR:=TRUE END ELSE BEGIN PRIMARY:=TRUE; ANS:=NAMETABLE[PRESS*) OK:=TRUE; IF TOKENTYPE IN [PLUSV,MINUSV] THEN BEGIN CHANGESIGN:=(TOKENTYPE=MINUSV); SCANNER END SAVEINDEX].VALUE END END ELSE IF TOKENTYPE=FUCIDENV THEN (*FUNCTION*) BEGIN FUCNUM := INDEX; (*I ELSE CHANGESIGN := FALSE; IF TERM(RSLT1) THEN BEGIN IF CHANGESIGN THEN RSLT1:=-RSLT1; WHILE OK AND (TOKENTYPNDEX SET BY GETIDENT*) SCANNER; PRIMARY := EVALU8 (ANS) END ELSE IF TOKENTYPE=LASTXV THEN BEGIN SCE IN [PLUSV, MINUSV]) DO BEGIN SAVEOP:=TOKENTYPE; SCANNER; IF TERM(RSLT2) THEN ANNER; ANS:=ANSWER; PRIMARY:=TRUE END ELSE PRIMARY:=PARENEXPRESSION (ANS) END (* OF PRIMARY *); BEGIN (*FA CASE SAVEOP OF PLUSV: RSLT1:=RSLT1+RSLT2; MINUSV: RSLT1:=RSLT1-RSLT2 END ELSE OK:=FALSE CTOR*) OK:=TRUE; IF PRIMARY(RSLT1) THEN WHILE OK AND (TOKENTYPE=UPARROWV) DO BEGIN SCANNER; IF PRIMARY(RSLT2) TH END END ELSE OK:=FALSE; EXPRESS:=OK; IF OK THEN ANS:=RSLT1 END (* OF EXPRESS *); PROCEDURE INITABLES; BEGIN EN BEGIN IF RSLT1<=0 THEN BEGIN WRITE('Cannot calculate power'); OK:=FALSE; GAVEERR:=TRUE  ALPHA:=['A'..'Z']; NUMERIC:=['0'..'9']; OPERATORS:=['+','=','*','-','/','\','^','(',')','#']; WITH NAMETABLE[1] DO BEEND ELSE RSLT1:=EXP(RSLT2*LN(RSLT1)) END ELSE OK:=FALSE END ELSE OK:=FALSE; IF OK THEN ANS:=RSLT1GIN NAME:='SIN '; ISVAR:=FALSE END; WITH NAMETABLE[2] DO BEGIN NAME:='COS '; ISVAR:=FALSE END; WITH NAMETA; FACTOR:=OK END (* OF FACTOR *); BEGIN (*TERM*) OK:=TRUE; IF FACTOR(RSLT1) THEN BLE[3] DO BEGIN NAME:='TAN '; ISVAR:=FALSE END; WITH NAMETABLE[4] DO BEGIN NAME:='LOG '; ISVAR:=FALSE EN WHILE OK AND (TOKENTYPE IN [STARV, SLASHV, LINEV]) DO BEGIN SAVEOP:=TOKENTYPE; SCANNER; IF FACTOR(RSLT2) THED; WITH NAMETABLE[5] DO BEGIN NAME:='LN '; ISVAR:=FALSE END; WITH NAMETABLE[6] DO BEGIN NAME:='ABS '; NDEX:=TOTALIDS; WITH NAMETABLE[SAVEINDEX] DO BEGIN ISVAR:=TRUE; NAME:=SAVEID END END ELSN CASE SAVEOP OF STARV: RSLT1:=RSLT1*RSLT2; SLASHV: IF RSLT2=0 THEN BEGIN OK:=FALSE; GAVEERR := TRUE;E BEGIN WRITE('Table full. Assignment not done'); GAVEERR:=TRUE  WRITE('Division by zero') END ELSE RSLT1:=RSLT1/RSLT2; LINEV: IF ROUND(RSLT2)=0 THEN BEGIN  END; IF SAVEINDEX<>0 THEN BEGIN NAMETABLE[SAVEINDEX].VALUE:=ANS; PRIMARY:=TRUE END  OK:=FALSE; GAVEERR:=TRUE; WRITE('MOD by zero') END ELSE RSLT1:=ROUND(RSLT1) MOD ROUND(RSLT2) END  END END ELSE IF SAVETOK=UNRECIDV THEN BEGIN WRITE('Unrecognized ID'); (* OF CASE *) ELSE OK:=FALSE END ELSE OK:=FALSE; IF OK THEN ANS:=RSLT1; TERM:=OK END (* OF TERM *); BEGIN (*EXF E:='E '; ISVAR:=TRUE; VALUE:=2.718282 END; WITH NAMETABLE[9] DO í‚«í¥;¾È¡ ¥;훾«¹#«êaÄêzÈ„¡ê •«­å0ÆнÆнƼ³ȪØ}µ¡Æ Ƽ‰�ꊃ0Š–½Æ Ƽ‰�½Ïꥼ‹“¡öÚ¡ÆÆ¼Æ BEGIN NAME:='PI '; ISVAR:=TRUE; VALUE:=3.141593 END; WITH NAMETABLE[10] DO BEGIN NAME:='FAC '; ISVAR:=F¼‡½¹ÆÆ¼½­Rf«dê.Ë¡ÆÎ½ê.áÏꥼ‹Ì¹ÆнÏꥼ‹ÌÚ“¡ «dÚ¡¥9Ƽ΃½¹¥9Ƽ½ê ˸­ALSE END; TOTALIDS:=10 (* BUILD IN NUMBER OF FUNCTIONS AND VARIABLES *) END (* OF INITABLES *); BEGIN (*CALCULATOR*) ANSWEdÆÚ¨ìÌ¥e#ˆ¤Æ¨¥eß#ˆ¤Æ· ¡ß•̹ößÌ­  8ÆÐ רÌÜÈ¡ÆÜˆê¿Ü‚ÌÏê³öÿþÿÿ‹“¡öê ËR:=0; INITABLES; REPEAT GAVEERR := FALSE; J := 0; WRITE('->'); READLN(SOURCE); IF LENGTH(SOURCE)=0 THEN ¸Æ×ÐLASTX ¯ ¡«d¹%ÆÎ«ëÅ¡¥eë#ˆ¤ü¡ «d¹«d¹ «d­ån ˆÌꥼ‹¡Î¹ðꥼ³@œ‹¡Î¹òê¥'¼‹¡ôê¹EXIT(PROGRAM); REPEAT GETCHAR UNTIL CH<>' '; (*GETNONBLANK*) SCANNER; ITSOK := EXPRESS(TEMP) AND (TOKENTYPE=EOFV); 5«d¹ö«d¹ö «d¹ö«d¹ö«d¹ö «d¹ö«d¹ö«d¹ö«d¹ö«d̹ö¬##^¹x )&AMLF "$&(*,.024I8:<>@B IF NOT ITSOK THEN BEGIN IF (TOKENTYPE=EOFV) AND NOT GAVEERR THEN WRITE ('Unexpected end of expression') ELSDFHJLNPRTVXZ\^`bdfhjlnpr›vš¹ «dØ“¡Ïê Ë¡î­  Ì©dáGÏÚÏ¡<©dáÏ̹/©dË¡E IF NOT GAVEERR THEN WRITE('Illegal Symbol'); WRITELN(': Try Again') END ELSE BEGIN WRITELN()«�c¶צRight parenthesis missingÍž¹W©dÇ ‹¡ «�c¶צIllegal symbolÍž¹.©dË¡(«�c¶צLeft parenthesis missingÍ' ',TEMP); ANSWER:=TEMP END UNTIL FALSE; END (*EXPRESSION*). ž­° ÌÆ® ¡ð¶¹ôÚÆ¼ž½¹òÚÆ¼ž½¹òƼžН¡¶¦ Undefined TAN×Íž«�c¹ÚƼžÆ¼ž‡½¹òÆ¼Š´¡¶צ Undefined LOGÍž«�c¹ ÚÆ¼ž½¹òÆ¼Š´¡¶צ Undefined LNÍž«�c¹ ÚÆ¼ž½¹òÚÆ¼�½¹òÆ¼е¡ ¶¦Undefined SQRF CALCULAT T×Íž«�c¹ ÚÆ¼ž½¹òƼž!ÅÆ¼žÉ�¡3¶¦!Cannot calculate factorial GTR 33×Íž«�c¹/ÆнÌÆ¼žÌ ßàÈ¡ÆÆ¼ߊ�½ ߂̹öÚÆ¼½¹¬å ¹xof+ùÈÀ‘¹Ì©�c¡Ì­å0R º Ì©dáÚ¥9¼½ÌϹô©dÇ$‹¡ö©dÌ Æ¥e#ˆ¤¨ëÌÏ©dá{ÏÚÏ¡pá áTì‚#ȡ삫ìÌ¥eÛ#ˆ¤Ì â¢šâÆ¨¹/¶¦Table full. Assignment not done×Íž«�cÛË¡¥eÛ#ˆ¤¢Ú¼½ISVAR:=FALSE END; WITH NAMETABLE[7] DO BEGIN NAME:='SQRT '; ISVAR:=FALSE END; WITH NAMETABLE[8] DO BEGIN NAMG Ý‚ÌÆ Ƽݞ$‡½¹ö¹'Æ¼Š·¡Ý•ÌÆ Ƽݑž$�½Æ ¼ž$°¡ôØÃØÝ‚‚Å�¡Æ Æ ¼ž$‰‡ƒ½¹ØÝ‚‚Ä¡Æ Æ ¼ØÝ‚‚ž$‰‡ƒ½Æ ¼ž$°(*$L-*) PROGRAM SRCCOM; (* SOURCE COMPARE *) (* COPYRIGHT (C) 1977 *) (* J. F. MINER, SSRFC, U OF MINN. *) ¡Ý‚ÌÆ Æ ¼ž$‡½ÌÌßÊÈ¡%Æ ¼žÌÆ ßÞ0‚¿Æ Æ ¼ÞŠ–ž$�½ß‚̹òØÃÝÄ�¡QÆ Æ ¾¿Æ .¿ÌÝË¡5 ÌÆ E¿ÝÉ¡ ÌÆ -¿Ý‘ÌÝ Å¡(* ALL RIGHTS RESERVED. *) (* DEVELOPMENTAL, BUYER BEWARE... *) CONST VERSION = 'v202 27-Oct-77'; MINLINESFORM̹8á á!¶צUnrecognized IDÍž«�c¹ÌÚ¥eÛ#ˆ¤¢¼½¹/©dáëÌÏÚΠ̹©dáÏÚ¥7¼½Ì¹ÚÎ Ì­C4 , ÌÆ ßÝ †0‚¿ß‚ÌÆ ßÝ Ž0‚¿Æ ß¿¹`ÝÄ¡(Æ Æ Ý‚žÆ Ý‚.¿Æ ØÝ•• ž Æ ؂݂¿¹3Æ Æ Ý•žÆ 0¿Æ .¿Æ Ý‘•0ž Æ Ý•Ø•Ý‚ ž Æ Ø‚¿ÙÆÆÎ ¡aÛ©d Ä¡WÏÆÎ ¡HÆ¼Š´¡+¶צCannot calculate power̫͞�c¹ÆÆ¼Æ¼ž�ž½¹Ì¹ö¹ÌÛ¡ÚÆ¼½ÛÌ­s  ¾É¡Æ ¾ÌÜÆ ÙÍ­ ýx¤, ðÞž ²*2žö l ž 8 d  † ÌÆÎ ¡ìÛ©dÇ‹„¡î©dÌÏÆÎ ¡òܹöÆÆ¼Æ¼�½¹ôÆ¼Н¡%Ì«�c¶צDivision by zeroÍž¹ ÆÆ¼Æ¼‡½¹TƼžá Ì«�c¶צ MOD by zeroÍž¹ÆÆ¼žÆ¼žŽŠ½¹¬ ¹F ŽŸ¹Ì¹ð¹ÌÛ¡ÚÆ¼½ÛÌ­Ý $< ö Ì©d`‹¡ ©dÃÌÏ¹ÌÆÎ ¡XÛ¡ ÆÆ¼’½Ü©d`‹„¡A©dÌ ÏÆÎ ¡.á¹ÆÆ¼Æ¼ƒ½¹ÆÆ¼Æ¼–½¹ ¬¹'¹Ì¹ö¹ÌÜÌÜ¡ÚÆ¼½­¦_ ’¥³ÿþÿ ½¥³ÿ ½¥'³ÜP ¯ ½¥e#ˆ¤ÌØÐSIN רØ¢š¥e#ˆ¤ÌØ×ÐCOS ¨Ø¢š¥e#ˆ¤ÌØÐTAN רØ¢š¥e#ˆ¤ÌØ×ÐLOG ¨Ø¢š¥e#ˆ¤ÌØÐLN רØ¢š¥e#ˆ¤ÌØ×ÐABS ¨Ø¢š¥e#ˆ¤ÌØÐSQRT רØ¢š¥e#ˆ¤ÌØ×ÐE ¨Ø¢šØ¢³Uø-A½¥e #ˆ¤ÌØ×ÐPI ¨Ø¢šØ¢³ÛIA½¥e #ˆ¤ÌØ×ÐFAC ¨Ø¢š «­€Õ��¥7нΫ�c«¶¦->×Íž¶¥;PÍž¶Íž¥;¾Ã¡žÎê Ë¡öÎ¥�aΩdÄ«�d©�d“¡v©dé�c“„¡*¶¦Unexpected end of expression×Íž¹ ©�c“¡¶¦Illegal Symbol×Íž¶¦ : Try Again×Íž¶Íž¹/¶צ Íž¶¥�a¼Ïž¶Íž¥7¥�a¼½¡ôÁšýËÄ ÙÉØÉ�¡ÌÌÆ¼е¡ÆÆ¼’½Æ -¿¹Æ  ¿ÌÆ Æ¼½Æ¼ž$°¡ Æ ¼ž$°¡H (* COUNTERS RESET, ETC. *) PROCEDURE COLLECT(FWA, LWAPLUS1 : LINEPOINTER); VAR P : LINEPOINTER; BEGIN (* COLLECT *)  X.TAIL := NEWLINE;  WHILE FWA <> LWAPLUS1 DO BEGIN P := FWA^.NEXTLINE; FWA^.NEXTLINE := FREELINES; FREELINES := FWA; FWA := P  X.ENDFILE := EOF(FILEX); END END; (* READLINE *) BEGIN (* MOVECURSOR *) IF X.CURSOR <> NIL THEN BEGIN  END END; (* COLLECT *) BEGIN (* MARK *) IF X.HEAD <> NIL THEN BEGIN COLLECT(X.HEAD, X.CURSOR); X.HE IF X.CURSOR = X.TAIL THEN READLINE; X.CURSOR := X.CURSOR^.NEXTLINE; IF X.CURSOR = NIL THEN ENDFILE := TRUE; AD := X.CURSOR; X.HEADLINENO := X.CURSORLINENO; IF X.CURSOR = NIL THEN BEGIN X.TAIL := NIL; X.TAILLINENO := X.CURSX.CURSORLINENO := X.CURSORLINENO + 1 END ELSE IF NOT X.ENDFILE THEN (* BEGINNING OF STREAM *) BEGIN READLIORLINENO END END END; (* MARK *) PROCEDURE MOVECURSOR(VAR X : STREAM; VAR FILEX : TEXT); (* FILEX IS THE INPUT NE; X.CURSOR := X.HEAD; X.CURSORLINENO := X.HEADLINENO END ELSE (* END OF STREAM *) ENDFILE := TRUE; END;ATCH = 6; MAXTRY = 150; (*<<<10/27/77 GLH. LIMIT ON SEARCH AHEAD FOR MATCH*) LINELENGTH = 90; TYPE LINEPOINTER = ^LINFILE ASSOCIATED WITH STREAM X. THE *) E; LINE = RECORD (*<<<10/26/77 GLH*) NEXTLINE : LINEPOINTER; IMAGE : STRING[LINELENGTH] END; STREAM = REC (* CURSOR FOR X IS MOVED FORWARD ONE LINE, READING FROM X *) (* IF NECESSARY, AND INCREMENTING THE LINE COUNT. ENDFILE *)ORD CURSOR, HEAD, TAIL : LINEPOINTER; CURSORLINENO, HEADLINENO, TAILLINENO : INTEGER; ENDFILE : BOOLEAN END; V (* IS SET IF EOF ENCOUNTERED ON EITHER STREAM. *) PROCEDURE READLINE; VAR I : INTEGER; CH : CHAR; NEWAR TITLEA, TITLEB : STRING; (*<<<10/27/77 GLH*) FILEA, FILEB : TEXT; A, B : STREAM; MATCH : BOOLEAN; ENDFILE : BOOLELINE : LINEPOINTER; C, C2 : 0..LINELENGTH; BEGIN (* READLINE *) IF NOT X.ENDFILE THEN BEGIN C := 0; AN; TEMPLINE : STRING[LINELENGTH]; (*<<<10/26/77 GLH*) FREELINES : LINEPOINTER; SAME : BOOLEAN; PROCEDURE COMPAR (*<<<10/26/77 GLH. CHANGED WAY CHARS GET INTO TEMPLINE*) READ(FILEX, TEMPLINE); NEWLINE := FREELINES; IF NEWLE; FUNCTION ENDSTREAM(VAR X : STREAM) : BOOLEAN; INE = NIL THEN NEW(NEWLINE) ELSE FREELINES := FREELINES^.NEXTLINE; NEWLINE^.IMAGE := TEMPLINE; (*<<<10/26/77 GLH*) BEGIN (* ENDSTREAM *) ENDSTREAM := (X.CURSOR = NIL) AND X.ENDFILE END; (* ENDSTREAM *) PROCEDURE MARK(VAR X : STREAM NEWLINE^.NEXTLINE := NIL; IF X.TAIL = NIL THEN BEGIN X.HEAD := NEWLINE; X.TAILLINENO := 1; X.HEADL); (* CAUSES BEGINNING OF STREAM TO BE POSITIONED BEFORE *) (* CURRENT STREAM CURSOR. BUFFERS GET RECLAIMED, LINE *) INENO := 1 END ELSE BEGIN X.TAIL^.NEXTLINE := NEWLINE; X.TAILLINENO := X.TAILLINENO + 1 END; I ENO := X.HEADLINENO; ENDFILE := ENDSTREAM(A) OR ENDSTREAM(B) END; (* BACKTRACK *) PROCEDURE COMPARELINES(VAR MATCH : BTEGER; BEGIN (* CHECKFULLMATCH *) SAVEXCUR := X.CURSOR; SAVEYCUR := Y.CURSOR; SAVEXLINE := X.CURSORLINENO; SAVEYOOLEAN); (* COMPARE THE CURRENT LINES OF STREAMS A AND B, RETURNING *) (* MATCH TO SIGNAL THEIR (NON-) EQUIVALENCE. EOF LINE := Y.CURSORLINENO; COMPARELINES(MATCH); ON BOTH STREAMS *) (* IS CONSIDERED A MATCH, BUT EOF ON ONLY ONE STREAM IS A MISMATCH *) BEGIN (* COMPARELINES *) IF (A N := MINLINESFORMATCH - 1; WHILE MATCH AND (N <> 0) DO BEGIN MOVECURSOR(X, FILEX); MOVECURSOR(Y, FILEY); .CURSOR = NIL) OR (B.CURSOR = NIL) THEN MATCH := ENDSTREAM(A) AND ENDSTREAM(B) ELSE MATCH := (A.CURSOR^.IMAGE = B.C COMPARELINES(MATCH); N := N - 1 END; X.CURSOR := SAVEXCUR; X.CURSORLINENO := SAVEXLINE; Y.CURSOR := SAVEYCURURSOR^.IMAGE) END; (* COMPARELINES *) PROCEDURE FINDMISMATCH; BEGIN (* FINDMISMATCH *) (* NOT ENDFILE AND MATCH *); Y.CURSORLINENO := SAVEYLINE; END; (* CHECKFULLMATCH *) BEGIN (* SEARCH *) MOVECURSOR(Y, FILEY); BACKTRACK(X, C REPEAT (* COMPARENEXTLINES *) MOVECURSOR(A, FILEA); MOVECURSOR(B,FILEB); MARK(A); MARK(B); COMPARELINES(MATCH) OUNT); CHECKFULLMATCH; COUNT := COUNT - 1; WHILE (COUNT <> 0) AND NOT MATCH DO BEGIN MOVECURSOR(X, FILEX);  UNTIL ENDFILE OR NOT MATCH; COUNT := COUNT - 1; CHECKFULLMATCH END END; (* SEARCH *) PROCEDURE PRINTMISMATCH; VAR EMPTYA, EMPTY END; (* FINDMISMATCH *) PROCEDURE FINDMATCH; VAR TRYCOUNT : INTEGER; PROCEDURE SEARCH(VAR X : STREAM; (* SB : BOOLEAN; PROCEDURE WRITETEXT(P, Q : LINEPOINTER); BEGIN (* WRITETEXT *) WRITELN; WHILE (P <> NIL) AND (P  (* MOVECURSOR *) PROCEDURE BACKTRACK(VAR X : STREAM; VAR XLINES : INTEGER); (* CAUSES THE CURRENT POSITION OF STREAM TREAM TO SEARCH *) VAR FILEX : TEXT; VAR Y : STREAM; (* STREAM TO LOOKAHEAD *)  THE NEW CURRENT *) (* THE LINE COUNTER IS RETURNED IN XLINES. IT IS THE NUMBER *) (* OF THE CURRENT LINE (BEFORE BACKTRA VAR FILEY : TEXT); (* LOOK AHEAD ONE LINE ON STREAM Y, AND SEARCH FOR THAT LINE *) (* BACKTRACKING ON STREAMCK) RELATIVE TO BEGINNING *)  X. *) VAR COUNT : INTEGER; (* NUMBER OF LINES BACKTRACKED ON X *) PROCEDURE CHECKFULLMATCH; (* FROM THE CURRENT POSITIONS IN X AND Y, WHICH MATCH, *) (* MAKE SURE THAT THE NEXT MINLINESFORMATCH-1 LINES ALSO *) (* MATCH, OR  (* OF STREAM. *) BEGIN (* BACKTRACK *) XLINES := X.CURSORLINENO + 1 - X.HEADLINENO; X.CURSOR := X.HEAD; X.CURSORLINELSE SET MATCH := FALSE. *) VAR N : INTEGER; SAVEXCUR, SAVEYCUR : LINEPOINTER; SAVEXLINE, SAVEYLINE : INJ  END; (* WRITETEXT *) PROCEDURE WRITELINENO(VAR X : STREAM); VAR F, L : INTEGER; BEGIN (* WRITELINENO *T := TRYCOUNT+1; END; IF NOT MATCH THEN BEGIN TRYCOUNT:=0; WHILE (NOT MATCH)) F := X.HEADLINENO; L := X.CURSORLINENO - 1; WRITE('LINE'); IF F = L THEN WRITE(' ', F) ELSE WRITE('S ', F AND (TRYCOUNT<=MAXTRY) DO BEGIN SEARCH(B, FILEB, A, FILEA); TRYCOUNT:=TRYCO, ' TO ', L); IF X.CURSOR = NIL THEN WRITE(' (BEFORE EOF)'); END; (* WRITELINENO *) PROCEDURE PRINTEXTRATEXT(VARUNT+1; END;  X : STREAM; XNAME : STRING; VAR Y : STREAM; YNAME : STRING); BEGIN (* PRINTEXTRATEXT *) W END; PRINTMISMATCH; IF (NOT MATCH) AND (TRYCOUNT>MAXTRY) THEN BEGIN MARK(A); MARK(B) END; RITE(' EXTRA TEXT ON ', XNAME, ', '); WRITELINENO(X); WRITELN; IF Y.HEAD = NIL THEN WRITELN(' BEFORE EOF ON ',  END; (* FINDMATCH *) BEGIN (* COMPARE *) ENDFILE := FALSE; MATCH := TRUE; (* I.E., BOI MATCHES BOI *) REPEAT IF YNAME) ELSE WRITELN(' BETWEEN LINES ', Y.HEADLINENO-1, ' AND ', Y.HEADLINENO, ' OF ', YNAME); WRITMATCH THEN FINDMISMATCH ELSE BEGIN SAME := FALSE; FINDMATCH END UNTIL ENDFILE AND MATCH; MARK(A); MARK(B); (* MARK END OF ETEXT(X.HEAD, X.CURSOR) END; (* PRINTEXTRATEXT *) BEGIN (* PRINTMISMATCH *) WRITELN(' ***************************FILES, THEREBY DISPOSING BUFFERS *) END; (* COMPARE *) PROCEDURE INITSTREAM(VAR X : STREAM; VAR FILEX : TEXT); BEGIN (* IN********'); EMPTYA := (A.HEAD = A.CURSOR); ITSTREAM *) X.CURSOR := NIL; X.HEAD := NIL; X.TAIL := NIL; X.CURSORLINENO := 0; X.HEADLINENO := 0; X.TAILLINENO := 0;  EMPTYB := (B.HEAD = B.CURSOR); IF EMPTYA OR EMPTYB THEN IF EMPTYA THEN PRINTEXTRATEXT(B, TITLEB, A, TITLEA) ELX.ENDFILE := EOF(FILEX); END; (* INITSTREAM *) BEGIN (* SRCCOM *) WRITELN('INPUT FILE NAME:'); READLN(TITLEA); OPENOLD(FILSE PRINTEXTRATEXT(A, TITLEA, B, TITLEB) ELSE BEGIN WRITELN(' MISMATCH:'); WRITELN; WRITE(' ', TITLEA, ', 'EA, TITLEA); WRITELN('SECOND INPUT FILE NAME:'); READLN(TITLEB); OPENOLD(FILEB, TITLEB); RESET(FILEA); RESET(FILEB); INITST); WRITELINENO(A); WRITELN(':'); WRITETEXT(A.HEAD, A.CURSOR); WRITE(' ', TITLEB, ', '); WRITELINENO(B); WRITELN(REAM(A, FILEA); INITSTREAM(B, FILEB); <> Q) DO BEGIN WRITE(' * '); WRITELN (P^.IMAGE); P := P^.NEXTLINE END; IF P = NIL THEN WRITELN(':'); WRITETEXT(B.HEAD, B.CURSOR) END END; (* PRINTMISMATCH *) BEGIN (* FINDMATCH *) TRYCOUNT := 0; ' *** EOF ***'); WRITELN  WHILE (NOT MATCH) AND (TRYCOUNT <= MAXTRY) DO BEGIN SEARCH(A, FILEA, B, FILEB); TRYCOUNK åå FREELINES := NIL; WRITELN('Source Compare [', VERSION, ']' ); WRITELN; IF EOF(FILEA) THEN BEGIN WRITELN(TITLEA, ' IS EMPTYå.'); IF EOF(FILEB) THEN WRITELN(TITLEB, ' IS EMPTY.') END ELSE IF EOF(FILEB) THEN WRITELN(TITLEB, ' IS EMPTY.') ELSE å BEGIN SAME := TRUE; COMPARE; IF SAME THEN WRITELN('No differences encountered.'); END END. (* SRCCOM *) ååååååååååååååL åååååååååååååååååååååååååå