,---------------. | Contributions | `---------------´ ,------------------------------------------ | 2023-06-13 11:34:41 deadmarshal wrote: | example - | see: https://forth-standard.org/standard/core/ERASE#contribution-300 `------------------------------------------ Usage Example: ``` 10 constant N variable counts N allot counts N erase counts N dump ``` ,---------. | Replies | `---------´ ,------------------------------------------ | 2023-06-09 02:31:22 MitraArdron replies: | proposal - 2C! and 2C@ | see: https://forth-standard.org/proposals/2c-and-2c-#reply-1022 `------------------------------------------ You say `There are Forth words that handle 64-bit values, 32-bit values, 8-bit values but not 16-bit values.`. I'm curious - what words do you have in mind. [2!](https://forth-standard.org/standard/core/TwoStore) and [2@](https://forth-standard.org/standard/core/TwoFetch) work on `cell pairs` and the size of a cell is system dependent. In my [WebForth] for example in the ESP8266 you set `#define CELLL 4` to work on 32 bit cells, in which case [2@](https://forth-standard.org/standard/core/TwoFetch) fetches 64 bits but in Arduino you set `#define CELLL 2` to work on 16 bit cells in which case [2@](https://forth-standard.org/standard/core/TwoFetch) fetches 32 bits. For system programing it would be dangerous to use @ ! 2@ and 2! unless you knew for sure how this mapped to the underlying system architecture. ,------------------------------------------ | 2023-06-09 06:04:28 AntonErtl replies: | proposal - 2C! and 2C@ | see: https://forth-standard.org/proposals/2c-and-2c-#reply-1023 `------------------------------------------ Common practice for reading and writing 16-bit values is `w@` ( addr -- u ) and `w!` ( x addr -- ). We have been discussing standardizing these and related words for many years, maybe we will get around to it at some point.