`Crump et al.
`
`IIII
`USOO5752044A
`11
`Patent Number:
`5,752,044
`45) Date of Patent:
`May 12, 1998
`
`is a r. Yg
`
`Wa .
`
`4/1994 Pham et al. .
`5,300.83
`54 COMPUTER SYSTEM HAVING MULTI-
`5,355.50 10/1994 Gross et al.,
`LEVEL SUSPEND TIMERS TO SUSPEND
`22 1. t 3. s
`FROM OPERATION NATTENDED AND
`5,410,713 4/1995 White et al. .
`UNATTENDED MODES
`5,504,907 4/1996 Stewart et al. .......................... 395/750
`75 Inventors: Dwayne Thomas Crump. Apex:
`FOREIGN PATENT DOCUMENTS
`Duane Edward Norris; Steven Taylor
`Pancoast, both of Raleigh, all of N.C.
`O 518 622 A1 12/1992 European Pat. Off. .
`59-77531 4/1984 Japan.
`73 Assignee: International Business Machines
`Primary Examiner-Jack B. Harvey
`Corporation, Armonk, N.Y.
`Assistant Examiner-Jeffrey K. Seto
`Attorney, Agent, or Firm-Calfee, Halter & Griswold LLP
`(21) Appl. No.: 477,857
`(57)
`ABSTRACT
`22 Filed:
`Jun. 7, 1995
`(51) Int. Cl. .................................. G06F1/32 A computer system having suspend and resume capabilities
`52 U.S. Cl. ...........
`395/750, 395/838
`using multiple suspend timers. The multiple suspend timers
`(58) Field of Search ...................................... 395/750, 838
`execute such that the computer system suspends after a
`longer period of time of user inactivity when the system is
`(56)
`References Cited
`powered up in an attended mode and suspends after a shorter
`ATENT
`MENT
`period of time of inactivity when the system is powered up
`U.S. P.
`DOCU
`in an unattended mode. If the system awakens in an unat
`S
`4,851,987 7/1989 Day.
`tended mode and user activity is subsequently detected, the
`5,008,829 4/1991 Cox et al. .
`system changes to suspend after the longer period of time of
`5,021,983
`6/1991 Nguyen et al. .
`user inactivity. The multiple timers are implemented either
`5,142,684 8/1992 Perry et al..
`by a single timer restarted to two different values or by two
`5,167,024 11/1992 Smith.
`independent ti
`having diff
`t
`irati
`al
`5,193,176 3/1993 Brandin.
`pendent timers having aunterent expiration values.
`5,218,704
`6/1993 Watts, Jr. et al. .
`5,283,819 2/1994 Glicket al. .
`
`27 Claims, 57 Drawing Sheets
`
`55
`
`User Presses
`Power Button
`WHILE Suspend
`is Disobed
`User Presses
`Power Button
`OR External Event
`(Ring. Alarm, etc. )
`
`Nis
`
`
`
`50
`
`Inactivity
`Standby
`Time-out
`
`
`
`166 -
`ETHER Ir, at vity
`Suspend Time-out,
`OR User Presses
`Power Button WHILE
`Suspend is Enabled
`
`User Activity
`(Includes User
`Pressing the
`Power Button
`
`Sis.
`
`
`
`
`
`52
`
`User Presses
`Power Button
`OR Externo Evert
`(Ring. A lar P. etc.)
`
`
`
`se
`70 -
`inactivity
`Suspend
`Tirse-out
`
`IPR2020-01218
`Sony EX1024 Page 1
`
`
`
`US. Patent
`
`May 12, 1998
`
`Sheet 1 of 57
`
`5,752,044
`
`
`
`
`
`
`
`|PR2020-01218
`
`Sony EX1024 Page 2
`
`IPR2020-01218
`Sony EX1024 Page 2
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`2 of 57
`Sheet
`
`5,752,044
`
`
`
`IPR2020-01218
`Sony EX1024 Page 3
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 3 of 57
`
`5,752,044
`
`O N 40
`
`
`
`
`
`4.
`
`Micro
`Processor
`
`Moth
`Coprocessor
`
`4.
`4.
`
`1
`
`Video
`Controller
`56
`
`60
`
`MOn it or
`
`58
`WideO
`Memory
`
`otch/Buffer
`With
`Decoder
`
`90
`
`80
`
`g
`(d
`.
`
`Se
`
`i a.
`
`i
`
`54 53
`
`DRAM SIP
`DRAM SIP
`
`
`
`-
`543
`
`
`
`
`
`50
`
`
`
`48
`
`-
`
`Address
`MUX
`
`
`
`Doto
`Buffer
`
`62
`
`Coche
`Controller
`
`64
`
`70
`
`Controller
`
`72
`
`-7
`DMA
`
`crite
`Centrol is .
`
`82
`
`74
`
`FIG 3A
`
`IPR2020-01218
`Sony EX1024 Page 4
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 4 of 57
`
`5,752,044
`
`Elfor
`D Modern
`Op to isolator
`
`
`
`
`
`
`
`Power good
`RS-232 Ring Signal
`
`Power
`Management
`Circuit
`
`To Typical -
`Telephone
`Out et
`
`
`
`
`
`To Typical ACN
`Wol Outlet G.
`
`7
`Power
`Supply
`
`
`
`..I.
`
`Externo
`Modem
`
`Transformer
`
`RS-232 Doto and Control
`
`
`
`
`
`92
`
`In terrupt
`Controllers
`
`-9
`RS-232
`UART5
`
`
`
`ad o 90
`2
`
`
`
`8277
`Diskette
`5 Adopter
`H
`s
`
`
`
`IOE Disk
`Control er
`A.
`
`86
`
`CMOS
`Clock
`98
`
`Clock
`Synth.
`
`906
`
`Parallet
`Adapter
`OO
`
`102
`
`i
`
`FIG 3B
`
`IPR2020-01218
`Sony EX1024 Page 5
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 5 of 57
`
`5,752,044
`
`156
`
`FIG 4
`
`
`
`User Presses
`Power Button
`WHILE Suspend
`is Disobed
`User Presses
`Power Button
`OR Externat Event
`(Ring, Alarm, etc. )
`
`
`
`
`
`
`
`Operating
`Stote
`
`Inactivity
`Standby
`Time-out
`
`EITHER Inactivity,
`Suspend Time-out,
`OR User Presses
`Power Button WHILE
`Suspend is Enabled
`
`
`
`User Activity
`(Includes User
`Pressing the
`Power Button)
`
`
`
`User Presses
`Power Butt On
`OR Externo. Event
`(Ring. A torm, etc.)
`
`170 -
`Inactivity
`Suspend
`Time-out
`
`
`
`-/
`154
`
`52
`
`
`
`
`
`
`
`
`
`
`
`IPR2020-01218
`Sony EX1024 Page 6
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 6 of 57
`
`5,752,044
`
`L l
`
`01
`
`u I - BU | T 0W
`
`EL !
`
`G (9 I J
`
`40H
`
`# [ ]
`
`| IN[]
`
`
`
`
`
`Álddns JæMOJ
`
`
`
`0005NEMOJ JUUU|d 0 ]
`
`IPR2020-01218
`Sony EX1024 Page 7
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 7 of 57
`
`5,752,044
`
`FIG 6A1
`
`lo
`
`O
`.
`d
`H
`
`ic
`S
`
`RWDO
`NC
`NC
`OSTROBE if
`RESET
`
`ACTIVITY fit
`
`
`
`2O-WCC
`IO
`I/OO
`I8
`13
`I/O
`2 I
`32 I/02 14
`4 13
`AO3 15
`4
`I/O4 16
`6 I5
`I/O5 17
`7 16
`I/06
`8 7
`AO7 19
`1
`I9
`
`
`
`PAL 6V8
`2O-PIN PLCC
`
`
`
`Iowit
`A(O)
`PROCRDY
`
`SO(4)
`RST DRV
`IRQ
`IRQ1 2
`
`SO(O)
`
`- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
`
`WBAT
`
`AUX5
`
`AUX5
`T Cl
`10 LF
`NODE Na
`R4
`82K
`
`R16
`OK
`
`R17
`100K
`Q2
`(s
`V
`
`-NOOE 2
`Q3
`(R
`
`R18
`4.7K
`
`f
`- AL
`
`IPR2020-01218
`Sony EX1024 Page 8
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 8 of 57
`
`5,752,044
`
`N4148
`--
`g
`CR3
`
`-w
`
`R3
`50
`
`R
`470K
`
`
`
`Rs
`470K
`
`f
`
`A
`
`
`
`s
`
`1N448
`--
`VBAT *k
`CR
`RING IN FROCOM
`(PIN 9 FROM O-SHELL)
`N-1-
`
`N448
`*
`CR6
`
`RO
`22OK
`
`R
`BOK
`
`
`
`J5
`Lo
`(O
`.
`s
`H
`C
`
`c:
`S
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`U2
`2-GN
`24- AUX5
`PO
`Pll
`P2
`Pl3
`Pl - 4
`-
`PS/INTO P3O 5
`P1.6/INT1 P3. 1
`4
`Pll 7/TO
`3
`2
`
`
`
`SWITCH
`P0.0, 8
`EXTRING
`PO. l
`l
`P0.26 EXT-AKEUP#
`
`ON
`PWR-6000
`SMI OUT if
`CLKSLOW if
`DISPBLANK
`RSTCNTRL
`LEDCNTRL
`NC
`
`RST75
`
`OSC
`
`9 RST
`
`
`
`10X2
`X
`
`0SC2
`
`23
`22
`6
`P37 21
`
`i2
`o
`( )
`
`o
`m.
`( )
`
`c
`c
`
`i
`
`Y1
`6MHz
`
`87C750
`24-PIN DIP
`AUX5
`AUX5
`T
`C3 Tuf R3
`C2
`T 22pf T 22pf
`L
`820
`s
`s
`
`N4148
`--
`D
`CR4
`
`R2
`R2
`N448 f 560 f 330
`--
`C
`CR5
`
`FIG. 6A2
`
`FEEOBACK
`LED
`
`h;
`
`on
`E5
`
`PIN 39 OF HDD
`CONNECTOR
`
`IPR2020-01218
`Sony EX1024 Page 9
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 9 of 57
`
`5,752,044
`
`AUX5
`
`JP3
`l
`NO PIN 2
`
`3
`4
`
`C9
`1000pF
`
`s
`
`Q
`(N
`
`R6
`
`220K
`
`--
`
`-
`
`WCC
`
`Ef
`1. Al
`
`t
`
`JP2
`
`2
`
`3
`VCC
`
`R9
`33K
`
`i
`
`N448
`--
`-> CR2
`
`5:
`e
`c
`
`U
`
`H
`
`C)
`He
`
`CC S
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`CLK
`CONTROL
`BERG
`
`ESYNC,
`
`BLANK if
`
`
`
`
`
`74LSOS
`
`FIG 6A3
`
`IPR2020-01218
`Sony EX1024 Page 10
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 10 of 57
`
`5,752,044
`
`AUX5
`
`
`
`
`
`U2
`Micro
`controller
`PO2
`
`
`
`
`
`
`
`Ringo
`
`Threshold
`and
`Protection
`
`V 1.
`
`- dTTTTTT
`-----------------------
`
`AUX5
`
`R23
`22OK
`
`Q3
`
`'s
`Supply
`
`R20
`
`
`
`
`
`
`
`Sitch/
`Debounce
`
`Powergood
`
`IPR2020-01218
`Sony EX1024 Page 11
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 11 of 57
`
`5,752,044
`
`
`
`IPR2020-01218
`Sony EX1024 Page 12
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 12 of 57
`
`5,752,044
`
`174
`
`
`
`
`
`Power-On
`t
`Rese
`
`
`
`
`
`
`
`
`
`
`
`E.The
`
`Switch
`
`External
`Event
`
`
`
`
`
`
`
`
`
`176
`
`Switch
`OnAPress
`Stolte
`
`Releasing the Switch
`
`Switch Y "Normal On State"
`OnARelease
`State
`
`78
`
`Pressing the Switch
`
`
`
`OFF/Press
`State
`
`Releasing the Switch
`
`Switch Stotes
`Maintained in the
`Microcontroller U3
`
`
`
`Switch
`Off/Relense
`State
`
`
`
`"Suspend Request State"
`
`182
`
`FIG 7
`
`IPR2020-01218
`Sony EX1024 Page 13
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 13 of 57
`
`5,752,044
`
`200
`
`Start:
`CPU Jumps to Reset Vector
`at Power-Up or Reset
`
`
`
`
`
`
`
`
`
`204
`
`No
`
`206
`
`208
`
`Perform
`Normal
`Power-On
`Self Test
`
`W
`RE
`Boots OS
`
`W
`OS Storts
`Executing
`APM Device
`Driver
`
`W
`
`Should the
`Syster Remain
`Powered?
`
`No
`
`Turn OFF
`sd System
`Ower
`
`Yes
`
`M
`
`
`
`
`
`24
`
`
`
`Is Suspend
`F tag SET in
`CMOS
`
`Yes
`
`202
`
`
`
`
`
`216
`
`Perform
`Abbrevioted
`Power-On
`Self Test
`W
`500
`Self: Sye
`Resure System
`
`On
`
`ich 0
`
`
`
`
`
`Resupe Routine Loads
`System. From HardDrive
`(Restores OS APM and
`APM Device Driver to
`Memory: therefore. APM
`Is Running and Aware of
`the Supervisor Routine)
`
`Porole Thred
`
`Poro el Thread
`
`
`
`
`
`W
`0S Executes
`Code
`Indefinitely . . .
`
`
`
`Approximate ty. Every
`One Second. APM Pot 5
`the Supervisor Routine
`for APM Events
`
`
`
`
`
`
`
`
`
`M
`OS Resures Executing Code
`That Was Interrupted During
`the SE Operation and
`Executes Code Indefinitely . . .
`
`210
`
`FIG 8
`
`IPR2020-01218
`Sony EX1024 Page 14
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 14 of 57
`
`5,752,044
`
`
`
`
`
`Supervisor Routine:
`"Pot Event"
`Colled by APM
`
`222
`
`
`
`
`
`
`
`
`
`'s
`Pressed
`
`No
`
`224
`
`
`
`950
`
`
`
`s
`
`
`
`Was the
`Suspend Request
`Previous ty
`Issued ?
`
`
`
`N9,
`
`226
`1.
`Issue the
`"Suspend Request"
`to the OS APM
`Driver (Couses APM
`to Cat the Suspend
`Routine, Figure 10)
`
`Yes
`
`228
`
`
`
`952
`
`
`
`
`
`
`
`Critic
`Suspend Flag
`Set
`
`956
`
`954
`N
`the Cr it ico
`Sup
`Equest
`reviously
`Issued ?
`
`Issue the
`"Critical Suspend
`Request' to the
`OS APM Driver
`(Couses. APM to
`Col Suspend
`Routine,
`Figure 10.
`Immediately)
`
`958
`
`AP
`
`
`
`
`
`
`
`
`
`
`
`
`
`Suspend
`E. S. s
`Seconds
`
`Yes
`
`SET the Critical
`Suspend Flag
`
`959
`
`950
`
`
`
`
`
`
`
`Suspend
`Pending ?
`
`MATCH OF 62
`
`FIG 9A1
`
`IPR2020-01218
`Sony EX1024 Page 15
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 15 of 57
`
`5,752,044
`
`um is a
`
`m
`
`we w is a
`
`
`
`
`
`
`
`Did the
`System. Just
`Finish
`Resuring
`
`232
`Issue the "Normal
`Resume". APM Return
`Yes
`D Code (Causes APM to
`Update Certain
`System Parameters)
`
`No
`
`244
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`There Been Any
`Hardfille, Keyboard,
`or Mouse
`Activity ?
`
`
`
`
`
`
`
`Is
`the System
`in the Standby
`State
`
`
`
`
`
`1502
`
`
`
`
`
`
`
`Any
`User
`Activity
`
`
`
`
`
`238
`
`
`
`
`
`Set
`Inactivity
`Suspend
`Timer
`To longer
`Time
`Interval
`
`Is the
`System in
`the Standby
`State
`
`
`
`
`
`
`
`240
`N
`Exit the
`Standby State
`(Figure 17)
`
`Did the
`Inactivity
`Suspend Tiger
`xpire ?
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Restort Indictivit
`Stard by Timer an
`APPE Inactivity
`uspend Tiner
`
`
`
`
`
`
`
`SET the "No
`P. Event" APM
`Return Code
`
`234
`
`B> Return to APM
`
`245
`1.
`Did
`the Inactivity
`Standby Timer
`Expire ?
`
`No
`
`
`
`Enter the
`Standby State
`(Figure 18)
`
`SET the "Suspend
`Request" APM Return
`(Couses APM
`to Col the
`Suspend Routine.
`Figure 10)
`
`243
`
`Return to APM
`
`IPR2020-01218
`Sony EX1024 Page 16
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 16 of 57
`
`5,752,044
`
`
`
`961
`
`Routine Executed Responsive
`to APM Working On Last Request
`
`
`
`
`
`
`
`965
`Routine Executed Responsive
`to APM Reject Lost Request
`
`Restort Foil safe Timer
`Ond APM
`Fail-Suspend Timer
`
`
`
`Restort Foil safe Timer
`Ond APM
`Foil -Suspend Timer
`
`Restort 15-Second
`Suspend Pending
`Timer
`
`967
`
`
`
`
`
`SET
`Critical Suspend
`Flag
`
`968
`
`FIG 9B
`
`FIG 9C
`
`IPR2020-01218
`Sony EX1024 Page 17
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 17 of 57
`
`5,752,044
`
`250
`
`
`
`
`
`Suspend Routine. Which
`Is Executed By the APM
`Routine In Response to a
`"Suspend Request"
`Event Code
`
`
`
`
`
`970
`
`
`
`
`
`Does the
`CPU Have on
`SMI ?
`
`
`
`
`
`Go to Sove
`CPU Stote
`Routine
`(Figure 13}
`
`972
`
`Cause the
`Microcontroller U2
`to Generate on SMI
`to the CPU
`
`974
`
`SMI Microcode in
`the CPU Soves the
`State of the CPU
`
`
`
`
`
`Wols Power
`Button
`Pressed ?
`
`260
`
`Qke Shodow BIOS Reod/Write k
`-262
`Set Up Stock in Segment
`EOOOH
`
`255
`1.
`DSET the Software Suspend Flag
`
`FIG 10A
`
`IPR2020-01218
`Sony EX1024 Page 18
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 18 of 57
`
`5,752,044
`
`Transfer or
`Hordfie Tronsfer
`Currently
`Underway?
`
`
`
`
`
`
`
`Yes
`
`No
`
`268 -
`Restort Foi Sofe Timer i
`the Microcontroller U3
`
`270
`Save 8042 State By Writing
`Registers Into Segment
`E000H Doto Structure
`
`272
`
`Y
`C E : 8259
`Sove State
`Routine
`(Figure 15)
`
`276
`
`
`
`
`
`Sove Timer Control ter State and
`IDE Controller State By Writing
`the Values in Their Registers
`Into Segment E000H Data Structure
`286
`
`Instruct the Memory
`Control ter to Flush the
`Externo Coche
`
`265
`
`Make Shadow BIOS Read-Only
`
`266
`
`Coll: Restore
`CPU State
`Routine
`(Figure 14)
`267
`
`
`
`Return to APM
`
`F IG l OB
`
`IPR2020-01218
`Sony EX1024 Page 19
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 19 of 57
`
`5,752,044
`
`In it in ize IDE Controller
`To Put Hord Drive Into
`A Known State
`
`510
`
`s- O is
`
`Locate Appropriate
`Suspend File: Rend Fie
`ize and Signature
`
`512
`
`
`
`
`
`Is Suspend
`Once Resume Many
`(SORM) Bit For This
`suspend files
`
`Yes
`
`
`
`350
`
`
`
`Press in
`Ct - At t-Deete
`Causes Code to
`Jump Here
`
`
`
`Suspend Fog
`in CMOS
`Memory
`
`GOTO RESET
`Vector and Thereby
`Restort System
`(Does Not Return)
`
`
`
`
`
`
`
`
`
`
`
`No
`
`Paro te Thread
`
`354
`
`Are
`Files ize
`and Signature
`Correct
`
`NO
`
`
`
`
`
`
`
`Reset Fails Ofe Tiner and
`Ensure Switch Wos Not
`Pressed Agn in
`
`
`
`Locate Suspend Fite
`On Fixed Disk. Write
`Signature Phrase
`To Hord Drive
`
`298
`
`
`
`
`
`Coll the Foto
`Suspend Error
`Routine (Task 652
`of Figure 13)
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Go To
`Task 506
`To Recover
`From Port in
`Suspend
`
`
`
`976
`
`Begin
`Interrupt-Driven
`Poral el Routine
`To Reod the
`Registers of Any
`Moderns Ond
`Write To the
`E000H Ooto
`Structure
`
`FIG 10C
`
`IPR2020-01218
`Sony EX1024 Page 20
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 20 of 57
`
`5,752,044
`
`- es'
`
`Write Entire 64K
`Onta Structure
`In Segent
`EOOOH to
`Hard Drive
`
`FIG 1 OD
`
`304
`
`306
`
`312
`
`Read Data From System
`Memory. Compress. and
`Write to Buffer titl In
`Segment E000H. Process
`Enough Data to Filt
`Buffer it
`
`Start Poirot to Threod
`Interrupt-Driven
`Twin-Buffer
`Buffer-Write Routine
`
`Reod Next Dato Fron
`System Memory.
`Compress. and Write
`To the Buffer. In
`Segment E000H Not
`Current ty. Being
`Written To the
`Suspend File.
`Process Enough
`Onto to fit
`Thot Buffer
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Done
`Processing
`At 0f Systern Memory
`(Main Memory. Extended
`Memory, and Video
`Memory)
`
`
`
`u)
`
`311
`
`a
`
`MATCH off"OE
`
`Poirot le Thredd
`(Write From Buffer Routine)
`
`36
`
`
`
`
`
`307
`308
`N 3 Zd
`Write Current
`Buffer To Suspend
`Fite. Make Other
`Buffer the
`Current Buffer
`
`Woit For Write
`Frop Buffer
`Routine To
`Finish Writing
`Current Buffer
`To Suspend Fite
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Reset Foil safe Timer
`ond Ensure Switch Wols
`Not Pressed Again
`
`Done
`Wr it in
`Fino Buffer
`To Suspend
`File
`
`Yes
`
`
`
`
`
`310
`
`IPR2020-01218
`Sony EX1024 Page 21
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 21 of 57
`
`5,752,044
`
`MATCH TO FIG OD
`
`Woit For Write
`From Buffer
`Routine TO
`Finish Writing
`Current Buffer
`To Suspend Fite
`
`320
`
`1
`
`t
`
`Sove the Video Controller Stote.
`The OMA Controller State. The
`8277 Diskette Controller State.
`And The UARTs' States. By Writing
`The Values. In Their Respective
`Registers Into Segment E000H
`On to Structure
`
`t
`V
`
`978
`Wait If Necessory
`For the Modem
`Paro Le Threod To
`Finish Executing
`
`- 328
`Read 16-bit Time-Stomp
`From High-Speed Timers
`and Write Into Segment
`E000H DO to Structure
`
`330
`
`
`
`Coculote Checksum for
`Entire E000H Serient;
`Store Checksum. In the
`Segment E000H Data
`Structure
`
`
`
`Store
`Checksum in
`CMOS Memory
`
`F IG
`
`OE
`
`
`
`Store Working War iobles
`and Stock Pointers in the
`Segment E000H Data
`Structure
`
`
`
`who spe a
`
`to had a
`
`MATCH TO FIGOF
`
`to us
`
`.
`
`.
`
`.
`
`IPR2020-01218
`Sony EX1024 Page 22
`
`
`
`U.S. Patent
`May 12, 1998
`MATCHIO FIG 10E
`
`Sheet 22 of 57
`
`5,752,044
`
`
`
`
`
`336
`
`W
`
`3 d
`Rewrite Entire 64K
`Data Structure
`In Segment EOOOH
`To Hord Drive
`
`
`
`338
`
`SET
`Suspend Flo
`P CMOS 9
`Memory
`
`
`
`980N
`Is A
`Checkpoint
`Being
`Token?
`
`
`
`
`
`Yes
`
`FIG
`
`OF
`
`982
`
`
`
`
`
`
`
`
`
`
`
`Jump To Tosk
`484 (Figure 12)
`To Recover (Resurne)
`From the Suspend
`Portion Of the
`Checkpoint
`
`
`
`
`
`
`
`
`
`
`
`Wos An
`Immediate
`Suspend? Resume
`Context Change
`Selected ?
`
`
`
`154
`
`Yes
`
`
`
`
`156
`SET Appropriate Codes To
`Cause Resume Routine To
`Restore System. Fron That
`Specific Suspend Fite
`
`No
`
`159
`(1513 Jumps Here) Wait
`5 Seconds For User To
`Press Hot-Key To Invoke
`S/R Manager Screen
`
`
`
`
`
`MATCH TO FIGO
`
`1518
`
`Jump To
`Resurne Routine
`(Tosk 450. Figure 2)
`To Restore Sie
`From Selected
`Suspend File
`
`
`
`
`
`
`
`IPR2020-01218
`Sony EX1024 Page 23
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 23 of 57
`
`5,752,044
`
`MATCHIO FIG 10
`
`
`
`
`
`
`
`
`
`Is Multiple
`Suspend/Resurne
`Manager Screen To Be
`isplayed ?
`
`
`
`1522
`Display Multiple
`Suspend/Resume
`Manager Screen
`
`
`
`
`
`1524
`Jump To
`Tosk 600
`Should The
`Syster Be Rebooted NYes (Figure 20A)
`To Stort A New
`To Display
`Session ?
`Reboot
`Screen
`
`
`
`
`
`
`
`
`
`Give Command To
`Power Management
`Processor To Couse
`Power Supply To
`Stop Generating
`Regulated Power
`
`342
`
`Loop CPU
`Indefinitely
`
`344
`
`
`
`
`
`
`
`Stop
`(Power Supply
`Stops Providing
`System Power)
`
`
`
`
`
`Wols. A
`Specific Suspend
`File Selected To
`Be Resumed ?
`
`Yes
`Y
`1530
`SET Appropriate Codes
`To Cause Resure Routine
`To Restore System
`From That Specific
`Suspend Fie
`532
`
`
`
`Jump To
`Resume Routine
`(Task 450. Figure 12)
`To Restore System
`From Selected
`Suspend File
`
`
`
`
`
`1526
`
`FIG 1 OG
`
`IPR2020-01218
`Sony EX1024 Page 24
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 24 of 57
`
`5,752,044
`
`380
`Boot-Up Routine:
`CPU Jumps to Reset Vector
`at Power-Up or Reset
`
`Set Up 382
`CPU re.
`Memory Control ter
`
`F IG l A
`
`-86
`IS
`No
`Microcontrol ef
`Functioning ?
`
`988
`Reset the
`BC Microcontrol er
`
`
`
`Initial ize Wakeup
`Configuration:
`Calculate Minutes
`to Alorn Walue and
`Write it to the
`MicroControl ter U3
`
`990
`
`992
`
`s
`Microcontrol ler
`Functioning ?
`
`No
`
`Disable Power
`Management
`Features
`
`
`
`
`
`
`
`
`
`996
`
`
`
`
`
`
`
`
`
`Oid the System
`Boot. Due to Application
`of AC Power
`(WOs the
`Microcontroller U3
`Reset
`
`
`
`
`
`
`
`Did the
`Syster Turn
`On For A Void
`Reason ?
`
`
`
`
`
`Should the
`Systern Rena in ON ?
`( Is DEFAULTON
`SET )
`
`No
`
`000
`
`
`
`Connond the
`Microcontrol er
`U3 to Couse the
`Power Supply 17
`to Cease
`Generating Power.
`Thereby Turning
`Off the System
`
`MATCH TO FIG 11B
`
`IPR2020-01218
`Sony EX1024 Page 25
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 25 of 57
`
`5,752,044
`
`MATCH TO FIG 11 A
`
`Enable SMI Generation
`Before Power Off;
`SET the DEFAULTON Bit
`
`s
`
`1006
`First Pass for Plug and Play
`Resource. At OCotion
`
`383
`
`
`
`Test Shadow Memory and
`Copy BIOS from ROM to
`Shadow RAM; Act i vote
`Shadow Memory
`
`In it in ize and Test
`Video Controller:
`Test Video Memory
`
`384
`
`
`
`
`
`1008
`
`Second Pass for Plug and Play
`Resource A location
`
`
`
`w
`
`386
`
`
`
`
`
`Is the
`Suspend Fla.
`SET In 9
`CMOS
`
`Yes
`
`
`
`Test Remaining System RAM
`
`
`
`Test and Initialize Auxi iory
`Devices; 8259. UARTs. 8042. etc.
`MATCH of Glic
`
`as Pigers Outao supes as obson as a
`
`s
`
`1002
`
`1004
`
`Oid. The System
`Turn On Because Of
`User Action ?
`
`Set Inactivit
`Suspend Timer o
`Longer Interval
`
`
`
`Set EY
`Suspend Tirer To
`Shorter Interval
`
`FIG 11B
`
`IPR2020-01218
`Sony EX1024 Page 26
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 26 of 57
`
`5,752,044
`
`MATCHIO FIG 11B
`
`as
`
`a
`
`sa has a
`
`man at
`
`On to er
`
`FIG. 1 1 C
`
`409
`
`Yes
`
`
`
`Susa
`US Def
`O
`SE In 9
`CMOS
`
`
`
`548
`Determine And Sove
`Power-On Hours
`(Figure 21 )
`
`c
`
`
`
`42
`Initialize and Test
`Floppy Drive
`
`414
`Snapshot BIOS Data Area
`and Vector Table
`
`46
`Scan in and In it in ize
`BIOS Extensions
`
`1550
`
`
`
`No
`
`
`
`Is Multiple
`Suspend/Resume
`Manager Screen To
`Be Displayed ?
`
`Yes
`
`552
`
`Display Multiple
`Edit
`9
`
`1010
`
`
`
`Rend CMOS State and
`Write to Hordfie
`
`
`
`
`
`
`
`
`
`Should The System
`Be Rebooted To Start
`A New Session ?
`
`554
`
`Yes
`
`MATCH TO FIG
`
`D
`
`IPR2020-01218
`Sony EX1024 Page 27
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 27 of 57
`
`5,752,044
`
`MATCH TO FIG
`
`1C
`
`1558
`N
`O
`
`Was A New
`Suspend File
`Selected Fror Which
`To Restore The
`System ?
`
`Jump To Task
`1600 (Figure 20A)
`To Display
`Reboot Screen
`
`SET Appropriate Codes To
`Couse Resurne Routine To
`Restore Systern Fror That
`Specific Suspend File
`
`49
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Is the
`Suspend Flag
`SET in
`CMOS
`
`Is Rein it in ize
`Adopters Flag SET
`in CMOS
`
`No
`
`
`
`GOTO PBOOT
`Routine (Ignores
`RESUME.EXE)
`
`
`
`GOTO PBOOT
`Routine (Executes
`Until it ReOches
`RESUME.EXE)
`
`102
`
`
`
`PBOOT LOdds the OS. Which
`Executes the Program to
`Dynamically A locate the
`Suspend File(s). If
`Necessary (Figure 16);
`Thereafter. The OS Executes
`Code Indefinitely . . . . .
`
`
`
`
`
`GO TO Resurge
`Routine (Tosk 450
`in Figure 12)
`
`422
`
`FIG 1 1D
`
`IPR2020-01218
`Sony EX1024 Page 28
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 28 of 57
`
`5,752,044
`
`450
`
`Yes
`
`Resume Routine
`
`45
`
`453
`
`Does CPU
`Have On
`SMI
`
`Cause
`Resurne
`Shutdown
`
`2
`45
`
`Generate SMI
`to Put CPU Into <
`SMM Mode
`
`
`
`Enoble Seament
`EOOOH AS
`Red/Write
`
`K
`
`456
`
`
`
`Coll; Swap
`BIOS Doto Areo
`and Vector Table
`Routine
`
`Disable All Interrupts
`Except Keyboard and
`HardDrive
`
`
`
`
`
`--s" FIG 12A
`Find Selected
`Suspend File on
`Hard Or ive. Read
`Signature
`and Size
`
`
`
`
`
`
`
`Are Size
`and Signature
`Correct
`
`MATCH TO FIG
`
`2B
`
`IPR2020-01218
`Sony EX1024 Page 29
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 29 of 57
`
`5,752,044
`
`MATCH TO FIG
`
`2A
`
`Read Fror Suspend
`File 64K Block
`Correspinding to
`Segnent E000H and
`Write to EOOOH
`
`468
`
`470
`
`472
`
`Calculate
`Checksum For
`Segment EOOOH
`
`Read Checksum
`From CMOS
`Memory
`
`
`
`
`
`
`
`
`
`Does
`Checks up of
`Segment E000H
`Equal Checksum
`Stored in
`CMOS Memory ?
`
`474
`
`
`
`No
`
`1. 464
`
`CLEAR
`Suspend F ng
`in CMOS
`Memory
`
`Yes
`
`476
`
`Rigint
`Segment E000H
`
`Display Logo and Inform
`User That the System
`Is Restoring
`
`478
`
`GOTO SE b
`W
`ector and There
`Boot the System y
`Nornal ty
`
`466
`
`MATC"To Fiac
`
`FIG 12B
`
`IPR2020-01218
`Sony EX1024 Page 30
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 30 of 57
`
`5,752,044
`
`Restore 8277 Diskette
`Controller State. By Writing
`Values from Segment
`E000H. Dato Structure to
`8277 Registers
`
`
`
`
`
`
`
`
`
`Restore DMA Control ter Stote
`By Writing Values from Segment
`E000H Ooto Structure to DMA
`Controller Registers
`
`Porn let Thread
`
`
`
`486
`
`Read 8K Block Fron
`Suspend File to Buffer
`# 1 in Segment E000H
`
`488
`
`Stort Poirot le. Th
`9.Early and
`Twin Buffer Read
`to Buffer Routine
`
`
`
`FIG
`
`2C
`
`Pressing
`Ctrl-Alt-Delete
`Couses Code
`to Jump Here
`
`480
`
`524
`
`
`
`482
`
`1020
`
`526
`
`Begin
`Interrupt
`Driven
`Poro te
`Routine to
`Rend the
`Register
`Volues Fron
`the E000H
`Doto
`Structure
`and Transpa it
`Then to
`the Moderas
`
`
`
`
`
`Suspend Flo
`P CMOS 9
`
`
`
`
`
`
`
`
`
`
`
`GOTO RESET
`Vector ond
`"See,
`e System
`Normal ty
`
`528
`
`Y
`Poro te Threod-Rend
`to Buffer Routine
`489
`49e
`-
`
`\
`
`- 490
`
`494
`
`
`
`Read Ooto. From the
`Buffer. In Segment
`EOOOH Not Currently
`Being Written to,
`Decompress. and
`Write to the
`System Memory.
`Process All the
`Doto. In Thot Buffer
`
`Woit For Read
`to Buffer Routine
`to Finish Rending
`Current Buffer
`From Suspend
`File
`
`Red Next 8K From
`Suspend File and
`Write to Current
`Buffer. Make
`Other Buffer the
`Current Buffer
`
`MATCH TO FIG 12D
`
`IPR2020-01218
`Sony EX1024 Page 31
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 31 of 57
`
`5,752,044
`
`MATCH TO FIG 12C
`
`
`
`496
`
`
`
`
`
`
`
`
`
`DOne Decompressing
`All of System Memory
`(Main Memory. Extended
`Memory and Video
`Memory
`
`
`
`
`
`
`
`Yes
`
`Do At Leos t
`8K Remo in to Be
`Read From Suspend
`Fi e
`
`
`
`No
`
`Wait For Decompression
`Routine to Finish
`Decompressing Current
`Buffer and Write to
`System Memory
`
`Rend Remaining Dato
`From SuspendFile
`and Write to Current
`Buffer. Set Flag to
`Indicote Finished
`Rending
`
`1024
`
`506
`
`Restore W ideo Control ter
`State By Writing Values
`From Segment EOOOH Data 3
`Structure to Video
`Controller Registers
`
`
`
`Restore IDE Controller
`State By Writing Values
`From Segment EOOOH Data
`Structure to IOE
`Controller Registers
`
`
`
`508
`Enable Systern Coche
`ond CPU Coche
`
`
`
`
`
`From
`Checkpoint
`Port iOn Of the
`Suspend
`Routine
`
`1022
`
`Wait If Necessary for
`the Modern Poro let
`Thredd to Finish
`Executing
`
`
`
`MATCH TO FIG
`
`2E
`
`FIG
`
`2D
`
`IPR2020-01218
`Sony EX1024 Page 32
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 32 of 57
`
`5,752,044
`
`MATCH TO FIG
`
`2D
`
`Restore Tiner Controller
`State. By Writing Values
`From Segment EGo- Onto
`Structure to Timer
`Controller Registers
`
`
`
`Restore 8042 State By Writing
`Values From Segment E000H
`Data Structure to 8042 Registers
`
`Restore 8259 State By Wr it in
`Wol ues From se EOOOH 9
`Data Structure to 8259 Registers
`
`50
`
`512
`
`54
`
`484
`
`Restore UARTs' States By Writing
`Values From Segment E000H Data
`Structure to UART Registers
`
`56
`
`
`
`Colt: Swap BIOS
`Data Areo and
`Wector Table
`Routine
`
`F IG
`
`l 2E
`
`
`
`
`
`
`
`
`
`
`
`
`
`Does the
`CPU Hove
`An SMI
`
`Yes
`
`No
`
`518
`
`Jump to Restore
`CPU Routine. Which
`Executes and
`Returns to APM
`
`
`
`Execute RSM (Resume)
`Instruction. Which Restores
`CPU State Qnd Returns
`to APM
`
`IPR2020-01218
`Sony EX1024 Page 33
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 33 of 57
`
`5,752,044
`
`Sove CPU
`
`600
`
`604
`
`Synchronize to Mouse Doto
`Pocket to Ensure This
`Routine Executes
`Between Mouse Pockets
`
`
`
`-606
`
`Push the State of A20
`to the Stock
`
`FIG
`
`3A
`
`032
`Cause the Microcontroller U3 to
`Generote An SMI to the CPU 40
`
`034
`W
`SMI Microcode in the CPU 40
`Soves the Stote of the CPU 40
`
`1036
`
`Sove the State of the FPU
`
`
`
`
`
`Does the
`CPU 40 Hove
`An SMI ?
`
`Yes
`
`
`
`-1038
`Call Suspend
`Routine
`(Figure 10)
`
`
`
`
`
`
`
`
`
`
`
`No
`
`y
`
`608
`
`Sove the State of the ES
`Point Coprocessor (If Present
`to the E000H. Doto Structure
`-610
`SET Flags in Segment E000H
`Indicating 16-Bit Mode or
`32-Bit Mode
`
`
`
`612
`
`
`
`634
`
`
`
`
`
`Is the
`CPU In Protected
`Mode 2
`
`Yes
`
`
`
`Is the CPU
`In Virtut 8086
`Mode
`
`
`
`MATCH TO FIG 13B
`
`
`
`644
`Sove CRO to E.
`Segment E000H ato
`Yes E. SET the
`V86 Flag in the
`Segment E000H
`Doto Structure
`
`
`
`
`
`IPR2020-01218
`Sony EX1024 Page 34
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 34 of 57
`
`5,752,044
`
`MATCH TO FIG 13A
`
`
`
`Sove Mochine St Otus
`Word and CR3 to
`Segment E000H Data
`Structure: SET TR= 0
`ond LOTR = 0 and
`Save to Segment
`E000H Doto Structure
`
`GOTO
`Control Regs
`Soved
`
`
`
`
`
`Is the
`Current
`Privil ene
`'95
`
`
`
`No
`
`c
`
`Cot Foto
`Susps. Error
`Out ine
`(T5k 652.
`Bet OW)
`
`
`
`Yes
`
`640
`
`Sove CRO. CR3. TR.
`and LDTR to the
`Segment EOOOH
`Onto Structure
`
`616
`
`
`
`
`
`Sove GDTR and
`OTR to the
`Segment E000H
`Doto Structure
`
`k
`
`S the
`Is th
`CPU. In
`Wirtual 8086
`Mode
`No
`
`618
`Yes
`
`620
`
`Jump to
`Port in CPU
`Restore From Foto
`Error Routine (Task
`794 With in Restore
`CPU State
`Routine)
`
`
`
`648
`
`650
`
`Solve W86 Registers
`(SESSES
`to the Segment E000H
`Dato Register
`
`
`
`F I G l 3B
`
`
`
`PUSH Debug Registers
`DR7. DR5. DR3, OR2.
`DR1 and ORO On to
`the Stock
`
`
`
`uses assu was sum ausu was a
`
`to
`
`MATCH TO FIG 3C
`
`IPR2020-01218
`Sony EX1024 Page 35
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 35 of 57
`
`5,752,044
`
`MATCH TO FIG
`
`3B
`
`522
`
`PUSH DS. ES, FS,
`and GS to the Stock
`
`Y
`
`624
`
`Save CS, SS. and ESP to
`the Segent E000H
`Doto Structure
`
`626
`
`Make Segment EOOOH and FOOOH
`Read/Only and Point to the ROM
`
`628
`
`630
`
`SET the User Control led Shutdown
`Flags in CMOS Non-votiatite Memory
`
`532
`
`
`
`
`
`RESET the Microprocessor
`By JUMPing to the Reset
`Vector (In Effect on
`"Return" to the
`Suspend Routine)
`
`FIG 13C
`
`IPR2020-01218
`Sony EX1024 Page 36
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 36 of 57
`
`5,752,044
`
`Fatal Suspend Error
`
`652
`
`654
`
`
`
`
`
`RESET the Foil sofe
`Timer (Drain C2). Leaving
`the Video Signal Off
`
`
`
`
`
`656
`
`BEEP Three Times
`
`658
`
`
`
`RESET the Foi SOfe
`Timer (Drain C2), Leaving
`the Video Signal Off
`
`
`
`
`
`
`
`
`
`
`
`560
`
`
`
`Test to See
`If the Switch
`Was Pressed
`
`Wols
`the Switch
`Pressed ?
`
`664
`
`FIG 13D
`
`IPR2020-01218
`Sony EX1024 Page 37
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 37 of 57
`
`5,752,044
`
`Restore CPU
`State Routine
`
`700
`
`702
`
`FIG.
`
`4A
`
`Moke Shadow RAM
`Segment E000H
`Rend/Write
`
`704
`
`No
`
`
`
`
`
`Wols
`Machine. In
`Virtuol 8086
`Mode
`
`
`
`
`
`
`
`Is the
`TR Pointing
`to O. Wol id
`TSS
`
`CLEAR the Bus
`Bit in the TS
`Pointed to by TR
`
`
`
`
`
`
`
`
`
`
`
`
`
`Yes - 706
`
`Estimate CR3 and
`Sove in the
`Segment EOOOH
`Data Structure
`
`708
`
`Estimate LOTR and
`Sove in the
`Segment E000H
`Doto Structure
`
`710
`
`Est ignote TR and
`Sove in the
`Segment E000H
`Onta Structure
`
`
`
`
`
`
`
`
`
`Lond GOTR and CRO
`From the Segment
`E000H Dolto
`Structure
`
`y
`
`Make Segment E000H
`In Shadow Memory
`Red/Write
`
`756
`
`758
`
`Create a New Page
`Directory Table
`Ot EOOOH
`
`
`
`760
`Mogify the First
`Entry in the
`New Page
`Directory Tobe
`to Point to COOOH
`
`y
`
`72
`
`Is the
`TR Point in
`O A
`TSS
`
`
`
`Clear the Busy Bit
`Yes > In the TSS Pointed
`To By the TR
`
`MATCH TO FIG 14B
`
`762
`
`Create O New Poqe
`Translation E.
`at C 000H Such
`That OE000H. Through
`OEFFFH Are
`Present and Linear
`Addresses Equal
`Physical Addresses
`For This
`Address Range
`
`IPR2020-01218
`Sony EX1024 Page 38
`
`
`
`U.S. Patent
`
`
`
`Sheet 38 of 57
`May 12, 1998
`MATCH TO FIG 4A
`
`5,752,044
`
`LOOld DS, ES, FS, GS, and
`SS With the Selector
`Wol id For the GOT
`
`
`
`y
`Load the Page Director
`Base Register (In CR3
`With E000H
`
`Restore CR3 Ond CRO
`with Walues Stored
`In the Segment E000H
`Doto Structure
`
`766
`
`718
`
`Make Shodow RAM
`Segments EOOOH
`Ond FOOOH
`Reod/Write
`
`Lond IOTR GTR. LOTR
`Ond TR With the Soved
`Wolues Stored in the
`Segment E000H
`Data Structure
`
`Lond Offset
`RESUME 6
`Into Memory
`
`
`
`
`
`
`
`
`
`
`
`Lood Offset
`RESUME32
`Into Memory
`
`Lood CR3 Walue Fron
`Segment E000H Data
`Structure Into EDX:
`Likewise. SS Volue
`Into CX, ESP Wo ue
`In to EBP, TR Volue
`In to the 'E', Ho F
`OF ESI, LOTR Wotue
`In to the Lower Hof
`Of the ESI (SI)
`
`Lond GOTR. IOTR. Ond
`CRO With the Soved
`Volues Stored In the
`Segment E000H
`Dato Structure
`
`
`
`
`
`
`
`
`
`
`
`
`IPR2020-01218
`Sony EX1024 Page 39
`
`
`
`U.S. Patent
`
`Sheet 39 of 57
`May 12, 1998
`MATCH TO FIG AB
`
`5,752,044
`
`
`
`
`
`
`
`
`
`
`
`
`
`Load Into A General Register
`and PUSH On to the W-86
`Interrupt Stock the Volues
`Stored. In the Segment E000H
`Data Structure
`Correspondina To:
`GS. FS
`ES. s ESP.
`EFLAGS ( After Setting the
`WM Bit ) and CS
`
`
`
`PUSH Onto the Stock
`the Return Address
`Corresponding To
`RESTOREFPCP
`
`
`
`
`
`778
`
`780
`
`
`
`
`
`782
`
`RESUME5
`Or
`RESUME32
`
`For JUMP To
`OFF set (JUMP To
`Either RESUMEl 6
`Or RESUME-32)
`
`728
`
`784
`
`Lond CR3 With the
`CR3 Volue In EDX.
`LOOld SS With the
`SS Watue in CX.
`Lond ESP With ESP
`Volue. In EBP
`
`
`
`
`
`
`
`Protected
`Mode
`
`
`
`Lond TR With
`the TR Volue
`In the Upper
`Hof OF ESI
`
`
`
`
`
`POP OFF the Stock
`and Lood ORO, OR1.
`DR2, DR3, OR6.
`ond DR7
`
`
`
`Match of 64
`
`IPR2020-01218
`Sony EX1024 Page 40
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 40 of 57
`
`5,752,044
`
`MATCH TO FIG 14C
`
`
`
`
`
`RESTOREFPCP: Restore
`the State Of the Floating
`Point Coprocessor
`(If Present) Using
`Values In the Segrent
`E000H Doto Structure
`
`W
`
`732
`
`POP Off the Stock and
`Restore the Stolte Of A20
`
`- 734
`Make Shadow RAM
`Segment E000H
`Read/Only
`
`
`
`
`
`Connect the APM To the
`Power Management
`Port By Writing
`OH To I/O Port 46
`
`
`
`Moke Shadow RAM
`SE E000H Ond
`OOH Read-Only
`
`SET "Nornal Resure"
`APM Return Code
`
`738
`
`740
`
`794
`
`Port iO CPU
`Restore Frop
`Foto Error
`Routine
`
`
`
`
`
`
`
`SMI Routine
`Rei.
`He
`To
`Complete the
`Resurne
`
`
`
`1046
`
`POP the Eight General
`Registers Off the Stock
`(Performed by APM)
`
`44
`
`
`
`
`
`
`
`Enable A Moskoble
`Interrupts
`(Performed By APM)
`
`71 746
`
`W
`FF th
`P A Ft
`POP A
`ags 0
`2
`Stock
`(Performed By APM)
`
`748
`
`RETURN To the
`APM Colt ter.
`
`FIG 1 4D
`
`IPR2020-01218
`Sony EX1024 Page 41
`
`
`
`U.S. Patent
`
`May 12, 1998
`
`Sheet 41 of 57
`
`5,752,044
`
`Sove 8259 Routine
`
`800
`
`y
`Save Red Time Clock
`Periodic Interrupt Values
`
`802
`
`804
`
`806
`
`808
`
`810
`
`2
`8
`
`814
`
`Sove Al Readable Registers
`to the Segment EOOO