setting the record straight
Wednesday, March 19th, 2014 1:35PM
I've been getting a lot of e-mails about this "Skylanders Editor" floating around out there -- I did NOT write that application. As far as I know, some anonymous person wrote that in C++.
All the code I wrote was in C# and was NOT shared publicly. It was, for a very brief time, publicly accessible *if* you knew where to look for it (and I never told anyone where it was). Sometimes I use the site to temporarily push files around between my computers out of convenience, and that was the case with that file.
Activision apparently scanned my site during that time looking for anything incriminating and found that file, accusing me of distributing tools to circumvent the game's protection. I'm not aware of anyone other than them (and myself) ever retrieving that file (and I'm sure it goes without saying that the file is long since gone and will never be back).
So, if you see code out there pertaining to that game, I did not write it...and therefore I can answer nothing about it, because I don't know.
more uDraw updates
Saturday, December 21st, 2013 10:20AM
I added Wii support to the uDraw tablet driver/application thingy.
Check it out
if you're interested.
Friday, January 11th, 2013 9:36PM
I added Xbox 360 support to the uDraw tablet application/driver thingy, as well as multiple tablet support, customizable button mappings, absolute vs. relative movement, and a couple of bug fixes.
Check it out
if you're interested.
xbox 360 security documentation
Thursday, November 29th, 2012 9:09PM
I put together a little documentation (little being the operative word) on the Xbox 360 controller security handshake, since people seem to be asking about that.
Check it out here
if you're curious.
magnetic stripe reader for android
Wednesday, May 2nd, 2012 9:43PM
Magnetic stripe reading via audio mic jack (via Square reader or equivalent) is nothing new, but I was surprised to find that no code has been published for Android or iOS that actually does it. Those who claim to have done it just describe the process and then withhold the code.
It motivated me to write the code myself, and now that I have, I know how tedious and involved it became to test and implement it. So, having said that, here it is:
Hopefully it helps somebody out. If it did, I'd love to hear about it
Xbox 360 X value decryption
Friday, April 6th, 2012 4:21AM
Nothing new here, but I put up a little mobile-friendly page to decrypt and decode the "X value" from the Xbox 360's "Console Information" screen, which can tell you whether your console has been flagged for a ban (and various other things).
I figured it'd be useful to someone on-the-move and checking the status of used consoles from their phone, or something. Check it out
if you're interested -- and if it actually helps you out, I'd love to hear about it
use PS3 uDraw tablet on PC
Monday, February 20th, 2012 11:04AM
I took a little time to flesh out some documentation and code for using the PS3 uDraw tablet on a PC. If you're interested, check it out
control xbox 360 from PC
Sunday, November 20th, 2011 10:18AM
I've released some code for the PC and TI-84 Plus/Silver Edition graphing calculators to form a bridge between an Xbox 360, graphing calculator, PC, and wired controller. With this bridge, you can sit in between the console and controller's connection to each other and insert button press events into the stream, effectively controlling the Xbox 360 from a PC or any device you can attach to
a PC. Check out the link for more information.
The setup can also be used to automate button presses from a PC (for tedious achievements, I suppose), or use other controllers attached to the PC (such as a Wii remote).
Hopefully it's of use to somebody.
skylanders portal documentation
Thursday, October 27th, 2011 6:35PM
If you haven't heard of the game Skylanders: Spyro's Adventure, do a little reading about it. It's a PC/console game that comes with a USB "Portal of Power" accessory that reads/writes to toys with RFID tags in them. When you place a toy on the portal, the character it represents magically appears in-game and you can play with it. The game also stores stats, upgrades, etc. to the character so you can take it with you wherever you go.
Why am I talking about it? Because I documented the protocol
it uses, and the encryption method used to store data on the toys.
I plan to work on emulating the portal using an 84+/SE or 89Ti for all the major consoles. And for the Xbox 360, it's especially interesting because I'll have to work around the Infineon security chip that protects the Xbox 360 from third-party USB peripherals.
I could go into further detail, but then I'd sound more and more crazy, so perhaps I'll wait until I get basic portal emulation working. Stay tuned!
UPDATE: And here come the Activision lawyers! Suffice it to say, I've been shut down, so uh...nevermind. :)
TI, when will you learn?
Monday, August 29th, 2011 2:31PM
As you may already know, the TI-84 Pocket.fr (a new calculator which is essentially a miniaturized TI-84 Plus) was recently released in France. It's a pretty neat little device, except for one thing: it contains a new version of the boot code.
This new boot code version, 1.03, adds 2048-bit RSA validation to the OS receiving process. This means after your calculator validates the OS' existing 512-bit RSA key (using keys that the community recently factored and rendered useless), it then spends a solid five to six *minutes* validating the OS using the 2048-bit key. That's five to six *minutes* of a legitimate user WASTED upgrading their OS or resending it to fix an issue.
Apparently Texas Instruments felt it necessary to inconvenience every TI-84 Plus/Silver Edition owner by adding an extra five to six minutes of validation time (sitting there not responding and displaying nothing but "Validating...") to combat the key factorings -- to prevent us from placing our own operating systems on our own hardware, and even to prevent us from downgrading to previous official TI-OS versions (anything below 2.55MP).
You should be outraged by this. I know I was. And to make it worse, they've started shipping standard TI-84 Pluses and TI-84 Plus Silver Editions with this boot code version.
But fear not: as is usually the case with TI security, this was broken a myriad of ways before boot code 1.03 calculators even started appearing in the US.
To find out if you have one of these calculators, turn it on and press [MODE], [ALPHA], [S]. At the top you will see "BOOT Code " followed by a version number. if you see 1.03 or above, you have one of these calculators.
There are SEVERAL ways to get around this "protection":
- Downgrade the boot code. Previously this was completely unheard of -- the boot code is supposed to be permanently read-only, but TI messed this up as well. You can reflash any boot code version you want for your model by downloading an assembly program called Flashy and running it on your calculator. You will also need what's called a "Flashy AppVar", which is a specially-formatted AppVar containing an image of the boot sector(s) you want to flash for your calculator. Because this contains TI copyrighted code, I can't link you to these images -- but using tools that come with Flashy, you can make your own image if you have access to another (same model) calculator with the desired boot code version. Or you can just find the pre-made images available elsewhere.
- Patch the boot code to remove the 2048-bit signature validation. This was also previously unheard of as you aren't supposed to be able to modify the boot code. All you have to do is run an assembly program called EpicFail (a reference to the rather-silly ability to modify the boot code), available here, and you won't have to worry about this ever again.
- Two boot code 1.03 exploits that can be used to load an unsigned operating system have been found, and I have no doubt that more are to follow. I won't link you directly to either of them from here; if you want to fix your own bugs, TI, do some research and figure it out (not that it'll help).
And finally, a note to Texas Instruments:
There have been more developments in the community in the past few weeks than in the previous months or even years, all because of your latest attempt to screw us. And so for that, I have to thank you. You've opened up new possibilities for adding emergency boot-time recovery utilities (to fix other potentially-brick-inducing bugs you've created), writing our own boot code to replace all of your copyrighted code, and countless other ideas.
You need to know that you caused this. The ability to modify the boot code would not have been discovered if you hadn't tried this. It is futile to try and prevent people from using their own hardware how they please, and though it's unlikely, I hope you finally take the hint this time.
Sunday, November 14th, 2010 5:29PM
In case you've been living under a rock the past couple of months, I should probably mention that you can now jailbreak a Playstation 3 console using PS3JB
for the TI-84 Plus/Silver Edition or PS3JB89
for the TI-89 Titanium!
Through these applications, and through buying the Beagle 12 USB hardware analyzer, I've learned quite a bit more about the USB controller in the TI-84 Plus/Silver Edition, including the fact that it's identical to the one in the TI-89 Titanium!
This means we can easily write a library similar to usb8x for the TI-89 Titanium, bringing all the USB goodness that 84+/SE owners have enjoyed (keyboards, mice, flash drives, external hard drives, etc.) to the TI-89 Titanium as well.
Unfortunately I have even less spare time than before, so stay tuned for more updates on stuff.
Thursday, August 19th, 2010 9:48PM
Ever since the fall of rafb.net/paste
, I haven't known what to do with myself when I needed to quickly pastebin something.
That's why I decided to recreate it at rafb.me
! It's a scarily accurate recreation of rafb.net/paste to suit all my and your pastebin'ing needs.
So what are you waiting for? Go on over and check it out
take a good look, TI
Friday, July 9th, 2010 12:42AM
Take a good look at it, TI...this is my calculator slidecase (thanks to Duncan Smith for etching it):
The factors to your TI-83 Plus OS signing key are now permanently engrained in select calculator slidecases all over the world. It's never going away
upgrade the TI Presenter
Sunday, June 13th, 2010 4:43PM
I've updated VS8x
to v0.02 to support upgrading the firmware of a TI Presenter connected via I/O port, which means this can work from any 83+/84+ series graphing calculator, not just the USB-equipped 84+/SE.
What does this mean for you? Well...not a whole lot, unless you'd like to brick your teacher's TI Presenter by initiating a transfer from your calculator and then yanking the cable while he/she's not looking. Not that I condone that or anything.
Through creating this, I had to create a BIN->8XK converter, which I've uploaded here
. This can be used to load very large (as in greater than 64KB) files onto your calculator so you can access them from assembly programs. It has potential future uses.
hands-on with the TI Presenter
Friday, June 4th, 2010 12:39AM
Recently I bought a TI Presenter and TI-84 Plus Presentation Link adapter so that I could play with the $300+ device that allows teachers to connect their TI graphing calculators to a TV.
In tinkering with it, I discovered that every 84+/SE has hardware support built in for the Presentation Link adapter by redirecting writes to the LCD controller to the USB port. Kind of makes you wonder why they didn't just slap a ViewScreen connector on every 84+/SE, like they do with the 68k series...
But anyway, I figured out how to disable this hardware assist and the protocol used by the Presentation Link adapter, so we can now write whatever we want to the TV instead of just the LCD's current contents. I've created a proof-of-concept Flash application demonstrating this here
(source at http://brandonw.net/svn/calcstuff/VS8x/trunk/
I've also created a YouTube video
showing the device, how it works, and what's possible with it, since there are no videos online anywhere about this thing.
fixing TI's bugs for them
Wednesday, April 14th, 2010 11:38PM
As you might've read about by now, TI released their impressive yet horribly-unstable OS 2.53MP (MathPrint) for the TI-84 Plus and Silver Edition. Since its release, there have been reports from all over the internet about assembly program (and BASIC helper program) instability and incompatibilities.
I tracked down the bug that was preventing xLIB from working correctly on OS 2.53MP: there's a bug in TI's parser code which they introduced when trying to refactor all the code that sets 0,(iy+7). After calling the parser hook with A=1, if the parsing operation is canceled by the hook, then the OS incorrectly sets 0,(iy+7) when it should be setting 0,(iy+6). This causes problems all over the place.
To patch this issue, you can (in the 8XU OS upgrade):
Change 6B5Bh to: 06
Change 6C85h to: CD D0 7F
Change 5C00h to: CD D6 7F
Change 5CA7h to: CD D6 7F
Change 607Dh to: CD D6 7F
Change 695Ah to: CD D6 7F
Change 6BFBh to: CD D6 7F
Change 7FD0h to: 21 01 00 22 61 96 FD CB 07 C6 C9
It's kind of sad that I have to fix this bug for them, but a patched 8XU OS upgrade is available here
I hope you take notice of this, TI, so that you can fix this and help everyone out, students, teachers, and "enthusiasts" alike. I'll make a deal with you...I'll take down your patched copyrighted 8XU if you fix your own bugs.
Ndless and Nspire8x
Saturday, February 27th, 2010 7:34AM
I'm very pleased to announce that the TI-Nspire and TI-Nspire CAS have been BROKEN and are now open to third-party development through the use of Ndless
, a PC installer which enables third-party programs by ExtendeD and geogeo! TI's efforts to secure this calculator have, once again, failed miserably.
Not only that, but I've released Nspire8x
, an 84+/SE Flash application that is sort of like "X-Link for the Nspire/CAS", allowing you to transfer variables back and forth with an Nspire/CAS connected via direct USB (usb8x). It also contains a port of the Ndless installer, so that you can install the Ndless exploit FROM a connected 84+/SE!
Ndless and Nspire8x took quite some time to make, and even though Nspire8x is the far less useful and practical tool, I'm glad I was able to take part in something so significant.
Now that this is out of the way, I can resume work on OS2, the third-party 73/83+/84+ series operating system supporting dual booting with the TI-OS.
By the way, no, Nspire8x was not the "secret project." It's going to be many months for that one, but I will reveal it does have a specific release date, so no slacking on it. :)
Sunday, January 10th, 2010 1:35PM
I've updated Chameleon
to sign the resulting 73U OS upgrade file, so you don't have to use the battery trick anymore. :)
I also added a RAMTest
program which quickly tells you if you suffer from the 80KB extra RAM page problem. The source is included if you want to copy/paste that routine elsewhere if you want to check from code.
The secret project is coming along well. You'll probably be seeing more minor updates to existing programs as time goes on. That's the only hint you get. :)
Wednesday, December 30th, 2009 6:45PM
It's been quite a while since I've posted anything, but don't worry, I'm hard at work on some exciting things.
All the projects are on hold until I finish the big secret calculator project I'm working on right now.
Instead of giving out hints, I'll just leave it up to your imagination.
Also, we can finally run unsigned code on the TI-Nspire
! ExtendeD came up with an exploit and a teaser JPEG of it in action.
It's definitely an exciting time to be involved in the community. Stay tuned!
signing keys and OS2 progress
Thursday, November 5th, 2009 10:40AM
All of the signing keys in their original format and the .key file equivalents can be found here
, so now anyone can sign or re-sign any OS or Flash application without issue.
Also, I'm continuing to work on OS2
, and I've finally gotten dual booting to work! With OS2, you can switch on-the-fly between OS2 and the TI-OS, giving people a reason to keep OS2 on their calculator and quickly and easily install updates and new releases.
Now that OS2 is finally beginning to have a purpose, I intend to release a compiled form of it so anyone can install and use it.
I've given some thought to moving it to SourceForge, Google Code, or similar, but for now, the SVN repository can be found at: http://brandonw.net/svn/calcstuff/OS2
DMCA takedown notices
Thursday, November 5th, 2009 8:55AM
The 83+/SE OS signing key in the below news post has been restored despite baseless legal threats from Texas Instruments
After receiving the notice, I sent a response
to Texas Instruments, which fell on deaf ears, and the Electronic Frontier Foundation
did the same
with the same result: silence.
The Electronic Frontier Foundation
is representing myself
, Duncan Smith
, and Tom Cross
in the fight to discuss and release our own operating systems for TI graphing calculators.
I hope that this has taught Texas Instruments and other companies that there's nothing to gain from baseless legal threats invoking the Digital Millennium Copyright Act. People, if you know that what you're doing is right, stand up for yourself, because good things do happen
and people CAN come to your rescue.
Do not be afraid of using, writing, or distributing third-party operating systems on the TI-73, TI-83 Plus/Silver Edition, TI-84 Plus/Silver Edition, TI-89/Titanium, TI-92 Plus, or Voyage 200. We have a right to do what we want with our hardware and the calculator community will not be stopped from doing so.
This is the start of a huge victory for calculator programmers (and hopefully others as well). It's not over yet, however, so stay tuned for more on the situation.
For (a fraction of) the articles about the legal fight with Texas Instruments:
Oh, yeah, and I also put up an RSS feed
if anyone's interested.
83+ OS signing key cracked!
Monday, October 26th, 2009 4:36PM
Yes, that's right, the 83+ OS public key has been cracked, enabling anyone to resign the TI-OS for the 83+/84+ series or sign their own OS without ANY other steps, making Free83P obsolete.
Benjamin Moody posted it on the United-TI forum, and here is the information in case the thread is deleted or something happens:
(all numbers in hexadecimal and Big Endian)
This is very big, people. RSA factorization of the 83+ OS public key is something the TI community has been dreaming of for nearly a decade, and here are the magic numbers, finally.
To Ben or whoever made this possible (we don't have the full story yet), thank you very very very much.
the realm of third-party OSes is here!
Thursday, July 23rd, 2009 9:34PM
It's been a long time since there's been an update, but don't worry, it's going to be worth it.
I've been working on the ability to sign our own third-party OS so that anyone can transfer a third-party OS to their calculator (any model) using any cable type (including direct USB) without having to fiddle with the so-called "battery trick" or any other scary magic. And I've had huge success.
I came up with a small program to modify your calculator's certificate to include a "0005" key I've created which anyone can use to sign their own OS. That small program is called Free83P
. All you have to do is run it and your calculator can receive valid, signed third-party OSes. And it persists across memory resets and OS transfers.
But how do you sign an OS with this so-called 0005 key, you ask? I've written a suite of tools to make that possible as well, called OS2Tools
. It includes VB.NET programs to take ZDS output and create a ROM, then hash, sign and build an 8XU OS upgrade file for transfer to a real 83+/84+ series calculator.
And now you might be asking yourself why it's called OS2Tools...the reason is that I've decided to jump on the third-party OS bandwagon and start my own OS called OS2. You can track the development of it at the SVN repository at http://brandonw.net/svn/calcstuff/OS2
I've also written a small VB.NET utility for calculating Intel Hex end-of-line checksums, and fixing/validating an Intel Hex file's checksums. You can find FixIntelHex
in the calcstuff
directory with lots of other goodies.
In the process of creating this, I bricked two 84+s and two 84+SEs by corrupting the certificate almost beyond repair. After a couple of weeks, I managed to come up with a small RAM program you can use from another I/O-connected calculator to transfer code via a boot code exploit and remotely execute it (thus erasing my certificate). I've uploaded that here
as well in case it helps someone else out of a jam. It definitely saved me.
Now, wasn't that worth the wait? :)
Chameleon and the SVN Repository
Sunday, March 1st, 2009 2:39PM
I finished Chameleon
and uploaded it to ticalc.org
, although you should probably look in brandonw.net/calcstuff
for the latest version.
It essentially allows you to turn your TI-73 or TI-73 Explorer into a TI-83 Plus by just using a few programs (no hardware modification required). It includes programs to take an 83+ 8XU OS upgrade file and convert it to a 73 73U OS upgrade file for sending to your TI-73.
So really this gives you the ability to buy a cheap TI-73 and convert it to get all the power of the 83+ (including the math programs like Symbolic, PrettyPrint, etc.).
I also created a public SVN repository at http://brandonw.net/svn/calcstuff
which will house the current source of all of my calculator projects, including the unreleased ones. If you want to know what I'm working on, just go there and find out!
If you use Windows, I highly recommend you download and install TortoiseSVN instead of viewing the link in a web browser so you can get access to the commit history and all. And if you're on Linux, then you already know what I'm talking about.
moving to new server
Thursday, January 29th, 2009 7:43PM
If you're reading this, then I've successfully completed the move to the new server!
I got ahold of new hosting that has some exciting features, like a public SVN repository. I plan to put all of my calculator projects up for public viewing, so if I'm working on something, you can know about it as it's happening, and see the code behind it.
That and more is on the way, if I can find the time. Stay tuned!
SmView and PatchPTT
Tuesday, October 7th, 2008 7:20AM
It's been a while since I've posted any sort of update, but I've been insanely busy lately.
I suffered a hard drive crash and lost a lot of stuff, but it turned out to not be so bad. I recovered a recent version of periph8x, and that's back on track.
I finally got a hold of TI-SmartView and was able to test SmView
to make sure it actually works. It turns out...it didn't. But I fixed it, and now it does! So now there's no need for that ginormous SmartPad Flash application anymore.
I've also uploaded an OS patch for the 84+/SE called PatchPTT
. It renders Press-to-Test, Testguard2, and the ON++/ key combinations useless. And even better, it works on the Nspire 84+SE keypad! So now there's no reason why anyone shouldn't upgrade to the latest OS, which is 2.43.
I'm also still working on documenting the remaining BCALLs...we're down to 144! I haven't updated the BCALL of the Day
page, but rest assured, I am working on it.
happy birthday to me
Monday, July 21st, 2008 12:42AM
Happy birthday to me! In other news...
Like this post
suggests, I was suppose to release an alpha of periph8x last week, but I didn't do it. Unfortunately, I've just been too busy. But I AM working on it, and it's close!
lots of stuff
Tuesday, June 10th, 2008 1:58AM
Uh-oh, look out -- the BCALL of the Day
is back! With only 167 BCALLs left (it was 430 when I started, and there are 1635 total), we can't afford to have this sitting around any longer.
The remaining BCALLs are all very deeply embedded in the OS. Some have potential to be useful, others not. Regardless, we need to understand what they do so we can have a complete list. Full documentation of this calculator's OS is a reality, people! Something to rival even that of their internal documentation! And this kind of information can spread to all the z80 series calculators.
I'm going to dive in and pick apart major pieces of the OS if only to explain one or two BCALLs at a time, which is what it's going to take to finish it and why I've hestitated until now.
I'm all ears for suggestions on how to make this more exciting for us all and keep this thing going, like people picking their favorite mystery BCALL for me to do next
, because it's not just me doing this, it's for the good of the community!
I've also added another 83+ puzzle
, although I don't expect it'll be solved anytime soon. :) I'm throwing it out there in the hopes that some poor soul got his hands on TI-SmartView and can help us all out here.
SmView and TI silliness
Monday, May 26th, 2008 3:36AM
Amazed at how simple it is to turn an OS 2.40+ equipped calculator into a TI-SmartView Input Pad, I wondered how TI gets people to activate it. So I scoured education.ti.com
for the accompanying Flash application, and I found SmartPad. I was curious how TI was handling USB connections/disconnections, so I disassembled it. And I found a small, yet horrible, mess.
I was so tempted to come up with a "Stupid Disassembly of the Week" section, but I know I'm not going to keep it up-to-date.
For starters, the whole application is 2.3KB, including the header (which is at 4070h, not 4080h, so they're not following their own examples, probably just to screw us), validation data, and who knows how many different language localization strings, I couldn't even count them.
They have code in there which would fail if they ever came out with a 3.x OS, which is fine, I guess...we know they'll never get that far in updates without also updating this application. It irks me that they check the OS version and THEN the hardware version...because the minimum OS version they check for won't run on hardware versions below what they need. Just more stupidity about them not knowing their own calculators.
They also duplicated the code to _GetCSC. That was completely unnecessary. You just have to wonder sometimes...
But anyway, disgusted by this, I wrote a 427 byte program to replace it, called SmView
. Just run it and it does the same thing SmartPad does. So that saves you about 15.5KB, which, if you have an 84+/SE, you probably weren't that desperate for anyway.
I also uploaded the corresponding documentation and their cryptic key codes here
Tuesday, May 20th, 2008 12:31AM
I've uploaded a small remote control program for the 83+/84+ series called remote8x
...which supports both the I/O and direct USB links, which makes it the first of its kind.
The source is included, of course, which has simple, documented routines for sending and receiving bytes over direct USB. Now anyone can make calc<->calc or PC<->calc programs with very little overhead and memory (the entire program is ~826 bytes). Dig into it and make something useful, already, people!
code writer's block
Saturday, May 17th, 2008 1:36AM
I'm finally out of my code writer's block with periph8x (there was a partition issue that was plaguing me for weeks/months), and I'm making real progress on it!
The 84+/SE is now showing up as a 2MB FAT16 USB mass storage device when you plug it into a PC, complete with drive letter and "RAM" and "FLASH" subdirectories, which is where you'll see listings of 8x* files that represent your calculator variables.
You'll be able to copy, move, and delete files on and off the calculator, completely eliminating the need for linking software, and enabling you to take your calculator anywhere with an internet connection and do what you need to do with it.
It also includes a USB keyboard driver so you can take your calculator anywhere and use it to type on any PC, and a calculator driver to replace the current silent link functionality built into the OS. The only thing I haven't really touched is the mouse/gamepad driver, which I think should be pretty trivial, so I'm putting it off for later.
I'm working on getting RAM variables to show up in the "RAM" subdirectory, and then I think I'll be at a point where I can start releasing public betas, and we can all get involved in this really exciting project that I'm sure is going to change things for the 84+/SE.
I also ordered a desktop USB missile launcher, because it turns out that it would be really easy to write a driver for it (in fact, it wouldn't even need to be a Flash application). And...who wouldn't want to set their 84+/SE to use the clock and launch a missile from a hidden corner of the office or classroom at a specific time?
Sunday, May 11th, 2008 10:10PM
I've uploaded a new Flash application for the 84+ and 84+SE called UnivOS
. It's a signed/unsigned OS receiver...but for the direct USB link!
Yes, now anyone can install a third-party OS, regardless of cable type or calculator model. If you have an 83+ or 83+SE, simply send a carefully-modified OS and pull a battery during validation, or if you have an 84+ or 84+SE, you can use LinkMan
for an I/O graph link cable, or UnivOS
for the direct USB cable.
I'm also pretty sure this is the first calculator program/application released to support the direct USB link protocol.
This also works when transferring an OS between two calculators. So play around with it...run PongOS, or write your own OS!
Saturday, February 2nd, 2008 3:34PM
I added a new section on solving 83+ puzzles
. I'll post mysteries about 83+ oddities, and it's up to you guys to find out the answer and post about it.
You don't win anything, it's just something to do if you're bored.
And you know I must be bored to come up with it, but I think there should be more of an interest in these kinds of things. And if you're not a programmer...browse through it, you might learn something you didn't know before.
Friday, December 28th, 2007 11:50PM
I joined Detached Solutions
! Yay! I remember way back when this was THE programming group to pay attention to (it still is), hoping that one day I'd join it, and here we are!
I'm also working on an 84+/SE USB peripheral driver, so that the calculator can pretend to be a USB keyboard and mass storage device (but not at the same time, obviously). You'll be able to use it as a USB keyboard, and also hook it up to any PC and have it show up as a FAT16 USB flash drive, with the ability to copy 8x* files directly to it, and copy variables off it as 8x* files. Definitely a huge project, and one that'll take a long time.
I have a video
of it acting as an unformatted USB mass storage device, which is worth watching if you're bored.
Tortoise and Free73!
Monday, November 19th, 2007 12:01AM
TI-73 owners, rejoice...I wrote a certificate patcher for the TI-73 so that it can accept freeware Flash applications that we sign ourselves. I've called it Free73, and it's located here
It's a one time only program you run once and then forget about! Then you can run all the user-created 73 Flash applications you want.
It also paves the way for third-party 73 and 83+ series OSes that we sign ourselves. Even TI's software would be able to send PongOS (or whatever) to your 84+/SE! Imagine that!
That's not much news in itself unless there's a 73 Flash application to go along with it...and you're in luck! I created a shell called Tortoise
which will launch all Mallard-compatible programs.
For later releases, I intend to add all sorts of hooks to Tortoise and a pseudo user archive where you can embed variables directly into the application itself, immune to RAM resets. You'll be able to move them back and forth between RAM and the application.
The goal is to make it like MirageOS on steroids. Hopefully we can finally make the 73 what we want it to be, and get it in the game with the rest of the z80 calculators.
screw up your 73/83+/83+SE/84+/84+SE
Thursday, October 25th, 2007 1:09AM
Yes, now you too can semi-permanently brick your 73 or 83+/84+ series calculator
Seriously, though, don't run this. I just created it because I could.
It DOES have the capability to mess up your calculator permanently, and almost certainly will if you have an 84+/SE!
You might also notice there's a TI-73 assembly program in there...that's right, no shell! The TI-73 has built-in assembly support, and it always has. I didn't find it, but I wrote some dev tools
so that others can use it. You can run them as you would BASIC programs, and even embed assembly inline within BASIC programs! And now you can destroy your 73 with this newfound knowledge.
oncalc USB printing?
Sunday, August 5th, 2007 6:41PM
It seems Hank and Steve, two people who helped write the 84+/SE OS, had a little too much fun with their USB printer.
to find out what I mean.
Saturday, August 4th, 2007 9:15PM
I finally managed to find an old HP printer which uses PCL and would print straight ASCII text, but it's being fussy with me right now (quits printing after ~20 characters, number varies). Odd. But anyway, I'm hoping I can have a semi-useful release of print8x really soon.
After receiving death threats about it (no, really) I put up another BCALL of the Day entry. Don't worry, I haven't given up...just busy.
I've also come up with an idea for another Flash application called RAMHooks (for now)...it's basically a library where small RAM programs can call it and embed their hooks INTO the application (by writing them to the archive), which allows for lots of small RAM programs to keep their hooks protected in the archive, and no wasting ~15KB just for a simple hook. Who knows how useful it'll be, but, yeah.
I've been pretty busy with work, and Summer of Code is coming to a close, so who knows when I'll get around to stuff.
expanding to LinkMan
Sunday, July 1st, 2007 6:27AM
I've decided to expand on LinkMan
so I can have a reason to upload it to ticalc.org. If you don't know, LinkMan is a TI-83/84 Plus Flash application which controls all aspects of linking and silent linking. You can:
- Log what and when link stuff happens (to RAM page of your choice on SEs and 84+, AppVar on original 83+)
- Receive unsigned OSes on both 83+ and 84+ series (with your own prgmUNLOCK which unlocks Flash, not included)
- Send unsigned OSes to 73, 83+, and 84+ series (even if the other calculator cannot run it)
- Receive variables from other model calculators (85, 86, 89, 92, 92+, Voyage 200) and store them in AppVars (compatible with X-Link)
- Send other-model variables back to the original calculator (85, 86, 89, 92, 92+, Voyage 200) (compatible with X-Link)
- View contents of other calculator on your own screen and request any variable
- Send any variable to connected 83+/84+ series calculator through silent linking
- Remote control of connected 83+/84+ series calculator
- Ignore all silent link communication
- Actively reject all silent link packets
- "Stealth" mode, which receives and accepts all variables and commands, but will NOT store or act on them (including Testguard2/Press-to-Test)
- Choose another program to run when receiving "remote program/application execution" packet
- Run a BASIC/assembly program when any communication is detected
- Remotely view any address and page of the other calculator's memory
- Remotely execute any code on the other calculator
This supports both the serial I/O link and USB SilverLink cable (84+/84+SE only) through the usb8x driver.
So, I guess you could say it's Calcsys for linking. Or something. Anyway, it's about halfway done (the currently-uploaded one
is a very old version that pretty much just receives unsigned OSes).
Saturday, June 30th, 2007 1:02AM
I finished FlashDrv
It's a very controversial application and so I'll just let you download it (if you want) and see what you think. DO NOT do anything stupid with it, and have fun.
BCALL of the Day milestone
Monday, June 25th, 2007 6:36AM
I'm proud to announce that I've officially lost half of my sanity, which of course means that I'm halfway through all the BCALLs!
I'm currently at 212, and I started at 430. There are many, many more clumped together that once I figure out, I can knock out all at once, so expect that number to keep falling!
Also, there are many OS routines that appear to be simple, but the logic behind them just boggles my mind. For example, there are lots of math routines that I just do not understand, so I'm thinking of starting a page with challenges, where you try to understand what the code's supposed to do. And the prize, of course, is that you get all the credit for it.
I'm well aware that no one actually visits this site or wants to disassemble BCALLs, but bear with me on this, I just told you I'm halfway insane. :)
Thursday, June 14th, 2007 8:02AM
I've written an 83+/84+ shell-like thingy (Flash application) called Noshell
. It installs a parser hook which allows you to run any program (that's BASIC, assembly, MirageOS, and Ion, regardless of being in RAM or archive) as if it were BASIC (meaning without Asm( or a shell such as MirageOS).
It also supports program writeback (as an option) and chaining with other parser hooks (such as xLIB). I highly suggest you check it out
FlashDrv and BCALL updates
Friday, May 11th, 2007 2:57AM
I've uploaded more BCALL documenting progress
, namely notes on the BCALLs I don't feel I know well enough to officially document or give a name.
There are ~30 OS 2.30 BCALLs (of the 155 that were added) which still have no notes, and of course many of the originals (though I'm sure that almost all of them are related to one or two things (list editor and mouse routines)).
Anyway, I've at least skimmed through every unknown BCALL, so there are no more real surprises. :( But that doesn't mean it's over.
Also, I've uploaded a library I'm working on for assembly (and BASIC?) programmers to allow easy writing to Flash. This is almost certainly illegal, so I'll probably get a cease-and-desist order or something.
Anyway, the intention is to allow for safe and easy methods of doing things like creating large variables directly in the archive.
It's nowhere near completion, but it does do some interesting things
, so it might be worth checking out.
fake memory clear application
Wednesday, May 2nd, 2007 1:47AM
I've written a fake memory clear application for the 83+/84+ called Fake.
I made a nice separate page about it here
, so Google and all kinds of cheaters can find their way to it. As far as I know, it's the best and most flexible out there.
Check it out
, or just laugh at the source or something.
BCALL of the Day restarted
Wednesday, April 11th, 2007 4:56AM
As you may or may not have noticed, I fell behind on maintaining the BCALL of the Day
page...I missed so much time that I'm just going to add new ones from here on out.
But don't worry, I haven't been slacking...I cut the incomplete list
down to 284
BCALLs! We're well on our way to full 83+ documentation.
BCALL of the Day!
Wednesday, March 7th, 2007 11:14AM
I've put up a BCALL of the Day
Every day, a new BCALL will be documented, explained, and added to that page as well as WikiTI
, unless it's so dumb I don't even feel like putting it there.
There are currently 365 unnamed BCALLs; we are close to finding them all...we can and we will succeed!
If you want to help out, check out the incomplete list
as well as the other documents
that can help.
Thursday, March 1st, 2007 7:58AM
I'm on a calculator programming rampage.
I've been documenting
lots of BCALLs and finding silly exploits on the 83+ series. I've uploaded almost all of them to /calcstuff/
in one form or another. A few things inside:
- Universal Flash-writing method
- Semi-universal calculator ID-retrieving method
- OS 2.41 Flash-unlocking exploit
- Oncalc Flash application creator
...and other stuff. These things are kind of scary (and illegal), so that's about all I'll say about it.
On other fronts, I've created an oncalc OS receiver for the 83+ series (requires Flash to be unlocked first)...the implications of this being able to install third-party operating systems on any calculator, not just the 83+/SE.
The receiver is embedded with another application I've created called LinkMan
which lets you control all aspects of silent linking, such as remote program execution, ignoring or rejecting all commands, "stealth" mode, and so on. It's supposed to do more and work better, but I'm tired of working on it. There's enough there already to be semi-useful. Download it
to find out more.
And using all of the above, I'm going to work on msd8x some more and add Flash application and group file importing/exporting...if I find the time, anyway.
project pages created
Saturday, January 6th, 2007 5:50AM
The 84+/SE USB drivers I've been toying with now have their own project pages
(get it? Timex...Time8x...) will communicate with the Timex USB Data Link watch and allow uploading/downloading of watch data and WristApps.
will let you connect your 84+/SE to a wireless access point by way of a wireless ethernet adapter. The intent is to only support the Atmel AT76C5XX and Ralink rt2500 chipsets, though. Still, this'll be huge, assuming it gets off the ground.
These pages are probably the only reason you'd want to be here (except Scar the Shoals
), so check back often.
Monday, November 27th, 2006 6:25AM
the new 84+/SE printer driver, or rather the pre-alpha version of it.
This driver's going to require a lot of help from other people and their printers. If you're able to try it, please do!
back to being idle
Saturday, November 18th, 2006 11:20PM
The logging in/out and forum are written, so that means this site's done and I can go back to not touching the site for a really, really long time.
Maybe I'll throw up an RSS feed so people don't even have to bother coming here.
updates and stuff
Saturday, November 18th, 2006 8:19PM
Lots of updates...
The Xbox project page
has been updated with the current status, and the calculators
page has been updated for the >100mA USB power circuit.
And...the forum/registration/logging in is broken. Actually, they're not written yet, so that's understandable.
even more pi
Saturday, November 18th, 2006 8:18PM
The pi search page
has been improved to search through 50 million digits
! It also tells you the time it takes to search it and delivers some depressing news (maybe).
Saturday, November 18th, 2006 8:18PM
Just to demonstrate how warped my priorities are, click here
to search through 4 million digits of pi for whatever string or group of numbers you like.
Why did I do this instead of getting the news script up? I don't know.