// File: /workspace/github_cpp_makefile_star2_O1/jkingan[P]ladyheather/heathgps.cpp
// Function: get_sv6_sat_list()
void get_sv6_sat_list()
{
int prn[4];
int mode;

   log_packet_id("Packet 0x44 (SV6_FAMILY sats and dops - nav mode)");

   mode = tsip_byte();   // mode
   if(ACU_GG) ;
   else if(ACU_360) ;
   else if(ACUTIME) ;
   else {
      if     (mode == 0x01) rcvr_mode = RCVR_MODE_SINGLE;    // auto modes
      else if(mode == 0x03) rcvr_mode = RCVR_MODE_2D;
      else if(mode == 0x04) rcvr_mode = RCVR_MODE_3D;
      else if(mode == 0x11) rcvr_mode = RCVR_MODE_SINGLE;    // maunal modes
      else if(mode == 0x13) rcvr_mode = RCVR_MODE_2D;
      else if(mode == 0x14) rcvr_mode = RCVR_MODE_3D;
      else                  rcvr_mode = RCVR_MODE_UNKNOWN;
   }

   prn[0] = tsip_byte();   // prn1
   prn[1] = tsip_byte();   // prn2
   prn[2] = tsip_byte();   // prn3
   prn[3] = tsip_byte();   // prn4

   have_dops = 0;
   pdop = tsip_single();
   hdop = tsip_single();
   vdop = tsip_single();
   tdop = tsip_single();

   if(pdop > 20.0) pdop = 20.0;
   if(hdop > 20.0) hdop = 20.0;
   if(vdop > 20.0) vdop = 20.0;
   if(tdop > 20.0) tdop = 20.0;

   have_dops |= (PDOP | HDOP | VDOP | TDOP);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
leaq 0xaf6de(%rip), %rdi     # 0x121a14
callq 0x58e77
callq 0x587d1
cmpl $0x100, %eax            # imm = 0x100
jb 0x72351
leaq 0x1ccc22(%rip), %rcx    # 0x23ef70
orb $0x8, (%rcx)
leaq 0x1a6578(%rip), %rcx    # 0x2188d0
cmpq $0x1, (%rcx)
sete %dl
leaq 0x1a8c6e(%rip), %rcx    # 0x21afd4
cmpl $0x41, (%rcx)
sete %cl
andb %dl, %cl
leaq 0x1a6583(%rip), %rdx    # 0x2188f8
movl (%rdx), %edx
cmpl $0x47, %edx
sete %sil
testb %sil, %cl
jne 0x723d2
testb %cl, %cl
je 0x72395
cmpl $0x33, %edx
je 0x723d2
cmpl $0x47, %edx
je 0x723d2
testb %cl, %cl
jne 0x723d2
movzbl %al, %ecx
cmpl $0x10, %ecx
jg 0x723ac
leal -0x3(%rcx), %edx
cmpl $0x2, %edx
jb 0x723c9
cmpl $0x1, %ecx
je 0x723c9
jmp 0x723c3
cmpl $0x14, %ecx
je 0x723bf
cmpl $0x13, %ecx
je 0x723c7
cmpl $0x11, %ecx
jne 0x723c3
movb $0x1, %al
jmp 0x723c9
movb $0x4, %al
jmp 0x723c9
movb $0x63, %al
jmp 0x723c9
movb $0x3, %al
leaq 0x29ad00(%rip), %rcx    # 0x30d0d0
movb %al, (%rcx)
callq 0x587d1
cmpl $0x100, %eax            # imm = 0x100
jb 0x723e8
leaq 0x1ccb8b(%rip), %rax    # 0x23ef70
orb $0x8, (%rax)
callq 0x587d1
cmpl $0x100, %eax            # imm = 0x100
jb 0x723fe
leaq 0x1ccb75(%rip), %rax    # 0x23ef70
orb $0x8, (%rax)
callq 0x587d1
cmpl $0x100, %eax            # imm = 0x100
jb 0x72414
leaq 0x1ccb5f(%rip), %rax    # 0x23ef70
orb $0x8, (%rax)
callq 0x587d1
cmpl $0x100, %eax            # imm = 0x100
jb 0x7242a
leaq 0x1ccb49(%rip), %rax    # 0x23ef70
orb $0x8, (%rax)
leaq 0x1b10b3(%rip), %rbx    # 0x2234e4
movl $0x0, (%rbx)
callq 0x58aae
cvtss2sd %xmm0, %xmm0
leaq 0x1b10a1(%rip), %r14    # 0x2234e8
movsd %xmm0, (%r14)
callq 0x58aae
cvtss2sd %xmm0, %xmm0
leaq 0x1b1094(%rip), %r15    # 0x2234f0
movsd %xmm0, (%r15)
callq 0x58aae
cvtss2sd %xmm0, %xmm0
leaq 0x1b1087(%rip), %r12    # 0x2234f8
movsd %xmm0, (%r12)
callq 0x58aae
cvtss2sd %xmm0, %xmm1
leaq 0x1b1081(%rip), %rax    # 0x223508
movsd %xmm1, (%rax)
movsd (%r14), %xmm1
ucomisd 0x996a0(%rip), %xmm1    # 0x10bb38
movabsq $0x4034000000000000, %rcx # imm = 0x4034000000000000
jbe 0x724a7
movq %rcx, (%r14)
movsd (%r15), %xmm1
ucomisd 0x99684(%rip), %xmm1    # 0x10bb38
jbe 0x724b9
movq %rcx, (%r15)
movsd (%r12), %xmm1
ucomisd 0x99671(%rip), %xmm1    # 0x10bb38
jbe 0x724cd
movq %rcx, (%r12)
ucomiss 0xac4cc(%rip), %xmm0    # 0x11e9a0
jbe 0x724d9
movq %rcx, (%rax)
orb $0x17, (%rbx)
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq