[Wii Tutorial] Testando e Configurando Controles USB No Nintendont

00.jpg

Este tutorial escrito pelo amigo Cleber aborda com clareza um das maravilhas que o Nintendont nos proporciona, o suporte a praticamente qualquer controle com saída USB, isso quer dizer que é possível jogar os jogos de Nintendo GameCube no Nintendo Wii com praticamente qualquer controle. Este é sem duvida um tutorial avançado, por isso já adianto que para executá-lo, vai ser necessário muita paciência e atenção, claro que no final todo o trabalho  vai ser extremamente gratificante se você possui um Controle USB ai parado. Aproveito para agradecer a bela iniciativa do amigo Cleber que mandou este maravilhoso tutorial por e-mail para ser postado no “Mundo Wii Hack” , com certeza vai ajudar muitas pessoas. 

Este tutorial propõe mostrar como testar se determinado Controle USB é compatível com o Nintendont e, caso positivo, como configurá-lo corretamente para utilizá-lo no Nintendont.
No caso, utilizarei um antigo “joystick Dualshock 2 original (PS2)” plugado a um (também antigo) adaptador “PS2-USB Mayflash Super Dual Box PC013” (http://www.mayflash.com/Products/PLAYSTATION/PC013.html), que utilizava para jogar emuladores no PC. Essa combinação, por padrão, não funciona no Nintendont.
Dependendo do tipo de Controle USB utilizado, outros procedimentos (que, por ora, desconheço) podem ser necessários ao apropriado funcionamento com o Nintendont.

DICA IMPORTANTE: Vale lembrar que o Nintendont possui pré-configuração de diversos controles (arquivos “.ini” na pasta “controllers”). Então é prudente, antes de passar um trabalhão configurando um arquivo “.ini”, que você verifique se o controle já não está pré-configurado (acredito que basta habilitar a opção USB-HID Controller no loader ou no próprio Nintendont e carregar o jogo, ou, verificar o VID e o PID do controle no “HID Test” e depois ver se os valores do VID e do PID batem com algum dos nomes dos arquivos na pasta “controllers” que, por padrão, são exibidos no formato VID_PID.ini. Caso você consiga configurar seu controle para funcionar no Nintendont, não deixe de disponibilizar o arquivo “.ini” e o modelo do seu controle nos comentários, isso vai ajudar outras pessoas.

a

O Que é Necessário:

  • Nintendo Wii desbloqueado com The Homebrew Channel instalado, caso não saiba como instalar leia este tutorial AQUI;
  • Programa HID Test v6 (pasta hid_test anexa), pode ser baixado no final do poste;
  • Controle USB (ou controle conectado a um Adaptador USB);
  • Nintendont (aqui utilizei a versão 4.445 que pode ser baixado AQUI – utilizando o loader do USBLoaderGX v3.0 r1262 que pode ser baixado AQUI), e;
  • Muita paciência.

a

Etapa: Verificando se o seu Controle USB é reconhecido pelo Nintendo Wii

Esta é uma etapa crucial: se o seu Controle USB não for reconhecido, já era (não poderá ser utilizado no Nintendont), vamos ao teste:

  • Descarregue a pasta “hid_test” dentro do diretório “apps” na raiz do seu “Cartão SD” card (sd:/apps) (o caminho da pasta, após inserida no Cartão SD, o caminho deverá ser sd:/apps/hid_test).
  • Plugue o Controle USB na primeira porta USB do Nintendo Wii (com o console na posição vertical, a primeira porta da direita para a esquerda; já com o console na posição horizontal, a primeira porta de cima para baixo);
  • Faça backup e exclua da raiz do seu Cartão SD qualquer arquivo “controller.ini”. Da mesma forma, faça backup e exclua da raiz do seu Cartão SD a pasta “controllers” (pasta que é instalada junto com o Nintendont);
  • Abra o The Howebrew Channel e carregue o aplicativo “hid_test”.
  • Ao final da tela do programa, aparecerá uma sequência de letras e números parecida com esta (a sequência será diferente para cada controle plugado):

01 00 F0 7F 7F 7F 7F 41

  • pressione os botões do seu controle (um de cada vez) e verifique se isso altera a sequência anteriormente exibida (se alterar, significa que aquele comando foi reconhecido):

Exemplo:
Sem pressionar nenhum botão:                          01 00 F0 7F 7F 7F 7F 41
Pressionando o botão X do Dualshock 2:  01 04 F0 7F 7F 7F 7F 41    (significa que o botão X foi reconhecido). Teste cada um dos botões, bem como os direcionais (analógicos e digitais).

  • Se todos os comandos alterarem a sequência inicial, é grande a probabilidade de que o controle funcione bem com o Nintendont. Siga adiante, portanto, caso contrário, o tutorial acaba aqui (o controle não é compatível).

a

2ª Etapa: Mapeando o controle

Nessa etapa, será necessária atenção e paciência. Com o homebrew “HID Test” em execução, você terá de registrar todas as alterações provocadas pelo pressionamento de botões e direcionais (digitais e analógicos, se houver). Isso será necessário para configurar corretamente o controle.

  1. Inicialmente, tenha em mente que cada grupo de dois dígitos (valor) da sequência de números e letras apresentadas na tela corresponde a um offset (contados de 0 a 7, da esquerda para a direita):00.jpgAssim, no exemplo acima, o offset “0” corresponde ao valor “01”, o offset “1”, corresponde ao valor “00”, o offset “2”corresponde ao valor “F0” e assim por diante (não é necessário entender o porquê disso, mas sim lembrar de que cada valor está associado a um offset – mais tarde precisaremos disso).

  1. Anote a sequência original (isto é, sem nenhum botão/direcional pressionado):

Por exemplo: 01 00 F0 7F 7F 7F 7F 41

  1. Agora, anote a sequência mostrada para cada comando enviado pelo Joystick (controle). Para evitar retrabalho, tenha muita atenção nessa etapa.

Por exemplo (coloquei em negrito vermelho as alterações verificadas no meu caso):

Direcional (digital) p/ cima:                    01 00 00 7F 7F 7F 7F 41
Direcional (digital) p/ direita:               01 00 20 7F 7F 7F 7F 41
Direcional (digital) p/ baixo:                 01 00 40 7F 7F 7F 7F 41
Direcional (digital) p/ esquerda:       01 00 60 7F 7F 7F 7F 41
Botão X:                                                              01 04 F0 7F 7F 7F 7F 41

OBSERVAÇÃO: Faça isso com todos os demais botões, inclusive “start”, “select”, etc.

Em relação ao direcional digital, registre também as combinações das diagonais:

Direcional (digital) cima+direita:              01 00 10 7F 7F 7F 7F 41
Direcional (digital) baixo+direita:             01 00 30 7F 7F 7F 7F 41
Direcional (digital) baixo+esquerda:       01 00 50 7F 7F 7F 7F 41
Direcional (digital) cima+esquerda:        01 00 70 7F 7F 7F 7F 41

a

Controles Analógicos

Em relação aos controles (direcionais) analógicos, é necessário registrar qual é o offset (vide explicação acima) alterado pelos eixos x (esquerda-direita) e y (cima-baixo).
Para isso, mova o direcional analógico completamente para a esquerda e para a direita (eixo x) e, depois, para completamente para cima e para baixo (eixo y) e anote o offset cujos valores estão sendo alterados:

Por Exemplo: Direcional analógico da esquerda (Dualshock 2):

  1. Eixo X:

Movido completamente para a esquerda:     01 00 F0 00 7F 7F 7F 73
Movido completamente para a direita:         01 00 F0 FF 7F 7F 7F 7300

 

 

No meu caso, o eixo x do direcional analógico esquerdo altera o offset 3

  1. Eixo y:

Movido completamente para cima:       01 00 F0 7F 00 7F 7F 73
Movido completamente para baixo:      01 00 F0 7F FF 7F 7F 7301.jpg

Aqui, o eixo y do direcional analógico esquerdo altera o offset 4

No caso do Dualshock 2 (que possui dois direcionais analógicos), também será necessário registrar os dados do direcional analógico direito.
Lembrando que todos os valores/offsets acima são meramente demonstrativos (você terá de verificar uma a uma todas as combinações).

Por fim, registre as informações “VID” e “PID” exibidas na tela do HID Test

a

3ª Etapa: Associando os comandos do Controle USB aos comandos do controle do GameCube.

Nesta etapa, para uma melhor experiência no Nintendont, será necessário associar os comandos acima aos comandos correspondentes do controle do GameCube.

Aqui, um layout básico dos comandos do controle do GameCube:02.png

Fonte: https://en.wikipedia.org/wiki/GameCube_controller

No caso do controle utilizado neste tutorial (Dualshock 2), associarei os comandos do Controle USB da seguinte forma:

Controle Dualshock 2  -> Controle Do GameCube

Direcional digital (dpad)  -> D-pad
Direcional analógico esquerdo  -> Control Stick
Direcional analógico direito  –-> C-Stick
Botão start  -> botão START
Botão quadrado  -> botão B
Botão triângulo  -> botão Y
Botão círculo  -> botão X
Botão X  -> botão A
Botão L1  -> botão L
Botão L2  -> sem associação
Botão R1  -> botão R
Botão R2  -> botão Z
Botão SELECT  -> sem associação (associarei ao comando “power”, conforme explicado mais adiante)

A associação acima é apenas a título exemplificativo (pode ser feita de qualquer forma, ao gosto do usuário)

a

4ª Etapa: Criando arquivo de configuração “.ini”

Abra o bloco de notas e copie e cole as informações abaixo. Salve o arquivo como controller.ini (não como .txt).

Não use entrelinhas

[nome do seu controle]
VID=
PID=
Polltype=
MultiIn=
MultiInValue=
DPAD=
DigitalLR=
LAnalog=
RAnalog=
A=
B=
X=
Y=
Z=
L=
R=
Power=
S=
Left=
Down=
Right=
Up=
RightUp=
DownRight=
DownLeft=
UpLeft=
StickX=
StickY=
CStickX=
CStickY=

Agora, vamos preencher as informações:

[nome do seu controle] Nomenclatura do controle ou do adaptador (de livre escolha)
Por exemplo: [Mayflash Super Dual Box]

VID= inserir os quatro números do VID (obtidos na tela do HID Test) (não utilize espaços).
PID= inserir os quatro números do PID (obtidos na tela do HID Test) (não utilize espaços).

Polltype=1 (não sei exatamente para o que serve, mas o valor padrão é =1).

MultiIn=1
MultiInValue=01

Acredito que essas duas linhas (MultiIn= e MultiInValue=) sejam para configurar adaptadores USB com múltiplas entradas (não tive paciência para testar). Deixei o valor padrão MultIn=1 e MultiInValue=01.

DPAD=1 Direcional digital (se o Controle USB tiver direcional digital, coloque o valor =1)

DigitalLR= Botões L e R digitais (em oposição aos botões L e R analógicos). Se o seu controle possui botões L e R digitais, insira valor =1 (se os botões L e R não forem digitais, insira valor =0) (não utilize espaços).
No meu caso (Dualshock 2): DigitalLR=1

LAnalog=
RAnalog=

Botões L e R analógicos (em oposição aos botões L e R digitais). No meu caso (Dualshock 2), coloquei valor =0
Assim:
LAnalog=0
RAnalog=0

A= (botão A do controle do GameCube).

Agora a coisa complica um pouco. Pegue a informação obtida na 2ª etapa (mapeamento) referente ao botão do seu Controle USB que deseja associar ao botão A do controle do GameCube (conforme visto na 3ª etapa).

No meu caso, quero associar o botão X do Dualshock 2 ao botão A do controle do GameCube.
Conforme dados obtidos na 2ª etapa, o botão X pressionado apresentou a seguinte alteração:08

Isto é, o botão X pressionado exibe valor 04 no offset 1
Assim, para o botão X do Dualshock 2 se tornar o botão A do controle do GameCube, o valor a ser inserido no arquivo .ini será:

Botão=offset,valor
A=1,04 (não deixe espaços)

Observação: para valores com letra F (por exemplo, F1, 7F): substitua a letra F pelo número 0.

Faça o mesmo procedimento para os botões B, X, Y, Z, L e R.

Power= (botão sem associação). Serve para fechar o Nintendont e retornar a tela do loader ou ao menu principal do Nintendo Wii (conforme o padrão que estiver configurado). Associei-o ao botão SELECT do Dualshock 2.

S= botão START

Left=
Down=
Right=
Up=
RightUp=
DownRight=
DownLeft=
UpLeft=

Comandos do direcional digital (dpad) do controle do GameCube (cima, baixo, direita, esquerda, cima+direita, baixo+direita, baixo+esquerda e cima+esquerda). Utilizar o mesmo procedimento descrito acima.

StickX=
StickY=

Referem-se aos eixos x e y do Control Stick do GameCube (direcional analógico esquerdo). Aqui, o valor refere-se somente ao offset alterado pelo respectivo eixo, conforme procedimento descrito na “2ª Etapa: Seção Controles Analógicos”.

No meu caso, associei o direcional analógico esquerdo do Dualshock2 ao Control Stick do GameCube.
Conforme visto na 2ª Etapa: Seção Controles Analógicos,

  • O eixo x do direcional analógico esquerdo do Dualshock 2 altera o offset 3
  • O eixo y do direcional analógico esquerdo do Dualshock 2 altera o offset 4

Logo, associando os valores aos do controle do GameCube, o arquivo .ini ficará assim:

StickX=3.
StickY=4

CStickX=
CStickY=

Referem-se aos eixos x e y do C-Stick do GameCube (direcional analógico direito). O valor inserido refere-se somente ao offset alterado pelo respectivo eixo (mesmo procedimento do Control Stick)

Salve o arquivo e o feche. Certifique-se de que foi salvo como controller.ini

a

5ª Etapa: Testando o arquivo controller.ini

  1. Coloque o arquivo controller.ini criado na raiz do seu Cartão SD. Retire qualquer outro dispositivo USB conectado ao Nintendo Wii (deixe somente o Controle USB conectado).

  2. Abra o The Howebrew Launcher e rode o aplicativo “hid_test” novamente.

Verifique a correspondência entre todos os comandos do Controle USB configurado e os comandos do controle do GameCube (mostrados na parte inferior da tela).03.pngSe estiver tudo correto, coloque o arquivo controller.ini no diretório raiz do dispositivo onde estão armazenados os jogos de GameCube:

Se estiverem no Cartão SD -> sd:/controller.ini

Se estiverem no dispositivo USB -> usb:/controller.ini

Conecte, se for o caso, o dispositivo USB onde estão armazenados os jogos de GameCube.

Abra um loader de sua preferencia ou o próprio Nintendont (aqui, utilizei o USBLoaderGX v3.0 r1262), e, nas configurações, habilite a opção USB-HID Controller:

Settings -> Loader settings -> USB-HID Controller: ON05.png

Carregue o jogo e “voilà…”

Nota:

Se você desejar manter a pasta “controllers” do Nintendont (com as pré-configurações para diversos tipos de controle), faça o seguinte:

Renomeie o arquivo controller.ini para o padrão VID_PID.ini (substitua o VID e o PID pelos códigos mostrados no HID Test).

No meu caso (VID=0925 e PID=8866), o nome do arquivo ficou 0925_8866.ini

Coloque o arquivo dentro da pasta “controllers” (junto com os demais arquivos ali existentes).

Coloque a pasta “controllers” no diretório raiz da mídia onde estão armazenados os jogos de GameCube (sd:/controllers ou usb:/controllers)

a

Exemplo do arquivo final controller.inicompatível com o “joystick Dualshock 2 original (PS2)mais adaptadorPS2-USB Mayflash Super Dual Box PC013.

[Mayflash Super Dual Box]
VID=0925
PID=8866
Polltype=1
MultiIn=1
MultiInValue=01
DPAD=1
DigitalLR=1
LAnalog=0
RAnalog=0
A=1,04
B=1,08
X=1,02
Y=1,01
Z=1,20
L=1,40
R=1,80
Power=2,02
S=2,01
Left=2,60
Down=2,40
Right=2,20
Up=2,00
RightUp=2,10
DownRight=2,30
DownLeft=2,50
UpLeft=2,70
StickX=3
StickY=4
CStickX=5
CStickY=6

a

Créditos: https://gbatemp.net/threads/nintendont-controller-configurations.355035

a

Baixar Servidor 1

Baixar Servidor 2

a

Dúvidas ou sugestões, deixe seu comentário.

Se este poste foi útil pra você, não deixe de apertar no botão Curtir

99 comentários em “[Wii Tutorial] Testando e Configurando Controles USB No Nintendont

  1. Amigo, na configuração do meu controle, ele tem uma sequência de 19 offsets, e os botões alteram mais de um offset por vez. Como colocar esta informação no aquivo .ini?
    Exemplo:
    Seta para cima: “offset 5 = 00” e também o “offset 10 = FF)
    Como coloco esta informação dupla no ini???

  2. Olá, segui o tutorial a risca e estou testando um controle pdp do swicth nele e empaquei na “MultiIn=” “MultiInValue=” então resolvi pesquisar em uns site gringos sobre e o “MultiIn” seria a entra do controle, se for USB sempre sera =1 se dor usar um adaptador terá que por quantas entradas tiver nele, o MultiInValue nada mais é do que os dois primeiros dígitos iniciais, no caso do tutorial “01 00 F0 00 7F 7F 7F 73” o Value seria o 01 inicial.

  3. Alguém pode me ajudar fiz de tudo quebrej minha cabeça com isso nas primeiras tentativas neh funcionava o controle ai fui tentando até conseguir só que ele não tá funcionando só alguns botões acho que só um, ele é um controle paralelo de xbox 360 marca x zhang ele tem 3 modos o primeiro funcionar tudo menos os analógicos o segundo já funciona os analógicos o terceiro entrar no modo xbox 360 fiz no 2 modo que ele virar um gamepad qualquer

    Base(Sem apertar nenhum botão): 00 00 0F 7F 80 7F 80
    0. 1. 2. 3. 4. 5. 6.

    Start: 00 02 0F 7F 80 7F 80
    Back: 00 01 0F 7F 80 7F 80
    A:04 00 0F 7F 80 7F 80
    B:02 00 0F 7F 80 7F 80
    X:08 00 0F 7F 80 7F 80
    Y:01 00 0F 7F 80 7F 80
    LB:10 00 0F 7F 80 7F 80
    RB:20 00 0F 7F 80 7F 80
    LT:40 00 0F 7F 80 7F 80

    Setas
    +++++
    Cima:00 00 00 7F 80 7F 80
    Baixo:00 00 04 7F 80 7F 80
    Esquerda:00 00 06 7F 80 7F 80
    Direita:00 00 02 7F 80 7F 80

    Analógico (M)

    Eixo X
    Esquerda:00 00 0F 00 80 7F 80
    Direita:00 00 0F FF 80 7F 80

    Eixo Y
    Cima:00 00 0F 7F 00 7F 80
    Baixo:00 00 0F 7F FF 7F 80

    Analógico (C)

    Eixo X
    Esquerda:00 00 0F 7F 80 00 80
    Direita:00 00 0F 7F 80 FF 80

    Eixo Y
    Cima:00 00 0F 7F 80 7F 00
    Baixo:00 00 0F 7F 80 7F FF

    Extra
    Direita+cima:00 00 01 7F 80 7F 80
    Baixo+direita:00 00 03 7F 80 7F 80
    Baixo+esquerda:00 00 05 7F 80 7F 80
    Cima+esquerda:00 00 07 7F 80 7F 80

    Vid:2563
    Pid:0575

  4. Olá. boa noite, por favor me ajude gastei 50 reais num adaptador de ps2 dualshock para usb pc/ps3, não sei a marca pois está todo em chinês, acho que é da Lefa, era o que constava no site, eu plugo o usb no wii e sempre só vibra sem detectar nada, o controle não responde de jeito nenhum, não testei no pc ainda mas mesmo com todas as configurações e os controllers.ini não roda, no HID test ele tá failed to load config e trava sem mostrar os botões…

  5. oii eu usei um arquivo já configurado no meu controle usb. ele é um controle com o mesmo formato do ps2 mas os botões L e R como no gamecube são analógicos + digitais eles ficam só metade pressionados e isso atrapalha para jogar metroid prime. como deixar os botões L e R 100% pressionados igual ao gamecube?

  6. Olá! Parabéns pelo excelente tutorial!

    Estou jogando Mario Sunshine com um controle paralelo de Wii U. Apesar de algumas limitações ele funciona até que bem. Porém não consigo usar o jato d’agua enquanto ando, e por isso não consigo bater o chefão de Sirena Beach no The Manta Storm.

    Sabe dizer se isso é corrigível utilizando essas configurações?

Deixe um comentário

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.