msxbuild/lib/make/天房系統擴展/mb_msxrom.mk
Willem Cazander b78d3e5c1f
All checks were successful
Run test asserts / Test-Asserts (push) Successful in -12s
Limited china whitespace to one folder.
2024-07-13 13:18:49 +02:00

189 lines
11 KiB
Makefile
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# TODO: Convert pi MSX number data, the named pie slices to hyperdrive storage for distribution over red sea
MB_MSXROM_API ?= https://msxrom.distributedrebirth.love/calc-pi/v19.1
$(call mb_make_call,mb_doc_variable_deep,MB_MSXROM_API,"Resource identifier for msxrom pi pie named slices data.")
MB_MSXROM_CACHE ?= $(MB_OS_CACHE)/msxbuild/msxrom
$(call mb_make_call,mb_doc_variable_deep,MB_MSXROM_CACHE,"Cache storage location.")
define _mb_msxrom_file_fetch
$(MB_   )$(call mb_make_call,mb_os_echo_command,$(MB_I18N_MSXROM_FILE_FETCH) $(subst $(MB_MSXROM_API)/,,$(1)))
$(MB_   )$(if $(wildcard $(dir $(MB_MSXROM_CACHE)/$(subst $(MB_MSXROM_API)/,,$(1)))),,$(call mb_make_call,mb_os_dir_create,$(dir $(MB_MSXROM_CACHE)/$(subst $(MB_MSXROM_API)/,,$(1)))))
$(MB_   )$(if $(wildcard $(MB_MSXROM_CACHE)/$(subst $(MB_MSXROM_API)/,,$(1))),,wget -O $(MB_MSXROM_CACHE)/$(subst $(MB_MSXROM_API)/,,$(1)) $(1))
endef
define mb_msxrom_file
$(MB_   )$(if $(wildcard $(MB_MSXROM_CACHE)/$(2)),,$(call mb_make_call,_mb_msxrom_file_fetch,$(MB_MSXROM_API)/$(2)))
$(MB_   )$(if $(wildcard $(1)/$(notdir $(2))),,$(call mb_make_call,mb_os_file_copy,$(MB_MSXROM_CACHE)/$(2),$(1)/$(notdir $(2))))
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_file,"Installs msxroms from slug into an subdir.","<dir> <msxrom-slug>")
define mb_msxrom_setup
$(MB_   )$(if $(wildcard $(1)-omsx),,$(call mb_make_call,mb_os_dir_create,$(1)-omsx))
$(MB_   )$(if $(wildcard $(1)-omsx/share),,$(call mb_make_call,mb_os_dir_create,$(1)-omsx/share))
$(MB_   )$(if $(wildcard $(1)-omsx/share/systemroms),,$(call mb_make_call,mb_os_dir_create,$(1)-omsx/share/systemroms))
$(MB_   )$(if $(wildcard $(1)-omsx/share/systemroms/machines),,$(call mb_make_call,mb_os_dir_create,$(1)-omsx/share/systemroms/machines))
$(MB_   )$(if $(wildcard $(1)-omsx/share/systemroms/extensions),,$(call mb_make_call,mb_os_dir_create,$(1)-omsx/share/systemroms/extensions))
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_setup,"Creates needed systemrom folders.","<dir>")
define mb_msxrom_extension_ide
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/ide240.dat)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_ide,"Installs sunrise IDE classic rom.","<dir>")
define mb_msxrom_extension_ide_nextor
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/Nextor-2.1.1.SunriseIDE.ROM)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_ide_nextor,"Installs sunrise IDE nextor rom.","<dir>")
define mb_msxrom_extension_scsi_novaxis
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/novaxis.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_scsi_novaxis,"Installs Gouda SCSI novaxis rom.","<dir>")
define mb_msxrom_extension_msxdos22
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/msxdos22.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_msxdos22,"Installs msxdos 2.20 rom.","<dir>")
define mb_msxrom_extension_rs232
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/rs232.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_rs232,"Installs rs232 rom.","<dir>")
define mb_msxrom_extension_fmpac
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/fmpac.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_fmpac,"Installs fmpac rom.","<dir>")
define mb_msxrom_extension_fmpac_en
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/fmpac_en.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_fmpac_en,"Installs fmpac english rom.","<dir>")
define mb_msxrom_extension_moonsound
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/yrw801.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_moonsound,"Installs moonsound rom.","<dir>")
define mb_msxrom_extension_basickun
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,machines/sanyo/phc-70fd2_basickun.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_basickun,"Installs basickun compiler rom.","<dir>")
define mb_msxrom_machine_Canon_V-20
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/canon/v-20_basic-bios1.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Canon_V-20,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Mitsubishi_ML-F80
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-f80_basic-bios1.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-F80,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Mitsubishi_ML-FX1
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-fx1_basic-bios1.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-FX1,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Mitsubishi_ML-G3_ES
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-g3_es_basic-bios2.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-g3_es_disk.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-g3_es_msx2sub.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-g3_es_rs232.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-G3_ES,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Philips_VG_8000
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/vg8000_basic-bios1.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_VG_8000,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Philips_VG_8230
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/vg8230_basic-bios2.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/vg8230_disk.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/vg8230_msx2sub.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_VG_8230,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Philips_NMS_8250
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/nms8250_basic-bios2.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/nms8250_msx2sub.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/nms8250_disk.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_NMS_8250,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Toshiba_HX-21
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/toshiba/HX21-IC2.BIN)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/toshiba/HX21-IC3.BIN)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Toshiba_HX-21,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Yamaha_AX200
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/ax200_basic-bios1.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/ax200_arabic.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/ax200_music.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Yamaha_AX200,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Yamaha_YIS-503IIIR
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/yis503iii_basic-bios2.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/yis503iii_msx2sub.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/yis503iii_cpm.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/yis503iii_net_2.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Yamaha_YIS-503IIIR,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Panasonic_FS-A1WSX
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_basic-bios2p.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_disk.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_firmware.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_fmbasic.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_kanjibasic.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_kanjifont.rom)
$(MB_   )$(call mb_make_call,mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_msx2psub.rom)
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Panasonic_FS-A1WSX,"Installs machine roms.","<dir>")
define mb_msxrom_machine_Boosted_MSX2_EN
$(MB_   )$(call mb_make_call,mb_msxrom_machine_Philips_NMS_8250,$(1))
$(MB_   )$(call mb_make_call,mb_msxrom_extension_fmpac,$(1))
$(MB_   )$(call mb_make_call,mb_msxrom_extension_moonsound,$(1))
$(MB_   )$(call mb_make_call,mb_msxrom_extension_basickun,$(1))
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Boosted_MSX2_EN,"Installs machine and extensions roms.","<dir>")
define mb_msxrom_machine_Boosted_MSX2+_JP
$(MB_   )$(call mb_make_call,mb_msxrom_machine_Panasonic_FS-A1WSX,$(1))
$(MB_   )$(call mb_make_call,mb_msxrom_extension_moonsound,$(1))
$(MB_   )$(call mb_make_call,mb_msxrom_extension_basickun,$(1))
endef
$(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Boosted_MSX2+_JP,"Installs machine and extensions roms.","<dir>")