Jump to content
IGNORED

Trying to make some PoKEY music!


VinsCool

Recommended Posts

This is getting way too messy, but so far RMT2LZSS has been keeping itself strong despite everything I sent into it.
Now I got the lead partially done, fixed some mistakes in the other parts, and that's what I have so far.

The lead has a lot of work to get still, and it also sounds very out of tune currently because I have not yet made the custom instruments in the .erti file, so the tuning is incorrect for most of it, especially the higher notes.
But the idea is coming together, with more work it will definitely become decent, and none of this could have worked that well in RMT alone. In fact a lot is still really difficult to get right simply from the fact that I cannot have a immediate feedback from the changes, only at LZSS conversion, there's so many things that could be done, that's for sure :D 
Right now I will admit I wish there was an easier way to achieve it. The 15khz mode bouncing back to 64khz mode design is really difficult, and I can see why it's not something done that often.
The bass and percussions makes it worth it, however.

Regardless of this version being a mess, just the fact alone that 80% of everything is tuned well (except the lead part), or that it's making use of tricks impossible in RMT alone, and running at 50hz and still sound very full makes me happy, and excited to push this limit even further :P 

 


 

Laxity - Freeze (Cover) v8 cursed 4.obx

  • Like 3
Link to comment
Share on other sites

38 minutes ago, VinsCool said:


Regardless of this version being a mess, just the fact alone that 80% of everything is tuned well (except the lead part), or that it's making use of tricks impossible in RMT alone, and running at 50hz and still sound very full makes me happy, and excited to push this limit even further :P 

 


 

Laxity - Freeze (Cover) v8 cursed 4.obx 9.38 kB · 3 downloads

I see what you want to create ;)

 

A solution for a lot notes could be the 1.79MHz filter.

But in some range, you'll never get the 15kHz notes clean enough, ecxept you play an "Arpeggio" that is directly bound to the frequency switches. 

Not trying to make them sounding similar

 

  • Like 1
Link to comment
Share on other sites

19 minutes ago, emkay said:

I see what you want to create ;)

 

A solution for a lot notes could be the 1.79MHz filter.

But in some range, you'll never get the 15kHz notes clean enough, ecxept you play an "Arpeggio" that is directly bound to the frequency switches. 

Not trying to make them sounding similar

 

That's an idea, I also think of trying to use sawtooth somewhere.
What is nice with the filter is that I gain an extra octave in the high if I use a note lower it will be the same pitch audibly, which was used when I was able to there, but I need to change some of the execution, clearly my snare drum eats too much space that could be used for tuning the lead instead.

I'll figure something later :D 

edit: the vibrato needs to be changed too, maybe not used on higher notes and replace it with tremolo for a similar mood, I need to think about it.

Edited by VinsCool
Addendum
  • Like 1
Link to comment
Share on other sites

Here I introduce to you the most hacked up sound design I was able to produce to date.
I'll let you all judge, as far as I could tell, in most of this one, tuning is 95% well everywhere with nearly no major problems

The lead was a literal pain in the ass, and apart from fixing up a bit to be more accurate to the original melody, it does work quite well now, even if from my point of view, it is incredibly cursed lol

 

I also added a new Distortion 2 table, that was used in the tune for the parts that needed... to be worked around with a acceptable tuning, lol

I can now finish that cover later, it's pretty much close to be finished, only some changes are needed in the lead melody now :D 
 

 

Once I'm fully done I'll post all my project files, so in the meantime, here's an executable and the new table version.
Hopefully all of this will work as expected on hardware too.
 

CustomNoteTables Vin V21.txt POKEY Table 1.79mhz (Octave Pattern, Distortion 2) v2.txt Laxity - Freeze (Cover) v20.xex

  • Like 6
Link to comment
Share on other sites

Nice! Could  you increase the volume of the lead a bit? Or decrease the backing? It's a little soft IMHO.

 

I wonder which notes you mean that were off. I copied them directly from the siddump, but can have made mistakes of course :)

  • Like 1
Link to comment
Share on other sites

The tune sounds great on the technical side.

There is some "But,..." 

The drums in the original pokey conversion have this needed funkiness of the SID original. 

 

Listen shortly:

 

The beat and the instruments have their common moments (start,sustain time,  end) .

Without that , the meaning of the tune is gone imho. 

  • Like 2
Link to comment
Share on other sites

On 3/31/2021 at 4:12 AM, VinsCool said:

Well considering I did all my tuning based on intervals, this is indeed true lol

Which intervals did you use exactly? Once you leave 12-TET, your tuning will improve in certain keys, but decrease in other keys. To which key and base note did you tune your chromatic scales?

 

Link to comment
Share on other sites

3 minutes ago, ivop said:

Which intervals did you use exactly? Once you leave 12-TET, your tuning will improve in certain keys, but decrease in other keys. To which key and base note did you tune your chromatic scales?

 

Not really sure anymore honestly.

Truth to be told, a lot of that stuff doesn't totally make sense to me.

 

The main intervals I relied on there were octaves, fifths and a handful of random notes that were adjusted inbetween to fit with as many notes as possible there.

 

A and D were the main notes that were referenced there as well.

Sharps are the ones that were annoying to get properly, and aren't 100% good, but in most cases things seem to work okay with what I got currently :)

Link to comment
Share on other sites

37 minutes ago, VinsCool said:

Not really sure anymore honestly.

Truth to be told, a lot of that stuff doesn't totally make sense to me.

I'm working on an essay about sizecoding of music, and it starts with an introduction to music in general. Major scales, building chords, minor chords, seventh and major seventh chords. But I have to draw the line somewhere to not become too technical. Add9, Add11, Sus2, etc... and other scales and tuning is under "Further Reading" :D

 

Quote

The main intervals I relied on there were octaves, fifths and a handful of random notes that were adjusted inbetween to fit with as many notes as possible there.

 

A and D were the main notes that were referenced there as well.

Sharps are the ones that were annoying to get properly, and aren't 100% good, but in most cases things seem to work okay with what I got currently :)

This explains a lot. Most tunes are either in C, D, E, G, or A. Chiptunes mostly A and D. If you take D as your root note, A is the fifth. In the major scale.

 

Here's a wikipedia page on Just Intonation: https://en.wikipedia.org/wiki/Just_intonation Especially the Diatonic Scale is interesting.

 

Note that if I would send you an RMT that's in the key of A#, it would suck with your new tables ;) But you can always transpose!!

Edited by ivop
added the key of C to most tunes...
Link to comment
Share on other sites

10 hours ago, ivop said:

Nice! Could  you increase the volume of the lead a bit? Or decrease the backing? It's a little soft IMHO.

 

I wonder which notes you mean that were off. I copied them directly from the siddump, but can have made mistakes of course :)

Agreed, it sounds great! Great PWM, great drums but a litte heavy...

Link to comment
Share on other sites

9 hours ago, ivop said:

I'm working on an essay about sizecoding of music, and it starts with an introduction to music in general. Major scales, building chords, minor chords, seventh and major seventh chords. But I have to draw the line somewhere to not become too technical. Add9, Add11, Sus2, etc... and other scales and tuning is under "Further Reading" :D

Very cool! I'd be interested to read about this.

9 hours ago, ivop said:

This explains a lot. Most tunes are either in C, D, E, G, or A. Chiptunes mostly A and D. If you take D as your root note, A is the fifth. In the major scale.

Yeah, that is for the most part what I can understand, D minor and A minor keys are usually the ones I make tunes on, but I try my best to experiment outside of my comfort zone when I feel like it.

9 hours ago, ivop said:

Here's a wikipedia page on Just Intonation: https://en.wikipedia.org/wiki/Just_intonation Especially the Diatonic Scale is interesting.

That's some interesting stuff, that I happened to make work surprisingly close enough to what was described here, and also definitely explains why I had so much difficulties with certain notes, that ended up sounding off, and that having them adjusted caused something else to sound off as a result, and etc.
I tried my best with what I got so far, but I know there's always improvements that could be done in the future, so I need to expand my music theory knowledge even further one of these days :D 

 

I guess my tables are sort of a mix between A=443.9hz 12ET, Just Intonation, and a lot of compromises that worked as good as I could make it for now.
I definitely will revisit this stuff in the future, but for now, I'd say most of the tuning I have done so far seems to work pretty well, maybe better than the original implementation, I dare to say :P 

9 hours ago, ivop said:

Note that if I would send you an RMT that's in the key of A#, it would suck with your new tables ;) But you can always transpose!!

That would need to be tried out. I'm fairly confident stuff will sound mostly good, but we never know :) 
I've honestly spent a lot of time testing a lot of the modules I had around during the tuning of the main tables, and really kept what I think worked the best so far to my own taste.
There are definitely mistakes that were left unnoticed, but I've had no real moments recently where I had to stop and think "wait, that was out of tune", some notes were a little off, but nothing really bad compared to before, which was progressively worse as the pitch went higher.
I'm always open to find improvements so any suggestions are welcome, of course :D 
 

Link to comment
Share on other sites

By the way, thanks for the feedbacks everyone!
I know there is still room for improvements, and I appreciate the comments :) 

12 hours ago, ivop said:

Nice! Could  you increase the volume of the lead a bit? Or decrease the backing? It's a little soft IMHO.

2 hours ago, rensoup said:

Agreed, it sounds great! Great PWM, great drums but a litte heavy...

Yep, I agree, there is a bunch of volume adjustments to do, so I should be able to balance things a little better, it's pretty close to done at this point too.

11 hours ago, emkay said:

The tune sounds great on the technical side.

There is some "But,..." 

The drums in the original pokey conversion have this needed funkiness of the SID original. 

 

The beat and the instruments have their common moments (start,sustain time,  end) .

Without that , the meaning of the tune is gone imho. 

Yeah, there's some things that were done a little more in my own style, but I'll do my best to keep most of the original sound as well.
You guys probably know how much I love my drums BIG :D 

12 hours ago, ivop said:

I wonder which notes you mean that were off. I copied them directly from the siddump, but can have made mistakes of course :)

It's not that much actually, a few notes in the lead just didn't do the best sounding vibrato, or slides to my taste, some elements were a little strange as a result, and I have to yet finish up the parts on the lead that still need improvements based on my really cursed PWM/Sawtooth/Distortion 2 sound design.
A couple notes were changed to better match the original version, but I'm not fully done yet, some note slides are still currently a little incorrect and/or missing.
For example, the last 2 song sections, where it played twice but transposed, had a few note slides that didn't exist in the cover as far as I could tell, that I have added, same for the bass wobble, I'm not exactly sure how that worked originally, but I really liked that sound so I decided to keep it and improve it a little.
Some drums and bass notes were also a little off as well, there was an entire drum part that was also omitted, as well as some little things like notes on the wrong octave, and an arpeggio that was off by a note, but it looked like just a copy/paste mistake, so it's not much really :P 


The entire transcription overall was really good, I've pretty much re-arranged the entire cover now, with my own spin into it, and also fixed most of the errors I have found, and also added by accident.
Other than the adjustments mentioned above, and any errors I have left behind, it's pretty close to be finished now :) 
Hopefully I am not going to disappoint you all :D 

  • Like 1
Link to comment
Share on other sites

Finally, it is done!
 

 

It sure was a lot of work, more than I expected, but I'm very happy of the result now.
In the process I added yet another notes table, this time it's Distortion C at 1.79mhz. It's a little lacking but did a fine job for the high pitched notes with almost no tuning error for this cover :) 

As promised, here's all the project files I used, including my most recent frequency tables.
I hope you liked it @ivop, I really have spent a lot more time than planned for it, but I just couldn't help myself diving further into all that Atari 8-bit stuff. :D 

 

Freeze Project Files.zip

  • Like 8
  • Thanks 2
Link to comment
Share on other sites

5 hours ago, VinsCool said:

I hope you liked it @ivop, I really have spent a lot more time than planned for it, but I just couldn't help myself diving further into all that Atari 8-bit stuff. :D 

Thank you! I like your version very much! Sorry for wasting your time ;)

  • Thanks 1
Link to comment
Share on other sites

10 hours ago, VinsCool said:

Finally, it is done!
 

 

It sure was a lot of work, more than I expected, but I'm very happy of the result now.
In the process I added yet another notes table, this time it's Distortion C at 1.79mhz. It's a little lacking but did a fine job for the high pitched notes with almost no tuning error for this cover :) 

As promised, here's all the project files I used, including my most recent frequency tables.
I hope you liked it @ivop, I really have spent a lot more time than planned for it, but I just couldn't help myself diving further into all that Atari 8-bit stuff. :D 

 

Freeze Project Files.zip 23.87 kB · 9 downloads

Man, I love this cover! I too would like to experiment with modifying the frequency tables as well. Are there any resources you can point to so I can read up on how to change them?

  • Thanks 1
Link to comment
Share on other sites

1 hour ago, emkay said:

And it would be even smaller , if the loops also were stored as loops. 

Not really, I'm afraid. The loops that are there are well within the LZSS window, so they are already stored as back references.

 

  • Like 1
Link to comment
Share on other sites

3 minutes ago, ivop said:

Not really, I'm afraid. The loops that are there are well within the LZSS window, so they are already stored as back references.

 

OK. 

Rensoup mentioned earlier that he does "streaming" there. No recognition of repeated patterns. 

Possibly things changed?

Link to comment
Share on other sites

1 hour ago, emkay said:

OK. 

Rensoup mentioned earlier that he does "streaming" there. No recognition of repeated patterns. 

Possibly things changed?

dmsc wrote LZSS, it's compressed streaming obviously... otherwise the files would be huge.

 

 11Kb include 5KB for the player code (VUmeters, proportional font code, font, text, ...), just output it from RMT2LZSS to get the .lzs16 size. 

  • Like 3
Link to comment
Share on other sites

2 hours ago, EnderDude said:

Man, I love this cover! I too would like to experiment with modifying the frequency tables as well. Are there any resources you can point to so I can read up on how to change them?

Thank you!
Well... I am not even sure where I could point you regarding that stuff.

A lot of that was done by ear, by guesswork and learning how the chip works, there's so much combinations that it really took me a lot of time to get this far, and I know I'm not even done yet, hahaha ?
Several references were taken from @Synthpopalooza's own researches, so it's important to mention it.

Tuning was a lot of trial and error as well, so there's really nothing I can suggest or recommend other than experiment and try things out, sometimes the most stupid idea could work!
Other than that, I can say I am really happy about what I was able to do, and none of this would have been possible without the work of @rensoup creating RMT2LZSS and all the extra features that have been addded since.

The POKEY chip can do a lot of things, I am convinced even better could be done in the future :D 

  • Like 2
Link to comment
Share on other sites

2 minutes ago, rensoup said:

The song's not exactly my favourite but damn that's an impressive Pokey rendition! ?

 

Level UP! ( possibly Maxed out? )

Thank you very much!

Level up for sure! Maxed out? I doubt it! There's still a lot of things I haven't yet explored :P 

  • Haha 1
Link to comment
Share on other sites

2 hours ago, emkay said:

OK. 

Rensoup mentioned earlier that he does "streaming" there. No recognition of repeated patterns. 

Possibly things changed?

The streams rensoup is streaming to Pokey are compressed by the LZSS algorithm, which is part of the Lempel-Ziv family of data compression algorithms. They either build a dictionary of multi byte words (like LZW does), or use back references within a certain window pointing back in the stream. These back references are found by pattern matching.

 

I think you mean patterns at the RMT level. If they are within the LZSS back reference window, they are compressed. But with long songs, they could be too far apart. Then indeed, it could be beneficial to compress just each RMT pattern. But then your player needs the RMT song data to know when to play which pattern.

Edited by ivop
  • Like 2
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...