Bạn có thể chơi game Nintendo Wii trên Linux nếu biết cách dùng điều khiển Wii (Wii remote) với máy tính. Bạn cũng có thể dùng điều khiển Wii thay vì tay cầm game PC để chơi bất kỳ game nào dùng trình giả lập (emulator).
Hướng dẫn trong bài áp dụng cho các bản phân phối Linux dựa trên Debian như Debian, Mint, và Ubuntu.
Những gì cần để dùng Wii Remote với Linux
Ngoài tay cầm Wii, bạn cần cài các gói Linux sau:
- lswm
- wminput
- libcwiid1
Bạn có thể lấy tất cả công cụ này bằng một lệnh sudo duy nhất trong terminal Linux:
sudo apt-get install lswm wminput libcwiid1
Nếu dùng bản phân phối dựa trên RPM, bạn có thể dùng YUM hoặc công cụ tương tự để cài ứng dụng này.
Cách kết nối Wii Remote với Linux
Bạn có thể cấu hình Wii remote từ dòng lệnh:
Mở terminal Linux và nhập lệnh sau để lấy địa chỉ Bluetooth của điều khiển Wii:
lswm
Nhấn giữ nút 1 và 2 trên điều khiển Wii cùng lúc khi được nhắc. Nếu đúng, một dãy số và chữ sẽ xuất hiện trong terminal như sau:
00:1B:7A:4F:61:C4
Mẹo: Đảm bảo Bluetooth đã bật trên máy tính. Bạn có thể phải thử vài lần trước khi PC phát hiện Wii remote.
Nhập lệnh sau vào terminal để mở trình soạn thảo Nano nhằm tạo file cấu hình ánh xạ nút Wii:
sudo nano /etc/cwiid/wminput/gamepad
Sao chép và dán nội dung sau vào cuối file Nano:
Wiimote.Down = KEY_RIGHT Wiimote.Left = KEY_DOWN Wiimote.Right = KEY_UP Wiimote.1 = KEY_SPACE Wiimote.2 = KEY_LEFTCTRL Wiimote.A = KEY_LEFTALT Wiimote.B = KEY_RIGHTCTRL Wiimote.Plus = KEY_LEFTSHIFT
Nhấn CTRL + O trên bàn phím để lưu file cấu hình.
Nhấn CTRL + X để thoát Nano.
Sau khi cấu hình ánh xạ nút, chạy lệnh sau:
sudo wminput -c /etc/cwiid/wminput/gamepad
Nhấn giữ nút 1 và 2 trên điều khiển Wii cùng lúc lại lần nữa khi được nhắc. Từ "ready" (sẵn sàng) sẽ xuất hiện nếu kết nối thành công. Bắt đầu bất kỳ game nào để chơi với Wii remote.
Mẹo: Một ưu điểm lớn của điều khiển Wii là D-pad, hoạt động tốt hơn cho game cũ so với joystick Xbox One vì nó không nhạy bằng.
Cấu hình Wii Remote cho Linux
Khi tạo file cấu hình, nó nên đã chứa một số văn bản như sau:
# gameport Classic.Dpad.X = ABS_X Classic.Dpad.Y = ABS_Y Classic.A = BTN_A
Định dạng mỗi dòng trong file là nút điều khiển Wii = phím bàn phím. Ví dụ:
Wiimote.Up = KEY_UP
Lệnh trên ánh xạ nút Up trên Wii remote đến mũi tên lên trên bàn phím. Tuy nhiên, vì bạn phải cầm Wii remote ngang để chơi hầu hết game, bạn có thể muốn ánh xạ nút Up đến phím mũi tên trái:
Wiimote.Up = KEY_LEFT
Bảng ánh xạ mẫu (Wii Remote Button → Linux Keyboard):
| Nút Wii Remote | Phím Linux |
|---|---|
| Up | Left Arrow |
| Down | Right Arrow |
| Left | Down Arrow |
| Right | Up Arrow |
| 1 | Space |
| 2 | Left CTRL |
| A | Left ALT |
| B | Right CTRL |
| Plus (+) | Left Shift |
Hầu hết trình giả lập đơn giản hóa quá trình ánh xạ nút, vì vậy sau khi kết nối Wii remote với Linux, bạn có thể tùy chỉnh thêm điều khiển cho game và console cụ thể. Một số game PC thậm chí cho phép ánh xạ phím chuột đến điều khiển Wii.
Mẹo: Bạn có thể xem cài đặt điều khiển khuyến nghị cho game retro tại trang web Internet Archive Arcade.
Các nút trên Wii Remote
Bạn có thể dùng nhiều phụ kiện Wii với Linux bao gồm Wii Classic Controller và Wii Nunchuk. Dưới đây là danh sách tất cả nút điều khiển Wii bạn có thể cấu hình trong file gamepad:
Wii Remote
- Wiimote.Up
- Wiimote.Down
- Wiimote.Left
- Wiimote.Right
- Wiimote.A
- Wiimote.B
- Wiimote.1
- Wiimote.2
- Wiimote.Plus
- Wiimote.Minus
- Wiimote.Home
- Wiimote.Dpad.X
- Wiimote.Dpad.Y
Wii Nunchuk
- Nunchuk.C
- Nunchuk.Z
- Nunchuk.Stick.X
- Nunchuk.Stick.Y
Wii Classic Controller
- Classic.Up
- Classic.Down
- Classic.Left
- Classic.Right
- Classic.Minus
- Classic.Plus
- Classic.Home
- Classic.A
- Classic.B
- Classic.X
- Classic.Y
- Classic.ZL
- Classic.ZR
- Classic.L
- Classic.R
- Classic.Dpad.X
- Classic.Dpad.Y
- Classic.LStick.X
- Classic.LStick.Y
- Classic.RStick.X
- Classic.RStick.Y
- Classic.LAnalog
- Classic.RAnalog
Lưu ý: Rất tiếc, không thể cấu hình điều khiển chuyển động (motion controls) của Wii remote với Linux, nhưng bạn vẫn có thể chơi ROM game Wii không yêu cầu điều khiển chuyển động.
Bảng mã phím bàn phím Linux
Dưới đây là hướng dẫn bàn phím Linux giúp bạn thiết lập file cấu hình.
| Phím | Mã |
|---|---|
| Escape | KEY_ESC |
| 0 | KEY_0 |
| 1 | KEY_1 |
| 2 | KEY_2 |
| 3 | KEY_3 |
| 4 | KEY_4 |
| 5 | KEY_5 |
| 6 | KEY_6 |
| 7 | KEY_7 |
| 8 | KEY_8 |
| 9 | KEY_9 |
| - (dấu trừ) | KEY_MINUS |
| = (dấu bằng) | KEY_EQUAL |
| BackSpace | KEY_BACKSPACE |
| Tab | KEY_TAB |
| Q | KEY_Q |
| W | KEY_W |
| E | KEY_E |
| R | KEY_R |
| T | KEY_T |
| Y | KEY_Y |
| U | KEY_U |
| I | KEY_I |
| O | KEY_O |
| P | KEY_P |
| [ | KEY_LEFTBRACE |
| ] | KEY_RIGHTBRACE |
| Enter | KEY_ENTER |
| CTRL (bên trái) | KEY_LEFTCTRL |
| A | KEY_A |
| S | KEY_S |
| D | KEY_D |
| F | KEY_F |
| G | KEY_G |
| H | KEY_H |
| J | KEY_J |
| K | KEY_K |
| L | KEY_L |
| ; (dấu chấm phẩy) | KEY_SEMICOLON |
| ' (dấu nháy đơn) | KEY_APOSTROPHE |
| # Shift (bên trái) | KEY_LEFTSHIFT |
| \ | KEY_BACKSLASH |
| Z | KEY_Z |
| X | KEY_X |
| C | KEY_C |
| V | KEY_V |
| B | KEY_B |
| N | KEY_N |
| M | KEY_M |
| , (dấu phẩy) | KEY_COMMA |
| . (dấu chấm) | KEY_DOT |
| / (dấu gạch chéo) | KEY_SLASH |
| Shift (bên phải) | KEY_RIGHTSHIFT |
| ALT (bên trái) | KEY_LEFTALT |
| Space bar | KEY_SPACE |
| Caps Lock | KEY_CAPSLOCK |
| F1 | KEY_F1 |
| F2 | KEY_F2 |
| F3 | KEY_F3 |
| F4 | KEY_F4 |
| F5 | KEY_F5 |
| F6 | KEY_F6 |
| F7 | KEY_F7 |
| F8 | KEY_F8 |
| F9 | KEY_F9 |
| F10 | KEY_F10 |
| F11 | KEY_F11 |
| F12 | KEY_F12 |
| Num Lock | KEY_NUMLOCK |
| Scroll Lock | KEY_SHIFTLOCK |
| 0 (keypad) | KEY_KP0 |
| 1 (keypad) | KEY_KP1 |
| 2 (keypad) | KEY_KP2 |
| 3 (keypad) | KEY_KP3 |
| 4 (keypad) | KEY_KP4 |
| 5 (keypad) | KEY_KP5 |
| 6 (keypad) | KEY_KP6 |
| 7 (keypad) | KEY_KP7 |
| 8 (keypad) | KEY_KP8 |
| 9 (keypad) | KEY_KP9 |
| . (keypad chấm) | KEY_KPDOT |
| + (keypad cộng) | KEY_KPPLUS |
| - (keypad trừ) | KEY_KPMINUS |
| Mũi tên trái | KEY_LEFT |
| Mũi tên phải | KEY_RIGHT |
| Mũi tên lên | KEY_UP |
| Mũi tên xuống | KEY_DOWN |
| Home | KEY_HOME |
| Insert | KEY_INSERT |
| Delete | KEY_DELETE |
| Page Up | KEY_PAGEUP |
| Page Down | KEY_PAGEDOWN |