Music Construction Set (MCS) is a music composition notation program. It was originally developed in 1983 for the Apple II, and quickly ported to other systems of the era. It was designed and developed by Will Harvey and published by Electronic Arts. Harvey designed and programmed the original Apple II version of the game in assembly language when he was 15 and in high school.
Though it is entertainment software, strictly speaking it is not a game, though it is often lumped together with them. It is also considered edutainment since users could learn a bit about music notation by using it.
Music Construction Set was a prototype for much of today's scorewriting software.
With MCS, the user can create musical composition using a graphical user interface, a novel concept for the era of its release. Users could drag and drop notes right onto the staff, play back their creations and print them out. The program came with a few popular songs as samples.
Most versions of this program required the users to use a joystick to create their songs, note by note.
Though novel, the music creation process was cumbersome due to the fairly primitive input mechanisms of early home computers. Also, the Apple II and PC had very limited native sound production capabilities. However the Atari 400 and 800 computers have 4 voice onboard sound generation via their custom-chip set which is fully supported by the Atari 8-bit version of the program.
However, the program took advantage of advanced equipment for those who had it. For example, the IBM PC version allowed the user to output audio via the IBM PC Model 5150's cassette port, so they could send 4-voice music to their stereo. The same program also took advantage of the 3-voice sound chip built-in to the IBM PCjr and Tandy 1000. The Apple II version supported the expansion card Mockingboard for higher fidelity sound output. In addition, use of the Mockingboard allowed the musical staff to scroll along with the music as notes were played. Without it, the Apple II needed nearly every spare CPU cycle to produce audio, and as such couldn't update the display while playback was in progress.