Author Topic: The Missing 84+ Extra RAM Pages (hardware change)  (Read 61243 times)

0 Members and 1 Guest are viewing this topic.

Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #105 on: May 10, 2011, 06:29:52 pm »
It's missing the ram pages. I guess you could test it by using calcsys to write a byte on page 83, and then check if it's there in page 84.  I believe they act like a single page, so this should work.  But I can tell you that because it's M, then it most definitely has them missing.
Unfortunately, Calcsys doesn't allow you to hex-edit in the $4000-$7FFF region, even if it is mapped to RAM.
Well, you can still write a quick program to do it can't you.  Just write a small asm program to swap the page in, write the byte, and then swap it back out.  That should work, shouldn't it?

Offline Billeekid

  • LV2 Member (Next: 40)
  • **
  • Posts: 25
  • Rating: +4/-0
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #106 on: September 20, 2011, 03:37:09 pm »
Hello I just joined here because of this topic, I just took apart a brand new TI 84+ SE  serial number ends with a P-0411R so it's quite new if R means its revision number.  I took it apart and it seems there are only two identifiable chips that could possibly be processor and memory.  My guess is the one that says TA1 is of course the chip housing the processor, and the other large chip must be the ROM.  Taking an educated guess(I'm a mech. engineering student), from what I've learned with manufacturing and my own research, I believe the processor and RAM share the same die. So the ROM by itself can be changed more readily and cost effectively, depending on model and other factors, whereas the processor die would require a complete redesign and would be designated as such if the RAM was changed.  I'm totally speculating but i think that all TI 83+ and up and TI 84 and up have a very similar architecture and that all earlier calculators designated TI 83 would be similarly functioning but different architecture/board(correct me if I'm wrong).  Don't quote me here, but I'm convinced that some RAM was ditched on the TA1 marked dies with concerns related to either power consumption or maybe the chip supplier changed entirely(i changed my theory to bandwidth issues, lol).  If you look at what I believe is the ROM (the chip not marked TA1)you can see a logo that says "Spansion".  Maybe on earlier calculators the processors were actually produced by a third party supplier as well as the ROM.  My calculators processor says TI REF and JAPAN on the die with no trademarks at all.  My question would be what does the earlier "xram" calc's chips say?  You really have to look at the pcb and it's layout to distinguish any major changes and then of course any chips soldered to the board, lol.  I'm using a lot of big words but I think they're all in the right context.  I'll quickly post a picture showing what I'm all talking about, and what each chip says.  Maybe this can help determine what happened to the "xram calculators" of course you would need to catalog other serial numbers and there corresponding chips to really get an idea of what really changed through out the production of TI 83 and the TI 84 family of calculators.           
« Last Edit: September 20, 2011, 07:11:36 pm by Billeekid »

Offline Billeekid

  • LV2 Member (Next: 40)
  • **
  • Posts: 25
  • Rating: +4/-0
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #107 on: September 20, 2011, 03:46:17 pm »
TI REF
84PLCR/TA1
T6UN0AFG-0001
JAPAN 1039 HAL
086078
processor chip

Spansion
S29AL016D70TFI
914FF119 G
(copyright symbol) SPANSION
ROM

B48.000
KDS 1B
TAIWAN
smaller chip maybe a memory controller?




Unfortunately I can't get the photo off my camera.  This isn't my calculator it's something I pulled off the internet.  It's a TI 84+ fortunately the chips are in the same place, the print on the chips isn't legible in this photo. After looking at this photo I can see some very obvious differences, but I guess that should be expected(thepenguin helped clarify this). Surprisingly the only components that appear to be in the same spot is the main chips and where all of the "external" connections are.  This photo is fine for my purposes but just about every other little circuitry tidbit is in a totally different spot.  One question would be has anyone catalogued an onboard memory controller?  I find it hard to imagine that the processor has that kind of feature built into it. That is a giant factor in determining usable memory with a PC, even though most all new computer processors do have that feature. I understand that the ROM is flash memory, so would that mean it could be used as RAM? I haven't really educated myself on computer memory. I guess an analogy for myself would be kind of like an automotive mechanic, one that works with electrical all the time but has no real explanation for it.  I've built multiple computers troubleshooted memory and boot errors, but I have no idea how RAM really works.  I'm gonna get ahead of myself and ask, could the ROM be used as RAM even if there would be a more than likely inherent bottleneck some where in between?  I guess I could look really hard on the internet and never post on here again, but my conclusion on this matter might be totally wrong, lol.  I just wanted to say I do appreciate the feedback, and I was surprised at how fast thepenguin responded.  If there is any other info I can provide for cataloguing purposes, my calculators packaging does happen to say 2011 on it, lol.  I am kind of dissapointed I can't get GameBoy games on my calculator, but I did afterall buy it to use for school(my first graphing calculator!).  Interesting topic though  :)
« Last Edit: September 20, 2011, 05:03:02 pm by Billeekid »

Offline thepenguin77

  • z80 Assembly Master
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1594
  • Rating: +823/-5
  • The game in my avatar is bit.ly/p0zPWu
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #108 on: September 20, 2011, 04:08:32 pm »
Welcome, it's nice to see some one so excited to figure this out. However, not to be rude, but we have kind of already discovered the things you just mentioned.

For instance, We know that there have been 3 major revisions of the ASIC which can be determined through an internal port. For more information on the different revisions, check out this topic over at UTI.

As far as when the extra ram was eliminated, we are also pretty certain about when that happened. For one, the final ASIC revision has fewer pins than the previous versions. Then, using the chart I linked to over at UTI as well as a more recent study conducted by DrDnar, we have determined that the exact time TI cut out the ram was between hardware revisions G and H.


You were right, the chip labeled Spansion is indeed the ROM, it's actually Flash memory though, so it can be changed programmatically. (DrDnar's topic has a lot of info on it.)

As for the smaller chip, I'm not sure, I'm sure some one with more hardware knowledge could tell you.

A few other things, 1) the 83+ and 84+ are actually pretty different hardware wise, however 2) The 83+SE, 84+BE, and 84+SE all are exceptionally similar, so similar in fact that recently, we have begun to reason that the 84+BE and 84+SE are the exact same hardware except for the Flash memory and case color.


(Lastly, again not being rude, people typically don't like double posts here. You're find because you're new, but next time, just edit the post or add a few returns in.)
zStart v1.3.013 9-20-2013 
All of my utilities
TI-Connect Help
You can build a statue out of either 1'x1' blocks or 12'x12' blocks. The 1'x1' blocks will take a lot longer, but the final product is worth it.
       -Runer112

Offline Billeekid

  • LV2 Member (Next: 40)
  • **
  • Posts: 25
  • Rating: +4/-0
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #109 on: September 20, 2011, 07:05:09 pm »
I saw the pictures of the different processors, having different pin counts.....  I have been looking really hard for a reason why TI would remove RAM, and unless I'm mistaken all units of memory are multiples of two and especially since these "xram" calcs have 128KB RAM wouldn't that mean that the calculator is fundamentally based on the 8-bit principle.  How can you implement a 24KB unit size RAM without fundementally changing the operating principle of the calculator.  If it is normal for all calculators in this family to display about 24KB of RAM, that would probably mean that that number is software/OS based not hardware dependent.  TI graphing calculators are 8-bit correct!?  I have to believe that the 25x4 pin configuration (which was incorrectly stated 25x25) vs. 36x4 pin would be the source of a limiting factor.  Maybe a function that I'm not aware of puts a cap on memory at roughly 24KB?  I just spent about a half hour reading up on the 8-bit principle but I'm trying my best to understand  ;D   I'm just not satisfied with the thought that they simply removed memory, RAM for computers was extremely cheap for a while(I watch that kind of stuff lol) and the stuff advanced through two version of the DDR architecture and just about quadrupled the speed of the original spec. speed at about half the cost in only a few years.  So, RAM wouldn't be removed as a factor of cost, but more likely it arises from a hardware bottle neck, maybe there's 32KB actual memory and only a number close to 24 of that memory is actually usable? The hardware bottleneck, would be the processor bandwidth.  In TI's eyes the newer processor/architecture probably fit the bill perfectly or near perfectly for the existing software demands, and anyways why would TI care if this prevents programs with high memory requirements such as emulators from running.  It's unfortunate/fortunate that effort has been put about in these amazing emulators, I've seen them run and I have know idea how you guys do it, but I can't imagine that TI thought people would make such things. I think 24KB was just a number TI found was more than enough to not only run what apps it wanted you to use but also a number that it didn't expect to be exceeded in demand.  It is unfortunate that for whatever reason, the newer calcs come only with a conservative amount of RAM.  I think that the old processor took the xtra ram with it when it left  >:(

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #110 on: September 20, 2011, 07:11:21 pm »
Holy wall of text :P

As it turns out, the z80 chip (which is the same chip as in the older calcs with more pages) inside the TI-83+/84+ Series is 16 bit and can address 16 KB pages. The OS gets around this with a scheme known as paging.

As for the memory, the calculator does have 32 KB. Only 24 is user accessible because the rest is used by the OS.
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline Billeekid

  • LV2 Member (Next: 40)
  • **
  • Posts: 25
  • Rating: +4/-0
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #111 on: September 20, 2011, 07:23:35 pm »
, the calculator does have 32 KB. Only 24 is user accessible because the rest is used by the OS.

I see that makes some sense, I guess I just didn't come across that.  I still am wondering if the ROM is actually a programmable flash memory, could it be used as RAM?  I guess it would be extremely slow compared to the onboard/chip RAM but maybe it would allow some things to be ran at slower speeds besides emulators.  I don't know if there is any other factors that are left out, but that's my understanding of flash, lol.  I think someone needs to determine what that third marked chip that I pointed out is, I think that might be the controller I've dissasembled a lot of electronics and I think it looks a heck of a lot like the memory controller on a flash drive, thats the only other type of component  I can think of that would be given it's own markings.
« Last Edit: September 20, 2011, 07:29:41 pm by Billeekid »

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #112 on: September 20, 2011, 07:25:41 pm »
Technically, ROM could be used as swap space, but it takes special protocols to write to it (because writing a 1 anywhere clears the whole 16 KB page the 1 is written on). Also, writing to flash wears it out, so you'd eventually end up unable to use it reliably.
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #113 on: September 20, 2011, 07:30:46 pm »
Hi, and welcome to Omnimaga, Billeekid.

Pertaining to the amount of RAM discussion, this is what the calcs have:
8 KB - Reserved for OS usage.  I believe these are addresses 0000h to 8000h on Page 0.
24 KB - User Mem.  Though there is technically some of this space (8000h to 9D95h) is claimed by the OS, the rest of it is for programs and other variables stored in RAM, as well as the VAT and some other OS stuff.
16 KB or 96 KB - "Extra RAM."  This is used by the OS on some occasions, most notably with the BasePageTable for Apps on some OSes.  If I remember correctly, the Math Print (MP) OSes also use some of this memory as well.

Offline thepenguin77

  • z80 Assembly Master
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1594
  • Rating: +823/-5
  • The game in my avatar is bit.ly/p0zPWu
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #114 on: September 20, 2011, 07:38:21 pm »
I was surprised at how fast thepenguin responded.

You can't see it yet (due to post count), but we have a IRC client embedded in the page. This leads to very quick replies to posts.

As far as the amount of ram the calculators actually have, you are right, it is not 24KB, that is just the amount that TI advertises to the public and is the amount officially supported for saving user variables and such. However, you don't have to listen to TI's demands when programming, so, in reality the old calculators had 128KB of ram and the new ones have 48KB of ram (8 and 3 16KB pages.)

While the z80 is an 8 bit processor, it still has 16 bit registers inside of it, and this includes the Program Counter. At any given time, the processor is addressing 64KB of data, which is split up into 16KB banks. The first bank is always operating system code, then, the next 3 banks can be switched however the programmer wishes, this includes a range of 128 flash pages and 8/3 ram pages. By default, one of the banks is flash, and the other two are the working memory. (Which is where the 24KB comes into play.)

We think, (at least I do) that the main reason that TI cut the extra ram was purely to save money. It was not an attack against the GameBoy emulator because although we found out about the cuts a year or two ago, the actual change in manufacturing happened in 2007, which was long before the emulator.

If you want some better pictures, check out datamath.org. They have a good comparison of the 83+ and 84+ here.


Quote
I can't get GameBoy games on my calculator, but I did afterall buy it to use for school(my first graphing calculator!)

Actually, calc84maniac released a version that allows you to play gameboy games on the calculators wthout the extra ram, you'll have to look around the site for it, (he might have even put it on ticalc.org). The only problem though is that some games, like pokemon, have an extra 32KB of memory in the cartridge, and since the calculators only have 48KB of memory, I think you can see the problem.


Edit (to your ninja):
   Flash memory cannot be used efficiently as ram because it can only be erased 64KB at a time. You can write as many 0's to it as you want, but to write a 1 requires a full sector reset. It is also very slow, a full sector program takes about 3 seconds.

Edit 2:
   After a bit of googling, I think the smaller chip you found is our beloved crystal. This thing runs the internal clock as well as a set of super precise timers that are available to assembly programmers. This description fits since that chip only appears to have 2 leads.
« Last Edit: September 20, 2011, 08:22:52 pm by thepenguin77 »
zStart v1.3.013 9-20-2013 
All of my utilities
TI-Connect Help
You can build a statue out of either 1'x1' blocks or 12'x12' blocks. The 1'x1' blocks will take a lot longer, but the final product is worth it.
       -Runer112

Offline ralphdspam

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 841
  • Rating: +38/-1
  • My name is actually Matt.
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #115 on: September 20, 2011, 09:27:03 pm »
Edit 2:
   After a bit of googling, I think the smaller chip you found is our beloved crystal. This thing runs the internal clock as well as a set of super precise timers that are available to assembly programmers. This description fits since that chip only appears to have 2 leads.
Woa!  So we can (with a little more research) overclock the 84 Plus SE now?  

8 KB - Reserved for OS usage.  I believe these are addresses 0000h to 8000h on Page 0.
Can I use this ram for rst hijacks in cpu-intensive programs, such as emulators?  (Of course, I won't be able to use bcalls.)
« Last Edit: September 20, 2011, 09:27:23 pm by ralphdspam »
ld a, 0
ld a, a

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #116 on: September 20, 2011, 09:29:46 pm »
Can I use this ram for rst hijacks in cpu-intensive programs, such as emulators?  (Of course, I won't be able to use bcalls.)
Yes, but you must make sure to back it up somewhere.  I'd recommend talking to calc84maniac about doing this - he is the only person I've heard of doing so, and he does it with his more recent versions of his GameBoy emulator.

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #117 on: September 20, 2011, 09:31:29 pm »
Uhh... I don't know where that 8KB of RAM at $0000-$8000 came from :P
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline ralphdspam

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 841
  • Rating: +38/-1
  • My name is actually Matt.
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #118 on: September 20, 2011, 09:32:56 pm »
Uhh... I don't know where that 8KB of RAM at $0000-$8000 came from :P
What?
EDIT: Got my hopes up.  :'(
I should learn how to be more skeptical. 
« Last Edit: September 20, 2011, 09:41:04 pm by ralphdspam »
ld a, 0
ld a, a

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: The Missing 84+ Extra RAM Pages (hardware change)
« Reply #119 on: September 20, 2011, 09:41:51 pm »
Uhh... I don't know where that 8KB of RAM at $0000-$8000 came from :P
Whoops, my bad.  Hopefully this sets the situation straight:

Quote from: #omnimaga
[19:31:57] <+OmnomIRC> (O)<ztrumpet> calc84
[19:32:06] <+OmnomIRC> (O)<ztrumpet> Am I missing something?
[19:32:39] <+OmnomIRC> (O)<calc84maniac> $0000-$3FFF is always ROM page 0
[19:33:04] <+OmnomIRC> (O)<ztrumpet> Let's see, what did I confuse here?
[19:33:23] <+OmnomIRC> (O)<ztrumpet> What is at 0000 to 8000 then?
[19:33:26] <+OmnomIRC> (O)<calc84maniac> there's $8000-$9D94 which is OS stuffs
[19:33:49] <+OmnomIRC> (O)<calc84maniac> (plus some of that is saferam)
[19:33:54] <+OmnomIRC> (O)<ztrumpet> right
[19:34:04] <+OmnomIRC> (O)<ztrumpet> what's 0000 to 8000?
[19:34:16] <+OmnomIRC> (O)<calc84maniac> normally, it's ROM
[19:34:26] <+OmnomIRC> (O)<ztrumpet> Oh
[19:34:31] <+OmnomIRC> (O)<ralphdspam> can you switch ram into it?
[19:34:32] <+OmnomIRC> (O)<ztrumpet> That's one of the banks?
[19:34:40] <+OmnomIRC> (O)<calc84maniac> two
[19:34:46] <+OmnomIRC> (O)<ztrumpet> Wow, I feel really stupid now. :P
[19:34:54] <+Runer112> 0000 to 3FFF is always ROM 0
[19:35:00] <+Runer112> so you can't switch RAM into there
[19:35:20] <+OmnomIRC> (O)<ztrumpet> Then 4000 to 7FFF is another bank?
[19:35:22] <+OmnomIRC> (O)<calc84maniac> and you can switch RAM into 4000-7FFF, but only on certain models
[19:35:29] <+OmnomIRC> (O)<ztrumpet> What is there normally?
[19:35:45] <+Runer112> there isn;t specifically a normal page there
[19:35:51] <+Runer112> well
[19:35:54] <+Runer112> I guess there technically is
[19:35:56] <+OmnomIRC> (O)<calc84maniac> swapping ram there doesn't work on TI-83+BE or TI-84 Pocket.fr
« Last Edit: September 20, 2011, 09:42:11 pm by ztrumpet »