Controles e teclado
DualSense, DualSense Edge e DualShock 4 são lidos por HID, em USB e em Bluetooth. Controles compatíveis com Xbox usam XInput. O teclado é mapeado para os analógicos por um perfil do lançador.
Notas do repositório até 10 de outubro de 2026
Relatórios HID
O XInput enumera dispositivos compatíveis com Xbox. Um DualSense ligado ao PC fica invisível para ele, a menos que uma camada de tradução invente um controle Xbox virtual. O PS5PCEM abre o controle da Sony por HID e decodifica o report. Os campos são os mesmos em USB e em Bluetooth. Os deslocamentos mudam, porque o Bluetooth prefixa o payload e o DualSense coloca os gatilhos antes dos bytes dos botões.
O direcional chega como uma de oito posições de bússola, não como quatro bits independentes. As leituras são sobrepostas e nunca bloqueiam. Uma consulta esvazia a fila do driver e fica com o report mais novo. Responder com o report mais antigo atrasaria os analógicos pelo quanto o quadro tivesse ficado para trás.
Saída, motores e a barra de luz
Os reports de saída carregam os dois motores e a barra de luz. No Bluetooth, o report é deslocado e termina com uma soma de verificação que o controle confere antes de agir, então um report feito para o cabo é ignorado pelo ar. A página de entrada do lançador nomeia o controle que encontrou e pode executar um teste de um segundo que gira os dois motores e varre a barra de luz. O dispositivo é aberto em modo compartilhado e, para escrita, onde o anfitrião permite.
O controle tem precedência sobre o XInput. O XInput continua sendo o caminho para controles compatíveis com Xbox e para qualquer coisa que se apresente como um deles. O lançador guarda a escolha, o índice do controle e os mapeamentos de teclado, e os passa ao game-run como variáveis de ambiente.
Teclado e entrada por script
WASD é o analógico esquerdo. Alt mais as setas é o analógico direito. Os perfis podem ser de controle, de teclado ou dos dois. PS5_INPUT_MODE=scripted conserva os pulsos de botão da inicialização e ignora os dispositivos físicos, então uma tecla pressionada noutra janela não muda uma cena medida.
Dentro do HLE, o controle primário pode ser aberto com scePadOpen ou obtido com scePadGetHandle. O segundo caminho importa para títulos que nunca abrem o controle do usuário conectado antes de o consultarem. Este é o lado do anfitrião desse handle.
O que está implementado
- DualSense, DualSense Edge e DualShock 4 por HID, em USB e em Bluetooth.
- Consulta pelo report mais novo, motores, barra de luz e uma soma de verificação de Bluetooth.
- XInput para controles compatíveis com Xbox, e perfis de teclado que podem ser remapeados.
- Um modo de entrada scripted que ignora os dispositivos físicos durante as medições.
O que ainda falta
- Touchpad, gatilhos adaptativos e sensores de movimento não formam o conjunto completo de recursos do DualSense.
- A háptica de uma faixa de filme não é encaminhada aos motores.
- O caminho HID é o caminho do anfitrião Windows usado pelo lançador e pelo game-run.
Mecanismos relacionados
O que estas páginas descrevem