1461114441-a03a547f-0eb3-46d2-be9d-5fa7513d330b

1. A method executed by a computer, comprising:
collecting, at time t1 during simulation of a software application on a computer, a

first value for a cursor position on a display and a first value for a mouse position on the display;
collecting, at time t2 during simulation of the software application on the computer, a second value for the cursor position and a second value for the mouse position on the display; and
comparing the first value for the cursor position to the second value for the cursor position and the first value for the mouse position to the second value for the mouse position to determine whether the software application is properly executing on the computer;
determining that the software application is hung when the first value for the cursor position, the second value for the cursor position, the first value for the mouse position, and the second value for the mouse position do not change from the time t1 to the time t2.
2. The method of claim 1, wherein the first value for the cursor position, the second value for the cursor position, the first value for the mouse position, and the second value for the mouse position are collected for a focused window of the software application during the simulation.
3. The method of claim 1 further comprising, determining that the software application is improperly executing when the first value for the cursor position equals the second value for the cursor position and the first value for the mouse position equals the second value for the mouse position.
4. The method of claim 1 further comprising, monitoring movement of a cursor position in an active window during the time t1 to the time t2 to determine when the software application is properly executing on the computer.
5. The method of claim 1 further comprising, monitoring movement of a mouse position in an active window during the time t1 to the time t2 to determine when the software application is properly executing on the computer.
6. A non-transitory computer readable medium having
instructions for causing a computer to execute a method, comprising:
monitoring, during a simulation of an application, movement of one of a cursor position or a mouse position in an active window on a display of a first computer executing the application;
transmitting values of the movement to a second computer; analyzing the values of the movement to determine whether the application is properly executing on the first computer during the simulation; and
determining that the application is hung when a first value for a cursor position, a second value for the cursor position, a first value for a mouse position, and a second value for the mouse position do not change from time t1 to the time t2, wherein,
at time t1, the first value for the cursor position and the first value for the mouse position are collected,
at time t2 the second value for the cursor position and the second value for the mouse position are collected.
7. The non-transitory computer readable medium of claim 6 further comprising, comparing the values of the movement to determine whether the cursor position and the mouse position changed during a time period to determine if the application is properly executing.
8. The non-transitory computer readable medium of claim 6 further comprising, transmitting a location of the cursor position in the active window and a location of the mouse in the active window from the first computer to the second computer.
9. The non-transitory computer readable medium of claim 6 further comprising, determining that the application is hung when the cursor position and the mouse position do not change in the active window during a time period.
10. The non-transitory computer readable medium of claim 6 further comprising, reporting an error condition to a user when the cursor position and the mouse position do not change in the active window during a time period.
11. The non-transitory computer readable medium of claim 6 further comprising, rebooting the first computer when the cursor position and the mouse position do not change in the active window during a time period.
12. The non-transitory computer readable medium of claim 6 further comprising, comparing values for the cursor and mouse positions at a first time with values for the cursor and mouse positions at a second time, the second time being subsequent to the first time.
13. The non-transitory computer readable medium of claim 6 further comprising, simulating user input into the first computer in order to simulate movement of the cursor position and the mouse position.
14. The non-transitory computer readable medium of claim 6 further comprising, reporting to a user that the first computer is in a hung state when the cursor position and mouse position do not move.
15. A computer system, comprising:
a memory storing an algorithm;
a processor that executes the algorithm to:
receive data from a computer, the data indicating movement of a mouse or cursor in a focused window on a display of the computer executing an application;
analyze the data to determine when in time the mouse or the cursor moved in the focused window of the computer in order to determine whether the application is properly executing; and
determine that the application is hung when a first value for a cursor position, a second value for the cursor position, a first value for a mouse position, and a second value for the mouse position do not change from time t1 to the time t2, wherein,
at time t1, the first value for the cursor position and the first value for the mouse position are collected,
at time t2 the second value for the cursor position and the second value for the mouse position are collected.
16. The computer system of claim 15 wherein the processor further executes the algorithm to:
receive second data from the computer for movement of the mouse or the cursor in the focused window of the computer;
compare the data with the second data to determine when in time the mouse or the cursor moved in the focused window of the computer.
17. The computer system of claim 15 wherein the processor further executes the algorithm to report an error condition to a user when the mouse or the cursor does not move during a time period.
18. The computer system of claim 15 wherein the processor further executes the algorithm to report to a user that the computer is hung when a location of the mouse and a location of the cursor remain constant over a time period.
19. The computer system of claim 15 further comprising, a plurality of workstation computers that execute the application during a simulated execution of the application.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method of determining soft bit values for QAM-modulated symbols in an OFDM receiver, comprising:
calculating a decision boundary estimate using first received symbols selected from a group of OFDM tones;
determining first soft bit values corresponding to one or more second received symbols selected from an adjacent tone, using the decision boundary estimate, wherein the adjacent tone is adjacent to the group of OFDM tones;
updating the decision boundary estimate using the one or more second received symbols; and
determining second soft bit values corresponding to one or more third received symbols selected from a next-adjacent tone, using the updated decision boundary estimate, wherein the next-adjacent tone is adjacent to the adjacent tone and further removed from the group of OFDM tones than the adjacent tone.
2. The method of claim 1, wherein calculating a decision boundary estimate comprises determining an average modulation distance using the one or more first received symbols and calculating the decision boundary estimate based on the average modulation distance.
3. The method of claim 2, wherein calculating a decision boundary estimate further comprises estimating a signal-to-interference ratio corresponding to one or more of the group of OFDM tones and calculating the decision boundary estimate based on the signal-to-interference ratio.
4. The method of claim 3, further comprising calculating the decision boundary estimate based on a weighted sum of the average modulation distance and the signal-to-interference ratio.
5. The method of claim 2, wherein calculating the decision boundary estimate based on the average modulation decision further comprises calculating the decision boundary estimate based on a prior decision boundary estimate, wherein the prior decision boundary estimate was calculated using symbols obtained during a prior measurement interval.
6. The method of claim 5, further comprising detecting a transmitted amplitude change occurring after the prior decision boundary estimate was determined, wherein calculating the decision boundary estimate further comprises calculating the decision boundary estimate based on the transmitted amplitude change.
7. The method of claim 5, wherein calculating the decision boundary estimate comprises calculating a weighted sum of the average modulation distance and the prior decision boundary estimate.
8. The method of claim 2, wherein updating the decision boundary estimate comprises computing a rolling average modulation distance using the one or more first received symbols and the one or more second received symbols and calculating the updated decision boundary estimate based on the rolling average modulation distance.
9. The method of claim 8, wherein computing a rolling average modulation distance comprises:
summing modulation distances corresponding to the one or more first received symbols to obtain a first sum;
summing modulation distances corresponding to the one or more second received symbols to obtain a second sum;
summing modulation distances corresponding to the one or more first received symbols from the tone of the group of OFDM tones farthest in frequency from the adjacent tone to obtain a third sum; and
calculating the rolling average modulation distance by adding the first sum to the second sum and subtracting the third sum to obtain a rolling modulation sum, and dividing the rolling modulation sum by twice the number of symbols corresponding to the rolling modulation sum.
10. The method of claim 8, wherein calculating an updated decision boundary estimate based on the rolling average modulation distance further comprises calculating the updated decision boundary estimate based on a prior updated decision boundary estimate, wherein the prior updated decision boundary estimate was determined using symbols obtained from the adjacent tone during a prior measurement interval.
11. The method of claim 1, wherein the adjacent tone is immediately adjacent to the group of OFDM tones.
12. The method of claim 1, further comprising:
detecting a transmitted amplitude difference between successive OFDM tones;
forming a scaled decision boundary estimate based on the detected transmitted amplitude difference; and
determining soft bit values corresponding to symbols selected from one of the successive OFDM tones using the scaled decision boundary estimate.
13. A receiver circuit configured to determine soft bit values for QAM-modulated symbols in an OFDM signal, comprising:
a decision boundary estimator configured to calculate a decision boundary estimate using first received symbols selected from a group of OFDM tones and to update the decision boundary estimate using second received symbols from an adjacent tone; and
a soft bit estimator configured to:
determine first soft bit values corresponding to the second received symbols using the decision boundary estimate; and
determine second soft bit values, corresponding to third received symbols selected from a next-adjacent tone, using the updated decision boundary estimate,

wherein the adjacent tone is adjacent to the group of OFDM tones and the next-adjacent tone is adjacent to the adjacent tone and further removed from the group of OFDM tones than the adjacent tone.
14. The receiver circuit of claim 13, wherein the decision boundary estimator is configured to calculate the decision boundary estimate by determining an average modulation distance using the one or more first received symbols and calculating the decision boundary estimate based on the average modulation distance.
15. The receiver circuit of claim 14, further comprising an SIR estimator configured to estimate a signal-to-interference ratio corresponding to one or more of the group of OFDM tones, wherein the decision boundary estimator is further configured to calculate the decision boundary estimate based on the signal-to-interference ratio.
16. The receiver circuit of claim 15, wherein the decision boundary estimator is configured to calculate the decision boundary estimate based on a weighted sum of the average modulation distance and the signal-to-interference ratio.
17. The receiver circuit of claim 14, wherein the decision boundary estimator is configured to calculate the decision boundary estimate based on a prior decision boundary estimate, wherein the prior decision boundary estimate was calculated using symbols obtained during a prior measurement interval.
18. The receiver circuit of claim 17, wherein the decision boundary estimator is configured to calculate a weighted sum of the average modulation distance and the prior decision boundary estimate to obtain the decision boundary estimate.
19. The receiver circuit of claim 14, wherein the decision boundary estimator is configured to update the decision boundary estimate by computing a rolling average modulation distance using the one or more first received symbols and the one or more second received symbols and calculating the updated decision boundary estimate based on the rolling average modulation distance.
20. The receiver circuit of claim 19, wherein the decision boundary estimator is configured to:
sum modulation distances corresponding to the one or more first received symbols to obtain a first sum;
sum modulation distances corresponding to the one or more second received symbols to obtain a second sum;
sum modulation distances corresponding to the one or more first received symbols from the tone of the group of OFDM tones farthest in frequency from the adjacent tone to obtain a third sum; and
calculate the rolling average modulation distance by adding the first sum to the second sum and subtracting the third sum to obtain a rolling modulation sum, and dividing the rolling modulation sum by twice the number of symbols corresponding to the rolling modulation sum.
21. The receiver circuit of claim 19, wherein the decision boundary estimator is configured to calculate the updated decision boundary estimate based on a prior updated decision boundary estimate, wherein the prior updated decision boundary estimate was determined using symbols obtained from the adjacent tone during a prior measurement interval.