Jump to content

midio mit vel in ??


hallucinogen
 Share

Recommended Posts

Hallo,

Velocity ist bisher unerforschtes Terrain und leider auch nicht ganz so trivial, weil die Implementierung und Ansteuerparameter sehr von den verwendeten Tastern abhaengt :-/

Best Regards, Thorsten.

Link to comment
Share on other sites

ich meinte das wenn er:

midi note c2 mit vel 40 empfängt (vom keyboard oder seq), pin 1 anstellt wird - bei vel 60 pin 2 / vel 100 pin 3 / vel 127 pin 4 / note c#2 vel 20 pin 5 usw. . ..

also keine "schwankenden sachen", nur eine spalte mehr zum konfigurien der midi in events mit vel auf die dout pins in der "midio-presets.inc"

ich hab mir nähmlich einen "mini-stufen-DAC" aus nem dout gebaut, um meine drums mit "accent" zu triggern - verschiedene wiederstände und ein paar dioden ;D

nur ist jetzt das set auf 4 mal soviel tasten gelegt und unpraktisch in der handhabung ...

- deshalb wäre vel (midi) in für den midio echt super  ;D

aber nur wenns nicht zu kompliziert wird ... ::)

hallucinogen

Link to comment
Share on other sites

Hmpf - sorry, musste in letzter Zeit zu oft die Anfrage nach einer Velocity Funktion abblocken, dass ich mir die Frage gar nicht mehr richtig durchgelesen habe.

Eine neue Spalte ist nicht moeglich - das Datenformat ist eingefroren, jede Aenderung zieht eine Menge Aufwand mit sich. Und das tue ich mir nicht an.

Entweder man programmiert eine zweite Tabelle, oder man codiert es hart...

Fuer den Anfang koenntest Du mal folgendes ausprobieren (habe es nicht getestet!):

USER_DIN_NotifyToggle
      movlw      0x90                  ; Note On, Channel 1
      IFNEQ      MIOS_PARAMETER1, ACCESS, rgoto USER_DIN_NotifyToggle_End
      movlw      0x3c                  ; C-2
      IFNEQ      MIOS_PARAMETER2, ACCESS, rgoto USER_DIN_NotifyToggle_End
      movf      MIOS_PARAMETER3, W      ; Note Off if Velocity == zero
      bz      USER_DIN_NotifyToggle_End

      ;; Note On for C-2 at Channel 1, Velocity > 0

      ;; save MIOS_PARAMETER1 in TMP1
      movff      MIOS_PARAMETER1, TMP1

      ;; set the 8 pins of SR1 depending on the 3 most significant bits of velocity value
      swapf      MIOS_PARAMETER3, W
      andlw      0x07
      call      MIOS_HLP_GetBitORMask
      movwf      MIOS_PARAMETER1
      movlw      0x01                  ; second shift register
      call      MIOS_DOUT_SRSet

      ;; restore MIOS_PARAMETER1 from TMP1
      movff      TMP1, MIOS_PARAMETER1

USER_DIN_NotifyToggle_End
        ;; continue at MIDIO button handler
        goto    MIDIO_DIN_Handler

falls es funktioniert, bist Du hiermit verpflichtet, einen Schaltplan sowie eine Kurzbeschreibung ueber den Mini-DAC fuer das MIDIbox Portal zu schreiben ;-)

Gruss,

       Thorsten.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...