Kommandozeilendumper für Akai X7000, S700

Dieses Thema im Forum "PC" wurde erstellt von tholan, 27. November 2012.

  1. tholan

    tholan Tach

    Hallo liebe Leute,
    ich besitze einen Akai X7000 12-Bit Sampler.
    Der kann leider kein SDS und es gibt kein vernünftiges
    Dump Programm für Windows, mit dem sich alle 16
    Samples plus Programmeinstellungen in einem Rutsch auf die Platte bannen lassen.

    Ich habe nun die Implementation für einen MIDI-Dump
    in dem Buch "Das große MIDI-Buch zum Atari ST" von Ralf Niedlich gefunden.
    Ansatzweise habe ich das in GFA-Basic auf dem Atari schonmal durchgespielt
    und es scheint zu stimmen.
    Die Anforderung und Abfrage eines Samples durch den PC
    funktioniert nur im Handshake-Verfahren und kann nur durch einen
    angeschlossenen Rechner initiiert werden.
    Umgekehrt läßt sich ein Sample in einem Rutsch (one way) in den Sampler schieben.

    Tjaa, und nun würde ich ganz gerne ein kleines Dump-Progrämmchen unter Windows
    zusammenbasteln. GUI muß nicht sein.
    Ich denke da an sowas wie "GetSamples.exe [Dateiname]" und "PutSamples.exe [Dateiname]"
    Das ließe sich mit Freebasic oder dem Bloodshed C-Compiler bewerkstelligen.
    Kann mir da irgendjemand auf die Sprünge helfen, wie ich die MIDI-Schnittstellen unter
    Windows für eine SYSEX Datenkommunikation in den Griff bekomme?
    Es geht einfach nur um den Austausch von MIDI-Rohdaten.
    thx
     
  2. MIDI Ox benutzen, da kannst die Daten händisch eingeben.

    Wenn Du Dir was programmieren willst: JSynthLib, oder RealBasic mit dem Monkeybread-MIDI Plugin. Gibt sicher auch was für Visualabasic. Da brauchst Dich nicht groß um die Details der Kommunikation kümmern, sondern Dich an die Doku des Plugins halten.

    Sysex darf auf keinen Fall irgendwie unterbrochen werden. Solange ein Transfer läuft und andere Events kommen, mußt Du diese abweisen bzw ausfiltern. Gilt vor allem dann, wenn da ein Interface mit mehreren Ports dranhängt.
     
  3. tholan

    tholan Tach

    Danke soweit für die Tips.
    Das Problem ist halt das Handshake:
    Wenn der Rechner ein Sample anfordert,
    sendet das der X7000 in 60 Byte Chunks
    und wartet nach jedem Brocken auf ein ACK vom Rechner.
    Das können dann bis zu 546 Blöcke für ein Sample sein.
    Naja, wen es interessiert, ich hab hier jedenfalls die komplette
    Dokumentation.

    Das Senden kompletter Samplesets mit allen Programmeinstellungen habe
    ich schonmal mit dem DOS-Programm MDF.EXE und ner Batch-Datei hingekriegt.
    Die Samples hatte ich vorher in meinen Atari gedumpt und dann mit
    DOS-formatierten 720kB Disketten auf den PC übertragen.
    Das Programm war mal auf ner Keys CD.
    Es verlangt aber eine MPU401 mit der MIDI-Schnittstelle bei 0x330
    Mit alter Hardware wirds bei mir langsam eng und mit USB-MIDIplöpseln
    oder meinem Motu Midi-Flyer kann das garnicht umgehen.

    Ich besitze auch das alte Sample Vision von Turtle Beach
    mit Unterstützung für X7000/S700.
    Das braucht auch ne MPU401 oder Soundblaster-MIDI bei 0x220 und läuft,
    dank seiner GEM-Shell, unter keinem Windows :) .
    Damit kann ich zwar einzelne Samples aus dem X7000 auf den PC, wie umgekehrt kriegen,
    nicht aber die Programmeinstellungen (gerade mal die Looppunkte)
    und ich muß jedes der 16 Samples einzeln anfordern, bzw. senden..
    Die nachfolgende Windows Version von Sample Vision hat dann leider keine
    Unterstützung mehr für X7000/S700.

    Immerhin ist es mir mit Sample Vision für DOS aber schonmal gelungen,
    WAV-Dateien in den X7000 zu kriegen.
    Dazu brauchte ich aber noch Cooledit96, das die Wav-Dateien
    in das Sample Vision Format *.smp umwandeln kann :) .

    Dieses Programm besitze ich . Ich habs seinerzeit sogar mit Anleitung
    telefonisch beim Herrn Plontke geordert.
    Als sehr praktisch hat sich das Programm auch nicht erwiesen:
    Die Samples und vor allem die Programmparameter lassen sich am X7000 selbst besser editieren
    und als reines Dump-Programm müßte man schon alle Samples als Sampleset in einem Rutsch
    dumpen können. Das kann es aber nicht.
    Für den Atari habe ich da was Schickeres, mit dem ich wirklich alle 16 Samples
    mit sämmtlichen Programmsettings in einem Rutsch aus dem Atari in den Sampler,
    sowie vom Sampler in den Atari gedumpt bekomme.
    Das habe ich jedenfalls schon auf so ziemlich jedem Atariemulator, der sich rühmt,
    mit MIDI umgehen zu können getestet. Steem zuletzt vor ca 1/2 Jahr
    unter Windows, wie unter Linux: Das kann kein SYSEX.
    Irgendwo stand das da auch.
    Hatari unter Linux funktionierte mit dem DUMP7000.PRG jedenfalls am besten
    und verschluckte immer nur wenige Bytes :) .
    Auf jeden Fall kann das besser mit MIDI umgehen, funktioniert mit meinem Dumper
    aber auch nicht richtig.

    Diese Details sind für mich absolut kein Problem,
    da ich weiß, wie meine Strings auszusehen haben.
    Das ist ja auch nicht kompliziert, wenn man die Implementation hat.
    MIDI ist ein ziemlich simples Protokoll.
    C kann ich nunmal ein bischen, naja, was der avr-gcc so hergibt
    und der Bloodshed C-Compiler benimmt sich da sehr ähnlich.
    JSynthLib ist doch Java?
    Vielleicht probiere ichs mal mit dem /dev/midi[n] und dem gcc unter Linux.
    Scheint mir nicht so kompliziert, wie diese ganzen Multimedia-DLLs unter Windows.

    p.s.
    fällt mir gerade noch ein:
    Ich hab hier noch ne Uraltversion von Cakewalk (von Sybex auf dem Grabbeltisch mal verramscht worden).
    Da ist sone art MIDI-Programmiersprache eingebaut, die sich CAL nennt.
    Dafür habe ich aber keine Dokumentation.
    Ob man damit sowas machen kann?
     

Diese Seite empfehlen