/[pcsx2_0.9.7]/trunk/pcsx2/Vif_Codes.cpp
ViewVC logotype

Diff of /trunk/pcsx2/Vif_Codes.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 191 by william, Mon Sep 20 05:35:51 2010 UTC revision 273 by william, Fri Nov 12 01:10:22 2010 UTC
# Line 503  vifOp(vifCode_STMod) { Line 503  vifOp(vifCode_STMod) {
503          return 0;          return 0;
504  }  }
505    
506    template< uint idx >
507    static uint calc_addr(bool flg)
508    {
509            VIFregisters& vifRegs = vifXRegs;
510    
511            uint retval = vifRegs.code;
512            if (idx && flg) retval += vifRegs.tops;
513            return retval & (idx ? 0x3ff : 0xff);
514    }
515    
516  vifOp(vifCode_Unpack) {  vifOp(vifCode_Unpack) {
517          pass1 {          pass1 {
518                  vifUnpackSetup<idx>(data);                  vifUnpackSetup<idx>(data);
519                  return 1;                  return 1;
520          }          }
521          pass2 { return nVifUnpack<idx>((u8*)data); }          pass2 { return nVifUnpack<idx>((u8*)data); }
522          pass3 { VifCodeLog("Unpack");  }          pass3 {
523                    vifStruct& vifX = GetVifX;
524                    VIFregisters& vifRegs = vifXRegs;
525                    uint vl = vifX.cmd & 0x03;
526                    uint vn = (vifX.cmd >> 2) & 0x3;
527                    bool flg = (vifRegs.code >> 15) & 1;
528                    static const char* const        vntbl[] = { "S", "V2", "V3", "V4" };
529                    static const uint                       vltbl[] = { 32,   16,   8,    5   };
530    
531                    VifCodeLog("Unpack %s_%u (%s) @ 0x%04X%s (cl=%u  wl=%u  num=0x%02X)",
532                            vntbl[vn], vltbl[vl], (vifX.cmd & 0x10) ? "masked" : "unmasked",
533                            calc_addr<idx>(flg), flg ? "(FLG)" : "",
534                            vifRegs.cycle.cl, vifRegs.cycle.wl, (vifXRegs.code >> 16) & 0xff
535                    );
536            }
537          return 0;          return 0;
538  }  }
539    

Legend:
Removed from v.191  
changed lines
  Added in v.273

  ViewVC Help
Powered by ViewVC 1.1.22