changeset 386:6e5c4f3ab0e2

Fix channel mapping in key on/off register
author Mike Pavone <pavone@retrodev.com>
date Wed, 05 Jun 2013 19:26:02 -0700
parents e45327305bb7
children 582a68a90708
files ym2612.c
diffstat 1 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ym2612.c	Wed Jun 05 18:47:39 2013 -0700
+++ b/ym2612.c	Wed Jun 05 19:26:02 2013 -0700
@@ -527,7 +527,10 @@
 		}
 		case REG_KEY_ONOFF: {
 			uint8_t channel = value & 0x7;
-			if (channel < NUM_CHANNELS) {
+			if (channel != 3 && channel != 7) {
+				if (channel > 2) {
+					channel--;
+				}
 				for (uint8_t op = channel * 4, bit = 0x10; op < (channel + 1) * 4; op++, bit <<= 1) {
 					if (value & bit) {
 						first_key_on = 1;