christer@cs.umu.se (Christer Ericson) (03/08/91)
I'm absolutely perplexed! Why doesn't this piece of code play the 'snd ' the way it should, but instead truncates the sound so only the first half (or whatever) is played? It works perfectly on the SE, but I've tried it on two IIsi (with no INITs running) with the same result, a truncated sound. Is it me, or is there something fishy going on? I've appended the program below, and a stuffit archive bundled with both the program and the 'snd '- resources it fails to play properly can be found at the end of this posting. ---------- PROGRAM SndFailure; USES Sound; VAR aSound: BOOLEAN; sh: Handle; err: OSErr; s: SndChannelPtr; sc: SndCommand; tick: LONGINT; PROCEDURE SndDone; BEGIN aSound := TRUE; END; PROCEDURE Bdiih; BEGIN aSound := FALSE; s := NIL; err := SndNewChannel(s, 0, 0, @SndDone); err := SndPlay(s, sh, TRUE); sc.cmd := callBackCmd; err := SndDoCommand(s, sc, FALSE); REPEAT UNTIL aSound; err := SndDisposeChannel(s, FALSE); END; BEGIN UseResFile(OpenResFile('cz.rsrc')); sh := GetResource('snd ', 999); { First try a synchronous sound } err := SndPlay(NIL, sh, FALSE); Delay(60, tick); { Then try asynchronous } Bdiih; Delay(60, tick); END. ---------- I can't understand why 'SndPlay(NIL, theSoundHandle, FALSE)' fails. It _should_ work, shouldn't it?! /Christer | Christer Ericson Internet: christer@cs.umu.se | | Department of Computer Science, University of Umea, S-90187 UMEA, Sweden | --- cut here --- (This file must be converted with BinHex 4.0) :$P0ZC%CKD@aeFQ8ZFfPd!&0*9#&6593K!!!!!!qP!!!!!"qP8dP8)3!#!!!2TA* -BA8"!!!!!!!!!!%!"f0k,R*cFQ-Z-#"hD@jZCA*c!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(*cFQ058d9%!3#MkE!cSr`j2!! !$IJ!!!!!!!!-f`!!!!"@9`!!!!!!!!!!fi-!!!%!N!!$$Dm!!!b[!*!!!dN!N!! %$3!3!#d!-+!#!+J!N!!&&J!i!#F!iBJB8h4["f0k,R*cFQ-#!*!!!h*cFQ058d9 %!3$rj`$B!*!!"6%!!(*cFQ058d9%!3$rj`$B!*!!%!m'SqQ`-`#3!!B0q!!!b!% `!!%!N!!)#lN!N!!%&3#3!!AQ!9`!!3#3!!J,Z!#3!!39!&!!EJ$k!EJ!!3#3!!J (e!#3!!39!&!!EJ$k!EJ!!3#3!!J(d`#3!!39!&!!EJ$k!EJ!!3#3!!J(dJ#3!!3 9!&!!EJ$k!EJ!!!Kr!!%!!3!&!*!!"3'!83#3!!88!*!!"JJC9[%!N!!%#%%!!!K #!*!!!`%!!!)+!H)!E`(L!2X"i`%2!*!!!`%!!)#3!"0rIhjqIAalHRGcEQGJ@90 058G'N!!'4dP-8PKJDA*lK)b5PTLDQTZEQTUANif'IRCYBeP35%)q1cSl2$dr3dK 08ePKDR@!LT5FSU@QTU@PSjkCNSb%IA4UAP0*36`j1$Nk1ca!3dP19&TLE(L$N!! !Qk1RUDQRTU5JQT50KhphE@0B68-m1$Be06Bh1Mj%58p9A'9`IBQ9Rk@TUUQRTU1 IQ*'+JhedDPp65$ii063e06Bh1Mp&5e"@AQKdJBqFTDUVUULQTU1GPBk+KAebCea 34$Sf0*!!"$8i2%&(6&*BB@YhKC5JU+bXUkQSTU+ENib)JRYbCeT036Nd-T!!!c- e1$e$58e5@@*YHiL@SUQXVDZTU+HQRT@1LB*iE@&53M8X+#BP*LBS,$)j2dC-8ej XI)fGUV+fYV5aVkfRRC1-Ki"fDej23$3V*L8N*5BS,$)j3%C09Q&[Ij!!!+#XY,L iYV5aVDDFNSb'IR4S@d`m-#NP)b-N*5JY-cY$5P"CCA5&PU@aZ,ZkYl5bVUDDN!! !LB*jEQ*846J[+#8M)b8R+5ie2NC-8eeVI)fFUV@l[,UfY,+XSTD0KRjdD&Y03$8 X*b3N*5BS,$%j3NP2@'4cJj1LX,Lm[,QfXl#SR*'*JhYaC&C)1c%T*5-N*LJV-$G !5%p@B@q!N!!!Rkfh[VqpZEDcVD+8LB&kF@CD6$me,LJP*#BS+Lie2NK49f"YIT! !!*qXYVh![VUfY+kNPSU#Hh0S@ddr05iT*53Q+#XZ0$j*8PKIDhf2Rkbf[X(![EU fX+@ALi*lF@CE6N)h,LNQN!!$+5X[06p*89PNFi59Sl#l`X6"[EQfXDDBMBCrGQY I88-i,bSQ*5FU,6%h3%Y6@Q0`JT1MVlV"a-'pZVHaTTL0KAjeDPj33MBZ+5BP*LJ V-$G"5e4FCR5%PD1`Zm,%`VqmZ,'PPiZ$H@pM9dSq0#dS*LBR+5X`0d",9&eUHSf GUlI"amI$[lbiVk+9M)CqFfGE6N!d,5JQ*LFU,M3p5&0EC'pqMk#ZZX2(am1r[EL ZRj'(Ih9VAe4(1c%V+#BQ*bNY-ce(89TNFS18T,+qaXR'`EflYDLBLi@!GfTF6N% h,LNQ*LFU,6)k49&EBfjmMCfVZ-((b-A#`,fdTC@,KAjbC&G-3$8Y+#FR+5XZ0$e *9&jRFi5@TV5ramh2cFR'`VbcTCQ2KRTV@dY!0c%Z,5ma0$T#6PTQFAf,QUUia-h 6dXh'`VfdTjQ3!!#*J(4P98Jq05iU+5XZ-cP#6PeXHSD6SE'qb-h1bXA"[VQZS*@ 1KheZANj$1M-Y+b`Z-6Bq59CPFi'1R+Qh`m[2cXV%`EfeUTk8M)0fCeK+2M8`,5d Z-$3m4e4JEAU(PD1a[FI1d-h(`VkjX+5CNBU"G'4646Sb,5XV,#mf3%eDCh1!MTZ TYF$+d0$-am6!ZDkLQ*!!!)KmEPp446Xe-M'3!!-d1dC6B'ajKjDPXm$,dpE8cm[ )a,baTTkBMi&bBeC,3cdk16Ji1N&-@@9aISbFUlM%cpAAdmh)`lkdU*f9MiChCeK 04Mml16Nl2N41@QGcISUAT+qj`XV3dFh)`lqiVD'9MB0hD9P-3M`j0c8d0MT#69P PFAf+Pk5`ZX2*bmR&`EffV+'BN!!!KhYXAP"&2$8a-*!!!c%f2daBBfjlLCDMVVM !aFA#[EUfVkDFP)f%GfPD6N-l06)`,bi`0N"09f&XHSL@SUfi`XM*aF#pZE1TS*Q 6LRj`BP9-46ml1$Be0ce(8PeQFAf+Pk+XYX$)bFE"[,LbUU+DP)f$GfTI98e(3Mi k0cFk38Y9AQKdJBfBSkkj`XE'`VkkYV'USTf@MS0fDQ"B8%P%2c`l2%"(89YPERL $MTLLV,Dq`X'rZlHcVULLRC@-J(9VBeY66%G$3$iq38G3@&pRF(U%MjQNVE@jZlU iY,#VTU'EP)Z#HA&TB9T668K%36p"48Y5@@"REhQ$M*DITkfaXl1bVkbTT*qCNSZ %IA9ZCf"C8dj*4dC'5%a399YLDA"iJ)L3!!#@R++QUDUUU+@KR*H4M)H#I(GaE'G LA9K889"26e"599TJCQabH(f$L)f4PCLERTqIRCZCPT12LiH$IhYiGA*[E'PQBf& IAPeGAQ"MCQTZFR9jI)#$KBL+MBq4Nj@@N!!%PC56NBq0LiQ(KB+!IAThG(&ZE'T SCfCPC'9QCfKTDfjaG(GlIi1)M*!!!*1AQTbHRk#3!!1IRTbCPj53!!#0L)4rHRC aE@PPBPpG@eU3!!0EA&jJC'KXFAGpJiQ2PCUISU@QTkHQT++JRCUANiq,Ki*mGh* YD'4JA&TB9eCA9eKDA&pLCQY`GRb#Kif5PjZHSD+MN!!$SU'JRTbDPj54MBQ%J(Y hFfpVD'9LB&pHAC!!!ejIB@4RDfpcH(b"KBU1NT@BQjfIRk#3!!1IRTbEQ*@5Mib *KB&pHRCcF'eUD'CPC'13!!0NC@GTE'pbGAPpJB5)Liq4P*DAQCU3!!5CQ*H9P*' 2M)U'Ji"pHRKeFh&[E@aVDT!!"@YXER"bG(CjHhk!JS5'L)U,M)f1N!!'MBb,LSQ (KS5$JB"qIAYkH(GfGA4cN!!)G(9fGhKjHRYmIAk!JB+$K)@&KT!!#B@&K)5$JS' !IhjpI(alHRTjN!!$H*!!"hPjHRTlHhamIAeqIRprJ)#"N!!-J*!!"AprIT!!"(f 3!!4mN!!9IC!!"Ak3!!4rN!!3J*!!%3!!"#J!!3!"!!8!N!!&!B"4!*!!"43!N!! '!m*@m3#3!!3$kJ!!!qX!N!!$!3!!!Am"`3)+!F)!E`(#!2Z!N!!9JC!!"B+$K)@ &Ji&rIAb3!!4pIS#3!!0rIAYjH(GiHATlHhTkHAPiN!!$HAYmIAjpIAamHhPhGRC iHhk"JiD'KB5#K)Q,JhPkJB5*N!!!P*LHU,E&dplUp2RlrIcfh+YF,K8*!`)))P1 McqMcpZV&KMmJ$38"!JNSAV2@l2Ekr2[deU&-*a%(!`)*+&kceZcfq229RdNQ%3F $!3!"#5KHXpEXp[MceCp**K%(!`%!!3NSAV2@l2Eimp@I55B4"`-"!!-1-@fkfZl fq[MUaB8r)!d&!3%&'%''a1(`q2[lpGZU@bi9#3-"!JXXC,EBlIEkr2cfhUpM-"F +"!)%%#jQRp(Rp2Rmqr,@SPNX&3N$!3-0+&Z8aq2aq2[mqrAM[BG3*K)(!`33,QD MdZMdq[cpqr2HYS48,48+#"%V@Br!i1rhqrcmq1hAZ*KjB8j"1ce(@A5@ZYRXpIV mqr6JZSPE1#8M,dCNKDE&hZlhqrcpr2ERbU9r@d!b-6pBHCl#hZrhqrckpHI6ZCk #D94(3dPCFT1feHVeq[[hl0R$Uj5!Ef0F@9aPGBUM[YETp2MflGc%UBjhC9aDAfT jLTkba02Hiq(DcEbTPB*dE'TZGi11Q+#RVE'dYVHfY,#UT*b8M)9rI(TkHi#(NCf TXlZq[VQ`TCU2Ki&pHRKiHRf$LT1FT+Z`XV+[UU5FNiPqFfKKAf0ZIT'PYX('a,b [S*'$GfjRBf*PEAQ)QDQf[EbcT*&rEf4IB'GaHi5-NTDCQjbGRCbCNiZ#HR4`E@e [FhKpJSH0NjUISU5LR*+&H'eMA9TEB'PcIiU6Qk#LSCfAMiCqG@ePAeYDA@9`ISb BSD@LQj!!!)4jF@jYEQp[E'PQC@K[HSH6R*qFP)GiDf&F@epPE(0lJ)@)LBQ(K(j iF@TQBf0NCfabGhf"K)D'JRaeE@CKB'0SF(KrJS*qHA0ZDfYYFA4hHAKfFfpXD@G RD'TXER"bG(GjHRb3!!0lHAGfGA9fH(PkHRKfGA4cFh9iHRerJ)"qIAalHT!!!hZ 3!!KmIAjqIj!!!hjpI(YkHRYmIAeqN!!$IC!!"hk3!!4pI(Z3!!GmN!!&IAjrJ)' "J(jlH(CdFh4fHAYqJ)'"IhjpI(YkN!!&I(f3!!PmI(eqN!!$IhjqIi"rN!!%IT! !!hq3!!0qIAeqIRpqIAeqN!!+IC!!"Ab3!"CpN!!EIRq3!!D!N!!8!!!"!*!!!`f [!!!-V`#3!!0*!$`ck!M5!*!!!a`!2J!!FfjN)!!"!!S$k!#3!!S$j`!'!!!)J`# 3!!3&3Q4TD@J%8'a[F!!#$(0ZC%CKD@aeFQ8ZF'jZCA*c!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&4&@&435Ne0!3#Mr$DcSr` iL`!!!!!!!!+T!!!!!!!!!G3!!,LY!!!!!!!!06C3T$`j)L9)%a"6h*!!-4)Q$CX kFXVXD0!J3C8T4DC86$$P64f&%bYD#5*PBjL1(mRS!#(Nb4-Q4B)iQCJJ`4`d+j' %8FK'iXBbFZ5XI))a+%fE+a15'B*QTjXbE+$3NA0dcTLN#SHmDG0Q*jQMG0+-@E1 5b4-R4j)iS4)b3F!R3iS3U5+P#%+&40imT5QN5&SR*P%U"+'M"`JU8US8S9R%#C' fEq21VFZ56*SdD2Mk94[Biq$#))`%BB+a+Q($6T)`13T8cZQlC*b8ZF28+938FeL !J+'E0`JJ5[-q6F%kk'ZP80L%bB0EpdhGL"86hfM9aCJfC&k2#F1'MC!!-'1(B#r Z'R6`0eUjHQd1`UTZdD5,6+pC&dT-+KZVV&80iU6RVcmCCajHDF`"aaYcP&'E'dq a`4jm'-hAf'-8pI9A498N+%8CFaMK8"NS2!&('@jXf1'(+*``KKiZb$'(('1FN!$ #I$HpGN3CG*MS%B`JRM$(B#ISPX13!0-eX%GSDEK)"`K6jG&IHhQi-3BDFZMPd4c Yr3G#(a@eGTa#b5f(3QT-1)I'Hk0&f"B48)PTJfpKM9ANN95J35+6FMJCaKa46PQ P'eGZ@C%3PQ'fCT[-[DPER'X81D%,6[3!!!: