Utils to use openMSX in build pipelines.
Go to file
Willem Cazander 2583b34f1c Added dos1 2023-04-21 18:43:25 +02:00
lib Added dos1 2023-04-21 18:43:25 +02:00
test Added assert-all build target. 2021-07-06 04:28:45 +02:00
.gitignore Unignored eclipse project file. 2021-07-02 18:58:34 +02:00
.project Unignored eclipse project file. 2021-07-02 18:58:34 +02:00
Makefile Removed unneeded lib scanning 2021-07-06 22:25:50 +02:00
Makelocal.mk.tpl Added M80 example 2021-07-06 03:52:02 +02:00
README.md Added main include file subpath. 2021-07-06 22:14:17 +02:00

README.md

MSXBUILD

Utils to use openMSX in build pipelines.

You can use these scripts as-is. But as always, feel free to extend it for your specific needs or contribute a fix or feature.

Features

  • SDCC msx build steps.
  • Allows headless openMSX buildpipe.
  • openMSX safe exit failure guards.
  • Automatic disk image import + export per build step.
  • Downloads and caches resources from msxhub.com

Dependencies

  • make
  • openmsx
  • sdcc
  • hex2bin
  • wget
  • unix2dos

Usage

Include the lib/make/msxbuild.mk file from your Makefile. And override the required paths;

  • PATH_SDCC ?= /usr/bin
  • PATH_HEX2BIN ?= /usr/bin
  • PATH_UNIX2DOS ?= /usr/bin
  • PATH_OPENMSX ?= /opt/openMSX/bin/
  • PATH_MSXBUILD ?= /opt/msxbuild

Then build result based compile rules see an example in; test/ahello/0module.mk

Functions

Current set is WIP.

  • mb_compile_asm
  • mb_link_asm_lib
  • mb_link_asm
  • mb_link_asm_0000 = call mb_link_asm,(1),(2),0x0000
  • mb_link_asm_0100
  • mb_link_asm_1000
  • mb_link_asm_4000
  • mb_link_asm_8000
  • mb_link_asm_C000
  • mb_link_asm_dos = alias for mb_link_asm_0100
  • mb_hex2com
  • mb_hex2dat
  • mb_openmsx_dos2
  • mb_openmsx_macro80
  • mb_msxhub_file
  • mb_msxhub_get_dos2
  • mb_msxhub_get_macro80
  • mb_assert_file_equals = note: text file only
  • mb_autoexec_append_cmd
  • mb_autoexec_append_echo
  • mb_autoexec_append_rem
  • mb_autoexec_append_gui_mode
  • mb_autoexec_append_stop_fail
  • mb_autoexec_append_exit
  • mb_autoexec_write_default
  • mb_autoexec_open_gui
  • mb_autoexec_open_gui_cmd
  • mb_autoexec_cmd
  • mb_autoexec_cmd_test
  • mb_clean
  • mb_mkdir
  • mb_delete
  • mb_copy
  • mb_create_dist

Errata

  • Doesn't work on windows
  • Missing dos1 support
  • Missing c support