throbber
United States Patent
`5,537,608
`{11} Patent Number:
`Beatty et al.
`(45) Date of Patent:
`Jul. 16, 1996
`
`
`119
`
`00000006080
`
`[54]
`
`[75]
`
`PERSONAL COMMUNICATOR APPARATUS
`
`Inventors: Brent A. Beatty, Boca Raton; Francis
`J. Canova, Jr., Boynton Beach;
`Charles S. Lanier, Delray Beach;
`Wayne P. Whitley, Boca Raton; Debra
`A. G. Johnson, Ft. Lauderdale, all of
`Fla.
`
`[73]
`
`Assignee:
`
`International Business Machines
`Corporation, Armonk, N.Y.
`
`[21]
`
`[22]
`
`[63]
`
`[51]
`[52]
`
`[58]
`
`[56]
`
`Appl. No.: 459,552
`
`Filed:
`
`Jun. 2, 1995
`
`Related U.S. Application Data
`
`Continuation of Ser. No. 976,127, Nov. 13, 1992, aban-
`doned.
`
`Fit, C18 oe sceesceessssssssccsseessccssonssnsssensenssennee G06F 13/00
`
`..
`. 395/800; 364/DIG. 1;
`US. Cl.
`364/232.91; 364/231.1; 364/243
`Field of Searchy ........cccsssesssssssseene.- 395/200, 800,
`395/650, 700, 375, 425; 379/59, 58, 98,
`57
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`
`
`5,189,593
`5,195,130
`5,201,067
`5,227,614
`5,249,218
`5,260,697
`5,347,632
`
`2/1993 OO vsasssesnsesescstseceveessntene 455/195.1
`serccssersstssssinisersee 379/98
`3/1993 Weiss et al.
`
`jecssssssasseecseaneie 455/89
`4/1993 Grube et al.
`
`7/1993 Danielsonetal. ...
`w=» 235/380
`
`9/1993 SaiMtOM ceocssenssoesssssecsenssnnsensie 379/59
`
`345/173
`11/1993 Barrett et al.
`9/1994. Filepp ct al. esssscsosssssseuseseee 395/200
`OTHER PUBLICATIONS
`
`9075 PCradio Hardware Interface Technical Reference,
`IBM, 1992 pp. 1—1 to 6-63.
`9075 PCradio Guide to Operations, IBM, 1992, pp. 1-1 to
`D-5.
`Danny Goodman, “The Hyber Card 2.2 Handbook”, Ran-
`dom House, Fourth Edition, No Date.
`Data sheet, VG-230 Single-Chip PC Platform VADEM,
`Sep. 1992,
`
`Primary Examiner—MehmetB. Geckil
`Attorney, Agent, or Firm—George E. Grosser; Andrew J.
`Dillon
`
`[57]
`
`ABSTRACT
`
`A personal communication apparatus includes a digital
`processor, a memory coupledto the processor, an operating
`system, stored in the memory and executable by the pro-
`cessor, a touch-screen user interface coupled to the proces-
`sor and the memory and responsiveto file execution com-
`mandsfrom the user, and a navigation utility file, executable
`by the processor, for initiating execution of files and for
`monitoring the sequence in whichfile executions occur. The
`Navigation utility maintains a stack in the memory into
`which the calling sequencesoffiles are stored according to
`the order in which files were executed. In one embodiment,
`the apparatus further comprises a modem and RF transceiver
`coupled to the processorfor receiving and transmitting data.
`In another embodiment, the communicatorfurther includes
`a port for receiving an external memory medium containing
`a plurality of executable files.
`
`4,481,382 11/1984 Villa-Real oceessseeeseene 179/2 EA
`4,825,448
`4/1989 Critchlow et al.
`....csscssssesessenes 375/8
`4,916,441
`4/1990 Gombrich.....
`235/380
`4,949,248
`8/1990 Caro et al
`395/725
`5,008,925
`4/1991 Pireh.........
`379/60
`5,008,927
`4/1991 Weiss et al.
`379/98
`5,020,093
`5/1991 Pireh.........
`379/59
`5,029,233
`7/1991 Metroka ....
`wee 455/11
`5,050,207
`9/1991 Hitchcock .
`wee 379/96
`wee 382/13
`5,063,600
`11/1991 Norwood......
`
`6/1992 Takahashi etal. .
`« 379/428
`5,127,050
`
`
`5,138,649 8/1992Krisberghetal.oo... 379/56
`
`Krisbergh etal. .....
`4 Claims, 10 Drawing Sheets
`
`12
`
`42
`
`
`
`APPLE 1010
`
`1
`
`APPLE 1010
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 1 of 10
`
`5,537,608
`
`FIG. 1
`
`
` 20
`34y Va
`We
`
`O OC
`50
`52
`54
`
`30
`
`26
`
`32
`
`16
`
`2
`
`

`

`5,537,608
`
`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 2 of 10
`
`FIG, 2
`
`3
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 3 of 10
`
`5,537,608
`
`FIG. 3A
`
`FIG. 3E
`
`PHONE
`
`CALCULATOR
`
`5551212
`
`3.05714
`
`BATTERY
`SIGNAL
`
`PHONE
`
`le}eeeeetete|[+delete
`
`ABC
`
`DEF
`
`GHI
`4
`
`JKL
`5
`
`PRS
`7
`
`TUV
`8
`
`WKY
`9
`
`nmr
`
`HELP ||PHONE||TOOLS|| BACK
`
`[ow
`
`4
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 4 of 10
`
`5,537,608
`
`FIG. 3B
`
`FIS. 3C
`
`
`
`
`4481879
`
`8820854
`
`CONOVA
`8828080
`
`BEATTY
`8825182
`
`DEUSER MAR
`
`
`
`
`
`ACCESS MAIL LISTS:
`
`0 INCOMING MESSAGES
`
`HM
`
`CREATE NEW MAIL
`
`CHECK POST OFFICE
`
`SEND OUTGOING MAIL
`
`RECEIVE INCOMING MAIL
`
`SEND AND RECEIVE MAIL
`
`CHANGE CONFIGURATION
`
`STATUS
`
`
`
`5
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 5 of 10
`
`5,537,608
`
`FIG. 3D
`
`CALENDAR
`
`OCTOBER19, 1992
`
`o
`
`5
`
`o
`
`6
`
`o
`
`7
`
`1
`
`8
`
`2
`
`9
`
`|
`
`3
`
`10
`
`f
`
`o
`
`4
`
`1:00PM - 3:00PM
`STATUS MTG,014/C914
`
`2:00PM WEEKLY TELECON
`W/ MAN @
`
`3:30PM MULT-IMAGE GROUP
`MEETING
`
`5:45PM SIGN OUTI!!
`
`1:00PM - 3:00PM
`STATUS MTG, 014/C914
`
`2:00PM WEEKLY TELECON
`WITH MAN @
`
`3:30PM MULTI-IMAGE GROUP
`MEETING
`
`5:45PM SIGN OUT!!!
`
`1:00PM - 3:00PM COMDEX
`
`A
`EDIT
`
`+
`ADD
`
`4
`UP
`
`v
`DOWN
`
`,
`=
`>1PTL Q Iw
`
`HELP||PHONE|} TOOLS||BACK
`
`6
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 6 of 10
`
`5,537,608
`
`PHONE1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`
`FIG. 4A
`
`PHONE 1
`PHONE 1
`
`PHONE3
`PHONE 2
`PHONE4
`PHONE1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`
`PHONE 4
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`
`FIG. 4B
`
`PHONE 1
`PHONE1
`
`PHONE 4
`PHONE 3
`PHONE 2
`PHONE4
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`
`FIG. 4C
`
`PHONE 2
`PHONE 4
`PHONE1
`PHONE1
`PHONE1
`PHONE1
`PHONE1
`PHONE1
`PHONE1
`
`PHONE1
`PHONE 1
`
`PHONE1
`PHONE4
`PHONE3
`PHONE 2
`PHONE 4
`PHONE 1
`PHONE1
`PHONE 1
`PHONE 1
`
`FIG. 4D
`
`FIG. 4E
`
`FIG. 4F
`
`7
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 7 of 10
`
`5,537,608
`
`PHONE4
`PHONE3
`PHONE2
`PHONE4
`PHONE1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`
`FIG. 5A
`
`PHONE 1
`PHONE2
`
`PHONE4
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE1
`PHONE 1
`PHONE4
`PHONE 3
`
`PHONE 3
`PHONE 2
`PHONE4
`PHONE 1
`PHONE1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 4
`
`PHONE 2
`PHONE 4
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE1
`PHONE 4
`
`PHONE 3
`PHONE4
`PHONE1
`
`FIG. 5B
`
`FIG. 5C
`
`PHONE1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 4
`PHONE3
`PHONE2
`
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 1
`PHONE 4
`PHONE 3
`PHONE 2
`PHONE 4
`
`FIG. 5D
`
`FIG. 5E
`
`FIG. 5F
`
`8
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 8 of 10
`
`5,537,608
`
`START
`
`INITIALIZE
`
`SPAWN TEMP
`
`SUSPEND
`NAVIGATOR
`
`EXECUTE
`SPAWNEDAPL
`
`110
`
`— _ th
`
`o~s ~~ fh
`
`116
`
`~~ = @
`
`ACCESS CODE
`
`~~ nro
`
`zoO
`
`~~ tonH
`
`~«<mn
`
`YES
`
`FIG. 6A
`
`134
`
`COPY CMD_LINE
`TO TEMP
`
`~-eh
`
`COPY STACK_TOP
`TO TEMP
`
`ROTATE STACK
`
`128
`
`130
`
`PUSH DOWN
`STACK
`
`COPY CMD_LINE
`TO TEMP
`
`132)
`
`COPY TEMP TO
`STACK_TOP
`
`9
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 9 of 10
`
`5,537,608
`
`(A)
`
`FIG. 6B
`
`SPAWNED APL
`EXECUTING
`
`[°°
`
`138
`
`LEAVE =?
`
`YES
`
`140
`
`142
`
`YES
`
`CODE = 1
`
`NO
`
`
`
`ACCESS CMDLINE
`ADDR
`
`144
`
`
`
` 146
`
`
`
`
`
`COPY NEXT
`CALLING SEQ.
`TO CMD_LINE
`
`
`
`154
`
`‘
`
`SUPPLY CODE
`TO NAVIGATOR
`
`©)
`
`10
`
`

`

`U.S. Patent
`
`Jul. 16, 1996
`
`Sheet 10 of 10
`
`5,537,608
`
`FIG. 7
`
`34
`
`74
`
`20
`
`PROCESSOR
`
`
`
`BATTERY|_ %
`
`Qo
`
`11
`
`

`

`5,537,608
`
`1
`PERSONAL COMMUNICATOR APPARATUS
`
`This is a continuation of application Ser. No. 07/976,127,
`filed Nov. 13, 1992, now abandoned.
`
`BACKGROUND OF THE INVENTION
`
`Cellular telephones have gained widespread popularity in
`recent years. These telephones allow users to communicate
`over a cellular network via a radio frequency (RF) trans-
`ceiver present within the telephone. Many cellular tele-
`phones contain digital microprocessors which control opera-
`tion of the RF transceiver and provide limited telephone-
`type functions to the user, such as autodialing and/or
`displaying stored telephone numbers. Such cellular tele-
`phones, however, lack the memory, display and user inter-
`face facilities necessary to execute many of the personal
`organizer applications found on personal computers.
`Morerecently, a lap-top computer which contains an RF
`transceiver as a means for data input/output has become
`commercially available. This product, the PC Radio, avail-
`able from International Business Machines Corporation,
`Boca Raton, Fla., provides the functionality of a personal
`computer with the capability of receiving and sending data
`over a cellular phone. However, a need still exists for a
`personal communication apparatus which can execute the
`personal organizer available on a personal computer, such as
`electronic mail, calculator, address book, and calendar, and
`which can further provide the functionality of a cellular
`telephone.
`A portable communication apparatus is proposed herein
`that integrates the functionality of a personal computer with
`the communication possibilities of a cellular telephone to
`provide an apparatus with sophisticated computing as well
`as communication functions.
`
`SUMMARY OF THE INVENTION
`
`The foregoing and other objects of the present invention
`are achieved with a personal communication apparatus
`comprising a digital processor, a memory coupled to the
`processor, an operating system program stored in the
`memory and executable by the processor, a touch-sensitive
`userinterface, coupled to the processor and the memory,and
`responsive to file execution commands from theuser, and, a
`navigation file executable by the processor, in tandem with
`an executable file, initiates execution of files and monitors
`the sequence in which file executions occur.
`In one embodiment, the user interface facility comprises
`aliquid crystal display in combination with a touch-sensitive
`overlay to provide a touch-sensitive virtual user interface. In
`another embodiment, the apparatus further comprises an RF
`transceiver to allow for communication via a cellular net-
`work with other communication systems.
`The invention will be more fully understood from the
`detailed descriptionsset forth below which should be read in
`conjunction with the accompanying drawings. The invention
`is defined in the claims appended atthe end ofthe detailed
`description, which is offered by way of example only.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`In the drawings:
`FIG. 1 is a schematic block diagram of a personal
`communication apparatus in accordance with the present
`invention;
`
`20
`
`25
`
`30
`
`35
`
`40
`
`55
`
`60
`
`65
`
`12
`
`2
`FIG.2 is a front plan view of the personal communication
`apparatus of FIG. 1;
`FIGS. 3A-Eillustrate various virtual user interfaces in
`accordance with exemplary applications executable on the
`personal communication apparatus of FIG. 1;
`FIGS. 4A-F and 5A-F are conceptual representations of
`the memory stack maintained by the navigation file utility
`during execution of a sequenceoffiles;
`FIG.6A illustrates the algorithmic steps executed by the
`navigation utility in accordance with present invention; and
`FIG. 6B illustrates the algorithmic steps executed by an
`application in accordance with present invention;
`FIG. 7 is a schematic representation of an early warning
`circuit implemented within the personal communication
`apparatus of FIG. 1.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`In the various Figures, the same designations are used for
`similar elements. Referring to the drawings, and, in particu-
`lar to FIG. 1 thereof, a schematic block diagram of a
`personal communicator 10, according to an illustrative
`embodiment of the present invention is shown. Communi-
`cator 10 comprises, in a simple embodiment, a transceiver
`12, modem 14, and central controller 16 in conjunction with
`other elements, as described hereinafter in greater detail.
`Transceiver 12 comprises RF logic 42, audio logic 44,
`powerlogic 46 andcontrol logic 48. RF logic 42 containsthe
`elements for the transmission and reception of radio fre-
`quency signals. Audio logic 44 contains the elements nec-
`essary for the generation and reception of audio signals such
`as amplifiers, digital-to-analog converters, etc. Power logic
`46 interfaces with main battery 34,as indicated, and supplies
`power to the elements of transceiver 12. Control logic 48
`supplies control signals to RF logic 42, audio logic 44 and
`powerlogic 46 to control their respective functions within
`transceiver 12. The construction and function of transceiver
`12 is within the scope of those reasonably skilled in the art.
`A transceiver 12, suitable for use in the present invention is
`commercially
`available
`from Motorola Corporation,
`Schlumberg,Ill., and is similar to that used in the Digital
`Personal Communicator Telephone from Motorola. A
`speaker 52 and microphone 54 are coupledto audio logic 44
`to allow audio data to be received and transmitted, respec-
`tively by the user. In addition, a ringer 50, is coupled to
`audio logic 44 to alert the user of an incoming call. The
`construction and function of ringer 50, speaker 52 and
`microphone 54, as well as their interconnections and con-
`nections with audio logic 44 are likewise within a scope of
`one reasonable skilled in the arts. Transceiver 12 is coupled
`to central controller 16 by modem 14.
`Modem 14 comprises a modem controller 36 and a
`modem digital signal processor (DSP) 38. In theillustrative
`embodiment, modem controller 36 and modem DSP 38
`coactto provide a command driven modem with 2400 baud
`full duplex data transfer capabilities. The construction and
`function of modem controller 36 and modem DSP 38, as
`well as their interconnection, are within a scope of those
`reasonably skilled in the arts. The construction and operation
`of controller 36 and modem DSP 38 and the functionality
`provided by these devices are well-known and are found in
`a number of commercially available chip sets for providing
`modem capabilities to computer systems. Examples of such
`chip sets which are suitable for use in the present invention
`are Data/Fax/Voice Modem Device Sets Model Nos.
`
`12
`
`

`

`5,537,608
`
`20
`
`25
`
`3
`CL-MD9624ECT and CL-MD9624AT/EC2 commercially
`available from Cirrus Logic,
`Inc., 3100 West Warren
`Avenue, Fremont, Calif. 94538. Modem 14 interacts with
`transceiver 12 via a number of audio, control and power
`signals collectively illustrated in FIG. 1 as bus 15. An
`external connector 40, such as an 8-Pin connector, is coupled
`to modem 14,asillustrated,to allow for coupling modem 14
`to external devices, such as another modem, a computer,etc.
`Modem 14 is coupled to central controller 16 via a number
`of power, control and audio signal lines collectively illus-
`trated in FIG. 1 as bus 25.
`
`4
`navigation utility for moving between applications, is set
`forth below in detail. Processor 20 of central controller 16 is
`based on the architecture of the Intel 8086 processor. An
`operating system, stored either in ROM 29 or on processor
`20 is executed by the processor 20. In the illustrative
`embodiment, the IBM-PC DOS Operating System is uti-
`lized, however, other compatible operating systems may be
`used. A plurality of applications or executable files are stored
`in PCMCIAcard 28. Uponinsertion of card 28 into port 31
`processor 20 can access these stored applications.
`In the contemplated invention, each application stored in
`card 28 is directed to different functionality and, upon
`Central controllcr 16 comprises microprocessor 20, power
`execution, generates a different graphical user interface, as
`controllogic 18, backlightcircuitry 22, liquid crystal display
`illustrated in FIGS. 3A-E.FIG.3A illustrates the graphical
`(LCD) 24, and touch overlay 26. Backlight circuitry 22,
`user interface generated upon execution of a phone emula-
`LCD 24 and touch overlay 26 collectively define user
`tion application by controller 16. The 12-digit keyboard is
`interface 35 on which virtual keyboard configuration may be
`displayed graphically on interface 35. When the user touches
`displayed, as explained hereinafter. Central controller 16
`overlay 26 abovethe desired key, the processor 20 registers
`further comprises a RAM memory 27 and a ROM memory
`the selected digit and displays it accordingly. FIG. 3B
`29 coupled to processor 20. Main battery 34 and backup
`illusirates the graphical user interface generated by execu-
`battery 30 are coupled to power control logic 18, as illus-
`tion of an electronic mail application by controller 16. Here,
`trated. Backup battery 30 maintains all volatile memory
`the user may use the touch-screen capability to select any of
`upon removal of main battery 34. In addition, a number of
`the displayed options. FIG. 3Cillustrates the graphical user
`pushbuttons 32, such as power, and volume/contrast controls
`interface created by execution of an address book simulation
`are coupled to controller 16.
`application. FIG. 3D illustrates the graphical user interface
`Processor 20, in the illustrative embodiment, embodies
`generated by execution of a calendar application. FIG. 3E
`the complete architecture of an IBM PC/XT computer on a
`illustrates the graphical user interface generated by execu-
`single chip. Processor 20 includes a CGA LCDinterface
`tion of a calculator application. From FIGS. 3A—Eit can be
`through which it communicates with LCD 24, and a matrix
`appreciated that
`the graphical user
`interfacc changes
`interface through whichit communicates with touch overlay
`depending on the application currently selected and execut-
`26 in a manner similar to a conventional alpha-numeric
`ing. The screens, keyboards and keypadsillustrated in FIG.
`keyboard. Processor 20 communicates with modem control-
`3A-Eare virtual and can be programmedin the application
`ler 36 througha serial interface, and further communicates
`itself to have numerousconfigurations, increasing flexibility
`with powercontrol logic 18 through a numberof signals
`in the graphical user interface. Each of the graphical user
`which supply power to the processor and furtheralert the
`interfaces generated by the exemplary applications includes
`processor of low powerin the battery. A processor suitable
`four option keysat the bottom of interface 35. These option
`for use in the present invention as processor 20 is commer-
`keys are entitled “HELP”, “PHONE”, “TOOLS”, AND
`cially available from Vadem, Inc., San Jose, Calif.; Model
`“BACK.”Byselecting any one of these four keys alone or
`No. VG230.
`in combination with other virtual keys, the user may select
`Controller 16 does not contain a disk drive but instead
`an application for execution different from the currently
`includes a Personal Computer Memory Card International
`executing application. To allow users to move quickly and
`Association (PCMCIA) option port 31 for receiving an
`easily from one application to another without having to
`optional card 28. Card 28 is designed to interface with port
`retum to a main menu,a special utility application, herein-
`31 according to the PCMCIA standard. In theillustrative
`after referred to as the Navigator, executes in tandem with
`45
`embodimentcard 28 is a memory card containingaplurality
`the selected application as described hereafter.
`of addressable, executable files. Processor 20 interfaces with
`The Navigator is a utility application which allows the
`Port 31 through a numberof buffers uponinsertion into port
`user to move quickly and easily from one application to
`31. Processor 20 controls powerto the card.
`another. The history of file selections made by the user is
`FIG. 2 illustrates the front exterior of personal commu-
`stored in memory in a queueorinternal stack maintained by
`nicator 10. A housing 56 encases the elements of personal
`the Navigator. The basic function of the Navigatoris to start
`communicator 10. The front of housing 56 contains aper-
`execution of the next queued application, a process herein-
`turcs in the upper and lower portions thereof for access to
`after referred to as “spawning”. Nol counting the operating
`speaker 52 and microphone 54,respectfully. User interface
`system, there are only two applications residing in processor
`35 extends through the housing 56 so that touch overlay 26
`20 at any time, the Navigator utility and a spawned program.
`is exposed and accessible to the user. A retractable antenna
`The Navigator and spawned program application cxecutein
`tandem.
`58 protrudes from the upper portion of the housing to
`facilitate reception of radio frequency signals. Not shown in
`FIG. 2 are pushbuttons 32, a slot for reception of PCMCIA
`Card 28 external connector 40, and a cavity in the rear of
`housing 56 into which main battery 34 is insertable. As
`described above, personal communicator 10 integrates the
`architecture of a complete personal computer with a modem
`and an RF transceiver into a portable, lightweight package
`whichfits in the user’s hand or pocket.
`Having described the physical architeclure of communi-
`cator 10, a description of some exemplary applications and
`their respective graphical user interfaces, as well as a
`
`The Navigator maintains an internal memory stack which
`scrves as a queue. The order of entries in the queue corre-
`spond to the order in which applications are cxccuted. Each
`entry in the queue represents the calling sequence for an
`application. The calling sequence of an application com-
`prises the nameofthe executable file, the access path, and
`a number of parameters being passed to that file from
`another application. These parameters are passed from the
`currently executing application to the next selected applica-
`tion. For example, if the currently executing job is an
`address book-type application, such application can call a
`
`35
`
`60
`
`65
`
`13
`
`13
`
`

`

`5,537,608
`
`6
`an ASCTI characterstring representing the calling sequence
`of an application to be executed. CMD_LINE_ADDR
`represents the address of the CMD_LINE variable -in
`memory. NAVSTAKrepresents a location within the DOS
`environment where an application can find the value of
`CMD_LINE_ADDR. CODE is a value returned from a
`currently executing application to the Navigator application,
`as defined hereinafter.
`
`Referring now to FIG. 6A, upon power up of communi-
`cator 10, the Navigator goes through a numberof initial-
`ization steps, indicated by procedural block 110. These steps
`include initializing all entries of STACKto a default calling
`sequence, and placing the same default calling sequence in
`the TEMPvariable. The CMD_LINE variable is defined
`and the address of CMD_LINE, CMD_LINE_ADDR,is
`written to the DOS environment, i.c. NAVSTACK.Next, the
`Navigator executes or spawns the calling sequence of the
`application present in the TEMP variable, as indicated by
`procedural block 112. At this point, execution of Navigator
`suspends, as indicated by block 114. Next, the spawned
`application executes creating a graphical user interface and
`providing functionality to the user, as previously defined.
`Execution of the spawned application is indicated by block
`116 andis defined in greater detail in the flow chart of FIG.
`6B.
`
`5
`telephone-type application and passto it, as a parameter, the
`character string representing the phone number selected
`during execution of the address book application. The Navi-
`gator sets no limits to the number of parameters that can be
`associated with the calling sequence of an application.
`However, the content and format of the calling sequence
`must be understood by the operating system.
`As described previously, the option keys present at the
`bottom of each virtual screen display, provide the user with
`a means for moving quickly between frequently used appli-
`cations. Each of the option keys, except Back, will cause a
`specific calling sequence to be initiated, causing the asso-
`ciated application to be executed. The Back option key
`causes the most recently executed application to be executed
`as explained below.
`To conceptually illustrate the managementof the internal
`stack by the Navigator, an example is provided wherein a
`number of generic applicationsor files entitled Phone 1-4
`are selected in the sequence indicated in FIGS. 4A—F and
`5A~F. Upon initialization, the internal stack, indicated gen-
`erally by reference numeral 60, contains default calling
`sequences, here indicated by Phone 1 in each stack entry.
`From the graphical user interface of Phone 1 if the user
`selects the Phone 4 application, the calling sequence for
`Phone 4 is added to the top entry of stack 60, as indicated
`in FIG. 4B. From the graphical user interface of Phone 4,if
`Referring to FIG. 6B, the algorithmic steps executed by
`the user selects the Phone2 application,the calling sequence
`the currently spawned application are illustrated. The
`of Phone 2 is addedto the top entry of the stack as indicated
`spawnedapplication providing functionality and a graphical
`in FIG. 4C. In a similar manner,if the user then selects, in
`user interface to the user, as indicated in procedural block
`sequence, applications Phone 3, Phone 4 and Phone1, stack
`136. If the user has not selected one of the option keys,
`60 will assume the configurations illustrated in FIG. 4D, 4E
`execution of the spawned application continues,as indicated
`and 4F respectively. It can be seen that with each new
`by the NO branch of decisional step 138. If the user has
`application selected by the user, the calling sequencefor that
`selected one of the option keys, as indicated by the YES
`application is placed on the top entry of stack 60. Next, if,
`branch of decisional block 138, a determination is made as
`from the currently executing application, Phone 1, the user
`to which option key has been selected, as indicated in
`decisional block 140. If the user has selected the BACK
`decidesto select the previous application, by selection of the
`BACKoption key, the calling sequence of Phone 1 will be
`option key, the spawned program sets the CODE variable
`popped from the top entry of stack 60 and placed at the
`equal to “1”, as indicated by procedural block 142. If the
`bottom entry thereof, as indicated in FIG. 5A. Thecalling
`user selects other than the BACK option key, a new appli-
`sequence for Phone 4 is now at the top entry of stack 60.
`cation is to be selected, and the calling sequencethereofis
`Similarly, if the user selects the Back option key again, the
`to be written to the STACK_TOP. The currently executing
`calling sequence of Phone 4 will be placed at the bottom
`application retrieves CMD_LINE_ADDRvariable from
`entry of stack 60 and the calling sequence for Phone 3 will
`the operating system environment, as indicated by block
`be present at the top entry of stack 60, as indicated in FIG.
`144, Next, a copy of the calling sequence for the next
`SB.If, in a similar manner, using the BACK option key, the
`selected application is written into the CMD__LINE vari-
`user sequentially moves backward through the calling
`able, as indicated by block 146. Next, the currently spawned
`sequence, selecting applications Phone 2, Phone 4, and
`application determines if the calling sequence of the next
`Phone 1, the internal stack 60 will assumethe configurations
`selected application should be written to STACK__TOP, as
`illustrated in FIGS. 5C, 5D and SE, respectively. In each
`indicated in decisional block 148.If so, the currently execut-
`instance of sclecting the BACKkey, the calling sequenceat
`ing application then sets the CODE variable equal to “2”, as
`the top of the stack is placed at the bottom of the stack and
`indicated by block 150. In the event that the next selected
`application should not be written to STACK_TOP,
`the
`the next entry moved to the top entry of stack 60. FIG. 5F
`illustrates the configuration of stack 60 after the scenario in
`spawned program sets the code variable to “3”, as indicated
`which the user has selected new files Phone 4, Phone 2,
`in block 152. The determination of whether or not the newly
`55
`selected application should be written to STACK_TOP is
`Phone 3, Phone 4 and Phone 1 and then, using the BACK
`key, back tracks and reexecuted these files in reverse order.
`programmed into the code of the actual application by the
`designer. Accordingly, all spawned applicationspriorto their
`The specific algorithmic steps execuled by the Navigator
`termination will set the value of the CODEvariable appro-
`as well asits interaction with a selected application will be
`described hereafter with reference to FIGS. 6A and B. To
`priately. The spawned application will then terminate, leav-
`ing the CODE variable in an address accessible by the
`assist in the explanation ofthe algorithmic steps executed by
`Navigatorutility, as indicated in step 154.
`the Navigator application, several variables are defined.
`STACKis a memory area, suchasthat illustrated by item 60
`The spawned application having terminated, the Naviga-
`tor program accesses the value of CODEvariable, as indi-
`in FIGS. 4-5. The STACK may be implemented in software
`in a manner within the scope of one skilled in the arts.
`cated by block 118 in FIG. 6A.If the value of codeis equal
`STACK._TOP represents
`the
`top entry of STACK.
`to “1”, as determinedin decisional block 120, the Navigator
`STACKBOTTOM represents the bottom entry of the
`rotates the STACK, as indicated by procedural block 122.
`STACK. TEMP and CMD__LINE are variables which hold
`Rotation of the STACK occurs by setting the current value
`
`20
`
`25
`
`35
`
`40
`
`45
`
`50
`
`60
`
`14
`
`14
`
`

`

`5,537,608
`
`8
`processor 20 will execute a shutdownalgorithm in which the
`PC counter, working registers, etc., are stored in an orderly
`manner in anticipation of powerloss. Simultaneously ,upon
`removal ofthe battery or loss of power, capacitor C1 and C2
`discharge, with the time for discharge defining the window
`in which processor 20 can perform an ordcrly shutdown
`routine. The volatile memory in communicator 10 is main-
`tained by backup battery 30 as indicated.
`Upon inserting a new battery into communicator 10,
`processor 20, will be able to resume execution at the point
`in which power was lost. As such, circuit 70 provides an
`early warning to processor 20 which enables the processor
`to perform an orderly shutdown and resume once poweris
`restored.
`
`7
`of STACK_TOP to a temporary variable, and shifting
`content of each of the STACK locations to the next higher
`STACKlocation. The value of STACK_BOTTOMis then
`set to the value of STACK_TOP in a manner within the
`scope of those reasonably skilled in the art. Next,
`the
`Navigator copies the value from STACK_TOP to the TEMP
`variable, as indicated in procedural block 124. The TEMP
`variable containsthe calling sequenceofthe next application
`to be spawned, which in this instance, is the previously
`executed application since the user selected the BACK
`option key.
`If the value of the CODEvariable cquals “2”, indicating
`anew application which should be written to STACK__TOP,
`the Stack is pushed down, as indicated by procedural block
`128. In pushing down the STACK, each STACKlocation is
`written to the next lower STACKlocation, with the content
`of the lowest Stack location disappearing. Next, the contents
`of the CMD_LINE variable are copied to the TEMPvari-
`able, as indicated by procedural block 130. The contents of
`the TEMPvariable are then copied to the Stack_Top vari-
`able, as indicated by procedural block 132. In this manner,
`procedural steps 128-132 ensurethat the calling sequence of
`the next application to be spawnedis recorded in the STACK
`for later retrieval.
`
`me 5
`
`It can be appreciated from the foregoing that the present
`invention provides a personal communicator which inte-
`grates the functionality of the personal computer with that of
`a cellular telephone and provides the user with a virtual
`graphical interface which can be reconfigured according to
`the application currently executing. Furthermore, the Navi-
`gator program provides a means for the user to move from
`one application to the other quickly and conveniently.
`Accordingly, it will be appreciated that the detailed dis-
`closure has been presented by way of example only andis
`indicating that the
`If the CODE variable equals “3”,
`not intended to be limiting. Various alterations, modifica-
`calling sequence of the next application to be spawned
`tions and improvements will readily occur to those skilled in
`should not be recorded in the STACK,the content of the
`the art, and may be practiced without departing from the
`CMD_LINE variable is copicd to the TEMPvariable, as
`spirit and scope of the invention. The invention is limited
`indicated in procedural block 134. However, the value of
`only as required by the following claims and equivalents
`TEMPis not subsequently copied to the STACK_TOP
`thercto.
`variable,
`therefore,
`the occurrence of the next spawned
`Whatis claimed is:
`application will not be recorded into the sequence offile
`1. A hand-held personal communication apparatus com-
`executions maintained by the Navigator. Next, returning to
`prising:
`the top of the flow diagram,
`the Navigator spawns the
`a radio frequency transceiver;
`application whose calling string can be found in the TEMP
`variable, as indicated in procedural block 112.
`audio logic circuitry coupled to said radio frequency
`transceiver to permit audio data to be received and
`As can be appreciated, the Navigator utility executes in a
`transmitted by a user;
`continuous loop and suspends execution only once another
`a digital processor;
`application has been spawned. Upon termination of the
`spawned application, the Navigator determines the calling
`a modem coupledto said digital processor and said radio
`sequenceof the next application to be spawned and modifies
`frequency transceiver to permit digital data to be
`the STACKas necessary.
`received and transmitted by a user;
`In the contemplated invention, even after loss of power by
`a memory coupled to said digital processor for storing a
`personal communicator 10,
`the Navigator will continue
`plurality o

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket