Jump to content
emkay

Nothing special

Recommended Posts

On 9/17/2021 at 9:56 AM, EnderDude said:

I really wanted to get a lot of phasing in the song, but I learned it's not worth making some notes go thin. So keep phasing to a minimum in the song, and it should be good. Thank you!

Some phasing is always good, unstable/unpredictable phasing cancellation is not :P 

That's what I meant by "absolute", it's never going to be perfect, but the manipulation wouldn't depend on the timing "ie wobbling" to achieve a certain pulse, but the constant of which pulses will always start from the exact same state.

By mixing the technique of "Absolute" PWM and a FSHIFT of 0 (or rather, manually set to FF first due to the way things were programmed in rmtplayr), there is a certain control that remains almost perfectly predictable, and this is what helps stabilise the sounds the most, from what I observed.

 

A simple breakdown of what I did in my edit was to instead use the "Absolute" reset during key moments of the tune, eg when the pulses would become too thin or unpredictable, and let it go with the same instruments you used, then the Command 4s were replaced by 0s (no commands) or 2s (which purposefully applied a detune during few frames for more precision, usually by values of FF or 01 to manipulate the direction the phasing would go).

That way, instead of being dependant of luck, you are literally manipulating the luck in your favour, and while this may require some more work, the stability makes it really worth it.

Just for fun, let my last binary run in Altirra emulator, looping over and over, it should produce the exact same sound every loop, with only some slight differences, and rarely a phase cancelling a note.

I've tried just for fun before I had uploaded my version a few messages above, and nearly 10 loops going, not a single time there was a note dropped, even if it came really close on some occasions, mainly where the pulses were really thin.

 

I learned some time ago this method of "start from 00, a predictable constant, before letting go" was a very similar same observation for the Polycounter Reset trick used to manipulating the Distortion C, just executed in a different way.

More understanding of how this could be done in the code would be pretty nice, because, in theory, it would be possible to produce really precise PWM, like, much, much, much more precise and predictable.

 

However, I do not know yet how to put this in practice, for now :D 

Something that could be worth experimenting with is the hardcoded FILTER feature, in which a FSHIFT of 00 would be used instead of 01, so that would allow the musician to be in control, with the advantages of the automatic Filter effect.

See here: 

	IFT FEAT_FILTER
	lda #1
	sta trackn_filter,x

The value of 1 is stored into it during instrument initialisation.

By setting it to 0, there should be no phase shift already in place when a new note is set, which would also remove the necessity to start with a Command 6 with FF.

I remember this exact situation is also taken care of in RMT2LZSS's .erti features, something I remember testing too, but I never actually used it since I usually rely on the "Absolute" technique for generating PWM :P 

 

Another thing that could be worth testing is to apply the absolute control depending on the AUDFs being set to 00 for a set amount of cycles, and then setting it to the intended frequency, only once during instrument initialisation, and only when an arbitrary parameter is detected, like a command with a specific value.

Every subsequent frames could then use a similar trick, but instead, simply store a detune amount for a few cycles, before then storing the intended frequency again to the AUDF.

What may result from this would be a REALLY smooth PWM, that would always start from a predicted state, and would phase smoothly until a new note with a "reset" command it detected, to start the process over.

 

It would be very similar to what is already possible using the "Absolute" technique, but it would be much more precise, and not have the side effect of having 1 frame play a 00 frequency (usually worked around with noise hihats or silence).

...I'm actually tempted to experiment with this idea now that I've rambled about it for 20 minutes LOL 

  • Like 2

Share this post


Link to post
Share on other sites
1 hour ago, emkay said:

Btw. 

1) The Intro Instrument fits very well. 

2) Gen. E sounds interesting at 1.79MHz. But it should be usable similar to the gen 2 patch , also gen. 4 

3) The discussion seems to drop aside that the whole tune sounds f'''ng cool in my latest edit. 

 

Now imagine a POKEY tracker that allows everything "active" not just "passive". 

Regarding 2), this is technically possible too, as well as everything else that do not yet have a tuning table.

The main roadblock is not having the ability to manipulate the AUDCTL like an envelope, so if the same idea is applied to Distortion E, it would then try to go in 1.79mhz mode every time, which would be a little annoying when 1.79mhz clock is not wanted in that moment.

I believe a way could be done, from studying the rmtplayr code, in the parts related to Effect Commands, but that would require changing things in the .rmt format altogether, as well as manually doing things since the Tracker side would not be aware of this stuff, if you see what I mean.

Share this post


Link to post
Share on other sites
9 hours ago, VinsCool said:

Regarding 2), this is technically possible too, as well as everything else that do not yet have a tuning table.

The main roadblock is not having the ability to manipulate the AUDCTL like an envelope, so if the same idea is applied to Distortion E, it would then try to go in 1.79mhz mode every time, which would be a little annoying when 1.79mhz clock is not wanted in that moment.

I believe a way could be done, from studying the rmtplayr code, in the parts related to Effect Commands, but that would require changing things in the .rmt format altogether, as well as manually doing things since the Tracker side would not be aware of this stuff, if you see what I mean.

IMHO...

If it is possible to determine the channels where the Instrument is played, it should be sufficient enough, to handle that extra just on channel 0 and 2. On channel 1 and 3 the standard handling could be used. 

 

 

Edited by emkay
  • Like 1

Share this post


Link to post
Share on other sites
13 hours ago, emkay said:

It is really recommended to find the correct tuning, before doing stuff like "phasing" . 

 

This means to put the resulting waves to the correct frequency.

 

Then, when everything is stable, the FX should be added...

 

 

 

 

 

This sounds fantastic!

What's really good to hear is from 0:21, the interesting new kind of bass in 64kHz mode. New to me anyways :)

Share this post


Link to post
Share on other sites
2 minutes ago, Sandor / HARD said:

This sounds fantastic!

Indeed.

 

2 minutes ago, Sandor / HARD said:

What's really good to hear is from 0:21, the interesting new kind of bass in 64kHz mode. New to me anyways :)

This is a technique of using the different generators (Polycounter basses) to resemble some modulation features. 

 

Share this post


Link to post
Share on other sites

This one is 4 channel.

Now just gen.2  used as some modulation feature.

 

 

  • Like 3

Share this post


Link to post
Share on other sites
6 minutes ago, emkay said:

This one is 4 channel.

Now just gen.2  used as some modulation feature.

 

 

'Ery noice.
It'd be a pleasure to have a look at the .xex to potentially poke around and experiment with your module. This is only if you want to, but it'd be nice to try out some different ways to see what also sounds good.

Edited by EnderDude
  • Like 1

Share this post


Link to post
Share on other sites
On 9/18/2021 at 3:33 PM, emkay said:

It is really recommended to find the correct tuning, before doing stuff like "phasing" . 

 

This means to put the resulting waves to the correct frequency.

 

Then, when everything is stable, the FX should be added...

 

 

 

 

 

Very nice work!  I would not have guessed this to be a Pokey tune if I just heard it.

  • Like 1

Share this post


Link to post
Share on other sites
44 minutes ago, EnderDude said:

'Ery noice.
It'd be a pleasure to have a look at the .xex to potentially poke around and experiment with your module. This is only if you want to, but it'd be nice to try out some different ways to see what sounds good.

supmac.rmt

supmac.xex

Edited by emkay
  • Like 4
  • Thanks 1

Share this post


Link to post
Share on other sites

 

imagine a puzzling game , or some game that needs a long time play. How about a tune that doesn't sound too flat, but also not stressing. Just a cool music in the background...

 

 

 

  • Like 3

Share this post


Link to post
Share on other sites
On 9/19/2021 at 1:42 PM, emkay said:

So I made my own edit from your import. I was thinking that I could use the "pwm reset" instrument as a kind of percussion. So now, instead of the phase being reset at every note, it is reset in a kind of beat, along with the "pwm continue" instrument. Again, thanks for sharing the module so I could make my own edits and experiment. :)

Supremacy.obx Supremacy.rmt

  • Like 2
  • Haha 1

Share this post


Link to post
Share on other sites
19 minutes ago, EnderDude said:

So I made my own edit from your import. I was thinking that I could use the "pwm reset" instrument as a kind of percussion. So now, instead of the phase being reset at every note, it is reset in a kind of beat, along with the "pwm continue" instrument. Again, thanks for sharing the module so I could make my own edits and experiment. :)

Supremacy.obx 15.47 kB · 1 download Supremacy.rmt 7.81 kB · 0 downloads

I see you hex edited the module into the Visual Player! hahaha (You just have ask me  for a new version lmao XD)

Nice usage of the Absolute PWM manipulation, I see you caught the trick really quickly :D 

  • Like 2

Share this post


Link to post
Share on other sites

As I mentioned earlier , the filter is more than just a Filter, it also is a tuning helper.

 

 

Do you get the difference?

 

 

 

 

  • Like 4

Share this post


Link to post
Share on other sites
1 hour ago, emkay said:

As I mentioned earlier , the filter is more than just a Filter, it also is a tuning helper.

 

 

Do you get the difference?

 

 

 

 

Because it doubles the frequency, but the precision is better? Indeed, it is certainly a tuning helper, along with being able to make ring-mod-like sounds with it. Truly an overlooked feature of the POKEY back then.

  • Like 2

Share this post


Link to post
Share on other sites
3 hours ago, EnderDude said:

Because it doubles the frequency, but the precision is better? Indeed, it is certainly a tuning helper, along with being able to make ring-mod-like sounds with it. Truly an overlooked feature of the POKEY back then.

 

Could you imagine, I've been proposing this back in 1986 already?

 

  • Like 2

Share this post


Link to post
Share on other sites
3 minutes ago, emkay said:

 

Could you imagine, I've been proposing this back in 1986 already?

 

So you were... 19? That means you figured it out around the age I am now, heh. Kinda neat if you think about it. ;)

  • Like 1

Share this post


Link to post
Share on other sites
2 minutes ago, EnderDude said:

So you were... 19? That means you figured it out around the age I am now, heh. Kinda neat if you think about it. ;)

Yeah. In 1985 I bought the 800 XL mainly for learning some programming in the free time. 

It felt so futuristic back then. 

You know, others come home from work, staring at the TV. emkay sitting also in front of the TV, hacking listings from magazins into the Atari. :D

 

  • Like 1

Share this post


Link to post
Share on other sites
1 minute ago, emkay said:

Yeah. In 1985 I bought the 800 XL mainly for learning some programming in the free time. 

It felt so futuristic back then. 

You know, others come home from work, staring at the TV. emkay sitting also in front of the TV, hacking listings from magazins into the Atari. :D

 

I found out about the Atari 8-bit line through my uncle and aunt. Every once in a while, we'd fly over to them, and I'd pull out their XEGS from the basement and play a couple of the games they had sitting around, like Moon Patrol, or Flight Sim II. It was a thing when I was about 12 or so. A couple years later, I stumble upon this forum after clicking a link from a 2600 homebrew game. I created an account, and the rest is history. :D

  • Like 3

Share this post


Link to post
Share on other sites
27 minutes ago, EnderDude said:

I found out about the Atari 8-bit line through my uncle and aunt. Every once in a while, we'd fly over to them, and I'd pull out their XEGS from the basement and play a couple of the games they had sitting around, like Moon Patrol, or Flight Sim II. It was a thing when I was about 12 or so. A couple years later, I stumble upon this forum after clicking a link from a 2600 homebrew game. I created an account, and the rest is history. :D

 

I see. 

So I have to add some controversal stuff. 

If people do this high quality POKEY stuff using C64 base notes, I'd suggest NOT to put the C64 composer into any honor. 

It sounds rude, but you have to think of that fact that particular this guys have been a part of dropping any music development on the Atari. 

They really P... and Sh... on the Atari and POKEY. 

The point is that they couldn't do a single chord on the Atari. So why do some dedication anyways?

 

There exist some very great musicians for the atari. 

-David Whittaker (the real Guru in POKEY music back then)

-Richard Munns

 

But Atari Users pray to Rob Hubbard and Jeroen Tel and others. ;)

But they only used the given hardware interface from SID and put their musician talent in.

  

Imagine one of those "great musicians doing a cooperation at atari to provide a music creation tool for modern chip music" , but they did the vice versa.

 

Supremacy by Jeroen Tel?

But NOT on the Atari. 

Edited by emkay

Share this post


Link to post
Share on other sites

The last problem to solve is the "adding modulation" . 

Normally, the filter sets the depending voices to a "cancelling point", then it is possible to shift the offset of the voices , to get a pulse width variation. 

Adding modulations puts the voiced directly together, which is removing high noise. 

But modulations can also used for some pulse width effects.

 

 

 

  • Like 5

Share this post


Link to post
Share on other sites

Isn't it interesting, how the Gen 2 helps with "everything" ? In this tune it makes the voice sound like 2 voices. 

 

  • Like 2

Share this post


Link to post
Share on other sites

Also, with this "440Hz" correct tuning, it is possible to recreate all "Music". ;)

 

Even the most complex SID tunes might find a solution here. 

  • Like 4

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...