Added M80 example
This commit is contained in:
parent
656c3436da
commit
6cec28f1bc
13 changed files with 110 additions and 77 deletions
33
test/ahello-m80/0module.mk
Normal file
33
test/ahello-m80/0module.mk
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
|
||||
TEST_AHELLO_M80 := $(PATH_BIN)/test/ahello-m80
|
||||
BUILD_HELP += \\n\\t* $(TEST_AHELLO_M80)/ahello.com\\n\\t* test-ahello-m80-run\\n\\t* test-ahello-m80-assert
|
||||
|
||||
$(TEST_AHELLO_M80):
|
||||
$(call mb_mkdir,$(TEST_AHELLO_M80))
|
||||
$(call mb_msxhub_get_macro80,$(TEST_AHELLO_M80))
|
||||
|
||||
$(TEST_AHELLO_M80)/%.mac: test/ahello-m80/%.mac | $(TEST_AHELLO_M80)
|
||||
$(call mb_unix2dos,$<,$@)
|
||||
|
||||
$(TEST_AHELLO_M80)/ahello.rel: $(TEST_AHELLO_M80)/ahello.mac
|
||||
$(call mb_autoexec_cmd,$(TEST_AHELLO_M80),m80 =ahello/Z)
|
||||
$(call mb_openmsx_dos2,$(TEST_AHELLO_M80))
|
||||
|
||||
$(TEST_AHELLO_M80)/ahello.hex: $(TEST_AHELLO_M80)/ahello.rel
|
||||
$(call mb_autoexec_cmd,$(TEST_AHELLO_M80),l80 ahello$(MB_COMMA)ahello/N/X/Y/E)
|
||||
$(call mb_openmsx_dos2,$(TEST_AHELLO_M80))
|
||||
|
||||
$(TEST_AHELLO_M80)/ahello.com: $(TEST_AHELLO_M80)/ahello.hex
|
||||
$(call mb_hex2com,$(TEST_AHELLO_M80)/ahello.hex,$(TEST_AHELLO_M80)/ahello.com)
|
||||
|
||||
.PHONY: test-ahello-m80-run
|
||||
test-ahello-m80-run: $(TEST_AHELLO_M80)/ahello.com
|
||||
$(call mb_autoexec_open_gui,$(TEST_AHELLO_M80))
|
||||
$(call mb_openmsx_dos2,$(TEST_AHELLO_M80))
|
||||
|
||||
.PHONY: test-ahello-m80-assert
|
||||
test-ahello-m80-assert: $(TEST_AHELLO_M80)/ahello.com
|
||||
$(call mb_delete,$(TEST_AHELLO_M80)/test.out)
|
||||
$(call mb_autoexec_cmd_test,$(TEST_AHELLO_M80),ahello > test.out)
|
||||
$(call mb_openmsx_dos2,$(TEST_AHELLO_M80))
|
||||
grep "M80: Hello world..." $(TEST_AHELLO_M80)/test.out
|
||||
20
test/ahello-m80/ahello.mac
Normal file
20
test/ahello-m80/ahello.mac
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
title M80 CP/M Hello world
|
||||
.Z80
|
||||
|
||||
WRITESTR EQU 9h
|
||||
BDOS EQU 5h
|
||||
|
||||
ASEG
|
||||
ORG 0100H
|
||||
|
||||
MAIN:
|
||||
LD C,WRITESTR
|
||||
LD DE,TXT_HELLO
|
||||
CALL BDOS
|
||||
RET
|
||||
|
||||
TXT_HELLO:
|
||||
DB "M80: Hello world...$"
|
||||
|
||||
END
|
||||
DSEG
|
||||
27
test/ahello-sdcc/0module.mk
Normal file
27
test/ahello-sdcc/0module.mk
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
|
||||
TEST_AHELLO_SDCC := $(PATH_BIN)/test/ahello-sdcc
|
||||
BUILD_HELP += \\n\\t* $(TEST_AHELLO_SDCC)/ahello.com\\n\\t* test-ahello-sdcc-run\\n\\t* test-ahello-sdcc-assert
|
||||
|
||||
$(TEST_AHELLO_SDCC):
|
||||
$(call mb_mkdir,$(TEST_AHELLO_SDCC))
|
||||
|
||||
$(TEST_AHELLO_SDCC)/%.rel: test/ahello-sdcc/%.asm | $(TEST_AHELLO_SDCC)
|
||||
$(call mb_compile_asm,$@,$<)
|
||||
|
||||
$(TEST_AHELLO_SDCC)/ahello.hex: $(TEST_AHELLO_SDCC)/ahello.rel
|
||||
$(call mb_link_asm_dos,$(TEST_AHELLO_SDCC)/ahello.hex,$(TEST_AHELLO_SDCC)/ahello.rel)
|
||||
|
||||
$(TEST_AHELLO_SDCC)/ahello.com: $(TEST_AHELLO_SDCC)/ahello.hex
|
||||
$(call mb_hex2com,$(TEST_AHELLO_SDCC)/ahello.hex,$(TEST_AHELLO_SDCC)/ahello.com)
|
||||
|
||||
.PHONY: test-ahello-sdcc-run
|
||||
test-ahello-sdcc-run: $(TEST_AHELLO_SDCC)/ahello.com
|
||||
$(call mb_autoexec_open_gui,$(TEST_AHELLO_SDCC))
|
||||
$(call mb_openmsx_dos2,$(TEST_AHELLO_SDCC))
|
||||
|
||||
.PHONY: test-ahello-sdcc-assert
|
||||
test-ahello-sdcc-assert: $(TEST_AHELLO_SDCC)/ahello.com
|
||||
$(call mb_delete,$(TEST_AHELLO_SDCC)/test.out)
|
||||
$(call mb_autoexec_cmd_test,$(TEST_AHELLO_SDCC),ahello > test.out)
|
||||
$(call mb_openmsx_dos2,$(TEST_AHELLO_SDCC))
|
||||
grep "SDCC: Hello world..." $(TEST_AHELLO_SDCC)/test.out
|
||||
|
|
@ -31,7 +31,7 @@ PUT_TXT:
|
|||
JR PUT_TXT
|
||||
|
||||
TXT_HELLO:
|
||||
.str "Hello world..."
|
||||
.str "SDCC: Hello world..."
|
||||
.db 0x1D
|
||||
|
||||
TXT_HELLO_SRC:
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
|
||||
ASM_HELLO_NAME := ahello
|
||||
ASM_HELLO_RUN := run-$(ASM_HELLO_NAME)
|
||||
ASM_HELLO_TEST := test-$(ASM_HELLO_NAME)
|
||||
ASM_HELLO_SRC := test/$(ASM_HELLO_NAME)
|
||||
ASM_HELLO_BIN := $(PATH_BIN)/test/$(ASM_HELLO_NAME)
|
||||
ASM_HELLO_HEX := $(ASM_HELLO_BIN)/$(ASM_HELLO_NAME).hex
|
||||
ASM_HELLO_COM := $(ASM_HELLO_BIN)/$(ASM_HELLO_NAME).com
|
||||
ASM_HELLO_RELS := $(ASM_HELLO_BIN)/$(ASM_HELLO_NAME).rel
|
||||
ASM_HELLO_CODE := $(ASM_HELLO_SRC)/$(ASM_HELLO_NAME).asm
|
||||
BUILD_HELP += \\n\\t* $(ASM_HELLO_COM)\\n\\t* $(ASM_HELLO_RUN)\\n\\t* $(ASM_HELLO_TEST) \(Change txt in hello.asm and run again\)
|
||||
|
||||
$(ASM_HELLO_BIN):
|
||||
$(call mb_mkdir,$(ASM_HELLO_BIN))
|
||||
|
||||
$(ASM_HELLO_BIN)/%.rel: $(ASM_HELLO_SRC)/%.asm | $(ASM_HELLO_BIN)
|
||||
$(call mb_compile_asm,$@,$<)
|
||||
|
||||
$(ASM_HELLO_HEX): $(ASM_HELLO_RELS)
|
||||
$(call mb_link_asm_dos,$(ASM_HELLO_HEX),$(ASM_HELLO_RELS))
|
||||
|
||||
$(ASM_HELLO_COM): $(ASM_HELLO_HEX)
|
||||
$(call mb_hex2com,$(ASM_HELLO_HEX),$(ASM_HELLO_COM))
|
||||
|
||||
$(ASM_HELLO_RUN): $(ASM_HELLO_COM)
|
||||
$(call mb_autoexec_open_gui,$(ASM_HELLO_BIN))
|
||||
$(call mb_openmsx_dos2,$(ASM_HELLO_BIN))
|
||||
|
||||
$(ASM_HELLO_TEST): $(ASM_HELLO_COM)
|
||||
$(call mb_delete,$(ASM_HELLO_BIN)/test.out)
|
||||
$(call mb_autoexec_cmd_test,$(ASM_HELLO_BIN),$(ASM_HELLO_NAME) > test.out)
|
||||
$(call mb_openmsx_dos2,$(ASM_HELLO_BIN))
|
||||
$(call mb_assert_file_equals,$(ASM_HELLO_BIN)/test.out,Hello world...from asm.)
|
||||
Loading…
Add table
Add a link
Reference in a new issue