Music 5000 FPGA

Arc/RPCs, peripherals, RISCOS operating system & ARM kit eg GP2x, BeagleBoard
User avatar
hoglet
Posts: 7807
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Music 5000 FPGA

Post by hoglet » Mon Feb 11, 2019 9:50 am

BrokenARM wrote:
Mon Feb 11, 2019 9:27 am
Not putting your design down at all, I like it, but part of me is actually starting to wonder that in my case it might actually be easier/similar in BOM cost simply to take the belt and braces approach and lay a new pcb out with the original discrete logic as most of them are very inexpensive and all of them, including compatible SRAM and adders, are still active bar the DAC (although some similar u-law DACs are still active). In 100% SMT (bar the DAC) the pcb would be a fraction of the original size.
Yes, I take your point about third-party boards becoming unavailable. This has already happened with the GOP and GODIL modules. But it's also the case that FPGA manufacturers can discontinue certain parts and packages. Xilinx have already done this with the XC9500 and XC9500XL series CPLD which are used in many projects here. It seems to be the hobbyist friendly packages that are most at risk.

Anyway, you are welcome to use as much or as little of my work as you choose. Good luck with whatever you decide.

I am still planning to pursue the idea of a general purpose 1MHz Bus project board, that would make use of the LX9 Core board. I just need to finish decorating the hall first!

Dave

BrokenARM
Posts: 26
Joined: Sat Jul 22, 2017 11:07 am
Location: UK
Contact:

Re: Music 5000 FPGA

Post by BrokenARM » Mon Feb 11, 2019 10:19 am

hoglet wrote:
Mon Feb 11, 2019 9:50 am
BrokenARM wrote:
Mon Feb 11, 2019 9:27 am
Not putting your design down at all, I like it, but part of me is actually starting to wonder that in my case it might actually be easier/similar in BOM cost simply to take the belt and braces approach and lay a new pcb out with the original discrete logic as most of them are very inexpensive and all of them, including compatible SRAM and adders, are still active bar the DAC (although some similar u-law DACs are still active). In 100% SMT (bar the DAC) the pcb would be a fraction of the original size.
Yes, I take your point about third-party boards becoming unavailable. This has already happened with the GOP and GODIL modules. But it's also the case that FPGA manufacturers can discontinue certain parts and packages. Xilinx have already done this with the XC9500 and XC9500XL series CPLD which are used in many projects here. It seems to be the hobbyist friendly packages that are most at risk.

Anyway, you are welcome to use as much or as little of my work as you choose. Good luck with whatever you decide.

I am still planning to pursue the idea of a general purpose 1MHz Bus project board, that would make use of the LX9 Core board. I just need to finish decorating the hall first!

Dave
You've reminded me, I very much wanted to thank you heartily for posting your superb wiki on your reverse engineering of the Music 5000 control interface - a sterling bit of work there.

I strongly suspect we are interested in this little wonder that Chris created from somewhat different angles...

I am very interested in Music 5000 as a stand-alone instrument/complex oscillator primarily to satisfy my endless quest in search of interesting/quirky/characterful vintage sound sources for my sound design. With this in light, although AMPLE is of interest to me (and especially if some kind soul could convert it to a more modern platform!) my ultimate goal is to drive the M5000 from midi directly via an embedded controller by implementing soft envelopes, pitch lookup table, note assigner and CC control of most of the registers so it can be patch programmed from something like a Stereoping box hence my question about uploading new wavetables on the fly (including geometrically generated waveforms). It may be that in practice the existing bus implementation is fast enough for this purpose without having to resort to a dual port SRAM arrangement.

My hope is that once I've written the code to drive the M5000 as a standalone box then I can share my controller design with anyone who is interested.

Please note, this is never likely to be a commercial product (and naturally I would never dream of doing so without Chris's prior permission) but I do have a number of friends in my field who would be very excited to have such a thing for sure in their studios having heard all the old AMPLE demos we've been working our way through of recent.... Moments in Time being my personal favorite to date! :)

https://soundcloud.com/hideaway-studio/ ... th/s-nS3Zo

Oh and BTW... I sent Jean-Michel, who is a friend, a link to Bernie Dawson's rendition of his own music in that playlist for grins & giggles! :mrgreen:
Last edited by BrokenARM on Mon Feb 11, 2019 10:20 am, edited 1 time in total.

User avatar
hoglet
Posts: 7807
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Music 5000 FPGA

Post by hoglet » Mon Feb 11, 2019 11:40 am

BrokenARM wrote:
Mon Feb 11, 2019 10:19 am
I am very interested in Music 5000 as a stand-alone instrument/complex oscillator primarily to satisfy my endless quest in search of interesting/quirky/characterful vintage sound sources for my sound design. With this in light, although AMPLE is of interest to me (and especially if some kind soul could convert it to a more modern platform!) my ultimate goal is to drive the M5000 from midi directly via an embedded controller by implementing soft envelopes, pitch lookup table, note assigner and CC control of most of the registers so it can be patch programmed from something like a Stereoping box hence my question about uploading new wavetables on the fly (including geometrically generated waveforms). It may be that in practice the existing bus implementation is fast enough for this purpose without having to resort to a dual port SRAM arrangement.
Right, I understand where you are coming from now.

It should be possible to replace the 1MHz bus interface with something that could be easily interfaced to a modern micro controller. It would be interesting to estimate what sort of update rate would be required. I suspect an SPI interface would be fast enough, especially if you implemented some kind of a block based protocol to make sequential writes more efficient.
i.e. you would send an 11-bit Wave RAM address, followed by one or more data bytes.

One thing that always surprised me about the original Music 5000 was that it is complement write-only. i.e. the AMPLE software is effectively running open loop, and is not in any way synchronised to the actual waveform synthesis.

Dave

BrokenARM
Posts: 26
Joined: Sat Jul 22, 2017 11:07 am
Location: UK
Contact:

Re: Music 5000 FPGA

Post by BrokenARM » Mon Feb 11, 2019 12:53 pm

I think that is because, rather like MIDI, broadly it doesn't need to be synchronised to the host in closed-loop fashion. One of the aspects of the architecture that has piqued my interest is that once suitable wavetables are loaded you only need to load registers to play them at the desired pitch but furthermore you can instigate phase modulation, ring modulation and sync with little processor intervention due to the way pairs of oscillators are used to modulate one another in hardware even including sub-audible frequency oscillators being used as vibrato and modulation effects. I have already demonstrated this to myself by hand loading the registers from the command line.

It is for this reason, partly based on previous embedded MIDI designs of mine, I think I could implement a basic controller for the M5000 in little more than a fat PIC under MIDI control with real time modulation parameters under CC control. This could be in the form of a little box any M5000 owner could plug their unit into.
Last edited by BrokenARM on Mon Feb 11, 2019 12:54 pm, edited 1 time in total.

Post Reply