// File: /workspace/github_cpp_makefile_star2_O1/jkingan[P]ladyheather/heathmsc.cpp
// Function: write_log_tsip_vers()
void write_log_tsip_vers()
{
   sprintf(log_text, "#   Serial number: %u.%lu", sn_prefix, (unsigned long) serial_num);
   write_log_comment(1);
   sprintf(log_text, "#   Case s/n:      %u.%lu", case_prefix, (unsigned long) case_sn);
   write_log_comment(1);
   sprintf(log_text, "#   Prodn number:  %lu.%u", (unsigned long) prodn_num, prodn_extn);
   write_log_comment(1);
   sprintf(log_text, "#   Prodn options: %u", prodn_options);        // from prodn_params message
   write_log_comment(1);
   sprintf(log_text, "#   Machine id:    %u", machine_id);
   write_log_comment(1);
   if(ebolt) {
      sprintf(log_text, "#   Hardware code: %u", hw_code);
      write_log_comment(1);
   }

   sprintf(log_text, "#   App firmware:  %2d.%-2d  %02d %s %02d", 
      ap_major, ap_minor,  ap_day, months[ap_month], ap_year);   //!!! docs say 1900
   write_log_comment(1);
   sprintf(log_text, "#   GPS firmware:  %2d.%-2d  %02d %s %02d", 
      core_major, core_minor,  core_day, months[core_month], core_year);  //!!! docs say 1900
   write_log_comment(1);
   sprintf(log_text, "#   Mfg time:      %02d:00  %02d %s %04d", 
      build_hour, build_day, months[build_month], build_year);
   write_log_comment(1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x10, %rsp
leaq 0x249807(%rip), %rax    # 0x30d980
movzwl (%rax), %edx
leaq 0x249801(%rip), %rax    # 0x30d984
movl (%rax), %ecx
leaq 0x1797d4(%rip), %rbx    # 0x23d960
leaq 0x699dc(%rip), %rsi     # 0x12db6f
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
callq 0xc3105
leaq 0x2497e8(%rip), %rax    # 0x30d996
movzwl (%rax), %edx
leaq 0x2497e0(%rip), %rax    # 0x30d998
movl (%rax), %ecx
leaq 0x699c8(%rip), %rsi     # 0x12db89
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
callq 0xc3105
leaq 0x2497c0(%rip), %rax    # 0x30d99c
movl (%rax), %edx
leaq 0x2497b0(%rip), %rax    # 0x30d995
movzbl (%rax), %ecx
leaq 0x699b4(%rip), %rsi     # 0x12dba3
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
callq 0xc3105
leaq 0x24978a(%rip), %rax    # 0x30d994
movzbl (%rax), %edx
leaq 0x699a9(%rip), %rsi     # 0x12dbbd
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
callq 0xc3105
leaq 0x249771(%rip), %rax    # 0x30d9a0
movzwl (%rax), %edx
leaq 0x6999a(%rip), %rsi     # 0x12dbd3
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
callq 0xc3105
leaq 0x17acd0(%rip), %rax    # 0x23ef24
cmpl $0x0, (%rax)
je 0xc4282
leaq 0x249742(%rip), %rax    # 0x30d9a2
movzwl (%rax), %edx
leaq 0x1796f6(%rip), %rdi    # 0x23d960
leaq 0x69978(%rip), %rsi     # 0x12dbe9
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
callq 0xc3105
leaq 0x24971b(%rip), %rax    # 0x30d9a4
movzbl (%rax), %edx
leaq 0x249712(%rip), %rax    # 0x30d9a5
movzbl (%rax), %ecx
leaq 0x24970a(%rip), %rax    # 0x30d9a7
movzbl (%rax), %r8d
leaq 0x2496fe(%rip), %rax    # 0x30d9a6
movzbl (%rax), %eax
leaq 0xa648e(%rip), %r14     # 0x16a740
movq (%r14,%rax,8), %r9
leaq 0x2496eb(%rip), %rax    # 0x30d9a8
movzwl (%rax), %eax
movl %eax, (%rsp)
leaq 0x179696(%rip), %rbx    # 0x23d960
leaq 0x6992e(%rip), %rsi     # 0x12dbff
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
callq 0xc3105
leaq 0x2496be(%rip), %rax    # 0x30d9aa
movzbl (%rax), %edx
leaq 0x2496b5(%rip), %rax    # 0x30d9ab
movzbl (%rax), %ecx
leaq 0x2496ad(%rip), %rax    # 0x30d9ad
movzbl (%rax), %r8d
leaq 0x2496a1(%rip), %rax    # 0x30d9ac
movzbl (%rax), %eax
movq (%r14,%rax,8), %r9
leaq 0x249695(%rip), %rax    # 0x30d9ae
movzwl (%rax), %eax
movl %eax, (%rsp)
leaq 0x69903(%rip), %rsi     # 0x12dc29
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
callq 0xc3105
leaq 0x24964b(%rip), %rax    # 0x30d98c
movzbl (%rax), %edx
leaq 0x249640(%rip), %rax    # 0x30d98b
movzbl (%rax), %ecx
leaq 0x249635(%rip), %rax    # 0x30d98a
movzbl (%rax), %eax
movq (%r14,%rax,8), %r8
leaq 0x249625(%rip), %rax    # 0x30d988
movzwl (%rax), %r9d
leaq 0x698e5(%rip), %rsi     # 0x12dc53
movq %rbx, %rdi
xorl %eax, %eax
callq 0x9060
movl $0x1, %edi
addq $0x10, %rsp
popq %rbx
popq %r14
popq %rbp
jmp 0xc3105