Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt

This commit is contained in:
cam900 2023-01-12 23:31:56 +09:00
commit 536c345763
137 changed files with 2912 additions and 1818 deletions

View file

@ -32,6 +32,9 @@ these fields are 0 in format versions prior to 100 (0.6pre1).
the format versions are:
- 136: Furnace dev136
- 135: Furnace dev135
- 134: Furnace dev134
- 133: Furnace 0.6pre3
- 132: Furnace 0.6pre2
- 131: Furnace dev131
@ -386,8 +389,42 @@ size | description
STR | song author (Japanese)
STR | system name (Japanese)
STR | album/category/game name (Japanese)
--- | **extra chip output settings (× chipCount)** (>=135)
4f | chip volume
4f | chip panning
4f | chip front/rear balance
--- | **patchbay** (>=135)
4 | patchbay connection count
4?? | patchbay
| - see next section for more details.
1 | automatic patchbay (>=136)
```
# patchbay
Furnace dev135 adds a "patchbay" which allows for arbitrary connection of chip outputs to system outputs.
it eventually will allow connecting outputs to effects and so on.
a connection is represented as an unsigned int in the following format:
- bit 16-31: source port
- bit 0-15: destination port
a port is in the following format (hexadecimal): `xxxy`
- `xxx` (bit 4 to 15) represents a portset.
- `y` (bit 0 to 3) is the port in that portset.
reserved input portsets:
- `000`: system outputs
- `FFF`: "null" portset
reserved output portsets:
- `000` through `01F`: chip outputs
- `FFD`: wave/sample preview
- `FFE`: metronome
- `FFF`: "null" portset
# subsong
from version 95 onwards, Furnace supports storing multiple songs on a single file.