The self-test on the 83+, 83+SE, 84+, and 84+SE checks the LCD, RAM, ROM, certificate, and other various parts of the calculator for oddities. To access it, press [ALPHA]+[S] from the MODE screen. You will see a screen asking if you want to clear all memory (this is not all it does), and to press [ON] to cancel. This isn't entirely true, you can press any key except for [ENTER] to abort. If you do press [ENTER] here, you will see a screen with "START?" displayed. Again, you can press any key except for [ENTER] to abort. This is the last opportunity to cancel the self-test. Once the self-test starts, it does the following: Disables the link activity hook (this will not be restored). Disables APD. Calls _GetCalcSerial. If a calc ID is not found in the certificate, "ID FAIL" is displayed and it waits for a keypress. 83+SE/84+/84+SE ONLY: Tests the third crystal timer by incrementing HL for 62.5ms and then displaying HL. My calculator displays 21694. Waits for a keypress. At this point, you can still pull a battery and RAM will not reset, but not after pressing a key. 84+/84+SE ONLY: Kills peripheral USB. This will disconnect it from a PC or other calculator. The calculator then displays a counter, starting with 0, representing the number of iterations in this infinite loop: Calculates the checksum of the OS. This is done by adding together every byte from pages 0-7 and 18h-1Dh/38h-3Dh/78h-7Dh (depending on model), EXCLUDING 4000h-4200h on page 1Ah/3Ah/7Ah. This sum must be zero, or the OS is invalid or has been modified. If this happens, "ROM FAILED" is displayed, USB is reset, and RAM is reset. Performs a check on RAM pages 1 and 0. It stores an incrementing counter to each byte from 8D4Fh to 0FFFFh, and then verifies 8D4Fh to 9C86h. If the test fails, "RAM FAILED" is displayed, USB is reset, and RAM is reset. 83+SE/84+/84+SE ONLY: Performs a check on RAM pages 2-7. It stores an incrementing counter to each byte, and then verifies the first 1C86h bytes. If the test fails, "RAM FAILED" is displayed, USB is reset, and RAM is reset. Pressing [ON] during this infinite loop will break out of the loop. It then displays a series of LCD patterns, then a single pattern with varying contrast settings (39 of them), waiting for a keypress each time. The calculator will then test to make sure all keys work correctly. It will go into a loop displaying a BASIC getKey (or _GetCSC) key code for you to press. Press each key (which will be every key, starting from the top-left corner and working across and then down towards [ENTER] (not including [ON], which would break out of the loop)). Once all of this is done, the calculator will display "OK" and wait for you to press a key. Then USB will be reset and the calculator will reset RAM.