forked from TCShenanigans/symphony_stdlib
start memory documentation
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
# Memory Map
|
||||
|
||||
To not have to allocate a ton of things at run time the Standard Library uses a static memory map for some purposes
|
||||
|
||||
## Overview
|
||||
|
||||
| Address Range | Use |
|
||||
| ---- | ---- |
|
||||
| `0x0:0x15` | Reset Vector |
|
||||
| `0x16:0xFF` | Zero |
|
||||
| `0x100:(user code end)` | User Code |
|
||||
| `(User code end + 1):0xFFFF` | Library Code |
|
||||
| `0xXXF0_0000:0xXXFF_FFFF` | Stack |
|
||||
|
||||
## Zero Page
|
||||
Some values are needed not often enough to get their own special register, but often enough that it makes sense to keep them at a quickly accessible location.
|
||||
This is what the zero page is for. its position in memory allows us to load them into a register with a single instruction.
|
||||
|
||||
Reference in New Issue
Block a user