Inferno #04
22 июня 2003
  Железо  

Iron - Advanced Keyboard sinclair-compatible personal computers.

<b>Iron</b> - Advanced Keyboard sinclair-compatible personal computers.
          Extended keyboard
 FOR SINCLAIR-compatible personal

              COMPUTERS

(P) Shaitan
(C) Alkhasov SM

   Borodavkin VI

   Kozhemyakin VV


 Presenting your attention the very old, but not a useless 
piece of metal, designed in 1991 in the walls labortarii 
Taganrog Radio Engineering Institute. As far as I know in those 
days most of the theses in the TRI was thesis is precisely the 
development of additional devices for SPECCY. Just do not I 
will long razlagolstvovat. Next comes "Firm" the text 
description of the extended keyboard, without significant 
changes (we have replaced only a clumsy phrase, but was removed 
nemngo superfluous text). 


              1. INTRODUCTION

 One of the features Sinclairsovmestimyh personal computers (PC)
is the keyboard that contains a record
small number of keys - 40. As a result, some keys perform up to 
5-6 functions. If you use your PC as a gaming this circumstance 
is certainly desirable, since to download the game and control 
uses a small number of keys that cheaper construction of a PC.

 When you try to use the PC for programming, ie, as a teaching 
or tool, the user first

all faced with the fact that for a set of many characters,
key words and commands necessary to perform fairly complex 
manipulations of the keys. Over time, the user gets used to 
This, however, the ability to recruit some of the most 
frequently used symbols key words and commands by pressing one

Keys remains attractive and seems almost inaccessible.
 In addition, the PC keyboard does not allow
work with one hand, that in some cases is more an 
inconvenience. For example, nearly all commands work with 
TR-DOS require keystrokes CAPS SHIFT + SYMBOL

SHIFT and SYMBOL SHIFT and then the desired command, which is 
done with one hand difficult or, for example, to delete the 
mistyped character requires simultaneously pressing two keys in 
opposite corners of the keyboard.  Additionally, you need to 
take into account that each case using a PC

desired well-defined set of
additional keys and their location on the keyboard field. For 
example, using the PC as a calculator - they are signs of 
mathematical operations in programming - it could be another

a set of keys when working with TR-DOS third and
etc.
 Thus, it is desirable that each
the user can himself create the required set of additional keys 
and their location of its choice.


2. ANALYSIS OF OPTIONS FOR ENHANCED KEYBOARD

 Currently, there are several
implementation of the enhanced keyboard, known to the authors 
of this development, but to Unfortunately, they are in our view 
a number of drawbacks. It should be noted that a set of 
additional keys, installed in some versions of "branded" 
computers do not is optimal, because think

it is difficult not to agree that the team
TR.VIDEO, INV.VIDEO, GRAPHICS, and others are used by users are 
not so often that they impose on the individual keys.

Thus, probably should not blindly copy one set of extra keys in
their location, which is set to
"Branded" PC, which unfortunately the authors do some 
development.  In developing the enhanced keyboard

there are two basic approaches:

a) The first is to expand the matrix keyboard with 8 * 5 8 * 6 
* 7 or 8, which hardware is very simple, but requires some work 
PC board, as must involve additional unused bits of data on 
tire shaper (multiplexer) keyboard, which would require 
increasing the number of conductors from the PC to the 
keyboard. In this case, subject to change keyboard driver in 
ROM that requires proprietary firmware upgrade ROM. In 
addition, this may be inconvenient when a new firmware ROM, as 
'll have to modify the keyboard driver.

 It should be noted that with such a keyboard
may not operate some programs that use your keyboard driver.
However, if the user has enough
experience to refine the driver himself
keyboard, then he, in this case may
program any set of extra keys and their location on the 
keyboard. b) The second way is in the hardware

simulate key press by
pressing a button. In this case, as
generally not required to refine cost
PCs, and even more software.
But many implementations unfortunately very
complex and can not have the flexibility, ie the possibility of 
determining the necessary set additional keys. In many cases,

such a possibility unfortunately provided only by changing the 
scheme, which uncomfortable in the presence of the finished 
printed board. When typing many commands and symbols

on a conventional keyboard requires consistently pressing 
certain keys. DELETE - is pressing CAPS SHIFT and

then continuing to hold its pressing 0. As a rule, in many 
implementations emulated by simultaneously pressing these

keys, which leads to accurate results,
but has several disadvantages, because thus impossible to 
simulate a collection of commands and characters, such as those 
who are recruited through the mode of [E]. An implementation 
can simulate a sequence of keystrokes, is more flexible, 
although very often leads to a large hardware redundancy. 


   3. DESCRIPTION AND SCHEMATIC DIAGRAM
 THE PRINCIPLE OF EXPANDED KEYBOARD

 The following implementation is free from
Many of these shortcomings, does not require any revision fees 
PC software.

 This implementation contains 16 additional keys, which can be 
programmed for virtually any team, key words and symbols, and 
collected at 4- IC. Appointment of additional keys and their

location (can be any) is determined by the firmware ROM chip 
D4. Below It will be shown how anybody simply can itself be 
programmed destination and location additional keys.

 Extended keyboard consists of a master oscillator for IC 
D1.1-D1.3, count on IMC D3.1, a simple decoder on IC D1.4, 
multiplexer IC D2, delay element in the IMS D3.2, matrix keypad 
2 * 8 buttons K0-K15, ROM IC D4.

 In the initial state, before pressing extra keys, counter 
moves to D3.1 cycle (scan) binary codes from 0000 to

1111. LSB defines a column
matrix keyboard, and the older 3 digits
determine the row of the keyboard. When
Pressing the counter continues to scan the keyboard until it is 
exposed code of the pressed key, while "zero" through

corresponding input multiplexer D2 will be skipped in the input 
and block work D3.1 counter via input 2, fixing

code is pressed. At the same time will
unlocked delay element is implemented on the counter D3.2, and 
allowed Picks ROM - IC D4 (entry 20). At the ROM address inputs 
A4-A7 served four-digit code key was pressed, the remaining 
inputs are fed targeted level of primary Keyboard (A0-AS and 
A8, A9), as well as delay element (A10).

 Depending on the code key was pressed and
code on the address inputs of the main keyboard, the output of 
ROM will be installed information in accordance with the 
firmware, which through the diodes VD3-VD7 be filed in data 
outputs the main keyboard, so way to simulate pressing one

or more keys. After eight cycles the output will be 14 meter 
D3.2 exposed to "1", which is input

A10 ROM, and the selected second page of the ROM, which can be 
emulated pressing other keys.  Thus, the sequence can be 
obtained by pressing the two groups of keys, that allows you to 
simulate input any commands and characters on the main field of 
the keyboard, and even commissioning two separate teams. For 
example, the RUN and ENTER push of a keys that can be useful if 
you frequently run beysikovyh programs.  Resistors R1 and R2 
and capacitor C1 are vremyazadayuschimi elements of the 
generator, whose frequency should be within a few kilohertz. 
Diodes VD1 and VD2 serve to protect against short-circuit the 
input and output elements D1.4 Accidental simultaneously 
pressing two keys of different columns. Resistor R3 serves to 
form the output of multiplexer 3 D2 "1" when released the keys. 
Using a single resistor instead of eight on the inputs 
Multiplexer feature is explained particular type of multiplexer.

 Resistors R4-R9 are used to form
"1" on the address bus A8, A11-A15, because
diodes on the main field of keyboard blokirut
passage of "1". Diodes VD3-VD7 serve
resolve the conflict at the output of ROM with a key on the 
optional keyboard and the main fields. 


    4. PROGRAM PURPOSE

         Additional keys

 To form the table that will
stitched into the ROM, the user must explicitly
represent how the poll is the keyboard to the PC. Processor 
under software control keyboard driver puts on the queue "0" on 
the address bits A3-A15, which are fed through diodes on the 
keyboard and this reads the information on a 5-LSB data bus 
(D0-D4). If all of these bits are "1" it means that the key is 
pressed, which is located at the intersection of the address 
discharge (A8A15), which is currently "0" and the corresponding 
discharge data. In Depending on the number of digits and address

data and previous state
computer generated code is pressed.


         Table of correspondence

       numbers of bits and Keys


       A8 A9 A10 A11 A12 A13 A14 A15


  D0 CS A Q 1 0 P ENTER SPACE

  D1 Z S W Sept. 2 O L SS

  D2 X D E August 3 I TO M

  D3 C F R July 4 U J N

  D4 V G T May 6 Y H B

 Therefore, if we want to emulate
keystroke, it is necessary when a "0" at the appropriate address
discharge - to form a "0" on the corresponding discharge data.
 The following table shows the corresponding bit address and 
data ROM address and data bits of the PC. 


      ROM A10 A9 A8 A7 A6 A5 A4

            Z A15 A14 NW C2 C1 CO

          retarding PC key code



      A3 A2 A1 A0 D0 D1 D2 D3 D4

      A8 A11 A13 A12 D0 D1 D2 D3 D4

             PC PC

 The choice of such a fragmentation of
bits ROM and a PC connected with the simplification of board 
layout nekotoryv keyboard, though Generally, this line can be

set quite arbitrarily.
 Level addresses the A9, A10 ROM for PC is not
connected, since functions performed by the keys that are 
connected to these discharges on In our opinion, the 
often-used. But if you need to emulate and then need to either 
replace the other targeted level that will not be used

bits A9, A10, or install ROM
larger volume (eg, 2764), connecting to the extra bit ROM 
address level A9, A10 PC.

 Using the above table now
We simulate a knife pressing any keys.

Example 1.

 If we want to simulate pressing an extra key K10 click your 
cursor up, which is formed by pressing CAPS SHIFT, and then 
press it pressing the 7 main field keyboard, we need to "flash" 
the ROM The following three fields:


Address: Data:

ZA7: FE - pressing CAPS SHIFT
7A7: FE - holding down CAPS SHIFT
7AE: F7 - pressing 7

Example 2:

 If we want to simulate pressing an extra key K12 "*" symbol, 
then necessary to "flash" the ROM following three

cell:

Address: Data:

1CF: FD - pressing SYMBOL SHIFT
5CF: ED - holding down SYMBOL

              SHIFT and pressing in

 Holding the keys to emulate SYMBOL
SHIFT key, and B uses a single cell, because both of these keys 
are on the same address line A15. 

Example 3:

To emulate the extra keys KO -
a set of keywords must PAPER
"Flash" the ROM following three fields:

Address: Data:

Z0E: FE - pressing CAPS SHIFT
10F: FD - pressing SYMBOL SHIFT
70F: F6 - holding down CAPS SHIFT

              and pressing a

Example 4:

 Very comfortable in our view is emulate rollover CAPS
SHIFT and SYMBOL SHIFT and further holding the keys SYMBOL 
SHIFT, we call this key "E-mode." It is convenient in that it 
Press and release the PC translates into "E-mode" and allows 
you to dial while holding key words and symbols that are 
written at the side keys, for example, commands

TRDOS. Moreover, if this key will be located close to key 
management TRDOS, it will be very convenient to recruit these

keywords with one hand.
 Suppose we want to program an additional key K2 on the "E 
mode", it is necessary to "stitch" these cells ROM: 

Address: Data:

12F: FD - pressing SYMBOL SHIFT
327: FE - pressing CAPS SHIFT
52F: FD
52E: FD
52D: FD retention SYMBOL SHIFT
52B: FD
527: FD
42F: FD

 Programming of six cells to simulate holding the keys SYMBOL
SHIFT is due to the fact that simultaneously with
This key can be pressed to howl any other key primary field 
keyboard. When Moreover, if not stitched appropriate cells, it 
may be ambiguous keystrokes. Thus, the above examples show that 
the implementation of the enhanced keyboard has a great 
potential and even greater reserve capacity, to realize that 
users can at discretion.

 As a possible appointment of additional keys and their 
locations offer the following options: 


        K0; K8 +

        K1) K9 -

        K2 E mode K10 Up

        K3 (K11,

        K4 "K12 *

        K5 DELETE K13 /

        K6 - K14 Down

        K7 EDIT K15 -

 Below is a flash ROM for a
composition and location of additional keys. For all 
unspecified address must be the code FF, thus their programming 
does not necessary.



K0; 10F FD

                50F FD

                70D FD
K1) 11F FD

                51F FD

                71E FD
K2 mode E 12F FD

                327 FE

                425 FD

                527 FD

                52V FD

                52D FD

                52E FD

                52F FD
BB (13F FD

                53F FD

                73 e FB
K4 "14F FD

                54F FD

                74D FE
K5 del 357 FE

                757 FE

                75E FE
K6 - 367 FE

                767 FE

                76B EF
K7 Edit 377 FE

                777 FE

                77B FE
K8 + 18F FD

                58F FD

                68F FB
K9 - 19F FD

                59F FD

                69F F7
K10 Up ZA7 FE

                7A7 FE

                7AE F7
K11, 1BF FD

                5BF F5
K12 * 1CF FD

                5CF ED
K13 / 1DF FD

                5DF FD

                7D7 EF
K14 Down 3EF FE

                7E7 FE

                7EE EF
K15 - 3F7 FE

                7F7 FE

                7FE FB

 In conclusion it is you File Type a few words about the 
changes in the scheme, which may come to some users taste.

 For example, you can disable the output 20 of ROM
delay element D3.2, and more
17-th key shape on it logical "0" or "1" and the ROM "flash" so
that when "0" additional keys perform some functions, while "1" 
- others. Thus it will provide 32 additional teams, though in 
this case will not be able to get the sequence

keystrokes, but this restriction
You can avoid installing the ROM more
volume.


But actually the scheme described above
devaysa.

 D1.1 D1.2 D1.3 D3.1

      3 April 1910
Jan. 1 o 5 1 o August 1 o 1> CLK Q0 3 A
February 6 February 9 EN Q1 4 B

                                 Q2 5 C

  R1 R2 C1 7 RST Q3 6 D

                 15nF
 20K 100K M

  D1.4 +5 V D3.2

Jan. 12 O 11 E R3 9> CLK Q0 11
13 20K 10 EN Q1 1912

                                 Q2 1913

                         15 RST Q3 1914
 1561le5 D1-, D3-1561ie10

    1561le7. E


                                      A

                F


  A E F

 / / D3

   VD1 VD2

         13 X0 DC X 3

         14 X1

         15 X2

         12 X3

          1 X4

          5 X5

          2 X6

          4 X7

                      7,8

          6 ODE
 B 11 V1
 C 10 V2 16
 D 9 V3 +5 V


            D3-1561kp2


                D4 SM

                         VD3 COMPUTER
 G 8 A0 D0 9 I  I

    AL307 470 C2 C3

                10MkF 0.15MkF

                      (4 pcs.)
* VD1-VD7 - KD522

Below is the assembly drawing printed
Boards rassshirennoy keyboard. (Eds: The
We believe such elements rasspolozhenie
not entirely successful, since the connection
track is slightly dlinovaty.)



            VD2

            VD1 C2

            R2

            C1 +

            R1


           D1 (LE5, LA7) <



           D1 (KP2) <



           D1 (IE10) <


            R3


             D4


           573RF2

             (RF5)



           C3


           R6

           R7

           R9

           R8

           R5

           R4


           VD7

           VD6

           VD5

           VD4

           VD3


        R10



       VD8



Good luck in the assembly and pleasant to work
with this product






Other articles:

Events - On completion of the first part of a virtual musical party The Compo.

Softinka - On operating systems for Spectrum ChAOS and ZXVGS.

Inferno - The authors of the magazine.

Pentagon - Instructions on how to activate unused (zero), the banks ROM in your computer Pentagon.

Pentagon - Instructions for remaking the Pentagon-128 to exit at Reset'u in the 0-th bank ROM 27512.

Gameland - Black Raven Passage of game: Unknown shipment. Disk 1.

Gameland - Black Raven Passage of game: Unknown shipment. Disk 2.

Softinka - Description of the GUI for disk-TR-DOS - ChAOS.

Inferno - On the shell.

Softinka - Editor of two screen graphics DouBleScreen Editor v0.4.

Softinka - Operating system ZXVGS. Composition versions software.

Inferno - Introduction by the editors.

Iron - The results of the development of coders RGB - PAL / NTSC, at the end of 2002.

Gameland - On the game King's Bounty 3, Black Raven: Unknown shipment.

Others - On the survey.

For Coderz - Macros for assembler Alasm v4.4x.

Mathematics - Mandelbrot fractal.

Softinka - Music Editor Pro Tracker v3.71. Features of the program.

Softinka - Format RAR 2.x. Technical information.

Others - Registered users ZXVGS and CPM22QED.

Softinka - File Types defined in the OS ZXVGS.

Softinka - The functions of the operating system ZXVGS.

Softinka - The appearance of the operating system ZXVGS.

Softinka - IDEDOS - access to hard disks in OS ZXVGS.

Softinka - The description of the operating system ZXVGS.

Softinka - MEMDISK - file system for storing files in memory.

Softinka - OS Releases ZXVGS and their differences.

Softinka - Resident System Extensions (RSX) in ZXVGS.

Softinka - Version of the new operating system for Spectrum ZXVGS.

Iron - Advanced Keyboard sinclair-compatible personal computers.

For Coderz - An algorithm for finding the integer part of square root.

Events - Nominees virtual musical party The Compo.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:

В этот день...   21 November