Esempio n. 1
0
        public void TestRoadTilesetKoopaBeach()
        {
            byte[] bufferA = File.ReadFile("rtilesetkb.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x51636);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 2
0
        public void TestRoadTilesetVanillaLake()
        {
            byte[] bufferA = File.ReadFile("rtilesetvl.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x14EE);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 3
0
        public void TestRoadTilesetChocoIsland()
        {
            byte[] bufferA = File.ReadFile("rtilesetci.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x78000);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 4
0
        public void TestRoadTilesetDonutPlains()
        {
            byte[] bufferA = File.ReadFile("rtilesetdp.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x50000);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 5
0
        public void TestRoadTilesetBowserCastle()
        {
            byte[] bufferA = File.ReadFile("rtilesetbc.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x48F6A);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 6
0
        public void TestBackgroundTilesetBrowserCastle()
        {
            byte[] bufferA = File.ReadFile("btilesetbc.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x20523);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 7
0
        public void TestRoadTilesetGhostValley()
        {
            byte[] bufferA = File.ReadFile("rtilesetgv.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x60189);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 8
0
        public void TestRoadTilesetRainbowRoad()
        {
            byte[] bufferA = File.ReadFile("rtilesetrr.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x41EBB);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 9
0
        public void TestBackgroundTilesetRainbowRoad()
        {
            byte[] bufferA = File.ReadFile("btilesetrr.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x1499);

            Assert.AreEqual(bufferA, bufferB);
        }
        public TrackObjectGraphics(byte[] romBuffer, Offsets offsets)
        {
            int typeCount = Enum.GetValues(typeof(TrackObjectType)).Length;
            int count     = typeCount + 2; // + 2 to account for moving Match Race object and items

            this.tiles = new TrackObjectTile[count][];
            int offsetLocation = offsets[Offset.TrackObjectGraphics];

            byte[] tilesetGfx;
            int[]  tileIndexes;

            for (int i = 0; i < typeCount; i++)
            {
                TrackObjectType type   = (TrackObjectType)i;
                int             offset = TrackObjectGraphics.GetGraphicsOffset(type, romBuffer, offsetLocation);
                tilesetGfx    = Codec.Decompress(romBuffer, offset);
                tileIndexes   = TrackObjectGraphics.GetTileIndexes(type);
                this.tiles[i] = TrackObjectGraphics.GetTiles(tilesetGfx, tileIndexes);
            }

            tileIndexes = TrackObjectGraphics.GetMatchRaceTileIndexes();

            tilesetGfx = Codec.Decompress(romBuffer, offsets[Offset.MatchRaceObjectGraphics]);
            this.tiles[this.tiles.Length - 2] = TrackObjectGraphics.GetTiles(tilesetGfx, tileIndexes);

            tilesetGfx = Codec.Decompress(romBuffer, offsets[Offset.ItemGraphics]);
            this.tiles[this.tiles.Length - 1] = TrackObjectGraphics.GetTiles(tilesetGfx, tileIndexes);
        }
Esempio n. 11
0
        public void TestBackgroundTilesetKoopaBeach()
        {
            byte[] bufferA = File.ReadFile("btilesetkb.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x208A2);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 12
0
        public void TestRoadTilesetMarioCircuit()
        {
            byte[] bufferA = File.ReadFile("rtilesetmc.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x481C9);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 13
0
        public void TestBackgroundTilesetChocoIsland()
        {
            byte[] bufferA = File.ReadFile("btilesetci.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x206B5);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 14
0
        public void TestBackgroundTilesetVanillaLake()
        {
            byte[] bufferA = File.ReadFile("btilesetvl.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x205EB);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 15
0
        public void TestBackgroundTilesetDonutPlains()
        {
            byte[] bufferA = File.ReadFile("btilesetdp.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x20356);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 16
0
        public void TestBackgroundTilesetMarioCircuit()
        {
            byte[] bufferA = File.ReadFile("btilesetmc.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x20000);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 17
0
        public void TestBackgroundTilesetGhostValley()
        {
            byte[] bufferA = File.ReadFile("btilesetgv.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x20148);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 18
0
        public void TestColorPaletteDonutPlains()
        {
            byte[] bufferA = File.ReadFile("cpalettedp.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x414C4);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 19
0
        public void TestColorPaletteMarioCircuit()
        {
            byte[] bufferA = File.ReadFile("cpalettemc.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x4117F);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 20
0
        public void TestTrack1st_6()
        {
            byte[] bufferA = File.ReadFile("track6c.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x77251);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 21
0
        public void TestColorPaletteGhostValley()
        {
            byte[] bufferA = File.ReadFile("cpalettegv.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x41313);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 22
0
        public void TestColorPaletteRainbowRoad()
        {
            byte[] bufferA = File.ReadFile("cpaletterr.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x41D0B);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 23
0
        public void TestTrack2nd_24()
        {
            byte[] bufferA = File.ReadFile("track24.smc");
            byte[] bufferB = Codec.Decompress(File.ReadFile("track24c.smc"), 0, 16384);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 24
0
        public void TestColorPaletteKoopaBeach()
        {
            byte[] bufferA = File.ReadFile("cpalettekb.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x41B5B);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 25
0
        public void TestColorPaletteChocoIsland()
        {
            byte[] bufferA = File.ReadFile("cpaletteci.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x419C0);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 26
0
        public void TestColorPaletteVanillaLake()
        {
            byte[] bufferA = File.ReadFile("cpalettevl.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x4182F);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 27
0
        public void TestColorPaletteBowserCastle()
        {
            byte[] bufferA = File.ReadFile("cpalettebc.smc");
            byte[] bufferB = Codec.Decompress(this.romBuffer, 0x41675);

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 28
0
        public void EpicRacersBattleTrack4Test()
        {
            // Checks that command 3 loops properly after 0xFF
            byte[] bufferA = File.ReadFile("er_track24c.smc");
            byte[] bufferB = Codec.Decompress(File.ReadFile("er_track24cc.smc"));

            Assert.AreEqual(bufferA, bufferB);
        }
Esempio n. 29
0
        private void CheckDoubleCompression(int offset, int expectedSize, ICompressor compressor)
        {
            byte[] bufferA = Codec.Decompress(Codec.Decompress(File.ReadBlock(this.romBuffer, offset, expectedSize)));
            byte[] bufferB = Codec.Decompress(Codec.Decompress(compressor.Compress(compressor.Compress(bufferA))));

            Assert.AreEqual(expectedSize, bufferA.Length);
            Assert.AreEqual(bufferA, bufferB, "(Compressor: " + compressor.GetType().Name + ")");
        }
Esempio n. 30
0
        public void InvalidCompressedDataTest()
        {
            // Checks that we don't crash if the compressed data is incorrect.
            // Here, we have a command 5 that references an address that is out of the buffer range.
            byte[] bufferA = File.ReadFile("cmd5test.smc");
            byte[] bufferB = Codec.Decompress(File.ReadFile("cmd5testc.smc"), 0);

            Assert.AreEqual(bufferA, bufferB);
        }