magic/extflat
Intubun 9dcb9681f6 Wire up headless / WASM mode at module boundaries
Glue between the null display driver and the rest of Magic so that
running with -d null does not require any process-level resources
(signals, timers, stdin, an X display, or a Tcl interpreter).

* utils/signals.c — gate setitimer, fcntl-based file watches, kill
  and the legacy sigsetmask/sigaction setup behind #ifdef
  __EMSCRIPTEN__. Every signals path becomes a no-op in WASM.
  Also fixes DBWriteBackup() being called with one argument when
  its real prototype takes three.

* windows/windDisp.c — WindUpdate() returns immediately when
  GrDisplayStatus == DISPLAY_SUSPEND. This is the runtime
  counterpart to the null driver's DISPLAY_SUSPEND state.

* extflat/EFargs.c — EFArgs() with a missing input name no longer
  jumps to "usage:" in headless WASM (which would call MainExit and
  kill the process); it sets *err_result and returns NULL so the
  caller can decide what to do. Native MAGIC_WRAPPER and native
  non-MAGIC_WRAPPER builds keep their original behavior.

* dbwind/DBWcommands.c — registers exttosim / ext2sim / exttospice /
  ext2spice in non-MAGIC_WRAPPER builds. Without this, WASM users
  could not invoke these commands at all (they were previously
  inside an #ifdef MAGIC_WRAPPER block). The C implementations
  (CmdExtToSim / CmdExtToSpice) are linked unconditionally outside
  modular builds.

* textio/txCommands.c, textio/textio.h — TxDispatchString(), a new
  library-style command entry point that parses a single string,
  dispatches it through WindSendCommand and returns a status code.
  This is what magic_wasm_run_command() calls from JavaScript.
2026-05-06 09:58:20 +02:00
..
COMPRESS Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
EFantenna.c First cut of pulling the TT_SIDE bit out of the tile database 2026-01-09 12:05:03 -05:00
EFargs.c Wire up headless / WASM mode at module boundaries 2026-05-06 09:58:20 +02:00
EFbuild.c Corrected an error in which the "global substrate node" flag does 2026-02-18 12:28:48 -05:00
EFdef.c EFbuild.c: efConnectionFreeLinkedList() remove delay-by-one assumption 2025-12-19 09:31:58 -05:00
EFerr.c Final work on the first stage of the extresist overhaul. The 2026-01-28 14:31:38 -05:00
EFflat.c Corrected two errors related to extraction: 2026-01-30 16:47:36 -05:00
EFhier.c extflat/EFhier.c: workaround K&R cb_extflat_hiervisitresists_t 2025-08-06 22:58:30 +01:00
EFint.h EFbuild.c: efConnectionFreeLinkedList() remove delay-by-one assumption 2025-12-19 09:31:58 -05:00
EFname.c Made another update to go along with the previous commit, that 2026-01-31 13:02:35 -05:00
EFread.c Final work on the first stage of the extresist overhaul. The 2026-01-28 14:31:38 -05:00
EFsym.c 38 x warning: suggest parentheses around assignment used as truth value 2024-10-09 21:12:55 -04:00
EFtypes.h EFtypes.h: new header file to provide types for extraction subsystem 2025-08-06 22:58:30 +01:00
EFvisit.c Added a new device type "dsubcircuit" which basically behaves like 2025-10-07 16:45:22 -04:00
Makefile Corrected a mistake with the extension of the bloat-all CIF operator 2019-10-16 20:53:03 -04:00
READ_ME Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
extflat.h Final work on the first stage of the extresist overhaul. The 2026-01-28 14:31:38 -05:00
extparse.h Final work on the first stage of the extresist overhaul. The 2026-01-28 14:31:38 -05:00