needs help for MPU 9250

// A function to configure the HMC device on the auxilliary I2C bus
// The only function required to set up the magnetometer is to configure
// continuous mode.
// I2C address is HMC5883L_Address
// Set HMC_ModeRegister to value HMC_Measurement_Continuous
//
void initMag()
{
   mpu.setSlaveAddress( 0, 0x7f & HMC5883L_Address );    // clear the msbit for a write operation
   mpu.setSlaveRegister( 0, HMC_ModeRegister );
   mpu.setSlaveEnabled( 0, true );  
   mpu.setSlaveWriteMode( 0, false );
   mpu.setSlaveDataLength( 0, 1 );
   mpu.setSlaveOutputByte( 0, HMC_Measurement_Continuous );
   
   delay(10) ;
   mpu.setSlaveRegister( 0, HMC_ConfigurationRegisterB );
   mpu.setSlaveEnabled( 0, true );  
   mpu.setSlaveWriteMode( 0, false );
   mpu.setSlaveDataLength( 0, 1 );
   mpu.setSlaveOutputByte( 0, 0x20 );
   delay(10) ;   
   
}
// A function to initiate continuous reading of the magnetometer device
void runMag()
{
   mpu.setSlaveAddress( 0, 0x80 | HMC5883L_Address );    // set the msbit for a read operation
   mpu.setSlaveRegister( 0, HMC_DataRegisterBegin );
   //mpu.setSlaveRegister( 0, 0x00 );
   
   mpu.setSlaveWriteMode( 0, false ) ;    //  if false, writes the register address before reading OR writing data
   mpu.setSlaveDataLength( 0, 6 ) ;
   mpu.setSlave4MasterDelay( 31 );          // reduces sample rate by 1/(1+31)    Note 31 is the biggest number allowed here
   mpu.setSlaveDelayEnabled( 0, true );
}

void getMag( int* buf )
{
  buf[0]=mpu.getExternalSensorWord(0) ;  // gets byte 0 and 1 from the sensor buffer and makes byte 0 the most significant byte of the word
  buf[1]=mpu.getExternalSensorWord(2) ;   
  buf[2]=mpu.getExternalSensorWord(4) ;
  //buf[3]=mpu.getExternalSensorWord(6) ;
  //buf[4]=mpu.getExternalSensorWord(8) ;
}