From WikiTI
Revision as of 14:20, 14 August 2013 by Dr. D'nar (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
This port only exists on the the TI-84 Plus and the TI-84 Plus Silver Edition. On the standard TI-83 Plus, it acts as a shadow of port 06. On the TI-83 Plus Silver Edition, this port has no effect.


Port Number: 8Eh

Equivalent HDRC port: MGC_O_HDRC_INDEX (0x0E)

Function: USB Pipe Number

This port controls which USB pipe is currently selected for I/O operations.

Read Values

  • Always 0.

Write Values

  • Pipe number (values 0 to 3 work; I'm not sure about other values.)


The USB controller supports 4 (or possibly more) separate "pipes", which can be used to perform multiple USB transactions simultaneously. Pipe 0 is always used for control transactions (endpoint zero), and behaves strangely in many ways. The other pipes can be used for bulk, interrupt, and/or isochronous transactions; they are typically mapped to endpoints 1 to 3, but do not necessarily need to be.

This port has no effect on its own; it merely determines which pipe is used by subsequent I/O operations. The following ports are affected by the currently-selected pipe:

  • 90 and 93 - maximum packet size
  • 91 and 94 - pipe command/status
  • 96 (and possibly 97) - number of bytes received
  • 98 and 9A - endpoint address and type
  • 99 and 9B - polling interval