[Patchanim-commit] SF.net SVN: patchanim: [152] trunk/patchanim/src/com/mebigfatguy/encoders/ MngEn
Brought to you by:
dbrosius
From: <dbr...@us...> - 2008-02-10 18:51:48
|
Revision: 152 http://patchanim.svn.sourceforge.net/patchanim/?rev=152&view=rev Author: dbrosius Date: 2008-02-10 10:51:53 -0800 (Sun, 10 Feb 2008) Log Message: ----------- add looping Modified Paths: -------------- trunk/patchanim/src/com/mebigfatguy/encoders/MngEncoder.java Modified: trunk/patchanim/src/com/mebigfatguy/encoders/MngEncoder.java =================================================================== --- trunk/patchanim/src/com/mebigfatguy/encoders/MngEncoder.java 2008-02-10 18:25:31 UTC (rev 151) +++ trunk/patchanim/src/com/mebigfatguy/encoders/MngEncoder.java 2008-02-10 18:51:53 UTC (rev 152) @@ -44,7 +44,9 @@ private static final int SAVE = 0x53415645; private static final int TERM = 0x5445524D; private static final int SEEK = 0x5345454B; + private static final int LOOP = 0x4E4F4F50; private static final int SHOW = 0x53484F59; + private static final int ENDL = 0x454E444E; private static final int MEND = 0x4D454E44; private DataOutputStream out = null; @@ -114,10 +116,26 @@ seekChunk.calcCRC(); seekChunk.write(out); + if (repeatInfinite) { + Chunk loopChunk = new Chunk(6, LOOP); + loopChunk.injectByte(0, 0); + loopChunk.injectInt(1, 0x7FFFFFFF); + loopChunk.injectByte(5, 6); + loopChunk.calcCRC(); + loopChunk.write(out); + } + Chunk showChunk = new Chunk(0, SHOW); showChunk.calcCRC(); showChunk.write(out); + if (repeatInfinite) { + Chunk endlChunk = new Chunk(1, ENDL); + endlChunk.injectByte(0, 0); + endlChunk.calcCRC(); + endlChunk.write(out); + } + Chunk iendChunk = new Chunk(0, MEND); iendChunk.calcCRC(); iendChunk.write(out); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |