'=========================================================================== ' Subject: SOKOBAN (PUZZLE GAME) Date: 04-13-97 (17:41) ' Author: David Joffe Code: QB, QBasic, PDS ' Origin: Dj1@pixie.co.za Packet: GAMES.ABC '=========================================================================== DEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2 SUB V1:OPEN "O",1,"DJSOK.ZIP",4^6:Z&=10823:?STRING$(50,177); U"%up()%9%%%I-%;pn]Gqu/Q5g9.%%-j%%%.%%%%io%xtpS[gfx^4aT=#:nE9a+/I U"dAhBSW-gMicfK*r\E/f7*[&6Iop?K*6<:QYVj6+&5&Q$5Tl9nP:/ST0Kf[Es2tb=muAPRa^oT]5)V$YIetK27ff> U"3fE'2FQ'RV2Q+b]98w19e=YbRg\<_Z>#VoG-#.))q]-F&lBqlb(/GIB\mbT]bpY U"fP:oi92Id$.SwoojrY';$Hgd^oG(1m#]0..Q=e U"W_9E^18XGC(H7%p_ld5.?URU/U#aAjy*;OT9IEeKF8=_IYD$1ihRNWRtW(bV=,. U"\gc7n[mF$*U^g-+H/wH+oiZ7Lw/^(])vN-vMpCykE7DCA9B5cgkD'[X/iCw,)1?E?W/ U"&voP7CNTL#U+S[i#,FO,UBjNa0*v3mAjuqHASq]=\co:&7hM#sLxV9QKCa6a_6k U"kB')LNk(GmOB;b+R&-,(mQSSE]x29oYt/,Z3+dx&VtXZR$6,ne%C_<>F&pSn)Q5 U"Z906#(WAajBP^qg96,A/NQ[]_)reQIa1,Nu36N.:sJv6PCoNq)_k-dD[gDT*T*L U"=OGtu\+ZIbF/[vlfG$>X*CF,rPr U"Zl;\7bx-AUaw:t,kR;ODU62C4&?6dvmbdCp5:z4uRx%5B'hT/H,uydIfKkQCc[U U";ah\X&zPNY[8'Q)h6OZI5n/0F#gW%7Ta>'6,4)vBdyb%CrTIhpHg%Xlf&fkD6fj;s U",>qjuXwghcxvTxrZnxu?(x^DcxcTw.:(md7m4/GvV:A^I?4&G9Yo*] U"1W.JH9qAX/A)p)[G5VKP,F]Su0F7IKZc22yefA,$vf,VJr%bY01e5Uw(lt)W1%fDTW?t'u9Km43MEIV#%jlY=gqJ+OR#9 U"0SB>Y#-qXI#bsh<>4e?-^I$Ar3Y.uMhnpbzsXrihzIdSXkIy6XuvNKxabNu-Bdr U"b=]WHEv]h7p,ktTP*PTtv)Q;T?vmM(17<\>Nu+N7>S^KKJcn6YRM/Z#OD-a U"DG$kQ#H^]Z/0Gh$dn.*k7\cfo;pBVL:.$b99;+nu6w0OK4Bs\A,+AV)og9f][g7 U"x+&I$*0FR+1HYnn6b7fyRds2\TJo'r&8%D4vr#yjsodDYtU?Cs,hwypx0Y-&zd+ U"&/A^]8_4R]f4DHI%hzC2f(C*8dpA%%UA0dY?\Ct0KtFPzWht(lSAzuSi?ckFN:r U"XE23$C$3+anXv8pModP7]?X\(Lf--[sSYMnWV??l5f]w5u]^>i0nVk.$_kJk7p? U"4&b*_?JNMW:M-b*:kS/+49b1M0^cY2(a%JMIFN?cBx+=EIX5nE:&DkV[*n?8s]N U"N/vIHiEA_0^L2v^]U=O=snaIV+MoV(NHADEoLnx&0N$Ls=-Ys%m9qcHsuhc#xYZ U"y&l/Nr1V78N)9)>\S_fJ>c_qQ#XVo6Po\3?i)t7_^4YM>(5]PZ_p]1bP'^UL6Y( U"e9l'GUi.pw5Ky.c]7XuS);XZtb9BAyx'MJ(+M6Ea>r7XI3K7 U"Kg+M=GQX),5_Sv=dhYV1eSW21i6d$K%+Ve\DiTW]^#?$k5%]((KZx$2_$]Qf\gk U"E$G;*x,TBF'k\)BcA7,^=b)7x])99Lt_RA2E'%Jhxp2f%>'5=-Z[bLqs-q).V)i;JcxC++J*Ry[B\7H3dUJ#z_9DU>p$kUsp;*=eQTSQ]M+(yz^ U">/3V.2Q6:UfO_CzhT/cfH7uKDZ5P_t/9YDUM$QRBV1T$YV'W(ZaXOu=pR7;CkE5 U"l7*Ubb5a$vP;7LA2m#sHaVugSXAD&us7mX].5_$<&_Ye^73npx^ZF2hJLq2XK'kfe7,(_8&kXeG#&Bw7U3d;7n3GZ;#sX'qN]\-d%)$Zp^-WeJ;IYS-^gS.^)Pylt U"%Xz>_f)a>HX7$^4=J)^fj0Hj$rewA5A(4pgj,?#qrMV6eDDxeiuVn4qUDfl8:Pv U"ssX7xd)k0(,L9LwikK&ngWOX7Cm/(bNGadtQ#FfkEo672QP+g9u[2mO%\_12^GU U"hFLyXpXyUtmiM:>Od10S)*'YBGL)+RDZP/Vcs[Yf\'Wv6hM0mAXKKoQagSs\>cF U"\,_\uU4Z2rV_$)>mRHPf1AEODhyiCrFCd.1.$VV<'f64aO7CxJ8c'KiD\aZ*%q. U"%ozIA9DFb%xIus;pos$2Un&c>e^n[ID]QV3w=s)5\iuC#zO_hBp]0_rE')9MP#[ U"TOuC=f+1\I6$]ys27G2FxV%tR'Q9RTfPQCjo^\MbM.Z[p9pKd.)9f]Y3Iza.n)* U"OZnA,U:#*]ybLJU/\Y1#w,94i:ab%2V&^*98Y(O;:+S76a#&CEYN^OGeaW[e3K0 U"4+TU^nKo/rViH3Sn-K1KOn-WlDsB#MGPLk\oqb&^g&S5fgszN18%+CfDuhk)luB U"ok$^na,%_v4,(aY(d->[loAz0m),^F?wm&-dQDUzT(6+atW>3Hl>YUBPhSD_Sxe U"uRDRuIH7OIU'xd.y6#w:78$1'ZTEVEOTgpQ]_:wCY>6zfcMVi2q/E71)l*5I=MM U"aCl0E0%:qYz6(h=j&'C;6W3Q)]uYrFAO[r^?b6F\W+GZW/S)pSuo2xN4XURVu7Q U"J.paQ=y?c$U.Nj3pgTIQ3HIA;ifxdbnglf2-%18q*O?K$yBr%rfq#k+Cz<+M9BS U"'ZL,TZS1Xk33QE7/;Zb]AZCy77jrbx,iB=2'VQk\>jL9^n8m[*0-haVUuRCXAin U"iJ%q.4C+R96P%(k;[ZR(BM]IZa*Kqne[Z U"/O-)mY(,'UrXyg;]4(Sjx^V]DH6#CGNJVxl_9rVru&*:=de*wyX'SiI&X2Zko(\>LDAHN2*/WJbJljz$ U"1OQddT&9MP?3c%/9oYu+f->1n/*P&G[+BvboQ%p7GG?Pm1PX+#ptQa3o3hLMJ;a U"tWT:6cW^eI91bdHCY:9#Po>T)]Yzf53#lL2ujO%#&/*Kp4$V)BfWLhne^ U"OH8n:K]2)]5&-6&\JXij&EK+Rlk\=wX2H6nnIrlWq5H1\%p[t?ji7S+9cgkFYtE U"IZ9*YQVh*2oTU3?7bk0cZ%4lkA2MP9fJ&l]-uI7\C$?N/7BCD#-[C]rHZi*&;u+ U"YfaYEw)D*U0^8GW$b-,2_l,WjeBVG2SOUdzx]Bn3\+w%B=psnR:Q;BZN8>T U"^,a_gI?5H>a\&82+U]$VDrI?.Q+DqXM?[ilPN%WW7gM0oEb*%WLQ?\=cROuaHO, U"$8Ks>TG5qFT2[QkKPliIy=W+u>jP%fZk^ob75p\3YYj^iM1_g]0+ U"RH(0UUh=2=fon5ob&s/fp_Es',90s&B:FYkeVXSbL0B*+NPL3H>*cE>BoXF=ckA U"A1S6AF9hp+Q?=?p<1C_0p6UgQE\Dhn_Kl+H8H=+N\>Ij9lMoK6T/y,xq%hd,EeK U"p%L7z'WZ/&[cWCpsLL-d[Zg,d+x?'dIFrGXdY?R7m1-'[DH9qD_&qI0Z6cSDQoM U"iwbD#pkjXF:'rD2YB$$e41BWWI_0lO-:V34'5aQRIRsgiH^My'_su6278WF.#O?X^sc U"QG\,jQ6<[tL39-/Lzi3qDX#'x(OB/ctfXSZkmk U"6QbGXOVOB8WbbA*OMWP2aQY1t)/HfMFA3sg4)WGv(l>VQ;Db71&eA;+3a) U"vU<--;6luJz\H$FK<9)q$yK$v6O0jyrKUn87Z^\77Zw;b6r9,5I*sNeKGj(eMjc7#hsvXWu<5 U"BrbuA]otr;nAptU4ExqZ4+:nn:[0s$YOhhB3[A]_3D^J_\ub-bf.YTf\qpLWn#N U"LloZ/f?OQ26ZH2'CsY_-b#SqwrBazCe_cFt:p+ U"B:$OmkMqeR[U52(PR[ySI5?ZnTm'27wVi(YlEpv9?[GA$$gse7X$o=Sh=xVeCX* U"XeN[$wanek17N9+*S,&;*ZJfv)Gx-_E=9\Wm:bNf\47c++Ym&j&kG*$bY]iI#2l U"VC>&foH8]Br:d+RtK08g*IbOvBLlM=uplT^ZUjg'^2:SS-UykOgL$ U"\>yTSg3VI5U>Xj?I^)KdY.yzJILDfPZZ$[l&B:.Vm0mW$G;Z;*-f=G?J^wwP[2V U"(6z2-&dcF+4LG_^,)4pU#2$PcT_b4>$PcU'Ox4F%&%YE'z9rXpwT)o6o,+ovbqx U"n$Z;WeMf(DT=.t5\wM&-4,t>u%p()9%%%%-#%$;]1GHm4,bV9%1%'*%%%.%%%%i U"ox%tpSiIfy\+x<7Ntzs\,FPPaTGlj4^D]M[?I?6:85Ib\(O1T/cOhhJvrw:P[-(I9AkE./GOlWHDFkn5 U"%K^:3xuc45dj*u;k+f6pT[RS?2;(?MM\y3M3$<L10Bhk],?gAM-B6slcRXF72g,[T+]za]BkmO^crb4F&P2$]$>^im/rn[ZEloe.2]3$LAOzC+]PS':H5YKHR8h38OJ=SX5jOQeG\e U"\P0;k:JB]c(%>.9Xl%)Ri.HoTrdmB:6u5%f1rZDID>)3Ui30bg9:w:tGNAWI?9( U"B12Z<:Q2&T%\A=ZKhj)]JJZ'SG_=kgDQ4),1V('O_L:B0URXbQO0ja&5:(O4>e7 U":Nfl[/'.5GDkbpjPfW=p1*ueZ0u1Ps4ROV*GVM03VsRjUez-xe.gU4Bplg+M4+e U"%$?p'5ai)Z\n8uH&%hdO5t_5:e,Qv*i*+Tx4TuO9q/ms3GOr%>7/q4RRnj/tpE/ U"tpTA+ob4':P\tl1]<^?Euv>V'jS.m4>))^I(6=6)b+(JhFqp(:HdG-kPKmjn)6- U"Q%M84ARiC'PjSYr:E&Jk>1cr.j?/Lhd1%n.d.sus+aza%4>HHeW:]==]^s$M[\t U"O#6)M?oiGFG%3KmQZ4AQ(BI5Cms-kCH/wMpJeK4kj=Vq;SX%Jmut\*dl[*-;$S' U"XIGYuf[tp)&?ecg;\+mBeXM1n\<^H5?%,0BTAPsWY+m7p)lMw2ilE7S8)Y'Jb5a U"&BI.52v3;E21vBqJm]'_k7&,0Kzw_QmS3-V+zm;1ttQ2j978U U"M)v%W-8F[alphS%LoA%EKYQx/Ti=^9^]LghgxA4a2OXNJJBy&OB.V8?c1+T#Zm)s4IG?\aGw3O/0x U"a_0o*pZ#cnI;*$usX9[O^'?XFi_r:6O*L3mwlYGdHNW5$2,XM8C]D(YuQ#<#sZ0 U"/sRl]sV5Y'(.aluKeecfcQ<+hsh/wviw\iqjeIK9ffh%tC1IEs+.Kr>*a+IOk U"f[BK7hT U"g#t(&<4U03bh/tIPK%pDiJ7 U";VI_??IgoXK/DdHnptB_PVY-g?^?xJuwgv9F%g\A/Kd*F\8pLmpn*#h'>_x31K5 U"2mMp:m+f3qLPW$nl'Tg$6ooq9f9_i0uS'g=hna[W_7#MF%)qrAbW;:#*Xu[%z;) U"3l;Y_1(X\KIlsR0lgh'l/P71x?=Kx57(x8[/hpe,T0movL/;P#/2p)Hh$?nnsNi U"59y#C3e#2I[zHE>dpI/lspX,LWvibgetQ-QjOtNhW%+h1OQQ';y U"Mp.%w%tIrP;b^>FA=XInG6K:L0cpYVW*rxpJxQa;ii;otPe4WgUvH2DeNA%8Q)L U"3L<6g:uXhF9WM[U,6_b5sAS5Qan%kRX%c;P]0WAGPxsBe5?:_.HI7rGDSn]U'?F U"sdWczp;7yJZMEs]aN#UGxnmLkV'B/\rJN#[gpy31JrSL()FQiE\uvEjacW#O8,z U",3J.WD5,_$='wYmRVhWdwwipZDVO]-5K/)oS.e':[O_F?:>ObDcU]L^,*Q/H8Gx U"'IZdoK1eJf&<&d#pKI%3I1$>z+&:7]3xHRD,in[)\^-u48]kRU3GK0-5;Hmm<>7 U"H*qIwp_Ga;/c['?,u.h\%%b0+b$CRPcAln=,&AC/X\W'+:pfPCz0^I$ohHLO;0K U"35s03CmDy2OdeM1>YWFkb*zF[*6^52yXp^i0F-#4S2O[*^;#/bA:q&Ol?7F=zAA U"dOKb^ibik5_6+8;3\xz$Q(vqfNQ=p3. U"_R/,KZ)&a6f%H#0tj*?0(9wj%m7InOx>#lQ0[N1Ls6bRm\l)MDZNBE$jWg#I3?s U"-E&(JK:o81p#1XQe^%(vL,ADzbeTOT'-h-eRVj\+9oZ$%wJvj;+^KpK%)BPed=U U".>JOR^f+ig?&J)>R,M3X0]#0,ilw1GgImXbL&OJ8MSi=#5Sxq%:nNUh4X.Ka'Sy U"o.LFm^ogN#2e:LGD)SN80'?S6j5Ih3Yb0G+qsIBmb1=EGm)AD'c=7='fdf?^?27 U"XR#McWYOHd74.F%<.(2\v?\e<*KsZAGU//O+IaV'(0HY+n4;_K)2b1\y$<*>3=: U";^D6k&^iXkSXM9j-dwWF/[-8'S'(:Ps0[lQ\NAoND_^-(9=]X[NsP0QJATH.xDE U"zl(1]pT*[,Llr+-oV.,WHhv^.rYEv$>80>lwmwmM:QHCzsj=-B8o5O9#(WzWQ2d U"5xpY?;1x:GzwXu%-_0?_N5iU+qgr_v7tOaGUUFp?;rQ,E,Qa5+WoRmP]5#&?%hc U"f^/2GB1Kw1kE%2/P_<(3]vhvrn()Zim>'jPJIvb+4rT]vdVrjaadSF,eEN\:k/o U"Tc^%aBbL$\OX-]c<_cE?;pjEv*6Rh*)>_VCmHF3^J'on8'UkcuH__&Iz-JuapPa U"gfb$&Q>z_hQ>EK^l,j>7j+$%)yCE>_DAH(8:+6#UcydNUb1PVeR*1n?1aRM/AH\ U"bl,Jb8na[W8_fu[SA,>5XgJ(ooQ?eiPY$l_w]SUJ0]OaGmF/jbu+?j2VY0;&wm&4Sr2*K6%>p9KUXnMq\NQXNx?%x#&/V=YqsOo^ U"fzC=Oy(?U?L28[WCKa9-s,D%$wu=NAXO*I2eCY+0AwQ%[zcQGaA_4Iocz>aD2Sub.Ltz] U"qs*6sl?RyNgA.b\0vpA]-k*ycFbij;1S8pQ33E,]/TpY>k&>q.ZPNRL7=2p66W] U"Q6Vf1pG(hNlF.2ko:gcyY46ewIo/]dNVYtThu4Zie3:+QVo>(%oC&pXTYPS:4x5)-AHU=Pd_OJoxn'A7e+;cP7SZ/gUnEqiA)t_rBjkekn[=a,]'*& U"#vuW2XE8j4qwuTc65:s:ceKXwN-7+/$&yXZkBbrg:IX/]q+Bl;X<#]htsscEu]1 U"MRV-t]2)C+'Rl(U/Qc6ZkZA&An.(rU:&#*nV88YJLZPl$RuL=YuaW7NFJ2I(WS6 U"]GEvaAq')g3=0Z6kedIB9#zx\HeQMR0id15/dwaCUN U"D4cvH]q?df'n'V_)?l'[wYdt-3Q3>4F+Yy3Li$3.K)Un&5;,L8#A?J#iyOXL7Aj U"cY%7PUE7Nft38nrwMmt.,U&wNG/SpxfIvVX;WEF.Z?]+cIhw0NeGJ4y9JgXwA): U"'/lL#sAWn9+^?p*sTisQHBjU1d/r[qqKwW?[3sNL=n'f[#]YJ0#&NW.9v]wK1^ar3HJkA=%](Cm:;I;^mp1w\5$Bt,IlF^(u U"4APwiJ)O7rfoX5uR.s^:H3MjL,g?xWWXJpZke%P;IGWG6y$Dtqv/QA>t^u8>*IrQr/i-(UBp05.=c3C-G]vCnmMC.&r&h-;G3CKVh18J6_ZJa'Frm0NUOiI U"n$'\^OzU,A/i>Y]Yr30UX^'iSrNR9w7Wnhh:3'VON4V]OSKPGOK(8U(fjFl-SGB U"-8x.>a\nTf]e1IK=F573fu9v%;JM\pw$WC#3^u=&\2w/hPk:a4%G#mtsHYbd$C/ U"?h8i)c]edOD3L+8rJ\4Uo,qNYQ(0?z;S-_]iAAK^$S*ky65ONSETKLH7d END SUB SUB V2 U"s0r_I68p(QcrRV,MV&;g,W(Y;V>y%*h-<3IEVyHYOo(92>)LMqtL&YQ[/?%Cgd< U"cmq^XqnBHJ_x,KwJJqNLIp#].Fj?Hk+Y^#1DEP,a$U)aL68hcPRnh&888<9zQSf U"<#q5JmzLmUqL^aBn#,xcN<xRH[lPV(DH\EQdHrRj>F1B(F2vQFQU)P; U"SrreKd/Mk#g*WIA/17P=X,y;-e7'N-sIDG&blQgHZ,.NkG\kF8t&[Q+E:_2M'rq U"2;/63H[]pG:nj_xiZX/#8:brYk0&qKm,61BBr.1b>)#D)(=F)>>gMCX*W+M6'/* U"UWfc[CZ.i8a?/>;8gRnG'k-B2PmFLUXv>qV1QSN6sy^SH^yly:iptma4_ctF4]tt0R[eP,ppb# U"qeEE>U9'\^-o2R U"J/JAw1gtwQTK6Ao999f1qKpJW4jaHlaW.p^C7T*ZWx[fWtP$.-M