Sync-buzzer technique

All about chiptunes

Moderators: Mug UK, lotek_style, Moderator Team

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1945
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Sync-buzzer technique

Postby Steven Seagal » Sun Apr 23, 2017 9:21 am

Wonder about this because it causes emulation problems.
Does anyone know how the hardware produces the wave we hear?
Must the tone period be null?
Sorry I only know one case: info screen in Nostalgia. If someone could point to some other examples it would be appreciated.

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1945
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Sync-buzzer technique

Postby Steven Seagal » Mon May 01, 2017 11:08 am

Nobody? Not even examples?

User avatar
troed
Atari God
Atari God
Posts: 1197
Joined: Mon Apr 30, 2012 6:20 pm
Location: Sweden

Re: Sync-buzzer technique

Postby troed » Mon May 01, 2017 11:13 am

Are the answers in here possibly?

https://www.youtube.com/watch?v=06ltXd-FrSM

/Troed

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1945
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Sync-buzzer technique

Postby Steven Seagal » Sat May 06, 2017 4:41 pm

Well, it's interesting but not technical.
For example he doesn't mention if tone period needs be zero like in the song I mentioned.

distantminds
Atari maniac
Atari maniac
Posts: 93
Joined: Thu Sep 29, 2005 5:03 pm

Re: Sync-buzzer technique

Postby distantminds » Sat May 06, 2017 7:11 pm

In the vid Gwem explains the relationship between the period and the resultant sound. You see him detuning the period vs the timer frequency.

So no - the period doesn't need to be zero, and modulating the period (decoupled from the timer frequency) is the gateway to awesome sounds!

Setting the period to zero is done to reset the cycle as mentioned in the other thread currently floating about the forum and Gwem's alive magazine article

http://alive.atari.org/alive9/ymsamp.php

mlynn1974
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 123
Joined: Mon Mar 03, 2008 10:33 pm
Contact:

Re: Sync-buzzer technique

Postby mlynn1974 » Sat May 06, 2017 11:58 pm

Please correct me if I am incorrect, but does the music by Lotus (Synth Dream) use these effects?
The notable game using his music was Monster Business.

His music was used in some intros by Cynix.

I don't know the technical details but I seem to remember that something was done to make Synth Dream sound correct in YM format YM6.
Last edited by mlynn1974 on Mon May 08, 2017 11:42 am, edited 1 time in total.
Still got, still working: Atari 4Mb STe, 520STFM, 2.5Mb STF.
Hardware: Cumana CSA 354, Ultimate Ripper, Blitz Turbo, Synchro Express II (US and UK Versions).

User avatar
Steven Seagal
Atari God
Atari God
Posts: 1945
Joined: Sun Dec 04, 2005 9:12 am
Location: Undisclosed
Contact:

Re: Sync-buzzer technique

Postby Steven Seagal » Sun May 07, 2017 6:59 am

Right, I wonder if maybe I wasn't asking the good question. In Nostalgia/Info screen, period of channel A is maintained at 0 and sound (the sweeping wave) is produced by changing the envelope (unless I got it wrong).

https://www.youtube.com/watch?v=h5x1hWBexG8

EDIT In fact Nostalgic-O-Demo
Also there's non null period at some note attacks, but most of the time it is 0.

User avatar
BenOVR
Atariator
Atariator
Posts: 25
Joined: Wed Nov 02, 2016 7:54 pm
Contact:

Re: Sync-buzzer technique

Postby BenOVR » Sun May 07, 2017 12:13 pm

The null period in the tone register is used to reduce the amplitude of the signal by 2. It's a a pulse at 125khz on top of the envelop and the lowpass filter do the trick. It's used to have a pseudo volume control for the buzz instrument. Mostly used to give an attack to the instrument.

Have a look at it



Full playlist


mlynn1974
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 123
Joined: Mon Mar 03, 2008 10:33 pm
Contact:

Re: Sync-buzzer technique

Postby mlynn1974 » Sun May 07, 2017 1:35 pm

I don't know if this helps:
http://leonard.oxg.free.fr/ymformat.html

Sync-Buzzer I think this is one of the coolest special effect, with SID-Voice. It was used first by the musician TAO. Sync-Buzzer uses an external CPU interrupts to write values in the Envelope shape register. (YM2149 register 13). As you probably know, writing in r13 set the new shape waveform AND reset the envelope ! So you can produce some very nice sound effect.
Still got, still working: Atari 4Mb STe, 520STFM, 2.5Mb STF.
Hardware: Cumana CSA 354, Ultimate Ripper, Blitz Turbo, Synchro Express II (US and UK Versions).

distantminds
Atari maniac
Atari maniac
Posts: 93
Joined: Thu Sep 29, 2005 5:03 pm

Re: Sync-buzzer technique

Postby distantminds » Sun May 07, 2017 3:59 pm

Sorry Steven I confused matters there - in the vid Gwem detunes the buzzer envelope period, not the note period.

That's really interesting information from Ben/OVR, about the effect iof the null period. In the emulator (Hatari) I don't hear any difference between a period of 0 and muting the square on the channel with the relevant mixer bit - in a sync buzzer context I mean..

User avatar
BenOVR
Atariator
Atariator
Posts: 25
Joined: Wed Nov 02, 2016 7:54 pm
Contact:

Re: Sync-buzzer technique

Postby BenOVR » Sun May 07, 2017 4:19 pm

That's because Hatari 2.0 is generating the soundwave at 44khz directly so it can't generated the 125khz signal. It's possible to trick it. I think that's what winjam does (or did a long time ago when I spoke to Tao). The devel version of Hatari however should fix that. sc68 does that properly. It's possible to disable it to compare by using the pulse engine and setting the filter to none. It's not specific to sync buzzer. It can be use with anything that does not need the tone generator. Digit / Noise only / Envelop based sound (classic Lotus buzz or syncbuzz without ring modulation). To my knowledge It was first used by Big Alec in some of the Offbeat tunes.

distantminds
Atari maniac
Atari maniac
Posts: 93
Joined: Thu Sep 29, 2005 5:03 pm

Re: Sync-buzzer technique

Postby distantminds » Sun May 07, 2017 4:49 pm

Thanks alot Ben,

it's really interesting to me as, while i was reading, i remembered I'd infact seen this behaviour to a degree in hatari - so I quickly checked on a regular pure buzzer sound, and sure enough, if i set the period to zero, i hear a very small reduction in level on a pure envelope based buzzer! But it's quite a small reduction, not half the level (to my ear).

so I wonder if i'm running the devel version of Hatari :oops:

and I also wonder why my Sync buzzer routines don't seem to behave any differently if I set the period to zero, well, any difference from the sound I get by just muting the square :)

distantminds
Atari maniac
Atari maniac
Posts: 93
Joined: Thu Sep 29, 2005 5:03 pm

Re: Sync-buzzer technique

Postby distantminds » Sun May 07, 2017 4:55 pm

p.s

Ben these Jess conversions on youtube are really cool - some of the instruments sound crazy! what's the story behind them?

User avatar
BenOVR
Atariator
Atariator
Posts: 25
Joined: Wed Nov 02, 2016 7:54 pm
Contact:

Re: Sync-buzzer technique

Postby BenOVR » Sun May 07, 2017 5:23 pm

Half the level is -3db. In YM scale it's 2 levels so basically a normal buzz is at volume level 15 a half buzz is at volume level 13.

Teddy bear story in short: Jess composed these modules for an Amiga game (Stywox) in 1993. The game was abandoned. In 2015 I remembered those were 3 channels so I decided to convert them to the Atari. I wrote a program to convert the mod to ASM data and a asm mod player. Later I rewrote the player in C in order to use it as a soundlab. I have a lot of sound I want to code for years. Designing new sound is hard and very much less fun without a music to support it. I'm trying to motivate Jess from time to time. Meanwhile I do covers.

Gunstick
Captain Atari
Captain Atari
Posts: 258
Joined: Thu Jun 20, 2002 6:49 pm
Location: Luxembourg
Contact:

Re: Sync-buzzer technique

Postby Gunstick » Sun Jun 04, 2017 9:59 pm

Hi...

so this got me investigating. Wrote a program to find all the -3db envelope tricks in Big Alec''s collection. So he used it already in PYM. Good to hear on the little reverb in Sickest So Far. Yeah, echo on the buzzer.

georges@tardis:~/Music/sndh_lf/Big_Alec$ sndhfindpat.sh halfvolume-buzz *sndh
A_Case_For_Two.sndh
Crystal_Clear_(Mega_Leif).sndh
Locomotion.sndh
No_Second_Prize.sndh
PYM-Isido_Way_Of_Stones.sndh
PYM-Main_Menu_Chip.sndh
PYM-Main_Menu.sndh
PYM-Sickest_So_Far.sndh
Sanxion_Loader_(digi).sndh
Sanxion_Loader.sndh
Structure.sndh
Twilight_Beyond.sndh

Buzzer echo...
georges@tardis:~/Music/sndh_lf/Big_Alec$ sc68-visual.sh --ym-chans=1 PYM-Sickest_So_Far.sndh
[...]

Code: Select all

000182 0000EBF900 00-00-..-..-..-..-..-37-10-..-..-C0-..-0C #  40064 000'V             00 00C0~/|/|/ 6
000183 0000EC9580 ..-..-..-..-..-..-..-3F-..-..-..-..-..-.. #  40064 000 V             -- 00C0 /|/|/ 1
000187 0000EF0780 ..-..-..-..-..-..-..-3E-..-..-..-..-..-.. # 160256 000.V             -- 00C0 /|/|/ 1
000188 0000EFA400 ..-..-..-..-..-..-..-37-..-..-..-..-..-0C #  40064 000'V             00 00C0~/|/|/ 2
000189 0000F04080 ..-..-..-..-..-..-..-3F-..-..-..-..-..-.. #  40064 000 V             -- 00C0 /|/|/ 1
00018D 0000F2B280 ..-..-..-..-..-..-..-3E-..-..-..-..-..-.. # 160256 000.V             -- 00C0 /|/|/ 1
00018E 0000F34F00 ..-..-..-..-..-..-..-37-..-..-..-..-..-0C #  40064 000'V             00 00C0~/|/|/ 2
00018F 0000F3EB80 ..-..-..-..-..-..-..-3F-..-..-..-..-..-.. #  40064 000 V             -- 00C0 /|/|/ 1
000193 0000F65D80 ..-..-..-..-..-..-..-3E-..-..-..-..-..-.. # 160256 000.V             -- 00C0 /|/|/ 1
000194 0000F6FA00 ..-..-..-..-..-..-..-36-..-..-..-..-..-.. #  40064 000!V             00 00C0 /|/|/ 1
000195 0000F79680 ..-..-..-..-..-..-..-3E-..-..-..-..-..-.. #  40064 000.V             -- 00C0 /|/|/ 1
00019A 0000FAA500 ..-..-..-..-..-..-..-37-..-..-..-80-..-0C # 200320 000'V             00 0080~/|/|/ 3
00019B 0000FB4180 ..-..-..-..-..-..-..-3F-..-..-..-..-..-.. #  40064 000 V             -- 0080 /|/|/ 1
00019F 0000FDB380 ..-..-..-..-..-..-..-3E-..-..-..-..-..-.. # 160256 000.V             -- 0080 /|/|/ 1


A little bit about my sc68 dump visualizer:

Code: Select all

000 V means envelope only
000.V means envelope plus 125kHz (so that's attenuated)
000!V means there's also noise
000'V means there is noise, but tone is off

Gunstick
Captain Atari
Captain Atari
Posts: 258
Joined: Thu Jun 20, 2002 6:49 pm
Location: Luxembourg
Contact:

Re: Sync-buzzer technique

Postby Gunstick » Sun Jun 04, 2017 10:28 pm

I have no idea what he does here. Shape zero, is just a ramp down. But it does not sound like that.
Maybe that' his way to turn the channel off without producing nasty artefacts? And the baseline is the triangle shape tone buzzer.

Code: Select all

georges@tardis:~/Music/sndh_lf/Big_Alec$ sc68-visual.sh --ym-chans=1 Structure.sndh
000000 0000000000 EE-0E-..-..-..-..-..-36-..-..-..-..-..-.. #      0 EEE!0             00       3
000002 0000013900 82-07-..-..-..-..-..-3E-10-..-..-3C-..-0E #  80128 782.V             -- 003C~/\/\/ 6
000005 0000030E80 00-00-..-..-..-..-..-..-..-..-..-00-..-00 # 120192 000.V             -- 0000~\____ 4
000008 000004E400 82-07-..-..-..-..-..-..-..-..-..-3C-..-0E # 120192 782.V             -- 003C~/\/\/ 4
00000B 000006B980 00-00-..-..-..-..-..-..-..-..-..-00-..-00 # 120192 000.V             -- 0000~\____ 4
00000E 0000088F00 82-07-..-..-..-..-..-..-..-..-..-3C-..-0E # 120192 782.V             -- 003C~/\/\/ 4
000011 00000A6480 00-00-..-..-..-..-..-..-..-..-..-00-..-00 # 120192 000.V             -- 0000~\____ 4
000014 00000C3A00 82-07-..-..-..-..-..-..-..-..-..-3C-..-0E # 120192 782.V             -- 003C~/\/\/ 4
000017 00000E0F80 00-00-..-..-..-..-..-..-..-..-..-00-..-00 # 120192 000.V             -- 0000~\____ 4
00001A 00000FE500 C2-03-..-..-..-..-..-..-..-..-..-0F-..-0E # 120192 3C2.V             -- 000F~/\/\/ 4
00001D 000011BA80 00-00-..-..-..-..-..-..-..-..-..-00-..-00 # 120192 000.V             -- 0000~\____ 4
000020 0000139000 82-07-..-..-..-..-..-..-..-..-..-1E-..-0E # 120192 782.V             -- 001E~/\/\/ 4
000023 0000156580 00-00-..-..-..-..-..-..-..-..-..-00-..-00 # 120192 000.V             -- 0000~\____ 4
000026 0000173B00 82-07-..-..-..-..-..-..-..-..-..-1E-..-0E # 120192 782.V             -- 001E~/\/\/ 4


Social Media

     

Return to “Ym rockin'”

Who is online

Users browsing this forum: No registered users and 2 guests