83Plus:Ports:93

From WikiTI
Revision as of 21:02, 14 November 2010 by FloppusMaximus (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Synopsis

Port Number: 93h

Function: USB Read Packet Size

This port controls the maximum packet size allowed for data read from a USB pipe.

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 11. On the TI-83 Plus Silver Edition, this port has no effect.

Read Values

  • Unknown

Write Values

  • Bits 0-7: Maximum packet size for the current pipe, divided by 8.

Comments

This port tells the USB controller the maximum allowed packet size for data read from the current pipe. (The "current" pipe is determined by port 8E.)

The value written to this port is the maximum packet size, or the wMaxPacketSize field in the endpoint descriptor, divided by 8. For an endpoint with a wMaxPacketSize that isn't a multiple of 8, you should presumably round up.

In host mode, it's important to know the maximum packet size for incoming endpoints, so that the USB controller can schedule transactions properly. I'm not sure what effect this port has in peripheral mode. In any case, it seems wise to configure this port, along with port 9A (bEndpointAddress / bmAttributes), and possibly port 9B (bInterval), before requesting any data from a pipe.