Vulcan-74 - A 6502 Powered Retro MegaProject

For discussing the 65xx hardware itself or electronics projects.
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Since my timeline is 1984, I thought I would make a heavy metal guitar sample set and try riffing out on the synth.
Back in that year, I had a moog synth, flying-V lead guitar, 2 feet of long hair and like combining metal with techno synth.

I am now testing my pitch bend function, which is just a potentiometer fed to an ADC that the 6502 uses to shift playback clock frequency.
Works great!!

Since I only have 2 megs plugged into the breadboad, I was able to put a 2 channel mix together using a basic drum kit and 2 layers of my heavy metal guitar sample pack.
I sampled 40 or so guitar strikes for this test.

Once again, be warned... I have no real tracker or quantization, just going at it live with a keyboard jacked into the breadboard, reading the matrix and translating it to which samples are played.
I wondered if I could make something sound "live", almost lazy as if I was sitting on the couch back in the 80's riffing out while watching Judas Priest videos on MTV!
Trackers often limit you to a robotic timing feel, but without that part done, this really did sound real...

https://lucidscience.com/temp/SynthMetal1.mp3

Anyhow, I better shut off the 200 watt amp and stop jamming, this thing is already too much fun!
Never would have thought I could do this kind of sound on a friggin' synth made of 80's logic!

I am now going to spend the time and work up the code for the track sequencer, which should be easier now that it is a single tracker.

Later!
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Ok, I was just about to unplug everything and get back to some actual design when I realized another powerful feature of my "ReMixer" design change.
Since I am now feeding the DAC from the single channel tracker to the ADC in the remixer, I can also feed in external sources using line input.

This just opens the door so wide that the hinges broke off!

For instance, I can lay down a 12 layer track and then feed in a microphone input for vocals, or C64 SAM.
How about a real guitar? Anything actually since this thing is a tracking synth and a digital recording mixer.

Just as a test, I fed this old Amiga classic into the mixer as the initial track and then attempted to lay down some metal guitar from the new metal guitar sample pack I just made last night.
There are a few issues with the wiring from my keyboard onto the breadboard, but enough to do these test. Wires are falling out and my desktop is a mess.

https://lucidscience.com/temp/AgonyTest.mp3

This experiment showed me a few things...

1) I can feed anything into the digital mixing bank and merge it with my tracks.
2) The new pitch bend addition works perfectly.
3) I am rusty as all hell and need to get this done so I can learn to play again!

Later,
Radical Brad
barnacle
Posts: 1831
Joined: 19 Jan 2004
Location: Potsdam, DE
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by barnacle »

Did you ever come across Roy Buchanan, Brad? There was a gent who never played an unbent note!

Neil
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Yeah, that guy can wear out a fretboard, no doubt.
Always fun to go overboard when first given a new toy.
Just wait until I connect a solenoid to a cowbell... that will be the end of sanity!

Actually, I am thinking about working in a theremin type solo instrument later.

For now though, just the basic design, you know... 1200 digital logic ICs and a boat load of SRAM.

Brad
barnacle wrote:
Did you ever come across Roy Buchanan, Brad? There was a gent who never played an unbent note!
Neil
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Wow, it takes a lot of work to hammer out an operating system in 6502 assembly code!
This project is by far the most complex thing I have ever started, but things are progressing.

In order to test basic functionality, I wrote a skeleton CLI so I could key in basic functions for testing.
I can now launch the sample loader, record live playing from the piano keyboard, bounce mixes between the mixer channels, and set some parameters.
It is so much fun to jam out on this thing that I am having trouble concentrating on work.
I have dual 1000 watt club speakers hooked up, and the quality of sound this thing can hammer out is more than I could ever have hoped for.

At this point, there is no GUI to the OS yet, and I am still testing with minimal mixing RAM and live player RAM.
Enough to mix about 1 minute, but I can do the infinite layering and it works great.

I play the live channel with a 12 bit DAC and do the mixing between mixing RAMS at 16 bits, so it keeps clipping down.
There is also a basic metronome and quantize function as well as a sample decay control.
The decay is set to full sample length on the press of a footswitch, to it behaves like piano sustain.
I also have pitch bending working, but need a much better encoder with at least 12 bit resolution to make it sound smoother.

Anyhow, I have a LOT of coding to do on the OS (called SynthOS), but so far all the electronic concepts are fully proven.
This thing already sounds so much better than I would have ever hoped for, so I am motivated to get more done soon.

Once I have a bit more of the OS working, I will do a love recording video showing how the infinite mixer works.
I also have the perfect final name for this synth and will start a new thread when I officially begin.
Everything up this this point (all 58 pages of this 10 year old thread) has just been R&D.
This project is now officially started!

Here is a shot of the basic CLI I am using to test the mixer and various sample playback functions...
SynthOS.jpg
Sorry about the bad photo, it is so difficult to take a pic of a CRT without half the scanlines too dull or too bright.
Just using an old composite amber monitor I found in recycle. I think it is a 1981 model.
Since my video circuit puts out standard 15khz composite, I will at least be able to do screen caps when I start the video series.
I think there may even be an app for my iphone14 that can time base correct or do some kind of scan locking.

Later, it's 1:30am and I feel like cranking the 2000 watt speakers back on to riff out on Final Countdown or Jump.

Radical Brad
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Hmmm... put one wire in the wrong breadboard slot tonight and instantly toasted my encoder!
It was a costly mistake, these things ain't cheap...

https://www.digikey.ca/en/products/deta ... 8L/3780151

Luckily I have 3 more, but will keep that VCC and OUT connections in the right damn place now.

The encoder is used to scroll through option in the OS and set numerical values.
Kind of the same way you future folks do it on what you call the mouse and scroll wheel.

On some keyboards (even up to the mid 2000's), you had to press buttons up or down to set values.
It was painful sometimes and I often thought the designers must have been snorting lead solder paste when they failed to include a rotary encoder.
Most of them probably have jobs as part of the Win-11 GUI team now.
The worst of them moved on to develop the Eagle CAD interface.

Here at LucidScience Labs, we care about the user experience more than the shareholder experience.
Options will not be removed due to silly things such as internal complexity or manufacturing costs... hell no!
User avatar
BigDumbDinosaur
Posts: 9426
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by BigDumbDinosaur »

Oneironaut wrote:
Hmmm... put one wire in the wrong breadboard slot tonight and instantly toasted my encoder!
It was a costly mistake, these things ain't cheap...

https://www.digikey.ca/en/products/deta ... 8L/3780151

No kidding, even at US dollar prices.  :(
x86?  We ain't got no x86.  We don't NEED no stinking x86!
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Yeah, building something like this retro beast is certainly not a budget task!
All of the logic ICs I am using (and the 6502s + SRAMs) are still production parts (in DI format), so that is good.
Still, with the count already over 800, I have about $1000 into just ICs and sockets.
The huge 20x10 inch proto boards were $60 each, and I have 6 of them.
The sound amp and speakers, about $500.
Steel for the frame, about $500.
New old stock CRT tubes and base, about $400 (got a crazy cheap deal on that!).
Wires, casters, weld rod, glass windows, wood.... etc, etc.

I figure I will have about $5000 into this when all the parts are installed.
I am going to want a VERY reliable power supply!
I may even run from a large battery on trickle charge for full mains isolation.

This may seem like a lot of $$$ for a project, but...

It is WAY less than a Harley or a HotRod build (I don't own a garage for such a thing).
About the same as a typical gaming computer (and I have zero interest in idle entertainment).
About the same as a full home theatre (I don't watch TV ever or actually listen to music).

So I am good with putting up to 10k into this project if I need to.
This is the last electronic project I ever intend to build, so there will be no compomise.


BigDumbDinosaur wrote:
Oneironaut wrote:
Hmmm... put one wire in the wrong breadboard slot tonight and instantly toasted my encoder!
It was a costly mistake, these things ain't cheap...

https://www.digikey.ca/en/products/deta ... 8L/3780151

No kidding, even at US dollar prices.  :(
barnacle
Posts: 1831
Joined: 19 Jan 2004
Location: Potsdam, DE
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by barnacle »

When you get to your bombproof power supply - make sure it's got something like crowbar overvoltage protection, perhaps at board level...

Neil
User avatar
BigDumbDinosaur
Posts: 9426
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by BigDumbDinosaur »

barnacle wrote:
When you get to your bombproof power supply - make sure it's got something like crowbar overvoltage protection, perhaps at board level...

The power supply is going to be a double-edged sword.  It will have to pump out a lot of amps to run all that logic.  The downside of that is if something does short out, the power supply will be able to pump a lot of amps into the short and really make some smoke.  :shock:
x86?  We ain't got no x86.  We don't NEED no stinking x86!
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Interesting, I will have to look up this crowbar type PS.

I am not worried about weight so I actually considered a 20 amp hour 12 volt lead acid battery right into the system.
Everything is 12 and 5 volts, so I could completely isolate from any PS failure by running directly on DC for hours.

Reasoning...

Lead acid because there is no way in hell lithium is going to live in my house. Even my phone parks on a metal tray at night.

20 Ah because all of my logic really does not use much current as it is all HC.
I am actually running about 200 ICs from a 500mah wall wart right now.
The CRT would be the largest drain, and I do want that protected as well.

DC of course because there will be zero AC line noise injected in my audio signal.

I could probably feed a low amp trickle charge to the batteries through an isolated charger with minimal risk as well.

The audio amp will have to be mains though (200 watts worth), but it already has it's own AC to DC board.

Brad
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Working on a 16x16 character font tonight.
I realized that I am only using 64 characters of the commodore character ROM, so I could create 16x16 font in the same amount of ROM space.

This display is not for word processing or coding, so a lager character would be fine.
Because I have 640x224 resolution, this puts out 40 x 14 characters.
So far it looks great with that size of character and extra pixel depth per character.

Going to work up more of a GUI now.
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Still working on the basic OS as well as the user console.
I must have written more 6502 code in the last few days than I ever did in my C64 years!
Also added a few rotary encoders, a cursor pad, and some analog mixing dials to the front for the user interface.

I thought I was done making any hardware changes, but then a fan reached out and donated two of these to the project...
dm112.jpg
Two new 660 watt speakers that just happen to be exactly the right height and size to become the two support pillars!

Originally, the pillars were going to be floppy disk drawers, but they always seemed a bit oversized for that purpose.
I was also tight on space for all of the analog effects controls. Since I am using the new mixer design, I can go all out on one effects chain.

So this acquisition solves all the issues, freeing up the large triangular front segments for effects controls and dual analog VU meters.
The pillars now become towers of sonic power, 1200 watts of pure thumping bass!
Yeah, I will need a few boxes to hold all the sound file floppies, now but I can deal with it.

Working on the 3D model once more to mod the pillar frame for the new speakers.
Still planning to have the wood sides, but now the front will become the speaker grill.

Brad
Last edited by Oneironaut on Wed Jan 15, 2025 4:02 am, edited 3 times in total.
User avatar
Oneironaut
Posts: 734
Joined: 25 May 2015
Location: Gillies, Ontario, Canada
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by Oneironaut »

Oh hell yeah, if it's too loud then you're too old!
V6.0.jpg
I ran the current 2 channel prototype into one of the speakers and loaded up a slap bass sound... wow!
Even using a bodged XLR to unbalanced output, these speakers rattle my skull on volume level 2.
Amazing sound.

I need to make a proper matching transformer and then link both speakers, but this is perfection.

Now I have all the room I need to add the mixer dials and effects controls.
I am also working up a triangular VU meter made from scratch with a servo driving the needle.
The 6502 can just set some PWM value and move the VU needles to an exact position based on mixer settings.

I intend to have effects of the era in a patchable chain... echo, low pass + resonance, distortion, maybe phaser too.
One side of the triangular dashboard will be for the mixing console and the other for live effects.

Now this monster does three jobs... synthesizer, mixer, and amplifier.
A complete production and performance system all in one.
Will make some actual jamming videos when my workbench isn't such a disaster.

I am also looking at ROM solutions for the OS and some of the other 6502 subsystems.
I have used this 120ns 32kx8 EEPROM in the past and it worked decent up to about 4 MHz...

https://www.digikey.ca/en/products/deta ... PU/1008506

I am actually aiming for 14MHz or better on the main OS 65C02, so I may have to to a boot and dump to RAM unless there are quicker ROMs available.
If anyone knows of a fast parallel EEPROM that is in production, that would be great. Would need 50ns or better to hit my target speed.

Later,
Radical Brad
User avatar
BigDumbDinosaur
Posts: 9426
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Vulcan-74 - A 6502 Powered Retro MegaProject

Post by BigDumbDinosaur »

Oneironaut wrote:
Oh hell yeah, if it's too loud then you're too old!

What???  I can’t hear yuh!  Gotta turn up that bass to bowel-blockage-clearing levels.

A friend who is two years younger than me and a long-time Rolling Stones fan, was at their concert that got honorable mention in the Guiness Book of Records for extreme sound level, something like 120 DB at 100 feet from the stage.  My buddy was practically in the front row, which meant he was likely getting hit with 130 or 140 DB.  :shock:  To this day, he is constantly saying “Huh?” unless I directly face him and speak up.  He blames his hearing loss on being exposed to artillery gunfire when he was in Vietnam, but I know that it was from attending Stones concerts.  :D

Quote:
I am actually aiming for 14MHz or better on the main OS 65C02, so I may have to to a boot and dump to RAM unless there are quicker ROMs available.
If anyone knows of a fast parallel EEPROM that is in production, that would be great. Would need 50ns or better to hit my target speed.

I know of no current-production EEPROMs faster than 55ns.  Best I can suggest is Atmel’s 27C256 OTP ROM (32K × 8), which is rated at 45ns, part number AT27C256R-45PU—it, of course, is not re-programmable.  I can vouch for its performance at 14 MHz without wait-states.  Atmel also lists a 27C512 OTP ROM (64K × 8), part number AT27C512R-45PU, it too being a 45ns part.  Both are in PDIP28 packages with the standard JEDEC pinout.

If you elect to use the OTP ROM, you could do your software development and testing at a lower clock rate with an E(E)PROM and once satisfied with your handiwork, switch to the OTP ROM and crank up the clock.

Another alternative is a flash ROM, e.g., a Microchip SST39SF010A-55-4C-NHE, which is a 128K × 8, 55ns part in a PLCC32 package.  A distinct advantage to using a flash ROM is it can be readily reprogrammed in-circuit, which would help speed up the firmware development process.

Using a strict timing model, 55ns would be a little too slow to support 14 MHz without a wait-state.  However, I was able to run my POC V1.1 unit at slightly more than 14 MHz with most of the 55ns EPROMs I had at the time when I build the unit.  That said, it was clear that stability was on the ragged edge—I could sometimes crash the machine by heating the EPROM with my finger.  I ultimately decided to add wait-stating to later POC units in the quest to reduce wear-and-tear on the reset button, as well as reach for 20 MHz.

If you elect to go the wait-state route, you have your choice of using the 65C02’s RDY input or clock-stretching.  I chose the latter due to complications with using RDY on the 65C816.  Either method will work with the 65C02, although my preference would still be with clock stretching.

27c256_prom_atmel.pdf
Atmel 32K×8 OTP ROM
(821.46 KiB) Downloaded 208 times
27c512_prom_atmel.pdf
Atmel 64K×8 OTP ROM
(742.54 KiB) Downloaded 205 times
39sf0x0_flash_microchip.pdf
Microchip Atmel 128K×8 Flash ROM
(3.12 MiB) Downloaded 206 times
x86?  We ain't got no x86.  We don't NEED no stinking x86!
Post Reply