// File: mrlordkaj[P]i2cdevlib-pi/MPU6050/MPU6050.cpp
// Function: MPU6050::PrintActiveOffsets()
void MPU6050::PrintActiveOffsets() {
	uint8_t AOffsetRegister = (getDeviceID() < 0x38 )? MPU6050_RA_XA_OFFS_H:0x77;
	int16_t Data[3];
	//Serial.print(F("Offset Register 0x"));
	//Serial.print(AOffsetRegister>>4,HEX);Serial.print(AOffsetRegister&0x0F,HEX);
	Serial.print(F("\n//           X Accel  Y Accel  Z Accel   X Gyro   Y Gyro   Z Gyro\n//OFFSETS   "));
	if(AOffsetRegister == 0x06)	I2Cdev::readWords(devAddr, AOffsetRegister, 3, (uint16_t *)Data);
	else {
		I2Cdev::readWords(devAddr, AOffsetRegister, 1, (uint16_t *)Data);
		I2Cdev::readWords(devAddr, AOffsetRegister+3, 1, (uint16_t *)Data+1);
		I2Cdev::readWords(devAddr, AOffsetRegister+6, 1, (uint16_t *)Data+2);
	}
	//	A_OFFSET_H_READ_A_OFFS(Data);
	printfloatx("", Data[0], 5, 0, ",  ");
	printfloatx("", Data[1], 5, 0, ",  ");
	printfloatx("", Data[2], 5, 0, ",  ");
	I2Cdev::readWords(devAddr, 0x13, 3, (uint16_t *)Data);
	//	XG_OFFSET_H_READ_OFFS_USR(Data);
	printfloatx("", Data[0], 5, 0, ",  ");
	printfloatx("", Data[1], 5, 0, ",  ");
	printfloatx("", Data[2], 5, 0, "\n");
}

// Assembly:
subq $0x78, %rsp
movq %rdi, 0x70(%rsp)
movq 0x70(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0x23310
movzbl %al, %edx
movl $0x77, %eax
movl $0x6, %ecx
cmpl $0x38, %edx
cmovll %ecx, %eax
movb %al, 0x6f(%rsp)
movq 0x1952a(%rip), %rdi     # 0x5bf60
leaq 0x9333(%rip), %rsi      # 0x4bd70
callq 0x22e80
movzbl 0x6f(%rsp), %eax
cmpl $0x6, %eax
jne 0x42a80
movq 0x30(%rsp), %rax
movb (%rax), %dil
movb 0x6f(%rsp), %sil
leaq 0x68(%rsp), %rcx
movl $0x3, %edx
movq 0x194ae(%rip), %rax     # 0x5bf18
movzbl %dil, %edi
movzbl %sil, %esi
movzwl (%rax), %r8d
callq 0x224e0
jmp 0x42b21
movq 0x30(%rsp), %rax
movb (%rax), %dil
movb 0x6f(%rsp), %sil
leaq 0x68(%rsp), %rcx
movl $0x1, %edx
movq 0x1947a(%rip), %rax     # 0x5bf18
movzbl %dil, %edi
movzbl %sil, %esi
movzwl (%rax), %r8d
callq 0x224e0
movq 0x30(%rsp), %rax
movb (%rax), %dil
movzbl 0x6f(%rsp), %eax
addl $0x3, %eax
movb %al, %sil
leaq 0x68(%rsp), %rcx
addq $0x2, %rcx
movl $0x1, %edx
movq 0x19441(%rip), %rax     # 0x5bf18
movzbl %dil, %edi
movzbl %sil, %esi
movzwl (%rax), %r8d
callq 0x224e0
movq 0x30(%rsp), %rax
movb (%rax), %dil
movzbl 0x6f(%rsp), %eax
addl $0x6, %eax
movb %al, %sil
leaq 0x68(%rsp), %rcx
addq $0x4, %rcx
movl $0x1, %edx
movq 0x19408(%rip), %rax     # 0x5bf18
movzbl %dil, %edi
movzbl %sil, %esi
movzwl (%rax), %r8d
callq 0x224e0
movq 0x19438(%rip), %rdi     # 0x5bf60
movq %rdi, 0x20(%rsp)
leaq 0x86c9(%rip), %rsi      # 0x4b1fd
movq %rsi, 0x18(%rsp)
callq 0x22e80
movq 0x20(%rsp), %rdi
leaq 0x9274(%rip), %rsi      # 0x4bdbe
movq %rsi, 0x28(%rsp)
callq 0x22e80
movswl 0x68(%rsp), %eax
cvtsi2ss %eax, %xmm0
cvtss2sd %xmm0, %xmm0
movl $0x5, %edi
movl %edi, 0x8(%rsp)
xorl %esi, %esi
movl %esi, 0xc(%rsp)
leaq 0x60(%rsp), %rdx
callq 0x23280
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x234b0
movq 0x20(%rsp), %rdi
leaq 0x922d(%rip), %rsi      # 0x4bdc0
movq %rsi, 0x10(%rsp)
callq 0x22e80
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x20(%rsp), %rdi
movq 0x28(%rsp), %rsi
callq 0x22e80
movl 0x8(%rsp), %edi
movl 0xc(%rsp), %esi
movswl 0x6a(%rsp), %eax
cvtsi2ss %eax, %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x58(%rsp), %rdx
callq 0x23280
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x234b0
movq 0x10(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x20(%rsp), %rdi
movq 0x28(%rsp), %rsi
callq 0x22e80
movl 0x8(%rsp), %edi
movl 0xc(%rsp), %esi
movswl 0x6c(%rsp), %eax
cvtsi2ss %eax, %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x50(%rsp), %rdx
callq 0x23280
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x234b0
movq 0x10(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x30(%rsp), %rax
movzbl (%rax), %edi
movq 0x192ba(%rip), %rax     # 0x5bf18
movzwl (%rax), %r8d
movl $0x13, %esi
movl $0x3, %edx
leaq 0x68(%rsp), %rcx
callq 0x224e0
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x20(%rsp), %rdi
movq 0x28(%rsp), %rsi
callq 0x22e80
movl 0x8(%rsp), %edi
movl 0xc(%rsp), %esi
movswl 0x68(%rsp), %eax
cvtsi2ss %eax, %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x48(%rsp), %rdx
callq 0x23280
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x234b0
movq 0x10(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x20(%rsp), %rdi
movq 0x28(%rsp), %rsi
callq 0x22e80
movl 0x8(%rsp), %edi
movl 0xc(%rsp), %esi
movswl 0x6a(%rsp), %eax
cvtsi2ss %eax, %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x40(%rsp), %rdx
callq 0x23280
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x234b0
movq 0x10(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x18(%rsp), %rsi
movq 0x20(%rsp), %rdi
callq 0x22e80
movq 0x20(%rsp), %rdi
movq 0x28(%rsp), %rsi
callq 0x22e80
movswl 0x6c(%rsp), %eax
cvtsi2ss %eax, %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x38(%rsp), %rdx
movl $0x5, %edi
xorl %esi, %esi
callq 0x23280
movq %rax, %rsi
movq 0x191f2(%rip), %rdi     # 0x5bf60
callq 0x234b0
movq 0x191e6(%rip), %rdi     # 0x5bf60
leaq 0x847b(%rip), %rsi      # 0x4b1fc
callq 0x22e80
addq $0x78, %rsp
retq
nopl (%rax,%rax)