// File: /workspace/github_cpp_makefile_star2_O1/jkingan[P]ladyheather/heathgps.cpp
// Function: parse_crx()
void parse_crx()
{
int i;

   if(get_msg_field()) {  // eat the TPS2
   }

   if(get_msg_field()) {  // PPS status
      i = atoi(msg_field);
      if(i) pps_enabled = 1;
      else  pps_enabled = 0;
      have_pps_enable = 87;
   }

   if(get_msg_field()) {  // PPS mode
      i = atoi(msg_field);
   }

   if(get_msg_field()) {  // PPS period
      i = atoi(msg_field);
      if(i == 1) {
         pps_rate = RATE_PP2S;
         have_pps_rate = 87;
      }
      else if(i == 0) {
         pps_rate = RATE_1PPS;
         have_pps_rate = 87;
      }
   }

   if(get_msg_field()) {  // PPS pulse width (msecs)
      esip_pps_width  = atoi(msg_field);
      have_pps_duty = 87;
   }

   if(get_msg_field()) {  // cable delay
      cable_delay = atof(msg_field);
      cable_delay /= 1.0E9;
      have_cable_delay = 87;
   }

   if(get_msg_field()) {  // PPS polaity
      i = atoi(msg_field);
      pps_polarity = i;
      have_pps_polarity = 87;
   }

   if(get_msg_field()) {  // pps_type
      i = atoi(msg_field);
      esip_pps_type = i;
      have_esip_pps_type = 87;
   }

   if(get_msg_field()) {  // pps accuracy (ns)
      i = atoi(msg_field);
      pps_offset = ((OFS_SIZE) i);
      have_pps_offset = 87;
   }

   if(get_msg_field()) {  // sawtooth
      dac_voltage = (float) atof(msg_field);
      have_sawtooth = 87;
   }

   if(get_msg_field()) {  // accuracy theshold
      i = atoi(msg_field);
      if(0 && (i >= 5) && (i <= 9999)) {
         pps_threshold = (float) atoi(msg_field);
         have_pps_threshold = 87;
      }
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
callq 0x811da
callq 0x811da
testl %eax, %eax
je 0x83f32
leaq 0x2b7b2c(%rip), %rdi    # 0x33ba40
callq 0x95e0
testl %eax, %eax
leaq 0x289dfe(%rip), %rax    # 0x30dd20
setne (%rax)
leaq 0x2893b0(%rip), %rax    # 0x30d2dc
movl $0x57, (%rax)
callq 0x811da
callq 0x811da
testl %eax, %eax
je 0x83f71
leaq 0x2b7af9(%rip), %rdi    # 0x33ba40
callq 0x95e0
cmpl $0x1, %eax
je 0x83f59
testl %eax, %eax
jne 0x83f71
movb $0x2, %al
jmp 0x83f5b
movb $-0x7e, %al
leaq 0x289dc1(%rip), %rcx    # 0x30dd23
movb %al, (%rcx)
leaq 0x289365(%rip), %rax    # 0x30d2d0
movl $0x57, (%rax)
callq 0x811da
testl %eax, %eax
je 0x83f9c
leaq 0x2b7abf(%rip), %rdi    # 0x33ba40
callq 0x95e0
leaq 0x289de3(%rip), %rcx    # 0x30dd70
movl %eax, (%rcx)
leaq 0x289dce(%rip), %rax    # 0x30dd64
movl $0x57, (%rax)
callq 0x811da
testl %eax, %eax
je 0x83fd1
leaq 0x2b7a94(%rip), %rdi    # 0x33ba40
callq 0x9470
divsd 0x8506f(%rip), %xmm0    # 0x109028
leaq 0x289e08(%rip), %rax    # 0x30ddc8
movsd %xmm0, (%rax)
leaq 0x2892e9(%rip), %rax    # 0x30d2b4
movl $0x57, (%rax)
callq 0x811da
testl %eax, %eax
je 0x83ffc
leaq 0x2b7a5f(%rip), %rdi    # 0x33ba40
callq 0x95e0
leaq 0x289d2b(%rip), %rcx    # 0x30dd18
movl %eax, (%rcx)
leaq 0x2892ea(%rip), %rax    # 0x30d2e0
movl $0x57, (%rax)
callq 0x811da
testl %eax, %eax
je 0x84027
leaq 0x2b7a34(%rip), %rdi    # 0x33ba40
callq 0x95e0
leaq 0x289d5c(%rip), %rcx    # 0x30dd74
movl %eax, (%rcx)
leaq 0x289d57(%rip), %rax    # 0x30dd78
movl $0x57, (%rax)
callq 0x811da
testl %eax, %eax
je 0x8405b
leaq 0x2b7a09(%rip), %rdi    # 0x33ba40
callq 0x95e0
xorps %xmm0, %xmm0
cvtsi2sd %eax, %xmm0
leaq 0x28876e(%rip), %rax    # 0x30c7b8
movsd %xmm0, (%rax)
leaq 0x2891e3(%rip), %rax    # 0x30d238
movl $0x57, (%rax)
callq 0x811da
testl %eax, %eax
je 0x84090
leaq 0x2b79d5(%rip), %rdi    # 0x33ba40
callq 0x9470
cvtsd2ss %xmm0, %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x288981(%rip), %rax    # 0x30ca00
movsd %xmm0, (%rax)
leaq 0x28933a(%rip), %rax    # 0x30d3c4
movl $0x57, (%rax)
popq %rbp
jmp 0x811da