// File: sundale[P]gcode/rs274ngc/interp_internal.cc
// Function: Interp::init_block(block_struct*)
int Interp::init_block(block_pointer block)      //!< pointer to a block to be initialized or reset
{
  int n;
  block->a_flag = OFF;
  block->b_flag = OFF;
  block->c_flag = OFF;
  block->comment[0] = 0;
  block->d_flag = OFF;
  block->e_flag = OFF;
  block->f_number = -1.0;
  for (n = 0; n < 16; n++) {
    block->g_modes[n] = -1;
  }
  block->h_flag = OFF;
  block->h_number = -1;
  block->i_flag = OFF;
  block->j_flag = OFF;
  block->k_flag = OFF;
  block->l_number = -1;
  block->l_flag = OFF;
  block->line_number = -1;
  block->n_number = -1;
  block->motion_to_be = -1;
  block->m_count = 0;
  for (n = 0; n < 11; n++) {
    block->m_modes[n] = -1;
  }
  block->user_m = 0;
  block->p_number = -1.0;
  block->p_flag = OFF;
  block->q_flag = OFF;
  block->q_number = -1.0;
  block->r_flag = OFF;
  block->s_number = -1.0;
  block->t_number = -1;
  block->u_flag = OFF;
  block->v_flag = OFF;
  block->w_flag = OFF;
  block->x_flag = OFF;
  block->y_flag = OFF;
  block->z_flag = OFF;

  block->theta_flag = OFF;
  block->radius_flag = OFF;

  block->o_type = O_none;
  block->o_number = 0;

  if(block->o_name)
    {
      free(block->o_name);
      block->o_name = 0;
    }

  return INTERP_OK;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movb $0x0, (%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x10(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x20(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x30(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x138(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x139(%rax)
movq -0x10(%rbp), %rax
movsd 0x1d3bf(%rip), %xmm0    # 0x78860
movsd %xmm0, 0x148(%rax)
movl $0x0, -0x14(%rbp)
cmpl $0x10, -0x14(%rbp)
jge 0x5b4d4
movq -0x10(%rbp), %rax
movslq -0x14(%rbp), %rcx
movl $0xffffffff, 0x150(%rax,%rcx,4) # imm = 0xFFFFFFFF
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x5b4b0
movq -0x10(%rbp), %rax
movb $0x0, 0x190(%rax)
movq -0x10(%rbp), %rax
movl $0xffffffff, 0x194(%rax) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rax
movb $0x0, 0x198(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x1a8(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x1b8(%rax)
movq -0x10(%rbp), %rax
movl $0xffffffff, 0x1c8(%rax) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rax
movb $0x0, 0x1cc(%rax)
movq -0x10(%rbp), %rax
movl $0xffffffff, 0x1d0(%rax) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rax
movl $0xffffffff, 0x1d4(%rax) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rax
movl $0xffffffff, 0x1d8(%rax) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rax
movl $0x0, 0x1dc(%rax)
movl $0x0, -0x14(%rbp)
cmpl $0xb, -0x14(%rbp)
jge 0x5b58a
movq -0x10(%rbp), %rax
movslq -0x14(%rbp), %rcx
movl $0xffffffff, 0x1e0(%rax,%rcx,4) # imm = 0xFFFFFFFF
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x5b566
movq -0x10(%rbp), %rax
movl $0x0, 0x20c(%rax)
movq -0x10(%rbp), %rax
movsd 0x1d2bc(%rip), %xmm0    # 0x78860
movsd %xmm0, 0x210(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x218(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x228(%rax)
movq -0x10(%rbp), %rax
movsd 0x1d292(%rip), %xmm0    # 0x78860
movsd %xmm0, 0x220(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x229(%rax)
movq -0x10(%rbp), %rax
movsd 0x1d273(%rip), %xmm0    # 0x78860
movsd %xmm0, 0x238(%rax)
movq -0x10(%rbp), %rax
movl $0xffffffff, 0x240(%rax) # imm = 0xFFFFFFFF
movq -0x10(%rbp), %rax
movb $0x0, 0x244(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x250(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x260(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x270(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x280(%rax)
movq -0x10(%rbp), %rax
movb $0x0, 0x290(%rax)
movq -0x10(%rbp), %rax
movl $0x0, 0x2b0(%rax)
movq -0x10(%rbp), %rax
movl $0x0, 0x2a0(%rax)
movq -0x10(%rbp), %rax
movl $0x0, 0x2c8(%rax)
movq -0x10(%rbp), %rax
movl $0x0, 0x2cc(%rax)
movq -0x10(%rbp), %rax
cmpq $0x0, 0x2d0(%rax)
je 0x5b6aa
movq -0x10(%rbp), %rax
movq 0x2d0(%rax), %rdi
callq 0x114b0
movq -0x10(%rbp), %rax
movq $0x0, 0x2d0(%rax)
xorl %eax, %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)