<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://wikiti.brandonw.net/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wikiti.brandonw.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dr.+D%27nar</id>
		<title>WikiTI - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wikiti.brandonw.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dr.+D%27nar"/>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Special:Contributions/Dr._D%27nar"/>
		<updated>2026-04-09T14:23:53Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.23.5</generator>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Fundudeone</id>
		<title>User:Fundudeone</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Fundudeone"/>
				<updated>2025-08-11T02:09:38Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I enjoy programming for the TI84+ CE as a hobby, and I am &amp;quot;&amp;quot;&amp;quot;technically&amp;quot;&amp;quot;&amp;quot; a toolchain contributor. I'm hoping to document 84PCE ports that are writable but currently have no known function, specifically those related to the serial flash chip.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Fundudeone</id>
		<title>User talk:Fundudeone</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Fundudeone"/>
				<updated>2025-08-11T02:09:38Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 19:09, 10 August 2025 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Thecaticorn01</id>
		<title>User talk:Thecaticorn01</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Thecaticorn01"/>
				<updated>2025-04-10T03:54:40Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 20:54, 9 April 2025 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Thecaticorn01</id>
		<title>User:Thecaticorn01</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Thecaticorn01"/>
				<updated>2025-04-10T03:54:39Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hello!&lt;br /&gt;
&lt;br /&gt;
I am a high school student with moderate programming experience in Java, Python, HTML/CSS/JS, and the TI-BASIC programming languages (both the version for the TI-84+CE and for the TI-nSpire CX series).&lt;br /&gt;
&lt;br /&gt;
I am currently teaching myself ez80 assembly so I can make calculator programs!&lt;br /&gt;
&lt;br /&gt;
I have a TI-84 Plus Silver Edition (my first calculator!), a TI-84 Plus CE (which I mostly use for gaming and programming), and a TI-nSpire CX II CAS (which I use for school).&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Tortuguese</id>
		<title>User:Tortuguese</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Tortuguese"/>
				<updated>2025-04-10T03:51:38Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Programming TI Calculators for 6-7 years. Just started with assembly, trying to clean-up the Syscalls and other information for future programmers!&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Tortuguese</id>
		<title>User talk:Tortuguese</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Tortuguese"/>
				<updated>2025-04-10T03:51:38Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 20:51, 9 April 2025 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Tanja158</id>
		<title>User:Tanja158</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Tanja158"/>
				<updated>2025-04-10T03:46:52Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Student of IT; Interested in Programming and getting to know new languages&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Tanja158</id>
		<title>User talk:Tanja158</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Tanja158"/>
				<updated>2025-04-10T03:46:52Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 20:46, 9 April 2025 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:HackerDaGreat57</id>
		<title>User talk:HackerDaGreat57</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:HackerDaGreat57"/>
				<updated>2025-04-10T03:45:55Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 20:45, 9 April 2025 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:HackerDaGreat57</id>
		<title>User:HackerDaGreat57</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:HackerDaGreat57"/>
				<updated>2025-04-10T03:45:55Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I'm a high school sophomore who is interested in TI-84+SE and RP2040 programming. I consider writing assembly code an art form and love to learn all about development platforms like TI calculators and microcontrollers, and I hope I can design my own CPU one day in SystemVerilog.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:HeronErin</id>
		<title>User talk:HeronErin</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:HeronErin"/>
				<updated>2025-04-10T03:45:25Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 20:45, 9 April 2025 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:HeronErin</id>
		<title>User:HeronErin</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:HeronErin"/>
				<updated>2025-04-10T03:45:24Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am a TI83+ / TI84+ enthusiast. Love learning things about calculators, and have been hacking at them for years.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Olivebranch</id>
		<title>User:Olivebranch</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Olivebranch"/>
				<updated>2025-04-10T03:44:33Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A couple of months ago, around November 2023, I got interested in writing code for my Ti-83 Plus. So I got myself a link cable and a copy of brass, and the rest is history. I'm currently somewhat adept at writing z80 assembly and very good at Python. I am also working on a Ti-83 Plus emulator for fun, which funnily enough happens to be the reason I found my way to this website while looking for info on ports. I plan on eventually forking KnightOS or using the kernel for my own OS, or something along those lines.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Olivebranch</id>
		<title>User talk:Olivebranch</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Olivebranch"/>
				<updated>2025-04-10T03:44:33Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 20:44, 9 April 2025 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Clevor</id>
		<title>User:Clevor</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Clevor"/>
				<updated>2025-04-10T03:43:52Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Got a calculator in 6th grade, and I originally wanted a TI-Nspire CX II. However, they were sold out at the Walmart my mom and I went to. I got a Ti-84 Plus CE revision M there, and I used it a lot. I made a math menu helper thing tool called Mather, which was just yet another math menu equation thing. In 8th grade, I found a TI-84 Plus CE revision I in a lost and found drawer. I wanted a TI-84 Plus, so I traded my first CE with one of my cousins, who had an 84+ revision AB. I kept the revision I CE because I was able to install BOS on it, and I did once. In July of 2023, I bought a TI-Nspire with Touchpad. Just for Ndless, I bought a TI-Nspire CX II CAS the next month. I wanted to see the 68k series, so I bought a TI-89 Titanium in October. Unfortunately, it didn't respond to keypresses, unless via a genetated interrupt. After that, I bought a Voyage 200, which had abour 6 dead columns in the Ebay listing. Sometimes, it would change from 3 to 2 or 1 dead columns, which was strange. There was always 1 specific column that always stayed dead, no matter what. The day after I got my Voyage 200, my Geometry teacher got me her old TI-83 Plus. It didn't work. I don't have much of a plan on what [TI] calculator to buy next, as I am comfortable with what I have. When the Zero Calculator comes out, I may or may not buy it.&lt;br /&gt;
&lt;br /&gt;
My eventual goal is to have 1 of every calculator model. I am not going to buy a second copy of a calculator, unless it was given to me as a gift. I also want a single prototype calculator, which doesn't count towards the previous &amp;quot;rule&amp;quot;.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Clevor</id>
		<title>User talk:Clevor</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Clevor"/>
				<updated>2025-04-10T03:43:52Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 20:43, 9 April 2025 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:SJRw</id>
		<title>User:SJRw</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:SJRw"/>
				<updated>2022-08-26T18:20:32Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Heath Wang is my calculator “real name”, I have no relation to other incidental Heath Wangs that exist. I am sJRw on cemetech.net&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:SJRw</id>
		<title>User talk:SJRw</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:SJRw"/>
				<updated>2022-08-26T18:20:32Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 11:20, 26 August 2022 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:TIny_Hacker</id>
		<title>User talk:TIny Hacker</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:TIny_Hacker"/>
				<updated>2022-08-26T18:15:49Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 11:15, 26 August 2022 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:TIny_Hacker</id>
		<title>User:TIny Hacker</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:TIny_Hacker"/>
				<updated>2022-08-26T18:15:48Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi, I'm TIny_Hacker and I program calculators! This is my WikiTI page. There's not really anything else to say here.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=84PCE:Ports:0009</id>
		<title>84PCE:Ports:0009</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=84PCE:Ports:0009"/>
				<updated>2022-05-25T06:02:23Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: /* Bit [2] */ LCD /RESET&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:84PCE:Ports:By_Address|0009 - GPIO A OUT]] [[Category:84PCE:Ports:By_Name|GPIO A OUT]]&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Port Number:''' 0009&lt;br /&gt;
&lt;br /&gt;
'''Function:''' GPIO A Output&lt;br /&gt;
&lt;br /&gt;
== Details ==&lt;br /&gt;
&lt;br /&gt;
These GPIOs appear to be connected to power control.&lt;br /&gt;
&lt;br /&gt;
=== Bits [1:0] ===&lt;br /&gt;
Latches value written, no apparent effect.&lt;br /&gt;
&lt;br /&gt;
=== Bit [2] ===&lt;br /&gt;
Likely connected to the LCD's reset line, which is active low. After being set, the LCD must be given a sequence of initialization commands before it can display an image again.&lt;br /&gt;
&lt;br /&gt;
=== Bit [3] ===&lt;br /&gt;
Latches value written, no apparent effect.&lt;br /&gt;
&lt;br /&gt;
=== Bit [4] ===&lt;br /&gt;
SPI slave select - reset to communicate with the LCD, set to communicate with the Python coprocessor.&lt;br /&gt;
&lt;br /&gt;
=== Bits [7:5] ===&lt;br /&gt;
Latches value written, no apparent effect.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Sue_Doenim</id>
		<title>User:Sue Doenim</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Sue_Doenim"/>
				<updated>2022-05-01T20:16:20Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My programming career began in the humble TI-Basic program editor.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Sue_Doenim</id>
		<title>User talk:Sue Doenim</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Sue_Doenim"/>
				<updated>2022-05-01T20:16:20Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 13:16, 1 May 2022 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Mrwompwomp</id>
		<title>User:Mrwompwomp</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Mrwompwomp"/>
				<updated>2022-05-01T20:15:12Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am a calculator enthusiast and cemetech member. You can find me under a heaping pile of prototypes.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Mrwompwomp</id>
		<title>User talk:Mrwompwomp</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Mrwompwomp"/>
				<updated>2022-05-01T20:15:12Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 13:15, 1 May 2022 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:MicahSuess</id>
		<title>User:MicahSuess</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:MicahSuess"/>
				<updated>2022-05-01T20:13:59Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Electrical engineering and programming hobbyist. Experience with arduino micro controllers, and TI-84 Plus CE.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:MicahSuess</id>
		<title>User talk:MicahSuess</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:MicahSuess"/>
				<updated>2022-05-01T20:13:59Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 13:13, 1 May 2022 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:IPhoenix</id>
		<title>User talk:IPhoenix</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:IPhoenix"/>
				<updated>2022-05-01T20:12:50Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 13:12, 1 May 2022 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:IPhoenix</id>
		<title>User:IPhoenix</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:IPhoenix"/>
				<updated>2022-05-01T20:12:49Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I wonder how hard it is to reach ten words.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=84PCE:Wait_States</id>
		<title>84PCE:Wait States</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=84PCE:Wait_States"/>
				<updated>2022-04-24T19:12:12Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: /* Wait State Layout */ You can map up to 12 MB of serial flash&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:84PCE:General_Hardware_Information|Wait States]]&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
The eZ80 processor is able to perform a memory access in a single cycle. However, on the TI-84+CE, accesses will actually take longer due to wait states. For example, a read from RAM will take 4 cycles, because it has 3 wait states. The wait states for parallel Flash accesses can be customized, but it is unknown whether that is the case for other memory regions or for the newer serial flash.&lt;br /&gt;
&lt;br /&gt;
== Flash Access Wait States ==&lt;br /&gt;
&lt;br /&gt;
=== Parallel Flash ===&lt;br /&gt;
Calculators produced prior to revision M use a parallel flash chip. These chips are limited to a maximum read rate under 20 MHz, necessitating at least 1 wait state for the ASIC's faster 48 MHz clock. The ASIC's internal memory mapping hardware adds a minimum of 5 wait states just to ferry the request to the flash chip and the response back to the CPU, but additional external wait states are required for the flash chip to make its reply. See [[84PCE:Ports:1005]] for more information.&lt;br /&gt;
&lt;br /&gt;
=== Serial Flash ===&lt;br /&gt;
Calculators produced starting in 2019 with revision M no longer use a parallel flash chip, but instead an SPI flash chip. This flash chip needs much longer to initially retrieve data from a random address, but can stream sequential data at a reasonable rate. A new ASIC design takes advantage of this capability by adding a cache between the flash chip and CPU.&lt;br /&gt;
&lt;br /&gt;
According to tests performed by [[User:Jacobly|Jacobly]], the cache is 8&amp;amp;nbsp;K in size, structured as a 2-way set associative cache with 128 sets of 32 bytes chosen by address bits 5-11. A fetch from the same cache line as previously accessed costs 1 wait state (so the read takes a total of 2 cycles), a fetch from a different cache line costs 2 wait states, and a cache miss costs 194-200 wait states.&lt;br /&gt;
&lt;br /&gt;
Code execution from flash displays high locality of reference, so amortized performance should be reasonably good, although the 200 cycle penalty for a cache miss probably hurts a fair bit. For flash-resident data files, programmers should try to organize them to keep related data together to maximize cache utilization. A good access pattern can make accessing data in flash twice as fast as getting it from RAM, while a bad pattern can make it substantially worse than even pulling it from the old parallel flash.&lt;br /&gt;
&lt;br /&gt;
== LCD DMA ==&lt;br /&gt;
The LCD controller uses Direct Memory Access to retrieve the pixels from RAM. However, since the CPU and the LCD controller cannot access RAM at the same time, there are some waitstates caused asynchronously by the DMA during RAM accesses. The rate of waitstates caused by the DMA appears to be directly proportional to the rate of data being sent to the screen, so lower bit-per-pixel modes will reduce the general performance hit.&lt;br /&gt;
&lt;br /&gt;
== Wait State Layout ==&lt;br /&gt;
{|-&lt;br /&gt;
|&amp;lt;u&amp;gt;Address Range&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Read&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Write&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Description&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|000000-3FFFFF&lt;br /&gt;
|5+&lt;br /&gt;
|Crash&lt;br /&gt;
|[[84PCE:Ports:1000|Parallel flash]]: Wait states are controlled by [[:84PCE:Ports:1005|1005]], adding to the minimum of 5. The OS sets a total of 9 wait states.&lt;br /&gt;
|-&lt;br /&gt;
|000000-3FFFFF&lt;br /&gt;
|1-200&lt;br /&gt;
|Crash&lt;br /&gt;
|[[84PCE:OS:Serial_Flash_Commands|Serial flash:]] See above discussion.&lt;br /&gt;
|-&lt;br /&gt;
|400000-7FFFFF&lt;br /&gt;
|257&lt;br /&gt;
|Crash&lt;br /&gt;
|Parallel flash: Unmapped address space. Can be mapped to Flash using [[:84PCE:Ports:1002|1002]], after which Flash wait states are active.&lt;br /&gt;
|-&lt;br /&gt;
|400000-BFFFFF&lt;br /&gt;
|1-200&lt;br /&gt;
|Crash&lt;br /&gt;
|Serial flash: Flash mirrors. Up to 12 MB of total flash can be mapped using [[:84PCE:Ports:1000|182E]].&lt;br /&gt;
|-&lt;br /&gt;
|800000-CFFFFF&lt;br /&gt;
|257&lt;br /&gt;
|257&lt;br /&gt;
|Parallel flash: Unmapped address space.&lt;br /&gt;
|-&lt;br /&gt;
|C00000-CFFFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Serial flash: Unmapped address space.&lt;br /&gt;
|-&lt;br /&gt;
|D00000-D3FFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|RAM&lt;br /&gt;
|-&lt;br /&gt;
|D40000-D657FF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|VRAM&lt;br /&gt;
|-&lt;br /&gt;
|D65800-D72BFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped address space. Reads garbage.&lt;br /&gt;
|-&lt;br /&gt;
|D72C00-D7FFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped address space. Reads garbage (revisions up to at least C) or mirror of D52C00-D5FFFF (at least I-S).&lt;br /&gt;
|-&lt;br /&gt;
|D80000-DFFFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|Mirror of D00000-D7FFFF&lt;br /&gt;
|-&lt;br /&gt;
|Not mapped&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Port range [[:84PCE:Ports:0000|0000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E00000-E0FFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:1000|1000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E10000-E1FFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:2000|2000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E20000-E2FFFF&lt;br /&gt;
|3&lt;br /&gt;
&lt;br /&gt;
9-12&lt;br /&gt;
&lt;br /&gt;
6-8&lt;br /&gt;
&lt;br /&gt;
5-6&lt;br /&gt;
&lt;br /&gt;
4-5&lt;br /&gt;
|3&lt;br /&gt;
&lt;br /&gt;
9-12&lt;br /&gt;
&lt;br /&gt;
6-8&lt;br /&gt;
&lt;br /&gt;
5-6&lt;br /&gt;
&lt;br /&gt;
4-5&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:3000|3000]] (mirrored every 0200 bytes)&lt;br /&gt;
&lt;br /&gt;
Extra cycles if bit 7 ''or'' 8 of the address is set, when cpu is running at 48 MHz.&lt;br /&gt;
&lt;br /&gt;
Same at 24 MHz.&lt;br /&gt;
&lt;br /&gt;
Same at 12 MHz.&lt;br /&gt;
&lt;br /&gt;
Same at 6 MHz.&lt;br /&gt;
|-&lt;br /&gt;
|E30000-E3FFFF&lt;br /&gt;
|2&lt;br /&gt;
&lt;br /&gt;
2&lt;br /&gt;
&lt;br /&gt;
2&lt;br /&gt;
&lt;br /&gt;
2&lt;br /&gt;
&lt;br /&gt;
2&lt;br /&gt;
&lt;br /&gt;
3&lt;br /&gt;
&lt;br /&gt;
1&lt;br /&gt;
&lt;br /&gt;
1&lt;br /&gt;
&lt;br /&gt;
1&lt;br /&gt;
&lt;br /&gt;
1&lt;br /&gt;
|1&lt;br /&gt;
&lt;br /&gt;
20-21/22&lt;br /&gt;
&lt;br /&gt;
15/13&lt;br /&gt;
&lt;br /&gt;
11&lt;br /&gt;
&lt;br /&gt;
9&lt;br /&gt;
&lt;br /&gt;
3&lt;br /&gt;
&lt;br /&gt;
15-16/13&lt;br /&gt;
&lt;br /&gt;
12/10&lt;br /&gt;
&lt;br /&gt;
10/8&lt;br /&gt;
&lt;br /&gt;
8&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:4000|4000]] (mirrored every 1000 bytes)&lt;br /&gt;
&lt;br /&gt;
Special timing for 4000-400F &amp;amp; 4018-401B (pre-M/M+) at 48 MHz&lt;br /&gt;
&lt;br /&gt;
Same at 24 MHz&lt;br /&gt;
&lt;br /&gt;
Same at 12 MHz&lt;br /&gt;
&lt;br /&gt;
Same at 6 MHz&lt;br /&gt;
&lt;br /&gt;
Special timing for 4200-43FF (any CPU speed)&lt;br /&gt;
&lt;br /&gt;
Special timing for 4C00-4DFF (pre-M/M+) at 48 MHz&lt;br /&gt;
&lt;br /&gt;
Same at 24 MHz&lt;br /&gt;
&lt;br /&gt;
Same at 12 MHz&lt;br /&gt;
&lt;br /&gt;
Same at 6 MHz&lt;br /&gt;
|-&lt;br /&gt;
|E40000-EFFFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-&lt;br /&gt;
|F00000-F0FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:5000|5000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F10000-F1FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:6000|6000]] (mirrored every 0020 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F20000-F2FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:7000|7000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F30000-F3FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:8000|8000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F40000-F4FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:9000|9000]] (mirrored every 1000 bytes, possibly protected port range)&lt;br /&gt;
|-&lt;br /&gt;
|F50000-F5FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:A000|A000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F60000-F6FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:B000|B000]] (mirrored every 1000 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F70000-F7FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:C000|C000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F80000-F8FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:D000|D000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F90000-F9FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:E000|E000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|FA0000-FAFFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:F000|F000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|FB0000-FEFFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-&lt;br /&gt;
|FF0000-FFFFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking</id>
		<title>83Plus:Overclocking</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking"/>
				<updated>2020-05-08T03:36:48Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Ugh, fix characters AGAIN&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:General Hardware Information|Overclocking]]&lt;br /&gt;
[[Category:84PCSE:General Hardware Information|Overclocking]]&lt;br /&gt;
&lt;br /&gt;
The TI-83+SE, TI-84+, TI-84+SE, and TI-84+CSE can all be overclocked. The TI-83+SE had special solder pads to enable overclocking, but the TI-84+ series lacks them. &lt;br /&gt;
&lt;br /&gt;
[[File:TA3 ASIC overclock.jpg|350px|thumb|right|Image of the TA3 ASIC highlighting the relevant pins. Note the silk-screened pin 1 label and the filled circle on the upper-left of the ASIC.]]&lt;br /&gt;
&lt;br /&gt;
The TI-84+CSE and older TI-84+/SEs use the TA3 ASIC (port 15 reads 45h), pictured on the right. Pins 67-72 on the TA3 connect to an external RC tank circuit. The calculators have 4 CPU speed modes, which were originally supposed to be 6, 15, 20, and 25 MHz; production calculators only have 6 and 15 MHz modes. The four red pins correspond to the four CPU speed modes.&lt;br /&gt;
&lt;br /&gt;
To enable speeds 02 and 03 on the TA3, add resistors on pins 70 and 71. The calculator seems unstable above 22&amp;amp;nbsp;MHz, which suggests that TI didn't implement the 20&amp;amp;nbsp;MHz mode due to resistors not being accurate enough (some calcs might get a particularly bad resistor and end up being more like 23&amp;amp;nbsp;MHz for the resistor value that should give 20&amp;amp;nbsp;MHz). The TA1 ASIC is a reduced pin count design and appears to lack the pins for the 02 and 03 CPU modes.&lt;br /&gt;
&lt;br /&gt;
[[File:TA1 ASIC overclock.jpg|350px|thumb|right|Image of the TA1 ASIC highlighting the relevant pins. Note the silk-screened pin 51 label.]]&lt;br /&gt;
&lt;br /&gt;
Each successive CPU speed mode enables more resistors in parallel. In mode 0, only R08D is used; in mode 1, R07D is in parallel with R08D. On my (DrDnar's) calculators, I get R08D &amp;amp;#8776;&amp;amp;nbsp;1.8&amp;amp;nbsp;k&amp;amp;#8486; and R07D &amp;amp;#8776;&amp;amp;nbsp;1.2&amp;amp;nbsp;k&amp;amp;#8486;. To overclock CPU speed 1 to &amp;amp;#8776;&amp;amp;nbsp;20.4&amp;amp;nbsp;MHz, replace R07D with an 820&amp;amp;nbsp;&amp;amp;#8486; resistor. 20&amp;amp;nbsp;MHz is pushing the limits of what the flash chip is spec'd for, so consider instead 910&amp;amp;nbsp;&amp;amp;#8486; for &amp;amp;#8776;&amp;amp;nbsp;19&amp;amp;nbsp;MHz, or 1&amp;amp;nbsp;k&amp;amp;#8486; for &amp;amp;#8776;&amp;amp;nbsp;18&amp;amp;nbsp;MHz, which should hopefully be safe for all calculators.&lt;br /&gt;
&lt;br /&gt;
However, a much easier---though less precise---method is to adjust R07D with a pencil. The graphite marks left by pencils are actually conductive, and it turns out that HB pencil marks are in the right range for adjusting the resistor's value. By drawing a really heavy mark over the face of the whole resistor, you can pull down the resistance enough to get 18-19 or so MHz. It's also possible that a different weight lead like 9B might be even more conductive, allowing even faster speeds, and you can always smudge the graphite off with your finger if the calculator proves unstable.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking</id>
		<title>83Plus:Overclocking</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking"/>
				<updated>2020-05-08T03:19:04Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Pencils: The great makeshift trim pot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:General Hardware Information|Overclocking]]&lt;br /&gt;
[[Category:84PCSE:General Hardware Information|Overclocking]]&lt;br /&gt;
&lt;br /&gt;
The TI-83+SE, TI-84+, TI-84+SE, and TI-84+CSE can all be overclocked. The TI-83+SE had special solder pads to enable overclocking, but the TI-84+ series lacks them. &lt;br /&gt;
&lt;br /&gt;
[[File:TA3 ASIC overclock.jpg|350px|thumb|right|Image of the TA3 ASIC highlighting the relevant pins. Note the silk-screened pin 1 label and the filled circle on the upper-left of the ASIC.]]&lt;br /&gt;
&lt;br /&gt;
The TI-84+CSE and older TI-84+/SEs use the TA3 ASIC (port 15 reads 45h), pictured on the right. Pins 67-72 on the TA3 connect to an external RC tank circuit. The calculators have 4 CPU speed modes, which were originally supposed to be 6, 15, 20, and 25 MHz; production calculators only have 6 and 15 MHz modes. The four red pins correspond to the four CPU speed modes.&lt;br /&gt;
&lt;br /&gt;
To enable speeds 02 and 03 on the TA3, add resistors on pins 70 and 71. The calculator seems unstable above 22&amp;amp;nbsp;MHz, which suggests that TI didn't implement the 20&amp;amp;nbsp;MHz mode due to resistors not being accurate enough (some calcs might get a particularly bad resistor and end up being more like 23&amp;amp;nbsp;MHz for the resistor value that should give 20&amp;amp;nbsp;MHz). The TA1 ASIC is a reduced pin count design and appears to lack the pins for the 02 and 03 CPU modes.&lt;br /&gt;
&lt;br /&gt;
[[File:TA1 ASIC overclock.jpg|350px|thumb|right|Image of the TA1 ASIC highlighting the relevant pins. Note the silk-screened pin 51 label.]]&lt;br /&gt;
&lt;br /&gt;
Each successive CPU speed mode enables more resistors in parallel. In mode 0, only R08D is used; in mode 1, R07D is in parallel with R08D. On my (DrDnar's) calculators, I get R08D &amp;amp;#8776;&amp;amp;nbsp;1.8&amp;amp;nbsp;k? and R07D &amp;amp;#8776;&amp;amp;nbsp;1.2&amp;amp;nbsp;k?. To overclock CPU speed 1 to &amp;amp;#8776;&amp;amp;nbsp;20.4&amp;amp;nbsp;MHz, replace R07D with an 820&amp;amp;nbsp;? resistor. 20&amp;amp;nbsp;MHz is pushing the limits of what the flash chip is spec'd for, so consider instead 910&amp;amp;nbsp;? for &amp;amp;#8776;&amp;amp;nbsp;19&amp;amp;nbsp;MHz, or 1&amp;amp;nbsp;k? for &amp;amp;#8776;&amp;amp;nbsp;18&amp;amp;nbsp;MHz, which should hopefully be safe for all calculators.&lt;br /&gt;
&lt;br /&gt;
However, a much easier---though less precise---method is to adjust R07D with a pencil. The graphite marks left by pencils are actually conductive, and it turns out that HB pencil marks are in the right range for adjusting the resistor's value. By drawing a really heavy mark over the face of the whole resistor, you can pull down the resistance enough to get 18-19 or so MHz. It's also possible that a different weight lead like 9B might be even more conductive, allowing even faster speeds, and you can always smudge the graphite off with your finger if the calculator proves unstable.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Wilkgr</id>
		<title>User:Wilkgr</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Wilkgr"/>
				<updated>2020-05-08T01:49:26Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi! I'm not sure what to exactly but in a biography. I'm a first year uni student studying engineering. I'm no longer allowed to use graphing calculators for exams (I was allowed at school) so I thought now is as good of a time as any to hack on them. I'm not particularly experienced with them. I have two TI-84+, one of which is broken, and a TI-Nspire CX CAS.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Wilkgr</id>
		<title>User talk:Wilkgr</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Wilkgr"/>
				<updated>2020-05-08T01:49:26Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 18:49, 7 May 2020 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking</id>
		<title>83Plus:Overclocking</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking"/>
				<updated>2020-05-08T00:14:26Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Hopefully fix characters&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:General Hardware Information|Overclocking]]&lt;br /&gt;
[[Category:84PCSE:General Hardware Information|Overclocking]]&lt;br /&gt;
&lt;br /&gt;
The TI-83+SE, TI-84+, TI-84+SE, and TI-84+CSE can all be overclocked. The TI-83+SE had special solder pads to enable overclocking, but the TI-84+ series lacks them. &lt;br /&gt;
&lt;br /&gt;
[[File:TA3 ASIC overclock.jpg|350px|thumb|right|Image of the TA3 ASIC highlighting the relevant pins. Note the silk-screened pin 1 label and the filled circle on the upper-left of the ASIC.]]&lt;br /&gt;
&lt;br /&gt;
The TI-84+CSE and older TI-84+/SEs use the TA3 ASIC (port 15 reads 45h), pictured on the right. Pins 67-72 on the TA3 connect to an external RC tank circuit. The calculators have 4 CPU speed modes, which were originally supposed to be 6, 15, 20, and 25 MHz; production calculators only have 6 and 15 MHz modes. The four red pins correspond to the four CPU speed modes.&lt;br /&gt;
&lt;br /&gt;
To enable speeds 02 and 03 on the TA3, add resistors on pins 70 and 71. The calculator seems unstable above 22&amp;amp;nbsp;MHz, which suggests that TI didn't implement the 20&amp;amp;nbsp;MHz mode due to resistors not being accurate enough (some calcs might get a particularly bad resistor and end up being more like 23&amp;amp;nbsp;MHz for the resistor value that should give 20&amp;amp;nbsp;MHz). The TA1 ASIC is a reduced pin count design and appears to lack the pins for the 02 and 03 CPU modes.&lt;br /&gt;
&lt;br /&gt;
[[File:TA1 ASIC overclock.jpg|350px|thumb|right|Image of the TA1 ASIC highlighting the relevant pins. Note the silk-screened pin 51 label.]]&lt;br /&gt;
&lt;br /&gt;
Each successive CPU speed mode enables more resistors in parallel. In mode 0, only R08D is used; in mode 1, R07D is in parallel with R08D. On my (DrDnar's) calculators, I get R08D &amp;amp;#8776;&amp;amp;nbsp;1.8&amp;amp;nbsp;k? and R07D &amp;amp;#8776;&amp;amp;nbsp;1.2&amp;amp;nbsp;k?. To overclock CPU speed 1 to &amp;amp;#8776;&amp;amp;nbsp;20.4&amp;amp;nbsp;MHz, replace R07D with an 820&amp;amp;nbsp;? resistor. 20&amp;amp;nbsp;MHz is pushing the limits of what the flash chip is spec'd for, so consider instead 910&amp;amp;nbsp;? for &amp;amp;#8776;&amp;amp;nbsp;19&amp;amp;nbsp;MHz, or 1&amp;amp;nbsp;k? for &amp;amp;#8776;&amp;amp;nbsp;18&amp;amp;nbsp;MHz, which should hopefully be safe for all calculators.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking</id>
		<title>83Plus:Overclocking</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking"/>
				<updated>2020-05-08T00:11:51Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Add specifics for overclocking&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:General Hardware Information|Overclocking]]&lt;br /&gt;
[[Category:84PCSE:General Hardware Information|Overclocking]]&lt;br /&gt;
&lt;br /&gt;
The TI-83+SE, TI-84+, TI-84+SE, and TI-84+CSE can all be overclocked. The TI-83+SE had special solder pads to enable overclocking, but the TI-84+ series lacks them. &lt;br /&gt;
&lt;br /&gt;
[[File:TA3 ASIC overclock.jpg|350px|thumb|right|Image of the TA3 ASIC highlighting the relevant pins. Note the silk-screened pin 1 label and the filled circle on the upper-left of the ASIC.]]&lt;br /&gt;
&lt;br /&gt;
The TI-84+CSE and older TI-84+/SEs use the TA3 ASIC (port 15 reads 45h), pictured on the right. Pins 67-72 on the TA3 connect to an external RC tank circuit. The calculators have 4 CPU speed modes, which were originally supposed to be 6, 15, 20, and 25 MHz; production calculators only have 6 and 15 MHz modes. The four red pins correspond to the four CPU speed modes.&lt;br /&gt;
&lt;br /&gt;
To enable speeds 02 and 03 on the TA3, add resistors on pins 70 and 71. The calculator seems unstable above 22&amp;amp;nbsp;MHz, which suggests that TI didn't implement the 20&amp;amp;nbsp;MHz mode due to resistors not being accurate enough (some calcs might get a particularly bad resistor and end up being more like 23&amp;amp;nbsp;MHz for the resistor value that should give 20&amp;amp;nbsp;MHz). The TA1 ASIC is a reduced pin count design and appears to lack the pins for the 02 and 03 CPU modes.&lt;br /&gt;
&lt;br /&gt;
[[File:TA1 ASIC overclock.jpg|350px|thumb|right|Image of the TA1 ASIC highlighting the relevant pins. Note the silk-screened pin 51 label.]]&lt;br /&gt;
&lt;br /&gt;
Each successive CPU speed mode enables more resistors in parallel. In mode 0, only R08D is used; in mode 1, R07D is in parallel with R08D. On my (DrDnar's) calculators, I get R08D ?&amp;amp;nbsp;1.8&amp;amp;nbsp;k? and R07D ?&amp;amp;nbsp;1.2&amp;amp;nbsp;k?. To overclock CPU speed 1 to ?&amp;amp;nbsp;20.4&amp;amp;nbsp;MHz, replace R07D with an 820&amp;amp;nbsp;? resistor. 20&amp;amp;nbsp;MHz is pushing the limits of what the flash chip is spec'd for, so consider instead 910&amp;amp;nbsp;? for ?&amp;amp;nbsp;19&amp;amp;nbsp;MHz, or 1&amp;amp;nbsp;k? for ?&amp;amp;nbsp;18&amp;amp;nbsp;MHz, which should hopefully be safe for all calculators.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking</id>
		<title>83Plus:Overclocking</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Overclocking"/>
				<updated>2020-05-06T23:03:24Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Add information for the TA1 ASIC.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:General Hardware Information|Overclocking]]&lt;br /&gt;
[[Category:84PCSE:General Hardware Information|Overclocking]]&lt;br /&gt;
&lt;br /&gt;
The TI-83+SE, TI-84+, TI-84+SE, and TI-84+CSE can all be overclocked. The TI-83+SE had special solder pads to enable overclocking, but the TI-84+ series lacks them. &lt;br /&gt;
&lt;br /&gt;
[[File:TA3 ASIC overclock.jpg|350px|thumb|right|Image of the TA3 ASIC highlighting the relevant pins. Note the silk-screened pin 1 label and the filled circle on the upper-left of the ASIC.]]&lt;br /&gt;
&lt;br /&gt;
The TI-84+CSE and older TI-84+/SEs use the TA3 ASIC (port 15 reads 45h), pictured on the right. Pins 67-72 on the TA3 connect to an external RC tank circuit. The calculators have 4 CPU speed modes, which were originally supposed to be 6, 15, 20, and 25 MHz; production calculators only have 6 and 15 MHz modes. The four red pins correspond to the four CPU speed modes.&lt;br /&gt;
&lt;br /&gt;
To overclock the TA3, add resistors on pins 70 and 71. The calculator seems unstable above 22 MHz, which suggests that TI didn't implement the 20 MHz mode due to resistors not being accurate enough (some calcs might get a particularly bad resistor and end up being more like 23 MHz for the resistor value that should give 20 MHz).&lt;br /&gt;
&lt;br /&gt;
[[File:TA1 ASIC overclock.jpg|350px|thumb|right|Image of the TA1 ASIC highlighting the relevant pins. Note the silk-screened pin 51 label.]]&lt;br /&gt;
&lt;br /&gt;
The TA1 ASIC is a reduced pin count design and appears to lack the pins for the 02 and 03 CPU modes. To overclock the TA1, change the resistors connected to ASIC pins 53 and 54. On the board in the picture, the resistors are labeled R07D and R08D. Labeling and positioning may be different on later devices.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=File:TA1_ASIC_overclock.jpg</id>
		<title>File:TA1 ASIC overclock.jpg</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=File:TA1_ASIC_overclock.jpg"/>
				<updated>2020-05-06T22:36:43Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: This file highlights the relevant pins for overclocking the TA1 ASIC used in newer TI-84+/SEs.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This file highlights the relevant pins for overclocking the TA1 ASIC used in newer TI-84+/SEs.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=84PCE:Wait_States</id>
		<title>84PCE:Wait States</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=84PCE:Wait_States"/>
				<updated>2020-04-18T18:47:04Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Serial flash mirrors&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:84PCE:General_Hardware_Information|Wait States]]&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
The eZ80 processor is able to perform a memory access in a single cycle. However, on the TI-84+CE, accesses will actually take longer due to wait states. For example, a read from RAM will take 4 cycles, because it has 3 wait states. The wait states for parallel Flash accesses can be customized, but it is unknown whether that is the case for other memory regions or for the newer serial flash.&lt;br /&gt;
&lt;br /&gt;
== Flash Access Wait States ==&lt;br /&gt;
&lt;br /&gt;
=== Parallel Flash ===&lt;br /&gt;
Calculators produced prior to revision M use a parallel flash chip. These chips are limited to a maximum read rate under 20 MHz, necessitating at least 1 wait state for the ASIC's faster 48 MHz clock. The ASIC's internal memory mapping hardware adds a minimum of 5 wait states just to ferry the request to the flash chip and the response back to the CPU, but additional external wait states are required for the flash chip to make its reply. See [[84PCE:Ports:1005]] for more information.&lt;br /&gt;
&lt;br /&gt;
=== Serial Flash ===&lt;br /&gt;
Calculators produced starting in 2019 with revision M no longer use a parallel flash chip, but instead an SPI flash chip. This flash chip needs much longer to initially retrieve data from a random address, but can stream sequential data at a reasonable rate. A new ASIC design takes advantage of this capability by adding a cache between the flash chip and CPU.&lt;br /&gt;
&lt;br /&gt;
According to tests performed by [[User:Jacobly|Jacobly]], the cache is 8&amp;amp;nbsp;K in size, structured as a 2-way set associative cache with 128 sets of 32 bytes chosen by address bits 5-11. A fetch from the same cache line as previously accessed costs 1 wait state (so the read takes a total of 2 cycles), a fetch from a different cache line costs 2 wait states, and a cache miss costs 194-200 wait states.&lt;br /&gt;
&lt;br /&gt;
Code execution from flash displays high locality of reference, so amortized performance should be reasonably good, although the 200 cycle penalty for a cache miss probably hurts a fair bit. For flash-resident data files, programmers should try to organize them to keep related data together to maximize cache utilization. A good access pattern can make accessing data in flash twice as fast as getting it from RAM, while a bad pattern can make it substantially worse than even pulling it from the old parallel flash.&lt;br /&gt;
&lt;br /&gt;
== LCD DMA ==&lt;br /&gt;
The LCD controller uses Direct Memory Access to retrieve the pixels from RAM. However, since the CPU and the LCD controller cannot access RAM at the same time, there are some waitstates caused asynchronously by the DMA during RAM accesses. The rate of waitstates caused by the DMA appears to be directly proportional to the rate of data being sent to the screen, so lower bit-per-pixel modes will reduce the general performance hit.&lt;br /&gt;
&lt;br /&gt;
== Wait State Layout ==&lt;br /&gt;
{|-&lt;br /&gt;
|&amp;lt;u&amp;gt;Address Range&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Read&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Write&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Description&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|000000-3FFFFF&lt;br /&gt;
|5+&lt;br /&gt;
|Crash&lt;br /&gt;
|[[84PCE:Ports:1000|Parallel flash]]: Wait states are controlled by [[:84PCE:Ports:1005|1005]], adding to the minimum of 5. The OS sets a total of 9 wait states.&lt;br /&gt;
|-&lt;br /&gt;
|000000-3FFFFF&lt;br /&gt;
|1-200&lt;br /&gt;
|Crash&lt;br /&gt;
|[[84PCE:OS:Serial_Flash_Commands|Serial flash:]] See above discussion.&lt;br /&gt;
|-&lt;br /&gt;
|400000-7FFFFF&lt;br /&gt;
|257&lt;br /&gt;
|Crash&lt;br /&gt;
|Parallel flash: Unmapped address space. Can be mapped to Flash using [[:84PCE:Ports:1002|1002]], after which Flash wait states are active.&lt;br /&gt;
|-&lt;br /&gt;
|400000-BFFFFF&lt;br /&gt;
|1-200&lt;br /&gt;
|Crash&lt;br /&gt;
|Serial flash: Flash mirrors. Appears to be subject to flash cache timing as discussed above&lt;br /&gt;
|-&lt;br /&gt;
|800000-CFFFFF&lt;br /&gt;
|257&lt;br /&gt;
|257&lt;br /&gt;
|Parallel flash: Unmapped address space.&lt;br /&gt;
|-&lt;br /&gt;
|C00000-CFFFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Serial flash: Unmapped address space.&lt;br /&gt;
|-&lt;br /&gt;
|D00000-D3FFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|RAM&lt;br /&gt;
|-&lt;br /&gt;
|D40000-D657FF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|VRAM&lt;br /&gt;
|-&lt;br /&gt;
|D65800-D7FFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped address space. Reads garbage.&lt;br /&gt;
|-&lt;br /&gt;
|D80000-DFFFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|Mirror of D00000-D7FFFF&lt;br /&gt;
|-&lt;br /&gt;
|Not mapped&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Port range [[:84PCE:Ports:0000|0000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E00000-E0FFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:1000|1000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E10000-E1FFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:2000|2000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E20000-E2FFFF&lt;br /&gt;
|3&lt;br /&gt;
&lt;br /&gt;
9-12&lt;br /&gt;
&lt;br /&gt;
6-8&lt;br /&gt;
&lt;br /&gt;
5-6&lt;br /&gt;
&lt;br /&gt;
4-5&lt;br /&gt;
|3&lt;br /&gt;
&lt;br /&gt;
9-12&lt;br /&gt;
&lt;br /&gt;
6-8&lt;br /&gt;
&lt;br /&gt;
5-6&lt;br /&gt;
&lt;br /&gt;
4-5&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:3000|3000]] (mirrored every 0200 bytes)&lt;br /&gt;
&lt;br /&gt;
Extra cycles if bit 7 ''or'' 8 of the address is set, when cpu is running at 48Mhz.&lt;br /&gt;
&lt;br /&gt;
Same at 24Mhz.&lt;br /&gt;
&lt;br /&gt;
Same at 12Mhz.&lt;br /&gt;
&lt;br /&gt;
Same at 6Mhz.&lt;br /&gt;
|-&lt;br /&gt;
|E30000-E3FFFF&lt;br /&gt;
|2&lt;br /&gt;
|1&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:4000|4000]] (mirrored every 1000 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E40000-EFFFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-&lt;br /&gt;
|F00000-F0FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:5000|5000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F10000-F1FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:6000|6000]] (mirrored every 0020 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F20000-F2FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:7000|7000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F30000-F3FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:8000|8000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F40000-F4FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:9000|9000]] (mirrored every 1000 bytes, possibly protected port range)&lt;br /&gt;
|-&lt;br /&gt;
|F50000-F5FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:A000|A000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F60000-F6FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:B000|B000]] (mirrored every 1000 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F70000-F7FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:C000|C000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F80000-F8FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:D000|D000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F90000-F9FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:E000|E000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|FA0000-FAFFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:F000|F000]] (reads all zeros)&lt;br /&gt;
|-&lt;br /&gt;
|FB0000-FEFFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-&lt;br /&gt;
|FF0000-FFFFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:ItsBrando</id>
		<title>User:ItsBrando</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:ItsBrando"/>
				<updated>2020-04-18T16:32:56Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;z80, eZ80, and C programmer for TI-84 and TI-84PCE&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:ItsBrando</id>
		<title>User talk:ItsBrando</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:ItsBrando"/>
				<updated>2020-04-18T16:32:56Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 09:32, 18 April 2020 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=84PCE:Wait_States</id>
		<title>84PCE:Wait States</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=84PCE:Wait_States"/>
				<updated>2020-04-18T16:28:52Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Update for serial flash&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:84PCE:General_Hardware_Information|Wait States]]&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
The eZ80 processor is able to perform a memory access in a single cycle. However, on the TI-84+CE, accesses will actually take longer due to wait states. For example, a read from RAM will take 4 cycles, because it has 3 wait states. The wait states for parallel Flash accesses can be customized, but it is unknown whether that is the case for other memory regions or for the newer serial flash.&lt;br /&gt;
&lt;br /&gt;
== Flash Access Wait States ==&lt;br /&gt;
&lt;br /&gt;
=== Parallel Flash ===&lt;br /&gt;
Calculators produced prior to revision M use a parallel flash chip. These chips are limited to a maximum read rate under 20 MHz, necessitating at least 1 wait state for the ASIC's faster 48 MHz clock. The ASIC's internal memory mapping hardware adds a minimum of 5 wait states just to ferry the request to the flash chip and the response back to the CPU, but additional external wait states are required for the flash chip to make its reply. See [[84PCE:Ports:1005]] for more information.&lt;br /&gt;
&lt;br /&gt;
=== Serial Flash ===&lt;br /&gt;
Calculators produced starting in 2019 with revision M no longer use a parallel flash chip, but instead an SPI flash chip. This flash chip needs much longer to initially retrieve data from a random address, but can stream sequential data at a reasonable rate. A new ASIC design takes advantage of this capability by adding a cache between the flash chip and CPU.&lt;br /&gt;
&lt;br /&gt;
According to tests performed by [[User:Jacobly|Jacobly]], the cache is 8&amp;amp;nbsp;K in size, structured as a 2-way set associative cache with 128 sets of 32 bytes chosen by address bits 5-11. A fetch from the same cache line as previously accessed costs 1 wait state (so the read takes a total of 2 cycles), a fetch from a different cache line costs 2 wait states, and a cache miss costs 194-200 wait states.&lt;br /&gt;
&lt;br /&gt;
Code execution from flash displays high locality of reference, so amortized performance should be reasonably good, although the 200 cycle penalty for a cache miss probably hurts a fair bit. For flash-resident data files, programmers should try to organize them to keep related data together to maximize cache utilization. A good access pattern can make accessing data in flash twice as fast as getting it from RAM, while a bad pattern can make it substantially worse than even pulling it from the old parallel flash.&lt;br /&gt;
&lt;br /&gt;
== LCD DMA ==&lt;br /&gt;
The LCD controller uses Direct Memory Access to retrieve the pixels from RAM. However, since the CPU and the LCD controller cannot access RAM at the same time, there are some waitstates caused asynchronously by the DMA during RAM accesses. The rate of waitstates caused by the DMA appears to be directly proportional to the rate of data being sent to the screen, so lower bit-per-pixel modes will reduce the general performance hit.&lt;br /&gt;
&lt;br /&gt;
== Wait State Layout ==&lt;br /&gt;
{|-&lt;br /&gt;
|&amp;lt;u&amp;gt;Address Range&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Read&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Write&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Description&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|000000-3FFFFF&lt;br /&gt;
|5+&lt;br /&gt;
|Crash&lt;br /&gt;
|[[84PCE:Ports:1000|Parallel flash]]: Wait states are controlled by [[:84PCE:Ports:1005|1005]], adding to the minimum of 5. The OS sets a total of 9 wait states.&lt;br /&gt;
|-&lt;br /&gt;
|000000-3FFFFF&lt;br /&gt;
|1-200&lt;br /&gt;
|Crash&lt;br /&gt;
|[[84PCE:OS:Serial_Flash_Commands|Serial flash:]] See above discussion.&lt;br /&gt;
|-&lt;br /&gt;
|400000-7FFFFF&lt;br /&gt;
|257&lt;br /&gt;
|Crash&lt;br /&gt;
|Parallel flash: Unmapped address space. Can be mapped to Flash using [[:84PCE:Ports:1002|1002]], after which Flash wait states are active.&lt;br /&gt;
|-&lt;br /&gt;
|400000-7FFFFF&lt;br /&gt;
|1-200&lt;br /&gt;
|Crash&lt;br /&gt;
|Serial flash: Unmapped address space. Appears to be subject to flash cache timing as discussed above&lt;br /&gt;
|-&lt;br /&gt;
|800000-CFFFFF&lt;br /&gt;
|257 &amp;amp;#124; 1&lt;br /&gt;
|257 &amp;amp;#124; 1&lt;br /&gt;
|Unmapped address space. These are reduced to 1 on Python Edition.&lt;br /&gt;
|-&lt;br /&gt;
|D00000-D3FFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|RAM&lt;br /&gt;
|-&lt;br /&gt;
|D40000-D657FF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|VRAM&lt;br /&gt;
|-&lt;br /&gt;
|D65800-D7FFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped address space. Reads garbage.&lt;br /&gt;
|-&lt;br /&gt;
|D80000-DFFFFF&lt;br /&gt;
|3&lt;br /&gt;
|1&lt;br /&gt;
|Mirror of D00000-D7FFFF&lt;br /&gt;
|-&lt;br /&gt;
|Not mapped&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Port range [[:84PCE:Ports:0000|0000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E00000-E0FFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:1000|1000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E10000-E1FFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:2000|2000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E20000-E2FFFF&lt;br /&gt;
|3&lt;br /&gt;
&lt;br /&gt;
9-12&lt;br /&gt;
&lt;br /&gt;
6-8&lt;br /&gt;
&lt;br /&gt;
5-6&lt;br /&gt;
&lt;br /&gt;
4-5&lt;br /&gt;
|3&lt;br /&gt;
&lt;br /&gt;
9-12&lt;br /&gt;
&lt;br /&gt;
6-8&lt;br /&gt;
&lt;br /&gt;
5-6&lt;br /&gt;
&lt;br /&gt;
4-5&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:3000|3000]] (mirrored every 0200 bytes)&lt;br /&gt;
&lt;br /&gt;
Extra cycles if bit 7 ''or'' 8 of the address is set, when cpu is running at 48Mhz.&lt;br /&gt;
&lt;br /&gt;
Same at 24Mhz.&lt;br /&gt;
&lt;br /&gt;
Same at 12Mhz.&lt;br /&gt;
&lt;br /&gt;
Same at 6Mhz.&lt;br /&gt;
|-&lt;br /&gt;
|E30000-E3FFFF&lt;br /&gt;
|2&lt;br /&gt;
|1&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:4000|4000]] (mirrored every 1000 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|E40000-EFFFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-&lt;br /&gt;
|F00000-F0FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:5000|5000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F10000-F1FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:6000|6000]] (mirrored every 0020 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F20000-F2FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:7000|7000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F30000-F3FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:8000|8000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F40000-F4FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:9000|9000]] (mirrored every 1000 bytes, possibly protected port range)&lt;br /&gt;
|-&lt;br /&gt;
|F50000-F5FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:A000|A000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F60000-F6FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:B000|B000]] (mirrored every 1000 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F70000-F7FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:C000|C000]] (mirrored every 0100 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F80000-F8FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:D000|D000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|F90000-F9FFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:E000|E000]] (mirrored every 0080 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|FA0000-FAFFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Memory-mapped port range [[:84PCE:Ports:F000|F000]] (reads all zeros)&lt;br /&gt;
|-&lt;br /&gt;
|FB0000-FEFFFF&lt;br /&gt;
|2&lt;br /&gt;
|2&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-&lt;br /&gt;
|FF0000-FFFFFF&lt;br /&gt;
|1&lt;br /&gt;
|1&lt;br /&gt;
|Unmapped port range (reads all zeros)&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Category:84PCE:General_Hardware_Information</id>
		<title>Category:84PCE:General Hardware Information</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Category:84PCE:General_Hardware_Information"/>
				<updated>2020-04-18T15:58:04Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Update for new stuff&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The TI-84 Plus CE and TI-83 Premium are two models new in 2015. The former is for the USA region (maybe all of North American?) and the latter is for France. The hardware is virtually identical between the two models. In 2019, a new revision beginning with revision M was introduced, using a cached serial flash chip and optionally featuring an [[84PCE:Ports:E000|ARM coprocessor]] for running Python programs.&lt;br /&gt;
&lt;br /&gt;
Known hardware facts:&lt;br /&gt;
* eZ80 CPU&lt;br /&gt;
** Physical clock speed believed to be 48 MHz&lt;br /&gt;
** CPU performance is severely constrained by wait states for accessing RAM and flash&lt;br /&gt;
** On devices manufactured before revision M, the effective clock is speed between 8-16 MHz depending on ratio of RAM to flash accesses&lt;br /&gt;
** On later devices, the effective clock speed may be closer to 20 MHz, depending on RAM-to-flash access ratio as well as cache utilization&lt;br /&gt;
* 4 MB flash chip&lt;br /&gt;
** Bottom-boot organization this time&lt;br /&gt;
* 256 K main RAM&lt;br /&gt;
* Memory-mapped LCD&lt;br /&gt;
** 153600 bytes of VRAM confirmed, unknown if more exists&lt;br /&gt;
** Possibly an ARM Primecell PL111[http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0293c/index.html &amp;lt;nowiki&amp;gt;[HTML]&amp;lt;/nowiki&amp;gt;][http://infocenter.arm.com/help/topic/com.arm.doc.ddi0293c/DDI0293.pdf &amp;lt;nowiki&amp;gt;[PDF]&amp;lt;/nowiki&amp;gt;]&lt;br /&gt;
* French version has testing LED; American version may get a testing LED in the future&lt;br /&gt;
* User programs are prohibited from using any IN/OUT instructions&lt;br /&gt;
** OUT causes a reset&lt;br /&gt;
** IN produces a constant value&lt;br /&gt;
* There is memory-mapped I/O, starting at E00000. Most port ranges have a mapped address, and RAM programs are allowed to use the memory-mapped I/O.&lt;br /&gt;
** The 00xx range of ports is not mapped. This range includes permissions control, flash control, the testing LED, NMI control, and possibly master power management.&lt;br /&gt;
* Flash starts at $000000&lt;br /&gt;
** There is also still a flash unlock sequence&lt;br /&gt;
* RAM starts at $D00000&lt;br /&gt;
* Assembly programs and TI-BASIC programs are limited to one sector (64KB)&lt;br /&gt;
* VRAM starts at $D40000&lt;br /&gt;
** VRAM is executable&lt;br /&gt;
* USB IP is the Faraday FOTG210&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=84PCE:Ports:1005</id>
		<title>84PCE:Ports:1005</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=84PCE:Ports:1005"/>
				<updated>2020-04-18T15:24:16Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Notice of applicability&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:84PCE:Ports:By_Address|1005 - Flash Wait States]] [[Category:84PCE:Ports:By_Name|Flash Wait States]]&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Port Number:''' 1005&lt;br /&gt;
&lt;br /&gt;
'''Memory-mapped Address:''' E00005&lt;br /&gt;
&lt;br /&gt;
'''Function:''' Controls flash wait states. Each read from flash will have at least 5 wait states, plus the number of wait states specified in this port. The OS defaults to 04 in this port, so by default, every read from flash incurs a 9 wait state penalty, for a total of 10 clock cycles to read a byte from flash. (V/RAM gets 3 wait states for reads, and 1 waitvstate for writes, for totals of 4 and 2, respectively.)&lt;br /&gt;
&lt;br /&gt;
This port is only applicable to older devices which feature a [[84PCE:Ports:1000|parallel flash chip.]]&lt;br /&gt;
&lt;br /&gt;
== Details ==&lt;br /&gt;
{|-&lt;br /&gt;
|&amp;lt;u&amp;gt;Value&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|&amp;lt;u&amp;gt;Effect&amp;lt;/u&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|00&lt;br /&gt;
|Instant hard crash &amp;amp; reset if OS ISR is enabled&lt;br /&gt;
|-&lt;br /&gt;
|01&lt;br /&gt;
|Makes OS a little faster, perhaps 30%. Used by the C toolchain between [https://github.com/CE-Programming/toolchain/commit/76c6620b33c550637e97a8e67ae4e6a788d7d113#diff-acbd510f12643ca0895f22a9f30a5a8cR55 October 2016] and [https://github.com/CE-Programming/toolchain/commit/477efec0f05f530041ff09a31517fc5f92c13047#diff-acbd510f12643ca0895f22a9f30a5a8cL55 April 2017]. Occasional crashes reported on calculators across all revisions (see: [https://github.com/CE-Programming/toolchain/commit/477efec0f05f530041ff09a31517fc5f92c13047 fix commit message], [https://tiplanet.org/forum/viewtopic.php?f=8&amp;amp;t=19535 this post]). Not recommended for regular use.&lt;br /&gt;
|-&lt;br /&gt;
|02&lt;br /&gt;
|Used by the C toolchain between [https://github.com/CE-Programming/toolchain/commit/9356661e7e57cd85b54b98a618d3a91891a59da7#diff-cc616a714307890453270fae8f0ff646R60 April 2016] and [https://github.com/CE-Programming/toolchain/commit/76c6620b33c550637e97a8e67ae4e6a788d7d113#diff-acbd510f12643ca0895f22a9f30a5a8cL54 October 2016]. Insufficient usage data was collected to determine the stability of this value.&lt;br /&gt;
|-&lt;br /&gt;
|03&lt;br /&gt;
|Used by the C toolchain since [https://github.com/CE-Programming/toolchain/commit/477efec0f05f530041ff09a31517fc5f92c13047#diff-acbd510f12643ca0895f22a9f30a5a8cR55 February 2017]. No crashes attributed to this value (as of April 2018).&lt;br /&gt;
|-&lt;br /&gt;
|04&lt;br /&gt;
|Normal value&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|OS feels noticeably sluggish&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|OS is unbearably sluggish&lt;br /&gt;
|-&lt;br /&gt;
|FF&lt;br /&gt;
|Don't even bother trying to do anything&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=84PCE:Ports:1002</id>
		<title>84PCE:Ports:1002</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=84PCE:Ports:1002"/>
				<updated>2020-04-18T15:22:50Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Notice of applicability&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:84PCE:Ports:By_Address|1002 - Flash chip size]] [[Category:84PCE:Ports:By_Name|Flash chip size]]&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Port Number:''' 1002&lt;br /&gt;
&lt;br /&gt;
'''Function:''' Memory-mapped flash chip size. This port is only applicable to older devices which feature a [[84PCE:Ports:1000|parallel flash chip.]]&lt;br /&gt;
&lt;br /&gt;
== Details ==&lt;br /&gt;
=== Bits [2:0] ===&lt;br /&gt;
Sets the flash chip size. 06 is the default (4 MB). 07 will map 8 MB, which will cause the 4 MB to be mirrored twice. Smaller values map less flash, possibly down to 64 K.&lt;br /&gt;
&lt;br /&gt;
=== Bit 3 ===&lt;br /&gt;
When this bit is set, the flash mapping is forced to 64KB (the equivalent of a 0 in bits 0-2).&lt;br /&gt;
&lt;br /&gt;
=== Bits [7:4] ===&lt;br /&gt;
Writes have no apparent effect, value does not latch.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User:Zeroko</id>
		<title>User:Zeroko</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User:Zeroko"/>
				<updated>2020-04-08T20:35:51Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Creating user page for new user.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am a Christian, geek girl, programmer, &amp;amp; somewhat of a reverse engineer.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=User_talk:Zeroko</id>
		<title>User talk:Zeroko</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=User_talk:Zeroko"/>
				<updated>2020-04-08T20:35:51Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Welcome!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Welcome to ''WikiTI''!'''&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] ([[User talk:Dr. D&amp;amp;#39;nar|talk]]) 13:35, 8 April 2020 (PDT)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=WikiTI:Terms_of_Service</id>
		<title>WikiTI:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=WikiTI:Terms_of_Service"/>
				<updated>2020-04-08T20:22:03Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: Create page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;# Don't be a dick.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Ports:16</id>
		<title>83Plus:Ports:16</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Ports:16"/>
				<updated>2020-03-04T01:25:17Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:Ports:By_Address:Protected|16 - Flash Sector Exclusion]] [[Category:83Plus:Ports:By_Address|16 - Flash Page Exclusion]] [[Category:83Plus:Ports:By_Name|Flash Page Exclusion]]&lt;br /&gt;
{{Protected Port}}&lt;br /&gt;
&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Port Number:''' 16h&lt;br /&gt;
&lt;br /&gt;
'''Function:''' Flash Sector/Page Exclusion&lt;br /&gt;
&lt;br /&gt;
This port controls which sectors or pages of Flash may contain executable code.&lt;br /&gt;
&lt;br /&gt;
=== Read Values ===&lt;br /&gt;
* Nothing useful (mirror of [[83Plus:Ports:14|port 14]], I think.)&lt;br /&gt;
&lt;br /&gt;
=== Write Values ===&lt;br /&gt;
* Each bit maps to a page, as determined by [[83Plus:Ports:05|port 5]].  Set a bit to disallow execution on that page.&lt;br /&gt;
&lt;br /&gt;
== Comments ==&lt;br /&gt;
The above only applies to the 83+ basic. It does nothing on other models.&lt;br /&gt;
&lt;br /&gt;
This port is protected, just as [[83Plus:Ports:14|port 14]] is; it is the only other protected port in the original hardware.  Note that as with most protected ports, Flash must be write-enabled for writing to have any effect.&lt;br /&gt;
&lt;br /&gt;
It is used, as are ports [[83Plus:Ports:22|22]] and [[83Plus:Ports:23|23]] on the SE, to prevent code in the archive from executing, thus theoretically limiting Flash execution privileges to FlashApps.&lt;br /&gt;
&lt;br /&gt;
=== An alternate version? ===&lt;br /&gt;
The TI-73 uses this port differently.  Instead of controlling individual pages, each bit corresponds to a Flash ''sector:''&lt;br /&gt;
&lt;br /&gt;
* Bit 0: Set if execution is not allowed in sector SA2 (pages 08-0B.)&lt;br /&gt;
* Bit 1: Set if execution is not allowed in sector SA3 (pages 0C-0F.)&lt;br /&gt;
* Bit 2: Set if execution is not allowed in sector SA4 (pages 10-13.)&lt;br /&gt;
* Bit 3: Set if execution is not allowed in sector SA5 (pages 14-17.)&lt;br /&gt;
&lt;br /&gt;
== Credits and Contributions ==&lt;br /&gt;
* '''Tijl Coosemans:''' Documentation [http://tijl.ulyssis.be/83phwinfo.txt here].&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[83Plus:Ports:05#Synopsis (TI-83 Plus)|Port 5]]&lt;br /&gt;
* [[83Plus:Ports:22|Port 22]]&lt;br /&gt;
* [[83Plus:Ports:23|Port 23]]&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Ports:55</id>
		<title>83Plus:Ports:55</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Ports:55"/>
				<updated>2020-03-04T01:18:04Z</updated>
		
		<summary type="html">&lt;p&gt;Dr. D'nar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:Ports:By Address|55 - USB Interrupt State]] [[Category:83Plus:Ports:By Name|USB Interrupt State]]&lt;br /&gt;
{{84P-Only Port|05}}&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Port Number:''' 55h&lt;br /&gt;
&lt;br /&gt;
'''Function:''' USB Interrupt State&lt;br /&gt;
&lt;br /&gt;
This port reports which USB interrupts have occurred.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Read Values ===&lt;br /&gt;
* Bit 0: Normally set.  Cleared if the bus goes into suspend mode.&lt;br /&gt;
* Bit 1: Normally set.  This interrupt is related to ports 4F and 50.&lt;br /&gt;
* Bit 2: Normally set.  Cleared if a USB line interrupt (ports 56 and 57) has occurred.&lt;br /&gt;
* Bit 3: Normally set.  BrandonW's ViewScreen experiments suggest that this gets reset if the ViewScreen-over-USB logic misses a byte, possibly because you're sending them too fast.&lt;br /&gt;
* Bit 4: Normally set.  Cleared if a USB protocol interrupt (ports 80+) has occurred.&lt;br /&gt;
* Bit 5: Always 0&lt;br /&gt;
* Bit 6: Always 0&lt;br /&gt;
* Bit 7: Always 0&lt;br /&gt;
&lt;br /&gt;
=== Write Values ===&lt;br /&gt;
* No effect&lt;br /&gt;
&lt;br /&gt;
== Comments ==&lt;br /&gt;
Normally, the value of this port will be 1Fh.  When a USB interrupt occurs, one or more of the bits will be cleared.&lt;br /&gt;
&lt;br /&gt;
USB line interrupts are triggered when one of the four functional USB lines changes from low to high or high to low.  [[83Plus:Ports:57|Port 57]] controls when these interrupts occur.  When a line interrupt occurs, [[83Plus:Ports:56|port 56]] tells you which of the lines has changed.  Use port 57 to acknowledge the interrupt.&lt;br /&gt;
&lt;br /&gt;
USB protocol interrupts are triggered when (a) a USB device-level event occurs, such as a bus reset, or (b) a USB transaction finishes.  [[83Plus:Ports:5B|Port 5B]] controls whether these interrupts occur.  When one does, ports [[83Plus:Ports:82|82]], [[83Plus:Ports:84|84]], and [[83Plus:Ports:86|86]] (and possibly 83 and 85) will tell you what event(s) caused the interrupt.  Reading from any of these ports also clears it and acknowledges the interrupt.&lt;br /&gt;
&lt;br /&gt;
Bit 0 indicates some other, and uncommon, type of event - possibly that the bus has been suspended.  I think that this is also controlled by port 5B, and zeroing port 5B will acknowledge the interrupt.  This should be tested.&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	</feed>