Add Namco 163 Support
This commit is contained in:
parent
bdc29455cc
commit
5fdce33b11
16 changed files with 1225 additions and 6 deletions
|
|
@ -27,6 +27,7 @@ depending on the instrument type, there are currently 13 different types of an i
|
|||
- [VERA](vera.md) - for use with Commander X16 VERA.
|
||||
- [Seta/Allumer X1-010](x1_010.md) - for use with Wavetable portion in Seta/Allumer X1-010.
|
||||
- [Konami SCC/Bubble System WSG](scc.md) - for use with Konami SCC and Wavetable portion in Bubble System's sound hardware.
|
||||
- [Namco 163](n163.md) - for use with Namco 163.
|
||||
|
||||
# macros
|
||||
|
||||
|
|
|
|||
14
papers/doc/4-instrument/n163.md
Normal file
14
papers/doc/4-instrument/n163.md
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
# Namco 163 instrument editor
|
||||
|
||||
Namco 163 instrument editor consists of 10 macros.
|
||||
|
||||
- [Volume] - volume levels sequence
|
||||
- [Arpeggio]- pitch sequence
|
||||
- [Waveform pos.] - sets the waveform source address in RAM for playback (single nibble unit)
|
||||
- [Waveform] - sets waveform source for playback immediately or update later
|
||||
- [Waveform len.] - sets the waveform source length for playback (4 nibble unit)
|
||||
- [Waveform update] - sets the waveform update trigger behavior for playback
|
||||
- [Waveform to load] - sets waveform source for load to RAM immediately or later
|
||||
- [Wave pos. to load] - sets address of waveform for load to RAM (single nibble unit)
|
||||
- [Wave len. to load] - sets length of waveform for load to RAM (4 nibble unit)
|
||||
- [Waveform load] - sets the waveform load trigger behavior
|
||||
|
|
@ -2,4 +2,4 @@
|
|||
|
||||
Wavetable synthizers, in context of Furnace, are sound sources that operate on extremely short n-bit PCM streams. By extremely short, no more than 256 bytes. This amount of space is nowhere near enough to store an actual sampled sound, it allows certain amount of freedom to define a waveform shape. As of Furnace 0.5.8, wavetable editor affects PC Engine, WonderSwan and channel 3 of Game Boy.
|
||||
|
||||
Furnace's wavetable editor is rather simple, you can draw the waveform using mouse or by pasting an MML bit stream in the input field. Maximum wave width (length) is 256 bytes, and maximum wave height (depth) is 256. NOTE: Game Boy, PCE, WonderSwan and Bubble System can handle max 32 byte waveforms, X1-010 can handle max 128 byte waveforms as of now, with 16-level height for GB, X1-010 Envelope, WS and Bubble System, and 32-level height for PCE. If larger wave will be defined for these systems, it will be squashed to fit within the constraints of the system.
|
||||
Furnace's wavetable editor is rather simple, you can draw the waveform using mouse or by pasting an MML bit stream in the input field. Maximum wave width (length) is 256 bytes, and maximum wave height (depth) is 256. NOTE: Game Boy, PCE, WonderSwan and Bubble System can handle max 32 byte waveforms, X1-010 can handle max 128 byte waveforms as of now, with 16-level height for GB, X1-010 Envelope, WS, Bubble System and N163, and 32-level height for PCE. If larger wave will be defined for these systems, it will be squashed to fit within the constraints of the system.
|
||||
|
|
|
|||
|
|
@ -21,5 +21,6 @@ this is a list of systems that Furnace supports, including each system's effects
|
|||
- [Seta/Allumer X1-010](x1_010.md)
|
||||
- [WonderSwan](wonderswan.md)
|
||||
- [Bubble System WSG](bubblesystem.md)
|
||||
- [Namco 163](n163.md)
|
||||
|
||||
Furnace also reads .dmf files with the [Yamaha YMU759](ymu759.md) system, but does not emulate the chip at all.
|
||||
|
|
|
|||
25
papers/doc/7-systems/n163.md
Normal file
25
papers/doc/7-systems/n163.md
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
# Namco 163
|
||||
|
||||
This is Namco's one of NES mapper, with up to 8 wavetable channels. It has also 128 byte of internal RAM, both channel register and wavetables are stored here. Wavetables are variable size and freely allocable anywhere in RAM, it means it can be uses part of or merged 2 or more pre-loaded waveforms in RAM. But waveform RAM area becomes smaller as much as activating more channels; Channel register consumes 8 byte for each channels. You must avoid conflict with channel register area and waveform for avoid channel playback broken.
|
||||
|
||||
It has can be outputs only single channel at clock; so it's sound quality is more crunchy as much as activating more channels.
|
||||
|
||||
Furnace supports both load waveform into RAM and waveform playback simultaneously, and channel limit is dynamically changeable with effect commands.
|
||||
You must load waveform to RAM first for playback or do something, its load behavior is changeable to auto-update when every waveform changes or manual update.
|
||||
Both waveform playback and load command is works independently per each channel columns, (Global) commands are don't care about the channel columns for work commands and its load behavior is independent with per-channel column load commands.
|
||||
|
||||
# effects
|
||||
|
||||
- `10xx`: set waveform for playback.
|
||||
- `11xx`: set waveform position in RAM for playback. (single nibble unit)
|
||||
- `12xx`: set waveform length in RAM for playback. (04 to FC, 4 nibble unit)
|
||||
- `130x`: set playback waveform update behavior. (0: off, bit 0: update now, bit 1: update when every waveform is changed)
|
||||
- `14xx`: set waveform for load to RAM.
|
||||
- `15xx`: set waveform position for load to RAM. (single nibble unit)
|
||||
- `16xx`: set waveform length for load to RAM. (04 to FC, 4 nibble unit)
|
||||
- `170x`: set waveform load behavior. (0: off, bit 0: load now, bit 1: load when every waveform is changed)
|
||||
- `180x`: set channel limit (0 to 7, x + 1)
|
||||
- `20xx`: (Global) set waveform for load to RAM.
|
||||
- `21xx`: (Global) set waveform position for load to RAM. (single nibble unit)
|
||||
- `22xx`: (Global) set waveform length for load to RAM. (04 to FC, 4 nibble unit)
|
||||
- `230x`: (Global) set waveform load behavior. (0: off, bit 0: load now, bit 1: load when every waveform is changed)
|
||||
Loading…
Add table
Add a link
Reference in a new issue