@Dremora,
semar's original conversion table is correct. A VB6 int is two bytes long (ie. a short in most other languages):
VB6 Int = BMX Short
VB6 Long = BMX Int
@semar
Unfortunately it doesn't seem to be possible to create C-style arrays in BlitzMAX. String[] is an array of strings, whereas the MIDIOUTCAPS structure should be an array of 32 chars. Using Byte[] in BlitzMAX doesn't work either, since arrays are objects.
I think the easiest option would be to have a C wrapper for these functions.
semar's original conversion table is correct. A VB6 int is two bytes long (ie. a short in most other languages):
VB6 Int = BMX Short
VB6 Long = BMX Int
@semar
Unfortunately it doesn't seem to be possible to create C-style arrays in BlitzMAX. String[] is an array of strings, whereas the MIDIOUTCAPS structure should be an array of 32 chars. Using Byte[] in BlitzMAX doesn't work either, since arrays are objects.
I think the easiest option would be to have a C wrapper for these functions.