-
Posts
15,247 -
Joined
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by TK.
-
Hi, I haven't noticed this effect yet, could it be that a scanner or printer driver is running in background which accesses the LPT port from time to time in order to detect a connected device? I have a similar problem when my Mustek scanner driver is active Best Regards, Thorsten.
-
For one of future releases I'm planning an AOUT mapping feature which allows you to map these analog outputs to internal/external CC/Note events (so: 512 possibilities!). So, it's not only possible to control the outputs from internal stuff like envelopes/LFOs/etc... or static parameters, but also from the wavetable sequencer or --- of course (this is the easiest thing) from external notes or CC The implementation will be similar to MIDIbox FM, for myself it's low priority since it can already be changed in the source code (so, the functionality is already available for somebody who knows the internals). I collect all the requirements before starting with this part, so that I don't miss anything which could "hurt" in the future (incompatibility issues) I will provide a very detailed description once I find the time. To give you an impression: last weekend I overworked the MBHP_MF page (http://www.ucapps.de/mbhp_mf.html), it took me several weeks until I reached the right mood for writing down all this stuff. A similar "delay" can be expected for the TB303 mode description ;; 0: no AOUT module ;; 1: enable access to the AOUT module via Port J6 ;; 2: enable access to the AOUT_LC module via Port J6 #define ENABLE_AOUT 2 [/code] [code] ;; -------------------------------------------------------------------------- ;; FUNCTION: SID_AOUT_LC_Load2SR ;; DESCRIPTION: This function loads a 16bit value into the shift register ;; IN: o low byte of SR value in TMP1 ;; o high byte of SR value in TMP2 ;; OUT: - ;; USES: TMP[12345] ;; -------------------------------------------------------------------------- BIFCLR SID_SE_OPTION, SE_OPTION_TB303, BANKED, rgoto SID_WT_Branch_Play_NotTB303 SID_WT_Branch_Play_TB303 ;; in TB303 mode: ;; increment tick counter, reset if counter >= 6 incf SID_WT_303_TICK_CTR, F, BANKED movlw 0x6 cpfslt SID_WT_303_TICK_CTR, BANKED clrf SID_WT_303_TICK_CTR, BANKED ;; play note when counter-1 == 0 decf SID_WT_303_TICK_CTR, W, BANKED bz SID_WT_Branch_Play_TB303Note ;; release gate when counter-1 == 3 decf SID_WT_303_TICK_CTR, W, BANKED xorlw 3 bz SID_WT_Branch_Play_TB303G0 rgoto SID_WT_NextClkLoop SID_WT_Branch_Play_TB303G0 IRQ_DISABLE ;; exception: don't clear when slide is active BIFCLR SID_WT_STATE, WT_STATE_SLIDE, BANKED, rgoto SID_WT_Branch_Play_TB303G0_Clr SID_WT_Branch_Play_TB303G0_Slide bsf SID_WT_STATE, WT_STATE_SLIDE_PREV, BANKED rgoto SID_WT_Branch_Play_TB303G0_End SID_WT_Branch_Play_TB303G0_Clr bcf SID_WT_STATE, WT_STATE_SLIDE_PREV, BANKED bcf SID_V1_BASE + SID_Vx_MODE, SID_MODE_GATE_SET_REQ, BANKED bsf SID_V1_BASE + SID_Vx_MODE, SID_MODE_GATE_CLR_REQ, BANKED ;; rgoto SID_WT_Branch_Play_TB303G0_End SID_WT_Branch_Play_TB303G0_End [/code] (the counter has a predivider --- it's the WT rate --- and it can be synched to MIDI clock) The beta release is already available on request In fact everything is finished since 2 weeks, only the documentation is missing ;-) Best Regards, Thorsten.
-
dann muss man entweder warten, bis TK seine 1000 andere Plaene verwirklicht hat, bis er dazu kommt, sich in den AVR einzuarbeiten, oder man muss hoffen, dass jemand anderes diesen Job uebernimmt ;-) Gruss, Thorsten.
-
Hallo Moritz, fuer MIOS gehoert die Ansteuerung von bis zu 128 digitalen Ausgaengen "zu den leichtesten Uebungen". Das System ist dabei gerade mal zu 10% ausgelastet, die Latenz ist vernachlaessigbar klein (sobald das MIDI Event eingetroffen ist, wird es im Worst Case ca. 50 uS spaeter bearbeitet). Die Latenz wird also im Wesentlichen von der MIDI Baudrate bestimmt, die betraegt 31250 Baud. Eine Note oder CC Event besteht im Normallfall aus 3 Bytes (-> ergibt 960 uS Uebertragungsdelay), oder im Falle, dass das ein MIDI Programm den sog. Running Status ausnutzt, 2 bytes (-> ergibt 640 uS Uebertragungsdelay) Nun bleibt nur noch die Frage offen, ob die Ausgaenge ueber ein einzelnes MIDI Event, oder ueber verschiedene (bspw. verschiedene Noten) angesteuert werden sollen. Falls einzelne Events verlangt werden (bspw. um die Ansteuerung mit einem MIDI Sequenzer zu vereinfachen), ist eine Latenz < 20 mS nicht machbar, da die Uebertragung von 80 Noten bedingt durch die Baudrate 76.8 mS (ohne Running Status), bzw. 51.2 mS (mit Running Status) dauert. Man koennte jedoch die Eingaenge auch ueber eine SysEx Meldungen ansteuern - 80 bits lassen sich in 12 7-bit werte verstauen, diese werden von einem F0 und F7 Status Byte eingerahmt, macht 14 Bytes. Auf diese Weise koennte man die maximal erreichbare Updaterate bei 5 mS reduzieren. Gruss, Thorsten.
-
What cannot be controlled in realtime? Best Regards, Thorsten.
-
Hi Steve, in the meantime I'm not sure if a seperate keyboard for the TB303 sequencer would really improve the usability, therefore building this interface is a "low priority" topic in my ToDo list now. I'm using the new "note entry" feature of the MBSID editor instead, which handles WT sequences like a tracker: Another point is, that after heavy code optimization in the control surface routines (1k more flash memory available now!), I was able to add a soft-option for TB303 mode. Means: it's possible to use the same firmware for common MBSID and TB303 mode: (as you can see, there are 6 remaining flags free for future options :) A new feature of the MBSID is a low-cost AOUT driver. The upcoming AOUT_LC module mainly consist of 2 * 74HC595, 36 * 10k resistors and one LM324. The part costs of this "selfbuilt" DAC are around 4 EUR - a nice starting point for everybody who wants to control external analog filters :) Best Regards, Thorsten.
-
Hi Jon, see this page http://www.jsynthlib.org/docs.html, search for "Mac OS X" Best Regards, Thorsten.
-
problems with META events and double notes
TK. replied to bosone's topic in MIOS programming (Assembler)
MIDI_EVNT_VALUE is zero when the button is depressed, therefore it's normaly only useful for velocity or CC values There are 16*128 = 2048 other possible meta events if you wouldn't rely on this variable Best Regards, Thorsten. -
Analog versus 4 bit encoder for Organ Voice balance control
TK. replied to robinfawell's topic in MIDIfication
Happy Birthday Robin! Best Regards, Thorsten. -
Hi Ludo, The assign function is a typical feature which has been requested by somebody, that I've implemented in an extreme flexible way to meet all possible needs, but which is in fact very rarely used (otherwise you would get an answer from people who like this feature). The upper assigns are sending CCs at channel #16, you can control functions of your host sequencer with them The lower assigns can be used to control the 5 visible menu parameters directly (a very powerfull feature, especially when WT sequences are edited) However, this feature is full configurable. See cs_menu_enc_table.inc You can send CCs at any channel, relative MIDI events (e.g. to software from Native Instruments like Reaktor to control external effects), you can change any SID parameter, switch to menus automatically or not, or (as mentioned) you can change the visible menu parameters directly. Not sure which individual setting you would prefer, I use the default setup Best Regards, Thorsten.
-
only one ledring for multiple encoder?!
TK. replied to bosone's topic in MIOS programming (Assembler)
So, with a single LED ring it makes sense to connect the cathode line directly to ground, so that it is always powered Best Regards, Thorsten. -
Yes, this is possible with Meta Events (-> mb64_meta.inc) Best Regards, Thorsten.
-
MBSID CS step B - many problems - pls help!
TK. replied to Hermes's topic in Testing/Troubleshooting
yes, it is - this effect is caused by the caps. However, it means that there is no short between Vss and Vdd, thats the only good input. Does this also happen when MIOS is uploaded again? -> Remember that MIOS has to be uploaded within 2 seconds after power-on -> use MIOS Studio which provides a proper error handling (-> http://mios_studio.midibox.org) Best Regards, Thorsten. -
problems with META events and double notes
TK. replied to bosone's topic in MIOS programming (Assembler)
What did you try exactly? Did you also try to send MIDI_EVNT_VALUE instead of MIDI_EVNT1? Best Regards, Thorsten. -
> even a software "filter"? The integrated ADC of the PIC doesn't support impedances > 10k, but you could increase the AIN deadband in the application (this setting can mostly be found in the main.asm file). Note that like with every filter, the AIN deadband reduces the resolution! Best Regards, Thorsten.
-
only one ledring for multiple encoder?!
TK. replied to bosone's topic in MIOS programming (Assembler)
How did you connect the cathodes of the LEDs, and to which shift registers (SRs) are the anodes connected? Best Regards, Thorsten. -
Hi Ludo, the official release doesn't use an additional LED for the 6th LFO waveform, the "Random" and "Sine" LED will lit at the same time to notify this, and this should be ok Just keep in mind that I would never change my own frontpanel, therefore you can be sure that the original design will always work Best Regards, Thorsten.
-
I think I will change this in the next official release, because it really allows more variations than the current BPM divider settings. This would mean that BPM/32 and BPM/64 won't be available anymore. However, if somebody needs this (I don't think so), then he is always allowed to reverse the change ;-) Best Regards, Thorsten.
-
This is the MIDIbox FM of sjakie - he wrote:
-
ZK12 redesigned his MIDIbox Plus case (it's an old computer keyboard) - although the PIC is running with a very old firmware version (v1.004, this release is older than 4 years), it works fine :)
-
This is the MIDIbox64 of MAG, he built it especially for Logic Audio:
-
MBSID CS step B - many problems - pls help!
TK. replied to Hermes's topic in Testing/Troubleshooting
Hi Hermes, check the tracks around the MIDI In port, it seems that you damaged one of them with the soldering iron (by fault) Best Regards, Thorsten. -
please read the step-by-step instructions in the main.asm header Best Regards, Thorsten.
-
yes, there are several reasons - all PICs with integrated USB have bugs which affect the compatibility with existing MIOS projects. In addition, the USB PICs cannot be used as USB->MIDI bridge due to a silicon bug in the EUSART which I found during the firmware development for the PIC18F4550: -> http://forum.microchip.com/tm.asp?m=85120 therefore I've given up to use this chip - it's a waste of time Best Regards, Thorsten.