polygon id 213 of page id 2,polygon id 214 of page id 2,polygon id 215 of page id 2,polygon id 216 of page id 2,polygon id 217 of page id 2,polygon id 218 of page id 2,polygon id 221 of page id 2,polygon id 222 of page id 2
pscript
to handle buttonDown
send play name of target
to handle buttonUp loc,isshift,isctrl
send endPlay name of target
to handle buttonDoubleClick
-- This takes care of fast repeating notes
send play name of target
set invert of target to true
set invert of target to false
to handle play myname
system hMidiOut
set rawnote1 to 144+9,myname,127
set note1 to packdword(rawnote1)
get midiOutShortMsg(hMidiOut,note1)
to handle endPlay myname
system hMidiOut
set rawnote1 to 128+9,myname,127
set note1 to packdword(rawnote1)
get midiOutShortMsg(hMidiOut,note1)
>&"sel")
buttondown
buttonup
buttondown
buttonup
previous
:PHYSSIZE
leftsel
:PHYSSIZE
>&"sel")
buttondown
buttonup
buttondown
buttonup
right
:PHYSSIZE
rightsel
:PHYSSIZE
myKeyboard
|#T#y#
h$@$e$
6%,%3%
4recording
release
play
buttonup
buttonup
record
oI0release
record
oI0release
recording
*:PHYSSIZE
xyoffset
item1
item2
p2 +
p2 +
release;
buttondown
release
buttondown
item2
item1
xyoffset
release
item2
item1
4740,2235
4recording
False
release
buttonUp
buttonUp
oI0release
record
recording
/:PHYSSIZE
xyoffset
item1
item2
p2 +
p2 +
buttondown
buttonup
buttondown
item2
item1
xyoffset
buttonup
item2
item1
5715,2235
record
4recording, myScore, myTimer, eventNum
default
buttonUp
buttonUp
record
default
recording
myScore
myTimer
eventNum
5:PHYSSIZE
record
xyoffset
item1
item2
p2 +
p2 +
release;
buttondown
release
buttondown
item2
item1
xyoffset
release
item2
item1
6675,2235
9:PHYSSIZE
Patch
Piano
4zpath
"c:\toolbook\playhous\"
.sbk"
(Zpath&"
linkkernel
linkmmsys
midisetup
LeaveBook
4hMidiOut
midiOutReset(
midiOutClose(
tbkBitmap("close kid")
patch")
tbkMCI("
#count","")
"Piano"
saveAs
g globalAlloc(WORD,
globalLock(
globalUnlock(
2 globalFree(
-- This might
xbe needed
X"mmsystem.dll" -- find the
-- MIDI.
functions except "...GetNumDevs"
error
-- query
midiInGetNumDevs()--RETURNS NUMBER OF DEVICES
midiInGetDevCaps(
POINTER,
- ID,P TO STRUCT,SIZE OF
midiOutGetNumDevs()--
midiOutGetDevCaps(
ID,P TO
midiInOpen(
DWORD,
--HANDLE TO DEVICEID,
ID (
makes sense),CALLBACK ADDRESS,CB INSTANCE DATA, CB FLAGS (WINDOW OR FUNCTION needs looking up)
polygon id 213 of page id 2,polygon id 214 of page id 2,polygon id 215 of page id 2,polygon id 216 of page id 2,polygon id 217 of page id 2,polygon id 218 of page id 2,polygon id 221 of page id 2,polygon id 222 of page id 2