失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 红白机 编译6502汇编生成NES文件的通用Makefile

红白机 编译6502汇编生成NES文件的通用Makefile

时间:2024-01-13 04:50:12

相关推荐

红白机 编译6502汇编生成NES文件的通用Makefile

6502汇编生成NES的通用Makefile

#依赖sudo apt install cc65#DIR_INC = ./includeDIR_SRC = .DIR_OBJ = .DIR_BIN = .#(1)Makefile中的 符号 $@, $^, $< 的意思:#$@ 表示目标文件#$^ 表示所有的依赖文件#$< 表示第一个依赖文件#$? 表示比目标还要新的依赖文件列表##(2)wildcard、notdir、patsubst的意思:##wildcard : 扩展通配符#notdir : 去除路径#patsubst :替换通配符#basename: 仅主文件名(不含扩展名)SRC = $(wildcard ${DIR_SRC}/*.a65)OBJ = $(patsubst %.a65,${DIR_OBJ}/%.o,$(notdir ${SRC}))#主文件名TARGET = $(basename $(OBJ)).nes #BIN_TARGET = ${DIR_BIN}/${TARGET}BIN_TARGET = ${TARGET}CA = ca65CL = cl65#CFLAGS = -g -Wall -I${DIR_INC}CFLAGS = -gCONFIG = --target nesrun:${BIN_TARGET}mono /home/yanxiang/Mesen-master/bin/x64/Release/Mesen.exe ${BIN_TARGET}${BIN_TARGET}:${OBJ}$(CL) $(CFLAGS) $(CONFIG) $(OBJ) -o $@${DIR_OBJ}/%.o:${DIR_SRC}/%.a65$(CA) $(CFLAGS) $< -o $@.PHONY:cleanclean:-rm -rf $(OBJ)

6502 C生成NES的通用Makefile

#依赖sudo apt install cc65#依赖 如下文件 (https://happysoul.github.io/nes/nesdoug/)# crt0.s nrom_32k_vert.cfg#LIB/newlib.h #LIB/neslib.s #LIB/nesdoug.h #LIB/nesdoug.sDIR_INC = ./LIBDIR_SRC = .DIR_OBJ = .DIR_BIN = .#(1)Makefile中的 符号 $@, $^, $< 的意思:#$@ 表示目标文件#$^ 表示所有的依赖文件#$< 表示第一个依赖文件#$? 表示比目标还要新的依赖文件列表##(2)wildcard、notdir、patsubst的意思:##wildcard : 扩展通配符#notdir : 去除路径#patsubst :替换通配符#basename: 仅主文件名(不含扩展名)#代表全部的C文件(包含相对路径)SRC = $(wildcard ${DIR_SRC}/*.c)#把$(notdir ${SRC})中的.c代换为.sASM = $(patsubst %.c,%.s,$(notdir ${SRC}))#把$(notdir ${SRC})中的.c代换为.oOBJ = $(patsubst %.c,%.o,$(notdir ${SRC}))#主文件名TARGET = $(basename $(OBJ)).nes #BIN_TARGET = ${DIR_BIN}/${TARGET}BIN_TARGET = ${TARGET}CC = cc65CA = ca65CL = cl65#CFLAGS = -g -Wall -I${DIR_INC}CFLAGS = -g -I $(DIR_INC)CONFIG = -t nes LIBS = nes.libCFG= -C nrom_32k_vert.cfgrun:${BIN_TARGET}mono /home/yanxiang/Mesen/Mesen.exe ${BIN_TARGET}${BIN_TARGET}:${OBJ}$(CL) $(CFG) $(CFLAGS) $(CONFIG) crt0.o $< $(LIBS) -o $@${OBJ}:${ASM}$(CA) $(CFLAGS) $< -o $@$(CA) $(CFLAGS) crt0.s -o crt0.o${ASM}:${SRC}$(CC) $(CFLAGS) $(CONFIG) $< -o $@.PHONY:cleanclean:-rm -rf $(OBJ) $(BIN_TARGET) $(ASM)

如果觉得《红白机 编译6502汇编生成NES文件的通用Makefile》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。