]> git.xonotic.org Git - xonotic/gmqcc.git/blobdiff - README
All code is now C89/C90 compat
[xonotic/gmqcc.git] / README
diff --git a/README b/README
index f18d3b001d948531ecd991e7316fe5e912a308c5..7b5181e9afc12117d7750b05161ec1d2d48eb0ca 100644 (file)
--- a/README
+++ b/README
@@ -76,6 +76,12 @@ Comments:
        that you'd like to be ignored by the assembler. You can only comment
        blank lines, and not lines assembly already exists on.
        
        that you'd like to be ignored by the assembler. You can only comment
        blank lines, and not lines assembly already exists on.
        
+       Examples:
+               ; this is allowed
+               # as is this
+               FLOAT: foo 1 ; this is not allowed
+               FLOAT: bar 2 # neither is this
+       
 Functions:
        Creating functions is the same as declaring a constant, simply use
        FUNCTION followed by a colon, and the name (white space doesn't matter)
 Functions:
        Creating functions is the same as declaring a constant, simply use
        FUNCTION followed by a colon, and the name (white space doesn't matter)
@@ -96,7 +102,7 @@ Internal:
        The Quake engine provides some internal functions such as print, to
        access these you first must declare them and their names. To do this
        you create a FUNCTION as you currently do. Adding a $ followed by the
        The Quake engine provides some internal functions such as print, to
        access these you first must declare them and their names. To do this
        you create a FUNCTION as you currently do. Adding a $ followed by the
-       number of the engine builtin will bind it to that builtin.
+       number of the engine builtin (negated).
        
        Examples:
                FUNCTION: print $4
        
        Examples:
                FUNCTION: print $4
@@ -115,7 +121,37 @@ Misc:
        and signs (+, -) however.
        
        Constants cannot be assigned values of other constants, their value must
        and signs (+, -) however.
        
        Constants cannot be assigned values of other constants, their value must
-       be fully expressed inspot of the declration.
+       be fully expressed inspot of the declartion.
        
        No two identifiers can be the same name, this applies for variables allocated
        inside a function scope (despite it being considered local).
        
        No two identifiers can be the same name, this applies for variables allocated
        inside a function scope (despite it being considered local).
+       
+       There exists one other keyword that is considered sugar, and that
+       is AUTHOR, this keyword will allow you to speciy the AUTHOR(S) of
+       the assembly being assembled. The string represented for each usage
+       of AUTHOR is wrote to the end of the string table. Simaler to the
+       usage of constants and functions the AUTHOR keyword must be proceeded
+       by a colon.
+       
+       Examples:
+               AUTHOR: "Dale Weiler"
+               AUTHOR: "John Doe"
+               
+       Colons exist for the sole reason of not having to use spaces after
+       keyword usage (however spaces are allowed).  To understand the
+       following examples below are equivlent.
+       
+       Example 1:
+               FLOAT:foo 1
+       Example 2:
+               FLOAT: foo 1
+       Example 3:
+               FLOAT:  foo 2
+               
+       variable amounts of whitespace is allowed anywhere (as it should be).
+       think of `:` as a delimiter (which is what it's used for during assembly).
+       
+////////////////////////////////////////////////////////////////////////
+/////////////////////// Quake C Documentation //////////////////////////
+////////////////////////////////////////////////////////////////////////
+TODO ....