IMD 1.18: 6/12/2012 18:49:54 amdos/29 32k  !`|~}}F#N#V+{w+{w>@+}v!p#q#r~ {<\>>> R=P>_2>:x>?2!666>xvcCOPYRIGHT (C) 1976, DIGITAL RESEARCH_'a> 'a> 'a3a  _2h<ɯ2@h hRa2h<2h<2h< hpa hÏa2ha{_:g b:h>La:h=2hg͏a bBh!ͯd!h5gfa b:hLa Ch3bbYbcYb Ah!BhF#x+b~ͱawbw!Ch"h  w# Kb!g~6Lag͊a:hLac!jDd#yb3a*h~ ʞbʞb'a#Ëb>?'a3aYbc څb=_.:;<> bo$>! hb2h*hb"hc@G: c:hwcx2hpͬb5c#*%c6?'cwcͬbc2g1gGayLa>'aTbͺabąb:hfͦc!8d_~#fod_eeeoff!v"a!aTd=aREAD ERROR$ed=aNOT FOUND$!!h ~ ʠd#0 ҅bWx…bxڅbڅbڅbG ud~ …b#  dx~#¯d!b~ɯ2 h:h=!hLa:h=!h:hLabd!!h~ d 6?#d̈́a_d\e3aFbA'a>:'a> 'a:h`Ox͸d 9e> ͸d> Pe-ax Pe %e> -a%e3b\ezaegb ‡ee=aͺa!Bh5c#~Yc#"h! h6?d h͊agALL FILES (Y/N)?$b…bd\ae3a!h6!h~e͖aew4!b~g'a3bgûe=gNddÅbb:h…bodb…bd h͊aͣa\aAfo&)|Gf+!Tb h͜aAf$fYf=a hfaVfbf=agNO SPACE$CANNOT CLOSE$b…b:hd̈́af! h0hͯd*hb=ʞf_f#"hbfG!h~ʸfpfp2 ḧ́af hͬag_dgdÅbf=agFILE EXISTS$qb:!h g:hg=2h2Lag)h …bd!gͭd\aʼg!Tb h͏aIga}|g)g=gdb!h~2 h>b~20h2@h\! h!ͯd!Ch~ʆg g#xg~ʗg#Ëgx23a:h2AbTb1g:hLacdÅbg=agLOAD ERROR$COMdb:!h !h…bc$$$ SUB!3uq,s#r.sCOPYRIGHT (C) 1976, DIGITAL RESEARCHv!5j{j9j!=uwuj9jsjv-6>ɯ!?uq v!@uqJjҐj!@uN}j!Auqv!Buqvvv!Cuqv!Duqv!Euq!v!Fuq#p$v'v*v!Luq~ .IO~_>ѣ.Mw-~ j6 !Mu5~4k-~ k.I6.L~ k.I4.LNͅj!>u~j.LN͘jj j j!Nuq#p*Nu~!Quw$akNj*Nu#"NuFkuk^j!Su~@Oj!Ru6*4u~!RuO~9l9j!SuwŸkek5kvzk~«k5k6l~¹k.>~/w6l~ k*4u#!RuNy j~kek5k!Ru66l~l-6l5~O*4u ~Oj6l~`lek#l~ l j#lNj!Ru4N *4u !SuNyzkClDISK $=l@k!u~AOjͬj͸j*u6#6*u6Çl     *u~#F!uO~,V_zҴl*u~#FOx+q#w*u~=wÇl*u~#FOi`"u!u~,FOxl,N,F*uq#p*u~\mv5k m m!u~O*4u ~ !uw#6!u^,V{_zW m.~O,q#w *4u ~!uw*4u ~!uw *4u !uN y*4u !uNy!Uu~.w#6jl!Uu4>?m6~-wnm`m!uq*u ~!uq,s-N*u !uNy!uq~O*u ~!uO~<_ySn!uq,s-~ON6n!u-O~<_y{n_ n!uq*Vu ~!uq,s-N*Vu !uNy!uq.T~.w!Tu~.nN͆n!uwnN.^Yn.4´n!;u6*u6!u6>!unN n.4nTl!Uu6m!Uu~-N͆no!TuN ͆n$!;uwͨno!uN,F.4q#pm!UuN.;qy.6!u~..^*4uO~!uw-_~.TO͆nѓ!uO~?ґo-4So-~.Ao!uq.q.4N,F.q#p.U6Tl6o ͛o!Uu~ͨn!TuN͒nfm6oüo!uq,q!u~O-#pO~w,~wN6n/p!u~!uN6n/o!u~ɯ!uq,s!u5~Np.T~.ɆO~-_*4u~_͒n+pmfm %p ͛o!Uu~xp"u%p6obp ͛o!Uu~ʱp.6 >!uڱpN*4u !u~.TO͆nw!u4‹p ͛o!Uu~Up!4uN,F.q#pp.46#6p͛o!Uu~q.N,F.4q#p.6 >!u qN*4u 6!u4pUp!uqͲp!Uu~ *4u  *4u ~,Ҹq.;6\rlm-~r.6.~.wO>qN *4u ~!uw.No!uwq.;6rNYn.N*4u !uN.q#6y.;~\r͈mjlfm!u~-9r,N -q,~Yrmq!;u~Ur.6.;6m>!u҉r5kzrSELECT ERROR $lr@k:l5kv!u~O.X "u!uN. "u!uN. "u!uNͰj!u~-^r/rN > r,wn!7u~.r.7N.q]r*4u~=!7uws.N.q*4u~!uw*4u~wr!uq#p-N,F.Vq#pj!9MD!uq#p . kb!4uN.7q,6#6.;6.6*3u&ïtvt9j!;uw /O~ _~ O~ tNjt!7uNjtͨj!;uwt!7uN͠jt!7uN͘jt!8u6#6jt*Ju~!8uw#6t!4uN,F*Juqt!4uN,F@ktbktJj!;uwt!u6,6s]r!6trtryptrͲptr ͛ot!uN,F.4q#pr6otrͷotrcqtrͧqtrptr]pt!uN.;qt!uN.;qt!4uN,Fst!uN,F.8q#pt)t ^#Vasgssssssssssstst#t,t5t@tTt]tftotxttttt!u~ uN*4uq!uN.7qr!uN,Fi`!8u~,F.;OxGy*4u~w opWvjwòwúwôwõwùwöw|vØvévvvvvCOPYRIGHT (C) 1977, ADVANCED MICRO DEVICES1>2!v"2!j"v:Oa:GO͘v@*G67KwÊv2Hy2G@*GyKwy³v>v v=vy2Di`"E@v> 2v@*G ~*E+F>w+N:Dw+^w|~}}zws#q#p!v5/w0Oʹw>v@*G~|vOͩvvLwew4>5Zw1͘v|v*!aJvvvjwWvz~w ͩv~w>*w~#"wwBIOSDIST JvvvjwWvz~w ͩv~w>*w~#"wwBIOS &À# $b${$*!:!X!!M"p"""""4#\#j# ()*+,-/ABCDEHLMDBDIDSDWEIEQGEGTIFINLELTNEORSPACIADCADDADIANAANDANICMACMCCMPCPIDAADADDCRDCXENDEQUHLTINRINXIRPJMPLDALOWLXIMODMOVMVINOPNOTNULORAORGORIOUTPOPPSWRALRARRETRLCRRCRSTSBBSBISETSHLSHRSTASTCSUBSUIXORXRAXRIASEGCALLCSEGDSEGELSEENDMHIGHIRPCLDAXLHLDNAMEPAGEPCHLPUSHREPTSHLDSPHLSTAXXCHGXTHLENDIFEXITMEXTRNLOCALMACROSTKLNTITLEINPAGEMACLIBPUBLIC7 PF FPA A A* A A A(#&&#&2#/?&#' '( v'( %:P!@" COPYDISKCOM BIOSDEMOCOM DDT29A  ASM COM@UNMUL OBJ RESET ASMDDT29A COM UNMUL COMAMMAP COMfMUL COMMUL ASM8DIV PRNb:O)*67F2y2*yFyD>R T=Ry2i`"@p>2h* ~*AMPROM COMbcdefghijklmnopqAMPROM COMrAMSCRM COMJstuvwxyz{|SYSGEN COM}:<2M!e`!ee ,# U͈:ͤm͋)>ͤ:<2 {͋!e":]i*"> DDT COM(LOAD COM DUMP COM!PIP COM6"#$%&'(STEP BAKSTEP SUBSYSTRKS 0024DIV HEX DIV ASM9DIV COMDIV SUB+F>w+N:w+^w|~}}zʙs#q#p͈ͤ͋:AO v͋*~ͤ͋:ͤ:h<2h(>DISK ERROR, SYSPUTB COM~KIT10 DEFDISPL COMDISPL MSGh!e":]n*"> Íͭ0:ڸO v:O) :O) >2:O2):O]:O):O͂:O STAT COM)*+SUBMIT COM ,-LBPM COM./0SET COM12RESET COMUM SUBUNMUL TBL:UNMUL P1LTYPE $, ON DRIVE $, AT TRACK $, SECTOR $u*~ O:uG`4>5UKIT10 SRC AM2900 LIB7FILETYPEMSGMUL PRN`:<2M!e`!ee ,# U͈:ͤm͋)>ͤ:<2 {͋!e":]i*"> VBPM COM345SBPM COM67RBPM COM 89RESET HEX18͈ vO v=2D͈ vO v=2ͽSOURCE ON $DESTINATION ON $COMPARE ERROR ON TRACK $(HEX) SECTOR $PERMAUNMUL DEFUNMUL P2LbUNMUL MAPUNMUL SRCAMDOS MSGMUL HEX AMDASM OV0`aINITDISKCOMh!e":]n*"> Íͭ0:ڸO v:O) :O) >2:O2):O]:O):O͂:O ED COM(;<=>?AMDASM COM@ABCDEFGHIJKLMNOAMDASM COMAMDASM OV0PQRSTUVWXYZ[\]^_NENT $͙$O vË v vͭ0:ڸO v:O) :O) >2:O2):O]:O):O͂:O   MOV C,A MVI A,0 CMP B JZ SBYTE MOV A,C OUT 70H; A INX H; INCR CHAR DDT29A CTL 3F HALT E$ TO 200 WA 100 CL LO NOV DC 0$$$$ SUBORG 100H MVI A,081H OUT 73H MVI A,30H; SET HANDSHAKE OUT 72H JMP 0 END p+q*T> >/Ҥ×!p+q*DM͛:̀ ̀:2:!!K:*&L Ǹ!4!K6 ͐u IN 71H;READ IN BYTE PORT B CALL ACBTTY MVI A,82H OUT 78H;ACK CK IN 72H ANI 02H;CHECK IF 2903 HAS DROPPED OBF JZ CK>s>0rRESET$ CTL 3F HALT E$ TO 200 WA 100 CL LO NOV DC 0$$$$ SUBO CONSOLE FUNCTION CODE CALL 5 ;PUT OUT CHARACTER IN C CALL UNSAVE ;RESTORE ALL RET ; ; ; CARRIAGE RETURN/LINE FEED ON MUL$ BAKSTEP SUB$$$ SUB MVI A,30H OUT 72H;RESET HANDSHAKE MVI A,0H OUT 78H; RESET ACK DCR B MVI A,0 CMP B N 72H ANI 01H; CHECK2903 ACK JNZ AGAIN MVI A,0H OUT 78H; RESET 8080 OBF FLAG RET MOV A,M; LOAD CHAR CALL VHEX+1; CONVERT CHAR TO BINARY RLC RLC RLC RLC MOVTHE CONSOLE DEVICE ; DOCRLF PUSH D ;SAVE D&E MVI E,0DH ;CARRIAGE RETURN CALL TTYOUT ;PUT IT OUT MVI E,0AH ;LINE FEED CDDT29A IR 106 J RUN E$STEP SUB$$$ SUB RZ JMP LOOK RDKEY MVI A, 80H STA BUF2; SET MAX READ BUFFER TO 128 LXI D, BUF2; ADDRESS READ BUFFE XIN MVI B,2H;LOAD WORD COUNT LOOK IN 72H;READ HANDSHAKE ANI 02H; MASK 2903 OBF JNZ LOOK MVI A,093H; MODE 0 INPUT O C,A INX H MOV A,M CALL VHEX+1 ORA C ;JOIN 2 CHAR BYTE DCR B; DECREMENT CHAR COUNT ALL TTYOUT ;PUT IT OUT POP D ;RESTORE D&E RET ; ; ; OUTPUT A CARRIAGE SPACE TO THE CONSOLE DEVICE ; SPTTY PUSH D ;SAVE 2LBPM UNMUL WCS FR 100 TO 200 WA 100 CL LO NOV DC 0$$$$ SUBR MVI C,0AH ; ENABLE READ BUFFER CALL 5H; READ CRT RET ; ; A STANDARD SET OF USEFULL SUBROUTINES ; `28!Ap+q*@T!Cp+q*B`!Ep+q*D`!Gp+q*F`28!Ip+q*HT!J6J T ` T!UT 73H; PROGRAM 9555 MVI A,00BH OUT 73H MVI A,70H OUT 72H;ENABLE DATA IN IN 70H; READ IN BYTE PORT A CALL ACBTTY  D&E MVI E,' ' ;'SPACE' INTO E CONOUT CALL TTYOUT ;OUTPUT TO CONSOLE POP D ;RESTORE D&E RET ; ; ; OUTPUT CHARACTER IN A: ĝ@ ’+|p*͘ʯ*"!*+"|*"\ !:\  w#>Ő!:X |+" —ɿ½" *A*͊." Ġ" * #" ͠" *"* * |+|* * !% T},~,>/,ERROR (LOCATION BAD/GOOD) >=x>!w -W -J :x">x>:x! T:, *N# 6 @DWCSMH@SWCSWH@EXIT ADMAPHASMAPH2DLA 2DMB 2DTR. @PAGEz H`JAMCCU HCJAMM H0RUN H2CLS H@HALT ]=$>1>0== D0|,},eF#^Xs"q*q2͒ʃ"CCUMULATOR TO CONSOLE DEVICE ; ACCTTY PUSH D ;SAVE D&E MOV E,A ;CHARACTER FROM A TO E JMP CONOUT ;PUT IT OUT ; ; OUTPUT !@Cb""2~!:X:O:G\Z 22: Z222!kT?? !SP2TGL+|* #" * |+" ͞  Ċ* " I)>g>-M~#~," *A** -)))){o>g"  STATUS= >:x! T::, LAST ADDRESS = >:x! T:_ :O  :W  M>({yH2CLR H!IR\ HaSTATUSm H2STSm H2CTL HBCLMS H!SS !MS Mb!MEZM Ăq" *A*͊.uĘ" ͤĠ" ͤ #y#͒Š~ ,.=() ɀ*"͊y}o|g_s# x# x }|w# w+ >THE CHARACTER PAIR IN H&L TO CONSOLE DEVICE ; HLCTTY PUSH D ;SAVE D&E MOV E,H ;CHARACTER FROM H INTO E CALL TTYOUT ;OUTPUT"͓ͬÈ*ʘOGyO~͓~ w# ³͒ og *Ø>/ȷ#^#Vͬy¹2 #y! * w#" }*#Ä/*"* ~! w>)g" ͞ *A*¹* r#s#"  ,z,>)ͻ  MONITOR BITS - >:x!a T!" :g:o" ͙ ͪMͻ MICROWORD AT >:x!666 * #" ͠" *"* !͙  Ċ* " I-))))>g>-M_xç2 UUMU>a{!3 T* TN> #*6^* T INPUT PARAMETER ERROR 1MAP 1WCS LW @UWCS 1MOS PINSTR …  H MOV E,L ;CHARACTER FROM L TO E JMP CONOUT ;OUTPUT L ; ; OUTPUT THE BINARY VALUE IN A AS TWO ASCII CHARACTERS ; ACBTTY !@C"A@*ͬ6͊+)~͒ +(e~OpQpHkBfDa#> r>r>r>2͹M!"0:AG: * |.+" |CJC2* "" ɯ2 :~[ Ċɯ2~x" >2 *" *"!Ċt >:x}2>x >:x!6z«  >:x!6z *"!* !" " !" !""2UMUUMUU!͹|AG>?x7>>xM~,#U* |k+|* * ͹|* #" *}xM *͘>Á >?Á >>Á >=Á >:Á >:x!666>:x2x>:x!66>:x!6>:x!6>=x>!w -- < -COPYRIGHT (C) 1977, ADVANCED MICRO DEVICES!9" 1͉ !ͅ =U7z ̓! "" 4 ! > 2 >.~#AҌ0Ø:7O!~*!ʻҵ)ì " €s*ses   _\ xw|> j{ |ͦ{1>2!v"2!j"!~"2(!|")28!"9w:Oa=vaaaeeeiiimmm>@aeim>aeiͬy¹2 #y! * w#" }*#Ä/*"* ~! w>)g" ͞ *A*¹* r#s#"  e|!~:|̘{:|S{:~S{:,~C{ b{͐{: ~G! ~Nb{#5{ b{ :~G b{I{:~b{y ʐ{eb{yd ʦ{ :|<2|2|Ð* #" ͠" *"* !͙  Ċ* " I-))))>g>-M_xç2 UUMUV:~:y2~x!{:~x:|)y|x0y |͘{ b{* ~~ Jy#" ~!~6#6Ͱ{:~Ĉy:Ez̲zx!{xx!{x; ; VHEX VALIDATES A HEX DIGIT & PUTS IT IN A ; VHEX LDAX D ;GET DIGIT IN A CPI 30H ;VALID? RC ;RETURN IF NO CPI 3AH ;m!Pẁx: ~G! ~ y 5w=wwwBww# yxwy2 ~lxɯ2~w+~ yxw- PLEASE ENTER TODAYS DATE, IN ANY FORMAT. >:G-COPYRIGHT (C) 1977, ADVANCED MICRO DEVICES1!] ̀\!] ̀\q ͫs#rͫ6!v ̀v{mʃ{yl :~w:~ʥ{ b{2|2|: ~ɓyyyyyyzFzVzmzzzyzzzVzzmzzVzmzz{ CTL-P SET CTL-P RESUMUUMUU!͹|AG>?x7>>xM~,#U* |k+|* * ͹|* #" *x!{xx!{xm>=a>=iâymâymʹyl|ay`y|:~/yy> 2~!{̀x!{̀x:~/-COPYRIGHT (C) 1977, ADVANCED MICRO DEVICES!9" 1͉ !ͅ =U7z ̓! "" 4 ! > 2 >.O͚w@*G67MxÌw2Hy2G@*GyMxyµw>w w=wy2Di`"E@w> 2w@*G ~*E+F>w+N:Dw+^ }|ғ͢w#È ͢w+× >>!~vͺ}o|gSUBMIT PROFILE PROFILE SUB$$$ SUBJYET>'e>w>%eX|X|0|>!yx2x>!~>|}A|> 2x:xT|>\yx2x:x:xg|>\2xyx>1͚w~w*!a |+" —ɿ½" *A*͊." Ġ" * #" ͠" *"* * |+|* * 2~**~*Cz|z}2zͤzizh=z*Cz#"Cz>%i>2Ez>!,zmHzl|mXzyl :~waozy` :~ *N# 6 @DWCSMH@SWCSWH@EXIT ADMAPHASMAPH2DLA 2DMB 2DTR. @PAGEz H`JAMCCU HCJAMM H0RUN H2CLS H@HALT w|~}}z xs#q#p!w51x0OTy>w@*G~~wOͫwwNxgx4>5\x Ty TyOTyWvj|xyTyÈy}yry~wÚwëwwwwwCOPYRIGHT (C) 1977, ADVANCED MICRO DEVICESvv>'am>%ei`dhl>w>2!x̀Jwwwj|ʒvz~| ͫw~|!91}!|̀x INTERRUPT 5 !ڃ .6 >!|* #" * |+" ͞  Ċ* " I)>g>-M~#~," *A** -)))){o>g" wmʆzylyzͤziʘzh:Ez<2Ez>'i>%ihh>2Ez<2Cz2Dzͤzmzlͤzizyh:~wͤzmzylzH2CLR H!IR\ HaSTATUSm H2STSm H2CTL HBCLMS H!SS !MS Mb!MEZM Ăq" *A*͊.uĘ" ͤĠ" ͤF#NTyx= AMDOS/29 32K VERSION 1.2 *** AMD DEMO USE ONLY *** :_: x:0x:xx!{^# &w^ Å o í 8  "'!"2,!" ":"d"!1!++""*"%>28!"9:] q!A 1ͽ >-o ^ ~#AҌ0Ø:7O!~*!ʻҵ)ì " €s*ses   _\: ĝ@ ’+|p*͘ʯ*"!*+"|*"\ !:\  w#>Ő!:X ͽ  m ᯕo>g q2|2\ͅ  !]w# S ͅ . ­ 6 # . !eͅ w# 6w!% T},~,>/,ERROR (LOCATION BAD/GOOD) >=x>!w -W -J :x">x>:x! T:, qAS S _!^#VS 0`S  t S S  S S S S 0  W S S S S S ů2[\!  S 8 =S  " q]=$>1>0== D0|,},eF#^Xs"q*q2͒ʃ"!@Cb""2~!:X:O:G\Z 22: Z222!kT?? !SP2TGL+ #y#͒Š~ ,.=() ɀ*"͊y}o|g_s# x# x }|w# w+ ># !e~C#~O#~M*d}| "d! 8 !@ =S  S  u \ w# g  T  S : STATUS= >:x! T::, LAST ADDRESS = >:x! T:_ :O  :W  M>({y ;  q8 S S  =IY =UY !q8  o":= =S Ê* #y#͒Š~ ,.=() ɀ*"͊y}o|g_s# x# x }|w# w+ >"͓ͬÈ*ʘOGyO~͓~ w# ³͒ og *Ø>/ȷ#^#V@ `TADV16 ACK  ADD ADR ADRQ AND  AUR AURQ  CARRY CJP Cu Wͺ _ͺ ͺ O {  `i" ͺ ͺ w#£ ͺ  S u     GтWx ! ~ o # ͽ *d m * ,z,>)ͻ  MONITOR BITS - >:x!a T!" :g:o" ͙ ͪMͻ MICROWORD AT >:x!666 :}o"<ͽ q*:"> m ~ͭ # ڳ}Ÿ":*>m  *:}½|½*: qÍ8 S    {z|S >a{!3 T* TN> #*6^* T INPUT PARAMETER ERROR 1MAP 1WCS LW @UWCS 1MOS PINSTR …  !@C"A@*ͬ6͊+)~͒ +(e~OpQpHkBfDa#> r>r>r>2͹M!"JPP  CJS CJV CN4 CNT COMR COMS CONT CRAS  CRTN  DADB 0:AG: * |.+" |CJC2* "" ɯ2 :~[ Ċɯ2~x" >2 *" *"!Ċt >:x}2>x >:x!6z«  >:x!6z *"!* !" " !" !""2q}ͽ 8    DM; ) "=; L =; YPL 1**!,~4g #~#F#g xg ~#s#r#w>8 S  }xM *͘>Á >?Á >>Á >=Á >:Á >:x!666>:x2x>:x!66>:x!6>:x!6>=x>!w -- <  DAQ DARB DIS DLN  DQ F GRD HIGH HZ  IEN IN1 %!P* %ž&$6)$ã%!\* %¾& ²&ô&b%$ã%:*J&͔%&C&͔%ͣ%yͣ%xã%R6)o%ã%*$* ${z'*6)HEX* 0 6)6)!* ~ $͌$kb))))_y¥$BK{͙$6)!6!?6!$""?80**{%#z{?OEY NOR  OBF  ONE OR OUT1 OUT2 OUT3 OUT4 OUT5 OVR @'&W&"'z"'ó'yO!) @'&"'ó'yO!) @'ó'J$?$*$*$" $!9"$$ͅ'"$ͬ%R)*$'/7?v"* IN2 IN3 IOEN IOT JMAP JP JRP JSRP JZ L0 L$~#" $<''AO$GƐ'@'O$xƐ'@'O$N$#B' $z8P'O!`* N$#N$ $$P' 'S$+++ $ *%#%#% % U$6)!~*$6) yU$6)!* %6) yC%6)C%6)=!**w# w%Ox.q#w.N q!#~.$.%w%.Ҳ -,O>-q#w.~ -,O>-q#w!-$~ %.~Q !#~,FOx-q#w*#~!#$w >p %.~1*"# x >2!,""?6,2:EI SPHLDI XCHGPCHLXTHLRET HLT CMC STC CMA DAA RAR RAL RRC RLC NOP CPI ORI XRI ANI SBI IN SUI OUT ACI ADI CALLJMP LDA STA 1 L14 L15 L16 L2 L20 L21 !L24 $L26 &L3 L4 P$J$* $|"'}"' $$!9"$$:$ʳ'!"$ 2^)!$~'5^)ͅ'&W!c)()# ' )# '(# '@( 6)w!n*$6) yo%͙$$* $w#" $$$ ^)X$6)!)c) %%â% !) %%͢%$ã%!* %%͢%͙$ͣ%xã%!* %26,N,F.q#pN .N,F.q#p.N,F.q#p.6!#$N qyրN *!6,1+w>,!" $&>2!0" :] m,!;./*͋/ͯ/Am, nLHLDSHLDMOV ADD ADC SUB SBB ANA XRA ORA CMP INR DCR MVI LXI STAXINX DAD LDAXDCX RST PSW POP PUSHNZZ NCC POPEP M B C D E H L M A L40 @L5 L7 L9 LA LC LD LDCT  LDQP LDR LDRQ (z(=ʺ(=ʦ(zz(zo(d(Y(J(zO!W* @'P'(!T*@'ó'!P*@'P'"'ó'C$W')J$W')R$W'ó'!8*z&-%$G@-%ã%!(* %)& y$G &!0* %A& -%$ã%!4* %]&-%$ͣ%$ã%!L* %ƒ&yp&GY%$ͣ%y/!,_~#fo,y/y/-y/E-V---y/y/,.y/y/y/y/7..y/y/y/y/.ů2[\2 /" $ $m,ͯ/ -0" $x -/" á 4êü /L92A_ ,ASMH) $ $$$ 6)8$UPRN*6 # h$!*w$$$ʆ$# B D H SP PSW F!#,Ox-q#w.N .N,F.q#pyOx.q#w*#6#6!#~,FOx.q#w*#~#F!#,Ox.q#w!$q%.N >$.O~ LE LF LOOP  LOW LUQ  LUR  LURQ  MEM N  NAND N=ʘ(ڋ(O @'q'ó'@'q,$)!4*@'P' ',$)!0*(!,*@'P' 'ó'z8O! * @'(!*@'P' ',$z 'ó'yO!)  $x y/ -> 2$$m,// 2m,0͉/~!0 0m,}/-- /q 0L-m,M0ژ-p-0!9r+sx ʘ-!9/Xx: A: A͋q: a{_2  2 ͞ !ɯ2I:  ;*:  ͭͷ ͭ͋Y :7ʗ8 z !<ͼ CP/M ASSEMBLER - VER 1.0 NO SOURCE FILE PRESENT NO DIRECTORY SPACE SOURCE FILE NAME ERROR SOURCECCMPCPIDAADADDCRDCXENDEQUHLTINRINXJMPLDALXIMODMOVMVINOPNOTORAORGORIOUTPOPPSWRALRARRETRLCRRCRSTSBBSBISETSHLSHRSTASTCSUBSUIXORXRAX :7ʞ !z 8  !"2D2X2#! 8 !ͼ z{* ! !"!8 w^Xë 2MV&$|$$%i#{&(&(#$%1#'K'{%%%r(B'&N$ ![w#w#b!"!F#v2[ʎ-q#p# w#>{ ʘ-v-/!9//0͉/}o|g0m,2|2\ͯ/ !]w# y/ͯ/.- - -6 #-..!eͯ/ .w# y>9q>9: '!2 >9 7:! 6 >2>2: 2 Qͭ:Ğ! :lj<͖<j<|<:  FILE READ ERROR OUTPUT FILE WRITE ERROR CANNOT CLOSE FILES END OF ASSEMBLY G:7xʘ!#~ʄl͸Ä**!O {zʊRICALLENDMLDAXLHLDPCHLPUSHSHLDSPHLSTAXXCHGXTHLENDIFMACROTITLE  PF FP! ( 2/#  +6# *#"~!ͼ G:6QxJQS*!w#"! 1 !"!Y~G*##~w*##~<*}q!~ڬ6![^![^#fk"͎͘!G#*####*^#Vû!^*"*/- .6 #.6m, /~ 0.m,!e~C#~O#~M /,y/&.l.\2¬.w# a.N.]0:l.W͘/ʞ._OʊQ>ÖH >2 2 û: B­>ôD> ¸!52 !"!N#~#A07O! ~*!) " ͸*"!!#^4!$wͯͯWƐ'@'ê>:ͪ!#^Ww*!{͚|͚}͚͚{!$~#͚͚> ͪ> ͪ#6$.?'  v:P@< !  PP27 ( *"  NZZ NCC POPEP~# …¡z!ͼ wʹ* ! w#" ! 8 !" ! zz_O4:  :6y{zA"*![N![ N#Fr+sq#p/>G=#w#w3#w#w!JSYMBOL TABLE OVERFLOW G*##~w*##~/͘/O ͘/͘/w#Œ.͘/y/l.͘/!4w_#~ ʸ A:4~~# ¼ > \ ?ʻ w# !ͼ ? !ͼ :  '<ͭ'<>V$>O$23D5 :1015DC004672à\ÞØ`rÍÖF2E :1015EC00153E10473D237723131A770@2 0 0:x0_<2! wI2 2> 2 >2ɯ22 !~@_6^4#: w~$w: 0 q M x_BH!œ#¶ ¦{KÈCÈ<:JCR:  !6 s!:! G~#x=2> > ! >x6 #='G! ~ p( O*}O>4?:7w:#ĸ*"!͸* }w>ͪg( ʆ1 *_###s#r^#Vɕ`à 4 Wm ()*+,-/ABCDEHLMDBDIDSDWEIIFINORSPACIADCADDADIANAANDANICMACM!)ͼ !ͼ :5͡ :6:6͡ :7͡ :\ ʻ 24!dͮ 25ͮ 27ͮ 26!8 ( ʃ !Y 1 5C2F315AF29 :1015FC0023772377C9210A16CD1202C31E02535931 :10160C004D424F4C205441424C45204F564552467A :10161C004C4F570D17171717  #  ɯ<:O=_Z!F!V#fjQ̓E!^#Vo&)~#FxGyѯ 2 # A.!y. yA.!. y-.-.=!w# a .w!i. y=ʅVq”*qͦ1& O:lµ̅>2ly:_!w~!s!m~ùy !~=w_!m~ ͅ=COPYRIGHT (C) 1976, DIGITAL RESEARCH DDT VERS 1.4$10 !~=W!xe ~#Xbxʇ {z~#o}o҃@< !!~ڢͅ6~44O! s#r!~ ڿ6ͅ^4!mw!wp!~ͅ!55N! N#fio&)^#fkĽ y0G G t :):,.>C :|: Jü;r :R: ʼʋ!ʼR!ʼʋ>S:|: |Ë  |*" ͩ !6="1 :  1}1:n:>BʋSSͦSSxYͅ* w#"  YD.!^µÌ !͌ͶÍ!͍͌ͅxÍ!G@Í!Ͱ>2lyPLnR>UX:l̅2l͓i.z'{ͅ>ɯo>g"k!m6ů{_zW5>)D*kOxGd !m?F ɯDM!xGyOڂR{ozg!~4ʧͦ !6 ! **̈́**̈́\iͩ !w#H USE FACTOR !* "z{*"S 1:  1"" ͦ 1 |R >O U!" 1 1!|_!^#fk $8AP`ix# yG!++ Í!/G͍ͶÍ!GmyZGC͍!KˆͶ.*>EɌzg{oá͌zg{2C!" """ :ʼ:*1 |R|ͦ0FIL: RýÆ@m͵!Y , @    .$A!6 # T!w $r# .`: 0 )sn55)=â|g}o=î--#zg{ozg{ozg{* "I !" :1 R O*UR X* G:xl :  *̩ : l x͖ *#"EH DH 0H ñññ81Ľ y0îH ñGîG  ñH ñ(Ľ yîH ñÍ!W¨ œÞLÍ:J¸́Ć͍y͍xÍR.YÍ** {z*~#" <  R* } *" :¿::¿üX!C^#fk[@ :Œ:=ʌG!ʆF#H.A.! ~ ʰxkb))))_y‘BK{ͅ.!>#>!"80*{#z+++ #oÓ:: ;,!ɯ22=2l!"]!~H5_!m~0:ą:  *":  :‰:̅ԅ!^#:~ ! ^4! w͆ Æ *! 6z͖ {͖ 4>R>V>D >P >L >Nͽ '"ͱ T":  AOGƐ'@'OxƐ'@'ON#, z8:O![ N#N :SP6* | }   ͽ  m ᯕo>g q2|2\ͅ  !]w# S ͅ . ­ 6 # . !eͅ w# S 6 # 6qq w qAS S _!^#VS 0`S  t S S  S S S S 0  W S S S S S ů2[\!  S 8 =S  " q m m 0' .*" !6W+"<*~ͭ # Wm S^#V W~ͭ CZMEIABDHSP!"*"+"I SPHLDI XCHGPCHLXTHLRET HLT CMC STC CMA DAA RAR RAL RRC RLC NOP CPI ORI XRI ANI SBI IN SUI OUT ACI ADI CALLJMP LDA STA LHLDS  |S }!wqͩ s#rq:[< _!~N ![4O \N 2[' 7ͽ >?o q B!D"@> _!9"ͽ:ʫ!"<«<2*  Y!~5YoW!^ #  # # @zʸ# !e~C#~O#~M*d}| "d! 8 !@ =S  S  u \ w# g  T  S :' S 8 % " =% "=S '> 2q8 S S  =IY =UY !q8  o":= =S Ê*!91*~!,~6ʬ=G#^#V#~xÛ#"p*'>7 **|+"* :)0  !"%p>*oHLDMOV ADD ADC SUB SBB ANA XRA ORA CMP INR DCR MVI LXI STAXINX DAD LDAXDCX RST PSW POP PUSHNZZ NCC POPEP M B C D E H L M A B Da_!C~> ʜ 5*@~#"@| Ҩ 0o 7o ͞ Þ > o > o  |ͭ }í  o >.o *<}o| , =ʲ=ʞzrzg\QBzO!R *:!O*ë!K*: ëCAJARAë!3z=ʐڃu Wͺ _ͺ ͺ O {  `i" ͺ ͺ w#£ ͺ  S u     GтWx ! ~ o # ͽ *d m * :}o"<ͽ q*:"> m ~ͭ # ڳ}Ÿ":*>m  *:}½|½*: qÍ8 S    {z|S  *' " *":q ! ~##,Z*F#!$s!G^#Vcciw͂>>^#V# H SP PSW šg Ýͻ !~ °6  969.~g Oͫ `!~RV.6!6 >!ڃ .6 >!0 S ^#V#! ))))oͅ  s#r#!34ͅ !36# } ,V >23Y  - } ͅ  - } ͅ  - S 3O *[ë*[,!/*:,!+û!'*:ëz8O! *!*:,zëyO! *Wq NEXT PC8 =S  ͽ m ~ͭ m ^ ͅ O .q; =S  |S }w# Y >2)8 !"%ʆ v  }S +=ʅ =S q}ͽ 8    DM; ) "=; L =; YPL 1**!,~4g #~#F#g xg ~#s#r#w>8 S  o*^#Vwʖ>x¥8_*oi͂>><7*%|!$N*!>#o ͭ >&w^ Å o í 8  "'!"2,!" ":"d"!1!++""*"%>28!"9:] q!A 1ͽ >-o ^ S !kXN!~͋ ʦ Þ !f_^!ͩ ^#V~o x ͛ ͞ >=o !~ͭ ͺ ![ͽ #x  z ëyO! * ëyO!{ *ë6?**" !9"ͽo" ͖J*'/7?v"*2:E "%"*  ͅ  q ![ʰ # £ S ͅ S ͽ m ^ 8 q=S  x |S }S ͋ gA> Ag} q   o "30FF1E1C9FFC3C7C2FFCDFF :1011 000C7C4FFC9C7C7FFE9C706C7C6CF01E722D3 :04112000C7C0F7D37A :w$.~!q,s-~OyOxG“y,OxGy?! N,Fg:2 2LOAD ADDRESS $J! N,FgERROR ADDRESS $J! N,FgOx-q#wG>_zڝ*  ~-6#6>! ,Ox"! ~,FƀOx-q#wã! w.6#6*  KB0õN DISK REAH HHB"! N,FgLAST ADDRESS $ J! N,Fg<BYTES READ $-J! N,Fg_RECORDS WRITTEN $NJ!NK?!9MD!q#p!)01114200208C :01119$!!BH $  $$"!!HI$HAI!$!$AI!! "!! HH@ABYTES READ:$Jͪ! ~,F.Ȗ,Oxb,~̪! ~,F$.֖,Oxig ~OK! ~,FOx-q#w 2?v! 6#6,6#6,6#6!9D ERROR$J*  6! 6#6õ-6#6! ~! q> C~A O2J~0O2! q~ RO-! ~O-! q#p-N,FHK! NKh 0; 4; AAAAAL@p! q,s#r! q,s#r! q^ 2 2! q#p? ! ^,V!" q#p -^,V !% q^kb! 6#6!N,F! q#p!0ëHEX.6#6! KB0ͮ~.wSOURCE IS READER$J/SOURCE IS DISK$@!$BHH "!  BAI$HI$$BI$$B $H"I$I$$I$DMD! q#p$.6%.6#6.6#6$.6#6%.N,Fi`NON-HEXADECIMAL DIGIT ENCOUNTERED $Jͧn:! 6u%.wʸ.~,F.!q%.~,F$.֖,Ox!~,FOxGy%.Ȗ,Ox-$.6>!!N,F*& *& ~w!~,FOx-q#w.N q±.N q!N,Fʓ!& q#p-^,V!$ w!( q#p-^,V!$ w!* q#p-^,V!$ w!$ w!, q#p-^,V!. q#p-^,V!0 q#p-^,VJ͆~/)-CANNOT OPEN SOURCE$J?8COM! 65#6!~,F OxG0!N,F!N,F!N,F͆~—ÎNO MORE DI@BUUUUUU@$$I"HI$$ @ $DH$BI$$DI" $D$@!$$!@HHD$ @IA $"A BDI "A$ņOx.q#wu!wu_!N͆%.w#p.w#p.~,FOxA.N,F.q#pu%.w! N qynuÒ%.~,FOx-q#wH.~,F.Ȗ,OxҌ-~,DISK WRITE ERROR$Jv!~,FրOx-q#wÓ* & !Nyn!w0O> R~0~AO>ک~A >!w>!b!w%.Ɔ!2 q#p-^,V!$ w!4 q#p-^,V!6 66 _! q#p,s! N qym* ~* w! ~,FOx-q#w,~,FOx-q#w8! ~z,~,FRECTORY SPACE$vJ}!N,F͚~þCANNOT CLOSE FILE$J?!N,Fi`v\" $"HBH" !I B  $$!BD! $!BI D@"!$I$$H"!HI"I I$ FOx.q#wb! ìCHECK SUM ERROR $Jͧ! N,F,q#p!~,F%.ʖ,Ox̀%.~,FOx-q#wFIRST ADDRESS $J  ͩ!6+6+6!$6:$!6:-:|/HJAd!,6p:-> !,/>HHp2ͩ!{6!*6:! m ґ0Ó7mͅͅz>#mx0mzO: n_<2 !~#W>2 !͸G}zaO|͗}͗> mNIZED DESTINATION$CANNOT WRITE$INVALID PIP FORMAT$CANNOT READ$INVALID SEPARATOR$1xK :K2)`21x`v!+ COPYRIGHT (C) 1976, DIGITAL RESEARCH. PIP VERS 1.5 =.:,<> _[]INPIRDPTRUR1UR2RDROUTLPTUL1PRNLSTPTPUP1UP2PUNTTYCRTUC1CONNUw:,<2(:,—ͅ:,§ :,!Һ!6:'!6!6͐ͪ:-:,,:, HH>x2͗: >.G!{_p{/> m> m!~m#x>z*\iͤ2|\6!{6:)Қ*̀_͐!6:K¶*Mͷ!*y!6!6!(6+6:-|:-:=2ͺ:-:|LEOF$$$ SUBDISK READ ERROR$DISK WRITE ERROR$VERIFY ERROR$NOT A CHARACTER SINK$READER STOPPING $NOT A CHARACTER SOURCE$AB:, 2$:'  ͅ:'+:)2K{v!xq!B*8!K*6>.!1r+s+q!4r+s+q>``Oͤ\͜t͜+:-!|.[ͺ:-]A! ͍+:-|:, s|A+!6ORTED$BAD PARAMETER$RECORD TOO LONG$INVALID DIGIT$END OF FILE, CTL-Z?$CHECKSUM ERROR$CORRECT ERROR, TYPE RETURN OR CTL-Z$INVALIDP 3 >%">>y 6y/>>!5q*5&T ̀ ̀!7p+q͐*6 T T!9q*9&T!;p+q*:`28!=p+q*<`28!?p+q*>`28:-!|қͩ!6:-¶[!,6:,/>!,/Hͩ:,<2'ͅ:-:,=H!9"1a!8 w#  +6# *#"~!ͼ G _> m> FORMAT$HEX$$$$NO DIRECTORY SPACE$NO FILE$COM$CMI$START NOT FOUND$QUIT NOT FOUND$WRITE PROTECTED?$$$$NOT FOUND$COPYING -$UNRECOG  `28!Ap+q*@T!Cp+q*B`!Ep+q*D`!Gp+q*F`28!Ip+q*HT!J6J T ` T!~2 *!#"!NC2 N͏2 N!6N!6N!6 N`2 NͩN!6N! Í :0O+ !q:Og :Og !6:'2:'2>#'w*M͎ *M͎ *M͎  + !*6*%}2"ͫ *B * 6z!q!6> !;*&: :4>!4>:.<2.O* :,w:,?]!|6!q!,6?!:.w>g!q*&:2Ö !:2!6:! 2!6:ր! *& :%B 2!4þ *%"%:!-6+6 !.6:. (:. "!,6> :2*,MEw!-6!6!6>!j*& 6!4O!}6!6#6#6!.6*p+q*T> >/Ҥ×!p+q*DM͛:̀ ̀:2:!!K:*&L Ǹ!4!K6 ͐u6N!6N! 6`2 Nk: 2:s:'2 !'6* M : 2': ҽ:ғ * *&"%!q:*!$ ͩ :G ::'HG : ® >!Ҥ :{2:m :2!:ڄ !:2*~!}62,:, :,]H/p:,A2O>:, 2,ͩm:,S:,QH:<22,/ ͩ!4¡ :$ !4!"%!q: O !{4>!O :!{O :2*'M!8 ^#V%!t ͫ *%B :w*,M/Ұ:.ڔ:,*¤^ç>2,:,:•::.xA<2O>*,M:,[͈!5!-6!s+p+q+p+q:=27 ** w*#"*#" !"!*Mͷ!6:!ڤ *!*DM2ʓ :} ͩ*!:+<2+2 Þ:  2 : ҽmҽw·>ͩ:* M :* M : >!:=2> >>!m !:w>!ҡ !5 + Ì ë *M+ *M+ : !{6 : 2*! q: a/>z! /H : _2 : ! q: :, H/2,`2,02O> 6!6`2,02O> `*&*& !s6*& :wÓ2,:,_„!%#"%` Ø Ø Ø Ø Ø ͩ` *M6` !6 ` !6 ` !6 ` *&T` !6 ` !6 ` !60 ` *&:. !6#6>!چ!6:<2O>/:!O!E *MxHT!:w!-6[l͈!5:2,:2!"#*6:2Ý *!"!!4J !"!!%}=2¾ !6!"%*Mͷ!6:!8 *%B ": : *!5+N!L ~2!~4:2)>>!R*M͂O:2~!6:<2~>!z*M͂s!6!6> :~:A/>Z! /H:  2 : :(=O>P:!mHPwG>͛>! 6:2 *(M!& ^#V!!z8 *!*,6=! 6>'! ڟ ! 4Š!&p+q*% !*r+s+p+q*)~$*)*' >*'#"'*)#")ý>2,:!#!T` !6* ` !6* ` !6* ` *&T` e   * :2!q:!w҄  +4:,[’͈ :.ž!.6:,.2,O/:. :,* ^>ë:,[͈!5!-6::<2*6 !"!4*DM,' ͩ*%"%!4 :$ :<2!"%:ʌ !:2:2:ր2!!q:!wO!L ~2®*&L :w>!:¿!4!6>:<2!K> *&L N 2, !p+q!|6 /:,!,6! 622:J! 6:2D2͛w?>! 6!26q21}21p! 6Z:,z>>z;!i/N!P, ~#FO! +q,p! +^,V !l/s#r*+~!!/w,6#6j/l/w*+~!.w@/,q#pn/YPX!i/N!, ~!K/w.iN!, ~#F!L/w#pͷ\!<:8ҟÏ:8¹:=µͩ͐:8<2<:8_!  :=<2=͛|! O!? DM! 4³×: =2 2 ͺ: =@{>ͺ* &? DM͂=2 e{>!! 6: =2 ʉ:! 2! : ͩ!6ͳͳH2*"!>!ҹͩ>!ͩ*%} ͪͫ *Mͷ:8ͩ! :\:\=O͞:] !ͬ,/,* ! r+s+q! r+s+q>! r+s+q`i! q* &1 Z Z Z! p+"4q23:1!,Ҧ!15q20Éb!2ʸF:,>>!.p+q:,!,6*-DM͛:+!+6 :,02/͐!>6> !>@*>& ~2? 9:> 2.̀*?M̀!>4 >!T:=2Z:2:}e>!x:=2~:2! 2 j:! !! 2ͺ: ¥>: ,ʶ{>* & ~ ! 4ú!# 6:# g* & ~2$ O>*$ Ml l͠  ͠O!>+!s!B"@&Q!"\**""B&B "&qj*  1! p+q*  1! q* &1! p+q* =2 ! p+q* =2 =2 =K! q: O !+6* & :/w: <2 O,:/>260O> H:60:6AO>Z$:6A 33Hb!2wqO:Œ:, ʛ!Ap+qA͍*@DM! :-:,=H/:2_og_{ozg))) >!$ /~,H~:H~=H~*H~.H~>H~<H`* & 6d! 4! 4!% q*# & :% w!# """:(!29Ҧ6:!ҷ͐/*,M ÷:9 ``:2d!:6#6>!;+*;& * : ! ڣ: O!' DM͎:! ! O!?`i q 27O>:7!/!86: =!8*8& N !84³    :7Ð͐* & 6$͛UCOPYRIGHT (C) 1976, DIGITAL RESEARCHCON:RDR:PUN:LST:DEV:VAL:TTY:CRT:BAT:UC1:TTY:PTR:UR1:UR2:TTY:PTP:UP1:UP2:TTY:CRT:LPT:UL1: _{ozg) ^#V|g}o i`N#Fog H 1=0/6#6*+~O͑ *+~O!,, *+~#Fx*+~O!h, *+~#Fx*~O4!( s+p+q!* 6!, 66:( !, !+ 6!) 6>!) ** &*& *) & !+ 6!* 4+4ª:+ :, !, 4–>!. p+q*- ~:*~$:;:;H/$!:6!;4::_6f/\8 fP*#"%V*"%ͫ 5b͐#&!<6#6*M DM: 2 :! 2! j! 4P×: ! 6>! j: O!' DM͎! 6> ! : 2  Z: w ͐Ðyͩ*Mͷͳ2! ͠ <:8Xͩ!6!"%!"#*Mͷ:8…IS $ =$BAD DELIMITER$INVALID ASSIGNMENT$BAD DELIMITER$BYTES REMAINING ON $: $FILE NOT FOUND$RECS BYTS EX D:FILENAME.TYP$!9" ! - NZ*- #"- :Z!/ 6#6>!0 >*0 M/7!/ 4!0 4:/ !1 q!2 6d!4 6:2 ʣ*1 &*2 &͘ !3 s*1 &͚ !1 sPY! ͘ 0OZ% _ogDM!>))덑o|gұ =Ÿ ~ ¸ o&og Ͱ Ͱ Ͱ DM"= =YP 1*S!:6̓!E~1+DIRECTORY FULL$! wyN*q! N * 6$! sN* !s,r*w! 5O`1?!7 ~25 *3"1*8&6 ~25 !66> !6 *6&*1~29*6&*3~2:O *8&6 ~26*8& *8& w*8& :6w!7PRESENT$!6>!2.N,Fc->!64N * ~!w \.4>9\60-4>9\60-4.~sʅDISK WRITE ERROR$!2 s~!4 Ҡ!4 6:3 0OZPKZj{" AOZ͎OB!5 6!\6!h6?\: ?: ƀo&"1!;Þ!;q,s#r!?q,s#r!Bq#p -^,V!Fq#p-^,V!Ew!Hq#p-^,V!Ew!Jq#p-^,V!Lq#p-^,V!Nq#p-^,VE~×CLOSE ERROR$!9MD!Xq#p! kb͆v4+6  ::!9 !66 !64¦!84o^{!76!5 :7 *7&6 ~25 j*5&3) N#F u*5&4 Nd KZu*n! q* #" >Oxҽ÷JCL BUFFER OVERFLOW$! N,F! ! Ny-4>~COMMAND TOO LONG$! N!] ~ !6b*6&*1*6&*3 P!66 [:6 2;!64$!54:;w!55:5 25!5 !Pq#p-^,V!Ew!Tq#p.Ws!W5~*R~*Tw*R#"R*T#"Tà $!Zq#pERROR ON LINE $!ZN,F001:$\$$$ SUB5&5 N  uAOZ:Z!66> !6 *6&*3~ :6 .Z*6&*3NZ!64§ !742 :]?:e?HwO>!6& 6#6.6! ~.6! wO~ ~^MO͉#~ ~$0! wO> ҒÌINVALID PARAMETER SP4 *5&6 :5w!66> !6ھ*6&*1*6&*3 w!64–*5&5 6*5&4 6*5&3) >w#6*5&5 4*5&3) *1 !XN,Fi`&!N* ~!w !6-6!4*~!ڸI-4=.N.q/*O~!/ҡ-4~ڌÆPARAMETER LIST TOOO &%W%ç%&%W%,"&!+(&%6%$,"'!'(÷&!#(&%6%$ç%z8O!( &%&!'&%6%$,"z$ç%yO!' &%$W$ ͬ*5&))))6 "3!?r+s+p+q!@6>>; ʊ *<*>͘ !As*<͚ "<PY! ͘ ">>>; ##~Hy uÇ !@6:AECIFICATION$l! 6! 5~ʯҗ~,w×! 5~,4N!] ~O͉öN͉#~ .w.N͉* +" !~~͋ +s#r!66>!69*6&*1~2*5&4 4!64:5 P{ >!5 ' !76>!7' !76#6:5 ==!8$ *8& LONG$n!N.] !Ny-4O.N.] !~..4.-N.] 6SUB!R6#6 * KB͗.N,F+!E~NO 'SUB' FILE  = ͋À*ʐOGyO~' ~w# «&  og *9 Ð>/ȷ#^#Va{ze**J |*: _+":% ##=¨:G> ÷\:u\2u!"9 = ͐!F ! ͢!V ! FILE OPEN ERRORINPUT PARAMETER ERRORFILE READ ERROR*MEMORY TYPE MUST BE SPECIFIED (WCS OR MAP!"9 !X}¼ :r/: ʥ !e 2|  != ! B w : <= am=*w* Fs#rͬ *&*(\ VBPM ͳ K K K_g\K]g !232*9 =  +"~& +!ͳ~O`Q`H[BVDQ#> b>b>b>2J M!"~#A|0È:* == )am z* "! ͥ" @* ^#VS zW*r#s*+"AFROMH!TO@H1FOR1H!WA H1LSBOD!DCXB)INPUT PARAMETER OUT OF RANGEWCS OR MAP NOT SPECIFIED_s# x¹ LOADING: F TITLE: INPUT PARAMETER ERROR !  z!͢:*vLOAD COMPLETE !!+  :͜DM:% * * 2z* ^#V#" "{* ^#V#" *{:͋͋ 0l|z}zͳF#^K¦"*>^#V# x }|w# w+ >>¾7O!ҽ~*!ʫҥ)Ü " p*!, : * :**"* ͥ^ASBFTQCLEARrNOCLEARNOVERIFYQLOWERQUPPER!ULAPAGE1MAP1WCS}xɯ2>>>2>=!F ! ͢!V ! FILE ::z=\ͥ*+"" " !, V#^ͺ+r#ª:y<=)þ2& *"' !< ") *' +V"' *) :& /w+r") :yɯw# x &  "9 # #&  ~ ,=() Ɂ*9 ";  }o|g{_z_zW~z#m ! ]#V"#" ͥ" **J ))))*"**J )*"*! *|L}**|[}*|*  J |!=  * >2r"))))>g""!""!""}h2>2"G:yOzW{_ ͕* "! " ͥ" ͯy2xͨ2y@*|e*|]]* "!"͈=ʅaem! ~ ʐ #Æ 6.#e! ͢! ͢W* 6OBJOBM! ͢!͢N> #ͷ W*9 6^!͢ INPUT PARAMETER ERROR ! -COPYRIGHT (C) 1977, ADVANCED MICRO DEVICES!9"v1= = v!] !\j v MAP MAP NOVMAP ͐ J " * J " !N# 6 !, :x_:xO>ʼ=O::>2ɯ2>2ɯ22>22>22*$! x ͒w+Ç >>"c"!9"1*cO!"c"***c" ##~ ,.=() ɀ0>2>2}*wɯ22>22>22>2ɯ2>2ɯ2**s#r,:/l  : /w+r" :G:OzW{_ $ͪ*1 "G!3 "Kͺ"Iy2ͩ2U*8|z*>|rr*1 ">!">͝>1MAP1WCSAUWCS1MOSQINSTR!ON"1OFF)QEJECTAAFROM2H!TOZH1FORKH!WA:H1LSBi!DCqB1MAP!ULQLOWERQUP-COPYRIGHT (C) 1977, ADVANCED MICRO DEVICES!9"1  *~!i ͍ !\s ͍  MAP MAP T :AG!))))o*"}o|g_s# x>!nF!FN> #<*6^!FK INPUT PARAMETER :l&c>2ɯ2&c*"*~6 wW~OʆQʆHʁB|Dw#> È>Èʚbzn{z*G*8) |*@: _+"@: ##=½:@G> \:\2*PERQCLEARqNOCLEARNOVERIFYaVERIFY&_c1*"kkk}*w}** *" !ͼ› :F` ʧc !e͍  2| o ! ! B͍  f :FC/ Q>'b-COPYRIGHT (C) 1977, ADVANCED MICRO DEVICES!9"1 !^#6 !PH*"&^S*ʹ̿cOGyO~ ERROR >È>23M22~#Aң0ï:7O!~*!) " —e*eWe &| " *(| !\ ͍ *w2V * " @0m ̀>'*bIn {I*1 "G!3 ͺ"IU*w}**w¯}x*c>ë>?ë>>ë>=ë>:ë*"&c#k!p*"n {Q>'b n!2W *VERIFY COMPLETE 8!͍ ! ͸ :D͝DM: *I*K2*I^#V#"I"ʜ~w«# ~« og *c>/ȷ#^#Va{!Y*&+~+  _ \] // 60|}WF#^Je"c*cQ^#V }|҃͒w#*I^#V2 *>ztœ#{t*<+"<AFROMVH!TOH1FORpH!WA_H1LSBD!DCBASBFTOQCLEARqNOCLEARQLOWERQUPPER!UL&c#p*"":.$"))))>g""!""!""}ʁ2*K^#V#"K*:A:A:=qͺ *<+"<"K"I! V#^+r#¿:<=)2 *>" ! " * +V" *QDELAY1APAGEH1BFT1TPMs!LN0TABH!CP!CS!COADATE2RCCqPRINTER.ACON:FALST:PARDR:ZAPUN:d APAGE1MAP.1WCS%6}xɯ2F>>!>2F>=!>26"86))))>g">6"<!": F TITLE: ! W !W N> #g * 6^!W - INPUT PARAMETER ERRO# x }|Ҡ ͯ w#Õ ͯ w+ä >>ɯw# x¸ " # # ~ ,=() Ɂ0: AG͡ og *>/ȷ#^#Va{:P!wxw*ͻ͙+g~͡+ft~Oʥ L !W *>|g$L  *>V#^|gL VERIFY ERROR/ DISK  WCS  MAP *G"M*Iͺ*%1r>ʍa*|\*|J+|**||_ɿ*"*|ʎ*6":!"<6"@6}ʧ2A>2A"4 ÿ*4%+OGyO~ ~iw#  ! ))))o * " }o|g{_z_zW~/ #L * 6OBJOBM! ]͍ ! ~  #u 6QʥHʠBʛDʖ#> ç>ç>ç>2 M!" ~#A0: 7O! ~* !) "  µ͂* ^#V"G#"Kͺ"I*M*G) ))))*>">*M*G) )*>">* *G|M}*:*G|\}*<|*Io ) |! o ͍ *I"*|+"!"!4r4r4r 4r×!1>2ɯ2AFROM  og * >/ȷ#^#VA!hrh*  +X~ +Wa{h ~OʟQʟ.#e͍ !s W ! W ! W !W N> #g * 6^!W - INPUT PARAMETER ERROR ! W -! !/ W -!L FILE O͂t͂   _(\ ](LL S0-|;};tF#^ g͂"*) "I*K) "K!N# 6 ! :_:O>ʽ=O:@:@>2Dɯ2Dɯ2B2C>2C2>22*$| !8͍ H!TO4H1FOR,HAPAGEH^@))))>g"@"@))))>g"!"ͻ[K1MAP1WCS!UW1MOSQINSTRHʚBʕDʐ#> á>á>á>2) M!"~#Aһ0:@ O!~*!) " ¯v *-COPYRIGHT (C) 1977, ADVANCED MICRO DEVICES!9"1 r!X!\f r X FR 0 TO 10X 2E„:PEN ERRORINPUT PARAMETER ERRORFILE READ ERRORINPUT PARAMETER OUT OF RANGEWCS OR MAP NOT SPECIFIED _s# xi VERIFYING: ͡ʒ" #È#͡™~ ,.=() Ɂ*"͙͈}o|g_s# x# x }| w# h v    _ \ ] @ @ G 0! |/ }/ h F#^ [ v "t *t ^#V2@’}x^*>Î>?Î>>Î>2>=Î>:Î">ͻ*>&,OGyO~͢ ~5w# v ! :C" *> 0:B,*>́ !W *GL  ! L !W *>|g$L  *>L !W *GL ʌ!e!"!ͽ \!6c :YN±\\i2|:•r*  w+ >>!N# 6 !Fc!cN> #*6^!c INPUT PARAMETER ERROR !c!c!c!#c͎͎ 0o|}}}ͶF#^N©"*" ##~ ,.=() Ɂ*))))>g"K͇"O͇))))>g"M1MAP1WCS!UW1MOSQINSTR͇}x*>>?>>>2S>=>: PAR PAS PUSH Q QIO0 QIO3 QPT R R0 R1 R10 !Wc:ʗ1\{!q]!q~ ʽ#ó6.#e!pc*SVWSVMFILE TYPE SPECIFICATION ERROR DISK "}o|g_s# x# x }|>Mw#3 Mw+B >>ͪV< #"*msOGyO~P~|w_# 2__ og *>/ȷ#^#Va  R15 R2 R3 R4 R5 R6 R7 RADB  RAQ RARB  R-COPYRIGHT (C) 1977, ADVANCED MICRO DEVICES!9"T1V 2S!ea>2S!e­\ʶ2|:SV!_DIRECTORY FULL FILE WRITE ERROR FILE CLOSE ERROR ERASE EXISTING FILE (Y OR N) ? WCS OR MAP NOT SPECIFIED SAZ*6^!ͥ INPUT PARAMETER ERROR !ͥ!ͥ!ͥ!'ͥ!ͥ*TSVWSVMFILE TYPE SPECIFICATION ERROR {͒!ͺ*+ʩ~+èͶ~OQHBD#> >>>2K M!"L~#A0E REG RFCT RPCT  RPT RQPT S SHONE SHZERO SINX SIO0 mͪ¿*Q*K+ʹˆÎ\*O|+|*K*M ||ɿ*K"K*Q |*Q"Q*O|+VED>FILE DOES NOT EXIST FILE READ ERROR WCS RESTORED MAPPING RAM RESTOREDV:KD7O!KC~*L!2,)# "L *LͶ N N N_j\N]jSIO3 SLN SMTC SPF SURS SUSR T TCM TCMC TDC TDIV "O!V"QVVͪ¿ͪ¿Vͪ¿ͪ¿!V+!6ͥAFROMH!TOH1FORHAPAGEH   TMC TMUL UMUL XNRS  XOR  Y  YBUS  Z ZERO  6.NL!q~ .O~_>ѣ.w-~ ¬6 .6!~,.Ni!4°!q.~.N͉!q~a/O>z/!q!.~_w. ! 6!)~̞ì!6#6ͣ.NJ!6>!.N,F! KBW!N,F!)w>ܞ!N,F! 6!6P͝!N,F!wOͰ!~ 6YT !~,F!,Ox!G~,V_zN P% % !6.6#6.N,F.q#p͵?" Y҂  -^,V*!*q#p-^,V6!)w!,q#p-^,V6!)w!.q#p-^,V6!)w!0q#p-^,V*!2q#p-^,V6!4q#p-^,V6!6q#p-^,*+"{_z!w-~/7,6.~,F,,Ox.q#wú,~G.N,F.q#pú.~f.N,F.q#p*+"t*#"*#"!N Š.N@@@@@@@  YBUS  Z ZERO  ~ɯ!_%1Ø!~.N.~,FOxI*+"{_zI1Ø!6.4N %. ~O.~nBO,~Ґ6g*͉* "!4ºͣ!~,FOxԠ-N,F! ~!w;*#"!~L!6#6!NJ!^,VzW{_ [+!s{C.6!~-ڬu !~,F.,Oxҙ .6͵6U ͚ $.wʷ NͰä !~,F,,Ox 1Ó.N,F.^͕!wO~ ._~/ѳ/2V6!)w!8q#p-^,V*!;6;y 6>*>ɯ6!q^*!q#p-^,V* *!q#p.s!5~,F.q#pÔ.N,F.q#p*#"*#"*+"*+"!N !~,F.,Ox ͝!N,F,^,V͕ý!~,F.ږ,Ox ͥ!N,F.^,!6 ͉!6%.~.<$.wҭ%.N.= 6 !4N .= ~O!~ր!NJ>!64N * ~O!q#p-N,F$. ~.N,F! KBWĞ* "!4xC!q.~,FOx@.N,F! !Ny*#"!q#pi`KBq!~ !N.P !Ny.4.PN. ~#F!Ox1 1Ó \ .~ J 6  .6 ~V 1Ø 2 !q,s.N,F.q#p.6!~/.O~,V!ʝ*~*w*#"*#"zYïFILE ERROR$dY!q#p-N,F.q#p i`KBq!6#6,6#6 * 6 * 6!Vͭm͵!~R .N,F.q#p.~,F.Ԗ,Ox> .6#6Ò .~,F.Ԗ,Ox.q#wÒ .N,F.q#p!~,F!,Ox.G~,V_zچ !N,F!!q#p.s.N,F$. !Ny!q#p,s#r-N,F_!N,F!6#6!~,FOx!6#6?/k*+">ɯ!~™*#"! Ͱ@͝!)~̞#BAK ͼ.NJ!N,F!q#pq U$$$Rͼ!NJ !q~ v.4.~ ‚.,_z *#""!N.q!N.P ~!^,V$.O~!_~..w/q -4*#"Û !~ *+"͵.~!6 .N-q!^N,F!q#p!q.NJ!N,F͉!)~V!N,F!)~̞GNEW FILE$>dYVBAKSͼ!~,{NJ{$$$xͼq#pÒ .N,F* "ì !q.~Ҩ .N.~!~,F,,Ox 1ÓO͖ !w P.N,F.^͕!~ ì !~,F!,Ox 1 COPYRIGHT (C) 1976, DIGITAL RESEARCH!q,s#r!q,s#r6!#q^* L L!$q#pY !$^,V*!&q#pN,F.q#p.6#6.6#6ö.N,F.q#p!N,F!q#p.6#6.6!~J!~,F.,Ox.w.^,V*"OKB !N,F.q#p ] / 1Ã!4N . !Nym*+KB !O~L  ͉ ͉!N,F.q#p!~,F.,Oxڑ %t 1Ø!N,FO͉.N-^] /ڃ.~,.O~,V_z.s#w.6͵.N,F.q#pG~M.O~.6.~,FOxP!4N%. !s,r*w !N.#Ž6͛ ~0.wO> N.q#6͛ !~0.wO> .^,V{_zW ¼-~,FOxGi`!N "͛ å?.6.~B>-w.6!>p+q*>2>!>p+q*>2>!>p+q*>!>q*>&!>p+q*> ͚ ͚!>p+q*> dó!6#Ø!6?Ø!6> ͉ ͉!N͉!N͉Y!6.6!6͛ %.N$.qEͫ ͡ !~,N*qüHͫ ͡ !N$.q)Í1eAMDASM OV0 !\6. ] -,!h6!|6\N!6#q#p:ƒ* \2* " !N,F! "W !6#6!N,F,q#p!N,F.q#p͛ ͒ .N.q.6͒ ! .N.q.~,F!,Ox!O~,V_z P ͦq.6.N,F.q#p.~Nl Y!^] /%ژ͛ ͚ ? !6.6#6͵ͦ .6.~,F!,Ox҃%~S¶ Y#6!N,F!q#p͵~C$ ͵~D3 u~KBmu~LN ~P{?h.6͒ ! YxͲ  h~T‡!>q!>r+s+q*>M!x ^#V*>>2 ?ʽ: ?@2>!>6:!>6 #6 ! ?6+6>! ?* ?&*>~2 ? * ?&> : ?w! ?4! ?4%.N,q$.N%.q`!~I%.~.<$.O~.w ҵ!~2~g ͉ ͉!6.6#6muÝ~Ž,~,FOxʘͥ!Z!" *   DEF SUB EQU FILE NOT FOUND$FILE EXTENSION ERROR$END OF DISK DATA ERROR$NO DIRECTORY S !6>!1 % 1Ø> H " =! !4 !6.6#66Yf !~,F!,Ox` PB ͓ B !6 ͻ !6 ͻ !6.N .N.q.~,V_z-s#w!~.x.N.P ~!w.4ͻ Ö~WU ~Z?BʘY ~‹ËüW! ~Uœ-N >ʖ.w~ .N >ʬ-O~ 2 ! -N >!w?!!~A,N,F.q#p!N,F!q#p͵?* ?&> 6.! ?4+6 > ! ?G* ?&*>~2 ? @* ?&> : ?w! ?4! ?4: ?=O!> ~.\! ?5* ?&> 6$> oz! N,FO͉Ý~ šg Ýͻ !~ °6  969.~g Oͫ `!~RV.6!6 >!ڃ .6 >!PACE$NO DIRECTORY SPACE$CON: LST: 18;D9)T .: -E:29*9&: 6 ͚':8k͈":8u͊>,9l8!w.N!w.~/.Ƕ-w!6!wx !q.~.%.<^O> $._~*~#FOxGi`+"!N,F! 6*+"!N,Fx? Y͓ !6͵~F3 Y &~J¶ .N,q Y .N .q!4~.v.N.P ~!wͻ X.N,F.q#p?q: ?! ?6* ?M! ^#Voooo!?r+s+p+q+p+q+p+q+p+q.*?DM -  .  ! 66͉!6!)~3$.6OØ;!w.~P.N!wͻ 3Qͫ k2 .~-}͛ .6.~!8Ҍv!>q*>&!>q*>&!>p+q*>2>!>p+q*>2>!>p+q*>!>p+q*>Gy,w#p!6*#~ *O~ ܞ*~!wA@!wG5*6* ~!w_-N,q`5!6 %.6#6!N,F!q#p.6\ LIB m4>?l8'* ?>w#60* ?>w#6K mK* ?>w#6!?6#6:7<2?:?{:?2?:?2?:?<2?Y:?<**I?DM -Š *G?DM:>ʩ *>M~*I?"C?!??6E *6?> :??w  !N?r+s+p+q!P?6!R?6*K?#~: *K?~@2R?!P?6!O?6>! -‚  *2? ~ʥ  *2? ~=*2? w*2?DM*2?DM:> *'?>w#6.*!?>) ^#V - *!?>) ^#V".?!-?6:-?G *.?) ^#V"h?*^?>) ^#V"j?*h? ~2p?ʌ:p?= *h? w*h?DM.*^?>) ^#V -N:p?= *h? w!p?6*p?&*j?~ʁ:p?<2p?g*?DMͺ*? ~ʿ*?DM.* ?N#F!> ^#V -· *? 6* ?>76%h* ?>7*?s! ?r+s+p+q>!?w- :p?l?l8+!7>K8*^?> qÙ*^?>) ^#V"h?*b?^#V!8*d?7"l?*^?> ~}.*^?>) N#F -m*h?DM> ?w#6:?™:7<27<è:?=O>-8!7 ^#V"?!?6> !?*?&*?6 :?<2?¿*?6 *? 6*? 6*? 6*? 6O?S *P?&*K?~2Q?.:Q? H> *O?&R? w <`iwI *O?&R? 6 :O?<2O? *P?&*K?~.j :P?<2P?!O?6 > !O?ڵ *P?&*K*0? w*0?#"0?*.?#".?:-?<2-?*4?+"4?>K8D *!?> :-?w*'?*%?s#r Z S  !=?r+s+p+q+p+q+p+q*6?!@?s>K8Ґ :@?*^?> :p?wÙ ( !{?r+s+p+q+p+q+p+q+p+q!?r+s+p+q+p+q+p+q:7<2?!?6>!?:?*?MD9:?=O!7<8>?l8H}*?> ~H.*?>) N#F -2*?>) N#F>!?w8g*?++M>-8/!7) N#F!*l?l8 *h? ~ʯ*h?DM *h? 6*h?DMͺ *h? 6*^?> ~*h?DM.*^?>) ^#V -*^?> ~ *h? 6*^?!?6*?#~:*?~@*?w!?6!?6>!?~*?&*?~2?.:? Hh*?&*?:?w:?<2?t*?&*?6 :?<2?$*?~2Q? ʠ *O?&R? w <`iwë *O?&R? 6 :O?<2O?o R?!g?r+s+p+q+p+q+p+q+p+q*`?!^#VÙ*^?>) ^#V"h?*b?^#V!ҋ !@?6Ð !@?6*@?M! ^#V*8?"A?!>?6:?:>?l8 *A?N͚*A?#"A?:>?<2>?« *8?"A?!>?6:?:>?l8 *A?Nͪ*A?#"A?:>?<2>?382?:?<2?*!?6!96!869͖:9 O:9 N:92 9!86ͷ!:_:9h!96h 9͖9mҜ9?r+s+p+q+p+q+p+q+p+q*!?!,?s>K8ү!,?6*,?M!M ^#VS *#?"0?!+?6%?:+?l8 ͑*0?w *'?:+?w#6*0?#"0?:+?<2+?> 6Ù*^?>) ^#V"h?*b?^#V!8*d?7"l?*^?> ~2p?:p?l?7>K8*^?> ~z.*^?>) N#F -j*h?DM!p?>?&*?~.•:?<2?!?6 > !?*?&*?~2? *?&*?:?w:?<2?*?&*?6 :?<2?š*?!^#V*?DMͺ:>8*d?7"l?*^?> ~2p?:p?!l?w8; *l?:p?K8*^?> q%*^?> ~x .*^?>) N#F -Z *h?DM *h? ~=*h? w:p?l?l *6?>) ^#V"G?*:?"E?*6?> ~2??*6?>) ^#V"I?:??I?7"C?*8?"A?>E?l8ʷ *A?*C? w*A?#"A?*C?#"C?*E?+"E?:??<2??O>Ҵ .L9$*>9"?(9&9_8 *? q#p!?6̈́,2?:9ʿ:?9LÓ**9 *(9w**9 *(9#w**9 *(9##N#*'?*%?s#rS *%?"4?>K8) *'?>w#6*!?> ~2-?*!?>) ^#V"2?*!?>) :-?7".?*#?"0?>!-? *!?> ~­ .*!?>) N#Fl?l8!7!q?s *h? :q?*h? w*h?DM.*^?>) ^#V -¼!p?>l?l8!7*^?> ql?:p?7*^?> qÙ*^?>*?͇* ?>76 *? 6*?DM9*?DM*?DM+I*?DMͺ* ?>76 *? 6*?DM/҅*?DM+8+!7!q?s *h? ~  *h? ~!q? *h?DM *h? ~=*h? w*h?DMͺ *h? 6 *h? ~!q?*h? w*h?DM.*^?>) ^#V  Fq#p%*(9:3!?w:?<2?>(9l8+s#r:8ҁ*? :?w!9:?ʀ ?&-<) > 7+s#r!?4W>9?_8*?*?N#Fq#p*?++"?*?++"?Ù*>9"?!?6>!?*?&*?*?&*? w!?4!86>,9l8ʕD99 !?p+q!?6>!?ڽ*?&*?6 !?4¡!?6!86ͷ!A/>Z!9/H~.HF*?&*?:9wͷ!A/>Z>!?*?&? NL!?4 L L!?6:9!?K*?&9 NL!?4- L L L*.9#".9!96:8v͂!86!8:9Ҍ#r:8Ҙ*? :?w>!?ҧ!86. 99 -¿9mA9L#9$*9M*9͕1:9?7"?*?&*?:?w> ?l86*?! 7"?!?4!?6*?&*?~0:?Hl*?&*?6 !?4;!?r+s+p+q!?6>!>!?Ґð9Lc!?6 **9 &9a8"?*?*(9 w*?#*(9# w*?##*(9##N#Fq#p*?>!?w:?<2?:?<2?>(9l8!"?}29ͷ!2?0/>9!?/H~A/>F/HHs:?AI:?02?Q:?72?*?))))*?& "?:929!86 !96*?!"!9/H~0/>9/HH~.HF:?<2?C*?&*?:9w!96!?r+s+q*?&'<) ^#V"?*?&-<) ^#V"?"??? L!94v͂ L:8Ҥ͂!86:9<29:8H*697D9T ͂b!?6#6*?&`; ~2? ]:?9 :39 :49 *5!86. 99 -5\!86. 99 -SÉ!9695%/҉ !86. 9?ڪ*?&*?*?&*? ʣ>!?4|>!?qͷ! ¼ñ!?:9ͷ! *B9+"B9!?q:9:?291<(9_8!96j +s#r>?l8+s#r**9 :?7>!?1õ`:8]*? :?w:9!?Y `ð~!86. 99 -uÜ?}29!86ͷ!2?0/>9!?/HҾ!?70_"?!86Ë!96!"?}29>!9??_8*?)"?!94!94*?!"?}2_8!78?8*?"??o8*?"?"?*?"?!?6>!?*?*? 2?*?#"?*?#"?!?4·>?l8"*9>*?"? K:?O>2?!?6:?!?H L:?<2?!8A L͐!?6!?4V*?ML!?4!?4 L͐*299D9T '<-<_89 -$:8/:8/ҫͷ! ʫà:8:8͂!86:8/!8!86:9:8:8/ Í>,9l8PAGE SYMBOL= CHAR= *** ERROR *** FATAL ERROR END END !?q*69?D9T !?q!?6:?!?ځ L!?4k!86. 99 -Ž9m9L­9$*>9"?(9&9_8 *? q#p!?6̈́,2?:?<2?:9:?X99!86ͷ!2?0/>7!?/HC*?))):?0_"?!86:929:9P!96!96*?!"?}29!86ͷ!2?0:?1H?:?*?"?*?"?y*?">9>!?r+s+q*1<"? "?!(9z8Q:?e29 :?2?>!?ڙ:?!?~*?&'<) > 7+s#r*"?+<1<_8"?*(9"(9&9o8"?*29?D9T *?"?*29*'<*?DMD9T *?"?*29*+<*?DMD9T *?"?*29*(9*?DMD9T *2f*,9DM <ͨ <D9T :8u͐*69 <D9T :9<29:9<29O:8Y LB*69(D9T *69DMD9*09DMD9!?6>!?ڜ L!?4‡!?6>&!?ھ*?&; NL!?4¡:8& 2?*?Mb!?6>!?*?& NL!?4*.9DM?ͨ!?6L:**9 *(9w**9 *(9#w**9 *(9##N#Fq#pU!86. 99 -Lu*(9:3(9l8+sҟ*?):?0_"?!86!94h!96*?!?r+s+p+q!"?*?!'7"?!?6>!?*?&*?6 !?4!?6*?*?7!0!?s* 9DMD9:9*,9#",9:9d:8Ұ*69D9 T *9M?ͨ*69?D9T :8*69D9 T *69 9D9T : ^#V|!9s>K8:9HҨ%hh&:828!86h&!86h&m$!86h&g!86h&!?6ͷ! %6&!96*9M*9͕1:9&> OCTAL WIDTH LINES LIST2 P1 D P2 L1 NL O NO IL SO OB BL M D9@!@6<*-(c(|(((())5)@)M)Z)])))))))))!86ë':8ҳ*:@^*O$9)'299D9:@!8Ҥ*"@9:8ң!:8ң!:8Ҡ!͂!86:?ï!!86!86> :97":?2?:8!*B9~2?*B9#"B9:8!:? !÷!!864":8!" 2@*@"@:9<29'!96d *9M!* ^#V=ͭC$-:k&09-:D9!86:9!8w<*=ͭG$9k&!@6<*=ͭ8Ҩ*69D9 T *69 9D9T  L͐!86!86!965 *9M?ͨ:8*69&D9T *69?D9T  L͐*5U8:8!?H+&>:?2?!86!?6:?!?O&͐!?4;&h&!86h&%%%%%%R&>!@r+s+p+q+q!@6> NM S NS H Q W LN L2 .DEF.TBL.SRC.TBL .P1L .P2L .OBJ .TBL .MAP !?6>;!?ڍ$*?&T$<:)'69<:D9!86:8Ұ* L*:8**69DMD9:8 +:@*Y$:)':@*^$:)':@ +:8/ ? :? H"!!86'" 2?:? 4"!?6 p":9H":?29N":?29:9=29:8l":9 g"÷!!86:9>Z!?ҁ":?2K$9k&499D9*49DMD9!86<*=ͭ<:k&69<:D9!@6!86<*!86<*=ͭ:k&D9T ?D9T :D9T :9<29!H9w8چ *09`:D9H9~>H9l8 !86<9mځ !96 !@ڛ&*@&*@6 !@4&:?«&!@6ð&!@6*B9~2@ :@.:?H/H:@H:@ H '*@:@w*@#"@*B99 6 !?4r$!?6!86ͷ! ʻ$:?<Ҹ$*?&9 :9w!?4×$:?$:?=29:8!8$:8$͂!86$g!96>!9 %*9&'+c$9)':@ +h$:)'!86!@s+p+q!96:9%U+*@:"9J+~,*@:"9wx,:9V~+:@{+*@:9t+~,*@>@wx,:?:?2989K:D9*898D9T *899D9KT *89DMD9WORD LIST NOLIST TITLE EJECT SPACE END &:9:D9*:9DMD9!@6<*:9/!8w<*:828<*:828<*:828<*<*=ͭ:k&<9:D9!96*9&`: ~2?² D9mڲ !96 !86:?!"@96 2? :8 >@9l8 *@9: :?w*@9#"@9ü !"@9*@9: ~2#"B9!@4ð&:?('.*@DM*@ - '! @r+s+p+q+q:@I'!-:" @O'!9" @* @~ * @~.H҄'* @*@ w*@#"@* @#" <) ?@q#p*9&-<) ?@q#p!94$"&9>&9l8"(9Ͷ !?p+q!""?!?6>!?s%*?DM*?mb%v%*?"?!?4F%>*?M!Z& 9X®+:@«+*@:9¢+*@6ë+*@>?wx,:9*+*@: 9:9H+~,*@:9wx,:9-,*@:9: 9 PHASE1 DEFTBL PHASE2 LIST1 NOLIST OBJECT NOOBJECTINTER SRCONLY OBJONLY BLOCK MAP NOMAP SYMBOL NOSYMBOLHEX D9<9!@6<*:9/!8w<*<*:9/!8w<*<*:9!8w<*=ͭ|!8s<*=ͭ|!8s<*=ͭ:k&@:D9? !*@9#"@9:?;!:?!86.`;: -&!Ͷ :8@!!86> :8/Ҫ!*@9: ~2? b!*@9#"@9H!:?/§!*@9#"@9*@9: ~2?*@9#@O'.* @DM*@ -‘'!@6#6#6#6#6ͷ! D*!969͖!#" @!#"@!96>!9(* @9m*@9mH'(* @"  H ,~,*@: 9wx,:9:6,*@:!9+,~,*@:!9wx,:9$r,*@:9@:!9H^,~,*@>!"9!!9wx,!96!96!96:&@2-@:&@@HҬ2!>@6*-@M!3 ^#VY")@ 3")@ 3|")@ͷ!B:9QH:9DH:9HH3:4<2"@:9!"@րH0:9! @0 >0f1! @:@~ 77;7:!9!&@:!9!(@H87;77!"+@!2@6#6>!3@y75<+@_8a7y7*+@)"+@:2@<22@:3@<23@I7:3<20H>9~AHHҚ.Í0!96"5<:92@!$@6+6:9ʾ.>!86ͷ!*.!#@6#~.>.*5<8"5</:9-/!$@6+~!=@65!96*)@8")@?3:<@+5*)@"5<î5:"9!&@:"9!(@HQ5 *<@M!5 ^#Vî5*)@*5<"5<î5)@5<_8+s#r!@6#6!3<6#6>#w#6!86ͷ!0/>9!9/H -!96|! @sͷ!X,>! @, >:9X:9VH,!96ÿ/:933!96 3")@ 32223:9)3:92.@:'@?3:.@!'@w!86ͷ!,:9&H:9 Hk35:9+~3!=@65ç3:H 1f1: @!@1R1:9!4<2"@@:#9+H;1f1:"9!4<O1>f1:!9!4<f1>: @Š1>!@1 >:@!2@ʖ7:2@!3))덑o|g7 =7^#V)))  />/*5<8#"5</:9*:9-H5/ó.:9%:9:HV/: @2@ó.:9,:9 Hҁ/!86:92 9>î5*5<*)@7"5<î5*)@*5<8"5<î5a5d5r555:=@2<@ʾ5!>@6:'@23<:(@24<:9,:9 H:9&H5H614@͖4@,:9 H- ->:9B:9QH:9DH:9HHr-:92!@ͷ!#j-:!@29ñ-r-!96É/:9A/>Z!99-‰324:9/œ3!=@65ç3:9*§3}4(@&+:9ʸ3:93?3!86:92 9)@:'@8!'@s:921@ͷ!#*4:1@B3!-@6$4:@!3!&@s+q!<@6#6!3<6#6>#w#62.@2/@20@2>@2'@!(@6>#w#6!86ͷ!0/>9!9/H1Ã2:9B:9QHDM!>))8 =8YP}/o|/g_og~ -8~ 48^#V|g}o ?8_{ozgO{ozgi`N#Fogo&og_{_z#!96n09͖!86ͷ!,:9 HҼ/!86:92 9>!96:9/!86ͷ!2!@4<&+/!86ͷ!,:9 H0øL-6**9 ~2'@**9 ~2(@**9 ^#V")@?3H6. 94@ -56!86:9 :9&He6!96:9!&@}6*5<8"5<Ó6: 9/H~.HҞ-!96É/ñ-!86:92 9>!86:9B-ͷ!0>1!9H-Í0!96Y"5<:92@ë.:9Q&.:4<24<ͷ!01@Q4!-@6$4:1@D4!-@6$4!-@6ì224!965!86ͷ!,:9&H:9 H^4k4!96!=@65!96*)@8#")@?3!8:9DH:9HH23:9A/>Z!9/H~.HK2!965Ã2:9,:9&H:9 Hr25!86:92 9W@ʖ7:2@!3X0:!@29ñ-n0!86:92 9>:9!4<ʂ0:3<2!&@ʓ6*5<8#"5<:>@/Ҧ6:%@2/@î6:'@2/@:=@ʹ6;7:.@!/@:.@H67!/@:.@7:"9!&@:"9!(@H 7>7!9H.Í0!96"5<:92@ë.:9Db.:4<24<ͷ!0>9!9HN.Í0!96|"5<:92@ë.:9H«.:4<24<ͷ!0>F!96ͷ!+:9-H:9/H:9*H:9%H:9:H:9,H:9 H:9&H4:9!(@w 5 5!96 )8 =ɀP@  og-8~ 48^#V|: _@ @ ?A @!A"AA @!!Ar+s+p+q+p+q+p+q+p+qA@`o!+Ar+s+p+q+p+q+p+q+p+q"A@!/Ar+s+p+q,A @!7Ar+s+p+?!0@23<:/@!2@7:!9!&@ AMDOS/29 AMDASM MICRO ASSEMBLEA<*ADM#A *ADMC\C#A<:@t*AC#A<:@<2@:@<2@!@c ͟!M*A#A<͵vm?!0@23<:/@!2@7:!9!&@ AMDOS/29 AMDASM MICRO ASSEMBLE@/H %!@6:@#:@q:@q*@&)"-A*A A#A<*AC*-ADM#A<*AC*-ADM#A<* A#" A:@Қ:@Қ:?!0@23<:/@!2@7:!9!&@ q+p+q+p+q0A@6! " R! R6ERR D!R6*R+:R3Bz@*R&E ~2R?6MDSTR 6EB*RDM͠C6AͬA2R A?!0@23<:/@!2@7:!9!&@ 8!Fp+q*Fm?2F!Fp+q*Fm?m?!Fq*F&m?!Fp+q*Fm? ͂ ͂!Fp+q*F m?L!Fq!Fr+s+q*FM!`?!0@23<:/@!2@7:!9!&@ AMDOS/29 AMDASM MICRO ASSEMBLEA#A<*A A#A<*A@#A<:@:@!@ҫͺ"*@&)"-A> Ae@ʫ*A A#A%Af *AC*-A?!0@23<:/@!2@7:!9!&@  FILE NOT FOUND$FILE EXTENSION ERROR$END OF DISK DATA ERROR$NO DIRECTORY SPACE$NO DIRECTORY SPACE$CON: LST: FF  A* A&S?" A!A4>!A6*A&*A~0:A=O:AHR?*A&*A: Aw!A4?DM!>))덑o|gl? =Z?!Ap+q!A"A ^#V*F>2Fʥ:F@2F!F6:í!F6 #6 !F6+6>!F*F&*F~2F *F&F :Fw!F4!F4µ*F&F 6.!F4+6 > !FR, V1.0 TOTAL PHASE 1 ERRORS = AMDASM.TMP AMDASM.OV0 ?#A%Af *AC*-A#A%Af Q+* A+" AS:@ҽ*ADM#A :@):@):@AB#Aͻ)*A# AMDASM.TMP AMDASM.OV0 ? FF 1@:@/ҹE:@/ұ& ʱæ!@6Ó:@/ҧ7:@/& :@!@!!@6:@ :@/: /*F&*F~2F (*F&F :Fw!F4!F4:F=O!F ~.D!F5*F&F 6$F m?Wbp?!Fq:Fw!F6*FM! ^#V*G"G!G6G:Ge@ڷ*GN͂*G#"G:G<2G“ó*G"G!G6G:Ge@*GN͒*G#"G:G<2Gó*GF) ^#V"G*G"*F!Gs>D@җ !G6*GM!5 ^#V;*F"G!G6F:Ge@ y*Gw *F:Gw#6*G#"G:G<2Gµ *F*Fs#r;*F" G>*:G^#V!?*D@*6GF ~b.*6GF) N#F -R*@GDM!HG>DGe@!ͤ?!IGs *@G6 > !F *F&*F~2F ʶ *F&*F:Fw:F<2F *F&*F6 :F<2F‚ *F! ^#V *FDM͢:F *Fo*FFw?6G:HG!DGp@#*DG:HGD@*6GF q *6GF ~`.*6GF) N#F -B*@GDM *@G ~=*@G w:HGDGe@+!ͤ?!IGs *@G ~ ^#VíWí-WíDWíp?WWp?!Fr+s+p+q+p+q+p+q+p+q.*FDM -j!  >Fe@G*GF ~2G*GF) ^#V"!G:G!Gs?"G*G"G>Ge@ʟ*G*G w*G#"G*G#"G*G+"G:G<2GO>Ҝ.*!GDM -r*GDMD@ *F>w#6*FF ~2G*FF) ^#V" G*FF) :Gt?"G*F"G>!G *FF ~• .*FF) N#F -j  * G ~ʍ  :IG*@G w*@GDM.*6GF) ^#V -¤!HG>DGe@!ͤ?*6GF qDG:HGs?*6GF qÁ*6GF) ^#V"@G*6GF) ^#V"BG *F 6 *FDM! *FDM*FDM1 ͱ*FDM͢*FFw?6 *F 6 *FDM/m *FDMm ͱ*FDM͢*F ~ʺ *@G ~!IGҺ*@GDM͵ *@G ~=*@G w*@GDM͢ *@G 6 *@G ~!IG*@G w*@GDM.*6GF) ^#V -:HGDGe@+!ͤ?> *F>w#6 *F>w#63 r! 3 *F>w#6!F6#6:D2F:Fc :F2F:F2F:F<2FA :F<*Fw#6:F :D2DÐ:Fʑ*FMf*!G"G!G6-*GF :Gwó!&Gr+s+p+q!(G6!*G6*#G#~:*#G~@2*G!(G6!'G6>!'G;*(G&*#G~2)G. * G ~=* G w* GDM* GDM:Fʯ *F>w#6.*FF) ^#V - *FF) ^#V"G!G6:G/*G*G w*G#"G*G#"G:G*@G ~2HGt:HG= *@G w*@GDM.*6GF) ^#V -6:HG= *@G w!HG6*HG&*BG~i:HG<2HGO*6GF :HGwÁ *FDM.*FN#F!F ^#V -Ÿ  *F 6*FFw?6 P *FFw?*Fs!Fr+s+p+q>!Fp@>Fe@He *FD@*6GF qÁ*6GF) ^#V"@G*:G^#V!?*DGe@ *@G ~ʗ*@ :F=O>@!Dw*FN#F!F ^#V"F!F6> !F *F&*F6 :F<2F§ *F6 *F 6*F 6*F 6*F 6!F6*F#~: *F~@*:)G H&*'G&*G w <`iw1*'G&*G 6 :'G<2'G*(G&*#G~.R:(G<2(G!'G6 > !'Gڝ*(G&*#G~2)G ʈ*'G&*G w <2G* G+" G>D@,*FF :Gw*F*Fs#r B ; !Gr+s+p+q+p+q+p+q*G!Gs>D@x:Gs!G6x!G6*GM!!SGr+s+p+q+p+q+p+q+p+q![Gr+s+p+q+p+q+p+q:D2]G!\G6>!\G:]G*\GM#A :\G=O!D,@2]G:\G<2\Gp?*F ~0 .*FF) N#F - *FF) N#F>!Fp@O *F++M>@/!DwW :D2D*FF) N#F͵!Gr+s+p+q+p+q+p+q+p+qGDM͵ *@G 6*@GDM͢ *@G 6*6GF ~*@GDM.*6GF) ^#V -*6GF ~ *@G 6*6GF 6Á*6GF) ^#V"@GFw!F6!F6>!Ff *F&*F~2F.:F HP *F&*F:Fw:F<2F\ *F&*F6 :F<2F *F&*F~.} :F<2F!F <`iwÓ*'G&*G 6 :'G<2'GW*G!?Gr+s+p+q+p+q+p+q+p+q*8G!w^#VÁ*6GF) ^#V"@G*:G^#V!?*Z!@/H~.H*uG&*sG:@w&A/>Z!@/H~0/>9/HH~.H:uG<2uG*uG&*sG:@wê!@6A!nG6!kG:iG“* A#~2hG:hG­* A~2gGö* A>2gG* A##^#V"eG:hG:gG!jGw+~ Ae@+s#rÆ:@!hGʛ!@6&,:GH *G&*G6 !G4!Gr+s+p+q!G6>!G^ *G&*G*G&*G W >!G40 >!Gq:@s :G2@CAX@ڈ &:Ž!dG6Ó!@6yAJyA),ҲzyA! /ҲqAqA*!A 6*!A 6*!A *As#r:dG*!A >*!A w 72G*G))))*G& "G:@2@!@6þ!@6*G!"G}2@!@6&2G0/>9!G/Hr!G?0_"G!@6?!@6!"G}2A^G#A%Af *`G*^G"-A*AWH*-A#A%Af !WH"-A"C*^G*-A"-A"C"C*`G*-A"C"AbGAX@#s#r*A*A*bG#A%Af!xGr+s+q*vG&C) ^#V"yG*vG&C) ^#V"{G"}GyG{GX@!ͤ??8@*yG"G}Gh@*G"}G"G*wG"G!G6>!Gڡ*}G*G 2:@ H:@&Hz:@&:@ H8!@6* A~DÛ:@!hGo:gG!jGw+~ Ae@+s#rÆwa 7Û!@6*!@6j#!Gq:G02GO>9Ҧ :G2G:G!Gr+s+p+q!G6>!G >G͗?M͉ !G>O*G Hq!G4@+s#r!G4¹ !Gr+s+p+q!*A >*A w/!@6qA),/qA! //*A#"A!@6+6!@6!nG6!jG6!mG6>!mGچ*mG&C) >w#6*mG&C) q#p:mG<@>!@ڨGGX@ڡ*G)"G!@4!@4*G!"G}2@!@6&2G0/>7!G/H*G))):G0_"G!@6:@2@û:@! *ADM#A AA#Aͻ:@2@:@!@:!@6:@!@jAA#Aͻ!@6!@6 ͟!:@!@ʐAAG—*}G#"}G*G#"GÚï!G4k>}Ge@"A>*G"}G:G*}G"yG*}G"{G-*{G"!A>!Gr+s+q*C"G "G!As@:Ge2@gGM*hGe8:@ʕ7* D"eG*jGM*gG/Ҳa 7C*jG*gGM*eGg(:gG!jGw+~ Ae@+s#rÆ!@6&&:@2lGÆ:@ G6>!GD!>G͗?0!G>O*G q:G=!!G4@+s#r!G4!!G4@>̀?0*GqPAGE SYMBOL= CHAR= *** ERROR2mGS!iG6qAJ:qA :@ !@6:lG&¼:lG2@a :@2@a 7!@6&:$&:!@6qA *A >@6!@6*G!"G}2@!@6&2G0:G1HS*G):G0_"G!@6!@4!@6*G!Gr+s+p+q!"G*G!'ͤ?"G!G6>#Aͻ!@6:@!@ʡ!@6:@!@ʲ!@6:@!@!@6!@6*@&!ͤ?!@s*@&!ͤ?>D@:@<2@%!@6!#î:G2G>!GM:G!G2*G&C) > t?+s#r*G&C) > t?+s#r!G4 !AGX@{*G*GN#Fq#p*G++"G*G++"GM*!A"7!@6:@2@a 7!@6.@qA -%a !@6!@6*A" A*A#"A!tGp+q!uG6>!uGq*uG&*sG6 !uG4U!uG6!@6&A *** FATAL ERROR END !Gq*AG#A<!Gq!G6:G!G! ͟!!G4¾!!G6>!G! ͟!!G4!!G6>&!G"*G!@6.@qA -a 7Æ)!@6qA),:@H@qA!jG6*A >2kG *A AZ@" A:nG҆!@6*A"!Gښ*G&*G6 !G4~!G6*G*Gͤ?!0!Gs*Gͦ?"G*G&*G:Gw> Ge@*G! ͤ?"G!G4ß!G6*G&*G~0"A"A}2@!@6*A'A#A)Aͤ!@6%:@D*AA#AB<!dG6qAJ:qA q:@ p!@6:@2@a !@6&:G!G6>!Gڮ*G&*G*G&*G w!G4†!@6!"G}2@&2G0/>9!G/H~A/>F/HH':GA:G02G:G &C N͟!!G4!:@& 2G*GM͵!!G6>!GD"*G&\! N͟!!G4'"*ADMG\!G6>!Gq"*G&G N͟!!G4T" ͟! ͟!!G6ͤ?!Gs*G&ͦ?!Gs*G&OA) ^#V"GG͜?+s#r:G!GO>.)!G>!G#w(*G"G(*GM!G"@+s#r*GM!G"@#s#r*G&)@*@&B ~2G:@<2@:@¼&:@ҷ&:@Ҵ&!!@6%!@6:G&!@6!@6> :@!':G2G:@ '&2G :G H' DAX@-a >* D"A"A!@6Ù.'!@6Ù.:@V-*A"A!@6͑0!@6*A" A#"AÙ.*@M*@e8:@o->*A"A!@6* D*!qA! ڛ$!@6#!@6!@6*@&B ~͵!:@$*ADMGͪ !G6>!G$*G&G N͟!!G4$%*ADMG !G6>!G%G"G+*!Gs+p+q*G&!ͤ?!Gs+^ͦ?!Gs+n&)*G*G&/A) ͌?>D@͵!:@|+* ADMHͪ *AH#A<Ø+* AD:@!Gڞ"*G&A N͟!!G4€" ͟! ͟! ͟!*A#"A!@6:@"!!@6!@:@" ͟!!@4"! ͟!:@"!!@6:@<2@:*G*G?͜?+s#r*G&)*GG@s#r)!G>2GO:G2G+n&)*GO!G4@?͜?+s#r*G&)*G*GM!G4@@+s#r!G4&!@6'&2G:G '!G6 Z':@2':G2@8':G2@:@=2@:@V':@ Q'&!@6:@>Z!Gk':G2G:G2@ SYMBOLS ENTRA"AÙ.:@2@!@6Ù.!@6Ù.:@©-ͺ"!@6Ù.:@1.! H6& -.!@6*@M*@e8:@->* D!@s>N@:@!@H*G&G N͟!!G4$͵!!@6:@,%ͫ$3%*@M͵!!G6#6*G&C ~2G %:G!@!@c% ͟!":G ±%:GO>2G!G6:G!MH *AH#A<!H6:@=!H ,*H&!ͤ?>D@+͵!*HC ++X͟!+*HC ++1͟!+0͟!:H?>J!@H#*A!#A<!:@.#*A#"A:@d#:@#*Aw!#A <*@MG\*AG#A<:@Ҕ#*Am!#A *G&OA) G͌?+s#r!G>2G*G&)*GO!G"@?͜?+s#r*G&)*G*GM!G"@@+s#r!Gq*C"G*C"G:G+*ͺ":G*Y POINTS EQU ORG TITLE FF RES LIST NOLIST EJECT SPACE ALIGN END !G6>;!G(*G&A 6 !G4 .a >:@2 H!@6!@6: H!@1."!@4.Ù.*@M*@e8:@J.>* D" H*A* Hͤ?>D@m.*A#"AP.*A"A!@6Ù.!@6Gڮ% ͟!!G4:@!@§% ͟!"!G6!G4|%ü%*GM͟!!G4!G4;% ͟!"!@6K$2G &:@%:@%*@&B :Gw!@4%@H, ͟! ͟!͵!!H4+ ͟!"!Hp+q!'" H!@6> !@g,*HDM* H! V,j,* H" H!@4:,>*@M!. ^#V*@M*<*A@#A<:@ҽ#*Aa!#A <*A@#A< ͟!"!@6!@6!@6J$*@MG\:@$*A!#A<*A*Ar'#A <%**A{'#A<""GGX@ +:G:G*G ~HH*:G*͵!*A*G#A<͵!:'!G6!@6& /(:G<,(*G&A :@w!G4 (:G>(:G=2@:@f(:@!@f(:@c(!!@6f(ͺ"!Gr+s+q+q+p+q*G&!Ù.z,,&-1-Y-----4.{.>!Hs+p+q!@6:@%.*H:@./*H:@w/:@V.:H.*H:@./*H>@w/:@X$/:H!@6*@&B ~2G -&!@4:G;(&:G!@6.CB -5&%:@O&!@6> :@/&*@&B ~2G s&:@<2@W&:G/&:@<2@e8:@ʐ,>:@,qA,qA*!A : Dw*!A : Dw*!A * Ds#r, *A >w* D"A!@6Ù.*@M*@e8:@->G#A< ͟!"!#A<G#A<!#A<͵:@<2@!+Ap@ڠ$*AB#A+Af >+Ae@›$!@6@Ҫ* *G N#FGͪ *AG#A<* *G N#FG *AG#A< ͟!"**A*G#A<*A *G #A< * !/*H:@/*H6!/*H>?w/:@*W/*H:@:@HL//*H:@w/:@-Š/*H:@:@H//*a *3H?"3H *A 3H͌?"7H5 *A ^#V"7H55!@6 *A ^#V"7H5*A"7H*.HM!(6 ^#V*7H";H26*7H*;H";H267H;HX@a !@6&,”3Ù0:@ Ÿ3U8!@6:@2@a :@9H@+s#r&0/>9!@/H3U4:@B:@QH:@DH:@H99:@ ::@2FH:?H#::FH!?Hw!@6&,:@&H:@ HO:;:@+b:!UH6;Ë::@-m:;:@/€:!UH6;Ë:A/>Z!@/H~.HҦ1!@6G2:@$±15:@(¿1 a :@ 1U8!@6:@2@a :@20H:0H2@11!@6G2:@**HMg(C*/H**HM*;Hg(:)H<2)HO>28a :*H!(HwO:@H8 a :@R8U8Ù0!@:(Hd8 a !>Hs+q!TH6#6! D6#6>#w#H:@w/:@:¬/*H:@ʡ//*H:@w/:@$/*H:@@:@H//*H>!@!@w/!@6!@6a !Hs+q+s#r26*;H*7Hͤ?";H26*7H*;H?";H2655566&+B6!.H6u6:@-R6!.H6u6:@/b6!.H6u6:@*r6!.H6u6x6ð3&,H 4i4:@A/>Z!@/H~.H74!@64U4:@$B45!@6:@2@a U8!@60"7H:@2,H5:@20H&#ƒ4:0H2@Ë4:@*‹:a;@H͜.:@ʜ::@Ҧ:#:!@6:@2@a AH:?H@!?Hs:@2IH&#;:IHB:!EH6;:IHQ:!EH6;:IHD;!EH6B2 ";H>2:@Q2ͬ";H>2:@D020";H>2:@H>2ͯ";H:@2+Hx6yAJ>!*H\2a yA„2!@6.@yA -v26!FH6#6#6!VH6!?H6!@H6>#w#6!@6&0/>9!@/H8d9:@B:@QH:@DH:@HH8::@A/>Z!!'H6>!'H%0*'H&H) >w#6!'H40H*H O!OA ^#V*HMg(:H2'H:H!H=!'H|0*'HC +*'HH +Hu0>!'H4G0C:@ Hҳ69H͜.:@Ң6x6!@6:@2@a :@9H͗?>D@:@9H͗?>D@H6a :@9H͗?>D@7*;H?";HË4!@64:@Bœ4 "7H4:@Q­4ͬ"7H4:@D¾40"7H4:@H4ͯ"7H5qAJqA4!@6.@qA -4a &;!EH6Ð9;!@6!*H®2,3!*H>O!OA **HM"@"3H *A 3H͌?#s#r*3HA͜?5Hh@2a *3H?"3H *@/H~.H!9!@6H2EH:EH:>H@*H*HMg(>!(H6#6!*H6#6!"9H";H}2.H!)H4!@6&0/>9!@/HJ1!@60!*Hs:@2,H&X0n3>!*H0a :@B7:@9H͗?>D@7*;H?#";H:*H!+H:*HH<77:*H]7:.HT7 a U8:+H2*H7!"1H!0H6!@6>!@ښ7;H1HX@$³5:*H5a >9H@:@?:@?"9H*A >2-H!*Hʟ5!*H>O!OA **HM"@"3H *A 3H͌?#s#r*3HA͜?5Hh@ʃ5H:@*H:@%H:@:H:@,H:@ H:@&H;:@!@Hw;;!@6!UH6;!@6*AH?"AH#::TA 3H͌?";H:3,3!@6:*H,3*A >2*H *A ^#V";H!@6&,:@ Hk3!@6:@2@a n37:*H!(HwO:@҄3 HҐ9!VH6*EHM!9 ^#V "AH:ͬ"AH:0"AH&B:@QH:@DH:@HH9÷:!@6:ͯ"AH:99:@QH:@DH:@HH.11:@(91ð3!@6:@2@a :@B:@QH:@DH:@HH}11:@7*1H)"1H:0H<20H:@<2@m7!0H:*H§77:0H!*H:@9H͗?>D@H!0H:*H:@9H͗?>D@HH7a U8:(H2/HC*/H H<*AH" DÒ<:@!>H:@!@HH5< a *THM!< ^#VÒ<*AH* D" DÒ<AH DX@+s#rÒ<* D*AHͤ?" DÒ<*AH* Dozgzg ozgzgi`N#Fog_ogDM!>))덑o|gҽ? =«?^#VPB/o/gYo|/@  :103FC200C95E2356EB29E52929C109C9444D2100BF :103FD200003E1029EB29EBD2DD3F093DC2D53FC996 :103FE2006960EB1A2F6F131A2F67C95950EB7 DCHX@ҏ>ç>*CH)"CH:JH<2JH:KH<2KHw>: D2HH!JH>:JH! D!HH2 D:GH!JH>:@!>H:@!@HH>>a :@!>H AMDASM.TMP ~ @^)@ @ ??{_z#W_{?" DÒAHe@f?*GH&OA)  D͌?+s#rl?a _ogozgzg AMDOS/29 AMDASM MICRO ASSEMBLER, V1.0 TOTAL PHASE 2 ERRORS = @H*A ^#V"AH&$!=:@H2@H&=!@6#:G=.@LH -4=!@6a :@!>H:@Hp=*A"AH#:v=a :@ :ozgzg AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1 TOTAL PHASE 2 ERRORS = ozgzg 0DC21C40C96B :104022005E2356EB290DC22640C97EB71F0DC22D55 :1040320040C95E2356EB7CB71F6??{_z#W_{_{ozgi`N#Fog_ogDM!>))덑o|gҽ? =«?^#V))) DM!>))? =?i`/o/gYP}/o|/g_{ozg AMDASM.TMP ~ @^)@ @ ??{_z#W_{@&Hғ=!@6:@!>Hʫ=* D?" D=:@!>H=* D?#" D:VH/=:=H2GH=:?H2GH:UH=i>:FH!GH:FHH AMDASM.TMP ~ @^)@ @ ??{_z#W_{ AMDASM.TMP ~ @^)@ @ ??{_z#W_{ozgzg D1DRDsDDEEFi`N#Fog_og~ @^#V) &@~ -@^#V|g}o 8@_{ozgO{ozgi`N#Fogo&og_{_z#W_{ozgzg D1DRDsDDEEF>>!GH:FH=>:@!>H:@!@HH7>a :>>i>:@!>H:@!@HHf>a i>>!"CH!JH6#6>!KHڧ>ozgzg AMDOS/29 AMDASM MICRO ASSEMBLER, V1.0 TOTAL PHASE 2 ERRORS =  :103FC200C95E2356EB29E52929C109C9444D2100BF :103FD200003E1029EB29EBD2DD3F093DC2D53FC996 :103FE2006960EB1A2F6F131A2F67C95950EB7Ú(h.Қ*C>w#6!C6#6:@2C:C:C2C:C2C:C<2Cè:C<*Cw#6:C:@2@:C=O>d2C :CMT:C *C>w#6.*CC) ^#V -( *CC) ^#V"C!C6:CҖ *C*C w*C#"C*C#"C:C<2C*C+"C>͌<“ *CO DIRECTORY SPACE$CON: LST: ENTER PROM WIDTHS: ENTER PROM DEPTHS: DON'T CARES? WHICH PROMS DO YOU WISH TO PRINT? AMD A#V - *C 6*CC;6-ADt*CC;*Cs!Cr+s+p+q>!C͸<>Cͭ !C-*C&*C6 :C<2C*C6 *C 6*C 6*C 6*C 6!C6*C#~:n*C~@*Cw!C6!C6>!C*C&@2C!C6:!C6 #6 !C6+6>!CP*C&*C~2C I*C&C :Cw!C4!C4*C&C 6.!C4+6 > !Cږ*C&*C~2C ʏ*C :Cw*C*Cs#rD é â   _ !Cr+s+p+q+p+q+p+q*C!Cs>͌< :C !C6 !C6*CM! ^#V*C"C!C6C:CMPROM UTILITY PROM MAP PC C C PROM CONTENTS ROW IS ALL DONT CARES PROM IS A NULL PROM PROM STARTING -*CuC) N#Fg>!C͸<Ҷ*C++M>d͌<!C6*0DC21C40C96B :104022005E2356EB290DC22640C97EB71F0DC22D55 :1040320040C95E2356EB7CB71F677D1F6F0DC238E8 :1040420040C95F16007B956*C~2C.:C Hҷ*C&*C:Cw:C<2C*C&*C6 :C<2Cs*C&*C~.:C<2C!C6 > !C3*C&*C~2CC&C :Cw!C4!C4b:C=O!C ~.«!C5*C&C 6$C <0;͌w#6*CC ~F7A9C67C94F06007B5B :10405200916F7A9867C969604E23461A916F131A55 :104062009867C96F26001A956F131A9C67C95F1665 :10407200007B965F *C&*C:Cw:C<2C)*C&*C6 :C<2C*C!%^#V-*CDM :C]*C*CC;6 *C 6-*CDM/҈l;<;Cͭw#6*C>w#6D:CD;"C*C"C>Dͭ< *C*C w*C#"C*C#"C*D+"D:C<2CO> .*DDM - *DDMg:C *CM*D"C!C !CD *CC ~ .*CC) N#F -  *C ~  *C ~=*C w*CDMg*CDCOPYRIGHT(C) 1977 ADVANCED MICRO DEVICES FILE NOT FOUND$FILE EXTENSION ERROR$END OF DISK DATA ERROR$NO DIRECTORY SPACE$N*CDMD*CDMz˜*CDM *CC;6 *C 6-*CDM//*CDMz*CDM *C ~*CDMT.*CN#F!C ^! C6Ô *CC :Cw ! S ! Dr+s+p+q! D6! D6*D#~:G *D~@2 D! D6! D6>! Dڢ * D&*D~2 D.: D Hҍ * D& DD+<*AD&!ADs:<͌<Ң+h>CDͭ<*BD&>?) *EDs#r:BD<2BD!<+h*CD+"CDâ:<,:< @+h!D w*#DDMT.*DC) ^#V -:+D= *#D w!+D6*+D&*%D~:+D<2+Dö*DC :+Dw4 7 wXI!6Dr+s+p+q+p+q+p+q+-0/>9!ODͭ'Dͭ) *JDs#r*JD*HD"HD:GD<2GD! ! D * D&*D~2 D * D& D w <`iw * D& D 6 : D<2 <:BD@*BD&>?) *CDs#rCD:AD;!ADs:<͖<6@:BD<2BD:< U- UH͜+:<ʀ!<6:< ʀ- ʀsp+q!>Dr+s+p+q+p+q+p+q:@2@D!?D6>!?D`:@DF*?DM<>:?D=O!@t<2@D:?D<2?D)<*:<ʊ!<6:< ʊ*UD?) *[D͐/ñ*UD?) :[DO͐/:[D<2[Dn:< óë:<-£$2"QD!ODͻ<>QDͭ?) >͸<£í:<<2<|!<6:) >͸<*<&*<&+<"<:<<2<² ͜+-D¾  DD!"Dr+s+p+q+p+q+p+q+p+q*D!^#V*DuC) ^#V"#D*D^#V!+<*D;"'D*DC ~2+D:+D!'D͸<ڊ *'D:+D͌<*͜+!"HD}2GD!<6:<=!<ڼ*<&>) >w#6:<<2<—-0/>9!?) >w#6:<<2<Ÿ-0/>9!͌<3*DC ~.*DC) N#F -¹*#DDMg!+D>'Dͭ1!ND/H::ND02![Dڕ*[D&DC qt*DC ~ .*DC) N#F -© *#DDMg *#D ~=*#D w:+D'Dͭ<+!<!,Ds *#D ~! *#D ~!,D!*#DDM,:< H5*JD"LD>͌<,+^!"JDg:<*_$2"LD>͌͌<4+h!"CDo:<*g$2"ED>͌<\+h-29!'Dͭw#6:[D<2[Dr-Nª!<6ó:͌<*DC q*DuC) ^"HD<Ͱ<җ+!<6>!JD͸<*GD&>) *LDs#r:GD<2GD!<:GD+^*JD+"JD×:<,ü:< Q+^*<#!JDͻ" $2"OD:<͌<>ODͭUDͭ<Ҙ*[<ͣ !iD6!oD6!lD6!pD6!nD6 !rD6>&!rD*rD&?) >w#6:rD<2rD©:kD=o&)!rDs:lD*rD&?) DM*lDI/H:lD/*<dD<ͣ õ*<)<ͣ *<cD<ͣ :^D<2^DP*<,<ͣ !`D6!"eD!^D6:) <;+s#r:}D<2}D$*}D&>) <;+"<*<"<*<&*}D&+<*yD& #"D!{D6!}D6!yD:}Dʑ$*}D&>?) :{D͐/â*UD?) >WDͭ<͐/:< ­óè:<- $2"QD!ODͻ<>QDͭ<H+C<QD͠< +C*OD"!"=!B"=*<=<= 1"*8*<#"UDͭ<͐/e:< óñ:<-©$2"QD!ODͻ<>QDͭ?) N#F!qDqPY>͖<> !qD6:qD!nDHQ *pD&+?) *rD&*<dD<ͣ  ,-*<cD<ͣ  ,*eDDMaD͑2*<aD<ͣ :^D=O!> eD;+s#r:<2_D:WDͭWDͭ<͐/*SD"SD-"*8*<#"<<Ͱ<ګ"<<͠<¥"õ!Â"î"î":jD".!"=!B"=*<=<= -<<͠<""9.Ú"9. .!͸< +C*OD+"UD*QD+"WD:<=o&)"YD![D6YD:[Dͭ<ڦI:[D2[D,æ*UD!\DsWD:\Dͭ<ڣ:\D*[D&?) *\D͐/Ù*?) N#Fq#p:kD=_*<&+<*lD& #*rD&?) q#p:pD<2pD*lD&>?) :oD;!oDs:lD<2lD!< !jD6*<"!<!<:<:<gD;+s#r*gD"gD , ,:^D<2^D , ,!<:<:<ͣ *DDM~D*~D<ͣ _<ͣ :yD<2yDÂ#9(q<ͣ *DDM~D*~D<ͣ w< ʚ:<, +CÝóè +Có +C:< - û͜+:< *<<ͣ *<><<ͣ *<"=!B"=*<=<= !xD6X͜+:xD<2xDO:͸<*}D&?) >͸<H}#,#!yD[D&?) :\DO͐/:\D<2\DQ;ñ +C- :<, +Có+C:<0/>9!) <;+s#r:mD<2mD *mD&>) <;+"<*<"<-<<͠<ͣ *kDMtD**<vD<<2<:<2͸<*rD&?) >͸<Hs :iDҐ*</ * N#F~D*~D<ͣ <ͣ <ͣ !<6> !< &<ͣ *<< ͣ !<6!"gD:<29!<6*<< ͣ :<2^D:?) N#F!zDq*<"͌<+C)<OD͠<) +C- :<,Hҳ*OD+*<&<)"UD*OD+*<&<"WD>WDͭ<҈*UD?) *WD<ͣ *<C<ͣ *<U<ͣ 9. î"5<<͠<‚"6*<#"<<Ͱ !:>o&"=+> 6 !<6*<&> ~!Dq*<D< NL M NM H B I .OBJ .OUT .P3L PC ADD !Dr+s+p+q!"D*D!'<"D!D6>!D+s#r!Dr+s+q+q+p+q*D&!!D#ws1*DM!Dj<+s#r*D&)*D<*<<<<*<<<<-*<"<9. *** ERROR : DON'T CARE DEFINITION ERROR: WIDTH INPUT SYNTAX ERRORA/>Z!9/HHC/:D<2D@/*D&*D:!zD/:|DH>/:|DHH>H& - -!|D6*<#"<<Ͱ<3'<<͠<ͣ !Dq*<D<ͣ !Dq:<z-:<R-*<~2D*<#"<:DO-:D O--w-:D2D:Dq-ͷ,2D n-`-w-ͷ,2Dì-:<+*D&*D6 !D4*!D6*D*D Dͭ2DO:D2D+n&)*D!)= ;*DMn<*Dq#p!D4!D>2DN!)= Oj<"D*D: TOTAL WIDTH EXCEEDS MICROWORD SIZE: TOO MANY PROM COLUMNS: DEPTH INPUT SYNTAX ERROR: (WARNING) DEPTH EXCEEDS MAXIMUM PC: TOO M) ;>͌W0!D>!D#w0*D"*'.!"=!B"=*<=<= -'-b&q':<J' - --!<6>(!Z!Dҽ-:D2D:D2<*<&)"=*<<<<*<?*=<<*<~?*Hқ+*D&*D6 !D4j+!Ds+p+q!D6:D!D+*D<ͣ *D#"D!D4©+!Dq (͜+*DMD*D͜+:Ddҕ,*DM*D&)*DD;*DM̀<[<+s#r!"D-29!D/Hg2!D <0_"D72!<6*D!Dq:D02DO>ANY PROM ROWS: ILLEGAL VALUE FOR ROW OR COLUMN: ILLEGAL PROM, ROW, COLUMN DESIGNATION: UNEXPECTED END OF FILE ON INPUT: COMMAND D"0*DM!Dj<+s#r*DM!Dj<#s#r*D&)*D*DB<;+s#r*D&)*DDK2DO:D2D+n&)*DO!D|!zD/:|DH>/:|DHH>H' - -!|D6*<#"<<Ͱ<'b&:<=<<*<#"!Dڥ.!|, ^#VÒ,(͜+Ò,(͜+Ò,$)͜+Ò,$)͜+Ò,;)͜+Ò,$U)͜+Ò,y)͜+Ò,!)͜+Ò,')͜+Ò,!)͜+Ò, ,,9ҍ2:D2D:D!Dr+s+p+q!D6>!D2>D;Mp2!D>O*D Hq!D|<+s#r!D4 2!Dq-22D*D&)*DO!Dj(!<<<*<<<<*<<<*D&*D*D&*D ʞ.>!D4w.>!Dp+q!D6>!D.*D&*D6 !D4³.!D6-A/>Z!!D83*D&*D6 !D43!D6*<~2D :DH:D H3*D:Dw*D#"D*<#"O͐/:<Ҥ9*EB<>;"E!<6>!<9:!<7 ,:<<2<7:D<2D*@ @ ??N#Fo 5z45-555[5c5f5n5q5y53:))덑o|g< =<^#V))) DM!>)):< =2͌<>!D/H(: -:D;::D2D@:!D6:D2D%9!Es+qB-:E2<:E!E=!<:*<?I/Ғ::<D&+<?) >͸<87*<*<ͣ * !!<8 ,:<<2<8:D<2D*D&+<?) >͸<9@ @ ??N#Fo !<ږ6 ,:<<2<{6:D<2D*D&+<?) >͸<ʹ6 6*<*<ͣ *͌<>! E/Hp; -: E2 E#;;Bx8*<*<ͣ !Ds+q!E6:D2D>!DK::DI9~?*DE1Ï9~?*D*DME1!D>#wN!Ej<+s#r:<ʏ9E:D |g}o €<_{ozgO{ozgi`N#Fogo&og_{_z#W@ oog=og͑2*<D<ͣ !D6*D&+!:&ڮ*;&&*0&~2<&.:<& HҘ|g}o €<_{ozgO{ozgi`N#Fogo&og_{_z#W@ oog=og+&1*+&&*&~2*& **,&&& :*&w!,&4!+&4*,&&& 6.!,&4+6 > !+&w*+&&*&~2*& p*,&&& :*&w!,&4!+&4C:,&=O!|g}o €<_{ozgO{ozgi`N#Fogo&og_{_z#W@ oog=og*̈́ *̈́ *̈́ *̈́ !"͐lj̓͡*"Jv!T#r+s+p+q!U#6 *** ERROR : COMMAND OPTION ERROR: INPUT/OUTPUT FILE NOT SPECIFIED: FIELD LENGTH EXCEEDS MAXIMUM: FIELD EXCEEDS MICROWO*:&&*8&:<&w:;&<2;&ä*:&&*8&6 ::&<2:&T*;&&*0&~.:;&<2;&!:&6 > !:&*;&&*0&~2<& *:&&*8&:<&w:;&<2;& *:@ @ ??N#Fo @A3AT& ~.Œ!,&5*,&&& 6$& ͟ê!-&q:-&¿!-&6*-&M! ^#V͟͟͟"͟@ @ ??N#Fo >!U#ڮ*U#&*Q#*U#&*S# ʧ>!U#4€>!&q*&&!&q*&&!&p+q*& !&p+q*&2%!&RD SIZE: TRANSFORMATION PARAMETER ERROR: TRANSFORMED FIELDS OVERLAPOLD NEW FILE NOT FOUND$FILE EXTENSION ERROR$END OF D&&*8&6 ::&<2:&*2&! ^#V *8&DM:%>*8&ͷ*.&%6 *8& 6 *8&DMi*8&DM%*8&DM[y*8&DMAuAAuBB!7&r+s+p+q+p+q+p+q+p+q.*0&DM -*5qd>4&͝W*.&>w#6`*.&>w#6{=q{*.&>w#6!:&6|g}o €<_{ozgO{ozgi`N#Fogo&og_{_z#W@ oog=ogp+q*&2%! &p+q*&! &p+q* &! &p+q* &2%!&p+q*&2%!&p+q*&!&q*&&ISK DATA ERROR$NO DIRECTORY SPACE$NO DIRECTORY SPACE$CON: LST: .OBJ .XOB ENTER TRANSFORMATION INPUT PARAMETERS: 1''*.&%6 *8& 6 *8&DM/ҵ*8&DM[µ*8&DM*8& ~*8&DM5.*.&N#F!% ^#V - *8& 6*.&%#6:V#2=&:;&ʫ:=&2;&:=&2=&::&<2:&É::&<*.&w#6::&:V#2V#::&=O>T!V#w*.&N#F!% ^#V"8&!:&6> !:&*:&&*8@ @ ??N#Fo !&p+q*& ͺ ͺ!&p+q*& ͔!&q!&r+s+q*&M! ^#V*&>2+&:+&@2&!&6:!&6 #6 !,&6+6>!& 6 "%U*.&%*2&s!A&r+s+p+q>!>&ͨ>>&͝Hҭ *>&% ~x .*>&%) N#F -b *>&%) N#FH>!>&ͨ&% ~ʭ.*&%) N#F -*&DMH>&͝6 *& ~*&DM *& 6*&DM *& 6*&% ~-*&DM5.- *q&&*l&~.š :q&<2q&!p&6 > !p& *q&&*l&~2r& *p&&s& w <`iw *p&&s& 6 :p&<2p&Ÿ s&%!&r+s+p+q+p+q+p+*&:w;A/>Z!/H~0/>9/HHQ:&<2&N*&&*&:w !6!&s+p+q*&&!!&s+^!!&s+n @ !^&r+s+p+q+p+q+p+q*W&!a&s>| :a&һ !a&6 !a&6*a&M! ^#V*Y&"b&!_&6[&:_&͝ *b&Nͺ*b&#"b&:_&<2_& 2&!&6>!&A:&'*&M :&=O!V#d2&:&<2& *:<2!ͨya":b"o&"*+a" 6 !6*&aҗ *>&++M>T/!V#wß :V#2V#*>&%) N#F!K&r+s+p+q+p+q+p+q+p+q*B&!M&s>| !M&6*M&M!} ^#Và *D&"Q&!L&6F&*&%) ^#V -*&% ~- *& 6*&% 6*&%) ^#V"&*&^#V!*&"&*&% ~2&:&&>|*&q+p+q*&!^#V*&%) ^#V"&*&^#V!*&"&*&% ~2&:&!&ͨk*&:&|*&% qU*&% ~ʨ.*&&)*&*&&) >|!&r+s+q+q+p+q*&&!!&s*&&!!&s*&&) ^#V"&*&&+s#r:&!&O>ڃ *Y&"b&!_&6[&:_&͝1 *b&N*b&#"b&:_&<2_& *W&%) ^#V"h&*[&"f&*W&% ~2`&*W&%) ^#V"j&:`&j&"d&*Y&"b&>f&͝" ~!&s+p+q!&6:&!&ڽ*&̈́ *&#"&:&<2&‘!&q::*~2&*#":&:& :&2&:&:L&͝1 ͱ*Q&w *H&:L&w#6*Q&#"Q&:L&<2L& *H&*F&s#rà *F&"U&>|Y *H&>w#6*B&% ~2N&*B&%) ^#V"S&*B&%) :N&% ~ʪ.*&%) N#F -š*&DMH!&>&͝!!&s *& :&*& w*&DM5.*&%) ^#V -!&>&͝%) N#F -Š*&DMH *& ~=*& w:&&͝+!!&s *& ~ *& ~!&*&DM *& ~=*& w*&DM *& !&>!&#w*&"&9*&M!&Z+s#r*&M!&Z#s#r*&&)*&*&2*&&)*&q#p*&&)*&&;*&&)*&q#p *b&*d& w*b&#"b&*d&#"d&*f&+"f&:`&<2`&O> .*j&DM -º *h&DMH:% *%Mͮ*j&"d&!`&6u *W&% :`&w  4 !o&rI2& I2&R:.:&24:&2:=2:&N: N:>Z!&c:&2&:&2*&)"*"O&*D&"Q&>!N&% *B&% ~ .*B&%) N#F -²  *S& ~  *S& ~=*S& w*S&DMH*S&DM5:% *H&>w#6.*B&%!*&% q'&:&*&% q*&%) ^#V"&*&%) ^#V"&*& ~2&ʼ:&= *& w*&DM5.*&%) ^#V 6 *& ~!&*& w*&DM5.*&%) ^#V --:&&͝+!>|*&% q*&%) ^#V"&*&^#V!*&"&*h!&>2&!&:&#w*&&)*&*&M!&l2*&&)*&q#p*&&)*&*&M!&lK*&&)*&q#p:&<2&*&&) &+s+p+q!q&6!s&6*l&#~:( *l&~@2s&!q&6!p&6>!p&ڃ *q&&*l&~2r&.:r& Hn *p&&s& w <`iwy *p&&s& 6 :p&<2p&ͮ *#*ͮ *#*ͮ !&p+q!&6>!&*&&*&6 :&<2&¾!&6;A/>Z!/HQ*&&) ^#V - *B&%) ^#V"O&!N&6:N&w *O&*Q& w*Q&#"Q&*O&#"O&:N&<2N&*U&+"U&>|t *B&% :N&w*H&*F&s#r% Ê Ã -~:&= *& w!&6*&&*&~ʱ:&<2&×*&% :&wX9*!&r+s+p+q+p+q+p+q+p+q!&r+s+p+q+p+q+p+q:V#' +s#r!&>2&*&&)*&*&M!&Z2*&&)*&q#p*&&)*&*&M!&ZK*&&)*&q#p!&r+s+q+q+p+q*&&;.•{̈́Ú!6͜"&:͆ڲ͹/;,͹/͜"&:͆͹/;,͹/͜"&>|͹ ; ʡ!6!ͳ!"&!6>!*&!qһ*&"&:<2¡͹*M! ^#VF"v!&6!6*&??!>))* ="YP}/o|/gi`N#Fog_og~ T^#V) ^~ e^#V|g}o p_{&6*&&*&~0:&HҸ*&&*&6 :&<2&Ä!&q ̈́*&M&&̈́*&M!. ^#V<̈́<!*̈́o|g  =^#V))) DM!>))* ="YP}/o|/gi`N#Fog_og~ T^#V) ^~ e^#V|g}o p_{!!&s*&&!!&s:&O>*&&) ^#V"&!&>!&#w*&M!&Z+s#r*&&)*&&*&q#p:& *&*&/; ͹/*&*&:|*&*&:|HI͹!6I*&M*&`!6I*&Y *&s*& *&s*& " ~2& : H1:&.'!&6:<2:&W*&" "&.*&G -O"!6ÞF"vozgO{ozgi`N#Fogo&og_{_z#W!gN#@ @ <K̈́<ḯ< ̈́<̈́< #Ë́:&2!&q;2!&:u:p͹u͹!&p+q!&6ozgO{ozgi`N#Fogo&og_{_z#W!gN#@ @ Ml*&q#pÛ!&>2&!&:&#w*&&)*&*&&) *&M^*&q#p:&<2&!&>2&N! *&MZ"&*&*&&)*&*&s*&"*&###"&|̈́!6>!*&#) *&1#) N#Fq#p*&#) *&!#) N#Fq#p:<2¦!"''"!6ÞtÁ:/Ҵ͹:/L""!6!&s+q:&2:&!&=!,*??!>))* ="YP}/o|/gi`N#Fog_og~ T^#V) €~ e^#V|g}o p_{>!&ڠ*&&*&6 :&<2&!&6*~2& :&H:& H*&:&w*&#"&*#":&<2&å!&r+s+p+q!""&*&~??!>))* ="YP}/o|/gi`N#Fog_og~ T^#V) ^~ e^#V|g}o p_{&*&MpK*&q#p!"&;2!6;2&0/>9!&/H!&0_"&ï!6*&!&r+s+p+q!"&*&!'ڂ*'"'Â*'Y ~2'*' ~2'*' ~2'#*'*'M'i1#*'*'M*'͡#*'*'M'i!#*'*'M*'͡A#W͹>A#*͡:<2>:I!6; I<*Q̈́!"&!6>!*&A#) >w#6:<2\ozgO{ozgi`N#Fogo&og_{_z#W!gN#@ @  *&~.H0*&*& w*&#"&*&#"&.*&DM*& -=;=X;2*+".! -h:2*&! 6ozgO{ozgi`N#Fogo&og_{_z#W!gN#@ @ "&!&6>!&)*&&*&6 :&<2& !&6*&*&!0!&s*&*&"&*&&*&:&w> &͝*&! "&:&<2&.!*&)"*̈́ *1#*DM̈́ *!#*DM̈́ _ogi`N#Fog_ogDM!>))덑( ??!>))* ="YP}/o|/gi`N#Fog_og~ T^#V) €~ e^#V|g}o p_{~4*^DM"^J2`:` ڷ!   u~<2`:\OB:]ZR~Ûl! ! YBA*yUTB -- VERSION 1.0PERMANENT ERROR, TYPE RETURN TO IGNOREozgO{ozgi`N#Fogo&og_{_z#W!gN#W#x####[$$[%ozgO{ozgi`N#Fogo&og_{_z#W!gN#@ @ A2y1!  u2]b!1 ! YIBIAuyA2y1!  u!]6b!1 !C  ??!>))* ="YP}/o|/gi`N#Fog_og~ T^#V) €~ e^#V|g}o p_{u>1SYSGEN VERSION 1.2GET SYSTEM? (A,B,N)SOURCE ON B, THEN TYPE RETURNPUT SYSTEM? (A,B,N)DESTINATION ON B, THEN TY1U_> >  ~#O****!*$*'! ">2;!;~4O22<!<~4ozgO{ozgi`N#Fogo&og_{_z#W!gN#@ @ PE RETURNPERMANENT ERROR, TYPE RETURN TO IGNOREFUNCTION COMPLETEREBOOTING, TYPE RETURN1u__> > ~#%O****!*$*'! "^2[![~4O:2\!\*>DM">B2@:@ ڪ! v<2@:<O::=RJvÓd!y)2=Zy)!=6Z>) SYSP??!>))* ="YP}/o|/gi`N#Fog_og~ T^#V) €~ e^#V|g}o p_{) U B#1 ZERO: EQU B#0 ONE: EQU B#1 ; ;SHIFT MATRIX CONTROL DEFINITIONS ; SHIFT: DEF 8X,B#0,3X,B#0,19X ROT#6 ;R S EXNOR: EQU Q#7 ;R S ; ;AM2901 DESTINATION CONTROL EQUATES ; QREG: EQU Q#0 ;F Q , Y=F  DATA: DEF 28X,4VH# ;DEF TO SUPPLY ALU DATA INPUT ; END  H#D R14: EQU H#E R15: EQU H#F ; ;AM2901 SOURCE (R S) OPERAND EQUATES ; AQ: EQU Q#0 AB: EQU  4VX,H#7,24X ;FILE REFERENCE ELPF0: DEF 4VX,H#8,24X ;END LOOP & POP IF F=0 PUSH: DEF 4VX,H#9,24X ;PUSH PC AND CONTATE: DEF 8X,B#0,3X,B#1,19X DBLROT: DEF 8X,B#1,3X,B#0,19X ARITH: DEF 8X,B#1,3X,B#1,19X ; ;AM2909 NEXT MICROINSTRUCT NOOP: EQU Q#1 ;NOTHING , Y=F RAMA: EQU Q#2 ;F B , Y=A RAMF: EQU Q#3 ;F B , Y=F RAMQD: EQ#1 ZQ: EQU Q#2 ZB: EQU Q#3 ZA: EQU Q#4 DA: EQU Q#5 DQ: EQU Q#6 DZ: EQU Q#7 ; INUE POP: DEF 4VX,H#A,24X ;POP AND CONTINUE ELPCN4: DEF 4VX,H#B,24X ;END LOOP & POP IF CN+4 JRF0: DEF 4VX,H#C;AMDASM EXAMPLE, DEFINITION PHASE ; TITLE AM2900 KIT DEFINITIONS ; WORD 32 ; ;AM2901 REGISTER EQUATES ; R0: EQU ION ADDRESS SELECT DEFINITIONS ; CJR: DEF 4VX,H#0,24X ;JUMP REGISTER IF F 0 JR: DEF 4VX,H#1,24X ;JUMP REGISTERQU Q#4 ;F/2 B , Q/2 Q , Y=F RAMD: EQU Q#5 ;F/2 B , Y=F RAMQU: EQU Q#6 ;2F B , 2Q Q , Y=F RAM;AM2901 ALU FUNCTION (R FUNCTION S) EQUATES ; ADD: EQU Q#0 ;R+S SUBR: EQU Q#1 ;S-R SUBS: EQU Q,24X ;JUMP REGISTER IF F=0 JRF3: DEF 4VX,H#D,24X ;JUMP REGISTER IF F3 JROVR: DEF 4VX,H#E,24X ;JUMP REGISTER IF OVRH#0 R1: EQU H#1 R2: EQU H#2 R3: EQU H#3 R4: EQU H#4 R5: EQU H#5 R6: EQU H#6 R7: CONT: DEF 4VX,H#2,24X ;CONTINUE JMAP: DEF 4VX,H#3,24X ;JUMP MAP CJSR: DEF 4VX,H#4,24X ;JUMP SUBROUTINE IF U: EQU Q#7 ;2F B , Y=F ; ;OTHER EQUATES ; CN0: EQU B#0 CN1: EQU B#1 LOW: EQU B#0 HIGH: EQ#2 ;R-S OR: EQU Q#3 ;R S AND: EQU Q#4 ;R S NOT: EQU Q#5 ;R S EXOR: EQU Q JRCN4: DEF 4VX,H#F,24X ;JUMP REGISTER IF CN4 ; ;OTHER DEFINITIONS ; AM2901: DEF 9X,3VQ#1,1X,3VX,1VX,3VX,4VX,4VX,4X EQU H#7 R8: EQU H#8 R9: EQU H#9 R10: EQU H#A R11: EQU H#B R12: EQU H#C R13: EQUF 0 JSR: DEF 4VX,H#5,24X ;JUMP TO SUBROUTINE (CALL) RTN: DEF 4VX,H#6,24X ;RETURN FROM SUBROUTINE LOOP: DEF *  FILE NOT FOUND$ ILLEGAL COMMAND$1Y.!\ -,_͗:[NL *zDM͇g:t mgYÅBy4EC+s#r@C+s#r*DM͇*u& ~!74u*~"*8"~!;p+q>:P¼~C"@*~">+*z"<>:P!"B>BP*<~ *B+"B*<#"<S TURN - MOVE POINTER TO NEXT PAGE AND DISPLAY *"|!+p+q:sO**",|S!".![6>.P:[H*,DM1*,",*.+".ð:[!s6*,"D OPERATION ******* ********* B MOVE POINTER TO BEGINNING OF FILE AND DISPLAY PAGE +/-NP MOVE POINTER PLUS OR MINUS N !w6!":t- !w6͟:t02xO> *x&"͟:t02xO> *)))*) *x& "͟ú:tL*wM*PM:t!"B!":*:+":<C"@*<">*@*>DM*z +|9z>C#s#r>~Cn@~C+s#rt*z"~*~"@1:s/,H+s#r*,~/*,#",*,+",*,~ I*,+",6*,"!2r+s+q:0›>1P~CHҘ*~ PAGES (23 LINES) AND DISPLAY PAGE 0P MOVE POINTER TO THE BEGINNING OF THE BUFFER AND DISPLAY PAGE +/-NL MOVE POINP7>P+*/"*wM*P4*z"~"M:tDJ*DM͕MSgYLYv !\q*\& !]q*]&C+s#r@C+s#r*DM͇*u& ~2tO>Zһ:t2t:u<2u*g͇ g:2v!t6 !u6͟!Dq!D:t:v;ASSEMBLY PHASE ; TITLE AM2900 KIT EXERCISE #10 ;STATEMENT ; CONT & AM2901 RAMF,DZ,,OR,,R0~ Ž*1+"1*~#"~`*1#"1>1Pz~CH*~~ *1+"1*~+"~âz~C*~#"~*~"!46~TER PLUS OR MINUS N LINES AND DISPLAY PAGE ND DISCARD N PAGES FROM BUFFER AREA ,REFILL BUFFER AND DISPLAY CURRENT PAGE 0 !_p+q*^ !ap+q*` 2[!cp+q*b 2[!ep+q*d !gp+q*f !ip+q*h 2[!kp+q*j U S I N G D I S P L A Y ************************* THE DISPLAY PROGRAM IS USED TO PAGE THROUGH AMDASM AND AMPROM OUTPUTHDM!>))덑o|g) =DM!>))> =6i`N#Fogo&ogn@~C+s#rt*z"~*~"@ & DATA H#F ; 1 CONT & AM2901 RAMF,DZ,,OR,,R1 & DATA 9 ; 2 CONT & AM2901 RAMF,DZ,,OR,,R2 & DATCf*~~23 Z:3 '*3Mg!44P:4O>26!56:6!5P g!44#48*~#"~*~#"~ g*"8"~!76>!7ڈD DISCARD ALL DATA UP TO THE CURRENT POINTER, REFILL BUFFER AND DISPLAY FIRST PAGE E EXIT DISPLAY (CR) CARRIAGE RE 2[!mp+q*l  !nq*n& !pp+q*o  g g!rp+q*q A!s6!Y"z"~"*z"!6!6 FILES. IT IS ENTERED BY TYPING DISPL FILENAME.FILETYPE - AFTER THE A> OF COURSE! FOR EXAMPLE: DISPL KIT10.P2L COMMAN+ A B#0001 ; 3 CONT & AM2901 RAMF,DZ,,OR,,R4 & DATA 4 ; 4 PUSH & AM2901 RAMF,ZB,,AND,,R3 CJS: EQU H#1 ;CONDITIONAL JUMP TO SUBROUTINE WITH JUMP ;ADDRESS IN THE PIPELINE REGISTER JMAP: EQU H#2 ;JUMP TO ADDRESS AT  STOP & AM2901 ,ZB,,OR,,R3 ; 14 ORG 15 ; 15 INCR3:: RTN RCE OPERANDS (R S) ; AQ: EQU Q#0 AB: EQU Q#1 ZQ: EQU Q#2 ZB: EQU Q#3 ZA: EQU Q#4 DA: EQU Q#5 DQ: EQU Q#6 DZ: EQU Q#7 ; ; 5 BEGIN:: CONT & AM2901 ,DA,,AND,R0,R0 & DATA 1 ; 6 CJSR INCR3 & AM2901 RAMD,ZB,,OR,,R0 ; TITLE T H E A M 2 9 0 0 F A M I L Y M N E M O N I C S ; ***************************************************** ; ; WORMAPPING PROM OUTPUT CJP: EQU H#3 ;CONDITIONAL JUMP TO ADDRESS IN PIPELINE ;REGISTER PUSH: EQU H#4 ;PUSH STACK AND CONDITIO & AM2901 RAMF,ZB,CN1,ADD,,R3 ; 16 ; END  ;AM2901 ALU FUNCTIONS (R FUNCTION S) ; ADD: EQU Q#0 SUBR: EQU Q#1 SUBS: EQU Q#2 OR: EQU Q#3 AND: EQU Q#4 NOTRS: EQU Q#5 7 CONT & AM2901 ,DA,,AND,R1,R1 & DATA 1 ; 8 CJSR INCR3 & AM2901 RAMD,ZB,,OR,,R1 ; 9 D 1 ; INSERTED AS DUMMY TO PROCESS DEFINITIONS ;13 DECEMBER 1976 JRM ;UPDATED SEPT 28, 1977 ; ;AM2901 INSTRUCTION SET ;NALLY LOAD COUNTER JSRP: EQU H#5 ;JUMP TO SUBROUTINE WITH STARTING ADDRESS ;CONDITIONALLY SELECTED FROM THE AM2911 ;R-R EXOR: EQU Q#6 EXNOR: EQU Q#7 ; ;AM2901 DESTINATION CONTROL ; QREG: EQU Q#0 NOP: EQU Q#1 RAMA: EQU Q#2 RAMF: EQU Q#3 R CONT & AM2901 ,DA,,AND,R2,R2 & DATA 1 ; 10 CJSR INCR3 & AM2901 RAMD,ZB,,OR,,R2 ; 11  ;REGISTER DEFINITIONS ; R0: EQU H#0 R1: EQU H#1 R2: EQU H#2 R3: EQU H#3 R4: EQU H#4 R5: EQU H#5 R6: EQU H#6 R7: EQU HEGISTER OR PIPELINE ADDRESS CJV: EQU H#6 ;CONDITIONAL JUMP TO VECTOR ADDRESS JRP: EQU H#7 ;JUMP TO ADDRESS CONDITIONALLY SELECAMQD: EQU Q#4 RAMD: EQU Q#5 RAMQU: EQU Q#6 RAMU: EQU Q#7 ; ;AM29811 INSTRUCTION SET ; JZ: EQU H#0 ;JUMP TO ADDRESS ZERO  CONT & AM2901 RAMF,ZB,CN0,SUBR,,R4 ; 12 ELPF0 & AM2901 ; 13 STOP:: JR#7 R8: EQU H#8 R9: EQU H#9 R10: EQU H#A R11: EQU H#B R12: EQU H#C R13: EQU H#D R14: EQU H#E R15: EQU H#F ; ;AM2901 SOU, TED FROM ;AM2911 R-REGISTER OR PIPELINE REGISTER RFCT: EQU H#8 ;REPEAT LOOP IF COUNTER IS NOT EQUAL TO ZERO RPCT: EQU H#9 SK REGISTER CLRVC: EQU H#4 ;CLEAR INTERRUPT FROM LAST VECTOR READ RDVC: EQU H#5 ;READ VECTOR RDSTA: EQU H#6 ;READ STATUS REGILDCT: EQU H#C ;LOAD COUNTER AND CONTINUE ;LOOP: EQU H#D ;TEST END LOOP ;CONT: EQU H#E ;CONTINUE ;TWB: EQU H#F ;THREE-WAPRD: EQU 5H#13: ;JUMP R PLUS D JPPD: EQU 5H#14: ;JUMP PC PLUS D JPPR: EQU 5H#15: ;JUMP PC PLUS R JSBR: EQU 5H#16: ;JUMP SUBRO ;CJS: EQU H#1 ;CONDITIONAL JUMP SUBROUTINE PIPELINE ;JMAP: EQU H#2 ;JUMP MAP ;CJP: EQU H#3 ;CONDITIONAL JUMP PIPELINE ;PUCH D FRD: EQU 5H#04: ;FETCH R PLUS D FPD: EQU 5H#05: ;FETCH PC PLUS D FPR: EQU 5H#06: ;FETCH PC PLUS R FSD: EQU 5H#07: ;FETC;REPEAT PIPELINE ADDRESS IF COUNTER IS NOT ;EQUAL TO ZERO CRTN: EQU H#A ;CONDITIONAL RETURN FROM SUBROUTINE CJPP: EQU H#B STER RDM: EQU H#7 ;READ MASK REGISTER SETM: EQU H#8 ;SET MASK REGISTER LDSTA: EQU H#9 ;LOAD STATUS REGISTER BCLRM: EQU H#A ;Y BRANCH ;THREE-WAY DEFINITION ;PASS TEST - CONTINUE PC AND POP ;FAIL TEST - REPEAT LOOP IF COUNTEUTINE R JSBD: EQU 5H#17: ;JUMP SUBROUTINE D JSBZ: EQU 5H#18: ;JUMP SUBROUTINE ZERO JSRD: EQU 5H#19: ;JUMP SUBROUTINE R PLUS DSH: EQU H#4 ;PUSH/CONDITIONAL LOAD COUNTER ;JSRP: EQU H#5 ;CONDITIONAL JUMP SUBROUTINE R OR PIPELINE ;CJV: EQU H#6 ;CONDITIH S PLUS D FPLR: EQU 5H#08: ;FETBH PC, LOAD R FRDR: EQU 5H#09: ;FETCH R PLUS D, LOAD R PLDR: EQU 5H#0A: ;LOAD R PSHP: EQU 5H;CONDITIONAL JUMP TO PIPELINE ADDRESS AND POP ;STACK LDCT: EQU H#C ;LOAD COUNTER AND CONTINUE LOOP: EQU H#D ;TEST END OF LBIT CLEAR MASK REGISTER BSETM: EQU H#B ;BIT SET MASK REGISTER CLRM: EQU H#C ;CLEAR MASK REGISTER DISIN: EQU H#D ;DISABLE INTER NOT ZERO ;FAIL TEST - JUMP PIPELINE AND POP IF COUNTER ZERO ; ;AM2914 INSTRUCTION SET ; MCLR: EQU H#0 ;MASTER CL JSPD: EQU 5H#1A: ;JUMP SUBROUTINE PC PLUS D JSPR: EQU 5H#1B: ;JUMP SUBROUTINE PC PLUS R RTS: EQU 5H#1C: ;RETURN S RTSD: EQUONAL JUMP VECTOR ;JRP: EQU H#7 ;CONDITIONAL JUMP R OR PIPELINE ;RFCT: EQU H#8 ;REPEAT LOOP, COUNTER NOT ZERO ;RPCT: EQU H#9#0B: ;PUSH PC PSHD: EQU 5H#0C: ;PUSH D POPS: EQU 5H#0D: ;POP S POPP: EQU 5H#0E: ;POP PC PHLD: EQU 5H#0F: ;HOLD ; ;CONDITIOOOP CONT: EQU H#E ;CONTINUE TO NEXT ADDRESS JP: EQU H#F ;JUMP TO PIPELINE REGISTER ADDRESS ; ;AM2910 MICROPROGRAM SEQUENCER RRUPT REQUEST LDM: EQU H#E ;LOAD MASK REGISTER ENIN: EQU H#F ;ENABLE INTERRUPT REQUEST ; ;AM2930 PROGRAM CONTROL UNIT ; ;NEAR CLRIN: EQU H#1 ;CLEAR ALL INTERRUPTS CLRMB: EQU H#2 ;CLEAR INTERRUPTS FROM M-BUS CLRMR: EQU H#3 ;CLEAR INTERRUPTS FROM MA 5H#1D: ;RETURN S PLUS D CHLD: EQU 5H#1E: ;HOLD PSUS: EQU 5H#1F: ;SUSPEND ; ;AM2931 PROGRAM CONTROL UNIT ; ;DELETE ";" FRO ;REPEAT PIPELINE, COUNTER NOT ZERO ;CRTN: EQU H#A ;CONDITIONAL RETURN ;CJPP: EQU H#B ;CONDITIONAL JUMP PIPELINE AND POP ;NAL INSTRUCTIONS - FAIL TEST, EXECUTE FPC ; JMPR: EQU 5H#10: ;JUMP R JMPD: EQU 5H#11: ;JUMP D JMPZ: EQU 5H#12: ;JUMP ZERO J ; ;DELETE ";" FROM AM2910 NMEMONICS IF NEEDED ;(DELETE IN EDITOR USING D-RETURN-RETURN) ; ;JZ: EQU H#0 ;JUMP ZERO (RESET) ON-CONDITIONAL INSTRUCTIONS ; PRST: EQU 5H#00: ;RESET FPC: EQU 5H#01: ;FETCH PC FR: EQU 5H#02: ;FETCH R FD: EQU 5H#03: ;FET- M AM2931 NMEMONICS IF NEEDED ; ;PRST: EQU H#0 ;RESET ;FPC: EQU H#1 ;FETCH PC ;FD: EQU H#2 ;FETCH D ;FPD: EQU H#3 DDT29A CTL 3F HALT E$ TO 200 WA 100 CL LO NOV DC 0$$$$ SUBAM2940 DMA CONTROL UNIT ; ;INSTRUCTIONS ; WRCR: EQU Q#0 ;WRITE CONTROL REGISTER RDCR: EQU Q#1 ;READ CONTROL REGISTER RDWC:SSEMBLER SOURCE FILES .BAK BACKUP FILE PRODUCED BY THE EDITOR .BAS BASIC COMPILER/INTERPRETER SOURCE FILE .CBL RESERVEDNEEDED ; ;PRST: EQU H#0 ;RESET ;PSUS: EQU H#1 ;SUSPEND ;PSHD: EQU H#2 ;PUSH D ;POPS: EQU H#3 ;POP STACK ;FPC:  G E N E R I C F I L E T Y P E D E S I G N A T O R S *******************************************************  ;FETCH PC PLUS D ;FRD: EQU H#4 ;FETCH R PLUS D ;FRDR: EQU H#5 ;FETCH R PLUS D, LOAD R ;JMPD: EQU H#6 ;JUMP D ;JPPRESET$ CTL 3F HALT E$ TO 200 WA 100 CL LO NOV DC 0$$$$ SUBMUL$ BAKSTEP SUB$$$ SUB FOR COBOL COMPILER/INTERPRETER SOURCE FILES .CIN RESERVED FOR COBOL INTERMEDIATE FILES .COM EXECUTABLE "LOAD MODULE" - MEEQU H#4 ;FETCH PC ;JMPD: EQU H#5 ;JUMP D ;PSHP: EQU H#6 ;PUSH PC ;RTS: EQU H#7 ;RETURN STACK ;FR: EQU H#8 ;FE OCT 22, 1977 FILE REFERENCES CONSIST OF TWO PARTS: THE PRIMARY NAME AND THE SECONDARY (OR GENERIC) NAME. THE TWO NAMES AD: EQU H#7 ;JUMP PC PLUS D ;JPRD: EQU H#8 ;JUMP R PLUS D ;JSBD: EQU H#9 ;JUMP SUBROUTINE D ;JSPD: EQU H#A ;JUMP SDRESS COUNTER ADCD: EQU 8Q#6% ;ADDRESS COMPARE, DECREMENT ADDRESS COUNTER WCOD: EQU 8Q#7% ;WORD COUNTER CARRY OUT, DECREMENT ADDT29A IR 106 J RUN E$STEP SUB$$$ SUBMORY IMAGE FILE .DEF AMDASM/29 DEFINITION SOURCE FILE (PHASE 1) .HEX 8080 ASSEMBLER OR PL/M MACHINE CODE IN "HEX" FORMAT TCH R ;FPR: EQU H#9 ;FETCH PC PLUS R ;FPLR: EQU H#A ;FETCH PC, LOAD R ;JMPR: EQU H#B ;JUMP R ;JPPR: EQU H#C ;JUMRE SEPERATED BY A "." AND ARE REPRESENTED BY PPPPPPPP.SSS WHERE THE CURRENTLY ASSIGNED FILETYPES (.SSS) FOR AMDOS/29 AND RELUBROUTINE PC PLUS D ;JSRD: EQU H#B ;JUMP SUBROUTINE R PLUS D ;PLDR: EQU H#C ;LOAD R ;POPS: EQU H#D ;POP STACK ;RTS:DDRESS COUNTER ; END 2LBPM UNMUL WCS FR 100 TO 200 WA 100 CL LO NOV DC 0$$$$ SUB .INT BASIC COMPILER INTERMEDIATE FILE .LIB SOURCE LIBRARY FILES AVAILABLE TO THE EDITOR DURING THE EDITING PROCESS WITH TP PC PLUS R ;JSBR: EQU H#D ;JUMP SUBROUTINE R ;JSPR: EQU H#E ;JUMP SUBROUTINE PC PLUS R ;PLDR: EQU H#F ;LOAD R ; ;ATED PROGRAMS ARE SHOWN BELOW: .$$$ TEMPORARY FILE CREATED AND NORMALLY ERASED BY THE EDITOR AND UTILITIES .ASM 8080 A EQU H#E ;RETURN STACK ;PSUS: EQU H#F ;SUSPEND ; ;AM2932 PROGRAM CONTROL UNIT ; ;DELETE ";" FROM AM2932 NMEMONICS IF . HE "R" COMMAND. ALSO RESERVED FOR MACRO LIBRARY FILES .MAP MAPPING PROM ENTRY POINT SYMBOL FILE GENERATED FROM PHASE 2 OF A PROCESSOR OUTPUT FILE .XRF OUTPUT FILE USED FOR SYMBOL CROSS-REFERENCE PROGRAM BL3 DB 0AH,0DH,'THE PRODUCT IS',0AH,0DH,'$' 016E 0E09 PRINT MVI C, 9H; ENABLE PRINT BUFFER 0170 CD05SEMBLY SOURCE INPUT FILE (PHASE 2) .SUB SOURCE FILE TO BE PROCESSED BATCHED TOGETHER USING THE SUBMIT COMMAND .SVM OP COL2 0112 CD6E01 CALL PRINT 0115 CDE401 CALL RDKEY 0118 CD7401 CALL XOUT; XFER MULTIPLIER TO 9555 011B 1MDASM/29 .MSG MESSAGE FILE GIVING INFORMATION .OBJ AMDASM/29 PHASE 2 OBJECT CODE OUTPUT FILE .OBM AMMAP/29 OBJECT CODE 00 CALL 5H ;PRINT LINE 0173 C9 RET 0174 0602 XOUT MVI B,2H; LOAD COUNT FOR 4 CHAR 0176 210048 DE MAPPING RAM IMAGE AS SAVED FROM MAPPING RAM .SVW WRITEABLE CONTROL STORE (WCS) IMAGE AS SAVED FROM WCS RAM .SYM RESERVE15B01 LXI D,LBL3 011E CD6E01 CALL PRINT 0121 CDAA01 CALL XIN; XFER 32 BIT PRODUCT TO CRT 0124 3E81 MVI A,81OUTPUT FILE .OUT AMPROM/29 PROM TAPE OUTPUT FILE .OVn OVERLAY OBJECT FILE; n = 0,1,2,3,4,5,6,7,8,9 .P1L AMDASM/29 PHASE LXI H,BUF1; LOAD ADDRESS OF FIRST CHAR 0179 7E LOOP MOV A,M; LOAD CHAR 017A CDCE02 CALL VHEX+1; CONVED FOR MACRO ASSEMBLER SYMBOL TABLE .TBL AMDASM/29 PHASE 1 OUTPUT TABLE THAT IS ALSO USED AS INPUT FILE TO PHASE 2 OF AMDASMH 0126 D373 OUT 73H 0128 3E30 MVI A,30H 012A D372 OUT 72H;RESET 012C C30000 JMP 0 012F 0A0D494E50LBL 1 OUTPUT LISTING FILE .P2L AMDASM/29 PHASE 2 OUTPUT LISTING FILE .P3L AMPROM/29 OUTPUT LISTING FILE .P4L AMMAP/29 OUTP 0100 ORG 100H 0100 310050 LXI SP,STACK 0103 112F01 BEG LXI D,LBL1 0106 CD6E01 CALL PRINT; PRINT TIRT CHAR TO BINARY 017D 07 RLC 017E 07 RLC 017F 07 RLC 0180 07 RLC 0181/29 .TMP TEMPORARY FILE USED BY SOME PROGRAMS, INTENTIONALLY DIFFERENT FROM $$$ FILES .XOB AMSCRM/29 BIT SCRAMBLING POST1 DB 0AH,0DH,'INPUT MULTIPLICAND',0AH,0DH,'$' 0146 0A0D494E50LBL2 DB 0AH,0DH,'INPUT MULTIPLIER',0AH,0DH,'$' 015B 0A0D544845LUT LISTING FILE .PRN 8080 ASSEMBLER OUTPUT LISTING FILE .RFM ROFF OUTPUT FILE .RSC ROFF INPUT FILE .SRC AMDASM/29 ASTLE 0109 CDE401 CALL RDKEY; READ KEYBOARD 010C CD7401 CALL XOUT; XFER MULTIPLICAND TO 9555 010F 114601 LXI D,LB/  4F MOV C,A 0182 23 INX H 0183 7E MOV A,M 0184 CDCE02 CALL VHEX+1 0187 B1  01D8 3E00 MVI A,0H 01DA D378 OUT 78H; RESET ACK 01DC 05 DCR B 01DD 3E00 MVI  OUT 73H 01BB 3E70 MVI A,70H 01BD D372 OUT 72H;ENABLE DATA IN 01BF DB70 IN 70H; READ IN BYTE PORT A A,0 01DF B8 CMP B 01E0 C8 RZ 01E1 C3AC01 JMP LOOK 01E4 3E80 RDKEY MVI A, 80H  IN 72H 01A0 E601 ANI 01H; CHECK2903 ACK 01A2 C29E01 JNZ AGAIN 01A5 3E00 MVI A,0H 01A7 D378 GRAMS AMDOS.MSG DUMP.COM ED.COM FILETYPE.MSG PIP.COM PROFILE.SUB STAT.COM SUBMIT.COM SYSGEN.COM SYSPUTB.COM  ORA C ;JOIN 2 CHAR BYTE 0188 05 DCR B; DECREMENT CHAR COUNT 0189 4F MOV C,A 018A 3E00  A D V A N C E D M I C R O D E V I C E S ******************************************* AMDOS 29 NOV 4,7 01C1 CD2102 CALL ACBTTY 01C4 DB71 IN 71H;READ IN BYTE PORT B 01C6 CD2102 CALL ACBTTY 01C 01E6 32FE47 STA BUF2; SET MAX READ BUFFER TO 128 01E9 11FE47 LXI D, BUF2; ADDRESS READ BUFFER  OUT 78H; RESET 8080 OBF FLAG 01A9 C9 RET 01AA 0602 XIN MVI B,2H INITDISK.COM  MVI A,0 018C B8 CMP B 018D CA9701 JZ SBYTE 0190 79 MOV A,C 0191 D370 O7 BASIC DOS SYSTEM TRACKS 1 & 2 - CCP,BDOS,BIOS LOADER BIOS.COM AMDASM PROGRAMS AM2900.LIB AMDASM.COM AMDASM.OV0 9 3E82 MVI A,82H 01CB D378 OUT 78H;ACK 01CD DB72 CK IN 72H 01CF E602 ANI 02H;CHECK IF 2903 HAS DROP 01EC 0E0A MVI C,0AH ; ENABLE READ BUFFER 01EE CD0500 CALL 5H; READ CRT 01F1 C9 RET ;LOAD WORD COUNT 01AC DB72 LOOK IN 72H;READ HANDSHAKE 01AE E602 ANI 02H; MASK 2903 OBF 01B0 C2AC01 JNZ LOOKUT 70H; A 0193 23 INX H; INCR CHAR ADDRESS 0194 C37901 JMP LOOP 0197 79 SBYTE MOV A,C 0198 AMPROM.COM AMSCRM.COM AMMAP.COM DISPL.COM DISPL.MSG KIT10.DEF KIT10.SRC 2900 DEVELOPMENT SUPPORT PROGRAMS DDT29.PED OBF 01D1 CACD01 JZ CK 01D4 3E30 MVI A,30H 01D6 D372 OUT 72H;RESET HANDSHAKE  ; ; A STANDARD SET OF USEFULL SUBROUTINES ; ; WRITE A CHARACTER  01B3 3E93 MVI A,093H; MODE 0 INPUT 01B5 D373 OUT 73H; PROGRAM 9555 01B7 3E0B MVI A,00BH 01B9 D373  D371 OUT 71H; B 019A 3E81 MVI A,81H 019C D378 OUT 78H; SET 8080 OBF FLAG 019E DB72 AGAINCOM LBPM.COM RBPM.COM SBPM.COM SET.COM VBPM.COM 8080 SOFTWARE DEVELOPMENT ASM.COM DDT.COM LOAD.COM GENERAL PRO0 IN E TO THE CONSOLE DEVICE ; 01F2 CD5A02 TTYOUT CALL SAVE ;SAVE EVERYTHING (CP/M DESTROYS ALL) 01F5 0E02 .0u."ͣ ./ -›:2T.*T.&/ 6 *%:8./rA:6./| :@.!:.^!@.6:2.:?./ͨ&&0&G& -Z-!(4r+s+p+q+p+q+p+q+p+q.*!4DM -[mͩҕ>%4Ͳ-ˆ*4>ʐ:<2MŸY ¨=¦!L:27û!4>5:M!3&-!3q*3&-!3p+q*3-23!3p+q*3-23!3p+q*3-!3p+q*3-!3p+q*3-23!4p+q* MVI C,2 ;CHARACTER TO CONSOLE FUNCTION CODE 01F7 CD0500 CALL 5 ;PUT OUT CHARACTER IN C 01FA CD6802 CALL UNSAV!?.6:G.U:3.e:<.e*K.&)".*o._.u.ͣ *o.51*.DMu.ͣ *o.%1*.DMu.ͣ *a.#"a.!<.6!6.6ý*[.+"[.:3.w#6Ñ*4>w#6ìuͩҬ*4>w#6!+46#6:I12.4:,4:.42,4:.42.4:+4<2+4ú:+4<*4w#6:+4:I12I1 :+4=O> >ͥ y INITIALIZATION ROMS SELECTED-YES OR NO? $ PUT DISKETTE TO BE INITIALIZED INTO DRIVE A $ SYSTE3-23!4p+q*4--!4q*4&-!4p+q*4-  !4p+q*4 -!4q! 4r+s+q* 4M! ^#VE ;RESTORE ALL 01FD C9 RET ; ; ; CARRIAGE RETURN/LINE FEED ON THE CONSOLE DEVICE *o.}u.ͣ *o.y.u.{. *o..u.<ͣ *o.F.u.ͣ *o.[.u.ͣ *o.a.u.ͣ *o.K.u.ͣ ::.i-!I1w*4N#F!3 ^#V")4!+46> !+4?*+4&*)46 :+4<2+4 *)46 *)4 6*)4 6*)4 6*)4 6!,46*!4#~:€*!4~@*)4w!,46M DISKETTE IN? $* 4>24:4@2 4! 46:&! 46 #6 !46+6>!4b*4&* 4~24 [*4& 4 :4w!44!44.*4& 4 6.!44+6 > !4ڨ*4 ; 01FE D5 DOCRLF PUSH D ;SAVE D&E 01FF 1E0D MVI E,0DH ;CARRIAGE RETURN 0201 CDF201 CALL TT:3.mC*K.&)".>a.Ͳ-m*o._.u.w. *o.51*.u.w. *o.%1*.u.w. 4&*a.+"a.:3.*o.DMu.l :00F FILE NOT FOUND$FILE EXTENSION ERROR$END OF DISK DATA ERROR$NO DIRECTORY SPACE$NO DIRECTORY SPACE$CON: LST: 1!+46>!+4*,4&*!4~2-4.:-4 H:-4)H*+4&*)4:-4w:,4<2,4*+4&*)46 :+4<2+4…*,4&*!4~.:,4<2&* 4~24 ʡ*4& 4 :4w!44!44t:4=O! 4 ~.½!45*4& 4 6$ 4 - -!4q:4!46*4M! ^#V1 ͻ Yy J2!~# 86!>w<L!F6:!wd!|~}}>2ͥ>4.ҋ7%*g.DM10u. ͣ ::.*m.0u. ͣ :M.<2M.:M.<2M.!D. (*m.~u.ͣ v-!3q*1 ,4!+46 > !+4a*,4&*!4~2-4 :-4)HK*+4&*)4:-4w:,4<2,4W*+4&*)46 :+4<2+4*#4!S ^#V[ *)4DM:343 q1*p43 ~.*p43) N#F -©*z4DMy *z4 ~=*z4 w:4~4Ͳ-+!-!4s *z4 ~!4*z4 w*z4DMf.*p43[4:Q4[4,"U4*J4"S4>W4Ͳ- *S4*U4 w*S4#"S4*U4#"U4*W4+"W4:Q4<2Q4O> .*[4DM - *Y4DMy:3 *3M*[4"U4!QB.!5.6!N.6 !"[."g.}2G.!8.6:3.@*o..u.Bͣ !H.6+6!;.6*[."].:F.24O>l:424q!46!46>!4ک*4*74s#râ *74"F4*343 ~2?4*343) ^#V"D4*343) :?4,"@4*54"B4>!?4D *343 ~ .*343) N#F - *D4DMy*D4D qå*p43) ^#V"z4*p43) ^#V"|4*z4 ~24ʘ:4= *z4 w*z4DMf.*p43) ^#V -Z:4= *z4 w!46*4&*|4~*)4*43,6 *)4 6[ *)4DMAҶ*)4DMV*)4DM͌**)4DM*43,6 *)4 6[ *)4DMA/ *)4DM͌ ) ^#V - :4~4Ͳ-+!->͑-*p43 qå*p43) ^#V"z4*t4^#V!0-*v4,"~4*p43 ~ʉ.*p43) N#F -y46Ô *H43 :Q4w ! S !`4r+s+p+q!b46!d46*]4#~:G *]4~@2d4!b46!a46>!a4ڢ *b4&*]4~2c4.:c4 Hҍ *a4&d44&%1) >w#6*4&51) q#p:4<24v!9.6| 0/>9!I./HI!H.6*E.M! ^#V"4a"4"4d"4Mf:3 *94>w#6.*343) ^#V -( *343) ^#V"@4!?46:?4Җ *@4*B4 w*B4#"B4*@4#"@4:?4<2?4*F4+"F4>͑-“ *34ʍ:4<24s*p43 :4wå474!4r+s+p+q+p+q+p+q+p+q!4r+s+p+q+p+q+p+q:I124!46>!4:4*4Mu.**)4DM*)4 ~< *)4DMf.*4N#F!3 ^#V -4  *)4 6*43,6[ or*43,*#4s!24r+s+p+q>!/4ͽ-*z4DMy>~4Ͳ- *z4 ~ʻ*z4DM. *z4 6*z4DM *z4 6*p43 ~ *z4DMf.*p43) ^#V -*p43 ~  w <`iwØ *a4&d4 6 :a4<2a4L *b4&*]4~.¹ :b4<2b4!a46 > !a4*b4&*]4~2c4 *a4&d4 w <`iw *a4&d4 6 :a4<2a:G.[.4ͥ-H(É*4"[."].!9.6| :FÉé| #u!H.6*P.M*Q.3':G.lÉ*G1"4!H.6.3 :?4w*94*74s#rD â < ? !O4r+s+p+q+p+q+p+q*H4!R4s>͑- :R4 !R46 !R46*R4M! ^#V*J4"S4!P46L4:P4l :4=O!I1y-24:4<24-*!"4!"w.!b5"4>w.Ͳ-ʁ*q.*4 u.w. *4~x *4"4 *4"4~!"w.7>/4Ͳ-H */43 ~ .*/43) N#F -¯ */43) N#Fy>!/4ͽ- */4++M>i-/!I1w :I12I1*/43) N#F.!<4r+ *z4 6*p43 6å*p43) ^#V"z4*t4^#V!0-*v4,"~4*p43 ~24:4~4,>͑-*p43 ~ʆ.*p43) N#F -v*z4¾ d4V!y4r+s+p+q+p+q+p+q+p+q*r4!^#Vå*p43) ^#V"z4*t4^#V!0-*v4,"~4*p43 ~24:4!~4ͽ-ڊ*~4:4͑-*p:. ¡:I. ‘!=.6:I.2O.. ):G.HҸ.͒*e. ^#V"4É%1*4*4M*4o#51*4*4MͲ- *S4N*S4#"S4:P4<2P4  *J4"S4!P46L4:P4Ͳ-P *S4N *S4#"S4:P4<2P4,  *H43) ^#V"Y4*L4"W4*H43 ~2Q4*H43) ^#V"!b5"."1*4*."#1:V.!B.m../u.4!2.6!:.6 (:W.!B.o.=/u.4!3.6:X.!B.!4.6:Y.!s+p+q+p+q+p+q+p+q*34!>4s>͑-, !>46*>4M! ^#Vâ *54"B4!=4674:=4Ͳ-~ *B4w m *94:=4w#6*B4#"B4:=4<2=4J *94DMy!4>~4Ͳ-!-!4s *z4 :4*z4 w*z4DMf.*p43) ^#V -!4>~4Ͳ-!-*p43 q~4:4,*p432 o#!9.6| ,|:3.k*K.&)".*[."_.*o._.u.ͣ *o.51*.DMu.ͣ *o.%1*.DMu.ͣ *a.#"a.*[.#"[.!9.6| 2I.IÉ:I.4ښ*4&0 N(!44}:C. 24*4M>!46>!4*4& N(!44°*i.DM4!46>!4*4&4 N(!44 ( 4Ͳ-ڟ*4! -"4!44T!46*4&*4~0:4H*4&*46 !44ä!4q:4024O>9:424:4!4r+s+p+!S.6͠24 4 :8. :S.- *S.&/ :4w!S.4 !S.6*S.&/ ~24 a !S.4:4;\ :4!7.6.[0/ -i !6.6> :H.!4/H~A/>F/HH:4AҲ:4024ú:4724*4))))*4& "4:J.2J.!9.6s!H.6*4!"4}2J.!9.6| 240/>!>.6!G.6À*G.M4::.J*m.u.ͣ *m.4u.ͣ  (lu.ͣ 4u.ͣ u.ͣ  ʉ!<.6*[."_.*[.#"[.!;.6PAGE SYMBOL= CHAR= *** ERROR *** FATAL ERROR !4p+q!46>!4*4&*46 !44 (!46:L.!4'*4&. N(!44  ( ( (*i.#"i.!M.6:@.R^!@.6!D.:M.h (!M.4R^ (:@.Ҁ^!@.6q!46>!4@>4,M!4>O*4 Hq!4́-+s#r!44!4r+s+p+q!46>!4ڑ>4,0!4>O*4 q:4Ҋ! :424:A.ҹ *s.~24*s.#"s.:9.Ҷ :4 ± | !9.6 :9. : 24 :4 H !9.6 : 24:4 !46 5!:H.9!4/H'!4%-0_"4!9.6!H.6!"4}2T.>!T.]44ͥ-V*4)"4!J.4!T.46*4!"4}2J.!9.6| 240/>7!4 ENTRY POINT SYMBOLS WIDTH LIST NOLIST TITLE EJECT SPACE BASE END MAP LIST NOLIST OBJECT NOOBJECTSY!46!9.6| A/>Z!I./H~.HҌ*4&*4:I.w| A/>Z!I./H~0/>9/HH~.HҌ:4<24҉*4&:M.<2M.:D.H§*m.u.ͣ ^:;.ҵ"ü*N.M>!46#6*4&[0 ~24 L:4!N.!C. (l:4 ::4O>244́-+s#r!44P!4́->,0*4q!4r+s+p+q!46>!4*4&*4*4&*4 >!44¸>!4q| !4:I. !:42I.!:42I.:H.=2H.:9.1!:I. ,!| !9.6:I.>Z!4F!:424:42I.!46>;!4p!*4&. 6 :4<24R!!46!9.6| /HҬ*4))):40_"4!9.6:J.2J.p:J.¹!J.6!H.6*4!"4}2J.!9.6| 240:41H*4):40_"4!9.6MBOL NOSYMBOLHEX OCTAL WIDTH LINES M L NL O NO S NS H Q W LN*4:I.w<!H.6!4r+s+q*4&1) ^#V"4*4&!1) ^#V"4"444ͥ-!-2-ͅ-*4"44͵-a*4"4"4*4"4!46>!!46:4!47 (!44:N.!C.0 (l!46!44E*4M(!44!44 (l:G.d*g.#"g.:G.d ::.*m.u.  | *s.+"s.!4q:G.':42G.!4q*m.4u.ͣ !4q!46:4!4] (!44G!46>!4x (!44c!46>!!:4<Ҟ!*4&. :I.w:4<24z!:4ʰ!:4=2L.:2.!:.!:@.!^!@.6!C!5r+s+p+q+q!56>!5"*5&*56 :5<2!J.4!H.6*4!4r+s+p+q!"4*4!'-"4!46>!4O*4&*46 !443!46*4*4-!0!4s*4-"4*4&*4:4w> END .OPC.MAP.P4L .OBM :R.<2R.!}.ͽ-*k.[/u.}. >}.Ͳ-!8.6.ͩ!G.6U!8.6!R.6*R.&[/ ~43*4*4 24)*4#"4*4#"4,A!44>4Ͳ-"e.>*4"4:4X*4"4^*4"4ÿ>!9.6!"4}2J.| 240/>9ͣ *G.M4*m.4u.ͣ :=.*m.u. ͣ *m.O.u.ͣ :>.*m.u. ͣ *m..u.ͣ  (l!=.63 5!:5"!56"!56*s.~25 :5.:5H/H:5H:5 Hw"*5:5w*5#"5*s.#"s.:5<25":5”".56Û(:H5D–(!G56Û(!G56'æ(!H.6K5K5͒(*e. ^#V"C5'((..K5 -(!>.6*C5"G1:I. :I.,DDT29A CTL 3F HALT E$ TO 200 WA 100 CL LO NOV DC 0$$$$ SUBogDM!>))덑o|g- = -^#V))) DM!>))?- =7-YP}/o|/gi`N#Fog_og~ i-^#V) s-~ z-*5&)*5q#p*5&)*5*$5M!5́-`-*5&)*5q#p:5<25*$5&.) 5,+s#r!$5>2!5*5&)*5*!5M!5o-G-,*5u.4!9.6| ʙ,!H.6.!"Y5!."[5!T.6> !T.x+*Y5.ͩ*[5.ͩHZ+À+*Y5"Y5*[5"[5:T.<2T.2+!G.6dU*5DM*5 -Œ"! 5r+s+p+q+q!/" 5* 5~ * 5~.H"* 5*5 w*5#"5* 5#" 5ê".* 5DM*5 -">:5.4H )!H.6!T5p+q!"U5!X56>!X5M)*S5DM*U5ͩ9)P)*U5"U5:X5<2X5)>*X5M!* ^#V!F.s>͑-:F.H҂)eRESET$ CTL 3F HALT E$ TO 200 WA 100 CL LO NOV DC 0$$$$ SUB^#V|g}o …-_{ozgO{ozgi`N#Fogo&og_{_z#W!A.6_og_{ozgi`N#Fog_MUL$ BAKSTEP SUB$$$ SUB*T.M!{, ^#V=L/!q.L/u.4!_56Ñ,=./!m../u.4!]56!:.6Ñ,!2.6Ñ,=#*].DM5!56>!51#*5&5 N(:5<25#d#*].DM5A!56>!5d#*5&5 N(:5<25D#>!;.6!5r+s+q+q+p+q*F.&!-!K.s*F.&!->͑-ʮ):K.<2K.*::.22.!?.6*!2.6*M!!?.6*C!?.6*!W56| )<*!H.6*P.M*Q.3':G.DH:I.HHҚ'X(:I.A/>Z!I./H~.H'!H.6æ('!=.6:I.2O.!H.6:E.2G5*G5M!( ^#V"C5(a"CogDM!COPYRIGHT(C) 1978 ADVANCED MICRO DEVICES PB`o@gi-^#V/--DDT29A IR 106 J RUN E$STEP SUB$$$ SUB=/!o.=/u.4*o.DMu.l !^56Ñ,:W./!B.wÑ,Ñ,:X./!B.wÑ,Ñ,:Y.!B.wÑ,=!C.sÑ,=!D.sÑ,++*5&!-!5s*5&!-! 5s*5&.) ^#V"5*55,+s#r: 5!5O>Q$!5>! 5#w#*5"5$*!5M!5o-+s#r*!5M!5*>*G1!X5s>͛-:D.!X5H1*>:X52W5!?.6!X56:W5!X5X*l:X5<2X5A**!X5s>͛-t*!E.6ì*:X5„*!E.65("C5(d"C5(''( (:G.'(!9.6| ,:I. HG((!=.6:I.2O.:I.2H5| #¡(:H5Bv(!G56Û(:H5Q†(!G@ @ ??z#W!A.6_og_ 2LBPM UNMUL WCS FR 100 TO 200 WA 100 CL LO NOV DC 0$$$$ SUB++2,>,A,M,P,[,k,!9.6+:_5/ҩ,!G.6dU:]5Ҽ,./͕":^5,=/͕"!A.6_og_{ozgi`N#Fog_o-#s#r*5&)*5*5G-,*5&)*5q#p*5&)*55P-*5&)*5q#p6%! 5>2#5!#5:5#w*5&)*5*$5M!5́-G-,ì*:X5 ”*!E.6ì*:X5¤*!E.6ì*>*!8.6*`))))))[**>!_56+6+6*s.~ **s.#"s.*/!k./4  gi-^#V/--RE D&E 020A C9 RET ; ; ; OUTPUT A CARRIAGE SPACE TO THE CONSOLE DEVICE @ @ ??z#WJ1k1111N22N3LY LOW NIBBLE 0228 CD3202 CALL HEXEX ;CONVERT BINARY TO ASCII & O/P 022B F1 POP PSW ;GET A AGAIN 022C E60F @ @ ??z#W!A.6_ AMDOS/29 AMMAP ASSEMBLER, V1.0 T H&L TO CONSOLE DEVICE ; 0218 D5 HLCTTY PUSH D ;SAVE D&E 0219 5C MOV E,H ;CHARACTER FROM H I@ @ ??z#W!A.6_og_  ; 020B D5 SPTTY PUSH D ;SAVE D&E 020C 1E20 MVI E,' ' ;'SPACE' INTO E 020E CDF201 CONOUT CALL TTYOUT ; ANI 0FH ;GET NIBBLE 022E CD3202 CALL HEXEX ;CONVERT TO ASCII & O/P 0231 C9 RET ; 0232 FE0A HEXEX CPI OTAL ASSEMBLY ERRORS = gi-^#V/--NTO E 021A CDF201 CALL TTYOUT ;OUTPUT H 021D 5D MOV E,L ;CHARACTER FROM L TO E 021E C30E02 JMP CONOUT ;OUT gi-^#V/--OUTPUT TO CONSOLE 0211 D1 POP D ;RESTORE D&E 0212 C9 RET ; ; ; OUTPUT CHA10 ;LESS THAN 10? 0234 FA3902 JM CON ;JUMP IF YES 0237 C607 ADI 07 ;ADD BIAS 0239 C630 CON ADI 30H ;CONVERT@ @ ??z#W!A.6_ AMDOS/29 AMMAP ASSEMBLER, V1.0 TPUT L ; ; OUTPUT THE BINARY VALUE IN A AS TWO ASCII CHARACTERS ; 0221 F5 @ @ ??z#W!A.6_ AMDOS/29 AMMAP ASSEMBLER, V1.0 TRACTER IN ACCUMULATOR TO CONSOLE DEVICE ; 0213 D5 ACCTTY PUSH D ;SAVE D&E 0214 5F MOV E,A ;CYOUT ;PUT IT OUT 0204 1E0A MVI E,0AH ;LINE FEED 0206 CDF201 CALL TTYOUT ;PUT IT OUT 0209 D1 POP D ;RESTO TO ASCII 023B C31302 JMP ACCTTY ;OUT TO TTY ; ; BINARY VALUE IN H&L TO TTY AS FOUR ASCIOTAL ASSEMBLY ERRORS = gi-^#V/-- ACBTTY PUSH PSW ;SAVE A 0222 0F0F0F0F RRC ! RRC ! RRC ! RRC ;HI NIBBLE TO LOW NIBBLE 0226 E60F ANI 0FH ;KEEP ONOTAL ASSEMBLY ERRORS = gi-^#V/--HARACTER FROM A TO E 0215 C30E02 JMP CONOUT ;PUT IT OUT ; ; OUTPUT THE CHARACTER PAIR IN5 I CHARACTERS ; 023E F5 HLBTTY PUSH PSW ;SAVE A 023F 7C MOV A,H ;H TO A 0240 CD2102 CAL ; ; ; SAVE THE STACK POINTER IN 'SAVESP' ; 026E 226602  PUSH D ;SAVE D&E 0261 E5 PUSH H ;PUT RETURN ONTO STACK 0262 2A6602 LHLD TEMPHL ;RESTORE INCOMING H&L 026 ; FINDC - FIND NEXT ALPHANUMERIC CHARACTER ; FINDD - FIND NEXT DELIMITER ; CHKDEL XT CHR 024E 5E MOV E,M ;GET NEXT CHARACTER 024F CDF201 CALL TTYOUT ;PUT IT OUT 0252 05 DCR B ;COUNT -1 0287 226602 UNSAVSP SHLD TEMPHL ;SAVE H&L 028A E1 POP H ;GET RETURN 028B 228502 SHLD SAVRET ;SAVE RETURN L ACBTTY ;H TO TTY AS 2 ASCII CHARACTERS 0243 7D MOV A,L ;L TO A 0244 CD2102 CALL ACBTTY ;L TO TTY AS 2 ASCII CH SAVSP SHLD TEMPHL ;SAVE H&L 0271 E1 POP H ;GET RETURN FROM STACK 0272 228502 SHLD SAVRET ;SAVE RETURN 0275 5 C9 RET ; 0266 TEMPHL DS 2 ;TEMP SAVE OF H&L ; ; UNSAVE THE WHOLE MACHIN- CHECK CHARACTER IN A FOR A DELIMITER ; 029A CDB302 FINDC CALL CKDEL ;CHECK FOR DELIMITER 029D CAA402  0253 C24D02 JNZ STCLOOP ;LOOP UNTIL COUNT GOES TO ZERO 0256 CD6802 CALL UNSAVE ;RESTORE ALL 0259 C9 RET  028E 2A8302 LHLD SAVESP ;GET OLD SP 0291 F9 SPHL ;..INTO SP 0292 2A8502 LHLD SAVRET ;GET RETURN 0295 E5 ARACTERS 0247 F1 POP PSW ;RESTORE A 0248 C9 RET ; ; ; OUTPUT A STRING TO 210000 LXI H,0000 ;ZERO H&L 0278 39 DAD SP ;CAPTURE SP 0279 228302 SHLD SAVESP ;SAVE IT 027C 318502 LXE ; 0268 E1 UNSAVE POP H ;GET RETURN 0269 D1 POP D ;RESTORE D&E 026A C1 POP B ;RES JZ FC1 ;JUMP IF DELIMITER 02A0 22C902 SHLD NCP ;SAVE CURRENT BUFFER POINTER 02A3 C9 RET ; 02A4 FE0D F; ; ; SAVE THE WHOLE MACHINE ; 025A 226602 SAVE SHLD TEMPHL ;SAVE H&L  PUSH H ;RETURN ONTO STACK 0296 2A6602 LHLD TEMPHL ;RESTORE H&L 0299 C9 RET ; ; CURRENT CONSOLE DEVICE. THE ; FIRST BYTE OF THE STRING MUST BE THE O/P DATA LENGTH ; 0249 CDI SP,SAVRET ;POINT TO RETURN 027F 2A6602 LHLD TEMPHL ;RESTORE H&L 0282 C9 RET ; 0283 SAVESP DS 2 ; TORE B&C 026B F1 POP PSW ;RESTORE AC & FLAGS 026C E3 XTHL ;POP H&L, RETURN ONTO STACK 026D C9 RETC1 CPI 0DH ;CR? 02A6 C8 RZ ;RETURN IF YES 02A7 23 INX H ;TO NEXT LOCATION 02A8 C39A02 JMP FINDC ;CONT025D E3 XTHL ;GET RETURN, PUSH H&L 025E F5 PUSH PSW ;SAVE PSW 025F C5 PUSH B ;SAVE B&C 0260 D5  ; H&L POINTS TO STARTING LOCATION WITHIN BUFFER. ; BUFFER MUST BE TERMINATED WITH A CR (HEX 0D) 5A02 STCTTY CALL SAVE ;SAVE EVERYTHING 024C 46 MOV B,M ;GET COUNT 024D 23 STCLOOP INX H ;BUMP MEM PTR TO N 0285 SAVRET DS 2 ; ; ; UNSAVE PREVIOUSLY SAVED SP FROM 'SAVESP' ;6 INUE 02AB 23 FINDD INX H ;TO NEXT LOCATION 02AC CDB302 CALL CKDEL ;CHECK FOR DELIMITER 02AF C2AB02 JNZ FINDBINARY IN H&L ; 02E6 210000 CVHL LXI H,0000 ;INIT ACCUMULATOR 02E9 CDCD02 CVHL1 CALL VHEX ;GET HEX DIIC? 02D3 DAE202 JC VNUM ;JUMP IF YES 02D6 FE41 CPI 41H ;ALPHA? 02D8 D8 RC ;RETURN IF NO 02D9 FE47 TORE AC 030C C9 RET ; ; 5000 = STACK EQU 5000H 4800 = BUF1 EQU 4800H 47FE =  02C5 C8 RZ ;RETURN IF YES 02C6 FE0D CPI 0DH ;CARRIAGE RETURN? 02C8 C9 RET ;RETURN INDD ;FIND NEXT DELIMITER 0300 CD9A02 GTPRM1: CALL FINDC ;FIND NEXT CHARACTER 0303 C9 RET ; ; D ;CONTINUE LOOKING IF NO 02B2 C9 RET ; 02B3 7E CKDEL MOV A,M ;GET CHARACTER IN A 02B4 FE20 CHKDEL CPGIT 02EC C0 RNZ ;RETURN IF NOT VALID HEX 02ED 29 DAD H ;SHIFT H&L OVER FOUR BITS 02EE 29 DAD H ;  CPI 47H ;VALID? 02DB DAE002 JC VALPHA ;JUMP IF YES 02DE B7 ORA A ;SET CC IF NO 02DF C9 RET ;RETURN BUF2 EQU BUF1-2 030D END  ; 02C9 0000 NCP: DW 0000 ;NEXT BUFFER POINTER SAVE LOCATION 02CB 0000 ONCP: DW 0000 ;PREVIOUS BUFFER POINTER SAVE ; ; SUBTRACT D&E FROM H&L, RESULT IN H&L ; 0304 F5 HLMDE PUSH PSW ;SAI ' ' ;SPACE? 02B6 C8 RZ ;RETURN IF YES 02B7 FE2C CPI ',' ;COMMA? 02B9 C8 RZ ;RETURN IF YES 02BA* 02EF 29 DAD H ; * 02F0 29 DAD H ; * 02F1 B5 ORA L ;ADD NEW DIGIT TO H&L 02F2 6F MOV L, 02E0 D607 VALPHA SUI 7 ;ADJUST ALPHA 02E2 E60F VNUM ANI 0FH ;STRIP HI NIBBLE 02E4 BF CMP A ;SET ZERO CO:10010000310050112F01CD6E01CDE401CD740111EC :100110004601CD6E01CDE401CD7401115B01CD6EC0 :1001200001CDAA013E81D3733E30D372C3000 LOCATION ; ; VHEX VALIDATES A HEX DIGIT & PUTS IT IN A ; 02CD 1A VHVE AC 0305 7D MOV A,L ;L TO A 0306 93 SUB E ;MINUS E 0307 6F MOV L,A ;RESTORE NEW L 0308 7C  FE2E CPI '.' ;DOT? 02BC C8 RZ ;RETURN IF YES 02BD FE3D CPI '=' ;EQUAL SIGN? 02BF C8 RZ ;RETA ; * 02F3 13 INX D ;BUMP TO NEXT DIGIT 02F4 C3E902 JMP CVHL1 ;CONTINUE ; ; NDITION CODE 02E5 C9 RET ;RETURN ; ; CVHL CONVERTS UP TO TWO BYTES OF ASCII-HEX TO 00AD1 :100130000D494E505554204D554C5449504C49434F :10014000414E440A0D240A0D494E505554204D5538 :100150004C5449504C4945520A0D24EX LDAX D ;GET DIGIT IN A 02CE FE30 CPI 30H ;VALID? 02D0 D8 RC ;RETURN IF NO 02D1 FE3A CPI 3AH ;NUMER MOV A,H ;GET H IN A 0309 9A SBB D ;MINUS D 030A 67 MOV H,A ;RESTORE NEW H 030B F1 POP PSW ;RESURN IF YES 02C0 FE28 CPI '(' ;LEFT PAREN? 02C2 C8 RZ ;RETURN IF YES 02C3 FE29 CPI ')' ;RIGHT PAREN? 02F7 2AC902 GTPARM: LHLD NCP ;GET CURRENT BUFF POINTER 02FA 22CB02 SHLD ONCP ;SAVE OLD POINTER 02FD CDAB02 CALL F7 0A0D54484507 :100160002050524F445543542049530A0D240E0940 :10017000CD0500C906022100487ECDCE0207070743 :10018000074F237ECDCE02B :1002F7002AC90222CB02CDAB02CD9A02C9F57D9362 :060307006F7C9A67F1C94A :0000000000 ORG 100H LXI SP,STACK BEG LXI D,LBL1 CALL PRINT; PRINT TITLE CALL RDKEY; READ KEYBOARD CALL XOUT; XFER MULTIPLICAND TO 95AA :10024000CD21027DCD2102F1C9CD5A0246235ECDDA :10025000F20105C24D02CD6802C9226602E3F5C56E :06026000D5E52A6602C983 :10026800͚}o|g1054F3E00B8CA97017E :1001900079D37023C3790179D3713E81D378DB722F :1001A000E601C29E013E00D378C90602DB72E60278 :1001B000C2AC013E1P/ntFnt[nͪ>s>0r INPUT MULTIPLICAND $ INPUT MULTIPLIER $ THE PRODUCT IS $ !H~55 LXI D,LBL2 CALL PRINT CALL RDKEY CALL XOUT; XFER MULTIPLIER TO 9555 LXI D,LBL3 CALL PRINT CALL XIN; XFER 32 E1D1C1F1E3C9226602E122850221000041 :0B027800392283023185022A6602C988 :10028700226602E12285022A8302F92A8502E52AEB :1002970066093D3733E0BD3733E70D372DB5C :1001C00070CD2102DB71CD21023E82D378DB72E655 :1001D00002CACD013E30D3723E00D378053E00B84E :1001E000CO#~O>ʗyp#yyq>xrž>xr¬>s> s>prp!q!>xr>0r>x>ì>2GG ZhBIT PRODUCT TO CRT MVI A,81H OUT 73H MVI A,30H OUT 72H;RESET JMP 0 LBL1 DB 0AH,0DH,'INPUT MULTIPLICAND',0AH,0DH,'$' LBL2 2C9CDB302CAA40222C902C9FE0DC8AB :1002A70023C39A0223CDB302C2AB02C97EFE20C884 :1002B700FE2CC8FE2EC8FE3DC8FE28C8FE29C8FE73 :10028C3AC013E8032FE4711FE470E0ACD0562 :1001F00000C9CD5A020E02CD0500CD6802C9D51E38 :100200000DCDF2011E0ACDF201D1C9D51E20CDF2CD :10   _\]22 90|!}!ZF#^Mh"f*fCT"f"!9"1*DB 0AH,0DH,'INPUT MULTIPLIER',0AH,0DH,'$' LBL3 DB 0AH,0DH,'THE PRODUCT IS',0AH,0DH,'$' PRINT MVI C, 9H; ENABLE PRINT BUFFERC7000DC9000000001AFE30D8FE3ADAE202FE3D :1002D70041D8FE47DAE002B7C9D607E60FBFC92102 :1002E7000000CDCD02C029292929B56F13C3E9022202100001D1C9D55FC30E02D55CCDF2015DC30E1D :1002200002F50F0F0F0FE60FCD3202F1E60FCD32C0 :1002300002C9FE0AFA3902C607C630C31302F57Cf~"f"***fͳʤ" #Ú#ͳ«~ ,.=() 0:AG!))))o*"ͫ8  CALL 5H ;PRINT LINE RET XOUT MVI B,2H; LOAD COUNT FOR 4 CHAR LXI H,BUF1; LOAD ADDRESS OF FIRST CHAR LOOPGE RETURN/LINE FEED ON THE CONSOLE DEVICE ; DOCRLF PUSH D ;SAVE D&E MVI E,0DH ;CARRIAGE RETURN CALL TTYOUT ;PUT IT OUT MB MVI A,0 CMP B RZ JMP LOOK RDKEY MVI A, 80H STA BUF2; SET MAX READ BUFFER TO 128 LXI D; ; BINARY VALUE IN H&L TO TTY AS FOUR ASCII CHARACTERS ; HLBTTY PUSH PSW ;SAVE A MOV A,H ;H TO A CALL ACBTTY ;H TO TTY A OUT 78H; RESET 8080 OBF FLAG RET XIN MVI B,2H;LOAD WORD COUNT LOOK IN 72H;READ HANDSHAKE ANI 02H; MASK 2903 OBE CALL TTYOUT ;OUTPUT H MOV E,L ;CHARACTER FROM L TO E JMP CONOUT ;OUTPUT L ; ; OUTPUT THE BINARY VALUE IN A AS TWO ASCI MOV A,M; LOAD CHAR CALL VHEX+1; CONVERT CHAR TO BINARY RLC RLC RLC RLC MOV C,A INX H VI E,0AH ;LINE FEED CALL TTYOUT ;PUT IT OUT POP D ;RESTORE D&E RET ; ; ; OUTPUT A CARRIAGE SPACE TO THE CONSOLE DEVICE , BUF2; ADDRESS READ BUFFER MVI C,0AH ; ENABLE READ BUFFER CALL 5H; READ CRT RET ; ; A STANDARD SET OF S 2 ASCII CHARACTERS MOV A,L ;L TO A CALL ACBTTY ;L TO TTY AS 2 ASCII CHARACTERS POP PSW ;RESTORE A RET ; ; ; OUTPUT F JNZ LOOK MVI A,093H; MODE 0 INPUT OUT 73H; PROGRAM 9555 MVI A,00BH OUT 73H MVI A,70H OUT 72H;ENABLE DATA IN II CHARACTERS ; ACBTTY PUSH PSW ;SAVE A RRC ! RRC ! RRC ! RRC ;HI NIBBLE TO LOW NIBBLE ANI 0FH ;KEEP ONLY LOW NIBBLE CALL MOV A,M CALL VHEX+1 ORA C ;JOIN 2 CHAR BYTE DCR B; DECREMENT CHAR COUNT MOV C,A MVI A,0 CMP ; SPTTY PUSH D ;SAVE D&E MVI E,' ' ;'SPACE' INTO E CONOUT CALL TTYOUT ;OUTPUT TO CONSOLE POP D ;RESTORE D&E RET ; ; USEFULL SUBROUTINES ; ; WRITE A CHARACTER IN E TO THE CONSOLE DEVICE ; TTYOUT CALL SAVE ;SAVE EVERYTHING (CP/M DESTROYS ALL)A STRING TO CURRENT CONSOLE DEVICE. THE ; FIRST BYTE OF THE STRING MUST BE THE O/P DATA LENGTH ; STCTTY CALL SAVE ;SAVE EVERYN 70H; READ IN BYTE PORT A CALL ACBTTY IN 71H;READ IN BYTE PORT B CALL ACBTTY MVI A,82H OUT 78H;ACK CK IN 72H AN HEXEX ;CONVERT BINARY TO ASCII & O/P POP PSW ;GET A AGAIN ANI 0FH ;GET NIBBLE CALL HEXEX ;CONVERT TO ASCII & O/P RET ; B JZ SBYTE MOV A,C OUT 70H; A INX H; INCR CHAR ADDRESS JMP LOOP SBYTE MOV A,C OUT ; OUTPUT CHARACTER IN ACCUMULATOR TO CONSOLE DEVICE ; ACCTTY PUSH D ;SAVE D&E MOV E,A ;CHARACTER FROM A TO E JMP CONOUT ;P MVI C,2 ;CHARACTER TO CONSOLE FUNCTION CODE CALL 5 ;PUT OUT CHARACTER IN C CALL UNSAVE ;RESTORE ALL RET ; ; ; CARRIATHING MOV B,M ;GET COUNT STCLOOP INX H ;BUMP MEM PTR TO NXT CHR MOV E,M ;GET NEXT CHARACTER CALL TTYOUT ;PUT IT OUT DCRI 02H;CHECK IF 2903 HAS DROPPED OBF JZ CK MVI A,30H OUT 72H;RESET HANDSHAKE MVI A,0H OUT 78H; RESET ACK DCR  HEXEX CPI 10 ;LESS THAN 10? JM CON ;JUMP IF YES ADI 07 ;ADD BIAS CON ADI 30H ;CONVERT TO ASCII JMP ACCTTY ;OUT TO TTY 71H; B MVI A,81H OUT 78H; SET 8080 OBF FLAG AGAIN IN 72H ANI 01H; CHECK2903 ACK JNZ AGAIN MVI A,0H UT IT OUT ; ; OUTPUT THE CHARACTER PAIR IN H&L TO CONSOLE DEVICE ; HLCTTY PUSH D ;SAVE D&E MOV E,H ;CHARACTER FROM H INTO 9  B ;COUNT -1 JNZ STCLOOP ;LOOP UNTIL COUNT GOES TO ZERO CALL UNSAVE ;RESTORE ALL RET ; ; ; SAVE THE WHOLE MACHINE ; SA CHKDEL CPI ' ' ;SPACE? RZ ;RETURN IF YES CPI ',' ;COMMA? RZ ;RETURN IF YES CPI '.' ;DOT? RZ ;RETURN IF YES CPI MUST BE TERMINATED WITH A CR (HEX 0D) ; FINDC - FIND NEXT ALPHANUMERIC CHARACTER ; FINDD - FIND NEXT DELIMITER ; CHKDEL - CH CURRENT BUFF POINTER SHLD ONCP ;SAVE OLD POINTER CALL FINDD ;FIND NEXT DELIMITER GTPRM1: CALL FINDC ;FIND NEXT CHARACTER  SAVRET ;SAVE RETURN LXI H,0000 ;ZERO H&L DAD SP ;CAPTURE SP SHLD SAVESP ;SAVE IT LXI SP,SAVRET ;POINT TO RETURN LHLD  IF YES ORA A ;SET CC IF NO RET ;RETURN VALPHA SUI 7 ;ADJUST ALPHA VNUM ANI 0FH ;STRIP HI NIBBLE CMP A ;SET ZERO CONDITAVE SHLD TEMPHL ;SAVE H&L XTHL ;GET RETURN, PUSH H&L PUSH PSW ;SAVE PSW PUSH B ;SAVE B&C PUSH D ;SAVE D&E PUSH H ;PUT '=' ;EQUAL SIGN? RZ ;RETURN IF YES CPI '(' ;LEFT PAREN? RZ ;RETURN IF YES CPI ')' ;RIGHT PAREN? RZ ;RETURN IF YES ECK CHARACTER IN A FOR A DELIMITER ; FINDC CALL CKDEL ;CHECK FOR DELIMITER JZ FC1 ;JUMP IF DELIMITER SHLD NCP ;SAVE CURREN RET ; ; ; ; SUBTRACT D&E FROM H&L, RESULT IN H&L ; HLMDE PUSH PSW ;SAVE AC MOV A,L ;L TO A SUB E ;MINUS E MOV L,A ;TEMPHL ;RESTORE H&L RET ; SAVESP DS 2 ; SAVRET DS 2 ; ; ; UNSAVE PREVIOUSLY SAVED SP FROM 'SAVESP' ; UNSAVSP SHLD TEMPHION CODE RET ;RETURN ; ; CVHL CONVERTS UP TO TWO BYTES OF ASCII-HEX TO BINARY IN H&L ; CVHL LXI H,0000 ;INIT ACCUMULATOR  RETURN ONTO STACK LHLD TEMPHL ;RESTORE INCOMING H&L RET ; TEMPHL DS 2 ;TEMP SAVE OF H&L ; ; UNSAVE THE WHOLE MACHINE ; CPI 0DH ;CARRIAGE RETURN? RET ;RETURN ; NCP: DW 0000 ;NEXT BUFFER POINTER SAVE LOCATION ONCP: DW 0000 ;PREVIOUS BUFFER T BUFFER POINTER RET ; FC1 CPI 0DH ;CR? RZ ;RETURN IF YES INX H ;TO NEXT LOCATION JMP FINDC ;CONTINUE FINDD INX H ;TRESTORE NEW L MOV A,H ;GET H IN A SBB D ;MINUS D MOV H,A ;RESTORE NEW H POP PSW ;RESTORE AC RET ; ; STACK EQU 5000HL ;SAVE H&L POP H ;GET RETURN SHLD SAVRET ;SAVE RETURN LHLD SAVESP ;GET OLD SP SPHL ;..INTO SP LHLD SAVRET ;GET RETUR CVHL1 CALL VHEX ;GET HEX DIGIT RNZ ;RETURN IF NOT VALID HEX DAD H ;SHIFT H&L OVER FOUR BITS DAD H ; * DAD H ; * DAD  UNSAVE POP H ;GET RETURN POP D ;RESTORE D&E POP B ;RESTORE B&C POP PSW ;RESTORE AC & FLAGS XTHL ;POP H&L, RETURN ONTOPOINTER SAVE LOCATION ; ; VHEX VALIDATES A HEX DIGIT & PUTS IT IN A ; VHEX LDAX D ;GET DIGIT IN A CPI 30H ;VALID? RC ;RO NEXT LOCATION CALL CKDEL ;CHECK FOR DELIMITER JNZ FINDD ;CONTINUE LOOKING IF NO RET ; CKDEL MOV A,M ;GET CHARACTER IN  BUF1 EQU 4800H BUF2 EQU BUF1-2 END N PUSH H ;RETURN ONTO STACK LHLD TEMPHL ;RESTORE H&L RET ; ; ; H&L POINTS TO STARTING LOCATION WITHIN BUFFER. ; BUFFERH ; * ORA L ;ADD NEW DIGIT TO H&L MOV L,A ; * INX D ;BUMP TO NEXT DIGIT JMP CVHL1 ;CONTINUE ; ; GTPARM: LHLD NCP ;GET STACK RET ; ; ; SAVE THE STACK POINTER IN 'SAVESP' ; SAVSP SHLD TEMPHL ;SAVE H&L POP H ;GET RETURN FROM STACK SHLDETURN IF NO CPI 3AH ;NUMERIC? JC VNUM ;JUMP IF YES CPI 41H ;ALPHA? RC ;RETURN IF NO CPI 47H ;VALID? JC VALPHA ;JUMP:  0100 ORG 100H 0100 310050 LXI SP,STACK 0103 113E01 BEG LXI D,LBL4 0106 CD8F01 CALL PRINT; PRIN MOV A,M 01A5 CDEB02 CALL VHEX+1 01A8 B1 ORA C ;JOIN 2 CHAR BYTE 01A9 05 DCR B; DECREMENTT MVI C, 9H; ENABLE PRINT BUFFER 0191 CD0500 CALL 5H ;PRINT LINE 0194 C9 RET 0195 0602 XOUTRAM 9555 01DF 3E70 MVI A,70H 01E1 D372 OUT 72H;ENABLE DATA IN 01E3 DB70 IN 70H; READ IN BYTE PORT A LBL7 012D CD8F01 CALL PRINT 0130 CDD201 CALL XIN; XFER REMAINDER TO CRT 0133 3E81 MVI A,81H 0135 D373 C3 C2BF01 JNZ AGAIN 01C6 3E00 MVI A,0H 01C8 D378 OUT 78H; RESET 8080 OBF FLAG 01CA DB72 T TITLE 0109 CD0102 CALL RDKEY; READ KEYBOARD 010C CD9501 CALL XOUT; XFER DIVISOR TO 9555 010F 115101 LXI D, CHAR COUNT 01AA 4F MOV C,A 01AB 3E00 MVI A,0 01AD B8 CMP B 01AE CAB801 JZ S MVI B,2H; LOAD COUNT FOR 4 CHAR 0197 210048 LXI H,BUF1; LOAD ADDRESS OF FIRST CHAR 019A 7E LOOP MOV A,M; 01E5 CD3E02 CALL ACBTTY 01E8 DB71 IN 71H;READ IN BYTE PORT B 01EA CD3E02 CALL ACBTTY 01ED  OUT 73H 0137 3E30 MVI A,30H 0139 D372 OUT 72H 013B C30000 JMP 0 013E 0A0D494E50 LBL4CKRA IN 72H 01CC E601 ANI 01H; CHECK RESET OF 2903 ACK 01CE CACA01 JZ CKRA 01D1 C9 RET LBL5 0112 CD8F01 CALL PRINT 0115 CD0102 CALL RDKEY 0118 CD9501 CALL XOUT; XFER MS DIVIDEND TO 9555 BYTE 01B1 79 MOV A,C 01B2 D370 OUT 70H; A 01B4 23 INX H; INCR CHAR ADDRESS 01BLOAD CHAR 019B CDEB02 CALL VHEX+1; CONVERT CHAR TO BINARY 019E 07 RLC 019F 07 RLC 01A3E82 MVI A,82H 01EF D378 OUT 78H;ACK 01F1 DB72 CK IN 72H 01F3 E602 ANI 02H;CHECK IF 2903 HAS DROPPE DB 0AH,0DH,'INPUT DIVISOR ',0AH,0DH,'$' 0151 0A0D494E50 LBL5 DB 0AH,0DH,'INPUT DIVIDEND ',0AH,0DH,'$' 0165 0A0D544845 LBL6  01D2 0602 XIN MVI B,2H;LOAD WORD COUNT 01D4 DB72 LOOK IN 72H;READ HANDSHAKE 01D6 E602 011B 23 INX H;INCREMENT CHAR COUNT 011C 0602 MVI B,2H 011E CD9801 CALL XOUT+3; XFER LS DIVIDEND 0121 1165 C39A01 JMP LOOP 01B8 79 SBYTE MOV A,C 01B9 D371 OUT 71H; B 01BB 3E81 MVI A,81H 0 07 RLC 01A1 07 RLC 01A2 4F MOV C,A 01A3 23 INX H 01A4 7E D OBF 01F5 CAF101 JZ CK 01F8 3E30 MVI A,30H 01FA D372 OUT 72H;RESET HANDSHAKE DB 0AH,0DH,'THE QUOTIENT IS',0AH,0DH,'$' 0179 0A0D544845 LBL7 DB 0AH,0DH,'THE REMAINDER IS ',0AH,0DH,'$' 018F 0E09 PRIN ANI 02H; MASK 2903 OBF 01D8 C2D401 JNZ LOOK 01DB 3E93 MVI A,093H; MODE 0 INPUT 01DD D373 OUT 73H; PROG501 LXI D,LBL6 0124 CD8F01 CALL PRINT 0127 CDD201 CALL XIN; XFER 16 BIT PRODUCT TO CRT 012A 117901 LXI D,01BD D378 OUT 78H; SET 8080 OBF FLAG 01BF DB72 AGAIN IN 72H 01C1 E601 ANI 01H; CHECK2903 ACK 01;  01FC 3E00 MVI A,0H 01FE D378 OUT 78H; RESET ACK 0200 C9 RET 0201 3E80 RDKEY MVI A, 80H MOV E,A ;CHARACTER FROM A TO E 0232 C32B02 JMP CONOUT ;PUT IT OUT ; ; OUTPUT THE CHARAPOP D ;RESTORE D&E 0227 C9 RET ; ; ; OUTPUT A CARRIAGE SPACE TO THE CONSOLE DEVICE AS FOUR ASCII CHARACTERS ; 025B F5 HLBTTY PUSH PSW ;SAVE A 025C 7C MOV A,H ;H TO A 025D CD 0212 0E02 MVI C,2 ;CHARACTER TO CONSOLE FUNCTION CODE 0214 CD0500 CALL 5 ;PUT OUT CHARACTER IN C 0217 CD8502 0FH ;KEEP ONLY LOW NIBBLE 0245 CD4F02 CALL HEXEX ;CONVERT BINARY TO ASCII & O/P 0248 F1 POP PSW ;GET A AGAIN 0 0203 32FE47 STA BUF2; SET MAX READ BUFFER TO 128 0206 11FE47 LXI D, BUF2; ADDRESS REACTER PAIR IN H&L TO CONSOLE DEVICE ; 0235 D5 HLCTTY PUSH D ;SAVE D&E 0236 5C MOV E,H ;CHARAC ; 0228 D5 SPTTY PUSH D ;SAVE D&E 0229 1E20 MVI E,' ' ;'SPACE' INTO E 022B CD0F02 CONOUT C3E02 CALL ACBTTY ;H TO TTY AS 2 ASCII CHARACTERS 0260 7D MOV A,L ;L TO A 0261 CD3E02 CALL ACBTTY ;L TO TTY A CALL UNSAVE ;RESTORE ALL 021A C9 RET ; ; ; CARRIAGE RETURN/LINE FEED ON THE CONSO249 E60F ANI 0FH ;GET NIBBLE 024B CD4F02 CALL HEXEX ;CONVERT TO ASCII & O/P 024E C9 RET ; 024F FE0A D BUFFER 0209 0E0A MVI C,0AH ; ENABLE READ BUFFER 020B CD0500 CALL 5H; READ CRT 020E C9 TER FROM H INTO E 0237 CD0F02 CALL TTYOUT ;OUTPUT H 023A 5D MOV E,L ;CHARACTER FROM L TO E 023B C32B02 JMPALL TTYOUT ;OUTPUT TO CONSOLE 022E D1 POP D ;RESTORE D&E 022F C9 RET ; ; S 2 ASCII CHARACTERS 0264 F1 POP PSW ;RESTORE A 0265 C9 RET ; ; ; OUTPUT LE DEVICE ; 021B D5 DOCRLF PUSH D ;SAVE D&E 021C 1E0D MVI E,0DH ;CARRIAGE RETURN 021E CD0F02 HEXEX CPI 10 ;LESS THAN 10? 0251 FA5602 JM CON ;JUMP IF YES 0254 C607 ADI 07 ;ADD BIAS 0256 C630 CON ADI  RET ; ; A STANDARD SET OF USEFULL SUBROUTINES ; ; WRITE  CONOUT ;OUTPUT L ; ; OUTPUT THE BINARY VALUE IN A AS TWO ASCII CHARACTERS ; ; OUTPUT CHARACTER IN ACCUMULATOR TO CONSOLE DEVICE ; 0230 D5 ACCTTY PUSH D ;SAVE D&E 0231 5F A STRING TO CURRENT CONSOLE DEVICE. THE ; FIRST BYTE OF THE STRING MUST BE THE O/P DATA LENGTH  CALL TTYOUT ;PUT IT OUT 0221 1E0A MVI E,0AH ;LINE FEED 0223 CD0F02 CALL TTYOUT ;PUT IT OUT 0226 D1 30H ;CONVERT TO ASCII 0258 C33002 JMP ACCTTY ;OUT TO TTY ; ; BINARY VALUE IN H&L TO TTY A CHARACTER IN E TO THE CONSOLE DEVICE ; 020F CD7702 TTYOUT CALL SAVE ;SAVE EVERYTHING (CP/M DESTROYS ALL) 023E F5 ACBTTY PUSH PSW ;SAVE A 023F 0F0F0F0F RRC ! RRC ! RRC ! RRC ;HI NIBBLE TO LOW NIBBLE 0243 E60F ANI <  ; 0266 CD7702 STCTTY CALL SAVE ;SAVE EVERYTHING 0269 46 MOV B,M ;GET COUNT 026A 23 STCLOOP INX H ;BUMP VESP DS 2 ; 02A2 SAVRET DS 2 ; ; ; UNSAVE PREVIOUSLY SAVED SP FROM 'SAVESP'  RET ; ; ; SAVE THE STACK POINTER IN 'SAVESP' ;  FINDC ;CONTINUE 02C8 23 FINDD INX H ;TO NEXT LOCATION 02C9 CDD002 CALL CKDEL ;CHECK FOR DELIMITER 02CC C2C802  027D D5 PUSH D ;SAVE D&E 027E E5 PUSH H ;PUT RETURN ONTO STACK 027F 2A8302 LHLD TEMPHL ;RESTORE INCOMIEX 0D) ; FINDC - FIND NEXT ALPHANUMERIC CHARACTER ; FINDD - FIND NEXT DELIMITER MEM PTR TO NXT CHR 026B 5E MOV E,M ;GET NEXT CHARACTER 026C CD0F02 CALL TTYOUT ;PUT IT OUT 026F 05 DCR ; 02A4 228302 UNSAVSP SHLD TEMPHL ;SAVE H&L 02A7 E1 POP H ;GET RETURN 02A8 22A202 SHLD SAVRET ;S028B 228302 SAVSP SHLD TEMPHL ;SAVE H&L 028E E1 POP H ;GET RETURN FROM STACK 028F 22A202 SHLD SAVRET ;SAVE RE JNZ FINDD ;CONTINUE LOOKING IF NO 02CF C9 RET ; 02D0 7E CKDEL MOV A,M ;GET CHARACTER IN A 02D1 FE20 NG H&L 0282 C9 RET ; 0283 TEMPHL DS 2 ;TEMP SAVE OF H&L ; ; UNSAVE THE  ; CHKDEL - CHECK CHARACTER IN A FOR A DELIMITER ; 02B7 CDD002 FINDC CALL CKDEL ;CHECK FOR DELIMITER 0 B ;COUNT -1 0270 C26A02 JNZ STCLOOP ;LOOP UNTIL COUNT GOES TO ZERO 0273 CD8502 CALL UNSAVE ;RESTORE ALL 0276 C9 AVE RETURN 02AB 2AA002 LHLD SAVESP ;GET OLD SP 02AE F9 SPHL ;..INTO SP 02AF 2AA202 LHLD SAVRET ;GET RETURTURN 0292 210000 LXI H,0000 ;ZERO H&L 0295 39 DAD SP ;CAPTURE SP 0296 22A002 SHLD SAVESP ;SAVE IT 0299 3 CHKDEL CPI ' ' ;SPACE? 02D3 C8 RZ ;RETURN IF YES 02D4 FE2C CPI ',' ;COMMA? 02D6 C8 RZ ;RETURN IWHOLE MACHINE ; 0285 E1 UNSAVE POP H ;GET RETURN 0286 D1 POP D ;RESTORE D&E 0287 C1 2BA CAC102 JZ FC1 ;JUMP IF DELIMITER 02BD 22E602 SHLD NCP ;SAVE CURRENT BUFFER POINTER 02C0 C9 RET ; 02C1 RET ; ; ; SAVE THE WHOLE MACHINE ; 0277 228302 SAVE SHLD TEMPHL N 02B2 E5 PUSH H ;RETURN ONTO STACK 02B3 2A8302 LHLD TEMPHL ;RESTORE H&L 02B6 C9 RET ; 1A202 LXI SP,SAVRET ;POINT TO RETURN 029C 2A8302 LHLD TEMPHL ;RESTORE H&L 029F C9 RET ; 02A0 SAF YES 02D7 FE2E CPI '.' ;DOT? 02D9 C8 RZ ;RETURN IF YES 02DA FE3D CPI '=' ;EQUAL SIGN? 02DC C8  POP B ;RESTORE B&C 0288 F1 POP PSW ;RESTORE AC & FLAGS 0289 E3 XTHL ;POP H&L, RETURN ONTO STACK 028A C9 FE0D FC1 CPI 0DH ;CR? 02C3 C8 RZ ;RETURN IF YES 02C4 23 INX H ;TO NEXT LOCATION 02C5 C3B702 JMP;SAVE H&L 027A E3 XTHL ;GET RETURN, PUSH H&L 027B F5 PUSH PSW ;SAVE PSW 027C C5 PUSH B ;SAVE B&C  ; ; H&L POINTS TO STARTING LOCATION WITHIN BUFFER. ; BUFFER MUST BE TERMINATED WITH A CR (H=  RZ ;RETURN IF YES 02DD FE28 CPI '(' ;LEFT PAREN? 02DF C8 RZ ;RETURN IF YES 02E0 FE29 CPI ')' ;RI ; 0314 2AE602 GTPARM: LHLD NCP ;GET CURRENT BUFF POINTER 0317 22E802 SHLD ONCP ;SAVE OLD POINTER 031A CDC80SCII-HEX TO BINARY IN H&L ; 0303 210000 CVHL LXI H,0000 ;INIT ACCUMULATOR 0306 CDEA02 CVHL1 CALL VHEXI 3AH ;NUMERIC? 02F0 DAFF02 JC VNUM ;JUMP IF YES 02F3 FE41 CPI 41H ;ALPHA? 02F5 D8 RC ;RETURN IF NO 0POP PSW ;RESTORE AC 0329 C9 RET ; ; 5000 = STACK EQU 5000H 4800 = BUF1 EQU 4800HGHT PAREN? 02E2 C8 RZ ;RETURN IF YES 02E3 FE0D CPI 0DH ;CARRIAGE RETURN? 02E5 C9 RET ;RETURN 2 CALL FINDD ;FIND NEXT DELIMITER 031D CDB702 GTPRM1: CALL FINDC ;FIND NEXT CHARACTER 0320 C9 RET ;  ;GET HEX DIGIT 0309 C0 RNZ ;RETURN IF NOT VALID HEX 030A 29 DAD H ;SHIFT H&L OVER FOUR BITS 030B 29 2F6 FE47 CPI 47H ;VALID? 02F8 DAFD02 JC VALPHA ;JUMP IF YES 02FB B7 ORA A ;SET CC IF NO 02FC C9  47FE = BUF2 EQU BUF1-2 032A END  ; 02E6 0000 NCP: DW 0000 ;NEXT BUFFER POINTER SAVE LOCATION 02E8 0000 ONCP: DW 0000 ;PREVIOUS BUFFER  ; ; ; SUBTRACT D&E FROM H&L, RESULT IN H&L ; 0321 F5 HLMDE  DAD H ; * 030C 29 DAD H ; * 030D 29 DAD H ; * 030E B5 ORA L ;ADD NEW DIGIT TO H&L 030F 6F RET ;RETURN 02FD D607 VALPHA SUI 7 ;ADJUST ALPHA 02FF E60F VNUM ANI 0FH ;STRIP HI NIBBLE 0301 BF CMP A POINTER SAVE LOCATION ; ; VHEX VALIDATES A HEX DIGIT & PUTS IT IN A ; 02EA PUSH PSW ;SAVE AC 0322 7D MOV A,L ;L TO A 0323 93 SUB E ;MINUS E 0324 6F MOV L,A ;RESTORE NEW L  MOV L,A ; * 0310 13 INX D ;BUMP TO NEXT DIGIT 0311 C30603 JMP CVHL1 ;CONTINUE ; ;SET ZERO CONDITION CODE 0302 C9 RET ;RETURN ; ; CVHL CONVERTS UP TO TWO BYTES OF A1A VHEX LDAX D ;GET DIGIT IN A 02EB FE30 CPI 30H ;VALID? 02ED D8 RC ;RETURN IF NO 02EE FE3A CP0325 7C MOV A,H ;GET H IN A 0326 9A SBB D ;MINUS D 0327 67 MOV H,A ;RESTORE NEW H 0328 F1 > :10010000310050113E01CD8F01CD0102CD9501117D :100110005101CD8F01CD0102CD9501230602CD986D :1001200001116501CD8F01CDD201117901CD803922A00231A2022A8302C914 :1002A400228302E122A2022AA002F92AA202E52A5A :1002B4008302C9CDD002CAC10222E602C9FE0DC81A :1002C40023T FOR 4 CHAR LXI H,BUF1; LOAD ADDRESS OF FIRST CHAR LOOP MOV A,M; LOAD CHAR CALL VHEX+1; CONVERT CHAR TO BINARY0D372DB70CD3E02DB71CD3E023E82D316 :1001F00078DB72E602CAF1013E30D3723E00D3785A :10020000C93E8032FE4711FE470E0ACD0500C9CD1A :10H CALL XOUT+3; XFER LS DIVIDEND LXI D,LBL6 CALL PRINT CALL XIN; XFER 16 BIT PRODUCT TO CRT LXI D,LBL7 CALL PRINT F0172 :10013000CDD2013E81D3733E30D372C300000A0D8D :10014000494E5055542044495649534F52200A0DA8 :10015000240A0D494E505554204449C3B70223CDD002C2C802C97EFE20C810 :1002D400FE2CC8FE2EC8FE3DC8FE28C8FE29C8FE56 :1002E4000DC9000000001AFE30D8FE3ADAFF02FE03 :100 RLC RLC RLC RLC MOV C,A INX H MOV A,M CALL VHEX+1 ORA C ;JOIN 2 CHAR 02100077020E02CD0500CD8502C9D51E0DCD0F8A :10022000021E0ACD0F02D1C9D51E20CD0F02D1C9A1 :10023000D55FC32B02D55CCD0F025DC32B02F50FCALL XIN; XFER REMAINDER TO CRT MVI A,81H OUT 73H MVI A,30H OUT 72H JMP 0 LBL4 DB 0AH,0DH,'INPUT DIVISOR ',0AH,0DH564944454EB1 :1001600044200A0D240A0D5448452051554F544946 :10017000454E542049530A0D240A0D544845205237 :10018000454D41494E444552F40041D8FE47DAFD02B7C9D607E60FBFC921C8 :100304000000CDEA02C029292929B56F13C30603C9 :100314002AE60222E802CDC802CDB702C9F57D93DBYTE DCR B; DECREMENT CHAR COUNT MOV C,A MVI A,0 CMP B JZ SBYTE MOV A,C OUT 3A :100240000F0F0FE60FCD4F02F1E60FCD4F02C9FEA3 :100250000AFA5602C607C630C33002F57CCD3E020C :100260007DCD3E02F1C9CD770246235EC,'$' LBL5 DB 0AH,0DH,'INPUT DIVIDEND ',0AH,0DH,'$' LBL6 DB 0AH,0DH,'THE QUOTIENT IS',0AH,0DH,'$' LBL7 DB 0AH,0DH,'THE REMA2204953200A0D240E05 :1001900009CD0500C906022100487ECDEB02070704 :1001A00007074F237ECDEB02B1054F3E00B8CAB81A :1001B0000179D370 ORG 100H LXI SP,STACK BEG LXI D,LBL4 CALL PRINT; PRINT TITLE CALL RDKEY; READ KEYBOARD CALL XOUT; XFER DIVISOR TO 90 :060324006F7C9A67F1C92D :0000000000 70H; A INX H; INCR CHAR ADDRESS JMP LOOP SBYTE MOV A,C OUT 71H; B MVI A,81H OUT 78H; SET 808D0F02055A :10027000C26A02CD8502C9228302E3F5C5D5E52A0B :030280008302C92D :10028500E1D1C1F1E3C9228302E122A202210000EA :0B02950INDER IS ',0AH,0DH,'$' PRINT MVI C, 9H; ENABLE PRINT BUFFER CALL 5H ;PRINT LINE RET XOUT MVI B,2H; LOAD COUN23C39A0179D3713E81D378DB5F :1001C00072E601C2BF013E00D378DB72E601CACA03 :1001D00001C90602DB72E602C2D4013E93D3733E2C :1001E0007555 LXI D,LBL5 CALL PRINT CALL RDKEY CALL XOUT; XFER MS DIVIDEND TO 9555 INX H;INCREMENT CHAR COUNT MVI B,2? 0 OBF FLAG AGAIN IN 72H ANI 01H; CHECK2903 ACK JNZ AGAIN MVI A,0H OUT 78H; RESET 8080 OBF FLAG CKRACONSOLE DEVICE ; HLCTTY PUSH D ;SAVE D&E MOV E,H ;CHARACTER FROM H INTO E CALL TTYOUT ;OUTPUT H MOV E,L ;CHARACTER FROM  PUSH D ;SAVE D&E MVI E,0DH ;CARRIAGE RETURN CALL TTYOUT ;PUT IT OUT MVI E,0AH ;LINE FEED CALL TTYOUT ;PUT IT OUT POP  ZERO CALL UNSAVE ;RESTORE ALL RET ; ; ; SAVE THE WHOLE MACHINE ; SAVE SHLD TEMPHL ;SAVE H&L XTHL ;GET RETURN, PUSH  MVI A, 80H STA BUF2; SET MAX READ BUFFER TO 128 LXI D, BUF2; ADDRESS READ BUFFER MVI C,0AH ; ENABLETERS ; HLBTTY PUSH PSW ;SAVE A MOV A,H ;H TO A CALL ACBTTY ;H TO TTY AS 2 ASCII CHARACTERS MOV A,L ;L TO A CALL ACBTTY IN 72H ANI 01H; CHECK RESET OF 2903 ACK JZ CKRA RET XIN MVI B,2H;LOAD WORD COUNT LOOK IN 72H;READ HANDSHAKE L TO E JMP CONOUT ;OUTPUT L ; ; OUTPUT THE BINARY VALUE IN A AS TWO ASCII CHARACTERS ; ACBTTY PUSH PSW ;SAVE A RRC ! RRCD ;RESTORE D&E RET ; ; ; OUTPUT A CARRIAGE SPACE TO THE CONSOLE DEVICE ; SPTTY PUSH D ;SAVE D&E MVI E,' ' ;'SPACE' INTOH&L PUSH PSW ;SAVE PSW PUSH B ;SAVE B&C PUSH D ;SAVE D&E PUSH H ;PUT RETURN ONTO STACK LHLD TEMPHL ;RESTORE INCOMING H READ BUFFER CALL 5H; READ CRT RET ; ; A STANDARD SET OF USEFULL SUBROUTINES ; ; WRITE A CHARACTER IN E TO  ;L TO TTY AS 2 ASCII CHARACTERS POP PSW ;RESTORE A RET ; ; ; OUTPUT A STRING TO CURRENT CONSOLE DEVICE. THE ; FIRST BYTANI 02H; MASK 2903 OBF JNZ LOOK MVI A,093H; MODE 0 INPUT OUT 73H; PROGRAM 9555 MVI A,70H OUT 72H;ENABLE DATA IN IN  ! RRC ! RRC ;HI NIBBLE TO LOW NIBBLE ANI 0FH ;KEEP ONLY LOW NIBBLE CALL HEXEX ;CONVERT BINARY TO ASCII & O/P POP PSW ;GET E CONOUT CALL TTYOUT ;OUTPUT TO CONSOLE POP D ;RESTORE D&E RET ; ; ; OUTPUT CHARACTER IN ACCUMULATOR TO CONSOLE DEVICE &L RET ; TEMPHL DS 2 ;TEMP SAVE OF H&L ; ; UNSAVE THE WHOLE MACHINE ; UNSAVE POP H ;GET RETURN POP D ;RESTORE D&E POTHE CONSOLE DEVICE ; TTYOUT CALL SAVE ;SAVE EVERYTHING (CP/M DESTROYS ALL) MVI C,2 ;CHARACTER TO CONSOLE FUNCTION CODE CALE OF THE STRING MUST BE THE O/P DATA LENGTH ; STCTTY CALL SAVE ;SAVE EVERYTHING MOV B,M ;GET COUNT STCLOOP INX H ;BUMP MEM 70H; READ IN BYTE PORT A CALL ACBTTY IN 71H;READ IN BYTE PORT B CALL ACBTTY MVI A,82H OUT 78H;ACK CK IN 72H ANI  A AGAIN ANI 0FH ;GET NIBBLE CALL HEXEX ;CONVERT TO ASCII & O/P RET ; HEXEX CPI 10 ;LESS THAN 10? JM CON ;JUMP IF YES  ; ACCTTY PUSH D ;SAVE D&E MOV E,A ;CHARACTER FROM A TO E JMP CONOUT ;PUT IT OUT ; ; OUTPUT THE CHARACTER PAIR IN H&L TO P B ;RESTORE B&C POP PSW ;RESTORE AC & FLAGS XTHL ;POP H&L, RETURN ONTO STACK RET ; ; ; SAVE THE STACK POINTER IN 'SL 5 ;PUT OUT CHARACTER IN C CALL UNSAVE ;RESTORE ALL RET ; ; ; CARRIAGE RETURN/LINE FEED ON THE CONSOLE DEVICE ; DOCRLFPTR TO NXT CHR MOV E,M ;GET NEXT CHARACTER CALL TTYOUT ;PUT IT OUT DCR B ;COUNT -1 JNZ STCLOOP ;LOOP UNTIL COUNT GOES TO02H;CHECK IF 2903 HAS DROPPED OBF JZ CK MVI A,30H OUT 72H;RESET HANDSHAKE MVI A,0H OUT 78H; RESET ACK RET RDKEY ADI 07 ;ADD BIAS CON ADI 30H ;CONVERT TO ASCII JMP ACCTTY ;OUT TO TTY ; ; BINARY VALUE IN H&L TO TTY AS FOUR ASCII CHARAC@ AVESP' ; SAVSP SHLD TEMPHL ;SAVE H&L POP H ;GET RETURN FROM STACK SHLD SAVRET ;SAVE RETURN LXI H,0000 ;ZERO H&L DAD SPES CPI 41H ;ALPHA? RC ;RETURN IF NO CPI 47H ;VALID? JC VALPHA ;JUMP IF YES ORA A ;SET CC IF NO RET ;RETURN VALPHA ',' ;COMMA? RZ ;RETURN IF YES CPI '.' ;DOT? RZ ;RETURN IF YES CPI '=' ;EQUAL SIGN? RZ ;RETURN IF YES CPI '(' ;LEND NEXT ALPHANUMERIC CHARACTER ; FINDD - FIND NEXT DELIMITER ; CHKDEL - CHECK CHARACTER IN A FOR A DELIMITER ; FINDC CALL CK CALL FINDD ;FIND NEXT DELIMITER GTPRM1: CALL FINDC ;FIND NEXT CHARACTER RET ; ; ; ; SUBTRACT D&E FROM H&L, RESULT IN H& ;CAPTURE SP SHLD SAVESP ;SAVE IT LXI SP,SAVRET ;POINT TO RETURN LHLD TEMPHL ;RESTORE H&L RET ; SAVESP DS 2 ; SAVRET  SUI 7 ;ADJUST ALPHA VNUM ANI 0FH ;STRIP HI NIBBLE CMP A ;SET ZERO CONDITION CODE RET ;RETURN ; ; CVHL CONVERTS UP TO TWFT PAREN? RZ ;RETURN IF YES CPI ')' ;RIGHT PAREN? RZ ;RETURN IF YES CPI 0DH ;CARRIAGE RETURN? RET ;RETURN ; NCP:DEL ;CHECK FOR DELIMITER JZ FC1 ;JUMP IF DELIMITER SHLD NCP ;SAVE CURRENT BUFFER POINTER RET ; FC1 CPI 0DH ;CR? RZ ;RL ; HLMDE PUSH PSW ;SAVE AC MOV A,L ;L TO A SUB E ;MINUS E MOV L,A ;RESTORE NEW L MOV A,H ;GET H IN A SBB D ;MINUS DDS 2 ; ; ; UNSAVE PREVIOUSLY SAVED SP FROM 'SAVESP' ; UNSAVSP SHLD TEMPHL ;SAVE H&L POP H ;GET RETURN SHLD SAVRET ;SAVE O BYTES OF ASCII-HEX TO BINARY IN H&L ; CVHL LXI H,0000 ;INIT ACCUMULATOR CVHL1 CALL VHEX ;GET HEX DIGIT RNZ ;RETURN IF NO DW 0000 ;NEXT BUFFER POINTER SAVE LOCATION ONCP: DW 0000 ;PREVIOUS BUFFER POINTER SAVE LOCATION ; ; VHEX VALIDATES A HEX DIGETURN IF YES INX H ;TO NEXT LOCATION JMP FINDC ;CONTINUE FINDD INX H ;TO NEXT LOCATION CALL CKDEL ;CHECK FOR DELIMITER  MOV H,A ;RESTORE NEW H POP PSW ;RESTORE AC RET ; ; STACK EQU 5000H BUF1 EQU 4800H BUF2 EQU BUF1-2 END RETURN LHLD SAVESP ;GET OLD SP SPHL ;..INTO SP LHLD SAVRET ;GET RETURN PUSH H ;RETURN ONTO STACK LHLD TEMPHL ;RESTORET VALID HEX DAD H ;SHIFT H&L OVER FOUR BITS DAD H ; * DAD H ; * DAD H ; * ORA L ;ADD NEW DIGIT TO H&L MOV L,A ; * IT & PUTS IT IN A ; VHEX LDAX D ;GET DIGIT IN A CPI 30H ;VALID? RC ;RETURN IF NO CPI 3AH ;NUMERIC? JC VNUM ;JUMP IF YJNZ FINDD ;CONTINUE LOOKING IF NO RET ; CKDEL MOV A,M ;GET CHARACTER IN A CHKDEL CPI ' ' ;SPACE? RZ ;RETURN IF YES CPI H&L RET ; ; ; H&L POINTS TO STARTING LOCATION WITHIN BUFFER. ; BUFFER MUST BE TERMINATED WITH A CR (HEX 0D) ; FINDC - FIINX D ;BUMP TO NEXT DIGIT JMP CVHL1 ;CONTINUE ; ; GTPARM: LHLD NCP ;GET CURRENT BUFF POINTER SHLD ONCP ;SAVE OLD POINTER A  L40: EQU 12H#40 LC: EQU 12H#C IN1: EQU 12H#16 IN2: EQU 12H#17 IN3: EQU 12H#18 OUT1: EQU 12H#1A IN""!9"1*O#""***" #÷#~ ,.=() 0:AG AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1 PAGE 1 ADV1RESET DDT29A CTL 3F HALT E LBPM UNMUL WCS FR 100 TO 200 WA 100 CL LO NOV DC 0 DDT29A IR 128 J RUN E DIV  OUT2: EQU 12H#1B OUT3: EQU 12H#1C OUT4: EQU 12H#1D OUT5: EQU 12H#1E L4: EQU 12H#4 L20: EQU 12H#20 LD:!))))o*"ͷ}o|g6 DEFINITIONS ; WORD 64 ;I/O,BR ADDRESS & COUNTER L0: EQU 12H#0 L1: EQU 12H#1 L2: EQU 12H#2 L3: E1P>͏͕Q͏͕#͘e͏y͏>s>0r INPUT DIVISOR $ INPUT DIVIDEND $ THE QUOTIENT IS $ THE R EQU 12H#D ;SHIFT MUX QIO0: EQU 2B#00 SIO0: EQU 2B#10 SIO3: EQU 2B#10 QIO3: EQU 2B#00 SHONE: EQU 2B#01 QU 12H#3 LF: EQU 12H#F LE: EQU 12H#E L5: EQU 12H#5 L14: EQU 12H#14 L15: EQU 12H#15 L26: EQU 12HEMAINDER IS $ !H~O#~O>ʸyp#Úyq>xr¿>xrr>s>prp>q>>xr>0r>x SHZERO: EQU 2B#11 ;29811 NXT ADDRESS JZ: EQU H#0 CJS: EQU H#1 JMAP: EQU H#2 CJP: EQU H#3 PUSH: EQU #26 L24: EQU 12H#24 L7: EQU 12H#7 L9: EQU 12H#9 L16: EQU 12H#16 LA: EQU 12H#A L21: EQU 12H#21 >2GG wͅ   _+\]+OO V00|>}>wF#^jͅ"*B H#4 JSRP: EQU H#5 CJV: EQU H#6 JRP: EQU H#7 RFCT: EQU H#8 RPCT: EQU H#9 CRTN: EQU H#A CJPP: EQU H# EQU H#2 IOT: EQU H#4 SMTC: EQU H#5 TMC: EQU H#6 SLN: EQU H#8 DLN: EQU H#A TDIV: EQU H#C TDC: E EQU H#2 TCMC: EQU H#7 ADR: EQU H#0 LDR: EQU H#1 ADRQ: EQU H#2 LDRQ: EQU H#3 RPT: EQU H#4 LDQP: ;SAVE EVERYTHING MOV B,M ;GET COUNT STCLOOP INX H ;BUMP MEM PTR TO NXT CHR MOV E,M ;GET NEXT CHARACTER CALL TTYOUT ;PUT IU 5B#00010 DADB: EQU 5B#00000 DAQ: EQU 5B#00100 ;ALU FUNTIONS R: EQU H#6 S: EQU H#4 SPF: EQU H#0 5VX,4VB#0000,1VB#1,1VX,4VX,4VX,2VX,2VX,12VX% END TOTAL PHASE 1 ERRORS = 0 4VX,4VX,4VX, / B LDCT: EQU H#C LOOP: EQU H#D CONT: EQU H#E JP: EQU H#F ;TEST SEL AMDOS/29 AMDASM MICRO ASSEMBLER, V1.QU H#F ;A AND B ADDRESS R0: EQU H#0 R1: EQU H#1 R2: EQU H#2 R3: EQU H#3 R4: EQU H#4 R5: EQ EQU H#5 QPT: EQU H#6 RQPT: EQU H#7 AUR: EQU H#8 LUR: EQU H#9 AURQ: EQU H#A LURQ: EQU H#B YBUS: T OUT DCR B ;COUNT -1 JNZ STCLOOP ;LOOP UNTIL COUNT GOES TO ZERO CALL UNSAVE ;RESTORE ALL RET ; ; ; SAVE THE WHOLE MA HIGH: EQU H#0 SUSR: EQU H#2 SURS: EQU H#1 ADD: EQU H#3 PAS: EQU H#4 COMS: EQU H#5 PAR: EQU H#6 CUT TO TTY ; ; BINARY VALUE IN H&L TO TTY AS FOUR ASCII CHARACTERS ; HLBTTY PUSH PSW ;SAVE A MOV A,H ;H TO A CALL ACBTTY 1 PAGE 2 ADV16 DEFINITIONS ACK: EQU H#9 HZ: U H#5 R6: EQU H#6 R7: EQU H#7 R10: EQU H#A R15: EQU H#F RE: EQU H#E ;CARRY MUX SELECT Z: EQEQU H#C LUQ: EQU H#D AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1 TITLE ADV16 DEFINITIONS ; WORD 64 ;I/O,BR ADDRESS & COUNTER L0: EQU 12H#0 L1: EQU 12H#1 L2: EQU 12H#2 L3: EQU 12H#3 LF: OMR: EQU H#7 LOW: EQU H#8 CRAS: EQU H#9 XNRS: EQU H#A XOR: EQU H#B AND: EQU H#C NOR: EQU H#D NAN;H TO TTY AS 2 ASCII CHARACTERS MOV A,L ;L TO A CALL ACBTTY ;L TO TTY AS 2 ASCII CHARACTERS POP PSW ;RESTORE A RET ; ; EQU H#B OVR: EQU H#C N: EQU H#D CN4: EQU H#E OBF: EQU H#A CNT: EQU H#F ;POLARITY T: EQU U 2B#00 ONE: EQU 2B#01 ZERO: EQU 2B#10 CARRY: EQU 2B#11 ;OTHERS IOEN: EQU B#0 IEN: EQU B#1 NOEY: EQU  PAGE 3 ADV16 DEFINITIONS SINX: EQU H#E REG: EQU H#F ;SPECIAL FUNCTIONS UMUL: EQU H#0 TMUL: EQU 12H#F LE: EQU 12H#E L5: EQU 12H#5 L14: EQU 12H#14 L15: EQU 12H#15 L26: EQU 12H#26 L24: EQU 12H#24 L7: EQU 12H#7 L9: D: EQU H#E OR: EQU H#F ;ALU DESINATIONS MEM: EQU H#F Q: EQU H#6 DQ: EQU H#5 Y: EQU H#C TCM: ; OUTPUT A STRING TO CURRENT CONSOLE DEVICE. THE ; FIRST BYTE OF THE STRING MUST BE THE O/P DATA LENGTH ; STCTTY CALL SAVE 1B#1 F: EQU 1B#0 ;ALU OPERAND SOURCES RARB: EQU 5B#01010 RADB: EQU 5B#01001 RAQ: EQU 5B#01110 DARB: EQB#0 GRD: EQU H#0 DIS: EQU B#1 ADV16: DEF 1VB#1,2VX,1VB#1,1VX,1VB#0,1VB#1,2VB#00,4VX,4VX,4VX,4VX,4VX, / C EQU 12H#9 L16: EQU 12H#16 LA: EQU 12H#A L21: EQU 12H#21 L40: EQU 12H#40 LC: EQU 12H#C IN1: EQU 12H#16 IN2: EQU 12H#17 INQU H#A TDIV: EQU H#C TDC: EQU H#F ;A AND B ADDRESS R0: EQU H#0 R1: EQU H#1 R2: EQU H#2 R3: EQU H#3 R4: EQU H#4 R5: EQU OR: EQU H#B AND: EQU H#C NOR: EQU H#D NAND: EQU H#E OR: EQU H#F ;ALU DESINATIONS MEM: EQU H#F Q: EQU H#6 DQ: EQU H#5 Y: AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1 PAGE 1  JP: EQU H#F ;TEST SEL ACK: EQU H#9 HZ: EQU H#B OVR: EQU H#C N: EQU H#D CN4: EQU H#E OBF: EQU H#A CNT: EQU H#F ;POLARIT ; * DAD H ; * ORA L ;ADD NEW DIGIT TO H&L MOV L,A ; * INX D ;BUMP TO NEXT DIGIT JMP CVHL1 ;CONTINUE ; ; GTPARM: LH3: EQU 12H#18 OUT1: EQU 12H#1A OUT2: EQU 12H#1B OUT3: EQU 12H#1C OUT4: EQU 12H#1D OUT5: EQU 12H#1E L4: EQU 12H#4 L20: H#5 R6: EQU H#6 R7: EQU H#7 R10: EQU H#A R15: EQU H#F RE: EQU H#E ;CARRY MUX SELECT Z: EQU 2B#00 ONE: EQU 2B#01 ZERO: E EQU H#C TCM: EQU H#2 TCMC: EQU H#7 ADR: EQU H#0 LDR: EQU H#1 ADRQ: EQU H#2 LDRQ: EQU H#3 RPT: EQU H#4 LDQP: EQU H#5 QP 0100 ORG H#100 0100 RT1: ADV16 ,,,,,NOEY,,R1,,,MEM,LOW,,,,F,GRD,CJS,,,IN 0101 ADV16 ,ZERO,,,,NOEY,,R0,,R15,MY T: EQU 1B#1 F: EQU 1B#0 ;ALU OPERAND SOURCES RARB: EQU 5B#01010 RADB: EQU 5B#01001 RAQ: EQU 5B#01110 DARB: EQU 5B#00010LD NCP ;GET CURRENT BUFF POINTER SHLD ONCP ;SAVE OLD POINTER CALL FINDD ;FIND NEXT DELIMITER GTPRM1: CALL FINDC ;FIND NEXT EQU 12H#20 LD: EQU 12H#D ;SHIFT MUX QIO0: EQU 2B#00 SIO0: EQU 2B#10 SIO3: EQU 2B#10 QIO3: EQU 2B#00 SHONE: EQU 2B#01 SHZQU 2B#10 CARRY: EQU 2B#11 ;OTHERS IOEN: EQU B#0 IEN: EQU B#1 NOEY: EQU B#0 GRD: EQU H#0 DIS: EQU B#1 ADV16: DEF 1VB#1,2VT: EQU H#6 RQPT: EQU H#7 AUR: EQU H#8 LUR: EQU H#9 AURQ: EQU H#A LURQ: EQU H#B YBUS: EQU H#C LUQ: EQU H#D SINX: EQU H#E EM,PAR,RARB,,,F,GRD,CJS,,,IN 0102 ADV16 ,ZERO,,,,,,,,R15,Q,PAR,RARB,,,F,GRD,PUSH,,,LE 0103 ADV16 IOEN,ZE DADB: EQU 5B#00000 DAQ: EQU 5B#00100 ;ALU FUNTIONS R: EQU H#6 S: EQU H#4 SPF: EQU H#0 HIGH: EQU H#0 SUSR: EQU H#2 SURSCHARACTER RET ; ; ; ; SUBTRACT D&E FROM H&L, RESULT IN H&L ; HLMDE PUSH PSW ;SAVE AC MOV A,L ;L TO A SUB E ;MINUS E ERO: EQU 2B#11 ;29811 NXT ADDRESS JZ: EQU H#0 CJS: EQU H#1 JMAP: EQU H#2 CJP: EQU H#3 PUSH: EQU H#4 JSRP: EQU H#5 CJV:X,1VB#1,1VX,1VB#0,1VB#1,2VB#00,4VX,4VX,4VX,4VX,4VX, / 5VX,4VB#0000,1VB#1,1VX,4VX,4VX,2VX,2VX,12VX% END  REG: EQU H#F ;SPECIAL FUNCTIONS UMUL: EQU H#0 TMUL: EQU H#2 IOT: EQU H#4 SMTC: EQU H#5 TMC: EQU H#6 SLN: EQU H#8 DLN: ERO,,,,NOEY,,R1,R1,R0,SPF,SPF,RARB,,,F,CNT,RFCT,SIO0,QIO0,L40 0104 ADV16 ,ZERO,,,,NOEY,,R15,,R1,MEM,PAR,RARB,,,F,GRD,: EQU H#1 ADD: EQU H#3 PAS: EQU H#4 COMS: EQU H#5 PAR: EQU H#6 COMR: EQU H#7 LOW: EQU H#8 CRAS: EQU H#9 XNRS: EQU H#A X MOV L,A ;RESTORE NEW L MOV A,H ;GET H IN A SBB D ;MINUS D MOV H,A ;RESTORE NEW H POP PSW ;RESTORE AC RET ; ; STAC EQU H#6 JRP: EQU H#7 RFCT: EQU H#8 RPCT: EQU H#9 CRTN: EQU H#A CJPP: EQU H#B LDCT: EQU H#C LOOP: EQU H#D CONT: EQU H#E CCUMULATOR CVHL1 CALL VHEX ;GET HEX DIGIT RNZ ;RETURN IF NOT VALID HEX DAD H ;SHIFT H&L OVER FOUR BITS DAD H ; * DAD HD CJS,,,OUT 0105 ADV16 ,ZERO,,,,NOEY,,R15,,,MEM,PAS,RAQ,,,F,GRD,CJS,,,OUT 0106 ADV16 ,,,,IEN,,,,,,,,,,,,,J,,,NOEY,,R15,,,MEM,PAS,RAQ,,,F,GRD,CJS,,,OUT 010E ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,JP,,,RT2 010F RT3: ADYBUS,SUSR,RARB,,,,,CONT,,, 011E SKIP6: ADV16 ,ZERO,,,,NOEY,,,,R4,Q,PAR,RARB,,,F,CN4,CJP,,,SKIP3 011F ADV16 ,,,,,,,,NOEY,,R3,R3,,SMTC,SPF,RARB,,,T,OVR,CJP,,,SCALE1 0117 ADV16 ,,,,IEN,,,,,,,AND,,,,T,OVR,CJP,,,SKIP6 0118 P,,,RT1 0107 RT2: ADV16 ,,,,,NOEY,,R1,,,MEM,LOW,,,,F,GRD,CJS,,,IN 0108 ADV16 ,ZERO,,,,NOEY,,R2,,R15,MV16 ,ZERO,,,,NOEY,,R10,,,MEM,LOW,,,,F,GRD,CJS,,,IN 0110 ADV16 ,ZERO,,,,NOEY,,R7,,R15,MEM,PAR,RARB,,,,GRD,CJS,,,IN IEN,,,,,,,,,,,F,GRD,CJS,,,SDIVD 0120 ADV16 IOEN,ZERO,,,,NOEY,,R2,,R2,LDR,PAR,RARB,,,,,CONT,,SHZERO,L40 0121  ADV16 IOEN,ZERO,,,,NOEY,,R3,,R3,LUR,PAR,RARB,,,,,CONT,,SHZERO,L40 0119 ADV16 IOEN,ZERO,,,,NOEY,,R2,,R2,LUR,PAR,RAEM,PAR,RARB,,,F,GRD,CJS,,,IN 0109 ADV16 ,ZERO,,,,NOEY,,,,R15,Q,PAR,RARB,,,F,GRD,PUSH,,,LD 010A ADV16 IOE0111 ADV16 ,ZERO,,,,NOEY,,R1,,R15,MEM,PAR,RARB,,,,GRD,CJS,,,IN 0112 ADV16 ,ZERO,,,,NOEY,,R4,,R15,MEM,PAR,R ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,LOOP2 0122 SKIP3: ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,LDCT,,,LC 0123 ADV16 IORB,,,,,CONT,,SHZERO,L40 011A ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,LOOP2 011B SCALE1: ADV16 ,ZERO,,,,,,,,R4,Q,PAR,N,ZERO,,,,NOEY,,R1,R1,R2,TCM,SPF,RARB,,,F,CNT,RFCT,SIO0,QIO0,L40 010B ADV16 IOEN,Z,,,,NOEY,,R1,R1,R2,TCMC,SPF,RARB,,ARB,,,,,CONT,,, 0113 LOOP1: ADV16 ,ZERO,,,,NOEY,,R3,,R7,MEM,PAR,RARB,,,,,CONT,,, 0114 ADV16 ,ZERO,,,,NOEY,,R2,,,,,CONT,SIO0,QIO0,L40 010C ADV16 ,ZERO,,,,NOEY,,R15,,R1,MEM,PAR,RARB,,,F,GRD,CJS,,,OUT 010D ADV16 ,ZERO,EN,ZERO,,,,NOEY,,R1,R1,R7,DLN,SPF,RARB,,,T,GRD,PUSH,SIO3,QIO3,L40 0124 ADV16 IOEN,Z,,,,NOEY,,R1,R1,R7,TDIV,SPF,RARB,RARB,,,F,GRD,CJS,,,SDIVD 011C ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,LOOP1 011D LOOP2: ADV16 ,ONE,,,,NOEY,,,R3,R2,RESET DDT29A CTL 3F HALT E LBPM UNMUL WCS FR 100 TO 200 WA 100 CL LO NOV DC 0 DDT29A IR 106 J RUN E MUL R1,MEM,PAR,RARB,,,T,HZ,CJP,,,ABORT 0115 ADV16 ,Z,,,,NOEY,,R2,R2,,SMTC,SPF,RARB,,,,,CONT,,, 0116 ADV16 ,ZE ,,F,CNT,RFCT,SIO3,QIO3,L40 0125 ADV16 IOEN,Z,,,,NOEY,,R1,R1,R7,TDC,SPF,RARB,,,,,CONT,SHONE,,L40 0126 ADV AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1 PAGE 3 0.1 PAGE 2 0135 OUT: ADV16 IOEN,ZERO,,,,NOE00001 XXXX000100110101 010E 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001000001111 XXXX000100000111 010F 1101X00001010XXX XXXXX1,,CONT,SIO0,SHONE,L40 012E RET: ADV16 ,ZERO,,,,NOEY,,R4,,,MEM,PAS,RAQ,,,,,CONT,,, 012F ADV16 ,ONE,,,,NOEY,,R1100000000 0107 1XX1X00000001XXX XXXXX11111000XXX XX00001000000001 XXXX000100110001 0108 1101X00000010XXX X111111110110010 1016 ,,,,,NOEY,,R15,,R1,RPT,PAS,RAQ,,,F,GRD,CJS,,,OUT 0127 ADV16 ,,,,,NOEY,,R15,,R1,RPT,PAR,RARB,,,F,GRD,CJS,,,OUT 0100 1XX1X00000001XXX XXXXX11111000XXX XX00001000000001 XXXX000100110001 0101 1101X00000000XXX X111111110110010 100000100000000Y,,,,R15,YBUS,PAR,RARB,,,,,CONT,,,L2 0136 ADV16 ,,,,IEN,,,,,,,,,,,,,PUSH,,, 0137 ADV16 IOEN,,,,IEN,,,,,,1111000XXX XX00001000000001 XXXX000100110001 0110 1101X00000111XXX X111111110110010 1000001X00000001 XXXX000100110001 0111 10,,R10,MEM,PAR,RARB,,,F,GRD,CRTN,,, 0130 ABORT: ADV16 ,,,,IEN,,,,,,,,,,,,,JP,,,ABORT 0131 IN: ADV16 ,,,,IEN00001000000001 XXXX000100110001 0109 1101X0000XXXXXXX X111101100110010 1000001000000100 XXXX000000001101 010A 0101X000000010128 ADV16 ,,,,IEN,,,,,,,,,,,,,JP,,,RT3 0129 SDIVD: ADV16 ,ZERO,,,,NOEY,,R1,,R1,MEM,PAR,RARB,,,,,CONT,,, 012A 1 XXXX000100110001 0102 1101X0100XXXXXXX X111101100110010 1000001000000100 XXXX000000001110 0103 0101X00000001000 1000000000,,,,,F,ACK,LOOP,,,L4 0138 ADV16 ,,,,IEN,,,,,,,,,,,,,PUSH,,, 0139 ADV16 ,,,,IEN,,,,,,,,,,,T,ACK,LOOP,,, 101X00000001XXX X111111110110010 1000001X00000001 XXXX000100110001 0112 1101X00000100XXX X111111110110010 1000001XXXXX1110 XXX,,,,,,,,,,,T,OBF,CJP,,,IN 0132 ADV16 ,,,,IEN,,,,,,,,,,,,,PUSH,,, 0133 ADV16 IOEN,ZERO,,,,,,R15,R5,,MEM,P00 1001000100000010 1000001011111000 1000000001000000 010B 0001X00000001000 1001001110000010 1000001XXXXX1110 1000000001000000 ADV16 ,,,,IEN,,,,,,,,,,,T,N,CJP,,,NEG 012B ADV16 IOEN,ZERO,,,,NOEY,,R1,,R1,ADRQ,PAR,RARB,,,,,CONT,SIO0,SHZER000010 1000001011111000 1000000001000000 0104 1101X00001111XXX X000111110110010 1000001000000001 XXXX000100110101 0105 1101X 013A ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CRTN,,, END XXXXXXXXXXXXX 0113 1101X00000011XXX X011111110110010 1000001XXXXX1110 XXXXXXXXXXXXXXXX 0114 1101X00000010XXX X00011111011001AR,,,,T,OBF,LOOP,,,L1 0134 ADV16 ,,,,IEN,,,,R5,,,,,,,F,GRD,CRTN,,, AMDOS/29 AMDASM MICRO ASSEMBLER, V1 010C 1101X00001111XXX X000111110110010 1000001000000001 XXXX000100110101 010D 1101X00001111XXX XXXXX11110100011 10000010000O,L40 012C ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,RET 012D NEG: ADV16 IOEN,ZERO,,,,NOEY,,R1,,R1,ADRQ,PAR,RARB,,,00001111XXX XXXXX11110100011 1000001000000001 XXXX000100110101 0106 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001XXXXX1111 XXXX000F 0 1000001110110011 XXXX000100110000 0115 1001X00000010001 0XXXX01010000010 1000001XXXXX1110 XXXXXXXXXXXXXXXX 0116 1001X000000011 XXXX000100101101 012B 0101X00000001XXX X000100100110010 1000001XXXXX1110 1011000001000000 012C 1XX1X1100XXXXXXX XXXXXXX01000000 0124 0001X00000001000 1011111000000010 1000001011111000 1000000001000000 0125 0001X00000001000 1011111110000010 100 AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1 PAGE 4 01D 1011X0000XXXX001 1001011000010010 1000001XXXXX1110 XXXXXXXXXXXXXXXX 011E 1101X0000XXXXXXX X010001100110010 100000101110001111010 1XXXX11110110XXX XX00001110101101 XXXX000000000001 0134 1XX1X1100XXXX010 1XXXXXXXXXXXXXXX XX00001000001010 XXXXXXXXXXXXX011001 1XXXX01010000010 1000001111000011 XXXX000100011011 0117 1XX1X1100XXXXXXX XXXXXXXXX1100XXX XX00001111000011 XXXX00010001XXXXXXXXX XX00001000000011 XXXX000100101110 012D 0101X00000001XXX X000100100110010 1000001XXXXX1110 1001000001000000 012E 110001XXXXX1110 01XX000001000000 0126 1XX1X00001111XXX X000101000100011 1000001000000001 XXXX000100110101 0127 1XX1X00001111XX13A 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001000001010 XXXXXXXXXXXXXXXX  XXXX000100100010 011F 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001000000001 XXXX000100101001 0120 0101X00000010XXX X0010000101XXX 0135 0101X0000XXXXXXX X111111000110010 1000001XXXXX1110 XXXX000000000010 0136 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001X1110 0118 0101X00000011XXX X001110010110010 1000001XXXXX1110 XX11000001000000 0119 0101X00000010XXX X001010010110010 100000101X00000100XXX XXXXX11110100011 1000001XXXXX1110 XXXXXXXXXXXXXXXX 012F 1011X00001010XXX X101011110110010 1000001000001010 XXXXX X000101000110010 1000001000000001 XXXX000100110101 0128 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001XXXXX1111 XXXX000100001111  AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1 PAGE 5 10010 1000001XXXXX1110 XX11000001000000 0121 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001000000011 XXXX000100011101 0122 1XX1X1XXXX0100 XXXXXXXXXXXXXXXX 0137 0XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001010011101 XXXX000000000100 0138 1XX1X1100XXXXXXX XXXXXXXX1110 XX11000001000000 011A 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001000000011 XXXX000100011101 011B 1101X0100XXXXXXX X0XXXXXXXXXXXX 0130 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001XXXXX1111 XXXX000100110000 0131 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX 0129 1101X00000001XXX X000111110110010 1000001XXXXX1110 XXXXXXXXXXXXXXXX 012A 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX0000111101 ENTRY POINTS AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1 100XXXXXXX XXXXXXXXXXXXXXXX XX00001000001100 XXXX000000001100 0123 0101X00000001000 1011110100000010 1000001100000100 10000000XXXXXXXXXXXXX XX00001XXXXX0100 XXXXXXXXXXXXXXXX 0139 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001110011101 XXXXXXXXXXXXXXXX 10001100110010 1000001000000001 XXXX000100101001 011C 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001000000011 XXXX000100010011 01 XX00001110100011 XXXX000100110001 0132 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX00001XXXXX0100 XXXXXXXXXXXXXXXX 0133 0101X010011G  PAGE 6 SYMBOLS ABORT 0130 ACK 0009 ADD OUT2 001B OUT3 001C OUT4 001D OUT5 001E OVR 000C PAR 0006 PAS 0004 PUSH  PAGE 7 L7 0007 L9 0009 LA 000A LC 000C LD 000D LDCT 000C LDQP XOR 000B Y 000C YBUS 000C Z 0000 ZERO 0002 TOTAL PHASE 2 ERRORS = 0  0016 IN2 0017 IN3 0018 IOEN 0000 IOT 0004 JMAP 0002 JP 000F JRP 0007  RPCT 0009 RPT 0004 RQPT 0007 RT1 0100 RT2 0107 RT3 010F S 0004 SCALE1  0003 ADR 0000 ADRQ 0002 AND 000C AUR 0008 AURQ 000A CARRY 0003 CJP 000 0004 Q 0006 QIO0 0000 QIO3 0000 QPT 0006 R 0006 R0 0000 R1 0001  0005 LDR 0001 LDRQ 0003 LE 000E LF 000F LOOP 000D LOOP1 0113 LOOP2 011D  00B Y 000C YBUS 000C Z 0000 ZERO 0002 TOTAL PHASE 2 ERRORS = 0  JSRP 0005 JZ 0000 L0 0000 L1 0001 L14 0014 L15 0015 L16 0016 L2  011B SDIVD 0129 SHONE 0001 SHZERO 0003 SINX 000E SIO0 0002 SIO3 0002 SKIP3 0122 3 CJPP 000B CJS 0001 CJV 0006 CN4 000E CNT 000F COMR 0007 COMS 0005 CONT R10 000A R15 000F R2 0002 R3 0003 R4 0004 R5 0005 R6 0006 R7  LOW 0008 LUQ 000D LUR 0009 LURQ 000B MEM 000F N 000D NAND 000E NEG YBUS,SUSR,RARB,,,,,CONT,,, 011E SKIP6: ADV16 ,ZERO,,,,NOEY,,,,R4,Q,PAR,RARB,,,F,CN4,CJP,,,SKIP3 011F ADV16 ,,,, 0002 L20 0020 L21 0021 L24 0024 L26 0026 L3 0003 L4 0004 L40 0040  SKIP6 011E SLN 0008 SMTC 0005 SPF 0000 SURS 0001 SUSR 0002 T 0001 TCM  000E CRAS 0009 CRTN 000A DADB 0000 DAQ 0004 DARB 0002 DIS 0001 DLN 000A 0007 RADB 0009 RAQ 000E RARB 000A RE 000E REG 000F RET 012E AMDOS/29 AMDAS 012D NOEY 0000 NOR 000D OBF 000A ONE 0001 OR 000F OUT 0135 OUT1 001A IEN,,,,,,,,,,,F,GRD,CJS,,,SDIVD 0120 ADV16 IOEN,ZERO,,,,NOEY,,R2,,R2,LDR,PAR,RARB,,,,,CONT,,SHZERO,L40 0121  L5 0005 AMDOS/29 AMDASM MICRO ASSEMBLER, V1.1  0002 TCMC 0007 TDC 000F TDIV 000C TMC 0006 TMUL 0002 UMUL 0000 XNRS 000A  DQ 0005 F 0000 GRD 0000 HIGH 0000 HZ 000B IEN 0001 IN 0131 IN1 M MICRO ASSEMBLER, V1.1 PAGE 8 RFCT 0008 H  ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,LOOP2 0122 SKIP3: ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,LDCT,,,LC 0123 ADV16 IO,IN ADV16 ,ZERO,,,,,,,,R15,Q,PAR,RARB,,,F,GRD,PUSH,,,LE ADV16 IOEN,ZERO,,,,NOEY,,R1,R1,R0,SPF,SPF,RARB,,,F,CNT,RFCT,SIO0,,,,,,,,,,,T,OBF,CJP,,,IN 0132 ADV16 ,,,,IEN,,,,,,,,,,,,,PUSH,,, 0133 ADV16 IOEN,ZERO,,,,,,R15,R5,,MEM,PAR,RARB,,,T,HZ,CJP,,,ABORT ADV16 ,Z,,,,NOEY,,R2,R2,,SMTC,SPF,RARB,,,,,CONT,,, ADV16 ,Z,,,,NOEY,,R3,R3,,SMTC,SPF,R ADV16 ,,,,IEN,,,,,,,,,,,T,N,CJP,,,NEG 012B ADV16 IOEN,ZERO,,,,NOEY,,R1,,R1,ADRQ,PAR,RARB,,,,,CONT,SIO0,SHZERDV16 ,ZERO,,,,NOEY,,R15,,R1,MEM,PAR,RARB,,,F,GRD,CJS,,,OUT ADV16 ,ZERO,,,,NOEY,,R15,,,MEM,PAS,RAQ,,,F,GRD,CJS,,,OUT ADV1EN,ZERO,,,,NOEY,,R1,R1,R7,DLN,SPF,RARB,,,T,GRD,PUSH,SIO3,QIO3,L40 0124 ADV16 IOEN,Z,,,,NOEY,,R1,R1,R7,TDIV,SPF,RARB,,QIO0,L40 ADV16 ,ZERO,,,,NOEY,,R15,,R1,MEM,PAR,RARB,,,F,GRD,CJS,,,OUT ADV16 ,ZERO,,,,NOEY,,R15,,,MEM,PAS,RAQ,,,F,GRD,CJSAR,,,,T,OBF,LOOP,,,L1 0134 ADV16 ,,,,IEN,,,,R5,,,,,,,F,GRD,CRTN,,, AMDOS/29 AMDASM MICRO ASSEMBLER, V1ARB,,,T,OVR,CJP,,,SCALE1 ADV16 ,,,,IEN,,,,,,,AND,,,,T,OVR,CJP,,,SKIP6 ADV16 IOEN,ZERO,,,,NOEY,,R3,,R3,LUR,PAR,RARB,,,,,CO,L40 012C ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,RET 012D NEG: ADV16 IOEN,ZERO,,,,NOEY,,R1,,R1,ADRQ,PAR,RARB,,,6 ,,,,IEN,,,,,,,,,,,F,GRD,JP,,,RT2 RT3: ADV16 ,ZERO,,,,NOEY,,R10,,,MEM,LOW,,,,F,GRD,CJS,,,IN ADV16 ,ZERO,,,,NOEY,,R7,,F,CNT,RFCT,SIO3,QIO3,L40 0125 ADV16 IOEN,Z,,,,NOEY,,R1,R1,R7,TDC,SPF,RARB,,,,,CONT,SHONE,,L40 0126 ADV,,,OUT ADV16 ,,,,IEN,,,,,,,,,,,,,JP,,,RT1 RT2: ADV16 ,,,,,NOEY,,R1,,,MEM,LOW,,,,F,GRD,CJS,,,IN ADV16 ,ZERO,,,,NOE.1 PAGE 2 0135 OUT: ADV16 IOEN,ZERO,,,,NOEONT,,SHZERO,L40 ADV16 IOEN,ZERO,,,,NOEY,,R2,,R2,LUR,PAR,RARB,,,,,CONT,,SHZERO,L40 ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,LO,,CONT,SIO0,SHONE,L40 012E RET: ADV16 ,ZERO,,,,NOEY,,R4,,,MEM,PAS,RAQ,,,,,CONT,,, 012F ADV16 ,ONE,,,,NOEY,,R1,,R15,MEM,PAR,RARB,,,,GRD,CJS,,,IN ADV16 ,ZERO,,,,NOEY,,R1,,R15,MEM,PAR,RARB,,,,GRD,CJS,,,IN ADV16 ,ZERO,,,,NOEY,,R4,,R116 ,,,,,NOEY,,R15,,R1,RPT,PAS,RAQ,,,F,GRD,CJS,,,OUT 0127 ADV16 ,,,,,NOEY,,R15,,R1,RPT,PAR,RARB,,,F,GRD,CJS,,,OUT 0Y,,R2,,R15,MEM,PAR,RARB,,,F,GRD,CJS,,,IN ADV16 ,ZERO,,,,NOEY,,,,R15,Q,PAR,RARB,,,F,GRD,PUSH,,,LD ADV16 IOEN,ZERO,,,,NOEYORG H#100 RT1: ADV16 ,,,,,NOEY,,R1,,,MEM,LOW,,,,F,GRD,CJS,,,IN ADV16 ,ZERO,,,,NOEY,,R0,,R15,MEM,PAR,RARB,,,F,GRD,CJS,,OP2 SCALE1: ADV16 ,ZERO,,,,,,,,R4,Q,PAR,RARB,,,F,GRD,CJS,,,SDIVD ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,LOOP1 LOOP2: ADV0,,R10,MEM,PAR,RARB,,,F,GRD,CRTN,,, 0130 ABORT: ADV16 ,,,,IEN,,,,,,,,,,,,,JP,,,ABORT 0131 IN: ADV16 ,,,,IEN5,MEM,PAR,RARB,,,,,CONT,,, LOOP1: ADV16 ,ZERO,,,,NOEY,,R3,,R7,MEM,PAR,RARB,,,,,CONT,,, ADV16 ,ZERO,,,,NOEY,,R2,,R1,MEM,PP2~6h7h8h9h:h 4xh 5,,R1,R1,R2,TCM,SPF,RARB,,,F,CNT,RFCT,SIO0,QIO0,L40 ADV16 IOEN,Z,,,,NOEY,,R1,R1,R2,TCMC,SPF,RARB,,,,,CONT,SIO0,QIO0,L40 AI 16 ,ONE,,,,NOEY,,,R3,R2,YBUS,SUSR,RARB,,,,,CONT,,, SKIP6: ADV16 ,ZERO,,,,NOEY,,,,R4,Q,PAR,RARB,,,F,CN4,CJP,,,SKIP3 ADV16TN,,, END ADV16 ,,,,IEN,,,,,,,,,,,,,JP,,,ABORT IN: ADV16 ,,,,IEN,,,,,,,,,,,T,OBF,CJP,,,IN ADV16 ,,,,IEN,,,,,,,,,,,,,PUSH,,, @0P@0h2#)hx2#"h1,RPT,PAR,RARB,,,F,GRD,CJS,,,OUT ADV16 ,,,,IEN,,,,,,,,,,,,,JP,,,RT3 SDIVD: ADV16 ,ZERO,,,,NOEY,,R1,,R1,MEM,PAR,RARB,,,,, @:;h1в12{ ,,,,IEN,,,,,,,,,,,F,GRD,CJS,,,SDIVD ADV16 IOEN,ZERO,,,,NOEY,,R2,,R2,LDR,PAR,RARB,,,,,CONT,,SHZERO,L40 ADV16 ,,,,IEN,,,, 0129 1101X00000001XXX X000111110110010 1000001XXXXX1110 XXXXXXXXXXXXXXXX 012A 1XX1X1100XXXXXXX XXXXXXXXXXXXXXXX XX0000111101 ADV16 IOEN,ZERO,,,,,,R15,R5,,MEM,PAR,,,,T,OBF,LOOP,,,L1 ADV16 ,,,,IEN,,,,R5,,,,,,,F,GRD,CRTN,,, OUT: ADV16 IOEN,Z) P@0!h"h  #P@$@%0@@&hx# 5CONT,,, ADV16 ,,,,IEN,,,,,,,,,,,T,N,CJP,,,NEG ADV16 IOEN,ZERO,,,,NOEY,,R1,,R1,ADRQ,PAR,RARB,,,,,CONT,SIO0,SHZERO,L40 P@xв5xУ5hh1в1 2{ ,,,,,,,F,GRD,CJP,,,LOOP2 SKIP3: ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,LDCT,,,LC ADV16 IOEN,ZERO,,,,NOEY,,R1,R1,R7,DLN,SPF,RARB,,0011 XXXX000100101101 012B 0101X00000001XXX X000100100110010 1000001XXXXX1110 1011000001000000 012C 1XX1X1100XXXXXXX XXXXXXXERO,,,,NOEY,,,,R15,YBUS,PAR,RARB,,,,,CONT,,,L2 ADV16 ,,,,IEN,,,,,,,,,,,,,PUSH,,, ADV16 IOEN,,,,IEN,,,,,,,,,,,F,AC'hx2 5(h)в*h-+P2 @,h.-P2 @. ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CJP,,,RET NEG: ADV16 IOEN,ZERO,,,,NOEY,,R1,,R1,ADRQ,PAR,RARB,,,,,CONT,SIO0,SHONE,L40 RETP@ @ xв5 xУ5hP18в1,T,GRD,PUSH,SIO3,QIO3,L40 ADV16 IOEN,Z,,,,NOEY,,R1,R1,R7,TDIV,SPF,RARB,,,F,CNT,RFCT,SIO3,QIO3,L40 ADV16 IOEN,Z,,,,NOEY,,XXXXXXXXX XX00001000000011 XXXX000100101110 012D 0101X00000001XXX X000100100110010 1000001XXXXX1110 1001000001000000 012E 11K,LOOP,,,L4 ADV16 ,,,,IEN,,,,,,,,,,,,,PUSH,,, ADV16 ,,,,IEN,,,,,,,,,,,T,ACK,LOOP,,, ADV16 ,,,,IEN,,,,,,,,,,,F,GRD,CR У/PW 0h01h12h3xzR4xh 5: ADV16 ,ZERO,,,,NOEY,,R4,,,MEM,PAS,RAQ,,,,,CONT,,, ADV16 ,ONE,,,,NOEY,,R10,,R10,MEM,PAR,RARB,,,F,GRD,CRTN,,, ABORT: 1 вв?в0xxÃh`PR1,R1,R7,TDC,SPF,RARB,,,,,CONT,SHONE,,L40 ADV16 ,,,,,NOEY,,R15,,R1,RPT,PAS,RAQ,,,F,GRD,CJS,,,OUT ADV16 ,,,,,NOEY,,R15,,R01X00000100XXX XXXXX11110100011 1000001XXXXX1110 XXXXXXXXXXXXXXXX 012F 1011X00001010XXX X101011110110010 1000001000001010 XXXXJ P2~6h7h8h9h:h 4xh 5 LOW 0008 LUQ 000D LUR 0009 LURQ 000B MEM 000F N 000D NAND 000E NEG DDT29A IR 128 J RUN E$?…c }cxDIR ERA TYPESAVEREN !cy!hc#´c cy#c ëccgRac>c2g1gGayLaLa:h=2hg͏a bBh!ͯd!h5gfa b:hLa ChP2~6h7h8h9h:h 4xh 5 012D NOEY 0000 NOR 000D OBF 000A ONE 0001 OR 000F OUT 0135 OUT1 001A 2LBPM UNMUL WCS FR 100 TO 200 WA 100 CL LO NOV DC 0$3aFb2hA'a>>'aTbͺabąb:hfͦc!8d_~#fod_eeeoff!v"a!aTd=aREAD ERROR$ed=aNOT FOUND$!!h ~ ʠd#0  DQ 0005 F 0000 GRD 0000 HIGH 0000 HZ 000B IEN 0001 IN 0131 IN1 3bbYbcYb Ah!BhF#x+b~ͱawbw!Ch"h  w# Kb!g~6Lag͊a:hLac!jDd# 6xh 7P2~8h9h:h;h<h OUT2 001B OUT3 001C OUT4 001D OUT5 001E OVR 000C PAR 0006 PAS 0004 PUSH DDT29A CTL 3F HALT E$ TO 200 WA 100 CL LO NOV DC 0$҅bWx…bxڅbڅbڅbG ud~ …b#  dx~#¯d!b~ɯ2 h:h=!hLa:h=!h:hLabd!!h~ d 6?#d̈́a 0016 IN2 0017 IN3 0018 IOEN 0000 IOT 0004 JMAP 0002 JP 000F JRP 0007 yb3a*h~ ʞbʞb'a#Ëb>?'a3aYbc څb=_.:;<> bo$>! hb2h*hb"hc@G 0003 ADR 0000 ADRQ 0002 AND 000C AUR 0008 AURQ 000A CARRY 0003 CJP 000!`|~}}F#N#V+{w+{w>@+}v!p#q#r~ {<\>>> R=P>_2>:x>?2!666>xvRESET$ CTL 3F HALT E$ TO 200 WA 100 CL LO NOV DC 0$_d\e3aFbA'a>:'a> 'a:h`Ox͸d 9e> ͸d> Pe-ax Pe %e> -a%e3b\ezaegb ‡ee=aͺa!Bh5c#~Yc#"DDT29A H M DTR Z SP MS ME : c:hwcx2hpͬb5c#*%c6?'cwcͬb 'a> 'a3a  _2h<ɯ2@h hRa2h<2h<2K h! h6?d h͊agALL FILES (Y/N)?$b…bd\ae3a!h6!h~e͖aew4!b~g'a3bgûe=gNddÅbb:h…bo6l~`lek#l~ l j#lNj!Ru4N *4u !SuNyzkClDISK $=l@k!u~AOjͬj͸j*u6#6*u6Çl   !3uq,s#r.sCOPYRIGHT (C) 1976, DIGITAL RESEARCHv!5j{j9j!=uwuj9jsjv-6>ɯ!?uu~ʱp.6 >!uڱpN*4u !u~.TO͆nw!u4‹p ͛o!Uu~Up!4uN,F.q#pp.46#6p͛o!Uu~q.N,F.4q#p.6 >!u qN*$$$ SUB_ n!uq*Vu ~!uq,s-N*Vu !uNy!uq.T~.w!Tu~.nN͆n!uwnN.^Yn.4´n!;u6*u6!u6>!unN n.4ndb…bd h͊aͣa\aAfo&)|Gf+!Tb h͜aAf$fYf=a hfaVfbf=agNO SPACE$CANNOT CLOSE$b…b:hd̈́a  *u~#F!uO~,V_zҴl*u~#FOx+q#w*u~=wÇl*u~#FOi`"u!u~,FOxl,N,F*uq#p*u~ѣ.Mw-~ j6 !Mu4u 6!u4pUp!uqͲp!Uu~ *4u  *4u ~\mv5k m m!u~O*4u ~5~4k-~ k.I6.L~ k.I4.LNͅj!>u~j.LN͘jj j j!Nuq#p*Nu~!Quw$akNj*Nu#"NuFkuk^j!Su~@Oj!Ru6*4u~!Ru6.;~lm-~šq.;6æq͈mjl`mmͨm>,Ҹq.;6\rlm-~r.6.~.wO>qN *4u ~!uw.No!uwq.;6rN?ґo-4So-~.Ao!uq.q.4N,F.q#p.U6Tl6o ͛o!Uu~ͨn!TuN͒nfm6oüo!uq,q!u~O-#pO~w,~2h2Lag)h …bd!gͭd\aʼg!Tb h͏aIga}|g)g=gdb!h~2 h>b~20h2@h\! h!ͯd!Ch~ʆg !uw#6!u^,V{_zW m.~O,q#w *4u ~!uw*4u ~!uw *4u !uN y*4u !uNy!Uu~.w#6jl!Uu4>?m6~uO~9l9j!SuwŸkek5kvzk~«k5k6l~¹k.>~/w6l~ k*4u#!RuNy j~kek5k!Ru66l~l-6l5~O*4u ~OjYn.N*4u !uN.q#6y.;~\r͈mjlfm!u~-9r,N -q,~Yrmq!;u~Ur.6.;6m>!u҉r5kzrSELECT ERROR $lr@kwN6n/p!u~!uN6n/o!u~ɯ!uq,s!u5~Np.T~.ɆO~-_*4u~_͒n+pmfm %p ͛o!Uu~xp"u%p6obp ͛o!Ug#xg~ʗg#Ëgx23a:h2AbTb1g:hLacdÅbg=agLOAD ERROR$COMdb:!h !h…bc-wnm`m!uq*u ~!uq,s-N*u !uNy!uq~O*u ~!uO~<_ySn!uq,s-~ON6n!u-O~<_y{nL :l5kv!u~O.X "u!uN. "u!uN. "u!uNͰj!u~-^r/rN > r,wn!7u~.r.7N.q]r*4u~=!7uwCRDCXENDEQUHLTINRINXIRPJMPLDALOWLXIMODMOVMVINOPNOTNULORAORGORIOUTPOPPSWRALRARRETRLCRRCRSTSBBSBISETSHLSHRSTASTCSUBSUIXORXRAXRIASE~}}zws#q#p!v5/w0Oʹw>v@*G~|vOͩvvLwew4>5Zw1͘v|v*!auN.7qr!uN,Fi`!8u~,F.;OxGy*4u~w ops.N.q*4u~!uw*4u~wr!uq#p-N,F.Vq#pj!9MD!uq#p . kb!4uN.7q,6#6.;6.6*3u&ïtvt9j!;uw /O~ _~ GCALLCSEGDSEGELSEENDMHIGHIRPCLDAXLHLDNAMEPAGEPCHLPUSHREPTSHLDSPHLSTAXXCHGXTHLENDIFEXITMEXTRNLOCALMACROSTKLNTITLEINPAGEMACLIBPUBLJvvvjwWvz~w ͩv~w>*w~#"wwBIOSDIST O~ tNjt!7uNjtͨj!;uwt!7uN͠jt!7uN͘jt!8u6#6jt*Ju~!8uw#6t!4uN,F*Juqt!4uN,F@ktbktJj!;uwt!IC7 PF FPA A A* A A A(#&&#&2#/?&#' '( v'( %:P!@"JvvvjwWvz~w ͩv~w>*w~#"wwBIOS Wvjwòwúwôwõwùwöw|vØvévvvvvCOPYRIGHT (C) 1977, ADVANCED MICRO DEVICES1>2!v"2!j"v:Oa:GOu6,6s]r!6trtryptrͲptr ͛ot!uN,F.4q#pr6otrͷotrcqtrͧqtrptr]p&À# $b${$*!:!X!!M"p"""""4#\#j# ()*+,-/ABCDEHLMDBDIDSDWEIEQGEGTIFINLELTNEORSPACIADCADDADIANAANDANICMACMCCMPCPIDAADADD͘v@*G67KwÊv2Hy2G@*GyKwy³v>v v=vy2Di`"E@v> 2v@*G ~*E+F>w+N:Dw+^w|t!uN.;qt!uN.;qt!4uN,Fst!uN,F.8q#pt)t ^#Vasgssssssssssstst#t,t5t@tTt]tftotxttttt!u~ uN*4uq!