Updated for new opcode names, added damping envelope.

<CsoundSynthesizer>
<CsOptions>
csound -odac6 temp.orc temp.sco
</CsOptions>
<CsInstruments>
sr = 44100
kr = 4410
ksmps = 10
nchnls = 2

; gihandle1 vstinit "c:/projects/music/library/polyiblit.dll", 1
gihandle1 vstinit "c:/Program Files/Steinberg/Cubase SX/vstplugins/Synths/Cheeze Machine/Cheeze Machine.dll", 1
vstedit gihandle1

instr 1
iattack = 0.03
isustain = p3
irelease = 0.05
; To get the right envelope.
p3 = iattack + isustain + irelease
; To get the right cutoff time.
xtratim iattack + irelease
ichannel = p1 - 1
ikey = p4
ivelocity = p5
vstnote gihandle1, ichannel, ikey, ivelocity, p3
ain1 = 0
adamping linseg 0, iattack, 1.0, isustain, 1.0, irelease, 0.0
ab1, ab2 vstaudio gihandle1, ain1, ain1
outs ab1, ab2
endin
</CsInstruments>
<CsScore>
i 1 0 10 60 60
i 1 2 1 72 60
i 1 2.01 2 64 60
i 1 15 15 60.375 60
i 1 15 15 64 60
i 1 18 15 36 60
i 1 20.03 15 80 56
i 1 15 400 62 60

</CsScore>
</CsoundSynthesizer>

<CsoundSynthesizer>
<CsOptions>
csound -odac4 temp.orc temp.sco
</CsOptions>
<CsInstruments>
sr = 44100
kr = 4410
ksmps = 10
nchnls = 2

; gihandle1 vstinit "c:/projects/music/library/polyiblit.dll", 1
gihandle1 vstinit "c:/Program Files/Steinberg/Cubase SX/vstplugins/Synths/Cheeze Machine/Cheeze Machine.dll", 1
vstedit gihandle1

instr 1
ichannel = p1 - 1
ikey = p4
ivelocity = p5
vstnote gihandle1, ichannel, ikey, ivelocity, p3
ain1 = 0
ab1, ab2 vstplug gihandle1, ain1, ain1
outs ab1, ab2
endin
</CsInstruments>
<CsScore>
i 1 0 10 60 60
i 1 2 1 72 60
i 1 2 2 64 60
i 1 15 15 60.375 60
i 1 15 15 64 60
i 1 18 15 36 60
i 1 15 400 62 60
</CsScore>
</CsoundSynthesizer>


Resized CSD project for test4

Resized CSD project for test4

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>background</key>
	<dict>
		<key>anchorX</key>
		<real>0.0</real>
		<key>anchorY</key>
		<real>0.0</real>
		<key>colorB</key>
		<real>180</real>
		<key>colorG</key>
		<real>149</real>
		<key>colorR</key>
		<real>79</real>
		<key>opacity</key>
		<real>255</real>
		<key>posX</key>
		<real>0.0</real>
		<key>posY</key>
		<real>0.0</real>
		<key>posZ</key>
		<integer>-9223372036854775808</integer>
		<key>relativeAnchor</key>
		<false/>
		<key>rotation</key>
		<real>0.0</real>
		<key>scaleX</key>
		<real>1</real>
		<key>scaleY</key>
		<real>1</real>
		<key>stageHeight</key>
		<real>512</real>
		<key>stageWidth</key>
		<real>1024</real>
	</dict>
	<key>children</key>
	<array>
		<dict>
			<key>anchorX</key>
			<real>0.5</real>
			<key>anchorY</key>
			<real>0.0</real>
			<key>colorB</key>
			<real>255</real>
			<key>colorG</key>
			<real>255</real>
			<key>colorR</key>
			<real>255</real>
			<key>filename</key>
			<string>forum.png</string>
			<key>flipX</key>
			<false/>
			<key>flipY</key>
			<false/>
			<key>name</key>
			<string>forum</string>
			<key>opacity</key>
			<real>255</real>
			<key>posX</key>
			<real>320</real>
			<key>posY</key>
			<real>8</real>
			<key>posZ</key>
			<integer>0</integer>
			<key>relativeAnchor</key>
			<true/>
			<key>rotation</key>
			<real>0.0</real>
			<key>scaleX</key>
			<real>1</real>
			<key>scaleY</key>
			<real>1</real>
		</dict>
		<dict>
			<key>anchorX</key>
			<real>0.5</real>
			<key>anchorY</key>
			<real>0.0</real>
			<key>colorB</key>
			<real>247</real>
			<key>colorG</key>
			<real>254</real>
			<key>colorR</key>
			<real>248</real>
			<key>filename</key>
			<string>coconade.png</string>
			<key>flipX</key>
			<false/>
			<key>flipY</key>
			<false/>
			<key>name</key>
			<string>coconade</string>
			<key>opacity</key>
			<real>255</real>
			<key>posX</key>
			<real>704</real>
			<key>posY</key>
			<real>0.0</real>
			<key>posZ</key>
			<integer>0</integer>
			<key>relativeAnchor</key>
			<true/>
			<key>rotation</key>
			<real>0.0</real>
			<key>scaleX</key>
			<real>1</real>
			<key>scaleY</key>
			<real>1</real>
		</dict>
		<dict>
			<key>anchorX</key>
			<real>0.5</real>
			<key>anchorY</key>
			<real>1</real>
			<key>colorB</key>
			<real>255</real>
			<key>colorG</key>
			<real>255</real>
			<key>colorR</key>
			<real>255</real>
			<key>filename</key>
			<string>site.png</string>
			<key>flipX</key>
			<false/>
			<key>flipY</key>
			<false/>
			<key>name</key>
			<string>site</string>
			<key>opacity</key>
			<real>255</real>
			<key>posX</key>
			<real>512</real>
			<key>posY</key>
			<real>534</real>
			<key>posZ</key>
			<integer>0</integer>
			<key>relativeAnchor</key>
			<true/>
			<key>rotation</key>
			<real>0.0</real>
			<key>scaleX</key>
			<real>1</real>
			<key>scaleY</key>
			<real>1</real>
		</dict>
	</array>
</dict>
</plist>

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>background</key>
	<dict>
		<key>anchorX</key>
		<real>0.0</real>
		<key>anchorY</key>
		<real>0.0</real>
		<key>colorB</key>
		<real>180</real>
		<key>colorG</key>
		<real>149</real>
		<key>colorR</key>
		<real>79</real>
		<key>opacity</key>
		<real>255</real>
		<key>posX</key>
		<real>0.0</real>
		<key>posY</key>
		<real>0.0</real>
		<key>posZ</key>
		<integer>-9223372036854775808</integer>
		<key>relativeAnchor</key>
		<false/>
		<key>rotation</key>
		<real>0.0</real>
		<key>scaleX</key>
		<real>1</real>
		<key>scaleY</key>
		<real>1</real>
		<key>stageHeight</key>
		<real>768</real>
		<key>stageWidth</key>
		<real>1024</real>
	</dict>
	<key>children</key>
	<array>
		<dict>
			<key>anchorX</key>
			<real>0.5</real>
			<key>anchorY</key>
			<real>1</real>
			<key>colorB</key>
			<real>255</real>
			<key>colorG</key>
			<real>255</real>
			<key>colorR</key>
			<real>255</real>
			<key>filename</key>
			<string>site.png</string>
			<key>flipX</key>
			<false/>
			<key>flipY</key>
			<false/>
			<key>name</key>
			<string>site</string>
			<key>opacity</key>
			<real>255</real>
			<key>posX</key>
			<real>512</real>
			<key>posY</key>
			<real>768</real>
			<key>posZ</key>
			<integer>0</integer>
			<key>relativeAnchor</key>
			<true/>
			<key>rotation</key>
			<real>0.0</real>
			<key>scaleX</key>
			<real>1</real>
			<key>scaleY</key>
			<real>1</real>
		</dict>
		<dict>
			<key>anchorX</key>
			<real>0.5</real>
			<key>anchorY</key>
			<real>0.5</real>
			<key>colorB</key>
			<real>247</real>
			<key>colorG</key>
			<real>254</real>
			<key>colorR</key>
			<real>248</real>
			<key>filename</key>
			<string>coconade.png</string>
			<key>flipX</key>
			<false/>
			<key>flipY</key>
			<false/>
			<key>name</key>
			<string>coconade</string>
			<key>opacity</key>
			<real>255</real>
			<key>posX</key>
			<real>704</real>
			<key>posY</key>
			<real>352</real>
			<key>posZ</key>
			<integer>0</integer>
			<key>relativeAnchor</key>
			<true/>
			<key>rotation</key>
			<real>0.0</real>
			<key>scaleX</key>
			<real>1</real>
			<key>scaleY</key>
			<real>1</real>
		</dict>
		<dict>
			<key>anchorX</key>
			<real>0.5</real>
			<key>anchorY</key>
			<real>0.5</real>
			<key>colorB</key>
			<real>255</real>
			<key>colorG</key>
			<real>255</real>
			<key>colorR</key>
			<real>255</real>
			<key>filename</key>
			<string>forum.png</string>
			<key>flipX</key>
			<false/>
			<key>flipY</key>
			<false/>
			<key>name</key>
			<string>forum</string>
			<key>opacity</key>
			<real>255</real>
			<key>posX</key>
			<real>320</real>
			<key>posY</key>
			<real>352</real>
			<key>posZ</key>
			<integer>0</integer>
			<key>relativeAnchor</key>
			<true/>
			<key>rotation</key>
			<real>0.0</real>
			<key>scaleX</key>
			<real>1</real>
			<key>scaleY</key>
			<real>1</real>
		</dict>
	</array>
</dict>
</plist>


further enhanced RTTI test

further enhanced RTTI test

<CsoundSynthesizer>
;<CsOptions>
;</CsOptions>
; ==============================================
<CsInstruments>

sr	=	44100
ksmps	=	1
nchnls	=	2
0dbfs	=	1

gi_var = 22
gk_var = 33
gS_var = "TEST"

opcode testUDO, 0, iiS

i0, i1, S2  xin

print i0
print_type i0
print i1
print_type i1
prints S2
print_type S2

prints "\nTEST UDO\n"
prints "Testing constants...\n"
print 44
print_type 44
print_type "test"

prints "Testing Global Vars...\n"
print_type gi_var
print_type gk_var
print_type gS_var

ivar = 300
kvar = 400
avar init 0

prints "Testing Local Vars...\n"
print_type ivar
print ivar
print_type kvar
print_type avar

prints "Testing PFields...\n"
print_type p1
print p1
print_type p2
print p2
print_type p3
print p3
print_type p4
print p4
print_type p5
prints p5

endop

instr testInstr

prints "Testing constants...\n"
print 44
print_type 44
print_type "test"

prints "Testing Global Vars...\n"
print_type gi_var
print_type gk_var
print_type gS_var

ivar = 300
kvar = 400
avar init 0

prints "Testing Local Vars...\n"
print_type ivar
print ivar
print_type kvar
print_type avar

prints "Testing PFields...\n"
print_type p1
print p1
print_type p2
print p2
print_type p3
print p3
print_type p4
print p4
print_type p5
prints p5

testUDO(1, 2, "testUDO")

turnoff

endin

instr 2

print_type p4
prints p4
print_type p5
prints p5
print_type p6
prints p6

turnoff

endin

instr 3
pset 3, 0, 4, 5, 6

print p3
print p4
print p5
turnoff

endin
</CsInstruments>

; ==============================================
<CsScore>
i "testInstr" 0 .5 999 "testPfield"
i2 0 3 "aaa" "bbb" "ccc"
i3 0 3
</CsScore>

</CsoundSynthesizer>

<CsoundSynthesizer>
;<CsOptions>
;</CsOptions>
; ==============================================
<CsInstruments>

sr	=	44100
ksmps	=	1
nchnls	=	2
0dbfs	=	1

gi_var = 22
gk_var = 33
gS_var = "TEST"

instr testInstr

prints "Testing constants...\n"
print 44
print_type 44
print_type "test"

prints "Testing Global Vars...\n"
print_type gi_var
print_type gk_var
print_type gS_var

ivar = 300
kvar = 400
avar init 0

prints "Testing Local Vars...\n"
print_type ivar
print ivar
print_type kvar
print_type avar

prints "Testing PFields...\n"
print_type p1
print p1
print_type p2
print p2
print_type p3
print p3
print_type p4
print p4
print_type p5
prints p5

turnoff

endin

instr 2

print_type p4
prints p4
print_type p5
prints p5
print_type p6
prints p6

turnoff

endin

instr 3
pset 3, 0, 4, 5, 6

print p3
print p4
print p5
turnoff

endin
</CsInstruments>

; ==============================================
<CsScore>
i "testInstr" 0 .5 999 "testPfield"
i2 0 3 "aaa" "bbb" "ccc"
i3 0 3
</CsScore>

</CsoundSynthesizer>