This is an archived, read-only copy of the United-TI subforum , including posts and topic from May 2003 to April 2012. If you would like to discuss any of the topics in this forum, you can visit Cemetech's Calculator Hardware, Electronics, Robotics subforum. Some of these topics may also be directly-linked to active Cemetech topics. If you are a Cemetech member with a linked United-TI account, you can link United-TI topics here with your current Cemetech topics.

This forum is locked: you cannot post, reply to, or edit topics. Calculator Modifications => Calculator Hardware, Electronics, Robotics
Author Message
lloydkirk1989


Member


Joined: 18 Apr 2005
Posts: 161

Posted: 06 Jan 2006 10:37:13 pm    Post subject:

I noticed that both the TI-83(84)SE have 128k ram but only 24k is available to the user. I realize the OS takes up part of the ram, but not 104k. Would there be a way to make an OS patch that gave the user access to the ram? I know this has been done with archive (Xpand), would similar principles apply?

Last edited by Guest on 06 Jan 2006 10:37:42 pm; edited 1 time in total
Back to top
alexrudd
pm me if you read this


Bandwidth Hog


Joined: 06 Oct 2004
Posts: 2335

Posted: 06 Jan 2006 11:36:20 pm    Post subject:

Quote:
The Z80 CPU used in the TI-83 Plus/SE can only access 64K of memory. This is the range from 0000h-FFFFh. To allow the 83+ SE to have more memory, paging is used. This consists of dividing up the 2048K flash into 128 pages and the RAM into 2 pages. On the 83+ SE, which this document describes, the ROM pages are assigned values 00h-7Fh and the RAM pages are 80h-81h. However, RAM pages are sometimes refered to as RAM page 0 and 1, but this actually means 80h and 81h, respectively.

The best analogy for visualizing this system and how it works is as a series of tennis rackets. Each racket corresponds to one page on the 83+ SE. These tennis rackets can be swapped into 'slots', which on the 83+ are the address space 4000h-7FFFh, 8000h-BFFFh, and C000h-FFFFh. This document will focus on RAM pages primarily. Below is a picture of the two RAM rackets (pages) normally swapped in. Each racket has 64 strings across in one direction, and 256 in the other direction. The 16,384 intersections formed by these strings in each racket are the bytes of data that each racket can store.
[rackets]

Each slot is fixed, and represents the address space listed at the bottom. The slots are represented by the rectanglar boxes. The rackets are the pages, and can be moved from slot to slot and replaced. They are the data. When the OS wants to find a byte that is at a particular address, say 8100h, it will look in the appropriate slot. In our case, 8000-BFFF contains 8100h. Note that which racket is in that slot does not matter, since the same spot on that racket is accessed no matter which racket is in the slot. Say (8100h) is located at the intersection of the first two strings on a racket. Then to find 8100h, the OS will check the intersection of the first two strings on whatever racket is in that slot. If you were to switch rackets 0 and 1, then looking at 8100h would return the byte that was previously accessed in C100h. The actual data is unchanged, only where it is found.

On the SE there exist 6 other 'rackets' (pages), that are floating around in the Void of Unused Tennis Rackets. These are not used by the OS. However, if one wanted to, one could modfify a racket, suppose racket 5, so racket 5 would be identical in data to racket 1. Then using port 7, racket 5 could be swapped into 8000-BFFF. In this case, when the OS would go to find a byte in that range, it would find the same data that was there before (because we swapped in an identical racket).
I don't know if this helps, because I'm not sure which 'unused rackets' it refers to. If they are RAM, there's your answer: they're just unused for some reason.
Back to top
DJ Omnimaga
http://i-lost-the-ga.me


Calc Guru


Joined: 14 Nov 2003
Posts: 1196

Posted: 07 Jan 2006 08:23:48 am    Post subject:

If someone would rewrite a new OS for calcs he could probably make it use almost all the RAM avaliable. It would be not compatable with the 83+ tho.

That reminds me the TI-86 which have that many RAM but only 96 KB can be used
Back to top
leofox
INF student


Super Elite (Last Title)


Joined: 11 Apr 2004
Posts: 3562

Posted: 07 Jan 2006 08:26:48 am    Post subject:

The RAM on the calcs works in pages: only one 32K ram page can be used, and one 32K app page. To enable that other RAM, you'd need to swap pages all the time.
Either way, you still wont be able to have stuff larger than 24K, and using pages will probably slow down BASIC a lot, because it has to change pages every time you are accessing a variable on another page.
Back to top
lloydkirk1989


Member


Joined: 18 Apr 2005
Posts: 161

Posted: 08 Jan 2006 01:08:44 am    Post subject:

Thanks for the info alex. I did some more research. The 83(84)SE has two 16k ram pages, 8k of which is used by the OS. Being that the ziglog z80 can only address 64k of memory, the only way it is able to handle the 1.5 megs archive is via page swapping, alot of it. So the 6 unused ram pages can be used.

edit:Michael V's virtual calc uses the 96k of unused ram. *checks out the source*
Back to top
Liazon
title goes here


Bandwidth Hog


Joined: 01 Nov 2005
Posts: 2007

Posted: 08 Jan 2006 01:51:36 pm    Post subject:

So addressing is why 64 bit is being introduced? to access more gigs on a computer?

What's a page?
Back to top
lloydkirk1989


Member


Joined: 18 Apr 2005
Posts: 161

Posted: 09 Jan 2006 02:12:10 pm    Post subject:

64 bit cpu's can address more ram hence making 64 bit programs faster than 32 bit programs. Pages are how the memory is grouped on the calculator.

Back to the topic, I don't think an OS patch would work. You would have to write a new OS. And there would be compatibility issues too. Ram page 0 and 1 would have a different address, so reg. TI-83+ programs wouldn't work. They can still be used for storage though.
Back to top
Display posts from previous:   
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
    »
» View previous topic :: View next topic  
Page 1 of 1 » All times are UTC - 5 Hours

 

Advertisement