Added M80 example
This commit is contained in:
parent
656c3436da
commit
6cec28f1bc
13 changed files with 110 additions and 77 deletions
|
|
@ -1,33 +0,0 @@
|
|||
|
||||
define _mb_assert_success
|
||||
@echo success: mb_assert_$(1)\; \'$(2)\'
|
||||
endef
|
||||
define _mb_assert_failure
|
||||
@echo failure: mb_assert_$(1)\; \'$(2)\'
|
||||
@exit 1
|
||||
endef
|
||||
define _mb_assert_if
|
||||
$(if $(1),$(call _mb_assert_success,$(2),$(3)),$(call _mb_assert_failure,$(2),$(3)))
|
||||
endef
|
||||
define _mb_assert_if_not
|
||||
$(if $(1),$(call _mb_assert_failure,$(2),$(3)),$(call _mb_assert_success,$(2),$(3)))
|
||||
endef
|
||||
|
||||
# FIXME: Not stable
|
||||
#define mb_assert_file_contains
|
||||
# $(call _mb_assert_if,$(findstring $(2),$(file < $(1))),file_contains,$(2))
|
||||
#endef
|
||||
define mb_assert_file_equals
|
||||
$(call _mb_assert_if_not,$(subst $(2),,$(file < $(1))),file_equals,$(2))
|
||||
endef
|
||||
|
||||
# Assert that the variable(s) are set and doesn't have non-empty values.
|
||||
# Params;
|
||||
# 1. Variable name(s) to validate.
|
||||
# 2. (optional) Error message to user.
|
||||
define mb_assert_defined
|
||||
$(strip $(foreach 1,$1,$(call _mb_assert_defined_error,$1,$(strip $(value 2)))))
|
||||
endef
|
||||
define _mb_assert_defined_error
|
||||
$(if $(value $1),,$(error Undefined $1$(if $2, ($2))))
|
||||
endef
|
||||
|
|
@ -21,6 +21,9 @@ endif
|
|||
# Remove space after separator
|
||||
MB_PSEP = $(strip $(MB_SEP))
|
||||
|
||||
# Needed for comma in call arguments (like for l80.com)
|
||||
MB_COMMA:=,
|
||||
|
||||
define mb_clean
|
||||
@echo === Cleaning build folder.
|
||||
test $(1) && $(MB_RMDIR) $(1)
|
||||
|
|
|
|||
|
|
@ -1,17 +1,22 @@
|
|||
|
||||
MB_BUILD_FLAG_CPU ?= -mz80
|
||||
MB_BUILD_FLAG_LD ?= --nostdinc
|
||||
MB_BUILD_SDASM_FLAGS ?= -g -l -c -o
|
||||
MB_BUILD_SDAR_FLAGS ?= -rc
|
||||
MB_BUILD_H2B_CMD ?= $(PATH_HEX2BIN)/hex2bin
|
||||
MB_BUILD_SDCC_CMD ?= $(PATH_SDCC)/sdcc
|
||||
MB_BUILD_SDASM_CMD ?= $(PATH_SDCC)/sdasz80
|
||||
MB_BUILD_SDAR_CMD ?= $(PATH_SDCC)/sdar
|
||||
MB_BUILD_FLAG_CPU ?= -mz80
|
||||
MB_BUILD_FLAG_LD ?= --nostdinc
|
||||
MB_BUILD_SDASM_FLAGS ?= -g -l -c -o
|
||||
MB_BUILD_SDAR_FLAGS ?= -rc
|
||||
MB_BUILD_H2B_CMD ?= $(PATH_HEX2BIN)/hex2bin
|
||||
MB_BUILD_SDCC_CMD ?= $(PATH_SDCC)/sdcc
|
||||
MB_BUILD_SDASM_CMD ?= $(PATH_SDCC)/sdasz80
|
||||
MB_BUILD_SDAR_CMD ?= $(PATH_SDCC)/sdar
|
||||
MB_BUILD_UNIX2DOS_CMD ?= $(PATH_UNIX2DOS)/unix2dos
|
||||
|
||||
# TODO: Add C + mixed support;
|
||||
#$(MB_SDASM) -I$(MB_LIBASM_SRC)/include
|
||||
#-l$(LIBASM_LINK)
|
||||
|
||||
define mb_unix2dos
|
||||
$(MB_BUILD_UNIX2DOS_CMD) -n $(1) $(2)
|
||||
endef
|
||||
|
||||
define mb_compile_asm
|
||||
@echo === Compile module asm.
|
||||
$(MB_BUILD_SDASM_CMD) $(MB_BUILD_SDASM_FLAGS) $(1) $(2)
|
||||
|
|
|
|||
|
|
@ -26,3 +26,10 @@ define mb_msxhub_get_dos2_com
|
|||
$(call mb_msxhub_file,$(1)/COMMAND2.COM,$(MB_MSXHUB_API)/MSXDOS2/2.20-1/get/MSXDOS2/COMMAND2.COM)
|
||||
endef
|
||||
|
||||
define mb_msxhub_get_macro80
|
||||
$(call mb_msxhub_file,$(1)/CREF80.COM,$(MB_MSXHUB_API)/MACRO80/2.0-1/get/MACRO80/CREF80.COM)
|
||||
$(call mb_msxhub_file,$(1)/L80.COM,$(MB_MSXHUB_API)/MACRO80/2.0-1/get/MACRO80/L80.COM)
|
||||
$(call mb_msxhub_file,$(1)/LIB80.COM,$(MB_MSXHUB_API)/MACRO80/2.0-1/get/MACRO80/LIB80.COM)
|
||||
$(call mb_msxhub_file,$(1)/M80.COM,$(MB_MSXHUB_API)/MACRO80/2.0-1/get/MACRO80/M80.COM)
|
||||
endef
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@ MB_OPENMSX_BOOT_TIMEOUT ?= 25
|
|||
MB_OPENMSX_MACHINE ?= Philips_NMS_8250
|
||||
MB_OPENMSX_JOYPORTA ?=
|
||||
MB_OPENMSX_JOYPORTB ?=
|
||||
MB_OPENMSX_SETTING ?= $(PATH_MSXBUILD)/lib/openmsx/boot_settings.xml
|
||||
# Workaround for include msxbuild.mk file and 'older' openmsx segfaults on relative settings path.
|
||||
MB_OPENMSX_SETTING := $(if $(realpath $(PATH_MSXBUILD)),$(realpath $(PATH_MSXBUILD)),$(PATH_MSXBUILD))/lib/openmsx/boot_settings.xml
|
||||
MB_OPENMSX_EXTS ?=
|
||||
MB_OPENMSX_EXTRA_MEM ?= -ext ram4mb
|
||||
MB_OPENMSX_ARGS = \
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
# Setup required tools paths
|
||||
PATH_HEX2BIN ?= /usr/bin
|
||||
PATH_SDCC ?= /usr/bin
|
||||
PATH_UNIX2DOS ?= /usr/bin
|
||||
PATH_OPENMSX ?= /usr/bin
|
||||
PATH_MSXBUILD ?= $(dir $(lastword $(MAKEFILE_LIST)))../..
|
||||
|
||||
|
|
@ -13,5 +14,4 @@ include $(PATH_MSXBUILD)/lib/make/mb_base.mk
|
|||
include $(PATH_MSXBUILD)/lib/make/mb_autoexec.mk
|
||||
include $(PATH_MSXBUILD)/lib/make/mb_msxhub.mk
|
||||
include $(PATH_MSXBUILD)/lib/make/mb_openmsx.mk
|
||||
include $(PATH_MSXBUILD)/lib/make/mb_assert.mk
|
||||
include $(PATH_MSXBUILD)/lib/make/mb_build.mk
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue