diff options
| author | eunhhu <[email protected]> | 2026-09-25 12:58:38 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-09-25 12:58:38 +0100 |
| commit | d5c5ed788888423e7d1e7552a7dc6a59af97de36 (patch) | |
| tree | f657a819a8f3f0554ddc62e16d4fa1864cfbf89e | |
| parent | a2a430f6c2d973232a4e995133b372ba877558cf (diff) | |
| download | pure-d5c5ed788888423e7d1e7552a7dc6a59af97de36.tar.gz pure-d5c5ed788888423e7d1e7552a7dc6a59af97de36.zip | |
Allow 32 inputs per module
A text editor needs more keys than the workbench-era limit of 8: typing,
four arrows, Backspace, Delete, Home, End and a mark already make 10. Event
numbers stay 1 + 2i and 2 + 2i; the module grows by the input name tables.
| -rw-r--r-- | docs/design/008-module-format.md | 2 | ||||
| -rw-r--r-- | prototypes/connections/module.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/docs/design/008-module-format.md b/docs/design/008-module-format.md index 4286ceb..684f5f7 100644 --- a/docs/design/008-module-format.md +++ b/docs/design/008-module-format.md @@ -81,7 +81,7 @@ v3은 **text 상태와 커서**, text 상수, text 입력, text 보기를 더한 ## 로드할 때 검증하는 것 -- 머리말, 예약 바이트, 명령 패딩이 0인지. 한도(상태 32, 입력 8, 보기 24, 핸들러 64, 명령 512, +- 머리말, 예약 바이트, 명령 패딩이 0인지. 한도(상태 32, 입력 32, 보기 24, 핸들러 64, 명령 512, 필드 32, 컬렉션 1, 문자열 32 KiB)와 정확한 파일 크기. - 이름은 ASCII 식별자 1–31바이트이고, 상태·컬렉션·입력·보기가 한 이름공간을 쓴다. 필드 이름은 메시지 안에서 유일하다. 키 입력의 키는 정해진 목록(`Space Enter` 화살표 `Backspace Delete Home End Tab Escape PageUp PageDown KeyA–Z Digit0–9`) diff --git a/prototypes/connections/module.h b/prototypes/connections/module.h index e66f6dd..c728fa8 100644 --- a/prototypes/connections/module.h +++ b/prototypes/connections/module.h @@ -12,7 +12,7 @@ * operand types (including which text a cursor belongs to), stack heights, * forward-only branches, names, constants and effects. */ enum { - PURE_MODULE_STATES = 32, PURE_MODULE_INPUTS = 8, PURE_MODULE_VIEWS = 24, + PURE_MODULE_STATES = 32, PURE_MODULE_INPUTS = 32, PURE_MODULE_VIEWS = 24, PURE_MODULE_HANDLERS = 64, PURE_MODULE_CODE = 512, PURE_MODULE_STACK = 64, PURE_MODULE_NAME = 32, PURE_MODULE_STRINGS = 32768, PURE_MODULE_HEADER = 40, PURE_MODULE_FIELDS = 32, PURE_MODULE_COLLECTIONS = 1, PURE_MODULE_CONSTANTS = 64, |
