Close
0%
0%

DIY ColecoVision

My goal was to create an enhanced drop-in replacement for the ColecoVision that you can build at home using available components.

Similar projects worth following
My goal is to design a ColecoVision motherboard that you can build standalone or use as a drop-in replacement for existing Colecovision consoles. I use only standard components that are still available today, and not using and FPGAs. Putting everything in one FPGA takes the fun out of this project, so I started out going all TTLs, but using SMD to fit more on the circuit board area. The things I wanted to add included an onboard RGB interface supporting a Sega Scart cable and a second sound chip.

So the first revision was built, using an alternative power switch, not supporting the expansion port. Further revisions were designed, adding things like the expansion bus, pause key, stereo audio with mono switch, support for 9918 (CVBS) as well as 9928/9929 (RGB), and more RAM, built-in video game and USB.

The latest revision I’m working on can switch to SG1000 mode, and I dropped a bunch of SMT-TTLs in favor of GALs. These are used for memory and I/O mapping.

This mainboard drops into both US as well as European ColecoVision cases. You can use the original shielding, but be careful it doesn’t scratch the board and shorts out traces. It may make sense to stick some Kapton tape on the PCB or shielding for protection. Also, depending on which options you choose to build, you may have to add holes to the shield and/or case!


Yes, options! There are many. You can build a basic ColecoVision (CV) with a Composite output, play games and be happy.

But this board was made for experimenting, and a few things are different from a vintage CV. Let me ramble:


Power supply. The CV power supply provided three voltages and was prone to breaking. And the Coleco power switch only switched two of the voltages, so one was always on! So, the board is powered by a single 12V supply with a standard barrel connector. Instead of soldering the connector to the PCB you can use two wires and add a barrel connector with a 3D printed plate at the opening for the stock Coleco power supply jack. So instead of the heavy brick you can use a standard 12V wall wart from Radio Shack. Ok, they’re gone, but you know what I mean. Bonus: the 5V supply for the CV is a 90% efficiency switched power supply, and it’s controlled by a voltage, so the current doesn’t flow through the power switch. This means that most CV power switches can be used on this board, even if one side is broken!

Memory. The CV featured 1K RAM and an 8K BIOS. Since mapping is controlled by a GAL and the unit features 128K RAM plus 128 ROM, various memory maps can be implemented, and since the board has an additional memory mapping register, a lot of stuff can be implemented, like built in games, development support, etc.

Sound. The CV was somewhat limited in that respect, so Coleco planned to add, but never released, a super game module with an AY 3-8910 sound chip. This board has a socket for that sound chip, so going from 3 to 6 voices is a matter of plugging in an AY chip or alternatively a compatible Yamaha chip. As a bonus, the three extra channels use a stereo matrix so you get a left, center and right channel. And an optional stereo/mono switch. Oh, and the AY chip comes with two 8 bit ports that can be used for - anything!

Speech synthesis. I have designed a piggyback board with a SP0256-AL2 voice chip. Available at Radio Shack. Oh well.

Video. Oh, the choices. You can use a TMS video display processor (VDP), and since vintage dynamic RAM is kinda hard to get, a modern static RAM is used. There are three VDP choices:

  • TMS9918, which produces composite video @ 60Hz and is cheap. Video goes to three Chinch jacks.
  • TMS9928, which produces component video @60 Hz, so picture is better
  • TMS9929, which produces component video @50 Hz for European users

The two latter choices require the installation of TMSRGB components, yielding crystal clear RGB video on a Sega compatible MiniDIN connector with stereo audio.

But, you can go a completely different route and install a Pico9918. Then you can eliminate a bunch of components, like video RAM and latches and video clock. The board has provisions for a FFC connector going to a VGA jack on the mainboard, and a second FFC going to the MiniDIN, for details see Pico9918 documentation.

Pause. Using a separate ATtiny processor, the reset key can be used to reset (duh), pause or slow down the processor. Lots of opportunities right there!

USB. The board features a USB port, so using an appropriate bootloader you can use it to emulate an ADAM SuperDrive, download games from a PC or access the internet.

Configurations and Sega compatibility. The board is equipped with two dip switches connected to the address and IO mappers. These can be used to map either CV peripherals and memories or map them to their locations on a Sega SG1000. Or other similar Z80 based systems. Just burn a Sega image to a CV cartridge PCB and run it. And you can have two sets of BIOSes for each platform. Only one Sega joystick...

Read more »

ColecoOnOffTop.stl

Glue together with ColecoOnOffBottom for a power switch actuator

Standard Tesselated Geometry - 307.50 kB - 02/06/2025 at 09:53

Download

ColecoOnOffBottom.stl

Glue together with ColecoOnOffTop for a power switch actuator

Standard Tesselated Geometry - 174.59 kB - 02/06/2025 at 09:53

Download

ColecoResetTop.stl

Glue together with ColecoResetBottom for a reset switch actuator

Standard Tesselated Geometry - 260.24 kB - 02/06/2025 at 09:52

Download

ColecoResetBottom.stl

Glue together with ColecoResetTop for a reset switch actuator

Standard Tesselated Geometry - 151.16 kB - 02/06/2025 at 09:52

Download

ColecoPowerSwitchCap.stl

Small cap to put on the MFP201 switch to make it work with the stock CV power switch actuator

Standard Tesselated Geometry - 11.41 kB - 02/06/2025 at 09:51

Download

View all 8 files

  • Reset circuit

    Oliver Scholz02/08/2025 at 18:29 0 comments

    Added the reset circuit today. Yay me! Stay tuned for more...

  • Clock tripler

    Oliver Scholz02/06/2025 at 19:15 0 comments

    While considering going to the Tosche station to pick up some power converters I decided to wait for DHL instead and populate the components for the VDP clock tripler. Looks like it's working. Updated instructions and calling it a day.

  • Building the ultimate Colecovision clone

    Oliver Scholz02/06/2025 at 10:38 0 comments

    Okay, so I can write a log. Let me do that. I got 5 sample boards in December 2024, parts arrived late December, and now (Feb 25) I'm starting to populate the board and document my progress. Hopefully there will be no issues, but we'll see.

    I'm already incorporating minor layout changes, moving components slightly to make them more accessible, etc.

    The power supply and clocks are populated and working. I'll build the clock multiplier to test the circuitry on this board, but normally I'd just populate the 10.7 MHz crystal because that's simpler. Those using the Pico won't need to bother with VDP clock generation or TMSRGB at all.

    Again waiting for parts to complete the -5V converter and the next big step will be making an initial version of the two Memory and IO GALs to get basic CV mode running.

View all 3 project logs

  • 1
    Getting started

    Before you begin, a few words of caution. Building this is beyond the scope of the average DIYer. Yes, this is a project based on vintage 80s hardware, but some components are surface mount, and you must have experience soldering those! That means using a good, temperature controlled soldering iron, different tips for different solder joint sizes, and possibly spoon cartridges like e.g. the C245931 and flux as well as flux remover for SOIC. Oh, and I prefer leaded solder but suit your taste. I recommend JBC or of you’re on a budget the JaBe Chinese knockoffs. Tweezers and good magnifying glasses are definitely required.


    You don’t need any special tools or programmers. You do need an EPROM programmer to burn your BIOS or games. And I have simplified the schematics by replacing a lot of gates with two GALs. Yes, old technology, but still available, and tooling is free, as opposed to FPGAs. I could have gone the FPGA route, but then you quickly end up doing everything in the FPGA, and that isn’t very retro anymore. And GALs are more manageable for the hobbyist, if you want to tinker. I recommend the TL866 II programmer, which is also able to burn GALs.


    You should have a DVM. A good scope is not required, but can be very helpful to verify everything is working as it should. Even a vintage 20 MHz CRT scope will do. A frequency counter helps too, although these days a scope will do that too.


    Finally: get all parts up front. If you’re into electronics, you should have most resistors (0805 unless otherwise noted) and caps (again 0805 unless otherwise noted) in your drawers, but some parts are hard to come by these days, and it’d be a shame if the project ended up 95% complete because something wasn’t available.


    Most parts are available from Mouser or Digikey, RS and o5her local standard parts sources. Go through the instructions, gather which parts of the project you want to build and then compile your shopping lists.


    And it helps if you team up with one or more friends, maybe building one for each? You’ll save on shipping and can fix mistakes together.

  • 2
    Power to the people

    The CV doesn’t work without power, so we‘re starting with the power supply. 

    You can reuse a Coleco power switch made by Canal, Taiwan, even if it’s broken, as long as either side has a little life left in it. Otherwise, use a MFP201 switch, which can be used with a CV enclosure provided you 3D print a plastic extender (see “ColecoPowerSwitchCap” in the files section). You can install a LED, either through hole or SMD (1206). R64 should be chosen accordingly, typically 330 Ohms. You can also use a power jack on the PCB, or use red and black wires to extend to where the Coleco power connector is. See files section for a printed plate with a hole for the jack (“PowerSwitchPlate”).

    J2  DC10LP/FCR681465P DC jack
    L7       4,7uH/2A              
    D22    MBRS240       
    C6'      100n           

    SW2      Coleco Console power switch made by Canal, Taiwan. No longer available, AFAIK.
    or
    SW4      MFP201N        available through e.g. RS Components

    optionally:
    R64      330            (for standard 20mA LED, adjust if necessary)
    LED1     LED 5mm      
    or
    LED1A  CHIPLED1206 (right next to LED1)

    The remaining components are at the upper left corner of the PCB:

    U21
    LM2576T-5
    L1150uH L-PISR
    L222uH L-PISM
    D23MBRS340
    R6347k
    C82VF100/16PD
    C841000uF/16V FT-V 1M 16
    C85100n
    C87HD-V 100U 25


    If everything looks ok, hook up 12V supply and measure regulator input nom. 12V at TP10.

    Then measure 5V at TP19.  

    Finally, the controller section requires a -5V supply for strong pulldowns, so add:

    U24ICL7660CSA
    C5010uF/10V
    C5110uF/10V
    C5210uF/10V

    Now measure -5V at TP3.

  • 3
    Rock around the clock


    Next we're going to generate a clock or two. Or more. The CPU needs a main clock of 3.57 MHz, but those are hard to come by, so the PCB features a two stage divder. This allows the use of 7.15 or 14.31 MHz crystal oscillators in DIL8 can or XO53 SMT packages. I usually use the 14.31818 MHz crystal oscillator and divide it by 8 by default.

    You need these parts:

    OSC114,31818MHz (e.g. Mouser 815-ACH-14.31818EK)
    U2274LS74D
    C81100n
    C6100n
    R347 Ohms
    /40 Ohms (or use /2 or /1 solder jumper for different crystal freqencies)

    optionally: solder pin or loop to "GND" above OSC1 for measurements.

    Measure 3.58 MHz 5V square wave at TP1 and U1 Pin 6

View all 8 instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates