Offline

hi all,

does anyone know exactly how many clock transitions there are in relation to BPM?

it seems to be 24, is that right?

Offline
Sweeeeeeden

24 indeed. You can actually figure this out in the program. 1 step (with the default groove) is 6 ticks. That's what the groove function does, counts ticks. 1 step=1/16. 4 steps=1/4. 4*6=24.

Offline
nitro2k01 wrote:

24 indeed. You can actually figure this out in the program. 1 step (with the default groove) is 6 ticks. That's what the groove function does, counts ticks. 1 step=1/16. 4 steps=1/4. 4*6=24.

ah cool smile

i was a bit unsure because i would have thought it would be a binary multiple, so i thought it would be 8 or 16,

but thanks for that, no to start on my new idea!

Offline
Los Angeles

This must be related to the limitations of the GB right? Or is this just a convenient way to sequence notes? (Or maybe both hand in hand?). Is there some principle here that relates to the CPU clock?

Offline
Sweeeeeeden
tadashibashi wrote:

This must be related to the limitations of the GB right? Or is this just a convenient way to sequence notes? (Or maybe both hand in hand?). Is there some principle here that relates to the CPU clock?

There is nothing here that is limited by the GB CPU or the CPU operating frequency. The number of 24 ticks per quarter note comes from MIDI, where the standard stipulates that 24 timing pulses should be sent per quarter note, so called 24 PPQ. It was convenient to use this system here because it makes external MIDI sync easy.

The hardware timer of the Gameboy CPU only works in integer divisions of 4096, 16384, 65536 and 262144 Hz (selectable). When using the hardware timer naively, you wouldn't get perfect BPM values. LSDj solves this by switching back and forth between different timer settings to keep the average long term BPM near the desired value.

Offline
Los Angeles

@nitro2k01
Right, I totally forgot about PPQ, thanks that was really helpful.

The reason why I'm looking into these things is that I'm trying to emulate the surface sound of the GB in Max/MSP, manipulated by MIDI (so I guess I don't need to worry about the CPU, unless I want to be more authentic, which I do). So far I'm using the GB>Hz pitch values and a 32x16 wavetable, 512 samples 44.1kHz rate, portamento, and am working on vibrato. Do you know what other processes of the GB that would be worth emulating to get a somewhat closer-to-authentic sound before I execute these things? (I know this is off topic, can you possibly send me a PM?)