Facsimile apparatus using a small computer system interface

A facsimile apparatus having a scanner for reading original images, a memory for storing images, a printer for recording images, and a communication control section for controlling the transmission/reception of data with a receiving communication apparatus is connected to a host computer via a small computer system interface (SCSI). As a result, the scanner, the memory, the printer and the communication control apparatus provided in the facsimile apparatus can be controlled from the host computer. Data can be transferred between the host computer and the facsimile apparatus at a higher speed, and the scanner, the memory, the printer and the communication control apparatus can be effectively controlled from the host computer. Thus, various kinds of applications can be realized.

BACKGROUND OF THE INVENTION 
1. Field of the Invention 
The present invention relates to a facsimile apparatus. More particularly, 
the present invention relates to a facsimile apparatus which realizes 
various kinds of applications by controlling a scanner, printer, image 
memory, line control section or the like, which constitute the facsimile 
apparatus, by means of an external host computer. 
2. Description of the Related Art 
Hitherto, systems have been developed which realize various kinds of 
applications by controlling a scanner, printer, memory and line control 
section provided in a facsimile apparatus by means of a host computer. 
Conventional RS-232C and GPIB interfaces are used therein as interfacing 
techniques for connecting the facsimile apparatus to the host computer. 
However, in the above-described prior art, there are operational problems 
in that there is a limitation on the data transfer speed because interface 
techniques, such as RS-232C or GPIB, are used, and that it takes too much 
time to transfer images. 
In addition, there is a drawback in that, since there is a limitation on 
the data transfer speed, the host computer cannot realize various kinds of 
applications by controlling the scanner, printer, memory, line control 
section or the like provided in the facsimile apparatus. 
SUMMARY OF THE INVENTION 
The present invention has been achieved to solve the above-mentioned 
problems of the prior art. 
An object of the present invention is to provide a facsimile apparatus 
which is capable of increasing the speed at which data is transferred 
between a host computer and a facsimile apparatus and of effectively 
utilizing a scanner, printer, memory, line control section or the like 
provided in the facsimile apparatus by instructions from the host computer 
by using the small computer system interface (SCSI) for interfacing a host 
computer with a facsimile apparatus. This is a conventional interface 
whose description is published, for example by the American National 
Standards Institute at ANSI X3.131-1986. 
Another object of the present invention is to provide a facsimile apparatus 
which is capable of storing images read by the image reading section of 
the facsimile apparatus as files in the host computer and capable of 
controlling the transmission and recording thereof upon instructions from 
the host computer. 
A further object of the present invention is to provide a facsimile 
apparatus which is capable of entering images from a host computer into 
the memory of the facsimile apparatus and is capable of controlling the 
transmission and recording of the entered images under instructions from 
the host computer. 
A still further object of the present invention is to provide a facsimile 
apparatus in which a host computer, connected to a facsimile apparatus, 
which is capable of controlling the facsimile apparatus, obtains 
information on the apparatus with which it communicates from said 
facsimile apparatus and thereafter instructs the facsimile apparatus to 
transmit or receive images. 
A still further object of the present invention is to provide a facsimile 
apparatus which is capable of notifying the host computer of information 
on images stored in the facsimile apparatus in a data format selected by 
the host computer from among a plurality of data formats. 
Objectives and advantages in addition to those discussed above shall be 
apparent to those skilled in the art from the description of the preferred 
embodiment of the invention which follows. In the description, reference 
is made to the accompanying drawings, which form a part hereof, and which 
illustrate an example of the invention. Such example, however, is not 
exhaustive of the various embodiments of the invention, and therefore 
reference is made to the appended claims for determining the scope of the 
invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
Preferred embodiments of the present invention will be explained below in 
detail with reference to the accompanying drawings. 
FIG. 1 is a block diagram illustrating the entire construction of a 
facsimile apparatus (hereinafter referred to as an apparatus) according to 
an embodiment of the present invention. In this figure, a CPU 1 controls 
the entire apparatus in accordance with control programs stored in a ROM 
2. Work areas and control data are temporarily stored in a RAM 3. An image 
memory 4 is a memory through which image data is handled. An image 
conversion section 5 converts resolution, paper size, and an encoding 
method. 
In this apparatus, an original document (image) is read by an image reading 
section such as a scanner 6 and printed out by an image recording section 
such as a printer 7. Communication protocols between this apparatus and a 
communication network are controlled by a line control section 8. 
Communication protocols between this apparatus and a host computer 15 are 
controlled by an interface section 9 with a host computer. In the present 
invention, a small computer system interface (SCSI) is used as an 
interface. SCSI is an interface by which data can be transferred at a 
speed higher than that by RS-232C or GPIB. 
A file management section 10 manages documents created inside a facsimile 
apparatus, and the documents are stored in a storage apparatus 11. 
Operations of the facsimile apparatus are performed by an operation 
section 12. The line control section 8 is connected by a dedicated cable 
13 to the network, and the interface section 9 with a host computer is 
connected by a dedicated cable 14 to the host computer 15. 
A detailed explanation will now be given about the control of a facsimile 
apparatus according to this embodiment. Since operations, such as 
transmission, reception, or copying, and methods employed in a facsimile 
apparatus, are well known, the explanation thereof is omitted here. 
Thus, only the control of this apparatus from outside via the interface 9 
with a host computer will be described below in detail. 
FIG. 2 illustrates an example in which logic units are assigned to the 
blocks which constitute the facsimile apparatus. In this figure, an entire 
logic unit 21 is a unit in which the entire facsimile apparatus is 
considered as one unit. In a scanner 22, a printer 23, an image memory 24, 
and a line unit 25, a logic ID (LUN: logic unit number) is set thereto 
with reference to a scanner section, a printer section, an image memory 
section, and a line control section respectively which comprise a 
functional block. In this embodiment, a specific command is set to each of 
these units so that the functions of each unit are utilized to their 
fullest and the burden on the host computer 15 is minimized. 
Next, functions provided in the units will be described unit by unit. 
FIG. 3 is a flowchart which illustrates the outline of processing commands 
inputted from an interface 9 with a host computer. The CPU 1 processes 
commands in accordance with this flowchart. In this figure, in steps S301 
to S305, a check is made, for example from the LUN, to determine to which 
unit a command is issued. In steps S307 to S311, a command process for 
each unit is performed on the basis of the determination results of steps 
S301 to S305, respectively. Step S306 concerns a step for a case in which 
invalid commands, such as undefined commands, are input, but this step is 
basically not performed. 
&lt;Entire Logic Unit Command Processing&gt; 
FIG. 4 is a flowchart which illustrates in detail operations for processing 
an entire logic unit command in step S307 shown in FIG. 3. 
(Processing of Reserve Unit Command) 
The reserve unit command is a command which should be issued first when the 
facsimile apparatus is controlled by the host computer 15 so as to fully 
use the functions of the facsimile apparatus. The facsimile apparatus, 
upon reception of this command, checks the internal operating state or the 
like, and notifies the facsimile apparatus of any change in status 
depending upon whether the facsimile apparatus can follow the control by 
the host computer 15 from this time on. 
In this embodiment, after the reserve unit command is processed normally, 
it is called an "On-Line" mode. In the On-Line mode, processing of 
commands from the host computer takes precedence over operations from the 
operation section 12. To explain more specifically, when it is determined 
in step S401 shown in FIG. 4 that the command is a reserve unit command, 
the internal state of the facsimile apparatus is checked in step S410. If 
the facsimile apparatus is not in a state in which various kinds of 
control commands from the host computer 15 can be executed, a confirmation 
of this status is sent out in step S413 (a check condition status is sent 
out on the basis of SCSI protocols). When the confirmation of the status 
is sent out, the cause thereof can be determined when the host computer 15 
issues an information request command. 
When the result of internal status check is "OK" in step S410, the 
facsimile apparatus shifts to the On-Line mode, and an operation for 
displaying the status on the operation section 12 is performed, and the 
setting of internal control status is performed. In the subsequent step 
S412, an operation for sending out a confirmation of a normal status 
indicating that the reserve unit command processing has been terminated 
normally is performed (a good status on the basis of SCSI protocols is 
sent out). 
(Processing of Release Unit Command) 
This command is used to shift from the state in which the facsimile 
apparatus is placed in the On-Line mode by the reserve unit and processing 
commands from the host computer 15 takes precedence over operations from 
the operation section 12 to the Off-Line mode in which the facsimile 
apparatus is operated as an ordinary facsimile apparatus. 
When it is determined in step S402 that the command is a release command, 
an operation for shifting to the Off-Line mode is performed in step S420. 
When the command from the host computer 15 is being executed, the 
execution is stopped, the internal status is shifted to the Off-Line mode, 
and a confirmation of a normal status is sent out in step S421. Thus, the 
operation is terminated. 
(Processing of Information Request Command) 
This command is used not only to notify the host computer of the functions 
that this apparatus has, but to notify it of the cause of an abnormality 
when a confirmation status is sent out. 
When it is determined in step S403 that the command is an information 
request command, in step S430, the facsimile apparatus performs an 
internal information notification operation for notifying the host 
computer of the type of model, version, terminal performance, and the 
cause of abnormality. In the subsequent step S431, a confirmation of a 
normal status is sent out, terminating the command processing. 
In step S404, an operation for a case in which a command which is undefined 
for the entire logic unit is received is performed, and a confirmation of 
this status is sent out. A list of a parameter group used for the entire 
logic unit is shown in FIG. 14. In FIG. 14, reference character PC denotes 
the host computer 15. 
&lt;Scanner Command Processing&gt; 
FIGS. 5-1 and 5-2 are flowcharts which illustrate in detail operations for 
processing various kinds of commands for the scanner unit 6 in step S308 
shown in FIG. 3. FIG. 15 is a table which lists a group of parameters used 
for the scanner unit command. 
(Processing of Scanner Information Request Command) 
This command is used to notify the host computer of information about the 
scanner unit 6, such as the presence or absence, or size of an original 
document, or the presence or absence of any defects. 
When it is determined in step S501 shown in FIG. 5-1 that the command is a 
scanner information request command, the scanner information shown in FIG. 
15 is sent to the host computer in step S510, and a confirmation of a 
normal status regarding this operation is sent out in step S511. This 
terminates the series of operations. 
(Processing of Reading Parameter Setting Command) 
This command is used to receive the designation of the reading mode before 
a reading request command is received. The designation of a reading mode 
includes the setting of the resolution, the encoding method and the like. 
Regarding processing, when it is determined in step S502 that the command 
is a reading parameter setting command, a predetermined parameter shown in 
FIG. 15 is received in step S520, and a confirmation of a normal status 
regarding this operation is sent out in step S521. Thus, the operation is 
terminated. 
(Processing of Reading Request Command) 
This command is used to read an original document set in a scanner after 
the aforesaid reading parameter setting command is received, and to store 
image data in the storage apparatus 11 inside the facsimile apparatus. 
When it is determined in step S503 that the command is a reading request 
command, a check is made of the status of the scanner unit 6 and whether 
or not the reading parameter has been set. When it has not been set, the 
scanner is operated using a default value. If the apparatus is in a mode 
in which the reading operation cannot be performed, a confirmation of this 
status is sent out in step S533, terminating the operation. If the reading 
operation can be performed, the apparatus is disconnected in step S532 so 
that the logical connection with the host computer is temporarily released 
and the apparatus is switched to a mode in which other commands 
(particularly a stop command) can be received. Next, a reading operation 
is performed in step S534 by using the functions of the facsimile 
apparatus. In the subsequent step S535, an operation for entering and 
storing a file is performed by the file management section 10. 
Thus, the image can be read by the scanner inside the facsimile apparatus 
after the resolution, encoding method or the like are specified by the 
host computer. Furthermore, the image can be filed. After the file entry 
operation is completed, a reselecting operation is performed in step S536 
so that the logical connection with the host computer is made again. 
Thereafter, in step S537, a check is made to determine whether the reading 
operation has been terminated normally or abnormally. If the reading 
operation has been terminated abnormally, a confirmation of this status is 
sent out in step S538. If the reading operation has been terminated 
normally, a confirmation of a normal status is sent out in step S539. This 
terminates the series of operations. 
(Processing of File Information Request Command) 
This command is used to notify the host computer of file information 
created as a result of executing the reading request command, for example, 
a file management ID, file size, or the like. 
Regarding processing, when it is determined in step S504 in FIG. 5-2 that 
the command is a file information request command, file information is 
sent out in step S540. In the subsequent step S541, a confirmation of a 
normal status regarding this operation is sent out. This terminates the 
operation. 
(Processing of Stop Command) 
This command is used to stop a reading operation in response to receiving a 
reading request command when the apparatus is reading an original 
document. When it is determined in step S505 that the command is a stop 
command, the reading operation is stopped in step S550. A confirmation of 
a normal status regarding this operation is sent out in step S551 to 
notify the host computer that the stop command has been executed. 
Postprocessing, incidental to the discontinuation of the reading 
operation, is performed in step S552. This terminates the operation. 
(Processing of Status Request Command) 
This command is issued after a confirmation status regarding other scanner 
command processing is sent out and used to notify the host computer of the 
reasons why the confirmation of this status has been issued. 
Regarding processing, when it is determined in step S506 that the command 
is a status request command, predetermined status information is sent out 
in step S560. A confirmation of a normal status is sent out in step S561. 
This terminates the operation. 
In step S507, when an undefined scanner command is received, a confirmation 
of this status is sent out. 
&lt;Printer Command Processing&gt; 
FIGS. 6-1 and 6-2 are flowcharts which illustrate the operation concerning 
printer command processing. FIG. 16 is a table which lists a group of 
parameters used for a printer unit command. 
(Processing of Printer Information Request Command) 
This command is used to notify the host computer of the presence or absence 
of recording paper, the size thereof, defects, or the like in the printer 
7. 
When it is determined in step S601 shown in FIG. 6-1 that the command is a 
printer information request command, the aforesaid presence or absence of 
recording paper, size thereof, defects and the like are sent out in step 
S610. In step S611, a confirmation of a normal status is sent out. This 
terminates the operation. 
(Processing of Print-out Request Command) 
This command is used to selectively print documents stored in the facsimile 
apparatus. 
When it is determined in step S602 that the command is a print-out request 
command, a check is made in step S620 of the status of the printer, and 
the presence or absence of the specified file. If an abnormality is 
detected, a confirmation of this status is sent out in step S621, 
terminating the operation. If the confirmation of this status is "OK", the 
logical connection with the host computer is temporarily disconnected in 
step S622. In step S623, the specified file is printed out. After 
printing, the logical connection with the host computer is made again. 
When the result of the printing-out operation indicates "OK" in the 
determination step of step S625, a confirmation of a normal status is sent 
out in step S626. If the result of the printing-out operation indicates 
"not OK", a confirmation of this status is sent out in step S627. Thus, 
the operation is terminated. 
Thus, documents stored within the facsimile apparatus as files can be 
output by the printer of the facsimile apparatus under an instruction from 
the host computer. 
(Processing of Discontinue Command) 
This command is used to discontinue the execution of a print output request 
command when the print-out request command is in operation. 
When it is determined in step S603 that the command is a discontinue 
command, an operation for discontinuing the printing is performed in step 
S630. In step S631, a confirmation of a normal status indicating that this 
command has been executed is sent out in step S631. Postprocessing 
incidental to the discontinuation of the execution of the print-out 
request is performed in step S632. Thus, the series of operations are 
terminated. 
(Processing of Status Request Command) 
This command is issued after a confirmation status regarding other scanner 
command processing is sent out and used to notify the host computer of the 
reasons why the confirmation status has been issued. 
Regarding processing, when it is determined in step S604 that the command 
is a status request command, predetermined information is sent out in step 
S640. A confirmation of a normal status is sent out in step S641. This 
terminates the operation. 
In step S605, when an undefined printer command is received, a confirmation 
of this status is sent out. 
&lt;Image Command Processing&gt; 
FIGS. 7-1 and 7-2 are flowcharts which illustrate the operation concerning 
image command processing. FIG. 17 is a table which lists a group of 
parameters used for the image command. 
(Processing of Attribute Specification Command) 
This command is used to specify attributes as a file, for example, image 
size, resolution, an encoding system in the case of image information, or 
the coding scheme in the case of character data, before a file is created 
by a data write command which will be described in the next section. This 
command is also used to store the information as the attributes of the 
file. 
Regarding processing, when it is determined in step S701 shown in FIG. 7-1 
that the command is an attribute specification command, an attribute 
specification command shown in FIG. 17 is received in step S710. A 
confirmation of a normal status is sent out in step S711. Thus, the 
operation is terminated. 
(Processing of Data Write Command) 
This command is used to transfer data from the host computer to the 
facsimile apparatus when a document file is created within the facsimile 
apparatus. In this embodiment, it is presupposed that one document is 
stored in one file, though data of a plurality of pages can be stored with 
respect to one file. In creating a file, it is in principle necessary that 
the specification of attributes of the file be declared beforehand by the 
above-mentioned attribute specification command before the data write 
command is issued. 
In creating a file, there is a possibility that the data write command will 
be issued two or more times. Flags used to indicate whether the end of one 
page of data is reached or not, or the end of a file is reached or not, 
can be specified as parameters within this command. By using these flags, 
management for each page and for each document can be performed. 
Specific operations of the present invention will be explained below with 
reference to flowcharts. 
When it is determined in step S702 shown in FIG. 7-1 that the command is a 
data write command, the process status within the facsimile apparatus is 
checked in step S720. This is done to check if the file attributes have 
been specified by the attribute specification command and if there is a 
storage capacity sufficient to create a file. If the process status 
regarding this operation indicated in this step is "not OK", a 
confirmation of this status is sent out in step S721. This terminates the 
operation. 
At this point, even if there is document data which has already been 
processed, when the file entry operation in step S732, which will be 
described later, has not been terminated normally, the data is discarded 
unconditionally. 
When the process status regarding this operation indicated in step S720 is 
"OK", an operation for inputting document data into the facsimile 
apparatus is performed in step S722. At this point, if there is an 
abnormality, such as an insufficient storage capacity, a confirmation of 
this status is sent out in step S724. This terminates the operation. 
If, however, it is determined in step S723 that the operation result is 
"OK", in step S725, a check is made to determine whether the data is page 
boundary data. If the data continues as page data, a confirmation of a 
normal status is sent out in step S726. Then, the facsimile apparatus 
waits for another data write command to be input. 
When the data is page boundary data in step S725, considering the data is 
determined to be page data, a closing operation under file management is 
performed in step S727 shown in FIG. 7-2. In the subsequent step S728, a 
check is made to determine whether the closing operation has been 
terminated normally. If a problem has occurred, a confirmation of this 
status is sent out in step S729. If no problem has occurred, a check is 
made to determine whether the end of data in a document file has been 
reached. 
When the page data continues to be sent, as the data is determined to be 
not document boundary in step S730, a confirmation of a normal status is 
sent out in step S731, and the apparatus waits for a new data write 
command. When, on the contrary, the end of the data has been reached as a 
document, the data is entered as a file in step S732. If it is determined 
in step S733 that the operation has been terminated normally, a 
confirmation of a normal status is sent out in step S735. If, however, it 
is determined in step S733 that the operation has been terminated 
abnormally, a confirmation of this status is sent out in step S734. This 
terminates the operation. 
(Processing of File Designation Command) 
This command is used to designate a file to be transferred before a data 
read command is issued, which data read command is an execution command 
used to transfer document data stored in the facsimile apparatus to the 
host computer. 
When it is determined in step S703 shown in FIG. 7-3 that the command is a 
file designation command, predetermined file designation information is 
received in step S740. In the subsequent step S741, a confirmation of a 
normal status regarding this operation is sent out. This terminates the 
operation. 
(Processing of Data Read Command) 
This command is used to transfer data of the file which is previously 
designated by the aforesaid file designation command to the host computer. 
When it is determined in step S704 that the command is a data read command, 
the internal status regarding this file data transfer operation is checked 
in step S750. When the status indicates "not OK", a confirmation of this 
status is 10 sent out in step S751. This terminates the operation. When, 
on the contrary, the status is "OK", the data is transferred in step S752. 
In the subsequent step S753, if there is no data to be transferred in a 
state in which a specified number of transfer bytes has not been reached, 
a confirmation of this status is sent out in step S754, and the operation 
is terminated. If there is data to be transferred, a confirmation of a 
normal status is sent out in step S755, and the operation is terminated. 
(Processing of File Information Request Command) 
This command is used to notify the host computer of information on files 
stored in the facsimile apparatus. In this embodiment, three command types 
are prepared for requesting file information. The host computer is 
notified of information corresponding to each of the three command types. 
These commands are shown in FIG. 19. 
When the command type is "file ID list request", a list of IDs of files 
stored within the facsimile apparatus is notified as information to the 
host computer. When the command type is "individual file information 
request", as a predetermined file ID and page numbers are specified by the 
host computer, file information shown in FIG. 20 is notified to the host 
computer on the basis of the specification. When the command type is 
"up-to-date file information request", information on the file which is 
most recently created is notified to the host computer in the format shown 
in FIG. 20. 
The file information request command is prepared for the scanner command, 
the image memory command, and a communication command. When the command 
type is "up-to-date file information request", information on their most 
recently created file, which is created when a reading request command, a 
data write command, or a reception request command (including a polling 
reception command) is executed, is notified to the host computer. As set 
forth above, in this embodiment, information stored in the facsimile 
apparatus can be retrieved in a format in which the host computer can 
easily use the information. Regarding processing, when it is determined in 
step S705 shown in FIG. 7-4 that the command is a file information request 
command, file information corresponding to the command types described 
above is sent out to the host computer in step S760. In step S761, a 
confirmation of a normal status regarding this operation is sent out, and 
the operation is terminated. 
(Processing of File Delete Request Command) 
This command is used to delete a specified file. When it is determined in 
step S706 that the command is a file delete request command, a specified 
file is deleted in step S770. In step S771, a confirmation of a normal 
status regarding this operation is sent out, and the operation is 
terminated. When the specified file does not exist, the process proceeds 
to the next step where a confirmation of a normal status is sent out. 
(Processing of Status Request Command) 
This command is issued when a confirmation status regarding other image 
memory command processing is sent out and used to notify the host computer 
of the reasons why the confirmation status is sent out. 
When it is determined in step S707 that the command is a status request 
command, predetermined information is sent out in step S780. In step S781, 
a confirmation of a normal status is sent out and the operations is 
terminated. In step S708, when an undefined image memory command is 
received, a confirmation of this status is sent out. 
&lt;Communication Command Processing&gt; 
FIGS. 8-1 to 8-4 are flowcharts which illustrate the operations concerning 
communication command processing. FIG. 18 is a table which lists a group 
of parameters used for the communication command. 
(Processing of Session Open Command) 
This command is used to originate calls to a given terminal partner and to 
control the communication procedures up to a session layer (the fifth 
layer from the bottom among the seven layers). 
When it is determined in step S801 shown in FIG. 8-1 that the command is a 
session open command, a calling operation is performed in step S820 by 
using address information specified by the host computer, terminal 
characteristics, and terminal performance information. In step S821, 
session open acknowledge response (RSSP) is received as the operation 
result. When it is determined that the calling operation has been 
terminated normally, a confirmation of a normal status regarding this 
operation is sent out in step S823. However, if a connection at end-to-end 
up to the session layer cannot be made, for example, a session start NAK 
response (RSSN) is received in step S821. In step S822, a confirmation of 
this status is sent out, and the operation is terminated. 
(Processing of Information on Terminal Partner Request Command) 
This command is used to notify the host computer of information on a 
terminal partner and information on the performance of a terminal partner, 
which are notified by RSSP and the like from the terminal partner, when a 
connection is made with the terminal partner up to the session layer in 
the above-described session open command processing. 
When it is determined in step S802 that the command is an information on 
terminal partner request command, it is confirmed in step S830 that a 
connection up to the session layer has been made. When there is no data to 
be sent out, a confirmation of this status is sent out in step S831, and 
the operation is terminated. If, on the contrary, the status is "OK" in 
step S830, the information on the terminal partner is sent out in step 
S832, and the operation is terminated. The host computer receiving the 
information on the terminal partner displays this information on the 
display section. 
As a result, it can be checked whether a desired terminal partner has been 
reliably called, and whether the desired terminal partner has the 
capability for processing a communication application which an operator of 
the host computer desires to use. Thus, transmission and reception of 
documents are made possible on the basis of the checked information. 
(Processing of Session Close Command) 
This command is used for a line disconnecting operation in a state in which 
a connection up to the session layer has been made. 
When it is determined in step S803 that the command is a session close 
command, a disconnecting operation starting from sending out CSE is 
performed in step S840. In step S841, a confirmation of a normal status 
regarding this operation is sent out, and the operation is terminated. 
(Processing of Communication Result Request Command) 
This command is used to notify the host computer of the communication 
results when a transmission request command, a reception request command 
and a polling reception command, which will be described later, are 
executed. When it is determined in step S804 shown in FIG. 8-2 that the 
command is a communication result request command, in step S850, the most 
recent communication result is notified to the host computer. In step 
S851, a confirmation of a normal status is sent out, and the operation is 
terminated. 
(Processing of Communication Discontinue Command) 
This command is used to discontinue the execution of a transmission request 
command, a reception request command and a polling reception command, 
which will be described later. 
When it is determined in step S805 that the command is a communication 
discontinue command, an operation for discontinuing the communication is 
performed in step S860 so as to disconnect the line. A confirmation of a 
normal status regarding this operation is sent out in step S861. In the 
subsequent step S862, postprocessing for the command, the execution of 
which is discontinued, is performed, and the operation is terminated. 
(Processing of File Information Request Command) 
This command is used to notify the host computer of information on a 
document file received by the reception request command or the polling 
reception request command. 
When it is determined in step S806 that the command is a file information 
request command, predetermined file information is sent out in step S870. 
In step S871, a confirmation of a normal status is sent out, and the 
operation is terminated. 
(Processing of Transmission Request Command) 
This command is used to make a terminal partner transmit a predetermined 
document file. It is presupposed that the documents to be transmitted are 
filed beforehand within the facsimile apparatus. There are two 
configurations in this embodiment in receiving a transmission request. One 
is a calling transmission request, and the other is a session mode 
transmission request. The operations for respective requests will be 
described later. A major difference between the two requests is that the 
request includes a calling operation or not. 
When it is determined in step S807 shown in FIG. 8-3 that the command is a 
transmission request command, a check is made to determine whether the 
request is a calling transmission request in step S880. If the request is 
a calling transmission request, a calling transmission operation (this 
will be described later in accordance with the flowchart shown in FIG. 9) 
is performed in step S881. When it is determined in step S880 that the 
request is not a calling transmission request, in step S882, a check is 
made to determine whether there is a session mode transmission request. 
If it is determined in step S882 that there is a session mode transmission 
request, a session mode transmission operation (see the flowchart shown in 
FIG. 10) is performed in step S883. If it is determined in both steps S880 
and S882 that there is no session mode transmission request, a 
confirmation of this status is sent out as error processing in step S884, 
and the operation is terminated. 
(Processing of Reception Request Command) 
This command is used to make the apparatus receive a document in the 
on-line mode. Regarding processing, when it is determined in step S808 
that the command is a reception request command, a reception request 
operation is performed in step S890, and the operation is terminated (the 
details thereof will be explained with reference to the flowchart shown in 
FIG. 11). 
(Processing of Polling Reception Request Command) 
This command is used to receive polling from a given terminal partner. For 
this command, broadly, two processing configurations are supported in the 
same manner as the above-mentioned transmission request command. One is a 
call polling operation (see FIG. 12) and the other is a session mode 
polling operation (see FIG. 13). 
When it is determined in step S809 shown in FIG. 8-4 that the command is a 
polling reception request command, a check is made in step S900 to 
determine whether the request is a call polling request. If the request is 
a call polling request, a call polling operation is performed in step 
S901. If the request is not a call polling request, a check is made in 
step S902 to determine whether the request is a session mode polling 
request. If the request is a session mode polling request, a session mode 
polling operation is performed in step S903. 
If the request is not a call polling request in step S900, and if the 
request is not a call polling request in step S902, a confirmation of this 
status is sent out as error processing in step S904, and the operation is 
terminated. 
(Processing of Status Request Command) 
This command is issued when a confirmation of the status regarding other 
communication command processing is sent out and used to notify the host 
computer of the reasons why the the confirmation of the status is issued. 
When it is determined in step S810 that the command is a status request 
command, status information is sent out in step S910, and the operation is 
terminated. 
In step S811, when an undefined scanner command is received, a confirmation 
of this status is sent out. 
Next, the operations set forth below in the communication command 
processing shown in FIGS. 8-3 and 8-4 will be explained in detail: 
1 the call transmission operation 
2 the session mode transmission operation 
3 the reception request operation 
4 the call polling operation 
5 the session mode polling operation. 
FIG. 9 is a flowchart which illustrates in detail a call transmission 
operation. In step S1001 shown in FIG. 9, a check is made to determine 
whether the apparatus is ready for originating a call. If the call 
transmission operation cannot be performed because, for example, the 
communication line is busy, a confirmation of this status is sent out in 
step S1002, and the operation is terminated. 
On the other hand, if it is determined in step S1001 as a result of 
confirming the status that the apparatus is ready to transmit a call, it 
is disconnected in step S1003 so as to logically release the connection 
with the host computer so that a stop or other command can be received. In 
step S1004, a calling operation is performed on the basis of the address 
information specified by the host computer so that an operation for 
connecting with a terminal partner up to the session layer can be 
performed. 
In step S1005, a check is made to determine whether the operation for 
connecting with the terminal partner has been performed normally. If it 
has not, a reselecting operation is performed in step S1006 so that a 
logical connection with the host computer is made. In the subsequent step 
S1007, a confirmation of this status is sent out, and the operation is 
terminated. 
If the operation for connecting with the terminal partner has been 
performed normally in the determination of step S1005, a document 
specified by the host computer is transmitted in step S1008 after a 
connection up to the session layer has been completed. If it is determined 
in step S1009 that the operation has been terminated abnormally, the 
process proceeds to step S1010. If the operation has terminated normally, 
the process proceeds to step S1012. 
In step S1010, a check is made to determine whether the facsimile apparatus 
is in a transmitting/receiving phase. If it is, the communication is 
disconnected in step S1011, and the process proceeds to the 
above-mentioned step S1006. If it is not, the process proceeds directly to 
step S1006. In step S1012, the communication is disconnected. In the 
subsequent step S1013, a reselecting operation is performed, and then in 
step S1014, a confirmation of a normal status is sent out, and the 
operation is terminated. 
FIG. 10 is a flowchart which illustrates a session mode transmission 
operation. In step S1101 shown in FIG. 10, a check is made to determine 
whether a connection with a predetermined terminal partner up to the 
session layer has been made. If it is determined that this operation 
cannot be continued, a confirmation of this status is sent out in step 
S1102, and the operation is terminated. 
If, however, the above-mentioned connection has been made in the 
determination of step S1101, a disconnecting operation is performed in 
step S1103. In the subsequent step S1104, a document is transmitted. If it 
is determined in step S1105 that the document transmission operation has 
been terminated abnormally, the process proceeds to step S1106, at which 
step a reselecting operation is performed. In the subsequent step Sl107, a 
confirmation of this status is sent out, and the operation is terminated. 
On the other hand, if the document transmission operation has been 
terminated normally in the determination of step S1105, a reselecting 
operation is performed in step S1108. In the subsequent step S1109, a 
confirmation of a normal status is sent out, and the operation is 
terminated. 
FIG. 11 is a flowchart which illustrates the operation concerning reception 
request processing. In step S1201 shown in FIG. 11, a check is made to 
determine whether the facsimile apparatus is ready for reception. If it is 
determined that the facsimile apparatus is not ready for reception, a 
confirmation of this status is sent out in step S1202, and the operation 
is terminated. 
If it is determined that the facsimile apparatus is ready for reception, 
the process proceeds to step S1203 where a disconnecting operation is 
performed, and then the process proceeds to step S1204, at which step the 
apparatus waits for reception. In this embodiment, the apparatus waits for 
an incoming call from an arbitrary terminal. If there is a call, a 
reception operation is performed, receiving the call. In step S1205, the 
result of the reception is checked. If it is "not OK", the process 
proceeds to step S1206 where a reselecting operation is performed. In the 
subsequent step S1207, a confirmation of this status is sent out, and the 
operation is terminated. 
If, on the contrary, the indication of the reception result is "OK", the 
received document is filed in step S1208. If the reception result 
indicated in step S1209 is "not OK", the process proceeds to step S1206; 
if the reception result indicates that it is "OK", the process proceeds to 
step S1210. 
In steps S1206 and S1210, a reselecting operation is performed. In step 
S1207, a confirmation of this status is sent out. In step S1211, a 
confirmation of a normal status is sent out. This terminates the 
operation. 
FIGS. 12-1 and 12-2 are flowcharts which illustrate a call polling 
operation procedure. 
In step S1301 shown in FIG. 12-1, first, a check is made of the status 
within the facsimile apparatus. If it is determined that this operation 
cannot be continued, a confirmation of this status is sent out in step 
S1302, and the operation is terminated. If, on the contrary, this 
operation can be continued, the process proceeds to step S1303, at which 
step a disconnecting operation is performed. In the subsequent step S1304, 
a call is originated to the terminal partner specified by the host 
computer, and a connection up to the session layer is made. Then, in step 
S1305, the result of the operation is checked. If it is "not OK", the 
process proceeds to step S1313 (see FIG. 12-2). 
If the determination result in step S1305 is "OK", an operation for 
reversing a transmission privilege (reversing a session) is performed in 
step S1306. In the subsequent step S1307, the facsimile apparatus waits 
for a document to be reached. When a document from the terminal partner 
begins to be reached by CDS, the document is received in step S1308. 
However, if it is requested that the transmission privilege is reversed in 
a state in which the document is not being transmitted from the terminal 
partner, the process proceeds to step S1311 (see FIG. 12-2). 
The result of the reception operation is checked in step S1309. If it is 
"OK", the process proceeds to step S1310 where the received document is 
filed. If, on the contrary, it is "not OK", the process proceeds directly 
to step S1311 shown in FIG. 12-2, at which step a transmission privilege 
reversing operation is performed so as to return the transmission 
privilege to its original state. Then, in step S1312, the line is 
disconnected. In the subsequent step S1313, a reselecting operation is 
performed. Then, in step S1314, checks are made to determine whether the 
series of operations have been terminated normally or abnormally. When the 
series of operations have been terminated normally, a confirmation of a 
normal status regarding the series of operations is sent out in step 
S1315. When the series of operations have been terminated abnormally, a 
confirmation of this status is sent out in step S1316. This terminates the 
series of operations. 
FIG. 13 is a flowchart which illustrates a session mode polling reception 
operation. In step S1401 shown in FIG. 13, a check is made to determine 
whether a connection up to the session layer has been made and this 
operation can be performed. If it is determined that this operation cannot 
be performed, a confirmation of this status is sent out in step S1402, and 
the operation is terminated. If, on the contrary, this operation can be 
performed, a disconnecting operation is performed in step S1403. In the 
subsequent step S1404, an operation for reversing a transmission privilege 
is performed. 
In step S1405, the apparatus waits for the reception of a document. When a 
document starts to be transferred by CDS from a terminal partner, the 
document is received in step S1406. If it is requested that the 
transmission privilege be reversed immediately from the terminal partner, 
postprocessing incidental to that request is performed in step S1409. 
In step S1407, the result of the document reception operation is checked. 
If the document reception operation has been terminated normally, the 
document is filed in step S1408. If, however, the document reception 
operation has been terminated abnormally, the process proceeds directly to 
step S1409, at which step an operation for reversing a transmission 
privilege is performed. In the subsequent step S1410, a reselecting 
operation is performed, and then the results of the operations up to this 
point are checked. 
If the operations have been terminated normally, a confirmation of a normal 
status regarding the operations is sent out in step S1412; if the 
operations have been terminated abnormally, a confirmation of this status 
is sent out in step S1413. This terminates the series of operations. 
As has been explained above, according to this embodiment, an interface 
section is provided with flexibility so that commands can be sent from a 
facsimile apparatus to a host computer such as a personal computer, or 
vice versa. As a result, there is an advantage in that the units which 
constitute the facsimile apparatus can be easily and flexibly used to 
their fullest by a host computer. 
The use of the SCSI standard as an interface results in the advantage that 
images can be transferred between facsimile apparatuses and a host 
computer at a speed higher than that when the conventional RS-232C, GPIB 
or the like are used. In addition, there is the advantage that the number 
of steps required for the development of applications on the host computer 
side can be reduced because a more flexible, logical interface is provided 
for the development thereof. 
Although in the above-described embodiment, the facsimile apparatus has one 
scanner, one printer, one image memory, and each of the units related to 
communication control, a modification can be made, without departing from 
the spirit and scope of the present invention, in which the facsimile 
apparatus has two or more of each other these elements, or in which one of 
these elements is not provided. 
In addition, the present invention may be applied to a system formed of a 
plurality of components, or to an apparatus formed of one component. It 
goes without saying that the present invention may be applied to a case in 
which the object thereof is achieved by supplying programs to a system or 
apparatus. 
As has been explained above, according to the present invention, commands 
can be sent from a facsimile apparatus to a host computer such as a 
personal computer, or vice versa. As a result, there is an advantage in 
that the units which constitute the facsimile apparatus can be easily and 
flexibly used to their fullest by a host computer. 
Many different embodiments of the present invention may be constructed 
without departing from the spirit and scope of the present invention. It 
should be understood that the present invention is not limited to the 
specific embodiment described in this specification. To the contrary, the 
present invention is intended to cover various modifications and 
equivalent arrangements included within the spirit and scope of the 
claims. The following claims are to be accorded a broad interpretation, so 
as to encompass all such modifications and equivalent structures and 
functions.