2
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> I linked the original 1990-whatever MOD.</p><p>It looks like NFM speeds it up a bit in game and modifies some of the instruments slightly: <a href="https://www.youtube.com/watch?v=5B8egJ7a1ek" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://www.</span><span class="ellipsis">youtube.com/watch?v=5B8egJ7a1e</span><span class="invisible">k</span></a></p><p>Incidentally, I&#39;ve been working on a MOD player; Sauron is good for testing b/c it sounds good w/o doing any stupid shit that complex MODs do.</p><p>I DL&#39;ed the NFM remix MOD and played it in my player. Same pitch either:</p><p>* NFM plays it faster than most MOD players, or<br />* I haven&#39;t implemented the functionality to change pitch yet</p>
Attached file 0Attached file 1
Yikes!
Attached image 0
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@tef" class="u-url mention">@<span>tef</span></a></span> Yeah it&#39;s definitely not just embedded Rust haha. Our debugger, MDB, has a loadable module API and it supports interrupting commands with ^C which causes the debugger to longjmp out of your code. You allocate memory in an arena that gets thrown out for you en masse. It upsets Rust on many levels! Not yet sure what to do about it, other than introduce a new cooperative yield check to the API and just call it all the time.</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@mcc" class="u-url mention">@<span>mcc</span></a></span> g o o p</p>
<p><span class="h-card" translate="no"><a href="https://m.unix.house/@jmc" class="u-url mention">@<span>jmc</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@tef" class="u-url mention">@<span>tef</span></a></span> yeah</p><p>rust is also famously bad at interacting with signal handlers or ISRs</p><p>(yes, embedded rust, i know, but _so much_ effort went into that and there&#39;s still an incredible amount of rough edges and places where you&#39;ve got to copy)</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@tef" class="u-url mention">@<span>tef</span></a></span> It feels like completion callbacks and/or ring based systems are essentially similar to things like signal handling or ISRs, in that you ultimately have to move the ownership of some stuff (like buffers, callback text and arguments, descriptors, etc) into the framework that manages the OS or hardware facility directly rather than create and destroy it in the consumers lexical context. The RAII-able thing would be a lease on a buffer basically, which might not free until later.</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@cr1901" class="u-url mention">@<span>cr1901</span></a></span> OH WOW THAT ONE</p><p>YES</p>
<p>Wait what</p>
Attached image 0