Exemplo n.º 1
0
        private void GetTileMapData()
        {
            _tilemapOptions.Layer     = (byte)_state.TileMaps.GetPage;
            _state.TileMaps.MapWidth  = GetMapWidth();
            _state.TileMaps.MapHeight = GetMapHeight();
            SnesDebugApi.GetTilemap(_tilemapOptions, _state.SnesState.Ppu, _state.Memory.PpuData, _state.Memory.CgRam, _state.TileMaps.PixelData[0]);

            _state.TileMaps.ViewportHeight = _state.SnesState.Ppu.OverscanMode ? 239 : 224;
            _state.TileMaps.ScrollX        = (_state.SnesState.Ppu.BgMode == 7 ? (int)_state.SnesState.Ppu.Mode7.HScroll : _state.SnesState.Ppu.Layers[_tilemapOptions.Layer].HScroll) % _state.TileMaps.MapWidth;
            _state.TileMaps.ScrollY        = (_state.SnesState.Ppu.BgMode == 7 ? (int)_state.SnesState.Ppu.Mode7.VScroll : _state.SnesState.Ppu.Layers[_tilemapOptions.Layer].VScroll) % _state.TileMaps.MapHeight;
        }