This page is a mirror of Tepples' nesdev forum mirror (URL TBD).
Last updated on Oct-18-2019 Download

Device class of input devices

Device class of input devices
by on (#112909)
We can specify the input devices in four classes:
  • Class 0: Using all pins of the Famicom expansion port. Devices of any class can connect to a class 0 port (through an adapter).
  • Class 1: Using D0, D3, D4, OUT0, and OE.
  • Class 2: Using D0, OUT0, and OE.
  • Class 3: Using D0, OUT0, and OE, and using protocol of the standard controller so it is compatible with Four Score. Class 3 devices can connect to ports of any of these classes (through an adapter).

This could be used for something in the future, perhaps in emulator, in categories in the wiki, or whatever (in a modified AV Famicom or your own hardware clone too, perhaps). Furthermore, depending which bits are used, some will and will not interfere (for example, on a modified AV Famicom you could use the keyboard and light gun at the same time if the light gun is connected to the first port, since on the second port it will interfere; the mouse can be used on either port, though).

Some device classes might be:
  • Standard Controller: Class 3.
  • Vs System Light Gun: Class 3.
  • Mouse: Class 2.
  • Super PakPak: Class 2.
  • Super Nintendo: Class 2.
  • Four Score (half): Class 2, accepting two Class 3 devices.
  • Arkanoid: Class 1.
  • Light Gun: Class 1.
  • Oeka Kids: Class 0.
  • Keyboard: Class 0.
  • Famicom 4-Players Adapter: Class 0, accepting two Class 2 devices.

Tell me if you have a use for this definition of device classes.
Re: Device class of input devices
by on (#112912)
zzo38 wrote:
Class 1: Using D0, D3, D4, OUT0, and OE.
What's the point in mentioning D0? AFAIK, no devices use D0 with either D3 or D4 but not with D1 or D2. (Certainly not the Vaus, Zapper, or Power Pads)
Re: Device class of input devices
by on (#112927)
Dislike....I have input devices of my own for the NES that wouldn't fit with this. Won't get us anywhere.
Re: Device class of input devices
by on (#112953)
3gengames wrote:
Dislike....I have input devices of my own for the NES that wouldn't fit with this.
What devices are these?
Re: Device class of input devices
by on (#112981)
Custom ones I use for other projects that run on an NES.
Re: Device class of input devices
by on (#112986)
3gengames wrote:
Custom ones I use for other projects that run on an NES.
I don't know why they wouldn't work with this; they are probably class 1 or class 2. (Nevertheless, you are not required to specify the device class if it isn't useful to you.)
Re: Device class of input devices
by on (#134948)
Found while searching for mentions of Super PakPak in preparation for multicart inclusion:

If something plugs into the expansion port on the bottom of an NES-001, such as the ENIO, it might not even fit into class 0.
Re: Device class of input devices
by on (#134958)
tepples wrote:
Found while searching for mentions of Super PakPak in preparation for multicart inclusion:

If something plugs into the expansion port on the bottom of an NES-001, such as the ENIO, it might not even fit into class 0.
Ah, you are correct. Then a "class X" needs in case it won't fit into any of the classes listed here.