Merge branch 'master' into vulkan
This commit is contained in:
@@ -10,15 +10,14 @@
|
||||
#ifndef XENIA_UI_D3D12_D3D12_API_H_
|
||||
#define XENIA_UI_D3D12_D3D12_API_H_
|
||||
|
||||
// This must be included before D3D and DXGI for things like NOMINMAX.
|
||||
// Must be included before D3D and DXGI for things like NOMINMAX.
|
||||
#include "xenia/base/platform_win.h"
|
||||
|
||||
#include <DXProgrammableCapture.h>
|
||||
#include <d3d12.h>
|
||||
#include <d3d12sdklayers.h>
|
||||
#include <d3dcompiler.h>
|
||||
#include <dcomp.h>
|
||||
#include <dxgi1_4.h>
|
||||
#include <dxgi1_5.h>
|
||||
#include <dxgidebug.h>
|
||||
// For Microsoft::WRL::ComPtr.
|
||||
#include <wrl/client.h>
|
||||
|
||||
@@ -1,379 +0,0 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2018 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/ui/d3d12/d3d12_context.h"
|
||||
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/ui/d3d12/d3d12_immediate_drawer.h"
|
||||
#include "xenia/ui/d3d12/d3d12_provider.h"
|
||||
#include "xenia/ui/d3d12/d3d12_util.h"
|
||||
#include "xenia/ui/window.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
namespace d3d12 {
|
||||
|
||||
D3D12Context::D3D12Context(D3D12Provider* provider, Window* target_window)
|
||||
: GraphicsContext(provider, target_window) {}
|
||||
|
||||
D3D12Context::~D3D12Context() { Shutdown(); }
|
||||
|
||||
bool D3D12Context::Initialize() {
|
||||
context_lost_ = false;
|
||||
|
||||
if (!target_window_) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const D3D12Provider& provider = GetD3D12Provider();
|
||||
IDXGIFactory2* dxgi_factory = provider.GetDXGIFactory();
|
||||
ID3D12Device* device = provider.GetDevice();
|
||||
ID3D12CommandQueue* direct_queue = provider.GetDirectQueue();
|
||||
|
||||
swap_fence_current_value_ = 1;
|
||||
swap_fence_completed_value_ = 0;
|
||||
swap_fence_completion_event_ = CreateEvent(nullptr, false, false, nullptr);
|
||||
if (swap_fence_completion_event_ == nullptr) {
|
||||
XELOGE("Failed to create the composition fence completion event");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
// Create a fence for transient resources of compositing.
|
||||
if (FAILED(device->CreateFence(0, D3D12_FENCE_FLAG_NONE,
|
||||
IID_PPV_ARGS(&swap_fence_)))) {
|
||||
XELOGE("Failed to create the composition fence");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
|
||||
// Create the swap chain.
|
||||
swap_chain_width_ = target_window_->scaled_width();
|
||||
swap_chain_height_ = target_window_->scaled_height();
|
||||
DXGI_SWAP_CHAIN_DESC1 swap_chain_desc;
|
||||
swap_chain_desc.Width = swap_chain_width_;
|
||||
swap_chain_desc.Height = swap_chain_height_;
|
||||
swap_chain_desc.Format = kSwapChainFormat;
|
||||
swap_chain_desc.Stereo = FALSE;
|
||||
swap_chain_desc.SampleDesc.Count = 1;
|
||||
swap_chain_desc.SampleDesc.Quality = 0;
|
||||
swap_chain_desc.BufferUsage = DXGI_USAGE_RENDER_TARGET_OUTPUT;
|
||||
swap_chain_desc.BufferCount = kSwapChainBufferCount;
|
||||
swap_chain_desc.Scaling = DXGI_SCALING_STRETCH;
|
||||
swap_chain_desc.SwapEffect = DXGI_SWAP_EFFECT_FLIP_DISCARD;
|
||||
swap_chain_desc.AlphaMode = DXGI_ALPHA_MODE_IGNORE;
|
||||
swap_chain_desc.Flags = 0;
|
||||
IDXGISwapChain1* swap_chain_1;
|
||||
if (FAILED(dxgi_factory->CreateSwapChainForComposition(
|
||||
provider.GetDirectQueue(), &swap_chain_desc, nullptr,
|
||||
&swap_chain_1))) {
|
||||
XELOGE("Failed to create a DXGI swap chain for composition");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
if (FAILED(swap_chain_1->QueryInterface(IID_PPV_ARGS(&swap_chain_)))) {
|
||||
XELOGE("Failed to get version 3 of the DXGI swap chain interface");
|
||||
swap_chain_1->Release();
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
swap_chain_1->Release();
|
||||
|
||||
// Create a heap for RTV descriptors of swap chain buffers.
|
||||
D3D12_DESCRIPTOR_HEAP_DESC rtv_heap_desc;
|
||||
rtv_heap_desc.Type = D3D12_DESCRIPTOR_HEAP_TYPE_RTV;
|
||||
rtv_heap_desc.NumDescriptors = kSwapChainBufferCount;
|
||||
rtv_heap_desc.Flags = D3D12_DESCRIPTOR_HEAP_FLAG_NONE;
|
||||
rtv_heap_desc.NodeMask = 0;
|
||||
if (FAILED(device->CreateDescriptorHeap(
|
||||
&rtv_heap_desc, IID_PPV_ARGS(&swap_chain_rtv_heap_)))) {
|
||||
XELOGE("Failed to create swap chain RTV descriptor heap");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
swap_chain_rtv_heap_start_ =
|
||||
swap_chain_rtv_heap_->GetCPUDescriptorHandleForHeapStart();
|
||||
|
||||
// Get the buffers and create their RTV descriptors.
|
||||
if (!InitializeSwapChainBuffers()) {
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
|
||||
// Create the command list for compositing.
|
||||
for (uint32_t i = 0; i < kSwapCommandAllocatorCount; ++i) {
|
||||
if (FAILED(device->CreateCommandAllocator(
|
||||
D3D12_COMMAND_LIST_TYPE_DIRECT,
|
||||
IID_PPV_ARGS(&swap_command_allocators_[i])))) {
|
||||
XELOGE("Failed to create a composition command allocator");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (FAILED(device->CreateCommandList(
|
||||
0, D3D12_COMMAND_LIST_TYPE_DIRECT, swap_command_allocators_[0].Get(),
|
||||
nullptr, IID_PPV_ARGS(&swap_command_list_)))) {
|
||||
XELOGE("Failed to create the composition graphics command list");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
// Initially in open state, wait until BeginSwap.
|
||||
swap_command_list_->Close();
|
||||
|
||||
// Associate the swap chain with the window via DirectComposition.
|
||||
if (FAILED(provider.CreateDCompositionDevice(nullptr,
|
||||
IID_PPV_ARGS(&dcomp_device_)))) {
|
||||
XELOGE("Failed to create a DirectComposition device");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
if (FAILED(dcomp_device_->CreateTargetForHwnd(
|
||||
reinterpret_cast<HWND>(target_window_->native_handle()), TRUE,
|
||||
&dcomp_target_))) {
|
||||
XELOGE("Failed to create a DirectComposition target for the window");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
if (FAILED(dcomp_device_->CreateVisual(&dcomp_visual_))) {
|
||||
XELOGE("Failed to create a DirectComposition visual");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
if (FAILED(dcomp_visual_->SetContent(swap_chain_.Get()))) {
|
||||
XELOGE(
|
||||
"Failed to set the content of the DirectComposition visual to the swap "
|
||||
"chain");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
if (FAILED(dcomp_target_->SetRoot(dcomp_visual_.Get()))) {
|
||||
XELOGE(
|
||||
"Failed to set the root of the DirectComposition target to the swap "
|
||||
"chain visual");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
if (FAILED(dcomp_device_->Commit())) {
|
||||
XELOGE("Failed to commit DirectComposition commands");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
|
||||
// Initialize the immediate mode drawer if not offscreen.
|
||||
immediate_drawer_ = std::make_unique<D3D12ImmediateDrawer>(*this);
|
||||
if (!immediate_drawer_->Initialize()) {
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool D3D12Context::InitializeSwapChainBuffers() {
|
||||
// Get references to the buffers.
|
||||
for (uint32_t i = 0; i < kSwapChainBufferCount; ++i) {
|
||||
if (FAILED(
|
||||
swap_chain_->GetBuffer(i, IID_PPV_ARGS(&swap_chain_buffers_[i])))) {
|
||||
XELOGE("Failed to get buffer {} of the swap chain", i);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// Get the back buffer index for the first draw.
|
||||
swap_chain_back_buffer_index_ = swap_chain_->GetCurrentBackBufferIndex();
|
||||
|
||||
// Create RTV descriptors for the swap chain buffers.
|
||||
ID3D12Device* device = GetD3D12Provider().GetDevice();
|
||||
D3D12_RENDER_TARGET_VIEW_DESC rtv_desc;
|
||||
rtv_desc.Format = kSwapChainFormat;
|
||||
rtv_desc.ViewDimension = D3D12_RTV_DIMENSION_TEXTURE2D;
|
||||
rtv_desc.Texture2D.MipSlice = 0;
|
||||
rtv_desc.Texture2D.PlaneSlice = 0;
|
||||
for (uint32_t i = 0; i < kSwapChainBufferCount; ++i) {
|
||||
device->CreateRenderTargetView(swap_chain_buffers_[i].Get(), &rtv_desc,
|
||||
GetSwapChainBufferRTV(i));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void D3D12Context::Shutdown() {
|
||||
if (!target_window_) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!context_lost_ && swap_fence_ &&
|
||||
swap_fence_->GetCompletedValue() + 1 < swap_fence_current_value_) {
|
||||
swap_fence_->SetEventOnCompletion(swap_fence_current_value_ - 1,
|
||||
swap_fence_completion_event_);
|
||||
WaitForSingleObject(swap_fence_completion_event_, INFINITE);
|
||||
}
|
||||
|
||||
immediate_drawer_.reset();
|
||||
|
||||
dcomp_visual_.Reset();
|
||||
dcomp_target_.Reset();
|
||||
dcomp_device_.Reset();
|
||||
|
||||
swap_command_list_.Reset();
|
||||
for (uint32_t i = 0; i < kSwapCommandAllocatorCount; ++i) {
|
||||
swap_command_allocators_[i].Reset();
|
||||
}
|
||||
|
||||
for (uint32_t i = 0; i < kSwapChainBufferCount; ++i) {
|
||||
swap_chain_buffers_[i].Reset();
|
||||
}
|
||||
swap_chain_rtv_heap_.Reset();
|
||||
swap_chain_.Reset();
|
||||
|
||||
// First release the fence since it may reference the event.
|
||||
swap_fence_.Reset();
|
||||
if (swap_fence_completion_event_) {
|
||||
CloseHandle(swap_fence_completion_event_);
|
||||
swap_fence_completion_event_ = nullptr;
|
||||
}
|
||||
swap_fence_current_value_ = 1;
|
||||
swap_fence_completed_value_ = 0;
|
||||
}
|
||||
|
||||
ImmediateDrawer* D3D12Context::immediate_drawer() {
|
||||
return immediate_drawer_.get();
|
||||
}
|
||||
|
||||
bool D3D12Context::WasLost() { return context_lost_; }
|
||||
|
||||
bool D3D12Context::BeginSwap() {
|
||||
if (!target_window_ || context_lost_) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Resize the swap chain if the window is resized.
|
||||
uint32_t target_window_width = target_window_->scaled_width();
|
||||
uint32_t target_window_height = target_window_->scaled_height();
|
||||
if (swap_chain_width_ != target_window_width ||
|
||||
swap_chain_height_ != target_window_height) {
|
||||
// Await the completion of swap chain use.
|
||||
// Context loss is also faked if resizing fails. In this case, before the
|
||||
// context is shut down to be recreated, frame completion must be awaited
|
||||
// (this isn't done if the context is truly lost).
|
||||
if (swap_fence_completed_value_ + 1 < swap_fence_current_value_) {
|
||||
swap_fence_->SetEventOnCompletion(swap_fence_current_value_ - 1,
|
||||
swap_fence_completion_event_);
|
||||
WaitForSingleObject(swap_fence_completion_event_, INFINITE);
|
||||
swap_fence_completed_value_ = swap_fence_current_value_ - 1;
|
||||
}
|
||||
// All buffer references must be released before resizing.
|
||||
for (uint32_t i = 0; i < kSwapChainBufferCount; ++i) {
|
||||
swap_chain_buffers_[i].Reset();
|
||||
}
|
||||
if (FAILED(swap_chain_->ResizeBuffers(
|
||||
kSwapChainBufferCount, target_window_width, target_window_height,
|
||||
kSwapChainFormat, 0))) {
|
||||
context_lost_ = true;
|
||||
return false;
|
||||
}
|
||||
swap_chain_width_ = target_window_width;
|
||||
swap_chain_height_ = target_window_height;
|
||||
if (!InitializeSwapChainBuffers()) {
|
||||
context_lost_ = true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// Wait for a swap command allocator to become free.
|
||||
// Command allocator 0 is used when swap_fence_current_value_ is 1, 4, 7...
|
||||
swap_fence_completed_value_ = swap_fence_->GetCompletedValue();
|
||||
if (swap_fence_completed_value_ + kSwapCommandAllocatorCount <
|
||||
swap_fence_current_value_) {
|
||||
swap_fence_->SetEventOnCompletion(
|
||||
swap_fence_current_value_ - kSwapCommandAllocatorCount,
|
||||
swap_fence_completion_event_);
|
||||
WaitForSingleObject(swap_fence_completion_event_, INFINITE);
|
||||
swap_fence_completed_value_ = swap_fence_->GetCompletedValue();
|
||||
}
|
||||
|
||||
// Start the command list.
|
||||
uint32_t command_allocator_index =
|
||||
uint32_t((swap_fence_current_value_ + (kSwapCommandAllocatorCount - 1)) %
|
||||
kSwapCommandAllocatorCount);
|
||||
ID3D12CommandAllocator* command_allocator =
|
||||
swap_command_allocators_[command_allocator_index].Get();
|
||||
command_allocator->Reset();
|
||||
swap_command_list_->Reset(command_allocator, nullptr);
|
||||
|
||||
// Bind the back buffer as a render target and clear it.
|
||||
D3D12_RESOURCE_BARRIER barrier;
|
||||
barrier.Type = D3D12_RESOURCE_BARRIER_TYPE_TRANSITION;
|
||||
barrier.Flags = D3D12_RESOURCE_BARRIER_FLAG_NONE;
|
||||
barrier.Transition.pResource =
|
||||
swap_chain_buffers_[swap_chain_back_buffer_index_].Get();
|
||||
barrier.Transition.Subresource = D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES;
|
||||
barrier.Transition.StateBefore = D3D12_RESOURCE_STATE_PRESENT;
|
||||
barrier.Transition.StateAfter = D3D12_RESOURCE_STATE_RENDER_TARGET;
|
||||
swap_command_list_->ResourceBarrier(1, &barrier);
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE back_buffer_rtv = GetSwapChainBackBufferRTV();
|
||||
swap_command_list_->OMSetRenderTargets(1, &back_buffer_rtv, TRUE, nullptr);
|
||||
float clear_color[4];
|
||||
GetClearColor(clear_color);
|
||||
swap_command_list_->ClearRenderTargetView(back_buffer_rtv, clear_color, 0,
|
||||
nullptr);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void D3D12Context::EndSwap() {
|
||||
if (!target_window_ || context_lost_) {
|
||||
return;
|
||||
}
|
||||
|
||||
ID3D12CommandQueue* direct_queue = GetD3D12Provider().GetDirectQueue();
|
||||
|
||||
// Switch the back buffer to presentation state.
|
||||
D3D12_RESOURCE_BARRIER barrier;
|
||||
barrier.Type = D3D12_RESOURCE_BARRIER_TYPE_TRANSITION;
|
||||
barrier.Flags = D3D12_RESOURCE_BARRIER_FLAG_NONE;
|
||||
barrier.Transition.pResource =
|
||||
swap_chain_buffers_[swap_chain_back_buffer_index_].Get();
|
||||
barrier.Transition.Subresource = D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES;
|
||||
barrier.Transition.StateBefore = D3D12_RESOURCE_STATE_RENDER_TARGET;
|
||||
barrier.Transition.StateAfter = D3D12_RESOURCE_STATE_PRESENT;
|
||||
swap_command_list_->ResourceBarrier(1, &barrier);
|
||||
|
||||
// Submit the command list.
|
||||
swap_command_list_->Close();
|
||||
ID3D12CommandList* execute_command_lists[] = {swap_command_list_.Get()};
|
||||
direct_queue->ExecuteCommandLists(1, execute_command_lists);
|
||||
|
||||
// Present and check if the context was lost.
|
||||
if (FAILED(swap_chain_->Present(0, 0))) {
|
||||
context_lost_ = true;
|
||||
return;
|
||||
}
|
||||
|
||||
// Signal the fence to wait for frame resources to become free again.
|
||||
direct_queue->Signal(swap_fence_.Get(), swap_fence_current_value_++);
|
||||
|
||||
// Get the back buffer index for the next frame.
|
||||
swap_chain_back_buffer_index_ = swap_chain_->GetCurrentBackBufferIndex();
|
||||
}
|
||||
|
||||
std::unique_ptr<RawImage> D3D12Context::Capture() {
|
||||
// TODO(Triang3l): Read back swap chain front buffer.
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE D3D12Context::GetSwapChainBufferRTV(
|
||||
uint32_t buffer_index) const {
|
||||
return GetD3D12Provider().OffsetRTVDescriptor(swap_chain_rtv_heap_start_,
|
||||
buffer_index);
|
||||
}
|
||||
|
||||
} // namespace d3d12
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
@@ -1,112 +0,0 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2018 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_UI_D3D12_D3D12_CONTEXT_H_
|
||||
#define XENIA_UI_D3D12_D3D12_CONTEXT_H_
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "xenia/ui/d3d12/d3d12_immediate_drawer.h"
|
||||
#include "xenia/ui/d3d12/d3d12_provider.h"
|
||||
#include "xenia/ui/graphics_context.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
namespace d3d12 {
|
||||
|
||||
class D3D12Context : public GraphicsContext {
|
||||
public:
|
||||
~D3D12Context() override;
|
||||
|
||||
ImmediateDrawer* immediate_drawer() override;
|
||||
|
||||
bool WasLost() override;
|
||||
|
||||
bool BeginSwap() override;
|
||||
void EndSwap() override;
|
||||
|
||||
std::unique_ptr<RawImage> Capture() override;
|
||||
|
||||
D3D12Provider& GetD3D12Provider() const {
|
||||
return static_cast<D3D12Provider&>(*provider_);
|
||||
}
|
||||
|
||||
// The format used by DWM.
|
||||
static constexpr DXGI_FORMAT kSwapChainFormat = DXGI_FORMAT_B8G8R8A8_UNORM;
|
||||
ID3D12Resource* GetSwapChainBuffer(uint32_t buffer_index) const {
|
||||
return swap_chain_buffers_[buffer_index].Get();
|
||||
}
|
||||
uint32_t GetSwapChainBackBufferIndex() const {
|
||||
return swap_chain_back_buffer_index_;
|
||||
}
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE GetSwapChainBufferRTV(
|
||||
uint32_t buffer_index) const;
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE GetSwapChainBackBufferRTV() const {
|
||||
return GetSwapChainBufferRTV(GetSwapChainBackBufferIndex());
|
||||
}
|
||||
void GetSwapChainSize(uint32_t& width, uint32_t& height) const {
|
||||
width = swap_chain_width_;
|
||||
height = swap_chain_height_;
|
||||
}
|
||||
// Inside the current BeginSwap/EndSwap pair.
|
||||
uint64_t GetSwapCurrentFenceValue() const {
|
||||
return swap_fence_current_value_;
|
||||
}
|
||||
uint64_t GetSwapCompletedFenceValue() const {
|
||||
return swap_fence_completed_value_;
|
||||
}
|
||||
ID3D12GraphicsCommandList* GetSwapCommandList() const {
|
||||
return swap_command_list_.Get();
|
||||
}
|
||||
|
||||
private:
|
||||
friend class D3D12Provider;
|
||||
explicit D3D12Context(D3D12Provider* provider, Window* target_window);
|
||||
bool Initialize();
|
||||
|
||||
private:
|
||||
bool InitializeSwapChainBuffers();
|
||||
void Shutdown();
|
||||
|
||||
bool context_lost_ = false;
|
||||
|
||||
static constexpr uint32_t kSwapChainBufferCount = 3;
|
||||
Microsoft::WRL::ComPtr<IDXGISwapChain3> swap_chain_;
|
||||
uint32_t swap_chain_width_ = 0, swap_chain_height_ = 0;
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource>
|
||||
swap_chain_buffers_[kSwapChainBufferCount];
|
||||
uint32_t swap_chain_back_buffer_index_ = 0;
|
||||
Microsoft::WRL::ComPtr<ID3D12DescriptorHeap> swap_chain_rtv_heap_;
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE swap_chain_rtv_heap_start_;
|
||||
|
||||
uint64_t swap_fence_current_value_ = 1;
|
||||
uint64_t swap_fence_completed_value_ = 0;
|
||||
HANDLE swap_fence_completion_event_ = nullptr;
|
||||
Microsoft::WRL::ComPtr<ID3D12Fence> swap_fence_;
|
||||
|
||||
static constexpr uint32_t kSwapCommandAllocatorCount = 3;
|
||||
Microsoft::WRL::ComPtr<ID3D12CommandAllocator>
|
||||
swap_command_allocators_[kSwapCommandAllocatorCount];
|
||||
// Current command allocator is:
|
||||
// ((swap_fence_current_value_ + (kSwapCommandAllocatorCount - 1))) %
|
||||
// kSwapCommandAllocatorCount.
|
||||
Microsoft::WRL::ComPtr<ID3D12GraphicsCommandList> swap_command_list_;
|
||||
|
||||
Microsoft::WRL::ComPtr<IDCompositionDevice> dcomp_device_;
|
||||
Microsoft::WRL::ComPtr<IDCompositionTarget> dcomp_target_;
|
||||
Microsoft::WRL::ComPtr<IDCompositionVisual> dcomp_visual_;
|
||||
|
||||
std::unique_ptr<D3D12ImmediateDrawer> immediate_drawer_;
|
||||
};
|
||||
|
||||
} // namespace d3d12
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
|
||||
#endif // XENIA_UI_D3D12_D3D12_CONTEXT_H_
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -41,6 +41,25 @@ void D3D12DescriptorHeapPool::Reclaim(uint64_t completed_submission_index) {
|
||||
}
|
||||
}
|
||||
|
||||
void D3D12DescriptorHeapPool::ChangeSubmissionTimeline() {
|
||||
// Reclaim all submitted pages.
|
||||
if (writable_last_) {
|
||||
writable_last_->next = submitted_first_;
|
||||
} else {
|
||||
writable_first_ = submitted_first_;
|
||||
}
|
||||
writable_last_ = submitted_last_;
|
||||
submitted_first_ = nullptr;
|
||||
submitted_last_ = nullptr;
|
||||
|
||||
// Mark all pages as never used yet in the new timeline.
|
||||
Page* page = writable_first_;
|
||||
while (page) {
|
||||
page->last_submission_index = 0;
|
||||
page = page->next;
|
||||
}
|
||||
}
|
||||
|
||||
void D3D12DescriptorHeapPool::ClearCache() {
|
||||
// Not checking current_page_used_ != 0 because asking for 0 descriptors
|
||||
// returns a valid heap also - but actually the new heap will be different now
|
||||
@@ -49,14 +68,12 @@ void D3D12DescriptorHeapPool::ClearCache() {
|
||||
current_page_used_ = 0;
|
||||
while (submitted_first_) {
|
||||
auto next = submitted_first_->next;
|
||||
submitted_first_->heap->Release();
|
||||
delete submitted_first_;
|
||||
submitted_first_ = next;
|
||||
}
|
||||
submitted_last_ = nullptr;
|
||||
while (writable_first_) {
|
||||
auto next = writable_first_->next;
|
||||
writable_first_->heap->Release();
|
||||
delete writable_first_;
|
||||
writable_first_ = next;
|
||||
}
|
||||
@@ -110,7 +127,7 @@ uint64_t D3D12DescriptorHeapPool::Request(uint64_t submission_index,
|
||||
new_heap_desc.NumDescriptors = page_size_;
|
||||
new_heap_desc.Flags = D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE;
|
||||
new_heap_desc.NodeMask = 0;
|
||||
ID3D12DescriptorHeap* new_heap;
|
||||
Microsoft::WRL::ComPtr<ID3D12DescriptorHeap> new_heap;
|
||||
if (FAILED(device_->CreateDescriptorHeap(&new_heap_desc,
|
||||
IID_PPV_ARGS(&new_heap)))) {
|
||||
XELOGE("Failed to create a heap for {} shader-visible descriptors",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -30,6 +30,7 @@ class D3D12DescriptorHeapPool {
|
||||
~D3D12DescriptorHeapPool();
|
||||
|
||||
void Reclaim(uint64_t completed_submission_index);
|
||||
void ChangeSubmissionTimeline();
|
||||
void ClearCache();
|
||||
|
||||
// Because all descriptors for a single draw call must be in the same heap,
|
||||
@@ -65,7 +66,7 @@ class D3D12DescriptorHeapPool {
|
||||
// after a successful request because before a request, the heap may not exist
|
||||
// yet.
|
||||
ID3D12DescriptorHeap* GetLastRequestHeap() const {
|
||||
return writable_first_->heap;
|
||||
return writable_first_->heap.Get();
|
||||
}
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE GetLastRequestHeapCPUStart() const {
|
||||
return writable_first_->cpu_start;
|
||||
@@ -80,7 +81,7 @@ class D3D12DescriptorHeapPool {
|
||||
uint32_t page_size_;
|
||||
|
||||
struct Page {
|
||||
ID3D12DescriptorHeap* heap;
|
||||
Microsoft::WRL::ComPtr<ID3D12DescriptorHeap> heap;
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE cpu_start;
|
||||
D3D12_GPU_DESCRIPTOR_HANDLE gpu_start;
|
||||
uint64_t last_submission_index;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2018 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -17,7 +17,7 @@
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/ui/d3d12/d3d12_context.h"
|
||||
#include "xenia/ui/d3d12/d3d12_presenter.h"
|
||||
#include "xenia/ui/d3d12/d3d12_util.h"
|
||||
|
||||
namespace xe {
|
||||
@@ -38,35 +38,40 @@ D3D12ImmediateDrawer::D3D12ImmediateTexture::D3D12ImmediateTexture(
|
||||
resource_(resource),
|
||||
sampler_index_(sampler_index),
|
||||
immediate_drawer_(immediate_drawer),
|
||||
immediate_drawer_index_(immediate_drawer_index) {
|
||||
if (resource_) {
|
||||
resource_->AddRef();
|
||||
}
|
||||
}
|
||||
immediate_drawer_index_(immediate_drawer_index) {}
|
||||
|
||||
D3D12ImmediateDrawer::D3D12ImmediateTexture::~D3D12ImmediateTexture() {
|
||||
if (immediate_drawer_) {
|
||||
immediate_drawer_->OnImmediateTextureDestroyed(*this);
|
||||
}
|
||||
if (resource_) {
|
||||
resource_->Release();
|
||||
}
|
||||
}
|
||||
|
||||
void D3D12ImmediateDrawer::D3D12ImmediateTexture::OnImmediateDrawerShutdown() {
|
||||
void D3D12ImmediateDrawer::D3D12ImmediateTexture::OnImmediateDrawerDestroyed() {
|
||||
immediate_drawer_ = nullptr;
|
||||
// Lifetime is not managed anymore, so don't keep the resource either.
|
||||
util::ReleaseAndNull(resource_);
|
||||
resource_.Reset();
|
||||
}
|
||||
|
||||
D3D12ImmediateDrawer::D3D12ImmediateDrawer(D3D12Context& graphics_context)
|
||||
: ImmediateDrawer(&graphics_context), context_(graphics_context) {}
|
||||
D3D12ImmediateDrawer::~D3D12ImmediateDrawer() {
|
||||
// Await GPU usage completion of all draws and texture uploads (which happen
|
||||
// before draws).
|
||||
auto d3d12_presenter = static_cast<D3D12Presenter*>(presenter());
|
||||
if (d3d12_presenter) {
|
||||
d3d12_presenter->AwaitUISubmissionCompletionFromUIThread(
|
||||
last_paint_submission_index_);
|
||||
}
|
||||
|
||||
D3D12ImmediateDrawer::~D3D12ImmediateDrawer() { Shutdown(); }
|
||||
// Texture resources and descriptors are owned and tracked by the immediate
|
||||
// drawer. Zombie texture objects are supported, but are meaningless.
|
||||
assert_true(textures_.empty());
|
||||
for (D3D12ImmediateTexture* texture : textures_) {
|
||||
texture->OnImmediateDrawerDestroyed();
|
||||
}
|
||||
textures_.clear();
|
||||
}
|
||||
|
||||
bool D3D12ImmediateDrawer::Initialize() {
|
||||
const D3D12Provider& provider = context_.GetD3D12Provider();
|
||||
ID3D12Device* device = provider.GetDevice();
|
||||
ID3D12Device* device = provider_.GetDevice();
|
||||
|
||||
// Create the root signature.
|
||||
D3D12_ROOT_PARAMETER root_parameters[size_t(RootParameter::kCount)];
|
||||
@@ -99,7 +104,7 @@ bool D3D12ImmediateDrawer::Initialize() {
|
||||
}
|
||||
{
|
||||
auto& root_parameter =
|
||||
root_parameters[size_t(RootParameter::kViewportSizeInv)];
|
||||
root_parameters[size_t(RootParameter::kCoordinateSpaceSizeInv)];
|
||||
root_parameter.ParameterType = D3D12_ROOT_PARAMETER_TYPE_32BIT_CONSTANTS;
|
||||
root_parameter.Constants.ShaderRegister = 0;
|
||||
root_parameter.Constants.RegisterSpace = 0;
|
||||
@@ -113,16 +118,16 @@ bool D3D12ImmediateDrawer::Initialize() {
|
||||
root_signature_desc.pStaticSamplers = nullptr;
|
||||
root_signature_desc.Flags =
|
||||
D3D12_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT;
|
||||
root_signature_ = util::CreateRootSignature(provider, root_signature_desc);
|
||||
if (root_signature_ == nullptr) {
|
||||
XELOGE("Failed to create the Direct3D 12 immediate drawer root signature");
|
||||
Shutdown();
|
||||
*(root_signature_.ReleaseAndGetAddressOf()) =
|
||||
util::CreateRootSignature(provider_, root_signature_desc);
|
||||
if (!root_signature_) {
|
||||
XELOGE("D3D12ImmediateDrawer: Failed to create the root signature");
|
||||
return false;
|
||||
}
|
||||
|
||||
// Create the pipelines.
|
||||
D3D12_GRAPHICS_PIPELINE_STATE_DESC pipeline_desc = {};
|
||||
pipeline_desc.pRootSignature = root_signature_;
|
||||
pipeline_desc.pRootSignature = root_signature_.Get();
|
||||
pipeline_desc.VS.pShaderBytecode = shaders::immediate_vs;
|
||||
pipeline_desc.VS.BytecodeLength = sizeof(shaders::immediate_vs);
|
||||
pipeline_desc.PS.pShaderBytecode = shaders::immediate_ps;
|
||||
@@ -133,13 +138,10 @@ bool D3D12ImmediateDrawer::Initialize() {
|
||||
pipeline_blend_desc.SrcBlend = D3D12_BLEND_SRC_ALPHA;
|
||||
pipeline_blend_desc.DestBlend = D3D12_BLEND_INV_SRC_ALPHA;
|
||||
pipeline_blend_desc.BlendOp = D3D12_BLEND_OP_ADD;
|
||||
// Don't change alpha (always 1).
|
||||
pipeline_blend_desc.SrcBlendAlpha = D3D12_BLEND_ZERO;
|
||||
pipeline_blend_desc.SrcBlendAlpha = D3D12_BLEND_ONE;
|
||||
pipeline_blend_desc.DestBlendAlpha = D3D12_BLEND_ONE;
|
||||
pipeline_blend_desc.BlendOpAlpha = D3D12_BLEND_OP_ADD;
|
||||
pipeline_blend_desc.RenderTargetWriteMask = D3D12_COLOR_WRITE_ENABLE_RED |
|
||||
D3D12_COLOR_WRITE_ENABLE_GREEN |
|
||||
D3D12_COLOR_WRITE_ENABLE_BLUE;
|
||||
pipeline_blend_desc.RenderTargetWriteMask = D3D12_COLOR_WRITE_ENABLE_ALL;
|
||||
pipeline_desc.SampleMask = UINT_MAX;
|
||||
pipeline_desc.RasterizerState.FillMode = D3D12_FILL_MODE_SOLID;
|
||||
pipeline_desc.RasterizerState.CullMode = D3D12_CULL_MODE_NONE;
|
||||
@@ -161,23 +163,17 @@ bool D3D12ImmediateDrawer::Initialize() {
|
||||
UINT(xe::countof(pipeline_input_elements));
|
||||
pipeline_desc.PrimitiveTopologyType = D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE;
|
||||
pipeline_desc.NumRenderTargets = 1;
|
||||
pipeline_desc.RTVFormats[0] = D3D12Context::kSwapChainFormat;
|
||||
pipeline_desc.RTVFormats[0] = D3D12Presenter::kSwapChainFormat;
|
||||
pipeline_desc.SampleDesc.Count = 1;
|
||||
if (FAILED(device->CreateGraphicsPipelineState(
|
||||
&pipeline_desc, IID_PPV_ARGS(&pipeline_triangle_)))) {
|
||||
XELOGE(
|
||||
"Failed to create the Direct3D 12 immediate drawer triangle pipeline "
|
||||
"state");
|
||||
Shutdown();
|
||||
XELOGE("D3D12ImmediateDrawer: Failed to create the triangle pipeline");
|
||||
return false;
|
||||
}
|
||||
pipeline_desc.PrimitiveTopologyType = D3D12_PRIMITIVE_TOPOLOGY_TYPE_LINE;
|
||||
if (FAILED(device->CreateGraphicsPipelineState(
|
||||
&pipeline_desc, IID_PPV_ARGS(&pipeline_line_)))) {
|
||||
XELOGE(
|
||||
"Failed to create the Direct3D 12 immediate drawer line pipeline "
|
||||
"state");
|
||||
Shutdown();
|
||||
XELOGE("D3D12ImmediateDrawer: Failed to create the line pipeline");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -190,14 +186,12 @@ bool D3D12ImmediateDrawer::Initialize() {
|
||||
if (FAILED(device->CreateDescriptorHeap(&sampler_heap_desc,
|
||||
IID_PPV_ARGS(&sampler_heap_)))) {
|
||||
XELOGE(
|
||||
"Failed to create the Direct3D 12 immediate drawer sampler descriptor "
|
||||
"heap");
|
||||
Shutdown();
|
||||
"D3D12ImmediateDrawer: Failed to create the sampler descriptor heap");
|
||||
return false;
|
||||
}
|
||||
sampler_heap_cpu_start_ = sampler_heap_->GetCPUDescriptorHandleForHeapStart();
|
||||
sampler_heap_gpu_start_ = sampler_heap_->GetGPUDescriptorHandleForHeapStart();
|
||||
uint32_t sampler_size = provider.GetSamplerDescriptorSize();
|
||||
uint32_t sampler_size = provider_.GetSamplerDescriptorSize();
|
||||
// Nearest neighbor, clamp.
|
||||
D3D12_SAMPLER_DESC sampler_desc = {};
|
||||
sampler_desc.Filter = D3D12_FILTER_MIN_MAG_MIP_POINT;
|
||||
@@ -228,58 +222,22 @@ bool D3D12ImmediateDrawer::Initialize() {
|
||||
device->CreateSampler(&sampler_desc, sampler_handle);
|
||||
|
||||
// Create pools for draws.
|
||||
vertex_buffer_pool_ = std::make_unique<D3D12UploadBufferPool>(provider);
|
||||
vertex_buffer_pool_ = std::make_unique<D3D12UploadBufferPool>(provider_);
|
||||
texture_descriptor_pool_ = std::make_unique<D3D12DescriptorHeapPool>(
|
||||
device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV, 2048);
|
||||
|
||||
// Reset the current state.
|
||||
current_command_list_ = nullptr;
|
||||
batch_open_ = false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void D3D12ImmediateDrawer::Shutdown() {
|
||||
for (auto& deleted_texture : textures_deleted_) {
|
||||
deleted_texture.first->Release();
|
||||
}
|
||||
textures_deleted_.clear();
|
||||
|
||||
for (auto& texture_upload : texture_uploads_submitted_) {
|
||||
texture_upload.buffer->Release();
|
||||
texture_upload.texture->Release();
|
||||
}
|
||||
texture_uploads_submitted_.clear();
|
||||
|
||||
for (auto& texture_upload : texture_uploads_pending_) {
|
||||
texture_upload.buffer->Release();
|
||||
texture_upload.texture->Release();
|
||||
}
|
||||
texture_uploads_pending_.clear();
|
||||
|
||||
for (D3D12ImmediateTexture* texture : textures_) {
|
||||
texture->OnImmediateDrawerShutdown();
|
||||
}
|
||||
textures_.clear();
|
||||
|
||||
texture_descriptor_pool_.reset();
|
||||
vertex_buffer_pool_.reset();
|
||||
|
||||
util::ReleaseAndNull(sampler_heap_);
|
||||
|
||||
util::ReleaseAndNull(pipeline_line_);
|
||||
util::ReleaseAndNull(pipeline_triangle_);
|
||||
|
||||
util::ReleaseAndNull(root_signature_);
|
||||
}
|
||||
|
||||
std::unique_ptr<ImmediateTexture> D3D12ImmediateDrawer::CreateTexture(
|
||||
uint32_t width, uint32_t height, ImmediateTextureFilter filter,
|
||||
bool is_repeated, const uint8_t* data) {
|
||||
const D3D12Provider& provider = context_.GetD3D12Provider();
|
||||
ID3D12Device* device = provider.GetDevice();
|
||||
ID3D12Device* device = provider_.GetDevice();
|
||||
D3D12_HEAP_FLAGS heap_flag_create_not_zeroed =
|
||||
provider.GetHeapFlagCreateNotZeroed();
|
||||
provider_.GetHeapFlagCreateNotZeroed();
|
||||
|
||||
D3D12_RESOURCE_DESC resource_desc;
|
||||
resource_desc.Dimension = D3D12_RESOURCE_DIMENSION_TEXTURE2D;
|
||||
@@ -293,8 +251,8 @@ std::unique_ptr<ImmediateTexture> D3D12ImmediateDrawer::CreateTexture(
|
||||
resource_desc.SampleDesc.Quality = 0;
|
||||
resource_desc.Layout = D3D12_TEXTURE_LAYOUT_UNKNOWN;
|
||||
resource_desc.Flags = D3D12_RESOURCE_FLAG_NONE;
|
||||
ID3D12Resource* resource;
|
||||
if (SUCCEEDED(provider.GetDevice()->CreateCommittedResource(
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> resource;
|
||||
if (SUCCEEDED(device->CreateCommittedResource(
|
||||
&util::kHeapPropertiesDefault, heap_flag_create_not_zeroed,
|
||||
&resource_desc, D3D12_RESOURCE_STATE_COPY_DEST, nullptr,
|
||||
IID_PPV_ARGS(&resource)))) {
|
||||
@@ -306,7 +264,7 @@ std::unique_ptr<ImmediateTexture> D3D12ImmediateDrawer::CreateTexture(
|
||||
D3D12_RESOURCE_DESC upload_buffer_desc;
|
||||
util::FillBufferResourceDesc(upload_buffer_desc, upload_size,
|
||||
D3D12_RESOURCE_FLAG_NONE);
|
||||
ID3D12Resource* upload_buffer;
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> upload_buffer;
|
||||
if (SUCCEEDED(device->CreateCommittedResource(
|
||||
&util::kHeapPropertiesUpload, heap_flag_create_not_zeroed,
|
||||
&upload_buffer_desc, D3D12_RESOURCE_STATE_GENERIC_READ, nullptr,
|
||||
@@ -333,35 +291,30 @@ std::unique_ptr<ImmediateTexture> D3D12ImmediateDrawer::CreateTexture(
|
||||
}
|
||||
upload_buffer->Unmap(0, nullptr);
|
||||
// Defer uploading and transition to the next draw.
|
||||
PendingTextureUpload& pending_upload =
|
||||
texture_uploads_pending_.emplace_back();
|
||||
// While the upload has not been yet completed, keep a reference to the
|
||||
// resource because its lifetime is not tied to that of the
|
||||
// ImmediateTexture (and thus to context's submissions) now.
|
||||
resource->AddRef();
|
||||
pending_upload.texture = resource;
|
||||
pending_upload.buffer = upload_buffer;
|
||||
PendingTextureUpload& pending_upload =
|
||||
texture_uploads_pending_.emplace_back(resource.Get(),
|
||||
upload_buffer.Get());
|
||||
} else {
|
||||
XELOGE(
|
||||
"Failed to map a Direct3D 12 upload buffer for a {}x{} texture for "
|
||||
"immediate drawing",
|
||||
"D3D12ImmediateDrawer: Failed to map an upload buffer for a {}x{} "
|
||||
"texture",
|
||||
width, height);
|
||||
upload_buffer->Release();
|
||||
resource->Release();
|
||||
resource = nullptr;
|
||||
upload_buffer.Reset();
|
||||
resource.Reset();
|
||||
}
|
||||
} else {
|
||||
XELOGE(
|
||||
"Failed to create a Direct3D 12 upload buffer for a {}x{} texture "
|
||||
"for immediate drawing",
|
||||
"D3D12ImmediateDrawer: Failed to create an upload buffer for a {}x{} "
|
||||
"texture",
|
||||
width, height);
|
||||
resource->Release();
|
||||
resource = nullptr;
|
||||
resource.Reset();
|
||||
}
|
||||
} else {
|
||||
XELOGE("Failed to create a {}x{} Direct3D 12 texture for immediate drawing",
|
||||
width, height);
|
||||
resource = nullptr;
|
||||
XELOGE("D3D12ImmediateDrawer: Failed to create a {}x{} texture", width,
|
||||
height);
|
||||
}
|
||||
|
||||
SamplerIndex sampler_index;
|
||||
@@ -376,35 +329,38 @@ std::unique_ptr<ImmediateTexture> D3D12ImmediateDrawer::CreateTexture(
|
||||
// Manage by this immediate drawer if successfully created a resource.
|
||||
std::unique_ptr<D3D12ImmediateTexture> texture =
|
||||
std::make_unique<D3D12ImmediateTexture>(
|
||||
width, height, resource, sampler_index, resource ? this : nullptr,
|
||||
textures_.size());
|
||||
width, height, resource.Get(), sampler_index,
|
||||
resource ? this : nullptr, textures_.size());
|
||||
if (resource) {
|
||||
textures_.push_back(texture.get());
|
||||
// D3D12ImmediateTexture now holds a reference.
|
||||
resource->Release();
|
||||
}
|
||||
return std::move(texture);
|
||||
}
|
||||
|
||||
void D3D12ImmediateDrawer::Begin(int render_target_width,
|
||||
int render_target_height) {
|
||||
assert_null(current_command_list_);
|
||||
void D3D12ImmediateDrawer::Begin(UIDrawContext& ui_draw_context,
|
||||
float coordinate_space_width,
|
||||
float coordinate_space_height) {
|
||||
ImmediateDrawer::Begin(ui_draw_context, coordinate_space_width,
|
||||
coordinate_space_height);
|
||||
|
||||
assert_false(batch_open_);
|
||||
|
||||
ID3D12Device* device = context_.GetD3D12Provider().GetDevice();
|
||||
const D3D12UIDrawContext& d3d12_ui_draw_context =
|
||||
static_cast<const D3D12UIDrawContext&>(ui_draw_context);
|
||||
|
||||
// Use the compositing command list.
|
||||
current_command_list_ = context_.GetSwapCommandList();
|
||||
|
||||
uint64_t completed_fence_value = context_.GetSwapCompletedFenceValue();
|
||||
// Update the submission index to be used throughout the current immediate
|
||||
// drawer paint.
|
||||
last_paint_submission_index_ =
|
||||
d3d12_ui_draw_context.submission_index_current();
|
||||
last_completed_submission_index_ =
|
||||
d3d12_ui_draw_context.submission_index_completed();
|
||||
|
||||
// Release deleted textures.
|
||||
for (auto it = textures_deleted_.begin(); it != textures_deleted_.end();) {
|
||||
if (it->second > completed_fence_value) {
|
||||
if (it->second > last_completed_submission_index_) {
|
||||
++it;
|
||||
continue;
|
||||
}
|
||||
it->first->Release();
|
||||
if (std::next(it) != textures_deleted_.end()) {
|
||||
*it = textures_deleted_.back();
|
||||
}
|
||||
@@ -414,37 +370,45 @@ void D3D12ImmediateDrawer::Begin(int render_target_width,
|
||||
// Release upload buffers for completed texture uploads.
|
||||
auto erase_uploads_end = texture_uploads_submitted_.begin();
|
||||
while (erase_uploads_end != texture_uploads_submitted_.end()) {
|
||||
if (erase_uploads_end->fence_value > completed_fence_value) {
|
||||
if (erase_uploads_end->submission_index >
|
||||
last_completed_submission_index_) {
|
||||
break;
|
||||
}
|
||||
erase_uploads_end->buffer->Release();
|
||||
// Release the texture reference held for uploading.
|
||||
erase_uploads_end->texture->Release();
|
||||
++erase_uploads_end;
|
||||
}
|
||||
texture_uploads_submitted_.erase(texture_uploads_submitted_.begin(),
|
||||
erase_uploads_end);
|
||||
|
||||
vertex_buffer_pool_->Reclaim(completed_fence_value);
|
||||
texture_descriptor_pool_->Reclaim(completed_fence_value);
|
||||
// Make sure textures created before the current frame are uploaded, even if
|
||||
// nothing was drawn in the previous frames or nothing will be drawn in the
|
||||
// current or subsequent ones, as that would result in upload buffers kept
|
||||
// forever.
|
||||
UploadTextures();
|
||||
|
||||
texture_descriptor_pool_->Reclaim(last_completed_submission_index_);
|
||||
vertex_buffer_pool_->Reclaim(last_completed_submission_index_);
|
||||
|
||||
// Begin drawing.
|
||||
|
||||
ID3D12GraphicsCommandList* command_list =
|
||||
d3d12_ui_draw_context.command_list();
|
||||
|
||||
current_render_target_width_ = render_target_width;
|
||||
current_render_target_height_ = render_target_height;
|
||||
D3D12_VIEWPORT viewport;
|
||||
viewport.TopLeftX = 0.0f;
|
||||
viewport.TopLeftY = 0.0f;
|
||||
viewport.Width = float(render_target_width);
|
||||
viewport.Height = float(render_target_height);
|
||||
viewport.Width = float(d3d12_ui_draw_context.render_target_width());
|
||||
viewport.Height = float(d3d12_ui_draw_context.render_target_height());
|
||||
viewport.MinDepth = 0.0f;
|
||||
viewport.MaxDepth = 1.0f;
|
||||
current_command_list_->RSSetViewports(1, &viewport);
|
||||
command_list->RSSetViewports(1, &viewport);
|
||||
|
||||
current_command_list_->SetGraphicsRootSignature(root_signature_);
|
||||
float viewport_inv_size[2];
|
||||
viewport_inv_size[0] = 1.0f / viewport.Width;
|
||||
viewport_inv_size[1] = 1.0f / viewport.Height;
|
||||
current_command_list_->SetGraphicsRoot32BitConstants(
|
||||
UINT(RootParameter::kViewportSizeInv), 2, viewport_inv_size, 0);
|
||||
command_list->SetGraphicsRootSignature(root_signature_.Get());
|
||||
float coordinate_space_size_inv[2];
|
||||
coordinate_space_size_inv[0] = 1.0f / coordinate_space_width;
|
||||
coordinate_space_size_inv[1] = 1.0f / coordinate_space_height;
|
||||
command_list->SetGraphicsRoot32BitConstants(
|
||||
UINT(RootParameter::kCoordinateSpaceSizeInv), 2,
|
||||
coordinate_space_size_inv, 0);
|
||||
|
||||
current_scissor_.left = 0;
|
||||
current_scissor_.top = 0;
|
||||
@@ -460,9 +424,12 @@ void D3D12ImmediateDrawer::Begin(int render_target_width,
|
||||
|
||||
void D3D12ImmediateDrawer::BeginDrawBatch(const ImmediateDrawBatch& batch) {
|
||||
assert_false(batch_open_);
|
||||
assert_not_null(current_command_list_);
|
||||
|
||||
uint64_t current_fence_value = context_.GetSwapCurrentFenceValue();
|
||||
const D3D12UIDrawContext& d3d12_ui_draw_context =
|
||||
*static_cast<const D3D12UIDrawContext*>(ui_draw_context());
|
||||
|
||||
ID3D12GraphicsCommandList* command_list =
|
||||
d3d12_ui_draw_context.command_list();
|
||||
|
||||
// Bind the vertices.
|
||||
D3D12_VERTEX_BUFFER_VIEW vertex_buffer_view;
|
||||
@@ -470,16 +437,16 @@ void D3D12ImmediateDrawer::BeginDrawBatch(const ImmediateDrawBatch& batch) {
|
||||
vertex_buffer_view.SizeInBytes =
|
||||
UINT(sizeof(ImmediateVertex)) * batch.vertex_count;
|
||||
void* vertex_buffer_mapping = vertex_buffer_pool_->Request(
|
||||
current_fence_value, vertex_buffer_view.SizeInBytes, sizeof(float),
|
||||
nullptr, nullptr, &vertex_buffer_view.BufferLocation);
|
||||
last_paint_submission_index_, vertex_buffer_view.SizeInBytes,
|
||||
sizeof(float), nullptr, nullptr, &vertex_buffer_view.BufferLocation);
|
||||
if (vertex_buffer_mapping == nullptr) {
|
||||
XELOGE("Failed to get a buffer for {} vertices in the immediate drawer",
|
||||
XELOGE("D3D12ImmediateDrawer: Failed to get a buffer for {} vertices",
|
||||
batch.vertex_count);
|
||||
return;
|
||||
}
|
||||
std::memcpy(vertex_buffer_mapping, batch.vertices,
|
||||
vertex_buffer_view.SizeInBytes);
|
||||
current_command_list_->IASetVertexBuffers(0, 1, &vertex_buffer_view);
|
||||
command_list->IASetVertexBuffers(0, 1, &vertex_buffer_view);
|
||||
|
||||
// Bind the indices.
|
||||
batch_has_index_buffer_ = batch.indices != nullptr;
|
||||
@@ -488,16 +455,16 @@ void D3D12ImmediateDrawer::BeginDrawBatch(const ImmediateDrawBatch& batch) {
|
||||
index_buffer_view.SizeInBytes = UINT(sizeof(uint16_t)) * batch.index_count;
|
||||
index_buffer_view.Format = DXGI_FORMAT_R16_UINT;
|
||||
void* index_buffer_mapping = vertex_buffer_pool_->Request(
|
||||
current_fence_value, index_buffer_view.SizeInBytes, sizeof(uint16_t),
|
||||
nullptr, nullptr, &index_buffer_view.BufferLocation);
|
||||
last_paint_submission_index_, index_buffer_view.SizeInBytes,
|
||||
sizeof(uint16_t), nullptr, nullptr, &index_buffer_view.BufferLocation);
|
||||
if (index_buffer_mapping == nullptr) {
|
||||
XELOGE("Failed to get a buffer for {} indices in the immediate drawer",
|
||||
XELOGE("D3D12ImmediateDrawer: Failed to get a buffer for {} indices",
|
||||
batch.index_count);
|
||||
return;
|
||||
}
|
||||
std::memcpy(index_buffer_mapping, batch.indices,
|
||||
index_buffer_view.SizeInBytes);
|
||||
current_command_list_->IASetIndexBuffer(&index_buffer_view);
|
||||
command_list->IASetIndexBuffer(&index_buffer_view);
|
||||
}
|
||||
|
||||
batch_open_ = true;
|
||||
@@ -509,30 +476,30 @@ void D3D12ImmediateDrawer::Draw(const ImmediateDraw& draw) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Set the scissor rectangle if enabled.
|
||||
D3D12_RECT scissor;
|
||||
if (draw.scissor) {
|
||||
scissor.left = draw.scissor_rect[0];
|
||||
scissor.top = current_render_target_height_ -
|
||||
(draw.scissor_rect[1] + draw.scissor_rect[3]);
|
||||
scissor.right = scissor.left + draw.scissor_rect[2];
|
||||
scissor.bottom = scissor.top + draw.scissor_rect[3];
|
||||
} else {
|
||||
scissor.left = 0;
|
||||
scissor.top = 0;
|
||||
scissor.right = current_render_target_width_;
|
||||
scissor.bottom = current_render_target_height_;
|
||||
}
|
||||
if (scissor.right <= scissor.left || scissor.bottom <= scissor.top) {
|
||||
// Nothing is visible (used as the default current_scissor_ value also).
|
||||
const D3D12UIDrawContext& d3d12_ui_draw_context =
|
||||
*static_cast<const D3D12UIDrawContext*>(ui_draw_context());
|
||||
ID3D12GraphicsCommandList* command_list =
|
||||
d3d12_ui_draw_context.command_list();
|
||||
|
||||
// Set the scissor rectangle.
|
||||
uint32_t scissor_left, scissor_top, scissor_width, scissor_height;
|
||||
if (!ScissorToRenderTarget(draw, scissor_left, scissor_top, scissor_width,
|
||||
scissor_height)) {
|
||||
// Nothing is visible (zero area is used as the default current_scissor_
|
||||
// value also).
|
||||
return;
|
||||
}
|
||||
D3D12_RECT scissor;
|
||||
scissor.left = LONG(scissor_left);
|
||||
scissor.top = LONG(scissor_top);
|
||||
scissor.right = LONG(scissor_left + scissor_width);
|
||||
scissor.bottom = LONG(scissor_top + scissor_height);
|
||||
if (current_scissor_.left != scissor.left ||
|
||||
current_scissor_.top != scissor.top ||
|
||||
current_scissor_.right != scissor.right ||
|
||||
current_scissor_.bottom != scissor.bottom) {
|
||||
current_scissor_ = scissor;
|
||||
current_command_list_->RSSetScissorRects(1, &scissor);
|
||||
command_list->RSSetScissorRects(1, &scissor);
|
||||
}
|
||||
|
||||
// Ensure texture data is available if any texture is loaded, upload all in a
|
||||
@@ -542,30 +509,27 @@ void D3D12ImmediateDrawer::Draw(const ImmediateDraw& draw) {
|
||||
// Bind the texture. If this is the first draw in a frame, the descriptor heap
|
||||
// index will be invalid initially, and the texture will be bound regardless
|
||||
// of what's in current_texture_.
|
||||
uint64_t current_fence_value = context_.GetSwapCurrentFenceValue();
|
||||
auto texture = static_cast<D3D12ImmediateTexture*>(draw.texture);
|
||||
ID3D12Resource* texture_resource = texture ? texture->resource() : nullptr;
|
||||
bool bind_texture = current_texture_ != texture_resource;
|
||||
uint32_t texture_descriptor_index;
|
||||
uint64_t texture_heap_index = texture_descriptor_pool_->Request(
|
||||
current_fence_value, current_texture_descriptor_heap_index_,
|
||||
last_paint_submission_index_, current_texture_descriptor_heap_index_,
|
||||
bind_texture ? 1 : 0, 1, texture_descriptor_index);
|
||||
if (texture_heap_index == D3D12DescriptorHeapPool::kHeapIndexInvalid) {
|
||||
return;
|
||||
}
|
||||
if (texture_resource) {
|
||||
texture->SetLastUsageFenceValue(current_fence_value);
|
||||
texture->SetLastUsageSubmissionIndex(last_paint_submission_index_);
|
||||
}
|
||||
if (current_texture_descriptor_heap_index_ != texture_heap_index) {
|
||||
current_texture_descriptor_heap_index_ = texture_heap_index;
|
||||
bind_texture = true;
|
||||
ID3D12DescriptorHeap* descriptor_heaps[] = {
|
||||
texture_descriptor_pool_->GetLastRequestHeap(), sampler_heap_};
|
||||
current_command_list_->SetDescriptorHeaps(2, descriptor_heaps);
|
||||
texture_descriptor_pool_->GetLastRequestHeap(), sampler_heap_.Get()};
|
||||
command_list->SetDescriptorHeaps(2, descriptor_heaps);
|
||||
}
|
||||
|
||||
const D3D12Provider& provider = context_.GetD3D12Provider();
|
||||
|
||||
if (bind_texture) {
|
||||
current_texture_ = texture_resource;
|
||||
D3D12_SHADER_RESOURCE_VIEW_DESC texture_view_desc;
|
||||
@@ -587,14 +551,14 @@ void D3D12ImmediateDrawer::Draw(const ImmediateDraw& draw) {
|
||||
texture_view_desc.Texture2D.MipLevels = 1;
|
||||
texture_view_desc.Texture2D.PlaneSlice = 0;
|
||||
texture_view_desc.Texture2D.ResourceMinLODClamp = 0.0f;
|
||||
provider.GetDevice()->CreateShaderResourceView(
|
||||
provider_.GetDevice()->CreateShaderResourceView(
|
||||
texture_resource, &texture_view_desc,
|
||||
provider.OffsetViewDescriptor(
|
||||
provider_.OffsetViewDescriptor(
|
||||
texture_descriptor_pool_->GetLastRequestHeapCPUStart(),
|
||||
texture_descriptor_index));
|
||||
current_command_list_->SetGraphicsRootDescriptorTable(
|
||||
command_list->SetGraphicsRootDescriptorTable(
|
||||
UINT(RootParameter::kTexture),
|
||||
provider.OffsetViewDescriptor(
|
||||
provider_.OffsetViewDescriptor(
|
||||
texture_descriptor_pool_->GetLastRequestHeapGPUStart(),
|
||||
texture_descriptor_index));
|
||||
}
|
||||
@@ -605,10 +569,10 @@ void D3D12ImmediateDrawer::Draw(const ImmediateDraw& draw) {
|
||||
texture_resource ? texture->sampler_index() : SamplerIndex::kNearestClamp;
|
||||
if (current_sampler_index_ != sampler_index) {
|
||||
current_sampler_index_ = sampler_index;
|
||||
current_command_list_->SetGraphicsRootDescriptorTable(
|
||||
command_list->SetGraphicsRootDescriptorTable(
|
||||
UINT(RootParameter::kSampler),
|
||||
provider.OffsetSamplerDescriptor(sampler_heap_gpu_start_,
|
||||
uint32_t(sampler_index)));
|
||||
provider_.OffsetSamplerDescriptor(sampler_heap_gpu_start_,
|
||||
uint32_t(sampler_index)));
|
||||
}
|
||||
|
||||
// Set the primitive type and the pipeline for it.
|
||||
@@ -617,11 +581,11 @@ void D3D12ImmediateDrawer::Draw(const ImmediateDraw& draw) {
|
||||
switch (draw.primitive_type) {
|
||||
case ImmediatePrimitiveType::kLines:
|
||||
primitive_topology = D3D_PRIMITIVE_TOPOLOGY_LINELIST;
|
||||
pipeline = pipeline_line_;
|
||||
pipeline = pipeline_line_.Get();
|
||||
break;
|
||||
case ImmediatePrimitiveType::kTriangles:
|
||||
primitive_topology = D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST;
|
||||
pipeline = pipeline_triangle_;
|
||||
pipeline = pipeline_triangle_.Get();
|
||||
break;
|
||||
default:
|
||||
assert_unhandled_case(draw.primitive_type);
|
||||
@@ -629,16 +593,16 @@ void D3D12ImmediateDrawer::Draw(const ImmediateDraw& draw) {
|
||||
}
|
||||
if (current_primitive_topology_ != primitive_topology) {
|
||||
current_primitive_topology_ = primitive_topology;
|
||||
current_command_list_->IASetPrimitiveTopology(primitive_topology);
|
||||
current_command_list_->SetPipelineState(pipeline);
|
||||
command_list->IASetPrimitiveTopology(primitive_topology);
|
||||
command_list->SetPipelineState(pipeline);
|
||||
}
|
||||
|
||||
// Draw.
|
||||
if (batch_has_index_buffer_) {
|
||||
current_command_list_->DrawIndexedInstanced(
|
||||
draw.count, 1, draw.index_offset, draw.base_vertex, 0);
|
||||
command_list->DrawIndexedInstanced(draw.count, 1, draw.index_offset,
|
||||
draw.base_vertex, 0);
|
||||
} else {
|
||||
current_command_list_->DrawInstanced(draw.count, 1, draw.base_vertex, 0);
|
||||
command_list->DrawInstanced(draw.count, 1, draw.base_vertex, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -646,11 +610,29 @@ void D3D12ImmediateDrawer::EndDrawBatch() { batch_open_ = false; }
|
||||
|
||||
void D3D12ImmediateDrawer::End() {
|
||||
assert_false(batch_open_);
|
||||
if (current_command_list_) {
|
||||
// Don't keep upload buffers forever if nothing was drawn in this frame.
|
||||
UploadTextures();
|
||||
current_command_list_ = nullptr;
|
||||
|
||||
ImmediateDrawer::End();
|
||||
}
|
||||
|
||||
void D3D12ImmediateDrawer::OnLeavePresenter() {
|
||||
// Leaving the presenter's submission timeline - await GPU usage completion of
|
||||
// all draws and texture uploads (which happen before draws) and reset
|
||||
// submission indices.
|
||||
D3D12Presenter& d3d12_presenter = *static_cast<D3D12Presenter*>(presenter());
|
||||
d3d12_presenter.AwaitUISubmissionCompletionFromUIThread(
|
||||
last_paint_submission_index_);
|
||||
|
||||
for (D3D12ImmediateTexture* texture : textures_) {
|
||||
texture->SetLastUsageSubmissionIndex(0);
|
||||
}
|
||||
|
||||
texture_uploads_submitted_.clear();
|
||||
|
||||
vertex_buffer_pool_->ChangeSubmissionTimeline();
|
||||
texture_descriptor_pool_->ChangeSubmissionTimeline();
|
||||
|
||||
last_paint_submission_index_ = 0;
|
||||
last_completed_submission_index_ = 0;
|
||||
}
|
||||
|
||||
void D3D12ImmediateDrawer::OnImmediateTextureDestroyed(
|
||||
@@ -665,35 +647,35 @@ void D3D12ImmediateDrawer::OnImmediateTextureDestroyed(
|
||||
|
||||
// Queue for delayed release.
|
||||
ID3D12Resource* resource = texture.resource();
|
||||
uint64_t last_usage_fence_value = texture.last_usage_fence_value();
|
||||
UINT64 last_usage_submission_index = texture.last_usage_submission_index();
|
||||
if (resource &&
|
||||
last_usage_fence_value > context_.GetSwapCompletedFenceValue()) {
|
||||
resource->AddRef();
|
||||
textures_deleted_.push_back(
|
||||
std::make_pair(resource, last_usage_fence_value));
|
||||
last_usage_submission_index > last_completed_submission_index_) {
|
||||
textures_deleted_.emplace_back(resource, last_usage_submission_index);
|
||||
}
|
||||
}
|
||||
|
||||
void D3D12ImmediateDrawer::UploadTextures() {
|
||||
assert_not_null(current_command_list_);
|
||||
if (texture_uploads_pending_.empty()) {
|
||||
// Called often - don't initialize anything.
|
||||
return;
|
||||
}
|
||||
|
||||
ID3D12Device* device = context_.GetD3D12Provider().GetDevice();
|
||||
uint64_t current_fence_value = context_.GetSwapCurrentFenceValue();
|
||||
ID3D12Device* device = provider_.GetDevice();
|
||||
const D3D12UIDrawContext& d3d12_ui_draw_context =
|
||||
*static_cast<const D3D12UIDrawContext*>(ui_draw_context());
|
||||
ID3D12GraphicsCommandList* command_list =
|
||||
d3d12_ui_draw_context.command_list();
|
||||
|
||||
// Copy all at once, then transition all at once (not interleaving copying and
|
||||
// pipeline barriers).
|
||||
std::vector<D3D12_RESOURCE_BARRIER> barriers;
|
||||
barriers.reserve(texture_uploads_pending_.size());
|
||||
for (const PendingTextureUpload& pending_upload : texture_uploads_pending_) {
|
||||
ID3D12Resource* texture = pending_upload.texture;
|
||||
ID3D12Resource* texture = pending_upload.texture.Get();
|
||||
|
||||
D3D12_RESOURCE_DESC texture_desc = texture->GetDesc();
|
||||
D3D12_TEXTURE_COPY_LOCATION location_source, location_dest;
|
||||
location_source.pResource = pending_upload.buffer;
|
||||
location_source.pResource = pending_upload.buffer.Get();
|
||||
location_source.Type = D3D12_TEXTURE_COPY_TYPE_PLACED_FOOTPRINT;
|
||||
device->GetCopyableFootprints(&texture_desc, 0, 1, 0,
|
||||
&location_source.PlacedFootprint, nullptr,
|
||||
@@ -701,8 +683,8 @@ void D3D12ImmediateDrawer::UploadTextures() {
|
||||
location_dest.pResource = texture;
|
||||
location_dest.Type = D3D12_TEXTURE_COPY_TYPE_SUBRESOURCE_INDEX;
|
||||
location_dest.SubresourceIndex = 0;
|
||||
current_command_list_->CopyTextureRegion(&location_dest, 0, 0, 0,
|
||||
&location_source, nullptr);
|
||||
command_list->CopyTextureRegion(&location_dest, 0, 0, 0, &location_source,
|
||||
nullptr);
|
||||
|
||||
D3D12_RESOURCE_BARRIER& barrier = barriers.emplace_back();
|
||||
barrier.Type = D3D12_RESOURCE_BARRIER_TYPE_TRANSITION;
|
||||
@@ -712,18 +694,12 @@ void D3D12ImmediateDrawer::UploadTextures() {
|
||||
barrier.Transition.StateBefore = D3D12_RESOURCE_STATE_COPY_DEST;
|
||||
barrier.Transition.StateAfter = D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE;
|
||||
|
||||
SubmittedTextureUpload& submitted_upload =
|
||||
texture_uploads_submitted_.emplace_back();
|
||||
// Transfer the reference to the texture - need to keep it until the upload
|
||||
// is completed.
|
||||
submitted_upload.texture = texture;
|
||||
submitted_upload.buffer = pending_upload.buffer;
|
||||
submitted_upload.fence_value = current_fence_value;
|
||||
texture_uploads_submitted_.emplace_back(
|
||||
texture, pending_upload.buffer.Get(), last_paint_submission_index_);
|
||||
}
|
||||
texture_uploads_pending_.clear();
|
||||
assert_false(barriers.empty());
|
||||
current_command_list_->ResourceBarrier(UINT(barriers.size()),
|
||||
barriers.data());
|
||||
command_list->ResourceBarrier(UINT(barriers.size()), barriers.data());
|
||||
}
|
||||
|
||||
} // namespace d3d12
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2018 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -17,6 +17,7 @@
|
||||
|
||||
#include "xenia/ui/d3d12/d3d12_api.h"
|
||||
#include "xenia/ui/d3d12/d3d12_descriptor_heap_pool.h"
|
||||
#include "xenia/ui/d3d12/d3d12_provider.h"
|
||||
#include "xenia/ui/d3d12/d3d12_upload_buffer_pool.h"
|
||||
#include "xenia/ui/immediate_drawer.h"
|
||||
|
||||
@@ -24,15 +25,19 @@ namespace xe {
|
||||
namespace ui {
|
||||
namespace d3d12 {
|
||||
|
||||
class D3D12Context;
|
||||
|
||||
class D3D12ImmediateDrawer : public ImmediateDrawer {
|
||||
class D3D12ImmediateDrawer final : public ImmediateDrawer {
|
||||
public:
|
||||
D3D12ImmediateDrawer(D3D12Context& graphics_context);
|
||||
~D3D12ImmediateDrawer() override;
|
||||
static std::unique_ptr<D3D12ImmediateDrawer> Create(
|
||||
const D3D12Provider& provider) {
|
||||
auto immediate_drawer = std::unique_ptr<D3D12ImmediateDrawer>(
|
||||
new D3D12ImmediateDrawer(provider));
|
||||
if (!immediate_drawer->Initialize()) {
|
||||
return nullptr;
|
||||
}
|
||||
return std::move(immediate_drawer);
|
||||
}
|
||||
|
||||
bool Initialize();
|
||||
void Shutdown();
|
||||
~D3D12ImmediateDrawer();
|
||||
|
||||
std::unique_ptr<ImmediateTexture> CreateTexture(uint32_t width,
|
||||
uint32_t height,
|
||||
@@ -40,12 +45,16 @@ class D3D12ImmediateDrawer : public ImmediateDrawer {
|
||||
bool is_repeated,
|
||||
const uint8_t* data) override;
|
||||
|
||||
void Begin(int render_target_width, int render_target_height) override;
|
||||
void Begin(UIDrawContext& ui_draw_context, float coordinate_space_width,
|
||||
float coordinate_space_height) override;
|
||||
void BeginDrawBatch(const ImmediateDrawBatch& batch) override;
|
||||
void Draw(const ImmediateDraw& draw) override;
|
||||
void EndDrawBatch() override;
|
||||
void End() override;
|
||||
|
||||
protected:
|
||||
void OnLeavePresenter() override;
|
||||
|
||||
private:
|
||||
enum class SamplerIndex {
|
||||
kNearestClamp,
|
||||
@@ -57,7 +66,7 @@ class D3D12ImmediateDrawer : public ImmediateDrawer {
|
||||
kInvalid = kCount
|
||||
};
|
||||
|
||||
class D3D12ImmediateTexture : public ImmediateTexture {
|
||||
class D3D12ImmediateTexture final : public ImmediateTexture {
|
||||
public:
|
||||
static constexpr DXGI_FORMAT kFormat = DXGI_FORMAT_R8G8B8A8_UNORM;
|
||||
D3D12ImmediateTexture(uint32_t width, uint32_t height,
|
||||
@@ -66,75 +75,93 @@ class D3D12ImmediateDrawer : public ImmediateDrawer {
|
||||
size_t immediate_drawer_index);
|
||||
~D3D12ImmediateTexture() override;
|
||||
|
||||
ID3D12Resource* resource() const { return resource_; }
|
||||
ID3D12Resource* resource() const { return resource_.Get(); }
|
||||
SamplerIndex sampler_index() const { return sampler_index_; }
|
||||
|
||||
size_t immediate_drawer_index() const { return immediate_drawer_index_; }
|
||||
void SetImmediateDrawerIndex(size_t index) {
|
||||
immediate_drawer_index_ = index;
|
||||
}
|
||||
void OnImmediateDrawerShutdown();
|
||||
void OnImmediateDrawerDestroyed();
|
||||
|
||||
uint64_t last_usage_fence_value() const { return last_usage_fence_value_; }
|
||||
void SetLastUsageFenceValue(uint64_t fence_value) {
|
||||
last_usage_fence_value_ = fence_value;
|
||||
UINT64 last_usage_submission_index() const {
|
||||
return last_usage_submission_index_;
|
||||
}
|
||||
void SetLastUsageSubmissionIndex(UINT64 submission_index) {
|
||||
last_usage_submission_index_ = submission_index;
|
||||
}
|
||||
|
||||
private:
|
||||
ID3D12Resource* resource_;
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> resource_;
|
||||
SamplerIndex sampler_index_;
|
||||
|
||||
D3D12ImmediateDrawer* immediate_drawer_;
|
||||
size_t immediate_drawer_index_;
|
||||
|
||||
uint64_t last_usage_fence_value_ = 0;
|
||||
UINT64 last_usage_submission_index_ = 0;
|
||||
};
|
||||
|
||||
D3D12ImmediateDrawer(const D3D12Provider& provider) : provider_(provider) {}
|
||||
bool Initialize();
|
||||
|
||||
void OnImmediateTextureDestroyed(D3D12ImmediateTexture& texture);
|
||||
|
||||
void UploadTextures();
|
||||
|
||||
D3D12Context& context_;
|
||||
const D3D12Provider& provider_;
|
||||
|
||||
ID3D12RootSignature* root_signature_ = nullptr;
|
||||
Microsoft::WRL::ComPtr<ID3D12RootSignature> root_signature_;
|
||||
enum class RootParameter {
|
||||
kTexture,
|
||||
kSampler,
|
||||
kViewportSizeInv,
|
||||
kCoordinateSpaceSizeInv,
|
||||
|
||||
kCount
|
||||
};
|
||||
|
||||
ID3D12PipelineState* pipeline_triangle_ = nullptr;
|
||||
ID3D12PipelineState* pipeline_line_ = nullptr;
|
||||
Microsoft::WRL::ComPtr<ID3D12PipelineState> pipeline_triangle_;
|
||||
Microsoft::WRL::ComPtr<ID3D12PipelineState> pipeline_line_;
|
||||
|
||||
ID3D12DescriptorHeap* sampler_heap_ = nullptr;
|
||||
Microsoft::WRL::ComPtr<ID3D12DescriptorHeap> sampler_heap_;
|
||||
D3D12_CPU_DESCRIPTOR_HANDLE sampler_heap_cpu_start_;
|
||||
D3D12_GPU_DESCRIPTOR_HANDLE sampler_heap_gpu_start_;
|
||||
|
||||
std::unique_ptr<D3D12UploadBufferPool> vertex_buffer_pool_;
|
||||
std::unique_ptr<D3D12DescriptorHeapPool> texture_descriptor_pool_;
|
||||
|
||||
// Only with non-null resources.
|
||||
std::vector<D3D12ImmediateTexture*> textures_;
|
||||
|
||||
struct PendingTextureUpload {
|
||||
ID3D12Resource* texture;
|
||||
ID3D12Resource* buffer;
|
||||
PendingTextureUpload(ID3D12Resource* texture, ID3D12Resource* buffer)
|
||||
: texture(texture), buffer(buffer) {}
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> texture;
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> buffer;
|
||||
};
|
||||
std::vector<PendingTextureUpload> texture_uploads_pending_;
|
||||
|
||||
struct SubmittedTextureUpload {
|
||||
ID3D12Resource* texture;
|
||||
ID3D12Resource* buffer;
|
||||
uint64_t fence_value;
|
||||
SubmittedTextureUpload(ID3D12Resource* texture, ID3D12Resource* buffer,
|
||||
UINT64 submission_index)
|
||||
: texture(texture),
|
||||
buffer(buffer),
|
||||
submission_index(submission_index) {}
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> texture;
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> buffer;
|
||||
UINT64 submission_index;
|
||||
};
|
||||
std::deque<SubmittedTextureUpload> texture_uploads_submitted_;
|
||||
|
||||
std::vector<std::pair<ID3D12Resource*, uint64_t>> textures_deleted_;
|
||||
std::deque<std::pair<Microsoft::WRL::ComPtr<ID3D12Resource>, UINT64>>
|
||||
textures_deleted_;
|
||||
|
||||
std::unique_ptr<D3D12UploadBufferPool> vertex_buffer_pool_;
|
||||
std::unique_ptr<D3D12DescriptorHeapPool> texture_descriptor_pool_;
|
||||
|
||||
// The submission index within the current Begin (or the last, if outside
|
||||
// one).
|
||||
UINT64 last_paint_submission_index_ = 0;
|
||||
// Completed submission index as of the latest Begin, to coarsely skip delayed
|
||||
// texture deletion.
|
||||
UINT64 last_completed_submission_index_ = 0;
|
||||
|
||||
ID3D12GraphicsCommandList* current_command_list_ = nullptr;
|
||||
int current_render_target_width_, current_render_target_height_;
|
||||
bool batch_open_ = false;
|
||||
bool batch_has_index_buffer_;
|
||||
D3D12_RECT current_scissor_;
|
||||
|
||||
1466
src/xenia/ui/d3d12/d3d12_presenter.cc
Normal file
1466
src/xenia/ui/d3d12/d3d12_presenter.cc
Normal file
File diff suppressed because it is too large
Load Diff
332
src/xenia/ui/d3d12/d3d12_presenter.h
Normal file
332
src/xenia/ui/d3d12/d3d12_presenter.h
Normal file
@@ -0,0 +1,332 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_UI_D3D12_D3D12_PRESENTER_H_
|
||||
#define XENIA_UI_D3D12_D3D12_PRESENTER_H_
|
||||
|
||||
#include <array>
|
||||
#include <memory>
|
||||
#include <utility>
|
||||
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/ui/d3d12/d3d12_provider.h"
|
||||
#include "xenia/ui/d3d12/d3d12_submission_tracker.h"
|
||||
#include "xenia/ui/presenter.h"
|
||||
#include "xenia/ui/surface.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
namespace d3d12 {
|
||||
|
||||
class D3D12UIDrawContext final : public UIDrawContext {
|
||||
public:
|
||||
D3D12UIDrawContext(Presenter& presenter, uint32_t render_target_width,
|
||||
uint32_t render_target_height,
|
||||
ID3D12GraphicsCommandList* command_list,
|
||||
UINT64 submission_index_current,
|
||||
UINT64 submission_index_completed)
|
||||
: UIDrawContext(presenter, render_target_width, render_target_height),
|
||||
command_list_(command_list),
|
||||
submission_index_current_(submission_index_current),
|
||||
submission_index_completed_(submission_index_completed) {}
|
||||
|
||||
ID3D12GraphicsCommandList* command_list() const {
|
||||
return command_list_.Get();
|
||||
}
|
||||
UINT64 submission_index_current() const { return submission_index_current_; }
|
||||
UINT64 submission_index_completed() const {
|
||||
return submission_index_completed_;
|
||||
}
|
||||
|
||||
private:
|
||||
Microsoft::WRL::ComPtr<ID3D12GraphicsCommandList> command_list_;
|
||||
UINT64 submission_index_current_;
|
||||
UINT64 submission_index_completed_;
|
||||
};
|
||||
|
||||
class D3D12Presenter final : public Presenter {
|
||||
public:
|
||||
static constexpr DXGI_FORMAT kGuestOutputFormat =
|
||||
DXGI_FORMAT_R10G10B10A2_UNORM;
|
||||
static constexpr D3D12_RESOURCE_STATES kGuestOutputInternalState =
|
||||
D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE;
|
||||
|
||||
static constexpr DXGI_FORMAT kGuestOutputIntermediateFormat =
|
||||
DXGI_FORMAT_R10G10B10A2_UNORM;
|
||||
|
||||
// The format used internally by Windows composition.
|
||||
static constexpr DXGI_FORMAT kSwapChainFormat = DXGI_FORMAT_B8G8R8A8_UNORM;
|
||||
|
||||
// The callback must use the main direct queue of the provider.
|
||||
class D3D12GuestOutputRefreshContext final
|
||||
: public GuestOutputRefreshContext {
|
||||
public:
|
||||
D3D12GuestOutputRefreshContext(bool& is_8bpc_out_ref,
|
||||
ID3D12Resource* resource)
|
||||
: GuestOutputRefreshContext(is_8bpc_out_ref), resource_(resource) {}
|
||||
|
||||
// kGuestOutputFormat, supports UAV. The initial state in the callback is
|
||||
// kGuestOutputInternalState, and the callback must also transition it back
|
||||
// to kGuestOutputInternalState before finishing.
|
||||
ID3D12Resource* resource_uav_capable() const { return resource_.Get(); }
|
||||
|
||||
private:
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> resource_;
|
||||
};
|
||||
|
||||
static std::unique_ptr<D3D12Presenter> Create(
|
||||
HostGpuLossCallback host_gpu_loss_callback,
|
||||
const D3D12Provider& provider) {
|
||||
auto presenter = std::unique_ptr<D3D12Presenter>(
|
||||
new D3D12Presenter(host_gpu_loss_callback, provider));
|
||||
if (!presenter->InitializeSurfaceIndependent()) {
|
||||
return nullptr;
|
||||
}
|
||||
return presenter;
|
||||
}
|
||||
|
||||
~D3D12Presenter();
|
||||
|
||||
const D3D12Provider& provider() const { return provider_; }
|
||||
|
||||
Surface::TypeFlags GetSupportedSurfaceTypes() const override;
|
||||
|
||||
bool CaptureGuestOutput(RawImage& image_out) override;
|
||||
|
||||
void AwaitUISubmissionCompletionFromUIThread(UINT64 submission_index) {
|
||||
ui_submission_tracker_.AwaitSubmissionCompletion(submission_index);
|
||||
}
|
||||
|
||||
protected:
|
||||
SurfacePaintConnectResult ConnectOrReconnectPaintingToSurfaceFromUIThread(
|
||||
Surface& new_surface, uint32_t new_surface_width,
|
||||
uint32_t new_surface_height, bool was_paintable,
|
||||
bool& is_vsync_implicit_out) override;
|
||||
void DisconnectPaintingFromSurfaceFromUIThreadImpl() override;
|
||||
|
||||
bool RefreshGuestOutputImpl(
|
||||
uint32_t mailbox_index, uint32_t frontbuffer_width,
|
||||
uint32_t frontbuffer_height,
|
||||
std::function<bool(GuestOutputRefreshContext& context)> refresher,
|
||||
bool& is_8bpc_out) override;
|
||||
|
||||
PaintResult PaintAndPresentImpl(bool execute_ui_drawers) override;
|
||||
|
||||
private:
|
||||
struct GuestOutputPaintRectangleConstants {
|
||||
union {
|
||||
struct {
|
||||
float x;
|
||||
float y;
|
||||
};
|
||||
float offset[2];
|
||||
};
|
||||
union {
|
||||
struct {
|
||||
float width;
|
||||
float height;
|
||||
};
|
||||
float size[2];
|
||||
};
|
||||
};
|
||||
|
||||
enum class GuestOutputPaintRootParameter : UINT {
|
||||
kSource,
|
||||
kRectangle,
|
||||
kEffectConstants,
|
||||
|
||||
kCount,
|
||||
};
|
||||
|
||||
enum GuestOutputPaintRootSignatureIndex : size_t {
|
||||
kGuestOutputPaintRootSignatureIndexBilinear,
|
||||
kGuestOutputPaintRootSignatureIndexCasSharpen,
|
||||
kGuestOutputPaintRootSignatureIndexCasResample,
|
||||
kGuestOutputPaintRootSignatureIndexFsrEasu,
|
||||
kGuestOutputPaintRootSignatureIndexFsrRcas,
|
||||
|
||||
kGuestOutputPaintRootSignatureCount,
|
||||
};
|
||||
|
||||
static constexpr GuestOutputPaintRootSignatureIndex
|
||||
GetGuestOutputPaintRootSignatureIndex(GuestOutputPaintEffect effect) {
|
||||
switch (effect) {
|
||||
case GuestOutputPaintEffect::kBilinear:
|
||||
case GuestOutputPaintEffect::kBilinearDither:
|
||||
return kGuestOutputPaintRootSignatureIndexBilinear;
|
||||
case GuestOutputPaintEffect::kCasSharpen:
|
||||
case GuestOutputPaintEffect::kCasSharpenDither:
|
||||
return kGuestOutputPaintRootSignatureIndexCasSharpen;
|
||||
case GuestOutputPaintEffect::kCasResample:
|
||||
case GuestOutputPaintEffect::kCasResampleDither:
|
||||
return kGuestOutputPaintRootSignatureIndexCasResample;
|
||||
case GuestOutputPaintEffect::kFsrEasu:
|
||||
return kGuestOutputPaintRootSignatureIndexFsrEasu;
|
||||
case GuestOutputPaintEffect::kFsrRcas:
|
||||
case GuestOutputPaintEffect::kFsrRcasDither:
|
||||
return kGuestOutputPaintRootSignatureIndexFsrRcas;
|
||||
default:
|
||||
assert_unhandled_case(effect);
|
||||
return kGuestOutputPaintRootSignatureCount;
|
||||
}
|
||||
}
|
||||
|
||||
struct PaintContext {
|
||||
explicit PaintContext() = default;
|
||||
PaintContext(const PaintContext& paint_context) = delete;
|
||||
PaintContext& operator=(const PaintContext& paint_context) = delete;
|
||||
|
||||
static constexpr uint32_t kSwapChainBufferCount = 3;
|
||||
|
||||
enum RTVIndex : UINT {
|
||||
// Swap chain buffers - updated when creating the swap chain
|
||||
// (connection-specific).
|
||||
kRTVIndexSwapChainBuffer0,
|
||||
|
||||
// Intermediate textures - the last usage is
|
||||
// guest_output_intermediate_texture_paint_last_usage_.
|
||||
kRTVIndexGuestOutputIntermediate0 =
|
||||
kRTVIndexSwapChainBuffer0 + kSwapChainBufferCount,
|
||||
|
||||
kRTVCount =
|
||||
kRTVIndexGuestOutputIntermediate0 + kGuestOutputMailboxSize - 1,
|
||||
};
|
||||
|
||||
enum ViewIndex : UINT {
|
||||
// Guest output textures - indices are the same as in
|
||||
// guest_output_resource_paint_refs, and the last usage is tied to them.
|
||||
kViewIndexGuestOutput0Srv,
|
||||
|
||||
// Intermediate textures - the last usage is
|
||||
// guest_output_intermediate_texture_paint_last_usage_.
|
||||
kViewIndexGuestOutputIntermediate0Srv =
|
||||
kViewIndexGuestOutput0Srv + kGuestOutputMailboxSize,
|
||||
|
||||
kViewCount = kViewIndexGuestOutputIntermediate0Srv +
|
||||
kMaxGuestOutputPaintEffects - 1,
|
||||
};
|
||||
|
||||
void AwaitSwapChainUsageCompletion() {
|
||||
// Presentation engine usage.
|
||||
present_submission_tracker.AwaitAllSubmissionsCompletion();
|
||||
// Paint (render target) usage. While the presentation fence is signaled
|
||||
// on the same queue, and presentation happens after painting, awaiting
|
||||
// anyway for safety just to make less assumptions in the architecture.
|
||||
paint_submission_tracker.AwaitAllSubmissionsCompletion();
|
||||
}
|
||||
|
||||
void DestroySwapChain();
|
||||
|
||||
// Connection-independent.
|
||||
|
||||
// Signaled before presenting.
|
||||
D3D12SubmissionTracker paint_submission_tracker;
|
||||
// Signaled after presenting.
|
||||
D3D12SubmissionTracker present_submission_tracker;
|
||||
|
||||
std::array<Microsoft::WRL::ComPtr<ID3D12CommandAllocator>,
|
||||
kSwapChainBufferCount>
|
||||
command_allocators;
|
||||
Microsoft::WRL::ComPtr<ID3D12GraphicsCommandList> command_list;
|
||||
|
||||
// Descriptor heaps for views of the current resources related to the guest
|
||||
// output and to painting, updated either during painting or during
|
||||
// connection lifetime management if outdated after awaiting usage
|
||||
// completion.
|
||||
// RTV heap.
|
||||
Microsoft::WRL::ComPtr<ID3D12DescriptorHeap> rtv_heap;
|
||||
// Shader-visible CBV/SRV/UAV heap.
|
||||
Microsoft::WRL::ComPtr<ID3D12DescriptorHeap> view_heap;
|
||||
|
||||
// Refreshed and cleaned up during guest output painting. The first is the
|
||||
// paint submission index in which the guest output texture (and its
|
||||
// descriptors) was last used, the second is the reference to the texture,
|
||||
// which may be null. The indices are not mailbox indices here, rather, if
|
||||
// the reference is not in this array yet, the most outdated reference, if
|
||||
// needed, is replaced with the new one, awaiting the completion of the last
|
||||
// paint usage.
|
||||
std::array<std::pair<UINT64, Microsoft::WRL::ComPtr<ID3D12Resource>>,
|
||||
kGuestOutputMailboxSize>
|
||||
guest_output_resource_paint_refs;
|
||||
|
||||
// Current intermediate textures for guest output painting, refreshed when
|
||||
// painting guest output. While not in use, they are in
|
||||
// D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE.
|
||||
std::array<Microsoft::WRL::ComPtr<ID3D12Resource>,
|
||||
kMaxGuestOutputPaintEffects - 1>
|
||||
guest_output_intermediate_textures;
|
||||
UINT64 guest_output_intermediate_texture_last_usage = 0;
|
||||
|
||||
// Connection-specific.
|
||||
|
||||
uint32_t swap_chain_width = 0;
|
||||
uint32_t swap_chain_height = 0;
|
||||
bool swap_chain_allows_tearing = false;
|
||||
Microsoft::WRL::ComPtr<IDXGISwapChain3> swap_chain;
|
||||
std::array<Microsoft::WRL::ComPtr<ID3D12Resource>, kSwapChainBufferCount>
|
||||
swap_chain_buffers;
|
||||
};
|
||||
|
||||
explicit D3D12Presenter(HostGpuLossCallback host_gpu_loss_callback,
|
||||
const D3D12Provider& provider)
|
||||
: Presenter(host_gpu_loss_callback), provider_(provider) {}
|
||||
|
||||
bool dxgi_supports_tearing() const { return dxgi_supports_tearing_; }
|
||||
|
||||
bool InitializeSurfaceIndependent();
|
||||
|
||||
const D3D12Provider& provider_;
|
||||
|
||||
// Whether DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING is supported by DXGI (depends in
|
||||
// particular on the Windows 10 version and hardware support), primarily for
|
||||
// variable refresh rate support.
|
||||
bool dxgi_supports_tearing_ = false;
|
||||
|
||||
// Static objects for guest output presentation, used only when painting the
|
||||
// main target (can be destroyed only after awaiting main target usage
|
||||
// completion).
|
||||
std::array<Microsoft::WRL::ComPtr<ID3D12RootSignature>,
|
||||
kGuestOutputPaintRootSignatureCount>
|
||||
guest_output_paint_root_signatures_;
|
||||
std::array<Microsoft::WRL::ComPtr<ID3D12PipelineState>,
|
||||
size_t(GuestOutputPaintEffect::kCount)>
|
||||
guest_output_paint_intermediate_pipelines_;
|
||||
std::array<Microsoft::WRL::ComPtr<ID3D12PipelineState>,
|
||||
size_t(GuestOutputPaintEffect::kCount)>
|
||||
guest_output_paint_final_pipelines_;
|
||||
|
||||
// The first is the refresher submission tracker fence value at which the
|
||||
// guest output texture was last refreshed, the second is the reference to the
|
||||
// texture, which may be null. The indices are the mailbox indices.
|
||||
std::array<std::pair<UINT64, Microsoft::WRL::ComPtr<ID3D12Resource>>,
|
||||
kGuestOutputMailboxSize>
|
||||
guest_output_resources_;
|
||||
// The guest output resources are protected by two submission trackers - the
|
||||
// refresher ones (for writing to them via the guest_output_resources_
|
||||
// references) and the paint one (for presenting it via the
|
||||
// paint_context_.guest_output_resource_paint_refs references taken from
|
||||
// guest_output_resources_).
|
||||
D3D12SubmissionTracker guest_output_resource_refresher_submission_tracker_;
|
||||
|
||||
// UI submission tracker with the submission index that can be given to UI
|
||||
// drawers (accessible from the UI thread only, at any time).
|
||||
D3D12SubmissionTracker ui_submission_tracker_;
|
||||
|
||||
// Accessible only by painting and by surface connection lifetime management
|
||||
// (ConnectOrReconnectPaintingToSurfaceFromUIThread,
|
||||
// DisconnectPaintingFromSurfaceFromUIThreadImpl) by the thread doing it, as
|
||||
// well as by presenter initialization and shutdown.
|
||||
PaintContext paint_context_;
|
||||
};
|
||||
|
||||
} // namespace d3d12
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
|
||||
#endif // XENIA_UI_D3D12_D3D12_PRESENTER_H_
|
||||
@@ -15,7 +15,8 @@
|
||||
#include "xenia/base/cvar.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/ui/d3d12/d3d12_context.h"
|
||||
#include "xenia/ui/d3d12/d3d12_immediate_drawer.h"
|
||||
#include "xenia/ui/d3d12/d3d12_presenter.h"
|
||||
|
||||
DEFINE_bool(d3d12_debug, false, "Enable Direct3D 12 and DXGI debug layer.",
|
||||
"D3D12");
|
||||
@@ -77,6 +78,14 @@ D3D12Provider::~D3D12Provider() {
|
||||
dxgi_factory_->Release();
|
||||
}
|
||||
|
||||
if (cvars::d3d12_debug && pfn_dxgi_get_debug_interface1_) {
|
||||
Microsoft::WRL::ComPtr<IDXGIDebug> dxgi_debug;
|
||||
if (SUCCEEDED(
|
||||
pfn_dxgi_get_debug_interface1_(0, IID_PPV_ARGS(&dxgi_debug)))) {
|
||||
dxgi_debug->ReportLiveObjects(DXGI_DEBUG_ALL, DXGI_DEBUG_RLO_ALL);
|
||||
}
|
||||
}
|
||||
|
||||
if (library_dxcompiler_ != nullptr) {
|
||||
FreeLibrary(library_dxcompiler_);
|
||||
}
|
||||
@@ -86,9 +95,6 @@ D3D12Provider::~D3D12Provider() {
|
||||
if (library_d3dcompiler_ != nullptr) {
|
||||
FreeLibrary(library_d3dcompiler_);
|
||||
}
|
||||
if (library_dcomp_ != nullptr) {
|
||||
FreeLibrary(library_dcomp_);
|
||||
}
|
||||
if (library_d3d12_ != nullptr) {
|
||||
FreeLibrary(library_d3d12_);
|
||||
}
|
||||
@@ -120,9 +126,8 @@ bool D3D12Provider::Initialize() {
|
||||
// Load the core libraries.
|
||||
library_dxgi_ = LoadLibraryW(L"dxgi.dll");
|
||||
library_d3d12_ = LoadLibraryW(L"D3D12.dll");
|
||||
library_dcomp_ = LoadLibraryW(L"dcomp.dll");
|
||||
if (!library_dxgi_ || !library_d3d12_ || !library_dcomp_) {
|
||||
XELOGE("Failed to load dxgi.dll, D3D12.dll or dcomp.dll");
|
||||
if (!library_dxgi_ || !library_d3d12_) {
|
||||
XELOGE("Failed to load dxgi.dll or D3D12.dll");
|
||||
return false;
|
||||
}
|
||||
bool libraries_loaded = true;
|
||||
@@ -143,12 +148,8 @@ bool D3D12Provider::Initialize() {
|
||||
(pfn_d3d12_serialize_root_signature_ = PFN_D3D12_SERIALIZE_ROOT_SIGNATURE(
|
||||
GetProcAddress(library_d3d12_, "D3D12SerializeRootSignature"))) !=
|
||||
nullptr;
|
||||
libraries_loaded &=
|
||||
(pfn_dcomposition_create_device_ = PFNDCompositionCreateDevice(
|
||||
GetProcAddress(library_dcomp_, "DCompositionCreateDevice"))) !=
|
||||
nullptr;
|
||||
if (!libraries_loaded) {
|
||||
XELOGE("Failed to get DXGI, Direct3D 12 or DirectComposition functions");
|
||||
XELOGE("Failed to get DXGI or Direct3D 12 functions");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -470,23 +471,13 @@ bool D3D12Provider::Initialize() {
|
||||
return true;
|
||||
}
|
||||
|
||||
std::unique_ptr<GraphicsContext> D3D12Provider::CreateHostContext(
|
||||
Window* target_window) {
|
||||
auto new_context =
|
||||
std::unique_ptr<D3D12Context>(new D3D12Context(this, target_window));
|
||||
if (!new_context->Initialize()) {
|
||||
return nullptr;
|
||||
}
|
||||
return std::unique_ptr<GraphicsContext>(new_context.release());
|
||||
std::unique_ptr<Presenter> D3D12Provider::CreatePresenter(
|
||||
Presenter::HostGpuLossCallback host_gpu_loss_callback) {
|
||||
return D3D12Presenter::Create(host_gpu_loss_callback, *this);
|
||||
}
|
||||
|
||||
std::unique_ptr<GraphicsContext> D3D12Provider::CreateEmulationContext() {
|
||||
auto new_context =
|
||||
std::unique_ptr<D3D12Context>(new D3D12Context(this, nullptr));
|
||||
if (!new_context->Initialize()) {
|
||||
return nullptr;
|
||||
}
|
||||
return std::unique_ptr<GraphicsContext>(new_context.release());
|
||||
std::unique_ptr<ImmediateDrawer> D3D12Provider::CreateImmediateDrawer() {
|
||||
return D3D12ImmediateDrawer::Create(*this);
|
||||
}
|
||||
|
||||
} // namespace d3d12
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2018 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -23,15 +23,17 @@ namespace d3d12 {
|
||||
|
||||
class D3D12Provider : public GraphicsProvider {
|
||||
public:
|
||||
~D3D12Provider() override;
|
||||
~D3D12Provider();
|
||||
|
||||
static bool IsD3D12APIAvailable();
|
||||
|
||||
static std::unique_ptr<D3D12Provider> Create();
|
||||
|
||||
std::unique_ptr<GraphicsContext> CreateHostContext(
|
||||
Window* target_window) override;
|
||||
std::unique_ptr<GraphicsContext> CreateEmulationContext() override;
|
||||
std::unique_ptr<Presenter> CreatePresenter(
|
||||
Presenter::HostGpuLossCallback host_gpu_loss_callback =
|
||||
Presenter::FatalErrorHostGpuLossCallback) override;
|
||||
|
||||
std::unique_ptr<ImmediateDrawer> CreateImmediateDrawer() override;
|
||||
|
||||
IDXGIFactory2* GetDXGIFactory() const { return dxgi_factory_; }
|
||||
// nullptr if PIX not attached.
|
||||
@@ -118,11 +120,6 @@ class D3D12Provider : public GraphicsProvider {
|
||||
return pfn_d3d12_serialize_root_signature_(desc, version, blob_out,
|
||||
error_blob_out);
|
||||
}
|
||||
HRESULT CreateDCompositionDevice(IDXGIDevice* dxgi_device, const IID& iid,
|
||||
void** dcomposition_device_out) const {
|
||||
return pfn_dcomposition_create_device_(dxgi_device, iid,
|
||||
dcomposition_device_out);
|
||||
}
|
||||
HRESULT Disassemble(const void* src_data, size_t src_data_size, UINT flags,
|
||||
const char* comments, ID3DBlob** disassembly_out) const {
|
||||
if (!pfn_d3d_disassemble_) {
|
||||
@@ -156,22 +153,17 @@ class D3D12Provider : public GraphicsProvider {
|
||||
_COM_Outptr_ void** ppFactory);
|
||||
typedef HRESULT(WINAPI* PFNDXGIGetDebugInterface1)(
|
||||
UINT Flags, REFIID riid, _COM_Outptr_ void** pDebug);
|
||||
typedef HRESULT(WINAPI* PFNDCompositionCreateDevice)(
|
||||
_In_opt_ IDXGIDevice* dxgiDevice, _In_ REFIID iid,
|
||||
_Outptr_ void** dcompositionDevice);
|
||||
|
||||
HMODULE library_dxgi_ = nullptr;
|
||||
PFNCreateDXGIFactory2 pfn_create_dxgi_factory2_;
|
||||
PFNDXGIGetDebugInterface1 pfn_dxgi_get_debug_interface1_;
|
||||
// Needed during shutdown as well to report live objects, so may be nullptr.
|
||||
PFNDXGIGetDebugInterface1 pfn_dxgi_get_debug_interface1_ = nullptr;
|
||||
|
||||
HMODULE library_d3d12_ = nullptr;
|
||||
PFN_D3D12_GET_DEBUG_INTERFACE pfn_d3d12_get_debug_interface_;
|
||||
PFN_D3D12_CREATE_DEVICE pfn_d3d12_create_device_;
|
||||
PFN_D3D12_SERIALIZE_ROOT_SIGNATURE pfn_d3d12_serialize_root_signature_;
|
||||
|
||||
HMODULE library_dcomp_ = nullptr;
|
||||
PFNDCompositionCreateDevice pfn_dcomposition_create_device_;
|
||||
|
||||
HMODULE library_d3dcompiler_ = nullptr;
|
||||
pD3DDisassemble pfn_d3d_disassemble_ = nullptr;
|
||||
|
||||
@@ -182,9 +174,9 @@ class D3D12Provider : public GraphicsProvider {
|
||||
DxcCreateInstanceProc pfn_dxcompiler_dxc_create_instance_ = nullptr;
|
||||
|
||||
IDXGIFactory2* dxgi_factory_ = nullptr;
|
||||
IDXGraphicsAnalysis* graphics_analysis_ = nullptr;
|
||||
ID3D12Device* device_ = nullptr;
|
||||
ID3D12CommandQueue* direct_queue_ = nullptr;
|
||||
IDXGraphicsAnalysis* graphics_analysis_ = nullptr;
|
||||
|
||||
uint32_t descriptor_sizes_[D3D12_DESCRIPTOR_HEAP_TYPE_NUM_TYPES];
|
||||
|
||||
|
||||
126
src/xenia/ui/d3d12/d3d12_submission_tracker.cc
Normal file
126
src/xenia/ui/d3d12/d3d12_submission_tracker.cc
Normal file
@@ -0,0 +1,126 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2021 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/ui/d3d12/d3d12_submission_tracker.h"
|
||||
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/base/logging.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
namespace d3d12 {
|
||||
|
||||
bool D3D12SubmissionTracker::Initialize(ID3D12Device* device,
|
||||
ID3D12CommandQueue* queue) {
|
||||
Shutdown();
|
||||
fence_completion_event_ = CreateEvent(nullptr, FALSE, FALSE, nullptr);
|
||||
if (!fence_completion_event_) {
|
||||
XELOGE(
|
||||
"D3D12SubmissionTracker: Failed to create the fence completion event");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
// Continue where the tracker was left at the last shutdown.
|
||||
if (FAILED(device->CreateFence(submission_current_ - 1, D3D12_FENCE_FLAG_NONE,
|
||||
IID_PPV_ARGS(&fence_)))) {
|
||||
XELOGE("D3D12SubmissionTracker: Failed to create the fence");
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
queue_ = queue;
|
||||
submission_signal_queued_ = submission_current_ - 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
void D3D12SubmissionTracker::Shutdown() {
|
||||
AwaitAllSubmissionsCompletion();
|
||||
queue_.Reset();
|
||||
fence_.Reset();
|
||||
if (fence_completion_event_) {
|
||||
CloseHandle(fence_completion_event_);
|
||||
fence_completion_event_ = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
bool D3D12SubmissionTracker::AwaitSubmissionCompletion(
|
||||
UINT64 submission_index) {
|
||||
if (!fence_ || !fence_completion_event_) {
|
||||
// Not fully initialized yet or already shut down.
|
||||
return false;
|
||||
}
|
||||
// The tracker itself can't give a submission index for a submission that
|
||||
// hasn't even started being recorded yet, the client has provided a
|
||||
// completely invalid value or has done overly optimistic math if such an
|
||||
// index has been obtained somehow.
|
||||
assert_true(submission_index <= submission_current_);
|
||||
// Waiting for the current submission is fine if there was a refusal to
|
||||
// submit, and the submission index wasn't incremented, but still need to
|
||||
// release objects referenced in the dropped submission (while shutting down,
|
||||
// for instance - in this case, waiting for the last successful submission,
|
||||
// which could have also referenced the objects from the new submission - we
|
||||
// can't know since the client has already overwritten its last usage index,
|
||||
// would correctly ensure that GPU usage of the objects is not pending).
|
||||
// Waiting for successful submissions, but failed signals, will result in a
|
||||
// true race condition, however, but waiting for the closest successful signal
|
||||
// is the best approximation - also retrying to signal in this case.
|
||||
UINT64 fence_value = submission_index;
|
||||
if (submission_index > submission_signal_queued_) {
|
||||
TrySignalEnqueueing();
|
||||
fence_value = submission_signal_queued_;
|
||||
}
|
||||
if (fence_->GetCompletedValue() < fence_value) {
|
||||
if (FAILED(fence_->SetEventOnCompletion(fence_value,
|
||||
fence_completion_event_))) {
|
||||
return false;
|
||||
}
|
||||
if (WaitForSingleObject(fence_completion_event_, INFINITE) !=
|
||||
WAIT_OBJECT_0) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return fence_value == submission_index;
|
||||
}
|
||||
|
||||
void D3D12SubmissionTracker::SetQueue(ID3D12CommandQueue* new_queue) {
|
||||
if (queue_.Get() == new_queue) {
|
||||
return;
|
||||
}
|
||||
if (queue_) {
|
||||
// Make sure the first signal on the new queue won't happen before the last
|
||||
// signal, if pending, on the old one, as that would result first in too
|
||||
// early submission completion indication, and then in rewinding.
|
||||
AwaitAllSubmissionsCompletion();
|
||||
}
|
||||
queue_ = new_queue;
|
||||
}
|
||||
|
||||
bool D3D12SubmissionTracker::NextSubmission() {
|
||||
++submission_current_;
|
||||
assert_not_null(queue_);
|
||||
assert_not_null(fence_);
|
||||
return TrySignalEnqueueing();
|
||||
}
|
||||
|
||||
bool D3D12SubmissionTracker::TrySignalEnqueueing() {
|
||||
if (submission_signal_queued_ + 1 >= submission_current_) {
|
||||
return true;
|
||||
}
|
||||
if (!queue_ || !fence_) {
|
||||
return false;
|
||||
}
|
||||
if (FAILED(queue_->Signal(fence_.Get(), submission_current_ - 1))) {
|
||||
return false;
|
||||
}
|
||||
submission_signal_queued_ = submission_current_ - 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
} // namespace d3d12
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
93
src/xenia/ui/d3d12/d3d12_submission_tracker.h
Normal file
93
src/xenia/ui/d3d12/d3d12_submission_tracker.h
Normal file
@@ -0,0 +1,93 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2021 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_UI_D3D12_D3D12_SUBMISSION_TRACKER_H_
|
||||
#define XENIA_UI_D3D12_D3D12_SUBMISSION_TRACKER_H_
|
||||
|
||||
#include "xenia/ui/d3d12/d3d12_api.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
namespace d3d12 {
|
||||
|
||||
// GPU > CPU fence wrapper, safely handling cases when the fence has not been
|
||||
// initialized yet or has already been shut down, dropped submissions, and also
|
||||
// transfers between queues so signals stay ordered.
|
||||
//
|
||||
// The current submission index can be associated with the usage of objects to
|
||||
// release them when the GPU isn't potentially referencing them anymore, and
|
||||
// should be incremented only
|
||||
//
|
||||
// 0 can be used as a "never referenced" submission index.
|
||||
//
|
||||
// The submission index timeline survives Shutdown / Initialize, so submission
|
||||
// indices can be given to clients that are not aware of the lifetime of the
|
||||
// tracker.
|
||||
class D3D12SubmissionTracker {
|
||||
public:
|
||||
D3D12SubmissionTracker() = default;
|
||||
D3D12SubmissionTracker(const D3D12SubmissionTracker& submission_tracker) =
|
||||
delete;
|
||||
D3D12SubmissionTracker& operator=(
|
||||
const D3D12SubmissionTracker& submission_tracker) = delete;
|
||||
~D3D12SubmissionTracker() { Shutdown(); }
|
||||
|
||||
// The queue may be null if it's going to be set dynamically. Will also take a
|
||||
// reference to the queue.
|
||||
bool Initialize(ID3D12Device* device, ID3D12CommandQueue* queue);
|
||||
void Shutdown();
|
||||
|
||||
// Will perform an ownership transfer if the queue is different than the
|
||||
// current one, and take a reference to the queue.
|
||||
void SetQueue(ID3D12CommandQueue* new_queue);
|
||||
|
||||
UINT64 GetCurrentSubmission() const { return submission_current_; }
|
||||
// May be lower than a value awaited by AwaitSubmissionCompletion if it
|
||||
// returned false.
|
||||
UINT64 GetCompletedSubmission() const {
|
||||
// If shut down already or haven't fully initialized yet, don't care, for
|
||||
// simplicity of external code, as any downloads are unlikely in this case,
|
||||
// but destruction can be simplified.
|
||||
return fence_ ? fence_->GetCompletedValue() : (GetCurrentSubmission() - 1);
|
||||
}
|
||||
|
||||
// Returns whether the expected GPU signal has actually been reached (rather
|
||||
// than some fallback condition) for cases when stronger completeness
|
||||
// guarantees as needed (when downloading, as opposed to just destroying).
|
||||
// If false is returned, it's also not guaranteed that GetCompletedSubmission
|
||||
// will return a value >= submission_index.
|
||||
bool AwaitSubmissionCompletion(UINT64 submission_index);
|
||||
bool AwaitAllSubmissionsCompletion() {
|
||||
return AwaitSubmissionCompletion(GetCurrentSubmission() - 1);
|
||||
}
|
||||
|
||||
// Call after a successful ExecuteCommandList. Unconditionally increments the
|
||||
// current submission index, and tries to enqueue the fence signal. Returns
|
||||
// true if enqueued successfully, but even if not, waiting for submissions
|
||||
// without a successfully enqueued signal is handled in the tracker in a way
|
||||
// that it won't be infinite, so there's no need for clients to revert updates
|
||||
// to submission indices associated with GPU usage of objects.
|
||||
bool NextSubmission();
|
||||
// If NextSubmission has failed, but it's important that the signal is
|
||||
// enqueued, can be used to retry enqueueing the signal.
|
||||
bool TrySignalEnqueueing();
|
||||
|
||||
private:
|
||||
UINT64 submission_current_ = 1;
|
||||
UINT64 submission_signal_queued_ = 0;
|
||||
HANDLE fence_completion_event_ = nullptr;
|
||||
Microsoft::WRL::ComPtr<ID3D12Fence> fence_;
|
||||
Microsoft::WRL::ComPtr<ID3D12CommandQueue> queue_;
|
||||
};
|
||||
|
||||
} // namespace d3d12
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
|
||||
#endif // XENIA_UI_D3D12_D3D12_SUBMISSION_TRACKER_H_
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -38,7 +38,7 @@ uint8_t* D3D12UploadBufferPool::Request(
|
||||
return nullptr;
|
||||
}
|
||||
if (buffer_out) {
|
||||
*buffer_out = page->buffer_;
|
||||
*buffer_out = page->buffer_.Get();
|
||||
}
|
||||
if (offset_out) {
|
||||
*offset_out = offset;
|
||||
@@ -61,7 +61,7 @@ uint8_t* D3D12UploadBufferPool::RequestPartial(
|
||||
return nullptr;
|
||||
}
|
||||
if (buffer_out) {
|
||||
*buffer_out = page->buffer_;
|
||||
*buffer_out = page->buffer_.Get();
|
||||
}
|
||||
if (offset_out) {
|
||||
*offset_out = offset;
|
||||
@@ -80,7 +80,7 @@ D3D12UploadBufferPool::CreatePageImplementation() {
|
||||
D3D12_RESOURCE_DESC buffer_desc;
|
||||
util::FillBufferResourceDesc(buffer_desc, page_size_,
|
||||
D3D12_RESOURCE_FLAG_NONE);
|
||||
ID3D12Resource* buffer;
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> buffer;
|
||||
if (FAILED(provider_.GetDevice()->CreateCommittedResource(
|
||||
&util::kHeapPropertiesUpload, provider_.GetHeapFlagCreateNotZeroed(),
|
||||
&buffer_desc, D3D12_RESOURCE_STATE_GENERIC_READ, nullptr,
|
||||
@@ -97,24 +97,16 @@ D3D12UploadBufferPool::CreatePageImplementation() {
|
||||
buffer->Release();
|
||||
return nullptr;
|
||||
}
|
||||
D3D12Page* page = new D3D12Page(buffer, mapping);
|
||||
// Owned by the page now.
|
||||
buffer->Release();
|
||||
return page;
|
||||
// Unmapping will be done implicitly when the resource is destroyed.
|
||||
return new D3D12Page(buffer.Get(), mapping);
|
||||
}
|
||||
|
||||
D3D12UploadBufferPool::D3D12Page::D3D12Page(ID3D12Resource* buffer,
|
||||
void* mapping)
|
||||
: buffer_(buffer), mapping_(mapping) {
|
||||
buffer_->AddRef();
|
||||
gpu_address_ = buffer_->GetGPUVirtualAddress();
|
||||
}
|
||||
|
||||
D3D12UploadBufferPool::D3D12Page::~D3D12Page() {
|
||||
// Unmapping is done implicitly when the buffer is destroyed.
|
||||
buffer_->Release();
|
||||
}
|
||||
|
||||
} // namespace d3d12
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -38,8 +38,7 @@ class D3D12UploadBufferPool : public GraphicsUploadBufferPool {
|
||||
// Creates a reference to the buffer. It must not be unmapped until this
|
||||
// D3D12Page is deleted.
|
||||
D3D12Page(ID3D12Resource* buffer, void* mapping);
|
||||
~D3D12Page() override;
|
||||
ID3D12Resource* buffer_;
|
||||
Microsoft::WRL::ComPtr<ID3D12Resource> buffer_;
|
||||
void* mapping_;
|
||||
D3D12_GPU_VIRTUAL_ADDRESS gpu_address_;
|
||||
};
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/ui/window.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
@@ -68,7 +70,7 @@ class FilePicker {
|
||||
selected_files_ = std::move(selected_files);
|
||||
}
|
||||
|
||||
virtual bool Show(void* parent_window_handle = nullptr) = 0;
|
||||
virtual bool Show(Window* parent_window = nullptr) = 0;
|
||||
|
||||
private:
|
||||
Mode mode_;
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#include "xenia/base/filesystem.h"
|
||||
#include "xenia/base/platform_linux.h"
|
||||
#include "xenia/base/string.h"
|
||||
#include "xenia/ui/window_gtk.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
@@ -28,7 +29,7 @@ class GtkFilePicker : public FilePicker {
|
||||
GtkFilePicker();
|
||||
~GtkFilePicker() override;
|
||||
|
||||
bool Show(void* parent_window_handle) override;
|
||||
bool Show(Window* parent_window) override;
|
||||
|
||||
private:
|
||||
};
|
||||
@@ -41,7 +42,7 @@ GtkFilePicker::GtkFilePicker() = default;
|
||||
|
||||
GtkFilePicker::~GtkFilePicker() = default;
|
||||
|
||||
bool GtkFilePicker::Show(void* parent_window_handle) {
|
||||
bool GtkFilePicker::Show(Window* parent_window) {
|
||||
// TODO(benvanik): FileSaveDialog.
|
||||
assert_true(mode() == Mode::kOpen);
|
||||
// TODO(benvanik): folder dialogs.
|
||||
@@ -50,7 +51,10 @@ bool GtkFilePicker::Show(void* parent_window_handle) {
|
||||
gint res;
|
||||
|
||||
dialog = gtk_file_chooser_dialog_new(
|
||||
"Open File", (GtkWindow*)parent_window_handle,
|
||||
"Open File",
|
||||
parent_window
|
||||
? GTK_WINDOW(static_cast<const GTKWindow*>(parent_window)->window())
|
||||
: nullptr,
|
||||
GTK_FILE_CHOOSER_ACTION_OPEN, "_Cancel", GTK_RESPONSE_CANCEL, "_Open",
|
||||
GTK_RESPONSE_ACCEPT, NULL);
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "xenia/base/platform_win.h"
|
||||
#include "xenia/base/string.h"
|
||||
#include "xenia/ui/file_picker.h"
|
||||
#include "xenia/ui/window_win.h"
|
||||
|
||||
// Microsoft headers after platform_win.h.
|
||||
#include <wrl/client.h>
|
||||
@@ -23,7 +24,7 @@ class Win32FilePicker : public FilePicker {
|
||||
Win32FilePicker();
|
||||
~Win32FilePicker() override;
|
||||
|
||||
bool Show(void* parent_window_handle) override;
|
||||
bool Show(Window* parent_window) override;
|
||||
|
||||
private:
|
||||
};
|
||||
@@ -109,7 +110,7 @@ Win32FilePicker::Win32FilePicker() = default;
|
||||
|
||||
Win32FilePicker::~Win32FilePicker() = default;
|
||||
|
||||
bool Win32FilePicker::Show(void* parent_window_handle) {
|
||||
bool Win32FilePicker::Show(Window* parent_window) {
|
||||
// TODO(benvanik): FileSaveDialog.
|
||||
assert_true(mode() == Mode::kOpen);
|
||||
// TODO(benvanik): folder dialogs.
|
||||
@@ -179,7 +180,9 @@ bool Win32FilePicker::Show(void* parent_window_handle) {
|
||||
}
|
||||
|
||||
// Show the dialog modally.
|
||||
hr = file_dialog->Show(static_cast<HWND>(parent_window_handle));
|
||||
hr = file_dialog->Show(
|
||||
parent_window ? static_cast<const Win32Window*>(parent_window)->hwnd()
|
||||
: nullptr);
|
||||
file_dialog->Unadvise(cookie);
|
||||
if (!SUCCEEDED(hr)) {
|
||||
return false;
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2015 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/ui/graphics_context.h"
|
||||
|
||||
#include <cstdlib>
|
||||
|
||||
#include "xenia/base/cvar.h"
|
||||
#include "xenia/ui/graphics_provider.h"
|
||||
|
||||
DEFINE_bool(random_clear_color, false, "Randomize window clear color.", "UI");
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
GraphicsContext::GraphicsContext(GraphicsProvider* provider,
|
||||
Window* target_window)
|
||||
: provider_(provider), target_window_(target_window) {}
|
||||
|
||||
GraphicsContext::~GraphicsContext() = default;
|
||||
|
||||
bool GraphicsContext::is_current() { return true; }
|
||||
|
||||
bool GraphicsContext::MakeCurrent() { return true; }
|
||||
|
||||
void GraphicsContext::ClearCurrent() {}
|
||||
|
||||
void GraphicsContext::GetClearColor(float* rgba) {
|
||||
if (cvars::random_clear_color) {
|
||||
rgba[0] = rand() / float(RAND_MAX); // NOLINT(runtime/threadsafe_fn)
|
||||
rgba[1] = 1.0f;
|
||||
rgba[2] = 0.0f;
|
||||
} else {
|
||||
rgba[0] = 0.0f;
|
||||
rgba[1] = 0.0f;
|
||||
rgba[2] = 0.0f;
|
||||
}
|
||||
rgba[3] = 1.0f;
|
||||
}
|
||||
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
@@ -1,90 +0,0 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2015 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_UI_GRAPHICS_CONTEXT_H_
|
||||
#define XENIA_UI_GRAPHICS_CONTEXT_H_
|
||||
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
class GraphicsProvider;
|
||||
class ImmediateDrawer;
|
||||
class Window;
|
||||
|
||||
class RawImage {
|
||||
public:
|
||||
RawImage() = default;
|
||||
~RawImage() = default;
|
||||
|
||||
size_t width = 0;
|
||||
size_t height = 0;
|
||||
size_t stride = 0;
|
||||
std::vector<uint8_t> data;
|
||||
};
|
||||
|
||||
class GraphicsContext {
|
||||
public:
|
||||
virtual ~GraphicsContext();
|
||||
|
||||
GraphicsProvider* provider() const { return provider_; }
|
||||
Window* target_window() const { return target_window_; }
|
||||
bool is_offscreen() { return immediate_drawer() == nullptr; }
|
||||
|
||||
virtual ImmediateDrawer* immediate_drawer() = 0;
|
||||
|
||||
virtual bool is_current();
|
||||
virtual bool MakeCurrent();
|
||||
virtual void ClearCurrent();
|
||||
|
||||
// Returns true if the OS took away our context because we caused a TDR or
|
||||
// some other outstanding error. When this happens, this context, as well as
|
||||
// any other shared contexts are junk.
|
||||
// This context must be made current in order for this call to work properly.
|
||||
virtual bool WasLost() = 0;
|
||||
|
||||
// Returns true if able to draw now (the target surface is available).
|
||||
virtual bool BeginSwap() = 0;
|
||||
virtual void EndSwap() = 0;
|
||||
|
||||
virtual std::unique_ptr<RawImage> Capture() = 0;
|
||||
|
||||
protected:
|
||||
explicit GraphicsContext(GraphicsProvider* provider, Window* target_window);
|
||||
|
||||
static void GetClearColor(float* rgba);
|
||||
|
||||
GraphicsProvider* provider_ = nullptr;
|
||||
Window* target_window_ = nullptr;
|
||||
};
|
||||
|
||||
struct GraphicsContextLock {
|
||||
explicit GraphicsContextLock(GraphicsContext* context) : context_(context) {
|
||||
was_current_ = context_->is_current();
|
||||
if (!was_current_) {
|
||||
context_->MakeCurrent();
|
||||
}
|
||||
}
|
||||
~GraphicsContextLock() {
|
||||
if (!was_current_) {
|
||||
context_->ClearCurrent();
|
||||
}
|
||||
}
|
||||
|
||||
private:
|
||||
bool was_current_ = false;
|
||||
GraphicsContext* context_ = nullptr;
|
||||
};
|
||||
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
|
||||
#endif // XENIA_UI_GRAPHICS_CONTEXT_H_
|
||||
@@ -12,10 +12,12 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "xenia/ui/immediate_drawer.h"
|
||||
#include "xenia/ui/presenter.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
class GraphicsContext;
|
||||
class Window;
|
||||
|
||||
// Factory for graphics contexts.
|
||||
@@ -36,13 +38,13 @@ class GraphicsProvider {
|
||||
|
||||
virtual ~GraphicsProvider() = default;
|
||||
|
||||
// Creates a new host-side graphics context and swapchain, possibly presenting
|
||||
// to a window and using the immediate drawer.
|
||||
virtual std::unique_ptr<GraphicsContext> CreateHostContext(
|
||||
Window* target_window) = 0;
|
||||
// It's safe to reinitialize the presenter in the host GPU loss callback if it
|
||||
// was called from the UI thread as specified in the arguments.
|
||||
virtual std::unique_ptr<Presenter> CreatePresenter(
|
||||
Presenter::HostGpuLossCallback host_gpu_loss_callback =
|
||||
Presenter::FatalErrorHostGpuLossCallback) = 0;
|
||||
|
||||
// Creates a new offscreen emulation graphics context.
|
||||
virtual std::unique_ptr<GraphicsContext> CreateEmulationContext() = 0;
|
||||
virtual std::unique_ptr<ImmediateDrawer> CreateImmediateDrawer() = 0;
|
||||
|
||||
protected:
|
||||
GraphicsProvider() = default;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -38,6 +38,25 @@ void GraphicsUploadBufferPool::Reclaim(uint64_t completed_submission_index) {
|
||||
}
|
||||
}
|
||||
|
||||
void GraphicsUploadBufferPool::ChangeSubmissionTimeline() {
|
||||
// Reclaim all submitted pages.
|
||||
if (writable_last_) {
|
||||
writable_last_->next_ = submitted_first_;
|
||||
} else {
|
||||
writable_first_ = submitted_first_;
|
||||
}
|
||||
writable_last_ = submitted_last_;
|
||||
submitted_first_ = nullptr;
|
||||
submitted_last_ = nullptr;
|
||||
|
||||
// Mark all pages as never used yet in the new timeline.
|
||||
Page* page = writable_first_;
|
||||
while (page) {
|
||||
page->last_submission_index_ = 0;
|
||||
page = page->next_;
|
||||
}
|
||||
}
|
||||
|
||||
void GraphicsUploadBufferPool::ClearCache() {
|
||||
// Called from the destructor - must not call virtual functions here.
|
||||
current_page_flushed_ = 0;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -13,9 +13,13 @@
|
||||
#include <cstddef>
|
||||
#include <cstdint>
|
||||
|
||||
#include "xenia/base/literals.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
using namespace xe::literals;
|
||||
|
||||
// Submission index is the fence value or a value derived from it (if reclaiming
|
||||
// less often than once per fence value, for instance).
|
||||
|
||||
@@ -23,11 +27,12 @@ class GraphicsUploadBufferPool {
|
||||
public:
|
||||
// Taken from the Direct3D 12 MiniEngine sample (LinearAllocator
|
||||
// kCpuAllocatorPageSize). Large enough for most cases.
|
||||
static constexpr size_t kDefaultPageSize = 2 * 1024 * 1024;
|
||||
static constexpr size_t kDefaultPageSize = 2_MiB;
|
||||
|
||||
virtual ~GraphicsUploadBufferPool();
|
||||
|
||||
void Reclaim(uint64_t completed_submission_index);
|
||||
void ChangeSubmissionTimeline();
|
||||
void ClearCache();
|
||||
|
||||
// Should be called before submitting anything using this pool, unless the
|
||||
|
||||
63
src/xenia/ui/graphics_util.cc
Normal file
63
src/xenia/ui/graphics_util.cc
Normal file
@@ -0,0 +1,63 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2021 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/ui/graphics_util.h"
|
||||
|
||||
#include <cmath>
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
int32_t FloatToD3D11Fixed16p8(float f32) {
|
||||
// https://microsoft.github.io/DirectX-Specs/d3d/archive/D3D11_3_FunctionalSpec.htm#3.2.4.1%20FLOAT%20-%3E%20Fixed%20Point%20Integer
|
||||
// Early exit tests.
|
||||
// n == NaN || n.unbiasedExponent < -f-1 -> 0 . 0
|
||||
if (!(std::abs(f32) >= 1.0f / 512.0f)) {
|
||||
return 0;
|
||||
}
|
||||
// n >= (2^(i-1)-2^-f) -> 2^(i-1)-1 . 2^f-1
|
||||
if (f32 >= 32768.0f - 1.0f / 256.0f) {
|
||||
return (1 << 23) - 1;
|
||||
}
|
||||
// n <= -2^(i-1) -> -2^(i-1) . 0
|
||||
if (f32 <= -32768.0f) {
|
||||
return -32768 * 256;
|
||||
}
|
||||
uint32_t f32_bits = *reinterpret_cast<const uint32_t*>(&f32);
|
||||
// Copy float32 mantissa bits [22:0] into corresponding bits [22:0] of a
|
||||
// result buffer that has at least 24 bits total storage (before reaching
|
||||
// rounding step further below). This includes one bit for the hidden 1.
|
||||
// Set bit [23] (float32 hidden bit).
|
||||
// Clear bits [31:24].
|
||||
union {
|
||||
int32_t s;
|
||||
uint32_t u;
|
||||
} result;
|
||||
result.u = (f32_bits & ((1 << 23) - 1)) | (1 << 23);
|
||||
// If the sign bit is set in the float32 number (negative), then take the 2's
|
||||
// component of the entire set of bits.
|
||||
if ((f32_bits >> 31) != 0) {
|
||||
result.s = -result.s;
|
||||
}
|
||||
// Final calculation: extraBits = (mantissa - f) - n.unbiasedExponent
|
||||
// (guaranteed to be >= 0).
|
||||
int32_t exponent = int32_t((f32_bits >> 23) & 255) - 127;
|
||||
uint32_t extra_bits = uint32_t(15 - exponent);
|
||||
if (extra_bits) {
|
||||
// Round the 32-bit value to a decimal that is extraBits to the left of
|
||||
// the LSB end, using nearest-even.
|
||||
result.u += (1 << (extra_bits - 1)) - 1 + ((result.u >> extra_bits) & 1);
|
||||
// Shift right by extraBits (sign extending).
|
||||
result.s >>= extra_bits;
|
||||
}
|
||||
return result.s;
|
||||
}
|
||||
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
30
src/xenia/ui/graphics_util.h
Normal file
30
src/xenia/ui/graphics_util.h
Normal file
@@ -0,0 +1,30 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2021 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_UI_GRAPHICS_UTIL_H_
|
||||
#define XENIA_UI_GRAPHICS_UTIL_H_
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
// For estimating coverage extents from vertices. This may give results that are
|
||||
// different than what the GPU will actually draw (this is the reference
|
||||
// conversion with 1/2 ULP accuracy, but Direct3D 11 permits 0.6 ULP tolerance
|
||||
// in floating point to fixed point conversion), but is enough to tie-break
|
||||
// vertices at pixel centers (due to the half-pixel offset applied to integer
|
||||
// coordinates incorrectly, for instance) with some error tolerance near 0.5,
|
||||
// for use with the top-left rasterization rule later.
|
||||
int32_t FloatToD3D11Fixed16p8(float f32);
|
||||
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
|
||||
#endif // XENIA_UI_GRAPHICS_UTIL_H_
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2015 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -11,20 +11,18 @@
|
||||
|
||||
#include "third_party/imgui/imgui.h"
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/ui/window.h"
|
||||
#include "xenia/ui/imgui_drawer.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
ImGuiDialog::ImGuiDialog(Window* window) : window_(window) {
|
||||
window_->AttachListener(this);
|
||||
had_imgui_active_ = window_->is_imgui_input_enabled();
|
||||
window_->set_imgui_input_enabled(true);
|
||||
ImGuiDialog::ImGuiDialog(ImGuiDrawer* imgui_drawer)
|
||||
: imgui_drawer_(imgui_drawer) {
|
||||
imgui_drawer_->AddDialog(this);
|
||||
}
|
||||
|
||||
ImGuiDialog::~ImGuiDialog() {
|
||||
window_->set_imgui_input_enabled(had_imgui_active_);
|
||||
window_->DetachListener(this);
|
||||
imgui_drawer_->RemoveDialog(this);
|
||||
for (auto fence : waiting_fences_) {
|
||||
fence->Signal();
|
||||
}
|
||||
@@ -36,12 +34,9 @@ void ImGuiDialog::Then(xe::threading::Fence* fence) {
|
||||
|
||||
void ImGuiDialog::Close() { has_close_pending_ = true; }
|
||||
|
||||
ImGuiIO& ImGuiDialog::GetIO() { return window_->imgui_drawer()->GetIO(); }
|
||||
|
||||
void ImGuiDialog::OnPaint(UIEvent* e) {
|
||||
// Keep imgui rendering every frame.
|
||||
window_->Invalidate();
|
||||
ImGuiIO& ImGuiDialog::GetIO() { return imgui_drawer()->GetIO(); }
|
||||
|
||||
void ImGuiDialog::Draw() {
|
||||
// Draw UI.
|
||||
OnDraw(GetIO());
|
||||
|
||||
@@ -52,10 +47,13 @@ void ImGuiDialog::OnPaint(UIEvent* e) {
|
||||
}
|
||||
}
|
||||
|
||||
class MessageBoxDialog : public ImGuiDialog {
|
||||
class MessageBoxDialog final : public ImGuiDialog {
|
||||
public:
|
||||
MessageBoxDialog(Window* window, std::string title, std::string body)
|
||||
: ImGuiDialog(window), title_(std::move(title)), body_(std::move(body)) {}
|
||||
MessageBoxDialog(ImGuiDrawer* imgui_drawer, std::string title,
|
||||
std::string body)
|
||||
: ImGuiDialog(imgui_drawer),
|
||||
title_(std::move(title)),
|
||||
body_(std::move(body)) {}
|
||||
|
||||
void OnDraw(ImGuiIO& io) override {
|
||||
if (!has_opened_) {
|
||||
@@ -84,9 +82,9 @@ class MessageBoxDialog : public ImGuiDialog {
|
||||
std::string body_;
|
||||
};
|
||||
|
||||
ImGuiDialog* ImGuiDialog::ShowMessageBox(Window* window, std::string title,
|
||||
std::string body) {
|
||||
return new MessageBoxDialog(window, std::move(title), std::move(body));
|
||||
ImGuiDialog* ImGuiDialog::ShowMessageBox(ImGuiDrawer* imgui_drawer,
|
||||
std::string title, std::string body) {
|
||||
return new MessageBoxDialog(imgui_drawer, std::move(title), std::move(body));
|
||||
}
|
||||
|
||||
} // namespace ui
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2015 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -19,23 +19,25 @@
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
class ImGuiDialog : private WindowListener {
|
||||
class ImGuiDialog {
|
||||
public:
|
||||
~ImGuiDialog();
|
||||
|
||||
// Shows a simple message box containing a text message.
|
||||
// Callers can want for the dialog to close with Wait().
|
||||
// Dialogs retain themselves and will delete themselves when closed.
|
||||
static ImGuiDialog* ShowMessageBox(Window* window, std::string title,
|
||||
std::string body);
|
||||
static ImGuiDialog* ShowMessageBox(ImGuiDrawer* imgui_drawer,
|
||||
std::string title, std::string body);
|
||||
|
||||
// A fence to signal when the dialog is closed.
|
||||
void Then(xe::threading::Fence* fence);
|
||||
|
||||
protected:
|
||||
ImGuiDialog(Window* window);
|
||||
void Draw();
|
||||
|
||||
Window* window() const { return window_; }
|
||||
protected:
|
||||
ImGuiDialog(ImGuiDrawer* imgui_drawer);
|
||||
|
||||
ImGuiDrawer* imgui_drawer() const { return imgui_drawer_; }
|
||||
ImGuiIO& GetIO();
|
||||
|
||||
// Closes the dialog and returns to any waiters.
|
||||
@@ -46,10 +48,7 @@ class ImGuiDialog : private WindowListener {
|
||||
virtual void OnDraw(ImGuiIO& io) {}
|
||||
|
||||
private:
|
||||
void OnPaint(UIEvent* e) override;
|
||||
|
||||
Window* window_ = nullptr;
|
||||
bool had_imgui_active_ = false;
|
||||
ImGuiDrawer* imgui_drawer_ = nullptr;
|
||||
bool has_close_pending_ = false;
|
||||
std::vector<xe::threading::Fence*> waiting_fences_;
|
||||
};
|
||||
|
||||
@@ -2,17 +2,23 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/ui/imgui_drawer.h"
|
||||
|
||||
#include <cfloat>
|
||||
#include <cstring>
|
||||
|
||||
#include "third_party/imgui/imgui.h"
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/ui/imgui_dialog.h"
|
||||
#include "xenia/ui/ui_event.h"
|
||||
#include "xenia/ui/window.h"
|
||||
|
||||
namespace xe {
|
||||
@@ -26,18 +32,75 @@ const char kProggyTinyCompressedDataBase85[10950 + 1] =
|
||||
static_assert(sizeof(ImmediateVertex) == sizeof(ImDrawVert),
|
||||
"Vertex types must match");
|
||||
|
||||
ImGuiDrawer::ImGuiDrawer(xe::ui::Window* window)
|
||||
: window_(window), graphics_context_(window->context()) {
|
||||
ImGuiDrawer::ImGuiDrawer(xe::ui::Window* window, size_t z_order)
|
||||
: window_(window), z_order_(z_order) {
|
||||
Initialize();
|
||||
}
|
||||
|
||||
ImGuiDrawer::~ImGuiDrawer() {
|
||||
SetPresenter(nullptr);
|
||||
if (!dialogs_.empty()) {
|
||||
window_->RemoveInputListener(this);
|
||||
if (internal_state_) {
|
||||
ImGui::SetCurrentContext(internal_state_);
|
||||
if (ImGui::IsAnyMouseDown()) {
|
||||
window_->ReleaseMouse();
|
||||
}
|
||||
}
|
||||
}
|
||||
if (internal_state_) {
|
||||
ImGui::DestroyContext(internal_state_);
|
||||
internal_state_ = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::AddDialog(ImGuiDialog* dialog) {
|
||||
assert_not_null(dialog);
|
||||
// Check if already added.
|
||||
if (std::find(dialogs_.cbegin(), dialogs_.cend(), dialog) !=
|
||||
dialogs_.cend()) {
|
||||
return;
|
||||
}
|
||||
if (dialog_loop_next_index_ == SIZE_MAX && dialogs_.empty()) {
|
||||
// First dialog added. dialog_loop_next_index_ == SIZE_MAX is also checked
|
||||
// because in a situation of removing the only dialog, then adding a dialog,
|
||||
// from within a dialog's Draw function, the removal would not cause the
|
||||
// listener and the drawer to be removed (it's deferred in this case).
|
||||
window_->AddInputListener(this, z_order_);
|
||||
if (presenter_) {
|
||||
presenter_->AddUIDrawerFromUIThread(this, z_order_);
|
||||
}
|
||||
}
|
||||
dialogs_.push_back(dialog);
|
||||
}
|
||||
|
||||
void ImGuiDrawer::RemoveDialog(ImGuiDialog* dialog) {
|
||||
assert_not_null(dialog);
|
||||
auto it = std::find(dialogs_.cbegin(), dialogs_.cend(), dialog);
|
||||
if (it == dialogs_.cend()) {
|
||||
return;
|
||||
}
|
||||
if (dialog_loop_next_index_ != SIZE_MAX) {
|
||||
// Actualize the next dialog index after the erasure from the vector.
|
||||
size_t existing_index = size_t(std::distance(dialogs_.cbegin(), it));
|
||||
if (dialog_loop_next_index_ > existing_index) {
|
||||
--dialog_loop_next_index_;
|
||||
}
|
||||
}
|
||||
dialogs_.erase(it);
|
||||
if (dialog_loop_next_index_ == SIZE_MAX && dialogs_.empty()) {
|
||||
if (presenter_) {
|
||||
presenter_->RemoveUIDrawerFromUIThread(this);
|
||||
}
|
||||
window_->RemoveInputListener(this);
|
||||
// Clear all input since no input will be received anymore, and when the
|
||||
// drawer becomes active again, it'd have an outdated input state otherwise
|
||||
// which will be persistent until new events actualize individual input
|
||||
// properties.
|
||||
ClearInput();
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::Initialize() {
|
||||
// Setup ImGui internal state.
|
||||
// This will give us state we can swap to the ImGui globals when in use.
|
||||
@@ -51,9 +114,31 @@ void ImGuiDrawer::Initialize() {
|
||||
// Windows.
|
||||
io.IniFilename = nullptr;
|
||||
|
||||
SetupFont();
|
||||
|
||||
io.DeltaTime = 1.0f / 60.0f;
|
||||
// Setup the font glyphs.
|
||||
ImFontConfig font_config;
|
||||
font_config.OversampleH = font_config.OversampleV = 1;
|
||||
font_config.PixelSnapH = true;
|
||||
static const ImWchar font_glyph_ranges[] = {
|
||||
0x0020,
|
||||
0x00FF, // Basic Latin + Latin Supplement
|
||||
0,
|
||||
};
|
||||
io.Fonts->AddFontFromMemoryCompressedBase85TTF(
|
||||
kProggyTinyCompressedDataBase85, 10.0f, &font_config, font_glyph_ranges);
|
||||
// TODO(benvanik): jp font on other platforms?
|
||||
// https://github.com/Koruri/kibitaki looks really good, but is 1.5MiB.
|
||||
const char* jp_font_path = "C:\\Windows\\Fonts\\msgothic.ttc";
|
||||
if (std::filesystem::exists(jp_font_path)) {
|
||||
ImFontConfig jp_font_config;
|
||||
jp_font_config.MergeMode = true;
|
||||
jp_font_config.OversampleH = jp_font_config.OversampleV = 1;
|
||||
jp_font_config.PixelSnapH = true;
|
||||
jp_font_config.FontNo = 0;
|
||||
io.Fonts->AddFontFromFileTTF(jp_font_path, 12.0f, &jp_font_config,
|
||||
io.Fonts->GetGlyphRangesJapanese());
|
||||
} else {
|
||||
XELOGW("Unable to load Japanese font; JP characters will be boxes");
|
||||
}
|
||||
|
||||
auto& style = ImGui::GetStyle();
|
||||
style.ScrollbarRounding = 0;
|
||||
@@ -125,60 +210,121 @@ void ImGuiDrawer::Initialize() {
|
||||
io.KeyMap[ImGuiKey_X] = int(ui::VirtualKey::kX);
|
||||
io.KeyMap[ImGuiKey_Y] = int(ui::VirtualKey::kY);
|
||||
io.KeyMap[ImGuiKey_Z] = int(ui::VirtualKey::kZ);
|
||||
|
||||
frame_time_tick_frequency_ = double(Clock::QueryHostTickFrequency());
|
||||
last_frame_time_ticks_ = Clock::QueryHostTickCount();
|
||||
}
|
||||
|
||||
void ImGuiDrawer::SetupFont() {
|
||||
auto& io = GetIO();
|
||||
|
||||
ImFontConfig font_config;
|
||||
font_config.OversampleH = font_config.OversampleV = 1;
|
||||
font_config.PixelSnapH = true;
|
||||
static const ImWchar font_glyph_ranges[] = {
|
||||
0x0020,
|
||||
0x00FF, // Basic Latin + Latin Supplement
|
||||
0,
|
||||
};
|
||||
io.Fonts->AddFontFromMemoryCompressedBase85TTF(
|
||||
kProggyTinyCompressedDataBase85, 10.0f, &font_config, font_glyph_ranges);
|
||||
|
||||
// TODO(benvanik): jp font on other platforms?
|
||||
// https://github.com/Koruri/kibitaki looks really good, but is 1.5MiB.
|
||||
const char* jp_font_path = "C:\\Windows\\Fonts\\msgothic.ttc";
|
||||
if (std::filesystem::exists(jp_font_path)) {
|
||||
ImFontConfig jp_font_config;
|
||||
jp_font_config.MergeMode = true;
|
||||
jp_font_config.OversampleH = jp_font_config.OversampleV = 1;
|
||||
jp_font_config.PixelSnapH = true;
|
||||
jp_font_config.FontNo = 0;
|
||||
io.Fonts->AddFontFromFileTTF(jp_font_path, 12.0f, &jp_font_config,
|
||||
io.Fonts->GetGlyphRangesJapanese());
|
||||
} else {
|
||||
XELOGW("Unable to load japanese font; jp characters will be boxes");
|
||||
void ImGuiDrawer::SetupFontTexture() {
|
||||
if (font_texture_ || !immediate_drawer_) {
|
||||
return;
|
||||
}
|
||||
|
||||
ImGuiIO& io = GetIO();
|
||||
unsigned char* pixels;
|
||||
int width, height;
|
||||
io.Fonts->GetTexDataAsRGBA32(&pixels, &width, &height);
|
||||
|
||||
font_texture_ = graphics_context_->immediate_drawer()->CreateTexture(
|
||||
font_texture_ = immediate_drawer_->CreateTexture(
|
||||
width, height, ImmediateTextureFilter::kLinear, true,
|
||||
reinterpret_cast<uint8_t*>(pixels));
|
||||
|
||||
io.Fonts->TexID = reinterpret_cast<ImTextureID>(font_texture_.get());
|
||||
}
|
||||
|
||||
void ImGuiDrawer::RenderDrawLists(ImDrawData* data) {
|
||||
auto drawer = graphics_context_->immediate_drawer();
|
||||
void ImGuiDrawer::SetPresenter(Presenter* new_presenter) {
|
||||
if (presenter_) {
|
||||
if (presenter_ == new_presenter) {
|
||||
return;
|
||||
}
|
||||
if (!dialogs_.empty()) {
|
||||
presenter_->RemoveUIDrawerFromUIThread(this);
|
||||
}
|
||||
ImGuiIO& io = GetIO();
|
||||
}
|
||||
presenter_ = new_presenter;
|
||||
if (presenter_) {
|
||||
if (!dialogs_.empty()) {
|
||||
presenter_->AddUIDrawerFromUIThread(this, z_order_);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::SetImmediateDrawer(ImmediateDrawer* new_immediate_drawer) {
|
||||
if (immediate_drawer_ == new_immediate_drawer) {
|
||||
return;
|
||||
}
|
||||
if (immediate_drawer_) {
|
||||
GetIO().Fonts->TexID = static_cast<ImTextureID>(nullptr);
|
||||
font_texture_.reset();
|
||||
}
|
||||
immediate_drawer_ = new_immediate_drawer;
|
||||
if (immediate_drawer_) {
|
||||
SetupFontTexture();
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::Draw(UIDrawContext& ui_draw_context) {
|
||||
// Drawing of anything is initiated by the presenter.
|
||||
assert_not_null(presenter_);
|
||||
if (!immediate_drawer_) {
|
||||
// A presenter has been attached, but an immediate drawer hasn't been
|
||||
// attached yet.
|
||||
return;
|
||||
}
|
||||
|
||||
if (dialogs_.empty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
ImGui::SetCurrentContext(internal_state_);
|
||||
|
||||
// Handle cases of screen coordinates != from framebuffer coordinates (e.g.
|
||||
// retina displays).
|
||||
ImGuiIO& io = ImGui::GetIO();
|
||||
float fb_height = io.DisplaySize.y * io.DisplayFramebufferScale.y;
|
||||
data->ScaleClipRects(io.DisplayFramebufferScale);
|
||||
|
||||
const float width = io.DisplaySize.x;
|
||||
const float height = io.DisplaySize.y;
|
||||
drawer->Begin(static_cast<int>(width), static_cast<int>(height));
|
||||
uint64_t current_frame_time_ticks = Clock::QueryHostTickCount();
|
||||
io.DeltaTime =
|
||||
float(double(current_frame_time_ticks - last_frame_time_ticks_) /
|
||||
frame_time_tick_frequency_);
|
||||
if (!(io.DeltaTime > 0.0f) ||
|
||||
current_frame_time_ticks < last_frame_time_ticks_) {
|
||||
// For safety as Dear ImGui doesn't allow non-positive DeltaTime. Using the
|
||||
// same default value as in the official samples.
|
||||
io.DeltaTime = 1.0f / 60.0f;
|
||||
}
|
||||
last_frame_time_ticks_ = current_frame_time_ticks;
|
||||
|
||||
float physical_to_logical =
|
||||
float(window_->GetMediumDpi()) / float(window_->GetDpi());
|
||||
io.DisplaySize.x = window_->GetActualPhysicalWidth() * physical_to_logical;
|
||||
io.DisplaySize.y = window_->GetActualPhysicalHeight() * physical_to_logical;
|
||||
|
||||
ImGui::NewFrame();
|
||||
|
||||
assert_true(dialog_loop_next_index_ == SIZE_MAX);
|
||||
dialog_loop_next_index_ = 0;
|
||||
while (dialog_loop_next_index_ < dialogs_.size()) {
|
||||
dialogs_[dialog_loop_next_index_++]->Draw();
|
||||
}
|
||||
dialog_loop_next_index_ = SIZE_MAX;
|
||||
|
||||
ImGui::Render();
|
||||
ImDrawData* draw_data = ImGui::GetDrawData();
|
||||
if (draw_data) {
|
||||
RenderDrawLists(draw_data, ui_draw_context);
|
||||
}
|
||||
|
||||
if (dialogs_.empty()) {
|
||||
// All dialogs have removed themselves during the draw, detach.
|
||||
presenter_->RemoveUIDrawerFromUIThread(this);
|
||||
window_->RemoveInputListener(this);
|
||||
} else {
|
||||
// Repaint (and handle input) continuously if still active.
|
||||
presenter_->RequestUIPaintFromUIThread();
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::RenderDrawLists(ImDrawData* data,
|
||||
UIDrawContext& ui_draw_context) {
|
||||
ImGuiIO& io = ImGui::GetIO();
|
||||
|
||||
immediate_drawer_->Begin(ui_draw_context, io.DisplaySize.x, io.DisplaySize.y);
|
||||
|
||||
for (int i = 0; i < data->CmdListsCount; ++i) {
|
||||
const auto cmd_list = data->CmdLists[i];
|
||||
@@ -189,7 +335,7 @@ void ImGuiDrawer::RenderDrawLists(ImDrawData* data) {
|
||||
batch.vertex_count = cmd_list->VtxBuffer.size();
|
||||
batch.indices = cmd_list->IdxBuffer.Data;
|
||||
batch.index_count = cmd_list->IdxBuffer.size();
|
||||
drawer->BeginDrawBatch(batch);
|
||||
immediate_drawer_->BeginDrawBatch(batch);
|
||||
|
||||
int index_offset = 0;
|
||||
for (int j = 0; j < cmd_list->CmdBuffer.size(); ++j) {
|
||||
@@ -201,19 +347,19 @@ void ImGuiDrawer::RenderDrawLists(ImDrawData* data) {
|
||||
draw.index_offset = index_offset;
|
||||
draw.texture = reinterpret_cast<ImmediateTexture*>(cmd.TextureId);
|
||||
draw.scissor = true;
|
||||
draw.scissor_rect[0] = static_cast<int>(cmd.ClipRect.x);
|
||||
draw.scissor_rect[1] = static_cast<int>(height - cmd.ClipRect.w);
|
||||
draw.scissor_rect[2] = static_cast<int>(cmd.ClipRect.z - cmd.ClipRect.x);
|
||||
draw.scissor_rect[3] = static_cast<int>(cmd.ClipRect.w - cmd.ClipRect.y);
|
||||
drawer->Draw(draw);
|
||||
draw.scissor_left = cmd.ClipRect.x;
|
||||
draw.scissor_top = cmd.ClipRect.y;
|
||||
draw.scissor_right = cmd.ClipRect.z;
|
||||
draw.scissor_bottom = cmd.ClipRect.w;
|
||||
immediate_drawer_->Draw(draw);
|
||||
|
||||
index_offset += cmd.ElemCount;
|
||||
}
|
||||
|
||||
drawer->EndDrawBatch();
|
||||
immediate_drawer_->EndDrawBatch();
|
||||
}
|
||||
|
||||
drawer->End();
|
||||
immediate_drawer_->End();
|
||||
}
|
||||
|
||||
ImGuiIO& ImGuiDrawer::GetIO() {
|
||||
@@ -221,33 +367,25 @@ ImGuiIO& ImGuiDrawer::GetIO() {
|
||||
return ImGui::GetIO();
|
||||
}
|
||||
|
||||
void ImGuiDrawer::RenderDrawLists() {
|
||||
ImGui::SetCurrentContext(internal_state_);
|
||||
auto draw_data = ImGui::GetDrawData();
|
||||
if (draw_data) {
|
||||
RenderDrawLists(draw_data);
|
||||
}
|
||||
}
|
||||
void ImGuiDrawer::OnKeyDown(KeyEvent& e) { OnKey(e, true); }
|
||||
|
||||
void ImGuiDrawer::OnKeyDown(KeyEvent* e) { OnKey(e, true); }
|
||||
void ImGuiDrawer::OnKeyUp(KeyEvent& e) { OnKey(e, false); }
|
||||
|
||||
void ImGuiDrawer::OnKeyUp(KeyEvent* e) { OnKey(e, false); }
|
||||
|
||||
void ImGuiDrawer::OnKeyChar(KeyEvent* e) {
|
||||
void ImGuiDrawer::OnKeyChar(KeyEvent& e) {
|
||||
auto& io = GetIO();
|
||||
// TODO(Triang3l): Accept the Unicode character.
|
||||
unsigned int character = static_cast<unsigned int>(e->virtual_key());
|
||||
unsigned int character = static_cast<unsigned int>(e.virtual_key());
|
||||
if (character > 0 && character < 0x10000) {
|
||||
io.AddInputCharacter(character);
|
||||
e->set_handled(true);
|
||||
e.set_handled(true);
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::OnMouseDown(MouseEvent* e) {
|
||||
void ImGuiDrawer::OnMouseDown(MouseEvent& e) {
|
||||
UpdateMousePosition(e);
|
||||
auto& io = GetIO();
|
||||
io.MousePos = ImVec2(float(e->x()), float(e->y()));
|
||||
int button = -1;
|
||||
switch (e->button()) {
|
||||
switch (e.button()) {
|
||||
case xe::ui::MouseEvent::Button::kLeft: {
|
||||
button = 0;
|
||||
break;
|
||||
@@ -261,25 +399,23 @@ void ImGuiDrawer::OnMouseDown(MouseEvent* e) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (button >= 0 && button < std::size(io.MouseDown)) {
|
||||
if (!ImGui::IsAnyMouseDown()) {
|
||||
window_->CaptureMouse();
|
||||
if (!io.MouseDown[button]) {
|
||||
if (!ImGui::IsAnyMouseDown()) {
|
||||
window_->CaptureMouse();
|
||||
}
|
||||
io.MouseDown[button] = true;
|
||||
}
|
||||
io.MouseDown[button] = true;
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::OnMouseMove(MouseEvent* e) {
|
||||
auto& io = GetIO();
|
||||
io.MousePos = ImVec2(float(e->x()), float(e->y()));
|
||||
}
|
||||
void ImGuiDrawer::OnMouseMove(MouseEvent& e) { UpdateMousePosition(e); }
|
||||
|
||||
void ImGuiDrawer::OnMouseUp(MouseEvent* e) {
|
||||
void ImGuiDrawer::OnMouseUp(MouseEvent& e) {
|
||||
UpdateMousePosition(e);
|
||||
auto& io = GetIO();
|
||||
io.MousePos = ImVec2(float(e->x()), float(e->y()));
|
||||
int button = -1;
|
||||
switch (e->button()) {
|
||||
switch (e.button()) {
|
||||
case xe::ui::MouseEvent::Button::kLeft: {
|
||||
button = 0;
|
||||
break;
|
||||
@@ -293,24 +429,42 @@ void ImGuiDrawer::OnMouseUp(MouseEvent* e) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (button >= 0 && button < std::size(io.MouseDown)) {
|
||||
io.MouseDown[button] = false;
|
||||
if (!ImGui::IsAnyMouseDown()) {
|
||||
window_->ReleaseMouse();
|
||||
if (io.MouseDown[button]) {
|
||||
io.MouseDown[button] = false;
|
||||
if (!ImGui::IsAnyMouseDown()) {
|
||||
window_->ReleaseMouse();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::OnMouseWheel(MouseEvent* e) {
|
||||
void ImGuiDrawer::OnMouseWheel(MouseEvent& e) {
|
||||
UpdateMousePosition(e);
|
||||
auto& io = GetIO();
|
||||
io.MousePos = ImVec2(float(e->x()), float(e->y()));
|
||||
io.MouseWheel += float(e->dy() / 120.0f);
|
||||
io.MouseWheel += float(e.scroll_y()) / float(MouseEvent::kScrollPerDetent);
|
||||
}
|
||||
|
||||
void ImGuiDrawer::OnKey(KeyEvent* e, bool is_down) {
|
||||
void ImGuiDrawer::ClearInput() {
|
||||
auto& io = GetIO();
|
||||
VirtualKey virtual_key = e->virtual_key();
|
||||
if (ImGui::IsAnyMouseDown()) {
|
||||
window_->ReleaseMouse();
|
||||
}
|
||||
io.MousePos = ImVec2(-FLT_MAX, -FLT_MAX);
|
||||
std::memset(io.MouseDown, 0, sizeof(io.MouseDown));
|
||||
io.MouseWheel = 0.0f;
|
||||
io.MouseWheelH = 0.0f;
|
||||
io.KeyCtrl = false;
|
||||
io.KeyShift = false;
|
||||
io.KeyAlt = false;
|
||||
io.KeySuper = false;
|
||||
std::memset(io.KeysDown, 0, sizeof(io.KeysDown));
|
||||
io.ClearInputCharacters();
|
||||
}
|
||||
|
||||
void ImGuiDrawer::OnKey(KeyEvent& e, bool is_down) {
|
||||
auto& io = GetIO();
|
||||
VirtualKey virtual_key = e.virtual_key();
|
||||
if (size_t(virtual_key) < xe::countof(io.KeysDown)) {
|
||||
io.KeysDown[size_t(virtual_key)] = is_down;
|
||||
}
|
||||
@@ -333,5 +487,13 @@ void ImGuiDrawer::OnKey(KeyEvent* e, bool is_down) {
|
||||
}
|
||||
}
|
||||
|
||||
void ImGuiDrawer::UpdateMousePosition(const MouseEvent& e) {
|
||||
auto& io = GetIO();
|
||||
float physical_to_logical =
|
||||
float(window_->GetMediumDpi()) / float(window_->GetDpi());
|
||||
io.MousePos.x = e.x() * physical_to_logical;
|
||||
io.MousePos.y = e.y() * physical_to_logical;
|
||||
}
|
||||
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2015 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -10,10 +10,14 @@
|
||||
#ifndef XENIA_UI_IMGUI_DRAWER_H_
|
||||
#define XENIA_UI_IMGUI_DRAWER_H_
|
||||
|
||||
#include <cstddef>
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include "xenia/ui/immediate_drawer.h"
|
||||
#include "xenia/ui/presenter.h"
|
||||
#include "xenia/ui/window.h"
|
||||
#include "xenia/ui/window_listener.h"
|
||||
|
||||
struct ImDrawData;
|
||||
@@ -23,43 +27,73 @@ struct ImGuiIO;
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
class GraphicsContext;
|
||||
class ImGuiDialog;
|
||||
class Window;
|
||||
|
||||
class ImGuiDrawer : public WindowListener {
|
||||
class ImGuiDrawer : public WindowInputListener, public UIDrawer {
|
||||
public:
|
||||
ImGuiDrawer(Window* window);
|
||||
ImGuiDrawer(Window* window, size_t z_order);
|
||||
~ImGuiDrawer();
|
||||
|
||||
void SetupDefaultInput() {}
|
||||
|
||||
ImGuiIO& GetIO();
|
||||
void RenderDrawLists();
|
||||
|
||||
void AddDialog(ImGuiDialog* dialog);
|
||||
void RemoveDialog(ImGuiDialog* dialog);
|
||||
|
||||
// SetPresenter may be called from the destructor.
|
||||
void SetPresenter(Presenter* new_presenter);
|
||||
void SetImmediateDrawer(ImmediateDrawer* new_immediate_drawer);
|
||||
void SetPresenterAndImmediateDrawer(Presenter* new_presenter,
|
||||
ImmediateDrawer* new_immediate_drawer) {
|
||||
SetPresenter(new_presenter);
|
||||
SetImmediateDrawer(new_immediate_drawer);
|
||||
}
|
||||
|
||||
void Draw(UIDrawContext& ui_draw_context) override;
|
||||
|
||||
protected:
|
||||
void Initialize();
|
||||
void SetupFont();
|
||||
|
||||
void RenderDrawLists(ImDrawData* data);
|
||||
|
||||
void OnKeyDown(KeyEvent* e) override;
|
||||
void OnKeyUp(KeyEvent* e) override;
|
||||
void OnKeyChar(KeyEvent* e) override;
|
||||
void OnMouseDown(MouseEvent* e) override;
|
||||
void OnMouseMove(MouseEvent* e) override;
|
||||
void OnMouseUp(MouseEvent* e) override;
|
||||
void OnMouseWheel(MouseEvent* e) override;
|
||||
|
||||
static ImGuiDrawer* current_drawer_;
|
||||
|
||||
Window* window_ = nullptr;
|
||||
GraphicsContext* graphics_context_ = nullptr;
|
||||
|
||||
ImGuiContext* internal_state_ = nullptr;
|
||||
std::unique_ptr<ImmediateTexture> font_texture_;
|
||||
void OnKeyDown(KeyEvent& e) override;
|
||||
void OnKeyUp(KeyEvent& e) override;
|
||||
void OnKeyChar(KeyEvent& e) override;
|
||||
void OnMouseDown(MouseEvent& e) override;
|
||||
void OnMouseMove(MouseEvent& e) override;
|
||||
void OnMouseUp(MouseEvent& e) override;
|
||||
void OnMouseWheel(MouseEvent& e) override;
|
||||
// For now, no need for OnDpiChanged because redrawing is done continuously.
|
||||
|
||||
private:
|
||||
void OnKey(KeyEvent* e, bool is_down);
|
||||
void Initialize();
|
||||
|
||||
void SetupFontTexture();
|
||||
|
||||
void RenderDrawLists(ImDrawData* data, UIDrawContext& ui_draw_context);
|
||||
|
||||
void ClearInput();
|
||||
void OnKey(KeyEvent& e, bool is_down);
|
||||
void UpdateMousePosition(const MouseEvent& e);
|
||||
|
||||
Window* window_;
|
||||
size_t z_order_;
|
||||
|
||||
ImGuiContext* internal_state_ = nullptr;
|
||||
|
||||
// All currently-attached dialogs that get drawn.
|
||||
std::vector<ImGuiDialog*> dialogs_;
|
||||
// Using an index, not an iterator, because after the erasure, the adjustment
|
||||
// must be done for the vector element indices that would be in the iterator
|
||||
// range that would be invalidated.
|
||||
// SIZE_MAX if not currently in the dialog loop.
|
||||
size_t dialog_loop_next_index_ = SIZE_MAX;
|
||||
|
||||
Presenter* presenter_ = nullptr;
|
||||
|
||||
ImmediateDrawer* immediate_drawer_ = nullptr;
|
||||
// Resources specific to an immediate drawer - must be destroyed before
|
||||
// detaching the presenter.
|
||||
std::unique_ptr<ImmediateTexture> font_texture_;
|
||||
|
||||
double frame_time_tick_frequency_;
|
||||
uint64_t last_frame_time_ticks_;
|
||||
};
|
||||
|
||||
} // namespace ui
|
||||
|
||||
108
src/xenia/ui/immediate_drawer.cc
Normal file
108
src/xenia/ui/immediate_drawer.cc
Normal file
@@ -0,0 +1,108 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2021 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/ui/immediate_drawer.h"
|
||||
|
||||
#include <algorithm>
|
||||
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/ui/graphics_util.h"
|
||||
#include "xenia/ui/presenter.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
void ImmediateDrawer::SetPresenter(Presenter* new_presenter) {
|
||||
if (presenter_ == new_presenter) {
|
||||
return;
|
||||
}
|
||||
// Changing the presenter while drawing would make the state inconsistent.
|
||||
assert_null(ui_draw_context_);
|
||||
if (presenter_) {
|
||||
OnLeavePresenter();
|
||||
}
|
||||
presenter_ = new_presenter;
|
||||
if (presenter_) {
|
||||
OnEnterPresenter();
|
||||
}
|
||||
}
|
||||
|
||||
void ImmediateDrawer::Begin(UIDrawContext& ui_draw_context,
|
||||
float coordinate_space_width,
|
||||
float coordinate_space_height) {
|
||||
assert_true(&ui_draw_context.presenter() == presenter_);
|
||||
ui_draw_context_ = &ui_draw_context;
|
||||
// In case of non-positive values (or NaNs) - use render target coordinates
|
||||
// according to the contract of the function, and also for safety because
|
||||
// there will be division by the coordinate space size in several places.
|
||||
if (!(coordinate_space_width > 0.0f) || !(coordinate_space_height > 0.0f)) {
|
||||
coordinate_space_width = float(ui_draw_context.render_target_width());
|
||||
coordinate_space_height = float(ui_draw_context.render_target_height());
|
||||
}
|
||||
coordinate_space_width_ = coordinate_space_width;
|
||||
coordinate_space_height_ = coordinate_space_height;
|
||||
}
|
||||
|
||||
void ImmediateDrawer::End() { ui_draw_context_ = nullptr; }
|
||||
|
||||
bool ImmediateDrawer::ScissorToRenderTarget(const ImmediateDraw& immediate_draw,
|
||||
uint32_t& out_left,
|
||||
uint32_t& out_top,
|
||||
uint32_t& out_width,
|
||||
uint32_t& out_height) {
|
||||
uint32_t render_target_width = ui_draw_context()->render_target_width();
|
||||
uint32_t render_target_height = ui_draw_context()->render_target_height();
|
||||
if (!immediate_draw.scissor) {
|
||||
out_left = 0;
|
||||
out_top = 0;
|
||||
out_width = render_target_width;
|
||||
out_height = render_target_height;
|
||||
return render_target_width && render_target_height;
|
||||
}
|
||||
float render_target_width_float = float(render_target_width);
|
||||
float render_target_height_float = float(render_target_height);
|
||||
// Scale to render target coordinates, drop NaNs (by doing
|
||||
// std::max(0.0f, variable) in this argument order), and clamp to the render
|
||||
// target size, below which the values are representable as 16p8 fixed-point.
|
||||
float scale_x = render_target_width / coordinate_space_width();
|
||||
float scale_y = render_target_height / coordinate_space_height();
|
||||
float x0_float =
|
||||
std::min(render_target_width_float,
|
||||
std::max(0.0f, immediate_draw.scissor_left * scale_x));
|
||||
float y0_float =
|
||||
std::min(render_target_height_float,
|
||||
std::max(0.0f, immediate_draw.scissor_top * scale_y));
|
||||
// Also make sure the size is non-negative.
|
||||
float x1_float =
|
||||
std::min(render_target_width_float,
|
||||
std::max(x0_float, immediate_draw.scissor_right * scale_x));
|
||||
float y1_float =
|
||||
std::min(render_target_height_float,
|
||||
std::max(y0_float, immediate_draw.scissor_bottom * scale_y));
|
||||
// Top-left - include .5 (0.128 treated as 0 covered, 0.129 as 0 not covered).
|
||||
int32_t x0 = (FloatToD3D11Fixed16p8(x0_float) + 127) >> 8;
|
||||
int32_t y0 = (FloatToD3D11Fixed16p8(y0_float) + 127) >> 8;
|
||||
// Bottom-right - exclude .5.
|
||||
int32_t x1 = (FloatToD3D11Fixed16p8(x1_float) + 127) >> 8;
|
||||
int32_t y1 = (FloatToD3D11Fixed16p8(y1_float) + 127) >> 8;
|
||||
assert_true(x0 >= 0);
|
||||
assert_true(y0 >= 0);
|
||||
assert_true(x1 >= x0);
|
||||
assert_true(y1 >= y0);
|
||||
assert_true(x1 <= int32_t(render_target_width));
|
||||
assert_true(y1 <= int32_t(render_target_height));
|
||||
out_left = uint32_t(x0);
|
||||
out_top = uint32_t(y0);
|
||||
out_width = uint32_t(x1 - x0);
|
||||
out_height = uint32_t(y1 - y0);
|
||||
return x1 > x0 && y1 > y0;
|
||||
}
|
||||
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2015 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -12,11 +12,11 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "xenia/ui/presenter.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
class GraphicsContext;
|
||||
|
||||
// Describes the filter applied when sampling textures.
|
||||
enum class ImmediateTextureFilter {
|
||||
kNearest,
|
||||
@@ -80,21 +80,38 @@ struct ImmediateDraw {
|
||||
|
||||
// True to enable scissoring using the region defined by scissor_rect.
|
||||
bool scissor = false;
|
||||
// Scissoring region in framebuffer pixels as (x, y, w, h).
|
||||
int scissor_rect[4] = {0};
|
||||
// Scissoring region in the coordinate space (if right < left or bottom < top,
|
||||
// not drawing).
|
||||
float scissor_left = 0.0f;
|
||||
float scissor_top = 0.0f;
|
||||
float scissor_right = 0.0f;
|
||||
float scissor_bottom = 0.0f;
|
||||
};
|
||||
|
||||
class ImmediateDrawer {
|
||||
public:
|
||||
ImmediateDrawer(const ImmediateDrawer& immediate_drawer) = delete;
|
||||
ImmediateDrawer& operator=(const ImmediateDrawer& immediate_drawer) = delete;
|
||||
|
||||
virtual ~ImmediateDrawer() = default;
|
||||
|
||||
void SetPresenter(Presenter* new_presenter);
|
||||
|
||||
// Creates a new texture with the given attributes and R8G8B8A8 data.
|
||||
virtual std::unique_ptr<ImmediateTexture> CreateTexture(
|
||||
uint32_t width, uint32_t height, ImmediateTextureFilter filter,
|
||||
bool is_repeated, const uint8_t* data) = 0;
|
||||
|
||||
// Begins drawing in immediate mode using the given projection matrix.
|
||||
virtual void Begin(int render_target_width, int render_target_height) = 0;
|
||||
// Begins drawing in immediate mode using the given projection matrix. The
|
||||
// presenter that is currently attached to the immediate drawer, as the
|
||||
// implementation may hold presenter-specific information such as UI
|
||||
// submission indices. Pass 0 or a negative value as the coordinate space
|
||||
// width or height to use raw render target pixel coordinates (or this will
|
||||
// just be used as a safe fallback when with a non-zero-sized surface the
|
||||
// coordinate space size becomes zero somehow).
|
||||
virtual void Begin(UIDrawContext& ui_draw_context,
|
||||
float coordinate_space_width,
|
||||
float coordinate_space_height);
|
||||
// Starts a draw batch.
|
||||
virtual void BeginDrawBatch(const ImmediateDrawBatch& batch) = 0;
|
||||
// Draws one set of a batch.
|
||||
@@ -102,13 +119,33 @@ class ImmediateDrawer {
|
||||
// Ends a draw batch.
|
||||
virtual void EndDrawBatch() = 0;
|
||||
// Ends drawing in immediate mode and flushes contents.
|
||||
virtual void End() = 0;
|
||||
virtual void End();
|
||||
|
||||
protected:
|
||||
ImmediateDrawer(GraphicsContext* graphics_context)
|
||||
: graphics_context_(graphics_context) {}
|
||||
ImmediateDrawer() = default;
|
||||
|
||||
GraphicsContext* graphics_context_ = nullptr;
|
||||
Presenter* presenter() const { return presenter_; }
|
||||
virtual void OnLeavePresenter() {}
|
||||
virtual void OnEnterPresenter() {}
|
||||
|
||||
// Available between Begin and End.
|
||||
UIDrawContext* ui_draw_context() const { return ui_draw_context_; }
|
||||
float coordinate_space_width() const { return coordinate_space_width_; }
|
||||
float coordinate_space_height() const { return coordinate_space_height_; }
|
||||
|
||||
// Converts and clamps the scissor in the immediate draw to render target
|
||||
// coordinates. Returns whether the scissor contains any render target pixels
|
||||
// (but a valid scissor is written even if false is returned).
|
||||
bool ScissorToRenderTarget(const ImmediateDraw& immediate_draw,
|
||||
uint32_t& out_left, uint32_t& out_top,
|
||||
uint32_t& out_width, uint32_t& out_height);
|
||||
|
||||
private:
|
||||
Presenter* presenter_ = nullptr;
|
||||
|
||||
UIDrawContext* ui_draw_context_ = nullptr;
|
||||
float coordinate_space_width_;
|
||||
float coordinate_space_height_;
|
||||
};
|
||||
|
||||
} // namespace ui
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -62,9 +62,11 @@ void MenuItem::RemoveChild(MenuItem* child_item) {
|
||||
|
||||
MenuItem* MenuItem::child(size_t index) { return children_[index].get(); }
|
||||
|
||||
void MenuItem::OnSelected(UIEvent* e) {
|
||||
void MenuItem::OnSelected() {
|
||||
if (callback_) {
|
||||
callback_();
|
||||
// Note that this MenuItem might have been destroyed by the callback.
|
||||
// Must not do anything with *this in this function from now on.
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2020 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -48,14 +48,18 @@ class MenuItem {
|
||||
const std::string& text() { return text_; }
|
||||
const std::string& hotkey() { return hotkey_; }
|
||||
|
||||
// If the menu is currently attached to a Window, changes to it (such as the
|
||||
// elements and the enabled / disabled state) may be not reflected
|
||||
// immediately - call Window::CompleteMainMenuItemsUpdate when the
|
||||
// modifications are done.
|
||||
|
||||
void AddChild(MenuItem* child_item);
|
||||
void AddChild(std::unique_ptr<MenuItem> child_item);
|
||||
void AddChild(MenuItemPtr child_item);
|
||||
void RemoveChild(MenuItem* child_item);
|
||||
MenuItem* child(size_t index);
|
||||
|
||||
virtual void EnableMenuItem(Window& window) = 0;
|
||||
virtual void DisableMenuItem(Window& window) = 0;
|
||||
virtual void SetEnabled(bool enabled) {}
|
||||
|
||||
protected:
|
||||
MenuItem(Type type, const std::string& text, const std::string& hotkey,
|
||||
@@ -64,13 +68,17 @@ class MenuItem {
|
||||
virtual void OnChildAdded(MenuItem* child_item) {}
|
||||
virtual void OnChildRemoved(MenuItem* child_item) {}
|
||||
|
||||
virtual void OnSelected(UIEvent* e);
|
||||
// This MenuItem may be destroyed as a result of the callback, don't do
|
||||
// anything with it after the call.
|
||||
void OnSelected();
|
||||
|
||||
Type type_;
|
||||
MenuItem* parent_item_;
|
||||
std::vector<MenuItemPtr> children_;
|
||||
std::string text_;
|
||||
std::string hotkey_;
|
||||
|
||||
private:
|
||||
std::function<void()> callback_;
|
||||
};
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2015 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -10,9 +10,10 @@
|
||||
#include "xenia/ui/microprofile_drawer.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <cstdint>
|
||||
|
||||
#include "xenia/base/math.h"
|
||||
#include "xenia/ui/window.h"
|
||||
#include "xenia/base/profiling.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
@@ -124,10 +125,8 @@ const uint8_t kFontData[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
|
||||
};
|
||||
|
||||
MicroprofileDrawer::MicroprofileDrawer(xe::ui::Window* window)
|
||||
: window_(window),
|
||||
graphics_context_(window->context()),
|
||||
vertices_(kMaxVertices) {
|
||||
MicroprofileDrawer::MicroprofileDrawer(ImmediateDrawer* immediate_drawer)
|
||||
: immediate_drawer_(immediate_drawer), vertices_(kMaxVertices) {
|
||||
SetupFont();
|
||||
}
|
||||
|
||||
@@ -171,21 +170,21 @@ void MicroprofileDrawer::SetupFont() {
|
||||
}
|
||||
}
|
||||
|
||||
font_texture_ = graphics_context_->immediate_drawer()->CreateTexture(
|
||||
font_texture_ = immediate_drawer_->CreateTexture(
|
||||
kFontTextureWidth, kFontTextureHeight, ImmediateTextureFilter::kNearest,
|
||||
false, reinterpret_cast<uint8_t*>(unpacked));
|
||||
}
|
||||
|
||||
MicroprofileDrawer::~MicroprofileDrawer() = default;
|
||||
|
||||
void MicroprofileDrawer::Begin() {
|
||||
graphics_context_->immediate_drawer()->Begin(window_->scaled_width(),
|
||||
window_->scaled_height());
|
||||
void MicroprofileDrawer::Begin(UIDrawContext& ui_draw_context,
|
||||
uint32_t coordinate_space_width,
|
||||
uint32_t coordinate_space_height) {
|
||||
immediate_drawer_->Begin(ui_draw_context, float(coordinate_space_width),
|
||||
float(coordinate_space_height));
|
||||
}
|
||||
|
||||
void MicroprofileDrawer::End() {
|
||||
Flush();
|
||||
graphics_context_->immediate_drawer()->End();
|
||||
immediate_drawer_->End();
|
||||
}
|
||||
|
||||
ImmediateVertex* MicroprofileDrawer::BeginVertices(
|
||||
@@ -203,7 +202,6 @@ ImmediateVertex* MicroprofileDrawer::BeginVertices(
|
||||
void MicroprofileDrawer::EndVertices() {}
|
||||
|
||||
void MicroprofileDrawer::Flush() {
|
||||
auto drawer = graphics_context_->immediate_drawer();
|
||||
if (!vertex_count_) {
|
||||
return;
|
||||
}
|
||||
@@ -211,15 +209,15 @@ void MicroprofileDrawer::Flush() {
|
||||
ImmediateDrawBatch batch;
|
||||
batch.vertices = vertices_.data();
|
||||
batch.vertex_count = vertex_count_;
|
||||
drawer->BeginDrawBatch(batch);
|
||||
immediate_drawer_->BeginDrawBatch(batch);
|
||||
|
||||
ImmediateDraw draw;
|
||||
draw.primitive_type = current_primitive_type_;
|
||||
draw.count = vertex_count_;
|
||||
draw.texture = font_texture_.get();
|
||||
drawer->Draw(draw);
|
||||
immediate_drawer_->Draw(draw);
|
||||
|
||||
drawer->EndDrawBatch();
|
||||
immediate_drawer_->EndDrawBatch();
|
||||
|
||||
vertex_count_ = 0;
|
||||
}
|
||||
@@ -323,8 +321,8 @@ void MicroprofileDrawer::DrawLine2D(uint32_t count, float* vertices,
|
||||
EndVertices();
|
||||
}
|
||||
|
||||
void MicroprofileDrawer::DrawText(int x, int y, uint32_t color,
|
||||
const char* text, int text_length) {
|
||||
void MicroprofileDrawer::DrawTextString(int x, int y, uint32_t color,
|
||||
const char* text, int text_length) {
|
||||
if (!text_length) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2015 Ben Vanik. All rights reserved. *
|
||||
* Copyright 2022 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
@@ -10,6 +10,7 @@
|
||||
#ifndef XENIA_UI_MICROPROFILE_DRAWER_H_
|
||||
#define XENIA_UI_MICROPROFILE_DRAWER_H_
|
||||
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
@@ -18,9 +19,6 @@
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
class GraphicsContext;
|
||||
class Window;
|
||||
|
||||
class MicroprofileDrawer {
|
||||
public:
|
||||
enum class BoxType {
|
||||
@@ -28,15 +26,17 @@ class MicroprofileDrawer {
|
||||
kFlat = 1, // MicroProfileBoxTypeFlat
|
||||
};
|
||||
|
||||
MicroprofileDrawer(Window* window);
|
||||
~MicroprofileDrawer();
|
||||
// Initially hidden.
|
||||
MicroprofileDrawer(ImmediateDrawer* immediate_drawer);
|
||||
|
||||
void Begin();
|
||||
void Begin(UIDrawContext& ui_draw_context, uint32_t coordinate_space_width,
|
||||
uint32_t coordinate_space_height);
|
||||
void End();
|
||||
void DrawBox(int x0, int y0, int x1, int y1, uint32_t color, BoxType type);
|
||||
void DrawLine2D(uint32_t count, float* vertices, uint32_t color);
|
||||
void DrawText(int x, int y, uint32_t color, const char* text,
|
||||
int text_length);
|
||||
// The name DrawTextString collides with DrawText in Windows.
|
||||
void DrawTextString(int x, int y, uint32_t color, const char* text,
|
||||
int text_length);
|
||||
|
||||
protected:
|
||||
void SetupFont();
|
||||
@@ -46,8 +46,7 @@ class MicroprofileDrawer {
|
||||
void EndVertices();
|
||||
void Flush();
|
||||
|
||||
Window* window_ = nullptr;
|
||||
GraphicsContext* graphics_context_ = nullptr;
|
||||
ImmediateDrawer* immediate_drawer_;
|
||||
|
||||
std::vector<ImmediateVertex> vertices_;
|
||||
int vertex_count_ = 0;
|
||||
|
||||
@@ -18,3 +18,8 @@ project("xenia-ui")
|
||||
filter("platforms:Android-*")
|
||||
-- Exports JNI functions.
|
||||
wholelib("On")
|
||||
|
||||
filter("platforms:Windows")
|
||||
links({
|
||||
"DXGI",
|
||||
})
|
||||
|
||||
1446
src/xenia/ui/presenter.cc
Normal file
1446
src/xenia/ui/presenter.cc
Normal file
File diff suppressed because it is too large
Load Diff
1034
src/xenia/ui/presenter.h
Normal file
1034
src/xenia/ui/presenter.h
Normal file
File diff suppressed because it is too large
Load Diff
76
src/xenia/ui/renderdoc_api.cc
Normal file
76
src/xenia/ui/renderdoc_api.cc
Normal file
@@ -0,0 +1,76 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2021 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include "xenia/ui/renderdoc_api.h"
|
||||
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/base/platform.h"
|
||||
|
||||
#if XE_PLATFORM_LINUX
|
||||
#include <dlfcn.h>
|
||||
#elif XE_PLATFORM_WIN32
|
||||
#include "xenia/base/platform_win.h"
|
||||
#endif
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
bool RenderdocApi::Initialize() {
|
||||
Shutdown();
|
||||
pRENDERDOC_GetAPI get_api = nullptr;
|
||||
// The RenderDoc library should be already loaded into the process if
|
||||
// RenderDoc is attached - this is why RTLD_NOLOAD or GetModuleHandle instead
|
||||
// of LoadLibrary.
|
||||
#if XE_PLATFORM_LINUX
|
||||
#if XE_PLATFORM_ANDROID
|
||||
const char* librenderdoc_name = "libVkLayer_GLES_RenderDoc.so";
|
||||
#else
|
||||
const char* librenderdoc_name = "librenderdoc.so";
|
||||
#endif
|
||||
library_ = dlopen(librenderdoc_name, RTLD_NOW | RTLD_NOLOAD);
|
||||
if (library_) {
|
||||
get_api = pRENDERDOC_GetAPI(dlsym(library_, "RENDERDOC_GetAPI"));
|
||||
}
|
||||
#elif XE_PLATFORM_WIN32
|
||||
library_ = GetModuleHandleA("renderdoc.dll");
|
||||
if (library_) {
|
||||
get_api = pRENDERDOC_GetAPI(
|
||||
GetProcAddress(HMODULE(library_), "RENDERDOC_GetAPI"));
|
||||
}
|
||||
#endif
|
||||
if (!get_api) {
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
// get_api will be null if RenderDoc is not attached, or the API isn't
|
||||
// available on this platform, or there was an error.
|
||||
if (!get_api || !get_api(eRENDERDOC_API_Version_1_0_0, (void**)&api_1_0_0_) ||
|
||||
!api_1_0_0_) {
|
||||
Shutdown();
|
||||
return false;
|
||||
}
|
||||
XELOGI("RenderDoc API initialized");
|
||||
return true;
|
||||
}
|
||||
|
||||
void RenderdocApi::Shutdown() {
|
||||
api_1_0_0_ = nullptr;
|
||||
if (library_) {
|
||||
#if XE_PLATFORM_LINUX
|
||||
dlclose(library_);
|
||||
#endif
|
||||
// Not calling FreeLibrary on Windows as GetModuleHandle doesn't increment
|
||||
// the reference count.
|
||||
library_ = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
39
src/xenia/ui/renderdoc_api.h
Normal file
39
src/xenia/ui/renderdoc_api.h
Normal file
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2021 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_UI_RENDERDOC_API_H_
|
||||
#define XENIA_UI_RENDERDOC_API_H_
|
||||
|
||||
#include "third_party/renderdoc/renderdoc_app.h"
|
||||
|
||||
namespace xe {
|
||||
namespace ui {
|
||||
|
||||
class RenderdocApi {
|
||||
public:
|
||||
RenderdocApi() = default;
|
||||
RenderdocApi(const RenderdocApi& renderdoc_api) = delete;
|
||||
RenderdocApi& operator=(const RenderdocApi& renderdoc_api) = delete;
|
||||
~RenderdocApi() { Shutdown(); }
|
||||
|
||||
bool Initialize();
|
||||
void Shutdown();
|
||||
|
||||
// nullptr if not attached.
|
||||
const RENDERDOC_API_1_0_0* api_1_0_0() const { return api_1_0_0_; }
|
||||
|
||||
private:
|
||||
void* library_ = nullptr;
|
||||
const RENDERDOC_API_1_0_0* api_1_0_0_ = nullptr;
|
||||
};
|
||||
|
||||
} // namespace ui
|
||||
} // namespace xe
|
||||
|
||||
#endif // XENIA_UI_RENDERDOC_API_H_
|
||||
1
src/xenia/ui/shaders/bytecode/.clang-format
generated
1
src/xenia/ui/shaders/bytecode/.clang-format
generated
@@ -1 +1,2 @@
|
||||
DisableFormat: true
|
||||
SortIncludes: false
|
||||
|
||||
1226
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_bilinear_dither_ps.h
generated
Normal file
1226
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_bilinear_dither_ps.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
267
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_bilinear_ps.h
generated
Normal file
267
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_bilinear_ps.h
generated
Normal file
@@ -0,0 +1,267 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
|
||||
//
|
||||
//
|
||||
// Buffer Definitions:
|
||||
//
|
||||
// cbuffer XeBilinearConstants
|
||||
// {
|
||||
//
|
||||
// int2 xe_bilinear_output_offset; // Offset: 0 Size: 8
|
||||
// float2 xe_bilinear_output_size_inv;// Offset: 8 Size: 8
|
||||
//
|
||||
// }
|
||||
//
|
||||
//
|
||||
// Resource Bindings:
|
||||
//
|
||||
// Name Type Format Dim ID HLSL Bind Count
|
||||
// ------------------------------ ---------- ------- ----------- ------- -------------- ------
|
||||
// xe_sampler_linear_clamp sampler NA NA S0 s0 1
|
||||
// xe_texture texture float3 2d T0 t0 1
|
||||
// XeBilinearConstants cbuffer NA NA CB0 cb0 1
|
||||
//
|
||||
//
|
||||
//
|
||||
// Input signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Position 0 xyzw 0 POS float xy
|
||||
//
|
||||
//
|
||||
// Output signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Target 0 xyzw 0 TARGET float xyzw
|
||||
//
|
||||
ps_5_1
|
||||
dcl_globalFlags refactoringAllowed
|
||||
dcl_constantbuffer CB0[0:0][1], immediateIndexed, space=0
|
||||
dcl_sampler S0[0:0], mode_default, space=0
|
||||
dcl_resource_texture2d (float,float,float,float) T0[0:0], space=0
|
||||
dcl_input_ps_siv linear noperspective v0.xy, position
|
||||
dcl_output o0.xyzw
|
||||
dcl_temps 1
|
||||
ftoi r0.xy, v0.xyxx
|
||||
iadd r0.xy, r0.xyxx, -CB0[0][0].xyxx
|
||||
utof r0.xy, r0.xyxx
|
||||
add r0.xy, r0.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
|
||||
mul r0.xy, r0.xyxx, CB0[0][0].zwzz
|
||||
sample_l r0.xyz, r0.xyxx, T0[0].xyzw, S0[0], l(0.000000)
|
||||
mov o0.xyz, r0.xyzx
|
||||
mov o0.w, l(1.000000)
|
||||
ret
|
||||
// Approximately 9 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE guest_output_bilinear_ps[] =
|
||||
{
|
||||
68, 88, 66, 67, 195, 73,
|
||||
6, 106, 30, 227, 35, 134,
|
||||
146, 186, 4, 157, 98, 172,
|
||||
18, 157, 1, 0, 0, 0,
|
||||
204, 4, 0, 0, 5, 0,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
68, 2, 0, 0, 120, 2,
|
||||
0, 0, 172, 2, 0, 0,
|
||||
48, 4, 0, 0, 82, 68,
|
||||
69, 70, 8, 2, 0, 0,
|
||||
1, 0, 0, 0, 236, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
60, 0, 0, 0, 1, 5,
|
||||
255, 255, 0, 5, 0, 0,
|
||||
224, 1, 0, 0, 19, 19,
|
||||
68, 37, 60, 0, 0, 0,
|
||||
24, 0, 0, 0, 40, 0,
|
||||
0, 0, 40, 0, 0, 0,
|
||||
36, 0, 0, 0, 12, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
180, 0, 0, 0, 3, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 204, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
5, 0, 0, 0, 4, 0,
|
||||
0, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 215, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
120, 101, 95, 115, 97, 109,
|
||||
112, 108, 101, 114, 95, 108,
|
||||
105, 110, 101, 97, 114, 95,
|
||||
99, 108, 97, 109, 112, 0,
|
||||
120, 101, 95, 116, 101, 120,
|
||||
116, 117, 114, 101, 0, 88,
|
||||
101, 66, 105, 108, 105, 110,
|
||||
101, 97, 114, 67, 111, 110,
|
||||
115, 116, 97, 110, 116, 115,
|
||||
0, 171, 215, 0, 0, 0,
|
||||
2, 0, 0, 0, 4, 1,
|
||||
0, 0, 16, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 84, 1, 0, 0,
|
||||
0, 0, 0, 0, 8, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
116, 1, 0, 0, 0, 0,
|
||||
0, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
152, 1, 0, 0, 8, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
2, 0, 0, 0, 188, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
255, 255, 255, 255, 0, 0,
|
||||
0, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 120, 101,
|
||||
95, 98, 105, 108, 105, 110,
|
||||
101, 97, 114, 95, 111, 117,
|
||||
116, 112, 117, 116, 95, 111,
|
||||
102, 102, 115, 101, 116, 0,
|
||||
105, 110, 116, 50, 0, 171,
|
||||
1, 0, 2, 0, 1, 0,
|
||||
2, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 110, 1, 0, 0,
|
||||
120, 101, 95, 98, 105, 108,
|
||||
105, 110, 101, 97, 114, 95,
|
||||
111, 117, 116, 112, 117, 116,
|
||||
95, 115, 105, 122, 101, 95,
|
||||
105, 110, 118, 0, 102, 108,
|
||||
111, 97, 116, 50, 0, 171,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
2, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 180, 1, 0, 0,
|
||||
77, 105, 99, 114, 111, 115,
|
||||
111, 102, 116, 32, 40, 82,
|
||||
41, 32, 72, 76, 83, 76,
|
||||
32, 83, 104, 97, 100, 101,
|
||||
114, 32, 67, 111, 109, 112,
|
||||
105, 108, 101, 114, 32, 49,
|
||||
48, 46, 49, 0, 73, 83,
|
||||
71, 78, 44, 0, 0, 0,
|
||||
1, 0, 0, 0, 8, 0,
|
||||
0, 0, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
0, 0, 0, 0, 15, 3,
|
||||
0, 0, 83, 86, 95, 80,
|
||||
111, 115, 105, 116, 105, 111,
|
||||
110, 0, 79, 83, 71, 78,
|
||||
44, 0, 0, 0, 1, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 0, 0,
|
||||
0, 0, 15, 0, 0, 0,
|
||||
83, 86, 95, 84, 97, 114,
|
||||
103, 101, 116, 0, 171, 171,
|
||||
83, 72, 69, 88, 124, 1,
|
||||
0, 0, 81, 0, 0, 0,
|
||||
95, 0, 0, 0, 106, 8,
|
||||
0, 1, 89, 0, 0, 7,
|
||||
70, 142, 48, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
90, 0, 0, 6, 70, 110,
|
||||
48, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
88, 24, 0, 7, 70, 126,
|
||||
48, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 85, 85, 0, 0,
|
||||
0, 0, 0, 0, 100, 32,
|
||||
0, 4, 50, 16, 16, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 101, 0, 0, 3,
|
||||
242, 32, 16, 0, 0, 0,
|
||||
0, 0, 104, 0, 0, 2,
|
||||
1, 0, 0, 0, 27, 0,
|
||||
0, 5, 50, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 16,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
30, 0, 0, 10, 50, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 0, 16, 0, 0, 0,
|
||||
0, 0, 70, 128, 48, 128,
|
||||
65, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 86, 0,
|
||||
0, 5, 50, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 10, 50, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 0, 16, 0, 0, 0,
|
||||
0, 0, 2, 64, 0, 0,
|
||||
0, 0, 0, 63, 0, 0,
|
||||
0, 63, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 56, 0,
|
||||
0, 9, 50, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
230, 138, 48, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 72, 0,
|
||||
0, 13, 114, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 126, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 96, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
0, 0, 54, 0, 0, 5,
|
||||
114, 32, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
0, 0, 0, 0, 54, 0,
|
||||
0, 5, 130, 32, 16, 0,
|
||||
0, 0, 0, 0, 1, 64,
|
||||
0, 0, 0, 0, 128, 63,
|
||||
62, 0, 0, 1, 83, 84,
|
||||
65, 84, 148, 0, 0, 0,
|
||||
9, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
2, 0, 0, 0, 2, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 2, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
2, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0
|
||||
};
|
||||
2227
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_cas_resample_dither_ps.h
generated
Normal file
2227
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_cas_resample_dither_ps.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
1264
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_cas_resample_ps.h
generated
Normal file
1264
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_cas_resample_ps.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
1454
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_cas_sharpen_dither_ps.h
generated
Normal file
1454
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_cas_sharpen_dither_ps.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
491
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_cas_sharpen_ps.h
generated
Normal file
491
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_cas_sharpen_ps.h
generated
Normal file
@@ -0,0 +1,491 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
|
||||
//
|
||||
//
|
||||
// Buffer Definitions:
|
||||
//
|
||||
// cbuffer XeCasSharpenConstants
|
||||
// {
|
||||
//
|
||||
// int2 xe_cas_output_offset; // Offset: 0 Size: 8
|
||||
// float xe_cas_sharpness_post_setup; // Offset: 8 Size: 4
|
||||
//
|
||||
// }
|
||||
//
|
||||
//
|
||||
// Resource Bindings:
|
||||
//
|
||||
// Name Type Format Dim ID HLSL Bind Count
|
||||
// ------------------------------ ---------- ------- ----------- ------- -------------- ------
|
||||
// xe_texture texture float3 2d T0 t0 1
|
||||
// XeCasSharpenConstants cbuffer NA NA CB0 cb0 1
|
||||
//
|
||||
//
|
||||
//
|
||||
// Input signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Position 0 xyzw 0 POS float xy
|
||||
//
|
||||
//
|
||||
// Output signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Target 0 xyzw 0 TARGET float xyzw
|
||||
//
|
||||
ps_5_1
|
||||
dcl_globalFlags refactoringAllowed
|
||||
dcl_constantbuffer CB0[0:0][1], immediateIndexed, space=0
|
||||
dcl_resource_texture2d (float,float,float,float) T0[0:0], space=0
|
||||
dcl_input_ps_siv linear noperspective v0.xy, position
|
||||
dcl_output o0.xyzw
|
||||
dcl_temps 5
|
||||
ftoi r0.xy, v0.xyxx
|
||||
iadd r0.xy, r0.xyxx, -CB0[0][0].xyxx
|
||||
iadd r1.xyzw, r0.xyxy, l(-1, 0, 0, -1)
|
||||
mov r2.xy, r1.zwzz
|
||||
mov r2.zw, l(0,0,0,0)
|
||||
ld r2.xyz, r2.xyzw, T0[0].xyzw
|
||||
mov r1.zw, l(0,0,0,0)
|
||||
ld r1.xyz, r1.xyzw, T0[0].xyzw
|
||||
mov r0.zw, l(0,0,0,0)
|
||||
ld r3.xyz, r0.xyzw, T0[0].xyzw
|
||||
iadd r0.xyzw, r0.xyxy, l(0, 1, 1, 0)
|
||||
mov r4.xy, r0.zwzz
|
||||
mov r4.zw, l(0,0,0,0)
|
||||
ld r4.xyz, r4.xyzw, T0[0].xyzw
|
||||
mov r0.zw, l(0,0,0,0)
|
||||
ld r0.xyz, r0.xyzw, T0[0].xyzw
|
||||
mul r2.xyz, r2.xyzx, r2.xyzx
|
||||
mul r1.xyz, r1.xyzx, r1.xyzx
|
||||
mul r0.w, r3.y, r3.y
|
||||
mul r4.xyz, r4.xyzx, r4.xyzx
|
||||
mul r0.xyz, r0.xyzx, r0.xyzx
|
||||
min r1.w, r0.w, r4.y
|
||||
min r1.w, r1.w, r1.y
|
||||
min r2.w, r0.y, r2.y
|
||||
min r1.w, r1.w, r2.w
|
||||
max r0.w, r0.w, r4.y
|
||||
max r0.w, r0.w, r1.y
|
||||
max r2.w, r0.y, r2.y
|
||||
max r0.w, r0.w, r2.w
|
||||
iadd r2.w, -r0.w, l(0x7ef07ebb)
|
||||
add r0.w, -r0.w, l(1.000000)
|
||||
min r0.w, r0.w, r1.w
|
||||
mul_sat r0.w, r2.w, r0.w
|
||||
ushr r0.w, r0.w, l(1)
|
||||
iadd r0.w, r0.w, l(0x1fbc4639)
|
||||
mul r0.w, r0.w, CB0[0][0].z
|
||||
mad r1.w, r0.w, l(4.000000), l(1.000000)
|
||||
iadd r2.w, -r1.w, l(0x7ef19fff)
|
||||
mad r1.w, -r2.w, r1.w, l(2.000000)
|
||||
mul r1.w, r1.w, r2.w
|
||||
mul r1.xyz, r0.wwww, r1.xyzx
|
||||
mad r1.xyz, r2.xyzx, r0.wwww, r1.xyzx
|
||||
mad r1.xyz, r4.xyzx, r0.wwww, r1.xyzx
|
||||
mad r0.xyz, r0.xyzx, r0.wwww, r1.xyzx
|
||||
mad r0.xyz, r3.xyzx, r3.xyzx, r0.xyzx
|
||||
mul_sat r0.xyz, r1.wwww, r0.xyzx
|
||||
sqrt o0.xyz, r0.xyzx
|
||||
mov o0.w, l(1.000000)
|
||||
ret
|
||||
// Approximately 49 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE guest_output_ffx_cas_sharpen_ps[] =
|
||||
{
|
||||
68, 88, 66, 67, 2, 226,
|
||||
230, 16, 201, 205, 207, 54,
|
||||
189, 193, 184, 163, 140, 156,
|
||||
247, 96, 1, 0, 0, 0,
|
||||
40, 9, 0, 0, 5, 0,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
4, 2, 0, 0, 56, 2,
|
||||
0, 0, 108, 2, 0, 0,
|
||||
140, 8, 0, 0, 82, 68,
|
||||
69, 70, 200, 1, 0, 0,
|
||||
1, 0, 0, 0, 176, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
60, 0, 0, 0, 1, 5,
|
||||
255, 255, 0, 5, 0, 0,
|
||||
160, 1, 0, 0, 19, 19,
|
||||
68, 37, 60, 0, 0, 0,
|
||||
24, 0, 0, 0, 40, 0,
|
||||
0, 0, 40, 0, 0, 0,
|
||||
36, 0, 0, 0, 12, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
140, 0, 0, 0, 2, 0,
|
||||
0, 0, 5, 0, 0, 0,
|
||||
4, 0, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 8, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 151, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 120, 101, 95, 116,
|
||||
101, 120, 116, 117, 114, 101,
|
||||
0, 88, 101, 67, 97, 115,
|
||||
83, 104, 97, 114, 112, 101,
|
||||
110, 67, 111, 110, 115, 116,
|
||||
97, 110, 116, 115, 0, 171,
|
||||
171, 171, 151, 0, 0, 0,
|
||||
2, 0, 0, 0, 200, 0,
|
||||
0, 0, 16, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 24, 1, 0, 0,
|
||||
0, 0, 0, 0, 8, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
52, 1, 0, 0, 0, 0,
|
||||
0, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
88, 1, 0, 0, 8, 0,
|
||||
0, 0, 4, 0, 0, 0,
|
||||
2, 0, 0, 0, 124, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
255, 255, 255, 255, 0, 0,
|
||||
0, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 120, 101,
|
||||
95, 99, 97, 115, 95, 111,
|
||||
117, 116, 112, 117, 116, 95,
|
||||
111, 102, 102, 115, 101, 116,
|
||||
0, 105, 110, 116, 50, 0,
|
||||
171, 171, 1, 0, 2, 0,
|
||||
1, 0, 2, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 45, 1,
|
||||
0, 0, 120, 101, 95, 99,
|
||||
97, 115, 95, 115, 104, 97,
|
||||
114, 112, 110, 101, 115, 115,
|
||||
95, 112, 111, 115, 116, 95,
|
||||
115, 101, 116, 117, 112, 0,
|
||||
102, 108, 111, 97, 116, 0,
|
||||
171, 171, 0, 0, 3, 0,
|
||||
1, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 116, 1,
|
||||
0, 0, 77, 105, 99, 114,
|
||||
111, 115, 111, 102, 116, 32,
|
||||
40, 82, 41, 32, 72, 76,
|
||||
83, 76, 32, 83, 104, 97,
|
||||
100, 101, 114, 32, 67, 111,
|
||||
109, 112, 105, 108, 101, 114,
|
||||
32, 49, 48, 46, 49, 0,
|
||||
73, 83, 71, 78, 44, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
8, 0, 0, 0, 32, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 3, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
15, 3, 0, 0, 83, 86,
|
||||
95, 80, 111, 115, 105, 116,
|
||||
105, 111, 110, 0, 79, 83,
|
||||
71, 78, 44, 0, 0, 0,
|
||||
1, 0, 0, 0, 8, 0,
|
||||
0, 0, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
0, 0, 0, 0, 15, 0,
|
||||
0, 0, 83, 86, 95, 84,
|
||||
97, 114, 103, 101, 116, 0,
|
||||
171, 171, 83, 72, 69, 88,
|
||||
24, 6, 0, 0, 81, 0,
|
||||
0, 0, 134, 1, 0, 0,
|
||||
106, 8, 0, 1, 89, 0,
|
||||
0, 7, 70, 142, 48, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 88, 24, 0, 7,
|
||||
70, 126, 48, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 85, 85,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
100, 32, 0, 4, 50, 16,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 101, 0,
|
||||
0, 3, 242, 32, 16, 0,
|
||||
0, 0, 0, 0, 104, 0,
|
||||
0, 2, 5, 0, 0, 0,
|
||||
27, 0, 0, 5, 50, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 16, 16, 0, 0, 0,
|
||||
0, 0, 30, 0, 0, 10,
|
||||
50, 0, 16, 0, 0, 0,
|
||||
0, 0, 70, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 128,
|
||||
48, 128, 65, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
30, 0, 0, 10, 242, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 4, 16, 0, 0, 0,
|
||||
0, 0, 2, 64, 0, 0,
|
||||
255, 255, 255, 255, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
255, 255, 255, 255, 54, 0,
|
||||
0, 5, 50, 0, 16, 0,
|
||||
2, 0, 0, 0, 230, 10,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
54, 0, 0, 8, 194, 0,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 45, 0, 0, 8,
|
||||
114, 0, 16, 0, 2, 0,
|
||||
0, 0, 70, 14, 16, 0,
|
||||
2, 0, 0, 0, 70, 126,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 54, 0,
|
||||
0, 8, 194, 0, 16, 0,
|
||||
1, 0, 0, 0, 2, 64,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
45, 0, 0, 8, 114, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 14, 16, 0, 1, 0,
|
||||
0, 0, 70, 126, 32, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 54, 0, 0, 8,
|
||||
194, 0, 16, 0, 0, 0,
|
||||
0, 0, 2, 64, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 45, 0,
|
||||
0, 8, 114, 0, 16, 0,
|
||||
3, 0, 0, 0, 70, 14,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 126, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
30, 0, 0, 10, 242, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 4, 16, 0, 0, 0,
|
||||
0, 0, 2, 64, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 54, 0,
|
||||
0, 5, 50, 0, 16, 0,
|
||||
4, 0, 0, 0, 230, 10,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
54, 0, 0, 8, 194, 0,
|
||||
16, 0, 4, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 45, 0, 0, 8,
|
||||
114, 0, 16, 0, 4, 0,
|
||||
0, 0, 70, 14, 16, 0,
|
||||
4, 0, 0, 0, 70, 126,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 54, 0,
|
||||
0, 8, 194, 0, 16, 0,
|
||||
0, 0, 0, 0, 2, 64,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
45, 0, 0, 8, 114, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 14, 16, 0, 0, 0,
|
||||
0, 0, 70, 126, 32, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 56, 0, 0, 7,
|
||||
114, 0, 16, 0, 2, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
2, 0, 0, 0, 70, 2,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
56, 0, 0, 7, 114, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 2, 16, 0, 1, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
1, 0, 0, 0, 56, 0,
|
||||
0, 7, 130, 0, 16, 0,
|
||||
0, 0, 0, 0, 26, 0,
|
||||
16, 0, 3, 0, 0, 0,
|
||||
26, 0, 16, 0, 3, 0,
|
||||
0, 0, 56, 0, 0, 7,
|
||||
114, 0, 16, 0, 4, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
4, 0, 0, 0, 70, 2,
|
||||
16, 0, 4, 0, 0, 0,
|
||||
56, 0, 0, 7, 114, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 2, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
0, 0, 0, 0, 51, 0,
|
||||
0, 7, 130, 0, 16, 0,
|
||||
1, 0, 0, 0, 58, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
26, 0, 16, 0, 4, 0,
|
||||
0, 0, 51, 0, 0, 7,
|
||||
130, 0, 16, 0, 1, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
1, 0, 0, 0, 26, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
51, 0, 0, 7, 130, 0,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
26, 0, 16, 0, 0, 0,
|
||||
0, 0, 26, 0, 16, 0,
|
||||
2, 0, 0, 0, 51, 0,
|
||||
0, 7, 130, 0, 16, 0,
|
||||
1, 0, 0, 0, 58, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
58, 0, 16, 0, 2, 0,
|
||||
0, 0, 52, 0, 0, 7,
|
||||
130, 0, 16, 0, 0, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 26, 0,
|
||||
16, 0, 4, 0, 0, 0,
|
||||
52, 0, 0, 7, 130, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
58, 0, 16, 0, 0, 0,
|
||||
0, 0, 26, 0, 16, 0,
|
||||
1, 0, 0, 0, 52, 0,
|
||||
0, 7, 130, 0, 16, 0,
|
||||
2, 0, 0, 0, 26, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
26, 0, 16, 0, 2, 0,
|
||||
0, 0, 52, 0, 0, 7,
|
||||
130, 0, 16, 0, 0, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 58, 0,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
30, 0, 0, 8, 130, 0,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
58, 0, 16, 128, 65, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 64, 0, 0, 187, 126,
|
||||
240, 126, 0, 0, 0, 8,
|
||||
130, 0, 16, 0, 0, 0,
|
||||
0, 0, 58, 0, 16, 128,
|
||||
65, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 64, 0, 0,
|
||||
0, 0, 128, 63, 51, 0,
|
||||
0, 7, 130, 0, 16, 0,
|
||||
0, 0, 0, 0, 58, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
58, 0, 16, 0, 1, 0,
|
||||
0, 0, 56, 32, 0, 7,
|
||||
130, 0, 16, 0, 0, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
2, 0, 0, 0, 58, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
85, 0, 0, 7, 130, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
58, 0, 16, 0, 0, 0,
|
||||
0, 0, 1, 64, 0, 0,
|
||||
1, 0, 0, 0, 30, 0,
|
||||
0, 7, 130, 0, 16, 0,
|
||||
0, 0, 0, 0, 58, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
1, 64, 0, 0, 57, 70,
|
||||
188, 31, 56, 0, 0, 9,
|
||||
130, 0, 16, 0, 0, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 42, 128,
|
||||
48, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 50, 0, 0, 9,
|
||||
130, 0, 16, 0, 1, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 1, 64,
|
||||
0, 0, 0, 0, 128, 64,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
128, 63, 30, 0, 0, 8,
|
||||
130, 0, 16, 0, 2, 0,
|
||||
0, 0, 58, 0, 16, 128,
|
||||
65, 0, 0, 0, 1, 0,
|
||||
0, 0, 1, 64, 0, 0,
|
||||
255, 159, 241, 126, 50, 0,
|
||||
0, 10, 130, 0, 16, 0,
|
||||
1, 0, 0, 0, 58, 0,
|
||||
16, 128, 65, 0, 0, 0,
|
||||
2, 0, 0, 0, 58, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
0, 64, 56, 0, 0, 7,
|
||||
130, 0, 16, 0, 1, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
1, 0, 0, 0, 58, 0,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
56, 0, 0, 7, 114, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
246, 15, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
1, 0, 0, 0, 50, 0,
|
||||
0, 9, 114, 0, 16, 0,
|
||||
1, 0, 0, 0, 70, 2,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
246, 15, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
1, 0, 0, 0, 50, 0,
|
||||
0, 9, 114, 0, 16, 0,
|
||||
1, 0, 0, 0, 70, 2,
|
||||
16, 0, 4, 0, 0, 0,
|
||||
246, 15, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
1, 0, 0, 0, 50, 0,
|
||||
0, 9, 114, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 2,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
246, 15, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
1, 0, 0, 0, 50, 0,
|
||||
0, 9, 114, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 2,
|
||||
16, 0, 3, 0, 0, 0,
|
||||
70, 2, 16, 0, 3, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
0, 0, 0, 0, 56, 32,
|
||||
0, 7, 114, 0, 16, 0,
|
||||
0, 0, 0, 0, 246, 15,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 2, 16, 0, 0, 0,
|
||||
0, 0, 75, 0, 0, 5,
|
||||
114, 32, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
0, 0, 0, 0, 54, 0,
|
||||
0, 5, 130, 32, 16, 0,
|
||||
0, 0, 0, 0, 1, 64,
|
||||
0, 0, 0, 0, 128, 63,
|
||||
62, 0, 0, 1, 83, 84,
|
||||
65, 84, 148, 0, 0, 0,
|
||||
49, 0, 0, 0, 5, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
2, 0, 0, 0, 27, 0,
|
||||
0, 0, 6, 0, 0, 0,
|
||||
1, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
5, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 8, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0
|
||||
};
|
||||
2098
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_fsr_easu_ps.h
generated
Normal file
2098
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_fsr_easu_ps.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
1457
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_fsr_rcas_dither_ps.h
generated
Normal file
1457
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_fsr_rcas_dither_ps.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
498
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_fsr_rcas_ps.h
generated
Normal file
498
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_ffx_fsr_rcas_ps.h
generated
Normal file
@@ -0,0 +1,498 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
|
||||
//
|
||||
//
|
||||
// Buffer Definitions:
|
||||
//
|
||||
// cbuffer XeFsrRcasConstants
|
||||
// {
|
||||
//
|
||||
// int2 xe_fsr_rcas_output_offset; // Offset: 0 Size: 8
|
||||
// float xe_fsr_rcas_sharpness_post_setup;// Offset: 8 Size: 4
|
||||
//
|
||||
// }
|
||||
//
|
||||
//
|
||||
// Resource Bindings:
|
||||
//
|
||||
// Name Type Format Dim ID HLSL Bind Count
|
||||
// ------------------------------ ---------- ------- ----------- ------- -------------- ------
|
||||
// xe_texture texture float3 2d T0 t0 1
|
||||
// XeFsrRcasConstants cbuffer NA NA CB0 cb0 1
|
||||
//
|
||||
//
|
||||
//
|
||||
// Input signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Position 0 xyzw 0 POS float xy
|
||||
//
|
||||
//
|
||||
// Output signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Target 0 xyzw 0 TARGET float xyzw
|
||||
//
|
||||
ps_5_1
|
||||
dcl_globalFlags refactoringAllowed
|
||||
dcl_constantbuffer CB0[0:0][1], immediateIndexed, space=0
|
||||
dcl_resource_texture2d (float,float,float,float) T0[0:0], space=0
|
||||
dcl_input_ps_siv linear noperspective v0.xy, position
|
||||
dcl_output o0.xyzw
|
||||
dcl_temps 9
|
||||
ftoi r0.xy, v0.xyxx
|
||||
iadd r0.xy, r0.xyxx, -CB0[0][0].xyxx
|
||||
iadd r1.xyzw, r0.xyxy, l(-1, 0, 0, -1)
|
||||
mov r2.xy, r1.zwzz
|
||||
mov r2.zw, l(0,0,0,0)
|
||||
ld r2.xyz, r2.xyzw, T0[0].xyzw
|
||||
mov r1.zw, l(0,0,0,0)
|
||||
ld r1.xyz, r1.xyzw, T0[0].xyzw
|
||||
mov r0.zw, l(0,0,0,0)
|
||||
ld r3.xyz, r0.xyzw, T0[0].xyzw
|
||||
iadd r0.xyzw, r0.xyxy, l(0, 1, 1, 0)
|
||||
mov r4.xy, r0.zwzz
|
||||
mov r4.zw, l(0,0,0,0)
|
||||
ld r4.xyz, r4.xyzw, T0[0].xyzw
|
||||
mov r0.zw, l(0,0,0,0)
|
||||
ld r0.xyz, r0.xyzw, T0[0].xyzw
|
||||
min r5.xyz, r1.xyzx, r4.xyzx
|
||||
min r5.xyz, r2.xyzx, r5.xyzx
|
||||
min r5.xyz, r0.xyzx, r5.xyzx
|
||||
max r6.xyz, r1.xyzx, r4.xyzx
|
||||
max r6.xyz, r2.xyzx, r6.xyzx
|
||||
max r6.xyz, r0.xyzx, r6.xyzx
|
||||
min r7.xyz, r3.xyzx, r5.xyzx
|
||||
mul r8.xyz, r6.xyzx, l(4.000000, 4.000000, 4.000000, 0.000000)
|
||||
rcp r8.xyz, r8.xyzx
|
||||
mul r7.xyz, r7.xyzx, r8.xyzx
|
||||
max r6.xyz, r3.xyzx, r6.xyzx
|
||||
add r6.xyz, -r6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
|
||||
mad r5.xyz, r5.xyzx, l(4.000000, 4.000000, 4.000000, 0.000000), l(-4.000000, -4.000000, -4.000000, 0.000000)
|
||||
rcp r5.xyz, r5.xyzx
|
||||
mul r5.xyz, r5.xyzx, r6.xyzx
|
||||
max r5.xyz, r5.xyzx, -r7.xyzx
|
||||
max r0.w, r5.z, r5.y
|
||||
max r0.w, r0.w, r5.x
|
||||
min r0.w, r0.w, l(0.000000)
|
||||
max r0.w, r0.w, l(-0.187500)
|
||||
mul r0.w, r0.w, CB0[0][0].z
|
||||
mad r1.w, r0.w, l(4.000000), l(1.000000)
|
||||
iadd r2.w, -r1.w, l(0x7ef19fff)
|
||||
mad r1.w, -r2.w, r1.w, l(2.000000)
|
||||
mul r1.w, r1.w, r2.w
|
||||
mul r1.xyz, r1.xyzx, r0.wwww
|
||||
mad r1.xyz, r0.wwww, r2.xyzx, r1.xyzx
|
||||
mad r0.xyz, r0.wwww, r0.xyzx, r1.xyzx
|
||||
mad r0.xyz, r0.wwww, r4.xyzx, r0.xyzx
|
||||
add r0.xyz, r3.xyzx, r0.xyzx
|
||||
mul o0.xyz, r1.wwww, r0.xyzx
|
||||
mov o0.w, l(1.000000)
|
||||
ret
|
||||
// Approximately 49 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE guest_output_ffx_fsr_rcas_ps[] =
|
||||
{
|
||||
68, 88, 66, 67, 185, 223,
|
||||
242, 110, 212, 184, 173, 198,
|
||||
168, 143, 147, 205, 178, 152,
|
||||
68, 191, 1, 0, 0, 0,
|
||||
84, 9, 0, 0, 5, 0,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
8, 2, 0, 0, 60, 2,
|
||||
0, 0, 112, 2, 0, 0,
|
||||
184, 8, 0, 0, 82, 68,
|
||||
69, 70, 204, 1, 0, 0,
|
||||
1, 0, 0, 0, 172, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
60, 0, 0, 0, 1, 5,
|
||||
255, 255, 0, 5, 0, 0,
|
||||
164, 1, 0, 0, 19, 19,
|
||||
68, 37, 60, 0, 0, 0,
|
||||
24, 0, 0, 0, 40, 0,
|
||||
0, 0, 40, 0, 0, 0,
|
||||
36, 0, 0, 0, 12, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
140, 0, 0, 0, 2, 0,
|
||||
0, 0, 5, 0, 0, 0,
|
||||
4, 0, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 8, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 151, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 120, 101, 95, 116,
|
||||
101, 120, 116, 117, 114, 101,
|
||||
0, 88, 101, 70, 115, 114,
|
||||
82, 99, 97, 115, 67, 111,
|
||||
110, 115, 116, 97, 110, 116,
|
||||
115, 0, 171, 171, 151, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
196, 0, 0, 0, 16, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 20, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
8, 0, 0, 0, 2, 0,
|
||||
0, 0, 52, 1, 0, 0,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
255, 255, 255, 255, 0, 0,
|
||||
0, 0, 88, 1, 0, 0,
|
||||
8, 0, 0, 0, 4, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
128, 1, 0, 0, 0, 0,
|
||||
0, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
120, 101, 95, 102, 115, 114,
|
||||
95, 114, 99, 97, 115, 95,
|
||||
111, 117, 116, 112, 117, 116,
|
||||
95, 111, 102, 102, 115, 101,
|
||||
116, 0, 105, 110, 116, 50,
|
||||
0, 171, 1, 0, 2, 0,
|
||||
1, 0, 2, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 46, 1,
|
||||
0, 0, 120, 101, 95, 102,
|
||||
115, 114, 95, 114, 99, 97,
|
||||
115, 95, 115, 104, 97, 114,
|
||||
112, 110, 101, 115, 115, 95,
|
||||
112, 111, 115, 116, 95, 115,
|
||||
101, 116, 117, 112, 0, 102,
|
||||
108, 111, 97, 116, 0, 171,
|
||||
0, 0, 3, 0, 1, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 121, 1, 0, 0,
|
||||
77, 105, 99, 114, 111, 115,
|
||||
111, 102, 116, 32, 40, 82,
|
||||
41, 32, 72, 76, 83, 76,
|
||||
32, 83, 104, 97, 100, 101,
|
||||
114, 32, 67, 111, 109, 112,
|
||||
105, 108, 101, 114, 32, 49,
|
||||
48, 46, 49, 0, 73, 83,
|
||||
71, 78, 44, 0, 0, 0,
|
||||
1, 0, 0, 0, 8, 0,
|
||||
0, 0, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
0, 0, 0, 0, 15, 3,
|
||||
0, 0, 83, 86, 95, 80,
|
||||
111, 115, 105, 116, 105, 111,
|
||||
110, 0, 79, 83, 71, 78,
|
||||
44, 0, 0, 0, 1, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 0, 0,
|
||||
0, 0, 15, 0, 0, 0,
|
||||
83, 86, 95, 84, 97, 114,
|
||||
103, 101, 116, 0, 171, 171,
|
||||
83, 72, 69, 88, 64, 6,
|
||||
0, 0, 81, 0, 0, 0,
|
||||
144, 1, 0, 0, 106, 8,
|
||||
0, 1, 89, 0, 0, 7,
|
||||
70, 142, 48, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
88, 24, 0, 7, 70, 126,
|
||||
48, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 85, 85, 0, 0,
|
||||
0, 0, 0, 0, 100, 32,
|
||||
0, 4, 50, 16, 16, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 101, 0, 0, 3,
|
||||
242, 32, 16, 0, 0, 0,
|
||||
0, 0, 104, 0, 0, 2,
|
||||
9, 0, 0, 0, 27, 0,
|
||||
0, 5, 50, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 16,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
30, 0, 0, 10, 50, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 0, 16, 0, 0, 0,
|
||||
0, 0, 70, 128, 48, 128,
|
||||
65, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 30, 0,
|
||||
0, 10, 242, 0, 16, 0,
|
||||
1, 0, 0, 0, 70, 4,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
2, 64, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
255, 255, 54, 0, 0, 5,
|
||||
50, 0, 16, 0, 2, 0,
|
||||
0, 0, 230, 10, 16, 0,
|
||||
1, 0, 0, 0, 54, 0,
|
||||
0, 8, 194, 0, 16, 0,
|
||||
2, 0, 0, 0, 2, 64,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
45, 0, 0, 8, 114, 0,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
70, 14, 16, 0, 2, 0,
|
||||
0, 0, 70, 126, 32, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 54, 0, 0, 8,
|
||||
194, 0, 16, 0, 1, 0,
|
||||
0, 0, 2, 64, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 45, 0,
|
||||
0, 8, 114, 0, 16, 0,
|
||||
1, 0, 0, 0, 70, 14,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 126, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
54, 0, 0, 8, 194, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 45, 0, 0, 8,
|
||||
114, 0, 16, 0, 3, 0,
|
||||
0, 0, 70, 14, 16, 0,
|
||||
0, 0, 0, 0, 70, 126,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 30, 0,
|
||||
0, 10, 242, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 4,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 54, 0, 0, 5,
|
||||
50, 0, 16, 0, 4, 0,
|
||||
0, 0, 230, 10, 16, 0,
|
||||
0, 0, 0, 0, 54, 0,
|
||||
0, 8, 194, 0, 16, 0,
|
||||
4, 0, 0, 0, 2, 64,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
45, 0, 0, 8, 114, 0,
|
||||
16, 0, 4, 0, 0, 0,
|
||||
70, 14, 16, 0, 4, 0,
|
||||
0, 0, 70, 126, 32, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 54, 0, 0, 8,
|
||||
194, 0, 16, 0, 0, 0,
|
||||
0, 0, 2, 64, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 45, 0,
|
||||
0, 8, 114, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 14,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 126, 32, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
51, 0, 0, 7, 114, 0,
|
||||
16, 0, 5, 0, 0, 0,
|
||||
70, 2, 16, 0, 1, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
4, 0, 0, 0, 51, 0,
|
||||
0, 7, 114, 0, 16, 0,
|
||||
5, 0, 0, 0, 70, 2,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
70, 2, 16, 0, 5, 0,
|
||||
0, 0, 51, 0, 0, 7,
|
||||
114, 0, 16, 0, 5, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
0, 0, 0, 0, 70, 2,
|
||||
16, 0, 5, 0, 0, 0,
|
||||
52, 0, 0, 7, 114, 0,
|
||||
16, 0, 6, 0, 0, 0,
|
||||
70, 2, 16, 0, 1, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
4, 0, 0, 0, 52, 0,
|
||||
0, 7, 114, 0, 16, 0,
|
||||
6, 0, 0, 0, 70, 2,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
70, 2, 16, 0, 6, 0,
|
||||
0, 0, 52, 0, 0, 7,
|
||||
114, 0, 16, 0, 6, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
0, 0, 0, 0, 70, 2,
|
||||
16, 0, 6, 0, 0, 0,
|
||||
51, 0, 0, 7, 114, 0,
|
||||
16, 0, 7, 0, 0, 0,
|
||||
70, 2, 16, 0, 3, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
5, 0, 0, 0, 56, 0,
|
||||
0, 10, 114, 0, 16, 0,
|
||||
8, 0, 0, 0, 70, 2,
|
||||
16, 0, 6, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
128, 64, 0, 0, 128, 64,
|
||||
0, 0, 128, 64, 0, 0,
|
||||
0, 0, 129, 0, 0, 5,
|
||||
114, 0, 16, 0, 8, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
8, 0, 0, 0, 56, 0,
|
||||
0, 7, 114, 0, 16, 0,
|
||||
7, 0, 0, 0, 70, 2,
|
||||
16, 0, 7, 0, 0, 0,
|
||||
70, 2, 16, 0, 8, 0,
|
||||
0, 0, 52, 0, 0, 7,
|
||||
114, 0, 16, 0, 6, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
3, 0, 0, 0, 70, 2,
|
||||
16, 0, 6, 0, 0, 0,
|
||||
0, 0, 0, 11, 114, 0,
|
||||
16, 0, 6, 0, 0, 0,
|
||||
70, 2, 16, 128, 65, 0,
|
||||
0, 0, 6, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
128, 63, 0, 0, 128, 63,
|
||||
0, 0, 128, 63, 0, 0,
|
||||
0, 0, 50, 0, 0, 15,
|
||||
114, 0, 16, 0, 5, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
5, 0, 0, 0, 2, 64,
|
||||
0, 0, 0, 0, 128, 64,
|
||||
0, 0, 128, 64, 0, 0,
|
||||
128, 64, 0, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
128, 192, 0, 0, 128, 192,
|
||||
0, 0, 128, 192, 0, 0,
|
||||
0, 0, 129, 0, 0, 5,
|
||||
114, 0, 16, 0, 5, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
5, 0, 0, 0, 56, 0,
|
||||
0, 7, 114, 0, 16, 0,
|
||||
5, 0, 0, 0, 70, 2,
|
||||
16, 0, 5, 0, 0, 0,
|
||||
70, 2, 16, 0, 6, 0,
|
||||
0, 0, 52, 0, 0, 8,
|
||||
114, 0, 16, 0, 5, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
5, 0, 0, 0, 70, 2,
|
||||
16, 128, 65, 0, 0, 0,
|
||||
7, 0, 0, 0, 52, 0,
|
||||
0, 7, 130, 0, 16, 0,
|
||||
0, 0, 0, 0, 42, 0,
|
||||
16, 0, 5, 0, 0, 0,
|
||||
26, 0, 16, 0, 5, 0,
|
||||
0, 0, 52, 0, 0, 7,
|
||||
130, 0, 16, 0, 0, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 10, 0,
|
||||
16, 0, 5, 0, 0, 0,
|
||||
51, 0, 0, 7, 130, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
58, 0, 16, 0, 0, 0,
|
||||
0, 0, 1, 64, 0, 0,
|
||||
0, 0, 0, 0, 52, 0,
|
||||
0, 7, 130, 0, 16, 0,
|
||||
0, 0, 0, 0, 58, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
64, 190, 56, 0, 0, 9,
|
||||
130, 0, 16, 0, 0, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 42, 128,
|
||||
48, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 50, 0, 0, 9,
|
||||
130, 0, 16, 0, 1, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
0, 0, 0, 0, 1, 64,
|
||||
0, 0, 0, 0, 128, 64,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
128, 63, 30, 0, 0, 8,
|
||||
130, 0, 16, 0, 2, 0,
|
||||
0, 0, 58, 0, 16, 128,
|
||||
65, 0, 0, 0, 1, 0,
|
||||
0, 0, 1, 64, 0, 0,
|
||||
255, 159, 241, 126, 50, 0,
|
||||
0, 10, 130, 0, 16, 0,
|
||||
1, 0, 0, 0, 58, 0,
|
||||
16, 128, 65, 0, 0, 0,
|
||||
2, 0, 0, 0, 58, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
0, 64, 56, 0, 0, 7,
|
||||
130, 0, 16, 0, 1, 0,
|
||||
0, 0, 58, 0, 16, 0,
|
||||
1, 0, 0, 0, 58, 0,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
56, 0, 0, 7, 114, 0,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 2, 16, 0, 1, 0,
|
||||
0, 0, 246, 15, 16, 0,
|
||||
0, 0, 0, 0, 50, 0,
|
||||
0, 9, 114, 0, 16, 0,
|
||||
1, 0, 0, 0, 246, 15,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 2, 16, 0, 2, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
1, 0, 0, 0, 50, 0,
|
||||
0, 9, 114, 0, 16, 0,
|
||||
0, 0, 0, 0, 246, 15,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 2, 16, 0, 0, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
1, 0, 0, 0, 50, 0,
|
||||
0, 9, 114, 0, 16, 0,
|
||||
0, 0, 0, 0, 246, 15,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 2, 16, 0, 4, 0,
|
||||
0, 0, 70, 2, 16, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 7, 114, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 2,
|
||||
16, 0, 3, 0, 0, 0,
|
||||
70, 2, 16, 0, 0, 0,
|
||||
0, 0, 56, 0, 0, 7,
|
||||
114, 32, 16, 0, 0, 0,
|
||||
0, 0, 246, 15, 16, 0,
|
||||
1, 0, 0, 0, 70, 2,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
54, 0, 0, 5, 130, 32,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
1, 64, 0, 0, 0, 0,
|
||||
128, 63, 62, 0, 0, 1,
|
||||
83, 84, 65, 84, 148, 0,
|
||||
0, 0, 49, 0, 0, 0,
|
||||
9, 0, 0, 0, 0, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
28, 0, 0, 0, 4, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 5, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
8, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0
|
||||
};
|
||||
220
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_triangle_strip_rect_vs.h
generated
Normal file
220
src/xenia/ui/shaders/bytecode/d3d12_5_1/guest_output_triangle_strip_rect_vs.h
generated
Normal file
@@ -0,0 +1,220 @@
|
||||
#if 0
|
||||
//
|
||||
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
|
||||
//
|
||||
//
|
||||
// Buffer Definitions:
|
||||
//
|
||||
// cbuffer XeTriangleStripRectConstants
|
||||
// {
|
||||
//
|
||||
// float2 xe_triangle_strip_rect_offset;// Offset: 0 Size: 8
|
||||
// float2 xe_triangle_strip_rect_size;// Offset: 8 Size: 8
|
||||
//
|
||||
// }
|
||||
//
|
||||
//
|
||||
// Resource Bindings:
|
||||
//
|
||||
// Name Type Format Dim ID HLSL Bind Count
|
||||
// ------------------------------ ---------- ------- ----------- ------- -------------- ------
|
||||
// XeTriangleStripRectConstants cbuffer NA NA CB0 cb0 1
|
||||
//
|
||||
//
|
||||
//
|
||||
// Input signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_VertexID 0 x 0 VERTID uint x
|
||||
//
|
||||
//
|
||||
// Output signature:
|
||||
//
|
||||
// Name Index Mask Register SysValue Format Used
|
||||
// -------------------- ----- ------ -------- -------- ------- ------
|
||||
// SV_Position 0 xyzw 0 POS float xyzw
|
||||
//
|
||||
vs_5_1
|
||||
dcl_globalFlags refactoringAllowed
|
||||
dcl_constantbuffer CB0[0:0][1], immediateIndexed, space=0
|
||||
dcl_input_sgv v0.x, vertex_id
|
||||
dcl_output_siv o0.xyzw, position
|
||||
dcl_temps 1
|
||||
ushr r0.y, v0.x, l(1)
|
||||
mov r0.x, v0.x
|
||||
and r0.xy, r0.xyxx, l(1, 1, 0, 0)
|
||||
utof r0.xy, r0.xyxx
|
||||
mad o0.xy, r0.xyxx, CB0[0][0].zwzz, CB0[0][0].xyxx
|
||||
mov o0.zw, l(0,0,0,1.000000)
|
||||
ret
|
||||
// Approximately 7 instruction slots used
|
||||
#endif
|
||||
|
||||
const BYTE guest_output_triangle_strip_rect_vs[] =
|
||||
{
|
||||
68, 88, 66, 67, 67, 209,
|
||||
250, 163, 3, 195, 64, 100,
|
||||
167, 54, 190, 31, 173, 113,
|
||||
120, 163, 1, 0, 0, 0,
|
||||
216, 3, 0, 0, 5, 0,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
184, 1, 0, 0, 236, 1,
|
||||
0, 0, 32, 2, 0, 0,
|
||||
60, 3, 0, 0, 82, 68,
|
||||
69, 70, 124, 1, 0, 0,
|
||||
1, 0, 0, 0, 132, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
60, 0, 0, 0, 1, 5,
|
||||
254, 255, 0, 5, 0, 0,
|
||||
84, 1, 0, 0, 19, 19,
|
||||
68, 37, 60, 0, 0, 0,
|
||||
24, 0, 0, 0, 40, 0,
|
||||
0, 0, 40, 0, 0, 0,
|
||||
36, 0, 0, 0, 12, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
100, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 88, 101,
|
||||
84, 114, 105, 97, 110, 103,
|
||||
108, 101, 83, 116, 114, 105,
|
||||
112, 82, 101, 99, 116, 67,
|
||||
111, 110, 115, 116, 97, 110,
|
||||
116, 115, 0, 171, 171, 171,
|
||||
100, 0, 0, 0, 2, 0,
|
||||
0, 0, 156, 0, 0, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
236, 0, 0, 0, 0, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
2, 0, 0, 0, 20, 1,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
255, 255, 255, 255, 0, 0,
|
||||
0, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 56, 1,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
8, 0, 0, 0, 2, 0,
|
||||
0, 0, 20, 1, 0, 0,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
255, 255, 255, 255, 0, 0,
|
||||
0, 0, 120, 101, 95, 116,
|
||||
114, 105, 97, 110, 103, 108,
|
||||
101, 95, 115, 116, 114, 105,
|
||||
112, 95, 114, 101, 99, 116,
|
||||
95, 111, 102, 102, 115, 101,
|
||||
116, 0, 102, 108, 111, 97,
|
||||
116, 50, 0, 171, 171, 171,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
2, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 10, 1, 0, 0,
|
||||
120, 101, 95, 116, 114, 105,
|
||||
97, 110, 103, 108, 101, 95,
|
||||
115, 116, 114, 105, 112, 95,
|
||||
114, 101, 99, 116, 95, 115,
|
||||
105, 122, 101, 0, 77, 105,
|
||||
99, 114, 111, 115, 111, 102,
|
||||
116, 32, 40, 82, 41, 32,
|
||||
72, 76, 83, 76, 32, 83,
|
||||
104, 97, 100, 101, 114, 32,
|
||||
67, 111, 109, 112, 105, 108,
|
||||
101, 114, 32, 49, 48, 46,
|
||||
49, 0, 73, 83, 71, 78,
|
||||
44, 0, 0, 0, 1, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
32, 0, 0, 0, 0, 0,
|
||||
0, 0, 6, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 1, 0, 0,
|
||||
83, 86, 95, 86, 101, 114,
|
||||
116, 101, 120, 73, 68, 0,
|
||||
79, 83, 71, 78, 44, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
8, 0, 0, 0, 32, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 3, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
15, 0, 0, 0, 83, 86,
|
||||
95, 80, 111, 115, 105, 116,
|
||||
105, 111, 110, 0, 83, 72,
|
||||
69, 88, 20, 1, 0, 0,
|
||||
81, 0, 1, 0, 69, 0,
|
||||
0, 0, 106, 8, 0, 1,
|
||||
89, 0, 0, 7, 70, 142,
|
||||
48, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 96, 0,
|
||||
0, 4, 18, 16, 16, 0,
|
||||
0, 0, 0, 0, 6, 0,
|
||||
0, 0, 103, 0, 0, 4,
|
||||
242, 32, 16, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
104, 0, 0, 2, 1, 0,
|
||||
0, 0, 85, 0, 0, 7,
|
||||
34, 0, 16, 0, 0, 0,
|
||||
0, 0, 10, 16, 16, 0,
|
||||
0, 0, 0, 0, 1, 64,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
54, 0, 0, 5, 18, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
10, 16, 16, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 10,
|
||||
50, 0, 16, 0, 0, 0,
|
||||
0, 0, 70, 0, 16, 0,
|
||||
0, 0, 0, 0, 2, 64,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
86, 0, 0, 5, 50, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 0, 16, 0, 0, 0,
|
||||
0, 0, 50, 0, 0, 13,
|
||||
50, 32, 16, 0, 0, 0,
|
||||
0, 0, 70, 0, 16, 0,
|
||||
0, 0, 0, 0, 230, 138,
|
||||
48, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 70, 128, 48, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
54, 0, 0, 8, 194, 32,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
128, 63, 62, 0, 0, 1,
|
||||
83, 84, 65, 84, 148, 0,
|
||||
0, 0, 7, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
1, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
2, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0
|
||||
};
|
||||
@@ -42,10 +42,10 @@ ret
|
||||
|
||||
const BYTE immediate_ps[] =
|
||||
{
|
||||
68, 88, 66, 67, 204, 46,
|
||||
131, 39, 62, 129, 239, 95,
|
||||
188, 170, 211, 224, 226, 155,
|
||||
212, 68, 1, 0, 0, 0,
|
||||
68, 88, 66, 67, 218, 200,
|
||||
108, 196, 58, 28, 70, 226,
|
||||
98, 137, 89, 199, 218, 58,
|
||||
155, 172, 1, 0, 0, 0,
|
||||
0, 3, 0, 0, 5, 0,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
28, 1, 0, 0, 104, 1,
|
||||
@@ -55,7 +55,7 @@ const BYTE immediate_ps[] =
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
60, 0, 0, 0, 1, 5,
|
||||
255, 255, 0, 5, 4, 0,
|
||||
255, 255, 0, 5, 0, 0,
|
||||
182, 0, 0, 0, 19, 19,
|
||||
68, 37, 60, 0, 0, 0,
|
||||
24, 0, 0, 0, 40, 0,
|
||||
|
||||
213
src/xenia/ui/shaders/bytecode/d3d12_5_1/immediate_vs.h
generated
213
src/xenia/ui/shaders/bytecode/d3d12_5_1/immediate_vs.h
generated
@@ -8,7 +8,7 @@
|
||||
// cbuffer XeImmediateVertexConstants
|
||||
// {
|
||||
//
|
||||
// float2 xe_viewport_size_inv; // Offset: 0 Size: 8
|
||||
// float2 xe_coordinate_space_size_inv;// Offset: 0 Size: 8
|
||||
//
|
||||
// }
|
||||
//
|
||||
@@ -59,21 +59,21 @@ ret
|
||||
|
||||
const BYTE immediate_vs[] =
|
||||
{
|
||||
68, 88, 66, 67, 88, 56,
|
||||
35, 17, 155, 211, 230, 48,
|
||||
9, 16, 27, 220, 163, 42,
|
||||
194, 218, 1, 0, 0, 0,
|
||||
16, 4, 0, 0, 5, 0,
|
||||
68, 88, 66, 67, 141, 232,
|
||||
76, 204, 152, 38, 127, 131,
|
||||
125, 87, 10, 113, 217, 159,
|
||||
27, 143, 1, 0, 0, 0,
|
||||
24, 4, 0, 0, 5, 0,
|
||||
0, 0, 52, 0, 0, 0,
|
||||
100, 1, 0, 0, 212, 1,
|
||||
0, 0, 68, 2, 0, 0,
|
||||
116, 3, 0, 0, 82, 68,
|
||||
69, 70, 40, 1, 0, 0,
|
||||
108, 1, 0, 0, 220, 1,
|
||||
0, 0, 76, 2, 0, 0,
|
||||
124, 3, 0, 0, 82, 68,
|
||||
69, 70, 48, 1, 0, 0,
|
||||
1, 0, 0, 0, 128, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
60, 0, 0, 0, 1, 5,
|
||||
254, 255, 0, 5, 4, 0,
|
||||
0, 1, 0, 0, 19, 19,
|
||||
254, 255, 0, 5, 0, 0,
|
||||
8, 1, 0, 0, 19, 19,
|
||||
68, 37, 60, 0, 0, 0,
|
||||
24, 0, 0, 0, 40, 0,
|
||||
0, 0, 40, 0, 0, 0,
|
||||
@@ -97,122 +97,123 @@ const BYTE immediate_vs[] =
|
||||
0, 0, 192, 0, 0, 0,
|
||||
0, 0, 0, 0, 8, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
220, 0, 0, 0, 0, 0,
|
||||
228, 0, 0, 0, 0, 0,
|
||||
0, 0, 255, 255, 255, 255,
|
||||
0, 0, 0, 0, 255, 255,
|
||||
255, 255, 0, 0, 0, 0,
|
||||
120, 101, 95, 118, 105, 101,
|
||||
119, 112, 111, 114, 116, 95,
|
||||
115, 105, 122, 101, 95, 105,
|
||||
110, 118, 0, 102, 108, 111,
|
||||
97, 116, 50, 0, 1, 0,
|
||||
3, 0, 1, 0, 2, 0,
|
||||
120, 101, 95, 99, 111, 111,
|
||||
114, 100, 105, 110, 97, 116,
|
||||
101, 95, 115, 112, 97, 99,
|
||||
101, 95, 115, 105, 122, 101,
|
||||
95, 105, 110, 118, 0, 102,
|
||||
108, 111, 97, 116, 50, 0,
|
||||
1, 0, 3, 0, 1, 0,
|
||||
2, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 221, 0, 0, 0,
|
||||
77, 105, 99, 114, 111, 115,
|
||||
111, 102, 116, 32, 40, 82,
|
||||
41, 32, 72, 76, 83, 76,
|
||||
32, 83, 104, 97, 100, 101,
|
||||
114, 32, 67, 111, 109, 112,
|
||||
105, 108, 101, 114, 32, 49,
|
||||
48, 46, 49, 0, 73, 83,
|
||||
71, 78, 104, 0, 0, 0,
|
||||
3, 0, 0, 0, 8, 0,
|
||||
0, 0, 80, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
213, 0, 0, 0, 77, 105,
|
||||
99, 114, 111, 115, 111, 102,
|
||||
116, 32, 40, 82, 41, 32,
|
||||
72, 76, 83, 76, 32, 83,
|
||||
104, 97, 100, 101, 114, 32,
|
||||
67, 111, 109, 112, 105, 108,
|
||||
101, 114, 32, 49, 48, 46,
|
||||
49, 0, 73, 83, 71, 78,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
0, 0, 0, 0, 3, 3,
|
||||
0, 0, 89, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
1, 0, 0, 0, 3, 3,
|
||||
0, 0, 98, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
2, 0, 0, 0, 15, 15,
|
||||
0, 0, 80, 79, 83, 73,
|
||||
84, 73, 79, 78, 0, 84,
|
||||
69, 88, 67, 79, 79, 82,
|
||||
68, 0, 67, 79, 76, 79,
|
||||
82, 0, 79, 83, 71, 78,
|
||||
104, 0, 0, 0, 3, 0,
|
||||
0, 0, 8, 0, 0, 0,
|
||||
80, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 3, 0, 0,
|
||||
89, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 12, 0, 0,
|
||||
80, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 0, 0, 0, 1, 0,
|
||||
0, 0, 3, 3, 0, 0,
|
||||
98, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 15, 0, 0, 0,
|
||||
89, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
3, 0, 0, 0, 2, 0,
|
||||
0, 0, 15, 15, 0, 0,
|
||||
80, 79, 83, 73, 84, 73,
|
||||
79, 78, 0, 84, 69, 88,
|
||||
67, 79, 79, 82, 68, 0,
|
||||
67, 79, 76, 79, 82, 0,
|
||||
79, 83, 71, 78, 104, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
8, 0, 0, 0, 80, 0,
|
||||
0, 0, 15, 0, 0, 0,
|
||||
84, 69, 88, 67, 79, 79,
|
||||
82, 68, 0, 83, 86, 95,
|
||||
80, 111, 115, 105, 116, 105,
|
||||
111, 110, 0, 171, 171, 171,
|
||||
83, 72, 69, 88, 40, 1,
|
||||
0, 0, 81, 0, 1, 0,
|
||||
74, 0, 0, 0, 106, 8,
|
||||
0, 1, 89, 0, 0, 7,
|
||||
70, 142, 48, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 3, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
3, 12, 0, 0, 80, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 3, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
15, 0, 0, 0, 89, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
1, 0, 0, 0, 3, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
15, 0, 0, 0, 84, 69,
|
||||
88, 67, 79, 79, 82, 68,
|
||||
0, 83, 86, 95, 80, 111,
|
||||
115, 105, 116, 105, 111, 110,
|
||||
0, 171, 171, 171, 83, 72,
|
||||
69, 88, 40, 1, 0, 0,
|
||||
81, 0, 1, 0, 74, 0,
|
||||
0, 0, 106, 8, 0, 1,
|
||||
89, 0, 0, 7, 70, 142,
|
||||
48, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 95, 0,
|
||||
0, 3, 50, 16, 16, 0,
|
||||
0, 0, 0, 0, 95, 0,
|
||||
0, 3, 50, 16, 16, 0,
|
||||
1, 0, 0, 0, 95, 0,
|
||||
0, 3, 242, 16, 16, 0,
|
||||
2, 0, 0, 0, 101, 0,
|
||||
0, 3, 50, 32, 16, 0,
|
||||
0, 0, 0, 0, 101, 0,
|
||||
0, 3, 242, 32, 16, 0,
|
||||
1, 0, 0, 0, 103, 0,
|
||||
0, 4, 242, 32, 16, 0,
|
||||
2, 0, 0, 0, 1, 0,
|
||||
0, 0, 104, 0, 0, 2,
|
||||
1, 0, 0, 0, 56, 0,
|
||||
0, 9, 50, 0, 16, 0,
|
||||
0, 0, 0, 0, 70, 16,
|
||||
95, 0, 0, 3, 50, 16,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 128, 48, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 50, 0,
|
||||
0, 15, 50, 32, 16, 0,
|
||||
2, 0, 0, 0, 70, 0,
|
||||
95, 0, 0, 3, 50, 16,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
95, 0, 0, 3, 242, 16,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
101, 0, 0, 3, 50, 32,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
0, 64, 0, 0, 0, 192,
|
||||
101, 0, 0, 3, 242, 32,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
103, 0, 0, 4, 242, 32,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
1, 0, 0, 0, 104, 0,
|
||||
0, 2, 1, 0, 0, 0,
|
||||
56, 0, 0, 9, 50, 0,
|
||||
16, 0, 0, 0, 0, 0,
|
||||
70, 16, 16, 0, 0, 0,
|
||||
0, 0, 70, 128, 48, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
50, 0, 0, 15, 50, 32,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
70, 0, 16, 0, 0, 0,
|
||||
0, 0, 2, 64, 0, 0,
|
||||
0, 0, 0, 64, 0, 0,
|
||||
0, 192, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 2, 64,
|
||||
0, 0, 0, 0, 128, 191,
|
||||
0, 0, 128, 63, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
54, 0, 0, 5, 242, 32,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
70, 30, 16, 0, 2, 0,
|
||||
0, 0, 54, 0, 0, 8,
|
||||
194, 32, 16, 0, 2, 0,
|
||||
0, 0, 2, 64, 0, 0,
|
||||
0, 0, 128, 191, 0, 0,
|
||||
128, 63, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 54, 0,
|
||||
0, 5, 242, 32, 16, 0,
|
||||
1, 0, 0, 0, 70, 30,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
54, 0, 0, 8, 194, 32,
|
||||
16, 0, 2, 0, 0, 0,
|
||||
2, 64, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
128, 63, 54, 0, 0, 5,
|
||||
50, 32, 16, 0, 0, 0,
|
||||
0, 0, 70, 16, 16, 0,
|
||||
1, 0, 0, 0, 62, 0,
|
||||
0, 1, 83, 84, 65, 84,
|
||||
148, 0, 0, 0, 6, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
0, 0, 0, 0, 6, 0,
|
||||
0, 0, 2, 0, 0, 0,
|
||||
0, 0, 128, 63, 54, 0,
|
||||
0, 5, 50, 32, 16, 0,
|
||||
0, 0, 0, 0, 70, 16,
|
||||
16, 0, 1, 0, 0, 0,
|
||||
62, 0, 0, 1, 83, 84,
|
||||
65, 84, 148, 0, 0, 0,
|
||||
6, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0,
|
||||
6, 0, 0, 0, 2, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 1, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
@@ -220,7 +221,7 @@ const BYTE immediate_vs[] =
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 3, 0, 0, 0,
|
||||
0, 0, 0, 0, 3, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
@@ -232,5 +233,5 @@ const BYTE immediate_vs[] =
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
0, 0
|
||||
0, 0, 0, 0
|
||||
};
|
||||
|
||||
607
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_dither_frag.h
generated
Normal file
607
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_dither_frag.h
generated
Normal file
@@ -0,0 +1,607 @@
|
||||
// generated from `xb genspirv`
|
||||
// source: guest_output_bilinear_dither.frag
|
||||
const uint8_t guest_output_bilinear_dither_frag[] = {
|
||||
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x0A, 0x00, 0x08, 0x00,
|
||||
0x7B, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x47, 0x4C, 0x53, 0x4C, 0x2E, 0x73, 0x74, 0x64, 0x2E, 0x34, 0x35, 0x30,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x29, 0x01, 0x00, 0x00, 0x3A, 0x01, 0x00, 0x00, 0x10, 0x00, 0x03, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0xA4, 0x01, 0x00, 0x00, 0x04, 0x00, 0x0A, 0x00,
|
||||
0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C, 0x45, 0x5F, 0x63, 0x70,
|
||||
0x70, 0x5F, 0x73, 0x74, 0x79, 0x6C, 0x65, 0x5F, 0x6C, 0x69, 0x6E, 0x65,
|
||||
0x5F, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x00,
|
||||
0x04, 0x00, 0x08, 0x00, 0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C,
|
||||
0x45, 0x5F, 0x69, 0x6E, 0x63, 0x6C, 0x75, 0x64, 0x65, 0x5F, 0x64, 0x69,
|
||||
0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x05, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x06, 0x00, 0x29, 0x01, 0x00, 0x00, 0x67, 0x6C, 0x5F, 0x46,
|
||||
0x72, 0x61, 0x67, 0x43, 0x6F, 0x6F, 0x72, 0x64, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x07, 0x00, 0x30, 0x01, 0x00, 0x00, 0x58, 0x65, 0x42, 0x69,
|
||||
0x6C, 0x69, 0x6E, 0x65, 0x61, 0x72, 0x43, 0x6F, 0x6E, 0x73, 0x74, 0x61,
|
||||
0x6E, 0x74, 0x73, 0x00, 0x06, 0x00, 0x0A, 0x00, 0x30, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x62, 0x69, 0x6C, 0x69, 0x6E,
|
||||
0x65, 0x61, 0x72, 0x5F, 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5F, 0x6F,
|
||||
0x66, 0x66, 0x73, 0x65, 0x74, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0A, 0x00,
|
||||
0x30, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x62,
|
||||
0x69, 0x6C, 0x69, 0x6E, 0x65, 0x61, 0x72, 0x5F, 0x6F, 0x75, 0x74, 0x70,
|
||||
0x75, 0x74, 0x5F, 0x73, 0x69, 0x7A, 0x65, 0x5F, 0x69, 0x6E, 0x76, 0x00,
|
||||
0x05, 0x00, 0x03, 0x00, 0x32, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x06, 0x00, 0x3A, 0x01, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x66,
|
||||
0x72, 0x61, 0x67, 0x5F, 0x63, 0x6F, 0x6C, 0x6F, 0x72, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x05, 0x00, 0x3E, 0x01, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x74,
|
||||
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0x29, 0x01, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
|
||||
0x48, 0x00, 0x05, 0x00, 0x30, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x23, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
|
||||
0x30, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
|
||||
0x18, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00, 0x30, 0x01, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x3A, 0x01, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0x3E, 0x01, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x04, 0x00, 0x3E, 0x01, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x15, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0x1C, 0x00, 0x04, 0x00, 0x13, 0x00, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x84, 0x83, 0x83, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00,
|
||||
0xE7, 0xE6, 0x66, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x16, 0x00, 0x00, 0x00, 0xDE, 0xDD, 0xDD, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0xCC, 0xCB, 0xCB, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||
0xA8, 0xA7, 0xA7, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x19, 0x00, 0x00, 0x00, 0x9F, 0x9E, 0x1E, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x8C, 0x8B, 0x8B, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00,
|
||||
0xB6, 0xB5, 0xB5, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x1C, 0x00, 0x00, 0x00, 0xB2, 0xB1, 0xB1, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x87, 0x86, 0x06, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x9F, 0x9F, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x1F, 0x00, 0x00, 0x00, 0xD2, 0xD1, 0xD1, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x9B, 0x9A, 0x1A, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
|
||||
0x95, 0x94, 0x94, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x22, 0x00, 0x00, 0x00, 0x92, 0x91, 0x91, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0xBA, 0xB9, 0xB9, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00,
|
||||
0xBE, 0xBD, 0xBD, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x8F, 0x8E, 0x0E, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x89, 0x88, 0x08, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
|
||||
0x9E, 0x9D, 0x9D, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0xE5, 0xE4, 0xE4, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x8A, 0x89, 0x89, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0xA3, 0xA2, 0x22, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0xFD, 0xFC, 0xFC, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00, 0xF6, 0xF5, 0xF5, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x00,
|
||||
0x90, 0x8F, 0x8F, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x2E, 0x00, 0x00, 0x00, 0xD1, 0xD0, 0xD0, 0xB8, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00, 0x8B, 0x8A, 0x0A, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00,
|
||||
0xBC, 0xBB, 0xBB, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x31, 0x00, 0x00, 0x00, 0xFE, 0xFD, 0xFD, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0xB7, 0xB6, 0x36, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00,
|
||||
0xA1, 0xA0, 0x20, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x34, 0x00, 0x00, 0x00, 0xBB, 0xBA, 0x3A, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0xAC, 0xAB, 0xAB, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00,
|
||||
0x90, 0x8F, 0x8F, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x37, 0x00, 0x00, 0x00, 0x9D, 0x9C, 0x9C, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0xE6, 0xE5, 0xE5, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00,
|
||||
0xDC, 0xDB, 0xDB, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x3A, 0x00, 0x00, 0x00, 0xC2, 0xC1, 0xC1, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00, 0xA1, 0xA0, 0x20, 0xB8,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00,
|
||||
0xCF, 0xCE, 0x4E, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x00, 0x00, 0xF0, 0xEF, 0xEF, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x9D, 0x9C, 0x9C, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
|
||||
0x82, 0x81, 0x81, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x40, 0x00, 0x00, 0x00, 0x9A, 0x99, 0x99, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0xB9, 0xB8, 0x38, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00,
|
||||
0xD8, 0xD7, 0xD7, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x43, 0x00, 0x00, 0x00, 0xD0, 0xCF, 0xCF, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0xB5, 0xB4, 0xB4, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x45, 0x00, 0x00, 0x00,
|
||||
0xF4, 0xF3, 0xF3, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x46, 0x00, 0x00, 0x00, 0xE8, 0xE7, 0xE7, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x47, 0x00, 0x00, 0x00, 0xE3, 0xE2, 0x62, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00,
|
||||
0xEB, 0xEA, 0x6A, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x49, 0x00, 0x00, 0x00, 0xA9, 0xA8, 0x28, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00, 0xF3, 0xF2, 0x72, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00,
|
||||
0xC8, 0xC7, 0xC7, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x4C, 0x00, 0x00, 0x00, 0xAB, 0xAA, 0x2A, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00, 0xAA, 0xA9, 0xA9, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00,
|
||||
0xD3, 0xD2, 0x52, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x4F, 0x00, 0x00, 0x00, 0xC0, 0xBF, 0xBF, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0xEC, 0xEB, 0xEB, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00,
|
||||
0xDF, 0xDE, 0x5E, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x52, 0x00, 0x00, 0x00, 0xDF, 0xDE, 0x5E, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00, 0xED, 0xEC, 0xEC, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
|
||||
0x8C, 0x8B, 0x8B, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x55, 0x00, 0x00, 0x00, 0x99, 0x98, 0x18, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x56, 0x00, 0x00, 0x00, 0xF9, 0xF8, 0x78, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x57, 0x00, 0x00, 0x00,
|
||||
0xBA, 0xB9, 0xB9, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x58, 0x00, 0x00, 0x00, 0x9B, 0x9A, 0x1A, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00, 0xC9, 0xC8, 0x48, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00,
|
||||
0xD2, 0xD1, 0xD1, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x5B, 0x00, 0x00, 0x00, 0x86, 0x85, 0x85, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0xD5, 0xD4, 0xD4, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x00, 0x00,
|
||||
0xD9, 0xD8, 0x58, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x5E, 0x00, 0x00, 0x00, 0xD0, 0xCF, 0xCF, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0xAB, 0xAA, 0x2A, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
||||
0x91, 0x90, 0x90, 0xB8, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x61, 0x00, 0x00, 0x00, 0xDD, 0xDC, 0xDC, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00, 0xD8, 0xD7, 0xD7, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00,
|
||||
0xB4, 0xB3, 0xB3, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x64, 0x00, 0x00, 0x00, 0xF3, 0xF2, 0x72, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00, 0xAF, 0xAE, 0x2E, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00,
|
||||
0x9C, 0x9B, 0x9B, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x67, 0x00, 0x00, 0x00, 0xBE, 0xBD, 0xBD, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x00, 0x97, 0x96, 0x16, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00,
|
||||
0xF8, 0xF7, 0xF7, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x6A, 0x00, 0x00, 0x00, 0xC7, 0xC6, 0x46, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0xAA, 0xA9, 0xA9, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00,
|
||||
0xFC, 0xFB, 0xFB, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x6D, 0x00, 0x00, 0x00, 0xDA, 0xD9, 0xD9, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x00, 0x00, 0x88, 0x87, 0x87, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x00, 0x00,
|
||||
0x83, 0x82, 0x02, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x70, 0x00, 0x00, 0x00, 0xF4, 0xF3, 0xF3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x71, 0x00, 0x00, 0x00, 0x9E, 0x9D, 0x9D, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0xAD, 0xAC, 0xAC, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x73, 0x00, 0x00, 0x00, 0xB4, 0xB3, 0xB3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00, 0xD6, 0xD5, 0xD5, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00,
|
||||
0xF2, 0xF1, 0xF1, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x76, 0x00, 0x00, 0x00, 0xBF, 0xBE, 0x3E, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0xEF, 0xEE, 0x6E, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00,
|
||||
0xEE, 0xED, 0xED, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x79, 0x00, 0x00, 0x00, 0x96, 0x95, 0x95, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x7A, 0x00, 0x00, 0x00, 0xC5, 0xC4, 0xC4, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x7B, 0x00, 0x00, 0x00,
|
||||
0xD1, 0xD0, 0xD0, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x00, 0x00, 0xC3, 0xC2, 0x42, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x7D, 0x00, 0x00, 0x00, 0x9A, 0x99, 0x99, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00,
|
||||
0x91, 0x90, 0x90, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x7F, 0x00, 0x00, 0x00, 0xC4, 0xC3, 0xC3, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x7E, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00,
|
||||
0xFB, 0xFA, 0x7A, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x82, 0x00, 0x00, 0x00, 0xFE, 0xFD, 0xFD, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x8B, 0x8A, 0x0A, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00,
|
||||
0xE1, 0xE0, 0x60, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x85, 0x00, 0x00, 0x00, 0xA4, 0xA3, 0xA3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00, 0x8D, 0x8C, 0x8C, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00,
|
||||
0xCA, 0xC9, 0xC9, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x88, 0x00, 0x00, 0x00, 0x81, 0x80, 0x00, 0xB7, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, 0xA5, 0xA4, 0xA4, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x8A, 0x00, 0x00, 0x00,
|
||||
0xB0, 0xAF, 0xAF, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x8B, 0x00, 0x00, 0x00, 0xE6, 0xE5, 0xE5, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x00, 0x00, 0x83, 0x82, 0x02, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x00, 0x00,
|
||||
0x9C, 0x9B, 0x9B, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x8E, 0x00, 0x00, 0x00, 0xCB, 0xCA, 0x4A, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xB0, 0xAF, 0xAF, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
|
||||
0x8D, 0x8C, 0x8C, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x91, 0x00, 0x00, 0x00, 0xC2, 0xC1, 0xC1, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00, 0x89, 0x88, 0x08, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x93, 0x00, 0x00, 0x00,
|
||||
0xCB, 0xCA, 0x4A, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x94, 0x00, 0x00, 0x00, 0xAC, 0xAB, 0xAB, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0xCD, 0xCC, 0xCC, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x96, 0x00, 0x00, 0x00,
|
||||
0xFB, 0xFA, 0x7A, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0xF5, 0xF4, 0xF4, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, 0xCA, 0xC9, 0xC9, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x99, 0x00, 0x00, 0x00,
|
||||
0x88, 0x87, 0x87, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x9A, 0x00, 0x00, 0x00, 0xB3, 0xB2, 0x32, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x9B, 0x00, 0x00, 0x00, 0xDC, 0xDB, 0xDB, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00,
|
||||
0x84, 0x83, 0x83, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x9D, 0x00, 0x00, 0x00, 0xDD, 0xDC, 0xDC, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x00, 0x00, 0xEA, 0xE9, 0xE9, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x9F, 0x00, 0x00, 0x00,
|
||||
0xF9, 0xF8, 0x78, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x00, 0x00, 0x00, 0xA3, 0xA2, 0x22, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xA1, 0x00, 0x00, 0x00, 0xDA, 0xD9, 0xD9, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00,
|
||||
0xDB, 0xDA, 0x5A, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA3, 0x00, 0x00, 0x00, 0xE2, 0xE1, 0xE1, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00, 0x8E, 0x8D, 0x8D, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA5, 0x00, 0x00, 0x00,
|
||||
0xE8, 0xE7, 0xE7, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA6, 0x00, 0x00, 0x00, 0xCF, 0xCE, 0x4E, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xA7, 0x00, 0x00, 0x00, 0xEA, 0xE9, 0xE9, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00,
|
||||
0xB3, 0xB2, 0x32, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA9, 0x00, 0x00, 0x00, 0x82, 0x81, 0x81, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00, 0x00, 0xAE, 0xAD, 0xAD, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xAB, 0x00, 0x00, 0x00,
|
||||
0xB9, 0xB8, 0x38, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xAC, 0x00, 0x00, 0x00, 0xC6, 0xC5, 0xC5, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xAD, 0x00, 0x00, 0x00, 0xAD, 0xAC, 0xAC, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0xBB, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xAF, 0x00, 0x00, 0x00, 0xAF, 0xAE, 0x2E, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB0, 0x00, 0x00, 0x00, 0xD4, 0xD3, 0xD3, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xB1, 0x00, 0x00, 0x00,
|
||||
0x98, 0x97, 0x97, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xB2, 0x00, 0x00, 0x00, 0xED, 0xEC, 0xEC, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB3, 0x00, 0x00, 0x00, 0xE5, 0xE4, 0xE4, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xB4, 0x00, 0x00, 0x00,
|
||||
0xC9, 0xC8, 0x48, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xB5, 0x00, 0x00, 0x00, 0xC4, 0xC3, 0xC3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB6, 0x00, 0x00, 0x00, 0x96, 0x95, 0x95, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xB7, 0x00, 0x00, 0x00,
|
||||
0xB1, 0xB0, 0xB0, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xB8, 0x00, 0x00, 0x00, 0xF8, 0xF7, 0xF7, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB9, 0x00, 0x00, 0x00, 0xB8, 0xB7, 0xB7, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xBA, 0x00, 0x00, 0x00,
|
||||
0x93, 0x92, 0x12, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0xF1, 0xF0, 0xF0, 0x38, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xBC, 0x00, 0x00, 0x00, 0xA6, 0xA5, 0xA5, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xBD, 0x00, 0x00, 0x00,
|
||||
0x97, 0x96, 0x16, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xBE, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x7E, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xBF, 0x00, 0x00, 0x00, 0xAE, 0xAD, 0xAD, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00,
|
||||
0xE9, 0xE8, 0x68, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xC1, 0x00, 0x00, 0x00, 0xC7, 0xC6, 0x46, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xC2, 0x00, 0x00, 0x00, 0xB2, 0xB1, 0xB1, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xC3, 0x00, 0x00, 0x00,
|
||||
0xC0, 0xBF, 0xBF, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xC4, 0x00, 0x00, 0x00, 0xE3, 0xE2, 0x62, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xC5, 0x00, 0x00, 0x00, 0xBD, 0xBC, 0xBC, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xC6, 0x00, 0x00, 0x00,
|
||||
0x8F, 0x8E, 0x0E, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xC7, 0x00, 0x00, 0x00, 0x94, 0x93, 0x93, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xC8, 0x00, 0x00, 0x00, 0x85, 0x84, 0x84, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xC9, 0x00, 0x00, 0x00,
|
||||
0x93, 0x92, 0x12, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xCA, 0x00, 0x00, 0x00, 0xEE, 0xED, 0xED, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xCB, 0x00, 0x00, 0x00, 0xE2, 0xE1, 0xE1, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x00,
|
||||
0x98, 0x97, 0x97, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xCD, 0x00, 0x00, 0x00, 0xC3, 0xC2, 0x42, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xCE, 0x00, 0x00, 0x00, 0xCE, 0xCD, 0xCD, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xCF, 0x00, 0x00, 0x00,
|
||||
0xF1, 0xF0, 0xF0, 0xB8, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD0, 0x00, 0x00, 0x00, 0xA0, 0x9F, 0x9F, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xD1, 0x00, 0x00, 0x00, 0xF0, 0xEF, 0xEF, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xD2, 0x00, 0x00, 0x00,
|
||||
0xC1, 0xC0, 0xC0, 0x37, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD3, 0x00, 0x00, 0x00, 0xFC, 0xFB, 0xFB, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xD4, 0x00, 0x00, 0x00, 0xE4, 0xE3, 0xE3, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xD5, 0x00, 0x00, 0x00,
|
||||
0xBB, 0xBA, 0x3A, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD6, 0x00, 0x00, 0x00, 0xCC, 0xCB, 0xCB, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xD7, 0x00, 0x00, 0x00, 0xE0, 0xDF, 0xDF, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xD8, 0x00, 0x00, 0x00,
|
||||
0xA2, 0xA1, 0xA1, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD9, 0x00, 0x00, 0x00, 0xD9, 0xD8, 0x58, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xDA, 0x00, 0x00, 0x00, 0x8A, 0x89, 0x89, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xDB, 0x00, 0x00, 0x00,
|
||||
0xBF, 0xBE, 0x3E, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xDC, 0x00, 0x00, 0x00, 0xD6, 0xD5, 0xD5, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xDD, 0x00, 0x00, 0x00, 0xA5, 0xA4, 0xA4, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xDE, 0x00, 0x00, 0x00,
|
||||
0xFD, 0xFC, 0xFC, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xDF, 0x00, 0x00, 0x00, 0xEC, 0xEB, 0xEB, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0xF7, 0xF6, 0x76, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xE1, 0x00, 0x00, 0x00,
|
||||
0xB5, 0xB4, 0xB4, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xE2, 0x00, 0x00, 0x00, 0xB7, 0xB6, 0x36, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x00, 0x86, 0x85, 0x85, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xE4, 0x00, 0x00, 0x00,
|
||||
0xCE, 0xCD, 0xCD, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xE5, 0x00, 0x00, 0x00, 0xC1, 0xC0, 0xC0, 0xB7, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE6, 0x00, 0x00, 0x00, 0xA8, 0xA7, 0xA7, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xE7, 0x00, 0x00, 0x00,
|
||||
0xD3, 0xD2, 0x52, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xE8, 0x00, 0x00, 0x00, 0xEB, 0xEA, 0x6A, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE9, 0x00, 0x00, 0x00, 0xBC, 0xBB, 0xBB, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x00,
|
||||
0x9F, 0x9E, 0x1E, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xEB, 0x00, 0x00, 0x00, 0xB1, 0xB0, 0xB0, 0xB8, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xEC, 0x00, 0x00, 0x00, 0xEF, 0xEE, 0x6E, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xED, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x3B, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xEE, 0x00, 0x00, 0x00, 0xB8, 0xB7, 0xB7, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xEF, 0x00, 0x00, 0x00, 0xA7, 0xA6, 0x26, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00,
|
||||
0xC6, 0xC5, 0xC5, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xF1, 0x00, 0x00, 0x00, 0xD7, 0xD6, 0x56, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xF2, 0x00, 0x00, 0x00, 0xA4, 0xA3, 0xA3, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF3, 0x00, 0x00, 0x00,
|
||||
0x85, 0x84, 0x84, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xF4, 0x00, 0x00, 0x00, 0xC8, 0xC7, 0xC7, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xF5, 0x00, 0x00, 0x00, 0x94, 0x93, 0x93, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF6, 0x00, 0x00, 0x00,
|
||||
0xBD, 0xBC, 0xBC, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xF7, 0x00, 0x00, 0x00, 0xCD, 0xCC, 0xCC, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0xFA, 0xF9, 0xF9, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF9, 0x00, 0x00, 0x00,
|
||||
0xB6, 0xB5, 0xB5, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xFA, 0x00, 0x00, 0x00, 0x92, 0x91, 0x91, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xFB, 0x00, 0x00, 0x00, 0xD4, 0xD3, 0xD3, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00,
|
||||
0xE7, 0xE6, 0x66, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xFD, 0x00, 0x00, 0x00, 0x99, 0x98, 0x18, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x8E, 0x8D, 0x8D, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
|
||||
0xE1, 0xE0, 0x60, 0xB8, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0x95, 0x94, 0x94, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0xDE, 0xDD, 0xDD, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00,
|
||||
0xA6, 0xA5, 0xA5, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x03, 0x01, 0x00, 0x00, 0x87, 0x86, 0x06, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00, 0xA9, 0xA8, 0x28, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00,
|
||||
0xF6, 0xF5, 0xF5, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x06, 0x01, 0x00, 0x00, 0xDB, 0xDA, 0x5A, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x07, 0x01, 0x00, 0x00, 0xA7, 0xA6, 0x26, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x08, 0x01, 0x00, 0x00,
|
||||
0x81, 0x80, 0x00, 0x37, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x09, 0x01, 0x00, 0x00, 0xFA, 0xF9, 0xF9, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x0A, 0x01, 0x00, 0x00, 0xE9, 0xE8, 0x68, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x0B, 0x01, 0x00, 0x00,
|
||||
0xC5, 0xC4, 0xC4, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x0C, 0x01, 0x00, 0x00, 0xE4, 0xE3, 0xE3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x0D, 0x01, 0x00, 0x00, 0xD5, 0xD4, 0xD4, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x0E, 0x01, 0x00, 0x00,
|
||||
0xA2, 0xA1, 0xA1, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x0F, 0x01, 0x00, 0x00, 0xE0, 0xDF, 0xDF, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0xF7, 0xF6, 0x76, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x11, 0x01, 0x00, 0x00,
|
||||
0xD7, 0xD6, 0x56, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x12, 0x01, 0x00, 0x00, 0xF2, 0xF1, 0xF1, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x13, 0x01, 0x00, 0x00, 0xF5, 0xF4, 0xF4, 0x39,
|
||||
0x2C, 0x00, 0x03, 0x01, 0x13, 0x00, 0x00, 0x00, 0x14, 0x01, 0x00, 0x00,
|
||||
0x14, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
|
||||
0x1A, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00,
|
||||
0x1D, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
|
||||
0x23, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x26, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
|
||||
0x32, 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
|
||||
0x35, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00,
|
||||
0x38, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
|
||||
0x41, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00,
|
||||
0x44, 0x00, 0x00, 0x00, 0x45, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00,
|
||||
0x4A, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00,
|
||||
0x4D, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x4F, 0x00, 0x00, 0x00,
|
||||
0x50, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00,
|
||||
0x53, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00, 0x55, 0x00, 0x00, 0x00,
|
||||
0x56, 0x00, 0x00, 0x00, 0x57, 0x00, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00,
|
||||
0x59, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00, 0x5B, 0x00, 0x00, 0x00,
|
||||
0x5C, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x00,
|
||||
0x62, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00,
|
||||
0x65, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x68, 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00, 0x6A, 0x00, 0x00, 0x00,
|
||||
0x6B, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
|
||||
0x6E, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00,
|
||||
0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00, 0x73, 0x00, 0x00, 0x00,
|
||||
0x74, 0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
|
||||
0x77, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00,
|
||||
0x7A, 0x00, 0x00, 0x00, 0x7B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
|
||||
0x7D, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00,
|
||||
0x83, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00,
|
||||
0x86, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00,
|
||||
0x89, 0x00, 0x00, 0x00, 0x8A, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00,
|
||||
0x8C, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x00, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, 0x91, 0x00, 0x00, 0x00,
|
||||
0x92, 0x00, 0x00, 0x00, 0x93, 0x00, 0x00, 0x00, 0x94, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x96, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0x98, 0x00, 0x00, 0x00, 0x99, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00, 0x00,
|
||||
0x9B, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00, 0x9D, 0x00, 0x00, 0x00,
|
||||
0x9E, 0x00, 0x00, 0x00, 0x9F, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00,
|
||||
0xA1, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00, 0xA3, 0x00, 0x00, 0x00,
|
||||
0xA4, 0x00, 0x00, 0x00, 0xA5, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x00,
|
||||
0xA7, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00, 0xA9, 0x00, 0x00, 0x00,
|
||||
0xAA, 0x00, 0x00, 0x00, 0xAB, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x00, 0x00,
|
||||
0xAD, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00, 0xAF, 0x00, 0x00, 0x00,
|
||||
0xB0, 0x00, 0x00, 0x00, 0xB1, 0x00, 0x00, 0x00, 0xB2, 0x00, 0x00, 0x00,
|
||||
0xB3, 0x00, 0x00, 0x00, 0xB4, 0x00, 0x00, 0x00, 0xB5, 0x00, 0x00, 0x00,
|
||||
0xB6, 0x00, 0x00, 0x00, 0xB7, 0x00, 0x00, 0x00, 0xB8, 0x00, 0x00, 0x00,
|
||||
0xB9, 0x00, 0x00, 0x00, 0xBA, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00,
|
||||
0xBC, 0x00, 0x00, 0x00, 0xBD, 0x00, 0x00, 0x00, 0xBE, 0x00, 0x00, 0x00,
|
||||
0xBF, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0xC1, 0x00, 0x00, 0x00,
|
||||
0xC2, 0x00, 0x00, 0x00, 0xC3, 0x00, 0x00, 0x00, 0xC4, 0x00, 0x00, 0x00,
|
||||
0xC5, 0x00, 0x00, 0x00, 0xC6, 0x00, 0x00, 0x00, 0xC7, 0x00, 0x00, 0x00,
|
||||
0xC8, 0x00, 0x00, 0x00, 0xC9, 0x00, 0x00, 0x00, 0xCA, 0x00, 0x00, 0x00,
|
||||
0xCB, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x00, 0xCD, 0x00, 0x00, 0x00,
|
||||
0xCE, 0x00, 0x00, 0x00, 0xCF, 0x00, 0x00, 0x00, 0xD0, 0x00, 0x00, 0x00,
|
||||
0xD1, 0x00, 0x00, 0x00, 0xD2, 0x00, 0x00, 0x00, 0xD3, 0x00, 0x00, 0x00,
|
||||
0xD4, 0x00, 0x00, 0x00, 0xD5, 0x00, 0x00, 0x00, 0xD6, 0x00, 0x00, 0x00,
|
||||
0xD7, 0x00, 0x00, 0x00, 0xD8, 0x00, 0x00, 0x00, 0xD9, 0x00, 0x00, 0x00,
|
||||
0xDA, 0x00, 0x00, 0x00, 0xDB, 0x00, 0x00, 0x00, 0xDC, 0x00, 0x00, 0x00,
|
||||
0xDD, 0x00, 0x00, 0x00, 0xDE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00,
|
||||
0xE0, 0x00, 0x00, 0x00, 0xE1, 0x00, 0x00, 0x00, 0xE2, 0x00, 0x00, 0x00,
|
||||
0xE3, 0x00, 0x00, 0x00, 0xE4, 0x00, 0x00, 0x00, 0xE5, 0x00, 0x00, 0x00,
|
||||
0xE6, 0x00, 0x00, 0x00, 0xE7, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00,
|
||||
0xE9, 0x00, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x00, 0xEB, 0x00, 0x00, 0x00,
|
||||
0xEC, 0x00, 0x00, 0x00, 0xED, 0x00, 0x00, 0x00, 0xEE, 0x00, 0x00, 0x00,
|
||||
0xEF, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, 0xF1, 0x00, 0x00, 0x00,
|
||||
0xF2, 0x00, 0x00, 0x00, 0xF3, 0x00, 0x00, 0x00, 0xF4, 0x00, 0x00, 0x00,
|
||||
0xF5, 0x00, 0x00, 0x00, 0xF6, 0x00, 0x00, 0x00, 0xF7, 0x00, 0x00, 0x00,
|
||||
0xF8, 0x00, 0x00, 0x00, 0xF9, 0x00, 0x00, 0x00, 0xFA, 0x00, 0x00, 0x00,
|
||||
0xFB, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0xFD, 0x00, 0x00, 0x00,
|
||||
0xFE, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
|
||||
0x01, 0x01, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x03, 0x01, 0x00, 0x00,
|
||||
0x04, 0x01, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00, 0x06, 0x01, 0x00, 0x00,
|
||||
0x07, 0x01, 0x00, 0x00, 0x08, 0x01, 0x00, 0x00, 0x09, 0x01, 0x00, 0x00,
|
||||
0x0A, 0x01, 0x00, 0x00, 0x0B, 0x01, 0x00, 0x00, 0x0C, 0x01, 0x00, 0x00,
|
||||
0x0D, 0x01, 0x00, 0x00, 0x0E, 0x01, 0x00, 0x00, 0x0F, 0x01, 0x00, 0x00,
|
||||
0x10, 0x01, 0x00, 0x00, 0x11, 0x01, 0x00, 0x00, 0x12, 0x01, 0x00, 0x00,
|
||||
0x13, 0x01, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x15, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x19, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x1B, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1F, 0x01, 0x00, 0x00,
|
||||
0x07, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0x21, 0x01, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x27, 0x01, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x28, 0x01, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x27, 0x01, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00,
|
||||
0x28, 0x01, 0x00, 0x00, 0x29, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x2A, 0x01, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00, 0x2D, 0x01, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
|
||||
0x2E, 0x01, 0x00, 0x00, 0x2D, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x04, 0x00, 0x30, 0x01, 0x00, 0x00, 0x2E, 0x01, 0x00, 0x00,
|
||||
0x2A, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x31, 0x01, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x30, 0x01, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00,
|
||||
0x31, 0x01, 0x00, 0x00, 0x32, 0x01, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x2D, 0x01, 0x00, 0x00, 0x33, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x34, 0x01, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x2E, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0x39, 0x01, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x27, 0x01, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x04, 0x00, 0x39, 0x01, 0x00, 0x00, 0x3A, 0x01, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x19, 0x00, 0x09, 0x00, 0x3B, 0x01, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x03, 0x00, 0x3C, 0x01, 0x00, 0x00,
|
||||
0x3B, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x3D, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x3C, 0x01, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00,
|
||||
0x3D, 0x01, 0x00, 0x00, 0x3E, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x42, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x3F, 0x2B, 0x00, 0x04, 0x00, 0x2D, 0x01, 0x00, 0x00,
|
||||
0x45, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0x46, 0x01, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x2A, 0x01, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x4A, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x4C, 0x01, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0x4E, 0x01, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x53, 0x01, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x06, 0x00, 0x4C, 0x01, 0x00, 0x00,
|
||||
0x5D, 0x01, 0x00, 0x00, 0x4A, 0x01, 0x00, 0x00, 0x4A, 0x01, 0x00, 0x00,
|
||||
0x4A, 0x01, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x5E, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3F, 0x2C, 0x00, 0x06, 0x00,
|
||||
0x4C, 0x01, 0x00, 0x00, 0x5F, 0x01, 0x00, 0x00, 0x5E, 0x01, 0x00, 0x00,
|
||||
0x5E, 0x01, 0x00, 0x00, 0x5E, 0x01, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x67, 0x01, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x01, 0x00, 0x00, 0x79, 0x01, 0x00, 0x00,
|
||||
0x42, 0x01, 0x00, 0x00, 0x42, 0x01, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x07, 0x00, 0x00, 0x00, 0x7A, 0x01, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x0E, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0xF8, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00,
|
||||
0x1F, 0x01, 0x00, 0x00, 0x69, 0x01, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x27, 0x01, 0x00, 0x00, 0x2B, 0x01, 0x00, 0x00,
|
||||
0x29, 0x01, 0x00, 0x00, 0x4F, 0x00, 0x07, 0x00, 0x2A, 0x01, 0x00, 0x00,
|
||||
0x2C, 0x01, 0x00, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x2B, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x04, 0x00,
|
||||
0x2E, 0x01, 0x00, 0x00, 0x2F, 0x01, 0x00, 0x00, 0x2C, 0x01, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0x34, 0x01, 0x00, 0x00, 0x35, 0x01, 0x00, 0x00,
|
||||
0x32, 0x01, 0x00, 0x00, 0x33, 0x01, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x2E, 0x01, 0x00, 0x00, 0x36, 0x01, 0x00, 0x00, 0x35, 0x01, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x2E, 0x01, 0x00, 0x00, 0x37, 0x01, 0x00, 0x00,
|
||||
0x2F, 0x01, 0x00, 0x00, 0x36, 0x01, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x07, 0x00, 0x00, 0x00, 0x38, 0x01, 0x00, 0x00, 0x37, 0x01, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x3C, 0x01, 0x00, 0x00, 0x3F, 0x01, 0x00, 0x00,
|
||||
0x3E, 0x01, 0x00, 0x00, 0x70, 0x00, 0x04, 0x00, 0x2A, 0x01, 0x00, 0x00,
|
||||
0x41, 0x01, 0x00, 0x00, 0x38, 0x01, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x01, 0x00, 0x00, 0x44, 0x01, 0x00, 0x00, 0x41, 0x01, 0x00, 0x00,
|
||||
0x79, 0x01, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0x46, 0x01, 0x00, 0x00,
|
||||
0x47, 0x01, 0x00, 0x00, 0x32, 0x01, 0x00, 0x00, 0x45, 0x01, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x2A, 0x01, 0x00, 0x00, 0x48, 0x01, 0x00, 0x00,
|
||||
0x47, 0x01, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x2A, 0x01, 0x00, 0x00,
|
||||
0x49, 0x01, 0x00, 0x00, 0x44, 0x01, 0x00, 0x00, 0x48, 0x01, 0x00, 0x00,
|
||||
0x58, 0x00, 0x07, 0x00, 0x27, 0x01, 0x00, 0x00, 0x4B, 0x01, 0x00, 0x00,
|
||||
0x3F, 0x01, 0x00, 0x00, 0x49, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x4A, 0x01, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0x4E, 0x01, 0x00, 0x00,
|
||||
0x4F, 0x01, 0x00, 0x00, 0x3A, 0x01, 0x00, 0x00, 0x1B, 0x01, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x50, 0x01, 0x00, 0x00,
|
||||
0x4B, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0x4F, 0x01, 0x00, 0x00, 0x50, 0x01, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0x4E, 0x01, 0x00, 0x00, 0x51, 0x01, 0x00, 0x00, 0x3A, 0x01, 0x00, 0x00,
|
||||
0x15, 0x01, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x52, 0x01, 0x00, 0x00, 0x4B, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0x51, 0x01, 0x00, 0x00, 0x52, 0x01, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0x4E, 0x01, 0x00, 0x00, 0x54, 0x01, 0x00, 0x00,
|
||||
0x3A, 0x01, 0x00, 0x00, 0x53, 0x01, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x55, 0x01, 0x00, 0x00, 0x4B, 0x01, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0x54, 0x01, 0x00, 0x00,
|
||||
0x55, 0x01, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00, 0x27, 0x01, 0x00, 0x00,
|
||||
0x56, 0x01, 0x00, 0x00, 0x3A, 0x01, 0x00, 0x00, 0x4F, 0x00, 0x08, 0x00,
|
||||
0x4C, 0x01, 0x00, 0x00, 0x57, 0x01, 0x00, 0x00, 0x56, 0x01, 0x00, 0x00,
|
||||
0x56, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0xC7, 0x00, 0x05, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||
0x6E, 0x01, 0x00, 0x00, 0x38, 0x01, 0x00, 0x00, 0x7A, 0x01, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x70, 0x01, 0x00, 0x00,
|
||||
0x6E, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x84, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x71, 0x01, 0x00, 0x00, 0x70, 0x01, 0x00, 0x00,
|
||||
0x19, 0x01, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x73, 0x01, 0x00, 0x00, 0x6E, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x74, 0x01, 0x00, 0x00,
|
||||
0x71, 0x01, 0x00, 0x00, 0x73, 0x01, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0x69, 0x01, 0x00, 0x00, 0x14, 0x01, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0x21, 0x01, 0x00, 0x00, 0x75, 0x01, 0x00, 0x00, 0x69, 0x01, 0x00, 0x00,
|
||||
0x74, 0x01, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x76, 0x01, 0x00, 0x00, 0x75, 0x01, 0x00, 0x00, 0x50, 0x00, 0x06, 0x00,
|
||||
0x4C, 0x01, 0x00, 0x00, 0x5B, 0x01, 0x00, 0x00, 0x76, 0x01, 0x00, 0x00,
|
||||
0x76, 0x01, 0x00, 0x00, 0x76, 0x01, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x4C, 0x01, 0x00, 0x00, 0x5C, 0x01, 0x00, 0x00, 0x57, 0x01, 0x00, 0x00,
|
||||
0x5B, 0x01, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x4C, 0x01, 0x00, 0x00,
|
||||
0x60, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00,
|
||||
0x5C, 0x01, 0x00, 0x00, 0x5D, 0x01, 0x00, 0x00, 0x5F, 0x01, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x62, 0x01, 0x00, 0x00,
|
||||
0x60, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0x4F, 0x01, 0x00, 0x00, 0x62, 0x01, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x64, 0x01, 0x00, 0x00, 0x60, 0x01, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0x51, 0x01, 0x00, 0x00,
|
||||
0x64, 0x01, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x66, 0x01, 0x00, 0x00, 0x60, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0x54, 0x01, 0x00, 0x00, 0x66, 0x01, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0x4E, 0x01, 0x00, 0x00, 0x68, 0x01, 0x00, 0x00,
|
||||
0x3A, 0x01, 0x00, 0x00, 0x67, 0x01, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0x68, 0x01, 0x00, 0x00, 0x5E, 0x01, 0x00, 0x00, 0xFD, 0x00, 0x01, 0x00,
|
||||
0x38, 0x00, 0x01, 0x00,
|
||||
};
|
||||
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_dither_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_dither_frag.spv
generated
Normal file
Binary file not shown.
377
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_dither_frag.txt
generated
Normal file
377
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_dither_frag.txt
generated
Normal file
File diff suppressed because one or more lines are too long
132
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_frag.h
generated
Normal file
132
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_frag.h
generated
Normal file
@@ -0,0 +1,132 @@
|
||||
// generated from `xb genspirv`
|
||||
// source: guest_output_bilinear.frag
|
||||
const uint8_t guest_output_bilinear_frag[] = {
|
||||
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x0A, 0x00, 0x08, 0x00,
|
||||
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x47, 0x4C, 0x53, 0x4C, 0x2E, 0x73, 0x74, 0x64, 0x2E, 0x34, 0x35, 0x30,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0D, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x10, 0x00, 0x03, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0xA4, 0x01, 0x00, 0x00, 0x04, 0x00, 0x0A, 0x00,
|
||||
0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C, 0x45, 0x5F, 0x63, 0x70,
|
||||
0x70, 0x5F, 0x73, 0x74, 0x79, 0x6C, 0x65, 0x5F, 0x6C, 0x69, 0x6E, 0x65,
|
||||
0x5F, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x00,
|
||||
0x04, 0x00, 0x08, 0x00, 0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C,
|
||||
0x45, 0x5F, 0x69, 0x6E, 0x63, 0x6C, 0x75, 0x64, 0x65, 0x5F, 0x64, 0x69,
|
||||
0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x05, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x06, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x67, 0x6C, 0x5F, 0x46,
|
||||
0x72, 0x61, 0x67, 0x43, 0x6F, 0x6F, 0x72, 0x64, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x07, 0x00, 0x14, 0x00, 0x00, 0x00, 0x58, 0x65, 0x42, 0x69,
|
||||
0x6C, 0x69, 0x6E, 0x65, 0x61, 0x72, 0x43, 0x6F, 0x6E, 0x73, 0x74, 0x61,
|
||||
0x6E, 0x74, 0x73, 0x00, 0x06, 0x00, 0x0A, 0x00, 0x14, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x62, 0x69, 0x6C, 0x69, 0x6E,
|
||||
0x65, 0x61, 0x72, 0x5F, 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5F, 0x6F,
|
||||
0x66, 0x66, 0x73, 0x65, 0x74, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0A, 0x00,
|
||||
0x14, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x62,
|
||||
0x69, 0x6C, 0x69, 0x6E, 0x65, 0x61, 0x72, 0x5F, 0x6F, 0x75, 0x74, 0x70,
|
||||
0x75, 0x74, 0x5F, 0x73, 0x69, 0x7A, 0x65, 0x5F, 0x69, 0x6E, 0x76, 0x00,
|
||||
0x05, 0x00, 0x03, 0x00, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x06, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x66,
|
||||
0x72, 0x61, 0x67, 0x5F, 0x63, 0x6F, 0x6C, 0x6F, 0x72, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x05, 0x00, 0x22, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x74,
|
||||
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0x0D, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
|
||||
0x48, 0x00, 0x05, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x23, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
|
||||
0x14, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
|
||||
0x18, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00, 0x14, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x1E, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0x22, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x04, 0x00, 0x22, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x15, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
|
||||
0x0B, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x0B, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x0D, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
|
||||
0x0E, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x15, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00,
|
||||
0x11, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x04, 0x00,
|
||||
0x14, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x14, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00,
|
||||
0x16, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x11, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x18, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x12, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1D, 0x00, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00,
|
||||
0x1D, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x19, 0x00, 0x09, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x1B, 0x00, 0x03, 0x00, 0x20, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x21, 0x00, 0x00, 0x00,
|
||||
0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x33, 0x00, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x0A, 0x00, 0x00, 0x00,
|
||||
0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3F, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
|
||||
0x26, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
|
||||
0x0D, 0x00, 0x00, 0x00, 0x4F, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x10, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x04, 0x00,
|
||||
0x12, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0x18, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
|
||||
0x16, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x12, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00,
|
||||
0x13, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x07, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x20, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
|
||||
0x22, 0x00, 0x00, 0x00, 0x70, 0x00, 0x04, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x0E, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x3F, 0x00, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x2D, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
|
||||
0x58, 0x00, 0x07, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00,
|
||||
0x23, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x2E, 0x00, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0x33, 0x00, 0x00, 0x00,
|
||||
0x34, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0x34, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0x33, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
|
||||
0x36, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x0A, 0x00, 0x00, 0x00,
|
||||
0x38, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0x37, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0x33, 0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0x3A, 0x00, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0x33, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00,
|
||||
0xFD, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00,
|
||||
};
|
||||
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_frag.spv
generated
Normal file
Binary file not shown.
90
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_frag.txt
generated
Normal file
90
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_bilinear_frag.txt
generated
Normal file
@@ -0,0 +1,90 @@
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos Glslang Reference Front End; 10
|
||||
; Bound: 64
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
%1 = OpExtInstImport "GLSL.std.450"
|
||||
OpMemoryModel Logical GLSL450
|
||||
OpEntryPoint Fragment %main "main" %gl_FragCoord %xe_frag_color
|
||||
OpExecutionMode %main OriginUpperLeft
|
||||
OpSource GLSL 420
|
||||
OpSourceExtension "GL_GOOGLE_cpp_style_line_directive"
|
||||
OpSourceExtension "GL_GOOGLE_include_directive"
|
||||
OpName %main "main"
|
||||
OpName %gl_FragCoord "gl_FragCoord"
|
||||
OpName %XeBilinearConstants "XeBilinearConstants"
|
||||
OpMemberName %XeBilinearConstants 0 "xe_bilinear_output_offset"
|
||||
OpMemberName %XeBilinearConstants 1 "xe_bilinear_output_size_inv"
|
||||
OpName %_ ""
|
||||
OpName %xe_frag_color "xe_frag_color"
|
||||
OpName %xe_texture "xe_texture"
|
||||
OpDecorate %gl_FragCoord BuiltIn FragCoord
|
||||
OpMemberDecorate %XeBilinearConstants 0 Offset 16
|
||||
OpMemberDecorate %XeBilinearConstants 1 Offset 24
|
||||
OpDecorate %XeBilinearConstants Block
|
||||
OpDecorate %xe_frag_color Location 0
|
||||
OpDecorate %xe_texture DescriptorSet 0
|
||||
OpDecorate %xe_texture Binding 0
|
||||
%void = OpTypeVoid
|
||||
%3 = OpTypeFunction %void
|
||||
%uint = OpTypeInt 32 0
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Input_v4float = OpTypePointer Input %v4float
|
||||
%gl_FragCoord = OpVariable %_ptr_Input_v4float Input
|
||||
%v2float = OpTypeVector %float 2
|
||||
%int = OpTypeInt 32 1
|
||||
%v2int = OpTypeVector %int 2
|
||||
%XeBilinearConstants = OpTypeStruct %v2int %v2float
|
||||
%_ptr_PushConstant_XeBilinearConstants = OpTypePointer PushConstant %XeBilinearConstants
|
||||
%_ = OpVariable %_ptr_PushConstant_XeBilinearConstants PushConstant
|
||||
%int_0 = OpConstant %int 0
|
||||
%_ptr_PushConstant_v2int = OpTypePointer PushConstant %v2int
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
%xe_frag_color = OpVariable %_ptr_Output_v4float Output
|
||||
%31 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%32 = OpTypeSampledImage %31
|
||||
%_ptr_UniformConstant_32 = OpTypePointer UniformConstant %32
|
||||
%xe_texture = OpVariable %_ptr_UniformConstant_32 UniformConstant
|
||||
%float_0_5 = OpConstant %float 0.5
|
||||
%int_1 = OpConstant %int 1
|
||||
%_ptr_PushConstant_v2float = OpTypePointer PushConstant %v2float
|
||||
%float_0 = OpConstant %float 0
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%_ptr_Output_float = OpTypePointer Output %float
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%float_1 = OpConstant %float 1
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%63 = OpConstantComposite %v2float %float_0_5 %float_0_5
|
||||
%main = OpFunction %void None %3
|
||||
%5 = OpLabel
|
||||
%15 = OpLoad %v4float %gl_FragCoord
|
||||
%16 = OpVectorShuffle %v2float %15 %15 0 1
|
||||
%19 = OpConvertFToS %v2int %16
|
||||
%25 = OpAccessChain %_ptr_PushConstant_v2int %_ %int_0
|
||||
%26 = OpLoad %v2int %25
|
||||
%27 = OpISub %v2int %19 %26
|
||||
%28 = OpBitcast %v2uint %27
|
||||
%35 = OpLoad %32 %xe_texture
|
||||
%37 = OpConvertUToF %v2float %28
|
||||
%40 = OpFAdd %v2float %37 %63
|
||||
%43 = OpAccessChain %_ptr_PushConstant_v2float %_ %int_1
|
||||
%44 = OpLoad %v2float %43
|
||||
%45 = OpFMul %v2float %40 %44
|
||||
%47 = OpImageSampleExplicitLod %v4float %35 %45 Lod %float_0
|
||||
%52 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_0
|
||||
%53 = OpCompositeExtract %float %47 0
|
||||
OpStore %52 %53
|
||||
%55 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_1
|
||||
%56 = OpCompositeExtract %float %47 1
|
||||
OpStore %55 %56
|
||||
%58 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_2
|
||||
%59 = OpCompositeExtract %float %47 2
|
||||
OpStore %58 %59
|
||||
%62 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_3
|
||||
OpStore %62 %float_1
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
1221
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_dither_frag.h
generated
Normal file
1221
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_dither_frag.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_dither_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_dither_frag.spv
generated
Normal file
Binary file not shown.
734
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_dither_frag.txt
generated
Normal file
734
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_dither_frag.txt
generated
Normal file
File diff suppressed because one or more lines are too long
748
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_frag.h
generated
Normal file
748
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_frag.h
generated
Normal file
@@ -0,0 +1,748 @@
|
||||
// generated from `xb genspirv`
|
||||
// source: guest_output_ffx_cas_resample.frag
|
||||
const uint8_t guest_output_ffx_cas_resample_frag[] = {
|
||||
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x0A, 0x00, 0x08, 0x00,
|
||||
0x44, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x47, 0x4C, 0x53, 0x4C, 0x2E, 0x73, 0x74, 0x64, 0x2E, 0x34, 0x35, 0x30,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x9C, 0x08, 0x00, 0x00, 0xC9, 0x08, 0x00, 0x00, 0x10, 0x00, 0x03, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0xA4, 0x01, 0x00, 0x00, 0x04, 0x00, 0x0A, 0x00,
|
||||
0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C, 0x45, 0x5F, 0x63, 0x70,
|
||||
0x70, 0x5F, 0x73, 0x74, 0x79, 0x6C, 0x65, 0x5F, 0x6C, 0x69, 0x6E, 0x65,
|
||||
0x5F, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x00,
|
||||
0x04, 0x00, 0x08, 0x00, 0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C,
|
||||
0x45, 0x5F, 0x69, 0x6E, 0x63, 0x6C, 0x75, 0x64, 0x65, 0x5F, 0x64, 0x69,
|
||||
0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x05, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x05, 0x00, 0x92, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x74,
|
||||
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
|
||||
0x9C, 0x08, 0x00, 0x00, 0x67, 0x6C, 0x5F, 0x46, 0x72, 0x61, 0x67, 0x43,
|
||||
0x6F, 0x6F, 0x72, 0x64, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x08, 0x00,
|
||||
0xA0, 0x08, 0x00, 0x00, 0x58, 0x65, 0x43, 0x61, 0x73, 0x52, 0x65, 0x73,
|
||||
0x61, 0x6D, 0x70, 0x6C, 0x65, 0x43, 0x6F, 0x6E, 0x73, 0x74, 0x61, 0x6E,
|
||||
0x74, 0x73, 0x00, 0x00, 0x06, 0x00, 0x09, 0x00, 0xA0, 0x08, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x63, 0x61, 0x73, 0x5F, 0x6F,
|
||||
0x75, 0x74, 0x70, 0x75, 0x74, 0x5F, 0x6F, 0x66, 0x66, 0x73, 0x65, 0x74,
|
||||
0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0B, 0x00, 0xA0, 0x08, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x63, 0x61, 0x73, 0x5F, 0x69,
|
||||
0x6E, 0x70, 0x75, 0x74, 0x5F, 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5F,
|
||||
0x73, 0x69, 0x7A, 0x65, 0x5F, 0x72, 0x61, 0x74, 0x69, 0x6F, 0x00, 0x00,
|
||||
0x06, 0x00, 0x0A, 0x00, 0xA0, 0x08, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x78, 0x65, 0x5F, 0x63, 0x61, 0x73, 0x5F, 0x73, 0x68, 0x61, 0x72, 0x70,
|
||||
0x6E, 0x65, 0x73, 0x73, 0x5F, 0x70, 0x6F, 0x73, 0x74, 0x5F, 0x73, 0x65,
|
||||
0x74, 0x75, 0x70, 0x00, 0x05, 0x00, 0x03, 0x00, 0xA2, 0x08, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0xC9, 0x08, 0x00, 0x00,
|
||||
0x78, 0x65, 0x5F, 0x66, 0x72, 0x61, 0x67, 0x5F, 0x63, 0x6F, 0x6C, 0x6F,
|
||||
0x72, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x92, 0x00, 0x00, 0x00,
|
||||
0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0x92, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x04, 0x00, 0x9C, 0x08, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
|
||||
0x0F, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0xA0, 0x08, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
|
||||
0x48, 0x00, 0x05, 0x00, 0xA0, 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x23, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
|
||||
0xA0, 0x08, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00, 0xA0, 0x08, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0xC9, 0x08, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x2C, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
|
||||
0x37, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3F, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00,
|
||||
0x39, 0x46, 0xBC, 0x1F, 0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x72, 0x00, 0x00, 0x00, 0xBB, 0x7E, 0xF0, 0x7E, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0xFF, 0x9F, 0xF1, 0x7E,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x40, 0x19, 0x00, 0x09, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x03, 0x00, 0x90, 0x00, 0x00, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x91, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00,
|
||||
0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x29, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xB5, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xBC, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xC2, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0xCC, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xD2, 0x00, 0x00, 0x00,
|
||||
0xAE, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xD8, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0xDE, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xEA, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
|
||||
0x86, 0x02, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x29, 0x00, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0xC8, 0x02, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xDE, 0x02, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xE9, 0x02, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0xEF, 0x02, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0xF2, 0x06, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x3D, 0x20, 0x00, 0x04, 0x00, 0x9B, 0x08, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00,
|
||||
0x9B, 0x08, 0x00, 0x00, 0x9C, 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x05, 0x00, 0xA0, 0x08, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x86, 0x02, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0xA1, 0x08, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA0, 0x08, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x04, 0x00, 0xA1, 0x08, 0x00, 0x00, 0xA2, 0x08, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0xA3, 0x08, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0xA9, 0x08, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x86, 0x02, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0xAD, 0x08, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x3F, 0x20, 0x00, 0x04, 0x00, 0xBA, 0x08, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0xC8, 0x08, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x04, 0x00, 0xC8, 0x08, 0x00, 0x00, 0xC9, 0x08, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0xD7, 0x08, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0xE6, 0x08, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x86, 0x02, 0x00, 0x00, 0x3D, 0x19, 0x00, 0x00,
|
||||
0xAD, 0x08, 0x00, 0x00, 0xAD, 0x08, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x97, 0x00, 0x00, 0x00, 0x9D, 0x08, 0x00, 0x00,
|
||||
0x9C, 0x08, 0x00, 0x00, 0x4F, 0x00, 0x07, 0x00, 0x86, 0x02, 0x00, 0x00,
|
||||
0x9E, 0x08, 0x00, 0x00, 0x9D, 0x08, 0x00, 0x00, 0x9D, 0x08, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x04, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x9F, 0x08, 0x00, 0x00, 0x9E, 0x08, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xA3, 0x08, 0x00, 0x00, 0xA4, 0x08, 0x00, 0x00,
|
||||
0xA2, 0x08, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xA5, 0x08, 0x00, 0x00, 0xA4, 0x08, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xA6, 0x08, 0x00, 0x00,
|
||||
0x9F, 0x08, 0x00, 0x00, 0xA5, 0x08, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x37, 0x00, 0x00, 0x00, 0xA7, 0x08, 0x00, 0x00, 0xA6, 0x08, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xA9, 0x08, 0x00, 0x00, 0xAA, 0x08, 0x00, 0x00,
|
||||
0xA2, 0x08, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x86, 0x02, 0x00, 0x00, 0xAB, 0x08, 0x00, 0x00, 0xAA, 0x08, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x37, 0x00, 0x00, 0x00, 0xAC, 0x08, 0x00, 0x00,
|
||||
0xAB, 0x08, 0x00, 0x00, 0x8E, 0x00, 0x05, 0x00, 0x86, 0x02, 0x00, 0x00,
|
||||
0xB0, 0x08, 0x00, 0x00, 0xAB, 0x08, 0x00, 0x00, 0xAD, 0x08, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x86, 0x02, 0x00, 0x00, 0xB2, 0x08, 0x00, 0x00,
|
||||
0xB0, 0x08, 0x00, 0x00, 0x3D, 0x19, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x37, 0x00, 0x00, 0x00, 0xB3, 0x08, 0x00, 0x00, 0xB2, 0x08, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xBA, 0x08, 0x00, 0x00, 0xBB, 0x08, 0x00, 0x00,
|
||||
0xA2, 0x08, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xBC, 0x08, 0x00, 0x00, 0xBB, 0x08, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xBD, 0x08, 0x00, 0x00,
|
||||
0xBC, 0x08, 0x00, 0x00, 0xF9, 0x00, 0x02, 0x00, 0xE1, 0x0A, 0x00, 0x00,
|
||||
0xF8, 0x00, 0x02, 0x00, 0xE1, 0x0A, 0x00, 0x00, 0x70, 0x00, 0x04, 0x00,
|
||||
0x86, 0x02, 0x00, 0x00, 0x40, 0x0C, 0x00, 0x00, 0xA7, 0x08, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x86, 0x02, 0x00, 0x00, 0x46, 0x0C, 0x00, 0x00,
|
||||
0xAC, 0x08, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x86, 0x02, 0x00, 0x00,
|
||||
0x47, 0x0C, 0x00, 0x00, 0x40, 0x0C, 0x00, 0x00, 0x46, 0x0C, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x86, 0x02, 0x00, 0x00, 0x4D, 0x0C, 0x00, 0x00,
|
||||
0xB3, 0x08, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x86, 0x02, 0x00, 0x00,
|
||||
0x4E, 0x0C, 0x00, 0x00, 0x47, 0x0C, 0x00, 0x00, 0x4D, 0x0C, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x06, 0x00, 0x86, 0x02, 0x00, 0x00, 0x50, 0x0C, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x4E, 0x0C, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x86, 0x02, 0x00, 0x00, 0x53, 0x0C, 0x00, 0x00,
|
||||
0x4E, 0x0C, 0x00, 0x00, 0x50, 0x0C, 0x00, 0x00, 0x6E, 0x00, 0x04, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00, 0x50, 0x0C, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x5A, 0x0C, 0x00, 0x00,
|
||||
0x55, 0x0C, 0x00, 0x00, 0xB5, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x90, 0x00, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0x92, 0x12, 0x00, 0x00,
|
||||
0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0x93, 0x12, 0x00, 0x00, 0x92, 0x12, 0x00, 0x00, 0x5A, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x5D, 0x0C, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00,
|
||||
0xC2, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0x99, 0x12, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0x9A, 0x12, 0x00, 0x00, 0x99, 0x12, 0x00, 0x00,
|
||||
0x5D, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xA0, 0x12, 0x00, 0x00,
|
||||
0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xA1, 0x12, 0x00, 0x00, 0xA0, 0x12, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x62, 0x0C, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00,
|
||||
0xBC, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0xA7, 0x12, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0xA8, 0x12, 0x00, 0x00, 0xA7, 0x12, 0x00, 0x00,
|
||||
0x62, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x68, 0x0C, 0x00, 0x00,
|
||||
0x55, 0x0C, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0xB5, 0x12, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00, 0xB6, 0x12, 0x00, 0x00,
|
||||
0xB5, 0x12, 0x00, 0x00, 0x68, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x6B, 0x0C, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00, 0xC8, 0x02, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xBC, 0x12, 0x00, 0x00,
|
||||
0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xBD, 0x12, 0x00, 0x00, 0xBC, 0x12, 0x00, 0x00, 0x6B, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x6E, 0x0C, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00,
|
||||
0xD2, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0xC3, 0x12, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0xC4, 0x12, 0x00, 0x00, 0xC3, 0x12, 0x00, 0x00,
|
||||
0x6E, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x71, 0x0C, 0x00, 0x00,
|
||||
0x55, 0x0C, 0x00, 0x00, 0xD8, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0xCA, 0x12, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00, 0xCB, 0x12, 0x00, 0x00,
|
||||
0xCA, 0x12, 0x00, 0x00, 0x71, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x77, 0x0C, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00, 0xDE, 0x02, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xD8, 0x12, 0x00, 0x00,
|
||||
0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xD9, 0x12, 0x00, 0x00, 0xD8, 0x12, 0x00, 0x00, 0x77, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x7A, 0x0C, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00,
|
||||
0xDE, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0xDF, 0x12, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0xE0, 0x12, 0x00, 0x00, 0xDF, 0x12, 0x00, 0x00,
|
||||
0x7A, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x7D, 0x0C, 0x00, 0x00,
|
||||
0x55, 0x0C, 0x00, 0x00, 0xE9, 0x02, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0xE6, 0x12, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00, 0xE7, 0x12, 0x00, 0x00,
|
||||
0xE6, 0x12, 0x00, 0x00, 0x7D, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x80, 0x0C, 0x00, 0x00, 0x55, 0x0C, 0x00, 0x00, 0xEF, 0x02, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xED, 0x12, 0x00, 0x00,
|
||||
0x90, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xEE, 0x12, 0x00, 0x00, 0xED, 0x12, 0x00, 0x00, 0x80, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x93, 0x0C, 0x00, 0x00, 0x93, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x95, 0x0C, 0x00, 0x00, 0x93, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x97, 0x0C, 0x00, 0x00,
|
||||
0x93, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x04, 0x13, 0x00, 0x00, 0x93, 0x0C, 0x00, 0x00,
|
||||
0x93, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x07, 0x13, 0x00, 0x00, 0x95, 0x0C, 0x00, 0x00, 0x95, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0A, 0x13, 0x00, 0x00,
|
||||
0x97, 0x0C, 0x00, 0x00, 0x97, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA0, 0x0C, 0x00, 0x00, 0xA8, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA2, 0x0C, 0x00, 0x00, 0xA8, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xA4, 0x0C, 0x00, 0x00,
|
||||
0xA8, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x0E, 0x13, 0x00, 0x00, 0xA0, 0x0C, 0x00, 0x00,
|
||||
0xA0, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x11, 0x13, 0x00, 0x00, 0xA2, 0x0C, 0x00, 0x00, 0xA2, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x14, 0x13, 0x00, 0x00,
|
||||
0xA4, 0x0C, 0x00, 0x00, 0xA4, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xBA, 0x0C, 0x00, 0x00, 0x9A, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xBC, 0x0C, 0x00, 0x00, 0x9A, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xBE, 0x0C, 0x00, 0x00,
|
||||
0x9A, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x22, 0x13, 0x00, 0x00, 0xBA, 0x0C, 0x00, 0x00,
|
||||
0xBA, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x25, 0x13, 0x00, 0x00, 0xBC, 0x0C, 0x00, 0x00, 0xBC, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x28, 0x13, 0x00, 0x00,
|
||||
0xBE, 0x0C, 0x00, 0x00, 0xBE, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xC7, 0x0C, 0x00, 0x00, 0xA1, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC9, 0x0C, 0x00, 0x00, 0xA1, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xCB, 0x0C, 0x00, 0x00,
|
||||
0xA1, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2C, 0x13, 0x00, 0x00, 0xC7, 0x0C, 0x00, 0x00,
|
||||
0xC7, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x13, 0x00, 0x00, 0xC9, 0x0C, 0x00, 0x00, 0xC9, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x32, 0x13, 0x00, 0x00,
|
||||
0xCB, 0x0C, 0x00, 0x00, 0xCB, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xD4, 0x0C, 0x00, 0x00, 0xB6, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xD6, 0x0C, 0x00, 0x00, 0xB6, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD8, 0x0C, 0x00, 0x00,
|
||||
0xB6, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x36, 0x13, 0x00, 0x00, 0xD4, 0x0C, 0x00, 0x00,
|
||||
0xD4, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x39, 0x13, 0x00, 0x00, 0xD6, 0x0C, 0x00, 0x00, 0xD6, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3C, 0x13, 0x00, 0x00,
|
||||
0xD8, 0x0C, 0x00, 0x00, 0xD8, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xE1, 0x0C, 0x00, 0x00, 0xBD, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xE3, 0x0C, 0x00, 0x00, 0xBD, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xE5, 0x0C, 0x00, 0x00,
|
||||
0xBD, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x40, 0x13, 0x00, 0x00, 0xE1, 0x0C, 0x00, 0x00,
|
||||
0xE1, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x43, 0x13, 0x00, 0x00, 0xE3, 0x0C, 0x00, 0x00, 0xE3, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x46, 0x13, 0x00, 0x00,
|
||||
0xE5, 0x0C, 0x00, 0x00, 0xE5, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xEE, 0x0C, 0x00, 0x00, 0xC4, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xF0, 0x0C, 0x00, 0x00, 0xC4, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xF2, 0x0C, 0x00, 0x00,
|
||||
0xC4, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x4A, 0x13, 0x00, 0x00, 0xEE, 0x0C, 0x00, 0x00,
|
||||
0xEE, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x4D, 0x13, 0x00, 0x00, 0xF0, 0x0C, 0x00, 0x00, 0xF0, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x50, 0x13, 0x00, 0x00,
|
||||
0xF2, 0x0C, 0x00, 0x00, 0xF2, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xFB, 0x0C, 0x00, 0x00, 0xCB, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xFD, 0x0C, 0x00, 0x00, 0xCB, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xFF, 0x0C, 0x00, 0x00,
|
||||
0xCB, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x54, 0x13, 0x00, 0x00, 0xFB, 0x0C, 0x00, 0x00,
|
||||
0xFB, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x57, 0x13, 0x00, 0x00, 0xFD, 0x0C, 0x00, 0x00, 0xFD, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5A, 0x13, 0x00, 0x00,
|
||||
0xFF, 0x0C, 0x00, 0x00, 0xFF, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x08, 0x0D, 0x00, 0x00, 0xE0, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x0D, 0x00, 0x00, 0xE0, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0C, 0x0D, 0x00, 0x00,
|
||||
0xE0, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5E, 0x13, 0x00, 0x00, 0x08, 0x0D, 0x00, 0x00,
|
||||
0x08, 0x0D, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x61, 0x13, 0x00, 0x00, 0x0A, 0x0D, 0x00, 0x00, 0x0A, 0x0D, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x64, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x0D, 0x00, 0x00, 0x0C, 0x0D, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x15, 0x0D, 0x00, 0x00, 0xE7, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x17, 0x0D, 0x00, 0x00, 0xE7, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x19, 0x0D, 0x00, 0x00,
|
||||
0xE7, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x68, 0x13, 0x00, 0x00, 0x15, 0x0D, 0x00, 0x00,
|
||||
0x15, 0x0D, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x6B, 0x13, 0x00, 0x00, 0x17, 0x0D, 0x00, 0x00, 0x17, 0x0D, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x6E, 0x13, 0x00, 0x00,
|
||||
0x19, 0x0D, 0x00, 0x00, 0x19, 0x0D, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2F, 0x0D, 0x00, 0x00, 0xD9, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x31, 0x0D, 0x00, 0x00, 0xD9, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x33, 0x0D, 0x00, 0x00,
|
||||
0xD9, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x7C, 0x13, 0x00, 0x00, 0x2F, 0x0D, 0x00, 0x00,
|
||||
0x2F, 0x0D, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x7F, 0x13, 0x00, 0x00, 0x31, 0x0D, 0x00, 0x00, 0x31, 0x0D, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x82, 0x13, 0x00, 0x00,
|
||||
0x33, 0x0D, 0x00, 0x00, 0x33, 0x0D, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x3C, 0x0D, 0x00, 0x00, 0xEE, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x0D, 0x00, 0x00, 0xEE, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x40, 0x0D, 0x00, 0x00,
|
||||
0xEE, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x86, 0x13, 0x00, 0x00, 0x3C, 0x0D, 0x00, 0x00,
|
||||
0x3C, 0x0D, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x89, 0x13, 0x00, 0x00, 0x3E, 0x0D, 0x00, 0x00, 0x3E, 0x0D, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x8C, 0x13, 0x00, 0x00,
|
||||
0x40, 0x0D, 0x00, 0x00, 0x40, 0x0D, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xAA, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x25, 0x13, 0x00, 0x00, 0x2F, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xAB, 0x13, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x07, 0x13, 0x00, 0x00,
|
||||
0xAA, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xB1, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x39, 0x13, 0x00, 0x00, 0x57, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB2, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xAB, 0x13, 0x00, 0x00, 0xB1, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD4, 0x13, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x25, 0x13, 0x00, 0x00,
|
||||
0x2F, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xD5, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x07, 0x13, 0x00, 0x00, 0xD4, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xDB, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x39, 0x13, 0x00, 0x00, 0x57, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xDC, 0x13, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xD5, 0x13, 0x00, 0x00,
|
||||
0xDB, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xFE, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x13, 0x00, 0x00, 0x39, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xFF, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x11, 0x13, 0x00, 0x00, 0xFE, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x05, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x43, 0x13, 0x00, 0x00,
|
||||
0x61, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x06, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0xFF, 0x13, 0x00, 0x00, 0x05, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x28, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x2F, 0x13, 0x00, 0x00, 0x39, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x29, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x11, 0x13, 0x00, 0x00,
|
||||
0x28, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x43, 0x13, 0x00, 0x00, 0x61, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x30, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x29, 0x14, 0x00, 0x00, 0x2F, 0x14, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x52, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x4D, 0x13, 0x00, 0x00,
|
||||
0x57, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x53, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x13, 0x00, 0x00, 0x52, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x59, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x61, 0x13, 0x00, 0x00, 0x7F, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5A, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x53, 0x14, 0x00, 0x00,
|
||||
0x59, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x7C, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x4D, 0x13, 0x00, 0x00, 0x57, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x7D, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x2F, 0x13, 0x00, 0x00, 0x7C, 0x14, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x83, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x61, 0x13, 0x00, 0x00,
|
||||
0x7F, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x84, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x7D, 0x14, 0x00, 0x00, 0x83, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA6, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x57, 0x13, 0x00, 0x00, 0x61, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xA7, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x39, 0x13, 0x00, 0x00,
|
||||
0xA6, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xAD, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x6B, 0x13, 0x00, 0x00, 0x89, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xAE, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xA7, 0x14, 0x00, 0x00, 0xAD, 0x14, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD0, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x57, 0x13, 0x00, 0x00,
|
||||
0x61, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xD1, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x39, 0x13, 0x00, 0x00, 0xD0, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xD7, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x6B, 0x13, 0x00, 0x00, 0x89, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD8, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xD1, 0x14, 0x00, 0x00,
|
||||
0xD7, 0x14, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xF7, 0x14, 0x00, 0x00, 0xDC, 0x13, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0xF8, 0x14, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0xF7, 0x14, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xF9, 0x14, 0x00, 0x00, 0xF8, 0x14, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x18, 0x15, 0x00, 0x00, 0x30, 0x14, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x19, 0x15, 0x00, 0x00,
|
||||
0x72, 0x00, 0x00, 0x00, 0x18, 0x15, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x1A, 0x15, 0x00, 0x00, 0x19, 0x15, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x39, 0x15, 0x00, 0x00,
|
||||
0x84, 0x14, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x3A, 0x15, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00, 0x39, 0x15, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3B, 0x15, 0x00, 0x00,
|
||||
0x3A, 0x15, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x5A, 0x15, 0x00, 0x00, 0xD8, 0x14, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x5B, 0x15, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0x5A, 0x15, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x5C, 0x15, 0x00, 0x00, 0x5B, 0x15, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x98, 0x0E, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0xDC, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x99, 0x0E, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0xB2, 0x13, 0x00, 0x00, 0x98, 0x0E, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x9B, 0x0E, 0x00, 0x00, 0x99, 0x0E, 0x00, 0x00,
|
||||
0xF9, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x86, 0x15, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00,
|
||||
0x9B, 0x0E, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xB0, 0x0E, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x30, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB1, 0x0E, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x06, 0x14, 0x00, 0x00, 0xB0, 0x0E, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xB3, 0x0E, 0x00, 0x00,
|
||||
0xB1, 0x0E, 0x00, 0x00, 0x1A, 0x15, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB9, 0x15, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0xB3, 0x0E, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC8, 0x0E, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x84, 0x14, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC9, 0x0E, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x5A, 0x14, 0x00, 0x00,
|
||||
0xC8, 0x0E, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xCB, 0x0E, 0x00, 0x00, 0xC9, 0x0E, 0x00, 0x00, 0x3B, 0x15, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00, 0xEC, 0x15, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00, 0xCB, 0x0E, 0x00, 0x00,
|
||||
0x5C, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xE0, 0x0E, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0xD8, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xE1, 0x0E, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0xAE, 0x14, 0x00, 0x00, 0xE0, 0x0E, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xE3, 0x0E, 0x00, 0x00, 0xE1, 0x0E, 0x00, 0x00,
|
||||
0x5C, 0x15, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x1F, 0x16, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00,
|
||||
0xE3, 0x0E, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x4D, 0x16, 0x00, 0x00,
|
||||
0x86, 0x15, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x4F, 0x16, 0x00, 0x00, 0x4D, 0x16, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x51, 0x16, 0x00, 0x00,
|
||||
0x4F, 0x16, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x52, 0x16, 0x00, 0x00, 0x51, 0x16, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x80, 0x16, 0x00, 0x00,
|
||||
0xB9, 0x15, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x82, 0x16, 0x00, 0x00, 0x80, 0x16, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x84, 0x16, 0x00, 0x00,
|
||||
0x82, 0x16, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x85, 0x16, 0x00, 0x00, 0x84, 0x16, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xB3, 0x16, 0x00, 0x00,
|
||||
0xEC, 0x15, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xB5, 0x16, 0x00, 0x00, 0xB3, 0x16, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xB7, 0x16, 0x00, 0x00,
|
||||
0xB5, 0x16, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB8, 0x16, 0x00, 0x00, 0xB7, 0x16, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xE6, 0x16, 0x00, 0x00,
|
||||
0x1F, 0x16, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xE8, 0x16, 0x00, 0x00, 0xE6, 0x16, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xEA, 0x16, 0x00, 0x00,
|
||||
0xE8, 0x16, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xEB, 0x16, 0x00, 0x00, 0xEA, 0x16, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x07, 0x0F, 0x00, 0x00,
|
||||
0xBD, 0x08, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x0D, 0x0F, 0x00, 0x00, 0x52, 0x16, 0x00, 0x00, 0x07, 0x0F, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x16, 0x0F, 0x00, 0x00,
|
||||
0x85, 0x16, 0x00, 0x00, 0x07, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x1F, 0x0F, 0x00, 0x00, 0xB8, 0x16, 0x00, 0x00,
|
||||
0x07, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x28, 0x0F, 0x00, 0x00, 0xEB, 0x16, 0x00, 0x00, 0x07, 0x0F, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2E, 0x0F, 0x00, 0x00,
|
||||
0x53, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2F, 0x0F, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x2E, 0x0F, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x32, 0x0F, 0x00, 0x00, 0x53, 0x0C, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x33, 0x0F, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x32, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x34, 0x0F, 0x00, 0x00, 0x2F, 0x0F, 0x00, 0x00,
|
||||
0x33, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x3B, 0x0F, 0x00, 0x00, 0x2E, 0x0F, 0x00, 0x00, 0x33, 0x0F, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x42, 0x0F, 0x00, 0x00,
|
||||
0x2F, 0x0F, 0x00, 0x00, 0x32, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x47, 0x0F, 0x00, 0x00, 0x2E, 0x0F, 0x00, 0x00,
|
||||
0x32, 0x0F, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x4B, 0x0F, 0x00, 0x00, 0xDC, 0x13, 0x00, 0x00, 0xB2, 0x13, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x4C, 0x0F, 0x00, 0x00,
|
||||
0xF2, 0x06, 0x00, 0x00, 0x4B, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x14, 0x17, 0x00, 0x00, 0x4C, 0x0F, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x15, 0x17, 0x00, 0x00,
|
||||
0x72, 0x00, 0x00, 0x00, 0x14, 0x17, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x16, 0x17, 0x00, 0x00, 0x15, 0x17, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x4F, 0x0F, 0x00, 0x00,
|
||||
0x34, 0x0F, 0x00, 0x00, 0x16, 0x17, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x53, 0x0F, 0x00, 0x00, 0x30, 0x14, 0x00, 0x00,
|
||||
0x06, 0x14, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x54, 0x0F, 0x00, 0x00, 0xF2, 0x06, 0x00, 0x00, 0x53, 0x0F, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x1F, 0x17, 0x00, 0x00,
|
||||
0x54, 0x0F, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x20, 0x17, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00, 0x1F, 0x17, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x21, 0x17, 0x00, 0x00,
|
||||
0x20, 0x17, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x57, 0x0F, 0x00, 0x00, 0x3B, 0x0F, 0x00, 0x00, 0x21, 0x17, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5B, 0x0F, 0x00, 0x00,
|
||||
0x84, 0x14, 0x00, 0x00, 0x5A, 0x14, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5C, 0x0F, 0x00, 0x00, 0xF2, 0x06, 0x00, 0x00,
|
||||
0x5B, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x2A, 0x17, 0x00, 0x00, 0x5C, 0x0F, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x2B, 0x17, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0x2A, 0x17, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x17, 0x00, 0x00, 0x2B, 0x17, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5F, 0x0F, 0x00, 0x00, 0x42, 0x0F, 0x00, 0x00,
|
||||
0x2C, 0x17, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x63, 0x0F, 0x00, 0x00, 0xD8, 0x14, 0x00, 0x00, 0xAE, 0x14, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x64, 0x0F, 0x00, 0x00,
|
||||
0xF2, 0x06, 0x00, 0x00, 0x63, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x35, 0x17, 0x00, 0x00, 0x64, 0x0F, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x36, 0x17, 0x00, 0x00,
|
||||
0x72, 0x00, 0x00, 0x00, 0x35, 0x17, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x37, 0x17, 0x00, 0x00, 0x36, 0x17, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x67, 0x0F, 0x00, 0x00,
|
||||
0x47, 0x0F, 0x00, 0x00, 0x37, 0x17, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x6D, 0x0F, 0x00, 0x00, 0x0D, 0x0F, 0x00, 0x00,
|
||||
0x4F, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x76, 0x0F, 0x00, 0x00, 0x16, 0x0F, 0x00, 0x00, 0x57, 0x0F, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x88, 0x0F, 0x00, 0x00,
|
||||
0x1F, 0x0F, 0x00, 0x00, 0x5F, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x89, 0x0F, 0x00, 0x00, 0x76, 0x0F, 0x00, 0x00,
|
||||
0x88, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x8B, 0x0F, 0x00, 0x00, 0x89, 0x0F, 0x00, 0x00, 0x4F, 0x0F, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xA3, 0x0F, 0x00, 0x00,
|
||||
0x28, 0x0F, 0x00, 0x00, 0x67, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA4, 0x0F, 0x00, 0x00, 0x6D, 0x0F, 0x00, 0x00,
|
||||
0xA3, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA6, 0x0F, 0x00, 0x00, 0xA4, 0x0F, 0x00, 0x00, 0x57, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC1, 0x0F, 0x00, 0x00,
|
||||
0xA4, 0x0F, 0x00, 0x00, 0x5F, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xDC, 0x0F, 0x00, 0x00, 0x89, 0x0F, 0x00, 0x00,
|
||||
0x67, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x19, 0x00, 0x00, 0x6D, 0x0F, 0x00, 0x00, 0x76, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3F, 0x19, 0x00, 0x00,
|
||||
0x3E, 0x19, 0x00, 0x00, 0x88, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x40, 0x19, 0x00, 0x00, 0x3F, 0x19, 0x00, 0x00,
|
||||
0xA3, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x06, 0x10, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x40, 0x19, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x08, 0x10, 0x00, 0x00,
|
||||
0x06, 0x10, 0x00, 0x00, 0x8B, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x0A, 0x10, 0x00, 0x00, 0x08, 0x10, 0x00, 0x00,
|
||||
0xA6, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x0C, 0x10, 0x00, 0x00, 0x0A, 0x10, 0x00, 0x00, 0xC1, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0E, 0x10, 0x00, 0x00,
|
||||
0x0C, 0x10, 0x00, 0x00, 0xDC, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x4E, 0x17, 0x00, 0x00, 0x0E, 0x10, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x4F, 0x17, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x00, 0x00, 0x4E, 0x17, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x50, 0x17, 0x00, 0x00, 0x4F, 0x17, 0x00, 0x00,
|
||||
0x7F, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x53, 0x17, 0x00, 0x00,
|
||||
0x50, 0x17, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x55, 0x17, 0x00, 0x00, 0x53, 0x17, 0x00, 0x00, 0x0E, 0x10, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x57, 0x17, 0x00, 0x00,
|
||||
0x55, 0x17, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x58, 0x17, 0x00, 0x00, 0x50, 0x17, 0x00, 0x00,
|
||||
0x57, 0x17, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x41, 0x19, 0x00, 0x00, 0x04, 0x13, 0x00, 0x00, 0x22, 0x13, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x18, 0x10, 0x00, 0x00,
|
||||
0x6D, 0x0F, 0x00, 0x00, 0x41, 0x19, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x1C, 0x10, 0x00, 0x00, 0x0E, 0x13, 0x00, 0x00,
|
||||
0x76, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x1D, 0x10, 0x00, 0x00, 0x18, 0x10, 0x00, 0x00, 0x1C, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x21, 0x10, 0x00, 0x00,
|
||||
0x40, 0x13, 0x00, 0x00, 0x76, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x22, 0x10, 0x00, 0x00, 0x1D, 0x10, 0x00, 0x00,
|
||||
0x21, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x26, 0x10, 0x00, 0x00, 0x4A, 0x13, 0x00, 0x00, 0x88, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x27, 0x10, 0x00, 0x00,
|
||||
0x22, 0x10, 0x00, 0x00, 0x26, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2B, 0x10, 0x00, 0x00, 0x7C, 0x13, 0x00, 0x00,
|
||||
0x88, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x10, 0x00, 0x00, 0x27, 0x10, 0x00, 0x00, 0x2B, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x30, 0x10, 0x00, 0x00,
|
||||
0x68, 0x13, 0x00, 0x00, 0xA3, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x31, 0x10, 0x00, 0x00, 0x2C, 0x10, 0x00, 0x00,
|
||||
0x30, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x35, 0x10, 0x00, 0x00, 0x86, 0x13, 0x00, 0x00, 0xA3, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x36, 0x10, 0x00, 0x00,
|
||||
0x31, 0x10, 0x00, 0x00, 0x35, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x3A, 0x10, 0x00, 0x00, 0x2C, 0x13, 0x00, 0x00,
|
||||
0x8B, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x3B, 0x10, 0x00, 0x00, 0x36, 0x10, 0x00, 0x00, 0x3A, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3F, 0x10, 0x00, 0x00,
|
||||
0x36, 0x13, 0x00, 0x00, 0xA6, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x40, 0x10, 0x00, 0x00, 0x3B, 0x10, 0x00, 0x00,
|
||||
0x3F, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x44, 0x10, 0x00, 0x00, 0x54, 0x13, 0x00, 0x00, 0xC1, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x45, 0x10, 0x00, 0x00,
|
||||
0x40, 0x10, 0x00, 0x00, 0x44, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x49, 0x10, 0x00, 0x00, 0x5E, 0x13, 0x00, 0x00,
|
||||
0xDC, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x4A, 0x10, 0x00, 0x00, 0x45, 0x10, 0x00, 0x00, 0x49, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x4C, 0x10, 0x00, 0x00,
|
||||
0x4A, 0x10, 0x00, 0x00, 0x58, 0x17, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x66, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0x4C, 0x10, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x42, 0x19, 0x00, 0x00, 0x07, 0x13, 0x00, 0x00, 0x25, 0x13, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x56, 0x10, 0x00, 0x00,
|
||||
0x6D, 0x0F, 0x00, 0x00, 0x42, 0x19, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5A, 0x10, 0x00, 0x00, 0x11, 0x13, 0x00, 0x00,
|
||||
0x76, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x5B, 0x10, 0x00, 0x00, 0x56, 0x10, 0x00, 0x00, 0x5A, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5F, 0x10, 0x00, 0x00,
|
||||
0x43, 0x13, 0x00, 0x00, 0x76, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x60, 0x10, 0x00, 0x00, 0x5B, 0x10, 0x00, 0x00,
|
||||
0x5F, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x64, 0x10, 0x00, 0x00, 0x4D, 0x13, 0x00, 0x00, 0x88, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x65, 0x10, 0x00, 0x00,
|
||||
0x60, 0x10, 0x00, 0x00, 0x64, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x69, 0x10, 0x00, 0x00, 0x7F, 0x13, 0x00, 0x00,
|
||||
0x88, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x6A, 0x10, 0x00, 0x00, 0x65, 0x10, 0x00, 0x00, 0x69, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x6E, 0x10, 0x00, 0x00,
|
||||
0x6B, 0x13, 0x00, 0x00, 0xA3, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x6F, 0x10, 0x00, 0x00, 0x6A, 0x10, 0x00, 0x00,
|
||||
0x6E, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x73, 0x10, 0x00, 0x00, 0x89, 0x13, 0x00, 0x00, 0xA3, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x74, 0x10, 0x00, 0x00,
|
||||
0x6F, 0x10, 0x00, 0x00, 0x73, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x78, 0x10, 0x00, 0x00, 0x2F, 0x13, 0x00, 0x00,
|
||||
0x8B, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x79, 0x10, 0x00, 0x00, 0x74, 0x10, 0x00, 0x00, 0x78, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x7D, 0x10, 0x00, 0x00,
|
||||
0x39, 0x13, 0x00, 0x00, 0xA6, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x7E, 0x10, 0x00, 0x00, 0x79, 0x10, 0x00, 0x00,
|
||||
0x7D, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x82, 0x10, 0x00, 0x00, 0x57, 0x13, 0x00, 0x00, 0xC1, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x83, 0x10, 0x00, 0x00,
|
||||
0x7E, 0x10, 0x00, 0x00, 0x82, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x87, 0x10, 0x00, 0x00, 0x61, 0x13, 0x00, 0x00,
|
||||
0xDC, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x88, 0x10, 0x00, 0x00, 0x83, 0x10, 0x00, 0x00, 0x87, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x8A, 0x10, 0x00, 0x00,
|
||||
0x88, 0x10, 0x00, 0x00, 0x58, 0x17, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x74, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0x8A, 0x10, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x43, 0x19, 0x00, 0x00, 0x0A, 0x13, 0x00, 0x00, 0x28, 0x13, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x94, 0x10, 0x00, 0x00,
|
||||
0x6D, 0x0F, 0x00, 0x00, 0x43, 0x19, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x98, 0x10, 0x00, 0x00, 0x14, 0x13, 0x00, 0x00,
|
||||
0x76, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x99, 0x10, 0x00, 0x00, 0x94, 0x10, 0x00, 0x00, 0x98, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x9D, 0x10, 0x00, 0x00,
|
||||
0x46, 0x13, 0x00, 0x00, 0x76, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x9E, 0x10, 0x00, 0x00, 0x99, 0x10, 0x00, 0x00,
|
||||
0x9D, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA2, 0x10, 0x00, 0x00, 0x50, 0x13, 0x00, 0x00, 0x88, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xA3, 0x10, 0x00, 0x00,
|
||||
0x9E, 0x10, 0x00, 0x00, 0xA2, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA7, 0x10, 0x00, 0x00, 0x82, 0x13, 0x00, 0x00,
|
||||
0x88, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA8, 0x10, 0x00, 0x00, 0xA3, 0x10, 0x00, 0x00, 0xA7, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xAC, 0x10, 0x00, 0x00,
|
||||
0x6E, 0x13, 0x00, 0x00, 0xA3, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xAD, 0x10, 0x00, 0x00, 0xA8, 0x10, 0x00, 0x00,
|
||||
0xAC, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xB1, 0x10, 0x00, 0x00, 0x8C, 0x13, 0x00, 0x00, 0xA3, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xB2, 0x10, 0x00, 0x00,
|
||||
0xAD, 0x10, 0x00, 0x00, 0xB1, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB6, 0x10, 0x00, 0x00, 0x32, 0x13, 0x00, 0x00,
|
||||
0x8B, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xB7, 0x10, 0x00, 0x00, 0xB2, 0x10, 0x00, 0x00, 0xB6, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xBB, 0x10, 0x00, 0x00,
|
||||
0x3C, 0x13, 0x00, 0x00, 0xA6, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xBC, 0x10, 0x00, 0x00, 0xB7, 0x10, 0x00, 0x00,
|
||||
0xBB, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC0, 0x10, 0x00, 0x00, 0x5A, 0x13, 0x00, 0x00, 0xC1, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC1, 0x10, 0x00, 0x00,
|
||||
0xBC, 0x10, 0x00, 0x00, 0xC0, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xC5, 0x10, 0x00, 0x00, 0x64, 0x13, 0x00, 0x00,
|
||||
0xDC, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC6, 0x10, 0x00, 0x00, 0xC1, 0x10, 0x00, 0x00, 0xC5, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC8, 0x10, 0x00, 0x00,
|
||||
0xC6, 0x10, 0x00, 0x00, 0x58, 0x17, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x82, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0xC8, 0x10, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0xD7, 0x08, 0x00, 0x00,
|
||||
0xD8, 0x08, 0x00, 0x00, 0xC9, 0x08, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xD8, 0x08, 0x00, 0x00, 0x66, 0x17, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xD7, 0x08, 0x00, 0x00, 0xDA, 0x08, 0x00, 0x00,
|
||||
0xC9, 0x08, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0xDA, 0x08, 0x00, 0x00, 0x74, 0x17, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0xD7, 0x08, 0x00, 0x00, 0xDC, 0x08, 0x00, 0x00, 0xC9, 0x08, 0x00, 0x00,
|
||||
0xEA, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0xDC, 0x08, 0x00, 0x00,
|
||||
0x82, 0x17, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xDD, 0x08, 0x00, 0x00, 0xC9, 0x08, 0x00, 0x00, 0x4F, 0x00, 0x08, 0x00,
|
||||
0x2C, 0x00, 0x00, 0x00, 0xDE, 0x08, 0x00, 0x00, 0xDD, 0x08, 0x00, 0x00,
|
||||
0xDD, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x2C, 0x00, 0x00, 0x00,
|
||||
0xDF, 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00,
|
||||
0xDE, 0x08, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xE1, 0x08, 0x00, 0x00, 0xDF, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xD8, 0x08, 0x00, 0x00, 0xE1, 0x08, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xE3, 0x08, 0x00, 0x00,
|
||||
0xDF, 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0xDA, 0x08, 0x00, 0x00, 0xE3, 0x08, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xE5, 0x08, 0x00, 0x00, 0xDF, 0x08, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0xDC, 0x08, 0x00, 0x00,
|
||||
0xE5, 0x08, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0xD7, 0x08, 0x00, 0x00,
|
||||
0xE7, 0x08, 0x00, 0x00, 0xC9, 0x08, 0x00, 0x00, 0xE6, 0x08, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xE7, 0x08, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0xFD, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00,
|
||||
};
|
||||
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_frag.spv
generated
Normal file
Binary file not shown.
448
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_frag.txt
generated
Normal file
448
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_resample_frag.txt
generated
Normal file
@@ -0,0 +1,448 @@
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos Glslang Reference Front End; 10
|
||||
; Bound: 6468
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
%1 = OpExtInstImport "GLSL.std.450"
|
||||
OpMemoryModel Logical GLSL450
|
||||
OpEntryPoint Fragment %main "main" %gl_FragCoord %xe_frag_color
|
||||
OpExecutionMode %main OriginUpperLeft
|
||||
OpSource GLSL 420
|
||||
OpSourceExtension "GL_GOOGLE_cpp_style_line_directive"
|
||||
OpSourceExtension "GL_GOOGLE_include_directive"
|
||||
OpName %main "main"
|
||||
OpName %xe_texture "xe_texture"
|
||||
OpName %gl_FragCoord "gl_FragCoord"
|
||||
OpName %XeCasResampleConstants "XeCasResampleConstants"
|
||||
OpMemberName %XeCasResampleConstants 0 "xe_cas_output_offset"
|
||||
OpMemberName %XeCasResampleConstants 1 "xe_cas_input_output_size_ratio"
|
||||
OpMemberName %XeCasResampleConstants 2 "xe_cas_sharpness_post_setup"
|
||||
OpName %_ ""
|
||||
OpName %xe_frag_color "xe_frag_color"
|
||||
OpDecorate %xe_texture DescriptorSet 0
|
||||
OpDecorate %xe_texture Binding 0
|
||||
OpDecorate %gl_FragCoord BuiltIn FragCoord
|
||||
OpMemberDecorate %XeCasResampleConstants 0 Offset 16
|
||||
OpMemberDecorate %XeCasResampleConstants 1 Offset 24
|
||||
OpMemberDecorate %XeCasResampleConstants 2 Offset 32
|
||||
OpDecorate %XeCasResampleConstants Block
|
||||
OpDecorate %xe_frag_color Location 0
|
||||
%void = OpTypeVoid
|
||||
%3 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_532432441 = OpConstant %uint 532432441
|
||||
%uint_2129690299 = OpConstant %uint 2129690299
|
||||
%uint_2129764351 = OpConstant %uint 2129764351
|
||||
%float_2 = OpConstant %float 2
|
||||
%143 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%144 = OpTypeSampledImage %143
|
||||
%_ptr_UniformConstant_144 = OpTypePointer UniformConstant %144
|
||||
%xe_texture = OpVariable %_ptr_UniformConstant_144 UniformConstant
|
||||
%int_0 = OpConstant %int 0
|
||||
%v4float = OpTypeVector %float 4
|
||||
%int_n1 = OpConstant %int -1
|
||||
%181 = OpConstantComposite %v2int %int_0 %int_n1
|
||||
%int_1 = OpConstant %int 1
|
||||
%188 = OpConstantComposite %v2int %int_1 %int_n1
|
||||
%194 = OpConstantComposite %v2int %int_n1 %int_0
|
||||
%204 = OpConstantComposite %v2int %int_1 %int_0
|
||||
%210 = OpConstantComposite %v2int %int_n1 %int_1
|
||||
%216 = OpConstantComposite %v2int %int_0 %int_1
|
||||
%222 = OpConstantComposite %v2int %int_1 %int_1
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%v2float = OpTypeVector %float 2
|
||||
%int_2 = OpConstant %int 2
|
||||
%712 = OpConstantComposite %v2int %int_2 %int_0
|
||||
%734 = OpConstantComposite %v2int %int_0 %int_2
|
||||
%745 = OpConstantComposite %v2int %int_2 %int_1
|
||||
%751 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%float_0_03125 = OpConstant %float 0.03125
|
||||
%_ptr_Input_v4float = OpTypePointer Input %v4float
|
||||
%gl_FragCoord = OpVariable %_ptr_Input_v4float Input
|
||||
%XeCasResampleConstants = OpTypeStruct %v2int %v2float %float
|
||||
%_ptr_PushConstant_XeCasResampleConstants = OpTypePointer PushConstant %XeCasResampleConstants
|
||||
%_ = OpVariable %_ptr_PushConstant_XeCasResampleConstants PushConstant
|
||||
%_ptr_PushConstant_v2int = OpTypePointer PushConstant %v2int
|
||||
%_ptr_PushConstant_v2float = OpTypePointer PushConstant %v2float
|
||||
%float_0_5 = OpConstant %float 0.5
|
||||
%_ptr_PushConstant_float = OpTypePointer PushConstant %float
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
%xe_frag_color = OpVariable %_ptr_Output_v4float Output
|
||||
%_ptr_Output_float = OpTypePointer Output %float
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%6461 = OpConstantComposite %v2float %float_0_5 %float_0_5
|
||||
%main = OpFunction %void None %3
|
||||
%5 = OpLabel
|
||||
%2205 = OpLoad %v4float %gl_FragCoord
|
||||
%2206 = OpVectorShuffle %v2float %2205 %2205 0 1
|
||||
%2207 = OpConvertFToS %v2int %2206
|
||||
%2212 = OpAccessChain %_ptr_PushConstant_v2int %_ %int_0
|
||||
%2213 = OpLoad %v2int %2212
|
||||
%2214 = OpISub %v2int %2207 %2213
|
||||
%2215 = OpBitcast %v2uint %2214
|
||||
%2218 = OpAccessChain %_ptr_PushConstant_v2float %_ %int_1
|
||||
%2219 = OpLoad %v2float %2218
|
||||
%2220 = OpBitcast %v2uint %2219
|
||||
%2224 = OpVectorTimesScalar %v2float %2219 %float_0_5
|
||||
%2226 = OpFSub %v2float %2224 %6461
|
||||
%2227 = OpBitcast %v2uint %2226
|
||||
%2235 = OpAccessChain %_ptr_PushConstant_float %_ %int_2
|
||||
%2236 = OpLoad %float %2235
|
||||
%2237 = OpBitcast %uint %2236
|
||||
OpBranch %2785
|
||||
%2785 = OpLabel
|
||||
%3136 = OpConvertUToF %v2float %2215
|
||||
%3142 = OpBitcast %v2float %2220
|
||||
%3143 = OpFMul %v2float %3136 %3142
|
||||
%3149 = OpBitcast %v2float %2227
|
||||
%3150 = OpFAdd %v2float %3143 %3149
|
||||
%3152 = OpExtInst %v2float %1 Floor %3150
|
||||
%3155 = OpFSub %v2float %3150 %3152
|
||||
%3157 = OpConvertFToS %v2int %3152
|
||||
%3162 = OpIAdd %v2int %3157 %181
|
||||
%4752 = OpLoad %144 %xe_texture
|
||||
%4754 = OpImage %143 %4752
|
||||
%4755 = OpImageFetch %v4float %4754 %3162 Lod %int_0
|
||||
%3165 = OpIAdd %v2int %3157 %194
|
||||
%4761 = OpImage %143 %4752
|
||||
%4762 = OpImageFetch %v4float %4761 %3165 Lod %int_0
|
||||
%4768 = OpImage %143 %4752
|
||||
%4769 = OpImageFetch %v4float %4768 %3157 Lod %int_0
|
||||
%3170 = OpIAdd %v2int %3157 %188
|
||||
%4775 = OpImage %143 %4752
|
||||
%4776 = OpImageFetch %v4float %4775 %3170 Lod %int_0
|
||||
%3176 = OpIAdd %v2int %3157 %204
|
||||
%4789 = OpImage %143 %4752
|
||||
%4790 = OpImageFetch %v4float %4789 %3176 Lod %int_0
|
||||
%3179 = OpIAdd %v2int %3157 %712
|
||||
%4796 = OpImage %143 %4752
|
||||
%4797 = OpImageFetch %v4float %4796 %3179 Lod %int_0
|
||||
%3182 = OpIAdd %v2int %3157 %210
|
||||
%4803 = OpImage %143 %4752
|
||||
%4804 = OpImageFetch %v4float %4803 %3182 Lod %int_0
|
||||
%3185 = OpIAdd %v2int %3157 %216
|
||||
%4810 = OpImage %143 %4752
|
||||
%4811 = OpImageFetch %v4float %4810 %3185 Lod %int_0
|
||||
%3191 = OpIAdd %v2int %3157 %734
|
||||
%4824 = OpImage %143 %4752
|
||||
%4825 = OpImageFetch %v4float %4824 %3191 Lod %int_0
|
||||
%3194 = OpIAdd %v2int %3157 %222
|
||||
%4831 = OpImage %143 %4752
|
||||
%4832 = OpImageFetch %v4float %4831 %3194 Lod %int_0
|
||||
%3197 = OpIAdd %v2int %3157 %745
|
||||
%4838 = OpImage %143 %4752
|
||||
%4839 = OpImageFetch %v4float %4838 %3197 Lod %int_0
|
||||
%3200 = OpIAdd %v2int %3157 %751
|
||||
%4845 = OpImage %143 %4752
|
||||
%4846 = OpImageFetch %v4float %4845 %3200 Lod %int_0
|
||||
%3219 = OpCompositeExtract %float %4755 0
|
||||
%3221 = OpCompositeExtract %float %4755 1
|
||||
%3223 = OpCompositeExtract %float %4755 2
|
||||
%4868 = OpFMul %float %3219 %3219
|
||||
%4871 = OpFMul %float %3221 %3221
|
||||
%4874 = OpFMul %float %3223 %3223
|
||||
%3232 = OpCompositeExtract %float %4776 0
|
||||
%3234 = OpCompositeExtract %float %4776 1
|
||||
%3236 = OpCompositeExtract %float %4776 2
|
||||
%4878 = OpFMul %float %3232 %3232
|
||||
%4881 = OpFMul %float %3234 %3234
|
||||
%4884 = OpFMul %float %3236 %3236
|
||||
%3258 = OpCompositeExtract %float %4762 0
|
||||
%3260 = OpCompositeExtract %float %4762 1
|
||||
%3262 = OpCompositeExtract %float %4762 2
|
||||
%4898 = OpFMul %float %3258 %3258
|
||||
%4901 = OpFMul %float %3260 %3260
|
||||
%4904 = OpFMul %float %3262 %3262
|
||||
%3271 = OpCompositeExtract %float %4769 0
|
||||
%3273 = OpCompositeExtract %float %4769 1
|
||||
%3275 = OpCompositeExtract %float %4769 2
|
||||
%4908 = OpFMul %float %3271 %3271
|
||||
%4911 = OpFMul %float %3273 %3273
|
||||
%4914 = OpFMul %float %3275 %3275
|
||||
%3284 = OpCompositeExtract %float %4790 0
|
||||
%3286 = OpCompositeExtract %float %4790 1
|
||||
%3288 = OpCompositeExtract %float %4790 2
|
||||
%4918 = OpFMul %float %3284 %3284
|
||||
%4921 = OpFMul %float %3286 %3286
|
||||
%4924 = OpFMul %float %3288 %3288
|
||||
%3297 = OpCompositeExtract %float %4797 0
|
||||
%3299 = OpCompositeExtract %float %4797 1
|
||||
%3301 = OpCompositeExtract %float %4797 2
|
||||
%4928 = OpFMul %float %3297 %3297
|
||||
%4931 = OpFMul %float %3299 %3299
|
||||
%4934 = OpFMul %float %3301 %3301
|
||||
%3310 = OpCompositeExtract %float %4804 0
|
||||
%3312 = OpCompositeExtract %float %4804 1
|
||||
%3314 = OpCompositeExtract %float %4804 2
|
||||
%4938 = OpFMul %float %3310 %3310
|
||||
%4941 = OpFMul %float %3312 %3312
|
||||
%4944 = OpFMul %float %3314 %3314
|
||||
%3323 = OpCompositeExtract %float %4811 0
|
||||
%3325 = OpCompositeExtract %float %4811 1
|
||||
%3327 = OpCompositeExtract %float %4811 2
|
||||
%4948 = OpFMul %float %3323 %3323
|
||||
%4951 = OpFMul %float %3325 %3325
|
||||
%4954 = OpFMul %float %3327 %3327
|
||||
%3336 = OpCompositeExtract %float %4832 0
|
||||
%3338 = OpCompositeExtract %float %4832 1
|
||||
%3340 = OpCompositeExtract %float %4832 2
|
||||
%4958 = OpFMul %float %3336 %3336
|
||||
%4961 = OpFMul %float %3338 %3338
|
||||
%4964 = OpFMul %float %3340 %3340
|
||||
%3349 = OpCompositeExtract %float %4839 0
|
||||
%3351 = OpCompositeExtract %float %4839 1
|
||||
%3353 = OpCompositeExtract %float %4839 2
|
||||
%4968 = OpFMul %float %3349 %3349
|
||||
%4971 = OpFMul %float %3351 %3351
|
||||
%4974 = OpFMul %float %3353 %3353
|
||||
%3375 = OpCompositeExtract %float %4825 0
|
||||
%3377 = OpCompositeExtract %float %4825 1
|
||||
%3379 = OpCompositeExtract %float %4825 2
|
||||
%4988 = OpFMul %float %3375 %3375
|
||||
%4991 = OpFMul %float %3377 %3377
|
||||
%4994 = OpFMul %float %3379 %3379
|
||||
%3388 = OpCompositeExtract %float %4846 0
|
||||
%3390 = OpCompositeExtract %float %4846 1
|
||||
%3392 = OpCompositeExtract %float %4846 2
|
||||
%4998 = OpFMul %float %3388 %3388
|
||||
%5001 = OpFMul %float %3390 %3390
|
||||
%5004 = OpFMul %float %3392 %3392
|
||||
%5034 = OpExtInst %float %1 FMin %4901 %4911
|
||||
%5035 = OpExtInst %float %1 FMin %4871 %5034
|
||||
%5041 = OpExtInst %float %1 FMin %4921 %4951
|
||||
%5042 = OpExtInst %float %1 FMin %5035 %5041
|
||||
%5076 = OpExtInst %float %1 FMax %4901 %4911
|
||||
%5077 = OpExtInst %float %1 FMax %4871 %5076
|
||||
%5083 = OpExtInst %float %1 FMax %4921 %4951
|
||||
%5084 = OpExtInst %float %1 FMax %5077 %5083
|
||||
%5118 = OpExtInst %float %1 FMin %4911 %4921
|
||||
%5119 = OpExtInst %float %1 FMin %4881 %5118
|
||||
%5125 = OpExtInst %float %1 FMin %4931 %4961
|
||||
%5126 = OpExtInst %float %1 FMin %5119 %5125
|
||||
%5160 = OpExtInst %float %1 FMax %4911 %4921
|
||||
%5161 = OpExtInst %float %1 FMax %4881 %5160
|
||||
%5167 = OpExtInst %float %1 FMax %4931 %4961
|
||||
%5168 = OpExtInst %float %1 FMax %5161 %5167
|
||||
%5202 = OpExtInst %float %1 FMin %4941 %4951
|
||||
%5203 = OpExtInst %float %1 FMin %4911 %5202
|
||||
%5209 = OpExtInst %float %1 FMin %4961 %4991
|
||||
%5210 = OpExtInst %float %1 FMin %5203 %5209
|
||||
%5244 = OpExtInst %float %1 FMax %4941 %4951
|
||||
%5245 = OpExtInst %float %1 FMax %4911 %5244
|
||||
%5251 = OpExtInst %float %1 FMax %4961 %4991
|
||||
%5252 = OpExtInst %float %1 FMax %5245 %5251
|
||||
%5286 = OpExtInst %float %1 FMin %4951 %4961
|
||||
%5287 = OpExtInst %float %1 FMin %4921 %5286
|
||||
%5293 = OpExtInst %float %1 FMin %4971 %5001
|
||||
%5294 = OpExtInst %float %1 FMin %5287 %5293
|
||||
%5328 = OpExtInst %float %1 FMax %4951 %4961
|
||||
%5329 = OpExtInst %float %1 FMax %4921 %5328
|
||||
%5335 = OpExtInst %float %1 FMax %4971 %5001
|
||||
%5336 = OpExtInst %float %1 FMax %5329 %5335
|
||||
%5367 = OpBitcast %uint %5084
|
||||
%5368 = OpISub %uint %uint_2129690299 %5367
|
||||
%5369 = OpBitcast %float %5368
|
||||
%5400 = OpBitcast %uint %5168
|
||||
%5401 = OpISub %uint %uint_2129690299 %5400
|
||||
%5402 = OpBitcast %float %5401
|
||||
%5433 = OpBitcast %uint %5252
|
||||
%5434 = OpISub %uint %uint_2129690299 %5433
|
||||
%5435 = OpBitcast %float %5434
|
||||
%5466 = OpBitcast %uint %5336
|
||||
%5467 = OpISub %uint %uint_2129690299 %5466
|
||||
%5468 = OpBitcast %float %5467
|
||||
%3736 = OpFSub %float %float_1 %5084
|
||||
%3737 = OpExtInst %float %1 FMin %5042 %3736
|
||||
%3739 = OpFMul %float %3737 %5369
|
||||
%5510 = OpExtInst %float %1 FClamp %3739 %float_0 %float_1
|
||||
%3760 = OpFSub %float %float_1 %5168
|
||||
%3761 = OpExtInst %float %1 FMin %5126 %3760
|
||||
%3763 = OpFMul %float %3761 %5402
|
||||
%5561 = OpExtInst %float %1 FClamp %3763 %float_0 %float_1
|
||||
%3784 = OpFSub %float %float_1 %5252
|
||||
%3785 = OpExtInst %float %1 FMin %5210 %3784
|
||||
%3787 = OpFMul %float %3785 %5435
|
||||
%5612 = OpExtInst %float %1 FClamp %3787 %float_0 %float_1
|
||||
%3808 = OpFSub %float %float_1 %5336
|
||||
%3809 = OpExtInst %float %1 FMin %5294 %3808
|
||||
%3811 = OpFMul %float %3809 %5468
|
||||
%5663 = OpExtInst %float %1 FClamp %3811 %float_0 %float_1
|
||||
%5709 = OpBitcast %uint %5510
|
||||
%5711 = OpShiftRightLogical %uint %5709 %uint_1
|
||||
%5713 = OpIAdd %uint %5711 %uint_532432441
|
||||
%5714 = OpBitcast %float %5713
|
||||
%5760 = OpBitcast %uint %5561
|
||||
%5762 = OpShiftRightLogical %uint %5760 %uint_1
|
||||
%5764 = OpIAdd %uint %5762 %uint_532432441
|
||||
%5765 = OpBitcast %float %5764
|
||||
%5811 = OpBitcast %uint %5612
|
||||
%5813 = OpShiftRightLogical %uint %5811 %uint_1
|
||||
%5815 = OpIAdd %uint %5813 %uint_532432441
|
||||
%5816 = OpBitcast %float %5815
|
||||
%5862 = OpBitcast %uint %5663
|
||||
%5864 = OpShiftRightLogical %uint %5862 %uint_1
|
||||
%5866 = OpIAdd %uint %5864 %uint_532432441
|
||||
%5867 = OpBitcast %float %5866
|
||||
%3847 = OpBitcast %float %2237
|
||||
%3853 = OpFMul %float %5714 %3847
|
||||
%3862 = OpFMul %float %5765 %3847
|
||||
%3871 = OpFMul %float %5816 %3847
|
||||
%3880 = OpFMul %float %5867 %3847
|
||||
%3886 = OpCompositeExtract %float %3155 0
|
||||
%3887 = OpFSub %float %float_1 %3886
|
||||
%3890 = OpCompositeExtract %float %3155 1
|
||||
%3891 = OpFSub %float %float_1 %3890
|
||||
%3892 = OpFMul %float %3887 %3891
|
||||
%3899 = OpFMul %float %3886 %3891
|
||||
%3906 = OpFMul %float %3887 %3890
|
||||
%3911 = OpFMul %float %3886 %3890
|
||||
%3915 = OpFSub %float %5084 %5042
|
||||
%3916 = OpFAdd %float %float_0_03125 %3915
|
||||
%5908 = OpBitcast %uint %3916
|
||||
%5909 = OpISub %uint %uint_2129690299 %5908
|
||||
%5910 = OpBitcast %float %5909
|
||||
%3919 = OpFMul %float %3892 %5910
|
||||
%3923 = OpFSub %float %5168 %5126
|
||||
%3924 = OpFAdd %float %float_0_03125 %3923
|
||||
%5919 = OpBitcast %uint %3924
|
||||
%5920 = OpISub %uint %uint_2129690299 %5919
|
||||
%5921 = OpBitcast %float %5920
|
||||
%3927 = OpFMul %float %3899 %5921
|
||||
%3931 = OpFSub %float %5252 %5210
|
||||
%3932 = OpFAdd %float %float_0_03125 %3931
|
||||
%5930 = OpBitcast %uint %3932
|
||||
%5931 = OpISub %uint %uint_2129690299 %5930
|
||||
%5932 = OpBitcast %float %5931
|
||||
%3935 = OpFMul %float %3906 %5932
|
||||
%3939 = OpFSub %float %5336 %5294
|
||||
%3940 = OpFAdd %float %float_0_03125 %3939
|
||||
%5941 = OpBitcast %uint %3940
|
||||
%5942 = OpISub %uint %uint_2129690299 %5941
|
||||
%5943 = OpBitcast %float %5942
|
||||
%3943 = OpFMul %float %3911 %5943
|
||||
%3949 = OpFMul %float %3853 %3919
|
||||
%3958 = OpFMul %float %3862 %3927
|
||||
%3976 = OpFMul %float %3871 %3935
|
||||
%3977 = OpFAdd %float %3958 %3976
|
||||
%3979 = OpFAdd %float %3977 %3919
|
||||
%4003 = OpFMul %float %3880 %3943
|
||||
%4004 = OpFAdd %float %3949 %4003
|
||||
%4006 = OpFAdd %float %4004 %3927
|
||||
%4033 = OpFAdd %float %4004 %3935
|
||||
%4060 = OpFAdd %float %3977 %3943
|
||||
%6462 = OpFAdd %float %3949 %3958
|
||||
%6463 = OpFAdd %float %6462 %3976
|
||||
%6464 = OpFAdd %float %6463 %4003
|
||||
%4102 = OpFMul %float %float_2 %6464
|
||||
%4104 = OpFAdd %float %4102 %3979
|
||||
%4106 = OpFAdd %float %4104 %4006
|
||||
%4108 = OpFAdd %float %4106 %4033
|
||||
%4110 = OpFAdd %float %4108 %4060
|
||||
%5966 = OpBitcast %uint %4110
|
||||
%5967 = OpISub %uint %uint_2129764351 %5966
|
||||
%5968 = OpBitcast %float %5967
|
||||
%5971 = OpFNegate %float %5968
|
||||
%5973 = OpFMul %float %5971 %4110
|
||||
%5975 = OpFAdd %float %5973 %float_2
|
||||
%5976 = OpFMul %float %5968 %5975
|
||||
%6465 = OpFAdd %float %4868 %4898
|
||||
%4120 = OpFMul %float %3949 %6465
|
||||
%4124 = OpFMul %float %4878 %3958
|
||||
%4125 = OpFAdd %float %4120 %4124
|
||||
%4129 = OpFMul %float %4928 %3958
|
||||
%4130 = OpFAdd %float %4125 %4129
|
||||
%4134 = OpFMul %float %4938 %3976
|
||||
%4135 = OpFAdd %float %4130 %4134
|
||||
%4139 = OpFMul %float %4988 %3976
|
||||
%4140 = OpFAdd %float %4135 %4139
|
||||
%4144 = OpFMul %float %4968 %4003
|
||||
%4145 = OpFAdd %float %4140 %4144
|
||||
%4149 = OpFMul %float %4998 %4003
|
||||
%4150 = OpFAdd %float %4145 %4149
|
||||
%4154 = OpFMul %float %4908 %3979
|
||||
%4155 = OpFAdd %float %4150 %4154
|
||||
%4159 = OpFMul %float %4918 %4006
|
||||
%4160 = OpFAdd %float %4155 %4159
|
||||
%4164 = OpFMul %float %4948 %4033
|
||||
%4165 = OpFAdd %float %4160 %4164
|
||||
%4169 = OpFMul %float %4958 %4060
|
||||
%4170 = OpFAdd %float %4165 %4169
|
||||
%4172 = OpFMul %float %4170 %5976
|
||||
%5990 = OpExtInst %float %1 FClamp %4172 %float_0 %float_1
|
||||
%6466 = OpFAdd %float %4871 %4901
|
||||
%4182 = OpFMul %float %3949 %6466
|
||||
%4186 = OpFMul %float %4881 %3958
|
||||
%4187 = OpFAdd %float %4182 %4186
|
||||
%4191 = OpFMul %float %4931 %3958
|
||||
%4192 = OpFAdd %float %4187 %4191
|
||||
%4196 = OpFMul %float %4941 %3976
|
||||
%4197 = OpFAdd %float %4192 %4196
|
||||
%4201 = OpFMul %float %4991 %3976
|
||||
%4202 = OpFAdd %float %4197 %4201
|
||||
%4206 = OpFMul %float %4971 %4003
|
||||
%4207 = OpFAdd %float %4202 %4206
|
||||
%4211 = OpFMul %float %5001 %4003
|
||||
%4212 = OpFAdd %float %4207 %4211
|
||||
%4216 = OpFMul %float %4911 %3979
|
||||
%4217 = OpFAdd %float %4212 %4216
|
||||
%4221 = OpFMul %float %4921 %4006
|
||||
%4222 = OpFAdd %float %4217 %4221
|
||||
%4226 = OpFMul %float %4951 %4033
|
||||
%4227 = OpFAdd %float %4222 %4226
|
||||
%4231 = OpFMul %float %4961 %4060
|
||||
%4232 = OpFAdd %float %4227 %4231
|
||||
%4234 = OpFMul %float %4232 %5976
|
||||
%6004 = OpExtInst %float %1 FClamp %4234 %float_0 %float_1
|
||||
%6467 = OpFAdd %float %4874 %4904
|
||||
%4244 = OpFMul %float %3949 %6467
|
||||
%4248 = OpFMul %float %4884 %3958
|
||||
%4249 = OpFAdd %float %4244 %4248
|
||||
%4253 = OpFMul %float %4934 %3958
|
||||
%4254 = OpFAdd %float %4249 %4253
|
||||
%4258 = OpFMul %float %4944 %3976
|
||||
%4259 = OpFAdd %float %4254 %4258
|
||||
%4263 = OpFMul %float %4994 %3976
|
||||
%4264 = OpFAdd %float %4259 %4263
|
||||
%4268 = OpFMul %float %4974 %4003
|
||||
%4269 = OpFAdd %float %4264 %4268
|
||||
%4273 = OpFMul %float %5004 %4003
|
||||
%4274 = OpFAdd %float %4269 %4273
|
||||
%4278 = OpFMul %float %4914 %3979
|
||||
%4279 = OpFAdd %float %4274 %4278
|
||||
%4283 = OpFMul %float %4924 %4006
|
||||
%4284 = OpFAdd %float %4279 %4283
|
||||
%4288 = OpFMul %float %4954 %4033
|
||||
%4289 = OpFAdd %float %4284 %4288
|
||||
%4293 = OpFMul %float %4964 %4060
|
||||
%4294 = OpFAdd %float %4289 %4293
|
||||
%4296 = OpFMul %float %4294 %5976
|
||||
%6018 = OpExtInst %float %1 FClamp %4296 %float_0 %float_1
|
||||
%2264 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_0
|
||||
OpStore %2264 %5990
|
||||
%2266 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_1
|
||||
OpStore %2266 %6004
|
||||
%2268 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_2
|
||||
OpStore %2268 %6018
|
||||
%2269 = OpLoad %v4float %xe_frag_color
|
||||
%2270 = OpVectorShuffle %v3float %2269 %2269 0 1 2
|
||||
%2271 = OpExtInst %v3float %1 Sqrt %2270
|
||||
%2273 = OpCompositeExtract %float %2271 0
|
||||
OpStore %2264 %2273
|
||||
%2275 = OpCompositeExtract %float %2271 1
|
||||
OpStore %2266 %2275
|
||||
%2277 = OpCompositeExtract %float %2271 2
|
||||
OpStore %2268 %2277
|
||||
%2279 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_3
|
||||
OpStore %2279 %float_1
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
1196
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_dither_frag.h
generated
Normal file
1196
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_dither_frag.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_dither_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_dither_frag.spv
generated
Normal file
Binary file not shown.
719
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_dither_frag.txt
generated
Normal file
719
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_dither_frag.txt
generated
Normal file
File diff suppressed because one or more lines are too long
723
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_frag.h
generated
Normal file
723
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_frag.h
generated
Normal file
@@ -0,0 +1,723 @@
|
||||
// generated from `xb genspirv`
|
||||
// source: guest_output_ffx_cas_sharpen.frag
|
||||
const uint8_t guest_output_ffx_cas_sharpen_frag[] = {
|
||||
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x0A, 0x00, 0x08, 0x00,
|
||||
0x39, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x47, 0x4C, 0x53, 0x4C, 0x2E, 0x73, 0x74, 0x64, 0x2E, 0x34, 0x35, 0x30,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x9C, 0x08, 0x00, 0x00, 0xB8, 0x08, 0x00, 0x00, 0x10, 0x00, 0x03, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0xA4, 0x01, 0x00, 0x00, 0x04, 0x00, 0x0A, 0x00,
|
||||
0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C, 0x45, 0x5F, 0x63, 0x70,
|
||||
0x70, 0x5F, 0x73, 0x74, 0x79, 0x6C, 0x65, 0x5F, 0x6C, 0x69, 0x6E, 0x65,
|
||||
0x5F, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x00,
|
||||
0x04, 0x00, 0x08, 0x00, 0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C,
|
||||
0x45, 0x5F, 0x69, 0x6E, 0x63, 0x6C, 0x75, 0x64, 0x65, 0x5F, 0x64, 0x69,
|
||||
0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x05, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x05, 0x00, 0x92, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x74,
|
||||
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
|
||||
0x9C, 0x08, 0x00, 0x00, 0x67, 0x6C, 0x5F, 0x46, 0x72, 0x61, 0x67, 0x43,
|
||||
0x6F, 0x6F, 0x72, 0x64, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x08, 0x00,
|
||||
0xA0, 0x08, 0x00, 0x00, 0x58, 0x65, 0x43, 0x61, 0x73, 0x53, 0x68, 0x61,
|
||||
0x72, 0x70, 0x65, 0x6E, 0x43, 0x6F, 0x6E, 0x73, 0x74, 0x61, 0x6E, 0x74,
|
||||
0x73, 0x00, 0x00, 0x00, 0x06, 0x00, 0x09, 0x00, 0xA0, 0x08, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x63, 0x61, 0x73, 0x5F, 0x6F,
|
||||
0x75, 0x74, 0x70, 0x75, 0x74, 0x5F, 0x6F, 0x66, 0x66, 0x73, 0x65, 0x74,
|
||||
0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0A, 0x00, 0xA0, 0x08, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x63, 0x61, 0x73, 0x5F, 0x73,
|
||||
0x68, 0x61, 0x72, 0x70, 0x6E, 0x65, 0x73, 0x73, 0x5F, 0x70, 0x6F, 0x73,
|
||||
0x74, 0x5F, 0x73, 0x65, 0x74, 0x75, 0x70, 0x00, 0x05, 0x00, 0x03, 0x00,
|
||||
0xA2, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
|
||||
0xB8, 0x08, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x66, 0x72, 0x61, 0x67, 0x5F,
|
||||
0x63, 0x6F, 0x6C, 0x6F, 0x72, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0x92, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x04, 0x00, 0x92, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x9C, 0x08, 0x00, 0x00,
|
||||
0x0B, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
|
||||
0xA0, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
|
||||
0x10, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0xA0, 0x08, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x03, 0x00, 0xA0, 0x08, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x04, 0x00, 0xB8, 0x08, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x16, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
|
||||
0x15, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x2C, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x37, 0x00, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x80, 0x3F, 0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x67, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x39, 0x46, 0xBC, 0x1F,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x7E, 0xF0, 0x7E, 0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x00, 0x00, 0xFF, 0x9F, 0xF1, 0x7E, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
|
||||
0x19, 0x00, 0x09, 0x00, 0x8F, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x1B, 0x00, 0x03, 0x00, 0x90, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x91, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x90, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x91, 0x00, 0x00, 0x00,
|
||||
0x92, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x97, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0xAE, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xB5, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0xAE, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xBC, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00,
|
||||
0xAE, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0xC2, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xD2, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0xD8, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xDE, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x86, 0x02, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xC8, 0x02, 0x00, 0x00,
|
||||
0xBC, 0x02, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xDE, 0x02, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0xBC, 0x02, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0xE9, 0x02, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xEF, 0x02, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0xBC, 0x02, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xF2, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3D,
|
||||
0x20, 0x00, 0x04, 0x00, 0x9B, 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x9B, 0x08, 0x00, 0x00,
|
||||
0x9C, 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x04, 0x00,
|
||||
0xA0, 0x08, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0xA1, 0x08, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x08, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0xA1, 0x08, 0x00, 0x00,
|
||||
0xA2, 0x08, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0xA3, 0x08, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0xAC, 0x08, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0xB7, 0x08, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00,
|
||||
0xB7, 0x08, 0x00, 0x00, 0xB8, 0x08, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0xC6, 0x08, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xD5, 0x08, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x97, 0x00, 0x00, 0x00, 0x9D, 0x08, 0x00, 0x00,
|
||||
0x9C, 0x08, 0x00, 0x00, 0x4F, 0x00, 0x07, 0x00, 0x86, 0x02, 0x00, 0x00,
|
||||
0x9E, 0x08, 0x00, 0x00, 0x9D, 0x08, 0x00, 0x00, 0x9D, 0x08, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x04, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x9F, 0x08, 0x00, 0x00, 0x9E, 0x08, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xA3, 0x08, 0x00, 0x00, 0xA4, 0x08, 0x00, 0x00,
|
||||
0xA2, 0x08, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0xA5, 0x08, 0x00, 0x00, 0xA4, 0x08, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0xA6, 0x08, 0x00, 0x00,
|
||||
0x9F, 0x08, 0x00, 0x00, 0xA5, 0x08, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x37, 0x00, 0x00, 0x00, 0xA7, 0x08, 0x00, 0x00, 0xA6, 0x08, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xAC, 0x08, 0x00, 0x00, 0xAD, 0x08, 0x00, 0x00,
|
||||
0xA2, 0x08, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xAE, 0x08, 0x00, 0x00, 0xAD, 0x08, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xAF, 0x08, 0x00, 0x00,
|
||||
0xAE, 0x08, 0x00, 0x00, 0xF9, 0x00, 0x02, 0x00, 0xD0, 0x0A, 0x00, 0x00,
|
||||
0xF8, 0x00, 0x02, 0x00, 0xD0, 0x0A, 0x00, 0x00, 0x70, 0x00, 0x04, 0x00,
|
||||
0x86, 0x02, 0x00, 0x00, 0x2F, 0x0C, 0x00, 0x00, 0xA7, 0x08, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x06, 0x00, 0x86, 0x02, 0x00, 0x00, 0x3F, 0x0C, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x2F, 0x0C, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x86, 0x02, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00,
|
||||
0x2F, 0x0C, 0x00, 0x00, 0x3F, 0x0C, 0x00, 0x00, 0x6E, 0x00, 0x04, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00, 0x3F, 0x0C, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x49, 0x0C, 0x00, 0x00,
|
||||
0x44, 0x0C, 0x00, 0x00, 0xB5, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x90, 0x00, 0x00, 0x00, 0x7F, 0x12, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0x81, 0x12, 0x00, 0x00,
|
||||
0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0x82, 0x12, 0x00, 0x00, 0x81, 0x12, 0x00, 0x00, 0x49, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x4C, 0x0C, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00,
|
||||
0xC2, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0x88, 0x12, 0x00, 0x00, 0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0x89, 0x12, 0x00, 0x00, 0x88, 0x12, 0x00, 0x00,
|
||||
0x4C, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0x8F, 0x12, 0x00, 0x00,
|
||||
0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0x90, 0x12, 0x00, 0x00, 0x8F, 0x12, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x51, 0x0C, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00,
|
||||
0xBC, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0x96, 0x12, 0x00, 0x00, 0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0x97, 0x12, 0x00, 0x00, 0x96, 0x12, 0x00, 0x00,
|
||||
0x51, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x57, 0x0C, 0x00, 0x00,
|
||||
0x44, 0x0C, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0xA4, 0x12, 0x00, 0x00, 0x7F, 0x12, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00, 0xA5, 0x12, 0x00, 0x00,
|
||||
0xA4, 0x12, 0x00, 0x00, 0x57, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x5A, 0x0C, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00, 0xC8, 0x02, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xAB, 0x12, 0x00, 0x00,
|
||||
0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xAC, 0x12, 0x00, 0x00, 0xAB, 0x12, 0x00, 0x00, 0x5A, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x5D, 0x0C, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00,
|
||||
0xD2, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0xB2, 0x12, 0x00, 0x00, 0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0xB3, 0x12, 0x00, 0x00, 0xB2, 0x12, 0x00, 0x00,
|
||||
0x5D, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x60, 0x0C, 0x00, 0x00,
|
||||
0x44, 0x0C, 0x00, 0x00, 0xD8, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0xB9, 0x12, 0x00, 0x00, 0x7F, 0x12, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00, 0xBA, 0x12, 0x00, 0x00,
|
||||
0xB9, 0x12, 0x00, 0x00, 0x60, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x66, 0x0C, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00, 0xDE, 0x02, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xC7, 0x12, 0x00, 0x00,
|
||||
0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xC8, 0x12, 0x00, 0x00, 0xC7, 0x12, 0x00, 0x00, 0x66, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x69, 0x0C, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00,
|
||||
0xDE, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0xCE, 0x12, 0x00, 0x00, 0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0xCF, 0x12, 0x00, 0x00, 0xCE, 0x12, 0x00, 0x00,
|
||||
0x69, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x6C, 0x0C, 0x00, 0x00,
|
||||
0x44, 0x0C, 0x00, 0x00, 0xE9, 0x02, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0xD5, 0x12, 0x00, 0x00, 0x7F, 0x12, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00, 0xD6, 0x12, 0x00, 0x00,
|
||||
0xD5, 0x12, 0x00, 0x00, 0x6C, 0x0C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x6F, 0x0C, 0x00, 0x00, 0x44, 0x0C, 0x00, 0x00, 0xEF, 0x02, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xDC, 0x12, 0x00, 0x00,
|
||||
0x7F, 0x12, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xDD, 0x12, 0x00, 0x00, 0xDC, 0x12, 0x00, 0x00, 0x6F, 0x0C, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x82, 0x0C, 0x00, 0x00, 0x82, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x84, 0x0C, 0x00, 0x00, 0x82, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x86, 0x0C, 0x00, 0x00,
|
||||
0x82, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xF3, 0x12, 0x00, 0x00, 0x82, 0x0C, 0x00, 0x00,
|
||||
0x82, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xF6, 0x12, 0x00, 0x00, 0x84, 0x0C, 0x00, 0x00, 0x84, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xF9, 0x12, 0x00, 0x00,
|
||||
0x86, 0x0C, 0x00, 0x00, 0x86, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x8F, 0x0C, 0x00, 0x00, 0x97, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x91, 0x0C, 0x00, 0x00, 0x97, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x93, 0x0C, 0x00, 0x00,
|
||||
0x97, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xFD, 0x12, 0x00, 0x00, 0x8F, 0x0C, 0x00, 0x00,
|
||||
0x8F, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x00, 0x13, 0x00, 0x00, 0x91, 0x0C, 0x00, 0x00, 0x91, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x03, 0x13, 0x00, 0x00,
|
||||
0x93, 0x0C, 0x00, 0x00, 0x93, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA9, 0x0C, 0x00, 0x00, 0x89, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xAB, 0x0C, 0x00, 0x00, 0x89, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xAD, 0x0C, 0x00, 0x00,
|
||||
0x89, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x11, 0x13, 0x00, 0x00, 0xA9, 0x0C, 0x00, 0x00,
|
||||
0xA9, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x14, 0x13, 0x00, 0x00, 0xAB, 0x0C, 0x00, 0x00, 0xAB, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x17, 0x13, 0x00, 0x00,
|
||||
0xAD, 0x0C, 0x00, 0x00, 0xAD, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB6, 0x0C, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xB8, 0x0C, 0x00, 0x00, 0x90, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xBA, 0x0C, 0x00, 0x00,
|
||||
0x90, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x1B, 0x13, 0x00, 0x00, 0xB6, 0x0C, 0x00, 0x00,
|
||||
0xB6, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x13, 0x00, 0x00, 0xB8, 0x0C, 0x00, 0x00, 0xB8, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x21, 0x13, 0x00, 0x00,
|
||||
0xBA, 0x0C, 0x00, 0x00, 0xBA, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xC3, 0x0C, 0x00, 0x00, 0xA5, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC5, 0x0C, 0x00, 0x00, 0xA5, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC7, 0x0C, 0x00, 0x00,
|
||||
0xA5, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x25, 0x13, 0x00, 0x00, 0xC3, 0x0C, 0x00, 0x00,
|
||||
0xC3, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x28, 0x13, 0x00, 0x00, 0xC5, 0x0C, 0x00, 0x00, 0xC5, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2B, 0x13, 0x00, 0x00,
|
||||
0xC7, 0x0C, 0x00, 0x00, 0xC7, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xD0, 0x0C, 0x00, 0x00, 0xAC, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xD2, 0x0C, 0x00, 0x00, 0xAC, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD4, 0x0C, 0x00, 0x00,
|
||||
0xAC, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2F, 0x13, 0x00, 0x00, 0xD0, 0x0C, 0x00, 0x00,
|
||||
0xD0, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x32, 0x13, 0x00, 0x00, 0xD2, 0x0C, 0x00, 0x00, 0xD2, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x35, 0x13, 0x00, 0x00,
|
||||
0xD4, 0x0C, 0x00, 0x00, 0xD4, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xDD, 0x0C, 0x00, 0x00, 0xB3, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xDF, 0x0C, 0x00, 0x00, 0xB3, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xE1, 0x0C, 0x00, 0x00,
|
||||
0xB3, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x39, 0x13, 0x00, 0x00, 0xDD, 0x0C, 0x00, 0x00,
|
||||
0xDD, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x3C, 0x13, 0x00, 0x00, 0xDF, 0x0C, 0x00, 0x00, 0xDF, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3F, 0x13, 0x00, 0x00,
|
||||
0xE1, 0x0C, 0x00, 0x00, 0xE1, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xEA, 0x0C, 0x00, 0x00, 0xBA, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xEC, 0x0C, 0x00, 0x00, 0xBA, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xEE, 0x0C, 0x00, 0x00,
|
||||
0xBA, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x43, 0x13, 0x00, 0x00, 0xEA, 0x0C, 0x00, 0x00,
|
||||
0xEA, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x46, 0x13, 0x00, 0x00, 0xEC, 0x0C, 0x00, 0x00, 0xEC, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x49, 0x13, 0x00, 0x00,
|
||||
0xEE, 0x0C, 0x00, 0x00, 0xEE, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xF7, 0x0C, 0x00, 0x00, 0xCF, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xF9, 0x0C, 0x00, 0x00, 0xCF, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xFB, 0x0C, 0x00, 0x00,
|
||||
0xCF, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x4D, 0x13, 0x00, 0x00, 0xF7, 0x0C, 0x00, 0x00,
|
||||
0xF7, 0x0C, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x50, 0x13, 0x00, 0x00, 0xF9, 0x0C, 0x00, 0x00, 0xF9, 0x0C, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x53, 0x13, 0x00, 0x00,
|
||||
0xFB, 0x0C, 0x00, 0x00, 0xFB, 0x0C, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x04, 0x0D, 0x00, 0x00, 0xD6, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x06, 0x0D, 0x00, 0x00, 0xD6, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x08, 0x0D, 0x00, 0x00,
|
||||
0xD6, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x57, 0x13, 0x00, 0x00, 0x04, 0x0D, 0x00, 0x00,
|
||||
0x04, 0x0D, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x5A, 0x13, 0x00, 0x00, 0x06, 0x0D, 0x00, 0x00, 0x06, 0x0D, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5D, 0x13, 0x00, 0x00,
|
||||
0x08, 0x0D, 0x00, 0x00, 0x08, 0x0D, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x1E, 0x0D, 0x00, 0x00, 0xC8, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x20, 0x0D, 0x00, 0x00, 0xC8, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x22, 0x0D, 0x00, 0x00,
|
||||
0xC8, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x6B, 0x13, 0x00, 0x00, 0x1E, 0x0D, 0x00, 0x00,
|
||||
0x1E, 0x0D, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x6E, 0x13, 0x00, 0x00, 0x20, 0x0D, 0x00, 0x00, 0x20, 0x0D, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x71, 0x13, 0x00, 0x00,
|
||||
0x22, 0x0D, 0x00, 0x00, 0x22, 0x0D, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2B, 0x0D, 0x00, 0x00, 0xDD, 0x12, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x2D, 0x0D, 0x00, 0x00, 0xDD, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2F, 0x0D, 0x00, 0x00,
|
||||
0xDD, 0x12, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x75, 0x13, 0x00, 0x00, 0x2B, 0x0D, 0x00, 0x00,
|
||||
0x2B, 0x0D, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x78, 0x13, 0x00, 0x00, 0x2D, 0x0D, 0x00, 0x00, 0x2D, 0x0D, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x7B, 0x13, 0x00, 0x00,
|
||||
0x2F, 0x0D, 0x00, 0x00, 0x2F, 0x0D, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x99, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x14, 0x13, 0x00, 0x00, 0x1E, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x9A, 0x13, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0xF6, 0x12, 0x00, 0x00,
|
||||
0x99, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x28, 0x13, 0x00, 0x00, 0x46, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA1, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x9A, 0x13, 0x00, 0x00, 0xA0, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC3, 0x13, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x14, 0x13, 0x00, 0x00,
|
||||
0x1E, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC4, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0xF6, 0x12, 0x00, 0x00, 0xC3, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xCA, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x28, 0x13, 0x00, 0x00, 0x46, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xCB, 0x13, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xC4, 0x13, 0x00, 0x00,
|
||||
0xCA, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xED, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x13, 0x00, 0x00, 0x28, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xEE, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0xED, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xF4, 0x13, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x32, 0x13, 0x00, 0x00,
|
||||
0x50, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xF5, 0x13, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0xEE, 0x13, 0x00, 0x00, 0xF4, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x17, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x1E, 0x13, 0x00, 0x00, 0x28, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x18, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00,
|
||||
0x17, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x32, 0x13, 0x00, 0x00, 0x50, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x1F, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x18, 0x14, 0x00, 0x00, 0x1E, 0x14, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x41, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x3C, 0x13, 0x00, 0x00,
|
||||
0x46, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x42, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x13, 0x00, 0x00, 0x41, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x48, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x50, 0x13, 0x00, 0x00, 0x6E, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x49, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x42, 0x14, 0x00, 0x00,
|
||||
0x48, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x6B, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x3C, 0x13, 0x00, 0x00, 0x46, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x6C, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x1E, 0x13, 0x00, 0x00, 0x6B, 0x14, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x72, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x50, 0x13, 0x00, 0x00,
|
||||
0x6E, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x73, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x6C, 0x14, 0x00, 0x00, 0x72, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x95, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x46, 0x13, 0x00, 0x00, 0x50, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x96, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x28, 0x13, 0x00, 0x00,
|
||||
0x95, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x9C, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x5A, 0x13, 0x00, 0x00, 0x78, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x9D, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x96, 0x14, 0x00, 0x00, 0x9C, 0x14, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xBF, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x46, 0x13, 0x00, 0x00,
|
||||
0x50, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC0, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x28, 0x13, 0x00, 0x00, 0xBF, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xC6, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x5A, 0x13, 0x00, 0x00, 0x78, 0x13, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC7, 0x14, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xC0, 0x14, 0x00, 0x00,
|
||||
0xC6, 0x14, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xE6, 0x14, 0x00, 0x00, 0xCB, 0x13, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0xE7, 0x14, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0xE6, 0x14, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xE8, 0x14, 0x00, 0x00, 0xE7, 0x14, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x07, 0x15, 0x00, 0x00, 0x1F, 0x14, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x08, 0x15, 0x00, 0x00,
|
||||
0x72, 0x00, 0x00, 0x00, 0x07, 0x15, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x09, 0x15, 0x00, 0x00, 0x08, 0x15, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x28, 0x15, 0x00, 0x00,
|
||||
0x73, 0x14, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x29, 0x15, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00, 0x28, 0x15, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2A, 0x15, 0x00, 0x00,
|
||||
0x29, 0x15, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x49, 0x15, 0x00, 0x00, 0xC7, 0x14, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x4A, 0x15, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0x49, 0x15, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x4B, 0x15, 0x00, 0x00, 0x4A, 0x15, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x87, 0x0E, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0xCB, 0x13, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x88, 0x0E, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0xA1, 0x13, 0x00, 0x00, 0x87, 0x0E, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x8A, 0x0E, 0x00, 0x00, 0x88, 0x0E, 0x00, 0x00,
|
||||
0xE8, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x75, 0x15, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00,
|
||||
0x8A, 0x0E, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x9F, 0x0E, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x1F, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA0, 0x0E, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xF5, 0x13, 0x00, 0x00, 0x9F, 0x0E, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xA2, 0x0E, 0x00, 0x00,
|
||||
0xA0, 0x0E, 0x00, 0x00, 0x09, 0x15, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA8, 0x15, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0xA2, 0x0E, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xB7, 0x0E, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x73, 0x14, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xB8, 0x0E, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x49, 0x14, 0x00, 0x00,
|
||||
0xB7, 0x0E, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xBA, 0x0E, 0x00, 0x00, 0xB8, 0x0E, 0x00, 0x00, 0x2A, 0x15, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00, 0xDB, 0x15, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00, 0xBA, 0x0E, 0x00, 0x00,
|
||||
0x5C, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xCF, 0x0E, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0xC7, 0x14, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xD0, 0x0E, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x9D, 0x14, 0x00, 0x00, 0xCF, 0x0E, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xD2, 0x0E, 0x00, 0x00, 0xD0, 0x0E, 0x00, 0x00,
|
||||
0x4B, 0x15, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x0E, 0x16, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00,
|
||||
0xD2, 0x0E, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x3C, 0x16, 0x00, 0x00,
|
||||
0x75, 0x15, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x16, 0x00, 0x00, 0x3C, 0x16, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x40, 0x16, 0x00, 0x00,
|
||||
0x3E, 0x16, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x41, 0x16, 0x00, 0x00, 0x40, 0x16, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x6F, 0x16, 0x00, 0x00,
|
||||
0xA8, 0x15, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x71, 0x16, 0x00, 0x00, 0x6F, 0x16, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x73, 0x16, 0x00, 0x00,
|
||||
0x71, 0x16, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x74, 0x16, 0x00, 0x00, 0x73, 0x16, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xA2, 0x16, 0x00, 0x00,
|
||||
0xDB, 0x15, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xA4, 0x16, 0x00, 0x00, 0xA2, 0x16, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xA6, 0x16, 0x00, 0x00,
|
||||
0xA4, 0x16, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA7, 0x16, 0x00, 0x00, 0xA6, 0x16, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xD5, 0x16, 0x00, 0x00,
|
||||
0x0E, 0x16, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xD7, 0x16, 0x00, 0x00, 0xD5, 0x16, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xD9, 0x16, 0x00, 0x00,
|
||||
0xD7, 0x16, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xDA, 0x16, 0x00, 0x00, 0xD9, 0x16, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0xF6, 0x0E, 0x00, 0x00,
|
||||
0xAF, 0x08, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xFC, 0x0E, 0x00, 0x00, 0x41, 0x16, 0x00, 0x00, 0xF6, 0x0E, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x05, 0x0F, 0x00, 0x00,
|
||||
0x74, 0x16, 0x00, 0x00, 0xF6, 0x0E, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x0E, 0x0F, 0x00, 0x00, 0xA7, 0x16, 0x00, 0x00,
|
||||
0xF6, 0x0E, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x17, 0x0F, 0x00, 0x00, 0xDA, 0x16, 0x00, 0x00, 0xF6, 0x0E, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x1D, 0x0F, 0x00, 0x00,
|
||||
0x42, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x1D, 0x0F, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x21, 0x0F, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x22, 0x0F, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x21, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x23, 0x0F, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00,
|
||||
0x22, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x2A, 0x0F, 0x00, 0x00, 0x1D, 0x0F, 0x00, 0x00, 0x22, 0x0F, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x31, 0x0F, 0x00, 0x00,
|
||||
0x1E, 0x0F, 0x00, 0x00, 0x21, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x36, 0x0F, 0x00, 0x00, 0x1D, 0x0F, 0x00, 0x00,
|
||||
0x21, 0x0F, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x3A, 0x0F, 0x00, 0x00, 0xCB, 0x13, 0x00, 0x00, 0xA1, 0x13, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3B, 0x0F, 0x00, 0x00,
|
||||
0xF2, 0x06, 0x00, 0x00, 0x3A, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x03, 0x17, 0x00, 0x00, 0x3B, 0x0F, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x04, 0x17, 0x00, 0x00,
|
||||
0x72, 0x00, 0x00, 0x00, 0x03, 0x17, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x05, 0x17, 0x00, 0x00, 0x04, 0x17, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3E, 0x0F, 0x00, 0x00,
|
||||
0x23, 0x0F, 0x00, 0x00, 0x05, 0x17, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x42, 0x0F, 0x00, 0x00, 0x1F, 0x14, 0x00, 0x00,
|
||||
0xF5, 0x13, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x43, 0x0F, 0x00, 0x00, 0xF2, 0x06, 0x00, 0x00, 0x42, 0x0F, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x0E, 0x17, 0x00, 0x00,
|
||||
0x43, 0x0F, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x0F, 0x17, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00, 0x0E, 0x17, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x17, 0x00, 0x00,
|
||||
0x0F, 0x17, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x46, 0x0F, 0x00, 0x00, 0x2A, 0x0F, 0x00, 0x00, 0x10, 0x17, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x4A, 0x0F, 0x00, 0x00,
|
||||
0x73, 0x14, 0x00, 0x00, 0x49, 0x14, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x4B, 0x0F, 0x00, 0x00, 0xF2, 0x06, 0x00, 0x00,
|
||||
0x4A, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x19, 0x17, 0x00, 0x00, 0x4B, 0x0F, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x1A, 0x17, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0x19, 0x17, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x1B, 0x17, 0x00, 0x00, 0x1A, 0x17, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x4E, 0x0F, 0x00, 0x00, 0x31, 0x0F, 0x00, 0x00,
|
||||
0x1B, 0x17, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x52, 0x0F, 0x00, 0x00, 0xC7, 0x14, 0x00, 0x00, 0x9D, 0x14, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x53, 0x0F, 0x00, 0x00,
|
||||
0xF2, 0x06, 0x00, 0x00, 0x52, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x24, 0x17, 0x00, 0x00, 0x53, 0x0F, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x25, 0x17, 0x00, 0x00,
|
||||
0x72, 0x00, 0x00, 0x00, 0x24, 0x17, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x26, 0x17, 0x00, 0x00, 0x25, 0x17, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x56, 0x0F, 0x00, 0x00,
|
||||
0x36, 0x0F, 0x00, 0x00, 0x26, 0x17, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5C, 0x0F, 0x00, 0x00, 0xFC, 0x0E, 0x00, 0x00,
|
||||
0x3E, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x65, 0x0F, 0x00, 0x00, 0x05, 0x0F, 0x00, 0x00, 0x46, 0x0F, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x77, 0x0F, 0x00, 0x00,
|
||||
0x0E, 0x0F, 0x00, 0x00, 0x4E, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x78, 0x0F, 0x00, 0x00, 0x65, 0x0F, 0x00, 0x00,
|
||||
0x77, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x7A, 0x0F, 0x00, 0x00, 0x78, 0x0F, 0x00, 0x00, 0x3E, 0x0F, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x92, 0x0F, 0x00, 0x00,
|
||||
0x17, 0x0F, 0x00, 0x00, 0x56, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x93, 0x0F, 0x00, 0x00, 0x5C, 0x0F, 0x00, 0x00,
|
||||
0x92, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x95, 0x0F, 0x00, 0x00, 0x93, 0x0F, 0x00, 0x00, 0x46, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xB0, 0x0F, 0x00, 0x00,
|
||||
0x93, 0x0F, 0x00, 0x00, 0x4E, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xCB, 0x0F, 0x00, 0x00, 0x78, 0x0F, 0x00, 0x00,
|
||||
0x56, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x33, 0x19, 0x00, 0x00, 0x5C, 0x0F, 0x00, 0x00, 0x65, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x34, 0x19, 0x00, 0x00,
|
||||
0x33, 0x19, 0x00, 0x00, 0x77, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x35, 0x19, 0x00, 0x00, 0x34, 0x19, 0x00, 0x00,
|
||||
0x92, 0x0F, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xF5, 0x0F, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x35, 0x19, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xF7, 0x0F, 0x00, 0x00,
|
||||
0xF5, 0x0F, 0x00, 0x00, 0x7A, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xF9, 0x0F, 0x00, 0x00, 0xF7, 0x0F, 0x00, 0x00,
|
||||
0x95, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xFB, 0x0F, 0x00, 0x00, 0xF9, 0x0F, 0x00, 0x00, 0xB0, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xFD, 0x0F, 0x00, 0x00,
|
||||
0xFB, 0x0F, 0x00, 0x00, 0xCB, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x3D, 0x17, 0x00, 0x00, 0xFD, 0x0F, 0x00, 0x00,
|
||||
0x82, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x3E, 0x17, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x00, 0x00, 0x3D, 0x17, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x3F, 0x17, 0x00, 0x00, 0x3E, 0x17, 0x00, 0x00,
|
||||
0x7F, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x42, 0x17, 0x00, 0x00,
|
||||
0x3F, 0x17, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x44, 0x17, 0x00, 0x00, 0x42, 0x17, 0x00, 0x00, 0xFD, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x46, 0x17, 0x00, 0x00,
|
||||
0x44, 0x17, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x47, 0x17, 0x00, 0x00, 0x3F, 0x17, 0x00, 0x00,
|
||||
0x46, 0x17, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x36, 0x19, 0x00, 0x00, 0xF3, 0x12, 0x00, 0x00, 0x11, 0x13, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x07, 0x10, 0x00, 0x00,
|
||||
0x5C, 0x0F, 0x00, 0x00, 0x36, 0x19, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x0B, 0x10, 0x00, 0x00, 0xFD, 0x12, 0x00, 0x00,
|
||||
0x65, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x0C, 0x10, 0x00, 0x00, 0x07, 0x10, 0x00, 0x00, 0x0B, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x10, 0x00, 0x00,
|
||||
0x2F, 0x13, 0x00, 0x00, 0x65, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x11, 0x10, 0x00, 0x00, 0x0C, 0x10, 0x00, 0x00,
|
||||
0x10, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x15, 0x10, 0x00, 0x00, 0x39, 0x13, 0x00, 0x00, 0x77, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x16, 0x10, 0x00, 0x00,
|
||||
0x11, 0x10, 0x00, 0x00, 0x15, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x1A, 0x10, 0x00, 0x00, 0x6B, 0x13, 0x00, 0x00,
|
||||
0x77, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x1B, 0x10, 0x00, 0x00, 0x16, 0x10, 0x00, 0x00, 0x1A, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x1F, 0x10, 0x00, 0x00,
|
||||
0x57, 0x13, 0x00, 0x00, 0x92, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x20, 0x10, 0x00, 0x00, 0x1B, 0x10, 0x00, 0x00,
|
||||
0x1F, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x24, 0x10, 0x00, 0x00, 0x75, 0x13, 0x00, 0x00, 0x92, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x25, 0x10, 0x00, 0x00,
|
||||
0x20, 0x10, 0x00, 0x00, 0x24, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x29, 0x10, 0x00, 0x00, 0x1B, 0x13, 0x00, 0x00,
|
||||
0x7A, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x2A, 0x10, 0x00, 0x00, 0x25, 0x10, 0x00, 0x00, 0x29, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2E, 0x10, 0x00, 0x00,
|
||||
0x25, 0x13, 0x00, 0x00, 0x95, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2F, 0x10, 0x00, 0x00, 0x2A, 0x10, 0x00, 0x00,
|
||||
0x2E, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x33, 0x10, 0x00, 0x00, 0x43, 0x13, 0x00, 0x00, 0xB0, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x34, 0x10, 0x00, 0x00,
|
||||
0x2F, 0x10, 0x00, 0x00, 0x33, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x38, 0x10, 0x00, 0x00, 0x4D, 0x13, 0x00, 0x00,
|
||||
0xCB, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x39, 0x10, 0x00, 0x00, 0x34, 0x10, 0x00, 0x00, 0x38, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3B, 0x10, 0x00, 0x00,
|
||||
0x39, 0x10, 0x00, 0x00, 0x47, 0x17, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x55, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0x3B, 0x10, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x37, 0x19, 0x00, 0x00, 0xF6, 0x12, 0x00, 0x00, 0x14, 0x13, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x45, 0x10, 0x00, 0x00,
|
||||
0x5C, 0x0F, 0x00, 0x00, 0x37, 0x19, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x49, 0x10, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00,
|
||||
0x65, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x4A, 0x10, 0x00, 0x00, 0x45, 0x10, 0x00, 0x00, 0x49, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x4E, 0x10, 0x00, 0x00,
|
||||
0x32, 0x13, 0x00, 0x00, 0x65, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x4F, 0x10, 0x00, 0x00, 0x4A, 0x10, 0x00, 0x00,
|
||||
0x4E, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x53, 0x10, 0x00, 0x00, 0x3C, 0x13, 0x00, 0x00, 0x77, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x54, 0x10, 0x00, 0x00,
|
||||
0x4F, 0x10, 0x00, 0x00, 0x53, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x58, 0x10, 0x00, 0x00, 0x6E, 0x13, 0x00, 0x00,
|
||||
0x77, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x59, 0x10, 0x00, 0x00, 0x54, 0x10, 0x00, 0x00, 0x58, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5D, 0x10, 0x00, 0x00,
|
||||
0x5A, 0x13, 0x00, 0x00, 0x92, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5E, 0x10, 0x00, 0x00, 0x59, 0x10, 0x00, 0x00,
|
||||
0x5D, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x62, 0x10, 0x00, 0x00, 0x78, 0x13, 0x00, 0x00, 0x92, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x63, 0x10, 0x00, 0x00,
|
||||
0x5E, 0x10, 0x00, 0x00, 0x62, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x67, 0x10, 0x00, 0x00, 0x1E, 0x13, 0x00, 0x00,
|
||||
0x7A, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x68, 0x10, 0x00, 0x00, 0x63, 0x10, 0x00, 0x00, 0x67, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x6C, 0x10, 0x00, 0x00,
|
||||
0x28, 0x13, 0x00, 0x00, 0x95, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x6D, 0x10, 0x00, 0x00, 0x68, 0x10, 0x00, 0x00,
|
||||
0x6C, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x71, 0x10, 0x00, 0x00, 0x46, 0x13, 0x00, 0x00, 0xB0, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x72, 0x10, 0x00, 0x00,
|
||||
0x6D, 0x10, 0x00, 0x00, 0x71, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x76, 0x10, 0x00, 0x00, 0x50, 0x13, 0x00, 0x00,
|
||||
0xCB, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x77, 0x10, 0x00, 0x00, 0x72, 0x10, 0x00, 0x00, 0x76, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x79, 0x10, 0x00, 0x00,
|
||||
0x77, 0x10, 0x00, 0x00, 0x47, 0x17, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x63, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0x79, 0x10, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x38, 0x19, 0x00, 0x00, 0xF9, 0x12, 0x00, 0x00, 0x17, 0x13, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x83, 0x10, 0x00, 0x00,
|
||||
0x5C, 0x0F, 0x00, 0x00, 0x38, 0x19, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x87, 0x10, 0x00, 0x00, 0x03, 0x13, 0x00, 0x00,
|
||||
0x65, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x88, 0x10, 0x00, 0x00, 0x83, 0x10, 0x00, 0x00, 0x87, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x8C, 0x10, 0x00, 0x00,
|
||||
0x35, 0x13, 0x00, 0x00, 0x65, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x8D, 0x10, 0x00, 0x00, 0x88, 0x10, 0x00, 0x00,
|
||||
0x8C, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x91, 0x10, 0x00, 0x00, 0x3F, 0x13, 0x00, 0x00, 0x77, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x92, 0x10, 0x00, 0x00,
|
||||
0x8D, 0x10, 0x00, 0x00, 0x91, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x96, 0x10, 0x00, 0x00, 0x71, 0x13, 0x00, 0x00,
|
||||
0x77, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x97, 0x10, 0x00, 0x00, 0x92, 0x10, 0x00, 0x00, 0x96, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x9B, 0x10, 0x00, 0x00,
|
||||
0x5D, 0x13, 0x00, 0x00, 0x92, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x9C, 0x10, 0x00, 0x00, 0x97, 0x10, 0x00, 0x00,
|
||||
0x9B, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x10, 0x00, 0x00, 0x7B, 0x13, 0x00, 0x00, 0x92, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xA1, 0x10, 0x00, 0x00,
|
||||
0x9C, 0x10, 0x00, 0x00, 0xA0, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA5, 0x10, 0x00, 0x00, 0x21, 0x13, 0x00, 0x00,
|
||||
0x7A, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA6, 0x10, 0x00, 0x00, 0xA1, 0x10, 0x00, 0x00, 0xA5, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xAA, 0x10, 0x00, 0x00,
|
||||
0x2B, 0x13, 0x00, 0x00, 0x95, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xAB, 0x10, 0x00, 0x00, 0xA6, 0x10, 0x00, 0x00,
|
||||
0xAA, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xAF, 0x10, 0x00, 0x00, 0x49, 0x13, 0x00, 0x00, 0xB0, 0x0F, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xB0, 0x10, 0x00, 0x00,
|
||||
0xAB, 0x10, 0x00, 0x00, 0xAF, 0x10, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB4, 0x10, 0x00, 0x00, 0x53, 0x13, 0x00, 0x00,
|
||||
0xCB, 0x0F, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xB5, 0x10, 0x00, 0x00, 0xB0, 0x10, 0x00, 0x00, 0xB4, 0x10, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xB7, 0x10, 0x00, 0x00,
|
||||
0xB5, 0x10, 0x00, 0x00, 0x47, 0x17, 0x00, 0x00, 0x0C, 0x00, 0x08, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x71, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x00, 0x00, 0xB7, 0x10, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0xC6, 0x08, 0x00, 0x00,
|
||||
0xC7, 0x08, 0x00, 0x00, 0xB8, 0x08, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xC7, 0x08, 0x00, 0x00, 0x55, 0x17, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xC6, 0x08, 0x00, 0x00, 0xC9, 0x08, 0x00, 0x00,
|
||||
0xB8, 0x08, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0xC9, 0x08, 0x00, 0x00, 0x63, 0x17, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0xC6, 0x08, 0x00, 0x00, 0xCB, 0x08, 0x00, 0x00, 0xB8, 0x08, 0x00, 0x00,
|
||||
0xEA, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0xCB, 0x08, 0x00, 0x00,
|
||||
0x71, 0x17, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0xCC, 0x08, 0x00, 0x00, 0xB8, 0x08, 0x00, 0x00, 0x4F, 0x00, 0x08, 0x00,
|
||||
0x2C, 0x00, 0x00, 0x00, 0xCD, 0x08, 0x00, 0x00, 0xCC, 0x08, 0x00, 0x00,
|
||||
0xCC, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x2C, 0x00, 0x00, 0x00,
|
||||
0xCE, 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00,
|
||||
0xCD, 0x08, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xD0, 0x08, 0x00, 0x00, 0xCE, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xC7, 0x08, 0x00, 0x00, 0xD0, 0x08, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD2, 0x08, 0x00, 0x00,
|
||||
0xCE, 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0xC9, 0x08, 0x00, 0x00, 0xD2, 0x08, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xD4, 0x08, 0x00, 0x00, 0xCE, 0x08, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0xCB, 0x08, 0x00, 0x00,
|
||||
0xD4, 0x08, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0xC6, 0x08, 0x00, 0x00,
|
||||
0xD6, 0x08, 0x00, 0x00, 0xB8, 0x08, 0x00, 0x00, 0xD5, 0x08, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xD6, 0x08, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0xFD, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00,
|
||||
};
|
||||
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_frag.spv
generated
Normal file
Binary file not shown.
433
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_frag.txt
generated
Normal file
433
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_cas_sharpen_frag.txt
generated
Normal file
@@ -0,0 +1,433 @@
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos Glslang Reference Front End; 10
|
||||
; Bound: 6457
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
%1 = OpExtInstImport "GLSL.std.450"
|
||||
OpMemoryModel Logical GLSL450
|
||||
OpEntryPoint Fragment %main "main" %gl_FragCoord %xe_frag_color
|
||||
OpExecutionMode %main OriginUpperLeft
|
||||
OpSource GLSL 420
|
||||
OpSourceExtension "GL_GOOGLE_cpp_style_line_directive"
|
||||
OpSourceExtension "GL_GOOGLE_include_directive"
|
||||
OpName %main "main"
|
||||
OpName %xe_texture "xe_texture"
|
||||
OpName %gl_FragCoord "gl_FragCoord"
|
||||
OpName %XeCasSharpenConstants "XeCasSharpenConstants"
|
||||
OpMemberName %XeCasSharpenConstants 0 "xe_cas_output_offset"
|
||||
OpMemberName %XeCasSharpenConstants 1 "xe_cas_sharpness_post_setup"
|
||||
OpName %_ ""
|
||||
OpName %xe_frag_color "xe_frag_color"
|
||||
OpDecorate %xe_texture DescriptorSet 0
|
||||
OpDecorate %xe_texture Binding 0
|
||||
OpDecorate %gl_FragCoord BuiltIn FragCoord
|
||||
OpMemberDecorate %XeCasSharpenConstants 0 Offset 16
|
||||
OpMemberDecorate %XeCasSharpenConstants 1 Offset 24
|
||||
OpDecorate %XeCasSharpenConstants Block
|
||||
OpDecorate %xe_frag_color Location 0
|
||||
%void = OpTypeVoid
|
||||
%3 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_532432441 = OpConstant %uint 532432441
|
||||
%uint_2129690299 = OpConstant %uint 2129690299
|
||||
%uint_2129764351 = OpConstant %uint 2129764351
|
||||
%float_2 = OpConstant %float 2
|
||||
%143 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%144 = OpTypeSampledImage %143
|
||||
%_ptr_UniformConstant_144 = OpTypePointer UniformConstant %144
|
||||
%xe_texture = OpVariable %_ptr_UniformConstant_144 UniformConstant
|
||||
%int_0 = OpConstant %int 0
|
||||
%v4float = OpTypeVector %float 4
|
||||
%int_n1 = OpConstant %int -1
|
||||
%181 = OpConstantComposite %v2int %int_0 %int_n1
|
||||
%int_1 = OpConstant %int 1
|
||||
%188 = OpConstantComposite %v2int %int_1 %int_n1
|
||||
%194 = OpConstantComposite %v2int %int_n1 %int_0
|
||||
%204 = OpConstantComposite %v2int %int_1 %int_0
|
||||
%210 = OpConstantComposite %v2int %int_n1 %int_1
|
||||
%216 = OpConstantComposite %v2int %int_0 %int_1
|
||||
%222 = OpConstantComposite %v2int %int_1 %int_1
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%v2float = OpTypeVector %float 2
|
||||
%int_2 = OpConstant %int 2
|
||||
%712 = OpConstantComposite %v2int %int_2 %int_0
|
||||
%734 = OpConstantComposite %v2int %int_0 %int_2
|
||||
%745 = OpConstantComposite %v2int %int_2 %int_1
|
||||
%751 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%float_0_03125 = OpConstant %float 0.03125
|
||||
%_ptr_Input_v4float = OpTypePointer Input %v4float
|
||||
%gl_FragCoord = OpVariable %_ptr_Input_v4float Input
|
||||
%XeCasSharpenConstants = OpTypeStruct %v2int %float
|
||||
%_ptr_PushConstant_XeCasSharpenConstants = OpTypePointer PushConstant %XeCasSharpenConstants
|
||||
%_ = OpVariable %_ptr_PushConstant_XeCasSharpenConstants PushConstant
|
||||
%_ptr_PushConstant_v2int = OpTypePointer PushConstant %v2int
|
||||
%_ptr_PushConstant_float = OpTypePointer PushConstant %float
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
%xe_frag_color = OpVariable %_ptr_Output_v4float Output
|
||||
%_ptr_Output_float = OpTypePointer Output %float
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%main = OpFunction %void None %3
|
||||
%5 = OpLabel
|
||||
%2205 = OpLoad %v4float %gl_FragCoord
|
||||
%2206 = OpVectorShuffle %v2float %2205 %2205 0 1
|
||||
%2207 = OpConvertFToS %v2int %2206
|
||||
%2212 = OpAccessChain %_ptr_PushConstant_v2int %_ %int_0
|
||||
%2213 = OpLoad %v2int %2212
|
||||
%2214 = OpISub %v2int %2207 %2213
|
||||
%2215 = OpBitcast %v2uint %2214
|
||||
%2221 = OpAccessChain %_ptr_PushConstant_float %_ %int_1
|
||||
%2222 = OpLoad %float %2221
|
||||
%2223 = OpBitcast %uint %2222
|
||||
OpBranch %2768
|
||||
%2768 = OpLabel
|
||||
%3119 = OpConvertUToF %v2float %2215
|
||||
%3135 = OpExtInst %v2float %1 Floor %3119
|
||||
%3138 = OpFSub %v2float %3119 %3135
|
||||
%3140 = OpConvertFToS %v2int %3135
|
||||
%3145 = OpIAdd %v2int %3140 %181
|
||||
%4735 = OpLoad %144 %xe_texture
|
||||
%4737 = OpImage %143 %4735
|
||||
%4738 = OpImageFetch %v4float %4737 %3145 Lod %int_0
|
||||
%3148 = OpIAdd %v2int %3140 %194
|
||||
%4744 = OpImage %143 %4735
|
||||
%4745 = OpImageFetch %v4float %4744 %3148 Lod %int_0
|
||||
%4751 = OpImage %143 %4735
|
||||
%4752 = OpImageFetch %v4float %4751 %3140 Lod %int_0
|
||||
%3153 = OpIAdd %v2int %3140 %188
|
||||
%4758 = OpImage %143 %4735
|
||||
%4759 = OpImageFetch %v4float %4758 %3153 Lod %int_0
|
||||
%3159 = OpIAdd %v2int %3140 %204
|
||||
%4772 = OpImage %143 %4735
|
||||
%4773 = OpImageFetch %v4float %4772 %3159 Lod %int_0
|
||||
%3162 = OpIAdd %v2int %3140 %712
|
||||
%4779 = OpImage %143 %4735
|
||||
%4780 = OpImageFetch %v4float %4779 %3162 Lod %int_0
|
||||
%3165 = OpIAdd %v2int %3140 %210
|
||||
%4786 = OpImage %143 %4735
|
||||
%4787 = OpImageFetch %v4float %4786 %3165 Lod %int_0
|
||||
%3168 = OpIAdd %v2int %3140 %216
|
||||
%4793 = OpImage %143 %4735
|
||||
%4794 = OpImageFetch %v4float %4793 %3168 Lod %int_0
|
||||
%3174 = OpIAdd %v2int %3140 %734
|
||||
%4807 = OpImage %143 %4735
|
||||
%4808 = OpImageFetch %v4float %4807 %3174 Lod %int_0
|
||||
%3177 = OpIAdd %v2int %3140 %222
|
||||
%4814 = OpImage %143 %4735
|
||||
%4815 = OpImageFetch %v4float %4814 %3177 Lod %int_0
|
||||
%3180 = OpIAdd %v2int %3140 %745
|
||||
%4821 = OpImage %143 %4735
|
||||
%4822 = OpImageFetch %v4float %4821 %3180 Lod %int_0
|
||||
%3183 = OpIAdd %v2int %3140 %751
|
||||
%4828 = OpImage %143 %4735
|
||||
%4829 = OpImageFetch %v4float %4828 %3183 Lod %int_0
|
||||
%3202 = OpCompositeExtract %float %4738 0
|
||||
%3204 = OpCompositeExtract %float %4738 1
|
||||
%3206 = OpCompositeExtract %float %4738 2
|
||||
%4851 = OpFMul %float %3202 %3202
|
||||
%4854 = OpFMul %float %3204 %3204
|
||||
%4857 = OpFMul %float %3206 %3206
|
||||
%3215 = OpCompositeExtract %float %4759 0
|
||||
%3217 = OpCompositeExtract %float %4759 1
|
||||
%3219 = OpCompositeExtract %float %4759 2
|
||||
%4861 = OpFMul %float %3215 %3215
|
||||
%4864 = OpFMul %float %3217 %3217
|
||||
%4867 = OpFMul %float %3219 %3219
|
||||
%3241 = OpCompositeExtract %float %4745 0
|
||||
%3243 = OpCompositeExtract %float %4745 1
|
||||
%3245 = OpCompositeExtract %float %4745 2
|
||||
%4881 = OpFMul %float %3241 %3241
|
||||
%4884 = OpFMul %float %3243 %3243
|
||||
%4887 = OpFMul %float %3245 %3245
|
||||
%3254 = OpCompositeExtract %float %4752 0
|
||||
%3256 = OpCompositeExtract %float %4752 1
|
||||
%3258 = OpCompositeExtract %float %4752 2
|
||||
%4891 = OpFMul %float %3254 %3254
|
||||
%4894 = OpFMul %float %3256 %3256
|
||||
%4897 = OpFMul %float %3258 %3258
|
||||
%3267 = OpCompositeExtract %float %4773 0
|
||||
%3269 = OpCompositeExtract %float %4773 1
|
||||
%3271 = OpCompositeExtract %float %4773 2
|
||||
%4901 = OpFMul %float %3267 %3267
|
||||
%4904 = OpFMul %float %3269 %3269
|
||||
%4907 = OpFMul %float %3271 %3271
|
||||
%3280 = OpCompositeExtract %float %4780 0
|
||||
%3282 = OpCompositeExtract %float %4780 1
|
||||
%3284 = OpCompositeExtract %float %4780 2
|
||||
%4911 = OpFMul %float %3280 %3280
|
||||
%4914 = OpFMul %float %3282 %3282
|
||||
%4917 = OpFMul %float %3284 %3284
|
||||
%3293 = OpCompositeExtract %float %4787 0
|
||||
%3295 = OpCompositeExtract %float %4787 1
|
||||
%3297 = OpCompositeExtract %float %4787 2
|
||||
%4921 = OpFMul %float %3293 %3293
|
||||
%4924 = OpFMul %float %3295 %3295
|
||||
%4927 = OpFMul %float %3297 %3297
|
||||
%3306 = OpCompositeExtract %float %4794 0
|
||||
%3308 = OpCompositeExtract %float %4794 1
|
||||
%3310 = OpCompositeExtract %float %4794 2
|
||||
%4931 = OpFMul %float %3306 %3306
|
||||
%4934 = OpFMul %float %3308 %3308
|
||||
%4937 = OpFMul %float %3310 %3310
|
||||
%3319 = OpCompositeExtract %float %4815 0
|
||||
%3321 = OpCompositeExtract %float %4815 1
|
||||
%3323 = OpCompositeExtract %float %4815 2
|
||||
%4941 = OpFMul %float %3319 %3319
|
||||
%4944 = OpFMul %float %3321 %3321
|
||||
%4947 = OpFMul %float %3323 %3323
|
||||
%3332 = OpCompositeExtract %float %4822 0
|
||||
%3334 = OpCompositeExtract %float %4822 1
|
||||
%3336 = OpCompositeExtract %float %4822 2
|
||||
%4951 = OpFMul %float %3332 %3332
|
||||
%4954 = OpFMul %float %3334 %3334
|
||||
%4957 = OpFMul %float %3336 %3336
|
||||
%3358 = OpCompositeExtract %float %4808 0
|
||||
%3360 = OpCompositeExtract %float %4808 1
|
||||
%3362 = OpCompositeExtract %float %4808 2
|
||||
%4971 = OpFMul %float %3358 %3358
|
||||
%4974 = OpFMul %float %3360 %3360
|
||||
%4977 = OpFMul %float %3362 %3362
|
||||
%3371 = OpCompositeExtract %float %4829 0
|
||||
%3373 = OpCompositeExtract %float %4829 1
|
||||
%3375 = OpCompositeExtract %float %4829 2
|
||||
%4981 = OpFMul %float %3371 %3371
|
||||
%4984 = OpFMul %float %3373 %3373
|
||||
%4987 = OpFMul %float %3375 %3375
|
||||
%5017 = OpExtInst %float %1 FMin %4884 %4894
|
||||
%5018 = OpExtInst %float %1 FMin %4854 %5017
|
||||
%5024 = OpExtInst %float %1 FMin %4904 %4934
|
||||
%5025 = OpExtInst %float %1 FMin %5018 %5024
|
||||
%5059 = OpExtInst %float %1 FMax %4884 %4894
|
||||
%5060 = OpExtInst %float %1 FMax %4854 %5059
|
||||
%5066 = OpExtInst %float %1 FMax %4904 %4934
|
||||
%5067 = OpExtInst %float %1 FMax %5060 %5066
|
||||
%5101 = OpExtInst %float %1 FMin %4894 %4904
|
||||
%5102 = OpExtInst %float %1 FMin %4864 %5101
|
||||
%5108 = OpExtInst %float %1 FMin %4914 %4944
|
||||
%5109 = OpExtInst %float %1 FMin %5102 %5108
|
||||
%5143 = OpExtInst %float %1 FMax %4894 %4904
|
||||
%5144 = OpExtInst %float %1 FMax %4864 %5143
|
||||
%5150 = OpExtInst %float %1 FMax %4914 %4944
|
||||
%5151 = OpExtInst %float %1 FMax %5144 %5150
|
||||
%5185 = OpExtInst %float %1 FMin %4924 %4934
|
||||
%5186 = OpExtInst %float %1 FMin %4894 %5185
|
||||
%5192 = OpExtInst %float %1 FMin %4944 %4974
|
||||
%5193 = OpExtInst %float %1 FMin %5186 %5192
|
||||
%5227 = OpExtInst %float %1 FMax %4924 %4934
|
||||
%5228 = OpExtInst %float %1 FMax %4894 %5227
|
||||
%5234 = OpExtInst %float %1 FMax %4944 %4974
|
||||
%5235 = OpExtInst %float %1 FMax %5228 %5234
|
||||
%5269 = OpExtInst %float %1 FMin %4934 %4944
|
||||
%5270 = OpExtInst %float %1 FMin %4904 %5269
|
||||
%5276 = OpExtInst %float %1 FMin %4954 %4984
|
||||
%5277 = OpExtInst %float %1 FMin %5270 %5276
|
||||
%5311 = OpExtInst %float %1 FMax %4934 %4944
|
||||
%5312 = OpExtInst %float %1 FMax %4904 %5311
|
||||
%5318 = OpExtInst %float %1 FMax %4954 %4984
|
||||
%5319 = OpExtInst %float %1 FMax %5312 %5318
|
||||
%5350 = OpBitcast %uint %5067
|
||||
%5351 = OpISub %uint %uint_2129690299 %5350
|
||||
%5352 = OpBitcast %float %5351
|
||||
%5383 = OpBitcast %uint %5151
|
||||
%5384 = OpISub %uint %uint_2129690299 %5383
|
||||
%5385 = OpBitcast %float %5384
|
||||
%5416 = OpBitcast %uint %5235
|
||||
%5417 = OpISub %uint %uint_2129690299 %5416
|
||||
%5418 = OpBitcast %float %5417
|
||||
%5449 = OpBitcast %uint %5319
|
||||
%5450 = OpISub %uint %uint_2129690299 %5449
|
||||
%5451 = OpBitcast %float %5450
|
||||
%3719 = OpFSub %float %float_1 %5067
|
||||
%3720 = OpExtInst %float %1 FMin %5025 %3719
|
||||
%3722 = OpFMul %float %3720 %5352
|
||||
%5493 = OpExtInst %float %1 FClamp %3722 %float_0 %float_1
|
||||
%3743 = OpFSub %float %float_1 %5151
|
||||
%3744 = OpExtInst %float %1 FMin %5109 %3743
|
||||
%3746 = OpFMul %float %3744 %5385
|
||||
%5544 = OpExtInst %float %1 FClamp %3746 %float_0 %float_1
|
||||
%3767 = OpFSub %float %float_1 %5235
|
||||
%3768 = OpExtInst %float %1 FMin %5193 %3767
|
||||
%3770 = OpFMul %float %3768 %5418
|
||||
%5595 = OpExtInst %float %1 FClamp %3770 %float_0 %float_1
|
||||
%3791 = OpFSub %float %float_1 %5319
|
||||
%3792 = OpExtInst %float %1 FMin %5277 %3791
|
||||
%3794 = OpFMul %float %3792 %5451
|
||||
%5646 = OpExtInst %float %1 FClamp %3794 %float_0 %float_1
|
||||
%5692 = OpBitcast %uint %5493
|
||||
%5694 = OpShiftRightLogical %uint %5692 %uint_1
|
||||
%5696 = OpIAdd %uint %5694 %uint_532432441
|
||||
%5697 = OpBitcast %float %5696
|
||||
%5743 = OpBitcast %uint %5544
|
||||
%5745 = OpShiftRightLogical %uint %5743 %uint_1
|
||||
%5747 = OpIAdd %uint %5745 %uint_532432441
|
||||
%5748 = OpBitcast %float %5747
|
||||
%5794 = OpBitcast %uint %5595
|
||||
%5796 = OpShiftRightLogical %uint %5794 %uint_1
|
||||
%5798 = OpIAdd %uint %5796 %uint_532432441
|
||||
%5799 = OpBitcast %float %5798
|
||||
%5845 = OpBitcast %uint %5646
|
||||
%5847 = OpShiftRightLogical %uint %5845 %uint_1
|
||||
%5849 = OpIAdd %uint %5847 %uint_532432441
|
||||
%5850 = OpBitcast %float %5849
|
||||
%3830 = OpBitcast %float %2223
|
||||
%3836 = OpFMul %float %5697 %3830
|
||||
%3845 = OpFMul %float %5748 %3830
|
||||
%3854 = OpFMul %float %5799 %3830
|
||||
%3863 = OpFMul %float %5850 %3830
|
||||
%3869 = OpCompositeExtract %float %3138 0
|
||||
%3870 = OpFSub %float %float_1 %3869
|
||||
%3873 = OpCompositeExtract %float %3138 1
|
||||
%3874 = OpFSub %float %float_1 %3873
|
||||
%3875 = OpFMul %float %3870 %3874
|
||||
%3882 = OpFMul %float %3869 %3874
|
||||
%3889 = OpFMul %float %3870 %3873
|
||||
%3894 = OpFMul %float %3869 %3873
|
||||
%3898 = OpFSub %float %5067 %5025
|
||||
%3899 = OpFAdd %float %float_0_03125 %3898
|
||||
%5891 = OpBitcast %uint %3899
|
||||
%5892 = OpISub %uint %uint_2129690299 %5891
|
||||
%5893 = OpBitcast %float %5892
|
||||
%3902 = OpFMul %float %3875 %5893
|
||||
%3906 = OpFSub %float %5151 %5109
|
||||
%3907 = OpFAdd %float %float_0_03125 %3906
|
||||
%5902 = OpBitcast %uint %3907
|
||||
%5903 = OpISub %uint %uint_2129690299 %5902
|
||||
%5904 = OpBitcast %float %5903
|
||||
%3910 = OpFMul %float %3882 %5904
|
||||
%3914 = OpFSub %float %5235 %5193
|
||||
%3915 = OpFAdd %float %float_0_03125 %3914
|
||||
%5913 = OpBitcast %uint %3915
|
||||
%5914 = OpISub %uint %uint_2129690299 %5913
|
||||
%5915 = OpBitcast %float %5914
|
||||
%3918 = OpFMul %float %3889 %5915
|
||||
%3922 = OpFSub %float %5319 %5277
|
||||
%3923 = OpFAdd %float %float_0_03125 %3922
|
||||
%5924 = OpBitcast %uint %3923
|
||||
%5925 = OpISub %uint %uint_2129690299 %5924
|
||||
%5926 = OpBitcast %float %5925
|
||||
%3926 = OpFMul %float %3894 %5926
|
||||
%3932 = OpFMul %float %3836 %3902
|
||||
%3941 = OpFMul %float %3845 %3910
|
||||
%3959 = OpFMul %float %3854 %3918
|
||||
%3960 = OpFAdd %float %3941 %3959
|
||||
%3962 = OpFAdd %float %3960 %3902
|
||||
%3986 = OpFMul %float %3863 %3926
|
||||
%3987 = OpFAdd %float %3932 %3986
|
||||
%3989 = OpFAdd %float %3987 %3910
|
||||
%4016 = OpFAdd %float %3987 %3918
|
||||
%4043 = OpFAdd %float %3960 %3926
|
||||
%6451 = OpFAdd %float %3932 %3941
|
||||
%6452 = OpFAdd %float %6451 %3959
|
||||
%6453 = OpFAdd %float %6452 %3986
|
||||
%4085 = OpFMul %float %float_2 %6453
|
||||
%4087 = OpFAdd %float %4085 %3962
|
||||
%4089 = OpFAdd %float %4087 %3989
|
||||
%4091 = OpFAdd %float %4089 %4016
|
||||
%4093 = OpFAdd %float %4091 %4043
|
||||
%5949 = OpBitcast %uint %4093
|
||||
%5950 = OpISub %uint %uint_2129764351 %5949
|
||||
%5951 = OpBitcast %float %5950
|
||||
%5954 = OpFNegate %float %5951
|
||||
%5956 = OpFMul %float %5954 %4093
|
||||
%5958 = OpFAdd %float %5956 %float_2
|
||||
%5959 = OpFMul %float %5951 %5958
|
||||
%6454 = OpFAdd %float %4851 %4881
|
||||
%4103 = OpFMul %float %3932 %6454
|
||||
%4107 = OpFMul %float %4861 %3941
|
||||
%4108 = OpFAdd %float %4103 %4107
|
||||
%4112 = OpFMul %float %4911 %3941
|
||||
%4113 = OpFAdd %float %4108 %4112
|
||||
%4117 = OpFMul %float %4921 %3959
|
||||
%4118 = OpFAdd %float %4113 %4117
|
||||
%4122 = OpFMul %float %4971 %3959
|
||||
%4123 = OpFAdd %float %4118 %4122
|
||||
%4127 = OpFMul %float %4951 %3986
|
||||
%4128 = OpFAdd %float %4123 %4127
|
||||
%4132 = OpFMul %float %4981 %3986
|
||||
%4133 = OpFAdd %float %4128 %4132
|
||||
%4137 = OpFMul %float %4891 %3962
|
||||
%4138 = OpFAdd %float %4133 %4137
|
||||
%4142 = OpFMul %float %4901 %3989
|
||||
%4143 = OpFAdd %float %4138 %4142
|
||||
%4147 = OpFMul %float %4931 %4016
|
||||
%4148 = OpFAdd %float %4143 %4147
|
||||
%4152 = OpFMul %float %4941 %4043
|
||||
%4153 = OpFAdd %float %4148 %4152
|
||||
%4155 = OpFMul %float %4153 %5959
|
||||
%5973 = OpExtInst %float %1 FClamp %4155 %float_0 %float_1
|
||||
%6455 = OpFAdd %float %4854 %4884
|
||||
%4165 = OpFMul %float %3932 %6455
|
||||
%4169 = OpFMul %float %4864 %3941
|
||||
%4170 = OpFAdd %float %4165 %4169
|
||||
%4174 = OpFMul %float %4914 %3941
|
||||
%4175 = OpFAdd %float %4170 %4174
|
||||
%4179 = OpFMul %float %4924 %3959
|
||||
%4180 = OpFAdd %float %4175 %4179
|
||||
%4184 = OpFMul %float %4974 %3959
|
||||
%4185 = OpFAdd %float %4180 %4184
|
||||
%4189 = OpFMul %float %4954 %3986
|
||||
%4190 = OpFAdd %float %4185 %4189
|
||||
%4194 = OpFMul %float %4984 %3986
|
||||
%4195 = OpFAdd %float %4190 %4194
|
||||
%4199 = OpFMul %float %4894 %3962
|
||||
%4200 = OpFAdd %float %4195 %4199
|
||||
%4204 = OpFMul %float %4904 %3989
|
||||
%4205 = OpFAdd %float %4200 %4204
|
||||
%4209 = OpFMul %float %4934 %4016
|
||||
%4210 = OpFAdd %float %4205 %4209
|
||||
%4214 = OpFMul %float %4944 %4043
|
||||
%4215 = OpFAdd %float %4210 %4214
|
||||
%4217 = OpFMul %float %4215 %5959
|
||||
%5987 = OpExtInst %float %1 FClamp %4217 %float_0 %float_1
|
||||
%6456 = OpFAdd %float %4857 %4887
|
||||
%4227 = OpFMul %float %3932 %6456
|
||||
%4231 = OpFMul %float %4867 %3941
|
||||
%4232 = OpFAdd %float %4227 %4231
|
||||
%4236 = OpFMul %float %4917 %3941
|
||||
%4237 = OpFAdd %float %4232 %4236
|
||||
%4241 = OpFMul %float %4927 %3959
|
||||
%4242 = OpFAdd %float %4237 %4241
|
||||
%4246 = OpFMul %float %4977 %3959
|
||||
%4247 = OpFAdd %float %4242 %4246
|
||||
%4251 = OpFMul %float %4957 %3986
|
||||
%4252 = OpFAdd %float %4247 %4251
|
||||
%4256 = OpFMul %float %4987 %3986
|
||||
%4257 = OpFAdd %float %4252 %4256
|
||||
%4261 = OpFMul %float %4897 %3962
|
||||
%4262 = OpFAdd %float %4257 %4261
|
||||
%4266 = OpFMul %float %4907 %3989
|
||||
%4267 = OpFAdd %float %4262 %4266
|
||||
%4271 = OpFMul %float %4937 %4016
|
||||
%4272 = OpFAdd %float %4267 %4271
|
||||
%4276 = OpFMul %float %4947 %4043
|
||||
%4277 = OpFAdd %float %4272 %4276
|
||||
%4279 = OpFMul %float %4277 %5959
|
||||
%6001 = OpExtInst %float %1 FClamp %4279 %float_0 %float_1
|
||||
%2247 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_0
|
||||
OpStore %2247 %5973
|
||||
%2249 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_1
|
||||
OpStore %2249 %5987
|
||||
%2251 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_2
|
||||
OpStore %2251 %6001
|
||||
%2252 = OpLoad %v4float %xe_frag_color
|
||||
%2253 = OpVectorShuffle %v3float %2252 %2252 0 1 2
|
||||
%2254 = OpExtInst %v3float %1 Sqrt %2253
|
||||
%2256 = OpCompositeExtract %float %2254 0
|
||||
OpStore %2247 %2256
|
||||
%2258 = OpCompositeExtract %float %2254 1
|
||||
OpStore %2249 %2258
|
||||
%2260 = OpCompositeExtract %float %2254 2
|
||||
OpStore %2251 %2260
|
||||
%2262 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_3
|
||||
OpStore %2262 %float_1
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
1341
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_easu_frag.h
generated
Normal file
1341
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_easu_frag.h
generated
Normal file
File diff suppressed because it is too large
Load Diff
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_easu_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_easu_frag.spv
generated
Normal file
Binary file not shown.
797
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_easu_frag.txt
generated
Normal file
797
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_easu_frag.txt
generated
Normal file
@@ -0,0 +1,797 @@
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos Glslang Reference Front End; 10
|
||||
; Bound: 4702
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
%1 = OpExtInstImport "GLSL.std.450"
|
||||
OpMemoryModel Logical GLSL450
|
||||
OpEntryPoint Fragment %main "main" %xe_frag_color %gl_FragCoord
|
||||
OpExecutionMode %main OriginUpperLeft
|
||||
OpSource GLSL 420
|
||||
OpSourceExtension "GL_GOOGLE_cpp_style_line_directive"
|
||||
OpSourceExtension "GL_GOOGLE_include_directive"
|
||||
OpName %main "main"
|
||||
OpName %xe_texture "xe_texture"
|
||||
OpName %XeFsrEasuConstants "XeFsrEasuConstants"
|
||||
OpMemberName %XeFsrEasuConstants 0 "xe_fsr_easu_input_output_size_ratio"
|
||||
OpMemberName %XeFsrEasuConstants 1 "xe_fsr_easu_input_size_inv"
|
||||
OpName %_ ""
|
||||
OpName %xe_frag_color "xe_frag_color"
|
||||
OpName %gl_FragCoord "gl_FragCoord"
|
||||
OpDecorate %xe_texture DescriptorSet 0
|
||||
OpDecorate %xe_texture Binding 0
|
||||
OpMemberDecorate %XeFsrEasuConstants 0 Offset 16
|
||||
OpMemberDecorate %XeFsrEasuConstants 1 Offset 24
|
||||
OpDecorate %XeFsrEasuConstants Block
|
||||
OpDecorate %xe_frag_color Location 0
|
||||
OpDecorate %gl_FragCoord BuiltIn FragCoord
|
||||
%void = OpTypeVoid
|
||||
%3 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%uint = OpTypeInt 32 0
|
||||
%bool = OpTypeBool
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_0 = OpConstant %float 0
|
||||
%uint_2129690299 = OpConstant %uint 2129690299
|
||||
%uint_1597275508 = OpConstant %uint 1597275508
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%185 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%186 = OpTypeSampledImage %185
|
||||
%_ptr_UniformConstant_186 = OpTypePointer UniformConstant %186
|
||||
%xe_texture = OpVariable %_ptr_UniformConstant_186 UniformConstant
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%float_0_400000006 = OpConstant %float 0.400000006
|
||||
%float_n1 = OpConstant %float -1
|
||||
%float_1_5625 = OpConstant %float 1.5625
|
||||
%float_n0_5625 = OpConstant %float -0.5625
|
||||
%float_0_5 = OpConstant %float 0.5
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%float_3_05175781en05 = OpConstant %float 3.05175781e-05
|
||||
%float_n0_5 = OpConstant %float -0.5
|
||||
%float_n0_289999992 = OpConstant %float -0.289999992
|
||||
%909 = OpConstantComposite %v2float %float_0 %float_n1
|
||||
%936 = OpConstantComposite %v2float %float_1 %float_n1
|
||||
%963 = OpConstantComposite %v2float %float_n1 %float_1
|
||||
%990 = OpConstantComposite %v2float %float_0 %float_1
|
||||
%1044 = OpConstantComposite %v2float %float_n1 %float_0
|
||||
%1071 = OpConstantComposite %v2float %float_1 %float_1
|
||||
%float_2 = OpConstant %float 2
|
||||
%1099 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%1126 = OpConstantComposite %v2float %float_2 %float_0
|
||||
%1153 = OpConstantComposite %v2float %float_1 %float_0
|
||||
%1180 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%1207 = OpConstantComposite %v2float %float_0 %float_2
|
||||
%XeFsrEasuConstants = OpTypeStruct %v2float %v2float
|
||||
%_ptr_PushConstant_XeFsrEasuConstants = OpTypePointer PushConstant %XeFsrEasuConstants
|
||||
%_ = OpVariable %_ptr_PushConstant_XeFsrEasuConstants PushConstant
|
||||
%_ptr_PushConstant_v2float = OpTypePointer PushConstant %v2float
|
||||
%1265 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_n1
|
||||
%1272 = OpConstantComposite %v4float %float_n1 %float_2 %float_1 %float_2
|
||||
%float_4 = OpConstant %float 4
|
||||
%_ptr_PushConstant_float = OpTypePointer PushConstant %float
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
%xe_frag_color = OpVariable %_ptr_Output_v4float Output
|
||||
%_ptr_Input_v4float = OpTypePointer Input %v4float
|
||||
%gl_FragCoord = OpVariable %_ptr_Input_v4float Input
|
||||
%_ptr_Output_float = OpTypePointer Output %float
|
||||
%4665 = OpConstantComposite %v2float %float_0_5 %float_0_5
|
||||
%4666 = OpConstantComposite %v4float %float_0_5 %float_0_5 %float_0_5 %float_0_5
|
||||
%4701 = OpUndef %v2float
|
||||
%main = OpFunction %void None %3
|
||||
%5 = OpLabel
|
||||
%1250 = OpAccessChain %_ptr_PushConstant_v2float %_ %int_0
|
||||
%1251 = OpLoad %v2float %1250
|
||||
%1252 = OpBitcast %v2uint %1251
|
||||
%1255 = OpVectorTimesScalar %v2float %1251 %float_0_5
|
||||
%1257 = OpFSub %v2float %1255 %4665
|
||||
%1258 = OpBitcast %v2uint %1257
|
||||
%1266 = OpAccessChain %_ptr_PushConstant_v2float %_ %int_1
|
||||
%1267 = OpLoad %v2float %1266
|
||||
%1268 = OpVectorShuffle %v4float %1267 %1267 0 1 0 1
|
||||
%1269 = OpFMul %v4float %1265 %1268
|
||||
%1270 = OpBitcast %v4uint %1269
|
||||
%1276 = OpFMul %v4float %1272 %1268
|
||||
%1277 = OpBitcast %v4uint %1276
|
||||
%1282 = OpAccessChain %_ptr_PushConstant_float %_ %int_1 %uint_1
|
||||
%1283 = OpLoad %float %1282
|
||||
%1284 = OpFMul %float %float_4 %1283
|
||||
%1285 = OpBitcast %uint %1284
|
||||
%1291 = OpLoad %v4float %gl_FragCoord
|
||||
%1292 = OpVectorShuffle %v2float %1291 %1291 0 1
|
||||
%1293 = OpConvertFToU %v2uint %1292
|
||||
%1555 = OpConvertUToF %v2float %1293
|
||||
%1561 = OpBitcast %v2float %1252
|
||||
%1562 = OpFMul %v2float %1555 %1561
|
||||
%1568 = OpBitcast %v2float %1258
|
||||
%1569 = OpFAdd %v2float %1562 %1568
|
||||
%1571 = OpExtInst %v2float %1 Floor %1569
|
||||
%1574 = OpFSub %v2float %1569 %1571
|
||||
%1578 = OpCompositeExtract %uint %1270 0
|
||||
%1579 = OpCompositeExtract %uint %1270 1
|
||||
%1580 = OpCompositeConstruct %v2uint %1578 %1579
|
||||
%1581 = OpBitcast %v2float %1580
|
||||
%1582 = OpFMul %v2float %1571 %1581
|
||||
%1585 = OpCompositeExtract %uint %1270 2
|
||||
%1586 = OpCompositeExtract %uint %1270 3
|
||||
%1587 = OpCompositeConstruct %v2uint %1585 %1586
|
||||
%1588 = OpBitcast %v2float %1587
|
||||
%1589 = OpFAdd %v2float %1582 %1588
|
||||
%1593 = OpCompositeExtract %uint %1277 0
|
||||
%1594 = OpCompositeExtract %uint %1277 1
|
||||
%1595 = OpCompositeConstruct %v2uint %1593 %1594
|
||||
%1596 = OpBitcast %v2float %1595
|
||||
%1597 = OpFAdd %v2float %1589 %1596
|
||||
%1601 = OpCompositeExtract %uint %1277 2
|
||||
%1602 = OpCompositeExtract %uint %1277 3
|
||||
%1603 = OpCompositeConstruct %v2uint %1601 %1602
|
||||
%1604 = OpBitcast %v2float %1603
|
||||
%1605 = OpFAdd %v2float %1589 %1604
|
||||
%1611 = OpCompositeConstruct %v2uint %uint_0 %1285
|
||||
%1612 = OpBitcast %v2float %1611
|
||||
%1613 = OpFAdd %v2float %1589 %1612
|
||||
%2112 = OpLoad %186 %xe_texture
|
||||
%2114 = OpImageGather %v4float %2112 %1589 %int_0
|
||||
%2119 = OpImageGather %v4float %2112 %1589 %int_1
|
||||
%2124 = OpImageGather %v4float %2112 %1589 %int_2
|
||||
%2129 = OpImageGather %v4float %2112 %1597 %int_0
|
||||
%2134 = OpImageGather %v4float %2112 %1597 %int_1
|
||||
%2139 = OpImageGather %v4float %2112 %1597 %int_2
|
||||
%2144 = OpImageGather %v4float %2112 %1605 %int_0
|
||||
%2149 = OpImageGather %v4float %2112 %1605 %int_1
|
||||
%2154 = OpImageGather %v4float %2112 %1605 %int_2
|
||||
%2159 = OpImageGather %v4float %2112 %1613 %int_0
|
||||
%2164 = OpImageGather %v4float %2112 %1613 %int_1
|
||||
%2169 = OpImageGather %v4float %2112 %1613 %int_2
|
||||
%1640 = OpFMul %v4float %2124 %4666
|
||||
%1643 = OpFMul %v4float %2114 %4666
|
||||
%1645 = OpFAdd %v4float %1643 %2119
|
||||
%1646 = OpFAdd %v4float %1640 %1645
|
||||
%1649 = OpFMul %v4float %2139 %4666
|
||||
%1652 = OpFMul %v4float %2129 %4666
|
||||
%1654 = OpFAdd %v4float %1652 %2134
|
||||
%1655 = OpFAdd %v4float %1649 %1654
|
||||
%1658 = OpFMul %v4float %2154 %4666
|
||||
%1661 = OpFMul %v4float %2144 %4666
|
||||
%1663 = OpFAdd %v4float %1661 %2149
|
||||
%1664 = OpFAdd %v4float %1658 %1663
|
||||
%1667 = OpFMul %v4float %2169 %4666
|
||||
%1670 = OpFMul %v4float %2159 %4666
|
||||
%1672 = OpFAdd %v4float %1670 %2164
|
||||
%1673 = OpFAdd %v4float %1667 %1672
|
||||
%1675 = OpCompositeExtract %float %1646 0
|
||||
%1677 = OpCompositeExtract %float %1646 1
|
||||
%1679 = OpCompositeExtract %float %1655 0
|
||||
%1681 = OpCompositeExtract %float %1655 1
|
||||
%1683 = OpCompositeExtract %float %1655 2
|
||||
%1685 = OpCompositeExtract %float %1655 3
|
||||
%1687 = OpCompositeExtract %float %1664 0
|
||||
%1689 = OpCompositeExtract %float %1664 1
|
||||
%1691 = OpCompositeExtract %float %1664 2
|
||||
%1693 = OpCompositeExtract %float %1664 3
|
||||
%1695 = OpCompositeExtract %float %1673 2
|
||||
%1697 = OpCompositeExtract %float %1673 3
|
||||
%2258 = OpCompositeExtract %float %1574 0
|
||||
%2259 = OpFSub %float %float_1 %2258
|
||||
%2262 = OpCompositeExtract %float %1574 1
|
||||
%2263 = OpFSub %float %float_1 %2262
|
||||
%2264 = OpFMul %float %2259 %2263
|
||||
%2296 = OpFSub %float %1693 %1683
|
||||
%2299 = OpFSub %float %1683 %1685
|
||||
%2301 = OpExtInst %float %1 FAbs %2296
|
||||
%2303 = OpExtInst %float %1 FAbs %2299
|
||||
%2304 = OpExtInst %float %1 FMax %2301 %2303
|
||||
%2386 = OpBitcast %uint %2304
|
||||
%2387 = OpISub %uint %uint_2129690299 %2386
|
||||
%2388 = OpBitcast %float %2387
|
||||
%2309 = OpFSub %float %1693 %1685
|
||||
%2312 = OpFMul %float %2309 %2264
|
||||
%2318 = OpExtInst %float %1 FAbs %2309
|
||||
%2320 = OpFMul %float %2318 %2388
|
||||
%2399 = OpExtInst %float %1 FClamp %2320 %float_0 %float_1
|
||||
%2324 = OpFMul %float %2399 %2399
|
||||
%2327 = OpFMul %float %2324 %2264
|
||||
%2332 = OpFSub %float %1681 %1683
|
||||
%2335 = OpFSub %float %1683 %1675
|
||||
%2337 = OpExtInst %float %1 FAbs %2332
|
||||
%2339 = OpExtInst %float %1 FAbs %2335
|
||||
%2340 = OpExtInst %float %1 FMax %2337 %2339
|
||||
%2411 = OpBitcast %uint %2340
|
||||
%2412 = OpISub %uint %uint_2129690299 %2411
|
||||
%2413 = OpBitcast %float %2412
|
||||
%2345 = OpFSub %float %1681 %1675
|
||||
%2348 = OpFMul %float %2345 %2264
|
||||
%2354 = OpExtInst %float %1 FAbs %2345
|
||||
%2356 = OpFMul %float %2354 %2413
|
||||
%2424 = OpExtInst %float %1 FClamp %2356 %float_0 %float_1
|
||||
%2360 = OpFMul %float %2424 %2424
|
||||
%2363 = OpFMul %float %2360 %2264
|
||||
%2365 = OpFAdd %float %2327 %2363
|
||||
%2471 = OpFMul %float %2258 %2263
|
||||
%2493 = OpFSub %float %1691 %1693
|
||||
%2498 = OpExtInst %float %1 FAbs %2493
|
||||
%2501 = OpExtInst %float %1 FMax %2498 %2301
|
||||
%2583 = OpBitcast %uint %2501
|
||||
%2584 = OpISub %uint %uint_2129690299 %2583
|
||||
%2585 = OpBitcast %float %2584
|
||||
%2506 = OpFSub %float %1691 %1683
|
||||
%2509 = OpFMul %float %2506 %2471
|
||||
%2512 = OpFAdd %float %2312 %2509
|
||||
%2515 = OpExtInst %float %1 FAbs %2506
|
||||
%2517 = OpFMul %float %2515 %2585
|
||||
%2596 = OpExtInst %float %1 FClamp %2517 %float_0 %float_1
|
||||
%2521 = OpFMul %float %2596 %2596
|
||||
%2524 = OpFMul %float %2521 %2471
|
||||
%2526 = OpFAdd %float %2365 %2524
|
||||
%2529 = OpFSub %float %1687 %1693
|
||||
%2532 = OpFSub %float %1693 %1677
|
||||
%2534 = OpExtInst %float %1 FAbs %2529
|
||||
%2536 = OpExtInst %float %1 FAbs %2532
|
||||
%2537 = OpExtInst %float %1 FMax %2534 %2536
|
||||
%2608 = OpBitcast %uint %2537
|
||||
%2609 = OpISub %uint %uint_2129690299 %2608
|
||||
%2610 = OpBitcast %float %2609
|
||||
%2542 = OpFSub %float %1687 %1677
|
||||
%2545 = OpFMul %float %2542 %2471
|
||||
%2548 = OpFAdd %float %2348 %2545
|
||||
%2551 = OpExtInst %float %1 FAbs %2542
|
||||
%2553 = OpFMul %float %2551 %2610
|
||||
%2621 = OpExtInst %float %1 FClamp %2553 %float_0 %float_1
|
||||
%2557 = OpFMul %float %2621 %2621
|
||||
%2560 = OpFMul %float %2557 %2471
|
||||
%2562 = OpFAdd %float %2526 %2560
|
||||
%2678 = OpFMul %float %2259 %2262
|
||||
%2690 = OpFSub %float %1687 %1681
|
||||
%2693 = OpFSub %float %1681 %1679
|
||||
%2695 = OpExtInst %float %1 FAbs %2690
|
||||
%2697 = OpExtInst %float %1 FAbs %2693
|
||||
%2698 = OpExtInst %float %1 FMax %2695 %2697
|
||||
%2780 = OpBitcast %uint %2698
|
||||
%2781 = OpISub %uint %uint_2129690299 %2780
|
||||
%2782 = OpBitcast %float %2781
|
||||
%2703 = OpFSub %float %1687 %1679
|
||||
%2706 = OpFMul %float %2703 %2678
|
||||
%2709 = OpFAdd %float %2512 %2706
|
||||
%2712 = OpExtInst %float %1 FAbs %2703
|
||||
%2714 = OpFMul %float %2712 %2782
|
||||
%2793 = OpExtInst %float %1 FClamp %2714 %float_0 %float_1
|
||||
%2718 = OpFMul %float %2793 %2793
|
||||
%2721 = OpFMul %float %2718 %2678
|
||||
%2723 = OpFAdd %float %2562 %2721
|
||||
%2726 = OpFSub %float %1697 %1681
|
||||
%2731 = OpExtInst %float %1 FAbs %2726
|
||||
%2734 = OpExtInst %float %1 FMax %2731 %2337
|
||||
%2805 = OpBitcast %uint %2734
|
||||
%2806 = OpISub %uint %uint_2129690299 %2805
|
||||
%2807 = OpBitcast %float %2806
|
||||
%2739 = OpFSub %float %1697 %1683
|
||||
%2742 = OpFMul %float %2739 %2678
|
||||
%2745 = OpFAdd %float %2548 %2742
|
||||
%2748 = OpExtInst %float %1 FAbs %2739
|
||||
%2750 = OpFMul %float %2748 %2807
|
||||
%2818 = OpExtInst %float %1 FClamp %2750 %float_0 %float_1
|
||||
%2754 = OpFMul %float %2818 %2818
|
||||
%2757 = OpFMul %float %2754 %2678
|
||||
%2759 = OpFAdd %float %2723 %2757
|
||||
%2883 = OpFMul %float %2258 %2262
|
||||
%2887 = OpFSub %float %1689 %1687
|
||||
%2892 = OpExtInst %float %1 FAbs %2887
|
||||
%2895 = OpExtInst %float %1 FMax %2892 %2695
|
||||
%2977 = OpBitcast %uint %2895
|
||||
%2978 = OpISub %uint %uint_2129690299 %2977
|
||||
%2979 = OpBitcast %float %2978
|
||||
%2900 = OpFSub %float %1689 %1681
|
||||
%2903 = OpFMul %float %2900 %2883
|
||||
%2906 = OpFAdd %float %2709 %2903
|
||||
%4398 = OpCompositeInsert %v2float %2906 %4701 0
|
||||
%2909 = OpExtInst %float %1 FAbs %2900
|
||||
%2911 = OpFMul %float %2909 %2979
|
||||
%2990 = OpExtInst %float %1 FClamp %2911 %float_0 %float_1
|
||||
%2915 = OpFMul %float %2990 %2990
|
||||
%2918 = OpFMul %float %2915 %2883
|
||||
%2920 = OpFAdd %float %2759 %2918
|
||||
%2923 = OpFSub %float %1695 %1687
|
||||
%2928 = OpExtInst %float %1 FAbs %2923
|
||||
%2931 = OpExtInst %float %1 FMax %2928 %2534
|
||||
%3002 = OpBitcast %uint %2931
|
||||
%3003 = OpISub %uint %uint_2129690299 %3002
|
||||
%3004 = OpBitcast %float %3003
|
||||
%2936 = OpFSub %float %1695 %1693
|
||||
%2939 = OpFMul %float %2936 %2883
|
||||
%2942 = OpFAdd %float %2745 %2939
|
||||
%4401 = OpCompositeInsert %v2float %2942 %4398 1
|
||||
%2945 = OpExtInst %float %1 FAbs %2936
|
||||
%2947 = OpFMul %float %2945 %3004
|
||||
%3015 = OpExtInst %float %1 FClamp %2947 %float_0 %float_1
|
||||
%2951 = OpFMul %float %3015 %3015
|
||||
%2954 = OpFMul %float %2951 %2883
|
||||
%2956 = OpFAdd %float %2920 %2954
|
||||
%1746 = OpFMul %v2float %4401 %4401
|
||||
%1748 = OpCompositeExtract %float %1746 0
|
||||
%1750 = OpCompositeExtract %float %1746 1
|
||||
%1751 = OpFAdd %float %1748 %1750
|
||||
%1754 = OpFOrdLessThan %bool %1751 %float_3_05175781en05
|
||||
%3031 = OpBitcast %uint %1751
|
||||
%3033 = OpShiftRightLogical %uint %3031 %uint_1
|
||||
%3034 = OpISub %uint %uint_1597275508 %3033
|
||||
%3035 = OpBitcast %float %3034
|
||||
OpBranch %1762
|
||||
%1762 = OpLabel
|
||||
%4700 = OpSelect %float %1754 %float_1 %3035
|
||||
OpSelectionMerge %1770 None
|
||||
OpBranchConditional %1754 %1765 %1767
|
||||
%1767 = OpLabel
|
||||
OpBranch %1770
|
||||
%1765 = OpLabel
|
||||
OpBranch %1770
|
||||
%1770 = OpLabel
|
||||
%4670 = OpPhi %float %2906 %1767 %float_1 %1765
|
||||
%4406 = OpCompositeInsert %v2float %4670 %4401 0
|
||||
%3052 = OpCompositeConstruct %v2float %4700 %4700
|
||||
%1776 = OpFMul %v2float %4406 %3052
|
||||
%1779 = OpFMul %float %2956 %float_0_5
|
||||
%1782 = OpFMul %float %1779 %1779
|
||||
%1784 = OpCompositeExtract %float %1776 0
|
||||
%1787 = OpFMul %float %1784 %1784
|
||||
%1789 = OpCompositeExtract %float %1776 1
|
||||
%1792 = OpFMul %float %1789 %1789
|
||||
%1793 = OpFAdd %float %1787 %1792
|
||||
%1796 = OpExtInst %float %1 FAbs %1784
|
||||
%1799 = OpExtInst %float %1 FAbs %1789
|
||||
%1800 = OpExtInst %float %1 FMax %1796 %1799
|
||||
%3061 = OpBitcast %uint %1800
|
||||
%3062 = OpISub %uint %uint_2129690299 %3061
|
||||
%3063 = OpBitcast %float %3062
|
||||
%1802 = OpFMul %float %1793 %3063
|
||||
%1806 = OpFSub %float %1802 %float_1
|
||||
%1808 = OpFMul %float %1806 %1782
|
||||
%1809 = OpFAdd %float %float_1 %1808
|
||||
%1813 = OpFMul %float %float_n0_5 %1782
|
||||
%1814 = OpFAdd %float %float_1 %1813
|
||||
%1815 = OpCompositeConstruct %v2float %1809 %1814
|
||||
%1819 = OpFMul %float %float_n0_289999992 %1782
|
||||
%1820 = OpFAdd %float %float_0_5 %1819
|
||||
%3090 = OpBitcast %uint %1820
|
||||
%3091 = OpISub %uint %uint_2129690299 %3090
|
||||
%3092 = OpBitcast %float %3091
|
||||
%1824 = OpCompositeExtract %float %2129 2
|
||||
%1826 = OpCompositeExtract %float %2134 2
|
||||
%1828 = OpCompositeExtract %float %2139 2
|
||||
%1829 = OpCompositeConstruct %v3float %1824 %1826 %1828
|
||||
%1831 = OpCompositeExtract %float %2144 3
|
||||
%1833 = OpCompositeExtract %float %2149 3
|
||||
%1835 = OpCompositeExtract %float %2154 3
|
||||
%1836 = OpCompositeConstruct %v3float %1831 %1833 %1835
|
||||
%1838 = OpCompositeExtract %float %2129 1
|
||||
%1840 = OpCompositeExtract %float %2134 1
|
||||
%1842 = OpCompositeExtract %float %2139 1
|
||||
%1843 = OpCompositeConstruct %v3float %1838 %1840 %1842
|
||||
%3101 = OpExtInst %v3float %1 FMin %1836 %1843
|
||||
%3102 = OpExtInst %v3float %1 FMin %1829 %3101
|
||||
%1846 = OpCompositeExtract %float %2144 0
|
||||
%1848 = OpCompositeExtract %float %2149 0
|
||||
%1850 = OpCompositeExtract %float %2154 0
|
||||
%1851 = OpCompositeConstruct %v3float %1846 %1848 %1850
|
||||
%1852 = OpExtInst %v3float %1 FMin %3102 %1851
|
||||
%3108 = OpExtInst %v3float %1 FMax %1836 %1843
|
||||
%3109 = OpExtInst %v3float %1 FMax %1829 %3108
|
||||
%1882 = OpExtInst %v3float %1 FMax %3109 %1851
|
||||
%1886 = OpFSub %v2float %909 %1574
|
||||
%1888 = OpCompositeExtract %float %2114 0
|
||||
%1890 = OpCompositeExtract %float %2119 0
|
||||
%1892 = OpCompositeExtract %float %2124 0
|
||||
%1893 = OpCompositeConstruct %v3float %1888 %1890 %1892
|
||||
%3131 = OpCompositeExtract %float %1886 0
|
||||
%3134 = OpFMul %float %3131 %1784
|
||||
%3136 = OpCompositeExtract %float %1886 1
|
||||
%3139 = OpFMul %float %3136 %1789
|
||||
%3140 = OpFAdd %float %3134 %3139
|
||||
%4445 = OpCompositeInsert %v2float %3140 %4701 0
|
||||
%3146 = OpFNegate %float %1789
|
||||
%3147 = OpFMul %float %3131 %3146
|
||||
%3152 = OpFMul %float %3136 %1784
|
||||
%3153 = OpFAdd %float %3147 %3152
|
||||
%4451 = OpCompositeInsert %v2float %3153 %4445 1
|
||||
%3157 = OpFMul %v2float %4451 %1815
|
||||
%3159 = OpCompositeExtract %float %3157 0
|
||||
%3162 = OpFMul %float %3159 %3159
|
||||
%3164 = OpCompositeExtract %float %3157 1
|
||||
%3167 = OpFMul %float %3164 %3164
|
||||
%3168 = OpFAdd %float %3162 %3167
|
||||
%3171 = OpExtInst %float %1 FMin %3168 %3092
|
||||
%3174 = OpFMul %float %float_0_400000006 %3171
|
||||
%3176 = OpFAdd %float %3174 %float_n1
|
||||
%3179 = OpFMul %float %1820 %3171
|
||||
%3181 = OpFAdd %float %3179 %float_n1
|
||||
%3184 = OpFMul %float %3176 %3176
|
||||
%3187 = OpFMul %float %3181 %3181
|
||||
%3190 = OpFMul %float %float_1_5625 %3184
|
||||
%3192 = OpFAdd %float %3190 %float_n0_5625
|
||||
%3195 = OpFMul %float %3192 %3187
|
||||
%3198 = OpVectorTimesScalar %v3float %1893 %3195
|
||||
%1904 = OpFSub %v2float %936 %1574
|
||||
%1906 = OpCompositeExtract %float %2114 1
|
||||
%1908 = OpCompositeExtract %float %2119 1
|
||||
%1910 = OpCompositeExtract %float %2124 1
|
||||
%1911 = OpCompositeConstruct %v3float %1906 %1908 %1910
|
||||
%3231 = OpCompositeExtract %float %1904 0
|
||||
%3234 = OpFMul %float %3231 %1784
|
||||
%3236 = OpCompositeExtract %float %1904 1
|
||||
%3239 = OpFMul %float %3236 %1789
|
||||
%3240 = OpFAdd %float %3234 %3239
|
||||
%4464 = OpCompositeInsert %v2float %3240 %4701 0
|
||||
%3247 = OpFMul %float %3231 %3146
|
||||
%3252 = OpFMul %float %3236 %1784
|
||||
%3253 = OpFAdd %float %3247 %3252
|
||||
%4470 = OpCompositeInsert %v2float %3253 %4464 1
|
||||
%3257 = OpFMul %v2float %4470 %1815
|
||||
%3259 = OpCompositeExtract %float %3257 0
|
||||
%3262 = OpFMul %float %3259 %3259
|
||||
%3264 = OpCompositeExtract %float %3257 1
|
||||
%3267 = OpFMul %float %3264 %3264
|
||||
%3268 = OpFAdd %float %3262 %3267
|
||||
%3271 = OpExtInst %float %1 FMin %3268 %3092
|
||||
%3274 = OpFMul %float %float_0_400000006 %3271
|
||||
%3276 = OpFAdd %float %3274 %float_n1
|
||||
%3279 = OpFMul %float %1820 %3271
|
||||
%3281 = OpFAdd %float %3279 %float_n1
|
||||
%3284 = OpFMul %float %3276 %3276
|
||||
%3287 = OpFMul %float %3281 %3281
|
||||
%3290 = OpFMul %float %float_1_5625 %3284
|
||||
%3292 = OpFAdd %float %3290 %float_n0_5625
|
||||
%3295 = OpFMul %float %3292 %3287
|
||||
%3298 = OpVectorTimesScalar %v3float %1911 %3295
|
||||
%3300 = OpFAdd %v3float %3198 %3298
|
||||
%3303 = OpFAdd %float %3195 %3295
|
||||
%1922 = OpFSub %v2float %963 %1574
|
||||
%1924 = OpCompositeExtract %float %2129 0
|
||||
%1926 = OpCompositeExtract %float %2134 0
|
||||
%1928 = OpCompositeExtract %float %2139 0
|
||||
%1929 = OpCompositeConstruct %v3float %1924 %1926 %1928
|
||||
%3331 = OpCompositeExtract %float %1922 0
|
||||
%3334 = OpFMul %float %3331 %1784
|
||||
%3336 = OpCompositeExtract %float %1922 1
|
||||
%3339 = OpFMul %float %3336 %1789
|
||||
%3340 = OpFAdd %float %3334 %3339
|
||||
%4483 = OpCompositeInsert %v2float %3340 %4701 0
|
||||
%3347 = OpFMul %float %3331 %3146
|
||||
%3352 = OpFMul %float %3336 %1784
|
||||
%3353 = OpFAdd %float %3347 %3352
|
||||
%4489 = OpCompositeInsert %v2float %3353 %4483 1
|
||||
%3357 = OpFMul %v2float %4489 %1815
|
||||
%3359 = OpCompositeExtract %float %3357 0
|
||||
%3362 = OpFMul %float %3359 %3359
|
||||
%3364 = OpCompositeExtract %float %3357 1
|
||||
%3367 = OpFMul %float %3364 %3364
|
||||
%3368 = OpFAdd %float %3362 %3367
|
||||
%3371 = OpExtInst %float %1 FMin %3368 %3092
|
||||
%3374 = OpFMul %float %float_0_400000006 %3371
|
||||
%3376 = OpFAdd %float %3374 %float_n1
|
||||
%3379 = OpFMul %float %1820 %3371
|
||||
%3381 = OpFAdd %float %3379 %float_n1
|
||||
%3384 = OpFMul %float %3376 %3376
|
||||
%3387 = OpFMul %float %3381 %3381
|
||||
%3390 = OpFMul %float %float_1_5625 %3384
|
||||
%3392 = OpFAdd %float %3390 %float_n0_5625
|
||||
%3395 = OpFMul %float %3392 %3387
|
||||
%3398 = OpVectorTimesScalar %v3float %1929 %3395
|
||||
%3400 = OpFAdd %v3float %3300 %3398
|
||||
%3403 = OpFAdd %float %3303 %3395
|
||||
%1940 = OpFSub %v2float %990 %1574
|
||||
%3431 = OpCompositeExtract %float %1940 0
|
||||
%3434 = OpFMul %float %3431 %1784
|
||||
%3436 = OpCompositeExtract %float %1940 1
|
||||
%3439 = OpFMul %float %3436 %1789
|
||||
%3440 = OpFAdd %float %3434 %3439
|
||||
%4502 = OpCompositeInsert %v2float %3440 %4701 0
|
||||
%3447 = OpFMul %float %3431 %3146
|
||||
%3452 = OpFMul %float %3436 %1784
|
||||
%3453 = OpFAdd %float %3447 %3452
|
||||
%4508 = OpCompositeInsert %v2float %3453 %4502 1
|
||||
%3457 = OpFMul %v2float %4508 %1815
|
||||
%3459 = OpCompositeExtract %float %3457 0
|
||||
%3462 = OpFMul %float %3459 %3459
|
||||
%3464 = OpCompositeExtract %float %3457 1
|
||||
%3467 = OpFMul %float %3464 %3464
|
||||
%3468 = OpFAdd %float %3462 %3467
|
||||
%3471 = OpExtInst %float %1 FMin %3468 %3092
|
||||
%3474 = OpFMul %float %float_0_400000006 %3471
|
||||
%3476 = OpFAdd %float %3474 %float_n1
|
||||
%3479 = OpFMul %float %1820 %3471
|
||||
%3481 = OpFAdd %float %3479 %float_n1
|
||||
%3484 = OpFMul %float %3476 %3476
|
||||
%3487 = OpFMul %float %3481 %3481
|
||||
%3490 = OpFMul %float %float_1_5625 %3484
|
||||
%3492 = OpFAdd %float %3490 %float_n0_5625
|
||||
%3495 = OpFMul %float %3492 %3487
|
||||
%3498 = OpVectorTimesScalar %v3float %1843 %3495
|
||||
%3500 = OpFAdd %v3float %3400 %3498
|
||||
%3503 = OpFAdd %float %3403 %3495
|
||||
%1958 = OpFNegate %v2float %1574
|
||||
%3531 = OpCompositeExtract %float %1958 0
|
||||
%3534 = OpFMul %float %3531 %1784
|
||||
%3536 = OpCompositeExtract %float %1958 1
|
||||
%3539 = OpFMul %float %3536 %1789
|
||||
%3540 = OpFAdd %float %3534 %3539
|
||||
%4521 = OpCompositeInsert %v2float %3540 %4701 0
|
||||
%3547 = OpFMul %float %3531 %3146
|
||||
%3552 = OpFMul %float %3536 %1784
|
||||
%3553 = OpFAdd %float %3547 %3552
|
||||
%4527 = OpCompositeInsert %v2float %3553 %4521 1
|
||||
%3557 = OpFMul %v2float %4527 %1815
|
||||
%3559 = OpCompositeExtract %float %3557 0
|
||||
%3562 = OpFMul %float %3559 %3559
|
||||
%3564 = OpCompositeExtract %float %3557 1
|
||||
%3567 = OpFMul %float %3564 %3564
|
||||
%3568 = OpFAdd %float %3562 %3567
|
||||
%3571 = OpExtInst %float %1 FMin %3568 %3092
|
||||
%3574 = OpFMul %float %float_0_400000006 %3571
|
||||
%3576 = OpFAdd %float %3574 %float_n1
|
||||
%3579 = OpFMul %float %1820 %3571
|
||||
%3581 = OpFAdd %float %3579 %float_n1
|
||||
%3584 = OpFMul %float %3576 %3576
|
||||
%3587 = OpFMul %float %3581 %3581
|
||||
%3590 = OpFMul %float %float_1_5625 %3584
|
||||
%3592 = OpFAdd %float %3590 %float_n0_5625
|
||||
%3595 = OpFMul %float %3592 %3587
|
||||
%3598 = OpVectorTimesScalar %v3float %1829 %3595
|
||||
%3600 = OpFAdd %v3float %3500 %3598
|
||||
%3603 = OpFAdd %float %3503 %3595
|
||||
%1976 = OpFSub %v2float %1044 %1574
|
||||
%1978 = OpCompositeExtract %float %2129 3
|
||||
%1980 = OpCompositeExtract %float %2134 3
|
||||
%1982 = OpCompositeExtract %float %2139 3
|
||||
%1983 = OpCompositeConstruct %v3float %1978 %1980 %1982
|
||||
%3631 = OpCompositeExtract %float %1976 0
|
||||
%3634 = OpFMul %float %3631 %1784
|
||||
%3636 = OpCompositeExtract %float %1976 1
|
||||
%3639 = OpFMul %float %3636 %1789
|
||||
%3640 = OpFAdd %float %3634 %3639
|
||||
%4540 = OpCompositeInsert %v2float %3640 %4701 0
|
||||
%3647 = OpFMul %float %3631 %3146
|
||||
%3652 = OpFMul %float %3636 %1784
|
||||
%3653 = OpFAdd %float %3647 %3652
|
||||
%4546 = OpCompositeInsert %v2float %3653 %4540 1
|
||||
%3657 = OpFMul %v2float %4546 %1815
|
||||
%3659 = OpCompositeExtract %float %3657 0
|
||||
%3662 = OpFMul %float %3659 %3659
|
||||
%3664 = OpCompositeExtract %float %3657 1
|
||||
%3667 = OpFMul %float %3664 %3664
|
||||
%3668 = OpFAdd %float %3662 %3667
|
||||
%3671 = OpExtInst %float %1 FMin %3668 %3092
|
||||
%3674 = OpFMul %float %float_0_400000006 %3671
|
||||
%3676 = OpFAdd %float %3674 %float_n1
|
||||
%3679 = OpFMul %float %1820 %3671
|
||||
%3681 = OpFAdd %float %3679 %float_n1
|
||||
%3684 = OpFMul %float %3676 %3676
|
||||
%3687 = OpFMul %float %3681 %3681
|
||||
%3690 = OpFMul %float %float_1_5625 %3684
|
||||
%3692 = OpFAdd %float %3690 %float_n0_5625
|
||||
%3695 = OpFMul %float %3692 %3687
|
||||
%3698 = OpVectorTimesScalar %v3float %1983 %3695
|
||||
%3700 = OpFAdd %v3float %3600 %3698
|
||||
%3703 = OpFAdd %float %3603 %3695
|
||||
%1994 = OpFSub %v2float %1071 %1574
|
||||
%3731 = OpCompositeExtract %float %1994 0
|
||||
%3734 = OpFMul %float %3731 %1784
|
||||
%3736 = OpCompositeExtract %float %1994 1
|
||||
%3739 = OpFMul %float %3736 %1789
|
||||
%3740 = OpFAdd %float %3734 %3739
|
||||
%4559 = OpCompositeInsert %v2float %3740 %4701 0
|
||||
%3747 = OpFMul %float %3731 %3146
|
||||
%3752 = OpFMul %float %3736 %1784
|
||||
%3753 = OpFAdd %float %3747 %3752
|
||||
%4565 = OpCompositeInsert %v2float %3753 %4559 1
|
||||
%3757 = OpFMul %v2float %4565 %1815
|
||||
%3759 = OpCompositeExtract %float %3757 0
|
||||
%3762 = OpFMul %float %3759 %3759
|
||||
%3764 = OpCompositeExtract %float %3757 1
|
||||
%3767 = OpFMul %float %3764 %3764
|
||||
%3768 = OpFAdd %float %3762 %3767
|
||||
%3771 = OpExtInst %float %1 FMin %3768 %3092
|
||||
%3774 = OpFMul %float %float_0_400000006 %3771
|
||||
%3776 = OpFAdd %float %3774 %float_n1
|
||||
%3779 = OpFMul %float %1820 %3771
|
||||
%3781 = OpFAdd %float %3779 %float_n1
|
||||
%3784 = OpFMul %float %3776 %3776
|
||||
%3787 = OpFMul %float %3781 %3781
|
||||
%3790 = OpFMul %float %float_1_5625 %3784
|
||||
%3792 = OpFAdd %float %3790 %float_n0_5625
|
||||
%3795 = OpFMul %float %3792 %3787
|
||||
%3798 = OpVectorTimesScalar %v3float %1851 %3795
|
||||
%3800 = OpFAdd %v3float %3700 %3798
|
||||
%3803 = OpFAdd %float %3703 %3795
|
||||
%2012 = OpFSub %v2float %1099 %1574
|
||||
%2014 = OpCompositeExtract %float %2144 1
|
||||
%2016 = OpCompositeExtract %float %2149 1
|
||||
%2018 = OpCompositeExtract %float %2154 1
|
||||
%2019 = OpCompositeConstruct %v3float %2014 %2016 %2018
|
||||
%3831 = OpCompositeExtract %float %2012 0
|
||||
%3834 = OpFMul %float %3831 %1784
|
||||
%3836 = OpCompositeExtract %float %2012 1
|
||||
%3839 = OpFMul %float %3836 %1789
|
||||
%3840 = OpFAdd %float %3834 %3839
|
||||
%4578 = OpCompositeInsert %v2float %3840 %4701 0
|
||||
%3847 = OpFMul %float %3831 %3146
|
||||
%3852 = OpFMul %float %3836 %1784
|
||||
%3853 = OpFAdd %float %3847 %3852
|
||||
%4584 = OpCompositeInsert %v2float %3853 %4578 1
|
||||
%3857 = OpFMul %v2float %4584 %1815
|
||||
%3859 = OpCompositeExtract %float %3857 0
|
||||
%3862 = OpFMul %float %3859 %3859
|
||||
%3864 = OpCompositeExtract %float %3857 1
|
||||
%3867 = OpFMul %float %3864 %3864
|
||||
%3868 = OpFAdd %float %3862 %3867
|
||||
%3871 = OpExtInst %float %1 FMin %3868 %3092
|
||||
%3874 = OpFMul %float %float_0_400000006 %3871
|
||||
%3876 = OpFAdd %float %3874 %float_n1
|
||||
%3879 = OpFMul %float %1820 %3871
|
||||
%3881 = OpFAdd %float %3879 %float_n1
|
||||
%3884 = OpFMul %float %3876 %3876
|
||||
%3887 = OpFMul %float %3881 %3881
|
||||
%3890 = OpFMul %float %float_1_5625 %3884
|
||||
%3892 = OpFAdd %float %3890 %float_n0_5625
|
||||
%3895 = OpFMul %float %3892 %3887
|
||||
%3898 = OpVectorTimesScalar %v3float %2019 %3895
|
||||
%3900 = OpFAdd %v3float %3800 %3898
|
||||
%3903 = OpFAdd %float %3803 %3895
|
||||
%2030 = OpFSub %v2float %1126 %1574
|
||||
%2032 = OpCompositeExtract %float %2144 2
|
||||
%2034 = OpCompositeExtract %float %2149 2
|
||||
%2036 = OpCompositeExtract %float %2154 2
|
||||
%2037 = OpCompositeConstruct %v3float %2032 %2034 %2036
|
||||
%3931 = OpCompositeExtract %float %2030 0
|
||||
%3934 = OpFMul %float %3931 %1784
|
||||
%3936 = OpCompositeExtract %float %2030 1
|
||||
%3939 = OpFMul %float %3936 %1789
|
||||
%3940 = OpFAdd %float %3934 %3939
|
||||
%4597 = OpCompositeInsert %v2float %3940 %4701 0
|
||||
%3947 = OpFMul %float %3931 %3146
|
||||
%3952 = OpFMul %float %3936 %1784
|
||||
%3953 = OpFAdd %float %3947 %3952
|
||||
%4603 = OpCompositeInsert %v2float %3953 %4597 1
|
||||
%3957 = OpFMul %v2float %4603 %1815
|
||||
%3959 = OpCompositeExtract %float %3957 0
|
||||
%3962 = OpFMul %float %3959 %3959
|
||||
%3964 = OpCompositeExtract %float %3957 1
|
||||
%3967 = OpFMul %float %3964 %3964
|
||||
%3968 = OpFAdd %float %3962 %3967
|
||||
%3971 = OpExtInst %float %1 FMin %3968 %3092
|
||||
%3974 = OpFMul %float %float_0_400000006 %3971
|
||||
%3976 = OpFAdd %float %3974 %float_n1
|
||||
%3979 = OpFMul %float %1820 %3971
|
||||
%3981 = OpFAdd %float %3979 %float_n1
|
||||
%3984 = OpFMul %float %3976 %3976
|
||||
%3987 = OpFMul %float %3981 %3981
|
||||
%3990 = OpFMul %float %float_1_5625 %3984
|
||||
%3992 = OpFAdd %float %3990 %float_n0_5625
|
||||
%3995 = OpFMul %float %3992 %3987
|
||||
%3998 = OpVectorTimesScalar %v3float %2037 %3995
|
||||
%4000 = OpFAdd %v3float %3900 %3998
|
||||
%4003 = OpFAdd %float %3903 %3995
|
||||
%2048 = OpFSub %v2float %1153 %1574
|
||||
%4031 = OpCompositeExtract %float %2048 0
|
||||
%4034 = OpFMul %float %4031 %1784
|
||||
%4036 = OpCompositeExtract %float %2048 1
|
||||
%4039 = OpFMul %float %4036 %1789
|
||||
%4040 = OpFAdd %float %4034 %4039
|
||||
%4616 = OpCompositeInsert %v2float %4040 %4701 0
|
||||
%4047 = OpFMul %float %4031 %3146
|
||||
%4052 = OpFMul %float %4036 %1784
|
||||
%4053 = OpFAdd %float %4047 %4052
|
||||
%4622 = OpCompositeInsert %v2float %4053 %4616 1
|
||||
%4057 = OpFMul %v2float %4622 %1815
|
||||
%4059 = OpCompositeExtract %float %4057 0
|
||||
%4062 = OpFMul %float %4059 %4059
|
||||
%4064 = OpCompositeExtract %float %4057 1
|
||||
%4067 = OpFMul %float %4064 %4064
|
||||
%4068 = OpFAdd %float %4062 %4067
|
||||
%4071 = OpExtInst %float %1 FMin %4068 %3092
|
||||
%4074 = OpFMul %float %float_0_400000006 %4071
|
||||
%4076 = OpFAdd %float %4074 %float_n1
|
||||
%4079 = OpFMul %float %1820 %4071
|
||||
%4081 = OpFAdd %float %4079 %float_n1
|
||||
%4084 = OpFMul %float %4076 %4076
|
||||
%4087 = OpFMul %float %4081 %4081
|
||||
%4090 = OpFMul %float %float_1_5625 %4084
|
||||
%4092 = OpFAdd %float %4090 %float_n0_5625
|
||||
%4095 = OpFMul %float %4092 %4087
|
||||
%4098 = OpVectorTimesScalar %v3float %1836 %4095
|
||||
%4100 = OpFAdd %v3float %4000 %4098
|
||||
%4103 = OpFAdd %float %4003 %4095
|
||||
%2066 = OpFSub %v2float %1180 %1574
|
||||
%2068 = OpCompositeExtract %float %2159 2
|
||||
%2070 = OpCompositeExtract %float %2164 2
|
||||
%2072 = OpCompositeExtract %float %2169 2
|
||||
%2073 = OpCompositeConstruct %v3float %2068 %2070 %2072
|
||||
%4131 = OpCompositeExtract %float %2066 0
|
||||
%4134 = OpFMul %float %4131 %1784
|
||||
%4136 = OpCompositeExtract %float %2066 1
|
||||
%4139 = OpFMul %float %4136 %1789
|
||||
%4140 = OpFAdd %float %4134 %4139
|
||||
%4635 = OpCompositeInsert %v2float %4140 %4701 0
|
||||
%4147 = OpFMul %float %4131 %3146
|
||||
%4152 = OpFMul %float %4136 %1784
|
||||
%4153 = OpFAdd %float %4147 %4152
|
||||
%4641 = OpCompositeInsert %v2float %4153 %4635 1
|
||||
%4157 = OpFMul %v2float %4641 %1815
|
||||
%4159 = OpCompositeExtract %float %4157 0
|
||||
%4162 = OpFMul %float %4159 %4159
|
||||
%4164 = OpCompositeExtract %float %4157 1
|
||||
%4167 = OpFMul %float %4164 %4164
|
||||
%4168 = OpFAdd %float %4162 %4167
|
||||
%4171 = OpExtInst %float %1 FMin %4168 %3092
|
||||
%4174 = OpFMul %float %float_0_400000006 %4171
|
||||
%4176 = OpFAdd %float %4174 %float_n1
|
||||
%4179 = OpFMul %float %1820 %4171
|
||||
%4181 = OpFAdd %float %4179 %float_n1
|
||||
%4184 = OpFMul %float %4176 %4176
|
||||
%4187 = OpFMul %float %4181 %4181
|
||||
%4190 = OpFMul %float %float_1_5625 %4184
|
||||
%4192 = OpFAdd %float %4190 %float_n0_5625
|
||||
%4195 = OpFMul %float %4192 %4187
|
||||
%4198 = OpVectorTimesScalar %v3float %2073 %4195
|
||||
%4200 = OpFAdd %v3float %4100 %4198
|
||||
%4203 = OpFAdd %float %4103 %4195
|
||||
%2084 = OpFSub %v2float %1207 %1574
|
||||
%2086 = OpCompositeExtract %float %2159 3
|
||||
%2088 = OpCompositeExtract %float %2164 3
|
||||
%2090 = OpCompositeExtract %float %2169 3
|
||||
%2091 = OpCompositeConstruct %v3float %2086 %2088 %2090
|
||||
%4231 = OpCompositeExtract %float %2084 0
|
||||
%4234 = OpFMul %float %4231 %1784
|
||||
%4236 = OpCompositeExtract %float %2084 1
|
||||
%4239 = OpFMul %float %4236 %1789
|
||||
%4240 = OpFAdd %float %4234 %4239
|
||||
%4654 = OpCompositeInsert %v2float %4240 %4701 0
|
||||
%4247 = OpFMul %float %4231 %3146
|
||||
%4252 = OpFMul %float %4236 %1784
|
||||
%4253 = OpFAdd %float %4247 %4252
|
||||
%4660 = OpCompositeInsert %v2float %4253 %4654 1
|
||||
%4257 = OpFMul %v2float %4660 %1815
|
||||
%4259 = OpCompositeExtract %float %4257 0
|
||||
%4262 = OpFMul %float %4259 %4259
|
||||
%4264 = OpCompositeExtract %float %4257 1
|
||||
%4267 = OpFMul %float %4264 %4264
|
||||
%4268 = OpFAdd %float %4262 %4267
|
||||
%4271 = OpExtInst %float %1 FMin %4268 %3092
|
||||
%4274 = OpFMul %float %float_0_400000006 %4271
|
||||
%4276 = OpFAdd %float %4274 %float_n1
|
||||
%4279 = OpFMul %float %1820 %4271
|
||||
%4281 = OpFAdd %float %4279 %float_n1
|
||||
%4284 = OpFMul %float %4276 %4276
|
||||
%4287 = OpFMul %float %4281 %4281
|
||||
%4290 = OpFMul %float %float_1_5625 %4284
|
||||
%4292 = OpFAdd %float %4290 %float_n0_5625
|
||||
%4295 = OpFMul %float %4292 %4287
|
||||
%4298 = OpVectorTimesScalar %v3float %2091 %4295
|
||||
%4300 = OpFAdd %v3float %4200 %4298
|
||||
%4303 = OpFAdd %float %4203 %4295
|
||||
%4324 = OpFDiv %float %float_1 %4303
|
||||
%4333 = OpCompositeConstruct %v3float %4324 %4324 %4324
|
||||
%2107 = OpFMul %v3float %4300 %4333
|
||||
%2108 = OpExtInst %v3float %1 FMax %1852 %2107
|
||||
%2109 = OpExtInst %v3float %1 FMin %1882 %2108
|
||||
%1307 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_0
|
||||
%1308 = OpCompositeExtract %float %2109 0
|
||||
OpStore %1307 %1308
|
||||
%1309 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_1
|
||||
%1310 = OpCompositeExtract %float %2109 1
|
||||
OpStore %1309 %1310
|
||||
%1311 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_2
|
||||
%1312 = OpCompositeExtract %float %2109 2
|
||||
OpStore %1311 %1312
|
||||
%1313 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_3
|
||||
OpStore %1313 %float_1
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
819
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_dither_frag.h
generated
Normal file
819
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_dither_frag.h
generated
Normal file
@@ -0,0 +1,819 @@
|
||||
// generated from `xb genspirv`
|
||||
// source: guest_output_ffx_fsr_rcas_dither.frag
|
||||
const uint8_t guest_output_ffx_fsr_rcas_dither_frag[] = {
|
||||
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x0A, 0x00, 0x08, 0x00,
|
||||
0x4E, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x47, 0x4C, 0x53, 0x4C, 0x2E, 0x73, 0x74, 0x64, 0x2E, 0x34, 0x35, 0x30,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0xA6, 0x03, 0x00, 0x00, 0xBD, 0x03, 0x00, 0x00, 0x10, 0x00, 0x03, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0xA4, 0x01, 0x00, 0x00, 0x04, 0x00, 0x0A, 0x00,
|
||||
0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C, 0x45, 0x5F, 0x63, 0x70,
|
||||
0x70, 0x5F, 0x73, 0x74, 0x79, 0x6C, 0x65, 0x5F, 0x6C, 0x69, 0x6E, 0x65,
|
||||
0x5F, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x00,
|
||||
0x04, 0x00, 0x08, 0x00, 0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C,
|
||||
0x45, 0x5F, 0x69, 0x6E, 0x63, 0x6C, 0x75, 0x64, 0x65, 0x5F, 0x64, 0x69,
|
||||
0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x05, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x05, 0x00, 0x95, 0x01, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x74,
|
||||
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
|
||||
0xA6, 0x03, 0x00, 0x00, 0x67, 0x6C, 0x5F, 0x46, 0x72, 0x61, 0x67, 0x43,
|
||||
0x6F, 0x6F, 0x72, 0x64, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
|
||||
0xAA, 0x03, 0x00, 0x00, 0x58, 0x65, 0x46, 0x73, 0x72, 0x52, 0x63, 0x61,
|
||||
0x73, 0x43, 0x6F, 0x6E, 0x73, 0x74, 0x61, 0x6E, 0x74, 0x73, 0x00, 0x00,
|
||||
0x06, 0x00, 0x0A, 0x00, 0xAA, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x78, 0x65, 0x5F, 0x66, 0x73, 0x72, 0x5F, 0x72, 0x63, 0x61, 0x73, 0x5F,
|
||||
0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5F, 0x6F, 0x66, 0x66, 0x73, 0x65,
|
||||
0x74, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0C, 0x00, 0xAA, 0x03, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x66, 0x73, 0x72, 0x5F, 0x72,
|
||||
0x63, 0x61, 0x73, 0x5F, 0x73, 0x68, 0x61, 0x72, 0x70, 0x6E, 0x65, 0x73,
|
||||
0x73, 0x5F, 0x70, 0x6F, 0x73, 0x74, 0x5F, 0x73, 0x65, 0x74, 0x75, 0x70,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x00, 0xAC, 0x03, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0xBD, 0x03, 0x00, 0x00,
|
||||
0x78, 0x65, 0x5F, 0x66, 0x72, 0x61, 0x67, 0x5F, 0x63, 0x6F, 0x6C, 0x6F,
|
||||
0x72, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x95, 0x01, 0x00, 0x00,
|
||||
0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0x95, 0x01, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x04, 0x00, 0xA6, 0x03, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
|
||||
0x0F, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0xAA, 0x03, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
|
||||
0x48, 0x00, 0x05, 0x00, 0xAA, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x23, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00,
|
||||
0xAA, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0xBD, 0x03, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x07, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
|
||||
0x2C, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x2F, 0x00, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0x1C, 0x00, 0x04, 0x00, 0x49, 0x00, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00, 0x84, 0x83, 0x83, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00,
|
||||
0xE7, 0xE6, 0x66, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x4C, 0x00, 0x00, 0x00, 0xDE, 0xDD, 0xDD, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00, 0xCC, 0xCB, 0xCB, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00,
|
||||
0xA8, 0xA7, 0xA7, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x4F, 0x00, 0x00, 0x00, 0x9F, 0x9E, 0x1E, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x8C, 0x8B, 0x8B, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00,
|
||||
0xB6, 0xB5, 0xB5, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x52, 0x00, 0x00, 0x00, 0xB2, 0xB1, 0xB1, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00, 0x87, 0x86, 0x06, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x9F, 0x9F, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x55, 0x00, 0x00, 0x00, 0xD2, 0xD1, 0xD1, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x56, 0x00, 0x00, 0x00, 0x9B, 0x9A, 0x1A, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x57, 0x00, 0x00, 0x00,
|
||||
0x95, 0x94, 0x94, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x58, 0x00, 0x00, 0x00, 0x92, 0x91, 0x91, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00, 0xBA, 0xB9, 0xB9, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00,
|
||||
0xBE, 0xBD, 0xBD, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x5B, 0x00, 0x00, 0x00, 0x8F, 0x8E, 0x0E, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x89, 0x88, 0x08, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x00, 0x00,
|
||||
0x9E, 0x9D, 0x9D, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x5E, 0x00, 0x00, 0x00, 0xE5, 0xE4, 0xE4, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x8A, 0x89, 0x89, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
||||
0xA3, 0xA2, 0x22, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x61, 0x00, 0x00, 0x00, 0xFD, 0xFC, 0xFC, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00, 0xF6, 0xF5, 0xF5, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00,
|
||||
0x90, 0x8F, 0x8F, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x64, 0x00, 0x00, 0x00, 0xD1, 0xD0, 0xD0, 0xB8, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00, 0x8B, 0x8A, 0x0A, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00,
|
||||
0xBC, 0xBB, 0xBB, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x67, 0x00, 0x00, 0x00, 0xFE, 0xFD, 0xFD, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x00, 0xB7, 0xB6, 0x36, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00,
|
||||
0xA1, 0xA0, 0x20, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x6A, 0x00, 0x00, 0x00, 0xBB, 0xBA, 0x3A, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00, 0xAC, 0xAB, 0xAB, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00,
|
||||
0x90, 0x8F, 0x8F, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x6D, 0x00, 0x00, 0x00, 0x9D, 0x9C, 0x9C, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x00, 0x00, 0xE6, 0xE5, 0xE5, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x00, 0x00,
|
||||
0xDC, 0xDB, 0xDB, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x70, 0x00, 0x00, 0x00, 0xC2, 0xC1, 0xC1, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x71, 0x00, 0x00, 0x00, 0xA1, 0xA0, 0x20, 0xB8,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
|
||||
0xCF, 0xCE, 0x4E, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x73, 0x00, 0x00, 0x00, 0xF0, 0xEF, 0xEF, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00, 0x9D, 0x9C, 0x9C, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00,
|
||||
0x82, 0x81, 0x81, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x76, 0x00, 0x00, 0x00, 0x9A, 0x99, 0x99, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0xB9, 0xB8, 0x38, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00,
|
||||
0xD8, 0xD7, 0xD7, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x79, 0x00, 0x00, 0x00, 0xD0, 0xCF, 0xCF, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x7A, 0x00, 0x00, 0x00, 0xB5, 0xB4, 0xB4, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x7B, 0x00, 0x00, 0x00,
|
||||
0xF4, 0xF3, 0xF3, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x00, 0x00, 0xE8, 0xE7, 0xE7, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x7D, 0x00, 0x00, 0x00, 0xE3, 0xE2, 0x62, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00,
|
||||
0xEB, 0xEA, 0x6A, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x7F, 0x00, 0x00, 0x00, 0xA9, 0xA8, 0x28, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xF3, 0xF2, 0x72, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00,
|
||||
0xC8, 0xC7, 0xC7, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x82, 0x00, 0x00, 0x00, 0xAB, 0xAA, 0x2A, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0xAA, 0xA9, 0xA9, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00,
|
||||
0xD3, 0xD2, 0x52, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x85, 0x00, 0x00, 0x00, 0xC0, 0xBF, 0xBF, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00, 0xEC, 0xEB, 0xEB, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00,
|
||||
0xDF, 0xDE, 0x5E, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x88, 0x00, 0x00, 0x00, 0xDF, 0xDE, 0x5E, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, 0xED, 0xEC, 0xEC, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x8A, 0x00, 0x00, 0x00,
|
||||
0x8C, 0x8B, 0x8B, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x8B, 0x00, 0x00, 0x00, 0x99, 0x98, 0x18, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x00, 0x00, 0xF9, 0xF8, 0x78, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x00, 0x00,
|
||||
0xBA, 0xB9, 0xB9, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x8E, 0x00, 0x00, 0x00, 0x9B, 0x9A, 0x1A, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xC9, 0xC8, 0x48, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
|
||||
0xD2, 0xD1, 0xD1, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x91, 0x00, 0x00, 0x00, 0x86, 0x85, 0x85, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00, 0xD5, 0xD4, 0xD4, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x93, 0x00, 0x00, 0x00,
|
||||
0xD9, 0xD8, 0x58, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x94, 0x00, 0x00, 0x00, 0xD0, 0xCF, 0xCF, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x95, 0x00, 0x00, 0x00, 0xAB, 0xAA, 0x2A, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x96, 0x00, 0x00, 0x00,
|
||||
0x91, 0x90, 0x90, 0xB8, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x97, 0x00, 0x00, 0x00, 0xDD, 0xDC, 0xDC, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00, 0xD8, 0xD7, 0xD7, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x99, 0x00, 0x00, 0x00,
|
||||
0xB4, 0xB3, 0xB3, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x9A, 0x00, 0x00, 0x00, 0xF3, 0xF2, 0x72, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x9B, 0x00, 0x00, 0x00, 0xAF, 0xAE, 0x2E, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00,
|
||||
0x9C, 0x9B, 0x9B, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x9D, 0x00, 0x00, 0x00, 0xBE, 0xBD, 0xBD, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x00, 0x00, 0x97, 0x96, 0x16, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x9F, 0x00, 0x00, 0x00,
|
||||
0xF8, 0xF7, 0xF7, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x00, 0x00, 0x00, 0xC7, 0xC6, 0x46, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xA1, 0x00, 0x00, 0x00, 0xAA, 0xA9, 0xA9, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00,
|
||||
0xFC, 0xFB, 0xFB, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA3, 0x00, 0x00, 0x00, 0xDA, 0xD9, 0xD9, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00, 0x88, 0x87, 0x87, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA5, 0x00, 0x00, 0x00,
|
||||
0x83, 0x82, 0x02, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA6, 0x00, 0x00, 0x00, 0xF4, 0xF3, 0xF3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xA7, 0x00, 0x00, 0x00, 0x9E, 0x9D, 0x9D, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00,
|
||||
0xAD, 0xAC, 0xAC, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA9, 0x00, 0x00, 0x00, 0xB4, 0xB3, 0xB3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00, 0x00, 0xD6, 0xD5, 0xD5, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xAB, 0x00, 0x00, 0x00,
|
||||
0xF2, 0xF1, 0xF1, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xAC, 0x00, 0x00, 0x00, 0xBF, 0xBE, 0x3E, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xAD, 0x00, 0x00, 0x00, 0xEF, 0xEE, 0x6E, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00,
|
||||
0xEE, 0xED, 0xED, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xAF, 0x00, 0x00, 0x00, 0x96, 0x95, 0x95, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB0, 0x00, 0x00, 0x00, 0xC5, 0xC4, 0xC4, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xB1, 0x00, 0x00, 0x00,
|
||||
0xD1, 0xD0, 0xD0, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xB2, 0x00, 0x00, 0x00, 0xC3, 0xC2, 0x42, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB3, 0x00, 0x00, 0x00, 0x9A, 0x99, 0x99, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xB4, 0x00, 0x00, 0x00,
|
||||
0x91, 0x90, 0x90, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xB5, 0x00, 0x00, 0x00, 0xC4, 0xC3, 0xC3, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB6, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x7E, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xB7, 0x00, 0x00, 0x00,
|
||||
0xFB, 0xFA, 0x7A, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xB8, 0x00, 0x00, 0x00, 0xFE, 0xFD, 0xFD, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB9, 0x00, 0x00, 0x00, 0x8B, 0x8A, 0x0A, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xBA, 0x00, 0x00, 0x00,
|
||||
0xE1, 0xE0, 0x60, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x00, 0x00, 0x00, 0xA4, 0xA3, 0xA3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xBC, 0x00, 0x00, 0x00, 0x8D, 0x8C, 0x8C, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xBD, 0x00, 0x00, 0x00,
|
||||
0xCA, 0xC9, 0xC9, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xBE, 0x00, 0x00, 0x00, 0x81, 0x80, 0x00, 0xB7, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xBF, 0x00, 0x00, 0x00, 0xA5, 0xA4, 0xA4, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00,
|
||||
0xB0, 0xAF, 0xAF, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xC1, 0x00, 0x00, 0x00, 0xE6, 0xE5, 0xE5, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xC2, 0x00, 0x00, 0x00, 0x83, 0x82, 0x02, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xC3, 0x00, 0x00, 0x00,
|
||||
0x9C, 0x9B, 0x9B, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xC4, 0x00, 0x00, 0x00, 0xCB, 0xCA, 0x4A, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xC5, 0x00, 0x00, 0x00, 0xB0, 0xAF, 0xAF, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xC6, 0x00, 0x00, 0x00,
|
||||
0x8D, 0x8C, 0x8C, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xC7, 0x00, 0x00, 0x00, 0xC2, 0xC1, 0xC1, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xC8, 0x00, 0x00, 0x00, 0x89, 0x88, 0x08, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xC9, 0x00, 0x00, 0x00,
|
||||
0xCB, 0xCA, 0x4A, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xCA, 0x00, 0x00, 0x00, 0xAC, 0xAB, 0xAB, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xCB, 0x00, 0x00, 0x00, 0xCD, 0xCC, 0xCC, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x00,
|
||||
0xFB, 0xFA, 0x7A, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xCD, 0x00, 0x00, 0x00, 0xF5, 0xF4, 0xF4, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xCE, 0x00, 0x00, 0x00, 0xCA, 0xC9, 0xC9, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xCF, 0x00, 0x00, 0x00,
|
||||
0x88, 0x87, 0x87, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD0, 0x00, 0x00, 0x00, 0xB3, 0xB2, 0x32, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xD1, 0x00, 0x00, 0x00, 0xDC, 0xDB, 0xDB, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xD2, 0x00, 0x00, 0x00,
|
||||
0x84, 0x83, 0x83, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD3, 0x00, 0x00, 0x00, 0xDD, 0xDC, 0xDC, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xD4, 0x00, 0x00, 0x00, 0xEA, 0xE9, 0xE9, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xD5, 0x00, 0x00, 0x00,
|
||||
0xF9, 0xF8, 0x78, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD6, 0x00, 0x00, 0x00, 0xA3, 0xA2, 0x22, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xD7, 0x00, 0x00, 0x00, 0xDA, 0xD9, 0xD9, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xD8, 0x00, 0x00, 0x00,
|
||||
0xDB, 0xDA, 0x5A, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD9, 0x00, 0x00, 0x00, 0xE2, 0xE1, 0xE1, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xDA, 0x00, 0x00, 0x00, 0x8E, 0x8D, 0x8D, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xDB, 0x00, 0x00, 0x00,
|
||||
0xE8, 0xE7, 0xE7, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xDC, 0x00, 0x00, 0x00, 0xCF, 0xCE, 0x4E, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xDD, 0x00, 0x00, 0x00, 0xEA, 0xE9, 0xE9, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xDE, 0x00, 0x00, 0x00,
|
||||
0xB3, 0xB2, 0x32, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xDF, 0x00, 0x00, 0x00, 0x82, 0x81, 0x81, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0xAE, 0xAD, 0xAD, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xE1, 0x00, 0x00, 0x00,
|
||||
0xB9, 0xB8, 0x38, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xE2, 0x00, 0x00, 0x00, 0xC6, 0xC5, 0xC5, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x00, 0xAD, 0xAC, 0xAC, 0x39,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xE4, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0xBB, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xE5, 0x00, 0x00, 0x00, 0xAF, 0xAE, 0x2E, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE6, 0x00, 0x00, 0x00, 0xD4, 0xD3, 0xD3, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xE7, 0x00, 0x00, 0x00,
|
||||
0x98, 0x97, 0x97, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xE8, 0x00, 0x00, 0x00, 0xED, 0xEC, 0xEC, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE9, 0x00, 0x00, 0x00, 0xE5, 0xE4, 0xE4, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x00,
|
||||
0xC9, 0xC8, 0x48, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xEB, 0x00, 0x00, 0x00, 0xC4, 0xC3, 0xC3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xEC, 0x00, 0x00, 0x00, 0x96, 0x95, 0x95, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xED, 0x00, 0x00, 0x00,
|
||||
0xB1, 0xB0, 0xB0, 0x38, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xEE, 0x00, 0x00, 0x00, 0xF8, 0xF7, 0xF7, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xEF, 0x00, 0x00, 0x00, 0xB8, 0xB7, 0xB7, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00,
|
||||
0x93, 0x92, 0x12, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xF1, 0x00, 0x00, 0x00, 0xF1, 0xF0, 0xF0, 0x38, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xF2, 0x00, 0x00, 0x00, 0xA6, 0xA5, 0xA5, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF3, 0x00, 0x00, 0x00,
|
||||
0x97, 0x96, 0x16, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xF4, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x7E, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xF5, 0x00, 0x00, 0x00, 0xAE, 0xAD, 0xAD, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF6, 0x00, 0x00, 0x00,
|
||||
0xE9, 0xE8, 0x68, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xF7, 0x00, 0x00, 0x00, 0xC7, 0xC6, 0x46, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0xB2, 0xB1, 0xB1, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF9, 0x00, 0x00, 0x00,
|
||||
0xC0, 0xBF, 0xBF, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xFA, 0x00, 0x00, 0x00, 0xE3, 0xE2, 0x62, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xFB, 0x00, 0x00, 0x00, 0xBD, 0xBC, 0xBC, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00,
|
||||
0x8F, 0x8E, 0x0E, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xFD, 0x00, 0x00, 0x00, 0x94, 0x93, 0x93, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x85, 0x84, 0x84, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
|
||||
0x93, 0x92, 0x12, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0xEE, 0xED, 0xED, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0xE2, 0xE1, 0xE1, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00,
|
||||
0x98, 0x97, 0x97, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x03, 0x01, 0x00, 0x00, 0xC3, 0xC2, 0x42, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00, 0xCE, 0xCD, 0xCD, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00,
|
||||
0xF1, 0xF0, 0xF0, 0xB8, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x06, 0x01, 0x00, 0x00, 0xA0, 0x9F, 0x9F, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x07, 0x01, 0x00, 0x00, 0xF0, 0xEF, 0xEF, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x08, 0x01, 0x00, 0x00,
|
||||
0xC1, 0xC0, 0xC0, 0x37, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x09, 0x01, 0x00, 0x00, 0xFC, 0xFB, 0xFB, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x0A, 0x01, 0x00, 0x00, 0xE4, 0xE3, 0xE3, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x0B, 0x01, 0x00, 0x00,
|
||||
0xBB, 0xBA, 0x3A, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x0C, 0x01, 0x00, 0x00, 0xCC, 0xCB, 0xCB, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x0D, 0x01, 0x00, 0x00, 0xE0, 0xDF, 0xDF, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x0E, 0x01, 0x00, 0x00,
|
||||
0xA2, 0xA1, 0xA1, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x0F, 0x01, 0x00, 0x00, 0xD9, 0xD8, 0x58, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x8A, 0x89, 0x89, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x11, 0x01, 0x00, 0x00,
|
||||
0xBF, 0xBE, 0x3E, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x12, 0x01, 0x00, 0x00, 0xD6, 0xD5, 0xD5, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x13, 0x01, 0x00, 0x00, 0xA5, 0xA4, 0xA4, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x14, 0x01, 0x00, 0x00,
|
||||
0xFD, 0xFC, 0xFC, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x15, 0x01, 0x00, 0x00, 0xEC, 0xEB, 0xEB, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x16, 0x01, 0x00, 0x00, 0xF7, 0xF6, 0x76, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x17, 0x01, 0x00, 0x00,
|
||||
0xB5, 0xB4, 0xB4, 0xB9, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x18, 0x01, 0x00, 0x00, 0xB7, 0xB6, 0x36, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x19, 0x01, 0x00, 0x00, 0x86, 0x85, 0x85, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x1A, 0x01, 0x00, 0x00,
|
||||
0xCE, 0xCD, 0xCD, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x1B, 0x01, 0x00, 0x00, 0xC1, 0xC0, 0xC0, 0xB7, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x1C, 0x01, 0x00, 0x00, 0xA8, 0xA7, 0xA7, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x1D, 0x01, 0x00, 0x00,
|
||||
0xD3, 0xD2, 0x52, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x01, 0x00, 0x00, 0xEB, 0xEA, 0x6A, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x1F, 0x01, 0x00, 0x00, 0xBC, 0xBB, 0xBB, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x20, 0x01, 0x00, 0x00,
|
||||
0x9F, 0x9E, 0x1E, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x21, 0x01, 0x00, 0x00, 0xB1, 0xB0, 0xB0, 0xB8, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x22, 0x01, 0x00, 0x00, 0xEF, 0xEE, 0x6E, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x23, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x3B, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x24, 0x01, 0x00, 0x00, 0xB8, 0xB7, 0xB7, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x25, 0x01, 0x00, 0x00, 0xA7, 0xA6, 0x26, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x26, 0x01, 0x00, 0x00,
|
||||
0xC6, 0xC5, 0xC5, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x27, 0x01, 0x00, 0x00, 0xD7, 0xD6, 0x56, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x28, 0x01, 0x00, 0x00, 0xA4, 0xA3, 0xA3, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x29, 0x01, 0x00, 0x00,
|
||||
0x85, 0x84, 0x84, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x2A, 0x01, 0x00, 0x00, 0xC8, 0xC7, 0xC7, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x2B, 0x01, 0x00, 0x00, 0x94, 0x93, 0x93, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x2C, 0x01, 0x00, 0x00,
|
||||
0xBD, 0xBC, 0xBC, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x2D, 0x01, 0x00, 0x00, 0xCD, 0xCC, 0xCC, 0xB9, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x2E, 0x01, 0x00, 0x00, 0xFA, 0xF9, 0xF9, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x2F, 0x01, 0x00, 0x00,
|
||||
0xB6, 0xB5, 0xB5, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x30, 0x01, 0x00, 0x00, 0x92, 0x91, 0x91, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x31, 0x01, 0x00, 0x00, 0xD4, 0xD3, 0xD3, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x32, 0x01, 0x00, 0x00,
|
||||
0xE7, 0xE6, 0x66, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x33, 0x01, 0x00, 0x00, 0x99, 0x98, 0x18, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x34, 0x01, 0x00, 0x00, 0x8E, 0x8D, 0x8D, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x35, 0x01, 0x00, 0x00,
|
||||
0xE1, 0xE0, 0x60, 0xB8, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x36, 0x01, 0x00, 0x00, 0x95, 0x94, 0x94, 0x39, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x37, 0x01, 0x00, 0x00, 0xDE, 0xDD, 0xDD, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x38, 0x01, 0x00, 0x00,
|
||||
0xA6, 0xA5, 0xA5, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x39, 0x01, 0x00, 0x00, 0x87, 0x86, 0x06, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x3A, 0x01, 0x00, 0x00, 0xA9, 0xA8, 0x28, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x3B, 0x01, 0x00, 0x00,
|
||||
0xF6, 0xF5, 0xF5, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x3C, 0x01, 0x00, 0x00, 0xDB, 0xDA, 0x5A, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x3D, 0x01, 0x00, 0x00, 0xA7, 0xA6, 0x26, 0x3A,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x3E, 0x01, 0x00, 0x00,
|
||||
0x81, 0x80, 0x00, 0x37, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x3F, 0x01, 0x00, 0x00, 0xFA, 0xF9, 0xF9, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xE9, 0xE8, 0x68, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x41, 0x01, 0x00, 0x00,
|
||||
0xC5, 0xC4, 0xC4, 0x39, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x42, 0x01, 0x00, 0x00, 0xE4, 0xE3, 0xE3, 0xBA, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x43, 0x01, 0x00, 0x00, 0xD5, 0xD4, 0xD4, 0xB9,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x44, 0x01, 0x00, 0x00,
|
||||
0xA2, 0xA1, 0xA1, 0xBA, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x45, 0x01, 0x00, 0x00, 0xE0, 0xDF, 0xDF, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x46, 0x01, 0x00, 0x00, 0xF7, 0xF6, 0x76, 0xBA,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x47, 0x01, 0x00, 0x00,
|
||||
0xD7, 0xD6, 0x56, 0x3A, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x48, 0x01, 0x00, 0x00, 0xF2, 0xF1, 0xF1, 0x3A, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x49, 0x01, 0x00, 0x00, 0xF5, 0xF4, 0xF4, 0x39,
|
||||
0x2C, 0x00, 0x03, 0x01, 0x49, 0x00, 0x00, 0x00, 0x4A, 0x01, 0x00, 0x00,
|
||||
0x4A, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00,
|
||||
0x4D, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x4F, 0x00, 0x00, 0x00,
|
||||
0x50, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00,
|
||||
0x53, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00, 0x55, 0x00, 0x00, 0x00,
|
||||
0x56, 0x00, 0x00, 0x00, 0x57, 0x00, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00,
|
||||
0x59, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00, 0x5B, 0x00, 0x00, 0x00,
|
||||
0x5C, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x00,
|
||||
0x62, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00,
|
||||
0x65, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
|
||||
0x68, 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00, 0x6A, 0x00, 0x00, 0x00,
|
||||
0x6B, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
|
||||
0x6E, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00,
|
||||
0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00, 0x73, 0x00, 0x00, 0x00,
|
||||
0x74, 0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
|
||||
0x77, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00,
|
||||
0x7A, 0x00, 0x00, 0x00, 0x7B, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
|
||||
0x7D, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00,
|
||||
0x83, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00,
|
||||
0x86, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00,
|
||||
0x89, 0x00, 0x00, 0x00, 0x8A, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00,
|
||||
0x8C, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x00, 0x00,
|
||||
0x8F, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, 0x91, 0x00, 0x00, 0x00,
|
||||
0x92, 0x00, 0x00, 0x00, 0x93, 0x00, 0x00, 0x00, 0x94, 0x00, 0x00, 0x00,
|
||||
0x95, 0x00, 0x00, 0x00, 0x96, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00,
|
||||
0x98, 0x00, 0x00, 0x00, 0x99, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00, 0x00,
|
||||
0x9B, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00, 0x9D, 0x00, 0x00, 0x00,
|
||||
0x9E, 0x00, 0x00, 0x00, 0x9F, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00,
|
||||
0xA1, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00, 0xA3, 0x00, 0x00, 0x00,
|
||||
0xA4, 0x00, 0x00, 0x00, 0xA5, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x00,
|
||||
0xA7, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00, 0xA9, 0x00, 0x00, 0x00,
|
||||
0xAA, 0x00, 0x00, 0x00, 0xAB, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x00, 0x00,
|
||||
0xAD, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x00, 0x00, 0xAF, 0x00, 0x00, 0x00,
|
||||
0xB0, 0x00, 0x00, 0x00, 0xB1, 0x00, 0x00, 0x00, 0xB2, 0x00, 0x00, 0x00,
|
||||
0xB3, 0x00, 0x00, 0x00, 0xB4, 0x00, 0x00, 0x00, 0xB5, 0x00, 0x00, 0x00,
|
||||
0xB6, 0x00, 0x00, 0x00, 0xB7, 0x00, 0x00, 0x00, 0xB8, 0x00, 0x00, 0x00,
|
||||
0xB9, 0x00, 0x00, 0x00, 0xBA, 0x00, 0x00, 0x00, 0xBB, 0x00, 0x00, 0x00,
|
||||
0xBC, 0x00, 0x00, 0x00, 0xBD, 0x00, 0x00, 0x00, 0xBE, 0x00, 0x00, 0x00,
|
||||
0xBF, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0xC1, 0x00, 0x00, 0x00,
|
||||
0xC2, 0x00, 0x00, 0x00, 0xC3, 0x00, 0x00, 0x00, 0xC4, 0x00, 0x00, 0x00,
|
||||
0xC5, 0x00, 0x00, 0x00, 0xC6, 0x00, 0x00, 0x00, 0xC7, 0x00, 0x00, 0x00,
|
||||
0xC8, 0x00, 0x00, 0x00, 0xC9, 0x00, 0x00, 0x00, 0xCA, 0x00, 0x00, 0x00,
|
||||
0xCB, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x00, 0xCD, 0x00, 0x00, 0x00,
|
||||
0xCE, 0x00, 0x00, 0x00, 0xCF, 0x00, 0x00, 0x00, 0xD0, 0x00, 0x00, 0x00,
|
||||
0xD1, 0x00, 0x00, 0x00, 0xD2, 0x00, 0x00, 0x00, 0xD3, 0x00, 0x00, 0x00,
|
||||
0xD4, 0x00, 0x00, 0x00, 0xD5, 0x00, 0x00, 0x00, 0xD6, 0x00, 0x00, 0x00,
|
||||
0xD7, 0x00, 0x00, 0x00, 0xD8, 0x00, 0x00, 0x00, 0xD9, 0x00, 0x00, 0x00,
|
||||
0xDA, 0x00, 0x00, 0x00, 0xDB, 0x00, 0x00, 0x00, 0xDC, 0x00, 0x00, 0x00,
|
||||
0xDD, 0x00, 0x00, 0x00, 0xDE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00,
|
||||
0xE0, 0x00, 0x00, 0x00, 0xE1, 0x00, 0x00, 0x00, 0xE2, 0x00, 0x00, 0x00,
|
||||
0xE3, 0x00, 0x00, 0x00, 0xE4, 0x00, 0x00, 0x00, 0xE5, 0x00, 0x00, 0x00,
|
||||
0xE6, 0x00, 0x00, 0x00, 0xE7, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00,
|
||||
0xE9, 0x00, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x00, 0xEB, 0x00, 0x00, 0x00,
|
||||
0xEC, 0x00, 0x00, 0x00, 0xED, 0x00, 0x00, 0x00, 0xEE, 0x00, 0x00, 0x00,
|
||||
0xEF, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, 0xF1, 0x00, 0x00, 0x00,
|
||||
0xF2, 0x00, 0x00, 0x00, 0xF3, 0x00, 0x00, 0x00, 0xF4, 0x00, 0x00, 0x00,
|
||||
0xF5, 0x00, 0x00, 0x00, 0xF6, 0x00, 0x00, 0x00, 0xF7, 0x00, 0x00, 0x00,
|
||||
0xF8, 0x00, 0x00, 0x00, 0xF9, 0x00, 0x00, 0x00, 0xFA, 0x00, 0x00, 0x00,
|
||||
0xFB, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0xFD, 0x00, 0x00, 0x00,
|
||||
0xFE, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
|
||||
0x01, 0x01, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x03, 0x01, 0x00, 0x00,
|
||||
0x04, 0x01, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00, 0x06, 0x01, 0x00, 0x00,
|
||||
0x07, 0x01, 0x00, 0x00, 0x08, 0x01, 0x00, 0x00, 0x09, 0x01, 0x00, 0x00,
|
||||
0x0A, 0x01, 0x00, 0x00, 0x0B, 0x01, 0x00, 0x00, 0x0C, 0x01, 0x00, 0x00,
|
||||
0x0D, 0x01, 0x00, 0x00, 0x0E, 0x01, 0x00, 0x00, 0x0F, 0x01, 0x00, 0x00,
|
||||
0x10, 0x01, 0x00, 0x00, 0x11, 0x01, 0x00, 0x00, 0x12, 0x01, 0x00, 0x00,
|
||||
0x13, 0x01, 0x00, 0x00, 0x14, 0x01, 0x00, 0x00, 0x15, 0x01, 0x00, 0x00,
|
||||
0x16, 0x01, 0x00, 0x00, 0x17, 0x01, 0x00, 0x00, 0x18, 0x01, 0x00, 0x00,
|
||||
0x19, 0x01, 0x00, 0x00, 0x1A, 0x01, 0x00, 0x00, 0x1B, 0x01, 0x00, 0x00,
|
||||
0x1C, 0x01, 0x00, 0x00, 0x1D, 0x01, 0x00, 0x00, 0x1E, 0x01, 0x00, 0x00,
|
||||
0x1F, 0x01, 0x00, 0x00, 0x20, 0x01, 0x00, 0x00, 0x21, 0x01, 0x00, 0x00,
|
||||
0x22, 0x01, 0x00, 0x00, 0x23, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x00,
|
||||
0x25, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x00, 0x27, 0x01, 0x00, 0x00,
|
||||
0x28, 0x01, 0x00, 0x00, 0x29, 0x01, 0x00, 0x00, 0x2A, 0x01, 0x00, 0x00,
|
||||
0x2B, 0x01, 0x00, 0x00, 0x2C, 0x01, 0x00, 0x00, 0x2D, 0x01, 0x00, 0x00,
|
||||
0x2E, 0x01, 0x00, 0x00, 0x2F, 0x01, 0x00, 0x00, 0x30, 0x01, 0x00, 0x00,
|
||||
0x31, 0x01, 0x00, 0x00, 0x32, 0x01, 0x00, 0x00, 0x33, 0x01, 0x00, 0x00,
|
||||
0x34, 0x01, 0x00, 0x00, 0x35, 0x01, 0x00, 0x00, 0x36, 0x01, 0x00, 0x00,
|
||||
0x37, 0x01, 0x00, 0x00, 0x38, 0x01, 0x00, 0x00, 0x39, 0x01, 0x00, 0x00,
|
||||
0x3A, 0x01, 0x00, 0x00, 0x3B, 0x01, 0x00, 0x00, 0x3C, 0x01, 0x00, 0x00,
|
||||
0x3D, 0x01, 0x00, 0x00, 0x3E, 0x01, 0x00, 0x00, 0x3F, 0x01, 0x00, 0x00,
|
||||
0x40, 0x01, 0x00, 0x00, 0x41, 0x01, 0x00, 0x00, 0x42, 0x01, 0x00, 0x00,
|
||||
0x43, 0x01, 0x00, 0x00, 0x44, 0x01, 0x00, 0x00, 0x45, 0x01, 0x00, 0x00,
|
||||
0x46, 0x01, 0x00, 0x00, 0x47, 0x01, 0x00, 0x00, 0x48, 0x01, 0x00, 0x00,
|
||||
0x49, 0x01, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x4B, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x4E, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x50, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x54, 0x01, 0x00, 0x00,
|
||||
0x07, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x6E, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3F,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x76, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x7F, 0x01, 0x00, 0x00, 0xFF, 0x9F, 0xF1, 0x7E, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x8B, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
|
||||
0x19, 0x00, 0x09, 0x00, 0x92, 0x01, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x1B, 0x00, 0x03, 0x00, 0x93, 0x01, 0x00, 0x00, 0x92, 0x01, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x94, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x93, 0x01, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x94, 0x01, 0x00, 0x00,
|
||||
0x95, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x2C, 0x00, 0x00, 0x00, 0x98, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x9B, 0x01, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x2C, 0x00, 0x00, 0x00,
|
||||
0xA9, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x2D, 0x00, 0x00, 0x00, 0xAA, 0x01, 0x00, 0x00, 0x98, 0x01, 0x00, 0x00,
|
||||
0xA9, 0x01, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2D, 0x00, 0x00, 0x00,
|
||||
0xB1, 0x01, 0x00, 0x00, 0xA9, 0x01, 0x00, 0x00, 0x98, 0x01, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x2C, 0x00, 0x00, 0x00, 0xBD, 0x01, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x2D, 0x00, 0x00, 0x00,
|
||||
0xBE, 0x01, 0x00, 0x00, 0xBD, 0x01, 0x00, 0x00, 0x98, 0x01, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x2D, 0x00, 0x00, 0x00, 0xC5, 0x01, 0x00, 0x00,
|
||||
0x98, 0x01, 0x00, 0x00, 0xBD, 0x01, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xD1, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x68, 0x02, 0x00, 0x00,
|
||||
0x00, 0x00, 0x80, 0x3E, 0x17, 0x00, 0x04, 0x00, 0xE4, 0x02, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE7, 0x02, 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0xED, 0x02, 0x00, 0x00,
|
||||
0x00, 0x00, 0x80, 0x40, 0x2B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x4E, 0x03, 0x00, 0x00, 0x00, 0x00, 0x40, 0xBE, 0x20, 0x00, 0x04, 0x00,
|
||||
0xA5, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x04, 0x00, 0xA5, 0x03, 0x00, 0x00, 0xA6, 0x03, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x04, 0x00, 0xAA, 0x03, 0x00, 0x00,
|
||||
0x2D, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0xAB, 0x03, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0xAA, 0x03, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x04, 0x00, 0xAB, 0x03, 0x00, 0x00, 0xAC, 0x03, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0xAD, 0x03, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0xB3, 0x03, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0xBC, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0xBC, 0x03, 0x00, 0x00,
|
||||
0xBD, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0xC7, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x06, 0x00, 0x9B, 0x01, 0x00, 0x00, 0xD4, 0x03, 0x00, 0x00,
|
||||
0x76, 0x01, 0x00, 0x00, 0x76, 0x01, 0x00, 0x00, 0x76, 0x01, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x06, 0x00, 0x9B, 0x01, 0x00, 0x00, 0xD5, 0x03, 0x00, 0x00,
|
||||
0x6E, 0x01, 0x00, 0x00, 0x6E, 0x01, 0x00, 0x00, 0x6E, 0x01, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0xDD, 0x03, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||
0x4D, 0x07, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00,
|
||||
0x36, 0x00, 0x05, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x02, 0x00,
|
||||
0x05, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x54, 0x01, 0x00, 0x00,
|
||||
0x1B, 0x07, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x2F, 0x00, 0x00, 0x00, 0xA7, 0x03, 0x00, 0x00, 0xA6, 0x03, 0x00, 0x00,
|
||||
0x4F, 0x00, 0x07, 0x00, 0xE4, 0x02, 0x00, 0x00, 0xA8, 0x03, 0x00, 0x00,
|
||||
0xA7, 0x03, 0x00, 0x00, 0xA7, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x04, 0x00, 0x2D, 0x00, 0x00, 0x00,
|
||||
0xA9, 0x03, 0x00, 0x00, 0xA8, 0x03, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0xAD, 0x03, 0x00, 0x00, 0xAE, 0x03, 0x00, 0x00, 0xAC, 0x03, 0x00, 0x00,
|
||||
0x98, 0x01, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00, 0x2D, 0x00, 0x00, 0x00,
|
||||
0xAF, 0x03, 0x00, 0x00, 0xAE, 0x03, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x2D, 0x00, 0x00, 0x00, 0xB0, 0x03, 0x00, 0x00, 0xA9, 0x03, 0x00, 0x00,
|
||||
0xAF, 0x03, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||
0xB1, 0x03, 0x00, 0x00, 0xB0, 0x03, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0xB3, 0x03, 0x00, 0x00, 0xB4, 0x03, 0x00, 0x00, 0xAC, 0x03, 0x00, 0x00,
|
||||
0xBD, 0x01, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xB5, 0x03, 0x00, 0x00, 0xB4, 0x03, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB6, 0x03, 0x00, 0x00, 0xB5, 0x03, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x66, 0x04, 0x00, 0x00,
|
||||
0xB1, 0x03, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x2D, 0x00, 0x00, 0x00,
|
||||
0x68, 0x04, 0x00, 0x00, 0x66, 0x04, 0x00, 0x00, 0xAA, 0x01, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x93, 0x01, 0x00, 0x00, 0xD2, 0x05, 0x00, 0x00,
|
||||
0x95, 0x01, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x92, 0x01, 0x00, 0x00,
|
||||
0xD4, 0x05, 0x00, 0x00, 0xD2, 0x05, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x2F, 0x00, 0x00, 0x00, 0xD5, 0x05, 0x00, 0x00, 0xD4, 0x05, 0x00, 0x00,
|
||||
0x68, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x98, 0x01, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xD7, 0x05, 0x00, 0x00,
|
||||
0xD5, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xD8, 0x05, 0x00, 0x00, 0xD5, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xD9, 0x05, 0x00, 0x00, 0xD5, 0x05, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x6C, 0x04, 0x00, 0x00,
|
||||
0x66, 0x04, 0x00, 0x00, 0xB1, 0x01, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x92, 0x01, 0x00, 0x00, 0xDF, 0x05, 0x00, 0x00, 0xD2, 0x05, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x2F, 0x00, 0x00, 0x00, 0xE0, 0x05, 0x00, 0x00,
|
||||
0xDF, 0x05, 0x00, 0x00, 0x6C, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x98, 0x01, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xE2, 0x05, 0x00, 0x00, 0xE0, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xE3, 0x05, 0x00, 0x00,
|
||||
0xE0, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE4, 0x05, 0x00, 0x00, 0xE0, 0x05, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x92, 0x01, 0x00, 0x00,
|
||||
0xEA, 0x05, 0x00, 0x00, 0xD2, 0x05, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x2F, 0x00, 0x00, 0x00, 0xEB, 0x05, 0x00, 0x00, 0xEA, 0x05, 0x00, 0x00,
|
||||
0x66, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x98, 0x01, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xED, 0x05, 0x00, 0x00,
|
||||
0xEB, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xEE, 0x05, 0x00, 0x00, 0xEB, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xEF, 0x05, 0x00, 0x00, 0xEB, 0x05, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x73, 0x04, 0x00, 0x00,
|
||||
0x66, 0x04, 0x00, 0x00, 0xBE, 0x01, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x92, 0x01, 0x00, 0x00, 0xF5, 0x05, 0x00, 0x00, 0xD2, 0x05, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x2F, 0x00, 0x00, 0x00, 0xF6, 0x05, 0x00, 0x00,
|
||||
0xF5, 0x05, 0x00, 0x00, 0x73, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x98, 0x01, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xF8, 0x05, 0x00, 0x00, 0xF6, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF9, 0x05, 0x00, 0x00,
|
||||
0xF6, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xFA, 0x05, 0x00, 0x00, 0xF6, 0x05, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x2D, 0x00, 0x00, 0x00,
|
||||
0x77, 0x04, 0x00, 0x00, 0x66, 0x04, 0x00, 0x00, 0xC5, 0x01, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x92, 0x01, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00,
|
||||
0xD2, 0x05, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x2F, 0x00, 0x00, 0x00,
|
||||
0x01, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x77, 0x04, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x98, 0x01, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x03, 0x06, 0x00, 0x00, 0x01, 0x06, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x04, 0x06, 0x00, 0x00, 0x01, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x05, 0x06, 0x00, 0x00,
|
||||
0x01, 0x06, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x83, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xE2, 0x05, 0x00, 0x00, 0xF8, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0x84, 0x06, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0xD7, 0x05, 0x00, 0x00,
|
||||
0x83, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x17, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x84, 0x06, 0x00, 0x00, 0x03, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x8A, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xE3, 0x05, 0x00, 0x00, 0xF9, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0x8B, 0x06, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0xD8, 0x05, 0x00, 0x00,
|
||||
0x8A, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x1D, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x8B, 0x06, 0x00, 0x00, 0x04, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x91, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xE4, 0x05, 0x00, 0x00, 0xFA, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0x92, 0x06, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0xD9, 0x05, 0x00, 0x00,
|
||||
0x91, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x23, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x92, 0x06, 0x00, 0x00, 0x05, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x98, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0xE2, 0x05, 0x00, 0x00, 0xF8, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0x99, 0x06, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xD7, 0x05, 0x00, 0x00,
|
||||
0x98, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x29, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x99, 0x06, 0x00, 0x00, 0x03, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x9F, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0xE3, 0x05, 0x00, 0x00, 0xF9, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA0, 0x06, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xD8, 0x05, 0x00, 0x00,
|
||||
0x9F, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x06, 0x00, 0x00, 0x04, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xA6, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0xE4, 0x05, 0x00, 0x00, 0xFA, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA7, 0x06, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xD9, 0x05, 0x00, 0x00,
|
||||
0xA6, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x35, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0xA7, 0x06, 0x00, 0x00, 0x05, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x38, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x17, 0x05, 0x00, 0x00, 0xED, 0x05, 0x00, 0x00,
|
||||
0x88, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xB0, 0x06, 0x00, 0x00,
|
||||
0x68, 0x02, 0x00, 0x00, 0x29, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x3D, 0x05, 0x00, 0x00, 0x38, 0x05, 0x00, 0x00,
|
||||
0xB0, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x40, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x1D, 0x05, 0x00, 0x00, 0xEE, 0x05, 0x00, 0x00, 0x88, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xBC, 0x06, 0x00, 0x00, 0x68, 0x02, 0x00, 0x00,
|
||||
0x2F, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x45, 0x05, 0x00, 0x00, 0x40, 0x05, 0x00, 0x00, 0xBC, 0x06, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0x48, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x23, 0x05, 0x00, 0x00,
|
||||
0xEF, 0x05, 0x00, 0x00, 0x88, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xC8, 0x06, 0x00, 0x00, 0x68, 0x02, 0x00, 0x00, 0x35, 0x05, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x4D, 0x05, 0x00, 0x00,
|
||||
0x48, 0x05, 0x00, 0x00, 0xC8, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x52, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x29, 0x05, 0x00, 0x00, 0xED, 0x05, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x53, 0x05, 0x00, 0x00,
|
||||
0x6E, 0x01, 0x00, 0x00, 0x52, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x56, 0x05, 0x00, 0x00, 0xED, 0x02, 0x00, 0x00,
|
||||
0x17, 0x05, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x59, 0x05, 0x00, 0x00, 0x56, 0x05, 0x00, 0x00, 0xE7, 0x02, 0x00, 0x00,
|
||||
0x88, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xD4, 0x06, 0x00, 0x00,
|
||||
0x6E, 0x01, 0x00, 0x00, 0x59, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x5B, 0x05, 0x00, 0x00, 0x53, 0x05, 0x00, 0x00,
|
||||
0xD4, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x60, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x2F, 0x05, 0x00, 0x00, 0xEE, 0x05, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x61, 0x05, 0x00, 0x00, 0x6E, 0x01, 0x00, 0x00,
|
||||
0x60, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x64, 0x05, 0x00, 0x00, 0xED, 0x02, 0x00, 0x00, 0x1D, 0x05, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x67, 0x05, 0x00, 0x00,
|
||||
0x64, 0x05, 0x00, 0x00, 0xE7, 0x02, 0x00, 0x00, 0x88, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xE0, 0x06, 0x00, 0x00, 0x6E, 0x01, 0x00, 0x00,
|
||||
0x67, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x69, 0x05, 0x00, 0x00, 0x61, 0x05, 0x00, 0x00, 0xE0, 0x06, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0x6E, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x35, 0x05, 0x00, 0x00,
|
||||
0xEF, 0x05, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x6F, 0x05, 0x00, 0x00, 0x6E, 0x01, 0x00, 0x00, 0x6E, 0x05, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x72, 0x05, 0x00, 0x00,
|
||||
0xED, 0x02, 0x00, 0x00, 0x23, 0x05, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x75, 0x05, 0x00, 0x00, 0x72, 0x05, 0x00, 0x00,
|
||||
0xE7, 0x02, 0x00, 0x00, 0x88, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xEC, 0x06, 0x00, 0x00, 0x6E, 0x01, 0x00, 0x00, 0x75, 0x05, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x77, 0x05, 0x00, 0x00,
|
||||
0x6F, 0x05, 0x00, 0x00, 0xEC, 0x06, 0x00, 0x00, 0x7F, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x79, 0x05, 0x00, 0x00, 0x3D, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0x7B, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x79, 0x05, 0x00, 0x00,
|
||||
0x5B, 0x05, 0x00, 0x00, 0x7F, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x7D, 0x05, 0x00, 0x00, 0x45, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x7F, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x7D, 0x05, 0x00, 0x00, 0x69, 0x05, 0x00, 0x00,
|
||||
0x7F, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x81, 0x05, 0x00, 0x00,
|
||||
0x4D, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x83, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x81, 0x05, 0x00, 0x00, 0x77, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xF8, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x7F, 0x05, 0x00, 0x00, 0x83, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00, 0xF9, 0x06, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x7B, 0x05, 0x00, 0x00,
|
||||
0xF8, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x8A, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0xF9, 0x06, 0x00, 0x00, 0x76, 0x01, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x8B, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x4E, 0x03, 0x00, 0x00, 0x8A, 0x05, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x8E, 0x05, 0x00, 0x00,
|
||||
0xB6, 0x03, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x8F, 0x05, 0x00, 0x00, 0x8B, 0x05, 0x00, 0x00, 0x8E, 0x05, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x92, 0x05, 0x00, 0x00,
|
||||
0xED, 0x02, 0x00, 0x00, 0x8F, 0x05, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x94, 0x05, 0x00, 0x00, 0x92, 0x05, 0x00, 0x00,
|
||||
0x6E, 0x01, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x07, 0x00, 0x00, 0x94, 0x05, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x0B, 0x07, 0x00, 0x00, 0x7F, 0x01, 0x00, 0x00,
|
||||
0x0A, 0x07, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x0C, 0x07, 0x00, 0x00, 0x0B, 0x07, 0x00, 0x00, 0x7F, 0x00, 0x04, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x0F, 0x07, 0x00, 0x00, 0x0C, 0x07, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x11, 0x07, 0x00, 0x00,
|
||||
0x0F, 0x07, 0x00, 0x00, 0x94, 0x05, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x13, 0x07, 0x00, 0x00, 0x11, 0x07, 0x00, 0x00,
|
||||
0x8B, 0x01, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x14, 0x07, 0x00, 0x00, 0x0C, 0x07, 0x00, 0x00, 0x13, 0x07, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x44, 0x07, 0x00, 0x00,
|
||||
0xD7, 0x05, 0x00, 0x00, 0xE2, 0x05, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x45, 0x07, 0x00, 0x00, 0x44, 0x07, 0x00, 0x00,
|
||||
0x03, 0x06, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x46, 0x07, 0x00, 0x00, 0x45, 0x07, 0x00, 0x00, 0xF8, 0x05, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xA4, 0x05, 0x00, 0x00,
|
||||
0x8F, 0x05, 0x00, 0x00, 0x46, 0x07, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xA6, 0x05, 0x00, 0x00, 0xA4, 0x05, 0x00, 0x00,
|
||||
0xED, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xA8, 0x05, 0x00, 0x00, 0xA6, 0x05, 0x00, 0x00, 0x14, 0x07, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x47, 0x07, 0x00, 0x00,
|
||||
0xD8, 0x05, 0x00, 0x00, 0xE3, 0x05, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x48, 0x07, 0x00, 0x00, 0x47, 0x07, 0x00, 0x00,
|
||||
0x04, 0x06, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x49, 0x07, 0x00, 0x00, 0x48, 0x07, 0x00, 0x00, 0xF9, 0x05, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xB7, 0x05, 0x00, 0x00,
|
||||
0x8F, 0x05, 0x00, 0x00, 0x49, 0x07, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xB9, 0x05, 0x00, 0x00, 0xB7, 0x05, 0x00, 0x00,
|
||||
0xEE, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xBB, 0x05, 0x00, 0x00, 0xB9, 0x05, 0x00, 0x00, 0x14, 0x07, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x4A, 0x07, 0x00, 0x00,
|
||||
0xD9, 0x05, 0x00, 0x00, 0xE4, 0x05, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x4B, 0x07, 0x00, 0x00, 0x4A, 0x07, 0x00, 0x00,
|
||||
0x05, 0x06, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x4C, 0x07, 0x00, 0x00, 0x4B, 0x07, 0x00, 0x00, 0xFA, 0x05, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xCA, 0x05, 0x00, 0x00,
|
||||
0x8F, 0x05, 0x00, 0x00, 0x4C, 0x07, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xCC, 0x05, 0x00, 0x00, 0xCA, 0x05, 0x00, 0x00,
|
||||
0xEF, 0x05, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xCE, 0x05, 0x00, 0x00, 0xCC, 0x05, 0x00, 0x00, 0x14, 0x07, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xC7, 0x03, 0x00, 0x00, 0xC8, 0x03, 0x00, 0x00,
|
||||
0xBD, 0x03, 0x00, 0x00, 0x50, 0x01, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0xC8, 0x03, 0x00, 0x00, 0xA8, 0x05, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0xC7, 0x03, 0x00, 0x00, 0xCA, 0x03, 0x00, 0x00, 0xBD, 0x03, 0x00, 0x00,
|
||||
0x4B, 0x01, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0xCA, 0x03, 0x00, 0x00,
|
||||
0xBB, 0x05, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0xC7, 0x03, 0x00, 0x00,
|
||||
0xCC, 0x03, 0x00, 0x00, 0xBD, 0x03, 0x00, 0x00, 0xD1, 0x01, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xCC, 0x03, 0x00, 0x00, 0xCE, 0x05, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x2F, 0x00, 0x00, 0x00, 0xCD, 0x03, 0x00, 0x00,
|
||||
0xBD, 0x03, 0x00, 0x00, 0x4F, 0x00, 0x08, 0x00, 0x9B, 0x01, 0x00, 0x00,
|
||||
0xCE, 0x03, 0x00, 0x00, 0xCD, 0x03, 0x00, 0x00, 0xCD, 0x03, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0xC7, 0x00, 0x05, 0x00, 0x07, 0x00, 0x00, 0x00, 0x20, 0x07, 0x00, 0x00,
|
||||
0xB1, 0x03, 0x00, 0x00, 0x4D, 0x07, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x22, 0x07, 0x00, 0x00, 0x20, 0x07, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x84, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x23, 0x07, 0x00, 0x00, 0x22, 0x07, 0x00, 0x00, 0x4E, 0x01, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x25, 0x07, 0x00, 0x00,
|
||||
0x20, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x26, 0x07, 0x00, 0x00, 0x23, 0x07, 0x00, 0x00,
|
||||
0x25, 0x07, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0x1B, 0x07, 0x00, 0x00,
|
||||
0x4A, 0x01, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x27, 0x07, 0x00, 0x00, 0x1B, 0x07, 0x00, 0x00, 0x26, 0x07, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x28, 0x07, 0x00, 0x00,
|
||||
0x27, 0x07, 0x00, 0x00, 0x50, 0x00, 0x06, 0x00, 0x9B, 0x01, 0x00, 0x00,
|
||||
0xD2, 0x03, 0x00, 0x00, 0x28, 0x07, 0x00, 0x00, 0x28, 0x07, 0x00, 0x00,
|
||||
0x28, 0x07, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x9B, 0x01, 0x00, 0x00,
|
||||
0xD3, 0x03, 0x00, 0x00, 0xCE, 0x03, 0x00, 0x00, 0xD2, 0x03, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x08, 0x00, 0x9B, 0x01, 0x00, 0x00, 0xD6, 0x03, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00, 0xD3, 0x03, 0x00, 0x00,
|
||||
0xD4, 0x03, 0x00, 0x00, 0xD5, 0x03, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0xD8, 0x03, 0x00, 0x00, 0xD6, 0x03, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0xC8, 0x03, 0x00, 0x00,
|
||||
0xD8, 0x03, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0xDA, 0x03, 0x00, 0x00, 0xD6, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xCA, 0x03, 0x00, 0x00, 0xDA, 0x03, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0xDC, 0x03, 0x00, 0x00,
|
||||
0xD6, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0xCC, 0x03, 0x00, 0x00, 0xDC, 0x03, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0xC7, 0x03, 0x00, 0x00, 0xDE, 0x03, 0x00, 0x00, 0xBD, 0x03, 0x00, 0x00,
|
||||
0xDD, 0x03, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0xDE, 0x03, 0x00, 0x00,
|
||||
0x6E, 0x01, 0x00, 0x00, 0xFD, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00,
|
||||
};
|
||||
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_dither_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_dither_frag.spv
generated
Normal file
Binary file not shown.
494
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_dither_frag.txt
generated
Normal file
494
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_dither_frag.txt
generated
Normal file
File diff suppressed because one or more lines are too long
345
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_frag.h
generated
Normal file
345
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_frag.h
generated
Normal file
@@ -0,0 +1,345 @@
|
||||
// generated from `xb genspirv`
|
||||
// source: guest_output_ffx_fsr_rcas.frag
|
||||
const uint8_t guest_output_ffx_fsr_rcas_frag[] = {
|
||||
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x0A, 0x00, 0x08, 0x00,
|
||||
0x15, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x47, 0x4C, 0x53, 0x4C, 0x2E, 0x73, 0x74, 0x64, 0x2E, 0x34, 0x35, 0x30,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x8E, 0x02, 0x00, 0x00, 0xA5, 0x02, 0x00, 0x00, 0x10, 0x00, 0x03, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0xA4, 0x01, 0x00, 0x00, 0x04, 0x00, 0x0A, 0x00,
|
||||
0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C, 0x45, 0x5F, 0x63, 0x70,
|
||||
0x70, 0x5F, 0x73, 0x74, 0x79, 0x6C, 0x65, 0x5F, 0x6C, 0x69, 0x6E, 0x65,
|
||||
0x5F, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x00,
|
||||
0x04, 0x00, 0x08, 0x00, 0x47, 0x4C, 0x5F, 0x47, 0x4F, 0x4F, 0x47, 0x4C,
|
||||
0x45, 0x5F, 0x69, 0x6E, 0x63, 0x6C, 0x75, 0x64, 0x65, 0x5F, 0x64, 0x69,
|
||||
0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x05, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x05, 0x00, 0x7B, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x74,
|
||||
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
|
||||
0x8E, 0x02, 0x00, 0x00, 0x67, 0x6C, 0x5F, 0x46, 0x72, 0x61, 0x67, 0x43,
|
||||
0x6F, 0x6F, 0x72, 0x64, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
|
||||
0x92, 0x02, 0x00, 0x00, 0x58, 0x65, 0x46, 0x73, 0x72, 0x52, 0x63, 0x61,
|
||||
0x73, 0x43, 0x6F, 0x6E, 0x73, 0x74, 0x61, 0x6E, 0x74, 0x73, 0x00, 0x00,
|
||||
0x06, 0x00, 0x0A, 0x00, 0x92, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x78, 0x65, 0x5F, 0x66, 0x73, 0x72, 0x5F, 0x72, 0x63, 0x61, 0x73, 0x5F,
|
||||
0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5F, 0x6F, 0x66, 0x66, 0x73, 0x65,
|
||||
0x74, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x92, 0x02, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x66, 0x73, 0x72, 0x5F, 0x72,
|
||||
0x63, 0x61, 0x73, 0x5F, 0x73, 0x68, 0x61, 0x72, 0x70, 0x6E, 0x65, 0x73,
|
||||
0x73, 0x5F, 0x70, 0x6F, 0x73, 0x74, 0x5F, 0x73, 0x65, 0x74, 0x75, 0x70,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x00, 0x94, 0x02, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0xA5, 0x02, 0x00, 0x00,
|
||||
0x78, 0x65, 0x5F, 0x66, 0x72, 0x61, 0x67, 0x5F, 0x63, 0x6F, 0x6C, 0x6F,
|
||||
0x72, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x7B, 0x00, 0x00, 0x00,
|
||||
0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0x7B, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x04, 0x00, 0x8E, 0x02, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
|
||||
0x0F, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0x92, 0x02, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
|
||||
0x48, 0x00, 0x05, 0x00, 0x92, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x23, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00,
|
||||
0x92, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
|
||||
0xA5, 0x02, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x13, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x15, 0x00, 0x04, 0x00, 0x26, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x27, 0x00, 0x00, 0x00,
|
||||
0x26, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x34, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3F, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00,
|
||||
0xFF, 0x9F, 0xF1, 0x7E, 0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x71, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x19, 0x00, 0x09, 0x00,
|
||||
0x78, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x03, 0x00,
|
||||
0x79, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x04, 0x00, 0x7A, 0x00, 0x00, 0x00, 0x7B, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x26, 0x00, 0x00, 0x00,
|
||||
0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x26, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x27, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
|
||||
0x7E, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x27, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00,
|
||||
0x7E, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x26, 0x00, 0x00, 0x00,
|
||||
0xA3, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00,
|
||||
0x27, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00, 0xA3, 0x00, 0x00, 0x00,
|
||||
0x7E, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x05, 0x00, 0x27, 0x00, 0x00, 0x00,
|
||||
0xAB, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0xA3, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xB1, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xB5, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0xB9, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x50, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x80, 0x3E, 0x17, 0x00, 0x04, 0x00, 0xCC, 0x01, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xCF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD5, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x80, 0x40, 0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x36, 0x02, 0x00, 0x00, 0x00, 0x00, 0x40, 0xBE, 0x20, 0x00, 0x04, 0x00,
|
||||
0x8D, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x04, 0x00, 0x8D, 0x02, 0x00, 0x00, 0x8E, 0x02, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x04, 0x00, 0x92, 0x02, 0x00, 0x00,
|
||||
0x27, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0x93, 0x02, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x92, 0x02, 0x00, 0x00,
|
||||
0x3B, 0x00, 0x04, 0x00, 0x93, 0x02, 0x00, 0x00, 0x94, 0x02, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x95, 0x02, 0x00, 0x00,
|
||||
0x09, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0x9B, 0x02, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0xA4, 0x02, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0xA4, 0x02, 0x00, 0x00,
|
||||
0xA5, 0x02, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0xAF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xB5, 0x02, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0xF8, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0x8F, 0x02, 0x00, 0x00, 0x8E, 0x02, 0x00, 0x00,
|
||||
0x4F, 0x00, 0x07, 0x00, 0xCC, 0x01, 0x00, 0x00, 0x90, 0x02, 0x00, 0x00,
|
||||
0x8F, 0x02, 0x00, 0x00, 0x8F, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x04, 0x00, 0x27, 0x00, 0x00, 0x00,
|
||||
0x91, 0x02, 0x00, 0x00, 0x90, 0x02, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0x95, 0x02, 0x00, 0x00, 0x96, 0x02, 0x00, 0x00, 0x94, 0x02, 0x00, 0x00,
|
||||
0x7E, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00, 0x27, 0x00, 0x00, 0x00,
|
||||
0x97, 0x02, 0x00, 0x00, 0x96, 0x02, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x27, 0x00, 0x00, 0x00, 0x98, 0x02, 0x00, 0x00, 0x91, 0x02, 0x00, 0x00,
|
||||
0x97, 0x02, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x34, 0x00, 0x00, 0x00,
|
||||
0x99, 0x02, 0x00, 0x00, 0x98, 0x02, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0x9B, 0x02, 0x00, 0x00, 0x9C, 0x02, 0x00, 0x00, 0x94, 0x02, 0x00, 0x00,
|
||||
0xA3, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x9D, 0x02, 0x00, 0x00, 0x9C, 0x02, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0x9E, 0x02, 0x00, 0x00, 0x9D, 0x02, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x27, 0x00, 0x00, 0x00, 0x3E, 0x03, 0x00, 0x00,
|
||||
0x99, 0x02, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x27, 0x00, 0x00, 0x00,
|
||||
0x40, 0x03, 0x00, 0x00, 0x3E, 0x03, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x79, 0x00, 0x00, 0x00, 0xAA, 0x04, 0x00, 0x00,
|
||||
0x7B, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x78, 0x00, 0x00, 0x00,
|
||||
0xAC, 0x04, 0x00, 0x00, 0xAA, 0x04, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0xAD, 0x04, 0x00, 0x00, 0xAC, 0x04, 0x00, 0x00,
|
||||
0x40, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xAF, 0x04, 0x00, 0x00,
|
||||
0xAD, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB0, 0x04, 0x00, 0x00, 0xAD, 0x04, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xB1, 0x04, 0x00, 0x00, 0xAD, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x27, 0x00, 0x00, 0x00, 0x44, 0x03, 0x00, 0x00,
|
||||
0x3E, 0x03, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x78, 0x00, 0x00, 0x00, 0xB7, 0x04, 0x00, 0x00, 0xAA, 0x04, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x29, 0x00, 0x00, 0x00, 0xB8, 0x04, 0x00, 0x00,
|
||||
0xB7, 0x04, 0x00, 0x00, 0x44, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x7E, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xBA, 0x04, 0x00, 0x00, 0xB8, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xBB, 0x04, 0x00, 0x00,
|
||||
0xB8, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xBC, 0x04, 0x00, 0x00, 0xB8, 0x04, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00, 0x78, 0x00, 0x00, 0x00,
|
||||
0xC2, 0x04, 0x00, 0x00, 0xAA, 0x04, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0xC3, 0x04, 0x00, 0x00, 0xC2, 0x04, 0x00, 0x00,
|
||||
0x3E, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC5, 0x04, 0x00, 0x00,
|
||||
0xC3, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xC6, 0x04, 0x00, 0x00, 0xC3, 0x04, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC7, 0x04, 0x00, 0x00, 0xC3, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x80, 0x00, 0x05, 0x00, 0x27, 0x00, 0x00, 0x00, 0x4B, 0x03, 0x00, 0x00,
|
||||
0x3E, 0x03, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00, 0x64, 0x00, 0x04, 0x00,
|
||||
0x78, 0x00, 0x00, 0x00, 0xCD, 0x04, 0x00, 0x00, 0xAA, 0x04, 0x00, 0x00,
|
||||
0x5F, 0x00, 0x07, 0x00, 0x29, 0x00, 0x00, 0x00, 0xCE, 0x04, 0x00, 0x00,
|
||||
0xCD, 0x04, 0x00, 0x00, 0x4B, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x7E, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xD0, 0x04, 0x00, 0x00, 0xCE, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD1, 0x04, 0x00, 0x00,
|
||||
0xCE, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xD2, 0x04, 0x00, 0x00, 0xCE, 0x04, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x80, 0x00, 0x05, 0x00, 0x27, 0x00, 0x00, 0x00,
|
||||
0x4F, 0x03, 0x00, 0x00, 0x3E, 0x03, 0x00, 0x00, 0xAB, 0x00, 0x00, 0x00,
|
||||
0x64, 0x00, 0x04, 0x00, 0x78, 0x00, 0x00, 0x00, 0xD8, 0x04, 0x00, 0x00,
|
||||
0xAA, 0x04, 0x00, 0x00, 0x5F, 0x00, 0x07, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0xD9, 0x04, 0x00, 0x00, 0xD8, 0x04, 0x00, 0x00, 0x4F, 0x03, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xDB, 0x04, 0x00, 0x00, 0xD9, 0x04, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xDC, 0x04, 0x00, 0x00, 0xD9, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xDD, 0x04, 0x00, 0x00,
|
||||
0xD9, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x5B, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xBA, 0x04, 0x00, 0x00, 0xD0, 0x04, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x5C, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0xAF, 0x04, 0x00, 0x00,
|
||||
0x5B, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xEF, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x5C, 0x05, 0x00, 0x00, 0xDB, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x62, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xBB, 0x04, 0x00, 0x00, 0xD1, 0x04, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x63, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0xB0, 0x04, 0x00, 0x00,
|
||||
0x62, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xF5, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x63, 0x05, 0x00, 0x00, 0xDC, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x69, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xBC, 0x04, 0x00, 0x00, 0xD2, 0x04, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x6A, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0xB1, 0x04, 0x00, 0x00,
|
||||
0x69, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xFB, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x6A, 0x05, 0x00, 0x00, 0xDD, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x70, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0xBA, 0x04, 0x00, 0x00, 0xD0, 0x04, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x71, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xAF, 0x04, 0x00, 0x00,
|
||||
0x70, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x01, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x71, 0x05, 0x00, 0x00, 0xDB, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x77, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0xBB, 0x04, 0x00, 0x00, 0xD1, 0x04, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x78, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xB0, 0x04, 0x00, 0x00,
|
||||
0x77, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x07, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x78, 0x05, 0x00, 0x00, 0xDC, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x7E, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0xBC, 0x04, 0x00, 0x00, 0xD2, 0x04, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x7F, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xB1, 0x04, 0x00, 0x00,
|
||||
0x7E, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x0D, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x7F, 0x05, 0x00, 0x00, 0xDD, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0xEF, 0x03, 0x00, 0x00, 0xC5, 0x04, 0x00, 0x00,
|
||||
0x88, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x88, 0x05, 0x00, 0x00,
|
||||
0x50, 0x01, 0x00, 0x00, 0x01, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x15, 0x04, 0x00, 0x00, 0x10, 0x04, 0x00, 0x00,
|
||||
0x88, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x18, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0xF5, 0x03, 0x00, 0x00, 0xC6, 0x04, 0x00, 0x00, 0x88, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x94, 0x05, 0x00, 0x00, 0x50, 0x01, 0x00, 0x00,
|
||||
0x07, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x1D, 0x04, 0x00, 0x00, 0x18, 0x04, 0x00, 0x00, 0x94, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x04, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0xFB, 0x03, 0x00, 0x00,
|
||||
0xC7, 0x04, 0x00, 0x00, 0x88, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA0, 0x05, 0x00, 0x00, 0x50, 0x01, 0x00, 0x00, 0x0D, 0x04, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x25, 0x04, 0x00, 0x00,
|
||||
0x20, 0x04, 0x00, 0x00, 0xA0, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2A, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x01, 0x04, 0x00, 0x00, 0xC5, 0x04, 0x00, 0x00,
|
||||
0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2B, 0x04, 0x00, 0x00,
|
||||
0x54, 0x00, 0x00, 0x00, 0x2A, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x2E, 0x04, 0x00, 0x00, 0xD5, 0x01, 0x00, 0x00,
|
||||
0xEF, 0x03, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x31, 0x04, 0x00, 0x00, 0x2E, 0x04, 0x00, 0x00, 0xCF, 0x01, 0x00, 0x00,
|
||||
0x88, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xAC, 0x05, 0x00, 0x00,
|
||||
0x54, 0x00, 0x00, 0x00, 0x31, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x33, 0x04, 0x00, 0x00, 0x2B, 0x04, 0x00, 0x00,
|
||||
0xAC, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x38, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x07, 0x04, 0x00, 0x00, 0xC6, 0x04, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x39, 0x04, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
|
||||
0x38, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x3C, 0x04, 0x00, 0x00, 0xD5, 0x01, 0x00, 0x00, 0xF5, 0x03, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3F, 0x04, 0x00, 0x00,
|
||||
0x3C, 0x04, 0x00, 0x00, 0xCF, 0x01, 0x00, 0x00, 0x88, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xB8, 0x05, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
|
||||
0x3F, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x41, 0x04, 0x00, 0x00, 0x39, 0x04, 0x00, 0x00, 0xB8, 0x05, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x46, 0x04, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x0D, 0x04, 0x00, 0x00,
|
||||
0xC7, 0x04, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x47, 0x04, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00, 0x46, 0x04, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x4A, 0x04, 0x00, 0x00,
|
||||
0xD5, 0x01, 0x00, 0x00, 0xFB, 0x03, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x4D, 0x04, 0x00, 0x00, 0x4A, 0x04, 0x00, 0x00,
|
||||
0xCF, 0x01, 0x00, 0x00, 0x88, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xC4, 0x05, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00, 0x4D, 0x04, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x4F, 0x04, 0x00, 0x00,
|
||||
0x47, 0x04, 0x00, 0x00, 0xC4, 0x05, 0x00, 0x00, 0x7F, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x51, 0x04, 0x00, 0x00, 0x15, 0x04, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0x53, 0x04, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x51, 0x04, 0x00, 0x00,
|
||||
0x33, 0x04, 0x00, 0x00, 0x7F, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x55, 0x04, 0x00, 0x00, 0x1D, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x57, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x55, 0x04, 0x00, 0x00, 0x41, 0x04, 0x00, 0x00,
|
||||
0x7F, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x59, 0x04, 0x00, 0x00,
|
||||
0x25, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x5B, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x59, 0x04, 0x00, 0x00, 0x4F, 0x04, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xD0, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x57, 0x04, 0x00, 0x00, 0x5B, 0x04, 0x00, 0x00,
|
||||
0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00, 0xD1, 0x05, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x53, 0x04, 0x00, 0x00,
|
||||
0xD0, 0x05, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x62, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0xD1, 0x05, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x07, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x63, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x36, 0x02, 0x00, 0x00, 0x62, 0x04, 0x00, 0x00,
|
||||
0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x66, 0x04, 0x00, 0x00,
|
||||
0x9E, 0x02, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x67, 0x04, 0x00, 0x00, 0x63, 0x04, 0x00, 0x00, 0x66, 0x04, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x6A, 0x04, 0x00, 0x00,
|
||||
0xD5, 0x01, 0x00, 0x00, 0x67, 0x04, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x6C, 0x04, 0x00, 0x00, 0x6A, 0x04, 0x00, 0x00,
|
||||
0x54, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0xE2, 0x05, 0x00, 0x00, 0x6C, 0x04, 0x00, 0x00, 0x82, 0x00, 0x05, 0x00,
|
||||
0x0C, 0x00, 0x00, 0x00, 0xE3, 0x05, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00,
|
||||
0xE2, 0x05, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xE4, 0x05, 0x00, 0x00, 0xE3, 0x05, 0x00, 0x00, 0x7F, 0x00, 0x04, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xE7, 0x05, 0x00, 0x00, 0xE4, 0x05, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xE9, 0x05, 0x00, 0x00,
|
||||
0xE7, 0x05, 0x00, 0x00, 0x6C, 0x04, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xEB, 0x05, 0x00, 0x00, 0xE9, 0x05, 0x00, 0x00,
|
||||
0x71, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xEC, 0x05, 0x00, 0x00, 0xE4, 0x05, 0x00, 0x00, 0xEB, 0x05, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0C, 0x06, 0x00, 0x00,
|
||||
0xAF, 0x04, 0x00, 0x00, 0xBA, 0x04, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x0D, 0x06, 0x00, 0x00, 0x0C, 0x06, 0x00, 0x00,
|
||||
0xDB, 0x04, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x0E, 0x06, 0x00, 0x00, 0x0D, 0x06, 0x00, 0x00, 0xD0, 0x04, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x7C, 0x04, 0x00, 0x00,
|
||||
0x67, 0x04, 0x00, 0x00, 0x0E, 0x06, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x7E, 0x04, 0x00, 0x00, 0x7C, 0x04, 0x00, 0x00,
|
||||
0xC5, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x80, 0x04, 0x00, 0x00, 0x7E, 0x04, 0x00, 0x00, 0xEC, 0x05, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0F, 0x06, 0x00, 0x00,
|
||||
0xB0, 0x04, 0x00, 0x00, 0xBB, 0x04, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x10, 0x06, 0x00, 0x00, 0x0F, 0x06, 0x00, 0x00,
|
||||
0xDC, 0x04, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x11, 0x06, 0x00, 0x00, 0x10, 0x06, 0x00, 0x00, 0xD1, 0x04, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x8F, 0x04, 0x00, 0x00,
|
||||
0x67, 0x04, 0x00, 0x00, 0x11, 0x06, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x91, 0x04, 0x00, 0x00, 0x8F, 0x04, 0x00, 0x00,
|
||||
0xC6, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x93, 0x04, 0x00, 0x00, 0x91, 0x04, 0x00, 0x00, 0xEC, 0x05, 0x00, 0x00,
|
||||
0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0x06, 0x00, 0x00,
|
||||
0xB1, 0x04, 0x00, 0x00, 0xBC, 0x04, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x13, 0x06, 0x00, 0x00, 0x12, 0x06, 0x00, 0x00,
|
||||
0xDD, 0x04, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x14, 0x06, 0x00, 0x00, 0x13, 0x06, 0x00, 0x00, 0xD2, 0x04, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0xA2, 0x04, 0x00, 0x00,
|
||||
0x67, 0x04, 0x00, 0x00, 0x14, 0x06, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0xA4, 0x04, 0x00, 0x00, 0xA2, 0x04, 0x00, 0x00,
|
||||
0xC7, 0x04, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0xA6, 0x04, 0x00, 0x00, 0xA4, 0x04, 0x00, 0x00, 0xEC, 0x05, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xAF, 0x02, 0x00, 0x00, 0xB0, 0x02, 0x00, 0x00,
|
||||
0xA5, 0x02, 0x00, 0x00, 0xB1, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0xB0, 0x02, 0x00, 0x00, 0x80, 0x04, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00,
|
||||
0xAF, 0x02, 0x00, 0x00, 0xB2, 0x02, 0x00, 0x00, 0xA5, 0x02, 0x00, 0x00,
|
||||
0xB5, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00, 0xB2, 0x02, 0x00, 0x00,
|
||||
0x93, 0x04, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0xAF, 0x02, 0x00, 0x00,
|
||||
0xB4, 0x02, 0x00, 0x00, 0xA5, 0x02, 0x00, 0x00, 0xB9, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x00, 0x03, 0x00, 0xB4, 0x02, 0x00, 0x00, 0xA6, 0x04, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0xAF, 0x02, 0x00, 0x00, 0xB6, 0x02, 0x00, 0x00,
|
||||
0xA5, 0x02, 0x00, 0x00, 0xB5, 0x02, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0xB6, 0x02, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00, 0xFD, 0x00, 0x01, 0x00,
|
||||
0x38, 0x00, 0x01, 0x00,
|
||||
};
|
||||
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_frag.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_frag.spv
generated
Normal file
Binary file not shown.
207
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_frag.txt
generated
Normal file
207
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_ffx_fsr_rcas_frag.txt
generated
Normal file
@@ -0,0 +1,207 @@
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos Glslang Reference Front End; 10
|
||||
; Bound: 1557
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
%1 = OpExtInstImport "GLSL.std.450"
|
||||
OpMemoryModel Logical GLSL450
|
||||
OpEntryPoint Fragment %main "main" %gl_FragCoord %xe_frag_color
|
||||
OpExecutionMode %main OriginUpperLeft
|
||||
OpSource GLSL 420
|
||||
OpSourceExtension "GL_GOOGLE_cpp_style_line_directive"
|
||||
OpSourceExtension "GL_GOOGLE_include_directive"
|
||||
OpName %main "main"
|
||||
OpName %xe_texture "xe_texture"
|
||||
OpName %gl_FragCoord "gl_FragCoord"
|
||||
OpName %XeFsrRcasConstants "XeFsrRcasConstants"
|
||||
OpMemberName %XeFsrRcasConstants 0 "xe_fsr_rcas_output_offset"
|
||||
OpMemberName %XeFsrRcasConstants 1 "xe_fsr_rcas_sharpness_post_setup"
|
||||
OpName %_ ""
|
||||
OpName %xe_frag_color "xe_frag_color"
|
||||
OpDecorate %xe_texture DescriptorSet 0
|
||||
OpDecorate %xe_texture Binding 0
|
||||
OpDecorate %gl_FragCoord BuiltIn FragCoord
|
||||
OpMemberDecorate %XeFsrRcasConstants 0 Offset 16
|
||||
OpMemberDecorate %XeFsrRcasConstants 1 Offset 24
|
||||
OpDecorate %XeFsrRcasConstants Block
|
||||
OpDecorate %xe_frag_color Location 0
|
||||
%void = OpTypeVoid
|
||||
%3 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v4float = OpTypeVector %float 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_0 = OpConstant %float 0
|
||||
%uint_2129764351 = OpConstant %uint 2129764351
|
||||
%float_2 = OpConstant %float 2
|
||||
%120 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%121 = OpTypeSampledImage %120
|
||||
%_ptr_UniformConstant_121 = OpTypePointer UniformConstant %121
|
||||
%xe_texture = OpVariable %_ptr_UniformConstant_121 UniformConstant
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_n1 = OpConstant %int -1
|
||||
%144 = OpConstantComposite %v2int %int_0 %int_n1
|
||||
%151 = OpConstantComposite %v2int %int_n1 %int_0
|
||||
%int_1 = OpConstant %int 1
|
||||
%164 = OpConstantComposite %v2int %int_1 %int_0
|
||||
%171 = OpConstantComposite %v2int %int_0 %int_1
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%float_0_25 = OpConstant %float 0.25
|
||||
%v2float = OpTypeVector %float 2
|
||||
%float_n4 = OpConstant %float -4
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_n0_1875 = OpConstant %float -0.1875
|
||||
%_ptr_Input_v4float = OpTypePointer Input %v4float
|
||||
%gl_FragCoord = OpVariable %_ptr_Input_v4float Input
|
||||
%XeFsrRcasConstants = OpTypeStruct %v2int %float
|
||||
%_ptr_PushConstant_XeFsrRcasConstants = OpTypePointer PushConstant %XeFsrRcasConstants
|
||||
%_ = OpVariable %_ptr_PushConstant_XeFsrRcasConstants PushConstant
|
||||
%_ptr_PushConstant_v2int = OpTypePointer PushConstant %v2int
|
||||
%_ptr_PushConstant_float = OpTypePointer PushConstant %float
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
%xe_frag_color = OpVariable %_ptr_Output_v4float Output
|
||||
%_ptr_Output_float = OpTypePointer Output %float
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%main = OpFunction %void None %3
|
||||
%5 = OpLabel
|
||||
%655 = OpLoad %v4float %gl_FragCoord
|
||||
%656 = OpVectorShuffle %v2float %655 %655 0 1
|
||||
%657 = OpConvertFToS %v2int %656
|
||||
%662 = OpAccessChain %_ptr_PushConstant_v2int %_ %int_0
|
||||
%663 = OpLoad %v2int %662
|
||||
%664 = OpISub %v2int %657 %663
|
||||
%665 = OpBitcast %v2uint %664
|
||||
%668 = OpAccessChain %_ptr_PushConstant_float %_ %int_1
|
||||
%669 = OpLoad %float %668
|
||||
%670 = OpBitcast %uint %669
|
||||
%830 = OpBitcast %v2int %665
|
||||
%832 = OpIAdd %v2int %830 %144
|
||||
%1194 = OpLoad %121 %xe_texture
|
||||
%1196 = OpImage %120 %1194
|
||||
%1197 = OpImageFetch %v4float %1196 %832 Lod %int_0
|
||||
%1199 = OpCompositeExtract %float %1197 0
|
||||
%1200 = OpCompositeExtract %float %1197 1
|
||||
%1201 = OpCompositeExtract %float %1197 2
|
||||
%836 = OpIAdd %v2int %830 %151
|
||||
%1207 = OpImage %120 %1194
|
||||
%1208 = OpImageFetch %v4float %1207 %836 Lod %int_0
|
||||
%1210 = OpCompositeExtract %float %1208 0
|
||||
%1211 = OpCompositeExtract %float %1208 1
|
||||
%1212 = OpCompositeExtract %float %1208 2
|
||||
%1218 = OpImage %120 %1194
|
||||
%1219 = OpImageFetch %v4float %1218 %830 Lod %int_0
|
||||
%1221 = OpCompositeExtract %float %1219 0
|
||||
%1222 = OpCompositeExtract %float %1219 1
|
||||
%1223 = OpCompositeExtract %float %1219 2
|
||||
%843 = OpIAdd %v2int %830 %164
|
||||
%1229 = OpImage %120 %1194
|
||||
%1230 = OpImageFetch %v4float %1229 %843 Lod %int_0
|
||||
%1232 = OpCompositeExtract %float %1230 0
|
||||
%1233 = OpCompositeExtract %float %1230 1
|
||||
%1234 = OpCompositeExtract %float %1230 2
|
||||
%847 = OpIAdd %v2int %830 %171
|
||||
%1240 = OpImage %120 %1194
|
||||
%1241 = OpImageFetch %v4float %1240 %847 Lod %int_0
|
||||
%1243 = OpCompositeExtract %float %1241 0
|
||||
%1244 = OpCompositeExtract %float %1241 1
|
||||
%1245 = OpCompositeExtract %float %1241 2
|
||||
%1371 = OpExtInst %float %1 FMin %1210 %1232
|
||||
%1372 = OpExtInst %float %1 FMin %1199 %1371
|
||||
%1007 = OpExtInst %float %1 FMin %1372 %1243
|
||||
%1378 = OpExtInst %float %1 FMin %1211 %1233
|
||||
%1379 = OpExtInst %float %1 FMin %1200 %1378
|
||||
%1013 = OpExtInst %float %1 FMin %1379 %1244
|
||||
%1385 = OpExtInst %float %1 FMin %1212 %1234
|
||||
%1386 = OpExtInst %float %1 FMin %1201 %1385
|
||||
%1019 = OpExtInst %float %1 FMin %1386 %1245
|
||||
%1392 = OpExtInst %float %1 FMax %1210 %1232
|
||||
%1393 = OpExtInst %float %1 FMax %1199 %1392
|
||||
%1025 = OpExtInst %float %1 FMax %1393 %1243
|
||||
%1399 = OpExtInst %float %1 FMax %1211 %1233
|
||||
%1400 = OpExtInst %float %1 FMax %1200 %1399
|
||||
%1031 = OpExtInst %float %1 FMax %1400 %1244
|
||||
%1406 = OpExtInst %float %1 FMax %1212 %1234
|
||||
%1407 = OpExtInst %float %1 FMax %1201 %1406
|
||||
%1037 = OpExtInst %float %1 FMax %1407 %1245
|
||||
%1040 = OpExtInst %float %1 FMin %1007 %1221
|
||||
%1416 = OpFDiv %float %float_0_25 %1025
|
||||
%1045 = OpFMul %float %1040 %1416
|
||||
%1048 = OpExtInst %float %1 FMin %1013 %1222
|
||||
%1428 = OpFDiv %float %float_0_25 %1031
|
||||
%1053 = OpFMul %float %1048 %1428
|
||||
%1056 = OpExtInst %float %1 FMin %1019 %1223
|
||||
%1440 = OpFDiv %float %float_0_25 %1037
|
||||
%1061 = OpFMul %float %1056 %1440
|
||||
%1066 = OpExtInst %float %1 FMax %1025 %1221
|
||||
%1067 = OpFSub %float %float_1 %1066
|
||||
%1070 = OpFMul %float %float_4 %1007
|
||||
%1073 = OpFAdd %float %1070 %float_n4
|
||||
%1452 = OpFDiv %float %float_1 %1073
|
||||
%1075 = OpFMul %float %1067 %1452
|
||||
%1080 = OpExtInst %float %1 FMax %1031 %1222
|
||||
%1081 = OpFSub %float %float_1 %1080
|
||||
%1084 = OpFMul %float %float_4 %1013
|
||||
%1087 = OpFAdd %float %1084 %float_n4
|
||||
%1464 = OpFDiv %float %float_1 %1087
|
||||
%1089 = OpFMul %float %1081 %1464
|
||||
%1094 = OpExtInst %float %1 FMax %1037 %1223
|
||||
%1095 = OpFSub %float %float_1 %1094
|
||||
%1098 = OpFMul %float %float_4 %1019
|
||||
%1101 = OpFAdd %float %1098 %float_n4
|
||||
%1476 = OpFDiv %float %float_1 %1101
|
||||
%1103 = OpFMul %float %1095 %1476
|
||||
%1105 = OpFNegate %float %1045
|
||||
%1107 = OpExtInst %float %1 FMax %1105 %1075
|
||||
%1109 = OpFNegate %float %1053
|
||||
%1111 = OpExtInst %float %1 FMax %1109 %1089
|
||||
%1113 = OpFNegate %float %1061
|
||||
%1115 = OpExtInst %float %1 FMax %1113 %1103
|
||||
%1488 = OpExtInst %float %1 FMax %1111 %1115
|
||||
%1489 = OpExtInst %float %1 FMax %1107 %1488
|
||||
%1122 = OpExtInst %float %1 FMin %1489 %float_0
|
||||
%1123 = OpExtInst %float %1 FMax %float_n0_1875 %1122
|
||||
%1126 = OpBitcast %float %670
|
||||
%1127 = OpFMul %float %1123 %1126
|
||||
%1130 = OpFMul %float %float_4 %1127
|
||||
%1132 = OpFAdd %float %1130 %float_1
|
||||
%1506 = OpBitcast %uint %1132
|
||||
%1507 = OpISub %uint %uint_2129764351 %1506
|
||||
%1508 = OpBitcast %float %1507
|
||||
%1511 = OpFNegate %float %1508
|
||||
%1513 = OpFMul %float %1511 %1132
|
||||
%1515 = OpFAdd %float %1513 %float_2
|
||||
%1516 = OpFMul %float %1508 %1515
|
||||
%1548 = OpFAdd %float %1199 %1210
|
||||
%1549 = OpFAdd %float %1548 %1243
|
||||
%1550 = OpFAdd %float %1549 %1232
|
||||
%1148 = OpFMul %float %1127 %1550
|
||||
%1150 = OpFAdd %float %1148 %1221
|
||||
%1152 = OpFMul %float %1150 %1516
|
||||
%1551 = OpFAdd %float %1200 %1211
|
||||
%1552 = OpFAdd %float %1551 %1244
|
||||
%1553 = OpFAdd %float %1552 %1233
|
||||
%1167 = OpFMul %float %1127 %1553
|
||||
%1169 = OpFAdd %float %1167 %1222
|
||||
%1171 = OpFMul %float %1169 %1516
|
||||
%1554 = OpFAdd %float %1201 %1212
|
||||
%1555 = OpFAdd %float %1554 %1245
|
||||
%1556 = OpFAdd %float %1555 %1234
|
||||
%1186 = OpFMul %float %1127 %1556
|
||||
%1188 = OpFAdd %float %1186 %1223
|
||||
%1190 = OpFMul %float %1188 %1516
|
||||
%688 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_0
|
||||
OpStore %688 %1152
|
||||
%690 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_1
|
||||
OpStore %690 %1171
|
||||
%692 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_2
|
||||
OpStore %692 %1190
|
||||
%694 = OpAccessChain %_ptr_Output_float %xe_frag_color %uint_3
|
||||
OpStore %694 %float_1
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
109
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_triangle_strip_rect_vert.h
generated
Normal file
109
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_triangle_strip_rect_vert.h
generated
Normal file
@@ -0,0 +1,109 @@
|
||||
// generated from `xb genspirv`
|
||||
// source: guest_output_triangle_strip_rect.vert
|
||||
const uint8_t guest_output_triangle_strip_rect_vert[] = {
|
||||
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x0A, 0x00, 0x08, 0x00,
|
||||
0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x47, 0x4C, 0x53, 0x4C, 0x2E, 0x73, 0x74, 0x64, 0x2E, 0x34, 0x35, 0x30,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x36, 0x01, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00,
|
||||
0x04, 0x00, 0x00, 0x00, 0x6D, 0x61, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00, 0x67, 0x6C, 0x5F, 0x50,
|
||||
0x65, 0x72, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x00, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x67, 0x6C, 0x5F, 0x50, 0x6F, 0x73, 0x69, 0x74, 0x69, 0x6F, 0x6E, 0x00,
|
||||
0x06, 0x00, 0x07, 0x00, 0x08, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x67, 0x6C, 0x5F, 0x50, 0x6F, 0x69, 0x6E, 0x74, 0x53, 0x69, 0x7A, 0x65,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x00, 0x0A, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x0A, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x58, 0x65, 0x54, 0x72, 0x69, 0x61, 0x6E, 0x67, 0x6C, 0x65, 0x53, 0x74,
|
||||
0x72, 0x69, 0x70, 0x52, 0x65, 0x63, 0x74, 0x43, 0x6F, 0x6E, 0x73, 0x74,
|
||||
0x61, 0x6E, 0x74, 0x73, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0B, 0x00,
|
||||
0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x74,
|
||||
0x72, 0x69, 0x61, 0x6E, 0x67, 0x6C, 0x65, 0x5F, 0x73, 0x74, 0x72, 0x69,
|
||||
0x70, 0x5F, 0x72, 0x65, 0x63, 0x74, 0x5F, 0x6F, 0x66, 0x66, 0x73, 0x65,
|
||||
0x74, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0A, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x74, 0x72, 0x69, 0x61, 0x6E,
|
||||
0x67, 0x6C, 0x65, 0x5F, 0x73, 0x74, 0x72, 0x69, 0x70, 0x5F, 0x72, 0x65,
|
||||
0x63, 0x74, 0x5F, 0x73, 0x69, 0x7A, 0x65, 0x00, 0x05, 0x00, 0x03, 0x00,
|
||||
0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
|
||||
0x15, 0x00, 0x00, 0x00, 0x67, 0x6C, 0x5F, 0x56, 0x65, 0x72, 0x74, 0x65,
|
||||
0x78, 0x49, 0x6E, 0x64, 0x65, 0x78, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
|
||||
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0x08, 0x00, 0x00, 0x00,
|
||||
0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x03, 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
|
||||
0x48, 0x00, 0x05, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
|
||||
0x0E, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
|
||||
0x08, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00, 0x0E, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00,
|
||||
0x0B, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x04, 0x00,
|
||||
0x08, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x08, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
|
||||
0x0B, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x0D, 0x00, 0x00, 0x00,
|
||||
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x04, 0x00,
|
||||
0x0E, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
|
||||
0x0E, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x0F, 0x00, 0x00, 0x00,
|
||||
0x10, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
|
||||
0x11, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00,
|
||||
0x20, 0x00, 0x04, 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x0B, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x04, 0x00, 0x14, 0x00, 0x00, 0x00,
|
||||
0x15, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
|
||||
0x17, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x17, 0x00, 0x04, 0x00, 0x19, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x17, 0x00, 0x00, 0x00,
|
||||
0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x17, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x19, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00,
|
||||
0x1B, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00,
|
||||
0x0B, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
||||
0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3F, 0x20, 0x00, 0x04, 0x00,
|
||||
0x2C, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
|
||||
0x2C, 0x00, 0x05, 0x00, 0x19, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00,
|
||||
0x1C, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
|
||||
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x03, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
|
||||
0x10, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x0D, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
|
||||
0x3D, 0x00, 0x04, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
|
||||
0x15, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x04, 0x00, 0x17, 0x00, 0x00, 0x00,
|
||||
0x18, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, 0x50, 0x00, 0x05, 0x00,
|
||||
0x19, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
|
||||
0x18, 0x00, 0x00, 0x00, 0xC2, 0x00, 0x05, 0x00, 0x19, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00,
|
||||
0xC7, 0x00, 0x05, 0x00, 0x19, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
|
||||
0x1E, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00, 0x70, 0x00, 0x04, 0x00,
|
||||
0x0D, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
|
||||
0x10, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x04, 0x00,
|
||||
0x0D, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
|
||||
0x85, 0x00, 0x05, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
|
||||
0x21, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
|
||||
0x0D, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
|
||||
0x25, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00,
|
||||
0x29, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x51, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00,
|
||||
0x26, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x50, 0x00, 0x07, 0x00,
|
||||
0x07, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
|
||||
0x2A, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
|
||||
0x41, 0x00, 0x05, 0x00, 0x2C, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x00,
|
||||
0x0A, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0x00,
|
||||
0x2D, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00, 0xFD, 0x00, 0x01, 0x00,
|
||||
0x38, 0x00, 0x01, 0x00,
|
||||
};
|
||||
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_triangle_strip_rect_vert.spv
generated
Normal file
BIN
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_triangle_strip_rect_vert.spv
generated
Normal file
Binary file not shown.
74
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_triangle_strip_rect_vert.txt
generated
Normal file
74
src/xenia/ui/shaders/bytecode/vulkan_spirv/guest_output_triangle_strip_rect_vert.txt
generated
Normal file
@@ -0,0 +1,74 @@
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos Glslang Reference Front End; 10
|
||||
; Bound: 47
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
%1 = OpExtInstImport "GLSL.std.450"
|
||||
OpMemoryModel Logical GLSL450
|
||||
OpEntryPoint Vertex %main "main" %_ %gl_VertexIndex
|
||||
OpSource ESSL 310
|
||||
OpName %main "main"
|
||||
OpName %gl_PerVertex "gl_PerVertex"
|
||||
OpMemberName %gl_PerVertex 0 "gl_Position"
|
||||
OpMemberName %gl_PerVertex 1 "gl_PointSize"
|
||||
OpName %_ ""
|
||||
OpName %XeTriangleStripRectConstants "XeTriangleStripRectConstants"
|
||||
OpMemberName %XeTriangleStripRectConstants 0 "xe_triangle_strip_rect_offset"
|
||||
OpMemberName %XeTriangleStripRectConstants 1 "xe_triangle_strip_rect_size"
|
||||
OpName %__0 ""
|
||||
OpName %gl_VertexIndex "gl_VertexIndex"
|
||||
OpMemberDecorate %gl_PerVertex 0 BuiltIn Position
|
||||
OpMemberDecorate %gl_PerVertex 1 BuiltIn PointSize
|
||||
OpDecorate %gl_PerVertex Block
|
||||
OpMemberDecorate %XeTriangleStripRectConstants 0 Offset 0
|
||||
OpMemberDecorate %XeTriangleStripRectConstants 1 Offset 8
|
||||
OpDecorate %XeTriangleStripRectConstants Block
|
||||
OpDecorate %gl_VertexIndex BuiltIn VertexIndex
|
||||
%void = OpTypeVoid
|
||||
%3 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%gl_PerVertex = OpTypeStruct %v4float %float
|
||||
%_ptr_Output_gl_PerVertex = OpTypePointer Output %gl_PerVertex
|
||||
%_ = OpVariable %_ptr_Output_gl_PerVertex Output
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%v2float = OpTypeVector %float 2
|
||||
%XeTriangleStripRectConstants = OpTypeStruct %v2float %v2float
|
||||
%_ptr_PushConstant_XeTriangleStripRectConstants = OpTypePointer PushConstant %XeTriangleStripRectConstants
|
||||
%__0 = OpVariable %_ptr_PushConstant_XeTriangleStripRectConstants PushConstant
|
||||
%_ptr_PushConstant_v2float = OpTypePointer PushConstant %v2float
|
||||
%_ptr_Input_int = OpTypePointer Input %int
|
||||
%gl_VertexIndex = OpVariable %_ptr_Input_int Input
|
||||
%uint = OpTypeInt 32 0
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%29 = OpConstantComposite %v2uint %uint_0 %uint_1
|
||||
%int_1 = OpConstant %int 1
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
%46 = OpConstantComposite %v2uint %uint_1 %uint_1
|
||||
%main = OpFunction %void None %3
|
||||
%5 = OpLabel
|
||||
%18 = OpAccessChain %_ptr_PushConstant_v2float %__0 %int_0
|
||||
%19 = OpLoad %v2float %18
|
||||
%22 = OpLoad %int %gl_VertexIndex
|
||||
%24 = OpBitcast %uint %22
|
||||
%26 = OpCompositeConstruct %v2uint %24 %24
|
||||
%30 = OpShiftRightLogical %v2uint %26 %29
|
||||
%32 = OpBitwiseAnd %v2uint %30 %46
|
||||
%33 = OpConvertUToF %v2float %32
|
||||
%35 = OpAccessChain %_ptr_PushConstant_v2float %__0 %int_1
|
||||
%36 = OpLoad %v2float %35
|
||||
%37 = OpFMul %v2float %33 %36
|
||||
%38 = OpFAdd %v2float %19 %37
|
||||
%41 = OpCompositeExtract %float %38 0
|
||||
%42 = OpCompositeExtract %float %38 1
|
||||
%43 = OpCompositeConstruct %v4float %41 %42 %float_0 %float_1
|
||||
%45 = OpAccessChain %_ptr_Output_v4float %_ %int_0
|
||||
OpStore %45 %43
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
@@ -32,9 +32,10 @@ const uint8_t immediate_vert[] = {
|
||||
0x74, 0x74, 0x72, 0x5F, 0x70, 0x6F, 0x73, 0x69, 0x74, 0x69, 0x6F, 0x6E,
|
||||
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0x1A, 0x00, 0x00, 0x00,
|
||||
0x58, 0x65, 0x50, 0x75, 0x73, 0x68, 0x43, 0x6F, 0x6E, 0x73, 0x74, 0x61,
|
||||
0x6E, 0x74, 0x73, 0x00, 0x06, 0x00, 0x08, 0x00, 0x1A, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x76, 0x69, 0x65, 0x77, 0x70, 0x6F, 0x72, 0x74,
|
||||
0x5F, 0x73, 0x69, 0x7A, 0x65, 0x5F, 0x69, 0x6E, 0x76, 0x00, 0x00, 0x00,
|
||||
0x6E, 0x74, 0x73, 0x00, 0x06, 0x00, 0x0B, 0x00, 0x1A, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x78, 0x65, 0x5F, 0x63, 0x6F, 0x6F, 0x72, 0x64,
|
||||
0x69, 0x6E, 0x61, 0x74, 0x65, 0x5F, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5F,
|
||||
0x73, 0x69, 0x7A, 0x65, 0x5F, 0x69, 0x6E, 0x76, 0x00, 0x00, 0x00, 0x00,
|
||||
0x05, 0x00, 0x03, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x47, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x0B, 0x00, 0x00, 0x00,
|
||||
|
||||
Binary file not shown.
@@ -19,7 +19,7 @@
|
||||
OpName %_ ""
|
||||
OpName %xe_attr_position "xe_attr_position"
|
||||
OpName %XePushConstants "XePushConstants"
|
||||
OpMemberName %XePushConstants 0 "viewport_size_inv"
|
||||
OpMemberName %XePushConstants 0 "xe_coordinate_space_size_inv"
|
||||
OpName %__0 ""
|
||||
OpDecorate %xe_var_texcoord Location 0
|
||||
OpDecorate %xe_attr_texcoord Location 1
|
||||
|
||||
34
src/xenia/ui/shaders/dither_8bpc.xesli
Normal file
34
src/xenia/ui/shaders/dither_8bpc.xesli
Normal file
@@ -0,0 +1,34 @@
|
||||
#ifndef XENIA_UI_SHADERS_DITHER_8BPC_XESLI_
|
||||
#define XENIA_UI_SHADERS_DITHER_8BPC_XESLI_
|
||||
|
||||
#include "xesl.xesli"
|
||||
|
||||
#include "noise.xesli"
|
||||
|
||||
xesl_static const float xe_dither_8bpc_noise[] = {
|
||||
// The conversion to 8bpc in the fixed-function output-merger is done as
|
||||
// floor(saturate(color) * 255.0 + 0.5). This dithering function effectively
|
||||
// replaces that 0.5 offset, done for rounding to the nearest, with the noise.
|
||||
// To do that, first, 0.5/255 needs to be subtracted from the color, and
|
||||
// then the noise value `[0, 255/256] / 255` from xe_dither_8bpc_noise needs
|
||||
// to be added. However, due to rounding (because division by 255.0 is
|
||||
// inexact), subtracting 0.5/255 from exact 8-bit integer color values
|
||||
// (including, for instance, 1.0, or 255/255) may result in the result being
|
||||
// smaller than the original exact 8-bit value where the noise value is 0. So,
|
||||
// remapping the noise to the `[0.5/256, 255.5/256] / 255` range. Another way
|
||||
// of preventing rounding issues is doing it manually and returning only exact
|
||||
// integer 8-bit color values divided by 255, but that would assume that the
|
||||
// render target is specifically 8bpc, so it's better to avoid that in case
|
||||
// the window system, for instance, provides a 10bpc render target (for which
|
||||
// dithering is still done here for more consistency between displays, but
|
||||
// some addition precision would still be desirable).
|
||||
XeBlueNoise16x16Values0Until256(1.0 / 256.0 / 255.0,
|
||||
(-0.5 + 0.5 / 256.0) / 255.0)
|
||||
};
|
||||
|
||||
float XeDitherOffset8bpc(xesl_uint2 pixel_coord) {
|
||||
pixel_coord &= 15u;
|
||||
return xe_dither_8bpc_noise[pixel_coord.y * 16u + pixel_coord.x];
|
||||
}
|
||||
|
||||
#endif // XENIA_UI_SHADERS_DITHER_8BPC_XESLI_
|
||||
3
src/xenia/ui/shaders/guest_output_bilinear.frag
Normal file
3
src/xenia/ui/shaders/guest_output_bilinear.frag
Normal file
@@ -0,0 +1,3 @@
|
||||
#version 420
|
||||
#extension GL_GOOGLE_include_directive : require
|
||||
#include "guest_output_bilinear.glsli"
|
||||
38
src/xenia/ui/shaders/guest_output_bilinear.glsli
Normal file
38
src/xenia/ui/shaders/guest_output_bilinear.glsli
Normal file
@@ -0,0 +1,38 @@
|
||||
// At least #version 420.
|
||||
|
||||
#if XE_GUEST_OUTPUT_DITHER
|
||||
#include "dither_8bpc.xesli"
|
||||
#endif // XE_GUEST_OUTPUT_DITHER
|
||||
|
||||
layout(push_constant) uniform XeBilinearConstants {
|
||||
// 16 occupied by the vertex shader.
|
||||
layout(offset = 16) ivec2 xe_bilinear_output_offset;
|
||||
layout(offset = 24) vec2 xe_bilinear_output_size_inv;
|
||||
};
|
||||
|
||||
layout(set = 0, binding = 0) uniform sampler2D xe_texture;
|
||||
|
||||
layout(location = 0) out vec4 xe_frag_color;
|
||||
|
||||
void main() {
|
||||
uvec2 pixel_coord = uvec2(ivec2(gl_FragCoord.xy) - xe_bilinear_output_offset);
|
||||
// + 0.5 so the origin is at the pixel center, and at 1:1 the original pixel
|
||||
// is taken.
|
||||
// Interpolating the four colors in the perceptual space because doing it in
|
||||
// linear space causes, in particular, bright text on a dark background to
|
||||
// become too thick, and aliasing of bright parts on top of dark areas to be
|
||||
// too apparent (4D5307E6 HUD, for example, mainly the edges of the
|
||||
// multiplayer score bars).
|
||||
xe_frag_color.rgb =
|
||||
textureLod(xe_texture,
|
||||
(vec2(pixel_coord) + 0.5) * xe_bilinear_output_size_inv,
|
||||
0.0).rgb;
|
||||
#if XE_GUEST_OUTPUT_DITHER
|
||||
// Clamping because on Vulkan, the surface may specify any format, including
|
||||
// floating-point.
|
||||
xe_frag_color.rgb =
|
||||
clamp(xe_frag_color.rgb + XeDitherOffset8bpc(pixel_coord),
|
||||
vec3(0.0, 0.0, 0.0), vec3(1.0, 1.0, 1.0));
|
||||
#endif // XE_GUEST_OUTPUT_DITHER
|
||||
xe_frag_color.a = 1.0;
|
||||
}
|
||||
31
src/xenia/ui/shaders/guest_output_bilinear.hlsli
Normal file
31
src/xenia/ui/shaders/guest_output_bilinear.hlsli
Normal file
@@ -0,0 +1,31 @@
|
||||
#if XE_GUEST_OUTPUT_DITHER
|
||||
#include "dither_8bpc.xesli"
|
||||
#endif // XE_GUEST_OUTPUT_DITHER
|
||||
|
||||
cbuffer XeBilinearConstants : register(b0) {
|
||||
int2 xe_bilinear_output_offset;
|
||||
float2 xe_bilinear_output_size_inv;
|
||||
};
|
||||
|
||||
Texture2D<float3> xe_texture : register(t0);
|
||||
SamplerState xe_sampler_linear_clamp : register(s0);
|
||||
|
||||
float4 main(float4 xe_position : SV_Position) : SV_Target {
|
||||
uint2 pixel_coord = uint2(int2(xe_position.xy) - xe_bilinear_output_offset);
|
||||
// + 0.5 so the origin is at the pixel center, and at 1:1 the original pixel
|
||||
// is taken.
|
||||
// Interpolating the four colors in the perceptual space because doing it in
|
||||
// linear space causes, in particular, bright text on a dark background to
|
||||
// become too thick, and aliasing of bright parts on top of dark areas to be
|
||||
// too apparent (4D5307E6 HUD, for example, mainly the edges of the
|
||||
// multiplayer score bars).
|
||||
float3 color = xe_texture.SampleLevel(
|
||||
xe_sampler_linear_clamp,
|
||||
(float2(pixel_coord) + 0.5f) * xe_bilinear_output_size_inv,
|
||||
0.0f);
|
||||
#if XE_GUEST_OUTPUT_DITHER
|
||||
// Not clamping because a normalized format is explicitly requested on DXGI.
|
||||
color += XeDitherOffset8bpc(pixel_coord);
|
||||
#endif // XE_GUEST_OUTPUT_DITHER
|
||||
return float4(color, 1.0f);
|
||||
}
|
||||
1
src/xenia/ui/shaders/guest_output_bilinear.ps.hlsl
Normal file
1
src/xenia/ui/shaders/guest_output_bilinear.ps.hlsl
Normal file
@@ -0,0 +1 @@
|
||||
#include "guest_output_bilinear.hlsli"
|
||||
4
src/xenia/ui/shaders/guest_output_bilinear_dither.frag
Normal file
4
src/xenia/ui/shaders/guest_output_bilinear_dither.frag
Normal file
@@ -0,0 +1,4 @@
|
||||
#version 420
|
||||
#extension GL_GOOGLE_include_directive : require
|
||||
#define XE_GUEST_OUTPUT_DITHER 1
|
||||
#include "guest_output_bilinear.glsli"
|
||||
@@ -0,0 +1,2 @@
|
||||
#define XE_GUEST_OUTPUT_DITHER 1
|
||||
#include "guest_output_bilinear.hlsli"
|
||||
3
src/xenia/ui/shaders/guest_output_ffx_cas_resample.frag
Normal file
3
src/xenia/ui/shaders/guest_output_ffx_cas_resample.frag
Normal file
@@ -0,0 +1,3 @@
|
||||
#version 420
|
||||
#extension GL_GOOGLE_include_directive : require
|
||||
#include "guest_output_ffx_cas_resample.glsli"
|
||||
57
src/xenia/ui/shaders/guest_output_ffx_cas_resample.glsli
Normal file
57
src/xenia/ui/shaders/guest_output_ffx_cas_resample.glsli
Normal file
@@ -0,0 +1,57 @@
|
||||
// At least #version 420.
|
||||
|
||||
#if XE_GUEST_OUTPUT_DITHER
|
||||
#include "dither_8bpc.xesli"
|
||||
#endif // XE_GUEST_OUTPUT_DITHER
|
||||
|
||||
layout(push_constant) uniform XeCasResampleConstants {
|
||||
// 16 occupied by the vertex shader.
|
||||
layout(offset = 16) ivec2 xe_cas_output_offset;
|
||||
// CasSetup const0.xy.
|
||||
layout(offset = 24) vec2 xe_cas_input_output_size_ratio;
|
||||
// CasSetup const1.x.
|
||||
layout(offset = 32) float xe_cas_sharpness_post_setup;
|
||||
};
|
||||
|
||||
layout(set = 0, binding = 0) uniform sampler2D xe_texture;
|
||||
|
||||
layout(location = 0) out vec4 xe_frag_color;
|
||||
|
||||
#define A_GPU 1
|
||||
#define A_GLSL 1
|
||||
#include "../../../../third_party/FidelityFX-CAS/ffx-cas/ffx_a.h"
|
||||
vec3 CasLoad(ivec2 p) {
|
||||
return texelFetch(xe_texture, p, 0).rgb;
|
||||
}
|
||||
void CasInput(inout float r, inout float g, inout float b) {
|
||||
// Linear conversion approximation as recommended in the CAS presentation.
|
||||
r *= r;
|
||||
g *= g;
|
||||
b *= b;
|
||||
}
|
||||
#include "../../../../third_party/FidelityFX-CAS/ffx-cas/ffx_cas.h"
|
||||
|
||||
void main() {
|
||||
uvec2 pixel_coord = uvec2(ivec2(gl_FragCoord.xy) - xe_cas_output_offset);
|
||||
// CasSetup with smaller push constant usage.
|
||||
uvec4 cas_const_0 =
|
||||
uvec4(floatBitsToUint(xe_cas_input_output_size_ratio),
|
||||
floatBitsToUint(0.5 * xe_cas_input_output_size_ratio - 0.5));
|
||||
uvec4 cas_const_1 =
|
||||
uvec4(floatBitsToUint(xe_cas_sharpness_post_setup),
|
||||
packHalf2x16(vec2(xe_cas_sharpness_post_setup, 0.0)),
|
||||
floatBitsToUint(8.0 * xe_cas_input_output_size_ratio.x), 0u);
|
||||
CasFilter(xe_frag_color.r, xe_frag_color.g, xe_frag_color.b, pixel_coord,
|
||||
cas_const_0, cas_const_1, false);
|
||||
// Linear conversion approximation as recommended in the CAS presentation.
|
||||
xe_frag_color.rgb = sqrt(xe_frag_color.rgb);
|
||||
#if XE_GUEST_OUTPUT_DITHER
|
||||
// Clamping because on Vulkan, the surface may specify any format, including
|
||||
// floating-point.
|
||||
xe_frag_color.rgb =
|
||||
clamp(xe_frag_color.rgb + XeDitherOffset8bpc(pixel_coord),
|
||||
vec3(0.0, 0.0, 0.0), vec3(1.0, 1.0, 1.0));
|
||||
#endif // XE_GUEST_OUTPUT_DITHER
|
||||
// Force alpha to 1 to make sure the surface won't be translucent.
|
||||
xe_frag_color.a = 1.0;
|
||||
}
|
||||
49
src/xenia/ui/shaders/guest_output_ffx_cas_resample.hlsli
Normal file
49
src/xenia/ui/shaders/guest_output_ffx_cas_resample.hlsli
Normal file
@@ -0,0 +1,49 @@
|
||||
#if XE_GUEST_OUTPUT_DITHER
|
||||
#include "dither_8bpc.xesli"
|
||||
#endif // XE_GUEST_OUTPUT_DITHER
|
||||
|
||||
cbuffer XeCasResampleConstants : register(b0) {
|
||||
int2 xe_cas_output_offset;
|
||||
// CasSetup const0.xy.
|
||||
float2 xe_cas_input_output_size_ratio;
|
||||
// CasSetup const1.x.
|
||||
float xe_cas_sharpness_post_setup;
|
||||
};
|
||||
|
||||
Texture2D<float3> xe_texture : register(t0);
|
||||
|
||||
#define A_GPU 1
|
||||
#define A_HLSL 1
|
||||
#include "../../../../third_party/FidelityFX-CAS/ffx-cas/ffx_a.h"
|
||||
float3 CasLoad(int2 p) {
|
||||
return xe_texture.Load(int3(p, 0)).rgb;
|
||||
}
|
||||
void CasInput(inout float r, inout float g, inout float b) {
|
||||
// Linear conversion approximation as recommended in the CAS presentation.
|
||||
r *= r;
|
||||
g *= g;
|
||||
b *= b;
|
||||
}
|
||||
#include "../../../../third_party/FidelityFX-CAS/ffx-cas/ffx_cas.h"
|
||||
|
||||
float4 main(float4 xe_position : SV_Position) : SV_Target {
|
||||
uint2 pixel_coord = uint2(int2(xe_position.xy) - xe_cas_output_offset);
|
||||
// CasSetup with smaller root signature usage.
|
||||
uint4 cas_const_0 =
|
||||
uint4(asuint(xe_cas_input_output_size_ratio),
|
||||
asuint(0.5f * xe_cas_input_output_size_ratio - 0.5f));
|
||||
uint4 cas_const_1 =
|
||||
uint4(asuint(xe_cas_sharpness_post_setup),
|
||||
f32tof16(xe_cas_sharpness_post_setup),
|
||||
asuint(8.0f * xe_cas_input_output_size_ratio.x), 0u);
|
||||
float3 cas_color;
|
||||
CasFilter(cas_color.r, cas_color.g, cas_color.b, pixel_coord, cas_const_0,
|
||||
cas_const_1, false);
|
||||
// Linear conversion approximation as recommended in the CAS presentation.
|
||||
cas_color = sqrt(cas_color);
|
||||
#if XE_GUEST_OUTPUT_DITHER
|
||||
// Not clamping because a normalized format is explicitly requested on DXGI.
|
||||
cas_color += XeDitherOffset8bpc(pixel_coord);
|
||||
#endif // XE_GUEST_OUTPUT_DITHER
|
||||
return float4(cas_color, 1.0f);
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
#include "guest_output_ffx_cas_resample.hlsli"
|
||||
@@ -0,0 +1,4 @@
|
||||
#version 420
|
||||
#extension GL_GOOGLE_include_directive : require
|
||||
#define XE_GUEST_OUTPUT_DITHER 1
|
||||
#include "guest_output_ffx_cas_resample.glsli"
|
||||
@@ -0,0 +1,2 @@
|
||||
#define XE_GUEST_OUTPUT_DITHER 1
|
||||
#include "guest_output_ffx_cas_resample.hlsli"
|
||||
3
src/xenia/ui/shaders/guest_output_ffx_cas_sharpen.frag
Normal file
3
src/xenia/ui/shaders/guest_output_ffx_cas_sharpen.frag
Normal file
@@ -0,0 +1,3 @@
|
||||
#version 420
|
||||
#extension GL_GOOGLE_include_directive : require
|
||||
#include "guest_output_ffx_cas_sharpen.glsli"
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user