diff --git a/tools/GSDumpGUI/Core/Program.cs b/tools/GSDumpGUI/Core/Program.cs index 0e0b71ad5a..43aedd3eb5 100644 --- a/tools/GSDumpGUI/Core/Program.cs +++ b/tools/GSDumpGUI/Core/Program.cs @@ -274,7 +274,14 @@ namespace GSDumpGUI string[] reg = vals[8].Split(new char[]{'~'}, StringSplitOptions.RemoveEmptyEntries); for (int j = 1; j < reg.Length; j++) { - nodeReg.Nodes.Add(reg[j]); + string[] fvals = reg[j].Split(new char[] { '@' }, StringSplitOptions.RemoveEmptyEntries); + TreeNode nodeObj = new TreeNode(fvals[0]); + for (int z = 1; z < fvals.Length; z++) + { + TreeNode item = new TreeNode(fvals[z]); + nodeObj.Nodes.Add(item); + } + nodeReg.Nodes.Add(nodeObj); } frmMain.treeGifPacketContent.Nodes[0].Nodes.Add(nodeReg); } diff --git a/tools/GSDumpGUI/GSDumpGUI.csproj b/tools/GSDumpGUI/GSDumpGUI.csproj index b82465dcfa..70672798d4 100644 --- a/tools/GSDumpGUI/GSDumpGUI.csproj +++ b/tools/GSDumpGUI/GSDumpGUI.csproj @@ -55,7 +55,17 @@ frmMain.cs - + + + + + + + + + + + diff --git a/tools/GSDumpGUI/Library/GSDXWrapper.cs b/tools/GSDumpGUI/Library/GSDXWrapper.cs index 9a6eda1109..e61cd133b6 100644 --- a/tools/GSDumpGUI/Library/GSDXWrapper.cs +++ b/tools/GSDumpGUI/Library/GSDXWrapper.cs @@ -401,7 +401,7 @@ namespace GSDumpGUI switch (dump.Data[i].id) { case GSType.Transfer: - GIFTag tag = ExtractGifTag(dump.Data[i].data); + GIFTag tag = GIFTag.ExtractGifTag(dump.Data[i].data); val += "Transfer Path " + ((GSTransfer)dump.Data[i]).Path.ToString() + "|"; val += "NLoop = " + tag.nloop + "|"; //val += "Pad1 = " + tag._pad1 + "|"; @@ -412,9 +412,48 @@ namespace GSDumpGUI val += "prim~Prim Class = " + ((GS_PRIM)tag.prim.Prim).ToString() + "~IIP = " + tag.prim.IIP + "~TME = "+ tag.prim.TME + "~FGE = "+ tag.prim.FGE + "~ABE = "+ tag.prim.ABE + "~AA1 = "+ tag.prim.AA1 + "~FST = "+ tag.prim.FST + "~CTXT = " + tag.prim.CTXT + "~FIX = " + tag.prim.FIX + "|"; val += "nreg = " + (tag.nreg == 0 ? 16 : tag.nreg) + "|"; - val += "regs~ "; + val += "regs~"; foreach (var itm in tag.regs) - val += itm.Descriptor.ToString() + "~"; + { + if (itm.GetType().IsSubclassOf(typeof(GIFReg))) + { + if (itm.GetType() == typeof(GIFRegPackedPrim)) + { + GIFRegPackedPrim p = (GIFRegPackedPrim)itm; + val += "Packed Primitive@Primitive Type : " + p.PrimitiveType.ToString() + "@IIP : " + p.IIP.ToString() + "@TME : " + p.TME.ToString() + "@FGE : " + p.FGE.ToString() + + "@ABE : " + p.ABE.ToString() + "@AA1 : " + p.AA1.ToString() + "@FST : " + p.FST.ToString() + "@CTXT : " + p.CTXT.ToString() + "@FIX : " + p.FIX.ToString() + "~"; + } + if (itm.GetType() == typeof(GIFRegPackedRGBAQ)) + { + GIFRegPackedRGBAQ p = (GIFRegPackedRGBAQ)itm; + val += "Packed RGBAQ@Red : " + p.R.ToString() + "@Green : " + p.G.ToString() + "@Blue : " + p.B.ToString() + "@Alpha : " + p.A.ToString() + "~"; + } + if (itm.GetType() == typeof(GIFRegPackedST)) + { + GIFRegPackedST p = (GIFRegPackedST)itm; + val += "Packed ST@S : " + p.S.ToString("F8") + "@T : " + p.T.ToString("F8") + "@Q : " + p.Q.ToString("F8") + "~"; + } + if (itm.GetType() == typeof(GIFRegPackedUV)) + { + GIFRegPackedUV p = (GIFRegPackedUV)itm; + val += "Packed UV@U : " + p.U.ToString("F4") + "@V : " + p.V.ToString("F4") + "~"; + } + if (itm.GetType() == typeof(GIFRegPackedXYZF)) + { + GIFRegPackedXYZF p = (GIFRegPackedXYZF)itm; + val += "Packed XYZF@X : " + p.X.ToString("F4") + "@Y : " + p.Y.ToString("F4") + "@Z : " + p.Z.ToString() + "@F : " + p.F.ToString() + "@ADC : " + p.ADC.ToString() + "~"; + } + if (itm.GetType() == typeof(GIFRegPackedXYZ)) + { + GIFRegPackedXYZ p = (GIFRegPackedXYZ)itm; + val += "Packed XYZ@X : " + p.X.ToString("F4") + "@Y : " + p.Y.ToString("F4") + "@Z : " + p.Z.ToString() + "@ADC : " + p.ADC.ToString() + "~"; + } + } + else + { + + } + } break; case GSType.VSync: val += "Field = " + dump.Data[i].data[0].ToString(); @@ -431,50 +470,5 @@ namespace GSDumpGUI return val; } - - internal GIFTag ExtractGifTag(byte[] data) - { - Int16 nloopEOP = 0; - Int16 pad1 = 0; - Int32 pad2PrePrimFlgNReg = 0; - Int64 regs = 0; - - nloopEOP = BitConverter.ToInt16(data, 0); - pad1 = BitConverter.ToInt16(data, 2); - pad2PrePrimFlgNReg = BitConverter.ToInt32(data, 4); - regs = BitConverter.ToInt64(data, 8); - - GIFTag t = new GIFTag(); - t.nloop = (nloopEOP & 0x7FFF); - t.eop = (nloopEOP & 0x8000) >> 15; - t._pad1 = pad1; - t._pad2 = (pad2PrePrimFlgNReg & 0x00003FFF); - t.pre = (pad2PrePrimFlgNReg & 0x00004000) >> 14; - - int prim = (pad2PrePrimFlgNReg & 0x03FF8000) >> 15; - GIFPrim pri = new GIFPrim(); - pri.Prim = (prim & 0x007); - pri.IIP = (prim & 0x008) >> 3; - pri.TME = (prim & 0x010) >> 4; - pri.FGE = (prim & 0x020) >> 5; - pri.ABE = (prim & 0x040) >> 6; - pri.AA1 = (prim & 0x080) >> 7; - pri.FST = (prim & 0x100) >> 8; - pri.CTXT = (prim & 0x200) >> 9; - pri.FIX = (prim & 0x400) >> 10; - t.prim = pri; - - t.flg = (pad2PrePrimFlgNReg & 0xC000000) >> 26; - t.nreg = (int)(pad2PrePrimFlgNReg & 0xF0000000) >> 28; - - t.regs = new List(); - for (int i = 0; i < t.nreg; i++) - { - GIFReg reg = new GIFReg(); - reg.Descriptor = (GIFRegDescriptor)((regs & (Convert.ToInt32(Math.Pow(16, i + 1)) - 1)) >> i*4); - t.regs.Add(reg); - } - return t; - } } } diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFPrim.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFPrim.cs new file mode 100644 index 0000000000..3b75902c2c --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFPrim.cs @@ -0,0 +1,46 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GIFPrim + { + public Int32 Prim; + public Int32 IIP; + public Int32 TME; + public Int32 FGE; + public Int32 ABE; + public Int32 AA1; + public Int32 FST; + public Int32 CTXT; + public Int32 FIX; + + static internal GIFPrim ExtractGIFPrim(Int32 rawValue) + { + GIFPrim pri = new GIFPrim(); + pri.Prim = (rawValue & 0x007); + pri.IIP = (rawValue & 0x008) >> 3; + pri.TME = (rawValue & 0x010) >> 4; + pri.FGE = (rawValue & 0x020) >> 5; + pri.ABE = (rawValue & 0x040) >> 6; + pri.AA1 = (rawValue & 0x080) >> 7; + pri.FST = (rawValue & 0x100) >> 8; + pri.CTXT = (rawValue & 0x200) >> 9; + pri.FIX = (rawValue & 0x400) >> 10; + return pri; + } + } + + public enum GS_PRIM + { + GS_POINTLIST = 0, + GS_LINELIST = 1, + GS_LINESTRIP = 2, + GS_TRIANGLELIST = 3, + GS_TRIANGLESTRIP = 4, + GS_TRIANGLEFAN = 5, + GS_SPRITE = 6, + GS_INVALID = 7, + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFReg.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFReg.cs new file mode 100644 index 0000000000..512c25e0cb --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFReg.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + abstract public class GIFReg : IGifData + { + public GIFRegDescriptor Descriptor; + } + + public enum GIFRegDescriptor + { + PRIM = 0, + RGBAQ = 1, + ST = 2, + UV = 3, + XYZF2 = 4, + XYZ2 = 5, + TEX0_1 = 6, + TEX0_2 = 7, + CLAMP_1 = 8, + CLAMP_2 = 9, + FOG = 10, + Reserved = 11, + XYZF3 = 12, + XYZ3 = 13, + AD = 14, + NOP = 15 + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedPrim.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedPrim.cs new file mode 100644 index 0000000000..2dd5e53852 --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedPrim.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GIFRegPackedPrim : GIFReg + { + public GS_PRIM PrimitiveType; + public GSIIP IIP; + public bool TME; + public bool FGE; + public bool ABE; + public bool AA1; + public GSFST FST; + public GSCTXT CTXT; + public GSFIX FIX; + } + + public enum GSIIP + { + FlatShading=0, + Gouraud=1 + } + + public enum GSFST + { + STQValue=0, + UVValue=1 + } + + public enum GSCTXT + { + Context1 =0, + Context2 =1 + } + + public enum GSFIX + { + Unfixed =0, + Fixed = 1 + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedRGBAQ.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedRGBAQ.cs new file mode 100644 index 0000000000..60e89c7131 --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedRGBAQ.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GIFRegPackedRGBAQ : GIFReg + { + public int R; + public int G; + public int B; + public int A; + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedST.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedST.cs new file mode 100644 index 0000000000..ef62e0ab7f --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedST.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GIFRegPackedST : GIFReg + { + public float S; + public float T; + public float Q; + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedUV.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedUV.cs new file mode 100644 index 0000000000..8b7b430a77 --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedUV.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GIFRegPackedUV : GIFReg + { + public double U; + public double V; + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedXYZ.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedXYZ.cs new file mode 100644 index 0000000000..92a1d94521 --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedXYZ.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GIFRegPackedXYZ : GIFReg + { + public double X; + public double Y; + public UInt32 Z; + public bool ADC; + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedXYZF.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedXYZF.cs new file mode 100644 index 0000000000..e8d9a61298 --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GIFRegPackedXYZF.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GIFRegPackedXYZF : GIFReg + { + public double X; + public double Y; + public UInt32 Z; + public UInt16 F; + public bool ADC; + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GifImage.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GifImage.cs new file mode 100644 index 0000000000..b7f08ee6f1 --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/GifImage.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GifImage : IGifData + { + public byte[] LowData; + public byte[] HighData; + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/IGifData.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/IGifData.cs new file mode 100644 index 0000000000..5ab73763f3 --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFReg/IGifData.cs @@ -0,0 +1,10 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public interface IGifData + { + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFTag.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFTag.cs new file mode 100644 index 0000000000..244d5fca28 --- /dev/null +++ b/tools/GSDumpGUI/Library/GSDump/GSData/GIFPacket/GIFTag.cs @@ -0,0 +1,199 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace GSDumpGUI +{ + public class GIFTag + { + public Int32 nloop; + public Int32 eop; + public Int32 _pad1; + public Int32 _pad2; + public Int32 pre; + public GIFPrim prim; + public GIFFLG flg; + public Int32 nreg; + public List regs; + + static internal unsafe GIFTag ExtractGifTag(byte[] data) + { + Int16 nloopEOP = 0; + Int16 pad1 = 0; + Int32 pad2PrePrimFlgNReg = 0; + Int64 regs = 0; + + nloopEOP = BitConverter.ToInt16(data, 0); + pad1 = BitConverter.ToInt16(data, 2); + pad2PrePrimFlgNReg = BitConverter.ToInt32(data, 4); + regs = BitConverter.ToInt64(data, 8); + + GIFTag t = new GIFTag(); + t.nloop = (nloopEOP & 0x7FFF); + t.eop = (nloopEOP & 0x8000) >> 15; + t._pad1 = pad1; + t._pad2 = (pad2PrePrimFlgNReg & 0x00003FFF); + t.pre = (pad2PrePrimFlgNReg & 0x00004000) >> 14; + + int prim = (pad2PrePrimFlgNReg & 0x03FF8000) >> 15; + GIFPrim primm = GIFPrim.ExtractGIFPrim(prim); + t.prim = primm; + + t.flg = (GIFFLG)((pad2PrePrimFlgNReg & 0xC000000) >> 26); + t.nreg = (int)(pad2PrePrimFlgNReg & 0xF0000000) >> 28; + + List registers = new List(); + + t.regs = new List(); + for (int i = 0; i < t.nreg; i++) + registers.Add((GIFRegDescriptor)((regs & (Convert.ToInt32(Math.Pow(16, i + 1)) - 1)) >> i * 4)); + + for (int j = 0; j < t.nloop; j++) + { + for (int i = 0; i < registers.Count; i++) + { + UInt64 LowData = BitConverter.ToUInt64(data, (16 + (i * 16) + (j * 16 * registers.Count))); + UInt64 HighData = BitConverter.ToUInt64(data, (16 + (i * 16) + (j * 16 * registers.Count))); + + switch (t.flg) + { + case GIFFLG.GIF_FLG_PACKED: + switch (registers[i]) + { + case GIFRegDescriptor.PRIM: + if (t.pre == 1) + { + GIFRegPackedPrim pr = new GIFRegPackedPrim(); + pr.Descriptor = registers[i]; + pr.PrimitiveType = (GS_PRIM)(LowData & 0x7); + pr.IIP = (GSIIP)((LowData & 0x8) >> 3); + pr.TME = Convert.ToBoolean(((LowData & 0x10) >> 4)); + pr.FGE = Convert.ToBoolean(((LowData & 0x20) >> 5)); + pr.ABE = Convert.ToBoolean(((LowData & 0x40) >> 6)); + pr.AA1 = Convert.ToBoolean(((LowData & 0x80) >> 7)); + pr.FST = (GSFST)((LowData & 0x100) >> 8); + pr.CTXT = (GSCTXT)((LowData & 0x200) >> 9); + pr.FIX = (GSFIX)((LowData & 0x400) >> 10); + t.regs.Add(pr); + } + break; + case GIFRegDescriptor.RGBAQ: + GIFRegPackedRGBAQ r = new GIFRegPackedRGBAQ(); + r.Descriptor = registers[i]; + r.R = (int)(LowData & 0xFF); + r.G = (int)((LowData & 0xFF00000000) >> 32); + r.B = (int)((HighData & 0xFF)); + r.A = (int)((HighData & 0xFF00000000) >> 32); + t.regs.Add(r); + break; + case GIFRegDescriptor.ST: + GIFRegPackedST st = new GIFRegPackedST(); + st.Descriptor = registers[i]; + + ulong pt = ((LowData & 0xFFFFFFFF)); + void* ptt = &pt; + st.S = *(float*)ptt; + + pt = ((LowData & 0xFFFFFFFF00000000) >> 32); + ptt = &pt; + st.T = *(float*)ptt; + + pt = ((HighData & 0xFFFFFFFF)); + ptt = &pt; + st.Q = *(float*)ptt; + + t.regs.Add(st); + break; + case GIFRegDescriptor.UV: + GIFRegPackedUV u = new GIFRegPackedUV(); + u.Descriptor = registers[i]; + u.U = (LowData & 0x3FFF) / 16d; + u.V = ((LowData & 0x3FFF00000000) >> 32) / 16d; + + t.regs.Add(u); + break; + case GIFRegDescriptor.XYZF2: + GIFRegPackedXYZF xf = new GIFRegPackedXYZF(); + xf.Descriptor = registers[i]; + xf.X = (LowData & 0xFFFF) / 16d; + xf.Y = ((LowData & 0xFFFF00000000) >> 32) / 16d; + xf.Z = (UInt32)((HighData & 0xFFFFFF0) >> 4); + xf.F = (UInt16)((HighData & 0xFF000000000) >> 36); + xf.ADC = ((HighData & 0x1000000000000) >> 46) == 1; + t.regs.Add(xf); + break; + case GIFRegDescriptor.XYZ2: + GIFRegPackedXYZ xf2 = new GIFRegPackedXYZ(); + xf2.Descriptor = registers[i]; + xf2.X = (LowData & 0xFFFF) / 16d; + xf2.Y = ((LowData & 0xFFFF00000000) >> 32) / 16d; + xf2.Z = (UInt32)((HighData & 0xFFFFFF0) >> 4); + xf2.ADC = ((HighData & 0x1000000000000) >> 46) == 1; + t.regs.Add(xf2); + break; + case GIFRegDescriptor.FOG: + break; + case GIFRegDescriptor.Reserved: + break; + case GIFRegDescriptor.XYZF3: + GIFRegPackedXYZF xf3 = new GIFRegPackedXYZF(); + xf3.Descriptor = registers[i]; + xf3.X = (LowData & 0xFFFF) / 16d; + xf3.Y = ((LowData & 0xFFFF00000000) >> 32) / 16d; + xf3.Z = (UInt32)((HighData & 0xFFFFFF0) >> 4); + xf3.F = (UInt16)((HighData & 0xFF000000000) >> 36); + xf3.ADC = ((HighData & 0x1000000000000) >> 46) == 1; + t.regs.Add(xf3); + break; + case GIFRegDescriptor.XYZ3: + GIFRegPackedXYZ xf4 = new GIFRegPackedXYZ(); + xf4.Descriptor = registers[i]; + xf4.X = (LowData & 0xFFFF) / 16d; + xf4.Y = ((LowData & 0xFFFF00000000) >> 32) / 16d; + xf4.Z = (UInt32)((HighData & 0xFFFFFF0) >> 4); + xf4.ADC = ((HighData & 0x1000000000000) >> 46) == 1; + t.regs.Add(xf4); + break; + case GIFRegDescriptor.AD: + int destaddr = (int)(HighData & 0xF); + + break; + case GIFRegDescriptor.NOP: + + break; + default: + break; + } + break; + case GIFFLG.GIF_FLG_REGLIST: + // TODO : + break; + case GIFFLG.GIF_FLG_IMAGE: + GifImage image = new GifImage(); + image.LowData = BitConverter.GetBytes(LowData); + image.HighData = BitConverter.GetBytes(HighData); + t.regs.Add(image); + break; + case GIFFLG.GIF_FLG_IMAGE2: + GifImage image2 = new GifImage(); + image2.LowData = BitConverter.GetBytes(LowData); + image2.HighData = BitConverter.GetBytes(HighData); + t.regs.Add(image2); + break; + default: + break; + } + } + } + return t; + } + } + + public enum GIFFLG + { + GIF_FLG_PACKED =0, + GIF_FLG_REGLIST =1, + GIF_FLG_IMAGE = 2, + GIF_FLG_IMAGE2 = 3 + } +} diff --git a/tools/GSDumpGUI/Library/GSDump/GSData/GIFTag.cs b/tools/GSDumpGUI/Library/GSDump/GSData/GIFTag.cs deleted file mode 100644 index 62b22da5d1..0000000000 --- a/tools/GSDumpGUI/Library/GSDump/GSData/GIFTag.cs +++ /dev/null @@ -1,77 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace GSDumpGUI -{ - public class GIFTag - { - public Int32 nloop; - public Int32 eop; - public Int32 _pad1; - public Int32 _pad2; - public Int32 pre; - public GIFPrim prim; - public Int32 flg; - public Int32 nreg; - public List regs; - } - - public class GIFPrim - { - public Int32 Prim; - public Int32 IIP; - public Int32 TME; - public Int32 FGE; - public Int32 ABE; - public Int32 AA1; - public Int32 FST; - public Int32 CTXT; - public Int32 FIX; - } - - public class GIFReg - { - public GIFRegDescriptor Descriptor; - } - - public enum GIFRegDescriptor - { - PRIM = 0, - RGBAQ = 1, - ST = 2, - UV = 3, - XYZF2 = 4, - XYZ2 = 5, - TEX0_1 = 6, - TEX0_2 = 7, - CLAMP_1 = 8, - CLAMP_2 = 9, - FOG = 10, - Reserved = 11, - XYZF3 = 12, - XYZ3 = 13, - AD = 14, - NOP = 15 - } - - public enum GIFFLG - { - GIF_FLG_PACKED =0, - GIF_FLG_REGLIST =1, - GIF_FLG_IMAGE = 2, - GIF_FLG_IMAGE2 = 3 - } - - public enum GS_PRIM - { - GS_POINTLIST = 0, - GS_LINELIST = 1, - GS_LINESTRIP = 2, - GS_TRIANGLELIST = 3, - GS_TRIANGLESTRIP = 4, - GS_TRIANGLEFAN = 5, - GS_SPRITE = 6, - GS_INVALID = 7, - } -}