<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[ChipMusic.org - merging lsdj songs into a single song]]></title>
	<link rel="self" href="https://chipmusic.org:80/forums/feed/atom/topic/3596/"/>
	<updated>2015-09-07T16:02:26Z</updated>
	<generator>PunBB</generator>
	<id>https://chipmusic.org/forums/topic/3596/merging-lsdj-songs-into-a-single-song/</id>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/234312/#p234312"/>
			<content type="html"><![CDATA[<p>For those who are curious; four years later this finally became a thing: <a href="http://chipmusic.org/forums/topic/16398/little-sound-mc-lsmc-a-multitool-for-lsdj-sav-files/" target="_blank">http://chipmusic.org/forums/topic/16398 &#133; sav-files/</a></p>]]></content>
			<author>
				<name><![CDATA[alexras]]></name>
				<uri>https://chipmusic.org/alexras</uri>
			</author>
			<updated>2015-09-07T16:02:26Z</updated>
			<id>https://chipmusic.org/forums/post/234312/#p234312</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/66799/#p66799"/>
			<content type="html"><![CDATA[<p>OK, loading and saving code is written and I&#039;ve refactored it to decouple blocking and de-blocking from compression and de-compression, but still doesn&#039;t quite work yet. I&#039;m going to keep debugging it now; it&#039;s made slightly complicated by the fact that LSDj doesn&#039;t zero blocks before writing to them, so black-box byte-by-byte checking isn&#039;t that effective.</p><p>Anyway, I&#039;ll keep you all apprised.</p>]]></content>
			<author>
				<name><![CDATA[alexras]]></name>
				<uri>https://chipmusic.org/alexras</uri>
			</author>
			<updated>2011-05-14T01:14:49Z</updated>
			<id>https://chipmusic.org/forums/post/66799/#p66799</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/65875/#p65875"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>xero wrote:</cite><blockquote><p>it would be nice to at least be able to hold the copy paste data even when switching songs.</p></blockquote></div><p>It does this already.</p>]]></content>
			<author>
				<name><![CDATA[rolemodel]]></name>
				<uri>https://chipmusic.org/rolemodel</uri>
			</author>
			<updated>2011-05-08T14:12:25Z</updated>
			<id>https://chipmusic.org/forums/post/65875/#p65875</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/65857/#p65857"/>
			<content type="html"><![CDATA[<p>Alright, the piece that reads the .sav file and splits it into pieces by instrument, pattern, etc is written (not tested yet though).The piece that takes those pieces and turns them back into a raw stream of bytes is written as well. Now I just have to write the thing that converts that raw byte stream back into blocks and the thing that produces a proper .sav file from a set of projects and the hard part will be done.</p>]]></content>
			<author>
				<name><![CDATA[alexras]]></name>
				<uri>https://chipmusic.org/alexras</uri>
			</author>
			<updated>2011-05-08T06:40:22Z</updated>
			<id>https://chipmusic.org/forums/post/65857/#p65857</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/65318/#p65318"/>
			<content type="html"><![CDATA[<p>holy wow, how did I miss this when you originally posted it?</p><p>I&#039;ll gladly come up with a test file for you, too.</p>]]></content>
			<author>
				<name><![CDATA[kineticturtle]]></name>
				<uri>https://chipmusic.org/kineticturtle</uri>
			</author>
			<updated>2011-05-04T01:42:18Z</updated>
			<id>https://chipmusic.org/forums/post/65318/#p65318</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/65309/#p65309"/>
			<content type="html"><![CDATA[<p>Alright, I&#039;ve got the .sav loader written; the .sav writer should be pretty easy to write now that I know what all these various data structures contain and what they&#039;re for. I augmented the documentation on the LSDJ wiki somewhat to explain things like allocation table layouts, etc. Lots of time with a hex calculator. Oy.</p><p>The next thing that I need are test files. If you have a complex LSDJ .sav (with tables, waves, etc. etc.) it would be great if you could PM me with a link to it. To sanity check this thing, I want to read a complex .sav in and then write it out again and make sure I&#039;ve got the same file. It will also help me decipher things like which fields correspond to what for which instrument types, etc.</p>]]></content>
			<author>
				<name><![CDATA[alexras]]></name>
				<uri>https://chipmusic.org/alexras</uri>
			</author>
			<updated>2011-05-04T00:47:46Z</updated>
			<id>https://chipmusic.org/forums/post/65309/#p65309</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/65107/#p65107"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>herr_prof wrote:</cite><blockquote><div class="quotebox"><cite>alexras wrote:</cite><blockquote><p><a href="http://code.google.com/p/lsdj-sav-utils/" target="_blank">http://code.google.com/p/lsdj-sav-utils/</a></p><p>Had to stop working on this for the day, but hopefully it will be ready to load and save LSDJ .sav files in a couple more days. Then I&#039;ll start working down the &quot;wish list&quot;.</p></blockquote></div><p>You are a god among men. Like Jesus, but real.</p></blockquote></div><p>THIS!</p>]]></content>
			<author>
				<name><![CDATA[nordloef]]></name>
				<uri>https://chipmusic.org/nordloef</uri>
			</author>
			<updated>2011-05-02T16:33:35Z</updated>
			<id>https://chipmusic.org/forums/post/65107/#p65107</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/65095/#p65095"/>
			<content type="html"><![CDATA[<p>HOLY CARP. You are amazing. Looking forward to trying it out.</p>]]></content>
			<author>
				<name><![CDATA[Note!]]></name>
				<uri>https://chipmusic.org/Note%21</uri>
			</author>
			<updated>2011-05-02T14:18:44Z</updated>
			<id>https://chipmusic.org/forums/post/65095/#p65095</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/65089/#p65089"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>alexras wrote:</cite><blockquote><p><a href="http://code.google.com/p/lsdj-sav-utils/" target="_blank">http://code.google.com/p/lsdj-sav-utils/</a></p><p>Had to stop working on this for the day, but hopefully it will be ready to load and save LSDJ .sav files in a couple more days. Then I&#039;ll start working down the &quot;wish list&quot;.</p></blockquote></div><p>You are a god among men. Like Jesus, but real.</p>]]></content>
			<author>
				<name><![CDATA[herr_prof]]></name>
				<uri>https://chipmusic.org/herr_prof</uri>
			</author>
			<updated>2011-05-02T13:41:06Z</updated>
			<id>https://chipmusic.org/forums/post/65089/#p65089</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/65033/#p65033"/>
			<content type="html"><![CDATA[<p><a href="http://code.google.com/p/lsdj-sav-utils/" target="_blank">http://code.google.com/p/lsdj-sav-utils/</a></p><p>Had to stop working on this for the day, but hopefully it will be ready to load and save LSDJ .sav files in a couple more days. Then I&#039;ll start working down the &quot;wish list&quot;.</p>]]></content>
			<author>
				<name><![CDATA[alexras]]></name>
				<uri>https://chipmusic.org/alexras</uri>
			</author>
			<updated>2011-05-02T01:50:59Z</updated>
			<id>https://chipmusic.org/forums/post/65033/#p65033</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/64700/#p64700"/>
			<content type="html"><![CDATA[<p>It should be easy enough to de-duplicate instruments; there&#039;s a pretty well-formed equality condition between them I think. </p><p>lsdj2xml looks legit, but it hasn&#039;t been updated in a long time (personally, I wouldn&#039;t have chosen to write it in C, but that&#039;s me). If it works though, that&#039;s great.</p><p>I think the idea of .sav to MML and back again, while interesting, is a bit heavyweight for what we want to accomplish here (unless someone please oh please has an MML grammar, tokenizer, etc just lying around). I think that lsdj2xml has the right idea in compiling it back and forth from some intermediate representation and funging it in that way.</p><p>@gizmo, if you haven&#039;t already started working on this, would you object to my starting a project in Google Code and writing the whole thing in Python? Python makes me less swear-y than C does any day, esp. for things like this that aren&#039;t exactly performance critical.</p>]]></content>
			<author>
				<name><![CDATA[alexras]]></name>
				<uri>https://chipmusic.org/alexras</uri>
			</author>
			<updated>2011-04-28T17:55:00Z</updated>
			<id>https://chipmusic.org/forums/post/64700/#p64700</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/58941/#p58941"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>an0va wrote:</cite><blockquote><p>And what happens if you have the same parameters in both songs (i.e. - same instrument/table/noise pattern in both songs)? Wouldn&#039;t the paste function need to be intelligent to match variables so that you don&#039;t clone just to double on the same data?</p></blockquote></div><p>That would be nice, for the program to &#039;optimize&#039; the output song. There would of course have to be a focus on saving space. Even if it didn&#039;t do that though, it wouldn&#039;t be&nbsp; too much of an inconvenience to do that yourself before running the program.</p><div class="quotebox"><cite>tRasH cAn maN wrote:</cite><blockquote><p>The application could even be able to check if an instrument in Song A is has the exact same settings as one in Song B and map all usages of it to the first one in order to save memory. You&#039;d loose the instrument name though.</p></blockquote></div><p>That is an issue. I suppose the program could ask you to rename it or something though. </p><p>&quot;Instrument <strong>PBASS</strong> and instrument <strong>AAA</strong> are the same. What do you want to name the combined instrument?&quot;</p>]]></content>
			<author>
				<name><![CDATA[gizmo]]></name>
				<uri>https://chipmusic.org/gizmo</uri>
			</author>
			<updated>2011-03-05T03:56:43Z</updated>
			<id>https://chipmusic.org/forums/post/58941/#p58941</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/58938/#p58938"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>nitro2k01 wrote:</cite><blockquote><p>No dorumentation? Not true!</p><p><a href="http://wiki.littlesounddj.com/SavStructure" target="_blank">http://wiki.littlesounddj.com/SavStructure</a><br /><a href="http://wiki.littlesounddj.com/FileManagementStructure" target="_blank">http://wiki.littlesounddj.com/FileManagementStructure</a></p></blockquote></div><p>Thanks! Did not know about that.</p>]]></content>
			<author>
				<name><![CDATA[gizmo]]></name>
				<uri>https://chipmusic.org/gizmo</uri>
			</author>
			<updated>2011-03-05T03:33:52Z</updated>
			<id>https://chipmusic.org/forums/post/58938/#p58938</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/58896/#p58896"/>
			<content type="html"><![CDATA[<p>The limitation on total number of Tables per song would really need to be upped for it to be of use to me.</p><p>And what happens if you have the same parameters in both songs (i.e. - same instrument/table/noise pattern in both songs)? Wouldn&#039;t the paste function need to be intelligent to match variables so that you don&#039;t clone just to double on the same data?</p><br /><br /><p>(skimmed thread)</p>]]></content>
			<author>
				<name><![CDATA[an0va]]></name>
				<uri>https://chipmusic.org/an0va</uri>
			</author>
			<updated>2011-03-04T18:35:58Z</updated>
			<id>https://chipmusic.org/forums/post/58896/#p58896</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: merging lsdj songs into a single song]]></title>
			<link rel="alternate" href="https://chipmusic.org/forums/post/58821/#p58821"/>
			<content type="html"><![CDATA[<p>No dorumentation? Not true!</p><p><a href="http://wiki.littlesounddj.com/SavStructure" target="_blank">http://wiki.littlesounddj.com/SavStructure</a><br /><a href="http://wiki.littlesounddj.com/FileManagementStructure" target="_blank">http://wiki.littlesounddj.com/FileManagementStructure</a></p>]]></content>
			<author>
				<name><![CDATA[nitro2k01]]></name>
				<uri>https://chipmusic.org/nitro2k01</uri>
			</author>
			<updated>2011-03-04T03:20:47Z</updated>
			<id>https://chipmusic.org/forums/post/58821/#p58821</id>
		</entry>
</feed>
