WO1998058378A1 - Floppy disk and system - Google Patents

Floppy disk and system Download PDF

Info

Publication number
WO1998058378A1
WO1998058378A1 PCT/US1998/012650 US9812650W WO9858378A1 WO 1998058378 A1 WO1998058378 A1 WO 1998058378A1 US 9812650 W US9812650 W US 9812650W WO 9858378 A1 WO9858378 A1 WO 9858378A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
cartridge
file
identifiers
names
Prior art date
Application number
PCT/US1998/012650
Other languages
French (fr)
Inventor
Christopher S. Semler
Michael T. Hennessy
Original Assignee
Legaltech, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Legaltech, Inc. filed Critical Legaltech, Inc.
Priority to AU79754/98A priority Critical patent/AU7975498A/en
Publication of WO1998058378A1 publication Critical patent/WO1998058378A1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B33/00Constructional parts, details or accessories not provided for in the other groups of this subclass
    • G11B33/10Indicating arrangements; Warning arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B23/00Record carriers not specific to the method of recording or reproducing; Accessories, e.g. containers, specially adapted for co-operation with the recording or reproducing apparatus ; Intermediate mediums; Apparatus or processes specially adapted for their manufacture
    • G11B23/02Containers; Storing means both adapted to cooperate with the recording or reproducing means
    • G11B23/03Containers for flat record carriers
    • G11B23/0301Details
    • G11B23/0302Auxiliary features
    • G11B23/0305Semiconductor memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2512Floppy disks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • G11B2220/65Solid state media wherein solid state memory is used for storing indexing information or metadata
    • G11B2220/652Solid state media wherein solid state memory is used for storing indexing information or metadata said memory being attached to the recording medium
    • G11B2220/657Memory in disc [MID]

Definitions

  • This invention relates generally to the field of data storage systems having removable media and in its preferred embodiment, to floppy disk drives and floppy disks.
  • microprocessor has found its way into many facets of everyday life through a myriad of devices and equipment which incorporate microprocessors in their designs.
  • Such devices and equipment include, of course, the general-purpose digital computer, but also include engine fuel management systems, stereo systems, cellular telephones, home appliances, medical testing equipment (i.e., EKG, CAT scan, MRI machines, etc.), drug delivery devices, elevator controllers, heating and air conditioning system controls, manufacturing equipment and process controllers, etc.
  • the microprocessor generally, accepts input data from an input source, processes the input data to generate meaningful output data, and delivers the output data to an output destination.
  • input data is typically accepted from an input source which stores previously created input data until it is required by the microprocessor and output data is typically delivered to an output destination which stores the output data until required by the microprocessor (i.e., as input data in future processing) or by some other device or piece of equipment.
  • the input source and/or the output destination are data storage devices having fixed or removable data storage media (i.e., floppy disk drives, tape drives, CD-ROM drives, magneto-optical drives, etc.) which store the input and/or output data as collections of data, or "files " ', to which an identifier (i.e., a "file name * ') is associated to enable subsequent identification and distinguishing of the files from one another.
  • file names are, themselves, stored at a central location on the media known as a "file allocation table" (or an equivalent thereof).
  • Storage of the file names at such a central location enables quick access to the file names by the microprocessor (i.e., via a data storage device) of a digital computer, thereby enabling rapid reading of the file names and subsequent display of the file names by a display device for use by a user of the digital computer.
  • the file names are stored in machine-readable format, are not visible to the human eye, and, as such, are not readable by a human.
  • manufacturers have attempted to resolve this difficulty by providing a label which can be affixed to an outer surface of a case that permanently houses the media (i.e., such as the case of a floppy disk, magnetic tape, or other removable media which resides substantially within a case) or to a case which houses the media (i.e., such as the storage case of a CD-ROM, magneto-optical disk, etc.) during non-use.
  • the label should always provide a list of the file names of files stored on the media.
  • the failure may also be due to the replacement of such media in the wrong storage case upon removal of the media from a data storage device, thereby creating an association of the media with a case bearing the wrong label for that particular media.
  • most users of removable data storage media typically, possess a large number of media for which they have no valid, human readable list of the file names of files stored on each such media, thereby making it extremely difficult for such users to locate a particular file, by name, that is stored on one of their many removable data storage media.
  • the present invention comprises a data cartridge for storing data organized as a plurality of data files and for presenting names associated in one-to-one correspondence with the data files to a user of the data cartridge.
  • the data cartridge comprises a media for storing data organized as a plurality of data files where an identifier, or name, is associated with each data file of the plurality of data files.
  • the data cartridge also includes a case operatively housing the media and a means for presenting the identifiers, or names, associated with the data files to a user of the data cartridge absent reading of the identifiers from the media.
  • the means for presenting is housed at least partially by the case.
  • the data cartridge allows a user to determine which data files reside on the media by enabling presentation of the identifiers to the user at a site and time selectable by the user.
  • the data cartridge further includes a means, other than the media, for storing the identifiers, or names, associated with the plurality of data files stored by the media.
  • the means for storing is housed at least partially by said case and interfaces to said means for presenting.
  • the means for storing comprises a data structure and means for maintaining the data structure.
  • the means for storing includes a memory device and the data structure resides within the memory device.
  • the means for maintaining includes means for receiving the identifiers from a device external to the data cartridge and means for manipulating the data structure in response to a command received from the external device.
  • the means for presenting preferably includes means for controlling presentation of the identifiers to a user.
  • the means for presenting comprises a display device and the means for controlling comprises a user interface.
  • the means for presenting includes means for presenting a first plurality of identifiers of the plurality of data files at a first time and the means for controlling includes means for causing presentation, by the means for presenting, of a second plurality of identifiers of the plurality of data files at a second time.
  • the second plurality of identifiers preferably comprises at least one identifier which is different from any identifier of the first plurality of identifiers of the plurality of data files.
  • the present invention comprises a system for storing data files on a media and for enabling identification of the data files absent reading of the media.
  • the system comprises a data cartridge for storing data organized as a plurality of data files and for storing a plurality of identifiers associated with the plurality of data files, with each identifier the plurality of identifiers being associated with a data file of the plurality of data files.
  • the data cartridge includes a media, a case operatively housing the media, a memory held by the case, and a display held by the case and interactable with the memory.
  • the system further comprises a device for causing the plurality of identifiers to be stored by the memory of the data cartridge which is communicable with the device.
  • the means for causing storage of the plurality of identifiers includes means for generating a command which directs storage, by the memory, of an identifier associated with a data file and means for transmitting the command to the data cartridge.
  • the data cartridge further includes means for receiving the command from the device and means for executing the command.
  • the means for generating preferably creates an appropriate command upon detection of the performance of an operation on the media of the data cartridge.
  • the device further comprises means for communicating an identifier of the plurality of identifiers to the data cartridge which has a data communication interface communicable with the device's means for communicating.
  • the means for communicating and the data cartridge's data communication interface are communicable absent contact therebetween.
  • the present invention comprises a method of enabling viewing of the names associated with data files on a data cartridge having a data storage media operatively housed in a case, a memory held by the case, and a display attached to the case and interactive with the memory.
  • the method comprises the steps of storing a plurality of data files and a name associated with each data file on the data storage media and storing the name associated with each data file in a list of names in the memory of the data cartridge.
  • the method further comprises the steps of, in response to user initiation, accessing a name associated with a data file from the list of names in the memory and displaying the name on the display of the data cartridge after accessing the name from the list of names.
  • the method further includes the steps of storing a new data file and a name associated with the new data file on the data storage media and, upon storage of the new data file, adding the name associated with the new data file to the list of names in the memory. Also preferably, the method further comprises the steps of deleting a data file from the data storage media and, upon deletion of the data file, rendering non- displayable the name in the list of names in the memory associated with the deleted data file. Further, the method includes a step of, in response to user interaction with the data cartridge, awakening the display from a powered-down state.
  • the apparatus and method according to the present invention enables a user of a data storage media to learn the names of data files stored on the media without having to insert the data storage media into a data storage device of a computer so that the computer can read the media and display the names of the files on a monitor. Because the apparatus of the present invention does not require use of a computer (or, a data storage device of a computer) for a user to learn the names of data files stored on a media, the names of the data files can be learned at a location and at a time convenient to a user.
  • Another object of the present invention is to enable a user of a portable, removable data storage cartridge having a media to review the names of files currently stored by the media at any location without the aid of an additional separate device which could be, otherwise, employed to review the names of the files.
  • Still another object of the present invention is to enable a user of a portable, removable data storage cartridge having a media to review the names of files currently stored by the media with the aid of only the human eye.
  • Still another object of the present invention is to provide a portable, removable data storage cartridge having a media wherein the portable, removable data storage cartridge is capable, alone, of presenting the names of files currently stored by the media to a user.
  • Still another object of the present invention is to provide a portable, removable data storage cartridge having a media wherein the portable, removable data storage cartridge is capable, alone, of presenting the names of files currently stored by the media to a user at a desired time without requiring reading of the file names from the media at that desired time.
  • Still another object of the present invention is to provide a portable, removable data storage cartridge having a media wherein the portable, removable data storage cartridge is capable of storing the names of files currently stored by the media in a component of the cartridge other than the media.
  • Still another object of the present invention is to provide a data transfer device and a cooperative portable, removable data storage cartridge having a media wherein the data transfer device communicates data representing data files to the media.
  • Still another object of the present invention is to provide a data transfer device and a cooperative portable, removable data storage cartridge having a media wherein the data transfer device causes the manipulation of a list of file names stored by a non-media component of the data storage cartridge in order to maintain a one-to-one correspondence between the names of files stored by the media and the file names of the list of file names.
  • FIG. 1 is a front, pictorial representation of an improved floppy disk in accordance with a preferred embodiment of the present invention.
  • FIG. 2 is a back, pictorial representation of the improved floppy disk of FIG. 1.
  • FIG. 3 is an electrical schematic representation of the improved floppy disk of FIG. 1.
  • FIG. 4 is a partial, right side, cut-away, pictorial representation of an improved floppy disk drive in accordance with the preferred embodiment of the present invention.
  • FIG. 5 is an electrical schematic representation of file name communication circuitry of the improved floppy disk drive of FIG. 4.
  • FIG. 6 is a pictorial representation of a list of file names of the improved floppy disk of FIG. 1.
  • FIG. 7 is a pictorial representation of a data structure of the improved floppy disk of FIG. 1.
  • FIG. 8 is a flow chart representation of an improved disk drive input/output system service process in accordance with the preferred embodiment of the present invention.
  • FIG. 9 is a flow chart representation of an improved floppy disk firmware process in accordance with the preferred embodiment of the present invention.
  • FIG. 10 is a pictorial representation of the list of file names of FIG. 6 where the position of the file pointer has been decremented by one file name.
  • FIG. 11 is a pictorial representation of the list of file names of FIG. 6 where the position of the file pointer has been incremented by one file name.
  • FIG. 12 is a pictorial representation of the list of file names of FIG. 6 where the position of the file pointer has been decremented by four file names.
  • FIG. 13 is a pictorial representation of the list of file names of FIG. 6 where the position of the file pointer has been incremented by four file names.
  • FIG. 14 is a front, pictorial representation of the improved floppy disk of FIG. 1 where the plurality of file names being displayed is determined by the position of the file pointer of FIG. 10.
  • FIG. 15 is a front, pictorial representation of the improved floppy disk of FIG. 1 where the plurality of file names being displayed is determined by the position of the file pointer of FIG. 11.
  • FIG. 16 is a front, pictorial representation of the improved floppy disk of FIG. 1 where the plurality of file names being displayed is determined by the position of the file pointer of FIG. 12.
  • FIG. 17 is a front, pictorial representation of the improved floppy disk of FIG. 1 where the plurality of file names being displayed is determined by the position of the file pointer of FIG. 13.
  • FIG. 1 displays a front, pictorial representation of an improved floppy disk 30 (also referred to herein as a "removable data storage cartridge"
  • the improved floppy disk 30 comprises a case 34 having an opening 36 therein and a user interface 38 mounted to the case 34 and residing partially within the opening 36.
  • the user interface 38 includes a display panel 40, an up button 42, and a down button 44 and enables a user of the improved floppy disk 30 to review the names of data files (also referred to herein as "file names") stored by the improved floppy disk 30 without requiring the user to insert the improved floppy disk 30 into a conventional floppy disk drive of a computer system and then perform a "directory"-type operation on the improved floppy disk 30.
  • the display panel 40 utilizes four lines of sixteen alphanumeric characters (referred to herein as a "page") each represented by a five row by eight column dot array to present, to a user, the file names of data files stored by the improved floppy disk 30.
  • a display panel 40 is the display panel of an OPTREX, Inc. DMC- 16433 liquid crystal display unit (i.e., the unit comprises display panel 40 and a display controller 84 which controls operation of the display panel 40) available from Digi-Key Corporation of Thief River Falls, MN. It is understood that the scope of the present invention includes display panels having a different number of lines and characters per line.
  • the up and down buttons 42, 44 allow a user of the improved floppy disk 30, as described below, to scroll up and down, respectively, through a list of file names 210 which are electronically stored by the improved floppy disk 30 and presented to the user four file names (or, one page) at a time, via the display panel 40, for the user's review.
  • the up and down buttons 42, 44 are buttons of a membrane switch panel, thereby providing superior performance, many cycles of operation, and excellent resistance to damage.
  • the improved floppy disk 30 also comprises an aperture 46 in the case 34.
  • An infrared filter 48 resides between the aperture 46 and a phototransistor 50, described below, to allow only infrared light to reach the phototransistor 50 (see FIG. 4) through the aperture 46.
  • the improved floppy disk 30 additionally includes a shutter 52 slidably mounted thereto and having openings 54, 56 (see also FIG. 2) which enable conventional access and data transfer to a data storage media 58 (see FIG. 2) rotatably held within the case 34.
  • a write enable opening 60 allows conventional operation of a write enable switch (see FIG. 2) with respect to case 34.
  • FIG. 2 further comprises a plurality of additional electronic components, shown in hidden lines, located fully or partially within the case 34.
  • the connecting lines between the electronic components of FIG. 2 are not intended to portray the exact and precise electrical connections between components as seen in the electrical schematic of FIG. 3, but are intended merely to illustrate that the components are interconnected by conductors and/or signal paths which are present and extend to a microcontroller 80, a memory device 82, a display controller 84, a voltage converter 86, a plurality of logic devices 88 (i.e., represented pictorially in FIG. 2 by a logic unit 88 and including a number of inverters, NAND gates, and an exclusive-OR gate), switches 90, 92, and a battery 94.
  • logic devices 88 i.e., represented pictorially in FIG. 2 by a logic unit 88 and including a number of inverters, NAND gates, and an exclusive-OR gate
  • FIG. 3 displays an electrical schematic of the electrical components of the improved floppy disk 30.
  • Microcontroller 80 is, according to the apparatus of the preferred embodiment, a model P83CL781 low voltage, 8-bit microcontroller available from of Phillips Semiconductors, Inc.
  • the microcontroller 80 is capable of operating in two software selectable modes of reduced activity (i.e., an idle mode and a power-down mode) and, hence, two modes of reduced power consumption. Also, the microcontroller 80 has a number of on-board timers which are configurable, via firmware, to count downward to zero from a configured starting value of time.
  • the microcontroller 80 has a serial data input port (denoted as "RXD"), accessible through pin 10, which connects to the output of inverter 88a through signal path 100.
  • the input of inverter 88a connects to phototransistor 50 and pull-up resistor 102 via conductor 104.
  • phototransistor 50, inverter 88a, pull-up resistor 102, microcontroller 80, signal path 100, and conductor 104 comprise a data communication interface for the improved floppy disk 30.
  • phototransistor 50 receives pulses and non-pulses of infrared light which represent the binary equivalents of various functional codes (i.e., which direct operation of the firmware) and which represent the binary equivalents of file names communicated to the improved floppy disk 30, and converts the pulses and non-pulses into representative data signals which are passed, via conductor 104, inverter 88a, and signal path 100, to the microcontroller 80.
  • An exemplary phototransistor 50 acceptable according to the preferred embodiment, is a model MRD901 phototransistor detector available from Motorola Semiconductor Products, Inc. of Phoenix, AZ.
  • Signal path 100 also connects to a first input of exclusive-OR gate 88b.
  • a second input of exclusive-OR gate 88b connects to signal path 1 10 and to the output of inverter 88c.
  • a third input of exclusive-OR gate 88b connects to signal path 112 and to the output of inverter 88d.
  • the inputs of inverters 88c,d connect, via conductors 1 14, 116, to switches 90, 92 which are mounted, respectively, behind the up and down buttons 42, 44 and which are, respectively, operated by the depression and release of the up and down buttons 42, 44.
  • Conductors 114, 116 and, hence, the inputs of inverters 88c, 88d also connect to pull-up resistors 118, 120, respectively.
  • Switches 90, 92 are debounced by capacitors 122, 124, respectively.
  • the outputs of inverters 88c,d additionally connect, via signal paths 110, 112, to data input ports (denoted as PI 1, PI 2), respectively, of the microcontroller 80 which are accessible through pins 11, 12.
  • exclusive-OR gate 88b is the first of a series of logic gates 88 which are operatively arranged to provide an interrupt signal to the microcontroller 80 (via signal path 130 described below) in order to awaken the microcontroller 80 from power-down mode and to provide a control signal to voltage converter 86 (via signal path 136 described below) that determines whether the voltage converter 86 operates. Note that while the microcontroller 80 is in power-down mode, no execution of the firmware occurs. Note also that if the voltage converter 86 does not operate, no 5-volt DC power is supplied to the display controller 84 and display panel 40, thereby "tuming-of ⁇ " the display controller 84 and display panel 40 and terminating any display of file names on the display panel 40.
  • the output of the exclusive-OR gate 88b connects to the input of inverter 88e.
  • the output of inverter 88e connects to a first input of NAND-gate 88f.
  • a second input of NAND-gate 88f connects to signal path 130 which, in rum, connects to pin 1 and, hence, a data input port (denoted as P10 and configured to receive an interrupt input) of the microcontroller 80.
  • Signal path 132 connects the output of NAND-gate 88f to an input of flip-flop circuit 134 (which comprises NAND-gates 88g, 88h) and, more specifically, to a first input of NAND-gate 88g.
  • a second input of NAND-gate 88g connects to signal path 130 and, via signal path 130, to the output of NAND-gate 88h.
  • the output of NAND-gate 88g connects, through signal path 136, to a first input of NAND-gate 88h and to a shutdown input, pin 1, of the voltage converter 86.
  • a second input of NAND-gate 88h connects, via signal path 138, to a data output port (denoted as PI 3) of the microcontroller 80 which is accessible through pin 4 of the microcontroller 80.
  • the voltage converter 86 is configured, according to the preferred embodiment, by an inductor 150 having an inductance of 47 microhenries, an electrolytic capacitor 152 having a capacitance of 22 microfarads, and a Schotky diode 154, as illustrated in FIG. 3, to produce 5-volt DC output power (i.e., for use by the display controller 84 and display panel 40) from 3-volt DC input power which is supplied to the voltage converter 86 by connected battery 94.
  • An exemplary voltage converter 86 acceptable in accordance with the apparatus of the preferred embodiment, is a MAX858 step-up DC- DC voltage converter available from Maxim Integrated Products, Inc. of Sunnyvale, CA.
  • An exemplary battery 94 acceptable in accordance with the apparatus of the preferred embodiment, is a Panasonic BR1225-1HC lithium battery having an energy capacity of 48 milliamperes available from Digi-Key Corporation of Thief River Falls, MN.
  • the display controller 84 and display panel 40 connect to the output of the voltage converter 86 through conductor 156 in order to receive 5-volt DC input power.
  • the display controller 84 has a plurality of input ports (denoted as DB0 - DB7 and accessible at pins 7 - 14) which connect, respectively, to a plurality of data output ports (denoted as P27 - P20 and accessible at pins 28 - 21) of the microcontroller 80 via signal paths 158.
  • the display controller 84 also has a register selector input (i.e., used to instruct the display controller 84 as to whether access to the display controller's control or data register is requested), a read/write control input (i.e., used to identify whether a requested operation is a read or a write operation), and an enable input (i.e., used as a strobe signal to instruct the display controller to perform the requested operation) accessible at pins 4 - 6, respectively, which connect to data output ports (denoted as P5 - P7 and accessible at pins 34 - 32) of the microcontroller 80 via signal paths 160.
  • a register selector input i.e., used to instruct the display controller 84 as to whether access to the display controller's control or data register is requested
  • a read/write control input i.e., used to identify whether a requested operation is a read or a write operation
  • an enable input i.e., used as a strobe signal to instruct the display controller to perform the requested operation
  • various display control parameters i.e., parameters instructing the display controller 84 to turn on or off the display panel 40, to position the cursor at a specific location on the display panel 40, etc.
  • alphanumeric data to be displayed on display panel 40 i.e., alphanumeric data representing file names
  • the display controller 84 receives the display control parameters and display data from the microcontroller 80 by making the display control parameters and display data available at the microcontroller's data output ports (P27 - P20) and by communicating appropriate signals, representative of the control parameters and display data, from the microcontroller 80 to the display controller 84 on signal paths 160 at appropriate times.
  • the display controller 84 receives alphanumeric display data and a control parameter instructing the display controller 84 to display the alphanumeric display data
  • the display controller 84 ascertains which dots of the display panel 40 to turn-on in order to display the display data. Operation of the display controller 84 and the display panel 40 should be readily understood by one reasonably skilled in the art and further discussion herein is not necessary.
  • Memory device 82 stores file names which are communicated to the improved floppy disk 30 and received by the phototransistor 50.
  • the memory device 82 connects, via signal paths 170, 172, to the microcontroller 80 which transmits file names to the memory device 82 for storage and which retrieves file names from the memory device 82 for subsequent display on the display panel 40.
  • the memory device 82 is a non-volatile, EEPROM memory chip having 4KB (kilobytes) of storage capacity.
  • a memory device 82 acceptable in accordance with the apparatus of the preferred embodiment, is a model MIC24LC31 memory chip available from Phillips Semiconductors, Inc. of Sunnyvale, CA.
  • the MIC24LC31 memory chip is an "intelligent" memory chip and utilizes a proprietary serial communication protocol (i.e., which includes the sending of control parameters to the memory device 82 from the microcontroller 80 instructing the memory device 82 to function in a desired way) to communicate with the microcontroller 80. Therefore, according to the preferred embodiment, signal paths 170, 172 connect to serial data communication ports (designated as SCL and SDA and accessible at pins 7, 8) of the microcontroller 80 and to serial data communication ports (designated as SCL and SDA and accessible at pins • 6, 5) of the memory device 82. Control parameters and data are communicated between the memory device 82 and the microcontroller 80 using signal paths 170, 172. Note that a detailed description of the operation of the memory device 82 is not necessary herein because an individual reasonably skilled in the art would readily understand operation of the memory device 82.
  • FIG. 4 displays a partial, right side, cut-away, pictorial view of an improved floppy disk drive 180 (i.e., part of the improved data storage/retrieval system 32) which transfers data to and from the data storage media 58 of an improved floppy disk 30 according to direction and/or instruction received from a low-level, disk input/output system service software process 250 executed by a CPU (i.e., central processing unit) of a computer with which the improved floppy disk drive 180 communicates and functions.
  • a CPU i.e., central processing unit
  • the improved floppy disk drive 180 also transfers the names of files (i.e., file names) stored on the data storage media 58 to and from the improved floppy disk 30.
  • the improved floppy disk drive 180 (also referred to herein as a "data transfer device") is substantially similar to conventional floppy disk drives and comprises a housing 182, a face plate 184 with a hole 186 therethrough, a cavity 188 (aligned and communicable with hole 186) therein which receives an improved floppy disk 30, read/write heads (not shown) to read and/or write data (i.e., transfer data) to the data storage media 58, motors and drive assemblies (not shown) to move the read/ write heads and to rotate the data storage media 58, drive controller circuitry (not shown) to interpret instructions received from the disk input/output system service software process 250 and to appropriately control necessary operation of the motors, drive assemblies, read/write heads, etc., and an eject button 190 to enable removal of an
  • the improved floppy disk drive 180 further comprises file name communication circuitry 192 (also referred to herein as a "data communication interface") which communicates, to an improved floppy disk 30 present in cavity 188, the file names of data files stored by the data storage media 58 for storage by the memory device 82 in a list of file names 210 and which communicates the file names of data files deleted from the data storage media 58 for deletion from the list of file names 210 stored by the memory device 82.
  • the file name communication circuitry 192 shown pictorially in FIG. 4, comprises a photodiode 194 mounted to a circuit board 196.
  • the photodiode 194 depends from the circuit board 196 and aligns, along axis 197, with aperture 46, infrared filter 48, and phototransistor 50 of an improved floppy disk 30 which resides within the cavity 188 of the improved floppy disk drive 180.
  • Infrared light emitted by the photodiode 194 passes through the aperture 46 and infrared filter 48 before impinging upon the phototransistor 50.
  • the infrared filter 48 does not allow light not having an infrared wavelength, to impinge upon the phototransistor 50.
  • the file name communication circuitry 192 of the improved floppy disk drive 180 further comprises, as shown schematically in FIG. 5, a signal path 198 which connects to a data transmit conductor of an RS-232C serial data interface of a computer with which the file name communication circuitry 192 interacts and to the input of a line receiver 200 which converts input signals having RS-232C signal levels into output signals having TTL signal levels.
  • An exemplary line receiver 200 acceptable in accordance with the apparatus of the preferred embodiment, is a model MC1489A line receiver available from Motorola Semiconductors, Inc. of Phoenix, AZ .
  • the output of the line receiver 200 connects, as seen in FIG. 5, to interconnected transistors 202, 204 and infrared photodiode 194.
  • the infrared photodiode 194 is a model MLED81 infrared LED available from Motorola Semiconductors, Inc. of Phoenix, AZ.
  • the signal level at the input to the line receiver 200 is -12 volts DC (also referred to as a "MARK" signal level) and, due to the configuration and operation of the file name communication circuitry 192, light is continually emitted by the infrared photodiode 194.
  • the file name communication circuitry 192 causes light not to be emitted by the infrared photodiode 194.
  • the scope of the present invention encompasses other devices and/or interfaces using similar and/or different technologies to communicate file name information between an improved floppy disk drive 180 and an improved floppy disk 30 (for example, but not limitation, other forms of electromagnetic radiation which transmit energy to enable charging of the battery 94 while, at the same time, communicating file name data to an improved floppy disk 30).
  • the memory device 82 of the improved floppy disk 30, as described above stores a list of file names 210 (see FIG. 6 for an exemplary list) associated, in one-to-one correspondence, with data files which are stored by the data storage media 58 of the improved floppy disk 30.
  • the memory device 82 stores the list of file names 210 in a data structure 212 (see FIG.
  • the data structure 212 includes an initial data word 214 (also referred to herein as the "number of file names parameter” 214) that represents and stores the number of file names, "n", present in the list of file names 210 (and, hence, present in the data structure 212).
  • the data structure 212 further includes, for each file name (designated in FIG.
  • a file pointer 216 stored in the microcontroller's on-board RAM, contains a value which, at any time, identifies the particular file name, of the list of file names 210, to be displayed at the uppermost line of the display panel 40 (see FIG 6).
  • the data structure 212 is compatible with file naming specifications and/or conventions established by Microsoft MS-DOS ® and other DOS operating systems and which are utilized with floppy disks formatted for use on IBM-compatible personal computers.
  • the scope of the present invention encompasses all data structures for storing the specifications for file names stored by the data storage media and having, for example, but not limitation, directory and/or subdirectory information, different length file names, variable length file names, different length file extensions, variable length file extensions, pointers that improve access to members of the list and list processing (i.e., as found in singly-linked lists or doubly- linked lists), etc.
  • the improved floppy disk drive 180 receives an improved floppy disk 30 inserted into cavity 88 by a user.
  • the connected computer's RS-232C serial data interface Prior to insertion of the improved floppy disk 30, the connected computer's RS-232C serial data interface is in an idle state (i.e., causing the infrared diode 194 of the improved floppy disk drive 180 to steadily emit infrared light) and the improved floppy disk 30 is in its power-down mode (i.e., where the microcontroller 80 is in a power-down mode, the voltage controller 86 is shutdown and produces no 5-volt DC output power, and the display controller 84 and the display panel 40 are turned-off) in order to conserve battery power.
  • the power-down mode i.e., where the microcontroller 80 is in a power-down mode, the voltage controller 86 is shutdown and produces no 5-volt DC output power, and the display controller 84 and the display panel 40 are turned-off
  • the improved floppy disk 30 can only be awakened by an external interrupt signal being applied to pin 1 (and, hence, data input port PI 0) of the microcontroller 80 through signal path 130.
  • An external interrupt signal can only be generated in one of three ways: (1) the up button 42 is operated by a user; (2) the down button 44 is operated by a user; and, (3) infrared light is received by phototransistor 50 and, hence, a data signal representative of the infrared light is received at the serial data input port, RXD, of the microcontroller 80 through signal path 100.
  • the microcontroller 80 responds differently according to firmware process 400, the steps of which are executed by the microcontroller 80 and described below.
  • a respective switch 90, 92 is actuated, thereby causing a respective inverter 88c, 88d to produce a data signal having a "high" logic level on a respective signal path 110, 112.
  • the phototransistor 50 receives infrared light being emitted by the photodiode 194 of the idle improved floppy disk drive 180.
  • inverter 88a Upon the receipt of infrared light by the phototransistor 50, inverter 88a generates a data signal having a "high” logic level on signal path 100. Regardless of the source of a data signal having a “high” logic level, the output data signal of exclusive-OR gate 88b toggles from a logical "low” level to a logical “high” level, thereby causing NAND-gate 88f to generate an output data signal having a "low” logic level on signal path 132.
  • the flip-flop 134 toggles states and generates a data signal on signal path 136 having a "high” logic level and a data signal on signal path 130 which transitions from a "high” logic level to a “low” logic level.
  • the "high” logic level data signal on signal path 136 causes the voltage converter 86 to produce 5-volt DC power on conductor 156, while the transition of the data signal on signal path 130 serves as an external interrupt for the microcontroller 80.
  • the microcontroller 80 takes different, appropriate actions depending on the event which caused the generation of the external interrupt on signal path 130. After the performance of the appropriate actions, a number of events can cause the improved floppy disk 30 to re-enter power-down mode. First, if the improved floppy disk 30 is removed from the cavity 188 of the improved floppy disk drive 180, no infrared light of sufficient intensity to cause operation of the improved floppy disk 30 is received by the phototransistor 50.
  • the microcontroller 80 Upon detection of the absence of infrared light impinging upon phototransistor 50 and, hence, no data signal representative of the presence of infrared light at the serial data input port of the microcontroller 80, the microcontroller 80, under the direction of the firmware process 400 described below, causes the improved floppy disk 30 to enter power-down mode. Second, if the improved floppy disk 30 is outside the improved floppy disk drive 180 and neither of the up and down buttons 42, 44 have been pressed by the user prior to timeout of a timer within the microcontroller 80, the microcontroller 80 similarly causes the improved floppy disk 30 to enter power-down mode.
  • the microcontroller 80 In order to cause the improved floppy disk 30 to enter power-down mode, the microcontroller 80 generates a data signal on signal path 138 having a "low” logic level.
  • Flip-flop 134 receives the data signal on signal path 138, toggles states, and produces a data signal on signal path 136 having a "low” logic level.
  • the voltage converter 86 upon receiving the "low" logic level data signal on signal path 136, ceases operation and no longer generates 5-volt DC power on conductor 156 for use by the display controller 84 and display panel 40.
  • the microcontroller 80 at substantially the same time, communicates a control signal, via signal paths 158, 160, which causes the display controller 84 and display panel 40 to cease operation and executes an instruction which places the microcontroller 80, itself, in power-down mode.
  • the improved data storage/retrieval system 32 comprises an improved disk drive input/output system service process 250 which replaces a similar disk drive input/output system service process present in the BIOS (Basic Input Output System) software of the IBM-compatible personal computer to which the improved disk drive 180 connects and communicates.
  • BIOS Basic Input Output System
  • Such a system service software process is executed, by the CPU of the computer, when a higher-level computer software program requires access to a disk, for example, to read, write, create, delete, rename, etc. data files on the disk.
  • the scope of the present invention includes the replacement of the disk drive input/output system service processes of various computers (i.e., with an improved disk drive input/output system service process 250) which are not IBM personal computer compatible and/or which do not utilize BIOS software and/or which utilize other operating systems that are not DOS compatible at the floppy disk interface level.
  • FIG. 8 displays the steps of the improved disk drive input/output system service process 250 which are executed (i.e., by the CPU of the computer to which the improved floppy disk drive 180 connects and communicates) when the process 250 is invoked through software interrupt 21H.
  • the improved disk drive input/output system service process 250 causes the performance of conventional disk file functions, or operations (i.e., read, write, create, delete, rename, etc.), by the improved floppy disk drive 180 on the data storage media 58 of an improved floppy disk 30 present in the cavity 188 of the improved floppy disk drive 180 or by another type of disk drive connected and communicable with the computer.
  • the improved disk drive input/output system service process 250 also causes the communication of function codes (also referred to herein as "code bytes") and file name data to the microcontroller 80 of the improved floppy disk 30.
  • the function codes instruct the microcontroller 80 to operate, based upon the conventional disk file operation performed on the data storage media 58, in a particular mode (i.e., "clear”, “update”, “add”, “delete”, and “rename") in order to manipulate file name data subsequently communicated to the microcontroller 80 and/or file name data present in the list of file names 210 stored in the data structure 212 of the memory device 82.
  • step 252 input parameters which are passed through CPU registers (i.e., pointers to file name(s), function codes representing operations to be performed, etc.) are temporarily stored, at step 254, in the RAM (i.e., random access memory) of the computer which is attempting to perform a disk file operation on the improved floppy disk 30 present in the improved floppy disk drive 180.
  • the process 250 advances to step 256 where the disk file operation, or function, specified by the passed input parameters is performed by the improved floppy disk drive 180 or by another type of disk drive.
  • the microcontroller 80 examines the saved input parameters and determines whether the disk input/output system service function was performed on a floppy disk or on another type of disk drive.
  • the process 250 branches, based upon the determination made at step 258. If the disk input/output system service function was not performed on a floppy disk, the CPU, at step 262, loads its registers with the input parameters which were saved in RAM at step 254. The process 250 exits, at step 264, and the CPU continues execution of the higher level computer program which requested execution of the disk input/output system service function.
  • the CPU determines that the disk input/output system service function was performed on a floppy disk
  • the CPU examines, at step 266, various system parameters which indicate whether the floppy disk was changed prior to the execution of the present floppy disk input/output operation. Advancing to step 268, the CPU determines whether the floppy disk was changed. If the CPU determines that the floppy disk was not changed, the process 250 continues to step 284 described below. If, at step 268, the CPU determines that the floppy disk was changed, all of the file names of the present floppy disk are read and stored in the computer's RAM at step 270.
  • a code (i.e., consisting of a byte having a uniquely identifying value and having a start bit set) is sent, via photodiode 194 of the improved floppy disk drive 180 to the phototransistor 50 of the improved floppy disk 30, to cause microcontroller 80 to awaken and clear the contents memory device 82.
  • a second code byte is sent, via the photodiode 194 and phototransistor 50, to cause the microcontroller 80 to enter an update mode for receipt of all of the file names read from the floppy disk media 58 at step 270.
  • the CPU sends all of the file names, via the photodiode 194 and the phototransistor 50, to the microcontroller 80.
  • the CPU sends an end of text byte, at step 278, to the microcontroller 80 through the infrared photodiode 194 and the infrared phototransistor 50.
  • the CPU appropriately loads its registers with the input parameters which were saved in RAM at step 254.
  • process 250 returns control of the CPU to the higher level computer program which requested execution of the disk input/output system service function.
  • the improved disk drive input/output system service process 250 continues at step 284 if the CPU determined at step 268, that the floppy disk was changed since last floppy disk input/output operation.
  • the CPU examines the return code from the disk input/output system service function to determine whether the operation was successful.
  • the CPU branches at step 286, to step 288 where it appropriately loads its registers with the input parameters which were previously saved at step 254.
  • the improved disk drive input/output system service process 250 instructs the CPU to continue under the control of the higher level computer program which requested performance of the disk input/output system service function.
  • process 250 Upon determining at step 286, that the disk input/output system service function was successful, process 250 then directs the CPU to examine the previously saved input parameters, at step 292, to determine whether the disk input/output system service function performed at step 256 was a create file function, a delete file function, or a rename file function. If the CPU determines that the disk input/output system service function was not a create file function, process 250 branches at step 294, to step 306 described below.
  • process 250 branches at step 294, to step 296 where the CPU sends a code byte (i.e., comprising a uniquely identifying code and having its start bit set) by way of photodiode 194 in phototransistor 50 to microcontroller 80 to direct the microcontroller 80 to enter "add mode" for receipt of a new file name for addition to the list of file names 210 already stored in memory device 82. Then, at step 298, the CPU sends the characters of the new file name to the microcontroller 80 through the photodiode 194 and the phototransistor 50.
  • a code byte i.e., comprising a uniquely identifying code and having its start bit set
  • the CPU sends an end of text byte to the microcontroller 80 before the appropriately loading its registers, at step 302, with input parameters which were previously saved at step 254.
  • Process 250 then directs the CPU, at step 304, to continue under the direction of the higher level computer program which requested the disk input/output system service function.
  • the CPU determines, at step 306, whether the requested was a delete file function. If not, process 250 directs the CPU to continue execution at step 318 described below. If, at step 306, the CPU determines that the requested disk input/output system service function was a delete file function, process 250 instructs the CPU to advance to step 308 where the CPU sends a code byte (i.e., comprising a uniquely identifying code having its start bit set) to microcontroller 80 to cause the microcontroller 80 to enter "delete mode" for receipt of a file name and subsequent deletion of the received file name from the list of names 210 already stored in memory device 82.
  • a code byte i.e., comprising a uniquely identifying code having its start bit set
  • the CPU sends the characters of the file name, via photodiode 194 and phototransistor 50, to the microcontroller 80 and, at step 312, similarly sends an end of text byte to the microcontroller 80.
  • the CPU appropriately loads its registers with the input parameters which were previously saved at step 254.
  • Process 250 then directs the CPU, at step 316, to continue execution of the higher level computer program which requested system service function.
  • the CPU determines that the performed disk input/output system service function was not a delete function, the CPU then ascertains, at step 318, whether the performed disk input/output system service function was a rename file function. If not, the CPU continues execution at step 326 described below. If so, the CPU, at step 320, sends a code byte (i.e., a uniquely identifying byte having its start bit set) to the microcontroller 80, via photodiode 194 and phototransistor 50, to cause the microcontroller 80 to enter "rename mode" for receipt of an existing file name, receipt of a new file name, and substitution of the existing file name with the new file name in the list of file names 210 stored in memory device 82.
  • a code byte i.e., a uniquely identifying byte having its start bit set
  • the CPU After sending the code byte, the CPU sends the characters of the existing file name and the new file name to the microcontroller 80 at step 322. Then, at step 324, the CPU sends an end of text byte to the microcontroller 80 and, at step 326, appropriately loads its registers with the input parameters which were previously stored in RAM at step 254.
  • the improved input/output system service process 250 then directs the CPU, at step 328, to continue executing instructions under the control of the higher level computer program which requested the disk input/output system service function.
  • the improved data storage/retrieval system 32 further comprises an improved floppy disk firmware process 400 which directs operation of the microcontroller 80 and which includes steps which are executed by the microcontroller 80 after the battery 94 begins to supply power to the microcontroller 80 and the remainder of the electronic components of the improved floppy disk 30.
  • firmware process 400 advances to step 404 where the microcontroller 80 sets the memory location, in memory device 82, which represents the current scroll mode to "smooth" (i.e., when the scroll mode is set to "smooth", a single additional file name is displayed on display panel 40 in response to a user depressing the up or down buttons 42, 44 of the user interface 38; when the scroll mode is set to "page”, up to four additional file names are displayed on display panel 40 in response to a user depressing the up or down buttons 42, 44).
  • the microcontroller 80 sets the memory location, in memory device 82, associated with the file pointer 216 to a value of zero.
  • the microcontroller 80 Upon initialization of the scroll mode and the file pointer 216, the microcontroller 80 causes the improved floppy disk 30 to enter power-down mode as described above. Once the microcontroller 80 is in power-down mode, it is awakenable, as described above, only by impingement of infrared light, emitted by photodiode 194, on phototransistor 50, by depression of the up button 32 and accompanying actuation of switch 90 by a user, or by depression of the down button 44 and accompanying actuation of switch 92 by a user. Note that the ellipses seen in FIG. 9 indicate that the microcontroller 80 is "asleep" in power-down mode and executes no instructions, thereby conserving power which would otherwise be necessarily supplied by battery 94.
  • the microcontroller 80 receives an external interrupt signal on signal path 130 in response to the occurrence of one of the three above-identified events.
  • the microcontroller 80 exits power-down mode and begins executing firmware instructions at step 412 where the microcontroller 80 determines whether the external interrupt was caused by an up or down button 42, 44 depressed by a user (i.e., by reading data input ports PI 1, P 12 to ascertain whether a data signal having a "high" logic level is present on signal paths 110, 112, respectively). If so, firmware process 400 advances to step 470 described below.
  • the microcontroller 80 determines, at step 414, whether a byte is present at the microcontroller ' s serial data input port, RXD. If so, the microcontroller 80 branches to step 422 of firmware process 400 as described below. If not, the microcontroller 80 determines whether infrared light is still being received by phototransistor 50 at step 416.
  • the microcontroller 80 causes, as described above, the improved floppy disk 30 to enter power-down mode at step 418. If, at step 416, infrared light is detected, the microcontroller 80 determines, at step 420, whether a byte is present at its serial data input port, RXD. If no byte is present, firmware process 400 loops back to step 416 where the microcontroller 80 again determines whether or not infrared light is still being received by phototransistor 50. Note that if no infrared light is present at phototransistor 50, the improved floppy disk 30 no longer resides within the improved floppy disk drive 180 since photodiode 194 is always "on" when the computer's serial port is idle.
  • the microcontroller 80 reads the byte which is present at its serial data input port. Then, at step 424, the microcontroller 80 determines whether the byte read from the serial data input port is a valid mode code (i.e., valid mode codes include code bytes identifying "clear” mode, "update” mode, “add” mode, "delete” mode, and "rename” mode). If the microcontroller 80 determines that the byte is not a valid mode code, firmware process 400 directs the microcontroller 80 to loop back to step 416 where the microcontroller 80 once again determines whether or not infrared light is still being received by phototransistor 50.
  • a valid mode code i.e., valid mode codes include code bytes identifying "clear” mode, "update” mode, “add” mode, "delete” mode, and "rename” mode.
  • the microcontroller 80 determines that the byte is a valid mode code, the microcontroller 80 sets the value of a memory location in on-board RAM which is associated with the current mode equal to the value contained in the byte read from the serial data input port at step 422. The microcontroller 80 then determines, at step 428, whether the mode is "clear" mode. If so, the microcontroller 80 sets the number of file names parameter 214 stored in data structure 212 equal to zero at step 430. Then, at step 432, the microcontroller 80 stores null values in the remaining bytes of the data structure 212 before looping back to step 416 to determine whether or not infrared light is present at phototransistor 50.
  • the microcontroller 80 determines whether the mode is "update”. If so, the microcontroller 80 branches to step 436 of firmware process 400 where it receives the file names and an end of text byte communicated by the improved floppy disk drive 180, stores the received file names in the list of file names 210 using data structure 212, and updates the number of file names parameter 214 which is stored in data structure 212. Then, the microcontroller 80, under the direction of firmware process 400, loops back to step 416 as described above.
  • the microcontroller 80 determines, at step 438, whether the mode is "add”. If so, the microcontroller 80 advances to step 440 where it receives a file name and an end of text byte.
  • the microcontroller 80 stores the file name in data structure 212 and increments the number of file names parameter 214 before continuing execution at step 416 described above.
  • the microcontroller 80 determines, at step 442, whether the mode is "delete”. If so, the microcontroller 80 branches to step 444 where it receives a file name to delete and an end of text byte. The microcontroller 80 deletes the file name from data structure 212 and decrements the number of file names parameter 214 in data structure 212. The microcontroller 80 then continues execution of firmware process 400 at step 416 where it determines whether infrared light is impinging on phototransistor 50.
  • the microcontroller 80 determines that the mode is not "delete”, the mode has to be "rename” (i.e., by process of elimination) and the microcontroller 80 receives the file name of an existing file, a new file name to be substituted for the existing file name, and an end of text byte at step 446. Then, the microcontroller 80 substitutes the new file name for the existing file name in data structure 212 and loops back to step 416 described above.
  • the microcontroller 80 instructs the display controller 84, at step 470, to turn-on and, hence, tums-on the display panel 40. Then, at step 472, the microcontroller 80 determines whether the scroll mode is set to "smooth". If so, the microcontroller 80 determines, at step 474, whether the up button 42 was pressed by a user. If the up button 42 was pressed, the microcontroller 80 decrements the file pointer 216 at step 476 (see also FIG. 10) to point to the previous file name of list 210 and then advances to step 486 described below.
  • step 478 the file pointer 216 at step 478 (see also FIG. 11) to point to the next file name of list 210 before advancing to step 486 described below. If, at step 478
  • the microcontroller 80 determines that the scroll mode is not set to "smooth" (i.e., meaning that the scroll mode is set to "page"), the microcontroller 80 determines at step 480, whether the up button 42 was pressed by a user. If so, the microcontroller 80 subtracts four (or the maximum possible number up to four (i.e., since four is the number of lines of display panel 40 and, hence, the size in file names of a "page" of file names) as determined by the number of file names parameter 214 stored in data structure 212) from the file pointer 216 (see also FIG. 12) to cause the file pointer to point to the first file name of the previous page of file names before advancing to step 486 described below.
  • the microcontroller 80 determines that the up button 42 was not pressed by a user, then the down 44 was pressed and the microcontroller 80, at step 484, adds four (or the maximum possible number up to four as determined by the number of file names parameter 214 stored in data structure 212) to the file pointer 216 (see also FIG. 13) to cause the file pointer to point to the first file name of the next page of file names before continuing at step 486.
  • the microcontroller 80 knowing that the data structure 212 stores eleven characters per file name, utilizes the file pointer 216 to compute the current value of the display pointer 218 at step 486 as the product obtained by multiplying the file pointer 216 by four (i.e., the maximum number of lines displayable by display panel 40 according to the preferred embodiment).
  • the microcontroller 80 reads four file names from data structure 212 of memory device 82 starting at the byte identified by the display pointer 218 and communicates the file names to the display controller 84 for display on display panel 40. Note that a user's pressing of the up button 42, when the display panel 40 is being operated in "smooth" scroll mode, causes the display of a second plurality of file names (see FIG.
  • the microcontroller 80 executes an instruction which starts a display timer operated by the microcontroller 80.
  • the display timer is set, upon start up of the microcontroller 80, to a value often seconds. If, before expiration of the display timer, a user fails to depress either of the up and down buttons 42, 44, the microcontroller 80 places the improved floppy disk 30 into power- down mode so as to conserve electrical power.
  • the microcontroller determines if the up and down buttons 42, 44 were simultaneously depressed by a user to toggle the scroll mode between "smooth" mode and "page” mode. If so, the microcontroller 80 toggles the scroll mode at step 494. Thus, if the scroll mode was set to "smooth" prior to the simultaneous depressing of the up and down buttons 42, 44 by a user, then the microcontroller 80 sets the scroll mode to "page”. Conversely, if the scroll mode was set to "page” prior to the simultaneous depressing of the up and down buttons 42, 44 by a user, the microcontroller 80 sets the scroll mode "smooth".
  • the microcontroller 80 determines whether the up button 42 or the down button 44 was pressed by a user. If so, the microcontroller 80 stops the display timer at step 498 and branches to step 472 described above. If not, the microcontroller 80 determines, at step 500, whether the display timer has expired (i.e., counted down to zero). If not, the microcontroller 80 branches back to step 492 described above. If the display timer has expired, the microcontroller 80 turns off the display controller 84 and display panel 40 at step 502. Then, at step 504, the microcontroller 80 executes an instruction which places the microcontroller 80 in power-down mode for subsequent awakening by an external interrupt received at step 410 described above.
  • an improved data storage/retrieval system 32' comprises an improved floppy disk 30' substantially similar, in stmcture and operation, to the improved floppy disk 30 of the preferred embodiment and comprises a file name communication utility program 600' which causes the communication of mode codes and file names to the improved floppy disk 30' (i.e., like the communication of mode codes and file names to the improved floppy disk 30 by the improved floppy disk drive 188 of the preferred embodiment) when the phototransistor 50' of the improved floppy disk 30' is appropriately aligned for a sufficient period of time with an infrared data communication port (for example, an IRDA-compliant data communication port) connected to and communicable with a computer.
  • an infrared data communication port for example, an IRDA-compliant data communication port
  • an improved data storage/retrieval system 32" comprises an improved floppy disk 30", an improved floppy disk drive 188", and a floppy disk review device 700".
  • the improved floppy disk drive 188" is substantially similar, in stmcture and operation, to the improved floppy disk drive 188 of the preferred embodiment.
  • the improved floppy disk 30" is substantially similar, in stmcture and operation, to the improved floppy disk 30 of the preferred embodiment except that improved floppy disk 30" has no display panel and no display controller, but includes an infrared photodiode 702" which connects to the serial data output port, TXD, of microcontroller 80".
  • the infrared photodiode 702" is mounted to the case 34" so as to enable the photodiode 700" to emit infrared light signals to the floppy disk review device 700".
  • the floppy disk review device 700" resides, for instance, on a user's desktop and includes a phototransistor 704", a microcontroller 706", and a user interface 708" (including up and down buttons 710", 712", a display controller 714", and a display panel 716") which are arranged and interconnected in a substantially similar manner to the similar components of the improved floppy disk 30".
  • a user utilizes the improved floppy disk 30" and improved floppy disk drive 188' like those of the preferred embodiment, with the exception that the improved floppy disk 30" cannot display the file names of files stored by the data storage media 58" of the improved floppy disk 30".
  • the review device 700 receives file names from the improved floppy disk 30", via photodiode 702" and phototransistor 704", and displays the file names on display panel 716". Should the user press the up or down buttons 710", 712" of the user interface 708", the review device 700" requests and receives, from the improved floppy disk 30", another set of file names to display on display panel 716".
  • an improved data storage/retrieval system 32' comprises an improved floppy disk drive 188"' and a caddy 800'" which receives a conventional floppy disk 802'".
  • the improved floppy disk drive 188'" is substantially similar, in stmcture and operation, to the improved floppy disk drive 188 of the preferred embodiment.
  • the caddy 800'" includes substantially the same electronic components as are present in the improved floppy disk 30 of the preferred embodiment.
  • the electronic components of the caddy 800'" function similarly to those similar electronic components of the improved floppy disk 30 of the preferred embodiment.
  • the caddy 800' containing a conventional floppy disk 802'
  • the caddy 800' is inserted into the improved floppy disk drive 188 * " and whenever file operations are performed on the floppy disk 802'", the list of file names 210"' stored in the memory device 82'" of the caddy 800'" is manipulated so that the names of the list 210'" always correspond to the names of the data files stored on floppy disk 802'".
  • the user desires to review the names of the data files stored on floppy disk 802'", the user removes the caddy”' (and, hence, the floppy disk 802'") from the improved floppy disk drive 188'" and uses the up and down buttons 42"', 44'" to control the display of the file names on display panel 40'".
  • the scope of the present invention encompasses, in addition to floppy disks and floppy disk drives, other similarly modified and/or adapted types of data storage cartridges (for example, but not limitation, tape cartridges, optical disks, magneto/optical disks, ZIP disks, JAZZ disks, SyQuest disks, removable hard disks, etc.) and similarly modified and/or adapted data transfer devices which operate with the respective types of data storage cartridges.
  • data storage cartridges for example, but not limitation, tape cartridges, optical disks, magneto/optical disks, ZIP disks, JAZZ disks, SyQuest disks, removable hard disks, etc.

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A data cartridge for storing data organized as a plurality of data files and for presenting identifiers, or names, associated with the data files to a user of the data cartridge without requiring the data cartridge, during presentation of the identifiers, to reside within a device which can read the identifiers, thereby enabling the user to learn the names of the data files stored by the data cartridge at a time and location of convenience to the user. The data cartridge comprises a media for storing data files, a memory device (separate from the media) for storing the identifiers of the data files, and a display panel viewable from outside the data cartridge for presenting the identifiers of the data files to a user. The data cartridge further comprises a user interface, including up and down buttons, which enable a user to scroll through a plurality of file identifiers in a smooth scroll mode or in a page scroll mode.

Description

FLOPPY DISK AND SYSTEM
FIELD OF THE INVENTION
This invention relates generally to the field of data storage systems having removable media and in its preferred embodiment, to floppy disk drives and floppy disks.
BACKGROUND OF THE INVENTION
The creation of the single-chip microprocessor is, perhaps, one of the greatest technological achievements of the twentieth century. Owing to its small size and its ability to manipulate digital data at incredible speeds, the microprocessor has found its way into many facets of everyday life through a myriad of devices and equipment which incorporate microprocessors in their designs. Such devices and equipment include, of course, the general-purpose digital computer, but also include engine fuel management systems, stereo systems, cellular telephones, home appliances, medical testing equipment (i.e., EKG, CAT scan, MRI machines, etc.), drug delivery devices, elevator controllers, heating and air conditioning system controls, manufacturing equipment and process controllers, etc.
Regardless of the device or piece of equipment, the microprocessor, generally, accepts input data from an input source, processes the input data to generate meaningful output data, and delivers the output data to an output destination. In many applications of the microprocessor, such as in the general-purpose, desktop digital computer, input data is typically accepted from an input source which stores previously created input data until it is required by the microprocessor and output data is typically delivered to an output destination which stores the output data until required by the microprocessor (i.e., as input data in future processing) or by some other device or piece of equipment. Usually, the input source and/or the output destination are data storage devices having fixed or removable data storage media (i.e., floppy disk drives, tape drives, CD-ROM drives, magneto-optical drives, etc.) which store the input and/or output data as collections of data, or "files"', to which an identifier (i.e., a "file name*') is associated to enable subsequent identification and distinguishing of the files from one another. On many fixed or removable data storage media, the file names are, themselves, stored at a central location on the media known as a "file allocation table" (or an equivalent thereof).
Storage of the file names at such a central location enables quick access to the file names by the microprocessor (i.e., via a data storage device) of a digital computer, thereby enabling rapid reading of the file names and subsequent display of the file names by a display device for use by a user of the digital computer.
Unfortunately though, the file names are stored in machine-readable format, are not visible to the human eye, and, as such, are not readable by a human. Where the data storage media is of the removable variety, manufacturers have attempted to resolve this difficulty by providing a label which can be affixed to an outer surface of a case that permanently houses the media (i.e., such as the case of a floppy disk, magnetic tape, or other removable media which resides substantially within a case) or to a case which houses the media (i.e., such as the storage case of a CD-ROM, magneto-optical disk, etc.) during non-use. Then, whenever a new file is created on the media, a user of the media writes the file's associated file name on the label so that the file name is visible to humans. Whenever a file is subsequently deleted from the media, the user erases or marks through the file name, on the label, which is associated with the deleted file. Through use of this procedure, the label should always provide a list of the file names of files stored on the media.
While, in theory, the use of a label seems like a potential solution to the problem of making the file names of files stored by a removable data storage media readable by the human eye, the use of a such a label, in reality, fails to provide an adequate solution to the problem. For removable data storage media which are permanently housed in a case (i.e., also referred to herein as a "data cartridge" or a "data storage cartridge"), the failure is primarily due to the inability of users to keep the label updated with the file names of files currently stored on the disk. For removable data storage media housed by a storage case only when not in-use, the failure may also be due to the replacement of such media in the wrong storage case upon removal of the media from a data storage device, thereby creating an association of the media with a case bearing the wrong label for that particular media. As a result of such failure, most users of removable data storage media, typically, possess a large number of media for which they have no valid, human readable list of the file names of files stored on each such media, thereby making it extremely difficult for such users to locate a particular file, by name, that is stored on one of their many removable data storage media.
There is, therefore, a need in the industry for a data storage system having removable data storage media that provide a user with an always current list of the names of files stored by the media and which can solve other related and unrelated problems that become apparent upon reading and understanding this specification.
SUMMARY OF THE INVENTION
Briefly described, in a first preferred form, the present invention comprises a data cartridge for storing data organized as a plurality of data files and for presenting names associated in one-to-one correspondence with the data files to a user of the data cartridge. The data cartridge comprises a media for storing data organized as a plurality of data files where an identifier, or name, is associated with each data file of the plurality of data files. The data cartridge also includes a case operatively housing the media and a means for presenting the identifiers, or names, associated with the data files to a user of the data cartridge absent reading of the identifiers from the media. The means for presenting is housed at least partially by the case. The data cartridge allows a user to determine which data files reside on the media by enabling presentation of the identifiers to the user at a site and time selectable by the user. Preferably, the data cartridge further includes a means, other than the media, for storing the identifiers, or names, associated with the plurality of data files stored by the media. The means for storing is housed at least partially by said case and interfaces to said means for presenting. The means for storing comprises a data structure and means for maintaining the data structure. Preferably, the means for storing includes a memory device and the data structure resides within the memory device. The means for maintaining includes means for receiving the identifiers from a device external to the data cartridge and means for manipulating the data structure in response to a command received from the external device.
The means for presenting preferably includes means for controlling presentation of the identifiers to a user. Preferably, the means for presenting comprises a display device and the means for controlling comprises a user interface. Also preferably, the means for presenting includes means for presenting a first plurality of identifiers of the plurality of data files at a first time and the means for controlling includes means for causing presentation, by the means for presenting, of a second plurality of identifiers of the plurality of data files at a second time. The second plurality of identifiers preferably comprises at least one identifier which is different from any identifier of the first plurality of identifiers of the plurality of data files.
In another form, the present invention comprises a system for storing data files on a media and for enabling identification of the data files absent reading of the media. The system comprises a data cartridge for storing data organized as a plurality of data files and for storing a plurality of identifiers associated with the plurality of data files, with each identifier the plurality of identifiers being associated with a data file of the plurality of data files. The data cartridge includes a media, a case operatively housing the media, a memory held by the case, and a display held by the case and interactable with the memory. The system further comprises a device for causing the plurality of identifiers to be stored by the memory of the data cartridge which is communicable with the device.
Preferably, the means for causing storage of the plurality of identifiers includes means for generating a command which directs storage, by the memory, of an identifier associated with a data file and means for transmitting the command to the data cartridge. The data cartridge further includes means for receiving the command from the device and means for executing the command. The means for generating preferably creates an appropriate command upon detection of the performance of an operation on the media of the data cartridge.
Also preferably, the device further comprises means for communicating an identifier of the plurality of identifiers to the data cartridge which has a data communication interface communicable with the device's means for communicating. Preferably, the means for communicating and the data cartridge's data communication interface are communicable absent contact therebetween.
In another preferred form, the present invention comprises a method of enabling viewing of the names associated with data files on a data cartridge having a data storage media operatively housed in a case, a memory held by the case, and a display attached to the case and interactive with the memory. The method comprises the steps of storing a plurality of data files and a name associated with each data file on the data storage media and storing the name associated with each data file in a list of names in the memory of the data cartridge. The method further comprises the steps of, in response to user initiation, accessing a name associated with a data file from the list of names in the memory and displaying the name on the display of the data cartridge after accessing the name from the list of names.
Preferably, the method further includes the steps of storing a new data file and a name associated with the new data file on the data storage media and, upon storage of the new data file, adding the name associated with the new data file to the list of names in the memory. Also preferably, the method further comprises the steps of deleting a data file from the data storage media and, upon deletion of the data file, rendering non- displayable the name in the list of names in the memory associated with the deleted data file. Further, the method includes a step of, in response to user interaction with the data cartridge, awakening the display from a powered-down state.
The apparatus and method according to the present invention enables a user of a data storage media to learn the names of data files stored on the media without having to insert the data storage media into a data storage device of a computer so that the computer can read the media and display the names of the files on a monitor. Because the apparatus of the present invention does not require use of a computer (or, a data storage device of a computer) for a user to learn the names of data files stored on a media, the names of the data files can be learned at a location and at a time convenient to a user.
Accordingly, it is an object of the present invention to enable a user of a portable, removable data storage cartridge having a media to review the names of files currently stored by the media at any desired time without the aid of an additional separate device which could be, otherwise, employed to review the names of the files.
Another object of the present invention is to enable a user of a portable, removable data storage cartridge having a media to review the names of files currently stored by the media at any location without the aid of an additional separate device which could be, otherwise, employed to review the names of the files.
Still another object of the present invention is to enable a user of a portable, removable data storage cartridge having a media to review the names of files currently stored by the media with the aid of only the human eye.
Still another object of the present invention is to provide a portable, removable data storage cartridge having a media wherein the portable, removable data storage cartridge is capable, alone, of presenting the names of files currently stored by the media to a user.
Still another object of the present invention is to provide a portable, removable data storage cartridge having a media wherein the portable, removable data storage cartridge is capable, alone, of presenting the names of files currently stored by the media to a user at a desired time without requiring reading of the file names from the media at that desired time.
Still another object of the present invention is to provide a portable, removable data storage cartridge having a media wherein the portable, removable data storage cartridge is capable of storing the names of files currently stored by the media in a component of the cartridge other than the media.
Still another object of the present invention is to provide a portable, removable data storage cartridge having a media wherein the portable, removable data storage cartridge is capable of non-volatively storing the names of files currently stored by the media in a component of the device other than the media. Still another object of the present invention is to provide a portable, removable data storage cartridge having a media and a non-media interactive communication interface wherein the portable, removable data storage cartridge is capable of receiving the names of files currently stored by the media via the non-media interactive communication interface. Still another object of the present invention is to provide a portable, removable data storage cartridge capable of non-volatively storing a data file.
Still another object of the present invention is to provide a portable, removable data storage cartridge capable of non-volatively storing a data file in an economical manner. Still another object of the present invention is to provide a data transfer device and a cooperative portable, removable data storage cartridge having a media wherein the data transfer device communicates the names of files currently stored by the media to the portable, removable data storage cartridge without employing the media to perform the communication of the names of the files.
Still another object of the present invention is to provide a data transfer device and a cooperative portable, removable data storage cartridge having a media wherein the data transfer device communicates data representing data files to the media.
Still another object of the present invention is to provide a data transfer device and a cooperative portable, removable data storage cartridge having a media wherein the data transfer device causes the manipulation of a list of file names stored by a non-media component of the data storage cartridge in order to maintain a one-to-one correspondence between the names of files stored by the media and the file names of the list of file names.
Other objects, features, and advantages of the present invention will become apparent upon reading and understanding the present specification when taken in conjunction with the appended drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a front, pictorial representation of an improved floppy disk in accordance with a preferred embodiment of the present invention. FIG. 2 is a back, pictorial representation of the improved floppy disk of FIG. 1.
FIG. 3 is an electrical schematic representation of the improved floppy disk of FIG. 1.
FIG. 4 is a partial, right side, cut-away, pictorial representation of an improved floppy disk drive in accordance with the preferred embodiment of the present invention.
FIG. 5 is an electrical schematic representation of file name communication circuitry of the improved floppy disk drive of FIG. 4.
FIG. 6 is a pictorial representation of a list of file names of the improved floppy disk of FIG. 1. FIG. 7 is a pictorial representation of a data structure of the improved floppy disk of FIG. 1. FIG. 8 is a flow chart representation of an improved disk drive input/output system service process in accordance with the preferred embodiment of the present invention.
FIG. 9 is a flow chart representation of an improved floppy disk firmware process in accordance with the preferred embodiment of the present invention.
FIG. 10 is a pictorial representation of the list of file names of FIG. 6 where the position of the file pointer has been decremented by one file name.
FIG. 11 is a pictorial representation of the list of file names of FIG. 6 where the position of the file pointer has been incremented by one file name. FIG. 12 is a pictorial representation of the list of file names of FIG. 6 where the position of the file pointer has been decremented by four file names.
FIG. 13 is a pictorial representation of the list of file names of FIG. 6 where the position of the file pointer has been incremented by four file names.
FIG. 14 is a front, pictorial representation of the improved floppy disk of FIG. 1 where the plurality of file names being displayed is determined by the position of the file pointer of FIG. 10.
FIG. 15 is a front, pictorial representation of the improved floppy disk of FIG. 1 where the plurality of file names being displayed is determined by the position of the file pointer of FIG. 11. FIG. 16 is a front, pictorial representation of the improved floppy disk of FIG. 1 where the plurality of file names being displayed is determined by the position of the file pointer of FIG. 12.
FIG. 17 is a front, pictorial representation of the improved floppy disk of FIG. 1 where the plurality of file names being displayed is determined by the position of the file pointer of FIG. 13.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
Referring now to the drawings, in which like numerals represent like components throughout the several views, FIG. 1 displays a front, pictorial representation of an improved floppy disk 30 (also referred to herein as a "removable data storage cartridge"
30) of an improved data storage/retrieval system 32, in accordance with the apparatus of a preferred embodiment of the present invention. The improved floppy disk 30 comprises a case 34 having an opening 36 therein and a user interface 38 mounted to the case 34 and residing partially within the opening 36. The user interface 38 includes a display panel 40, an up button 42, and a down button 44 and enables a user of the improved floppy disk 30 to review the names of data files (also referred to herein as "file names") stored by the improved floppy disk 30 without requiring the user to insert the improved floppy disk 30 into a conventional floppy disk drive of a computer system and then perform a "directory"-type operation on the improved floppy disk 30. Preferably, the display panel 40 utilizes four lines of sixteen alphanumeric characters (referred to herein as a "page") each represented by a five row by eight column dot array to present, to a user, the file names of data files stored by the improved floppy disk 30. A display panel 40, acceptable according to the preferred embodiment, is the display panel of an OPTREX, Inc. DMC- 16433 liquid crystal display unit (i.e., the unit comprises display panel 40 and a display controller 84 which controls operation of the display panel 40) available from Digi-Key Corporation of Thief River Falls, MN. It is understood that the scope of the present invention includes display panels having a different number of lines and characters per line. The up and down buttons 42, 44 allow a user of the improved floppy disk 30, as described below, to scroll up and down, respectively, through a list of file names 210 which are electronically stored by the improved floppy disk 30 and presented to the user four file names (or, one page) at a time, via the display panel 40, for the user's review. Preferably, the up and down buttons 42, 44 are buttons of a membrane switch panel, thereby providing superior performance, many cycles of operation, and excellent resistance to damage.
The improved floppy disk 30 also comprises an aperture 46 in the case 34. An infrared filter 48 resides between the aperture 46 and a phototransistor 50, described below, to allow only infrared light to reach the phototransistor 50 (see FIG. 4) through the aperture 46. The improved floppy disk 30 additionally includes a shutter 52 slidably mounted thereto and having openings 54, 56 (see also FIG. 2) which enable conventional access and data transfer to a data storage media 58 (see FIG. 2) rotatably held within the case 34. A write enable opening 60 allows conventional operation of a write enable switch (see FIG. 2) with respect to case 34. The improved floppy disk 30, as illustrated pictorially in the back view of FIG.
2, further comprises a plurality of additional electronic components, shown in hidden lines, located fully or partially within the case 34. Note that the connecting lines between the electronic components of FIG. 2 are not intended to portray the exact and precise electrical connections between components as seen in the electrical schematic of FIG. 3, but are intended merely to illustrate that the components are interconnected by conductors and/or signal paths which are present and extend to a microcontroller 80, a memory device 82, a display controller 84, a voltage converter 86, a plurality of logic devices 88 (i.e., represented pictorially in FIG. 2 by a logic unit 88 and including a number of inverters, NAND gates, and an exclusive-OR gate), switches 90, 92, and a battery 94. Note that the various electrical components have been carefully selected and are appropriately operated to minimize power drain on the battery 94, thereby enabling the battery 94 to have a longer life and the improved floppy disk 30 to be capable of presenting file names to users via display panel 40 for quite a few years. FIG. 3 displays an electrical schematic of the electrical components of the improved floppy disk 30. Microcontroller 80 is, according to the apparatus of the preferred embodiment, a model P83CL781 low voltage, 8-bit microcontroller available from of Phillips Semiconductors, Inc. of Sunnyvale, CA and has an 8-bit CPU (central processing unit) which executes a firmware program, described below, stored in 16KB (kilobytes) of on-board ROM (read only memory) using 256 bytes of on-board RAM (random access memory). The microcontroller 80 is capable of operating in two software selectable modes of reduced activity (i.e., an idle mode and a power-down mode) and, hence, two modes of reduced power consumption. Also, the microcontroller 80 has a number of on-board timers which are configurable, via firmware, to count downward to zero from a configured starting value of time.
Additionally, the microcontroller 80 has a serial data input port (denoted as "RXD"), accessible through pin 10, which connects to the output of inverter 88a through signal path 100. The input of inverter 88a connects to phototransistor 50 and pull-up resistor 102 via conductor 104. Together, phototransistor 50, inverter 88a, pull-up resistor 102, microcontroller 80, signal path 100, and conductor 104 comprise a data communication interface for the improved floppy disk 30. During operation, as described below, phototransistor 50 receives pulses and non-pulses of infrared light which represent the binary equivalents of various functional codes (i.e., which direct operation of the firmware) and which represent the binary equivalents of file names communicated to the improved floppy disk 30, and converts the pulses and non-pulses into representative data signals which are passed, via conductor 104, inverter 88a, and signal path 100, to the microcontroller 80. An exemplary phototransistor 50, acceptable according to the preferred embodiment, is a model MRD901 phototransistor detector available from Motorola Semiconductor Products, Inc. of Phoenix, AZ.
Signal path 100, as seen in FIG. 3, also connects to a first input of exclusive-OR gate 88b. A second input of exclusive-OR gate 88b connects to signal path 1 10 and to the output of inverter 88c. Similarly, a third input of exclusive-OR gate 88b connects to signal path 112 and to the output of inverter 88d. The inputs of inverters 88c,d connect, via conductors 1 14, 116, to switches 90, 92 which are mounted, respectively, behind the up and down buttons 42, 44 and which are, respectively, operated by the depression and release of the up and down buttons 42, 44. Conductors 114, 116 and, hence, the inputs of inverters 88c, 88d also connect to pull-up resistors 118, 120, respectively. Switches 90, 92 are debounced by capacitors 122, 124, respectively. The outputs of inverters 88c,d additionally connect, via signal paths 110, 112, to data input ports (denoted as PI 1, PI 2), respectively, of the microcontroller 80 which are accessible through pins 11, 12. So configured, depression of either button 42, 44 and, hence, closure of respective switch 90, 92 by a user creates a signal having a "high" logical level on respective signal paths 110, 112 (alternatively, when switches 90, 92 are open, a "low" logical level is present on respective signal paths 110, 112) which is detectable by the microcontroller 80 through reading of data input ports PI 1, PI 2. As seen in FIG. 3, exclusive-OR gate 88b is the first of a series of logic gates 88 which are operatively arranged to provide an interrupt signal to the microcontroller 80 (via signal path 130 described below) in order to awaken the microcontroller 80 from power-down mode and to provide a control signal to voltage converter 86 (via signal path 136 described below) that determines whether the voltage converter 86 operates. Note that while the microcontroller 80 is in power-down mode, no execution of the firmware occurs. Note also that if the voltage converter 86 does not operate, no 5-volt DC power is supplied to the display controller 84 and display panel 40, thereby "tuming-ofϊ" the display controller 84 and display panel 40 and terminating any display of file names on the display panel 40. The output of the exclusive-OR gate 88b connects to the input of inverter 88e. The output of inverter 88e connects to a first input of NAND-gate 88f. A second input of NAND-gate 88f connects to signal path 130 which, in rum, connects to pin 1 and, hence, a data input port (denoted as P10 and configured to receive an interrupt input) of the microcontroller 80. Signal path 132 connects the output of NAND-gate 88f to an input of flip-flop circuit 134 (which comprises NAND-gates 88g, 88h) and, more specifically, to a first input of NAND-gate 88g. A second input of NAND-gate 88g connects to signal path 130 and, via signal path 130, to the output of NAND-gate 88h. The output of NAND-gate 88g connects, through signal path 136, to a first input of NAND-gate 88h and to a shutdown input, pin 1, of the voltage converter 86. A second input of NAND-gate 88h connects, via signal path 138, to a data output port (denoted as PI 3) of the microcontroller 80 which is accessible through pin 4 of the microcontroller 80.
The voltage converter 86 is configured, according to the preferred embodiment, by an inductor 150 having an inductance of 47 microhenries, an electrolytic capacitor 152 having a capacitance of 22 microfarads, and a Schotky diode 154, as illustrated in FIG. 3, to produce 5-volt DC output power (i.e., for use by the display controller 84 and display panel 40) from 3-volt DC input power which is supplied to the voltage converter 86 by connected battery 94. An exemplary voltage converter 86, acceptable in accordance with the apparatus of the preferred embodiment, is a MAX858 step-up DC- DC voltage converter available from Maxim Integrated Products, Inc. of Sunnyvale, CA. An exemplary battery 94, acceptable in accordance with the apparatus of the preferred embodiment, is a Panasonic BR1225-1HC lithium battery having an energy capacity of 48 milliamperes available from Digi-Key Corporation of Thief River Falls, MN.
The display controller 84 and display panel 40 connect to the output of the voltage converter 86 through conductor 156 in order to receive 5-volt DC input power. The display controller 84 has a plurality of input ports (denoted as DB0 - DB7 and accessible at pins 7 - 14) which connect, respectively, to a plurality of data output ports (denoted as P27 - P20 and accessible at pins 28 - 21) of the microcontroller 80 via signal paths 158. The display controller 84 also has a register selector input (i.e., used to instruct the display controller 84 as to whether access to the display controller's control or data register is requested), a read/write control input (i.e., used to identify whether a requested operation is a read or a write operation), and an enable input (i.e., used as a strobe signal to instruct the display controller to perform the requested operation) accessible at pins 4 - 6, respectively, which connect to data output ports (denoted as P5 - P7 and accessible at pins 34 - 32) of the microcontroller 80 via signal paths 160. During operation, various display control parameters (i.e., parameters instructing the display controller 84 to turn on or off the display panel 40, to position the cursor at a specific location on the display panel 40, etc.) and alphanumeric data to be displayed on display panel 40 (i.e., alphanumeric data representing file names) are communicated to the display controller 84 from the microcontroller 80 by making the display control parameters and display data available at the microcontroller's data output ports (P27 - P20) and by communicating appropriate signals, representative of the control parameters and display data, from the microcontroller 80 to the display controller 84 on signal paths 160 at appropriate times. Once the display controller 84 receives alphanumeric display data and a control parameter instructing the display controller 84 to display the alphanumeric display data, the display controller 84 ascertains which dots of the display panel 40 to turn-on in order to display the display data. Operation of the display controller 84 and the display panel 40 should be readily understood by one reasonably skilled in the art and further discussion herein is not necessary.
Memory device 82 stores file names which are communicated to the improved floppy disk 30 and received by the phototransistor 50. The memory device 82 connects, via signal paths 170, 172, to the microcontroller 80 which transmits file names to the memory device 82 for storage and which retrieves file names from the memory device 82 for subsequent display on the display panel 40. Preferably, the memory device 82 is a non-volatile, EEPROM memory chip having 4KB (kilobytes) of storage capacity. A memory device 82, acceptable in accordance with the apparatus of the preferred embodiment, is a model MIC24LC31 memory chip available from Phillips Semiconductors, Inc. of Sunnyvale, CA. Note that the MIC24LC31 memory chip is an "intelligent" memory chip and utilizes a proprietary serial communication protocol (i.e., which includes the sending of control parameters to the memory device 82 from the microcontroller 80 instructing the memory device 82 to function in a desired way) to communicate with the microcontroller 80. Therefore, according to the preferred embodiment, signal paths 170, 172 connect to serial data communication ports (designated as SCL and SDA and accessible at pins 7, 8) of the microcontroller 80 and to serial data communication ports (designated as SCL and SDA and accessible at pins • 6, 5) of the memory device 82. Control parameters and data are communicated between the memory device 82 and the microcontroller 80 using signal paths 170, 172. Note that a detailed description of the operation of the memory device 82 is not necessary herein because an individual reasonably skilled in the art would readily understand operation of the memory device 82.
FIG. 4 displays a partial, right side, cut-away, pictorial view of an improved floppy disk drive 180 (i.e., part of the improved data storage/retrieval system 32) which transfers data to and from the data storage media 58 of an improved floppy disk 30 according to direction and/or instruction received from a low-level, disk input/output system service software process 250 executed by a CPU (i.e., central processing unit) of a computer with which the improved floppy disk drive 180 communicates and functions.
In accordance with the preferred embodiment of the present invention, the improved floppy disk drive 180 also transfers the names of files (i.e., file names) stored on the data storage media 58 to and from the improved floppy disk 30. The improved floppy disk drive 180 (also referred to herein as a "data transfer device") is substantially similar to conventional floppy disk drives and comprises a housing 182, a face plate 184 with a hole 186 therethrough, a cavity 188 (aligned and communicable with hole 186) therein which receives an improved floppy disk 30, read/write heads (not shown) to read and/or write data (i.e., transfer data) to the data storage media 58, motors and drive assemblies (not shown) to move the read/ write heads and to rotate the data storage media 58, drive controller circuitry (not shown) to interpret instructions received from the disk input/output system service software process 250 and to appropriately control necessary operation of the motors, drive assemblies, read/write heads, etc., and an eject button 190 to enable removal of an improved floppy disk 30.
The improved floppy disk drive 180 further comprises file name communication circuitry 192 (also referred to herein as a "data communication interface") which communicates, to an improved floppy disk 30 present in cavity 188, the file names of data files stored by the data storage media 58 for storage by the memory device 82 in a list of file names 210 and which communicates the file names of data files deleted from the data storage media 58 for deletion from the list of file names 210 stored by the memory device 82. The file name communication circuitry 192, shown pictorially in FIG. 4, comprises a photodiode 194 mounted to a circuit board 196. The photodiode 194 depends from the circuit board 196 and aligns, along axis 197, with aperture 46, infrared filter 48, and phototransistor 50 of an improved floppy disk 30 which resides within the cavity 188 of the improved floppy disk drive 180. Infrared light emitted by the photodiode 194 passes through the aperture 46 and infrared filter 48 before impinging upon the phototransistor 50. Note that the infrared filter 48 does not allow light not having an infrared wavelength, to impinge upon the phototransistor 50. Therefore, when an improved floppy disk 30 is not present within the cavity 188 of an improved floppy disk drive 180, little non-infrared light impinges on the phototransistor 50 and the opportunity for the phototransistor 50 to receive and falsely operate in response to the receipt of non-infrared wavelength light is significantly reduced.
The file name communication circuitry 192 of the improved floppy disk drive 180 further comprises, as shown schematically in FIG. 5, a signal path 198 which connects to a data transmit conductor of an RS-232C serial data interface of a computer with which the file name communication circuitry 192 interacts and to the input of a line receiver 200 which converts input signals having RS-232C signal levels into output signals having TTL signal levels. An exemplary line receiver 200, acceptable in accordance with the apparatus of the preferred embodiment, is a model MC1489A line receiver available from Motorola Semiconductors, Inc. of Phoenix, AZ . The output of the line receiver 200 connects, as seen in FIG. 5, to interconnected transistors 202, 204 and infrared photodiode 194. Preferably, the infrared photodiode 194 is a model MLED81 infrared LED available from Motorola Semiconductors, Inc. of Phoenix, AZ. Note that when the RS-232C serial data interface is in an idle state (i.e., when no data is being communicated between the improved floppy disk drive 180 and an improved floppy disk 30 residing within cavity 188, or when no improved floppy disk 30 is present within improved floppy disk 30), the signal level at the input to the line receiver 200 is -12 volts DC (also referred to as a "MARK" signal level) and, due to the configuration and operation of the file name communication circuitry 192, light is continually emitted by the infrared photodiode 194. Conversely, when the RS-232C serial data interface is not in an idle state (i.e., when a data bit is transmitted, via signal path 198, to the input of the line receiver 200), the signal level at the input of the line receiver 200 is +12 volts DC (also referred to as a "SPACE" signal level), the file name communication circuitry 192 causes light not to be emitted by the infrared photodiode 194. It is understood that the scope of the present invention encompasses other devices and/or interfaces using similar and/or different technologies to communicate file name information between an improved floppy disk drive 180 and an improved floppy disk 30 (for example, but not limitation, other forms of electromagnetic radiation which transmit energy to enable charging of the battery 94 while, at the same time, communicating file name data to an improved floppy disk 30). The memory device 82 of the improved floppy disk 30, as described above, stores a list of file names 210 (see FIG. 6 for an exemplary list) associated, in one-to-one correspondence, with data files which are stored by the data storage media 58 of the improved floppy disk 30. The memory device 82 stores the list of file names 210 in a data structure 212 (see FIG. 7) which resides within the memory device 82 and which is manipulated by the microcontroller 80. The data structure 212 includes an initial data word 214 (also referred to herein as the "number of file names parameter" 214) that represents and stores the number of file names, "n", present in the list of file names 210 (and, hence, present in the data structure 212). The data structure 212 further includes, for each file name (designated in FIG. 7 as "Fn # 1" (216,) - "Fn # 'n'" (216„)) of the list of file names 210, eight bytes of data in sequential memory locations which represent, in one-to-one correspondence, the eight possible respective ASCII bytes of a file name followed, in sequential memory locations, by three bytes of data which represent, in one- to-one correspondence, the three possible respective ASCII bytes of a file name extension. A file pointer 216, stored in the microcontroller's on-board RAM, contains a value which, at any time, identifies the particular file name, of the list of file names 210, to be displayed at the uppermost line of the display panel 40 (see FIG 6). A display pointer 218, also stored in the microcontroller's on-board RAM, contains a value which is coordinated with the value of the file pointer 216 to identify the starting byte location in data structure 212 corresponding to the first byte of the particular file name identified by the file pointer 216. Note that the data structure 212 is compatible with file naming specifications and/or conventions established by Microsoft MS-DOS® and other DOS operating systems and which are utilized with floppy disks formatted for use on IBM-compatible personal computers. It is understood, however, that the scope of the present invention encompasses all data structures for storing the specifications for file names stored by the data storage media and having, for example, but not limitation, directory and/or subdirectory information, different length file names, variable length file names, different length file extensions, variable length file extensions, pointers that improve access to members of the list and list processing (i.e., as found in singly-linked lists or doubly- linked lists), etc. In operation, the improved floppy disk drive 180 receives an improved floppy disk 30 inserted into cavity 88 by a user. Prior to insertion of the improved floppy disk 30, the connected computer's RS-232C serial data interface is in an idle state (i.e., causing the infrared diode 194 of the improved floppy disk drive 180 to steadily emit infrared light) and the improved floppy disk 30 is in its power-down mode (i.e., where the microcontroller 80 is in a power-down mode, the voltage controller 86 is shutdown and produces no 5-volt DC output power, and the display controller 84 and the display panel 40 are turned-off) in order to conserve battery power. When in its power-down mode, the improved floppy disk 30 can only be awakened by an external interrupt signal being applied to pin 1 (and, hence, data input port PI 0) of the microcontroller 80 through signal path 130. An external interrupt signal can only be generated in one of three ways: (1) the up button 42 is operated by a user; (2) the down button 44 is operated by a user; and, (3) infrared light is received by phototransistor 50 and, hence, a data signal representative of the infrared light is received at the serial data input port, RXD, of the microcontroller 80 through signal path 100. Depending upon the cause of an external interrupt, the microcontroller 80 responds differently according to firmware process 400, the steps of which are executed by the microcontroller 80 and described below. According to the preferred embodiment, when either of the up and down buttons 42, 44 are depressed by a user to awaken the improved floppy disk 30 from power-down mode and to cause the display of a file name(s) on display panel 40, a respective switch 90, 92 is actuated, thereby causing a respective inverter 88c, 88d to produce a data signal having a "high" logic level on a respective signal path 110, 112. When the improved floppy disk 30 is inserted into the improved floppy disk drive 180 and received by cavity 188, the phototransistor 50 receives infrared light being emitted by the photodiode 194 of the idle improved floppy disk drive 180. Upon the receipt of infrared light by the phototransistor 50, inverter 88a generates a data signal having a "high" logic level on signal path 100. Regardless of the source of a data signal having a "high" logic level, the output data signal of exclusive-OR gate 88b toggles from a logical "low" level to a logical "high" level, thereby causing NAND-gate 88f to generate an output data signal having a "low" logic level on signal path 132. When the "low" logic level output data signal of NAND-gate 88f is received by flip-flop 134 via signal path 132, the flip-flop 134 toggles states and generates a data signal on signal path 136 having a "high" logic level and a data signal on signal path 130 which transitions from a "high" logic level to a "low" logic level. The "high" logic level data signal on signal path 136 causes the voltage converter 86 to produce 5-volt DC power on conductor 156, while the transition of the data signal on signal path 130 serves as an external interrupt for the microcontroller 80.
As noted above, the microcontroller 80 takes different, appropriate actions depending on the event which caused the generation of the external interrupt on signal path 130. After the performance of the appropriate actions, a number of events can cause the improved floppy disk 30 to re-enter power-down mode. First, if the improved floppy disk 30 is removed from the cavity 188 of the improved floppy disk drive 180, no infrared light of sufficient intensity to cause operation of the improved floppy disk 30 is received by the phototransistor 50. Upon detection of the absence of infrared light impinging upon phototransistor 50 and, hence, no data signal representative of the presence of infrared light at the serial data input port of the microcontroller 80, the microcontroller 80, under the direction of the firmware process 400 described below, causes the improved floppy disk 30 to enter power-down mode. Second, if the improved floppy disk 30 is outside the improved floppy disk drive 180 and neither of the up and down buttons 42, 44 have been pressed by the user prior to timeout of a timer within the microcontroller 80, the microcontroller 80 similarly causes the improved floppy disk 30 to enter power-down mode. In order to cause the improved floppy disk 30 to enter power-down mode, the microcontroller 80 generates a data signal on signal path 138 having a "low" logic level. Flip-flop 134 receives the data signal on signal path 138, toggles states, and produces a data signal on signal path 136 having a "low" logic level. The voltage converter 86, upon receiving the "low" logic level data signal on signal path 136, ceases operation and no longer generates 5-volt DC power on conductor 156 for use by the display controller 84 and display panel 40. The microcontroller 80, at substantially the same time, communicates a control signal, via signal paths 158, 160, which causes the display controller 84 and display panel 40 to cease operation and executes an instruction which places the microcontroller 80, itself, in power-down mode.
In accordance with a method of the preferred embodiment of the present invention, the improved data storage/retrieval system 32 comprises an improved disk drive input/output system service process 250 which replaces a similar disk drive input/output system service process present in the BIOS (Basic Input Output System) software of the IBM-compatible personal computer to which the improved disk drive 180 connects and communicates. Such a system service software process is executed, by the CPU of the computer, when a higher-level computer software program requires access to a disk, for example, to read, write, create, delete, rename, etc. data files on the disk.
In the Microsoft DOS® and Microsoft Windows® 3.1 environments, such a disk input/output system service software process is accessed by a higher-level computer software program through invocation of a software interrupt designated by the hexadecimal number 21H. A person reasonably skilled would understand how to replace an existing disk drive input/output system service process of BIOS with the improved disk drive input/output system service process 250, thereby causing execution of the improved disk drive input/output system service process 250 upon invocation of software interrupt 21H. Therefore, it is not necessary to describe herein the steps necessary to replace an existing disk drive input/output system service process with the improved disk drive input/output system service process 250. It is understood that the scope of the present invention includes the replacement of the disk drive input/output system service processes of various computers (i.e., with an improved disk drive input/output system service process 250) which are not IBM personal computer compatible and/or which do not utilize BIOS software and/or which utilize other operating systems that are not DOS compatible at the floppy disk interface level.
FIG. 8 displays the steps of the improved disk drive input/output system service process 250 which are executed (i.e., by the CPU of the computer to which the improved floppy disk drive 180 connects and communicates) when the process 250 is invoked through software interrupt 21H. The improved disk drive input/output system service process 250 causes the performance of conventional disk file functions, or operations (i.e., read, write, create, delete, rename, etc.), by the improved floppy disk drive 180 on the data storage media 58 of an improved floppy disk 30 present in the cavity 188 of the improved floppy disk drive 180 or by another type of disk drive connected and communicable with the computer. If the conventional disk file operation is performed by the improved floppy disk drive 180, the improved disk drive input/output system service process 250 also causes the communication of function codes (also referred to herein as "code bytes") and file name data to the microcontroller 80 of the improved floppy disk 30. The function codes instruct the microcontroller 80 to operate, based upon the conventional disk file operation performed on the data storage media 58, in a particular mode (i.e., "clear", "update", "add", "delete", and "rename") in order to manipulate file name data subsequently communicated to the microcontroller 80 and/or file name data present in the list of file names 210 stored in the data structure 212 of the memory device 82.
After starting at step 252, input parameters which are passed through CPU registers (i.e., pointers to file name(s), function codes representing operations to be performed, etc.) are temporarily stored, at step 254, in the RAM (i.e., random access memory) of the computer which is attempting to perform a disk file operation on the improved floppy disk 30 present in the improved floppy disk drive 180. Upon temporarily storing the input parameters to prevent their possible overwriting and destruction, the process 250 advances to step 256 where the disk file operation, or function, specified by the passed input parameters is performed by the improved floppy disk drive 180 or by another type of disk drive.
Then, at step 258, the microcontroller 80 examines the saved input parameters and determines whether the disk input/output system service function was performed on a floppy disk or on another type of disk drive. At step 260, the process 250 branches, based upon the determination made at step 258. If the disk input/output system service function was not performed on a floppy disk, the CPU, at step 262, loads its registers with the input parameters which were saved in RAM at step 254. The process 250 exits, at step 264, and the CPU continues execution of the higher level computer program which requested execution of the disk input/output system service function. If, at step 260, the CPU determines that the disk input/output system service function was performed on a floppy disk, the CPU examines, at step 266, various system parameters which indicate whether the floppy disk was changed prior to the execution of the present floppy disk input/output operation. Advancing to step 268, the CPU determines whether the floppy disk was changed. If the CPU determines that the floppy disk was not changed, the process 250 continues to step 284 described below. If, at step 268, the CPU determines that the floppy disk was changed, all of the file names of the present floppy disk are read and stored in the computer's RAM at step 270. Then, at step 272, a code (i.e., consisting of a byte having a uniquely identifying value and having a start bit set) is sent, via photodiode 194 of the improved floppy disk drive 180 to the phototransistor 50 of the improved floppy disk 30, to cause microcontroller 80 to awaken and clear the contents memory device 82. At step 274, a second code byte is sent, via the photodiode 194 and phototransistor 50, to cause the microcontroller 80 to enter an update mode for receipt of all of the file names read from the floppy disk media 58 at step 270. The CPU, at step 276, sends all of the file names, via the photodiode 194 and the phototransistor 50, to the microcontroller 80. Upon sending all of the file names, the CPU sends an end of text byte, at step 278, to the microcontroller 80 through the infrared photodiode 194 and the infrared phototransistor 50. Then, at step 280, the CPU appropriately loads its registers with the input parameters which were saved in RAM at step 254. At step 282, process 250 returns control of the CPU to the higher level computer program which requested execution of the disk input/output system service function.
The improved disk drive input/output system service process 250 continues at step 284 if the CPU determined at step 268, that the floppy disk was changed since last floppy disk input/output operation. At step 284, the CPU examines the return code from the disk input/output system service function to determine whether the operation was successful. Upon determining that the operation was not successful, the CPU branches at step 286, to step 288 where it appropriately loads its registers with the input parameters which were previously saved at step 254. Then, at step 290, the improved disk drive input/output system service process 250 instructs the CPU to continue under the control of the higher level computer program which requested performance of the disk input/output system service function. Upon determining at step 286, that the disk input/output system service function was successful, process 250 then directs the CPU to examine the previously saved input parameters, at step 292, to determine whether the disk input/output system service function performed at step 256 was a create file function, a delete file function, or a rename file function. If the CPU determines that the disk input/output system service function was not a create file function, process 250 branches at step 294, to step 306 described below. If the CPU determines that the disk input/output system service function was a create file function, process 250 branches at step 294, to step 296 where the CPU sends a code byte (i.e., comprising a uniquely identifying code and having its start bit set) by way of photodiode 194 in phototransistor 50 to microcontroller 80 to direct the microcontroller 80 to enter "add mode" for receipt of a new file name for addition to the list of file names 210 already stored in memory device 82. Then, at step 298, the CPU sends the characters of the new file name to the microcontroller 80 through the photodiode 194 and the phototransistor 50. At step 300, the CPU sends an end of text byte to the microcontroller 80 before the appropriately loading its registers, at step 302, with input parameters which were previously saved at step 254. Process 250 then directs the CPU, at step 304, to continue under the direction of the higher level computer program which requested the disk input/output system service function.
If, at step 294, the CPU determines that the requested disk input/output system service function was not a create file function, the CPU determines, at step 306, whether the requested was a delete file function. If not, process 250 directs the CPU to continue execution at step 318 described below. If, at step 306, the CPU determines that the requested disk input/output system service function was a delete file function, process 250 instructs the CPU to advance to step 308 where the CPU sends a code byte (i.e., comprising a uniquely identifying code having its start bit set) to microcontroller 80 to cause the microcontroller 80 to enter "delete mode" for receipt of a file name and subsequent deletion of the received file name from the list of names 210 already stored in memory device 82. Then, at step 310, the CPU sends the characters of the file name, via photodiode 194 and phototransistor 50, to the microcontroller 80 and, at step 312, similarly sends an end of text byte to the microcontroller 80. At step 314, the CPU appropriately loads its registers with the input parameters which were previously saved at step 254. Process 250 then directs the CPU, at step 316, to continue execution of the higher level computer program which requested system service function.
If, at step 306, the CPU determines that the performed disk input/output system service function was not a delete function, the CPU then ascertains, at step 318, whether the performed disk input/output system service function was a rename file function. If not, the CPU continues execution at step 326 described below. If so, the CPU, at step 320, sends a code byte (i.e., a uniquely identifying byte having its start bit set) to the microcontroller 80, via photodiode 194 and phototransistor 50, to cause the microcontroller 80 to enter "rename mode" for receipt of an existing file name, receipt of a new file name, and substitution of the existing file name with the new file name in the list of file names 210 stored in memory device 82. After sending the code byte, the CPU sends the characters of the existing file name and the new file name to the microcontroller 80 at step 322. Then, at step 324, the CPU sends an end of text byte to the microcontroller 80 and, at step 326, appropriately loads its registers with the input parameters which were previously stored in RAM at step 254. The improved input/output system service process 250 then directs the CPU, at step 328, to continue executing instructions under the control of the higher level computer program which requested the disk input/output system service function.
In accordance with the method of the preferred embodiment of the present invention, the improved data storage/retrieval system 32 further comprises an improved floppy disk firmware process 400 which directs operation of the microcontroller 80 and which includes steps which are executed by the microcontroller 80 after the battery 94 begins to supply power to the microcontroller 80 and the remainder of the electronic components of the improved floppy disk 30. After starting at step 402, firmware process 400 advances to step 404 where the microcontroller 80 sets the memory location, in memory device 82, which represents the current scroll mode to "smooth" (i.e., when the scroll mode is set to "smooth", a single additional file name is displayed on display panel 40 in response to a user depressing the up or down buttons 42, 44 of the user interface 38; when the scroll mode is set to "page", up to four additional file names are displayed on display panel 40 in response to a user depressing the up or down buttons 42, 44). Continuing at step 406, the microcontroller 80 sets the memory location, in memory device 82, associated with the file pointer 216 to a value of zero. Upon initialization of the scroll mode and the file pointer 216, the microcontroller 80 causes the improved floppy disk 30 to enter power-down mode as described above. Once the microcontroller 80 is in power-down mode, it is awakenable, as described above, only by impingement of infrared light, emitted by photodiode 194, on phototransistor 50, by depression of the up button 32 and accompanying actuation of switch 90 by a user, or by depression of the down button 44 and accompanying actuation of switch 92 by a user. Note that the ellipses seen in FIG. 9 indicate that the microcontroller 80 is "asleep" in power-down mode and executes no instructions, thereby conserving power which would otherwise be necessarily supplied by battery 94. At step 410, the microcontroller 80 receives an external interrupt signal on signal path 130 in response to the occurrence of one of the three above-identified events. Upon receiving the external interrupt, the microcontroller 80 exits power-down mode and begins executing firmware instructions at step 412 where the microcontroller 80 determines whether the external interrupt was caused by an up or down button 42, 44 depressed by a user (i.e., by reading data input ports PI 1, P 12 to ascertain whether a data signal having a "high" logic level is present on signal paths 110, 112, respectively). If so, firmware process 400 advances to step 470 described below. If not, the external event which awakened the microcontroller 80 had to be the reception of infrared light by the phototransistor 50 (i.e., because depression of the up or down buttons 42, 44 was eliminated as a possible cause at step 412) and in response, the microcontroller 80 determines, at step 414, whether a byte is present at the microcontroller's serial data input port, RXD. If so, the microcontroller 80 branches to step 422 of firmware process 400 as described below. If not, the microcontroller 80 determines whether infrared light is still being received by phototransistor 50 at step 416. If no infrared light is present, the microcontroller 80 causes, as described above, the improved floppy disk 30 to enter power-down mode at step 418. If, at step 416, infrared light is detected, the microcontroller 80 determines, at step 420, whether a byte is present at its serial data input port, RXD. If no byte is present, firmware process 400 loops back to step 416 where the microcontroller 80 again determines whether or not infrared light is still being received by phototransistor 50. Note that if no infrared light is present at phototransistor 50, the improved floppy disk 30 no longer resides within the improved floppy disk drive 180 since photodiode 194 is always "on" when the computer's serial port is idle.
Continuing at step 422, the microcontroller 80 reads the byte which is present at its serial data input port. Then, at step 424, the microcontroller 80 determines whether the byte read from the serial data input port is a valid mode code (i.e., valid mode codes include code bytes identifying "clear" mode, "update" mode, "add" mode, "delete" mode, and "rename" mode). If the microcontroller 80 determines that the byte is not a valid mode code, firmware process 400 directs the microcontroller 80 to loop back to step 416 where the microcontroller 80 once again determines whether or not infrared light is still being received by phototransistor 50. If, at step 424, the microcontroller 80 determines that the byte is a valid mode code, the microcontroller 80 sets the value of a memory location in on-board RAM which is associated with the current mode equal to the value contained in the byte read from the serial data input port at step 422. The microcontroller 80 then determines, at step 428, whether the mode is "clear" mode. If so, the microcontroller 80 sets the number of file names parameter 214 stored in data structure 212 equal to zero at step 430. Then, at step 432, the microcontroller 80 stores null values in the remaining bytes of the data structure 212 before looping back to step 416 to determine whether or not infrared light is present at phototransistor 50.
If, at step 428, the microcontroller 80 determines that the mode is not "clear", the microcontroller 80, at step 434, determines whether the mode is "update". If so, the microcontroller 80 branches to step 436 of firmware process 400 where it receives the file names and an end of text byte communicated by the improved floppy disk drive 180, stores the received file names in the list of file names 210 using data structure 212, and updates the number of file names parameter 214 which is stored in data structure 212. Then, the microcontroller 80, under the direction of firmware process 400, loops back to step 416 as described above. If, at step 434, the microcontroller 80 determines that the mode is not "update", the microcontroller 80 determines, at step 438, whether the mode is "add". If so, the microcontroller 80 advances to step 440 where it receives a file name and an end of text byte. The microcontroller 80 stores the file name in data structure 212 and increments the number of file names parameter 214 before continuing execution at step 416 described above.
If, at step 438, the microcontroller 80 determines that the mode is not "add", the microcontroller 80 determines, at step 442, whether the mode is "delete". If so, the microcontroller 80 branches to step 444 where it receives a file name to delete and an end of text byte. The microcontroller 80 deletes the file name from data structure 212 and decrements the number of file names parameter 214 in data structure 212. The microcontroller 80 then continues execution of firmware process 400 at step 416 where it determines whether infrared light is impinging on phototransistor 50.
If, at step 442, the microcontroller 80 determines that the mode is not "delete", the mode has to be "rename" (i.e., by process of elimination) and the microcontroller 80 receives the file name of an existing file, a new file name to be substituted for the existing file name, and an end of text byte at step 446. Then, the microcontroller 80 substitutes the new file name for the existing file name in data structure 212 and loops back to step 416 described above.
According to the improved floppy disk firmware process 400, the microcontroller 80 instructs the display controller 84, at step 470, to turn-on and, hence, tums-on the display panel 40. Then, at step 472, the microcontroller 80 determines whether the scroll mode is set to "smooth". If so, the microcontroller 80 determines, at step 474, whether the up button 42 was pressed by a user. If the up button 42 was pressed, the microcontroller 80 decrements the file pointer 216 at step 476 (see also FIG. 10) to point to the previous file name of list 210 and then advances to step 486 described below. If the up button 42 was not pressed, then the down button 44 was pressed and the microcontroller 80 increments the file pointer 216 at step 478 (see also FIG. 11) to point to the next file name of list 210 before advancing to step 486 described below. If, at step
472, the microcontroller 80 determines that the scroll mode is not set to "smooth" (i.e., meaning that the scroll mode is set to "page"), the microcontroller 80 determines at step 480, whether the up button 42 was pressed by a user. If so, the microcontroller 80 subtracts four (or the maximum possible number up to four (i.e., since four is the number of lines of display panel 40 and, hence, the size in file names of a "page" of file names) as determined by the number of file names parameter 214 stored in data structure 212) from the file pointer 216 (see also FIG. 12) to cause the file pointer to point to the first file name of the previous page of file names before advancing to step 486 described below. If, at step 480, the microcontroller 80 determines that the up button 42 was not pressed by a user, then the down 44 was pressed and the microcontroller 80, at step 484, adds four (or the maximum possible number up to four as determined by the number of file names parameter 214 stored in data structure 212) to the file pointer 216 (see also FIG. 13) to cause the file pointer to point to the first file name of the next page of file names before continuing at step 486.
The microcontroller 80, knowing that the data structure 212 stores eleven characters per file name, utilizes the file pointer 216 to compute the current value of the display pointer 218 at step 486 as the product obtained by multiplying the file pointer 216 by four (i.e., the maximum number of lines displayable by display panel 40 according to the preferred embodiment). Continuing at step 488, the microcontroller 80 reads four file names from data structure 212 of memory device 82 starting at the byte identified by the display pointer 218 and communicates the file names to the display controller 84 for display on display panel 40. Note that a user's pressing of the up button 42, when the display panel 40 is being operated in "smooth" scroll mode, causes the display of a second plurality of file names (see FIG. 14) on display panel 40 which are different, by two file names (i.e., a different file name appears at the top of display panel 40 and the file name previously at the bottom of display panel 40 is no longer visible), from the first plurality of file names (see FIG. 1) displayed prior to pressing of the up button 42. Similarly, a user's pressing of the down button 44, when the display panel 40 is being operated in "smooth" scroll mode, causes the display of a second plurality of file names (see FIG. 15) on display panel 40 which are different, by two file names (i.e., the file name previously at the top of display panel 40 is no longer visible and a different file name appears at the bottom of display panel 40), from the first plurality of file names (see FIG. 1) displayed prior to pressing of the down button 44. Also, note that a user's pressing of the up button 42, when the display panel 40 is being operated in "page" scroll mode, causes the display of a second plurality of file names (see FIG. 16) on display panel 40 which are different (i.e., the file names of the second plurality of file names represent the page of file names in list 210 before the page of file names represented by the first plurality of file names) from the first plurality of file names (see FIG. 1) displayed prior to pressing of the up button 42. Similarly, a user's pressing of the down button 44, when the display panel 40 is being operated in "page" scroll mode, causes the display of a second plurality of file names (see FIG. 17) on display panel 40 which are different (i.e., the file names of the second plurality of file names represent the page of file names in list 210 after the page of file names represented by the first plurality of file names) from the first plurality of file names (see FIG. 1) displayed prior to pressing of the down button 44.
At step 490 of firmware process 400, the microcontroller 80 executes an instruction which starts a display timer operated by the microcontroller 80. Preferably, the display timer is set, upon start up of the microcontroller 80, to a value often seconds. If, before expiration of the display timer, a user fails to depress either of the up and down buttons 42, 44, the microcontroller 80 places the improved floppy disk 30 into power- down mode so as to conserve electrical power.
Continuing at step 492, the microcontroller determines if the up and down buttons 42, 44 were simultaneously depressed by a user to toggle the scroll mode between "smooth" mode and "page" mode. If so, the microcontroller 80 toggles the scroll mode at step 494. Thus, if the scroll mode was set to "smooth" prior to the simultaneous depressing of the up and down buttons 42, 44 by a user, then the microcontroller 80 sets the scroll mode to "page". Conversely, if the scroll mode was set to "page" prior to the simultaneous depressing of the up and down buttons 42, 44 by a user, the microcontroller 80 sets the scroll mode "smooth". Advancing to step 496, the microcontroller 80 determines whether the up button 42 or the down button 44 was pressed by a user. If so, the microcontroller 80 stops the display timer at step 498 and branches to step 472 described above. If not, the microcontroller 80 determines, at step 500, whether the display timer has expired (i.e., counted down to zero). If not, the microcontroller 80 branches back to step 492 described above. If the display timer has expired, the microcontroller 80 turns off the display controller 84 and display panel 40 at step 502. Then, at step 504, the microcontroller 80 executes an instruction which places the microcontroller 80 in power-down mode for subsequent awakening by an external interrupt received at step 410 described above.
DETAILED DESCRIPTION OF THE ALTERNATE EMBODIMENTS
In accordance with a first alternate embodiment of the present invention, an improved data storage/retrieval system 32' comprises an improved floppy disk 30' substantially similar, in stmcture and operation, to the improved floppy disk 30 of the preferred embodiment and comprises a file name communication utility program 600' which causes the communication of mode codes and file names to the improved floppy disk 30' (i.e., like the communication of mode codes and file names to the improved floppy disk 30 by the improved floppy disk drive 188 of the preferred embodiment) when the phototransistor 50' of the improved floppy disk 30' is appropriately aligned for a sufficient period of time with an infrared data communication port (for example, an IRDA-compliant data communication port) connected to and communicable with a computer. The file names stored by the memory device 82' of the improved floppy disk 30' are reviewable on display panel 40', like those file names stored by the memory device 82 of the improved floppy disk 30 of the preferred embodiment, at any time and at any place convenient to the disk's user. According to a second alternate embodiment of the present invention, an improved data storage/retrieval system 32" comprises an improved floppy disk 30", an improved floppy disk drive 188", and a floppy disk review device 700". The improved floppy disk drive 188" is substantially similar, in stmcture and operation, to the improved floppy disk drive 188 of the preferred embodiment. The improved floppy disk 30" is substantially similar, in stmcture and operation, to the improved floppy disk 30 of the preferred embodiment except that improved floppy disk 30" has no display panel and no display controller, but includes an infrared photodiode 702" which connects to the serial data output port, TXD, of microcontroller 80". The infrared photodiode 702" is mounted to the case 34" so as to enable the photodiode 700" to emit infrared light signals to the floppy disk review device 700". The floppy disk review device 700" resides, for instance, on a user's desktop and includes a phototransistor 704", a microcontroller 706", and a user interface 708" (including up and down buttons 710", 712", a display controller 714", and a display panel 716") which are arranged and interconnected in a substantially similar manner to the similar components of the improved floppy disk 30". In operation, a user utilizes the improved floppy disk 30" and improved floppy disk drive 188' like those of the preferred embodiment, with the exception that the improved floppy disk 30" cannot display the file names of files stored by the data storage media 58" of the improved floppy disk 30". Instead, when a user wishes to review the names of the files stored by the improved floppy disk 30", he/she inserts the disk 30" into a slot 718" of the floppy disk review device 700". Upon physically receiving the improved floppy disk 30", the review device 700" receives file names from the improved floppy disk 30", via photodiode 702" and phototransistor 704", and displays the file names on display panel 716". Should the user press the up or down buttons 710", 712" of the user interface 708", the review device 700" requests and receives, from the improved floppy disk 30", another set of file names to display on display panel 716".
According to a third alternate embodiment of the present invention, an improved data storage/retrieval system 32'" comprises an improved floppy disk drive 188"' and a caddy 800'" which receives a conventional floppy disk 802'". The improved floppy disk drive 188'" is substantially similar, in stmcture and operation, to the improved floppy disk drive 188 of the preferred embodiment. The caddy 800'" includes substantially the same electronic components as are present in the improved floppy disk 30 of the preferred embodiment. The electronic components of the caddy 800'" function similarly to those similar electronic components of the improved floppy disk 30 of the preferred embodiment. Therefore, the caddy 800'", containing a conventional floppy disk 802'", is inserted into the improved floppy disk drive 188*" and whenever file operations are performed on the floppy disk 802'", the list of file names 210"' stored in the memory device 82'" of the caddy 800'" is manipulated so that the names of the list 210'" always correspond to the names of the data files stored on floppy disk 802'". If the user desires to review the names of the data files stored on floppy disk 802'", the user removes the caddy"' (and, hence, the floppy disk 802'") from the improved floppy disk drive 188'" and uses the up and down buttons 42"', 44'" to control the display of the file names on display panel 40'".
It is understood that the scope of the present invention encompasses, in addition to floppy disks and floppy disk drives, other similarly modified and/or adapted types of data storage cartridges (for example, but not limitation, tape cartridges, optical disks, magneto/optical disks, ZIP disks, JAZZ disks, SyQuest disks, removable hard disks, etc.) and similarly modified and/or adapted data transfer devices which operate with the respective types of data storage cartridges.
Whereas this invention has been described in detail with particular reference to its preferred embodiment and alternate embodiments, it is understood that variations and modifications can be effected within the spirit and scope of the invention, as described herein before and as defined in the appended claims. The corresponding stmctures, materials, acts, and equivalents of all means and/or step plus function elements in the claims below are intended to include any stmcture, material, or acts for performing the functions in combination with other claimed elements as specifically claimed. We claim:

Claims

1. A data cartridge comprising: a media for storing data organized as a plurality of data files, each said data file of said plurality of data files having an identifier associated therewith; a case operatively housing said media; and, means for presenting said identifiers to a user of said data cartridge absent reading of said identifiers from said media, said means for presenting being housed at least partially by said case; whereby the identifiers are presentable to the user of the data cartridge at a site and time selectable by the user.
2. The data cartridge of Claim 1 wherein said data cartridge further comprises means other than said media for storing said identifiers associated with said plurality of data files, said means for storing being housed at least partially by said case, and wherein said means for storing said identifiers interfaces to said means for presenting.
3. The data cartridge of Claim 2 wherein said means for storing said identifiers comprises a data stmcture and said data cartridge further comprises means for maintaining said data stmcture.
4. The data cartridge of Claim 3 wherein said means for storing said identifiers comprises a memory device and said data stmcture resides within said memory device.
5. The data cartridge of Claim 3 wherein said means for maintaining comprises means for receiving said identifiers from a device external to said data cartridge.
6. The data cartridge of Claim 5 wherein said means for maintaining further comprises means for manipulating said data stmcture in response to a command received from a device external to said data cartridge.
7. The data cartridge of Claim 1 wherein said means for presenting comprises means for controlling presentation of said identifiers to a user.
8. The data cartridge of Claim 7 wherein said means for presenting comprises a display device and said means for controlling comprises a user interface.
9. The data cartridge of Claim 7 wherein said means for presenting comprises means for presenting a first plurality of said identifiers of said plurality of data files at a first time and said means for controlling comprises means for causing presentation by said means for presenting of a second plurality of said identifiers of said plurality of data files at a second time.
10. The data cartridge of Claim 9 wherein said second plurality of said identifiers of said plurality of data files includes at least one identifier different from any identifier of said first plurality of said identifiers of said plurality of data files.
11. The data cartridge of Claim 1 wherein said data cartridge further comprises means for conserving electrical power.
12. A system for storing data files on a media and for enabling identification of the data files absent reading of the media, said system comprising: a data cartridge for storing data organized as a plurality of data files and for storing a plurality of identifiers associated with said plurality of data files, each said data file of said plurality of data files having an identifier of said plurality of identifiers associated therewith, said data cartridge comprising a media, a case operatively housing said media, a memory held by said case, and a display held by said case and interactable with said memory; and, a device comprising means for causing said plurality of identifiers associated with said plurality of data files to be stored by said memory, said device being communicable with said data cartridge.
13. The system of Claim 12 wherein said means for causing comprises means for generating a command directing the storage by said memory of an identifier associated with a data file and means for transmitting said command to said data cartridge, and wherein said data cartridge further comprises means for receiving said command from said device and means for executing said command.
14. The system of Claim 13 wherein said means for generating creates an appropriate command upon detection of the performance of an operation on said media of said data cartridge.
15. The system of Claim 12 wherein said device further comprises means for communicating an identifier of said plurality of identifiers to said data cartridge.
16. The system of Claim 15 wherein said data cartridge further comprises a data communication interface, and wherein said means for communicating is communicable with said data communication interface of said data cartridge.
17. The system of Claim 16 wherein said means for communicating and said data communication interface of said data cartridge are communicable absent contact therebetween.
18. The system of Claim 12 wherein said device further comprises means for directing manipulation of said plurality of identifiers stored by said memory.
19. The system of Claim 18 wherein said means for directing comprises means for detecting an operation performed on a data file of said plurality of data files of said data cartridge and means for determining an appropriate manipulation of the identifier associated with said data file.
20. A method of enabling viewing of the names associated with data files on a data cartridge having a data storage media operatively housed in a case, a memory held by the case, and a display attached to the case and interactive with the memory, the method comprising the steps of: storing a plurality of data files and a name associated with each data file of the plurality of data files on the data storage media; storing the name associated with each data file of the plurality of data files in a list of names in the memory of the data cartridge; in response to user initiation, accessing from the list of names in the memory a name associated with a data file of the plurality of data files; and, after the step of accessing, displaying on the display of the data cartridge the name associated with the data file.
21. The method of Claim 20 wherein the method further comprises a step of storing a new data file and a name associated with the new data file on the data storage media, and further comprises a step of, upon storage of the new data file, adding the name associated with the new data file to the list of names in the memory.
22. The method of Claim 20 wherein the method further comprises a step of deleting a data file from the data storage media, and further comprises a step of, upon deletion of the data file, rendering non-displayable the name in the list of names in the memory associated with the deleted data file.
23. The method of Claim 20 wherein the method further comprises the steps of providing a data transfer device interactable with the data storage media and the memory; upon insertion of a data cartridge into the data transfer device different from a data cartridge previously residing in the data transfer device, identifying the name associated with each data file of the plurality of data files stored on the data storage media; and. communicating the name associated with each data file from the data transfer device to the memory of the data cartridge.
24. The method of Claim 23 wherein the method further comprises, after the step of communicating, a step of building the list of names in the memory including the name associated with each data file from the data cartridge.
25. The method of Claim 20 wherein the step of displaying comprises a step of displaying at a first time a first plurality of names from the list of names on the display, and the method further comprises a step of displaying at a second time a second plurality of names from the list of names on the display.
26. The method of Claim 20 wherein the method further comprises a step of, in response to user interaction with the data cartridge, awakening the display from a powered-down state.
PCT/US1998/012650 1997-06-18 1998-06-17 Floppy disk and system WO1998058378A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU79754/98A AU7975498A (en) 1997-06-18 1998-06-17 Floppy disk and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US87786997A 1997-06-18 1997-06-18
US08/877,869 1997-06-18

Publications (1)

Publication Number Publication Date
WO1998058378A1 true WO1998058378A1 (en) 1998-12-23

Family

ID=25370884

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/012650 WO1998058378A1 (en) 1997-06-18 1998-06-17 Floppy disk and system

Country Status (2)

Country Link
AU (1) AU7975498A (en)
WO (1) WO1998058378A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002063624A1 (en) * 2001-02-08 2002-08-15 Marcello Lolli System for identifying and authenticating a data recording support
CN101710491B (en) * 2009-05-06 2011-06-22 冯肖刚 Disc array system for long-term data storage
WO2015121181A1 (en) * 2014-02-13 2015-08-20 Aurel Schoeller Mobile data storage medium for storing electronic data

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5151687A (en) * 1990-07-16 1992-09-29 Younger George G Apparatus for logging electronic media-taped material
WO1993000680A1 (en) * 1991-06-21 1993-01-07 Siemens Nixdorf Informationssysteme Ag Device for making data describing and/or supplementing the content of the mass store of a machine-readable data substrate available
WO1993008571A1 (en) * 1991-10-26 1993-04-29 Deutsche Thomson-Brandt Gmbh Reader for the static memory of a cassette
WO1993010536A1 (en) * 1991-11-22 1993-05-27 Irving Tsai Tape recording method and apparatus
FR2694829A1 (en) * 1992-05-18 1994-02-18 Goreta Lucas Data storage appts. contents recording and display device - includes means to automatically record and display information such as contents relating to data storage device
EP0583904A2 (en) * 1992-08-14 1994-02-23 Sony Corporation Recording medium cartridge, a display apparatus and a recording/reproducing apparatus
DE4232868A1 (en) * 1992-09-30 1994-03-31 Thomson Brandt Gmbh Video recorder or player for cassette with solid-state memory - uses memory to store information relating to tape details that can be displayed on screen.
DE19627648A1 (en) * 1995-07-10 1997-01-16 Lg Electronics Inc Remote control with MIC memory reading function and method for displaying the MIC memory content
EP0760511A1 (en) * 1995-09-01 1997-03-05 Staar Societe Anonyme Device for consulting information in the memory of a cassette
US5634032A (en) * 1995-06-07 1997-05-27 Haddock; Fred T. Dynamic digital identification of storage media

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5151687A (en) * 1990-07-16 1992-09-29 Younger George G Apparatus for logging electronic media-taped material
WO1993000680A1 (en) * 1991-06-21 1993-01-07 Siemens Nixdorf Informationssysteme Ag Device for making data describing and/or supplementing the content of the mass store of a machine-readable data substrate available
WO1993008571A1 (en) * 1991-10-26 1993-04-29 Deutsche Thomson-Brandt Gmbh Reader for the static memory of a cassette
WO1993010536A1 (en) * 1991-11-22 1993-05-27 Irving Tsai Tape recording method and apparatus
FR2694829A1 (en) * 1992-05-18 1994-02-18 Goreta Lucas Data storage appts. contents recording and display device - includes means to automatically record and display information such as contents relating to data storage device
EP0583904A2 (en) * 1992-08-14 1994-02-23 Sony Corporation Recording medium cartridge, a display apparatus and a recording/reproducing apparatus
DE4232868A1 (en) * 1992-09-30 1994-03-31 Thomson Brandt Gmbh Video recorder or player for cassette with solid-state memory - uses memory to store information relating to tape details that can be displayed on screen.
US5634032A (en) * 1995-06-07 1997-05-27 Haddock; Fred T. Dynamic digital identification of storage media
DE19627648A1 (en) * 1995-07-10 1997-01-16 Lg Electronics Inc Remote control with MIC memory reading function and method for displaying the MIC memory content
EP0760511A1 (en) * 1995-09-01 1997-03-05 Staar Societe Anonyme Device for consulting information in the memory of a cassette

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002063624A1 (en) * 2001-02-08 2002-08-15 Marcello Lolli System for identifying and authenticating a data recording support
CN101710491B (en) * 2009-05-06 2011-06-22 冯肖刚 Disc array system for long-term data storage
WO2015121181A1 (en) * 2014-02-13 2015-08-20 Aurel Schoeller Mobile data storage medium for storing electronic data

Also Published As

Publication number Publication date
AU7975498A (en) 1999-01-04

Similar Documents

Publication Publication Date Title
US5717428A (en) Portable computer keyboard for use with a plurality of different host computers
EP2916196B1 (en) Control indicators for data processing systems
US5675364A (en) Display wakeup control
US6523073B1 (en) Handheld computer system and method to detect and identify a peripheral device
JP3434956B2 (en) PMS level display device using hardware cursor in portable computer and method therefor
US6018335A (en) Programmable keyboard and method therefor
CA2117065A1 (en) Portable computer keyboard
AU2002354603A1 (en) A control indication assembly
KR100342021B1 (en) Remote controlled computer system and method of operating the same
US5881300A (en) Method and system for saving power in a computer system having a communication device
KR20010086518A (en) An automatic security code verifying method of a computer system operated by a remote controller
WO1998058378A1 (en) Floppy disk and system
US20040200896A1 (en) Apparatus for storing and transferring personal data
CN100416510C (en) Host computer real-time monitoring apparatus and method
JP3348338B2 (en) Wireless input device
JP2776790B2 (en) Information processing device
CN218675742U (en) Self-maintaining circuit applied to portable fan
JPH113166A (en) Computer system and control method
EP0254156A2 (en) Computer input-output device
JPH117345A (en) Information equipment and power supply control method for the same equipment
KR20010025292A (en) Apparatus and method for restriction of using pc
CN114268251A (en) Direct current motor control and speed measuring system
JPH05341886A (en) Automatic power source disconnecting system
Balkan The HX-20
JPH03268984A (en) Printer

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM GW HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: CA

NENP Non-entry into the national phase

Ref country code: JP

Ref document number: 1999504769

Format of ref document f/p: F

122 Ep: pct application non-entry in european phase