Hello, Guest the thread was called408 times and contains 9 replays

last post from Messerjocke at the

WinVice und Midi

  • Moin,
    ich spiele gerade ein bisschen mit MIDI auf dem C64 herum und möchte mir gerne meine eigene Umgebung dafür auf dem 64er coden.
    Normalerweise entwickele ich mit Codenet, leider belegt das Datel-Midi-interface jedoch den Ex-Port.
    Langer Rede kurzer Sinn: Ich wollte den Code auf dem WinVice testen, bekomme es jedoch nicht hin, dass mein Midi-Keyboard vom Emulator erkannt wird.
    Gibt es eine aktuelle Version von WinVice die Midi unterstützt und wie trage ich mein PC-Midi-Device dort ein ?
    Ich habe Datel als Midi-Cartridge-Typ ausgewählt, jedoch werden die Eingabefelder für Input-/Output- Device nicht in die Settings übernommen.
    Irgendwas mache ich da wohl verkehrt. Eine Lektüre meiner WinVice-Doku hat mich auch nicht wirklich weitergebracht.
    Kann mir jemand helfen ?

  • Normalerweise entwickele ich mit Codenet, leider belegt das Datel-Midi-interface jedoch den Ex-Port.

    Wenn Du SIDKick als SID-Ersatz in einem C64 verwendest, kann das SIDKick (während es im SID-Sockel sitzt) auch über Strippen nach außen ein MIDI-Interface emulieren, wobei der Expansionport frei bleibt. Du hast dann dort MIDI-In und MIDI-Out und kannst ein Keyboard und ein Klangmodul anschließen. MIDI-In läuft bei den meisten MIDI-Interfaces mit Hilfe von NMI, so dass man schauen muss, dass das RR-Net nicht parallel auch noch mit NMIs arbeitet, damit sich die Sachen nicht ins Gehege kommen könnten.


    (Desweiteren: Mit dem Netzwerk-Kernel von Sidekick64 kannst Du über das Web-Interface ein PRG an den C64 schicken, welches dort dann sofort gestartet wird. Sidekick64 hat auch gleich eine MIDI-Emulation mit drin, allerdings nur eine Art virtuelles Playback-MIDI-Out, das an ein integriertes Fluidsynth TinySoundFont als Klangerzeuger sendet, das heißt, man kann dort kein MIDI-Kabel anschließen, um MIDI-In oder -Out mit externen Geräten zu machen.)



    EDIT:

    Gibt es eine aktuelle Version von WinVice die Midi unterstützt und wie trage ich mein PC-Midi-Device dort ein ?

    Welche Version von Vice verwendest Du? Aktuell ist glaube ich 3.6.1. Welches MIDI-Interface hast Du am Rechner? MIDI2USB?

  • Danke für Deine schnelle Antwort.
    Das Sidekick klingt echt interessant, allein schon wegen den Midi-Features. Das Teil kann ja auch sonst noch 'ne Menge.
    Ich habe auch schon ernsthaft damit geliebäugelt, leider kann ich mir derzeit keine neue HW für mein Schätzchen leisten als armer Rentner. :(

    Das compilierte Programm bekomme ich schon iwie rübergeschoben, nervt nur halt ein bisschen. Erstrecht wenn man sich erst einmal an Codenet gewöhnt hat ;)
    Geht ja auch alles ziemlich schmerzfrei wenn man im Emu testen kann (wenn es dann funzt) :D

    Achja, die Infos zum Emu-Host: Win 10 mit Vice 3.6.1 läuft hier. Als Midi-Interface am 64er benutze ich ein Datel, was mir zufällig vor kurzen zugeflogen ist.
    (Thnx, Starfox ;) )


    Als Midi-Adapter benutze ich ein Midi2USB, das Device wird als 'USB2.0-MIDI' Device im Gerätemanager erkannt und löppt ansonsten perfekt mit meinem Casio GZ-5.


    Btw.: Lustiger Username, wenn mir einer helfen kann, dann Du :)


    Grüsse

  • Test mit GTK3VICE-3.6.1-win64 unter Windows 10: USB2MIDI-Billig-Interface am MIDI-Keyboard und am PC.

    Dann diese Settings und bei mir startet dann Steinberg Pro-16 (es würde beim Starten im grauen Bild hängen bleiben, wenn das Datel-Interface nicht erkannt werden würde).


    Bei Tastendruck auf dem MIDI-Keyboard sehe ich dann im Emulator in Pro-16 bei "VEL" den roten Balken, der mir signalisiert, dass ein MIDI-In-Event registriert wurde.



    Auch Cynthcart 2.0_Kerberos.prg geht mit MIDI-In:



    Der große Nachteil von dem 2€-Billig-MIDI-Interface ist, dass es nicht richtig funktioniert, wenn man ernsthaft Musik einspielen will. Aber zum Techniktest ist es gut genug.

  • Wenn ich die "Instinct"-Demo von Ate Bit (SID + MIDI-Out) in Vice 3.6.1 mit Windows 10 abspiele (Warp-Modus abschalten!), dann werden die MIDI-Out-Events wohl automatisch an den Windows-MIDI-Mapper geschickt und das in Windows enthaltene MIDI-Geraffel spielt die MIDI-Noten der Demo ab. Wenn man genau das will, dann funktioniert es auch wie erwartet. Was ich noch nicht kapiert habe, ist, wie ich MIDI-In und MIDI-Out in Vice zu bestimmten Geräten routen kann unter Windows 10. Ich werde es nochmal von der Kommandozeile starten mit Parametern.

  • Wieder einen Schritt weiter:


    Ziel war: Kontrolle, an welches MIDI-Gerät die MIDI-Out-Daten von der "Instinct"-Demo gehen.


    Hilfsmittel:

    • loopMIDI zum Anlegen eines virtuellen MIDI-Interfaces in Windows 10 (an Position 0!)
    • QSynth als GUI for Fluidsynth mit Soundfont und aktivem MIDI-In-Lauschen an dem virtuellen Interface
    • Vice schickt dann die MIDI-Daten raus an MIDI-Device Null und die kommen auch an im QSynth

  • Nächster Meilenstein erreicht:


    Ziel: Mit dem MIDI-Sequencer Steinberg Pro-16 sollen MIDI-In-Daten empfangen werden vom realen MIDI-Keyboard am USB2MIDI-Adapter. Diese sollen von Pro-16 per Software-THRU weitergeschickt werden via MIDI-Out, aber an ein anderes (virtuelles) MIDI-Interface (eben nicht an das USB2MIDI-Interface). Das geht auch, aber hat eine Weile gedauert und Detektivarbeit erfordert.


    Ich habe Vice gestartet per Kommandozeile unter Windows 10:


    Code
    1. x64sc.exe -miditype 2 -midiin 0 -midiout 3 -autostart "C:\Users\ich\pfad\pro16-2-4.prg"


    Dabei habe ich festgestellt, dass die Parameter für midiin und midiout Nummern sind (bei midiin war immer das USB2MIDI-Interface an Position 0) und bei midiout musste ich etwas abenteuerlich experimentieren, da habe ich viele Werte ausprobiert.


    Eventuell sind die Nummern der MIDI-Geräte unter Windows (winmidi) nicht leicht vorherzusehen (für midiout). Da muss ich noch weitertesten.


    EDIT: Ergänzung: Bei mir ist nun Gerät drei das erste Loop-Device. Also mache ich mal oben eine drei rein bei midiout.



    Meine Hypothese ist, dass man in anderen Programmen nachschlagen sollte, wie die Geräte sortiert sind. Man denkt, man ist mit seinem Gerät ganz vorn in der Liste, aber dort kommen erstmal alle möglichen Geräte, die man beim Abzählen überspringen muss.


  • Und jetzt noch eine Vereinfachung: Man kann die MIDI-Device-Nummern (bei mir: MIDI-In: 0 / MIDI-Out: 3) auch im Settings-Dialog eintragen, auch wenn die Felder immer leer sind, wenn man den Dialog wieder aufruft. Bei mir werden beim Beenden von Vice die Settings gespeichert und wenn ich dann per Mausklick Vice neu starte, erinnert er sich an die Gerätenummern, auch wenn diese nicht in den Eingabefeldern sichtbar sind.

  • Danke für die umfangreichen Experimente, das erklärt einiges. Ich werde das mal nachstellen. Insbesondere die Commandline-Parameter und die Ermittlung der Device-Nummer sind äusserst hilfreich, Klasse.
    Dann kann ich mir den Bugreport ja ggf. sparen.
    Mit der Eingabe der Parameter über GUI (GTK) ist leider derzeit etwas unglücklich, evtl. wird da nochmal nachgebessert.

    Gruss