« GBA架构 (index)

GBA架构

Chapter 5: 音频


目录

  1. 功能
    1. PCM
    2. PSG(可编程声音生成器)
    3. 混合后
  2. 两全其美

GBA具有双声道采样播放器,可与传统的Game Boy音效系统结合使用。

功能

下面以索尼克进化2为例,对每个音频组件进行细分:

PCM

Video
Video - 仅PCM通道

新的声音系统现在可以播放PCM采样,它提供两个称为直接声音(Direct Sound)的通道,使用FIFO队列(以16字节缓冲器的形式实现)接收采样。

采样是8位有符号的(编码值从-128到127)。 默认采样率为32 kHz,但这取决于每款游戏:因为采样率越高,文件大小越大,CPU周期越长,所以并不是每款游戏都会花费同样多的资源在音频芯片上。

因此,必须使用DMA以避免挤占CPU周期。 定时器也可与队列保持同步。

PSG(可编程声音生成器)

Video
Video - 仅PSG通道

虽然Game Boy子系统不会共享其CPU,但它可以访问其PSG。 出于兼容性考虑,这与原始Game Boy上的设计相同。 我以前写过一篇文章,详细介绍了每个通道的具体情况。

大多数GBA游戏都将其用于伴奏或效果。 后期的音频引擎会针对PCM优化音乐设计,通常不再使用PSG。

混合后

Video
Video - 嗒哒——!

最后,所有声音都会自动混合并通过扬声器/耳机插孔输出。

尽管GBA仅有两条PCM通道,您可能会发现游戏实际能同步播放多个采样。 它是如何实现的? 虽然纸面参数显示仅有两条通道,但主CPU可通过分配运算周期对单通道内的采样进行实时编排与混音处理 (由此可窥见ARM7TDMI的强大算力!)。 这并非临时补救方案——在"操作系统"章节中您将发现,BIOS固件已内置音频序列器(audio sequencer)来辅助开发者完成此类任务。

两全其美

有些游戏进一步采用了PCM-PSG双重性,并根据具体情况"交替"使用主导芯片。

在这款游戏(地球冒险3(Mother 3))中,玩家可以进入两个不同的房间,一个是相对正常的房间,另一个是怀旧的房间。 根据角色所处房间的不同,同样的乐谱听起来会偏现代或偏8bit

Video
Video - 普通房间,只使用PCM。

Video
Video - 怀旧房间,PSG主导曲调。


Previous: 4. 图形

Next: 6. 操作系统


Rodrigo Copetti © 2026 RSS Feed

切换至现代版

主页 · 文章 · 支持 · 关于作者 · 关于此网站