Abstract:
A display apparatus is designed for displaying formation of a network on a screen. The network is composed of a plurality of nodes and is capable of transferring either of musical performance information and an audio signal through communication paths connecting the plurality of the nodes. In the display apparatus, an acquiring section acquires a type of each node and an arrangement of the communication paths arranged among the nodes for transmitting and receiving the musical performance information and the audio signal. An allocating section allocates a display area to each node within the screen according to the acquired type of each node. A drawing section draws a plurality of index images indicating the respective nodes on the screen at the display areas allocated to the respective nodes, and draws lines connecting the displayed index images of the nodes on the screen according to the acquired arrangement of the communication paths.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     1. Technical Field  
         [0002]     The present invention relates to a network formation display apparatus and a signal path establishment apparatus suitably used for transmission and reception of MIDI signals or audio signals between a plurality of networked nodes.  
         [0003]     2. Related Art  
         [0004]     Conventionally, the applicants propose the music LAN (mLAN, registered trademark) that constructs a local area network (LAN) comprising nodes such as a personal computer, an electronic musical instrument, a mixer, an effector, and a recorder, and freely sends and receives MIDI signals and audio signals between the nodes. The music LAN is disclosed in Japanese Non-examined Patent Publication No. 2001-203732. The music LAN complies with the IEEE1394 standard. Normally, each node is provided with two IEEE1394 ports. The IEEE1394 ports of each node are connected in a daisy chain configuration to build up a hardware connection of the music LAN.  
         [0005]     In this specification, a term “LAN connector” is used to represent a hardware terminal used for connection between nodes and the like. A term “terminal” is used to represent a logical unit to input or output MIDI signals and audio signals. Logically “connecting” the terminals with each other enables transmission and reception of MIDI signals and audio signals between the logically connected nodes. When a MIDI signal is to be transmitted from a node A to another node B, for example, a logical connection must be established between one of MIDI output terminals of node A and one of MIDI input terminals of node B.  
         [0006]     The technology disclosed in Japanese Non-examined Patent Publication No. 2001-203732 displays a list of terminals on a personal computer screen to present connection relationship between the terminals and to edit the connection relationship as needed. According to the technology, a user can select either “MIDI signal” or “audio signal” as the list to be displayed. The selected list is displayed in a table format comprising left and right columns. The left column lists output terminal names. The right column lists input terminal names. When a connection state is established between any of output and input terminals, these terminal names are displayed on the same row. To change the connection state, the user can move any input terminal name on the right column to the right of an intended terminal in the output terminal column based on the “drag-and-drop” manner using a mouse tool. In this manner, the output terminal and the input terminal are connected. The user can specify either of the “MIDI signal” list and “audio signal” list independently of each other.  
         [0007]     Since the above-mentioned technology displays the connection relationship between terminals in a table format on character notation basis. Accordingly, users feel it difficult to intuitively and fast understand the connection relationship. Users also feel it cumbersome to change the connection relationship between the terminals.  
         [0008]     In the above-mentioned technology, the user can select one of the “MIDI signals” list and the “audio signals” list. The user may change the order of nodes or terminals listed in the selected list. Then, the user may switch the display to the other of the “MIDI signals” list and the “audio signals” list. However, the other list does not reflect the change made to the previously selected list. Thus, when displaying the other list, the user cannot promptly recognize the display contents.  
       SUMMARY OF THE INVENTION  
       [0009]     The present invention has been made in consideration of the foregoing. It is therefore a first object of the present invention to provide a network formation display apparatus and a signal path establishment apparatus capable of intuitively and fast understanding the connection relationship between nodes.  
         [0010]     It is a second object of the present invention to enable fast change of the connection relationship between nodes.  
         [0011]     It is a third object of the present invention to provide a network formation display apparatus and a program capable of displaying formation, topology, configuration or map of a network for intuitively and fast recognizing connection relationship between nodes.  
         [0012]     To solve the above-mentioned problems and to achieve the above noted objects, the present invention has the following construction.  
         [0013]     In a first aspect of the invention, an inventive display apparatus is designed for displaying formation of a network on a screen, the network being composed of a plurality of nodes and being capable of transferring either of musical performance information and an audio signal through communication paths connecting the plurality of the nodes. The inventive display apparatus comprises an acquiring section that acquires a type of each node and an arrangement of the communication paths arranged among the nodes for transmitting and receiving the musical performance information and the audio signal, an allocating section that allocates a display area to each node within the screen according to the acquired type of each node, and a drawing section that draws a plurality of index images indicating the respective nodes on the screen at the display areas allocated to the respective nodes, and that draws lines connecting the displayed index images of the nodes on the screen according to the acquired arrangement of the communication paths.  
         [0014]     Preferably, the allocating section allocates different display modes to different types of the nodes and memorizes the respective display modes allocated to the respective nodes according to the acquired types of the nodes, and the drawing section draws the index images of the nodes based on the memorized display modes.  
         [0015]     An inventive program is designed for use in a display apparatus having a processor for displaying formation of a network on a screen, the network being composed of a plurality of nodes and being capable of transferring either of musical performance information and an audio signal through communication paths connecting the plurality of the nodes. The inventive program is executable by the processor for causing the display apparatus to perform a method comprising the steps of acquiring a type of each node and an arrangement of the communication paths arranged among the nodes for transmitting and receiving the musical performance information and the audio signal, allocating a display area to each node within the screen according to the acquired type of each node, drawing a plurality of index images indicating the respective nodes on the screen at the display areas allocated to the respective nodes, and drawing lines connecting the displayed index images of the nodes on the screen according to the acquired arrangement of the communication paths.  
         [0016]     In a second aspect of the invention, an inventive display apparatus is designed for use in configuring communication paths in a network of a plurality of nodes for transferring either of musical performance information and an audio signal among the plurality of the nodes. The inventive display apparatus comprises a displaying section that displays a first selection box of a first node on a display screen, the first selection box indicating a series of logical output terminals prepared for the first node, and that also displays a second selection box of a second node on the display screen, the second selection box indicating a series of logical input terminals prepared for the second node, an issuing section that issues a notification to either of the first node or the second node so as to logically establish a communication path between one of the output terminals of the first node and one of the input terminals of the second node, when said one of the output terminals is selected from the first selection box and said one of the input terminals is selected from the second selection box on the display screen, and a drawing section that draws a line connecting between said one of the output terminals and said one of the input terminals on the display screen, such that the drawn line corresponds to the established communication path.  
         [0017]     Preferably, the inventive display apparatus further comprises a detecting section that detects when a number of the output terminals are consecutively selected from the first selection box and one of the input terminals is selected from the second selection box, a determining section responsive to the detecting section for determining whether or not a number of the input terminals corresponding to the selected output terminals are available within a consecutive range of the input terminals including the selected one input terminal, and a decreasing section that decreases the number of the selected output terminals to a number corresponding to an available number of the consecutive input terminals when the result of the determining by the determining section is negative, wherein the issuing section issues the notification to either of the first or second node so as to logically establish communication paths between the decreased number of the consecutive output terminals of the first node and the available number of the consecutive input terminals of the second node.  
         [0018]     An inventive program is designed for use in a display apparatus having a processor for configuring communication paths in a network of a plurality of nodes for transferring either of musical performance information and an audio signal among the plurality of the nodes. The inventive program is executable by the processor for causing the display apparatus to perform a method comprising the steps of displaying a first selection box of a first node on a display screen, the first selection box indicating a series of logical output terminals prepared for the first node, displaying a second selection box of a second node on the display screen, the second selection box indicating a series of logical input terminals prepared for the second node, issuing a notification to either of the first node or the second node so as to logically establish a communication path between one of the output terminals of the first node and one of the input terminals of the second node, when said one of the output terminals is selected from the first selection box and said one of the input terminals is selected from the second selection box on the display screen, and drawing a line connecting between said one of the output terminals and said one of the input terminals on the display screen, such that the drawn line corresponds to the established communication path.  
         [0019]     In a third aspect of the invention, an inventive display apparatus is designed for displaying formation of a network on a screen, the network being composed of a plurality of nodes and being capable of transferring musical performance information and an audio signal through communication paths connecting the plurality of the nodes. The inventive display apparatus comprises an acquiring section that acquires an arrangement of the communication paths arranged among the nodes for transmitting and receiving the musical performance information and the audio signal, an selecting section that selects one of the musical performance information and the audio signal to be presented on the screen, a determining section that determines a group of nodes capable of inputting and outputting the selected one of the musical performance information and the audio signal among the plurality of the nodes involved in the network, and a drawing section that draws index images indicating the respective nodes of the determined group on the screen, and that draws lines connecting the displayed index images of the nodes on the screen according to the acquired arrangement of the communication paths, such that the drawn lines correspond to the communication paths transferring the selected one of the musical performance information and the audio signal.  
         [0020]     Preferably, the acquiring section also acquires a type of each node involved in the network, and an allocating section allocates a specific display mode to each node according to the acquired type of each node such that the drawing section draws the index image of each node in the specific display mode allocated to each node independently of whether the musical performance information is selected or the audio signal is selected.  
         [0021]     An inventive program is designed for use in a display apparatus having a processor for displaying formation of a network on a screen, the network being composed of a plurality of nodes and being capable of transferring musical performance information and an audio signal through communication paths connecting the plurality of the nodes. The inventive program is executable by the processor for causing the display apparatus to perform a method comprising the steps of acquiring an arrangement of the communication paths arranged among the nodes for transmitting and receiving the musical performance information and the audio signal, selecting one of the musical performance information and the audio signal to be presented on the screen, determining a group of nodes capable of inputting and outputting the selected one of the musical performance information and the audio signal among the plurality of the nodes involved in the network, drawing index images indicating the respective nodes of the determined group on the screen, and drawing lines connecting the displayed index images of the nodes on the screen according to the acquired arrangement of the communication paths, such that the drawn lines correspond to the communication paths transferring the selected one of the musical performance information and the audio signal.  
         [0022]     As mentioned above, the present invention allocates the display area for each type of nodes to display a node index image and to display a connection line between the node index images. The present invention makes it possible to intuitively and fast recognize the connection relationship between nodes. Further, the present invention makes it possible to fast change the connection relationship according to the construction that selects and connects terminals in the first and second selection boxes. Moreover, the present invention draws, in a display screen, a plurality of node index images and connection lines connecting the node index images with each other based on a communication path of a selected signal. The present invention can uniformly configure the display state independently of signal types. The present invention makes it possible to intuitively and fast recognize the connection relationship between nodes. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0023]      FIG. 1  is a block diagram showing a musical sound signal editing system as an embodiment of the present invention.  
         [0024]      FIG. 2  is a block diagram showing a personal computer involved in the system.  
         [0025]     FIGS.  3 ( a ) through  3 ( e ) are diagrams showing data structures according to the embodiment.  
         [0026]      FIG. 4  is a diagram showing a display example of a patch bay window.  
         [0027]      FIG. 5  is a flowchart showing the initialization routine.  
         [0028]      FIG. 6  is a flowchart showing the screen changeover event process routine.  
         [0029]      FIG. 7  is a flowchart showing the node addition event process routine.  
         [0030]      FIG. 8  is a flowchart showing the display change event process routine.  
         [0031]      FIG. 9  is a flowchart showing the communication path change event process routine.  
         [0032]      FIG. 10  is a diagram showing a display example of dialog boxes.  
         [0033]      FIG. 11  is a flowchart showing the connection relationship establishment event routine. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
     1. Hardware Configuration of an Embodiment  
       [0034]     With reference to  FIG. 1 , the following describes the configuration of a musical sound signal editing system as an embodiment of the present invention.  
         [0035]     In  FIG. 1 , the reference numeral  40  denotes a personal computer;  42  denotes a mixer; and  44  and  46  denote musical instruments constituting nodes on a music LAN. Each node is provided with at least two IEEE1394 ports which are connected in a daisy chain configuration. In addition to the nodes  40  through  46  in  FIG. 1 , it is assumed that a plurality of nodes are likewise connected to the music LAN. All the nodes are classified into any of “categories” such as “computer”, “mixer”, “musical instrument”, “interface”, and “unknown” according to their types.  
         [0036]     The configuration of the personal computer  40  is described with reference to  FIG. 2 . The reference numeral  2  denotes a communication interface and is provided with the above-mentioned two IEEE1394 ports and MIDI terminals. The reference numeral  4  denotes an input apparatus comprising a keyboard, a mouse, and the like for character input. The reference numeral  8  denotes a display that displays various information for users. The reference numeral  10  denotes a CPU that controls the other components via a bus  16  based on a program to be described. The reference numeral  12  denotes ROM that stores an initial program loader and the like. The reference numeral  18  denotes a removable disk drive that reads data from or writes data to a removable disk  20  such as CD-ROM and MO. The reference numeral  24  denotes a hard disk that stores an operating system, music LAN control software, musical performance information typically MIDI data, audio signals Typically PCM signal, and the like. The reference numeral  30  denotes RAM used as work memory for the CPU  10 .  
       2. Display Screen  
       [0037]     Referring now to  FIG. 4 , the following describes a display example of a patchbay window  200  displayed by music LAN control software on a display  8 . Unlike the configuration in  FIG. 1 , the example in  FIG. 4  assumes one node belonging to each of the categories “computer”, “mixer”, “musical instrument”, and “interface”. In  FIG. 4 , the reference numeral  202  denotes a menu bar and  204  denotes a toolbar. The toolbar  204  is provided with an audio button  206  and a MIDI button  208 . The button  206  or  208  selectively turns on each time it is clicked by the mouse. Either button allows selection from “audio” and “MIDI” as the signal type whose connection state should be displayed in a field section  209 . The example in  FIG. 4  shows that the audio button  206  turns on. Accordingly, the field section  209  shows the connection state of audio signals.  
         [0038]     The reference numerals  210 ,  220 ,  230 , and  240  represent approximately rectangular node blocks that are displayed correspondingly to respective nodes on the music LAN. According to the corresponding node categories, the node blocks are assigned with predetermined disposal positions in the field section  209  and drawing colors (background colors in the rectangle). That is, the node block (e.g., node block  240 ) belonging to “computer” is displayed to the “left” and has the drawing color of “green”. The node block (e.g., node block  210 ) belonging to “mixer” is displayed to the “top” and has the drawing color of “blue”. The node block (e.g., node block  23 . 0 ) belonging to “musical instrument” is displayed to the “bottom” and has the drawing color of “orange”. The node block (e.g., node block  220 ) belonging to “interface” is displayed to the “right” and has the drawing color of “red”. Though not shown in  FIG. 4 , the node block belonging to “unknown” is displayed at the “center” and has the drawing color of “gray”. When there is a plurality of node blocks to be displayed in the same disposal position, the node blocks are displayed so as not to overlap with each other. When the disposal position is “top” or “bottom”, node blocks are disposed from the left to the right. When the disposal position is “right” or “left”, node blocks are disposed from the top to the bottom.  
         [0039]     Within the node block  210 , the reference numeral  212  denotes an icon display section that displays an icon to represent the node feature (category). The reference numeral  214  denotes a node name display section that displays a name of the node (e.g., product name). The reference numeral  216  denotes an input terminal section that displays terminal images  216   a  so as to protrude outward. The terminal images  216   a  have the same number of terminals available for the input terminal of the corresponding node. The reference numeral  218  denotes an output terminal section that displays terminal images so as to protrude outward like the input terminal section  216 . The terminal images have the same number of terminals available for the output terminal of the corresponding node.  
         [0040]     The following describes the “number of available terminals”. The product performance limits the number of input/output terminals for nodes. Users do not always need to use the maximum number of terminals. If the system displays the maximum number of terminal images corresponding to the performance of each node, the size of the patchbay window  200  increases, degrading the operability. To solve this problem, a user can define the “number of available terminals” actually used for each node, signal type, and input/output up to the maximum number of terminals. The window  200  displays the same number of terminal images as the number of available terminals. Like the node block  210 , the node blocks  220 ,  230 , and  240  also display icon display sections  222 ,  232 , and  242 , node name display sections  224 ,  234 , and  244 , input terminal sections  226 ,  236 , and  246 , and output terminal sections  228 ,  238 , and  248 .  
         [0041]     The reference numeral  250  denotes a single-connection line. It is drawn so as to connect one output terminal image of a given node with one input terminal image of another node. The single-connection line is drawn in the same drawing color as that of the node corresponding to the output node. According to the example of  FIG. 4 , the single-connection line  250  is drawn so as to connect one output terminal image of the node block  230  with one input terminal image of the node block  220 . Accordingly, the single-connection line  250  uses the same drawing color “orange” as that of the node block  230 .  
         [0042]     The reference numeral  260  denotes a multi-connection line. It is drawn so as to connect a plurality of contiguous output terminal images for a given node with the same number of input terminal images for another node. Rectangular terminal collectors  262  and  264  are drawn at both ends of the multi-connection line so that one side of each terminal collector connects to the input/output terminal images. The multi-connection line is also drawn in the same drawing color as that of the node corresponding to the plurality of output terminals. According to the example in  FIG. 4 , the multi-connection line  260  is drawn so as to connect all output terminal images of the node block  240  with all input terminal images of the node block  210 . Accordingly, the multi-connection line  260  uses the same drawing color “green” as that of the node block  240 . Likewise, the reference numeral  270  denotes a multi-connection line whose both ends are provided with terminal collectors  272  and  274 . The multi-connection line  270  is drawn so as to connect all output terminal images for the node block  210  with the same number of input terminal images for the node block  240 . The reference numeral  280  denotes a rectangular cursor that is drawn along the inside of the node block to be operated currently. The node blocks and the connection states in the patchbay window  200  are displayed so as to correspond to the contents of information stored in a display information table and a communication path information table (to be described).  
       3. Data Structures  
       [0043]     The following describes structures of various data used by the music LAN control software. In  FIG. 3 ( a ), the reference numeral  50  denotes an ID table comprising a model ID column  52  and a category column  54 . The model ID column  52  stores a unique model ID allocated to a model number (model) of each product that can be a node on the music LAN. The category column  54  stores the “category” to which the product belongs. The “category” to be stored is any of “computer”, “mixer”, “musical instrument”, and “I/O (input/output device)”. When the ID table  50  does not store a model, its category is assumed to be “unknown”.  
         [0044]     In  FIG. 3 ( b ), the reference numeral  60  denotes a category table that stores default display states of the above-mentioned “five” types of categories. The category table  60  comprises a category column  62  to store the categories; a disposal position column  64  to specify default disposal positions of the categories; and a drawing color column  66  to specify default drawing colors of the categories. As mentioned above with reference to  FIG. 4 , the contents of the category table  60  in  FIG. 3  define disposal positions and drawing colors of the categories. A user can change the table contents to freely configure the default disposal positions and drawing colors of the respective categories.  
         [0045]     In  FIG. 3 ( c ), the reference numeral  70  denotes a display information table that stores information to specify display states of the nodes in the patchbay window  200 . The reference numeral  72  denotes a node ID column that stores node IDs, i.e., unique identification numbers assigned to the nodes. The reference numeral  74  denotes a model ID column that stores model IDs for the nodes. The reference numeral  76  denotes a disposal position column and  78  denotes a drawing color column. These columns store the same contents as those of the disposal position column  64  and the drawing color column  66 . As mentioned above, the category table  60  specifies the default disposal positions and drawing colors for the categories. Editing the contents of the display information table  70  makes it possible to provide the respective nodes with disposal positions and drawing colors different from the default ones.  FIG. 3  shows an example of editing the disposal position of the node with node ID “02” and the drawing color of the node with node ID “04”. The reference numerals  80  through  86  denote columns for the number of available terminals. These columns store the number of available terminals corresponding to MIDI input terminals, MIDI output terminals, audio input terminals, and audio output terminals.  
         [0046]     In  FIG. 3 ( d ), the reference numeral  90  denotes a MIDI communication path information table. Its communication origin column  92  stores terminal specification information that specifies MIDI output terminals for the nodes. The terminal specification information has the format of “(01)(MIDI-OUT)(1)( . . . )” as shown at the beginning of the communication origin column  92 , for example. Of this character string, the beginning “(01)” specifies the corresponding node ID. The succeeding “(MIDI-OUT)” specifies the terminal type (any one of MIDI input, MIDI output, audio input, and audio output). In the MIDI communication path information table  90 , the communication origin column  92  contains “(MIDI-OUT)” (MIDI output) for all the terminal types. The succeeding “(1)” specifies a terminal number in the specified terminal type for the specified terminal node. The succeeding “( . . . )” specifies the other additional information. The reference numeral  94  denotes a communication destination column. Like the communication origin column  92 , the communication destination column  94  stores terminal specification information that specifies MIDI input terminals for the nodes.  
         [0047]     Let us assume that the terminal specification information in the communication origin column  92  and the terminal specification information in the communication destination column  94  are disposed on the same row. This state signifies that terminals specified by both information are “connected”. Let us assume that one of the communication origin column  92  and the communication destination column  94  stores the terminal specification information and the other column is blank. This state signifies that the terminal associated with the terminal specification information is not connected to any other terminals. In this manner, the MIDI communication path information table  90  stores all connection states between MIDI terminals. In  FIG. 3 ( e ), the reference numeral  100  denotes an audio communication path information table having a data format similar to that of the table  90 . The audio communication path information table  100  uses the terminal specification information stored in the communication origin column  102  and the communication destination column  104  to store all connection states between audio terminals.  
       4. Operations of the Embodiment  
     4.1 Initialization  
       [0048]     The following describes operations of the embodiment. As shown in  FIG. 1 , LAN connectors of the respective nodes are connected in a daisy chain configuration. When each node is powered on, the music LAN is stepwise formed between the activated models. Finally, the music LAN is formed using all the devices as nodes. The music LAN (one musical sound editing system) provides each node with a unique node ID. At this time, each node may store initialization data that specifies the connection state between the node&#39;s terminal and another node&#39;s terminal. When the initialization data is stored, the node negotiates for the connection state with another node as a connection destination. When the destination node stores initialization data that specifies the same connection state, both terminals are configured to the connection state as specified in the initialization data. On the other hand, the node&#39;s initialization data may contradict the destination node&#39;s initialization data. Alternatively, the destination node may be still inactive. In these cases, the initialization data is ignored.  
         [0049]     When the music LAN control software starts in the personal computer  40 , an initialization routine in  FIG. 5  is activated. When the process proceeds to step SP 2  in  FIG. 5 , the process acquires the contents of all nodes belonging to the music LAN. That is, the contents include the nodes&#39; node IDs, model IDs, communication path information (e.g., connection relationship established by the initialization data), and the maximum number of input/output terminals for MIDI and audio signals. At step SP 4 , the process determines the nodes&#39; categories from the model ID table  50  based on the acquired model IDs. The process determines the nodes&#39; display states (disposal positions and drawing colors) based on the determined categories and the contents of the category table  60 .  
         [0050]     At step SP 6 , the process creates the display information table  70  based on the nodes&#39; categories and the determined display states. A disposal position column  76  and a drawing color column  78  have contents as specified by the model ID table  50  and the category table  60 . The columns  80  through  86  for the numbers of available terminals store the maximum numbers of input/output terminals of the nodes for MIDI and audio signals. At step SP 8 , the process creates the MIDI communication path information table  90  and the audio communication path information table  100  based on the communication path information acquired at step SP 2 . At step SP 10 , the process determines the signal type (audio or MIDI) to be displayed on the initial screen of the patchbay window  200 . A user can predetermine the signal type to be displayed on the initial screen using a configuration file, for example.  
         [0051]     At step SP 12 , the process reads the communication path information for the determined signal type from the table  90  or  100 . At step SP 14 , the process reads the display information (disposal position, drawing color, and the maximum number of input/output terminals) about each node from the display information table  70 . The maximum number of input/output terminals depends on the signal type. The disposal position and the drawing color are commonly applied irrespectively of the signal type. In this manner, the embodiment can display communication paths of the MIDI or audio signals using a consistent screen for both on the patchbay window  200 .  
         [0052]     At step SP 16 , the process creates the patchbay window  200  based on the read communication path information and the display information and displays the window on the display  8 . Some nodes can only handle either MIDI or audio signals. In this case, the window  200  displays only information about the nodes that can handle the current signal type. The window  200  does not display information about nodes that cannot handle the signal type concerned.  
       4.2 Screen Changeover Event Process  
       [0053]     In the patchbay window  200 , mouse-clicking on the audio button  206  or the MIDI button  208  activates a screen changeover event process routine in  FIG. 6 . At step SP 20 , the process determines the signal type “MIDI signal” or “audio signal” to be displayed in the window  200  according to the clicked button. At step SP 22 , the process reads the communication path information about the MIDI communication path information table  90  or the audio communication path information table  100  corresponding to the determined signal type. At step SP 24 , the process reads the display information about the node to be displayed from the display information table  70 . The “node to be displayed” signifies a node capable of communicating signals of the determined signal type. The “node to be displayed” applies to all nodes indicating a value greater than or equal to “1” for at least one of the number of available input terminals and the number of available output terminals associated with the signal type. At step SP 26 , the process updates the display state in the field section  209  based on the read communication path information and the display information so as to draw a communication path corresponding to the determined signal type.  
       4.3 Node Addition Event Process  
       [0054]     The music LAN can increase nodes during operation by means of “hot plug-in”. When a new node is added, a new node ID is assigned to the added node. This event is notified to the other nodes. The new node negotiates for the connection state with the other node specified as a connection destination based on initialization data stored in the new node. When the new node and the other node store the initialization data that specifies the same connection state, both node terminals are configured to the connection state as specified in the initialization data.  
         [0055]     When the new node completes the initialization process, the music LAN control software running on the personal computer  40  detects addition of the new node. The personal computer  40  starts a node addition event process routine as shown in  FIG. 7 . At step SP 30  in  FIG. 7 , the process confirms the contents of the new node. That is, the process acquires the new node&#39;s node ID, model ID, communication path information, and the maximum number of input/output terminals for MIDI and audio signals. At step SP 32 , the process determines a category for the new node from the model ID table  50  based on the acquired model ID. Based on the determined category and the contents of the category table  60 , the process determines the display state (disposal position and drawing color) of the new node. At step SP 34 , the process adds a record (row) corresponding to the now node to the display information table  70 . The record stores the category, display state, and the maximum number of input/output terminals for various signals (i.e., initial values for the number of available terminals).  
         [0056]     At step SP 36 , the process updates the contents of the MIDI communication path information table  90  and the audio communication path information table  100  so as to add the communication path information concerning the new node. At step SP 40 , the process determines whether or not the new node can handle the signal type (MIDI or audio) currently displayed in the window  200 . When it is determined to be “NO”, the routine immediately terminates without updating the window  200 . The reason follows. The window  200  displays only the information related to nodes that can handle the currently displayed signal type. Adding a node incapable of handling the signal type causes no change in the display contents of the window  200 .  
         [0057]     When it is determined to be “YES” at step SP 40 , the process proceeds to step SP 42  to read the communication path information corresponding to the signal type displayed in the window  200  from the table  90  or  100 . At step SP 44 , the process reads the display information about the new node. At step SP 46 , the process updates the display contents of the window  200  based on the read communication path information and the display information. Corresponding to the new node, a node block is drawn at a position specified in the disposal position column  76  of the display information table  70  in a drawing color specified in the drawing color column  78 . When any terminal of the new node is connected to a terminal of the other node, a corresponding connection line is drawn.  
       4.4 Display Change Event Process  
       [0058]     The user may perform an operation to change the disposal position or the drawing color for any node. Alternatively, the user may perform an operation to change the number of available terminals up to the maximum number of input/output terminals. In this manner, performing an operation to change the display state of the window  200  starts a display change event process routine as shown in  FIG. 8 . At step SP 50  in  FIG. 8 , the process updates the contents of the display information table  70  based on the contents of the user-specified operation. At step SP 52 , the process reads the communication path information table  90  or  100  corresponding to the displayed signal type.  
         [0059]     At step SP 54 , the process reads the contents of the display information table  70 . At step SP 56 , the process updates the display contents of the window  200  based on the read communication path information and the display information. That is, the node blocks are redrawn with disposal positions and drawing colors based on the contents of the display information table  70 . Changing the number of available terminals for a given node also changes the node block size corresponding to the number of available terminals after the change. Each connection line is also redrawn so as to follow the change in the display state of the node block.  
       4.5 Changing the Connection Relationship  
     4.5.1 Adding a Single Connection  
       [0060]     The user can edit the connection relationship between terminals using the patchbay window  200 . To add a new single connection, the user clicks on the output terminal section containing an output terminal associated with the connection. This operation displays a dialog box for selecting an output terminal near the output terminal section. In  FIG. 10 , for example, mouse-clicking on an output terminal section  248  of a node block  240  displays a dialog box  310  near the output terminal section  248 . Within the dialog box  310 , the reference numeral  312  denotes a title bar. The title bar displays “Output” to indicate that the dialog box is associated with output terminals. The drawing color of the title bar  312  matches the drawing color (green) of the corresponding node block  240 . In this manner, the user can identify the dialog box  310  at a glance to determine to which category the node block belongs.  
         [0061]     The reference numeral  314  denotes a button. When displayed, one button  314  corresponds to one output terminal belonging to the clicked output terminal section. The reference numeral  316  denotes a connection situation column indicating whether or not the output terminals are connected to any of the input terminals. The reference numeral  318  denotes a scroll bar that scrolls the buttons  314  and the connection situation column  316  up and down. Mouse-clicking on any of the buttons  314  selects the corresponding output terminal. The user cannot select an output terminal already connected to any of the input terminals. Such output terminal is ignored if clicked. To connect an input terminal to such output terminal, the user needs to previously perform a “connection removal” process to be described.  
         [0062]     Likewise, mouse-clicking on the input terminal section containing input terminals for connection displays a dialog box for selecting an input terminal near the input terminal section. In  FIG. 10 , for example, mouse-click on an input terminal section  226  for a node block  220  displays a dialog box  320  near the input terminal section  226 . Within the dialog box  320 , the reference numeral  322  denotes a title bar. The title bar displays “Input” to indicate that the dialog box is associated with input terminals. The drawing color of the title bar  322  matches the drawing color (red) of the corresponding node block  220 .  
         [0063]     The reference numeral  324  denotes a button. When displayed, one button  324  corresponds to one input terminal belonging to the clicked input terminal section. The reference numeral  326  denotes a connection situation column indicating whether or not the input terminals are connected to any of the output terminals. The reference numeral  328  denotes a scroll bar that scrolls the buttons  324  and the connection situation column  326  up and down. Mouse-clicking on any of the buttons  324  selects the corresponding input terminal. The user cannot select an input terminal already connected to any of the output terminals. Such input terminal is ignored if clicked. To connect an output terminal to such input terminal, the user needs to previously perform the “connection removal” process to be described.  
         [0064]     In this manner, selecting one output terminal and then one input terminal starts a connection relationship establishment event routine in  FIG. 11 . At step SP 70  in  FIG. 70 , the process determines whether or not the specified connection is “single connection”. When one input terminal and one output terminal are selected as mentioned above, the connection is “single connection” and the result is assumed to be “YES”. The process proceeds to step SP 72 . The process updates the contents of the communication path information table  90  or  100  so as to connect the selected terminals with each other. At step SP 73 , the process notifies the changed contents of the connection state to a node having the output terminal and the input terminal concerned. The notified node changes the connection state. At step SP 74 , the process closes the dialog boxes  310  and  320  to terminate the routine.  
       4.5.2 Adding a Plurality of Connections  
       [0065]     Using the dialog box  310 , the user can select a plurality of contiguous output terminals. For example, the user mouse-clicks on the first output terminal in a range of output terminals to be selected. Holding the “SHIFT” key on the keyboard, the user mouse-clicks on the last output terminal in the range of output terminals. These operations simultaneously select a range of output terminals to be selected. When any one of input terminals is selected in the dialog box  320 , the connection relationship establishment event routine ( FIG. 11 ) starts. In this case, a plurality of output terminals are selected. The result is assumed to be “NO” at step SP 70 . The process proceeds to step SP 76 .  
         [0066]     The process determines whether or not to be able to ensure as many sequentially numbered input terminals as the selected output terminals in ascending order of the terminal numbers starting from the clicked input terminal. There may be a case where a value “(the number of the clicked input terminal)+(the number of selected output terminals)−1” exceeds the number of available terminals for the input terminal section. Alternatively, there may be a case where any of these input terminals is already used for the other connections. In such cases, it is assumed to be “incapable of ensuring input terminals” (NO). Otherwise, it is assumed to be “YES” at step SP 76 . The process proceeds to step SP 72 . The process updates the contents of the communication path information tables  90  and  100  so that the connection relationship is sequentially provided for the selected output terminals and the same number of input terminals starting from the clicked input terminal. Like the case of the single-connection line, at step SP 73 , the process notifies the changed contents of the connection state to nodes having the output terminals and the input terminals concerned. Both nodes change the connection states.  
         [0067]     When it is determined to be “NO” at step SP 76 , the process proceeds to step SP 78 . The process notifies that no input terminal is ensured. The display  8  displays a confirmation dialog box containing a message prompting the user whether or not to establish the connection within the possible range, the “OK” button, and the “Cancel” button. The process waits until either button is operated. When the “OK” or “Cancel” button is operated, the process proceeds to step SP 80  to determine whether or not the “Cancel” button is pressed. When the “Cancel” button is pressed, the process proceeds to step SP 74 . The process closes the confirmation dialog box and the dialog boxes  310  and  320  without changing the connection relationship between terminals.  
         [0068]     When the “OK” button is pressed in the confirmation dialog box, the process proceeds to step SP 82 . The process modifies (narrows) the range of selectable output terminals to a range capable of ensuring input terminals. At step SP 72 , the process updates the contents of the communication path information tables  90  and  100  so that the connection relationship is sequentially provided for the output terminals within the modified selection range and the same number of input terminals starting from the clicked input terminal. At step SP 73 , the process notifies the changed contents of the connection state to nodes having the output terminals and the input terminals concerned. The notified nodes update the connection states. At step SP 74 , the process closes all dialog boxes.  
       4.5.3 Removing a Connection  
       [0069]     When the user mouse-clicks any of single-connection lines or multi-connection lines displayed in the window  200 , the clicked connection line is indicated with a dotted line. Pressing the “DELETE” key on the keyboard updates the contents of the communication path information table  90  or  100  so as to disconnect all input/output terminals associated with the connection line.  
       4.6 Communication Path Change Event Process  
       [0070]     As mentioned above, establishing or removing a connection between terminals starts a communication path change event process routine as shown in  FIG. 9 . At step SP 62  in  FIG. 9 , the process reads the communication path information table  90  or  100  corresponding to the displayed signal type. At step SP 64 , the process reads the contents of the display information table  70 . At step SP 66 , the process updates the display contents of the window  200  based on the read communication path information and the display information. When a new connection is added, the corresponding connection line is added to the window  200 . When a connection is removed, the corresponding connection line is deleted.  
       5. Modifications  
       [0071]     The present invention is not limited to the above-mentioned embodiment and can be variously modified as will be described below.  
         [0072]     (1) The embodiment provides default disposal positions such as “top”, “bottom”, “left”, “right”, and “center” corresponding to the node categories. Of course, the embodiment should not limit the method of defining disposal positions (display areas) for nodes in the window  200 . The present invention can define various information data formats other than the embodiment.  
         [0073]     (2) The embodiment uses “drawing color” as “display mode” to be specified for the node category. The present invention may use display modes other than the “drawing color” such as shape, pattern, and size to distinguish between categories.  
         [0074]     (3) According to the embodiment, the patchbay window  200  displays only the nodes that can input or output signal types selected by the buttons  206  and  208 . The patchbay window  200  may display all nodes independently of selection states of the signal types. In this case, it may be preferable to change the display mode in such a manner as to gray a node incapable of inputting or outputting the selected signal type.  
         [0075]     (4) The embodiment controls various indications and nodes using the music LAN control software running on the personal computer. It is also possible to distribute only the control software stored in recording media such as CD-ROM and flexible disks or by means of a transmission path.