From 8c9290e60cb3c117aa4d6af8d1c7111e205eba16 Mon Sep 17 00:00:00 2001 From: bozimmerman Date: Sat, 3 Sep 2022 19:12:06 +0000 Subject: [PATCH 1/8] git-svn-id: svn://192.168.1.10/public/Zimodem@21759 0d6f1817-ed0e-0410-87c9-987e46238f29 --- cbm8bit/64net_apps.d64 | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/cbm8bit/64net_apps.d64 b/cbm8bit/64net_apps.d64 index 1470ee8..bf00927 100644 --- a/cbm8bit/64net_apps.d64 +++ b/cbm8bit/64net_apps.d64 @@ -91,20 +91,20 @@ AA:BB P$:B0T$WP$-&A$"";T$;": WEAPON (H,L,R,T,Q) ";:BOA513_&": ";:P$"WEAPON: ":2200:IN$P$:B$P$:O1:q&"";BL$:520&"? ";:60000&"";BL$:B$(IN$,1):O(IN$):O0510&P$"WEAPON: "B$:3000&W$"RAIN":(W$,O)IN$FF5: V140:"";::A$;"(XM3A10:(]BOA610Z(^M3P$"CHARGE: ":2200:IN$P$:BB$P$:A1(BB$)::615(bM3"CHARGE? ";:60000:BB$IN$:A1(BB$)(dM3A10P$"CHARGE: "((A1),2):3000(eM3A10P$"CHARGE: "(A1):3000(g 1:I(UR$)1020&H1$(UR$,I):P1$(UR$,I1):P1$""P1$"/".I0Z(H1$,I1,1)":"II1:I(H1$)1050$HO$(H1$,I):I(H1$)H1$H1$":80".AT$"":XB0BA0XBBAAT$"S43="((XB),2)8#5,A$:A$""1080LQU$(34):5,"AT -MA$:440C400"RROR: "MA$:1000=(MA$)N11(MA$,1,N1)NI$MA$(MA$,(NI$)2)M MA$:1000X CMDSmMC$""1400(MC$""10002MC$""2000<MC$""2100FMC$""2200PMC$""2300 IN$(IN$,(IN$)1):"  ";:3100* A(A$):A32(A95A193)A2183100K IN$IN$A$:A$;" ";:3100d IN$""" "::1000| IN$"?"" ":3400 (IN$,1,1)"/"IN$(IN$,2):3500 CC$"":"O HANNEL ELECTED! RY ?";CO$ NELS."p PRINT"/WHO MASK* ";CO$;"SER INFO."2 "NYTHING ELSE ";CO$;"END MESSAGE"c CO$;"------------------------------":1000 X0:I2(IN$):X0(IN$,I,1)" "XI :A$"":X1A$(IN$,X1):IN$(IN$,1,X1)  IN$"JO :1000"?  ";:P$""A$:A$""5010 A$(13)" ":? A$(20)A$;" ";:P$P$A$:5010O P$""5010x P$(P$,(P$)1):"  ";:5010 (#TTTI100 2#ML12:TITT9010 <# #5,"ATZ":9000:9000:5: Pß5,2,0, +:C430C460"AD ICK GIVEN(";C;") : "MA$:4402C400"RROR: "MA$:1000g(MA$)N11(MA$,1,N1)NI$MA$(MA$,(NI$)2)w MA$:1000 CMDSMC$""1400(MC$""10002MC$""2000<MC$""2100 (13)3300 A$(20)(IN$)03230* IN$(IN$,(IN$)1):"  ";:3100T A(A$):A32(A95A193)A2183100u IN$IN$A$:A$;" ";:3100 IN$""" "::1000 IN$"?"" ":3400 (IN$,1,1)"/"IN$(IN$,2):3500 CC$ XIT."f PRINT"/LIST ";CO$;"IST CHANNELS."0p PRINT"/WHO MASK* ";CO$;"SER INFO."\ "NYTHING ELSE ";CO$;"END MESSAGE" CO$;"------------------------------":1000 X0:I2(IN$):X0(IN$,I,1)" "XI :A$"":X1A$(IN P$" :"AA$:600 E$"":CC$AA$:1000 "?  ";:P$"") A$:A$""5010? A$(13)" ":i A$(20)A$;" ";:P$P$A$:5010y P$""5010 P$(P$,(P$)1):"  ";:5010 (#TTTI100 2#ML12:TITT9010 <# :4P00E1:: FAIL >1 --- GET E$ FROM MODEM, OR ERROR;E$""CMLE$""P$E$"OMM ERROR. XPECTED ";E$;", OT ";P$;CO$;"" --- GET PACKET HEADER, SETS P0,P1,P2, RETURNS P0=0 IF NADAPR0:#5,P$:P$""93 (254):XB1200:BA1200L CR$(13):(14);:SY(65532):53280,254:53281,246 CO$"":SY226ML49152:665,73((678)30):UMML2048:XB9600 #SY34ML22273:(ML)765:"PMLVIC.BIN",(254),1: &SY3436879,27:CO$(31) (SY226(ML UM:UM3:X(789):UM9:X234XB12006 dSY3456579,0< eB fM nP$"A" xCO$;"64 V1.5":"EQUIRES 64ET II FIRMWARE 2.0+" "Y O IMMERMAN (BO@ZIMMERS.NET)":: --- MODEM INIT UN(254) PH0:PT0:MVML18" 9);1 900:VR(P$):VR2.0"IMODEM INIT FAILED: ";P$:H 900:P$"OK"203] HH$(20):OT$"" UR$"COFFEEMUD.NET:8080/CTCUG/FIRMWARE/C64NET_APPS_LATEST.D64" , GET INFO 6:"EQUEST ARMS:" @ " *) YPE : " -A " 1) RL 1000X(P$):X1XLH300CX1"NTER : HTTP://";:5000:UR$P$:300X2"NTER OUTPUT DEVICE/UNIT: ";:5000:UN(P$):300XLHP$HH$(XLW):"ODIFY: ";P$:5005:HH$(XLW)P$:300II1:I020:HH$(I)""II0III:II :C8$(((MV8)),2):PN$(((P$)),2)-E$"OK":VR3E$C8$P5,"ATS42=";C8$;"T+";PN$:5,P$ML:P$E$P$OP$:"ETRYING..";CO$:650 --- GET P$ FROM SOCKET P P$"":E0*930:P0PP00"NEXPECTED PACKET ID: ";P0;"/";P ZMC$""1000nuLP$:1000*v"NKNOWN: '"MC$"' '"MA$"'"4w1000>x ...kOM$MA$:P$" :"MA$:600:E$"":1000I1:MA$""1000(MA$,I,2)" :"2050II1:20102900*"";MS$;": ";(MA$,I2):10004 A$(13)1000 "TREAM PAUSED. NTER ? FOR HELP."3 OM$""P$" "OM$:600] CO$;"> ";:IN$"":ITTI1000:3200 TIIT"ANCELLED"::1000N A$:A$""3100b ITTI1000 A$(13)3300 A$(20)(IN$)03230 :1000 P$" "CC$" :"IN$ 600:" ":"";NI$;": ";IN$. E$""::1000YH CO$;"------------------------------"R "/JOIN #C-64 ";CO$;"HANGE CHANNELS."\ "/QUIT ";CO$;"OGOUT AND EXIT."f PRINT"/LIST ";CO$;"IST CHAN IN"4000 IN$"QUIT"P$" :":600:9100& IN$"LIST"P$"":600:1000O IN$"WHO"P$" :"AA$:600:1000"NKNOWN OMMAND: ";IN$;". RY ?";CO$:1000"OINING ";QU$;A$;QU$:AA$A$P$" :"AA$:600E$"":CC$AA$s(8) Zá#5,A$:A$""A$;!dáA$:A$""5,A$; !nÉ 50010=!U8:F$"IRC":1,U,15,"S0:"F$:1:F$,U:F$,U$"IRC":1,U,15,"S0:"F$:1:F$,U:F$,URC":1,U,15,"S0:"F$:1:F$,U:F$,UP$" :"AA$:600!P$E$4100!E$"":CC$AA$:100   D64WGET4/128 1200B 2.0+@ UPDATED 10/13/2021 12:54Aa +A " 1) RL 1000X(P$):X1XLH300CX1"NTER : HTTP://";:5000:UR$P$:300X2"NTER OUTPUT DEVICE/UNIT: ";:5000:UN(P$):300XLHP$HH$(XLW):"ODIFY: ";P$:5005:HH$(XLW)P$:300II1:I020:HH$(I)""II0III:II :C8$(((MV8)),2):PN$(((P$)),2)-E$"OK":VR3E$C8$P5,"ATS42=";C8$;"T+";PN$:5,P$ML:P$E$P$OP$:"ETRYING..";CO$:650 --- GET P$ FROM SOCKET P P$"":E0*930:P0PP00"NEXPECTED PACKET ID: ";P0;"/";P FMC$""2200PMC$""2300ZMC$""1000!n0uLP$:1000Tv"NKNOWN: '"MC$"' '"MA$"'"^w1000hx ...OM$MA$:P$" :"MA$:600:E$"":1000I1:MA$""1000(MA$,I,2)" :"2050II1:201029  IIII1:2910 MS$(MS$,1,II): A$(13)1000< "TREAM PAUSED. NTER ? FOR HELP."] OM$""P$" "OM$:600 CO$;"> ";:IN$"":ITTI1000:3200 TIIT"ANCELLED"::1000N A$:A$""3100b ITTI1000 A$ "":"O HANNEL ELECTED! RY ?";CO$:1000% P$" "CC$" :"IN$F 600:" ":"";NI$;": ";IN$X E$""::1000H CO$;"------------------------------"R "/JOIN #C-64 ";CO$;"HANGE CHANNELS."\ "/QUIT ";CO$;"OGOUT AND E $,X1):IN$(IN$,1,X1)  IN$"JOIN"4000+ IN$"QUIT"P$" :":600:9100P IN$"LIST"P$"":600:1000y IN$"WHO"P$" :"AA$:600:1000"NKNOWN OMMAND: ";IN$;". RY ?";CO$:1000"OINING ";QU$;A$;QU$:AA$A$ #5,"ATZ":9000:9000:5: Pß5,2,0,(8)!Zá#5,A$:A$""A$;*!dáA$:A$""5,A$;6!nÉ 50010g!U8:F$"IRC":1,U,15,"S0:"F$:1:F$,U:F$,URC":1,U,15,"S0:"F$:1:F$,U:F$,UP$" :"AA$:600!P$E$4100!E$"":CC$AA$:100   D64WGET4/128 1200B 2.0+@ UPDATED 10/13/2021 12:54Aa 254,(186):(254)8254,8 SY(65532):SY6158,254: SY34X23777:X,170:(X)170"<16K":5,2,0,(8):(65532)3456,87:54,87:52,87 PP$(25):P$"OK":186, 1)2095:"PML64.BIN",(254),1:W -SY226UM0(UM1)245:"UP9600.BIN",(254),1: 2SY61ML4864:981,15:S8(215)128:S812830643 7SY61S8128XB2400:CO$(159) -<SY61(ML1)2175:"PML128.BIN",(254),1:! PSY226UM0  "NITIALIZING MODEM...":CR$(13)(10)9 #5,A$:A$""203k 5,CR$;"ATHZ0&P0F0E0";CR$;:900:P$"OK"203 #5,A$:A$""208 5,CR$;"ATE0N0R0V1Q0";CR$; 900:P$"OK"208 #5,A$:A$""225 5,"ATE0V1X1F3Q0S40=248I4";CR$;(1  : HTTP://";UR$&B " 2) UTPUT NIT:";UN/ILW2mJNH0:I020:(HH$(I))0NHNH1:(LWNH)") "HH$(I):TLHLWNH1:(LW1NH)") DD EW EADER"rUR$"":P$"1":400|:"YPE A NUMBER OR ΠTO BEGIN:";5000:P$"" 0"EW EADER: ";:5000:HH$(II)P$ 300GV --- TRANSMIT P$ TO THE OPEN SOCKETXOP$P$:ML9:C8$(((MV8)),2):E$"OK":VR3E$C8$b5,"ATS42=";C8$;"TP+";QU$;P$;QU$lML:P$E$P$OP$:"ETRYING..";CO$:600vOP$P$:ML9 "";LP$;"":1000'2900:"";MS$;" HAS LEFT THE CHANNEL.";CO$:1000a2900:"";MS$;" HAS JOINED THE CHANNEL.";CO$:1000jT II2^ II(MS$)II(MS$):2950h (MS$,II,1)"!"IIII1:2950r IIII1:2910 MS$(MS$,1,II): +<SY61(ML1)2175:"PML128.BIN",(254),1:! PSY226UM0  "NITIALIZING MODEM...":CR$(13)(10)9 #5,A$:A$""203k 5,CR$;"ATHZ0&P0F0E0";CR$;:900:P$"OK"203 #5,A$:A$""208 5,CR$;"ATE0N0R0V1Q0";CR$; 900:P$"OK"208 #5,A$:A$""225 5,"ATE0V1X1F3Q0S40=248I4";CR$;(1  : HTTP://";UR$&B " 2) UTPUT NIT:";UN/ILW2mJNH0:I020:(HH$(I))0NHNH1:(LWNH)") "HH$(I):TLHLWNH1:(LW1NH)") DD EW EADER"rUR$"":P$"1":400|:"YPE A NUMBER OR ΠTO BEGIN:";5000:P$"" 0"EW EADER: ";:5000:HH$(II)P$ 300GV --- TRANSMIT P$ TO THE OPEN SOCKETXOP$P$:ML9:C8$(((MV8)),2):E$"OK":VR3E$C8$b5,"ATS42=";C8$;"TP+";QU$;P$;QU$lML:P$E$P$OP$:"ETRYING..";CO$:600vOP$P$:ML9 00*"";MS$;": ";(MA$,I2):10004"";LP$;"":1000Q2900:"";MS$;" HAS LEFT THE CHANNEL.";CO$:10002900:"";MS$;" HAS JOINED THE CHANNEL.";CO$:1000T II2^ II(MS$)II(MS$):2950h (MS$,II,1)"!"IIII1:2950r H8 ?8> 8 .8hhL.. S 8>>L;. H 8>L;LDALDYJSRRTSBCSBEQBCCCMPBNELDXJMPSTASTYSTXINYDEYDEXDECINXINCCPYCPXSBCSECADCCLCTAXTAYTXATYAPHAPLABRKBMIBPLANDORAEORBITBVCBVSROLRORLSRCLDCLIASLPHPPLPRTISEDSEITSXTXSCLVNOP  S`W ' % 1(  Y! /)Vn See Y! Q VFW ( H) *` ' )V ` d(K |!K /)L` Lh t! (' (e ) Y o(֝e ) g( J %e J h! /) |! U.T*i? LH) ' #,L1%/ `  Ĥ>å ͽ  &   ݩ L=# BLh ,HwHHHHl`KH ( )hILr" $V  # L" %.: ( H) ( ( # H)  H) h 1(M/Uɝ o*S8`ʊMVAw % o" x} %yz %{|Lh e%JKe hhVL$L` KJ`0G`8`N`HJJJJ '(h)L'( ,  `?h)>@Ahi=hi<H ( hAh@h? ܎ܭ) ܩߢ%DCBxDC (<H=H>H?@A@L` A(Z[\] R(\]Lh 'bc R(OP R(QR ) WN 1(V N ". Lh M3M8OȱPQȭRmbȱmc /)0 A( R(TU ( =<`K H) ( /)K` g(i /)K`>` V`H %h. ( L (v/ ; =)< (= ( H)C (D ( $) (Lh L` A( ( R(DC $)K ( )  ( `e 'IS ) ' ))"У "  H)Lͽ +A H) ( *Lh  + ++ "+ =+ H)(` ) 0 :)`hh`L` HH&&hehe&ee` +UHH H) H)h ( H)h * H) *Lh + H) ( * *Lh  + ++ + "+ +LH)J&&` ( `ԩԩDԎԌLe  - o"N, "L"L /) }*L,ɑх҅^ T.:,$^i(ݍI .LI:$' -8 # .Lp - *Lh- -^8^ - o" ^MM #N, C) "Lh-L" -膭 YMJ,),#($YX$$#]#)i#$S#$S[[i$$)|mi)S4i#bZH&bTDThDt(ntJrtttrDh2"&&rr&HDD PC IRQ SR AC XR YR SPABCDFGHLMNQR(TWX,:;$#"+-OIJ%&EV)>)(2$/'!!!&!)#L'&P)+!&*, # -$ ""1000VI(P$)1200`(P$,I,1)" "II1:1110=jMC$(P$,1,I1):P$(P$,I1)UMA$P$:MC$""1000yA((MC$,1,I)):A48A571300(MC$)1(MC$,1,1)"0"MC$(MC$,2):1220C(MC$):C430C460"AD ICK GIVEN(";C;") : "  `ТLȈ8aHh0!A$Pp"bBX(@x0123456789ABCDEFNO START ADDRESS----------  xL  `  ߢ%ɑ# `a (u `.HdX=< %B*LM)? , %. NVd (. $ݐ/I +$ .MS$(P$,1,I1):P$(P$,I1)LI1:P$""1000&VI(P$)1200F`(P$,I,1)" "II1:1110gjMC$(P$,1,I1):P$(P$,I1)MA$P$:MC$""1000A((MC$,1,I)):A48A571300(MC$)1(MC$,1,1)"0"MC$(MC$,2):1220C(MC$)  `ТLȈ8aHh0!A$Pp"bBX(@x0123456789ABCDEFNO START ADDRESS----------  xL  `  ߢ%ɑ# `a (u `.HdX=< %B*LM)? , %. NVd (. $ݐ/I //lL`  V`N " H)`HShS`TUL 8S  $ , o" %Њ =) ( H) -H "h "MX e"X. %. %` {"Ș e"J (J`M z"`8e`J J") J.JJJJ).X)M) JJJ Ȉ` e" MȐ`.T6/U . /)L* ' # % #:wL=% ' ) 'L% A(f ( O0O8?Jnfne )": % |(0eeَTVKV "XU6/ e%. e%MX0 b%X. e%. e% b% b%TK h>h=h<DCBX>)LN ,HP<[k=Zc^[_SH0NHҮB%HHL' % $)K )=< H)$N " Lh JMHF_^:SL[ \]^_@H ) n U( ( )c %H7Ш)) xT  U(` A( U( R(` (HJJJJ '(h) '(H hLiii:`Hh`Y ( |( ( g( g(`L` t!Y ( ( ` ( @@ -117,17 +117,17 @@ $ Y T. ( Y`)  @`- `  MICROMON-64 COMPUTE! BOOKS @E@ 0"E3@ @E3@ @E@ "D3ЌD"D3ЌD"D3@ "D3@ bx!#)t**h++,E*` <*+7,!,),#` ` ---------- BRANCH OUT OF RANGEUNDEFINED LABEL NAKED LABEL <<<<<<<< DISK ERROR >>>>>>>>  -- DUPLICATED LABEL --  -- SYNTAX ERROR --  -CKET INTO PP0930:P0PP00"NEXPECTED PACKET ID: ";P0;"/";P:<P00`PP$(PE)P$:PEPE1:PE25PE0lP$"": --- GET P$ FROM SOCKET P E0:P$"":PH25PH0*PHPEP$PP$(PH):PHPH1:4700:P00E1:: FAIL> t>  ; 4hhw>L+> 32>  :L; 4hhw>L+. O 8>L;> P O:SjHL. N P 8Θ>    L;. N O 8>L;. N H 8>L;. N S 8>L;` .= ȹD==L->=D=D=L,D=L+ 0 $0L+Y=@Z=>Ix> 0L,>G= LG/H=A>Y=ȹH=Y=A>ȹH=Y=Lp,~>>@>ТY=Y=0) , L,HH 2hhY=#?(r>7qmq>q>L-~>Y=) .>L.>>>*8Ӎ>  >L.  ө= .88Ӎ>ӭ>  > +;CC$:600v  --- GET NEXT FROM SOCKET INTO PPZ930:P0PP00"NEXPECTED PACKET ID: ";P0;"/";P:fP00PP$(PE)P$:PEPE1:PE25PE0P$"": --- GET P$ FROM SOCKET P E0:P$"":PH25PH0*PHPEP$PP$(PH): t>  ; 4hhw>L+> 32>  :L; 4hhw>L+. O 8>L;> P O:SjHL. N P 8Θ>    L;. N O 8>L;. N H 8>L;. N S 8>L;` .= ȹD==L->=D=D=L,D=L+ 0 $0L+Y=@Z=>Ix> 0L,>G= LG/H=A>Y=ȹH=Y=A>ȹH=Y=Lp,~>>@>ТY=Y=0) , L,HH 2hhY=#?(r>7qmq>q>L-~>Y=) .>L.>>>*8Ӎ>  >L.  ө= .88Ӎ>ӭ>  > 0  8> 8> ?8;  .8 8w>L+>>s>t>  1L=+   >   HH ͽ>>>`D=P` 8 8 8ƅ= .8 8L~-ȹD=V Ȍ>8>D=IȹD= LL0ȹD==;ȥ>ʠD=D=Lq0D=` 8 8 8= .8 8L0>>Ȍy>Dmy>=i 2>z>{>ȑhhL->> 1>8岥 89> .8 8`  = `= ` ` = u +,`L+  ɬ= .8L.`L2 8>L4>> >` 7L3 L4 4>hhL+`ɱ[ɳ_ɪ>ɬL4.$ ^4D=L3>`L5D=L58>΃>轞0轞0D=Ls4)`>L3>L3 3> * 8 8> D= L4ȄDe=i 2>> 6z>{> "E L6:L6; 3>>L6"L5> 8L5L9D=> 7>L5>=譑>u C:?; 3>>L~6m=> m= 8L16m=D= :=L16>n=LO6=> 2z> 7>=L16> 8n=: 4>>hh>>Ll.L+>`  7>> ?8{> H8{>L7y>>>  y>  ee` - 8L08` 8`>> r9 8>` ͽ 8>`> r9 r9 9` ͽ 9` 8`u>v> ͽ L9`D= .8`  8 `>`>`>  > 8 8W> .8 8L; L9  ^4D=L9D==L:> g8 ?8 8 8 1 4w>`. E N D 9>w>>s>t> h3`> D=  ^4D==L:L;,=ȩP=ȩ,=ȩW=Ȅ 8 8> 2 s> PHPEP$PP$(PH):PHPH1:HE1:5 ---- GET E$ FROM MODEM, OR ERROR?E$""GMLE$""P$E$"OMM ERROR. XPECTED ";E$;", OT ";P$;CO$;"" GET PACKET HEADER, SETS P0,P1,P2, RETURNS P0=0 IF NADAML12:E0:P00:P1 45"XPECTED ";E$;", GOT ";A$: THE MAIN LOOP1A$:A$""3000F800:P$""1000jMS$"":MC$"":MA$"":I1:LP$P$(P$,1,1)":"1100I(P$)1100$(P$,I,1)" "II1:1050.MS$(P$,1,I1):P$(P$,I1)LI1:P$ *0q>7>*8>> i@=L+=ȹ ∄ 1 2w> h3>? 8 L A D S 8> D= 2z>s>{>t> w>L. h3>>>L+>> 8 ?8 g8 ?8> ;7Lj2r>rr>G=hmq>q>L->9ȹD= r> mq>q>r>SL~-L->L~-8z>H{>hL + 8L08` 8`>> r9 8>` ͽ 8>`> r9 r9 9` ͽ 9` 8`u>v> ͽ L9`D= .8`  8 `>`>`>  > 8 8W> .8 8L; L9  ^4D=L9D==L:> g8 ?8 8 8 1 4w>`. E N D 9>w>>s>t> h3`> D=  ^4D==L:L;,=ȩP=ȩ,=ȩW=Ȅ 8 8> 2 s> PHPH1: 4700:P00E1:: FAIL.>PHPEP$PP$(PH):PHPH1:8HE1:_ ---- GET E$ FROM MODEM, OR ERRORiE$""qMLE$""P$E$"OMM ERROR. XPECTED ";E$;", OT ";P$;CO$;"" GET PACKET HEADER, SETS P0,P1,P2, R P$"""-";CO$:5,"ATL":9452"XPECTED ";E$;", GOT ";A$:F THE MAIN LOOP[A$:A$""3000p800:P$""1000MS$"":MC$"":MA$"":I1:LP$P$(P$,1,1)":"1100I(P$)1100$(P$,I,1)" "II1:1050 *0q>7>*8>> i@=L+=ȹ ∄ 1 2w> h3>? 8 L A D S 8> D= 2z>s>{>t> w>L. h3>>>L+>> 8 ?8 g8 ?8> ;7Lj2r>rr>G=hmq>q>L->9ȹD= r> mq>q>r>SL~-L->L~-8z>H{>hL 0h L>-hL 0hL 08z>{>L~-~>Y=,L.q>LL-{>Ur>  mq>q> 7 7L-~>Y=)lq>L-Z="[=z>r>ѩmq>q>L~- 7L-r> q>iq>L- q>i q> 7 7>L LtY=XeY=)L,{>r>RNzr> q>iq>L-r>1 /LG/q>iq>L- 8 8W> .8 8L-{>Dr> mq>q>L~- 2 /LG/mq>q>[=Y q>ɶL/L~-r> mq>q>L- 3 /LG/mq>q>L->>> hh c80 ƳƲL0>>x>L?1y>> 1ȹY=S0OѲ>> 1L0>0`> 8 8 ?8= .8 8hhq>)>L-L~-y>L?1> 1y>>ȱz>ȱ{>> -{>z>>>mz>z>>m{>{>>`L?1ƳƲ` =z>{>>)==== -3====L3>> T3β=`=.==.==m===m===.=`=mz>z>=m{>{>` />>>>> u> v>  4hhL+ L3 L4:LP4;s>>U>> 3L4  ^4D=L3 8 ?8 8 hhL+D=PD= >`w>` ,:( ; ,) =D=L5>D= M5L3>>D= M5>L3z>{>z>.{>z>.{>z>.{>z>.{>=A) z>z>>>`> HH $0hhD= D=Bh>>>> 8 ?8 g8 ?8> D= D=  8z>x>{>y> x>y>x>y>  `8>΃>轞0轞0L+7)`D=+L?7ȹD= Z7=LJ7:808`== 2z>>{>>`> 8`>  q> H8 ?8q> 7`> 8`>z> H8z>L7> 8 8`>z> H8z>  >`>`>`  > > r9L 9> ͽ  `>`>`  > r9 r9LC9 ͽ  `>`>`  v>u> ͽ  `H)4=hJJJJ4= `F 9hhL+ɀ G:L9DL:PL:NL5;OL ;SL;HLSTA $DC0C;; SP1 AULTS 1Z*HSECi*RLDA WRRPTRx*\SBC RDRPTR*fCMP #200*pBCS ENABLE2;; D'T ENABLE RTS RECBUFFER IS FU +Ԋ;; DISABLE SERIAL ERFACE,@DISABLE PHA:TXA:PHA:TYA:PHA8,ALDA IRQVECT:CMP #IRQ:BNE NODISa,BLDA IRQVECT1:CMP #IRQ:BEQ DISABL2,CNODIS PLA:TAY:PLA:TAX:PLA:RTS,IDISABL2 SEI,JLDA $DD01;; DISABLE RTS,T IRQ;; OLD IRQHLER-STA IRQVECT-œLDA #IGIRQ-̜STA IRQVECT1.֜LDA #IGNMI;; OLD NMIHLER/.STA NMIVECT@.LDA #IGNMIR.STA NMIVECT1Z.CLIv.PLA:TAY:PLA:TAX:PLA:RTS}.;;.;;.PREVTAB .BUF 128.ٙ NOP;:F$"UP9600.BAS  --- TRANSMIT P$ TO THE OPEN SOCKET=X(P$)0((P$,1))10P$(P$,(P$)1)x]OP$P$:ML9:C8$(((MV8)),2)::E$"OK":VR3E$C8$b5,"ATS42=";C8$;"T+";QU$;P$;QU$lML:P$E$P$OP$:"XMIT FAIL";CC$:600v --- GET NEXT FROM SO54):BA1200:XB1200I CR$(13):(14);:SY(65532):53280,254:53281,246 CO$"":SY226ML49152:665,73((678)30):UMML2048:XB9600 #SY34ML22273:(ML)765:"PMLVIC.BIN",(254),1: &SY3436879,27:CO$(31) -(SY226(ML1):UM3:X(789):UM9:X234XB1200H ZSY3456579,0: WHY DOES THIS WORK` d GET THE BAUD RATEk nP$"A" xCO$;" V1.5":"EQUIRES 64ET II FIRMWARE 1.8+" "Y O IMMERMAN (BO@ZIMMERS.NET)":: ------------------------#5,A$:A$""208& 5,CR$;"ATE0N0R0V1Q0";CR$;= 900:P$"OK"208g 5,"ATE0V1X1F3Q0S40=250I4";CR$;(19); 900:VR(P$):VR1.8"IMODEM INIT FAILED: ";P$: 900:P$"OK"203 , GET THE SERVER 6:"OME SERVERS:" @"IRC.NLNOG.#5,A$:A$""390  MAKE THE CONNECTIONSAT$"":XB0BA0XBBAAT$"S43="((XB),2)j#5,A$:A$""406QU$(34):5,"AT"AT$"H&D13&M13&M10CP";QU$;SE$;QU$900(P$,8)"CONNECT ""NABLE TO CONNECT TO ";SE$;":";P$:300AT":9000:90004:"HAT IS YOUR NICKNAME";:5000:NI$P$:N1(NI$)RNI$""" GUESS NOT.":jP$" "NI$:600P$" GUEST 0 * :OE NONYMOUS":600"ONNECTED, WAIT FOR . ? FOR HELP";CO$ 1000: GO START MAIN LPVIA1)&DTXA&NASL&XE #$33;; TIME CST SER +'bLDX #0;; 51 55 DEPING PALNTSC VERSIX'lSTA $DC04;; START UE TIMERA (OF CIA1)'vSTX $DC05;; (TIME IS AROUND 1(2BAUDRATE) )'ASL;; TIME CST RECEIVER 'A #1;; 103 ЉSTA $DC0D;; DISABLE TIMERA (CIA1) ERRUPT&)ډSTA $DC0F;; START TIMERB OF CIA1 (GENERATES KEYSCAN IRQ)])LDA #$92;; TIMERB OF CIA2 (ENABLE SIGNAL AT PB7)k)STA $DD0Fx)LDA #$98)BIT $DD0D;; CLEAR PING NMIS) STA $DD0D;; ENABLE NMI (SDR LL*zLDA #2;; ENABLE RTS+STA $DD03;; (THE RTS LINE IS THE LY OUTPUT)+ENABLE2 CLI1+PLA:TAY:PLA:TAX:PLA:RTS`+;; TABLE OF TIMER UES PAL NTSC VERSIx+ILOTAB .BYTE 149 37+;;+IHITAB .BYTE 66 64+ʊ;; #$FD,^STA $DD01,hLDA #$7F,rSTA $DD0D;; DISABLE ALL CIA ERRUPTS -|STA $DC0D>-LDA #$41;; QUICK ( DIRTY) HACK SWITCH BACKk-STA $DC05;; THE AULT CIA1 CFIGURATIx-LDA #$81-STA $DC0D;; ENABLE TIMER1 (THIS IS AULT)-LDA #IG#":1,8,15,"S0:UP9600*":1:F$,8"UP9600.BAS":1,8,15,"S0:UP9600*":1:F$,8EQ SETPDUN +{>z>>>mz>z>>m{>{>>`L?1ƳƲ` =z>{>>)==== -3====L3>> T3β=`=.==.==m===m===.=`=mz>z>=m{>{>` />>>>> u> v>  4hhL+ L3 L4:LP4;s>>U>> 3L4  ^4D=L3 8 ?8 8 hhL+D=PD= >`w>` ,:( ; ,) =D=L5>D= M5L3>>D= M5>L3z>{>z>.{>z>.{>z>.{>z>.{>=A) z>z>>>`> HH $0hhD= D=Bh>>>> 8 ?8 g8 ?8> D= D=  8z>x>{>y> x>y>x>y>  `8>΃>轞0轞0L+7)`D=+L?7ȹD= Z7=LJ7:808`== 2z>>{>>`> 8`>  q> H8 ?8q> 7`> 8`>z> H8z>L7> 8 8`>z> H8z>  >`>`>`  > > r9L 9> ͽ  `>`>`  > r9 r9LC9 ͽ  `>`>`  v>u> ͽ  `H)4=hJJJJ4= `F 9hhL+ɀ G:L9DL:PL:NL5;OL ;SL;HLML12:E0:P00:P10:P20:PR0:I0:I00:I10:CR0:P40:P50:C80RP$"":5,(17);}ML6:P0(MV2):P1(MV4):P2(MV6)PL(MV0):CR(MV1):C8(MV8)P00P2C8985P10P$""P00CR0ML12: + NMIVECT%STY NMIVECT1&LDX $2A6;; PAL NTSC VERSI ;&LDA ILOTAB,X;; (KEYSCAN ERRUPT CE EVERY 164 SECD)q&&STA $DC06;; (SRY THIS WILL BREAK CODE, THAT USES&0LDA IHITAB,X;; THE TI$ VARIABLE)&:STA $DC07;; START UE TIMER B (OF C FLAG) (CIA2))LDA #$8A* STA $DC0D;; ENABLE IRQ (TIMERB SDR) (CIA1)**LDA #$FF3*4STA $DD01;; PB07 AULT 1R*>STA $DC0C;; SP1 AULTS 1Z*HSECi*RLDA WRRPTRx*\SBC RDRPTR*fCMP #200*pBCS ENABLE2;; D'T ENABLE RTS RECBUFFER IS FU +Ԋ;; DISABLE SERIAL ERFACE,@DISABLE PHA:TXA:PHA:TYA:PHA8,ALDA IRQVECT:CMP #IRQ:BNE NODISa,BLDA IRQVECT1:CMP #IRQ:BEQ DISABL2,CNODIS PLA:TAY:PLA:TAX:PLA:RTS,IDISABL2 SEI,JLDA $DD01;; DISABLE RTS,T IRQ;; OLD IRQHLER-STA IRQVECT-œLDA #IGIRQ-̜STA IRQVECT1.֜LDA #IGNMI;; OLD NMIHLER/.STA NMIVECT@.LDA #IGNMIR.STA NMIVECT1Z.CLIv.PLA:TAY:PLA:TAX:PLA:RTS}.;;.;;.PREVTAB .BUF 128.ٙ NOP;:F$"UP9600.BAS P";CO$ 1000: GO START MAIN LP;V --- TRANSMIT P$ TO THE OPEN SOCKETgX(P$)0((P$,1))10P$(P$,(P$)1)]OP$P$:ML9:C8$(((MV8)),2)::E$"OK":VR3E$C8$b5,"ATS42=";C8$;"T+";QU$;P$;QU$lML:P$E$P$OP$:"XMIT FAIL"54):BA1200:XB1200I CR$(13):(14);:SY(65532):53280,254:53281,246 CO$"":SY226ML49152:665,73((678)30):UMML2048:XB9600 #SY34ML22273:(ML)765:"PMLVIC.BIN",(254),1: &SY3436879,27:CO$(31) +(SY226(ML1):UM3:X(789):UM9:X234XB1200H ZSY3456579,0: WHY DOES THIS WORK` d GET THE BAUD RATEk nP$"A" xCO$;" V1.5":"EQUIRES 64ET II FIRMWARE 1.8+" "Y O IMMERMAN (BO@ZIMMERS.NET)":: ------------------------#5,A$:A$""208& 5,CR$;"ATE0N0R0V1Q0";CR$;= 900:P$"OK"208g 5,"ATE0V1X1F3Q0S40=250I4";CR$;(19); 900:VR(P$):VR1.8"IMODEM INIT FAILED: ";P$: 900:P$"OK"203 , GET THE SERVER 6:"OME SERVERS:" @"IRC.NLNOG.PO$)0SE$"":360|SE$SE$":"PO$0#5,A$:A$""390J MAKE THE CONNECTION}AT$"":XB0BA0XBBAAT$"S43="((XB),2)#5,A$:A$""406QU$(34):5,"AT"AT$"H&D13&M13&M10CP";QU$;SE$;QU$900(P$,8)"CONNECT "2582,170:2583,1:NP02582,154'5,"AT":9000:9000^:"HAT IS YOUR NICKNAME";:5000:NI$P$:N1(NI$)|NI$""" GUESS NOT.":P$" "NI$:600P$" GUEST 0 * :OE NONYMOUS":600"ONNECTED, WAIT FOR . ? FOR HELIA1)&DTXA&NASL&XE #$33;; TIME CST SER +'bLDX #0;; 51 55 DEPING PALNTSC VERSIX'lSTA $DC04;; START UE TIMERA (OF CIA1)'vSTX $DC05;; (TIME IS AROUND 1(2BAUDRATE) )'ASL;; TIME CST RECEIVER 'A #1;; 103 ЉSTA $DC0D;; DISABLE TIMERA (CIA1) ERRUPT&)ډSTA $DC0F;; START TIMERB OF CIA1 (GENERATES KEYSCAN IRQ)])LDA #$92;; TIMERB OF CIA2 (ENABLE SIGNAL AT PB7)k)STA $DD0Fx)LDA #$98)BIT $DD0D;; CLEAR PING NMIS) STA $DD0D;; ENABLE NMI (SDR LL*zLDA #2;; ENABLE RTS+STA $DD03;; (THE RTS LINE IS THE LY OUTPUT)+ENABLE2 CLI1+PLA:TAY:PLA:TAX:PLA:RTS`+;; TABLE OF TIMER UES PAL NTSC VERSIx+ILOTAB .BYTE 149 37+;;+IHITAB .BYTE 66 64+ʊ;; #$FD,^STA $DD01,hLDA #$7F,rSTA $DD0D;; DISABLE ALL CIA ERRUPTS -|STA $DC0D>-LDA #$41;; QUICK ( DIRTY) HACK SWITCH BACKk-STA $DC05;; THE AULT CIA1 CFIGURATIx-LDA #$81-STA $DC0D;; ENABLE TIMER1 (THIS IS AULT)-LDA #IG#":1,8,15,"S0:UP9600*":1:F$,8"UP9600.BAS":1,8,15,"S0:UP9600*":1:F$,8EQ SETPDUN LSETPNXT LDA $FB:CLC:ADC #$07:STA $FB VLDA $FC:ADC #$00:STA $FC `LDA $FB:CMP $31:BCC SETPLP:BNE SETPDUN @@ -137,7 +137,7 @@ jLDA $FC:CMP $32:BCC SETPLP -SY226UM0(UM1)245:"UP9600.BIN",(254),1: 2SY61ML4864:981,15:S8(215)128:S812830643 <SY61(ML1)2175:"PML128.BIN",(254),1: -FSY61S8128XB2400:CO$(159) PSY226UM0UM--------' GET STARTED !M -------------------------------r UN(254):IP$"":CR$(13)(10) PH0:PT0:MVML18 "NITIALIZING MODEM..." #5,A$:A$""203 5,CR$;"ATHZ0&P0F0E0";CR$;:900:P$"OK"203 NET PORT 6667, #C-64"8E"IRC.FREENODE.NET PORT 6667, #C64FRIENDS"r^SE$""::"HAT IS YOUR SERVER HOST":5000:SE$P$hSE$""" GUESS YOU'RE DONE THEN":5:r"HAT IS THE PORT":5000:PO$P$:(PO$)0SE$"":360|SE$SE$":"PO$ P((P$,8))XB96004305UM:UM3:(789)234UM9:435\BAXB:UM19,1:5,"AT":9000:9000nXB2400435NP0:(2614)0NP20BAXB:2576,10:2578,(59490NP):2579,(59491NP)2582,170:2583,1:NP02582,1545," 111 DEPING PALNTSC VERSI (STA $DD06;; START UE TIMERB (OF CIA2)9(STX $DD07;; (TIME IS AROUND 1BAUDRATE )q(LDA #$41;; START TIMERA OF CIA1, SP1 USED AS OUTPUT(STA $DC0E;; GENERATES THE SER'S BIT CLOCK(LDA #1(ƉSTA OUTSTAT( +FSY61S8128XB2400:CO$(159) PSY226UM0UM--------' GET STARTED !M -------------------------------r UN(254):IP$"":CR$(13)(10) PH0:PT0:MVML18 "NITIALIZING MODEM..." #5,A$:A$""203 5,CR$;"ATHZ0&P0F0E0";CR$;:900:P$"OK"203 NET PORT 6667, #C-64"8E"IRC.FREENODE.NET PORT 6667, #C64FRIENDS"bJ"IRC.US.IRCNET.NET PORT 6667, #C-64"^SE$""::"HAT IS YOUR SERVER HOST":5000:SE$P$hSE$""" GUESS YOU'RE DONE THEN":5:r"HAT IS THE PORT":5000:PO$P$:( "NABLE TO CONNECT TO ";SE$;":";P$:300(P((P$,8)):XB9600430_UM:UM3:(789)234UM9:435BAXB:UM19,1:5,"AT":9000:9000XB2400435NP0:(2614)0NP20BAXB:2576,10:2578,(59490NP):2579,(59491NP) 111 DEPING PALNTSC VERSI (STA $DD06;; START UE TIMERB (OF CIA2)9(STX $DD07;; (TIME IS AROUND 1BAUDRATE )q(LDA #$41;; START TIMERA OF CIA1, SP1 USED AS OUTPUT(STA $DC0E;; GENERATES THE SER'S BIT CLOCK(LDA #1(ƉSTA OUTSTAT( UT2 NOPUT1 PLA:JMP $F1CADOPUT2 CLC:PLA+JSR RSOUTBLDA #$00:STA $0297JCLCYDOPUT4 RTSV;; W;;;;;;;;;;;;;;;;;; XDO PHA:JSR DISABLE:JSR $F314bBEQ DOCLO2lPLA:CLC:RTSvDOCLO2 JSR $F3 'NMIDOBIT PHA''BIT $DD0D;; CHECK BIT 7 (STARTBIT )W$'BPL NMIDOBI2;; NO STARTBIT RECEIVED, SKIPd.'LDA #$138'STA $DD0F;; START TIMER B (CED RE, SIGNAL AT PB7)B'STA $DD0D;; DISABLE TIMER FLAG ERRUPTSL'LDA #NMIBYTRY;;  SKIP (EG. KEY)+LDA #$923 +STA $DD0F;; TIMER B (KEEP SIGNALLING AT PB7!)b*+STA $DD0D;; ENABLE FLAG ( TIMER) ERRUPTS4+LDA #NMIDOBIT;; NMI CALL NMIDOBIT>+STA NMIVECT;; (TRIGGERED BY A STARTBIT)C+LDA #NMIDOBIT:STA NMIVECT1H+TA (RECPTR),Y+INY+STY WRRPTR +SEC;;START BUFFER FULL CHK(+TYA7+SBC RDRPTRD+CMP #200U+BCC NMIBYTR2+LDA $DD01;; ME THAN 200 BYTES IN THE RECEIVE BUFFER+ #$FD;; DISABLE RTS,STA $DD01,NMIBYTR2 PLA:TAY:PLA:TAX$,PLAIP THE FIRST PARTRNLDX OUTSTAT/\NBEQ IRQ2;; SKIP, WE'RE ING AN EMPTY SDR7fNDEXGpNSTX OUTSTAT[zNIRQ2 BCC IRQ6iNIRQ3 CLIwNJSR $FFEANLDA $CC:BNE IRQ5NDEC $CD:BNE IRQ5NLDA #$14:STA $CDNLDY $D3:LSR $CFNLDX $02EUR LDY RDRPTRUCPY WRRPTR,VBEQ R3;; SKIP (EMPTY BUFFER, WITH CARRY SET)?VLDA (RECPTR),YGVINYV"VSTY RDRPTRy,VPHA;;BEGIN BUFFER EMPTYING CHK6VTYA@VSECJVSBC WRRPTRTVCMP #206;;25650^VBCC R2hVLDA #2:A $DD01:STA $D$DC0C:LDA #$02:STA OUTSTAT:R:A #$7F:STA $DC0C FZCLI%PZLDX $A8:LDY $A7:PLA:RTS4ZZRSOUTX CLIIdZLDA #$FD:STA $A2mnZRSOUTX2 LDA OUTSTAT:BEQ RSOUTX3xZBIT $A2:BMI RSOUTX2ZRSOUTX3 JMP $F490o];; p];; INSTALLR ALY CHANGED vuLDA NMIVECT uCMP #IGNMI'!uBNE INSTERR;; NMIVECR ALY CHANGED9!uLDA NMIVECT1J!uCMP #IGNMIs!uBNE INSTERR;; NMIVECR ALY CHANGED~!uLDY #0!uSTY WRSPTR!uSTY RDSPTR!uSTY WRRPTR!uSTY RDRPTR!u;; PROBE RS $DD01;; LOOK IT TRIGGERS AN #\vDEX;; SHTREGISTER ERRUPT#fvBNE INSTALL2C#pvLDA $DD0D;; CHECK BIT3 (SDRFLAG)L#zv #8r#vBEQ INSTERR;; NO ERFACE DETECTED#v;; GENERATE LOOKUP TABLE#vLDX #0#vINSTALL3 STX OUTSTAT;; OUTSTAT USED AS TE#IRQ:BNE ENABL2$LDA IRQVECT1:CMP #IRQ:BNE ENABL2%PLA:TAY:PLA:TAX:PLA:RTS*%ENABL2 SEIO%ˆLDX #IRQ;; INSTALL IRQHLER^%̈LDY #IRQn%ֈSTX IRQVECT%STY IRQVECT1%LDX #NMIDOBIT;; INSTALL NMIHLER%LDY #NMIDOBIT%STX1F;; SET BALDA $BA:CMP #$02:BEQ DOCLO40DOCLO3 PLA:JMP $F291SDOCLO4 LDA #$00:STA UPFLAG:PLAhLDX #$00:CLC:RTS>;; @DOCHKIN PHA:LDA UPFLAG:BNE DOCHKI1:PLA:JMP $F20EEDOCHKI1 PLA:JSR $F30F:BEQ DOCHKI2OCHKO1 PLA:JSR $F30F:BEQ DOCHKO2:JMP $F701(DOCHKO2 JSR $F31FILDA $BA:CMP #$02:BEQ DOCHKO4cCMP #$04:BCC NOCHKOUTDOCHKO3 JSR DISABLE:JMP NOCHKOUTDOCHKO4 STA $9A:JSR ENABLE:CLC:RTSNOCHKOUT JMP $F25B';; NMI CALL NMIBYTRYV'STA NMIVECT;; (TRIGGERED BY SDR FULL)@['LDA #NMIBYTRY:STA NMIVECT1w`'NMIDOBI2 PLA;; IGNE, NMI WAS TRIGGERED BY KEYj'RTIt';;*NMIBYTRY PHA+BIT $DD0D;; CHECK BIT 7 (SDR FULL ) +BPL NMIDOBI2;; SDR FULL, XA:PHA:TYA:PHA#\+LDA $DD0C;; SDR (BIT0BIT7,...,BIT7=DATABIT0)Jf+CMP #128;; MOVE BIT7 O CARRYFLAGUp+ #127]z+TAX+LDA REVTAB,X;; BITS 1-7 FROM LOOKUP TABLE+ADC #0;; ADD BIT0+LDY WRRPTR;; WRITE IT O THE RECEIVE BUFFER+ST.,RTI#N;; 3N;; IRQ PARTF NIRQ LDA $DC0Da*NIRQ1 LSR;; IRQMASK4NLSR;; MOVE BIT1 O CARRYFLAG (TIMER B FLAG)>N #$02;; TEST BIT3 (SDR FLAG)HNBEQ IRQ3;; SDR EMPTY, SK87NLDA ($D1),Y:BCS IRQ4NINC $CF:STA $CENJSR $EA240NLDA ($F3),Y:STA $0287FNLDX $0286:LDA $CEXNIRQ4 E #$80fOJSR $EA1CzOIRQ5 JSR $EA87OIRQ6 JMP $EA81U;; U;; BYTE FROM SERIAL ERFACD01;; ENABLE RTSVCLCVR2 PLAVR3 RTS*Y;; KY;; PUT BYTE SERIAL ERFACEqYRSOUT PHA:STA $9E:CMP #$80: #$7FYSTX $A8:STY $A7:TAXYJSR RSOUTXZRSOUT3 LDA REVTAB,X(ZADC #$00:LSR2ZSEIvLDX #8"HvINSTALL2 STX $DD01;; GGLE TXD"RvSTA MPARY VARIABLE#vLDY #8#vINSTALL4 ASL OUTSTAT$vR From e33c3379df72cb1b5e2ecb1f48b35ce7d4a26774 Mon Sep 17 00:00:00 2001 From: bozimmerman Date: Mon, 17 Oct 2022 00:43:31 +0000 Subject: [PATCH 2/8] irc fix git-svn-id: svn://192.168.1.10/public/Zimodem@21855 0d6f1817-ed0e-0410-87c9-987e46238f29 --- zimodem/zimodem.ino | 2 +- zimodem/zircmode.ino | 18 +++++++----------- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/zimodem/zimodem.ino b/zimodem/zimodem.ino index e8aa105..4db8819 100644 --- a/zimodem/zimodem.ino +++ b/zimodem/zimodem.ino @@ -14,7 +14,7 @@ limitations under the License. */ //#define TCP_SND_BUF 4 * TCP_MSS -#define ZIMODEM_VERSION "3.7.0" +#define ZIMODEM_VERSION "3.7.1" const char compile_date[] = __DATE__ " " __TIME__; #define DEFAULT_NO_DELAY true #define null 0 diff --git a/zimodem/zircmode.ino b/zimodem/zircmode.ino index ba0fc1e..7368e16 100644 --- a/zimodem/zircmode.ino +++ b/zimodem/zircmode.ino @@ -8,6 +8,7 @@ //https://github.com/bl4de/irc-client/blob/master/irc_client.py void ZIRCMode::switchBackToCommandMode() { + serial.println("Back in command mode."); if(current != null) { delete current; @@ -264,7 +265,8 @@ void ZIRCMode::doIRCCommand() if(lccmd.startsWith("/join ")) { int cs=5; - while((cmd.length()cs) + &&((cmd[cs]==' ')||(cmd[cs]==7))) cs++; if(cs < cmd.length()) { @@ -277,7 +279,7 @@ void ZIRCMode::doIRCCommand() { channelName = cmd.substring(cs); if(current != null) - current->print("JOIN "+channelName+"\r\n"); + current->print("JOIN :"+channelName+"\r\n"); } } else @@ -291,7 +293,6 @@ void ZIRCMode::doIRCCommand() current->print("QUIT Good bye!\r\n"); current->flush(); delay(1000); - serial.println("Returning to command mode."); current->markForDisconnect(); delete current; current = null; @@ -307,9 +308,7 @@ void ZIRCMode::doIRCCommand() else if((current != null) &&(joinReceived)) - { - current->print("PRIVMSG "+channelName+": "+cmd); - } + current->printf("PRIVMSG %s :%s\r\n",channelName.c_str(),cmd.c_str()); break; } } @@ -378,9 +377,7 @@ void ZIRCMode::loopMenuMode() { showMenu=true; // keep coming back here, over and over and over if((current==null)||(!current->isConnected())) - { switchBackToCommandMode(); - } else { String cmd; @@ -389,12 +386,10 @@ void ZIRCMode::loopMenuMode() uint8_t c = current->read(); if((c == '\r')||(c == '\n')||(buf.length()>510)) { - //serial.prints(buf); if((c=='\r')||(c=='\n')) { cmd=buf; buf=""; - //serial.prints(EOLNC); break; } buf=""; @@ -467,7 +462,8 @@ void ZIRCMode::loopMenuMode() serial.prints(EOLNC); } int x0 = cmd.indexOf(":"); - int x1 = (x0>=0)?cmd.indexOf(":", x0+1):-1; + int x1 = (x0>=0)?cmd.indexOf(" PRIVMSG ", x0+1):-1; + x1 = (x1>0)?cmd.indexOf(":", x1+1):(x0>=0)?cmd.indexOf(":", x0+1):-1; if(x1>0) { String msg2=cmd.substring(x1+1); From d0be241e09dc1ab93749adb7478fac670ab6c54f Mon Sep 17 00:00:00 2001 From: bozimmerman Date: Tue, 18 Oct 2022 05:23:25 +0000 Subject: [PATCH 3/8] Updated readme version git-svn-id: svn://192.168.1.10/public/Zimodem@21857 0d6f1817-ed0e-0410-87c9-987e46238f29 --- README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README b/README index 01cdcd0..c864b15 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -Zimodem 3.6.4 (C)2016-2021 Bo Zimmerman +Zimodem 3.7.1 (C)2016-2022 Bo Zimmerman Please read the LICENSE file for license information Please read the NOTICE file for credits information From 7e80ff10e6c4e384e39714997c3153d4890f6d7b Mon Sep 17 00:00:00 2001 From: bozimmerman Date: Tue, 15 Nov 2022 18:01:53 +0000 Subject: [PATCH 4/8] default disabled flow control git-svn-id: svn://192.168.1.10/public/Zimodem@21885 0d6f1817-ed0e-0410-87c9-987e46238f29 --- zimodem/zimodem.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zimodem/zimodem.ino b/zimodem/zimodem.ino index 4db8819..5c2eb9e 100644 --- a/zimodem/zimodem.ino +++ b/zimodem/zimodem.ino @@ -96,7 +96,7 @@ const char compile_date[] = __DATE__ " " __TIME__; # define DEFAULT_PIN_RTS 4 # define DEFAULT_PIN_CTS 5 // is 0 for ESP-01, see getDefaultCtsPin() below. # define DEFAULT_PIN_DCD 2 -# define DEFAULT_FCT FCT_RTSCTS +# define DEFAULT_FCT FCT_DISABLED # define RS232_INVERTED 1 # define debugPrintf doNothing # define preEOLN(...) From c931eb102e62842c5ea8a315be209257bd9d7b9a Mon Sep 17 00:00:00 2001 From: bozimmerman Date: Wed, 23 Nov 2022 05:47:11 +0000 Subject: [PATCH 5/8] updated todos git-svn-id: svn://192.168.1.10/public/Zimodem@21896 0d6f1817-ed0e-0410-87c9-987e46238f29 --- TODO | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TODO b/TODO index a9c1f0b..5068341 100644 --- a/TODO +++ b/TODO @@ -1,8 +1,9 @@ Bugs Reported (nor reproduced): New Features: + *. Add gopher client, or at least at&g type gopher command (gopher://?) + *. Some sort of RI timer? See github. https://github.com/bozimmerman/Zimodem/issues/86 *. Ability to use protocols for at&g, and maybe have alternative at+web - *. make a persistent-ish ftp shell *. Ability to ftp file streamdown, like at&g.. maybe at+ftp *. Support switching between CONNECT 1 and CONNECT 1200 messages *. Baud rate test commend From 767e182098b306cb1654a32beb5d69203a01b72b Mon Sep 17 00:00:00 2001 From: bozimmerman Date: Thu, 29 Dec 2022 06:12:36 +0000 Subject: [PATCH 6/8] git-svn-id: svn://192.168.1.10/public/Zimodem@21975 0d6f1817-ed0e-0410-87c9-987e46238f29 --- TODO | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/TODO b/TODO index 5068341..5b53c4d 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,6 @@ Bugs Reported (nor reproduced): - + *. + New Features: *. Add gopher client, or at least at&g type gopher command (gopher://?) *. Some sort of RI timer? See github. https://github.com/bozimmerman/Zimodem/issues/86 @@ -12,11 +13,24 @@ New Features: *. PPP support? New hardware hopes: -C+B 0 FLAG2+PB0 RxD Receive Data (Must be applied to both pins!) -D! 1 RTS Ready To Send -F! 3 RI Ring Indicator (1650 ring indicator - output of modem -> input of computer ) -H! 4 DCD Data Carrier Detect -J! 5 1650 Pulse Dial Pin (output of computer -> input to modem) -+K 6 CTS Clear To Send -M! 8 TxD Transmit Data + C+B 0 FLAG2+PB0 RxD Receive Data (Must be applied to both pins!) + D! 1 RTS Ready To Send + F! 3 RI Ring Indicator (1650 ring indicator - output of modem -> input of computer ) + H! 4 DCD Data Carrier Detect + J! 5 1650 Pulse Dial Pin (output of computer -> input to modem) + +K 6 CTS Clear To Send + M! 8 TxD Transmit Data +Existing pin counts: + DEFAULT_PIN_AA + DEFAULT_PIN_HS + DEFAULT_PIN_WIFI + PIN_FACTORY_RESET + DEFAULT_PIN_DCD + DEFAULT_PIN_CTS + DEFAULT_PIN_RTS + DEFAULT_PIN_RI + DEFAULT_PIN_DSR + DEFAULT_PIN_DTR + DEFAULT_PIN_RX + DEFAULT_PIN_TX From c2baeb3d89eeaf2f3891acd2cf2f2f1aba35f5f1 Mon Sep 17 00:00:00 2001 From: bozimmerman Date: Sat, 31 Dec 2022 06:02:41 +0000 Subject: [PATCH 7/8] git-svn-id: svn://192.168.1.10/public/Zimodem@21979 0d6f1817-ed0e-0410-87c9-987e46238f29 --- TODO | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/TODO b/TODO index 5b53c4d..830a0e8 100644 --- a/TODO +++ b/TODO @@ -34,3 +34,19 @@ Existing pin counts: DEFAULT_PIN_DTR DEFAULT_PIN_RX DEFAULT_PIN_TX + + TXD + R U U U + G S P P P G + N 5 E 9 9 9 9 9 N + D V T 6 6 RXD V V D + + 1 2 3 4 5 6 7 8 9 10 11 12 + -- --------------------------- ------ + A B C D E F H J K L M N + + G R--R R D R D P C U T G + N X--X T T I C D T P X N + D S R D P S 9 D + 5V 6 + DSR \ No newline at end of file From 3077ddc662d5c409e8efcdd320a87adc8cfaa3bf Mon Sep 17 00:00:00 2001 From: bozimmerman Date: Sat, 31 Dec 2022 06:12:05 +0000 Subject: [PATCH 8/8] added user port schem to TODO git-svn-id: svn://192.168.1.10/public/Zimodem@21980 0d6f1817-ed0e-0410-87c9-987e46238f29 --- TODO | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TODO b/TODO index 830a0e8..272cf3b 100644 --- a/TODO +++ b/TODO @@ -35,11 +35,11 @@ Existing pin counts: DEFAULT_PIN_RX DEFAULT_PIN_TX - TXD + TXDDSRRXD R U U U G S P P P G N 5 E 9 9 9 9 9 N - D V T 6 6 RXD V V D + D V T 6 6 6 V V D 1 2 3 4 5 6 7 8 9 10 11 12 -- --------------------------- ------