Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - BrandonW

Pages: 1 ... 5 6 [7] 8
91
Other Calculators / Re: TI game console?
« on: May 22, 2010, 04:10:49 pm »
There are several usb8x bugs to be fixed.
Can any of these bugs affect communicating with a flash drive?  What are the bugs you've found?

It's cool that you're learning more!  This is going to be very neat! ;D

Not just yet -- there are bugs like being able to send "large" (>128) byte control packets, which affects the Bluetooth driver. It can't be released until usb8x is updated first.

EDIT: I've found that the TI Presenter is Flash-upgradeable, through an I/O port no less. I extracted the firmware from education.ti.com -- it's only 75KB, which means we can upgrade it FROM a graphing calculator. Not only that, but I don't see anything verifying the image, with signing keys or anything. If we could determine what CPU is inside, we might actually be able to disassemble it and replace the firmware with whatever we want, all oncalc, truly making it a "gaming console."

92
ASM / Re: OS Programming
« on: May 22, 2010, 03:08:01 am »
Speaking of OS2, how is it going along? Any new features planned/done ?

No, because one or two larger projects with deadlines have to take precedence. As soon as they're done, I'll get back to OS2.

93
Using the OTG, couldn't you rewire the power to use, say, a 9v battery? That way, you could use a wifi adapter

you'd probably be stuck with a text based browser, though. Not even the nspire has enough ram for many pictures, even if its ram was empty.

Yes, you can wire up a 9V battery to the port and supply power to devices that way instead. http://brandonw.net/calculators/ has instructions on how to build such a cable.

The Bluetooth driver still has a long way to go, but there's enough to initiate communication between two calculators and transfer raw data back and forth.
The wifi driver is much further behind and requires specific devices -- the one I'd like to support most is the Nintendo DS Wi-Fi USB connector, as it supports functioning as an access point and has open-source Linux drivers we can study.

94
Other Calculators / Re: TI game console?
« on: May 22, 2010, 01:32:00 am »
I did get it, but unfortunately UPS didn't deliver it to me today like they were supposed to, so I'll have to wait until Monday to hook it up and tinker with it.

I did get the TI Presentation Link adapter however, and I'm having trouble communicating with it via direct USB. It's one of the more stubborn USB devices I've come across. I think that with the TI Presenter though, we'll end up with a deeper understanding of direct USB on the 84+/SE and maybe have more compatibility with more devices. There are several usb8x bugs to be fixed.

95
TI Z80 / Re: TI Basic Editor
« on: May 22, 2010, 01:18:03 am »
keep in mind app compiling on calc will most likely take several minutes, though, according to BrandonW. App compiling would most likely be a computer-only feature

I never wrote a program that re-signed a Flash application, but I did write one that re-signed the OS (and fixed the self-test checksum) at http://brandonw.net/calcstuff/resign.zip , which is basically exactly the same math and would take exactly the same amount of time.

I just thought I'd post the link so you guys could see it for yourself, if you're skeptical. I "hook" into a boot code math subroutine to do the dirty work, which could probably be heavily optimized, but I don't see it taking any less than 5-10 minutes.

96
ASM / Re: OS Programming
« on: May 21, 2010, 11:57:52 pm »
I feel like starting an OS. It probably won't get far, but there are a few things I felt I needed to ask.
From what pages can protected ports be accessed? (like flash unlocking, etc.)
What flash pages must contain what? what can't be touched?
Where can I find documentation on accessing flash?

Thanks for any help.

Protected ports can be read from and written to from "privileged" pages or sectors, which include pages: 2Fh/6Fh, 1Ch/3Ch/7Ch, 1Dh/3Dh/7Dh, 1Fh/3Fh/7Fh.
Flash page 00 is permanently fixed in the first bank, or address range 0000h to 3FFFh, so it must contain the boot sequence at 0053h, OS valid markers at 0026h (if memory serves) and 0056h, and the interrupt at 0038h (if your OS has an interrupt, which it almost certainly will).
The boot code, or more accurately the boot sectors, cannot be modified. They include 1Fh/3Fh/7Fh on all models and additionally 2Ch/6Ch to 2Fh/6Fh on the 84+/SE.
The certificate area is Flash page 1Eh/3Eh/7Eh and it's highly recommended that you never touch this Flash page as it's a data-only page, contains calculator-specific information such as the calculator ID and license updates, Press-to-Test/Testguard2/Flash application bitmaps, and other stuff. Corrupting this area of memory also has the potential to permanently brick a graphing calculator (the only known way to do so through software).

You can find documentation on accessing the Flash chip from the chip documentation, WikiTI, and PongOS, though quite frankly, it's not really necessary -- the boot code already has routines that wrap this stuff up for you, such as _WriteFlashUnsafe, _EraseFlash, etc.

I'm stuck. How does dual booting work? I can't seem to figure it out...

There is no standard for dual booting. The only known third-party OS to do it is OS2, and its method is rather involved.

Because OS2 only uses six pages, 00h to 03h and 7Ch to 7Dh, and because there are six pages of Flash memory not currently in use by any OS (pages 6Ah, 6Bh, and 70h to 73h), OS2 can store six pages of itself and the six pages shared with the TI-OS. By swapping between pages 00h-03h and 7Ch-7Dh and the unused pages, it can get away with dual booting. (Note this doesn't apply to the 73 or 83+, which don't have a sector 70h -- they don't have enough space for dual booting and so it's not supported on those.)

The actual swap is fairly trivial -- back up the first sector (pages 00h to 03h) to the swap sector (typically 08h, but can be 0Ch or frankly any sector that starts with byte 0FEh), erase the first sector, copy the unused sector (pages 70h to 73h) to the first sector, erase the unused sector, and copy the swap sector to the unused sector. Then do the same thing involving pages 7Ch-7Dh and 6Ah-6Bh (which is a little trickier since it shares a sector with the beginning of Flash application space (68h-69h)).

To make the swap possible oncalc, there is a specific key sequence you hold on boot. On OS2, this is [ON]+[X,T,theta,n]. Part of OS2's startup sequence is to check for this key combination, and if detected, present a "Switch OS?" menu and do the above.
The problem here is that the TI-OS also needs this key sequence, which requires patching its startup sequence (at 0053h) to check for the key combination, and if not pressed, boot normally, otherwise present the same menu as above.

After OS2 is installed on a calculator, you can place it in a special mode to receive a copy of the TI-OS. This works like a typical OS transfer, except instead of writing the data from pages 00h-03h and 7Ch-7Dh to the actual pages, it writes them to the extra Flash pages instead. It also patches page 0 in memory to include the [ON]+[X,T,theta,n] check.

Needless to say, dual booting is an advanced feature, as is writing an OS at all, so I highly recommend taking your time and not getting discouraged. It's quite literally the largest calculator project you can undertake, and no one has ever successfully completed it.

Hope that helps.

EDIT: By the way, sector 70h is explicitly checked by the OS to make sure it's empty, and if not, it erases it. This check is also patched out of the TI-OS by OS2 when it receives it.
And also, the SVN repository of the source is at http://brandonw.net/svn/calcstuff/OS2/ if you want to see this nightmarish stuff for yourself.

97
Other Calculators / Re: TI game console?
« on: May 14, 2010, 04:10:28 am »
The slowdown on an actual ViewScreen model is non-existent as it's just connected to the LCD controller hardware; the processor has no hand in it whatsoever.

I think he means the 84+/SE and 89Ti, which have to constantly output data to the direct USB port. As far as the answer...I don't know. :) We'll find out soon enough.

98
Other Calculators / Re: TI game console?
« on: May 13, 2010, 10:35:51 pm »
I just bought it. (It's the TI Presenter.)

The 84+/SE OS has built-in support for this device and directs the LCD contents to it. I'm hoping to write a driver that lets us write whatever we want to it instead, potentially working even better than the actual LCD.

99
Will the current PTT patch work with that OS or would it be better to not take any chance?

And lol tifreak8x it would actually be funny if they eventually hired Brandon as programmer. Once and for all the OSes we would get would finally have all their bugs fixed or maybe run faster :P and maybe if TI listened to him their OSes would finally have features the community wants

Press-to-Test patches should work fine. By design, this 8XU has very few changes from the official TI-OS -- the point I want to make is that this is in no way malicious. It literally only fixes their bugs and nothing else.

100
There's a separate thread on United TI about the many Omnicalc problems. OS 2.53MP to some extent was an attempt to obsolete some Omnicalc features, like parentheses assistant, and Omnicalc deals with a lot of OS integration which 2.53MP would surely break. It's not so much the OS' fault.

Has CalcUtil been tested with the updated 8XU? If so and there's still a problem, what exactly is the issue? What could easily be done to duplicate it?

101
This doesn't include the Press-to-Test patch; this ONLY fixes the bug that causes xLIB incompatibility.

If there are other bugs or issues you'd like to see fixed, by all means, please let me know! I would really love to dig into this OS and get it straightened out once and for all.

Just let me know what the issue is and how to very easily duplicate it and I'll dig into it. Via IRC would be best since I can go back-and-forth with you on it.

102
Other Calculators / Re: Does Anyone Have a TI-76.fr or TI-82 Stats.fr?
« on: January 07, 2010, 12:30:38 pm »
Nice! I can't wait to see how this turns out.  Do you mind telling us where you found them?

I had someone in Europe offer to ship them to me.

103
Other Calculators / Re: Does Anyone Have a TI-76.fr or TI-82 Stats.fr?
« on: January 04, 2010, 09:29:36 pm »
They do have Flash memory. Their hardware is identical to the 83+, as evidenced by the information on datamath.org obtained by taking them apart. The TI-82 Stats is similar to the 83, but the 82 Stats.fr and 76.fr are closer to the 83+.

I already bought one of each, and they're on their way here.

104
Other Calculators / Does Anyone Have a TI-76.fr or TI-82 Stats.fr?
« on: January 04, 2010, 02:58:47 am »
Does anyone have a TI-76.fr or TI-82 Stats.fr (not TI-82 Stats)?

I will be coming across one of each and I believe that because they're so similar in hardware, that they can be converted to 83+s, just like TI-73/Explorers (via Chameleon).

I'm curious if it would be worth it to put the development time into expanding Chameleon (or coming up with something new) to make that possible.

105
ASM / Re: Unlocking Flash
« on: August 31, 2009, 06:59:47 pm »
I'm not sure anyone has started modifying the TI-OS, but we shouldn't promote that kind of discussion publicly as it is most definitely illegal in every sense of the word. (Also, we've been patching and modifying the TI-OS for years, long before any of this.)

Third party OS installation has never before been this easy; you just transfer it the same exact way you would the TI-OS. That's the beauty of it.
The TI-73 freeware Flash application key has also been cracked, making it possible to create TI-73 Flash applications that work just like 83+ ones do.

Pages: 1 ... 5 6 [7] 8