Giter Site home page Giter Site logo

acorn-a680's Introduction

Acorn A680

Roughly 20 years ago, when I was involved in the Cambridge University Computer Preservation Society, I was given three A680 main boards by an ex-Acorn employee.

A680 main board

I've not done much with them, and thought I should document these boards a little! The machine itself is pretty well-documented on Chris's Acorns.

As the A680 was a prototype-only machine, I'm not entirely sure if these boards ever had a case - they've got a little plastic foot on the back to allow them to rest on a surface without being mounted in a case.

They're quite clearly prototype-y - they've all got bodge wires on them, pretty much everything's socketed, EPROMs for ROMs, etc. One of them has a little daughterboard to adapt the surface-mount CPU to the socket, and one of them is missing the CPU. It looks like the internal model number is 0174 or 0274 (I don't know much about Acorn model numbers).

Photos here!

Schematics

Chris's Acorns contains some schematics as part of the official documentation, but I managed to get another copy via a different route:

Back when I first got the boards, I mentioned this to another CUCPS person, and they told me they could get me schematics, which might be useful if I were to play about with the boards... and they did! It appears they came from a different source, because they have different engineering metadata stuff around the edge of the schematics, which is kind of interesting, but I suspect the schematics from the above link will be better for most users.

I have scanned (and reassembled the dodgy photocopying) here.

ROMs

The roms directory contains the 4 EPROM images that each provide a byte of the 32-bit data the CPU needs. The a680.bin file interleaves the ROMs to produce the image seen by the processor. The ROMs contain little-endian ARM code, which I've done a little reversing of in Ghidra.

The EPROMs are half-empty, having 256kB of contents in 512kB total EPROMs (4x128kB). They are labelled "0274,20[0-3]-C BOOT ROM [0-3] (C) ACORN 1988".

They appear to run the self-tests 1-7 as shown on the hexadecimal display, only doing the follow-up tests if the NVRAM has a bit set to run these extra tests.

I have tried to avoid reversing the whole ROM, concentrating on just the self-diagnostics, but from the strings involved it looks like it has the following modules:

Name Help Version
Acorn ADFS ADFS 1.02140 DEVELOPMENT VERSION
Debugger Debugger 1.00 (11 Sep 1987)
FileCore FileCore 1.02117 DEVELOPMENT VERSION
FileSwitch FileSwitch 1.29 (19 Jul 1988)
UNIX BOOT system 0.32 (19 Jul 1988)
UNIXCLI UNIX boot CLI 0.02 (18 Jul 1988)
UtilityModule CLI utilities 0.32 (19 Jul 1988)

If you want to poke around further, you can open up the Ghidra image! It also looks like some parts of the OS_CLI were removed to make space - the ROM contains "Removed for UNIX version"." I have not dug further.

I have exported my reversing so far as a680.bin.gzf, from Ghidra 10.1.3.

TODO: Cross-checking contents between EPROM sets.

GALs/PALs

TODO: The board has 16 GALs on it. I have yet to try dumping them, and don't know if they're protected.

Booting

I have managed to get one of the boards to POST. Looking at the schematics, it appears the -5V rail is only used to pass through the -5V supply to the backplane. As such, I managed to power the board from the floppy connector of an ATX power supply (5V and 12V).

On initial power-up it fails the DRAM test (step 5), but once warmed up a little it gets as far as step E. This video shows POST process at double speed:

A680 POST

Resources

I've copied key datasheets to the datasheets directory. They're pretty small and it makes this repo rather more self-contained.

acorn-a680's People

Contributors

simon-frankau avatar

Stargazers

Matt Evans avatar VITTORIO REBECCHI avatar Nigel Barnes avatar David Thomas avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.