FAQ Profile Search Members
Groups

PM's

Register Login/Out
I want programm a SampleDumper for the SP-12
Last Thread | Next Thread  >

Post new topic Reply to topic
dxarmy.com sp1200 forum > SP Everyday Use

Author Thread
Please Register and Login to this forum to stop seeing this advertsing.





   

 
des?
SpUser


Joined: 29 Jan 2007
Posts: 27


I want programm a SampleDumper for the SP-12  Reply with quote  

Hello,
sorry for my bad English. I started to program a sampledumper for the sp12 in visual basic .net. But I'm a beginner and my programming skills are very bad. My first tool was only a converter, which converts manual dumps in sp12 format. The problem is, that a manual dump is very uncomfortable and it need a long time.

So I want to program a tool, which makes the dumps automatic. In the moment I can only send SYSEX, but I  can not receive it. But this is very possible to make a handshake.

I search people who want help.
_________________
sp12 turbo
Post Sat Apr 04, 2009 11:25 am
 View user's profile Send private message
psoul
SpUser


Joined: 24 Aug 2008
Posts: 49


 Reply with quote  

well i don't have any info i just notice in the service manual there are info related to dump... so it could help u, but probably u already have
peace
Post Sun Apr 05, 2009 4:43 am
 View user's profile Send private message
des?
SpUser


Joined: 29 Jan 2007
Posts: 27


 Reply with quote  

here is my vb .net / 2005 coder for sysex send.

Imports System
Imports System.Runtime
Imports System.Runtime.InteropServices

Public Module FunctionModule
   Public Const MAXPNAMELEN As Integer = 32
   Public Structure MIDIHDR
       Dim lpData As String
       Dim dwBufferLength As Integer
       Dim dwBytesRecorded As Integer
       Dim dwUser As Integer
       Dim dwFlags As Integer
       Dim lpNext As Integer
       Dim Reserved As Integer
   End Structure

   Public Structure MIDIOUTCAPS
       ' Public Const MAXPNAMELEN = 32
       'Public wMid As Short
       Public wPid As Short
       Public vDriverVersion As Integer
       <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=MAXPNAMELEN)> Public szPname As String
       'Public wTechnology As Short
       'Public wVoices As Short
       'Public wNotes As Short
       'Public wChannelMask As Short
       'Public dwSupport As integer
   End Structure

   Public Structure MIDIINCAPS
       ' Public Const MAXPNAMELEN = 32
       'Public wMid As Short
       Public wPid As Short
       Public vDriverVersion As Integer
       <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=MAXPNAMELEN)> Public szPname As String
       'Public wTechnology As Short
       'Public wVoices As Short
       'Public wNotes As Short
       'Public wChannelMask As Short
       'Public dwSupport As integer
   End Structure



   Public Declare Function midiInGetNumDevs Lib "winmm.dll" () As Short

   Public Declare Function midiInGetDevCaps Lib "winmm.dll" Alias "midiInGetDevCapsA" ( _
       ByVal uDeviceID As Integer, _
       ByRef lpCaps As MIDIINCAPS, _
       ByVal uSize As Integer) As Integer

   Public Declare Function midiOutGetNumDevs Lib "winmm.dll" () As Short

   Public Declare Function midiOutGetDevCaps Lib "winmm.dll" Alias "midiOutGetDevCapsA" ( _
   ByVal uDeviceID As Integer, _
       ByRef lpCaps As MIDIOUTCAPS, _
       ByVal uSize As Integer) As Integer


   Public Declare Function midiInOpen Lib "winmm.dll" ( _
       ByRef lphMidiIn As Integer, _
       ByVal uDeviceID As Integer, _
       ByVal dwCallback As Integer, _
       ByVal dwInstance As Integer, _
       ByVal dwFlags As Int32) As Integer


   Public Declare Function midiOutOpen Lib "winmm.dll" ( _
       ByRef lphMidiOut As Integer, _
       ByVal uDeviceID As Integer, _
       ByVal dwCallback As Integer, _
       ByVal dwInstance As Integer, _
       ByVal dwFlags As Integer) As Integer

   Public Declare Function midiOutShortMsg Lib "winmm.dll" ( _
       ByVal hMidiOut As Integer, _
       ByVal dwMsg As Integer) As Integer

   Public Declare Function midiOutClose Lib "winmm.dll" ( _
       ByVal hMidiOut As Integer) As Integer

   Public Declare Function midiOutPrepareHeader Lib "winmm.dll" ( _
       ByVal hMidiOut As Integer, _
       ByRef lpMidiOutHdr As MIDIHDR, _
       ByVal uSize As Integer) As Integer

   Public Declare Function midiOutLongMsg Lib "winmm.dll" ( _
       ByVal hMidiOut As Integer, _
       ByRef lpMidiOutHdr As MIDIHDR, _
       ByVal uSize As Integer) As Integer

   Public Declare Function midiOutUnprepareHeader Lib "winmm.dll" ( _
       ByVal hMidiOut As Integer, _
       ByRef lpMidiOutHdr As MIDIHDR, _
       ByVal uSize As Integer) As Integer

   Public Declare Function midiInClose Lib "winmm.dll" ( _
       ByVal hMidiIn As Int32) As Int32

   


Module Module1
   Sub Main()

       'Read MIDI INs___________________________________________________________________________________________

       Console.WriteLine(vbCrLf & "MIDIINS:" & vbCrLf)
       Dim countIN As Short = midiInGetNumDevs
       Dim midicapsIN As New MIDIINCAPS
       For i As Integer = 0 To countIN - 1
           'holt alle midi-device eingenschaften
           midiInGetDevCaps(i, midicapsIN, CInt(Marshal.SizeOf(midicapsIN)))
           'darstellen der informationen
           With midicapsIN
               Console.WriteLine(i & " " & .szPname)

           End With
       Next

       'Read MIDI OUTs___________________________________________________________________________________________

       Console.WriteLine(vbCrLf & "MIDIOUTS:" & vbCrLf)
       Dim countOUT As Short = midiOutGetNumDevs
       Dim midicapsOUT As New MIDIOUTCAPS

       For i As Integer = 0 To countOUT - 1
           'holt alle midi-device eingenschaften
           midiOutGetDevCaps(i, midicapsOUT, CInt(Marshal.SizeOf(midicapsOUT)))
           'darstellen der informationen
           With midicapsOUT

               Console.WriteLine(i & " " & .szPname)

           End With
       Next

       'midiIN START__________________________________________________________________________________________________
       Dim hMidiin As Integer
       Dim portin As String

       Console.WriteLine(vbCrLf & "Gebe Midi IN Port ein: ")
       portin = Console.ReadLine()
       midiInOpen(hMidiin, portin, 0, 0, 0)

       'midiOUT START__________________________________________________________________________________________________
       Dim hmidiout As Integer
       Dim portout As String

       Console.WriteLine(vbCrLf & "Gebe Midi OUT Port ein: ")
       portout = Console.ReadLine()
       midiOutOpen(hmidiout, portout, 0, 0, 0)

       'SYSEX starten__________________________________________________________________________________________

       Dim SysEx As String
       Dim MyHdr As MIDIHDR

       SysEx = Chr(&HF0) & Chr(&H18) & Chr(&H1) & Chr(&H41) & Chr(&HF7)

       MyHdr.dwBufferLength = Len(SysEx)
       MyHdr.dwBytesRecorded = Len(SysEx)
       MyHdr.lpData = SysEx
       MyHdr.dwFlags = 0

       'Nur zur Info wieviel Bytes die Sysex hat
       Console.WriteLine("Len(SysEx): " & Len(SysEx))

       Do
           midiOutPrepareHeader(hmidiout, MyHdr, Len(MyHdr))
           midiOutLongMsg(hmidiout, MyHdr, Len(MyHdr))
           'midiOutUnprepareHeader(hMidiOut, MyHdr, Len(MyHdr))
       Loop

       Console.ReadLine()

   End Sub

End Module
_________________
sp12 turbo
Post Thu Apr 16, 2009 8:26 am
 View user's profile Send private message
Ghrenig
SpUser


Joined: 21 Aug 2009
Posts: 2


 Reply with quote  

Hi there
Did you get any further with your coding.
I am looking to create a sysex program to communicate with the ensoniq asr-10
regards
Ghrenig
Post Fri Aug 21, 2009 5:08 am
 View user's profile Send private message
des?
SpUser


Joined: 29 Jan 2007
Posts: 27


 Reply with quote  

hi,
no. I don't understand how i can receive sysex. I only can send. I hoped that anyone can help me.

In the moment I want  learn c as programming language. When you want, we can support us.

sorry, for my english.
_________________
sp12 turbo
Post Mon Aug 31, 2009 3:10 am
 View user's profile Send private message
DRUMAT!C
SpUser


Joined: 26 Jan 2006
Posts: 203


Location: Philadelphia
 Reply with quote  

any of you programming cats... try cracking the SP12(00) OS. and you'll be praised most reverently!

good luck-

++ DRUMZ.1



_________________
++
DRUMAT!C
shop@kicdrumproducts.com
////////////////////////

NOW AVAILABLE -- 2009 SUMMER TEES!
JAYDEE KDP3000LE + more...
download or buy DRUMZ and LLINGO LP - Blakmarket - NOW!!
Post Tue Sep 01, 2009 6:23 pm
 View user's profile Send private message Visit poster's website AIM Address

Post new topic Reply to topic
{ Mark topics read }
Forum Jump:
Jump to:  

All times are GMT - 5 Hours.
The time now is Thu Dec 10, 2009 10:40 am
  Display posts from previous:      


Card File  Gallery  Forum Archive Powered by phpBB: © 2001, 2002 phpBB Group
Template created by The Fathom
Based on template of Nick Mahon
Create your own free forum | Buy a domain to use with your forum
DXARMY.COM