Sound libraries PSG/FM

By Metalion

Paragon (1204)

Metalion's picture

27-08-2020, 14:07

Hi,

I've searched the web (here and there) for sound libraries for the PSG and MSX-Music, but found none ... Specifically, I'm looking for interesting user sounds for MSX-Music, and percussion sounds done on the PSG (hi-hat, snare, drum ...). In both cases, looking for soundship registers and parameters used to create the sound.

Login or register to post comments

By ToriHino

Hero (592)

ToriHino's picture

27-08-2020, 14:47

I used some PSG drum sounds in RoboPlay (settings taken over from MoonBlaster):

https://gitlab.com/torihino/roboplay/-/blob/master/players/m...

Check for the global table g_psg_drums and it's usage in the mbm.c file.

By Metalion

Paragon (1204)

Metalion's picture

27-08-2020, 16:42

Thanks, I found this under "g_psg_drums":

        { 5, 3, { {0, 0xB3}, {1, 0x06}, {7, 0xBE} }, 15 },
        { 6, 2, { {6, 0x13}, {7, 0xB7}, {0, 0x00} }, 14 },
        { 6, 2, { {6, 0x09}, {7, 0xB7}, {0, 0x00} }, 14 },
        { 4, 3, { {0, 0xAD}, {1, 0x01}, {7, 0xBE} }, 14 },
        { 4, 3, { {0, 0xAC}, {1, 0x00}, {7, 0xBE} }, 14 },
        { 5, 2, { {6, 0x00}, {7, 0xB7}, {0, 0x00} }, 14 },
        { 5, 2, { {6, 0x01}, {7, 0xB7}, {0, 0x00} }, 13 }

I guess that {x,0xhh] indicates the value 0xhh written to the PSG register R#x, but what are the other numbers ?

The last value of each line could be the volume, but the first 2 values ?
Is this an indication of time ?

EDIT : I found the structure of the data :

    uint8_t psg_count;
    uint8_t data_size;
    uint8_t data[3][2];
    uint8_t psg_volume;

Therefore the first value is indeed an indication of time, the second value is the size of data (registers and values), and the last is indeed the volume.

By Metalion

Paragon (1204)

Metalion's picture

27-08-2020, 20:55

BTW, it's rather strange. I thought I would find PSG sounds everywhere on the web (since Spectrum, Atari ST and other computers used it). Experiments, percussions, new ways of designing sounds, ... But nothing !

Same goes for MSX Music (FM).
No one designed user sounds and shared them ?

By Parn

Hero (607)

Parn's picture

27-08-2020, 21:30

For MSX-Music, I fear the biggest problem is the lack of an unified way of describing custom sounds. Some just use a dump of the first 8 registers. Some describe the values of each parameter separately, in their own way. FM-Basic has its own way to describe them. I prototyped a graphical tool for MSX2 dedicated to creating MSX-Music custom instruments, but didn't get around to write its functional part. My intention was that it was able to import and export instruments in the following formats:

  • 8-byte register dump
  • 32-byte FM-Basic format
  • .FTI FamiTracker instrument