07.01.2014 Views

The System Manual of SOL-20 - History of Computers

The System Manual of SOL-20 - History of Computers

The System Manual of SOL-20 - History of Computers

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

PROCESSOR TECHNOLOGY CORPORATION<br />

Sol THEORY OF OPERATION<br />

SECTION VIII<br />

supplied by the Encoding ROM, with the data being determined by inputs<br />

from the Column Scanner and Function Latch Decoder. This<br />

strobe (Data Out) also enables the Strobe Generator to output !STROBE<br />

a 6 usec pulse that signals the Sol CPU that the Keyboard is ready to<br />

send data.<br />

Eight bits <strong>of</strong> keyboard data (KBD0 through KBD7) are stored in<br />

the Output Latch. KBD0 through KBD6 represent the ASCII code for the<br />

character associated with the key closure, or closures, that initiated<br />

the Data Out strobe from the Sequence Detector. KBD7 is used<br />

only for special control characters (e.g. MODE SELECT, CLEAR and cursor<br />

movement) that are recognized by the Sol program. <strong>The</strong> data on<br />

KBD0-7 is input to the Sol CPU when it issues !PORT_IN_FC (refer to<br />

Paragraph 8.5.2 on Page VIII-14).<br />

<strong>The</strong> Repeat Counter is enabled when the REPEAT key and a character<br />

key in the Key Switch Capacitive Matrix are pressed at the same<br />

time. When this occurs, Key Out (initiated by the character key closure)<br />

is active, and the Repeat Counter generates a periodic Repeat<br />

Strobe. This strobe disables the Sequence Detector and causes the<br />

Strobe Generator to output repetitive !STROBE pulses. Column 30 also<br />

prevents the Sequence Detector from strobing additional data into the<br />

Output Latch.<br />

<strong>The</strong> Function Latch and Decoder latches and decodes the Low<br />

Order Count from the Row Scanner when the "function key" column in<br />

the Switch Matrix is selected by the Column Scanner. It then outputs,<br />

as appropriate, !LOCAL, !RST and !BRK to J1 and SHIFT/SHIFT_LOCK, UPPER_<br />

CASE and CONTROL bits to the Encoding ROM. <strong>The</strong> latter three supply<br />

three <strong>of</strong> the seven address bits to the ROM which specify the high<br />

order four KBD bits (KBD4-7).<br />

All keyboard outputs are supplied to J1 which is connected<br />

to J3 on the Sol-PC.<br />

8.6.2 Circuit Description<br />

Refer to the Keyboard schematic in Section X, Page X-23.<br />

Keyboard operation is controlled by a 3 usec clock circuit<br />

consisting <strong>of</strong> NAND gate U7, R7 and C7. U7 is connected as a Schmitt<br />

trigger inverter with negative feedback through R7 and C7. <strong>The</strong> output<br />

on pin 11 <strong>of</strong> U7, a square wave with a 3 usec period, is inverted<br />

in U4 (a NAND gate connected as a simple inverter) and applied to the<br />

clock input (pin 11) <strong>of</strong> U8. U8 operates in a toggle mode by virtue<br />

<strong>of</strong> feeding its !Q output on pin 8 to the D input on pin 12. Thus, its<br />

output state changes on each clock to produce a 6 usec and an inverted<br />

6 usec clock on pins 9 and 8 respectively.<br />

Each <strong>of</strong> these outputs is connected to a section <strong>of</strong> U7 where<br />

each is AND'ed with the 3 usec clock. This generates two negative<br />

going clocks at pins 8 and 6 <strong>of</strong> U7. <strong>The</strong>se outputs are called !φ1 and<br />

VIII-39

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!