So I have been working a lot on my Creativision, AKA the “Dick Smith Wizzard” (Or as my kids so rudely like to call it, Dad’s ‘Dick Wizzard’. Mutter mutter. Kids of today.)
Considering this project started out a very long time ago as an attempt to resolve a longstanding MAME Testers bug, which has been resolved since, I have fallen in love with this “little machine that couldn’t”.
There’s an active, albeit slow, community built around the machine, largely centred on the Madrigal Design forums, there is still intermittent game and hardware development going on.
I’ve been slowly chipping away at my system, working on a handful of upgrades as time permits.
The first thing I made was, ironically, a completely passive one. There were quite a collection of cartridges available for the Creativision, but a dearth of suitable shells for them. Some people were even hacking up old game cartridges to put new games in (Oh the horror!) which seemed a waste.
Instead I broke out OpenSCAD, which I like because the maths matches the way my brain works, and is suitably “C Like” that I get to use the one programming language that stuck from my uni days. OpenSCAD is great for regular shapes such as this cartridge. I have released this as a Creative Commons BY-SA which means you can even sell these if you print your own, as long as you attribute them to me. (the current version even has some variables so you can make cartridges of arbitrary length)
Oddly, I don’t actually own a 3D Printer, so YMMV. I hope to get one printed up eventually, or better yet, get a 3D printer. I just can’t quite justify one at the moment. There are certainly tools I’d be looking at getting before I got a 3D printer, especially as the kids don’t seem particularly interested in one.
Now all I needed was something to go in it. I knew the community had developed “Mega Carts” with all available ROM titles on one cartridge in the past, but no current production runs were in progress. I made some enquiries, without much success, so I did a bit more googling and found myself at this website. Clockmeister had successfully made his own homebrew Creativision cart. I tentatively reached out via e-mail, offering to share a blank board if I was successful, and was pleasantly surprised to receive a response indicating that he’d be happy to share his findings, and give him a few weeks to get his notes together.
Oooh! the antici… pation!
As per his word, Clockmeister got back to me in no time at all, and sent me a ZIP file containing photos of their design whiteboard, a text file with additional notes and comments and some details about the ROM itself.
Time to break out KiCAD!
(A quick note here. I used to use EagleCAD, but found the restrictions on the “Open Source / Amateur” versions were not worth the additional grief. Now I’ve learned KiCAD, I don’t think I would go back even if the restrictions changed. KiCAD just keeps getting better and better.)
First up I had to design the missing components, as while I had most of the parts, I was missing an edge connector. I quickly dumped that in and built up the schematic, based on Clockmeister’s notes. It was largely a “connect the dots” exercise as all the heavy lifting in design had already been completed.
After popping open one of my Creativision carts, and a bit of mucking about with some digital calipers, I had a decent edge connector component also designed for the new project. I then spent a couple of days playing with layout. Eventually I had a design I liked, with not too many vias. I got it checked by a some helpful checkers, including Clockmeister, and after reviewing and re-reviewing I sent it off to be fabbed. (Cue ominous thunder)
I’ve been using SeeedStudio for a while now, as their prices are excellent, and coming out of China, rather than Europe or the US, they’re nice and fast. (There’s no affiliation here, BTW. I picked them because a friend recommended them, and so far their products have been good and their turnaround has been fast. Again, YMMV)
While my boards were shipping from China, I found an associate who was able to burn the ROM image to an appropriate EPROM, and even had the right EPROM in stock!
The boards and the ROM both got to me within about a day of each other and… something wasn’t right. The EPROM was physically completely the wrong size. It was too short and too narrow. I had made a mistake!
It was pretty obvious when I thought about it too. What the heck had I managed to do to the footprint for the chip? Why would a 32 pin chip have 40 pins? I’d picked the wrong component footprint when I was picking it in KiCAD.
This is a rookie mistake, and I really should have picked it up in the layout phase. My only defence is that I didn’t actually have a physical component for that chip at the time, so my usual safety check of “stick it on the printout and see if it fits” was bypassed.
Was all lost? Well, no. I still had the schematic, and putting the CORRECT footprint in was trivial. The smaller footprint also meant I could make a substantially smaller cartridge. Also I could do a test fitting of the cartridge to the Creativision (It was a perfect fit) and all other components.
I then got a suggestion from Clockmeister about whether I could “bodge” in the ROM I already had. That would allow me to check the PCB itself (As the schematic would be the same regardless of the footprint.) and verify a lot more of the design.
I thought about it for about half a day and decided, yes I could bodge it in, with just “stuff” I had laying around my electronics area.
(Cue soldering montage)
I grabbed a PCB, sanded off the edge connector to give it a nice bevel. This helps with insertion of the cart into the console. You’ll notice pretty much all commercial carts have this. Not all home brews do.
The next bit is tricky to describe, so lots of illustrations:
As I had got the footprint wrong substituting a 40 way footprint for a 32 way foot, the first 16 pins were correct, but the next 16 were out by 8. Also the first 4 incorrect pins were on the wrong side of the layout.
I bodged in 4 flyleads to go across the board, and attached a socket to drop the EPROM in. This allowed me to test without permanently using up my one precious EPROM. I tacked in the first 18 pins and bent the rest out. (I used a 40 pin socket as I had a 40 spare but not a 36, just to make things REALLY ugly). I then connected the 4 flyleads across to the lower 4 pins on the far side.
I then made another 12 short flyleads to directly connect from the board to the socket. I used solid core wire from an old CAT5 cable as I had heaps of it lying around.
Once it was all in place I checked for shorts on my multimeter. No unexpected shorts existed. (There’s two places that are connected to the groundplane so they show up as “shorted”
I then carefully tested to make sure all pins on the socket connected, first to the board and then, as appropriate, to the edge connector. It all looked absolutely fine.
The moment of truth. (Cue more ominous thunder. You didn’t think it’d be that easy, did you?)
I set up the Creativision and inserted a known good cartridge, plugged it into the antenna plug on my TV and carefully tuned it in. Once I had a solid picture and sound, I turned it off, unplugged the good cartridge and carefully inserted the bodged cartridge (Spending time making sure I had things like orientation correct) and turned it on.
Annoying buzz and 1 red line. That’s no good. I immediately turned it off, crossing fingers that I hadn’t fried anything and reinserted the good cart. Phew! It still worked.
I carefully inspected the board again, checking each and every connection. I initially thought I had located the issue, as there was an errant blob of solder, but as that didn’t show in the short circuit testing, and the problem persisted after removal, that clearly wasn’t the issue. I also thought my problem was that I had merely set my selector to an “empty” slot in the EPROM, but that turned out to be incorrect too.
I even ordered an EPROM burner and compared the contents of the ROM to the original image. Nope, they matched.
I even checked continuity from the CPU of the Creativision directly to the chip on the cartridge. All came up OK. I was stumped.
At this point Clockmeister and I had been conversing as the project proceeded, and we determined that we were even in the same state. He actually had lived a suburb across from ours at one point. I asked if I could send my cart to him to compare and he agreed, so I popped it in the mail
(Cue calendar changing montage)
So rather than sit around, I quickly ran up a new version of the PCB with the correct footprint for the EPROM. I even managed to eliminate more VIAs on the design, so that was good.
COMPOSITE VIDEO AND AUDIO
Since the Creativision was open and on the bench I thought it was a good time to do a Composite Mod to improve picture and sound, and to eliminate having to use a TV Tuner. I wanted to do a reversible modification, avoiding having to drill holes or otherwise permanently change the console.
I decided to approach this with a “simple, but robust” approach.
I initially removed the internal RF lead, which thankfully just plugged into a RCA socket on the RF Modulator on the board. I put it aside in case I ever decided to reverse the modification.
I then went about finding more info on the RF Modulator. It had 4 wires and I figured they had to be power, ground, Audio and Video. Some googling for the modulator found only a single meaningful link to an old Electronics Australia article over at the Internet Archive.
With the help of the two relevant issues, I was able to determine which one was power, which one was Audio, and which one was Video.
(Amusingly, shortly after completing the mod,I discovered that if I’d clicked on the image of the motherboard that matched my unit in the article above, the “expanded” views had the pins appropriately labelled, which would have saved significant time. On the other hand , it was lovely scrolling through back issues of Electronics Australia)
I carefully desoldered the 12v power to the RF Modulator, to reduce induced noise.
I then cut a thin RCA lead in half, stripped and tinned the ends and, with the help of some flux and heatshrink, attached it to the underside of the main board. It was thin enough I could easily route it through the hole the single RF lead had come out of.
I tested it out and the picture and sound improvement was amazing! I carefully reassembled everything back together (Took two tries as I’d forgotten to reconnect a piece of plastic before finishing off the rest of the shell) and my Creativision was fully modified for modern televisions.
(back to our calendar montage)
Clockmeister now had the cart and had confirmed it wasn’t working for him either. After a few dead ends he managed to find two issues.
Firstly the ROM image I was working from wasn’t quite right. If he plugged the ROM into their cartridge, it would half work, but the switches were incorrect and some of images wren’t working. It did, however, mean that the ROM image wasn’t fundamentally the problem and the problem was further down.
Secondly (and more importantly) when he made his cartridge, he’d added an additional resistor to pull a signal high, and completely forgotten about it in the intervening years.
With that bodged in, my cartridge was working!
Once I knew the fix, I revised the PCB another time, this time using a resistor array to simplify the design even further and eliminate even more VIAs.
I also threw together ANOTHER board, to allow me to use a Commodore C2N Tape unit with the Creativision, based on the design by Tom Gutmeir. His design is wonderfully simple, so from go-to-whoa, including checking was only about an hour.
I’ve ordered the PCBs, as well as a handful of additional parts (Including more EPROMS) so hopefully they’ll arrive in the next few weeks / months. (I have enough to make up one complete board already). Clockmeister has mailed me back the corrected board and hopefully soon, I’ll have my Creativision kicking along with many titles.
Things still to do:
- Order the last handful of missing components from RS Components.
- Test the “final” version of the board, once the PCBs arrive.
- Mail a handful off to Clockmeister.
- Open Source the whole thing.
- Make a custom 3D printed case to hold the cart in, based on my own cart design.
- Test my C2N Tape drives to find one that works. (May need a new drive band)
- Test my new Tape adapter.
Leave a Reply