#include        "l.h"

#define X1      0
#define X2      0
#define X3      0
#define C       0xf200

Optab optab[] =
/*      as, fas, srcsp, dstsp, optype, opcode */
{
       { AXXX },
       { AABCD, AXXX, X1, X2, X3, 0x4e71 },
       { AADDB, AXXX, 2, 0, 3, 0xd000, 0x5000,      0, 0x0600 },
       { AADDL, AXXX, 4, 0, 3, 0xd080, 0x5080, 0xd1c0, 0x0680 },
       { AADDW, AXXX, 2, 0, 3, 0xd040, 0x5040, 0xd0c0, 0x0640 },
       { AADDXB },
       { AADDXL },
       { AADDXW },
       { AADJSP },
       { AANDB, AXXX, 2, 0, 9, 0xc000, 0xc100, 0x0200 },
       { AANDL, AXXX, 4, 0, 9, 0xc080, 0xc180, 0x0280 },
       { AANDW, AXXX, 2, 0, 9, 0xc040, 0xc140, 0x0240 },
       { AASLB, AXXX, 0, 2, 12, 0xe100 },
       { AASLL, AXXX, 0, 4, 12, 0xe180 },
       { AASLW, AXXX, 0, 2, 12, 0xe140 },
       { AASRB, AXXX, 0, 2, 12, 0xe000 },
       { AASRL, AXXX, 0, 4, 12, 0xe080 },
       { AASRW, AXXX, 0, 2, 12, 0xe040 },
       { ABCASE, AXXX, 0, 0, 33 },
       { ABCC, AXXX, 0, 0, 1, 0x6400 },
       { ABCHG, AXXX, 2, 2, 27, 0x0140, 0x0840 },
       { ABCLR, AXXX, 2, 2, 27, 0x0180, 0x0880 },
       { ABCS, AXXX, 0, 0, 1, 0x6500 },
       { ABEQ, AXXX, 0, 0, 1, 0x6700 },
       { ABFCHG, AXXX, 0, 0, 24, 0xeac0 },
       { ABFCLR, AXXX, 0, 0, 24, 0xecc0 },
       { ABFEXTS, AXXX, 0, 0, 24, 0xebc0 },
       { ABFEXTU, AXXX, 0, 0, 24, 0xe9c0 },
       { ABFFFO, AXXX, 0, 0, 24, 0xedc0 },
       { ABFINS, AXXX, 0, 0, 24, 0xefc0 },
       { ABFSET, AXXX, 0, 0, 24, 0xeec0 },
       { ABFTST, AXXX, 0, 0, 24, 0xe8c0 },
       { ABGE, AXXX, 0, 0, 1, 0x6c00 },
       { ABGT, AXXX, 0, 0, 1, 0x6e00 },
       { ABHI, AXXX, 0, 0, 1, 0x6200 },
       { ABKPT },
       { ABLE, AXXX, 0, 0, 1, 0x6f00 },
       { ABLS, AXXX, 0, 0, 1, 0x6300 },
       { ABLT, AXXX, 0, 0, 1, 0x6d00 },
       { ABMI, AXXX, 0, 0, 1, 0x6b00 },
       { ABNE, AXXX, 0, 0, 1, 0x6600 },
       { ABPL, AXXX, 0, 0, 1, 0x6a00 },
       { ABRA, AXXX, 0, 0, 1, 0x6000 },
       { ABSET, AXXX, 2, 2, 27, 0x01c0, 0x08c0 },
       { ABSR, AXXX, 0, 0, 1, 0x6100, 0x4eb8 },
       { ABTST, AXXX, 2, 2, 27, 0x0100, 0x0800 },
       { ABVC, AXXX, 0, 0, 1, 0x6800 },
       { ABVS, AXXX, 0, 0, 1, 0x6900 },
       { ACALLM },
       { ACAS2B },
       { ACAS2L },
       { ACAS2W },
       { ACASB },
       { ACASEW, AXXX, 0, 0, 32, 0x4efb, 0 },
       { ACASL },
       { ACASW },
       { ACHK2B, AXXX, 2, 0, 31, 0x00c0, 0x0800 },
       { ACHK2L, AXXX, 4, 0, 31, 0x04c0, 0x0800 },
       { ACHK2W, AXXX, 2, 0, 31, 0x02c0, 0x0800 },
       { ACHKL, AXXX, 4, 4, 26, 0x4100 },
       { ACHKW, AXXX, 2, 2, 26, 0x4180 },
       { ACLRB, AXXX, 0, -2, 5, 0x4200 },
       { ACLRL, AXXX, 0, -4, 5, 0x4280 },
       { ACLRW, AXXX, 0, -2, 5, 0x4240 },
       { ACMP2B, AXXX, 2, 0, 31, 0x00c0, 0x0000 },
       { ACMP2L, AXXX, 4, 0, 31, 0x04c0, 0x0000 },
       { ACMP2W, AXXX, 2, 0, 31, 0x02c0, 0x0000 },
       { ACMPB, AXXX, 2, 2, 7, 0xb000,      0, 0x0c00, 0xb108 },
       { ACMPL, AXXX, 4, 4, 7, 0xb080, 0xb100, 0x0c80, 0xb188 },
       { ACMPW, AXXX, 2, 2, 7, 0xb040, 0xb080, 0x0c40, 0xb148 },
       { ADATA },
       { ADBCC, AXXX, 0, 0, 15, 0x54c8 },
       { ADBCS, AXXX, 0, 0, 15, 0x55c8 },
       { ADBEQ, AXXX, 0, 0, 15, 0x57c8 },
       { ADBF, AXXX, 0, 0, 15, 0x51c8 },
       { ADBGE, AXXX, 0, 0, 15, 0x5cc8 },
       { ADBGT, AXXX, 0, 0, 15, 0x5ec8 },
       { ADBHI, AXXX, 0, 0, 15, 0x52c8 },
       { ADBLE, AXXX, 0, 0, 15, 0x5fc8 },
       { ADBLS, AXXX, 0, 0, 15, 0x53c8 },
       { ADBLT, AXXX, 0, 0, 15, 0x5dc8 },
       { ADBMI, AXXX, 0, 0, 15, 0x5bc8 },
       { ADBNE, AXXX, 0, 0, 15, 0x56c8 },
       { ADBPL, AXXX, 0, 0, 15, 0x5ac8 },
       { ADBT, AXXX, 0, 0, 15, 0x50c8 },
       { ADBVC, AXXX, 0, 0, 15, 0x58c8 },
       { ADBVS, AXXX, 0, 0, 15, 0x59c8 },
       { ADIVSL, AXXX, 4, 0, 14, 0x4c40, 0x0800 },
       { ADIVSW, AXXX, 2, 0, 13, 0x81c0 },
       { ADIVUL, AXXX, 4, 0, 14, 0x4c40, 0x0000 },
       { ADIVUW, AXXX, 2, 0, 13, 0x80c0 },
       { AEND },
       { AEORB, AXXX, 2, 0, 10, 0xb100, 0x0a00 },
       { AEORL, AXXX, 4, 0, 10, 0xb180, 0x0a80 },
       { AEORW, AXXX, 2, 0, 10, 0xb140, 0x0a40 },
       { AEXG },
       { AEXTBL, AXXX, 0, 0, 11, 0x49c0 },
       { AEXTBW, AXXX, 0, 0, 11, 0x4880 },
       { AEXTWL, AXXX, 0, 0, 11, 0x48c0 },
       { AFABSB, AXXX, 2, 0, 17, C, 0x0018, 0x5818 },
       { AFABSD, AFABSL, 8, 0, 17, C, 0x0018, 0x5418 },
       { AFABSF, AFABSL, 4, 0, 17, C, 0x0018, 0x4418 },
       { AFABSL, AXXX, 4, 0, 17, C, 0x0018, 0x4018 },
       { AFABSW, AXXX, 2, 0, 17, C, 0x0018, 0x5018 },
       { AFACOSB, AXXX, 2, 0, 17, C, 0x001c, 0x581c },
       { AFACOSD, AFACOSL, 8, 0, 17, C, 0x001c, 0x541c },
       { AFACOSF, AFACOSL, 4, 0, 17, C, 0x001c, 0x441c },
       { AFACOSL, AXXX, 4, 0, 17, C, 0x001c, 0x401c },
       { AFACOSW, AXXX, 2, 0, 17, C, 0x001c, 0x501c },
       { AFADDB, AXXX, 2, 0, 17, C, 0x0022, 0x5822 },
       { AFADDD, AFADDL, 8, 0, 17, C, 0x0022, 0x5422 },
       { AFADDF, AFADDL, 4, 0, 17, C, 0x0022, 0x4422 },
       { AFADDL, AXXX, 4, 0, 17, C, 0x0022, 0x4022 },
       { AFADDW, AXXX, 2, 0, 17, C, 0x0022, 0x5022 },
       { AFASINB, AXXX, 2, 0, 17, C, 0x000c, 0x580c },
       { AFASIND, AFASINL, 8, 0, 17, C, 0x000c, 0x540c },
       { AFASINF, AFASINL, 4, 0, 17, C, 0x000c, 0x440c },
       { AFASINL, AXXX, 4, 0, 17, C, 0x000c, 0x400c },
       { AFASINW, AXXX, 2, 0, 17, C, 0x000c, 0x500c },
       { AFATANB, AXXX, 2, 0, 17, C, 0x000a, 0x580a },
       { AFATAND, AFATANL, 8, 0, 17, C, 0x000a, 0x540a },
       { AFATANF, AFATANL, 4, 0, 17, C, 0x000a, 0x440a },
       { AFATANHB, AXXX, 2, 0, 17, C, 0x000d, 0x580d },
       { AFATANHD, AFATANHL, 8, 0, 17, C, 0x000d, 0x540d },
       { AFATANHF, AFATANHL, 4, 0, 17, C, 0x000d, 0x440d },
       { AFATANHL, AXXX, 4, 0, 17, C, 0x000d, 0x400d },
       { AFATANHW, AXXX, 2, 0, 17, C, 0x000d, 0x500d },
       { AFATANL, AXXX, 4, 0, 17, C, 0x000a, 0x400a },
       { AFATANW, AXXX, 2, 0, 17, C, 0x000a, 0x500a },
       { AFBEQ, AXXX, 0, 0, 18, C+0x81 },
       { AFBF, AXXX, 0, 0, 18, C+0x8f },
       { AFBGE, AXXX, 0, 0, 18, C+0x93 },
       { AFBGT, AXXX, 0, 0, 18, C+0x92 },
       { AFBLE, AXXX, 0, 0, 18, C+0x95 },
       { AFBLT, AXXX, 0, 0, 18, C+0x94 },
       { AFBNE, AXXX, 0, 0, 18, C+0x8e },
       { AFBT, AXXX, 0, 0, 18, C+0x80 },
       { AFCMPB, AXXX, 0, 2, 22, C, 0x0038, 0x5838 },
       { AFCMPD, AFCMPL, 0, 8, 22, C, 0x0038, 0x5438 },
       { AFCMPF, AFCMPL, 0, 4, 22, C, 0x0038, 0x4438 },
       { AFCMPL, AXXX, 0, 4, 22, C, 0x0038, 0x4038 },
       { AFCMPW, AXXX, 0, 2, 22, C, 0x0038, 0x5038 },
       { AFCOSB, AXXX, 2, 0, 17, C, 0x001d, 0x581d },
       { AFCOSD, AFCOSL, 8, 0, 17, C, 0x001d, 0x541d },
       { AFCOSF, AFCOSL, 4, 0, 17, C, 0x001d, 0x441d },
       { AFCOSHB, AXXX, 2, 0, 17, C, 0x0019, 0x5819 },
       { AFCOSHD, AFCOSHL, 8, 0, 17, C, 0x0019, 0x5419 },
       { AFCOSHF, AFCOSHL, 4, 0, 17, C, 0x0019, 0x4419 },
       { AFCOSHL, AXXX, 4, 0, 17, C, 0x0019, 0x4019 },
       { AFCOSHW, AXXX, 2, 0, 17, C, 0x0019, 0x5019 },
       { AFCOSL, AXXX, 4, 0, 17, C, 0x001d, 0x401d },
       { AFCOSW, AXXX, 2, 0, 17, C, 0x001d, 0x501d },
       { AFDBEQ, AXXX, 0, 0, 19, C+0x48, 0x01 },
       { AFDBF, AXXX, 0, 0, 19, C+0x48, 0x0f },
       { AFDBGE, AXXX, 0, 0, 19, C+0x48, 0x13 },
       { AFDBGT, AXXX, 0, 0, 19, C+0x48, 0x12 },
       { AFDBLE, AXXX, 0, 0, 19, C+0x48, 0x15 },
       { AFDBLT, AXXX, 0, 0, 19, C+0x48, 0x14 },
       { AFDBNE, AXXX, 0, 0, 19, C+0x48, 0x0e },
       { AFDBT, AXXX, 0, 0, 19, C+0x48, 0x00 },
       { AFDIVB, AXXX, 2, 0, 17, C, 0x0020, 0x5820 },
       { AFDIVD, AFDIVL, 8, 0, 17, C, 0x0020, 0x5420 },
       { AFDIVF, AFDIVL, 4, 0, 17, C, 0x0020, 0x4420 },
       { AFDIVL, AXXX, 4, 0, 17, C, 0x0020, 0x4020 },
       { AFDIVW, AXXX, 2, 0, 17, C, 0x0020, 0x5020 },
       { AFETOXB, AXXX, 2, 0, 17, C, 0x0010, 0x5810 },
       { AFETOXD, AFETOXL, 8, 0, 17, C, 0x0010, 0x5410 },
       { AFETOXF, AFETOXL, 4, 0, 17, C, 0x0010, 0x4410 },
       { AFETOXL, AXXX, 4, 0, 17, C, 0x0010, 0x4010 },
       { AFETOXM1B, AXXX, 2, 0, 17, C, 0x0008, 0x5808 },
       { AFETOXM1D, AFETOXM1L, 8, 0, 17, C, 0x0008, 0x5408 },
       { AFETOXM1F, AFETOXM1L, 4, 0, 17, C, 0x0008, 0x4408 },
       { AFETOXM1L, AXXX, 4, 0, 17, C, 0x0008, 0x4008 },
       { AFETOXM1W, AXXX, 2, 0, 17, C, 0x0008, 0x5008 },
       { AFETOXW, AXXX, 2, 0, 17, C, 0x0010, 0x5010 },
       { AFGETEXPB, AXXX, 2, 0, 17, C, 0x001e, 0x581e },
       { AFGETEXPD, AFGETEXPL, 8, 0, 17, C, 0x001e, 0x541e },
       { AFGETEXPF, AFGETEXPL, 4, 0, 17, C, 0x001e, 0x441e },
       { AFGETEXPL, AXXX, 4, 0, 17, C, 0x001e, 0x401e },
       { AFGETEXPW, AXXX, 2, 0, 17, C, 0x001e, 0x501e },
       { AFGETMANB, AXXX, 2, 0, 17, C, 0x001f, 0x581f },
       { AFGETMAND, AFGETMANL, 8, 0, 17, C, 0x001f, 0x541f },
       { AFGETMANF, AFGETMANL, 4, 0, 17, C, 0x001f, 0x441f },
       { AFGETMANL, AXXX, 4, 0, 17, C, 0x001f, 0x401f },
       { AFGETMANW, AXXX, 2, 0, 17, C, 0x001f, 0x501f },
       { AFINTB, AXXX, 2, 0, 17, C, 0x0001, 0x5801 },
       { AFINTD, AFINTL, 8, 0, 17, C, 0x0001, 0x5401 },
       { AFINTF, AFINTL, 4, 0, 17, C, 0x0001, 0x4401 },
       { AFINTL, AXXX, 4, 0, 17, C, 0x0001, 0x4001 },
       { AFINTRZB, AXXX, 2, 0, 17, C, 0x0003, 0x5803 },
       { AFINTRZD, AFINTRZL, 8, 0, 17, C, 0x0003, 0x5403 },
       { AFINTRZF, AFINTRZL, 4, 0, 17, C, 0x0003, 0x4403 },
       { AFINTRZL, AXXX, 4, 0, 17, C, 0x0003, 0x4003 },
       { AFINTRZW, AXXX, 2, 0, 17, C, 0x0003, 0x5003 },
       { AFINTW, AXXX, 2, 0, 17, C, 0x0001, 0x5001 },
       { AFLOG10B, AXXX, 2, 0, 17, C, 0x0015, 0x5815 },
       { AFLOG10D, AFLOG10L, 8, 0, 17, C, 0x0015, 0x5415 },
       { AFLOG10F, AFLOG10L, 4, 0, 17, C, 0x0015, 0x4415 },
       { AFLOG10L, AXXX, 4, 0, 17, C, 0x0015, 0x4015 },
       { AFLOG10W, AXXX, 2, 0, 17, C, 0x0015, 0x5015 },
       { AFLOG2B, AXXX, 2, 0, 17, C, 0x0016, 0x5816 },
       { AFLOG2D, AFLOG2L, 8, 0, 17, C, 0x0016, 0x5416 },
       { AFLOG2F, AFLOG2L, 4, 0, 17, C, 0x0016, 0x4416 },
       { AFLOG2L, AXXX, 4, 0, 17, C, 0x0016, 0x4016 },
       { AFLOG2W, AXXX, 2, 0, 17, C, 0x0016, 0x5016 },
       { AFLOGNB, AXXX, 2, 0, 17, C, 0x0014, 0x5814 },
       { AFLOGND, AFLOGNL, 8, 0, 17, C, 0x0014, 0x5414 },
       { AFLOGNF, AFLOGNL, 4, 0, 17, C, 0x0014, 0x4414 },
       { AFLOGNL, AXXX, 4, 0, 17, C, 0x0014, 0x4014 },
       { AFLOGNP1B, AXXX, 2, 0, 17, C, 0x0006, 0x5806 },
       { AFLOGNP1D, AFLOGNP1L, 8, 0, 17, C, 0x0006, 0x5406 },
       { AFLOGNP1F, AFLOGNP1L, 4, 0, 17, C, 0x0006, 0x4406 },
       { AFLOGNP1L, AXXX, 4, 0, 17, C, 0x0006, 0x4006 },
       { AFLOGNP1W, AXXX, 2, 0, 17, C, 0x0006, 0x5006 },
       { AFLOGNW, AXXX, 2, 0, 17, C, 0x0014, 0x5014 },
       { AFMODB, AXXX, 2, 0, 17, C, 0x0021, 0x5821 },
       { AFMODD, AFMODL, 8, 0, 17, C, 0x0021, 0x5421 },
       { AFMODF, AFMODL, 4, 0, 17, C, 0x0021, 0x4421 },
       { AFMODL, AXXX, 4, 0, 17, C, 0x0021, 0x4021 },
       { AFMODW, AXXX, 2, 0, 17, C, 0x0021, 0x5021 },
       { AFMOVEB, AXXX, 2, -2, 16, C, 0x0000, 0x7800, 0x5800 },
       { AFMOVED, AFMOVEL, 8, -8, 16, C, 0x0000, 0x7400, 0x5400 },
       { AFMOVEF, AFMOVEL, 4, -4, 16, C, 0x0000, 0x6400, 0x4400 },
       { AFMOVEL, AXXX, 4, -4, 16, C, 0x0000, 0x6000, 0x4000 },
       { AFMOVEM, AXXX, 2, 2, 28, C },
       { AFMOVEMC, AXXX, 2, 2, 29, C },
       { AFMOVEW, AXXX, 2, -2, 16, C, 0x0000, 0x7000, 0x5000 },
       { AFMULB, AXXX, 2, 0, 17, C, 0x0023, 0x5823 },
       { AFMULD, AFMULL, 8, 0, 17, C, 0x0023, 0x5423 },
       { AFMULF, AFMULL, 4, 0, 17, C, 0x0023, 0x4423 },
       { AFMULL, AXXX, 4, 0, 17, C, 0x0023, 0x4023 },
       { AFMULW, AXXX, 2, 0, 17, C, 0x0023, 0x5023 },
       { AFNEGB, AXXX, 2, 0, 21, C, 0x001a, 0x581a },
       { AFNEGD, AFNEGL, 8, 0, 21, C, 0x001a, 0x541a },
       { AFNEGF, AFNEGL, 4, 0, 21, C, 0x001a, 0x441a },
       { AFNEGL, AXXX, 4, 0, 21, C, 0x001a, 0x401a },
       { AFNEGW, AXXX, 2, 0, 21, C, 0x001a, 0x501a },
       { AFREMB, AXXX, 2, 0, 17, C, 0x0025, 0x5825 },
       { AFREMD, AFREML, 8, 0, 17, C, 0x0025, 0x5425 },
       { AFREMF, AFREML, 4, 0, 17, C, 0x0025, 0x4425 },
       { AFREML, AXXX, 4, 0, 17, C, 0x0025, 0x4025 },
       { AFREMW, AXXX, 2, 0, 17, C, 0x0025, 0x5025 },
       { AFRESTORE, AXXX, 0, 2, 5, C+0x0140 },
       { AFSAVE, AXXX, 0, 2, 5, C+0x0100 },
       { AFSCALEB, AXXX, 2, 0, 17, C, 0x0026, 0x5826 },
       { AFSCALED, AFSCALEL, 8, 0, 17, C, 0x0026, 0x5426 },
       { AFSCALEF, AFSCALEL, 4, 0, 17, C, 0x0026, 0x4426 },
       { AFSCALEL, AXXX, 4, 0, 17, C, 0x0026, 0x4026 },
       { AFSCALEW, AXXX, 2, 0, 17, C, 0x0026, 0x5026 },
       { AFSEQ, AXXX, X1, X2, X3, 0xffff },
       { AFSF, AXXX, 4, X2, X3, 0xffff },
       { AFSGE, AXXX, X1, X2, X3, 0xffff },
       { AFSGT, AXXX, X1, X2, X3, 0xffff },
       { AFSINB, AXXX, 2, 0, 17, C, 0x000e, 0x580e },
       { AFSIND, AFSINL, 8, 0, 17, C, 0x000e, 0x540e },
       { AFSINF, AFSINL, 4, 0, 17, C, 0x000e, 0x440e },
       { AFSINHB, AXXX, 2, 0, 17, C, 0x0002, 0x5802 },
       { AFSINHD, AFSINHL, 8, 0, 17, C, 0x0002, 0x5402 },
       { AFSINHF, AFSINHL, 4, 0, 17, C, 0x0002, 0x4402 },
       { AFSINHL, AXXX, 4, 0, 17, C, 0x0002, 0x4002 },
       { AFSINHW, AXXX, 2, 0, 17, C, 0x0002, 0x5002 },
       { AFSINL, AXXX, 4, 0, 17, C, 0x000e, 0x400e },
       { AFSINW, AXXX, 2, 0, 17, C, 0x000e, 0x500e },
       { AFSLE, AXXX, X1, X2, X3, 0xffff },
       { AFSLT, AXXX, X1, X2, X3, 0xffff },
       { AFSNE, AXXX, X1, X2, X3, 0xffff },
       { AFSQRTB, AXXX, 2, 0, 17, C, 0x0004, 0x5804 },
       { AFSQRTD, AFSQRTL, 8, 0, 17, C, 0x0004, 0x5404 },
       { AFSQRTF, AFSQRTL, 4, 0, 17, C, 0x0004, 0x4404 },
       { AFSQRTL, AXXX, 4, 0, 17, C, 0x0004, 0x4004 },
       { AFSQRTW, AXXX, 2, 0, 17, C, 0x0004, 0x5004 },
       { AFST, AXXX, X1, X2, X3, 0xffff },
       { AFSUBB, AXXX, 2, 0, 17, C, 0x0028, 0x5828 },
       { AFSUBD, AFSUBL, 8, 0, 17, C, 0x0028, 0x5428 },
       { AFSUBF, AFSUBL, 4, 0, 17, C, 0x0028, 0x4428 },
       { AFSUBL, AXXX, 4, 0, 17, C, 0x0028, 0x4028 },
       { AFSUBW, AXXX, 2, 0, 17, C, 0x0028, 0x5028 },
       { AFTANB, AXXX, 2, 0, 17, C, 0x000f, 0x580f },
       { AFTAND, AFTANL, 8, 0, 17, C, 0x000f, 0x540f },
       { AFTANF, AFTANL, 4, 0, 17, C, 0x000f, 0x440f },
       { AFTANHB, AXXX, 2, 0, 17, C, 0x0009, 0x5809 },
       { AFTANHD, AFTANHL, 8, 0, 17, C, 0x0009, 0x5409 },
       { AFTANHF, AFTANHL, 4, 0, 17, C, 0x0009, 0x4409 },
       { AFTANHL, AXXX, 4, 0, 17, C, 0x0009, 0x4009 },
       { AFTANHW, AXXX, 2, 0, 17, C, 0x0009, 0x5009 },
       { AFTANL, AXXX, 4, 0, 17, C, 0x000f, 0x400f },
       { AFTANW, AXXX, 2, 0, 17, C, 0x000f, 0x500f },
       { AFTENTOXB, AXXX, 2, 0, 17, C, 0x0012, 0x5812 },
       { AFTENTOXD, AFTENTOXL, 8, 0, 17, C, 0x0012, 0x5412 },
       { AFTENTOXF, AFTENTOXL, 4, 0, 17, C, 0x0012, 0x4412 },
       { AFTENTOXL, AXXX, 4, 0, 17, C, 0x0012, 0x4012 },
       { AFTENTOXW, AXXX, 2, 0, 17, C, 0x0012, 0x5012 },
       { AFTSTB, AXXX, 0, 2, 20, C, 0x003a, 0x583a },
       { AFTSTD, AFTSTL, 0, 8, 20, C, 0x003a, 0x543a },
       { AFTSTF, AFTSTL, 0, 4, 20, C, 0x003a, 0x443a },
       { AFTSTL, AXXX, 0, 4, 20, C, 0x003a, 0x403a },
       { AFTSTW, AXXX, 0, 2, 20, C, 0x003a, 0x503a },
       { AFTWOTOXB, AXXX, 2, 0, 17, C, 0x0011, 0x5811 },
       { AFTWOTOXD, AFTWOTOXL, 8, 0, 17, C, 0x0011, 0x5411 },
       { AFTWOTOXF, AFTWOTOXL, 4, 0, 17, C, 0x0011, 0x4411 },
       { AFTWOTOXL, AXXX, 4, 0, 17, C, 0x0011, 0x4011 },
       { AFTWOTOXW, AXXX, 2, 0, 17, C, 0x0011, 0x5011 },
       { AGLOBL },
       { AGOK },
       { AHISTORY },
       { AILLEG, AXXX, 0, 0, 4, 0x4efc },
       { AINSTR },
       { AJMP, AXXX, 0, 0, 5, 0x4ec0 },
       { AJSR, AXXX, 0, 0, 5, 0x4e80 },
       { ALEA, AXXX, 0, 0, 6, 0x41c0 },
       { ALINKL },
       { ALINKW },
       { ALOCATE },
       { ALONG, AXXX, 0, 4, 23 },
       { ALSLB, AXXX, 0, 2, 12, 0xe108 },
       { ALSLL, AXXX, 0, 4, 12, 0xe188 },
       { ALSLW, AXXX, 0, 2, 12, 0xe148 },
       { ALSRB, AXXX, 0, 2, 12, 0xe008 },
       { ALSRL, AXXX, 0, 4, 12, 0xe088 },
       { ALSRW, AXXX, 0, 2, 12, 0xe048 },
       { AMOVB, AXXX, 2, -2, 2, 0x1000, 0x7000 },
       { AMOVEM, AXXX, 2, 2, 25, 0x48c0 },
       { AMOVEPL },
       { AMOVEPW },
       { AMOVESB, AXXX, 2, -2, 34, 0xe00 },
       { AMOVESL, AXXX, 4, -4, 34, 0xe80 },
       { AMOVESW, AXXX, 2, -2, 34, 0xe40 },
       { AMOVL, AXXX, 4, -4, 2, 0x2000, 0x7000 },
       { AMOVW, AXXX, 2, -2, 2, 0x3000, 0x7000 },
       { AMULSL, AXXX, 4, 0, 14, 0x4c00, 0x0800 },
       { AMULSW, AXXX, 2, 0, 13, 0xc1c0 },
       { AMULUL, AXXX, 4, 0, 14, 0x4c00, 0x0000 },
       { AMULUW, AXXX, 2, 0, 13, 0xc0c0 },
       { ANAME },
       { ANBCD },
       { ANEGB, AXXX, 0, 0, 5, 0x4400 },
       { ANEGL, AXXX, 0, 0, 5, 0x4480 },
       { ANEGW, AXXX, 0, 0, 5, 0x4440 },
       { ANEGXB },
       { ANEGXL },
       { ANEGXW },
       { ANOP },
       { ANOTB, AXXX, 0, 0, 5, 0x4600 },
       { ANOTL, AXXX, 0, 0, 5, 0x4680 },
       { ANOTW, AXXX, 0, 0, 5, 0x4640 },
       { AORB, AXXX, 2, 0, 9, 0x8000, 0x8100, 0x0000 },
       { AORL, AXXX, 4, 0, 9, 0x8080, 0x8180, 0x0080 },
       { AORW, AXXX, 2, 0, 9, 0x8040, 0x8140, 0x0040 },
       { APACK },
       { APEA, AXXX, 0, 0, 5, 0x4840 },
       { ARESET },
       { AROTLB, AXXX, 0, 2, 12, 0xe118 },
       { AROTLL, AXXX, 0, 4, 12, 0xe198 },
       { AROTLW, AXXX, 0, 2, 12, 0xe158 },
       { AROTRB, AXXX, 0, 2, 12, 0xe018 },
       { AROTRL, AXXX, 0, 4, 12, 0xe098 },
       { AROTRW, AXXX, 0, 2, 12, 0xe058 },
       { AROXLB },
       { AROXLL },
       { AROXLW },
       { AROXRB },
       { AROXRL },
       { AROXRW },
       { ARTD },
       { ARTE, AXXX, 0, 0, 4, 0x4e73 },
       { ARTM },
       { ARTR },
       { ARTS, AXXX, 0, 0, 4, 0x4e75 },
       { ASBCD },
       { ASCC },
       { ASCS },
       { ASEQ },
       { ASF },
       { ASGE },
       { ASGT },
       { ASHI },
       { ASLE },
       { ASLS },
       { ASLT },
       { ASMI },
       { ASNE },
       { ASPL },
       { AST },
       { ASTOP },
       { ASUBB, AXXX, 2, 0, 3, 0x9000, 0x5100,      0, 0x0400 },
       { ASUBL, AXXX, 4, 0, 3, 0x9080, 0x5180, 0x91c0, 0x0480 },
       { ASUBW, AXXX, 2, 0, 3, 0x9040, 0x5140, 0x90c0, 0x0440 },
       { ASUBXB },
       { ASUBXL },
       { ASUBXW },
       { ASVC },
       { ASVS },
       { ASWAP, AXXX, 0, 0, 35, 0x4840 },
       { ASYS, AXXX, 0, 2, 8, 0x4e40 },
       { ATAS, AXXX, 0, 2, 5, 0x4ac0 },
       { ATEXT },
       { ATRAP, AXXX, 0, 0, 30, 0x4e40 },
       { ATRAPCC, AXXX, 0, 0, 4, 0x54fc },
       { ATRAPCS, AXXX, 0, 0, 4, 0x55fc },
       { ATRAPEQ, AXXX, 0, 0, 4, 0x57fc },
       { ATRAPF, AXXX, 0, 0, 4, 0x51fc },
       { ATRAPGE, AXXX, 0, 0, 4, 0x5cfc },
       { ATRAPGT, AXXX, 0, 0, 4, 0x5efc },
       { ATRAPHI, AXXX, 0, 0, 4, 0x52fc },
       { ATRAPLE, AXXX, 0, 0, 4, 0x5ffc },
       { ATRAPLS, AXXX, 0, 0, 4, 0x53fc },
       { ATRAPLT, AXXX, 0, 0, 4, 0x5dfc },
       { ATRAPMI, AXXX, 0, 0, 4, 0x5bfc },
       { ATRAPNE, AXXX, 0, 0, 4, 0x56fc },
       { ATRAPPL, AXXX, 0, 0, 4, 0x5afc },
       { ATRAPT, AXXX, 0, 0, 4, 0x50fc },
       { ATRAPV, AXXX, 0, 0, 4, 0x4e76 },
       { ATRAPVC, AXXX, 0, 0, 4, 0x58fc },
       { ATRAPVS, AXXX, 0, 0, 4, 0x59fc },
       { ATSTB, AXXX, 0, 2, 5, 0x4a00 },
       { ATSTL, AXXX, 0, 4, 5, 0x4a80 },
       { ATSTW, AXXX, 0, 2, 5, 0x4a40 },
       { AUNLK },
       { AUNPK },
       { AWORD, AXXX, 0, 2, 23 },
       { AXXX }
};

char    mmsize[] =
{
       /*  0 */        0, 2, 2, 2, 2,
       /*  5 */        2, 2, 2, 4, 2,
       /* 10 */        2, 2, 2, 2, 4,
       /* 15 */        4, 4, 4, 4, 6,
       /* 20 */        4, 4, 4, 0, 4,
       /* 25 */        2, 2, 2, 2, 2,
       /* 30 */        2, 4, 4, 0, 4,
       /* 35 */        2, 0, 0, 0, 0,
};