Synthpopalooza Posted July 4, 2022 Author Share Posted July 4, 2022 Beginnings of a title theme for ARTI ... Settings: AUDCTL=$44 (hi pass on 1 and 3, clock 1 only on 1.79, base clock is the standard 64 khz) 00 - $2x (guitar lead) 01 - $Cx (standard non mod 3 bass aka RMT E) 02 - $Ax (harmonic for 00) 03 - $Ax (standard square wave) This is distortion 2, hi pass, with a single 1.79 clock on the first channel. I have logged several guitar tables for this setting. It allows finer control of the modulation than double 1.79 ... the disadvantage is, it requires the 64 khz clock so you must use the $Cx distortion for bass sounds here. This is only a beginning, but it kinda has a heroic old west feel to it ... I will flesh this one out later. The same setting may also be useful in 15 khz mode too. arti-title.asm arti-title.s arti-title.xex 4 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 4, 2022 Author Share Posted July 4, 2022 (edited) So the challenge in logging all the hi pass settings ... is that you have 7 possible clock settings in each distortion: 15+15 64+64 1.79+1.79 1.79+15 1.79+64 15+1.79 64+1.79 Which ones are useful depend on your distortion settings, but in most cases, the frequencies follow this rule: Channel 1's value is from that distortion's note table for the clock set on that channel. Channel 3's value is from the $Ax note table corresponding to that channel's clock The two channels maintain a frequency ratio and harmonic for each possible note table. The $Ax distortion played in 3 will add a harmonic (octave, 4th, 5th, etc.) The exceptions come in the $Ax double 1.79 croissant mode, and any others that depend on 1.79 in 3 channel, because the modulating frequencies are ultrasonic. This will make frequency tables easy to log. When combining 2 and 4 channels, it is only the 15 or 64 clock that is a factor here Edited July 4, 2022 by Synthpopalooza 2 Quote Link to comment Share on other sites More sharing options...
Mathy Posted July 4, 2022 Share Posted July 4, 2022 Hello Synthpopalooza Sorry if this is a stupid question. I know nothing about music and my memory is even worse... No 15 + 64 and 64 + 15? Sincerely Mathy Quote Link to comment Share on other sites More sharing options...
VinsCool Posted July 4, 2022 Share Posted July 4, 2022 26 minutes ago, Mathy said: Hello Synthpopalooza Sorry if this is a stupid question. I know nothing about music and my memory is even worse... No 15 + 64 and 64 + 15? Sincerely Mathy I can answer to this one. Basically, 15khz and 64khz are 2 different clocks, they cannot be used together at the same time since Bit 0 of the AUDCTL register sets the clock speed, and as such, it could only be one or the other. The only exception applies to the 1.79mhz clock speed, which could be used in the channels 1 and 3, alongside of 15/64khz, and the channels clocked faster will take priority regardless of the base clock speed initially set. If the joined 16-bit mode is also set, as long as the 1.79mhz clock is set in the linked channels, they will also take priority over the main clock. 1 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 5, 2022 Author Share Posted July 5, 2022 (edited) 1 hour ago, Mathy said: Hello Synthpopalooza Sorry if this is a stupid question. I know nothing about music and my memory is even worse... No 15 + 64 and 64 + 15? Sincerely Mathy To add to the response above: Having 1.79 clocks on two channels independent of the base clock is a distinct advantage. For example: Let's say you want to use one of the 15khz basses, like the $Ax one. To get your high end, you can set 1.79 on 1 and/or 3, and use the 2 or C distortions to cover this. In addition, as stated above, the 7 combinations are only in the event of using 1 and 3 in hi pass. 2 and 4 can also be combined, but as 1.79 is not available on these, your only options there are either the 15 or 64 base clocks, which will be the same on both. Then there's the 64-bit megachannel trick (I used it on the Metroid Krayt double POKEY tune), done by setting 16-bit on both channels, and having one 16-bit channel filter the other. I haven't dived deeply into it yet, but it's the same concept, 7 clock channel combinations are possible. Edited July 5, 2022 by Synthpopalooza 1 Quote Link to comment Share on other sites More sharing options...
VinsCool Posted July 5, 2022 Share Posted July 5, 2022 To add even further to the response above, it is also possible to combine 16-bit with any of the combinations, and channel 2 or 4 could be used the same way, making them able to be filtered as ch 1+2 being the carrier, and ch4 the modulator, or the opposite, ch2 the carrier, and ch 3+4 being the modulator. And those also can be used with no limitation without the 1.79mhz clock when they are joined. In this case, they will be clocked by either 15/64khz, and the pitch generated will use the exact same formula, with only a few variables being offset due to the cycles difference that has to be taken into account. I think that goes without saying, once a pattern was identified by hand, coming up with the actual maths to procedurally generate them at a known constant pattern cycle will be incredibly valuable for using the chip with advanced sound synth capabilities. I do have a handful of those formulae fully documented, and a lot more is to come, much of which would not have been possible without the hard work synthpopalooza has put into the researches Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 5, 2022 Author Share Posted July 5, 2022 The one formiddable setting that may test this theory: SKCTL=$8B $4x 1.79 modes. I still need to catalog both of them, and nowhere near done yet. It's like a swiss army knife of note tables in there, and a lot of them don't have a discernible pattern yet. 1 Quote Link to comment Share on other sites More sharing options...
VinsCool Posted July 5, 2022 Share Posted July 5, 2022 I have had no luck with those either so far, only found what looked like a potential divisor pattern, but no way to truly predict them as far as I did my own research on them. This is a great example why identifying a pattern could be a really good thing: a lot of tables could then be generated with no more effort than feeding a few numbers to a formula and output the resulting pitch calculated with them. I definitely will go dive deep back into this now that I have been able to do all the other things I wanted to finish this month, haha Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 5, 2022 Author Share Posted July 5, 2022 The complexity of these modes is mainly due to the modulo combinations (3,5,15,31 for 64 khz, or 5,15,31 in 15 khz) which are present in both channels. This creates a multitude of note tables on it's own. 1 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 14, 2022 Author Share Posted July 14, 2022 So I finished the A.R.T.I. title theme. As above, uses AUDCTL=$44, single 1.79 on first channel only, $2x + $Ax distortion, hi pass. I think it sounds very heroic! I had to tweak the note tables a bit to get the perfect swirling effects on some of the notes. arti-title.asm arti-title.s arti-title.xex 3 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 14, 2022 Author Share Posted July 14, 2022 (edited) Beginnings of the title theme to Metroid. Setup: POKEY 1: AUDCTL=$78 (standard 1.79 plus 16-bit on 0+1, and on 2+3) SKCTL=$03 (no special settings) $00 and $01: $Ax 16-bit square wave - bass $02 and $03: $Ax 16-bit square wave - accompaniment POKEY 2: AUDCTL=$40 (1.79 on first channel) SKCTL=$8B (two-tone mode) $00: $Ax - high pitched saw wave, modulation for two tone $01: silent - high pitched saw wave, frequency carrier for two tone $02: $8x - noise percussion, 8-bit channel $03: unused By rolling the modulation frequency on first channel of POKEY 2, the eerie echoing effects of the high pitched saw wave on the NES original can be simulated. This only has the first 3/4 of the theme ... the rest will be finished at a later date when I am not pressed to get into bed for work, lol. For best results, listen to this on a double POKEY system, set to mono, not stereo. Also another caveat: Some versions of PokeyMax, as well as Altirra versions between 3.20 and the current Altirra, will not play the two-tone channel properly (the current Altirra has fixed this problem). @phaeron: Anyway you can add double POKEY mono playback to the next Altirra release? My ultimate goal is a recreation of the entire Metroid soundtrack in double POKEY setup ... as a demonstration of what double POKEY can do in playing NES music. metroid-title-dblpokey.asm metroid-title-dblpokey.obx metroid-title-dblpokey.s Edited July 14, 2022 by Synthpopalooza 2 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 18, 2022 Author Share Posted July 18, 2022 I revisited this a couple of days ago: As a recap: Setting 15khz mode and using C distortion makes a stable bass, and the waveform changes depending on which channel you play the note in. The interesting part is: Channels 1 and 4 play the inverse waveform of each other. If you delay the note in one channel in just the right way, you can get some interesting phase cancellation effects. I tested this out on my own and it definitely works, but some more experimentation in this area is clearly called for ... 2 Quote Link to comment Share on other sites More sharing options...
emkay Posted July 19, 2022 Share Posted July 19, 2022 You can do that? It's mostly 2 channels with some 3 channel added chord , which shouldn't be a problem with polycounter basses. So 2 channel at 16 bits ? Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 20, 2022 Author Share Posted July 20, 2022 (edited) What I was speaking of in the above post, was setting AUDCTL=$01, for 8-bit on all four voices, and using C distortion. Unlike standard 64khz clock, where mod 3 frequencies are buzzy/unstable and the other ones are more harsh, 15khz clock makes all frequencies (except for mod 5 which is silence) the buzzy ones, and they are stable. The waveform returned depends on the frequencies, and what channel you play in. 1. either a 60% duty cycle (11000), or an irregular pattern (01001), dependent on frequencies 2. the same, but the frequencies are switched 3. always 20% duty cycle (10000) regardless of frequency 4. inverted waveform of 1 (00111 or 10110) So what this means is, to play the same frequency in 1 and 4 simultaneously, introduces phase cancelling effects. How much of the phase gets cancelled depends on how many cycles delay between playing the frequency on channel 1 and the same one on channel 4. Edited July 20, 2022 by Synthpopalooza 2 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 20, 2022 Author Share Posted July 20, 2022 In regards to double 16-bit: Yes, and it's of particular advantage in double POKEY. The C and A distortions can be used for the entire range of A0 up into the 8th octave, without tuning errors ... this also includes the mod 3 less buzzy distortions (aka RMT C) as well. So basically 4 16-bit channels, perfect tuning, more than capable of equalling the NES. 2 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted July 20, 2022 Author Share Posted July 20, 2022 (edited) Also when converting NES music: The NES has a Triangle wave (which converts nicely to $Ax wave, or $Ax two-tone on higher notes), and three pulse waves: 50% square, 25% rectangle, 75% rectangle. For double POKEY, $Ax distortion works for the 50% waves, the other two can be handled in C distortion. The mod 3's make it sound a bit brighter, but with some wave instability due to polycounters. The non mod 3's make a really bright wave, making the sound more harsh and aggressive. You can then use an 8-bit channel on the second POKEY at $8x for noise, or at $4x for those buzzy sounds on that NES channel. This leaves still an 8-bit channel free for SFX. Edited July 20, 2022 by Synthpopalooza 1 Quote Link to comment Share on other sites More sharing options...
Ecernosoft Posted August 11, 2022 Share Posted August 11, 2022 just wow. The Pokey is really starting to rival the SID, if not beat it. Just that the SID has nicer Sawtooth and Triangle pulses, as well as a real highpass, but the POKEY has those, an extra voice, and real volume channels on all 4 voices! Soo much stuff with the POKEY.. Imagine the music tracks! 1 Quote Link to comment Share on other sites More sharing options...
emkay Posted August 11, 2022 Share Posted August 11, 2022 1 hour ago, Ecernosoft said: just wow. The Pokey is really starting to rival the SID, if not beat it. Just that the SID has nicer Sawtooth and Triangle pulses, as well as a real highpass, but the POKEY has those, an extra voice, and real volume channels on all 4 voices! Soo much stuff with the POKEY.. Imagine the music tracks! Not sure if those incapable Mods will show this , but POKEY don't need to "start" beating SID, as SID wasn't available in 1979... Quote Link to comment Share on other sites More sharing options...
Albert Posted August 11, 2022 Share Posted August 11, 2022 Just now, emkay said: Not sure if those incapable Mods will show this , but POKEY don't need to "start" beating SID, as SID wasn't available in 1979... I have to ask, why are you such an asshole? ..Al 2 2 1 Quote Link to comment Share on other sites More sharing options...
emkay Posted August 11, 2022 Share Posted August 11, 2022 Just now, Albert said: I have to ask, why are you such an asshole? ..Al Sorry, but I'm not the cause for your false recognition. Did you see the latest software for the Atari? It's a part of my comunication which you were surpressing without any evidence. You are supporting the assholes and surpess the developers. Quote Link to comment Share on other sites More sharing options...
emkay Posted August 11, 2022 Share Posted August 11, 2022 24 minutes ago, Albert said: I have to ask, why are you such an asshole? ..Al You are really fascinating. Come on, you were a C64 freak. Atari is only some base for earning money. Knowing nothing about the great 8 bits, you were just leaded to judge for assholes that pay for your live, isn't it ? Quote Link to comment Share on other sites More sharing options...
Albert Posted August 11, 2022 Share Posted August 11, 2022 Well, that's about enough abuse from you. ..Al 1 2 2 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted August 12, 2022 Author Share Posted August 12, 2022 OK then ... Meanwhile ... back to the topic at hand: I am a bit closer on Distortion 4 @1.79 mhz, two tone mode @15khz. Just a few more frequencies to bleed my ears with thankfully. This one and the companion 64khz have taken more than a year to finish, due to their complexity. 1 Quote Link to comment Share on other sites More sharing options...
Synthpopalooza Posted August 12, 2022 Author Share Posted August 12, 2022 6 hours ago, Ecernosoft said: just wow. The Pokey is really starting to rival the SID, if not beat it. Just that the SID has nicer Sawtooth and Triangle pulses, as well as a real highpass, but the POKEY has those, an extra voice, and real volume channels on all 4 voices! Soo much stuff with the POKEY.. Imagine the music tracks! It's a mixed bag really ... the SID can do some things POKEY can't, and vice-versa. The real thing with POKEY is that there are a lot of settings that haven't even been touched yet, plus the SKCTL two-tone mode, originally designed for Cassette I/O, has some unintended musical applications as well. It's really crazy ... 3 Quote Link to comment Share on other sites More sharing options...
rdefabri Posted August 12, 2022 Share Posted August 12, 2022 10 hours ago, Synthpopalooza said: It's a mixed bag really ... the SID can do some things POKEY can't, and vice-versa. The real thing with POKEY is that there are a lot of settings that haven't even been touched yet, plus the SKCTL two-tone mode, originally designed for Cassette I/O, has some unintended musical applications as well. It's really crazy ... As someone very into sound synthesis (and owner of a few classic synths from the 70's / 80's), SID is really solid for music and true analog synthesis. IMHO, it can't touch POKEY for the sound effects, you typically see that when you compare the same game on the two platforms. Each has their own strength, but from a synthesis perspective, POKEY has shown it's no slouch, and the settings that many here have uncovered really opened my eyes - it's far better than I once thought and I think there's more to come. 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.