Medius - Native APIMove

Move

Cursor motion and scroll

MOVE drives a relative Axis: the cursor pair (X and Y together) or the wheel, picked by a motion byte. It injects on top of the real mouse, so the PC sees the combined result, and it's fire-and-forget. The momentary inputs (buttons, keys, media) have their own verb, INJECT.

motionAxiscarriespayload
0cursor (X, Y)dx, dy (i16)5 bytes
1wheeldz (i16)3 bytes

MOVE

Relative axis injection

MOVE shifts an axis by a relative amount, not a screen position. The motion byte at offset 0 selects the axis. Opcode 0x01.

MOVE 0x01 · cursor payload 5 bytes

Fire-and-forget

PAYLOAD (cursor, motion = 0)
OffsetFieldTypeNotes
0motionu80 = cursor
1dxi16horizontal step; +x = right, little-endian
3dyi16vertical step; +y = down, little-endian
GUARANTEES
exact   net move = the sum of every delta you send
range   full i16 per axis, no clamp
signs   +x right, +y down (screen-style), +z wheel up
paced   a large move drains across frames; nothing is dropped

The box carries any remainder in its accumulator; RESET zeroes it. Library binding: move_rel.

EXAMPLE

Cursor dx = 100, dy = 0 (motion = 0):

+--------+--------+--------+--------+--------+--------+--------+--------+
| A5     | 01     | 00     | 05 00  | 00     | 64 00  | 00 00  | lo hi  |
+--------+--------+--------+--------+--------+--------+--------+--------+
| SOF    | TYPE   | SEQ    | LEN    | motion | dx     | dy     | CRC16  |
+--------+--------+--------+--------+--------+--------+--------+--------+

MOVE (wheel)

Vertical scroll

With motion = 1, MOVE scrolls the wheel by a relative amount. Same opcode, a shorter payload.

MOVE 0x01 · wheel payload 3 bytes

Fire-and-forget

PAYLOAD (wheel, motion = 1)
OffsetFieldTypeNotes
0motionu81 = wheel
1dzi16scroll steps; + = up, - = down, little-endian
EFFECT

The box adds dz into its accumulator and drains it across frames with carry, no clamp. RESET clears it. Library binding: wheel.

EXAMPLE

Wheel dz = 1, one step up (motion = 1):

+--------+--------+--------+--------+--------+--------+--------+
| A5     | 01     | 00     | 03 00  | 01     | 01 00  | lo hi  |
+--------+--------+--------+--------+--------+--------+--------+
| SOF    | TYPE   | SEQ    | LEN    | motion | dz     | CRC16  |
+--------+--------+--------+--------+--------+--------+--------+