// File: jkingan[P]ladyheather/heathgps.cpp
// Function: get_rcvr_message()
void get_rcvr_message()
{
   // get bytes from serial port and build up a receiver message.  When message
   // is complete, parse it and to what it says.
//NEW_RCVR

   if(need_msg_init) {
      init_messages(need_msg_init, 1);
   }

   if(1 && sim_eof && autoscale_lla) {  //llascale
      Sleep(200);
      show_mouse_lla();
      show_param_values(1); //simeof
   }  
   else if(rcvr_type == ACRON_RCVR)  get_acron_message();
   else if(rcvr_type == BRANDY_RCVR) get_brandy_message(); 
   else if(rcvr_type == CS_RCVR)     get_cs_message(); 
   else if(rcvr_type == ESIP_RCVR)   get_nmea_message();
   else if(rcvr_type == FURUNO_RCVR) get_nmea_message();
   else if(rcvr_type == GPSD_RCVR)   get_gpsd_message();
   else if(rcvr_type == LUXOR_RCVR)  get_tsip_message();
   else if(rcvr_type == LPFRS_RCVR)  get_prs_message(); 
   else if(rcvr_type == MOTO_RCVR)   get_moto_message();
   else if(rcvr_type == RT17_RCVR)   get_rt17_message();
   else if(rcvr_type == NMEA_RCVR)   get_nmea_message();
   else if(rcvr_type == NO_RCVR)     get_norcvr_message();
   else if(rcvr_type == NVS_RCVR)    get_nvs_message();    // NVS format is basically TSIP
   else if(rcvr_type == PRS_RCVR)    get_prs_message(); 
   else if(rcvr_type == RFTG_RCVR)   get_rftg_message(); 
   else if(rcvr_type == SCPI_RCVR)   get_scpi_message(); 
   else if(rcvr_type == SIRF_RCVR)   get_sirf_message(); 
   else if(rcvr_type == SA35_RCVR)   get_prs_message(); 
   else if(rcvr_type == SRO_RCVR)    get_prs_message(); 
   else if(rcvr_type == STAR_RCVR)   get_star_message(); 
   else if(rcvr_type == SS_RCVR)     get_ss_message(); 
   else if(rcvr_type == TAIP_RCVR)   get_taip_message();
   else if(rcvr_type == THERMO_RCVR) get_rcvr_enviro_message(RCVR_PORT);
   else if(rcvr_type == TICC_RCVR)   get_rcvr_ticc_message(RCVR_PORT);
   else if(rcvr_type == TIDE_RCVR)   get_norcvr_message(); 
   else if(rcvr_type == TM4_RCVR)    get_tm4_message(); 
   else if(rcvr_type == TRUE_RCVR)   get_nmea_message();
   else if(rcvr_type == TSERVE_RCVR) get_tserve_message();
   else if(rcvr_type == TSIP_RCVR)   get_tsip_message();
   else if(rcvr_type == UCCM_RCVR)   get_uccm_message();
   else if(rcvr_type == UBX_RCVR)    get_ubx_message();
   else if(rcvr_type == VENUS_RCVR)  get_venus_message();
   else if(rcvr_type == X72_RCVR)    get_x72_message(); 
   else if(rcvr_type == Z12_RCVR)    get_z12_message();
   else if(rcvr_type == ZODIAC_RCVR) get_zod_message();
   else if(rcvr_type == ZYFER_RCVR)  get_nmea_message();
   else                              get_unkn_message();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x170d95(%rip), %rax    # 0x27a210
cmpl $0x0, (%rax)
je 0x109493
leaq 0x170d89(%rip), %rax    # 0x27a210
movl (%rax), %edi
movl $0x1, %esi
callq 0x86290
leaq 0x19411e(%rip), %rax    # 0x29d5b8
cmpl $0x0, (%rax)
je 0x1094c9
leaq 0x290fee(%rip), %rax    # 0x39a494
cmpl $0x0, (%rax)
je 0x1094c9
movl $0xc8, %edi
callq 0xb8b0
callq 0x15b1f0
movl $0x1, %edi
callq 0xa51c0
jmp 0x1098c3
leaq 0x16e5e0(%rip), %rax    # 0x277ab0
cmpq $0x4000, (%rax)         # imm = 0x4000
jne 0x1094e3
callq 0xe1ab0
jmp 0x1098c1
leaq 0x16e5c6(%rip), %rax    # 0x277ab0
cmpq $0x40000, (%rax)        # imm = 0x40000
jne 0x1094fd
callq 0xbdbb0
jmp 0x1098bf
leaq 0x16e5ac(%rip), %rax    # 0x277ab0
cmpq $0x20000, (%rax)        # imm = 0x20000
jne 0x109517
callq 0xdb9b0
jmp 0x1098bd
movl $0x80000000, %ecx       # imm = 0x80000000
leaq 0x16e58d(%rip), %rax    # 0x277ab0
cmpq %rcx, (%rax)
jne 0x109532
callq 0xb8480
jmp 0x1098bb
leaq 0x16e577(%rip), %rax    # 0x277ab0
cmpq $0x20000000, (%rax)     # imm = 0x20000000
jne 0x10954c
callq 0xb8480
jmp 0x1098b9
leaq 0x16e55d(%rip), %rax    # 0x277ab0
cmpq $0x200, (%rax)          # imm = 0x200
jne 0x109566
callq 0xe3770
jmp 0x1098b7
leaq 0x16e543(%rip), %rax    # 0x277ab0
cmpq $0x2000, (%rax)         # imm = 0x2000
jne 0x109580
callq 0xaeb50
jmp 0x1098b5
leaq 0x16e529(%rip), %rax    # 0x277ab0
cmpq $0x10000000, (%rax)     # imm = 0x10000000
jne 0x10959a
callq 0xc21c0
jmp 0x1098b3
leaq 0x16e50f(%rip), %rax    # 0x277ab0
cmpq $0x20, (%rax)
jne 0x1095b1
callq 0xd5940
jmp 0x1098b1
movabsq $0x200000000, %rcx      # imm = 0x200000000
leaq 0x16e4ee(%rip), %rax    # 0x277ab0
cmpq %rcx, (%rax)
jne 0x1095d1
callq 0xb0680
jmp 0x1098af
leaq 0x16e4d8(%rip), %rax    # 0x277ab0
cmpq $0x2, (%rax)
jne 0x1095e8
callq 0xb8480
jmp 0x1098ad
leaq 0x16e4c1(%rip), %rax    # 0x277ab0
cmpq $0x400, (%rax)          # imm = 0x400
jne 0x109602
callq 0xb2630
jmp 0x1098ab
leaq 0x16e4a7(%rip), %rax    # 0x277ab0
cmpq $0x800, (%rax)          # imm = 0x800
jne 0x10961c
callq 0xe5760
jmp 0x1098a9
leaq 0x16e48d(%rip), %rax    # 0x277ab0
cmpq $0x1000000, (%rax)      # imm = 0x1000000
jne 0x109636
callq 0xc21c0
jmp 0x1098a7
leaq 0x16e473(%rip), %rax    # 0x277ab0
cmpq $0x400000, (%rax)       # imm = 0x400000
jne 0x109650
callq 0xbbef0
jmp 0x1098a5
leaq 0x16e459(%rip), %rax    # 0x277ab0
cmpq $0x10, (%rax)
jne 0x109667
callq 0xd98c0
jmp 0x1098a3
leaq 0x16e442(%rip), %rax    # 0x277ab0
cmpq $0x40, (%rax)
jne 0x10967e
callq 0xcd540
jmp 0x1098a1
movabsq $0x1000000000, %rcx     # imm = 0x1000000000
leaq 0x16e421(%rip), %rax    # 0x277ab0
cmpq %rcx, (%rax)
jne 0x10969e
callq 0xc21c0
jmp 0x10989f
leaq 0x16e40b(%rip), %rax    # 0x277ab0
cmpq $0x8000000, (%rax)      # imm = 0x8000000
jne 0x1096b8
callq 0xc21c0
jmp 0x10989d
leaq 0x16e3f1(%rip), %rax    # 0x277ab0
cmpq $0x1000, (%rax)         # imm = 0x1000
jne 0x1096d2
callq 0xc9410
jmp 0x10989b
movabsq $0x800000000, %rcx      # imm = 0x800000000
leaq 0x16e3cd(%rip), %rax    # 0x277ab0
cmpq %rcx, (%rax)
jne 0x1096f2
callq 0xba540
jmp 0x109899
leaq 0x16e3b7(%rip), %rax    # 0x277ab0
cmpq $0x8000, (%rax)         # imm = 0x8000
jne 0x10970c
callq 0xdeaf0
jmp 0x109897
leaq 0x16e39d(%rip), %rax    # 0x277ab0
cmpq $0x80000, (%rax)        # imm = 0x80000
jne 0x10972b
movl $0xa, %edi
callq 0xea120
jmp 0x109895
leaq 0x16e37e(%rip), %rax    # 0x277ab0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x10974a
movl $0xa, %edi
callq 0xebff0
jmp 0x109893
leaq 0x16e35f(%rip), %rax    # 0x277ab0
cmpq $0x800000, (%rax)       # imm = 0x800000
jne 0x109764
callq 0xb2630
jmp 0x109891
movabsq $0x400000000, %rcx      # imm = 0x400000000
leaq 0x16e33b(%rip), %rax    # 0x277ab0
cmpq %rcx, (%rax)
jne 0x109784
callq 0xe0db0
jmp 0x10988f
leaq 0x16e325(%rip), %rax    # 0x277ab0
cmpq $0x200000, (%rax)       # imm = 0x200000
jne 0x10979e
callq 0xb8480
jmp 0x10988d
leaq 0x16e30b(%rip), %rax    # 0x277ab0
cmpq $0x40000000, (%rax)     # imm = 0x40000000
jne 0x1097b8
callq 0xdf0a0
jmp 0x10988b
leaq 0x16e2f1(%rip), %rax    # 0x277ab0
cmpq $0x1, (%rax)
jne 0x1097cf
callq 0xaeb50
jmp 0x109889
leaq 0x16e2da(%rip), %rax    # 0x277ab0
cmpq $0x8, (%rax)
jne 0x1097e6
callq 0xdb4e0
jmp 0x109887
leaq 0x16e2c3(%rip), %rax    # 0x277ab0
cmpq $0x4, (%rax)
jne 0x1097fd
callq 0xcc2a0
jmp 0x109885
leaq 0x16e2ac(%rip), %rax    # 0x277ab0
cmpq $0x80, (%rax)
jne 0x109814
callq 0xcfcb0
jmp 0x109883
leaq 0x16e295(%rip), %rax    # 0x277ab0
cmpq $0x2000000, (%rax)      # imm = 0x2000000
jne 0x10982b
callq 0xc4ad0
jmp 0x109881
movabsq $0x100000000, %rcx      # imm = 0x100000000
leaq 0x16e274(%rip), %rax    # 0x277ab0
cmpq %rcx, (%rax)
jne 0x109848
callq 0xb6050
jmp 0x10987f
leaq 0x16e261(%rip), %rax    # 0x277ab0
cmpq $0x100, (%rax)          # imm = 0x100
jne 0x10985f
callq 0xd1610
jmp 0x10987d
leaq 0x16e24a(%rip), %rax    # 0x277ab0
cmpq $0x100000, (%rax)       # imm = 0x100000
jne 0x109876
callq 0xb8480
jmp 0x10987b
callq 0x7a300
jmp 0x10987d
jmp 0x10987f
jmp 0x109881
jmp 0x109883
jmp 0x109885
jmp 0x109887
jmp 0x109889
jmp 0x10988b
jmp 0x10988d
jmp 0x10988f
jmp 0x109891
jmp 0x109893
jmp 0x109895
jmp 0x109897
jmp 0x109899
jmp 0x10989b
jmp 0x10989d
jmp 0x10989f
jmp 0x1098a1
jmp 0x1098a3
jmp 0x1098a5
jmp 0x1098a7
jmp 0x1098a9
jmp 0x1098ab
jmp 0x1098ad
jmp 0x1098af
jmp 0x1098b1
jmp 0x1098b3
jmp 0x1098b5
jmp 0x1098b7
jmp 0x1098b9
jmp 0x1098bb
jmp 0x1098bd
jmp 0x1098bf
jmp 0x1098c1
jmp 0x1098c3
popq %rbp
retq
nopw %cs:(%rax,%rax)