Virtual Boy controller: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(Category)
(move "Controller ID" interpretation of the always 1 bit out to prose)
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The Virtual Boy controller has an NES-compatible protocol, and has been used in homebrew games.
The Virtual Boy controller has an NES-compatible protocol, and has been used in homebrew games.


* Spook-O'-Tron
* ''Spook-O'-Tron''
* Candelabra - Estoscerro
* ''Candelabra - Estoscerro''


[[Category:Controllers]]
[[Category:Controllers]]
Line 8: Line 8:
After strobing the controller, the following 16 bits can be read from the data line:
After strobing the controller, the following 16 bits can be read from the data line:


   0 - Low battery signal
   0 - Right D-pad Down
   1 - Always 1
   1 - Right D-pad Left
   2 - Button A
   2 - Select
   3 - Button B
   3 - Start
   4 - Button R (opposite right D-pad)
   4 - Left D-pad Up
   5 - Button L (opposite left D-pad)
   5 - Left D-pad Down
   6 - Right D-pad Up
   6 - Left D-pad Left
   7 - Right D-pad Right
   7 - Left D-pad Right


   8 - Left D-pad Right
   8 - Right D-pad Right
   9 - Left D-pad Left
   9 - Right D-pad Up
  10 - Left D-pad Down
  10 - L (rear left trigger)
  11 - Left D-pad Up
  11 - R (rear right trigger)
  12 - Start
  12 - B
  13 - Select
  13 - A
  14 - Right D-pad Left
  14 - Always 1
  15 - Right D-pad Down
  15 - Battery voltage; 1 = low voltage
 
This is very analogous to the [[SNES controller]], which reports its 4 face buttons where the VB reports its right d-pad. However, the last 4 bits (B, A, 1, battery) have no correspondence in the SNES controller report. Use this 1 to distinguish the Virtual Boy controller from that controller or a [[mouse]].


== References ==
== References ==
* [http://perfectkiosk.net/stsvb.html#hardwaregamepad VB Sacred Tech Scroll]: Virtual Boy Specifications
* [//web.archive.org/web/20190319100353/perfectkiosk.net/stsvb.html#hardwaregamepad VB Sacred Tech Scroll]: Virtual Boy Specifications
* [https://www.planetvb.com/modules/tech/?sec=docs PlanetVB]: Documents
* [https://slydogstudios.org/ Sly Dog Studios]: Candelabra - Estoscerro demo available
* [https://slydogstudios.org/ Sly Dog Studios]: Candelabra - Estoscerro demo available
* [//forums.nesdev.org/viewtopic.php?f=22&t=15677 Forum post]: Spook-o'-tron - Virtual Boy Controller Fun
* [//forums.nesdev.org/viewtopic.php?f=22&t=15677 Forum post]: Spook-o'-tron - Virtual Boy Controller Fun

Latest revision as of 13:26, 3 March 2022

The Virtual Boy controller has an NES-compatible protocol, and has been used in homebrew games.

  • Spook-O'-Tron
  • Candelabra - Estoscerro

After strobing the controller, the following 16 bits can be read from the data line:

 0 - Right D-pad Down
 1 - Right D-pad Left
 2 - Select
 3 - Start
 4 - Left D-pad Up
 5 - Left D-pad Down
 6 - Left D-pad Left
 7 - Left D-pad Right
 8 - Right D-pad Right
 9 - Right D-pad Up
10 - L (rear left trigger)
11 - R (rear right trigger)
12 - B
13 - A
14 - Always 1
15 - Battery voltage; 1 = low voltage

This is very analogous to the SNES controller, which reports its 4 face buttons where the VB reports its right d-pad. However, the last 4 bits (B, A, 1, battery) have no correspondence in the SNES controller report. Use this 1 to distinguish the Virtual Boy controller from that controller or a mouse.

References