feat(runtime): support class-9 and default Control budgets
Docs Deploy / Build and Deploy MkDocs (push) Successful in 35s
Docs Deploy / Build and Deploy MkDocs (push) Successful in 35s
This commit is contained in:
5 files changed
+986
-67
No files matched your search
@@ -725,6 +725,14 @@ component ID и multiplier `2.5` при копировании новых коэ
|
||||
и дополнительная строка `fx` возвращают cursor `record + 0xbf`.
|
||||
Слово CTLD `+0x18 == -1` сохраняет фабричное `+0x50` и при INTO-замене.
|
||||
|
||||
Ветвь фабрики `0x2d4b0` направляет factory tags без отдельного случая в
|
||||
конструктор `0x20800`; его vtable использует общий reader `0x21d50` в slot
|
||||
`+0x1c`. Поэтому common-field override применяется и к этой default-семье,
|
||||
включая tag `6`; Rust-тест проверяет его вместе с тегами `12` и `13`. Tags
|
||||
`1`, `17`, `26` и `30` остаются явными границами: фабрика выбирает для них
|
||||
отдельные классы, а проверки текущей реализации ещё не покрывают их полное
|
||||
setter-поведение.
|
||||
|
||||
У tag `2` slot `+0x1c` указывает на обёртку `0x29650`. Она вызывает тот же
|
||||
reader, затем сохраняет selector `1` в `+0x120`, округляет selector `0` через
|
||||
x87 `FISTP` в `+0x124` и заново обнуляет массив `+0x12c` по накопленному числу
|
||||
@@ -1061,15 +1069,25 @@ Rust переносит этот порядок, сохраняет native на
|
||||
в массиве, его обновление перечитывает уже изменённую долю после обслуживания
|
||||
категории tag 15. Этот явный вызов хранит также две выходные ставки `+0x5dc` и
|
||||
`+0x5e0`, но сам по себе ещё не запускается игровыми часами.
|
||||
Поддержаны factory callbacks `15/19` и текущие descriptor tags `15/19`
|
||||
(категории `0/1`); неизвестное устройство,
|
||||
недоступные данные provider или нулевой знаменатель останавливают весь шаг без
|
||||
частичных изменений.
|
||||
Другие категории и полный миссионный цикл пока не подтверждены. В лицензированном
|
||||
`min_l_n1.dat` рядом с тегами `19` и `15` есть также factory tags `9`, `12`,
|
||||
`13`, `21`, `25` и `26`; поэтому его полный проход пока явно отклоняется на
|
||||
первой неподдержанной категории `9`. Проверка сохраняет всю таблицу без
|
||||
изменений и не доказывает успешный бюджетный шаг на реальной миссии.
|
||||
Помимо класса `15` и генератора `19` поддержан класс `9`: он считает ставку
|
||||
через шесть собственных значений и при распределении обновляет их вместе с
|
||||
накопленными изменениями. Например, для доли provider `0.4`, интервала `0.5`,
|
||||
`B = 0.2`, коэффициентов `C0 = 0.75`, `C1 = 0.6`, `C2 = 2` и масштаба
|
||||
`1.25` исходная ставка имеет биты `0xbeae147b`; после полного выделения
|
||||
обновлённые шесть значений совпадают с native побитно.
|
||||
|
||||
Несколько фабричных классов используют общий callback: ставка равна
|
||||
`-(dt * B)`, а обновление записывает долю выделения в множитель. К этому
|
||||
семейству относятся фабричные теги `12`, `13`, `25` и `21`, а также другие
|
||||
классы, которые исходный диспетчер направляет в фабрику по умолчанию. Текущая
|
||||
категория читается из descriptor: её native map подтверждён только для тегов
|
||||
`0..=34`. Неподдержанный специализированный callback, недоступный provider или
|
||||
неподдержанное число останавливают шаг без частичных изменений. В
|
||||
лицензированном `min_l_n1.dat` предварительная проверка распознаёт текущие
|
||||
категории и выявляет неподдержанный factory tag `26`; она отклоняет бюджетный
|
||||
вызов до расчёта ставок и обновлений, сохраняя таблицу целиком. Полный
|
||||
бюджетный проход на реальной миссии и подключение к игровым часам пока не
|
||||
подтверждены.
|
||||
|
||||
Отдельный путь объекта класса `4` умножает интервал на контактный коэффициент и
|
||||
передаёт изменение строке. В проверенном примере коэффициент `1`, интервал `2`,
|
||||
|
||||
Reference in new issue
Block a user