Author |
Message |
|
calcdude84se
Member
Joined: 09 Aug 2009 Posts: 207
|
Posted: 13 Aug 2009 02:07:58 pm Post subject: |
|
|
Here's my problem: any program that uses the extra RAM pages on my TI-84+SE either doesn't work, works incorrectly, or crashes my calculator and resets my RAM and clock. I have some hints if they help:
- I got my calc new in '08 (Maybe TI is using a different configuration of the extra RAM pages now? Sounds like the time they used incompatible display drivers... [I don't have that problem])
- They work fine in WabbitEmu using my ROM and OS version (The hardware it emulates is different than the actual hardware used in my calculator?)
- Example programs that fail: Emu8x, Omnicalc (RAM Restore + Virtual Calc), Virtual Calc (Standalone App), [topic="8883"]Igrek's XRAM program[/topic]
Anybody have any ideas as on how to get these programs to work? It would be nice if they (the programs) did. |
|
Back to top |
|
|
fougere
Advanced Newbie
Joined: 07 Aug 2009 Posts: 56
|
Posted: 13 Aug 2009 02:59:05 pm Post subject: |
|
|
i know that 84's are supposed to have 8 RAM pages. you can swap them in by sending $80-$87 to ports 5, 6, and 7. Also, the even numbered pages (ie $80, $82, $84, $86) are 'execution protected', meaning you can't execute code off of them. this link may be helpful: http://wikiti.brandonw.net/index.php?title...us:OS:Ram_Pages |
|
Back to top |
|
|
fullmetalcoder
Member
Joined: 01 Aug 2009 Posts: 139
|
Posted: 13 Aug 2009 03:17:25 pm Post subject: |
|
|
calcdude84se wrote: Here's my problem: any program that uses the extra RAM pages on my TI-84+SE either doesn't work, works incorrectly, or crashes my calculator and resets my RAM and clock. I have some hints if they help:
[list]
[*]I got my calc new in '08 (Maybe TI is using a different configuration of the extra RAM pages now? Sounds like the time they used incompatible display drivers... [I don't have that problem])
That is definitely weird. However I can hardly imagine TI "reverting" 84+(SE) to 83+BE (i.e using a 32k RAM chip) so I can only see four hypothetic reasons for that :
- broken RAM chip (on your calc only)
- new OS now using RAM pages and thus conflicting with extra programs
- different "hardware mapping" : still a 128k RAM chip but control ports and/or corresponding in/out values have changed
- port protection : at some point TI could have decided to make memory mapping ports protected (i.e can only be written to from a priviledged rom page with a precise sequence of instructions)
The second is unlikely because we'd have heard about the new OS. It is easy to check the OS version to invalidate it anyway.
The last two are of course extremely unlikely and can probably be invalidated by checking the boot code version (it would have changed if the hardware changed significantly).
So my guess is the first one but it is just a guess and would require more experimentation to be verified. |
|
Back to top |
|
|
Graphmastur
Advanced Member
Joined: 25 Mar 2009 Posts: 360
|
Posted: 13 Aug 2009 06:08:58 pm Post subject: |
|
|
Can we see your code? You might have done the smallest little error in changing the pages back, or something. |
|
Back to top |
|
|
fullmetalcoder
Member
Joined: 01 Aug 2009 Posts: 139
|
Posted: 13 Aug 2009 06:34:29 pm Post subject: |
|
|
Graphmastur wrote: Can we see your code? You might have done the smallest little error in changing the pages back, or something.
did you read his post?
calcdude84se wrote: Here's my problem: any program that uses the extra RAM pages on my TI-84+SE either doesn't work, works incorrectly, or crashes my calculator and resets my RAM and clock
clearly he did not write any code (so he'll have a hard time showing it to us) but noticed that perfectly correct (as in "runs on all tested calculators" (all being a fair number in most of the programs he mentioned)) code fails on his calc which is rather puzzling.
Last edited by Guest on 13 Aug 2009 06:36:43 pm; edited 1 time in total |
|
Back to top |
|
|
Graphmastur
Advanced Member
Joined: 25 Mar 2009 Posts: 360
|
Posted: 13 Aug 2009 09:26:16 pm Post subject: |
|
|
fullmetalcoder wrote: Graphmastur wrote: Can we see your code? You might have done the smallest little error in changing the pages back, or something.
did you read his post?
calcdude84se wrote: Here's my problem: any program that uses the extra RAM pages on my TI-84+SE either doesn't work, works incorrectly, or crashes my calculator and resets my RAM and clock
clearly he did not write any code (so he'll have a hard time showing it to us) but noticed that perfectly correct (as in "runs on all tested calculators" (all being a fair number in most of the programs he mentioned)) code fails on his calc which is rather puzzling.
I was actually reading on my ipod, and failed to notice it. Okay, what memory map mode? |
|
Back to top |
|
|
calcdude84se
Member
Joined: 09 Aug 2009 Posts: 207
|
Posted: 14 Aug 2009 01:13:21 pm Post subject: |
|
|
In answer to fullmetalcoder's question, I have OS version 2.43 and Boot Code 1.02, so I have nothing special. I even downgraded my OS once, but Emu8x didn't work there either (I think the OS version was v2.22).
The only "exploration" I could think of is writing certain values to RAM, sending certain values out ports. I'm not that good at assembly, but I can do that. Any ideas? |
|
Back to top |
|
|
calc84maniac
Elite
Joined: 22 Jan 2007 Posts: 770
|
Posted: 14 Aug 2009 01:58:56 pm Post subject: |
|
|
This has happened with many people who tried TI-Boy with newer calculators. A fix to this problem would be nice. |
|
Back to top |
|
|
fullmetalcoder
Member
Joined: 01 Aug 2009 Posts: 139
|
Posted: 14 Aug 2009 02:15:23 pm Post subject: |
|
|
(emphasis mine)
Quote: I have OS version 2.43 and Boot Code 1.02
[quote post='135494' date='Aug 14 2009, 08:58 PM']This has happened with many people who tried TI-Boy with newer calculators. A fix to this problem would be nice.[/quote]
Looks like a hardware change after all. It'll definitely require investigation but if you lack the knowledge and those who have it lack faulty calcs we're unlikely to go very far. a dump of the boot code may prove to be helpful. |
|
Back to top |
|
|
calcdude84se
Member
Joined: 09 Aug 2009 Posts: 207
|
Posted: 14 Aug 2009 03:05:45 pm Post subject: |
|
|
Okay, maybe boot code v1.02 is special. What knowledge are you talking about? :confused: Wouldn't a boot code dump basically be a ROM dump without the OS attached? I can send you the ROM image I extracted (complete with OS), but would it be necessary?
Fullmetalcoder gets my ROM... |
|
Back to top |
|
|
FloppusMaximus
Advanced Member
Joined: 22 Aug 2008 Posts: 472
|
Posted: 14 Aug 2009 03:26:29 pm Post subject: |
|
|
Try running this program. |
|
Back to top |
|
|
fullmetalcoder
Member
Joined: 01 Aug 2009 Posts: 139
|
Posted: 14 Aug 2009 03:28:09 pm Post subject: |
|
|
calcdude84se wrote: Okay, maybe boot code v1.02 is special.
It's not the boot code that is a problem. It's the fact that boot code is hardware-specific so a change of boot code is extremely likely to come from a change of the hardware which in turn may explain the issues you're facing (not sure but given calc84maniac's comment it doesn't sound unlikely anymore...)
the boootcode may or may not be dumped in a rom dump (I guess it should but I never checked) anyway it will no be of any use in an emulator as the emulator cannot infer anything from it, it only behaves according to how the hardware is known to behave and since the issue you face is not understood yet and emulator cannot help.
calcdude84se wrote: What knowledge are you talking about?
Well, you said you weren't good at assembly so I suppose you're not going to figure out how the incriminated ports behave on your calculator (the documentation for these was built by trial and error from several guys who were quite good at assembly, probably very patient and presumably not very concerned with the potential damage that may have been caused to their calc in the process). I am nowhere near as knowledgeable as them (Brandon Wilson, Dan Englender, Michael Vincent, James Montelongo, ...) so I doubt I'll be able to help, especially since I don't have faulty hardware, which is a prerquisite to such experimentations. The boot code disassembly can help by providing hints on possible hardware changes but it is unlikely to directly solve the issue.
anyway, if you post a dump I (and hopefully others) may give it a look and we'll see. |
|
Back to top |
|
|
calc84maniac
Elite
Joined: 22 Jan 2007 Posts: 770
|
Posted: 14 Aug 2009 03:31:20 pm Post subject: |
|
|
I have boot code 1.02 on my calculator (which is apparently before the hardware change, in Feb '07). There was no boot code change to our knowledge. |
|
Back to top |
|
|
fullmetalcoder
Member
Joined: 01 Aug 2009 Posts: 139
|
Posted: 14 Aug 2009 03:45:51 pm Post subject: |
|
|
calc84maniac wrote: I have boot code 1.02 on my calculator (which is apparently before the hardware change, in Feb '07). There was no boot code change to our knowledge.
Is your calc a 84+BE or a 84+SE? I think the boot code version is also hardware dependant and that same version number do not mean same boot code if the hardware is different. |
|
Back to top |
|
|
FloppusMaximus
Advanced Member
Joined: 22 Aug 2008 Posts: 472
|
Posted: 14 Aug 2009 03:53:54 pm Post subject: |
|
|
The 84+ BE and SE boot codes are identical apart from constant values (such as page numbers.) There are some minor changes between 1.00 and 1.02. Boot 1.02 was released very soon after the 84+ was first introduced. |
|
Back to top |
|
|
fullmetalcoder
Member
Joined: 01 Aug 2009 Posts: 139
|
Posted: 14 Aug 2009 04:02:05 pm Post subject: |
|
|
How could TI change the hardware in a way that breaks backward compat that long after the launch of the model and not even change the boot code and the OS?
I know they don't care about the community but I think I have seen somewhere that the TIOS uses the extra RAM pages in some (rare) cases and they would not want to break their own OS... or would they?
just wondering : what is the purpose of the program you posted? |
|
Back to top |
|
|
calcdude84se
Member
Joined: 09 Aug 2009 Posts: 207
|
Posted: 14 Aug 2009 04:04:41 pm Post subject: |
|
|
I haven't tried the program yet, I'll add a post or edit this one when I do.
Fullmetalcoder: check your PM's
When I say I'm not good in assembly, I mean I don't have the patience to write in assembly. Give me some time and I actually could. |
|
Back to top |
|
|
FloppusMaximus
Advanced Member
Joined: 22 Aug 2008 Posts: 472
|
Posted: 14 Aug 2009 04:14:30 pm Post subject: |
|
|
TI's software has never used pages 84-87. It's not inconceivable that they could have reduced the amount of RAM to cut costs. |
|
Back to top |
|
|
fullmetalcoder
Member
Joined: 01 Aug 2009 Posts: 139
|
Posted: 14 Aug 2009 04:17:51 pm Post subject: |
|
|
switching to a 64kb chip? possible, weird but definitely possible. An "easy" way to check is to open the calc and look for the serial number of the chip. |
|
Back to top |
|
|
FloppusMaximus
Advanced Member
Joined: 22 Aug 2008 Posts: 472
|
Posted: 14 Aug 2009 05:14:09 pm Post subject: |
|
|
That might not tell you anything, since the "chip" is a proprietary ASIC that includes the CPU and USB controller in addition to the RAM. |
|
Back to top |
|
|
|