I'm looking for sofware that allow me to play with FM (frequency modulation) synthesis, a technique which was used by synthesizers in the 80s that allow to create complex sounds out of only sine waves by using them as carriers to other sine waves. It was also implemented as phase modlation synthesis, which is functionally equivalent, from what I understood. This technique was very widely used in the 80s (and early 90s) for synthesizers, pop music and arcade games.
I'd like to be able to make my own patches and program the FM modulator how I'd like manuaally. Ideally the program would also have a library with examples of pre-parametered sounds, and would be able to be commanded by MIDI.
It must be free/libre software, for Windows or Linux or both.