LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: set_terminal_params()
void set_terminal_params()
{
char *s;

   // setup terminal emulattor port and hex/ascii flag

   strupr(edit_buffer);
   s = trim_whitespace(edit_buffer);
   if(s == 0) return;

   if(isdigit(s[0])) {
      term_port = atoi(s);
   }
   if(strchr(s, 'D')) term_port = DAC_PORT;
   if(strchr(s, 'E')) term_port = ECHO_PORT;
   if(strchr(s, 'F')) term_port = FAN_PORT;
   if(strchr(s, 'I')) term_port = TICC_PORT;
   if(strchr(s, 'K')) term_port = NMEA_PORT;
   if(strchr(s, 'N')) term_port = THERMO_PORT;
   if(strchr(s, 'R')) term_port = RCVR_PORT;
   if(strchr(s, 'T')) term_port = TRACK_PORT;

   if(strchr(s, 'A')) term_hex = 0;
   if(strchr(s, 'H')) term_hex = 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0x2f6ddf(%rip), %rbx    # 0x3292e0
movq %rbx, %rdi
callq 0x988f
movq %rbx, %rdi
callq 0x9f43
testq %rax, %rax
je 0x32658
movq %rax, %rbx
movsbl (%rax), %eax
addl $-0x30, %eax
cmpl $0x9, %eax
ja 0x32539
movq %rbx, %rdi
callq 0x95e0
leaq 0x2c5d9d(%rip), %rcx    # 0x2f82d4
movl %eax, (%rcx)
pushq $0x44
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32556
leaq 0x2c5d84(%rip), %rax    # 0x2f82d4
movl $0x10, (%rax)
pushq $0x45
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32573
leaq 0x2c5d67(%rip), %rax    # 0x2f82d4
movl $0xb, (%rax)
pushq $0x46
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32590
leaq 0x2c5d4a(%rip), %rax    # 0x2f82d4
movl $0x11, (%rax)
pushq $0x49
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x325ad
leaq 0x2c5d2d(%rip), %rax    # 0x2f82d4
movl $0xd, (%rax)
pushq $0x4b
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x325ca
leaq 0x2c5d10(%rip), %rax    # 0x2f82d4
movl $0xc, (%rax)
pushq $0x4e
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x325e7
leaq 0x2c5cf3(%rip), %rax    # 0x2f82d4
movl $0xf, (%rax)
pushq $0x52
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32604
leaq 0x2c5cd6(%rip), %rax    # 0x2f82d4
movl $0xa, (%rax)
pushq $0x54
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32621
leaq 0x2c5cb9(%rip), %rax    # 0x2f82d4
movl $0x12, (%rax)
pushq $0x41
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x3263b
leaq 0x1f5e08(%rip), %rax    # 0x228440
andl $0x0, (%rax)
pushq $0x48
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32658
leaq 0x1f5dee(%rip), %rax    # 0x228440
movl $0x1, (%rax)
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: set_monitor_params()
void set_monitor_params()
{
char *s;

   // setup monitor port and hex/ascii flag

   strupr(edit_buffer);

   s = trim_whitespace(edit_buffer);
   if(s == 0) return;

   if(isdigit(s[0])) {
      monitor_port = atoi(s);
   }
   if(strchr(s, 'D')) monitor_port = DAC_PORT;
   if(strchr(s, 'E')) monitor_port = ECHO_PORT;
   if(strchr(s, 'F')) monitor_port = FAN_PORT;
   if(strchr(s, 'I')) monitor_port = TICC_PORT;
   if(strchr(s, 'K')) monitor_port = NMEA_PORT;
   if(strchr(s, 'N')) monitor_port = THERMO_PORT;
   if(strchr(s, 'R')) monitor_port = RCVR_PORT;
   if(strchr(s, 'T')) monitor_port = TRACK_PORT;

   if(strchr(s, 'A')) monitor_hex = 0;
   if(strchr(s, 'H')) monitor_hex = 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0x2f6c74(%rip), %rbx    # 0x3292e0
movq %rbx, %rdi
callq 0x988f
movq %rbx, %rdi
callq 0x9f43
testq %rax, %rax
je 0x327c3
movq %rax, %rbx
movsbl (%rax), %eax
addl $-0x30, %eax
cmpl $0x9, %eax
ja 0x326a4
movq %rbx, %rdi
callq 0x95e0
leaq 0x2c5c2e(%rip), %rcx    # 0x2f82d0
movl %eax, (%rcx)
pushq $0x44
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x326c1
leaq 0x2c5c15(%rip), %rax    # 0x2f82d0
movl $0x10, (%rax)
pushq $0x45
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x326de
leaq 0x2c5bf8(%rip), %rax    # 0x2f82d0
movl $0xb, (%rax)
pushq $0x46
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x326fb
leaq 0x2c5bdb(%rip), %rax    # 0x2f82d0
movl $0x11, (%rax)
pushq $0x49
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32718
leaq 0x2c5bbe(%rip), %rax    # 0x2f82d0
movl $0xd, (%rax)
pushq $0x4b
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32735
leaq 0x2c5ba1(%rip), %rax    # 0x2f82d0
movl $0xc, (%rax)
pushq $0x4e
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x32752
leaq 0x2c5b84(%rip), %rax    # 0x2f82d0
movl $0xf, (%rax)
pushq $0x52
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x3276f
leaq 0x2c5b67(%rip), %rax    # 0x2f82d0
movl $0xa, (%rax)
pushq $0x54
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x3278c
leaq 0x2c5b4a(%rip), %rax    # 0x2f82d0
movl $0x12, (%rax)
pushq $0x41
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x327a6
leaq 0x1f5ca1(%rip), %rax    # 0x228444
andl $0x0, (%rax)
pushq $0x48
popq %rsi
movq %rbx, %rdi
callq 0x9100
testq %rax, %rax
je 0x327c3
leaq 0x1f5c87(%rip), %rax    # 0x228444
movl $0x1, (%rax)
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_mode()
void edit_ticc_mode()
{
int i;
unsigned port;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   strupr(edit_buffer);
   i = edit_buffer[0];
   if     (i == 'T') ; // timestamp
   else if(i == 'I') ; // interval
   else if(i == 'P') ; // period
   else if(i == 'F') { // frequency
      if(ticc_type == TAPR_TICC) goto bad_mode;   // frequency
   }
   else if(i == 'H') { // phase
      if(ticc_type == TAPR_TICC) goto bad_mode;   // phase
   }
   else if(ticc_type != TAPR_TICC) {
      goto bad_mode;
   }
   else if(i == 'D') ;
   else if(i == 'L') ;
   else {
      bad_mode:
      sprintf(out, "Invalid TICC mode: %c", i);
      edit_error(out);
      return;
   }

   if(ticc_type != TAPR_TICC) {
      ticc_mode = i;
      have_ticc_mode = i;
      new_queue(RESET_ALL_QUEUES, 222);
   }
   else {
      sprintf(out, "M%c", i);
      set_ticc_config(port, out);
      get_ticc_config(port);
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
leaq 0x1d00f8(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x327e5
pushq $0xa
jmp 0x327f4
callq 0x66b41
testl %eax, %eax
je 0x3287c
pushq $0xd
popq %rbx
leaq 0x2f6ae4(%rip), %r14    # 0x3292e0
movq %r14, %rdi
callq 0x988f
movzbl (%r14), %eax
movsbl %al, %edx
cmpl $0x54, %eax
je 0x3284d
cmpl $0x48, %eax
je 0x32824
cmpl $0x49, %eax
je 0x3284d
cmpl $0x50, %eax
je 0x3284d
cmpl $0x46, %eax
jne 0x3288c
leaq 0x1d00dd(%rip), %rax    # 0x202908
cmpl $0x54, (%rax)
jne 0x32859
leaq 0x2f39e9(%rip), %rbx    # 0x326220
leaq 0xcd2bd(%rip), %rsi     # 0xffafb
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movq %rbx, %rdi
jmp 0x32883
leaq 0x1d00b4(%rip), %rax    # 0x202908
cmpl $0x54, (%rax)
je 0x3289e
leaq 0x2c44ac(%rip), %rax    # 0x2f6d0c
movl %edx, (%rax)
leaq 0x2c44a7(%rip), %rax    # 0x2f6d10
movl %edx, (%rax)
pushq $0x7
popq %rdi
movl $0xde, %esi
popq %rbx
popq %r14
popq %rbp
jmp 0x10a99
leaq 0xcd262(%rip), %rdi     # 0xffae5
popq %rbx
popq %r14
popq %rbp
jmp 0x214df
andb $-0x9, %al
cmpb $0x44, %al
jne 0x32830
leaq 0x1d006f(%rip), %rax    # 0x202908
cmpl $0x54, (%rax)
jne 0x32830
leaq 0x2f397b(%rip), %r14    # 0x326220
leaq 0xcd265(%rip), %rsi     # 0xffb11
movq %r14, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r14, %rsi
callq 0x5c48b
movl %ebx, %edi
popq %rbx
popq %r14
popq %rbp
jmp 0x5c606
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_sync()
void edit_ticc_sync()
{
int i;
unsigned port;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   strupr(edit_buffer);  // aaaacccc
   i = edit_buffer[0];
   if     (i == 'M') ;
   else if(i == 'S') ;
   else {
      sprintf(out, "Invalid TICC sync mode: %c", i);
      edit_error(out);
   }
   sprintf(out, "Y%c", i);

   set_ticc_config(port, out);
   get_ticc_config(port);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
leaq 0x1cfff4(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x328e9
pushq $0xa
jmp 0x328f4
callq 0x66b41
testl %eax, %eax
je 0x3296f
pushq $0xd
popq %rbx
leaq 0x2f69e4(%rip), %r14    # 0x3292e0
movq %r14, %rdi
callq 0x988f
movzbl (%r14), %eax
movsbl %al, %r14d
cmpl $0x4d, %eax
je 0x32939
cmpl $0x53, %eax
je 0x32939
leaq 0x2f3903(%rip), %r15    # 0x326220
leaq 0xcd1f1(%rip), %rsi     # 0xffb15
movq %r15, %rdi
movl %r14d, %edx
xorl %eax, %eax
callq 0x9060
movq %r15, %rdi
callq 0x214df
leaq 0x2f38e0(%rip), %r15    # 0x326220
leaq 0xcd1e9(%rip), %rsi     # 0xffb30
movq %r15, %rdi
movl %r14d, %edx
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r15, %rsi
callq 0x5c48b
movl %ebx, %edi
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
jmp 0x5c606
leaq 0xcd16f(%rip), %rdi     # 0xffae5
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_fudge()
void edit_ticc_fudge()
{
double val1, val2, val3, val4;
unsigned port;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   val1 = fudge_a;  // aaaacccc
   val2 = fudge_b;
   val3 = fudge_c;
   val4 = fudge_d;
   sscanf(edit_buffer, "%lf %lf %lf %lf", &val1, &val2, &val3, &val4);

   sprintf(out, "GA%d", (int) val1);
   set_ticc_config(port, out);

   sprintf(out, "GB%d", (int) val2);
   set_ticc_config(port, out);

   get_ticc_config(port);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x28, %rsp
leaq 0x1cff37(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x329a6
pushq $0xa
jmp 0x329b5
callq 0x66b41
testl %eax, %eax
je 0x32a7a
pushq $0xd
popq %rbx
leaq 0x2c4393(%rip), %rax    # 0x2f6d50
movsd (%rax), %xmm0
leaq -0x38(%rbp), %r15
movsd %xmm0, (%r15)
leaq 0x2c4387(%rip), %rax    # 0x2f6d58
movsd (%rax), %xmm0
leaq -0x30(%rbp), %r14
movsd %xmm0, (%r14)
leaq 0x2c437b(%rip), %rax    # 0x2f6d60
movsd (%rax), %xmm0
leaq -0x28(%rbp), %r8
movsd %xmm0, (%r8)
leaq 0x2c436f(%rip), %rax    # 0x2f6d68
movsd (%rax), %xmm0
leaq -0x20(%rbp), %r9
movsd %xmm0, (%r9)
leaq 0x2f68d3(%rip), %rdi    # 0x3292e0
leaq 0xcd120(%rip), %rsi     # 0xffb34
movq %r15, %rdx
movq %r14, %rcx
xorl %eax, %eax
callq 0x9350
cvttsd2si (%r15), %edx
leaq 0x2f37f3(%rip), %r15    # 0x326220
leaq 0xcd110(%rip), %rsi     # 0xffb44
movq %r15, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r15, %rsi
callq 0x5c48b
cvttsd2si (%r14), %edx
leaq 0xcd0f5(%rip), %rsi     # 0xffb49
movq %r15, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r15, %rsi
callq 0x5c48b
movl %ebx, %edi
callq 0x5c606
addq $0x28, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
leaq 0xcd064(%rip), %rdi     # 0xffae5
addq $0x28, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_time2()
void edit_ticc_time2()
{
int val1, val2, val3, val4;
unsigned port;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   val1 = time2_a;  // aaaacccc
   val2 = time2_b;
   val3 = time2_c;
   val4 = time2_d;
   sscanf(edit_buffer, "%d %d %d %d", &val1, &val2, &val3, &val4);

   sprintf(out, "FA%d", (int) val1);
   set_ticc_config(port, out);

   sprintf(out, "FB%d", (int) val2);
   set_ticc_config(port, out);

   get_ticc_config(port);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x18, %rsp
leaq 0x1cfe2c(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x32ab1
pushq $0xa
jmp 0x32ac0
callq 0x66b41
testl %eax, %eax
je 0x32b71
pushq $0xd
popq %rbx
leaq 0x2c42c0(%rip), %rax    # 0x2f6d88
movl (%rax), %eax
leaq -0x28(%rbp), %r15
movl %eax, (%r15)
leaq 0x2c42b4(%rip), %rax    # 0x2f6d8c
movl (%rax), %eax
leaq -0x24(%rbp), %r14
movl %eax, (%r14)
leaq 0x2c42a8(%rip), %rax    # 0x2f6d90
movl (%rax), %eax
leaq -0x20(%rbp), %r8
movl %eax, (%r8)
leaq 0x2c429c(%rip), %rax    # 0x2f6d94
movl (%rax), %eax
leaq -0x1c(%rbp), %r9
movl %eax, (%r9)
leaq 0x2f67d8(%rip), %rdi    # 0x3292e0
leaq 0xc1055(%rip), %rsi     # 0xf3b64
movq %r15, %rdx
movq %r14, %rcx
xorl %eax, %eax
callq 0x9350
movl (%r15), %edx
leaq 0x2f36fa(%rip), %r15    # 0x326220
leaq 0xcd021(%rip), %rsi     # 0xffb4e
movq %r15, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r15, %rsi
callq 0x5c48b
movl (%r14), %edx
leaq 0xcd008(%rip), %rsi     # 0xffb53
movq %r15, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r15, %rsi
callq 0x5c48b
movl %ebx, %edi
callq 0x5c606
addq $0x18, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
leaq 0xccf6d(%rip), %rdi     # 0xffae5
addq $0x18, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_tune()
void edit_ticc_tune()
{
unsigned port;
int val;
int min_time;

   dac_dac = 0;
   min_time = 30;
   if(rcvr_type == X72_RCVR) {
      port = RCVR_PORT;
      min_time = 600;
   }
   else if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   val = (int) atof(edit_buffer);

   if(val >= min_time) {  // start analyzing pps drift
      ticc_tune_time = val;
      dac_dac = 1;
   }
   else if(val) {
      sprintf(out, "Autotune time must be >= %d seconds.", min_time);
      edit_error(out);
   }
   else if(dac_dac) {
      dac_dac = 0;
      edit_error("Auto tune canceled");
   }

   return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
leaq 0x2f2c87(%rip), %r14    # 0x32581c
andl $0x0, (%r14)
leaq 0x1cfd30(%rip), %rax    # 0x2028d0
movq (%rax), %rax
cmpq $0x2000000, %rax        # imm = 0x2000000
je 0x32bc1
cmpq $0x10000, %rax          # imm = 0x10000
je 0x32bbc
callq 0x66b41
testl %eax, %eax
je 0x32c25
pushq $0x1e
popq %rbx
jmp 0x32bc6
movl $0x258, %ebx            # imm = 0x258
leaq 0x2f6713(%rip), %rdi    # 0x3292e0
callq 0x9470
cvttsd2si %xmm0, %eax
cmpl %eax, %ebx
jle 0x32bfd
testl %eax, %eax
je 0x32c12
leaq 0x2f363b(%rip), %r14    # 0x326220
leaq 0xccf6c(%rip), %rsi     # 0xffb58
movq %r14, %rdi
movl %ebx, %edx
xorl %eax, %eax
callq 0x9060
movq %r14, %rdi
jmp 0x32c2c
leaq 0x2c408c(%rip), %rcx    # 0x2f6c90
movl %eax, (%rcx)
movl $0x1, (%r14)
popq %rbx
popq %r14
popq %rbp
retq
cmpl $0x0, (%r14)
je 0x32c0d
andl $0x0, (%r14)
leaq 0xccf5a(%rip), %rdi     # 0xffb7d
jmp 0x32c2c
leaq 0xcceb9(%rip), %rdi     # 0xffae5
popq %rbx
popq %r14
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_dilat()
void edit_ticc_dilat()
{
int val1, val2, val3, val4;
unsigned port;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   val1 = dilat_a;  // aaaacccc
   val2 = dilat_b;
   val3 = dilat_c;
   val4 = dilat_d;
   sscanf(edit_buffer, "%d %d %d %d", &val1, &val2, &val3, &val4);

   sprintf(out, "DA%d", (int) val1);
   set_ticc_config(port, out);

   sprintf(out, "DB%d", (int) val2);
   set_ticc_config(port, out);

   get_ticc_config(port);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x18, %rsp
leaq 0x1cfc87(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x32c56
pushq $0xa
jmp 0x32c65
callq 0x66b41
testl %eax, %eax
je 0x32d16
pushq $0xd
popq %rbx
leaq 0x2c412f(%rip), %rax    # 0x2f6d9c
movl (%rax), %eax
leaq -0x28(%rbp), %r15
movl %eax, (%r15)
leaq 0x2c4123(%rip), %rax    # 0x2f6da0
movl (%rax), %eax
leaq -0x24(%rbp), %r14
movl %eax, (%r14)
leaq 0x2c4117(%rip), %rax    # 0x2f6da4
movl (%rax), %eax
leaq -0x20(%rbp), %r8
movl %eax, (%r8)
leaq 0x2c410b(%rip), %rax    # 0x2f6da8
movl (%rax), %eax
leaq -0x1c(%rbp), %r9
movl %eax, (%r9)
leaq 0x2f6633(%rip), %rdi    # 0x3292e0
leaq 0xc0eb0(%rip), %rsi     # 0xf3b64
movq %r15, %rdx
movq %r14, %rcx
xorl %eax, %eax
callq 0x9350
movl (%r15), %edx
leaq 0x2f3555(%rip), %r15    # 0x326220
leaq 0xccebe(%rip), %rsi     # 0xffb90
movq %r15, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r15, %rsi
callq 0x5c48b
movl (%r14), %edx
leaq 0xccea5(%rip), %rsi     # 0xffb95
movq %r15, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r15, %rsi
callq 0x5c48b
movl %ebx, %edi
callq 0x5c606
addq $0x18, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
leaq 0xccdc8(%rip), %rdi     # 0xffae5
addq $0x18, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_edge()
void edit_ticc_edge()
{
char e[4];
char c;
unsigned port;
unsigned i, j;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   e[0] = edge_a;   // aaaacccc
   e[1] = edge_b;
   e[2] = edge_c;
   e[3] = edge_d;

   j = 0;
   strupr(edit_buffer);
   for(i=0; i<strlen(edit_buffer); i++) {  // get R/F chars
      c = edit_buffer[i];
      if(c == 'R') {
         e[j++] = c;
         if(j > 3) break;
      }
      else if(c == 'F') {
         e[j++] = c;
         if(j > 3) break;
      }
      else if(c == ' ') ;
      else if(c == '\t') ;
      else {
         sprintf(out, "%c is not a valid edge select", c);
         edit_error(out);
         return;
      }
   }

   if(e[0]) {
      sprintf(out, "EA %c", e[0]);
      set_ticc_config(port, out);
   }

   if(e[1]) {
      sprintf(out, "EB %c", e[1]);
      set_ticc_config(port, out);
   }

   get_ticc_config(port);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x10, %rsp
leaq 0x1cfb92(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x32d4b
pushq $0xa
jmp 0x32d5a
callq 0x66b41
testl %eax, %eax
je 0x32e30
pushq $0xd
popq %rbx
leaq 0x2c4012(%rip), %rax    # 0x2f6d74
movb (%rax), %al
movb %al, -0x14(%rbp)
leaq 0x2c400a(%rip), %rax    # 0x2f6d78
movb (%rax), %al
movb %al, -0x13(%rbp)
leaq 0x2f6566(%rip), %r14    # 0x3292e0
movq %r14, %rdi
callq 0x988f
movq %r14, %rdi
callq 0x9120
xorl %ecx, %ecx
xorl %edx, %edx
movl %ecx, %ecx
cmpq %rcx, %rax
jbe 0x32dcd
movzbl (%r14,%rcx), %esi
cmpl $0x9, %esi
je 0x32dc9
cmpl $0x20, %esi
je 0x32dc9
movl %edx, %edi
cmpl $0x46, %esi
je 0x32dbd
cmpl $0x52, %esi
jne 0x32e39
incl %edx
movb $0x52, -0x14(%rbp,%rdi)
jmp 0x32dc4
incl %edx
movb $0x46, -0x14(%rbp,%rdi)
cmpl $0x3, %edx
ja 0x32dcd
incl %ecx
jmp 0x32d8e
movsbl -0x14(%rbp), %edx
testl %edx, %edx
je 0x32df7
leaq 0x2f3444(%rip), %r14    # 0x326220
leaq 0xccdd5(%rip), %rsi     # 0xffbb8
movq %r14, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r14, %rsi
callq 0x5c48b
movsbl -0x13(%rbp), %edx
testl %edx, %edx
je 0x32e21
leaq 0x2f341a(%rip), %r14    # 0x326220
leaq 0xccdb1(%rip), %rsi     # 0xffbbe
movq %r14, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r14, %rsi
callq 0x5c48b
movl %ebx, %edi
addq $0x10, %rsp
popq %rbx
popq %r14
popq %rbp
jmp 0x5c606
leaq 0xcccae(%rip), %rdi     # 0xffae5
jmp 0x32e58
movsbl %sil, %edx
leaq 0x2f33dc(%rip), %rbx    # 0x326220
leaq 0xccd4f(%rip), %rsi     # 0xffb9a
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movq %rbx, %rdi
addq $0x10, %rsp
popq %rbx
popq %r14
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_cal()
void edit_ticc_cal()
{
unsigned port;
int val;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   val = (int) atof(edit_buffer);
   if     (val == 2) ;
   else if(val == 10) ;
   else if(val == 20) ;
   else if(val == 40) ;
   else {
      edit_error("Cal periods must be 2, 10, 20, or 40");
      return;
   }
   sprintf(out, "P%d", val);
   set_ticc_config(port, out);

   get_ticc_config(port);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
leaq 0x1cfa5d(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x32e80
pushq $0xa
jmp 0x32e8b
callq 0x66b41
testl %eax, %eax
je 0x32ede
pushq $0xd
popq %rbx
leaq 0x2f644d(%rip), %rdi    # 0x3292e0
callq 0x9470
cvttsd2si %xmm0, %edx
cmpl $0x28, %edx
ja 0x32ee7
movabsq $0x10000100404, %rax    # imm = 0x10000100404
btq %rdx, %rax
jae 0x32ee7
leaq 0x2f3368(%rip), %r14    # 0x326220
leaq 0xdad3b(%rip), %rsi     # 0x10dbfa
movq %r14, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r14, %rsi
callq 0x5c48b
movl %ebx, %edi
popq %rbx
popq %r14
popq %rbp
jmp 0x5c606
leaq 0xccc00(%rip), %rdi     # 0xffae5
jmp 0x32eee
leaq 0xcccd6(%rip), %rdi     # 0xffbc4
popq %rbx
popq %r14
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_timeout()
void edit_ticc_timeout()
{
unsigned port;
int val;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   val = (int) atof(edit_buffer);
   sprintf(out, "T%d", val);
   set_ticc_config(port, out);

   get_ticc_config(port);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
leaq 0x1cf9cb(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x32f12
pushq $0xa
jmp 0x32f1d
callq 0x66b41
testl %eax, %eax
je 0x32f5b
pushq $0xd
popq %rbx
leaq 0x2f63bb(%rip), %rdi    # 0x3292e0
callq 0x9470
cvttsd2si %xmm0, %edx
leaq 0x2f32eb(%rip), %r14    # 0x326220
leaq 0xc49af(%rip), %rsi     # 0xf78eb
movq %r14, %rdi
xorl %eax, %eax
callq 0x9060
movl %ebx, %edi
movq %r14, %rsi
callq 0x5c48b
movl %ebx, %edi
popq %rbx
popq %r14
popq %rbp
jmp 0x5c606
leaq 0xccb83(%rip), %rdi     # 0xffae5
popq %rbx
popq %r14
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_ticc_speed()
void edit_ticc_speed()
{
unsigned port;
double val;

   if(rcvr_type == TICC_RCVR) port = RCVR_PORT;
   else if(ticc_port_open())  port = TICC_PORT;
   else {
      edit_error("No TICC device found.");
      return;
   }

   val = atof(edit_buffer);
   sprintf(out, "S%.6f", val);
   set_ticc_config(port, out);

   get_ticc_config(port);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
leaq 0x1cf957(%rip), %rax    # 0x2028d0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x32f86
pushq $0xa
jmp 0x32f91
callq 0x66b41
testl %eax, %eax
je 0x32fcb
pushq $0xd
popq %rbx
leaq 0x2f6347(%rip), %rdi    # 0x3292e0
callq 0x9470
leaq 0x2f327b(%rip), %r14    # 0x326220
leaq 0xccc3d(%rip), %rsi     # 0xffbe9
movq %r14, %rdi
movb $0x1, %al
callq 0x9060
movl %ebx, %edi
movq %r14, %rsi
callq 0x5c48b
movl %ebx, %edi
popq %rbx
popq %r14
popq %rbp
jmp 0x5c606
leaq 0xccb13(%rip), %rdi     # 0xffae5
popq %rbx
popq %r14
popq %rbp
jmp 0x214df
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: set_nominal_freqs(double)
void set_nominal_freqs(double dval)
{
    // set nominal freq val and phase wrap interval for all channels.
    if(dval == 0.0) dval = NOMINAL_FREQ;

    nominal_cha_freq = dval;
    nominal_chb_freq = dval;
    nominal_chc_freq = dval;
    nominal_chd_freq = dval;
    if(nominal_cha_freq) cha_phase_wrap_interval = (1.0 / nominal_cha_freq);  // !!!!! what about chc and chd
    if(nominal_chb_freq) chb_phase_wrap_interval = (1.0 / nominal_chb_freq);
    if(nominal_chc_freq) chc_phase_wrap_interval = (1.0 / nominal_chc_freq);  // !!!!! what about chc and chd
    if(nominal_chd_freq) chc_phase_wrap_interval = (1.0 / nominal_chd_freq);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
xorpd %xmm1, %xmm1
cmpeqsd %xmm0, %xmm1
movsd 0xc28f0(%rip), %xmm2    # 0xf5950
andpd %xmm1, %xmm2
andnpd %xmm0, %xmm1
orpd %xmm2, %xmm1
leaq 0x2c38f5(%rip), %rax    # 0x2f6968
movlpd %xmm1, (%rax)
leaq 0x2c38f2(%rip), %rax    # 0x2f6970
movlpd %xmm1, (%rax)
leaq 0x2c38ef(%rip), %rax    # 0x2f6978
movlpd %xmm1, (%rax)
leaq 0x2c38ec(%rip), %rax    # 0x2f6980
movlpd %xmm1, (%rax)
movsd 0xbffd0(%rip), %xmm0    # 0xf3070
divsd %xmm1, %xmm0
leaq 0x2c38dd(%rip), %rax    # 0x2f6988
movsd %xmm0, (%rax)
leaq 0x2c38da(%rip), %rax    # 0x2f6990
movsd %xmm0, (%rax)
leaq 0x2c38d7(%rip), %rax    # 0x2f6998
movsd %xmm0, (%rax)
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: update_delta_t_file()
void update_delta_t_file()
{
FILE *file;

   // write user delta-t value to deltat.dat file

   file = fopen(DELTAT_FILE, "w");
   if(file) {
      fprintf(file, "%.6f\n", user_delta_t);
      fclose(file);
      file = 0;
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0xccb21(%rip), %rdi     # 0xffbf5
leaq 0xd8228(%rip), %rsi     # 0x10b303
callq 0x9430
testq %rax, %rax
je 0x33112
movq %rax, %rbx
leaq 0x2c4401(%rip), %rax    # 0x2f74f0
movsd (%rax), %xmm0
leaq 0xd9050(%rip), %rsi     # 0x10c14a
movq %rbx, %rdi
movb $0x1, %al
callq 0x9560
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0x9360
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: reset_eph_flags()
void reset_eph_flags()
{
int prn;

   for(prn=1; prn<MAX_PRN; prn++) {
      sat[prn].eph_valid = 0;
      sat[prn].eph_flag = 0;
   }
   have_range = 0;
   eph_polled = 0;
}

// Assembly:
movl $0x58c, %eax            # imm = 0x58C
leaq 0x1f31cb(%rip), %rcx    # 0x228fb0
cmpq $0xcd03c, %rax          # imm = 0xCD03C
je 0x35dfe
andl $0x0, (%rcx,%rax)
movb $0x0, -0x42(%rcx,%rax)
addq $0x348, %rax            # imm = 0x348
jmp 0x35de5
pushq %rbp
movq %rsp, %rbp
leaq 0x2c153f(%rip), %rax    # 0x2f7348
andl $0x0, (%rax)
leaq 0x2c1639(%rip), %rax    # 0x2f744c
andl $0x0, (%rax)
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: erase_debug_info()
void erase_debug_info()
{
   debug_text[0] = 0;  // erase debug info strings
   debug_text2[0] = 0;
   debug_text3[0] = 0;
   debug_text4[0] = 0;
   debug_text5[0] = 0;
   debug_text6[0] = 0;
   debug_text7[0] = 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x2f2b7d(%rip), %rax    # 0x3289a0
xorl %ecx, %ecx
movb %cl, (%rax)
leaq 0x2f2cc2(%rip), %rax    # 0x328af0
movb %cl, (%rax)
leaq 0x2f2e09(%rip), %rax    # 0x328c40
movb %cl, (%rax)
leaq 0x2f2f50(%rip), %rax    # 0x328d90
movb %cl, (%rax)
leaq 0x2f3097(%rip), %rax    # 0x328ee0
movb %cl, (%rax)
leaq 0x2f31de(%rip), %rax    # 0x329030
movb %cl, (%rax)
leaq 0x2f3325(%rip), %rax    # 0x329180
movb %cl, (%rax)
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: set_steps()
void set_steps()
{
   scale_step = plot[selected_plot].scale_factor*(DATA_SIZE) 0.01;
   center_step = (DATA_SIZE) 0.0;
   if(plot[selected_plot].ref_scale) {
      center_step = plot[selected_plot].scale_factor/(plot[selected_plot].ref_scale*(DATA_SIZE)10.0);
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x2f3c79(%rip), %rax    # 0x329d58
movslq (%rax), %rax
imulq $0xe8, %rax, %rax
leaq 0x111c40(%rip), %rcx    # 0x147d30
movsd 0x38(%rcx,%rax), %xmm0
movsd 0xbd002(%rip), %xmm1    # 0xf3100
mulsd %xmm0, %xmm1
movsd %xmm1, 0x2f684e(%rip)   # 0x32c958
andq $0x0, 0x2f684e(%rip)    # 0x32c960
movsd 0x10(%rcx,%rax), %xmm1
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm1
jne 0x36124
jnp 0x36138
mulsd 0xbcf7c(%rip), %xmm1    # 0xf30a8
divsd %xmm1, %xmm0
movsd %xmm0, 0x2f6828(%rip)   # 0x32c960
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: config_enviro_plots(int)
void config_enviro_plots(int enable)
{
if(rcvr_type == TIDE_RCVR) return;

    plot[TEMP1].plot_id = "TEMP1";     // [TC1] -> [FIVE]
    plot[TEMP1].units = degc;
    plot[TEMP1].float_center = 1;

    plot[TEMP2].plot_id = "TEMP2";     // [TC2] -> [FIVE]
    plot[TEMP2].units = degc;
    plot[TEMP2].float_center = 1;

    plot[HUMIDITY].plot_id = "RH";
    plot[HUMIDITY].units = "%";
    plot[HUMIDITY].ref_scale = (DATA_SIZE) 1.0;
    plot[HUMIDITY].float_center = 1;

    plot[PRESSURE].plot_id = "Pres";
    plot[PRESSURE].units = "mbar";
    plot[PRESSURE].ref_scale = (DATA_SIZE) 1.0;
    plot[PRESSURE].float_center = 1;

   if(enable && (rcvr_type == THERMO_RCVR)) {
      plot[HUMIDITY].show_plot = 1;
      plot[PRESSURE].show_plot = 1;
      plot[TEMP1].show_plot = 1;
      plot[TEMP2].show_plot = 1;
      plot[ADC3].show_plot = 1;
      plot[ADC4].show_plot = 1;

      plot[TEMP].show_plot = 0;
   }

   if((rcvr_type == THERMO_RCVR) || ((rcvr_type == TIDE_RCVR) && enviro_mode())) {
      plot[ADC3].plot_id = "ADC3";
      plot[ADC3].units = "V";
      plot[ADC3].ref_scale = (DATA_SIZE) 1.0;
      plot[ADC3].float_center = 1;

      plot[ADC4].plot_id = "ADC4";
      plot[ADC4].units = "V";
      plot[ADC4].ref_scale = (DATA_SIZE) 1.0;
      plot[ADC4].float_center = 1;

      plot[HUMIDITY].plot_color = MAGENTA;
      plot[PRESSURE].plot_color = WHITE;
      plot[TEMP1].plot_color = YELLOW;
      plot[TEMP2].plot_color = RED;
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x1cc600(%rip), %rax    # 0x2028d0
movq (%rax), %rsi
cmpq $0x800000, %rsi         # imm = 0x800000
je 0x36434
leaq 0xd1b18(%rip), %rcx     # 0x107dff
leaq 0x111a42(%rip), %rax    # 0x147d30
movq %rcx, 0xf68(%rax)
leaq 0x111a2c(%rip), %rdx    # 0x147d28
movq %rdx, 0xf70(%rax)
movl $0x1, %ecx
movl %ecx, 0xf84(%rax)
leaq 0xc34c8(%rip), %r8      # 0xf97dd
movq %r8, 0x1050(%rax)
movq %rdx, 0x1058(%rax)
movl %ecx, 0x106c(%rax)
leaq 0xd1ad5(%rip), %rdx     # 0x107e05
movq %rdx, 0xd98(%rax)
leaq 0xd664d(%rip), %rdx     # 0x10c98b
movq %rdx, 0xda0(%rax)
movabsq $0x3ff0000000000000, %rdx # imm = 0x3FF0000000000000
movq %rdx, 0xda8(%rax)
movl %ecx, 0xdb4(%rax)
leaq 0xd1aa5(%rip), %r8      # 0x107e08
movq %r8, 0xe80(%rax)
leaq 0xd1a9c(%rip), %r8      # 0x107e0d
movq %r8, 0xe88(%rax)
movq %rdx, 0xe90(%rax)
movl %ecx, 0xe9c(%rax)
testl %edi, %edi
sete %dil
cmpq $0x80000, %rsi          # imm = 0x80000
setne %r8b
orb %dil, %r8b
jne 0x363c5
movl %ecx, 0xdb0(%rax)
movl %ecx, 0xe98(%rax)
movl %ecx, 0xf80(%rax)
movl %ecx, 0x1068(%rax)
movl %ecx, 0x18(%rax)
movl %ecx, 0x100(%rax)
andl $0x0, 0x2d0(%rax)
jmp 0x363ce
cmpq $0x80000, %rsi          # imm = 0x80000
jne 0x36434
leaq 0xd1a13(%rip), %rsi     # 0x107de8
movq %rsi, (%rax)
leaq 0xe32b5(%rip), %rsi     # 0x119694
movq %rsi, 0x8(%rax)
movq %rdx, 0x10(%rax)
movl %ecx, 0x1c(%rax)
leaq 0xd19fc(%rip), %rdi     # 0x107ded
movq %rdi, 0xe8(%rax)
movq %rsi, 0xf0(%rax)
movq %rdx, 0xf8(%rax)
movl %ecx, 0x104(%rax)
movl $0xd, 0xdb8(%rax)
movl $0xf, 0xea0(%rax)
movl $0xe, 0xf88(%rax)
movl $0xc, 0x1070(%rax)
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: config_tide_plots(int)
void config_tide_plots(int enable)
{
    plot[ELEVEN].plot_id = "Lat-t";
    plot[ELEVEN].units = "mm";
    plot[ELEVEN].float_center = 1;

    plot[TWELVE].plot_id = "Lon-t";
    plot[TWELVE].units = "mm";
    plot[TWELVE].float_center = 1;

    plot[THIRTEEN].plot_id = "Alt-t";
    plot[THIRTEEN].units = "mm";
    plot[THIRTEEN].float_center = 1;

    plot[FOURTEEN].plot_id = "Grav";
    plot[FOURTEEN].units = "uGal";
    plot[FOURTEEN].float_center = 1;

    plot[ELEVEN].show_plot = enable;
    plot[TWELVE].show_plot = enable;
    plot[THIRTEEN].show_plot = enable;
    plot[FOURTEEN].show_plot = enable;

    plot[ELEVEN].plot_color = ELEVEN_COLOR;
    plot[TWELVE].plot_color = TWELVE_COLOR;
    plot[THIRTEEN].plot_color = THIRTEEN_COLOR;
    plot[FOURTEEN].plot_color = FOURTEEN_COLOR;

    if((rcvr_type == THERMO_RCVR) || ((rcvr_type == TIDE_RCVR) && enviro_mode())) {
       plot[ADC3].plot_id = "ADC3";
       plot[ADC3].units = "V";
       plot[ADC3].ref_scale = (DATA_SIZE) 1.0;
       plot[ADC3].float_center = 1;

       plot[ADC4].plot_id = "ADC4";
       plot[ADC4].units = "V";
       plot[ADC4].ref_scale = (DATA_SIZE) 1.0;
       plot[ADC4].float_center = 1;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0xd1986(%rip), %rax     # 0x107dc9
leaq 0x1118e6(%rip), %rbx    # 0x147d30
movq %rax, 0xd98(%rbx)
leaq 0xd1977(%rip), %rax     # 0x107dcf
movq %rax, 0xda0(%rbx)
movabsq $0x300000001, %rcx      # imm = 0x300000001
movq %rcx, 0xdb4(%rbx)
leaq 0xd195b(%rip), %rcx     # 0x107dd2
movq %rcx, 0xe80(%rbx)
movq %rax, 0xe88(%rbx)
movabsq $0x200000001, %rcx      # imm = 0x200000001
movq %rcx, 0xe9c(%rbx)
leaq 0xd193b(%rip), %rcx     # 0x107dd8
movq %rcx, 0xf68(%rbx)
movq %rax, 0xf70(%rbx)
movabsq $0x100000001, %rax      # imm = 0x100000001
movq %rax, 0xf84(%rbx)
leaq 0xd191b(%rip), %rax     # 0x107dde
movq %rax, 0x1050(%rbx)
leaq 0xd1912(%rip), %rax     # 0x107de3
movq %rax, 0x1058(%rbx)
movabsq $0x800000001, %rax      # imm = 0x800000001
movq %rax, 0x106c(%rbx)
movl %edi, 0xdb0(%rbx)
movl %edi, 0xe98(%rbx)
movl %edi, 0xf80(%rbx)
movl %edi, 0x1068(%rbx)
leaq 0x1cc3c8(%rip), %rax    # 0x2028d0
movq (%rax), %rax
cmpq $0x80000, %rax          # imm = 0x80000
je 0x36524
cmpq $0x800000, %rax         # imm = 0x800000
jne 0x3656f
callq 0x57eca
testl %eax, %eax
je 0x3656f
leaq 0xd18bd(%rip), %rax     # 0x107de8
movq %rax, (%rbx)
leaq 0xe315f(%rip), %rax     # 0x119694
movq %rax, 0x8(%rbx)
movabsq $0x3ff0000000000000, %rcx # imm = 0x3FF0000000000000
movq %rcx, 0x10(%rbx)
pushq $0x1
popq %rdx
movl %edx, 0x1c(%rbx)
leaq 0xd1899(%rip), %rsi     # 0x107ded
movq %rsi, 0xe8(%rbx)
movq %rax, 0xf0(%rbx)
movq %rcx, 0xf8(%rbx)
movl %edx, 0x104(%rbx)
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: kbd_exit()
void kbd_exit()
{
   // user told the program to exit
   break_flag = 1;
   erase_help();
   vidstr(EDIT_ROW+4, EDIT_COL, RED, "Exiting...");
   refresh_page();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x2eaaa3(%rip), %rax    # 0x321024
movl $0x1, (%rax)
callq 0xe7aa
leaq 0x2f3079(%rip), %rax    # 0x32960c
movl (%rax), %edi
addl $0x4, %edi
leaq 0x2f3071(%rip), %rax    # 0x329610
movl (%rax), %esi
leaq 0xca345(%rip), %rcx     # 0x1008ed
pushq $0xc
popq %rdx
callq 0xe2d2
popq %rbp
jmp 0xaa05
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: share_it()
void share_it()
{
if(0) {
   if(plot_azel == 0)   {
      plot_azel = AZEL_OK;
      shared_plot = 1;
   }
   else if(shared_plot) {
      plot_azel = 0;
      shared_plot = 0;
   }
   else shared_plot = 1;
   if(WIDE_SCREEN && (plot_watch == 0)) shared_plot = 0;  // no need to share plot on wide screens
   //shared_plot = 1;
}
   shared_plot = toggle_value(shared_plot);
if(rcvr_type == NO_RCVR) shared_plot = 0;
   reset_first_key(24);
   prot_menu = 0;
   config_screen(106);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0x2eecb0(%rip), %rbx    # 0x3253e8
movzbl (%rbx), %edi
callq 0x31279
leaq 0x1cc189(%rip), %rcx    # 0x2028d0
xorl %edx, %edx
cmpq $0x400, (%rcx)          # imm = 0x400
movzbl %al, %eax
cmovel %edx, %eax
movb %al, (%rbx)
callq 0x2591f
leaq 0x1ce9f4(%rip), %rax    # 0x205158
movb $0x0, (%rax)
pushq $0x6a
popq %rdi
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0xcc4f
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_loc_format()
void edit_loc_format()
{
   // process the location formatting commands

   getting_plot = (-1);
   first_key = '{';
   prot_menu = 0;

   if(text_mode) erase_screen();
   else          erase_help();

   // display prompt string for the command
   sprintf(out, " Location format:  D)ecimal   dmS)   G)rads   R)adians    (ESC to abort)");
   vidstr(EDIT_ROW+0, EDIT_COL, PROMPT_COLOR, out);
   sprintf(out, "                   mI)ls      H)am   U)TM     N)ATO       E)CEF");
   vidstr(EDIT_ROW+1, EDIT_COL, PROMPT_COLOR, out);
   sprintf(out, "                   F)eet      M)eters         P)rivate    A)utoscale LLA");
   vidstr(EDIT_ROW+2, EDIT_COL, PROMPT_COLOR, out);
   sprintf(out, "                   earth T)ide displacement");
   vidstr(EDIT_ROW+3, EDIT_COL, PROMPT_COLOR, out);

   refresh_page();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
orl $-0x1, 0x2f61b2(%rip)   # 0x32c93c
leaq 0x1f27c7(%rip), %rax    # 0x228f58
movl $0x7b, (%rax)
leaq 0x1ce9ba(%rip), %rax    # 0x205158
movb $0x0, (%rax)
leaq 0x1cc030(%rip), %rax    # 0x2027d8
cmpl $0x0, (%rax)
je 0x367b4
callq 0xe7d9
jmp 0x367b9
callq 0xe7aa
leaq 0x2efa60(%rip), %rbx    # 0x326220
leaq 0xca171(%rip), %rsi     # 0x100938
pushq $0x49
popq %r15
movq %rbx, %rdi
movq %r15, %rdx
callq 0x92a0
leaq 0x2f2e2f(%rip), %r13    # 0x32960c
movl (%r13), %edi
leaq 0x2f2e28(%rip), %r12    # 0x329610
movl (%r12), %esi
pushq $0xb
popq %r14
movl %r14d, %edx
movq %rbx, %rcx
callq 0xe2d2
movups 0xca1af(%rip), %xmm0    # 0x1009b1
movaps %xmm0, 0x30(%rbx)
movups 0xca194(%rip), %xmm0    # 0x1009a1
movaps %xmm0, 0x20(%rbx)
movups 0xca179(%rip), %xmm0    # 0x100991
movaps %xmm0, 0x10(%rbx)
movups 0xca15e(%rip), %xmm0    # 0x100981
movaps %xmm0, (%rbx)
movl (%r13), %edi
incl %edi
movl (%r12), %esi
movl %r14d, %edx
movq %rbx, %rcx
callq 0xe2d2
leaq 0xca17f(%rip), %rsi     # 0x1009c1
movq %rbx, %rdi
movq %r15, %rdx
callq 0x92a0
movl (%r13), %edi
addl $0x2, %edi
movl (%r12), %esi
movl %r14d, %edx
movq %rbx, %rcx
callq 0xe2d2
movups 0xca1bc(%rip), %xmm0    # 0x100a26
movups %xmm0, 0x1c(%rbx)
movups 0xca1a5(%rip), %xmm0    # 0x100a1a
movaps %xmm0, 0x10(%rbx)
movups 0xca18a(%rip), %xmm0    # 0x100a0a
movaps %xmm0, (%rbx)
movl (%r13), %edi
addl $0x3, %edi
movl (%r12), %esi
movl %r14d, %edx
movq %rbx, %rcx
callq 0xe2d2
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0xaa05
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: edit_tide_plot()
void edit_tide_plot()
{
   // process the earth tide / gravity plot commands

   getting_plot = (-2);
   first_key = '{';
   prot_menu = 0;

   if(text_mode) erase_screen();
   else          erase_help();

   // display prompt string for the command
   sprintf(out, " Earth tide plot:  1)lat   2)lon   3)alt   4)uGals   A)ll   (ESC to abort)");
   vidstr(EDIT_ROW+0, EDIT_COL, PROMPT_COLOR, out);

   refresh_page();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
movl $0xfffffffe, 0x2f6080(%rip) # imm = 0xFFFFFFFE
leaq 0x1f2695(%rip), %rax    # 0x228f58
movl $0x7b, (%rax)
leaq 0x1ce888(%rip), %rax    # 0x205158
movb $0x0, (%rax)
leaq 0x1cbefe(%rip), %rax    # 0x2027d8
cmpl $0x0, (%rax)
je 0x368e6
callq 0xe7d9
jmp 0x368eb
callq 0xe7aa
leaq 0x2ef92e(%rip), %rbx    # 0x326220
leaq 0xca13d(%rip), %rsi     # 0x100a36
pushq $0x4b
popq %rdx
movq %rbx, %rdi
callq 0x92a0
leaq 0x2f2d01(%rip), %rax    # 0x32960c
movl (%rax), %edi
leaq 0x2f2cfc(%rip), %rax    # 0x329610
movl (%rax), %esi
pushq $0xb
popq %rdx
movq %rbx, %rcx
callq 0xe2d2
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0xaa05
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: move_plot_up()
void move_plot_up()
{
   plot[selected_plot].user_scale = 1;
   plot[selected_plot].plot_center -= center_step;
   plot[selected_plot].float_center = 0;
   plot[selected_plot].user_set_float = 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x2f320a(%rip), %rax    # 0x329d58
movslq (%rax), %rax
imulq $0xe8, %rax, %rax
leaq 0x1111d1(%rip), %rcx    # 0x147d30
movl $0x1, %edx
movl %edx, 0x30(%rcx,%rax)
movsd 0x28(%rcx,%rax), %xmm0
subsd 0x2f5dea(%rip), %xmm0   # 0x32c960
movsd %xmm0, 0x28(%rcx,%rax)
andl $0x0, 0x1c(%rcx,%rax)
movl %edx, 0xdc(%rcx,%rax)
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: move_plot_down()
void move_plot_down()
{
   plot[selected_plot].plot_center += center_step;
   plot[selected_plot].user_scale = 1;
   plot[selected_plot].float_center = 0;
   plot[selected_plot].user_set_float = 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movsd 0x2f5dca(%rip), %xmm0   # 0x32c960
leaq 0x2f31bb(%rip), %rax    # 0x329d58
movslq (%rax), %rax
imulq $0xe8, %rax, %rax
leaq 0x111182(%rip), %rcx    # 0x147d30
addsd 0x28(%rcx,%rax), %xmm0
movsd %xmm0, 0x28(%rcx,%rax)
movl $0x1, %edx
movl %edx, 0x30(%rcx,%rax)
andl $0x0, 0x1c(%rcx,%rax)
movl %edx, 0xdc(%rcx,%rax)
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: shrink_plot()
void shrink_plot()
{
   plot[selected_plot].user_scale = 1;
   plot[selected_plot].scale_factor += scale_step;
   plot[selected_plot].float_center = 0;
   plot[selected_plot].user_set_float = 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x2f317c(%rip), %rax    # 0x329d58
movslq (%rax), %rax
imulq $0xe8, %rax, %rax
leaq 0x111143(%rip), %rcx    # 0x147d30
movl $0x1, %edx
movl %edx, 0x30(%rcx,%rax)
movsd 0x2f5d5a(%rip), %xmm0   # 0x32c958
addsd 0x38(%rcx,%rax), %xmm0
movsd %xmm0, 0x38(%rcx,%rax)
andl $0x0, 0x1c(%rcx,%rax)
movl %edx, 0xdc(%rcx,%rax)
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: set_auto_scale()
void set_auto_scale()
{
int i;

   // enable / disable auto scaling of all plots

   for(i=0; i<NUM_PLOTS+DERIVED_PLOTS; i++) {
      if(auto_scale) {
         plot[i].user_scale = 0;
         plot[i].float_center = 1;
         plot[i].user_set_float = 1;
      }
      else {
         plot[i].user_scale = 1;
         plot[i].float_center = 0;
      }
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x1ce546(%rip), %rax    # 0x2053d4
movb (%rax), %al
xorl %ecx, %ecx
leaq 0x110e97(%rip), %rdx    # 0x147d30
movl $0x1, %esi
cmpq $0x1220, %rcx           # imm = 0x1220
je 0x36ed3
testb %al, %al
je 0x36ebd
andl $0x0, 0x30(%rdx,%rcx)
movl %esi, 0x1c(%rdx,%rcx)
movl %esi, 0xdc(%rdx,%rcx)
jmp 0x36eca
movl $0x1, 0x30(%rdx,%rcx)
andl $0x0, 0x1c(%rdx,%rcx)
addq $0xe8, %rcx
jmp 0x36e9e
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: kbd_marker(int)
void kbd_marker(int c)
{
long val;

   // set a plot marker from the keyboard
   last_was_mark = c;
   if((c >= '0') && (c <= '9')) c -= '0';
   else if(c >= 'a') c = (c - 'a') + 10;
   else if(c >= 'A') c = (c - 'A') + 10;

   if((c < 0) || (c >= MAX_MARKER)) return;

   if(mark_q_entry[c]) {  // marker was set,  go to it
      goto_mark(c);
      hide_kbd(21);
   }
   else {  // mark current spot if it is not already marked
      for(val=1; val<MAX_MARKER; val++) {
         if(mark_q_entry[val] == last_mouse_q) {  // place is already marked
            BEEP(311);
            return;
         }
      }
      mark_q_entry[c] = last_mouse_q;
      draw_plot(REFRESH_SCREEN);
   }
}

// Assembly:
leaq 0x1cdc28(%rip), %rax    # 0x205300
movl %edi, (%rax)
leal -0x30(%rdi), %eax
cmpl $0xa, %eax
jae 0x37704
movl %eax, %edi
leaq 0x1cdbc5(%rip), %rax    # 0x2052b0
cmpq $0x0, (%rax,%rdi,8)
je 0x37718
pushq %rbp
movq %rsp, %rbp
callq 0x1a7d4
pushq $0x15
popq %rdi
popq %rbp
jmp 0xf662
cmpl $0x60, %edi
jg 0x37717
leal -0x37(%rdi), %eax
cmpl $0x41, %edi
cmovll %edi, %eax
cmpl $0x9, %eax
jbe 0x376e2
retq
leaq 0x1cdb59(%rip), %rcx    # 0x205278
movq (%rcx), %rcx
pushq $0x1
popq %rdx
cmpq $0xa, %rdx
je 0x37742
leaq 0x1(%rdx), %rsi
cmpq %rcx, (%rax,%rdx,8)
movq %rsi, %rdx
jne 0x37725
movl $0x137, %edi            # imm = 0x137
jmp 0x9d23
movq %rcx, (%rax,%rdi,8)
pushq $0x1
popq %rdi
jmp 0x18cb0
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: set_next_marker()
int set_next_marker()
{
int val;

   // mark current mouse column with the next available marker number
   for(val=1; val<MAX_MARKER; val++) {
      if(mark_q_entry[val] == last_mouse_q) {  // place is already marked
         mark_q_entry[val] = 0;                // unmark it
         draw_plot(REFRESH_SCREEN);
         return 1;
      }
   }

   for(val=1; val<MAX_MARKER; val++) {
      if(mark_q_entry[val] == 0) {
         if(val < 10) last_was_mark = '0'+val;
         else         last_was_mark = 'A'+val-10;
         mark_q_entry[val] = last_mouse_q;  // last marker is mouse click marker
         draw_plot(REFRESH_SCREEN);
         return 1;
      }
   }

   BEEP(312);
   return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0x1cdb1d(%rip), %rax    # 0x205278
movq (%rax), %rax
pushq $0x1
popq %rdx
leaq 0x1cdb48(%rip), %rcx    # 0x2052b0
cmpq $0xa, %rdx
je 0x37783
leaq 0x1(%rdx), %rsi
cmpq %rax, (%rcx,%rdx,8)
movq %rsi, %rdx
jne 0x37768
andq $0x0, -0x8(%rcx,%rsi,8)
jmp 0x377b6
pushq $0x1
popq %rdx
cmpq $0xa, %rdx
je 0x37798
cmpq $0x0, (%rcx,%rdx,8)
je 0x377a6
incq %rdx
jmp 0x37786
movl $0x138, %edi            # imm = 0x138
callq 0x9d23
xorl %ebx, %ebx
jmp 0x377c0
leal 0x30(%rdx), %esi
leaq 0x1cdb50(%rip), %rdi    # 0x205300
movl %esi, (%rdi)
movq %rax, (%rcx,%rdx,8)
pushq $0x1
popq %rbx
movl %ebx, %edi
callq 0x18cb0
movl %ebx, %eax
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathui.cpp
// Function: change_fix_config(int)
void change_fix_config(int save)
{
static int old_watch = 0;
static int old_azel = 0;
static int old_share = 0;
static int old_sigs = 0;
static int old_lla = 0;
static int saved_config = 0;
static int save_count = 0;
static int restore_count = 0;

   if(save > 0) {
      old_watch = plot_watch;
      old_azel = plot_azel;
      old_share = shared_plot;
      old_sigs = plot_signals;
      old_lla = plot_lla;
      saved_config = save;
      ++save_count;
//sprintf(debug_text, "plot watch fix save# %d: %d: %d", save_count, save, plot_watch);
   }
   else if(saved_config) {
      ++restore_count;
//sprintf(debug_text2, "plot watch fix restore# %d: %d: pw:%d  ow:%d", restore_count, saved_config, plot_watch, old_watch);
      plot_watch = old_watch;
      plot_azel = old_azel;
      shared_plot = old_share;
      plot_signals = old_sigs;
      if(show_fixes == 0) {
         plot_lla = 0; // !!!!! old_lla;
      }
      else plot_lla = old_lla;

      no_redraw = 1;
      config_screen(130);
      no_redraw = 0;
//saved_config = 0;  // (555)
   }
}

// Assembly:
testl %edi, %edi
jle 0x3782a
leaq 0x1cdc34(%rip), %rax    # 0x205408
movzbl (%rax), %eax
movl %eax, 0x2f6f3f(%rip)    # 0x32e71c
leaq 0x1cdc2f(%rip), %rax    # 0x205413
movzbl (%rax), %eax
movl %eax, 0x2f6f33(%rip)    # 0x32e720
leaq 0x2edbf4(%rip), %rax    # 0x3253e8
movzbl (%rax), %eax
movl %eax, 0x2f6f27(%rip)    # 0x32e724
leaq 0x1cdc11(%rip), %rax    # 0x205415
movzbl (%rax), %eax
movl %eax, 0x2f6f1b(%rip)    # 0x32e728
leaq 0x2eda9c(%rip), %rax    # 0x3252b0
movzbl (%rax), %eax
movl %eax, 0x2f6f0f(%rip)    # 0x32e72c
movl %edi, 0x2f6f0d(%rip)    # 0x32e730
incl 0x2f6f0b(%rip)          # 0x32e734
retq
cmpl $0x0, 0x2f6eff(%rip)    # 0x32e730
je 0x378bc
incl 0x2f6efb(%rip)          # 0x32e738
movb 0x2f6ed9(%rip), %al     # 0x32e71c
leaq 0x1cdbbe(%rip), %rcx    # 0x205408
movb %al, (%rcx)
movb 0x2f6ece(%rip), %al     # 0x32e720
leaq 0x1cdbba(%rip), %rcx    # 0x205413
movb %al, (%rcx)
movb 0x2f6ec3(%rip), %al     # 0x32e724
leaq 0x2edb80(%rip), %rcx    # 0x3253e8
movb %al, (%rcx)
movb 0x2f6eb8(%rip), %al     # 0x32e728
leaq 0x1cdb9e(%rip), %rcx    # 0x205415
movb %al, (%rcx)
leaq 0x2eda54(%rip), %rcx    # 0x3252d4
xorl %eax, %eax
cmpb $0x0, (%rcx)
je 0x3788d
movl 0x2f6e9f(%rip), %eax    # 0x32e72c
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0x2eda16(%rip), %rcx    # 0x3252b0
movb %al, (%rcx)
leaq 0x1cafa5(%rip), %rbx    # 0x202848
movl $0x1, (%rbx)
movl $0x82, %edi
callq 0xcc4f
andl $0x0, (%rbx)
addq $0x8, %rsp
popq %rbx
popq %rbp
retq