+CyranoJ Posted September 15, 2022 Share Posted September 15, 2022 3 minutes ago, 42bs said: Would be nice, if you'd split player and demo code. Makes it easier to use in another project. I've split the previous version in RAPTOR as an object file. I will be updating the API with this version. 1 Quote Link to comment Share on other sites More sharing options...
Ericde45 Posted September 15, 2022 Author Share Posted September 15, 2022 22 minutes ago, 42bs said: The 5k RAM available is really free? Or just no code, but buffers? they are free and that can be a little bit more, as some variables are now only living in registers i don't see the point to fill buffers to play samples. may be i missed something ? Quote Link to comment Share on other sites More sharing options...
Ericde45 Posted September 15, 2022 Author Share Posted September 15, 2022 (edited) 19 minutes ago, CyranoJ said: I've split the previous version in RAPTOR as an object file. I will be updating the API with this version. please note : version lspv15.s is module replay only, no sound effects. ( only 4 channels/voices ) Edited September 15, 2022 by Ericde45 Quote Link to comment Share on other sites More sharing options...
42bs Posted September 15, 2022 Share Posted September 15, 2022 2 hours ago, Ericde45 said: they are free and that can be a little bit more, as some variables are now only living in registers i don't see the point to fill buffers to play samples. may be i missed something ? I thought, there is maybe a buffer for the mixing. But TBH I did not dive into the sources (yet). Quote Link to comment Share on other sites More sharing options...
Ericde45 Posted September 15, 2022 Author Share Posted September 15, 2022 no buffer, just a long word, 4 bytes, stored in an alternate register, for each voice, to keep 4 bytes of sample I2S does the mixing in realtime. filling a buffer, even located in DSP RAM, involves writing the buffer, and reading it again in I2S interrupt. 1 Quote Link to comment Share on other sites More sharing options...
42bs Posted September 15, 2022 Share Posted September 15, 2022 (edited) 8 minutes ago, Ericde45 said: filling a buffer, even located in DSP RAM, involves writing the buffer, and reading it again in I2S interrupt. Just guessing, if the mixing is quicker than the replay, wouldn't a double buffering (like it would be done with DMA) help save cycles? Hmm, maybe not as we have no sound DMA 😞 but it would prevent jitter effect if sometimes mixing takes to long. Edited September 15, 2022 by 42bs Quote Link to comment Share on other sites More sharing options...
Ericde45 Posted September 15, 2022 Author Share Posted September 15, 2022 i think a buffer would be better if mixing the 4 channels involves reading management values ( volume, frequency, sample location, sample length) from memory because there is not enough registers to hold them all the time. might be useful either to use DSP for other tasks that need free registers, or to mix more than 4 voices and 2 buffers of course Quote Link to comment Share on other sites More sharing options...
omf Posted February 14 Share Posted February 14 where would one get the lspconvert program that works for the jaguar implementation? the one found here https://github.com/arnaud-carre/LSPlayer does not seem to work (well for the few modules i have tried anyway) and the jag implementation git hub page does not include the convert program as all i was using lspconvert <module>.mod with no optional switches Quote Link to comment Share on other sites More sharing options...
+CyranoJ Posted February 14 Share Posted February 14 lspconvert <modname>.MOD -noinsane works. 1 Quote Link to comment Share on other sites More sharing options...
Zerosquare Posted February 14 Share Posted February 14 1 minute ago, CyranoJ said: -noinsane A very important option that should always be used when developing stuff for the Jaguar. 2 Quote Link to comment Share on other sites More sharing options...
omf Posted February 14 Share Posted February 14 7 minutes ago, CyranoJ said: lspconvert <modname>.MOD -noinsane works. Light Speed Player Converter v1.11 Fastest & Smallest AMIGA music player ever! Written by Leonard/Oxygene (@leonard_coder) Unknown option "-noinsane" Usage: LSPConvert <mod file> [-options] options: -v : verbose -insane : Generate insane mode fast replayer source code -getpos : Enable LSP_MusicGetPos function use -setpos : Enable LSP_MusicSetPos function use -nosampleoptim : preserve orginal .MOD soundbank layout -amigapreview : generate a wav from LSP data (output simulated LSP Amiga player) -nosettempo : remove $Fxx>$20 SetTempo support (for very old .mods compatiblity) Quote Link to comment Share on other sites More sharing options...
+CyranoJ Posted February 14 Share Posted February 14 I've aded LSPConvert to the JS release post. Quote Link to comment Share on other sites More sharing options...
Ericde45 Posted February 16 Author Share Posted February 16 i've added the lspconvert v 1.05, as i did the conversion while this version was the last one https://github.com/ericde45/JAG__LSP_8_channels ( by the way, 8 channels replay here ) 2 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.