The NXT Shell is a program that is run on the NXT brick in the background during direct mode execution. Since some remote mode commands do not have a direct mode analog, the shell will execute these commands. The shell has 2 main purposes: 1) the sensor view screen and 2) execution of shell commands.
When running a program in direct mode, the following screen appears on the NXT brick.
This will do nothing but check every 100 msec if the computer requests a remote command to be executed. If the user pushes the right arrow, the sensor view screen will appear on the NXT. At the top of the screen there are 3 numbers, which are the motor A, B, C encoder values. There are also 4 numbers at the bottom of the screen, which are the values of the 4 sensor ports. They will remain 0 until a sensor has been configured. The sensor view screen can be very useful for seeing what each sensor and motor is doing in real time.