/* yasep/JScore/yasep_fields.js
2007-04-16 by whygee@f-cpu.org
2007-11-05 : rebranding to YASEP
2009-05-26 : changed / updated some fields
2009-07-15 : update, new extended fields
2009-07-28 : added Y
2009-08-15 : added Y.FIELD_EXTIMM4
2009-08-16 : added Y.FIELD_EXTxxx
2009-08-23 : exchanged again EXTDST3 & EXTSRC4

   Dependency : yasep_forms.js
*/

const F4=0xFFFF;
const F8=0xFFFFFFFF;

Y.FIELD_IMMREG   =          1; // LSB : short/long flag
Y.FIELD_EXTFORM  =          2; // imm4 or extended ?
Y.FIELD_GROUP    =       0x1C; // 8 groups
Y.FIELD_FUNCTION =       0xE0; // 8 functions
Y.FIELD_OPCODE   =       0xFC;
Y.FIELD_SND      =      0xF00;
Y.FIELD_SI4      =     0xF000;
Y.FIELD_IMM16    = 0xFFFF0000;
//Y.FIELD_EXTxxx = 0x00010000; // unused yet
Y.FIELD_EXTIMM4  = 0x00020000; // imm4 ?
//Y.FIELD_EXTPTR = 0x001C0000; // unused yet
Y.FIELD_EXTCOND  = 0x00E00000; // 3 bits, among them :
Y.FIELD_EXTNEG   = 0x00200000; //   negation of the condition
Y.FIELD_EXTBIT   = 0x00800000; //   =1 for LSB/MSB
Y.FIELD_EXTDST3  = 0x0F000000; // destination register #3
Y.FIELD_EXTSRC4  = 0xF0000000; // 

Y.OFFSET_SND     = 8;
Y.OFFSET_SI4     = 12;
Y.OFFSET_EXTCOND = 21;
Y.OFFSET_EXTDST3 = 24;
Y.OFFSET_EXTSRC4 = 28;
