// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathgps.cpp
// Function: update_osc_params()
void update_osc_params()
{
   user_time_constant = time_constant;           // get current values
   user_damping_factor = damping_factor;
   user_jam_sync = jam_sync;
   user_holdover_time = x72_holdover_val;

   user_osc_gain = osc_gain;
   user_pullin = pullin_range;

   user_initial_voltage = initial_voltage;
   user_min_volts = min_volts;
   user_max_volts = max_volts;
   user_min_range = min_dac_v;
   user_max_range = max_dac_v;

   user_max_freq_offset = max_freq_offset;

   // update current values with user set values from command line
   if(user_set_osc_param & PARAM_TC)       user_time_constant = cmd_tc;
   if(user_set_osc_param & PARAM_DAMP)     user_damping_factor = cmd_damp;
   if(user_set_osc_param & PARAM_GAIN)     user_osc_gain = cmd_gain;
   if(user_set_osc_param & PARAM_PULLIN)   user_pullin = cmd_pullin;

   if(user_set_osc_param & PARAM_INITV)    user_initial_voltage = cmd_initdac;
   if(user_set_osc_param & PARAM_MINV)     user_min_volts = cmd_minv;
   if(user_set_osc_param & PARAM_MAXV)     user_max_volts = cmd_maxv;

   if(user_set_osc_param & PARAM_JAMSYNC)  user_jam_sync = cmd_jamsync;
   if(user_set_osc_param & PARAM_MAXFREQ)  user_max_freq_offset = cmd_maxfreq;
   if(user_set_osc_param & PARAM_HOLDOVER) user_holdover_time = cmd_holdover;

   if(user_set_osc_param & PARAM_MINRANGE) user_min_range = cmd_minrange;
   if(user_set_osc_param & PARAM_MAXRANGE) user_max_range = cmd_maxrange;
   user_set_osc_param = 0;

   set_discipline_params(0);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
leaq 0x291815(%rip), %rax    # 0x2f70f0
movsd (%rax), %xmm0
leaq 0x291892(%rip), %r13    # 0x2f7178
movsd %xmm0, (%r13)
leaq 0x29180d(%rip), %rax    # 0x2f7100
movsd (%rax), %xmm0
leaq 0x291882(%rip), %r15    # 0x2f7180
movsd %xmm0, (%r15)
leaq 0x291836(%rip), %rax    # 0x2f7140
movsd (%rax), %xmm0
leaq 0x29189b(%rip), %rcx    # 0x2f71b0
movsd %xmm0, (%rcx)
leaq 0x19f4e8(%rip), %rax    # 0x204e08
movl (%rax), %edx
leaq 0x29189f(%rip), %rax    # 0x2f71c8
movl %edx, (%rax)
leaq 0x2917d6(%rip), %rdx    # 0x2f7108
movsd (%rdx), %xmm0
leaq 0x29184b(%rip), %r12    # 0x2f7188
movsd %xmm0, (%r12)
leaq 0x291822(%rip), %rdx    # 0x2f716c
movl (%rdx), %edx
leaq 0x291879(%rip), %r14    # 0x2f71cc
movl %edx, (%r14)
leaq 0x2917f3(%rip), %rdx    # 0x2f7150
movsd (%rdx), %xmm0
leaq 0x291858(%rip), %rbx    # 0x2f71c0
movsd %xmm0, (%rbx)
leaq 0x2917ad(%rip), %rdx    # 0x2f7120
movsd (%rdx), %xmm0
leaq 0x291812(%rip), %r11    # 0x2f7190
movsd %xmm0, (%r11)
leaq 0x29179e(%rip), %rdx    # 0x2f7128
movsd (%rdx), %xmm0
leaq 0x291803(%rip), %r10    # 0x2f7198
movsd %xmm0, (%r10)
leaq 0x29178f(%rip), %rdx    # 0x2f7130
movsd (%rdx), %xmm0
leaq 0x2917f4(%rip), %rsi    # 0x2f71a0
movsd %xmm0, (%rsi)
leaq 0x291781(%rip), %rdx    # 0x2f7138
movsd (%rdx), %xmm0
leaq 0x2917e6(%rip), %rdx    # 0x2f71a8
movsd %xmm0, (%rdx)
leaq 0x29177b(%rip), %rdi    # 0x2f7148
movsd (%rdi), %xmm0
leaq 0x2917e0(%rip), %r9     # 0x2f71b8
movsd %xmm0, (%r9)
leaq 0x292414(%rip), %rdi    # 0x2f7df8
movl (%rdi), %r8d
testb $0x1, %r8b
je 0x659fe
leaq 0x29240c(%rip), %rax    # 0x2f7e00
movsd (%rax), %xmm0
movsd %xmm0, (%r13)
testb $0x2, %r8b
je 0x65a14
leaq 0x2923fd(%rip), %rax    # 0x2f7e08
movsd (%rax), %xmm0
movsd %xmm0, (%r15)
testb $0x4, %r8b
je 0x65a2b
leaq 0x2923ef(%rip), %rax    # 0x2f7e10
movsd (%rax), %xmm0
movsd %xmm0, (%r12)
btl $0x8, %r8d
jae 0x65a3e
leaq 0x2923df(%rip), %rax    # 0x2f7e18
movl (%rax), %eax
movl %eax, (%r14)
testb $0x8, %r8b
je 0x65a53
leaq 0x2923d5(%rip), %rax    # 0x2f7e20
movsd (%rax), %xmm0
movsd %xmm0, (%rbx)
testb $0x10, %r8b
je 0x65a69
leaq 0x2923c8(%rip), %rax    # 0x2f7e28
movsd (%rax), %xmm0
movsd %xmm0, (%r11)
testb $0x20, %r8b
je 0x65a7f
leaq 0x2923ba(%rip), %rax    # 0x2f7e30
movsd (%rax), %xmm0
movsd %xmm0, (%r10)
btl $0x9, %r8d
jae 0x65a95
leaq 0x2923bb(%rip), %rax    # 0x2f7e48
movsd (%rax), %xmm0
movsd %xmm0, (%rcx)
btl $0xa, %r8d
jae 0x65aac
leaq 0x2923ad(%rip), %rax    # 0x2f7e50
movsd (%rax), %xmm0
movsd %xmm0, (%r9)
btl $0xd, %r8d
jae 0x65ac5
leaq 0x29239e(%rip), %rax    # 0x2f7e58
movl (%rax), %eax
leaq 0x291705(%rip), %rcx    # 0x2f71c8
movl %eax, (%rcx)
btl $0xb, %r8d
jae 0x65adb
leaq 0x292365(%rip), %rax    # 0x2f7e38
movsd (%rax), %xmm0
movsd %xmm0, (%rsi)
btl $0xc, %r8d
jae 0x65af1
leaq 0x292357(%rip), %rax    # 0x2f7e40
movsd (%rax), %xmm0
movsd %xmm0, (%rdx)
andl $0x0, (%rdi)
xorl %edi, %edi
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x67252