EP0431061A4 - Training method and apparatus with audio and digital signals recording and play back - Google Patents
Training method and apparatus with audio and digital signals recording and play backInfo
- Publication number
- EP0431061A4 EP0431061A4 EP19890910288 EP89910288A EP0431061A4 EP 0431061 A4 EP0431061 A4 EP 0431061A4 EP 19890910288 EP19890910288 EP 19890910288 EP 89910288 A EP89910288 A EP 89910288A EP 0431061 A4 EP0431061 A4 EP 0431061A4
- Authority
- EP
- European Patent Office
- Prior art keywords
- signals
- recording
- computer
- audio
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000012549 training Methods 0.000 title description 19
- 230000006870 function Effects 0.000 claims description 52
- 230000005236 sound signal Effects 0.000 claims description 37
- 239000003990 capacitor Substances 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 22
- 230000000694 effects Effects 0.000 claims description 10
- 230000008878 coupling Effects 0.000 claims description 9
- 238000010168 coupling process Methods 0.000 claims description 9
- 238000005859 coupling reaction Methods 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 4
- 238000002156 mixing Methods 0.000 claims description 4
- 230000002441 reversible effect Effects 0.000 claims description 4
- 238000007599 discharging Methods 0.000 claims 2
- 230000000903 blocking effect Effects 0.000 claims 1
- 238000010998 test method Methods 0.000 claims 1
- 239000000872 buffer Substances 0.000 description 31
- 238000010586 diagram Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 230000005291 magnetic effect Effects 0.000 description 9
- 230000002457 bidirectional effect Effects 0.000 description 8
- 230000001934 delay Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000009432 framing Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005355 Hall effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000008054 signal transmission Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- GPRLSGONYQIRFK-MNYXATJNSA-N triton Chemical compound [3H+] GPRLSGONYQIRFK-MNYXATJNSA-N 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002592 echocardiography Methods 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 238000002386 leaching Methods 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/04—Electrically-operated educational appliances with audible presentation of the material to be studied
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/0053—Computers, e.g. programming
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B15/00—Driving, starting or stopping record carriers of filamentary or web form; Driving both such record carriers and heads; Guiding such record carriers or containers therefor; Control thereof; Control of operating function
- G11B15/02—Control of operating function, e.g. switching from recording to reproducing
- G11B15/026—Control of operating function, e.g. switching from recording to reproducing by using processor, e.g. microcomputer
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10009—Improvement or modification of read or write signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/22—Signal processing not specific to the method of recording or reproducing; Circuits therefor for reducing distortions
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B31/00—Arrangements for the associated working of recording or reproducing apparatus with related apparatus
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/008—Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires
- G11B5/00813—Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires magnetic tapes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/02—Recording, reproducing, or erasing methods; Read, write or erase circuits therefor
- G11B5/027—Analogue recording
- G11B5/035—Equalising
Definitions
- the present invention relates generally, as is indicated, to a training method and to an apparatus for use in such training and other purposes and, more particularly, to such an apparatus in which both audio and digital signals or information representing the same are able to be recorded in and played back from a medium.
- a floppy disk containing certain programmed learning features would be installed in a computer and would be operated somewhat in conjunction with a separate audio tape recorder. The trainee would listen to the audio tape and would then operate the computer according to that which was learned from the tape and according to the programmed materials on the computer disk.
- a customer would lease a digital/audio tape player that was to be connected to a monitor. A cassette tape was furnished to the customer by the manufacturer of the digital/audio tape player. The tape had both digital and audio information stored on it. When the tape was played in the digital/audio player, a user could see on the monitor certain information and could listen to audio information simultaneously describing the displayed information; however, such player was unable to record information.
- the present invention automates and improves the training in the use of computer equipment, software, and the like and also may be used in conjunction with other functions, as will be described in greater detail below.
- the training method of the present invention enables a trainer to operate a computer while orally describing what operational steps he or she is carrying out. For example, the operator may describe why the carriage return key on the keyboard is pressed at a certain time in the sequence of operation of software and the computer using such software.
- the trainer may describe which lines in a form displayed on the monitor are to be filled in by a computer operator/employee, when to fill in those lines, how to fill in those lines, what information to place there, etc. While the trainer is describing such information, the trainer also may type in such information at the keyboard. The results of such typing or data entry into the keyboard, i.e., that which would be displayed on the monitor as a result, is recorded simultaneously with the oral explanation of the trainer.
- a trainee may play the tape or other medium in which the digital and audio information had been recorded by the trainer in order to see on the monitor and to listen to the oral explanation that which had been recorded.
- the redundancy of providing inputs to both the senses of sight and hearing to the trainee enhances the training effectiveness.
- the trainee also may type on the keyboard to practice the lesson just demonstrated, thus adding a further redundancy of the sense of touch.
- the trainee may replay the tape several times until the trainee feels comfortable having mastered the particular lesson concerning the specific use of the computer and software, for example.
- the method and apparatus of the invention are extremely versatile.
- One person familiar with specific software can make a training tape to teach use of that software, which can be used to train many trainees.
- a new training tape can be made conveniently.
- the time required for the trainer to do training is appreciably reduced over personal face-to-face training requirements.
- the trainee can train at his/her own pace and convenience.
- the invention may be used in ways other than training.
- One example includes making presentations at trade shows to customers and the like to demonstrate the operation of certain equipment by providing digital signals (previously recorded) to control and to operate such equipment while simultaneously providing synchronized oral explanation of such operation.
- Another example of a use of the invention is for displaying and describing simultaneously a spreadsheet and information therein, database information, graphical information, etc.
- the invention may be used for testing purposes to examine the proficiency of a trainee, student, employee, etc., in the use of certain equipment and software by recording an operator's operative steps with a computer while recording the operator's oral explanation of such operation.
- the digital and audio record/play apparatus of the present invention includes a recording system for simultaneously recording in a medium both digital information and audio information and a play system for simultaneously playing from the medium both the digital information and the audio information. Since the digital information and the audio information are recorded simultaneously, accurate synchronization is achieved; therefore, oral explanation of what is being displayed on the monitor as a function of the digital information received by the monitor from the play system will properly coincide.
- the medium in which the digital information and audio information are recorded is magnetic tape, and conventional two . track tape head, one track for the audio information and one track for the digital information, are used to record and to play back information with respect to the magnetic tape as the heads of the conventional cassette tape recorder would function for recording and playing audio information, for example.
- Other media and recording/playing devices also may be used, though, consistent with the invention.
- Circuitry according to the invention provides the proper form of signal representing the audio information and the digital information for recording by the tape head. Further, playback circuitry also is provided for receiving from such respective tape head information previously recorded on the tape for amplifying and/or otherwise decoding and using such information and/or signals representing the same.
- the digital and audio record/play apparatus of the present invention has a number of functions, including those of recording, playing, stopping the tape (if desired, also marking the tape with a stop code when recording, so when subsequently playing back the tape it will automatically stop when a stop code is encountered), pausing, fast forwarding of the tape, rewinding the tape, duplicating a tape, and various other level adjusting and displaying functions.
- the invention is used, among other things, for recording and playing audio information.
- the invention also is used to record and to play back digital information.
- An exemplary definition of audio information is that which represents an audio signal and can be recorded in a medium.
- An audio signal is an electrical signal that is generally AC in character with varying frequency and amplitude characteristics, represents sound, and can be amplified and played as sound.
- An exemplary definition of digital information is that which represents logic 1's and logic 0's (or other logic convention and/or signal levels) and can be recorded in a medium.
- a digital signal is a logic 1 or logic 0 (or other logic convention or signal levels) or may be an assemblage of logic 1's and logic 0's, etc.
- the digital and audio record/play apparatus of the present invention is particularly useful in an environment in which a computer terminal, sometimes referred to as a dumb terminal or a semi-intelligent terminal, is separate from the main computer.
- the apparatus of the invention then, preferably is coupled between the terminal and the computer.
- reference to the computer indicates the separate computer as described and reference to the terminal indicates that device having a monitor and keyboard.
- the terminal may be used to enter commands, data, etc., for conveyance to the computer by electrical connection between the terminal and the computer; and the monitor may be used to display signals that are transmitted from the computer. Communications between such a computer and a terminal usually is carried out in asynchronous fashion.
- the invention may be used in virtually any system in which asynchronous communications is carried out.
- apparatus embodying principles of the invention may be used in other systems with appropriate modifications as will be evident to those having ordinary skill in the art.
- Fig. 1 is a schematic illustration of a digital and audio recording and play back apparatus of the invention connected between a computer and a terminal;
- Fig IA is a schematic illustration of the invention, similar to Fig. 1, used with a personal computer;
- Fig. 2 is a schematic block diagram of the audio record and play system of the invention
- Fig. 3 is a schematic block diagram of the digital record and play system of the invention.
- Fig. 4 is a schematic diagram of a power supply
- Fig. 5 is a schematic circuit diagram of the push-button input circuitry for the apparatus of the invention
- Fig. 6 is a schematic block diagram of a motor control circuit to control the tape drive motor, capstan motor, and associated apparatus for the tape drive and record/play heads in accordance with the invention
- Fig. 7 is a schematic block diagram of the tape head control circuitry for the invention.
- Fig. 8 is a schematic circuit diagram of the audio record/play circuit
- Fig. 9 is a schematic circuit diagram of the digital record/play circuit (a portion of the digital record/play circuit also being shown in Fig. 10B mentioned below);
- Figs. 10A and 10B are collectively the electronic data processing and control circuitry of the apparatus of the invention.
- Figs. 11, 12 and 13 are schematic illustrations representing the flow of data and operation of asynchronous data ports showing their interconnections with each other and with the computer and terminal during record mode, play mode,, and pause, fast forward, rewind, and stop modes;
- Figs. 14 through 24 present a computer program flow chart diagram illustrating a shorthand representation of a computer program for use in overall operation and control of the apparatus of the invention as illustrated in Figs. 1 through 13;
- Fig. 25 is the first of a number of drawings depicting a modified embodiment of the apparatus of the invention, and, in particular, shows the output tape mechanism control circuitry;
- Fig. 26 is a schematic illustration of the front panel or control panel of the modified apparatus.
- Fig. 27 is a schematic illustration of an auxiliary input connector for the modified apparatus
- Fig. 28 is a schematic circuit illustration of the digital record and play circuitry
- Fig. 29 is a schematic circuit illustration of the clamp and filter, leader detector and FSK decoder circuits of Fig. 28;
- Fig. 30 is a schematic circuit illustration of the audio record and play circuitry of the modified apparatus
- Fig. 31 is a schematic circuit illustration of the digital control circuit for the modified apparatus
- Fig. 32 is a schematic circuit illustration of the tape mechanism driving circuitry and the tape motion sensing tachometer circuitry used in the digital control circuit for the modified apparatus;
- a digital and audio record and play apparatus in accordance with the present invention is indicated at 10.
- the apparatus 10 is connected between a terminal 11 and a computer 12.
- Fig. 1A the apparatus 10 is coupled to a personal computer, hereinafter sometimes referred to as a PC or as a microcomputer; and specific use and operation of the apparatus with a PC will be described below with reference to the figures following ' Fig. 24.
- a personal computer hereinafter sometimes referred to as a PC or as a microcomputer; and specific use and operation of the apparatus with a PC will be described below with reference to the figures following ' Fig. 24.
- the terminal 11 includes a monitor 13 and a keyboard 14 of conventional type.
- the terminal 11 may be a dumb terminal, a semi-intelligent terminal, or even a microcomputer or the like.
- the terminal 11 is a dumb terminal that requires interconnection with a computer 12 for full operation. More specifically, the terminal 11 would be used to enter commands, data or the like via the keyboard 14, and those commands, data, etc., would be transmitted to the computer 12. In response to receiving such commands, data, etc., from the terminal 11, the computer 12 would transmit data or information to the terminal 11 for display on the monitor 13, and so on, as is well known in the art.
- the computer 12 may be a microcomputer, a minicomputer, a mainframe computer, or some other hybrid computer, etc. The computer 12 may operate more than one terminal or only the single terminal 11.
- the apparatus 10 of the invention may be coupled between the terminal and the computer 12 and used in various modes_.
- the apparatus 10 In the record mode, the apparatus 10 is used to record audio information and to record all signals that are transmitted from the computer to the terminal for display to the computer operator/user. All signals from the terminal to the computer are conveyed via the apparatus in such case and likewise all signals from the computer are conveyed via the apparatus to the monitor and also simultaneously are recorded.
- the play mode the connection between the computer and terminal is interrupted by the apparatus of the invention, and only the digital signals that had previously been recorded are transmitted by the apparatus to the terminal for display on the monitor.
- such apparatus In various other (stop, pause, etc.) modes of operation of the apparatus of the invention, such apparatus in effect becomes transparent and in such case the computer and terminal are interconnected through the apparatus 10 without any interruption of the signals transmitted between the computer and terminal.
- the invention will be described below with reference to an example of a use for the terminal 11 and computer 12, as follows.
- the teller may bring up on the terminal 11 a form for opening a new bank account by calling up the form from the computer 12.
- the teller would type in information, such as the name, address, and other information relating to the depositor, the amount of money with which the account is to be opened, etc.; that information would be conveyed to the terminal 12 and also would be displayed on the monitor 13.
- Such display of information may be directly from the keyboard 14, but preferably such display is a result of the computer 12 receiving the information from the keyboard 14 and then sending signals to the monitor 13 to cause it to display such information.
- the apparatus 10 may be used to record the signals sent from the computer 12 to the terminal 11 for display on the monitor 13 and subsequently to play such recorded signals for delivery directly to the terminal 11 for display on the monitor.
- the invention may be used with many other environments, systems, etc., for similar and other purposes as will be evident.
- the apparatus 10 is useful with various electrical equipment, most preferably with computer systems and terminals and, even more preferably, with systems that employ asynchronous signal transmission, RS232, RS422 and like serial signal transmission, and so on.
- the apparatus 10 includes a tape drive and tape generally designated collectively and individually 20.
- the tape may be, for example, a conventional magnetic tape contained in a cassette.
- Information is stored in the tape and/or may be read from the tape in conventional fashion, e.g. , as in a conventional audio tape recorder, a conventional tape backup system for a computer fixed/hard disk system, etc.
- the information to be recorded in the tape may be recorded on the surface of the tape, in the tape, etc., in conventional fa ⁇ hion.
- other media may be substituted for the tape and tape drive 20 to provide the desired storage and play back of information or signals representing information, as may be desired.
- a counter 21 counts the running distance along the tape 20.
- a counter reset 22 may be used to reset the count.
- a power on/off switch, the state of which can be observed by power on indicator 23, can be closed by a user to provide power to various portions of the apparatus 10.
- a level indicator 24, for example, a conventional LED or bar graph display, on the face of the apparatus 10 displays the level of audio signals received and recorded and being played.
- knobs 25, 26, 27 may be used to adjust potentiometers or other devices for signal level control during play back, during recording of audio input, say, from a microphone, and recording of a secondary audio input, for example, from a background music source or the like, respectively.
- switches 31-38 Mounted on the front face or control panel 30 of the cabinet housing the apparatus 10 are switches 31-38 which may be selectively closed (or otherwise operated) to effect pause, rewind, play, fast forward, stop, stop and mark with a stop code, record, and duplicate tape functions of the apparatus 10.
- the switches 31-38 may be momentary contact switches which can be pressed and released or other types; they cause the desired operation of the apparatus 10.
- a plurality of light emitting diode (sometimes referred to herein as LED) or other indicators 41-48 which may be energized to identify the present operational mode of the apparatus 10 as a f nction of which of the switches 31-38 had most recently been pressed.
- the apparatus 10 is connected by an electrical cable connection 50 to the terminal 11 and by another electrical cable connection 51 to the computer 12.
- the terminal 11 and computer 12 are only connectable via the apparatus 10 and are not separately interconnected at least with respect to the sending and receiving of commands, data, signals, or the like, between the terminal 11 and computer 12.
- commands, data, signals or the like must be transmitted between the terminal 11 and computer 12 via the apparatus 10 as described below.
- the apparatus 10 may be used with the terminal 11 and computer 12 to record information, to play information, and to be effectively transparent, the latter being the case when the apparatus 10 is not in either the record or play modes.
- record mode an operator would press the record switch 37, whereupon the tape drive 20 would operate to record digital and audio information on the tape.
- the operator may orally describe what he or she is doing; and an external microphone 52, or an internal microphone 52a in the apparatus package itself, receives the oral/audio signals and couples them via electrical cable connection 53 to the apparatus 10 for recording. Simultaneously, the operator may input (e.g., type) commands, data or other miscellaneous information on the keyboard 14.
- keyboard commands data, characters, etc.
- the keyboard commands are coupled via the keyboard cable 54 and cable connection 50 to the apparatus 10, which in turn transmits the keyboard commands via cable connection 51 to the computer 12.
- the computer 12 may operate in various ways to process the keyboard commands, as is well known, and also produces signals (hereinafter referred to as computer commands) to cause something to happen at the terminal 11 , such as the displaying of something on the monitor 13.
- the computer commands are sent on cable connection 51 to the apparatus 10; and the apparatus 10 transmits the computer commands via cable connection 50 to the terminal 11 and monitor 13 for display thereon. While such computer commands are being sent to the monitor 13, they also are being recorded as digital information on the tape in the tape drive 20.
- the apparatus 10 directly sends the previously recorded computer commands directly along cable connection 50 to the monitor 13.
- the apparatus 10 would block the communication between the cable connections 50 and 51 during such play back so that the computer 12 would not interfere with the computer commands sent by the apparatus 10 to the terminal 11 and monitor 13.
- the apparatus 10 also couples the audio information to a speaker 55, which is connected by a cable connection 56 to the apparatus 10 in order to reproduce the words that the original operator had recorded on the tape 20.
- the operator/listener now can see on the monitor 13 that which had been displayed when the tape had been recorded and hear the description of what is being seen and what keyboard commands had to be generated (typed) to cause such information to be seen so as to learn to use the equipment and software.
- the speaker 55 itself may be an earphone speaker.
- the apparatus 10 may be used in a direct connection with the terminal 11 for training purposes even without being connected to the computer 12.
- the connection to the computer 12 is needed, though, when recording is required.
- the apparatus 10 would effect a connection between the cable connections 50, 51 thereby becoming transparent to the interconnection of the terminal 11 and computer 12.
- the system 70 includes a conventional record/play circuit 71 with a tape head 72 for recording information on the tape or for receiving information from the tape in conventional manner. * .
- the circuit 71 may include amplifier and/or other devices for causing the head 72 to apply magnetic signals to the tape and to read back the signals received from the head.
- the microphone 52 is coupled to an audio input connector or jack 73 or the internal microphone may be used, also being coupled to such audio input.
- An amplifier 74 amplifies the audio input and delivers the same to a mixer 75.
- An auxiliary audio input for example, from a background music source or any other auxiliary audio input may be coupled to the input jacks 76, amplified by amplifier 77 and also coupled to mixer 75 for mixing with the input from the microphone;.
- the mixed audio signal is delivered to the level indicator 24 for display indicating the level of the audio signal at the output of the mixer.
- the audio signal at the output of the mixer 75 also is delivered to the audio record/play apparatus 71 for recording by the head 72 onto the tape.
- the signal received from the head 72 and the record/play circuitry 71 is deliverer to a filter 78, which filters out the data crosstalk, for example, due to the digital information that had been recorded on the tape.
- An amplifier 79 amplifies the filtered signal from the filter 78 and sends a signal representing the level of the amplified signal to the level indicator 24 and via cable connection 56 to the speaker 55.
- the speaker 55 which may be a conventional speaker, an earphone, etc., the oral explanation made by the original operator who recorded information on the tape 20, as was described above.
- the level indicator 24 includes an integrated circuit 85 (such as part number LM3915 manufactured by National Semiconductor) , which receives the signal representative of level of audio signal on line 86 either from the mixer 75 or amplifier 79. Depending on the signal level on line 86, the circuit 85 selectively applies logic 0 signals, i.e., it completes ground circuits, for respective light emitting diodes 87, thereby illuminating a respective number of diodes representative of the level of the audio signal. Such a level indicator circuit 85 is conventional and others may be used.
- an integrated circuit 85 such as part number LM3915 manufactured by National Semiconductor
- FIG. 3 A block diagram of the digital record/play system 90 of the invention is illustrated in Fig. 3.
- the system 90 includes a record/play circuit 91 and head 92, which may be identical to the circuit 71 and head 72 described above with reference to the audio record/play system 70 or may be of other design particularly adapted to record the digital information as is described below.
- Operation of the system 90 to record and to play digital information is under the control of a microcomputer unit MCU 93, which may be, for example, a so-called computer-on-a-chip type device, such as a part sold under number MC 68705U3 by Motorola Inc..
- Such an MCU 93 includes ports that can be configured to be either an input or an output, internal memory, buffers, registers, timing means and the like, as is well known.
- a RAM for example, a 2K by 8 static ram 94, is coupled to the MCU 93 to store data temporarily.
- a plurality of configuration switches 95 may be set by a user of the apparatus 10 prior to actually turning on the power in order to convey to the MCU 93 information concerning, for example, baud rate, data bit length, stop bit information, whether the apparatus 10 is to be used with a PC or not (especially in the embodiment of the invention illustrated in detail in the drawings after Fig. 24, etc.).
- a control circuit and with the switches (31-38) generally indicated at 96 provide inputs to the MCU 93 to indicate the mode of operation of the apparatus 10 desired by a user.
- the tape mechanism 97 which drives the tape for recording, playing, etc.
- the tape mechanism includes a solenoid driver 98 which moves the several record and play heads to and away from the tape for recording/playing or not, respectively, and also includes a motor 99 to drive the tape forward and reverse, fast and slow, as is conventional.
- the MCU 93 alone or in combination with one or more of the other elements 94-96 may be considered the processor for the apparatus 10 to determine whether and when data is to be received from various external devices, such as the terminal 11 or computer 12 and/or whether and when digital and audio information is to be recorded on or played back from the tape 20.
- the digital record/play system 90 also includes three asynchronous devices 101, 102, 103, each, for example, being a UART (universal asynchronous receive/transmit device). These sometimes are referred to as UART A, B or C, respectively. Examples are those identified by part number MC 68661 manufactured by Motorola Inc.. Such devices are software programmable and operated/controlled. Such UART devices 101-103 may be used to receive serial digital signals and to output the same as parallel digital signals or to receive input parallel digital signals and to transmit output serial digital signals representative of the input. Such devices are conventional and they operate generally in conventional fashion.
- the UART A 101 provides serial digital signals for recording and receives serial signals played back for subsequent delivery to the terminal 11 and sometimes is referred to as the tape port.
- the UART B 102 communicates via a computer port 102a between the MCU 93 and the computer 12 and sometimes is referred to as the computer port.
- the UART C 103 communicates via a terminal port 103a between the terminal 11 and the MCU 93 and sometimes is referred to as the terminal port. Such communication and operation will be described in further detail below.
- a relay control 119 is operated by the MCU 93 to open or to close switches associated with the computer port 102a and terminal port 103a to determine whether or not the apparatus 10 is to be on-line with such computer and terminal. Off-line would occur when the apparatus 10 is turned off or is not in a record or play mode; on-line would occur when playing or recording is being effected, for example.
- Digital information is recorded on the tape 20 when digital signals are received from the computer 12. Such received digital signals are received as serial digital signals on line 104 by the UART 102. Such signals are converted by the UART 102 to parallel digital signals.
- the MCU 93 receives such parallel digital signals and couples the same to the UART 101 for delivery on the output 105 of the UART 101 as serial signals.
- An FSK (frequency shift keying) encoder 106 (such as part number XR2206 of EXAR) converts the logic 1 and logic 0 signals received from the output 105 of the UART 101 to respective frequency signals representing such logic 1 and logic 0 conditions and couples those frequency signals serially along line 107 to the record/play circuit 91 for subsequent recording by the head 92 on the tape.
- the MCU 93 also couples the parallel data received from the UART 102, as was just described to the UART 103 for delivery as serial signals via output line 108, which is connected to the terminal 11 via cable connection 50. Therefore, as the digital information is being recorded, the several signals forming such information also cause displaying of information, etc., on the monitor 13.
- bias oscillator circuit 109 Associated with the mentioned FSK encoder circuit 106 is a bias oscillator circuit 109 which is combined with or AND'ed with the digital data intended for recording on the tape. Such bias oscillator is described in detail below relative to the embodiment of the apparatus illustrated in the drawings after Figure 24.
- Such communication with the computer 12 may be effected in response to keyboard commands, data, etc., input to the keyboard 14 and coupled via the connection 54 and connection 50 to the system 90.
- Such keyboard commands are received at input line 110 to UART 103.
- the UART 103 converts such keyboard commands to parallel data, which is handled by the MCU 93 and is output by it via the UART 102 output line 111 and output port 102a and to cable connection 51 to the computer 12. Therefore, it will be appreciated that communication between the terminal 11 and computer 12 may be achieved via the apparatus 10 using the UARTs 102, 103 under control of the MCU 93.
- the head 92 and record/play circuit 91 receive the digital information from, the tape and delivers the same as frequency signals to a filter 112, which also may include a clamp circuit described further below, and to a level detector 113 (in another embodiment the leader detector may be a leader detector described further below), which also may include or be substituted for by a tape leader detector circuit described further below.
- the frequency signals usually are two different frequencies, one representing a logic 1 and the other representing a logic 0.
- the circuit 91 and/or other circuitry may be frequency responsive and, therefore, will amplify a signal of one frequency a different amount it will amplify a signal of a different frequency.
- the amplitudes should be the same, and the filter 112 is used to accomplish such equalization.
- Such filter 112 filters one of the two frequency signals more or less than the other to achieve such equalization.
- An automatic gain control circuit 114 may be employed in connection with the output of the filter 112 and delivers the frequency signals of substantially fixed amplitude, now, to an FSK decoder 115.
- the automatic gain control equalizes the mark and space frequencies.
- the FSK decoder 115 is a conventional device such as, for example, a part number XR2211, or like device, that converts the frequency signals to respective logic 1 * and logic 0 signal levels in the form of serial data provided on line 116 as an input to the UART 101.
- the level detector 113 prevents noise on the tape 20 from being considered digital signals.
- the level detector 113 is coupled between the output 117 from the circuit 91 and an enabling control or chip-select input 118 to the FSK decoder 115.
- the level detector 113 detects whether the signal received at line 117 is of adequate level to indicate specifically recorded digital information. If the level of the signal on line 117 does not reach a certain threshold level, it is assumed that such signal is noise, for example, that may occur at a leading portion of the tape before or at an intermediate tape portion where no audio and digital information had been recorded on the tape. If the computer is not sending data when record is entered, then a frequency representing a digital "1" is recorded on the tape.
- the level detector 113 If the level detector 113 does not detect a signal on line 117 of adequate amplitude or level, it will disable the FSK decoder 115 from outputting information to the UART 101. However, if the signal on line 117 exceeds such threshold level, then the level detector 113 enables the FSK decoder 115.
- FIG. 3 The schematic illustration of Fig. 3 is representative of the apparatus 10 that is described in detail below relative to Figs. 4 through 24.
- various features of the illustration of Fig. 4 also are representative of the apparatus according to the invention which is described in greater detail below relative to the drawings following Figure 24.
- the apparatus 10 includes a control panel 30 on which the mode switches are accessible, and two main circuit boards 119, 120, on which mostly digital or mostly analog functions, respectively, are carried out; schematically, such circuit boards are outlined by phantom lines in Fig. 3.
- Such separation of functions are exemplary only and, if desired, other arrangements of the parts of the apparatus of the invention also may be employed.
- a power supply 130 also is provided to provide desired voltages for use in the apparatus. Exemplary voltages may be +12, -12, +5, -5 and ground.
- the power supply circuit 130 includes AC input terminals 131 and a chassis ground 132, e.g., for receiving 120 volt AC input power. The AC input terminals are coupled via a switch and a fuse to a transformer 133 that steps down the voltage. The output from the transformer 133 is rectified by a rectifier 134 and is provided to three respective voltage regulators 135, 136, 137 to produce ground, -12, +12, and +5 volts outputs on terminals 138, 139, 140, 141, and 138 respectively, for use in the circuitry of the invention.
- a voltage of -5 volts also may be obtained in conventional fashion.
- Various bias resistors, filtering capacitors, and diodes 142 are used conventionally.
- the transformer 133, rectifier 134, and regulators 135-137 may be conventional devices, such as parts LM 317, LM 317 and LM 337, respectively, of National Semiconductor.
- Fig. 5 the switches 31-38 and connections thereof for providing inputs to the MCU 93 and elsewhere in the apparatus 10 are illustrated.
- Each switch 31-37 is connected directly or indirectly to the MCU 93 (Fig. 3) and/or to a bidirectional port control circuit 150 (Fig. 6) in the motor control circuit 151.
- the switches 31-37 are of the momentary contact type.
- bidirectional port control circuit 150 When pressed, such switch places a high or low logic signal on one or more output lines specified below.
- the bidirectional port control circuit 150 when receiving one of such signals on an input port or terminal thereof automatically converts such input port to an output port to maintain the continued level of such signal until another input is provided to the bidirectional port control circuit 150.
- a relatively high positive voltage is applied on line 152 from the power supply 130. +5 volts is applied to other terminals, as is shown.
- Closure of pause switch 31 puts a low logic level on output line 161.
- Low logic level usually means a logic 0 or ground signal
- high logic level usually means logic 1, e.g., +5 volts, (although other conventions may be used).
- Closure of rewind switch 32 puts a logic 0 on output line 162, which causes LED 42 to be illuminated.
- Closure of switch 32 operates through an inverter or NAND gate 32a to invert the level of the signal coupled by the switch 32.
- Closure of play switch 33 produces a high logic signal on line 133a and a low logic signal level on line 133b, the latter being generated by an inverter 33a the output of which is coupled to the LED 43 which emits light to indicate operation in the play mode.
- Closure of the fast forward switch 34 produces a high logic level on line 134a and a low logic level on line 134b causing the LED 44 to be illuminated indicating fast forward operation.
- Closure of the stop switch 35 provides a low logic level on line 135.
- Closure of the stop mark switch 36 produces a low logic level on line 136.
- Closure of the record switch 37 produces a high logic level on line 137a and a low logic level on 137b causing the LED 47 to be illuminated indicating record mode of operation.
- the various lines indicated at 130' near the bottom of Fig. 5 are coupled to the various ports 130a' of the bidirectional port control circuit 150 in Fig. 7.
- circuit 150 when such circuit 150 receives specific input, it converts the port at which such input was received to an output port to maintain such signal level initially received until changed by receiving an input to another input port. In this way, the circuit 150 maintains the various logic levels produced on lines 131-137 as a result of a momentary closure of one of the switches 31 through 37.
- the lines 135 and 161, 136 are coupled as inputs to the MCU 93 indicating an intent to fast forward or to pause operation.
- Such fast forward or pause operation is achieved under control of the MCU 93 which in turn causes respective signals on lines 134a or 131c to drive respective LED' s 44, 41 to emit light.
- the MCU couples line 152 to line 131c by way of 171a and 171b.
- Circuit 150 detects this and makes line 131d high causing LED 41 to. turn on.
- the processor drives line 172 low, causing line 135c to go low, turning on LED 45.
- Fig. 6 is a schematic illustration of the motor control circuit 151, which includes a conventional circuit commercially available from International Electro Magnetics Inc., Model No. GR-5000-MCC, for use with conventional audio tape recorders to provide motor control functions.
- the circuit 151 includes the bidirectional port circuit 150 which receives various inputs on lines 130a 1 and produces on outputs 152 various logic 1 or logic 0 signals representative of the inputs to cause operation of the tape drive fast forward/reverse motor 180, the capstan motor 181, and the record/play solenoid 182 for fast forward, rewind, play, record, stop, pause, and stop and mark functions.
- the circuit 150 produces high signals on respective output lines 152 as a function of the most recent input signal to a respective input line 130a'.
- a high signal produced on output line FF from the circuit 150 causes the tape drive motor 180 to fast forward the tape 20.
- a high signal on output line REW causes motor 180 to rewind the tape 20.
- a high signal on play output line causes the capstan motor 181 to rotate and also operate the record/play solenoid to throw it into play mode.
- a high signal on the record (REC) output line also turns on the capstan motor and throws the record/play solenoid into record mode.
- a high signal on the pause output line stops the capstan motor.
- the various circuits and operational details of the circuits of Fig. 6 are available from International Electro Magnetics Inc. in connection with its commercially sold circuit number GR-5000-MCC, all of which are incorporated entirely by reference.
- Fig. 7 is a schematic illustration of the tape head control circuit 190.
- the tape head control circuit 190 is a conventional circuit that is commercially available from International Electro Magnetics Inc. under Model No. GCC-5000-RAC.
- the tape head control circuit includes solenoid operated switches 191, 192 which are thrown from one condition to the other as a function of the energization of the solenoids 182 in the motor control circuit 151.
- the tape head control circuit 190 includes the audio and digital record/play circuits 71 , 91 , which provide signals to heads 72, 92 for recording or receive signals from the heads 72, 92 for playing.
- Solenoid operated switches 191, 192 are thrown either to record position "R", as is illustrated, or to the play position "P" (making connections between the center and right-hand contacts illustrated) under control of the solenoid 182 (Fig. 6).
- record mode audio input received from the mixer 75 (Fig. 2) on line 193 is delivered by circuit 71 to head 72 for recording; and digital input received from FSK encoder 106 (Fig. 3) on line 107 is delivered by circuit 91 to head 92 for recording.
- the circuits 71, 91 also are coupled to an erase circuit 194 to enable a bias oscillator 195 and an erase head 196 to erase the tape 20 before new information is recorded on the tape, as is conventional.
- the solenoid 182 throws the switches 191, 192 to play position.
- the head 72 and circuit 71 put audio signals on line 197 (Fig. 2) for playing through speaker 55; and the head 92 and circuit 91 put digital signals on line 117 for delivery to the terminal 11 for causing a display on monitor 13.
- the various circuit and operational details of the circuit of Fig. 7 are available from International Electro Magnetics Inc. in connection with its commercially sold circuit GCC-5000-RAC, all of which are incorporated entirely by reference.
- the record/play audio circuit 70 is illustrated in detail in Fig. 8.
- the microphone input 73 is coupled via amplifier 74 to the mixer 75, which includes an amplifier 200 and a pair of input resistors 201, 202.
- the auxiliary input 76 also is coupled via the amplifier 77 and input resistor
- auxiliary potentiometer 204 is coupled to adjust the gain of the auxiliary amplifier 77.
- the potentiometers 203, 204 may be coupled to the respective knobs 26, 27 (Fig. 1 ) accessible to be adjusted from the outside of the housing containing the apparatus 10.
- Line 193 to the output of the mixer amplifier 200 is coupled to the record/play audio circuit 71 (Figs. 2 and 7).
- An analog switch 205 is coupled to receive control inputs on lines 206, 207, respectively, from the circuit 150 (Fig. 6) depending on whether a signal indicating record is received on line 208 or signal indicating play is received on line 209. Such signals are produced on lines 208, 209, as a function of whether or not the record switch 37 or play switch 33 had been pressed.
- a signal on line 208 indicates record mode
- a signal on line 193 at the output of the mixer amplifier 200 is delivered via switch 205a to an amplifier 210 and rectifier circuit 211.
- the amplifier and rectifier convert the audio signal to a DC signal level, which is provided to line 186 for delivery to the level indicator circuit 24 (Fig. 2) indicating the level of the audio signal being recorded.
- a signal received on line 197 from a record/play audio circuit 71 and head 72 (Fig. 2) is filtered in a band pass filter 78, which blocks the cross-talk that occurs in the head so that the audio signal does not include the digital data signal.
- the output from filter 78 is coupled via capacitor 212 and volume adjusting potentiometer 213 to the audio amplifier 79.
- Such audio amplifier may be a conventional solid state device, such as one sold under part number LM 380 manufactured by National Semiconductor.
- the output from the audio amplifier 79 is coupled via a capacitor 214 to the output line 56 for delivery to the speaker 55 (Fig. 2).
- Line 56 also is coupled via the switch 205b, when a play signal is received on line 209 from the circuit 150 (Fig.
- auxiliary output 215, including a transistor amplifier 216 and output jacks 217 also is coupled via a capacitor 218 and the capacitor 212 to the output of the filter 78.
- the auxiliary output 215 is used, for example, to couple the audio signal to an amplifier for broadcasting the audio signal via a relatively large speaker.
- the speaker 55 (-Fig. 2) coupled to the output of the audio amplifier 79 may be, for example, an earphone or a relatively small speaker that does not require a large signal for driving the same.
- the volume adjusting potentiometer 213 may be coupled to the knob 25 for adjusting such potentiometer from the outside of the housing containing the apparatus 10, as is illustrated in Fig. 1. Therefore, the knob 25 may be adjusted to adjust the level of the sound output by the apparatus 10. The knobs 26 and 27 may be adjusted to adjust the level of the audio signal being recorded by the apparatus 10.
- Fig. 9 the play portion of the digital record/play system 90, which is shown in block form in Fig. 3, is illustrated in detail.
- Digital signals that are encoded in the form of respective frequency signals are received on line 117 from the digital head 92 and digital record/play circuit 91 (Fig. 3).
- the frequency signals are provided a data recovery circuit 230 which includes the high pass filter 112, the automatic gain control circuit 114, a gain amplifier 231, and the FSK decoder 115.
- the filter 112 preferably is a high pass filter which emphasizes a high frequency signal received on line 117 so that the high frequency and low frequency signals delivered to line 232 at the input to the automatic gain control circuit 114 are of approximately the same amplitude.
- Other types of filter circuits may be substituted for the filter 112, depending on the nature of the signals received on line 117, the objective being to have such signals be at approximately the same amplitude for subsequent decoding in the FSK decoder 115.
- the automatic gain control circuit 114 may be a conventional circuit that tries to maintain a three volt peak-to-peak level output signal on line 233.
- Such circuit 114 may include an integrated circuit 234, which may be part number XR13600 manufactured by EXAR and an amplifier 235, which are coupled in a conventional fashion to provide the desired automatic gain control function.
- a further gain amplifier 231 amplifies the output from the automatic gain control circuit 114.
- a DC filter capacitor 236 blocks DC signal at the output from the amplifier 231 from leaching the FSK decoder.
- a capacitor 237 removes high frequency noise from the frequency signal intended to be delivered to the FSK decoder 115.
- Output line 116a from the FSK decoder is coupled to an output transistor 240, which provides logic 1 and logic 0 signals on output line 116 for delivery to the UART 101 (Fig. 3) as a function of the nature of the frequency signal received by the digital record/play system 90 and decoded by the FSK decoder 115.
- Various resistor and capacitor connections are provided the FSK decoder 115 to enable it to discern the nature of the input frequency signals received by it so as to produce correct respective logic 1 and logic 0 signals at its output line 116a for a delivery via transistor 240 to the line 116.
- the level detector 113 is coupled to line 117 and is intended to determine whether or not the signals received on line 117 are of adequate level so as to represent intentionally recorded digital information from the tape 20.
- the level detector includes a comparator 241 , which compares the level of the signals on line 117 with a reference potential. If the level is adequately high, then the comparator 241 will continuously trigger a retriggerable one-shot multivibrator 242. As long as the multivibrator 242 is triggered, the output 243 therefrom is maintained at a logic 0 level causing transistor 244 to be cut off.
- the digital signals on line 116a from the FSK decoder 115 then are able to be coupled via transistor 240 to the output line 116.
- Fig. 10B includes the record portion 90R of the digital record/play system 90 (Fig. 3), the details of the play portion being described just above with respect to Fig. 9.
- the record portion 90R includes the FSK encoder 106 and associated resistor and capacitor connections thereto to enable the same to respond to logic 1 and logic 0 signals input on line 105 from the UART 101 to be converted to proper frequency signals that are delivered to the output 107 for coupling to the digital record/play circuit 91 and head 92 for recording on the tape 20.
- the signals received on line 105 are logic 1 and logic 0 signal- levels provided in serial fashion from the TxD (transmit data) output from the UART 101. More specifically, the UART 101 receives a parallel byte of digital data at the input 251 thereof.
- An oscillator 252 provides a clock signal to the UART 101 and to the other UART's 102, 103, and in response to such clock signal and other control signals received at various inputs to the UART 101, such UART produces logic 0 and logic 1 signals serially on the line 105, as is well known.
- the UART 101 when such UART receives serial data at its RxD (receive data) input on line 116 from the play portion 90P of the digital record/play system 90, the UART 101 assembles such serial data and converts the same to parallel data which is output on the lines 251 for delivery to the MCU 93 and subsequent use, specifically for delivery through the UART 103 to the terminal 11.
- RxD transmit data
- the UART 101 assembles such serial data and converts the same to parallel data which is output on the lines 251 for delivery to the MCU 93 and subsequent use, specifically for delivery through the UART 103 to the terminal 11.
- Program instructions for operation of the MCU 93 and other portions of the apparatus 10 may be contained in an internal read only memory contained in the MCU 93 or provided from an external source, as may be desired.
- the frequency signals encoded by the FSK encoder 106 and decoded by the FSK decoder 115 may be, for example, at 9800 Hz and 14400 Hz, respectively, representing logic 0 and logic 1 levels. Other frequencies and other conventions may be used as will be appreciated by those skilled in the art.
- the MCU 93 preferably is a part number MC 68705U3 by Motorola. Such device includes internal memory, for. example, EPROM, and RAM, a CPU, latches, registers, etc., as is well known.
- the MCU includes 24 bidirectional ports or lines 253, eight input only ports 254, and a number of control function and input ports 255, as is known.
- the input lines 254 include those which are connected via a connector 260 to the push button switches of Fig. 5 to receive inputs when a respective switch is pushed to indicate a function intended as a result thereof.
- the input lines 261, 262, 263 are coupled to the respective UART's 101-103 to provide inputs to the MCU 93 indicating a condition of the respective UART's.
- the ports 253 which are connected to a bus for the purpose of selecting which of the UART's 101-103 and a RAM 265 is currently selected for operation including both the selecting of such device, the enabling of such device, and the determining of whether data is to be read from or written to such device.
- the bus 264 serves in a sense as an address bus and as a control bus for the UART's 101-103 and the RAM 265.
- the RAM 265 may be, for example, a 2K by 8 static ram able to store data therein when necessary, e.g., while the MCU 93 is carrying out other functions. When the data is required, the MCU 93 can retrieve it for use and/or for delivery to appropriate device or location.
- a buffer 266 is provided to buffer the address lines of the RAM 265 in conventional fashion. Line 270 from the MCU 93 enables the RAM 265, and line 271 provides a clock input to the buffer 266.
- a control bus 272 connects various output lines from the MCU 93 to the connector 260 (Figs. 10A and 5) to provide signals that affect operation of the apparatus. For example, an enable pause signal can be provided on line 273 to be coupled to line 171 (Fig.
- a signal on line 274 provides a stop signal on line 172 (Fig. 5) when a stop function is called for upon closure of switch 35.
- the bidirectional ports 280 are used to receive parallel data from the respective UART's 101-103 and to deliver to the respective UART's parallel data.
- parallel data from a UART is received by the MCU 93 at ports 280 and subsequently is written to a different UART from the ports 280.
- the UART from which the data is received and the UART to which the data is directed are functions of the then current operational mode of the apparatus 10, e.g., record, play, or one of the other modes described.
- a terminal connector port 290 and a computer connector port 291 are provided to couple data between the respective UART's 102, 103 and the computer 12 and terminal 11, respectively.
- the data input lines 292 are coupled to the bus 280 from the MCU 93, and ' the address, chip enable, read/write inputs are coupled to the address bus 264.
- parallel data at the input 292 (or stored in internal RAM within the UART 102) is transmitted via transmit line 111 and NAND gate 293 to the computer port connector 291.
- the computer port connector 291 is connected to the computer 12, which receives serial data so transmitted.
- the computer 12 sends serial data to the apparatus 10, specifically to the UART 102 at the receive data input 104 thereof, such input serial data is provided via the computer to port connector 291 , inverter 294, and gate circuit 295.
- the output from the gate circuit 295 is provided on line 104 to the receive data input of the UART 102.
- Such data is converted to parallel data by the UART 102, is read by the MCU 93, and is delivered by the MCU 93 to the UART 103 for display and if in the recording mode, to the UART 101 for recording.
- An additional NAND gate 296 and inverter 297 are coupled between the computer port connector 291 and the UART 102 to receive and/or to transmit Xon, Xoff, and like signals for usual purposes of, for example, indicating an intent to send information and/or indicating whether or not information can be received by the computer and/or the UART 102.
- Gates 295 and 320 are additional circuits to convert the computer port to RS-422.
- the UART 103 is connected to a terminal port connector 290 via NAND gate 300 and inverter 301.
- the NAND gate is coupled to the transmit terminal 108 of the UART 103 and couples serial logic signals to the terminal for display on the monitor 13.
- the inverter 301 receives serial data from the terminal, such as keyboard commands , and delivers them to the receive terminal 110 of the UART 103.
- a NAND gate 302 and an inverter 303 couple respective DTR and CTS terminals of the UART 103 with respec to the terminal to communicate control information indicatin that data is to be sent and/or whether data can be receive in conventional fashion.
- the processor circuit 250 includes a reset circuit 311, which includes a diode 312 and a capacitor 313.
- a reset signal is delivered to the MCU 93 and via the transistor 314 to the UARTS 101-103.
- the MCU 93 configures the UART's 101-103 as a function of configuration switches 315, Fig. 10B.
- Such switches may be conventional DIP switches that configure the serial communications channels indicating baud rate, stop bits, etc.
- a buffer 316 is connected between the switches 315 and the data bus 280 so. hat the MCU 93 only reads the DIP switches 315 when power initially comes on, i.e., during initialization.
- the stop code is generated, as follows. In record mode, when the stop code button is pushed, the MCU 93 sends a special string of characters to UART 101, recording them on the tape. Pullup resistors 330 are used to bias certain lines to the logic high condition, such as the receive interrupt output lines of the UARTS 101-103.
- FIG. 11 functional data flow diagrams are illustrated to show the flow of data during record mode (Fig. 11), play mode (Fig. 12) and pause, fast forward, rewind, and stop modes (Fig. 13).
- record mode data (computer commands) is received at UART 102, is serialized, and is delivered to a first in first out (FIFO) memory 400 in the 2Kx8 static ram.
- the data leaves the FIFO and is communicated via UART 103 to the terminal 12 and via the UART 101 to the FSK encoder 106 for recording.
- the terminal 11 may send Xon and Xoff signals to the computer 12 via line 401 , FIFO 402 and line 403 to indicate whether or not the terminal is able to receive additional data.
- the input line 116 to the UART 101 from the FSK decoder 115 is disabled.
- data is received by the UART 101 on line 116 from the FSK decoder 115.
- Such data is serialized in the UART 101 and is stored in the FIFO 404 thereof.
- Such data is coupled to the UART 103 and is sent therefrom via line 108 to the terminal 11.
- the connections to the computer 12 are disabled during such playing; and the connections 110 from the terminal and to the FSK encoder on line 105 are disabled.
- the apparatus 10 is intended to be transparent between the terminal 11 and computer 12. Accordingly, the connections to and from the FSK encoder and FSK decoder are disabled at the UART 101.
- Data received from the terminal 11 is communicated directly to the computer 12; and data from the computer is communicated directly to the terminal.
- data from the terminal e.g. keyboard commands
- is received on line 110 is seriallized in the UART 101, is stored in the FIFO 402, is coupled to the UART 102 to be parallelized, and is transmitted to the computer via line 111.
- data e.g.
- Figs. 14-24 various portions of a computer program flow chart are illustrated.
- the flow chart is a short hand form of a complete computer program listing for operating the apparatus 10 in accordance with the invention as is described herein. It will be appreciated that a person having ordinary skill in the electrical and programming arts would be able to follow the flow chart and to write the appropriate programming language code to carry out the functions and processes disclosed in the flow chart and described herein.
- the fundamental program cycles in the flow chart of Fig. 14.
- the MCU 93 reads the switches 315 to set up initial and subsequent conditions for operation, such as baud rate, stop bits, parity, etc.
- the program then continues to cycle in a loop 501.
- transmit channel A logic channel A is the computer
- transmit channel B terminal
- FSK channel C
- interrupt blocks 505-508 are provided to provide respective interrupts to the MCU 93 to cause operation of respective subroutines after which the program returns to the location existing prior to receiving the interrupt.
- Block 505 is the receive channel A interrupt handler; if any character is received from the computer 12, this interrupt obtains the character and puts it into the FIFO 400.
- the receive channel B and C handlers 506, 507 do the same thing if a character is received from the terminal 11 or FSK decoder 115.
- the timer interrupt handler 508 generates interrupts at specific times, e.g. 1000 times per second, to look at various conditions and operations of the apparatus 10, as is usual programming practice.
- the initialization routine of block 500 is amplified in Fig. 15.
- the MCU 93 is set up to indicate which ports are inputs, outputs and bidirectional.
- the internal RAM of the MCU 93 is tested and is cleared.
- the configuration switches 315 are read at block 512, and the channels A and B, computer and terminal, are configured according to such switch settings, vis-a-vis baud rate, stop bit, parity, etc.
- Channel C for UART 101 always is 4800 baud, even parity, 1 stop bit and having a character length that is a function of the setting of one of the switches 315.
- variables are initialized.
- a sign on message is displayed on the terminal, e.g. announcing the version of the program operating the apparatus 10, etc.
- the timer or clock function to the MCU 93 is configured to indicate how many times an interrupt is to occur to cause the MCU to carry out certain checking functions.
- Fig. 16 are shown the details of the transmit channel A handler 502.
- an inquiry is made to see whether channel A (the computer) can accept a character; the MCU 93 looks at UART 102 to see if it is ready. If affirmative, then at block 521 an inquiry is made to determine whether an Xon or an Xoff signal should be sent; this is to tell the computer whether or not to send more data. If negative, then at block 522 an inquiry is made to determine if there are any characters in FIFO B 402. If affirmative, then one character is taken at block 523 and is sent to the computer 12. Then at line 524 the program exits to block 503 in Fig. 14 to proceed to the transmit channel B logic.
- the transmit channel B handler routine 503 is illustrated in Fig. 17; it is entered at the conclusion of the transmit channel A handler of block 502.
- an inquiry is made to determine whether channel B (the UART 103 and terminal 11) can accept a character. If not, then the program exits along line 541 to loop line 504 of Fig. 14. If affirmative, then the current mode is obtained at block 542 to determine whether the apparatus 10 is in fast forward, play, rewind, stop, pause or record mode. If at block 543 record mode is detected, then a subroutine line 544 (to Fig. 18) is followed. If negative, then an inquiry is made at block 545 to determine if the current mode is play mode, then subroutine line 545 is followed to Fig. 19; and if not, then subroutine line 547 is followed to Fig. 20.
- an inquiry is made to determine whether FIFO 400 is empty. If not, then the program exits along line 556 to loop line 504 in Fig. 14. If affirmative, then at block 557 an inquiry is made to determine if an Xon should be sent to the computer 12, e.g. if an Xoff had existed, then an Xon is sent now. If not, then at line 558 the program exits to loop line 504 in Fig. 1 . If an Xon should be sent, then at block 559 a flag is set to sent Xon in the transmit channel A handler routine 502 when it is next encountered. The program then exits on line 560 to loop line 504 of Fig. 14.
- the interrupt functions 505-508 (Fig. 14) are illustrated in Figs. 21-24. If an interrupt event occurs that requires use of the channel A interrupt handler routine
- the interrupt signal is provided the MCU 93.
- the character is read from channel A, i.e. the character in the UART 102 is read by the MCU 93, which then puts the character into FIFO 400 at block 602. If the FIFO 400 is getting full, then at block 604 a flag is set to send an Xoff to the computer 12 the next time that the transmit channel A handler logic block 502 is encountered. The program then exits to the place from which it had entered the interrupt. If the FIFO 400 is not getting full, then line 606 is followed to exit to the place from which the program had entered the interrupt.
- Fig. 22 is illustrated the receive channel B interrupt handler. If such an interrupt is received at block 610, then at block 611 the character is read from the terminal by parallellizing it in the UART 103. At block 612 an inquiry is made to determine if the character is an Xoff. If affirmative, then at block 614 a flag is set so that characters will not be sent when the next transmit channel B handler logic block 503 is encountered. The program then exits via line 614 to that point in the program from which it had come when entering this interrupt 610. If the response in block 612 is negative, then at block 615 an inquiry is made to determine whether the character is an Xon.
- the received interrupt at block 630 causes the character to be read from channel C (the FSK channel and UART 101) at block 631.
- an inquiry is made to determine whether the character received was the stop code string. If it is a stop code string, then at block 633 the MCU 93 puts the tape mechanism into pause mode to stop the tape from running until the operator pushes the pause switch again. The program then exits at line 634 to that point in the program from which it had come. If the answer at block 632 is negative, then the character ready on UART 101 is put into FIFO 404 for subsequent delivery to the terminal, and the program exits line 636 to the point from which it had entered the interrupt 630/507.
- a timer interrupt e.g. which occurs about 1000 times per second
- that interrupt is obtained at block 640.
- the status of the lines coming back from the motor control and tape drive control circuits of Figs. 6 and 7 is checked.
- an inquiry is made to determine whether the mechanism on circuits of Figs. 6 and 7 indicate operation in the record mode. If affirmative, then at block 643 the UART 101 is enabled to transmit data to the FSK encoder, and the UART 101 is prevented from receiving data from the FSK decoder.
- the program then exits line 644 to the place from which it had entered the interrupt 640/508.
- an inquiry is made to determine whether the apparatus 10 is in the play mode. If affirmative, then at block 646 the UART 101 is enabled to receive data from the FSK decoder and is disabled to prevent transmitting data to the FSK encoder. The program then exits line 647 that point from which it had entered the interrupt 640/508. If the apparatus 10 is not in play mode or in record mode, then it must be in the pause, fast forward, rewind or stop mode; and, therefore, at block 648 the UART 101 is disabled from receiving or transmitting data with respect to the FSK encoder and decoder. Then at block 649 the various other software timers are serviced, e.g. which determine how long a pause button must be pushed, how long to keep the light emitting diodes 41-47 on, etc., are determined and acted on, whereupon the program exits line 650 to that point from which it came.
- FIG. 10 A modified version of the apparatus 10 is referred to below as 10'; modified apparatus is similar to that illustrated in Figs. 1, 1A, 3, and so on described above with reference to apparatus 10. Therefore, in Fig. 1, for example, reference numeral 10' also is used to designate the apparatus shown there.
- primed reference numerals that are the same as those referred to above with out the prime designation identify similar parts in terms of construction and function. There are differences in the circuitry and software or flow chart between the apparatus 10 and the apparatus 10', and below those differences will be described in detail with reference to the several drawing figures mentioned below.
- the apparatus 10' is intended to control operation of the erase head 196', digital record/play head 92', audio record/play head 72', fast forward motor 180', record/play motor 181', and record/play solenoid 182'. These parts function generally in the manner describe above.
- Switches 1000, 1001 respectively respond to whether the tape in the apparatus 10' is write protected and whether the door to the tape recorder is open; and they communicate such information back to the other portions of the circuit of apparatus 10'.
- a light emitting diode (LED) 1002 indicates when power is on.
- a sensor 1003 such as a Hall sensor, is coupled relative to the tape drive to produce pulses indicating that the tape is moving; and not to produce pulses if the tape is not moving; this information can be used to indicate when the end of the tape has been reached.
- the various parts illustrated in Fig. 25 are coupled to and operated by various other circuits of the apparatus 10', as are described herein.
- Fig. 26 are illustrated the mode select switches 31 '-37' and indicators 41 '-47', which set and indicate the operative mode of the apparatus 10', respectively, pause, rewind, play, fast forward, stop, automatic stop (also providing the function of stop and mark the tape with a stop code), and record.
- An additional configuration switch, not on the front panel 30' in Fig. 26, is the duplicate switch that may be used to indicate that the apparatus 10' is being used to duplicate whereby the tape does not stop when a stop code may be received as the tape is serving as a master from which to make a duplicate tape.
- a read latch 1004 reads and stores such closure information and sends that information to the processor (also referred to above as MCU) 93 via a connector 1005.
- the processor 93 then sends a signal to write latch 1006, also via connector 1005, from which a respective LED 41'-47' is driven to emit light indicating the operative mode of the apparatus 10' .
- the LED bar graph or other VU (volume unit) type of meter equipment 87' which is driven by a conventional bar graph driver, such as a LM3915, to light up according to the volume of the audio signal being recorded and/or played, as is conventional.
- the bar graph driver 85' and LEDs 87' are coupled to other circuitry of the apparatus 10' via a further connector 1007.
- Potentiometric controls 25', 26' and 27' also are coupled via the connector 1007 to other circuitry of apparatus 10 r , respectively, to adjust audio volume during playback, microphone sensitivity, and auxiliary input sensitivity.
- the internal microphone 52a' and a preamplifier 1008 are mounted relative to the control panel 30' and are connected via connector 1007 to other circuitry described below.
- An auxiliary circuit 1010 in Fig. 27 provides connections from the analog circuit board 120' (Fig. 3 and several figures below) via a connector 1011 to jack type connectors 1012, 1013 for connection, respectively, with earphones and a microphone.
- the Jacks are of the type that make and break respective circuits as a function of whether or not a connector had been plugged therein. Therefore, if earphones are not used, the internal speaker 55' is connected and vice versa; and. if an external microphone 52' is not used, the internal microphone 52a' is connected and vice versa.
- the tape recorded or captured signals that were transmitted from the computer to the terminal.
- the apparatus 10' may function in the manner just described for the apparatus 10, and it also may function in a video sense such that video images are sent directly to the computer for display on the computer monitor, especially when that monitor and computer are part of a personal computer system in which the monitor operation is based on bit mapped graphics. More specifically, when operating in the PC mode, which can be set on one of the configuration switches of the apparatus 10', the apparatus 10' communicates with the computer via the computer serial port.
- COSESSION Software in the computer, such as one of the type sold under the brand COSESSION, is used to read any changes made on the monitor four times per second, to compress that data and to send that data via the serial port to the apparatus 10 ' for recording.
- COSESSION software Upon typing "PLAY" into the computer when such COSESSION software is resident in memory, the subsequently transmitted data from the tape to the serial port is decompressed by the COSESSION software and is directed to update the video card that drives the computer monitor.
- FIG. 1A Such PC mode connection is illustrated in which a personal computer 1020, which includes a keyboard 1021 and a monitor 1022 and various computer circuitry inside a cabinet 1023, is coupled to the apparatus 10'.
- Non-PC mode of operation indicates coupling of the apparatus between a computer and a terminal, as was described in detail above, e.g., relative to Fig. 1.
- a solenoid pull in or energize circuit 1030 is illustrated.
- Circuit 1030 provides a large amount of power or current to pull in the solenoid 182' and then a smaller power or current to hold the solenoid in energized condition without burning out the windings of the solenoid.
- the circuit 1030 is a charging circuit. Initially upon receiving a signal at terminal 1031 indicating that the solenoid should turn on, the transistor 1032 is heavily biased to conduction to provide large current to pull in the solenoid placing the tape heads into engagement with the tape for recording or playing. Afterwards, when capacitor 1033 has charged for a reasonable time period, the bias on the transistor 1032 is reduced to a stable level which is one at which a smaller current is provided to maintain the solenoid energized. If desired, rather than using a solenoid 182', a worm gear arrangement or some other arrangement may be used to move the tape heads toward and away from the tape.
- the digital encoder circuitry 1040 which is operative to prepare the digital data received from a computer for recording on the tape. Recording pure digital signals is usually unreliable in tape media using conventional tape recording technology, which is preferred due to minimal cost. Therefore, such digital signals are converted to frequency signals which are recorded as tones on the tape; a tone of one frequency representing a logic 0 and of a second frequency representing a logic 1. Frequency shift keying technique is used to generate such tone or frequency signals, as follows.
- the signal received on line 1041 from the processor 93', which is on the digital board 119', indicates whether the apparatus 10' is in record or play mode. If in record mode, an opto-isolator 1042 couples a positive signal via a transistor 1043 to a pair of relays 1044, 1045 which place the apparatus 10' the proper record or play mode. Accordingly, the speaker 55' is switched off by switch 1044a, a record enable signal is provided by switch 1044b to the circuit 1040, and the audio and digital signals for recording are not grounded by switches 1045a, 1045b. However, when in the play mode, the relays 1044, 1045 are deenergized. Therefore, the speaker 55' will be activated by switch line 1044a, the record signal at switch line 1044b is disabled, and the audio and digital signal lines for recording on the tape heads are disabled by switches 145a, 145b.
- a frequency encoder 1051 such as an XR2206 integrated circuit.
- the frequency signal produced by the encoder 1051 will be, for example, 9KHz or 15KHz, respectively, e.g., depending on various bias settings, etc.
- the frequency signals are coupled via resistor 1052 and capacitor 1053 to one input of a digital record/play switch circuit 1054, such as an LM1818 integrated circuit.
- the output side of resistor 1052 is coupled to a switch terminal in relay 1044 to be clamped low when the relay is deenergized (in play mode) to prevent signal from the FSK encoder 1051 from feeding to the circuit 1054 preventing extraneous noise on the play side.
- relay 1044 When relay 1044 is energized (record mode) the switch arm of 1044b opens such clamp so that signal from FSK encoder 1051 properly feeds to the circuit 1054.
- the circuit 1054 responds to receipt of tone signals at its input 1055 for recording. It then produces an output at 1056 that is amplified by an amplifier circuit and is sent via a filter for joining with an AC bias signal from a bias generating circuit 1060.
- the filter 1058 prevents the AC bias signal from getting back into the circuit 1054.
- the AC bias signal is generated by a conventional AC oscillator (bias oscillator), which is coupled by an RC circuit 1062 to line 1063 (sometimes referred to as the DREC—digital record—signal) for delivery to the digital record head 92' via connector 1064.
- the filtered tone signal from the circuit 1054 in a sense is AND'ed, merged or joined (an AND gate is illustrated in Fig.
- bias oscillator 1061 is activated when it receives from the processor 93' an appropriate signal at terminal 1061a.
- Such practice boosts up the signal intended to be recorded and, thus, assures that the tape is rather well saturated with signal during recording to assure accuracy of the recorded data; a less strong driving technique may be employed if a more sensitive storage media were available and used.
- the bias generating circuit 1060 also has an RC channel output 1065 which is a bias signal that is merged with the audio signal intended for recording on the tape on line 1066 (sometimes referred to as the AREC —audio record— line).
- Line 1066 is coupled to the audio recording head 72' via the connector 1064.
- the audio signal picked up by the microphone is used to modulate such bias signal for recording as in the case of the digital data as described above.
- an output terminal 1070 to the circuit 1054 is clamped to ground via the internal circuitry of the circuit 1054 to appropriately switch the mode of the tape heads, as was described above.
- a signal is received on line 1073 from the connector 1064, such signal being that played back from the tape. That signal on line 1073 (sometimes referred to as the DPLAY —digital play— signal) is undamped by the internal circuitry 1054 via terminal 1070, when in play mode as controlled by the processor 93', thus unclamping terminal 1074 to allow operation in play mode.
- the signal on line 1073 is presented to capacitor 1071 to the play input terminal 1074 of the circuit 1054.
- the played signal is in the form of a tone signal of different frequencies, depending on the logic 0 or 1 state of the data represented thereby. It is provided at output terminal 1075 of the circuit 1054 for amplification and then via line 1076 to a filter and clamp circuit 112', leader detector circuit 113' and FSK (frequency shift keying) decoder 115' to line 1077 and via connector 1078 to the UART C 103.
- the processor 93' then gets the dta and presents it to the appropriate UART to couple the played data to the terminal or if in PC mode to the computer.
- Fig 29 the filter and clamp circuit 112', leader detector circuit 113' and the FSK decoder circuit 115', which are mentioned above in Fig. 28, are shown in detail.
- the tone signal on line 1076 from circuit 1054 is coupled by a capacitor 1080 and resistor 1081 to a combination filter and clamp circuit 112' at the input to the leader detect -circuit 113' and FSK decoder 115'.
- the filter and clamp circuit 112' response limits the signal delivered to the leader detector 113' and to the FSK decoder 115' to a prescribed value, such as 1.4 volts peak to peak and also filters noise from the signal. Since the signal recorded on the tape was recorded using substantial driving effort, power, etc., it will also have substantial power when played back.
- the filter and clamp circuit 112' prevents over driving the FSK decoder and leader detector circuits, yet allows very low playback signals degraded by the nature of audio tape to be decoded properly.
- the filter and clamp circuit 112' includes an operational amplifier 1083 and, connected across the output and inverting input thereof, a pair of reverse connected diodes 1084, 1085, resistor 1086 and capacitor 1087.
- the voltage characteristic of the diodes as will be appreciated, effectively determines the clamping voltage level produced by the filter and clamp circuit 112'.
- the non-inverting input of the amplifier 1083 is coupled via resistor 1088 to a source of voltage.
- the signal at the output 1089 of the amplifier 1083 will be an amplified, filtered tone or frequency signal limited to a value of, for example, plus and minus 0.7 volts and having a frequency of 9KHz or 15KHz, i.e., the frequency of the signal produced by the FSK encoder 1051, representing logic 0 and logic 1 signals.
- the output from the FSK decoder 1101 on line 1102 is a high or low signal at appropriate logic level and duration, e.g., +5 or 0 volts and 4800 baud, and such signal is coupled via resistor 1103 to the input of a buffer transistor amplifier 1104.
- the output of transistor 1104 is coupled to line 1077 for delivery as serial data to the connector 1078 (Fig. 28) to the digital board 119 and from there to the terminal or (if in PC mode) computer , via the processor 93' of the apparatus 10'.
- the purpose of the leader detector circuit 113' is to prevent sending spurious characters to the terminal or computer when a tape is starting up or when no characters are on the tape. Accordingly, the leader detector circuit 113' assures that whatever signals are transmitted to the input of the buffer transistor amplifier 1104 from the FSK decoder 115' are of sufficient level and in fact represent valid data, thus compensating for the fact that the filter and clamp circuit 112' limits only the maximum voltage level of the signals input to the FSK decoder since such signals represent substantial driving or even over driving of the tape medium when they were originally recorded.
- an operational amplifier 1105 receives the filtered and clamped signal from the output 1089 of the filter and clamp circuit 112'.
- the amplifier 1105 is coupled to a transistor circuit 1106 which charges a capacitor 1107 in an RC circuit that also includes resistors 1108, 1109, which provide a discharge path for the capacitor 1107.
- the junction of the resistors 1108, 1 09 is coupled to a further operational amplifier circuit 1110, the output 1111 of which is coupled to the input of the buffer transistor amplifier 1104.
- the time constants of the RC circuit 1107, 1108, 1109 is such that data of valid duration received from the tape will not cause the amplifier 1110 to disable the buffer transistor amplifier 1104 from being driven by the output from the FSK decoder 115'. However, as long as valid data of sufficient voltage level is received at the output 1089 from the filter and clamp circuit 112' (e.g., 9KHz and 15KHz signals), the output from the amplifier 1110 will not disable the buffer transistor amplifier 1104 from coupling the logic signals on line 1102 from the FSK decoder 115' from being output to line 1077 for coupling to the terminal or computer.
- An advantage to using the filter and clamp circuit 112' is to avoid overdriving the output circuitry of the apparatus 10' in response to relatively large magnitude signals stored on the tape.
- Such signals are of relatively large magnitude since both the audio track and the digital track are relatively close together on the tape, and it is possible to get crosstalk between such signals upon recording and/or playing. Overdriving the tape upon recording helps assure that the signals are adequately large that crosstalk will not mask out the real nature of the recorded signal.
- an advantage to using the leader detector circuit 113' is to avoid underdriving the FSK decoder in response to relatively small magnitude signals recorded on the tape.
- Such signals are of relatively small magnitude due to the nature of audio tape media specifically known as drop out or drop outs or also the sensing of unrecorded tape known as leader.
- the audio record and play circuitry 1200 is illustrated.
- the circuitry 1200 delivers on line 1201 an audio signal conditioned to modulate the bias signal on line 1066 (Fig. 29) for delivery via connector 1064 to the tape heads.
- External microphone 52' is coupled via amplifier stages 74', which preferably have at least one potentiometric level control 26' and through isolating series connected capacitor 1203 and resistor 1204 to a junction input 1205 of a further amplifier.
- the auxiliary audio input 76' e.g., from background music source, is coupled via amplifier stages 77', which preferably have at least one level control 1209, and a series RC circuit 1210 to the junction 1205.
- the circuit just described uniquely joins both microphone and auxiliary audio inputs in a single channel at junction 1205 in a single apparatus and then provides the same via capacitor 1211 to a record/play switch circuit 1220, such as an LM1818 integrated circuit, which is the same as and operates substantially the same as the circuit 1054 described above.
- a record/play switch circuit 1220 such as an LM1818 integrated circuit
- the audio signal received via capacitor 1211 is amplified and is coupled via output line 1221 to a filter trap 1222.
- the audio signal is provided line 1201 for merging with the bias signal to modulate the same (Fig. 28) and delivery to the tape heads via connector 1064.
- the filter trap 1222 prevents the bias signal from backing into the circuit 1220, as was described above for the filter 1058 for the digital record signal (Fig. 28).
- a signal on line 1044b indicates the same to the circuit 1220, and the audio signal received on line 1230 from the connector 1064 (Fig. 28) and the audio tape head then is output on line 1231 to filtering and amplifying circuitry.
- the audio signal on line 1231 initially is directed to a follower circuit 1232, including an RC input circuit 1233 and an operational amplifier.
- the output from the follower circuit is coupled to the input 1234 of a notch filter 1235.
- the notch filter 1235 filters out a narrow band of frequencies from the audio signal, for example from 4600 Hz to 5000 Hz so that there is no. audio degradation unless a person is speaking right at that frequency, which would be unusual since average voice is at from about 1KHz to 3KHz.
- the notch filter removes signals at 4800 HZ, which is the baud rate at which the digital data is recorded on the tape. Therefore, the notch filter filters out that digital noise so it will not be heard in the audio playback even if some of that digital signal had bled onto the audio recorded track during recording or playing.
- the notch filter 1235 includes a resistor and capacitor filter network 1236 and an amplifier 1237.
- the values of the components of the notch filter are selected to filter out the desired band of frequencies, such as those representative of the baud rate at which the digital data is recorded thereby to filter out such digital signals from having impact on the audio played signals.
- the notch filter preferably does not filter outside of the indicated notch range of frequencies so that it does not degrade various other audio signals, such as music (which includes frequencies outside the filtered range but not in the range at which a person ordinarily speaks), recorded on the tape and desired to be played.
- a low pass filter 1240 is coupled to the output of the notch filter 1235.
- the low pass filter removes ' frequencies, such as those above about 10KHz, e.g., those due to tape noise or tape hiss.
- a conventional tone control circuit 1241 is coupled to the low pass filter to adjust the bass and treble characteristics of the audio signal that is to be delivered to the speaker and/or earphones.
- An RC circuit 1242 and the volume adjusting potentiometer 25' couple the audio signal from the tone control 1241 to an audio amplifier 1243, such as a conventional LM380 integrated circuit. Since the audio signal had been cut down by the notch filter and low pass filter, and possibly by the tone control circuit, the audio amplifier 1243 boosts the signal to a level at which it can drive the speaker 55' .
- the VU meter 24' also is coupled to the audio amplifier 1243 to indicate the level of signal being played. Alternatively, depending on the setting of a switch 56', the VU meter can be coupled by line 1244 to the input audio channel(s) to indicate the level of signal being recorded.
- the setting of the switch 56' will depend on whether the apparatus 10' is in play or record mode of operation; and such indication may come from the processor 93' via relay 1044 and relay switch 1044b in the manner described above.
- the switch 56' also is coupled to the speaker 55' to cut out that speaker when in the record mode to avoid feedback, as was mentioned earlier. Further, the switch 56' may include a connection to shut off the speaker(s) and one or more of the audio amplifier and/or filter circuits when the apparatus 10' is in a pause, stop or similar mode when it is not necessary and may be undesirable to couple a signal to the speaker(s).
- An auxiliary speaker or headphones 1245 may be employed to provide another audio output, as is illustrated.
- Such further audio output device may be controlled by the switch 56' the same as speaker 55' or differently.
- the different control may be to permit audio output at 1245 to remain unchanged from that of the original input signal for the purpose of recording or duplicating as mentioned elsewhere herein without the effects of amplifiers or filters further degrading the original signal.
- Section 1 is the overall program.
- Sections 2 through 13 are various routines and subroutines that flow from the overall program of Section 1.
- routine, subroutine, program, and the like may be used interchangeably and/or synonymously herein.
- Section 1 is the overall program 2000, and it includes an initialization routine 2001 and a main routine 2002.
- the program 2000 also includes subfunctions called by interrupts.
- One interrupt block 2003 receives data from the computer.
- the other interrupts are based on a timer function 2004 (time related interrupts) and function to receive data from the terminal block 2005 or to receive data from the tape block 2006 of the apparatus 10' described above. The data is received or transmitted at the UARTS described above.
- the initialization block 2001 sets up the various ports and registers and then the program enters the main loop 2000 which waits for interrupts or looks at switch closures or whatever else is going on.
- the input and output nature of the various ports of the processor in the apparatus are set up, and at block 2011 the internal RAM of the processor is checked or tested, and cleared.
- an inquiry is made to determine whether the RAM of the processor is good; if not then the program flows to a failure mode at block 2013; if good, then the program goes to block 2014 to test and clear external RAM.
- the program checks the configuration switches to see what operational mode is selected as desired by the user, such as whether the apparatus is to be used with a computer and terminal or with a personal computer; and the various configuration switches and the mode switches and lamps on the control panel of the apparatus are checked.
- variables are set up according to the setting of the configuration switches, for example.
- a sign-on message is sent to the computer monitor, e.g., saying a welcome to the system and/or the system is ready for operation.
- a configuration timer is set up, e.g., started, so that the various timer-related interrupts are enabled, as will be described below. The program then returns to the Section 1 main routine block 2002 mentioned above.
- an inquiry is made to see whether there is a tape request, i.e., whether there is a call to start or to stop the tape. This tape request is determined by whether a fast forward, stop, play, rewind or record buttons had been pressed on the main control panel 30 of the apparatus 10' . If affirmative, then the tape control request routine (described below) at block 2024 is called. If not, then at block 2025 an inquiry is made to see whether there is a need then to send a character to the tape 20 or to the terminal 11.
- the UART "A" 101 in the apparatus 10' described above will provide to the processor an interrupt signal if there is data to send to the tape 20 or terminal 11.
- a transmit tape/terminal subroutine (described below) is called. If at block 2025 there was no requirement to send a character to the tape or terminal, an inquiry is made at block 2026 whether there is a character to send to the computer. If affirmative, then the transmit computer subroutine 2027 (described below) is called. If not, then at block 2028 an inquiry is made to detect whether a command has been received that requires operation of the tape, e.g., play, record, rewind, fast forward, etc., and that in fact the tape is operating. If the tape is not operating, then the tape drive control subroutine 2029 (described below) is called.
- the apparatus 10' is able automatically to pause when a stop code recorded on the tape is received. If a stop code has been received, then the stop string subroutine 2031 is called.
- the stop function allows the apparatus to stop playing without shutting off while the user practices the lesson just learned, e.g., by operating the computer or terminal via the keyboard. If the response at block 2030 is negative (a stop code had not been received), then at block 2032 an inquiry is made to see whether a mode request had been requested from the control panel of the apparatus, e.g., whether play, record, stop, rewind, fast forward, stop, or pause buttons or switches had been pressed by the user.
- the apparatus can be configured in two modes of response to a stop code, depending on the setting of the configuration switches in the apparatus. In one mode upon receiving a stop code the apparatus stops and goes off line relative to the computer while the user tries the lesson just learned; in the other mode, the apparatus goes into a pause mode to stay on line and not shut down while the user tries the lesson just learned. If at block 2032 the response is affirmative, then the set tape mode subroutine (described below) is called at block 2033. If not, then the main subroutine 2002 continues to loop in the manner described.
- the software described herein is operative for both use of the apparatus in conjunction with a computer and terminal and in conjunction with a personal computer.
- the primary difference is determined by a flag set by one of the configuration switches indicating with which system the apparatus is used.
- Various special inquiries and responses are mentioned below as a function of such use.
- the apparatus is operative to receive and to send character information relative to the computer and the terminal, e.g., the ASCII code for a letter "A", etc.
- the apparatus is used with a personal computer in which a bit mapped monitor screen and driving circuitry are used, the amount of data that has to be recorded on the tape would be excessive.
- a computer program sold under the name COSESSION by Triton Technologies and modified by Triton Technologies for operation generally in the manner described herein for use with the apparatus 10' is used to interface between the tape and the video card which drives the personal computer monitor.
- Other software that functions similarly, e.g., to take data from a video card, compress it and send it to the apparatus 10' and can receive such compressed data from the apparatus 10' and can decode it for sending to the monitor, etc. also may be used.
- Such computer program enables the apparatus of the invention to store on the tape information which represents periodic updates or changes to the monitor since such monitor was last updated, e.g., at a rate of four times per second, more or less.
- the modified COSESSION software ordinarily would be resident in the personal computer to cooperate with the apparatus of the invention to receive data from the video card of the personal computer, to compress that data and to send that data for recording on the tape. Additionally, the COSESSION software receives data from the tape, decompresses or expands it and transmits the data to the personal computer video card for changing the information then displayed on the monitor.
- the COSESSION software also includes a de-load function which may automatically remove it from resident memory of the personal computer when not required for using the personal computer with the apparatus of the invention.
- the interrupt block 2003 (from Section 1) is shown in detail.
- the interrupt subroutine 2003 is called when the UART A coupled to the computer is to receive data.
- the UART A is coupled to the processor through an interrupt line.
- block 2040 is entered as the entry point for the interrupt receive computer subroutine 2003.
- an inquiry is made to see whether any common port errors are occurring, such as something that is clearly bad data. If affirmative, then an error flag is set at block 2041 and the received bad data character is flushed or trashed at block 2042. The error flag is then reset.
- the program then follows an interrupt exit path 2043 to return to the main subroutine 2002 (Section 1) of the overall program 2000.
- the program goes to block 2044 whereupon the character is obtained from the UART and placed into RAM or into a register temporarily in the processor.
- the apparatus is checked to see whether operation is in the record mode. If not, then there is no reason to store the character anywhere and the program then follows the interrupt exit path 2043 back to the main subroutine 2002. However, if the apparatus is in the record mode at block 2045, then at block 2046 the character is placed into memory in the apparatus.
- the memory may be a first in first out (FIFO) and is provided to buffer the data received from the computer because the baud rate of the computer and the baud rate of the apparatus may be different.
- FIFO first in first out
- the baud rate of the computer is 19.2K, whereas the apparatus is only 4.8 K.
- Hardware handshaking also is provided, such as RTS, CTS, Xon, Xoff, between the computer and the apparatus in order to avoid loss of data if the buffer fills to capacity.
- the computer will stop transmitting data to the apparatus until the apparatus is ready to receive more data.
- PC mode personal computer
- the apparatus is being used with a personal computer rather than with a computer and terminal arrangement; this is sensed by the apparatus by setting of the configuration switches. If the apparatus is not used in PC mode, then at block 2048 the terminal port UART B is enabled so that the character can be sent to the terminal. If at block 2047 the apparatus senses that it is operating in the PC mode, then there is no need to enable the terminal port at block 2048 because the personal computer itself already had sent the data/character to its own monitor. In either case, the program then enables the tape port UART C at block 2049 to provide the character to the tape for recording. The program then returns at 2050 to the main routine 2002 in Section 1 to wait for the next interrupt based on time and/or the next interrupt based on a character being received from the computer and/or a button to be pressed on the control panel.
- PC mode personal computer
- the circuitry and software is limited to two direct interrupts to the processor which could cause the processor and program operating the same 2000 to go to an interrupt subroutine.
- One of the interrupt subroutines was that described above with reference to block 2003 (Sections 1 and 4).
- This interrupt subroutine is triggered when the computer is sending a character/data to the apparatus at the UART A.
- the second interrupt subroutine is programmed according to the invention to function automatically on a timed basis in order to poll whether in fact data is being received at UART B from the terminal or whether data is being received from the tape at UART C.
- the second interrupt subroutine represents a multiplexing of interrupts from the terminal and tape and also provides a general timer polling interrupt.
- This general timer polling interrupt does additional checking of status flags representing tape running and built in delays (and therefore sometimes is referred to as a housekeeping timer) .
- the second interrupt subroutine also checks other conditions in the apparatus, as will be described below.
- One particular condition is whether the UARTs B and C are not active, i.e., do they not need to be serviced either to receive a character from the terminal or from the tape. Therefore, the polling interrupt timer routine in Section 1 includes the interrupt timer subroutine 2004 from which either of the receive data from terminal 2005 or receive data from tape 2006 subroutines can be called. This enables the apparatus to live with the limitation that the processor selected only has two interrupt ports.
- the subroutines 2005 and 2006 could be coupled directly to the processor and the timer interrupt routine 2004 could provide a separate interrupt function to carry out its functions without having separately to call the subroutines 2005 or 2006.
- the computer interrupt is directly to the processor in order to service the computer request to send data to the apparatus very quickly since the computer is operating typically at 19.2K baud, i.e., faster than the apparatus ordinarily operates. Therefore, there is inadequate time to wait for the apparatus periodically to poll the computer UART A to see whether it is receiving data from the computer.
- the apparatus periodically to poll the computer UART A to see whether it is receiving data from the computer.
- the UARTs B and C there is adequate time periodically to poll the UARTs B and C, because receipt of that data ordinarily would be at a speed that is approximately that at which the user can type onto the keyboard, i.e. typically not more than 1 ,2K baud.
- a play delay is a built in delay that prevents the apparatus from receiving data upon initial starting of the tape when a play mode of operation had been requested from the control panel in order to allow the tape heads to move into play location and for the tape, which had been stopped, to come up to speed.
- waiting for the tape to come up to speed would also require when in a record or play mode the movement of the tape recording head .
- the play delay may be the loading of a value into RAM or into a register of the processor and the subsequent decrementing of that value by multiple passes through the timer interrupt subroutine 2004 until the value has reached prescribed level, e.g., zero, whereupon it can be assumed that the tape heads had come into play position and the tape had come up to speed.
- ESCAPE ACTIVE delays any handshaking (RTS/CTS or Xon/Xoff) during an escape sequence generated by the computer. This prevents characters such as Xon/Xoff or a break condition from contaminating the escape sequence typically used as ANSI graphics control sequences to the terminal (not checked for in PC mode) . Characters generated by the terminal are transmitted directly to the computer. The computer "ECHOES" these characters to the terminal for display. The apparatus intercepts these echoed characters for recording purposes. Escape sequences generated by the terminal will be recorded by the apparatus only if the computer echoes them back to the terminal for display. In most cases, escape sequences sent to the computer by the terminal are meant as control functions specific to the computer and will be acted upon but not echoed back to the terminal.
- the various switches on the control panel of the apparatus are checked to see whether any has been pressed. This check is made periodically, such as sixteen times per second. If affirmative, then the appropriate light is turned on.
- an inquiry is made to see whether pause or stop is active, i.e., either the pause or stop switches on the front control panel of the apparatus had been pressed. If not, then a tachometer control path is followed to see whether the tape had come to its end. Ordinarily when a tape comes to the end in a cassette, the tape drive motor stalls. In the present invention it is desirable to know that such a stall has occurred so that no further effort is made to try to receive data from the tape or to send data to the tape.
- the apparatus includes a Hall effect device or some other device, which acts like a tachometer to produce pulses representing rotation of the tape drive motor and, thus, movement of the tape.
- a Hall effect device acts like a tachometer to produce pulses representing rotation of the tape drive motor and, thus, movement of the tape.
- such Hall effect device puts out a pulse one or several times during rotation of the tape drive motor.
- the tachometer is read for a prescribed amount of time to load into a register or RAM the information representing the number of pulses put out by the tachometer. If the tachometer had not produced any pulses since last read, then that would indicate that the tape drive motor had stalled, i.e., was not continuing to rotate.
- an inquiry is made to see whether " a prescribed amount of time had elapsed since a pulse had been received by the tachometer. If time had elapsed and not pulse had been received, then at block 2070 a stop request flag is set to cause the apparatus to stop the tape, i.e., to deenergize the tape drive motor, withdraw the heads from the tape, and energize a light on the control panel to tell the user that the apparatus is in stop mode.
- each delay is for 100 milliseconds or less.
- the delay may be to hold up functions of play, record, etc., relating to data transmission or receipt, which is electronic and happens relatively fast, until the mechanical components, such as the tape heads and drive motor, have had adequate time to be operating properly (moved into place, come up to speed, etc.) to receive or transmit such data. If at block 2072 a delay is active, then the delay counter is decremented at block 2073 and another inquiry is made at block 2074 to see whether the delay is done. If affirmative, then a software flag indicating that the delay is done is set at block 2075. In either case the program then moves out of the DELAY0 portion of the subroutine. The DELAY1 portion 2076 of the subroutine works similarly.
- Special play mode is that in which the apparatus looks for a stop code on the tape, e.g., signifying the end of a lesson or of a portion of a lesson. If a stop code is encountered, then the apparatus would stop the tape and would allow the user either right away to try the lesson himself immediately or to rewind the tape to replay the lesson by pressing switches on the control panel or to restart the tape to go on to the next lesson. If special play is not active, then the interrupt timer subroutine 2004 is exited at 2081 back to the main routine in Section 1 of the flow chart.
- a subroutine is entered at block 2082 to flash the stop mark encountered lamp on the control panel of the apparatus to signify the same to the operator so that the operator can then listen to the audio portion of the lesson only, without the benefit of the digital portion thus allowing the operator to practice the lesson himself as prompted by the audio portion of the lesson.
- the timer interrupt subroutine 2004 then exits at 2083 back to the main routine 2002 in Section 1 of the flow chart.
- Section 1 at the interrupt timer routine 2004, if the receive data from the terminal interrupt had been received from the UART B (as detected at 2060 in Section 5), this probably indicates that the terminal desires to send data to the apparatus.
- the receive terminal subroutine 2005 is then called. Referring to Section 6 of the flow chart, the receive terminal subroutine 2005 is illustrated. Initially at block 2100 the interrupt flag that caused the subroutine 2005 to be called is cleared. Then at block 2101 an inquiry is made to see whether an error in the data had occurred; this is sensed if an error flag had been set. If affirmative, then at block
- the character received from the terminal at UART B is loaded into the processor register or RAM.
- the character is masked to eliminate the eighth bit because only seven bits are required by the apparatus for a valid character, and the nature of the eighth bit is not material.
- an inquiry is made to see whether the character received is one in the middle of an ignore sequence, such as an escape sequence.
- the program flows to block 2113 to check whether a configuration switch had been set to soft flow control. (If the apparatus is not acting in soft flow control, then there would be a hardware handshake flow control set up also by the configuration switches, as is usual. ) Soft flow control is Xon, Xoff type flow control of data between the terminal, computer and the apparatus of the invention. If affirmative, then at block 2114 an inquiry is made to determine if the apparatus is operative in the "Wang" mode. The "Wang" mode is a special mode set by the configuration switches to enable the apparatus to work with the special circumstances of a Wang brand computer. Other types of special circumstances also may be checked here, if desired. If the apparatus is configured to operate in the Wang mode, then at block 2115 a restore character signal is transmitted.
- an inquiry is made to see whether the character received is an Xon character. If affirmative, then at block 2117 the computer port UART A is turned on. A character is sent to the computer to indicate that data, e.g., a character or other code, can be received from the computer.
- an ignore count is incremented (bumped) , and the program flows to block 2120. If at block 2112 an ignore character had been matched in its entirety, then at block 2132 the ignore counter is initialized.
- the ignore sequence (refer to previous comments regarding ESCAPE sequence above) does not allow flow control if this delay is enabled. Typically Escape sequences are contiguous, therefore if the start of an escape sequence is detected, the remaining sequence must follow immediately. If not, then the delay timer senses this and cancels the ignore mode.
- the enable transmit terminal block is not really needed, but it avoids having to write additional bypass routines that would use more PROM space, which is at a premium.
- an inquiry is made to see whether the apparatus is operating in Duplicate mode, i.e., whether a Duplicate mode on the configuration switches (or on the front panel 30) has been selected. Such selection permits the copying of data from one tape in one apparatus to a tape in another apparatus. If the apparatus is not operating in DUP mode, then at block 2146 the character received from the tape is put in the hold buffer established in the RAM. At block 2147 a check is made to see whether the character is part of a stop sequence. If affirmative, then at block 2148 the character pointer is incremented (bumped) and at block 2149 a check is made to see whether the stop sequence is complete.
- a pause request is set to stop the tape motor while the operator may try the program, rewind the tape, go on to the next lesson, etc.
- the flow chart then exits at 2151 back to the main routine 2002 Section 1. If at block 2149 the stop sequence was determined not to be complete, then the routine exits at 2151 to the main routine until the stop sequence is complete, and so on.
- the program flows to block 1522. If duplicate is active at block 2145, then the character received from the tape is put into the hold buffer at block 2153 (even if the character is part of a stop sequence, because when duplicating a tape it is not desired to stop the playing tape in one apparatus while the recording tape in another apparatus still is moving to record information) , and the program flows to block 2152.
- the objective of saving the characters in memory for a while is to avoid having to communicate with the computer until such time as there may be a pause on the tape or the tape has stopped; in this way the possibility of the apparatus being operative to communicate with the computer while data sent from the tape is missed is avoided.
- the program flows to block 2159 to check whether PC . mode is active.
- the apparatus has to know whether to send the character from the tape to the terminal or to the computer. If not in PC mode, then the data is sent to the terminal at block 2160. If in PC mode the data is sent to the PC at block 2161. In either case the routine 2005 then returns back to the main routine 2002 at Section 1.
- the send stop string, mark or code routine 2031 is illustrated.
- an inquiry is made to determine whether the computer port had been turned off. If not, then at block 2201 the computer port, UART A, is turned off, and the routine returns to the main routine 2002 (Sections 1 and 3). Turning off the computer port also means de-asserting RTS or sending Xoff to the computer port UART A. This temporarily halts communication with the computer until the stop mark code is sent to the tape UART C, then re-enable communications to the computer by asserting RTS or sending an Xoff character. However, if at block 2200 the computer port had been turned off, then at block 2202 an inquiry is made to see whether the buffers are empty.
- routine returns to the main routine 2002. If affirmative, then at block 2203 a stop string is sent to the tape, at block 2204 the computer port is turned on; and the routine returns to the main routine 2002.
- the reason for checking to see whether the buffers are empty before sending the stop code is to be sure that no data that was intended to be received and/or transmitted with respect to the computer, terminal, and/or tape is lost when going into stop mark condition.
- Section 9 illustrates the transmit data to the tape or terminal routine 2026 (Section 3). It is entered from the main routine when it is desired to send data either to the tape or to the terminal.
- an inquiry is made to see whether the play switch had been pressed on the control panel of the apparatus. If not, then presumably there is an intent to transmit data to the tape for recording; if not then presumably it is intended to transmit the data to the terminal for display there.
- a check is made to see if the tape is ready, e.g., is the UART C ready to accept a new character. If the UART C is not ready, then the program returns to the main routine 2002 in Section 1 , as is indicated in Section 9. However, if the tape is ready, then at block 2212 the character is obtained from the buffer in the apparatus and is sent to the tape for recording. The program then flows to block 2214.
- the routine 2027 which is intended to transmit characters to the computer, regardless of whether the computer is one used with a terminal or is a PC.
- the routine 2027 is called from the main routine in Section 3.
- a check is made to see whether the channel to the computer is active. This means that the apparatus 10' allows UART A to transmit characters, e.g., record is active. If not, then the routine returns to the main program 2002. If affirmative, then a further inquiry is made to see whether it is time to do flow control at block 2221. If not, then the character is sent to the computer at block 2222 and the program returns to the main routine 2002.
- This routine 2400 acts a a means of debouncing the front panel push buttons and locking out other buttons from being sensed at the same time.
- This routine reads a memory location set during the timer interrupt routine (set switch status).
- set switch status a check is made as to whether the master lockout is active. If yes, the program returns to the main routine 2002. If no, at block 2402 a check is made as to whether this is the first time through the routine 2400. Specifically, the routine reads a memory location set during the timer routine (get switch status). If at block 2402 routine has been called for the first time, a lock flag is set at block 2403. The routine then returns to the main routine 2002. If at block 2402 the routine has not been called for the first time (or in other words, this is the second time), the master lockout is set at block 2404. At block 2405, the proper request is set and the routine then exits to the main routine 2002.
- the set tape mode routine 2033 sets the mode of the tape, e.g., to forward and play, forward and record, fast forward, rewind, etc. as is illustrated, depending on which switch has been pressed on the control panel of the apparatus, for example.
- Various responses occur depending on which of the following conditions is active, i.e., the appropriate switch has been pressed or the appropriate condition has occurred (stop code received) : pause, rewind, fast forward, stop, stop mark, record, and special play.
- a stop mark request is set so that the stop lamp is illuminated in such a way that the user knows that the apparatus had stopped due to encountering a stop mark, e.g., according to the flashing routine noted at block 2082 in Section 5 described above. The program returns to main routine 2002.
- Block 2273 determines whether the record is active. If the record is active, then at block 2274 an inquiry is made to see if the tape is in a write protect configuration. If so , then the program returns to the main routine 2002 because recording cannot take place on a write protected tape. However, if the tape is not write protected, then at block 2275 the record flag' is set, and then the program returns to the main routine 2002.
- Section 13 is the tape drive control subroutine 2027 from the main routine 2002 of Section 3.
- the tape drive control 2027 actually directly controls the operation of the tape in the apparatus, as is described.
- the various flags, timer checks, buffers filled, and other flags are used.
- the routine checks to see whether one of the pause, rewind, fast forward, stop, play or record switches had been pressed at the control panel of the apparatus. There also is a check to see if an invalid mode was attempted, e.g., more than one operational mode switch was pressed simultaneously.
- a flag identified "statape" is set to a value that includes a pause value, character or character string. Then, at block 2302 a check is made to see if the PC mode is active. If not, then the apparatus is set to an off-line condition at bock 2303 deenergizing the relays and making the apparatus transparent to the computer and terminal. If PC mode is active, then the relays can be put on-line at block 2304 because the personal computer (PC) already is able directly to communicate with its keyboard and monitor without the need for the apparatus of the invention.
- PC personal computer
- the program flows to block 2305. If rewind is active at block 2305, then at block 2306 a check is made to see whether play or record is current, i.e., is the apparatus currently playing or recording data. If affirmative, then at block 2307 the
- solenoid is released to remove the recording heads from the tape and the tape is stopped; then rewind is commenced at block 2309 by setting a flag, known as "statape" to a value indicating the desired rewind. If at block 2306 play or record is not current, then at block 2308 the solenoid is released, followed by rewind at block 2309.
- the program flows to block 2320.
- a check is made to see if in play or record mode.
- either the solenoid that holds the tape head to the tape is released at block 2322 or the solenoid is released and the tape is stopped at block 2323.
- the fast forward motor operation is commenced at block 2324 by setting the flag "statape" with a fast forward code. The foregoing is redundant to insure that the solenoid is released in order to protect the motors and heads from any potential damage. If at block 2320 the fast forward is not active, the program flows to block 2325.
- a timer is initialized, i.e., is set to a value. Then, at block 2327 a check is made to see if the buffers are empty; if not, at block 2328 a check is made to see if the timer has expired; if not, then the routine returns to the main program 2002 (Section 3).
- the reason for the checks at blocks 2327 and 2328 is to be sure, first of all that data that had been stored in the buffers is still sent to wherever it was intended before the tape is stopped.
- the timer 2328 protects from a lock up in case there is a problem in emptying the buffers. However, if the response at block 2327 or block 2328 is affirmative, then at block 2329 the solenoid is released (removing the recording head from the tape), the tape is stopped, and the flag "statape" is set to a stop value.
- stop If at block 2325 stop is not active, the program flows to block 2340. If play is active at block 2340, then at block 2341 the tape is started and the "statape" flag is set to a value indicating play. Then at block 2342 a check is made to see if special play is active. If so, then the apparatus is set off-line at block 2343 so that the user can type directly to the computer (regardless of whether or not in PC mode) to try out the program that had just been taught; and the program then returns to the main routine 2002 (Section 1 ) . At block 2342, if not in the special play mode, then a check is made at block 2344 to see whether PC mode is active.
- the transmit terminal UART B is enabled at block 2345 so that the apparatus sends data to the terminal for display. If PC mode is active, then at block 2346 the transmit computer is enabled so that data played by the tape can be sent to the personal computer via UART A for use and display thereon. If at block 2340 play is not active, the program flows to block 2350. If record is active at block 2350, then at block 2351 the tape is started, the flag "statape" is set to a record value, and the apparatus is placed on-line by closing the relays described above. At block 2352 a check is made to see if PC mode is active.
- the apparatus is enabled to transmit both to the tape and to the terminal at block 2353 because everything that comes from the computer is to be sent both for recording on the tape and for display on the terminal. If in PC mode, then at block 2354 the apparatus 10' is enabled to transmit only to the tape occurs because the personal computer is operative to communicate directly with its keyboard.and monitor independently of the apparatus of the invention. The flow chart then returns to the main routine 2002 of Section 1.
- Block 2355 checks to see if an invalid mode was attempted, e.g., whether two mode switches were pressed simultaneously.
- FIG. 31 the digital circuit portion 3000 of the apparatus 10' is illustrated.
- Such digital circuit is similar to the circuit illustrated and described above with respect to Figs. 1 through 24. Therefore, primarily only the distinguishing features of the digital circuit 3000 from those described above will be described in detail.
- the digital circuit 3000 includes the processor 93', such as a 68705 integrated circuit.
- a reset circuit 3001 (such as a DS1231 integrated circuit) coupled to the processor 93' causes it to start up and to reset with certain initialization characteristics, as is conventional.
- a system clock 3002 provides a clock signal to clock the processor 93' through its various routines.
- Configuration switches 3003 (mentioned above) and a decoder 3004, which decodes the settings of such switches, indicates to the processor 93' and the software operating thereon the particular configuration of the apparatus 10', e.g., for use with a PC in PC mode, for use with a computer and terminal arrangement, for operation in duplicate mode, etc. Usually such configuration switches 3003 would be set prior to powering up the apparatus 10'.
- the decoder 3004 is coupled to the processor 93' via the system bus 3005.
- a RAM (random access memory) circuit 3006 also is coupled to the bus 3005 and is used to store data as a FIFO, to store program instructions, if necessary, and to store various other information, flags, etc.
- a latch circuit 3007 associated with the RAM 3006 assists in maximizing byte size/word size of data stored in the RAM.
- a selector integrated circuit 3008 e.g., 74HC138
- a panel connector 3009 couples the digital circuit 3000 to the various circuits on the front or control panel 30' of the apparatus 10'. Further a power supply for the digital and audio circuits is generally shown at 3010.
- UART integrated circuits 101', 102', 103' are respectively coupled to transmit and to receive data relative to the computer, terminal and tape, respectively.
- A, B and C are respectively coupled to transmit and to receive data relative to the computer, terminal and tape, respectively.
- the terminal UART B 102' is not coupled.
- the UART devices are conventional and operate generally as is described elsewhere herein. Each has various flow control/handshake terminals to identify when it is desired to receive data thereby and when it is desired to transmit data therefrom.
- a baud rate clock 3011 is coupled to ' the several UARTs to provide a clock input and baud rate for operation of each.
- Eacih also has a transmit data terminal and a receive data terminal and each is coupled, respectively, as is illustrated, to the computer port 3020, terminal port 3021 or to record or play circuitry, respectively.
- An RS232 driver circuit 3023 is coupled to convert the level of the outputs of the respective UARTs from TTL level to RS232 level; and an RS232 receiver 3024 converts received RS232 level signals to TTL level for use by the UARTs.
- the tape UART 103' is coupled, without the need for special circuitry, to operate a conventional FSK encoder circuitry and to receive data from a conventional FSK decoder, both of which were described above.
- This connection arrangement facilitates developing and transmission of signals while maintaining accuracy of the recorded signals using the various further features described above, including the bias oscillator signal, filter and clamp, and leader detector circuits.
- relays 3031, 3032, 3033, 3034 are selectively energized or not to determine whether or not the apparatus 10 * is on line with the computer and terminal or with a PC, depending on whether the apparatus 10' is in play or record mode, on the one hand, or is not in play or record mode, on the other hand. More specifically, if the apparatus 10' is not in play mode or record mode, then the relays 3031-3034 are deenergized, and the various flow control/handshake connections and data transmit and receive connections between the computer and terminal ports 3021 , 3022 are directly interconnected via the various switches in those relays.
- the apparatus 10' when the apparatus 10' is in play mode or record mode, it is intended to operate in such a way that all signals sent between the computer and terminal are directed via the apparatus; and, therefore, the relays 3031-3034 are energized to open the direction comminutions between the ports 3021 , 3022 and to assure that those connections go via the apparatus 10 ' circuitry, such as the various UARTs and other control circuit functions.
- the tape UART 103' is coupled to the FSK circuitry described above to transmit and to receive the digital signals, characters, etc. relative to the tape.
- the signal which determines whether or not the relays 3031-3034 are energized is derived from the tape UART 103'. Specifically, the DTR terminal 3035 of that UART is coupled via line 3036 and an opto-isolator and amplifier circuit 3037 to the relay coils in each of the relays 3031-3034. When the tape UART 103' is ready to send or to receive data, the signal it produces at the DTR terminal 3035 thereof causes the opto-isolator and amplifier 3037 to energize the relays.
- Such DTR signal is produced only when the tap UART is operative to send or to receive data, which means that recording or playing of data is occurring, and, therefore, the apparatus 10' should be coupled to the computer and terminal. When the apparatus 10' is in some other on mode or is off, the relays 3031-3034 are deenergized so that the computer port 3031-3032 are coupled directly to each other.
- Fig. 32 there is illustrated a detailed schematic circuit of the driving circuitry 3100 for energizing the several parts of the tape mechanism, which is shown in detail in Fig. 25.
- the driving circuitry 3100 is coupled to the system bus 3005 and, thus, to the processor 93', which produces signals that call for specific operation of the driving circuitry.
- a record signal on line 3101 from the processor 93' is buffered by a schmit trigger circuit 3102 and inverting amplifier 3103 and is sent to the analog circuit described above to determine whether the apparatus 10' is to be in record mode or not.
- all of the control signals that cause operation of the analog board circuits are developed in the digital circuit. Examples are the mute signal on line 3110, oscillator signal on line 3111, solenoid signal on line 3112, as well as the motor drive signals partly derived from the signal on line 3113 and schmit trigger circuit 3114.
- the mute signal is produced when the stop button on the control panel 30' has been pressed to turn off the speaker and to disable the auxiliary audio output. Such signal operates through inverting amplifier 3115 and is coupled to the analog board via the connector 3116.
- the oscillator signal on line 3111 is used to turn on or off the bias oscillator for use with the recording of the signals on the tape, as was described above.
- the bias oscillator output is modulated by the FSK tone signals and the audio signals, the oscillator signal on line 3111 would be produced whenever recording is occurring.
- a schmit trigger circuit 3120 and amplifier circuit 3121 Associated with the oscillator signal line 3111 are a schmit trigger circuit 3120 and amplifier circuit 3121.
- a solenoid signal on line 3112 operates through the several a circuit 3122 including amplifiers and schmit trigger circuits and zener diode illustrated to drive or not a transistor 3123.
- the circuit 3122 is a hold circuit for the solenoid to hold it in or not to switch some gears between motors in the tape drive mechanism.
- the tape drive mechanism includes slow and fast motors, one for recording and playing and the other motor for fast forward and rewind.
- the solenoid signal on line 3112 determines whether the fast or slow gears are coupled to the tape drive gear itself.
- a motor drive circuit 3124 includes an integrated circuit 293D, which receives various inputs from the bus 3005 and is coupled via the connector 3116 ultimately to the two drive motors for the tape.
- the motor drive circuit 3124 determines which motor is energized to drive the tape at the appropriate speed and with the gears operated by the solenoid determines both speed and direction of the tape travel.
- a tachometer circuit shown in the lower left of Fig. 32 includes a Hall effect sensor 3200 that senses rotation of the tape drive spindle. As the spindle rotates, the tape moves, and the sensor produces pulses. Those pulses are coupled via an amplifier 3201 and line 3202 to the processor. If the processor does not receive a pulse from the tachometer within prescribed time periods when the tape should be moving, the processor presumes that the tape has stalled and stops energizing the tape drive motor.
- the present invention may be used to teach use of a computer, software used on the computer, etc., to demonstrate operation of various software and hardware, and to evaluate the performance of a student.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Entrepreneurship & Innovation (AREA)
- Multimedia (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Digital and audio record/play apparatus includes a recording means (72, 92) for simultaneously recording in a medium both digital information (91) and audio information (71) and play means for simultaneously playing from said medium both such digital information and such audio information. A method for recording and playing digital and audio information, includes recording simultaneously in a medium both digital information and audio information, and playing simultaneously from such medium both such digital information and such audio information. Circuitry for improving accuracy of the recorded and played signals and for decoding signals is disclosed.
Description
Title: TRAINING METHOD AND APPARATUS WITH AUDIO AND DIGITAL SIGNALS RECORDING AND PLAY BACK
Technical Field
The present invention relates generally, as is indicated, to a training method and to an apparatus for use in such training and other purposes and, more particularly, to such an apparatus in which both audio and digital signals or information representing the same are able to be recorded in and played back from a medium.
Background
With the many uses found for computers and other technological devices in business and industry, and with the prolifera ion of software, including new software and improved versions of old software, the time, effort and cost for training personnel in the use of such computers, other technological equipment and, particularly, in the use of certain software have become quite substantial. For example, a newcomer to a particular job may have to learn new job tasks, such as how to fill out forms that are displayed on a computer terminal, to input information filling out the form and to store such information in the computer and/or various recording media, such as magnetic disk storage or the like. A trainer typically would spend time with the newcomer to teach precisely how to use the equipment and software in order properly and efficiently to carry out the assigned job tasks.
Similarly, in various office environments the proper and efficient use of certain software, such as word processing, database, spreadsheet and other software should be taught to employees who use the same in order to maximize the efficiency of such employees in their use of various hardware and software. It often is the case that an employee may learn the basic operation of a particular software package and equipment using the same, but the sophisticated intricacies of such software that enhance the tasks carried
out by the software and equipment using the same may not be learned in view of inadequate time to learn the same and/or inadequate expertise of a supervisor or other individual who has the responsibility for training a new employee to use the software and equipment.
Moreover, business managers who are not familiar with certain equipment, such as computer equipment, and software may not be qualified to evaluate performance of employees and/or of equipment and software used by those employees, which may hamper effective decision-making functions of the manager. Such managers, though, may feel uncomfortable to request training in the equipment and software and/or may not have adequate opportunity to be trained during convenient times when a trainer is available.
In the past there were available several semi-automated techniques for teaching and/or training individuals in the use of computer equipment software. In one system, for example, a floppy disk containing certain programmed learning features would be installed in a computer and would be operated somewhat in conjunction with a separate audio tape recorder. The trainee would listen to the audio tape and would then operate the computer according to that which was learned from the tape and according to the programmed materials on the computer disk. In another training system a customer would lease a digital/audio tape player that was to be connected to a monitor. A cassette tape was furnished to the customer by the manufacturer of the digital/audio tape player. The tape had both digital and audio information stored on it. When the tape was played in the digital/audio player, a user could see on the monitor certain information and could listen to audio information simultaneously describing the displayed information; however, such player was unable to record information.
Brief Summary of the Invention
The present invention automates and improves the training in the use of computer equipment, software, and the like and also may be used in conjunction with other functions, as will be described in greater detail below.
The training method of the present invention enables a trainer to operate a computer while orally describing what operational steps he or she is carrying out. For example, the operator may describe why the carriage return key on the keyboard is pressed at a certain time in the sequence of operation of software and the computer using such software. The trainer may describe which lines in a form displayed on the monitor are to be filled in by a computer operator/employee, when to fill in those lines, how to fill in those lines, what information to place there, etc. While the trainer is describing such information, the trainer also may type in such information at the keyboard. The results of such typing or data entry into the keyboard, i.e., that which would be displayed on the monitor as a result, is recorded simultaneously with the oral explanation of the trainer. Subsequently, a trainee may play the tape or other medium in which the digital and audio information had been recorded by the trainer in order to see on the monitor and to listen to the oral explanation that which had been recorded. The redundancy of providing inputs to both the senses of sight and hearing to the trainee enhances the training effectiveness. The trainee also may type on the keyboard to practice the lesson just demonstrated, thus adding a further redundancy of the sense of touch. Further, the trainee may replay the tape several times until the trainee feels comfortable having mastered the particular lesson concerning the specific use of the computer and software, for example.
Thus, the method and apparatus of the invention are extremely versatile. One person familiar with specific software can make a training tape to teach use of that software, which can be used to train many trainees. When the software or hardware is changed or enhanced, which would
require an employee to learn new procedures and/or functions of the software or hardware, a new training tape can be made conveniently. The time required for the trainer to do training is appreciably reduced over personal face-to-face training requirements. Also, the trainee can train at his/her own pace and convenience.
The invention may be used in ways other than training. One example includes making presentations at trade shows to customers and the like to demonstrate the operation of certain equipment by providing digital signals (previously recorded) to control and to operate such equipment while simultaneously providing synchronized oral explanation of such operation. Another example of a use of the invention is for displaying and describing simultaneously a spreadsheet and information therein, database information, graphical information, etc. Further, the invention may be used for testing purposes to examine the proficiency of a trainee, student, employee, etc., in the use of certain equipment and software by recording an operator's operative steps with a computer while recording the operator's oral explanation of such operation.
Briefly, the digital and audio record/play apparatus of the present invention includes a recording system for simultaneously recording in a medium both digital information and audio information and a play system for simultaneously playing from the medium both the digital information and the audio information. Since the digital information and the audio information are recorded simultaneously, accurate synchronization is achieved; therefore, oral explanation of what is being displayed on the monitor as a function of the digital information received by the monitor from the play system will properly coincide.
As is described in greater detail below, in one embodiment the medium in which the digital information and audio information are recorded is magnetic tape, and conventional two . track tape head, one track for the audio
information and one track for the digital information, are used to record and to play back information with respect to the magnetic tape as the heads of the conventional cassette tape recorder would function for recording and playing audio information, for example. Other media and recording/playing devices also may be used, though, consistent with the invention. Circuitry according to the invention provides the proper form of signal representing the audio information and the digital information for recording by the tape head. Further, playback circuitry also is provided for receiving from such respective tape head information previously recorded on the tape for amplifying and/or otherwise decoding and using such information and/or signals representing the same.
According to the preferred embodiment of the invention, the digital and audio record/play apparatus of the present invention has a number of functions, including those of recording, playing, stopping the tape (if desired, also marking the tape with a stop code when recording, so when subsequently playing back the tape it will automatically stop when a stop code is encountered), pausing, fast forwarding of the tape, rewinding the tape, duplicating a tape, and various other level adjusting and displaying functions. The invention is used, among other things, for recording and playing audio information. The invention also is used to record and to play back digital information.
An exemplary definition of audio information is that which represents an audio signal and can be recorded in a medium. An audio signal is an electrical signal that is generally AC in character with varying frequency and amplitude characteristics, represents sound, and can be amplified and played as sound. An exemplary definition of digital information is that which represents logic 1's and logic 0's (or other logic convention and/or signal levels) and can be recorded in a medium. A digital signal is a logic 1 or logic 0 (or other logic convention or signal levels) or may be an assemblage of logic 1's and logic 0's, etc.
The digital and audio record/play apparatus of the present invention is particularly useful in an environment in which a computer terminal, sometimes referred to as a dumb terminal or a semi-intelligent terminal, is separate from the main computer. The apparatus of the invention, then, preferably is coupled between the terminal and the computer. Hereinafter, reference to the computer indicates the separate computer as described and reference to the terminal indicates that device having a monitor and keyboard. The terminal may be used to enter commands, data, etc., for conveyance to the computer by electrical connection between the terminal and the computer; and the monitor may be used to display signals that are transmitted from the computer. Communications between such a computer and a terminal usually is carried out in asynchronous fashion. Thus, the invention may be used in virtually any system in which asynchronous communications is carried out. However, it will be appreciated that apparatus embodying principles of the invention may be used in other systems with appropriate modifications as will be evident to those having ordinary skill in the art.
The various objects, features, aspects and advantages of the invention will become more apparent as the following description proceeds.
To the accomplishment of the foregoing and related ends, the invention, then, comprises the features hereinafter fully described in the specification and particularly pointed out in the claims, the following description and the annexed drawings setting forth in detail a certain illustrative embodiment of the invention, this being indicative, however, of but one of the various ways in which the principles of the invention may be employed.
Although the invention is disclosed in* detail with respect to the preferred embodiment and best mode, it will be appreciated that the scope of the patent issuing on this application is to be limited only by the language of the claims and equivalents.
Brief Description of the Drawings
In the annexed drawings:
Fig. 1 is a schematic illustration of a digital and audio recording and play back apparatus of the invention connected between a computer and a terminal;
Fig IA is a schematic illustration of the invention, similar to Fig. 1, used with a personal computer;
Fig. 2 is a schematic block diagram of the audio record and play system of the invention;
Fig. 3 is a schematic block diagram of the digital record and play system of the invention;
Fig. 4 is a schematic diagram of a power supply; Fig. 5 is a schematic circuit diagram of the push-button input circuitry for the apparatus of the invention;
Fig. 6 is a schematic block diagram of a motor control circuit to control the tape drive motor, capstan motor, and associated apparatus for the tape drive and record/play heads in accordance with the invention;
Fig. 7 is a schematic block diagram of the tape head control circuitry for the invention;
Fig. 8 is a schematic circuit diagram of the audio record/play circuit;
Fig. 9 is a schematic circuit diagram of the digital record/play circuit (a portion of the digital record/play circuit also being shown in Fig. 10B mentioned below);
Figs. 10A and 10B are collectively the electronic data processing and control circuitry of the apparatus of the invention;
Figs. 11, 12 and 13 are schematic illustrations representing the flow of data and operation of asynchronous data ports showing their interconnections with each other and with the computer and terminal during record mode, play mode,, and pause, fast forward, rewind, and stop modes;
Figs. 14 through 24 present a computer program flow chart diagram illustrating a shorthand representation of a computer program for use in overall operation and control of the apparatus of the invention as illustrated in Figs. 1 through 13;
Fig. 25 is the first of a number of drawings depicting a modified embodiment of the apparatus of the invention, and, in particular, shows the output tape mechanism control circuitry;
Fig. 26 is a schematic illustration of the front panel or control panel of the modified apparatus;
Fig. 27 is a schematic illustration of an auxiliary input connector for the modified apparatus;
Fig. 28 is a schematic circuit illustration of the digital record and play circuitry;
Fig. 29 is a schematic circuit illustration of the clamp and filter, leader detector and FSK decoder circuits of Fig. 28;
Fig. 30 is a schematic circuit illustration of the audio record and play circuitry of the modified apparatus;
Fig. 31 is a schematic circuit illustration of the digital control circuit for the modified apparatus;
Fig. 32 is a schematic circuit illustration of the tape mechanism driving circuitry and the tape motion sensing tachometer circuitry used in the digital control circuit for the modified apparatus; and
Unnumbered with figure numbers but labeled with Section number 1 through 13 are a plurality of sections of a computer program flow chart for operating in the modified apparatus of the invention.
Description of the Preferred Embodiment
Referring to the drawings, wherein like reference numerals designate like parts of the several figures, and initially to Fig. 1, a digital and audio record and play apparatus in accordance with the present invention is indicated at 10. The apparatus 10 is connected between a terminal 11 and a computer 12.
In Fig. 1A the apparatus 10 is coupled to a personal computer, hereinafter sometimes referred to as a PC or as a microcomputer; and specific use and operation of the apparatus with a PC will be described below with reference to the figures following 'Fig. 24.
As seen in Fig. 1, the terminal 11 includes a monitor 13 and a keyboard 14 of conventional type. The terminal 11 may be a dumb terminal, a semi-intelligent terminal, or even a microcomputer or the like. However, for purposes of the invention, it will be assumed that the terminal 11 is a dumb terminal that requires interconnection with a computer 12 for full operation. More specifically, the terminal 11 would be used to enter commands, data or the like via the keyboard 14, and those commands, data, etc., would be transmitted to the computer 12. In response to receiving such commands, data, etc., from the terminal 11, the computer 12 would transmit data or information to the terminal 11 for display on the monitor 13, and so on, as is well known in the art. The computer 12 may be a microcomputer, a minicomputer, a mainframe computer, or some other hybrid computer, etc. The computer 12 may operate more than one terminal or only the single terminal 11.
The apparatus 10 of the invention may be coupled between the terminal and the computer 12 and used in various modes_. In the record mode, the apparatus 10 is used to record audio information and to record all signals that are transmitted from the computer to the terminal for display to the computer operator/user. All signals from the terminal to the computer are conveyed via the apparatus in such case and
likewise all signals from the computer are conveyed via the apparatus to the monitor and also simultaneously are recorded. In the play mode, the connection between the computer and terminal is interrupted by the apparatus of the invention, and only the digital signals that had previously been recorded are transmitted by the apparatus to the terminal for display on the monitor. In various other (stop, pause, etc.) modes of operation of the apparatus of the invention, such apparatus in effect becomes transparent and in such case the computer and terminal are interconnected through the apparatus 10 without any interruption of the signals transmitted between the computer and terminal.
The invention will be described below with reference to an example of a use for the terminal 11 and computer 12, as follows. Assume, for example, that a depositor at a bank wishes to open a new bank account. The teller may bring up on the terminal 11 a form for opening a new bank account by calling up the form from the computer 12. The teller would type in information, such as the name, address, and other information relating to the depositor, the amount of money with which the account is to be opened, etc.; that information would be conveyed to the terminal 12 and also would be displayed on the monitor 13. Such display of information may be directly from the keyboard 14, but preferably such display is a result of the computer 12 receiving the information from the keyboard 14 and then sending signals to the monitor 13 to cause it to display such information. The apparatus 10 may be used to record the signals sent from the computer 12 to the terminal 11 for display on the monitor 13 and subsequently to play such recorded signals for delivery directly to the terminal 11 for display on the monitor.
The invention may be used with many other environments, systems, etc., for similar and other purposes as will be evident. Preferably the apparatus 10 is useful with various electrical equipment, most preferably with
computer systems and terminals and, even more preferably, with systems that employ asynchronous signal transmission, RS232, RS422 and like serial signal transmission, and so on.
The apparatus 10 includes a tape drive and tape generally designated collectively and individually 20. The tape may be, for example, a conventional magnetic tape contained in a cassette. Information is stored in the tape and/or may be read from the tape in conventional fashion, e.g. , as in a conventional audio tape recorder, a conventional tape backup system for a computer fixed/hard disk system, etc. The information to be recorded in the tape may be recorded on the surface of the tape, in the tape, etc., in conventional fa≤hion. Moreover, other media may be substituted for the tape and tape drive 20 to provide the desired storage and play back of information or signals representing information, as may be desired.
A counter 21 counts the running distance along the tape 20. A counter reset 22 may be used to reset the count. A power on/off switch, the state of which can be observed by power on indicator 23, can be closed by a user to provide power to various portions of the apparatus 10. A level indicator 24, for example, a conventional LED or bar graph display, on the face of the apparatus 10 displays the level of audio signals received and recorded and being played. Several knobs 25, 26, 27 may be used to adjust potentiometers or other devices for signal level control during play back, during recording of audio input, say, from a microphone, and recording of a secondary audio input, for example, from a background music source or the like, respectively.
Mounted on the front face or control panel 30 of the cabinet housing the apparatus 10 are switches 31-38 which may be selectively closed (or otherwise operated) to effect pause, rewind, play, fast forward, stop, stop and mark with a stop code, record, and duplicate tape functions of the apparatus 10. The switches 31-38 may be momentary contact switches which can be pressed and released or other types;
they cause the desired operation of the apparatus 10. Associated with the switches 31-38 are a plurality of light emitting diode (sometimes referred to herein as LED) or other indicators 41-48, which may be energized to identify the present operational mode of the apparatus 10 as a f nction of which of the switches 31-38 had most recently been pressed.
The apparatus 10 is connected by an electrical cable connection 50 to the terminal 11 and by another electrical cable connection 51 to the computer 12. Preferably, the terminal 11 and computer 12 are only connectable via the apparatus 10 and are not separately interconnected at least with respect to the sending and receiving of commands, data, signals, or the like, between the terminal 11 and computer 12. Thus, such commands, data, signals or the like must be transmitted between the terminal 11 and computer 12 via the apparatus 10 as described below.
The apparatus 10 may be used with the terminal 11 and computer 12 to record information, to play information, and to be effectively transparent, the latter being the case when the apparatus 10 is not in either the record or play modes. In record mode an operator would press the record switch 37, whereupon the tape drive 20 would operate to record digital and audio information on the tape. The operator may orally describe what he or she is doing; and an external microphone 52, or an internal microphone 52a in the apparatus package itself, receives the oral/audio signals and couples them via electrical cable connection 53 to the apparatus 10 for recording. Simultaneously, the operator may input (e.g., type) commands, data or other miscellaneous information on the keyboard 14. Such commands, data, or other miscellaneous information hereinafter will be referred to collectively as keyboard commands (data, characters, etc.). The keyboard commands are coupled via the keyboard cable 54 and cable connection 50 to the apparatus 10, which in turn transmits the keyboard commands via cable connection 51 to the computer 12.
Responding to the keyboard commands, the computer 12 may operate in various ways to process the keyboard commands, as is well known, and also produces signals (hereinafter referred to as computer commands) to cause something to happen at the terminal 11 , such as the displaying of something on the monitor 13. The computer commands are sent on cable connection 51 to the apparatus 10; and the apparatus 10 transmits the computer commands via cable connection 50 to the terminal 11 and monitor 13 for display thereon. While such computer commands are being sent to the monitor 13, they also are being recorded as digital information on the tape in the tape drive 20.
Subsequently, when it is desired to play the audio and digital information from the tape 20, an operator would press the play switch 33. The tape drive 20 then would play back the digital and audio information previously recorded thereon. During such play back the apparatus 10 directly sends the previously recorded computer commands directly along cable connection 50 to the monitor 13. The apparatus 10 would block the communication between the cable connections 50 and 51 during such play back so that the computer 12 would not interfere with the computer commands sent by the apparatus 10 to the terminal 11 and monitor 13. During such play back the apparatus 10 also couples the audio information to a speaker 55, which is connected by a cable connection 56 to the apparatus 10 in order to reproduce the words that the original operator had recorded on the tape 20. In this way, the operator/listener now can see on the monitor 13 that which had been displayed when the tape had been recorded and hear the description of what is being seen and what keyboard commands had to be generated (typed) to cause such information to be seen so as to learn to use the equipment and software. According to the" apparatus described with respect to the drawings after Fig. 24, there preferably is a means provided in the apparatus to disconnect the speaker 55 from playing during a recording session to avoid
feedback. However, there also may be provided a connection for earphones that may be worn by the person making the recording so that the person making a recording on a tape can hear "privately" without feedback what is being recorded, i.e., without disconnecting the speaker 55. Moreover, the speaker 55 itself may be an earphone speaker.
It will be appreciated that the apparatus 10 may be used in a direct connection with the terminal 11 for training purposes even without being connected to the computer 12. The connection to the computer 12 is needed, though, when recording is required. Further, during the rewind, fast forward, stop, and pause functions of the apparatus 10, the apparatus 10 would effect a connection between the cable connections 50, 51 thereby becoming transparent to the interconnection of the terminal 11 and computer 12.
Referring to Fig. 2, a block diagram of the audio record/play system 70 of apparatus 10 is illustrated. The system 70 includes a conventional record/play circuit 71 with a tape head 72 for recording information on the tape or for receiving information from the tape in conventional manner. *.
The circuit 71 may include amplifier and/or other devices for causing the head 72 to apply magnetic signals to the tape and to read back the signals received from the head. In the record mode, the microphone 52 is coupled to an audio input connector or jack 73 or the internal microphone may be used, also being coupled to such audio input. An amplifier 74 amplifies the audio input and delivers the same to a mixer 75. An auxiliary audio input, for example, from a background music source or any other auxiliary audio input may be coupled to the input jacks 76, amplified by amplifier 77 and also coupled to mixer 75 for mixing with the input from the microphone;. The mixed audio signal is delivered to the level indicator 24 for display indicating the level of the audio signal at the output of the mixer. The audio signal at the output of the mixer 75 also is delivered to the audio record/play apparatus 71 for recording by the head 72 onto the tape.
During playing of the audio information stored on the tape 20, the signal received from the head 72 and the record/play circuitry 71 is deliverer to a filter 78, which filters out the data crosstalk, for example, due to the digital information that had been recorded on the tape. An amplifier 79 amplifies the filtered signal from the filter 78 and sends a signal representing the level of the amplified signal to the level indicator 24 and via cable connection 56 to the speaker 55. Thus, during play back mode, a person can hear via the speaker 55, which may be a conventional speaker, an earphone, etc., the oral explanation made by the original operator who recorded information on the tape 20, as was described above.
The level indicator 24 includes an integrated circuit 85 (such as part number LM3915 manufactured by National Semiconductor) , which receives the signal representative of level of audio signal on line 86 either from the mixer 75 or amplifier 79. Depending on the signal level on line 86, the circuit 85 selectively applies logic 0 signals, i.e., it completes ground circuits, for respective light emitting diodes 87, thereby illuminating a respective number of diodes representative of the level of the audio signal. Such a level indicator circuit 85 is conventional and others may be used.
A block diagram of the digital record/play system 90 of the invention is illustrated in Fig. 3. The system 90 includes a record/play circuit 91 and head 92, which may be identical to the circuit 71 and head 72 described above with reference to the audio record/play system 70 or may be of other design particularly adapted to record the digital information as is described below. Operation of the system 90 to record and to play digital information is under the control of a microcomputer unit MCU 93, which may be, for example, a so-called computer-on-a-chip type device, such as a part sold under number MC 68705U3 by Motorola Inc..
Such an MCU 93 includes ports that can be configured to be either an input or an output, internal memory, buffers, registers, timing means and the like, as is well known. A RAM, for example, a 2K by 8 static ram 94, is coupled to the MCU 93 to store data temporarily. A plurality of configuration switches 95 may be set by a user of the apparatus 10 prior to actually turning on the power in order to convey to the MCU 93 information concerning, for example, baud rate, data bit length, stop bit information, whether the apparatus 10 is to be used with a PC or not (especially in the embodiment of the invention illustrated in detail in the drawings after Fig. 24, etc.). A control circuit and with the switches (31-38) generally indicated at 96 provide inputs to the MCU 93 to indicate the mode of operation of the apparatus 10 desired by a user. Also associated with the MCU 93 in the apparatus 10 is the tape mechanism 97 which drives the tape for recording, playing, etc. The tape mechanism includes a solenoid driver 98 which moves the several record and play heads to and away from the tape for recording/playing or not, respectively, and also includes a motor 99 to drive the tape forward and reverse, fast and slow, as is conventional. The MCU 93 alone or in combination with one or more of the other elements 94-96 may be considered the processor for the apparatus 10 to determine whether and when data is to be received from various external devices, such as the terminal 11 or computer 12 and/or whether and when digital and audio information is to be recorded on or played back from the tape 20.
The digital record/play system 90 also includes three asynchronous devices 101, 102, 103, each, for example, being a UART (universal asynchronous receive/transmit device). These sometimes are referred to as UART A, B or C, respectively. Examples are those identified by part number MC 68661 manufactured by Motorola Inc.. Such devices are software programmable and operated/controlled. Such UART devices 101-103 may be used to receive serial digital signals
and to output the same as parallel digital signals or to receive input parallel digital signals and to transmit output serial digital signals representative of the input. Such devices are conventional and they operate generally in conventional fashion. The UART A 101 provides serial digital signals for recording and receives serial signals played back for subsequent delivery to the terminal 11 and sometimes is referred to as the tape port. The UART B 102 communicates via a computer port 102a between the MCU 93 and the computer 12 and sometimes is referred to as the computer port. The UART C 103 communicates via a terminal port 103a between the terminal 11 and the MCU 93 and sometimes is referred to as the terminal port. Such communication and operation will be described in further detail below. A relay control 119 is operated by the MCU 93 to open or to close switches associated with the computer port 102a and terminal port 103a to determine whether or not the apparatus 10 is to be on-line with such computer and terminal. Off-line would occur when the apparatus 10 is turned off or is not in a record or play mode; on-line would occur when playing or recording is being effected, for example.
Digital information is recorded on the tape 20 when digital signals are received from the computer 12. Such received digital signals are received as serial digital signals on line 104 by the UART 102. Such signals are converted by the UART 102 to parallel digital signals. The MCU 93 receives such parallel digital signals and couples the same to the UART 101 for delivery on the output 105 of the UART 101 as serial signals. An FSK (frequency shift keying) encoder 106 (such as part number XR2206 of EXAR) converts the logic 1 and logic 0 signals received from the output 105 of the UART 101 to respective frequency signals representing such logic 1 and logic 0 conditions and couples those frequency signals serially along line 107 to the record/play circuit 91 for subsequent recording by the head 92 on the tape. During such recording process, the MCU 93 also couples
the parallel data received from the UART 102, as was just described to the UART 103 for delivery as serial signals via output line 108, which is connected to the terminal 11 via cable connection 50. Therefore, as the digital information is being recorded, the several signals forming such information also cause displaying of information, etc., on the monitor 13.
Associated with the mentioned FSK encoder circuit 106 is a bias oscillator circuit 109 which is combined with or AND'ed with the digital data intended for recording on the tape. Such bias oscillator is described in detail below relative to the embodiment of the apparatus illustrated in the drawings after Figure 24.
Usually, it is necessary to initiate a transmission or communication with respect to the computer 12 before computer commands in the form of digital data are received back from the computer 12 for recording as was just described. Such communication with the computer 12 may be effected in response to keyboard commands, data, etc., input to the keyboard 14 and coupled via the connection 54 and connection 50 to the system 90. Such keyboard commands are received at input line 110 to UART 103. The UART 103 converts such keyboard commands to parallel data, which is handled by the MCU 93 and is output by it via the UART 102 output line 111 and output port 102a and to cable connection 51 to the computer 12. Therefore, it will be appreciated that communication between the terminal 11 and computer 12 may be achieved via the apparatus 10 using the UARTs 102, 103 under control of the MCU 93.
In operation of the digital record/play system 90 to play digital information from the tape 20, the head 92 and record/play circuit 91 receive the digital information from, the tape and delivers the same as frequency signals to a filter 112, which also may include a clamp circuit described further below, and to a level detector 113 (in another embodiment the leader detector may be a leader detector
described further below), which also may include or be substituted for by a tape leader detector circuit described further below. The frequency signals usually are two different frequencies, one representing a logic 1 and the other representing a logic 0. The circuit 91 and/or other circuitry may be frequency responsive and, therefore, will amplify a signal of one frequency a different amount it will amplify a signal of a different frequency. Preferably the amplitudes should be the same, and the filter 112 is used to accomplish such equalization. Such filter 112 filters one of the two frequency signals more or less than the other to achieve such equalization. An automatic gain control circuit 114 may be employed in connection with the output of the filter 112 and delivers the frequency signals of substantially fixed amplitude, now, to an FSK decoder 115. The automatic gain control equalizes the mark and space frequencies. The FSK decoder 115 is a conventional device such as, for example, a part number XR2211, or like device, that converts the frequency signals to respective logic 1 *and logic 0 signal levels in the form of serial data provided on line 116 as an input to the UART 101.
The level detector 113 prevents noise on the tape 20 from being considered digital signals. The level detector 113 is coupled between the output 117 from the circuit 91 and an enabling control or chip-select input 118 to the FSK decoder 115. The level detector 113 detects whether the signal received at line 117 is of adequate level to indicate specifically recorded digital information. If the level of the signal on line 117 does not reach a certain threshold level, it is assumed that such signal is noise, for example, that may occur at a leading portion of the tape before or at an intermediate tape portion where no audio and digital information had been recorded on the tape. If the computer is not sending data when record is entered, then a frequency representing a digital "1" is recorded on the tape. If the level detector 113 does not detect a signal on line 117 of
adequate amplitude or level, it will disable the FSK decoder 115 from outputting information to the UART 101. However, if the signal on line 117 exceeds such threshold level, then the level detector 113 enables the FSK decoder 115.
The schematic illustration of Fig. 3 is representative of the apparatus 10 that is described in detail below relative to Figs. 4 through 24. However, various features of the illustration of Fig. 4 also are representative of the apparatus according to the invention which is described in greater detail below relative to the drawings following Figure 24. In regard to the latter, it will be appreciated that the apparatus 10 includes a control panel 30 on which the mode switches are accessible, and two main circuit boards 119, 120, on which mostly digital or mostly analog functions, respectively, are carried out; schematically, such circuit boards are outlined by phantom lines in Fig. 3. Such separation of functions are exemplary only and, if desired, other arrangements of the parts of the apparatus of the invention also may be employed.
A power supply 130 also is provided to provide desired voltages for use in the apparatus. Exemplary voltages may be +12, -12, +5, -5 and ground. Briefly referring to Fig. 4, the power supply circuit 130 includes AC input terminals 131 and a chassis ground 132, e.g., for receiving 120 volt AC input power. The AC input terminals are coupled via a switch and a fuse to a transformer 133 that steps down the voltage. The output from the transformer 133 is rectified by a rectifier 134 and is provided to three respective voltage regulators 135, 136, 137 to produce ground, -12, +12, and +5 volts outputs on terminals 138, 139, 140, 141, and 138 respectively, for use in the circuitry of the invention. A voltage of -5 volts also may be obtained in conventional fashion. Various bias resistors, filtering capacitors, and diodes 142 are used conventionally. The transformer 133, rectifier 134, and regulators 135-137 may be conventional devices, such as parts LM 317, LM 317 and LM 337, respectively, of National Semiconductor.
Turning to Fig. 5, the switches 31-38 and connections thereof for providing inputs to the MCU 93 and elsewhere in the apparatus 10 are illustrated. Each switch 31-37 is connected directly or indirectly to the MCU 93 (Fig. 3) and/or to a bidirectional port control circuit 150 (Fig. 6) in the motor control circuit 151. The switches 31-37 are of the momentary contact type. When pressed, such switch places a high or low logic signal on one or more output lines specified below. The bidirectional port control circuit 150 when receiving one of such signals on an input port or terminal thereof automatically converts such input port to an output port to maintain the continued level of such signal until another input is provided to the bidirectional port control circuit 150. A relatively high positive voltage is applied on line 152 from the power supply 130. +5 volts is applied to other terminals, as is shown.
Closure of pause switch 31 puts a low logic level on output line 161. Low logic level usually means a logic 0 or ground signal, and high logic level usually means logic 1, e.g., +5 volts, (although other conventions may be used). Closure of rewind switch 32 puts a logic 0 on output line 162, which causes LED 42 to be illuminated. Closure of switch 32 operates through an inverter or NAND gate 32a to invert the level of the signal coupled by the switch 32. Closure of play switch 33 produces a high logic signal on line 133a and a low logic signal level on line 133b, the latter being generated by an inverter 33a the output of which is coupled to the LED 43 which emits light to indicate operation in the play mode. Closure of the fast forward switch 34 produces a high logic level on line 134a and a low logic level on line 134b causing the LED 44 to be illuminated indicating fast forward operation. Closure of the stop switch 35 provides a low logic level on line 135. Closure of the stop mark switch 36 produces a low logic level on line 136. Closure of the record switch 37 produces a high logic level on line 137a and a low logic level on 137b causing the LED 47 to be illuminated indicating record mode of operation.
The various lines indicated at 130' near the bottom of Fig. 5 are coupled to the various ports 130a' of the bidirectional port control circuit 150 in Fig. 7. As was mentioned above, when such circuit 150 receives specific input, it converts the port at which such input was received to an output port to maintain such signal level initially received until changed by receiving an input to another input port. In this way, the circuit 150 maintains the various logic levels produced on lines 131-137 as a result of a momentary closure of one of the switches 31 through 37.
In Fig. 5 the lines 135 and 161, 136 are coupled as inputs to the MCU 93 indicating an intent to fast forward or to pause operation. Such fast forward or pause operation is achieved under control of the MCU 93 which in turn causes respective signals on lines 134a or 131c to drive respective LED' s 44, 41 to emit light. More particularly, the MCU couples line 152 to line 131c by way of 171a and 171b. Circuit 150 detects this and makes line 131d high causing LED 41 to. turn on. The processor drives line 172 low, causing line 135c to go low, turning on LED 45.
In Fig. 6 is a schematic illustration of the motor control circuit 151, which includes a conventional circuit commercially available from International Electro Magnetics Inc., Model No. GR-5000-MCC, for use with conventional audio tape recorders to provide motor control functions. The circuit 151 includes the bidirectional port circuit 150 which receives various inputs on lines 130a1 and produces on outputs 152 various logic 1 or logic 0 signals representative of the inputs to cause operation of the tape drive fast forward/reverse motor 180, the capstan motor 181, and the record/play solenoid 182 for fast forward, rewind, play, record, stop, pause, and stop and mark functions. The boxes 180-182 in Fig. 6 represent the respective motors and solenoid and appropriate control and power circuits to operate the same in response to signals on output lines 152 from the circuit .150; such boxes 180-182 are analogous to the
solenoid driver 98 and motor driver 99 in the tape mechanism 97 illustrated in Fig. 3.
The circuit 150 produces high signals on respective output lines 152 as a function of the most recent input signal to a respective input line 130a'. A high signal produced on output line FF from the circuit 150 causes the tape drive motor 180 to fast forward the tape 20. A high signal on output line REW causes motor 180 to rewind the tape 20. A high signal on play output line causes the capstan motor 181 to rotate and also operate the record/play solenoid to throw it into play mode. A high signal on the record (REC) output line also turns on the capstan motor and throws the record/play solenoid into record mode. A high signal on the pause output line stops the capstan motor. The various circuits and operational details of the circuits of Fig. 6 are available from International Electro Magnetics Inc. in connection with its commercially sold circuit number GR-5000-MCC, all of which are incorporated entirely by reference.
Fig. 7 is a schematic illustration of the tape head control circuit 190. The tape head control circuit 190 is a conventional circuit that is commercially available from International Electro Magnetics Inc. under Model No. GCC-5000-RAC. The tape head control circuit includes solenoid operated switches 191, 192 which are thrown from one condition to the other as a function of the energization of the solenoids 182 in the motor control circuit 151.
The tape head control circuit 190 includes the audio and digital record/play circuits 71 , 91 , which provide signals to heads 72, 92 for recording or receive signals from the heads 72, 92 for playing. Solenoid operated switches 191, 192 are thrown either to record position "R", as is illustrated, or to the play position "P" (making connections between the center and right-hand contacts illustrated) under control of the solenoid 182 (Fig. 6). In record mode audio input received from the mixer 75 (Fig. 2) on line 193 is
delivered by circuit 71 to head 72 for recording; and digital input received from FSK encoder 106 (Fig. 3) on line 107 is delivered by circuit 91 to head 92 for recording. The circuits 71, 91 also are coupled to an erase circuit 194 to enable a bias oscillator 195 and an erase head 196 to erase the tape 20 before new information is recorded on the tape, as is conventional.
In the play mode, the solenoid 182 throws the switches 191, 192 to play position. The head 72 and circuit 71 put audio signals on line 197 (Fig. 2) for playing through speaker 55; and the head 92 and circuit 91 put digital signals on line 117 for delivery to the terminal 11 for causing a display on monitor 13. The various circuit and operational details of the circuit of Fig. 7 are available from International Electro Magnetics Inc. in connection with its commercially sold circuit GCC-5000-RAC, all of which are incorporated entirely by reference.
The record/play audio circuit 70 is illustrated in detail in Fig. 8. The microphone input 73 is coupled via amplifier 74 to the mixer 75, which includes an amplifier 200 and a pair of input resistors 201, 202. The auxiliary input 76 also is coupled via the amplifier 77 and input resistor
202 to the amplifier 200 of the mixer 75. A potentiometer
203 is coupled to adjust the gain of the microphone amplifier 74; and an auxiliary potentiometer 204 is coupled to adjust the gain of the auxiliary amplifier 77. The potentiometers 203, 204 may be coupled to the respective knobs 26, 27 (Fig. 1 ) accessible to be adjusted from the outside of the housing containing the apparatus 10. Line 193 to the output of the mixer amplifier 200 is coupled to the record/play audio circuit 71 (Figs. 2 and 7).
An analog switch 205 is coupled to receive control inputs on lines 206, 207, respectively, from the circuit 150 (Fig. 6) depending on whether a signal indicating record is received on line 208 or signal indicating play is received on line 209. Such signals are produced on lines 208, 209, as a
function of whether or not the record switch 37 or play switch 33 had been pressed. When a signal on line 208 indicates record mode, a signal on line 193 at the output of the mixer amplifier 200 is delivered via switch 205a to an amplifier 210 and rectifier circuit 211. The amplifier and rectifier convert the audio signal to a DC signal level, which is provided to line 186 for delivery to the level indicator circuit 24 (Fig. 2) indicating the level of the audio signal being recorded.
In the play mode a signal received on line 197 from a record/play audio circuit 71 and head 72 (Fig. 2) is filtered in a band pass filter 78, which blocks the cross-talk that occurs in the head so that the audio signal does not include the digital data signal. The output from filter 78 is coupled via capacitor 212 and volume adjusting potentiometer 213 to the audio amplifier 79. Such audio amplifier may be a conventional solid state device, such as one sold under part number LM 380 manufactured by National Semiconductor. The output from the audio amplifier 79 is coupled via a capacitor 214 to the output line 56 for delivery to the speaker 55 (Fig. 2). Line 56 also is coupled via the switch 205b, when a play signal is received on line 209 from the circuit 150 (Fig. 6) for delivery to the amplifier 210, rectifier 211, and line 186 for displaying the audio signal level at the level indicator 24 (Fig. 2). An auxiliary output 215, including a transistor amplifier 216 and output jacks 217 also is coupled via a capacitor 218 and the capacitor 212 to the output of the filter 78. The auxiliary output 215 is used, for example, to couple the audio signal to an amplifier for broadcasting the audio signal via a relatively large speaker. In contrast, the speaker 55 (-Fig. 2) coupled to the output of the audio amplifier 79 may be, for example, an earphone or a relatively small speaker that does not require a large signal for driving the same.
The volume adjusting potentiometer 213 may be coupled to the knob 25 for adjusting such potentiometer from the outside of the housing containing the apparatus 10, as is illustrated in Fig. 1. Therefore, the knob 25 may be adjusted to adjust the level of the sound output by the apparatus 10. The knobs 26 and 27 may be adjusted to adjust the level of the audio signal being recorded by the apparatus 10.
Turning to Fig. 9, the play portion of the digital record/play system 90, which is shown in block form in Fig. 3, is illustrated in detail. Digital signals that are encoded in the form of respective frequency signals are received on line 117 from the digital head 92 and digital record/play circuit 91 (Fig. 3). The frequency signals are provided a data recovery circuit 230 which includes the high pass filter 112, the automatic gain control circuit 114, a gain amplifier 231, and the FSK decoder 115. The filter 112 preferably is a high pass filter which emphasizes a high frequency signal received on line 117 so that the high frequency and low frequency signals delivered to line 232 at the input to the automatic gain control circuit 114 are of approximately the same amplitude. Other types of filter circuits may be substituted for the filter 112, depending on the nature of the signals received on line 117, the objective being to have such signals be at approximately the same amplitude for subsequent decoding in the FSK decoder 115.
The automatic gain control circuit 114 may be a conventional circuit that tries to maintain a three volt peak-to-peak level output signal on line 233. Such circuit 114 may include an integrated circuit 234, which may be part number XR13600 manufactured by EXAR and an amplifier 235, which are coupled in a conventional fashion to provide the desired automatic gain control function. A further gain amplifier 231 amplifies the output from the automatic gain control circuit 114. A DC filter capacitor 236 blocks DC signal at the output from the amplifier 231 from leaching the
FSK decoder. A capacitor 237 removes high frequency noise from the frequency signal intended to be delivered to the FSK decoder 115. Output line 116a from the FSK decoder is coupled to an output transistor 240, which provides logic 1 and logic 0 signals on output line 116 for delivery to the UART 101 (Fig. 3) as a function of the nature of the frequency signal received by the digital record/play system 90 and decoded by the FSK decoder 115. Various resistor and capacitor connections are provided the FSK decoder 115 to enable it to discern the nature of the input frequency signals received by it so as to produce correct respective logic 1 and logic 0 signals at its output line 116a for a delivery via transistor 240 to the line 116.
The level detector 113 is coupled to line 117 and is intended to determine whether or not the signals received on line 117 are of adequate level so as to represent intentionally recorded digital information from the tape 20. The level detector includes a comparator 241 , which compares the level of the signals on line 117 with a reference potential. If the level is adequately high, then the comparator 241 will continuously trigger a retriggerable one-shot multivibrator 242. As long as the multivibrator 242 is triggered, the output 243 therefrom is maintained at a logic 0 level causing transistor 244 to be cut off. The digital signals on line 116a from the FSK decoder 115 then are able to be coupled via transistor 240 to the output line 116. On the other hand, if the level of the signals received on line 117 is inadequate to trigger the one-shot multivibrator 242, then a logic 1 (or high) signal is produced on line 243 causing the transistor 244 to conduct and to shunt any signal on line 116a away from the transistor 240. The transistor 240 will not be able to conduct then, and the output on line 116 will remain high according to the five volt potential applied to the collector of the transistor 240.
Turning, now, to Figs. 10A and 10B, the MCU 93, associated processor circuitry 250, and connections to various other portions of the apparatus 10 are illustrated. Fig. 10B includes the record portion 90R of the digital record/play system 90 (Fig. 3), the details of the play portion being described just above with respect to Fig. 9.
The record portion 90R includes the FSK encoder 106 and associated resistor and capacitor connections thereto to enable the same to respond to logic 1 and logic 0 signals input on line 105 from the UART 101 to be converted to proper frequency signals that are delivered to the output 107 for coupling to the digital record/play circuit 91 and head 92 for recording on the tape 20. The signals received on line 105 are logic 1 and logic 0 signal- levels provided in serial fashion from the TxD (transmit data) output from the UART 101. More specifically, the UART 101 receives a parallel byte of digital data at the input 251 thereof. An oscillator 252 provides a clock signal to the UART 101 and to the other UART's 102, 103, and in response to such clock signal and other control signals received at various inputs to the UART 101, such UART produces logic 0 and logic 1 signals serially on the line 105, as is well known.
Still referring to the UART 101, when such UART receives serial data at its RxD (receive data) input on line 116 from the play portion 90P of the digital record/play system 90, the UART 101 assembles such serial data and converts the same to parallel data which is output on the lines 251 for delivery to the MCU 93 and subsequent use, specifically for delivery through the UART 103 to the terminal 11.
Operation of the UART 101 in the just-described manner and operation of the UART's 102, 103, as will be described .further below, is under the control of the MCU 93 to transmit or to receive data and to convert the data from parallel to serial or from serial to parallel format. Program instructions for operation of the MCU 93 and other
portions of the apparatus 10 may be contained in an internal read only memory contained in the MCU 93 or provided from an external source, as may be desired. The frequency signals encoded by the FSK encoder 106 and decoded by the FSK decoder 115 may be, for example, at 9800 Hz and 14400 Hz, respectively, representing logic 0 and logic 1 levels. Other frequencies and other conventions may be used as will be appreciated by those skilled in the art.
The MCU 93, as was mentioned above, preferably is a part number MC 68705U3 by Motorola. Such device includes internal memory, for. example, EPROM, and RAM, a CPU, latches, registers, etc., as is well known. The MCU includes 24 bidirectional ports or lines 253, eight input only ports 254, and a number of control function and input ports 255, as is known. The input lines 254 include those which are connected via a connector 260 to the push button switches of Fig. 5 to receive inputs when a respective switch is pushed to indicate a function intended as a result thereof. The input lines 261, 262, 263 are coupled to the respective UART's 101-103 to provide inputs to the MCU 93 indicating a condition of the respective UART's. The ports 253 which are connected to a bus for the purpose of selecting which of the UART's 101-103 and a RAM 265 is currently selected for operation including both the selecting of such device, the enabling of such device, and the determining of whether data is to be read from or written to such device.* Thus, the bus 264 serves in a sense as an address bus and as a control bus for the UART's 101-103 and the RAM 265.
The RAM 265 may be, for example, a 2K by 8 static ram able to store data therein when necessary, e.g., while the MCU 93 is carrying out other functions. When the data is required, the MCU 93 can retrieve it for use and/or for delivery to appropriate device or location. A buffer 266 is provided to buffer the address lines of the RAM 265 in conventional fashion.
Line 270 from the MCU 93 enables the RAM 265, and line 271 provides a clock input to the buffer 266. A control bus 272 connects various output lines from the MCU 93 to the connector 260 (Figs. 10A and 5) to provide signals that affect operation of the apparatus. For example, an enable pause signal can be provided on line 273 to be coupled to line 171 (Fig. 5) to effect pause operation after switch 31 has been pressed and a signal on line 161 has been communicated to the MCU 93 requesting a pause function. Software in the MCU 93 may respond to the signal on line 161 to cause a pause output on line 171 that in turn operates through the amplifier 171a and transistor 171b (Fig. 5) to effect pause operation via a signal on line 131c also shown in Fig. 5. A signal on line 274 provides a stop signal on line 172 (Fig. 5) when a stop function is called for upon closure of switch 35.
The bidirectional ports 280 are used to receive parallel data from the respective UART's 101-103 and to deliver to the respective UART's parallel data. Typically, parallel data from a UART is received by the MCU 93 at ports 280 and subsequently is written to a different UART from the ports 280. The UART from which the data is received and the UART to which the data is directed are functions of the then current operational mode of the apparatus 10, e.g., record, play, or one of the other modes described.
In addition to the connector 260 which is coupled to the push button switch circuits of Fig. 5, a terminal connector port 290 and a computer connector port 291 (also identified 103a, 102a, respectively) are provided to couple data between the respective UART's 102, 103 and the computer 12 and terminal 11, respectively.
Referring to the UART 102, the data input lines 292 are coupled to the bus 280 from the MCU 93, and' the address, chip enable, read/write inputs are coupled to the address bus 264. When it is desired that the UART 102 transmit data to the computer via the computer port connector 291 , parallel
data at the input 292 (or stored in internal RAM within the UART 102) is transmitted via transmit line 111 and NAND gate 293 to the computer port connector 291. The computer port connector 291 is connected to the computer 12, which receives serial data so transmitted. When the computer 12 sends serial data to the apparatus 10, specifically to the UART 102 at the receive data input 104 thereof, such input serial data is provided via the computer to port connector 291 , inverter 294, and gate circuit 295. The output from the gate circuit 295 is provided on line 104 to the receive data input of the UART 102. Such data is converted to parallel data by the UART 102, is read by the MCU 93, and is delivered by the MCU 93 to the UART 103 for display and if in the recording mode, to the UART 101 for recording. An additional NAND gate 296 and inverter 297 are coupled between the computer port connector 291 and the UART 102 to receive and/or to transmit Xon, Xoff, and like signals for usual purposes of, for example, indicating an intent to send information and/or indicating whether or not information can be received by the computer and/or the UART 102.
Gates 295 and 320 are additional circuits to convert the computer port to RS-422. The UART 103 is connected to a terminal port connector 290 via NAND gate 300 and inverter 301. The NAND gate is coupled to the transmit terminal 108 of the UART 103 and couples serial logic signals to the terminal for display on the monitor 13. The inverter 301 receives serial data from the terminal, such as keyboard commands , and delivers them to the receive terminal 110 of the UART 103. A NAND gate 302 and an inverter 303 couple respective DTR and CTS terminals of the UART 103 with respec to the terminal to communicate control information indicatin that data is to be sent and/or whether data can be receive in conventional fashion.
In Figs. 10A and 10B, lines that are broken at th bottom of the former and at the top of the latter, which ar indicated generally by reference numeral 310A, 310B,
respectively, are respectively coupled to each other to complete the circuit 250.
The processor circuit 250 includes a reset circuit 311, which includes a diode 312 and a capacitor 313. When the apparatus 10 is powered up, the capacitor 313 begins to charge. When the capacitor fully charges, a reset signal is delivered to the MCU 93 and via the transistor 314 to the UARTS 101-103. Upon being reset, the MCU 93 configures the UART's 101-103 as a function of configuration switches 315, Fig. 10B. Such switches may be conventional DIP switches that configure the serial communications channels indicating baud rate, stop bits, etc. A buffer 316 is connected between the switches 315 and the data bus 280 so. hat the MCU 93 only reads the DIP switches 315 when power initially comes on, i.e., during initialization.
The stop code is generated, as follows. In record mode, when the stop code button is pushed, the MCU 93 sends a special string of characters to UART 101, recording them on the tape. Pullup resistors 330 are used to bias certain lines to the logic high condition, such as the receive interrupt output lines of the UARTS 101-103.
Referring to Figs. 11-13, functional data flow diagrams are illustrated to show the flow of data during record mode (Fig. 11), play mode (Fig. 12) and pause, fast forward, rewind, and stop modes (Fig. 13). In Fig. 11 record mode data (computer commands) is received at UART 102, is serialized, and is delivered to a first in first out (FIFO) memory 400 in the 2Kx8 static ram. The data leaves the FIFO and is communicated via UART 103 to the terminal 12 and via the UART 101 to the FSK encoder 106 for recording. The terminal 11 may send Xon and Xoff signals to the computer 12 via line 401 , FIFO 402 and line 403 to indicate whether or not the terminal is able to receive additional data. During such record mode, the input line 116 to the UART 101 from the FSK decoder 115 is disabled.
In the play mode represented in Fig. 12, data is received by the UART 101 on line 116 from the FSK decoder 115. Such data is serialized in the UART 101 and is stored in the FIFO 404 thereof. Such data is coupled to the UART 103 and is sent therefrom via line 108 to the terminal 11. The connections to the computer 12 are disabled during such playing; and the connections 110 from the terminal and to the FSK encoder on line 105 are disabled.
In the pause, fast forward, rewind and stop modes represented in Fig. 13, the apparatus 10 is intended to be transparent between the terminal 11 and computer 12. Accordingly, the connections to and from the FSK encoder and FSK decoder are disabled at the UART 101. Data received from the terminal 11 is communicated directly to the computer 12; and data from the computer is communicated directly to the terminal. Specifically, data from the terminal, e.g. keyboard commands, is received on line 110, is seriallized in the UART 101, is stored in the FIFO 402, is coupled to the UART 102 to be parallelized, and is transmitted to the computer via line 111. Similarly, data (e.g. computer commands) is received from the computer on line 104, is parallelized by UART 102, is stored in FIFO 400, is coupled to UART 103, is seriallized, and is transmitted on line 108 to the terminal 11. The UART 101 is disabled during such operation.
Turning to Figs. 14-24, various portions of a computer program flow chart are illustrated. The flow chart is a short hand form of a complete computer program listing for operating the apparatus 10 in accordance with the invention as is described herein. It will be appreciated that a person having ordinary skill in the electrical and programming arts would be able to follow the flow chart and to write the appropriate programming language code to carry out the functions and processes disclosed in the flow chart and described herein.
The fundamental program cycles in the flow chart of Fig. 14. During initialization (block 500) the MCU 93 reads the switches 315 to set up initial and subsequent conditions for operation, such as baud rate, stop bits, parity, etc. The program then continues to cycle in a loop 501. In block 502 is transmit channel A logic (channel A is the computer), e.g. to empty FIFO 402 of the terminal UART 103 (channel B) to the computer 12. In block 503 is the transmit channel B (terminal) logic and the channel C (FSK) logic, which will be described in greater detail below. After going through block 503, the program follows loop line 504 back to block 502, etc.
As is also seen in Fig. 14, interrupt blocks 505-508 are provided to provide respective interrupts to the MCU 93 to cause operation of respective subroutines after which the program returns to the location existing prior to receiving the interrupt. Block 505 is the receive channel A interrupt handler; if any character is received from the computer 12, this interrupt obtains the character and puts it into the FIFO 400. The receive channel B and C handlers 506, 507 do the same thing if a character is received from the terminal 11 or FSK decoder 115. The timer interrupt handler 508 generates interrupts at specific times, e.g. 1000 times per second, to look at various conditions and operations of the apparatus 10, as is usual programming practice.
The initialization routine of block 500 is amplified in Fig. 15. At block 510 the MCU 93 is set up to indicate which ports are inputs, outputs and bidirectional. At block 511 the internal RAM of the MCU 93 is tested and is cleared. The configuration switches 315 are read at block 512, and the channels A and B, computer and terminal, are configured according to such switch settings, vis-a-vis baud rate, stop bit, parity, etc. Channel C for UART 101 always is 4800 baud, even parity, 1 stop bit and having a character length that is a function of the setting of one of the switches 315. At block 513 variables are initialized. At block 514 a
sign on message is displayed on the terminal, e.g. announcing the version of the program operating the apparatus 10, etc. Finally, at block 515 the timer or clock function to the MCU 93 is configured to indicate how many times an interrupt is to occur to cause the MCU to carry out certain checking functions.
In Fig. 16 are shown the details of the transmit channel A handler 502. At block 502 an inquiry is made to see whether channel A (the computer) can accept a character; the MCU 93 looks at UART 102 to see if it is ready. If affirmative, then at block 521 an inquiry is made to determine whether an Xon or an Xoff signal should be sent; this is to tell the computer whether or not to send more data. If negative, then at block 522 an inquiry is made to determine if there are any characters in FIFO B 402. If affirmative, then one character is taken at block 523 and is sent to the computer 12. Then at line 524 the program exits to block 503 in Fig. 14 to proceed to the transmit channel B logic.
■If during the response to the inquiry at block 522 is negative, then the program exits along line 525 to the transmit channel B logic 503 in Fig. 14. If the response to the inquiry at block 521 is affirmative, then line 526 is followed to block 527 to cause an Xon or Xoff to be sent and then the program exits along line 528 to the transmit channel B logic block 503 (Fig. 14). If at block 520, the result of the inquiry is negative, then the program exits along line 529 to block 503 in Fig. 14.
The transmit channel B handler routine 503 is illustrated in Fig. 17; it is entered at the conclusion of the transmit channel A handler of block 502. At block 540 an inquiry is made to determine whether channel B (the UART 103 and terminal 11) can accept a character. If not, then the program exits along line 541 to loop line 504 of Fig. 14. If affirmative, then the current mode is obtained at block 542 to determine whether the apparatus 10 is in fast forward,
play, rewind, stop, pause or record mode. If at block 543 record mode is detected, then a subroutine line 544 (to Fig. 18) is followed. If negative, then an inquiry is made at block 545 to determine if the current mode is play mode, then subroutine line 545 is followed to Fig. 19; and if not, then subroutine line 547 is followed to Fig. 20.
Considering subroutine line 544 from Fig. 17 to Fig. 18, at block 550 an inquiry is made to determine whether channel C (the FSK UART 101) can accept a character. If not, then the program exits on line 551 to loop line 504 (Fig. 14). If affirmative, then an inquiry is made at block 552 to determine if any characters are in FIFO 400. If not, then the program exits along line 553 to loop line 504 in Fig. 14. If affirmative, then at block 554 the first character in FIFO 400 is taken by the MCU 93 and is sent to the UART 103 and terminal 11 for displaying and is sent to the UART 101 and FSK encoder for recording.
At block 555 an inquiry is made to determine whether FIFO 400 is empty. If not, then the program exits along line 556 to loop line 504 in Fig. 14. If affirmative, then at block 557 an inquiry is made to determine if an Xon should be sent to the computer 12, e.g. if an Xoff had existed, then an Xon is sent now. If not, then at line 558 the program exits to loop line 504 in Fig. 1 . If an Xon should be sent, then at block 559 a flag is set to sent Xon in the transmit channel A handler routine 502 when it is next encountered. The program then exits on line 560 to loop line 504 of Fig. 14.
Referring to Fig. 19, if the apparatus is currently in the play mode, as answered affirmatively at block 545 in Fig. 17, then following line 546 to block 570 an inquiry is made to determine if any characters are in FIFO 404 of the FSK UART 101. If negative, then line 571 is followed to exit to loop line 504 in Fig. 14. If affirmative, then at block 572 one character is taken from the FIFO 404 and is sent to the terminal 11 via UART 103. The program then exits along line 573 to the loop line 504 of Fig. 14.
In Fig. 17, if the line 547 is followed because the apparatus 10 is in the fast forward, rewind, pause or stop mode, then, referring to Fig. 20, an inquiry is made at block 580 to determine if any characters are in FIFO 400 from the computer. If not, then line 581 is followed to exit to loop line 504. If affirmative, then at block 582 one character is taken from FIFO 400 and is sent to the terminal 11 via UART 103. At block 583 an inquiry is made to determine whether FIFO 400 is empty. If not, then the program exits along line 584 to loop line 504. If affirmative, then at block 585 an inquiry is made to determine whether an Xon should be sent to the computer (this is done if an Xoff had previously been sent). If not, then the program exits line 586 to loop line
504. If affirmative, then at block 58-7 a flag is set to send an Xon to the computer 12 when the program next enters the transmit channel A handler block 502. The program then exits line 588 to loop line 504.
The interrupt functions 505-508 (Fig. 14) are illustrated in Figs. 21-24. If an interrupt event occurs that requires use of the channel A interrupt handler routine
505, e.g. a signal is coming in from the computer, then at block 600 in Fig. 21 the interrupt signal is provided the MCU 93. At block 601 the character is read from channel A, i.e. the character in the UART 102 is read by the MCU 93, which then puts the character into FIFO 400 at block 602. If the FIFO 400 is getting full, then at block 604 a flag is set to send an Xoff to the computer 12 the next time that the transmit channel A handler logic block 502 is encountered. The program then exits to the place from which it had entered the interrupt. If the FIFO 400 is not getting full, then line 606 is followed to exit to the place from which the program had entered the interrupt.
In Fig. 22 is illustrated the receive channel B interrupt handler. If such an interrupt is received at block 610, then at block 611 the character is read from the terminal by parallellizing it in the UART 103. At block 612
an inquiry is made to determine if the character is an Xoff. If affirmative, then at block 614 a flag is set so that characters will not be sent when the next transmit channel B handler logic block 503 is encountered. The program then exits via line 614 to that point in the program from which it had come when entering this interrupt 610. If the response in block 612 is negative, then at block 615 an inquiry is made to determine whether the character is an Xon. If affirmative, then at block 616 the flag not to send characters in the next transmit channel B handler logic 503 routine is cleared so that a character in fact can be sent then. The program then exits line 617 to the place in the program from which it had entered the interrupt 610. If the response at block 615 is negative, then at block 618 the character read at UART 103 is placed in the FIFO 402 for subsequent delivery to the computer 11 in the channel A handler logic 502.
Referring to Fig. 23, if the interrupt is for the receive channel C interrupt handler 507 (Fig. 14), then the received interrupt at block 630 causes the character to be read from channel C (the FSK channel and UART 101) at block 631. At block 632 an inquiry is made to determine whether the character received was the stop code string. If it is a stop code string, then at block 633 the MCU 93 puts the tape mechanism into pause mode to stop the tape from running until the operator pushes the pause switch again. The program then exits at line 634 to that point in the program from which it had come. If the answer at block 632 is negative, then the character ready on UART 101 is put into FIFO 404 for subsequent delivery to the terminal, and the program exits line 636 to the point from which it had entered the interrupt 630/507.
Turning, now, to Fig. 24, the timer, interrupt handler routine 508 is illustrated in detail. When a timer interrupt, e.g. which occurs about 1000 times per second, that interrupt is obtained at block 640. At block 641 the
status of the lines coming back from the motor control and tape drive control circuits of Figs. 6 and 7 is checked. At block 642 an inquiry is made to determine whether the mechanism on circuits of Figs. 6 and 7 indicate operation in the record mode. If affirmative, then at block 643 the UART 101 is enabled to transmit data to the FSK encoder, and the UART 101 is prevented from receiving data from the FSK decoder. The program then exits line 644 to the place from which it had entered the interrupt 640/508.
If the response at block 642 is negative, then at block 645 an inquiry is made to determine whether the apparatus 10 is in the play mode. If affirmative, then at block 646 the UART 101 is enabled to receive data from the FSK decoder and is disabled to prevent transmitting data to the FSK encoder. The program then exits line 647 that point from which it had entered the interrupt 640/508. If the apparatus 10 is not in play mode or in record mode, then it must be in the pause, fast forward, rewind or stop mode; and, therefore, at block 648 the UART 101 is disabled from receiving or transmitting data with respect to the FSK encoder and decoder. Then at block 649 the various other software timers are serviced, e.g. which determine how long a pause button must be pushed, how long to keep the light emitting diodes 41-47 on, etc., are determined and acted on, whereupon the program exits line 650 to that point from which it came.
Modified Apparatus 10'
A modified version of the apparatus 10 is referred to below as 10'; modified apparatus is similar to that illustrated in Figs. 1, 1A, 3, and so on described above with reference to apparatus 10. Therefore, in Fig. 1, for example, reference numeral 10' also is used to designate the apparatus shown there. In describing apparatus 10', primed reference numerals that are the same as those referred to above with out the prime designation identify similar parts in terms of construction and function. There are differences in the circuitry and software or flow chart between the apparatus 10 and the apparatus 10', and below those differences will be described in detail with reference to the several drawing figures mentioned below.
Referring to Fig. 25, the apparatus 10' is intended to control operation of the erase head 196', digital record/play head 92', audio record/play head 72', fast forward motor 180', record/play motor 181', and record/play solenoid 182'. These parts function generally in the manner describe above. Switches 1000, 1001 respectively respond to whether the tape in the apparatus 10' is write protected and whether the door to the tape recorder is open; and they communicate such information back to the other portions of the circuit of apparatus 10'. A light emitting diode (LED) 1002 indicates when power is on. A sensor 1003, such as a Hall sensor, is coupled relative to the tape drive to produce pulses indicating that the tape is moving; and not to produce pulses if the tape is not moving; this information can be used to indicate when the end of the tape has been reached. The various parts illustrated in Fig. 25 are coupled to and operated by various other circuits of the apparatus 10', as are described herein.
In Fig. 26 are illustrated the mode select switches 31 '-37' and indicators 41 '-47', which set and indicate the operative mode of the apparatus 10', respectively, pause, rewind, play, fast forward, stop, automatic stop (also providing the function of stop and mark the tape with a stop
code), and record. An additional configuration switch, not on the front panel 30' in Fig. 26, is the duplicate switch that may be used to indicate that the apparatus 10' is being used to duplicate whereby the tape does not stop when a stop code may be received as the tape is serving as a master from which to make a duplicate tape. When one of the switches 31'-37' is closed, a read latch 1004 reads and stores such closure information and sends that information to the processor (also referred to above as MCU) 93 via a connector 1005. The processor 93 then sends a signal to write latch 1006, also via connector 1005, from which a respective LED 41'-47' is driven to emit light indicating the operative mode of the apparatus 10' .
Also associated with the control panel 30' is the LED bar graph or other VU (volume unit) type of meter equipment 87', which is driven by a conventional bar graph driver, such as a LM3915, to light up according to the volume of the audio signal being recorded and/or played, as is conventional. The bar graph driver 85' and LEDs 87' are coupled to other circuitry of the apparatus 10' via a further connector 1007. Potentiometric controls 25', 26' and 27' also are coupled via the connector 1007 to other circuitry of apparatus 10r, respectively, to adjust audio volume during playback, microphone sensitivity, and auxiliary input sensitivity. The internal microphone 52a' and a preamplifier 1008 are mounted relative to the control panel 30' and are connected via connector 1007 to other circuitry described below.
An auxiliary circuit 1010 in Fig. 27 provides connections from the analog circuit board 120' (Fig. 3 and several figures below) via a connector 1011 to jack type connectors 1012, 1013 for connection, respectively, with earphones and a microphone. The Jacks are of the type that make and break respective circuits as a function of whether or not a connector had been plugged therein. Therefore, if earphones are not used, the internal speaker 55' is connected and vice versa; and. if an external microphone 52' is not used, the internal microphone 52a' is connected and vice versa.
In the apparatus 10 described in detail above the tape recorded or captured signals that were transmitted from the computer to the terminal. Upon playback of the tape the computer was not necessary because whatever the computer had sent to the tape and terminal now was provided from the tape directly to the terminal. In the apparatus 10' there is improved versatility. The apparatus 10' may function in the manner just described for the the apparatus 10, and it also may function in a video sense such that video images are sent directly to the computer for display on the computer monitor, especially when that monitor and computer are part of a personal computer system in which the monitor operation is based on bit mapped graphics. More specifically, when operating in the PC mode, which can be set on one of the configuration switches of the apparatus 10', the apparatus 10' communicates with the computer via the computer serial port. Software in the computer, such as one of the type sold under the brand COSESSION, is used to read any changes made on the monitor four times per second, to compress that data and to send that data via the serial port to the apparatus 10 ' for recording. Upon typing "PLAY" into the computer when such COSESSION software is resident in memory, the subsequently transmitted data from the tape to the serial port is decompressed by the COSESSION software and is directed to update the video card that drives the computer monitor.
Hereinafter, reference to operation of the apparatus 10' in PC mode indicates that the apparatus is coupled to the serial port of a personal computer and operates as just summarized. Such PC mode connection is illustrated in Fig. 1A in which a personal computer 1020, which includes a keyboard 1021 and a monitor 1022 and various computer circuitry inside a cabinet 1023, is coupled to the apparatus 10'. Non-PC mode of operation indicates coupling of the apparatus between a computer and a terminal, as was described in detail above, e.g., relative to Fig. 1.
Briefly referring back to Fig. 25, a solenoid pull in or energize circuit 1030 is illustrated. Circuit 1030 provides a large amount of power or current to pull in the solenoid 182' and then a smaller power or current to hold the solenoid in energized condition without burning out the windings of the solenoid. The circuit 1030 is a charging circuit. Initially upon receiving a signal at terminal 1031 indicating that the solenoid should turn on, the transistor 1032 is heavily biased to conduction to provide large current to pull in the solenoid placing the tape heads into engagement with the tape for recording or playing. Afterwards, when capacitor 1033 has charged for a reasonable time period, the bias on the transistor 1032 is reduced to a stable level which is one at which a smaller current is provided to maintain the solenoid energized. If desired, rather than using a solenoid 182', a worm gear arrangement or some other arrangement may be used to move the tape heads toward and away from the tape.
On the analog/audio board 120 is located the digital encoder circuitry 1040 which is operative to prepare the digital data received from a computer for recording on the tape. Recording pure digital signals is usually unreliable in tape media using conventional tape recording technology, which is preferred due to minimal cost. Therefore, such digital signals are converted to frequency signals which are recorded as tones on the tape; a tone of one frequency representing a logic 0 and of a second frequency representing a logic 1. Frequency shift keying technique is used to generate such tone or frequency signals, as follows.
First, the signal received on line 1041 from the processor 93', which is on the digital board 119', indicates whether the apparatus 10' is in record or play mode. If in record mode, an opto-isolator 1042 couples a positive signal via a transistor 1043 to a pair of relays 1044, 1045 which place the apparatus 10' the proper record or play mode. Accordingly, the speaker 55' is switched off by switch 1044a, a record enable signal is provided by switch 1044b to the circuit
1040, and the audio and digital signals for recording are not grounded by switches 1045a, 1045b. However, when in the play mode, the relays 1044, 1045 are deenergized. Therefore, the speaker 55' will be activated by switch line 1044a, the record signal at switch line 1044b is disabled, and the audio and digital signal lines for recording on the tape heads are disabled by switches 145a, 145b.
Being enabled for recording due to a signal on line 1041 from the processor 93', then, digital data received at connector 1050 from the digital board 119 (having been received there from the computer) is coupled to a frequency encoder 1051, such as an XR2206 integrated circuit. Depending on whether the signal received is a logic 0 or a logic 1 , the frequency signal produced by the encoder 1051 will be, for example, 9KHz or 15KHz, respectively, e.g., depending on various bias settings, etc. The frequency signals are coupled via resistor 1052 and capacitor 1053 to one input of a digital record/play switch circuit 1054, such as an LM1818 integrated circuit.
The output side of resistor 1052 is coupled to a switch terminal in relay 1044 to be clamped low when the relay is deenergized (in play mode) to prevent signal from the FSK encoder 1051 from feeding to the circuit 1054 preventing extraneous noise on the play side. When relay 1044 is energized (record mode) the switch arm of 1044b opens such clamp so that signal from FSK encoder 1051 properly feeds to the circuit 1054.
The circuit 1054 responds to receipt of tone signals at its input 1055 for recording. It then produces an output at 1056 that is amplified by an amplifier circuit and is sent via a filter for joining with an AC bias signal from a bias generating circuit 1060. The filter 1058 prevents the AC bias signal from getting back into the circuit 1054. The AC bias signal is generated by a conventional AC oscillator (bias oscillator), which is coupled by an RC circuit 1062 to line 1063 (sometimes referred to as the DREC—digital
record—signal) for delivery to the digital record head 92' via connector 1064. The filtered tone signal from the circuit 1054 in a sense is AND'ed, merged or joined (an AND gate is illustrated in Fig. 3) with the bias signal to modulate the bias signal from the bias oscillator 1061; and it is that modulated bias signal which actually is recorded on the tape. The bias oscillator 1061 is activated when it receives from the processor 93' an appropriate signal at terminal 1061a. Such practice boosts up the signal intended to be recorded and, thus, assures that the tape is rather well saturated with signal during recording to assure accuracy of the recorded data; a less strong driving technique may be employed if a more sensitive storage media were available and used.
Note that the bias generating circuit 1060 also has an RC channel output 1065 which is a bias signal that is merged with the audio signal intended for recording on the tape on line 1066 (sometimes referred to as the AREC —audio record— line). Line 1066 is coupled to the audio recording head 72' via the connector 1064. Thus the audio signal picked up by the microphone is used to modulate such bias signal for recording as in the case of the digital data as described above.
When the apparatus 10' is in record mode, an output terminal 1070 to the circuit 1054 is clamped to ground via the internal circuitry of the circuit 1054 to appropriately switch the mode of the tape heads, as was described above. However, when the apparatus 10* is operating in play mode, a signal is received on line 1073 from the connector 1064, such signal being that played back from the tape. That signal on line 1073 (sometimes referred to as the DPLAY —digital play— signal) is undamped by the internal circuitry 1054 via terminal 1070, when in play mode as controlled by the processor 93', thus unclamping terminal 1074 to allow operation in play mode. The signal on line 1073 is presented to capacitor 1071 to the play input terminal 1074 of the circuit 1054. The played signal is in the form of a tone signal of different frequencies, depending on the logic 0 or 1 state of the data represented
thereby. It is provided at output terminal 1075 of the circuit 1054 for amplification and then via line 1076 to a filter and clamp circuit 112', leader detector circuit 113' and FSK (frequency shift keying) decoder 115' to line 1077 and via connector 1078 to the UART C 103. The processor 93' then gets the dta and presents it to the appropriate UART to couple the played data to the terminal or if in PC mode to the computer.
Turning to Fig 29, the filter and clamp circuit 112', leader detector circuit 113' and the FSK decoder circuit 115', which are mentioned above in Fig. 28, are shown in detail. The tone signal on line 1076 from circuit 1054 is coupled by a capacitor 1080 and resistor 1081 to a combination filter and clamp circuit 112' at the input to the leader detect -circuit 113' and FSK decoder 115'. The filter and clamp circuit 112' response limits the signal delivered to the leader detector 113' and to the FSK decoder 115' to a prescribed value, such as 1.4 volts peak to peak and also filters noise from the signal. Since the signal recorded on the tape was recorded using substantial driving effort, power, etc., it will also have substantial power when played back. The filter and clamp circuit 112' prevents over driving the FSK decoder and leader detector circuits, yet allows very low playback signals degraded by the nature of audio tape to be decoded properly.
The filter and clamp circuit 112' includes an operational amplifier 1083 and, connected across the output and inverting input thereof, a pair of reverse connected diodes 1084, 1085, resistor 1086 and capacitor 1087. The voltage characteristic of the diodes, as will be appreciated, effectively determines the clamping voltage level produced by the filter and clamp circuit 112'. The non-inverting input of the amplifier 1083 is coupled via resistor 1088 to a source of voltage. The signal at the output 1089 of the amplifier 1083 will be an amplified, filtered tone or frequency signal limited to a value of, for example, plus and minus 0.7 volts and having a frequency of 9KHz or 15KHz, i.e., the frequency of the signal produced by the FSK encoder 1051, representing logic 0 and
logic 1 signals. The output from the FSK decoder 1101 on line 1102 is a high or low signal at appropriate logic level and duration, e.g., +5 or 0 volts and 4800 baud, and such signal is coupled via resistor 1103 to the input of a buffer transistor amplifier 1104. The output of transistor 1104 is coupled to line 1077 for delivery as serial data to the connector 1078 (Fig. 28) to the digital board 119 and from there to the terminal or (if in PC mode) computer , via the processor 93' of the apparatus 10'.
The purpose of the leader detector circuit 113' is to prevent sending spurious characters to the terminal or computer when a tape is starting up or when no characters are on the tape. Accordingly, the leader detector circuit 113' assures that whatever signals are transmitted to the input of the buffer transistor amplifier 1104 from the FSK decoder 115' are of sufficient level and in fact represent valid data, thus compensating for the fact that the filter and clamp circuit 112' limits only the maximum voltage level of the signals input to the FSK decoder since such signals represent substantial driving or even over driving of the tape medium when they were originally recorded.
In the leader detector circuit 113' an operational amplifier 1105 receives the filtered and clamped signal from the output 1089 of the filter and clamp circuit 112'. The amplifier 1105 is coupled to a transistor circuit 1106 which charges a capacitor 1107 in an RC circuit that also includes resistors 1108, 1109, which provide a discharge path for the capacitor 1107. The junction of the resistors 1108, 1 09 is coupled to a further operational amplifier circuit 1110, the output 1111 of which is coupled to the input of the buffer transistor amplifier 1104.
The time constants of the RC circuit 1107, 1108, 1109 is such that data of valid duration received from the tape will not cause the amplifier 1110 to disable the buffer transistor amplifier 1104 from being driven by the output from the FSK decoder 115'. However, as long as valid data of sufficient
voltage level is received at the output 1089 from the filter and clamp circuit 112' (e.g., 9KHz and 15KHz signals), the output from the amplifier 1110 will not disable the buffer transistor amplifier 1104 from coupling the logic signals on line 1102 from the FSK decoder 115' from being output to line 1077 for coupling to the terminal or computer.
An advantage to using the filter and clamp circuit 112' is to avoid overdriving the output circuitry of the apparatus 10' in response to relatively large magnitude signals stored on the tape. Such signals are of relatively large magnitude since both the audio track and the digital track are relatively close together on the tape, and it is possible to get crosstalk between such signals upon recording and/or playing. Overdriving the tape upon recording helps assure that the signals are adequately large that crosstalk will not mask out the real nature of the recorded signal. However, since such signals are relatively large, it is important to avoid distortion and the possibility that noise will be construed as a valid signal upon playing back of the signals, especially the digital signals.
However, an advantage to using the leader detector circuit 113' is to avoid underdriving the FSK decoder in response to relatively small magnitude signals recorded on the tape. Such signals are of relatively small magnitude due to the nature of audio tape media specifically known as drop out or drop outs or also the sensing of unrecorded tape known as leader.
Referring to Fig. 30, the audio record and play circuitry 1200 is illustrated. For recording the circuitry 1200 delivers on line 1201 an audio signal conditioned to modulate the bias signal on line 1066 (Fig. 29) for delivery via connector 1064 to the tape heads. External microphone 52' is coupled via amplifier stages 74', which preferably have at least one potentiometric level control 26' and through isolating series connected capacitor 1203 and resistor 1204 to a junction input 1205 of a further amplifier. The auxiliary
audio input 76', e.g., from background music source, is coupled via amplifier stages 77', which preferably have at least one level control 1209, and a series RC circuit 1210 to the junction 1205. The circuit just described uniquely joins both microphone and auxiliary audio inputs in a single channel at junction 1205 in a single apparatus and then provides the same via capacitor 1211 to a record/play switch circuit 1220, such as an LM1818 integrated circuit, which is the same as and operates substantially the same as the circuit 1054 described above. When the circuit 1220 receives a signal on line 1044b derived from the processor 93' and coupled from the relay 1044 to indicate record od'e, the audio signal received via capacitor 1211 is amplified and is coupled via output line 1221 to a filter trap 1222. From the filter trap 1222 the audio signal is provided line 1201 for merging with the bias signal to modulate the same (Fig. 28) and delivery to the tape heads via connector 1064. The filter trap 1222 prevents the bias signal from backing into the circuit 1220, as was described above for the filter 1058 for the digital record signal (Fig. 28).
When the audio circuit is in play mode, a signal on line 1044b indicates the same to the circuit 1220, and the audio signal received on line 1230 from the connector 1064 (Fig. 28) and the audio tape head then is output on line 1231 to filtering and amplifying circuitry. The audio signal on line 1231 initially is directed to a follower circuit 1232, including an RC input circuit 1233 and an operational amplifier. The output from the follower circuit is coupled to the input 1234 of a notch filter 1235.
The notch filter 1235 filters out a narrow band of frequencies from the audio signal, for example from 4600 Hz to 5000 Hz so that there is no. audio degradation unless a person is speaking right at that frequency, which would be unusual since average voice is at from about 1KHz to 3KHz. The notch filter removes signals at 4800 HZ, which is the baud rate at which the digital data is recorded on the tape. Therefore, the
notch filter filters out that digital noise so it will not be heard in the audio playback even if some of that digital signal had bled onto the audio recorded track during recording or playing.
The notch filter 1235 includes a resistor and capacitor filter network 1236 and an amplifier 1237. The values of the components of the notch filter are selected to filter out the desired band of frequencies, such as those representative of the baud rate at which the digital data is recorded thereby to filter out such digital signals from having impact on the audio played signals. The notch filter preferably does not filter outside of the indicated notch range of frequencies so that it does not degrade various other audio signals, such as music (which includes frequencies outside the filtered range but not in the range at which a person ordinarily speaks), recorded on the tape and desired to be played.
To filter out tape hiss and similar noise from the audio signal, a low pass filter 1240 is coupled to the output of the notch filter 1235. The low pass filter removes' frequencies, such as those above about 10KHz, e.g., those due to tape noise or tape hiss. A conventional tone control circuit 1241 is coupled to the low pass filter to adjust the bass and treble characteristics of the audio signal that is to be delivered to the speaker and/or earphones.
An RC circuit 1242 and the volume adjusting potentiometer 25' couple the audio signal from the tone control 1241 to an audio amplifier 1243, such as a conventional LM380 integrated circuit. Since the audio signal had been cut down by the notch filter and low pass filter, and possibly by the tone control circuit, the audio amplifier 1243 boosts the signal to a level at which it can drive the speaker 55' . The VU meter 24' also is coupled to the audio amplifier 1243 to indicate the level of signal being played. Alternatively, depending on the setting of a switch 56', the VU meter can be coupled by line 1244 to the input audio channel(s) to indicate
the level of signal being recorded. The setting of the switch 56' will depend on whether the apparatus 10' is in play or record mode of operation; and such indication may come from the processor 93' via relay 1044 and relay switch 1044b in the manner described above. The switch 56' also is coupled to the speaker 55' to cut out that speaker when in the record mode to avoid feedback, as was mentioned earlier. Further, the switch 56' may include a connection to shut off the speaker(s) and one or more of the audio amplifier and/or filter circuits when the apparatus 10' is in a pause, stop or similar mode when it is not necessary and may be undesirable to couple a signal to the speaker(s). An auxiliary speaker or headphones 1245 may be employed to provide another audio output, as is illustrated. Such further audio output device may be controlled by the switch 56' the same as speaker 55' or differently. The different control may be to permit audio output at 1245 to remain unchanged from that of the original input signal for the purpose of recording or duplicating as mentioned elsewhere herein without the effects of amplifiers or filters further degrading the original signal.
SOFTWARE OPERATIONAL CONTROL OF THE APPARATUS
Referring to Sections 1 through 13 in the drawings which are not actually designated by a specific figure number, showing a computer program flow chart for operating the apparatus 1000 according to the present invention, it will be appreciated that such flow chart is a shorthand notation to illustrate operation of the apparatus. Such flow chart may be used as a guide for a person having ordinary skill in the art in a reasonable time to prepare the appropriate computer program language code statements that would effect operation of the apparatus according the description presented herein.
Rather than separate drawing figures, the flow chart is illustrated in respective Sections. Section 1 is the overall program. Sections 2 through 13 are various routines and subroutines that flow from the overall program of Section 1. The terms routine, subroutine, program, and the like may be used interchangeably and/or synonymously herein.
Section 1 is the overall program 2000, and it includes an initialization routine 2001 and a main routine 2002. The program 2000 also includes subfunctions called by interrupts. One interrupt block 2003 receives data from the computer. The other interrupts are based on a timer function 2004 (time related interrupts) and function to receive data from the terminal block 2005 or to receive data from the tape block 2006 of the apparatus 10' described above. The data is received or transmitted at the UARTS described above.
The initialization block 2001 sets up the various ports and registers and then the program enters the main loop 2000 which waits for interrupts or looks at switch closures or whatever else is going on.
Referring to the Section 2, in the initialization routine 2001 at block 2010 the input and output nature of the various ports of the processor in the apparatus are set up, and at block 2011 the internal RAM of the processor is checked or tested, and cleared. At block 2012 an inquiry is made to determine whether the RAM of the processor is good; if not then
the program flows to a failure mode at block 2013; if good, then the program goes to block 2014 to test and clear external RAM. At block 2015 the program checks the configuration switches to see what operational mode is selected as desired by the user, such as whether the apparatus is to be used with a computer and terminal or with a personal computer; and the various configuration switches and the mode switches and lamps on the control panel of the apparatus are checked. At block 2016 variables are set up according to the setting of the configuration switches, for example. At block 2017 a sign-on message is sent to the computer monitor, e.g., saying a welcome to the system and/or the system is ready for operation. At block 2018 a configuration timer is set up, e.g., started, so that the various timer-related interrupts are enabled, as will be described below. The program then returns to the Section 1 main routine block 2002 mentioned above.
In the main routine 2002 shown in detail in Section 3, a check is made at block 2020 to see whether the tape door is closed. If not, then at block 2021 a tape not ready flag is set. If the door is closed, then at block 2022 the mentioned flag is reset, and then the program can continue to flow. Therefore, if the door is open, the program cannot continue.
At block 2023 an inquiry is made to see whether there is a tape request, i.e., whether there is a call to start or to stop the tape. This tape request is determined by whether a fast forward, stop, play, rewind or record buttons had been pressed on the main control panel 30 of the apparatus 10' . If affirmative, then the tape control request routine (described below) at block 2024 is called. If not, then at block 2025 an inquiry is made to see whether there is a need then to send a character to the tape 20 or to the terminal 11. The UART "A" 101 in the apparatus 10' described above will provide to the processor an interrupt signal if there is data to send to the tape 20 or terminal 11. If there is such a need, then at block 2026 a transmit tape/terminal subroutine (described below) is called.
If at block 2025 there was no requirement to send a character to the tape or terminal, an inquiry is made at block 2026 whether there is a character to send to the computer. If affirmative, then the transmit computer subroutine 2027 (described below) is called. If not, then at block 2028 an inquiry is made to detect whether a command has been received that requires operation of the tape, e.g., play, record, rewind, fast forward, etc., and that in fact the tape is operating. If the tape is not operating, then the tape drive control subroutine 2029 (described below) is called.
If the tape is operating, then an inquiry is made at block 2030 to see whether characters received are a stop string or stop code. The apparatus 10' is able automatically to pause when a stop code recorded on the tape is received. If a stop code has been received, then the stop string subroutine 2031 is called. The stop function allows the apparatus to stop playing without shutting off while the user practices the lesson just learned, e.g., by operating the computer or terminal via the keyboard. If the response at block 2030 is negative (a stop code had not been received), then at block 2032 an inquiry is made to see whether a mode request had been requested from the control panel of the apparatus, e.g., whether play, record, stop, rewind, fast forward, stop, or pause buttons or switches had been pressed by the user. The apparatus can be configured in two modes of response to a stop code, depending on the setting of the configuration switches in the apparatus. In one mode upon receiving a stop code the apparatus stops and goes off line relative to the computer while the user tries the lesson just learned; in the other mode, the apparatus goes into a pause mode to stay on line and not shut down while the user tries the lesson just learned. If at block 2032 the response is affirmative, then the set tape mode subroutine (described below) is called at block 2033. If not, then the main subroutine 2002 continues to loop in the manner described.
The software described herein is operative for both use of the apparatus in conjunction with a computer and terminal and in conjunction with a personal computer. The primary difference is determined by a flag set by one of the configuration switches indicating with which system the apparatus is used. Various special inquiries and responses are mentioned below as a function of such use. Moreover, when the apparatus is used with a computer and terminal, as was described elsewhere herein, the apparatus is operative to receive and to send character information relative to the computer and the terminal, e.g., the ASCII code for a letter "A", etc. However, when the apparatus is used with a personal computer in which a bit mapped monitor screen and driving circuitry are used, the amount of data that has to be recorded on the tape would be excessive. Therefore, a computer program sold under the name COSESSION by Triton Technologies and modified by Triton Technologies for operation generally in the manner described herein for use with the apparatus 10' is used to interface between the tape and the video card which drives the personal computer monitor. Other software that functions similarly, e.g., to take data from a video card, compress it and send it to the apparatus 10' and can receive such compressed data from the apparatus 10' and can decode it for sending to the monitor, etc., also may be used. Such computer program enables the apparatus of the invention to store on the tape information which represents periodic updates or changes to the monitor since such monitor was last updated, e.g., at a rate of four times per second, more or less. Accordingly, after the monitor is once written to by the apparatus of the invention (the data therefore having been stored on the tape), only subsequent updates of changes to the monitor image since last written to need be stored on the tape and transmitted to the computer. This technique substantially reduces the amount of data that would otherwise have to be stored on the tape.
The modified COSESSION software ordinarily would be resident in the personal computer to cooperate with the apparatus of the invention to receive data from the video card of the personal computer, to compress that data and to send that data for recording on the tape. Additionally, the COSESSION software receives data from the tape, decompresses or expands it and transmits the data to the personal computer video card for changing the information then displayed on the monitor. The COSESSION software also includes a de-load function which may automatically remove it from resident memory of the personal computer when not required for using the personal computer with the apparatus of the invention.
Turning, now, to Section 4 in the flow chart drawings, the interrupt block 2003 (from Section 1) is shown in detail. The interrupt subroutine 2003 is called when the UART A coupled to the computer is to receive data. The UART A is coupled to the processor through an interrupt line. When that interrupt line receives an interrupt signal indicating that the UART A is to receive data from the computer, block 2040 is entered as the entry point for the interrupt receive computer subroutine 2003. At block 2041 an inquiry is made to see whether any common port errors are occurring, such as something that is clearly bad data. If affirmative, then an error flag is set at block 2041 and the received bad data character is flushed or trashed at block 2042. The error flag is then reset. The program then follows an interrupt exit path 2043 to return to the main subroutine 2002 (Section 1) of the overall program 2000.
If at block 2041 no error was detected, then the program goes to block 2044 whereupon the character is obtained from the UART and placed into RAM or into a register temporarily in the processor. At block 2045 the apparatus is checked to see whether operation is in the record mode. If not, then there is no reason to store the character anywhere and the program then follows the interrupt exit path 2043 back to the main subroutine 2002. However, if the apparatus is in
the record mode at block 2045, then at block 2046 the character is placed into memory in the apparatus. The memory may be a first in first out (FIFO) and is provided to buffer the data received from the computer because the baud rate of the computer and the baud rate of the apparatus may be different. In the exemplary embodiment of the invention the baud rate of the computer is 19.2K, whereas the apparatus is only 4.8 K. Hardware handshaking also is provided, such as RTS, CTS, Xon, Xoff, between the computer and the apparatus in order to avoid loss of data if the buffer fills to capacity. The computer will stop transmitting data to the apparatus until the apparatus is ready to receive more data.
At block 2047 an inquiry is made to detect whether personal computer (PC) mode (hereinafter referred to as PC mode) is active. If affirmative, then the apparatus is being used with a personal computer rather than with a computer and terminal arrangement; this is sensed by the apparatus by setting of the configuration switches. If the apparatus is not used in PC mode, then at block 2048 the terminal port UART B is enabled so that the character can be sent to the terminal. If at block 2047 the apparatus senses that it is operating in the PC mode, then there is no need to enable the terminal port at block 2048 because the personal computer itself already had sent the data/character to its own monitor. In either case, the program then enables the tape port UART C at block 2049 to provide the character to the tape for recording. The program then returns at 2050 to the main routine 2002 in Section 1 to wait for the next interrupt based on time and/or the next interrupt based on a character being received from the computer and/or a button to be pressed on the control panel.
Using the described processor of the invention, the circuitry and software is limited to two direct interrupts to the processor which could cause the processor and program operating the same 2000 to go to an interrupt subroutine. One of the interrupt subroutines was that described above with reference to block 2003 (Sections 1 and 4). This interrupt
subroutine is triggered when the computer is sending a character/data to the apparatus at the UART A. The second interrupt subroutine is programmed according to the invention to function automatically on a timed basis in order to poll whether in fact data is being received at UART B from the terminal or whether data is being received from the tape at UART C. Thus, the second interrupt subroutine represents a multiplexing of interrupts from the terminal and tape and also provides a general timer polling interrupt. This general timer polling interrupt does additional checking of status flags representing tape running and built in delays (and therefore sometimes is referred to as a housekeeping timer) . The second interrupt subroutine also checks other conditions in the apparatus, as will be described below. One particular condition is whether the UARTs B and C are not active, i.e., do they not need to be serviced either to receive a character from the terminal or from the tape. Therefore, the polling interrupt timer routine in Section 1 includes the interrupt timer subroutine 2004 from which either of the receive data from terminal 2005 or receive data from tape 2006 subroutines can be called. This enables the apparatus to live with the limitation that the processor selected only has two interrupt ports. If a different processor were used, e.g., one having four interrupt ports, then the subroutines 2005 and 2006 could be coupled directly to the processor and the timer interrupt routine 2004 could provide a separate interrupt function to carry out its functions without having separately to call the subroutines 2005 or 2006.
The computer interrupt is directly to the processor in order to service the computer request to send data to the apparatus very quickly since the computer is operating typically at 19.2K baud, i.e., faster than the apparatus ordinarily operates. Therefore, there is inadequate time to wait for the apparatus periodically to poll the computer UART A to see whether it is receiving data from the computer. On the other hand, when data is to be received from the tape or from
the terminal, there is adequate time periodically to poll the UARTs B and C, because receipt of that data ordinarily would be at a speed that is approximately that at which the user can type onto the keyboard, i.e. typically not more than 1 ,2K baud.
Referring to Section 5, the details of the timer interrupt 2004 are illustrated. At block 2060 an inquiry is made to see whether an interrupt had been received to indicate that data is to be received from the terminal to which the apparatus is connected. If affirmative, then the receive terminal subroutine 2005 is called to service such interrupt. If not, then at block 2061 an inquiry is made to see whether a play delay is in effect. A play delay is a built in delay that prevents the apparatus from receiving data upon initial starting of the tape when a play mode of operation had been requested from the control panel in order to allow the tape heads to move into play location and for the tape, which had been stopped, to come up to speed. Here and elsewhere, waiting for the tape to come up to speed would also require when in a record or play mode the movement of the tape recording head . into engagement with the tape; and if recording, adequate time for the bias oscillator to be operative and stabilized before recording also is necessary. The play delay may be the loading of a value into RAM or into a register of the processor and the subsequent decrementing of that value by multiple passes through the timer interrupt subroutine 2004 until the value has reached prescribed level, e.g., zero, whereupon it can be assumed that the tape heads had come into play position and the tape had come up to speed.
If at block 2061 no play delay is in effect, then at block 2062 an inquiry is made to see whether a character was ready to be received from the tape due to an indication thereof from the tape UART C. If a character is being received at the UART C, then at block 2006 that interrupt is serviced by calling the receive tape subroutine (also illustrated in Section 1 and in detail in Section 7. ) Note that if there were
no requirement to service either the terminal or tape at inquiry blocks 2060 or 2062, respectively, then the various tape control and/or housekeeping timer functions are investigated in subsequent portions of the timer interrupt subroutine 2004, as now will be described.
ESCAPE ACTIVE delays any handshaking (RTS/CTS or Xon/Xoff) during an escape sequence generated by the computer. This prevents characters such as Xon/Xoff or a break condition from contaminating the escape sequence typically used as ANSI graphics control sequences to the terminal (not checked for in PC mode) . Characters generated by the terminal are transmitted directly to the computer. The computer "ECHOES" these characters to the terminal for display. The apparatus intercepts these echoed characters for recording purposes. Escape sequences generated by the terminal will be recorded by the apparatus only if the computer echoes them back to the terminal for display. In most cases, escape sequences sent to the computer by the terminal are meant as control functions specific to the computer and will be acted upon but not echoed back to the terminal.
At block 2066 the various switches on the control panel of the apparatus are checked to see whether any has been pressed. This check is made periodically, such as sixteen times per second. If affirmative, then the appropriate light is turned on. At block 2067 an inquiry is made to see whether pause or stop is active, i.e., either the pause or stop switches on the front control panel of the apparatus had been pressed. If not, then a tachometer control path is followed to see whether the tape had come to its end. Ordinarily when a tape comes to the end in a cassette, the tape drive motor stalls. In the present invention it is desirable to know that such a stall has occurred so that no further effort is made to try to receive data from the tape or to send data to the tape. Therefore, if the tape has come to its end, the apparatus is automatically placed into a stop mode, and that condition is indicated to the user. More specifically, the apparatus
includes a Hall effect device or some other device, which acts like a tachometer to produce pulses representing rotation of the tape drive motor and, thus, movement of the tape. For example, such Hall effect device puts out a pulse one or several times during rotation of the tape drive motor. At block 2068 the tachometer is read for a prescribed amount of time to load into a register or RAM the information representing the number of pulses put out by the tachometer. If the tachometer had not produced any pulses since last read, then that would indicate that the tape drive motor had stalled, i.e., was not continuing to rotate. At block 2069 an inquiry is made to see whether" a prescribed amount of time had elapsed since a pulse had been received by the tachometer. If time had elapsed and not pulse had been received, then at block 2070 a stop request flag is set to cause the apparatus to stop the tape, i.e., to deenergize the tape drive motor, withdraw the heads from the tape, and energize a light on the control panel to tell the user that the apparatus is in stop mode.
If at block 2067 it was determined that pause or stop had been requested at the control panel, or a stop request had been indicated at block 2070 during a prior run through the timer interrupt subroutine 2004, or if a tachometer time out had not yet been detected at block 2069, then at block 2072 a check is made to see whether any delays are active. Two delays are illustrated, one is referred to as DELAYS and the other as DELAY1. More or fewer delays may be employed, as desired, depending on the components used in the apparatus and the speed of response thereof relative to the speed of operation of the processor. In the preferred embodiment, each delay is for 100 milliseconds or less. The delay may be to hold up functions of play, record, etc., relating to data transmission or receipt, which is electronic and happens relatively fast, until the mechanical components, such as the tape heads and drive motor, have had adequate time to be operating properly (moved into place, come up to speed, etc.) to receive or transmit such data.
If at block 2072 a delay is active, then the delay counter is decremented at block 2073 and another inquiry is made at block 2074 to see whether the delay is done. If affirmative, then a software flag indicating that the delay is done is set at block 2075. In either case the program then moves out of the DELAY0 portion of the subroutine. The DELAY1 portion 2076 of the subroutine works similarly.
At block 2080 a check is made to see whether the apparatus is operating in the special play mode according to the state of the play switch AND a stop mark has been encountered. Special play mode is that in which the apparatus looks for a stop code on the tape, e.g., signifying the end of a lesson or of a portion of a lesson. If a stop code is encountered, then the apparatus would stop the tape and would allow the user either right away to try the lesson himself immediately or to rewind the tape to replay the lesson by pressing switches on the control panel or to restart the tape to go on to the next lesson. If special play is not active, then the interrupt timer subroutine 2004 is exited at 2081 back to the main routine in Section 1 of the flow chart. However, if special play mode is active, then a subroutine is entered at block 2082 to flash the stop mark encountered lamp on the control panel of the apparatus to signify the same to the operator so that the operator can then listen to the audio portion of the lesson only, without the benefit of the digital portion thus allowing the operator to practice the lesson himself as prompted by the audio portion of the lesson. The timer interrupt subroutine 2004 then exits at 2083 back to the main routine 2002 in Section 1 of the flow chart.
In Section 1, at the interrupt timer routine 2004, if the receive data from the terminal interrupt had been received from the UART B (as detected at 2060 in Section 5), this probably indicates that the terminal desires to send data to the apparatus. The receive terminal subroutine 2005 is then called. Referring to Section 6 of the flow chart, the receive terminal subroutine 2005 is illustrated. Initially at block
2100 the interrupt flag that caused the subroutine 2005 to be called is cleared. Then at block 2101 an inquiry is made to see whether an error in the data had occurred; this is sensed if an error flag had been set. If affirmative, then at block
2102 a check is made to see whether it is a framing error. If it is not a framing error, then at block 2103 the error flag is reset and the character is dumped because it probably is not a meaningful piece of data due to such error. The subroutine then exits back to the main routine 2002 in Section 1. If at block 2102 a framing error were sensed, then at block 2104 the error is checked further to see whether it is a break code, i.e., does the character equal 0. If a break code, then a check is made at block 2105 to see if PC mode is active. If not, then at block 2106 a check is made to see if play is active. If play is not active, then the computer is notified at block 2107 that a break code had been received so that the computer can take the' appropriate action, and then via block
2103 the error flag is reset, the character is dumped, and the interrupt is exited back to the main routine 2002 in Section 1. As is illustrated in Section 6, from blocks 2104, 2105, 2016 it is possible to skip the notification of the break code to the computer if the play is not active.
At block 2101 if there is no error, then at block 2110 the character received from the terminal at UART B is loaded into the processor register or RAM. The character is masked to eliminate the eighth bit because only seven bits are required by the apparatus for a valid character, and the nature of the eighth bit is not material. At block 2111 an inquiry is made to see whether the character received is one in the middle of an ignore sequence, such as an escape sequence.
If the sequence coming from the terminal is not a character that is to be ignored, then at block 2112 the program flows to block 2113 to check whether a configuration switch had been set to soft flow control. (If the apparatus is not acting in soft flow control, then there would be a hardware handshake flow control set up also by the configuration switches, as is
usual. ) Soft flow control is Xon, Xoff type flow control of data between the terminal, computer and the apparatus of the invention. If affirmative, then at block 2114 an inquiry is made to determine if the apparatus is operative in the "Wang" mode. The "Wang" mode is a special mode set by the configuration switches to enable the apparatus to work with the special circumstances of a Wang brand computer. Other types of special circumstances also may be checked here, if desired. If the apparatus is configured to operate in the Wang mode, then at block 2115 a restore character signal is transmitted.
At block 2116 an inquiry is made to see whether the character received is an Xon character. If affirmative, then at block 2117 the computer port UART A is turned on. A character is sent to the computer to indicate that data, e.g., a character or other code, can be received from the computer.
If the character is not Xon, then at block 2118 a check is made to see if it is Xoff. If affirmative, then at block 2119 the computer port is turned off by sending a signal to the computer to indicate that further characters/data should not be transmitted until the next Xon signal is sent to the computer. From blocks 2117 and 2119 the receive terminal subroutine 2005 exits back to the main routine 2002 in Section 1. If the character is not Xoff, an inquiry is made at block 2120 as described below.
If at block 2113 soft flow control was not indicated, then at block 2120 an inquiry is made to see whether the apparatus is in record mode. If so, then the character received is saved in the memory buffer at block 2121. If the memory buffer were full, as sensed at block 2122, then a full flat is set at block 2123. If the apparatus is operative in PC mode, as detected at block 2124, then the apparatus exits back to the main routine 2002 where the character is handled, e.g., sent to the tape or to the computer. If PC mode is not active, then at block 2125 the terminal UART B is enabled to receive more data. Note, there is no need to enable the terminal UART B if in PC mode because in a PC the computer and terminal
essentially are the same and are not separated by the apparatus of the invention; whereas when the apparatus is used with a computer and terminal arrangement, the apparatus is coupled between the two.
At block 2120, if the apparatus is not in record mode, then an inquiry is made at block 2130 to see whether the apparatus is in special play mode. If not, then the program returns to the main routine 2002 Section 1 , because if not in record or special play, yet data had been received from the terminal, it is desired that such data be sent to the computer only because the apparatus of the invention is intended, then, to be effectively transparent relative to the terminal and computer. If affirmative at block 2130, then the program flows to block 2121.
If at block 2111 the character received is found to be in the middle of an ignore sequence, then at block 2131 an ignore count is incremented (bumped) , and the program flows to block 2120. If at block 2112 an ignore character had been matched in its entirety, then at block 2132 the ignore counter is initialized.
The ignore sequence (refer to previous comments regarding ESCAPE sequence above) does not allow flow control if this delay is enabled. Typically Escape sequences are contiguous, therefore if the start of an escape sequence is detected, the remaining sequence must follow immediately. If not, then the delay timer senses this and cancels the ignore mode. The enable transmit terminal block is not really needed, but it avoids having to write additional bypass routines that would use more PROM space, which is at a premium.
When in the course of running the interrupt timer subroutine 2004 (Sections 1 and 5), at block 2062 (Section 5) requires servicing of the receive tape subroutine 2006, e.g., because a signal is received from the tape UART C, the flow chart moves to Section 7 where the receive tape subroutine 2006 is illustrated. At block 2140 such subroutine is entered, and a check is made to see if an errors have been detected. If
affirmative, then at block 2141 the character containing the error is flushed, dumped, etc., and the error flag is reset. The subroutine then returns to the main program 2002 at exit 2142. The type of error that may occur and be detected as indicated includes framing error, parity error, etc. Since the tape cannot be reversed to try to reobtain the character in error, such error character is dumped.
If no error was detected at block 2040, then at block 2143 a check is made to see if the* pause switch had been pressed. If affirmative, then the flow chart exits at 2142 back to the main program 2002 in which the tape drive motor is shut off, the pause light is illuminated, etc. If no pause had been requested, then at block 2144 a check is made to see whether the play switch is pressed. If not, then whatever may have come from the tape or otherwise caused the tape UART C to call the receive tape subroutine 2006 probably was in error; and, therefore, the subroutine exits at 2142 back to the main routine 2002.
If the play switch is pressed, at block 2145 an inquiry is made to see whether the apparatus is operating in Duplicate mode, i.e., whether a Duplicate mode on the configuration switches (or on the front panel 30) has been selected. Such selection permits the copying of data from one tape in one apparatus to a tape in another apparatus. If the apparatus is not operating in DUP mode, then at block 2146 the character received from the tape is put in the hold buffer established in the RAM. At block 2147 a check is made to see whether the character is part of a stop sequence. If affirmative, then at block 2148 the character pointer is incremented (bumped) and at block 2149 a check is made to see whether the stop sequence is complete. If complete, then at block 2150 a pause request is set to stop the tape motor while the operator may try the program, rewind the tape, go on to the next lesson, etc. The flow chart then exits at 2151 back to the main routine 2002 Section 1. If at block 2149 the stop sequence was determined not to be complete, then the routine
exits at 2151 to the main routine until the stop sequence is complete, and so on.
Backing up to block 2147, if the character received does not match a stop sequence, the program flows to block 1522. If duplicate is active at block 2145, then the character received from the tape is put into the hold buffer at block 2153 (even if the character is part of a stop sequence, because when duplicating a tape it is not desired to stop the playing tape in one apparatus while the recording tape in another apparatus still is moving to record information) , and the program flows to block 2152.
At block 2152 a check is made to see whether the hold buffer is empty. If the buffer is not empty at block 2152, then at block 2154 the buffer pointer is initialized to the first character in the buffer. The routine then flows to block 2155 where a check is made to detect if special play mode described above is active. If yes, then no character should be sent either to the computer (if in PC mode) or terminal (if not in PC mode). Therefore, the routine exits at 2151 back to the main routine 2002 in Section 1. If special play is not active, i.e., selected at the control panel of the apparatus, then a loop including blocks 2156, 2157 and 2158 is entered until all characters from the hold buffer have been obtained and saved in memory of the apparatus. The objective of saving the characters in memory for a while is to avoid having to communicate with the computer until such time as there may be a pause on the tape or the tape has stopped; in this way the possibility of the apparatus being operative to communicate with the computer while data sent from the tape is missed is avoided.
After the hold buffer is emptied at block 2157, the program flows to block 2159 to check whether PC.mode is active. The apparatus has to know whether to send the character from the tape to the terminal or to the computer. If not in PC mode, then the data is sent to the terminal at block 2160. If in PC mode the data is sent to the PC at block 2161.
In either case the routine 2005 then returns back to the main routine 2002 at Section 1.
In the main routine 2002, which is shown in Section 1 and in detail in Section 3, several other subroutines are called, as is shown and is described above. These subroutines now are described in detail with reference to Sections 8 through 13 of the flow chart.
Referring to Section 8, the send stop string, mark or code routine 2031 is illustrated. At block 2200 an inquiry is made to determine whether the computer port had been turned off. If not, then at block 2201 the computer port, UART A, is turned off, and the routine returns to the main routine 2002 (Sections 1 and 3). Turning off the computer port also means de-asserting RTS or sending Xoff to the computer port UART A. This temporarily halts communication with the computer until the stop mark code is sent to the tape UART C, then re-enable communications to the computer by asserting RTS or sending an Xoff character. However, if at block 2200 the computer port had been turned off, then at block 2202 an inquiry is made to see whether the buffers are empty. If not, the routine returns to the main routine 2002. If affirmative, then at block 2203 a stop string is sent to the tape, at block 2204 the computer port is turned on; and the routine returns to the main routine 2002. The reason for checking to see whether the buffers are empty before sending the stop code is to be sure that no data that was intended to be received and/or transmitted with respect to the computer, terminal, and/or tape is lost when going into stop mark condition.
Section 9 illustrates the transmit data to the tape or terminal routine 2026 (Section 3). It is entered from the main routine when it is desired to send data either to the tape or to the terminal. At block 2210 an inquiry is made to see whether the play switch had been pressed on the control panel of the apparatus. If not, then presumably there is an intent to transmit data to the tape for recording; if not then presumably it is intended to transmit the data to the terminal
for display there. In play is not active, then at block 2211 a check is made to see if the tape is ready, e.g., is the UART C ready to accept a new character. If the UART C is not ready, then the program returns to the main routine 2002 in Section 1 , as is indicated in Section 9. However, if the tape is ready, then at block 2212 the character is obtained from the buffer in the apparatus and is sent to the tape for recording. The program then flows to block 2214.
If at block 2210 it was detected that play is active, then at block 2213 a check is made to see whether the terminal is ready, e.g., is the UART B ready to accept a new character. If the terminal is not ready, then the program return to the main routine 2002. If the terminal is ready, then the program flows to block 2214, as it also would from block 2211.
At block 221 a check is made to see if PC mode is active. If yes, then the routine returns to the main routine 2002 (Section 1). If not in PC mode, then at block 2215 a check is made to see whether the duplicate mode is active. If not, then the character received from the buffer is sent to the terminal at block 2216. However, if duplicate is active and not 8 bit character mode, then the character is masked at block 2217 in order to match the characteristics of standard ASCII terminals, and then the character is sent to the terminal at block 2216.
Turning to Section 10, the transmit computer routine 2027 is illustrated. The routine 2027 which is intended to transmit characters to the computer, regardless of whether the computer is one used with a terminal or is a PC. The routine 2027 is called from the main routine in Section 3. At block 2220 a check is made to see whether the channel to the computer is active. This means that the apparatus 10' allows UART A to transmit characters, e.g., record is active. If not, then the routine returns to the main program 2002. If affirmative, then a further inquiry is made to see whether it is time to do flow control at block 2221. If not, then the character is sent to the computer at block 2222 and the program returns to the main routine 2002.
If it is time to do flow control at block 2221 , then at block 2223 a check is made to see whether the flow control is of the hard flow type (hardware using RTS or CTS) or the software type (Xon, Xoff mentioned above) . Whether it is time to do flow control depends on whether the buffers are full, for example. If software flow control has been set in the configuration switches (no hard flow), then at block 2224 a check is made as to whether or not the character is Xon. Depending on the outcome in block 2224, blocks 2225 and 2226 load either an Xon or an Xoff signal, respectively, in the processor to stop or to start data transmission. Such Xon or Xoff character is sent to the computer at block 2222.
If hardware flow control is sensed at block 2223, then at block 2227, an inquiry is made to see whether it is intended to turn the computer port on. If yes ( or on), then RTS is set to true at block 2228; if no (or off), then RTS is set to false at block 2229. What the hardware flow control block 2227 does is to arrest from the computer the need to do flow control for each character transmitted from the apparatus to the computer, which takes substantial time. Accordingly, the invention removes the need to do flow control or a handshake between the apparatus and the computer for each transmitted character, and this speeds the process of sending data to the computer. Following blocks 2228 and 2229 the routine returns to the main program 2002.
Turning to Section 11 , the tape control request routine 2400 is illustrated. This routine 2400 acts a a means of debouncing the front panel push buttons and locking out other buttons from being sensed at the same time. This routine reads a memory location set during the timer interrupt routine (set switch status). At block 2401, a check is made as to whether the master lockout is active. If yes, the program returns to the main routine 2002. If no, at block 2402 a check is made as to whether this is the first time through the routine 2400. Specifically, the routine reads a memory location set during the timer routine (get switch status). If
at block 2402 routine has been called for the first time, a lock flag is set at block 2403. The routine then returns to the main routine 2002. If at block 2402 the routine has not been called for the first time (or in other words, this is the second time), the master lockout is set at block 2404. At block 2405, the proper request is set and the routine then exits to the main routine 2002.
Turning to Section 12, the set tape mode routine 2033 called from the main routine (Section 3) is illustrated. The set tape mode routine 2033 sets the mode of the tape, e.g., to forward and play, forward and record, fast forward, rewind, etc. as is illustrated, depending on which switch has been pressed on the control panel of the apparatus, for example. Various responses occur depending on which of the following conditions is active, i.e., the appropriate switch has been pressed or the appropriate condition has occurred (stop code received) : pause, rewind, fast forward, stop, stop mark, record, and special play.
At block 2250 if the pause switch had been pressed, then at block 2251 a check is made to see if the cause is current, i.e., if the apparatus already is in a pause mode. If not, then a pause condition is set at block 2252 and the routine returns to the main routine 2002 (Section 1). Setting a condition sets a flag that is useful in other routines described herein. In particular, setting of such a flag in the routine set tape mode 2033 causes the respective indicator lamp on the control panel of the apparatus to be turned on to indicate the particular mode of the apparatus, especially of the tape. If pause is current, then at block 2252 a check is made to see if record is active or not. Depending on whether the outcome is yes or no either record or play is set at blocks 2253, 2254, respectively, and the program returns to the main routine 2002.
At blocks 2260, 2261, 2262 inquiries are made, respectively, to see whether rewind, fast forward or stop switches have been pressed and, therefore, are active. If
affirmative, then the appropriate flag is set at blocks 2263, 2264, 2265, respectively, and then the program returns to the main routine 2002.
At block 2270 if a stop mark had been received, then at block 2271 a check is made to see if record is active. If no, then the program returns to the main routine 2002. If yes, at block 2272 a stop mark request is set so that the stop lamp is illuminated in such a way that the user knows that the apparatus had stopped due to encountering a stop mark, e.g., according to the flashing routine noted at block 2082 in Section 5 described above. The program returns to main routine 2002.
If at block 2270 a stop code has not been received, the program flows to block 2273. Block 2273 determines whether the record is active. If the record is active, then at block 2274 an inquiry is made to see if the tape is in a write protect configuration. If so , then the program returns to the main routine 2002 because recording cannot take place on a write protected tape. However, if the tape is not write protected, then at block 2275 the record flag' is set, and then the program returns to the main routine 2002.
Completing Section 12, if at block 2273 the record is not active, the program flows to block 2280 which determines whether special play is active. If at block 2280 special play is active, then a special play flag is set at block 2281. CURMD is an abbreviation for current mode, e.g., puts the tape in play mode (play back from tape). Finally, the routine 2033 returns to the main routine 2002 after either block 2280 or 2281 , as is indicated.
Section 13 is the tape drive control subroutine 2027 from the main routine 2002 of Section 3. The tape drive control 2027 actually directly controls the operation of the tape in the apparatus, as is described. In this routine the various flags, timer checks, buffers filled, and other flags are used. At the input side of the routine 2027 the routine checks to see whether one of the pause, rewind, fast forward,
stop, play or record switches had been pressed at the control panel of the apparatus. There also is a check to see if an invalid mode was attempted, e.g., more than one operational mode switch was pressed simultaneously.
At block 2300 if the pause is active, then at block 2301 the tape is stopped and a flag identified "statape" is set to a value that includes a pause value, character or character string. Then, at block 2302 a check is made to see if the PC mode is active. If not, then the apparatus is set to an off-line condition at bock 2303 deenergizing the relays and making the apparatus transparent to the computer and terminal. If PC mode is active, then the relays can be put on-line at block 2304 because the personal computer (PC) already is able directly to communicate with its keyboard and monitor without the need for the apparatus of the invention.
If at block 2300 the pause switch is not active, the program flows to block 2305. If rewind is active at block 2305, then at block 2306 a check is made to see whether play or record is current, i.e., is the apparatus currently playing or recording data. If affirmative, then at block 2307 the
» solenoid is released to remove the recording heads from the tape and the tape is stopped; then rewind is commenced at block 2309 by setting a flag, known as "statape" to a value indicating the desired rewind. If at block 2306 play or record is not current, then at block 2308 the solenoid is released, followed by rewind at block 2309.
If at block 2305 the rewind was not active, the program flows to block 2320. At block 2320 if fast forward is active, then at block 2321 a check is made to see if in play or record mode. Depending on the outcome of block 2321, either the solenoid that holds the tape head to the tape is released at block 2322 or the solenoid is released and the tape is stopped at block 2323. Thereafter the fast forward motor operation is commenced at block 2324 by setting the flag "statape" with a fast forward code. The foregoing is redundant to insure that the solenoid is released in order to protect the motors and heads from any potential damage.
If at block 2320 the fast forward is not active, the program flows to block 2325. If stop is active as detected at block 2325, then at block 2326 a timer is initialized, i.e., is set to a value. Then, at block 2327 a check is made to see if the buffers are empty; if not, at block 2328 a check is made to see if the timer has expired; if not, then the routine returns to the main program 2002 (Section 3). The reason for the checks at blocks 2327 and 2328 is to be sure, first of all that data that had been stored in the buffers is still sent to wherever it was intended before the tape is stopped. The timer 2328 protects from a lock up in case there is a problem in emptying the buffers. However, if the response at block 2327 or block 2328 is affirmative, then at block 2329 the solenoid is released (removing the recording head from the tape), the tape is stopped, and the flag "statape" is set to a stop value.
Note that from blocks 2309, 2324 and 2329 the program flows to blocks 2302 and 2303 or 2304, which function as described above.
If at block 2325 stop is not active, the program flows to block 2340. If play is active at block 2340, then at block 2341 the tape is started and the "statape" flag is set to a value indicating play. Then at block 2342 a check is made to see if special play is active. If so, then the apparatus is set off-line at block 2343 so that the user can type directly to the computer (regardless of whether or not in PC mode) to try out the program that had just been taught; and the program then returns to the main routine 2002 (Section 1 ) . At block 2342, if not in the special play mode, then a check is made at block 2344 to see whether PC mode is active. If not, then the transmit terminal UART B is enabled at block 2345 so that the apparatus sends data to the terminal for display. If PC mode is active, then at block 2346 the transmit computer is enabled so that data played by the tape can be sent to the personal computer via UART A for use and display thereon.
If at block 2340 play is not active, the program flows to block 2350. If record is active at block 2350, then at block 2351 the tape is started, the flag "statape" is set to a record value, and the apparatus is placed on-line by closing the relays described above. At block 2352 a check is made to see if PC mode is active. If not, then the apparatus is enabled to transmit both to the tape and to the terminal at block 2353 because everything that comes from the computer is to be sent both for recording on the tape and for display on the terminal. If in PC mode, then at block 2354 the apparatus 10' is enabled to transmit only to the tape occurs because the personal computer is operative to communicate directly with its keyboard.and monitor independently of the apparatus of the invention. The flow chart then returns to the main routine 2002 of Section 1.
If at block 2350 record is not active, the program flows to block 2355. Block 2355 checks to see if an invalid mode was attempted, e.g., whether two mode switches were pressed simultaneously.
From the foregoing, then, it will be appreciated that the several embodiments of the present invention may be used in the various ways described to store data and to play back data in computer environments, for example, to facilitate training use of the computer and software used thereon, and so on.
Referring to Fig. 31 , the digital circuit portion 3000 of the apparatus 10' is illustrated. Such digital circuit is similar to the circuit illustrated and described above with respect to Figs. 1 through 24. Therefore, primarily only the distinguishing features of the digital circuit 3000 from those described above will be described in detail.
The digital circuit 3000 includes the processor 93', such as a 68705 integrated circuit. A reset circuit 3001 (such as a DS1231 integrated circuit) coupled to the processor 93' causes it to start up and to reset with certain initialization characteristics, as is conventional. A system clock 3002 provides a clock signal to clock the processor 93' through its various routines. Configuration switches 3003 (mentioned above) and a decoder 3004, which decodes the settings of such switches, indicates to the processor 93' and the software operating thereon the particular configuration of the apparatus 10', e.g., for use with a PC in PC mode, for use with a computer and terminal arrangement, for operation in duplicate mode, etc. Usually such configuration switches 3003 would be set prior to powering up the apparatus 10'.
The decoder 3004 is coupled to the processor 93' via the system bus 3005. A RAM (random access memory) circuit 3006 also is coupled to the bus 3005 and is used to store data as a FIFO, to store program instructions, if necessary, and to store various other information, flags, etc. A latch circuit 3007 associated with the RAM 3006 assists in maximizing byte size/word size of data stored in the RAM. A selector integrated circuit 3008 (e.g., 74HC138) may be used to select locations in RAM or memory on the processor 93' where certain information is to be stored. A panel connector 3009 couples the digital circuit 3000 to the various circuits on the front or control panel 30' of the apparatus 10'. Further a power supply for the digital and audio circuits is generally shown at 3010.
Three UART integrated circuits 101', 102', 103', also referred to as A, B and C, are respectively coupled to transmit and to receive data relative to the computer, terminal and tape, respectively. When the apparatus 10' is used in PC mode so that there is no terminal employed, then the terminal UART B 102' is not coupled. The UART devices are conventional and operate generally as is described elsewhere herein. Each has various flow control/handshake terminals to identify when it is desired to receive data thereby and when it is desired to transmit data therefrom. A baud rate clock 3011 is coupled to' the several UARTs to provide a clock input and baud rate for operation of each. Eacih also has a transmit data terminal and a receive data terminal and each is coupled, respectively, as is illustrated, to the computer port 3020, terminal port 3021 or to record or play circuitry, respectively. An RS232 driver circuit 3023 is coupled to convert the level of the outputs of the respective UARTs from TTL level to RS232 level; and an RS232 receiver 3024 converts received RS232 level signals to TTL level for use by the UARTs.
Uniquely, the tape UART 103' is coupled, without the need for special circuitry, to operate a conventional FSK encoder circuitry and to receive data from a conventional FSK decoder, both of which were described above. This connection arrangement facilitates developing and transmission of signals while maintaining accuracy of the recorded signals using the various further features described above, including the bias oscillator signal, filter and clamp, and leader detector circuits.
Importantly, four relays 3031, 3032, 3033, 3034 are selectively energized or not to determine whether or not the apparatus 10* is on line with the computer and terminal or with a PC, depending on whether the apparatus 10' is in play or record mode, on the one hand, or is not in play or record mode, on the other hand. More specifically, if the apparatus 10' is not in play mode or record mode, then the relays 3031-3034 are deenergized, and the various flow control/handshake connections
and data transmit and receive connections between the computer and terminal ports 3021 , 3022 are directly interconnected via the various switches in those relays. However, when the apparatus 10' is in play mode or record mode, it is intended to operate in such a way that all signals sent between the computer and terminal are directed via the apparatus; and, therefore, the relays 3031-3034 are energized to open the direction comminutions between the ports 3021 , 3022 and to assure that those connections go via the apparatus 10 ' circuitry, such as the various UARTs and other control circuit functions. The tape UART 103' is coupled to the FSK circuitry described above to transmit and to receive the digital signals, characters, etc. relative to the tape.
The signal which determines whether or not the relays 3031-3034 are energized (all of which are simultaneously energized or not) is derived from the tape UART 103'. Specifically, the DTR terminal 3035 of that UART is coupled via line 3036 and an opto-isolator and amplifier circuit 3037 to the relay coils in each of the relays 3031-3034. When the tape UART 103' is ready to send or to receive data, the signal it produces at the DTR terminal 3035 thereof causes the opto-isolator and amplifier 3037 to energize the relays. Such DTR signal is produced only when the tap UART is operative to send or to receive data, which means that recording or playing of data is occurring, and, therefore, the apparatus 10' should be coupled to the computer and terminal. When the apparatus 10' is in some other on mode or is off, the relays 3031-3034 are deenergized so that the computer port 3031-3032 are coupled directly to each other.
Turning to Fig. 32, there is illustrated a detailed schematic circuit of the driving circuitry 3100 for energizing the several parts of the tape mechanism, which is shown in detail in Fig. 25. The driving circuitry 3100 is coupled to the system bus 3005 and, thus, to the processor 93', which produces signals that call for specific operation of the driving circuitry.
A record signal on line 3101 from the processor 93' is buffered by a schmit trigger circuit 3102 and inverting amplifier 3103 and is sent to the analog circuit described above to determine whether the apparatus 10' is to be in record mode or not. In fact all of the control signals that cause operation of the analog board circuits are developed in the digital circuit. Examples are the mute signal on line 3110, oscillator signal on line 3111, solenoid signal on line 3112, as well as the motor drive signals partly derived from the signal on line 3113 and schmit trigger circuit 3114.
The mute signal is produced when the stop button on the control panel 30' has been pressed to turn off the speaker and to disable the auxiliary audio output. Such signal operates through inverting amplifier 3115 and is coupled to the analog board via the connector 3116.
The oscillator signal on line 3111 is used to turn on or off the bias oscillator for use with the recording of the signals on the tape, as was described above. When recording, since the bias oscillator output is modulated by the FSK tone signals and the audio signals, the oscillator signal on line 3111 would be produced whenever recording is occurring. Associated with the oscillator signal line 3111 are a schmit trigger circuit 3120 and amplifier circuit 3121.
A solenoid signal on line 3112 operates through the several a circuit 3122 including amplifiers and schmit trigger circuits and zener diode illustrated to drive or not a transistor 3123. The circuit 3122 is a hold circuit for the solenoid to hold it in or not to switch some gears between motors in the tape drive mechanism. The tape drive mechanism includes slow and fast motors, one for recording and playing and the other motor for fast forward and rewind. The solenoid signal on line 3112 determines whether the fast or slow gears are coupled to the tape drive gear itself.
A motor drive circuit 3124 includes an integrated circuit 293D, which receives various inputs from the bus 3005 and is coupled via the connector 3116 ultimately to the two
drive motors for the tape. The motor drive circuit 3124 determines which motor is energized to drive the tape at the appropriate speed and with the gears operated by the solenoid determines both speed and direction of the tape travel.
A tachometer circuit shown in the lower left of Fig. 32 includes a Hall effect sensor 3200 that senses rotation of the tape drive spindle. As the spindle rotates, the tape moves, and the sensor produces pulses. Those pulses are coupled via an amplifier 3201 and line 3202 to the processor. If the processor does not receive a pulse from the tachometer within prescribed time periods when the tape should be moving, the processor presumes that the tape has stalled and stops energizing the tape drive motor.
Statement of Industrial Application
In view of the foregoing, it will be appreciated that the present invention may be used to teach use of a computer, software used on the computer, etc., to demonstrate operation of various software and hardware, and to evaluate the performance of a student.
Claims
What is claimed is:
1. Digital and audio record/play apparatus, comprising recording means for simultaneously recording in a medium both digital information and audio information, and play means for simultaneously playing from said medium both such digital information and such audio information.
2. The apparatus of claim 1, further comprising means for connecting the apparatus between the computer and a computer terminal.
3. The apparatus of claim 2, said recording means comprising means for recording signals received from such computer that cause operation of such terminal as such signals also are delivered to such terminal.
4. The apparatus of claim 3, said play means comprising means for delivering to such terminal digital signals to operate the terminal as though being operated by the computer.
5. The apparatus of claim 4, wherein said terminal comprises a computer terminal.
6. The apparatus of claim 4, wherein said terminal comprises a monitor and a keyboard.
7. The apparatus of claim 2, said play means comprising means for delivering to such terminal digital signals to operate the terminal as though being operated by the computer.
8. The apparatus of claim 7, wherein said play means is operative to effect operation of the terminal to display information where there is no operative connection between the terminal and the computer.
9. The apparatus of claim 1 , further comprising means for converting digital signals to frequency signals representative of such digital information and wherein said recording means comprises means for recording such frequency signals.
10. The apparatus of claim 9, said means for converting comprising an FSK encoder.
11. The apparatus of claim 9, further comprising means for decoding frequency signals played by said play means to derive respective digital signals.
12. The apparatus of claim 9, said means for decoding comprising an FSK decoder.
13. The apparatus of claim 1, wherein digital information is recorded in a medium as respective frequency signals, and further comprising means for decoding such frequency signals played by said play means to derive respective digital signals.
14. The apparatus of claim 13, further comprising equalizing means for equalizing the amplitude of such frequency signals.
15. The apparatus of claim 1, further comprising audio input means for receiving from a microphone an audio input signal.
16. The apparatus of claim 15, further comprising means for receiving further audio input and mixing means for mixing both audio inputs for recording.
17. The apparatus of claim 1 , wherein said recording means comprises play/recording head means for recording information in said medium, said play/recording head means including first track means for recording audio information and circuit means for delivering signals to said first track means for recording in said medium and second track means for recording digital information and circuitry means for delivering digital signals to said second track means for recording in said medium.
18. The apparatus of claim 17, said play means comprising said first track means and circuitry means for receiving signals from said play/recording head means representative of audio information and said second track means and circuit means for receiving signals from said play/recording head means representative of digital signals.
19. The apparatus of claim 1, further comprising control means for controlling said recording means and play means for recording, playing, pausing, stopping, fast forwarding and rewinding functions.
20. The apparatus of claim 19, said control means comprising motor means for effecting driving of said medium, recording means and play means for recording and playing information.
21. The apparatus of claim 20, wherein said recording means comprises a first play/recording head means for recording audio information and circuit means for delivering signals to said recording means for recording in said medium and second recording head means for recording digital information and circuitry means for delivering digital signals to said recording head for recording in said medium.
22. The apparatus of claim 19, further comprising means for generating the stop code for recording in said medium to stop the medium during playing function.
23. The apparatus of claim 1 , further comprising circuit means, for coupling the apparatus between a computer and a terminal.
24. The apparatus of claim 23, said circuit means comprising means for receiving signals from such terminal and coupling such signals to such computer and means for receiving signals from such computer and coupling such signals to such terminal.
25. The apparatus of claim 24, said circuit means further comprising processor means for receiving, storing and transmitting such signals.
26. The apparatus of claim 25, said processor means comprising a multiple parallel bit device, and further comprising asynchronous means for converting serial data received by the apparatus to parallel data for said processor means and for converting parallel data from said processor means to serial data for delivery to such computer or terminal.
27. The apparatus of claim 26, said processor means comprising an MCU.
28. The apparatus of claim 27, said processor means further comprising memory and program control means.
29. The apparatus of claim 26, said asynchronous means comprising UART's.
30. The apparatus of claim 29, said UART's comprising three UART's, one for playing and recording data, one for coupling data with respect to a terminal, and one for coupling data with respect to a computer.
31. The apparatus of claim 1 , further comprising level indicating means for indicating the level of audio information being recorded and being played.
32. A digital and audio recording and playing system, comprising first play/record means for recording digital information in a medium and for playing back such digital information for use, second play/record means for recording audio information in said medium and for playing back such audio information, said first and second means being operative selectively to record simultaneously digital and audio information or to play back simultaneously such recorded digital and audio information.
33. A method for recording and playing digital and audio information, comprising recording simultaneously in a medium both digital information and audio information, and playing simultaneously from such medium both such digital information and such audio information.
34. The method of claim 33, wherein said steps of recording and of playing are carried out at different times.
35. A method of teaching use of a computer, comprising manually operating the computer while oral explanation of such operation is presented, recording simultaneously in a medium information representative of such computer operation and information representative of such oral explanation, and playing such medium to output simultaneously both such information representative of computer operation
thereby to simulate computer operation and such information representative of oral explanation thereby to convey the same to a user.
36. The method of claim 35, wherein such computer is employed in a machine, and such operation is operation of such machine and such explanation concerns operation of such machine.
37. A method of testing proficiency of an individual with a computer, comprising simultaneously recording the results of operation of the computer by the indivicual and oral description of the computer presented by the individual, and subsequently playing both such recorded operational results and oral description.
38. The method of claim 37, further comprising evaluating such recorded operational results and oral description.
39. The method of claim 37, wherein said recording comprises recording simultaneously in a medium both digital information representative of such computer operation and audio information representative of such oral presentation, and said playing comprising playing simultaneously such medium both such digital information and such audio information.
40. In a signal recording system in which signals recorded in a medium are played back, a circuit for preventing overdriving by such signals as they are played back, characterized in comprising a combination filter and clamp circuit that blocks noise and limits the maximum value of such signals to within prescribed values.
41. In system of claim 40, wherein said combination filter and clamp circuit is characterized in comprising an operational amplifier circuit including an operational amplifier having an input for receiving such played back signals and an output at which the limited signals are delivered, and connected across the input and output of said amplifier and in parallel with each other, a pair of reverse poled diodes, a resistor and a capacitor.
42. A detector circuit for blocking transmission of output signals when the input signals are not of a prescribed character, comprising, output means (1104) for delivering such output signals, driving means (1101) for driving such output means in response to receipt of input signals thereto, and detector means (113') for sensing the character of such input signals and being operative when such input signals are not of such prescribed character to disable said output means.
43. The detector circuit of claim 42, said detector means comprising a charging circuit for charging and discharging in response to the character of the signals delivered thereto representative of such input signals.
44. The detector circuit of the claim 42, said detector means comprising a charging circuit for charging and discharging and a sensing circuit (1110) to determine prescribed limits in response to the character of the signals delivered thereto representative of such input signals.
44. Apparatus for recording and playing both audio and digital signals on a single medium in close proximity on such medium, comprising bias signal means for producing a bias signal, audio means for providing an audio signal for modulating such bias signal to provide a first modulated bias signal, digital means for providing a digital signal for modulating such bias signal to produce a second modulated bias signal, and decoder means for receiving and demodulating such second modulated bias signal on playing to produce a demodulated signal, and filter and clamp circuit means for filtering such demodulated signal and clamping the same to have a prescribed maximum level characteristic to preclude overdriving output curcuitry coupled to receive such demodulated signal.
45. An audio mixing circuit, comprising a first input from a first audio soruce, first amplifier means for amplifying such first input, a second input from a second audio source, second amplifier means for amplifying such second input, junction means for joining of the amplified signals produced by
said first and second amplifier means, and further amplifier means for amplifying the joined amplified signals.
46. An apparatus for recording audio and digital signals in a medium and for playing such signals, comprising means for recording digital signals in such medium at a baud rate, means for recording audio signals in such medium, means for playing such digital and audio signals, and notch filter means for filtering from such played audio signals frequencies representative of such baud rate to reduce crosstalk of such digital signals in such audio signals when played.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US23600988A | 1988-08-24 | 1988-08-24 | |
US236009 | 1988-08-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
EP0431061A1 EP0431061A1 (en) | 1991-06-12 |
EP0431061A4 true EP0431061A4 (en) | 1993-06-16 |
Family
ID=22887753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP19890910288 Withdrawn EP0431061A4 (en) | 1988-08-24 | 1989-08-24 | Training method and apparatus with audio and digital signals recording and play back |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP0431061A4 (en) |
AU (1) | AU4209789A (en) |
WO (1) | WO1990002402A1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0589405A (en) * | 1991-09-30 | 1993-04-09 | Pioneer Electron Corp | Digital recording and reproducing system |
GB2271013B (en) * | 1992-09-22 | 1996-03-27 | Peter Copeland | Teaching aid |
GB2284294B (en) * | 1993-11-26 | 1997-11-26 | Frizzell Financial Sevices Lim | Training system |
CN113257257B (en) * | 2021-07-14 | 2021-11-09 | 统信软件技术有限公司 | Method, device and equipment for processing mixed sound of multiple paths of voice signals and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0162967A1 (en) * | 1984-04-03 | 1985-12-04 | Siemens Nixdorf Informationssysteme Aktiengesellschaft | Method for applying a computer for instruction in its operation and equipment for carrying out the method |
FR2586128A1 (en) * | 1985-08-09 | 1987-02-13 | Albert Jean | Method and device for helping people working on a computer |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3987484A (en) * | 1973-11-05 | 1976-10-19 | Cincinnati Electronics Corporation | Programmed presentation system |
DE2726815A1 (en) * | 1976-06-14 | 1977-12-15 | Sharp Kk | DATA CONTROL AND PROCESSING DEVICE FOR STORING DIGITAL AND SOUND FREQUENCY SIGNALS ON A MAGNETIC TAPE |
US4202016A (en) * | 1978-01-30 | 1980-05-06 | Sampey Harry R | Digital magnetic data storage and retrieval using audio analog recording techniques |
US4673993A (en) * | 1986-01-09 | 1987-06-16 | Mccaughey Michael P | Method for synchronizing a tape recorder to a computer under program control |
-
1989
- 1989-08-24 AU AU42097/89A patent/AU4209789A/en not_active Abandoned
- 1989-08-24 EP EP19890910288 patent/EP0431061A4/en not_active Withdrawn
- 1989-08-24 WO PCT/US1989/003660 patent/WO1990002402A1/en not_active Application Discontinuation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0162967A1 (en) * | 1984-04-03 | 1985-12-04 | Siemens Nixdorf Informationssysteme Aktiengesellschaft | Method for applying a computer for instruction in its operation and equipment for carrying out the method |
FR2586128A1 (en) * | 1985-08-09 | 1987-02-13 | Albert Jean | Method and device for helping people working on a computer |
Non-Patent Citations (1)
Title |
---|
See also references of WO9002402A1 * |
Also Published As
Publication number | Publication date |
---|---|
WO1990002402A1 (en) | 1990-03-08 |
AU4209789A (en) | 1990-03-23 |
EP0431061A1 (en) | 1991-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3594919A (en) | Tutoring devices | |
US4684349A (en) | Audio-visual teaching system and method | |
US3996671A (en) | Instruction machine | |
US4734896A (en) | Burglarproofing device for a car-carried acoustic apparatus | |
AU5891994A (en) | Process and device for detecting, recording and evaluating from case to case operational and/or driving data of a vehicle | |
EP0431061A4 (en) | Training method and apparatus with audio and digital signals recording and play back | |
US4500753A (en) | Telephone answering apparatus with recorded time of day and date | |
CN1395419A (en) | Combined system and automatic copying method | |
US5251283A (en) | Speech recognition system with an automatic adaptive learning device | |
US3685171A (en) | Instructional tape recorder | |
US3752935A (en) | Automatic switch device for magnetic recording and reproducing device | |
US3596378A (en) | Automatic tape machine | |
CN1079622C (en) | Apparatus for recording and reproducing user comments on and from video tape | |
US5127007A (en) | System with electronic modules, having at least one microprocessor | |
EP1271945A3 (en) | Video signal generating apparatus | |
KR950012380A (en) | Apparatus and method for checking VTR operation status using a remote control | |
JPS5829171A (en) | Magnetic recorder and reproducer | |
JP3218888B2 (en) | Electronics | |
KR19990011528A (en) | Learner using IC memory card | |
JPS61147641A (en) | Voice message type telephone set | |
JPS61147655A (en) | Remote recording and playback control method | |
JPH0282796A (en) | Remote control device | |
JPS60214411A (en) | Endless tape recorder | |
JP2656414B2 (en) | Playback device | |
JPS59144237A (en) | On-line scope |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 19910222 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE CH DE FR GB IT LI LU NL SE |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 19930428 |
|
AK | Designated contracting states |
Kind code of ref document: A4 Designated state(s): AT BE CH DE FR GB IT LI LU NL SE |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 19940301 |