本文整理汇总了C++中IMMBYTE函数的典型用法代码示例。如果您正苦于以下问题:C++ IMMBYTE函数的具体用法?C++ IMMBYTE怎么用?C++ IMMBYTE使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了IMMBYTE函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: dec_r
static void dec_r( void )
{
UINT16 t;
UINT8 r;
IMMBYTE(r);
t = RM(r) - 1;
WM( r, t );
CLR_NZC;
SET_N8(t);
SET_Z8(t);
SET_C8(~t);
tms7000_icount -= 7;
}
示例2: decd_r
static void decd_r( void )
{
UINT8 r;
PAIR t;
IMMBYTE(r);
t.w.h = 0;
t.w.l = RRF16(r);
t.d -= 1;
WRF16(r,t);
CLR_NZC;
SET_N8(t.b.h);
SET_Z8(t.b.h);
SET_C16(~(t.d));
tms7000_icount -= 11;
}
示例3: cmp_ib
static void cmp_ib( void )
{
UINT16 t;
UINT8 i;
IMMBYTE(i);
t = RDB - i;
CLR_NZC;
SET_N8(t);
SET_Z8(t);
if( t==0 )
SETC;
else
SET_C8( ~t );
tms7000_icount -= 7;
}
示例4: cmp_rb
static void cmp_rb( void )
{
UINT16 t;
UINT8 r;
IMMBYTE(r);
t = RDB - RM(r);
CLR_NZC;
SET_N8(t);
SET_Z8(t);
if( t==0 )
SETC;
else
SET_C8( ~t );
tms7000_icount -= 8;
}
示例5: xchb_r
static void xchb_r( void )
{
UINT16 t,u;
UINT8 r;
IMMBYTE(r);
t = RDB;
u = RM(r);
WRA(t);
WRB(u);
CLR_NZC;
SET_N8(t);
SET_Z8(t);
tms7000_icount -= 8;
}
示例6: rl_r
static void rl_r( void )
{
UINT16 t;
UINT8 r;
IMMBYTE(r);
t = RM(r) << 1;
CLR_NZC;
SET_C8(t);
if( pSR & SR_C )
t |= 0x01;
SET_N8(t);
SET_Z8(t);
WM(r,t);
tms7000_icount -= 7;
}
示例7: dsb_i2b
static void dsb_i2b( void )
{
UINT8 i;
UINT16 t;
IMMBYTE(i);
t = bcd_sub( RDB, i );
if( !(pSR & SR_C) )
t = bcd_sub( t, 1 );
WRB(t);
CLR_NZC;
SET_C8(~t);
SET_N8(t);
SET_Z8(t);
tms7000_icount -= 9;
}
示例8: dsb_r2b
static void dsb_r2b( void )
{
UINT8 r;
UINT16 t;
IMMBYTE(r);
t = bcd_sub( RDB, RM(r) );
if( !(pSR & SR_C) )
t = bcd_sub( t, 1 );
WRB(t);
CLR_NZC;
SET_C8(~t);
SET_N8(t);
SET_Z8(t);
tms7000_icount -= 10;
}
示例9: dac_i2b
static void dac_i2b( void )
{
UINT8 i;
UINT16 t;
IMMBYTE(i);
t = bcd_add( i, RDB );
if (pSR & SR_C)
t = bcd_add( t, 1 );
WRB(t);
CLR_NZC;
SET_C8(t);
SET_N8(t);
SET_Z8(t);
tms7000_icount -= 9;
}
示例10: dac_r2a
static void dac_r2a( void )
{
UINT8 r;
UINT16 t;
IMMBYTE(r);
t = bcd_add( RDA, RM(r) );
if (pSR & SR_C)
t = bcd_add( t, 1 );
WRA(t);
CLR_NZC;
SET_C8(t);
SET_N8(t);
SET_Z8(t);
tms7000_icount -= 10;
}
示例11: cmpa_ind
static void cmpa_ind( void )
{
UINT16 t;
PAIR p;
INT8 i;
IMMBYTE(i);
p.w.l = RRF16(i);
t = RDA - RM(p.w.l);
CLR_NZC;
SET_N8(t);
SET_Z8(t);
if( t==0 )
SETC;
else
SET_C8( ~t );
tms7000_icount -= 11;
}
示例12: swap_r_exl
static void swap_r_exl( void )
{
UINT8 a,b,r;
UINT16 t;
IMMBYTE(r);
if (r == 0)
{ /* opcode D7 00 (LVDP) mostly equivalent to MOVP P46,A??? (timings must
be different, possibly the microcode polls the state of the VDP RDY
line prior to doing the transfer) */
t=RM(0x012e);
WRA(t);
CLR_NZC;
SET_N8(t);
SET_Z8(t);
tms7000_icount -= 9; /* ?????? */
}
else
{ /* stright swap Rn instruction */
a = b = RM(r);
a <<= 4;
b >>= 4;
t = a+b;
WM(r,t);
CLR_NZC;
pSR|=((t&0x0001)<<7);
SET_N8(t);
SET_Z8(t);
tms7000_icount -=8;
}
}
示例13: swap_r
static void swap_r( void )
{
UINT8 a,b,r;
UINT16 t;
IMMBYTE(r);
a = b = RM(r);
a <<= 4;
b >>= 4;
t = a+b;
WM(r,t);
CLR_NZC;
pSR|=((t&0x0001)<<7);
SET_N8(t);
SET_Z8(t);
tms7000_icount -=8;
}
示例14: rlc_r
static void rlc_r( void )
{
UINT16 t;
UINT8 r;
int old_carry;
old_carry = (pSR & SR_C);
IMMBYTE(r);
t = RM(r) << 1;
CLR_NZC;
SET_C8(t);
if( old_carry )
t |= 0x01;
SET_N8(t);
SET_Z8(t);
WM(r,t);
tms7000_icount -= 7;
}
示例15: orb_im
/* $ca ORB immediate -**0- */
INLINE void orb_im( void )
{
UINT8 t;
IMMBYTE(t); B |= t;
CLR_NZV; SET_NZ8(B);
}