-
Posts
15,253 -
Joined
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by TK.
-
Hi all, I'm off till January - but before I want to wish everyone a merry Christmas and a very happy New Year Best Regards, Thorsten.
-
This week: the chrome-plated MIDIbox Plus of George Aggelides Link to his homepage: www.vgo.w-d-n-c.com
-
A new MIDIbox SID version is now available. It not only comes with a lot of minor bugfixes and improvements, but especially (and finally) supports multiple BankSticks. http://www.ucapps.de/midibox_sid_changelog.html A nice christmas present for all users is the new collection of 128 preset patches: http://www.ucapps.de/midibox_sid/preset_patches_v1.zip (thanks to Bosone and RadicalAns who gave us their creations!) We've now two preset banks for 6581 and 8580. The patches within the bank are the same, but optimized for the appr. SIDs Here the list of the presets: Patch 001-107 made by Thorsten Klose (2002-2004) Patch 108-125 made by Matteo Bosi (2003-2004) Patch 126-128 made by David Panseri (2004) Since MIDIbox SID now can store up to 1024 patches, you are always allowed to send me your own sounds for the next release Best Regards, Thorsten.
-
Hi Nikolai, before I spent one or two hours to think about how to describe the required programming steps especially for you, one question: Did you ever try the ID_MBLC_HOLD_LAYER function which switches between the two layer tables? It works like a shift button, and the implementation is a little bit more advanced than the way how you are planning to do this. Because not only the button functions, but also the LED functions are switched. And if the LED status is changed from the host application although it's located in the not-active layer, the status will be saved in RAM so that this information doesn't get lost. I think that you want to have something like this, but should I really describe all the details? If you want to have more than one "shift" button, you could also use smaller tables. But before you are trying this, I would highly suggest to begin with a simple DIN example from the MIOS download page. Try to understand how the programs are working, this should enable you to understand even more compilcated implementations sooner or later. And once you've reached this level, it will be much easier for me to give you hints which really help Best Regards, Thorsten.
-
Hi Artesia, I've prepared a very generic solution for the CV OUTs: the EG5, the two LFO and the wavetable outputs of each voice (makes 36 signal sources) can be assigned to 8 AOUTs. So, you can not only control a stereo VCA, but also filters, distortion, or whatever you want. But I won't provide special schematics, because there are a lot of webpages from Synth-DIY specialist which cover these topics. However, you can start a collection of useful links if you want. 64 voices: this suggestion can only come from people who don't know how busy the PIC18F already is to handle the 6 4-operator voices (+5 percussion voices) of the OPL3. Here the register allocation list to give you an impression. Note that nearly the whole RAM is allocated. I did my best to give each RAM cell a special purpose, most of them are used for very interesting features (most of them are not part of the OPL3 itself, but unique for MIDIbox FM :-)) So, take MIDIbox FM as a synth with a special sound which cannot be achived with a common (software) synth (partly due to the "nice" and not-emulatable distortions which are caused by the limited resolution of the OPL3 internals - lets call it "crispy" ;-) ), but don't take it as a high-end synthesizer with a nearly unlimited number of voices and always perfect sounds. This area is covered by synth manufactures and not worth the effort from my side. Note also that each additional feature would mean that I have to downstrip already implemented features. The resources of the PIC18F452 are tiny compared to state-of-the-art microcontrollers (see the News section for oppinions on this topic) Best Regards, Thorsten.
-
Hi Nikolai, the best place is in lc_buttons.inc - here you can modify the LC_BUTTON_Handler so that one button is not forwarded to the common code, but sets/clears a flag of any free register (see app_defines.h for the memory allocation, some addresses which are not used yet are 0x24-0x3f) Thereafter you could select between different button tables depending on the flag state. You could do this for all buttons at the same time, or only for a small range - it's on you. Best Regards, Thorsten.
-
I purchased two touchpads from cannibalized laptops. They have a lot of pins, but no documemtation. I guess that some pins are for the PS2 interface, but I don't want to do identify the IOs with the mouse/keyboard port of my PC (to avoid any damage) So, I'm just waiting for the first release of Duggle's PS2 project. Currently both of us have other things to do ;-) Best Regards, Thorsten.
-
Hallo, Die gesammte Rueckmeldung ist von Interesse. F0 ist nur der Anfang des SysEx-Strings. Interessant ist der Code hinter "F0 00 00 7E 40 00" -> hier sollte 0F stehen. Wenn 0E erscheint, wurde ein Fehler erkannt. Hinter dem 0E erscheint der Fehlercode (siehe MIOS SysEx Implementation fuer die verschiedenen Codes) vermutlich sind die Daten und/oder Controlleitungen nicht richtig angeschlossen. Dieser Fehler wird sehr haeufig gemacht, da die Verdrahtung nicht ganz so einfach ist (keine 1:1 Verbindung), oder das Display ein ungewoehnliches Pinout hat. Hier hilft meistens das Datasheet weiter. Ausserdem koenntest Du die Kabel mal mit einem Durchgangspruefer checken, um evtl. Kurzschluesse oder offene Leitungen zu erkennen. das wird auch nicht so ohne weiteres funktionieren, wenn die Host-Applikation die entspr. Daten nicht sendet. Du koenntest mal ein paar MIDI Noten (Kanal #1) zur MBLC schicken, damit lassen sich die Button-LEDs ein- und ausschalten (geht am einfachsten mit dem virtuellen Keyboard von MIDI-Ox). Die dazugehoerigen Buttons sollten ebenfalls MIDI-Noten schicken. Die LED-Kraenze und Meter kann man mit CC Controllern testen, naehere Details hierzu stehen in der englischen Version des Logic Control Manuals (siehe MIDIbox Wiki) ja, wahrscheinlich ist die Power-Verdrahtung (+5V/Ground, bzw. Vdd/Vss) nicht sauber, so dass nur noch ein verrauschtes Signal an Port J5 ankommt Die Motorfader kann man uebrigens ebenfalls mit MIDI-Ox testen. Einfach das virtuelle Keyboard einschalten und mit Hilfe der Insert/Delete Taste Pitchbender Events versenden. Mit +/- kann man den MIDI-Kanal einstellen, jeder Kanal (1-8 ) steuert einen Fader. sollte es auch. Ich wuerde mal auf ein paar Verdrahtungsprobleme tippen Gruss, Thorsten.
-
Link zum urspruenglichen Artikel: http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=troubleshooting;action=display;num=1103062945
-
Hallo Martin, fuer den PIC16F gab es mal einen MIDI Sender/Empfaenger, aber der ist fuer den PIC18F452 nicht mehr notwendig, da der Bootloader die Rolle uebernommen hat. Soll heissen: wenn der eine MIDI Meldung rausschickt, weiss man auch, dass der PIC angelaufen ist. Mit Hilfe einer LED am Tx Port kann man auch ohne MIDI-Interface festellen, ob sich etwas tut. Und den MIDI-Empfangsteil testet man waehrend der Uebertragung von MIOS "automatisch". Ein alternatives Programm wuerde also keinen weiteren Input bringen. Und ich moechte bei der Gelegenheit auch nochmal anmerken, dass der Loader schon seit fast zwei Jahren ohne Modifikationen verwendet wird und er selbst noch nie fuer Probleme gesorgt hat. Wenn Probleme auftreten, dann liegt es meistens am JDM (da kann ich leider nicht weiterhelfen, ich habe ihn nicht designed und biete nur deshalb auf meiner Homepage Informationen und Schaltplaene an, weil so viele Leute darum gebeten haben), oder am MIDI Interface (ich kann wirklich nichts dafuer, wenn die Soundkartenhersteller den MIDI Port so stiefmuetterlich behandeln), oder an einer fehlerhaften Loetstelle am Core Modul (dieses Problem muss man selbst in Griff bekommen) Was ich nach wie vor anbiete ist der kostenlose Programmierservice. Ich brenne den BSL in den Chip und lade MIOS auf, um sicherzustellen, dass der PIC auch funktioniert. Falls Du also nicht weiterkommst, koenntest Du mir den PIC einfach zuschicken. Doch du muesstest Dich beeilen, denn der Weihnachtsurlaub naht Gruss, Thorsten.
-
Hi, standard question: is the 1k pull-up resistor (R2) connected to pin RA4 of the core module? Best Regards, Thorsten.
-
Hi, yes, the size is right. One block consists of 1024 bytes, but they are embedded in a SysEx message which only allows 7-bit data. Therefore the data will be scrambled by the hex2syx.pl script, and descrambled by MIOS (or the bootstrap loader). This process works very stable since two years and has been tested on many different systems, so an error is very unlikely here. How are the results of the final Rx/Tx loopback check? If this is not working, you know where to earch for the error Best Regards, Thorsten.
-
because this is the recommented impedance for the ADC suggested in the PIC18F datasheet. 1k..10k should be ok, linear curve is a strict requirement. If you buy pots which don't meet the spec, you could notice jittering MIDI values. Best Regards, Thorsten.
-
Hi, the Emu8000 is just a wavetable synth --- not very interesting, most freeware VSTs can do better sounds Best Regards, Thorsten.
-
Hallo, wenn Du Dir wegen des Bootloaders unsicher bist, wuerde ich folgendes vorschlagen: der JDM macht zwar mit einigen Motherboards beim Schreiben Probleme (so bspw. auch bei meinem Asus P4P800 - ohne externe Spannung klappt es nicht mehr), doch das Lesen sollte unabhaengig von der externen Hilfsspannung funktionieren. Deshalb koenntest Du versuchen, den PIC mit IC-Prog zu verifizieren. Falls IC-Prog einen Unterschied feststellt, dann teile ihn mir bitte mit. Zu GALEP: habe ich noch nicht verwendet, deshalb kann ich auch nichts zur Qualitaet der Software sagen. Ich habe es schon oft erlebt, dass die Hersteller zwar behaupten, ein bestimmter Chip liese sich mit ihrem Brenner programmieren, sie es aber nicht selbst ausprobieren. Demzufolge hat die Software dann ihre Macken... Kritisch ist bspw. die Programmierung des Konfigurationssektors, dort wird u.a. der verwendete Oszillator eingetragen. Wenn hier falsche Werte stehen, dann waere das eine Erklaerung dafuer, warum der PIC nicht anlaeuft. Falls GALEP die Chip-Konfiguration anzeigt, so vergleiche sie bitte mit der Konfiguration in diesem Snapshot: http://www.ucapps.de/mios/bootstrap_id_header.gif Dieser Snapshot zeigt auch noch etwas anderes, was wichtig ist: die Chip ID. Sie sollte in Deinem Fall auf 000000000000 gesetzt werden (...142 ist nur ein Beispiel!) es kann Dir spaeter bei vielen Problemen weiterhelfen. Viele Testprogramme geben wertvolle Meldungen aus, die Dir bei der Fehlersuche helfen. Doch das LCD wird erst angesprochen, sobald MIOS aufgespielt wurde. Das ist uebrigens sehr wichtig: zunaechst das mios_v1_7.syx File aufspielen. Das LCD sollte danach eine Bootmeldung ausgeben. Die Applikationen werden erst mit diesem "Betriebssystem" laufen Gruss, Thorsten.
-
Link to Rowans well made MIDIbox LC http://69.56.171.55/~midibox/forum/index.php?topic=3726.0
-
The MIDIbox SID made by Stigmata He comes from Sweden and is asking for a source of Lazertran paper in his country, so that he can add some labels to the panel
-
It looks like your second BankStick (where Pin #1 is clamped to +5V) is not accessible. Either it is not wired correctly, or Conrad sent you the wrong chip - which part number is printed on the chip exactly (do you also see the name of the manufacturer)? Sidenote: Reichelt sells the Atmel 24C256 as ST M24256 - the Atmel EEPROM provides three chip select lines (which is good), the ST EEPROM not (which is bad). Maybe Conrad has also changed the manufacturer, regardless of the fact that the Specs could be different. Thats the reason why I'm asking Best Regards, Thorsten.
-
Hi Nikolai, you could create a second jumptable for the lower line and use this in lc_clcd.inc, below LC_CLCD_Msg_CursorUpdate_XL, when LC_CURSOR, 6 is set. But this possibly won't really solve your problem once the host prints informations at the lower line which relate to the tracks. The problem is, that the protocol doesn't provide some kind of "type of message" which allows to seperate between different layouts - I've no idea for a general workaround solution Best Regards, Thorsten.
-
Ja ist denn schon Weihnachten? :D Gruss, Thorsten.
-
It seems that the BankSticks are not correctly configured (I must admit that this is not goot enough documented at the website, but only in the .asm file) Just open setup_mbseq_v2.asm (or the .asm file you are using), search for DEFAULT_BANKSTICK_SONG_CS and set it to 1 The default is 0 since it is assumed that the MBSEQ is stuffed with a 64k BankStick Best Regards, Thorsten.
-
You are absolutely right, it looks much better with a LED matrix :) New version: (full view: http://www.ucapps.de/midibox_fm/mbfm_frontpanel_draft2.gif) Best Regards, Thorsten.
-
I don't think that this is possible for the really interesting sounds, since especially they are modulated by dedicated sound engines. However, why not grabing the SIDstation sounds and release the patches to the MIDIbox SID library? -> http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=misc;action=display;num=1058766179 (the link to the program is at the end of the thread) Don't tell me that this is too much effort - it's even much more effort to write tools which are doing this automatically ;-) Best Regards, Thorsten.
-
Dave/PayC: the .syx format would be fine. You can use Serge's SysEx tool to request the patch(es) (hope that it still works ;-)) Don't hesitate to add some spontaneous patches if you want. Not only that super bombastic stuff is interesting for other users... very common sounds can also be nice source for inspirations. Best Regards, Thorsten.
-
Thanks for the input so far! :) js: I just have found the manual at the Yamaha homepage. I don't think that I will realize the menu handling on this way (I made good experiences with the menu handling known from MBSID), but I will take the sound features as inspiration. :) PayC: yes, 8 encoders below the LCD are a comfortable solution, but they have to be so near by each other, that fast parameter tweaks are nearly impossible without touching the neightboured encoders. Therefore it works only on something like a sequencer for me. A possible workaround can be seen on Seppomans "the Brat" MIDIbox SID. He arranged the encoders in a displaced order. But this doesn't work with my 2HE rack case (0.05" must be free at the borders), therefore I skipped this idea. However, the encoder option will be supported by the firmware. To the 4 multipurpose encoders: no, the function will be realized similar to your first assumption: the buttons select a group of parameters for all 4 encoders. For example: "Volume" means the volume parameter for OP1/2/3/4, "BD Carrier" the 4 most important parameters for the bass drum carrier operator (possibly volume, frequency, decay for VCA and VCO) If not disabled, the LCD will change to a suitable menu view so that the parameters can also be edited there. This has two advantages: the values are visible on screen, and you have a fast access to the remaining parameters. Example: when "EG Sustain" is selected, you can change this parameter for OP1/2/3/4 with the multipurpose encoders. The LCD displays the EG menu which gives you fast access to Attack/Decay/Sustain/Release and the other settings of the operator. Let's call it "vertical" and "horizontal" editing. I think that this is the most flexible way The high number of parameters which can affect a FM sound increases the demand for a different user interface compared to a subtractive/additive synth. E.g., when all operators are chained, each volume knob can change the resulting sound into another direction. Example for how the three buttons should be handled: let's say "Volume" is selected. Press the first button three times so that Volume->Attack->Decay->Sustain is selected. Press the second button, the Sustain LED goes off, the LFO1 LED goes on. Press the second button two times so that LFO1->LFO2->EG5 is selected. Press the first button again, the Sustain LED goes on again. I hope that this handling is fast enough - I will try it out. Some last words to the three assignable groups: they will possibly be customizable in a special menu and saved with the ensemble. Means: each ensemble can get a seperate map, so that the user can collect the most important parameters of the patches/drums (which he wants to access fast during playing) in these groups Best Regards, Thorsten.
