(>")> Classic Controller Emu <("<)

Jademalo

New member
(>")> Classic Controller Emu UPDATED <("<)

1. Get a Bluetooth Device with the program Blue Soleil Running.
2. Press 1+2 buttons on wii remote to put it in discovery mode.
3. Click the red sphere on Blue Soleil to search for devices.
4. Wait for it to finish discovering, and press 1+2 again.
5. Right-Click on the wii remote (Nintendo-Rev-Cnt-001) and select "Browse Services".
6. When this finishes, press 1+2 again and from the symbols at the top if the program select the mouse one.
7. If it links sucesfully, go to step 8. if not, repeat steps 2-6.
8. Download GlovePie and PPjoy. Attatch Classic Controller. Create a ppjoy controller, and select that as the device on Project 64.9.
10. Open your N64 Emulator and run a game.
11. Read the notes on the script and run it by copying and pasteing it into glovepie to help configure the emulator.
12. Play!

Code:
/*\Classic Controller For Emulators By Jademalo/*\

This should replicate the Virtual Console Setup Perfectly, with
the MINUS button pressing Enter to skip errors in the N64 Version. This works perfectly
with all the Games I've tested so far.

//Controller Preferances\\
Right Analog = N64 Analoge, Left Analoge = C-Buttons, D-Pad = N64 D-Pad
L-Trigger = Z-Button (GBA/SNES L Trigger), R-Trigger = R-Button, ZL = L-Button
A-Button = A-Button, B-Button = B-Button
Plus = Start, Minus = Enter (Error Skip) (GBA Select) Home = ESC (FullScreen) (GBA Speedhack)
Y-Button = C-Left, X-Button = C-Right, ZR = C-Down

This can be used with any emulator, just make sure you
configure it properly. (NES and GB/GBC can use Wiimote.) It also has
a fully functional battery indicator! 4 lights mean full - 3/4,
3 lights mean 3/4 - 1/2, 2 lights mean 1/2 - 1/4, 1 light means
1/4 - empty. If you press and hold b on the remote, it will display
which Channel the remote is on.

Set your emulator to this:-

//NES Values\\
D-Pad = Arrow Keys
A = X, B = C, Start = S

//SNES Values\\
D-Pad = Arrow Keys
A = X, B = C, L = Z, R = D, Start = S, Select = Enter

//N64 values\\
Analog Stick = PPJoy Setup (See README)
A = X, B = C, Start = S, L = A (Z for GBA/SNES), R = D, Z = Z
C-Left = j, C-Up = I, C-Right = l, C-Down = k
D-Pad = Arrow Keys

//GBA Values\\
D-Pad = Arrow Keys
A = X, B = C, L = Z, R = D, Start = S, Select = Enter, Speed = Esc

\*/

//Classic Controller (N64 Equivelent)\\

//Right Analoge Stick (Analouge movement)\\
ppjoy1.analog0 = Wiimote.classic.Joy1X
ppjoy1.analog1 = Wiimote.classic.Joy1Y

//D-Pad (D-Pad)\\
up = wiimote1.classic.up
down = wiimote1.classic.Down
right = wiimote1.classic.Right
left = wiimote1.classic.left

//A (A)\\
X = Wiimote1.classic.A

//B (B)\\
C = Wiimote1.classic.B

//Plus (Start Button)\\
S = Wiimote1.Classic.plus

//Minus (Enter-Error Skip)\\
Enter = wiimote1.Classic.Minus

//ZL (L Button)\\
A = wiimote1.classic.zl

//R Trigger (R Button)\\
D = wiimote1.classic.r

//Left Analoge Stick (C-Buttons)\\
if 2 > Wiimote1.classic.Joy2X > 0.5 then
l = true
wait 60 ms 
l = false
endif 
if -2 < Wiimote1.classic.Joy2X < -0.5 then
j = true
wait 60 ms 
j = false
endif 
if 2 > Wiimote1.classic.Joy2Y > 0.5 then
k = true
wait 60 ms 
k = false
endif 
if -2 < Wiimote1.classic.Joy2Y < -0.5 then
i = true
wait 60 ms 
i = false
endif 

//L Trigger (Z Button)\\
z = Wiimote1.classic.L

//X&Y Buttons (C Left & Right)\\
j = wiimote1.Classic.y
l = wiimote1.Classic.x

//ZR Button (C Down)\\
k = wiimote1.Classic.ZR

//Home Button (ESC Fullscreen)\\
Esc = wiimote1.Classic.Home or wiimote1.Home

//NES/GB/GBC Remote\\
up = wiimote1.right
down = wiimote1.left
right = wiimote1.down
left = wiimote1.up

c = wiimote1.one
x = wiimote1.Two
s = wiimote1.Plus
Enter = wiimote1.minus
Esc = wiimote1.home

//Remote 1 Battery & Channel\\
var.Batt1 = wiimote1.Battery / 48

if true then
wait 5 seconds
Wiimote1.Report14 = 0x80
end if


if wiimote1.b = 1 then
wiimote1.leds = 1

elseif 0 < var.Batt1<=1 then
Wiimote1.Leds = 1

elseif 1 < var.Batt1<=2 then
Wiimote1.Leds = 3

elseif 2 < var.Batt1<=3 then
Wiimote1.Leds = 7

elseif 3 < var.Batt1<=4 then
Wiimote1.Leds = 15

endif

//Remote 2 Battery & Channel\\
var.Batt2 = wiimote2.Battery / 48

if true then
wait 5 seconds
Wiimote2.Report14 = 0x80
end if


if wiimote2.b = 1 then
wiimote2.leds = 2

elseif 0 < var.Batt2<=1 then
Wiimote2.Leds = 1

elseif 1 < var.Batt2<=2 then
Wiimote2.Leds = 3

elseif 2 < var.Batt2<=3 then
Wiimote2.Leds = 7

elseif 3 < var.Batt2<=4 then
Wiimote2.Leds = 15

endif

//Remote 3 Battery & Channel\\
var.Batt3 = wiimote3.Battery / 48

if true then
wait 5 seconds
Wiimote3.Report14 = 0x80
end if


if wiimote3.b = 1 then
wiimote3.leds = 4

elseif 0.25 < var.Batt3<=1 then
Wiimote3.Leds = 1

elseif 1.25 < var.Batt3<=2 then
Wiimote3.Leds = 3

elseif 2.25 < var.Batt3<=3 then
Wiimote3.Leds = 7

elseif 3.25 < var.Batt3<=4 then
Wiimote3.Leds = 15

endif

//Remote 4 Battery & Channel\\
var.Batt4 = wiimote4.Battery / 48

if true then
wait 5 seconds
Wiimote4.Report14 = 0x80
end if


if wiimote4.b = 1 then
wiimote4.leds = 8

elseif 0.25 < var.Batt4<=1 then
Wiimote4.Leds = 1

elseif 1.25 < var.Batt4<=2 then
Wiimote4.Leds = 3

elseif 2.25 < var.Batt4<=3 then
Wiimote4.Leds = 7

elseif 3.25 < var.Batt4<=4 then
Wiimote4.Leds = 15

endif

//Debug Display\\
debug = "Battery level 1: " + 100*48*var.Batt1/192 + "%"  + " - Battery level 2: " + 100*48*var.Batt2/192 + "%"  + " - Battery level 3: " + 100*48*var.Batt/192 + "%" +  " - Battery level 4: " + 100*48*var.Batt4/192 + "%"
 
Last edited:

datadayne

New member
Thats cool. I got to check it out.

But where do you buy a blutooth and is there a sertain kind I should get?
 

Leerz

Pinoy Ako!
You won't ruin your BT WIIREMOTE.

it's just bluetooth.

as long as you can use the device as input/direct pad, then I assume it can be used on any emulators that supports input from joy devices
 

Jademalo

New member
You won't ruin your BT WIIREMOTE.

it's just bluetooth.

as long as you can use the device as input/direct pad, then I assume it can be used on any emulators that supports input from joy devices


Not Quite.

you need to use glove pie to map the buttons to keyboard, and ppjoy for analog. which is what i have here :)

and you can just use pp joy if you want, (still has to be mapped) but it takes all the fun outta it.. lol. and this way, its easily editable :)
 
Last edited:
Top