Files
viktorиClaude Opus 4.8 ae36c3b729 RT-4D: реверс прошивки, русификация, кастомный UI, флешеры
- Полный RE стока V3.25 (Cortex-M4F) + FM100B: карта памяти, протокол, codeplug, UI-архитектура
- Русификация: свой CP1251-шрифт + патч рендера, перевод меню и надписей, ребренд Ru-4D V3.25
- Блюпринт переделки UI + C-тулчейн (clang thumbv7em), доказан инъекцией
- Готовые флешеры: WebSerial .html и Windows .exe со вшитой прошивкой
- Дамп SPI рации, стоковая прошивка, инструменты сборки

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 15:47:22 +09:00

27 строки
757 B
Python

data = open(r"C:/Users/vikto/Documents/Claude/rt-4d/radio-spi-dump.bin","rb").read()
# --- BLOB2 stride analysis ---
# Find start of each 0x80-run to measure period
starts=[]
i=0x352000; end=0x3d5000
prev=None
inrun=False
# a "record boundary" — let's autocorrelate instead on a window
seg=data[0x353000:0x3a3000]
N=len(seg)
import statistics
best=[]
for stride in range(8, 4096):
# sample-based autocorr: count byte equality at offset stride
eq=0; tot=0
step=1
for k in range(0, N-stride, 7):
if seg[k]==seg[k+stride]:
eq+=1
tot+=1
best.append((eq/tot, stride))
best.sort(reverse=True)
print("BLOB2 top strides (score,stride):")
for s,st in best[:15]:
print(f" stride={st} ({st:#x}) score={s:.3f}")