Here are some things that can contribute to a better gaming experience: 
 
 Skippable cut scenes 
 Multiple skill levels (and, if possible, independent skill levels for player 1 and player 2) 
 Multi-button controller support 
 Auto-check additional diskette drives 
 Rigorous play-testing (by people other than the programmer) 
 Control customization (ability to assign controls to keys and buttons) 
 Extensive audio options 
 Option to quit/exit game at any time 
 Save feature (if applicable) 
 High score table (if applicable) 
 Pause feature 
Items that aren't essential but are nice to include: 
 Save states 
 Level editor 
 Options menu (vary number of attempts, enemy shot speed/frequency, time limits, etc...)