75 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# tildearrow Sound Unit
 | 
						|
 | 
						|
a fantasy sound chip, used in the specs2 fantasy computer designed by tildearrow.
 | 
						|
 | 
						|
it has the following capabilities:
 | 
						|
- 8 channels of either waveform or sample
 | 
						|
- stereo sound
 | 
						|
- 8 waveforms (pulse, saw, sine, triangle, noise, periodic noise, XOR sine and XOR triangle)
 | 
						|
- 128 widths for the pulse wave
 | 
						|
- per-channel resonant filter
 | 
						|
- ring modulation
 | 
						|
- volume, frequency and cutoff sweep units (per-channel)
 | 
						|
- phase reset timer (per-channel)
 | 
						|
 | 
						|
## effects
 | 
						|
 | 
						|
- `10xx`: **set waveform.**
 | 
						|
  - `0`: pulse wave
 | 
						|
  - `1`: sawtooth
 | 
						|
  - `2`: sine wave
 | 
						|
  - `3`: triangle wave
 | 
						|
  - `4`: noise
 | 
						|
  - `5`: periodic noise
 | 
						|
  - `6`: XOR sine
 | 
						|
  - `7`: XOR triangle
 | 
						|
- `12xx`: **set pulse width.** range is `0` to `7F`.
 | 
						|
- `13xx`: **set resonance of filter.** range is `0` to `FF`.
 | 
						|
  - despite what the internal effects list says (`0` to `F`), you can use a resonance value from `0` to `FF` (255).
 | 
						|
- `14xx`: **set filter mode and ringmod.**
 | 
						|
  - bit 0: ring mod
 | 
						|
  - bit 1: low pass
 | 
						|
  - bit 2: high pass
 | 
						|
  - bit 3: band pass
 | 
						|
- `15xx`: **set frequency sweep period low byte.**
 | 
						|
- `16xx`: **set frequency sweep period high byte.**
 | 
						|
- `17xx`: **set volume sweep period low byte.**
 | 
						|
- `18xx`: **set volume sweep period high byte.**
 | 
						|
- `19xx`: **set cutoff sweep period low byte.**
 | 
						|
- `1Axx`: **set cutoff sweep period high byte.**
 | 
						|
- `1Bxx`: **set frequency sweep boundary.**
 | 
						|
- `1Cxx`: **set volume sweep boundary.**
 | 
						|
- `1Dxx`: **set cutoff sweep boundary.**
 | 
						|
- `1Exx`: **set phase reset period low byte.**
 | 
						|
- `1Fxx`: **set phase reset period high byte.**
 | 
						|
- `20xx`: **toggle frequency sweep.**
 | 
						|
  - bit 0-6: speed
 | 
						|
  - bit 7: up direction
 | 
						|
- `21xx`: **toggle volume sweep.**
 | 
						|
  - bit 0-4: speed
 | 
						|
  - bit 5: up direction
 | 
						|
  - bit 6: loop
 | 
						|
  - bit 7: alternate
 | 
						|
- `22xx`: **toggle cutoff sweep.**
 | 
						|
  - bit 0-6: speed
 | 
						|
  - bit 7: up direction
 | 
						|
- `4xxx`: **set cutoff.** range is `0` to `FFF`.
 | 
						|
 | 
						|
## info
 | 
						|
 | 
						|
this chip uses the [Sound Unit](../4-instrument/su.md) instrument editor.
 | 
						|
 | 
						|
## chip config
 | 
						|
 | 
						|
the following options are available in the Chip Manager window:
 | 
						|
 | 
						|
- **CPU rate**: sets the rate at which the chip will run.
 | 
						|
- **Sample memory**: sets the amount of memory available for samples.
 | 
						|
- **DAC resolution**: sets output resolution.
 | 
						|
- **Enable echo**: guess.
 | 
						|
- **Swap echo channels**: puts left into right and vice-versa.
 | 
						|
- **Echo delay**: set echo time.
 | 
						|
- **Echo resolution**: set echo resolution. sacrifices quality for time.
 | 
						|
- **Echo feedback**: guess.
 | 
						|
- **Echo volume**: yep, guess again.
 |