Update readme

This commit is contained in:
lash 2023-04-03 09:18:04 +01:00
parent ac3eacbf74
commit 1c11e5881a
Signed by untrusted user who does not match committer: lash
GPG Key ID: 21D2E7BB88C2A746

View File

@ -20,7 +20,8 @@ The VM defines the following opcode symbols:
* `INCMP <arg> <symbol>` - Compare registered input to `arg`. If match, it has the same side-effects as `MOVE`. In addition, any consecutive `INCMP` matches will be ignored until `HALT` is called. * `INCMP <arg> <symbol>` - Compare registered input to `arg`. If match, it has the same side-effects as `MOVE`. In addition, any consecutive `INCMP` matches will be ignored until `HALT` is called.
* `MSIZE <max> <min>` - Set min and max display size of menu part to `num` bytes. * `MSIZE <max> <min>` - Set min and max display size of menu part to `num` bytes.
* `MOUT <choice> <display>` - Add menu display entry. Each entry should have a matching `INCMP` whose `arg` matches `choice`. `display` is a descriptive text of the menu item. * `MOUT <choice> <display>` - Add menu display entry. Each entry should have a matching `INCMP` whose `arg` matches `choice`. `display` is a descriptive text of the menu item.
* `MSEP <choice> <display> <direction>` - Define how to display a menu separator, when browsing menus that are too long. Direction `0` is forward, `>0` is backward. If a `>0` value is not defined, no previous step will be available. * `MNEXT <choice> <display>` - Define how to display the choice for advancing when browsing menu.
* `MPREV <choice> <display>` - Define how to display the choice for returning when browsing menu.
### External code ### External code
@ -100,6 +101,11 @@ Menus too long for a single screen should be browseable through separate screens
When browsing additional menu pages, the template output should not be included. When browsing additional menu pages, the template output should not be included.
### Menu defaults
Browsing menu display definitions (`MNEXT`, `MPREV`) as well as size constaints (`MSIZE`) should have sane defaults defined by the assembler if they are missing from the assembly code.
### Multipage support ### Multipage support
Multipage outputs, like listings, are handled using the _sink_ output constraints: Multipage outputs, like listings, are handled using the _sink_ output constraints: