As someone who enjoys playing old synths, you may have run across this problem before. Your synth only comes with an audio mono out (like the Casio VL-tone).
For monophonic synths, the conversion should be quite easy to write e. g. in Max4Live or puredata etc.
Values that need to be set before use:
1) Highest note of synth (100 % R)
2) Lowest note of synth (0 % R)
These are the endpoints of a linear graph y = k . x on the Oct/Volt system.
If you play a note, an analyser (e.g. FFT) reads the Hz value, which is then fed into a sidechain for the panning. Depending on where you want to hear the synth, you may want to create the illusion that the synth player stands e.g. to the right, so you would use the entire synth note range in 50-100% R of your soundscape. Or, if you want to make the synth appear very broad or only e.g. use one of three octaves, you may want to pan the synth up to 0-300% width, for example.
This (monophonic) solution works for any frequencies within the specified range, which is nice if you have specific, or not well-tempered, tuning settings, like in DAFs Der Räuber und der Prinz.
For polyphonic synths, the conversion gets more complicated. The general settings are the same as previously.
Ideally, you would then need to make a sample dump from your synth onto your DAW of preference or, if the synth only has a 3.5 mm jack out, find e. g. a MIDI instrument that is an exact copy of your synth's sound. In that case, the commands would need to be translated e. g. to MIDI CC messages.
When a chord is played, you would send it to an FFT (this function is available e. g. in puredata). The Hz value is then used for calculating the panning for each note, as above. The amplitude is used to recreate the correct intensity. Each signal triggers the corresponding sound from the sample dump. Latency may be an issue, but could be fixed after playing by moving the sidechain track just a tiny bit forward (which an algorithm would be smart enough to do at the precise position).
The polyphonic solution would be synth-specific and limited to the discrete Hz values of the synth you are playing, unless you recreate the entire s o u n d, e. g. in puredata, without any limitations on which Hz you feed the algorithm.
There may be better solutions if the synth can speak MIDI. However, there are a few synths out there which are polyphonic with an audio-only mono out that are covered by the outlined strategy. Another issue may be that some synths existed before the dawn of MIDI. In this case, sample dumping may provide tedious.
If you would like to start working on this plugin, I won't stop you.
Of course, there are less elegant ways to create an illusion of stereo. For just a few notes, another idea is to record each note separately and then arrange them spatially wherever you like. But there is some joy in working in a 'stilren' way, as the Swedes would say.