// File: /workspace/github_c_makefile_star2_O0/AK6DN[P]dec-utilities-for-pdp/macro8x/macro8x.c
// Function: printLine
void printLine( char *line, WORD32 loc, WORD32 val, LINESTYLE_T linestyle )
{
  if( listfile == NULL )
  {
    save_error_count = 0;
    return;
  }

  printPageBreak();

  list_lineno++;
  page_lineno++;
  switch( linestyle )
  {
  default:
  case LINE:
    fprintf( listfile, "%5d             ", lineno );
    fputs( line, listfile );
    listed = TRUE;
    break;

  case LINE_VAL:
    if( !listed )
    {
	fprintf( listfile, "%5d       %4.4o  ", lineno, (unsigned)val );
      fputs( line, listfile );
      listed = TRUE;
    }
    else
    {
	fprintf( listfile, "            %4.4o\n", (unsigned)val );
    }
    break;

  case LINE_LOC_VAL:
    if( !listed )
    {
      if( indirect_generated && lgm_flag )
      {
	  fprintf( listfile, "%5d %5.5o %4.4o@ ", lineno, (unsigned)loc, (unsigned)val );
      }
      else
      {
	  fprintf( listfile, "%5d %5.5o %4.4o  ", lineno, (unsigned)loc, (unsigned)val );
      }
      fputs( line, listfile );
      listed = TRUE;
    }
    else
    {
	fprintf( listfile, "      %5.5o %4.4o\n", (unsigned)loc, (unsigned)val );
    }
    /* update memory map */
    memory_map[loc] = TRUE;
    if (loc > memory_max) memory_max = loc;
    if (loc < memory_min) memory_min = loc;
    break;

  case LOC_VAL:
      fprintf( listfile, "      %5.5o %4.4o\n", (unsigned)loc, (unsigned)val );
    /* update memory map */
    memory_map[loc] = TRUE;
    if (loc > memory_max) memory_max = loc;
    if (loc < memory_min) memory_min = loc;
    break;
  }
  printErrorMessages();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movl %ecx, -0x1c(%rbp)
cmpq $0x0, 0x142a1(%rip)     # 0x18f20
jne 0x4c90
movl $0x0, 0xc141(%rip)      # 0x10dcc
jmp 0x4ed5
callq 0x8810
movl 0x15c09(%rip), %eax     # 0x1a8a4
incl %eax
movl %eax, 0x15c01(%rip)     # 0x1a8a4
movl 0x15c03(%rip), %eax     # 0x1a8ac
incl %eax
movl %eax, 0x15bfb(%rip)     # 0x1a8ac
movl -0x1c(%rbp), %eax
movq %rax, -0x28(%rbp)
subq $0x3, %rax
ja 0x4cd2
movq -0x28(%rbp), %rax
leaq 0x53ef(%rip), %rcx      # 0xa0b8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
jmp 0x4cd4
movq 0x14245(%rip), %rdi     # 0x18f20
movl 0x15bbb(%rip), %edx     # 0x1a89c
leaq 0x5b43(%rip), %rsi      # 0xa82b
movb $0x0, %al
callq 0x2110
movq -0x8(%rbp), %rdi
movq 0x14226(%rip), %rsi     # 0x18f20
callq 0x20c0
movq $0x1, 0x15b86(%rip) # 0x1a890
jmp 0x4ed0
cmpq $0x0, 0x15b79(%rip)     # 0x1a890
jne 0x4d57
movq 0x14200(%rip), %rdi     # 0x18f20
movl 0x15b76(%rip), %edx     # 0x1a89c
movq -0x18(%rbp), %rax
movl %eax, %ecx
leaq 0x5b09(%rip), %rsi      # 0xa83c
movb $0x0, %al
callq 0x2110
movq -0x8(%rbp), %rdi
movq 0x141db(%rip), %rsi     # 0x18f20
callq 0x20c0
movq $0x1, 0x15b3b(%rip) # 0x1a890
jmp 0x4d72
movq 0x141c2(%rip), %rdi     # 0x18f20
movq -0x18(%rbp), %rax
movl %eax, %edx
leaq 0x5ae3(%rip), %rsi      # 0xa84e
movb $0x0, %al
callq 0x2110
jmp 0x4ed0
cmpq $0x0, 0x15b11(%rip)     # 0x1a890
jne 0x4e0c
movzbl 0x16344(%rip), %eax     # 0x1b0d0
cmpl $0x0, %eax
je 0x4dc7
movzbl 0x15b00(%rip), %eax     # 0x1a898
cmpl $0x0, %eax
je 0x4dc7
movq 0x1417c(%rip), %rdi     # 0x18f20
movl 0x15af2(%rip), %edx     # 0x1a89c
movq -0x10(%rbp), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %eax, %r8d
leaq 0x5aa3(%rip), %rsi      # 0xa861
movb $0x0, %al
callq 0x2110
jmp 0x4def
movq 0x14152(%rip), %rdi     # 0x18f20
movl 0x15ac8(%rip), %edx     # 0x1a89c
movq -0x10(%rbp), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %eax, %r8d
leaq 0x5a8b(%rip), %rsi      # 0xa873
movb $0x0, %al
callq 0x2110
movq -0x8(%rbp), %rdi
movq 0x14126(%rip), %rsi     # 0x18f20
callq 0x20c0
movq $0x1, 0x15a86(%rip) # 0x1a890
jmp 0x4e2d
movq 0x1410d(%rip), %rdi     # 0x18f20
movq -0x10(%rbp), %rax
movl %eax, %edx
movq -0x18(%rbp), %rax
movl %eax, %ecx
leaq 0x5a5f(%rip), %rsi      # 0xa885
movb $0x0, %al
callq 0x2110
movq -0x10(%rbp), %rcx
leaq 0xbfb8(%rip), %rax      # 0x10df0
movb $0x1, (%rax,%rcx)
movq -0x10(%rbp), %rax
cmpq 0x13fb1(%rip), %rax     # 0x18df8
jle 0x4e54
movq -0x10(%rbp), %rax
movq %rax, 0x13fa4(%rip)     # 0x18df8
movq -0x10(%rbp), %rax
cmpq 0x13f91(%rip), %rax     # 0x18df0
jge 0x4e6c
movq -0x10(%rbp), %rax
movq %rax, 0x13f84(%rip)     # 0x18df0
jmp 0x4ed0
movq 0x140ab(%rip), %rdi     # 0x18f20
movq -0x10(%rbp), %rax
movl %eax, %edx
movq -0x18(%rbp), %rax
movl %eax, %ecx
leaq 0x59fd(%rip), %rsi      # 0xa885
movb $0x0, %al
callq 0x2110
movq -0x10(%rbp), %rcx
leaq 0xbf56(%rip), %rax      # 0x10df0
movb $0x1, (%rax,%rcx)
movq -0x10(%rbp), %rax
cmpq 0x13f4f(%rip), %rax     # 0x18df8
jle 0x4eb6
movq -0x10(%rbp), %rax
movq %rax, 0x13f42(%rip)     # 0x18df8
movq -0x10(%rbp), %rax
cmpq 0x13f2f(%rip), %rax     # 0x18df0
jge 0x4ece
movq -0x10(%rbp), %rax
movq %rax, 0x13f22(%rip)     # 0x18df0
jmp 0x4ed0
callq 0x88b0
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)