Encode a ZREV v1 batch from typed test events.
This mirrors the parser layout in protocol/zrev_v1.ts and intentionally keeps defaults lightweight (mods/buttons/wheel/dt default to 0).
Encode a ZREV v1 batch from typed test events.
This mirrors the parser layout in protocol/zrev_v1.ts and intentionally keeps defaults lightweight (mods/buttons/wheel/dt default to 0).