msxbuild/lib/make/天房系統擴展/mb_msxpipe.mk

66 lines
3.6 KiB
Makefile
Raw Permalink Normal View History

MB_MSXPIPE_COLOR_FG_SAFE_CMD ?= 026
$(call mb-make-call,mb-doc-variable,MB_MSXPIPE_COLOR_FG_SAFE_CMD,Foreground color of safe command session pipe.)
MB_MSXPIPE_COLOR_BG_SAFE_CMD ?= 000
$(call mb-make-call,mb-doc-variable,MB_MSXPIPE_COLOR_BG_SAFE_CMD,Background color of safe command session pipe.)
MB_MSXPIPE_COLOR_FG_SAFE_ASSERT ?= 421
$(call mb-make-call,mb-doc-variable,MB_MSXPIPE_COLOR_FG_SAFE_ASSERT,Foreground color of safe assert session pipe.)
MB_MSXPIPE_COLOR_BG_SAFE_ASSERT ?= 000
$(call mb-make-call,mb-doc-variable,MB_MSXPIPE_COLOR_BG_SAFE_ASSERT,Background color of safe assert session pipe.)
MB_MSXPIPE_COLOR_FG_RUN_GUI ?= 141
$(call mb-make-call,mb-doc-variable,MB_MSXPIPE_COLOR_FG_RUN_GUI,Foreground color of run gui session pipe.)
MB_MSXPIPE_COLOR_BG_RUN_GUI ?= 000
$(call mb-make-call,mb-doc-variable,MB_MSXPIPE_COLOR_BG_RUN_GUI,Background color of run gui session pipe.)
define mb-msxpipe-safe-cmd
$(MB_   )$(call mb-make-call,mb-make-check-arg2,$(0),$(1),$(2))
$(MB_   )$(call mb-make-call,mb-autoexec-write-default,$(1),$(if $(4),$(4),$(MB_MSXPIPE_COLOR_FG_SAFE_CMD)),$(if $(5),$(5),$(MB_MSXPIPE_COLOR_BG_SAFE_CMD)))
$(MB_   )$(call mb-make-call,mb-autoexec-append-safe-cmd,$(1),$(2))
$(MB_   )$(call mb-make-call,mb-autoexec-append-exit,$(1))
$(MB_   )$(call mb-make-call,mb-openmsx-dosctl,$(1),$(3))
endef
$(call mb-make-call,mb-doc-function,mb-msxpipe-safe-cmd,Runs openMSX and safely executes one command.,<dir> <cmd> [machine] [fg-color] [bg-color])
define mb-msxpipe-safe-assert
$(MB_   )$(call mb-make-call,mb-make-check-arg2,$(0),$(1),$(2))
$(MB_   )$(call mb-make-call,mb-autoexec-write-default,$(1),$(if $(4),$(4),$(MB_MSXPIPE_COLOR_FG_SAFE_ASSERT)),$(if $(5),$(5),$(MB_MSXPIPE_COLOR_BG_SAFE_ASSERT)))
$(MB_   )$(call mb-make-call,mb-autoexec-append-safe-assert,$(1),$(2))
$(MB_   )$(call mb-make-call,mb-autoexec-append-exit,$(1))
$(MB_   )$(call mb-make-call,mb-openmsx-dosctl,$(1),$(3))
endef
$(call mb-make-call,mb-doc-function,mb-msxpipe-safe-assert,Runs openMSX and safely executes one assert.,<dir> <cmd> [machine] [fg-color] [bg-color])
define _mb-msxpipe-run-gui
$(MB_   )$(call mb-make-call,mb-autoexec-write-default,$(1),$(MB_MSXPIPE_COLOR_FG_RUN_GUI),$(MB_MSXPIPE_COLOR_BG_RUN_GUI))
$(MB_   )$(if $(filter mouse,$(4)),$(call mb-make-call,mb-autoexec-append-plug-porta,$(1),$(4)))
$(MB_   )$(call mb-make-call,mb-autoexec-append-stop-fail,$(1))
$(MB_   )$(call mb-make-call,mb-autoexec-append-show-gui,$(1))
$(MB_   )$(call mb-make-call,mb-autoexec-append-echo,$(1),mb::help Run shutdown to exit)
$(MB_   )$(if $(2),$(call mb-make-call,mb-autoexec-append-echo,$(1),mb::auto command $(2)))
$(MB_   )$(if $(2),$(call mb-make-call,mb-autoexec-append-cmd,$(1),$(2)))
$(MB_   )$(call mb-make-call,mb-openmsx-dosctl,$(1),$(3))
endef
define mb-msxpipe-run-gui
$(MB_   )$(call mb-make-call,mb-make-check-arg1,$(0),$(1))
$(MB_   )$(call mb-make-call,_mb-msxpipe-run-gui,$(1),$(2),$(3))
endef
$(call mb-make-call,mb-doc-function,mb-msxpipe-run-gui,Runs openMSX forever with renderer and optionals.,<dir> [cmd] [machine])
define mb-msxpipe-run-gui-mouse
$(MB_   )$(call mb-make-call,mb-make-check-arg1,$(0),$(1))
$(MB_   )$(call mb-make-call,_mb-msxpipe-run-gui,$(1),$(2),$(3),mouse)
endef
$(call mb-make-call,mb-doc-function,mb-msxpipe-run-gui-mouse,Runs openMSX forever with renderer and mouse and optionals.,<dir> [cmd] [machine])