EP0229724A2 - Apparatus and method for entering information into an information processing system using a keyboard - Google Patents

Apparatus and method for entering information into an information processing system using a keyboard Download PDF

Info

Publication number
EP0229724A2
EP0229724A2 EP87300336A EP87300336A EP0229724A2 EP 0229724 A2 EP0229724 A2 EP 0229724A2 EP 87300336 A EP87300336 A EP 87300336A EP 87300336 A EP87300336 A EP 87300336A EP 0229724 A2 EP0229724 A2 EP 0229724A2
Authority
EP
European Patent Office
Prior art keywords
code
keyboard
code page
entering
character
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
EP87300336A
Other languages
German (de)
French (fr)
Other versions
EP0229724B1 (en
EP0229724A3 (en
Inventor
Gary Michael Beauregard
Kathryn Ann Bohrer
Anne Gregory Leonard
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of EP0229724A2 publication Critical patent/EP0229724A2/en
Publication of EP0229724A3 publication Critical patent/EP0229724A3/en
Application granted granted Critical
Publication of EP0229724B1 publication Critical patent/EP0229724B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M11/00Coding in connection with keyboards or like devices, i.e. coding of the position of operated keys
    • H03M11/02Details
    • H03M11/04Coding of multifunction keys
    • H03M11/14Coding of multifunction keys by using additional keys, e.g. shift keys, which determine the function performed by the multifunction key
    • H03M11/16Coding of multifunction keys by using additional keys, e.g. shift keys, which determine the function performed by the multifunction key wherein the shift keys are operated after the operation of the multifunction keys
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0238Programmable keyboards

Definitions

  • This invention relates in general to arrangements for entering information into an information processing system using a keyboard.
  • the prior art describes various arrangements for entering information into an information processing system for storage, display, and printing of that information.
  • a character of information is represented by an 8-bit byte, permitting 256 different permutations of bits.
  • Each different permutation of bits can represent one information character or symbol or a control code.
  • EBCDIC Extended Binary Coded Decimal Interchange Code
  • ASCII American Network Standard Code for Information Interchange
  • keyboards are normally provided with about 49 or 50 keys for entering alphanumeric characters, punctuation marks, and some special symbols.
  • Other control keys are generally also provided, such as the "shift” key, the "tab” key, etc.
  • a bank of 10 function keys may also be provided and a conventional 10 key keypad may also be provided in which some keys have a dual function assigned, such as cursor movement keys, or "page-up” and “page-down” keys.
  • Most keyboards also include at least the standard "shift” key, which allows alpha character keys to be used for generating signals for both lower and upper case characters and allows signals for two separate symbols to be generated by some of the symbol keys. This provides for the generation of signals relating to two sets of alphanumeric characters and symbols.
  • an "alternate” key and a “control” key are also provided, each of which can be used like the shift key to generating signals relating to a third and fourth set of alphanumeric characters and symbols respectively.
  • Each of the keys on the keyboard is assigned a key position number, which again can be represented by an 8-bit byte.
  • a total of about 196 separate characters and symbols can be entered by the keyboard into an information processing system, with the remaining keys being used for generating control code signals and various other functions.
  • engraved keyboard' or home keyboard is used in the art to represent a set of characters and symbols that are available to the operator using a particular keyboard.
  • the designer of the system has established two tables in memory each including several code pages.
  • One table called the keyboard translate table, maps key positions on the keyboard and keyboard state (e.g. shift, Alt., etc) to ASCII (or EBCDIC) code points.
  • the other table called the display symbol table, maps each code point to a displayable symbol or control signal.
  • algorithms may be used instead of tables to accomplish the mapping function.
  • the object of the present invention is to provide an improved apparatus and method for entering information into an information system by means of a conventional keyboard which tends to avoid the above described problems that exist in the prior art information systems.
  • the present invention relates to apparatus for entering information comprising a sequence of predetermined characters into an information processing system by means of a keyboard having a plurality of keys, selected ones of which have a plurality of operating states.
  • the apparatus is of the type which comprises means for entering into the system code point designation signals each representing a selected character in response to operating a corresponding key and code page designation signals each representing a keyboard operating state.
  • the apparatus is characterised in that the means for entering comprises means for entering only a code point designation signal when the associated character is in the same code page as the previous character in said sequence, and means for entering both a code page designation signal and a code point designation signal when the code page of the previous character in the sequence is different.
  • the present invention also relates to a method of entering information into an information processing system utilising apparatus as above.
  • FIG. 1 illustrates an information processing system with which the present invention is concerned.
  • the processing system includes a keyboard 12, a terminal mode processor 11, a keyboard translate table 10, a display symbol table 16 and a display unit 14.
  • the processing system also includes an application system 17 which controls the operation of the processing system.
  • the keyboard 12 includes a number of alphanumeric and symbol keys and four keyboard operating state control keys.
  • the state control keys control in which of four operating states the keyboard operates so that each key can be used to enter four different characters or symbols into the processing system.
  • Information for processing by the information processing system is entered into the system character by character in succession by selecting, for each successive character to be entered, the corresponding alphanumeric or symbol key and the control key corresponding to the required operating state of the keyboard.
  • a signal is transmitted via the processor 11 to the keyboard translate table 10.
  • This table is illustrated in greater detail in Figure 2 and comprises four code pages Y1, Y2, Y3 and Y4 corresponding respectively to the four possible operating states of the keyboard.
  • code page Y there are a plurality of code points Z, each corresponding to a respective one of the alphanumeric and symbol keys X on the keyboard. Therefore, for each key X, there is a corresponding code point Z in each of the code pages Y.
  • Each code point Z will produce an output signal when it receives an input signal from the processor 11 corresponding to the associated keyboard character key X and the respective code page Y.
  • the input signal to the keyboard translate table 10 from the processor 11 corresponding to the operation of each key X on the keyboard 12 includes a state signal indicating by its value which state control key has been operated together with the key X. Depending on the value of this state signal so one of the four code pages Y is selected to produce an output signal corresponding to the input signal.
  • the code page Y corresponding to the value of the state signal in the input signal is selected and the code point Z corresponding to the rest of the input signal is used to produce the output signal.
  • the display symbol table 16 comprises a plurality of code pages P0, P1... each corresponding to a different set of symbols. Included in the signal received by the table 16 from the processor 11 is a symbol set select signal which determines which one of code pages P is to be used for supplying an output signal to the display unit 14. In each code page P there are a plurality of code points each corresponding to a respective one of the alphanumeric and symbol keys X in the keyboard 12. Therefore, for each key X there is a corresponding code point Z′ on each of the code pages P. Each code point Z′ will produce an output signal when it receives an input signal from the processor 11. Each output signal from the table 16 is supplied to the display 14 and results in the display of a character or symbol corresponding to the key X which has been operated, the operating state of the keyboard and the symbol set which has been selected.
  • the display symbol table 16 is divided into separate code pages designated as P0, P1, P2 etc. Each code page may be conceived as a non-overlapping range of the continuum of the display symbol table. Code points x00-x1F in all code pages relate to non-displayable pseudo standard control codes 0-31. Code points x20-xFF in code page P0 relate to display symbols 32-255. The same code points in code page P1 relate to display symbols 256-479 and in code page P2 relate to display symbols 480-713. Some positions in the display symbol table are undefined by the system and are thus available for user definition, but the codes for all symbols are accessed in the same manner.
  • code page information and code point information supplied from the keyboard translation table 10 is used to find the correct symbol in the display symbol table 16 for display on the unit 14.
  • the terminal mode processor 11 maintains a keyboard mapping table which maps the operation of a key to a specific character, mode-processor defined function, or string of characters.
  • Keystroke values can be single keystrokes or a keystroke plus accompanying depression of the shift, control, or alternate keys. All or part of this mapping table can be modified by data passed in the data signals.
  • the terminal mode processor 11 supplies a first set of data signals to the keyboard translate table 10 in response to input signals received from the keyboard 12.
  • the processor also supplies a second set of data signals to the display symbol table 16 and a third set of data signals to the application system 17, both in response to input signals received from the keyboard translate table 10.
  • Each of these data signals normally contains code page designation data and code point designation data.
  • the code page designation is omitted from the data signals in certain circumstances.
  • the active code page (Y1 or P0, for example)
  • the data signal includes code page data representing another code page.
  • the code point designation data is contained in the data signal and all the input signals are supplied to the active code page.
  • the corresponding code point data in included in the output signal. If it then becomes necessary to use a different code page Y by using a different control key on the keyboard to result in the generation of a different set of signals upon operation of each keyboard key, or to use a different code page P because a different set of symbols is to be used, then it is necessary to include a code page designation signal in the data signal.
  • the data signal to the keyboard translate table 10 will then include code page designation data in order to change the code page Y to be used with the code point designation data, or the data signal to the display symbol table 16 will then include code page designation data in order to change the code page P top be used with the code point designation data.
  • code page designation data it is necessary to include code page designation data with every code point designation data unless the code point designation data is to be associated with the active code page.
  • code page designation data representing a first code page is included in an initial data signal but omitted from subsequent data signals and all subsequently transmitted code point designation data is associated with the first code page.
  • code page designation data representing a second code page is included in one data signal. From this instant all subsequently transmitted code point designation data is associated with the second code page.
  • Each data signal contains a 2-byte header. This header is followed immediately by a set of key position signals of variable length.
  • Each key position signal consists of three distinct signals in its bytes, dependent on the type of key assignment. All key position signals must specify a key position, the applicable shift state, and the type of key assignment.
  • the method of the present invention is directed specifically to character remapping.
  • the signal requirements for each character signal are as follows: .
  • Single character signal .
  • Key position . Shift state .
  • Code page .
  • Code point .
  • the signal types may be freely mixed, but the number of signals must match the number of key positions.
  • Fig. 3b expands on the key position maps field of Fig. 3a.
  • the information processing system described above includes a keyboard translate table which may or may not contain code points from different code pages, depending on the language of the system keyboard. Therefore, no application action is necessary to use the arrangement of multiple concurrent code pages on a keyboard.
  • an application wishes to access from the keyboard a greater variety of characters and symbols than anticipated by the system designer of a keyboard layout, it may freely do so by altering the keyboard translate map in the manner described above.
  • the user of a German keyboard layout would be using code points from different code pages without having to make the above described alterations because the German keyboard layout already has such mixed code pages.
  • the German user might want to modify the key­board to include other special characters contained in the display symbol table.
  • the system described allows the user to add these characters or symbols without regard to remaining within the bounds of a single code page.
  • the keyboard translation table 10 is initially set up using data from the application system 17. Character data is then entered into the system, as illustrated in Fig. 1.
  • the keyboard 12 is connected to the terminal mode processor 11.
  • the position code is generated and transferred to the processor 11.
  • the processor 11 functions to translate the key position code to a code page and code point by reading out the entry in the keyboard translate table 10, to which the key position code may have been assigned during the first phase of the operation discussed in connection with Fig. 1.
  • the data is then sent to the application and display device 14 as described below.
  • the datastream sent by the processor 11 must include information to identify the code page in table 10 and the character set or code page in table 16 that should be used in interpreting the byte of data represented in the code point.
  • the first technique for notifying the application of the code page involves the assumption that the default code page P0 or the active code page set by the application is to be used until further notification is received of a code page single shift (SS) code.
  • the application assumes that, as long as the characters are in an active code page, only 8-bit bytes are sent.
  • the mode processor sends both a single shift code and the 8-bit byte or code point.
  • the code point is then interpreted by the application according to the new code page designated by the single shift code. Subsequent characters are interpreted based on the active code page.
  • the single shift codes are nonlocking, in that they apply only to the immediately following subsequent character.
  • the terminal mode processor 11 may also send display symbols to the display device 14 in accordance with the data obtained from the keyboard translation table.
  • the code point is translated according to its defined code page into a 10-bit display symbol.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

The present invention relates to apparatus for entering information comprising a sequence of predetermined characters into an information processing system by means of a keyboard (12) having a plurality of keys, selected ones of which have a plurality of operating states. The apparatus is of the type which comprises means for entering into the system code point designation signals each representing a selected character in response to operating a corresponding key and code page designation signals each representing a keyboard operating state,
According to the invention the apparatus is characterised in that the means for entering comprises means (10, 11, 16, 17) for entering only a code point designation signal when the associated character is in the same code page as the previous character in said sequence, and means (10, 11, 16, 17) for entering both a code page designation signal and a code point designation signal when the code page of the previous character in said sequence is different.
The present invention also relates to a method of entering information into an information processing system utilising apparatus as above.

Description

  • This invention relates in general to arrangements for entering information into an information processing system using a keyboard.
  • The prior art describes various arrangements for entering information into an information processing system for storage, display, and printing of that information. In most information processing systems, a character of information is represented by an 8-bit byte, permitting 256 different permutations of bits. Each different permutation of bits can represent one information character or symbol or a control code.
  • Two separate systems have evolved in the art which assign specific bit permutations to a character. The first system is referred to as EBCDIC, which stands for Extended Binary Coded Decimal Interchange Code, and the second system is referred to as ASCII, which stands for American Network Standard Code for Information Interchange. The EBCDIC system is used primarily by large information processing systems, while the ASCII system is used primarily by small text processing systems and personal computer type applications.
  • Conventional keyboards are normally provided with about 49 or 50 keys for entering alphanumeric characters, punctuation marks, and some special symbols. Other control keys are generally also provided, such as the "shift" key, the "tab" key, etc. On some keyboards employed with personal computers, a bank of 10 function keys may also be provided and a conventional 10 key keypad may also be provided in which some keys have a dual function assigned, such as cursor movement keys, or "page-up" and "page-down" keys.
  • Most keyboards also include at least the standard "shift" key, which allows alpha character keys to be used for generating signals for both lower and upper case characters and allows signals for two separate symbols to be generated by some of the symbol keys. This provides for the generation of signals relating to two sets of alphanumeric characters and symbols. In some keyboard arrangements, an "alternate" key and a "control" key are also provided, each of which can be used like the shift key to generating signals relating to a third and fourth set of alphanumeric characters and symbols respectively.
  • Each of the keys on the keyboard is assigned a key position number, which again can be represented by an 8-bit byte. In systems which employ three separate control keys to extend the number of signals generated by each key to relate to a total of four possible characters or symbols, a total of about 196 separate characters and symbols can be entered by the keyboard into an information processing system, with the remaining keys being used for generating control code signals and various other functions.
  • The term "engraved keyboard' or home keyboard is used in the art to represent a set of characters and symbols that are available to the operator using a particular keyboard. In practice the designer of the system has established two tables in memory each including several code pages. One table, called the keyboard translate table, maps key positions on the keyboard and keyboard state (e.g. shift, Alt., etc) to ASCII (or EBCDIC) code points. The other table, called the display symbol table, maps each code point to a displayable symbol or control signal. In some systems, algorithms may be used instead of tables to accomplish the mapping function.
  • Such arrangements for entering information into an information processing system are generally adequate for a majority of the applications encountered by one user. However, the arrangements are not satisfactory if the requirements of all users are taken into consideration. Applications (e.g. foreign language, scientific etc.) may need more than the home keyboard set of characters and symbols, pushing the number of symbols required beyond the limits of a single code page of a table.
  • Systems such as the IBM DisplayWrite dedicated word processing system, which was marketed throughout the world for use in various applications and languages, used the "Alternate Keyboards" method to satisfy this need. In this approach a different keyboard layout or software keyboard could be substituted for the physical layout of the engraved keyboard. The new keyboard layout might be merely a rearrangement of code points from the same code page or it might use an entirely different code page which had the characters needed by the operator. However any of the new keyboard layouts, whether obtained from the base code page or a new code page, had to be from one single code page. Symbols that did not appear on the same code page could not appear on the same keyboard layout. Although the Alternate Keyboards approach was an improvement, since it allowed a different set of graphical symbols to be defined for the code points, it still limited the user to a single set of (256) code points and their predefined graphical representations. This restriction has resulted in a proliferation of code pages, as system designers attempted to group together meaningful sets of symbols for specialised applications and users.
  • Furthermore, since different code pages were being used to enter different information using the same key, the system had to keep track of what code page was enforced for any given sequence of operations of the keys, and output devices such as displays and printers also had to be aware of what code page was active for a particular information stream.
  • The storage of a large number of code pages in memory was also a problem since a large number of users could use the space in memory occupied by these pages in a more productive manner.
  • In addition, if the display device and printer were expected to reproduce the symbols for each set of characters and each code page included in an information stream, the functional equivalence of a code page would also have to be stored for each of these output devices.
    The object of the present invention is to provide an improved apparatus and method for entering information into an information system by means of a conventional keyboard which tends to avoid the above described problems that exist in the prior art information systems.
  • The present invention relates to apparatus for entering information comprising a sequence of predetermined characters into an information processing system by means of a keyboard having a plurality of keys, selected ones of which have a plurality of operating states. The apparatus is of the type which comprises means for entering into the system code point designation signals each representing a selected character in response to operating a corresponding key and code page designation signals each representing a keyboard operating state.
  • According to the invention the apparatus is characterised in that the means for entering comprises means for entering only a code point designation signal when the associated character is in the same code page as the previous character in said sequence, and means for entering both a code page designation signal and a code point designation signal when the code page of the previous character in the sequence is different.
  • The present invention also relates to a method of entering information into an information processing system utilising apparatus as above.
  • In order that the invention may be more readily understood an embodiment will now be described with reference to the accompanying drawings, in which:
    • Fig. 1 illustrates an information processing system incorporating apparatus in accordance with the present invention,
    • Fig. 2 illustrates one of the code tables in the system of Figure 1, and
    • Figure 3, divided into Figures 3a, 3b, 3c and 3d, illustrates the structure of the data signals used in the system of Figure 1.
  • Figure 1 illustrates an information processing system with which the present invention is concerned. The processing system includes a keyboard 12, a terminal mode processor 11, a keyboard translate table 10, a display symbol table 16 and a display unit 14. The processing system also includes an application system 17 which controls the operation of the processing system.
  • The keyboard 12 includes a number of alphanumeric and symbol keys and four keyboard operating state control keys. The state control keys control in which of four operating states the keyboard operates so that each key can be used to enter four different characters or symbols into the processing system.
  • Information for processing by the information processing system is entered into the system character by character in succession by selecting, for each successive character to be entered, the corresponding alphanumeric or symbol key and the control key corresponding to the required operating state of the keyboard. Upon operation of the selected keys, a signal is transmitted via the processor 11 to the keyboard translate table 10. This table is illustrated in greater detail in Figure 2 and comprises four code pages Y1, Y2, Y3 and Y4 corresponding respectively to the four possible operating states of the keyboard. In each code page Y there are a plurality of code points Z, each corresponding to a respective one of the alphanumeric and symbol keys X on the keyboard. Therefore, for each key X, there is a corresponding code point Z in each of the code pages Y. Each code point Z will produce an output signal when it receives an input signal from the processor 11 corresponding to the associated keyboard character key X and the respective code page Y.
  • The input signal to the keyboard translate table 10 from the processor 11 corresponding to the operation of each key X on the keyboard 12 includes a state signal indicating by its value which state control key has been operated together with the key X. Depending on the value of this state signal so one of the four code pages Y is selected to produce an output signal corresponding to the input signal. Upon receipt by the keyboard translate table 10 of an input signal from the processor 11, the code page Y corresponding to the value of the state signal in the input signal is selected and the code point Z corresponding to the rest of the input signal is used to produce the output signal.
  • This output signal is supplied to the processor 11 resulting in further signals being supplied to the application system 17 and to the display symbol table 16. The display symbol table 16 comprises a plurality of code pages P0, P1... each corresponding to a different set of symbols. Included in the signal received by the table 16 from the processor 11 is a symbol set select signal which determines which one of code pages P is to be used for supplying an output signal to the display unit 14. In each code page P there are a plurality of code points each corresponding to a respective one of the alphanumeric and symbol keys X in the keyboard 12. Therefore, for each key X there is a corresponding code point Z′ on each of the code pages P. Each code point Z′ will produce an output signal when it receives an input signal from the processor 11. Each output signal from the table 16 is supplied to the display 14 and results in the display of a character or symbol corresponding to the key X which has been operated, the operating state of the keyboard and the symbol set which has been selected.
  • The display symbol table 16 is divided into separate code pages designated as P0, P1, P2 etc. Each code page may be conceived as a non-overlapping range of the continuum of the display symbol table. Code points x00-x1F in all code pages relate to non-displayable pseudo standard control codes 0-31. Code points x20-xFF in code page P0 relate to display symbols 32-255. The same code points in code page P1 relate to display symbols 256-479 and in code page P2 relate to display symbols 480-713. Some positions in the display symbol table are undefined by the system and are thus available for user definition, but the codes for all symbols are accessed in the same manner.
  • The combination of code page information and code point information supplied from the keyboard translation table 10 is used to find the correct symbol in the display symbol table 16 for display on the unit 14.
  • The terminal mode processor 11 maintains a keyboard mapping table which maps the operation of a key to a specific character, mode-processor defined function, or string of characters. Keystroke values can be single keystrokes or a keystroke plus accompanying depression of the shift, control, or alternate keys. All or part of this mapping table can be modified by data passed in the data signals.
  • The terminal mode processor 11 supplies a first set of data signals to the keyboard translate table 10 in response to input signals received from the keyboard 12. The processor also supplies a second set of data signals to the display symbol table 16 and a third set of data signals to the application system 17, both in response to input signals received from the keyboard translate table 10.
  • Each of these data signals normally contains code page designation data and code point designation data. In accordance with the invention the code page designation is omitted from the data signals in certain circumstances.
  • In a first arrangement it is assumed that one code page, termed the active code page, (Y1 or P0, for example) is to be used unless the data signal includes code page data representing another code page. In these circumstances only the code point designation data is contained in the data signal and all the input signals are supplied to the active code page. The corresponding code point data in included in the output signal. If it then becomes necessary to use a different code page Y by using a different control key on the keyboard to result in the generation of a different set of signals upon operation of each keyboard key, or to use a different code page P because a different set of symbols is to be used, then it is necessary to include a code page designation signal in the data signal.
  • The data signal to the keyboard translate table 10 will then include code page designation data in order to change the code page Y to be used with the code point designation data, or the data signal to the display symbol table 16 will then include code page designation data in order to change the code page P top be used with the code point designation data. In this arrangement it is necessary to include code page designation data with every code point designation data unless the code point designation data is to be associated with the active code page.
  • In another arrangement code page designation data representing a first code page is included in an initial data signal but omitted from subsequent data signals and all subsequently transmitted code point designation data is associated with the first code page. When the code page with which the code point designation data is to be associated is to be changed, code page designation data representing a second code page is included in one data signal. From this instant all subsequently transmitted code point designation data is associated with the second code page.
  • With these arrangements the user can access a character or symbol from another code page without disrupting the application output.
  • The structure of the data signals that are employed in the system described above is shown in Fig. 3.
  • Each data signal contains a 2-byte header. This header is followed immediately by a set of key position signals of variable length.
  • Each key position signal consists of three distinct signals in its bytes, dependent on the type of key assignment. All key position signals must specify a key position, the applicable shift state, and the type of key assignment.
  • Three types of key assignments may be included in a signal. The method of the present invention is directed specifically to character remapping. The signal requirements for each character signal are as follows:

    . Single character signal:
    . Key position
    . Shift state
    . Code page
    . Code point.
  • The signal types may be freely mixed, but the number of signals must match the number of key positions.
  • The fields in the header are illustrated in Figure 3a and are defined as follows:

    . Number of key positions
    This value is the number of key positions to be mapped.

    . Key position maps
    This field contains the new mappings of key position to symbol or function.
  • Fig. 3b expands on the key position maps field of Fig. 3a.
  • The fields shown in Fig. 3b are defined as follows:

    . Key position

    The key position field contains the keyboard position to remap. Each key on the keyboard has a numeric position code that is used for this field.

    . Shift states

    Bit 0 (caps lock) =
    0 - Caps lock has no effect.
    1 - Shifted state in effect when pressed.

    . Bits 1-2

    The binary value of bits 1-2 indicates whether the new key assignment applies to the key in the base, shift, control, or alternate state.

    . Flags
    The binary value of bits 4-7 indicates the type of key assignment.

    0000 = A character is assigned to this key position. Bytes 3 and 4 contain a character set and code point for this field.
  • When the flags field = 0000 (character), the key assignment struc­ture shown in Fig. 3c is defined as follows:

    Character set - The PCASCII character set from which the display symbol is taken.
    Code point - The code point within the specified PCASCII character set.
  • The information processing system described above includes a keyboard translate table which may or may not contain code points from different code pages, depending on the language of the system keyboard. Therefore, no application action is necessary to use the arrangement of multiple concurrent code pages on a keyboard. However if an application wishes to access from the keyboard a greater variety of characters and symbols than anticipated by the system designer of a keyboard layout, it may freely do so by altering the keyboard translate map in the manner described above. For example, the user of a German keyboard layout would be using code points from different code pages without having to make the above described alterations because the German keyboard layout already has such mixed code pages. However the German user might want to modify the key­board to include other special characters contained in the display symbol table. The system described allows the user to add these characters or symbols without regard to remaining within the bounds of a single code page.
  • In order to utilise the information processing system described above, the keyboard translation table 10 is initially set up using data from the application system 17. Character data is then entered into the system, as illustrated in Fig. 1.
  • As shown in Fig. 1, the keyboard 12 is connected to the terminal mode processor 11. When a key is struck, the position code is generated and transferred to the processor 11. The processor 11 functions to translate the key position code to a code page and code point by reading out the entry in the keyboard translate table 10, to which the key position code may have been assigned during the first phase of the operation discussed in connection with Fig. 1.
  • The data is then sent to the application and display device 14 as described below.
  • The datastream sent by the processor 11 must include information to identify the code page in table 10 and the character set or code page in table 16 that should be used in interpreting the byte of data represented in the code point.
  • Two slightly different arrangements are described for identifying the code page. The first technique for notifying the application of the code page involves the assumption that the default code page P0 or the active code page set by the application is to be used until further notification is received of a code page single shift (SS) code. The application assumes that, as long as the characters are in an active code page, only 8-bit bytes are sent. When a character that is not in the active code page is keyed, the mode processor sends both a single shift code and the 8-bit byte or code point. The code point is then interpreted by the application according to the new code page designated by the single shift code. Subsequent characters are interpreted based on the active code page. Thus, the single shift codes are nonlocking, in that they apply only to the immediately following subsequent character.
  • In the second technique, an active character set is assumed, as before. If a character in the datastream comes from a different code page, a page notifier control sequence is inserted which changes the active keyboard code page. This new code page stays active until a code point from another code page is entered via the keyboard. Thus, if only one character in a sequence of characters is in a different code page, two control sequences must be sent by the datastream; one prior to the character and one after.
  • The terminal mode processor 11 may also send display symbols to the display device 14 in accordance with the data obtained from the keyboard translation table. The code point is translated according to its defined code page into a 10-bit display symbol.
  • The method of operation described, in effect, logically disconnects the keyboard 12 from the output datastream which provides considerable advantages to the operator in terms of structuring keyboards that are most advantageously employed for his particular application.
  • Considerable storage is also saved, in that there is no duplication of characters which were common to several code pages in systems employed by the prior art. Also, in certain applications requiring keyboard or character set changes, the amount of data carried by a datastream is reduced in accordance with the present method.

Claims (8)

1. Apparatus for entering information comprising a sequence of predetermined characters into an information processing system by means of a keyboard (12) having a plurality of keys, selected ones of which have a plurality of operating states, comprising means for entering into said system code point designation signals each representing a selected character in response to operating a corresponding key and code page designation signals each representing a keyboard operating state,
characterised in that said means for entering comprises
means (10, 11, 16, 17) for entering only a code point designation signal when the associated character is in the same code page as the previous character in said sequence, and
means (10, 11, 16, 17) for entering both a code page designation signal and a code point designation signal when the code page of said previous character in said sequence is different.
2. Apparatus as claimed in claim 1 characterised in that it comprises means for establishing in said information processing system a keyboard translation table (10) having an entry for each key in each of said operating states, each said entry including a code point designation signal and a code page designation signal by which said code point is interpreted by said system.
3. Apparatus as claimed in claim 2 characterised in that it comprises means for generating a unique keyboard position signal in response to operating each key and means (11) for supplying said position signal to said translation table (10) to cause said designation signals to be read out to said system.
4. Apparatus as claimed in claim 3 characterised in that it comprises means (11) for designating an active code page prior to entry of information into said system, and means for entering both designation signals into said system whenever the character being entered is not associated with the active code page.
5. A method for entering information comprising a sequence of predetermined characters into an information processing system by means of a keyboard (12) having a plurality of keys, selected ones of which have a plurality of operating states, comprising entering into said system code point designation signals each representing a selected character in response to operating a corresponding key and code page designation signals each representing a keyboard operating state,
characterised in that
only a code point designation signal is entered when the associated character is in the same code page as the previous character in said sequence, and
both a code page designation signal and a code point designation signal are entered when the code page of said previous character in said sequence is different.
6. A method as claimed in claim 5 characterised in that it comprises establishing in said information processing system a keyboard translation table (10) having an entry for each key in each of said operating states, each said entry including a code point designation signal and a code page designation signal by which said code point is interpreted by said system.
7. A method as claimed in claim 6 characterised in that it comprises generating a unique keyboard position signal in response to operating each key and supplying said position signal to said translation table to cause said designation signals to be read out to said system.
8. A method as claimed in claim 7 characterised in that it comprises designating an active code page prior to entry of information into said system, and entering both designation signals into said system whenever the character being entered is not associated with the active code page.
EP87300336A 1986-01-16 1987-01-15 Apparatus and method for entering information into an information processing system using a keyboard Expired - Lifetime EP0229724B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US81944286A 1986-01-16 1986-01-16
US819442 1986-01-16

Publications (3)

Publication Number Publication Date
EP0229724A2 true EP0229724A2 (en) 1987-07-22
EP0229724A3 EP0229724A3 (en) 1988-11-09
EP0229724B1 EP0229724B1 (en) 1991-11-06

Family

ID=25228174

Family Applications (1)

Application Number Title Priority Date Filing Date
EP87300336A Expired - Lifetime EP0229724B1 (en) 1986-01-16 1987-01-15 Apparatus and method for entering information into an information processing system using a keyboard

Country Status (4)

Country Link
EP (1) EP0229724B1 (en)
JP (1) JPS62165228A (en)
BR (1) BR8700043A (en)
DE (1) DE3774283D1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0358201A2 (en) * 1988-09-09 1990-03-14 Siemens Aktiengesellschaft Method for representing accentuated characters

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1980001725A1 (en) * 1979-02-15 1980-08-21 Telxon Corp Portable data entry apparatus including plural selectable functional configurations
US4291385A (en) * 1973-12-17 1981-09-22 Hewlett-Packard Company Calculator having merged key codes
JPS58195926A (en) * 1982-05-11 1983-11-15 Fujitsu Ltd Keyboard encoder

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60181912A (en) * 1984-02-29 1985-09-17 Usac Electronics Ind Co Ltd Key code sending-out system in plural stage shift keyboard

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4291385A (en) * 1973-12-17 1981-09-22 Hewlett-Packard Company Calculator having merged key codes
WO1980001725A1 (en) * 1979-02-15 1980-08-21 Telxon Corp Portable data entry apparatus including plural selectable functional configurations
JPS58195926A (en) * 1982-05-11 1983-11-15 Fujitsu Ltd Keyboard encoder

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IBM TDB, Volume 28, No. 8, Jan. 1986, page 3601, GENERIC PERSONAL COMPUTER CHARACTER SET KEYBOARD TRANMSACTIONS *
PATENT ABSTRACTS OF JAPAN, vol. 8, no. 45 (P-257)[1482], 28th February 1984; & JP-A-58 195 926 (FUJITSU K.K.) 15-11-1983 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0358201A2 (en) * 1988-09-09 1990-03-14 Siemens Aktiengesellschaft Method for representing accentuated characters
EP0358201A3 (en) * 1988-09-09 1992-07-15 Siemens Aktiengesellschaft Method for representing accentuated characters

Also Published As

Publication number Publication date
EP0229724B1 (en) 1991-11-06
DE3774283D1 (en) 1991-12-12
JPS62165228A (en) 1987-07-21
BR8700043A (en) 1987-12-01
EP0229724A3 (en) 1988-11-09

Similar Documents

Publication Publication Date Title
US6340937B1 (en) System and method for mapping multiple identical consecutive keystrokes to replacement characters
US5784071A (en) Context-based code convertor
US4124843A (en) Multi-lingual input keyboard and display
US4498143A (en) Method of and apparatus for forming ideograms
US5128672A (en) Dynamic predictive keyboard
US7095403B2 (en) User interface of a keypad entry system for character input
US5793381A (en) Unicode converter
US5682158A (en) Code converter with truncation processing
US7251667B2 (en) Unicode input method editor
CA1162318A (en) Character set expansion
JP2018511840A (en) Password generation method and device
US4727511A (en) Multitype characters processing method and terminal device
AU2489200A (en) Text input system for ideographic and nonideographic languages
US20020069049A1 (en) Dynamic determination of language-specific data output
KR100361621B1 (en) System and method for receiving and displaying Korean
JP4451908B2 (en) Unicode converter
EP0229724B1 (en) Apparatus and method for entering information into an information processing system using a keyboard
WO1998003905A1 (en) Multilingual character input/output device
KR20030043532A (en) Alphabet input device and method in a small apparatus
KR900006665B1 (en) Crt display apparatus
US5600314A (en) Data input device and correlative encoding technique
US11106287B2 (en) Stratified keyboard
Hsueh et al. Computer Processing of Chinese Documents: A Review of Recent Developments
Tanaka-Ishii et al. Writing system variation and text entry
JPS58221440A (en) Output device of information

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): DE FR GB IT

17P Request for examination filed

Effective date: 19871202

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): DE FR GB IT

17Q First examination report despatched

Effective date: 19900427

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB IT

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 19911206

Year of fee payment: 6

REF Corresponds to:

Ref document number: 3774283

Country of ref document: DE

Date of ref document: 19911212

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 19911218

Year of fee payment: 6

ITF It: translation for a ep patent filed

Owner name: IBM - DR. ARRABITO MICHELANGELO

ET Fr: translation filed
PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 19920121

Year of fee payment: 6

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Effective date: 19930115

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 19930115

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Effective date: 19930930

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Effective date: 19931001

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.

Effective date: 20050115