6502汇编生成NES的通用Makefile

#依赖sudo apt install cc65
#DIR_INC = ./include
DIR_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 = ca65
CL = cl65
#CFLAGS = -g -Wall -I${DIR_INC}
CFLAGS = -g
CONFIG = --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 = ./LIB
DIR_SRC = .
DIR_OBJ = .
DIR_BIN = .#(1)Makefile中的 符号 $@, $^, $< 的意思:
#  $@  表示目标文件
#  $^  表示所有的依赖文件
#  $<  表示第一个依赖文件
#  $?  表示比目标还要新的依赖文件列表
#
#(2)wildcard、notdir、patsubst的意思:
#
#  wildcard : 扩展通配符
#  notdir : 去除路径
#  patsubst :替换通配符
#  basename: 仅主文件名(不含扩展名)#代表全部的C文件(包含相对路径)
SRC = $(wildcard ${DIR_SRC}/*.c)
#把$(notdir ${SRC})中的.c代换为.s
ASM = $(patsubst %.c,%.s,$(notdir ${SRC}))
#把$(notdir ${SRC})中的.c代换为.o
OBJ = $(patsubst %.c,%.o,$(notdir ${SRC}))#主文件名
TARGET = $(basename $(OBJ)).nes #BIN_TARGET = ${DIR_BIN}/${TARGET}
BIN_TARGET = ${TARGET}CC = cc65
CA = ca65
CL = cl65
#CFLAGS = -g -Wall -I${DIR_INC}
CFLAGS = -g  -I $(DIR_INC)
CONFIG = -t nes
LIBS = nes.lib
CFG= -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相关推荐

  1. 计算机丢失fc64,FC红白机64合1

    软件简介 Soft Introduction FC红白机64合1 64in1.nes 01Islander冒险岛1 02Grading沙罗曼蛇1 03Star Soldier星际战士 04Goonie ...

  2. 编译VirtualNES虚拟红白机

    VirtualNES虚拟红白机 MD建档时间:2016/2/17 6:39 PM CSDN发布:http://blog.csdn.net/winsenjiansbomber/article/detai ...

  3. 【历史上的今天】10 月 18 日:Internet Explorer 7 正式发布;全球首家网络银行开业;“美版红白机” NES 诞生

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2022 年 10 月 18 日,在 100 年前的今天,英国 BBC 广播电视台成立:BBC 是世界上最大的新闻 ...

  4. VirtualNES虚拟红白机

    VirtualNES虚拟红白机 -MD建档时间:2016/2/17 6:39 PM -CSDN发布:http://blog.csdn.net/winsenjiansbomber/article/det ...

  5. 还记得当年陪你度过整个夏日的红白机吗?

    一转眼,暑假就要过去了,小编看着周围那些忙忙碌碌准备开学的小朋友们,不由想起自己的童年. 那个时候,最开心的就是暑假可以玩游戏机,也就是现在人们口中的FC红白机.虽然在现在看来都是像素级的游戏画面,但 ...

  6. 深度强化学习之:PPO训练红白机1942

    本篇是深度强化学习动手系列文章,自MyEncyclopedia公众号文章深度强化学习之:DQN训练超级玛丽闯关发布后收到不少关注和反馈,这一期,让我们实现目前主流深度强化学习算法PPO来打另一个红白机 ...

  7. 红白机原理(零)前言

    今天来聊聊 FC 游戏机,FC 的意思就是 Family Computer,虽然如今渐渐落寞被淘汰,但在当年的确是风靡全球,不负 Family Computer 这名字. FC 大家应该基本知道吧,e ...

  8. 简单介绍红白机的发声系统以及其它音源 MMC

    红白机的音源 Yamato Ryou 2013-08-23 14:52:26 本文将简单介绍红白机的发声系统以及其它音源 MMC, 红白机下称 FC, 其中的伪声音处理器称作 APU. 我才不告诉你称 ...

  9. 使用c++模拟红白机——概论篇(一)

    任天堂的红白机系列的游戏应该是大家的童年了,红白机,又称FC,随着计算机技术的不断发展,现在市场上基本已经淘汰了红白机系列的硬件设备了.我偶尔的一个突发奇想,想要在体验一下红白机游戏的乐趣,于是乎我想 ...

最新文章

  1. 机器学习入门(21)— 感受野概念
  2. Exchange 2010 运维技巧一
  3. 讲个笑话,李彦宏可能会被选为两院院士
  4. 数据库---练习题(45道)
  5. 一不小心就掉大啦《数组使用注意》
  6. GitHub学习一-本地电脑与GitHub绑定
  7. 基于redis集群实现的分布式锁,可用于秒杀,定时器。
  8. 如何将数据渲染到页面上?
  9. fckeditor for java_FCKeditor最新版本2.4.1 for java 教程
  10. DEVC++下载与环境配置,手把手教程
  11. php 发送curl跨域请求,php跨域传输(curl)
  12. 印象笔记 还回快捷_搭配这9款实用的第三方工具,小白也可以玩转印象笔记
  13. 【MAC】手动下载安装docker
  14. sklearn之线性回归实现—阿里云天池二手车交易价格预测赛
  15. 7天java_7天学完Java基础之0/7
  16. Untiy AVpro
  17. Eclipse 官方网站
  18. MIT 线性代数 Linear Algebra 26:复矩阵,傅里叶矩阵, 快速傅里叶变换 FFT
  19. Git 开发分支合并到develop分支用法
  20. 假如,我来做一款产品?

热门文章

  1. RSA加密算法简单介绍以及python实现
  2. 51Nod-1319-跳跃游戏(三角形定理)
  3. 微信备份通讯录 服务器,微信备份通讯录在哪,教您微信备份通讯录在哪
  4. 2017云栖大会门票转让_云栖大会的门票可以转让么?门票怎么买?
  5. 美团是如何基于深度学习实现图像的智能审核?
  6. Android Studio 制作商品销售记录APP
  7. 【Python】抓取电影海报并下载
  8. 关于c4d和3dsmax的使用功能对比分析总结
  9. java塔防兽人种族,《魔兽世界》部落种族大全 全种族资料+种族特长详解
  10. laravel8实现图片验证码