PERSONAL COMPUTER ATTACHMENT TO HOST SYSTEM DISPLAY STATIONS

Abstract: A personal computer attachment for a display station that communicates with a host computer (48) and includes a CRT (38), a regeneration buffer (42), a keyboard adapter (46), a feature bus (44) and a keyboard (12) attached thereto a personal computer system unit which includes a system bus, a microprocessor, memory, a keyboard adapter and I/O interface connected to the system bus supporting floppy diskette drives (16) and a printer (18). A display adapter (26 or 28) is connected to the I/O interface. An analog input switch (52) is disposed between the buffer (42) and the analog circuits driving the CRT (38) and has a second input from adapter (26 or 28) and is controlled from the keyboard (12) to selectively supply image data from buffer (42) or adapter (26 or 28). An attachment adapter (36) includes an input/output interface (54), a switch control (56), a two-way keyboard adapter (58) and a feature bus adapter (60) and mates with the I/O interface of the personal computer sys­ tem unit via which its components communicate with the system bus of the personal computer system unit. The key­ board (12) is connected to the two-way keyboard adapter (58). The switch control (56) controls analog switch (52). Two-way keyboard adapter (58) is connected to both key­ board adapters. The feature bus adapter (60) is connected to the feature bus (44). This allows keystroke signals from the keyboard (12) to be transmitted by the two-way keyboard adapter (58) via the input/output interface (54) and system bus to the memory in the personal computer system unit for interpretation by the microprocessor and then retransmitted back to the two-way keyboard adapter and then to desig­ nated one of the keyboard adapters in either the display station or the personal computer system unit. The switch control is responsive to a unique keystroke signal to control the analog input switch (52) so that an operator can control the mode of operation between either a host mode or a personal computer mode. Data transfer can be made be­ tween the host computer and the personal computer.

Description: PERSONAL COMPUTER ATTACHMENT TO HOST SYSTEM DISPLAY STATIONS The present invention generally relates to personal computer attachment to display stations of data processing systems of the type having a central host computer and a plurality of display stations each typically having a keyboard and a display, such as a CRT, and depending on the host for processing power. The kind of attachment to which this invention relates allows the display stations to operate with the host, as before, or with the personal computer and, also, allows the transfer of files between the host and the personal computer and the printing of data displayed on the screen of the CRT. Data processing systems are known where a plurality of display systems communicate with a central host computer. These display systems typically include a base unit which acts as a display and supports a keyboard for operation as a keyboard/display terminal that communicates with the host via a controller. The terminal may interface with a plurality of features connected thereto such as a card reader or light pen. The base unit and the features receive transmissions from the controller via a feature bus in the base unit and also transmit to the controller via this feature bus. The base unit also provides priority control in permitting features to respond to a controller poll. Commands are also directly addressable to the base unit and features by the controller. Typical of such systems are the IBM 3270 information display system, the IBM 3274 control unit and the IBM 3278 or 3279 display stations. In such systems, the display stations are used to access data and run programs on the host. Storage of data or printing a hard copy typically are accomplished using bulk storage media or printers associated with the host computer. These may not always be readily accessible or available to a display station operator. Moreover, some data may be sensitive or confidential, and the operator may desire to exercise direct control over the bulk storage media on which the data is stored or the hard copy produced by the printer. Current display stations do not provide this access or flexibility. Recently, small desk top or so-called personal computers have been introduced on the market. These typically include a system unit containing a microprocessor, read only storage (ROS), random access memory (RAM), and various adapters connected to the system unit bus to allow connection of a keyboard, a CRT display, one or more floppy diskette drives, and a printer. A personal computer would provide the display station operator with accessibility to both bulk storage media, in this case a floppy diskette, and a printer, but to simply provide the display station operator with a disassociated personal computer would be a duplication of equipment and no ability to use host files on the personal computer or vice versa. To embed a small processor in the display station in such a way that it forms the control node of that station, as is proposed in IBM Technical Disclosure Bulletin, vol.24, no.7A, December 1981, pages 3533 and 3534,despite the use of the term "attachment" therein, does not solve the problems of a user who already owns a display station without processing power, nor does it permit certain operations,involving both the host and the personal computer to proceed in parallel, as does the proposal of the present invention as will become apparent from the description that follows. It is therefore an object of this invention can be thought to be to provide a personal computer attachment for a display station that will allow the display station operator to operate the display station in either a host mode or a personal computer mode without duplication of equipment in such a way that will allow, at least, transfer of files between the host and the personal computer and vice versa. The present invention provides a personal computer attachment for a display station of the type that communicates with a host computer, the display station having a display unit and a keyboard, the display unit having display means for displaying image data and first buffer means for receiving image data from the host computer and supplying the image data to the display means, the attachment comprising, a personal computer including a system bus, a microprocessor and memory means connected to the system bus, the memory means including second buffer means for supplying image data to a display means; switch means connected to the display means for selectively supplying host image data from the first buffer means in the display unit or personal computer data from the second buffer means in the personal computer; and adapter means connected to the personal computer system bus for communicating with the display unit, the keyboard being attached to the adapter means for selectively inputting data to the host computer or the personal computer, the adapter means including control means responsive to a keyboard input for controlling the switch means. The attachment is made, as disclosed hereinafter, between the feature bus of the base unit of the display station and the system unit of the personal computer. Both the keyboard and the display station can be used in either a host mode or a personal computer mode in response to commands entered on the keyboard by the display station operator. For purposes of providing a specific example of the invention, the following description is directed to the attachment of the IBM Personal Computer to the'IBM 3278 (or 3279) display station. It will be understood by those skilled in the art, however, that the invention may be practiced with other so-called personal computers or sub-units thereof and other display units manufactured by others than the International Business Machines Corporation. The 3278 Personal Computer Attachment Feature (PCAT) provides a method for combining the IBM 3278 Display Station with the IBM Personal Computer. It uses the 3278 display and keyboard and does not require the display or keyboard of the Personal Computer. PCAT allows existing host programs to be run unmodified, and also allows most DOS base PC programs to run unmodified. These two operations are referred to as "Host Mode" and "PC Mode". They can run concurrently in the PCAT with no interference between the programs. An additional option is offered to provide data transfer between Personal Computer and host program. The PCAT uses the existing Personal Computer System Unit. There are no hardware or software modifications required. The feature does, however, add a new adapter card and some new software (called an interrupt handler) to use the 3278 display and keyboard. No host hardware or software modification are necessary to operate the PCAT. The PCAT is designed to maintain the integrity of the host session in the event of a disruption in the Personal Computer operation (caused by program, hardware failure, or power failure). The PCAT consists of three major sub-features. The first is the 3278 PC Attachment Feature and contains the modification to the 3278 to accept the output of one of two PC video adapters; either the monochrome adapter or the colour graphics adapter. The second sub-feature consists of a new adapter for the PC (called the 3278 Adapter) and a group of interconnecting cables. This sub-feature also includes a 5 1/4 inch diskette. On that diskette is an interrupt handler program, some sample application programs for the host computer and the Personal Computer to support file transfer and screen capture, and installation and diagnostic programs. The third sub-feature is a modification to the 3274 microcode which will support data transfer (both file transfer and screen capture). The Personal Computer System Unit consists of a keyboard adapter, an 8088 microprocessor with 40K of ROS and a group of five I/O slots which can have diskette adapters, printer adapters, additional memory, etc. Integral to the system unit but looking like it was attached via the I/O bus is 64K of RAM. The 3278 has some digital logic and a regeneration buffer. The digital logic includes a keyboard adapter and the feature bus. These are used as part of the PCAT feature. This digital logic attaches to a 3274 control unit via an interface commonly referred to as the "DCA" for device control adapter. The eoutput of the digital logic normally goes through some analog circuits to generate an image on the face of the CRT. An additional circuit function (called the analog input switch) is introduced between the digital logic and the analog logic. This allows the analog logic to be driven from either the normal digital logic of the 3278 or from the output of a video adapter plugged into the PC System Unit. The state of this switch is controlled by an external source. In the case of PCAT, this external source is the 3278 Adapter in the PC. The 3278 Adapter is packaged as a PC Adapter Card and plugs into one of the I/O slots and consists of four major sub-functions. The first of these is the PC I/O interface function which allows the 3278 Adapter to meet the interface o#f the I/O slots of the PC. The second sub-function of the 3278 Adapter is the analog input switch control. These circuits (which are controlled by the PC program) will cause the analog input switch in the 3278 to switch states. Thus a PC program has the capability to determine what is displayed on the face of the CRT; either the 3278 host image or the Personal Computer Display Adapter image. Because the analog switch is introduced in the position just described, the 3278 regeneration buffer and its supporting logic operate just as they did before installation of the PCAT feature. The same is true for the regeneration buffer and its supporting logic in the display adapter of the Personal Computer. This allows the host program and the Personal Computer program to continue to generate images and send them to their respective regeneration buffers, thus allowing concurrent operation of both the host program and the Personal Computer program. The third sub-function of the 3278 Adapter is the two-way keyboard adapter. It operates in conjunction with the PC program. An unmodified 3278 keyboard is plugged into the two-way keyboard adapter using the existing 3278 keyboard cable and connector. The two-way keyboard adapter accepts keystroke scan codes from the 3278 keyboard and feeds them to the Personal Computer System Unit memory. The PC program is expected to interrogate these scan codes in memory, alter them (if needed), send them back to the two-way keyboard adapter and direct whether the adapter output is sent to the existing keyboard adapters in the 3278 or Personal Computer. The program that supports this function is called the interrupt handler. The interrupt handler also monitors the 3278 keyboard operation for a unique key sequence which is the way the operator requests the interrupt handler to switch modes. When in the host mode, the CRT image and keystrokes are associated with the host program; when in the PC mode, the CRT image and keystrokes are associated with the PC program. This is a toggle operation; that is, when a key is hit once, it switches from one mode to the other, and when hit again, it switches back. An inherent capability of this design is that a PC program can generate keystrokes to the 3278 or Personal Computer System Unit which are identical to those a human operator could have generated. The fourth sub-function is the feature bus adapter which provides circuits to connect the 3278 adapter to the feature bus of the 3278. The feature bus is normally an internal bus of the 3278 and exists to support such features as light pen, magnetic stripe readers, programmable symbol sets, etc. This feature bus is extended outside the 3278 to the mating portion of the PC adapter to provide a relatively high speed two-way path for sending data from the host to the Personal Computer System Unit and vice versa. The function referred to as "Data Transfer" is divided into two sub-functions; file transfer and screen capture. In order to make use of this feature bus capability, a modification in the microcode of the 3274 is provided. This modification in the microcode will recognise additional 3270 structured fields and direct the data sent from the host to the feature bus rather than to the 3278 regeneration buffer. A program in the Personal Computer can accept that data and act on it immediately or store it on diskette for later use with other PC program. In addition, that program will take data from the diskette and send it via the feature bus and the 3274 to the host. The ability for a PC program to generate 3278 keystrokes enables the function called uploads to be performed. Using the upload function, the operator invokes a keystroke generation program in the PC. This program produces the keystrokes which are sent to the host and appear to be macro-language instructions. These instructions are a bootstrap program which bring in the rest of the file transfer program. This file transfer program is a private exec which is permanently stored and available for use anytime the operator invokes it. It only requires this upload once. The other sub-function is screen capture. The only place within the display sub-system that the screen image resides is in the regeneration buffer of the 3278. Additional microcode is provided in the 3274 to unload that screen image from the regeneration buffer of the 3278 into the 3274 and redirect it out through the feature bus to the PC System Unit. A program in the PC System Unit will write this image to diskette or to the printer adapter giving the capability for local copy. An important integrity aspect of the design is that if the Personal Computer application fails, then the operator can, using the keystroke sequence, switch to host mode and continue the host operation. The host will see this as a temporarily "unattended terminal". This is made possible because the front end of the two-way keyboard adapter is powered directly from the 3278. Additionally, if power is removed from the personal computer, then keystroke data is redirected to the display station rather than the personal computer without invoking the switch-over key sequencing. The present invention will be described further by way of example with reference to an embodiment thereof as illustrated in the accompanying drawings, in which: Figure 1 is a perspective view of a 3278 display station flanked by an IBM Personal Computer System Unit and a printer; Figure 2 is a pictorial representation of the IBM Personal Computer and the various adapter options available including the 3278 attachment adapter; Figure 3 is a block diagram of the 3278 display station and the personal computer showing how they are interfaced with the 3278 attachment adapter; Figure 4 is a detailed block diagram of the 3278 attachment adapter; Figure 5 is a block diagram of the feature command decoder of the 3278 attachment adapter; Figure 6 is a block diagram of the feature status register of the 3278 attachment adapter; ; Figure 7 is a block diagram of the feature poll register of the 3278 attachment adapter; and Figure 8 is a block diagram of the keyboard data paths. Referring now to the drawings, and more particularly to Figure 1, a 3278 display station is shown as comprising a CRT display 10 and a keyboard 12. On the right of the CRT display 10 is an IBM Personal Computer System Unit 14 which may have one or two floppy diskette drives 16 installed in the system unit cabinet. On the left of the CRT display 10 is a printer 18, here shown on an optional stand 20. The printer 18 is connected to and controlled by the personal computer system unit. Figure 2 shows the IBM Personal Computer System Unit mother board 22 mapped to generally show the location of the 8088 microprocessor, the read only storage (ROS), the random access memory (RAM), the keyboard attachment, and the five I/O expansion slots as well as other parts of the system unit. A number of adapters in the form of printed circuit boards are available which are designed to be plugged into one of the five I/O slots. For example, a diskette drive adapter 24 capable of supporting up to four diskette drives would be plugged into one of the I/O slots. This in turn would be connected to the two internal diskette drives 16. Two monitor adapters are available for the IBM Personal Computer System Unit; a colour graphics monitor adapter 26 and a monochrome display and parallel printer adapter 28. Typically, one or the other of adapters 26 or 28 would be plugged into one of the I/O slots and a connection made from the adapter to the base unit of the 3278 display station. If the monochrome display and parallel printer adapter is used, then a cable connection is made from the adapter 28 to the printer 18. On the other hand, if the colour graphics monitor adapter 26 is used, it is necessary to plug the parallel printer adapter 30 into one of the I/O slots and make the cable connection from this adapter to the printer 18. Another I/O slot might have plugged into it a RAM expansion card 32 and/or an asynchronous communications adapter 34, the latter having a cable connection to a modem (not shown) for connection to a telephone line, for example. A 3278 attachment adapter 36 is provided to be plugged into one of the five I/O slots of the IBM Personal Computer System Unit. This adapter 36 has cable connection to the base unit of the 3278 display station and cable connections to both the 3278 keyboard and the keyboard attachment on the mother board of the system unit. The relationship of the 3278 attachment adapter to the 3278 display station and the personal computer system unit is best shown in Figure 3 to which reference is now made. In Figure 3, the same reference numerals as used in the preceding figures refer to the same components or circuits. Therefore, it will be understood that the several adapters shown in block diagram are plugged into the I/O slots in the system unit. The 3278 display unit 10 is represented as having a CRT 38 which is driven by analog circuits 40 in a conventional manner. The analog circuits 40 are controlled by digital logic and a regeneration buffer 42 which is also connected to the feature bus 44 and the keyboard adapter 46. Normally, the 3278 keyboard 12 would be connected to the keyboard adapter 46. In addition, the 3278 display station communicates with a host computer 48 via a 3274 controller 50. The circuitry described thus far for the 3278 display unit 10 is conventional. For purposes of the subject invention, this circuitry is modified by the addition of an analog input switch 52. Normally, the output of the digital logic and regeneration buffer 42 goes through the analog circuits 40 to generate an image on the face of the CRT 38. However, the analog input switch 52 is introduced between the digital logic and regeneration buffer 42 and the analog circuits 40. The analog input switch has a second input which is connected to the colour graphics adapter 26 or optionally the monochrome monitor and parallel printer adapter (not shown in Figure 3). The analog input switch 52 thus allows the analog circuits 40 to be driven from the normal digital logic and regeneration buffer 42 of the 3278 display unit or from the output of a video adapter plugged into the personal computer system unit. The state of the analog input switch is controlled by the 3278 adapter 36. The 3278 adapter 36 has four major sub-functions; the I/O interface function 54, the analog input switch control 56, the two-way keyboard adapter 58, and the feature bus adapter 60. The I/O interface function 54 allows the 3278 adapter 36 to meet the interface of the I/O slots of the personal computer system unit. The analog input switch control 56 is controlled by a personal computer program to cause the analog input switch 52 to switch states. Thus, the personal computer program has the capability to determine what is displayed on the face of the CRT 38; either the 3278 host image of the Personal Computer Display Adapter image. Because of the position of the analog input switch 52, the regeneration buffer 42 and its supporting logic operate as they did before installation of the PCAT feature. The same is true for the regeneration buffer and its supporting logic in either the colour graphics monitor adapter 26 or the monochrome monitor and parallel printer adapter 28. This allows the host program and the personal computer program to continue to generate images and send them to their respective regeneration buffers, thereby allowing concurrent operation of both the host program and the personal computer program. The third sub-function in the 3278 adapter 36 is the two-way keyboard adapter 58 which also operates in conjunction with a personal computer program. In an unmodified 3278 display station, the keyboard 12 is plugged into the keyboard adapter 46; however, when the PCAT feature is installed, the keyboard 12 is plugged into the two-way keyboard adapter 58 using the existing 3278 keyboard cable and connector. The two-way keyboard adapter58 accepts keystroke scan codes from the keyboard 12 and feeds them to the personal computer memory 62 via the I/O interface 54. The personal computer program is expected to interrogate these scan codes in memory 62, alter them (if necessary), send them back to the two-way keyboard adapter and direct whether the adapter output is sent to the existing keyboard adapters in the 3278 or personal computer. The program that performs this function is called the interrupt handler which, in addition, monitors the keyboard 12 operation for a unique key sequence which is the way the operator requests the interrupt handler to switch modes. When in the host mode, the CRT image and keystrokes are associated with the host program; when in the personal computer mode, the CRT image and keystrokes are associated with the personal computer program. The feature bus adapter 60 provides circuits to connect the 3278 adapter 36 to the feature bus 44. The feature bus 44 normally supports such features as light pen, magnetic stripe readers, programmable symbol sets, and the like. This feature bus 44 mates with the feature bus adapter 60 of the 3278 adapter 36 to provide a relatively high speed two-way path for sending data from the host to the personal computer and vice versa. The 3278 attachment adapter 36 is shown in greater detail in Figure 4 and includes an 8255 programmable parallel interface controller 64 which provides the analog input switch control and the two-way keyboard adapter sub-functions. The adapter 36 has various addresses to which it responds. The following is a list of the various addresses for the various functions: : PC I/O ADDRESS FUNCTION X'3E0' 8255 Port A X'3E1' 8255 Port B X#3E2' 8255 Port C X'3E3' 8255 Control X'3E4' Read-PC Status, Write-Control X'3E51 Read-Start OP Modifier, Write Keyboard Serialiser X'3E6' Diagnostics X'3E7' Diagnostics PC MEM ADDRESS FUNCTION X'C4000-C40FF' Buffer FEATURE ADDRESS FUNCTION X'5' All Feature Commands of 3274 The 3278 adapter 36 also includes a 256 x 8-bit RAM buffer 66 that can be written or read from by either the personal computer or by a feature command, but not simultaneously. The buffer resides in the personal computer memory address space starting at base address X'C4000'. The only time the personal computer is allowed access to the buffer 66 is the time when the feature has received a Start Op command until the personal computer responds with an Op Complete Pending. The only other time that the personal computer may have access to the buffer 66 is if the IPL complete latch has been reset ¯ t all other times the buffer 66 is dedicated to the feature bus adapter. The feature bus reads the buffer 66 at the address specified by the buffer address register (BAR) 68 with either a Read Data or Read Multiple command. Data is written to the buffer 66 at the address specified by the buffer address register 68 with a Write command from the feature bus. The buffer address register 68 is one byte wide. It is loaded with the Set Address Counter Low command from the 3274 controller. It can also be reset to zero with the Reset command from the 3274 controller. The buffer address 68 contains the address which is to be read or written to or by the 3274 controller. The feature command decoder 70 is connected to the G bus 72 by the feature command register 74. The decoder 70 is shown in more detail in Figure 5 and comprises two decoder circuits 76 and 78 connected to command register 74. These decoder circuits provide feature command outputs which are listed below: COMMAND DESCRIPTION NOOP X'2' Poll. Sends poll status to feature bus. X'3' Reset. Sets Buffer Address Register to all zeros. X'4' Read Data. Reads one byte of data. Increments Buffer Address Register. X'5' Write BAR High. Loads the BAR high. X'6' Write BAR Low. Loads the BAR low. X'7' Read ID. Feature ID and Poll status sent to feature bus. X'8' Start Op. Loads Start Op Modifier Register. X'9' NOOP NOOP NOOP X'B' Read Multiple. Reads up to 4 bytes of data from buffer. X'C' Write Data. Stores up to 256 bytes of data in the buffer. X'Dt NOOP X'Et NOOP X'F' Read Status. Sends Feature Status register to feature bus. Returning now to Figure 4, the feature status register 80 is one byte wide and provides an output to the G bus 72. This register is read only by the 3274 controller and is read using a read status command. Figure 6 shows the feature status register in more detail. It comprises five latches 82, 83, 84, 86, and 88 and a buffer 90. The following is a description of the bits in the feature status register beginning with the most significant bit: BIT DESCRIPTION 7 Screen Capture Busy. Set by PC command when screen capture message is received. Reset by a PC command or PC reset or Reset. 6 IPL Complete. Set by PC command. Reset by PC command or PC reset. 5 Not Busy. Set by Feature Bus Adapter when 'Op Complete Pending' is set in Feature Status Register or PC Reset. Reset when a Start Op Modifier has been received. 4 Request Read. Set by PC command when it is ready for the 3274 to read the buffer. Reset by PC command or PC reset or Reset. 3 Reserved. 2 Reserved. 1 Op Complete Pending. Set by PC command. Reset by Acknowledge to feature Poll or PC reset or Reset. 0 Reserved. Returning again to Figure 4, the Feature Poll Response register 92 is connected to the G bus 72. This register is also 8 bits wide and is read only by the 3274 controller. As shown in Figure 7, Register 92 comprises two latches 94 and 96 and a buffer 98. The bit descriptions are given below beginning with the most significant bit: BIT DESCRIPTION 7 0 6 1 - Feature ID = Xl5' 5 0 4 1 3 Feature Interrupt. Set if IPL complete has been activated or Request Read Sequence has been activated. 2 Reserved. 1 Reserved. 0 Op Complete. Set by PC command. Reset by Acknowledge to Poll or PC Reset or Reset. Returning to Figure 4, the Feature ID Register 100 is also connected to the G bus 72 and is one byte wide. When a Read Feature ID command is decoded by the adapter, the Poll Status Register is gated onto the Feature Bus In. The data is the same as the Poll Response Register. The PC Status Register 102 is connected to the T bus 104 and is one byte wide. This register is read only to the personal computer. It resides at I/O address X'3E4'. The following is a description of the bits of the PC Status Register beginning with the most significant bit: BIT DESCRIPTION 7 Reserved. 6 Poll Request Active. The bit is interrogated by the personal computer data transfer software to either allow the software to change the status bits (0) or to prohibit the change of status bits (1). It is set when any status bit is initially turned on and the present poll signal from the feature bus is present and is turned off by the feature bus poll acknowledge signal. 5 Display Type. This bit is a 1 for a 3278 and a 0 for a 3279. 4 Serial Port Busy. This bit is a 1 when the keyboard serialiser is busy. It is rest when the port becomes available or with PC reset. 3 Serial Port Interrupt. This bit is a 1 when the keyboard serial port has completed sending a character. It is rest by an adapter command or with PC Reset. 2 Start Op Interrupt. This bit is a 1 when the Start Op Modifier register has been loaded from the feature bus. The bit is reset when the Start Op Modifier register is read by the PC or with PC Reset. 1 Parallel Output Port Interrupt. This bit is a I when the parallel output port (8255 Port B) is available to accept another character. This bit is reset when data is sent to the port or by PC Reset. 0 Keyboard In Interrupt. This bit is a 1 when the adapter has received a character from the keyboard (8255 port A). This bit is reset when the data is read from the adapter or with PC Reset. The PC command decoder 106 is connected to the T bus 104 by the PC command register 108. The decoder 106 is similar in construction to the feature command decoder 70 and so a detailed illustration of the decoder 106 is omitted from this description. The PC command register 108 is one byte wide and is write only. This register resides at I/O address X'3E4'. The following is a list of the commands decoded by the decoder 106: COMMAND DESCRIPTION X'00' Turn off serial interrupt. Resets the keyboard serial I/O port. X'01' Turn on op complete pending. Turns the op complete pending bit on and causes a poll request to the 3278/9. 'X02' Turn off read request sequence. 'X03' Turn on read request sequence. 'x04' Turn off Screen Capture Busy. 'X05' Turn on Screen Capture Busy. 'X06' Turn off Test Mode. 'X07' Turn on Test Mode. 'X08' Turn off Keyboard Clicker Gate. 'X09' Turn on Keyboard Clicker Gate 'XOA' Turn off 3278 Display gate. 'XOB' Turn on 3278 Display gate. 'X0C' Turn off IPL Complete. 'XOD' Turn on IPL Complete. 'XOE' Turn off Diagnostic Mode. 'XOF t Turn on Diagnostic Mode. The adapter 36 uses an 8255 programmable parallel interface controller 64 to interface to the keyboard 12, the keyboard adapter 46, and the analog switch control 56. The 8255 programmable parallel interface controller is a commercially available integrated circuit and, like the 8088 microprocessor in the personal computer system unit, is manufactured by Intel Corporation. Additional information on the 8255 programmable parallel interface controller may be obtained from the Intel Data Book. The controller 64 has four ports identified as Ports A, B, C and D. These ports, their I/O addresses and a description of their use are listed below: PORT ADDRESS DESCRIPTION A X'3E0' This port is to be used to read the keyboard. B Xt3El1 This port is to be used to send keyboard data to the 3278/9. C X'3E2' This port has multiple uses. It is used for the control signal for ports A and B, and analog switch control, and control to select which input is read into port A (i.e. 3278/9 keyboard data or 3278/9 keyboard identity code). D X'3E3' This is the control register for the 8255. The keyboard serialisation register 110 is write only and resides at I/O address X'3E5'. The data written to this register will be serialised and set to the PC keyboard input socket. After a keystroke has been read in from the keyboard 12, the PC software determines where to send the data. If the attachment is in the PC Mode, the keystroke will be mapped to a corresponding PC keyboard scan-code. Next the new scan-code will be output to the keyboard serialiser 110. Writing this register causes PC Status Bit 4 (Serial Port Busy) to become active. When the serialisation is complete, Bit 4 will be reset and Bit 3 (Serial Port Interrupt) will be set. The data sent to this port will be serialised in the following order: First, a parity bit will be sent out. Second, the data will be sent out with the least significant bit sent first. This port is not bi-directional and therefore does not respond to the PC keyboard software reset command. The Start Op Modifier Register 112 is read only from the PC. It is used to pass control information between the 3274 controller and the PC during data transfers. It resides at I/O address X'3E5'. This register is loaded from the feature bus with a Start Op Command. The register being loaded causes PC Status Bit 2 (Start Op Interrupt) to be set. The bit is reset when the PC reads the Start Op Modifier Register 112. Keyboard Out at Port B of the 8255 controller 64 is the interface which sends keystrokes from the PC to the 3278/9. The interface is fully asynchronous. Port B of the 8255 controller 64 is used in strobed output mode to send data to the 3278/9. After a character is loaded into the 8255 controller, the "Data Avail Out" line is activated. The 3278/9 then responds by activating "KB Ack Out and deactivating the "Data Avail Out" line. This causes the 8255 controller to activate the interrupt request. This interrupt signals that the 8255 controller is available to receive more data. To avoid sending erroneous data to the 3278/9 during IPL and reconfiguration of the 8255 controller, the "Data Avail Out" line is gated with the display gate latch. When this latch is set, data is enabled to be sent to the 3278/9. Figure 8 is a functional block diagram which summarises the keyboard data paths just described. Note that the 8255 controller 64 operates as the two-way keyboard adapter 58 shown in Figure 3. An important aspect of this arrangement is that, if the personal computer application fails, then the operator can, using the keystroke sequence, switch to the host mode and continue the host operations. This is made possible by powering the front end of the two-way keyboard adapter directly from the 3278 display station. The front end of the two-way keyboard adapter is that section of the logic which accepts keystroke information from the keyboard and directs it either to the 3278 or to the personal computer. Additionally, if power is removed from the personal computer, then keystroke data is automatically redirected from the front end of the two-way adapter to the display station rather than to the personal computer without requiring the operator to invoke the switch-over key sequencing so that host operation can be maintained. Returning again to Figure 4, the diagnostic register 114 contains the ten feature bus out bits as well as strobe feature bus out, Poll acknowledge, and Reset features. This register can be written by the Diagnostic program via the PC I/O bus. Two additional I/O addresses are decoded in the adapter for this purpose. With the feature bus cable disconnected, the Diagnostic program is able to manipulate this bus (feature bus out) to simulate feature commands and data. The diagnostic buffer 116 is attached to the feature bus in (bits 2 to 10), feature response, poll request, and the analog switch control. The buffer 116 can be activated by the Diagnostic program via the PC I/O bus. Two I/O addresses are decoded for this function. With the feature bus cable disconnected, the Diagnostic program is able to detect feature responses and data. Data transfer between the personal computer and the host program consists of file transfer and screen capture. File transfer is enabled by the 3274 controller 50 microcode which recognises certain structured fields in the host data stream and directs the data to the feature bus 44 instead of the regeneration buffer 42 of the 3278/9 display station as shown in Figure 3. The personal computer can accept the data and act on it immediately or store it on diskette for later use with other PC programs. In addition, data can be taken from the diskette and sent via the feature bus 44 and the 3274 controller 50 to the host 48. This same ability to transmit data from the personal computer to the host permits a PC program to perform a function called "upload". With this function, an operator signs on to the host system in the normal manner. Then the operator can invoke a keystroke generation program in the personal computer. This program produces the keystrokes which are sent to the host 48 and appear to be macro-language instructions. These instructions are a bootstrap program which bring in the rest of the file transfer program. This file transfer program is a private exec which the operator now owns. It is permanently stored at the host 48 and available for use any time the operator invokes it. It only requires this upload once. Other uses can be envisioned for the automatic keyboard operations just described. For example, there could be automatic sign on or automatic generation of any keystroke sequence that the operator wishes to define. Screen capture is the equivalent of the 3270 local-copy function and of the IBM Personal Computerprint-screen function. Screen capture permits an operator to obtain a hard copy of the screen image or to copy the screen image to the system unit diskette. The only place within the display sub-system that the screen image resides is in the regeneration buffers. If the analog switch 52 currently connects the regeneration buffer to the analog circuits 40, then the host data image is displayed. The 3274 controller 50 has microcode to unload that screen image from the regeneration buffer 42 into the 3274 controller 50 and redirect it out through the feature bus 44 to the PC system unit 14. The system unit 14 then directs this screen image data to either the printer 18 or a diskette drive 16 via the corresponding adapter. If on the other hand the analog switch 52 connects the output of a PC monitor adapter, either the colour graphics adapter 26 or the monochrome monitor and parallel printer adapter 28, to the analog circuits 40, then the image displayed is the PC program image. This image may be printed in the usual manner since it is already resident in the PC system unit. This capability for local copy also makes it possible for programs to be written to operate on the screen image in whatever way the programmer desires.

Claims: CLAIMS 1. A personal computer attachment for a display station of the type that communicates with a host computer (48), the display station having a display unit (10) and a keyboard (12), the display unit having display means (38) for displaying image data and first buffer means (42) for receiving image data from the host computer and supplying the image data to the display means, the attachment comprising: a personal computer including a system bus, a microprocessor (8088) and memory means connected to the system bus, the memory means including second buffer means for supplying image data to a display means; switch means (52) connected to the display means for selectively supplying host image data from the first buffer means in the display unit or personal computer data from the second buffer means in the personal computer; and adapter means (36) connected to the personal computer system bus for communicating with the display unit, the keyboard being attached to the adapter means for selectively inputting data to the host computer or the personal computer, the adapter means including control means (56) responsive to a keyboard input for controlling the switch means. 2. An attachment as claimed in claim 2, wherein the display station itself is of the type that communicates with the host computer (48) for the purpose of accessing data and running programs on the host computer, and includes keyboard adapter means (46) for receiving keyboard signals, feature bus means (44) for providing an interface to a controller (50) external to the display station, and means for providing a communication link between the buffer means, the keyboard adapter means and the feature bus means and the host computer; the personal computer system unit including a keyboard adapter connected to the system bus, and input/output means connected to the system bus for providing an interface to external devices such means including a display adapter (26 or 28) which incorporates the buffer for supplying image data to a display means; ; the attachment adapter (36) including an input/output interface (54), a switch control (56) a two-way keyboard adapter (58), and a feature bus adapter (60), the keyboard being connected to the two-way keyboard adapter, and each of the switch control, two-way keyboard adapter and feature bus adapter communicating with the system bus of the personal computer system unit via the input/output interface, the switch control further being connected to a control input of the switch means, the two-way keyboard adapter further being connected to the keyboard adapter means in the display station and to the keyboard adapter in the personal computer system unit, and the feature bus adapter further being connected to the feature bus means in the display station whereby keystroke signals from the keyboard are transmitted by the two-way keyboard adapter via the input/output interface and system bus to the memory means of the personal computer for interpretation by the microprocessor and then retransmitted back to the two-way keyboard adapter and either to the keyboard adapter means in the display system or to the keyboard adapter in the personal computer system unit and the switch control being responsive to a unique keystroke signal generated by the keyboard to control the switch means. 3. An attachment as claimed in claim 2, wherein the input/output means in the personal computer system unit further includes a bulk storage media adapter (24) and a printer adapter (30), the attachment further including bulk storage media means (16) and printer means (18) connected respectively to the bulk storage media adapter and the printer adapter. 4. An attachment as claimed in claim 2 or claim 3, further comprising means responsive to a keyboard command for unloading the buffer means in the display station and transmitting the image data that was stored in the buffer means to the personal computer via the feature bus means and the feature bus adapter. 5. An attachment as claimed in any one of claims 2 to 4, further comprising means for transmitting data from a host computer to either the buffer means in the display unit or the personal computer system unit via the feature bus means and the feature bus adapter. 6. An attachment as claimed in any one of claims 2 to 5, further comprising means for transmitting data from the personal computer to a host computer via the feature bus adapter and the feature bus means, the data being generated either by signals from the keyboard or a program run on the personal computer. 7. An attachment as claimed in any one of claims 2 to 6, wherein the two-way keyboard adapter includes logic that accepts keystroke information from the keyboard and directs it either to the display unit or the personal computer, the logic being powered by the display unit so that if there is a failure in the personal computer, the operator can switch to a host mode of operation using a keystroke sequence.

Inventors: BRYAN, BARRY LEE, DRUCKERMAN, MARTIN, MCDOWELL, ALLEN WILLIAM, SCHNEIDER, IRA HOWARD
Applicants: INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1983
Main classification: G06F3
IPC codes: G06F13, G06F15, G06F3