VinsCool Posted March 10, 2021 Author Share Posted March 10, 2021 10 minutes ago, emkay said: OK. How are you doing the visualisation? Is it really necessary to record all channels separated and mux them, or is there a more comfortable way? I pretty much record the tune in 5 passes, from 5 different executables, then assemble the oscilloscope video from them. RMT2LZSS makes it incredibly easy since I can use the volume offset setting and mute channels by setting negative 15 on them, so I make 4 different files using that method, 1 per audio channel, then record the full version as well as the master audio file. Then i record the sound from my Atari, and assemble the files using Audacity to splice and amplify the sound, and make everything synced up for the visual part. It's slow but incredibly satisfying to get authentic hardware recording in action 3 Quote Link to comment Share on other sites More sharing options...
emkay Posted March 10, 2021 Share Posted March 10, 2021 Hum.... The only bad part there is that the resulting interaction of the different channels isn't easily to get. Particular if you only record one channel. Bayusumardi did once a recording of my "Thing on a Spring" edit. On the 2nd channel he really recorded the interactivity of two channels for the resulting wave. So you actually see why the waves get more voluminous. Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 10, 2021 Author Share Posted March 10, 2021 57 minutes ago, emkay said: The only bad part there is that the resulting interaction of the different channels isn't easily to get. Particular if you only record one channel. This is true, especially with inaccurate emulation, or changing the content of the channel, instead of the volume. Disabling a channel entirely creates a lot of weird effects with the ASAP sound emulation. Altirra gets it right when it mutes channels to isolate the resulting waveforms, and the same also works with the RMT2LZSS volume offset changes, or manually editing a RMT to force the content of a channel to output volume 0 while keeping the frequency. It also obviously works as expected on real hardware, very easy to see in the Amberstar cover, the Pulses are modulated exactly as expected. 1 hour ago, emkay said: Bayusumardi did once a recording of my "Thing on a Spring" edit. On the 2nd channel he really recorded the interactivity of two channels for the resulting wave. So you actually see why the waves get more voluminous. This is simply wrong... That's not how it should look like. It's like 2 channels were mixed into 1, then output in a different channel. That's inaccurate emulation for sure. Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 10, 2021 Author Share Posted March 10, 2021 I had a lucky guess... for some reason Altirra refused to run your SAP files from the ASMA archive, but there was actually a RMT header inside, so I was able to convert it with RMT2LZSS to see it in action. I was correct, there was inaccurate emulation, there are some notes that switched to 16 bit mode, and it looks like ASAP doesn't like it, because now all channels looked correct in Altirra. Just for fun it uses my Alternate Tuning too... Sounds pretty good to me! Thing_on_a_Spring.xex 2 Quote Link to comment Share on other sites More sharing options...
rensoup Posted March 11, 2021 Share Posted March 11, 2021 1 hour ago, VinsCool said: I had a lucky guess... for some reason Altirra refused to run your SAP files from the ASMA archive, but there was actually a RMT header inside, so I was able to convert it with RMT2LZSS to see it in action. I was correct, there was inaccurate emulation, there are some notes that switched to 16 bit mode, and it looks like ASAP doesn't like it, because now all channels looked correct in Altirra. Just for fun it uses my Alternate Tuning too... Sounds pretty good to me! Thing_on_a_Spring.xex 13.69 kB · 4 downloads The sap file always contains the tune in its original format as well as the corresponding 6502 player, I added that option specifically to rip all the RMT tunes out of their sap format, you can point to whole asma sap archive and it will extract RMT tunes from those that contain one. 1 Quote Link to comment Share on other sites More sharing options...
emkay Posted March 11, 2021 Share Posted March 11, 2021 4 hours ago, VinsCool said: This is simply wrong... That's not how it should look like. It's like 2 channels were mixed into 1, then output in a different channel. That's inaccurate emulation for sure. Well. Newer soundchips had separated lines for the channels. Or the resulting tone had been done due to the built in operators. POKEY needs the "modulation" inbetween the channels. If you only show one channel, you don't see the resulting modulation. To see the resulting modulation, might help "newbies" to understand better what's happening. "Two channels add their square waves, to something like a ring modulated raw triangle wave" . 1 Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 11, 2021 Author Share Posted March 11, 2021 4 hours ago, rensoup said: The sap file always contains the tune in its original format as well as the corresponding 6502 player, I added that option specifically to rip all the RMT tunes out of their sap format, you can point to whole asma sap archive and it will extract RMT tunes from those that contain one. I know, this is why I used RMT2LZSS to extract his tune, and be able to run it in Altirra as well It's awesome how it just works, I've used the same method to rip .rmt modules out of executables too, lol 1 hour ago, emkay said: If you only show one channel, you don't see the resulting modulation. But yes, we will see it if it's actually properly emulated/exported? ? That's literally what I explained in my previous message in the thread. "Adding up 2 audio channels and show as 1 due to a rendering error vs show the resulting tone properly in each channel" are 2 entirely different things. The high pass filter modulation is the most obvious in that regard, Pulse width modulation is shown in action instead of showing up 2 channels doing 2 totally different things. The video of Things on a Spring was inaccurately emulated, and actually looked wrong as soon as a note switched down to 16-bit, it made everything following up wrong and copying what the other channels did, visually. Here's an example of inaccurate high pass filter effect visualised in separate channels based on what I explained: It looks like a normal square wave, because when it was exported, all channels are literally disabled, and so anything such as frequencies and AUDCTL bits are omitted, so listening to individual channels will expose everything wrong Here's an example of 16-bit turning the entire visual in channels 2 of each POKEY side wrong in a few parts: The latter, this video, was exactly the same side effect that happened in the visualisation of Things on a Spring, due to the fact that disabling a channel entire really mess up everything depending on the other channels. The best way to counter that is to simply set volume 0 on the channels that should be muted, but allow it to keep doing its thing, which was what I used for my own oscilloscope videos. ? 2 Quote Link to comment Share on other sites More sharing options...
emkay Posted March 11, 2021 Share Posted March 11, 2021 9 hours ago, VinsCool said: The latter, this video, was exactly the same side effect that happened in the visualisation of Things on a Spring, due to the fact that disabling a channel entire really mess up everything depending on the other channels. The best way to counter that is to simply set volume 0 on the channels that should be muted, but allow it to keep doing its thing, which was what I used for my own oscilloscope videos. ? Not really You are about the joined channels using the "Filter". I'm about direct wave addition of two channels. Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 11, 2021 Author Share Posted March 11, 2021 (edited) 2 hours ago, emkay said: Not really You are about the joined channels using the "Filter". I'm about direct wave addition of two channels. That is best visualised when all channels are mixed together, mono output style! In that case, I agree with you Edited March 11, 2021 by VinsCool 1 Quote Link to comment Share on other sites More sharing options...
emkay Posted March 11, 2021 Share Posted March 11, 2021 41 minutes ago, VinsCool said: That is best visualised when all channels are mixed together, mono output style! In that case, I agree with you The relevant parts were about when channels use the same frequency, or directly one octave above or below. If one channel is using the bass generator, and another uses very high tones, doesn't add to the wave manipulation, but interferes the demonstration of the wave mix. This is one row of waves of a software analyzer recording . The colors show the depending waves of used channels. You might see the three "pink" pointed waves having three different offsets . The left one has the shortest offset, then the middle, then the right one with the longest offset. Green: the left one has a longer offset than the right one. This is not filter interaction. This is the direct channel interaction. Normally when POKEY is doing music, musicians use the chaotic intervalls, to have some spacy sound. It's also possible to control that, and to put controlled Ring Modulation everywhere, to make the tune sounding consistent. To get the right feeling for it, a visualisation of the relevant channels is recommended. 1 Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 11, 2021 Author Share Posted March 11, 2021 (edited) 13 minutes ago, emkay said: The relevant parts were about when channels use the same frequency, or directly one octave above or below. If one channel is using the bass generator, and another uses very high tones, doesn't add to the wave manipulation, but interferes the demonstration of the wave mix. This is one row of waves of a software analyzer recording . The colors show the depending waves of used channels. You might see the three "pink" pointed waves having three different offsets . The left one has the shortest offset, then the middle, then the right one with the longest offset. Green: the left one has a longer offset than the right one. This is not filter interaction. This is the direct channel interaction. Normally when POKEY is doing music, musicians use the chaotic intervalls, to have some spacy sound. It's also possible to control that, and to put controlled Ring Modulation everywhere, to make the tune sounding consistent. To get the right feeling for it, a visualisation of the relevant channels is recommended. This is why I like to have Altirra's oscilloscope for individual and all channels shown on screen, that way it's easy to see how the resulting sound looks like, usually with a good resonance (being in-tune in most cases) it will show a nice stable output, sometimes as totally new waveforms, which is a lot of fun to manipulate. Edited March 11, 2021 by VinsCool 1 Quote Link to comment Share on other sites More sharing options...
emkay Posted March 11, 2021 Share Posted March 11, 2021 11 minutes ago, VinsCool said: This is why I like to have Altirra's oscilloscope for individual and all channels shown on screen, that way it's easy to see how the resulting looks like, usually with a good resonance (being in-tune in most cases) it will show a nice stable output, sometimes as totally new waveforms, which is a lot of fun to manipulate. The point is that special visualization might give the better visuals of what happens , and why it sounds like it sounds. You don't see it on 4 different waves. But particular the solution of bajusumardi gives some impression of what happens for real. As he is mixing the relevant 2 channels you see the following (around 2:24) You see a new waveform that is typically sounding more voluminous, as you also can get when listening to the tune. It is somehow a very digital version of a triangle or sine. Technically, just the clicking of the square edges gets less powerfull. Enough lessons Now back to a new tune of yours Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 11, 2021 Author Share Posted March 11, 2021 1 hour ago, emkay said: As he is mixing the relevant 2 channels you see the following (around 2:24) You see a new waveform that is typically sounding more voluminous, as you also can get when listening to the tune. That's what I was talking about yesterday... this is not supposed to look like that ? At least not in a single channel. But I digress, I got some cool ideas I wanted to try out, now with the new RMT2LZSS release, many things could be done in a much, much faster and easier way 2 Quote Link to comment Share on other sites More sharing options...
emkay Posted March 11, 2021 Share Posted March 11, 2021 4 minutes ago, VinsCool said: That's what I was talking about yesterday... this is not supposed to look like that ? At least not in a single channel. But that is actually the point. If always visualizing the single channels, it is not obvious what happens, if you mix POKEY's channels to a piece of music. 4 minutes ago, VinsCool said: But I digress, I got some cool ideas I wanted to try out, now with the new RMT2LZSS release, many things could be done in a much, much faster and easier way hmmm.... Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 12, 2021 Author Share Posted March 12, 2021 Experimenting a bit with the new RMT2LZSS feature. I only made use of tables for Distortion 2 and 4 there, but it certainly does work So here's some stupid ideas, because I suck at composing music, but it's fun regardless. I especially love the interaction between the distortions, the bass is a tad too loud however lol There's a lot to experiment with for sure now! Sketch 43 v7_tune1.xex Sketch 43 v7_tune3.xex 1 Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted March 12, 2021 Share Posted March 12, 2021 3 hours ago, VinsCool said: Experimenting a bit with the new RMT2LZSS feature. I only made use of tables for Distortion 2 and 4 there, but it certainly does work So here's some stupid ideas, because I suck at composing music, but it's fun regardless. I especially love the interaction between the distortions, the bass is a tad too loud however lol There's a lot to experiment with for sure now! Sketch 43 v7_tune1.xex 5.27 kB · 2 downloads Sketch 43 v7_tune3.xex 5.52 kB · 2 downloads If it's too loud, you're too old! it's all good T D 1 Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 13, 2021 Author Share Posted March 13, 2021 I think I went a bit harder than usual lol that poor LZSS player was having a seizure lol Sketch 44 v7.xex 4 1 Quote Link to comment Share on other sites More sharing options...
emkay Posted March 13, 2021 Share Posted March 13, 2021 3 minutes ago, VinsCool said: I think I went a bit harder than usual lol that poor LZSS player was having a seizure lol Sketch 44 v7.xex 11.04 kB · 1 download New music style? Crushhouse? 1 Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 13, 2021 Author Share Posted March 13, 2021 4 minutes ago, emkay said: New music style? Crushhouse? Maybe something like Rave? I don't know really. It all began when I was playing around manual 16-bit stuff with AUDCTL and accidentally left a portamento command... and so this kick drum started this tune, lol As soon as I switched the engine to 4x speed, I knew I was onto something lol I'm surprised I didn't break RMT2LZSS more than that, since I also used my custom tables in it Quote Link to comment Share on other sites More sharing options...
emkay Posted March 13, 2021 Share Posted March 13, 2021 33 minutes ago, VinsCool said: Maybe something like Rave? I don't know really. It all began when I was playing around manual 16-bit stuff with AUDCTL and accidentally left a portamento command... and so this kick drum started this tune, lol As soon as I switched the engine to 4x speed, I knew I was onto something lol I'm surprised I didn't break RMT2LZSS more than that, since I also used my custom tables in it This is something you realize quickly. The bass gets more "impulsive" if you change the pitch quickly. It gets louder somehow, but not nicer. The bass gets nicer, if you can remove or minimize the clicking of the square waves. "Hint" wave creation like in the "Thing on a Spring" tune Pointing to some other tecniques: POKEY has 4 channels. If you manage to have a dedicated offset on all channels, you couls also remove high noise for digitizing. You might know: It is possible to add as much sine waves as possible, to create a square wave. (harmonics principle) It is also possible to add as much square waves as possible to get a sine wave. (circle principle) Quote Link to comment Share on other sites More sharing options...
_The Doctor__ Posted March 13, 2021 Share Posted March 13, 2021 5 hours ago, VinsCool said: I think I went a bit harder than usual lol that poor LZSS player was having a seizure lol Sketch 44 v7.xex 11.04 kB · 3 downloads Now that's a heck of a happy accident... awesome 1 Quote Link to comment Share on other sites More sharing options...
rensoup Posted March 13, 2021 Share Posted March 13, 2021 5 hours ago, VinsCool said: I think I went a bit harder than usual lol that poor LZSS player was having a seizure lol Damn users, always breaking things in unexpected ways ? It's just the VUmeter code that isn't fast enough to update at 240Hz, It worked fine at 200Hz but I forgot about NTSC! 1 1 Quote Link to comment Share on other sites More sharing options...
VinsCool Posted March 13, 2021 Author Share Posted March 13, 2021 3 hours ago, rensoup said: Damn users, always breaking things in unexpected ways ? It's just the VUmeter code that isn't fast enough to update at 240Hz, It worked fine at 200Hz but I forgot about NTSC! I thought technically 200 and 240 would be the same, either case the music was running at 4x the engine speed from RMT, unless the LZSS player has code specific to each region? I imagine this is why there was a notice in the readme regarding higher speeds in NTSC... Seems like it works fine otherwise, it was only a visual glitch, which really made me laugh yesterday, because I really thought I was going to kill it... And didn't lol What a robust little program you have created ? Quote Link to comment Share on other sites More sharing options...
rensoup Posted March 13, 2021 Share Posted March 13, 2021 9 minutes ago, VinsCool said: I thought technically 200 and 240 would be the same, either case the music was running at 4x the engine speed from RMT, unless the LZSS player has code specific to each region? I imagine this is why there was a notice in the readme regarding higher speeds in NTSC... Seems like it works fine otherwise, it was only a visual glitch, which really made me laugh yesterday, because I really thought I was going to kill it... And didn't lol What a robust little program you have created ? I can't remember but I think I may adjust the timing between each Pokey update for NTSC, so there is less time between them, and as I was totally sloppy when implementing the VUmeters, the CPU time it takes has to be less than the time between 2 Pokey updates ? 1 Quote Link to comment Share on other sites More sharing options...
emkay Posted March 13, 2021 Share Posted March 13, 2021 (edited) Since I knew this game, I wanted to do a POKEY version. I don't know why, but this tune manages really to sound "sexy" somehow. Even the "cheap" chips can handle it. But I never found a fitting 3 channel notation And ofcourse a PAULA version Edited March 13, 2021 by emkay 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.