6702 Functional Description
(as deduced from it's operation)
REGISTERS
Input Register - 8 bits
Even/Odd Register - 1 bit internal register. Inverse of bit 0 of the
previous value of the input register.
Last Number Register - 8 bit internal register. Previous number accepted
by the 6702.
Shift Registers - Eight internal circular shift registers of different
lengths, one for each data bit.
bit 0 length 6
bit 1 length 3
bit 2 length 7
bit 3 length 8
bit 4 length 1
bit 5 length 3
bit 6 length 5
bit 7 length 2
Flip-flops - Eight flip-flops, one for the output of each shift register.
The output of the flip-flops constitute the output register.
INITIALIZATION
The Last Number Register and the Flip-flops are initialized to 214.
Everything else is initialized to zero.
OPERATION
On reset, 214 is output. The output remains the same until the 6702
receives an even number followed by an odd number. The even number is not
used. The odd number is used to calculate a new output. Input other than
the even-odd sequence is ignored.
INTERNAL OPERATION
1. When data is written to the 6702, the low bit is AND'ed with the
Even/Odd register. If the result is zero, the low bit is inverted and
written to the Even/Odd register, and the 6702 waits for more input.
If the result is one, operation continues below.
2. The input register is exclusive OR'ed with the Last Number register.
3. That result is exclusive OR'ed with the current position of the shift
registers.
4. The shift registers are shifted one position. The input register is
copied to the Last Number register. The low bit of the input register
is inverted and written to the Even/Odd register.
5. The shift registers are output to the flip-flops. For every bit that
is one, the output state of the flip-flops is toggled.
NOTE
The original SuperPET contains sockets for four 6702 daughter boards.
Other variations of the 6702 may have been planed for use with other
software. Different initialization values and/or different shift register
lengths would generate entirely different sequences of numbers.