I replaced the flash chip in my TI-84 Plus CE Python with a G6179-10 SPI Socket.
I did this a while ago, but iPhoenix has been pestering me to make a topic about it.
The board was designed with enough room around the chip to allow for this, and judging by the silkscreening around the flash chip, it appears to be intentional.

The process was very straightforward:
  1. Desolder the original flash chip and clean the pads
  2. Solder the SPI socket
  3. Dump the contents of the original flash chip and program them onto to the new 128Mb chip
  4. Insert the new flash chip

Here are some before and after pictures:


Here is a close-up of my soldering job Cool


Programming the new flash chip:


All done:


When closing up the case, I noticed there is not quite enough room inside the calculator, so I melted down some of the plastic to make some space (admittedly not my best work Laughing)

And finally, here it is booted up with its original flash chip sitting on top Razz
Did you have any particular use case in mind for an easily-flashed calculator, or was this more to prove it can be done? It looks well-executed, in any case (well.. excluding the smoking hole in the case).
I don't have any more plans for it, this was the plan Laughing
Other users have replaced the flash chip before (notably DrDnar), but I don't believe anyone has done it with a socket (I'm not sure why, IMO it is equally difficult).
I'm going to do this, just ordered the socket. I didn't order a flash chip; I have I think 45 of them left over from a previous post-M calc project. Maybe I'll use it to figure out early boot state or something.
Well done! I remember hearing that the OS is only designed to use the original amount. Would any assembly program be able to take advantage of the extra storage?
Nice work! Other than the execrable burning of the case, it's a very neat mod, and I'm glad that the board design facilitated it. Now that you can easily swap out the Flash, what do you plan to do with it?
TheLastMillennial wrote:
Well done! I remember hearing that the OS is only designed to use the original amount. Would any assembly program be able to take advantage of the extra storage?


Yeah, the OS doesn’t know about it but apparently most of it gets memory-mapped so theoretically a sufficiently clever assembly program could use it.
TheLastMillennial wrote:
Well done! I remember hearing that the OS is only designed to use the original amount. Would any assembly program be able to take advantage of the extra storage?

Yes, like iPhoenix said, the OS would need to be patched to make use of the extra space, but about 12Mb get mapped so asm programs could use it (there are about 4Mb that cannot be used at all)
The crazy things that could be done with that much memory Very Happy.

Great mod - very tempted to do this myself!
I must point out that the boot sectors are now unlocked, so it's trivial to just patch unlock code directly into the boot region. You don't even need an assembly program to do it; you can just use your external programmer. We did some tests a while back with custom early-boot code to improve CEmu accuracy. Took several tries before we finally got a non-bricking patch.

mr womp womp wrote:
there are about 4Mb that cannot be used at all

I think it's still possible to access to using raw flash command that bypass the memory-mapping entirely. That would be pretty slow, of course.
I honestly thought the CE would only map the first 4 MiB regardless.
Discord wrote:
clevor: Huh. There is 12 contiguous MiB of address space that can theoretically be mapped to flash, but the middle 4 MiB is either a mirror of the first 4 MiB or unmapped, and the high 4 MiB is unmapped. :(
RoccoLox Programs: A lot of unmapped
clevor: Congratulations womp, you did something useless!
RoccoLox Programs: *is
clevor wrote:
I honestly thought the CE would only map the first 4 MiB regardless.

The flash XIP block actually lets you configure how much is mapped. With a bit mask. Yes, you can elect not to map non-contiguous regions. IIRC, down to byte level.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement