Browse Prior Art Database

IBM PC Coded Character Set Extension Technique

IP.com Disclosure Number: IPCOM000061496D
Original Publication Date: 1986-Aug-01
Included in the Prior Art Database: 2005-Mar-09
Document File: 3 page(s) / 56K

Publishing Venue

IBM

Related People

Forte, RW: AUTHOR [+4]

Abstract

A method is described for extending the PC's coded character set capabilities, in order for applications to be able to share information and coexist harmoniously in multi-tasking/windowing environments, and be able to exchange information with other products. This is done in a non-disruptive manner to minimize migration problems and maximize compatibility with the massive base of existing applications. The PC code set is a unique version of 8-bit ASCII. This character set is sometimes referred to as code page 437. The left and right halves will be referred to as 437-1 and 437-2, respectively. The 94 characters in code points X'21' through X'7E' conform to the US 7-bit ASCII standard (ANSI X 3.4).

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 38% of the total text.

Page 1 of 3

IBM PC Coded Character Set Extension Technique

A method is described for extending the PC's coded character set capabilities, in order for applications to be able to share information and coexist harmoniously in multi-tasking/windowing environments, and be able to exchange information with other products. This is done in a non-disruptive manner to minimize migration problems and maximize compatibility with the massive base of existing applications. The PC code set is a unique version of 8-bit ASCII. This character set is sometimes referred to as code page 437. The left and right halves will be referred to as 437-1 and 437-2, respectively. The 94 characters in code points X'21' through X'7E' conform to the US 7-bit ASCII standard (ANSI X 3.4). Columns 0 and 1 (referred to as the C0 control set) plus X'20' (SPACE) and X'7F' (DELETE) are defined as single-byte control codes (SPACE is considered to be both a graphic and control character). In order to fully use the display font space, these control codes were also assigned "alternate" displayable graphic characters. The high-order 128 code points are unique to the PC. The PC uses all of these for additional graphic characters, whereas the external standards (e.g., ANSI X 3.41, ISO 2022, etc.) reserve columns 8 and 9 for additional single byte controls (the C1 set). This prevents extending the PC code set in a manner which conforms exactly with these external standards. The code extension approach described is modeled after the ISO 2022 standard for code extension techniques, but adapted to facilitate upward compatibility from the current PC base. The figure illustrates the technique. This approach is based on the concept of "half pages" (analogous to the ISO 2022 "G sets"). A half page is a code page of 128 graphic characters, arranged as 8 columns by 16 rows. Each half page is assigned a unique identifier. A minimum of 2 and as many as 4 half pages may be active at a time. These active half pages are referred to as H0 through H4. Half pages are activated by a designation process from the set of available half pages. Two of these active half pages logically occupy the left and right halves of the base 8-bit code table (HL and HR). These are the current half pages. H0 is the primary half page, and is permanently allocated to HL (i.e., H0 is always the current HL, and is non-switchable). The default designation for H0 is the first half of the base PC ASCII character set (437-1). H1, H2, and H3 are the extension half pages. At any given time, one of these will logically occupy the HR space as the current right half of the code table. Individual characters from either of the other active extension pages may be accessed by means of the Single-Shift function (SSn, n = 1,2,3). Alternatively, either of these pages may be invoked as a whole into HR by means of the Lock-Shift-Right function (LSRn, n = 1,2,3), thus becoming the new current HR. By default, H1 is the initial HR, and contains the s...