# This file is part of the 9086 project. # # Copyright (c) 2023 Efthymios Kritikos # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # SYSTEM_VVP=system/system.vvp VERILATOR_BIN=system/obj_dir/Vsystem BOOT_CODE=boot_code/brainfuck_mandelbrot.txt GTKWSAVE=./gtkwave_savefile.gtkw MICROCODE=system/ucode.txt BOOTABLES=boot_code/brainfuck_compiled.txt boot_code/brainfuck_interpreted.txt boot_code/pipeline_ideal.txt boot_code/fibonacci.txt boot_code/gnome_sort.txt boot_code/cache_fill_and_empty.txt ${BOOT_CODE} boot_code/colored_led.txt boot_code/bios.stxt NO_ASM=1 include common.mk .PHONY: ${BOOTABLES} .PHONY: ${subst .txt,.bin,${BOOTABLES}} ${BOOTABLES} ${subst .stxt,.bin,${subst .txt,.bin,${BOOTABLES}}} : ${Q}make ${MAKEOPTS} -C boot_code $(subst boot_code/,,$@) boot_code/%.txt: ${Q}make ${MAKEOPTS} -C boot_code $(subst boot_code/,,$@) .PHONY:${SYSTEM_VVP} ${SYSTEM_VVP}: ${Q}make ${MAKEOPTS} -C system system.vvp .PHONY:${VERILATOR_BIN} ${VERILATOR_BIN}: ${Q}make ${MAKEOPTS} -C system obj_dir/Vsystem .PHONY: clean clean: ${Q}make ${MAKEOPTS} -C system clean ${Q}make ${MAKEOPTS} -C boot_code clean upload: boot_code/bios.stxt ${Q}make ${MAKEOPTS} -C system upload