Newsgroups: comp.sys.atari.8bit Path: utzoo!utgpu!jarvis.csri.toronto.edu!db.toronto.edu!jdd From: jdd@db.toronto.edu ("John D. DiMarco") Subject: C style strings for ACTION! Message-ID: <1987Dec30.100813.12263@jarvis.csri.toronto.edu> Organization: University of Toronto, CSRI Date: Wed, 30-Dec-87 10:08:12 EST Here is a set of ACTION! routines which give you unlimited length strings in your programs. If you have any familiarity with C at all, you will notice that the string format used in this package is identical to the format of strings in C - namely, an arbitrary number of characters followed by a NULL (ASCII 0) byte. Standard ACTION! strings consist of a 'length' byte followed by at most 255 characters. To unpack this file, do the following: - Strip the mail header and this introduction, and my .signature at the end of the file. - uudecode the remainder. You can use YAU or J.Sangsters Basic UUDECODE for this - unarc the resulting file. (Use Ralph Walden's ARCX.COM) I'm making no restrictions in the use of these routines - feel free to use them anywhere and in anything you want, and feel free to give them to anyone who wants them. Enjoy! John DiMarco -------------------------------------------------------------------------------- John DiMarco Hard work never killed a man ... jdd@csri.toronto.edu ... but it sure has scared lots of them! {uunet!utai,watmath!utai,decvax,decwrl,ihnp4}!utcsri!jdd jdd@utcsri.UUCP -------------------------------------------------------------------------------- ----- cut here ------ begin 644 cstrings.arc M&@1#4U1224Y'4RY!0U0 \ D $4.64!*2?,- !/ ( 0 $ , !@ % -__a M!P ) @ "P * T # / X $0 0 !, $@!D_Q0 O/\5 !< %@"M_Q@ J_\9a M !L &@ = !P OO^6_Q\ '@ A " U_^1_R( UO^+_R, ) "Z_R4 FO\G "8 a M* "F_]/_C?\I +O_*@",_RL GO\L +#_K_^L_RT L?\N )#_O?^3_\+_JO\Pa M "\ ,0!O_S( BO^S_S, F/\T ,[_Q/^R_S4 MO\V #< E_^@_Y+_. #[_]+_a MAO^;_SD / Z ,__.P"Y_X__G/\] )W_S?\^ #\ E?] -3_00!# $( P_^9a M_X?_RO^W_T0 J/_!_Y3_J?^)_Z?_1@#1_T< 10#Y_T@ WO^(_TL 2@!, $T a M20!. /?_]O_&__3_R/_'___^S/^U_^+_\?_M__S_^/_6G*QE2!ZO96?UG7:(a MY6=296=^(F?-\=AW6'#8_U3?6?:5!9?/?WE^24B&K8GXSYH+<%;&L%^,N]D^a M]_PYUOB,S_\\:RX)N=]0@WY]S>1GECIK(OZSYD15=O.8X77C4UG;MJI^M5VGa MHL)^3)TU]_/MYFM6SO!8L+;+7CT#'6O5\:KO+&]GS;%@;:?$;9MW\&J[ZK/Xa M[P_^6?7+/=*:^_EV\S4K9_CWS2R3]N2%&G<_NI"\7(@KX^Y'5P#*/5&\3.22a M/W[49A&DLL)4<=S]Z I N5<.T;8U)ZI'A4^VZZ>J7,EB5?6(EB%YO):=U7=La M:XZID[4,R>.U[*R^8UMSI6V_2KQRR/(3[P=?KQ[_+/<_LZTY66V7M^-5WUG>a MKOQN&W<_NFI;5PJK1&,O77%7>GUJ^Z/%541#$\55;5O:[_\IV\05=Z4U$9*7a MBP%])(1F4J!?%QG*BCCN?G0%H-PKVK;F1/6H\,F6^Y4L5E6/:!F2QVO967W'a MMN:8NGRREB%YO):=U7=LX^Y'5P\4VU"(XJZT;5TIK!*-O70HZU/;'UU<130Ta M45S5MJ7]_I^RK3@4383DY6) 'PGA7-&V_R&3+9^L94@>KV5G]9TQ=;F?;;R6G=5W;./N1UM*896XVDN'@FBL3VU_M#@41-6$a M.(>"J!K1T+:EO6WBKC2!8D ?">&<:+,(4IDPM3CN?G0%H-R3HVC;FA/5H\(Ga MV_5354[6,B2/U[*S^DX[ILZVYDH6JZI?RY \7LO.ZCNM;0HRT^\a M'WR]>ORSW/_8UIRLMN-QVXX%<[_DCQ^7A&2X':_ZSN^VCJ[9UI;!*7.VEa M2_[X<7UJ^Z,371-7-1&2E\M>-AK:_I]0U(EG^Z.[$K8_NKCZJZ$)<57;EO:Va M%7>EB6I 'PFA602I3**S>M8[[GYT$LR]Q_S!W8^N )1[HFV3 OWJ_K]I6R6Na M; N0+7&A$U?UM8 A>;FL3VU_=/1EO9-@[CWF#W%5Z]G^Z$H0OQJVI;T!?22$a M9A&D,HG.ZIGC[D=7 ,H]T;9)=%;/>G=UB#:@CX30+()4)M%9/>NIX^Y')\'\P?W/WH"D"Y)]HVB<[J6>\DF'N/^4.T;=&7]4Z"N?>8/QH?/^H9T$=":!9!a M*I/HK)Y1Q]V/K@"4>Z)MD^BLGO7471VB#>@C(;3]/],B2&62\-U?%O>.NQ^=a M!'/O,7]P]Z,K .6>:-L2OOO+XMY),/<>\XB4^0=M6\)W?UFF=Q+,O@C(32+()5)VHV]X^Y'EQ7,OY^= 6@W+M>>=RRL_K.a M,>Y^=$KU!Q_+OQ^2M6W"U.*N5QZW[*R^\\=$\3+1a M,:7Z@X_EWP_)VH ^$D*S"%*9H$ZDCKL?758P]Q[SQY3(EN$3>2Q+^7,L_WYHa M',N_'Y*/C*P#EWO7*XY:=U7>T;<+4XJY7'K?LK+YSB.)E(FT;ZD3JLH*Ya M]Y@_E,B6X1-Y9"E_COS[H7'DWP_)ARA>)M(&])$0FB7"MRXRE$DLJK([/['Ca M[D=7 ,H]:1R2K&U+A&]GXSB3;9,"_:IME;BR+4"VQ(5.&JYJ0I)=U2MA/VFXa MJJ\%#,G+927L)\FNZET+N)"\7-:GMC^Z$L2OAFUIO_]GVW8V"&FXJFT[DPE)a M=E4;T$=".'RGED$J4QB4;N1CKL?70$H]WH:OR,&T;8UE\D#X;7?$Z^Ga M\5MMEU0[PU[]=H+9_3_+-BG0K^Z/MHV['QUJVRIQ95N?VO[HGL;/54W$(*YJa MVQ^=Z%H,XJHF0O)RVU&QHZ['UT!*/=Z&K\C!CDF!?K%K\ [XI=&VK;F,GD@O/9[XO4T?JOMa MDFIGV*O?3C"[/]JVY@K?JE/F@?#:[XD7OP)ON?]9_-)H^8EM:R[[RH+5+P;Ya MW38IT*_N_XEME8A?@6=;@&R)"UT,XBJBH:\%#,G+927L5Z\1\4NC]:GMC^YIa M_%Q%Q*_ TT0,XBJBH6U_="6(7PW;TMZVGL;/543\"CQ-A.3E8D ?">'^GS:+a M()5)7-JV=KSC[D=7 ,J]GL;OB$$.*= O?@7>$;\TTK8UE\D#X;7?$Z^G\5MMa MEU0[PU[]=H+9_=&V-5?X5ITR#X37?D^\^!5XR_W/XI=&RT]L6W/95Q:L?C'(a M[[9)@7[5MDI)CI$&]!'0F@602J3F)WBa MI$ __U4FX?,8=S^Z E#NB;8M9J)GH$&U 'PFAa M602I3&)V)EPB?/-?91(^CW'WHRL Y9YHVV)V)IS_*I/P>8CB92)M6V&J.%&\a M3'2(-J"/A-#V_RWC[D?7188R"9SSG./N1U< RCW1M@E3BY-#%"\3:0/Z2 CGa M N<\YT3Q,I'69E*@7Q<9RB1PSHOC[D=7 ,H]T;8)4XN30Q0O$VD#^D@(YP+Ga MO#A1O$RDM5DB?.LB0YD$SOF$X^Y'5P#*/=&V"5.+DT,4+Q-I _I(".<"YWS"a MB>)E(JWM

a M_Y#_C?\5 );_%P 6 !@ 9/\: !D &P"3_QP E_\= )S_BO\> +S_'P @ )C_a M(@ A (;_OO\D ", )0";_X__DO^9_R8 T__1_R@ )P"=_RD J_\J +;_*P"La M_RP +@ M *W_B/\P "\ ,@ Q (G_,P!O_][_O?\T -+_IO^Q_[#_-0"Z_\K_a M-@ W *__. "[_];_.0"J_]?_.@#X_X?_L_\\ #L S?\] -C_E/\_ #X 00! a M +G_LO]# $( 1@!% ([_1 #%_T< I__[_\__J?]) -#_2P!( $H 3 #K_Y7_a MJ/^@__K_W?^__[C_Q__&_\C_[/___LS_M?_._____/\[(C%(.GV%$1^EISQ(a M-4N:8U],^X,?5\K8^,TS7RO,R#*";^!!/MAH7U4P1=*LQM]ZK7/4,OZ.7E/ a MF/@:N[FBJ2"]FJ(D_6QMM*(9?^NUSHF2:0Z(M)[a M94^OL*KY)D=!S3%%$)E13:"%,Y\( 3#=@4U.^GS/A;KW56a MRWX^?.:,^E,]S38IG>:(QVE_\$K9a M6AEC3D'0__ [S?=*^LM4)INR^GN>-$48HS5,&C!'/$[[@Z]BRF-;]GV=J@+(a M&.V&\?/!IHP 7'TD]WWR'"0#>])[Q..T/_@H6ROOU9+^,I7)IDS@09JC8.8>a M]Z0IPOAM5&WZV3H:NSG*/C,;F?8(!'6_995:QM_1>Z&DX*:-7CLDY4=RK7/$a M1^EZB#H'Q-@7T_[@QY/&[^>^K'56FWZV'A!KS3UI_'Z^)HW?3QEEKX>R2)QWJ*#(C*M#_XI/'[*2, a M)PW(9PZ(L4>KEO',L0J/MPR(F=S\7F'J0_443"*Q2N/W4\:RUAF-,:>R\YGFa MON]ZK1IU8HXGC=_/?1E[-'_40^* 6*6:D6DGRCI1_/Y8NWHW#EV%a MPNYW;X>H\[V"[WI-&K^?,LI>#SG&PV]D_#::!3]?8S?7^I%1]GK(/9+F", 9a M I_W!97=#%)3HM= %JL*8KQJ*1?[IKV73][VQFVN=DV8Wa M&'\/3WE-TEQ^\=_%HMN/)TZ+6\25^XDCYVGO*6L8!;])[!K3_N#'D\;OIZQAUZ3Q^REC-W?S:=:;1.'W@O1;a MK_67*4S)\IFO_=Z7505$_L'F&B:/H@#V#M!Z,>T/?CQVLUZ3CFQ.&K^?LN]Ka MG1-67OD ;7(%ZADJ$01O+0.[Y*022SAK7.a M'?+\[M_/"L0B>' *PHFLOFLMZ1S"T]]3QIAC&0'6@E%(JI7<$'XM;KCNEA67a M@A<;#''QXE?9O;JCVT4KZ2]#>/I[CD4>-66MN5?C?1G[8MH?_'C2^/T47^J]V7[QF_M9,&S'VO9>_%$PV/a M->?0H^#-W\?SQ]IWO1N7XM!5*.Q^ QR9H")SKU9R0_BUJR&^6U9<"EYL,,3%a MBU]E]^J.;A>MI+\,X>GO.19YU)3%^S*NUZ0CFY/&[^=K[.8H^$UBRWZOH;(Oa MIOW!CR>-W\\9]:=ZOR<-F++OM>R]DLY=DXYL3AJ_GQ,-CS7GT#MDM>!GXEJSa M+U! P*AF9-J)\AJT3C1^R0INH[7.$1^E%R@@8%0S,NU$F?%;6P\Y"GZ3V&F^a M5^L5&TAWRYVP:_%UMZRX%+S88(B+%]^K.[I=M)+^,H2GO^3QN_G&L;UFG1D<]+X_7POGFAXK#F''@5O_EYY_EC[7JU7a M;"#=+7?"KEWQW;+B4O!B@R$N7GRO[NAVT4KZRQ">_IZCX#>)+6N=51J_GXM'a M(*CC79..;$X:OY]K&'N-:7_PXTGC]_.]>*+AL>8<>H>L%OQ,7&OV!0H(&-6,a M3#M1WJOUB@VDN^5.V+4K5#[];'VWK+@4O-A@B(L7WZL[NETT0_:#+FN=L^EGa MZP&QUEFO24Ma MY(;P:Q3XO4F#7ZL["L)%CM^;M.[H=M'(\7L/GA[OFG1Da M<]+X_7ROQA[MFG1D<]+X_1P08SS\1L9HU::?K:=RM$-.P>^=YGNAR)O+[4O-a M2&\&M7a MN)+^VD5"(;SNZ';1PI7T\:AF][0#G))( *J5?204PD<\3ON#SZ@3/W\[UPM]&(;U.4I%*!F$T_6\^FR%JS#W 9V,-V#:N! @)&a M-2/33I0QYI1$]7>GN;N'IZM11XO@(6/.,\VI@/E:828XF1Y9!^/QO1J*O+GT/?CR5_6'[KI7<$'[M"EV@*HSYVA6Z0(E>NT(7*%'HM;JC(%RA6.2?a M7G=TNV@7J IC#G 4E&C7I".;J]+X_93WPAXU\5.V8SP?-;UE#:NM4W+$X[0_a MN(PQ=\4&4AERZ\3:FGUEQ:5@>4V^T]PUZ2\4>7.YL>S[8MH?_+BJ[ _;=ZWDAO!K5ZBQ[+4KU'B]a M=H4:"W5'MXMV@=\D]GAEQ:7@UZ[80/H:X IAI=HPWC7IR.:D\?OY7BCRYG)Ca MV?<:T_[@QU/9'[;O6LN*2\'WO6(#Z7T+8:7=[U6=W2?a MU_W9%NJ.;A?M K])[/&N247&a MLN\UIOW!CZ>R/VS?JTA4.^W0S2JV<_OYUKGa MPNZ4+[\;QL\'F^.NK7.'/+_[]W- K'7N"I4,A3"2A][Q5:K$M_E>&'2^IL&8a M-XFOM>9>ZUR]0A>H"F,.X>GO.>.W=@X](R#950J(2=M&^\0B>&;"!-YU1X$Ka MZ1S"T]]3ZB.YLN)2\&*#(2[>%>32K>1W P4$W!O+>*>% ]O:J2J C-$.#T$Da MOL9NKO4C<]AIX<"VWC!^/M@<$&N=\ITVF51?#L^ZK*9+^?.V1WXA[) ;'6N9CV!S^N"L*)K*K?SUGV\^$Sa MW[66](/R6BB5?B\H7PO:H ^Z^WCO**AK+2I:T(#VD?Y;&2G4>N?.14[2 F^:a /)*."_]V X WO-)\:%!H a end ----- cut here ----- -- -------------------------------------------------------------------------------- John DiMarco Hard work never killed a man ... jdd@csri.toronto.edu ... but it sure has scared lots of them! {uunet!utai,watmath!utai,decvax,decwrl,ihnp4}!utcsri!jdd jdd@utcsri.UUCP