Fixes/changes: some bugfixes esp. in the setevar() and initialize() functions Fixed (completely rewrote) processing of varname in commandline (now it works as it should have). New features: 1) New command AL (ALias) by request of Stuart Axon: al alone will display the aliases that are set. al alias will clear the alias "alias" if it is set al alias real command. DOG will check for the first word on the command line, if it is an alias, if it is it will replace the alias with the "real command". DOG will do recursive aliases up to 20 levels of recursion. This is to avoid unlimited recusrion if you have set Foo=BAR and BAR=FOO you could potentially end up in an infinite loop if you say foo or bar. -A will set the size of the alias block (default is 256 bytes) Remade the DOG int D0 functions. Here are the new specs: Int D0 ****** DOG - Get version AH = 01h Return: AX = Version Notes: Version is built up like this: A H A L --- --- | | | | | | | +-- code maturity allways one of a (=alpha), b (=beta) OR f (=final) | | +---- Patchlevel | +------- Minor version +--------- Major version (this implies that the maximum version for DOG is 15.15.15f ;) ------ DOG - Get internal variables: Call with: AH = 02h AL = what variable AL=01 Returns DX = environment segment ;ES:BX points to envseg variable AL=02 Returns DX = alias segment ; ES:BX points to aliasseg variable AL=03 Returns CX = number of strings; ES:BX points to commands AL=04 Returns CX = number of strings; ES:BX points to ext_commands AL=05 Returns CX = number of strings; ES:BX points to commands_des AL=06 Returns CX = number of strings; ES:BX pointsto ext_commands_des AL=07 Returns ES:BX points to bf (first bf param block)