这篇教程C++ xWrite8函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中xWrite8函数的典型用法代码示例。如果您正苦于以下问题:C++ xWrite8函数的具体用法?C++ xWrite8怎么用?C++ xWrite8使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了xWrite8函数的22个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: xAdvancePtr__emitinline void xAdvancePtr( uint bytes ){ if( IsDevBuild ) { // common debugger courtesy: advance with INT3 as filler. for( uint i=0; i<bytes; i++ ) xWrite8( 0xcc ); } else x86Ptr += bytes;}
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:11,
示例2: _g1_EmitOpstatic void _g1_EmitOp( G1Type InstType, const xRegisterInt& to, int imm ){ to.prefix16(); if( !to.Is8BitOp() && is_s8( imm ) ) { xWrite8( 0x83 ); EmitSibMagic( InstType, to ); xWrite<s8>( imm ); } else { if( to.IsAccumulator() ) xWrite8( (to.Is8BitOp() ? 4 : 5) | (InstType<<3) ); else { xWrite8( to.Is8BitOp() ? 0x80 : 0x81 ); EmitSibMagic( InstType, to ); } to.xWriteImm( imm ); }}
开发者ID:ACanadianKernel,项目名称:pcsx2,代码行数:21,
示例3: pxAssertxForwardJumpBase::xForwardJumpBase(uint opsize, JccComparisonType cctype){ pxAssert(opsize == 1 || opsize == 4); pxAssertDev(cctype != Jcc_Unknown, "Invalid ForwardJump conditional type."); BasePtr = (s8 *)xGetPtr() + ((opsize == 1) ? 2 : // j8's are always 2 bytes. ((cctype == Jcc_Unconditional) ? 5 : 6)); // j32's are either 5 or 6 bytes if (opsize == 1) xWrite8((cctype == Jcc_Unconditional) ? 0xeb : (0x70 | cctype)); else { if (cctype == Jcc_Unconditional) xWrite8(0xe9); else { xWrite8(0x0f); xWrite8(0x80 | cctype); } } xAdvancePtr(opsize);}
开发者ID:AdmiralCurtiss,项目名称:pcsx2,代码行数:22,
示例4: xOpWritevoid xImpl_IncDec::operator()(const xRegisterInt &to) const{ if (to.Is8BitOp()) { u8 regfield = isDec ? 1 : 0; xOpWrite(to.GetPrefix16(), 0xfe, regfield, to); } else {#ifdef __x86_64__ pxAssertMsg(0, "Single Byte INC/DEC aren't valid in 64 bits." "You need to use the ModR/M form (FF/0 FF/1 opcodes)");#endif to.prefix16(); xWrite8((isDec ? 0x48 : 0x40) | to.Id); }}
开发者ID:AdmiralCurtiss,项目名称:pcsx2,代码行数:14,
示例5: _imul_ImmStylestatic void _imul_ImmStyle( const xRegisterInt& param1, const SrcType& param2, int imm ){ // for iMul OpSize is allowed to be 16 or 32 bit only. const uint OpSize = param1.GetOperandSize(); pxAssert( OpSize == param2.GetOperandSize() ); pxAssert( OpSize > 1 ); xOpWrite0F( (OpSize == 2) ? 0x66 : 0, is_s8( imm ) ? 0x6b : 0x69, param1, param2 ); if( is_s8( imm ) ) xWrite8( (u8)imm ); else param1.xWriteImm( imm );}
开发者ID:ACanadianKernel,项目名称:pcsx2,代码行数:15,
示例6: xCLC__fi void xCLC() { xWrite8( 0xF8 ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
示例7: xSTC__fi void xSTC() { xWrite8( 0xF9 ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
示例8: xPOP__emitinline void xPOP( const xIndirectVoid& from ){ xWrite8( 0x8f ); EmitSibMagic( 0, from );}
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:5,
示例9: xWrite8void xImpl_Group2::operator()( const xRegisterInt& to, const xRegisterCL& /* from */ ) const{ to.prefix16(); xWrite8( to.Is8BitOp() ? 0xd2 : 0xd3 ); EmitSibMagic( InstType, to );}
开发者ID:ACanadianKernel,项目名称:pcsx2,代码行数:6,
示例10: _g3_EmitOpstatic void _g3_EmitOp( G3Type InstType, const xRegisterInt& from ){ from.prefix16(); xWrite8(from.Is8BitOp() ? 0xf6 : 0xf7 ); EmitSibMagic( InstType, from );}
开发者ID:ACanadianKernel,项目名称:pcsx2,代码行数:6,
示例11: xPOPFD// pops the EFLAGS register from the stack__fi void xPOPFD() { xWrite8( 0x9D ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:2,
示例12: xLEAVE__fi void xLEAVE() { xWrite8( 0xC9 ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
示例13: xPUSH__fi void xPUSH( xRegister32 from ) { xWrite8( 0x50 | from.Id ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
示例14: xPUSHFD// pushes the EFLAGS register onto the stack__fi void xPUSHFD() { xWrite8( 0x9C ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:2,
示例15: xNOP// NOP 1-byte__fi void xNOP() { xWrite8(0x90); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:2,
示例16: xRET__fi void xRET() { xWrite8( 0xC3 ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
示例17: xJcc8// ------------------------------------------------------------------------// Emits a 32 bit jump, and returns a pointer to the 8 bit displacement.// (displacements should be assigned relative to the end of the jump instruction,// or in other words *(retval+1) )__emitinline s8* xJcc8( JccComparisonType comparison, s8 displacement ){ xWrite8( (comparison == Jcc_Unconditional) ? 0xeb : (0x70 | comparison) ); xWrite<s8>( displacement ); return (s8*)xGetPtr() - 1;}
开发者ID:ACanadianKernel,项目名称:pcsx2,代码行数:10,
示例18: xCDQ__fi void xCDQ() { xWrite8( 0x99 ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
示例19: xWrite8void xImpl_Test::operator()( const xRegister32& to, const xRegister32& from ) const{ xWrite8( 0x85 ); EmitSibMagic( from, to );}
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:5,
示例20: xLAHF__fi void xLAHF() { xWrite8( 0x9f ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
示例21: xSAHF__fi void xSAHF() { xWrite8( 0x9e ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
示例22: xCWDE__fi void xCWDE() { xWrite8( 0x98 ); }
开发者ID:AmbientMalice,项目名称:pcsx2,代码行数:1,
注:本文中的xWrite8函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ x_check_conn函数代码示例 C++ xTimerStart函数代码示例 |