private String getStringCore( int opcode, int index, int str_capacity )
{
byte[] arr = new byte[str_capacity + 1];
for ( int i = 0; i < str_capacity; i++ ) {
arr[i] = 0;
}
IntPtr ptr = IntPtr.Zero;
try {
unsafe {
fixed ( byte* bptr = &arr[0] ) {
ptr = new IntPtr( bptr );
aEffect.Dispatch( opcode, index, 0, ptr, 0.0f );
}
}
} catch ( Exception ex ) {
serr.println( "vstidrv#getStringCore; ex=" + ex );
}
String ret = Encoding.ASCII.GetString( arr );
return ret;
}