.4dµz¯”; ¨9@= à@|@@–.½à@t!@t!À@¬!@µ"€W@>.�,Àv@¯-`@49€%@79@79@@ò.<9@<9@@>9ð@>9€¢@J9@—.uL`;@vL8"@{L}@iYày@/d@@³.¬ppß@|~.4dªÆ¯”µzR}@µzd}@(N&9.; ¨9h¤= àhH|@h¨½àhDt!h^i.t!Àhœ¬!hTµ"€WhÎ�,Àvhȯ-`hLY.49€%h–79hŠ79@hŒ<9hŽ<9@h�â.>9ðh˜>9€¢hˆJ9h’uL`;hZvL8"hn¸.{L}h°iY(v(v)¤Œ4dµzw*(v§² qÜŽ)²å~2�Õ±€%.�ѱ–‚��±c*Lvˆ,D�<±L;ž�é°ày’�é°[XP�é°¼R<�*pvn°€¢t�n°�[j�n°&Xz�n°ÈKr�n°�*”vKp�n°ˆ,n�n°À+l�n°ðx�$°^.�U*¸v°8"ª�Þ¯p!°�ׯ}6�Ö¯x~�Ö¯R*Üv@�¥¯€%.�‹¯Ì&�i¯È}Š�;¯Ì*�ç*w;¯1†�ñ�} €À Ñd‰`Yz4*$w€ À zà ¢w´žw²–w¸*Hw‹w±;w¿w€ ³s€0©sÚ*lwêr ; UPDATE 1 3 FEB 1972 FROM V01 TO V02 .TITLE PAL11R  ;VERSION 4A ; ;COPYRIGHT 1971, DIGITAL EQUIPMENT CORP., MAYNARD, MASS. 01754 ;THIS SOURCE OF THE ASSEMBLER CAN BE ;ASSEMBLED INTO TWO UNIQUE VERSIONS: ;1. IF THE SYMBOL "NOSEG" IS DEFINED, THE ; RESULTING OBJECT MODULE IS THE FULL ; ASSEMBLER. ; ************************************* ;2. IF THE SYMBOL "NOSEG" IS NOT DEFINED, ; THE RESULTING PACKAGE IS AN ASSEMBLER ; THAT UTILIZES CORE OVERLAYS FROM DISK ; ÈK@*’@(ºµzR}h¸®µzd}h¯” ÷æ,§² q)²å~Õ±€%ѱ–�±õ& *’|~ÈK¯-`"¬ppßÒ,$ˆ,<±L;é°àyé°[Xé°¼R./d@iYày{L}vL8"&uL`;},Hn°€¢n°�[n°&Xn°ÈKn°,& J9>9€¢>9ð"<9@ù,lKn°ˆ,n°À+n°ð$°^©.<979@79 àyh¼/d@hb¬ppßh |~ÈKhP¿*’hú(˜÷ææ,æ2‚ˆ÷‹læH¦ˆæ^¦ˆ7 V¦ê2H^Â,$ˆæ(�ˆæðfˆÀ¶&ÐR fˆ^‰º(ð¶¶,H÷µ'kædwæ¨.ˆ� Q¤É• á•?ñ ¨ ,làH润ˆÎ�^‰7 Â7Š{÷•k7    ¶,�7 $7 "7ЉÁ8\‰2 7‘šw˜w�ø är@ [q`"èY �*�wOX ®S!ŠAP˜@@¬:¨*´ws:€ 42}\!ˆ`ËÀ h*Øw%@  ¬Ø !º¤¶¬*üw¢² ®¨£¡;¯ * x…@ó„@P@ €@µa*Dx@‘�@t@oÀvƒ@o‡6*hx@e@ü 0!û P!ë @!É ù*ŒxÀv†@É ‚@¬ @� @Y ç*°x@ ‡@û †@J € D À ä½Ôx` ã@ Ú TO CONSERVE ON SYMBOL TABLE SPACE. ; ;THE OVERLAY VERSION OF THE ASSEMBLER IS SELF CONTAINED ;IN THAT IT IS ITS OWN OVERLAY BUILDER. ; ;WHEN THE SYMBOL "OVRBLD" IS DEFINED, THE ;RESULTING OBJECT MODULE IS THE BUILDER. ; ;WHEN THE SYMBOL "OVRBLD" IS NOT DEFINED, THE ;RESULTING OBJECT MODULE IS THE RESIDENT ASSEMBLER ; ;WHEN LINKED, THE BUILDER'S TOP SHOULD BE XXX474. ;EXECUTING THE BUILDER'S LOAD MODULE ;VIA THE MONITOR COMMAND RUN ;CAUSES THE CREATION OF THE ;CONTIGUOUS FILE OF OVERLAYS ;( 49€%&¯-`6,�°8"Þ¯p!ׯ}Ö¯xÖ¯5& �,Àvµ"€W¬!"t!À˜,´¥¯€%‹¯Ìi¯È};¯Ì“.t!¯-`½à|@&= àz,Ø;¯1ñ�} €À Ñd‰`Yzã ; ¨9¹,ü€ À zà ¢w´žw²–w¸›, ‹w±;w¿w€ ³s€0©ss,Dêr är@ [q`"èY ),hOX ®S!ŠAP˜@8£,´Ã ÷îú÷êöÁ@\‰õà & æ…‰ @•,Øwàw~·ŠA÷¾Á \‰Ä7‘�à   µ,ü7Šj7Š˜+à & æ†w¦÷ŒÁ � & §, \‰ôà òwÔþÁ(\‰Ä7‘0à áÁ0@(&0U,D\‰Ä7‘Nà & æ„w^÷�÷‹ð,h÷�‰„÷•€÷‹« æRˆ÷,æ¸,R &¸D,ŒæRˆ7 Á<fˆ÷(檷°fˆ,*âx扂ˆ÷‹læ*|¦ˆæ@|¦ˆ7 V¦„*yˆæ ‰�ˆæÒ‰fˆÀ˜‹&ÐR fˆ^‰S**y÷µ'kædw抋.ˆ� Q¤É• á•?@*NyàH昋¦ˆÎ�^‰7 Â7Š{÷•k7 \*ry7 $7 "7ЉÁ|\‰2 7‘šw˜w�G*–yà ÷îú÷êöÁ"|\‰õà & æ…Ø*ºywàw~·ŠA÷¾Á|\‰Ä7‘�à g*Þy7Šj7Š˜+à & æ†w¦÷ŒÁ|Þ*z\‰ôà òwÔþÁ |\‰Ä7‘0à áÁ|4*&z\‰Ä7‘Nà & æ„w^÷�÷‹š*Jz÷�PAL11R.OVR) ON DISK WITH LOGIN UIC. ; ;WHEN LINKED WITH THE PERMANENT SYMBOL TABLE, THE ;RESIDENT ASSEMBLER'S TOP SHOULD ALSO BE XXX474. ;AT RUN TIME, THE RESIDENT ASSEMBLER ;REQUIRES THE OVERLAYS TO BE ON DISK ;WITH FILE NAME PAL11R.OVR AND LOGIN OR [1,1]UIC. ; .GLOBL SYMTBB,SYMTBT ;EXTERNAL REFERENCES .GLOBL ASCII,ASECT,BYTE,CSECT,END,EOT,EVEN ;ENTRY POINTS. .GLOBL GLOBL,LIMIT,RAD50,TITLE,WORD .GLOBL IFG,IFL,IFNZ,IFGE,ENDC .GLOBL IFLE,IFZ,IFDF,IFNDF .GLOBL LIST,NLIST,GEE@¬:A,Œs:€ 42}\!ˆ`ËÀ ,°%@  ¬Ø !º¤¶E,Ô¢² ®¨£¡;¯¹,ø…@ó„@P@ €@µû,@‘�@t@oÀvƒ@o‡Ï,@@e@ü 0!û P!ë @!É ’,dÀv†@É ‚@¬ @� @Y €,ˆ@ ‡@û †@J € D À äV¬` ã@ sóR<(ª,°7 òw¢æB!ˆÎeȆ·†7Š©7ЦÀŠj,ÔÁˆ ÈEÀåù ! ! ! ! wVwT,øw>÷¯|7 z‰w<á wŽw7 š÷-Ý,ž&³7 –°7 z÷-~ ¸7 vµf/ˆƒ,@Ã5& æƒwl Bò Ä ‡E¶,dõ uÍ Í@õ>ÅÄ �œ…,ˆÂeÁ æ�â—"â—$Ó¦æ"ˆŽ€ ,¬Ì—"PA—"TAÆÒ æ ÀÄ­+÷7‘Œ,Ð%ô—"37¶·Š#îÁ<^‰ÁR^‰Á€É ,‰„÷•€÷‹« æ4‰ˆ÷øz,暉Æ*nzæ4‰ˆ7 Á‰fˆ÷ {按·°fˆj*’z7 òw¢æB!ˆÎeȆ·†7Š©7ЦÀŠ*¶zÁˆ ÈEÀåù ! ! ! ! wVwT¾*Úzw>÷¯|7 z‰w<á wŽw7 š÷-‡*þzž&³7 –°7 z÷-~ ¸7 vµf/ˆƒ¿*"{Ã5& æƒwl Bò Ä ‡E`*F{õ uÍ Í@õ>ÅÄ �œ/*j{ÂeÁ æ�â—"â—$Ó¦æ"ˆŽ€¶*Ž{Ì—"PA—"TAÆÒ æ ÀÄ­+÷7‘6*²{%ô—"37¶S ; COMPUTER  PDP-11 ; CONFIGURATION  DISK OPERATING SYSTEM ;   REQUIREMENTS ;    ;    ; PROGRAM NAME  PAL-11R ;VERSION  VERSION LEVEL 4 ;   PATCH LEVEL A ;DESCRIPTION  SPECIFICATION DOCUMENTS #130-390-008-01 ;      #130-390-011-00 AND -01 ;      #130-390-012-00 AND -01 ;      #130-390-014-00 ;      #130-390-023-00 ;   MULTI-PASS, RELOCATABLE, SYMBOLIC ASSEMBLER ; AUTHOR  J. MURPHY ;DATE    APRIL, 1971 ;   COPYRIGHT 1971, DIGI<R"€T.ôfˆæÆfˆfˆÁb^‰Á”^‰Á2^‰Á(I Æb”"2((ð(^‰w¨¨€Æ^¨bÔ N¨”âµz¨f. ¨ €Æ¨bÔ¨”â"¨³,:<ª4d¨R¸4d PAL11R V004C 9<ª ¨ R¸Ä^ # / j|,j7Š7‹À�¼ À¥üÿÀ¥ûÿ‰÷ Ô ‰÷‹ü ,Ž÷‹ò ·Šw wœ7 Ü 7 Ú Ã•÷² Š .c,²÷ê ä ÿÕ Š 7& 怷Š#îÁ‰^‰Á4‰^‰Áb‰É Å,Ö{fˆæ¨‰fˆfˆÁD‰^‰Áv‰^‰Á‰^‰Á ‰,&ü{^‰w¨Š‹b‰¨‰^Š‹D‰¶‰ NŠ‹v‰Ä‰µzŠ‹ƒ*|‰Œ‰4dŠ‹4‰š‰4d PAL11R V004C @| # Ù*L|7Š7‹À�¼ À¥üÿÀ¥ûÿ‰÷ Ô ‰÷‹ü ª*p|÷‹ò ·Šw wœ7 Ü 7 Ú Ã•÷² Š . *”|÷ê ä ÿÕ Š 7& æ€wòÁ_ŠD‰� ÄHŠ*¸| „ Ãj X‰ ÷R 7 ~ 7 ” ‰÷åR Ã*Ü|d Ãí: ƒ ƒ ƒ ƒ Ã%þÙ÷‹_ ÏÁˆ .  z*}, ƒÁ5�  À 7 à 7 7º ÷�TAL EQUIPMENT CORP., ;   MAYNARD, MASSACHUSETTS ; STANDARD PROCESSOR WIDE REGISTER ASSIGNMENTS R0  =  %0 R1  =  %1 R2  =  %2 R3  =  %3 R4  =  %4 R5  =  %5 R6  =  %6 SP = %6 ; PAL R7  =  %7 PC = %6 ; PAL ; PAL .CSECT .IFDF NOSEG OVRBLD=1   ;PORTIONS GEPA . . LEAB TOFM TOOT;B  R5NSBI BR  EDCEEXD ULWOH RCEA;S  R0 LRC 4 SRINBI BH  T.MILIM TOOT BTHWIE ARMPCO; 3 ,RR4 MPC . SEBAW NE= S RDWO4 -RYNT EISTH; 2 ,RR4 OVM: R7NSBI Y.TRENE DLID MNDFIO TSTJUAD; 4 ,R10#B SU  R7NSBI EQB E BLTAD REDEORN IERGHHIL BOYM;S  10,#R0 ITB: R6NSBI R4NSBI BR  E.BLTAD REDEORN IEROW LOLMBSY; 3 ,RR4 OVM 6 SRINBO BL 2:SRIN B3 SRINBR B Y TRENF OSSREDD;A EXNDHI4,RV MO  D.UNFOE ATICND ITO0 N-NO; 0 R|wòÁ}D‰� Äf)}&f¢,Ö Â„ Ãj X‰ ÷R 7 ~ 7 ” ‰÷åR ÃZ,úd Ãí: ƒ ƒ ƒ ƒ Ã%þÙ÷‹_ ÏÁˆ .  Ð,, ƒÁ5�  À 7 à 7 7º ÷�m,B- Á6 Â4 Ãø ó� À•Ü ÄH‰wc,fÖ7‹ ÷‹ Á* Ð  Î ƒÁ5� [,ŠÀ ÷ h ÿÅ ° 7ŠÕ Á¯Â”Ó÷•ÿÿ 7Ч,®‚ ‰÷ ¦ À�x À¥üÿÀ¥ûÿ‰÷‹¾ wl®,Ò÷‹° ·Š5 ÷¥ýÿP éwRÿÕL ‰û÷ÕÜ,ö@Š ‰ÜÁ8*$}- Á6 Â4 Ãø ó� À•Ü ÄH‰w *H}Ö7‹ ÷‹ Á* Ð  Î ƒÁ5� *l}À ÷ h ÿÅ ° 7ŠÕ Á¯Â”Ó÷•ÿÿ 7ŠQ*�}‚ ‰÷ ¦ À�x À¥üÿÀ¥ûÿ‰÷‹¾ wlX*´}÷‹° ·Š5 ÷¥ýÿP éwRÿÕL ‰û÷Õ†*Ø}@Š ‰ÜÁ8 ÷µ| ·Š ñÕÿ÷¥ýÿ ò.ü}ÍÃhŠwÉÕ@Ɖ÷ , ‰÷‹P ·ŠÕ Á_Š<*$~D‰÷6 D ÷2 @ ÷Š wæÅ܉  Ä÷¬*H~ ì J‰H‰÷ú wƃ  ‡@2 úÿ *l~r,üÿ “€Â�2 Âåç·Œ óOF BUILD SECTION ARE NEEDED. O01=0    ;SET ALL SYMBOLS USED O02=0    ;IN ADJUSTING ADDRESSES O03=0    ;TO WORK IN OVERLAY O04=0    ;ENVIRONMENT TO 0. O05=0 BEGO01=0 BEGO02=0 BEGO03=0 BEGO04=0 BEGO05=0 BEGOVR=0 .ENDC ; PAL ;***** OVERLAY PROCEDURES ***** ; ; THE NUMBER OF WORDS ALLOCATED FOR THE OVERLAY AREA IS: PAL OVRWRD = 1200 ; 576 DECIMAL WORDS C IN  IDT ECCS .ND AGSLA;F GSLATF4,@R OVM L BOYM SOFE LUVA;Y ITNTUA,Q4)(R-2 OVM S HETCMAD IATRD 2N; . CHAT MNO; 2 SRINBE BN  1)(R,24)(R-4 MPC S HETCMAD IATRT 1S; . CHAT MNO; 2 SRINBE BN  CHAT MOR FSTTE;1 @R),R46(-P CM  ETFSOF- E AS BLEAB;T  R40,RB SU  R42,RV MO  ONTIGAPARO;P      GNSIT ENEVPRD ANS RDWO4 F OLEIPLTMUE URSS;A  R07,0000#1 ICB: R1NSBI NGTIES TUEINNTCO; N URET;R  R7 TSR S DECON IOITNDCOT SE; 0 RT TS 3:SRIN BS ESDRADY TRENE BLTAL BOYMëÿ ÷µ| ·Š ñÕÿ÷¥ýÿ H0ÍÆwÉÕ@Ɖ÷ , ‰÷‹P ·ŠÕ Á}G†*}”,BD‰÷6 D ÷2 @ ÷Š wæÅú  Ä÷] úÊ,f ì J‰H‰÷ú wƃ  ‡@2 úÿ q,Šr,üÿ “€Â�2 Âåç·Œ I,®À‡Á€ÃÆb‰ÀæøfˆÀ ú÷ÿ €ÆøA,Ò€ F‰À´ Á²   ÄH‰À¯Á”ÂH‰ð,öÂP ÃN Áb ÄfÌ@X‰ʵ Z‰Âå€b*�~À‡Áb‰Ã¨‰b‰ÀæÚŠfˆÀ ú÷˜*´~€ F‰À´ Á²   ÄH‰À¯Á”ÂH‰š*Ø~ÂP ÃN ÁDŠ ÄHŠÌ@X‰ʵ Z‰Âåt*ü~÷Å> ÷•? à ÄC!$@úÿAüÿÂ_* (CH‰×­, )N‰F‰Âö Ãô ÁDŠ ÄHŠ6*DÌ•`X‰Z‰ÂåúÅå·Ší ÖÂÀ¯ÁÞ*h”÷‹æ À¾ Á¼ ÂÕ Ãš ÂE—H‰N‰÷ø*Œ¨ F‰N‰÷ž F‰  À• ÄH‰N‰‡&‰¬*°…@úÿAüÿCþÿÄÂBÓÂE—H‰×­„ )ˆ*ÔN‰F‰`‰ ‰÷j 6 ÄT ´ ÷‹ ÷‹w Î*ø÷¥ÿÿ PAL ; PAL ; THE NUMBER OF BYTES ALLOCATED FOR THE OVERLAY AREA IS: PAL OVRSIZ = OVRWRD+OVRWRD ; 1152 DECIMAL BYTES PAL ; ;IF THE SYMBOL "OVRBLD" IS DEFINED (VIA A ;PARAMETER ASSIGNMENT) THE RESULTING OBJECT ;MODULE WILL CONSIST OF: ;  OVERLAY BUILDER ;  OVERLAY #1 ;  OVERLAY #2 ;   . ;   . ;   . ;  OVERLAY #N ;  OVERLAY AREA ;  RESIDENT PAL-11R ; ;THE;S EXNDHI3,RV MO  IDCTCSD ANS AGFL TTO0 ; S AGFLTR CL  TYTIANQUO T;0 TYTIANQU LRC: R5NSBI NDOU FCHAT MNO; 1 SRINBE BN  2.E/IZ SLEAB TNSAINTCO0 ;R  R0 SRA: R4NSBI E.BLTAW LOBES ESDRADE RE FST;1  R03,RB SU  USIN MSEBAE BLTA; 0 ,RR2 OVM: 39BRSU H:RCNSBI ;;  D.RETEALE AR4 RND AR3, R2; D TISC CND A  ;  GSLATF, TYTIANQUO T 0) 3;  S)ESDRADR HEIG(HX DEIN HTOD RETEENE B  ;  LDOUSHL BOYM SREHE WSSREDD A) 2;  0ESOD CONTIDION CND AR0 1) ; : CHAT MNOF Içÿ"fß,÷Å> ÷•? à ÄC!$@úÿAüÿ´,>(CH‰×­, )N‰F‰Âö Ãô Áb ÄfB b&f»,bÌ•`X‰Z‰ÂåúÅå·Ší ÖÂÀ¯Á4,†”÷‹æ À¾ Á¼ ÂÕ Ãš ÂE—H‰N‰÷N,ª¨ F‰N‰÷ž F‰  À• ÄH‰N‰‡&‰,Î…@úÿAüÿCþÿÄÂBÓÂE—H‰×­„ )Þ,òN‰F‰`‰ ‰÷j 6 ÄT ´ ÷‹ ÷‹w $,÷¥ÿÿV ·Šñ÷ ÷ Ì 7ŠW ÷‹? ·Š,:Õ‰Æ · ÷‹' ÄP ?!ø ƒÄ5„#V ·Šñ÷ ÷ Ì 7ŠW ÷‹? ·ŠÊ*€Õ‰Æ · ÷‹' ÄP ?!ø ƒÄ5„ w.@€?ê Äà ÃÃÂ$‰ÅØŠÍ­ôÍ­ ÁD‰K,h€æ´ƒfˆ^‰Í­ö÷¸ F‰N‰ÄæÚŠæb‰�*Ž€�ˆÄ ø^‰÷•HÑ Â‰·Ê ¦ˆÍ­% E*²€7Š· Áv‰wèÍ­¼ Ãĉb‰7а"‰¦ˆ*Ö€î^‰�Šw£ù æVˆ÷T8÷ , ÷‰Bo*ú€÷Œ‰>÷& æ*�¦ˆ¦ˆwØ æ´ƒæ‰A*�ˆæ‰ˆwv  END &‰ÅîÄì*B�7Š Åe‰Àå ÷•ûÿ ÷‹ ÷•þÿ Åå*f�D!$ RUN TIME TRANSFER ADDRESS WILL BE ;"STARTB" IN THE OVERLAY BUILDER ; ;"SYMTBB" AND "SYMTBT" WILL BE DEFINED IN ;THE OVERLAY BUILDER IN LIEU OF IN THE ;PERMANENT SYMBOL TABLE OBJECT MODULE ;WHICH WILL NOT BE LINKED FOR THE ;BUILD RUN. ; ;IF THE SYMBOL"OVRBLD" IS NOT DEFINED ;THE RESULTING OBJECT MODULE WILL ;CONSIST OF: ;  OVERLAY AREA ;  RESIDENT PAL-11R ; ;THE RUN TIME TRANSFER ADDRESS WILL ;BE "STARTA" IN RESIDENT PAL-11R  .IFDF OVRBLD .IFNDF NOSEG .TITLE PALOB SYMTB;  ; ) TEBY (IDCTCSO TIDN IOCTSEL RONTCO 5) ; ) TEBY (GSLATFO TGSLA FOLMBSY 4) ; Y ITNTUA QTOL BOYM SOFE LUVA 3) ; X DEIN HTOY TRENF OSSREDD AERGHHI 2) ; ) VETISIPO ( 0ON NESOD CONTIDION CND AR0 1) ; : NDOU FCHAT MIFT PUUT;O  ; 3 RINE BLTAL BOYM S  ;  HE TOWEL BSSREDD AEEFRT 1SE TH 3) ; 2 RINE BLTAL BOYM SHE T  ;  OFS ESDRAD) ERGHHI (NGTIARSTE TH 2) ; 1 RINL BOYM S0) 4LODUMO (RDWO ; 2 E THF OSSREDD AR)WELO (SEBAE TH 1) UTNP;I  E.BLTA; L BOãÿ& Í0^?ê Äà Ãá Â$‰ÅöÍ­ôÍ­ Áb²á ö*b2.†æÒ fˆ^‰Í­ö÷¸ F‰N‰Äæøæ€Ò $ø(€,¬�ˆÄ ø^‰÷•HÑ Â2·Ê ¦ˆÍ­% ö 2˜,Ð7Š· Á”wèÍ­¼ Ãâb‰7а"‰¦ˆ ”â/,ôî^‰�Šw£ù æVˆ÷T8÷ , ÷<B  $<€,÷ª>÷& æH¦ˆ¦ˆwØ æÒ æ2ªH"Ò &'÷‹éBͽ÷õ%(‰÷‹í wŠçÅä*Š�¶ÄœwŠÅ÷ °×÷ Öæv‰ˆ`‰·Š�Ü*®�wúÿ�wüÿŒwŠÂJŠ7Ѝ&‰…ÁVÂåù*Ò�À¦fæ"ˆÁeÀ ÷� ͵ ñ•RÕ*ö�͵ñ•%͵É•=Ñ C͵͵´*‚@ñ•Gæ**‰±±Dþÿƒ`*>‚$‰ DÝ!!ÿÂÃe $‰Íµ@/*b‚ñ•G*‰÷e´·Šúwêþ(‰wÊþÀ$ŠÈE*†‚ø Èe8 Á´ÁåfQ$Hà æ·*ª‚ˆ‡ R‰÷ –qº‚   ñ.΂·Š„÷ ‚· ~(B=.  ;IN LIEU OF LINKING SYMTBT=.  ;WITH PERMANENT SYMBOL TABLE ; ;THE FOLLOWING TABLE CONTAINS THE ;STARTING CORE ADDRESS OF EACH OVERLAY ;IN THE ORDER OF ASCENDING LOCATIONS. ;A 0 WORD TERMINATES THE ENTRIES. ;AS NEW OVERLAYS ARE CREATED THEIR ;POINTERS MUST BE ADDED TO THE END ;OF THE TABLE AND THE OVERLAY ITSELF ;PUT IN THE SAME POSITION ;RELATIVE TO THE OTHER OVERLAYS. ; OVRTAB: .WORD BEGO01  ;OVERLAY #1 .WORD BEGO02  ;OVERLAY #2 .WORD BEGO03  ;OVERLAY #3 .WORD YM SRYNT EER PRDWO4 D REDEOR; N AEROVH RCEA SRYNABIA S RMFOER;P  CHARSEE BLTAL BOYM SRYNABIE INUTROUB;S L PA E AG.P RNTURE; 7 RS RT  0)(R,-+1YMPSTM OVM . OTSLD IEIFECSP;) R0-(3,M+SYMPTV MO  INY TREN;) R0-(T,ULESRV MO  RDWO4 E ACPL;0 @RS,AGFLTV MO  R0X,DEINHV MO 0:R4UB S. EDAYRLVE OBEO TRYNT EOLMBSYF IRYNTE: AYRLOV ;S ERSTGIREE ORSTRE; G REETSP RAT: R2TEEN R3TEEN ISBH  S.RDWO4 S RDWAWNDO; 0 ,RR2 MPßÿ*2Y,<ˆæ2ˆwv  END &‰ÅîÄìµ 2¦,`7Š Åe‰Àå ÷•ûÿ ÷‹ ÷•þÿ Åål,„D!÷‹éBͽ÷õ%(‰÷‹í wŠçÅ:,¨¶ÄœwŠÅ÷ °×÷ Öæ”ˆ`‰·Š�� ”.,Ìwúÿ�wüÿŒwŠÂh7Ѝ&‰…ÁVÂåª ha,ðÀ¦fæ"ˆÁeÀ ÷� ͵ ñ•R+, ͵ñ•%͵É•=Ñ C͵͵ ,8 @ñ•Gæ**‰±±Dþÿƒ`Õ+÷•ÿÿlw8 ÀR‰ æƒÂ*ö‚‰÷‹l‰þ÷µ^a^Q À�ú”*ƒÀe € € € Ö ·Š¿  q<ƒÐp*>ƒÈÇÍÁ ÔÁ ÒæƒÑ÷Šÿ·Š•7Šõä*bƒ÷‹ò»÷Šì¸÷ èµ÷ÿÿâ±·Š×& æí*†ƒ�w ÷‹È·ŠÂÖ wBÿÀ ‰÷‹`÷‹à.ªƒÁ7 š‡ ERRORS ÷_Š^À*Òƒ@‰·Šz÷ŽÄô�÷ X‰>‰·Š· Jù¾*öƒÃŸDÃ¥ ÃU ŠÊ�· 0ï,}Ãï$®"„yÃÁþ Áÿ@‰ Äh–ÃÄ*4„üûÂL‰ÀÁe÷Š ÅŠ<‰÷‹,BEGO04  ;OVERLAY #4 .WORD BEGO05  ;OVERLAY #5 .WORD 0 ; ;OVERLAY DEVICE OUTPUT TRAN BLOCK ; OVRTBO: .WORD 0  ;DEVICE BLOCK NUMBER OVROSA: .WORD 0  ;MEMORY START ADDRESS .WORD OVRWRD  ;WORD COUNT OVRERR: .WORD 2  ;FUNCTION (WRITE) .WORD 0  ;NUMBER OF WORDS NOT TRAN'D. ; ;RESTART ADDRESS OF OVERLAY BUILDER --- ;RELEASE OVERLAY DEVICE IF STILL INIT'D. AGAIN: TST OVRLB  ;IS DATA SET INIT'D BEQ STARTB  ;NO MOV #OVRLB,-(R6) ;YES -- RELEASE IT EMT C E BLTAL BOYM SSTJUAD;+ 1)(R+,0)(R OVM: R3TEEN PCERUS4,RB SU  D.VEMOE BTOS ;I PCERUS,HR4 UBS T IIFY TRENC PERUS; 3 ERNTEO BL  TOS ERNTOI PNTMEREEC;D PCERUS,HR2 MPC . EDEDNET ENTMUSDJ ANO; 2 ERNTEQ BE  R.FENSRA TTOS RDWOF OO.;N  R20,RP CM  R2X,DEINHV MO  R.PT. EG REEFRT 1SD IEIFOD MVESA;P TOSR,UR1 OVM: R1TEEN )+R6(T TS  41 MTE ) R6-(2,10#V MO  ORITON MOFN IOCTRUSTDE ;T ENEVPRO TONTIRAPE OMYUM;D OTKBST4,RB SU  R4TEEN LOB T BOTK,SR2 MPC T BOTK SÛÿ.,\ $‰ DÝ!!ÿÂÃe $‰Íµ@…,€ ñ•G*‰÷e´·Šúwêþ(‰wÊþÀBÈEÅ $By,¤ ø Èe8 Á´ÁåfQ$Hà æ ,È ˆ‡ R‰÷ –qØ   ¢ Ø ý0ì ·Š„÷ ‚· ~÷•ÿÿlw8 ÀR‰ æ, s *, �, ‰÷‹l‰þ÷µ^a^Q À�úé,8 Àe € € € Ö ·Š¿  qZ Ð! $Z h,\ ÈÇÍÁ ÔÁ Òæ0 Ñ÷Šÿ·Š•7Šõ•/·Š�w¨*X„Æ O Ì Î+÷‹ì. &‰Ä÷ÀJ‰Á6*|„ÎÄ&‰÷¬÷¥ÿÿÂ÷ žÄJ‰Í* „èÄÁ†Â„H‰·Š„*‰·œC·Š=*Ä„=ÎÎ% ÷‹‚÷¥ÿÿz·ŠP‰À<‰*è„÷‹d ÷ xP?Š6÷ n·Š.öÁ�Î cà* …÷Š>·ŠÝw ÷‹4FÀß× 0× 9,*0…ÃåÃ¥$Ãå Ã¥.ôÃ¥  ¬*T…× A× Z × a× z ÃÅ ÿ�ÊÃEÀÿ�.x…ÿ�´· °·Šm´·Š²Å®÷ بÁ_ŠD‰Â`ŠO, …Á�÷¦· ·(7Šš0RLS ; ;STARTING ADDRESS OF OVERLAY BUILDER STARTB: MOV #OVRTAB,R6 ;INITIALIZE THE STACK START=STARTB  ;SET UP TRANSFER ADRESS ;SET UP RESTART ADDRESS MOV #AGAIN,-(R6) MOV #2,-(R6) EMT 41 MOV #OVRLB,R1 ;LINK BLOCK CLR @R1  ;FOR ^C BEGIN MOV #OVRFB,R2 ;FILE BLOCK MOV #OVRTBO,R3 ;OUTPUT TRAN BLOCK ;.INIT OVERLAY DEVICE MOV R1,-(R6) ;LINK BLOCK EMT INCMD ;OBTAIN DEVICE STATUS MOV R1,-(R6) ;LINK BLOCK EMT 13 CMP (R6)+,(R6)+ ;CORRECT STACKSTJUADO LS;A )+R3,()+R2(V MO 4:ERNT E. DSOR W 4WNDO; 3 ,RR6 OVM K ACSTE OV MCKTA;S  R64,RB SU  TOINN RUD ULWOT US; 2 ,RR6 OVM . ONSILIOL CNO; 1 ERNTES HIB K ACSTH IT WONSILIOL COR FCKHE;C OTKBST1,RP CM  S.RDWO4 Y BERNTOI;P  R14,RB SU  ERSTGIREE RE FST 1SEEACRDE; 1 ,RR0 OVM E USR TELAR FO; 4 ,R10#V MO  R0P,TOSRUV MO  S.ERSTGIREE AV;S  EGVRSA APTR 6:R0UB S. EDIRQURET ENTMUSDJ ALEAB TIFY TREN R:TEEN ;. ESRINT ETHBOT AEDOYTRES DIS0 ;R  E.AD MIST ENTMUSDJ A×ÿ2 0  ,€ ÷‹ò»÷Šì¸÷ èµ÷ÿÿâ±·Š×& æC,¤ �w ÷‹È·ŠÂÖ wBÿÀ ‰÷‹`÷‹60È Á7 š‡ ERRORS ÷}^q (}:,ð @‰·Šz÷ŽÄ÷ X‰>‰·Š· Jùn µ, ßDÃ¥ ÃU Â2Ê�· 0ï,}Ãï$^ 2™$8 yÃÁþ Áÿ@‰ ĆÃu†R Ê,R üûÂjÀÁe÷Š Å2<‰÷‹·Š�w´j3‰B‰÷ „æD‰ë*Æ…ˆ÷åV· lá �? ¨ÿ(J7 š7 RÀN*ê…V·<â ·4Á0 0 þÿÀåù÷•b*†C÷ ±Z÷Œ:VÀÿÿ7�G‰÷(7 "7 _*2†ô7 ÷8wÖ7 ¾7 PÀ&ÐRÐD*V† 7ÆÀx‰æÔˆæÎˆÀØÀåÐÞ*z†€ wšæÚæØæŽf‰·ŠÒ ‰*ž†·ŠQ·Š_ÎÝÚްεöÕÿ·Š9‰·m*†X·š·”Ö%¯,÷‹0÷‹x·Šw6Ç*æ†wŠ�ɵ×ÿ·ŠÿöEÀ•ÁLÄH‰A÷‹ò* ‡G%÷‹Båÿ4ÿ/dƒÿ\4.    ;PHYSICAL BLOCK SIZE MOV @R6,R4  ;(IN WORDS) OF OVERLAY DEVICE MOV #OVRWRD,-(R6) JSR R7,DIVIDE MOV (R6)+,R5 ;NUMBER OF PHYSICAL    ;BLOCKS PER OVERLAY CLR -(R6) MOV #OVRTAB,R0 BLDR01: TST (R0)+  ;TOP OF STACK BEQ BLDR02  ;CONTAINS TOTAL ADD R5,@R6  ;NUMBER OF PHYSICAL BR BLDR01  ;BLOCKS REQUIRED. BLDR02: MOV #64.,-(R6) ;DIVIDE PHYSICAL BLOCK MOV R4,-(R6) ;SIZE BY 64(DECIMAL) JSR R7,DIVIDE ;QUOTIENT ON STACK. MOV (R6)+,R0 LEABT;  OLMBSYO NE.OVAB) 3EPST UTTPOU; E OVABS AMESA UTNP;I  AYRLOVP RA;T  X.DEIN HIN ;  SSREDD AHE TATG INRTTA S  ;  EDORSTY TRENL BOYM SEW N) 3;  OPRTUSO TS)RDWO (-4OPRTUS 2) ; . DSOR W 4DSARNWOW DEDSTDU AOPRTUS ; O TEXNDHIM RO FLSBOYM SLL A) 1;  S.RDWOR OU FWNDOD VEMOS ICKTAS;  CKTA SOFM TOOT BTHWIE IDLLCO ; D ULWOE BLTAL BOYM SEDNDPAEXF IT PUUT;O  GSLATF ; T ULES R  ;  +3YMPSTM ; 1 M+SYMP T  ;  INY TREND OR W 4HE T) 2Óÿ62,v Æ O Ì Î+÷‹ì. &‰Ä÷ÀJ‰ÁŒ,š ÎÄ&‰÷¬÷¥ÿÿÂ÷ žÄJ‰#,¾ èÄÁ†Â„H‰·Š„*‰·œC·Š“,â =ÎÎ% ÷‹‚÷¥ÿÿz·ŠP‰À<‰Õ, ÷‹d ÷ xP?Š6÷ n·Š.öÁ<Î c� "<~,* ÷Š>·ŠÝw ÷‹4FÀß× 0× 9‚,N ÃåÃ¥$Ãå Ã¥.ôÃ¥  ,r × A× Z × a× z ÃÅ ÿ�ÊÃEÀÿæ0– ÿ�´· °·Šm´·Š²Å®÷ بÁ}D‰Â~7÷‹Ø•*.‡Ùñ¥ÿ‰‰°‰ÉÅ÷‹ ÉÉÕ p,R‡ñ�ýÉÕV‰Á@£À@£‡æâ@‰Å<ŠÄL‰&x‡ÃPŠ ŠÂ܉À�êxŠ‡Ì‡ ˆXˆˆ˜‡2ˆâ‡Ð*˜‡ ‰·ŠSÌ•ÿÿ:÷‹¨÷÷‹�óÌïÆ*¼‡ÌåŒ 퇓#ê(×­DûÿO×­<üÿK·Š’*à‡H ‰÷ š·Š ÷‹^÷¥ÿÿV·Šñj*ˆ÷�EùP‰ú ‰·ŠÙ‰Ó)‰&·ŠËX*(ˆÍË• ‰·Š·‰ÌŒ Œ Sÿ¥,òH*Lˆë‰ç·Šä‰ ·Š“Í×Ë•7 t7 nN*pˆNS‹Š‹Š·bw¢÷‹…#÷%4‰²÷ –)æ%G;NUMBER OF 64'S IN    ;PHYSICAL BLOCK MOV @R6,R4  ;TOTAL NUMBER OF    ;PHYSICAL BLOCKS REQUIRED BLDR03: DEC R0  BEQ BLDR08  ;TOTAL NUMBER OF ADD R4,@R6  ;64 (DECIMAL) WORD BLOCKS BR BLDR03  ;REQUIRED ON TOP OF    ;STACK ;DELETE FILE IF ALREADY EXISTING BLDR08: MOV #BLDR04,-4(R2) ;ERROR RETURN MOV R2,-(R6) ;FILE BLOCK MOV R1,-(R6) ;LINK BLOCK EMT DLT BLDR04: CLR -4(R2)  ;ERRORS TO MONITOR ;ALLOCATE THE NECESSARY SPACE FOR ONE ;CONTIGU ; X DEIN HINT LO SHE TOF) SSREDD ASTHEIG(HS ESDRADE AS BHE T) 1T PUIN; R TEENP RA;T  S:NTOI PRYNT E 2RE AREHE;T E.BLTAL BOYM S AINT LO SEDFICIPE;S ATOINY TRENL BOYM SRDWO4 A R TEENO TNETIOUBRSU ; AL P GEPA . . NETIOU RNGLIAL CITEX; 7 RS RT  RSTEISEG RET;S  EGTRSE APTR  EGPRPOM RO FRNTURED ARSCDI; + 6)(R STT: 45BRSU G:REOP;P E.INUTROG INLLCAT XI END A; S ERSTGIREP POO TNETIOUBRSU;  RNTURE;    5 RREÏÿE[$}*~€.¾ Á<÷¦· ·(7Šš‰B‰÷ „æb÷<(bû,ä ˆ÷åV· lá �? ¨ÿ(J7 š7 RÀ¤, V·<â ·4Á0 0 þÿÀåù÷•·,, C÷ ±Z÷Œ:VÀÿÿ7�G‰÷(7 "7 µ,P ô7 ÷8wÖ7 ¾7 PÀ&ÐRК,t  7ÆÀx‰æÔˆæÎˆÀØÀåÐ4,˜ € wšæÚæØæŽf‰·ŠÒ ‰W,¼ ·ŠQ·Š_ÎÝÚްεöÕÿ·Š9‰·Ã,à X·F*”ˆ¦ˆ÷‹Œ÷­74æ’ˆ÷4‰Š÷š‰†$*¸ˆ÷„h÷¥wN÷ X · T÷@7Š{*܈�‰wªæTˆw LPQARDMBIò*‰NTU,EEGxr*$‰ðHxð\M©*H‰€M8Ü€f#*l‰¤x€Mô&µWÇ*�‰4dô&µW4dô&µWö 7*´‰ô&µW Nô&µWµz%p:¾*؉(( PAGE XXXXX MM-8""DDDDDDD """""""""""ˆˆˆˆˆˆˆ@DDDDDD13333€™™™™™™ÙÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÌADD+B C4dµz^ê›4d[q^%�›4d[q¡K¡›4d[qPŽò‚4›ó¥›óq›÷u%›$DÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿßÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÌÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÅaå Í‹æÄ,L ƒw:ÄB8ŽŒ ýƒàÇ` 5 þÿ€�&ˆ ‚— ýÿ†ƒœÃEÀÿ× >w†× × ò f€ò5ÀeòU@ò €× [æ*ˆ² ¦¦æ× Ž & *ˆÖ G× ‚&(ˆ°Ì 8�L'ˆ°4e÷ ÌQ$ ô �BBâBä" ± üÿü× ÷ ¬ŒÉU@Ò °ðU€ Æe  Å"U%÷‹äþGæÎeÞþæfÇ.Ö … U¥… … … … U¥Ñ Bb‘â‹Ã 0Š æ*ˆ€�Ö BÃÅ.&0 æM &0 & Iš·”Ö%¯,÷‹0÷‹x·Šw6,wŠ�ɵ×ÿ·ŠÿöEÀ•ÁLÄH‰A÷‹G,(G%÷‹Båÿ4ÿ/dƒÿ\÷‹Øë,LÙñ¥ÿ‰‰°‰ÉÅ÷‹ ÉÉÕ Æ.pñ�ýÉÕV‰Á@£À@£‡æâ@‰ÅZÄj"$Z(jº(–Ãn ŠÂúÀ�êx¨ê>v.¶P³.n ú¨ê>v.¶ P"a,¶ ‰·ŠSÌ•ÿÿ:÷‹¨÷÷‹�óÌïÆh,ÚÌåŒ 퇓#ê(×­DûÿO×­<üÿK·Šè,þJü‰DD-YY HH:MM:SS:XX G*Š€ P[*8Šàx(v‹˜‹ÿm*\Ьžª��ä�¬‘f–h–€Šj–�2–:–Î’Ž“šv�Œ‘ô�º”Š8�šª’€‚¼’^ž^–ð•–æ•P¨ŠÐ˜è™Ÿ`‡ú�º�€�t’ž0žÄ¼ŠŸ–~šžpž|ƒ4““Z~®{“&Њº�È’È�  V €‹èŒKPŒRŒ*ŽŒ¶Îå¦Îer‡wï÷•ÿ±ýÆ”ý7 lü\,²Œ7 ~ü7 ¨üKOUS FILE. MOV R2,-(R6) ;FILE BLOCK MOV R1,-(R6) ;LINK BLOCK EMT 15 TST (R6)+ BLT BLDR09  ;SPACE AVAILABLE? CLR -(R6)  ;NO. MOV #ERR9,-(R6) ;FATAL ERROR. BR BLDR10 ; ;DETERMINE THE PHYSICAL STARTING BLOCK ;OF THE CONTIGUOUS FILE AND PLACE IT ;IN THE 1ST WORD OF THE OUTPUT TRAN BLOCK. BLDR09: MOV R2,-(R6) ;FILE BLOCK CLR -(R6) MOV R1,-(R6) ;LINK BLOCK EMT 14  ;.LOOK MOV (R6)+,@R3 ;STARTING BLOCK. CMP (R6)+,(R6)+ ;CORRECT STACK ;THE ONETOES R ;  R5  S RT 4 RRETOES R ; R4+,6)(R  V MO 3 RRETOES R ; R3+,6)(R  V MO 2 RRETOES R ; R2+,6)(R  V MO 1 RRETOES R ; R1+,6)(R  V MO S ESDRADN URET RHE TESAV SR5;  5 ,R)+R6 ( OV M: 16BRSU G:REET;S ERSTGIREE ID W -ORSSCERO PLETILAVOA S IR0;   S ERSTGIRET SEE INUTROUB S ;  RNTURE;  7 R TS R  R5K ACST;  ) R62(,1R5  V MO S ESDRADN URET RHE TCKTA S ; ) R6-(),R60( 1 OV M  R1K ACST;  ) ËÿMH ‰÷ š·Š ÷‹^÷¥ÿÿV·ŠñÀ,"÷�EùP‰ú ‰·ŠÙ‰Ó)‰&·ŠË®,FÍË• ‰·Š·‰ÌŒ Œ Sÿ¥,òž,jë‰ç·Šä‰ ·Š“Í×Ë•7 t7 n¤,ŽNS‹Š‹Š·bw¢÷‹…#÷%R²÷ –)æÖ Rt,²¦ˆ÷‹Œ÷­74æ’ˆ÷RŠ÷¸†0R$¸,Ö÷„h÷¥wN÷ X · T÷@7ŠÑ,ú�‰wªæTˆw LPQARDMBIH,NTU,EN7 †ü7 ´ü7 Dü7 Œü÷8ˆü7 @üæ Œ‹*ØŒæ!ˆæŽŒ& æ!ˆwôëæLüæFüˆ×­püu*üŒ÷­hüÒýL‰wÈøæ,üæ&üˆw&ù7 ¼üå* �7Š1ý7Š,ý7ŠÉû7ŠÏû7Šý7ŠÍû7Š·û7ŠÆû÷•X*D�%ý‰�&ÐRÐ æâûˆñµ@wû|*h�ñµ·Š{ûÄ• · ÚûQ$BB`@ KËåÌ*Œ�á• wªüÊ¥ ÷mºû²û2¡ÿÿŠ”2‘ÿÿ2‘9*°�·dü ¤þÀ  ·Š/û‰À�JüÀe÷‹„ü;*Ô�rwÎ÷‹vüð÷‹€ü·ŠûÀ éw&&å*ø�‰ ‰ÁfŠÂÃL‰Ö‹wnøÿÕüîµ*މ°·ŠÓúO CONTIGUOUS FILE WILL CONTAIN ;N OVERLAYS WITH EACH BEGINNING AT THE ;START OF A PHYSICAL BLOCK ON THE DEVICE ; MOV #OVRTAB,R0 BLDR07: MOV (R0)+,OVROSA ;MEMORY START ADDRESS BEQ BLDR05 ;TRAN OUT AN OVERLAY. ; MOV R3,-(R6) ;TRAN BLOCK MOV R1,-(R6) ;LINK BLOCK EMT 10 ;WAIT FOR COMPLETION OF TRANSFER ; MOV R1,-(R6) ;LINK BLOCK EMT WTCMD ;CHECK FOR ERROR ON TRANSFER ; BIT #140000,OVRERR BEQ BLDR06 ;ERROR ON TRANSFER MOV OVRERR,-(R6) ;PUSH STATUS BYTE R6-(1, R OV M  R2K ACST;  ) R6-(2, R OV M  R3K ACST;  ) R6-(3, R OV M  R4K ACST;  ) R6-(4, R OV M: 14BRSU G:REAV;S ERSTGIREE ID W -ORSSCERO PLETILAVOA S IR0;   S ERSTGIREE AV SNETIOUBRSU;  AL P GEPA . N URET RND ARSTEISEG RET SLLCA; EGPRPO  P RA T  NGKIAC PTERATEEI RE,OP N ; 00D4MO  E BL ? +6YMPSTM> 5 RIS; +6YMPSTM,#R5  P CM 3 5+ R =R5;  5 ,R#3  ¸ÿQEGxÈ,BðHxð\Mÿ,f€M8Ü€fy,Фx€Mô&µW,®4dô&µW4dô&µWö �,Òô&µW Nô&µWµz%p:,ö(( PAGE XXXXX MM-ŽDD-YY HH:MM:SS:XX œ 2¦,2€ P±,V ¶ÿRñÕÿ×-2ü¯·Š½ú8À ×­˜üþ*@Ž·Š©ú/Ë4ûÉÕ÷‹ýû ÉÕ ñ¥ÿS*dŽñ�ëûÉÕV‰×­bü ɵñ¥ÿáÙ*ˆŽñÕÿ‰ÞɵÖñ¥ÿôÿ-¬úÜúÎwÿ•*¬Ž÷‹¼û€ŠÀe ÷Š�û/÷‹¢û‰ ÷‹ˆûô*ÐŽõ·Š”û÷‹~ûðwDõ÷µ€û÷‹lû×-^új�~*ôŽã×-Vú~�ß Lú÷‹PûÙw\ø·ŠéùÀû ¶*�þÿ‡÷¼ú‰wöýw"íwîwVîwÖî÷Šûò\*<�wúîw˜ð÷múú÷Šûè‰÷Šúú÷‹û·Š¡ùe*`�ß÷êùðùÛQ$Q$Q$Q$Q$w6óQ$wjówÒówe*„�FôwTôwžôwŽðS BIC #377,@R6 ;INTO LOW INFO BYTE SWAB @R6  ;AND CLEAR THE REST. MOV #ERR8,-(R6) ;ERROR CODE BLDR10: IOT EMT 60  ;RETURN TO MONITOR BLDR06: ADD R5,@R3  ;CHANGE BLOCK NUMBER    ;IN TRAN BLOCK FOR BR BLDR07  ;NEXT OVERLAY TRANSFER ; ;ALL OVERLAYS HAVE BEEN TRAN'D OUT. ; BLDR05: MOV R1,-(R6) ;RELEASE THE EMT RLS  ;DATA SET ; ;RETURN TO THE MONITOR EMT 60 .PAGE PAL ;***** OVERLAYS BEGD AD 4 RNTMERENC I ;     ADRI TNTTAULES R =4)(RYMPSTM;  + 4)(R3, R OV M: 02D4MO ERCTRAHA CXTNES ESOCPR;  1 40OD M BR T ULES RALTIAR+PUM S =UM S ; R3+,6)(R  D AD 3 R SL A  TSBI2 T EF LUM SFTHI S ;  R3  L AS T ULES RALTIAR PVESA;  ) R6-(3, R OV M  R3  L AS 3 R SL A  TSBI3 T EF LUM SFTHI S ;  R3  L AS D TELEMPCOD IATR, PENO;  2 40OD M GE B  ?5 R  ¬+ ®) ´# µ" » ¼ È ¾ $² 4¢4¡Z Š7 Hø7 ^ø7 ^ø7ŠÎø‰!*‘÷ $ù‰÷‹QùÄî˜Ì ÷ ùÌ ·Š6ùÀ þ,:‘·ŠÁ÷>‰Ä%î˜éÄ%ž™Â’ ·Š¥÷KŠÄî˜^*`‘Ü*‰À�ù‡Å-Âø÷ ¼ø‹ŠÄˆ™ÏÀ 7 Ì÷U*„‘èÄ™Ç7Šáø· ªøÿ¥ ¤øÿ¥ œø‡·Š'*¨‘Çøò&‰Á_ŠÅ"Š É‹� 5À�¨ø   E*Ì‘ ¬^Š0Š^ŠÀ ŠÉ‹D‰� ÂRøÃÁ*ð‘PøT‰Í wcdø ÷µ`øñ÷U€B÷Ä�Tø„ §*’„ „ ÄEáÿ7‘Pø*‰À ‡Í èÂþöÃüöT‰À ÿ*8’ó  ÃÝ%øÃ¥ÿ à à à Áî÷ÁàÑ wÖ÷¶*\’wÔ÷ß×½ø@Û×½ø÷×ò[OV #TITLBF-BEGO01+BEGOVR,-(R6) MOV R2,-(R6) ;PRINT # EMT WRCMD CLR IDENT-O01 ;DON'T PRINT TITLE OR .INIT OVERLAY DEV. MOV R2,-(R6) EMT WTCMD MOV #CILB,-(R6) ;INIT COMMAND MOV @R6,R1  ;#CILB EMT INCMD  ;INPUT DEVICE MOV #CIFB,-(R6) ;OPEN COMMAND MOV R1,-(R6) ;INPUT FILE EMT OPN ;SET UP COMMAND INPUT BUFFER MOV #SIBUF2,R0 MOV R0,-(R6) MOV #SRCMAX,(R0)+ ;72(10) DATA BYTES. CLR (R0)+  ;FORMATTED ASCII ;READ COMMAND STRING MOV R1,-(  LGFFDE,#GSLATF TBBI  ET SOT NAGFLL OBGL;.  HIRCSE EQB G FLLB#GS,AGFLTB ITB: HKRCSE HIRCSE BR  ADRI TND;2 Y2BSGL),R1(V MO  ADRI TST;1 Y1BSGL+,1)(R OVM: HLRCSE D.OR WNE ONTMERENC;I  )+R1(T TS  8)D)(I-(E AS;B  R13,RB SU  LEAB TCTSE.CF OSEBA;1 ,ROPRTPE OVM ;  R3 SLA ;  R3 SLA S TEBY8 ) ID;(  R3 SLA L BOYM SEDINEF DLYIPLTMU; K CHERSQ BE  R3G,LADF#M PBCM  TELUSOABR OEDINEFND;U  HKRCSE EQB . GNSIE ATAGOPPRT N'DO;3 ,RIDCTCS SBBI  R3 LRC¬ÿ] nh nr pf po «+ ¬*,¬¶Îå¦Îe�ˆ‡wï÷•ÿ±ýÆ”ý7 lü  �ˆÈ.Ð7 ~ü7 ¨ü7 †ü7 ´ü7 Dü7 Œü÷8ˆü7 @üæ¾< (¾÷,öæ!ˆæ¬& æ!ˆwôëæLüæFüˆ×­pü&  ¬%,÷­hüÒýL‰wÈøæ,üæ&üˆw&ù7 ¼ü:,>7Š1ý7Š,ý7ŠÉû7ŠÏû7Šý7ŠÍû7Š·û7ŠÆû÷•®,b%ý‰�&ÐRÐ æâûˆñµ@wûÒ,†ñµ^&‰ÅbŠÄ`Š m,€’ B’ƒ`ŠE à à à æà à ƒeòÔÅeW!eŠž*¦’ë`‰&æ¦f¦v ‡…�‚ƒ„…Ö (*Ê’*‰‡&‰ÀZöÄáw Pö †‚დ· Bö[*î’ü‡7á<öæB!ˆÖ w.öÂ÷ · ÷‡7á÷[*“7álö€ ý†*‰ÀúöÈ@÷à"öà4÷à.÷‡€\*6“Àà€ 7 ö7 "÷÷ÔöÀ ‡ÀE€„à -úÿ Ð*Z“1-üÿ 7þÿèõ7úö€ 7ªöê‡ß0ñ*~“Äå!ׂ ×&‰Å<Š 7ŠÄöÄÊj*¢“ & ×¢ïÿÍÕ.‰ Á’W îÿ.‰_ ‰Î™*Æ“„õ0‰‰wîÂÝtõw²‰·Šõ2‰_R6) EMT RDCMD ;WAIT FOR INPUT WITH CLOSE AND RELEASE TRAP CLEAN BITB #47,SIBUF2+3-O01 BEQ CSIOKJ  ;TRANSFER ERROR? MOV SIBUF2+2-O01,-(R6) ;YES JMP ERRO3-O01 ;CALL COMMAND STRING INTERPRETER CSIOKJ: MOV #CMDBUF,-(R6) EMT 56 MOV (R6)+,R1 ;ADDR. OF DATA BYTE WHERE SCAN ENDED. BEQ CSIOK1  ;COMMAND SYNTACTICALLY CORRECT. CMPB (R1)+,(R1)+ ;INCREMENT BY TWO MOVB #13,@R1  ;VERTICAL TAB MOVB #77,-(R1) ;QUESTION MARK SUB R0,R1  ;PRINT COMMAND UP T  ST UINH TCMA; 0 RR CL J:CHER ST USN INDOU FCHAT;M  NDOU FOT NTECADIIN; I CHERSR B O TVETIGANEE AK;M  R0 ECD T USN INDOU FOT NCHAT;M  NDOU FCHAT;M  HJRCSE NEB H RCEA SRYNABI; H RCNSBI APTR  LEAB TOWEL BSSREDD AST;1 R3P,TOSRUV MO  SEBAE BLTA;2 ,ROPNTCO OVM: HERCSE E.BLTAL BOYM SERUSH RCEA;S  E.BLTAL BOYM;S  ERUSE THH RCEA STOE ER HESOM COLTRON;C  D,KEAC PDYEALR A+3YMPSTM, +1YMPSTMN IOLMBSY; E THH IT WCHARSEO TLLCAD ONEC S AON; . OLMBSYE ETPLOM CTHWI; ¨ÿa·Š{ûÄ• · ÚûQ$BB`@ KËå",ªá• wªüÊ¥ ÷mºû²û2¡ÿÿŠ”2‘ÿÿ2‘�,ηdü ¤þÀ  ·Š/û‰À�JüÀe÷‹„ü‘,òrwÎ÷‹vüð÷‹€ü·ŠûÀ éw&&;,‰ ‰Á„ÂÃjÖ‹wnøÿÕüîÀ„j¸,:‰°·ŠÓúñÕÿ×-2ü¯·Š½ú8À ×­˜üT,^·Š©ú/Ë4ûÉÕ÷‹ýû ÉÕ ñ¥ÿ©,‚ñ�ëûÉÕV‰×­bü ɵñ¥ÿá/,¦ñÕÿ‰ÞɵÖñ¥ÿôÿ-¬úÜúÎwÿë,Ê÷b·Š*ê“õ<  ÂÕ@0‰w2‰·ŠíôD·Šåô *”æW ÷ÿÎW øÿ µ ·ŠÃôÂÅ *2”ÂÕ ‚Õ÷‹ö ÷�öö÷¥óÿÈõ·Š£ô7ŠþõÒ*V”0‰.‰ ‰·Š�ô2‰‰ÐÈ·Š}ô‰ÐÍ*z”.‰Á’ ‰ÅÎÄôW îÿ"¦µ@6µw *ž”ðµwìµ€æ�³�Õi�Õ *”͵&÷‹õ#ÍÕÍÕÔ 7‘zõ÷‹tõP÷•Í*æ”Nõ-÷Fõ×­^õþÿ3÷ 8õ/ÍÕ0÷�Kõx* •Hõ7ŠEõ4‰áÍÕ7Ô 7‘8õ÷¥ÿÿ0õ€ÎïVôáK*.•÷‹"õ%÷‹õ$ÎoDôa÷òô�J‰ÄH‰–cO  ;ERROR DATA BYTE FOLLOWED BY ? VT. MOV R1,@R0 MOV #SIBUF2,-(R6) MOV R2,-(R6) EMT WRCMD BR CSIOK2  ;PRINT # AGAIN. ;CLOSE AND RELEASE COMMAND ;OUTPUT DEVICE CSIOK1: MOV R2,R1 TRAP CLEAN CLR COFLAG-O01 ;FOR ^C BEGIN & RESTART CLRB FRCABS-O01 ;DON'T FORCE @#A FOR A MOVB #2,MAXPASS-O01 ;DEFAULT # OF PASSES. ;SOURCE INPUT ONE CLR CMDBUF-O01 ;INPUT FILE CLR SIFB2-O01 ;DEFAULT CLR SIFB2+2-O01 ;FILENAME. CLRB SICNT-O01 ;ONE INPUT. MOV   T US& T PSH RCEA-S--ES;Y  HHRCSE NEB ? EDBLNA EMDTCBYS ;I  R5@T TS G:CHER ST PSN INDOU FOT NCHAT;M  R7 TSR 0 RT TS  EGTRSE APTR I:CHER S. EXND ISSLA;C SSLAIC4,RB OVM N IOCTRUSTINE AV;S R41,7477#1 ICB 4 RR AS  R4 SRA 4 RR AS  R4S,AGFLTB OVM: HFRCSE ORATICND ITEBYT SE;Y ITNTUA,Q000010#S BI  NO; 3 CHERSQ BE  D?LEABENE YT BICONEMMN;S AGFL,TLGTFBY#B ITB 0 D=CMYT;B  R5@R CL  T.ANSTON C40OD MVETIECFF;E     HE+TD2IATR2=ADRI;T     'BD TELEDE¤ÿe‹¼û€ŠÀe ÷Š�û/÷‹¢û‰ ÷‹ˆûJ,îõ·Š”û÷‹~ûðwDõ÷µ€û÷‹lû×-^úˆ/ &ˆ,,ã×-Vúœß Lú÷‹PûÙw\ø·ŠéùÀû f  œ4,6þÿ‡÷¼ú‰wöýw"íwîwVîwÖî÷Šûò²,Zwúîw˜ð÷múú÷Šûè‰÷Šúú÷‹û·Š¡ù»,~ß÷êùðùÛQ$Q$Q$Q$Q$w6óQ$wjówÒów»,¢FôwTôwžôwŽð7 Äù÷ÿÿÀùÁ÷¸ù÷ÿÿ´ù.,Æ»÷®ù¸@‰7ŠGùwfÿ÷Äùúÿ5¼ù¿ ¶ùÇ,ê· ú·Š)ù7‹“ú&‰À•Á ùÄH‰*‰‰÷•f*R•÷•àô÷•ØôJ‰ƒÄ·ôÁÂôÂÀôH‰*v• ô· ¼ôÄ�Ôô´Ú‰÷eÄôÍÕÍÕ Œ*š•4‰ÃŠÖ Â5ÿ·ŠGó·Š®ô0‰×­¦ô·Š*¾•3ó*‰÷Š˜ô‡Í Í Í Í Í Í .‰7Šzô7 Tô7 Rô *â•w¼ý¦�ÎEøÿ�Õ‡æ×¢ýÿ×¢ûÿ×¢üÿ—*–Î Î Ö ‡Â& ×¢óÿ×¢ôÿЊŽ ‚ŠÂ¸**–ÂÕ€Ö ‡ ÀÝLóÀó ÷‹ ôÀ *N–·Š¥ò7 öò‡À€‡‰÷ ЇÀ À € &‰Á4*r–7Š÷ó7Š ó ÅL‰ÄP‰Ã>Š7ŠÈó Š7Š~óŠ{*––÷‹Ðó 7ŠÊó÷‹Äó4·ŠÃó÷‹±óu\Ë ‰YÀ�Rg#BLOCK4-BEGO01+BEGOVR,R1 ;CSI BLOCK ADDRESS TRAP CSICHK BEQ CSIOKD  ;NUL FIELD BGT CSIOKA CLR R4  ;NOT PARAMETER FILE. CSIOKA: MOVB R4,PAPASS-O01 ;NON-0 INDICATES PAR. FILE. MOV R5,SITAP1-O01 ;# OF TAPES. MOV R5,SITAPE-O01 TST R3 BEQ CSIOKB  ;ANOTHER INPUT FILE. CSIOKG: MOV SIFB1-O01,SIFB2-O01 ;FOR CSICHK DEFAULT MOV SIFB1+2-O01,SIFB2+2-O01 ;FILENAME BR CSIOKC ;SOURCE INPUT TWO CSIOKB: MOV #BLOCK5-BEGO01+BEGOVR,R1 TRAP CSICHK BEQ CSE THE ACPLRE;3 M+SYMP,TR5@D AD H:CHER SO ;N  HFRCSE EQB ? EDBLNA EMDTCBYS ;I  R5@T TS  ST PIND UNFOH TCMA; D UNFOT NOH TCMA; G CHERSQ BE  CHARSEY ARIN;B  CHSRINBP RAT E BLTAW LOBES ESDRADT 1S;3 ,ROPRTPE OVM E AS BLEAB;T R2T,BOERPV MO 3:CHER SE BLTAL BOYM SNTNEMAER PCHARSE; S ESDRAD) (0YMPSTM= 1 R ;  R1  C IN : 04D4MO HBRCSE  P RA T  04D4MO  Q BE  ?0 = ) (0YMPSTMS I ;  R1 @ TBTS : 40OD MS ESDRADY OREM MDD O  ;    ANT ABE ÿi?.yú‡ÍŸFú‡×¯@ú`ÿ¥ 6úÿ•?.ú‡Âj€ (jM,4�ÃB ÷ "ùæbˆ€ ÷ Fù攈€ Bb"”?,XÀ ñµ@ëÿ ñÅ@ëÿfêÿÎEÿÎæ‚w@üE,|B‰ÁåÀ�Ñ K‰€¦¢·Ðù‡&‰|, À ùÀå&$&`  Šæ2ˆæ2ˆ7 £2"2)0Ä~ù`‰Àmvùà• 7 nùû‚‡É fˆfˆ‡óöüÿ (ö»,ìfˆæfˆ3 üÿæfˆ‡&‰Å}wBùŠ k j*º–XóÀe2Àe9ÀeÀe, úÿÀef*Þ– Àe÷•–òâ6‰àÀ ‹ ÌžÀ Å*—‹ ÷žEò‹ 7ŠVó *Á‹6‰ŠŠ�ŠÀ Ð.*&—ÆÁ5ÿÁ5ÿ 6‰‹ ¬·�Äñ÷¥ óØ*J—·Š§ñ÷‹Àò÷­ºòùò÷•þÿòò*‰÷‹ó‡·ŠÿòI*n—÷‹öò*‰ ÷µæò÷•Þò‰‰·Šù*’—qñÂU�À�ÉòÀ¥ÿ·ŠQñÂUÀ�¶òÀµ@ À,¶—ÀµêÀµ÷•¼ñÁ‹6‰&‰€�Á��òÀ xÜ—*Ü—è—F˜z˜˜˜¨˜À˜÷‹|ò*÷‹bòÁµ Áµ!Ï*˜Áµ@÷‹JòI÷•ÿÿBò=÷‹úñ÷�Iòòñ÷­“*kIOKG  ;NULL FIELD TST R3   BNE CSIOKH  ;TOO MANY INPUTS? CLR -(R6)  ;YES MOV #ERR6,-(R6) JMP ERROUT-O01 CSIOKH: MOV R5,SITAP2-O01 ;# OF TAPES INCB SICNT-O01  ;TWO SOURCE FILES ;BINARY OUTPUT CSIOKC: MOV #2,CMDBUF-O01 ;GET OUTPUT SPEC. MOV #BLOCK1-BEGO01+BEGOVR,R1 ;CSI BLOCK ADDRESS TRAP CSICHK BGE CSIOK3  ;>0=PASS SPECIFIED. MOV #2,R4  ;PASS 2 DEFAULT CSIOK3: MOVB R4,BOPASS-O01 ;0=NO BINARY TST R3 BEQ CSIOK4  ;MORE OUTPUT FILET US M0)M(SYMP T  ;    ADRI TNDCOSE= ) ,4(3YMPSTM  ;    D IATR STIR F =2)1,M(SYMP T  ;    0 +0)M(SYMP TT PUUT O ;    NGKIAC PIDVO AENTH  ;    0 = ) (0YMPSTMF I  ;    SSREDD A0)M(SYMP T =R1 T PUIN;    6 ARCH+ 0 *4R5HA C +*20**4R4HA C =  ;   3 ARCH+ 0 *4R2HA C +*20**4R1HA C =EDCKPA;   R KEAC P40OD MNETIOUBRSUN PE O ; : H1RCSE NTTANSCO' 'B0 D4MO;     E IVCTFEEFE TH= D CMYT B ; 5 @Rœÿm}D, ŠÄ¼ 7ŠnùÆ Š7 Hø7 ^ø7 ^ø7ŠÎø‰, ¼ †\,4÷ $ù‰÷‹QùÄ Ì ÷ ùÌ ·Š6ùÀ ®  ².X·ŠÁ÷>‰Ä% éÄ%¼ Â’Â ·Š¥÷KŠÄ à ¼ ( h,~Ü*‰À�ù‡Å-Âø÷ ¼ø‹ŠÄ¦ ÏÀ 7 Ì÷ ¦ ,¢èÄ" Ç7Šáø· ªøÿ¥ ¤øÿ¥ œø‡·ŠØ " ¦,ÆÇøò&‰Á}Å@ É‹� 5À�¨ø   Q }@ð,ê ¬|0Š|À 4É‹D‰� ÂRn$˜Aòêñ:·Š&ò Áµ 4ÁµÁµ@. c$÷‹ *H˜òÁµÁµ@#Áµ ÷­°ñò÷‹êñõ*l˜÷Šäñ7Šœñ ã  S÷‹èñÁµ Áµ *‰‹*�˜ŠAŠwüýL Cï*‰·ŠQðwþÄþ_ÆþÍÄþÇ*´˜ß Âþê· Eðç_ÄþÀþøÍÄþß·ŠðÂU,ؘ‡*/#@% ()"'+-!&; ,:=8‰Àìÿ7ñs¬î˜-*þ˜p€ ø8‰ Ì‹òÀ× 0× 9 Ã¥.çf*"™ÌÕ€÷ÅÕï& ÃEðÿE¦ÅEÿÎEÿÉ Ê ¦e*F™É É É`Ê Ê Še Ê` ÃE÷СïÌÐ&“ÎE�ÿŽUë*j™ÌÕp̵ˆ…�wÒïV/·Š}ï,8‰€ × *Ž™0oS. CLRB LOPASS-O01 ;NO MORE OUTPUT FILES. CSIOK6: CLRB STPASS-O01  ;ZEROING THEIR PASS BR CSIOK8  ;BYTE PROHIBITS OUTPUT ;1ST INPUT FIELD WAS NULL. CSIOKD: TST R3 BNE CSIOKE  ;OK IF NO MORE INPUTS CSIOKF: CLR -(R6) MOV #ERR7,-(R6) ;INPUT FILE MISSING JMP ERROUT-O01 CSIOKE: MOV #2,CMDBUF-O01 ;CHECK OUTPUTS. MOV #BLOCK1-BEGO01+BEGOVR,R1 TRAP CSICHK BNE CSIOKF  ;ERROR IF OUTPUT EXISTS. TST R3 BEQ CSIOKF  ;ERROR IF OUTPUT EXISTS. JMP RCSI ),R0N(COYT B OV M  *2R0= 0 R ;  R0  L AS . ARCHT AS LHE TUT ONKLA B ; ) R01(M-SYMP T RBCL D ANMMCOE YT B ALYALTIENOT PS,YE;    D LEABIS DNDMAOM CTEBY, PENO;  1 CHER S NE B  ?B' ' AR.HA CSTLAS I ; #2),R01(M-SYMP T PBCM D LEABIS DNDMAOM CTEBY, PENO;  1 CHER S LE B  ?S.ARCH3 N HA TREMOE ERTHE AR;  3 ,#R0  B MP C  EDBLSADID ANMMCOE YT BE,OP N ; H1RCSE  E BG ? . RSHA C 6ANTHS ES LREHE TRE A ; #60, R PBCM˜ÿqøÃ( ||4S,PøT‰Í wcdø ÷µ`øñ÷U€B÷Ä�Tø„ ü,2„ „ ÄEáÿ7‘Pø*‰À ‡Í èÂþöÃüöT‰À U,Vó  ÃÝ%øÃ¥ÿ à à à Áî÷ÁàÑ wÖ÷ ,zwÔ÷ß×½ø@Û×½ø÷×ò&‰Å€Ä~ y €$~‡.ž B’ƒ`ŠE à à à æà à ƒeòÔÅeW!ƒO (ƒ4,Äë`‰&æ¦f¦v ‡…�‚ƒ„…Ö ~,è*‰‡&‰ÀZöÄáw Pö †‚დ· Bö±, ü‡7á<öæB!ˆÖ w.öÂ÷ · ÷‡7r× 9Ãå8‰€ Ã¥$Ãå Ã¥.©*²™ò× A¦× Z × a × z�ÃÅ ÿ�jðÃE¦*Ö™Àÿÿ�Tð· Pð*‰7�ƒð‡€&‰&ÀÁj‰Ân‰x*ú™ÃŸ@ðÄ≇#‘ËÅøËÕ0„ ÄE€„ „  ô‡S*š&‰ÅðwRU%f ÷-$ï*ïÄÕ• Ä ü!*Bš æï·ïfÅeõ•*ýÿæ"ˆwÂïDÔ ²*fšÀ‰ ÂîˆÊ ŠÃD!†•œÒ— ‰”*Ššó‡÷`˜ï÷�rîÅeÄäîCÂ÷‹¨ï· ]*®š¢î-$‰‰À܉ÅeC”ÄE÷‹ƒï y*ÒšÀ ÷Švï$‰÷ |î· lî÷ŠfïÃ(ïƒ Ë• �*öšÃe÷ïË•s ;PRINT # AGAIN. CSIOK4: ;LISTING OUTPUT MOV #BLOCK2-BEGO01+BEGOVR,R1 ;CSI BLOCK ADDRESS TRAP CSICHK BGE CSIOK5 MOV #2,R4  ;PASS 2 DEFAULT CSIOK5: MOVB R4,LOPASS-O01 TST R3 BNE CSIOK6  ;NO MORE OUTPUT FILES. ;SYMBOL TABLE OUTPUT MOV #BLOCK3-BEGO01+BEGOVR,R1 ;CSI BLOCK ADDRESS. TRAP CSICHK BGE CSIOK7 MOV #1,R4  ;PASS 1 DEFAULT CSIOK7: MOVB R4,STPASS-O01 TST R3 BNE CSIOK8 CLR -(R6)  ;TOO MANY OUTPUT FILES. MOV #ERR5,-(R6) JMP  T UNCO. ARCHS L'BOYM S =R0;  0 ,RARCHNT C VBMO 0:CHER SN IOATOGRRTEIND ANMMCOE YT B ;    ST UOFG INCHARSEE ATTINI I ; HERCSE  R B  R1T ENEMCRIN;   1 R NC I  EDCKPAY ADREAL;     T YED KEAC POT N ; H0RCSE  E BN ? 0 =0)M(SYMP TIS;     ? EDCKPAY ADREALL BOYM SIS;   1 @R  B ST T  0 =MDTCBY;   5 @R  R CL S ESDRADD CMYT B =R5;  5 ,RMDTCBY # OV M  SSREDD A0)M(SYMP T =R1;  1 ,RYMPS”ÿuá÷°,07álö€ ý†*‰ÀúöÈ@÷à"öà4÷à.÷‡€²,TÀà€ 7 ö7 "÷÷ÔöÀ ‡ÀE€„à -úÿ &,x1-üÿ 7þÿèõ7úö€ 7ªöê‡ß0G,œÄå!ׂ ×&‰ÅZ 7ŠÄöÄÃ2vZ&2ÿ,À & ×¢ïÿÍÕ.‰ Á’W îÿ.‰_ ‰Îï,ä„õ0‰‰wîÂÝtõw²‰·Šõ2‰·Šg,õ<  ÂÕ@0‰w2‰·ŠíôD·Šåôõ,,æW ÷ÿÎW øÿ µ ·ŠÃôÂÅa,PÂÕ ‚Õ÷‹ö ÷�öö÷¥óÿÈv ã• Üw8Ãïã• ƒ Ë• ,*›÷\øîƒãà Þ÷­®ï"îí÷ î÷ $î ÁD‰�*>›Ã¶‰b‰÷•  î÷ L÷• –î÷‹âîW£ Õ‹”.b›M•Å u™æ Îež Í•'æ÷ ÜíÖ ÁæD‰g*Š›ˆ÷-ÂíÆíº÷ ·æ¶íæó‰æ"ˆÃó‰Ë¥ž*®›0Ó• ú· ˜í7 ’íæD!ˆƒ‚C   Àv*Ò›ÁÀKw ¨Š Áw œŠÁ<w ’ ŠÄš.ö›w ž ŠæC!ˆƒ Ãåè‚ û ·œ�çí·œ�âí�*œÃeè‚ Âe& Â5Ž ·c| í°œÄes*BœÄ%øÄåm°œ„ Äå ÷• ›íÄe:7‘”íg*fœ÷•1‹íÄe0wERROUT-O01 ;INITIALIZE UNDEF SYMBOL PASS TO 1 ;AND ERROR PASS TO 0 CSIOK8: MOV #400,OPTIONS-O01 ;ERROR LINES TO COMMAND OUTPUT ;DEVICE DURING FINAL PASS IF ;NO LISTING PASS. TSTB LOPASS-O01 BNE CSIOK9 MOVB MAXPASS-O01,ERPASS-O01 ;NO LST PASS. CSIOK9: MOVB #1,PASS-O01 ;EFFECTIVE PASS=1 ;IS THERE A 2ND INPUT DATA SET TSTB SICNT-O01 BEQ FREE  ;NO ;.INIT SOURCE INPUT DEVICE TWO MOV #SILB2,-(R6) EMT INCMD ;OPEN SOURCE INPUT FILE TWO MOV #MISS1-TM # OV M  RSTEISEG RVESAL AL C ; G REAV S APTR 4:R0UB S: CHARSE ;0 = D TISCC  ;  0 =GSLATF   ; 0 = Y ITNTUAQ  ;  EDERNT EBED ULHO S    ; L BOYM SREWHY TREN    ;  OFS ESDRADT ESGHHI= X DEINH  ;  D:UNFOT NOF I  ;  EXND IPETYN IOCTRUNT I =SSLAIC   ; T PSN INDOU FIF   ; N IOCTSEL RONTCO= 2 SYLBG  ;  'SOLMBSYF OMENA0 D4MO= 1 SYLBG  ;  LEABATOCEL REDINEF DND AST UIND UNFOF I  ;  BLLO.GL NAERXT E =Y2BSGL   ; F OMENA0 D4MO= �ÿyõ·Š£ô7Šþõ(,t0‰.‰ ‰·Š�ô2‰‰ÐÈ·Š}ô‰Ð#,˜.‰Á’ ‰ÅÎÄôW îÿ"¦µ@6µwc,¼ðµwìµ€æ�³�Õi�Õ i,à͵&÷‹õ#ÍÕÍÕÔ 7‘zõ÷‹tõP÷•#,Nõ-÷Fõ×­^õþÿ3÷ 8õ/ÍÕ0÷�KõÍ,(Hõ7ŠEõ4‰áÍÕ7Ô 7‘8õ÷¥ÿÿ0õ€ÎïVôá¡,L÷‹"õ%÷‹õ$ÎoDôa÷òô�J‰ÄH‰ì,p÷•àô÷•ØôJ‰ƒÄ·ôÁÂôÂÀôH‰],” ô· ¼ôÄ�Ôô´ø÷eÄôÍÕÍÕ =z7‘„íà ÷Æœ~í·å0Z Cà‚ p*Šœà„ úC`B `&æ2�æ"ˆDÔ�‹Ô�ˆô*®œ…0102030405ª*Òœ060708091011121314151617181920212223D*öœ242526272829303170717273747576777879Ö,�8081828384858687888990æ䉿D‰F*@�ˆ‡7Šòì7 í÷ ì7 ì÷‹¬ë÷­xítíQ*d�÷äì¼ì÷e¨ì7Š’ë`‰&‰Ä܉ ‰æ�Ìì÷‹ãì*ˆ� —".‹÷‹žì΋4΋/÷%*M*¬�¨îW HŒ†÷‹€ì%&:‰w.÷%TîæŒZ*Ð�æb‰ˆæÚŠæb‰ˆæb‰{BEGO01+BEGOVR,SIFB2-4-O01 ;SET UP ERROR RETURN. MISS2: MOV #SIFB2,-(R6) MOV #SILB2,-(R6) EMT OPN CLR SIFB2-4-O01 ;GET MONITOR HANDLE ERRORS. ;.INIT SOURCE INPUT DEVICE ONE FREE: MOV #SILB1,R1 MOV R1,-(R6) EMT INCMD ;.OPEN SOURCE INPUT FILE ONE MOV #MISS3-BEGO01+BEGOVR,SIFB1-4-O01 ;SET UP ERROR RETURN MISS4: MOV #SIFB1,-(R6) MOV @R6,SIFB-O01 ;PROCESS FILE ONE FIRST MOV R1,-(R6) EMT OPN CLR SIFB1-4-O01 ;LET MONITOR HANDLE ERRORS ;PROCESS FILE ON1 SYLBG  ;  BLLO.GD NEFIDEUND ANT USN INDOU FIF   ; E YT BIDN IOCTSEL RONTCO= D TISCC  ;  TEBYG LA F =GSLATF   ; E LUVA= Y ITNTUAQ  ;  RYNT EOFS ESDRADT ESGHHI= X DEINH  ;  D:UNFOF I   ;  NDOU FOT N0 0<R  ;  ST UIND UNFO =0R0   ; T PSN INDOU F0 0>R  ;  ESOD CONTIDION CHE TTSSE0 R: UTTPOU  ; E BLTAL BOYM SP.EMT: UTNPI ;  ; . CHSRIN BNGZILITI UEDCHARSE; S ILYONT USE TH, OLMBSYD KEAC PDYEALR;A  ANR FOH RCEA STOY TREND 2NE THN ;O Œÿ} øÖ,¸4‰Ã2Ö Â5ÿ·ŠGó·Š®ô0‰×­¦ô·Š¸ 2¥,Ü3ó*‰÷Š˜ô‡Í Í Í Í Í Í .‰7Šzô7 Tô7 Rô_,w¼ý¦�ÎEøÿ�Õ‡æ×¢ýÿ×¢ûÿ×¢üÿì,$Î Î Ö ‡Â& ×¢óÿ×¢ôÿЊŽ ‚ŠÂ,HÂÕ€Ö ‡ ÀÝLóÀó ÷‹ ôÀ q,l·Š¥ò7 öò‡À€‡‰÷ ЇÀ À € &‰ÁŠ,�7Š÷ó7Š ó ÅjÄnÃ\7ŠÈó Š7Š~óŠâjn\E,´÷‹Ðó 7ŠÊó÷‹Äó4·ŠÃó÷‹±óu\Ë ‰YÀ�¨¡ˆ,‰÷%hîN‰@d*ô�‰÷‹qì÷‹:ìÐ,‰Ö `‰� Š ŽŠ“&•‹eÀ†*ž&‰ÁRŒÑ3ÑÑÑì`‰&‰Å� îaw‘ît*<žáÅeXŒÄå UÄå•ÄåÕ`‰÷µE*`ž@µíήíwâñ‡&‰÷ÀëÄJ‰Á°ëÂ&*„ž®ëÃÂêÀÕ€ÄH‰·Š¢ë`‰æRŒæb‰ˆæb‰á.¨žˆ‡ÅÒêʌÁŒæPŒÀ ÷lëF‰ÀŒù*ОÐ5ÐÐÐÐÐPŠ ýK�®*ôžKcËe�b€‡À�íÀåa7�+ëÀ&뇋b �ŸÉ’·üì· øì÷­²ëDêÎe‡H¤ŒÉE FIRST MOV R1,SILB-O01 ;OBTAIN 1ST FREE ADDRESS ABOVE ;FULL MONITOR MOV #102,-(R6) EMT 41 ADD #STKSIZ,@R6 ;ADD STACK SIZE MOV (R6)+,R6 ;TO IT AND RESET MOV R6,STKBOT-O01 ;STACK POINTER AND BASE CLRB CNSTLV-O01 ;CLEAR CONDITIONAL ASSEMBLY COUNTERS CLRB DNTACT-O01 .PAGE PAL ;SYMBOL TABLE INITIALIZATION ;CLEAR ALL HAS BEEN RE-DEFINED FLAGS ;(BIT 1 OF HIGHEST WORD OF THE ENTRY) ;IN THE PE€ PAL  ; SUBROUTINE SYNTAX ANALYSIS   ; THIS SUBROUTINE TRANSLATES SOURCE CODED ADDRESSING   ; FIELDS TO MDR FORMATTED OBJECT FIELDS. UPON   ; RETURNING, THE CALLING ROUTINE MAY ASSUME   ; THAT THE COMMENTS FIELD HAS APPEARED.    ; INPUT NONE    ; OUTPUT BYTES ALLOCATED TO THE COMMAND    ;  CONDITION CODED RESULTS    ;  < 0, NO FIELDS FOUND    ;  = 0, ONE FIELD FO�,ØXóÀe2Àe9ÀeÀe, úÿÀe¼,ü Àe÷•–òâ6‰àÀ ‹ ÌžÀ , ‹ ÷žEò‹ 7ŠVó *Á‹6‰ŠŠ�ŠÀ Є,DÆÁ5ÿÁ5ÿ 6‰‹ ¬·�Äñ÷¥ ó.,h·Š§ñ÷‹Àò÷­ºòùò÷•þÿòò*‰÷‹ó‡·ŠÿòŸ,Œ÷‹öò*‰ ÷µæò÷•Þò‰‰·ŠO,°qñÂU�À�ÉòÀ¥ÿ·ŠQñÂUÀ�¶òÀµ@ .ÔÀµêÀµ÷•¼ñÁ‹6‰&‰€�Á��òÀ xú± (ú°,úd˜¶ÆÞ÷‹|ò*÷‹b Y.ARSSCENEF IST UHE TENTHD ANT PS; E THG INCHARSET RSFI, LYALRMNOS ESOCPR, OLMBSYE YP TB' ' AOT NIF; AL P ;E OVAB. 1ASS ESOCPRN HE TOT NIF B.; . RNTURED ANY ITNTUA QINT BI ; R TOCADIINE YT BHE TET SENTH, ET SIF A.; . AGFLG INBLNA ETEBYS L'BOYM S ;  HE TCKHE CENTH, ST PHE TIN ; D UNFOS IOLMBSYD TEIAEVBRABE THF I. ;2  T.USE THY ARSSCENEF IND AST P ;  E THH RCEA SSTIR F. OLMBSYL TATO ; E THR FOG ˆÿƒRMANENT SYMBOL TABLE. ; STINIT: MOV PERBOT-O01,R0 ;ADDRESS (HIGHEST) OF 1ST ENTRY. MOV PERTOP-O01,R1 ;ADDRESS OF 1ST (LOWER) FREE REGISTER. STINI1: CMP R0,R1 BEQ STINI0  ;DONE WHEN MATCH. BIC #REDEF,@R0 ;CLEAR RE-DEFINED BIT. SUB #10,R0  ;DECREMENT POINTER BY 4 WORDS. BR STINI1 ;INITIALIZE THE 1ST CONTROL SECTION ENTRY: ;THE ENTRY IS 4 WORDS OF 0 (THE UNNAMED ;CONTROL SECTION). ;CONTOP=C(PERTOP)-4 (WORDS) STINI0: CLR @R1  ;CLEAR CLR -(R1)  ;FOUR „UND    ;  > 0, TWO FIELDS FOUND     ; IF MORE THAN TWO FIELDS     ; ARE FOUND, I QUIT !    ; COMPUTER ADDRESSING MODES REGMODE =  00   ; REGISTER INCMODE =  20   ; AUTO-INCREMENT DECMODE =  40   ; AUTO-DECREMENT INDMODE =  60   ; INDEX    ; SOFTWARE IMPLEMENTED MODES AINCR7  =  27   ; IMMEDIATE INDR7  =  67   ; DIRECT MEMORY    ; SYNTAX DIRECT ASSIGNMENTS DEFER…òÁµ Áµ!Fd˜ ¶ ÆÞ‹,Áµ@÷‹JòI÷•ÿÿBò=÷‹úñ÷�Iòòñ÷­é,BAòêñ:·Š&ò Áµ 4ÁµÁµ@. c$÷‹v,fòÁµÁµ@#Áµ ÷­°ñò÷‹êñK,Š÷Šäñ7Šœñ ã  S÷‹èñÁµ Áµ *‰á,®ŠAŠwüýL Cï*‰·ŠQðwþÄþ_ÆþÍÄþ,Òß Âþê· Eðç_ÄþÀþøÍÄþß·ŠðÂU].ö‡*/#@% ()"'+-!&; ,:=8‰Àìÿ7ñs¬ Ý ( œ, p€ ø8‰ Ì‹òÀ× 0× 9INCHARSEE ATTINI IND A ;  K ACEP RR,TEACARCH' 'BE THE ACPLRE ; N HE TD,UNFOT NOS IOLMBSYS HI TIF .);1  OLMBSYD TEIAEVBRAB; S HI TOR FST PHE TCHARSE; N HE TB' 'HE TUTHOIT WRSTEACARCHK AC;P  S.URCC ONGSIESOCPRL IAECSP; N HE TB' ' AISR TEACARCHT AS LHE TIFD AN; S ERCTRAHA C 5OR4 S SEESSSPOL BOYM SHE TIF; : CELA PESAK TNGWILOOL FHE TL,BOYM;S  AOR FCHARSEO TRYNT EST 1HE TON; ;  H.RCNSBIE INUTROUB;S  EDOSCLE THY BEDRMFOER PUEIQCNTE; H RCEA SRYNABIE THG INIZILUT; D HERCEA‚ÿ‡ CLR -(R1)  ;WORD CLR -(R1)  ;ENTRY. CLR -(R1)  ;JUST TO DECREMENT R1 MOV R1,CONTOP-O01 ; ;INITIALIZE TOP OF UST TO TOP OF CONTROL ;SECTION AREA. MOV R1,USRTOP-O01 ; ;ENTER THE USER PC SYMBOL . INTO ;THE UST. MOV R1,HINDEX-O01 ;HIGHEST ADDRESS OF SLOT. MOV #127400,TMPSYM+1-O01 ;1ST TRIAD CLR TMPSYM+3-O01 ;2ND TRIAD TRAP ENTER MOV R1,HUSERPC-O01 ;HIGHEST ADDRESS OF USER PC ENTRY TST -(R1)  ;ADDRESS OF VALUE WORD MOV R1,USERPC-O01 ˆD  =  10   ; DEFERD ADDRESSING BIT PSEEN  =  200   ; PARENTHESES SEEN BIT ASEEN  =  100   ; ADDRESS SEEN BIT OPSEEN  =  040   ; OPERATOR SEEN BIT AUTOINC =  020   ; AUTO-INCREMENT BIT AUTODEC =  010   ; AUTO-DECREMENT BIT INCDEC  =  030   ; INCREMENT-DECREMENT BITS ;SYNTAX: SUBR07: TRAP  SAVREG ; CALL SAVE REGISTERS  MOV  #COMAND,R5  ; R5 = COMAND ADDRESS  CLR  @R5   ; COMAND = 0 ‰ Ã¥.ç»,@ ÌÕ€÷ÅÕï& ÃEðÿE¦ÅEÿÎEÿÉ Ê ¦»,d É É É`Ê Ê Še Ê` ÃE÷СïÌÐ&“ÎE�ÿŽUA,ˆ ÌÕp̵ˆ…�wÒïV/·Š}ï,8‰€ × \,¬ 0× 9Ãå8‰€ Ã¥$Ãå Ã¥.ÿ,Ð ò× A¦× Z × a × z�ÃÅ ÿ�jðÃEü,ô Àÿÿ�Tð· Pð*‰7�ƒð‡€&‰&ÀÁˆÂŒ„"ˆ&Œo,!ß@ðć#‘ËÅøËÕ0„ ÄE€„ „  ô‡  Õ,‰�ˆæŠfˆÀÆ‹&ÐR fˆ^‰v*py÷µ'SæLwìæ¸‹.ˆ� Q¤É• á•?'*”yàHæÆ‹¦ˆÎ�^‰7 ²7Ši÷•[7 2*¸y7 7 7ŠwÁ`|\‰2 7‘ˆw†w~'*Üyà ÷Üè÷ØäÁh|\‰õà & æ…”*zwÄwl·Š/÷¦ÁH|\‰Ä7‘~à D*$z7ŠX7І+à & æ†wŠ÷tÁH|©*Hz\‰ôà òwÔþÁP|\‰Ä7‘à áÁX|t*lz\‰Ä7‘<à & æ„wB÷€÷‹ò¥*�z÷�SEBA;  0 E1AS B LR C  0 =08SEBA;  8 E0AS B LR C  0 =TYTIANQU;  Y ITNTUA Q LR C  DECOR BEUM NIDAL V =PETY I ;  R3 @ RBCL S ESDRADS PETYM TE I =R3;  3 ,RPETY#I  V MO 0 = R HATCCN;  R HATCCN  B LR C  NETIOU RONTICAFITIENID;     R TEACARCHT RSFIE THO NT I ;     SSREDD ANTOI PRYNT E =R4;  4 ,RARCH#F  V MO S ESDRAD) (6YMPSTM= 5 R ;     NKLA B =5) (YMPSTM;  + 5)(R  B LR C  KSANBL= Vÿ³ ONE .WORD SILB1 .WORD SIFB1 .RAD50 /PAL/  ;DEFAULT EXT ; PAL BLOCK5: .WORD CMDBUF  ;SOURCE INPUT TWO .WORD SILB2 .WORD SIFB2 .RAD50 /PAL/ .EVEN .PAGE PAL TITLBUF: .WORD 20 ;MAX BC .WORD 0  ;FORMATTED ASCII  .WORD 20 ;BC .BYTE CR,LF .ASCII /PAL11R V004C/ ; TITLE LINE FOR PAL PAL .B´RETURN  TRAP  FLDEND ; DETERMINE FIELD TERMINATION  BGE  SYNT0B  ; THE FIELD HAS TERMINATED     ; ACTUAL MODE YET UNKNOWN  TRAP  NEXTERM ; CALL FOR THE NEXT TERMINATOR  CLR  R0   ; R0 = 0  TRAP  EXPE1 ; CALL EXPRESSION EVALUATION  BGT  SYNT08  ; EXPRESSION WAS NON-VOID  INCB  QERROR  ; EXPRESSION WAS VOID SYNT08: TRAP  PARSEP ; CALL PARENTHESES SEPARATOR     ; THE FIELD HAS TERMINATED    µyt÷•p÷‹™ æh‰ˆ÷>{æΉ%*´zæh‰ˆ7 ÁR‰fˆ÷P{ðæÀ‰·žfˆy*Øz7 àw�æB!ˆÎeȆ·t7Š™7Š–Àz4*üzÁx ÈEÀåù ! ! ! ! wDwB¬* {w.÷¯l7 j‰w,á w|wÞ7 ˆ÷-Ç*D{Œ&³7 „°7 h÷-l ¸7 dµf/ˆƒÒ*h{Ã5& æƒwP Bò Ä ‡E6*Œ{õ uÍ Í.õ,ÅÄ �œ *°{ÂeÁ æ�â—"â—$Ó¦æ"ˆŽ€p*Ô{Ì—"PA—"TAÆÒ æ ÀÄ­÷7‘*ø{ô—"37¶) ,4(3YMPSTM;  + 5)(R  R CL S NKLA B =2)1,M(SYMP T ; )+R5 ( LR C  NKLA B =0)M(SYMP T ; )+R5 ( RBCL S ESDRAD) (0YMPSTM= L BOYM S ; OLMBSY5, R OV M  SSREDD A0)M(SYMP T =R5;  5 ,RYMPSTM # OV M  KSANBLH IT WERFFBUM SYMP TLLFI;    S ERSTGIREE AV SLLCA; EGVRSA  P RA T: 03BRSU M:TE;I ERNTOU CERCTRAHA=CR0  ;    L BOYM SEDORRR E-1<  ;    R BEUM NEDORRR E-1=  ;    R BEUM N0 =  ;  Rÿ·YTE 13  ;VERTICAL TAB .EVEN ; PAL TITLBF: .WORD 5  ;MAX BC .WORD 0  ;FORMATTED ASCII .WORD 5  ;BC .BYTE CR,LF,LF,43,13 ;CR,LF,LF,#,VT .EVEN .IFNDF NOSEG ENDO01: SIZO01=ENDO01-BEGO01 ; .PAGE PAL ;***** OVERLAY #2 ***** O02=BEGOVR-BEGO02  ;COMPUTE OFFSET FROM    ;RUN TIME BEGO02: ;JUMP TABLE TO ENTRY POINTS ;IN THIS OVE¸ ; ACTUAL MODE YET UNKNOWN  BLT  SYNT09  ; RIGHT  BGT  SYNT18  ; LEFT  TRAP  RFORCE  BISB  R0,R2  BR  SYNT15 SYNT18: INCB  QERROR SYNT09: TRAP  RFORCE ; CALL FORCE REGISTER EXPRESSION  BISB  R0,R2  ; SAVE INDEX REGISTER  TRAP  NEXTERM ; POSITION CURBYTE AT THE NEXT NON-     ; BLANK OR TAB CHARACTER  MOVB  @R3,R1  ; SAVE THE CURRENT TERMINATOR SYNT0A:   ; INSURE FIELD TERMINATOR  CLR  ¹·ŠîÁR‰^‰Áh‰^‰Á–‰É ,|fˆæ܉fˆfˆÁx‰^‰Áª‰^‰ÁH‰^‰Á>‰á&B|^‰wŒ¸‹–‰Ü‰^¸‹x‰ê‰ N¸‹ª‰ø‰µz¸‹h*b|R‰À‰4d¸‹h‰Î‰4d PAL11R V004C ؆| # “*’|7Šð 7‹À�¬ À¥üÿÀ¥ûÿ‰÷ Ä ‰÷‹ì µ*¶|÷‹â ·Še wz7 Ì 7 Ê Ã•÷¢ z .K*Ú|÷Ø Ò ÿÕ z 7& æ€wÖÁ•ŠD‰� Ä~Š»*þ| Ât ÃX X‰ ÷B 7 l 7 „ ‰÷å@ Ã$*"}T Ãí* ƒ ƒ ƒ ƒ Ã%þÙ÷‹O ÏÁv   …*F} ƒÁ5�  Àø 7 à 7þ 7¨ ÷�5    OLMBSY 0 >  ;    UEAL VEDOD=CPETY I  ;    UEAL VEDOD CI.RMTEM=ERVTSAT PUUT O ;    NENOT PUIN;    . EDSSCERO PNGEI BEMITT ENRRCUE THO T  ;   VETILARER TEUNCOR TEACARCHA S INTAINMAM TE I  ;   M.ERVTSAO NT IUEAL VEDOD C  ;   HE TCELA PND AERCTRAHA CORATINRMTE  ;   D RETEUNCOENY ANE ODNC END AFYTIENID) 3. ;   . TYTIANQUN IOATOC LINM HE TVESA  ;   D ANS ERMBNUL MACIDER OALCT ORTVEON C.) 2  ;   S.OLNÿ»RLAY. ; JMP RCSECT  ;ENTRY1 JMP RASECT  ;ENTRY2 JMP RGLOBL  ;ENTRY3 JMP RTITLE  ;ENTRY4 JMP RLIMIT  ;ENTRY5 JMP SUBR41  ;ENTRY6 JMP SUBR35  ;ENTRY7 JMP SUBR42  ;ENTRY8 .ENDC .PAGE PAL ;.CSECT ;THIS PART HANDLES THE ;.CSECT DIRECTIVE ; ;    ;CSECT HANDLER RCSECT: CLRB SIZE-O02 NEGB BINOUT-O02 ;REQUEST BINARY OUTPUT MOVB SAVTERM-O02,R0 ;TERMINATING CHARACTER: CMP¼ R0   ; R0 = 0  TRAP  EXPE2 ; CALL EXPRESSION EVALUATION    ; , ; CR RETURN REQUESTED  BLE  SYNT07  ; CHECK FOR AUTO MODES  MOV  RESULT,@R6  ; STACK EXPRESSION'S RESULT  CMPB  R1,#TCCIMM  ; WAS THE SAVED TERMINATOR     ; AN # ?  BEQ  IMMMDR  ; YES, IMMEDIATE ADDRESSING  BR  SYNT02  ; PROCESS AS INDEX MODE SYNT0B:   ; DETERMINE ADDRESSING MODE FOR     ; FIELDS CONTAINING ANY   ½*j} Á& Â$ Ãè ó� À•Ê ÄH‰w)*Ž}´7‹ ÷‹ñ Á À  ¾ ƒÁ5� 4*²}° ÷ú V ÿÅ   7ŠÅ Á¯Â”Ó÷•ÿÿ² 7Šp*Ö}r ‰÷ – À�h À¥üÿÀ¥ûÿ‰÷‹® wJt*ú}÷‹  ·Š# ÷¥ýÿ@ éw0ÿÕ< ‰û÷Õ¤*~@z ‰ÜÁ( ÷µl ·Šõ ñÕÿ÷¥ýÿ þ.B~ÍÞŠwôÉÕ@Ɖ÷  ‰÷‹@ ·ŠÃ Á•ŠÞ*j~D‰÷& 2 ÷" . ÷Š wÄÅŠ  Ä÷§*Ž~ Ü J‰H‰÷ê w¤ƒ  ‡@2 úÿ *²~r,üÿ “€Â�2 Âåç·| ½MBSYR FOR FEUF BYMPSTM  ;   E THN IRSTEACARCHI CIASX SIO TUPE AV S.) 1  ;   S:CEVIER SNGWILOOL FHE TDEVIRO P  ;   ESINUTRON IOATICIFNTDE IERCTRAHA CHE T  ;   S.ERMBNUR O  ;   LSBOYM SERTHEIE BTOD NEFIDEE ARS EMIT ;   . ORATINRMTED DECOEN ;   S ITH IT WERTHGETOM TE ICHEA, NETIOU R ;   NGLIAL CHE TTO, NGTIENESPRD ANS EMIT ;   L CATIACNTSYF ONGNIFIDEE THS IONTINCFUS M'TE I ;   EMITE INUTROUB S ;   L PA Jÿ¿B #-4,R0  ;CARRIAGE RETURN BEQ CSECT1  ;UNNAMED .CSECT CMPB #-5,R0  ;SEMI COLON BEQ CSECT1  ;UNNAMED .CSECT TRAP CBTABS  ;FLUSH BLANKS OR DEC CURBYTE-O02  ;TABS. TRAP ITEM  ;GET NEXT ITEM TSTB CNTCHAR-O02 ;ANY CHARACTERS FOUND? BLE CSECT1  ;NO. UNNAMED .CSECT TSTB ITYPE-O02 ;LEGAL SYMBOL? BGT CSECT5  ;YES INCB QERROR-O02 ;Q ERROR FLAG CSECT4: JMP MAIN1E-O02 ;UNNAMED .CSECT CSECT1: CLR TMPSYM+1-O02 ;PACKED MOD40 SYMBOL CLR TMPÀ  ; PARENTHESES     ; SEPARATE MAX. CASE FIRST  BITB  #ASEEN,R2  ; WAS AN ADDRESS SEEN ?  BNE  INDMDR  ; YES, INDEX MODE ADDRESSING  BITB  #AUTOINC,R2  ; WAS A + OPERATOR SEEN ?  BEQ  SYNT0D  JMP  INCMDR  ; YES, AUTO-INCREMENT MODE SYNT0D:  BITB  #AUTODEC,R2  ; WAS A - OPERATOR SEEN ?  BEQ  SYNT0E  JMP  DECMDR  ; YES, AUTO-DECREMENT MODE SYNT0E:  BITB  #PSEEN,R2  ; WERE PARENTHESES SEENÁ*Ö~À‡Á–‰Ã܉b‰Àæ‹fˆÀ ú÷³*ú~p F‰À¢ Á    ÄH‰À¯Á”ÂH‰ˆ*Â> Ã< ÁzŠ Ä~ŠÌ@X‰ʵ Z‰Âåå*B÷Å. ÷•/ à ÄC!$@úÿAüÿÂJ*f(CH‰×­ )N‰F‰Âä Ãâ ÁzŠ Ä~ŠÄ*ŠÌ•`X‰Z‰ÂåúÅå·ŠÝ ÖÂÀ¯Á¨*®”÷‹Ö À® Á¬ ÂÕ ÃŠ ÂE—H‰N‰÷ò*Ò˜ F‰N‰÷Ž F‰  À• ÄH‰N‰‡&‰†*ö…@úÿAüÿCþÿÄÂBÓÂE—H‰×­h )^*€N‰F‰`‰ ‰÷X & ÄB ´ ÷‹ ÷‹g Ý*>€÷¥ÿÿ E AG.P RNTURE; 7 RS RT  ENOP;.  PNOT EM  CKLO BNKLI;) R6-(1,RV MO  CKLO BLEFI;) R6-(3,RV MO  RSROERE DLAN HORITON MET;L  3)(R-4 LRC: INNTCO N.KETAS WA" INNTCO;" RNTURER ROERE TH, STXI EOT NID DLEFIE THF ;I Y.LLMAOR NEDRNTURES WAL RONTCO ;D AND TELEDES WAT ID,TEISEXY ADREALE IL FHE TIF ;E ETEL;D  LTDT EM  CKLO BNKLI;) R6-(1,RV MO  CKLO BLEFI;) R6-(3,RV MO  ITIN;.  MDNCIT EM  CKLO BNKLI;) R6-(1,RV MO  RNTURER ROERP UET;S FÿÃSYM+3-O02 MOVB #1,R3  ;ID NUMBER 1 MOV PERTOP-O02,HINDEX-O02 BR CSECT6 ;PREVIOUS SECTION .ASECT CSECT2: MOV @USERPC-O02,ABSPC-O02 BISB #RELFLG,@HUSERPC-O02 ;SET RELOCATABLE ;FLAG BIT IN DOT SYMBOL ENTRY BR CSECT7 ;MORE THAN 376(8) .CSECT'S CSECTE: CLR -(R6)  ;ERROR MOV #ERR1,-(R6) ;ANNOUNCEMENT JMP ERROUT-O02 ;PACK THE CHARACTERS IN BYTES TMPSYM (0) TO TMPSYM (5) ;INTO PACKED MODULO 40 REPRESENTATION IN WORDS ;TMPSYM+1 AND TMPSYM+3 CSECT5: MOV #TMPSYMÄ ?  BEQ  IMMMDR  ; NO, IMMEDIATE ADDRESSING  MOV  #DEFERD,-(R6) ; STACK THE DEFERD MASK  BITB  @R6,@R5  ; HAS AN @-SIGN APPEARED ?  BNE  SYNT0C  ; YES, USE INDEX ADDRESSING  BISB  (R6)+,@R5  ; NO, USE REGISTER DEFERRED  BR  REGMDR  ; REGISTER MODE SYNT0C: BISB  (R6)+,@R5  ; SET COMAND'S DEFERRED BIT  CLR  @R6   ; ZERO THE STACKED ADDRESS  BR  INDMDR  ; INDEX MODE ;*** DIRECT MEMORY ADDRESÅF ·Šß÷ ÷ü º 7ŠG ÷•@& ÷‹|*b€) ·Š½‰Æò·ð÷‹ Ä8 ?!â ƒÄ5Ù*†€„ ?Ô ÄÊ ÃüƒÂ$‰Å‹Í­ÜÍ­(*ª€ôÁx‰æîƒfˆ^‰Í­Þ÷¢ F‰N‰Š*΀Äæ‹æ–‰�ˆÄ ø^‰÷•H» ÂH‰·ö*ò€Ê ¦ˆÍ­ 7Š¡ Áª‰wÜÍ­¤ Ãø‰@*�b‰7Š˜"‰¦ˆî^‰�Šw£ã æ>ˆ÷< •*:�÷  ÷R‰*÷À‰&÷æv�¦ˆ¦ˆ©*^�w° æîƒæH‰ˆæH‰ˆwT  END¹*‚� &‰ÅÖÄÔ7ŠýÅe‰Àå ÷•þÿ Åå*¦�D!÷‹ß3)(R-4N,TION#C OVM: 47BRSU T:OUEL;D L PA E AG.P UTLODEP RAT; R3O TCKLO BLEFIF OSSREDDA; R1O TCKLO BNKLIF OSSREDDA; E:NCUEEQ SNGLIAL;C ;E IL FUTTPOUN PE.O  ;G INSTXI EDYEALR AIFE IL FUTTPOUE ETEL.D  ;T SEA AT DUTTPOUT NI.IO TNETIOUBRSU ;7 RS RT 1:ANLE CS RL MTE T SEA AT DSEEAEL;R 6)(R,-R1 OVM S CL MTE E IL FSELO;C 6)(R,-R1 OVM O ;N  N1EACL EQB D T'NI IET STADAS ;I  R1@T TS 4:R4UB S: ANLE;C CKLOBÿÇ,R1 ;ADDRESS OF 1ST BYTE TRAP SERCHB  ;MODULO 40 PACKER INC R1  ;TMPSYM+1 TO R1 MOV #WORD3,R4 ;NO 3RD WORD CLR @R4  ;MATCH; JUST SYMBOL MOV PERTOP-O02,R2 ;PERFORM LINEAR MOV CONTOP-O02,R3 ;SEARCH OVER CONTROL TRAP LINSRCH  ;SECTION TABLE BNE CSECT3  ;MATCH FOUND ;THIS CONTROL SECTION NAME NOT IN TABLE ;ENTER A NEW CONTROL SECTION ENTRY. MOV R3,HINDEX-O02 ;BASE ADDRESS OF ENTRY    ;IS CURRENT TOP OF    ;THE CONTROL SECTION    ;TABLEÈSING *** DIRMDR: ;IF THE FRCABS SWITCH IS NON-0 ;AS A RESULT OF THE CSI SWITCH ;/37 HAVING BEEN ENCOUNTERED ;FORCE @#A FOR A BITB #DEFERD,@R5 ;IS MODE @A BNE DIRMD1  ;YES --- NORMAL TSTB FRCABS  ;FORCE @#A? BEQ DIRMD1  ;NO BISB #DEFERD,@R5 ;YES   ; *** IMMEDIATE ADDRESSING *** IMMMDR: BISB  #AINCR7,@R5 INDXDR:  TST  (R4)+  MOVB  R4,VARLTH  TSTB  RSLMOD  BEQ  DIREC0  BLT  IMMEXT  MOVB  #RLD2.1,RLDIR ;INTERNAL RELOCATIONÉBͽíõ%(‰÷‹ã wŠÝÅÌ*Ê�¬Ä�wŠ»÷ ¦Ý÷ Êæª‰ˆ`‰·Š“¢*î�wúÿ†wüÿ‚w€Â€Š7Šž&‰…ÁLÂåµ*‚À¦fæ"ˆÁeÀ ÷� ͵ ñ•R”*6‚͵ñ•%͵É•=Ñ C͵͵s*Z‚@ñ•Gæ**‰±±Dþÿƒ`?*~‚$‰ DÝ!!ÿÂÃe $‰Íµ@ï*¢‚ñ•G*‰÷eª·Šðwêþ(‰wÖþÀZŠÈE¦*Æ‚ø Èe8 ÁªÁåfQ$Hà æƒ*ꂈ‡ R‰÷ Šqú‚   }.ƒ·Šz÷ v· r BNKLIF OSSREDD=AR1 ; : UTNP;I  ;. EDASLERET SE ;A AT DHE TND AEDOSCLS ILEFIE TH, 'DITINN EE;B AS HET STADAD IEIFECSPF I-- -ANLE CNETIOUBRSU ; AL P GEPA . N URET R ; R7  S RT S ESOCPRE THE NUTION CS,YE;  0 B0LK B HI B  ?) (0STLIUR C >R0S I ; STLIUR,CR0  P CM K ANBLI CIAS= ) R0R(FEUF B ; 0)(R,-' # VBMO 0:B0LK B0 R NC I  SSREDD ASEBAS ERFFBUG INSTLI;     E IVCTFEEFE >ÿË. CLR RESULT-O02 ;0 TO CURRENT CLR TFLAGS-O02 ;AND MAXIMUM PC TRAP ENTER SUB #10,CONTOP-O02 ;ADJUST BOTTOM OF UST ;MATCH FOUND---COMPUTE CONTROL SECTION ID CSECT3: MOV PERTOP-O02,R3 ;ADDRESS OF 1ST ENTRY SUB HINDEX-O02,R3 ;ADDRESS OF THIS ENTRY ASR R3  ;DIVIDED BY 4 ASR R3  ASR R3  ;XTRA SHIFT FOR BYTE BIT INC R3  ;+1=CONTROL SECTION CMP #376,R3  ;ID NUMBER BLT CSECTE  ;TOO BIG IF >376(8) CSECT6: TSTB SECMOD-O02 BEQ CSECT2  ;PREVIOÌ (CODE 1) BR IMPR2 IMMEXT:  MOV  #RLD2.5,RLDIR  ;GLB ADDITIVE RELOCATION (CODE 5) CMPB RSLMOD,#-2 BNE DIRECD MOV #RLD4.3,RLDIR  ;.CSECT ADDITIVE RELOCATION BR DIRECD   ; *** INDEX MODE *** INDMDR: BISB  #INDMODE,@R5  MOVB  RSL2MD,RSLMOD  CLRB  RSL2MD  TRAP  INSERT  BR  INDXDR   ; *** DIRECT MEMORY ADDRESSING *** DIRMD1: BISB  #INDR7,@R5  TST  (R4)+  MOVB  R4,VARLTH CMPB #-1,RSLMOD  BEQ  DIRECB ;.GLOBLÍ÷•ÿÿbw ÀR‰ æNƒ‰*6ƒ‰÷‹b‰þ÷µTa^Q À�ðq*ZƒÀe € € € Ö ·Š³  q|ƒÐü*~ƒÈÇÍÁ ÔÁ ÒæRƒÑ÷Šõ·Š‰7Šë„*¢ƒ÷‹è»÷Šâ¸÷ÿÿÜ´·ŠÓ& æ�w h*ƃ÷‹Ä·Š¾Ö wHÿÀ ‰÷‹Z÷‹½7 ·#ꃔ‡ ERRORS Ô*„÷•ŠX@‰·Št÷ˆÄ�÷ R‰>‰·Š*,„· Dùß>Ã¥ ÃU ÂJŠÊ�· *ï&}­(P„ÃïyÃÁþ Áÿ@‰ Ć–Ã*p„üû€‰ÀÁe÷ŠÅJŠ<‰TH+ R0= 0 R ; R0T,ISRLCU  D AD 1:R0UB S: UFKBBL ;E ON NT PUUT O ;    K.ANBLA H IT WEDLLFIE BTO  ;    N IOITOS PERFFBUT AS LHE TOF  ;    T IPCRBSSUE TH= 0 R UTNP I ;    0)R(FEUF BTO) R0R(FEUF BOMFR ;   . KSANBLI CIAS ;   H IT WERFFBUG INSTLIE IVCTFEEFE THL IL F ;   RSTEACARCHR FEUF BNGTIIS LNKLA BNETIOUBRSU;  AL P GEPA . N URET RND ARSTEISEG RET SLLCA; EGPRPO:ÿÏUS SECTION ABS ;PREVIOUS SECTION RELOCATABLE. MOV @USERPC-O02,R1 ;SAVE CURRENT PC FOR MOV R1,@RELPC-O02 ;PREVIOUS SECTION CMP R1,@HIRPC-O02 BLOS CSECT7 BIT #1,R1  ;EVEN OFF MAX. PC BEQ CSECT8 INC R1 CSECT8: MOV R1,@HIRPC-O02 CSECT7: MOV HINDEX-O02,R0 ;BASE OF NEW CSECT ENTRY MOV R0,HIRPC-O02 ;ADDRESS OF MAX. PC TST -(R0) MOV R0,RELPC-O02 ;ADDRESS OF PC MOV @R0,TBBUF-O02 ;PC OF NEW .CSECT MOVB R3,SECMOD-O02 ;NEW .CSECT ID TO SECMOD MOV TÐ EXPRESSION BPL DIRECC  ;ANOTHER .CSECT  SUB  @USERPC,@R6  SUB  R4,@R6  TSTB  RSLMOD  ;BRANCH IF NOT  BNE  DIRECX  ;PROCESSING  TSTB  SECMOD  ;FOR ABS SYMBOL  BEQ  DIREC0  ;IF ABS SYMBOL FROM ABS SECTION  ADD  @USERPC,@R6  ;ABS SYMBOL FROM REL SECTION  ADD  R4,@R6 MOV #RLD2.3,RLDIR  ;REL SECT PROCES,INIT RLD DIRECTIVE IMPR2:  MOV  @R6,R1 TRAP RELREF  MOV  #4,R4 TRAP RLDFIL  BR  IMPR1 DIRECC: MOVB Ñ÷‹·Š•w*”„® O Ì Î+÷‹æ. &‰Ä÷ºJ‰Á*¸„ÆÄ&‰÷¦÷¥ÿÿ¼÷ ˜ÄJ‰«*܄àÄÁ€Â~H‰·Š~*‰·œ;·Š#*…5ÎÎ% ÷‹|÷¥ÿÿt·Š P‰À<‰^*$…÷‹^ ÷ rP?Š0÷ h·Š(öÁB�Î c�*H…÷Š8·ŠÕwî ÷‹.FÀß× 0× 9#*l…ÃåÃ¥$Ãå Ã¥.ôÃ¥  p*�…× A× Z × a× z ÃÅ ÿ�ÄÃEÀÿZ.´…ÿ�®· ª·Še´·Š¬Å¨÷ Ò¨Á•ŠD‰Â–ŠÍ,Ü…ÁB�÷ ·š· 7Š”  P RA T  AGFLO CARLE C ; AGFLCO  R CL : T1LSCO ONTILEMPCO;D CMWT MTE T PUUT ONDMAOM COR FITWA;) R6-(B,OL#C OVM ; ;D CMWR MTE T PUUT ONDMAOM CCEVIER;S 6)(R,-LBCO#V MO  R.TEINPOK ACSTE THE ORSTRE;      F. LHE TERFT ALLNUA R FEUF B; + 6)(R @ RBCL T UNCOE YT BNTREUR CNTMERENC I; ) R0-(  C IN E YT BTADAT RSFIS R'FEUF B;    O LHE TOFS ESDRADE THD AD;  R6,@R0  D AD T CNE YT BNTREUR C'SLOK ACST;  6)(R,-)+R0 ( OV M  +4R0= 0 R; + 0)6ÿÓMPSYM+1-O02,R1 MOV TMPSYM+3-O02,R2 CSECT9:   ;NEW PROGRAM SECTION ID TO DOT ID MOV HUSERPC-O02,R3 MOVB SECMOD-O02,1(R3) MOVB #RLD3.1,R0 ;LOCATION COUNTER DEFINITION MOV TBBUF-O02,R3 ;DISPLACEMENT FROM SECTION BASE MOV #10,R4  ;# OF BYTES TO RLD TRAP RLDFIL JMP EXIT-O02 .PAGE PAL ;.ASECT ;THIS PART HANDLES THE ;.ASECT DIRECTIVE ; RASECT:    ;ASECT HANDLER NEGB BINOUT-O02 ;REQUEST BINARYÔ#RLD4.4,RLDIR ;.CSECT ADDITIVE DISPLACED RELOCATION BR DIRECD DIRECB:  MOVB  #RLD2.6,RLDIR ;.GLOBL EXPRESSION DIRECD: TRAP RELREF  MOV  @R6,R3  MOV  #10,R4  MOV  R2,TSTORE  MOV  GLBSY1,R1  ;.GLOBL OR .CSECT NAME MOV GLBSY2,R2 TRAP RLDFIL MOV TSTORE,R2 IMPR1:  INC  RLDFLG DIRECX:  MOVB  VARLTH,R4 DIREC0: MOV  @R6,TBBUF-2(R4)  ADD  #2,SIZE  BR  RETURN   ; *** REGISTER MODE *** REGMDR:; BISB  #REGMODE,@R5  BR  BÕ‰B‰÷ |æx‰y*†ˆ÷å P· fá �?  ÿ(D7 ’7 LÀ;*&†P·6â ·.Á( 0 þÿÀåù÷•?*J†=÷ ±R÷Œ:NÀÿÿ7�A‰÷ 7 7 O*n†î7 wÄ7 ¼7 HÀ&ÐRÐ7È�*’†Àt‰æÔˆæÎˆÀÚÀåЀ wŠ5*¶†æÜæÚæ�f‰·ŠÔ ‰·ŠQ·Š_8*Ú†ÎÝÚްεöÕÿ·Š9‰·Z·œ·Õ*þ†–Ö%¯,÷‹0÷‹z·Šw&wŠƒɵ×ÿJ*"‡·ŠÿöEÀ•ÁLÄH‰A÷‹I%÷‹DQ*F‡åÿ4ÿ/dƒÿ\÷‹ØÙñ¥(R+,0)(R  P CM S ESDRADR FEUF BCKTA;S  6)(R,-R0 OVM R DEEA HERFFBUN AIBT OS,YE; R06,#2  B SU E OP N ;  1 STOL C EQ B  ?EDSTUEEQ RUTTPOUD ANMMCO;   0 ,RAGFLCO  OV M  RSTEISEG RVESAL AL C;G REAV S APTR 7:R2UB S: STLICO ; AL P GEPA . N URET R ; R7  S RT R DD AEDCKTA S =3)2,S(DRHA B ; 2 S+DRHA,B)+R6 ( OV M  3)2,S(DRHA B =1)0,S(DRHA B ; 2)(R,-R2 @ OV M  1)0,S(DRHA BCKTA S2ÿ× OUTPUT TSTB SECMOD-O02 BEQ ASECT1  ;ALREDY IN .ASECT ;PREVIOUS SECTION .CSECT MOV @USERPC-O02,R1 ;SAVE CURRENT PC FOR MOV R1,@RELPC-O02 ;PREVIOUS SECTION CMP R1,@HIRPC-O02 BLOS ASECT1 BIT #1,R1  ;EVEN OFF NEW MAX. PC. BEQ ASECT2 INC R1 ASECT2: MOV R1,@HIRPC-O02 ASECT1: MOV ABSPC-O02,TBBUF-O02 BICB #RELFLG,@HUSERPC-O02 ;CLEAR RELOCATABLE    ;FLAG BIT IN DOT SYMBOL ENTRY CLRB SECMOD-O02 ;.ASECT ID MOV #ABS1,R1 ;'.(SPACE)A MOV #ABS2ØUILD   ; *** AUTO-INCREMENT MODE *** INCMDR: BISB  #INCMODE,@R5  BR  BUILD   ; *** AUTO-DECREMENT MODE *** DECMDR: BISB  #DECMODE,@R5 BUILD:  TRAP  INSERT ;  .PAGE RETURN:  MOV  #SAVTERM,R3 TST  (R6)+  ; RESTORE THE STACK POINTER  BIT  #177400,R2  ; PARENTHESES COUNTER ZERO ?  BEQ  RETUR0  ; YES, VALID COUNTER  INCB  QERROR  ; NO, QUESTIONABLE SYNTAX RETUR0: INCB  FLDCNT  ; INCREMENT FIELD COUNTER Ùÿ*j‡‰‰°‰ÉÅ÷‹ ÉÉÕ ñ�ÿÉÕu.އV‰Á@£À@£‡æâ@‰ÅrŠÄ€‰Ã†Š ŠÂЬ*¶‡À�ìx¾‡ˆTˆŒˆDˆÌ‡fˆˆ ‰·ŠSÌ•ÿÿÍ*Ú‡:÷‹ª÷÷‹ŸóÌïÆÌåŒ 퇓#ê *þ‡(×­FûÿO×­>üÿK·ŠH ‰÷ š·Šß*"ˆ ÷‹`÷¥ÿÿX·Šñ÷�EùP‰ú 7*Fˆ‰·ŠÙ‰Ó)‰&·ŠËÍË• ‰°*jˆ·Š·‰ÌŒ Œ Sÿ¥,ôë‰ç·Šä‰Û*Žˆ ·Š“Í×Ë•7 t7 nNS‹Š‹Š·bw’J*²ˆ÷‹…#÷%h‰²÷ –)榈÷‹Œ÷­9˜ ; 6)(R,-)+R2 ( OV M  ESSSREDD AERADHER FEUF B/O ITETARO;    S ESDRADS ERADHER FEUF BSI;     S ERFFBUE BLLAAIAV= 0 R ; R02,@R  V MO R FEUF BNGTIIS LNKLA BLLCA; UFKBBL  P RA T  ERNTOI PSTLIUR CET S ; R3,@R1  V MO T UNCOE YT BRSFEUF BROZE;  + 1)(R  R CL E OD MRSFEUF BZELIIAITIN; + 1)(RE,ODOM#L  V MO X MAS ERFFBUE IZALTINI I ; )+R1,(R0  V MO T UNCOE YT BAX MLO= 0 R ; R0C,MBLO # OV M  SSREDD AERAD.ÿÛ,R2 ;'BS. BR CSECT9 .PAGE PAL ;.GLOBL THIS SECTION HANDLES GLOBAL STATEMENTS RGLOBL:  MOVB  #-1,SIZE-O02 CLRB  SAVTERM-O02 TRAP  CBTABS GLOBL1:  DEC  CURBYTE-O02 GLOBL2:  MOVB  SAVTERM-O02,R0  CMPB  #-4,R0 ;CARRIAGE RETURN  BEQ  GLOBLX  CMPB  #-5,R0 ;SEMI COLON  BEQ  GLOBLX  TRAP  ITEM  ;GETS THE NEXT SYMBOL  TSTB  CNTCHAR-O02  ;;ANY CHARACTERS FOUND  Ü  TRAP  FLDEND ; DETERMINE STATEMENT TERMINATOR  BLE  RETUR1  ; STATEMENT TERMINATED  CMPB  FLDCNT,#2  ; MORE THAN TWO FIELDS ?  BLT  RETUR2  ; NOPE  INCB  QERROR  ; YES, QUESTIONABLE SYNTAX RETUR1: TRAP  SETREG ; CALL SET REGISTERS  DECB  FLDCNT  ; SET THE CONDITION CODES  RTS  R7  ; RETURN RETUR2: ASL  @R5   ; SHIFT COMAND SIX BITS LEFT  ASL  @R5  ASL  @R5  ASL  @R5  ASL  @R5 Ý*Öˆ6æ’ˆ÷h‰Š÷Ή†÷„h÷¥Ý*úˆw>÷ X · V÷B7Š�‰w’æTˆÚ*‰wLPQARDMBINTU,Ð*B‰EEGxð^*f‰Hxð\M€M�*Љ8Ü€f¤x˜*®‰€Mô&µW4dô&µWß*Ò‰4dô&µWö ô&µW N5*ö‰ô&µWµz%p:*Ô*Š* PAGE XXXXX MM-DD-YY HH:MMùHEO LRSFEUF B ;     VETIECFF E.,221- R =R1;  1 ,R26 # UB S: T2TARO ?EDSTUEEQ RUTTPOUD ANMMCO; STLICO  P RA T 1:ATOT RT OURREP JM  6)(R,-R3ER#V MO  CEVIDET PUUT;O  R6@B WAS N OOD;E R6,@77#3 ICB: O3RR E) R6-(),R11(T-TAOSLV MO  GSLA FHE TARLE CS,YE; 1)(RATSTLOF,EO # CBBI E NUTION CE,OP N; 1 ATOT R EQ B  ?UTTPOUD TEIS LONF EO; 1)(RATSTLOF,EO # TBBI H NCRA B -NO;1 ATOTRQ BE  S?ESGRRO PING INTHNY AAS;W R0 STT: T4TARO SSREOGPRN ING*ÿßBGT  GLOBLA  ;YES THEN BRANCH GLOBLX:  JMP  EXIT-O02  ;ABORT GLOBLA:  TSTB  ITYPE-O02  ;IF ITEM WAS LEGAL  BGT  GLOBL4  ;THE BRANCH IF SYMBOL  INCB  QERROR-O02  ;ELSE FLAG  CMPB  #-3,SAVTERM-O02 ;IF LAST TERMINATOR  BEQ  GLOBL2  ;WAS , THEN BRANCH  JMP  MAIN1E-O02 GLOBL7: BISB #REDEF,@HINDEX-O02 ;SET PERMANENT SYMBOL REDEFINED FLAG. GLOBL4: TRAP SEARCH  ;SEARCH SYMBOL TABLE BGT GLOBL7  ;IF PST THEN REPEAT BEQ à  ASL  @R5  TRAP  NEXTERM ; CALL FOR NEXT TERMINATOR  CLRB  RSLMOD  CLR  GLBSY1  CLR  GLBSY2  JMP  SYNT00 .PAGE PAL  ; SUBROUTINE INSERT   ; THIS SUBROUTINE INSERTS THE THREE BIT   ; REGISTER FIELD FOUND IN R2 INTO THE   ; COMMAND BEING BUILT.    ; INPUT R2 CONTAINS A 3-BIT FIELD    ; OUTPUT NONE ;INSERT: SUBR20: MOVB  R2,-(R6)  ; STACK LOWER BYTEá>Š:SS:XX *JŠ€ P%*nŠ&ynv6‹Æ‹ÿH*’ЬžÆ�.�‘Ê‘„–†–7¶Šˆ–2�P–X–ì’¬“<šv�ª‘�qÊŠ„�"šÈ’À‚Ú’^ž|––,––ºÞŠî˜šŸ”‡�Ö�œ�’’ž0žªòŠŸÜ~šžpž¶ƒR“<“ ~ôb{Ï&‹Ø�æ’æ�  Å °‹¸@Œ!zŒò|Œï*¸Œ¶Îå¦Îe¨‡w:ï÷•ÿ½ýÆ ý7 vü¾*ÜŒ7 ˆü7 ²ü7 HIETOM SET;S R0 NCI N IOETPLOM COR FITWA;D CMWT MTE ) R6-(B,LL#S OVM H NCRA B -NO;4 ATOTRQ BE  S?ESGRRO PING INSTLIL BOYM SIS;B LLST TS 3:ATOT RS ESGRRO PING INTHMESOT SE; 0 RC IN  ONTILEMPCOR FOT AI;W MDTCWT EM  6)(R,-LBLO#V MO  CHANBR- O ;N T3TARO EQB ? SSREOGPRN INGTIIS LIS;B OLLT TS  SSREOGPRN INGHIOT NET;S R0 LRC S ESDRADT ISRLCU= 3 R ; R3T,ISRLCU # OV M  SSREDD ARSDEEA H ;     ERFFBUT PUINE RCOU S ;     RSFEUF BVETIECFF E&ÿãGLOBL6  ;IN UST BISB #GLBFLG,TFLAGS-O02 ;SET GLOBAL FLAG TRAP ENTER  ;ENTER INTO UST BR GLOBL2 ;FOUND IN UST GLOBL6: MOV HINDEX-O02,R1 ;ADDRESS OF ENTRY BITB #REGFLG,TFLAGS-O02 ;IS SYMBOL A REG. EXPR. BEQ GLOBL5  ;NO INCB RERROR-O02 BISB #MDFLAG,1(R1) ;SET MULTIPLY DEFINED CMPB #-3,SAVTERM-O02 ;WAS TERMINATOR, BEQ GLOBL2  ;YES MOV #ITYPE,R3 ;NO JMP MAIN1E-O02 GLOBL5: BISB #GLBFLG,@R1 ;SET GLOBAL FLAG IN UST BR GLOBL2 .PAGE ä OF R2  BIC  #177770,@R6  ; ONLY SAVE LOWER 3 BITS  BISB  (R6)+,@R5  ; SET COMMAND'S REG. BITS  RTS  R7  ; RETURN .PAGE PAL  ; SUBROUTINE FIELD END   ; THIS SUBROUTINE SEPARATES TERMINATORS INTO   ; THREE GROUPS.    ; INPUT R3 = SAVTERM ADDRESS    ; OUTPUT CONDITION CODED RESULTS    ;  > 0, IMPLIES ,    ;  = 0, IMPLIES ; CR    å�ü7 ¾ü7 Nü7 –ü7 PüæÊŒæ¸*�!ˆæ¸Œ& æ!ˆwìæ\üæVüˆ×­€ü¿*$�÷­xüäýL‰wàøæ<üæ6üˆw8ù7 Ìü7ŠCýL*H�7Š>ý7ŠÙû7Šßû7Š0ý7ŠÝû7ŠÇû7ŠÖû÷•7ý‰ê*l��&ÐRÐ æòûˆñµ@w&ûñµ<*��·Š‹ûÄ• · êûQ$BB`@ KËåá• ™*´�w¼üÊ¥ ÷e<Âû2¡ÿÿŠ”2‘ÿÿ2‘·vüÍ*Ø� ¤þÀ  ·Š?û‰À�\üÀe÷‹–ür…*ü�wÎ÷‹ˆüð÷‹’ü·ŠûÀ éw&&‰ g* މÁœŠÂÀ‰Ö‹w~øÿÕüb*DŽ·ŠãúñÕÿ =R1;  1 ,RR2 @ OV M  ESSSREDD ARSDEEA H ;     ERFFBUT PUINE THG ININTAON C ;     LEAB THE TOFS ESDRAD= 2 R ; R2S,DRHA#B  V MO 2:R0UB S: TETARO ;D YEROSTDEE AR3 RRUTH0 R  ;    SSREDD ARSDEEA H  ;    R FEUF BUTNP ICEURSO   ;    RSFEUF BLEABILVA A =R0 UTTPOU;    E ON N UTNP I ;    ONTISIPOE BLLAAIAVE THO NT IERFFBUS TETARO ;   S NKLA BTOA AT DRSFEUF BISTHS ZELIIAITIN ;   R DEEA HLOS ERFFBUS "ÿç PAL ;TITLE DIRECTIVE HANDLER RTITLE:  TRAP  CBTABS  ;THIS PART  DEC  CURBYTE-O02  ;GETS  TRAP  ITEM  TSTB  ITYPE-O02  ;THE FIRST ITEM  BGT  TITLE3  ;AND CHECKS  INCB  QERROR-O02  ;FOR SYMBOL  BR  TITLEX TITLE3:  MOV  #TMPSYM,R1  TRAP  SERCHB  MOV  TMPSYM+1-O02,TITLEA-O02  MOV  TMPSYM+3-O02,TITLEB-O02 TITLEX:  DECB  SIZE-O02 ;SPACE WAS FOUND ASSUè ;  < 0, IMPLIES OTHER ;FLDEND: SUBR18: MOV  #1,-(R6)  ; STACK A ONE  CMPB  @R3,#TCCCOM  ; IS THE TERMINATOR A, ?  BEQ  FLDEN1  ; YES  CMPB  @R3,#TCCSMC  ; IS THE TERMINATOR A ; ?  BEQ  FLDEN0  ; YES  CMPB  @R3,#TCCCRE  ; IS THE TERMINATOR A CR ?  BEQ  FLDEN0  ; YES  DEC  @R6   ; RETURN NEGATIVE FLDEN0: DEC  @R6   ; RETURN ZERO FLDEN1: TST  (R6)+  ; RETURN POSITIVE é×-Dü¯·ŠÍú8À ×­ªüÌ*h޷йú/ËDûÉÕ÷‹ü ÉÕ ñ¥ÿñ�ýûy*ŒŽÉÕV‰×­tü ɵñ¥ÿáñÕÿN*°Ž‰ÞɵÖñ¥ÿôÿ-¼úìúÎwÿ÷‹ÎûÇ*ÔŽ€ŠÀe ÷Š¢û/÷‹´û‰ ÷‹šûõ·Š“.øŽ¦û÷‹�ûðw\õ÷µ’û÷‹~û×-nú†�ã×-fúš��* �ß \ú÷‹bûÙwlø·ŠùùÀû þÿ‡÷Ìú+*D�‰wöýwDíw>îwxîwøî÷Š(ûòwïwºð6*h�÷e<úê‰÷‹(û·Š¹ùã÷úúßQ$Q$Q$ç*Œ�Q$Q$wZóQ$wŽówöówfôwtôw¾ôw¾ð7 *°�Üù÷ÿÿØùÅ÷HI TESIZALTINI I ;   RYSAESEC NIF, ONTINAMIER TLOS IEIFER V ;   S:SKTAG INOWLLFOE THS RMFOER PNETIOUBRSUS HI T ;   RSFEUF BUTTPOUT/PUINE ATOT RNETIOUBRSU;  AL P GEPA . , RNTURE;  7 R TS R 1:NTRI PR TEACARBH' '?E UTITSTUB S ; E YTRBCU,@'? # VBMO 0:NTRI PT MILIR WELO 40S EDCEEX;  1 NTRI P LE B  TEBYUR@C0,#4  B MP C  ITIM LERPP U40 1DSEEXC E ; T0INPR  T BG 0 14,#TEBYUR@C  ÿëME DEFAULT  JMP  EXIT-O02 .PAGE PAL ;LIMIT HANDLER ; ; RLIMIT:  MOV  #TBBUF,R5  ;RESERVE  CLR  (R5)+  ;TWO  CLR  (R5)+  ;WORDS  MOV  #2,R4  ;WORDS  MOV  #RLD3.3,RLDIR-O02  ;AND TELL  TRAP  RELREF  ;THE LOADER  TRAP  RLDFIL  MOV  #4,SIZE-O02  ;TO FILL SPACE  JMP  EXIT-O02 .PAGE ì     ; SET THE CONDITION CODES  RTS  R7  ; RETURN .PAGE PAL  ; SUBROUTINE PARENTHESIS SEPERATOR   ; THIS SUBROUTINE SEPERATES RIGHT AND LEFT   ; PARENTHESES FROM OTHER TERMINATORS. IT ALSO   ; SETS THE PARENTHESIS SEEN FLAG BIT AND   ; MAINTAINS THE PARENTHESIS COUNTER.    ; INPUT R2 DEDICATED REGISTER    ; OUTPUT CONDITION CODED RESULTS    ;  ) íÐù÷ÿÿÌù¿÷Æù¼@‰7Š_ùwã*Ô�nÿ÷Üù4úÿ5Ôù¿ Îù· $ú·ŠAù7‹­ú&‰À•{*ø�Á¸ùÄH‰*‰‰÷•“ú‡ÍŸ`ú‡×¯Zú`‡.�ÿ¥ Púÿ•?Hú‡Â‚Š�ÃZŠ ÷ :ùæx‰ó*D�ˆ€ ÷ ^ù檉ˆ€ À ñµ@óÿ ñÅ@óÿ *h�fòÿÎEÿÎæ‚wNüB‰ÁåÀŠÑ @*Œ�K‰€¦¢·êù‡&‰ÀºùÀå&$&`€*°�  ŠæH‰ˆæH‰ˆ7 ˜ù`‰Àm�ù€ à• 7 †ù2*Ô�û‚‡É fˆfˆ‡óö�üÿfˆæfˆ3 *.ø�üÿæfˆ‡&‰Å•ŠwZùŠ  ŠÄ¼™7ІùÞŠX* ‘ Š7 ^ø7 tø7 tø PBCM 5:R2UB S: NTRI;P IDALNV IESLIMP IT..G  ;    D LIVAS IEPLIM. LE .  ;    TSULES REDOD CONTIDION CT:PUUT O ;    TYLIBITAINPRE INUTROUB S ;  L PA E AG.P RNTURE;  7 R TS R  RNTURE;  7 R TS R0:CHET;G N.IOATINRMTEE URNS I ; R3E,YTRBCU @ VBMO ; 0 ‰Ä% ™éÄ%¼™û*j‘Â’Â ·Š»÷KŠÄ ™Ü*‰À�ù‡Å-Úøò*Ž‘÷ Ôø‹ŠÄ¦™ÏÀ 7 â÷èÄ"™Ç7Šùø· Âø�*²‘ÿ¥ ¼øÿ¥ ´ø‡·Šßøò&‰Á•ŠÅXŠ ¬*Ö‘É‹� 5À�Àø    ¬”Š0Š”Šç*ú‘À LŠÉ‹D‰� ÂjøÃhøT‰Í wc|ø *’÷µxøñ÷U€X÷Ä�lø„ „ „ ÄEáÿ7‘hø*‰À õ*B’‡Í èÂ÷Ã÷T‰À ó  ÃÝ=øÃ¥ÿá*f’ à à à ÁøÁàÑ wî÷wì÷ß×½ø@Û×½ö*Š’ø×ò&‰Å˜ŠÄ–Š   R ROER Q CBIN ; ITEXO SSECAD LIVA, NO;  0 CHET G NE B  ;? T RER-CAA R TEACARCHS HI T ; E YTRBCU,@CR # PBCM ; D.TENAMIER TIS;     E IVCTREDIE THD ANE OD C ;     ORRR EQ' ' ATHWID TEINPRS I ;     NELIK ANBLA , ARPEAPS OE D ;     NE OIF T.ENEMATSTI CIAS . ;     ANN HIIT WEDTTMIER PEREV N ;     ISR TEACARCHT RER-CAA T HA T ;     ESURNS IDECOD PE-ONOS HI T ;     ERCTRAHA CF.EF= M ERVTSA; ÿóAT THE ; BYTE NOT BE INCLUDED IN THE ; MATCHING PROCESS. ONLY BITS IN ; THE FLAG BYTE THAT ARE ON WILL ; BE MATCHED IN THE SEARCH. ; 3) THE STARTING (HIGHER) ADDRESS OF ;  THE SYMBOL TABLE IN R2 ; 4) THE 1ST FREE ADDRESS BELOW THE ;  SYMBOL TABLE IN R3 ; ;OUTPUT ; IF MATCH FOUND ; 1) R0 AND CONDITION CODES NON 0 (POSITIVE) ; 2) ADDRESS OF ENTRY TO HINDEX (HIGHER ADDRESS) AND R2 ; IF NO MATCH ; 1) R0 AND CONDITION CODES 0 ; 2) R2 DEôARSE1 PARSE0: INC  @R6   ; INCREMENT STACKED ZERO  INCB  R2   ; INCREMENT PCOUNT BYTE PARSE1: SWAB  R2   ; RESTORE R2 FORMAT  BISB  #PSEEN,R2  ; SET PSEEN BIT PARSE2: TST  (R6)+  ; SET THE CONDITION CODES  RTS  R7  ; RETURN .PAGE PAL  ; SUBROUTINE REGISTER CHECK   ; THIS SUBROUTINE DETERMINES, FINALLY, IF   ; A VALUE IS TO BE TYPED AS REGISTER. õB’ƒ`ŠE à à ¿*®’à æà à ƒeòÔÅeW!›Šë`‰&æ¦f¦²*Ò’v ‡…�‚ƒ„…Ö *‰‡&‰ÀpöÄæ*ö’áw fö †‚დ· Xöü‡7áRöæB!ˆÖ P*“wDöÂ0÷ · 6÷‡7á0÷7á‚ö€ ý†*‰Àü*>“÷ÈX÷à8öàL÷àF÷‡€Àà€ 7 &ö7 :÷*b“÷ìöÀ ‡ÀE€„à -úÿ 1-üÿ 7þÿþõ¹*†“7÷€ 7Âöê‡ß0Äå!ׂ Ø*ª“×&‰ÅrŠ 7ŠÜöÄÃJŠ & ×¢ïÿÍÕ¸*Γ.‰ Á’W îÿ.‰_ ‰Îšõ0‰‰wîd*ò“ÂÝŠõw²‰·Š)õ2‰·Šõ<  ÂÕ R5,@TEBYUR@C  B OV M: 11BRSU R:HATCGE ;R TEACARCHT GEE INUTROUB S ;  L PA E AG.P RNTURE;  7 R TS R: 01ENEV UTNOBI1, # VBMO F BUEB  P RA T  EGTRSE  P RA T  ILDFRL  P RA T  R44, # OV M  N.IOATICIFOD;M R1C,RPSE@U  V MO R TEUNCON IOATOC;L R02,3.LD#R  B OV M  EGVRSA  P RA T  UTTPOUY ARIN BSTUEEQ R ; UTNOBI  B EG N  ORRR ENGDIUNBOE THT SE;  R ROER B CBIN F BUTB  ÿ÷STROYED ;LINSRCH: SUBR41: LINSR3: CMP R2,R3  ;COMPARE TABLE LIMITS. BNE LINSR1  ;STILL MORE ENTRIES. CLR R0  ;NO MATCH. RTS R7  ;RETURN LINSR1: MOV @R1,R0  ;1ST TRIAD BEQ LINSR6  ;DON'T COMPARE IF 0 CMP R0,-6(R2) BNE LINSR4  ;NO MATCH; TRY NEXT ENTRY. CMP 2(R1),-4(R2) ;2ND TRIAD BNE LINSR4  ;NO MATCH; TRY NEXT ENTRY. LINSR6: MOVB @R4,R0  ;FLAG BYTE BICB (R2),R0  ;ALL BITS IN DST SHOULD BNE LINSR4  ;BE CLEARED IF MATCH MOVB 1(Rø  ; IF NOT, THE SUBROUTINE RETURNS   ; IMMEDIATELY. IF THE VALUE IS TYPED AS   ; REGISTER, THEN INSURE THE VALUE IS   ; PROPERLY BOUNDED AND IF NOT, FORCE   ; REGISTER ZERO.    ; INPUT R0 CONTAINS REGISTER    ;  TYPING INFORMATION    ; OUTPUT CONDITION CODED RESULTS    ;  NOT NEGATIVE IMPLIES    ;  R0 CONTAINS A VALID    ;  REGISTER NAME    ;  NEGATIVE IMPLIES    ù@0‰ü*”w2‰·ŠõD·ŠûôæW ÷ÿÎE*:”W øÿ µ ·ŠÙôÂÅÂÕ ‚Õ÷‹.ö Ü*^”÷�(ö'ö÷¥óÿàõ·Š¹ô7Šö0‰.‰ ‰·Š|*‚”£ô2‰‰ÐÈ·Š“ô‰Ð.‰Á’ ‰ÅÎÚô¼*¦”W îÿ"¦µ@6µwðµw쵫*Ê”€æ�³�Õi�Õ ͵&÷‹-õ#ÍÕ*î”ÍÕÔ 7‘’õ÷‹ŒõP÷•fõ-÷^õ×­*•võþÿ3÷ Põ/ÍÕ0÷�cõ`õ7Š]õ4‰áÍÕ7e*6•Ô 7‘Põ÷¥ÿÿHõ€Îïlôá÷‹:õ%÷‹3õ$Îo£*Z•Zôa÷ õ�J‰ÄH‰÷•øô÷•ðôñC IN . PCS R'SE UNTMERENC I, NO;  C RPSE@U  C IN T XI ES,YE;  1 N0VE E EQ B  ?ENEVR TEUNCON IOATOC L ; PCERUS,@#1  T BI F BUTBC,RPSE@U  V MO 6:R2UB S: PCENEV ;R TEUNCON IOATOC LHE TENEVE INUTROUB S ;   NGSIESOCPRE ETPLOM C ; T XI E MP J  ORRRBE  B LR C  ERNTOU CONTICALOE THN VE ELLCA; PCENEV  P RA T  T.OUD CEOR F ;    YSWAALS IERFFBUT PUUT ORYNABIE TH;    , REFOREHE TD,RETEALY LLNAIOITNDCOUN;    S IERNTÿû4),R0 ;CONTROL SECTION ID BYTE BEQ LINSR8 CMPB R0,1(R2) BEQ LINSR8 LINSR4: SUB #10,R2  ;SUBTRACT 4 WORDS FROM POINTER BR LINSR3  ;TRY NEXT ENTRY. LINSR8: MOV R2,HINDEX-O02 ;MATCH--ADDRESS OF MOV #1,R0  ;ENTRY TO HINDEX; RTS R7  ;POSITIVE VALUE TO R0. .PAGE PAL ;GSDTAB THIS SUBR CONSTRUCTS THE GSD TABLE IMMEDIATELY ;AFTER THE .END STATEMENT PRECEDING THE BINARY PASS ; SUBR35: MOV #BOLB,R1 ü ;   1) NOT TYPED AS REGISTER    ;   2) INVALID REGISTER NAME    ;   WAS FOUND, RESULT    ;   SET TO ZERO, R0'S    ;   LOW BYTE EQUALS ZERO ;RCHECK: SUBR2A: CLR  R0  BISB  REGTYPE,R0  ; IS RESULT TYPED REGISTERS ?  BEQ  RCHE01  ; NOPE, RETURN NEGATIVE ;RFORCE: SUBR2B: MOV  RESULT,R0  ; R0 = RESULT  CMP  R0,#7  ; IS R0 > 7 ?  BGT  RCHE00  ; YES, FORCE REGISTER ZERO  TSTB  RSLý,~•J‰ƒÄ·0ôÁÚôÂØôH‰Â"ô· ÔôÄ�ìô´ŠE*¤•÷eÜôÍÕÍÕ 4‰ÃJŠÖ Â5ÿ·Šc*È•]ó·ŠÆô0‰×­¾ô·ŠIó*‰÷аô‡Í Í Í ½*ì•Í Í Í .‰7Š’ô7 lô7 jôw¼ý¦�ÎEøÿ�Õ‡æ7*–×¢ýÿ×¢ûÿ×¢üÿÎ Î Ö ‡Â& ×¢óÿG*4–×¢ôÿЊŽ ‚ŠÂÂÕ€Ö ‡ ÀÝbór*X–À$ó ÷‹$ôÀ ·Š»ò7 ó‡À€‡¥,|–‰÷ ЇÀ À € &‰Á7Šô7Š ó Å€‰Ä„‰û*¢–ÃtŠ7Šàó Š7Š–óŠ÷‹èó 7Šâó÷‹Üó4·Ší*Æ–Ûó÷‹Éóu\Ë ‰YÀ�póÀe2Àe9ÀeOU CONTICALOY BLEMSS AHE T ;    NGSIESOCPRE IVCTREDIY BLEMSS AENEV;   : ENEV ITEX BR  AGFLS EE.GT SE;Y KESTLI7,RV MO S:EE G; L.NAIOATEROPN-NOE ARS VETIECIR D  ; STLI.ND ANT IS.LN HE TT,ENESPRF I -VETIECIR DESGE . ;; ITEX BR  EYTKIS,L-1#V MO  AGFLT IS LSSREPPSUT SE;N TOIS,LR7 OVM: STLI NE OD CEDBLEMSS-AON NOFUTTOINPRE RCOU SSSREPPSU- E IVCTREDIT ISNL . ;; ITEX BR  EYTKIS,L-1#V MO  ONSTLI LRC: STLI ;E OD CEDBLEMSS-AON NOFT OUNTRI PCEURSOE UMES R -VETIECIR D ÿÿ MOV #BOFB,R3 TRAP DELOUT  ;.INIT, .DELETE, .OPEN, BINARY DATA SET. ; DUMP LEADER GSD999: MOV #20.,R0 ;SET COUNT GSD06: MOV #TRLBUF,-(R6) MOV R1,-(R6) EMT WRCMD DEC R0  ;DONE? BGE GSD06  MOV  #GSDCMD,DIRCMD-O02 ; GSD DECLARATION.  TRAP  RLDINT  MOV  TITLEA-O02,R0 ; OBJECT MODULE NAME.  MOV  TITLEB-O02,R1  CLR  R2  ; 0 TO FLAGS.  CLR  R3  MOV  #10,R4  TRAP  RLDFIL  MOV  #ABS1,R0  MOV  #ABS2,R1  MOV  #MOD  BNE  RCHE00  TST  R0   ; IS R0 < 0 ?  BGE  RCHE02  ; NOPE, RETURN NOT NEGATIVE RCHE00: INCB  RERROR ; FORCE  SET REGISTER ERROR  CLR  RESULT  ; RESULT = 0  RTS  R7  ; RETURN, CONDITION CODE 'Z' IS SET RCHE01: MOV  #100000,R0  ; SET ONLY R0 SIGN BIT     ; CONDITION CODES ARE SET RCHE02: RTS  R7  ; RETURN .PAGE PAL  ; SUBROUTINE NEXT*ê–Àe, úÿÀe Àe÷•¬òâ1*—6‰àÀ ‹ ÌžÀ ‹ ÷ž[ò‹ 7Šnó ’*2—*Á‹6‰ŠŠ�ŠÀ ÐÆÁ5ÿÁ5ÿ 6‰q*V—‹ ¬·�Úñ÷¥$󷊽ñ÷‹Øò÷­Òòóa*z—÷•þÿ ó*‰÷‹ó‡·Šó÷‹ó*‰ ÷µþò!*ž—÷•öò‰‰·Š‡ñÂU�À�áòÀ¥ÿÌ*—·ŠgñÂUÀ�ÎòÀµ@ ÀµêÀµ÷•Òñ¸*æ—Á‹6‰&‰€�Á�¨òÀ xú—˜d˜˜˜¶˜Æ˜Þ˜÷‹”òÈ* ˜*÷‹zòÁµ Áµ!Áµ@÷‹bòI÷•ÿÿ-*.˜Zò=÷‹ò÷�aò ò÷­Yòò:·Š>ò Áµ á*STLI . ;; DCEN. 1 D1EN MPJ G SENO DFIF. C ND.E  Y2TREN MPJ 3 #AYRLVE;O  3D OR.W  RLNTCO APTR  EGOSNF NDIF.: NDMESI VETIECIR DND.EE ATULIM;S ;C ND.E  TEBYRP JM  EGOSNF FD.I  DCEN. 4 RYNTEP JM  4D OR.W  RLNTCO APTR  EGOSNF NDIF.: TEBY ERDLAN HVETIECIR DTEBY .OFN IORTPOT ENIDES;R ;C ND.E  IISCRA MPJ G SENO DFIF. C ND.E  Y2TREN MPJ 4 RDWO. L TRONCP RAT G SENO DFFN.I I:CIAS ERDLAN HVETIECIR DIISC.AF OONTIOR PNTDESIRE ;; DCEN. 0 ÿASCFLG,R2  ;ENTER ASECT (PROG. SECTION, DEFINED)  TRAP  RLDFIL ;SEARCH UST FOR ALL .GLOBL'S ASSOCIATED WITH ;THE ABSOLUTE SECTION. ; MOV CONTOP-O02,R2 ;THE STARTING ADDRESS OF UST MOV USRTOP-O02,R3 ;1ST FREE LOCATION BELOW UST MOV #WORD1,R1 ;ADDRESS CONTAINING .GLOBL NAME CLR @R1  ;ACCEPT ANY NAME. MOV #WORD3,R4 ;3RD WORD OF MATCH. MOV #GLBFLG,@R4 ;.GLOBL GSD05: TRAP LINSRCH BEQ GSD01  ;NO MATCH BITB #RELFLG,@R2 ;ADDRESS OF MATCH IN R2 & HINDEX  TERMINATOR   ; THIS SUBROUTINE SIMPLY MOVES THE CURBYTE   ; POINTER TO THE NEXT NON-BLANK OR   ; NON-TAB CHARACTER. THEN THIS CHARACTER   ; IS EXAMINED TO DETERMINE IF IT IS A   ; TERMINATOR. SAVTERM REFLECTS THE RESULTS.    ; INPUT NONE    ; OUTPUT NONE ;NEXTERM: SUBR17: TRAP  CBTABS ; CALL CHECK FOR BLANKS AND TABS  JSR  R7,TERMIN ; CALL TERMINATOR IDENTIFICATION  RTS  R7  ; RETURN .PAGE R˜4ÁµÁµ@. c$÷‹6òÁµÁµ@#—*v˜Áµ ÷­Èñò÷‹ò÷Šüñ7Š´ñ ã  SÑ*š˜÷‹òÁµ Áµ *‰ŠAŠwüýL Cï*‰8*¾˜·ŠgðwþÄþ_ÆþÍÄþß Âþê· [ðç_ÄþÓ*â˜ÀþøÍÄþß·Š5ðÂU‡*/#@% ()"'+-!È*™&; ,:=8‰Àìÿ74ñs¬ ™p€ ø8‰ Ì‹òY**™À× 0× 9 Ã¥.çÌÕ€÷Åëï& D*N™ÃEðÿE¦ÅEÿÎEÿÉ Ê ¦É É É`Ê Ê Še ¤*r™Ê` ÃE÷зïÌÐ&“ÎE�ÿŽUÌÕp̵ˆ…u*–™�wèïV/·Š“ï,8‰€ × 0× 9Ãå¸*º™8‰D5RARP JM  EGOSNF FD.I  DCEN. 1 RYNTEP JM  4D OR.W  #4Y LAEROVN ILLCA; L TRONCP RAT G SENO DFFN.I 0:D5RA ERDLAN HVETIECIR D50AD.RF OONTIOR PNTDESIRE ;; DCEN. C NDRE MPJ G SENO DFIF. C ND.E  Y7TREN MPJ 3 RDWO. L TRONCP RAT G SENO DFFN.I C:ND EC ND.E  O2PRIF MPJ G SENO DFIF. C ND.E  Y6TREN MPJ 3 RDWO. Y TRENF NDIF;.  RLNTCO APTR  EGOSNF NDIF.: DFFN IY TRENF FD.I;+ 1)(R+,1)(R MPC: DFIF DCEN. O PRIF MPJ G SENO DFIF. C ND.E  ÿBNE GSD04  ;RELOCATABLE .GLOBL TRAP ENTRGL  ;ENTER SYMBOL IN RLD BUFFER GSD04: SUB #10,R2  ;HINDEX-4 WORDS. BR GSD05  ;CONTINUE LINEAR SEARCH. ;ENTER ALL RELOCATABLE PROGRAM SECTIONS ;AND ASSOCIATED .GLOBL SYMBOLS. GSD01: MOV PERTOP-O02,R5 ;BOTTOM OF .CSECT AREA MOVB #1,WORD3+1-O02 ;UNNAMED .CSECT ID GSD10: MOV CONTOP-O02,R3 ;TOP OF .CSECT AREA MOV #10,R4 CMP R5,R3 BEQ GSD11  ;DONE, NO MORE .CSECT'S MOV -6(R5),R0 ;1ST TRIAD MOV -4(R5),R1 ;2ND TRI PAL  ; SUBROUTINE EXPRESSION   ; THIS SUBROUTINE EVALUATES AN EXPRESSION UNTIL   ; THE RETURNING TERMINATOR HIERARCHY IS SATISFIED   ; THE TERMINATOR HIERARCHY IS AS FOLLOWS:   ;  (FROM LEAST TO MOST IMPORTANT)   ;  PARENTHESES     -1   ;  COMMAS     0   ;  SEMICOLONS AND CARRIAGE-RETURNS  +1   ; IF A TERMINATOR IS ENCOUNTERED POSSESSING   ;  MORE SIGNIFICANCE THEN THE REQUESTED   € Ã¥$Ãå Ã¥.ò× A¦× Z õ*Þ™× a × z�ÃÅ ÿ�‚ðÃEÀÿÿ�lð· hð*‰7�_*š›ð‡€&‰&ÀÁž‰Â¢‰ÃŸXðÄЇ#‘ËÅê*&šøËÕ0„ ÄE€„ „  ô‡&‰Åðw<U%fx*Jš ÷-:ï@ïÄÕ• Ä ü æ$ï·(ïfÅeu*nšæ"ˆwàïDÔ À‰ Â"‰Ê ŠÃV*’šD!†•œÒ— :‰ó‡÷`¶ï÷�ŽîÅeÄï¬*¶šCÂ÷‹Æï· ¾î-$‰‰ÀŠÅeCÂV*Úš”ÄE÷‹¡ï À ÷Š”ï$‰÷ ˜î· ˆî*þš÷Š„ïÃFïƒ Ë• Ãe÷8ïË• ã• Üw*"› Ã&ïã• Y5TREN MPJ 3 RDWO. L TRONCP RAT G SENO DFFN.I Z:IF )+R1,()+R1(P CM E:FL I+ 1)(R+,1)(R MPC: FL I) 00F0(IE BLTAH NCRA BTOIN;+ 1)(R+,1)(R MPC: GEIF NTMECELASPDIR PERO PET;S )+R1,()+R1(P CM G:IF )+R1,()+R1(P CM Z:FN I; ;" INMA "EE-S--CEANTRENN O=01)(R;C ;R LENDHAS VETIECIR DALONTIDION COFN IORTPOT ENIDES;R ;T XIER B D OR WESIN LX.MAN IUEAL VRETO;S ESINXLMAY,ITNTUAQV MO: OKNELI ;T XIER B . SK TK,TS; R ROERNB NCI K EOINLQ BE  UEAL VODGOA S ITE UR SKEMA; E þþ AD MOV #CSCFLG,R2 ;RELOCATABLE, DEFINED PROG. SECTION MOV (R5),R3  ;MAXIMUM PC (SIZE) TRAP RLDFIL  ;ENTER INTO RLD BUFFER CMPB RLDCNT-O02,#51 BLT GSD07 TRAP OUTBIN  ;NO MORE ROOM; OUTPUT TRAP RLDINT  ;AND REFRESH RLD BUFFER. GSD07: MOV CONTOP-O02,R2 ;THE STARTING ADDRRSS OF UST MOV USRTOP-O02,R3 ;1ST FREE LOCATION BELOW UST MOV #WORD1,R1 ;ADDRESS CONTAINING SYMBOLIC NAME CLR @R1  ;ACCEPT ANY NAME MOV #WORD3,R4 ;.CSECT ID ALREADY SETUP MOVB   ;  TERMINATOR, THEN THE SUBROUTINE WILL RETURN.   ; EXPRESSIONS ARE EVALUATED FROM LEFT TO RIGHT AND   ; PARENTHETICAL GROUPING IS NOT PERMITTED.    ; INPUT R0 MUST EQUAL ZERO    ; OUTPUT CONDITION CODED RESULTS ARE    ;  RELATIVE TO THE ITEM COUNTER    ; RSLMOD:    ; +1 = RELOCATABLE EXPRESSION,    ; CURRENT .CSECT    ; 0 = ABSOLUTE EXPRESSION    ; -1 = .GLOBL EXPRESSION    ; -2 = RELOCATABLE ƒ Ë• ÷Lïƒãà Þ÷­Ìï>îí…*F›÷ .î÷ @îÁx‰Ãê‰b‰÷‹ïW£ Õ‹‚.j›M•Å u™æ Îež Í•'æ÷ îÖ Éæx‰ö*’›ˆ÷-îíòíÂæèíæ)Šæ"ˆÃ)ŠË¥0Ó•³*¶› ú· Êí7 ÄíæD!ˆƒ‚C   ÀÁÀKÃ*Ú›w ¨9Š Áw œ<ŠÁ<w ’?ŠÄw žBŠê*þ›æC!ˆƒ Ãåè‚ û ·œ�î·œ �îÃe›*"œè‚ Âe& Â5Ž ·c| í²œÄeÄ%¬*FœøÄåm²œ„ Äå ÷• ÏíÄe:7‘ÈíÚ*jœ÷•1¿íÄe07‘¸íà ÷Èœ²í·å0Z Cà‚ àô*Žœ„ úC`B `&æYPIT TBTS  NOFE LUVAT GE; M TEIP RAT: ESIN LS NELI BLLO.G  ;N ESIN.L  ;; NGSIESOCPRE IVCTREDIE AG PER PESIN LOFR BEUM NNEFIDE  ;; ;T XIER B T ECEJE AG PCEOR FTOR TEUNCOE IN LOWFLEROV;G INAG,P0.#6 DDA: GEPA GEPA BLLO.G GEPA BLLO.G  ;E AG P ACTJE E -ERDLAN HGEPA .NTDESIRE ;; DCEN. D ENRP JM  EGOSNF FD.I  DCEN. 1 RYNTEP JM  3D OR.W  #3Y LAEROVN ILLCA; L TRONCP RAT G SENO DFFN.I D:EN ERDLAN HVETIECIR DND.EF OONTIOR PNTDESIRE ;; DCEN. T MIúþ#GLBFLG!RELFLG,@R4 ;RELOCATABLE .GLOBL GSD08: TRAP LINSRCH BEQ GSD09  ;NO MATCH TRAP ENTRGL  ;ENTER SYMBOL IN RLD BUFFER SUB #10,R2 BR GSD08 GSD09: SUB #10,R5  ;LOOK FOR NEXT .CSECT INCB WORD3+1-O02 ;INCREMENT .CSECT ID BR GSD10 ;ENTER THE TRANSFER ADDRESS GSD11: MOV #TRNCMD!DEFFLG,R2 ;DEFINED, TRANSFER ADDRESS SPEC. MOV #ABS1,R0 ;NAME OF 6 BLANKS MOV #ABS2,R1 TSTB RSLMOD-O02;TYPE OF EXPRESSION BEQ GSD02  ;ABSOLUTE ;RELOCATABLE .END  EXPRESSION,    ; NOT CURRENT .CSECT    ; (OR .ASECT) ; TERMINATOR TABLE ENTRY ORDER ; = : , CR ; ! & - + ' " ) ( TAB BLANK % @ #  -1 ... -18 ;  TERMINATOR ANALYSIS DIAGRAM ; TERMINATORS CLASS  PAREN COMMAS  CR ;    -1  0  +1 ; ^ & - + ' " 1  PROCESS PROCESS PROCESS ; ; CR  2  RETURN RETURN  RETURN ; : = TAB BLK # @  QERROR QERROR  QERROR ; ) (  4  RETURN Q RESTART Q RE4�æ"ˆDÔ�‹Ô�ˆ…K*²œ010203040506Å*Öœ070809101112131415161718192021222324@*úœ252627282930317071727374757677787980Ð*�81828384858687888990æŠæx‰C*B�ˆ7Š(í7 :í÷ @ì7 :ì÷‹àë÷­®íªí÷M*f�íòì÷eÞì7ŠÆë`‰&‰ÄŠ ‰æ�í÷‹í•*Š� —".‹÷‹Ôì΋4΋/÷%*Òîa,®�W rŒ†÷‹¶ì%&:‰w.÷%~îæ@Œæ–‰*Ô�ˆæ‹æ–‰ˆæ–‰ˆ,‰÷%’îN‰@‰÷‹r,ø�§ì÷‹pìÐ,‰Ö `‰� Š LIRP JM  EGOSNF FD.I  DCEN. 5 RYNTEP JM  2 RDWO. L TRONCP RAT G SENO DFFN.I T:MILI ERDLAN HVETIECIR DITIM.LF OONTIOR PNTDESIRE ;; ITEX BR  ZESI CBDE T:EO ERDLAN HVETIECIR DOT;E ;C ND.E  LEITRT MPJ G SENO DFIF. C ND.E  Y4TREN MPJ 2 RDWO. L TRONCP RAT G SENO DFFN.I E:TLTI ERDLAN HVETIECIR DLEIT.TF OONTIOR PNTDESIRE ;; DCEN. L OBGLRP JM  EGOSNF FD.I  DCEN. 3 RYNTEP JM  2D OR.W  RLNTCO APTR  EGOSNF NDIF.: BLLO GR LENDHAE IVCTREDIL öþMOV GLBSY1-O02,R0 ;.CSECT NAME OF MOV GLBSY2-O02,R1 ;.END EXPRESSION BISB #RELFLG,R2 ;RELOCATABLE FLAG. GSD02: MOV JMPADR-O02,R3 ;TRANSFER ADDRESS.  BIC  #RSTFLG,R2  TRAP  RLDFIL  TRAP  OUTBIN  ;START NEW BUFFER  MOV  #GSDEND,DIRCMD-O02 ;GSD TERMINATION.  TRAP  RLDINT  TRAP  OUTBIN  MOV  #RLDCMD,DIRCMD-O02 ;RLD BLOCK DECLARATION  TRAP  RLDINT  CLR  R1  ;UNNAMED .CSECT  CLR  R2  MOVB  #RLD3.1,R0  ;ENTER INITIAL CLR START ; ,   5  RETURN RETURN  Q RESTART ;EXPE1:  ; EXPRESSION'S ENTRY POINT 1 SUBR1A:   ; PARENTHESES MINIMAL TERMINATOR  DEC  R0   ; RETURN CLASS = -1 ;EXPE2:  ; EXPRESSION'S ENTRY POINT 2 SUBR1B:   ; COMMA MINIMAL TERMINATOR  DEC  R0   ; RETURN CLASS = 0 ;EXPE3:  ; EXPRESSION'S ENTRY POINT 3 SUBR1C:   ; SEMICOLON MINIMAL TERMINATOR  INC  R0   ; RETURN CLASS = +1  TRAP  SAVREG ; CALL SAVE REGIŽŠ“&•‹eÀ&‰Á|Œ’*žÑ3ÑÑÑ>ì`‰&‰Å�Jîaw‘DîáÅe‚Œ)*BžÄå UÄå•ÄåÕ`‰÷µ@ßí *fžÎØíwþñ‡&‰÷öëÄJ‰ÁæëÂäëÃöêÈ*ŠžÀÕ€ÄH‰·ŠØë`‰æ|Œæ–‰ˆæ–‰ˆ‡ÅF*®žëÃLŠÂHŒÁFŒæzŒÀ ÷¢ëF‰À@ŒÐ»*Òž5ÐÐÐÐÐPŠ ýK�Kcã*öžËe�b€‡À�DíÀåa7�aëÀ\뇋b É’XŸ·&í· "í÷­èëxêÎe‡ãÎŒŸOBGL .OFN IORTPOT ENIDES;R ;C ND.E  CTSERA MPJ G SENO DFIF. C ND.E  Y2TREN MPJ 2 RDWO. L TRONCP RAT G SENO DFFN.I T:ECAS ERDLAN HVETIECIR DCTSE.AF OONTIOR PNTDESIRE ;; DCEN. T ECCSRP JM  EGOSNF FD.I  DCEN. T ITOL RONTCOE IV;G  Y1TREN MPJ 2 RDWO. 2 #AYRLVE OINL AL;C  RLNTCO APTR  EGOSNF NDIF.: CTSE CR LENDHAE IVCTREDIT ECCS .OFN IORTPOT ENIDES;R ;E IN LCEURSOO TRNTURE;  C SRET S MP J  NGSIESOCPRE IN LND ELLCA; E INDLEN  P RA T T:XIòþR3   ;IMPLICIT RLD. (LOCATION COUNTER MOV #10,R4   ;DEFINITION) TRAP RLDFIL TRAP OUTBIN RTS R7 .PAGE PAL ;SUBROUTINE TO ENTER A GLOBAL SYMBOL ;POINTED TO BY R2 INTO THE RLD BUFFER. ; ;ENTRGL: SUBR42: TRAP SAVREG  ;SAVE REGISTERS MOV R2,R5  ;ADDRESS OF ENTRY MOV -6(R5),R0 ;1ST TRIAD MOV -4(R5),R1 ;2ND TRIAD MOV -2(R5),R3 ;VALUE MOV #10,R4  ;BYTE COUNT MOV #SYMDIR,R2 ;SYMBOL DESTERS  MOV  R0,R1  ; R1 HIGH ORDER BYTE CONTAINS  SWAB  R1   ; THE RETURN CLASS CODE  CLRB  ICOUNT  ; ZERO THE ITEM COUNTER  CLRB  REGTYPE  ; ZERO REGISTER TYPED FLAG  CLR  R2   ; R2 HIGH ORDER BYTE CONTAINS     ; THE GENERAL ERROR FLAG     ; CLEAR THE ERROR FLAG  MOV  #RESULT,R5  ; R5 = RESULT'S ADDRESS  MOV  #QUANTITY,R4 ; R4 = QUANTITY'S ADDRESS  MOV  #CURBYTE,R3  ; R3 = CURnvnv’)ÎŒ4dµz7~nv§² q�)²å~V�Õ±€%R�ѱ–ž��±ˆ,h�<±L;º�é°ày®�é°[Xp�é°¼R`�n°€¢��n°�[†�n°&X–�n°ÈKŽ�n°KŒ�n°ˆ,Š�}~ævn°À+ˆ�n°ð”�$°^R�°8"Æ�Þ¯p!Ì�ׯ}Z�Ö¯xš�Ö¯d�¥¯€%R�‹¯ÌJ�i¯È}¦�;¯ÌN�;¯1¢�ñ�} €À š~^wÑd‰`Yz€ À zà ¢w´žw²–w¸‹w±;w¿w€ ³s€0©sêr är@ [q`"èY T~ÖwOX ®S!ŠAP˜@@¬:s:€ 42}\! ET MAOR FNGTIIS LUPT SE;F BUTB3,@R OVM: 1EINMA RNTURE;  7 R TS R  UEAL V'SOLMBSY= T ULES R ;  3 @R),R02( - OV M  SSREDD ARYNT E'SOLMBSY= 0 R ; R0.,EXNDHI  V MO R ROERD NEFIDEY PLTIUL MET S ; ORRRME  B NC I: 05BRSU L:VAAV;S NENOT PUUT O ;    ONTIUAIT SALCIPE SUTNP I ;    ET SISR ROERD NEFIDEY PLTIUL MHE T ;   E.LUVAE BLTAL BOYM S ;   HE TTHWIE LUVAS T'ULES RESACPLREE INUTROUB SISTH;   L BOYM SHE TOFE LUVAE AV SNETIOUBRSU;  îþCLARATION BISB (R5),R2 ;SYMBOL'S FLAGS BIC #RSTFLG,R2 ;KEEP UNDEF/DEF, ABS/REL, TRAP RLDFIL  ;AND INTERNAL/GLOBAL. CMPB RLDCNT-O02,#51 BLT ENTRG0  ;STILL ROOM IN RLDBUFFER TRAP OUTBIN  ;OUTPUT RLD BUFFER TRAP RLDINT  ;INITIALIZE RLD BUFFER ENTRG0: TRAP POPREG  ;RESTORE REGISTERS AND RETURN .IFNDF NOSEG ENDO02: SIZO02=ENDO02-BEGO02 .PAGE PAL ;***** OVERLAY #3 ***** O03=BEGOVR-BEGO03  ;COBYTE'S ADDRESS CLRB  RSLMOD  CLR  @R5   ; RESULT = 0  CLRB  R1   ; ZERO THE OPERATOR COUNTER  CLRB  PRGSEC  ;.CSECT ID OF PREVIOUS RELOCATABLE SYMBOL EXPR00:  ; CYCLING OPERATOR-ITEM ACQUISITION  CLRB  R2   ; ZERO THE EFFECTIVE OPERATOR     ; DEFAULT OPERATOR IS ADDITION  TSTB  ITEMIN ; PENDING ITEM ?  BEQ  EXPR01  ; NOPE, ACQUIRE INITIAL ITEM  CLRB  ITEMIN  ; YES, CLEAR THE FLAG  TSTB  ITYPEˆ`ËÀ %@  ¬Ø !º¤¶¢² €~Nx®¨£¡;¯…@ó„@P@ €@µ@‘�@t@oÀvƒ@o‡@e@ü 0!û P€~Æx!ë @!É Àv†@É ‚@¬ @� @Y @ ‡@û †@J € D À ä` ã@ æH‰‚ˆ÷‹\æp|¦ˆH~>yæ†|¦ˆ7 F¦ˆæ>‰�ˆæŠfˆÀÆ‹&ÐR fˆ^‰÷µ'SæLwìæ¸‹.ˆ� Q¤É• á•?àHæÆ‹¦ˆÎ�^‰7 ²7Ši÷•[7 \~¶y7 7 7ŠwÁ`|\‰2 7‘ˆw†  DCEN. E ODPCOP JM  EGOSNF FD.I  DCEN. 1 RYNTEP JM  5D OR.W  RLNTCO APTR  EGOSNF NDIF. H NCRA B -NO; A 20MN GTB ? NELIS HI TLEMBSEAS; T ACNTDB STT D MEORRFPEG INSSLA CICONEMMN;   5:N2AI MR LENDHAE IVCTREDI;     E ATRIOPPRAPE THO TMPJU;  Y ITNTUA@Q  P JM E ACRFTEINY BLEMSS AALONTIDION COR;F R1 LRC: 4AN2 MA 20MN GTB H NCRA B -NO;C ND#EY,ITNTUAQP CM  ??????-?--IF .ISTHS ;I 0AN2MT BL  NZIF,#TYTIANQU MPC H NCRA B -ES;Y 4AN2MêþMPUTE OFFSET FROM    ;RUN TIME OVERLAY AREA BEGO03: ;JUMP TABLE TO ENTRY POINTS ;IN THIS OVERLAY. ; JMP REND  ;ENTRY1 JMP END11  ;ENTRY2 JMP SUBR12  ;ENTRY3 JMP SUBR15  ;ENTRY4 JMP IFPRO  ;ENTRY5 JMP IFPRO2  ;ENTRY6 JMP RENDC  ;ENTRY7 JMP SUBR38  ;ENTRY8 .ENDC .PAGE PAL REND:   ; .END ASSEMBLY DIRECTIVE PROCESSOR TRAP EXPE1  ;EVALUATE EXPRESSION MOV RESULT-O03,JMP   ; HOW IS THIS ITEM TYPED ?  BLE  EXPR16  ; NUMBERS, ERRORS, AND ASCII DATA     ; SYMBOLS PROCESSED  INCB  ICOUNT  ; INCREMENT THE ITEM COUNTER  TSTB  TMPSYM  ; HAS THIS SYMBOL BEEN PACKED ?  BEQ  EXPR0G  ; YES, PROCESS PENDING ITEM  BR  EXPR0C  ; NO, PROCESS THE PENDING ITEM EXPR01:  ; INITIAL ITEM ACQUIRED  DEC  @R3   ; DECREMENT CURBYTE POINTER EXPR02:  ; CYCLING ITEM ACQUISITION  TRAP  IT!w~à ÷Üè÷ØäÁh|\‰õà & æ…wÄwl·Š/÷¦ÁH|\‰Ä7‘~à 7ŠX7І(~.z+à & æ†wŠ÷tÁH|\‰ôà òwÔþÁP|\‰Ä7‘à áÁX|\‰Ä7‘<à & æ„wB÷€÷‹ò÷�yt÷•p÷‹™ æ~¦zh‰ˆ÷>{æΉæh‰ˆ7 ÁR‰fˆ÷P{ðæÀ‰·žfˆ7 àw�æB!ˆÎeȆ·t7Š™7Š–ÀzÁx ÈEÀåù ! ! ! ! wDwÂ~{Bw.÷¯l7 j‰w,á w|wÞ7 ˆ÷-Œ&³7 „°7 h÷-l ¸7 dµf/ˆƒÃ5& æƒwP Bò Ä ‡Eõ u… LEB ? NELIS HI TLEMBSEAS; T ACNTDB STT S VETIECIR DLYMBSEAS;     G INSSLA CICONEMMN;  5 N2AI M EQ B  ?R.DI. SM AORC NIMONE M ; S AGFL,TIRMDAS # TBBI 4:N2AI MC ND.E  RDWORP JM  EGOSNF FD.I  DCEN. 3 RYNTEP JM  4D OR.W  RLNTCO APTR  EGOSNF NDIF.: RDWO ERDLAN HVETIECIR DRDWO .OFN IORTPOT ENIDES;R ;H NCRA B -NO;A 20MN GTB ? NELIS HI TLEMBSEAS;T ACNTDB STT: 23INMA AGFLG INNDPEM TE IET;S  INEMIT CBIN  CHANBR- O ;N 0AN2MT BG  E?IN Læþ#ADR-O03 ;INCREMENT TAPE COUNT IN ;CASE TAPE STILL IN READER MOV SILB-O03,R4 INC 14(R4) ;TAPE COUNT TSTB ERROR-O03 BNE END00 TSTB ICOUNT-O03 BLE END00 CMPB #-1,RSLMOD-O03 BNE END01 INCB AERROR-O03 ;.GLOBL IN .END EXPRESSION END00: MOV #1,JMPADR-O03 END01: MOV JMPADR-O03,TBBUF-O03 CLRB BINOUT-O03 MOVB #100,PAGING-O03 TSTB CNSTLV-O03 ;STILL IN A NEST OF CONDITIONALS? BEQ END01A  ;NO - BRANCH INCB QERROR-O03 ;QUESTIONABLE SYNTAX END01A: T$EM ; CALL ITEM SUBROUTINE  BGT  EXPR0C  ; NON-VOID ITEM ENCOUNTERED   ; VOID ITEM ENCOUNTERED AND PROCESSED EXPR12: MOVB  SAVTERM,R0  ; R0 = ENCODED TERMINATOR  ADD  #3,R0  ; R0 = R0+3  BGT  EXPR04 ; = : TERMINATORS IDENTIFIED  BEQ  EXPR09 ; , TERMINATOR IDENTIFIED  ADD  #2,R0  ; R0 = R0+2  BGE  EXPR0B ; CR ; TERMINATORS IDENTIFIED  ADD  #6,R0  ; R0 = R0+6  BGE  EXPR05 ; ! & - + %~–{Í Í.õ,ÅÄ �œÂeÁ æ�â—"â—$Ó¦æ"ˆŽ€Ì—"PA—"TAÆÒ æ ÀÄ­÷7‘ô—"37¶·ŠîÁR‰^‰´~|Áh‰^‰Á–‰É fˆæ܉fˆfˆÁx‰^‰Áª‰^‰ÁH‰^‰Á>‰^‰wŒ¸‹–‰Ü‰^¸‹x‰ê‰ N¸‹ª‰ø‰µz¸‹R‰À‰4d¸‹h‰Î‰4d PAL11R V004C I~†| # 7Šð 7‹À�¬ À¥üÿÀ¥ûÿ‰÷ Ä ‰÷‹ì ÷‹â ·Še wz7 Ì 7 Ê Ã•÷¢ z .÷Ø Ò ÿÕ z 7& æ€wÖÁ•ŠD‰� Ä~Šø~þ| Ât ÃX X‰ ÷B 7 l 7 „ ‰÷å@ ÃT Ãí* ƒ ƒ ƒ ƒ Ã%þÙ÷‹O ÏÁv    ƒÁ5�  Àø 7 à 7þ 7ISTHE BLEMSS;A  CTTADN TBTS 2:N2AI M. .T.S PHE TIND UNFOL BOYM S ; 24INMA  T BG E BLTAL BOYM SNTNEMAER PCHARSEL AL C ; H RCEA S APTR G INNDPES IEMITS HI T ; 22INMA  E BL ? E YP TMSTE INEMIERET D ; PETY I TBTS 1:N2AI MT XI E BR G INSTLIE THT MAOR F ;     TOD SE UIS1 - =ZESI;      !EDITEXD AND IEIFNTDE I;    . CRD ANN LOCOMISE;  ZESI CBDE A:20MN 23INMA  T BL  +2R0 =R0;  0 ,R#2  D AD D IEIFNTDE IMAOM C ; âþ'RAP ENDLINE END11: ;SYMBOL TABLE IS FIXED SO ;ALL OF FREE CORE TO STACK. MOV USRTOP-O03,R6 MOV R6,STKBOT-O03 TSTB SECMOD-O03  ;.ASECT BEQ END20 MOV @USERPC-O03,R4 ;CURRENT PC CMP R4,@HIRPC-O03 ;TO MAX. PC BLOS END20  ;IF THE BIT #1,R4  ;FORMER IS HIGHER BEQ END24  ;EVEN. INC R4  ;MAKE EVEN END24: MOV R4,@HIRPC-O03 END20: MOV ERRSUM-O03,R4 MOV #ERRMSG+16-BEGO03+BEGOVR,R3 MOV #6,R2 TRAP BINASC  ;CALL BIN TO ASCII CONVERTER MO(' "    ;  TERMINATORS IDENTIFIED  ADD  #2,R0  ; R0 = R0+2  BGE  EXPR0A ; ) ( TERMINATORS IDENTIFIED CMP R0,#-6  ;CHECK FOR * AND / TERMINATORS BGT EXPRGO ADD #13.,R0 BR EXPR05 ; EXPRGO:  ADD  #3,R0  ; R0 = R0+3  BNE  EXPR04 ; TAB BLANK @ #    ;  TERMINATORS IDENTIFIED    ; % TERMINATOR IDENTIFIED  MOVB  #REGFLG,REGTYPE ; TYPE EXPRESSION AS REGISTER  BR  EXPR02  ; ACQUI)¨ ÷� Á& Â$ Ã~v}è ó� À•Ê ÄH‰w´7‹ ÷‹ñ Á À  ¾ ƒÁ5� ° ÷ú V ÿÅ   7ŠÅ Á¯Â”Ó÷•ÿÿ² 7Šr ‰÷ – À�h À¥üÿÀ¥ûÿ¿~î}‰÷‹® wJ÷‹  ·Š# ÷¥ýÿ@ éw0ÿÕ< ‰û÷Õ@z ‰ÜÁ( ÷µl ·Šõ ñÕÿ÷¥ýÿ ÍÞŠwôÉÕ@Ɖ÷  ‰÷‹@ ·ŠÃ >~f~Á•ŠD‰÷& 2 ÷" . ÷Š wÄÅŠ  Ä÷ Ü J‰H‰÷ê w¤ƒ  ‡@2 úÿ r,üÿ “€Â�2 Âåç·| À‡Á•~Þ~–‰Ã܉b‰Àæ‹fˆÀ ú÷p F‰À¢ Á    ÄH‰À¯Á”ÂH‰Â> Ã< ÁzŠ 23INMA  Q BE 1 0+ R =R0;   0 R CBIN R VENE: = S ORATINRMTE;     D SEESOCPRS EMITD OI VO, N ;    ES Y ; 21INMA  T BG ? D UNFOS ERCTRAHA CNY AREWE;  R HATCCN  B ST T  ARLE CAGFLG INNDPEM TE I ;   : 20INMA ISYSALANX TAYN SALTINI I; LDIE FHE TNGHIUSFLE NUTION C ; 10INMA  P JM O:N1AI MR ROERE ASPH, PENO;  I N1AI M NE B  ?C. P'SERUS= E LUVAS L'BOYM S ; C RPSE@UY,ITNTUA Q MP C  ORRR EEDINEF DLYIPLTMU, ESÞþ+V #PASS,R5 CMPB LOPASS-O03,@R5 ;IS THIS THE LISTING PASS? BEQ END21  ;YES - BRANCH CMPB BOPASS-O03,@R5 ;IS THE BIN OUT PASS? BEQ END21A  ;YES - BRANCH BR END21B END21: MOV #LOLB,R1 ;.CLOSE AND .RELEASE ;ERROR COUNT TO LISTING DEVICE MOV #ERRMSG-BEGO03+BEGOVR,-(R6) MOV R1,-(R6) EMT WRCMD TRAP CLEAN  ;LISTING FILE. END21A: CMPB BOPASS-O03,@R5 ;IS THIS THE BIN OUT PASS? BNE END21B  ;NO - BRANCH MOV #OBJEND,DIRCMD-O03 TRAP RLDINT TRAP O,RE THE NEXT ITEM EXPR04:  ; CLASS 3 TERMINATORS PROCESSED  TRAP  SETERR ; CALL SET ERRORS  BR  EXPR02  ; ACQUIRE THE NEXT ITEM EXPR05:  ; CLASS 1 TERMINATORS PROCESSED  (OPERATORS)  DEC  R0   ; R0 = R0-1  BGT  EXPR07  ; SEPARATE OPERATORS ! & - +  INC  @R3   ; INCREMENT CURBYTE POINTER  CLR  @R4   ; QUANTITY = 0  MOVB  @0(R3),@R4  ; PLACE THE FIRST ASCII CHAR.     ; INTO QUANTITY LOW BYTE -Ä~ŠÌ@X‰ʵ Z‰Âå÷Å. ÷•/ à ı~VC!$@úÿAüÿÂ(CH‰×­ )N‰F‰Âä Ãâ ÁzŠ Ä~ŠÌ•`X‰Z‰ÂåúÅå·ŠÝ ÖÂÀ¯Á”÷‹Ö À® Á¬ ÂÕ ÃŠ ÂE—H‰N‰›~Î÷˜ F‰N‰÷Ž F‰  À• ÄH‰N‰‡&‰…@úÿAüÿCþÿÄÂBÓÂE—H‰×­h )N‰F‰`‰ ‰÷X & ÄB ´ ÷‹ ÷‹g ÷¥ÿÿF ×~F€·Šß÷ ÷ü º 7ŠG ÷•@& ÷‹) ·Š½‰Æò·ð÷‹ Ä8 ?!â ƒÄ5„ ?Ô ÄÊ ÃüƒÂ$‰Å‹Í­ÜÍ­ôÁx‰æîƒfˆ^‰~¾€Í­Þ÷¢ F‰N‰Äæ‹æ–‰�ˆÄ ø^‰÷•H» ÂH‰·ö Y ; 1MINMA  Q BE ? D NEFIDEY PLTIUL MOLMBSYS I ; 1)(R,1AGFLMD # PBCM R ROERE ASPH, PENO;  I N1AI M EQ B  T?SEY ADREALG LA FELAB LIS;  1 @RG,FLAB#L  B IT B  SSPAT RSFIT NO, NDOU F ;  : 1NINMA LEAB TOLMBSYS R'SE UTOIN;     N IOATRMFOINS HI TERNT E ; 1KINMA  R B  UEAL V'SOLMBSYE AV SLLCA ; L VAAV S APTR D NEFIDE;     Y PLTIUL MASL BOYM SAGFL;  ) R11(G,LADF#M  B IS B: 1MINMA ERNT ES,ONTIESQUH OT BTOO Úþ/UTBIN MOV #20.,R4  ;DUMP TRAILER END25: MOV #TRLBUF,-(R6) MOV #BOLB,-(R6) MOV @R6,R1  ;FOR CLEAN EMT WRCMD DEC R4 BGE END25    ;.CLOSE AND .RELEASE TRAP CLEAN  ;BINARY FILE. END21B: MOVB #DEFFLG!GLBFLG,STMASK-O03 MOV #COLB,R2 MOV R2,STLLS1+2 TST @R2  ;INIT BNE END13  ;COMMAND OUT IF MOV R2,-(R6) ;NOT ALREADY DONE. EMT INCMD  ;.INIT END13: CMPB USPASS-O03,@R5 ;IS THE UNDEF SYM PASS? BEQ END02  ;YES - BRANCH END12: CLRB0  TST  R0   ; WAS THE TERMINATOR ' ?  BEQ  EXPR06  ; YES, SERVICE THE OPERATION  INC  @R3   ; INCREMENT CURBYTE POINTER  MOVB  @0(R3),QUANTITY+1 ; PLACE THE SECOND ASCII CHAR.     ; INTO QUANTITY HIGH BYTE EXPR06: INC  @R3   ; INCREMENT CURBYTE POINTER EXPR16:  CLRB  ITYPE  CLR  R0  BR  EXPR0C  ; SERVICE THE OPERATION EXPR07: TSTB  R1   ; CHECK THE OPERATOR COUNTER  BLE  EXPR08  ; FIR1Ê ¦ˆÍ­ 7Š¡ Áª‰wÜÍ­¤ Ãø‰b‰7Š˜"‰¦ˆî^‰�Šw£ã æ>ˆ÷¤~6�< ÷  ÷R‰*÷À‰&÷æv�¦ˆ¦ˆw° æîƒæH‰ˆæH‰ˆwT  END &‰ÅÖÄÔ7ŠýÅe‰Àå ÷•üÿ ÅåD!÷‹í~®�ßBͽíõ%(‰÷‹ã wŠÝŬÄ�wŠ»÷ ¦Ý÷ Êæª‰ˆ`‰·Š“wúÿ†wüÿ‚w€Â€Š7Šž&‰…ÁLÂåÀ¦fæ"ˆÁeÀ 1~&‚÷� ͵ ñ•R͵ñ•%͵É•=Ñ C͵͵@ñ•Gæ**‰±±Dþÿƒ`$‰ DÝ!!ÿÂÃe $‰ÍµÈ~ž‚@ñ•G*‰÷eª·Š N ; 1JINMA  E BN ? EDINEF D; ) R11(G,LADF#M PBCM  LYIPLTMUY ADREALL BOYM SHE TIS S.YEF ICHANBR; M N1AIME BN  ?ET SDYEALR AAGFLL BELAS I ;1 @RG,FLAB#L  B IT B  SSPAT RSFI, NDOU F ;    SSPAT RSFIE THT NO;  N N1AI M GT B  ?SSREOGPRN IISS AS PCHHI W ; #1S,AS P PBCM L:N1AI MD ELFIE THG INSHLU FUEINNTCO;  O N1AI M BR E BLTAL BOYM S'SERUSY LAEROVL AL C ; AYRLOV  P RA T  AGFLD NEFIDES L'BOYM SET S ; R1,@LGFFDE # SBBI : Öþ3 STMASK-O03 MOV #SLLB,R1 MOV R1,STLLS1+2 CMPB STPASS-O03,@R5 ;IS THIS SYM LST PASS? BNE END22  ;NO - BRANCH MOV #SLFB,R3 ;.INIT,.DELETE,.OPEN TRAP DELOUT  ;SYMBOL TABLE DATA SET CLRB STPASS-O03 END02: TRAP STLIST  ;LIST SYMBOLS MOV R2,-(R6) ;WAIT FOR UNDEFINED SYMBOLS EMT WTCMD BR END12    ;CLOSE AND END22: TRAP CLEAN  ;RELEASE SYM.    ;TABLE FILE. END22A: INCB @R5  ;INCREASE PASS NUMBER CMPB @R5,MAXPASS-O03 BGT END23 MO4ST OPERATOR IS VALID  TRAP  SETERR ; CALL SET ERRORS  CLRB  R2   ; ZERO THE EFFECTIVE OPERATOR EXPR08: CLRB  R1  INCB  R1   ; INCREMENT OPERATOR COUNTER  DEC  R0   ; ENCODE OPERATOR SUCH THAT     ; ADDITION IS ENCODED AS ZERO  BISB  R0,R2  ; SET THE EFFECTIVE OPERATOR  BR  EXPR02  ; PROCESS THE NEXT ITEM EXPR09:  ; CLASS 5 TERMINATORS PROCESSED  BIT  #177400,R1  ; ARE COMMAS VALIDATED ?  BL5ðwêþ(‰wÖþÀZŠÈEø Èe8 ÁªÁåfQ$Hà æˆ‡ R‰÷ Šqú‚   ·Šz÷ M~ƒv· r÷•ÿÿbw ÀR‰ æNƒ‰÷‹b‰þ÷µTa^Q À�ðÀe € € € Ö ·Š³  q|ƒÐÈÇÍÁ ÔÁ Ò®~ŽƒæRƒÑ÷Šõ·Š‰7Šë÷‹è»÷Šâ¸÷ÿÿÜ´·ŠÓ& æ�w ÷‹Ä·Š¾Ö wHÿÀ ‰÷‹Z÷‹½7 ”‡ ERRORS ~„÷•ŠX@‰·Št÷ˆÄ�÷ R‰>‰·Š· Dùß>Ã¥ ÃU ÂJŠÊ�· *ï&}ÃïyÃÁþ Áÿ@‰ Ć–Ãüû€‰ÀÁe÷Šú1PINMA IDT ECCS; ) R11(D,MOECSB OVM G LA FEDINEF;D   1PINMA EQB Y PLTIUL MDERIEROVT ON;D  1)(R,1AGFLMD#B MPC 1 @RG,FLEL#R  B IS B  1PINMA  Q BE D MOEC S TBTS G LA FELAB L'SOLMBSYT SE;  1 @RG,FLAB#L  B IS B: 1KINMA ERNTOU CONTICALO;     Y BLEMSS AHE T =LTSURE;  3 @RC,RPSE@U  V MO S AS PSTIR FD,UNFOT NO;   J:N1AI MD ELFIE THG INSHLU FUEINNTCO;  O N1AI M BR R ROERE ASPHE THT SE;  R ROER P CBIN I:N1AI MS AS PSTIRÒþ7V SILB-O03,-(R6) ;CLOSE SOURCE EMT CLS  ;INPUT MOV SITAP2-O03,SITAPE-O03 ;# OF TAPES TST SILB1-O03  ;ONE WAS BEQ END26  ;PARAMETER FILE MOV #SILB1,SILB-O03 ;BACK TO MOV #SIFB1,SIFB-O03 ;DATA SET ONE MOV SITAP1-O03,SITAPE-O03 ;# OF TAPES END26: MOV #EOTBUF-BEGO03+BEGOVR,-(R6) ;PRINT MOV R2,-(R6)   ;"END" EMT WRCMD MOV R2,-(R6) EMT WTCMD JMP SETPASS-O03 END23: MOV #ERRMSG-BEGO03+BEGOVR,-(R6) ;ERROR LINE COUNT MOV #COLB,-(R6) ;TO COM8E  EXPR0B  ; YES, PREPARE TO RETURN EXPR0A:  ; CLASS 4 TERMINATORS PROCESSED  BIT  #177400,R1  ; ARE PARENTHESES VALIDATED ?  BLT  EXPR0B  ; YES, PREPARE TO RETURN     ; NO, ABORT THE EXPRESSION  CLR  @R5   ; RESULT = 0  TRAP  SETERR ; CALL SET ERRORS  INC  @R3   ; INCREMENT CURBYTE POINTER  BR  EXPR00  ; RESTART EXPRESSION EVALUATION EXPR0B:  ; CLASS 2 TERMINATORS PROCESSED  SWAB  R2   9~~„ÅJŠ<‰÷‹·Š•w® O Ì Î+÷‹æ. &‰Ä÷ºJ‰ÁÆÄ&‰÷¦÷¥ÿÿ¼÷ ˜ÄJ‰Ã ÄÁ€Â~H‰·Š~*‰þ~ö„·œ;·Š5ÎÎ% ÷‹|÷¥ÿÿt·Š P‰À<‰÷‹^ ÷ rP?Š0÷ h·Š(öÁB�Î c÷Š8·ŠÕwî ÷‹.FÀß× 0× 9¿~n…ÃåÃ¥$Ãå Ã¥.ôÃ¥  × A× Z × a× z ÃÅ ÿ�ÄÃEÀÿÿ�®· ª·Še´·Š¬Å¨÷ Ò¨Á•ŠD‰Â–ŠÁB�÷ ›~æ…·š· 7Š”‰B‰÷ |æx‰ˆ÷å P· fá �?  ÿ(D7 ’7 LÀP·6â ·.Á( 0 þÿÀåù÷•= FOT ND,UNFOT NO;    S ESGRRO PINS ISSPAT RSFI;  J N1AI M EQ B  ?SSREOGPRN IISS AS PCHHI W ; #1S,AS P PBCM . .T.S UIND UNFOS WAL BOYM S ; 1LINMA  Q BE ? D UNFOL BOYM SHE TAS W ;  R0  T TS H:N1AI MD ELFIE THG INSHLU FUEINNTCO;  O N1AI M BR X TAYN SLEABONTIESQUY ELITINEF D ; ORRRQE  B NC I  ONTIUAIT SIDAL VE,OP N ; 1HINMA  E BN ? R TEUNCON IOATOC L ;     LYMBSEASE THL BOYM SHE TIS; 007412,#+1YMPSTMÎþ;MAND OUTPUT DEVICE EMT WRCMD MOV #COLB,-(R6) EMT WTCMD JMP RESTART-O03 EOTBUF: .WORD 10  ;MESSAGE AT END .WORD 0  ;OF ALL PASSES .WORD 10  ;EXCEPT THE LAST .BYTE CR,LF .ASCII / END/ .BYTE CR,LF .EVEN .PAGE PAL  ; SECTION SYMBOL TABLE LISTING   ; GENERATE AN ALPHABETIZED LISTING OF THE   ; USERS SYMBOL TABLE.   ; 1) ENTIRE SYMBOL TABLE IF STMASK CONTAINS 0.   ; TH< ; GENERAL ERROR FLAG =  MOVB  R2,ERROR  ; R2 HIGH ORDER BYTE  CMPB  #1,RSLMOD  BGE  EXPR0R  INCB  AERROR EXPR0R: TSTB PRGSEC BEQ EXPR0P  ;NO .CSECT CMPB PRGSEC,SECMOD BEQ EXPR0P  ;CURRENT .CSECT MOVB #-2,RSLMOD ;NOT CURRENT. EXPR0P:  TRAP  SETREG ; CALL SET REGISTERS  TSTB  ICOUNT  ; SET THE CONDITION CODES  RTS  R7  ; RETURN EXPR0C:  ; NON-VOID ITEM ENCOUNTERED AND PROCESSED  INCB  ICOUNT  ; INCR=÷ ±R÷Œ:NÀÿÿ7�_~^†A‰÷ 7 7 î7 wÄ7 ¼7 HÀ&ÐRÐ7ÈÀt‰æÔˆæÎˆÀÚÀåЀ wŠæÜæÚæ�f‰·ŠÔ ‰·ŠQY~Ö†·Š_ÎÝÚްεöÕÿ·Š9‰·Z·œ·–Ö%¯,÷‹0÷‹z·Šw&wŠƒɵ×ÿ·ŠÿöEÀ•ÁLÄH‰A÷‹I%÷‹Dåÿ4¬~N‡ÿ/dƒÿ\÷‹ØÙñ¥ÿ‰‰°‰ÉÅ÷‹ ÉÉÕ ñ�ÿÉÕV‰Á@£À@£‡æâ@‰ÅrŠÄ€‰Ã†Š ŠÂŠÀ�ìx¾‡ˆTˆŒˆDˆI~Ƈ̇fˆˆ ‰·ŠSÌ•ÿÿ:÷‹ª÷÷‹ŸóÌïÆÌåŒ 퇓#ê(×­FûÿO×­>üÿK·Š  P CM G:N1AI M. EDINEF DLYIPLTMU;     G INBES AOLMBSYS HI TAGFL; ) R11(G,LADF#M  B IS B  ORRR EERSTGIREE THT SE;  R ROER R CBIN N IOATTUSID LIVA, PENO;  G N1AI M EQ B  ?ERSTGIRED PETYL BOYM SIS;  1 @R2, R TBBI F:N1AI MD ELFI;     L BELAE THG INSHLU FUEINNTCOT PUUT O ;     ONTIUAIT SALCIPE SUTNP I ;     D.REROERD AND TEECET D ;   RE AREHES CEANARPEAPR TEUNCON IOATOC LLYMBSEAS;   R TEISEG RASD PETYÊþ?IS INCLUDES .CSECT TABLE.   ; 2) UNDEFINED ENTRIES ONLY IF STMASK CONTAINS DEFFLG!GLBFLG   ; LINEARLY SEARCH THE TABLE WHICH IS ORDERED. ;NOTE: ;ALL ENTRIES ARE ENCODED 16-BIT UNSIGNED, ;POSITIVE, INTEGERS. ;STLIST: SUBR12: TRAP SAVREG  ;SAVE REGISTERS MOV CONTOP-O03,R5 ;BOTTOM OF UST MOV USRTOP-O03,R4 ;TOP OF UST CLRB LCSECT-O03  ;NOT CSECT'S ADD #10,R5  ;NULLIFY SUBTRACT AT STLST1 STLST0: TRAP ROTATE  ;CALL ROTATE I/O BUFFERS SUB #11,R0  ;R0=BHADRS@EMENT ITEM COUNTER  TSTB  ITYPE  ; HOW IS THE ITEM TYPED ?  BLE  EXPR0I ; NUMBERS, ERRORS, AND ASCII DATA   ; SYMBOLS PROCESSED  TRAP  SEARCH ; CALL SEARCH THE SYMBOL TABLE  BLT  EXPR0F  ; NOT FOUND IN THE TABLE AT ALL  BEQ  EXPR0G  ; FOUND AS A USER'S SYMBOL    ; FOUND AS A PERMANENT SYMBOL BITB #REDEF,TFLAGS ;HAS PERMANENT SYMBOL BEEN REDEFINED? BNE EXPR0M  ; YES MOVB #DEFFLG,TFLAGS ; MAKE LINE USER SYMBOL BR EXAH ‰÷ š·Š ÷‹`÷¥ÿÿX·Šñ÷�EùÎ~>ˆP‰ú ‰·ŠÙ‰Ó)‰&·ŠËÍË• ‰·Š·‰ÌŒ Œ Sÿ¥,ôë‰ç·Šä‰ ·Š“Í×Ë•7 t7 nNS‹Š‹Š·bw’÷‹…ù~¶ˆ#÷%h‰²÷ –)榈÷‹Œ÷­96æ’ˆ÷h‰Š÷Ή†÷„h÷¥w>÷ X · V÷B7Š�‰w’æTˆwLPQARDå~.‰MBINTU,EEGxðHxð\M€M8Ü€f¸~¦‰¤x€Mô&µW4dô&µWE BEREVT NOAN CLSBELA;   . EXNDHIN IESIDES RSSREDD ALEAB T ;   OLMBSYE IVCTFEEFE THE INUTROUB SISTHG INERNT EONUP;   S NTMEGNSIASL BELAL ALS IEIFER VE,INUTROUB SISTH;  G INSSCERO PELAB L ;4 N1AIMR B T PSN IAGFLD INEFED RET;S  EXNDHI,@EFED#R SBBI 0:N4AI MC ND.E  GNSIAS MPJ G SENO DFIF. C ND.E  Y7TREN MPJ 4 #AYRLVE;O   4D OR.W  RLNTCO APTR  NTMEGNSIAST ECIR;D   EGOSNF NDIF. L BELAA S ASSCERO PS,YE;  F N1AI M EQ B  ?ONOL C AORATINRMTEÆþC(2,3)-17. MOV R0,@R3  ;CURLIST=R0,SECOND DATA BYTE MOVB #-2,LISTSC-O03 ;LIST SYMBOL COUNTER = -3 STLST1: SUB #10,R5  ;MOVE FLAG WORD POINTER. CMP R5,R4 BEQ STLST2  ;END OF TABLE. TSTB LCSECT-O03 BNE STLST4  ;.CSECT TABLE MOV R5,R2  ;FOR DECODE BITB STMASK-O03,@R5 ;IGNORE DEFINED SYMBOLS BNE STLST1  ;IF STMASK CONTAINS DEFFLG!GLBFLG ; CMP HUSERPC-O03,R5 ; ;BEQ STLST1  ;IGNORE USER'S PC BR DECODE STLST2:  TRAP  STLLST ; CALL SYMBOLDPR0I EXPR0M:  TRAP  SEARCH ; CALL SEARCH THE SYMBOL TABLE  BR  EXPR0G  ; FOUND AS A USERS SYMBOL EXPR0F: TRAP ENTER   ; ENTER SYMBOL INTO THE SYMBOL TABLE EXPR0L:  INCB  UERROR  ; UNDEFINED SYMBOL ERROR  BIS  #000400,R2  ; SET THE GENERAL ERROR  BR  EXPR12  ; PROCESS THE NEXT OPERATOR     ; CHECK THE TERMINATOR EXPR0G:  ; CHECK SYMBOLS FLAGS  MOVB  TFLAGS+1,R0  ; R0 = MULTIPLY DEFINED BYTE  CMPB  #MDFLAG,E4dô&µWö ô&µW Nô&µWµz%p:**†~Š PAGE XXXXX MM-DD-YY HH:MM:SS:XX € P&ynv6‹Æ‹ÿO~–ЬžÆ�.�‘Ê‘„–†–ˆ–2�P–X–ì’¬“<šv�ª‘�„�"šÈ’À‚Ú’^ž|––,––Ÿ”‡�Ö�œ�’’ž0žŸÜ~šžpž¶ƒR“<“ ~ôb{Ø�æ’æ�~‹  »~†‹D VESAS WA;  + 6)(R  B ST T  SSREDD ALTSURE= 3 R ; R3T,ULES#R  V MO T ANSTON CAGFLR TEISEG R =R2;  2 ,RLGGFRE # OV M  SSREDD AGSLATF= 1 R ; R1S,AGFL#T  V MO : 15INMA ST UTOINR TEEN;   R TEEN APTR  T.USN INDOU F ;  15INMA EQB . ERTHUR F ;     CHARSED ANG LA FEDINEF-DRET SEL BOYM SNTNEMAER P A ;     ASD RETEUNCOENF I ; 40INMA  T BG E BLTAL BOYM S'SERUSE THH RCEA SLLCA; CHARSE  P RA T: 14INMA ORATINRMÂþG TABLE LISTED OUTPUT ;OUTPUT .CSECT TABLE TSTB STMASK-O03 BNE STLST3  ;EITHER NO .CSECT OR ALREADY DONE COMB STMASK-O03  ;REVERSE SWITCH MOV PERTOP-O03,R5 ;BOTTOM OF .CSECT TABLE MOV CONTOP-O03,R4 ;TOP OF .CSECT TABLE COMB LCSECT-O03  ;CSECT PROCESSING MOV #412,WORD4-O03 ;CSECT #1, LABEL FLAG, DEFINED BR STLST0 STLST3: TST SLLB-O03 ;SYMBOL LISTING DEVICE INITED YET? BEQ STLSTE ;NO - BRANCH MOV #SLLB,-(R6) ;WAIT FOR OUTPUT TERMINATION EMT WTCMD SHR0  ; SYMBOL MULTIPLY DEFINED ?  BNE  EXPR0H  ; NOPE  INCB  DERROR  ; DOUBLY DEFINED ERROR  BIS  #000400,R2  ; SET THE GENERAL ERROR EXPR0H:  MOVB  TFLAGS,R0  ; R0=TEMPORARY FLAGS.  BITB  #GLBFLG,R0  BNE  EXPR0I  BITB  #DEFFLG,R0  ; SYMBOL DEFINED ?  BEQ  EXPR0L  ; NOPE  BITB  #REGFLG,R0  ; REGISTER SYMBOL ?  BEQ  EXPR0I  ; NOPE  MOVB  #REGFLG,REGTYPE ; YES, TYPE THE EXPRESIp~þ‹ø~vŒ¶Îå¦Îe¨‡w:ï÷•ÿ½ýÆ ý7 vü7 ˆü7 ²ü7 �ü7 ¾ü7 ï~îŒNü7 –ü7 PüæÊŒæ!ˆæ¸Œ& æ!ˆwìæ\üæVüˆ×­€ü÷­xüäýL‰wàøæ<üæ6üˆw8ù7 Ìü7ŠCý7Š>ý7ŠÙû7Šßû7Š0ý7ŠÝû7ŠÇû7ŠÖû÷•ZTES OLMBSYS HI TCKTA S ; 6)(R,-R0  V MO 3:N1AI MT ENNMIGSS ACTREDIS HI TRTBO A ; 1EINMA  P JM N LOCOA S WAR TONAMIER T ; 10INMA  E BL ? ORATINRMTEE THS WAT HA W ;  R0  T TS X TAYN SLEABONTIESQUS A ;     EDERIDNSCOS EMITR HEOTL AL;  R ROER Q CBIN L BOYM SEDORRR-EUNN AAS WEMIT;  3 N1AI M GT B  PETYS M'TE IHE TCKHE C ; PETY I TBTS 1:N1AI M. NGSIESOCPRR FOS ERSTGIREE THE IZALTINI I ;   ND AERNTOU CONTICALOY ¾þKTLSTE:  TRAP POPREG  ; RETURN AFTER POPPING REGISTERS. STLST4: INCB WORD4+1-O03  ;START WITH 002 MOV -6(R5),WORD1-O03 MOV -4(R5),WORD2-O03 MOV @R5,WORD3-O03 ;SIZE OF .CSECT MOV #WORD4,R2 CLRB LISTSC-O03  ;1 SYMBOL PER LINE.   ; DECODE A 2-WORD MOD40 PACKED SYMBOL TO   ; STANDARD ASCII ENCODED CHARACTERS DECODE: TRAP SAVREG  ; CALL SAVE REGISTERS MOV R2,R5  MOV  CURLIST-O03,R1  ; R1 = CUR. LIST. BUF. ADDRESS SUB #6,R2  ;ADDRESS OF 1ST LSION     ; AS REGISTER EXPR0I:  ; DECODE THE EFFECTIVE OPERATION    ; CAUTION, HANDLERS SIZE LIMITED.  TSTB  R1   ; WERE ANY OPERATORS SEEN ?  BGE  EXPR1I  ; YES, OR VALID SITUATION  TRAP  SETERR ; CALL SET ERRORS EXPR1I:  TRAP  SAVREG  MOVB  R2,R0  MOVB  TFLAGS,R1 EXPR0T:  ASL  R0  JMP  @EXJTAB(R0) EXJTAB:  .WORD  EXPR0J  ;THIS ENABLES A  .WORD  EXPR0S  ;JMP TO  .WORD  EXPRL0  ;THE AM~f�7ý‰�&ÐRÐ æòûˆñµ@w&ûñµ·Š‹ûÄ• · êûQ$BB`@ KËåá• w¼üÊ¥ ÷e<Âû2¡ÿÿŠ”2‘ÿÿ2‘·vü ¤þÒ~Þ�À  ·Š?û‰À�\üÀe÷‹–ürwÎ÷‹ˆüð÷‹’ü·ŠûÀ éw&&‰ ‰ÁœŠÂÀ‰Ö‹w~øÿÕü·ŠãúñÕÿ×-Dü¯~VŽ·ŠÍú8À ×­ªü·Š¹ú/ËDûÉÕ÷‹ü ÉÕ ñ¥ÿñ�ýûÉÕV‰×­tü ɵñ¥ÿáñÕÿ‰ÞɵÖñ¥ÿôÿ-¼úìúÎw~ÎŽÿ÷‹Îû€ŠÀe ÷Š¢û/÷‹´û‰ ÷‹šûõ·Š¦û÷‹�ûðw\õ÷µ’û÷‹~û×-nú†�ã×-fúš�ß \ú÷‹bûÙwløBLEMSS AHE TFYTIENID ;   , ORATINRMTEE THG INEDECPRL BOYM SHE TSSCERO P ;   TSENNMIGSS ACTREDID ANS ELAB LOR FNGSIESOCPRL IAITIN;  H NCRA B -NO;0 N1AIMT BG  L?BELAS HI TE"BLEMSS"A;T ACNTDB STT: 06INMA LDIE FORATEROPS ESOCPR- O ;N 20INMA MPJ H NCRA B -ES;Y    2)(-? :" "ORATINRMTES ;I 06INMA EQB: 04INMA ITEXO G -NO;A 20MN BR  CHANBR- S YE;1 N1AIM LEB ? NELIS HI TLEMBSEAS; T ACNTDB STT H NCRA B -NO;4 N0AIME BL  1)(-? =" "ORATINRMTES ;I R02,#D AD  ORATºþOTRIAD MOV #2,R0  ;TWO TRIAD COUNTER. DECOD0: MOV (R2)+,-(R6) ;BINARY WORD MOV R1,-(R6) ;ADDRESS OF BYTE STRING MOV #1,-(R6) ;RAD50 CODE EMT 42 ADD #3,R1  ;MOVE BYTE STRING POINTER DEC R0  ;COUNTER FOR 2 PASSES BNE DECOD0 INC R1    ; FORMAT THE LISTED OUPTUT  BITB  #RELFLG,@R5  ;ENABLES A SUFIX OF R WITHTHE  BEQ  DECODF  ;OUTPUT OF SYMBOL TABLE FOR  MOVB  #'R,10(R1)  ;RELOCATABLE SYMBOLS  BR  DECOD8 DECODF:  BITB PPPROPRIATE  .WORD  EXPRLA  ;OPERATOR HANDLER .WORD EXPMUL      % .WORD EXPDIV      %     ; OPERATION EXPR0J:  ; PERFORM THE REQUESTED OPERATION  TSTB  ITYPE  BEQ  EXPR0N    ; ADDITION  TSTB  RSLMOD  ;BRANCH IF  BLT  EXP2A  BITB  #RELFLG,R1  ;RSL IS GLB OR HF QTX IS RDL  BNE  EXP2C  BITB  #DEFFLG,R1  ;IF ABS THEN BR  BNE  EXPR0N  BITB  #GLBFLG,R1  BEQ  EXPR0N  TSTB  RSLMQ·ŠùùÀû þÿ‡÷Ìú‰‡~F�wöýwDíw>îwxîwøî÷Š(ûòwïwºð÷e<úê‰÷‹(û·Š¹ùã÷úúßQ$Q$Q$Q$Q$wZóQ$wŽówöówfôwtôw¾ôw¾ð7 Üù÷ÿÿØùÅ÷Ðù‹~¾�÷ÿÿÌù¿÷Æù¼@‰7Š_ùwnÿ÷Üù4úÿ5Ôù¿ Îù· $ú·ŠAù7‹­ú&‰À•Á¸ùÄH‰*‰‰÷•“ú‡ÍŸ`ú‡×¯Zú`ÿ¥ Púÿ•?Hú‡Â‚Š�Ãþ~6�ZŠ ÷ :ùæx‰ˆ€ ÷ ^ù檉ˆ€ À ñµ@óÿ ñÅ@óÿfòÿÎEÿÎæ‚wNüB‰ÁåÀŠÑ K‰€¦¢·êù‡&‰ÀºùÀå&$&Ì~®�`  ŠæH‰ˆæH‰ˆ7 ˜ù`‰Àm�ù€ à• 7 †ùû‚‡É fˆfˆ‡óö�üÿfˆæINRMTED DECOEN= ) R0C(;0 ,RRMTEAVSB OVM M TE ILLCA; EMIT  P RA T: 10INMA T.ENEMATSTT ENNMIGSS ACTREDIA E ATAREP S ;  Y,LLIANTTEPO, ND ATSENNTCOS D'ELFIL BELAE THH USFL;  T ENEMATSTE RCOU SALDUVIDIINH AC EOFN IOATLUVA ETEIAITIN; 5:L0ET GT GHAU CERCTRAHA CALEGLL I; R ROER Q CBIN N IOATTUSID LIVA, ES Y; 5 L0ET G EQ B  .?CRT AS LHE TISTHS I; 2 ,RR0  P CM R TEINPOE THP KUAC BS,YE;   R0  C DE N CA SHE TUEINNTCO, PENO;  04TLGE  E BN ? R. C AERCTRAHA C¶þS #REGFLG,@R5  ; SYMBOL A REGISTER ?  BEQ  DECOD8  ; NOPE  MOVB  #'%,1(R1)  ; YES, REGISTER DECOD8: BITB  #LABFLG,@R5  ; IS THIS SYMBOL A LABEL ?  BNE  DECOD9  ; YES  MOVB  #'=,@R1  ; NO, DIRECT ASSIGNMENT DECOD9: TST  (R1)+  ; R1 = R1+2 MOV R1,R3  BITB  #DEFFLG,@R5  ; IS SYMBOL UNDEFINED ?  BNE  DECODA  ; NOPE  BITB  #GLBFLG,@R5  ;THIS PORTION ENABLES OUTPUT  BEQ  DECODH  TOD  ;IF GLB THEN IF RSL IS REL  BNE  EXPERR  ;THEN ERRR  MOVB  #-1,RSLMOD  ;ELSE SET GLB MOD  BR  EXPR0K EXP2C:  TSTB  PRGSEC  ;PREVIOUS RELOCATABLE SYMBOL  BNE  EXP2D  ;YES  MOVB  CSCTID,PRGSEC ;SAVE THIS ID  BR  EXP2B EXP2D:  CMPB  CSCTID,PRGSEC ;SAME .CSECT  BNE  EXPERR  ;NO-A ERROR EXP2B:  INCB  RSLMOD  BR  EXPR0N EXP2A:  BITB  #RELFLG,R1  ;ERRR IF REL  BNE  EXPERR  BITB  #DEFFLG,R1 Ufˆ3 üÿæfˆ‡&‰Å•ŠwZùŠ  ŠÄ¼™7ІùÃžŠ Š7 ^ø~&‘7 tø7 tø7Šäø‰÷ <ù‰÷‹iùÄ ™Ì ÷ (ùÌ ·ŠNùÀ ·Š×÷>‰Ä% ™éÄ%¼™Â’ ·Š»÷KŠÄ ™Ü*‰À�ù‡Å-Úø÷ Ôø‹ŠÄ¦™ÏÀ Z~ž‘7 â÷èÄ"™Ç7Šùø· Âøÿ¥ ¼øÿ¥ ´ø‡·Šßøò&‰Á•ŠÅXŠ É‹� 5À�Àø    ¬”Š0Š”ŠÀ LŠÉ‹D‰� ÂjøÃhøT‰Í �~’ wc|ø ÷µxøñ÷U€X÷Ä�lø„ „ „ ÄEáÿ7‘hø*‰À ‡Í èÂ÷Ã÷T‰À ó  ÃÝ=øÃ¥ÿ à à à ÁøÁàÑ wî÷wì÷ß×½ø@Û×½ø ~Ž’×ò&‰Å˜ŠÄ–Š  B’ƒ`ŠE à à à æà à ƒeISTHS I; 4 ,R)+R0 ( PBCM 4:L0ET G. CRT AS LOF. DRAD= 2 R;  2 R EC D  ORATINRMTEE IN LESAGIM;     E RCOU SVETIECFF EHE T ;     OFS ESDRADE TH= N CISR;  N CISR2, R OV M  RNTUREE-AGRIAR C ;     ATHWIS ORATINRMTEE IN L ;     LL AILRA TLYALONTIDIONNC U ; 2)(R+14, R VBMO : 03TLGE ORATINRMTEE THG INEDECPR;  ) R21(,-R4  B OV M  RNTUREE-AGRIAR C ARTSEIN;  2 @R+,2)(R  B OV M  ONTIUAIT SIDAL VS,YE;  3 ²þW ;OF 0 IN CASE OF AN UNDEFINED  MOVB  #'G,7(R1) DECODH:  MOV  #"**,-(R6)  ; YES, VALUE = ASTERISKS DECODG:  MOV  @R6,@R1  MOV  @R6,2(R1)  MOV  (R6)+,4(R1)  BR  DECODJ  ; CHECK AVAILABLE SPACE DECODA:  MOV  -2(R5),R4  ; R4 = EFFECTIVE VALUE  MOV  #6,R2  ; R2 = 6, ITERATIONS  ADD  R2,R3  ; R3 = R3+6  TRAP  BINASC ; CALL FOR BINARY TO ASCII CONVERSION DECODJ: CLR R4 BISB 1(R5),R4 ;CONTROL SECTION IX ;OR GLB  BNE  EXPR0N  BITB  #GLBFLG,R1  BNE  EXPERR EXPR0N:  ADD  @R4,@R5  ; RESULT = RESULT+QUANTITY  BR  EXPR0K  ; PROCESS THE NEXT OPERATOR    ; SUBTRACTION EXPR0S:  TSTB  ITYPE  BEQ  EXP3N  BITB  #DEFFLG,R1  BNE  EXP3A  BITB  #GLBFLG,R1  BNE   EXPERR EXP3A: BITB  #RELFLG,R1  BEQ  EXP3N  CMPB  PRGSEC,CSCTID ;SAME .CSECT AS PREVIOUS SYMBOL.  BNE  EXPERR  ;NO-AERROR  TSTB  RSLYòÔÅeW!›Šë`‰&æ¦f¦v ‡…�‚ƒ„…Ö *‰‡&‰ÀpöÄáw fö †‚Ⴢ~““· Xöü‡7áRöæB!ˆÖ wDöÂ0÷ · 6÷‡7á0÷7á‚ö€ ý†*‰À÷ÈX÷à8öàL÷àF÷‡€Àà€ 7 &ö7 :÷÷ìöÀ ‡ÀE€„à -úÿ 1-üÿp~~“ 7þÿþõ7÷€ 7Âöê‡ß0Äå!ׂ ×&‰ÅrŠ 7ŠÜöÄÃJŠ & ×¢ïÿÍÕ.‰ Á’W îÿ.‰_ ‰Îšõ0‰‰wîÂÝŠõ/~ö“w²‰·Š)õ2‰·Šõ<  ÂÕ@0‰w2‰·ŠõD·ŠûôæW ÷ÿÎW øÿ µ ·ŠÙôÂÅÂÕ ‚Õ÷‹.ö ÷�(ö'ö÷¥óÿàõ·Š9~n”¹ô7Šö0‰.‰ ‰L0ET G EQ B  ?ORATINRMTES DECERE PCR;  ) R21(,-R4  B MP C: 02TLGE ATRMFOR TONAMIER TERFFBUR PERO PRESUIN;    R TEUNCOE AG POWFLEROV, ES Y ; NGGIPA.,60 # DD A  ERCTRAHA CEDFEE-IN L A ;     ;E OP N ; 02TLGE  E BN ? D EE-FRMFOA R TONAMIER T ; R2,@FF # PBCM R TEINPOE YTRBCUE IZALTINI I ; TEBYUR,CR1  V MO K ANBLS AYLW AERCTRAHA CALTINI I ; 1)(R,-' # VBMO 3 @R4,#3 B SU R TEINPOT ISRLCUE IZALTINI I ; R3®þ[D. CMP R4,#1  ;DON'T OUTPUT .ASECT OR BLE DECODI  ;UNNAMED .CSECT ID CMP R4,#MDFLAG ;DON'T OUTPUT BEQ DECODI  ;MULDEF FLAG MOV #3,R2  ;3 DIGIT NUMBER ADD #13,R3  ;COLUMN AFTER RIGHTMOST DIGIT TRAP BINASC  ;BINARY TO ASCII CONVERSION DECODI:  BITB  #GLBFLG,@R5  ;SUFFIX G  BEQ  DECODB  MOVB  #'G,7(R1) DECODB: TRAP SETREG  ADD  #26,CURLIST-O03  ; SYMBOL FIELD =22(10) CHARS.  INCB  LISTSC-O03  ; INCREMENT SYMBOL COUN\MOD  BLE  EXPERR  DECB  RSLMOD  BNE  EXP3N  ;CLEAR PREVIOUS .CSCET ID  CLRB  PRGSEC  ;IF EXPRESSION GOES ABSOLUTE. EXP3N:  SUB  @R4,@R5  ; RESULT = RESULT-QUANTITY  BR  EXPR0K  ; PROCESS THE NEXT OPERATOR    ; INCLUSIVE OR EXPRL0:  BIS  @R4,@R5  ; RESULT = RESULT .IOR. QUANTITY EXPRL1:  TSTB  ITYPE  BEQ  EXPR0K  BITB  #DEFFLG,R1  BEQ  EXPERR  BITB  #RELFLG,R1  BNE  EXPERR EXPROK: EXPR0K:  TRAP ]·Š£ô2‰‰ÐÈ·Š“ô‰Ð.‰Á’ ‰ÅÎÚôW îÿ"¦µ@6µwðµwìµ€æ�³�Õi�Õ ͵&©~æ”÷‹-õ#ÍÕÍÕÔ 7‘’õ÷‹ŒõP÷•fõ-÷^õ×­võþÿ3÷ Põ/ÍÕ0÷�cõ`õ7Š]õ4‰áÍÕ7Ô 7‘Põ÷¥ÿÿHõ€Îïlôá÷‹:õ%÷‹3õ$ÎoZôab~^•÷ õ�J‰ÄH‰÷•øô÷•ðôJ‰ƒÄ·0ôÁÚôÂØôH‰Â"ô· ÔôÄ�ìô´Š÷eÜôÍÕÍÕ 4‰ÃJŠÖ Â5ÿ·Š]ó·ŠÆô0‰×­¾ô[~Ö•·ŠIó*‰÷аô‡Í Í Í Í Í Í .‰7Š’ô7 lô7 jôw¼ý¦�ÎEøÿ�Õ‡æ×¢ýÿ×¢ûÿ×¢üÿÎ Î Ö ‡Â& ×¢óÿ×¢ôÿЊŽ ‚ŠÂÂÕ€Ö ™,@R1  V MO 2 R EC D  R01, R OV M  SSREDD ARSTONAMIER TNELI= 2 R ; R21, R DD A  NTOU CTEBY= 2 R, +2R1= 1 R ; R2+,1)(R  V MO 4 1+ R =R1;  + 1)(R+,1)(R  P CM R BEUM NNELIE RCOU SNTMERENC I ; NONELI  C IN N URET-RGEIARRCAI CIAS= 4 R ; R4R,#C  B OV M: 12TLGE ORRR EL' 'ET SS,YE;  R ROER L CBIN E OP N ; 2 L1ET G R B ?ONTICAUNTRE IN LNGLO; ) R13(E,INGLON#L  B IT B 6:L0ET GC ND.E  LGFFEO ªþ_TER  BGT  DECODC  ; LO BUFFER FULL, OUTPUT  JMP  STLST1  ; PROCESS THE NEXT SYMBOL DECODC:  TRAP  STLLST ; CALL SYMBOL TABLE LISTED OUTPUT  JMP  STLST0 .PAGE PAL  ; SUBROUTINE SYMBOL TABLE LISTED OUTPUT ;STLLST: SUBR15: MOV  #CURLIST,R0  BIC  #1,@R0  MOV  #005015,@0(R0)  ADD  #2,@R0  CLR  @0(R0)  MOV  BHADRS+2-O03,R1  SUB  #26,R1 MOV R1,-(R6) ;STACK` SETREG CLRB  R1   ; SET OPERATOR COUNTER  COMB  R1   ; BYTE = -1  JMP  EXPR00  ; PROCESS THE NEXT OPERATION    ;;AND EXPRLA:  COM  @R4  BIC  @R4,@R5  BR  EXPRL1 EXPERR:  TRAP  SETREG  INCB  AERROR  JMP  EXPR12 ; ; ; DIVISOR = 177300 AC = 177302 MQ = 177304 MULTIPLY= 177306 ; ; ; ; THESE TWO SECTIONS (EXPMUL AND EXPDIV) PERFORM THE ASSEMBLER ; MULTIPLY (*) AND DIVIDE (/) FUNCTIONS. LEFT TO Ra~N–‡ ÀÝbóÀ$ó ÷‹$ôÀ ·Š»ò7 ó‡À€‡‰÷ ЇÀ À € &‰Á7Šô7Š ó Å€‰Ä„‰ÃtŠ7Šàó Š7Š–óŠ÷‹èó 7Šâó÷‹Üó4·ŠP~Æ–Ûó÷‹Éóu\Ë ‰YÀ�póÀe2Àe9ÀeÀe, úÿÀe Àe÷•¬òâ6‰àÀ ‹ ÌžÀ ‹ ÷ž[ò‹ 7Šnó *Á‹6‰ŠЦ~>—�ŠÀ ÐÆÁ5ÿÁ5ÿ 6‰‹ ¬·�Úñ÷¥$󷊽ñ÷‹Øò÷­Òòó÷•þÿ ó*‰÷‹ó‡·Šó÷‹ó*‰ ÷µþò÷•öò‰‰·Š‡ñÂU“~¶—�À�áòÀ¥ÿ·ŠgñÂUÀ�ÎòÀµ@ ÀµêÀµ÷•ÒñÁ‹6‰&‰€�Á�¨òÀ xú—˜d˜˜˜¶˜Æ˜Þ˜÷‹”ò*÷‹zòMPJ G SENO DFIF. C ND.E  Y2TREN MPJ 5 RDWO. L TRONCP RAT G SENO DFFN.I  UEINNTCOE,OP;N   06TLGE EQB ? UTNP IONM EOF!EO; ) R13(F,EO#B ITB N IOITOS P1)0,S(DRHA BHE TTOIN;    D TETARON EE BAS HS,ESDRADR DEEA H ;    ERFFBUT PUINE RCOU SVETIECFF E ;    HE TR,TEINPOR FEUF BRYMARI PHE T ;    NGSIESOCPRL IAITINR FEUF BUTNP ICEURSOT ENRRCU;   R FEUF BUTNP ICEURSO;     S OUVIRE PHE TNGSI U ;     NGSIESOCPRD EA RUSIOEVPR; ¦þc BUFFER ADDRESS  CMP  (R1)+,(R1)+  SUB  R1,@R0  MOV  @R0,@R1 STLLS1: MOV #0,-(R6) ;OUTPUT SYMBOL TABLE    ;NOT RE-ENTRANT EMT WRCMD  RTS  R7 .PAGE PAL ;ARITHMETIC CONDITIONAL ASSEMBLY PROCESSORS ; ;FORM --- .IF??? EXPRESSION ;.IFZ IF EQ 0 ;.IFG IF GT 0 ;.IFGE IF GE 0 ;.IFL IF LT 0 ;.IFLE IF LE 0 ;.IFNZ IF NE 0 IFPRO: CLR R0 ;PRIME COND TO EVALUATE TRAP COND ;THEdIGHT ONLY, ; PARENTHESES NOT PERMITTED. ; EXPMUL: MOV (R4),@#MQ ;MOVE IN RESULT (PREVIOUS VALUE) MOV (R5),@#MULTIPLY ;MULTIPLY IT BY QUANTITY (NEW VALUE) MOV @#MQ,(R5) ;STORE RESULTANT PRODUCT TST @#AC  ;TEST FOR > THAN 16 BIT PRODUCT BEQ EXPROK TGOOF: INC TERROR  ;TRUNCATION ERROR BR EXPROK ; EXPDIV: MOV (R5),@#MQ ;MOVE IN PREVIOUS VALUE MOV (R4),@#DIVISOR ;DIVIDE IT BY NEW VALUE BEQ TGOOF  ;BRANCH IF DIVISOR = 0 MOV @#MQ,(R5) ;STORE QUOTIENeÁµ Áµ!Áµ@÷‹bòI÷•ÿÿ°~.˜Zò=÷‹ò÷�aò ò÷­Yòò:·Š>ò Áµ 4ÁµÁµ@. c$÷‹6òÁµÁµ@#Áµ ÷­Èñò÷‹ò÷Šüñ7Š´ñ ã  S÷‹òÁµ :~¦˜Áµ *‰ŠAŠwüýL Cï*‰·ŠgðwþÄþ_ÆþÍÄþß Âþê· [ðç_ÄþÀþøÍÄþß·Š5ðÂU‡*/#@% ()"'+-!&; ,:=8‰Àìÿ74ñs¬ ™pf~™€ ø8‰ Ì‹òÀ× 0× 9 Ã¥.çÌÕ€÷Åëï& ÃEðÿE¦ÅEÿÎEÿÉ Ê ¦É É É`Ê Ê Še Ê` ÃE÷зïÌÐ&“ÎE�ÿŽUÌÕp̵ˆ…¼~–™�wèïV/·Š“ï,8‰€ × 0× 9Ãå8‰€ Ã¥$Ãå Ã¥.ò× A¦     E THO TVETILAREE ER H ;     ITWAD IEPLIMN AISE ERTH;     D CMRD MTE ) R6-(B,ILSV MO  CEENQUSEG INLLCA;     T ESQUREG INICRVSEO I/T PUINE RCOU S* **;   T UNCOE YT BUTNP I ;     NTREUR CRSDEEA HHE TROZE;   0 @R  R CL S TEBYE OD MND AUSATST;     T PUINS ERADHEE THT SE; + 0)(RE,ODIM#S  V MO T UNCOE YT BUTNP I ;     UMIMAX MRSDEEA HHE TET S ; + 0)(RC,MBSI # OV M  CKLO BERADHET PUIN¢þg EXPRESSION TST RESULT-O03 ;TEST THE RESULT JMP IF000-BEGO03+BEGOVR(R1) IF000: BNE IF020     ;IFZ BR IF010 BGT IF020 ;THE CONDITIONAL BRANCH IS ;IFLE BR IF010 ;TAKEN WHEN THE REQUESTED BGE IF020 ;CONDITION IS NOT SATISFIED ;IFL BR IF010 BLT IF020     ;IFGE BR IF010 BLE IF020     ;IFG BR IF010 BNE IF010     ;IFNZ IF020: INCB DNTACT-O03 ;CONDITION NOT SATISFIED TST LISTON-O03 ;LISTING SUPPRESSES? BEQ IF010  ;BRANCH IhT - IGNORE REMAINDER BR EXPROK .PAGE PAL  ; SUBROUTINE SET ERRORS   ; UTILITY SUBROUTINE FOR EXPRESSION ;SETERR: SUBR21: INCB  QERROR  ; QUESTIONABLE SYNTAX ERROR  BIS  #000400,R2  ; SET THE GENERAL ERROR  RTS  R7  ; RETURN  ; SECTION: CHARACTER IDENTIFICATION    ; INPUT R0 MUST BE FREE    ; OUTPUT R0=SFLAG'S VALUE ;  NUMBERS R0=1  CONVERTED AND PACKEDi× Z × a × z�ÃÅ ÿ�‚ðÃEÀÿÿ�lð· hð*‰7�›ð‡€&‰&Àw~šÁž‰Â¢‰ÃŸXðÄЇ#‘ËÅøËÕ0„ ÄE€„ „  ô‡&‰Åðw<U%f ÷-:ï@ïÄÕ• Ä ü æ$ï·(ïfÅeæ"ˆwàïDÔ À‰ ~†šÂ"‰Ê ŠÃD!†•œÒ— :‰ó‡÷`¶ï÷�ŽîÅeÄïCÂ÷‹Æï· ¾î-$‰‰ÀŠÅeC”ÄE÷‹¡ï À ÷Š”ï$‰÷ ˜î· ˆî‘~þš÷Š„ïÃFïƒ Ë• Ãe÷8ïË• ã• Üw Ã&ïã• ƒ Ë• ÷Lïƒãà Þ÷­Ìï>îí÷ .î÷ @îÁx‰Ãê‰b‰÷‹ïW£ Õ‹M•Å u™æ W~v›Îež Í•'æ÷ îÖ Éæx‰ˆ÷-îíòíÂæ;     E RCOU SRSFEUF BEDASLERE;     E THF OSSREDD A =R0;     E NCUEEQ SNGLIAL C ;     SSREDD AERFFBUK ACST;) R6-(0,RV MO  R12,@R  V MO S ERFFBUO I/E ATOT RLLCA; TETARO  P RA T  E:INTLGE CEENQUSES HI TTOD DEENPP A  ;   RE AY,LLNAIOPT OS,ERCTRAHA CEDFEM-OR F  ;   E.NCUEEQ SLFR- C ATHWI, LYALONTIDIONNC U  ;   E,ATINRMTEL IL WRSFEUF BUTNP ILL A  ;   ATRMFOR PERO P ;   RESUIND ANR FEUF BUTNP INGDICERE PHE TANSC; žþkF NO INC LISTKEY-O03 ;INCREMENT .IF NESTED COUNTER ;INCREMENT DON'T ASSEMBLE COUNTER. IF010: MOVB #-1,SIZE-O03 ;LISTING FORMAT CONTROL JMP EXIT-O03 ;EXIT IFPRO2: MOV #2,R0  ;PRIME COND TRAP COND  ;NOT TO EVALUATE THE EXPR. MOV R0,R4  ;SETUP R4 FOR "OR" CONDITION CLR R2  ;FINAL RESULT GOES IN R2 IFDF00: MOV #IFDF25-BEGO03+BEGOVR,-(R6) ;STACK THE "OR" OPERATOR IFDF05: TRAP ITEM  ;GET NEXT ITEM TSTB ITYPE-O03  ;IS THIS AN OK SYMBOL? IFDF12: TRAP SEARCl ;  SYMBOLS R0=2 OR 3  MOD40 AND SAVED ; NOT FOUND SITUATIONS: ;  TERMIS R0<0  R0=SFLAG IS CODED ; FOUND SITUATIONS: ;  TERMIS R0=0  CHARACTER WAS NOT A TERMI. ; R0 RETURNED VALUE   INTERPRETATION ;  NUMBERS R0< OR = 1  DEFAULTED TO TERMIS SEARCH ;  SYMBOLS R0< OR = 1  DEFAULTED TO NUMBER SEARCH ;  = 3   NTH CHARACTER'S ENTRY RESULT ;    NOT (0-9) . DEFAULTS TO FCHAR ;  = 2   NTH CHARACTER'S ENTRY RESULmèíæ)Šæ"ˆÃ)ŠË¥0Ó• ú· Êí7 ÄíæD!ˆƒ‚C   ÀÁÀKw ¨9Š Áw œ<ŠÁ~î›<w ’?ŠÄw žBŠæC!ˆƒ Ãåè‚ û ·œ�î·œ �îÃeè‚ Âe& Â5Ž ·c| í²œÄeÄ%øÄåm²œ„ Äå ÷• ÏíÄe:7‘»~fœÈí÷•1¿íÄe07‘¸íà ÷Èœ²í·å0Z Cà‚ à„ úC`B `&æ4�æ"ˆDÔ�‹Ô�ˆ…01020304050607080910,~Þœ111213141516171819202122232425262728293031707172737475767778798081828384858687888990æŠæx‰ˆ7Š(í7 :í÷ @ì7 :ìÔ~V�÷‹àë÷­®íªí  . NGSIESOCPR  ;   OR FDYEA RND ALLFUS IERFFBUT PUIN  ;   NGDICERE PHE TS,UEINNTCON IOUTECEXF I;   T HA TESUMSS AERBLEMSS AHE T. SSREOGPRN I;   Y TLENESPRS INDMAOM CADREA F IOLTRONC;   N IOUTECEXN AIET RSTMUR SOESOCPRO I/E TH ;   * **E OT N** * ;  1)0,S(DRHA B ;   BYD IEIFECSPY TLENRRCUR FEUF BUTNP IHE T ;   OFG INBLEMSS AHE TOR FRSTEINPOE IZALTINI I ;   R.FEUF BUTNP IALCIENQUSET EX NHE TTOS NTOI P ;   1)0,S(DRHA BATTHO SLEAB TRSšþoH  ;YES--SEARCH SYMBOL TABLE BGT IFDF12  ;FOUND IN P.S.T--IGNORE BNE IFDF10  ;NOT FOUND IN U.S.T. IFDF15: BITB #DEFFLG,TFLAGS-O03 ;IS SYMBOL DEFINED? BNE IFDF20  ;YES--BRANCH IFDF10: ADD R4,@R6  ;NOT FOUND OR UNDEFINED IN U.S.T. IFDF20: JMP @(R6)+  ;PROCESS & HOUSEKEEP THE STACK IFDF25: BIS R4,R2  ;LAST TERM="OR", SYMBOL DEFINED BR IFDF35  ;LAST TERM="OR", SYMBOL UNDEFINED IFDF30: BR IFDF35  ;LAST TERM="AND", SYMBOL DEFINED CLR R2  ;LAST TERM="AND", pT ;    DEFAULTS TO NUMBER ;    1ST CHARACTER'S ENTRY RESULT ;    WAS (0-9) .DEFAULTS TO FCHAR ;  = 1   NUMBER'S ENTRY RESULT ;    DEFAULTS TO TERMINATOR SEARCH ;  < 0   CHARACTER WAS A TERMINATOR ;  = 0   CHARACTER NOT A TERMINATOR ; TERMINATORS ENCODED AS FOLLOWS: ;  #  -18 ;  @  -17 ;  %  -16 ;  BLANK  -15 ;  TAB  -14 ;  (  -13 ;  )  -12 ;  "  -11  QUOTATION ;  '  -10  APOSTROPHE ;  +  -9q÷íòì÷eÞì7ŠÆë`‰&‰ÄŠ ‰æ�í÷‹í —".‹÷‹Ôì΋4΋/÷%*ÒîW rŒ†÷‹¶ì%&:‰w.÷%~îæ:~Î�@Œæ–‰ˆæ‹æ–‰ˆæ–‰ˆ,‰÷%’îN‰@‰÷‹§ì÷‹pìÐ,‰Ö `‰� Š ŽŠ“&•‹eÀ&‰Á|ŒÑ3ÑÑÑ>ì`‰&‰Å�Jîaw‘DîáÅe‚ŒÄåÔ~Fž UÄå•ÄåÕ`‰÷µ@ßíÎØíwþñ‡&‰÷öëÄJ‰ÁæëÂäëÃöêÀÕ€ÄH‰·ŠØë`‰æ|Œæ–‰ˆæ–‰ˆ‡ÅëÃLŠÂHŒÁFŒæ9~¾žzŒÀ ÷¢ëF‰À@ŒÐ5ÐÐÐÐÐPŠ ýK�KcËe�b€‡À�DíÀåa7�aëÀ\뇋b É’·&í· "í÷­èëxêÎe‡ADBHE THE ATOT RENTH;   D ANMMCOD EA RHE TUESS IENTH ;   D TELEMPCON EE BAS H ;   1)0,S(DRHA BBYD IEIFECSPY TLENRRCUR FEUF B ;   HE TEROVN IOATEROPT PUUT OHE TATTHY IFER V ;   NELIE RCOU SET GNETIOUBRSUN PE O ;  AGFLT OUIN BZELIIAITIN;  T OUIN,B#1  B OV M  0 =ORRR E ; ORRR E RBCL R ROER Q RBCL R ROER U RBCL X DIRA  B LR C  ORRRIE  B LR C  ORRRAE  B LR C  ODLMRS  B LR C  MDL2RS  B LR C  0 =0)F(BUTB;  F BUTB –þsSYMBOL UNDEFINED IFDF35: MOVB SAVTERM-O03,R0 ;GET THIS TERMINATOR ADD #4,R0  ;IS IT "CR"? BEQ IFDF50  ;YES--BRANCH INC R0  ;IS IT ";"? BEQ IFDF50  ;YES--BRANCH INC R0  ;IS IT "&"? BEQ IFDF60  ;YES--BRANCH INC R0  ;IS IT "!"? BEQ IFDF65  ;YES--BRANCH BR IFDF45  ;ERROR--ILLEGAL TERMINATOR IFDF40: TST (R6)+  ;REMOVE STACKED OPERATOR IFDF45: INCB QERROR-O03  ;ERRORED SYMBOL OR ILLEGAL CLR R2  ;TERMINATOR (DEFAULT=UNDEFINED) IFDF50: TSt ;  -  -8 ;  !  -7 ;  &  -6 ;  ;  -5 ;  CR  -4 ;  ,  -3 ;  :  -2 ;  =  -1 .PAGE PAL ;  TERMINATOR CHARACTER TABLE TCHART: TCHARS = TCHART+24 TCAMUL: .BYTE  '* TCCMUL = TCAMUL-TCHARS TCADIV: .BYTE '/ TCCDIV = TCADIV-TCHARS TCAIMM: .BYTE  '#   ; IMMEDIATE TCCIMM  =  TCAIMM-TCHARS TCADEF: .BYTE  '@   ; DEFFERD TCCDEF  =  ÿÿÿÿ–~6ŸÿÿÿÿªŸÆ¦)ÅÅeL Îxÿ ‡ ¡N N Í ÃŠüÍ ÷ <ÂåÂ%!÷ ,„cÍ À‹ëéÑ�øÃh‹ŠË‹þ€ÃœÀ`ÃEÿ ‡·$vX®ŸÍ ÄÍ ÃÄPÇ÷ êÿÍ À‹â„ †¿Ä LÀŸ÷ê÷õwZÿÁÂê‰ É‹þ€rœŸ· îÿõpÿøÎŒŸ R CL : RCTSSE L PA E AG.P DCEN. 4 TPSERP JM  EGOSNF FD.I  DCEN. 6 RYNTEP JM  4D OR.W  RLNTCO APTR  EGOSNF NDIF.: P4ET S. LEFI; N OP MTE T PUIN;) R6-(B,ILSV MO  CEURSON PE;O 6)(R,-FBSI OVM: P0ET SE NUTION CTOT INPOY TRENT EO;. DCEN. 2 TPSERP JM  EGOSNF FD.I  DCEN. 5 RYNTEP JM  4D OR.W  #4Y LAEROVN ILLCA;  L TRONCP RAT G SENO DFFN.I 2:TPSE S.AS PUTTPOUY ARIN;B  ABDTGS APTR ’þwT R2  ;CHECK RESULT JMP IFDF55-BEGO03+BEGOVR(R1) IFDF55: BEQ IF010  ;.IFNDF SATISFIED BR IF020  ;.IFNDF NOT SATISFIED BEQ IF020  ;.IFDF NOT SATISFIED BR IF010  ;.IFDF SATISFIED ;OR OPERATOR ENCOUNTERED IFDF65: TST R1  ;PERFORM AND BEQ IFDF70  ;OPERATION IF .IFNDF BR IFDF00 ;AND OPERATOR ENCOUNTERED IFDF60: TST R1  ;PERFORM INCLUSIVE OR BEQ IFDF00  ;OPERATION IF .IFNDF IFDF70: MOV #IFDF30-BEGO03+BEGOVR,-(R6) ;STACK "AND" OPERATOR BR IFDF05 x TCADEF-TCHARS TCAREG: .BYTE  '%   ; REGISTER TCCREG  =  TCAREG-TCHARS TCABLK: .BYTE  '   ; BLANK TCCBLK  =  TCABLK-TCHARS TCATAB: .BYTE  011   ; TAB TCCTAB  =  TCATAB-TCHARS TCALPA: .BYTE  '(   ; LEFT PARENTHESIS TCCLPA  =  TCALPA-TCHARS TCARPA: .BYTE  ')   ; RIGHT PARENTHESIS TCCRPA  =  TCARPA-TCHARS TCAQUO: .BYTE  '"   ; QUOTATION TCCQUO  =  TCAQUO-TCHARS TCAAPO: .BYTE  ''   ; APOSTy.4dªÆ¯”µzR}@µzd}@(&&a.; ¨9h’= àh>|@h–½àh:t!hT«.t!ÀhЬ!hJµ"€Wh¼�,Àvh¶¯-`hB£.49€%h„79hx79@hz<9h|<9@h~<.>9ðh†>9€¢hvJ9h€uL`;hPvL8"h`.{L}hžiY DCEN. 2 D OR.W  #2Y LAEROVN ILLCA;  L TRONCP RAT G SENO DFFN.I  P2ET S NE B  SSPAS,ASOP B PBCM 2 TPSE  E BL . 1SSPAG INUR DRYNABIO ;N #1S,ASOPBB MPC: P5ET SN OP MTE E IL FUTNP;I 6)(R,-LBSI OVM E RCOU SENOP;) R6-(B,IFSV MO: SSPAET SC ND.E  SIRC MPJ G SENO DFIF. C ND.E  1) #AYRLVE(OT ITOL RONTCOE IV;G  Y1TREN MPJ 1 RDWO. 1 #AYRLVE OINL AL;C  RLNTCO APTR 1:N0RU AYRLVE OER PKSOCBLY ;B  02UNRR B # K OCBLE ASRENC I. RYNT;E  R45,RD Žþ{ .PAGE PAL ;.ENDC PROCESSOR RENDC: DECB CNSTLV-O03 ;DECREMENT NESTED LEVEL COUNTER BGE ENDC01 ;TOO MANY .ENDC'S? INCB QERROR-O03 ;YES - SET QUESTIONABLE SYNTAX CLRB CNSTLV-O03 ;AND CLEAR NEST LEVEL COUNTER ENDC01: TSTB DNTACT-O03 BEQ IF010 ;IN DON'T ASSEMBLE STATE? DECB DNTACT-O03 ;YES - DECREMENT THE COUNTER BNE IF010 MOV #-1,LISTKEY-O03 BR IF010 ;EXIT .PAGE |ROPHE TCCAPO  =  TCAAPO-TCHARS TCAADD: .BYTE  '+   ; ADDITION TCCADD  =  TCAADD-TCHARS TCASUB: .BYTE  '-   ; SUBTRACTION TCCSUB  =  TCASUB-TCHARS TCAEXC: .BYTE  '!   ; EXCLAMATION TCCEXC  =  TCAEXC-TCHARS TCAAND: .BYTE  '&   ; AND TCCAND  =  TCAAND-TCHARS TCASMC: .BYTE  ';   ; SEMICOLON TCCSMC  =  TCASMC-TCHARS TCACRE: .BYTE  015   ; CARRIAGE-RETURN TCCCRE  =  TCACRE-TCHARS TCACOM: .BYTE  }àyhª/d@hX¬ppßhŽ|~ÈKhF *’hð(¸¬÷ææ,æ&‚ˆ÷‹bæH¦ˆæ^¦ˆ7 L¦ &H^Î,$ˆæ�ˆæäfˆÀ¬&ÐR fˆ^‰Ü䬨,H÷µ'aæZwæž.ˆ� Q¤É• á•?! ž*,làH欦ˆÎ�^‰7 ¸7Šo÷•a7 A  ¬(,�7 7 7Š}Á8\‰2 7‘ŽwŒw„@ AD  TO# K OCBLG INRTTA S. ES;Y )+R2,(R4 OVM ? YSLAEROVE OR;M  01UNRT BL  R32,#B SU 2:N0RU *2S AYRLVE OOFR BEUM;N R3+,2)(R OVM 2 ,RABNTRU#V MO  ;. CYENIDES-RON NOR F 0TOT SET BIN IG S. RYNT;E ABNTRUE IVCTPEES RIRHE TINY LAEROVH AC;E OFR BEUM NCKLO BALICYSPHG INRTTA SCELA;P ;. CKTA SCTREOR;C )+R6,()+R6(P CM 3:N0RU ORRR EALAT;F  PNOT EM  CEOR FTOC ENOP .RMFOER;P 6)(R,-R1 OVM . NTSERE POT NVR.O1RL1PA;) R6-(B,RFOV#V MO 4:N0RU 05UNRR B ] ,1[1Y TR;D RISE,U01#4 OVMŠþ PAL ;CONDITIONALS FRONT END PROCESSOR (.IF...)  ;IF R0 = 0 ON ENTRY, THEN EVALUATE  ;THE EXPRESSION. AN ERRORED EXPRESSION  ;IS SET TO ZERO BY DEFAULT AS IS A NULL EXPR. SUBR38: INCB CNSTLV-O03 ;INCREMENT NEST LEVEL BGT COND00  ;TOO DEEP?    ;NO - BRANCH CLR -(R6) MOV #ERR2,-(R6) JMP ERROUT-O03 COND00: TSTB DNTACT-O03 ;IN DON'T ASSEMBLE STATE? BEQ COND01 ;NO INCB DNTACT-O03 ;YES - INCREASE COUNT TST (R6)+ ;HOUSE€',   ; COMMA TCCCOM  =  TCACOM-TCHARS TCACOL: .BYTE  ':   ; COLON TCCCOL  =  TCACOL-TCHARS TCAEQU: .BYTE  '=   ; EQUALS TCCEQU  =  TCAEQU-TCHARS TCTSIZE =  TCHARS-TCHART  .EVEN .PAGE PAL TERMIN: TRAP  SETUP1 ; CALL SECTION INITIALIZATION TERM0:  MOV  #-TCTSIZE,R0 ; R0 = -TCHARS TABLE SIZE TERM1:  MOV  R0,SAVTERM  ; SAVTERM = R0  BGE  SECRTN  �8£,´Ã ÷âî÷ÞêÁ@\‰õà & æ…¹ @•,ØwÖwr·Š5÷´Á \‰Ä7‘„à P  µ,ü7Š^7ŠŒ+à & æ†wœ÷‚Á » & §, \‰ôà òwÔþÁ(\‰Ä7‘$à áÁ0L(&0U,D\‰Ä7‘Bà & æ„wT÷†÷‹ø,h÷�z÷•v÷‹Ÿ æFˆ÷ æ¬zF &¬\,ŒæFˆ7 Á0fˆ÷(öæž·¤fˆu  E.ON DLL;A  04UNRQ BE  01#4D,RISEUP CM  CKTA SCTREOR;C )+R6,()+R6(P CM  T?ISEXE IL FESDO; 3 N0RU NEB K OCBLG INRTTA;S R4+,6)(R OVM K OO.L; 4 1T EM  CKLO BNKLI;) R6-(1,RV MO  6)(R-R CL  CKLO BLEFI;) R6-(B,RFOV#V MO 5:N0RU E.IL FUSUOIGNTCOE THF ;O CKLO BNGTIARSTL CASIHY PHE TNEMIERET;D ;Y LAEROVR PES CKLO;B R5+,6)(R OVM E IDIV,DR7 SRJ E IZ SAYRLVE;O 6)(R,-RDRWOV#V MO  Y.LAEROVR PES CKLO BOFR BEUM NNEMIERET;D TOE IZ SAYRLVE OTOINE IZ SCKLO BDEVIDI ;K AC†þƒKEEP THE STACK JMP IF010 ;LISTING FORMAT CONTROL COND01: TST R0 ;IF C(R0)=0, THEN EVALUATE THE BNE COND04 ;EXPRESSION AND CHECK FOR ERRORS COND02: TRAP EXPE3 ;EXPRESSION EVALUATION TSTB ERROR-O03 ;WAS THERE AN ERROR? BNE COND03 ;YES TSTB ICOUNT-O03 ;IF EXPRESSION WAS NULL, THEN BNE COND04 ;RESULT = 0 BY DEFAULT COND03: CLR RESULT-O03 ;YES - RESULT = 0 BY DEFAULT COND04: RTS R7 ;RETURN TO CALLER  .EVEN ERRMSG: .WORD  23  ; PASS ERROR COUNT MESSAGE „ ; TERMINATE IF NOT NEGATIVE  CMPB  TCHARS(R0),R3 ; IS TCHARS(R0) = CHARACTER ?  BEQ  SECRTN  ; YES, TERMINATOR IDENTIFIED  INC  R0   ; R0 = R0+1  BR  TERM1  ; CONTINUE THE SEARCH ? ;  .PAGE NUMBER: TRAP  SETUP1 ; CALL SECTION INITIALIZATION NUM0:  CLR  R5   ; R5 = 0  TSTB  @R4   ; DECIMAL POINT SEEN YET ?  BLT  TERM0  ; YES, PERMIT ONLY TERMINATOR  MOV  #1,R0  ; R0 = 1  CMPB  R3,#'0…F0(ž',°7 æw–æB!ˆÎeȆ·z7ŠŸ7ŠœÀ€¬,ÔÁ~ ÈEÀåù ! ! ! ! wJwH6,øw4÷¯r7 p‰w2á w‚wö7 Ž÷-(,’&³7 а7 n÷-r ¸7 jµf/ˆƒP,@Ã5& æƒwb Bò Ä ‡EÀ,dõ uÍ Í4õ2ÅÄ �œ�,ˆÂeÁ æ�â—"â—$Ó¦æ"ˆŽ€ ,¬Ì—"PA—"TAÆÒ æ ÀÄ­!÷7‘–,Ðô—"37¶·ŠîÁ0^‰ÁF^‰ÁtÉ fSTF OOP TON) DSOR(WE IZ SCKLO BALICYSPH; K ACSTT ECRRCO;+ 6)(R+,6)(R MPC 3 1T EM  CKLO BNKLI;) R6-(1,RV MO  USATSTE ICEV DINTAOB ;D CMIN MTE K OCBLK IN;L 6)(R,-R1 OVM E ICEV DAYRLVE OITIN;. CKLO BNKLI;1 ,RLBVR#O OVM O ;N     P? UET;S  01UNRQ BE  LL AYSLAEROV; T NIOINB STT ; ****S*AYRLVE OOR FUPT SE****;* EGOSNF NDIF. 1 4T EM  6)(R,-#1 OVM ) R6-( LRC ) R6-(4,P3RA#T OVM 4 3ONTICALOP UET;S  41 MTE ) R6-(2,#V MO  6)(R,-RTTAES#R OVM S ES‚þ‡  .WORD  0  ;FORMATTED ASCII  .WORD  23  .BYTE  CR,LF,' ,0  .WORD  0,0  .BYTE  '  .ASCII /ERRORS/  .BYTE  CR,LF,LF,0 .EVEN .IFNDF NOSEG ENDO03: SIZO03=ENDO03-BEGO03 .PAGE PAL ;***** OVERLAY #4 ***** O04=BEGOVR-BEGO04  ;COMPUTE OFFSET FROM    ;RUN TIME OVERLAY AREA BEGO04: ;JUMP TABLE TO ENTRY POINTS ;IN THIS OVERLAY. ; JMP RRAD50  ;ENTRY1 JMP RASCII  ;ENTRY2 ˆ  ; IS CHARACTER AN ASCII 0  BLT  NUM1  ; NOPE  CMPB  R3,#'9  ; IS CHARACTER AN ASCII 9  BLE  NUM2  ; JUMP IF PROPERLY BOUNDED NUM1:  CMPB  #'.,R3  ; CHARACTER A DECIMAL POINT ?  BNE  TERM0  ; NO, DEFAULT TO TERMINATOR  BISB  #200,@R4  ; YES, SET DECNUM'S SIGN BIT     ; DECIMAL POINT HAS BEEN SEEN  BICB  #10,NERROR  ; CLEAR THE IMPLIED DECIMAL     ; BIT IN THE NERROR FLAG  CLR  ‰0F"tx.ôfˆæºfˆfˆÁV^‰Áˆ^‰Á&^‰Á… ºVˆ"&(,(^‰wžžtº^žVÈ NžˆÖµzžà. ž tºžVÈžˆÖ"ž#,:0ž4džF¬4d PAL11R V004C s0ž ž F¬þ^ # / j|,j7Šö 7‹ À�² À¥üÿÀ¥ûÿ‰÷ Ê ‰÷‹ò 3,Ž÷‹è ·Šk w’7 Ò 7 РÕ÷¨ € .«,²÷Þ Ø ÿÕ € 7& æ€DRADT ARSTREP UET;S  LBCO LRC R BEUM NNELIR LEMBSEASR EACL; NONELI R CL LBCI LRC B LLSR CL  LBLO LRC B OLBR CL  B2ILSR CL  B1ILSR CL  INEG B^CF OSECA ;N IKSOCBLK IN LLL AARLE;C DCEN. A RTTA=SRTTA SG SENO DFIF. C ND.E  S.ESDRADR FENSRA TUPT SE;  A RTTA=SRTTA SD BLVROF NDIF. 6 ,ROPRTPE OVM: TCARST T.PSE TH; W LOBET US JTOK ACSTE THE IZALTINI;I DCEN. N GIBEC ^IF; B RLOV LRC G SENO DFFN.I  T.SEA AT DAYRLVE;O     ZELIIAITIN;T ~þ‹JMP RWORD  ;ENTRY3 JMP RBYTE  ;ENTRY4 JMP RSETP2  ;ENTRY5 JMP RSETP4  ;ENTRY6 JMP ASSIGN  ;ENTRY7 JMP SUBR24  ;ENTRY8 .ENDC .PAGE PAL ;RAD50 HANDLER ; ; RRAD50:  MOV  #TMPSYM,SYMBOL-O04  TRAP EVENPC  INCB  RADIX-O04  MOV  #3,CNTCHAR-O04 .PAGE PAL RASCII:   ;ASCII HANDLER ASCII2:  MOV  #SUBR1Œ -(R6)  ; STACK A VOID OVERFLOW VALUE  BR  NUM3  ; COMPLETE NUMBER PROCESSING NUM2:  BIC  #177760,R3  ; CONVERT ASCII DIGIT TO BINARY  MOV  @R1,R5  ; R5 = BASE08'S CURRENT VALUE  MOV  @R2,-(R6)  ; STACK BASE10'S VALUE  BIC  #017777,R5  ; DETECT BASE08'S OVERFLOW  BIC  #017777,@R6  ; DETECT BASE10'S OVERFLOW  ASL  @R1   ; BASE08 = BASE08 * 2  ASL  @R2   ; BASE10 = BASE10 * 2  MOV  @R2,-(R6�wèÁsD‰� Ä\is&\¶,Ö Âz Ã^ X‰ ÷H 7 r 7 Š ‰÷åF Ü,úZ Ãí0 ƒ ƒ ƒ ƒ Ã%þÙ÷‹U ÏÁ| $  ," ƒÁ5�  Àþ 7 à 7 7® ÷�¬,B# Á, Â* Ãî ó� À•Ã� ÄH‰w¡,fÌ7‹ ÷‹÷ Á Æ  Ä ƒÁ5� š,ж ÷ \ ÿÅ ¦ 7ŠË Á¯Â”Ó÷•ÿÿ¸ 7Šç,®x ‰÷ œ À�n À¥üÿÀ¥ûÿ‰÷‹´ wbà,Ò÷‹¦ ·Š) ÷¥ýÿF éwHÿÕB ‰û÷Õ,ö@€ ‰ÜÁ.NIOI,N77#3 VBMO  A:RTTA S. E.IM TINEG B^CD ANE IM TADLOT AREHES MECOL RONTCO ; AL P GEPA . C ND.E  RTSTRR MPJ G SENO DFIF. C ND.E  #1Y LAEROV3 RYNT;E  Y3TREN MPJ 1 RDWO. 1 #AYRLVE OINL AL;C  RLNTCO APTR  EGOSNF NDIF .T:ARSTRE E.ICEV DUTTPOUT/PUIND ANMMCOE THN OEDYP TIS ; D ANMMCOT ARSTRER TONIMOE THN HE WOR B); Y BLEMSS AANF OND EHE T) ;A  ATE ER HESOM COLTRON;C S.GESAES MORRR EUTTPOUO TREHES MECOzþ�1,R4  ; R4 = PROCESSORS ADDRESS  DEC  CURBYTE-O04  ; DECREMENT CURBYTE POINTER  TRAP  CBTABS  ; ON ENTERING CURBYTE POINTS TO THE ! ASCII0: TRAP  PRINT ; CALL PRINTABILITY  BLE  ASCII1  ; CHARACTER IS PRINTABLE  INCB  IERROR-O04  ; ILLEGAL CHARACTER  INC  CURBYTE-O04  ; REJECT THIS CHARACTER  BR  ASCII0  ; TRY THE NEXT CHARACTER ASCII1: MOVB  @CURBYTE-O04,R3  ; R3 = VARIABLE TERMINATOR  CMPB  #40,R3 �)  ; STACK BASE10'S PARTIAL SUM  ASL  @R1   ; BASE08 = BASE08 * 4  ASL  @R1  ADD  R3,@R1  ; BASE08 = BASE08 + DIGIT  ASL  @R2   ; BASE10 = BASE10 * 4  ASL  @R2  ADD  (R6)+,@R2  ; BASE10 = BASE10 + PARTIAL  ROR  @R6   ; MAINTAIN BASE10'S OVERFLOW  ADD  R3,@R2  ; BASE10 = BASE10 + DIGIT  ROR  @R6   ; MAINTAIN BASE10'S OVERFLOW  BIC  #7,R3  ; RETAIN THE BIT POSITION     ;‘ ÷µr ·Šû ñÕÿ÷¥ýÿ }0ÍÃ|w ÉÕ@Ɖ÷ " ‰÷‹F ·ŠÉ Ás…|*s¨,BD‰÷, 8 ÷( 4 ÷Š wÜÅî  Ä÷© îÖ,f â J‰H‰÷ð w¼ƒ  ‡@2 úÿ �,Šr,üÿ “€Â�2 Âåç·‚ S,®À‡Átúb‰ÀæîfˆÀ ú÷! tºîc,Òv F‰À¨ Á¦   ÄH‰À¯Á”ÂH‰,öÂD ÃB ÁX Ä\Ì@X‰ʵ Z‰Âå¬XL RONTCO;  T IO T:OURR EE INUTROUB SEDSTUEEQ RTO;     ) EXND(ILEABJTU HR TMPJU;  7 ,R)+R6@(  V MO X DEINE BLTAP UM JTELACUAL C ; 6 @RP,RA-TLEABJT # DD A  ONTIUCTRNS IEDPPRA TCKTA S ; ) R6-(+,6)(R @ OV M  USATSTD KEACSTF OOP TON;     6 @R2, # UB S  SSREDD ARNTUREE THK ACST ; 6)(R,2R6 @ OV M 4:P3RA T4 3ONTICALOR FOR LENDHAP RA T ;    L PA E AG.P L PA vþ“  BEQ  ASCII3  BIS  #006400,R3  ; R3 = CAR-RET TERMINATOR  MOV  #SAVTERM,R2  ; R2 = EFF. VALUES ADDRESS  MOVB  R3,@R2  ; SAVTERM = INITIAL TERMINATOR  INC  CURBYTE-O04  ; INCREMENT CURBYTE POINTER  CMPB  @CURBYTE-O04,R3 ASCII3:  BEQ  ASCIIX  SWAB  R3  CMPB  @CURBYTE-O04,R3  BEQ  ASCIIX  SWAB  R3  MOV  #177000,R1  ; R1 = 177000  BR  BYTE1  ; COMPLETE INITIALIZATION RWORD:   ; WORD ASSE” WHICH IMPLIES DECIMAL.  BISB  R3,NERROR  ; SET THIS BIT INTO NERROR     ; (IE., ASSUME DECIMAL NUMBERS     ; ARE VIOLATIONS UNTIL THE     ; DECIMAL POINT IS SEEN.)  BISB  R3,@R4  ; SET THIS BIT INTO DECNUM NUM3:  MOVB  @R4,-(R6)  ; STACK THE DECNUM BYTE  BIC  #177617,@R6  ; OBTAIN CUMULATIVE OVERFLOW  BIS  (R6)+,@R6  ; MAINTAIN BASE10'S OVERFLOW  BEQ  NUM30  ; BASE10 HAS NOT OVERFLOWED  B•\ó,÷Å4 ÷•5 à ÄC!$@úÿAüÿÂÔ,>(CH‰×­" )N‰F‰Âê Ãè ÁX Ä\x X&\Ï,bÌ•`X‰Z‰ÂåúÅå·Šã ÖÂÀ¯Á>,†”÷‹Ü À´ Á² ÂÕ Ã� ÂE—H‰N‰÷v,ªž F‰N‰÷” F‰  À• ÄH‰N‰‡&‰,Î…@úÿAüÿCþÿÄÂBÓÂE—H‰×­z )è,òN‰F‰`‰ ‰÷^ , ÄH ´ ÷‹ ÷‹m \,÷¥ÿÿL ·Šå÷ ÷ À 7ŠM ÷•@, ÷‹í,:/ ·ŠÃ‰Æø·ö÷‹ Ä> ?!è ƒÄ N VE.E CEPA SERFFBUD RL ;  6 C+DBRL.+  = .  6 F+BULD R  = RTSTRL +2 .  = NTDCRL 0 RDWO . F:BULD RN VE.E 3 =6  C DBRL +6+1ZESIBB  =  C MBBO TEBYM SUCKHE C AVEERES R ;   0 TEBY .  SSREDD AERFFBUY ARIN BX.MA;    A:BBAX MS TEBYA AT DZESIBBE RVSERE;  E IZBS+B .  =  .S ESDRADD OA LKSOCBLY ARIN B ;   0 RDWO .  NTOU CTEBYS CKLO BRYNABI;   0  D OR.W R IEIFNTDE Irþ—MBLY DIRECTIVE HANDLER  MOV  #177401,R1  ; R1 = -1/+1  TRAP  EVENPC ; CALL EVEN THE LOCATION COUNTER  BR  BYTE0  ; COMPLETE INITIALIZATION .PAGE PAL RBYTE:   ; BYTE ASSEMBLY DIRECTIVE HANDLER  CLR  R1   ; R1 = 0 BYTE0:  MOV  #SUBR1B,R4  ; R4 = PROCESSORS ADDRESS  MOV  #0,R3  ; R3 = THE FOLLOWING TWO .  =  .-2   ; ENCODED TERMINATORS:  .BYTE  ˜ISB  #160,@R4  ; MAINTAIN DECNUM'S OVERFLOW NUM30:  BITB  #210,@R4  ; OCTAL OR DECIMAL ?  BEQ  NUM4  ; OCTAL NUMBERS EXITED.     ; DECIMAL NUMBERS PROCESSED  MOV  @R6,R5  ; R5 = BASE10'S OVERFLOW DATA  MOV  R2,R1  ; R1 = BASE10'S ADDRESS NUM4:  MOV  @R1,QUANTITY ; QUANTITY = EFFECTIVE VALUE NUM5:  MOV  R5,(R6)+  ; THE EFFECTIVE OVERFLOW DATA     ; SETS THE CONDITION CODES,     ; MAINTA™5K,^„ ?Ú ÄÐ ÃÔ Â$‰ÅìÍ­âÍ­ïÔ ìÞ,‚úÁVæÆ fˆ^‰Í­ä÷¨ F‰N‰P VÆ ™,¦Äæîæt�ˆÄ ø^‰÷•HÁ Â&·ö… ît"&ó,ÊÊ ¦ˆÍ­ 7Ч ÁˆwÜÍ­ª ÃÖˆ&Ö/,îb‰7Šž"‰¦ˆî^‰�Šw£é æDˆ÷B&,÷  ÷00÷ž,÷æN¦ˆ¦ˆþ 0žNf,6wÈ æÆ æ&ˆæ&KSOCBLY ARIN B ;   0 RDWO .  NTOU CTEBYT ENRRCUO B ;   0 RDWO .  10F+BUIN=BNTNCBI ESYT BDEMOS-TUTA SBO;   0  D OR.W T UNCOE YT BUMIMAX MBO;   0  D OR.W F:BUIN BR DEEA HUTTPOUY ARIN B ;  ENEV .  ERFFBUT PUUT ORYNABIE YT B46;   . 46  =  E IZBS B. NOE IN LOR FOMROE AVLE;   14.+ = .S ERFFBU;  14.+  =  . ONSIENXT ENGTIIS LCTJEOB;  12.+  =  . ERFFBUA AT DERCTRAHA C ; AXCMSR.+  =  . nþ›TCCCRE,TCCSMC ; CAR-RET, SEMICOLON  MOV  #RESULT,R2  ; R2 = EFF. VALUES ADDRESS  MOV  R3,R0 BYTE1:  ADD  #000401,R1  ; R1 = R1 + +1/+1  DECB  SIZE-O04 .PAGE PAL  ; SUBROUTINE DATA ACQUISITION   ; THIS SUBROUTINE SUPPORTS THE DATA GATHERING   ; REQUIREMENTS OF THE THREE PRECEDING   ; ASSEMBLY DIRECTIVE HANDLERS.    ; INPUT INITIALIZED REGISTERS    ; OUTœIN THE STACK POINTER  BEQ  SECRTN  ; EXIT, NO OVERFLOW DETECTED  INCB  TERROR  ; SET TRUNCATION ERROR  BR  SECRTN  ; EXIT, OVERFLOW DETECTED NCHAR:  TRAP  SETUP1 ; CALL SECTION INITIALIZATION  INC  R0   ; R0 = 2  CMPB  R3,#'0  ; IS CHARACTER ASCII 0 ?  BLT  CHAR01  ; NOPE  CMPB  R3,#'9  ; IS CHARACTER ASCII 9 ?  BGT  CHAR01  ; NOPE CHAR00: SUB  #22,R3  ; BOUNDED, START TRANSLATION�ˆwf  END Æ &&~,Z &‰ÅÜÄÚ7Š Åe‰Àå ÷•þÿ ÅåŠ,~D!÷‹åBͽóõ%(‰÷‹é wŠãÅP,¢²Ä–wŠÁ÷ ¬Ý÷ Ðæˆˆ`‰·Š™µ ˆ:,ÆwúÿŒwüÿˆw†Â^7Ф&‰…ÁRÂåÎ ^k,êÀ¦fæ"ˆÁeÀ ÷� ͵ ñ•R1, ͵ñ•%͵É•=Ñ C͵͵,2 @ñ•Gæ**‰±±Dþÿƒ`Û,V $‰ DÝ!!ÿ NTOU CTEBYT ENRRCUI S ;     ESYT BDEMOS-TUTA SSI;     I CSR FO; 162-UFIB S = UFDBCM NTOU CTEBYM MUXIMAI S ; 6 .- = 2 UFIB SO TWK OCBLR DEEA HUTNP ICEURSO;    D ELFIG INSTLIK ANBL;   1 .+  =  . LDIE FNGTIIS LCTJEOB;   6 .+  =  . LDIE FNGTIIS LNKLA B ;  +1 .  =  .D ELFIG INSTLIN IOATOC L ;  +6 .  =  .D ELFIG INSTLIR ROER;   2 .+  =  . ERMBNUE IN L ; +6jþŸPUT COMPLETE HANDLER HANDLING    ;  RETURN IS TO SETSRC DATA:  MOV  #SAVTERM,R5  ; R5 = SAVTERM ADDRESS  TRAP  DATERM ; CALL DATA TERMINATION  BNE  DAT00 ;NOT DATA TERMINATOR.  TSTB  ITEMIN-O04  ; IS AN ITEM PENDING ?  BNE  DAT00  ; YES DAT0:  INCB  QERROR-O04  ; NO, QUESTIONABLE SYNTAX  JMP  EXIT-O04  ; EXIT VIA THE MAIN PROGRAM DAT00:  JSR  R1,@R7 ; ITERATION RANGE    ;(R1=DAT00+2, OLD R1 TO S   BR  CHAR03  ; COMPLETE THE TRANSLATION FCHAR:  TRAP  SETUP1 ; CALL SECTION INITIALIZATION  INC  R0   ; R0 = 2 CHAR01: CMPB  #'$,R3  ; IS CHARACTER ASCII $ ?  BNE  CHAR02  ; NOPE  SUB  #11,R3  ; YES, INITIATE TRANSLATION  BR  CHAR03  ; COMPLETE THE TRANSLATION CHAR02: CMPB  #'.,R3  ; IS CHARACTER ASCII . ?  BEQ  CHAR00  ; YES, START TRANSLATION  CMPB  R3,#'A  ; IS CHARACTER ASCII ¡Ãe $‰Íµ@‹,z ñ•G*‰÷e°·Šöwêþ(‰wÖþÀ8ÈEÑ $8ƒ,ž ø Èe8 Á°ÁåfQ$Hà æ, ˆ‡ R‰÷ �qÒ   ´ Ò 0æ ·Š€÷ |· x÷•ÿÿhw4 ÀR‰ æ& — *& –, ‰÷‹h‰þ÷µZa^Q À�öû,2 Àe € € € Ö ·Š¹  qT Ð3 $T n,V ÈÇÍÁ ÔÁ Òæ* Ñ÷Šû·Š�7Šñ¯ * ¦, . = . NTOU CTEBYT ENRRCUO L ;   0 RDWO .  ESYT BDEMOS-TUTA SLO;   0  D OR.W T UNCOE YT BUMIMAX MLO;   0  D OR.W 2:UFOB LO TWK OCBLR DEEA HUTTPOUD TEIS L ;    ENEV .  -6F1BULO.-  =  C MBLO O. NNELIR FOM OO RVEEA L; 4 +1 .  =  .S ERFFBU;  14.+  =  . ONSIENXT ENGTIIS LCTJEOB;  12.+  =  . ERFFBUA AT DERCTRAHA C ; AXCMSR.+  =  . NTOU CTEBYT ENRRCUI S ;     ESYT BDEMOS-TUTA SSI; fþ£TACK)  CLR  R0   ; R0 = 0  JSR  R7,@R4 ; CALL THE EFFECTIVE PROCESSOR DATB0:  SWAB  @R6   ; WORD DIRECTIVE ?  BNE  DATB7  ;NO  TSTB  RSLMOD-O04  ;YES (0 IN LOW ORDER BYTE)  BEQ  DATA00  ;ABSOLUTE EXPRESSION BLT DATB14  ;.GLOBL OR EXTERNAL    ;.CSECT EXPRESSION ;RELOCATABLE EXPRESSION CURRENT .CSECT TRAP SAVREG MOV #2,R4 MOV #RLD2.1,RLDIR-O04 ;INTERNAL RELOCATION TRAP RELREF MOV RESULT-O04,R1 MOV #4,R4 ¤A ?  BLT  NUM0  ; NOPE  CMPB  R3,#'Z  ; IS CHARACTER ASCII Z ?  BLE  CHAR03  ; CHARACTER IS BOUNDED     ; CHECK FOR LOWER CASE  CMPB  R3,#141  ; IS CHAR. LOWER CASE A ?  BLT  NUM0  ; CHARACTER NOT BOUNDED  CMPB  R3,#172  ; IS CHAR. LOWER CASE Z ?  BGT  NUM0  ; CHARACTER NOT BOUNDED  BICB  #040,R3  ; INTERNALLY CONVERT ALL     ; LOWER CASE TO UPPER CASE.  MOVB  R3,@CURB¥z ÷‹î»÷Šè¸÷ÿÿâ´·ŠÙ& æ�w Ú,ž ÷‹Ê·ŠÄÖ wHÿÀ ‰÷‹`÷‹Ã7 ;% š‡ ERRORS j à ÿ,à ÷s^@‰·Šz÷ŽÄ÷ X‰>‰·Š ©s2, · JùßDÃ¥ ÃU Â(Ê�· 0ï,}Ì (�*( Ãï$yÃÁþ Áÿ@‰ ÄvÃ0 vH Þ,H üûÂ^ÀÁe÷Š Å(<‰÷‹·Š›wÖ^(&,l Æ O Ì Î+÷‹ì.    T UNCOE YT BUMIMAX MSI;   6 .- = 1 UFIB SE ONK OCBLR DEEA HUTNP ICEURSO;    D ELFIG INSTLIK ANBL;   1 .+  =  . LDIE FNGTIIS LCTJEOB;   6 .+  =  . LDIE FNGTIIS LNKLA B ;  +1 .  =  .D ELFIG INSTLIN IOATOC L ;  +6 .  =  .D ELFIG INSTLIR ROER;   2 .+  =  . ERMBNUE IN L ; +6 . = . NTOU CTEBYT ENRRCUO L ;   0 RDWO .  ESYT BDEMOS-TUTA SLO;   0  D OR.W T UNCObþ§BR DATB13 ;.GLOBL OR EXTERNAL .CSECT EXPRESSION DATB14: TRAP SAVREG MOV #RLD2.5,RLDIR-O04 ;GLOBL ADDITIVE RELOCATION CMPB #-1,RSLMOD-O04 BEQ DATB15  ;GLOBL EXPRESSION MOV #RLD4.3,RLDIR-O04 ;.CSECT ADDITIVE RELOCATION DATB15: MOV #2,R4 TRAP RELREF MOV RESULT-O04,R3 MOV #10,R4 MOV GLBSY1-O04,R1 ;.GLOBL OR MOV GLBSY2-O04,R2 ;.CSECT NAME DATB13:  TRAP  RLDFIL  INCB  RLDFLG-O04  TRAP  SETREG  BR  DATA00 DATB7:  MOVB  +1(R2),TERROR¨YTE  ; EXTERNALLY CONVERT ALL     ; LOWER CASE TO UPPER CASE CHAR03: BIC  #177700,R3  ; COMPLETE THE TRANSLATION  MOVB  R3,@SYMBOL  ; SAVE CHARACTER IN TMPSYM  INC  SYMBOL  ; SYMBOL = SYMBOL+1 SECRTN: TRAP  SETREG ; CALL SET REGISTERS  MOVB  R0,SFLAG  ; SFLAG = R0  RTS  R7  ; RETURN .PAGE PAL ;SETUP1: SUBR22: MOV  (R6)+,R0  ; SAVE THE RET© &‰Ä÷ÀJ‰Á–,� ÌÄ&‰÷¬÷¥ÿÿÂ÷ žÄJ‰/,´ æÄÁ†Â„H‰·Š„*‰·œA·Š¡,Ø ;ÎÎ% ÷‹‚÷¥ÿÿz·ŠP‰À<‰ã,ü ÷‹d ÷ xP?Š6÷ n·Š.öÁ2Î c¥ "2ˆ, ÷Š>·ŠÛw ÷‹4FÀß× 0× 9Ž,D ÃåÃ¥$Ãå Ã¥.ôÃ¥   ,h × A× Z × a× z ÃÅ ÿ�ÊÃEÀÿð0Œ ÿ�´· °·Šk´·Š²Å®÷ بÁsD‰Ât{$sE YT BUMIMAX MLO;   0  D OR.W 1:UFOB LE ONK OCBLR DEEA HUTTPOUD TEIS L ;    0 RDWO .  0 RDWO .  0 RDWO .  0 RDWO .  0 RDWO .  12  D OR.W 3  D OR.W K AC PILRA;T  0 4 RDWO . F:BURL TX MARCS= BCIM S AL PF)+LCRD+AR C(1 2.=8ERFFBUE RCOU SAX M ; 2. 8 =X MARC SE ONR FEUF B ;     CKLO BERADHEO I/N ABYD DECERE P  ;    LYTEIAEDMM IISR FEUF BALDUVIDIINH AC E ;    ERFFBUT PUUT OHE TINTHWID DEEDMB E ^þ«-O04 ; TERROR = HIGH ORDER BYTE  BEQ  DATA00  ; ZERO VALID VALUE  INCB  TERROR-O04  ; TERROR = TERROR+1     ; NEGATIVE ONE VALID VALUE DATA00: SWAB @R6   ; RESTORE STACKED VALUE CMP #401,@R6 BNE DATB8 TSTB RSLMOD-O04  ;.BYTE DIRECTIVE BEQ DATB8 CMPB #-1,RSLMOD-O04 BEQ DATB10   ;.GLOBL INCB AERROR-O04 BR DATB8 DATB10: TRAP RLDBYT DATB8: MOV R3,R0   ; DIRECTIVE TERMINATED? DATA8: TRAP DATERM   ; CALL DATA T¬URN ADDRESS  TRAP  SAVREG ; CALL SAVE REGISTERS  MOV  R0,-(R6)  MOV  #1,R0  ; R0 = 1  MOV  #BASE08,R1  ; R1 = BASE08 ADDRESS  MOV  #BASE10,R2  ; R2 = BASE10 ADDRESS  MOVB  @CURBYTE,R3  ; R3 = EFFECTIVE CHARACTER  MOV  #DECNUM,R4  ; R4 = DECNUM ADDRESS  RTS  R7  ; RETURN .PAGE PAL   ; SUBROUTINE BINARY TO ASCII CONVERTER    ; INPUT R4 ­*t”.´ Á2÷¦· ·&7Šš‰B‰÷ ‚æV2(V,Ú ˆ÷å V· lá �? ¦ÿ(J7 ˜7 RÀ´,þ V·<â ·4Á. 0 þÿÀåù÷•Ä," C÷ ±X÷Œ:TÀÿÿ7�G‰÷&7 7 Ç,F ô7 ÷8wÖ7 ¾7 PÀ&ÐRШ,j 7ÈÀz‰æÔˆæÎˆÀÚÀåЀÚ,Ž  wœæÜæÚæ�f‰·ŠÔ ‰·Š–,² Q·Š_ÎÝÚްεöÕÿ·Š9‰·Z±,Ö ·œ·–Ö%¯,÷‹0÷‹z·Šw ;    LYTELEMPCOS IERFFBUT PUINE TH;    E ON ZNGRIFEUF BUTTPOUT-PUIN;   N VE.E S AS PUMIMAX M ;   0 TEBY .S:ASXPMA SSPAE IVCTFEEF;   0  E YT.B : SSPA SSPAS L'BOYM SEDINEFND U ;   0 TEBY .: SSPAUS ONTIOPS AS PNGTIIS LORRR E ;   0 TEBY .: SSPAER NSIOPT OLYMBSEAS;   : NSIOPT OS ONTINCFUS AS PLYMBSEAS;   S:SEAS P AL P GEPA . T PUUT OOR FENOP; 7 R4UBSD ORZþ¯ERMINATION BNE DATA1   ; NOPE DATB1: TSTB RADIX-O04  ;RADIX HANDLING BEQ DATA0   ;NO THEN BRANCH DATB2: TST CNTCHAR-O04 BEQ DATB3 DATB5: CLRB @SYMBOL-O04 DEC CNTCHAR-O04 INCB SYMBOL-O04 BR DATB2 DATA0: MOV #SETSRC+2,R1  ; R1 = SETSRC ADDRESS TST @R6   ; ASCII DIRECTIVE? BLT DATA2   ; YES, EXIT.     ; THIS NO-OPED CODE INSURES BR DATA1 ASCIIX: DECB SIZE-O04 INCB QERROR-O04 JMP EXIT-O04     ; THAT ALL .ASCII STATEMENT'S° = BINARY NUMBER    ;  R3 = DESTINATION END ADDRESS    ;  R2 = ITERATION LENGTH ;BINASC: SUBR13: MOVB  R4,-(R3)  ; MOVE THE EFF. OCTAL DIGIT     ; INTO LSTBUF(R3) BYTE  BICB  #370,@R3  ; ZERO EFF. BYTES HIGH 5 BITS  BISB  #060,@R3  ; SET THE OCTAL 60 BITS  ASR  R4   ; SHIFT R4 RIGHT 3 BITS  BIC  #100000,R4  ; PREVENT SIGN PROPAGATION  ASR  R4  ASR  R4  DEC  R2   ; R2 = R2±8wŠy,ú ƒɵ×ÿ·ŠÿöEÀ•ÁLÄH‰A÷‹I,%÷‹Dåÿ4ÿ/dƒÿ\÷‹ØÙ\,Bñ¥ÿ‰‰°‰ÉÅ÷‹ ÉÉÕ ñ�,fÿÉÕV‰Á@£À@£‡æâ@‰ÅPÄ^Ð"P&^Ô(ŠÃd ŠÂîÀ�ìxœÞ2j"ªDô4.d îœÞ2j"ª D"ôØ,ª ‰·ŠSÌ•ÿÿ:÷‹ª÷÷‹ŸóÌïÆp,ÎÌåŒ 퇓#ê(×­FûÿO×­>üÿK·Šð,òH ‰÷ š·Š ÷‹`÷¥ÿÿX.W  TOR IOPRE IL FUTTPOUE ETEL;D LEABJT.- =T OUEL DC ND.E  46BRSU RDWO. R DEOA LAYRLVE;O  LEABJT.- =L TRON CG SENO DFFN.I  R7S RTA VIT XI;E  45BRSU RDWO. D ANS ERSTGIREP PO;E BLTA-J.= EGPRPO 'DITIN .IF; 4 R4UBSD OR.W  ET STADAE ASLERE .ND ASELO.C;E BLTA-J.= ANLE CC ND.E  43BRSU RDWO. G SENO DFIF. C ND.E  #1Y LAEROV2 RYNT;E  Y2TREN RDWO. G SENO DFFN.I  TADAE ATIDAL V2,SI CLLCA;E BLTA-J.= HKICCS DCEN .  42BRSU RDWO .  EGOSNF FD.I C ND.E Vþ³     ; TRAILING TERMINATOR IS     ; FOLLOWED BY EITHER A CAR-RET     ; OR A SEMICOLON. IF NOT, A     ; BLANK LINE IS PRINTED WITH     ; A'Q' ERROR CODE AND THE     ; DIRECTIVE IS TERMINATED. ; BGE DATA1   ; NO, AVOID CHECK ; TRAP CBTABS   ; CALL CHECK FOR BLANKS AND TABS ; CMPB #CR,@CURBYTE-O04 ; THIS CHARACTER A CAR-RET? ; BEQ DATA2   ; YES, VALID CASE SO EXIT ; CMPB #';,@CURBYTE-O04 ; THIS CHARACTER A SEMICOLON? ; BEQ DATA2   ; ´-1  BGT  SUBR13  ; ITERATE THE PROCESS  RTS  R7  ; RETURN .PAGE PAL  ; SUBROUTINE END LINE   ; THIS SUBROUTINE COMPLETELY FORMATS THE LISTED   ; OUTPUT BUFFERS AND DRIVES THE BINARY   ; OUTPUT SUBROUTINE.   ; *** NOTE ***   ; EBBUF INCREMENTS THE USERS'S PROGRAM COUNTER ;ENDLINE: SUBR08: TRAP  SAVREG ; CALL SAVE REGISTERS  MOV  CURLIST,R5  ; R5 = THE CURRENT Bµ·ŠñÈ,÷�EùP‰ú ‰·ŠÙ‰Ó)‰&·ŠËº,:ÍË• ‰·Š·‰ÌŒ Œ Sÿ¥,ô¨,^ë‰ç·Šä‰ ·Š“Í×Ë•7 t7 n®,‚NS‹Š‹Š·bw¤÷‹…#÷%F²÷ –)æì F€,¦¦ˆ÷‹Œ÷­96æ’ˆ÷FŠ÷¬†PF$¬—,Ê÷„h÷¥wP÷ X · V÷B7ŠÕ,î�‰w¤æTˆw"LPQARDMBIV,NTU,EEGxÔ,6ð2 #AYRLVE OY8TREN; 8 RYNTED OR.W G SENO DFFN.I R FEUF BLD RTOINL OBGL .ERNT;E LEABJT.-  = GLTREN DCEN. 1 R4UBSD OR.W  EGOSNF FD.I  DCEN. 2 #AYRLVE OY6TREN; 6 RYNTED OR.W G SENO DFFN.I  NETIOUBRSUH RCEA SARNELI;E BLTA-J.= CHSRIN L0 R4UBSD OR.W Y TRENL BOYM SAYRLVE;O LEABJT.-  = AYRLOV 39BRSU RDWO . NETIOUBRSUH RCEA SRYNABI;E BLTA-J. =H RCNSBI DCEN. 8 R3UBSD OR.W  EGOSNF FD.I  DCEN . ) #3Y LAEROV (ORSSCERO PND ENTRO;F  Y8TREN RDRþ·YES, VALID CASE SO EXIT ; INCB QERROR-O04  ; NEITHER, QUESTIONABLE SYNTAX ; COMB @R6   ; SET SIZE < 0 DATA1:  TSTB  RADIX-O04  BEQ  DATB4 RADB4:  SWAB  R0  ; THIS PORTION  MOVB  @CURBYTE-O04,R3 ; CARRIES OUT  CMPB  R3,#'0 ; THE TRANSLATION  BLT  RAD01 ; AND PACKING  CMPB  R3,#'9 ; OF WORDS  BGT RAD01  ; AS SPECIFIED RAD00:  SUB  #22,R3 ;  BR  RAD03 RAD01:  CMPB  #'$,R3  BNE  RAD02  SUB  #11,R3  BR  RAD03 ¸UFFER'S     ; OUTPUT HEADER ADDRESS  MOV  R5,ENDL06+2  ; PLACE THIS HEADER'S ADDRESS     ; INTO LO CALLING SEQUENCE ENDL10: CMP  (R5)+,(R5)+  ; R5 = R5+4  MOV  R5,-(R6)  ; STACK THIS ADDRESS  CLR  (R5)+  ; CLEAR LO BYTE COUNT CMP LINENO,LASTLN ;SEE IF THIS IS A NEW LINE, OR AN BNE INCLINE  ;EXTENSION OF THE PREVIOUS MOV #6,R4  ;EXTENSION - BLANK OUT LINE NUMBER CLINE: MOVB #' ,(R5)+ DEC R4 BNE CLINE BR ENDLAA ; INCLINE: MOV ¹Hxð\M ,Z€M8Ü€f…,~¤x€Mô&µW),¢4dô&µW4dô&µWö ™,Æô&µW Nô&µWµz%p: ,ê** PAGE XXXXX Mù!M-DD-YY HH:MM:SS:XX , (°,(€ P»,L¬ÿ� µzWO. G SENO DFFN.I LYMBSEASL NAIOITNDCO;E BLTA-J.= NDCO 37BRSU  D OR.W E BLTA-J .  = YTDBRL 36BRSU  D OR.W E BLTA-J .  = INTBOU DCEN .  35BRSU  D OR.W G SENO  F FD.I C ND.E 2 #AYRLVE OY7TREN;  7 RYNT E RDWO .  EGOS N DFFN.I E BLTA-J .  = ABDTGS 34BRSU  D OR.W E BLTA-J . = EFLRRE 33BRSU  D OR.W E BLTA-J .  = ILDFRL 32BRSU  RDWO. E BLTA-J . = NTDIRL 31BRSU  D OR.W E BLTA-J .  = HBNþ»RAD02:  CMPB  #'.,R3  BEQ  RAD00  CMPB  #' ,R3  BNE  RAD06  CLR  R3  BR  RAD03 RAD06:  CMPB  R3,#'A  BLT  RADERR  CMPB  R3,#'Z  BLE  RAD03  CMPB  R3,#141  BLT  RADERR  CMPB  R3,#172  BGT  RADERR  BICB  #40,R3  MOVB  R3,@CURBYTE-O04 RAD03:  BIC  #177700,R3  MOVB  R3,@SYMBOL-O04  INC SYMBOL-O04  BR  DATB6 RADERR: INCB  QERROR-O04  BR  DATB2 DATB6:  INCB  CURBYTE-O04  MOV  ¼LINENO,-(R6) ;SET UP CALL TO DOS .BIN2D SUBROUTINE MOV (R6),LASTLN ;SAVE LINE NUMBER MOV R5,-(R6) ; ADD #6,R5  ;POINT R5 TO ERROR NO. IN SOURCE MOV #3,-(R6) ; EMT 42  ;CONVERT LINE NO. TO ASCII DECIMAL    ;AND LEAVE IN SOURCE OUTPUT ENDLAA: MOV R5,CURLIST  ; CURLIST = EFF DATA(0) ADDR  MOV  R5,R4  ; R4 = THE ERROR FIELD'S  TST  (R4)+  ; TERMINAL ADDRESS  MOV  #17,R0  ; R0 = 23.  TRAP  BLKBUF ; CALL BLANK BUFFER  CLR  ½R}µzd}¬‘,p¢%¶òºtv‡"¢%¶ ò"º$t&v*”x"@HÜœ,!l$š[.x"@ H Üœ,!l$ša¨\!¸˜ ÊT%lþôÖ.\!¸ ˜  ÊT%lþôð¼Þö &rÆŒ‚%&%›.Þö  & r ÆŒ‚%&%ÉÐö%´�%f%Ž B,xÌ:&.ö%´�% f% Ž B,xÌ:h(äÈÖÖRCSE 27BRSU  D OR.W G INSTLIT PUUT ONDMAOM C ; LEABJT.-  =  T ISOL C6 R2UB S RDWO .  ERNTOU CONTICALOE THN VE E ; LEABJT.-  =  C NPVE E5 R2UB S RDWO .  TYLIBITAINPR;  E BLTA-J .  = NTRI PC ND.E 4 R2UB S RDWO .  EGOS N DFIF .  DCEN .  #4Y LAEROV; 8 RYNT E RDWO .  EGOS N DFFN.I N IOATINRMTEA AT D ; LEABJT.-  =  M ERAT D3 R2UB S RDWO .  UMKSECCHH ISIN F ; LEABJT.-  = M SUCKHE C2 R2UB S RDWO .  ONTIZALIIAITJþ¿ CURBYTE-O04,R5  DEC  CNTCHAR-O04  BNE  DATA8 DATB3:  MOV  #TMPSYM,R1  ;INITIALIZE ADDRESS  TRAP SERCHB  ;FOR CONVERSION  MOV  #TMPSYM+1,R2  MOV  #SETSRC+2,R1  MOV  #2,SIZE-O04  BR  DATB9 DATB4:  MOV  @R6,SIZE-O04 DATB9:  MOV  @R2,TBBUF-O04  CLRB  RADIX-O04 ASCIIY:  TRAP  ENDLINE ; CALL END LINE  TRAP  COLIST TST LOLB-O04  ;WAS LISTING DEVICE INITED YET? BEQ DATB99  ;NO - BRANCH MOV #LOLB,-(R6) ;WAIT TIÀ R3   ; R3 = 0  MOV  #ERRTAB,R2  ; R2 = ERROR TABLE BASE ADDR. ENDL00: SWAB  @R2   ; EFF ERROR COUNTER ZERO ?  BEQ  ENDL01  ; YES  CLRB  @R2   ; NO, CLEAR THE COUNTER  MOV  #1,R3  ; SET R3 = 1  CMP  R5,R4  ; EXCEEDED ERROR FIELD ?  BHIS  ENDL01  ; YES  MOVB  +1(R2),(R5)+ ; NO, BUFFER ASCII ERROR CODE     ; INCREMENT ADDRESS POINTER ENDL01: SWAB  (R2)+  ; REINSTATE ERROR TABLE WORD     ; INCREMENT ADDRESS POINTER  CÁ  ÷ÈÖÖ ñ  Ë Å Ä ¾ ½ » ni x_ „S �G ”C”H  7 ¢5 ¤3 ª- «, ±& ²% Ò È ¼ &°IN. ID. ARCH;  E BLTA-J .  = P1TUSE 21BRSU  D OR.W E OD CORRR EET S ; LEABJT.-  =  R ERET S0 R2UB S RDWO .  LDIE FRTSEIN;  E BLTA-J .  = RTSEIN 19BRSU  D OR.W R TORAPESES SIHENTREPA;  E BLTA-J .  = EPRSPA 18BRSU  D OR.W K ECCHD END ELFI;  E BLTA-J .  = NDDEFL 17BRSU  D OR.W R TONAMIER TXTNE;  E BLTA-J .  =M ERXTNE 3BBRSU  D OR.W K ECCHA DIMEF--OND EUTTPOU;  E BLTA-J .  = HKMCEO 16BRSU  D OR.W FþÃLL LISTING COMPLETES EMT WTCMD DATB99: SUB #12.,CURLIST-O04  INC  CURBYTE-O04  ; INCREMENT CURBYTE POINTER DATA2:  TST  -(R1)  ; R1 = R1-2  RTS  R1  ; REITERATE SUBROUTINE RSETP2: CLR  @USERPC-O04  ; INITIALIZE DOT AT ZERO ;INITIALIZE DOT TO DEFINED, RELOCATABLE, UNNAMED .CSECT. MOV #DEFFLG!RELFLG!400,@HUSERPC-O04  CLR  ABSPC-O04  CLR  RLDFLG-O04  ;INITIALIZE ;CLEAR ALL CURRENT PC WORDS IN ;THE CONTROL SECTION AREA OF THÄMP  R2,#MAXERR  ; TABLE COMPLETELY EXAMINED ?  BLO  ENDL00  ; NOPE  ADD  R3,ERRSUM  ; YES, ERRSUM = ERRSUM+R3  MOVB  R3,ERROR  ; ERROR = R3  MOV  R4,R5  ; R5 = THE LOCATION FIELD'S  ADD  #6,R5  ; TERMINAL ADDRESS  MOV  @USERPC,R4  ; R4 = USER'S PC VALUE  MOV  R5,R3  ; R3 = BUFFERING ADDRESS  MOV  #6,R2  ; R2 = 6 ITERATIONS  TSTB  SIZE  ; ANY OBJECT DATA PRESENT ?  BEQ  ENDL02  ; NOPE  BGE  ENDL12  INC  PAGINGÅ *¬*« dr d| fp fy ¡5 ¢4,¢¶Îå¦Îe†ˆ‡w(ï÷•ÿ±ýÆ”ý7 jü †ˆÒ.Æ7 |ü7 ¦ü7 „ü7 ²ü7 Bü7 Šü÷8†ü7 >üæ´` (´,ìæ!ˆæ¢& æ!ˆwþëæJüæDüˆ×­nü6  ¢/,÷­füÒýL‰wÈøæ*üæ$üˆw&ù7 ºüL,47Š1ý7Š,ý7ŠÇû7ŠÍû7Šý7ŠËû7еû7ŠÄû÷•Â,X%ý‰�&Ð S ERSTGIRET SE;  E BLTA-J .  = EGTRSE DCEN .  15BRSU  D OR.W G SENO  F FD.I  C ND.E 3 #AYRLVE OY4TREN;  4 RYNT E RDWO .  EGOS N DFFN.I T PUUT OEDSTLIE BLTAL BOYM S ; LEABJT.-  =  T LSTL S4 R1UB S RDWO .  RSTEISEG RVESA;  E BLTA-J .  = EGVRSA 13BRSU  D OR.W N IORSVEON CIISC ATOY ARIN B ; LEABJT.-  =  C ASIN BC ND.E 2 R1UB S RDWO .  EGOS N DFIF .  DCEN .  #3Y LAEROV3 RYNT E ; Y3TREN  D OR.W BþÇE ;SYMBOL TABLES. MOV PERTOP-O04,R0 ;BOTTOM OF .CSECT AREA MOV R0,R2 MOV R2,HIRPC-O04 ;POINTER TO MAX PC OF TST -(R2)  ;BLANK .CSECT MOV R2,RELPC-O04 ;POINTER TO CURRENT PC OF    ;BLANK .CSECT MOV CONTOP-O04,R1 ;TOP OF .CSECT AREA SETP3: CMP R0,R1 BEQ SETP1  ;DONE CLR -2(R0)  ;0-CURRENT PC WORD. SUB #10,R0  ;SIZE OF ENTRIES IF BR SETP3  ;4 WORDS. SETP1: MOVB  #1,SECMOD-O04 ;UNNAMED .CSECT MOV  #130411,TITLEA-O04 MOV  #35214,È  BR  ENDL05 ENDL12:  TRAP  BINASC ; CALL BINARY TO ASCII CONVERSION ENDL02: TRAP  EBBUF ; CALL ENTER BINARY BUFFER  MOV  #TBBUF,R0  ; R0 = TBBUF(0) ADDRESS  ADD  #7,R5  ; R5 = THE OBJECT FIELD'S ENDL1A:  MOV  R5,R3 ENDL03: MOV  #3,R2  ; R2 = 3 ITERATIONS  MOVB  (R0)+,R4  ; R4 = EFF OBJECT DATA BYTE  BIC  #400,R4  ; PREVENT SIGN PROPAGATION  TSTB  BYTFMT  ; BYTE OR WORD FORMAT ?  BNE  ENDL04  ; BYTE  ASL  R2   ; ÉRÐ æàûˆñµ@wûà,|ñµ·ŠyûÄ• · ØûQ$BB`@ KËå4, á• wªüÊ¥ ÷m¸û°û2¡ÿÿŠ”2‘ÿÿ2‘�,Ä·dü ¤þÀ  ·Š-û‰À�JüÀe÷‹„ü�,èrwÎ÷‹vüð÷‹€ü·ŠûÀ éw&&G, ‰ ‰ÁzÂÃ^Ö‹wløÿÕüîâz^Î,0‰°·ŠÑúñÕÿ×-2ü¯·Š»ú8À ×­˜üb,T·Š§ú/Ë2ûÉÕ÷‹ýû ÉÕ ñ¥ÿ·,xñ�ëûÉÕV‰×­bü ɵñ¥ÿá9,œñÕG SENO  F NDIF .  NGTIIS LLEAB TOLMBSY;  E BLTA-J .  = STLIST 11BRSU  D OR.W R TEACARCHT GE;  E BLTA-J .  =R HATCGE 10BRSU  D OR.W S AB TND AKSANBLK ECCH;  E BLTA-J .  = BSTACB 09BRSU  D OR.W R FEUF BRYNABIR TEEN;  E BLTA-J .  = UFBB E8 R0UB S RDWO .  NGSIESOCPRE IN LOFD EN;  E BLTA-J .  =E INDLEN 07BRSU  D OR.W S SILYNA AAXNTSY;  E BLTA-J .  = AXNTSY 06BRSU  D OR.W E BLTAL BOYM SERNT E ; LEABJT.->þËTITLEB-O04  MOV  #-1,R0  MOVB  R0,BINOUT-O04  TRAP  BBINIT ; CALL BINARY BUFFER INITIALIZATION  MOV  #1,PAGCNT-O04  ; INIT. PAGE COUNTER  CLR  PAGING-O04  ; INIT. LINE COUNTER  CLR  ERRSUM-O04  ; INIT. ERROR COUNTER CLR LINENO-O04 ;INITIALIZE ASSEMBLER LINE NUMBER JMP SETP4-O04 RSETP4:  CLR  SIBUF1+2-O04  CLR  SIBUF2+2-O04  MOV  BHADRS+2-O04,R0 MOV R0,-(R6) ;STACK BUFFER ADDRESS  MOV  #SIMBC,(R0)+ÌR2 = 6 ITERATIONS  DEC  R0   ; DECREMENT R0  MOV  (R0)+,R4  ; R4 = EFF OBJECT DATA WORD  DECB  SIZE  ; SIZE = SIZE-1 ENDL04: TRAP  BINASC ; CALL BINARY TO ASCII CONVERSION TST LISTKEY BNE ENDLX1  INC  PAGING  ; INCREMENT LINE COUNTER ENDLX1:  DECB  SIZE  ; SIZE = SIZE-1  BLE  ENDL05  ; OBJECT DATA PROCESSING DONE  MOV  SRCIN,R3  ; R3 = LAST TERMINATORS ADDRESS  INC  R3   ; AVOID THE FIRST CHARACTER  MOVB  #TAB,@R3 Íÿ‰ÞɵÖñ¥ÿôÿ-ªúÚúÎwÿù,À÷‹¼û€ŠÀe ÷Š�û/÷‹¢û‰ ÷‹ˆûT,äõ·Š”û÷‹~ûðwDõ÷µ€û÷‹lû×-\úvM &v>,ã×-TúŠß Jú÷‹PûÙwZø·ŠçùÀû Š  ŠF,,þÿ‡÷ºú‰wöýw,íw&îw`îwàî÷Šûò–,Pwïw¢ð÷múúê‰÷‹û·Š§ùã÷ðùöùÇ,tßQ$Q$Q$Q$Q$wBóQ$wvówÞówNôw\ôwÝ,˜¦ôw¦ð7 Êù÷ÿÿÆùÅ÷¾ù÷ÿÿºù¿÷´ù¼:,¼@‰7ŠMùwnÿ÷Êù"úÿ5Âù¿ ¼ù· ú·Š/  =  R TEEN 2BBRSU  D OR.W E LUVAS ERSTGIREE RCFO;  E BLTA-J .  = CEORRF 2ABRSU  D OR.W E LUVAS ERSTGIREK ECCH;  E BLTA-J .  = CKHERC 05BRSU  D OR.W E LUVAS L'BOYM SVESA;  E BLTA-J .  = ALVVSA 1CBRSU  D OR.W Y TREND -R 3'SONSIESPREX;  E BLTA-J .  = E3XP EB R1UB S RDWO .  RYNT END2-S N'IOSSREXP E ; LEABJT.-  =  2 PEEX 1ABRSU  D OR.W Y TRENT -S 1'SONSIESPREX;  E BLTA-J .  = E1XP E4 R0UB S RDWO .  LEAB:þÏ  MOV  #SIMODE,(R0)+  MOV  R0,CURLIST-O04  MOV  #LOMBC-26,R0  TRAP  BLKBUF MOV SILB-O04,-(R6) ;GET SOURCE INPUT EMT RDCMD ; ; MOV SILB-O04,-(R6) ;WAIT FOR COMPLETION EMT WTCMD  MOV  BHADRS-O04,R0  SUB  #16,R0  MOV  #100000,(R0)+  CLR  (R0)+ JMP SETSRC-O04 .PAGE PAL ; DIRECT ASSIGNMENT STATEMENT PROCESSING  ; THIS SUBROUTINE RESOLVES THE FOLLOWING THREE DIRECT  Ð ; BUFFER(1) = TAB ADD #17,R3  ;POINT TO END OF SOURCE  MOV  R3,SRCIN  ; SRCIN = LATEST TERMINATORS ADDR  MOVB  #LF,@R3  ; INSERT A CR-LF SEQUENCE  MOVB  #CR,-(R3)  BR  ENDL03  ; OBJECT FIELD NO FORMATTED ENDLX7: JMP ENDL07 ENDL05: MOV  SRCIN,R3  ; R3 = LAST TERMINATORS ADDRESS ENDL11:  MOVB  #CR,-(R3)  INC  R3  MOVB  #LF,@R3  MOV  ENDL06+2,SRCIN ; RESET TERMINATORS ADDR.  SUB  @R6,R3  ; CALCULATE EFF. BYTE COUNT  DEC  Ñù™,à7‹›ú&‰À•Á¦ùÄH‰*‰‰÷•�ú‡ÍŸNú¯,‡×¯Hú`ÿ¥ >úÿ•?6ú‡Â`�Ã8p `&8ë,( ÷ (ùæVˆ€ ÷ Lù戈€ À ñµqVˆÃ,L@óÿ ñÅ@óÿfòÿÎEÿÎæ‚wHüB‰Áå.,pÀ�Ñ K‰€¦¢·Øù‡&‰À¨ùz,”Àå&$&`  Šæ&ˆæ&ˆ7 †ù`‰Àm»&&M,¸~ù€ à• 7 tùû‚‡É fˆfˆ‡óæüÿ/ $æÏ,Üfˆæfˆ3 üÿæf TOLMBSYH RCEA S ; LEABJT.-  =  H RCEA S3 R0UB S RDWO .  ONTISIUICQ AEMIT;  E BLTA-J .  = EMIT 02BRSU  D OR.W S ERFFBUO I/E ATOT R ; LEABJT.-  =  E ATOT R1 R0UB S RDWO .  ERFFBUG INSTLIK ANBL;  E BLTA-J .  = UFKBBL 00BRSU  D OR.W N IOATIZALTINI IERFFBUY ARIN B ; LEABJT.-  =  T NIBI BS NTOI PRYNT ENETIOUBRSUF OLEAB TMPJU;   E:BLTA JN VE.E AL P GEPA . E AG.P6þÓ; ASSIGNMENT SITUATIONS:  ; 1) USER'S SYMBOLIC ASSIGNMENTS  ; 2) SYMBOLIC REGISTER ASSIGNMENTS  ; 3) ASSEMBLY LOCATION COUNTER ASSIGNMENTS   ; UPON ENTERING THIS SUBROUTINE THE EFFECTIVE SYMBOL   ; TABLE ADDRESS RESIDES IN HINDEX.   ; REGISTER TYPING INFORMATION OBTAINED ON EITHER SIDE   ; OF THE EQUIVALENCE CAUSES THE EFFECTIVE SYMBOL   ; TO BE TYPED AS REGISTER.   ; THE ASSEMBLY LOCATION COUNTER SYMBOL IS DETECTED   ; BY IDENTIFYING THE ÔR3  MOV  R3,@(R6)+  ; SET BUFFERS BYTE COUNT  CMPB  PASS,LOPASS  ; LISTED OUTPUT PASS ? BNE  ENDLX7  ; NOPE TST LOLB  ;LISTING DEVICE ALREADY INITED? BNE ENDL25  ;YES - BRANCH TST LISTKEY BNE ENDL25 MOV #LOLB,R1 MOV #LOFB,R3 TRAP DELOUT  ;.INIT, .DELETE, .OPEN LISTING DATA SET. ENDL25:  TSTB  RLDFLG  BEQ  ENDL06  ; THIS PORTION PUTS  CMPB  @R5,#CR  ; AN APOSTROPHE  BNE  ENDL1C  ; AS REQUIRED FOR  TSTB  (R5)+  ; Õˆ‡&‰ÅswHùŠ  sN, ŠÄ¬ 7ŠtùÃ| Š7 Lø7 bø7 bø7ŠÒø‰@ ¬ |v,$÷ *ù‰÷‹WùÄüÌ ÷ ùÌ ·Š<ùÀ · üÃ.H·ŠÅ÷>‰Ä%üéÄ%¬ Â’Â ·Š©÷KŠÄüýü¬ (üš,nÜ*‰À� ù‡Å-Èø÷ Âø‹ŠÄ– ÏÀ 7 Ð÷ – ,’èÄ Ç7Šçø· °øÿ¥ ªøÿ¥ ¢ø‡·Šà  ¶,¶Íøò&‰ÁsÅ6 É‹� 5À�®ø   i ; ORATICND IAB TORK ANBL;   0  E YT.B G:LATF BS ASCLS N'IOCTRUSTIN;   0  E YT.B S:ASCL IK AS MNGTIIS LLEAB TOLMBSY;   0  E YT.B K:ASTM S. ERNTOU COLMBSY;     S T'PUUT OEDSTLIE BLTAL BOYM S ;   0 TEBY .: SCSTLI ERNTOU CEMITS N'IOSSREXP E ;   0 TEBY .: NTOUIC ERNTOU CERCTRAHA C'SEMIT;   0  E YT.B: ARCHNT CR TOCADIINT PUUT ORYNABI;   0  E YT.B T:OUIN BR TOCADIING INNDPEM TE I ;   0 TEBY .: INEMIT AG2þ×CHAR13 PACKED WORD.   ; IE. TMPSYM(1,2) = 127400   ; EXPRESSIONS DEFINING THE ASSEMBLY LOCATION   ; COUNTER, UPON BEING ENCOUNTERED, MUST BE   ; TOTALLY EVALUATABLE.     ; INPUT SPECIAL SITUATION     ; OUTPUT EXIT ASSIGN:  MOV  TMPSYM+1-O04,-(R6) ; SAVE SYMBOLS FIRST TRIAD  MOV  TMPSYM+3-O04,-(R6) ; SAVE SYMBOL'S SECOND TRIAD  MOV  HINDEX-O04,-(R6) ; SAVE SYMBOL'S ENTRY ADDRESS  MOV  @R1,-(R6)  ; SAVE SYØINSTRUCTIONS TO BE  MOVB  (R5)+,@R5  ; MODIFIED  DEC  R5  MOVB  -(R5),1(R5)  MOV  ENDL06+2,-(R6)  ADD  #4,@R6  INC  @(R6)+ ENDL1C:  MOVB  #'',@R5 ENDL06: MOV #0,-(R6) TST LISTKEY BEQ ENDLX6 TST (R6)+  ;SUPPRESS PRINTOUT OF THIS LINE BR ENDLX7 ENDLX6: MOV #LOLB,-(R6) EMT WRCMD CMP PAGING,MAXLINES BLT ENDLX7   ; NOPE ; THE FOLLOWING LOGIC STORES THE DECIMAL PAGE NUMBER ; DATE AND TIME IN THE PAGE HEADING BUFFER ; MOV Ù s6,Ú ¬r0ŠrÀ *É‹D‰� ÂXøÃP rr*q,þVøT‰Í wcjø ÷µføñ÷U€F÷Ä�Zø„ ñ,"„ „ ÄEáÿ7‘Vø*‰À ‡Í èÂ÷Ã÷T‰À U,Fó  ÃÝ+øÃ¥ÿ à à à Áô÷ÁàÑ wÜ÷ ,jwÚ÷ß×½ø@Û×½þ÷×ò&‰ÅvÄt ‹ v$t›.Ž B’ƒ`ŠE à à à æà à ƒeòÔÅeW!yi (y>,´ë`‰&æ¦f¦v ‡…�‚ƒ„…Ö Ž,Ø*‰‡&‰À^öÄáw Tö †‚დ· FöFLT PUUT O'SID. ARCH;   0  E YT.B : AGFL SR TOCADIINE YP T'SEMIT;   0  E YT.B : PETY IN VE.E D IONTIEC SOLTRON;C  0  E YT.B : IDCTCS GSLA F'SLEAB TOLMBSYY ARORMPTE;   0  E YT.B S:AGFL T0  D OR.W 0  D OR.W 0  D OR.W 0  E YT.B M:SYMP TR TEUNCOD ELFIG INSSREDD;A  0 E YT.B T:CNLD FS ESDRADD ODE BSTMUM SYMP T ;   ENEV .  LEAB TOLMBSYY ARORMPTE;    0  D OR.W: RMTEAR VN VE.E  E.ICEV;D    AYRLVE OITIN; .þÛMBOL'S FLAGS AND .CSECT ID  TRAP  ITEM ; CALL ITEM  BLE  MAIN16  ; VOID ITEM ENCOUNTERED     ; NON-VOID ITEM ENCOUNTERED  INCB  ITEMIN-O04  ; SET ITEM PENDING FLAG MAIN16: CLR  R0   ; R0 = 0  TRAP  EXPE3 ; CALL EXPRESSION, MINIMAL TERMINATOR ;  BGT  MAIN17  ; NON-VOID EXPRESSION FOUND  INCB  QERROR-O04  ; VOID EXPRESSION CONSIDERED     ; AS QUESTIONABLE SYNTAX  INCB  UERROR-O04 MAIN17: BISÜPAGCNT,-(R6) ;PUSH PAGE COUNT ONTO STACK MOV #PAGBUF+17.,-(R6) ;AND BUFFER ADDRESS FOR PAGE NO. MOV #3,-(R6)  ;AND A CODE FOR BINARY TO DECIMAL EMT 42   ;THEN LET DOS .BIN2D DO THE WORK MOV #PAGBUF+17.,R3  ; SUPPRESS LEADING ZEROES ZEROES: CMPB #'0,(R3) BNE ZEROXT MOVB #' ,(R3)+ BR ZEROES ; ZEROXT:  INC  PAGCNT  ; INCREMENT PAGE COUNTER  CLR  PAGING  ; CLEAR LINE COUNTER MOV #104,-(R6) ; EMT 41  ;GET TIME OF DAY MOV (R6)+,R3 ;R3= Lݵ,üü‡7á@öæB!ˆÖ w2öÂ÷ · $÷‡7á÷§, 7ápö€ ý†*‰À÷ÈF÷à&öà:÷à4÷‡€¡,DÀà€ 7 ö7 (÷÷ÚöÀ ‡ÀE€„à -úÿ &,h1-üÿ 7þÿìõ7÷€ 7°öê‡ß0F,ŒÄå!ׂ ×&‰ÅP 7ŠÊöÄÃ(”P&(,° & ×¢ïÿÍÕ.‰ Á’W îÿ.‰_ ‰Îÿ,Ôˆõ0‰‰wîÂÝxõw²‰·Šõ2‰·Šk,ø õ<  ÂÕ@0‰w2‰·ŠñôD·Šéôú,æW ÷ÿÎW øÿ µ   'TON D 0IF;0 TEBY.: ITINNO R"11AL"PT INPR- 0 N NO;7 37 TEBY.: NTDE IN VE.E  CHITSWS T'ECCS .STLI;0 TEBY.: CTSELC ERNTOU CLEMBSEAST N'DO;0 TEBY.: CTTADN ELEV LSTNES ALONTIDION;C 0E YT.B V:TLNS C0  E YT.B : THRLVA UPCKBAD MOSL;R  0  E YT.B : MDL2RS N)IOCTSEL NAERXT(EE BLTACALORE= -2 ;    ALOBGL= -1 ;    N)IOCTSET ENRRCU (LEABATOCEL R1= ;    TELUSOAB= ;0    N IOSSREXP EOFE YP THE TESATICND IISTH ;  0 TEBY . D:MOSL RS T'ECCS .ED*þßB  REGTYP-O04,@R6 ; COMBINE THE EXPRESSION'S REG.     ; TYPE WITH THE SYMBOL'S FLAGS  BITB  R2,@R6  ; IS THE SYMBOL TYPED REGISTER ?  BEQ  MAIN18  ; NOPE  BITB  #LABFLG,@R6  ; YES, IS IT A LABEL ?  BEQ  MAIN18  ; NOPE  BISB  #MDFLAG,1(R6) ; YES, CONSIDERED AS A     ; MULTIPLY DEFINED SYMBOL  INCB  RERROR-O04  ; REGISTER ERROR MAIN18: MOV  (R6)+,@R1  ; RESTORE SYMBOL'S FLAGS AND ID  àOW ORDER TIME, IN UNITS OF 1/60 TICS MOV (R6)+,R2 ;R4 = HIGH ORDER TICS ROL R3  ;CONVERT TO DOUBLE PRECISION ROR R2  ;FORMAT (DOS TIME DOESN'T USE ROR R3  ;BIT 15) MOV #3,R0  ;SET R0,R1 = 1 HR IN 1/60 TICS MOV #19392.,R1 ;(216,000 IN DOUBLE PRECISION) JSR R5,TCALC ;GET HOURS, CONVERTO TO ASCII, PUT IN BUFR .WORD TIMEXX  ; CLR R0  ; MOV #3600.,R1 ;SET (R0,R1) = 1 MINUTE IN 1/60 TICS JSR R5,TCALC ;GET MINUTES, CONVERT TO ASCII, .WORD TIMEXX+3 á·ŠÇôÂÅm,@ÂÕ ‚Õ÷‹ö ÷�öö÷¥óÿÎõ·Š§ô7Šö,d0‰.‰ ‰·Š‘ô2‰‰ÐÈ·Š�ô‰Ð+,ˆ.‰Á’ ‰ÅÎÈôW îÿ"¦µ@6µwo,¬ðµwìµ€æ�³�Õi�Õ y,Ð͵&÷‹õ#ÍÕÍÕÔ 7‘€õ÷‹zõP÷•#,ôTõ-÷Lõ×­dõþÿ3÷ >õ/ÍÕ0÷�QõÀ,Nõ7ŠKõ4‰áÍÕ7Ô 7‘>õ÷¥ÿÿ6õ€ÎïZôá•,<÷‹(õ%÷‹!õ$ÎoHôa÷øô�J‰ÄH‰æ,`÷•æô÷•ÞôJ‰ƒÄ·ôÁÈôÂÆôH‰QAM N =8)6(372- ;    CTSE.CD MENAUN= ;1    T ECAS .0= ;    S: INE OONTIEC SATWHN IESATICND IISTH ;  1 TEBY . D:MOEC S0  E YT.B : IXAD R1 E+IZ=SMTTFBY;   0  E YT.B T:FMYT BS ESDRADN VE EBET US MZESI;   0  E YT.B : ZESI GEMA ICEURSOE IVCTFEEFE THF O ;     NGSIESOCPRE IRNT EHE TUT O ;     RUTHR FEUF BUTTPOUT-PUIN;     E IVCTFEEFE THO TTSINPO;     Y LLNAIOITNDCOUN) ,1(0RSADBH;     S SEESDR&þãMOV  (R6)+,HINDEX-O04 ; RESTORE SYMBOL'S ENTRY ADDRESS  MOV  (R6)+,TMPSYM+3-O04 ; RESTORE SYMBOL'S SECOND TRIAD  MOV  @R6,TMPSYM+1-O04 ; RESTORE SYMBOL'S FIRST TRIAD  CMP  #127400,(R6)+ ; IS THIS SYMBOL DEFINING THE     ; ASSEMBLY LOCATION COUNTER ?  BNE  MAIN19  ; NOPE  TSTB  ERROR-O04  ; WAS THE EXPRESSION TOTALLY EVALUATABLE?  BNE  MAIN87  ; BRANCH IF NOT.  TSTB  RSLMOD-O04  BGE  MAIN88 MAIN87:ä;STORE IN PAGE BUFFER MOV #60.,R1  ;SET (R0,R1) = 1SECOND IN 1/60 TICS JSR R5,TCALC ;GET SECONDS, CONVERT TO ASCII, .WORD TIMEXX+6 ;STORE IN PAGE BUFFER MOV R3,R4  ;GET 1/60 SECOND TICS JSR R5,TCALC3 ;AND CONVERT TO ASCII .WORD TIMEXX+9. ;STORE IN PAGE BUFFER MOV #103,-(R6) EMT 41  ;GET DATE MOV (R6)+,R3 ;FORMAT IS JULIAN: YY,DDD. BASE IS 70,000 CLR R2 GETYEAR: SUB #1000.,R3 BLT GOTYEAR INC R2 BR GETYEAR ; GOTYEAR: ASL R2 MOVB å,„Âô· ÂôÄ�Úô´ì÷eÊôÍÕÍÕ C ìâ,¨4‰Ã(Ö Â5ÿ·ŠKó·Š´ô0‰×­¬ô·ŠÂ (¯,Ì7ó*‰÷Šžô‡Í Í Í Í Í Í .‰7Š€ô7 Zô7 XôS,ðw¼ý¦�ÎEøÿ�Õ‡æ×¢ýÿ×¢ûÿ×¢üÿý,Î Î Ö ‡Â& ×¢óÿ×¢ôÿЊŽ ‚ŠÂ,8ÂÕ€Ö ‡ ÀÝPóÀó ÷‹ôÀ s,\·Š©ò7 úò‡À€‡‰÷ ЇÀ À € &‰Á’,€7Šýó7Šó Å^ÄbÃR7ŠÎó Š7Š„óŠþ^bRg,ADR DEEA HERFFBUT PUIN;  2 UFIB S RDWO .  CEURSOF OLEAB TNGTITARO;  1 UFIB S RDWO .: RSADBH ENEV .  0D OR.W 4:RDWO 0D OR.W 3:RDWO 0D OR.W 2:RDWO CHSRIN LTOT PUIN; 0 RDWO.: D1OR W) SSREDD ASTWELO (ST POFP TO; T TBYMSD OR.W P:TOER P) SSREDD ASTHEIG(HT PSF OOMTTBO; B TBYMSD OR.W T:BOER P . NTMETETA S ;     CEURSOT ENESPRE THN HIIT W ;     EDSSCERO PNGEI BR)TEACARCH ( ;     TEBYT ENRRCUE THT ALYCTREDI;     S NTOI P"þç INCB  AERROR-O04 MAIN89:  JMP  MAIN1E-O04 MAIN88: COMB  BINOUT-O04  ; REQUEST BINARY OUTPUT  BITB  #-DEFFLG-RELFLG-1,@R1 ;ONLY DEF. AND REL. CAN BE SET.  BEQ  MAIN1Q  INCB  QERROR-O04  BR  MAIN89 MAIN1Q:  MOV  R1,R5  ;SAVE R1  MOVB  #RLD3.2,R0  ;LOCATION COUNTER MODIFICATION  MOV  RESULT-O04,R1  MOV  #4,R4  TRAP  RLDFIL  MOV  R5,R1  ;RESTORE R1  TSTB  SECMOD-O04  BEQ  MAIN1C  ;ABSOLUTE PROGRAM SECTION  èYEAR+0(R2),DATEXX+6 ;MOVE ASCII YEAR INTO BUFFER MOVB YEAR+1(R2),DATEXX+7 ADD #1000.,R3 ASR R2 ADD #2,R2 CLR -(R6) BIT #3,R2  ;SEE IF ITS LEAP YEAR BNE NOTLEAP INC (R6) ; NOTLEAP: ADD (R6),DAYS+2 ;ADJUST FEBRUARY DAY LENGTH CLR R4 ; DAYMON: SUB DAYS(R4),R3 BLE MONTH ADD #2,R4 CMP #22.,R4  ;SEE IF WERE DONE BGE DAYMON ;BRANCH IF WERE NOT SUB #2,R4  ;SET TO DEC 31 ; MONTH: ADD DAYS(R4),R3 ASR R4  ;CONVERT MONTH (0-11) é¤÷‹Öó 7ŠÐó÷‹Êó4·ŠÉó÷‹·óu\Ë ‰YÀ�š,È^óÀe2Àe9ÀeÀe, úÿÀeÆ,ì Àe÷•šòâ6‰àÀ ‹ ÌžÀ ',‹ ÷žIò‹ 7Š\ó *Á‹6‰ŠŠ�ŠÀ Њ,4ÆÁ5ÿÁ5ÿ 6‰‹ ¬·�Èñ÷¥ó4,X·Š«ñ÷‹Æò÷­Àòÿò÷•þÿøò*‰÷‹ ó‡·Šó†,|÷‹üò*‰ ÷µìò÷•äò‰‰·ŠM, uñÂU�À�ÏòÀ¥ÿ·ŠUñÂUÀ�¼òÀµ@ .ÄÀµêÀµ÷•ÀñÁ‹6‰&‰€�Á�–òÀ xêÇ (LYNTTANSCOR TEINPOS HI T ;   0 RDWO .E:YTRBCU RDWOD ANMMCOS ONTIUCTRNS IAN;     F OR)MD (DSELFIG INSSREDD A ;     ALEREN GHE TOFN IOCTRUSTON C ;     HE TIND SE URDWOA AT D ;   0 RDWO .: NDMACO 0 RDWO . G:FLLD RE AGORST;   0  E YT.B : NTLCRE VETIECIR DLD R ;   0 TEBY . R:DIRL ;   0 RDWO . D:CMIR DE AM N ;   0 RDWO . 2:SYLB GL BOYM SALOBGL;   0  D OR.W : Y1BSGL HE TNSAINTCOH ICWHR þëTSTB  RSLMOD-O04  BLE  MAIN87  ;NOT RELOCATABLE EXPRESSION IN .CSECT  MOV  RESULT-O04,@RELPC-O04 ;UPDATE PC OF CURRENT .CSECT  CMP  @USERPC-O04,@HIRPC-O04  BLOS  MAIN1T  MOV  @USERPC-O04,@HIRPC-O04 ;UPDATE MAX. PC OF CURRENT .CSECT MAIN1T:  BR  MAIN1C MAIN19: TSTB ERROR-O04  ;EXPRESSION NOT  BNE  MAIN89  ;FULLY DEFINED  CMPB  #MDFLAG,1(R1) ; IS THIS SYMBOL MULTIPLY     ; DEFINED ?  BNE  MAIN1A  ; NOPEìTO ASCII SUB #9.,R4  BGE TEN MOVB #' , DATEXX ADD #72,R4 MOVB R4,DATEXX+1 BR DAY ; TEN: MOVB #'1 ,DATEXX ADD #60,R4 MOVB R4,DATEXX+1 ; DAY: ASL R3 MOV ASCDAY-2(R3),DATEXX+3 SUB (R6)+,DAYS+2  ; SET FEB LENGTH BACK TO 28 BR ENDLXX ; ; TCALC: CLR R4 SUB R1,R3 SBC R2 SUB R0,R2  ;DBLE PREC SUBTRACT BLT TCALC2  ;(R2,R3) = (R2,R3) - (R0,R1) INC R4 BR TCALC+2 ; TCALC2: ADD R1,R3  ;ADD IN THE LAST SUBTRACT THAT íêÀ,êöTˆ¦¶Î÷‹‚ò*÷‹hòÁµ Áµ!«öTˆ ¦ ¶Îì,Áµ@÷‹PòI÷•ÿÿHò=÷‹ò÷�Oòøñ÷­Ú,2Gòðñ:·Š,ò Áµ 4ÁµÁµ@. c$÷‹t,V$òÁµÁµ@#Áµ ÷­¶ñ ò÷‹ðñC,z÷Šêñ7Š¢ñ ã  S÷‹îñÁµ Áµ *‰ß,žŠAŠwüýL Cï*‰·ŠUðwþÄþ_ÆþÍÄþ),Âß Âþê· Iðç_ÄþÀþøÍÄþß·Š#ðÂUe.æ‡*/#@% ()"'+-!&; ,:=8‰Àìÿ7"ñs¬üø (ü­, TEINPO;   0  D OR.W L:BOYM SD OR WC. PX.MAO TERNTOI P ;   0 RDWO . C:RPHI RDWOC PTOR TEINPO;   0  D OR.W : PCEL RS ERNTOI PRYNT ECTSE.CT ENRRCU  ;D OR WIDG/LA FTSDOF OR.DD A ;   0 RDWO .C:RPSEHU SSPAA G INUR DEDORRR E ;     ESIN LHE TLL AOFM SUE TH;   0  D OR.W M:SURR ES ESDRADR DEEA H'SERFFBU;     T PUINE RCOU SVETIECFF EHE T ;     OFS ESDRADE THS INTAON C ;     RDWOS HI TO,ER ZOT NIF;   þï, VALID SITUATION  TRAP  SAVVAL ; CALL SAVE SYMBOL'S VALUE  BR  MAIN1C  ; ENTER THIS INFORMATION MAIN1A: BITB  R2,@R1  ; IS SYMBOL TYPED REGISTER ?  BEQ  MAIN1B  ; NOPE  TRAP  RFORCE ; CALL REGISTER CHECKER MAIN1B: BICB  #DEFFLG,@R1  ; CLEAR SYMBOL'S DEFINED FLAG  TSTB  RSLMOD-O04  ;AM I IN REL EXP BLT MAIN87   ;.GLOBL OR EXTERNAL .CSECT EXPRESSION  BEQ  MAIN1C BISB  #RELFLG,@R1 MOVB SECMOD-O04,1(R1) ð ADC R2  ;FLIPPED THE SIGN ADD R0,R2 ; TCALC3: MOV R4,-(R6) MOV #BCD,-(R6) MOV #3,-(R6) EMT 42  ;CONVERT NUMBER TO DECIMAL ASCII MOV (R5)+,R4 MOVB BCD+3,(R4)+ MOVB BCD+4,(R4)+ RTS R5 ; ; DAYS: .WORD 31.,28.,31.,30.,31.,30.,31.,31.,30.,31.,30.,31. ASCDAY: .ASCII /0102030405060708091011121314151617181920/ .ASCII /2122232425262728293031/ YEAR: .ASCII /707172737475767778798081828384858687888990/ TIMER: .WORD 0 BCD: .WORD 0,0,0 ; ; ENDLXX:ñ p€ ø8‰ Ì‹òÀ× 0× 9 Ã¥.çË,0 ÌÕ€÷ÅÙï& ÃEðÿE¦ÅEÿÎEÿÉ Ê ¦Ç,T É É É`Ê Ê Še Ê` ÃE÷Ð¥ïÌÐ&“ÎE�ÿŽUM,x ÌÕp̵ˆ…�wÖïV/·Š�ï,8‰€ × d,œ 0× 9Ãå8‰€ Ã¥$Ãå Ã¥.,À ò× A¦× Z × a × z�ÃÅ ÿ�pðÃE,ä Àÿÿ�Zð· Vð*‰7�‰ð‡€&‰&ÀÁ|€š"|&€‡,!ßFðÄô‡#‘ËÅøËÕ0„ ÄE€„ „  ô‡  ôâ,,!&‰ÅðwBU%f ÷-(ï.ïÄ  G LA FUTTPOUD ANMMCO;   0  D OR.W G:LAOF C. ERFFBU;     T PUUT OEDSTLIE IVCTFEEFE TH;     N ITEBYE BLLAAIAVT ENRRCU;     E THT ATSINPOR TEINPOS HI T ;   0 RDWO .T:ISRLCU H.RCEA S ;     LEAB TOLMBSYE THG INUR D ;     NTTANSCOR TEACARCH' 'B;     E IVCTFEEFE THS INTARE;   0  D OR.W D:CMYT BN IOITOS PR.HA CTH5-, B' ' ;  20 1 RDWO .  ONTISIPO. ARCHH -T 4','B;  0062  D OR.W þó;PROG. SECTION ID MAIN1C: BISB  #DEFFLG,@R1  ; FLAG THIS SYMBOL DEFINED MAIN1D: TRAP  OVRLAY  ; CALL OVERLAY USER'S SYMBOL TABLE BR  MAIN89  ; SUBROUTINE DATA TERMINATION ;DATERM: SUBR24:  CMPB @R5,R0  BEQ DATER0  SWAB R0  CMPB @R5,R0 DATER0:  RTS R7 .IFNDF NOSEG ENDO04: SIZO04=ENDO04-BEGO04 .PAGE PAL ;***** OVERLAY #5 ***** O05=BEGOVR-BEGO05  ;COMPUTE OFFSET FROM    ;Rô MOV #PAGBUF,-(R6) ;I/O SERVICING MOV #LOLB,-(R6) EMT WRCMD ENDL07: CLRB RLDFLG  CLR  SIZE  ; SIZE = 0 TST LISTKEY  ;CHECK FOR LIST SUPPRESS BGE ENDLX8 CLR LISTKEY ENDLX8:  TSTB  ERROR  ; WAS THE LINE ERRORED ?  BEQ  ENDL09  ; NOPE  CMPB  PASS,ERPASS  ; ERROR LISTING PASS ?  BNE  ENDL09  ; NOPE  MOV  BHADRS,COFLAG ; REQUEST COMMAND OUTPUT     ; COFLAG = BHADRS(0,1) ENDL09: ADD #34,SRCIN  CLRB  ERROR  õÕ• Ä ü‹,P! æï·ïfÅeõ•*ýÿæ"ˆwÈïDÔ ,t!À‰ ÂÊ ŠÃD!†•œÒ— Ç&,˜!ó‡÷`žï÷�vîÅeÄèîCÂ÷‹®ï· ¯,¼!¦î-$‰‰ÀîÅeC”ÄE÷‹‰ï < îä,à!À ÷Š|ï$‰÷ €î· pî÷ŠlïÃ.ïƒ Ë• Û,"Ãe÷ ïË• ã• Üw Ãïã• ƒ Ë• Ÿ,("÷Lþîƒãà Þ÷­´ï&îí÷ î÷ (îÁVd &Vd,L"ÃÈb‰÷‹øîW£ Õ‹M•Å u™æ ÎeÔ . LSBOYM SEDBLNA E ;     TEBYE THO TONTILARE;     N INETIOUBRSUH RCEA S ;     HE TBYD SE UTSANSTON C ;     ERCTRAHA CB' '40D-MOF OLEAB T ; 0 -1 .  = ONTCBY D.OR WAGFLD/ I'SOLMBSYF OSSREDD A ;   0 RDWO .: EXNDHI CKLO BALINRMTES T'PUUT O ;     RYNABIE THR FOS ESDRAD;     P UM JVETIECFF EHE TNSAIET R ;   0 RDWO .R:ADMP J0 D OR.W : INRC SM SUCKHE CUTTPOUY ARIN B ;     HE TNGTIUCTRNSCOR þ÷UN TIME OVERLAY AREA BEGO05: ;JUMP TABLE TO ENTRY POINTS ;IN THIS OVERLAY. ; JMP OPCODE  ;ENTRY1 JMP EOFFLG  ;ENTRY2 .ENDC .PAGE PAL OPCODE:  MOV  QUANTITY-O05,-(R6) ; STACK MEMONICS OP-CODE  TRAP  EVENPC ; CALL EVEN THE LOCATION COUNTER  MOV  #COMAND,R5  ; R5 = COMAND'S ADDRESS  MOV  #RESULT,R4  ; R4=RESULT ADDRESS  MOV  #SIZE,R3  ; R3 = SIZE ADDRESS  CLRB  ø ; ERROR = 0  TRAP  POPREG ; CALL SET REGISTERS AND RETURN .PAGE PAL   ; SUBROUTINE ENTER BINARY BUFFER    ; INPUT BINOUT BYTE FLAGS    ; > 0, ENTER TBBUF DATA    ;  INTO BINBUF    ; = 0, FORCE BINBUF OUT AND    ;  GENERATE BINARY EOT    ; < 0, FORCE BINBUF OUT    ; OUTPUT NONE    ; BBINIT PROVIDES DIRECT    ; SUPPORT ;EBBUF: SUBù È,p"ž Í•'æ÷ ðíÖ ÉæVˆ÷-ÖíÚíÂæ  Vp,”"Ðíææ"ˆÃË¥0Ó• ú· ²í7 ¬íP¡,¸"æD!ˆƒ‚C   ÀÁÀKw ¨ Ál  ¨,Ü"w œÁ<w ’Äw ž æC!ˆƒ Ãåã (,#è‚ û ·œþ#î·œÿ#þíÃeè‚ Âe& Â5¯þ#ÿ#‚,$#Ž ·c| í¨#ÄeÄ%øÄåm¨#r¨#&¨#,H#„ Äå FOD SE U ;   0 RDWO .: UMCSBO 0 RDWO .M:ERVTSA ENEV .  OLMBSYE BLTACALORES OUVIRE;P     OFD ICTSE.CN AINTAI MTO;   E INUTROUB SONSIESPREXN IEDUS; 0 TEBY.: ECGSPR CEENQUSEF -LLFR- C ;  F ,LLFR, C TEBY .  /XXS::SMMH:/H IISC.A X:EXIM T/ YYD--DMM /I CIAS .: XXTEDA /X XXXXE AGP  / IISC.A  CEENQUSEF -FCR; FFF,,LCR  E YT.B T UNCOE YT BALTUAC;  52 RDWO .  O)(LDEMO ) HIS(TUTA S ;   0 0 RDWO .  NTOU CTEBYX MAþû @R3   ; SIZE=0  MOV  #TBBUF,R2  ; R2=TBBUF(0) ADDRESS  MOVB  ICLASS-O05,R0 ; R0 = OP-CLASS INDEX  JMP  @OPCLASS-BEGO05+BEGOVR(R0) ; SELECT OPERATION CLASS OPCLASS:  ; OPERATION CLASSING JUMP TABLE CLASS0: .WORD  MAINC0-BEGO05+BEGOVR  ; OPERATE MNEMONICS CLASS1: .WORD  MAINC1-BEGO05+BEGOVR  ; UNARY  MNEMONICS CLASS2: .WORD  MAINC2-BEGO05+BEGOVR  ; BINARY MNEMONICS CLASS3: .WORD  MAIN3F-BEGO05+BEGOVR  ; üR09: TRAP  SAVREG ; CALL SAVE REGISTERS  MOV  #TBBUF,R4  CLR  R0   ; REQUEST REGISTER SETUP  TRAP  BBINIT ; CALL BINARY BUFFER SETUP  MOVB  SIZE,-(R6)  ; STACK OBJECT DATA SIZE  TSTB  BINOUT  ; DETERMINE PROCESSING TYPE  BGT  EBBUF0  ; SIMPLE OBJECT DATA BUFFERING  BEQ  EBBUF2  ; OUTPUT THE BUFFER AND EOT  MOV  @R4,@R5  ; SET THE ASSEMBLY LOCATION     ; COUNTER = TBBUF(0,1)  CMP  @R2,#6 ý÷• ·íÄe:7‘°í÷•1§íÄe07‘…,l# íà ÷¾#ší·å0Z Cà‚ à„ úC`B `Á  ¾#,�#&æ*$æ"ˆDÔ�‹Ô�ˆ…m *$š,´#010203040506070809101112Ž,Ø#131415161718192021222324252627282930 ,ü#317071727374757677787980818283848586-, $87888990æöæVˆ7Ší7 "í÷ ×öVO,D$(ì7 "ì÷‹Èë÷­–í’í÷íÚì÷eÆì7Ša,h$®ë`‰&‰ ; 2 5 RDWO .: UFGBPA ERFFBUE AGSSMEE AG P ;   N VE.E 4 =D COSP L2 =D COTY TN IOATOCEL REDACPLIS DVETIDIADT ECCS .; 6 1= .4D4RL ONTICALOREE IVITDD ACTSE.C;  15  =3 4.LD RN IOATOCEL REDACPLIS DCTSE.C;  14  =2 4.LD RN IOATOCEL RCTSE.C;  12  =1 4.LD R1 1= .3D3RL 10  =  2 3.LD R7  =  1 3.LD R6  = 6 2.LD R5  = 5 2.LD R4  = 4 2.LD RC PE SERADLO;   3  = .3D2RL NKLIN IENIV GAS;   2  = .2D2RL DSANMMCOD RL;   1  = þÿRTS  MNEMONICS CLASS4: .WORD  MAIN30-BEGO05+BEGOVR  ; BRANCH MNEMONICS CLASS5: .WORD  MAIN3Q-BEGO05+BEGOVR  ; JSR  MNEMONICS CLASS6: .WORD  MAIN3A-BEGO05+BEGOVR  ; TRAP  MNEMONICS .PAGE PAL MAIN30:  ; CONDITIONAL BRANCH MNEMONIC PROCESSING  CLR  R0   ; R0 = 0  TRAP  EXPE3 ; CALL EXPRESSION, SEMICOLON     ; MINIMAL TERMINATOR  BGT  MAIN32  ; N ; BUFFER CONTAIN ANYTHING?  BGT  EBBUF2  ; YES, OUTPUT THE BUFFER  BR  EBBUF3  ; INITIALIZE THE BUFFER EBBUF0: NEGB  @R6   ; NEGATE STACKED OBJECT DATA     ; SIZE VALUE, USE THIS AS     ; THE ITERATION INDEX. EBBUF1:  TSTB  RLDFLG  BEQ  EBBUFA  TSTB  @R6  BLT  EBBUF5  BR  EBBUFB EBBUFA: TSTB  @R6   ; IS INDEX STILL NEGATIVE ?  BGE  EBBUF4  ; NOPE, PROCESSING COMPLETED EBBUFB:  CMÄî ‰æ�êì÷‹í —".�  îæ,Œ$‹÷‹¼ì΋4΋/÷%*ÆîW \†÷‹žì²  \a,°$%&:‰w.÷%rîæ*ætˆæîætö*t"î&t!,Ô$ˆætˆ,‰÷%†îN‰@‰÷‹�ì÷‹Xì{ td,ø$Ð,‰Ö `‰� Š ŽŠ“&•‹eÀ&‰ÁfÑ3Ñ fY,%ÑÑ&ì`‰&‰Å�>îaw‘8îáÅelÄå ‚ lS,@%UÄå•ÄåÕ`‰÷µ@ÓíÎÌíwøñz,.1D2RL TOR FEREE ESTH;   4  = MDDCRL 3  = IRTDTX 001= SKTMDL 1  =NELINGLO 40 3  = S7LASC 00 3  = S6LASC 40 2  = S5LASC 00 2  = S4LASC 40 1  = S3LASC 00 1  = S2LASC 40  =  1 ASCL S0  =  0 ASCL SB TAL TAONIZOR HIISC A;  1 1  = AB TD EEEFIN LIISC A;  2 01  =  F LN URET-RGEIARRCAI CIAS;   15 0  = CR EDFERMFOI CIAS;   14 0  = FF E.IL FUSUOIGNTCO;   E ATOCLL ATOE IM TLDUI;B     ATM OO RGHOUENT NO;  0 64=1þON-VOID EXPRESSION FOUND     ; VOID EXPRESSION ENCOUNTERED MAIN31: INCB  AERROR-O05  ; SET ADDRESSING ERROR MOVB #-1,@R4  BR  MAIN3H MAIN32:  TSTB  RSLMOD-O05  ; ENSURES  BEQ  MAINBR  ; THAT ILLEGAL  BLT  MAIN31  ; BRANCHING DOES NOT  BR  MAIN33  ; TAKE PLACE. MAINBR:  TSTB  SECMOD-O05  ;  BNE  MAIN31      ; OF ASSEMBLY LOC. COUNTER MAIN33: SUB  @USERPC-O05,@R4 ; RESULT=RESP  #52,RLDCNT    ;IF RLDBUF IS FULL THEN OUTPUT  BLE  EBBUF2  CMP  R1,#MAXBBA-10  ; IS THE BINARY BUFFER FULL ?  BHIS  EBBUF2  TSTB  RLDFLG  BNE  EBBUF4  BR  EBBUF5    ; OUTPUT THE BINARY BUFFER EBBUF2: TRAP  CHECKSUM ; CALL CHECKSUM FINALIZATION     ; IS THIS THE BO PASS ?  JMP  EBBUF3  ; NOPE    ; SERVICE THE BINARY OUTPUT REQUEST  CMP  #10,BINBUF+10  BGE  EBBUFF  ; YES, AVOID OUTd%‡&‰÷ÞëÄJ‰ÁÎëÂÌëÃÞêÀՀľ.ˆ%H‰·ŠÀë`‰æfætˆætˆ‡ÅîêÃ*Â2†ftt$*(2W,®%Á0ædÀ ÷ŠëF‰À*Ð5ÐÐ;0 d*Å,Ò%ÐÐÐPŠ ýK�KcËe�b€‡',ö%À�8íÀåa7�IëÀD뇋b É’·í· í÷­&Ðë`êÎe‡áóR9ER ;) RSROER" "F (ESOD CGESAES MORRR;E ANTR .UTNP IONR ROER; E ICEV DORN RA.TT PUUT;O   ONR ROERE ICEV DORD EO;7 20 2 =R8ER NGSIIS MLEFIT PUIN;6 20 2 =R7ER ESIL FUTNP INYMAO TO;5 20 2 =R6ER ESIL FUTTPOUY AN MOO;T 0422= 5 RR ES UEAL VCHITSWY AN MOO;T   UEAL VCHITSWL GALEIL; S HETCWI SNYMAO TO; H TCWI SALEGLL;I 0322= 4 RR EE ITWR .OND EOT PUUT;O 0222= 3 RR ES ALONTIDION CEDSTNEY AN MOO;T 0122= 2 RR ES T'ECCS .NYMAO TO;0 20 2 =R1ER ;) RSROER" "S (ESOD CGESAES MORRR;E NDMAþULT-USER'S PC.  SUB  #2,@R4  ; RESULT = RESULT-2  ASR  @R4   ; SHIFT RESULT RIGHT 1-BIT  BCS  MAIN31  ; ADDRESSING ERROR IF ODD  MOVB  @R4,R0  ; PROPAGATE BYTES SIGN IN R0  CMP  @R4,R0  ; RESULT = R0 ?  BNE  MAIN31  ; NOPE, ADDRESSING ERROR  BR  MAIN3H  ; FINAL COMAND PROCESSING .PAGE PAL MAINC0:  ; CONDITION CODE OPERATES, WAIT, HALT, RTI PUT MOV #BINBUF,-(R6) MOV #BOLB,-(R6) ;OUTPUT BINARY BUFFER EMT WRCMD MOV #TRLBUF,-(R6) MOV #BOLB,-(R6) EMT WRCMD MOV #BOLB,-(R6) ;WAIT FOR COMPLETION EMT WTCMD  TRAP  EOMCHK EBBUFF:  CMP  #2,RLDCNT  BGE  EBBUF3  TRAP  OUTBIN EBBUF3:  MOV  R5,R0  TRAP  BBINIT ; CALL BINARY BUFFER INITIALIZATION  TSTB  BINOUT  ; GENERATE THE EOT ?  BEQ  EBBUF7 EBBUFC:  TSTB  RLDFLG  BNE  EBBUF4  BR  EBBUFA EBBUF7: OM CSEEAEL;R  7= LS RD ANMMCOE ETEL;D 21 =T DL NDMAOM CSELO;C 17 =S CL NDMAOM CENOP;6 1= PN OD ANMMCOE IZALTINI I ;   6  = MDNC ID ANMMCOE ITWR;   2  =  D CMWR NDMAOM CITWA;   1  =  D CMWT NDMAOM CADRE;   4  =  D CMRD 27 2  = LGTFRS 6  = NDJEOB 0020  =  R DIYM S2  =  D ENSD G0 40 1  = MDNCTR 50 4  = LGCFCS 10 4  = LGCFAS 1  = MDDCGS 61 3  = SZHFST DEMOT PUUT ORYNABI;   3  =  E ODOM BE þý   ;   SINGULAR PROCESSING  CMPB  SAVTERM-O05,#-5 ; TERMINATOR SEMICOLON ?  BEQ  MAIN3W  ; YES, EXIT  CMPB  SAVTERM-O05,#-4 ; TERMINATOR CAR-RET?  BEQ  MAIN3W  ; YES, EXIT  INCB  QERROR-O05  ; NO, SET 'Q' ERROR  BR  MAIN3W  ; SET SIZE = 1 .PAGE PAL MAIN3A:  ; TRAP MNEMONIC PROCESSING  CLR  R0   ; R0 = 0  TRAP  EXPE3 ; CALL E  TRAP  EOMCHK EBBUF4: TST  (R6)+  ; MAINTAIN THE STACK POINTER  TRAP  POPREG ; CALL SET REGISTERS AND RETURN EBBUF5:  INC  @R5 EBBUF8:   ; BUFFER ONE OBJECT DATA BYTE  INC  @R2   ; INCREMENT BLOCKS BYTE COUNT     ; LOCATION COUNTER  INCB  @R6   ; INCREMENT THE STACKED SIZE  MOVB  @R4,(R1)+  ; BUFFER THE OBJECT DATA BYTE  MOVB  (R4)+,-(R6)  ; ADD THE OBJECT DATA BYTE TO  ADD  (R6)+,@R3  ; TH=2 ; SPUN * ) =4OT(NUSATSTK AS TALEGLL I=1 ; * EDORON HSTUEEQ R=0 ; * : USATSTD NEURET RHE TIS RRUE ; * K.AS T ; D*UEUE QTYORRI PSTHEIG HHE TTOL RONTCOS AS P=1 ; * R.LEAL CHE TTON URET R=0 ; * D:PNNS UOMFRN URETûýOD MUTNP ICEURSO;   0  =  E ODIM S4 62 7  = S2AB 017412  =  1 BS A0  = L2RE 0  = L1RE S.SEAS PNTUEEQBSSUN I;    E BLLAAIAVS IRECOE RE F;    F OLL A. 1SSPAG INUR D;    K ACSTF OZESIM MUXIMA;   0.20  =  Z SITK SK AS MLEFIF--OND E ;  00 1  = OF EE OD MUTTPOUD TEIS L ;   0  = DEMOLO ETFSOFS S'TUTA SUTTPOUD TEIS L ;  15 -  = ATSTLO AGFLL BALO G ;  00 1  = LGBFGL AGFLE BLTACALORE;   0 4úýXPRESSION, ; MINIMAL TERMINATOR  TST  REGTYPE-O05  ; EXPRESSION TYPED REGISTER ?  BEQ  MAIN3C  ; NOPE  INCB  RERROR-O05  ; YES, SET REGISTER ERROR  CLR  @R4   ; RESULT = 0 MAIN3C:  TSTB  RSLMOD-O05  BEQ  MAINCA CMPB #-1,RSLMOD-O05  BEQ  MAINCB  ; .GLOBL  INCB  AERROR-O05 MAINCA: MOVB  RESULT+1-O05,TERROR-O05 ; RESULT'S HIGH     ; ORDER BYTE     ; SETS TRUNCATION ERROR  BR  MAIN3H  ; E BLOCKS CHECKSUM  BR  EBBUF1  ; CONTINUE ENTERING PROCESS .PAGE PAL ;RLDINT ;THIS SUBR INITIALIZES THE RLD BUFFER HEADER SUBR32:  TRAP  SAVREG  MOV  #RLDBUF,R1  MOV  #RLDBC,(R1)+  ;MAX BYTE CNT  MOV  #1,(R1)+  ;BIN FORMAT  MOV  #2,(R1)+  MOV  DIRCMD,(R1)+  TRAP  POPREG .PAGE PAL ;RLD FILL ;RLDFIL ;TH RHE TLSRONTCON TRUR ; * EDEUQUREE BTOK AS THE TOF# K AS THE TISK ASUT ; * REHE W ; * ; * ) ANTROR(F R)ER,URNRT,USKTA(UNDSPUN LLCA. 2) ; * ; * RRUE+,P)(S V MO ; * ÷ý  = LGLFRE 3IT BG,LA FVETIECIR DLYMBSEAS;   0 1  = IRMDAS 3IT BG,LA FEDINEF D ;  10  =  G FLEF D. TEBYT ECCS .IN, AGFLD NEFIDEE PLTIUL M ;  77 3  = AGFLMD D.NEFIDEREL BOYM SNTNEMAER P ;   2  = F DERE 1IT BG,LA FELAB L ;   2  = LGBFLA 0IT BG,LA FERSTGIRE;   1  =  G FLEG R0 T BI, AGFLE BLNA ETEBY;   1  =  G FLYT BS ONTINIFIDET BIG LA FLEAB TOLMBSY;    A @#O TEDRCFOA F I-0ON N;  0 TEBY.: BSCAFR öýBUILD THE COMAND WORD MAINCB:  TRAP  RLDBYT  ; GLOBAL ADDITIVE RELOCATION  BR  MAINCA  ; OBJECT CODE 5 .PAGE PAL MAIN3F:  ; RTS MNEMONIC PROCESSING  CLR  R0   ; R0 = 0  TRAP  EXPE3 ; CALL EXPRESSION, ; MINIMAL RETURN  BGT  MAIN3G  ; NON-VOID EXPRESSION EXITED  INCB  QERROR-O05  ; QUESTIONABLE SYNTAX MAIN3G: TRAP  RFORCE ; CALL REGISTER FORCE MAIN3H: BISB  @IS SUBR PUTS THE RLD DIRECTIVE INTO THE RLD BUFFER.IT IS CALLED ;BY THE APPROPRIATE ADDRESSING MODE HANDLER.THE CALLING REGISTERS ;ARE SAVED AND DULY RELEASED.THE REG MUST BE INITIALIZED AS FOLLOWS: ;CONTENTS OF R0 =RELREF/RLD COMMAND ; R1=GLB SYM OR CNSTNT ; R2 = '' ; R3 =CNSTNT ; R4 =COUNT OF NO. OF BYTES ABOVE ; ; SUBR33:  TRAP  SAVREG  MOVB  RLDCNT,R5  ADD  R4,R5  MOVB  R5,RLDCNT  SUB  R4,R5  ADD  #RLSTRT,R5  NDSPUN T EM ; * ) SP-(N,TRUR V MO ; * ) LYMBSEAS ( ) SP-(K,ASUT V MO. 1) ; * ; * S: INETIOU RISTHO TGEKAIN LHE T E:AGUS ; * ; SPUN *. ONSIENSPSUS ITT ASKTAE THF OELEV LHE TASE AM SHE T ; SPUN *ISD SEóýORATICND IERMBNUL MACIDE;   0  E YT.B M:NUEC D0  E YT.B 0  E YT.B 0  E YT.B 0  E YT.B 0  E YT.B Y ARNDOU BENEVE BSTMUF BUTB;   0  E YT.B R FEUF BRYNABIY ARORMPTE;   F:BUTB ENEV .  ;0 TEBY. 0 TEBY.: CTPTCI 0D OR.W  N//I 50AD.R  CKLO BLEFI;/ /D 50AD.R  UTNP INDMAOM;C M/CO/0 D5RA.: FBCI ADRER FON PE;O 4D OR.W  0D OR.W  ;0 TEBY. 0 TEBY.: CTPTSL 0D OR.W  M/SY/0 D5RA. / AM/N 50AD.R  CKLO BLEFIT òýR4,@R6  ; SET THE REGISTER FIELD     ; WITHIN THE COMAND WORD  BR  MAIN3W  ; COMPLETE COMAND PROCESSING .PAGE PAL MAINC1:  ; UNARY MNEMONICS PROCESSED  TRAP  SYNTAX ; CALL THE SYNTAX ANALYZER  BEQ  MAIN3V  ; ONE FIELD ENCOUNTERED MAIN3L: INCB  QERROR-O05  ; QUESTIONABLE SYNTAX  MOV  #37,@R5  ; INDIRECT IMMEDIATE MODE  MOVB  #2,@R3  ; MAXIMIZE  MOV  R0,(R5)+  ;FILL IN THE  SUB  #2,R4  BEQ  RLEX  MOV  R1,(R5)+  ;RLD BUFFER  SUB  #2,R4  BEQ  RLEX  MOV  R2,(R5)+  ;CHECK  SUB  #2,R4  BEQ  RLEX  ;IF SO RETURN  MOV  R3,(R5)+  ;TO RLEX:  TRAP  POPREG  ;THE CALLING ADDR. .PAGE PAL   ; SUBROUTINE OUTPUT END-OF-MEDIA CHECK ;EOMCHK: SUBR3B: BITB  #EOF,BINBUF+3  BEQ  EOMCH1  MO UELEV LTYRIIOPRE TH E.EUQUY ITORRI P AINK AS T ; SPUN *EDNDPEUS SLYRITAUNOL V ACELA PTOD SE UISE INUTROS HI TE:OSRPPU ; * ; * UEUE QTYRIIOPRE ARTWOF S ; * AINK AS TEDNDPEUS S ACELA P -NDSPUN: ONTICAFITIENIDM RAOGPR ; * ; * D N P S N U ïýPUUT OBL TYM;S L/FI/0 D5RA.: FBSL TERI WOR FENOP;2 RDWO. 0 RDWO. ; 0E YT.B  0E YT.B T:TCOP L0 RDWO. / ST/L 50AD.R  M/NA/0 D5RA. K OCBLE IL FUTTPOUG INSTLI;/ IL/F 50AD.R B:OF LE ITWRR FON PE;O 2D OR.W  0D OR.W  ;0 TEBY. 0 TEBY.: CTPTBO 0D OR.W  N/BI/0 D5RA. / AM/N 50AD.R  CKLO BLEFIT OUN BI;/ IL/F 50AD.R B:OF BE ITWRR FON PE;O 2D OR.W  0D OR.W  ;0 TEBY. 0 TEBY.: O2PRSI 0D OR.W  L/PA/0 D5RA. / AM/N 50AD.R  L/FI/0 D5RA.: îýSIZE TO 2 WORDS  BR  MAIN3U  ; CLEAR THE NEXT OBJECT WORD     ; COMPLETE CONSTRUCTING     ; THE COMAND WORD .PAGE PAL MAIN3Q:  ; JSR MNEMONIC PROCESSING  CLR  R0  TRAP  EXPE2  BGT  MAIN3R  INCB  QERROR-O05 MAIN3R: TRAP  RFORCE  SWAB  @R4   ; SWAP RESULT'S BYTES  ASR  @R4  ASR  @R4  BIS  @R4,@R6  CMPB  #',,@CURBYTE-O05  BNE  MV  BINBUF+2,@R6 ;EOD ANNOUNCEMENT  JMP  ERRO3 EOMCH1:  RTS  R7 .PAGE PAL ;RLDBYT THIS HANDLES BYT RLD CMDS ; ; ; SUBR37:  TRAP  SAVREG  MOV  #RLD2.5,RLDIR  MOV  #2,R4  ;FILED COUNT  TRAP  RELREF  MOV  GLBSY1,R1  MOV  GLBSY2,R2  MOV  RESULT,R3  BISB  #200,R0  ;BYTE OPERAND  MOV  #10,R4  TRAP  RLDFIL  INCB  RLDFLG  TRAP  POPREG .PAGE ; **********************************************************************;* E AG.P SKFT . ERUSO TRNTURE; 00KEFT BR SKFT R BEUM NSKTAL GALEIL; R5 C IN: 10KEFT SKFT S TUTA SSKTAL GALEIL; R5 C IN: 20KEFT SKFT K.AS TVETIAC; R5 C IN: 30KEFT SKFT ; SKFT ëýB2IF SD EA ROR FENOP; 4D OR.W  0D OR.W  ;0 TEBY. 0 TEBY.: O1PRSI 0D OR.W  L/PA/0 D5RA. / AM/N 50AD.R  CKLO BLEFIN IRC;S L/FI/0 D5RA.: B1IF SD EA ROR FENOP;4 RDWO. 0 RDWO. S CKLO BLEFI;N VE.E  ;; 0D OR.W E:ORST TR TOCADIING INYP TERSTGIRE;0 RDWO.: YPGTRE RDWOE LUVAS OT DOFR DD;A 0D OR.W C:RPSE U0 RDWO.: SSPAST PCN IOCTSEE UTOLBS;A 0D OR.W C:SPAB P//L 50AD.R  6D OR.W  D/SL/0 D5RA. P L =LTAUEF;D 0D OR.W B:LL SK OCBLK IN LNGTIIS LBL TêýAIN3L  TRAP  ITEM  BLE  MAINC1  INCB  ITEMIN-O05  BR  MAINC1 .PAGE PAL MAINC2:  ; BINARY MNEMONICS PROCESSED  TRAP  SYNTAX ; CALL SYNTAX ANALYZER  BGT  MAIN3V  ; TWO FIELDS ENCOUNTERED     ; NOT TWO FIELDS FOUND  INCB  QERROR-O05  ; QUESTIONABLE SYNTAX  MOV  #2727,@R5  ; CONSTRUCT DEFAULT COMMAND     ; USE TWO IMMEDIATE MODES  MOVB   PAL ;OUTBIN THIS SUBR OUTPUTS ON THE BINARY DEVICE ; THE CONTENTS OF THE RLD BUF ;; ; ; SUBR36: MOV #RLDBUF,-(R6) ;OUTPUT RLD BUFFER MOV #BOLB,-(R6) EMT WRCMD ; ; MOV #BOLB,-(R6) ;WAIT FOR COMPLETION EMT WTCMD  RTS  R7 .PAGE PAL   ; SUBROUTINE BINARY BUFFER INITIALIZATION    ; INPUT R0 = 0, SIMPLY SET-UP    ; OUTPUT SET-UP S ONTIDION CORRR EOR FREHE; SKFT ; SKFT RNTURE; PC S RT SKFT C ND.E SKFT ; R0+,P)(S V MO SKFT ; R1+,P)(S V MO SKFT ; R2+,P)(S V MOçýYM;S 0D OR.W  ;; N.AI.M;  T ULFADER OLEIT.TM RO;F 0D OR.W B:LEIT TE ULOD MCTJEOBF OLEIT;T 0D OR.W A:LEIT TN IOCTRUSTON CERMBNUL MACIDE;0 RDWO.: 10SEBA 0D OR.W S:ASOP BN IOCTRUSTON CERMBNUL TAOC;0 RDWO.: 08SEBA P//P 50AD.R  6D OR.W  D/BO/0 D5RA. P HS= T ULFADE;0 RDWO.: LBBO CKLO BNKLIT PUUT ORYNABI;0 RDWO. ; ;0 RDWO .: LNSTLA NELIT INPRT N'DO= 1 , NELIT ENRRCUT INPR= 0 ;0 D OR.WY:KESTLI LYMBSEASN-NOS ESPRUP S = 1L,UAUSS ASTLI= 0 ;0 RDWO .: ONæý##4,@R3  ; SIZE = 4  CLR  TBBUF+4-O05  ; TBBUF(4,5) = 0 MAIN3U: CLR  TBBUF+2-O05  ; TBBUF(2,3) = 0 MAIN3V: BIS  @R5,@R6  ; PLACE THE ADDRESSING BITS     ; INTO THE COMAND WORD MAIN3W: INCB  @R3   ; SIZE = SIZE+2  INCB  @R3 MAIN3X: MOV  (R6)+,TBBUF-O05 ; TBBUF(0) = COMMAND WORD JMP EXIT-O05  ; EXIT THE MNEMONIC PROCESSOR .PAGE PAL EOFFLG:  $AND BINBUF ZEROED ;BBINIT: SUBR00: MOV  USERPC,R5  ; R5 = THE ADDRESS OF THE     ; ASSEMBLY LOCATION COUNTER  MOV  #BOCSUM,R3  ; R3 = THE ADDRESS OF THE     ; BINARY OUTPUT'S CHECKSUM  MOV  #BINBUF+10,R2 ; R2 = THE ADDRESS OF THE     ; BINARY BLOCKS BYTE COUNT  MOV  #BINBUF+6,R1 ; R1 = THE ADDRESS OF THE     ; BUFFERS FIRST DATA BYTE  MOV  #MAXBBA,-(R6) ; STACK THE BINARY BUFFERS     SKFT ; R3+,P)(S V MO SKFT ; R4+,P)(S V MO SKFT ; R5+,P)(S V MO SKFT S ERSTGIREL RANEGEE ORSTRE; VESARG Z FN.I SKFT USATSTR ROERT SE; ) SP2(R-ER,FR5 V MO SKFT TSUPRRTEINW LOAL; PS@#+,P)(S VBMO SKFT T INPOY ãýSTLI GEPAR PES NELIR BEUM NUMIMAX;M 70 RDWO:.ESINXLMA TEDAUPR FOR BEUM NNELIR LEMBSEAS;0 RDWO . O:ENIN L) ALCT(OR TEUNCOE AG PVETILAMUCU;0 RDWO.: NTGCPA S)NELI. 52 (GEPAE ON;  O ULOD M),ALCT(OR TEUNCOE IN;L 0D OR.W G:INAG PE LUVAE IVATITNTUA Q'SEMIT;0 RDWO:.TYTIANQU 0D OR.W S:ASOP LR TOLAMUCUACN IOSSREXP;E 0D OR.W T:ULES R/ LP/0 D5RA. 6 RDWO. / OD/L 50AD.R  LP= T ULFADE;0 RDWO.: LBLO CKLO BNKLIT PUUT ONGTIIS;L 0D OR.W  ;; S.PETAF OERMBNU;0 RDWO.: P2âý'; END-OF-FILE OR END-OF-MEDIA FLAGS PROCESSED ;IS THIS THE EOD OF THE 1ST ;DATA SET OF TWO DATA SETS? TSTB SICNT-O05 ;NON 0 INDICATES TWO DATA SETS BEQ EOF1  ;ONLY ONE DATA SET CMP #SILB2,SILB-O05 BEQ EOF1  ;ALREADY ON 2ND DEC SITAPE-O05 ;LAST TAPE BNE EOF4  ;NO MOV SILB-O05,-(R6) ;CLOSE EMT CLS TSTB PAPASS-O05 BNE EOF2 CMPB MAXPASS-O05,PASS-O05 ;NOT PARAMETER FILE. BNE EOF3 ;PARAMETER FILE EOF2: MOV SILB-O05,-(R6) ;RELEASE DATA SET. ( ; MAXIMUM ADDRESS  TST  R0   ; SETUP ONLY OR BUFFER     ; INITIALIZATION ALSO ?  BEQ  BBIN01  ; SETUP ONLY  MOV  #RLDCMD,DIRCMD  TRAP  RLDINT    ; BINARY BUFFER INITIALIZATION  MOV  #BINBUF,R0  ; R0 = THE ADDRESS OF THE     ; BINARY BUFFERS HEADER  MOV  #BOMBC,(R0)+ ; SET THE MAX. BYTE COUNT  MOV  #BOMODE,(R0)+ ; SET STATUS AND MODE BYTES  MOV  #1,(R0)+  ; CURRENT BYTE COUNT = 1 TRENR ROER; =. 00KEFT SKFT T.ENSCIEQUO TUSATSTS SKTAT SE; ) R0T(TATS RBCL SKFT P. USHNIFIO TREHE; =. 00KDFT SKFT C ND.E SKFT S PTRUERNT IUT OCKLO; S #P,@40#3 VBMO SKFT ERSTGIRER ROERT SERE; R5 R CL SKFT R BEUM NSKTAT GE; R0+,P)(S V MO ßýTASI ET STADAT PUIN; 0D OR.W B:IF ST ENRRCUO TRSTEINPO; 0D OR.W B:IL S/ DF/0 D5RA. 4 RDWO. / I2/S 50AD.R  CKLO BNKLI; 0D OR.W 2:LBSI UTNP IEMSTSYD ONEC S;0 RDWO. ; ;K ACSTE OVABS ESDRADT 1S;0 RDWO.: OTKBST ST UOFP TO;0 RDWO.: OPRTUS LEAB TCTSE.CF OOP;T 0D OR.W P:TOON C. NE OLEFIS PETAF OERMBNU;0 RDWO.: P1TASI LEFIR TEMERAPAS TECADIIN0 N-NO; 0D OR.W S:ASAP PE IL FNTREUR CESAP TOFR BEUM;N 0D OR.W E:APIT S/ DF/0 D5RA. 7 RDWO. / I1/S 50AD.R Þý+ EMT RLS EOF3: MOV #SILB2,SILB-O05 ;SWITCH TO 2ND MOV #SIFB2,SIFB-O05 ;DATA SET. MOV SITAP2-O05,SITAPE-O05 ;TAPE COUNT CMPB #1,PASS-O05 ;OPEN ALREADY BNE EOF5  ;DONE FOR 1ST PASS JMP SETP4-O05 EOF1: DEC SITAPE-O05 ;LAST TAPE BNE EOF4  ;NO ;SIMULATE .END INC ERRSUM-O05 ;DECLARE AS ERROR MOV #1,JMPADR-O05 ;FOR TRANSFER ADDR. CLRB BINOUT-O05 ;ON BINARY. TRAP EBBUF JMP SIMEND-O05 EOF4: MOV SILB-O05,-(R6) ;CLOSE EMT CLS EOF5: JMP SET, MOV  #1,(R0)+  ; FIRST DATA WORD = 1  MOV  #10,(R0)+  ; BLOCKS BYTE COUNT = 6  MOV  #TXTDIR,(R0)+  MOV  @R5,(R0)+  ; THIRD DATA WORD =     ; BLOCKS LOAD ADDRESS BBIN00: CLRB  (R0)+  ; ZERO THE BINARY BUFFER  CMP  R0,@R6  ; IS THE BUFFER CLEARED ?  BLT  BBIN00  ; NOPE, CONTINUE CLEARING  MOVB  1(R5),@R3  ; CHECKSUM INITIALIZATION  ADD  @R5,@R3  ; ADD THE LOAD ADDRESS BYTES  ADD  #4, SKFT M PO RLLCA; Y VLQO,DPC R JS SKFT ERMBNUK AS TSHPU; P)(S,-R0 V MO SKFT R TELAR FOK ACSTN OERMBNUK AS TVESA; P)(S,-R0 V MO SKFT TSUPRRTEINW LOAL; S #P,@P)(S VBMO SKFT . UEAL V'SOMRPO TUSATSTT SE; ) R0T(TATS.,#8 VBMO SKFT ; AYRLOV Z FN.I SKFT OMRPL AL CTOY NL OÛý 0D OR.W 1:LBSI CKLO BNKLIT PUINM TEYS;S 0D OR.W  ;; B//K 50AD.R  1D OR.W  D/CO/0 D5RA. K OCBLK IN;L 0D OR.W B:OL CT PUUT ONDMAOM;C 0D OR.W  ;; MENAL CASIHY;P     B//K 50AD.R  EDFICIPE SCEVIDE/ # ITUN;    1 RDWO. E AM NALICOGL;     D/CI/0 D5RA. ) ITIN .ON (ERNTOI PDBD  K OCBLK IN;L 0D OR.W B:IL CR FEUF BNO, RNTURER ROER   UTNP INDMAOM;C 0D OR.W  ENEV. ; KSOCBLK INL; ;; S.LEFIT PUIN2 S TECADIIN0 N NO;   0E YT.B T:CNSI 0Úý/P0-O05 .IFNDF NOSEG ENDO05: SIZO05=ENDO05-BEGO05 ; .ENDC .ENDC .PAGE PAL .IFNDF NOSEG .CSECT ;BEGINNING OF OVERLAY AREA ;THE SIZE OF THE OVERLAY AREA IS DETERMINED ;BY THE SYMBOL "OVRSIZ" ; BEGOVR: ;THE BEGINNING REGISTERS OF EACH ;OVERLAY CONTAIN JMP'S TO THE ;ENTRY POINTS OF THE OVERLAY ; PAL ENTRY1=. ENTRY2=.+4 ENTRY3=.+10 ENTRY4=.+10@R3 BBIN01: ADD  @R2,R1  ; R1 = THE ADDRESS OF THE     ; FIRST AVAILABLE BUFFER BYTE  MOV  (R6)+,R0  ; R0 = THE MAXIMUM BINARY     ; BUFFERS ADDRESS  RTS  R7  ; RETURN .PAGE PAL ;RELREF THIS SUBROUTINE CALCULATES THEVALUE OF THE REL REF FROM ;THE BASE OF THE TEXT BLOCK I.E. TEXT DIR IS 0.R4 IS EXPECTED TO ;CONTAIN THE FILED CNT,R0 THE CMND DIR AND REL REF. SUBR34:  MOVB  REHE; =. 00KCFT SKFT E OM HGO; 00KDFT BR SKFT D.REEACLE ARR TEINPOK ACSTE THD AN; 1)(RCKTATS R CL SKFT ELEV LPU CNTREUR CR,METIT ENRRCU; ) R1T(USCP RBCL ; SKFT HE TS,SKTAT ENIDES RRECOR FO; 1)(RERIMCT R CL ; SKFT R TELAR METI CND ASTPU CEDNEY MA; SKFT C ND.E SK×ý TEBY . R:ROER R:ERAX M0  E YT.B R:ROER UD CEENEREF ROLMBSYD NEFIDEUN;   U ' TEBY .  0 TEBY .: ORRRTE ORRR EONTICAUNTR;   T ' TEBY .  0 TEBY .: ORRRNE ORRR EERMBNU;   N ' TEBY .  0 TEBY .: ORRRIE ORRR EERCTRAHA CALEGLL I ;  'I  E YT.B 0  E YT.B R:ROER BR ROERG INNDOU B ;  'B  E YT.B 0  E YT.B R:ROER ML BELAD NEFIDEY PLTIUL M ;  'M  E YT.B 0  E YT.B R:ROER DD CEENEREF RONTINIFIDEE BLOU D ; Öý34 ENTRY5=.+20 ENTRY6=.+24 ENTRY7=.+30 ENTRY8=.+34 ENTRY9=.+40 .=.+OVRSIZ ;OVERLAY DEVICE LINK BLOCK ; .WORD 0  ;ERROR RETURN ADDRESS OVRLB: .WORD 0  ;LINK POINTER (DDB) .RAD50 /OVR/  ;LOGICAL DATA SET NAME .BYTE 1  ;DEVICE SPECIFIED .BYTE 0  ;UNIT NUMBER .RAD50 /DF/  ;DEVICE NAME ; ;OVERLAY DEVICE FILE BLOCK ; .WORD 0  ;ERROR RETURN ADDRESS .BYTE 13  ;HOW OPEN CODE (OPENC) .BYTE 0  ;ERROR RETURN CODE OVRFB: .RAD50 /PAL/  ;FILENAME AND 4BINCNT,R0  SUB  #6,R0  ADD  R4,R0  MOVB  R0,RELCNT  MOV  RLDIR,R0  RTS  R7 .PAGE PAL  ; SUBROUTINE CHECKSUM FINALIZATION    ; BINARY BLOCKS BYTE COUNT VALUE IS    ;  RESTRICTED TO BE AN UNSIGNED BYTE    ;  (8-BIT POSITIVE INTEGER) ;CHECKSUM: SUBR23: ADD  @R2,@R3  ; SUM THE BLOCKS BYTE COUNT     ; AND THE BLOCKS CHECKSUM  NEG  @R3   ; 2'S FT K OR WDOM PO RET LGO; 00KCFT ISBH SKFT K?AS TAYRLVE OANS HI TIS; INTMOV,#R0 PBCM SKFT . IST IIFE OM HGO; 00KEFT I BM SKFT L AL COMRPDQA R FOK ECCH; R0 T TS SKFT ; AYRLOV Z FN.I SKFTK.AS TEDNDPEUS S AOFE AR CKETAO TREHE; =. 00KBFT SKFT E)BLUAUE(Q 1TOD OR WADRETHT SE; Óý  'D  E YT.B 0  E YT.B R:ROER RR ROERR TEISEG R ;  'R  E YT.B 0  E YT.B R:ROER AR ROERG INSSREDD A ;  'A  E YT.B 0  E YT.B R:ROER QX TAYN SLEABONTIESQU;   Q ' TEBY .  0 TEBY .: ORRRPE ORRR ESEHA P ;  'P  E YT.B 0  E YT.B R:ROER LW LORFVE OERFFBUE IN LUTNP I ;  'L  E YT.B ) TEBYH IG(HR TOCADIINR ROER;     ) TEBY OW(LR TEACARCHI CIAS;     : S IETREND OR WLENGSI;     E BLTAR Òý7EXTENSION .RAD50 /11R/  ;IN RADIX 50 .RAD50 /OVR/  ;NOTATION USERID: .WORD 0  ;USER ID CODE .BYTE 233  ;PROTECT CODE .BYTE 0 ; ;OVERLAY DEVICE INPUT TRAN BLOCK ; OVRTBI: .WORD 0  ;DEVICE BLOCK NUMBER .WORD BEGOVR  ;MEMORY START ADDRESS .WORD OVRWRD  ;WORD COUNT OVRIER: .WORD 4  ;FUNCTION (READ) .WORD 0  ;NUMBER OF WORDS NOT TRAN'D .PAGE PAL ;SUBROUTINE TO DIVIDE THE TOP WORD OF ;COMPLEMENT THE CHECKSUM  MOVB  @R3,@R1  ; BUFFER THE CHECKSUM  MOV  @R2,BINBUF+4 ; FINALIZE THE BINARY OUTPUT     ; HEADERS CURRENT BYTE COUNT  INC  BINBUF+4  ; COUNT THE CHECKSUM BYTE  CMPB  PASS,BOPASS  ; IS THIS THE BO PASS ?  BNE  CHECK0   ; NO  ADD  #4,@R6  ; YES, R5 = R5+2 CHECK0:  RTS  R7 ; RETURN .END START  ;END OF FILE #13 ) R1,(#1 V MO: 40KAFT SKFT Y.ARSSCENEF IT'AS'LT SERED AN; ) R2T(AS,LR4 V MO SKFT RDWOD EAHR TKSAS TUSIOEVPRO NT IRDWO; 40KAFT E BN SKFT D EAHR T'SSKTAS HI TOFS NTTEON CVEMO; ) R4,(1)(R V MO: 30KAFT SKFT D OR WADRETHT SEREO GENTH; 40KAFT BR SKFT STIR FTO; ) R2T(AS,LR2 D AD SKFT T INPOO TSTLAT SERE, SEELG INTHNO; ) R2T(AS,LSTIR#F V MO SKFT ÏýROERY BLEMSS A ;  : ABRTER L PA E AG.P DCEN. R LEAL CTON URET;R  R7 TSR T ENUMRG ASTPAT ENEMCRIN; 6 @R2,#D AD 2:TRON C5 U HR T 1S.EG RRETOES;R  EGTRSE APTR 1:TRON CT OURREP JM  T.ES RHE TARLE;C 6)(R,-R8ER#V MO  ND ATEBYO NF;I  R6@B WAS W LOO NT IFOIN;6 @R7,37#C BI  TEBYS TUTA SSHPU;) R6-(R,IEVROV MO  ERSFANTRN OORRR;E R2NTCO EQB R IEVR,O000014#T BI  ERSFANTRN OORRR EOR FCKHE;C ONTILEMPCO;Îý;THE STACK BY THE NEXT WORD. EXITS ;WITH THE QUOTIENT ON TOP OF THE ;STACK. THE QUOTIENT IS INCREMENTED BY ;ONE IF THERE IS A REMAINDER. ; CALLING SEQUENCE: ;  MOV DIVISOR,-(R6) ;  MOV DIVIDEND,-(R6) ;  JSR R7,DIVIDE ;  MOV (R6)+,QUOTIENT ;R0 IS DESTROYED DIVIDE: MOV #1,R0  ;QUOTIENT AT LEAST 1 DIVID1: SUB 4(R6),2(R6) ;SUBTRACT DIVISOR FROM DIVIDEND BLE DIVID2  ;DONE? INC R0  ;NO. BR DIVID1 DIVID2: MOV R0,4(R6) ;QUOTIENT MOV (R6)+,@R6 ;R7 RTS R7 C ND.E: 20KZFT SKFT E ON DDYEALR A -KSECCHD UNRO AMPJU; 30KZFT BR SKFT T. IEDNEI S AELEV LTYRIIOPRT GE; 2 ,RR4 VBMO SKFTOMRPM RO FITD EE N IAS. DD AERADHET GE; 1 ,RR3 V MO SKFT . ONY RRCA L.AL COMRPDQA T NO; 20KZFT L BP SKFT ; AYRLOV Z FN.I SKFT . ALEGLL I. =0R BEUM NSKTA; 10KEFT Q BE Ìý . EUQUE THN IISE LS ENGHIYTAN; 40KAFT E BN SKFT IFE SEN HE TT,RSFIT SERE S.YE; 2)(RSTIR,F1)(R V MO SKFT T.NOF ICHANBR E.EUQU; 30KAFT E BN SKFTE THN I 1O. NSKTAR TEAFT GHOU SHE TIS; 2)(RSTIR,FR3 P CM SKFT R ROER. NO; 20KEFT Q BE SKFT ? UEUE QHE TINL ILSTK AS TIS; 1 ,#1)(R P CM SKFT TSUPRRTEINT OUK OC LTOT SERE; Ëý D CMWT MTE R FOT AI;W 6)(R,-LBVR#O OVM S ERSTGIREE ORSTRE; G REETSP RAT G LA FINW NET SE;1 @R0,0000#1 ISB: R4NTCO R3NTCO BR  AGFLN IARLE CS.YE;+ 2)(R0,0000#1 ICB ? ESRINT EREMO; 4 TRONCT BL  R32,#B SU 3:TRON C2 N*;3 ,R)+R2(V MO  ABNTRUE ATPD;U 10 MTE Y LAEROVE TH;) R6-(B,RLOV#V MO  INN RA.T;) R6-(I,TBVR#O OVM N IDYEALR AAYRLVE;O  R1NTCO LTB K OCBLN RA TUPT SE;I TBVR,OR1@V MO  RYNT EEDSTUEEQ ROFS ESDRAD; 1 ,RR2 DDA E BLTAF OSEBA;2 ,RABNTRUÊý? .PAGE PAL ;THE FOLLOWING TABLE IN THE RESIDENT ;ASSEMBLER CONTAINS A ONE WORD ENTRY ;FOR EACH OF THE N OVERLAYS. THE ;1ST WORD OF THE TABLE CONTAINS N*2. ;AS NEW OVERLAYS ARE CREATED, ENTRIES ;MUST BE ADDED TO THE END OF THE TABLE. ;WHEN THE ASSEMBLER GETS CONTROL AT ;"STARTA", IT WILL PLACE THE STARTING ;PHYSICAL BLOCK NUMBER FOR EACH OVERLAY ;IN THE RESPECTIVE ENTRY. ;THE SIGN BIT (BIT 15) OF EACH ENTRY WILL ;INDICATE WHETHE SKFT C ND.E SKFT N)IG SEDNE- . ER VAYRLVE(O# SKTAT GE; R0),SPK(ASFT V MO SKFT ; AYRLOV Z FN.I SKFT C ND.E SKFT ) ONSIER VLYONE OR(CR BEUM NSKTAT GE; R0),SPK(ASFT SBBI SKFT ADLOE YT BOR FR0R EACL; R0 R CL SKFT ÈýS #P,@40#3 VBMO: 20KAFT SKFT . NDOU FOT NSKTA T.EF LNENO; 20KEFT BR SKFT . CKHE CGO, FTLEE OR MIF; 10KAFT E BN SKFT ADRETHE THN ISSREDD AXTNET GE; 3 ,R3)(R V MO SKFT 4 RINS ESDRADS HI TVESA; 4 ,RR3 V MO SKFT S.YE; 20KAFT Q BE SKFT ? EKSEE WSKTAE THS HI TIS; 3 ,RR1 P CM: 10KAFT SKFT Çý#V MO  ETFSOFD OR WTOT USDJ;A  R1 SLA 1 RTOR BEUM NAYRLVE;O R1),R62(@1 OVM 5 U HR T 1RSTEISEG RVESA; G REAVSP RAT: 46BRSU L:TRON;C ;R LEAL CTON URET R. 4; NTDESIREW NOS IAYRLVE OCHHI W  ; CTLEEF RTOD TEDAUPS IABNTRU 3.  ;R FENSRA TNGRIDU  ;S ORRR EOR FDEMAS ICKHE C A. 2; T)AI.W, ANTR(.N I'DANTRS IIT 1.  ;: NTDESIRET NOS IAYRLVE OEDSTUEEQ RHE TIF ;; R.LEAL CHE TTOY ELATDIMEIMD NEURET RISL RONTCO ;, NTDESIREY ADREALS IAYRLVE OEDSTUEEQ RHE TIF ;; ERMBNUY LAERÆýÂýR OR NOT THE ASSOCIATED ;OVERLAY IS IN CORE: ; 1=RESIDENT ; 0=NOT RESIDENT ; RUNTAB: .WORD RUNEND-RUNTAB ;N*2 .WORD 0  ;OVERLAY #1 .WORD 0  ;OVERLAY #2 .WORD 0  ;OVERLAY #3 .WORD 0  ;OVERLAY #4 RUNEND: .WORD 0  ;OVERLAY #5 .PAGE PAL ;SUBROUTINE TO TRANSFER A REQUESTED ; OVERLAY FROM DISK TO THE OVERLAY AREA. ;CALLING SEQUENCE: ;  TRAP CONTRL  ;  .WORD N  ;WHERE N IS ;     ;THE OV