/********************************************************************
 *   File   : dis_inst.h
 *   Author : Neng-Fa ZHOU Copyright (C) 1994-2022
 *   DO NOT EDIT! THIS FILE IS AUTOMATICALLY GENERATED. 

 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. 
 ********************************************************************/

switch (opcode) {
case noop:
    fprintf(filedes, "\t%s", inst_name[noop]);
    fprintf(filedes, ".\n"); break;
case noop1:
    fprintf(filedes, "\t%s", inst_name[noop1]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case allocate_det_b:
    fprintf(filedes, "\t%s", inst_name[allocate_det_b]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case nondet:
    fprintf(filedes, "\t%s", inst_name[nondet]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_return:
    fprintf(filedes, "\t%s", inst_name[cut_return]);
    fprintf(filedes, ".\n"); break;
case return_det:
    fprintf(filedes, "\t%s", inst_name[return_det]);
    fprintf(filedes, ".\n"); break;
case unify_constant_return_det:
    fprintf(filedes, "\t%s", inst_name[unify_constant_return_det]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_unify_value_return_det:
    fprintf(filedes, "\t%s", inst_name[cut_unify_value_return_det]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_value_return_det:
    fprintf(filedes, "\t%s", inst_name[unify_value_return_det]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case return_nondet:
    fprintf(filedes, "\t%s", inst_name[return_nondet]);
    fprintf(filedes, ".\n"); break;
case unify_constant_return_nondet:
    fprintf(filedes, "\t%s", inst_name[unify_constant_return_nondet]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_constant_return_nondet:
    fprintf(filedes, "\t%s", inst_name[fork_unify_constant_return_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_nil_unify_value_return_nondet:
    fprintf(filedes, "\t%s", inst_name[fork_unify_nil_unify_value_return_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_value_return_nondet:
    fprintf(filedes, "\t%s", inst_name[unify_value_return_nondet]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case bp_fork:
    fprintf(filedes, "\t%s", inst_name[bp_fork]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut:
    fprintf(filedes, "\t%s", inst_name[cut]);
    fprintf(filedes, ".\n"); break;
case cut0:
    fprintf(filedes, "\t%s", inst_name[cut0]);
    fprintf(filedes, ".\n"); break;
case unify_value_cut:
    fprintf(filedes, "\t%s", inst_name[unify_value_cut]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fail:
    fprintf(filedes, "\t%s", inst_name[fail]);
    fprintf(filedes, ".\n"); break;
case cut_fail:
    fprintf(filedes, "\t%s", inst_name[cut_fail]);
    fprintf(filedes, ".\n"); break;
case fail0:
    fprintf(filedes, "\t%s", inst_name[fail0]);
    fprintf(filedes, ".\n"); break;
case getbreg_y:
    fprintf(filedes, "\t%s", inst_name[getbreg_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case putbreg_y:
    fprintf(filedes, "\t%s", inst_name[putbreg_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case getpbreg_y:
    fprintf(filedes, "\t%s", inst_name[getpbreg_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case halt:
    fprintf(filedes, "\t%s", inst_name[halt]);
    fprintf(filedes, ".\n"); break;
case halt0:
    fprintf(filedes, "\t%s", inst_name[halt0]);
    fprintf(filedes, ".\n"); break;
case call0:
    fprintf(filedes, "\t%s", inst_name[call0]);
    fprintf(filedes, "("); dis_struct(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uv_d:
    fprintf(filedes, "\t%s", inst_name[call_uv_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uv_det:
    fprintf(filedes, "\t%s", inst_name[call_uv_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case allocate_det:
    fprintf(filedes, "\t%s", inst_name[allocate_det]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uv_nondet:
    fprintf(filedes, "\t%s", inst_name[call_uv_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uv_ot:
    fprintf(filedes, "\t%s", inst_name[call_uv_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuv_d:
    fprintf(filedes, "\t%s", inst_name[call_uuv_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuv_det:
    fprintf(filedes, "\t%s", inst_name[call_uuv_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuv_nondet:
    fprintf(filedes, "\t%s", inst_name[call_uuv_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuv_ot:
    fprintf(filedes, "\t%s", inst_name[call_uuv_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvv_d:
    fprintf(filedes, "\t%s", inst_name[call_uvv_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvv_det:
    fprintf(filedes, "\t%s", inst_name[call_uvv_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvv_nondet:
    fprintf(filedes, "\t%s", inst_name[call_uvv_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvv_ot:
    fprintf(filedes, "\t%s", inst_name[call_uvv_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvc_d:
    fprintf(filedes, "\t%s", inst_name[call_uvc_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvc_det:
    fprintf(filedes, "\t%s", inst_name[call_uvc_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvc_nondet:
    fprintf(filedes, "\t%s", inst_name[call_uvc_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvc_ot:
    fprintf(filedes, "\t%s", inst_name[call_uvc_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvu_d:
    fprintf(filedes, "\t%s", inst_name[call_uvu_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvu_det:
    fprintf(filedes, "\t%s", inst_name[call_uvu_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvu_nondet:
    fprintf(filedes, "\t%s", inst_name[call_uvu_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvu_ot:
    fprintf(filedes, "\t%s", inst_name[call_uvu_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvuv_d:
    fprintf(filedes, "\t%s", inst_name[call_uvuv_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvuv_det:
    fprintf(filedes, "\t%s", inst_name[call_uvuv_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvuv_nondet:
    fprintf(filedes, "\t%s", inst_name[call_uvuv_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uvuv_ot:
    fprintf(filedes, "\t%s", inst_name[call_uvuv_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuuv_d:
    fprintf(filedes, "\t%s", inst_name[call_uuuv_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuuv_det:
    fprintf(filedes, "\t%s", inst_name[call_uuuv_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuuv_nondet:
    fprintf(filedes, "\t%s", inst_name[call_uuuv_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuuv_ot:
    fprintf(filedes, "\t%s", inst_name[call_uuuv_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuuuv_d:
    fprintf(filedes, "\t%s", inst_name[call_uuuuv_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuuuv_det:
    fprintf(filedes, "\t%s", inst_name[call_uuuuv_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuuuv_nondet:
    fprintf(filedes, "\t%s", inst_name[call_uuuuv_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_uuuuv_ot:
    fprintf(filedes, "\t%s", inst_name[call_uuuuv_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call0_d:
    fprintf(filedes, "\t%s", inst_name[call0_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_v_d:
    fprintf(filedes, "\t%s", inst_name[call_v_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_v_det:
    fprintf(filedes, "\t%s", inst_name[call_v_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_v_nondet:
    fprintf(filedes, "\t%s", inst_name[call_v_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_v_ot:
    fprintf(filedes, "\t%s", inst_name[call_v_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_u_d:
    fprintf(filedes, "\t%s", inst_name[call_u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_u_det:
    fprintf(filedes, "\t%s", inst_name[call_u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_u_ot:
    fprintf(filedes, "\t%s", inst_name[call_u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_2u_d:
    fprintf(filedes, "\t%s", inst_name[call_2u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_2u_det:
    fprintf(filedes, "\t%s", inst_name[call_2u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_2u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_2u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case allocate_nondet:
    fprintf(filedes, "\t%s", inst_name[allocate_nondet]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_2u_ot:
    fprintf(filedes, "\t%s", inst_name[call_2u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_3u_d:
    fprintf(filedes, "\t%s", inst_name[call_3u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_3u_det:
    fprintf(filedes, "\t%s", inst_name[call_3u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_3u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_3u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_3u_ot:
    fprintf(filedes, "\t%s", inst_name[call_3u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_4u_d:
    fprintf(filedes, "\t%s", inst_name[call_4u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_4u_det:
    fprintf(filedes, "\t%s", inst_name[call_4u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_4u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_4u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_4u_ot:
    fprintf(filedes, "\t%s", inst_name[call_4u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_5u_d:
    fprintf(filedes, "\t%s", inst_name[call_5u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_5u_det:
    fprintf(filedes, "\t%s", inst_name[call_5u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_5u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_5u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_5u_ot:
    fprintf(filedes, "\t%s", inst_name[call_5u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_6u_d:
    fprintf(filedes, "\t%s", inst_name[call_6u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_6u_det:
    fprintf(filedes, "\t%s", inst_name[call_6u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_6u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_6u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_6u_ot:
    fprintf(filedes, "\t%s", inst_name[call_6u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_7u_d:
    fprintf(filedes, "\t%s", inst_name[call_7u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_7u_det:
    fprintf(filedes, "\t%s", inst_name[call_7u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_7u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_7u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_7u_ot:
    fprintf(filedes, "\t%s", inst_name[call_7u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_8u_d:
    fprintf(filedes, "\t%s", inst_name[call_8u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_8u_det:
    fprintf(filedes, "\t%s", inst_name[call_8u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_8u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_8u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_8u_ot:
    fprintf(filedes, "\t%s", inst_name[call_8u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_9u_d:
    fprintf(filedes, "\t%s", inst_name[call_9u_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_9u_det:
    fprintf(filedes, "\t%s", inst_name[call_9u_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_9u_nondet:
    fprintf(filedes, "\t%s", inst_name[call_9u_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_9u_ot:
    fprintf(filedes, "\t%s", inst_name[call_9u_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cu_d:
    fprintf(filedes, "\t%s", inst_name[call_cu_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cu_det:
    fprintf(filedes, "\t%s", inst_name[call_cu_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cu_nondet:
    fprintf(filedes, "\t%s", inst_name[call_cu_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cu_ot:
    fprintf(filedes, "\t%s", inst_name[call_cu_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuu_d:
    fprintf(filedes, "\t%s", inst_name[call_cuu_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuu_det:
    fprintf(filedes, "\t%s", inst_name[call_cuu_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuu_nondet:
    fprintf(filedes, "\t%s", inst_name[call_cuu_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuu_ot:
    fprintf(filedes, "\t%s", inst_name[call_cuu_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuuu_d:
    fprintf(filedes, "\t%s", inst_name[call_cuuu_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuuu_det:
    fprintf(filedes, "\t%s", inst_name[call_cuuu_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuuu_nondet:
    fprintf(filedes, "\t%s", inst_name[call_cuuu_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuuu_ot:
    fprintf(filedes, "\t%s", inst_name[call_cuuu_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuuuu_d:
    fprintf(filedes, "\t%s", inst_name[call_cuuuu_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuuuu_det:
    fprintf(filedes, "\t%s", inst_name[call_cuuuu_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuuuu_nondet:
    fprintf(filedes, "\t%s", inst_name[call_cuuuu_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_cuuuu_ot:
    fprintf(filedes, "\t%s", inst_name[call_cuuuu_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_var:
    fprintf(filedes, "\t%s", inst_name[call_var]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_zs(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_var0:
    fprintf(filedes, "\t%s", inst_name[call_var0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp:
    fprintf(filedes, "\t%s", inst_name[jmp]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_eq_constant:
    fprintf(filedes, "\t%s", inst_name[jmpn_eq_constant]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_nil:
    fprintf(filedes, "\t%s", inst_name[jmpn_nil]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_eq_struct:
    fprintf(filedes, "\t%s", inst_name[jmpn_eq_struct]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_eq_struct_fetch_v:
    fprintf(filedes, "\t%s", inst_name[jmpn_eq_struct_fetch_v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case switch_cons:
    fprintf(filedes, "\t%s", inst_name[switch_cons]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case switch_cons_car:
    fprintf(filedes, "\t%s", inst_name[switch_cons_car]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case switch_cons_910:
    fprintf(filedes, "\t%s", inst_name[switch_cons_910]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case switch_cons_vv:
    fprintf(filedes, "\t%s", inst_name[switch_cons_vv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_eql_uu:
    fprintf(filedes, "\t%s", inst_name[jmpn_eql_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_eql_uc:
    fprintf(filedes, "\t%s", inst_name[jmpn_eql_uc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp_eql_uu:
    fprintf(filedes, "\t%s", inst_name[jmp_eql_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp_eql_uu_fail:
    fprintf(filedes, "\t%s", inst_name[jmp_eql_uu_fail]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp_eql_uu_ot:
    fprintf(filedes, "\t%s", inst_name[jmp_eql_uu_ot]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp_eql_uc:
    fprintf(filedes, "\t%s", inst_name[jmp_eql_uc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_gt_uu:
    fprintf(filedes, "\t%s", inst_name[jmpn_gt_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_gt_ui:
    fprintf(filedes, "\t%s", inst_name[jmpn_gt_ui]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_gt_iu:
    fprintf(filedes, "\t%s", inst_name[jmpn_gt_iu]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_ge_uu:
    fprintf(filedes, "\t%s", inst_name[jmpn_ge_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_ge_ui:
    fprintf(filedes, "\t%s", inst_name[jmpn_ge_ui]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_ge_iu:
    fprintf(filedes, "\t%s", inst_name[jmpn_ge_iu]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_id_uu:
    fprintf(filedes, "\t%s", inst_name[jmpn_id_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_id_uc:
    fprintf(filedes, "\t%s", inst_name[jmpn_id_uc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp_id_uu:
    fprintf(filedes, "\t%s", inst_name[jmp_id_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp_id_uc:
    fprintf(filedes, "\t%s", inst_name[jmp_id_uc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_var_y:
    fprintf(filedes, "\t%s", inst_name[jmpn_var_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_var_y_fail0:
    fprintf(filedes, "\t%s", inst_name[jmpn_var_y_fail0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_var_y_ot:
    fprintf(filedes, "\t%s", inst_name[jmpn_var_y_ot]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp_var_y:
    fprintf(filedes, "\t%s", inst_name[jmp_var_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_atom_y:
    fprintf(filedes, "\t%s", inst_name[jmpn_atom_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_atomic_y:
    fprintf(filedes, "\t%s", inst_name[jmpn_atomic_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_atomic_y_fail0:
    fprintf(filedes, "\t%s", inst_name[jmpn_atomic_y_fail0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_atomic_y_ot:
    fprintf(filedes, "\t%s", inst_name[jmpn_atomic_y_ot]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_num_y:
    fprintf(filedes, "\t%s", inst_name[jmpn_num_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_float_y:
    fprintf(filedes, "\t%s", inst_name[jmpn_float_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_int_y:
    fprintf(filedes, "\t%s", inst_name[jmpn_int_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case hash:
    fprintf(filedes, "\t%s", inst_name[hash]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case hash_jmpn_constant:
    fprintf(filedes, "\t%s", inst_name[hash_jmpn_constant]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case hash_branch_constant:
    fprintf(filedes, "\t%s", inst_name[hash_branch_constant]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case hash_jmpn_nil:
    fprintf(filedes, "\t%s", inst_name[hash_jmpn_nil]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case hash_jmpn_struct:
    fprintf(filedes, "\t%s", inst_name[hash_jmpn_struct]);
    fprintf(filedes, "("); dis_struct(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case hash_branch_struct:
    fprintf(filedes, "\t%s", inst_name[hash_branch_struct]);
    fprintf(filedes, "("); dis_struct(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case hash_jmpn_list0:
    fprintf(filedes, "\t%s", inst_name[hash_jmpn_list0]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case hash_jmpn_list:
    fprintf(filedes, "\t%s", inst_name[hash_jmpn_list]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uuuv:
    fprintf(filedes, "\t%s", inst_name[para_uuuv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uuv:
    fprintf(filedes, "\t%s", inst_name[para_uuv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uv:
    fprintf(filedes, "\t%s", inst_name[para_uv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uuu:
    fprintf(filedes, "\t%s", inst_name[para_uuu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uuuw:
    fprintf(filedes, "\t%s", inst_name[para_uuuw]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uuw:
    fprintf(filedes, "\t%s", inst_name[para_uuw]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uw:
    fprintf(filedes, "\t%s", inst_name[para_uw]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_vv:
    fprintf(filedes, "\t%s", inst_name[para_vv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_cuv:
    fprintf(filedes, "\t%s", inst_name[para_cuv]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_cuuv:
    fprintf(filedes, "\t%s", inst_name[para_cuuv]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uuuc:
    fprintf(filedes, "\t%s", inst_name[para_uuuc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uuc:
    fprintf(filedes, "\t%s", inst_name[para_uuc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uu:
    fprintf(filedes, "\t%s", inst_name[para_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_uc:
    fprintf(filedes, "\t%s", inst_name[para_uc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_u:
    fprintf(filedes, "\t%s", inst_name[para_u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_v:
    fprintf(filedes, "\t%s", inst_name[para_v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_w:
    fprintf(filedes, "\t%s", inst_name[para_w]);
    fprintf(filedes, ".\n"); break;
case para_c:
    fprintf(filedes, "\t%s", inst_name[para_c]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case para_nil:
    fprintf(filedes, "\t%s", inst_name[para_nil]);
    fprintf(filedes, ".\n"); break;
case fetch_4v:
    fprintf(filedes, "\t%s", inst_name[fetch_4v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fetch_3v:
    fprintf(filedes, "\t%s", inst_name[fetch_3v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fetch_2v:
    fprintf(filedes, "\t%s", inst_name[fetch_2v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fetch_v:
    fprintf(filedes, "\t%s", inst_name[fetch_v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fetch_vw:
    fprintf(filedes, "\t%s", inst_name[fetch_vw]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fetch_wv:
    fprintf(filedes, "\t%s", inst_name[fetch_wv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fetch_w:
    fprintf(filedes, "\t%s", inst_name[fetch_w]);
    fprintf(filedes, ".\n"); break;
case fetch_2w:
    fprintf(filedes, "\t%s", inst_name[fetch_2w]);
    fprintf(filedes, ".\n"); break;
case fetch_3w:
    fprintf(filedes, "\t%s", inst_name[fetch_3w]);
    fprintf(filedes, ".\n"); break;
case fetch_4w:
    fprintf(filedes, "\t%s", inst_name[fetch_4w]);
    fprintf(filedes, ".\n"); break;
case fetch_ws:
    fprintf(filedes, "\t%s", inst_name[fetch_ws]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fetch_910:
    fprintf(filedes, "\t%s", inst_name[fetch_910]);
    fprintf(filedes, ".\n"); break;
case fetch_45:
    fprintf(filedes, "\t%s", inst_name[fetch_45]);
    fprintf(filedes, ".\n"); break;
case unify_constant:
    fprintf(filedes, "\t%s", inst_name[unify_constant]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_constant:
    fprintf(filedes, "\t%s", inst_name[fork_unify_constant]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_nil:
    fprintf(filedes, "\t%s", inst_name[unify_nil]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_nil:
    fprintf(filedes, "\t%s", inst_name[fork_unify_nil]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct:
    fprintf(filedes, "\t%s", inst_name[unify_struct]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_struct(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_struct:
    fprintf(filedes, "\t%s", inst_name[fork_unify_struct]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_struct(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct_cut:
    fprintf(filedes, "\t%s", inst_name[unify_struct_cut]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_struct(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct_arg_uv0:
    fprintf(filedes, "\t%s", inst_name[unify_struct_arg_uv0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct_arg_2v0:
    fprintf(filedes, "\t%s", inst_name[unify_struct_arg_2v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct_arg_v0:
    fprintf(filedes, "\t%s", inst_name[unify_struct_arg_v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct_arg_2u:
    fprintf(filedes, "\t%s", inst_name[unify_struct_arg_2u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct_arg_u:
    fprintf(filedes, "\t%s", inst_name[unify_struct_arg_u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct_arg_c:
    fprintf(filedes, "\t%s", inst_name[unify_struct_arg_c]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_struct_arg_wc:
    fprintf(filedes, "\t%s", inst_name[unify_struct_arg_wc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_c:
    fprintf(filedes, "\t%s", inst_name[unify_arg_c]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_u:
    fprintf(filedes, "\t%s", inst_name[unify_arg_u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_read_u:
    fprintf(filedes, "\t%s", inst_name[unify_arg_read_u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_v:
    fprintf(filedes, "\t%s", inst_name[unify_arg_v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_v0:
    fprintf(filedes, "\t%s", inst_name[unify_arg_v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_w:
    fprintf(filedes, "\t%s", inst_name[unify_arg_w]);
    fprintf(filedes, ".\n"); break;
case unify_arg_struct:
    fprintf(filedes, "\t%s", inst_name[unify_arg_struct]);
    fprintf(filedes, "("); dis_struct(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_list:
    fprintf(filedes, "\t%s", inst_name[unify_arg_list]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    n = FOLLOW(cpreg-1)+1;
    dis_zs(filedes, n);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_2c:
    fprintf(filedes, "\t%s", inst_name[unify_arg_2c]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_3c:
    fprintf(filedes, "\t%s", inst_name[unify_arg_3c]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_v0u:
    fprintf(filedes, "\t%s", inst_name[unify_arg_v0u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_v0c:
    fprintf(filedes, "\t%s", inst_name[unify_arg_v0c]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_uv0:
    fprintf(filedes, "\t%s", inst_name[unify_arg_uv0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_v0w:
    fprintf(filedes, "\t%s", inst_name[unify_arg_v0w]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_wc:
    fprintf(filedes, "\t%s", inst_name[unify_arg_wc]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_2v0:
    fprintf(filedes, "\t%s", inst_name[unify_arg_2v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_3v0:
    fprintf(filedes, "\t%s", inst_name[unify_arg_3v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_4v0:
    fprintf(filedes, "\t%s", inst_name[unify_arg_4v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_3u:
    fprintf(filedes, "\t%s", inst_name[unify_arg_3u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_2u:
    fprintf(filedes, "\t%s", inst_name[unify_arg_2u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_arg_2w:
    fprintf(filedes, "\t%s", inst_name[unify_arg_2w]);
    fprintf(filedes, ".\n"); break;
case unify_arg_3w:
    fprintf(filedes, "\t%s", inst_name[unify_arg_3w]);
    fprintf(filedes, ".\n"); break;
case unify_arg_4w:
    fprintf(filedes, "\t%s", inst_name[unify_arg_4w]);
    fprintf(filedes, ".\n"); break;
case unify_arg_5w:
    fprintf(filedes, "\t%s", inst_name[unify_arg_5w]);
    fprintf(filedes, ".\n"); break;
case build_arg_c:
    fprintf(filedes, "\t%s", inst_name[build_arg_c]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_v:
    fprintf(filedes, "\t%s", inst_name[build_arg_v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_struct:
    fprintf(filedes, "\t%s", inst_name[build_arg_struct]);
    fprintf(filedes, "("); dis_struct(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_list:
    fprintf(filedes, "\t%s", inst_name[build_arg_list]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    n = FOLLOW(cpreg-1)+1;
    dis_zs(filedes, n);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_2c:
    fprintf(filedes, "\t%s", inst_name[build_arg_2c]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_3c:
    fprintf(filedes, "\t%s", inst_name[build_arg_3c]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_v0u:
    fprintf(filedes, "\t%s", inst_name[build_arg_v0u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_v0c:
    fprintf(filedes, "\t%s", inst_name[build_arg_v0c]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_uv0:
    fprintf(filedes, "\t%s", inst_name[build_arg_uv0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_v0w:
    fprintf(filedes, "\t%s", inst_name[build_arg_v0w]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_wc:
    fprintf(filedes, "\t%s", inst_name[build_arg_wc]);
    fprintf(filedes, "("); dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_4v0:
    fprintf(filedes, "\t%s", inst_name[build_arg_4v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_3v0:
    fprintf(filedes, "\t%s", inst_name[build_arg_3v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_2v0:
    fprintf(filedes, "\t%s", inst_name[build_arg_2v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_v0:
    fprintf(filedes, "\t%s", inst_name[build_arg_v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_5w:
    fprintf(filedes, "\t%s", inst_name[build_arg_5w]);
    fprintf(filedes, ".\n"); break;
case build_arg_4w:
    fprintf(filedes, "\t%s", inst_name[build_arg_4w]);
    fprintf(filedes, ".\n"); break;
case build_arg_3w:
    fprintf(filedes, "\t%s", inst_name[build_arg_3w]);
    fprintf(filedes, ".\n"); break;
case build_arg_2w:
    fprintf(filedes, "\t%s", inst_name[build_arg_2w]);
    fprintf(filedes, ".\n"); break;
case build_arg_w:
    fprintf(filedes, "\t%s", inst_name[build_arg_w]);
    fprintf(filedes, ".\n"); break;
case build_arg_4u:
    fprintf(filedes, "\t%s", inst_name[build_arg_4u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_3u:
    fprintf(filedes, "\t%s", inst_name[build_arg_3u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_2u:
    fprintf(filedes, "\t%s", inst_name[build_arg_2u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case build_arg_u:
    fprintf(filedes, "\t%s", inst_name[build_arg_u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_list:
    fprintf(filedes, "\t%s", inst_name[unify_list]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    n = FOLLOW(cpreg-1)+1;
    dis_zs(filedes, n);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_comp_list:
    fprintf(filedes, "\t%s", inst_name[unify_comp_list]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    n = FOLLOW(cpreg-1);
    dis_zs(filedes, n);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons:
    fprintf(filedes, "\t%s", inst_name[unify_cons]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_unify_cons_w:
    fprintf(filedes, "\t%s", inst_name[cut_unify_cons_w]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_w:
    fprintf(filedes, "\t%s", inst_name[unify_cons_w]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_u:
    fprintf(filedes, "\t%s", inst_name[unify_cons_u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_v0:
    fprintf(filedes, "\t%s", inst_name[unify_cons_v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_unify_cons_uu:
    fprintf(filedes, "\t%s", inst_name[cut_unify_cons_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_uu:
    fprintf(filedes, "\t%s", inst_name[unify_cons_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_unify_cons_uv:
    fprintf(filedes, "\t%s", inst_name[cut_unify_cons_uv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_uv0:
    fprintf(filedes, "\t%s", inst_name[unify_cons_uv0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_uw:
    fprintf(filedes, "\t%s", inst_name[unify_cons_uw]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_uc:
    fprintf(filedes, "\t%s", inst_name[unify_cons_uc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_unify_cons_vv:
    fprintf(filedes, "\t%s", inst_name[cut_unify_cons_vv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_v0v0:
    fprintf(filedes, "\t%s", inst_name[unify_cons_v0v0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_unify_cons_vu:
    fprintf(filedes, "\t%s", inst_name[cut_unify_cons_vu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_v0u:
    fprintf(filedes, "\t%s", inst_name[unify_cons_v0u]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_v0w:
    fprintf(filedes, "\t%s", inst_name[unify_cons_v0w]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_unify_cons_vc:
    fprintf(filedes, "\t%s", inst_name[cut_unify_cons_vc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_v0c:
    fprintf(filedes, "\t%s", inst_name[unify_cons_v0c]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_wv0:
    fprintf(filedes, "\t%s", inst_name[unify_cons_wv0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_cu:
    fprintf(filedes, "\t%s", inst_name[unify_cons_cu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case cut_unify_cons_cv:
    fprintf(filedes, "\t%s", inst_name[cut_unify_cons_cv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_cv0:
    fprintf(filedes, "\t%s", inst_name[unify_cons_cv0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_cc:
    fprintf(filedes, "\t%s", inst_name[unify_cons_cc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons_ww:
    fprintf(filedes, "\t%s", inst_name[unify_cons_ww]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_cons0_v910:
    fprintf(filedes, "\t%s", inst_name[unify_cons0_v910]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case conc:
    fprintf(filedes, "\t%s", inst_name[conc]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case leng:
    fprintf(filedes, "\t%s", inst_name[leng]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case memb_le:
    fprintf(filedes, "\t%s", inst_name[memb_le]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case memb_el:
    fprintf(filedes, "\t%s", inst_name[memb_el]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_uu:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_uu]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_uv:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_uv]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_uc:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_uc]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_uw:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_uw]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_vu:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_vu]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_vv:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_vv]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_vw:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_vw]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_vc:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_vc]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_cc:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_cc]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_constant(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_cons_v910:
    fprintf(filedes, "\t%s", inst_name[fork_unify_cons_v910]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case unify_value:
    fprintf(filedes, "\t%s", inst_name[unify_value]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fork_unify_value:
    fprintf(filedes, "\t%s", inst_name[fork_unify_value]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_constant:
    fprintf(filedes, "\t%s", inst_name[move_constant]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_constant(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_struct:
    fprintf(filedes, "\t%s", inst_name[move_struct]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_struct(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_struct0:
    fprintf(filedes, "\t%s", inst_name[move_struct0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_struct(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_list:
    fprintf(filedes, "\t%s", inst_name[move_list]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    n = FOLLOW(cpreg-1)+1;
    dis_zs(filedes, n);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_comp_list:
    fprintf(filedes, "\t%s", inst_name[move_comp_list]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    n = FOLLOW(cpreg-1);
    dis_zs(filedes, n);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_comp_list1:
    fprintf(filedes, "\t%s", inst_name[move_comp_list1]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_cons:
    fprintf(filedes, "\t%s", inst_name[move_cons]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_cons0_uv:
    fprintf(filedes, "\t%s", inst_name[move_cons0_uv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_cons0_uu:
    fprintf(filedes, "\t%s", inst_name[move_cons0_uu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_var:
    fprintf(filedes, "\t%s", inst_name[move_var]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_value:
    fprintf(filedes, "\t%s", inst_name[move_value]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case and:
    fprintf(filedes, "\t%s", inst_name[and]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case or:
    fprintf(filedes, "\t%s", inst_name[or]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case lshiftl:
    fprintf(filedes, "\t%s", inst_name[lshiftl]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case lshiftr:
    fprintf(filedes, "\t%s", inst_name[lshiftr]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case complement:
    fprintf(filedes, "\t%s", inst_name[complement]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case add_uuv:
    fprintf(filedes, "\t%s", inst_name[add_uuv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case add_uiv:
    fprintf(filedes, "\t%s", inst_name[add_uiv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case add_u1v:
    fprintf(filedes, "\t%s", inst_name[add_u1v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case add1:
    fprintf(filedes, "\t%s", inst_name[add1]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case sub_uuv:
    fprintf(filedes, "\t%s", inst_name[sub_uuv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case sub_uiv:
    fprintf(filedes, "\t%s", inst_name[sub_uiv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case sub_u1v:
    fprintf(filedes, "\t%s", inst_name[sub_u1v]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case sub1:
    fprintf(filedes, "\t%s", inst_name[sub1]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case sub_iuv:
    fprintf(filedes, "\t%s", inst_name[sub_iuv]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case mul:
    fprintf(filedes, "\t%s", inst_name[mul]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case mul_iuv:
    fprintf(filedes, "\t%s", inst_name[mul_iuv]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case mul_uuv:
    fprintf(filedes, "\t%s", inst_name[mul_uuv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case div:
    fprintf(filedes, "\t%s", inst_name[div]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case idiv:
    fprintf(filedes, "\t%s", inst_name[idiv]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case idiv_uiv:
    fprintf(filedes, "\t%s", inst_name[idiv_uiv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case idiv_uuv:
    fprintf(filedes, "\t%s", inst_name[idiv_uuv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case divge:
    fprintf(filedes, "\t%s", inst_name[divge]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case divle:
    fprintf(filedes, "\t%s", inst_name[divle]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case mod:
    fprintf(filedes, "\t%s", inst_name[mod]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case picat_arg:
    fprintf(filedes, "\t%s", inst_name[picat_arg]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case arg0:
    fprintf(filedes, "\t%s", inst_name[arg0]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case setarg:
    fprintf(filedes, "\t%s", inst_name[setarg]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case setarg0:
    fprintf(filedes, "\t%s", inst_name[setarg0]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case functor:
    fprintf(filedes, "\t%s", inst_name[functor]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case functor_uvv:
    fprintf(filedes, "\t%s", inst_name[functor_uvv]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case functor_vuu:
    fprintf(filedes, "\t%s", inst_name[functor_vuu]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case functor_arity:
    fprintf(filedes, "\t%s", inst_name[functor_arity]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case get_clause_copy:
    fprintf(filedes, "\t%s", inst_name[get_clause_copy]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case garbage_collect:
    fprintf(filedes, "\t%s", inst_name[garbage_collect]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case catch_clean_up:
    fprintf(filedes, "\t%s", inst_name[catch_clean_up]);
    fprintf(filedes, ".\n"); break;
case throw_ball:
    fprintf(filedes, "\t%s", inst_name[throw_ball]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case builtin0:
    fprintf(filedes, "\t%s", inst_name[builtin0]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case builtin1:
    fprintf(filedes, "\t%s", inst_name[builtin1]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case builtin2:
    fprintf(filedes, "\t%s", inst_name[builtin2]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case builtin3:
    fprintf(filedes, "\t%s", inst_name[builtin3]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case builtin4:
    fprintf(filedes, "\t%s", inst_name[builtin4]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case move_vars:
    fprintf(filedes, "\t%s", inst_name[move_vars]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call:
    fprintf(filedes, "\t%s", inst_name[last_call]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    fprintf(filedes, ","); sym_ptr = (SYM_REC_PTR)FOLLOW(cpreg-1);
    n = GET_ARITY(sym_ptr);
    dis_zs(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call_var0:
    fprintf(filedes, "\t%s", inst_name[last_call_var0]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call0:
    fprintf(filedes, "\t%s", inst_name[last_call0]);
    fprintf(filedes, "("); dis_struct(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call_d:
    fprintf(filedes, "\t%s", inst_name[last_call_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_zs(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call1_d:
    fprintf(filedes, "\t%s", inst_name[last_call1_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_zs(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call_au_d:
    fprintf(filedes, "\t%s", inst_name[last_call_au_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call_au_det:
    fprintf(filedes, "\t%s", inst_name[last_call_au_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call_au_nondet:
    fprintf(filedes, "\t%s", inst_name[last_call_au_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call_au_ot:
    fprintf(filedes, "\t%s", inst_name[last_call_au_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call1_au_d:
    fprintf(filedes, "\t%s", inst_name[last_call1_au_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call0_d:
    fprintf(filedes, "\t%s", inst_name[last_call0_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call0_sa_d:
    fprintf(filedes, "\t%s", inst_name[last_call0_sa_d]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call0_sa_det:
    fprintf(filedes, "\t%s", inst_name[last_call0_sa_det]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call0_sa_nondet:
    fprintf(filedes, "\t%s", inst_name[last_call0_sa_nondet]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case last_call0_sa_ot:
    fprintf(filedes, "\t%s", inst_name[last_call0_sa_ot]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tr_det_call_au:
    fprintf(filedes, "\t%s", inst_name[tr_det_call_au]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tr_det_call1_au:
    fprintf(filedes, "\t%s", inst_name[tr_det_call1_au]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tr_det_call2_au:
    fprintf(filedes, "\t%s", inst_name[tr_det_call2_au]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tr_det_call0:
    fprintf(filedes, "\t%s", inst_name[tr_det_call0]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tr_nondet_call_au:
    fprintf(filedes, "\t%s", inst_name[tr_nondet_call_au]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tr_nondet_call1_au:
    fprintf(filedes, "\t%s", inst_name[tr_nondet_call1_au]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tr_nondet_call2_au:
    fprintf(filedes, "\t%s", inst_name[tr_nondet_call2_au]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tr_nondet_call0:
    fprintf(filedes, "\t%s", inst_name[tr_nondet_call0]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case allocate_susp:
    fprintf(filedes, "\t%s", inst_name[allocate_susp]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case return_commit:
    fprintf(filedes, "\t%s", inst_name[return_commit]);
    fprintf(filedes, ".\n"); break;
case return_delay:
    fprintf(filedes, "\t%s", inst_name[return_delay]);
    fprintf(filedes, ".\n"); break;
case no_vars_gt:
    fprintf(filedes, "\t%s", inst_name[no_vars_gt]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case trigger_var_ins:
    fprintf(filedes, "\t%s", inst_name[trigger_var_ins]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case trigger_var_minmax:
    fprintf(filedes, "\t%s", inst_name[trigger_var_minmax]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case trigger_var_dom:
    fprintf(filedes, "\t%s", inst_name[trigger_var_dom]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case trigger_ins_min_max:
    fprintf(filedes, "\t%s", inst_name[trigger_ins_min_max]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case trigger_var_any_dom:
    fprintf(filedes, "\t%s", inst_name[trigger_var_any_dom]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case trigger_cg_event_handler:
    fprintf(filedes, "\t%s", inst_name[trigger_cg_event_handler]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case fetch_event_object:
    fprintf(filedes, "\t%s", inst_name[fetch_event_object]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case delay:
    fprintf(filedes, "\t%s", inst_name[delay]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case end_delay:
    fprintf(filedes, "\t%s", inst_name[end_delay]);
    fprintf(filedes, ".\n"); break;
case jmpn_dvar_y:
    fprintf(filedes, "\t%s", inst_name[jmpn_dvar_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_susp_var_y:
    fprintf(filedes, "\t%s", inst_name[jmpn_susp_var_y]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case interval_consistent_eq:
    fprintf(filedes, "\t%s", inst_name[interval_consistent_eq]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case interval_consistent_eq_nocoe:
    fprintf(filedes, "\t%s", inst_name[interval_consistent_eq_nocoe]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case interval_consistent_ge:
    fprintf(filedes, "\t%s", inst_name[interval_consistent_ge]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case call_binary_constr_eq:
    fprintf(filedes, "\t%s", inst_name[call_binary_constr_eq]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case domain_next_inst_yyy:
    fprintf(filedes, "\t%s", inst_name[domain_next_inst_yyy]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case domain_set_false_yy:
    fprintf(filedes, "\t%s", inst_name[domain_set_false_yy]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case domain_min_max_yyy:
    fprintf(filedes, "\t%s", inst_name[domain_min_max_yyy]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case domain_region:
    fprintf(filedes, "\t%s", inst_name[domain_region]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case domain_region_min:
    fprintf(filedes, "\t%s", inst_name[domain_region_min]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case domain_region_max:
    fprintf(filedes, "\t%s", inst_name[domain_region_max]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case v_in_cv_int:
    fprintf(filedes, "\t%s", inst_name[v_in_cv_int]);
    fprintf(filedes, ".\n"); break;
case v_in_vc_int:
    fprintf(filedes, "\t%s", inst_name[v_in_vc_int]);
    fprintf(filedes, ".\n"); break;
case u_in_cu_int:
    fprintf(filedes, "\t%s", inst_name[u_in_cu_int]);
    fprintf(filedes, ".\n"); break;
case u_in_uc_int:
    fprintf(filedes, "\t%s", inst_name[u_in_uc_int]);
    fprintf(filedes, ".\n"); break;
case u_eq_cu_dom:
    fprintf(filedes, "\t%s", inst_name[u_eq_cu_dom]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case u_eq_uc_dom:
    fprintf(filedes, "\t%s", inst_name[u_eq_uc_dom]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case bcp:
    fprintf(filedes, "\t%s", inst_name[bcp]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case activate_first_agent:
    fprintf(filedes, "\t%s", inst_name[activate_first_agent]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case activate_agents_conjunction:
    fprintf(filedes, "\t%s", inst_name[activate_agents_conjunction]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case activate_agents_disjunction:
    fprintf(filedes, "\t%s", inst_name[activate_agents_disjunction]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case table_allocate:
    fprintf(filedes, "\t%s", inst_name[table_allocate]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_struct(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case table_produce:
    fprintf(filedes, "\t%s", inst_name[table_produce]);
    fprintf(filedes, ".\n"); break;
case table_consume:
    fprintf(filedes, "\t%s", inst_name[table_consume]);
    fprintf(filedes, ".\n"); break;
case table_check_completion:
    fprintf(filedes, "\t%s", inst_name[table_check_completion]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case table_neck_no_reeval:
    fprintf(filedes, "\t%s", inst_name[table_neck_no_reeval]);
    fprintf(filedes, ".\n"); break;
case last_tabled_call:
    fprintf(filedes, "\t%s", inst_name[last_tabled_call]);
    fprintf(filedes, ".\n"); break;
case table_cut:
    fprintf(filedes, "\t%s", inst_name[table_cut]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case table_neck:
    fprintf(filedes, "\t%s", inst_name[table_neck]);
    fprintf(filedes, ".\n"); break;
case table_eager_consume:
    fprintf(filedes, "\t%s", inst_name[table_eager_consume]);
    fprintf(filedes, ".\n"); break;
case table_set_new_bit:
    fprintf(filedes, "\t%s", inst_name[table_set_new_bit]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmpn_unif:
    fprintf(filedes, "\t%s", inst_name[jmpn_unif]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case jmp_unif:
    fprintf(filedes, "\t%s", inst_name[jmp_unif]);
    fprintf(filedes, "("); dis_z(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case arg_no_chk:
    fprintf(filedes, "\t%s", inst_name[arg_no_chk]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case setarg0_no_chk:
    fprintf(filedes, "\t%s", inst_name[setarg0_no_chk]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case bcp1:
    fprintf(filedes, "\t%s", inst_name[bcp1]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case domain_nogood_region:
    fprintf(filedes, "\t%s", inst_name[domain_nogood_region]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_z(filedes, *cpreg++);
    dis_z(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case endfile:
    fprintf(filedes, "\t%s", inst_name[endfile]);
    fprintf(filedes, "("); dis_addr(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case tabsize:
    fprintf(filedes, "\t%s", inst_name[tabsize]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case table_mode:
    fprintf(filedes, "\t%s", inst_name[table_mode]);
    fprintf(filedes, "("); dis_literal(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    dis_literal(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case asp_decode:
    fprintf(filedes, "\t%s", inst_name[asp_decode]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case asp_add_tuple:
    fprintf(filedes, "\t%s", inst_name[asp_add_tuple]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_literal(filedes, *cpreg++);
    n = FOLLOW(cpreg-1);
    dis_ys(filedes, n);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
case set_catcher_frame:
    fprintf(filedes, "\t%s", inst_name[set_catcher_frame]);
    fprintf(filedes, ".\n"); break;
case filter_clauses:
    fprintf(filedes, "\t%s", inst_name[filter_clauses]);
    fprintf(filedes, "("); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    fprintf(filedes, ","); dis_y(filedes, *cpreg++);
    dis_y(filedes, *cpreg++);
    fprintf(filedes, ")"); fprintf(filedes, ".\n"); break;
}
