-
Posts
15,247 -
Joined
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by TK.
-
Hallo, Weiter unten in CS_MENU_ENC_CS_Change_Menu wird noch der Cursor Offset hinzuaddiert - evtl. rufst Du die Routine vorher auf. Du koenntest in CS_MENU_EncSpeedSet (cs_menu.inc) eine aehnliche Verzweigung einbauen, die dann in diesem Menu den SpeedMode der Encoder auf MIOS_ENC_SPEED_SLOW mit pre-divider 0x03 (4) einstellt. Gruss, Thorsten.
-
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.
-
Hallo, Du musst die MB64E so konfigurieren, dass ein Poti bspw. Note On/Off Events sendet. Entweder machst Du das direkt am Display (siehe Tutorial) oder --- falls nicht vorhanden --- mit dem mk_syx Skript. Auch Serge's Editor eignet sich hierfuer, der laeuft jedoch nur unter Windows und ist nicht ganz Up-to-Date Umprogrammieren musst Du hierfuer nichts, deshalb wird diese Loesung von vielen Leuten favorisiert. Bedenke aber, dass die Tasten am AIN nicht entprellt werden. Falls die Qualitaet der Taster also etwas schlechter ist, muessen sie doch an ein DINX4 Modul angeschlossen werden - und die Firmware muss um ca. 10 Zeilen Code ergaenzt werden. Wenn Du die Hardware erstmal aufgebaut hast, kann ich Dir auch gerne die Codezeilen verraten - jetzt macht es noch keinen Sinn, denn wer weiss, wie sehr sich der Code bis dahin aendert... 128 virtuelle pots: das heisst, dass 128 parameter-werte gleichzeitig empfangen und verwaltet werden koennen. Wenn Du nun bspw. 16 Endlosregler anschliesst, so kannst Du trotzdem 128 verschiedene Parameter steuern und bequem zwischen den 8 Pages (Seiten) hin- und herblaettern. Bei 32 Endlosreglern sind es 4 Seiten, bei 64 sind es 2 Seiten, usw... Schliesst Du einen BankStick an, so koennen weiterhin nur 128 Parameter gleichzeitig empfangen/verwaltet werden, doch mit jedem Stick gibt es 8 Baenke (Parametersaetze), zwischen denen Du umschalten kannst. Und nun koennen an die MB64E neuerdings auch noch zusaetzlich bis zu 64 analoge Potis/Fader angeschlossen werden. Das bedeutet, dass sich diese Eingabeelemente die 128 parametereinstellungen mit den Endlosreglern teilen. Oder Du laesst die Endlosregler weg, und nimmst die 128 Parameter ausschliesslich fuer die Potis/Fader her. Wie auch immer. Achso, die 64 zusaetzlichen Parameter fuer die Buttons sind unabhaengig von den 128 virtuellen Potieinstellungen verfuegbar. Manchmal glaube ich, dass ich einfach zuviele Features einbaue ;-) Gruss, Thorsten.
-
Hallo, nach wie vor ziemlich ominoes das ganze. Wie dem auch sei: mit dem First Level Bootstrap Loader kann man beliebige Programme aufladen. Man muss lediglich sicherstellen, dass der Startvektor bei 0x0004 statt 0x0000 beginnt und der Code den Bereich von 0x7c00-0x7fff nicht ueberlappt. Das sollte eigentlich durch eine Modifikation in der C Startup Routine, bzw. im Locatorfile (falls es so etwas gibt) machbar sein. Ich bezweifle, dass sich mit C an den kritischen Stellen wie MIDI Stack und Shift Register Handling die selbe Performance wie mit Assembler erreichen laesst, aber fuer den Applikationslevel waere eine C Anbindung hoechst interessant, weil es viel mehr Leuten ermoeglichen wuerde, MIOS Applikationen ohne tiefgreifendes Programmierwissen zu modifizieren oder neu aufzubauen. Auch zur Dokumentation ist C ganz praktisch. Deshalb habe ich die Einbindung von C schon lange geplant, aber aus Zeitgrunden bisher immer wieder aufgeschoben. Siehe auch: http://forum.keyboards.de/forum-cgi/read.cgi?ID=79480&Re=98&Ru=26 Falls Du Interesse hast, mit mir in dieser Richtung zusammenzuarbeiten, kannst Du mich gerne per EMail kontaktieren. :) Gruss, Thorsten.
-
Hi, I don't know any rotary encoder with spring return. I guess that you mean a jog wheel which consists of some buttons - and for this I don't know a distributor - maybe somebody else could help. Number of buttons: up to 128 are supported by MIOS itself, only 64 by MB64 and MB64E, but you can add a small and simple software handler for the remaining 64 buttons. Best Regards, Thorsten.
-
Hi, I don't know the possibilities of FM7 so much, but I fear that it only supports MIDI parameters with 7 bit resolution like every VST instrument. You should also check which parameters are accessible - and how exactly, this information should be available in the user manual. Best Regards, Thorsten.
-
It was my MIOS robot who posted this article ;-) Best Regards, Thorsten.
-
Hi, the new version allows to edit the additional parameters of MIDIbox SID V1.6 (curve, assigns, phase synchronization, keyboard zones): http://www.midibox.org/midibox_sid/jsynth_018_with_mbsid_rel6.zip Also the layout has been improved - now we have some nice knobs instead of faders :) Best Regards, Thorsten.
-
Hallo, nein, waehrend des Programmierens sollte das Core Modul nicht mit Spannung versorgt werden. Ich kann mir die Ursache fuer das Problem nicht erklaeren, habe aber erstmal eine grundsaetzliche Frage: warum moechtest Du den PIC18F In-Circuit programmieren? Normalerweise flashed man einmalig den Bootstrap Loader in den PIC, anschliessend laedt man MIOS und die Applikationen via MIDI auf. In anderen Worten: seit MIOS ist der ICP-Port eigentlich obsolet Gruss, Thorsten.
-
Hallo, vorweg nochmal zur Erinnerung: das Problem ist immer das Datenformat. Waehrend der Designphase lege ich fest, welche Informationen im EEPROM bzw. BankStick gespeichert werden. Dabei muss ich mich auf eine maximale Anzahl an Bedienelementen beschraenken, um moeglichst viele Daten unterzukriegen. Spaeter laesst sich das Datenformat nur mit sehr grossen Aufwand aendern, weil in der Zwischenzeit Skripte, Editoren, Presetfiles usw. auf dieser Grundlage entstanden sind, die dann alle nicht mehr kompatibel waeren. FAQMARKER Nun zu Deiner Anfrage: am besten nimmst Du die MIDIbox64 Applikation und baust in USER_DIN_NotifyToggle eine Routine fuer die restlichen Buttons ein. Die muss ja lediglich MIDI Controller senden. Ein Beispiel hierfuer gibt es in der ain64_din128_dout128 Applikation. Falls Du kein Display verwendest, und auf die weitreichenden Konfigurationsmoeglichkeiten der MIDIbox64 verzichten kannst (was bei der Ansteuerung von Traktor der Fall ist), reicht die ain64_din128_dout128 Applikation voellig aus. Gruss, Thorsten.
-
Thanks! :) The schematic for the AOUT module can be found in the MIOS download section, I've also a ready made PCB but no time to write down all the details :-/ The schematic of the moog filter can be found at Rick Jansen's Website: http://dropmix.xs4all.nl/rick/Emusic/ Best Regards, Thorsten.
-
Hi, you are right, I haven't taken into account that the serial interface can also run at higher clock speeds so long no "common" IIC peripherals (like the BankStick EEPROM) are connected to the serial bus. This shouldn't be a big problem, so long the SPI pins are not allocated at the master and slave side (this isn't the case for some MIOS applications). I'm not sure if you are able to reach the same performance like with the parallel interface, but the wiring would be easier. My initial idea was to provide a high-speed solution for graphical LCDs: http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=concepts;action=display;num=1070211477;start=0#0 where MIOS has to transfer a high amount of data. Best Regards, Thorsten.
-
I just remember that you could simply use the MIOS debug function to activate the edit button per remote access: f0 00 00 7e 40 00 0d 01 00 60 20 00 0e 00 0e 00 00 00 00 f7 calls "USER_DIN_NotifyToggle" with button number 0x0e (-> the edit button) and value 0x00 (button pressed). The edit function can be deactivated by sending the SysEx command again. It's possible to add an "edit" LED without a DOUT module. Just set "ENABLE_J5" to 1 (main.asm) and assign the Edit function to a pin of J5 (cs_menu_io_tables.inc) Best Regards, Thorsten.
-
Here some impressions from my first experiments with a real (not virtual) Moog filter: (I've received this kit as a present from Hallucinogen --- thanks for this great toy!) The cutoff frequency is controlled by MIDIbox SID via the AOUT module. In the first example you can hear a bass sound. In the first part the Cutoff and Resonance is changed by hand, in the second part CutOff is controlled by an envelope generator with non-linear curve. Decay and Sustain are increased smoothly: http://www.midibox.org/midibox_sid/mbsid_moog_bass.mp3 The second example demonstrates another possibility: saturated filter distortion. I've modified the input amplifier, so that the gain factor can be increased until the amplifier saturates. Just hear the result - sounds a little bit like a guitar: http://www.midibox.org/midibox_sid/mbsid_moog_guitar.mp3 (in the second part I've added the "Banaan Electrique" Fx from Reaktor - a guitar amp simulation + Reverb + Delay) Last but not least all together + some drums: http://www.midibox.org/midibox_sid/mbsid_moog_demo.mp3 (the tune is known as "Delta Theme" from Rob Hubbard) This thing keeps me busy :) Best Regards, Thorsten.
-
Another MIDIbox SEQ was born --- this time from d2k (who else) ;-) Built into a C64 II case:
-
Hallo, ich habe mal schnell die notwendigen Aenderungen eingebaut und sie vom CS_MENU_DISPLAYED_ITEMS parameter abhaengig gemacht. Das neue File befindet sich unter http://www.ucapps.de/tmp/mbsid_2x16_enc_fix.zip und wird in der naechsten Release enthalten sein. Gruss, Thorsten.
-
Auch V0 wird parallel an beide LCDs angeschlossen. Ich habe nun einen zusaetzlichen Kommentar in das Diagramm eingebaut, um klarzustellen, dass alles eigentlich ganz einfach ist ;-) > Wie ist das überhaupt, wenn ich 2 Displays an die Midibox64 anschließe, bleibt eins einfach tot? Natuerlich kannst Du zwei Displays anschliessen - aber eins wird nicht initialisiert. Zum Testen koenntest Du bspw. die MIDIbox SEQ Applikation aufladen (vorher in setup_mbseq_vintage.asm noch DEFAULT_LCD_SIZE auf 3 einstellen) > (hoffe ja, das bald 2 unterstützt werden) wegen diverser Dienstreisen und einem Umzug in eine neue Wohnung, der demnaechst ansteht, wird es vor September nichts. Andererseits plane ich mittlerweile schon an einer 4 x 2x40 Option fuer MB64 und MB64E - dies nur als Vorwarnung ;-) Gruss, Thorsten.
-
Hallo, vielleicht ist IC-Prog nicht richtig konfiguriert? Irgendwo im Konfigurationsmenue gibt es eine Option, mit der man die Vcc fuer den JDM aktiviert. Gruss, Thorsten.
-
Hallo, eigentlich ist ein 2x16 Display fuer die StepC Option keine besonders gute Wahl, denn normalerweise moechte man alle 5 Parameter, die zur OSC und ENV Gruppe gehoeren gleichzeitig sehen. Hast Du bereits CS_MENU_DISPLAYED_ITEMS auf den Wert 4 eingestellt? Wenn der fuenfte Parameter dann immer noch nicht sichtbar ist, musst Du wahrscheinlich die sogenannten "Page Offsets" in cs_menu_enc_table.inc anpassen Gruss, Thorsten.
-
Hallo, an den Shiftregistern liegt es nicht, die capturen bereits sehr sauber, auch ein Kondensator hilft da nicht weiter - die automatische Entprellung wird mit der Funktion "MIOS_SRIO_DebounceSet" initialisiert. Am besten in USER_Init (-> sid_init.inc) einfuegen. Die MBSEQ verwendet standardmaessig den Wert 32, der sollte auch mit der MIDIbox SID funktionieren: movlw 32 call MIOS_SRIO_DebounceSet Gruss, Thorsten.
-
Dafuer gibt es leider kein Beispiel, und es ist auch etwas komplizierter, einen Treiber fuer mehr wie zwei Displays zu schreiben - mit einer Modifikation in irgendeiner Tabelle ist es natuerlich nicht getan, hier muesstest Du schon selbst einige Zeilen an Code schreiben. Um auf die eigentliche Frage zurueckzukommen: grundsaetzlich werden die LCDs 1:1 parallel an J15 angeschlossen, lediglich die Enable Leitung gehoert an einen Pin, der fuer nichts anderes verwendet wird. In der Software wird das Display dann mit MIOS_LCD_TypeSet selektiert (siehe Dokumentation) --- wichtig: MIOS selbst kann normalerweise nur zwei Displays ansteuern, wenn es noch mehr sein sollen, muss man temporaer mit MIOS_LCD_TypeSet auf das andere Display umschalten, den Text ausgeben und anschliessend wieder auf die urspuenglichen Displays zurueckschalten. Gruss, Thorsten.
-
Nee, von MIOS werden die alten Disc drives bestimmt nicht unterstuetzt. Der Aufwand waere zu gross, und die meisten drives hatten sowieso ein qualitaetsproblem, nach ein paar Jahren war meistens der Lesekopf hinueber... Gruss, Thorsten.
-
Bank change handler implemented for Sequencer V2
TK. replied to sil909's topic in MIOS programming (Assembler)
I also thought about such a feature, maybe in combination with the song mode - therefore I've reserved some memory to store patch informations (and maybe also static CC settings) in the dedicated "song bankstick". It has nothing to do with Meta events, since such MIDI events won't be handled by the sequencer core, but by seq_song.inc. Sorry that I cannot give you much more explicit informations, it would need much more time to describe the required changes than to program it by myself... changes have to be made at many places, not only in seq_song.inc! Best Regards, Thorsten. -
Very good! :) Best Regards, Thorsten. FAQMARKER
-
Hi, there is a step by step troubleshooting guide available here: http://www.ucapps.de/howto_debug_midi.html Did you already check all the debugging suggestions? Best Regards, Thorsten.