Hello Kevin,
I think this could be done in Audacity, by mixing the
waveforms to a
final track, and viewing it. However, I think this would be somewhat
clumsy. I also think that I could do this in GNU Radio, with mixing
nodes and oscilloscope displays.
I have no experience with GNU Radio, but what you want could be patched together in
PureData [1], Csound [2] (both showing the waveform in real-time as it is played) or GNU
Octave [3]. PureData and Csound might have a steep learning-curve, if you have never used
them before, but are both quite versatile DSP "patching" languages.
KR, Dennis
[1]
https://archive.flossmanuals.net/pure-data/audio-tutorials/oscillators.html
[2]
https://cabbageaudio.com/docs/signaldisplay/
[3]
https://docs.octave.org/latest/UI-Elements.html