| Age | Commit message (Collapse) | Author | 
|---|
|  | A negative number under 2s complement can never be equal to its
positive as the top bit *must* be on.  If two numbers are equivalent
bit-by-bit then they are equal for both signed and unsigned numbers. | 
|  | This pushes a datum of the same type as the operands, which is why it
cannot use the comparator macro as that always pushes bytes. | 
|  | Anything other than char (which can just use print.byte to print the
hex) and byte (which prints hexes anyway), all other types may be
forced to print a hex rather than a number if PRINT_HEX is 1. | 
|  | I've made a single macro which defines a function through some common
metric, removing code duplication.  Not particularly readable per se,
but using a macro expansion in your IDE allows one to inspect the code. | 
|  | These new members are just signed versions of the previous members.
This makes type punning and usage for signed versions easier than
before (no need for memcpy). | 
|  |  | 
|  | So much reused code, I definitely need to find a way to make this cleaner. | 
|  |  | 
|  | As it has no dependencies on vm specifically, and it's more necessary
for any vendors who wish to target the virtual machine, it makes more
sense for inst to be a lib module rather than a vm module. | 
|  | Just need to call their unsigned versions.
All comparators should push bytes as it makes return types uniform. | 
|  | otherwise
Changed VERBOSE checks to ensure a degree of information. | 
|  | Will cause error if used currently, which is fine. | 
|  | Comparing signed and unsigned versions of numbers.  Same for EQ as
well.
Notice the irregular pattern of BYTE, CHAR, INT, HWORD,LONG,WORD as
OPCODE_IS_TYPE requires the subcodes to be surrounded by BYTE and
WORD. | 
|  | Prints useful and pretty messages when verbose being at least 1. | 
|  |  | 
|  | This is due to checking for equality instead of just greater than in
darr->used against darr->available. | 
|  | This is an easy fix. | 
|  | Doesn't make sense for them to be in the VM module when they have a
more general purpose now. | 
|  | Also prints a usage for incorrect usage. | 
|  | Easier to write includes now just using < with the module name, in
comparison to using relative paths. | 
|  |  | 
|  |  | 
|  | Changed folder names for sake of clarity (will be introducing a new
build target soon), and Makefile can now easily support more targets. |