Small documentation sorting.
Chris Pressey
4 years ago
3 | 3 |
0.12
|
4 | 4 |
----
|
5 | 5 |
|
6 | |
* `copy` is now understood to trash `a`, thus it is not valid to use it in `copy`.
|
|
6 |
* `copy` is now understood to trash `a`, thus it is not valid to use `a` in `copy`.
|
7 | 7 |
To compensate, indirect addressing is supported in `ld` and `st`, for example,
|
8 | 8 |
as `ld a, [ptr] + y` and `st a, [ptr] + y`.
|
9 | 9 |
* Implements the "union rule for trashes" when analyzing `if` blocks.
|
10 | 10 |
* Even if we `goto` another routine, we can't trash an output.
|
11 | 11 |
* `static` storage locations local to routines can now be defined within routines.
|
12 | |
* Small grammar changes that obviate:
|
13 | |
* the need for parentheses in the type expression `vector (routine ...) table`#
|
14 | |
* the need for `forward` in forward references in source of `copy` instruction
|
|
12 |
* Small grammar changes that obviate the need for:
|
|
13 |
* the parentheses in type expressions like `vector (routine ...) table[256]`
|
|
14 |
* the `forward` keyword in forward references in source of `copy` instruction
|
15 | 15 |
* Fixed bug where `trash` was not marking the location as being virtually altered.
|
16 | 16 |
|
17 | 17 |
0.11
|
38 | 38 |
TODO
|
39 | 39 |
----
|
40 | 40 |
|
41 | |
### `low` and `high` address operators
|
42 | |
|
43 | |
To turn `word` type into `byte`.
|
44 | |
|
45 | 41 |
### Save registers on stack
|
46 | 42 |
|
47 | 43 |
This preserves them, so that, semantically, they can be used later even though they
|
|
65 | 61 |
|
66 | 62 |
### And at some point...
|
67 | 63 |
|
|
64 |
* `low` and `high` address operators - to turn `word` type into `byte`.
|
68 | 65 |
* `const`s that can be used in defining the size of tables, etc.
|
69 | 66 |
* Tests, and implementation, ensuring a routine can be assigned to a vector of "wider" type
|
|
67 |
* Related: can we simply view a (small) part of a buffer as a byte table? If not, why not?
|
70 | 68 |
* Check that the buffer being read or written to through pointer, appears in approporiate inputs or outputs set.
|
71 | 69 |
(Associate each pointer with the buffer it points into.)
|
72 | 70 |
* `static` pointers -- currently not possible because pointers must be zero-page, thus `@`, thus uninitialized.
|