<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.temlib.org/AtariForumWiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cyprian</id>
	<title>AtariForumWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.temlib.org/AtariForumWiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cyprian"/>
	<link rel="alternate" type="text/html" href="https://www.temlib.org/AtariForumWiki/index.php/Special:Contributions/Cyprian"/>
	<updated>2026-05-02T12:10:30Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.2</generator>
	<entry>
		<id>https://www.temlib.org/AtariForumWiki/index.php?title=Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&amp;diff=22858</id>
		<title>Atari ST/STe/MSTe/TT/F030 Hardware Register Listing</title>
		<link rel="alternate" type="text/html" href="https://www.temlib.org/AtariForumWiki/index.php?title=Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&amp;diff=22858"/>
		<updated>2024-01-27T01:40:43Z</updated>

		<summary type="html">&lt;p&gt;Cyprian: A new label for $FF82C2 - Video Mode (VDM)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Based on:&lt;br /&gt;
* https://temlib.org/AtariForumWiki/index.php/Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&lt;br /&gt;
* https://github.com/Number0000009/atari-wiki/blob/master/Atari%20ST%20STe%20MSTe%20TT%20F030%20Hardware%20Register%20Listing.txt&lt;br /&gt;
* https://mikro.naprvyraz.sk/docs/Memory%20Maps/FALREG.TXT&lt;br /&gt;
* https://mikro.naprvyraz.sk/docs/mikro/videl.html&lt;br /&gt;
* http://cd.textfiles.com/atarilibrary/atari_cd10/DISKS/AC10DISK/ATOZBOOK/M.TXT&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.---------------------------------------------------.&lt;br /&gt;
|Atari ST/STe/MSTe/TT/F030 Hardware Register Listing|&lt;br /&gt;
`---------------------------------------------------'&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Address Description                                                      Space&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########CPU Reset Vectors                                               ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000000|Reset : Initial SSP                                             |SP&lt;br /&gt;
$000004|Reset : Initial PC                                              |SP&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########CPU Exception Vectors                                           ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000008|Bus Error                                                       |SD&lt;br /&gt;
$00000C|Address Error                                                   |SD&lt;br /&gt;
$000010|Illegal Instruction                                             |SD&lt;br /&gt;
$000014|Zero Divide                                                     |SD&lt;br /&gt;
$000018|CHK, CHK2 Instruction                                           |SD&lt;br /&gt;
$00001C|cpTRAPcc, TRAPcc, TRAPV                                         |SD&lt;br /&gt;
$000020|Privilege Violation                                             |SD&lt;br /&gt;
$000024|Trace                                                           |SD&lt;br /&gt;
$000028|Line 1010 Emulator (LineA)                                      |SD&lt;br /&gt;
$00002C|Line 1111 Emulator (LineF)                                      |SD&lt;br /&gt;
$000030|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
$000034|Coprocessor Protocol Violation (68030)                          |SD&lt;br /&gt;
$000038|Format Error (68010)                                            |SD&lt;br /&gt;
$00003C|Uninitialized Interrupt Vector                                  |SD&lt;br /&gt;
$000040|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
   :   |   :             :                                              | :&lt;br /&gt;
$00005F|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
$000060|Spurious Interrupt (Bus error during interrupt)                 |SD                                          &lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Auto-Vector Interrupts                                          ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000064|Level 1 Int Autovector (TT VME)                                 |SD&lt;br /&gt;
$000068|Level 2 Int Autovector (HBL)                                    |SD&lt;br /&gt;
$00006C|Level 3 Int Autovector (TT VME)                                 |SD&lt;br /&gt;
$000070|Level 4 Int Autovector (VBL)                                    |SD&lt;br /&gt;
$000074|Level 5 Int Autovector                                          |SD&lt;br /&gt;
$000078|Level 6 Int Autovector (MFP)                                    |SD&lt;br /&gt;
$00007C|Level 7 Int Autovector                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Trap Instruction Vectors (Trap #n = Vector number + 32 + n)     ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000080|Trap #0                                                         |SD&lt;br /&gt;
$000084|Trap #1 (GemDOS)                                                |SD&lt;br /&gt;
$000088|Trap #2 (AES/VDI)                                               |SD&lt;br /&gt;
$00008C|Trap #3                                                         |SD&lt;br /&gt;
$000090|Trap #4                                                         |SD&lt;br /&gt;
$000094|Trap #5                                                         |SD&lt;br /&gt;
$000098|Trap #6                                                         |SD&lt;br /&gt;
$00009C|Trap #7                                                         |SD&lt;br /&gt;
$0000A0|Trap #8                                                         |SD&lt;br /&gt;
$0000A4|Trap #9                                                         |SD&lt;br /&gt;
$0000A8|Trap #10                                                        |SD&lt;br /&gt;
$0000AC|Trap #11                                                        |SD&lt;br /&gt;
$0000B0|Trap #12                                                        |&lt;br /&gt;
$0000B4|Trap #13 (BIOS)                                                 |SD&lt;br /&gt;
$0000B8|Trap #14 (XBIOS)                                                |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Math Coprocessor Vectors (68881/68882/Internal)                 ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000C0|FFCP Branch or Set on Unordered Condition                       |SD&lt;br /&gt;
$0000C4|FFCP Inexact Result                                             |SD&lt;br /&gt;
$0000C8|FFCP Divide by Zero                                             |SD&lt;br /&gt;
$0000CC|FFCP Underflow                                                  |SD&lt;br /&gt;
$0000D0|FFCP Operand Error                                              |SD&lt;br /&gt;
$0000D4|FFCP Overflow                                                   |SD&lt;br /&gt;
$0000D8|FFCP Signaling NAN                                              |SD&lt;br /&gt;
$0000DC|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########PMMU Coprocessor Vectors (68851/Internal)                       ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000E0|MMU Configuration Error                                         |SD&lt;br /&gt;
$0000E4|MC68851, not used by MC68030                                    |SD&lt;br /&gt;
$0000E8|MC68851, not used by MC68030                                    |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Miscellaneous Vectors                                           ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000EC|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
   :   |   :             :                                              | :&lt;br /&gt;
$0000FF|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########User Assigned Interrupt Vectors                                 ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000100|ST-MFP-0 - Centronics busy                                      |SD&lt;br /&gt;
$000104|ST-MFP-1 - RS-232 DCD                                           |SD&lt;br /&gt;
$000108|ST-MFP-2 - RS-232 CTS                                           |SD&lt;br /&gt;
$00010C|ST-MFP-3 - Blitter done                                         |SD&lt;br /&gt;
$000110|ST-MFP-4 - Timer D (USART timer)                                |SD&lt;br /&gt;
$000114|ST-MFP-5 - Timer C (200hz Clock)                                |SD&lt;br /&gt;
$000118|ST-MFP-6 - Keyboard/MIDI (ACIA)                                 |SD&lt;br /&gt;
$00011C|ST-MFP-7 - FDC/HDC                                              |SD&lt;br /&gt;
$000120|ST-MFP-8 - Timer B (HBL)                                        |SD&lt;br /&gt;
$000124|ST-MFP-9 - Send Error                                           |SD&lt;br /&gt;
$000128|ST-MFP-10 - Send buffer empty                                   |SD&lt;br /&gt;
$00012C|ST-MFP-11 - Receive error                                       |SD&lt;br /&gt;
$000130|ST-MFP-12 - Receive buffer full                                 |SD&lt;br /&gt;
$000134|ST-MFP-13 - Timer A (STe sound)                                 |SD&lt;br /&gt;
$000138|ST-MFP-14 - RS-232 Ring detect                                  |SD&lt;br /&gt;
$00013C|ST-MFP-15 - GPI7 - Monochrome Detect                            |SD&lt;br /&gt;
$000140|TT-MFP-0 - GPI 0                                                |SD&lt;br /&gt;
$000144|TT-MFP-1 - GPI 1                                                |SD&lt;br /&gt;
$000148|TT-MFP-2 - SCC-DMA Controller                                   |SD&lt;br /&gt;
$00014C|TT-MFP-3 - Ring Indicator SCC B                                 |SD&lt;br /&gt;
$000150|TT-MFP-4 - Timer D                                              |SD&lt;br /&gt;
$000154|TT-MFP-5 - Timer C                                              |SD&lt;br /&gt;
$000158|TT-MFP-6 - (Reserved) GPI 4                                     |SD&lt;br /&gt;
$00015C|TT-MFP-7 - SCSI DMA Controller                                  |SD&lt;br /&gt;
$000160|TT-MFP-8 - Timer B                                              |SD&lt;br /&gt;
$000164|TT-MFP-9 - Send Error                                           |SD&lt;br /&gt;
$000168|TT-MFP-10 - Send buffer empty                                   |SD&lt;br /&gt;
$00016C|TT-MFP-11 - Receive error                                       |SD&lt;br /&gt;
$000170|TT-MFP-12 - Receive buffer full                                 |SD&lt;br /&gt;
$000174|TT-MFP-13 - Timer A                                             |SD&lt;br /&gt;
$000176|TT-MFP-14 - TT Clock (MC146818A)                                |SD&lt;br /&gt;
$00017C|TT-MFP-15 - TT-SCSI Drive Controller NCR 5380                   |SD&lt;br /&gt;
$000180|SCC Interrupt                                                   |SD&lt;br /&gt;
$0001BC|SCC Interrupt                                                   |SD&lt;br /&gt;
$0001C0|User Defined, Unused                                            |SD&lt;br /&gt;
   :   |  :     :        :                                              | :&lt;br /&gt;
$0003FC|User Defined, Unused                                            |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
&lt;br /&gt;
Address Size  Description                                           Name&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############System Crash Page                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$000380|long |Validates System Crash Page if $12345678             |proc_lives&lt;br /&gt;
$000384|.....|Saved registers D0-D7                                |proc_dregs&lt;br /&gt;
$0003A4|.....|Saved registers A0-A7                                |proc_aregs&lt;br /&gt;
$0003C4|long |Vector number of crash exception                     |proc_enum&lt;br /&gt;
$0003C8|long |Saved USP                                            |proc_usp&lt;br /&gt;
$0003CC|.....|Saved 16 words from exception stack                  |proc_stk&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############System Variables                                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$000400|long |GEM Event timer vector                               |etv_timer&lt;br /&gt;
$000404|long |GEM Critical error handler                           |etv_critic&lt;br /&gt;
$000408|long |GEM Program termination vector                       |etv_term&lt;br /&gt;
$00040C|long |GEM Additional vector #1 (Unused)                    |etv_xtra&lt;br /&gt;
   :   |  :  | :      :        :     :    :                        |   :&lt;br /&gt;
$00041C|long |GEM Additional vector #5 (Unused)                    |etv_xtra&lt;br /&gt;
$000420|long |Validates memory configuration if $752019F3          |memvalid&lt;br /&gt;
$000424|word |Copy of contents of $FF8001                          |memctrl&lt;br /&gt;
$000426|long |Validates resvector if $31415926                     |resvalid&lt;br /&gt;
$00042A|long |Reset vector                                         |resvector&lt;br /&gt;
$00042E|long |Physical top of RAM                                  |phystop&lt;br /&gt;
$000432|long |Start of TPA (user memory)                           |_membot&lt;br /&gt;
$000436|long |End of TPA (user memory)                             |_memtop&lt;br /&gt;
$00043A|long |Validates memcntrl and memconf if $237698AA          |memval2&lt;br /&gt;
$00043E|word |If nonzero, floppy disk VBL routine is disabled      |flock&lt;br /&gt;
$000440|word |Floppy Seek rate - 0:6ms, 1:12ms, 2:2ms, 3:3ms       |seekrate&lt;br /&gt;
$000442|word |Time between two timer calls (in milliseconds)       |_timer_ms&lt;br /&gt;
$000444|word |If not zero, verify floppy disk writes               |_fverify&lt;br /&gt;
$000446|word |Default boot device                                  |_bootdev&lt;br /&gt;
$000448|word |0 - NTSC (60hz), &amp;lt;&amp;gt;0 - PAL (50hz)                    |palmode&lt;br /&gt;
$00044A|word |Default video resolution                             |defshiftmod&lt;br /&gt;
$00044C|word |Copy of contents of $FF8260                          |sshiftmod&lt;br /&gt;
$00044E|long |Pointer to video RAM (logical screen base)           |_v_bas_ad&lt;br /&gt;
$000452|word |If not zero, VBL routine is not executed             |vblsem&lt;br /&gt;
$000454|word |Number of vertical blank routines                    |nvbls&lt;br /&gt;
$000456|long |Pointer to list of vertical blank routines           |_vblqueue&lt;br /&gt;
$00045A|long |If not zero, points to color palette to be loaded    |colorptr&lt;br /&gt;
$00045E|long |If not zero, points to video ram for next VBL        |screenpt&lt;br /&gt;
$000462|long |Counter for number of VBLs                           |_vbclock&lt;br /&gt;
$000466|long |Number of VBL routines executed                      |_frclock&lt;br /&gt;
$00046A|long |Vector for hard disk initialization                  |hdv_init&lt;br /&gt;
$00046E|long |Vector for resolution change                         |swv_vec&lt;br /&gt;
$000472|long |Vector for getbpb for hard disk                      |hdv_bpb&lt;br /&gt;
$000476|long |Vector for read/write routine for hard disk          |hdv_rw&lt;br /&gt;
$00047A|long |Vector for hard disk boot                            |hdv_boot&lt;br /&gt;
$00047E|long |Vector for hard disk media change                    |hdv_mediach&lt;br /&gt;
$000482|word |If not zero, attempt to load &amp;quot;COMMAND.PRG&amp;quot; on boot   |_comload&lt;br /&gt;
$000484|byte |Attribute vector for console output       BIT 3 2 1 0|conterm&lt;br /&gt;
       |     |Return &amp;quot;kbshift&amp;quot; for BIOS conin --------------' | | ||&lt;br /&gt;
       |     |System bell (1 - on) ---------------------------' | ||&lt;br /&gt;
       |     |Key repeat (1 - on) ------------------------------' ||&lt;br /&gt;
       |     |Key click (1 - on) ---------------------------------'|&lt;br /&gt;
$000486|long |Return address for TRAP #14                  (unused)|trp14ret&lt;br /&gt;
$00048A|long |Return address for critical error handler    (unused)|criticret&lt;br /&gt;
$00048E|long |Memory descriptor block                              |themd&lt;br /&gt;
$00049E|long |Space for additional memory descriptors              |themdmd&lt;br /&gt;
$0004A2|long |Pointer to BIOS save registers block                 |savptr&lt;br /&gt;
$0004A6|word |Number of connected floppy drives                    |_nflops&lt;br /&gt;
$0004A8|long |Vector for screen output                             |con_state&lt;br /&gt;
$0004AC|word |Temporary storage for cursor line position           |save_row&lt;br /&gt;
$0004AE|long |Pointer to save area for exception processing        |sav_context&lt;br /&gt;
$0004B2|long |Pointer to buffer control block for GEMDOS data      |_bufl&lt;br /&gt;
$0004B6|long |Pointer to buffer control block for GEMDOS fat/dir   |_bufl&lt;br /&gt;
$0004BA|long |Counter for 200hz system clock                       |_hz_200&lt;br /&gt;
$0004BC|long |Pointer to default environment string                |the_env&lt;br /&gt;
$0004C2|long |Bit allocation for physical drives (bit 0=A, 1=B..)  |_drvbits&lt;br /&gt;
$0004C6|long |Pointer to 1024-byte disk buffer                     |_dskbufp&lt;br /&gt;
$0004CA|long |Pointer to autoexecute path                          |_autopath&lt;br /&gt;
$0004CE|long |Pointer to VBL routine #1                            |_vbl_lis&lt;br /&gt;
   :   |  :  |  :      :  :     :     :                            |    :&lt;br /&gt;
$0004EA|long |Pointer to VBL routine #8                            |_vbl_lis&lt;br /&gt;
$0004EE|word |Flag for screen -&amp;gt; printer dump                      |_dumpflg&lt;br /&gt;
$0004F0|word |Printer abort flag                                   |_prtabt&lt;br /&gt;
$0004F2|long |Pointer to start of OS                               |_sysbase&lt;br /&gt;
$0004F6|long |Global shell pointer                                 |_shell_p&lt;br /&gt;
$0004FA|long |Pointer to end of OS                                 |end_os&lt;br /&gt;
$0004FE|long |Pointer to entry point of OS                         |exec_os&lt;br /&gt;
$000502|long |Pointer to screen dump routine                       |scr_dump&lt;br /&gt;
$000506|long |Pointer to _lstostat()                               |prv_lsto&lt;br /&gt;
$00050A|long |Pointer to _lstout()                                 |prv_lst&lt;br /&gt;
$00050E|long |Pointer to _auxostat()                               |prv_auxo&lt;br /&gt;
$000512|long |Pointer to _auxout()                                 |prv_aux&lt;br /&gt;
$000516|long |If AHDI, pointer to pun_info                         |pun_ptr&lt;br /&gt;
$00051A|long |If $5555AAAA, reset                                  |memval3&lt;br /&gt;
$00051E|long |8 Pointers to input-status routines                  |xconstat&lt;br /&gt;
$00053E|long |8 Pointers to input routines                         |xconin&lt;br /&gt;
$00055E|long |8 Pointers to output-status routines                 |xcostat&lt;br /&gt;
$00057E|long |8 Pointers to output routines                        |xconout&lt;br /&gt;
$00059E|word |If not 0, then not 68000 - use long stack frames     |_longframe&lt;br /&gt;
$0005A0|long |Pointer to cookie jar                                |_p_cookies&lt;br /&gt;
$0005A4|long |Pointer to end of FastRam                            |ramtop&lt;br /&gt;
$0005A8|long |Validates ramtop if $1357BD13                        |ramvalid&lt;br /&gt;
$0005AC|long |Pointer to routine for system bell                   |bell_hook&lt;br /&gt;
$0005B0|long |Pointer to routine for system keyclick               |kcl_hook&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
&lt;br /&gt;
Address Size  Description                                 Bits used Read/Write&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############OS ROMs                                              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$E00000|byte |TOS 512k ROMs                                        |R&lt;br /&gt;
   :   |  :  | :   :    :                                          |:&lt;br /&gt;
$EFFFFF|byte |TOS 512k ROMs                                        |R&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ADSPEED Configuration registers                      ###########     &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$F00000|byte |Switch to 16 Mhz                                     |W&lt;br /&gt;
$F10000|byte |Switch to 8 Mhz                                      |W&lt;br /&gt;
$F20000|byte |Turn on high speed ROM option in 16 Mhz              |W&lt;br /&gt;
$F30000|byte |Turn off high speed ROM option                       |W&lt;br /&gt;
$F40000|byte |Unknown                                              |W&lt;br /&gt;
$F50000|byte |Turn off cache while in 16 Mhz                       |W&lt;br /&gt;
       |     |       &amp;gt;&amp;gt; Write 0 to an address to set it. &amp;lt;&amp;lt;        |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############IDE Controller (Falcon, ST-Book, IDE cards)          ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$F00000|word |Data Register                                        |R/W&lt;br /&gt;
       |     |            BIT 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0|&lt;br /&gt;
$F00002|word |Data Register                                        |R/W&lt;br /&gt;
       |     |            BIT 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0|&lt;br /&gt;
$F00005|byte |Error Register                    BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Bad block mark -----------------------' | | | | | | ||&lt;br /&gt;
       |     |Uncorrectable error --------------------' | | | | | ||&lt;br /&gt;
       |     |Media change -----------------------------' | | | | ||&lt;br /&gt;
       |     |ID-Field not found -------------------------' | | | ||&lt;br /&gt;
       |     |Media change requested -----------------------' | | ||&lt;br /&gt;
       |     |Command aborted --------------------------------' | ||&lt;br /&gt;
       |     |Track 0 not found --------------------------------' ||&lt;br /&gt;
       |     |DAM not found --------------------------------------'|&lt;br /&gt;
$F00005|byte |Write Precompensation                                |W&lt;br /&gt;
$F00009|byte |Sector Count Register                                |W&lt;br /&gt;
$F0000D|byte |Sector Number Register                               |W&lt;br /&gt;
$F00011|byte |Cylinder Low Register             BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
$F00015|byte |Cylinder High Register                        BIT 1 0|W&lt;br /&gt;
$F00019|byte |Drive Head Register               BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Sector size (512 bytes, fixed) -------+ + + | | | | ||&lt;br /&gt;
       |     |Drive (0 - Master, 1 - Slave) --------------' | | | ||&lt;br /&gt;
       |     |Head number ----------------------------------+ + + +|&lt;br /&gt;
$F0001D|byte |Status Register                   BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Drive busy with executing Command ----' | | | | | | ||&lt;br /&gt;
       |     |Drive Ready ----------------------------' | | | | | ||&lt;br /&gt;
       |     |Drive Write Fault ------------------------' | | | | ||&lt;br /&gt;
       |     |Drive Seek Complete ------------------------' | | | ||&lt;br /&gt;
       |     |Data Request ---------------------------------' | | ||&lt;br /&gt;
       |     |Corrected Data ---------------------------------' | ||&lt;br /&gt;
       |     |Index pulse --------------------------------------' ||&lt;br /&gt;
       |     |Error ----------------------------------------------'|&lt;br /&gt;
$F0001D|byte |Command Register                                     |W&lt;br /&gt;
$F00039|byte |Alternate Status Register                            |R&lt;br /&gt;
       |     |2nd status register, like 1st no deletion of the IRQ |                                                   |&lt;br /&gt;
$F00039|byte |Data Output Register                        BIT 2 1 .|W&lt;br /&gt;
       |     |Software Reset (1 - on)-------------------------+ |  |&lt;br /&gt;
       |     |Interrupt after end of Command (0 - on) ----------+  |&lt;br /&gt;
$F0003D|byte |Active address                      BIT 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Drive is writing (0 - on) --------------' | | | | | ||&lt;br /&gt;
       |     |Negated number of head number ------------+ + + + | ||&lt;br /&gt;
       |     |Slave Drive Select (0 - on) ----------------------' ||&lt;br /&gt;
       |     |Master Drive Select (0 - on) -----------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############OS ROMs                                              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FC0000|byte |TOS 192k ROMs                                        |R&lt;br /&gt;
   :   |  :  | :   :    :                                          |:&lt;br /&gt;
$FEFFFF|byte |TOS 192k ROMs                                        |R&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ST MMU Controller                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8001|byte |MMU memory configuration                  BIT 3 2 1 0|R/W&lt;br /&gt;
       |     |Bank 0                                        | | | ||&lt;br /&gt;
       |     |00 - 128k ------------------------------------+-+ | ||&lt;br /&gt;
       |     |01 - 512k ------------------------------------+-+ | ||&lt;br /&gt;
       |     |10 - 2m --------------------------------------+-+ | ||&lt;br /&gt;
       |     |11 - reserved --------------------------------+-' | ||&lt;br /&gt;
       |     |Bank 1                                            | ||&lt;br /&gt;
       |     |00 - 128k ----------------------------------------+-+|&lt;br /&gt;
       |     |01 - 512k ----------------------------------------+-+|&lt;br /&gt;
       |     |10 - 2m ------------------------------------------+-+|&lt;br /&gt;
       |     |11 - reserved ------------------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 Processor Control                          ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8007|byte |Falcon Bus Control                  BIT 6 5 . 3 2 . 0|R/W (F030)&lt;br /&gt;
       |     |RESET behavior -------------------------+ |   | |   ||&lt;br /&gt;
       |     |  0 = always cold start ----------------+ |   | |   ||&lt;br /&gt;
       |     |  1 = normal, &amp;quot;memvalid&amp;quot; is observed ---+ |   | |   ||&lt;br /&gt;
       |     |STe Bus Emulation ------------------------'   | |   ||&lt;br /&gt;
       |     |  0 = STE --------------------------------'   | |   ||&lt;br /&gt;
       |     |  1 = Falcon -----------------------------'   | |   ||&lt;br /&gt;
       |     |Blitter flag ---------------------------------' |   ||&lt;br /&gt;
       |     |  0 = BLiTTER On -----------------------------' |   ||&lt;br /&gt;
       |     |  1 = BLiTTER Off ----------------------------' |   ||&lt;br /&gt;
       |     |Blitter clock-----------------------------------'   ||&lt;br /&gt;
       |     |  0 - 8mhz, ------------------------------------'   ||&lt;br /&gt;
       |     |  1 - 16mhz ------------------------------------'   ||&lt;br /&gt;
       |     |68030 clock ----------------------------------------'|&lt;br /&gt;
       |     |  0 - 8mhz -----------------------------------------'|&lt;br /&gt;
       |     |  1 - 16mhz ----------------------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############SHIFTER Video Controller                             ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8201|byte |Video screen memory position (High byte)             |R/W&lt;br /&gt;
$FF8203|byte |Video screen memory position (Mid byte)              |R/W&lt;br /&gt;
$FF820D|byte |Video screen memory position (Low byte)              |R/W  (STe)&lt;br /&gt;
$FF8205|byte |Video address pointer (High byte)                    |R (R/W STe)&lt;br /&gt;
$FF8207|byte |Video address pointer (Mid byte)                     |R (R/W STe)&lt;br /&gt;
$FF8209|byte |Video address pointer (Low byte)                     |R (R/W STe)&lt;br /&gt;
$FF820E|word |Offset to next line                                  |R/W (F030)&lt;br /&gt;
$FF820F|byte |Width of a scanline (width in words-1)               |R/W  (STe)&lt;br /&gt;
$FF8210|word |Width of a scanline (width in words)                 |R/W (F030)&lt;br /&gt;
$FF8264|byte |Horizontal scroll register without prefetch (0-15)   |R/W  (STe)&lt;br /&gt;
$FF8265|byte |Horizontal scroll register with prefetch (0-15)      |R/W  (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF820A|byte |Video synchronization mode                    BIT 1 0|R/W&lt;br /&gt;
       |     |0 - 60hz, 1 - 50hz -------------------------------+ ||&lt;br /&gt;
       |     |0 - internal, 1 - external sync ------------------' ||      (TT)&lt;br /&gt;
       |     |0 - internal, 1 - external sync --------------------'|     (!TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |                                BIT 11111198 76543210|&lt;br /&gt;
       |     |                                    543210           |&lt;br /&gt;
       |     |                     ST color value .....RRr .GGr.BBb|&lt;br /&gt;
       |     |                    STe color value ....rRRR gGGGbBBB|&lt;br /&gt;
$FF8240|word |Video palette register 0              Lowercase = LSB|R/W&lt;br /&gt;
    :  |  :  |  :      :       :     :                             | :&lt;br /&gt;
$FF825E|word |Video palette register 15                            |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8260|byte |Shifter resolution                            BIT 1 0|R/W&lt;br /&gt;
       |     |00 320x200x4 bitplanes (16 colors) ---------------+-+|&lt;br /&gt;
       |     |01 640x200x2 bitplanes (4 colors) ----------------+-+|&lt;br /&gt;
       |     |10 640x400x1 bitplane  (1 colors) ----------------+-'|&lt;br /&gt;
$FF8262|word |TT Shifter resolution                   BIT 15 . . 12|R/W   (TT)&lt;br /&gt;
       |     |Sample/Hold mode ----------------------------'      ||&lt;br /&gt;
       |     |Hypermono mode -------------------------------------'|&lt;br /&gt;
       |     |Video Mode                                 BIT 10 9 8|&lt;br /&gt;
       |     |000  320x200x4 bitplanes (16 colors) -----------+-+-+|&lt;br /&gt;
       |     |001  640x200x2 bitplanes (4 colors) ------------+-+-+|&lt;br /&gt;
       |     |010  640x400x1 bitplane  (2 colors)(Duochrome) -+-+-+|&lt;br /&gt;
       |     |100  640x480x4 bitplanes (16 colors) -----------+-+-+|&lt;br /&gt;
       |     |110 1280x960x1 bitplane  (2 colors) ------------+-+-+|&lt;br /&gt;
       |     |111  320x480x8 bitplanes (256 colors) ----------+-+-'|&lt;br /&gt;
       |     |ST Palette Bank                           BIT 3 2 1 0|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF827E|word |STACY Display Driver                         BIT 10 9|R/W(STACY)&lt;br /&gt;
       |     |Backlight on/off ---------------------------------+ ||&lt;br /&gt;
       |     |Display on/off -------------------------------------+| &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |                                BIT 11111198 76543210|&lt;br /&gt;
       |     |                                    543210           |&lt;br /&gt;
       |     |                     TT color value ....RRRr GGGgBBBb|&lt;br /&gt;
$FF8400|word |TT Palette  0                         Lowercase = LSB|R/W   (TT)&lt;br /&gt;
    :  |  :  | :    :     :                                        | :      :&lt;br /&gt;
$FF85FE|word |TT Palette 255                                       |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 VIDEL Video Controller                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8006|byte |Monitor Type                      BIT 7 6 5 4 3 2 1 0|R   (F030)&lt;br /&gt;
       |     |Monitor Type (M0,M1) -----------------+-+ | | | | | ||&lt;br /&gt;
       |     |00 - Monochrome (SM124) --------------+-+ | | | | | ||&lt;br /&gt;
       |     |01 - RGB (SC1224) --------------------+-+ | | | | | ||&lt;br /&gt;
       |     |10 - VGA Color -----------------------+-+ | | | | | ||&lt;br /&gt;
       |     |11 - Television ----------------------+-+ | | | | | ||&lt;br /&gt;
       |     |ST-RAM size ------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  00 = 1MB -------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  01 = 4MB -------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  10 = 16MB ------------------------------+-+ | | | ||&lt;br /&gt;
       |     |ROM Wait Status ------------------------------+ + | ||&lt;br /&gt;
       |     |  00 = Reserved ------------------------------+ + | ||&lt;br /&gt;
       |     |  01 = 2 Wait (default) ----------------------+ + | ||&lt;br /&gt;
       |     |  10 = 1 Wait --------------------------------+ + | ||&lt;br /&gt;
       |     |  11 = 0 Wait --------------------------------+ + | ||&lt;br /&gt;
       |     |Video bus width ----------------------------------+ ||&lt;br /&gt;
       |     |  0 = 16 Bit,  -----------------------------------+ ||&lt;br /&gt;
       |     |  1 = 32 Bit (default) ---------------------------+ ||&lt;br /&gt;
       |     |RAM Wait Status ------------------------------------+|&lt;br /&gt;
       |     |  0 =  1 Wait (default) ----------------------------+|&lt;br /&gt;
       |     |  1 =  0 Wait --------------------------------------+|&lt;br /&gt;
$FF820E|word |Offset to next line                                  |R/W (F030)&lt;br /&gt;
$FF8210|word |VWRAP - Linewidth in words                           |R/W (F030)&lt;br /&gt;
$FF8266|word |SPSHIFT                    BIT 10 9 8 . 6 5 4 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |2-colour mode ------------------' | |   | | | | | | ||&lt;br /&gt;
       |     |Overlay mode ---------------------' |   | | | | | | ||&lt;br /&gt;
       |     |Truecolour mode --------------------'   | | | | | | ||&lt;br /&gt;
       |     |Use external Hsync (1 - on) ------------' | | | | | ||&lt;br /&gt;
       |     |Use external Vsync (1 - on) --------------' | | | | ||&lt;br /&gt;
       |     |8 Bitplane mode ----------------------------' | | | ||&lt;br /&gt;
       |     |Color Palette Bank from 256 colors (0-15) ----+-+-+-+|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |      Horizontal Control Registers          (BIT 9-0)|&lt;br /&gt;
$FF8280|word |HHC - Horizontal Hold Counter                        |R   (F030)&lt;br /&gt;
$FF8282|word |HHT - Horizontal Hold Timer                          |R/W (F030)&lt;br /&gt;
$FF8284|word |HBB - Horizontal Border Begin                        |R/W (F030)&lt;br /&gt;
$FF8286|word |HBE - Horizontal Border End                          |R/W (F030)&lt;br /&gt;
$FF8288|word |HDB - Horizontal Display Begin                       |R/W (F030)&lt;br /&gt;
$FF828A|word |HDE - Horizontal Display End                         |R/W (F030)&lt;br /&gt;
$FF828C|word |HSS - Horizontal SS                                  |R/W (F030)&lt;br /&gt;
$FF828E|word |HFS - Horizontal FS                                  |R/W (F030)&lt;br /&gt;
$FF8290|word |HEE - Horizontal EE                                  |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |      Vertical Control Registers           (BIT 10-0)| &lt;br /&gt;
$FF82A0|word |VFC - Vertcial Frequency Counter                     |R   (F030)&lt;br /&gt;
$FF82A2|word |VFT - Vertical Frequency Timer                       |R/W (F030)&lt;br /&gt;
$FF82A4|word |VBB - Vertical Border Begin      (count in 1/2 lines)|R/W (F030)&lt;br /&gt;
$FF82A6|word |VBE - Vertical Border End        (count in 1/2 lines)|R/W (F030)&lt;br /&gt;
$FF82A8|word |VDB - Vertical Display Begin                         |R/W (F030)&lt;br /&gt;
$FF82AA|word |VDE - Vertical Display End                           |R/W (F030)&lt;br /&gt;
$FF82AC|word |VSS - Vertical SS                                    |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FF82C0|word |Video Control (VCO)   (Super78 puts $182 here)       |R/W (F030)&lt;br /&gt;
       |     |                                BIT 8 7 6 5 . 3 2 1 0|&lt;br /&gt;
       |     |Hz base offset ---------------------' | | |   | | | ||&lt;br /&gt;
       |     |  0: 128 cycles --------------------' | | |   | | | ||&lt;br /&gt;
       |     |  (ST Low/Mid on RGB                  | | |   | | | ||&lt;br /&gt;
       |     |     and ST Hi on SM124)              | | |   | | | ||&lt;br /&gt;
       |     |  1:  64 cycles (all the others) ---' | | |   | | | ||&lt;br /&gt;
       |     |Videobus width -----------------------' | |   | | | ||&lt;br /&gt;
       |     |  0: 16 Bit-Videobus -----------------' | |   | | | ||&lt;br /&gt;
       |     |  1: 32 Bit-Videobus (Falcon) --------' | |   | | | ||&lt;br /&gt;
       |     |HSync-Impulse --------------------------' |   | | | ||&lt;br /&gt;
       |     |  0: negative HSync-Impulse (5V &amp;gt; 0V) --' |   | | | ||&lt;br /&gt;
       |     |  1: positive HSync-Impulse (0V &amp;gt; 5V) --' |   | | | ||&lt;br /&gt;
       |     |VSync-Impulse ----------------------------'   | | | ||&lt;br /&gt;
       |     |  0: negative VSync-Impulse (5V &amp;gt; 0V) ----'   | | | ||&lt;br /&gt;
       |     |  1: positive VSync-Impulse (0V &amp;gt; 5V) ----'   | | | ||&lt;br /&gt;
       |     |Half-line-HSyncs------------------------------' | | ||&lt;br /&gt;
       |     |  0: No Half-line-HSyncs ---------------------' | | ||&lt;br /&gt;
       |     |  1: 15 Half-line-HSyncs from start of -------' | | ||&lt;br /&gt;
       |     |Video base clock -------------------------------' | ||&lt;br /&gt;
       |     |  0: Video base clock 32 MHz -------------------' | ||&lt;br /&gt;
       |     |  1: Video base clock 25.175 MHz ---------------' | ||&lt;br /&gt;
       |     |Monitor Type (M0,M1 same as bit 7&amp;amp;6 in $FF0006) --+-+|&lt;br /&gt;
       |     |  00 - Monochrome (SM124) ------------------------+-+|&lt;br /&gt;
       |     |  01 - RGB (SC1224) ------------------------------+-+|&lt;br /&gt;
       |     |  10 - VGA Color ---------------------------------+-+|&lt;br /&gt;
       |     |  11 - Television --------------------------------+-+|&lt;br /&gt;
$FF82C2|word |Video Mode (VDM)                          BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |Pixel width ----------------------------------+-+ | ||&lt;br /&gt;
       |     |  00: 4 cycles/pixel -------------------------+-+ | ||&lt;br /&gt;
       |     |  01: 2 cycles/pixel -------------------------+-+ | ||&lt;br /&gt;
       |     |  10: 1 cycle/pixel  -------------------------+-+ | ||&lt;br /&gt;
       |     |  11: n/a            -------------------------+-+ | ||&lt;br /&gt;
       |     |Skip line (interlace) (1-on) ---------------------' ||&lt;br /&gt;
       |     |Double lines (1-on) --------------------------------'| &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DMA/WD1772 Disk controller                           ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8600|     |Reserved                                             |&lt;br /&gt;
$FF8602|     |Reserved                                             |&lt;br /&gt;
$FF8604|word |FDC access/sector count                              |R/W&lt;br /&gt;
$FF8606|word |DMA mode/status                             BIT 2 1 0|R&lt;br /&gt;
       |     |Condition of FDC DATA REQUEST signal -----------' | ||&lt;br /&gt;
       |     |0 - sector count null,1 - not null ---------------' ||&lt;br /&gt;
       |     |0 - no error, 1 - DMA error ------------------------'|&lt;br /&gt;
$FF8606|word |DMA mode/status                 BIT 8 7 6 . 4 3 2 1 .|W&lt;br /&gt;
       |     |0 - read FDC/HDC,1 - write ---------' | | | | | | |  |&lt;br /&gt;
       |     |0 - HDC access,1 - FDC access --------' | | | | | |  |&lt;br /&gt;
       |     |0 - DMA on,1 - no DMA ------------------' | | | | |  |&lt;br /&gt;
       |     |Reserved ---------------------------------' | | | |  |&lt;br /&gt;
       |     |0 - FDC reg,1 - sector count reg -----------' | | |  |&lt;br /&gt;
       |     |0 - FDC access,1 - HDC access ----------------' | |  |&lt;br /&gt;
       |     |0 - pin A1 low, 1 - pin A1 high ----------------' |  |&lt;br /&gt;
       |     |0 - pin A0 low, 1 - pin A0 high ------------------'  |&lt;br /&gt;
$FF8609|byte |DMA base and counter (High byte)                     |R/W&lt;br /&gt;
$FF860B|byte |DMA base and counter (Mid byte)                      |R/W&lt;br /&gt;
$FF860D|byte |DMA base and counter (Low byte)                      |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT-SCSI DMA Controller                               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8701|byte |DMA Address Pointer (Highest byte)                   |R/W   (TT)&lt;br /&gt;
$FF8703|byte |DMA Address Pointer (High byte)                      |R/W   (TT)&lt;br /&gt;
$FF8705|byte |DMA Address Pointer (Low byte)                       |R/W   (TT)&lt;br /&gt;
$FF8707|byte |DMA Address Pointer (Lowest byte)                    |R/W   (TT)&lt;br /&gt;
$FF8709|byte |DMA Byte Count (Highest byte)                        |R/W   (TT)&lt;br /&gt;
$FF870B|byte |DMA Byte Count (High byte)                           |R/W   (TT)&lt;br /&gt;
$FF870D|byte |DMA Byte Count (Low byte)                            |R/W   (TT)&lt;br /&gt;
$FF870F|byte |DMA Byte Count (Lowest byte)                         |R/W   (TT)&lt;br /&gt;
$FF8710|word |Residue Data Register (High Word)                    |R     (TT)&lt;br /&gt;
$FF8712|word |Residue Data Register (Low Word)                     |R     (TT)&lt;br /&gt;
$FF8715|byte |Control register                  BIT 7 6 . . . . 1 0|R/W   (TT)&lt;br /&gt;
       |     |Bus error ----------------------------' |         | ||&lt;br /&gt;
       |     |Byte count zero ------------------------'         | ||&lt;br /&gt;
       |     |Enable -------------------------------------------' ||&lt;br /&gt;
       |     |DMA Direction (1 - out to port) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT-SCSI Drive Controller NCR 5380                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8781|byte |Data register                                        |R/W   (TT)&lt;br /&gt;
$FF8783|byte |Init-Command Register                                |R/W   (TT)&lt;br /&gt;
$FF8785|byte |Mode Register                                        |R/W   (TT)&lt;br /&gt;
$FF8787|byte |Target-Command Register                              |R/W   (TT)&lt;br /&gt;
$FF8789|byte |ID Select/SCSI Control Register                      |R/W   (TT)&lt;br /&gt;
$FF878B|byte |Status Register                                      |R/W   (TT)&lt;br /&gt;
$FF878D|byte |Target Receive/Input Data                            |R/W   (TT)&lt;br /&gt;
$FF878F|byte |Initiate Receive/Reset                               |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############YM2149 Sound Chip                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8800|byte |Read data/Register select                            |R/W&lt;br /&gt;
       |     |0 Channel A Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |1 Channel A Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |2 Channel B Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |3 Channel B Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |4 Channel C Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |5 Channel C Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |6 Noise Freq                          BIT 5 4 3 2 1 0|&lt;br /&gt;
       |     |7 Mixer Control                   BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |  Port B IN/OUT (1=Output) -----------' | | | | | | ||&lt;br /&gt;
       |     |  Port A IN/OUT ------------------------' | | | | | ||&lt;br /&gt;
       |     |  Channel C Noise (1=Off) ----------------' | | | | ||&lt;br /&gt;
       |     |  Channel B Noise --------------------------' | | | ||&lt;br /&gt;
       |     |  Channel A Noise ----------------------------' | | ||&lt;br /&gt;
       |     |  Channel C Tone (0=On) ------------------------' | ||&lt;br /&gt;
       |     |  Channel B Tone ---------------------------------' ||&lt;br /&gt;
       |     |  Channel A Tone -----------------------------------'|&lt;br /&gt;
       |     |8 Channel A Amplitude Control           BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level (0=Fixed) -----------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |9 Channel B Amplitude Control           BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level ---------------------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |10 Channel C Amplitude Control          BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level ---------------------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |11 Envelope Period High           BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |12 Envelope Period Low            BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |13 Envelope Shape                         BIT 3 2 1 0|&lt;br /&gt;
       |     |  Continue -----------------------------------' | | ||&lt;br /&gt;
       |     |  Attack ---------------------------------------' | ||&lt;br /&gt;
       |     |  Alternate --------------------------------------' ||&lt;br /&gt;
       |     |  Hold ---------------------------------------------'|&lt;br /&gt;
       |     |   00xx - \____________________________________      |&lt;br /&gt;
       |     |   01xx - /|___________________________________      |&lt;br /&gt;
       |     |   1000 - \|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\      |&lt;br /&gt;
       |     |   1001 - \____________________________________      |&lt;br /&gt;
       |     |   1010 - \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\      |&lt;br /&gt;
       |     |   1011 - \|-----------------------------------      |&lt;br /&gt;
       |     |   1100 - /|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/      |&lt;br /&gt;
       |     |   1101 - /------------------------------------      |&lt;br /&gt;
       |     |   1110 - /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/      |&lt;br /&gt;
       |     |   1111 - /|___________________________________      |&lt;br /&gt;
       |     |14 Port A                         BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |  IDE Drive On/OFF -------------------+ | | | | | | ||    (F030)&lt;br /&gt;
       |     |  SCC A (0=LAN, 1=Serial2) -----------' | | | | | | ||      (TT)&lt;br /&gt;
       |     |  Monitor jack GPO pin -----------------+ | | | | | ||&lt;br /&gt;
       |     |  Internal Speaker On/Off --------------' | | | | | ||    (F030)&lt;br /&gt;
       |     |  Centronics strobe ----------------------' | | | | ||&lt;br /&gt;
       |     |  RS-232 DTR output ------------------------' | | | ||&lt;br /&gt;
       |     |  RS-232 RTS output --------------------------' | | ||&lt;br /&gt;
       |     |  Drive select 1 -------------------------------' | ||&lt;br /&gt;
       |     |  Drive select 0 ---------------------------------' ||&lt;br /&gt;
       |     |  Drive side select --------------------------------'|&lt;br /&gt;
       |     |15 Port B (Parallel port)                            |&lt;br /&gt;
$FF8802|byte |Write data                                           |W&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Note: PSG Registers are now fixed at these addresses.|&lt;br /&gt;
       |     |All other addresses are masked out on the Falcon. Any|&lt;br /&gt;
       |     |writes to the shadow registers $8804-$88FF will cause|&lt;br /&gt;
       |     |bus errors. Game/Demo coders beware!                 |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DMA Sound System                                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8900|byte |Buffer interrupts                         BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |TimerA-Int at end of record buffer -----------' | | ||&lt;br /&gt;
       |     |TimerA-Int at end of replay buffer -------------' | ||&lt;br /&gt;
       |     |MFP-15-Int (I7) at end of record buffer ----------' ||&lt;br /&gt;
       |     |MFP-15-Int (I7) at end of replay buffer ------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8901|byte |DMA Control Register              BIT 7 . 5 4 . . 1 0|R/W&lt;br /&gt;
       |     |1 - select record register -----------+   | |     | ||    (F030) &lt;br /&gt;
       |     |0 - select replay register -----------'   | |     | ||    (F030)&lt;br /&gt;
       |     |Loop record buffer -----------------------' |     | ||    (F030)&lt;br /&gt;
       |     |DMA Record on ------------------------------'     | ||    (F030)&lt;br /&gt;
       |     |Loop replay buffer -------------------------------' ||     (STe)&lt;br /&gt;
       |     |DMA Replay on --------------------------------------'|     (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8903|byte |Frame start address (high byte)                      |R/W  (STe)&lt;br /&gt;
$FF8905|byte |Frame start address (mid byte)                       |R/W  (STe)&lt;br /&gt;
$FF8907|byte |Frame start address (low byte)                       |R/W  (STe)&lt;br /&gt;
$FF8909|byte |Frame address counter (high byte)                    |R    (STe)&lt;br /&gt;
$FF890B|byte |Frame address counter (mid byte)                     |R    (STe)&lt;br /&gt;
$FF890D|byte |Frame address counter (low byte)                     |R    (STe)&lt;br /&gt;
$FF890F|byte |Frame end address (high byte)                        |R/W  (STe)&lt;br /&gt;
$FF8911|byte |Frame end address (mid byte)                         |R/W  (STe)&lt;br /&gt;
$FF8913|byte |Frame end address (low byte)                         |R/W  (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8920|byte |DMA Track Control                     BIT 5 4 . . 1 0|R/W (F030)&lt;br /&gt;
       |     |00 - Set DAC to Track 0 ------------------+-+     | ||&lt;br /&gt;
       |     |01 - Set DAC to Track 1 ------------------+-+     | ||&lt;br /&gt;
       |     |10 - Set DAC to Track 2 ------------------+-+     | ||&lt;br /&gt;
       |     |11 - Set DAC to Track 3 ------------------+-'     | ||&lt;br /&gt;
       |     |00 - Play 1 Track --------------------------------+-+|&lt;br /&gt;
       |     |01 - Play 2 Tracks -------------------------------+-+|&lt;br /&gt;
       |     |10 - Play 3 Tracks -------------------------------+-+|&lt;br /&gt;
       |     |11 - Play 4 Tracks -------------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8921|byte |Sound mode control                BIT 7 6 . . . . 1 0|R/W  (STe)&lt;br /&gt;
       |     |0 - Stereo, 1 - Mono -----------------' |         | ||&lt;br /&gt;
       |     |0 - 8bit -------------------------------+         | ||&lt;br /&gt;
       |     |1 - 16bit (F030 only) ------------------'         | ||    (F030)&lt;br /&gt;
       |     |Frequency control bits                            | ||&lt;br /&gt;
       |     |00 - Off (F030 only) -----------------------------+-+|    (F030)&lt;br /&gt;
       |     |00 - 6258hz frequency (STe only) -----------------+-+|&lt;br /&gt;
       |     |01 - 12517hz frequency ---------------------------+-+|&lt;br /&gt;
       |     |10 - 25033hz frequency ---------------------------+-+|&lt;br /&gt;
       |     |11 - 50066hz frequency ---------------------------+-'|&lt;br /&gt;
       |     |Samples are always signed. In stereo mode, data is   |&lt;br /&gt;
       |     |arranged in pairs with high pair the left channel,low|&lt;br /&gt;
       |     |pair right channel. Sample length MUST be even in    |&lt;br /&gt;
       |     |either mono or stereo mode.                          |&lt;br /&gt;
       |     |Example: 8 bit Stereo : LRLRLRLRLRLRLRLR             |&lt;br /&gt;
       |     |        16 bit Stereo : LLRRLLRRLLRRLLRR (F030)      |&lt;br /&gt;
       |     |2 track 16 bit stereo : LLRRllrrLLRRllrr (F030)      |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############STe Microwire Controller (STe/TT only!)              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8922|byte |Microwire data register                              |R/W  (Mwr)&lt;br /&gt;
$FF8924|byte |Microwire mask register                              |R/W  (Mwr)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |!! ATTENTION !! Microwire is now obsolete! It is not |&lt;br /&gt;
       |     |present in the Falcon030 and is unlikely to be in any|&lt;br /&gt;
       |     |future machines. You have been warned.               | &lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Volume/tone controller commands         (Address %10)|&lt;br /&gt;
       |     |Master Volume                           10 011 DDDDDD|&lt;br /&gt;
       |     |Left Volume                             10 101 .DDDDD|&lt;br /&gt;
       |     |Right Volume                            10 100 .DDDDD|&lt;br /&gt;
       |     |Treble                                  10 010 ..DDDD|&lt;br /&gt;
       |     |Bass                                    10 001 ..DDDD|&lt;br /&gt;
       |     |Mixer                                   10 000 ....DD|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Volume/tone controller values                        |&lt;br /&gt;
       |     |Master Volume     : 0-40   (0 = -80dB, 40 = 0dB)     |&lt;br /&gt;
       |     |Left/Right Volume : 0-20   (0 = -40dB, 20 = 0dB)     |&lt;br /&gt;
       |     |Treble/bass       : 0-12   (0 = -12dB, 12 = +12dB)   |&lt;br /&gt;
       |     |Mixer             : 0-3:                             |&lt;br /&gt;
       |     |                         0 = DMA only                |&lt;br /&gt;
       |     |                         1 = DMA + YM2149            |&lt;br /&gt;
       |     |                         2 = DMA only                |&lt;br /&gt;
       |     |                         3 = reserved                |&lt;br /&gt;
       |     |        (there is no DMA + (YM2149 - 12dB) mode!)    |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Procedure: Set mask register to $7ff. Read data      |&lt;br /&gt;
       |     |register and save original value.Write data register.|&lt;br /&gt;
       |     |Compare data register with original value, repeat    |&lt;br /&gt;
       |     |until data register returns to original value to     |&lt;br /&gt;
       |     |ensure data has been sent over the interface.        |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Interrupts: Timer A can be set to interrupt at the   |&lt;br /&gt;
       |     |end of a frame. Alternatively, the GPI7 (MFP mono    |&lt;br /&gt;
       |     |detect) can be used to generate interrupts thereby   |&lt;br /&gt;
       |     |freeing up Timer A. In this case, the active edge    |&lt;br /&gt;
       |     |$FFFA03 must be set by or-ing the active edge of     |&lt;br /&gt;
       |     |$FFFA03 with the contents of $FF8260:                |&lt;br /&gt;
       |     |$FF8260 - 2 (mono)     or.b  #$80 with edge          |&lt;br /&gt;
       |     |$FF8260 - 0,1 (colour) and.b #$7F with edge          |&lt;br /&gt;
       |     |This will generate an interrupt at the START of a    |&lt;br /&gt;
       |     |frame, instead of at the end as with Timer A. To     |&lt;br /&gt;
       |     |generate an interrupt at the END of a frame, simply  |&lt;br /&gt;
       |     |reverse the edge values.                             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 DMA/DSP Controllers                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8930|word |Crossbar Source Controller                           |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: A/D Convertor                 BIT 15 14 13 12|&lt;br /&gt;
       |     |1 - Connect, 0 - disconnect ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock (Don't use) -----------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: External Input                BIT 11 10  9  8|&lt;br /&gt;
       |     |0 - DSP IN, 1 - All others ----------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: DSP-XMIT                      BIT  7  6  5  4|&lt;br /&gt;
       |     |0 - Tristate and disconnect DSP -----------+  |  |  ||&lt;br /&gt;
       |     |    (Only for external SSI use)            |  |  |  ||&lt;br /&gt;
       |     |1 - Connect DSP to multiplexer ------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: DMA-PLAYBACK                  BIT  3  2  1  0|&lt;br /&gt;
       |     |0 - Handshaking on, dest DSP-REC ----------+  |  |  ||&lt;br /&gt;
       |     |1 - Destination is not DSP-REC ------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8932|word |Crossbar Destination Controller                      |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: D/A Convertor            BIT 15 14 13 12|&lt;br /&gt;
       |     |1 - Connect, 0 - Disconnect ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: External Output          BIT 11 10  9  8|&lt;br /&gt;
       |     |0 - DSP out, 1 - All others ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: DSP-RECORD               BIT  7  6  5  4|&lt;br /&gt;
       |     |0 - Tristate and disconnect DSP -----------+  |  |  ||&lt;br /&gt;
       |     |    (Only for external SSI use)            |  |  |  ||&lt;br /&gt;
       |     |1 - Connect DSP to multiplexer ------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: DMA-RECORD               BIT  3  2  1  0|&lt;br /&gt;
       |     |0 - Handshaking on, src DSP-XMIT ----------+  |  |  ||&lt;br /&gt;
       |     |1 - Source is not DSP-XMIT ----------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8934|byte |Frequency Divider External Clock          BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0000 - STe-Compatible mode                           |&lt;br /&gt;
       |     |0001 - 1111  Divide by 256 and then number           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8935|byte |Frequency Divider Internal Sync           BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0000 - STe-Compatible mode   1000 - 10927Hz*         |&lt;br /&gt;
       |     |0001 - 49170Hz               1001 -  9834Hz          |&lt;br /&gt;
       |     |0010 - 32780Hz               1010 -  8940Hz*         |&lt;br /&gt;
       |     |0011 - 24585Hz               1011 -  8195Hz          |&lt;br /&gt;
       |     |0100 - 19668Hz               1100 -  7565Hz*         |&lt;br /&gt;
       |     |0101 - 16390Hz               1101 -  7024Hz*         |&lt;br /&gt;
       |     |0110 - 14049Hz*              1110 -  6556Hz*         |&lt;br /&gt;
       |     |0111 - 12292Hz               1111 -  6146Hz*         |&lt;br /&gt;
       |     |               * - Invalid for CODEC                 |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8936|byte |Record Tracks Select                          BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |00 - Record 1 Track ------------------------------+-+|&lt;br /&gt;
       |     |01 - Record 2 Tracks -----------------------------+-+|&lt;br /&gt;
       |     |10 - Record 3 Tracks -----------------------------+-+|&lt;br /&gt;
       |     |11 - Record 4 Tracks -----------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8937|byte |CODEC Input Source from 16bit adder           BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |Source: Multiplexer ------------------------------' ||&lt;br /&gt;
       |     |Source: A/D Convertor ------------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8938|byte |CODEC ADC-Input for L+R Channel               BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |0 - Microphone, 1 - Soundchip                     L R|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8939|byte |Channel amplification                   BIT LLLL RRRR|R/W (F030)&lt;br /&gt;
       |     |          Amplification is in +1.5dB steps           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF893A|word |Channel attenuation                     BIT LLLL RRRR|R/W (F030)&lt;br /&gt;
       |     |           Attenuation is in -1.5dB steps            |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF893C|byte |CODEC-Status                                  BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |Left Channel Overflow ----------------------------' ||&lt;br /&gt;
       |     |Right Channel Overflow -----------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8941|byte |GPx Data Direction                          BIT 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0 - In, 1 - Out --------------------------------+-+-'|&lt;br /&gt;
       |     | For the GP0-GP2 pins on the DSP connector           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8943|byte |GPx Data Port                               BIT 2 1 0|R/W (F030)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT Clock Chip (MC146818A @ 32.768 khz)               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8961|byte |Register select                                      |W     (TT)&lt;br /&gt;
       |     |0 - Current Second                                   |&lt;br /&gt;
       |     |1 - Second for alarm                                 |&lt;br /&gt;
       |     |2 - Current Minute                                   |&lt;br /&gt;
       |     |3 - Minute for alarm                                 |&lt;br /&gt;
       |     |4 - Current Hour                                     |&lt;br /&gt;
       |     |5 - Hour for alarm                                   |&lt;br /&gt;
       |     |6 - Day of week (1=Sunday, 2=Monday, 3=...)          |&lt;br /&gt;
       |     |7 - Day of Month                                     |&lt;br /&gt;
       |     |8 - Month                                            |&lt;br /&gt;
       |     |9 - Year (example : '93' for this year)              |&lt;br /&gt;
       |     |A                                               BIT 7|&lt;br /&gt;
       |     |    If set, update time in progress ----------------'|&lt;br /&gt;
       |     |    don't read time &amp;amp; date registers                 |&lt;br /&gt;
       |     |B                                 BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |1 = Write Protect time &amp;amp; date --------'   | |   | | ||&lt;br /&gt;
       |     |1 = Enable alarm interrupt ---------------' |   | | ||&lt;br /&gt;
       |     |1 = Interrupt after time updated -----------'   | | ||&lt;br /&gt;
       |     |1 = Format Binary, 0 = Format BCD --------------' | ||&lt;br /&gt;
       |     |1 = 24hr format, 0 = 12hr format -----------------' ||&lt;br /&gt;
       |     |1 = Summer hours, 0 = Winter hours -----------------'|&lt;br /&gt;
       |     |C                                           BIT 6 5 4|&lt;br /&gt;
       |     | ??? -------------------------------------------' | ||&lt;br /&gt;
       |     |1 = alarm is ringing -----------------------------' ||&lt;br /&gt;
       |     |1 = date is updated --------------------------------'|&lt;br /&gt;
       |     |On interrupt, read this register to determine source.|&lt;br /&gt;
       |     |D                                               BIT 7|&lt;br /&gt;
       |     |1 = Battery dead -----------------------------------'|&lt;br /&gt;
$FF8963|byte |Register data                                        |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Blitter (Not present on TT!)                         ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8A00|word |Halftone-RAM, Word 0                                 |R/W (Blit)&lt;br /&gt;
    :  |  :  |    :     :     :  :                                 | :     :&lt;br /&gt;
$FF8A1E|word |Halftone-RAM, Word 15                                |R/W (Blit)&lt;br /&gt;
$FF8A20|word |Source X Increment                      (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A22|word |Source Y Increment                      (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A24|long |Source Address Register                 (24 bit,even)|R/W (Blit)&lt;br /&gt;
$FF8A28|word |Endmask 1                     (First write of a line)|R/W (Blit)&lt;br /&gt;
$FF8A2A|word |Endmask 2                     (All other line writes)|R/W (Blit)&lt;br /&gt;
$FF8A2C|word |Endmask 3                      (Last write of a line)|R/W (Blit)&lt;br /&gt;
$FF8A2E|word |Destination X Increment                 (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A30|word |Destination Y Increment                 (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A32|long |Destination Address Register            (24 bit,even)|R/W (Blit)&lt;br /&gt;
$FF8A36|word |Words per Line in Bit-Block                 (0=65536)|R/W (Blit)&lt;br /&gt;
$FF8A38|word |Lines per Bit-Block                         (0=65536)|R/W (Blit)&lt;br /&gt;
$FF8A3A|byte |Halftone Operation Register                   BIT 1 0|R/W (Blit)&lt;br /&gt;
       |     |00 - All ones ------------------------------------+-+|&lt;br /&gt;
       |     |01 - Halftone ------------------------------------+-+|&lt;br /&gt;
       |     |10 - Source --------------------------------------+-+|&lt;br /&gt;
       |     |11 - Source AND Halftone -------------------------+-'|&lt;br /&gt;
$FF8A3B|byte |Logical Operation Register                BIT 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |0000 All zeros -------------------------------+-+-+-+|&lt;br /&gt;
       |     |0001 Source AND destination ------------------+-+-+-+|&lt;br /&gt;
       |     |0010 Source AND NOT destination --------------+-+-+-+|&lt;br /&gt;
       |     |0011 Source ----------------------------------+-+-+-+|&lt;br /&gt;
       |     |0100 NOT source AND destination --------------+-+-+-+|&lt;br /&gt;
       |     |0101 Destination -----------------------------+-+-+-+|&lt;br /&gt;
       |     |0110 Source XOR destination ------------------+-+-+-+|&lt;br /&gt;
       |     |0111 Source OR destination -------------------+-+-+-+|&lt;br /&gt;
       |     |1000 NOT source AND NOT destination ----------+-+-+-+|&lt;br /&gt;
       |     |1001 NOT source XOR destination --------------+-+-+-+|&lt;br /&gt;
       |     |1010 NOT destination -------------------------+-+-+-+|&lt;br /&gt;
       |     |1011 Source OR NOT destination ---------------+-+-+-+|&lt;br /&gt;
       |     |1100 NOT source ------------------------------+-+-+-+|&lt;br /&gt;
       |     |1101 NOT source OR destination ---------------+-+-+-+|&lt;br /&gt;
       |     |1110 NOT source OR NOT destination -----------+-+-+-+|&lt;br /&gt;
       |     |1111 All ones --------------------------------+-+-+-'|&lt;br /&gt;
$FF8A3C|byte |Line Number Register              BIT 7 6 5 . 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |BUSY ---------------------------------' | |   | | | ||&lt;br /&gt;
       |     |0 - Share bus, 1 - Hog bus -------------' |   | | | ||&lt;br /&gt;
       |     |SMUDGE mode ------------------------------'   | | | ||&lt;br /&gt;
       |     |Halftone line number -------------------------+-+-+-'|&lt;br /&gt;
$FF8A3D|byte |SKEW Register                     BIT 7 6 . . 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |Force eXtra Source Read --------------' |     | | | ||&lt;br /&gt;
       |     |No Final Source Read -------------------'     | | | ||&lt;br /&gt;
       |     |Source skew ----------------------------------+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############SCC-DMA (TT Only!)                                   ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8C01|byte |DMA Address Pointer (Highest Byte)                   |R/W   (TT)&lt;br /&gt;
$FF8C03|byte |DMA Address Pointer (High Byte)                      |R/W   (TT)&lt;br /&gt;
$FF8C05|byte |DMA Address Pointer (Low Byte)                       |R/W   (TT)&lt;br /&gt;
$FF8C07|byte |DMA Address Pointer (Lowest Byte)                    |R/W   (TT)&lt;br /&gt;
$FF8C09|byte |DMA Byte Count (Highest-Byte)                        |R/W   (TT)&lt;br /&gt;
$FF8C0B|byte |DMA Byte Count (High-Byte)                           |R/W   (TT)&lt;br /&gt;
$FF8C0D|byte |DMA Byte Count (Low-Byte)                            |R/W   (TT)&lt;br /&gt;
$FF8C0F|byte |DMA Byte Count (Lowest-Byte)                         |R/W   (TT)&lt;br /&gt;
$FF8C10|word |Residue Data Register (High-Word)                    |R     (TT)&lt;br /&gt;
$FF8C12|word |Residue Data register (Low-Word)                     |R     (TT)&lt;br /&gt;
$FF8C15|byte |Control register                  BIT 7 6 . . . . 1 0|R/W   (TT)&lt;br /&gt;
       |     |Bus error ----------------------------' |         | ||&lt;br /&gt;
       |     |Byte count zero ------------------------'         | ||&lt;br /&gt;
       |     |Enable -------------------------------------------' ||&lt;br /&gt;
       |     |DMA Direction (1 - out to port) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Zilog 8530 SCC (MSTe/TT/F030)                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8C81|byte |Channel A - Control Register                         |R/W  (SCC)&lt;br /&gt;
$FF8C83|byte |Channel A - Data Register                            |R/W  (SCC)&lt;br /&gt;
$FF8C85|byte |Channel B - Control Register                         |R/W  (SCC)&lt;br /&gt;
$FF8C87|byte |Channel B - Data Register                            |R/W  (SCC)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############VME Bus System Control Unit (MSTe/TT)                ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E01|byte |VME sys_mask                      BIT 7 6 5 4 . 2 1 .|R/W  (VME)&lt;br /&gt;
$FF8E03|byte |VME sys_stat                      BIT 7 6 5 4 . 2 1 .|R    (VME)&lt;br /&gt;
       |     |_SYSFAIL in VMEBUS -------------------' | | |   | |  |program&lt;br /&gt;
       |     |MFP ------------------------------------' | |   | |  |autovec&lt;br /&gt;
       |     |SCC --------------------------------------' |   | |  |autovec&lt;br /&gt;
       |     |VSYNC --------------------------------------'   | |  |program&lt;br /&gt;
       |     |HSYNC ------------------------------------------' |  |program&lt;br /&gt;
       |     |System software INT ------------------------------'  |program&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Reading sys_mask resets pending int-bits in sys_stat,|&lt;br /&gt;
       |     |so read sys_stat first.                              |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E05|byte |VME sys_int                                     BIT 0|R/W  (VME)&lt;br /&gt;
       |     |Setting bit 0 to 1 forces an INT of level 1. INT must|Vector $64&lt;br /&gt;
       |     |be enabled in sys_mask to use it.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E0D|byte |VME vme_mask                      BIT 7 6 5 4 3 2 1 .|R/W  (VME)&lt;br /&gt;
$FF8E0F|byte |VME vme_stat                      BIT 7 6 5 4 3 2 1 .|R    (VME)&lt;br /&gt;
       |     |_IRQ7 from VMEBUS --------------------' | | | | | |  |program&lt;br /&gt;
       |     |_IRQ6 from VMEBUS/MFP ------------------' | | | | |  |program&lt;br /&gt;
       |     |_IRQ5 from VMEBUS/SCC --------------------' | | | |  |program&lt;br /&gt;
       |     |_IRQ4 from VMEBUS --------------------------' | | |  |program&lt;br /&gt;
       |     |_IRQ3 from VMEBUS/soft -----------------------' | |  |prog/autov&lt;br /&gt;
       |     |_IRQ2 from VMEBUS ------------------------------' |  |program&lt;br /&gt;
       |     |_IRQ1 from VMEBUS --------------------------------'  |program&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |MFP-int and SCC-int are hardwired to the VME-BUS-ints|&lt;br /&gt;
       |     |(or'ed). Reading vme_mask resets pending int-bits in |&lt;br /&gt;
       |     |vme_stat, so read vme_stat first.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E07|byte |VME vme_int                                     BIT 0|R/W   (TT)&lt;br /&gt;
       |     |Setting bit 0 to 1 forces an INT of level 3. INT must|Vector $6C&lt;br /&gt;
       |     |be enabled in vme_mask to use it.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E09|byte |General purpose register - does nothing              |R/W   (TT)&lt;br /&gt;
$FF8E0B|byte |General purpose register - does nothing              |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Mega STe Cache/Processor Control                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E21|byte |Mega STe Cache/Processor Control           BIT 15-1 0|R/W (MSTe)&lt;br /&gt;
       |     |Cache enable lines (set all to 1 to enable) -----'  ||&lt;br /&gt;
       |     |CPU Speed (0 - 8mhz, 1 - 16mhz) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DIP Switches (MSTe/TT)                               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF9200|byte |DIP Switches (MSTe/TT)           BIT 7 6 5 4 3 2 1 0|R (MSTe/TT)&lt;br /&gt;
       |     |Sound DMA active ---------------------' |           ||&lt;br /&gt;
       |     |Floppy Drive 1.44 HD active ------------'           ||&lt;br /&gt;
       |     |CaTTamaran installed -------------------------------'|&lt;br /&gt;
       |     |                                                     |&lt;br /&gt;
       |     |That register is mirrored by the OS in &amp;quot;_SWI&amp;quot; Cookie |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############STe/F030 Extended Joystick/Lightpen Ports            ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF9200|word |Fire buttons 1-4                          Bit 3 2 1 0|R    (Ext)&lt;br /&gt;
       |     |Pause/F0 -------------------------------------' | | ||&lt;br /&gt;
       |     |F1 ---------------------------------------------' | ||&lt;br /&gt;
       |     |F2 -----------------------------------------------' ||&lt;br /&gt;
       |     |Option/F3 ------------------------------------------'|&lt;br /&gt;
$FF9202|word |Read Mask (0 - pin read)                             |W    (Ext)&lt;br /&gt;
$FF9202|word |Joystick Inputs                   BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
       |     |Controller 1 pin 4 -------------------' | | | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 3 ---------------------' | | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 2 -----------------------' | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 1 -------------------------' | | | ||&lt;br /&gt;
       |     |Controller 0 pin 4 ---------------------------' | | ||&lt;br /&gt;
       |     |Controller 0 pin 3/Paddle 1 Trigger ------------' | ||&lt;br /&gt;
       |     |Controller 0 pin 2/Paddle 0 Trigger --------------' ||&lt;br /&gt;
       |     |Controller 0 pin 1 ---------------------------------'|&lt;br /&gt;
       |     |                            BIT 15 14 13 12 11 10 9 8|&lt;br /&gt;
       |     |Controller 1 pin 14 ------------'   |  |  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 13 ----------------'  |  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 12 -------------------'  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 11 ----------------------'  |  | | ||&lt;br /&gt;
       |     |Controller 0 pin 14 -------------------------'  | | ||&lt;br /&gt;
       |     |Controller 0 pin 13 ----------------------------' | ||&lt;br /&gt;
       |     |Controller 0 pin 12 ------------------------------' ||&lt;br /&gt;
       |     |Controller 0 pin 11 --------------------------------'|&lt;br /&gt;
$FF9210|word |X Paddle 0 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9212|word |Y Paddle 0 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9214|word |X Paddle 1 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9216|word |Y Paddle 1 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9220|word |Lightpen X-Position           BIT 9 8 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9222|word |Lightpen Y-Position           BIT 9 8 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon VIDEL Palette Registers                       ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |              BIT 33222222 22221111 11111198 76543210|&lt;br /&gt;
       |     |                  10987654 32109876 543210           |&lt;br /&gt;
       |     |                  RRRRRr.. GGGGGg.. ........ BBBBBb..|&lt;br /&gt;
$FF9800|long |Palette Register  0                   Lowercase = LSB|R/W (F030)&lt;br /&gt;
   :   |  :  |   :        :     :                                  | :     :&lt;br /&gt;
$FF98FC|long |Palette Register 255                                 |R/W (F030)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon DSP Host Interface                            ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFA200|byte |Interrupt Ctrl Register           BIT 7 6 5 4 3 . 1 0|R/W (F030)&lt;br /&gt;
X:$FFE9|     |INIT bit -----------------------------' | | | |   | ||&lt;br /&gt;
       |     |00 - Interupt mode (DMA off) -----------+-+ | |   | ||&lt;br /&gt;
       |     |01 - 24-bit DMA mode -------------------+-+ | |   | ||&lt;br /&gt;
       |     |10 - 16-bit DMA mode -------------------+-+ | |   | ||&lt;br /&gt;
       |     |11 - 8-bit DMA mode --------------------+-' | |   | ||&lt;br /&gt;
       |     |Host Flag 1 --------------------------------' |   | ||&lt;br /&gt;
       |     |Host Flag 0 ----------------------------------'   | ||&lt;br /&gt;
       |     |         Host mode Data transfers:                | ||&lt;br /&gt;
       |     |              Interrupt mode                      | ||&lt;br /&gt;
       |     |00 - No interrupts (Polling) ---------------------+-+|&lt;br /&gt;
       |     |01 - RXDF Request (Interrupt) --------------------+-+|&lt;br /&gt;
       |     |10 - TXDE Request (Interrupt) --------------------+-+|&lt;br /&gt;
       |     |11 - RXDF and TXDE Request (Interrupts) ----------+-+|&lt;br /&gt;
       |     |                 DMA Mode                         | ||&lt;br /&gt;
       |     |00 - No DMA --------------------------------------+-+|&lt;br /&gt;
       |     |01 - DSP to Host Request (RX) --------------------+-+|&lt;br /&gt;
       |     |10 - Host to DSP Request (TX) --------------------+-+|&lt;br /&gt;
       |     |11 - Undefined (Illegal) -------------------------+-'|&lt;br /&gt;
$FFA201|byte |Command Vector Register           BIT 7 . . 4 3 2 1 0|R/W (F030)&lt;br /&gt;
X:$FFE9|     |Host Command Bit (Handshake)----------'     | | | | ||&lt;br /&gt;
       |     |Host Vector (0-31) -------------------------+-+-+-+-'|&lt;br /&gt;
$FFA202|byte |Interrupt Status Reg              BIT 7 6 . 4 3 2 1 0|R   (F030)&lt;br /&gt;
X:$FFE8|     |ISR Host Request ---------------------' |   | | | | ||&lt;br /&gt;
       |     |ISR DMA Status -------------------------'   | | | | ||&lt;br /&gt;
       |     |Host Flag 3 --------------------------------' | | | ||&lt;br /&gt;
       |     |Host Flag 2 ----------------------------------' | | ||&lt;br /&gt;
       |     |ISR Transmitter Ready (TRDY) -------------------' | ||&lt;br /&gt;
       |     |ISR Transmit Data Register Empty (TXDE) ----------' ||&lt;br /&gt;
       |     |ISR Receive Data Register Full (RXDF) --------------'|&lt;br /&gt;
$FFA203|byte |Interrupt Vector Register                            |R/W (F030)&lt;br /&gt;
$FFA204|byte |Unused                                               |    (F030)&lt;br /&gt;
$FFA205|byte |DSP-Word High                                        |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
$FFA206|byte |DSP-Word Mid                                         |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
$FFA207|byte |DSP-Word Low                                         |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############MFP 68901 - Multi Function Peripheral Chip           ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |     MFP Master Clock is 2,457,600 cycles/second     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA01|byte |Parallel Port Data Register                          |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA03|byte |Active Edge Register              BIT 7 6 5 4 . 2 1 0|R/W&lt;br /&gt;
       |     |Monochrome monitor detect ------------' | | | | | | ||&lt;br /&gt;
       |     |RS-232 Ring indicator ------------------' | | | | | ||&lt;br /&gt;
       |     |FDC/HDC interrupt ------------------------' | | | | ||&lt;br /&gt;
       |     |Keyboard/MIDI interrupt --------------------' | | | ||&lt;br /&gt;
       |     |Reserved -------------------------------------' | | ||&lt;br /&gt;
       |     |RS-232 CTS (input) -----------------------------' | ||&lt;br /&gt;
       |     |RS-232 DCD (input) -------------------------------' ||&lt;br /&gt;
       |     |Centronics busy ------------------------------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |       When port bits are used for input only:       |&lt;br /&gt;
       |     |0 - Interrupt on pin high-low conversion             |&lt;br /&gt;
       |     |1 - Interrupt on pin low-high conversion             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA05|byte |Data Direction                    BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |0 - In, 1 - Out ----------------------+-+-+-+-+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA07|byte |Interrupt Enable A                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0B|byte |Interrupt Pending A               BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0F|byte |Interrupt In-service A            BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA13|byte |Interrupt Mask A                  BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$13C GPI7-Monochrome Detect ----------' | | | | | | ||&lt;br /&gt;
       |     |$138   RS-232 Ring Detector ------------' | | | | | ||&lt;br /&gt;
       |     |$134 (STe sound)    Timer A --------------' | | | | ||&lt;br /&gt;
       |     |$130    Receive buffer full ----------------' | | | ||&lt;br /&gt;
       |     |$12C          Receive error ------------------' | | ||&lt;br /&gt;
       |     |$128      Send buffer empty --------------------' | ||&lt;br /&gt;
       |     |$124             Send error ----------------------' ||&lt;br /&gt;
       |     |$120 (HBL)          Timer B ------------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA09|byte |Interrupt Enable B                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0D|byte |Interrupt Pending B               BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA11|byte |Interrupt In-service B            BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA15|byte |Interrupt Mask B                  BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$11C                FDC/HDC ----------' | | | | | | ||&lt;br /&gt;
       |     |$118          Keyboard/MIDI ------------' | | | | | ||&lt;br /&gt;
       |     |$114 (200hz clock)  Timer C --------------' | | | | ||&lt;br /&gt;
       |     |$110 (USART timer)  Timer D ----------------' | | | ||&lt;br /&gt;
       |     |$10C           Blitter done ------------------' | | ||&lt;br /&gt;
       |     |$108     RS-232 CTS - input --------------------' | ||&lt;br /&gt;
       |     |$104     RS-232 DCD - input ----------------------' ||&lt;br /&gt;
       |     |$100        Centronics Busy ------------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA17|byte |Vector Register                   BIT 7 6 5 4 3 . . .|R/W&lt;br /&gt;
       |     |Vector Base Offset -------------------+-+-+-' |      |&lt;br /&gt;
       |     |1 - *Software End-interrupt mode -------------+      |&lt;br /&gt;
       |     |0 - Automatic End-interrupt mode -------------'      |&lt;br /&gt;
       |     |* - Default operating mode                           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA19|byte |Timer A Control                         BIT 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA1B|byte |Timer B Control                         BIT 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Reset (force output low) -------------------' | | | ||&lt;br /&gt;
       |     +----------------------------------------------+-+-+-++&lt;br /&gt;
       |     |0000 - Timer stop, no function executed              |&lt;br /&gt;
       |     |0001 - Delay mode, divide by 4                       |&lt;br /&gt;
       |     |0010 -     :           :     10                      |&lt;br /&gt;
       |     |0011 -     :           :     16                      |&lt;br /&gt;
       |     |0100 -     :           :     50                      |&lt;br /&gt;
       |     |0101 -     :           :     64                      |&lt;br /&gt;
       |     |0110 -     :           :     100                     |&lt;br /&gt;
       |     |0111 - Delay mode, divide by 200                     |&lt;br /&gt;
       |     |1000 - Event count mode                              |&lt;br /&gt;
       |     |1xxx - Pulse extension mode, divide as above         |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA1F|byte |Timer A Data                                         |R/W&lt;br /&gt;
$FFFA21|byte |Timer B Data                                         |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA1D|byte |Timer C &amp;amp; D Control                 BIT 6 5 4 . 2 1 0|R/W&lt;br /&gt;
       |     |                                        Timer   Timer|&lt;br /&gt;
       |     |                                          C       D  |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |000 - Timer stop                                     |&lt;br /&gt;
       |     |001 - Delay mode, divide by 4                        |&lt;br /&gt;
       |     |010 -      :           :    10                       |&lt;br /&gt;
       |     |011 -      :           :    16                       |&lt;br /&gt;
       |     |100 -      :           :    50                       |&lt;br /&gt;
       |     |101 -      :           :    64                       |&lt;br /&gt;
       |     |110 -      :           :    100                      |&lt;br /&gt;
       |     |111 - Delay mode, divide by 200                      |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA23|byte |Timer C Data                                         |R/W&lt;br /&gt;
$FFFA25|byte |Timer D Data                                         |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA27|byte |Sync Character                                       |R/W&lt;br /&gt;
$FFFA29|byte |USART Control                     BIT 7 6 5 4 3 2 1 .|R/W&lt;br /&gt;
       |     |Clock divide (1 - div by 16) ---------' | | | | | | ||&lt;br /&gt;
       |     |Word Length 00 - 8 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            01 - 7 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            10 - 6 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            11 - 5 bits ----------------+-' | | | | ||&lt;br /&gt;
       |     |Bits Stop Start Format                      | | | | ||&lt;br /&gt;
       |     |00     0    0   Synchronous ----------------+-+ | | ||&lt;br /&gt;
       |     |01     1    1   Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |10     1    1.5 Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |11     1    2   Asynchronous ---------------+-' | | ||&lt;br /&gt;
       |     |Parity (0 - ignore parity bit) -----------------' | ||&lt;br /&gt;
       |     |Parity (0 - odd parity,1 - even) -----------------' ||&lt;br /&gt;
       |     |Unused ---------------------------------------------'|&lt;br /&gt;
$FFFA2B|byte |Receiver Status                   BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Buffer full --------------------------' | | | | | | ||&lt;br /&gt;
       |     |Overrun error --------------------------' | | | | | ||&lt;br /&gt;
       |     |Parity error -----------------------------' | | | | ||&lt;br /&gt;
       |     |Frame error --------------------------------' | | | ||&lt;br /&gt;
       |     |Found - Search/Break detected ----------------' | | ||&lt;br /&gt;
       |     |Match/Character in progress --------------------' | ||&lt;br /&gt;
       |     |Synchronous strip enable -------------------------' ||&lt;br /&gt;
       |     |Receiver enable bit --------------------------------'|&lt;br /&gt;
$FFFA2D|byte |Transmitter Status                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Buffer empty -------------------------' | | | | | | ||&lt;br /&gt;
       |     |Underrun error -------------------------' | | | | | ||&lt;br /&gt;
       |     |Auto turnaround --------------------------' | | | | ||&lt;br /&gt;
       |     |End of transmission ------------------------' | | | ||&lt;br /&gt;
       |     |Break ----------------------------------------' | | ||&lt;br /&gt;
       |     |High bit ---------------------------------------' | ||&lt;br /&gt;
       |     |Low bit ------------------------------------------' ||&lt;br /&gt;
       |     |Transmitter enable ---------------------------------'|&lt;br /&gt;
$FFFA2F|byte |USART data                                           |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Floating Point Coprocessor (CIR Interface in MSTe)   ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA40|word |FP_Stat    Response-Register                         |??? (MSTe)&lt;br /&gt;
$FFFA42|word |FP_Ctl     Control-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA44|word |FP_Save    Save-Register                             |??? (MSTe)&lt;br /&gt;
$FFFA46|word |FP_Restor  Restore-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA48|word |                                                     |??? (MSTe)&lt;br /&gt;
$FFFA4A|word |FP_Cmd     Command-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA4E|word |FP_Ccr     Condition-Code-Register                   |??? (MSTe)&lt;br /&gt;
$FFFA50|long |FP_Op      Operand-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA54|word |FP_Selct   Register Select                           |??? (MSTe)&lt;br /&gt;
$FFFA58|long |FP_Iadr    Instruction Address                       |??? (MSTe)&lt;br /&gt;
$FFFA5C|long |           Operand Address                           |??? (MSTe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############MFP 68901 #2 (MFP2) - TT Only                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA81|byte |Parallel Port Data Register                          |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA83|byte |Active Edge Register              BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |       When port bits are used for input only:       |&lt;br /&gt;
       |     |0 - Interrupt on pin high-low conversion             |&lt;br /&gt;
       |     |1 - Interrupt on pin low-high conversion             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA85|byte |Data Direction                    BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |0 - In, 1 - Out ----------------------+-+-+-+-+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA87|byte |Interrupt Enable A                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8B|byte |Interrupt Pending A               BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8F|byte |Interrupt In-service A            BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA93|byte |Interrupt Mask A                  BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$17C         TT-SCSI NCR5380 ---------' | | | | | | ||&lt;br /&gt;
       |     |$178         RTC (MC146818A) -----------' | | | | | ||&lt;br /&gt;
       |     |$174                 Timer A -------------' | | | | ||&lt;br /&gt;
       |     |$170     Receive buffer full ---------------' | | | ||&lt;br /&gt;
       |     |$16C           Receive error -----------------' | | ||&lt;br /&gt;
       |     |$168       Send buffer empty -------------------' | ||&lt;br /&gt;
       |     |$164              Send error ---------------------' ||&lt;br /&gt;
       |     |$160                 Timer B -----------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA89|byte |Interrupt Enable B                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8D|byte |Interrupt Pending B               BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA91|byte |Interrupt In-service B            BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA95|byte |Interrupt Mask B                  BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$15C     SCSI DMA Controller ---------' | | | | | | ||&lt;br /&gt;
       |     |$158       (Reserved) GPIP 4 -----------' | | | | | ||&lt;br /&gt;
       |     |$154                 Timer C -------------' | | | | ||&lt;br /&gt;
       |     |$150                 Timer D ---------------' | | | ||&lt;br /&gt;
       |     |$14C    SCC B Ring Indicator -----------------' | | ||&lt;br /&gt;
       |     |$148      SCC DMA Controller -------------------' | ||&lt;br /&gt;
       |     |$144 General Purpose Input 1 ---------------------' ||&lt;br /&gt;
       |     |$140 General Purpose Input 0 -----------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA97|byte |Vector Register                   BIT 7 6 5 4 3 . . .|R/W   (TT)&lt;br /&gt;
       |     |Vector Base Offset -------------------+-+-+-' |      |&lt;br /&gt;
       |     |1 - *Software End-interrupt mode -------------+      |&lt;br /&gt;
       |     |0 - Automatic End-interrupt mode -------------'      |&lt;br /&gt;
       |     |* - Default operating mode                           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA99|byte |Timer A Control                         BIT 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA9B|byte |Timer B Control                         BIT 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Reset (force output low) -------------------' | | | ||&lt;br /&gt;
       |     +----------------------------------------------+-+-+-++&lt;br /&gt;
       |     |0000 - Timer stop, no function executed              |&lt;br /&gt;
       |     |0001 - Delay mode, divide by 4                       |&lt;br /&gt;
       |     |0010 -     :           :     10                      |&lt;br /&gt;
       |     |0011 -     :           :     16                      |&lt;br /&gt;
       |     |0100 -     :           :     50                      |&lt;br /&gt;
       |     |0101 -     :           :     64                      |&lt;br /&gt;
       |     |0110 -     :           :     100                     |&lt;br /&gt;
       |     |0111 - Delay mode, divide by 200                     |&lt;br /&gt;
       |     |1000 - Event count mode                              |&lt;br /&gt;
       |     |1xxx - Pulse extension mode, divide as above         |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA9F|byte |Timer A Data                                         |R/W   (TT)&lt;br /&gt;
$FFFAA1|byte |Timer B Data                                         |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA9D|byte |Timer C &amp;amp; D Control                 BIT 6 5 4 . 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |                                        Timer   Timer|&lt;br /&gt;
       |     |                                          C       D  |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |000 - Timer stop                                     |&lt;br /&gt;
       |     |001 - Delay mode, divide by 4                        |&lt;br /&gt;
       |     |010 -      :           :    10                       |&lt;br /&gt;
       |     |011 -      :           :    16                       |&lt;br /&gt;
       |     |100 -      :           :    50                       |&lt;br /&gt;
       |     |101 -      :           :    64                       |&lt;br /&gt;
       |     |110 -      :           :    100                      |&lt;br /&gt;
       |     |111 - Delay mode, divide by 200                      |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFAA3|byte |Timer C Data                                         |R/W   (TT)&lt;br /&gt;
$FFFAA5|byte |Timer D Data                                         |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFAA7|byte |Sync Character                                       |R/W   (TT)&lt;br /&gt;
$FFFAA9|byte |USART Control                     BIT 7 6 5 4 3 2 1 .|R/W   (TT)&lt;br /&gt;
       |     |Clock divide (1 - div by 16) ---------' | | | | | | ||&lt;br /&gt;
       |     |Word Length 00 - 8 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            01 - 7 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            10 - 6 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            11 - 5 bits ----------------+-' | | | | ||&lt;br /&gt;
       |     |Bits Stop Start Format                      | | | | ||&lt;br /&gt;
       |     |00     0    0   Synchronous ----------------+-+ | | ||&lt;br /&gt;
       |     |01     1    1   Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |10     1    1.5 Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |11     1    2   Asynchronous ---------------+-' | | ||&lt;br /&gt;
       |     |Parity (0 - ignore parity bit) -----------------' | ||&lt;br /&gt;
       |     |Parity (0 - odd parity,1 - even) -----------------' ||&lt;br /&gt;
       |     |Unused ---------------------------------------------'|&lt;br /&gt;
$FFFAAB|byte |Receiver Status                   BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Buffer full --------------------------' | | | | | | ||&lt;br /&gt;
       |     |Overrun error --------------------------' | | | | | ||&lt;br /&gt;
       |     |Parity error -----------------------------' | | | | ||&lt;br /&gt;
       |     |Frame error --------------------------------' | | | ||&lt;br /&gt;
       |     |Found - Search/Break detected ----------------' | | ||&lt;br /&gt;
       |     |Match/Character in progress --------------------' | ||&lt;br /&gt;
       |     |Synchronous strip enable -------------------------' ||&lt;br /&gt;
       |     |Receiver enable bit --------------------------------'|&lt;br /&gt;
$FFFAAD|byte |Transmitter Status                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Buffer empty -------------------------' | | | | | | ||&lt;br /&gt;
       |     |Underrun error -------------------------' | | | | | ||&lt;br /&gt;
       |     |Auto turnaround --------------------------' | | | | ||&lt;br /&gt;
       |     |End of transmission ------------------------' | | | ||&lt;br /&gt;
       |     |Break ----------------------------------------' | | ||&lt;br /&gt;
       |     |High bit ---------------------------------------' | ||&lt;br /&gt;
       |     |Low bit ------------------------------------------' ||&lt;br /&gt;
       |     |Transmitter enable ---------------------------------'|&lt;br /&gt;
$FFFAAF|byte |USART data                                           |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############6850 ACIA I/O Chips                                  ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFC00|byte |Keyboard ACIA control             BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Rx Int enable (1 - enable) -----------' | | | | | | ||&lt;br /&gt;
       |     |Tx Interrupts                           | | | | | | ||&lt;br /&gt;
       |     |00 - RTS low, Tx int disable -----------+-+ | | | | ||&lt;br /&gt;
       |     |01 - RTS low, Tx int enable ------------+-+ | | | | ||&lt;br /&gt;
       |     |10 - RTS high, Tx int disable ----------+-+ | | | | ||&lt;br /&gt;
       |     |11 - RTS low, Tx int disable,           | | | | | | ||&lt;br /&gt;
       |     |     Tx a break onto data out ----------+-' | | | | ||&lt;br /&gt;
       |     |Settings                                    | | | | ||&lt;br /&gt;
       |     |000 - 7 bit, even, 2 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |001 - 7 bit, odd, 2 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |010 - 7 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |011 - 7 bit, odd, 1 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |100 - 8 bit, 2 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |101 - 8 bit, 1 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |110 - 8 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |111 - 8 bit, odd, 1 stop bit ---------------+-+-' | ||&lt;br /&gt;
       |     |Clock divide                                      | ||&lt;br /&gt;
       |     |00 - Normal --------------------------------------+-+|&lt;br /&gt;
       |     |01 - Div by 16 -----------------------------------+-+|&lt;br /&gt;
       |     |10 - Div by 64 -----------------------------------+-+|&lt;br /&gt;
       |     |11 - Master reset --------------------------------+-'|&lt;br /&gt;
$FFFC00|byte |Keyboard ACIA control             BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Interrupt request --------------------' | | | | | | ||&lt;br /&gt;
       |     |Parity error ---------------------------' | | | | | ||&lt;br /&gt;
       |     |Rx overrun -------------------------------' | | | | ||&lt;br /&gt;
       |     |Framing error ------------------------------' | | | ||&lt;br /&gt;
       |     |CTS ------------------------------------------' | | ||&lt;br /&gt;
       |     |DCD --------------------------------------------' | ||&lt;br /&gt;
       |     |Tx data register empty ---------------------------' ||&lt;br /&gt;
       |     |Rx data register full ------------------------------'|&lt;br /&gt;
$FFFC02|byte |Keyboard ACIA data                                   |R/W&lt;br /&gt;
$FFFC04|byte |MIDI ACIA control                 BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Rx Int enable (1 - enable) -----------' | | | | | | ||&lt;br /&gt;
       |     |Tx Interrupts                           | | | | | | ||&lt;br /&gt;
       |     |00 - RTS low, Tx int disable -----------+-+ | | | | ||&lt;br /&gt;
       |     |01 - RTS low, Tx int enable ------------+-+ | | | | ||&lt;br /&gt;
       |     |10 - RTS high, Tx int disable ----------+-+ | | | | ||&lt;br /&gt;
       |     |11 - RTS low, Tx int disable,           | | | | | | ||&lt;br /&gt;
       |     |     Tx a break onto data out ----------+-' | | | | ||&lt;br /&gt;
       |     |Settings                                    | | | | ||&lt;br /&gt;
       |     |000 - 7 bit, even, 2 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |001 - 7 bit, odd, 2 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |010 - 7 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |011 - 7 bit, odd, 1 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |100 - 8 bit, 2 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |101 - 8 bit, 1 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |110 - 8 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |111 - 8 bit, odd, 1 stop bit ---------------+-+-' | ||&lt;br /&gt;
       |     |Clock divide                                      | ||&lt;br /&gt;
       |     |00 - Normal --------------------------------------+-+|&lt;br /&gt;
       |     |01 - Div by 16 -----------------------------------+-+|&lt;br /&gt;
       |     |10 - Div by 64 -----------------------------------+-+|&lt;br /&gt;
       |     |11 - Master reset --------------------------------+-'|&lt;br /&gt;
$FFFC04|byte |MIDI ACIA control                 BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Interrupt request --------------------' | | | | | | ||&lt;br /&gt;
       |     |Parity error ---------------------------' | | | | | ||&lt;br /&gt;
       |     |Rx overrun -------------------------------' | | | | ||&lt;br /&gt;
       |     |Framing error ------------------------------' | | | ||&lt;br /&gt;
       |     |CTS ------------------------------------------' | | ||&lt;br /&gt;
       |     |DCD --------------------------------------------' | ||&lt;br /&gt;
       |     |Tx data register empty ---------------------------' ||&lt;br /&gt;
       |     |Rx data register full ------------------------------'|&lt;br /&gt;
$FFFC06|byte |MIDI ACIA data                                       |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Realtime Clock                                       ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFC21|byte |S_Units                                              |???&lt;br /&gt;
$FFFC23|byte |S_Tens                                               |???&lt;br /&gt;
$FFFC25|byte |M_Units                                              |???&lt;br /&gt;
$FFFC27|byte |M_Tens                                               |???&lt;br /&gt;
$FFFC29|byte |H_Units                                              |???&lt;br /&gt;
$FFFC2B|byte |H_Tens                                               |???&lt;br /&gt;
$FFFC2D|byte |Weekday                                              |???&lt;br /&gt;
$FFFC2F|byte |Day_Units                                            |???&lt;br /&gt;
$FFFC31|byte |Day_Tens                                             |???&lt;br /&gt;
$FFFC33|byte |Mon_Units                                            |???&lt;br /&gt;
$FFFC35|byte |Mon_Tens                                             |???&lt;br /&gt;
$FFFC37|byte |Yr_Units                                             |???&lt;br /&gt;
$FFFC39|byte |Yr_Tens                                              |???&lt;br /&gt;
$FFFC3B|byte |Cl_Mod                                               |???&lt;br /&gt;
$FFFC3D|byte |Cl_Test                                              |???&lt;br /&gt;
$FFFC3F|byte |Cl_Reset                                             |???&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ROM                                                  ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FA0000|     |                                                     |&lt;br /&gt;
    :  |     |128K ROM expansion cartridge port                    |R&lt;br /&gt;
$FBFFFF|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FC0000|     |                                                     |&lt;br /&gt;
    :  |     |192K System ROM                                      |R&lt;br /&gt;
$FEFFFF|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
&lt;br /&gt;
                               Atari 32 bit Memory Map&lt;br /&gt;
&lt;br /&gt;
Addresses           Description&lt;br /&gt;
-------------------+----------------------------------------------------------&lt;br /&gt;
$00000000-$00DFFFFF|ST RAM&lt;br /&gt;
$00E00000-$00EFFFFF|512k TOS ROMs&lt;br /&gt;
$00F00000-$00F9FFFF|Reserved I/O Space&lt;br /&gt;
$00FA0000-$00FBFFFF|128k ROM cartridge expansion port&lt;br /&gt;
$00FC0000-$00FEFFFF|192k System ROM&lt;br /&gt;
$00FF0000-$00FF7FFF|Reserved I/O Space&lt;br /&gt;
$00FF8000-$00FFFFFF|ST/TT I/O&lt;br /&gt;
$01000000-$013FFFFF|TT Fast Ram&lt;br /&gt;
$01400000-$FDFFFFFF|Reserved&lt;br /&gt;
$FE000000-$FEFFFFFF|VME A24/D16&lt;br /&gt;
$FEFF0000-$FEFFFFFF|VME A16/D16&lt;br /&gt;
$FF000000-$FFFFFFFF|ST 24 bit compatible shadow&lt;br /&gt;
$FFD000xx-$FFD000xx|Set FastRAM refresh rate and generate a bus error&lt;br /&gt;
-------------------+----------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
                                   Cookie Jar&lt;br /&gt;
                            Atari &amp;quot;Official&amp;quot; Cookies&lt;br /&gt;
Cookie  Description&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_CPU   | CPU Type                                          Bit 7 6 5 4 3 2 1 0&lt;br /&gt;
       | Processor type is represented in decimal in the lowest byte.&lt;br /&gt;
       | (0 - 68000, 40 - 68040)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_VDO   | Video Type                                                  BIT 17 16&lt;br /&gt;
       | Shifter Type                                                     |  |&lt;br /&gt;
       | 00 - ST ---------------------------------------------------------+--+&lt;br /&gt;
       | 01 - STe --------------------------------------------------------+--+&lt;br /&gt;
       | 10 - TT ---------------------------------------------------------+--+&lt;br /&gt;
       | 11 - Falcon030 --------------------------------------------------+--'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FDC   | Floppy Drive Controller                              BIT 25 24 . 23-0&lt;br /&gt;
       | Floppy Format                                             |  |      |&lt;br /&gt;
       | 00 - DD (Normal floppy interface) ------------------------+--+      |&lt;br /&gt;
       | 01 - HD (1.44 MB with 3.5&amp;quot;) ------------------------------+--+      |&lt;br /&gt;
       | 10 - ED (2.88 MB with 3.5&amp;quot;) ------------------------------+--'      |&lt;br /&gt;
       | Controller ID                                                       |&lt;br /&gt;
       | 0 - No information available                                        |&lt;br /&gt;
       | 'ATC' - Fully compatible interface built in a way that -------------+&lt;br /&gt;
       |         behaves like part of the system.                            |&lt;br /&gt;
       | 'DP1' - &amp;quot;DreamPark Development&amp;quot;, all ID's beginning with -----------'&lt;br /&gt;
       |         &amp;quot;DP&amp;quot; are reserved for Dreampark.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FLK   | File Locking&lt;br /&gt;
       | If present, GEMDOS supports file locking. Value represents version&lt;br /&gt;
       | number of the expansion.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_NET   | Network Type&lt;br /&gt;
       | If present, there is GEMDOS network support. Points to 2 longs:&lt;br /&gt;
       | The first is the ID of the producer, and the second is the version&lt;br /&gt;
       | number.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SLM   | SLM Driver&lt;br /&gt;
       | Diablo-driver for the SLM laser printer. Value points to a&lt;br /&gt;
       | non-documented structure.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_INF   | .INF Patch&lt;br /&gt;
       | When present, STEFIX (patch program for TOS 1.06) is active.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SND   | Sound Hardware                                        BIT 5 4 3 2 1 0&lt;br /&gt;
       | CodeC (??) -----------------------------------------------' | | | | |&lt;br /&gt;
       | Connection Matrix ------------------------------------------' | | | |&lt;br /&gt;
       | DSP56001 -----------------------------------------------------' | | |&lt;br /&gt;
       | 16 Bit DMA Sound -----------------------------------------------' | |&lt;br /&gt;
       | 8 Bit DMA Sound --------------------------------------------------' |&lt;br /&gt;
       | YM2149 -------------------------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_MCH   | Machine Type                                                BIT 17 16&lt;br /&gt;
       | 00 - ST/Mega ST -------------------------------------------------+--+&lt;br /&gt;
       | 01 - STe &amp;amp; Compatible Machines (See Below) ----------------------+--+&lt;br /&gt;
       | 10 - TT ---------------------------------------------------------+--+&lt;br /&gt;
       | 11 - Falcon030 --------------------------------------------------+--'&lt;br /&gt;
       | STe &amp;amp; Compatible Machines                             BIT 5 4 3 2 1 0&lt;br /&gt;
       | 00000 - STe ----------------------------------------------+-+-+-+-+-+&lt;br /&gt;
       | 00001 - ST Book ------------------------------------------+-+-+-+-+-+&lt;br /&gt;
       | 10000 - Mega STe -----------------------------------------+-+-+-+-+-'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SWI   | Configuration Switches&lt;br /&gt;
       | State of configuration switches (MSTe/TT only)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FRB   | Fast Ram Buffer&lt;br /&gt;
       | (TT specific) 64k buffer for ACSI DMA&lt;br /&gt;
       | 0 - no buffers assigned    Not 0 - address of FastRam buffer&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FPU   | FPU Type&lt;br /&gt;
       | Software FPU                                              BIT 3 2 1 0&lt;br /&gt;
       | 68040's internal FPU -----------------------------------------' | | |&lt;br /&gt;
       | 01 - 6888x present ---------------------------------------------+-+ |&lt;br /&gt;
       | 10 - 68881 for sure --------------------------------------------+-+ |&lt;br /&gt;
       | 11 - 68882 for sure --------------------------------------------+-' |&lt;br /&gt;
       | SFP004 present -----------------------------------------------------'&lt;br /&gt;
       | Hardware FPU                                            BIT 11 10 9 8&lt;br /&gt;
       | 68040's internal FPU ----------------------------------------'  | | |&lt;br /&gt;
       | 01 - 6888x present ---------------------------------------------+-+ |&lt;br /&gt;
       | 10 - 68881 for sure --------------------------------------------+-+ |&lt;br /&gt;
       | 11 - 68882 for sure --------------------------------------------+-' |&lt;br /&gt;
       | SFP004 present -----------------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_OOL   | PoolFix&lt;br /&gt;
       | Value corresponds to PoolFix version&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_AKP   | Keyboard/Language Configuration&lt;br /&gt;
       | Keyboard Configuration                                       Bit 15-8&lt;br /&gt;
       | 1 - German   5 - Italian -------------------------------------------+&lt;br /&gt;
       | 2 - French   7 - Swiss French --------------------------------------+&lt;br /&gt;
       | 4 - Spanish  8 - Swiss German --------------------------------------+&lt;br /&gt;
       | All others - English -----------------------------------------------'&lt;br /&gt;
       | Language Configuration                                        BIT 7-0&lt;br /&gt;
       | 1 - German   5 - Italian -------------------------------------------+&lt;br /&gt;
       | 2 - French   7 - Swiss French --------------------------------------+&lt;br /&gt;
       | 4 - Spanish  8 - Swiss German --------------------------------------+&lt;br /&gt;
       | All others - English -----------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_IDT   | International Date/Time Format&lt;br /&gt;
       | Time Format                                                    BIT 12&lt;br /&gt;
       | 0 - AM/PM, 1 - 24 hours --------------------------------------------+&lt;br /&gt;
       | Date Format                                                   BIT 9 8&lt;br /&gt;
       | 00 - MMDDYY ------------------------------------------------------+-+&lt;br /&gt;
       | 01 - DDMMYY ------------------------------------------------------+-+&lt;br /&gt;
       | 10 - YYMMDD ------------------------------------------------------+-+&lt;br /&gt;
       | 11 - YYDDMM ------------------------------------------------------+-'&lt;br /&gt;
       | Separator for date                                            BIT 7-0&lt;br /&gt;
       | ASCII Value (i.e. &amp;quot;.&amp;quot; or &amp;quot;/&amp;quot;) --------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
MiNT   | MiNT&lt;br /&gt;
       | Present if MiNT/MultiTOS is active. Value represents the version&lt;br /&gt;
       | number of the MiNT kernel in hex (0x104 = 1.04)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Programming]]&lt;br /&gt;
[[Category:Memory Address]]&lt;/div&gt;</summary>
		<author><name>Cyprian</name></author>
	</entry>
	<entry>
		<id>https://www.temlib.org/AtariForumWiki/index.php?title=Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&amp;diff=22857</id>
		<title>Atari ST/STe/MSTe/TT/F030 Hardware Register Listing</title>
		<link rel="alternate" type="text/html" href="https://www.temlib.org/AtariForumWiki/index.php?title=Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&amp;diff=22857"/>
		<updated>2023-09-13T13:55:34Z</updated>

		<summary type="html">&lt;p&gt;Cyprian: $FF8205/07/09 R/W on STe&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Based on:&lt;br /&gt;
* https://temlib.org/AtariForumWiki/index.php/Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&lt;br /&gt;
* https://github.com/Number0000009/atari-wiki/blob/master/Atari%20ST%20STe%20MSTe%20TT%20F030%20Hardware%20Register%20Listing.txt&lt;br /&gt;
* https://mikro.naprvyraz.sk/docs/Memory%20Maps/FALREG.TXT&lt;br /&gt;
* https://mikro.naprvyraz.sk/docs/mikro/videl.html&lt;br /&gt;
* http://cd.textfiles.com/atarilibrary/atari_cd10/DISKS/AC10DISK/ATOZBOOK/M.TXT&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.---------------------------------------------------.&lt;br /&gt;
|Atari ST/STe/MSTe/TT/F030 Hardware Register Listing|&lt;br /&gt;
`---------------------------------------------------'&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Address Description                                                      Space&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########CPU Reset Vectors                                               ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000000|Reset : Initial SSP                                             |SP&lt;br /&gt;
$000004|Reset : Initial PC                                              |SP&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########CPU Exception Vectors                                           ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000008|Bus Error                                                       |SD&lt;br /&gt;
$00000C|Address Error                                                   |SD&lt;br /&gt;
$000010|Illegal Instruction                                             |SD&lt;br /&gt;
$000014|Zero Divide                                                     |SD&lt;br /&gt;
$000018|CHK, CHK2 Instruction                                           |SD&lt;br /&gt;
$00001C|cpTRAPcc, TRAPcc, TRAPV                                         |SD&lt;br /&gt;
$000020|Privilege Violation                                             |SD&lt;br /&gt;
$000024|Trace                                                           |SD&lt;br /&gt;
$000028|Line 1010 Emulator (LineA)                                      |SD&lt;br /&gt;
$00002C|Line 1111 Emulator (LineF)                                      |SD&lt;br /&gt;
$000030|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
$000034|Coprocessor Protocol Violation (68030)                          |SD&lt;br /&gt;
$000038|Format Error (68010)                                            |SD&lt;br /&gt;
$00003C|Uninitialized Interrupt Vector                                  |SD&lt;br /&gt;
$000040|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
   :   |   :             :                                              | :&lt;br /&gt;
$00005F|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
$000060|Spurious Interrupt (Bus error during interrupt)                 |SD                                          &lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Auto-Vector Interrupts                                          ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000064|Level 1 Int Autovector (TT VME)                                 |SD&lt;br /&gt;
$000068|Level 2 Int Autovector (HBL)                                    |SD&lt;br /&gt;
$00006C|Level 3 Int Autovector (TT VME)                                 |SD&lt;br /&gt;
$000070|Level 4 Int Autovector (VBL)                                    |SD&lt;br /&gt;
$000074|Level 5 Int Autovector                                          |SD&lt;br /&gt;
$000078|Level 6 Int Autovector (MFP)                                    |SD&lt;br /&gt;
$00007C|Level 7 Int Autovector                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Trap Instruction Vectors (Trap #n = Vector number + 32 + n)     ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000080|Trap #0                                                         |SD&lt;br /&gt;
$000084|Trap #1 (GemDOS)                                                |SD&lt;br /&gt;
$000088|Trap #2 (AES/VDI)                                               |SD&lt;br /&gt;
$00008C|Trap #3                                                         |SD&lt;br /&gt;
$000090|Trap #4                                                         |SD&lt;br /&gt;
$000094|Trap #5                                                         |SD&lt;br /&gt;
$000098|Trap #6                                                         |SD&lt;br /&gt;
$00009C|Trap #7                                                         |SD&lt;br /&gt;
$0000A0|Trap #8                                                         |SD&lt;br /&gt;
$0000A4|Trap #9                                                         |SD&lt;br /&gt;
$0000A8|Trap #10                                                        |SD&lt;br /&gt;
$0000AC|Trap #11                                                        |SD&lt;br /&gt;
$0000B0|Trap #12                                                        |&lt;br /&gt;
$0000B4|Trap #13 (BIOS)                                                 |SD&lt;br /&gt;
$0000B8|Trap #14 (XBIOS)                                                |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Math Coprocessor Vectors (68881/68882/Internal)                 ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000C0|FFCP Branch or Set on Unordered Condition                       |SD&lt;br /&gt;
$0000C4|FFCP Inexact Result                                             |SD&lt;br /&gt;
$0000C8|FFCP Divide by Zero                                             |SD&lt;br /&gt;
$0000CC|FFCP Underflow                                                  |SD&lt;br /&gt;
$0000D0|FFCP Operand Error                                              |SD&lt;br /&gt;
$0000D4|FFCP Overflow                                                   |SD&lt;br /&gt;
$0000D8|FFCP Signaling NAN                                              |SD&lt;br /&gt;
$0000DC|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########PMMU Coprocessor Vectors (68851/Internal)                       ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000E0|MMU Configuration Error                                         |SD&lt;br /&gt;
$0000E4|MC68851, not used by MC68030                                    |SD&lt;br /&gt;
$0000E8|MC68851, not used by MC68030                                    |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Miscellaneous Vectors                                           ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000EC|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
   :   |   :             :                                              | :&lt;br /&gt;
$0000FF|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########User Assigned Interrupt Vectors                                 ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000100|ST-MFP-0 - Centronics busy                                      |SD&lt;br /&gt;
$000104|ST-MFP-1 - RS-232 DCD                                           |SD&lt;br /&gt;
$000108|ST-MFP-2 - RS-232 CTS                                           |SD&lt;br /&gt;
$00010C|ST-MFP-3 - Blitter done                                         |SD&lt;br /&gt;
$000110|ST-MFP-4 - Timer D (USART timer)                                |SD&lt;br /&gt;
$000114|ST-MFP-5 - Timer C (200hz Clock)                                |SD&lt;br /&gt;
$000118|ST-MFP-6 - Keyboard/MIDI (ACIA)                                 |SD&lt;br /&gt;
$00011C|ST-MFP-7 - FDC/HDC                                              |SD&lt;br /&gt;
$000120|ST-MFP-8 - Timer B (HBL)                                        |SD&lt;br /&gt;
$000124|ST-MFP-9 - Send Error                                           |SD&lt;br /&gt;
$000128|ST-MFP-10 - Send buffer empty                                   |SD&lt;br /&gt;
$00012C|ST-MFP-11 - Receive error                                       |SD&lt;br /&gt;
$000130|ST-MFP-12 - Receive buffer full                                 |SD&lt;br /&gt;
$000134|ST-MFP-13 - Timer A (STe sound)                                 |SD&lt;br /&gt;
$000138|ST-MFP-14 - RS-232 Ring detect                                  |SD&lt;br /&gt;
$00013C|ST-MFP-15 - GPI7 - Monochrome Detect                            |SD&lt;br /&gt;
$000140|TT-MFP-0 - GPI 0                                                |SD&lt;br /&gt;
$000144|TT-MFP-1 - GPI 1                                                |SD&lt;br /&gt;
$000148|TT-MFP-2 - SCC-DMA Controller                                   |SD&lt;br /&gt;
$00014C|TT-MFP-3 - Ring Indicator SCC B                                 |SD&lt;br /&gt;
$000150|TT-MFP-4 - Timer D                                              |SD&lt;br /&gt;
$000154|TT-MFP-5 - Timer C                                              |SD&lt;br /&gt;
$000158|TT-MFP-6 - (Reserved) GPI 4                                     |SD&lt;br /&gt;
$00015C|TT-MFP-7 - SCSI DMA Controller                                  |SD&lt;br /&gt;
$000160|TT-MFP-8 - Timer B                                              |SD&lt;br /&gt;
$000164|TT-MFP-9 - Send Error                                           |SD&lt;br /&gt;
$000168|TT-MFP-10 - Send buffer empty                                   |SD&lt;br /&gt;
$00016C|TT-MFP-11 - Receive error                                       |SD&lt;br /&gt;
$000170|TT-MFP-12 - Receive buffer full                                 |SD&lt;br /&gt;
$000174|TT-MFP-13 - Timer A                                             |SD&lt;br /&gt;
$000176|TT-MFP-14 - TT Clock (MC146818A)                                |SD&lt;br /&gt;
$00017C|TT-MFP-15 - TT-SCSI Drive Controller NCR 5380                   |SD&lt;br /&gt;
$000180|SCC Interrupt                                                   |SD&lt;br /&gt;
$0001BC|SCC Interrupt                                                   |SD&lt;br /&gt;
$0001C0|User Defined, Unused                                            |SD&lt;br /&gt;
   :   |  :     :        :                                              | :&lt;br /&gt;
$0003FC|User Defined, Unused                                            |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
&lt;br /&gt;
Address Size  Description                                           Name&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############System Crash Page                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$000380|long |Validates System Crash Page if $12345678             |proc_lives&lt;br /&gt;
$000384|.....|Saved registers D0-D7                                |proc_dregs&lt;br /&gt;
$0003A4|.....|Saved registers A0-A7                                |proc_aregs&lt;br /&gt;
$0003C4|long |Vector number of crash exception                     |proc_enum&lt;br /&gt;
$0003C8|long |Saved USP                                            |proc_usp&lt;br /&gt;
$0003CC|.....|Saved 16 words from exception stack                  |proc_stk&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############System Variables                                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$000400|long |GEM Event timer vector                               |etv_timer&lt;br /&gt;
$000404|long |GEM Critical error handler                           |etv_critic&lt;br /&gt;
$000408|long |GEM Program termination vector                       |etv_term&lt;br /&gt;
$00040C|long |GEM Additional vector #1 (Unused)                    |etv_xtra&lt;br /&gt;
   :   |  :  | :      :        :     :    :                        |   :&lt;br /&gt;
$00041C|long |GEM Additional vector #5 (Unused)                    |etv_xtra&lt;br /&gt;
$000420|long |Validates memory configuration if $752019F3          |memvalid&lt;br /&gt;
$000424|word |Copy of contents of $FF8001                          |memctrl&lt;br /&gt;
$000426|long |Validates resvector if $31415926                     |resvalid&lt;br /&gt;
$00042A|long |Reset vector                                         |resvector&lt;br /&gt;
$00042E|long |Physical top of RAM                                  |phystop&lt;br /&gt;
$000432|long |Start of TPA (user memory)                           |_membot&lt;br /&gt;
$000436|long |End of TPA (user memory)                             |_memtop&lt;br /&gt;
$00043A|long |Validates memcntrl and memconf if $237698AA          |memval2&lt;br /&gt;
$00043E|word |If nonzero, floppy disk VBL routine is disabled      |flock&lt;br /&gt;
$000440|word |Floppy Seek rate - 0:6ms, 1:12ms, 2:2ms, 3:3ms       |seekrate&lt;br /&gt;
$000442|word |Time between two timer calls (in milliseconds)       |_timer_ms&lt;br /&gt;
$000444|word |If not zero, verify floppy disk writes               |_fverify&lt;br /&gt;
$000446|word |Default boot device                                  |_bootdev&lt;br /&gt;
$000448|word |0 - NTSC (60hz), &amp;lt;&amp;gt;0 - PAL (50hz)                    |palmode&lt;br /&gt;
$00044A|word |Default video resolution                             |defshiftmod&lt;br /&gt;
$00044C|word |Copy of contents of $FF8260                          |sshiftmod&lt;br /&gt;
$00044E|long |Pointer to video RAM (logical screen base)           |_v_bas_ad&lt;br /&gt;
$000452|word |If not zero, VBL routine is not executed             |vblsem&lt;br /&gt;
$000454|word |Number of vertical blank routines                    |nvbls&lt;br /&gt;
$000456|long |Pointer to list of vertical blank routines           |_vblqueue&lt;br /&gt;
$00045A|long |If not zero, points to color palette to be loaded    |colorptr&lt;br /&gt;
$00045E|long |If not zero, points to video ram for next VBL        |screenpt&lt;br /&gt;
$000462|long |Counter for number of VBLs                           |_vbclock&lt;br /&gt;
$000466|long |Number of VBL routines executed                      |_frclock&lt;br /&gt;
$00046A|long |Vector for hard disk initialization                  |hdv_init&lt;br /&gt;
$00046E|long |Vector for resolution change                         |swv_vec&lt;br /&gt;
$000472|long |Vector for getbpb for hard disk                      |hdv_bpb&lt;br /&gt;
$000476|long |Vector for read/write routine for hard disk          |hdv_rw&lt;br /&gt;
$00047A|long |Vector for hard disk boot                            |hdv_boot&lt;br /&gt;
$00047E|long |Vector for hard disk media change                    |hdv_mediach&lt;br /&gt;
$000482|word |If not zero, attempt to load &amp;quot;COMMAND.PRG&amp;quot; on boot   |_comload&lt;br /&gt;
$000484|byte |Attribute vector for console output       BIT 3 2 1 0|conterm&lt;br /&gt;
       |     |Return &amp;quot;kbshift&amp;quot; for BIOS conin --------------' | | ||&lt;br /&gt;
       |     |System bell (1 - on) ---------------------------' | ||&lt;br /&gt;
       |     |Key repeat (1 - on) ------------------------------' ||&lt;br /&gt;
       |     |Key click (1 - on) ---------------------------------'|&lt;br /&gt;
$000486|long |Return address for TRAP #14                  (unused)|trp14ret&lt;br /&gt;
$00048A|long |Return address for critical error handler    (unused)|criticret&lt;br /&gt;
$00048E|long |Memory descriptor block                              |themd&lt;br /&gt;
$00049E|long |Space for additional memory descriptors              |themdmd&lt;br /&gt;
$0004A2|long |Pointer to BIOS save registers block                 |savptr&lt;br /&gt;
$0004A6|word |Number of connected floppy drives                    |_nflops&lt;br /&gt;
$0004A8|long |Vector for screen output                             |con_state&lt;br /&gt;
$0004AC|word |Temporary storage for cursor line position           |save_row&lt;br /&gt;
$0004AE|long |Pointer to save area for exception processing        |sav_context&lt;br /&gt;
$0004B2|long |Pointer to buffer control block for GEMDOS data      |_bufl&lt;br /&gt;
$0004B6|long |Pointer to buffer control block for GEMDOS fat/dir   |_bufl&lt;br /&gt;
$0004BA|long |Counter for 200hz system clock                       |_hz_200&lt;br /&gt;
$0004BC|long |Pointer to default environment string                |the_env&lt;br /&gt;
$0004C2|long |Bit allocation for physical drives (bit 0=A, 1=B..)  |_drvbits&lt;br /&gt;
$0004C6|long |Pointer to 1024-byte disk buffer                     |_dskbufp&lt;br /&gt;
$0004CA|long |Pointer to autoexecute path                          |_autopath&lt;br /&gt;
$0004CE|long |Pointer to VBL routine #1                            |_vbl_lis&lt;br /&gt;
   :   |  :  |  :      :  :     :     :                            |    :&lt;br /&gt;
$0004EA|long |Pointer to VBL routine #8                            |_vbl_lis&lt;br /&gt;
$0004EE|word |Flag for screen -&amp;gt; printer dump                      |_dumpflg&lt;br /&gt;
$0004F0|word |Printer abort flag                                   |_prtabt&lt;br /&gt;
$0004F2|long |Pointer to start of OS                               |_sysbase&lt;br /&gt;
$0004F6|long |Global shell pointer                                 |_shell_p&lt;br /&gt;
$0004FA|long |Pointer to end of OS                                 |end_os&lt;br /&gt;
$0004FE|long |Pointer to entry point of OS                         |exec_os&lt;br /&gt;
$000502|long |Pointer to screen dump routine                       |scr_dump&lt;br /&gt;
$000506|long |Pointer to _lstostat()                               |prv_lsto&lt;br /&gt;
$00050A|long |Pointer to _lstout()                                 |prv_lst&lt;br /&gt;
$00050E|long |Pointer to _auxostat()                               |prv_auxo&lt;br /&gt;
$000512|long |Pointer to _auxout()                                 |prv_aux&lt;br /&gt;
$000516|long |If AHDI, pointer to pun_info                         |pun_ptr&lt;br /&gt;
$00051A|long |If $5555AAAA, reset                                  |memval3&lt;br /&gt;
$00051E|long |8 Pointers to input-status routines                  |xconstat&lt;br /&gt;
$00053E|long |8 Pointers to input routines                         |xconin&lt;br /&gt;
$00055E|long |8 Pointers to output-status routines                 |xcostat&lt;br /&gt;
$00057E|long |8 Pointers to output routines                        |xconout&lt;br /&gt;
$00059E|word |If not 0, then not 68000 - use long stack frames     |_longframe&lt;br /&gt;
$0005A0|long |Pointer to cookie jar                                |_p_cookies&lt;br /&gt;
$0005A4|long |Pointer to end of FastRam                            |ramtop&lt;br /&gt;
$0005A8|long |Validates ramtop if $1357BD13                        |ramvalid&lt;br /&gt;
$0005AC|long |Pointer to routine for system bell                   |bell_hook&lt;br /&gt;
$0005B0|long |Pointer to routine for system keyclick               |kcl_hook&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
&lt;br /&gt;
Address Size  Description                                 Bits used Read/Write&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############OS ROMs                                              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$E00000|byte |TOS 512k ROMs                                        |R&lt;br /&gt;
   :   |  :  | :   :    :                                          |:&lt;br /&gt;
$EFFFFF|byte |TOS 512k ROMs                                        |R&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ADSPEED Configuration registers                      ###########     &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$F00000|byte |Switch to 16 Mhz                                     |W&lt;br /&gt;
$F10000|byte |Switch to 8 Mhz                                      |W&lt;br /&gt;
$F20000|byte |Turn on high speed ROM option in 16 Mhz              |W&lt;br /&gt;
$F30000|byte |Turn off high speed ROM option                       |W&lt;br /&gt;
$F40000|byte |Unknown                                              |W&lt;br /&gt;
$F50000|byte |Turn off cache while in 16 Mhz                       |W&lt;br /&gt;
       |     |       &amp;gt;&amp;gt; Write 0 to an address to set it. &amp;lt;&amp;lt;        |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############IDE Controller (Falcon, ST-Book, IDE cards)          ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$F00000|word |Data Register                                        |R/W&lt;br /&gt;
       |     |            BIT 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0|&lt;br /&gt;
$F00002|word |Data Register                                        |R/W&lt;br /&gt;
       |     |            BIT 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0|&lt;br /&gt;
$F00005|byte |Error Register                    BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Bad block mark -----------------------' | | | | | | ||&lt;br /&gt;
       |     |Uncorrectable error --------------------' | | | | | ||&lt;br /&gt;
       |     |Media change -----------------------------' | | | | ||&lt;br /&gt;
       |     |ID-Field not found -------------------------' | | | ||&lt;br /&gt;
       |     |Media change requested -----------------------' | | ||&lt;br /&gt;
       |     |Command aborted --------------------------------' | ||&lt;br /&gt;
       |     |Track 0 not found --------------------------------' ||&lt;br /&gt;
       |     |DAM not found --------------------------------------'|&lt;br /&gt;
$F00005|byte |Write Precompensation                                |W&lt;br /&gt;
$F00009|byte |Sector Count Register                                |W&lt;br /&gt;
$F0000D|byte |Sector Number Register                               |W&lt;br /&gt;
$F00011|byte |Cylinder Low Register             BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
$F00015|byte |Cylinder High Register                        BIT 1 0|W&lt;br /&gt;
$F00019|byte |Drive Head Register               BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Sector size (512 bytes, fixed) -------+ + + | | | | ||&lt;br /&gt;
       |     |Drive (0 - Master, 1 - Slave) --------------' | | | ||&lt;br /&gt;
       |     |Head number ----------------------------------+ + + +|&lt;br /&gt;
$F0001D|byte |Status Register                   BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Drive busy with executing Command ----' | | | | | | ||&lt;br /&gt;
       |     |Drive Ready ----------------------------' | | | | | ||&lt;br /&gt;
       |     |Drive Write Fault ------------------------' | | | | ||&lt;br /&gt;
       |     |Drive Seek Complete ------------------------' | | | ||&lt;br /&gt;
       |     |Data Request ---------------------------------' | | ||&lt;br /&gt;
       |     |Corrected Data ---------------------------------' | ||&lt;br /&gt;
       |     |Index pulse --------------------------------------' ||&lt;br /&gt;
       |     |Error ----------------------------------------------'|&lt;br /&gt;
$F0001D|byte |Command Register                                     |W&lt;br /&gt;
$F00039|byte |Alternate Status Register                            |R&lt;br /&gt;
       |     |2nd status register, like 1st no deletion of the IRQ |                                                   |&lt;br /&gt;
$F00039|byte |Data Output Register                        BIT 2 1 .|W&lt;br /&gt;
       |     |Software Reset (1 - on)-------------------------+ |  |&lt;br /&gt;
       |     |Interrupt after end of Command (0 - on) ----------+  |&lt;br /&gt;
$F0003D|byte |Active address                      BIT 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Drive is writing (0 - on) --------------' | | | | | ||&lt;br /&gt;
       |     |Negated number of head number ------------+ + + + | ||&lt;br /&gt;
       |     |Slave Drive Select (0 - on) ----------------------' ||&lt;br /&gt;
       |     |Master Drive Select (0 - on) -----------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############OS ROMs                                              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FC0000|byte |TOS 192k ROMs                                        |R&lt;br /&gt;
   :   |  :  | :   :    :                                          |:&lt;br /&gt;
$FEFFFF|byte |TOS 192k ROMs                                        |R&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ST MMU Controller                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8001|byte |MMU memory configuration                  BIT 3 2 1 0|R/W&lt;br /&gt;
       |     |Bank 0                                        | | | ||&lt;br /&gt;
       |     |00 - 128k ------------------------------------+-+ | ||&lt;br /&gt;
       |     |01 - 512k ------------------------------------+-+ | ||&lt;br /&gt;
       |     |10 - 2m --------------------------------------+-+ | ||&lt;br /&gt;
       |     |11 - reserved --------------------------------+-' | ||&lt;br /&gt;
       |     |Bank 1                                            | ||&lt;br /&gt;
       |     |00 - 128k ----------------------------------------+-+|&lt;br /&gt;
       |     |01 - 512k ----------------------------------------+-+|&lt;br /&gt;
       |     |10 - 2m ------------------------------------------+-+|&lt;br /&gt;
       |     |11 - reserved ------------------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 Processor Control                          ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8007|byte |Falcon Bus Control                  BIT 6 5 . 3 2 . 0|R/W (F030)&lt;br /&gt;
       |     |RESET behavior -------------------------+ |   | |   ||&lt;br /&gt;
       |     |  0 = always cold start ----------------+ |   | |   ||&lt;br /&gt;
       |     |  1 = normal, &amp;quot;memvalid&amp;quot; is observed ---+ |   | |   ||&lt;br /&gt;
       |     |STe Bus Emulation ------------------------'   | |   ||&lt;br /&gt;
       |     |  0 = STE --------------------------------'   | |   ||&lt;br /&gt;
       |     |  1 = Falcon -----------------------------'   | |   ||&lt;br /&gt;
       |     |Blitter flag ---------------------------------' |   ||&lt;br /&gt;
       |     |  0 = BLiTTER On -----------------------------' |   ||&lt;br /&gt;
       |     |  1 = BLiTTER Off ----------------------------' |   ||&lt;br /&gt;
       |     |Blitter clock-----------------------------------'   ||&lt;br /&gt;
       |     |  0 - 8mhz, ------------------------------------'   ||&lt;br /&gt;
       |     |  1 - 16mhz ------------------------------------'   ||&lt;br /&gt;
       |     |68030 clock ----------------------------------------'|&lt;br /&gt;
       |     |  0 - 8mhz -----------------------------------------'|&lt;br /&gt;
       |     |  1 - 16mhz ----------------------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############SHIFTER Video Controller                             ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8201|byte |Video screen memory position (High byte)             |R/W&lt;br /&gt;
$FF8203|byte |Video screen memory position (Mid byte)              |R/W&lt;br /&gt;
$FF820D|byte |Video screen memory position (Low byte)              |R/W  (STe)&lt;br /&gt;
$FF8205|byte |Video address pointer (High byte)                    |R (R/W STe)&lt;br /&gt;
$FF8207|byte |Video address pointer (Mid byte)                     |R (R/W STe)&lt;br /&gt;
$FF8209|byte |Video address pointer (Low byte)                     |R (R/W STe)&lt;br /&gt;
$FF820E|word |Offset to next line                                  |R/W (F030)&lt;br /&gt;
$FF820F|byte |Width of a scanline (width in words-1)               |R/W  (STe)&lt;br /&gt;
$FF8210|word |Width of a scanline (width in words)                 |R/W (F030)&lt;br /&gt;
$FF8264|byte |Horizontal scroll register without prefetch (0-15)   |R/W  (STe)&lt;br /&gt;
$FF8265|byte |Horizontal scroll register with prefetch (0-15)      |R/W  (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF820A|byte |Video synchronization mode                    BIT 1 0|R/W&lt;br /&gt;
       |     |0 - 60hz, 1 - 50hz -------------------------------+ ||&lt;br /&gt;
       |     |0 - internal, 1 - external sync ------------------' ||      (TT)&lt;br /&gt;
       |     |0 - internal, 1 - external sync --------------------'|     (!TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |                                BIT 11111198 76543210|&lt;br /&gt;
       |     |                                    543210           |&lt;br /&gt;
       |     |                     ST color value .....RRr .GGr.BBb|&lt;br /&gt;
       |     |                    STe color value ....rRRR gGGGbBBB|&lt;br /&gt;
$FF8240|word |Video palette register 0              Lowercase = LSB|R/W&lt;br /&gt;
    :  |  :  |  :      :       :     :                             | :&lt;br /&gt;
$FF825E|word |Video palette register 15                            |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8260|byte |Shifter resolution                            BIT 1 0|R/W&lt;br /&gt;
       |     |00 320x200x4 bitplanes (16 colors) ---------------+-+|&lt;br /&gt;
       |     |01 640x200x2 bitplanes (4 colors) ----------------+-+|&lt;br /&gt;
       |     |10 640x400x1 bitplane  (1 colors) ----------------+-'|&lt;br /&gt;
$FF8262|word |TT Shifter resolution                   BIT 15 . . 12|R/W   (TT)&lt;br /&gt;
       |     |Sample/Hold mode ----------------------------'      ||&lt;br /&gt;
       |     |Hypermono mode -------------------------------------'|&lt;br /&gt;
       |     |Video Mode                                 BIT 10 9 8|&lt;br /&gt;
       |     |000  320x200x4 bitplanes (16 colors) -----------+-+-+|&lt;br /&gt;
       |     |001  640x200x2 bitplanes (4 colors) ------------+-+-+|&lt;br /&gt;
       |     |010  640x400x1 bitplane  (2 colors)(Duochrome) -+-+-+|&lt;br /&gt;
       |     |100  640x480x4 bitplanes (16 colors) -----------+-+-+|&lt;br /&gt;
       |     |110 1280x960x1 bitplane  (2 colors) ------------+-+-+|&lt;br /&gt;
       |     |111  320x480x8 bitplanes (256 colors) ----------+-+-'|&lt;br /&gt;
       |     |ST Palette Bank                           BIT 3 2 1 0|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF827E|word |STACY Display Driver                         BIT 10 9|R/W(STACY)&lt;br /&gt;
       |     |Backlight on/off ---------------------------------+ ||&lt;br /&gt;
       |     |Display on/off -------------------------------------+| &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |                                BIT 11111198 76543210|&lt;br /&gt;
       |     |                                    543210           |&lt;br /&gt;
       |     |                     TT color value ....RRRr GGGgBBBb|&lt;br /&gt;
$FF8400|word |TT Palette  0                         Lowercase = LSB|R/W   (TT)&lt;br /&gt;
    :  |  :  | :    :     :                                        | :      :&lt;br /&gt;
$FF85FE|word |TT Palette 255                                       |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 VIDEL Video Controller                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8006|byte |Monitor Type                      BIT 7 6 5 4 3 2 1 0|R   (F030)&lt;br /&gt;
       |     |Monitor Type (M0,M1) -----------------+-+ | | | | | ||&lt;br /&gt;
       |     |00 - Monochrome (SM124) --------------+-+ | | | | | ||&lt;br /&gt;
       |     |01 - RGB (SC1224) --------------------+-+ | | | | | ||&lt;br /&gt;
       |     |10 - VGA Color -----------------------+-+ | | | | | ||&lt;br /&gt;
       |     |11 - Television ----------------------+-+ | | | | | ||&lt;br /&gt;
       |     |ST-RAM size ------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  00 = 1MB -------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  01 = 4MB -------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  10 = 16MB ------------------------------+-+ | | | ||&lt;br /&gt;
       |     |ROM Wait Status ------------------------------+ + | ||&lt;br /&gt;
       |     |  00 = Reserved ------------------------------+ + | ||&lt;br /&gt;
       |     |  01 = 2 Wait (default) ----------------------+ + | ||&lt;br /&gt;
       |     |  10 = 1 Wait --------------------------------+ + | ||&lt;br /&gt;
       |     |  11 = 0 Wait --------------------------------+ + | ||&lt;br /&gt;
       |     |Video bus width ----------------------------------+ ||&lt;br /&gt;
       |     |  0 = 16 Bit,  -----------------------------------+ ||&lt;br /&gt;
       |     |  1 = 32 Bit (default) ---------------------------+ ||&lt;br /&gt;
       |     |RAM Wait Status ------------------------------------+|&lt;br /&gt;
       |     |  0 =  1 Wait (default) ----------------------------+|&lt;br /&gt;
       |     |  1 =  0 Wait --------------------------------------+|&lt;br /&gt;
$FF820E|word |Offset to next line                                  |R/W (F030)&lt;br /&gt;
$FF8210|word |VWRAP - Linewidth in words                           |R/W (F030)&lt;br /&gt;
$FF8266|word |SPSHIFT                    BIT 10 9 8 . 6 5 4 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |2-colour mode ------------------' | |   | | | | | | ||&lt;br /&gt;
       |     |Overlay mode ---------------------' |   | | | | | | ||&lt;br /&gt;
       |     |Truecolour mode --------------------'   | | | | | | ||&lt;br /&gt;
       |     |Use external Hsync (1 - on) ------------' | | | | | ||&lt;br /&gt;
       |     |Use external Vsync (1 - on) --------------' | | | | ||&lt;br /&gt;
       |     |8 Bitplane mode ----------------------------' | | | ||&lt;br /&gt;
       |     |Color Palette Bank from 256 colors (0-15) ----+-+-+-+|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |      Horizontal Control Registers          (BIT 9-0)|&lt;br /&gt;
$FF8280|word |HHC - Horizontal Hold Counter                        |R   (F030)&lt;br /&gt;
$FF8282|word |HHT - Horizontal Hold Timer                          |R/W (F030)&lt;br /&gt;
$FF8284|word |HBB - Horizontal Border Begin                        |R/W (F030)&lt;br /&gt;
$FF8286|word |HBE - Horizontal Border End                          |R/W (F030)&lt;br /&gt;
$FF8288|word |HDB - Horizontal Display Begin                       |R/W (F030)&lt;br /&gt;
$FF828A|word |HDE - Horizontal Display End                         |R/W (F030)&lt;br /&gt;
$FF828C|word |HSS - Horizontal SS                                  |R/W (F030)&lt;br /&gt;
$FF828E|word |HFS - Horizontal FS                                  |R/W (F030)&lt;br /&gt;
$FF8290|word |HEE - Horizontal EE                                  |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |      Vertical Control Registers           (BIT 10-0)| &lt;br /&gt;
$FF82A0|word |VFC - Vertcial Frequency Counter                     |R   (F030)&lt;br /&gt;
$FF82A2|word |VFT - Vertical Frequency Timer                       |R/W (F030)&lt;br /&gt;
$FF82A4|word |VBB - Vertical Border Begin      (count in 1/2 lines)|R/W (F030)&lt;br /&gt;
$FF82A6|word |VBE - Vertical Border End        (count in 1/2 lines)|R/W (F030)&lt;br /&gt;
$FF82A8|word |VDB - Vertical Display Begin                         |R/W (F030)&lt;br /&gt;
$FF82AA|word |VDE - Vertical Display End                           |R/W (F030)&lt;br /&gt;
$FF82AC|word |VSS - Vertical SS                                    |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FF82C0|word |Video Control (VCO)   (Super78 puts $182 here)       |R/W (F030)&lt;br /&gt;
       |     |                                BIT 8 7 6 5 . 3 2 1 0|&lt;br /&gt;
       |     |Hz base offset ---------------------' | | |   | | | ||&lt;br /&gt;
       |     |  0: 128 cycles --------------------' | | |   | | | ||&lt;br /&gt;
       |     |  (ST Low/Mid on RGB                  | | |   | | | ||&lt;br /&gt;
       |     |     and ST Hi on SM124)              | | |   | | | ||&lt;br /&gt;
       |     |  1:  64 cycles (all the others) ---' | | |   | | | ||&lt;br /&gt;
       |     |Videobus width -----------------------' | |   | | | ||&lt;br /&gt;
       |     |  0: 16 Bit-Videobus -----------------' | |   | | | ||&lt;br /&gt;
       |     |  1: 32 Bit-Videobus (Falcon) --------' | |   | | | ||&lt;br /&gt;
       |     |HSync-Impulse --------------------------' |   | | | ||&lt;br /&gt;
       |     |  0: negative HSync-Impulse (5V &amp;gt; 0V) --' |   | | | ||&lt;br /&gt;
       |     |  1: positive HSync-Impulse (0V &amp;gt; 5V) --' |   | | | ||&lt;br /&gt;
       |     |VSync-Impulse ----------------------------'   | | | ||&lt;br /&gt;
       |     |  0: negative VSync-Impulse (5V &amp;gt; 0V) ----'   | | | ||&lt;br /&gt;
       |     |  1: positive VSync-Impulse (0V &amp;gt; 5V) ----'   | | | ||&lt;br /&gt;
       |     |Half-line-HSyncs------------------------------' | | ||&lt;br /&gt;
       |     |  0: No Half-line-HSyncs ---------------------' | | ||&lt;br /&gt;
       |     |  1: 15 Half-line-HSyncs from start of -------' | | ||&lt;br /&gt;
       |     |Video base clock -------------------------------' | ||&lt;br /&gt;
       |     |  0: Video base clock 32 MHz -------------------' | ||&lt;br /&gt;
       |     |  1: Video base clock 25.175 MHz ---------------' | ||&lt;br /&gt;
       |     |Monitor Type (M0,M1 same as bit 7&amp;amp;6 in $FF0006) --+-+|&lt;br /&gt;
       |     |  00 - Monochrome (SM124) ------------------------+-+|&lt;br /&gt;
       |     |  01 - RGB (SC1224) ------------------------------+-+|&lt;br /&gt;
       |     |  10 - VGA Color ---------------------------------+-+|&lt;br /&gt;
       |     |  11 - Television --------------------------------+-+|&lt;br /&gt;
$FF82C2|word |VCO - Video Control                       BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |Pixel width ----------------------------------+-+ | ||&lt;br /&gt;
       |     |  00: 4 cycles/pixel -------------------------+-+ | ||&lt;br /&gt;
       |     |  01: 2 cycles/pixel -------------------------+-+ | ||&lt;br /&gt;
       |     |  10: 1 cycle/pixel  -------------------------+-+ | ||&lt;br /&gt;
       |     |  11: n/a            -------------------------+-+ | ||&lt;br /&gt;
       |     |Skip line (interlace) (1-on) ---------------------' ||&lt;br /&gt;
       |     |Double lines (1-on) --------------------------------'| &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DMA/WD1772 Disk controller                           ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8600|     |Reserved                                             |&lt;br /&gt;
$FF8602|     |Reserved                                             |&lt;br /&gt;
$FF8604|word |FDC access/sector count                              |R/W&lt;br /&gt;
$FF8606|word |DMA mode/status                             BIT 2 1 0|R&lt;br /&gt;
       |     |Condition of FDC DATA REQUEST signal -----------' | ||&lt;br /&gt;
       |     |0 - sector count null,1 - not null ---------------' ||&lt;br /&gt;
       |     |0 - no error, 1 - DMA error ------------------------'|&lt;br /&gt;
$FF8606|word |DMA mode/status                 BIT 8 7 6 . 4 3 2 1 .|W&lt;br /&gt;
       |     |0 - read FDC/HDC,1 - write ---------' | | | | | | |  |&lt;br /&gt;
       |     |0 - HDC access,1 - FDC access --------' | | | | | |  |&lt;br /&gt;
       |     |0 - DMA on,1 - no DMA ------------------' | | | | |  |&lt;br /&gt;
       |     |Reserved ---------------------------------' | | | |  |&lt;br /&gt;
       |     |0 - FDC reg,1 - sector count reg -----------' | | |  |&lt;br /&gt;
       |     |0 - FDC access,1 - HDC access ----------------' | |  |&lt;br /&gt;
       |     |0 - pin A1 low, 1 - pin A1 high ----------------' |  |&lt;br /&gt;
       |     |0 - pin A0 low, 1 - pin A0 high ------------------'  |&lt;br /&gt;
$FF8609|byte |DMA base and counter (High byte)                     |R/W&lt;br /&gt;
$FF860B|byte |DMA base and counter (Mid byte)                      |R/W&lt;br /&gt;
$FF860D|byte |DMA base and counter (Low byte)                      |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT-SCSI DMA Controller                               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8701|byte |DMA Address Pointer (Highest byte)                   |R/W   (TT)&lt;br /&gt;
$FF8703|byte |DMA Address Pointer (High byte)                      |R/W   (TT)&lt;br /&gt;
$FF8705|byte |DMA Address Pointer (Low byte)                       |R/W   (TT)&lt;br /&gt;
$FF8707|byte |DMA Address Pointer (Lowest byte)                    |R/W   (TT)&lt;br /&gt;
$FF8709|byte |DMA Byte Count (Highest byte)                        |R/W   (TT)&lt;br /&gt;
$FF870B|byte |DMA Byte Count (High byte)                           |R/W   (TT)&lt;br /&gt;
$FF870D|byte |DMA Byte Count (Low byte)                            |R/W   (TT)&lt;br /&gt;
$FF870F|byte |DMA Byte Count (Lowest byte)                         |R/W   (TT)&lt;br /&gt;
$FF8710|word |Residue Data Register (High Word)                    |R     (TT)&lt;br /&gt;
$FF8712|word |Residue Data Register (Low Word)                     |R     (TT)&lt;br /&gt;
$FF8715|byte |Control register                  BIT 7 6 . . . . 1 0|R/W   (TT)&lt;br /&gt;
       |     |Bus error ----------------------------' |         | ||&lt;br /&gt;
       |     |Byte count zero ------------------------'         | ||&lt;br /&gt;
       |     |Enable -------------------------------------------' ||&lt;br /&gt;
       |     |DMA Direction (1 - out to port) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT-SCSI Drive Controller NCR 5380                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8781|byte |Data register                                        |R/W   (TT)&lt;br /&gt;
$FF8783|byte |Init-Command Register                                |R/W   (TT)&lt;br /&gt;
$FF8785|byte |Mode Register                                        |R/W   (TT)&lt;br /&gt;
$FF8787|byte |Target-Command Register                              |R/W   (TT)&lt;br /&gt;
$FF8789|byte |ID Select/SCSI Control Register                      |R/W   (TT)&lt;br /&gt;
$FF878B|byte |Status Register                                      |R/W   (TT)&lt;br /&gt;
$FF878D|byte |Target Receive/Input Data                            |R/W   (TT)&lt;br /&gt;
$FF878F|byte |Initiate Receive/Reset                               |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############YM2149 Sound Chip                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8800|byte |Read data/Register select                            |R/W&lt;br /&gt;
       |     |0 Channel A Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |1 Channel A Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |2 Channel B Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |3 Channel B Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |4 Channel C Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |5 Channel C Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |6 Noise Freq                          BIT 5 4 3 2 1 0|&lt;br /&gt;
       |     |7 Mixer Control                   BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |  Port B IN/OUT (1=Output) -----------' | | | | | | ||&lt;br /&gt;
       |     |  Port A IN/OUT ------------------------' | | | | | ||&lt;br /&gt;
       |     |  Channel C Noise (1=Off) ----------------' | | | | ||&lt;br /&gt;
       |     |  Channel B Noise --------------------------' | | | ||&lt;br /&gt;
       |     |  Channel A Noise ----------------------------' | | ||&lt;br /&gt;
       |     |  Channel C Tone (0=On) ------------------------' | ||&lt;br /&gt;
       |     |  Channel B Tone ---------------------------------' ||&lt;br /&gt;
       |     |  Channel A Tone -----------------------------------'|&lt;br /&gt;
       |     |8 Channel A Amplitude Control           BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level (0=Fixed) -----------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |9 Channel B Amplitude Control           BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level ---------------------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |10 Channel C Amplitude Control          BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level ---------------------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |11 Envelope Period High           BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |12 Envelope Period Low            BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |13 Envelope Shape                         BIT 3 2 1 0|&lt;br /&gt;
       |     |  Continue -----------------------------------' | | ||&lt;br /&gt;
       |     |  Attack ---------------------------------------' | ||&lt;br /&gt;
       |     |  Alternate --------------------------------------' ||&lt;br /&gt;
       |     |  Hold ---------------------------------------------'|&lt;br /&gt;
       |     |   00xx - \____________________________________      |&lt;br /&gt;
       |     |   01xx - /|___________________________________      |&lt;br /&gt;
       |     |   1000 - \|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\      |&lt;br /&gt;
       |     |   1001 - \____________________________________      |&lt;br /&gt;
       |     |   1010 - \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\      |&lt;br /&gt;
       |     |   1011 - \|-----------------------------------      |&lt;br /&gt;
       |     |   1100 - /|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/      |&lt;br /&gt;
       |     |   1101 - /------------------------------------      |&lt;br /&gt;
       |     |   1110 - /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/      |&lt;br /&gt;
       |     |   1111 - /|___________________________________      |&lt;br /&gt;
       |     |14 Port A                         BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |  IDE Drive On/OFF -------------------+ | | | | | | ||    (F030)&lt;br /&gt;
       |     |  SCC A (0=LAN, 1=Serial2) -----------' | | | | | | ||      (TT)&lt;br /&gt;
       |     |  Monitor jack GPO pin -----------------+ | | | | | ||&lt;br /&gt;
       |     |  Internal Speaker On/Off --------------' | | | | | ||    (F030)&lt;br /&gt;
       |     |  Centronics strobe ----------------------' | | | | ||&lt;br /&gt;
       |     |  RS-232 DTR output ------------------------' | | | ||&lt;br /&gt;
       |     |  RS-232 RTS output --------------------------' | | ||&lt;br /&gt;
       |     |  Drive select 1 -------------------------------' | ||&lt;br /&gt;
       |     |  Drive select 0 ---------------------------------' ||&lt;br /&gt;
       |     |  Drive side select --------------------------------'|&lt;br /&gt;
       |     |15 Port B (Parallel port)                            |&lt;br /&gt;
$FF8802|byte |Write data                                           |W&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Note: PSG Registers are now fixed at these addresses.|&lt;br /&gt;
       |     |All other addresses are masked out on the Falcon. Any|&lt;br /&gt;
       |     |writes to the shadow registers $8804-$88FF will cause|&lt;br /&gt;
       |     |bus errors. Game/Demo coders beware!                 |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DMA Sound System                                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8900|byte |Buffer interrupts                         BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |TimerA-Int at end of record buffer -----------' | | ||&lt;br /&gt;
       |     |TimerA-Int at end of replay buffer -------------' | ||&lt;br /&gt;
       |     |MFP-15-Int (I7) at end of record buffer ----------' ||&lt;br /&gt;
       |     |MFP-15-Int (I7) at end of replay buffer ------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8901|byte |DMA Control Register              BIT 7 . 5 4 . . 1 0|R/W&lt;br /&gt;
       |     |1 - select record register -----------+   | |     | ||    (F030) &lt;br /&gt;
       |     |0 - select replay register -----------'   | |     | ||    (F030)&lt;br /&gt;
       |     |Loop record buffer -----------------------' |     | ||    (F030)&lt;br /&gt;
       |     |DMA Record on ------------------------------'     | ||    (F030)&lt;br /&gt;
       |     |Loop replay buffer -------------------------------' ||     (STe)&lt;br /&gt;
       |     |DMA Replay on --------------------------------------'|     (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8903|byte |Frame start address (high byte)                      |R/W  (STe)&lt;br /&gt;
$FF8905|byte |Frame start address (mid byte)                       |R/W  (STe)&lt;br /&gt;
$FF8907|byte |Frame start address (low byte)                       |R/W  (STe)&lt;br /&gt;
$FF8909|byte |Frame address counter (high byte)                    |R    (STe)&lt;br /&gt;
$FF890B|byte |Frame address counter (mid byte)                     |R    (STe)&lt;br /&gt;
$FF890D|byte |Frame address counter (low byte)                     |R    (STe)&lt;br /&gt;
$FF890F|byte |Frame end address (high byte)                        |R/W  (STe)&lt;br /&gt;
$FF8911|byte |Frame end address (mid byte)                         |R/W  (STe)&lt;br /&gt;
$FF8913|byte |Frame end address (low byte)                         |R/W  (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8920|byte |DMA Track Control                     BIT 5 4 . . 1 0|R/W (F030)&lt;br /&gt;
       |     |00 - Set DAC to Track 0 ------------------+-+     | ||&lt;br /&gt;
       |     |01 - Set DAC to Track 1 ------------------+-+     | ||&lt;br /&gt;
       |     |10 - Set DAC to Track 2 ------------------+-+     | ||&lt;br /&gt;
       |     |11 - Set DAC to Track 3 ------------------+-'     | ||&lt;br /&gt;
       |     |00 - Play 1 Track --------------------------------+-+|&lt;br /&gt;
       |     |01 - Play 2 Tracks -------------------------------+-+|&lt;br /&gt;
       |     |10 - Play 3 Tracks -------------------------------+-+|&lt;br /&gt;
       |     |11 - Play 4 Tracks -------------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8921|byte |Sound mode control                BIT 7 6 . . . . 1 0|R/W  (STe)&lt;br /&gt;
       |     |0 - Stereo, 1 - Mono -----------------' |         | ||&lt;br /&gt;
       |     |0 - 8bit -------------------------------+         | ||&lt;br /&gt;
       |     |1 - 16bit (F030 only) ------------------'         | ||    (F030)&lt;br /&gt;
       |     |Frequency control bits                            | ||&lt;br /&gt;
       |     |00 - Off (F030 only) -----------------------------+-+|    (F030)&lt;br /&gt;
       |     |00 - 6258hz frequency (STe only) -----------------+-+|&lt;br /&gt;
       |     |01 - 12517hz frequency ---------------------------+-+|&lt;br /&gt;
       |     |10 - 25033hz frequency ---------------------------+-+|&lt;br /&gt;
       |     |11 - 50066hz frequency ---------------------------+-'|&lt;br /&gt;
       |     |Samples are always signed. In stereo mode, data is   |&lt;br /&gt;
       |     |arranged in pairs with high pair the left channel,low|&lt;br /&gt;
       |     |pair right channel. Sample length MUST be even in    |&lt;br /&gt;
       |     |either mono or stereo mode.                          |&lt;br /&gt;
       |     |Example: 8 bit Stereo : LRLRLRLRLRLRLRLR             |&lt;br /&gt;
       |     |        16 bit Stereo : LLRRLLRRLLRRLLRR (F030)      |&lt;br /&gt;
       |     |2 track 16 bit stereo : LLRRllrrLLRRllrr (F030)      |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############STe Microwire Controller (STe/TT only!)              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8922|byte |Microwire data register                              |R/W  (Mwr)&lt;br /&gt;
$FF8924|byte |Microwire mask register                              |R/W  (Mwr)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |!! ATTENTION !! Microwire is now obsolete! It is not |&lt;br /&gt;
       |     |present in the Falcon030 and is unlikely to be in any|&lt;br /&gt;
       |     |future machines. You have been warned.               | &lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Volume/tone controller commands         (Address %10)|&lt;br /&gt;
       |     |Master Volume                           10 011 DDDDDD|&lt;br /&gt;
       |     |Left Volume                             10 101 .DDDDD|&lt;br /&gt;
       |     |Right Volume                            10 100 .DDDDD|&lt;br /&gt;
       |     |Treble                                  10 010 ..DDDD|&lt;br /&gt;
       |     |Bass                                    10 001 ..DDDD|&lt;br /&gt;
       |     |Mixer                                   10 000 ....DD|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Volume/tone controller values                        |&lt;br /&gt;
       |     |Master Volume     : 0-40   (0 = -80dB, 40 = 0dB)     |&lt;br /&gt;
       |     |Left/Right Volume : 0-20   (0 = -40dB, 20 = 0dB)     |&lt;br /&gt;
       |     |Treble/bass       : 0-12   (0 = -12dB, 12 = +12dB)   |&lt;br /&gt;
       |     |Mixer             : 0-3:                             |&lt;br /&gt;
       |     |                         0 = DMA only                |&lt;br /&gt;
       |     |                         1 = DMA + YM2149            |&lt;br /&gt;
       |     |                         2 = DMA only                |&lt;br /&gt;
       |     |                         3 = reserved                |&lt;br /&gt;
       |     |        (there is no DMA + (YM2149 - 12dB) mode!)    |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Procedure: Set mask register to $7ff. Read data      |&lt;br /&gt;
       |     |register and save original value.Write data register.|&lt;br /&gt;
       |     |Compare data register with original value, repeat    |&lt;br /&gt;
       |     |until data register returns to original value to     |&lt;br /&gt;
       |     |ensure data has been sent over the interface.        |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Interrupts: Timer A can be set to interrupt at the   |&lt;br /&gt;
       |     |end of a frame. Alternatively, the GPI7 (MFP mono    |&lt;br /&gt;
       |     |detect) can be used to generate interrupts thereby   |&lt;br /&gt;
       |     |freeing up Timer A. In this case, the active edge    |&lt;br /&gt;
       |     |$FFFA03 must be set by or-ing the active edge of     |&lt;br /&gt;
       |     |$FFFA03 with the contents of $FF8260:                |&lt;br /&gt;
       |     |$FF8260 - 2 (mono)     or.b  #$80 with edge          |&lt;br /&gt;
       |     |$FF8260 - 0,1 (colour) and.b #$7F with edge          |&lt;br /&gt;
       |     |This will generate an interrupt at the START of a    |&lt;br /&gt;
       |     |frame, instead of at the end as with Timer A. To     |&lt;br /&gt;
       |     |generate an interrupt at the END of a frame, simply  |&lt;br /&gt;
       |     |reverse the edge values.                             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 DMA/DSP Controllers                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8930|word |Crossbar Source Controller                           |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: A/D Convertor                 BIT 15 14 13 12|&lt;br /&gt;
       |     |1 - Connect, 0 - disconnect ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock (Don't use) -----------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: External Input                BIT 11 10  9  8|&lt;br /&gt;
       |     |0 - DSP IN, 1 - All others ----------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: DSP-XMIT                      BIT  7  6  5  4|&lt;br /&gt;
       |     |0 - Tristate and disconnect DSP -----------+  |  |  ||&lt;br /&gt;
       |     |    (Only for external SSI use)            |  |  |  ||&lt;br /&gt;
       |     |1 - Connect DSP to multiplexer ------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: DMA-PLAYBACK                  BIT  3  2  1  0|&lt;br /&gt;
       |     |0 - Handshaking on, dest DSP-REC ----------+  |  |  ||&lt;br /&gt;
       |     |1 - Destination is not DSP-REC ------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8932|word |Crossbar Destination Controller                      |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: D/A Convertor            BIT 15 14 13 12|&lt;br /&gt;
       |     |1 - Connect, 0 - Disconnect ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: External Output          BIT 11 10  9  8|&lt;br /&gt;
       |     |0 - DSP out, 1 - All others ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: DSP-RECORD               BIT  7  6  5  4|&lt;br /&gt;
       |     |0 - Tristate and disconnect DSP -----------+  |  |  ||&lt;br /&gt;
       |     |    (Only for external SSI use)            |  |  |  ||&lt;br /&gt;
       |     |1 - Connect DSP to multiplexer ------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: DMA-RECORD               BIT  3  2  1  0|&lt;br /&gt;
       |     |0 - Handshaking on, src DSP-XMIT ----------+  |  |  ||&lt;br /&gt;
       |     |1 - Source is not DSP-XMIT ----------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8934|byte |Frequency Divider External Clock          BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0000 - STe-Compatible mode                           |&lt;br /&gt;
       |     |0001 - 1111  Divide by 256 and then number           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8935|byte |Frequency Divider Internal Sync           BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0000 - STe-Compatible mode   1000 - 10927Hz*         |&lt;br /&gt;
       |     |0001 - 49170Hz               1001 -  9834Hz          |&lt;br /&gt;
       |     |0010 - 32780Hz               1010 -  8940Hz*         |&lt;br /&gt;
       |     |0011 - 24585Hz               1011 -  8195Hz          |&lt;br /&gt;
       |     |0100 - 19668Hz               1100 -  7565Hz*         |&lt;br /&gt;
       |     |0101 - 16390Hz               1101 -  7024Hz*         |&lt;br /&gt;
       |     |0110 - 14049Hz*              1110 -  6556Hz*         |&lt;br /&gt;
       |     |0111 - 12292Hz               1111 -  6146Hz*         |&lt;br /&gt;
       |     |               * - Invalid for CODEC                 |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8936|byte |Record Tracks Select                          BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |00 - Record 1 Track ------------------------------+-+|&lt;br /&gt;
       |     |01 - Record 2 Tracks -----------------------------+-+|&lt;br /&gt;
       |     |10 - Record 3 Tracks -----------------------------+-+|&lt;br /&gt;
       |     |11 - Record 4 Tracks -----------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8937|byte |CODEC Input Source from 16bit adder           BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |Source: Multiplexer ------------------------------' ||&lt;br /&gt;
       |     |Source: A/D Convertor ------------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8938|byte |CODEC ADC-Input for L+R Channel               BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |0 - Microphone, 1 - Soundchip                     L R|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8939|byte |Channel amplification                   BIT LLLL RRRR|R/W (F030)&lt;br /&gt;
       |     |          Amplification is in +1.5dB steps           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF893A|word |Channel attenuation                     BIT LLLL RRRR|R/W (F030)&lt;br /&gt;
       |     |           Attenuation is in -1.5dB steps            |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF893C|byte |CODEC-Status                                  BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |Left Channel Overflow ----------------------------' ||&lt;br /&gt;
       |     |Right Channel Overflow -----------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8941|byte |GPx Data Direction                          BIT 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0 - In, 1 - Out --------------------------------+-+-'|&lt;br /&gt;
       |     | For the GP0-GP2 pins on the DSP connector           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8943|byte |GPx Data Port                               BIT 2 1 0|R/W (F030)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT Clock Chip (MC146818A @ 32.768 khz)               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8961|byte |Register select                                      |W     (TT)&lt;br /&gt;
       |     |0 - Current Second                                   |&lt;br /&gt;
       |     |1 - Second for alarm                                 |&lt;br /&gt;
       |     |2 - Current Minute                                   |&lt;br /&gt;
       |     |3 - Minute for alarm                                 |&lt;br /&gt;
       |     |4 - Current Hour                                     |&lt;br /&gt;
       |     |5 - Hour for alarm                                   |&lt;br /&gt;
       |     |6 - Day of week (1=Sunday, 2=Monday, 3=...)          |&lt;br /&gt;
       |     |7 - Day of Month                                     |&lt;br /&gt;
       |     |8 - Month                                            |&lt;br /&gt;
       |     |9 - Year (example : '93' for this year)              |&lt;br /&gt;
       |     |A                                               BIT 7|&lt;br /&gt;
       |     |    If set, update time in progress ----------------'|&lt;br /&gt;
       |     |    don't read time &amp;amp; date registers                 |&lt;br /&gt;
       |     |B                                 BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |1 = Write Protect time &amp;amp; date --------'   | |   | | ||&lt;br /&gt;
       |     |1 = Enable alarm interrupt ---------------' |   | | ||&lt;br /&gt;
       |     |1 = Interrupt after time updated -----------'   | | ||&lt;br /&gt;
       |     |1 = Format Binary, 0 = Format BCD --------------' | ||&lt;br /&gt;
       |     |1 = 24hr format, 0 = 12hr format -----------------' ||&lt;br /&gt;
       |     |1 = Summer hours, 0 = Winter hours -----------------'|&lt;br /&gt;
       |     |C                                           BIT 6 5 4|&lt;br /&gt;
       |     | ??? -------------------------------------------' | ||&lt;br /&gt;
       |     |1 = alarm is ringing -----------------------------' ||&lt;br /&gt;
       |     |1 = date is updated --------------------------------'|&lt;br /&gt;
       |     |On interrupt, read this register to determine source.|&lt;br /&gt;
       |     |D                                               BIT 7|&lt;br /&gt;
       |     |1 = Battery dead -----------------------------------'|&lt;br /&gt;
$FF8963|byte |Register data                                        |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Blitter (Not present on TT!)                         ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8A00|word |Halftone-RAM, Word 0                                 |R/W (Blit)&lt;br /&gt;
    :  |  :  |    :     :     :  :                                 | :     :&lt;br /&gt;
$FF8A1E|word |Halftone-RAM, Word 15                                |R/W (Blit)&lt;br /&gt;
$FF8A20|word |Source X Increment                      (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A22|word |Source Y Increment                      (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A24|long |Source Address Register                 (24 bit,even)|R/W (Blit)&lt;br /&gt;
$FF8A28|word |Endmask 1                     (First write of a line)|R/W (Blit)&lt;br /&gt;
$FF8A2A|word |Endmask 2                     (All other line writes)|R/W (Blit)&lt;br /&gt;
$FF8A2C|word |Endmask 3                      (Last write of a line)|R/W (Blit)&lt;br /&gt;
$FF8A2E|word |Destination X Increment                 (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A30|word |Destination Y Increment                 (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A32|long |Destination Address Register            (24 bit,even)|R/W (Blit)&lt;br /&gt;
$FF8A36|word |Words per Line in Bit-Block                 (0=65536)|R/W (Blit)&lt;br /&gt;
$FF8A38|word |Lines per Bit-Block                         (0=65536)|R/W (Blit)&lt;br /&gt;
$FF8A3A|byte |Halftone Operation Register                   BIT 1 0|R/W (Blit)&lt;br /&gt;
       |     |00 - All ones ------------------------------------+-+|&lt;br /&gt;
       |     |01 - Halftone ------------------------------------+-+|&lt;br /&gt;
       |     |10 - Source --------------------------------------+-+|&lt;br /&gt;
       |     |11 - Source AND Halftone -------------------------+-'|&lt;br /&gt;
$FF8A3B|byte |Logical Operation Register                BIT 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |0000 All zeros -------------------------------+-+-+-+|&lt;br /&gt;
       |     |0001 Source AND destination ------------------+-+-+-+|&lt;br /&gt;
       |     |0010 Source AND NOT destination --------------+-+-+-+|&lt;br /&gt;
       |     |0011 Source ----------------------------------+-+-+-+|&lt;br /&gt;
       |     |0100 NOT source AND destination --------------+-+-+-+|&lt;br /&gt;
       |     |0101 Destination -----------------------------+-+-+-+|&lt;br /&gt;
       |     |0110 Source XOR destination ------------------+-+-+-+|&lt;br /&gt;
       |     |0111 Source OR destination -------------------+-+-+-+|&lt;br /&gt;
       |     |1000 NOT source AND NOT destination ----------+-+-+-+|&lt;br /&gt;
       |     |1001 NOT source XOR destination --------------+-+-+-+|&lt;br /&gt;
       |     |1010 NOT destination -------------------------+-+-+-+|&lt;br /&gt;
       |     |1011 Source OR NOT destination ---------------+-+-+-+|&lt;br /&gt;
       |     |1100 NOT source ------------------------------+-+-+-+|&lt;br /&gt;
       |     |1101 NOT source OR destination ---------------+-+-+-+|&lt;br /&gt;
       |     |1110 NOT source OR NOT destination -----------+-+-+-+|&lt;br /&gt;
       |     |1111 All ones --------------------------------+-+-+-'|&lt;br /&gt;
$FF8A3C|byte |Line Number Register              BIT 7 6 5 . 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |BUSY ---------------------------------' | |   | | | ||&lt;br /&gt;
       |     |0 - Share bus, 1 - Hog bus -------------' |   | | | ||&lt;br /&gt;
       |     |SMUDGE mode ------------------------------'   | | | ||&lt;br /&gt;
       |     |Halftone line number -------------------------+-+-+-'|&lt;br /&gt;
$FF8A3D|byte |SKEW Register                     BIT 7 6 . . 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |Force eXtra Source Read --------------' |     | | | ||&lt;br /&gt;
       |     |No Final Source Read -------------------'     | | | ||&lt;br /&gt;
       |     |Source skew ----------------------------------+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############SCC-DMA (TT Only!)                                   ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8C01|byte |DMA Address Pointer (Highest Byte)                   |R/W   (TT)&lt;br /&gt;
$FF8C03|byte |DMA Address Pointer (High Byte)                      |R/W   (TT)&lt;br /&gt;
$FF8C05|byte |DMA Address Pointer (Low Byte)                       |R/W   (TT)&lt;br /&gt;
$FF8C07|byte |DMA Address Pointer (Lowest Byte)                    |R/W   (TT)&lt;br /&gt;
$FF8C09|byte |DMA Byte Count (Highest-Byte)                        |R/W   (TT)&lt;br /&gt;
$FF8C0B|byte |DMA Byte Count (High-Byte)                           |R/W   (TT)&lt;br /&gt;
$FF8C0D|byte |DMA Byte Count (Low-Byte)                            |R/W   (TT)&lt;br /&gt;
$FF8C0F|byte |DMA Byte Count (Lowest-Byte)                         |R/W   (TT)&lt;br /&gt;
$FF8C10|word |Residue Data Register (High-Word)                    |R     (TT)&lt;br /&gt;
$FF8C12|word |Residue Data register (Low-Word)                     |R     (TT)&lt;br /&gt;
$FF8C15|byte |Control register                  BIT 7 6 . . . . 1 0|R/W   (TT)&lt;br /&gt;
       |     |Bus error ----------------------------' |         | ||&lt;br /&gt;
       |     |Byte count zero ------------------------'         | ||&lt;br /&gt;
       |     |Enable -------------------------------------------' ||&lt;br /&gt;
       |     |DMA Direction (1 - out to port) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Zilog 8530 SCC (MSTe/TT/F030)                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8C81|byte |Channel A - Control Register                         |R/W  (SCC)&lt;br /&gt;
$FF8C83|byte |Channel A - Data Register                            |R/W  (SCC)&lt;br /&gt;
$FF8C85|byte |Channel B - Control Register                         |R/W  (SCC)&lt;br /&gt;
$FF8C87|byte |Channel B - Data Register                            |R/W  (SCC)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############VME Bus System Control Unit (MSTe/TT)                ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E01|byte |VME sys_mask                      BIT 7 6 5 4 . 2 1 .|R/W  (VME)&lt;br /&gt;
$FF8E03|byte |VME sys_stat                      BIT 7 6 5 4 . 2 1 .|R    (VME)&lt;br /&gt;
       |     |_SYSFAIL in VMEBUS -------------------' | | |   | |  |program&lt;br /&gt;
       |     |MFP ------------------------------------' | |   | |  |autovec&lt;br /&gt;
       |     |SCC --------------------------------------' |   | |  |autovec&lt;br /&gt;
       |     |VSYNC --------------------------------------'   | |  |program&lt;br /&gt;
       |     |HSYNC ------------------------------------------' |  |program&lt;br /&gt;
       |     |System software INT ------------------------------'  |program&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Reading sys_mask resets pending int-bits in sys_stat,|&lt;br /&gt;
       |     |so read sys_stat first.                              |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E05|byte |VME sys_int                                     BIT 0|R/W  (VME)&lt;br /&gt;
       |     |Setting bit 0 to 1 forces an INT of level 1. INT must|Vector $64&lt;br /&gt;
       |     |be enabled in sys_mask to use it.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E0D|byte |VME vme_mask                      BIT 7 6 5 4 3 2 1 .|R/W  (VME)&lt;br /&gt;
$FF8E0F|byte |VME vme_stat                      BIT 7 6 5 4 3 2 1 .|R    (VME)&lt;br /&gt;
       |     |_IRQ7 from VMEBUS --------------------' | | | | | |  |program&lt;br /&gt;
       |     |_IRQ6 from VMEBUS/MFP ------------------' | | | | |  |program&lt;br /&gt;
       |     |_IRQ5 from VMEBUS/SCC --------------------' | | | |  |program&lt;br /&gt;
       |     |_IRQ4 from VMEBUS --------------------------' | | |  |program&lt;br /&gt;
       |     |_IRQ3 from VMEBUS/soft -----------------------' | |  |prog/autov&lt;br /&gt;
       |     |_IRQ2 from VMEBUS ------------------------------' |  |program&lt;br /&gt;
       |     |_IRQ1 from VMEBUS --------------------------------'  |program&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |MFP-int and SCC-int are hardwired to the VME-BUS-ints|&lt;br /&gt;
       |     |(or'ed). Reading vme_mask resets pending int-bits in |&lt;br /&gt;
       |     |vme_stat, so read vme_stat first.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E07|byte |VME vme_int                                     BIT 0|R/W   (TT)&lt;br /&gt;
       |     |Setting bit 0 to 1 forces an INT of level 3. INT must|Vector $6C&lt;br /&gt;
       |     |be enabled in vme_mask to use it.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E09|byte |General purpose register - does nothing              |R/W   (TT)&lt;br /&gt;
$FF8E0B|byte |General purpose register - does nothing              |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Mega STe Cache/Processor Control                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E21|byte |Mega STe Cache/Processor Control           BIT 15-1 0|R/W (MSTe)&lt;br /&gt;
       |     |Cache enable lines (set all to 1 to enable) -----'  ||&lt;br /&gt;
       |     |CPU Speed (0 - 8mhz, 1 - 16mhz) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DIP Switches (MSTe/TT)                               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF9200|byte |DIP Switches (MSTe/TT)           BIT 7 6 5 4 3 2 1 0|R (MSTe/TT)&lt;br /&gt;
       |     |Sound DMA active ---------------------' |           ||&lt;br /&gt;
       |     |Floppy Drive 1.44 HD active ------------'           ||&lt;br /&gt;
       |     |CaTTamaran installed -------------------------------'|&lt;br /&gt;
       |     |                                                     |&lt;br /&gt;
       |     |That register is mirrored by the OS in &amp;quot;_SWI&amp;quot; Cookie |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############STe/F030 Extended Joystick/Lightpen Ports            ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF9200|word |Fire buttons 1-4                          Bit 3 2 1 0|R    (Ext)&lt;br /&gt;
       |     |Pause/F0 -------------------------------------' | | ||&lt;br /&gt;
       |     |F1 ---------------------------------------------' | ||&lt;br /&gt;
       |     |F2 -----------------------------------------------' ||&lt;br /&gt;
       |     |Option/F3 ------------------------------------------'|&lt;br /&gt;
$FF9202|word |Read Mask (0 - pin read)                             |W    (Ext)&lt;br /&gt;
$FF9202|word |Joystick Inputs                   BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
       |     |Controller 1 pin 4 -------------------' | | | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 3 ---------------------' | | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 2 -----------------------' | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 1 -------------------------' | | | ||&lt;br /&gt;
       |     |Controller 0 pin 4 ---------------------------' | | ||&lt;br /&gt;
       |     |Controller 0 pin 3/Paddle 1 Trigger ------------' | ||&lt;br /&gt;
       |     |Controller 0 pin 2/Paddle 0 Trigger --------------' ||&lt;br /&gt;
       |     |Controller 0 pin 1 ---------------------------------'|&lt;br /&gt;
       |     |                            BIT 15 14 13 12 11 10 9 8|&lt;br /&gt;
       |     |Controller 1 pin 14 ------------'   |  |  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 13 ----------------'  |  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 12 -------------------'  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 11 ----------------------'  |  | | ||&lt;br /&gt;
       |     |Controller 0 pin 14 -------------------------'  | | ||&lt;br /&gt;
       |     |Controller 0 pin 13 ----------------------------' | ||&lt;br /&gt;
       |     |Controller 0 pin 12 ------------------------------' ||&lt;br /&gt;
       |     |Controller 0 pin 11 --------------------------------'|&lt;br /&gt;
$FF9210|word |X Paddle 0 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9212|word |Y Paddle 0 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9214|word |X Paddle 1 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9216|word |Y Paddle 1 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9220|word |Lightpen X-Position           BIT 9 8 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9222|word |Lightpen Y-Position           BIT 9 8 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon VIDEL Palette Registers                       ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |              BIT 33222222 22221111 11111198 76543210|&lt;br /&gt;
       |     |                  10987654 32109876 543210           |&lt;br /&gt;
       |     |                  RRRRRr.. GGGGGg.. ........ BBBBBb..|&lt;br /&gt;
$FF9800|long |Palette Register  0                   Lowercase = LSB|R/W (F030)&lt;br /&gt;
   :   |  :  |   :        :     :                                  | :     :&lt;br /&gt;
$FF98FC|long |Palette Register 255                                 |R/W (F030)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon DSP Host Interface                            ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFA200|byte |Interrupt Ctrl Register           BIT 7 6 5 4 3 . 1 0|R/W (F030)&lt;br /&gt;
X:$FFE9|     |INIT bit -----------------------------' | | | |   | ||&lt;br /&gt;
       |     |00 - Interupt mode (DMA off) -----------+-+ | |   | ||&lt;br /&gt;
       |     |01 - 24-bit DMA mode -------------------+-+ | |   | ||&lt;br /&gt;
       |     |10 - 16-bit DMA mode -------------------+-+ | |   | ||&lt;br /&gt;
       |     |11 - 8-bit DMA mode --------------------+-' | |   | ||&lt;br /&gt;
       |     |Host Flag 1 --------------------------------' |   | ||&lt;br /&gt;
       |     |Host Flag 0 ----------------------------------'   | ||&lt;br /&gt;
       |     |         Host mode Data transfers:                | ||&lt;br /&gt;
       |     |              Interrupt mode                      | ||&lt;br /&gt;
       |     |00 - No interrupts (Polling) ---------------------+-+|&lt;br /&gt;
       |     |01 - RXDF Request (Interrupt) --------------------+-+|&lt;br /&gt;
       |     |10 - TXDE Request (Interrupt) --------------------+-+|&lt;br /&gt;
       |     |11 - RXDF and TXDE Request (Interrupts) ----------+-+|&lt;br /&gt;
       |     |                 DMA Mode                         | ||&lt;br /&gt;
       |     |00 - No DMA --------------------------------------+-+|&lt;br /&gt;
       |     |01 - DSP to Host Request (RX) --------------------+-+|&lt;br /&gt;
       |     |10 - Host to DSP Request (TX) --------------------+-+|&lt;br /&gt;
       |     |11 - Undefined (Illegal) -------------------------+-'|&lt;br /&gt;
$FFA201|byte |Command Vector Register           BIT 7 . . 4 3 2 1 0|R/W (F030)&lt;br /&gt;
X:$FFE9|     |Host Command Bit (Handshake)----------'     | | | | ||&lt;br /&gt;
       |     |Host Vector (0-31) -------------------------+-+-+-+-'|&lt;br /&gt;
$FFA202|byte |Interrupt Status Reg              BIT 7 6 . 4 3 2 1 0|R   (F030)&lt;br /&gt;
X:$FFE8|     |ISR Host Request ---------------------' |   | | | | ||&lt;br /&gt;
       |     |ISR DMA Status -------------------------'   | | | | ||&lt;br /&gt;
       |     |Host Flag 3 --------------------------------' | | | ||&lt;br /&gt;
       |     |Host Flag 2 ----------------------------------' | | ||&lt;br /&gt;
       |     |ISR Transmitter Ready (TRDY) -------------------' | ||&lt;br /&gt;
       |     |ISR Transmit Data Register Empty (TXDE) ----------' ||&lt;br /&gt;
       |     |ISR Receive Data Register Full (RXDF) --------------'|&lt;br /&gt;
$FFA203|byte |Interrupt Vector Register                            |R/W (F030)&lt;br /&gt;
$FFA204|byte |Unused                                               |    (F030)&lt;br /&gt;
$FFA205|byte |DSP-Word High                                        |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
$FFA206|byte |DSP-Word Mid                                         |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
$FFA207|byte |DSP-Word Low                                         |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############MFP 68901 - Multi Function Peripheral Chip           ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |     MFP Master Clock is 2,457,600 cycles/second     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA01|byte |Parallel Port Data Register                          |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA03|byte |Active Edge Register              BIT 7 6 5 4 . 2 1 0|R/W&lt;br /&gt;
       |     |Monochrome monitor detect ------------' | | | | | | ||&lt;br /&gt;
       |     |RS-232 Ring indicator ------------------' | | | | | ||&lt;br /&gt;
       |     |FDC/HDC interrupt ------------------------' | | | | ||&lt;br /&gt;
       |     |Keyboard/MIDI interrupt --------------------' | | | ||&lt;br /&gt;
       |     |Reserved -------------------------------------' | | ||&lt;br /&gt;
       |     |RS-232 CTS (input) -----------------------------' | ||&lt;br /&gt;
       |     |RS-232 DCD (input) -------------------------------' ||&lt;br /&gt;
       |     |Centronics busy ------------------------------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |       When port bits are used for input only:       |&lt;br /&gt;
       |     |0 - Interrupt on pin high-low conversion             |&lt;br /&gt;
       |     |1 - Interrupt on pin low-high conversion             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA05|byte |Data Direction                    BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |0 - In, 1 - Out ----------------------+-+-+-+-+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA07|byte |Interrupt Enable A                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0B|byte |Interrupt Pending A               BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0F|byte |Interrupt In-service A            BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA13|byte |Interrupt Mask A                  BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$13C GPI7-Monochrome Detect ----------' | | | | | | ||&lt;br /&gt;
       |     |$138   RS-232 Ring Detector ------------' | | | | | ||&lt;br /&gt;
       |     |$134 (STe sound)    Timer A --------------' | | | | ||&lt;br /&gt;
       |     |$130    Receive buffer full ----------------' | | | ||&lt;br /&gt;
       |     |$12C          Receive error ------------------' | | ||&lt;br /&gt;
       |     |$128      Send buffer empty --------------------' | ||&lt;br /&gt;
       |     |$124             Send error ----------------------' ||&lt;br /&gt;
       |     |$120 (HBL)          Timer B ------------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA09|byte |Interrupt Enable B                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0D|byte |Interrupt Pending B               BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA11|byte |Interrupt In-service B            BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA15|byte |Interrupt Mask B                  BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$11C                FDC/HDC ----------' | | | | | | ||&lt;br /&gt;
       |     |$118          Keyboard/MIDI ------------' | | | | | ||&lt;br /&gt;
       |     |$114 (200hz clock)  Timer C --------------' | | | | ||&lt;br /&gt;
       |     |$110 (USART timer)  Timer D ----------------' | | | ||&lt;br /&gt;
       |     |$10C           Blitter done ------------------' | | ||&lt;br /&gt;
       |     |$108     RS-232 CTS - input --------------------' | ||&lt;br /&gt;
       |     |$104     RS-232 DCD - input ----------------------' ||&lt;br /&gt;
       |     |$100        Centronics Busy ------------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA17|byte |Vector Register                   BIT 7 6 5 4 3 . . .|R/W&lt;br /&gt;
       |     |Vector Base Offset -------------------+-+-+-' |      |&lt;br /&gt;
       |     |1 - *Software End-interrupt mode -------------+      |&lt;br /&gt;
       |     |0 - Automatic End-interrupt mode -------------'      |&lt;br /&gt;
       |     |* - Default operating mode                           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA19|byte |Timer A Control                         BIT 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA1B|byte |Timer B Control                         BIT 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Reset (force output low) -------------------' | | | ||&lt;br /&gt;
       |     +----------------------------------------------+-+-+-++&lt;br /&gt;
       |     |0000 - Timer stop, no function executed              |&lt;br /&gt;
       |     |0001 - Delay mode, divide by 4                       |&lt;br /&gt;
       |     |0010 -     :           :     10                      |&lt;br /&gt;
       |     |0011 -     :           :     16                      |&lt;br /&gt;
       |     |0100 -     :           :     50                      |&lt;br /&gt;
       |     |0101 -     :           :     64                      |&lt;br /&gt;
       |     |0110 -     :           :     100                     |&lt;br /&gt;
       |     |0111 - Delay mode, divide by 200                     |&lt;br /&gt;
       |     |1000 - Event count mode                              |&lt;br /&gt;
       |     |1xxx - Pulse extension mode, divide as above         |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA1F|byte |Timer A Data                                         |R/W&lt;br /&gt;
$FFFA21|byte |Timer B Data                                         |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA1D|byte |Timer C &amp;amp; D Control                 BIT 6 5 4 . 2 1 0|R/W&lt;br /&gt;
       |     |                                        Timer   Timer|&lt;br /&gt;
       |     |                                          C       D  |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |000 - Timer stop                                     |&lt;br /&gt;
       |     |001 - Delay mode, divide by 4                        |&lt;br /&gt;
       |     |010 -      :           :    10                       |&lt;br /&gt;
       |     |011 -      :           :    16                       |&lt;br /&gt;
       |     |100 -      :           :    50                       |&lt;br /&gt;
       |     |101 -      :           :    64                       |&lt;br /&gt;
       |     |110 -      :           :    100                      |&lt;br /&gt;
       |     |111 - Delay mode, divide by 200                      |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA23|byte |Timer C Data                                         |R/W&lt;br /&gt;
$FFFA25|byte |Timer D Data                                         |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA27|byte |Sync Character                                       |R/W&lt;br /&gt;
$FFFA29|byte |USART Control                     BIT 7 6 5 4 3 2 1 .|R/W&lt;br /&gt;
       |     |Clock divide (1 - div by 16) ---------' | | | | | | ||&lt;br /&gt;
       |     |Word Length 00 - 8 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            01 - 7 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            10 - 6 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            11 - 5 bits ----------------+-' | | | | ||&lt;br /&gt;
       |     |Bits Stop Start Format                      | | | | ||&lt;br /&gt;
       |     |00     0    0   Synchronous ----------------+-+ | | ||&lt;br /&gt;
       |     |01     1    1   Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |10     1    1.5 Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |11     1    2   Asynchronous ---------------+-' | | ||&lt;br /&gt;
       |     |Parity (0 - ignore parity bit) -----------------' | ||&lt;br /&gt;
       |     |Parity (0 - odd parity,1 - even) -----------------' ||&lt;br /&gt;
       |     |Unused ---------------------------------------------'|&lt;br /&gt;
$FFFA2B|byte |Receiver Status                   BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Buffer full --------------------------' | | | | | | ||&lt;br /&gt;
       |     |Overrun error --------------------------' | | | | | ||&lt;br /&gt;
       |     |Parity error -----------------------------' | | | | ||&lt;br /&gt;
       |     |Frame error --------------------------------' | | | ||&lt;br /&gt;
       |     |Found - Search/Break detected ----------------' | | ||&lt;br /&gt;
       |     |Match/Character in progress --------------------' | ||&lt;br /&gt;
       |     |Synchronous strip enable -------------------------' ||&lt;br /&gt;
       |     |Receiver enable bit --------------------------------'|&lt;br /&gt;
$FFFA2D|byte |Transmitter Status                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Buffer empty -------------------------' | | | | | | ||&lt;br /&gt;
       |     |Underrun error -------------------------' | | | | | ||&lt;br /&gt;
       |     |Auto turnaround --------------------------' | | | | ||&lt;br /&gt;
       |     |End of transmission ------------------------' | | | ||&lt;br /&gt;
       |     |Break ----------------------------------------' | | ||&lt;br /&gt;
       |     |High bit ---------------------------------------' | ||&lt;br /&gt;
       |     |Low bit ------------------------------------------' ||&lt;br /&gt;
       |     |Transmitter enable ---------------------------------'|&lt;br /&gt;
$FFFA2F|byte |USART data                                           |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Floating Point Coprocessor (CIR Interface in MSTe)   ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA40|word |FP_Stat    Response-Register                         |??? (MSTe)&lt;br /&gt;
$FFFA42|word |FP_Ctl     Control-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA44|word |FP_Save    Save-Register                             |??? (MSTe)&lt;br /&gt;
$FFFA46|word |FP_Restor  Restore-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA48|word |                                                     |??? (MSTe)&lt;br /&gt;
$FFFA4A|word |FP_Cmd     Command-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA4E|word |FP_Ccr     Condition-Code-Register                   |??? (MSTe)&lt;br /&gt;
$FFFA50|long |FP_Op      Operand-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA54|word |FP_Selct   Register Select                           |??? (MSTe)&lt;br /&gt;
$FFFA58|long |FP_Iadr    Instruction Address                       |??? (MSTe)&lt;br /&gt;
$FFFA5C|long |           Operand Address                           |??? (MSTe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############MFP 68901 #2 (MFP2) - TT Only                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA81|byte |Parallel Port Data Register                          |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA83|byte |Active Edge Register              BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |       When port bits are used for input only:       |&lt;br /&gt;
       |     |0 - Interrupt on pin high-low conversion             |&lt;br /&gt;
       |     |1 - Interrupt on pin low-high conversion             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA85|byte |Data Direction                    BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |0 - In, 1 - Out ----------------------+-+-+-+-+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA87|byte |Interrupt Enable A                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8B|byte |Interrupt Pending A               BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8F|byte |Interrupt In-service A            BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA93|byte |Interrupt Mask A                  BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$17C         TT-SCSI NCR5380 ---------' | | | | | | ||&lt;br /&gt;
       |     |$178         RTC (MC146818A) -----------' | | | | | ||&lt;br /&gt;
       |     |$174                 Timer A -------------' | | | | ||&lt;br /&gt;
       |     |$170     Receive buffer full ---------------' | | | ||&lt;br /&gt;
       |     |$16C           Receive error -----------------' | | ||&lt;br /&gt;
       |     |$168       Send buffer empty -------------------' | ||&lt;br /&gt;
       |     |$164              Send error ---------------------' ||&lt;br /&gt;
       |     |$160                 Timer B -----------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA89|byte |Interrupt Enable B                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8D|byte |Interrupt Pending B               BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA91|byte |Interrupt In-service B            BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA95|byte |Interrupt Mask B                  BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$15C     SCSI DMA Controller ---------' | | | | | | ||&lt;br /&gt;
       |     |$158       (Reserved) GPIP 4 -----------' | | | | | ||&lt;br /&gt;
       |     |$154                 Timer C -------------' | | | | ||&lt;br /&gt;
       |     |$150                 Timer D ---------------' | | | ||&lt;br /&gt;
       |     |$14C    SCC B Ring Indicator -----------------' | | ||&lt;br /&gt;
       |     |$148      SCC DMA Controller -------------------' | ||&lt;br /&gt;
       |     |$144 General Purpose Input 1 ---------------------' ||&lt;br /&gt;
       |     |$140 General Purpose Input 0 -----------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA97|byte |Vector Register                   BIT 7 6 5 4 3 . . .|R/W   (TT)&lt;br /&gt;
       |     |Vector Base Offset -------------------+-+-+-' |      |&lt;br /&gt;
       |     |1 - *Software End-interrupt mode -------------+      |&lt;br /&gt;
       |     |0 - Automatic End-interrupt mode -------------'      |&lt;br /&gt;
       |     |* - Default operating mode                           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA99|byte |Timer A Control                         BIT 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA9B|byte |Timer B Control                         BIT 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Reset (force output low) -------------------' | | | ||&lt;br /&gt;
       |     +----------------------------------------------+-+-+-++&lt;br /&gt;
       |     |0000 - Timer stop, no function executed              |&lt;br /&gt;
       |     |0001 - Delay mode, divide by 4                       |&lt;br /&gt;
       |     |0010 -     :           :     10                      |&lt;br /&gt;
       |     |0011 -     :           :     16                      |&lt;br /&gt;
       |     |0100 -     :           :     50                      |&lt;br /&gt;
       |     |0101 -     :           :     64                      |&lt;br /&gt;
       |     |0110 -     :           :     100                     |&lt;br /&gt;
       |     |0111 - Delay mode, divide by 200                     |&lt;br /&gt;
       |     |1000 - Event count mode                              |&lt;br /&gt;
       |     |1xxx - Pulse extension mode, divide as above         |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA9F|byte |Timer A Data                                         |R/W   (TT)&lt;br /&gt;
$FFFAA1|byte |Timer B Data                                         |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA9D|byte |Timer C &amp;amp; D Control                 BIT 6 5 4 . 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |                                        Timer   Timer|&lt;br /&gt;
       |     |                                          C       D  |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |000 - Timer stop                                     |&lt;br /&gt;
       |     |001 - Delay mode, divide by 4                        |&lt;br /&gt;
       |     |010 -      :           :    10                       |&lt;br /&gt;
       |     |011 -      :           :    16                       |&lt;br /&gt;
       |     |100 -      :           :    50                       |&lt;br /&gt;
       |     |101 -      :           :    64                       |&lt;br /&gt;
       |     |110 -      :           :    100                      |&lt;br /&gt;
       |     |111 - Delay mode, divide by 200                      |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFAA3|byte |Timer C Data                                         |R/W   (TT)&lt;br /&gt;
$FFFAA5|byte |Timer D Data                                         |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFAA7|byte |Sync Character                                       |R/W   (TT)&lt;br /&gt;
$FFFAA9|byte |USART Control                     BIT 7 6 5 4 3 2 1 .|R/W   (TT)&lt;br /&gt;
       |     |Clock divide (1 - div by 16) ---------' | | | | | | ||&lt;br /&gt;
       |     |Word Length 00 - 8 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            01 - 7 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            10 - 6 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            11 - 5 bits ----------------+-' | | | | ||&lt;br /&gt;
       |     |Bits Stop Start Format                      | | | | ||&lt;br /&gt;
       |     |00     0    0   Synchronous ----------------+-+ | | ||&lt;br /&gt;
       |     |01     1    1   Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |10     1    1.5 Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |11     1    2   Asynchronous ---------------+-' | | ||&lt;br /&gt;
       |     |Parity (0 - ignore parity bit) -----------------' | ||&lt;br /&gt;
       |     |Parity (0 - odd parity,1 - even) -----------------' ||&lt;br /&gt;
       |     |Unused ---------------------------------------------'|&lt;br /&gt;
$FFFAAB|byte |Receiver Status                   BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Buffer full --------------------------' | | | | | | ||&lt;br /&gt;
       |     |Overrun error --------------------------' | | | | | ||&lt;br /&gt;
       |     |Parity error -----------------------------' | | | | ||&lt;br /&gt;
       |     |Frame error --------------------------------' | | | ||&lt;br /&gt;
       |     |Found - Search/Break detected ----------------' | | ||&lt;br /&gt;
       |     |Match/Character in progress --------------------' | ||&lt;br /&gt;
       |     |Synchronous strip enable -------------------------' ||&lt;br /&gt;
       |     |Receiver enable bit --------------------------------'|&lt;br /&gt;
$FFFAAD|byte |Transmitter Status                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Buffer empty -------------------------' | | | | | | ||&lt;br /&gt;
       |     |Underrun error -------------------------' | | | | | ||&lt;br /&gt;
       |     |Auto turnaround --------------------------' | | | | ||&lt;br /&gt;
       |     |End of transmission ------------------------' | | | ||&lt;br /&gt;
       |     |Break ----------------------------------------' | | ||&lt;br /&gt;
       |     |High bit ---------------------------------------' | ||&lt;br /&gt;
       |     |Low bit ------------------------------------------' ||&lt;br /&gt;
       |     |Transmitter enable ---------------------------------'|&lt;br /&gt;
$FFFAAF|byte |USART data                                           |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############6850 ACIA I/O Chips                                  ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFC00|byte |Keyboard ACIA control             BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Rx Int enable (1 - enable) -----------' | | | | | | ||&lt;br /&gt;
       |     |Tx Interrupts                           | | | | | | ||&lt;br /&gt;
       |     |00 - RTS low, Tx int disable -----------+-+ | | | | ||&lt;br /&gt;
       |     |01 - RTS low, Tx int enable ------------+-+ | | | | ||&lt;br /&gt;
       |     |10 - RTS high, Tx int disable ----------+-+ | | | | ||&lt;br /&gt;
       |     |11 - RTS low, Tx int disable,           | | | | | | ||&lt;br /&gt;
       |     |     Tx a break onto data out ----------+-' | | | | ||&lt;br /&gt;
       |     |Settings                                    | | | | ||&lt;br /&gt;
       |     |000 - 7 bit, even, 2 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |001 - 7 bit, odd, 2 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |010 - 7 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |011 - 7 bit, odd, 1 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |100 - 8 bit, 2 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |101 - 8 bit, 1 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |110 - 8 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |111 - 8 bit, odd, 1 stop bit ---------------+-+-' | ||&lt;br /&gt;
       |     |Clock divide                                      | ||&lt;br /&gt;
       |     |00 - Normal --------------------------------------+-+|&lt;br /&gt;
       |     |01 - Div by 16 -----------------------------------+-+|&lt;br /&gt;
       |     |10 - Div by 64 -----------------------------------+-+|&lt;br /&gt;
       |     |11 - Master reset --------------------------------+-'|&lt;br /&gt;
$FFFC00|byte |Keyboard ACIA control             BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Interrupt request --------------------' | | | | | | ||&lt;br /&gt;
       |     |Parity error ---------------------------' | | | | | ||&lt;br /&gt;
       |     |Rx overrun -------------------------------' | | | | ||&lt;br /&gt;
       |     |Framing error ------------------------------' | | | ||&lt;br /&gt;
       |     |CTS ------------------------------------------' | | ||&lt;br /&gt;
       |     |DCD --------------------------------------------' | ||&lt;br /&gt;
       |     |Tx data register empty ---------------------------' ||&lt;br /&gt;
       |     |Rx data register full ------------------------------'|&lt;br /&gt;
$FFFC02|byte |Keyboard ACIA data                                   |R/W&lt;br /&gt;
$FFFC04|byte |MIDI ACIA control                 BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Rx Int enable (1 - enable) -----------' | | | | | | ||&lt;br /&gt;
       |     |Tx Interrupts                           | | | | | | ||&lt;br /&gt;
       |     |00 - RTS low, Tx int disable -----------+-+ | | | | ||&lt;br /&gt;
       |     |01 - RTS low, Tx int enable ------------+-+ | | | | ||&lt;br /&gt;
       |     |10 - RTS high, Tx int disable ----------+-+ | | | | ||&lt;br /&gt;
       |     |11 - RTS low, Tx int disable,           | | | | | | ||&lt;br /&gt;
       |     |     Tx a break onto data out ----------+-' | | | | ||&lt;br /&gt;
       |     |Settings                                    | | | | ||&lt;br /&gt;
       |     |000 - 7 bit, even, 2 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |001 - 7 bit, odd, 2 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |010 - 7 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |011 - 7 bit, odd, 1 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |100 - 8 bit, 2 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |101 - 8 bit, 1 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |110 - 8 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |111 - 8 bit, odd, 1 stop bit ---------------+-+-' | ||&lt;br /&gt;
       |     |Clock divide                                      | ||&lt;br /&gt;
       |     |00 - Normal --------------------------------------+-+|&lt;br /&gt;
       |     |01 - Div by 16 -----------------------------------+-+|&lt;br /&gt;
       |     |10 - Div by 64 -----------------------------------+-+|&lt;br /&gt;
       |     |11 - Master reset --------------------------------+-'|&lt;br /&gt;
$FFFC04|byte |MIDI ACIA control                 BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Interrupt request --------------------' | | | | | | ||&lt;br /&gt;
       |     |Parity error ---------------------------' | | | | | ||&lt;br /&gt;
       |     |Rx overrun -------------------------------' | | | | ||&lt;br /&gt;
       |     |Framing error ------------------------------' | | | ||&lt;br /&gt;
       |     |CTS ------------------------------------------' | | ||&lt;br /&gt;
       |     |DCD --------------------------------------------' | ||&lt;br /&gt;
       |     |Tx data register empty ---------------------------' ||&lt;br /&gt;
       |     |Rx data register full ------------------------------'|&lt;br /&gt;
$FFFC06|byte |MIDI ACIA data                                       |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Realtime Clock                                       ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFC21|byte |S_Units                                              |???&lt;br /&gt;
$FFFC23|byte |S_Tens                                               |???&lt;br /&gt;
$FFFC25|byte |M_Units                                              |???&lt;br /&gt;
$FFFC27|byte |M_Tens                                               |???&lt;br /&gt;
$FFFC29|byte |H_Units                                              |???&lt;br /&gt;
$FFFC2B|byte |H_Tens                                               |???&lt;br /&gt;
$FFFC2D|byte |Weekday                                              |???&lt;br /&gt;
$FFFC2F|byte |Day_Units                                            |???&lt;br /&gt;
$FFFC31|byte |Day_Tens                                             |???&lt;br /&gt;
$FFFC33|byte |Mon_Units                                            |???&lt;br /&gt;
$FFFC35|byte |Mon_Tens                                             |???&lt;br /&gt;
$FFFC37|byte |Yr_Units                                             |???&lt;br /&gt;
$FFFC39|byte |Yr_Tens                                              |???&lt;br /&gt;
$FFFC3B|byte |Cl_Mod                                               |???&lt;br /&gt;
$FFFC3D|byte |Cl_Test                                              |???&lt;br /&gt;
$FFFC3F|byte |Cl_Reset                                             |???&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ROM                                                  ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FA0000|     |                                                     |&lt;br /&gt;
    :  |     |128K ROM expansion cartridge port                    |R&lt;br /&gt;
$FBFFFF|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FC0000|     |                                                     |&lt;br /&gt;
    :  |     |192K System ROM                                      |R&lt;br /&gt;
$FEFFFF|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
&lt;br /&gt;
                               Atari 32 bit Memory Map&lt;br /&gt;
&lt;br /&gt;
Addresses           Description&lt;br /&gt;
-------------------+----------------------------------------------------------&lt;br /&gt;
$00000000-$00DFFFFF|ST RAM&lt;br /&gt;
$00E00000-$00EFFFFF|512k TOS ROMs&lt;br /&gt;
$00F00000-$00F9FFFF|Reserved I/O Space&lt;br /&gt;
$00FA0000-$00FBFFFF|128k ROM cartridge expansion port&lt;br /&gt;
$00FC0000-$00FEFFFF|192k System ROM&lt;br /&gt;
$00FF0000-$00FF7FFF|Reserved I/O Space&lt;br /&gt;
$00FF8000-$00FFFFFF|ST/TT I/O&lt;br /&gt;
$01000000-$013FFFFF|TT Fast Ram&lt;br /&gt;
$01400000-$FDFFFFFF|Reserved&lt;br /&gt;
$FE000000-$FEFFFFFF|VME A24/D16&lt;br /&gt;
$FEFF0000-$FEFFFFFF|VME A16/D16&lt;br /&gt;
$FF000000-$FFFFFFFF|ST 24 bit compatible shadow&lt;br /&gt;
$FFD000xx-$FFD000xx|Set FastRAM refresh rate and generate a bus error&lt;br /&gt;
-------------------+----------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
                                   Cookie Jar&lt;br /&gt;
                            Atari &amp;quot;Official&amp;quot; Cookies&lt;br /&gt;
Cookie  Description&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_CPU   | CPU Type                                          Bit 7 6 5 4 3 2 1 0&lt;br /&gt;
       | Processor type is represented in decimal in the lowest byte.&lt;br /&gt;
       | (0 - 68000, 40 - 68040)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_VDO   | Video Type                                                  BIT 17 16&lt;br /&gt;
       | Shifter Type                                                     |  |&lt;br /&gt;
       | 00 - ST ---------------------------------------------------------+--+&lt;br /&gt;
       | 01 - STe --------------------------------------------------------+--+&lt;br /&gt;
       | 10 - TT ---------------------------------------------------------+--+&lt;br /&gt;
       | 11 - Falcon030 --------------------------------------------------+--'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FDC   | Floppy Drive Controller                              BIT 25 24 . 23-0&lt;br /&gt;
       | Floppy Format                                             |  |      |&lt;br /&gt;
       | 00 - DD (Normal floppy interface) ------------------------+--+      |&lt;br /&gt;
       | 01 - HD (1.44 MB with 3.5&amp;quot;) ------------------------------+--+      |&lt;br /&gt;
       | 10 - ED (2.88 MB with 3.5&amp;quot;) ------------------------------+--'      |&lt;br /&gt;
       | Controller ID                                                       |&lt;br /&gt;
       | 0 - No information available                                        |&lt;br /&gt;
       | 'ATC' - Fully compatible interface built in a way that -------------+&lt;br /&gt;
       |         behaves like part of the system.                            |&lt;br /&gt;
       | 'DP1' - &amp;quot;DreamPark Development&amp;quot;, all ID's beginning with -----------'&lt;br /&gt;
       |         &amp;quot;DP&amp;quot; are reserved for Dreampark.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FLK   | File Locking&lt;br /&gt;
       | If present, GEMDOS supports file locking. Value represents version&lt;br /&gt;
       | number of the expansion.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_NET   | Network Type&lt;br /&gt;
       | If present, there is GEMDOS network support. Points to 2 longs:&lt;br /&gt;
       | The first is the ID of the producer, and the second is the version&lt;br /&gt;
       | number.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SLM   | SLM Driver&lt;br /&gt;
       | Diablo-driver for the SLM laser printer. Value points to a&lt;br /&gt;
       | non-documented structure.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_INF   | .INF Patch&lt;br /&gt;
       | When present, STEFIX (patch program for TOS 1.06) is active.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SND   | Sound Hardware                                        BIT 5 4 3 2 1 0&lt;br /&gt;
       | CodeC (??) -----------------------------------------------' | | | | |&lt;br /&gt;
       | Connection Matrix ------------------------------------------' | | | |&lt;br /&gt;
       | DSP56001 -----------------------------------------------------' | | |&lt;br /&gt;
       | 16 Bit DMA Sound -----------------------------------------------' | |&lt;br /&gt;
       | 8 Bit DMA Sound --------------------------------------------------' |&lt;br /&gt;
       | YM2149 -------------------------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_MCH   | Machine Type                                                BIT 17 16&lt;br /&gt;
       | 00 - ST/Mega ST -------------------------------------------------+--+&lt;br /&gt;
       | 01 - STe &amp;amp; Compatible Machines (See Below) ----------------------+--+&lt;br /&gt;
       | 10 - TT ---------------------------------------------------------+--+&lt;br /&gt;
       | 11 - Falcon030 --------------------------------------------------+--'&lt;br /&gt;
       | STe &amp;amp; Compatible Machines                             BIT 5 4 3 2 1 0&lt;br /&gt;
       | 00000 - STe ----------------------------------------------+-+-+-+-+-+&lt;br /&gt;
       | 00001 - ST Book ------------------------------------------+-+-+-+-+-+&lt;br /&gt;
       | 10000 - Mega STe -----------------------------------------+-+-+-+-+-'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SWI   | Configuration Switches&lt;br /&gt;
       | State of configuration switches (MSTe/TT only)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FRB   | Fast Ram Buffer&lt;br /&gt;
       | (TT specific) 64k buffer for ACSI DMA&lt;br /&gt;
       | 0 - no buffers assigned    Not 0 - address of FastRam buffer&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FPU   | FPU Type&lt;br /&gt;
       | Software FPU                                              BIT 3 2 1 0&lt;br /&gt;
       | 68040's internal FPU -----------------------------------------' | | |&lt;br /&gt;
       | 01 - 6888x present ---------------------------------------------+-+ |&lt;br /&gt;
       | 10 - 68881 for sure --------------------------------------------+-+ |&lt;br /&gt;
       | 11 - 68882 for sure --------------------------------------------+-' |&lt;br /&gt;
       | SFP004 present -----------------------------------------------------'&lt;br /&gt;
       | Hardware FPU                                            BIT 11 10 9 8&lt;br /&gt;
       | 68040's internal FPU ----------------------------------------'  | | |&lt;br /&gt;
       | 01 - 6888x present ---------------------------------------------+-+ |&lt;br /&gt;
       | 10 - 68881 for sure --------------------------------------------+-+ |&lt;br /&gt;
       | 11 - 68882 for sure --------------------------------------------+-' |&lt;br /&gt;
       | SFP004 present -----------------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_OOL   | PoolFix&lt;br /&gt;
       | Value corresponds to PoolFix version&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_AKP   | Keyboard/Language Configuration&lt;br /&gt;
       | Keyboard Configuration                                       Bit 15-8&lt;br /&gt;
       | 1 - German   5 - Italian -------------------------------------------+&lt;br /&gt;
       | 2 - French   7 - Swiss French --------------------------------------+&lt;br /&gt;
       | 4 - Spanish  8 - Swiss German --------------------------------------+&lt;br /&gt;
       | All others - English -----------------------------------------------'&lt;br /&gt;
       | Language Configuration                                        BIT 7-0&lt;br /&gt;
       | 1 - German   5 - Italian -------------------------------------------+&lt;br /&gt;
       | 2 - French   7 - Swiss French --------------------------------------+&lt;br /&gt;
       | 4 - Spanish  8 - Swiss German --------------------------------------+&lt;br /&gt;
       | All others - English -----------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_IDT   | International Date/Time Format&lt;br /&gt;
       | Time Format                                                    BIT 12&lt;br /&gt;
       | 0 - AM/PM, 1 - 24 hours --------------------------------------------+&lt;br /&gt;
       | Date Format                                                   BIT 9 8&lt;br /&gt;
       | 00 - MMDDYY ------------------------------------------------------+-+&lt;br /&gt;
       | 01 - DDMMYY ------------------------------------------------------+-+&lt;br /&gt;
       | 10 - YYMMDD ------------------------------------------------------+-+&lt;br /&gt;
       | 11 - YYDDMM ------------------------------------------------------+-'&lt;br /&gt;
       | Separator for date                                            BIT 7-0&lt;br /&gt;
       | ASCII Value (i.e. &amp;quot;.&amp;quot; or &amp;quot;/&amp;quot;) --------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
MiNT   | MiNT&lt;br /&gt;
       | Present if MiNT/MultiTOS is active. Value represents the version&lt;br /&gt;
       | number of the MiNT kernel in hex (0x104 = 1.04)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Programming]]&lt;br /&gt;
[[Category:Memory Address]]&lt;/div&gt;</summary>
		<author><name>Cyprian</name></author>
	</entry>
	<entry>
		<id>https://www.temlib.org/AtariForumWiki/index.php?title=Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&amp;diff=22856</id>
		<title>Atari ST/STe/MSTe/TT/F030 Hardware Register Listing</title>
		<link rel="alternate" type="text/html" href="https://www.temlib.org/AtariForumWiki/index.php?title=Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&amp;diff=22856"/>
		<updated>2023-06-09T14:47:14Z</updated>

		<summary type="html">&lt;p&gt;Cyprian: some updates/corrections known in 2023&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Based on:&lt;br /&gt;
* https://temlib.org/AtariForumWiki/index.php/Atari_ST/STe/MSTe/TT/F030_Hardware_Register_Listing&lt;br /&gt;
* https://github.com/Number0000009/atari-wiki/blob/master/Atari%20ST%20STe%20MSTe%20TT%20F030%20Hardware%20Register%20Listing.txt&lt;br /&gt;
* https://mikro.naprvyraz.sk/docs/Memory%20Maps/FALREG.TXT&lt;br /&gt;
* https://mikro.naprvyraz.sk/docs/mikro/videl.html&lt;br /&gt;
* http://cd.textfiles.com/atarilibrary/atari_cd10/DISKS/AC10DISK/ATOZBOOK/M.TXT&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.---------------------------------------------------.&lt;br /&gt;
|Atari ST/STe/MSTe/TT/F030 Hardware Register Listing|&lt;br /&gt;
`---------------------------------------------------'&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Address Description                                                      Space&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########CPU Reset Vectors                                               ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000000|Reset : Initial SSP                                             |SP&lt;br /&gt;
$000004|Reset : Initial PC                                              |SP&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########CPU Exception Vectors                                           ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000008|Bus Error                                                       |SD&lt;br /&gt;
$00000C|Address Error                                                   |SD&lt;br /&gt;
$000010|Illegal Instruction                                             |SD&lt;br /&gt;
$000014|Zero Divide                                                     |SD&lt;br /&gt;
$000018|CHK, CHK2 Instruction                                           |SD&lt;br /&gt;
$00001C|cpTRAPcc, TRAPcc, TRAPV                                         |SD&lt;br /&gt;
$000020|Privilege Violation                                             |SD&lt;br /&gt;
$000024|Trace                                                           |SD&lt;br /&gt;
$000028|Line 1010 Emulator (LineA)                                      |SD&lt;br /&gt;
$00002C|Line 1111 Emulator (LineF)                                      |SD&lt;br /&gt;
$000030|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
$000034|Coprocessor Protocol Violation (68030)                          |SD&lt;br /&gt;
$000038|Format Error (68010)                                            |SD&lt;br /&gt;
$00003C|Uninitialized Interrupt Vector                                  |SD&lt;br /&gt;
$000040|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
   :   |   :             :                                              | :&lt;br /&gt;
$00005F|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
$000060|Spurious Interrupt (Bus error during interrupt)                 |SD                                          &lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Auto-Vector Interrupts                                          ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000064|Level 1 Int Autovector (TT VME)                                 |SD&lt;br /&gt;
$000068|Level 2 Int Autovector (HBL)                                    |SD&lt;br /&gt;
$00006C|Level 3 Int Autovector (TT VME)                                 |SD&lt;br /&gt;
$000070|Level 4 Int Autovector (VBL)                                    |SD&lt;br /&gt;
$000074|Level 5 Int Autovector                                          |SD&lt;br /&gt;
$000078|Level 6 Int Autovector (MFP)                                    |SD&lt;br /&gt;
$00007C|Level 7 Int Autovector                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Trap Instruction Vectors (Trap #n = Vector number + 32 + n)     ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000080|Trap #0                                                         |SD&lt;br /&gt;
$000084|Trap #1 (GemDOS)                                                |SD&lt;br /&gt;
$000088|Trap #2 (AES/VDI)                                               |SD&lt;br /&gt;
$00008C|Trap #3                                                         |SD&lt;br /&gt;
$000090|Trap #4                                                         |SD&lt;br /&gt;
$000094|Trap #5                                                         |SD&lt;br /&gt;
$000098|Trap #6                                                         |SD&lt;br /&gt;
$00009C|Trap #7                                                         |SD&lt;br /&gt;
$0000A0|Trap #8                                                         |SD&lt;br /&gt;
$0000A4|Trap #9                                                         |SD&lt;br /&gt;
$0000A8|Trap #10                                                        |SD&lt;br /&gt;
$0000AC|Trap #11                                                        |SD&lt;br /&gt;
$0000B0|Trap #12                                                        |&lt;br /&gt;
$0000B4|Trap #13 (BIOS)                                                 |SD&lt;br /&gt;
$0000B8|Trap #14 (XBIOS)                                                |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Math Coprocessor Vectors (68881/68882/Internal)                 ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000C0|FFCP Branch or Set on Unordered Condition                       |SD&lt;br /&gt;
$0000C4|FFCP Inexact Result                                             |SD&lt;br /&gt;
$0000C8|FFCP Divide by Zero                                             |SD&lt;br /&gt;
$0000CC|FFCP Underflow                                                  |SD&lt;br /&gt;
$0000D0|FFCP Operand Error                                              |SD&lt;br /&gt;
$0000D4|FFCP Overflow                                                   |SD&lt;br /&gt;
$0000D8|FFCP Signaling NAN                                              |SD&lt;br /&gt;
$0000DC|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########PMMU Coprocessor Vectors (68851/Internal)                       ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000E0|MMU Configuration Error                                         |SD&lt;br /&gt;
$0000E4|MC68851, not used by MC68030                                    |SD&lt;br /&gt;
$0000E8|MC68851, not used by MC68030                                    |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########Miscellaneous Vectors                                           ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$0000EC|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
   :   |   :             :                                              | :&lt;br /&gt;
$0000FF|(Unassigned, Reserved)                                          |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
########User Assigned Interrupt Vectors                                 ######&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
$000100|ST-MFP-0 - Centronics busy                                      |SD&lt;br /&gt;
$000104|ST-MFP-1 - RS-232 DCD                                           |SD&lt;br /&gt;
$000108|ST-MFP-2 - RS-232 CTS                                           |SD&lt;br /&gt;
$00010C|ST-MFP-3 - Blitter done                                         |SD&lt;br /&gt;
$000110|ST-MFP-4 - Timer D (USART timer)                                |SD&lt;br /&gt;
$000114|ST-MFP-5 - Timer C (200hz Clock)                                |SD&lt;br /&gt;
$000118|ST-MFP-6 - Keyboard/MIDI (ACIA)                                 |SD&lt;br /&gt;
$00011C|ST-MFP-7 - FDC/HDC                                              |SD&lt;br /&gt;
$000120|ST-MFP-8 - Timer B (HBL)                                        |SD&lt;br /&gt;
$000124|ST-MFP-9 - Send Error                                           |SD&lt;br /&gt;
$000128|ST-MFP-10 - Send buffer empty                                   |SD&lt;br /&gt;
$00012C|ST-MFP-11 - Receive error                                       |SD&lt;br /&gt;
$000130|ST-MFP-12 - Receive buffer full                                 |SD&lt;br /&gt;
$000134|ST-MFP-13 - Timer A (STe sound)                                 |SD&lt;br /&gt;
$000138|ST-MFP-14 - RS-232 Ring detect                                  |SD&lt;br /&gt;
$00013C|ST-MFP-15 - GPI7 - Monochrome Detect                            |SD&lt;br /&gt;
$000140|TT-MFP-0 - GPI 0                                                |SD&lt;br /&gt;
$000144|TT-MFP-1 - GPI 1                                                |SD&lt;br /&gt;
$000148|TT-MFP-2 - SCC-DMA Controller                                   |SD&lt;br /&gt;
$00014C|TT-MFP-3 - Ring Indicator SCC B                                 |SD&lt;br /&gt;
$000150|TT-MFP-4 - Timer D                                              |SD&lt;br /&gt;
$000154|TT-MFP-5 - Timer C                                              |SD&lt;br /&gt;
$000158|TT-MFP-6 - (Reserved) GPI 4                                     |SD&lt;br /&gt;
$00015C|TT-MFP-7 - SCSI DMA Controller                                  |SD&lt;br /&gt;
$000160|TT-MFP-8 - Timer B                                              |SD&lt;br /&gt;
$000164|TT-MFP-9 - Send Error                                           |SD&lt;br /&gt;
$000168|TT-MFP-10 - Send buffer empty                                   |SD&lt;br /&gt;
$00016C|TT-MFP-11 - Receive error                                       |SD&lt;br /&gt;
$000170|TT-MFP-12 - Receive buffer full                                 |SD&lt;br /&gt;
$000174|TT-MFP-13 - Timer A                                             |SD&lt;br /&gt;
$000176|TT-MFP-14 - TT Clock (MC146818A)                                |SD&lt;br /&gt;
$00017C|TT-MFP-15 - TT-SCSI Drive Controller NCR 5380                   |SD&lt;br /&gt;
$000180|SCC Interrupt                                                   |SD&lt;br /&gt;
$0001BC|SCC Interrupt                                                   |SD&lt;br /&gt;
$0001C0|User Defined, Unused                                            |SD&lt;br /&gt;
   :   |  :     :        :                                              | :&lt;br /&gt;
$0003FC|User Defined, Unused                                            |SD&lt;br /&gt;
-------+----------------------------------------------------------------+-----&lt;br /&gt;
&lt;br /&gt;
Address Size  Description                                           Name&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############System Crash Page                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$000380|long |Validates System Crash Page if $12345678             |proc_lives&lt;br /&gt;
$000384|.....|Saved registers D0-D7                                |proc_dregs&lt;br /&gt;
$0003A4|.....|Saved registers A0-A7                                |proc_aregs&lt;br /&gt;
$0003C4|long |Vector number of crash exception                     |proc_enum&lt;br /&gt;
$0003C8|long |Saved USP                                            |proc_usp&lt;br /&gt;
$0003CC|.....|Saved 16 words from exception stack                  |proc_stk&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############System Variables                                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$000400|long |GEM Event timer vector                               |etv_timer&lt;br /&gt;
$000404|long |GEM Critical error handler                           |etv_critic&lt;br /&gt;
$000408|long |GEM Program termination vector                       |etv_term&lt;br /&gt;
$00040C|long |GEM Additional vector #1 (Unused)                    |etv_xtra&lt;br /&gt;
   :   |  :  | :      :        :     :    :                        |   :&lt;br /&gt;
$00041C|long |GEM Additional vector #5 (Unused)                    |etv_xtra&lt;br /&gt;
$000420|long |Validates memory configuration if $752019F3          |memvalid&lt;br /&gt;
$000424|word |Copy of contents of $FF8001                          |memctrl&lt;br /&gt;
$000426|long |Validates resvector if $31415926                     |resvalid&lt;br /&gt;
$00042A|long |Reset vector                                         |resvector&lt;br /&gt;
$00042E|long |Physical top of RAM                                  |phystop&lt;br /&gt;
$000432|long |Start of TPA (user memory)                           |_membot&lt;br /&gt;
$000436|long |End of TPA (user memory)                             |_memtop&lt;br /&gt;
$00043A|long |Validates memcntrl and memconf if $237698AA          |memval2&lt;br /&gt;
$00043E|word |If nonzero, floppy disk VBL routine is disabled      |flock&lt;br /&gt;
$000440|word |Floppy Seek rate - 0:6ms, 1:12ms, 2:2ms, 3:3ms       |seekrate&lt;br /&gt;
$000442|word |Time between two timer calls (in milliseconds)       |_timer_ms&lt;br /&gt;
$000444|word |If not zero, verify floppy disk writes               |_fverify&lt;br /&gt;
$000446|word |Default boot device                                  |_bootdev&lt;br /&gt;
$000448|word |0 - NTSC (60hz), &amp;lt;&amp;gt;0 - PAL (50hz)                    |palmode&lt;br /&gt;
$00044A|word |Default video resolution                             |defshiftmod&lt;br /&gt;
$00044C|word |Copy of contents of $FF8260                          |sshiftmod&lt;br /&gt;
$00044E|long |Pointer to video RAM (logical screen base)           |_v_bas_ad&lt;br /&gt;
$000452|word |If not zero, VBL routine is not executed             |vblsem&lt;br /&gt;
$000454|word |Number of vertical blank routines                    |nvbls&lt;br /&gt;
$000456|long |Pointer to list of vertical blank routines           |_vblqueue&lt;br /&gt;
$00045A|long |If not zero, points to color palette to be loaded    |colorptr&lt;br /&gt;
$00045E|long |If not zero, points to video ram for next VBL        |screenpt&lt;br /&gt;
$000462|long |Counter for number of VBLs                           |_vbclock&lt;br /&gt;
$000466|long |Number of VBL routines executed                      |_frclock&lt;br /&gt;
$00046A|long |Vector for hard disk initialization                  |hdv_init&lt;br /&gt;
$00046E|long |Vector for resolution change                         |swv_vec&lt;br /&gt;
$000472|long |Vector for getbpb for hard disk                      |hdv_bpb&lt;br /&gt;
$000476|long |Vector for read/write routine for hard disk          |hdv_rw&lt;br /&gt;
$00047A|long |Vector for hard disk boot                            |hdv_boot&lt;br /&gt;
$00047E|long |Vector for hard disk media change                    |hdv_mediach&lt;br /&gt;
$000482|word |If not zero, attempt to load &amp;quot;COMMAND.PRG&amp;quot; on boot   |_comload&lt;br /&gt;
$000484|byte |Attribute vector for console output       BIT 3 2 1 0|conterm&lt;br /&gt;
       |     |Return &amp;quot;kbshift&amp;quot; for BIOS conin --------------' | | ||&lt;br /&gt;
       |     |System bell (1 - on) ---------------------------' | ||&lt;br /&gt;
       |     |Key repeat (1 - on) ------------------------------' ||&lt;br /&gt;
       |     |Key click (1 - on) ---------------------------------'|&lt;br /&gt;
$000486|long |Return address for TRAP #14                  (unused)|trp14ret&lt;br /&gt;
$00048A|long |Return address for critical error handler    (unused)|criticret&lt;br /&gt;
$00048E|long |Memory descriptor block                              |themd&lt;br /&gt;
$00049E|long |Space for additional memory descriptors              |themdmd&lt;br /&gt;
$0004A2|long |Pointer to BIOS save registers block                 |savptr&lt;br /&gt;
$0004A6|word |Number of connected floppy drives                    |_nflops&lt;br /&gt;
$0004A8|long |Vector for screen output                             |con_state&lt;br /&gt;
$0004AC|word |Temporary storage for cursor line position           |save_row&lt;br /&gt;
$0004AE|long |Pointer to save area for exception processing        |sav_context&lt;br /&gt;
$0004B2|long |Pointer to buffer control block for GEMDOS data      |_bufl&lt;br /&gt;
$0004B6|long |Pointer to buffer control block for GEMDOS fat/dir   |_bufl&lt;br /&gt;
$0004BA|long |Counter for 200hz system clock                       |_hz_200&lt;br /&gt;
$0004BC|long |Pointer to default environment string                |the_env&lt;br /&gt;
$0004C2|long |Bit allocation for physical drives (bit 0=A, 1=B..)  |_drvbits&lt;br /&gt;
$0004C6|long |Pointer to 1024-byte disk buffer                     |_dskbufp&lt;br /&gt;
$0004CA|long |Pointer to autoexecute path                          |_autopath&lt;br /&gt;
$0004CE|long |Pointer to VBL routine #1                            |_vbl_lis&lt;br /&gt;
   :   |  :  |  :      :  :     :     :                            |    :&lt;br /&gt;
$0004EA|long |Pointer to VBL routine #8                            |_vbl_lis&lt;br /&gt;
$0004EE|word |Flag for screen -&amp;gt; printer dump                      |_dumpflg&lt;br /&gt;
$0004F0|word |Printer abort flag                                   |_prtabt&lt;br /&gt;
$0004F2|long |Pointer to start of OS                               |_sysbase&lt;br /&gt;
$0004F6|long |Global shell pointer                                 |_shell_p&lt;br /&gt;
$0004FA|long |Pointer to end of OS                                 |end_os&lt;br /&gt;
$0004FE|long |Pointer to entry point of OS                         |exec_os&lt;br /&gt;
$000502|long |Pointer to screen dump routine                       |scr_dump&lt;br /&gt;
$000506|long |Pointer to _lstostat()                               |prv_lsto&lt;br /&gt;
$00050A|long |Pointer to _lstout()                                 |prv_lst&lt;br /&gt;
$00050E|long |Pointer to _auxostat()                               |prv_auxo&lt;br /&gt;
$000512|long |Pointer to _auxout()                                 |prv_aux&lt;br /&gt;
$000516|long |If AHDI, pointer to pun_info                         |pun_ptr&lt;br /&gt;
$00051A|long |If $5555AAAA, reset                                  |memval3&lt;br /&gt;
$00051E|long |8 Pointers to input-status routines                  |xconstat&lt;br /&gt;
$00053E|long |8 Pointers to input routines                         |xconin&lt;br /&gt;
$00055E|long |8 Pointers to output-status routines                 |xcostat&lt;br /&gt;
$00057E|long |8 Pointers to output routines                        |xconout&lt;br /&gt;
$00059E|word |If not 0, then not 68000 - use long stack frames     |_longframe&lt;br /&gt;
$0005A0|long |Pointer to cookie jar                                |_p_cookies&lt;br /&gt;
$0005A4|long |Pointer to end of FastRam                            |ramtop&lt;br /&gt;
$0005A8|long |Validates ramtop if $1357BD13                        |ramvalid&lt;br /&gt;
$0005AC|long |Pointer to routine for system bell                   |bell_hook&lt;br /&gt;
$0005B0|long |Pointer to routine for system keyclick               |kcl_hook&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
&lt;br /&gt;
Address Size  Description                                 Bits used Read/Write&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############OS ROMs                                              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$E00000|byte |TOS 512k ROMs                                        |R&lt;br /&gt;
   :   |  :  | :   :    :                                          |:&lt;br /&gt;
$EFFFFF|byte |TOS 512k ROMs                                        |R&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ADSPEED Configuration registers                      ###########     &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$F00000|byte |Switch to 16 Mhz                                     |W&lt;br /&gt;
$F10000|byte |Switch to 8 Mhz                                      |W&lt;br /&gt;
$F20000|byte |Turn on high speed ROM option in 16 Mhz              |W&lt;br /&gt;
$F30000|byte |Turn off high speed ROM option                       |W&lt;br /&gt;
$F40000|byte |Unknown                                              |W&lt;br /&gt;
$F50000|byte |Turn off cache while in 16 Mhz                       |W&lt;br /&gt;
       |     |       &amp;gt;&amp;gt; Write 0 to an address to set it. &amp;lt;&amp;lt;        |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############IDE Controller (Falcon, ST-Book, IDE cards)          ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$F00000|word |Data Register                                        |R/W&lt;br /&gt;
       |     |            BIT 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0|&lt;br /&gt;
$F00002|word |Data Register                                        |R/W&lt;br /&gt;
       |     |            BIT 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0|&lt;br /&gt;
$F00005|byte |Error Register                    BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Bad block mark -----------------------' | | | | | | ||&lt;br /&gt;
       |     |Uncorrectable error --------------------' | | | | | ||&lt;br /&gt;
       |     |Media change -----------------------------' | | | | ||&lt;br /&gt;
       |     |ID-Field not found -------------------------' | | | ||&lt;br /&gt;
       |     |Media change requested -----------------------' | | ||&lt;br /&gt;
       |     |Command aborted --------------------------------' | ||&lt;br /&gt;
       |     |Track 0 not found --------------------------------' ||&lt;br /&gt;
       |     |DAM not found --------------------------------------'|&lt;br /&gt;
$F00005|byte |Write Precompensation                                |W&lt;br /&gt;
$F00009|byte |Sector Count Register                                |W&lt;br /&gt;
$F0000D|byte |Sector Number Register                               |W&lt;br /&gt;
$F00011|byte |Cylinder Low Register             BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
$F00015|byte |Cylinder High Register                        BIT 1 0|W&lt;br /&gt;
$F00019|byte |Drive Head Register               BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Sector size (512 bytes, fixed) -------+ + + | | | | ||&lt;br /&gt;
       |     |Drive (0 - Master, 1 - Slave) --------------' | | | ||&lt;br /&gt;
       |     |Head number ----------------------------------+ + + +|&lt;br /&gt;
$F0001D|byte |Status Register                   BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Drive busy with executing Command ----' | | | | | | ||&lt;br /&gt;
       |     |Drive Ready ----------------------------' | | | | | ||&lt;br /&gt;
       |     |Drive Write Fault ------------------------' | | | | ||&lt;br /&gt;
       |     |Drive Seek Complete ------------------------' | | | ||&lt;br /&gt;
       |     |Data Request ---------------------------------' | | ||&lt;br /&gt;
       |     |Corrected Data ---------------------------------' | ||&lt;br /&gt;
       |     |Index pulse --------------------------------------' ||&lt;br /&gt;
       |     |Error ----------------------------------------------'|&lt;br /&gt;
$F0001D|byte |Command Register                                     |W&lt;br /&gt;
$F00039|byte |Alternate Status Register                            |R&lt;br /&gt;
       |     |2nd status register, like 1st no deletion of the IRQ |                                                   |&lt;br /&gt;
$F00039|byte |Data Output Register                        BIT 2 1 .|W&lt;br /&gt;
       |     |Software Reset (1 - on)-------------------------+ |  |&lt;br /&gt;
       |     |Interrupt after end of Command (0 - on) ----------+  |&lt;br /&gt;
$F0003D|byte |Active address                      BIT 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Drive is writing (0 - on) --------------' | | | | | ||&lt;br /&gt;
       |     |Negated number of head number ------------+ + + + | ||&lt;br /&gt;
       |     |Slave Drive Select (0 - on) ----------------------' ||&lt;br /&gt;
       |     |Master Drive Select (0 - on) -----------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############OS ROMs                                              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FC0000|byte |TOS 192k ROMs                                        |R&lt;br /&gt;
   :   |  :  | :   :    :                                          |:&lt;br /&gt;
$FEFFFF|byte |TOS 192k ROMs                                        |R&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ST MMU Controller                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8001|byte |MMU memory configuration                  BIT 3 2 1 0|R/W&lt;br /&gt;
       |     |Bank 0                                        | | | ||&lt;br /&gt;
       |     |00 - 128k ------------------------------------+-+ | ||&lt;br /&gt;
       |     |01 - 512k ------------------------------------+-+ | ||&lt;br /&gt;
       |     |10 - 2m --------------------------------------+-+ | ||&lt;br /&gt;
       |     |11 - reserved --------------------------------+-' | ||&lt;br /&gt;
       |     |Bank 1                                            | ||&lt;br /&gt;
       |     |00 - 128k ----------------------------------------+-+|&lt;br /&gt;
       |     |01 - 512k ----------------------------------------+-+|&lt;br /&gt;
       |     |10 - 2m ------------------------------------------+-+|&lt;br /&gt;
       |     |11 - reserved ------------------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 Processor Control                          ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8007|byte |Falcon Bus Control                  BIT 6 5 . 3 2 . 0|R/W (F030)&lt;br /&gt;
       |     |RESET behavior -------------------------+ |   | |   ||&lt;br /&gt;
       |     |  0 = always cold start ----------------+ |   | |   ||&lt;br /&gt;
       |     |  1 = normal, &amp;quot;memvalid&amp;quot; is observed ---+ |   | |   ||&lt;br /&gt;
       |     |STe Bus Emulation ------------------------'   | |   ||&lt;br /&gt;
       |     |  0 = STE --------------------------------'   | |   ||&lt;br /&gt;
       |     |  1 = Falcon -----------------------------'   | |   ||&lt;br /&gt;
       |     |Blitter flag ---------------------------------' |   ||&lt;br /&gt;
       |     |  0 = BLiTTER On -----------------------------' |   ||&lt;br /&gt;
       |     |  1 = BLiTTER Off ----------------------------' |   ||&lt;br /&gt;
       |     |Blitter clock-----------------------------------'   ||&lt;br /&gt;
       |     |  0 - 8mhz, ------------------------------------'   ||&lt;br /&gt;
       |     |  1 - 16mhz ------------------------------------'   ||&lt;br /&gt;
       |     |68030 clock ----------------------------------------'|&lt;br /&gt;
       |     |  0 - 8mhz -----------------------------------------'|&lt;br /&gt;
       |     |  1 - 16mhz ----------------------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############SHIFTER Video Controller                             ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8201|byte |Video screen memory position (High byte)             |R/W&lt;br /&gt;
$FF8203|byte |Video screen memory position (Mid byte)              |R/W&lt;br /&gt;
$FF820D|byte |Video screen memory position (Low byte)              |R/W  (STe)&lt;br /&gt;
$FF8205|byte |Video address pointer (High byte)                    |R&lt;br /&gt;
$FF8207|byte |Video address pointer (Mid byte)                     |R&lt;br /&gt;
$FF8209|byte |Video address pointer (Low byte)                     |R&lt;br /&gt;
$FF820E|word |Offset to next line                                  |R/W (F030)&lt;br /&gt;
$FF820F|byte |Width of a scanline (width in words-1)               |R/W  (STe)&lt;br /&gt;
$FF8210|word |Width of a scanline (width in words)                 |R/W (F030)&lt;br /&gt;
$FF8264|byte |Horizontal scroll register without prefetch (0-15)   |R/W  (STe)&lt;br /&gt;
$FF8265|byte |Horizontal scroll register with prefetch (0-15)      |R/W  (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF820A|byte |Video synchronization mode                    BIT 1 0|R/W&lt;br /&gt;
       |     |0 - 60hz, 1 - 50hz -------------------------------+ ||&lt;br /&gt;
       |     |0 - internal, 1 - external sync ------------------' ||      (TT)&lt;br /&gt;
       |     |0 - internal, 1 - external sync --------------------'|     (!TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |                                BIT 11111198 76543210|&lt;br /&gt;
       |     |                                    543210           |&lt;br /&gt;
       |     |                     ST color value .....RRr .GGr.BBb|&lt;br /&gt;
       |     |                    STe color value ....rRRR gGGGbBBB|&lt;br /&gt;
$FF8240|word |Video palette register 0              Lowercase = LSB|R/W&lt;br /&gt;
    :  |  :  |  :      :       :     :                             | :&lt;br /&gt;
$FF825E|word |Video palette register 15                            |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8260|byte |Shifter resolution                            BIT 1 0|R/W&lt;br /&gt;
       |     |00 320x200x4 bitplanes (16 colors) ---------------+-+|&lt;br /&gt;
       |     |01 640x200x2 bitplanes (4 colors) ----------------+-+|&lt;br /&gt;
       |     |10 640x400x1 bitplane  (1 colors) ----------------+-'|&lt;br /&gt;
$FF8262|word |TT Shifter resolution                   BIT 15 . . 12|R/W   (TT)&lt;br /&gt;
       |     |Sample/Hold mode ----------------------------'      ||&lt;br /&gt;
       |     |Hypermono mode -------------------------------------'|&lt;br /&gt;
       |     |Video Mode                                 BIT 10 9 8|&lt;br /&gt;
       |     |000  320x200x4 bitplanes (16 colors) -----------+-+-+|&lt;br /&gt;
       |     |001  640x200x2 bitplanes (4 colors) ------------+-+-+|&lt;br /&gt;
       |     |010  640x400x1 bitplane  (2 colors)(Duochrome) -+-+-+|&lt;br /&gt;
       |     |100  640x480x4 bitplanes (16 colors) -----------+-+-+|&lt;br /&gt;
       |     |110 1280x960x1 bitplane  (2 colors) ------------+-+-+|&lt;br /&gt;
       |     |111  320x480x8 bitplanes (256 colors) ----------+-+-'|&lt;br /&gt;
       |     |ST Palette Bank                           BIT 3 2 1 0|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF827E|word |STACY Display Driver                         BIT 10 9|R/W(STACY)&lt;br /&gt;
       |     |Backlight on/off ---------------------------------+ ||&lt;br /&gt;
       |     |Display on/off -------------------------------------+| &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |                                BIT 11111198 76543210|&lt;br /&gt;
       |     |                                    543210           |&lt;br /&gt;
       |     |                     TT color value ....RRRr GGGgBBBb|&lt;br /&gt;
$FF8400|word |TT Palette  0                         Lowercase = LSB|R/W   (TT)&lt;br /&gt;
    :  |  :  | :    :     :                                        | :      :&lt;br /&gt;
$FF85FE|word |TT Palette 255                                       |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 VIDEL Video Controller                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8006|byte |Monitor Type                      BIT 7 6 5 4 3 2 1 0|R   (F030)&lt;br /&gt;
       |     |Monitor Type (M0,M1) -----------------+-+ | | | | | ||&lt;br /&gt;
       |     |00 - Monochrome (SM124) --------------+-+ | | | | | ||&lt;br /&gt;
       |     |01 - RGB (SC1224) --------------------+-+ | | | | | ||&lt;br /&gt;
       |     |10 - VGA Color -----------------------+-+ | | | | | ||&lt;br /&gt;
       |     |11 - Television ----------------------+-+ | | | | | ||&lt;br /&gt;
       |     |ST-RAM size ------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  00 = 1MB -------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  01 = 4MB -------------------------------+-+ | | | ||&lt;br /&gt;
       |     |  10 = 16MB ------------------------------+-+ | | | ||&lt;br /&gt;
       |     |ROM Wait Status ------------------------------+ + | ||&lt;br /&gt;
       |     |  00 = Reserved ------------------------------+ + | ||&lt;br /&gt;
       |     |  01 = 2 Wait (default) ----------------------+ + | ||&lt;br /&gt;
       |     |  10 = 1 Wait --------------------------------+ + | ||&lt;br /&gt;
       |     |  11 = 0 Wait --------------------------------+ + | ||&lt;br /&gt;
       |     |Video bus width ----------------------------------+ ||&lt;br /&gt;
       |     |  0 = 16 Bit,  -----------------------------------+ ||&lt;br /&gt;
       |     |  1 = 32 Bit (default) ---------------------------+ ||&lt;br /&gt;
       |     |RAM Wait Status ------------------------------------+|&lt;br /&gt;
       |     |  0 =  1 Wait (default) ----------------------------+|&lt;br /&gt;
       |     |  1 =  0 Wait --------------------------------------+|&lt;br /&gt;
$FF820E|word |Offset to next line                                  |R/W (F030)&lt;br /&gt;
$FF8210|word |VWRAP - Linewidth in words                           |R/W (F030)&lt;br /&gt;
$FF8266|word |SPSHIFT                    BIT 10 9 8 . 6 5 4 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |2-colour mode ------------------' | |   | | | | | | ||&lt;br /&gt;
       |     |Overlay mode ---------------------' |   | | | | | | ||&lt;br /&gt;
       |     |Truecolour mode --------------------'   | | | | | | ||&lt;br /&gt;
       |     |Use external Hsync (1 - on) ------------' | | | | | ||&lt;br /&gt;
       |     |Use external Vsync (1 - on) --------------' | | | | ||&lt;br /&gt;
       |     |8 Bitplane mode ----------------------------' | | | ||&lt;br /&gt;
       |     |Color Palette Bank from 256 colors (0-15) ----+-+-+-+|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |      Horizontal Control Registers          (BIT 9-0)|&lt;br /&gt;
$FF8280|word |HHC - Horizontal Hold Counter                        |R   (F030)&lt;br /&gt;
$FF8282|word |HHT - Horizontal Hold Timer                          |R/W (F030)&lt;br /&gt;
$FF8284|word |HBB - Horizontal Border Begin                        |R/W (F030)&lt;br /&gt;
$FF8286|word |HBE - Horizontal Border End                          |R/W (F030)&lt;br /&gt;
$FF8288|word |HDB - Horizontal Display Begin                       |R/W (F030)&lt;br /&gt;
$FF828A|word |HDE - Horizontal Display End                         |R/W (F030)&lt;br /&gt;
$FF828C|word |HSS - Horizontal SS                                  |R/W (F030)&lt;br /&gt;
$FF828E|word |HFS - Horizontal FS                                  |R/W (F030)&lt;br /&gt;
$FF8290|word |HEE - Horizontal EE                                  |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |      Vertical Control Registers           (BIT 10-0)| &lt;br /&gt;
$FF82A0|word |VFC - Vertcial Frequency Counter                     |R   (F030)&lt;br /&gt;
$FF82A2|word |VFT - Vertical Frequency Timer                       |R/W (F030)&lt;br /&gt;
$FF82A4|word |VBB - Vertical Border Begin      (count in 1/2 lines)|R/W (F030)&lt;br /&gt;
$FF82A6|word |VBE - Vertical Border End        (count in 1/2 lines)|R/W (F030)&lt;br /&gt;
$FF82A8|word |VDB - Vertical Display Begin                         |R/W (F030)&lt;br /&gt;
$FF82AA|word |VDE - Vertical Display End                           |R/W (F030)&lt;br /&gt;
$FF82AC|word |VSS - Vertical SS                                    |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FF82C0|word |Video Control (VCO)   (Super78 puts $182 here)       |R/W (F030)&lt;br /&gt;
       |     |                                BIT 8 7 6 5 . 3 2 1 0|&lt;br /&gt;
       |     |Hz base offset ---------------------' | | |   | | | ||&lt;br /&gt;
       |     |  0: 128 cycles --------------------' | | |   | | | ||&lt;br /&gt;
       |     |  (ST Low/Mid on RGB                  | | |   | | | ||&lt;br /&gt;
       |     |     and ST Hi on SM124)              | | |   | | | ||&lt;br /&gt;
       |     |  1:  64 cycles (all the others) ---' | | |   | | | ||&lt;br /&gt;
       |     |Videobus width -----------------------' | |   | | | ||&lt;br /&gt;
       |     |  0: 16 Bit-Videobus -----------------' | |   | | | ||&lt;br /&gt;
       |     |  1: 32 Bit-Videobus (Falcon) --------' | |   | | | ||&lt;br /&gt;
       |     |HSync-Impulse --------------------------' |   | | | ||&lt;br /&gt;
       |     |  0: negative HSync-Impulse (5V &amp;gt; 0V) --' |   | | | ||&lt;br /&gt;
       |     |  1: positive HSync-Impulse (0V &amp;gt; 5V) --' |   | | | ||&lt;br /&gt;
       |     |VSync-Impulse ----------------------------'   | | | ||&lt;br /&gt;
       |     |  0: negative VSync-Impulse (5V &amp;gt; 0V) ----'   | | | ||&lt;br /&gt;
       |     |  1: positive VSync-Impulse (0V &amp;gt; 5V) ----'   | | | ||&lt;br /&gt;
       |     |Half-line-HSyncs------------------------------' | | ||&lt;br /&gt;
       |     |  0: No Half-line-HSyncs ---------------------' | | ||&lt;br /&gt;
       |     |  1: 15 Half-line-HSyncs from start of -------' | | ||&lt;br /&gt;
       |     |Video base clock -------------------------------' | ||&lt;br /&gt;
       |     |  0: Video base clock 32 MHz -------------------' | ||&lt;br /&gt;
       |     |  1: Video base clock 25.175 MHz ---------------' | ||&lt;br /&gt;
       |     |Monitor Type (M0,M1 same as bit 7&amp;amp;6 in $FF0006) --+-+|&lt;br /&gt;
       |     |  00 - Monochrome (SM124) ------------------------+-+|&lt;br /&gt;
       |     |  01 - RGB (SC1224) ------------------------------+-+|&lt;br /&gt;
       |     |  10 - VGA Color ---------------------------------+-+|&lt;br /&gt;
       |     |  11 - Television --------------------------------+-+|&lt;br /&gt;
$FF82C2|word |VCO - Video Control                       BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |Pixel width ----------------------------------+-+ | ||&lt;br /&gt;
       |     |  00: 4 cycles/pixel -------------------------+-+ | ||&lt;br /&gt;
       |     |  01: 2 cycles/pixel -------------------------+-+ | ||&lt;br /&gt;
       |     |  10: 1 cycle/pixel  -------------------------+-+ | ||&lt;br /&gt;
       |     |  11: n/a            -------------------------+-+ | ||&lt;br /&gt;
       |     |Skip line (interlace) (1-on) ---------------------' ||&lt;br /&gt;
       |     |Double lines (1-on) --------------------------------'| &lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DMA/WD1772 Disk controller                           ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8600|     |Reserved                                             |&lt;br /&gt;
$FF8602|     |Reserved                                             |&lt;br /&gt;
$FF8604|word |FDC access/sector count                              |R/W&lt;br /&gt;
$FF8606|word |DMA mode/status                             BIT 2 1 0|R&lt;br /&gt;
       |     |Condition of FDC DATA REQUEST signal -----------' | ||&lt;br /&gt;
       |     |0 - sector count null,1 - not null ---------------' ||&lt;br /&gt;
       |     |0 - no error, 1 - DMA error ------------------------'|&lt;br /&gt;
$FF8606|word |DMA mode/status                 BIT 8 7 6 . 4 3 2 1 .|W&lt;br /&gt;
       |     |0 - read FDC/HDC,1 - write ---------' | | | | | | |  |&lt;br /&gt;
       |     |0 - HDC access,1 - FDC access --------' | | | | | |  |&lt;br /&gt;
       |     |0 - DMA on,1 - no DMA ------------------' | | | | |  |&lt;br /&gt;
       |     |Reserved ---------------------------------' | | | |  |&lt;br /&gt;
       |     |0 - FDC reg,1 - sector count reg -----------' | | |  |&lt;br /&gt;
       |     |0 - FDC access,1 - HDC access ----------------' | |  |&lt;br /&gt;
       |     |0 - pin A1 low, 1 - pin A1 high ----------------' |  |&lt;br /&gt;
       |     |0 - pin A0 low, 1 - pin A0 high ------------------'  |&lt;br /&gt;
$FF8609|byte |DMA base and counter (High byte)                     |R/W&lt;br /&gt;
$FF860B|byte |DMA base and counter (Mid byte)                      |R/W&lt;br /&gt;
$FF860D|byte |DMA base and counter (Low byte)                      |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT-SCSI DMA Controller                               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8701|byte |DMA Address Pointer (Highest byte)                   |R/W   (TT)&lt;br /&gt;
$FF8703|byte |DMA Address Pointer (High byte)                      |R/W   (TT)&lt;br /&gt;
$FF8705|byte |DMA Address Pointer (Low byte)                       |R/W   (TT)&lt;br /&gt;
$FF8707|byte |DMA Address Pointer (Lowest byte)                    |R/W   (TT)&lt;br /&gt;
$FF8709|byte |DMA Byte Count (Highest byte)                        |R/W   (TT)&lt;br /&gt;
$FF870B|byte |DMA Byte Count (High byte)                           |R/W   (TT)&lt;br /&gt;
$FF870D|byte |DMA Byte Count (Low byte)                            |R/W   (TT)&lt;br /&gt;
$FF870F|byte |DMA Byte Count (Lowest byte)                         |R/W   (TT)&lt;br /&gt;
$FF8710|word |Residue Data Register (High Word)                    |R     (TT)&lt;br /&gt;
$FF8712|word |Residue Data Register (Low Word)                     |R     (TT)&lt;br /&gt;
$FF8715|byte |Control register                  BIT 7 6 . . . . 1 0|R/W   (TT)&lt;br /&gt;
       |     |Bus error ----------------------------' |         | ||&lt;br /&gt;
       |     |Byte count zero ------------------------'         | ||&lt;br /&gt;
       |     |Enable -------------------------------------------' ||&lt;br /&gt;
       |     |DMA Direction (1 - out to port) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT-SCSI Drive Controller NCR 5380                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8781|byte |Data register                                        |R/W   (TT)&lt;br /&gt;
$FF8783|byte |Init-Command Register                                |R/W   (TT)&lt;br /&gt;
$FF8785|byte |Mode Register                                        |R/W   (TT)&lt;br /&gt;
$FF8787|byte |Target-Command Register                              |R/W   (TT)&lt;br /&gt;
$FF8789|byte |ID Select/SCSI Control Register                      |R/W   (TT)&lt;br /&gt;
$FF878B|byte |Status Register                                      |R/W   (TT)&lt;br /&gt;
$FF878D|byte |Target Receive/Input Data                            |R/W   (TT)&lt;br /&gt;
$FF878F|byte |Initiate Receive/Reset                               |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############YM2149 Sound Chip                                    ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8800|byte |Read data/Register select                            |R/W&lt;br /&gt;
       |     |0 Channel A Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |1 Channel A Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |2 Channel B Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |3 Channel B Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |4 Channel C Freq Low              BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |5 Channel C Freq High                     BIT 3 2 1 0|&lt;br /&gt;
       |     |6 Noise Freq                          BIT 5 4 3 2 1 0|&lt;br /&gt;
       |     |7 Mixer Control                   BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |  Port B IN/OUT (1=Output) -----------' | | | | | | ||&lt;br /&gt;
       |     |  Port A IN/OUT ------------------------' | | | | | ||&lt;br /&gt;
       |     |  Channel C Noise (1=Off) ----------------' | | | | ||&lt;br /&gt;
       |     |  Channel B Noise --------------------------' | | | ||&lt;br /&gt;
       |     |  Channel A Noise ----------------------------' | | ||&lt;br /&gt;
       |     |  Channel C Tone (0=On) ------------------------' | ||&lt;br /&gt;
       |     |  Channel B Tone ---------------------------------' ||&lt;br /&gt;
       |     |  Channel A Tone -----------------------------------'|&lt;br /&gt;
       |     |8 Channel A Amplitude Control           BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level (0=Fixed) -----------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |9 Channel B Amplitude Control           BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level ---------------------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |10 Channel C Amplitude Control          BIT 4 3 2 1 0|&lt;br /&gt;
       |     |  Fixed/Variable Level ---------------------' | | | ||&lt;br /&gt;
       |     |  Amplitude level control --------------------+-+-+-'|&lt;br /&gt;
       |     |11 Envelope Period High           BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |12 Envelope Period Low            BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |13 Envelope Shape                         BIT 3 2 1 0|&lt;br /&gt;
       |     |  Continue -----------------------------------' | | ||&lt;br /&gt;
       |     |  Attack ---------------------------------------' | ||&lt;br /&gt;
       |     |  Alternate --------------------------------------' ||&lt;br /&gt;
       |     |  Hold ---------------------------------------------'|&lt;br /&gt;
       |     |   00xx - \____________________________________      |&lt;br /&gt;
       |     |   01xx - /|___________________________________      |&lt;br /&gt;
       |     |   1000 - \|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\|\      |&lt;br /&gt;
       |     |   1001 - \____________________________________      |&lt;br /&gt;
       |     |   1010 - \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\      |&lt;br /&gt;
       |     |   1011 - \|-----------------------------------      |&lt;br /&gt;
       |     |   1100 - /|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/|/      |&lt;br /&gt;
       |     |   1101 - /------------------------------------      |&lt;br /&gt;
       |     |   1110 - /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/      |&lt;br /&gt;
       |     |   1111 - /|___________________________________      |&lt;br /&gt;
       |     |14 Port A                         BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |  IDE Drive On/OFF -------------------+ | | | | | | ||    (F030)&lt;br /&gt;
       |     |  SCC A (0=LAN, 1=Serial2) -----------' | | | | | | ||      (TT)&lt;br /&gt;
       |     |  Monitor jack GPO pin -----------------+ | | | | | ||&lt;br /&gt;
       |     |  Internal Speaker On/Off --------------' | | | | | ||    (F030)&lt;br /&gt;
       |     |  Centronics strobe ----------------------' | | | | ||&lt;br /&gt;
       |     |  RS-232 DTR output ------------------------' | | | ||&lt;br /&gt;
       |     |  RS-232 RTS output --------------------------' | | ||&lt;br /&gt;
       |     |  Drive select 1 -------------------------------' | ||&lt;br /&gt;
       |     |  Drive select 0 ---------------------------------' ||&lt;br /&gt;
       |     |  Drive side select --------------------------------'|&lt;br /&gt;
       |     |15 Port B (Parallel port)                            |&lt;br /&gt;
$FF8802|byte |Write data                                           |W&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Note: PSG Registers are now fixed at these addresses.|&lt;br /&gt;
       |     |All other addresses are masked out on the Falcon. Any|&lt;br /&gt;
       |     |writes to the shadow registers $8804-$88FF will cause|&lt;br /&gt;
       |     |bus errors. Game/Demo coders beware!                 |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DMA Sound System                                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8900|byte |Buffer interrupts                         BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |TimerA-Int at end of record buffer -----------' | | ||&lt;br /&gt;
       |     |TimerA-Int at end of replay buffer -------------' | ||&lt;br /&gt;
       |     |MFP-15-Int (I7) at end of record buffer ----------' ||&lt;br /&gt;
       |     |MFP-15-Int (I7) at end of replay buffer ------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8901|byte |DMA Control Register              BIT 7 . 5 4 . . 1 0|R/W&lt;br /&gt;
       |     |1 - select record register -----------+   | |     | ||    (F030) &lt;br /&gt;
       |     |0 - select replay register -----------'   | |     | ||    (F030)&lt;br /&gt;
       |     |Loop record buffer -----------------------' |     | ||    (F030)&lt;br /&gt;
       |     |DMA Record on ------------------------------'     | ||    (F030)&lt;br /&gt;
       |     |Loop replay buffer -------------------------------' ||     (STe)&lt;br /&gt;
       |     |DMA Replay on --------------------------------------'|     (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8903|byte |Frame start address (high byte)                      |R/W  (STe)&lt;br /&gt;
$FF8905|byte |Frame start address (mid byte)                       |R/W  (STe)&lt;br /&gt;
$FF8907|byte |Frame start address (low byte)                       |R/W  (STe)&lt;br /&gt;
$FF8909|byte |Frame address counter (high byte)                    |R    (STe)&lt;br /&gt;
$FF890B|byte |Frame address counter (mid byte)                     |R    (STe)&lt;br /&gt;
$FF890D|byte |Frame address counter (low byte)                     |R    (STe)&lt;br /&gt;
$FF890F|byte |Frame end address (high byte)                        |R/W  (STe)&lt;br /&gt;
$FF8911|byte |Frame end address (mid byte)                         |R/W  (STe)&lt;br /&gt;
$FF8913|byte |Frame end address (low byte)                         |R/W  (STe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8920|byte |DMA Track Control                     BIT 5 4 . . 1 0|R/W (F030)&lt;br /&gt;
       |     |00 - Set DAC to Track 0 ------------------+-+     | ||&lt;br /&gt;
       |     |01 - Set DAC to Track 1 ------------------+-+     | ||&lt;br /&gt;
       |     |10 - Set DAC to Track 2 ------------------+-+     | ||&lt;br /&gt;
       |     |11 - Set DAC to Track 3 ------------------+-'     | ||&lt;br /&gt;
       |     |00 - Play 1 Track --------------------------------+-+|&lt;br /&gt;
       |     |01 - Play 2 Tracks -------------------------------+-+|&lt;br /&gt;
       |     |10 - Play 3 Tracks -------------------------------+-+|&lt;br /&gt;
       |     |11 - Play 4 Tracks -------------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8921|byte |Sound mode control                BIT 7 6 . . . . 1 0|R/W  (STe)&lt;br /&gt;
       |     |0 - Stereo, 1 - Mono -----------------' |         | ||&lt;br /&gt;
       |     |0 - 8bit -------------------------------+         | ||&lt;br /&gt;
       |     |1 - 16bit (F030 only) ------------------'         | ||    (F030)&lt;br /&gt;
       |     |Frequency control bits                            | ||&lt;br /&gt;
       |     |00 - Off (F030 only) -----------------------------+-+|    (F030)&lt;br /&gt;
       |     |00 - 6258hz frequency (STe only) -----------------+-+|&lt;br /&gt;
       |     |01 - 12517hz frequency ---------------------------+-+|&lt;br /&gt;
       |     |10 - 25033hz frequency ---------------------------+-+|&lt;br /&gt;
       |     |11 - 50066hz frequency ---------------------------+-'|&lt;br /&gt;
       |     |Samples are always signed. In stereo mode, data is   |&lt;br /&gt;
       |     |arranged in pairs with high pair the left channel,low|&lt;br /&gt;
       |     |pair right channel. Sample length MUST be even in    |&lt;br /&gt;
       |     |either mono or stereo mode.                          |&lt;br /&gt;
       |     |Example: 8 bit Stereo : LRLRLRLRLRLRLRLR             |&lt;br /&gt;
       |     |        16 bit Stereo : LLRRLLRRLLRRLLRR (F030)      |&lt;br /&gt;
       |     |2 track 16 bit stereo : LLRRllrrLLRRllrr (F030)      |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############STe Microwire Controller (STe/TT only!)              ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8922|byte |Microwire data register                              |R/W  (Mwr)&lt;br /&gt;
$FF8924|byte |Microwire mask register                              |R/W  (Mwr)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |!! ATTENTION !! Microwire is now obsolete! It is not |&lt;br /&gt;
       |     |present in the Falcon030 and is unlikely to be in any|&lt;br /&gt;
       |     |future machines. You have been warned.               | &lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Volume/tone controller commands         (Address %10)|&lt;br /&gt;
       |     |Master Volume                           10 011 DDDDDD|&lt;br /&gt;
       |     |Left Volume                             10 101 .DDDDD|&lt;br /&gt;
       |     |Right Volume                            10 100 .DDDDD|&lt;br /&gt;
       |     |Treble                                  10 010 ..DDDD|&lt;br /&gt;
       |     |Bass                                    10 001 ..DDDD|&lt;br /&gt;
       |     |Mixer                                   10 000 ....DD|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Volume/tone controller values                        |&lt;br /&gt;
       |     |Master Volume     : 0-40   (0 = -80dB, 40 = 0dB)     |&lt;br /&gt;
       |     |Left/Right Volume : 0-20   (0 = -40dB, 20 = 0dB)     |&lt;br /&gt;
       |     |Treble/bass       : 0-12   (0 = -12dB, 12 = +12dB)   |&lt;br /&gt;
       |     |Mixer             : 0-3:                             |&lt;br /&gt;
       |     |                         0 = DMA only                |&lt;br /&gt;
       |     |                         1 = DMA + YM2149            |&lt;br /&gt;
       |     |                         2 = DMA only                |&lt;br /&gt;
       |     |                         3 = reserved                |&lt;br /&gt;
       |     |        (there is no DMA + (YM2149 - 12dB) mode!)    |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Procedure: Set mask register to $7ff. Read data      |&lt;br /&gt;
       |     |register and save original value.Write data register.|&lt;br /&gt;
       |     |Compare data register with original value, repeat    |&lt;br /&gt;
       |     |until data register returns to original value to     |&lt;br /&gt;
       |     |ensure data has been sent over the interface.        |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Interrupts: Timer A can be set to interrupt at the   |&lt;br /&gt;
       |     |end of a frame. Alternatively, the GPI7 (MFP mono    |&lt;br /&gt;
       |     |detect) can be used to generate interrupts thereby   |&lt;br /&gt;
       |     |freeing up Timer A. In this case, the active edge    |&lt;br /&gt;
       |     |$FFFA03 must be set by or-ing the active edge of     |&lt;br /&gt;
       |     |$FFFA03 with the contents of $FF8260:                |&lt;br /&gt;
       |     |$FF8260 - 2 (mono)     or.b  #$80 with edge          |&lt;br /&gt;
       |     |$FF8260 - 0,1 (colour) and.b #$7F with edge          |&lt;br /&gt;
       |     |This will generate an interrupt at the START of a    |&lt;br /&gt;
       |     |frame, instead of at the end as with Timer A. To     |&lt;br /&gt;
       |     |generate an interrupt at the END of a frame, simply  |&lt;br /&gt;
       |     |reverse the edge values.                             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon030 DMA/DSP Controllers                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8930|word |Crossbar Source Controller                           |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: A/D Convertor                 BIT 15 14 13 12|&lt;br /&gt;
       |     |1 - Connect, 0 - disconnect ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock (Don't use) -----------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: External Input                BIT 11 10  9  8|&lt;br /&gt;
       |     |0 - DSP IN, 1 - All others ----------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: DSP-XMIT                      BIT  7  6  5  4|&lt;br /&gt;
       |     |0 - Tristate and disconnect DSP -----------+  |  |  ||&lt;br /&gt;
       |     |    (Only for external SSI use)            |  |  |  ||&lt;br /&gt;
       |     |1 - Connect DSP to multiplexer ------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Source: DMA-PLAYBACK                  BIT  3  2  1  0|&lt;br /&gt;
       |     |0 - Handshaking on, dest DSP-REC ----------+  |  |  ||&lt;br /&gt;
       |     |1 - Destination is not DSP-REC ------------'  |  |  ||&lt;br /&gt;
       |     |00 - 25.175Mhz clock -------------------------+--+  ||&lt;br /&gt;
       |     |01 - External clock --------------------------+--+  ||&lt;br /&gt;
       |     |10 - 32Mhz clock -----------------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8932|word |Crossbar Destination Controller                      |R/W (F030)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: D/A Convertor            BIT 15 14 13 12|&lt;br /&gt;
       |     |1 - Connect, 0 - Disconnect ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: External Output          BIT 11 10  9  8|&lt;br /&gt;
       |     |0 - DSP out, 1 - All others ---------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: DSP-RECORD               BIT  7  6  5  4|&lt;br /&gt;
       |     |0 - Tristate and disconnect DSP -----------+  |  |  ||&lt;br /&gt;
       |     |    (Only for external SSI use)            |  |  |  ||&lt;br /&gt;
       |     |1 - Connect DSP to multiplexer ------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Destination: DMA-RECORD               BIT  3  2  1  0|&lt;br /&gt;
       |     |0 - Handshaking on, src DSP-XMIT ----------+  |  |  ||&lt;br /&gt;
       |     |1 - Source is not DSP-XMIT ----------------'  |  |  ||&lt;br /&gt;
       |     |00 - Source DMA-PLAYBACK ---------------------+--+  ||&lt;br /&gt;
       |     |01 - Source DSP-XMIT -------------------------+--+  ||&lt;br /&gt;
       |     |10 - Source External Input -------------------+--+  ||&lt;br /&gt;
       |     |11 - Source A/D Convertor --------------------+--'  ||&lt;br /&gt;
       |     |0 - Handshake on, 1 - Handshake off ----------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8934|byte |Frequency Divider External Clock          BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0000 - STe-Compatible mode                           |&lt;br /&gt;
       |     |0001 - 1111  Divide by 256 and then number           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8935|byte |Frequency Divider Internal Sync           BIT 3 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0000 - STe-Compatible mode   1000 - 10927Hz*         |&lt;br /&gt;
       |     |0001 - 49170Hz               1001 -  9834Hz          |&lt;br /&gt;
       |     |0010 - 32780Hz               1010 -  8940Hz*         |&lt;br /&gt;
       |     |0011 - 24585Hz               1011 -  8195Hz          |&lt;br /&gt;
       |     |0100 - 19668Hz               1100 -  7565Hz*         |&lt;br /&gt;
       |     |0101 - 16390Hz               1101 -  7024Hz*         |&lt;br /&gt;
       |     |0110 - 14049Hz*              1110 -  6556Hz*         |&lt;br /&gt;
       |     |0111 - 12292Hz               1111 -  6146Hz*         |&lt;br /&gt;
       |     |               * - Invalid for CODEC                 |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8936|byte |Record Tracks Select                          BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |00 - Record 1 Track ------------------------------+-+|&lt;br /&gt;
       |     |01 - Record 2 Tracks -----------------------------+-+|&lt;br /&gt;
       |     |10 - Record 3 Tracks -----------------------------+-+|&lt;br /&gt;
       |     |11 - Record 4 Tracks -----------------------------+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8937|byte |CODEC Input Source from 16bit adder           BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |Source: Multiplexer ------------------------------' ||&lt;br /&gt;
       |     |Source: A/D Convertor ------------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8938|byte |CODEC ADC-Input for L+R Channel               BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |0 - Microphone, 1 - Soundchip                     L R|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8939|byte |Channel amplification                   BIT LLLL RRRR|R/W (F030)&lt;br /&gt;
       |     |          Amplification is in +1.5dB steps           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF893A|word |Channel attenuation                     BIT LLLL RRRR|R/W (F030)&lt;br /&gt;
       |     |           Attenuation is in -1.5dB steps            |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF893C|byte |CODEC-Status                                  BIT 1 0|R/W (F030)&lt;br /&gt;
       |     |Left Channel Overflow ----------------------------' ||&lt;br /&gt;
       |     |Right Channel Overflow -----------------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8941|byte |GPx Data Direction                          BIT 2 1 0|R/W (F030)&lt;br /&gt;
       |     |0 - In, 1 - Out --------------------------------+-+-'|&lt;br /&gt;
       |     | For the GP0-GP2 pins on the DSP connector           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8943|byte |GPx Data Port                               BIT 2 1 0|R/W (F030)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############TT Clock Chip (MC146818A @ 32.768 khz)               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8961|byte |Register select                                      |W     (TT)&lt;br /&gt;
       |     |0 - Current Second                                   |&lt;br /&gt;
       |     |1 - Second for alarm                                 |&lt;br /&gt;
       |     |2 - Current Minute                                   |&lt;br /&gt;
       |     |3 - Minute for alarm                                 |&lt;br /&gt;
       |     |4 - Current Hour                                     |&lt;br /&gt;
       |     |5 - Hour for alarm                                   |&lt;br /&gt;
       |     |6 - Day of week (1=Sunday, 2=Monday, 3=...)          |&lt;br /&gt;
       |     |7 - Day of Month                                     |&lt;br /&gt;
       |     |8 - Month                                            |&lt;br /&gt;
       |     |9 - Year (example : '93' for this year)              |&lt;br /&gt;
       |     |A                                               BIT 7|&lt;br /&gt;
       |     |    If set, update time in progress ----------------'|&lt;br /&gt;
       |     |    don't read time &amp;amp; date registers                 |&lt;br /&gt;
       |     |B                                 BIT 7 6 5 4 3 2 1 0|&lt;br /&gt;
       |     |1 = Write Protect time &amp;amp; date --------'   | |   | | ||&lt;br /&gt;
       |     |1 = Enable alarm interrupt ---------------' |   | | ||&lt;br /&gt;
       |     |1 = Interrupt after time updated -----------'   | | ||&lt;br /&gt;
       |     |1 = Format Binary, 0 = Format BCD --------------' | ||&lt;br /&gt;
       |     |1 = 24hr format, 0 = 12hr format -----------------' ||&lt;br /&gt;
       |     |1 = Summer hours, 0 = Winter hours -----------------'|&lt;br /&gt;
       |     |C                                           BIT 6 5 4|&lt;br /&gt;
       |     | ??? -------------------------------------------' | ||&lt;br /&gt;
       |     |1 = alarm is ringing -----------------------------' ||&lt;br /&gt;
       |     |1 = date is updated --------------------------------'|&lt;br /&gt;
       |     |On interrupt, read this register to determine source.|&lt;br /&gt;
       |     |D                                               BIT 7|&lt;br /&gt;
       |     |1 = Battery dead -----------------------------------'|&lt;br /&gt;
$FF8963|byte |Register data                                        |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Blitter (Not present on TT!)                         ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8A00|word |Halftone-RAM, Word 0                                 |R/W (Blit)&lt;br /&gt;
    :  |  :  |    :     :     :  :                                 | :     :&lt;br /&gt;
$FF8A1E|word |Halftone-RAM, Word 15                                |R/W (Blit)&lt;br /&gt;
$FF8A20|word |Source X Increment                      (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A22|word |Source Y Increment                      (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A24|long |Source Address Register                 (24 bit,even)|R/W (Blit)&lt;br /&gt;
$FF8A28|word |Endmask 1                     (First write of a line)|R/W (Blit)&lt;br /&gt;
$FF8A2A|word |Endmask 2                     (All other line writes)|R/W (Blit)&lt;br /&gt;
$FF8A2C|word |Endmask 3                      (Last write of a line)|R/W (Blit)&lt;br /&gt;
$FF8A2E|word |Destination X Increment                 (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A30|word |Destination Y Increment                 (signed,even)|R/W (Blit)&lt;br /&gt;
$FF8A32|long |Destination Address Register            (24 bit,even)|R/W (Blit)&lt;br /&gt;
$FF8A36|word |Words per Line in Bit-Block                 (0=65536)|R/W (Blit)&lt;br /&gt;
$FF8A38|word |Lines per Bit-Block                         (0=65536)|R/W (Blit)&lt;br /&gt;
$FF8A3A|byte |Halftone Operation Register                   BIT 1 0|R/W (Blit)&lt;br /&gt;
       |     |00 - All ones ------------------------------------+-+|&lt;br /&gt;
       |     |01 - Halftone ------------------------------------+-+|&lt;br /&gt;
       |     |10 - Source --------------------------------------+-+|&lt;br /&gt;
       |     |11 - Source AND Halftone -------------------------+-'|&lt;br /&gt;
$FF8A3B|byte |Logical Operation Register                BIT 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |0000 All zeros -------------------------------+-+-+-+|&lt;br /&gt;
       |     |0001 Source AND destination ------------------+-+-+-+|&lt;br /&gt;
       |     |0010 Source AND NOT destination --------------+-+-+-+|&lt;br /&gt;
       |     |0011 Source ----------------------------------+-+-+-+|&lt;br /&gt;
       |     |0100 NOT source AND destination --------------+-+-+-+|&lt;br /&gt;
       |     |0101 Destination -----------------------------+-+-+-+|&lt;br /&gt;
       |     |0110 Source XOR destination ------------------+-+-+-+|&lt;br /&gt;
       |     |0111 Source OR destination -------------------+-+-+-+|&lt;br /&gt;
       |     |1000 NOT source AND NOT destination ----------+-+-+-+|&lt;br /&gt;
       |     |1001 NOT source XOR destination --------------+-+-+-+|&lt;br /&gt;
       |     |1010 NOT destination -------------------------+-+-+-+|&lt;br /&gt;
       |     |1011 Source OR NOT destination ---------------+-+-+-+|&lt;br /&gt;
       |     |1100 NOT source ------------------------------+-+-+-+|&lt;br /&gt;
       |     |1101 NOT source OR destination ---------------+-+-+-+|&lt;br /&gt;
       |     |1110 NOT source OR NOT destination -----------+-+-+-+|&lt;br /&gt;
       |     |1111 All ones --------------------------------+-+-+-'|&lt;br /&gt;
$FF8A3C|byte |Line Number Register              BIT 7 6 5 . 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |BUSY ---------------------------------' | |   | | | ||&lt;br /&gt;
       |     |0 - Share bus, 1 - Hog bus -------------' |   | | | ||&lt;br /&gt;
       |     |SMUDGE mode ------------------------------'   | | | ||&lt;br /&gt;
       |     |Halftone line number -------------------------+-+-+-'|&lt;br /&gt;
$FF8A3D|byte |SKEW Register                     BIT 7 6 . . 3 2 1 0|R/W (Blit)&lt;br /&gt;
       |     |Force eXtra Source Read --------------' |     | | | ||&lt;br /&gt;
       |     |No Final Source Read -------------------'     | | | ||&lt;br /&gt;
       |     |Source skew ----------------------------------+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############SCC-DMA (TT Only!)                                   ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8C01|byte |DMA Address Pointer (Highest Byte)                   |R/W   (TT)&lt;br /&gt;
$FF8C03|byte |DMA Address Pointer (High Byte)                      |R/W   (TT)&lt;br /&gt;
$FF8C05|byte |DMA Address Pointer (Low Byte)                       |R/W   (TT)&lt;br /&gt;
$FF8C07|byte |DMA Address Pointer (Lowest Byte)                    |R/W   (TT)&lt;br /&gt;
$FF8C09|byte |DMA Byte Count (Highest-Byte)                        |R/W   (TT)&lt;br /&gt;
$FF8C0B|byte |DMA Byte Count (High-Byte)                           |R/W   (TT)&lt;br /&gt;
$FF8C0D|byte |DMA Byte Count (Low-Byte)                            |R/W   (TT)&lt;br /&gt;
$FF8C0F|byte |DMA Byte Count (Lowest-Byte)                         |R/W   (TT)&lt;br /&gt;
$FF8C10|word |Residue Data Register (High-Word)                    |R     (TT)&lt;br /&gt;
$FF8C12|word |Residue Data register (Low-Word)                     |R     (TT)&lt;br /&gt;
$FF8C15|byte |Control register                  BIT 7 6 . . . . 1 0|R/W   (TT)&lt;br /&gt;
       |     |Bus error ----------------------------' |         | ||&lt;br /&gt;
       |     |Byte count zero ------------------------'         | ||&lt;br /&gt;
       |     |Enable -------------------------------------------' ||&lt;br /&gt;
       |     |DMA Direction (1 - out to port) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Zilog 8530 SCC (MSTe/TT/F030)                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8C81|byte |Channel A - Control Register                         |R/W  (SCC)&lt;br /&gt;
$FF8C83|byte |Channel A - Data Register                            |R/W  (SCC)&lt;br /&gt;
$FF8C85|byte |Channel B - Control Register                         |R/W  (SCC)&lt;br /&gt;
$FF8C87|byte |Channel B - Data Register                            |R/W  (SCC)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############VME Bus System Control Unit (MSTe/TT)                ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E01|byte |VME sys_mask                      BIT 7 6 5 4 . 2 1 .|R/W  (VME)&lt;br /&gt;
$FF8E03|byte |VME sys_stat                      BIT 7 6 5 4 . 2 1 .|R    (VME)&lt;br /&gt;
       |     |_SYSFAIL in VMEBUS -------------------' | | |   | |  |program&lt;br /&gt;
       |     |MFP ------------------------------------' | |   | |  |autovec&lt;br /&gt;
       |     |SCC --------------------------------------' |   | |  |autovec&lt;br /&gt;
       |     |VSYNC --------------------------------------'   | |  |program&lt;br /&gt;
       |     |HSYNC ------------------------------------------' |  |program&lt;br /&gt;
       |     |System software INT ------------------------------'  |program&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |Reading sys_mask resets pending int-bits in sys_stat,|&lt;br /&gt;
       |     |so read sys_stat first.                              |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E05|byte |VME sys_int                                     BIT 0|R/W  (VME)&lt;br /&gt;
       |     |Setting bit 0 to 1 forces an INT of level 1. INT must|Vector $64&lt;br /&gt;
       |     |be enabled in sys_mask to use it.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E0D|byte |VME vme_mask                      BIT 7 6 5 4 3 2 1 .|R/W  (VME)&lt;br /&gt;
$FF8E0F|byte |VME vme_stat                      BIT 7 6 5 4 3 2 1 .|R    (VME)&lt;br /&gt;
       |     |_IRQ7 from VMEBUS --------------------' | | | | | |  |program&lt;br /&gt;
       |     |_IRQ6 from VMEBUS/MFP ------------------' | | | | |  |program&lt;br /&gt;
       |     |_IRQ5 from VMEBUS/SCC --------------------' | | | |  |program&lt;br /&gt;
       |     |_IRQ4 from VMEBUS --------------------------' | | |  |program&lt;br /&gt;
       |     |_IRQ3 from VMEBUS/soft -----------------------' | |  |prog/autov&lt;br /&gt;
       |     |_IRQ2 from VMEBUS ------------------------------' |  |program&lt;br /&gt;
       |     |_IRQ1 from VMEBUS --------------------------------'  |program&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |MFP-int and SCC-int are hardwired to the VME-BUS-ints|&lt;br /&gt;
       |     |(or'ed). Reading vme_mask resets pending int-bits in |&lt;br /&gt;
       |     |vme_stat, so read vme_stat first.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E07|byte |VME vme_int                                     BIT 0|R/W   (TT)&lt;br /&gt;
       |     |Setting bit 0 to 1 forces an INT of level 3. INT must|Vector $6C&lt;br /&gt;
       |     |be enabled in vme_mask to use it.                    |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E09|byte |General purpose register - does nothing              |R/W   (TT)&lt;br /&gt;
$FF8E0B|byte |General purpose register - does nothing              |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Mega STe Cache/Processor Control                     ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF8E21|byte |Mega STe Cache/Processor Control           BIT 15-1 0|R/W (MSTe)&lt;br /&gt;
       |     |Cache enable lines (set all to 1 to enable) -----'  ||&lt;br /&gt;
       |     |CPU Speed (0 - 8mhz, 1 - 16mhz) --------------------'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############DIP Switches (MSTe/TT)                               ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF9200|byte |DIP Switches (MSTe/TT)           BIT 7 6 5 4 3 2 1 0|R (MSTe/TT)&lt;br /&gt;
       |     |Sound DMA active ---------------------' |           ||&lt;br /&gt;
       |     |Floppy Drive 1.44 HD active ------------'           ||&lt;br /&gt;
       |     |CaTTamaran installed -------------------------------'|&lt;br /&gt;
       |     |                                                     |&lt;br /&gt;
       |     |That register is mirrored by the OS in &amp;quot;_SWI&amp;quot; Cookie |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############STe/F030 Extended Joystick/Lightpen Ports            ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FF9200|word |Fire buttons 1-4                          Bit 3 2 1 0|R    (Ext)&lt;br /&gt;
       |     |Pause/F0 -------------------------------------' | | ||&lt;br /&gt;
       |     |F1 ---------------------------------------------' | ||&lt;br /&gt;
       |     |F2 -----------------------------------------------' ||&lt;br /&gt;
       |     |Option/F3 ------------------------------------------'|&lt;br /&gt;
$FF9202|word |Read Mask (0 - pin read)                             |W    (Ext)&lt;br /&gt;
$FF9202|word |Joystick Inputs                   BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
       |     |Controller 1 pin 4 -------------------' | | | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 3 ---------------------' | | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 2 -----------------------' | | | | ||&lt;br /&gt;
       |     |Controller 1 pin 1 -------------------------' | | | ||&lt;br /&gt;
       |     |Controller 0 pin 4 ---------------------------' | | ||&lt;br /&gt;
       |     |Controller 0 pin 3/Paddle 1 Trigger ------------' | ||&lt;br /&gt;
       |     |Controller 0 pin 2/Paddle 0 Trigger --------------' ||&lt;br /&gt;
       |     |Controller 0 pin 1 ---------------------------------'|&lt;br /&gt;
       |     |                            BIT 15 14 13 12 11 10 9 8|&lt;br /&gt;
       |     |Controller 1 pin 14 ------------'   |  |  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 13 ----------------'  |  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 12 -------------------'  |  |  | | ||&lt;br /&gt;
       |     |Controller 1 pin 11 ----------------------'  |  | | ||&lt;br /&gt;
       |     |Controller 0 pin 14 -------------------------'  | | ||&lt;br /&gt;
       |     |Controller 0 pin 13 ----------------------------' | ||&lt;br /&gt;
       |     |Controller 0 pin 12 ------------------------------' ||&lt;br /&gt;
       |     |Controller 0 pin 11 --------------------------------'|&lt;br /&gt;
$FF9210|word |X Paddle 0 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9212|word |Y Paddle 0 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9214|word |X Paddle 1 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9216|word |Y Paddle 1 Position               BIT 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9220|word |Lightpen X-Position           BIT 9 8 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
$FF9222|word |Lightpen Y-Position           BIT 9 8 7 6 5 4 3 2 1 0|R    (Ext)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon VIDEL Palette Registers                       ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |              BIT 33222222 22221111 11111198 76543210|&lt;br /&gt;
       |     |                  10987654 32109876 543210           |&lt;br /&gt;
       |     |                  RRRRRr.. GGGGGg.. ........ BBBBBb..|&lt;br /&gt;
$FF9800|long |Palette Register  0                   Lowercase = LSB|R/W (F030)&lt;br /&gt;
   :   |  :  |   :        :     :                                  | :     :&lt;br /&gt;
$FF98FC|long |Palette Register 255                                 |R/W (F030)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Falcon DSP Host Interface                            ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFA200|byte |Interrupt Ctrl Register           BIT 7 6 5 4 3 . 1 0|R/W (F030)&lt;br /&gt;
X:$FFE9|     |INIT bit -----------------------------' | | | |   | ||&lt;br /&gt;
       |     |00 - Interupt mode (DMA off) -----------+-+ | |   | ||&lt;br /&gt;
       |     |01 - 24-bit DMA mode -------------------+-+ | |   | ||&lt;br /&gt;
       |     |10 - 16-bit DMA mode -------------------+-+ | |   | ||&lt;br /&gt;
       |     |11 - 8-bit DMA mode --------------------+-' | |   | ||&lt;br /&gt;
       |     |Host Flag 1 --------------------------------' |   | ||&lt;br /&gt;
       |     |Host Flag 0 ----------------------------------'   | ||&lt;br /&gt;
       |     |         Host mode Data transfers:                | ||&lt;br /&gt;
       |     |              Interrupt mode                      | ||&lt;br /&gt;
       |     |00 - No interrupts (Polling) ---------------------+-+|&lt;br /&gt;
       |     |01 - RXDF Request (Interrupt) --------------------+-+|&lt;br /&gt;
       |     |10 - TXDE Request (Interrupt) --------------------+-+|&lt;br /&gt;
       |     |11 - RXDF and TXDE Request (Interrupts) ----------+-+|&lt;br /&gt;
       |     |                 DMA Mode                         | ||&lt;br /&gt;
       |     |00 - No DMA --------------------------------------+-+|&lt;br /&gt;
       |     |01 - DSP to Host Request (RX) --------------------+-+|&lt;br /&gt;
       |     |10 - Host to DSP Request (TX) --------------------+-+|&lt;br /&gt;
       |     |11 - Undefined (Illegal) -------------------------+-'|&lt;br /&gt;
$FFA201|byte |Command Vector Register           BIT 7 . . 4 3 2 1 0|R/W (F030)&lt;br /&gt;
X:$FFE9|     |Host Command Bit (Handshake)----------'     | | | | ||&lt;br /&gt;
       |     |Host Vector (0-31) -------------------------+-+-+-+-'|&lt;br /&gt;
$FFA202|byte |Interrupt Status Reg              BIT 7 6 . 4 3 2 1 0|R   (F030)&lt;br /&gt;
X:$FFE8|     |ISR Host Request ---------------------' |   | | | | ||&lt;br /&gt;
       |     |ISR DMA Status -------------------------'   | | | | ||&lt;br /&gt;
       |     |Host Flag 3 --------------------------------' | | | ||&lt;br /&gt;
       |     |Host Flag 2 ----------------------------------' | | ||&lt;br /&gt;
       |     |ISR Transmitter Ready (TRDY) -------------------' | ||&lt;br /&gt;
       |     |ISR Transmit Data Register Empty (TXDE) ----------' ||&lt;br /&gt;
       |     |ISR Receive Data Register Full (RXDF) --------------'|&lt;br /&gt;
$FFA203|byte |Interrupt Vector Register                            |R/W (F030)&lt;br /&gt;
$FFA204|byte |Unused                                               |    (F030)&lt;br /&gt;
$FFA205|byte |DSP-Word High                                        |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
$FFA206|byte |DSP-Word Mid                                         |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
$FFA207|byte |DSP-Word Low                                         |R/W (F030)&lt;br /&gt;
X:$FFEB|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############MFP 68901 - Multi Function Peripheral Chip           ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
       |     |     MFP Master Clock is 2,457,600 cycles/second     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA01|byte |Parallel Port Data Register                          |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA03|byte |Active Edge Register              BIT 7 6 5 4 . 2 1 0|R/W&lt;br /&gt;
       |     |Monochrome monitor detect ------------' | | | | | | ||&lt;br /&gt;
       |     |RS-232 Ring indicator ------------------' | | | | | ||&lt;br /&gt;
       |     |FDC/HDC interrupt ------------------------' | | | | ||&lt;br /&gt;
       |     |Keyboard/MIDI interrupt --------------------' | | | ||&lt;br /&gt;
       |     |Reserved -------------------------------------' | | ||&lt;br /&gt;
       |     |RS-232 CTS (input) -----------------------------' | ||&lt;br /&gt;
       |     |RS-232 DCD (input) -------------------------------' ||&lt;br /&gt;
       |     |Centronics busy ------------------------------------'|&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |       When port bits are used for input only:       |&lt;br /&gt;
       |     |0 - Interrupt on pin high-low conversion             |&lt;br /&gt;
       |     |1 - Interrupt on pin low-high conversion             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA05|byte |Data Direction                    BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |0 - In, 1 - Out ----------------------+-+-+-+-+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA07|byte |Interrupt Enable A                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0B|byte |Interrupt Pending A               BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0F|byte |Interrupt In-service A            BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA13|byte |Interrupt Mask A                  BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$13C GPI7-Monochrome Detect ----------' | | | | | | ||&lt;br /&gt;
       |     |$138   RS-232 Ring Detector ------------' | | | | | ||&lt;br /&gt;
       |     |$134 (STe sound)    Timer A --------------' | | | | ||&lt;br /&gt;
       |     |$130    Receive buffer full ----------------' | | | ||&lt;br /&gt;
       |     |$12C          Receive error ------------------' | | ||&lt;br /&gt;
       |     |$128      Send buffer empty --------------------' | ||&lt;br /&gt;
       |     |$124             Send error ----------------------' ||&lt;br /&gt;
       |     |$120 (HBL)          Timer B ------------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA09|byte |Interrupt Enable B                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA0D|byte |Interrupt Pending B               BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA11|byte |Interrupt In-service B            BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA15|byte |Interrupt Mask B                  BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$11C                FDC/HDC ----------' | | | | | | ||&lt;br /&gt;
       |     |$118          Keyboard/MIDI ------------' | | | | | ||&lt;br /&gt;
       |     |$114 (200hz clock)  Timer C --------------' | | | | ||&lt;br /&gt;
       |     |$110 (USART timer)  Timer D ----------------' | | | ||&lt;br /&gt;
       |     |$10C           Blitter done ------------------' | | ||&lt;br /&gt;
       |     |$108     RS-232 CTS - input --------------------' | ||&lt;br /&gt;
       |     |$104     RS-232 DCD - input ----------------------' ||&lt;br /&gt;
       |     |$100        Centronics Busy ------------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA17|byte |Vector Register                   BIT 7 6 5 4 3 . . .|R/W&lt;br /&gt;
       |     |Vector Base Offset -------------------+-+-+-' |      |&lt;br /&gt;
       |     |1 - *Software End-interrupt mode -------------+      |&lt;br /&gt;
       |     |0 - Automatic End-interrupt mode -------------'      |&lt;br /&gt;
       |     |* - Default operating mode                           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA19|byte |Timer A Control                         BIT 4 3 2 1 0|R/W&lt;br /&gt;
$FFFA1B|byte |Timer B Control                         BIT 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Reset (force output low) -------------------' | | | ||&lt;br /&gt;
       |     +----------------------------------------------+-+-+-++&lt;br /&gt;
       |     |0000 - Timer stop, no function executed              |&lt;br /&gt;
       |     |0001 - Delay mode, divide by 4                       |&lt;br /&gt;
       |     |0010 -     :           :     10                      |&lt;br /&gt;
       |     |0011 -     :           :     16                      |&lt;br /&gt;
       |     |0100 -     :           :     50                      |&lt;br /&gt;
       |     |0101 -     :           :     64                      |&lt;br /&gt;
       |     |0110 -     :           :     100                     |&lt;br /&gt;
       |     |0111 - Delay mode, divide by 200                     |&lt;br /&gt;
       |     |1000 - Event count mode                              |&lt;br /&gt;
       |     |1xxx - Pulse extension mode, divide as above         |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA1F|byte |Timer A Data                                         |R/W&lt;br /&gt;
$FFFA21|byte |Timer B Data                                         |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA1D|byte |Timer C &amp;amp; D Control                 BIT 6 5 4 . 2 1 0|R/W&lt;br /&gt;
       |     |                                        Timer   Timer|&lt;br /&gt;
       |     |                                          C       D  |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |000 - Timer stop                                     |&lt;br /&gt;
       |     |001 - Delay mode, divide by 4                        |&lt;br /&gt;
       |     |010 -      :           :    10                       |&lt;br /&gt;
       |     |011 -      :           :    16                       |&lt;br /&gt;
       |     |100 -      :           :    50                       |&lt;br /&gt;
       |     |101 -      :           :    64                       |&lt;br /&gt;
       |     |110 -      :           :    100                      |&lt;br /&gt;
       |     |111 - Delay mode, divide by 200                      |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA23|byte |Timer C Data                                         |R/W&lt;br /&gt;
$FFFA25|byte |Timer D Data                                         |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA27|byte |Sync Character                                       |R/W&lt;br /&gt;
$FFFA29|byte |USART Control                     BIT 7 6 5 4 3 2 1 .|R/W&lt;br /&gt;
       |     |Clock divide (1 - div by 16) ---------' | | | | | | ||&lt;br /&gt;
       |     |Word Length 00 - 8 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            01 - 7 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            10 - 6 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            11 - 5 bits ----------------+-' | | | | ||&lt;br /&gt;
       |     |Bits Stop Start Format                      | | | | ||&lt;br /&gt;
       |     |00     0    0   Synchronous ----------------+-+ | | ||&lt;br /&gt;
       |     |01     1    1   Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |10     1    1.5 Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |11     1    2   Asynchronous ---------------+-' | | ||&lt;br /&gt;
       |     |Parity (0 - ignore parity bit) -----------------' | ||&lt;br /&gt;
       |     |Parity (0 - odd parity,1 - even) -----------------' ||&lt;br /&gt;
       |     |Unused ---------------------------------------------'|&lt;br /&gt;
$FFFA2B|byte |Receiver Status                   BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Buffer full --------------------------' | | | | | | ||&lt;br /&gt;
       |     |Overrun error --------------------------' | | | | | ||&lt;br /&gt;
       |     |Parity error -----------------------------' | | | | ||&lt;br /&gt;
       |     |Frame error --------------------------------' | | | ||&lt;br /&gt;
       |     |Found - Search/Break detected ----------------' | | ||&lt;br /&gt;
       |     |Match/Character in progress --------------------' | ||&lt;br /&gt;
       |     |Synchronous strip enable -------------------------' ||&lt;br /&gt;
       |     |Receiver enable bit --------------------------------'|&lt;br /&gt;
$FFFA2D|byte |Transmitter Status                BIT 7 6 5 4 3 2 1 0|R/W&lt;br /&gt;
       |     |Buffer empty -------------------------' | | | | | | ||&lt;br /&gt;
       |     |Underrun error -------------------------' | | | | | ||&lt;br /&gt;
       |     |Auto turnaround --------------------------' | | | | ||&lt;br /&gt;
       |     |End of transmission ------------------------' | | | ||&lt;br /&gt;
       |     |Break ----------------------------------------' | | ||&lt;br /&gt;
       |     |High bit ---------------------------------------' | ||&lt;br /&gt;
       |     |Low bit ------------------------------------------' ||&lt;br /&gt;
       |     |Transmitter enable ---------------------------------'|&lt;br /&gt;
$FFFA2F|byte |USART data                                           |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Floating Point Coprocessor (CIR Interface in MSTe)   ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA40|word |FP_Stat    Response-Register                         |??? (MSTe)&lt;br /&gt;
$FFFA42|word |FP_Ctl     Control-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA44|word |FP_Save    Save-Register                             |??? (MSTe)&lt;br /&gt;
$FFFA46|word |FP_Restor  Restore-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA48|word |                                                     |??? (MSTe)&lt;br /&gt;
$FFFA4A|word |FP_Cmd     Command-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA4E|word |FP_Ccr     Condition-Code-Register                   |??? (MSTe)&lt;br /&gt;
$FFFA50|long |FP_Op      Operand-Register                          |??? (MSTe)&lt;br /&gt;
$FFFA54|word |FP_Selct   Register Select                           |??? (MSTe)&lt;br /&gt;
$FFFA58|long |FP_Iadr    Instruction Address                       |??? (MSTe)&lt;br /&gt;
$FFFA5C|long |           Operand Address                           |??? (MSTe)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############MFP 68901 #2 (MFP2) - TT Only                        ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA81|byte |Parallel Port Data Register                          |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA83|byte |Active Edge Register              BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |       When port bits are used for input only:       |&lt;br /&gt;
       |     |0 - Interrupt on pin high-low conversion             |&lt;br /&gt;
       |     |1 - Interrupt on pin low-high conversion             |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA85|byte |Data Direction                    BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |0 - In, 1 - Out ----------------------+-+-+-+-+-+-+-'|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA87|byte |Interrupt Enable A                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8B|byte |Interrupt Pending A               BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8F|byte |Interrupt In-service A            BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA93|byte |Interrupt Mask A                  BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$17C         TT-SCSI NCR5380 ---------' | | | | | | ||&lt;br /&gt;
       |     |$178         RTC (MC146818A) -----------' | | | | | ||&lt;br /&gt;
       |     |$174                 Timer A -------------' | | | | ||&lt;br /&gt;
       |     |$170     Receive buffer full ---------------' | | | ||&lt;br /&gt;
       |     |$16C           Receive error -----------------' | | ||&lt;br /&gt;
       |     |$168       Send buffer empty -------------------' | ||&lt;br /&gt;
       |     |$164              Send error ---------------------' ||&lt;br /&gt;
       |     |$160                 Timer B -----------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA89|byte |Interrupt Enable B                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA8D|byte |Interrupt Pending B               BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA91|byte |Interrupt In-service B            BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA95|byte |Interrupt Mask B                  BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |MFP Address                           | | | | | | | ||&lt;br /&gt;
       |     |$15C     SCSI DMA Controller ---------' | | | | | | ||&lt;br /&gt;
       |     |$158       (Reserved) GPIP 4 -----------' | | | | | ||&lt;br /&gt;
       |     |$154                 Timer C -------------' | | | | ||&lt;br /&gt;
       |     |$150                 Timer D ---------------' | | | ||&lt;br /&gt;
       |     |$14C    SCC B Ring Indicator -----------------' | | ||&lt;br /&gt;
       |     |$148      SCC DMA Controller -------------------' | ||&lt;br /&gt;
       |     |$144 General Purpose Input 1 ---------------------' ||&lt;br /&gt;
       |     |$140 General Purpose Input 0 -----------------------'|&lt;br /&gt;
       |     |1 - Enable Interrupt            0 - Disable Interrupt|&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA97|byte |Vector Register                   BIT 7 6 5 4 3 . . .|R/W   (TT)&lt;br /&gt;
       |     |Vector Base Offset -------------------+-+-+-' |      |&lt;br /&gt;
       |     |1 - *Software End-interrupt mode -------------+      |&lt;br /&gt;
       |     |0 - Automatic End-interrupt mode -------------'      |&lt;br /&gt;
       |     |* - Default operating mode                           |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA99|byte |Timer A Control                         BIT 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
$FFFA9B|byte |Timer B Control                         BIT 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Reset (force output low) -------------------' | | | ||&lt;br /&gt;
       |     +----------------------------------------------+-+-+-++&lt;br /&gt;
       |     |0000 - Timer stop, no function executed              |&lt;br /&gt;
       |     |0001 - Delay mode, divide by 4                       |&lt;br /&gt;
       |     |0010 -     :           :     10                      |&lt;br /&gt;
       |     |0011 -     :           :     16                      |&lt;br /&gt;
       |     |0100 -     :           :     50                      |&lt;br /&gt;
       |     |0101 -     :           :     64                      |&lt;br /&gt;
       |     |0110 -     :           :     100                     |&lt;br /&gt;
       |     |0111 - Delay mode, divide by 200                     |&lt;br /&gt;
       |     |1000 - Event count mode                              |&lt;br /&gt;
       |     |1xxx - Pulse extension mode, divide as above         |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFA9F|byte |Timer A Data                                         |R/W   (TT)&lt;br /&gt;
$FFFAA1|byte |Timer B Data                                         |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFA9D|byte |Timer C &amp;amp; D Control                 BIT 6 5 4 . 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |                                        Timer   Timer|&lt;br /&gt;
       |     |                                          C       D  |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
       |     |000 - Timer stop                                     |&lt;br /&gt;
       |     |001 - Delay mode, divide by 4                        |&lt;br /&gt;
       |     |010 -      :           :    10                       |&lt;br /&gt;
       |     |011 -      :           :    16                       |&lt;br /&gt;
       |     |100 -      :           :    50                       |&lt;br /&gt;
       |     |101 -      :           :    64                       |&lt;br /&gt;
       |     |110 -      :           :    100                      |&lt;br /&gt;
       |     |111 - Delay mode, divide by 200                      |&lt;br /&gt;
       |     +-----------------------------------------------------+&lt;br /&gt;
$FFFAA3|byte |Timer C Data                                         |R/W   (TT)&lt;br /&gt;
$FFFAA5|byte |Timer D Data                                         |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFAA7|byte |Sync Character                                       |R/W   (TT)&lt;br /&gt;
$FFFAA9|byte |USART Control                     BIT 7 6 5 4 3 2 1 .|R/W   (TT)&lt;br /&gt;
       |     |Clock divide (1 - div by 16) ---------' | | | | | | ||&lt;br /&gt;
       |     |Word Length 00 - 8 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            01 - 7 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            10 - 6 bits ----------------+-+ | | | | ||&lt;br /&gt;
       |     |            11 - 5 bits ----------------+-' | | | | ||&lt;br /&gt;
       |     |Bits Stop Start Format                      | | | | ||&lt;br /&gt;
       |     |00     0    0   Synchronous ----------------+-+ | | ||&lt;br /&gt;
       |     |01     1    1   Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |10     1    1.5 Asynchronous ---------------+-+ | | ||&lt;br /&gt;
       |     |11     1    2   Asynchronous ---------------+-' | | ||&lt;br /&gt;
       |     |Parity (0 - ignore parity bit) -----------------' | ||&lt;br /&gt;
       |     |Parity (0 - odd parity,1 - even) -----------------' ||&lt;br /&gt;
       |     |Unused ---------------------------------------------'|&lt;br /&gt;
$FFFAAB|byte |Receiver Status                   BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Buffer full --------------------------' | | | | | | ||&lt;br /&gt;
       |     |Overrun error --------------------------' | | | | | ||&lt;br /&gt;
       |     |Parity error -----------------------------' | | | | ||&lt;br /&gt;
       |     |Frame error --------------------------------' | | | ||&lt;br /&gt;
       |     |Found - Search/Break detected ----------------' | | ||&lt;br /&gt;
       |     |Match/Character in progress --------------------' | ||&lt;br /&gt;
       |     |Synchronous strip enable -------------------------' ||&lt;br /&gt;
       |     |Receiver enable bit --------------------------------'|&lt;br /&gt;
$FFFAAD|byte |Transmitter Status                BIT 7 6 5 4 3 2 1 0|R/W   (TT)&lt;br /&gt;
       |     |Buffer empty -------------------------' | | | | | | ||&lt;br /&gt;
       |     |Underrun error -------------------------' | | | | | ||&lt;br /&gt;
       |     |Auto turnaround --------------------------' | | | | ||&lt;br /&gt;
       |     |End of transmission ------------------------' | | | ||&lt;br /&gt;
       |     |Break ----------------------------------------' | | ||&lt;br /&gt;
       |     |High bit ---------------------------------------' | ||&lt;br /&gt;
       |     |Low bit ------------------------------------------' ||&lt;br /&gt;
       |     |Transmitter enable ---------------------------------'|&lt;br /&gt;
$FFFAAF|byte |USART data                                           |R/W   (TT)&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############6850 ACIA I/O Chips                                  ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFC00|byte |Keyboard ACIA control             BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Rx Int enable (1 - enable) -----------' | | | | | | ||&lt;br /&gt;
       |     |Tx Interrupts                           | | | | | | ||&lt;br /&gt;
       |     |00 - RTS low, Tx int disable -----------+-+ | | | | ||&lt;br /&gt;
       |     |01 - RTS low, Tx int enable ------------+-+ | | | | ||&lt;br /&gt;
       |     |10 - RTS high, Tx int disable ----------+-+ | | | | ||&lt;br /&gt;
       |     |11 - RTS low, Tx int disable,           | | | | | | ||&lt;br /&gt;
       |     |     Tx a break onto data out ----------+-' | | | | ||&lt;br /&gt;
       |     |Settings                                    | | | | ||&lt;br /&gt;
       |     |000 - 7 bit, even, 2 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |001 - 7 bit, odd, 2 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |010 - 7 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |011 - 7 bit, odd, 1 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |100 - 8 bit, 2 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |101 - 8 bit, 1 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |110 - 8 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |111 - 8 bit, odd, 1 stop bit ---------------+-+-' | ||&lt;br /&gt;
       |     |Clock divide                                      | ||&lt;br /&gt;
       |     |00 - Normal --------------------------------------+-+|&lt;br /&gt;
       |     |01 - Div by 16 -----------------------------------+-+|&lt;br /&gt;
       |     |10 - Div by 64 -----------------------------------+-+|&lt;br /&gt;
       |     |11 - Master reset --------------------------------+-'|&lt;br /&gt;
$FFFC00|byte |Keyboard ACIA control             BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Interrupt request --------------------' | | | | | | ||&lt;br /&gt;
       |     |Parity error ---------------------------' | | | | | ||&lt;br /&gt;
       |     |Rx overrun -------------------------------' | | | | ||&lt;br /&gt;
       |     |Framing error ------------------------------' | | | ||&lt;br /&gt;
       |     |CTS ------------------------------------------' | | ||&lt;br /&gt;
       |     |DCD --------------------------------------------' | ||&lt;br /&gt;
       |     |Tx data register empty ---------------------------' ||&lt;br /&gt;
       |     |Rx data register full ------------------------------'|&lt;br /&gt;
$FFFC02|byte |Keyboard ACIA data                                   |R/W&lt;br /&gt;
$FFFC04|byte |MIDI ACIA control                 BIT 7 6 5 4 3 2 1 0|W&lt;br /&gt;
       |     |Rx Int enable (1 - enable) -----------' | | | | | | ||&lt;br /&gt;
       |     |Tx Interrupts                           | | | | | | ||&lt;br /&gt;
       |     |00 - RTS low, Tx int disable -----------+-+ | | | | ||&lt;br /&gt;
       |     |01 - RTS low, Tx int enable ------------+-+ | | | | ||&lt;br /&gt;
       |     |10 - RTS high, Tx int disable ----------+-+ | | | | ||&lt;br /&gt;
       |     |11 - RTS low, Tx int disable,           | | | | | | ||&lt;br /&gt;
       |     |     Tx a break onto data out ----------+-' | | | | ||&lt;br /&gt;
       |     |Settings                                    | | | | ||&lt;br /&gt;
       |     |000 - 7 bit, even, 2 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |001 - 7 bit, odd, 2 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |010 - 7 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |011 - 7 bit, odd, 1 stop bit ---------------+-+-+ | ||&lt;br /&gt;
       |     |100 - 8 bit, 2 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |101 - 8 bit, 1 stop bit --------------------+-+-+ | ||&lt;br /&gt;
       |     |110 - 8 bit, even, 1 stop bit --------------+-+-+ | ||&lt;br /&gt;
       |     |111 - 8 bit, odd, 1 stop bit ---------------+-+-' | ||&lt;br /&gt;
       |     |Clock divide                                      | ||&lt;br /&gt;
       |     |00 - Normal --------------------------------------+-+|&lt;br /&gt;
       |     |01 - Div by 16 -----------------------------------+-+|&lt;br /&gt;
       |     |10 - Div by 64 -----------------------------------+-+|&lt;br /&gt;
       |     |11 - Master reset --------------------------------+-'|&lt;br /&gt;
$FFFC04|byte |MIDI ACIA control                 BIT 7 6 5 4 3 2 1 0|R&lt;br /&gt;
       |     |Interrupt request --------------------' | | | | | | ||&lt;br /&gt;
       |     |Parity error ---------------------------' | | | | | ||&lt;br /&gt;
       |     |Rx overrun -------------------------------' | | | | ||&lt;br /&gt;
       |     |Framing error ------------------------------' | | | ||&lt;br /&gt;
       |     |CTS ------------------------------------------' | | ||&lt;br /&gt;
       |     |DCD --------------------------------------------' | ||&lt;br /&gt;
       |     |Tx data register empty ---------------------------' ||&lt;br /&gt;
       |     |Rx data register full ------------------------------'|&lt;br /&gt;
$FFFC06|byte |MIDI ACIA data                                       |R/W&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############Realtime Clock                                       ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FFFC21|byte |S_Units                                              |???&lt;br /&gt;
$FFFC23|byte |S_Tens                                               |???&lt;br /&gt;
$FFFC25|byte |M_Units                                              |???&lt;br /&gt;
$FFFC27|byte |M_Tens                                               |???&lt;br /&gt;
$FFFC29|byte |H_Units                                              |???&lt;br /&gt;
$FFFC2B|byte |H_Tens                                               |???&lt;br /&gt;
$FFFC2D|byte |Weekday                                              |???&lt;br /&gt;
$FFFC2F|byte |Day_Units                                            |???&lt;br /&gt;
$FFFC31|byte |Day_Tens                                             |???&lt;br /&gt;
$FFFC33|byte |Mon_Units                                            |???&lt;br /&gt;
$FFFC35|byte |Mon_Tens                                             |???&lt;br /&gt;
$FFFC37|byte |Yr_Units                                             |???&lt;br /&gt;
$FFFC39|byte |Yr_Tens                                              |???&lt;br /&gt;
$FFFC3B|byte |Cl_Mod                                               |???&lt;br /&gt;
$FFFC3D|byte |Cl_Test                                              |???&lt;br /&gt;
$FFFC3F|byte |Cl_Reset                                             |???&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
##############ROM                                                  ###########&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FA0000|     |                                                     |&lt;br /&gt;
    :  |     |128K ROM expansion cartridge port                    |R&lt;br /&gt;
$FBFFFF|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
$FC0000|     |                                                     |&lt;br /&gt;
    :  |     |192K System ROM                                      |R&lt;br /&gt;
$FEFFFF|     |                                                     |&lt;br /&gt;
-------+-----+-----------------------------------------------------+----------&lt;br /&gt;
&lt;br /&gt;
                               Atari 32 bit Memory Map&lt;br /&gt;
&lt;br /&gt;
Addresses           Description&lt;br /&gt;
-------------------+----------------------------------------------------------&lt;br /&gt;
$00000000-$00DFFFFF|ST RAM&lt;br /&gt;
$00E00000-$00EFFFFF|512k TOS ROMs&lt;br /&gt;
$00F00000-$00F9FFFF|Reserved I/O Space&lt;br /&gt;
$00FA0000-$00FBFFFF|128k ROM cartridge expansion port&lt;br /&gt;
$00FC0000-$00FEFFFF|192k System ROM&lt;br /&gt;
$00FF0000-$00FF7FFF|Reserved I/O Space&lt;br /&gt;
$00FF8000-$00FFFFFF|ST/TT I/O&lt;br /&gt;
$01000000-$013FFFFF|TT Fast Ram&lt;br /&gt;
$01400000-$FDFFFFFF|Reserved&lt;br /&gt;
$FE000000-$FEFFFFFF|VME A24/D16&lt;br /&gt;
$FEFF0000-$FEFFFFFF|VME A16/D16&lt;br /&gt;
$FF000000-$FFFFFFFF|ST 24 bit compatible shadow&lt;br /&gt;
$FFD000xx-$FFD000xx|Set FastRAM refresh rate and generate a bus error&lt;br /&gt;
-------------------+----------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
                                   Cookie Jar&lt;br /&gt;
                            Atari &amp;quot;Official&amp;quot; Cookies&lt;br /&gt;
Cookie  Description&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_CPU   | CPU Type                                          Bit 7 6 5 4 3 2 1 0&lt;br /&gt;
       | Processor type is represented in decimal in the lowest byte.&lt;br /&gt;
       | (0 - 68000, 40 - 68040)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_VDO   | Video Type                                                  BIT 17 16&lt;br /&gt;
       | Shifter Type                                                     |  |&lt;br /&gt;
       | 00 - ST ---------------------------------------------------------+--+&lt;br /&gt;
       | 01 - STe --------------------------------------------------------+--+&lt;br /&gt;
       | 10 - TT ---------------------------------------------------------+--+&lt;br /&gt;
       | 11 - Falcon030 --------------------------------------------------+--'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FDC   | Floppy Drive Controller                              BIT 25 24 . 23-0&lt;br /&gt;
       | Floppy Format                                             |  |      |&lt;br /&gt;
       | 00 - DD (Normal floppy interface) ------------------------+--+      |&lt;br /&gt;
       | 01 - HD (1.44 MB with 3.5&amp;quot;) ------------------------------+--+      |&lt;br /&gt;
       | 10 - ED (2.88 MB with 3.5&amp;quot;) ------------------------------+--'      |&lt;br /&gt;
       | Controller ID                                                       |&lt;br /&gt;
       | 0 - No information available                                        |&lt;br /&gt;
       | 'ATC' - Fully compatible interface built in a way that -------------+&lt;br /&gt;
       |         behaves like part of the system.                            |&lt;br /&gt;
       | 'DP1' - &amp;quot;DreamPark Development&amp;quot;, all ID's beginning with -----------'&lt;br /&gt;
       |         &amp;quot;DP&amp;quot; are reserved for Dreampark.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FLK   | File Locking&lt;br /&gt;
       | If present, GEMDOS supports file locking. Value represents version&lt;br /&gt;
       | number of the expansion.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_NET   | Network Type&lt;br /&gt;
       | If present, there is GEMDOS network support. Points to 2 longs:&lt;br /&gt;
       | The first is the ID of the producer, and the second is the version&lt;br /&gt;
       | number.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SLM   | SLM Driver&lt;br /&gt;
       | Diablo-driver for the SLM laser printer. Value points to a&lt;br /&gt;
       | non-documented structure.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_INF   | .INF Patch&lt;br /&gt;
       | When present, STEFIX (patch program for TOS 1.06) is active.&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SND   | Sound Hardware                                        BIT 5 4 3 2 1 0&lt;br /&gt;
       | CodeC (??) -----------------------------------------------' | | | | |&lt;br /&gt;
       | Connection Matrix ------------------------------------------' | | | |&lt;br /&gt;
       | DSP56001 -----------------------------------------------------' | | |&lt;br /&gt;
       | 16 Bit DMA Sound -----------------------------------------------' | |&lt;br /&gt;
       | 8 Bit DMA Sound --------------------------------------------------' |&lt;br /&gt;
       | YM2149 -------------------------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_MCH   | Machine Type                                                BIT 17 16&lt;br /&gt;
       | 00 - ST/Mega ST -------------------------------------------------+--+&lt;br /&gt;
       | 01 - STe &amp;amp; Compatible Machines (See Below) ----------------------+--+&lt;br /&gt;
       | 10 - TT ---------------------------------------------------------+--+&lt;br /&gt;
       | 11 - Falcon030 --------------------------------------------------+--'&lt;br /&gt;
       | STe &amp;amp; Compatible Machines                             BIT 5 4 3 2 1 0&lt;br /&gt;
       | 00000 - STe ----------------------------------------------+-+-+-+-+-+&lt;br /&gt;
       | 00001 - ST Book ------------------------------------------+-+-+-+-+-+&lt;br /&gt;
       | 10000 - Mega STe -----------------------------------------+-+-+-+-+-'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_SWI   | Configuration Switches&lt;br /&gt;
       | State of configuration switches (MSTe/TT only)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FRB   | Fast Ram Buffer&lt;br /&gt;
       | (TT specific) 64k buffer for ACSI DMA&lt;br /&gt;
       | 0 - no buffers assigned    Not 0 - address of FastRam buffer&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_FPU   | FPU Type&lt;br /&gt;
       | Software FPU                                              BIT 3 2 1 0&lt;br /&gt;
       | 68040's internal FPU -----------------------------------------' | | |&lt;br /&gt;
       | 01 - 6888x present ---------------------------------------------+-+ |&lt;br /&gt;
       | 10 - 68881 for sure --------------------------------------------+-+ |&lt;br /&gt;
       | 11 - 68882 for sure --------------------------------------------+-' |&lt;br /&gt;
       | SFP004 present -----------------------------------------------------'&lt;br /&gt;
       | Hardware FPU                                            BIT 11 10 9 8&lt;br /&gt;
       | 68040's internal FPU ----------------------------------------'  | | |&lt;br /&gt;
       | 01 - 6888x present ---------------------------------------------+-+ |&lt;br /&gt;
       | 10 - 68881 for sure --------------------------------------------+-+ |&lt;br /&gt;
       | 11 - 68882 for sure --------------------------------------------+-' |&lt;br /&gt;
       | SFP004 present -----------------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_OOL   | PoolFix&lt;br /&gt;
       | Value corresponds to PoolFix version&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_AKP   | Keyboard/Language Configuration&lt;br /&gt;
       | Keyboard Configuration                                       Bit 15-8&lt;br /&gt;
       | 1 - German   5 - Italian -------------------------------------------+&lt;br /&gt;
       | 2 - French   7 - Swiss French --------------------------------------+&lt;br /&gt;
       | 4 - Spanish  8 - Swiss German --------------------------------------+&lt;br /&gt;
       | All others - English -----------------------------------------------'&lt;br /&gt;
       | Language Configuration                                        BIT 7-0&lt;br /&gt;
       | 1 - German   5 - Italian -------------------------------------------+&lt;br /&gt;
       | 2 - French   7 - Swiss French --------------------------------------+&lt;br /&gt;
       | 4 - Spanish  8 - Swiss German --------------------------------------+&lt;br /&gt;
       | All others - English -----------------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
_IDT   | International Date/Time Format&lt;br /&gt;
       | Time Format                                                    BIT 12&lt;br /&gt;
       | 0 - AM/PM, 1 - 24 hours --------------------------------------------+&lt;br /&gt;
       | Date Format                                                   BIT 9 8&lt;br /&gt;
       | 00 - MMDDYY ------------------------------------------------------+-+&lt;br /&gt;
       | 01 - DDMMYY ------------------------------------------------------+-+&lt;br /&gt;
       | 10 - YYMMDD ------------------------------------------------------+-+&lt;br /&gt;
       | 11 - YYDDMM ------------------------------------------------------+-'&lt;br /&gt;
       | Separator for date                                            BIT 7-0&lt;br /&gt;
       | ASCII Value (i.e. &amp;quot;.&amp;quot; or &amp;quot;/&amp;quot;) --------------------------------------'&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
MiNT   | MiNT&lt;br /&gt;
       | Present if MiNT/MultiTOS is active. Value represents the version&lt;br /&gt;
       | number of the MiNT kernel in hex (0x104 = 1.04)&lt;br /&gt;
-------+----------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Programming]]&lt;br /&gt;
[[Category:Memory Address]]&lt;/div&gt;</summary>
		<author><name>Cyprian</name></author>
	</entry>
</feed>