aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreunhhu <[email protected]>2026-09-25 12:58:38 +0100
committereunhhu <[email protected]>2026-09-25 12:58:38 +0100
commitd5c5ed788888423e7d1e7552a7dc6a59af97de36 (patch)
treef657a819a8f3f0554ddc62e16d4fa1864cfbf89e
parenta2a430f6c2d973232a4e995133b372ba877558cf (diff)
downloadpure-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.md2
-rw-r--r--prototypes/connections/module.h2
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,