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

2023-05-16

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

APU 有 5 个通道:

2 个方波 / 矩形波通道:

  1. 首先说一下方波和矩形波的区别, 但是在此之前要说明一个概念 – 占空比. 占空比是一个脉冲 (或外形) 触发时, 正脉冲持续时间 (A) 与整个外形总持续时间 (B) 的比值 (在这里的单位为 %) , 不同的占空比表现的声音也不同. 当 A 与 B 的持续时间相同时音色最平滑, 反之越尖锐. 在该通道中有 4 种占空比分别为: 12.5%; 25%; 50% 和 75%, 25% 和 75% 产生的音色相同, 但相位相反. 当占空比为 50% 时称为方波, 其它占空比称为矩形波, 也有直角波的叫法.
  2. 该通道支持 16 级别音量大小, 记号记作 0 (16 进制表示 00) 为静音, 15 (16 进制表示 0F) 为最大, 频率 54 Hz - 28000 Hz. 支持使用周期式包络使音量; 音高甚至占空比产生快速的变化.

1 个三角波通道:
APU 中的三角波不会像普通三角波那样精细, 你会听到一些伴随的杂音, 这是精度低的表现. 它既没有占空比也不能调节音量, 但和方波通道一样可以使用周期式包络实现琶音; 颤音和滑音.

1 个噪波通道:
使用一个伪随机数生成, 有 2 种生成模式: 32767 位和 93 位, 分别产生噪波, 短周期的噪波, 它们的音色随着随机数的变化会不同, 它和方波通道一样可以使用包络, 16 级别音量大小,

1 个 DPCM 采样通道:
使用 1 位 Delta 调制方法和 7 位 DAC 混合非线性输出播放简短的采样, 采样的音量过大会影响到三角波和噪波通道的音量. 最高采样率 33144 Hz. 该通道无法调节音量.

以上是 FC 自带的声音通道, 还有一些为了增强音乐的表现力而增设的扩展音源:

MMC5: 任天 (di) 堂 (yu) 开发的扩展音源, 具有 2 个方波 / 矩形波通道, 使用方法和 2A03 APU 相同.

VRC6: Konami 开发的扩展音源, 具有 2 个方波 / 矩形波通道和 1 个锯齿波通道, 方波 / 矩形波支持 6 种占空比调整, 而锯齿波有 2 种音色 (外形) 选择.

VRC7: 同样是 Konami 的扩展音源, 包含一个 YAMAHA - YM2413 FM 合成器, 具备 6 个相同的通道, 每个通道都可以实现丰富变化的声音, 在 FC 游戏中, 只有一款游戏使用了该音源. 该音源打破了以往红白机音乐单调的感觉.

N106: Namco 开发的扩展音源, 具备 8 个可变外形的通道, 不支持 FM 合成, 所以表现力和 2A03 相当, 外形精度 32 步进.

FDS: 任天 (di) 堂 (yu) 磁盘机上的扩展音源, 具备 1 个外形精度为 64 步进的 FM 合成通道.

FME - 7 (SUN5B): Sunsoft 开发的扩展音源, 可以发出 50% 方波; 噪音以及两种混合的声音, 不太好.

转载:https://site.douban.com/YamatoRyou/widget/notes/5557099/note/297356495/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

简单介绍红白机的发声系统以及其它音源 MMC 的相关文章

  • 模式识别 一

    模式识别 教材选择模式识别基本概念模式识别的主要方法应用领域模式识别与机器学习的区别模式识别典型过程前修基础课程课后问题解答1 简述特征空间优化的方法2 简述分类器的设计准则3 简述分类器设计的基本方法4 简述在什么情况下分类器不可分5 分
  • Docker 持久化存储 Bind mounts

    Docker 持久化存储 Bind mounts Bind mounts 的 v 与 mount 区别启动容器基于bind mount挂载到容器中的非空目录只读 bind mountcompose 中使用 bind mount 官方文档 x
  • BGP路由技术详解(一)

    BGP路由技术详解 xff08 一 xff09 前言一 BGP路由协议概述1 BGP定义2 BGP的特点3 BGP分类4 BGP的路径矢量特征5 BGP的路由器6 BGP Peer 二 自治系统AS的概念1 定义2 AS号3 传输AS中的路
  • 计算机网络知识点(三) 数据链路层

    目录 第三章 数据链路层 3 1 数据链路层的设计问题 3 1 1 提供给网络层的服务 3 1 2 成帧 3 1 3 差错控制 3 1 4 流量控制 3 2 差错检测和纠正 3 2 1 纠错码 3 2 2 检错码 3 3 基本数据链路层协议
  • IP地址划分子网

    前言 记录的内容仅是本人在学习IP的路上的一些心得体会 IP组成 网络号 43 主机号 其实说到底就是一连串的二进制 地址分类 A类 xff1a 10 0 0 0 xff5e 10 255 255 255 B类 xff1a 172 16 0
  • 电脑网络(校园网/热点)持续连不上,连上后自动断联

    ipconfig flushdns xff1a 无效重启解决 xff1a
  • 工厂模式

    1 工厂方法 针对一个产品一个工厂 span class token keyword interface span span class token class name Moveable span span class token pun
  • 使用VSCode快速提交Gitee

    使用VSCode提交Gitee 前言下载GitGitee创建仓库使用VSCode克隆仓库到本地源代码管理界面说明保存账号密码 xff0c 不用每次提交输入 前言 每次用GitHub都要FQ xff0c 所以改用Gitee 下载Git Git
  • 配置webpack-dev-server自动化

    1 注意版本 xff0c 可能会有冲突 个人建议使用以下版本 xff0c 本人没有出现冲突 34 webpack 34 34 5 42 1 34 34 webpack cli 34 34 4 9 2 34 34 webpack dev se
  • Docker容器时间和服务器时间相差8小时

    项目场景 xff1a 在微服务部署时使用docker作为容器 xff0c 部署在服务器上时间不一致 问题描述 在服务器上使用docker进行项目部署时 xff0c docker容器时间和服务器时间相差8小时 xff0c 导致插入数据库时间不
  • anaconda中使用pip无法安装库到指定环境下的问题(已解决)

    参考文章 xff1a https blog 51cto com u 15060549 4662570 login 61 from csdn 大致意思就是通过修改site py文件中的 这段代码 xff0c 将这两个变量修改为环境自身的路径即
  • 使用Java实现HDFS文件读写

    1 HDFS读文件 2 HDFS写文件 3 实例操作 3 1新建Mawen工程 3 2在pom xml中将标签中内容替换为以下代码 xff0c 静待依赖包下载完毕 lt dependencies gt lt dependency gt lt
  • GD32F303移植FreeRTOS多任务调度只能执行一个任务解决办法

    1 问题描述 GD32F303移植完FreeRTOS后创建多个任务 xff0c 运行的时候只有一个任务在运行 xff0c 其余任务处于卡死不运行状态 xff0c void start task void pvParameters taskE
  • npm显示升级到最新版本仍然显示npm为原版本的问题解决

    文章目录 前言一 问题描述二 问题原因三 解决方法1 查看npm安装路径2 修改npm全局安装路径命令3 npm更新命令 总结 前言 在升级npm版本时遇到了显示版本升级成功 xff0c 但是在继续执行npm v命令查看npm版本时仍然显示
  • 教你做一个属于自己的平衡小车,用STM32F103单片机实现(代码篇)

    平衡小车软件篇 平衡小车硬件篇 目录 一 定时器相关代码 1 TIM2 2 TIM3和TIM4 二 中断相关代码 三 电机相关代码 四 OLED屏幕和MUP6050相关代码 五 PID函数 1 直立环 2 速度环 3 转向环 六 控制函数
  • MySQL报错Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column whic

    报错信息 报错信息及语句如下 span class token keyword SELECT span i span class token punctuation span sku id sku id span class token p
  • Ros2 Foxy:apt-get update过程中密钥问题

    本人在Ubuntu20 04中根据官方文档Foxy安装Rox2出现 The following signatures couldn t be verified because the public key is not available
  • CSS解决高度塌陷的几种方式

    浮动元素对兄弟元素的影响 当设置元素浮动时 xff0c 会脱离文档流 xff0c 飘在不设置浮动兄弟元素的上面 xff0c 不占据底下的屏幕位置 注意文字是不会被浮动元素覆盖掉 清除浮动的方式 两个元素同时设置浮动 clear both 清
  • Integer值比较

    包装类与基本数据类型 包装类是将基本数据类型封装成一个类 xff0c 包含属性和名称 使用 xff1a 在使用过程中 xff0c 会涉及到自动装箱和自动拆箱 装箱 xff1a 将基本数据类型转换成包装类 span class token c
  • java理解向上转型和向下转型

    在讲述向上转型和向下转型之前 我们先简单讲解下多态 如果后续看了有关多态的讲解还是不弄 只能自己上网去查阅和理解 多态概念 多态是面向对象程序设计 xff08 OOP xff09 的一个重要特征 xff0c 指同一个实体同时具有多种形式 x

随机推荐

  • LCD1602和12864简单的介绍

    实验室培训总结1 这个寒假有幸参与到了学校的实验室培训 xff0c 真的是受益良多 xff0c 也学习到了芯片的使用 先讲以下首先学习到了1602的液晶屏的使用 xff0c 驱动一个模块无非就是通过根据所给的时序图进行一系列的编写 xff0
  • msOs

    对ms0S的总结 由于msOS对比51比较难学 xff0c 这里也不太好总结 xff0c 第一印象是就是功能太强大 xff0c 很多寄存器都封装在一个结构体里面 xff0c 方便调用 xff0c 因为这个msOs基于STM32进行改变等待
  • MySQL学习-体系架构

    连接层 最上层 xff08 客户端连接器到连接池这一部分 xff09 是一些客户端和链接服务 xff0c 主要完成一些类似于连接处理 授权认证 及相关的安全方案 服务器也会为安全接入的每个客户端验证它所具有的操作权限 服务层 第二层架构 x
  • 有关显示器的缩放比例和分辨率的设置问题

    今天我们来讨论桌面 显示设置中的这两个功能 缩放比例 xff1a 首先我们要知道计算机的显示器图像的显示是靠底层的发光片来实现的 xff08 每个发光片都是一个像素点 xff09 而大显示器和小显示器每个像素点的大小不同 xff0c 但是如
  • TS快速入门-函数

    在TS里 xff0c 虽然已经支持类 xff0c 命名空间和模块 xff0c 但函数仍然是主要的定义行为的地方 TS中的函数大部分和JS相同 不同之处在于ts会给函数返回值和参数加上类型声明 在TS中 xff0c 函数仍然是最基本 最重要的
  • SpringBoot整合shiro——简单的demo

    结构目录 前端页面代码部分 index html span class token doctype span class token punctuation lt span span class token doctype tag DOCT
  • Kali Linux的vi编辑器/vim编辑器使用方法

    转载声明 xff1a 本文为转载文章 原文地址 xff1a https www 52host cn blog kali linux vi editor Kali Linux系统的vi编辑器 vim编辑器的使用和CentOS有很多不同 基本使
  • 〖小狼毫〗小狼毫使用教程『完善版本』

    一 声明 因为我这里只有win10电脑 xff0c 就以win10系统电脑五笔86输入方案为例 xff0c 其他系统的可以这此为基础进行参考 xff1b 个人建议先在虚拟机里配置好 xff0c 再移到宿主机上 xff08 大佬除外 xff0
  • podman网络、常用命令、以及容器的开机自启

    目录 1 podman网络1 1 rootfull和rootless容器网络之间的差异1 2 防火墙1 3 容器间通信示例 xff1a 1 4 查看防火墙规则 2 podman常用命令3 容器的开机自启3 1 root用户3 2 普通用户
  • CountDownLatch 、ReentryLock、CyclicBarrier 、ReadWriteLock 、Semaphore、Exchanger、LockSupport

    CountDownLatch 又叫门栓 xff0c 初始化设置一个值 xff0c 当这个值等于0时 xff0c 是否锁 span class token keyword private span span class token keywo
  • keil v5中下载程序时遇到错误:NO ULINK2/ME Device found

    在使用keil v5中使用J LINK连接STM32F407ZE时 xff0c 下载程序时 xff0c 遇到错误 xff1a NO ULINK2 ME Device found 点击确定后又会弹出 Error 点一下魔术棒 然后 确定 就可
  • centos8安装docker报错解决(yum更换最新阿里源)

    文章目录 遇到错误原因分析解决办法 遇到错误 起因是我想在centos8上面下载一个docker xff0c 这个centos8部署在阿里云的ECS服务器上 xff0c 但是每次执行安装命令就疯狂报错 xff1a span class to
  • CentOS7安装tomcat9并设置开机启动

    1 下载tomcat9 CentOS7下创建目录并下载文件 xff1a cd usr local mkdir tomcat cd tomcat wget 43 官网复制的tomcat下载链接 或者去官网下载tomcat9 xff0c 并上传
  • 2020-08-09

    广西 河池学院 广西高校重点实验室培训基地 系统控制与信息处理重点实验室 本篇博客来自河池学院 智控无人机小组 写作时间 2020年8月9日 周报 一 了解了msOS系统的系统框架和页面显示 msOS是 1 基于 C 语言 xff0c 没有
  • KEIL5中Debug调试

    文章目录 前言一 进入调试二 介绍调试工具栏二 搜索寻找 三 特殊的窗口1 命令输出窗口2 寄存器窗口3 汇编语言窗口4 变量查看窗口5 检测自己想要看的 总结 前言 其实我经常用的调试方法是在指定行加Printf 通过串口查看打印的信息
  • 我也是醉了,KEIL5程序下载后不自动运行?

    TMD烦死了 xff0c 你们敢信 xff1f 我学了两年的STM32 xff0c 竟然因为下载程序不自动运行去问其他工程师 xff0c 又被嘲讽了一顿 生气归生气 xff0c 问题还是要解决 我想大家既然都看到这里 xff0c 那一定不是
  • RuntimeError: NCCL error in: ../torch/csrc/distributed/c10d/ProcessGroupNCCL.cpp:1123, internal erro

    问题存在于 xff0c 分布式训练时我的网卡没指定正确 xff1a 用命令ifconfig查看网卡 xff0c 然后重新设置
  • 腾讯云轻量级服务器Ubuntu系统搭建可视化界面

    前言 xff1a 以云服务器的方式搭建Linux workstation对比在电脑本地安装虚拟机的优势在于 xff0c 不需要占用本地电脑资源空间 xff0c 网络环境等相对稳定 xff0c 可以用手机等轻量移动设备连接管理等 本文主要介绍
  • 1.JAVA 利用ArrayList实现个学生信息存储的功能

    1 JAVA 利用ArrayList实现个学生信息存储的功能 建立one类 span class token keyword package span 练手 span class token punctuation span span cl
  • 简单介绍红白机的发声系统以及其它音源 MMC

    红白机的音源 Yamato Ryou 2013 08 23 14 52 26 本文将简单介绍红白机的发声系统以及其它音源 MMC 红白机下称 FC 其中的伪声音处理器称作 APU 我才不告诉你称作 2A03 其实也没错 APU 有 5 个通