Browse Prior Art Database

Special Move Operation for Insert Assistance

IP.com Disclosure Number: IPCOM000046237D
Original Publication Date: 1983-Jun-01
Included in the Prior Art Database: 2005-Feb-07
Document File: 2 page(s) / 14K

Publishing Venue

IBM

Related People

Haigh, DC: AUTHOR [+3]

Abstract

This article describes a special move operation provided to assist a microprocessor perform the 'insert' function in a large-screen alphanumeric display terminal. The same operation can also be used to assist with other tasks, such as deleting, repeating to address, clearing, and the general movement of data within the character buffer for the display.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 2

Special Move Operation for Insert Assistance

This article describes a special move operation provided to assist a microprocessor perform the 'insert' function in a large-screen alphanumeric display terminal. The same operation can also be used to assist with other tasks, such as deleting, repeating to address, clearing, and the general movement of data within the character buffer for the display.

When a character is to be inserted, the operation to be performed on the data in a character buffer RAM (ramdom-access memory) of the terminal is to shift a number of bytes to the right by one or two bytes, thus making room for the new character (and its character attribute, if it has one).

In this description, 'source address' refers to the address in the character buffer from which a byte is read, and 'sink address' means the address to which a byte is written.

The desired shifting operation can be achieved by incorporating a 3-byte first- in, first-out (FIFO) buffer through which the bytes are written. Because two extra bytes are buffered (in addition to the single byte buffered by a conventional move), no replication or loss of bytes will result when the initial sink address is one or two bytes to the right of the initial source address.

The required move operation can readily be perfomred by a display adapter, which interfaces between the microprocessor and the display device and contains all the registers needed to define and control such an operation. These are: - an address counter for the source address, - an address counter for the sink address, - a counter for the number of bytes to be moved, and - three registers to buffer the bytes being moved.

Implementation of the special move operation only requires the addition of controls for the operation, all paths needed by the operation being already present in the dataflow to and from the character buffer RAM.

Two of the registers participating in the 3-byte FIFO are loaded (during an operation list fetch procedure of the special move) with the first two bytes that will be written to RAM. These could be the character and the character attribute being inserted. The source and sink address and the byte count are also set up during the special move operation list fetch procedure.

The actual move starts with the display adapter reading a byte from RAM at the source address, which it places in the FIFO. The adapter then increments the source address by one, extracts a byte from the FIFO, writes it into RAM at the sink address, increments the sink address, and decrements the byte count. The operation continues with the adapter alternately reading the writing bytes until the number of bytes specified by the intial byte count have been written to RAM.

This special move operation performs as follows for some of the more useful relative starting values of the source and sink addresses. The first two bytes with

1

Pa...