2020-03-31 22:41:08 +11:00
|
|
|
# The Symbol Guide
|
|
|
|
|
2020-04-01 03:52:24 +11:00
|
|
|
## lexCrunch commands
|
|
|
|
|
2020-03-31 22:41:08 +11:00
|
|
|
The following prefixes are really special,
|
|
|
|
and are lexcrunch's responsibility:
|
|
|
|
|
|
|
|
"$$THING" : These are defines.
|
|
|
|
"$Thing" : Writes a global into stream. If not already allocated, is allocated a global.
|
|
|
|
|
|
|
|
"${" : Opens a frame.
|
|
|
|
"$}" : Closes a frame. (Attached temps are released.)
|
|
|
|
"$L|THING" : Allocates THING from temp pool, attaches to stack frame, writes to stream.
|
2020-04-01 01:01:46 +11:00
|
|
|
Use inside a comment to erase the written symbol
|
2020-03-31 22:41:08 +11:00
|
|
|
|
2020-04-01 03:52:24 +11:00
|
|
|
## Conventions
|
|
|
|
|
2020-03-31 22:41:08 +11:00
|
|
|
The rest are convention:
|
|
|
|
"$iThing" symbols are Installer Wrapper.
|
|
|
|
"$icThing" symbols are Installer Core.
|
|
|
|
"$dfThing" symbols are DEFLATE Engine.
|
|
|
|
"$bdThing" symbols are BDIVIDE Engine.
|
|
|
|
|
|
|
|
"$a0", "$a1", etc. are Local Symbols.
|
2020-04-01 01:01:46 +11:00
|
|
|
DEPRECATED, THESE ARE AN OLD MECHANISM, USE FRAMED TEMPS INSTEAD.
|
2020-03-31 22:41:08 +11:00
|
|
|
These are reserved only for use in locals.
|
|
|
|
(For loops count.)
|
|
|
|
|
|
|
|
"$lThing" symbols are used to name Local Symbols using aliases.
|
|
|
|
|
2020-04-01 01:01:46 +11:00
|
|
|
NO THEY ARE NOW USED FOR ALL TEMPS, INCLUDING LOCAL SYMBOLS
|
|
|
|
|