Omnimaga

Omnimaga => News => Topic started by: KermMartian on March 18, 2013, 09:09:13 pm

Title: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: KermMartian on March 18, 2013, 09:09:13 pm
Long have we known that the TI-83 Plus calculator, and its predecessors like the TI-83 and TI-82, can be overclocked by replacing a single capacitor. Those calculators use what we electrical engineers call an RC tank, a circuit created from a resistor and a capacitor that oscillates. You can create an RC tank circuit that oscillates at f Hz by picking a resistor value R and capacitor value C such that f = 1/(2πRC). Unfortunately, RC tanks are quite sensitive to temperature and battery voltage, and tolerances (manufacturing variations) of resistors and capacitors mean that RC tanks in the real world don't produce precise frequencies. Therefore, for the TI-83 Plus Silver Edition (http://www.cemetech.net/tools/ti83pse) and its children the TI-84 Plus (http://www.cemetech.net/tools/ti84p), TI-84 Plus Silver Edition (http://www.cemetech.net/tools/ti84pse), and TI-84 Plus C Silver Edition (http://www.cemetech.net/tools/ti84pcse), Texas Instruments logically switched to a crystal oscillator. Until very recently, we believed that the fixed speed of the oscillator meant that overclocking the later calculators was extremely difficult, if not impossible. However, one bricked calculator and one overclocked calculator later, with extensive photography and co-experimenting help from DrDnar, I have successfully overclocked a TI-83 Plus Silver Edition to run at 6.03 MHz, 15.95 MHz, 19.38 MHz, and 22.416 MHz.

(http://www.cemetech.net/img/projects/ee/overclock/normal.jpg) (http://www.cemetech.net/img/projects/ee/overclock/fast.jpg)

The left screenshot shows the results from DrDnar's CPU speed test (http://www.ticalc.org/archives/files/fileinfo/420/42000.html) on an unmodified calculator, while the right screenshot shows the modified calculator. TI included four speed modes on calculators from the TI-83+SE on upward, but the top 3 speeds have always been approximately 15MHz. Over the past few days, we have experimented with unpopulated resistor locations on the TI-84 Plus-family PCBs, hoping that two unpopulated resistors might enable what we always assumed were planned 20MHz and 25MHz speeds when 0-ohm resistors were added. Although this proved fruitless, we made another breakthrough today when I discovered an interesting mapping of a set of four resistors on the TI-83 Plus Silver Edition mainboard, documented in a Cemetech topic (http://www.cemetech.net/forum/viewtopic.php?p=202051#202051). Much soldering and trial-and-error later, I was able to get the calculator running stably up to 22.4 MHz. Any faster and memory reads and LCD writes get unpredictable. Although ports $2E and $2F can be used to let the calculator safely run at speeds up to an estimated 28 MHz, the effective CPU speeds are actually lower due to the added delays.

As an added bonus, we believe this technique can be used to overclock even the TI-84 Plus C Silver Edition, a modification that I will attempt tomorrow. Combined with Calc84Maniac's discovery of an LCD feature (http://www.cemetech.net/forum/viewtopic.php?t=8926) that lets us double the rate at which we can transfer whole screens of data to 10FPS, this modification would allow programs to write the LCD at up to 15FPS. If DrDnar or myself succeed in overclocking the TI-84+CSE (which is now shipping from several distributors), we'll let you know.

(http://www.cemetech.net/img/projects/ee/overclock/83pse_board.jpg)
My modified TI-83+SE. I added a 4-pin socket to let me easily swap out resistor values

Source:
http://www.cemetech.net/forum/viewtopic.php?t=8936 (http://www.cemetech.net/forum/viewtopic.php?t=8936)
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: TheNlightenedOne on March 18, 2013, 10:00:18 pm
:crazy: This is awesome! How feasible is it for the average calc enthusiast?
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DrDnar on March 19, 2013, 12:11:35 am
Unfortunately, this is not a discovery that regular users can take advantage of, except on the out-of-production TI-83+SE (and even then, Kerm says it's very hard). The pins on the TI-84+/C/SE aren't connected to unpopulated solder pads like on the TI-83+SE, so users would have to do some very hard SMD soldering directly to the ASIC.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Camdenmil on March 19, 2013, 02:02:49 am
Wait, so the ASIC actually divides the clock for cpu speeds 2 and 3 if you replace some 0 ohm resistors? Any idea if it's possible to do this with a TA1 ASIC? I once replaced the crystal in my M revision 84+SE with a faster one but the lcd didn't update at all, current draw indicated the calc was working though. It all returned to normal when I put the old crystal back in. Why would TI have support for ~25 mhz in the ASIC and not enable it by not populating some resistors?
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DrDnar on March 19, 2013, 02:53:43 am
Wait, so the ASIC actually divides the clock for cpu speeds 2 and 3 if you replace some 0 ohm resistors?
Uh, no, not 0 ohm. For 20 and MHz mode, you need ca. 2.5 and 2.9 kOhm resistors; the resistance controls the precise frequency.

Any idea if it's possible to do this with a TA1 ASIC?
No, not as of yet. I doubt it though; part of the purpose of the TA1 was to reduce pin count. (Pins are like a penny a piece.)

I once replaced the crystal in my M revision 84+SE with a faster one but the lcd didn't update at all, current draw indicated the calc was working though.
Replacing the crystal would definitely not make your calculator run faster. The 32768 Hz crystal has nothing to do with CPU speed; it's used for timing purposes only. The 48 MHz one also has nothing to do with CPU speed; it's used exclusively with the USB controller.

Why would TI have support for ~25 mhz in the ASIC and not enable it by not populating some resistors?
It may have to do with saving battery power, although with the TI-84+CSE, the CPU plays pretty much no role is overall power usage. (The backlight consumes probably 95% of all power.) They may also have had concerns about whether the flash chip could handle such speeds, although it's probably a moot point with today's chips. The most likely answer is that TI is staffed by intelligent engineers and idiotic, bureaucratic managers who wouldn't give you the time of day unless you paid them ten thousand dollars and signed an NDA.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: aeTIos on March 19, 2013, 04:47:48 am
O.O
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DJ Omnimaga on March 19, 2013, 01:15:25 pm
Great find Kerm :). I am pretty sure that they said they limited the speed just to save battery power, but IMHO the 84+CSE might be better off running at faster speed at the cost of eating batteries a bit faster, considering otherwise it can be annoying to use in menus. Plus as DrDnar says, most of the battery power is probably used by the backlight, anyway.

I wonder if TI will eventually up the speed of the 84+CSE if they get too many complains and reports about slow menu speed?
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: TIfanx1999 on March 19, 2013, 02:51:55 pm
Wow, great work guys! :)
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: KermMartian on March 19, 2013, 03:18:52 pm
I tried to overclock my TI-84+CSE today. Moral of the story: don't. The longer version: http://www.cemetech.net/forum/viewtopic.php?p=202157#202157
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DJ Omnimaga on March 19, 2013, 03:24:38 pm
That was kinda scary to read actually. As I read I was slowly getting more scared that you broke your TI-84 Plus C Silver Edition! O.O

Thanks for the warning, though. That means a lot coming from someone with lots of experience in hardware modding.

Programmers should stick with programming shortcuts (such as the z-adress or 160x240 resolution tricks) in order to gain speed.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Dapianokid on March 19, 2013, 03:39:50 pm
This will be exceedingly difficult for me to reproduce.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: ralphdspam on March 20, 2013, 12:03:22 am
What an amazing development for the calculator community!  Thank you, Kerm and DrDnar!

Much soldering and trial-and-error later, I was able to get the calculator running stably up to 22.4 MHz. Any faster and memory reads and LCD writes get unpredictable. Although ports $2E and $2F can be used to let the calculator safely run at speeds up to an estimated 28 MHz, the effective CPU speeds are actually lower due to the added delays.
What exactly do you mean by memory reads?  Just flash?  I was wondering if you could make mode 3 the fastest possible to execute from ram and mode 2 the fastest possible for flash reads and port IO.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: pimathbrainiac on March 20, 2013, 12:50:39 pm
Will you please give us a tutorial for doing this? (Pics, what pins to put the resistors on, etc...)
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: ben_g on March 20, 2013, 03:58:13 pm
Is this guaranteed to work for an 84+BE? And what happens when you overclock it too much? Is only the display messed up, or does it get very unstable (RAM clears), or worse? (Archieve/OS corruption or bricking the calc)
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Sorunome on March 20, 2013, 06:30:53 pm
Nice, now we can play more awesome games on the z80 clacs >.<
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: scienceaddict on May 01, 2013, 11:52:57 pm
how bout the 84se? have one i ripped the ribbon cable on while debugging my speakers(they work almost flawlessly now, cruel irony) that i could try this on and screenshot it with tilp to see how it worked.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DJ Omnimaga on May 02, 2013, 01:43:06 am
From the first post, I think Kerm's technique will work on it too. Just not the color screen model.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Geekboy1011 on November 12, 2013, 10:38:17 pm
So a little bump to this. I ordered some parts from digikey and overclocked 2 83+se's for omnimaga's contest. they can be found here
http://imgur.com/a/IJgAw

Whats next. Make an OS patch that stops the Ti-OS from interfering with the setting. Make sure all external functions work, and finally set up a set of hot keys to arbitrarily change hot keys as long as the Ti-OS interrupt is running.

After I get that done I might offer overclocking services for a fee because its not a hard soldering job but if your not practiced its very easy to mess up. 0603 parts are small :/
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Sorunome on November 13, 2013, 03:23:30 am
wait, the 83+se's for the contest are overclocked? O.O
You are keep making second price look better than the first :P
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: ben_g on November 13, 2013, 11:29:48 am
So a little bump to this. I ordered some parts from digikey and overclocked 2 83+se's for omnimaga's contest. they can be found here
http://imgur.com/a/IJgAw

Whats next. Make an OS patch that stops the Ti-OS from interfering with the setting. Make sure all external functions work, and finally set up a set of hot keys to arbitrarily change hot keys as long as the Ti-OS interrupt is running.

After I get that done I might offer overclocking services for a fee because its not a hard soldering job but if your not practiced its very easy to mess up. 0603 parts are small :/
Are the parts in the same place in the ti-48+? And could you post a small tutorial/description of how to do it yourself, together with a list of the parts needed?
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Geekboy1011 on November 13, 2013, 11:40:34 am
the 83+se overclock and overclocking the 84+se are two completily different beasts the 84+se doesnt have the pads that the 83+se does so its virtually impossible to overclock and if you cant figure out how to do it from kerms posts I feel you dont have enough experiance soldering/ doing ee work to trust you not to break your calculator.ive had plenty of experiance with working on fine pitch hardware.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Streetwalrus on November 13, 2013, 01:18:57 pm
Seems pretty cool but you should clean the second one's LCD. :P
You remind me I have an 83+SE that I need to revive (dead LCD, gonna get a used 83+BE that's working for the parts), so maybe I'll add the 4 pin socket like Kerm did if I ever succeed. :D
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Geekboy1011 on November 13, 2013, 02:59:14 pm
its white out and I tried the best I could its just no hope with out possibly wrecking the lcd. I replaced the entire case as it was all whiteout and nailpolished up >.> but that's the only physical blemish and that doesn't cover any active area of the screen so its chocked up as "meh minor phsyical blemish 100% working order does not hinder the product in anyway" eg its good enough for me
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DJ Omnimaga on November 13, 2013, 03:28:06 pm
the 83+se overclock and overclocking the 84+se are two completily different beasts the 84+se doesnt have the pads that the 83+se does so its virtually impossible to overclock and if you cant figure out how to do it from kerms posts I feel you dont have enough experiance soldering/ doing ee work to trust you not to break your calculator.ive had plenty of experiance with working on fine pitch hardware.
Sorry, but could you repost this in English? O.O (no offense)

Also as cool as getting overclocked calcs would be, did you ask permission to the participants first? Maybe they want a normal calc to run games for them, which means that if overclocked, some games might run too fast to be playable. D: (Unless you're adding a switch that allows the contest winner to switch between 15 MHz and other modes)
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Streetwalrus on November 13, 2013, 03:32:18 pm
Well, if the games use the lower 15 MHz mode then there's no issue since only the two higher modes are overclocked.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DJ Omnimaga on November 13, 2013, 03:33:31 pm
Well, I meant BASIC games, for example, or any ASM/Grammer game that uses no specific mode by default. I was also worried about games that needs perfect syncing with the LCD for grayscale and other effects, which might have issues running if they aren't set at 15 MHz by default.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: ben_g on November 13, 2013, 03:34:57 pm
the 83+se overclock and overclocking the 84+se are two completily different beasts the 84+se doesnt have the pads that the 83+se does so its virtually impossible to overclock and if you cant figure out how to do it from kerms posts I feel you dont have enough experiance soldering/ doing ee work to trust you not to break your calculator.ive had plenty of experiance with working on fine pitch hardware.
Sorry, but could you repost this in English? O.O (no offense)

Also as cool as getting overclocked calcs would be, did you ask permission to the participants first? Maybe they want a normal calc to run games for them, which means that if overclocked, some games might run too fast to be playable. D: (Unless you're adding a switch that allows the contest winner to switch between 15 MHz and other modes)
If you look at the program telling the CPU speeds, you see that he just unlocked the 2 faster speed modes, but it still has a 6MHz and 15MHz speed, which means that games will still run at the correct speed, and only games that use the extra modes will gain advantage of it (and maybe the OS as well, if it's patched to do this).
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Streetwalrus on November 13, 2013, 03:38:48 pm
Yeah for LCD timing most recent games sync with the status port anyway and interrupt timers are independent of the CPU speed. Also he said he'd patch the os to fix that issue. ;)
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DJ Omnimaga on November 13, 2013, 03:39:26 pm
Oh ok. That said, it still doesn't solve the issue about BASIC games, though. >.< (Although most might be better with extra speed, some might become unplayable, especially those that already ran very fast, since getkey only registers 10 keypresses per second).
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Streetwalrus on November 13, 2013, 03:40:25 pm
Also he said he'd patch the os to fix that issue. ;)
This was towards the BASIC issue.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DJ Omnimaga on November 13, 2013, 03:42:18 pm
Oh ok, so BASIC games would automatically be set to 15 MHz upon launch?
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Streetwalrus on November 13, 2013, 03:45:17 pm
The OS already runs at 15MHz by default, and so does BASIC. Geekboy's patch would be more to let the user switch speeds on the fly if I understand correctly.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Eiyeron on November 13, 2013, 03:45:52 pm
GOt an Idea: The Impossible Game at 25MHz...
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Streetwalrus on November 13, 2013, 03:47:19 pm
O.O Holy... That'd be epic.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Sorunome on November 13, 2013, 03:47:20 pm
GOt an Idea: The Impossible Game at 25MHz...
oh god, don't make it even more impossible x.x
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: ben_g on November 13, 2013, 03:48:32 pm
GOt an Idea: The Impossible Game at 25MHz...
I think that it would be too fast for the screen. It's already very blurry on 15MHz, so on 25MHz, you won't see a thing.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Eiyeron on November 13, 2013, 03:49:09 pm
Herm... Give me an OC calc and the Impossible Game.
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Streetwalrus on November 13, 2013, 03:50:40 pm
I thought the impossible game ran at 6 MHz ?
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: DJ Omnimaga on November 13, 2013, 04:18:09 pm
The OS already runs at 15MHz by default, and so does BASIC. Geekboy's patch would be more to let the user switch speeds on the fly if I understand correctly.
I wonder if the patch would be made publicly available (as IPS patch) in case they accidentally delete their OS or if the patch would actually remain even if the user replaces his OS?
Title: Re: Overclocking the TI-83+SE / TI-84+/SE Family
Post by: Streetwalrus on November 14, 2013, 05:18:18 am
It would be cool since it'd also make it possible to test BASIC at 6MHz.