Welcome to the Computer Midi keyboard! Designed by Mason Armstrong and NS Studios!
This shareware program is designed to allow you access to advanced midi functionality without the direct use of a midi controller. In the full version, you can do such things as assign properties to controllers and change them in realtime, use pitch bending/mod wheel, play upto three octaves with only your keyboard, send all notes off message to stop stuck notes, and more!

Demo limitations:
No adding custom properties or jumping to saved properties.
No changing of advanced perametors (Chorus, volume, pan, reverb, pitch bend, modulation)
No pitch/modulation benders.
No play, pause, or stop controller keys.

What are properties?
Properties are sort of sliders, in a way. They allow you to set things in realtime, such as channel, program, bank, reverb, chorus, and more.
In the full version, You can set up your own custom properties, in a file called controllers.cmk. Examples are given by default here.
The format is name,controller. For example: filter,74
Each custom property must go on it's own line.

Keys within onscreen keyboard
bottom row, z through comma: set velocity.
dot. Set stick mode of pitch bender (full version only)
slash: Set stick mode of the modulation bender (full version only)
tab and shift tab: Cycle through properties
page up and down: Adjust property
home and end: Adjust property in larger incrument
space: Send all notes off message.
F1: Send controller 117, usually play. Full version only.
F2: Send controller 116, usually record. Full version only.
F3: Send controller 118. Usually toggle metronome. (Full version only)
F5 through F8: Move to saved/favorite property (Full version only)
Shift f5 through f8: Save favorite property (Full version only)
All other keys: Send midi notes to keyboard.
Hold shift with keys: Enable sustain pedal.

http://masonasons.me/pages/cmk.php