msxbuild/lib/make/ᐅᖓᕙᕆᐊᖅᓯᓂᖅ/mb_nestor80.mk

75 lines
2.8 KiB
Makefile
Raw Normal View History

2024-07-14 22:12:42 +00:00
MB_NESTOR80_PATH ?=
$(call mb_make_call,mb_doc_variable,MB_NESTOR80_PATH,"Optional path where Nestor80 binaries are located.")
MB_NESTOR80_FLAG_VERBOSE ?=--no-show-banner --no-color-output --verbosity 0
$(call mb_make_call,mb_doc_variable_deep,MB_NESTOR80_FLAG_VERBOSE,"The Nestor80 shared verbose flags.")
MB_NESTOR80_N80_FLAGS ?=
$(call mb_make_call,mb_doc_variable_deep,MB_NESTOR80_N80_FLAGS,"The N80 compile flags.")
MB_NESTOR80_LK80_FLAGS ?=
$(call mb_make_call,mb_doc_variable_deep,MB_NESTOR80_LK80_FLAGS,"The LK80 linker flags.")
define _mb_nestor80_path
$(MB_   )$(if $(MB_NESTOR80_PATH),$(MB_NESTOR80_PATH)/$(1),$(1))
endef
define mb_nestor80_compile
$(MB_   )$(call mb_make_call,mb_os_echo_command,$(MB_I18N_NESTOR80_COMPILE) $(2))
$(MB_   )$(call mb_make_call,_mb_nestor80_path,N80) $(1) $(2) $(MB_NESTOR80_N80_FLAGS) $(MB_NESTOR80_FLAG_VERBOSE)
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_compile,"Compiles source code.","<in> <out>")
define mb_nestor80_link
$(MB_   )$(call mb_make_call,mb_os_echo_command,$(MB_I18N_NESTOR80_LINK) $(2) @ $(3))
$(MB_   )$(call mb_make_call,_mb_nestor80_path,LK80) $(MB_NESTOR80_LK80_FLAGS) $(MB_NESTOR80_FLAG_VERBOSE) --code $(3) --output-format bin -o $(2) $(1)
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_link,"Links to custom code location.","<in> <out> <code-loc>")
define mb_nestor80_link_0000
$(MB_   )$(call mb_make_call,mb_nestor80_link,$(1),$(2),0000h)
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_link_0000,"Links to 0x0000.","<in> <out>")
define mb_nestor80_link_0100
$(MB_   )$(call mb_make_call,mb_nestor80_link,$(1),$(2),0100h)
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_link_0100,"Links to 0x0100.","<in> <out>")
define mb_nestor80_link_1000
$(MB_   )$(call mb_make_call,mb_nestor80_link,$(1),$(2),1000h)
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_link_1000,"Links to 0x1000.","<in> <out>")
define mb_nestor80_link_4000
$(MB_   )$(call mb_make_call,mb_nestor80_link,$(1),$(2),4000h)
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_link_4000,"Links to 0x4000.","<in> <out>")
define mb_nestor80_link_8000
$(MB_   )$(call mb_make_call,mb_nestor80_link,$(1),$(2),8000h)
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_link_8000,"Links to 0x8000.","<in> <out>")
define mb_nestor80_link_C000
$(MB_   )$(call mb_make_call,mb_nestor80_link,$(1),$(2),C000h)
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_link_C000,"Links to 0xC000.","<in> <out>")
define mb_nestor80_link_bdos
$(MB_   )$(call mb_make_call,mb_nestor80_link_0100,$(1),$(2))
endef
$(call mb_make_call,mb_doc_function,mb_nestor80_link_bdos,"Links to BDOS.","<in> <out>")