Lab Assignment 01

Due: Thursday, February 1st via Blackboard

The assignment has two parts:

In part one, you are to create a max patch (a module) that transforms the computer keyboard into a MIDI keyboard. Your patch needs to contain the following characteristics:

  1. The top of the patch should have a comment with your full name and the date.
  2. A separate key must be used to trigger each chromatic pitch (C, C#, D, etc...).
  3. The user must be able to switch to at least two other adjacent octaves via the keyboard.
  4. The user must be able to switch between five different velocity layers.
  5. The module must be able to be turned on and off.
  6. Finally, turn the patch into an abstracted patch, so that it can be used in other situations

In part two, you create a simple MIDI harmonizer effect. Use the abstracted patch to test your patch. This patch needs the following characteristics:

  1. Add two pitches to the incoming MIDI stream
  2. Have the ability to turn off the effect

This link contains two patches with the descriptions and a few basic object suggestions: lab_assignment01.zip

Note: the patcher needs to function properly, of course, but appearance and programming style are also important. Use comments, hide and/or use segmented and/or colored patch cords, align objects, etc.

MIDI Notes

octave #Note Numbers
cc#d d#eff#gg#aa#b
-1 01 2 3 45 67891011
0121314 1516171819202122 23
1242526272829303132333435
2363738394041424344454647
348495051525354 5556575859
4606162636465666768697071
5727374757677787980818283
6848586878889909192939495
796979899100101102103104105106107
8108109110111112113114115116117118119
9120121122123124125 126127

ASCII Key Codes

CharOctalDecHexDescription
SP403220Space
!413321Exclamation mark
"423422Quotation mark (" in HTML)
#433523Cross hatch (number sign)
$443624Dollar sign
%453725Percent sign
&463826Ampersand
`473927Closing single quote (apostrophe)
(504028Opening parentheses
)514129Closing parentheses
*52422aAsterisk (star, multiply)
+53432bPlus
,54442cComma
-55452dHyphen, dash, minus
.56462ePeriod
/57472fSlant (forward slash, divide)
0604830Zero
1614931One
2625032Two
3635133Three
4645234Four
5655335Five
6665436Six
7675537Seven
8705638Eight
9715739Nine
:72583aColon
;73593bSemicolon
<74603cLess than sign (&lt; in HTML)
=75613dEquals sign
>76623eGreater than sign (&gt; in HTML)
?77633fQuestion mark
@1006440At-sign
A1016541Uppercase A
B1026642Uppercase B
C1036743Uppercase C
D1046844Uppercase D
E1056945Uppercase E
F1067046Uppercase F
G1077147Uppercase G
H1107248Uppercase H
I1117349Uppercase I
J112744aUppercase J
K113754bUppercase K
L114764cUppercase L
M115774dUppercase M
N116784eUppercase N
O117794fUppercase O
P1208050Uppercase P
Q1218151Uppercase Q
R1228252Uppercase R
S1238353Uppercase S
T1248454Uppercase T
U1258555Uppercase U
V1268656Uppercase V
W1278757Uppercase W
X1308858Uppercase X
Y1318959Uppercase Y
Z132905aUppercase Z
[133915bOpening square bracket
\134925cReverse slant (Backslash)
]135935dClosing square bracket
^136945eCaret (Circumflex)
_137955fUnderscore
`1409660Opening single quote
a1419761Lowercase a
b1429862Lowercase b
c1439963Lowercase c
d14410064Lowercase d
e14510165Lowercase e
f14610266Lowercase f
g14710367Lowercase g
h15010468Lowercase h
i15110569Lowercase i
j1521066aLowercase j
k1531076bLowercase k
l1541086cLowercase l
m1551096dLowercase m
n1561106eLowercase n
o1571116fLowercase o
p16011270Lowercase p
q16111371Lowercase q
r16211472Lowercase r
s16311573Lowercase s
t16411674Lowercase t
u16511775Lowercase u
v16611876Lowercase v
w16711977Lowercase w
x17012078Lowercase x
y17112179Lowercase y
z1721227aLowercase z
{1731237bOpening curly brace
|1741247cVertical line
}1751257dCloing curly brace
~1761267eTilde (approximate)
DEL1771277fDelete (rubout), cross-hatch box