mirror of
https://github.com/Dingo-Shenanigans/ReSkate.git
synced 2026-10-23 04:35:54 +02:00
The entity and pending-update pages are twice the game's own size (262,144 slots), down from four times. Every page set the game keeps is that many times its normal size whether a map uses the room or not, and the largest map load seen needs about 150,000 slots. A page is a power of two entries, found by a shift, so the steps are two, four and eight times; there is nothing between. The 434 patch lines are the same instructions as before, each with the number for a page of 0x800 entries. The render-instance pool and the spatial buckets stay at eight times, which still covers the capacity.
376 lines
23 KiB
C++
376 lines
23 KiB
C++
#pragma once
|
|
|
|
#include <array>
|
|
#include <cstddef>
|
|
#include <cstdint>
|
|
|
|
namespace dingosdk::game::build::v20260929::entity_pages {
|
|
// EntityBus TransformSpace and property-space snapshots have 128 page pointers.
|
|
// Slot 131072 formerly indexed pointer 128, overwriting snapshot bookkeeping.
|
|
// Enlarge the leaf pages without changing owners, snapshots, IDs or their ABI.
|
|
// Twice the game's 131,072 slots (eight times until 2026-10-10, four until 2026-10-11): the
|
|
// largest map load seen needed 150,152, and every page set the game keeps is this many times
|
|
// its own size, whether a map uses it or not. A page is a power of two entries, found by a
|
|
// shift, so the choices are two, four and eight times; a map that needs more than 262,144
|
|
// slots needs this put back up.
|
|
inline constexpr std::size_t page_count = 128;
|
|
inline constexpr unsigned page_shift = 11;
|
|
inline constexpr std::size_t page_entries = std::size_t{1} << page_shift;
|
|
inline constexpr std::size_t page_bytes = page_entries * sizeof(std::uint64_t);
|
|
inline constexpr std::size_t capacity = page_count * page_entries;
|
|
// The native render-instance pool keeps 512 page pointers and stable direct
|
|
// object addresses. Grow its 464-byte-record pages without changing that ABI.
|
|
inline constexpr unsigned render_instance_page_shift = 11;
|
|
inline constexpr std::size_t render_instance_page_bytes = (std::size_t{1} << render_instance_page_shift) * 0x1d0;
|
|
// (Left at eight times the game's: its pages are its own, by its own shift.)
|
|
static_assert((512u << render_instance_page_shift) >= capacity);
|
|
static_assert(render_instance_page_bytes == 0xe8000);
|
|
// The cull-ID list and this separate monotonic bounds arena must both fit the
|
|
// city. Retail config can override GridSize after Game.cfg has been processed.
|
|
// Preserve native allocation/reset ownership and any larger configured value.
|
|
inline constexpr std::size_t spatial_arena_min_bytes = 128 * 1024 * 1024;
|
|
static_assert(capacity == 262'144 && page_bytes == 16'384);
|
|
|
|
enum class Kind {
|
|
index_shift, page_bytes, page_entries, spatial_arena_bytes,
|
|
spatial_bucket_layout, spatial_bucket_stride, pending_update_pages,
|
|
render_instance_pages
|
|
};
|
|
struct Patch {
|
|
std::uintptr_t rva;
|
|
Kind kind;
|
|
std::size_t size;
|
|
std::array<std::uint8_t, 15> expected{};
|
|
std::array<std::uint8_t, 15> replacement{};
|
|
};
|
|
|
|
template<std::size_t N>
|
|
consteval Patch patch(std::uintptr_t rva, Kind kind,
|
|
const char (&before)[N], const char (&after)[N]) {
|
|
static_assert(N % 2 == 1 && N > 1 && N <= 31);
|
|
Patch result{rva, kind, (N - 1) / 2};
|
|
const auto nibble = [](char c) -> unsigned {
|
|
if (c >= '0' && c <= '9') return c - '0';
|
|
if (c >= 'a' && c <= 'f') return c - 'a' + 10;
|
|
throw "Invalid entity-page instruction contract";
|
|
};
|
|
for (std::size_t i = 0; i < result.size; ++i) {
|
|
result.expected[i] = static_cast<std::uint8_t>((nibble(before[i*2]) << 4) | nibble(before[i*2+1]));
|
|
result.replacement[i] = static_cast<std::uint8_t>((nibble(after[i*2]) << 4) | nibble(after[i*2+1]));
|
|
}
|
|
return result;
|
|
}
|
|
|
|
// Reviewed complete instructions for the supported executable. In addition to
|
|
// insertion/lookup, include iteration skips, copy-on-write and snapshot repair.
|
|
// The separate 24-byte update queues are covered by pending_updates.h.
|
|
inline constexpr Patch patches[]{
|
|
// Sized destruction, insertion, allocation and the losing CAS allocation.
|
|
// The native page-index assertion remains enabled.
|
|
patch(0x050cdf6c, Kind::render_instance_pages, "41b800a00300", "41b800800e00"),
|
|
patch(0x050e23f6, Kind::render_instance_pages, "c1eb09", "c1eb0b"),
|
|
patch(0x050e2422, Kind::render_instance_pages, "ba00a00300", "ba00800e00"),
|
|
patch(0x050e244d, Kind::render_instance_pages, "41b800a00300", "41b800800e00"),
|
|
patch(0x050e245b, Kind::render_instance_pages, "c1e309", "c1e30b"),
|
|
patch(0x0489ee29, Kind::spatial_arena_bytes, "bb00001000", "bb00000008"),
|
|
patch(0x048a5e2c, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048a5e31, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x048a5fec, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048a6015, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x048b2713, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x048b271c, Kind::index_shift, "41c1e00a", "41c1e00b"),
|
|
patch(0x048b27b6, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048b27c4, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048b292a, Kind::index_shift, "41c1ea0a", "41c1ea0b"),
|
|
patch(0x048b2935, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048b3816, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x048b3823, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x048b5112, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x048b5122, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x048b51a2, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x048b51b2, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x048b52d6, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048b52dd, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048b53cc, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048b53d3, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048b5692, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x048b56a2, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x048b57a9, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048b57b0, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048b58b6, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048b58bd, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048b7ed4, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x048b7ef5, Kind::index_shift, "41c1e00a", "41c1e00b"),
|
|
patch(0x048b8530, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048b8556, Kind::index_shift, "41c1e20a", "41c1e20b"),
|
|
patch(0x048b9879, Kind::page_entries, "81c600040000", "81c600080000"),
|
|
patch(0x048b9881, Kind::page_bytes, "488daf00200000", "488daf00400000"),
|
|
patch(0x048b99d8, Kind::page_entries, "4181c400040000", "4181c400080000"),
|
|
patch(0x048b99e4, Kind::page_bytes, "498dbe00200000", "498dbe00400000"),
|
|
patch(0x048bb417, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x048bb41f, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x048bb76a, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bb771, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bb83a, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bb841, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bb8fa, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bb901, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bb9b9, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bb9c0, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bba89, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bba90, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bbb89, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bbb90, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bbc4b, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bbc52, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bbd39, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bbd40, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bbf26, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bbf2d, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bd05e, Kind::page_bytes, "b900200000", "b900400000"),
|
|
patch(0x048bd06d, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048bd42b, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bd432, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048bd516, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048bd51d, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048c019e, Kind::page_entries, "4181c600040000", "4181c600080000"),
|
|
patch(0x048c01a7, Kind::page_bytes, "4c8da500200000", "4c8da500400000"),
|
|
patch(0x048c024e, Kind::page_entries, "4181c400040000", "4181c400080000"),
|
|
patch(0x048c025a, Kind::page_bytes, "4c8dad00200000", "4c8dad00400000"),
|
|
patch(0x048c069c, Kind::page_entries, "81c500040000", "81c500080000"),
|
|
patch(0x048c06a4, Kind::page_bytes, "4c8db600200000", "4c8db600400000"),
|
|
patch(0x048c07f8, Kind::page_entries, "4181c400040000", "4181c400080000"),
|
|
patch(0x048c0804, Kind::page_bytes, "498dbe00200000", "498dbe00400000"),
|
|
patch(0x048c3942, Kind::page_bytes, "b900200000", "b900400000"),
|
|
patch(0x048c394f, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c39bb, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x048c39c0, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x048c4fbd, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x048c4fc5, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x048c50cf, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x048c50d6, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x048c5d01, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x048c5d06, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x048c5e1c, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c5e53, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c5e8d, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c5ec7, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c5f01, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c5f3b, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c5f75, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c5faf, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x048c703c, Kind::index_shift, "c1ea0a", "c1ea0b"),
|
|
patch(0x048c7049, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04ea3670, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04ea3692, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04ea3b1d, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ea3b42, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04ea3bd0, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ea3bf8, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04ec12e3, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ec12eb, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04ec13c7, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04ec13d5, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04ec2b13, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ec2b1b, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04ec2bf7, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04ec2c05, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04ec2dc6, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ec2dce, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04ec2eb7, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04ec2ec5, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04ed56e9, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04ed56ef, Kind::index_shift, "41c1e20a", "41c1e20b"),
|
|
patch(0x04ed7296, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04ed72bb, Kind::index_shift, "41c1e20a", "41c1e20b"),
|
|
patch(0x04ed78d3, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04ed78f8, Kind::index_shift, "41c1e20a", "41c1e20b"),
|
|
patch(0x04edde6d, Kind::page_entries, "81c500040000", "81c500080000"),
|
|
patch(0x04edde78, Kind::page_bytes, "4c8dbf00200000", "4c8dbf00400000"),
|
|
patch(0x04eddff8, Kind::page_entries, "4181c400040000", "4181c400080000"),
|
|
patch(0x04ede004, Kind::page_bytes, "498dbe00200000", "498dbe00400000"),
|
|
patch(0x04edf33d, Kind::page_entries, "81c500040000", "81c500080000"),
|
|
patch(0x04edf348, Kind::page_bytes, "4c8dbf00200000", "4c8dbf00400000"),
|
|
patch(0x04edf508, Kind::page_entries, "4181c400040000", "4181c400080000"),
|
|
patch(0x04edf514, Kind::page_bytes, "498dbe00200000", "498dbe00400000"),
|
|
patch(0x04edf719, Kind::page_entries, "81c600040000", "81c600080000"),
|
|
patch(0x04edf724, Kind::page_bytes, "488daf00200000", "488daf00400000"),
|
|
patch(0x04edf888, Kind::page_entries, "4181c400040000", "4181c400080000"),
|
|
patch(0x04edf894, Kind::page_bytes, "498dbe00200000", "498dbe00400000"),
|
|
patch(0x04ee3b47, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ee3b4f, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04ee4c77, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ee4c7f, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04ee4f47, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ee4f4f, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04ee7daa, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04ee7db9, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04eeb19e, Kind::page_bytes, "b900200000", "b900400000"),
|
|
patch(0x04eeb1ad, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04eeba26, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eeba2d, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eec74e, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eec755, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eec8ac, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eec8b3, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eecd45, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x04eecd58, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04eece4d, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04eece6e, Kind::index_shift, "41c1e00a", "41c1e00b"),
|
|
patch(0x04eecf6d, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eecf74, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eed0a0, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eed0a7, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eed221, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eed228, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eed31c, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eed323, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eed468, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04eed474, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eed6a0, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eed6a7, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eed869, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eed870, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eed9f4, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eed9fb, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eee208, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x04eee21b, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04eee292, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x04eee2a5, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04eee328, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x04eee33b, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04eee3b2, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x04eee3c5, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04eee432, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x04eee445, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04eee4a2, Kind::index_shift, "41c1e80a", "41c1e80b"),
|
|
patch(0x04eee4b5, Kind::index_shift, "c1e00a", "c1e00b"),
|
|
patch(0x04eee60a, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04eee62b, Kind::index_shift, "41c1e00a", "41c1e00b"),
|
|
patch(0x04eee72f, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eee736, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eee89f, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eee8a6, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eeea0a, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eeea11, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eeecbe, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eeecc5, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eeede9, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eeedf0, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eef06f, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eef076, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eef15d, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eef164, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04eef214, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04eef21b, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04ef0113, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04ef011a, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04ef5deb, Kind::page_entries, "4181c700040000", "4181c700080000"),
|
|
patch(0x04ef5df7, Kind::page_bytes, "498db600200000", "498db600400000"),
|
|
patch(0x04ef5f89, Kind::page_entries, "4181c700040000", "4181c700080000"),
|
|
patch(0x04ef5f95, Kind::page_bytes, "498db600200000", "498db600400000"),
|
|
patch(0x04ef60ae, Kind::page_entries, "4181c500040000", "4181c500080000"),
|
|
patch(0x04ef60ba, Kind::page_bytes, "4d8dbe00200000", "4d8dbe00400000"),
|
|
patch(0x04efc57b, Kind::page_entries, "4181c700040000", "4181c700080000"),
|
|
patch(0x04efc587, Kind::page_bytes, "498db600200000", "498db600400000"),
|
|
patch(0x04efc729, Kind::page_entries, "4181c700040000", "4181c700080000"),
|
|
patch(0x04efc735, Kind::page_bytes, "498db600200000", "498db600400000"),
|
|
patch(0x04efc858, Kind::page_entries, "4181c500040000", "4181c500080000"),
|
|
patch(0x04efc864, Kind::page_bytes, "4d8dbe00200000", "4d8dbe00400000"),
|
|
patch(0x04f097dc, Kind::page_entries, "4181c600040000", "4181c600080000"),
|
|
patch(0x04f097e5, Kind::page_bytes, "4c8da500200000", "4c8da500400000"),
|
|
patch(0x04f0988f, Kind::page_entries, "4181c400040000", "4181c400080000"),
|
|
patch(0x04f0989b, Kind::page_bytes, "4c8dad00200000", "4c8dad00400000"),
|
|
patch(0x04f0b69c, Kind::page_entries, "81c500040000", "81c500080000"),
|
|
patch(0x04f0b6a7, Kind::page_bytes, "4c8db600200000", "4c8db600400000"),
|
|
patch(0x04f0b828, Kind::page_entries, "4181c400040000", "4181c400080000"),
|
|
patch(0x04f0b834, Kind::page_bytes, "498dbe00200000", "498dbe00400000"),
|
|
patch(0x04f16e2d, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f16e34, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f16ee4, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f16eeb, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f1700c, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f17013, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f172d4, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f172db, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f17618, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f1761f, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f19462, Kind::page_bytes, "b900200000", "b900400000"),
|
|
patch(0x04f1946f, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f194db, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f194e0, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f19ca2, Kind::page_bytes, "b900200000", "b900400000"),
|
|
patch(0x04f19caf, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f19d1b, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f19d20, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f19f22, Kind::page_bytes, "b900200000", "b900400000"),
|
|
patch(0x04f19f2f, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f19f9b, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f19fa0, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f1e856, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f1e863, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f1e8f0, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f1e8f8, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f1ea31, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f1ea39, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f216fd, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f2170a, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f21796, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f2179e, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f218d6, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f218de, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f21f09, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f21f16, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f21fa2, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f21faa, Kind::index_shift, "c1e20a", "c1e20b"),
|
|
patch(0x04f220e8, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f220f0, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f2b166, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f2b16b, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f2b2e4, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f2b2ec, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f2b38c, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2b3c3, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2b3fd, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2b437, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2b471, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2b4ab, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2b4e5, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2b51f, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2e6e6, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f2e6eb, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f2e877, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f2e87f, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f2e92c, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2e963, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2e99d, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2e9d7, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2ea11, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2ea4b, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2ea85, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2eabf, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2ec86, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f2ec8b, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f2ee27, Kind::index_shift, "c1e90a", "c1e90b"),
|
|
patch(0x04f2ee2f, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f2eedc, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2ef13, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2ef4d, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2ef87, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2efc1, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2effb, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2f035, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f2f06f, Kind::page_bytes, "41b800200000", "41b800400000"),
|
|
patch(0x04f34fea, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f34ff1, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f35b60, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f35b66, Kind::index_shift, "41c1e00a", "41c1e00b"),
|
|
patch(0x04f38418, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f3841f, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f38958, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f3895f, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
patch(0x04f38a78, Kind::index_shift, "c1e80a", "c1e80b"),
|
|
patch(0x04f38a7f, Kind::index_shift, "c1e10a", "c1e10b"),
|
|
};
|
|
} // namespace dingosdk::game::build::v20260929::entity_pages
|