Jump to content
IGNORED

Trying to make some PoKEY music!


VinsCool

Recommended Posts

4 minutes ago, NeoNZJ_Slayer said:

I see. Was wondering how it sounded different than Pokey. Other than the Emkay "Patch 8" thing. No one has done any major modification to RMT or had did any other music tracker.

 

The Patch has been done by Analmux, sadly he passed away some years ago.  

We had direct communications. And he sent me all his work back then.

So it's not "Emkay Patch" :) 

Link to comment
Share on other sites

2 minutes ago, emkay said:

The Patch has been done by Analmux, sadly he passed away some years ago.  

We had direct communications. And he sent me all his work back then.

So it's not "Emkay Patch" :) 

so he sent you all the work, would you happen to have rmt source? I thinks he had it as well.

Edited by _The Doctor__
Link to comment
Share on other sites

1 hour ago, NeoNZJ_Slayer said:

No one has done any major modification to RMT or had did any other music tracker.

Technically I did do some modifications for some of the tunes I posted here yesterday, but it was mainly intended to improve the tuning instead of adding or changing features :D

Edited by VinsCool
I can't English
Link to comment
Share on other sites

On 3/2/2021 at 1:57 AM, Mathy said:

We have this little Atari 8 bit meeting in Germany in September.  Many people use it to get some quality time with their Atari computer.  Finish projects, that kind of stuff.  Imagine having a whole week just to work on this and/or Prince of Persia and in the mean time meeting lots of Atari users, with lots of Atari knowledge.  And maybe even the person holding the source code of RMT...

 

Sure I'd like to meet some hardcore Atari users! I already considered coming in 2019. 

 

I don't know if it'll be possible though...

 

Regarding the RMT source, is that real or just wishful thinking ? I wouldn't want to use it personally because LZSS is the future... but I'm curious

  • Like 1
Link to comment
Share on other sites

4 hours ago, rensoup said:

 

Regarding the RMT source, is that real or just wishful thinking ? I wouldn't want to use it personally because LZSS is the future... but I'm curious

Having communications with Raster back then, he wrote that there cannot be done more different types of AUDCTL switches without rewriting it all .

At least some changes would be very helpful:

-adding a 16 bit value based Gen A handling 

-adding a Gen 2 separated Note-Table

-adding a pitch control on the patterns (for direct cancelling "cancelling" ;) ) and more finetuning possibilities.

-And still a feature to do a timing control "as fast as possible.

-Allow to use all different settings , every single step on the envelope.

 

Also interesting, as seen in SID Trackers,is a direct arpeggio programming on the patterns. 

This makes it possible to adjust the needed notes there, and not to recreate every instrument with every variation.

 

And, in a superlative case, some programmable automation for different timing settings  for fluent PWM manipulations , would be great.

 

And, ofcourse, someone hopefully finds the timing bug in the emulations and can remove it. 

 

.... if the souce is available.... somehow

  • Like 1
Link to comment
Share on other sites

I think I made more progress with the improved tuning idea now.
So I tried out some random tunes I had around to see how they got sounded like... and well I like it so far :P 
The tunes that depended on certain notes to achieve some special modulation really sound nice now :D 
To get these executables generated I used a nice little workaround where I hacked my own table in the RMT2LZSS executable lol

A bunch of these tunes aren't actually mine, but you get the idea, it was mainly to see how the sounds harmonised now.
Not too bad for only changing the "pure" table I think.

I'll attach the table I came up with so far too. There is definitely some room for improvements, and 15khz specific things to try, but I think it sounds pretty good now.

tunes tests.zip POKEY Table 64khz (A=443hz Theorical 2) v5.txt

  • Like 2
Link to comment
Share on other sites

On 3/2/2021 at 1:26 AM, rensoup said:

I'm not sure LZSS is snappy enough for that...

During development of the song, you don't need to constantly LZSS compress the streams. Just push entries to a round-robin buffer that's played by a simple 6502 player that just dumps the frames to Pokey.

 

On 3/2/2021 at 1:26 AM, rensoup said:

I'm thinking that my C# rmt player/converter could be turned into an actual native PC rmt player with the help of Pokey.dll, or even better Altirra's pokey emulation... Didn't you mention you wanted to rip out Pokey out of Altirra ??

I did ;) But that's a no-go because it is way too much intertwined with the rest of the emulator. Then I mentioned reimplementing with Altirra as guide. That's a lot of work. After that, I also mentioned another method that might be more promising, namely a direct connection with either atari800 or Altirra. That way, you will automatically get better Pokey emulation if the emulator improves. Speed is a non-issue for so little data. And SHM, Domain Sockets or FIFO's are plenty fast for this.

 

  • Like 1
Link to comment
Share on other sites

On 3/2/2021 at 1:59 AM, rensoup said:

I used 2 textfiles which contained reversee engineered info about the RMT format, one of them from 2012 by a certain Ivop dude ?... can't believe you did that and then... nothing with it !

Other projects or life got in the way ;) But I'm glad you found use in my RE efforts.

 

Back in 2012 my idea was to write converters to the RMT format. Last year emkay and I shortly discussed a GoatTracker to RMT converter, but it seems there's not a huge library of GoatTracker files available, so that would be wasted effort.

 

 

  • Like 1
Link to comment
Share on other sites

21 hours ago, ivop said:

Other projects or life got in the way ;) But I'm glad you found use in my RE efforts.

 

Back in 2012 my idea was to write converters to the RMT format. Last year emkay and I shortly discussed a GoatTracker to RMT converter, but it seems there's not a huge library of GoatTracker files available, so that would be wasted effort.

 

 

Goat Tracker seems to be the closest solution to what would be the "optimum" in music creation .

It's done for SID,  but it also points to the best "musical" features of POKEY.

  • Like 1
Link to comment
Share on other sites

15 minutes ago, emkay said:

Goat Tracker seems to be the closest solution to what would be the "optimum" in music creation .

It's done for SID,  but it also points to the best "musical" features of POKEY.

Possibly, but a nice feature you mentioned before was arpeggios in the pattern domain, instead of the instrument domain. Converting such a GoatTracker file to RMT will lose that, because RMT does not have that feature. The only way RMT could handle that is if each pattern line is exactly one frame. But you still cannot edit the chords/arpeggios within RMT.

 

  • Like 1
Link to comment
Share on other sites

58 minutes ago, ivop said:

Possibly, but a nice feature you mentioned before was arpeggios in the pattern domain, instead of the instrument domain. Converting such a GoatTracker file to RMT will lose that, because RMT does not have that feature. The only way RMT could handle that is if each pattern line is exactly one frame. But you still cannot edit the chords/arpeggios within RMT.

 

SIDWIZARD also has some great ideas for managing effects too, a bit like a mix of several methods into 1 efficient way.

Link to comment
Share on other sites

On 3/3/2021 at 8:09 AM, emkay said:

Having communications with Raster back then, he wrote that there cannot be done more different types of AUDCTL switches without rewriting it all .

At least some changes would be very helpful:

-adding a 16 bit value based Gen A handling 

-adding a Gen 2 separated Note-Table

-adding a pitch control on the patterns (for direct cancelling "cancelling" ;) ) and more finetuning possibilities.

-And still a feature to do a timing control "as fast as possible.

-Allow to use all different settings , every single step on the envelope.

Piece of cake, no source needed...

 

Well, I'm not sure what it all means ? but obviously you wouldn't want to upgrade the 6502 RMT player because any change to that is perilous... but it's probably easier to change my C# RMT player.

  • Like 1
Link to comment
Share on other sites

On 3/3/2021 at 8:56 AM, Schnurrikowski said:

Just a noob question: How difficult would it be to write something like Rasta Music Tracker from scratch?

http://raster.infos.cz/atari/rmt/rmt.htm

 

2009/05: RMT 1.28 

 

2003/01: RMT 1.00 beta

 

About 6 years then... Not quite of course... When did RMT become functional ? After 1 year ? 2 years ? The problem is the 6502 RMT player is the core and it's hardest part to update because of memory/speed restrictions.

 

It's the same issue with any retro tracker I guess but even a PC only tracker takes a while to develop. It's always possible to get something working in a few weeks but for it to be usable/stable and become a standard, it would take a lot longer.

 

 

  • Like 2
Link to comment
Share on other sites

On 3/3/2021 at 11:12 AM, VinsCool said:

So I tried out some random tunes I had around to see how they got sounded like... and well I like it so far :P

Some real nice sounding tunes!

 

I can't say I hear much difference between your updated frequency table and the regular one, at least not with Ivop's noisy pillars (still using shitty headphones/speaker though) ?

 

  • Like 1
Link to comment
Share on other sites

On 3/3/2021 at 6:53 PM, ivop said:

During development of the song, you don't need to constantly LZSS compress the streams. Just push entries to a round-robin buffer

That's what I said, just not in so many words ?

Why would you want to do RMT C# player->LZSS then UnLZSS-> Pokey when you can do RMT C# -> Pokey...

On 3/3/2021 at 6:53 PM, ivop said:

that's played by a simple 6502 player that just dumps the frames to Pokey.

a Pokey.dll would be more useful ?

On 3/3/2021 at 6:53 PM, ivop said:

I did ;) But that's a no-go because it is way too much intertwined with the rest of the emulator. Then I mentioned reimplementing with Altirra as guide. That's a lot of work. After that, I also mentioned another method that might be more promising, namely a direct connection with either atari800 or Altirra. That way, you will automatically get better Pokey emulation if the emulator improves. Speed is a non-issue for so little data. And SHM, Domain Sockets or FIFO's are plenty fast for this

Of course... nobody's working on that though ?

On 3/3/2021 at 10:07 PM, ivop said:

Other projects or life got in the way ;) But I'm glad you found use in my RE efforts.

 

I did, thanks ?

  • Like 1
Link to comment
Share on other sites

7 hours ago, emkay said:

Goat Tracker seems to be the closest solution to what would be the "optimum" in music creation .

It's done for SID,  but it also points to the best "musical" features of POKEY.

 

5 hours ago, VinsCool said:

SIDWIZARD also has some great ideas for managing effects too, a bit like a mix of several methods into 1 efficient way.

https://famistudio.org/ seems nice too ?

 

I don't know if converting a tracker for a different machine is doable but It wonder how fast it would be compared to rebuilding something around RMT in C#.

 

In the end it's all about being able to modify frequencies and volumes in various ways I guess ?

 

  • Like 3
Link to comment
Share on other sites

3 hours ago, rensoup said:

Some real nice sounding tunes!

 

I can't say I hear much difference between your updated frequency table and the regular one, at least not with Ivop's noisy pillars (still using shitty headphones/speaker though) ?

 

Thank you! I'm just about to try something different, I noticed a lot of things wrong.

 

I have actually figured out a new pattern, which doesn't actually just fix the dissonance, but make me able to literally get ALL notes in-tune! ?
At least I was able to try several min7, maj7, and other funny combinations, and they all pretty much sounded great, so I have really good faith about this one!

I just freshly hacked up RMT2LZSS and currently converting many of my .rmt to test out what it sounds like.
It's very likely to make distortion basses sound off to it, but if I go with Distortion A alone, B2 up to B10 is now tuned!

All octaves, 5ths, and most intervals sound pretty good! I haven't noticed any major dissonance now, and if there is, usually vibrato will get through it.

I took another approach this time, octave based, starting from the highest pitch and descending, in perfect divisions by 2 each time until the lowest octave.
I expected more issues since it no longer matched my theorical 443.9 scale from the last time, but like everything that sounded wrong seems correct now.
That means, essentially, I could get as many notes as possible to sound nice together, and that approach worked much better. Trying to get as close as possible to existing tuning scales ultimately cause serious detune on certain notes.

I'll report back with a handful of executables later tonight :D 

[EDIT] and of course just to look like an idiot it seems like I was wrong lol, I wonder where I messed up this time... I get some serious problems with F#, but everything else seems ok so far...

Edited by VinsCool
Fuck you, F#! Always that one note...
  • Like 1
Link to comment
Share on other sites

2 hours ago, rensoup said:

https://famistudio.org/ seems nice too ?

 

I don't know if converting a tracker for a different machine is doable but It wonder how fast it would be compared to rebuilding something around RMT in C#.

 

In the end it's all about being able to modify frequencies and volumes in various ways I guess ?

haha yeah, that sounds pretty much like it!

Link to comment
Share on other sites

3 hours ago, rensoup said:

 

https://famistudio.org/ seems nice too ?

 

I don't know if converting a tracker for a different machine is doable but It wonder how fast it would be compared to rebuilding something around RMT in C#.

 

In the end it's all about being able to modify frequencies and volumes in various ways I guess ?

 

Back then, I proposed to have the "clean" Note and Pattern editor , as RMT is now. 

The instruments might need a "synthesizing tool" , to develop the resultings sounds. 

 

But it all needs the possibility of doing pitch adjustments, when the tune is running at the patterns.

It can be used to avoid cancelling, or to release from some "deaf clamped tuning" that happens due to physical restrictions. 

  • Like 1
Link to comment
Share on other sites

Gave a new attempt, and like I said in my edited message earlier... my idea turned out to not work as well as I wished :(
I got a near perfect series of octaves up to the highest pitch, but then came to the realisation... the notes weren't that great together.

Anyway I did some more changes, and pretty much just broke more things now lol
I got some good results, some bad, and some pretty catastrophic, that I also included because I deserve to be laughed at ?

I broke most of the 15khz sounds because of that, but the lower octaves sound pretty good I think.

in short: I messed up Octave 6 and 7, C and G are sharp, G is especially the worse in some tunes, it often sounds off. C seems okay in most cases, however.
In the less good results, there are parts that were caused by my manual adjustments when I made them before, and so this didn't translate too well into a different tuning table.

Did I waste my time? most likely lol

POKEY Table 64khz (Octave Pattern) v10.txt tunes tests 2.zip

  • Like 1
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...