IE61847B1 - "A method and apparatus for retrieving data" - Google Patents

"A method and apparatus for retrieving data"

Info

Publication number
IE61847B1
IE61847B1 IE309688A IE309688A IE61847B1 IE 61847 B1 IE61847 B1 IE 61847B1 IE 309688 A IE309688 A IE 309688A IE 309688 A IE309688 A IE 309688A IE 61847 B1 IE61847 B1 IE 61847B1
Authority
IE
Ireland
Prior art keywords
computer
keyboard
subroutine
address
stuffing
Prior art date
Application number
IE309688A
Other versions
IE883096L (en
Inventor
Patrick James Garvey
Edward Bernard Kerr
James Thomas Tinsley
Original Assignee
Sunbridge Limited
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 Limited filed Critical Sunbridge Limited
Priority to IE309688A priority Critical patent/IE61847B1/en
Priority to ZA888119A priority patent/ZA888119B/en
Priority to GB8922833A priority patent/GB2224378A/en
Publication of IE883096L publication Critical patent/IE883096L/en
Publication of IE61847B1 publication Critical patent/IE61847B1/en

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

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.

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 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 1 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.
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 5 been described as being a permanent storage memory, this is not necessary, the data could be stored in any other type of memory.

Claims (27)

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 V 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 5 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 10 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 15 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 20 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 25 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 5 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. 10
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 15 in which the computer comprises means for searching through data stored in a storage medium in the computer.
18. A computer as claimed in which display means are retrieved data on a visual in any of Claims 12 to 17 provided for displaying the display . «sr
19. A computer as computer comprises claimed in Claim 18 in which the 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 5 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. 10
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 15 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.
IE309688A 1988-10-13 1988-10-13 "A method and apparatus for retrieving data" IE61847B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
IE309688A IE61847B1 (en) 1988-10-13 1988-10-13 "A method and apparatus for retrieving data"
ZA888119A ZA888119B (en) 1988-10-13 1988-10-28 A method and apparatus for retrieving data
GB8922833A GB2224378A (en) 1988-10-13 1989-10-10 Retrieving and incorporating data

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
IE883096L IE883096L (en) 1990-04-13
IE61847B1 true IE61847B1 (en) 1994-11-30

Family

ID=11037751

Family Applications (1)

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

Country Status (3)

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

Families Citing this family (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
GB8922833D0 (en) 1989-11-22
ZA888119B (en) 1989-07-26
GB2224378A (en) 1990-05-02
IE883096L (en) 1990-04-13

Similar Documents

Publication Publication Date Title
US6108668A (en) Method and system for undoing edits within selected portion of electronic documents
EP0249089B1 (en) Word processing system
JPS59163659A (en) Access system of data set for word processing system
US6179487B1 (en) Data processing system and method for associating specific graphics with data processing applications
IE61847B1 (en) "A method and apparatus for retrieving data"
JP3169596B2 (en) Database management device
JP2748924B2 (en) Data display device
JP2775728B2 (en) Document processing device
JPH0628417A (en) Electronic film device
KR970000266B1 (en) Method for writing and reading a data in a memory
JPH0536196A (en) Control method for electronic filing device
JP2558692B2 (en) Document file device
JP3813305B2 (en) Document creation apparatus and storage medium storing program for realizing the same
JPH07141363A (en) Document editing method
JP3237709B2 (en) Document processing apparatus and document processing method
JPH113211A (en) Pc card setting system for computer system
JPH02240772A (en) Image processing system
JPH0785089A (en) Character processing device
KR950027814A (en) Flash Cards for Digital Song Accompaniment Systems
JPS63195889A (en) Additional registration method for information
KR19990024415A (en) Memory Structure of Foreign Language Word Learning Device
JPH0736937A (en) Electronic book with resuming return function
JPH02228769A (en) Picture storage device
JPH04295965A (en) Draw type optical disk file device
JPH0528145A (en) Retrieval/deletion and blank processing method for word processor

Legal Events

Date Code Title Description
MM4A Patent lapsed