These people took the floppy controller used in the BBC Micro, an Intel 8271, and set about finding out how it worked. In the course of that, they discovered it's actually a dual core processor, with over 3x the transistor count of a 6502.
Then they dumped the ROM by visual inspection of the micrographs of a decapped 8271, and reverse engineered the instruction set, with a full disassembly available.
h a r d c o r e
@porsupah Call me a high-level programmer (because I am), but my brain unwound its stack when they started decoding ROM *by eye*.
@Nentuaby I'm all about low-level development, and that gave me a thrill. =:D Fascinating ISA, too, with only /some/ registers being incrementable. (But then, even on a 6502, you had INX and INY, but no INA)
@vertigo Ahh! Handy. ^_^ I only really got to play with the original, though undocumented opcodes were found from time to time, like the extremely useful (*ahem*) 2NOP, which took two cycles, and whilst it was only a single byte opcode, it also skipped the next byte, effectively occupying two. ^_^
(ISTR a copy protection mechanism from one software house actually using such ops, too.. O.o)
@porsupah not unusual for the era, either; the Commodore disk drives had their own 6502 with 16kb ROM/2kb RAM - and sending your own code over to run on the disk drive was supported :
I seem to recall there was a market for replacement ROMs that did things like speed up load times or allow you to copy "copy protected" disks as well.
@porsupah more like hard dual core
@porsupah pretty sure this is the chip I used to design, layout, hand etch, build and program a disk interface for my first computer. A home built z80 Nascom-ii kit. I knew nothing about any of this and it got me my dream job and set me off on an enjoyable career.
@happybeing Yay, Nascom II! I was shown the way by one of its predecessors. When it died, I went to the schematic to try working out what might've gone wrong. (Futile, ultimately - the PSU had basically fried half the chips) But it so easily brought together just /how/ it all worked - dynamic RAM, for one, and how you could start with a single clock and divide it down to give the chargen clock, then the character advance and horizontal sync, then the vertical.
@porsupah very cool yes. The young whippersnappers of today don't know clock from a timepiece, or a glitch from a movie malapropism!
@porsupah Well, the next time I deride myself for an architecture where "the peripheral is smarter than the main unit", I'll remember people have been doing that for decades.
We are a Mastodon instance for LGBT+ and allies! ☺