O man, good times.
I remember soldering RAM chips "piggyback" style, then upgrading to 64K of RAM, and adding 8 special-purpose ROMs (from utilities to a spreadsheet program). I even installed a color video board— all of this inside the Acorn Atom itself (which was a keyboard-style computer, similar to the C64).
The Atom also brought together a community of hardware and software enthusiasts through Atom Computer Clubs. These clubs were doing amazing things, including the development of Z80 co-processors and even running CP/M. While Acorn moved on from the Atom to the BBC Microcomputer, the clubs kept the Atom alive well beyond its prime.
It’s fascinating to look back and realize that the same team behind the Atom went on to create the ARM processor, which, interestingly, shares a striking similarity in its instruction set with the 6502.
Sophie Wilson (the designer of the original ARM instruction set) said this when asked which CPU architecture she admired:
Sophie Wilson, chief architect of ARM and more recently of the Broadcom FirePath
October, 2001
Primarily the 6502. I learned about pipelines from it (by comparison with the 6800) and its designers were clear believers in the KISS principle. Plus the syntax of its assembler and general accessibility of it from the machine code perspective. I can still write in hex for it - things like A9 (LDA #) are tattoed on the inside of my skull. The assembly language syntax (but obviously not the mnemonics or the way you write code) and general feel of things are inspirations for ARM's assembly language and also for FirePath's. I'd hesitate to say that the actual design of the 6502 inspired anything in particular - both ARM and FirePath come from that mysterious ideas pool which we can't really define (its hard to believe that ARM was designed just from using the 6502, 16032 and reading the original Berkeley RISC I paper - ARM seems to have not much in common with any of them!). And clearly the 6502's follow-up, the 65816, wasn't "clean" any more, so whichever of Mensch and Moore contributed what to the 6502, Mensch by himself was a bit at sea.
Biggest object lesson was, however, National Semiconductor's 32016 (aka 16032): this showed how to completely make a mess of things. The 32016 first exposed the value of memory bandwidth to Steve Furber and I, showed how making things over-complex led to exceedingly long implementation times with loads of bugs in the implementation, and showed that however hard you tried to approach what compiler writers claimed they wanted, you couldn't satisfy them (no, I never did use a VAX). And an 8MHz 32016 was completely trounced in performance terms by a 4MHz 6502...
That first reply (in the quora link) is a bit too dismissive
A lot of the instruction names are the same, but the apparent similarity becomes less once your start using them. Using the same names was probably very convenient given that Acorn's previous computers used the 6502, and it would have helped the programmers who need to transition.
But the machine was quite different to program, and the Arm made more innovations than just being a 6502 with more registers. Every instruction being potentially conditional, and every instruction being able to make use of the barrel shifter, were both quite radical at the time and contributed a lot to the density of code in those machines (although they are inconvenient to out-of-order microarchitectures, so have been dropped from V8)
Comments
O man, good times. I remember soldering RAM chips "piggyback" style, then upgrading to 64K of RAM, and adding 8 special-purpose ROMs (from utilities to a spreadsheet program). I even installed a color video board— all of this inside the Acorn Atom itself (which was a keyboard-style computer, similar to the C64).
The Atom also brought together a community of hardware and software enthusiasts through Atom Computer Clubs. These clubs were doing amazing things, including the development of Z80 co-processors and even running CP/M. While Acorn moved on from the Atom to the BBC Microcomputer, the clubs kept the Atom alive well beyond its prime.
It’s fascinating to look back and realize that the same team behind the Atom went on to create the ARM processor, which, interestingly, shares a striking similarity in its instruction set with the 6502.
Do you have more details on the striking silarity?
All the wiki mentions is optimized memory usage.
Sophie Wilson (the designer of the original ARM instruction set) said this when asked which CPU architecture she admired:
Sophie Wilson, chief architect of ARM and more recently of the Broadcom FirePath October, 2001
Primarily the 6502. I learned about pipelines from it (by comparison with the 6800) and its designers were clear believers in the KISS principle. Plus the syntax of its assembler and general accessibility of it from the machine code perspective. I can still write in hex for it - things like A9 (LDA #) are tattoed on the inside of my skull. The assembly language syntax (but obviously not the mnemonics or the way you write code) and general feel of things are inspirations for ARM's assembly language and also for FirePath's. I'd hesitate to say that the actual design of the 6502 inspired anything in particular - both ARM and FirePath come from that mysterious ideas pool which we can't really define (its hard to believe that ARM was designed just from using the 6502, 16032 and reading the original Berkeley RISC I paper - ARM seems to have not much in common with any of them!). And clearly the 6502's follow-up, the 65816, wasn't "clean" any more, so whichever of Mensch and Moore contributed what to the 6502, Mensch by himself was a bit at sea.
Biggest object lesson was, however, National Semiconductor's 32016 (aka 16032): this showed how to completely make a mess of things. The 32016 first exposed the value of memory bandwidth to Steve Furber and I, showed how making things over-complex led to exceedingly long implementation times with loads of bugs in the implementation, and showed that however hard you tried to approach what compiler writers claimed they wanted, you couldn't satisfy them (no, I never did use a VAX). And an 8MHz 32016 was completely trounced in performance terms by a 4MHz 6502...
https://people.computing.clemson.edu/~mark/admired_designs.h...
details of the thinking process of evolving from 6502 to ARM in this interview.
https://youtu.be/QqxThgLTLyk
And, yes, striking similarity is not the best way to say it.
Quora has some informative responses:
https://www.quora.com/Is-ARM-RISC-derived-or-inspired-by-the...
That first reply (in the quora link) is a bit too dismissive
A lot of the instruction names are the same, but the apparent similarity becomes less once your start using them. Using the same names was probably very convenient given that Acorn's previous computers used the 6502, and it would have helped the programmers who need to transition.
But the machine was quite different to program, and the Arm made more innovations than just being a 6502 with more registers. Every instruction being potentially conditional, and every instruction being able to make use of the barrel shifter, were both quite radical at the time and contributed a lot to the density of code in those machines (although they are inconvenient to out-of-order microarchitectures, so have been dropped from V8)
Good grief - 64K - what on earth did you do with all that storage :)