<?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/index.php?action=history&amp;feed=atom&amp;title=Talk%3A83Plus%3AInterrupts</id>
		<title>Talk:83Plus:Interrupts - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://wikiti.brandonw.net/index.php?action=history&amp;feed=atom&amp;title=Talk%3A83Plus%3AInterrupts"/>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Talk:83Plus:Interrupts&amp;action=history"/>
		<updated>2026-04-11T17:47:21Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.5</generator>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Talk:83Plus:Interrupts&amp;diff=10022&amp;oldid=prev</id>
		<title>Dr. D'nar: Created page with 'This is the test program I ran to check whether the LD A, I/R bug affected my TI-84+SE. Note that it takes advantage of the TA3 ASIC's less-funky IM 2 vectoring to simplify the c…'</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Talk:83Plus:Interrupts&amp;diff=10022&amp;oldid=prev"/>
				<updated>2013-03-08T20:51:31Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;#039;This is the test program I ran to check whether the LD A, I/R bug affected my TI-84+SE. Note that it takes advantage of the TA3 ASIC&amp;#039;s less-funky IM 2 vectoring to simplify the c…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This is the test program I ran to check whether the LD A, I/R bug affected my TI-84+SE. Note that it takes advantage of the TA3 ASIC's less-funky IM 2 vectoring to simplify the code; if you have a TA1 or TA2, you'll need to modify the code.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
.nolist&lt;br /&gt;
#include &amp;quot;ti83plus.inc&amp;quot;&lt;br /&gt;
#include &amp;quot;ti83plusaddendum.inc&amp;quot;&lt;br /&gt;
.list&lt;br /&gt;
timerCount	.equ	101&lt;br /&gt;
	.org	userMem - 2&lt;br /&gt;
	.db	t2ByteTok, tAsmCmp&lt;br /&gt;
&lt;br /&gt;
	; Delay ports&lt;br /&gt;
	xor	a&lt;br /&gt;
	out	(pMemDelay), a&lt;br /&gt;
	; Set up interrupts&lt;br /&gt;
	ld	a, intMaskOnKey | intDisableLowPowerMode&lt;br /&gt;
	out	(pIntMask), a&lt;br /&gt;
	xor	a	; tmrOff&lt;br /&gt;
	out	(pCtstlTmr1Freq), a&lt;br /&gt;
	out	(pCtstlTmr2Freq), a&lt;br /&gt;
	out	(pCtstlTmr3Freq), a&lt;br /&gt;
	; Interrupt handler&lt;br /&gt;
	ld	hl, interruptHandler&lt;br /&gt;
	ld	(80FFh), hl&lt;br /&gt;
	ld	a, 80h&lt;br /&gt;
	ld	i, a&lt;br /&gt;
	im	2&lt;br /&gt;
	; Timer ports&lt;br /&gt;
	ld	a, tmrInt&lt;br /&gt;
	out	(pCrstlTmr1Cfg), a&lt;br /&gt;
	ld	a, timerCount&lt;br /&gt;
	out	(pCrstlTmr1Count), a&lt;br /&gt;
	ld	a, tmrCpu&lt;br /&gt;
	out	(pCrstlTmr1Freq), a&lt;br /&gt;
	ld	c, 11h&lt;br /&gt;
	; Loop&lt;br /&gt;
_:	inc	b&lt;br /&gt;
	out	(c), b&lt;br /&gt;
	ld	a, i&lt;br /&gt;
	jp	po, explode&lt;br /&gt;
	jr	-_&lt;br /&gt;
quit:&lt;br /&gt;
	ex	af, af'&lt;br /&gt;
	xor	a	; tmrOff&lt;br /&gt;
	out	(pCtstlTmr1Freq), a&lt;br /&gt;
	ld	a, 11&lt;br /&gt;
	out	(pIntMask), a&lt;br /&gt;
	im	0	; Just to be weird!&lt;br /&gt;
	ld	hl, strNotExploded&lt;br /&gt;
	b_call(_PutS)&lt;br /&gt;
	b_call(_NewLine)&lt;br /&gt;
	ret&lt;br /&gt;
&lt;br /&gt;
explode:&lt;br /&gt;
	xor	a	; tmrOff&lt;br /&gt;
	out	(pCtstlTmr1Freq), a&lt;br /&gt;
	ld	a, 11&lt;br /&gt;
	out	(pIntMask), a&lt;br /&gt;
	im	0&lt;br /&gt;
	ld	hl, strExplode&lt;br /&gt;
	b_call(_PutS)&lt;br /&gt;
	b_call(_NewLine)&lt;br /&gt;
	ret&lt;br /&gt;
	&lt;br /&gt;
interruptHandler:&lt;br /&gt;
	pop	hl&lt;br /&gt;
	ex	af, af'&lt;br /&gt;
	in	a, (pIntId)&lt;br /&gt;
	;in	a, (pStatus)&lt;br /&gt;
	and	intIdOnKeyDown&lt;br /&gt;
	jr	z, quit&lt;br /&gt;
	; timer generated interrupt, ack and ret&lt;br /&gt;
	ld	a, tmrInt&lt;br /&gt;
	out	(pCrstlTmr1Cfg), a&lt;br /&gt;
	ld	a, timerCount&lt;br /&gt;
	out	(pCrstlTmr1Count), a&lt;br /&gt;
	ex	af, af'&lt;br /&gt;
	ei&lt;br /&gt;
	jp	(hl)&lt;br /&gt;
&lt;br /&gt;
strExplode:&lt;br /&gt;
	.db	&amp;quot;Explode!!&amp;quot;, 0&lt;br /&gt;
strNotExploded:&lt;br /&gt;
;		 1234567890123456&lt;br /&gt;
	.db	&amp;quot;Program ended   &amp;quot;&lt;br /&gt;
	.db	&amp;quot;normally.&amp;quot;, 0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
If someone with a TI-83+ modifies this to run on the TI-83+ and TA1 and TA2 TI-84+/SEs, let me (probably via the Wiki, or IRC) know if your unit DOES show the bug.[[User:Dr. D&amp;amp;#39;nar|Dr. D&amp;amp;#39;nar]] 20:51, 8 March 2013 (UTC)&lt;/div&gt;</summary>
		<author><name>Dr. D'nar</name></author>	</entry>

	</feed>