<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.specnext.dev/index.php?action=history&amp;feed=atom&amp;title=Interrupt_Control_Register</id>
	<title>Interrupt Control Register - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.specnext.dev/index.php?action=history&amp;feed=atom&amp;title=Interrupt_Control_Register"/>
	<link rel="alternate" type="text/html" href="https://wiki.specnext.dev/index.php?title=Interrupt_Control_Register&amp;action=history"/>
	<updated>2026-05-09T08:50:09Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://wiki.specnext.dev/index.php?title=Interrupt_Control_Register&amp;diff=41882&amp;oldid=prev</id>
		<title>Johnnyo: add the link to the hw im2 mode</title>
		<link rel="alternate" type="text/html" href="https://wiki.specnext.dev/index.php?title=Interrupt_Control_Register&amp;diff=41882&amp;oldid=prev"/>
		<updated>2026-04-11T19:11:17Z</updated>

		<summary type="html">&lt;p&gt;add the link to the hw im2 mode&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-GB&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:11, 11 April 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l23&quot;&gt;Line 23:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 23:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   bit 0 = 0&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   bit 0 = 0&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* * In hw im2 mode the expansion bus is the lowest priority interrupter and if no vector is supplied externally then 0xFF is generated.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* * In &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;hw im2 mode&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;the expansion bus is the lowest priority interrupter and if no vector is supplied externally then 0xFF is generated.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* ** The return address pushed during an nmi acknowledge cycle will be written to nextreg instead of memory (the stack pointer will be decremented) and the first RETN after the acknowledge will take its return address from nextreg instead of memory (the stack pointer will be incremented).  If bit 3 = 0 and in other circumstances, RETN functions normally.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* ** The return address pushed during an nmi acknowledge cycle will be written to nextreg instead of memory (the stack pointer will be decremented) and the first RETN after the acknowledge will take its return address from nextreg instead of memory (the stack pointer will be incremented).  If bit 3 = 0 and in other circumstances, RETN functions normally.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key specnext_wiki:diff:1.41:old-41276:rev-41882:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Johnnyo</name></author>
	</entry>
	<entry>
		<id>https://wiki.specnext.dev/index.php?title=Interrupt_Control_Register&amp;diff=41276&amp;oldid=prev</id>
		<title>Xalior: Xalior moved page Interrupt Control to Interrupt Control Register: match formal nextreg.txt name</title>
		<link rel="alternate" type="text/html" href="https://wiki.specnext.dev/index.php?title=Interrupt_Control_Register&amp;diff=41276&amp;oldid=prev"/>
		<updated>2025-10-14T12:39:25Z</updated>

		<summary type="html">&lt;p&gt;Xalior moved page &lt;a href=&quot;/Interrupt_Control&quot; class=&quot;mw-redirect&quot; title=&quot;Interrupt Control&quot;&gt;Interrupt Control&lt;/a&gt; to &lt;a href=&quot;/Interrupt_Control_Register&quot; title=&quot;Interrupt Control Register&quot;&gt;Interrupt Control Register&lt;/a&gt;: match formal nextreg.txt name&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-GB&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:39, 14 October 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;en-GB&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key specnext_wiki:diff:1.41:old-12316:rev-41276 --&gt;
&lt;/table&gt;</summary>
		<author><name>Xalior</name></author>
	</entry>
	<entry>
		<id>https://wiki.specnext.dev/index.php?title=Interrupt_Control_Register&amp;diff=12316&amp;oldid=prev</id>
		<title>Sol HSA: updated to 78a6ee50</title>
		<link rel="alternate" type="text/html" href="https://wiki.specnext.dev/index.php?title=Interrupt_Control_Register&amp;diff=12316&amp;oldid=prev"/>
		<updated>2024-11-03T12:17:22Z</updated>

		<summary type="html">&lt;p&gt;updated to 78a6ee50&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{NextRegister&lt;br /&gt;
|Number=$C0&lt;br /&gt;
|Readable=Yes&lt;br /&gt;
|Writable=Yes&lt;br /&gt;
}}&lt;br /&gt;
Soft reset = 0x00&lt;br /&gt;
&lt;br /&gt;
  bits 7:5 = Programmable portion of im2 vector*&lt;br /&gt;
  bit 4 = Reserved must be 0&lt;br /&gt;
  bit 3 = Enable stackless nmi response**&lt;br /&gt;
  bits 2:1 = Current Z80 interrupt mode 0,1,2 (read only, write ignored)&lt;br /&gt;
  bit 0 = Maskable interrupt mode: pulse (0) or hw im2 mode (1)&lt;br /&gt;
&lt;br /&gt;
* * In hw im2 mode the interrupt vector generated is:&lt;br /&gt;
  bits 7:5 = nextreg 0xC0 bits 7:5&lt;br /&gt;
  bits 4:1 = 0  line interrupt (highest priority)&lt;br /&gt;
    = 1  uart0 Rx&lt;br /&gt;
    = 2  uart1 Rx&lt;br /&gt;
    = 3-10  ctc channels 0-7&lt;br /&gt;
    = 11 ula&lt;br /&gt;
    = 12 uart0 Tx&lt;br /&gt;
    = 13 uart1 Tx (lowest priority)&lt;br /&gt;
  bit 0 = 0&lt;br /&gt;
&lt;br /&gt;
* * In hw im2 mode the expansion bus is the lowest priority interrupter and if no vector is supplied externally then 0xFF is generated.&lt;br /&gt;
&lt;br /&gt;
* ** The return address pushed during an nmi acknowledge cycle will be written to nextreg instead of memory (the stack pointer will be decremented) and the first RETN after the acknowledge will take its return address from nextreg instead of memory (the stack pointer will be incremented).  If bit 3 = 0 and in other circumstances, RETN functions normally.&lt;/div&gt;</summary>
		<author><name>Sol HSA</name></author>
	</entry>
</feed>