SERIAL INTERFACE DEVELOPERS GUIDE 
/* PC Master Command Code Enumerations */ 
enum 
{ 
  CMD_FPGA_UPDATE_AVAILABLE = 1, 
  CMD_COPY_SFLASH_PAGE,  /* Copy a page of serial flash memory to DSP */ 
  CMD_PROG_SFLASH_FULL,  /* Program a full page to serial flash */ 
  CMD_PROG_SFLASH_PARTIAL,  /* Program a partial page to serial flash */ 
  CMD_PROG_PRODUCT_ID,  /* Program DSP Data flash with Product ID */ 
  CMD_READ_PRODUCT_ID,  /* Read Product ID from DSP Data flash */ 
  CMD_PROG_STATIC_CFG,  /* Program DSP Data flash with Static Config */ 
  CMD_READ_STATIC_CFG,  /* Read Static Config from DSP Data flash */ 
  CMD_GET_CAMERA_TIME,  /* Read the RTC time and store to scratch pad */ 
  CMD_SET_CAMERA_TIME,  /* Set the RTC time from scratch pad */ 
  CMD_GET_NVM_DATA,  /* Read NVM data block to scratch pad */ 
  CMD_SET_NVM_DATA,  /* Set NVM data block from scratch pad */ 
  CMD_FOCUS_MOTOR_FAR,  /* Call focus-out routine */ 
  CMD_FOCUS_MOTOR_NEAR,  /* Call focus-in routine */  
  CMD_IMAGE_GRAB,  /* Grab image into utility memory (Buffer Supplied) */ 
  CMD_READ_UTILITY_MEMORY,  /* Read a block of utility memory (Address Supplied) */ 
  CMD_NUC_FLASH_RAMP,  /* Debug Command to write ramp to parameter blocks */ 
  CMD_NUC_FLASH_MEMORY,  /* Read a block of NUC flash memory (Address Supplied) */ 
  CMD_NUC_FLASH_TEST_PATTERN,  /* Debug Command to write test pattern to NUC blocks */ 
  CMD_TEC_DRV_ENABLE,  /* Enable/Disable TEC Drive */ 
  CMD_TEC_TEMP_SELECT,  /* Select TEC Temperature (High/Low) */ 
  CMD_CAL_FLAG_SERVO,  /* Call either the Open or Close Routine */ 
  CMD_CAL_FLAG_REFERENCE,  /* Call either the Heated or Ambient Routine */ 
  CMD_ONE_PT_REFRESH,  /* Perform a directed 1-point refresh calibration */ 
  CMD_TWO_PT_NUC,  /* Perform a directed 2-point calibration */ 
  CMD_LOAD_COLOR_PAL,  /* Load user selected color palette */ 
  CMD_LOAD_OVLY_PAL,  /* Load user selected overlay palette */ 
  CMD_PIN_CHECK,  /* Verify Memory Unlock PIN */ 
  CMD_FAN_SPEED_OPERATION,  /* Command to Test Fan Operation */ 
  CMD_GET_ADC_VALUES,  /* DEBUG ADC RETRIEVAL FUNCTION */ 
  CMD_ENABLE_RETICLE,  /* Turn Reticle on/off */ 
  CMD_RETICLE_POSITION,  /* Move Reticle to desired location */ 
  CMD_ONE_PT_UPDATE,  /* Perform a directed 1-point update calibration */ 
  CMD_WRITE_VID_ENC_REG,  /* DEBUG VIDEO ENCODER WRITE REGISTER */ 
  CMD_PERFORM_TEST,  /* Perform  user supplied test */ 
  CMD_OVERLAY_REFRESH,  /* Refresh symbology overlay */ 
  CMD_FREEZE_IMAGE,  /* Freeze/Unfreeze Display Image */ 
  CMD_DETECT_BAD_PIXELS,  /* NO LONGER USED */ 
  CMD_IRCON_LOAD_LUT,  /* Custom LUT table creation for radiometrics */ 
  CMD_LOAD_RAD_PARAMS,  /* Load Rad Params for compile time software */ 
  CMD_RESET_PFV_COUNT,  /* Toggles PFV Frame count bit */ 
  CMD_CLEAR_CONTINUE_FLAG,  /* Clears the idle while fault continue flag */ 
  CMD_UNIFORMITY_TEST,  /* Command to initiate a uniformity (flat field noise) test*/ 
  CMD_WRITE_UTILITY_MEMORY,  /* Write a block of utility memory (Address Supplied) */ 
  CMD_ADV_DETECT_BAD_PIXELS,  /* Command to initiate flash update of advanced detection of 
        pixel defects */ 
  CMD_UPLOAD_NUC,  /* Command to intiate flash write of uploaded NUC terms */ 
  CMD_DOWNLOAD_NUC,  /* Command to intiate flash read of active NUC terms */  
  CMD_COMPILE_DEFECT_LISTS,  /* Command to initiate a compilation of NUC defects to FLASH */ 
  CMD_RESTORE_FACTORY_DEFECTS,  /* Command to NUC to factory defect state */  
  CMD_ENABLE_RANGE_RETICLE,  /* Turn Ranging Reticle On/Off */ 
  CMD_INIT_NUC_TABLE,  /* Initialize NUC table (erase to all 0xFF's) */ 
  CMD_CAMERA_RECOVER,  /* Attempt to recover camera from internal errors */ 
 CMD_PLACEHOLDER, 
  CMD_UPDATE_EXP_PORT,  /* Updates Expansion Port Register from CfgData Value */ 
 CMD_UNDEFINED 
}; 
49