84PCE:Wait States
From WikiTI
Revision as of 15:10, 5 April 2015 by Calc84maniac (Talk | contribs)
Synopsis
The eZ80 processor is able to perform a memory access in a single cycle. However, on the TI-84+CE, accesses will actually take longer due to wait states. For example, a read from RAM will take 4 cycles, because it has 3 wait states. The wait states for Flash accesses can be customized, but it is unknown whether that is the case for other memory regions.
Wait State Layout
Address Range | Read | Write | Description |
000000-3FFFFF | 5+ | Crash | Flash wait states are controlled by 1005, adding to the minimum of 5. |
400000-7FFFFF | 257 | Crash | Unmapped address space. Can be mapped to Flash using 1002, after which Flash wait states are active. |
800000-CFFFFF | 257 | 257 | Unmapped address space. |
D00000-D3FFFF | 3 | 1 | RAM |
D40000-D657FF | 3 | 1 | VRAM |
D65800-D7FFFF | 3 | 1 | Unmapped address space. Reads garbage. |
D80000-DFFFFF | 3 | 1 | Mirror of D00000-D3FFFF |
E00000-E0FFFF | 1 | 1 | Memory-mapped port range 1000 (mirrored every 0100 bytes) |
E10000-E1FFFF | 1 | 1 | Memory-mapped port range 2000 (reads all zeros) |
E20000-E2FFFF | 3 | 3 | Memory-mapped port range 3000 (mirrored every 0200 bytes) |
E30000-E3FFFF | 2 | 1 | Memory-mapped port range 4000 (mirrored every 10000 bytes) |
E40000-EFFFFF | 1 | 1 | Unmapped port range (reads all zeros) |
F00000-F0FFFF | 2 | 2 | Memory-mapped port range 5000 (mirrored every 0100 bytes) |
F10000-F1FFFF | 2 | 2 | Memory-mapped port range 6000 (mirrored every 0020 bytes) |
F20000-F2FFFF | 2 | 2 | Memory-mapped port range 7000 (mirrored every 0100 bytes) |
F30000-F3FFFF | 2 | 2 | Memory-mapped port range 8000 (mirrored every 0080 bytes) |
F40000-F4FFFF | 2 | 2 | Memory-mapped port range 9000 (mirrored every 10000 bytes) |
F50000-F5FFFF | 2 | 2 | Memory-mapped port range A000 (mirrored every 0080 bytes) |
F60000-F6FFFF | 2 | 2 | Memory-mapped port range B000 (mirrored every 10000 bytes) |
F70000-F7FFFF | 2 | 2 | Memory-mapped port range C000 (mirrored every 0100 bytes) |
F80000-F8FFFF | 2 | 2 | Memory-mapped port range D000 (mirrored every 0080 bytes) |
F90000-F9FFFF | 2 | 2 | Memory-mapped port range E000 (mirrored every 0080 bytes) |
FA0000-FAFFFF | 2 | 2 | Memory-mapped port range F000 (reads all zeros) |
FB0000-FEFFFF | 2 | 2 | Unmapped port range (reads all zeros) |
FF0000-FFFFFF | 1 | 1 | Unmapped port range (reads all zeros) |