// File: jkingan[P]ladyheather/heather.cpp
// Function: show(char*)
void show(char *s)
{
int old_text_mode;
int old_zoom;
int old_plot_text_row;
int old_edit_row;
char xout[MAX_TEXT_COLS+1];    // screen output strings get formatted into here


   if(show_escape) return;  // user interrupted the show with ESC
   strcpy(xout, s);

   if(keyboard_cmd) {
      old_text_mode = text_mode;
      old_zoom = zoom_screen;
      old_plot_text_row = PLOT_TEXT_ROW;
      old_edit_row = EDIT_ROW;
      if(old_text_mode) {
         PLOT_TEXT_ROW = 20;
         EDIT_ROW = 20+2;
      }
      text_mode = 2;
      no_x_margin = no_y_margin = 1;
      cancel_zoom(9);

      if(help_line > (PLOT_TEXT_ROW-4)) {
         showing_cmd_help = 1;  // so touchscreen can work
         if(edit_error("") == ESC_CHAR) show_escape = 1;
         showing_cmd_help = 0;
         erase_screen();
         help_line = 1;
      }
      else if(help_line == 0) erase_screen();
      vidstr(help_line, 0, WHITE, xout);

      ++help_line;
      text_mode = old_text_mode;
      if(text_mode == 0) {
         no_x_margin = no_y_margin = 0;
      }
      zoom_screen = old_zoom;
      PLOT_TEXT_ROW = old_plot_text_row;
      EDIT_ROW = old_edit_row;
   }
   else printf("%s\n", xout);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x220, %rsp            # imm = 0x220
movq %rdi, -0x8(%rbp)
cmpl $0x0, 0x3739c2(%rip)    # 0x3a1a08
je 0x2e04d
jmp 0x2e1a8
leaq -0x220(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x9350
cmpb $0x0, 0x33efe8(%rip)    # 0x36d04c
je 0x2e193
movl 0x249948(%rip), %eax    # 0x2779b8
movl %eax, -0xc(%rbp)
movzbl 0x33d90e(%rip), %eax    # 0x36b988
movl %eax, -0x10(%rbp)
movl 0x2499ed(%rip), %eax    # 0x277a70
movl %eax, -0x14(%rbp)
movl 0x370760(%rip), %eax    # 0x39e7ec
movl %eax, -0x18(%rbp)
cmpl $0x0, -0xc(%rbp)
je 0x2e0a9
movl $0x14, 0x2499d1(%rip)   # 0x277a70
movl $0x16, 0x370743(%rip)   # 0x39e7ec
movl $0x2, 0x249905(%rip)    # 0x2779b8
movb $0x1, 0x249981(%rip)    # 0x277a3b
movb $0x1, 0x249979(%rip)    # 0x277a3a
movl $0x9, %edi
callq 0x376e0
movl 0x373933(%rip), %eax    # 0x3a1a04
movl 0x249999(%rip), %ecx    # 0x277a70
subl $0x4, %ecx
cmpl %ecx, %eax
jle 0x2e11e
movl $0x1, 0x371714(%rip)    # 0x39f7fc
leaq 0x1664a3(%rip), %rdi    # 0x194592
callq 0x30d60
cmpl $0x1b, %eax
jne 0x2e103
movl $0x1, 0x373905(%rip)    # 0x3a1a08
movl $0x0, 0x3716ef(%rip)    # 0x39f7fc
callq 0x117e0
movl $0x1, 0x3738e8(%rip)    # 0x3a1a04
jmp 0x2e12e
cmpl $0x0, 0x3738df(%rip)    # 0x3a1a04
jne 0x2e12c
callq 0x117e0
jmp 0x2e12e
movl 0x3738d0(%rip), %edi    # 0x3a1a04
leaq -0x220(%rbp), %rcx
xorl %esi, %esi
movl $0xf, %edx
callq 0x10ee0
movl 0x3738b7(%rip), %eax    # 0x3a1a04
addl $0x1, %eax
movl %eax, 0x3738ae(%rip)    # 0x3a1a04
movl -0xc(%rbp), %eax
movl %eax, 0x249859(%rip)    # 0x2779b8
cmpl $0x0, 0x249852(%rip)    # 0x2779b8
jne 0x2e176
movb $0x0, 0x2498cc(%rip)    # 0x277a3b
movb $0x0, 0x2498c4(%rip)    # 0x277a3a
movl -0x10(%rbp), %eax
movb %al, 0x33d809(%rip)     # 0x36b988
movl -0x14(%rbp), %eax
movl %eax, 0x2498e8(%rip)    # 0x277a70
movl -0x18(%rbp), %eax
movl %eax, 0x37065b(%rip)    # 0x39e7ec
jmp 0x2e1a8
leaq -0x220(%rbp), %rsi
leaq 0x15ac5e(%rip), %rdi    # 0x188dff
movb $0x0, %al
callq 0x9030
addq $0x220, %rsp            # imm = 0x220
popq %rbp
retq
nopw %cs:(%rax,%rax)