Update
This commit is contained in:
parent
6766c52da6
commit
14fc271097
9 changed files with 158 additions and 10 deletions
5
uxn.md
5
uxn.md
|
@ -16,8 +16,9 @@ Here is a kind of concise sum up of uxn "ecosystem"/terminology/specs/etc.:
|
|||
- so called *one page computer* (can implement itself in at most 500 lines of own assembly)
|
||||
- has **2 circular [stacks](stack.md)**: working stack and return stack, each one has size of 256 bytes.
|
||||
- **memory**: total size 64 kb, memory map is following:
|
||||
- 16 varvara devices, each one taking 16 bytes.
|
||||
- 16 varvara devices, each one taking 16 bytes: the whole device section is called a **page**, the bytes inside it are called **ports**. A port that holds a [callback](callback.md) address is called **vector** (e.g. a mouse device will have a vector for *mouse click* callback).
|
||||
- address 256: start of program instructions.
|
||||
- extensible with so called *banks*.
|
||||
- **instructions**: Each one takes 8 bits. Every value is a valid instruction. Instruction format is following:
|
||||
- lowest 5 bits: instruction [opcode](opcode.md) (i.e. there are 32 instructions in total)
|
||||
- following bit (*2*): if set, instruction works with 16 bit shorts (otherwise it works with 8 bit bytes).
|
||||
|
@ -32,7 +33,7 @@ Here is a kind of concise sum up of uxn "ecosystem"/terminology/specs/etc.:
|
|||
- **[rom](rom.md)**: Compiled binary executable that can be directly run by an *uxn CPU*. The rom files have `.rom` extension.
|
||||
- **varvara**: A device, "frontend", peripheral that's connected to *uxn CPU* to perform [input/output](io.md), for example a screen, keyboard or terminal.
|
||||
|
||||
TODO: vectors, subroutines, ...
|
||||
TODO: subroutines, ...
|
||||
|
||||
## See Also
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue