Choose a binary message and try to draw the modulated signal. Then let Javascript do it for you, and see if they agree.

Specify the number of amplitudes, frequencies, and phases to use. The program will multiply those to get the number of combinations, and round down to a power of two. It will choose some specific values of amplitude, frequency, and phase, and assign bit patterns to each combination, so its answer is by no means the only correct one.

If you make the problem larger than some arbitrary limits, the code pouts and refuses to draw anything.