Jump to content

MBSID ensemble problems


Mikkel
 Share

Recommended Posts

I have had some strange problems with MBSID. I am running MBSID v2RC18. I am running a single core with a single SID. I am using a minimal control surface on it, with a 2x16 VFD in 8 bit mode. I have one 32kB bankstick attached to it with an address of 0.

At first, after I had upgraded it from v1 to v2 (and done the appropriate hardware changes), the arpeggiator and various other functions were not working. I discovered that it was running MIOS 1.9e, I thought that might be the problem, as MIOS 1.9f is recommended. I took a blank PIC, programmed it with the bootloader, uploaded MIOS (doing the code upload in manual mode, as I didn't have a connection between MIDI out on the MBSID and MIDI in on my USB MIDI interface), and then uploaded MBSID v2RC18. Now the arpeggiator and the other functions are working, but I have a few other strange problems.

Now, after I turn it on, the ensemble settings are completely messed up. It starts up with ensemble 002 selected. The midi channel for all instruments is set to --, SpU and SpL are set to the same note and transpose is set to 65. Bank is set to H, patch is set 128 and superpoly voices is set to 7. Filter range is set to FFF-FFF. I have tried changing the settings, and saving to E001, but it makes no difference. It still starts up with E002 and messed up settings, and if I change the ensemble to 001, the settings are still messed up, so nothing seems to have been saved.

Any suggestions?

Link to comment
Share on other sites

Ensembles are stored in a bankstick with address 7, therefore do not expect more than one Ensemble to be stored or retrieved. I don't know exactly the handling when there is no bankstick with address 7, perhaps changing the Ensemble number does nothing and the Ensemble stays the same.

However, MB-SID V2 should work without a bankstick for ensembles.

Some questions to find out what might be wrong:

You are definitely using a PIC18F4685?

You are definitely using a 24LC512 with address 0 (A0,A1,A2 pins connected to ground)?

Can you tell us what program and hardware you used to burn the PIC?

My guess would be you might have a corrupted upload and the data where the single Ensemble is stored (in the PIC's flash memory) is all "FF", hence the maximum values in the ensemble. It might be too corrupted to save to the PIC's flash memory. I don't really know, that is just a guess. Weird stuff happens when you have a corrupted firmware, and it's not unreasonable to think the weirdness you describe is because the firmware is corrupt.

Link to comment
Share on other sites

Wilba turned out to be right.

It happens a lot...  ;D

Wilba's MIDIbox Debugging Service

Debugging your MIDIbox from across the globe with only the powers of his own mind!

If you have found this service worthwhile, feel free to x-click-but04.gif an amount that reflects how happy you are that your MIDIbox now works!

(Note: donations are not tax deductible)

Link to comment
Share on other sites

:o  I can't believe you actually donated! The "Donate" button was just a joke!  ;D

I'll pass on your donation to TK (via the "PayPal Development" button in the top-right corner of the page)...

and add some more from me, as I haven't paid anything this year  ;)

Link to comment
Share on other sites

  • 1 year later...

Rather than starting a new topic, I'll resurrect this one because I have the same exact problem.

The only difference is that I'm using a 24LC256, rather than the 512.

I have re-uploaded MIOS 1.9f and SID V2 RC30. 

I have checked and re-checked the connections and they are correct.

Is there anything else I can try? 

Link to comment
Share on other sites

Describe your setup some more.

What "banksticks" do you have connected? i.e. part number and ID (address) they are on... patches are stored in ID=0 to 6, ensembles use ID=7.

Did you upload using "feedback from core"?

You can try reformatting the banksticks perhaps, or swapping them temporarily.

i.e. put the ensemble bankstick in a patch bankstick socket, turn on, wait for it to "format", turn off, put it back in the ensemble bankstick socket, turn on.

Link to comment
Share on other sites

Thanks for the reply.

Oh, and my problem is a little different than the original poster's: my settings aren't "messed up", they just aren't saved.  The machine is always initialized with E002 (which is expected, as you have said).

I have one bankstick, mouser pn# 579-24LC256-I/P.

It is ID# 0 and patch saving works fine.

I used MIOS Studio 7 (beta 5) to upload with the suggested settings (smart mode, device ID = 0, bankstick = 1).

Also, this is a dual-SID setup: one core and two SID boards (a 6581 and 8580).  The L/R communication works fine (that is, I can adjust the filter settings for either chip, independently).

Do you think the problem is with the internal EEPROM? 

EDIT: This may have been a silly assumption, but you can SAVE to the ensemble on the internal EEPROM, right?

Link to comment
Share on other sites

Ok, so, on a whim, I decided to fire up the V2 editor.  I thought, maybe I could edit the ensemble and save it to memory.  Perhaps, you know, that would sort of clear out the crud.

Well, I changed some filter values, saved the patch, and uploaded it to memory.  Boom--the settings have been saved!

The settings are recalled when the machine is booted up.  However, any changes I make to the ensemble on the SID itself (by pressing "SAV") are not retained.

So, this seems to point to a bug in the mechanism that saves the ensemble to the internal EEPROM. 

Would you agree?

Thanks.

Link to comment
Share on other sites

So, this seems to point to a bug in the mechanism that saves the ensemble to the internal EEPROM. 

Would you agree?

Yes, I agree!

I removed the bankstick in ID=7, and I can't save in Ensemble #1, which I believe should be possible.

I also observe on the Ensemble page, "Ensemble: E001*"... I have no idea what the "*" means.

So basically, I can store and recall Ensemble #1 if there's a bankstick in ID=7, but if there is no bankstick in ID=7, it recalls what was saved in Ensemble #1, but I cannot save the ensemble (at least parameters such as MIDI channel and patch do not save).

It is a bug which should be fixed, I agree, but I strongly recommend you get a 24LC512, put that in ID=0 (so you can store 128 patches instead of only 64) and then put the 24LC256 in ID=7 (you don't need the bigger 24LC512 for ensembles)... even with a dual-SID setup, being able to switch between properly configured ensembles for each of the engine modes (Lead, Bassline, Drum, Multi) is almost a required feature :)

Link to comment
Share on other sites

  • 2 weeks later...

I removed the bankstick in ID=7, and I can't save in Ensemble #1, which I believe should be possible.

I also observe on the Ensemble page, "Ensemble: E001*"... I have no idea what the "*" means.

So basically, I can store and recall Ensemble #1 if there's a bankstick in ID=7, but if there is no bankstick in ID=7, it recalls what was saved in Ensemble #1, but I cannot save the ensemble (at least parameters such as MIDI channel and patch do not save).

fixed in RC31

Best Regards, 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...