GB2224378A - Retrieving and incorporating data - Google Patents

Retrieving and incorporating data Download PDF

Info

Publication number
GB2224378A
GB2224378A GB8922833A GB8922833A GB2224378A GB 2224378 A GB2224378 A GB 2224378A GB 8922833 A GB8922833 A GB 8922833A GB 8922833 A GB8922833 A GB 8922833A GB 2224378 A GB2224378 A GB 2224378A
Authority
GB
United Kingdom
Prior art keywords
computer
keyboard
subroutine
address
stuffing
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.)
Withdrawn
Application number
GB8922833A
Other versions
GB8922833D0 (en
Inventor
Patrick James Garvey
Edward Bernard Kerr
James Thomas Tinsley
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.)
SUNBRIDGE Ltd
Original Assignee
SUNBRIDGE Ltd
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 SUNBRIDGE Ltd filed Critical SUNBRIDGE Ltd
Publication of GB8922833D0 publication Critical patent/GB8922833D0/en
Publication of GB2224378A publication Critical patent/GB2224378A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms

Landscapes

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

Abstract

Data are retrieved from a storage medium in a computer while an application programme is running and are incorporated with data being operated on by the programme. The incorporation involves a keyboard stuffing subroutine which comprises the following steps: writing the address of the keyboard handling subroutine of the computer operating system in temporary storage 1, 2, writing an address of the keyboard stuffing subroutine into the normal location of the keyboard handling subroutine address 3, stuffing the retrieved data 5, 6, and writing the keyboard handling subroutine address into its normal location on all the data being stuffed 8, 9. <IMAGE>

Description

TITLE: A method and apparatus for retrieving data DESCRIPTION The present invention relates to a method and apparatus for retrieving data from a permanent storage medium in a computer while a computer application programme is running in the computer, and incorporating the retrieved data with data being operated on by the computer programme.
According to the invention there is provided a method for retrieving data from a storage medium in a computer while a computer application programme is running in the computer and incorporating at least some of the retrieved data with data being operated on by the computer application programme, the method comprising the steps of retrieving the data, calling up a keyboard stuffing subroutine, the keyboard stuffing subroutine comprising the following steps;; reading the address of the computer operating system's subroutine for handling codes submitted from the keyboard for processing, namely the keyboard handling subroutine, from the keyboard handling subroutine address location, writing the address of the keyboard handling subroutine in a temporary storage location in memory, writing an address of part of the keyboard stuffing subroutine into the keyboard handling subroutine address location, replacing data which would normally be entered at the keyboard with the retrieved data to be stuffed, in response to the last bit received by the keyboard stuffing subroutine being stuffed, reading the address of the keyboard handling subroutine from the temporary storage location, and writing the keyboard handling subroutine address into the keyboard handling subroutine address location.
Preferably, the method includes the step of returning control to the computer application programme after the address of the keyboard handling subroutine has been written back into the keyboard handling subroutine address location.
Advantageously, the method includes the step of returning control to the computer application programme after the keyboard stuffing subroutine address has been written in the keyboard handling subroutine address location. In one embodiment of the invention, the method includes the step of returning control to the computer application programme after each byte to be stuffed has been stuffed.
Additionally, the invention provides a computer comprising retrieving means for retrieving data from a storage medium in a computer while a computer application programme is running in the computer, and keyboard stuffing means for incorporating at least some of the retrieved data with data being operated on by the computer application programme, the keyboard stuffing means comprising a keyboard stuffing subroutine and also comprising means to read the address of the computer operating system's subroutine for handling codes submitted from the keyboard for processing, namely, the keyboard handling subroutine, from the keyboard handling subroutine address location, means to write the address of the keyboard handling subroutine in a temporary storage location in memory for temporary storage, means to write an address of the keyboard stuffing subroutine in the keyboard handling subroutine address location, means to detect the last bit received by the stuffing subroutine, means to read the address of the keyboard handling subroutine from the temporary storage location in response to the last bit being stuffed, and means to write the address of the keyboard handling subroutine into the keyboard handling subroutine address location.
Further, the invention provides a computer programme which comprises the method of the invention.
The invention also provides a medium comprising the computer programme of the invention.
The invention will be more clearly understood from the following description of a preferred embodiment thereof, given by way of example only, with reference to the accompanying drawings, in which: Fig. 1 is a block representation of a computer operating according to the invention, Fig. 2 is a flow chart of a subroutine of a computer programme according to the invention for controlling a computer when running according to the invention, Fig. 3 is a detailed diagrammatic representation of the operation of portion of the computer under the control of the computer programme of Fig. 2, and Fig. 4 is a detailed diagrammatic representation of the portion of Fig. 3 during a different stage of the operation of the computer.
Referring to the drawings, the operation of a computer according to the invention under the control of a computer programme according to the invention will be described. From here on, the computer programme of the invention will be referred to as search and retrieve software. The functions of the search and retrieve software are illustrated in the block representation of Fig. 1. The search and retrieve software is provided to operate in a terminate and stay resident (TSR) mode within the computer and resides in low memory to be available for use at any time once installed in the computer. It may be called up at any time while another computer application programme is running in the computer. On being called up, the search and retrieve software temporarily halts the computer application programme in memory.
Before describing the search and retrieve software in detail, the functions will be described with reference to Fig. 1. A memory map which includes the search and retrieve software is indicated by the reference numeral 20 which includes a memory 21, a computer application programme 23, the operating system 24 of the computer and the search and retrieve software 25.
A customized and general data base is indicated by the reference numeral 27, this may be in any permanent storage form, such as hard disc, floppy disc or the like. The search and retrieve software 25 may be linked to the data base for searching through a hard or soft link 28. The hard or soft link 28 may be preprogrammed or configurable to enable the search and retrieve software to access the data base 27. An applications file which comprises data being operated on by the computer application programme 23 is illustrated by the reference numeral 29. The data retrieved by the search and retrieve software 25 is displayed on a display 30.
Block 32 illustrates how the displayed data may be edited as desired. Block 33 represents the area where information selected at 32 is stored. An editor is illustrated by the block 34. As can be seen, the edited and selected data in the block 32 may be passed into the computer application programme 23 and then if desired into the application file 29. This is achieved by a keyboard stuffing subroutine as will be described below.
The search and retrieve software comprises the following main subroutines: a search subroutine, a displaying subroutine, an editing subroutine, and a keyboard stuffing subroutine.
The search subroutine is provided for searching through data stored in the permanent storage medium 27 in the computer, such as, for example, a hard disc, a floppy disc or otherwise. The search subroutine may search through a variety of file types, for example, fixed length files, sequential files, through indices, chains or keys, as well as flat files. Data may be retrieved and searched for by record or by key file.
Such searching subroutines will be well known to those skilled in the art and it is not intended to describe the actual search subroutine in detail.
The retrieved data is then displayed on the display 30, typically a visual display unit screen. The data may be displayed in either a predetermined format or a user defined format. Such display subroutines will be known to those skilled in the art and similarly it is not intended to describe the display subroutine in further detail. The displayed data can then be edited by calling up the editing subroutine if desired while displayed on the screen. Such editing subroutines will be known to those skilled in the art. The edited or unedited data or any selected part of the data displayed on the screen may be passed into the computer application programme 23 running in the computer which has been temporarily halted. This is achieved using the keyboard stuffing subroutine which will be described in detail below. The data to be stuffed is marked out on the screen.On the data being stuffed, the search and retrieve software passes back control to the computer application programme 23.
A flow chart of the keyboard stuffing subroutine is illustrated in Fig. 2. Block 1 of the subroutine reads the address of the keyboard handling subroutine from the keyboard handling subroutine address location illustrated by the reference numeral 50 in Fig. 3.
The keyboard handling subroutine is the subroutine in the computer operating system for handling codes submitted from the keyboard for processing, in this case the address is "1010". Such subroutine addresses will be well known to those skilled in the art. Thus, the location 50 is the location which normally stores the address of the keyboard handling subroutine.
Block 2 of the subroutine writes the address of the keyboard handling subroutine to a temporary storage location in memory addressable by the keyboard stuffing subroutine for temporary storage. This temporary location is illustrated in Fig. 3, and indicated by the reference numeral 51. Block 3 writes the address of block 5 of the keyboard stuffing subroutine in location 50, namely the location where the keyboard handling subroutine address is normally stored. The address of block 5 is "0110" and. is located in a memory location 52 illustrated in Fig. 3.
Block 4 returns control of the central processing unit to the computer application programme running in the computer, and so does not proceed directly to block 5.
However, each time the computer application programme attempts to execute the keyboard handling subroutine, the exchange of addresses effected in blocks 1 through 3 result in control of the central processing unit being transferred to block 5 of the keyboard stuffing routine.
Block 5 determines whether all data to be stuffed has been stuffed. If so, control is transferred to block 8.
Block 6 writes the keyboard input code, namely the scan code appropriate to each character to be stuffed in sequence into a register or memory location addressable by the computer application programme, which is the register or memory location in which the keyboard handling subroutine would have written a scan code value if its address had not been overwritten by the method of blocks 1 through 3. Block 6 also marks the byte as having been stuffed.
Block 7 returns control of the central processing unit to the computer application programme, and so does not proceed directly to block 8.
Accordingly, blocks 6 and 7 feed the data to be stuffed to the computer application programme as if the appropriate keys had been pressed on the keyboard or other data-entry device.
Block 8 reads the address of the keyboard handling subroutine from memory location 51 as illustrated in Fig. 4.
Block 9 writes the address of the keyboard handling subroutine read by block 8 into memory location 50, its normal location as illustrated in Fig. 3.
Block 10 returns control of the central processing unit to the computer application programme. This ends the keyboard stuffing subroutine.
In practice, it is envisaged that the search and retrieve software will be sold on a magnetic medium suitable for loading into a computer. Such a magnetic medium may be a floppy disc, a magnetic tape or the like. Needless to say, the software may be provided on any other suitable medium.
This method of keyboard stuffing according to the invention has many advantages. It reduces the amount of storage required. It reduces the execution time of the stuffing subroutine. It also leads to a smooth transition between the keyboard stuffing subroutine and the computer reverting to the computer application programme which had been suspended while the search and retrieve software was in use.
It will be appreciated that while the search and retrieve software has been described as comprising an editing feature, while this is preferable, it is not essential. Further, it will also be appreciated that while it is preferable that the search and retrieve software should comprise a means to display the retrieved data, this is similarly not essential. It will also be appreciated that it is not essential to the invention that the search and retrieve software should comprise a means to select portion of the retrieved and displayed data for stuffing.
While in the embodiment of the invention described, the memory from which the data to be retrieved has been described as being a permanent storage memory, this is not necessary, the data could be stored in any other type of memory.

Claims (31)

1. A method for retrieving data from a storage medium in a computer while a computer application programme is running in the computer and incorporating at least some of the retrieved data with data being operated on by the computer application programme, the method comprising the steps of retrieving the data, calling up a keyboard stuffing subroutine, the keyboard stuffing subroutine comprising the following steps;; reading the address of the computer operating system's subroutine for handling codes submitted from the keyboard for processing, namely the keyboard handling subroutine, from the keyboard handling subroutine address location, writing the address of the keyboard handling subroutine in a temporary storage location in memory, writing an address of part of the keyboard stuffing subroutine into the keyboard handling subroutine address location, replacing data which would normally be entered at the keyboard with the retrieved data to be stuffed, in response to the last bit received by the keyboard stuffing subroutine being stuffed, reading the address of the keyboard handling subroutine from the temporary storage location, and writing the keyboard handling subroutine address into the keyboard handling subroutine address location.
2. A method as claimed in any preceding claim in which the method includes the step of returning control to the computer application programme after the address of the keyboard handling subroutine has been written back into the keyboard handling subroutine address location.
3. A method as claimed in Claim 1 or 2 in which the method includes the step of returning control to the computer application programme after the keyboard stuffing subroutine address has been written in the keyboard handling subroutine address location.
4. A method as claimed in any preceding claim in which the method includes the step of returning control to the computer application programme after each byte to be stuffed has been stuffed.
5. A method as claimed in any preceding claim in which the keyboard stuffing subroutine address is stored in a register addressable by the stuffing subroutine.
6. A method as claimed in any preceding claim in which the method includes the step of searching data stored in the storage medium.
7. A method as claimed in Claim 6 in which the data is stored on a permanent storage medium.
8. A method as claimed in any preceding claim in which the method includes the step of displaying the retrieved data on a visual display unit.
9. A method as claimed in Claim 8 in which the method includes the step of enabling the displayed data to be edited.
10. A method as claimed in Claim 8 or 9 in which the method includes the step of enabling portion of the displayed data to be selected for stuffing.
11. A method for retrieving data from a storage medium in a computer while a computer application programme is running in the computer and incorporating the retrieved data with data being operated on by the computer application programme, the method being substantially as described herein with reference to and as illustrated in the accompanying drawings.
12. A computer comprising retrieving means for retrieving data from a storage medium in a computer while a computer application programme is running in the computer, and keyboard stuffing means for incorporating at least some of the retrieved data with data being operated on by the computer application programme, the keyboard stuffing means comprising a keyboard stuffing subroutine and also comprising means to read the address of the computer operating system's subroutine for handling codes submitted from the keyboard for processing, namely, the keyboard handling subroutine, from the keyboard handling subroutine address location, means to write the address of the keyboard handling subroutine in a temporary storage location in memory for temporary storage, means to write an address of the keyboard stuffing subroutine in the keyboard handling subroutine address location, means to detect the last bit received by the stuffing subroutine, means to read the address of the keyboard handling subroutine from the temporary storage location in response to the last bit being stuffed, and means to write the address of the keyboard handling subroutine into the keyboard handling subroutine address location.
13. A computer as claimed in Claim 12 in which the computer comprises means for returning control to the computer application programme after the address of the keyboard handling subroutine has been written back into the keyboard handling subroutine address location.
14. A computer as claimed in Claim 12 or 13 in which the computer comprises means for returning control to the computer application programme after the keyboard stuffing subroutine address has been written in the keyboard handling subroutine address location.
15. A computer as claimed in Claim 12 in which the computer comprises means for returning control to the computer application programme after each byte to be stuffed has been stuffed.
16. A computer as claimed in any of Claims 12 to 15 in which the keyboard stuffing subroutine address is stored in a register addressable by the stuffing subroutine.
17. A computer as claimed in any of Claims 12 to 16 in which the computer comprises means for searching through data stored in a storage medium in the computer.
18. A computer as claimed in any of Claims 12 to 17 in which display means are provided for displaying the retrieved data on a visual display.
19. A computer as claimed in Claim 18 in which the computer comprises means for editing the displayed retrieved data.
20. A computer as claimed in any of Claims 12 to 19 in which the computer comprises means for selecting portion of the retrieved data for stuffing.
21. A computer as claimed in any of Claims 12 to 20 in which the said retrieving means and stuffing means is provided by a computer programme.
22. A computer as claimed in Claim 21 in which the computer programme is configured to behave in a terminate and stay resident mode in the computer.
23. A computer as claimed in Claim 22 in which the computer programme resides in low memory in the computer.
24. A computer substantially as described herein with reference to and as illustrated in the accompanying drawings.
25. A computer programme which comprises the method as claimed in any of Claims 1 to 11.
26. A computer programme suitable for running in a computer of any of Claims 12 to 25.
27. A computer programme substantially as described herein with reference to and as illustrated in the accompanying drawings.
28. A medium comprising thelcomputer programme of any of Claims 25 to 27.
29. A medium as claimed in Claim 28 in which the medium is a magnetic medium.
30. A medium as claimed in Claim 29 in which the medium is a floppy disc or tape.
31. A medium substantially as described herein with reference to the accompanying drawings.
GB8922833A 1988-10-13 1989-10-10 Retrieving and incorporating data Withdrawn GB2224378A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IE309688A IE61847B1 (en) 1988-10-13 1988-10-13 "A method and apparatus for retrieving data"

Publications (2)

Publication Number Publication Date
GB8922833D0 GB8922833D0 (en) 1989-11-22
GB2224378A true GB2224378A (en) 1990-05-02

Family

ID=11037751

Family Applications (1)

Application Number Title Priority Date Filing Date
GB8922833A Withdrawn GB2224378A (en) 1988-10-13 1989-10-10 Retrieving and incorporating data

Country Status (3)

Country Link
GB (1) GB2224378A (en)
IE (1) IE61847B1 (en)
ZA (1) ZA888119B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003036557A1 (en) * 2001-10-22 2003-05-01 Intel Zao Method and apparatus for background segmentation based on motion localization

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
The PC Magazine Utilitie *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003036557A1 (en) * 2001-10-22 2003-05-01 Intel Zao Method and apparatus for background segmentation based on motion localization

Also Published As

Publication number Publication date
IE883096L (en) 1990-04-13
GB8922833D0 (en) 1989-11-22
IE61847B1 (en) 1994-11-30
ZA888119B (en) 1989-07-26

Similar Documents

Publication Publication Date Title
US6108668A (en) Method and system for undoing edits within selected portion of electronic documents
RU2242805C2 (en) Recording method, control device and recording device
EP0249089B1 (en) Word processing system
US5133066A (en) Method for selecting multiple versions of data in a reduced record units text editing system
US6179487B1 (en) Data processing system and method for associating specific graphics with data processing applications
GB2224378A (en) Retrieving and incorporating data
JPH0876935A (en) Backup data preparation and reproduction system
JPS5998362A (en) Discriminating device of memory cassette
JPH09115246A (en) Method and device for recording information, and recording medium
JP2003223345A (en) File display device
JPH05324421A (en) Electronic filing device
JP4281066B2 (en) Digital content data processing apparatus and program
KR970000266B1 (en) Method for writing and reading a data in a memory
JP2748924B2 (en) Data display device
JPH0628417A (en) Electronic film device
JP2775728B2 (en) Document processing device
JPH07141363A (en) Document editing method
JPH113211A (en) Pc card setting system for computer system
JPH07319859A (en) Retaining method for file in information processor
JPH04295965A (en) Draw type optical disk file device
JPS63195889A (en) Additional registration method for information
JPH02240772A (en) Image processing system
JPH0785089A (en) Character processing device
JPH10232801A (en) Data filing system
JPH0574052A (en) Method for managing information of information recording medium

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)