()
| 122 | } |
| 123 | |
| 124 | func (apu *APU) output() float32 { |
| 125 | p1 := apu.pulse1.output() |
| 126 | p2 := apu.pulse2.output() |
| 127 | t := apu.triangle.output() |
| 128 | n := apu.noise.output() |
| 129 | d := apu.dmc.output() |
| 130 | pulseOut := pulseTable[p1+p2] |
| 131 | tndOut := tndTable[3*t+2*n+d] |
| 132 | return pulseOut + tndOut |
| 133 | } |
| 134 | |
| 135 | // mode 0: mode 1: function |
| 136 | // --------- ----------- ----------------------------- |