diff --git a/README.md b/README.md index 3ce29ff..7e007a2 100644 --- a/README.md +++ b/README.md @@ -10,32 +10,34 @@ cc uxn.c -std=c89 -Os -DNDEBUG -g0 -s -Wall -Wno-unknown-pragmas -o uxn ## Assembly Syntax -- `:label`, a named offset +- `:label`, a named address - `+literal`, a numeric value - `.pointer`, pointer to a label ``` -< comment > +< conditionals > -+01 < literal > ++03 +02 ADD ++05 EQU -[ 01 02 03 04 ] < block of literals > +.there JMQ -$01 < pointer8 > +:here + < when not equal > + +ee + BRK -{ 01 02 03 04 } < block of pointer8 > - -~ff0f < pointer16 > - -( ff00 ff01 ff02 ff03 ) < block of pointer16 > - -=const +ff - -:label ADD RTS +:there + < when is equal > + +ff + BRK ``` ## Mission +- constants +- variables +- A Three-Way Decision Routine(http://www.6502.org/tutorials/compare_instructions.html) - Carry flag? - Loop - Pointers/Literals @@ -44,9 +46,6 @@ $01 < pointer8 > - Detect mouse click - 16 bits addressing - jumping to subroutine should be relative - -## TODOs - - Implement addressing - Implement 16 bits operations - Jumps should be relative