Hori Track TRK-7

Archie
Site Admin
Posts: 144
Joined: 31 Jan 2019 15:27

Hori Track TRK-7

Post by Archie » 14 May 2021 13:42

Ball size: 2" (50.5mm)
Interface: Proprietary serial
Year: 1989

Image


Designed by Hori Electric Co. for Nintendo Family Computer (aka "Famicom") video game console. In addition to the common buttons, it does have cross-shaped D-pad control. Device is obviously intended for two-hands operation.

Image Image


Sensors are of unusual design. Shutter discs are in fact a 16mm rollers supporting the ball, with micro 3x8x4mm ball bearings inside. Each roller have just 8 holes, so calculated resolution is incredibly low: 25 PPR / 4 CPI. Probably it was enough for planned purpose back then. Support bearing is marked 625Z Nachi Japan, and have the same outer size as X and Y rollers: 5x16x5mm. Main bearings are unmarked, but dimensions correspond to 693-ZZ type. They're of serviceable kind (removable shields), seemingly stainless, and of very good quality: still rotating like new. Discrete photosensors and LEDs are assembled in plastic enclosures, used also as a bearing retainers.

Image Image


Signals are rectified with Rohm BU4093B Schmitt triggers. Main 28-pin controller in cradle is marked Hori TRK-81-R01 BU3219, and probably is also made by Rohm Semiconductor.

Image Image


PCB is supposed to be fixed in the case by single self-taping screw, but for some reasons it was never installed at the factory: the hole in the mounting post is intact. I've added that screw myself. Buttons and D-pad are made of conductive rubber pads, contacting PCB traces (like in TV-remotes), so there's no any clicks. Speed and orientation selection switches are located on the bottom of device.

Image Image


Connector is compatible with standard DB-15 but is longer, and does not have retaining screws. Just 5 wires are actually used, marked on the PCB side as VCC, GND, CLK, P/S and DA.

Image Image

This trackball originally is not a pointing device, but seems it's could be converted easily. In the right-hand operation mode, the "B" button is located directly under the thumb, so if used as a left mouse button, hand position is the same as with most trackballs. Quality of ball mechanics is very high: smooth movement, and the ability to spin.

Original package box and leaflet:
Spoiler
Show
Image Image

Image

Image Image

Image
Communication protocol is described on NESdev Wiki page, mojo blog and Martin Korth (c) NO$NES page. I've also copied them here:
Spoiler
Show

Code: Select all

https://wiki.nesdev.com/w/index.php/Mouse

Hori Track

Hori produced a trackball compatible with Moero Pro Soccer, Moero Pro Soccer, Putt Putt Golf, and US Championship V'Ball. It was released in Japan, and what appears to be a prototype U.S. version was exhibited behind glass in Nintendo World, but the U.S. version never reached stores.

Report byte 1 is the embedded standard controller.

Byte 2, MSB first:

7654 3210
|||| ++++- Axis 2, signed 4 bit, XOR with $F
++++------ Axis 1, signed 4 bit, XOR with $F

Byte 3, MSB first:

7654 3210
|||| ++++- Unknown (read and unused by games)
||++------ ID byte (1 or 2 depending on version)
|+-------- Unknown (speculated by nocash to be the speed switch)
+--------- Rotation mode switch (0: R, 1: L)

In rotation mode L, Up on the Control Pad points up, axis 1 points down, and axis 2 points right. In rotation mode R, Up on the Control Pad points right, axis 1 points left, and axis 2 points down. 

Code: Select all

https://blog.world3.net/2010/04/hori-famicom-trackball-protocol/

Hori Famicom trackball protocol

I just finished adding support for Famicom/NES trackballs to the Retro Adapter firmware. I can now use it as a mouse :-)

The protocol is quite simple. Data is read from the controller in the same way as a normal gamepad. The first 8 bits are the same, followed by 4 bits of y axis offset and 4 bits of x axis offset. Finally there is an ID nibble of 1000. The axis data is in two’s complement format, most likely just the output from some up/down counters.

I opened the trackball up for a look and it uses a custom Hori controller IC labelled “TRK-81-R01” and “BU3219 844 315”. The only other components are two optical encoders for the ball, two switches (high/low speed, left/right handed), a few resistors, a single power supply capacitor and a 4093 Schmitt trigger. The two ICs are both DIP format. The PCB is single sided and does not use any jumper wires; however there is a patch wire which corrects a off-by-one-pin wiring error. The whole thing could be done in pure logic ICs but Hori must have thought it was cheaper to use a custom IC. Considering the age and limited popularity of the device that’s somewhat surprising.

Unfortunately the deletionists destroyed the Wikipedia article on Hori.

Code: Select all

https://problemkaputt.de/everynes.htm

Hori Track

  Moero Pro Soccer (J) 1988 Jaleco
  Operation Wolf (J) (U) 1989 Taito (also supports Zapper lightgun)
  Putt Putt Golf (FDS) 1989 Pack-In-Video
  US Championship V'Ball (J) 1989 Technos Japan Corp

Hori seems to have planned both NES and Famicom versions of the controller; as far as known, the NES version wasn't released, but, most of the existing games (except Putt Putt Golf) do contain both NES and Famicom controller protocol versions:

  Version   Input Data from      ID Bits   Connector   Released
  Famicom   [4016h/4017h].Bit1   0,1       15pin       Yes
  NES       [4016h/4017h].Bit0   1,0       7pin        No

Controller Bits:

  (to be preceeded by normal joypad like 1-then-0 strobing on OUT-0)
  1st..8th bit   --> Same as normal joypad data
  9th..12th bit  --> Axis 1, signed 4bit (MSB first, inverted, 1=Low=Zero)
  13th..16th bit --> Axis 2, signed 4bit (MSB first, inverted, 1=Low=Zero)
  17th           --> L/R mode switch (0=High=R-Mode, 1=Low=L-Mode)
  18th           --> Unknown/unused (probably SPEED LO/HI switch) (=?)
  19th           --> ID Bit1 (0=High=Famicom, 1=Low=NES)
  20th           --> ID Bit0 (0=High=NES, 1=Low=Famicom)
  21th..24th     --> Unknown/unused (read by software, but seems to be unused)
  25th and up    --> Unknown/unused (probably whatever padding bits)

Trackball Orientation:

  When 17th Bit=1:  (L-Mode) (supported by all games)
   Axis 1 is to be treated as Y-axis (POSITIVE = DOWN = towards DPAD)
   Axis 2 is to be treated as X-axis (POSITIVE = RIGHT = towards START/SELECT)
  When 17th Bit=0:  (R-Mode) (not supported by Operation Wolf)
   Axis 1 is to be treated as X-axis (POSITIVE = LEFT = towards DPAD)
   Axis 2 is to be treated as Y-axis (POSITIVE = DOWN = towards START/SELECT)

DPAD orientation is unknown (according to manual, it sounds like UP=Towards Ball, RIGHT=Towards B-Button) (in software, this should be probably always kept handled as so, regardless of the L/R switch).

   ___________       L-Mode         R-Mode       ___________
  |    ___    |\ __________         __________ /|    ___    |
  |  .'   '.  | |          |\     /|    _     | |  .'   '.  |  HORI TRACK
  | | BALL  | | |  STA     | |   | |  _| |_   | | | BALL  | |
  | |       | | |  // SEL  | |   | | |_   _|  | | |       | |  HORI ELECTRIC
  |  '.___.'  | |     //   | |   | |   |_|    | |  '.___.'  |  CO.LTD.
  |___________| |        A | |   | |          | |___________|  MODEL TRK-7
  |            \|    .''.  | |   | |  .''.    |/            |  MADE IN JAPAN
  |_____________|   |    | | |   | | |    |   |_____________|
  |     _          B '..'  | |   | |  '..' B                |  Note:
  |   _| |_    .''.        | |   | |        .''.       STA  |  L/R switch and
  |  |_   _|  |    |       | |   | |       |    |   SEL \\  |  SPEED LO/HI
  |    |_|     '..'        | |   | |        '..' A   \\     |  switch are at
  |________________________| |   | |________________________|  bottom-side
  | H O R I  T R A C K     \ |   | /                        |
  |_________________________\|   |/_________________________|

Manufacturer logo:

Image