ô >Mon2 v0.20 "ô Monitors network traffic and  ô decodes what is being sent (: 24ë &83:top=“-&200:start=(¸P+&1000)€&FFF00:Ó=start <ògo Fà P Ýòassem Z[ç¤fx(0,1,0)<3 IntOff=&FE18:IntOn=&FE20:ADLC=&FEA0 ‹ IntOff=&FE38:IntOn=&FE3C:ADLC=&FEA0 d#ç¦-1:ÿ"LOAD NetData "+Ã~start:á n*FX143,12,255 xX=?IntOff:?&D00=64 ‚!&A6=start:!&A0=&1010 Œ ã P=0 ¸ 1 – P%=&D00   [OPT P*2 ªBIT IntOff ´PHA:TYA:PHA ¾ LDY &A2 È.lp1 ÒLDA ADLC+1:STA (&A6),Y ÜINY æ€ #&81:BNE L217C ðLDA &A0:STA &A1 ú BNE L2187  .L217C LDA ADLC+2 STA (&A6),Y "LDA &A1:BEQ L21AD , DEC &A1 6 .L2187 @INY J BNE L2196 T INC &A7 ^ LDA &A7 hCMP #top 256 r BNE L2196 |LDA #start 256 † STA &A7  .L2196 š STY &A2 ¤ .LD34 ® LDA #&65 ¸STA ADLC+1 ÂBIT ADLC+0 Ì BMI lp1 Ö LDA #0 àSTA (&A6),Y êPLA ôTAY þPLA  BIT IntOn RTI  .L21AD &DEY 0 JMP LD34 :] Dí N!start=0:á X(ݤfx(A%,X%,Y%):=((º&FFF4)€&FF00)256 b"ݤh(A%,N%)=Â"0000000"+Ã~A%,N%) lQݤb:õý?addr%<>0:st%=?addr%:by%=addr%?1:addr%=addr%+2:ç addr%>=top addr%=start vç(st%€4) f%=(f% € 2) €'ô P.FNh(by%,2);"/";FNh(st%,2);" "; Š=by% ”7ݤstn(A%,B%):=Ä3-©ÃA%," ")+ÃA%+"."+ÃB%+Ä3-©ÃB%," ") žÝògo ¨@ñ"Network Traffic Monitor and Decoder, (C)1990 J.G.Harston"' ²òassem:Þ buf% 20 ¼$î … ö:ç ¦-1 ñ" at line ";ž:à ‹ ñ ÆCX=?IntOff:addr%=start:!&A6=start:!&A0=&1010:f%=0:im%=3:X=?IntOn Ðç¦-2:òraw:á Ú&õ:õb%=¤b:ý(st%€1):ô Start of frame ä.ô Read until valid, abort, or other error: î8buf%?0=b%:x%=1:õ:b%=¤b:ç(st%€&80):buf%?x%=b%:x%=x%+1 ø3ýx%>18 „ (st%€ 126):ç(st%€2):buf%?x%=¤b:x%=x%+1 çx%=6 € f%<2 ñ  9ñ¤stn(buf%?3,buf%?2);" -> ";¤stn(buf%?1,buf%?0);" "; ,çx%=4 € f%=1 ñ‰(24)"Scout ackn.":f%=2:ý0  +çx%=4 € f%=3 ñ‰(24)"Data ackn.":f%=0:ý0 *çx%<6 ñ"Abort":f%=0:ý0 4-ctrl%=buf%?4:port%=buf%?5:çctrl%<128:f%=2 >@çf%=0 ñ"Control: &";¤h(ctrl%,2);" Port: &";¤h(port%,2);" "; H+çbuf%?0=&FF € buf%?1=&FF òbroad:f%=0:ý0 R!çx%=6 € f%<2 ñ"Scout":f%=1:ý0 \&çport%=0 € f%=0:òimm:f%=0:im%=0:ý0 f&ñ"Data: ";:òpr(4):f%=im%:im%=3:ý0 p: z Ýòbroad „ñ"Broadcast: ";:òpr(6):á ŽÝòpr(p%):p%=buf%+p%:õ ˜1ç ?p%<32 „ ?p%>126 ñ"(";¤h(?p%,2);")"; ‹ ï?p% ¢#p%=p%+1:ýp%>=x%+buf% „ ±>75:ñ:á ¬ Ýòimm ¶#ô PRINT"Immediate operation: "; À&i%=ctrl%:ô PRINT"&";FNh(i%,2);" "; Êç i%=&81 ñ"PEEK"; Ôç i%=&82 ñ"POKE"; Þç i%=&83 ñ"JSR "; è$ç i%=&84 ñ"User procedure call"; ò"ç i%=&85 ñ"OS Procedure call"; üç i%=&86 ñ"Halt":á ç i%=&87 ñ"Continue":á #ç i%=&88 ñ"Machine type peek":á $ç i%=&89 ñ"Read ARM registers":á $!ç i%<&81 „ i%>&89 ñ"Unknown"; .3p%=buf%+6:õ:ñ" &"¤h(!p%,8);:p%=p%+4:ýp%>=x%:ñ:á 8Ýòraw:ô Raw data B#õõb%=¤b:ýst%€1:ô start of frame Lõ Vç(st%€&81):ñ¤h(b%,2); `ç(st%€1):ô addr present jDç(st%€2):ñ"v";¤h(¤b,2);" ";:õb%=¤b:ý(st%€13):ç(st%€1):ñ¤h(b%,2); t"ç(st%€8):ñ"b";:õb%=¤b:ý(st%€4) ~ç(st%€4):ñ"i" ˆç(st%€16):ñ" e" ’ç(st%€32):ñ"d"; œç(st%€64):ñ"o"; ¦ç(st%€128):ô Data here ° b%=¤b:ý0 ºý0 ÿ