The Cactus, A Starting Point

Building your first 6502-based project? We'll help you get started here.
User avatar
Dr Jefyll
Posts: 3524
Joined: 11 Dec 2009
Location: Ontario, Canada
Contact:

Re: The Cactus, A Starting Point

Post by Dr Jefyll »

CommodoreZ wrote:
Needless to say, this was the highlight of my weekend.
I can easily believe it was a terrific thrill to successfully connect Cactus with the MOnSter 6502! Congratulations to you and Eric!

-- Jeff
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html
User avatar
CommodoreZ
Posts: 28
Joined: 09 Apr 2018
Location: Z Labs
Contact:

Re: The Cactus, A Starting Point

Post by CommodoreZ »

BigEd wrote:
I do believe I see an OSI300 remake on the table too...
Yes, I love my mini OSI-300. I've found it to be not only an inspiration, but also a good counterpoint to the significantly more complicated interface of the Cactus.

Sadly, I seem to have fried it during my time at DEFCON -- I've done tests with each of the chips replaced, but not all of them replaced at the same time. I will see what can be done about repairing it.
User avatar
CommodoreZ
Posts: 28
Joined: 09 Apr 2018
Location: Z Labs
Contact:

Re: The Cactus, A Starting Point

Post by CommodoreZ »

Not to zombie a thread too far dead, but alot has happened in the past few years with ol' prickly.
twincactus.jpg
I did finally get around to doing a PCB design, it just took some time to learn KiCAD well enough to make something that worked. First attempt was an awful SBC directly based on Grant Searle's work, learned alot of what not to do with that one. Power traces were too thin, didn't have ground fill, and it barely worked. Then I took a break from heavy work on the project for a couple years for reasons I'm sure people can infer.

Eventually picked it back up with a new SBC design with dual serial ports baked in, CPU isolation buffers, a C-35 bus interface, and the ability to switch between NMOS and CMOS CPUs. I applied lessons learned and wisdom from more experienced friends while I was at it. It also had what I hoped was an improved single step circuit that would work with an NMOS 6502 that kept the clock moving, and instead juggled the SYNC and READY lines. That sadly didn't pan out on the first try. It wasn't until I got in contact with Anders Nielsen after seeing his approach to single step logic that I finally made a breakthrough and applied what I learned from him to my circuit to Rev B, which now works a dream. Single stepping an NMOS 6502 is a thing of beauty, even if just for the novelty.

I then took a crack at the front panel, finally accomplishing the daunting task of laying out a complete PCB that consolidated my individual hand-wired boards into one that did everything and saved more than a handful of gates in the process. It's got some bugs, but it proves that my ideas work electrically -- with only one bodge resistor required for the first attempt. Everything else that's wrong was an issue of order of signals, or switch orientation. Something something endian-ness...

I also decided to make my own version of the Ohio Scientific OSI-440 video board. I've got a real one that's slowly been combined with real and replica OSI parts to recreate a Challenger 65V experience, and I've grown fond of the little video board that could. It seems like a natural starting point for making my own video board, and after getting multiple things backwards, I had a working video board.
  • - 2 of the pins for the 74123 RC circuit inputs were backwards
    - V-sync polarity was backwards
    - Pixel signal polarity was backwards
    - Master timing generator is not stable, but it's good enough
    - Video voltage is a bit low, so it doesn't look white, it looks gray
    - Address decode polarity was backwards
It's got all the visual snow of the original, and it takes time to dial in the timing and voltage levels, plus make the bodges, but hey, not bad for a first attempt at a video card. I switched from 2102's to 2114's for VRAM, and went to 2K EEPROM in lieu of a real Signetics 2513. Lowercase or bust.

Right now I'm working on a next revision of the video board to hopefully put most of the characters within the active video range of most monitors. The OSI approach sacrifices contiguous character spaces for the sake of circuitry simplicity, and it's a pain to program around, in my opinion. You also lose almost half of your character resolution on screen which is a real travesty when you're only pushing 32x32 before overscan takes its toll. I also want to add in a few features but that comes after the core logic improvements are done.

I'm also working on an improved version of the front panel PCB, which fixes some arrangement issues and squeezes the size down to hopefully fit in the space of a 3RU 19" rack.

I started playing with the USR function in OSI BASIC, and wow is it both powerful and clunky. It's difficult to get working right, but it's much easier to bridge the gap between ASM and an HLL like BASIC than any alternative I've encountered so far. If I was more adept at 6502 ASM, I'd be doing that more but I'm not... not yet...

Anyway, that's where I'm at right now with the Cactus. There's more photos on my website for the curious, plus a more complete project log, and detailed photos of the individual hand-wired logic boards.
User avatar
BigEd
Posts: 11463
Joined: 11 Dec 2008
Location: England
Contact:

Re: The Cactus, A Starting Point

Post by BigEd »

Thanks for the update!
Post Reply