Calculator Community > ASM

WikiTI

<< < (4/21) > >>

Xeda112358:
Wait a minute, can I access the second boot page? I can practically read hex...

SirCmpwn:
Yeah, I have the USB8X source code lying around, but it depends heavily on TIOS routines.  I would also probably write most of that stuff from the ground up, considering that it has no support for hubs, and is a bit outdated.

FloppusMaximus:
Oh, yeah, I was starting to write up documentation of the USB ports at one point.  Then I got distracted by something else.  That seems to happen a lot.


--- Quote from: SirCmpwn on November 09, 2010, 11:16:43 pm ---Yeah, I have the USB8X source code lying around, but it depends heavily on TIOS routines.  I would also probably write most of that stuff from the ground up, considering that it has no support for hubs, and is a bit outdated.

--- End quote ---
USB8x doesn't actually use the OS routines for very much - there's not very much interesting stuff the OS routines can do.  The main thing USB8x relies on the OS for is USB interrupt handling, and that's because there isn't any other choice if you're going to use IM 1.  (But that should be pretty easy to re-implement yourself if you want to.)

It does have some basic hub support - if a hub is connected, AutoSetup will turn on the ports one by one and try to connect to the first non-hub device it finds.  I'm not sure how much more is physically possible, as I'm not sure that there's any way to talk to, or listen to, more than one peripheral device at a time.  But I haven't tested anything to do with hubs myself.


--- Quote from: SirCmpwn on November 09, 2010, 11:00:54 pm ---Well, we know almost nothing about those ports.  We pretty much have to use TI's routines, which I can't steal and put in KnightOS unless I'm clever about it.  With the information we have, I could probably manage unit-to-unit file transfers, but for advanced stuff like unit-to-PC and peripherals such as flash drives we need more documentation.

--- End quote ---
Which ports are we talking about here?

And talking to a PC is easier than talking to another calculator: in the former case you only have to deal with peripheral mode, whereas in the latter case you need both host and peripheral modes.  And maybe SRP and HNP.

SirCmpwn:
Ports are most of the USB ports, if WikiTI is anything to go from.  As for USB8x, I'll have to look deeper into it, thanks for the heads up!
Talking to another calculator looks absurdly easy - port 4D looks like it could be used in a similar manner as the I/O port.

FloppusMaximus:
Oh, I see.  You mean going around behind the USB controller's back, as it were, and controlling the data lines individually.  I don't know if that's even possible - as far as I know, the set of low-level operations that the CPU can control is pretty limited.

And it wouldn't be compatible with the OS or with standard USB devices, and you'd be relying on the least-well-understood parts of the hardware, and it would be much slower than using the USB protocol, but who knows?  Maybe it's worth a try.  I suspect that using the USB protocol would be easier and more rewarding, though.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version