• Content count

  • Joined

  • Last visited

Posts posted by TK.

  1. Ok, ich habe in den entspr. Schaltplaenen dann mal Pin 4 und 5 miteinander verbunden.

    Wurde ja auch so langsam mal Zeit ;-)

    -rw-r--r--  1 TK  staff  12558 Dec 30  2015 /Users/TK/Sites/ucapps/mbhp/mbhp_4xsid_c64_psu.pdf
    -rw-r--r--  1 TK  staff  17371 Jul  1  2007 /Users/TK/Sites/ucapps/mbhp/mbhp_4xsid_c64_psu_optimized.pdf
    -rw-r--r--  1 TK  staff  22704 Jul  1  2007 /Users/TK/Sites/ucapps/mbhp/mbhp_8xsid_c64_psu_optimized.pdf
    -rw-r--r--  1 TK  staff   5799 Jun 10  2006 /Users/TK/Sites/ucapps/mbhp/mbhp_sid_c64_psu.pdf

    Gruss, Thorsten.

  2. Frueher hat man auch Leute auf den Mond geschossen ohne zu bedenken, dass man das in 35 Jahren genau so wiederholen moechte... soviel zum Thema Nachhaltigkeit ;-)

    Schaust Du bitte nochmal auf den Schaltplan? Ist es nun Pin 4 oder 5, der bei Dir funktioniert?

    Gruss, Thorsten.

  3. Hallo Krizz,

    ich verwende das gleiche Netzteil von, da mir das mit den alten C64 Netzteilen zu gefaehrlich geworden ist - das bisher verwendete ist mittlerweile 35 Jahre alt, die Gefahr ist zu gross, dass irgendwann der 5V Regulator seinen Geist aufgibt und die Chips mit Ueberspannung versorgt.

    Gestern habe ich das neue Netzteil nach vielen Wochen mal wieder an meine MB6582 angesteckt, interessanterweise war die Spannung etwas niedriger als sonst. Das Backlight des Displays war dunkler als sonst, und nach einigen Minuten wurde der PIC reseted (wahrscheinlich der Brownout Reset, der bei VDD<4.5V anschlaegt)).

    Habe das Netzteil dann aus, und wieder eingeschaltet: danach lieferte es die volle Spannung (5V).
    Auch heute laeuft es problemlos, werde mir das aber beim naechsten Mal genauer anschauen.

    Insofern waere es interessant zu wissen, ob das neue Netzteil auch bei dir funktioniert, wenn es erstmal warm geworden ist? Danach aus/einschalten - vielleicht hilft es ja.

    Falls nicht, macht es u.U Sinn, zu kontaktieren (kann ich uebernehmen) - vielleicht kennen die das Problem bereits.

    Gruss, Thorsten.

  4. First of all we've to align on terminology: MIOS is an operating system, but we are speaking about the MIDIbox SID V2 application which is installed on your sammichSID hardware together with MIOS.
    It's the MIDIbox SID application which controls the SID registers.

    Second: there is no "clear gate" bit. In the video, you will see at 0:52 that the Gate bit (rightmost switch) is set to 0. And that's the same what MIDIbox SID is doing.
    And when you listen carefully, you will notice the same background noise, sometimes also called "leakage noise"

    With some SID chips (especially the older ones), this leakage noise is much louder. You are using 6581 R2 - this early chip version could be affected much more from this design flaw.

    From an interview with Bob Yannes:


    ANDREAS : What would you have changed in the SIDs design, if you had a bigger budget from Commodore?

    BOB YANNES : The issue wasn't budget, it was development time and chip size constraints. The design/prototype/debug/production schedule of the SID chip, VIC II chip and Commodore 64 were incredibly tight (some would say impossibly tight)--we did things faster than Commodore had ever done before and were never able to repeat after! If I had had more time, I would have developed a proper MOS op-amp, which would have eliminated the signal leakage which occurred when the volume of the voice was supposed to be zero. This lead to poor signal-to-noise ratio, although it could be dealt with by stopping the oscillator.

    What Bob calls "stopping the oscillator" is done during patch change by setting the TEST bit. It's also used by the Phs ("Phase Oscillator Offset") feature when a new note is played (but not when somebody stops to play a note...)

    The problem with this flag: it resets the oscillators - for typical "analogish" sound really no preferred option! 

    From this page:

    • DOR: Disable automatic Oscillator Reset during patch change. Could also be called DAORDPC flag ;-)
      Background: after patch change, MBSID normaly resets the oscillators to ensure, that a patch always sounds identical w/o unexpected phase cancelation effects between the oscillators. Other peoples prefer such effects, caused by freerunning oscillators. If you belong to those peoples, and know what it means, just activate this option - it will make you happy! ;-)
    53 minutes ago, synthmania said:

    One interesting thing is that there is a GSA parameter, that is also used to solve the ADSR bug, from what the manual says, and when I enable that; the outcome is like if I had a "hold"; so the note continue to play even after I release the key, at full volume. This is quite different from what I hear (very low volume tone after releasing the note).

    GSA requires an external VCA to control the volume


    BTW where do I set ADR to 0 and how do I tell MIOS to use the SW based filter ADSR? Thanks!

    You can set Atk, Dec and Rel to 0 in the OSC page, and configure the filter in the FIL page.

    Best Regards, Thorsten.

  5. Just set the ABW (ADSR Bug Workaround) flag on your sammichSID.

    Search on this page to get more information about the consequences: 

    • ABW (ADSR Bug Workaround): an option which provides a less usual method to overcome the ADSR bug. Whenever the envelope is retriggered, the ADSR registers will be zeroed for at least 30 mS (time can be increased with the delay parameter). Thereafter the original ADSR values will be written back, and the gate will be activated. This results into a more deterministic envelope, but the latency makes it unsuitable for live playing. So, this feature can only be used in conjunction with a sequencer, which allows to compensate the delay (which allows to play the notes earlier by a given time).

    Another way to avoid it: set A, D, R to 0 and let the SW based Filter ADSR control the volume - this will also work live - and is used by most sammichSID patches.

    Best Regards, Thorsten.

  6. Analog pins are permanently polled by the AIN driver, this is done via DMA in background (so that the CPU isn't loaded)

    If you've to set pins before the next scan, then just use a AIN ServicePrepare callback.

    See also following tutorial which shows how to scan a touchscreen - actually a similar handling like described for your use case:

    Best Regards, Thorsten.

  7. Hi Dhayv,

    unfortunately there is no way to change these parameters via SysEx independent from each over. In the Ctrlr Panel I solved this with some LUA scripting, but with generic MIDI controllers this will be difficult (resp. impossible).

    However, you could control it via NRPN instead, see:

    To the hex numbers:

    $06 stands for "Direct Write of Parameter into Patch Buffer"

    $01 is the WOPT, explanation in the sysex doc

    $00 is the upper part of the parameter address

    Best Regards, Thorsten.

  8. Hi Dimitri,

    there are two ways how you can achieve this:

    • store/restore the track setup as a PRESET: Menu->Evnt, and then PRESET with GP Button #15
    • or store an entire setup as a session, and if you would like to use it as a template for another session, just use the "Save As" function

    Best Regards, Thorsten.

  9. Das kann ich Dir reinkonfigurieren :)

            db      "CH    ",  4,  7,   1,    0     ; Track 8 // shared with OH, Switch via 4.6 (see DEFAULT_909LIKE_HH_CONTROL_ENABLED)
            db      "OH    ",  4,  7,   1,    0     ; Track 9 // shared with CH, Switch via 4.6 (see DEFAULT_909LIKE_HH_CONTROL_ENABLED)
    ;; Optional 909-like OH/CH selection pin.
    ;; In order to use this feature, set DEFAULT_909LIKE_HH_CONTROL_ENABLED to 1, and
    ;; select the tracks to which the OH and CH are assigned in DEFAULT_909LIKE_HH_TRACK_OH/CH.
    ;; Change the DEFAULT_TRKINFO table in the header of this file, so that both track triggers share the same pin!
    ;; Then define the DOUT pin which should select OH/CH in DEFAULT_909LIKE_HH_SWITCH_SR/PIN below
    #define DEFAULT_909LIKE_HH_CONTROL_ENABLED  1  ; 0 to disable, 1 to enable
    #define DEFAULT_909LIKE_HH_TRACK_OH         9  ; OH track number - this track will set the SWITCH pin to 0
    #define DEFAULT_909LIKE_HH_TRACK_CH         8  ; CH track number - will set the SWITCH pin to 1
    #define DEFAULT_909LIKE_HH_SWITCH_SR        4  ; DOUT shift register of the SWITCH (1..16, 0 disables the assignment)
    #define DEFAULT_909LIKE_HH_SWITCH_PIN       6  ; switch pin (0..7 for D0..D7)

    Somit: Trigger auf 4.7, Switch auf 4.6

    .hex File an bekannter Stelle.

    Gruss, Thorsten.

  10. Strange!

    Is it really time or note dependent?
    MBFM cycles the 6 voices whenever a new note it played, could it be that only a certain voices cause this sound (e.g. each 5th and 6th voice)?

    Best Regards, Thorsten.

  11. On 2.2.2020 at 11:03 PM, imaginarion said:

    Another question, please: when i switch off SID, he dont memorized last preset. Is it amenable to adjustment?

    This isn't possible (and firmware changes in this direction are not recommended): the only permanent storage is an EEPROM, and it 1) has limited write cycles and 2) causes some delay during write operations.

    On 6.2.2020 at 11:06 AM, imaginarion said:

        SET_BSR    SID_BASE
        movwf    SID_KNOB_NUM, BANKED    ; will be needed again later
        rcall    SID_KNOB_GetPtr

    Are you using a 2x20 or 4x20 display?

    Parameter names are only displayed on a 4x20 LCD

    If this is the case, add:

    #if DEFAULT_LCD_LINES >= 3
            ;; request printing label
            call    CS_MENU_UpdateLabel

    Best Regards, Thorsten.

  12. On 28.1.2020 at 10:48 PM, lukas412 said:

    Hello @TK. I was wondering if it would be possible to add additional clock dividers to the analog clock out. Having PPQN is nice, but being able to divide it down further would be really useful for me. In a modular a lot of time I will take 1 PPQN out and send to a clock divider module to create longer intervals. This can be worked around using the trigger out or a gate out but then you loose a track.

    Hi @lukas412 should be possible, I added this to the wishlist

    On 30.1.2020 at 7:44 AM, k2z3k0 said:

    Idea for option in LIVE REC MODE or maybe any REC MODE ,

    that listen to incoming data from recording port and checks channel number changes

    and immediately is selecting track accordingly on MbSeq

    So if during recording i move encoder of midi channel #1 it will select Track #1 on MbSeq

    Also after channel number change he waits (some number of steps for example)
    and then if channel number is changed then change it,this is to protect from short switches

    between channels which can cause undesired effects.

    Hi @k2z3k0 I added this to the wishlist as well. Could be available if Channel "Auto" is selected in Jam Mode MIDI Routing Config
    The mentioned wait time will be important (e.g. switch only if within the last second no event from another MIDI channel has been received).

    Best Regards, Thorsten.