windows/winmm

Windows WinMM declarations for joystick state queries through caller-owned JOYINFOEX records.


JOYINFOEX

JOYINFOEX combines request-side and result-side fields for joyGetPosEx.

Schema example

"windows/winmm" use
"control" use

{} () {} [
  JOYINFOEX fieldCount printStack _:;
  JOYINFOEX 0 fieldName printStack _:;
  JOYINFOEX 12 fieldName printStack _:;
] "main" exportFunction

Expected Output During Compilation

13
"dwSize"
"dwReserved2"

joyGetPosEx (uJoyID pji -- result)

Fills one caller-supplied JOYINFOEX record with the current state of the selected joystick identifier and returns one Nat32 status.


Signature examples

Printing imported names during compilation shows the exact imported signatures.

"windows/winmm" use
"control" use

{} Int32 {} [
  @joyGetPosEx printStack _:;
  0
] "main" exportFunction

Expected Output During Compilation

{uJoyID: Nat32; pji: {dwSize: Nat32; dwFlags: Nat32; dwXpos: Nat32; dwYpos: Nat32; dwZpos: Nat32; dwRpos: Nat32; dwUpos: Nat32; dwVpos: Nat32; dwButtons: Nat32; dwButtonNumber: Nat32; dwPOV: Nat32; dwReserved1: Nat32; dwReserved2: Nat32;} Ref;} Nat32 {convention: "";} codeRef

See also