OnScreenPiano is a simple piano emulator
that use soundbeep frequencyes
data files (needed to run program)
http://www.home.no/imapow/OnScreenPiano.zip (10kb)
Code:
; Script Name: OnScreenPiano
;
; AutoHotkey Version: 1.0.47.04
; Language: English/Norwegian
; Platform: WinXp
; Author: Imapow
;
tid = 200 ;set sound beep dur to "200ms"
gui, color, 000000 ;set background color "black"
gui, font, cffffff s9, arial ;set font to "white 9"
;
; create visual piano
;
gui, add, picture, x+0 y+10, %a_scriptdir%/noter/banner.PNG ;create banner
gui, add, picture, xm+0 y+10 gc1, %a_scriptdir%/noter/O1.PNG ;create "C1" note
gui, add, picture, x+0 gdb1, %a_scriptdir%/noter/O2.PNG ;create "Db1" note
gui, add, picture, x+0 gd1, %a_scriptdir%/noter/O3.PNG ;create "D1" note
gui, add, picture, x+0 geb1, %a_scriptdir%/noter/O4.PNG ;create "Eb1" note
gui, add, picture, x+0 ge1, %a_scriptdir%/noter/O5.PNG ;create "E1" note
gui, add, picture, x+0 gf1, %a_scriptdir%/noter/O6.PNG ;create "F1" note
gui, add, picture, x+0 ggb1, %a_scriptdir%/noter/O7.PNG ;create "Gb1" note
gui, add, picture, x+0 gg1, %a_scriptdir%/noter/O8.PNG ;create "G1" note
gui, add, picture, x+0 gab1, %a_scriptdir%/noter/O9.PNG ;create "Ab1" note
gui, add, picture, x+0 ga1, %a_scriptdir%/noter/O10.PNG ;create "A1" note
gui, add, picture, x+0 gbb1, %a_scriptdir%/noter/O11.PNG ;create "Bb1" note
gui, add, picture, x+0 gb1, %a_scriptdir%/noter/O12.PNG ;create "B1" note
gui, add, picture, x+0 gc2, %a_scriptdir%/noter/O1.PNG ;create "C2" note
gui, add, picture, x+0 gdb2, %a_scriptdir%/noter/O2.PNG ;create "Db2" note
gui, add, picture, x+0 gd2, %a_scriptdir%/noter/O3.PNG ;create "D2" note
gui, add, picture, x+0 geb2, %a_scriptdir%/noter/O4.PNG ;create "Eb2" note
gui, add, picture, x+0 ge2, %a_scriptdir%/noter/O5.PNG ;create "E2" note
gui, add, picture, x+0 gf2, %a_scriptdir%/noter/O6.PNG ;create "F2" note
gui, add, picture, x+0 ggb2, %a_scriptdir%/noter/O7.PNG ;create "Gb2" note
gui, add, picture, x+0 gg2, %a_scriptdir%/noter/O8.PNG ;create "G2" note
gui, add, picture, x+0 gab2, %a_scriptdir%/noter/O9.PNG ;create "Ab2" note
gui, add, picture, x+0 ga2, %a_scriptdir%/noter/O10.PNG ;create "A2" note
gui, add, picture, x+0 gbb2, %a_scriptdir%/noter/O11.PNG ;create "Bb2" note
gui, add, picture, x+0 gb2, %a_scriptdir%/noter/O12.PNG ;create "B2" note
gui, add, picture, x+0 gc3, %a_scriptdir%/noter/O1.PNG ;create "C3" note
gui, add, picture, x+0 gdb3, %a_scriptdir%/noter/O2.PNG ;create "Db3" note
gui, add, picture, x+0 gd3, %a_scriptdir%/noter/O3.PNG ;create "D3" note
gui, add, picture, x+0 geb3, %a_scriptdir%/noter/O4.PNG ;create "Eb3" note
gui, add, picture, x+0 ge3, %a_scriptdir%/noter/O5.PNG ;create "E3" note
gui, add, picture, x+0 gf3, %a_scriptdir%/noter/O6.PNG ;create "F3" note
gui, add, picture, x+0 ggb3, %a_scriptdir%/noter/O7.PNG ;create "Gb3" note
gui, add, picture, x+0 gg3, %a_scriptdir%/noter/O8.PNG ;create "G3" note
gui, add, picture, x+0 gab3, %a_scriptdir%/noter/O9.PNG ;create "Ab3" note
gui, add, picture, x+0 ga3, %a_scriptdir%/noter/O10.PNG ;create "A3" note
gui, add, picture, x+0 gbb3, %a_scriptdir%/noter/O11.PNG ;create "Bb3" note
gui, add, picture, x+0 gb3, %a_scriptdir%/noter/O12.PNG ;create "B3" note
gui, add, picture, x+0 gc4, %a_scriptdir%/noter/O1.PNG ;create "C4" note
gui, add, picture, x+0 gdb4, %a_scriptdir%/noter/O2.PNG ;create "Db4" note
gui, add, picture, x+0 gd4, %a_scriptdir%/noter/O3.PNG ;create "D4" note
gui, add, picture, x+0 geb4, %a_scriptdir%/noter/O4.PNG ;create "Eb4" note
gui, add, picture, x+0 ge4, %a_scriptdir%/noter/O5.PNG ;create "E4" note
gui, add, picture, x+0 gf4, %a_scriptdir%/noter/O6.PNG ;create "F4" note
gui, add, picture, x+0 ggb4, %a_scriptdir%/noter/O7.PNG ;create "Gb4" note
gui, add, picture, x+0 gg4, %a_scriptdir%/noter/O8.PNG ;create "G4" note
gui, add, picture, x+0 gab4, %a_scriptdir%/noter/O9.PNG ;create "Ab4" note
gui, add, picture, x+0 ga4, %a_scriptdir%/noter/O10.PNG ;create "A4" note
gui, add, picture, x+0 gbb4, %a_scriptdir%/noter/O11.PNG ;create "Bb4" note
gui, add, picture, x+0 gb4, %a_scriptdir%/noter/O12.PNG ;create "B4" note
gui, add, picture, xm+0 y+0 gc1, %a_scriptdir%/noter/nf.PNG ;add to "C1" note
gui, add, picture, x+0 gd1, %a_scriptdir%/noter/n.PNG ;add to "D1" note
gui, add, picture, x+0 ge1, %a_scriptdir%/noter/n.PNG ;add to "E1" note
gui, add, picture, x+0 gf1, %a_scriptdir%/noter/n.PNG ;add to "F1" note
gui, add, picture, x+0 gg1, %a_scriptdir%/noter/n.PNG ;add to "G1" note
gui, add, picture, x+0 ga1, %a_scriptdir%/noter/n.PNG ;add to "A1" note
gui, add, picture, x+0 gb1, %a_scriptdir%/noter/n.PNG ;add to "B2" note
gui, add, picture, x+0 gc2, %a_scriptdir%/noter/nf.PNG ;add to "C2" note
gui, add, picture, x+0 gd2, %a_scriptdir%/noter/n.PNG ;add to "D2" note
gui, add, picture, x+0 ge2, %a_scriptdir%/noter/n.PNG ;add to "E2" note
gui, add, picture, x+0 gf2, %a_scriptdir%/noter/n.PNG ;add to "F2" note
gui, add, picture, x+0 gg2, %a_scriptdir%/noter/n.PNG ;add to "G2" note
gui, add, picture, x+0 ga2, %a_scriptdir%/noter/n.PNG ;add to "A2" note
gui, add, picture, x+0 gb2, %a_scriptdir%/noter/n.PNG ;add to "B2" note
gui, add, picture, x+0 gc3, %a_scriptdir%/noter/nf.PNG ;add to "C2" note
gui, add, picture, x+0 gd3, %a_scriptdir%/noter/n.PNG ;add to "D3" note
gui, add, picture, x+0 ge3, %a_scriptdir%/noter/n.PNG ;add to "E3" note
gui, add, picture, x+0 gf3, %a_scriptdir%/noter/n.PNG ;add to "F3" note
gui, add, picture, x+0 gg3, %a_scriptdir%/noter/n.PNG ;add to "G3" note
gui, add, picture, x+0 ga3, %a_scriptdir%/noter/n.PNG ;add to "A3" note
gui, add, picture, x+0 gb3, %a_scriptdir%/noter/n.PNG ;add to "B3" note
gui, add, picture, x+0 gc4, %a_scriptdir%/noter/nf.PNG ;add to "C4" note
gui, add, picture, x+0 gd4, %a_scriptdir%/noter/n.PNG ;add to "D4" note
gui, add, picture, x+0 ge4, %a_scriptdir%/noter/n.PNG ;add to "E3" note
gui, add, picture, x+0 gf4, %a_scriptdir%/noter/n.PNG ;add to "F4" note
gui, add, picture, x+0 gg4, %a_scriptdir%/noter/n.PNG ;add to "G4" note
gui, add, picture, x+0 ga4, %a_scriptdir%/noter/n.PNG ;add to "A4" note
gui, add, picture, x+0 gb4, %a_scriptdir%/noter/n.PNG ;add to "B4" note
gui, add, text, xm+0 y+0 w30, Duration ;create "Duration" text
gui, add, slider, x+10 vtid range1-500, 250 ;create "Duration" slider
gui, show
return
guiclose: ;guiclose
exitapp
spel:
guicontrolget, tid ;get "Note Duration" from slider
soundbeep, %frec%, %tid% ;play note
return
c1:
frec = 131 ; set new frequency
goto, spel
db1:
frec = 139 ; set new frequency
goto, spel
d1:
frec = 147 ; set new frequency
goto, spel
eb1:
frec = 155 ; set new frequency
goto, spel
e1:
frec = 165 ; set new frequency
goto, spel
f1:
frec = 175 ; set new frequency
goto, spel
gb1:
frec = 185 ; set new frequency
goto, spel
g1:
frec = 196 ; set new frequency
goto, spel
ab1:
frec = 208 ; set new frequency
goto, spel
a1:
frec = 220 ; set new frequency
goto, spel
bb1:
frec = 233 ; set new frequency
goto, spel
b1:
frec = 247 ; set new frequency
goto, spel
c2:
frec = 262 ; set new frequency
goto, spel
db2:
frec = 277 ; set new frequency
goto, spel
d2:
frec = 294 ; set new frequency
goto, spel
eb2:
frec = 311 ; set new frequency
goto, spel
e2:
frec = 330 ; set new frequency
goto, spel
f2:
frec = 349 ; set new frequency
goto, spel
gb2:
frec = 370 ; set new frequency
goto, spel
g2:
frec = 392 ; set new frequency
goto, spel
ab2:
frec = 415 ; set new frequency
goto, spel
a2:
frec = 440 ; set new frequency
goto, spel
bb2:
frec = 466 ; set new frequency
goto, spel
b2:
frec = 494 ; set new frequency
goto, spel
c3:
frec = 523 ; set new frequency
goto, spel
db3:
frec = 554 ; set new frequency
goto, spel
d3:
frec = 587 ; set new frequency
goto, spel
eb3:
frec = 622 ; set new frequency
goto, spel
e3:
frec = 659 ; set new frequency
goto, spel
f3:
frec = 698 ; set new frequency
goto, spel
gb3:
frec = 740 ; set new frequency
goto, spel
g3:
frec = 784 ; set new frequency
goto, spel
ab3:
frec = 831 ; set new frequency
goto, spel
a3:
frec = 880 ; set new frequency
goto, spel
bb3:
frec = 932 ; set new frequency
goto, spel
b3:
frec = 987 ; set new frequency
goto, spel
c4:
frec = 1046 ; set new frequency
goto, spel
db4:
frec = 1109 ; set new frequency
goto, spel
d4:
frec = 1175 ; set new frequency
goto, spel
eb4:
frec = 1244 ; set new frequency
goto, spel
e4:
frec = 1318 ; set new frequency
goto, spel
f4:
frec = 1397 ; set new frequency
goto, spel
gb4:
frec = 1480 ; set new frequency
goto, spel
g4:
frec = 1568 ; set new frequency
goto, spel
ab4:
frec = 1661 ; set new frequency
goto, spel
a4:
frec = 1760 ; set new frequency
goto, spel
bb4:
frec = 1865 ; set new frequency
goto, spel
b4:
frec = 1975 ; set new frequency
goto, spel