| 45 | } |
| 46 | |
| 47 | unsigned CChannelMap::GetChipChannelCount(sound_chip_t chip) const { |
| 48 | if (HasExpansionChip(chip)) |
| 49 | switch (chip) { |
| 50 | case sound_chip_t::APU: return MAX_CHANNELS_2A03; |
| 51 | case sound_chip_t::VRC6: return MAX_CHANNELS_VRC6; |
| 52 | case sound_chip_t::VRC7: return MAX_CHANNELS_VRC7; |
| 53 | case sound_chip_t::FDS: return MAX_CHANNELS_FDS; |
| 54 | case sound_chip_t::MMC5: return MAX_CHANNELS_MMC5 - 1; // pcm not allowed here |
| 55 | case sound_chip_t::N163: return n163chs_; |
| 56 | case sound_chip_t::S5B: return MAX_CHANNELS_S5B; |
| 57 | } |
| 58 | return 0; |
| 59 | } |
| 60 | |
| 61 | bool CChannelMap::HasExpansionChip(sound_chip_t chips) const noexcept { |
| 62 | return GetExpansionFlag().ContainsChip(chips); |