User Tools

Site Tools


base:memory_management

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
base:memory_management [2018-05-29 02:38] white_flamebase:memory_management [2019-04-10 03:12] – changed start of ram from 0000 to 0002 white_flame
Line 8: Line 8:
  
 ^Name ^Bit ^Region ^0 ^1 ^Notes^ ^Name ^Bit ^Region ^0 ^1 ^Notes^
-|LORAM|0|$A000-BFFF|RAM|BASIC|If KERNAL isn't mapped in, then BASIC won't map in either and this area stays as RAM.|+|LORAM|0|$A000-BFFF|RAM|BASIC|If KERNAL isn't mapped in, then BASIC won't map in either and this region stays mapped to RAM.|
 |HIRAM|1|$E000-FFFF|RAM|KERNAL| | |HIRAM|1|$E000-FFFF|RAM|KERNAL| |
-|CHAREN|2|$D000-DFFF|CHARROM|I/O|If HIRAM and LORAM are both set to 0, then this bit is ignored and the area maps to RAM. This allows for 3 mappings of this area: RAM, CHARROM, or I/O.|+|CHAREN|2|$D000-DFFF|CHARROM|I/O|If HIRAM and LORAM are both set to 0, then this bit is ignored and the area also maps to RAM. This allows for 3 mappings of this region: RAM, CHARROM, or I/O.|
  
-  * All other memory locations ($0000-9FFF, $C000-CFFF) always map to RAM. +  * All other memory locations ($0002-9FFF, $C000-CFFF) always map to RAM. 
-  * Writes to a ROM-mapped area affect the underlying RAM at the same address. +  * Writes to a ROM-mapped region are applied to the underlying RAM at the same address
-  * The VIC-II sees always the CHARROM at $1000-1FFF and $9000-9FFF, and RAM everywhere else, regardless of these bits.+  * I/O includes the registers for the VIC-II, SID, and CIA chips; color RAM; and two external I/O pages that reach out the expansion port
 +  * The VIC-II always sees the CHARROM at $1000-1FFF and $9000-9FFF, and RAM everywhere else, regardless of these bits.
  
 The mappings from combining these 3 bits are listed below.  Higher bits of location $01 are used for other purposes and default to %00110xxx. The mappings from combining these 3 bits are listed below.  Higher bits of location $01 are used for other purposes and default to %00110xxx.
Line 29: Line 30:
 |$37 +55 %111 |BASIC |I/O |KERNAL|Default| |$37 +55 %111 |BASIC |I/O |KERNAL|Default|
  
-The cartridge port also has the GAME and EXROM pins, which meddle with the memory map even further.  See the Programmer's Reference Guide information for that.+The cartridge port also has the GAME and EXROM pins, which meddle with the memory map even further.  See the Programmer's Reference Guide for that.
  
 - White Flame - White Flame
base/memory_management.txt · Last modified: 2022-04-17 05:36 by white_flame