[ih] Intel 4004 vs the IMP

touch at strayalpha.com touch at strayalpha.com
Mon Nov 15 08:49:19 PST 2021


On Nov 15, 2021, at 7:24 AM, Clem Cole via Internet-history <internet-history at elists.isoc.org> wrote:
> 
> So, I suspect if you just match the ISA's, first commercial microprocessor
> to come close to that would have been the M6809 which was introduced in
> 1978, which had two 8-bit A/B accumulators which combined to single 16-bit
> accumulator but also has a 16-bit D accumulator.  It also had 2 16 bit
> index registers (X and Y).   It was usually combined with semiconductor
> memory and clocked at 2 Mhz.

The challenge with the 6809 was the complexity of the memory interfacing circuitry; it was only after Motorola developed the 6883 SAM chip that the pair took root, notably as the core of the Radio Shack Color Computer. That happened sometime between 1978 and 1980, the latter being the introduction of the TRS VideoTex terminal and CoCo, which were basically the same box with slight variation (the former had an internal modem, e.g.).

The 6809 does come close to the H-316:
>> The programmers' model of the H-316 consisted of the following registers:
>> 
>>   - The 16-bit *A* register was the primary arithmetic and logic
>>      accumulator.
>>      - The 16-bit *B* register was used for double-length arithmetic
>>      operations.

6809 had one 16-bit D register.

>>      - The 16-bit *program counter* holds the address of the next
>>      instruction.

Same.

>>      - A *carry flag* indicated arithmetic overflow.

Same.

>>      - A 16-bit *X index* register was also provided for modification of
>>      the address of operands.

The 6809 had two 16-bit index registers (X, Y) *and* two 16-bit stack pointers (U, S), in addition to the PC above, and a 64KB native address space (this was increased using bank switching in some motherboards).

Notably, also, it has the test instruction first appearing IRL in the 6800 that gave us “halt and catch fire”.

The 6809 was far ahead of its time IMO; it supported 100% position independent code and although having fewer instructions than some others (59), the instructions were highly orthogonal.

Given its clock (just under 2 MHz) and performance (2x that of a 6502 or Z80), I would interesting to see if it could have kept pace with the H-316.

Side note: I learned assembler programming the 6908 in a Coco by hand-assembling code and using BASIC POKE instructions, even to the point of creating new instructions and patching them into the Coco ROMs (after being copied into RAM), using roadmaps meticulously dissected and described in BYTE magazine. I also used the Coco as a terminal into a Xerox SIGMA/6 in college back in 1981, using an acoustic modem at 300 baud to write SNOBOL and Pascal from my dorm room. But I’m feeling much better now ;-)

Joe


More information about the Internet-history mailing list