MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / Sib1

Function Sib1

source/emulation/cpu/decoder.cpp:3454–3477  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3452}
3453
3454 void Sib1(DecodeData* data, DecodedOp* op) {
3455 U8 sib=data->fetch8();
3456
3457 switch (sib&7) {
3458 case 0:
3459 op->base=data->ds; op->rm=regAX;break;
3460 case 1:
3461 op->base=data->ds; op->rm=regCX;break;
3462 case 2:
3463 op->base=data->ds; op->rm=regDX;break;
3464 case 3:
3465 op->base=data->ds; op->rm=regBX;break;
3466 case 4:
3467 op->base=data->ss; op->rm=regSP;break;
3468 case 5:
3469 op->base=data->ss; op->rm=regBP;break;
3470 case 6:
3471 op->base=data->ds; op->rm=regSI;break;
3472 case 7:
3473 op->base=data->ds; op->rm=regDI;break;
3474 }
3475 op->sibIndex = SibE2Reg[(sib >> 3) & 7];
3476 op->sibScale = sib >> 6;
3477}
3478
3479void decodeEa32(DecodeData* data, DecodedOp* op, U8 rm) {
3480 op->rm=regZero;

Callers 1

decodeEa32Function · 0.85

Calls 1

fetch8Method · 0.80

Tested by

no test coverage detected