Recreating the Jupiter Ace

Recreation of the 'Fastest computer in the Universe' that runs FORTH.

Public Chat
Similar projects worth following
The Jupiter ACE was introduced in 1982 by a company named 'Jupiter Cantab' as 'probably the fastest computer in the universe'. Mainly because it was the first (and only) home computer at the time that ran Forth as it's main operating system. Since every other computer ran BASIC this was a remarkable choice, and it turned out to be a bad one. Only hardcore programmers dared to take up FORTH, and in the end only 8000 units were ever sold. Making them very rare and expensive nowadays so creating a replica is the closest I will ever get to owning one.

Building a replica of the Jupiter ACE  has been done before, and the super accurate replication of the original PCB by Grant Searle is probably the best example. The schematics were redrawn later by Bodo Wenzel in ORCAD, and a modified version was made by Isidro Nuñez Blanco De Arenas. Both builds were done 2003-2006 ( which shows if you look at the design of their websites), and things have changed a bit since then. PCB manufacturing is much cheaper now, and it's also easier to create custom plastic parts. Because what's lacking in all these rebuilds is the actual housing, which to me is a huge part of the charm of this machine. And using a 3D printer it cannot be too hard to replicate this.

The Housing

To my surprise there are also no 3D models available , apart from the 'mini Jupiter ACE', which obviously it too inaccurate to use as a basis for a real housing.

So I started out to do this myself, using my favourite 3D modelling software: 'DesignSpark Mechanical' (DSM). I used Grant's PCB layout, made it into a .png image and imported that into DSM. Since the drawing includes millimetre marks on the edge it was easy to scale it to exactly 100%.

The Keys

That's a hard one. Getting a custom made rubber key-mat is beyond my financial capacity so that's not an option. I'll try to make them using my 3D printer. The main problem here is  to get the text on the keys. I considered printing this on adhesive film and just stick it on top of the key. Then I thought I could also print the keys in white, with the text sticking out. Then if I spray painted them black and sand the top it would reveal the text again. 

 Looks great in my 3D software !. But how would it turn out in reality ?


Though it's possible to create the exact PCB replica using Grant Searle's PCB foils, that is not what I wanted. I did want to make some minor changes on the EPROM and RAM connections, and use standard mini switches for the keyboard. Also if the PCBs have to be made by a cheap Chinese shop, it's essential to have Gerber files. So, all in all a good incentive to replicate the schematics again, but now in KiCad. For years KiCad has been a bit troublesome to use, but over the last few years it has improved significantly and is now a serious EDA package. It's free, open source and multi-platform so it is becoming the de-facto standard for all open-source hardware projects.

Version 0.3. December 2019. Still about 5% of the routing to go, and it's getting harder.

x-zip-compressed - 104.85 kB - 03/31/2020 at 14:48


Jupiter ACE-Split.rsdoc

Designspark file for the Jupiter ACE housing. Top section split in two parts for easy 3D printing.

rsdoc - 16.42 MB - 06/17/2019 at 09:04


  • Housing

    Cees Meijer03/31/2020 at 14:53 0 comments

    As I'm still struggling with the PCB, I thought it was a good time to finish the housing. This worked out very nice. Printed both the top and bottom in two sections.

  • Progress, and a manual

    Cees Meijer08/29/2019 at 20:09 2 comments

    Routing is progressing, but not as fast as I would hope. Originally I thought that I could simply follow 90% of the routing on the original board. But since there are a few major changes, like the type of RAM and the addition of some components for video and power supply decoupling, this soon became impossible.

    A lot of routing is done, but as the ratsnest shows, the best is yet to come.

    So I decide to let that go, and just route as I (and the Kicad router) think is best. Which still means a lot of work.

    In the meantime I finally ordered the 'Jupiter ACE - FORTH programming' book by Steven Vickers.

    Very nice to have at least the original manual for my computer, even though this computer itself is still in the future.

  • The Mystery of the Missing Power Pins in KiCad

    Cees Meijer06/27/2019 at 20:14 1 comment

    After I placed most of the ICs on the PCB, mostly according to the original layout, I started to try and route them. And by following the routes by looking at images of the original PCB it seemed quite simple. But when routing what looked like power and ground it suddenly struck me that two pins on both corners were connected. Since I have worked a lot with ICs of the 7400 series in the past I knew that most of them had Vcc and GND on two outer corner pins so this did not seem right.

    7400 Power pins

    A closer look at the traces that connected the corners also showed that these did not have a net name. On the schematic there are also no power pins for any of the 74xx  chips. But all Kicad guides that I could find also mentioned that power pins for logic chips are always hidden, and automatically connected to  VCC and GND. There is a 'Show  Hidden pins' button, but clicking it does not reveal any pin on a 74xx port. On the PCB it looks like all power and GND pins are simply connected by a net that has no name. This really puzzled me for while, until I discovered that all 74xx units actually have an extra unit that contains the power connections. So the 7400 contains 4 ports (Unit A,B,C,D) and a Unit E which only contains VCC and GND.

    Ports, Unit E (power and gnd), and power ports in the schematic

    After adding the power 'unit' for every chip, the PCB routing suddenly makes sense and the pins are also marked with their correct names.

  • PCB Layout

    Cees Meijer06/15/2019 at 12:47 5 comments

    OMG ! How am I ever going to solve this ?

    After finishing the schematic, it's time to start the PCB layout. First this requires some decisions on what component shapes to use. All the ICs are easy, these are just standard DIP packages. The capacitors are all ceramic discs, but with a 5mm pitch, where 2.54 is more common these days. Resistors are all good, old-fashioned standards 0.25 W radials with a 10 mm pitch.

    For the 3.5 mm jacks that connect the power and the tape recorder I chose a model that's available at  almost every electronics shop. (Sparkfun sells it as '3.5 mm Audio Jack'). And for the RF or Video out a very standard RCA jack will do.

    RCA Jack, switces and 3.5mm Audio jack
    RCA Jack, switches and 3.5mm Audio jack

    And finally the switches, which I already decided to be the the 'mini tactile switch, 6x6x5'.

  • Drawing the Schematic

    Cees Meijer06/10/2019 at 18:07 6 comments

    As I'm nearly finished re-drawing the schematic by Bodo Wenzel and Isidro Nuñez Blanco De Arenas there are some issues as to where to draw the line between staying true to the original, and add modifications that will make it more useful. I love Grant Searles 100% replica of the PCB, but this will require all original parts which may be very hard to get. But I do want to stay close to the original, because otherwise you might as well just put  an Arduino board on it, and run an emulator.

    Isidro's schematic already has some modifications, like using the 6116 RAM and a 27C64 EPROM which I decided to follow. Actually, after a suggestion from one of my followers I decided to go for a 27C512 and add some jumpers so it will be possible to select multiple images.

    Next up is the decision to add a direct video output. The ASTEC RF modulator is not only rare, but it also serves no purpose so it makes sense to leave that out. After all, with every retro computer I get nowadays the first thing I do is add the video-out modification. I found a neat schematic for video out by '1024MAK' on the ZX forum:

    After looking at the annotated schematic by 'nocash' I also noted some small additions

    marked 'ACE4000'. /ROMCS is a contact on the edge-connector. Not sure what they are used for, but I decide to add them as well. After all, if not used, the resistors can just be replaced by jumpers, and the diodes left out. 

  • The Keys

    Cees Meijer06/09/2019 at 10:31 0 comments

    As the original rubber keyboard is not an option, I decided to use the standard 6x6 mini tactile switches. Which can be bought for around €5 per 100 in China.

    Mini tactile switches
    Mini tactile switches 6x6x5mm

     I already tried as a proof of concept to create the key-caps by printing them in white, spray painting black and then scrape off the paint from the cap-text. 

    3D Printed key
    3D Printed key-cap, prototype

    Which works out really nice. Next the caps needed to be modelled so he fit exactly on top of the switch. This took several tries as the fitting needs to be tight but not too tight and so it comes down to a tolerance of +/- 0.1 mm. But in the end this works fine. The caps stay in place, the key-press has a nice tactile feedback and it looks a lot like the original.

    Key caps
    Assembling the key-caps and the mini-switch

  • Redrawing the schematic

    Cees Meijer06/05/2019 at 06:47 0 comments

    It's taking time, but slowly I'm getting to complete the schematic in KiCad. All based on the original scan of the schematic and the re-draws by Bodo Wenzel, and Isidro Nuñez Blanco De Arenas. So far most of it is on it,  just have to finish the keyboard.

  • Creating the housing

    Cees Meijer05/28/2019 at 09:18 0 comments

    Since I have not been able to find a decent 3D drawing of the Jupiter ACE housing I created this myself in Designspark Mechanical.

    Since I do not own one to take measurements from I collected as much photos as possible, preferably from the sides and top. The only fixed measures I head were those of the PCB, so I used that as the basis. Then I used placed the photos on different layers and scaled the 3D model until it fits the images.

    What I overlooked in the first place was that the housing of the ACE is significantly larger than that of a ZX-80, which I previously printed successfully. So I had to split the model into printable parts.

    And once assembled, the top section looks a lot like the original.

View all 8 project logs

Enjoy this project?



Michael Gardi wrote 05/23/2020 at 13:33 point

I know this is late in the game, but your keycaps could have been printed in 2 colors if your printer supports the ability to change filaments at a specific layer height.  I've used this to great effect in a number of my projects.

  Are you sure? yes | no

Cees Meijer wrote 05/23/2020 at 14:31 point

Could be an option. It would indeed just require 1 filament change at a specific hight so it should be doable. It's something I have not done before but definitely worth trying.

  Are you sure? yes | no

Michael Gardi wrote 05/23/2020 at 15:03 point

If you printer supports it it’s pretty easy to do. The Plug  Panel on my H-500 was done that way. 

  Are you sure? yes | no

programmez wrote 02/15/2020 at 14:30 point

Have to create 2x4k rom ?

  Are you sure? yes | no

sjkelly36h wrote 09/05/2019 at 23:30 point

I would just like to wish you good luck with your interesting project.

Having looked at Grant Searle's projects, I was thinking of doing something similar, but unfortunately my skills are less than my enthusiasm at present.  

Then I saw your project.  If I can get one of the Chinese fabs to make me a decent pcb from your gerbers, then a new Ace becomes more of a possibility for me.

I had an original Ace back in the day and my recollections are that you couldn't do much with one without the RAM pack.  Have you considered adding a RAM expansion to your PCB design?  The Ace wasn't a sturdy unit and the keyboard wasn't very good.  Many times I remember pressing the keys a bit too hard, wobbling the RAM pack and resetting the machine.

That really is an original feature I could personally do without!

If this is of interest to you, there is a two chip design for a 96k ram expansion at 

Obviously, it's your decision, but adding this to the pcb wouldn't detract too much from the originality IMHO.  It would give you a much more usable device, though.

Please keep up the good work.

I will continue to follow your project with much interest.

  Are you sure? yes | no

Cees Meijer wrote 09/06/2019 at 08:17 point

Thanks for your comment, and great to see you are actually considering building one yourself. As I am (very slowly) approaching the end of the routing process, there is not much left for changing the design. The RAM pack is indeed a interesting addition, but there certainly won't be room on the PCB to have that included.

The keyboard will hopefully be slightly better than the original. I have already done some tests using the miniswitches and 3D-printed keys, and it seems to work well. You still won't be able to write a novel on it, but it's an improvement.

Once I finished the PCB, I'll have a few made in China. Then I will of course test it first, but if it's OK, I will probably sell the remaining boards. Which then could be your chance to get one. But I will of course publish the final Gerbers here on Hackaday, so feel free to order your own. And with all the KiCad design files available as well you might even want to add some modifications of your own.

  Are you sure? yes | no

danjovic wrote 07/27/2019 at 14:45 point

Nice work you have been done so far! If you please allow me suggest you a couple of improvements:

# 60Hz support. It might require an extra 7400 and some solder jumpers 

# Backporch for video signal, which will also provide a signal that best matches voltage and output impedance of rs170 (ntsc) video. Backporch itself is not necessary with white characters ovet black background, but the impedance/voltage matching is just a matter of using three calculated resistors instead of the output transistor.

I can make some drawings and post them on a page after this weekend, and then you can look at that and see if my suggestions worth the effort...

  Are you sure? yes | no

Cees Meijer wrote 08/06/2019 at 07:10 point

Thanks for the comments. Just returned from my holidays so I only just saw them.

I considered 60Hz support, but I'm not sure if that is still required. I suppose most modern display devices do not have any problems with 50 or 60 Hz. But I could be wrong.

I read about the 'backporch' issue but never really understood it. Could be due to my 'European / 50 Hz / PAL ' view of the world. But if you can send be some drawings I'd be most happy to integrate them. I have only just started the actual routing so there is still plenty of time to incorporate some changes.

  Are you sure? yes | no

danjovic wrote 08/06/2019 at 22:16 point

You welcome! 

Backporch is necessary for the TVs to correctly detect the relative amplitude of the video signals. It consists of a period of time right after the sync tip when the amplitude of the video signal should be equal to the blank level. 
If you have white charactes over black background it will not be an issue, as the video signal will be normally black during backporch period.

To generate the backporch you can use a RC network that lingers the SYNC pulse and then use the "elongated" signal to blank the video signal. Using this principle you can take the links [1] and [2] as a reference to design the backporch circuit using spare gates.

The impedance/amplitude matching can be done with a bit of math considering the state of Sync and Video for the moments of SYNC TIP, VIDEO DARK, VIDEO WHITE for both open circuit and under 75 ohms load. The best part is that your backend video circuit consists of only 3 resistors. Please take a look at link [3]


  Are you sure? yes | no

Cees Meijer wrote 08/07/2019 at 20:11 point

Thanks again for your suggestions. I've just read all the info in your links, and it is an excellent explanation of the video signal generation. I'll certainly use this in my schematic.

  Are you sure? yes | no

johntkennedy wrote 06/21/2019 at 17:46 point

Oh, and check out "Forth Programming" - they republished the original manual a year or so ago, and it's on Amazon!

  Are you sure? yes | no

Cees Meijer wrote 06/24/2019 at 07:19 point

Yes, I've seen that. Haven't bought it (yet).

  Are you sure? yes | no

johntkennedy wrote 06/21/2019 at 17:45 point

I did have an Ace - it was cheaper than the Spectrums my friends had - and different. The build quality was awful but using FORTH was a really interesting thing to do. I'd love to create it (preferably with HDMI and a SD storage card) :-)

  Are you sure? yes | no

Cees Meijer wrote 06/24/2019 at 07:22 point

Nice! You have the first version with the vacuform housing) or the 'ACE4000' model ?

As I am aiming for staying close to the original as much as possibe, there will not be a SD card or HDMI output, but I will include a standard Video output.

  Are you sure? yes | no

johntkennedy wrote 08/12/2019 at 04:22 point

The original "vacuform" aka yoghurt pot plastic :-)

How's your progress?

  Are you sure? yes | no

Cees Meijer wrote 08/12/2019 at 06:48 point

Well,  holidays got in the way, so progress has been slow for the past month. Still working on routing the PCB. Which, since I wanted to do it manually, is quite a lot of work.

  Are you sure? yes | no

Ken Yap wrote 06/05/2019 at 08:06 point

Nice that you're bringing this to life again. I remember seeing ads for this when I was in the UK in 82. I mentioned it to a friend of mine and he may have bought one, I seen to remember him complaining about the Chiclet keys; I'll have to ask him next time we meet. I admired Forth for what it could do with little resources as microprocessors were all I could afford, not Unix workstations like at work, but never got around to using it. I think I don't have enough brain cells left now to program in Forth, hahaha.

  Are you sure? yes | no

Cees Meijer wrote 06/05/2019 at 08:20 point

My experiences are similar. I also saw the ads, but never had one. And I'm not sure about my Forth capabilities either, but I expect it will take quite some time before I get to the actual programming....

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

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