you only need to read the byte value from 0x300001. If the value is below 192 (decimal) / C0 (hex) FREE PLAY mode is on and respectively if the value is above 191(decimal) / BF (hex) FREE PLAY mode is off.
You don't need to care about the other hardware dips.
if(volMEMBYTE(0x300001)<192) { free_play_mode=1 // FREE PLAY HARD DIP ON }else{ free_play_mode=0 // FREE PLAY HARD DIP OFF }
Here is a table with all possible hardware dip combinations for reference (ignoring FREEZE DIP 8 ):
the highest "FREE PLAY ON" value is 191
the lowest "FREE PLAY OFF" value is 192
| 0 | 1 | 2 | 3 | |------------------------------|------------------------------|------------------------------|------------------------------| | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | | 8 1000 0000 ON 80 128 | 8 1000 0001 ON 81 129 | 8 1000 0010 ON 82 130 | 8 1000 0011 ON 83 131 | | 9 1001 0000 ON 90 144 | 9 1001 0001 ON 91 145 | 9 1001 0010 ON 92 146 | 9 1001 0011 ON 93 147 | | A 1010 0000 ON A0 160 | A 1010 0001 ON A1 161 | A 1010 0010 ON A2 162 | A 1010 0011 ON A3 163 | | B 1011 0000 ON B0 176 | B 1011 0001 ON B1 177 | B 1011 0010 ON B2 178 | B 1011 0011 ON B3 179 | | C 1100 0000 OFF C0 192 | C 1100 0001 OFF C1 193 | C 1100 0010 OFF C2 194 | C 1100 0011 OFF C3 195 | | D 1101 0000 OFF D0 208 | D 1101 0001 OFF D1 209 | D 1101 0010 OFF D2 210 | D 1101 0011 OFF D3 211 | | E 1110 0000 OFF E0 224 | E 1110 0001 OFF E1 225 | E 1110 0010 OFF E2 226 | E 1110 0011 OFF E3 227 | | F 1111 0000 OFF F0 240 | F 1111 0001 OFF F1 241 | F 1111 0010 OFF F2 242 | F 1111 0011 OFF F3 243 | | 4 | 5 | 6 | 7 | |------------------------------|------------------------------|------------------------------|------------------------------| | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | | 8 1000 0100 ON 84 132 | 8 1000 0101 ON 85 133 | 8 1000 0110 ON 86 134 | 8 1000 0111 ON 87 135 | | 9 1001 0100 ON 94 148 | 9 1001 0101 ON 95 149 | 9 1001 0110 ON 96 150 | 9 1001 0111 ON 97 151 | | A 1010 0100 ON A4 164 | A 1010 0101 ON A5 165 | A 1010 0110 ON A6 166 | A 1010 0111 ON A7 167 | | B 1011 0100 ON B4 180 | B 1011 0101 ON B5 181 | B 1011 0110 ON B6 182 | B 1011 0111 ON B7 183 | | C 1100 0100 OFF C4 196 | C 1100 0101 OFF C5 197 | C 1100 0110 OFF C6 198 | C 1100 0111 OFF C7 199 | | D 1101 0100 OFF D4 212 | D 1101 0101 OFF D5 213 | D 1101 0110 OFF D6 214 | D 1101 0111 OFF D7 215 | | E 1110 0100 OFF E4 228 | E 1110 0101 OFF E5 229 | E 1110 0110 OFF E6 230 | E 1110 0111 OFF E7 231 | | F 1111 0100 OFF F4 244 | F 1111 0101 OFF F5 245 | F 1111 0110 OFF F6 246 | F 1111 0111 OFF F7 247 | | 8 | 9 | A | B | |------------------------------|------------------------------|------------------------------|------------------------------| | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | | 8 1000 1000 ON 88 136 | 8 1000 1001 ON 89 137 | 8 1000 1010 ON 8A 138 | 8 1000 1011 ON 8B 139 | | 9 1001 1000 ON 98 152 | 9 1001 1001 ON 99 153 | 9 1001 1010 ON 9A 154 | 9 1001 1011 ON 9B 155 | | A 1010 1000 ON A8 168 | A 1010 1001 ON A9 169 | A 1010 1010 ON AA 170 | A 1010 1011 ON AB 171 | | B 1011 1000 ON B8 184 | B 1011 1001 ON B9 185 | B 1011 1010 ON BA 186 | B 1011 1011 ON BB 187 | | C 1100 1000 OFF C8 200 | C 1100 1001 OFF C9 201 | C 1100 1010 OFF CA 202 | C 1100 1011 OFF CB 203 | | D 1101 1000 OFF D8 216 | D 1101 1001 OFF D9 217 | D 1101 1010 OFF DA 218 | D 1101 1011 OFF DB 219 | | E 1110 1000 OFF E8 232 | E 1110 1001 OFF E9 233 | E 1110 1010 OFF EA 234 | E 1110 1011 OFF EB 235 | | F 1111 1000 OFF F8 248 | F 1111 1001 OFF F9 249 | F 1111 1010 OFF FA 250 | F 1111 1011 OFF FB 251 | | C | D | E | F | |------------------------------|------------------------------|------------------------------|------------------------------| | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | 8765 4321 FREE HEX DEC | | 8 1000 1100 ON 8C 140 | 8 1000 1101 ON 8D 141 | 8 1000 1110 ON 8E 142 | 8 1000 1111 ON 8F 143 | | 9 1001 1100 ON 9C 156 | 9 1001 1101 ON 9D 157 | 9 1001 1110 ON 9E 158 | 9 1001 1111 ON 9F 159 | | A 1010 1100 ON AC 172 | A 1010 1101 ON AD 173 | A 1010 1110 ON AE 174 | A 1010 1111 ON AF 175 | | B 1011 1100 ON BC 188 | B 1011 1101 ON BD 189 | B 1011 1110 ON BE 190 | B 1011 1111 ON BF 191 | | C 1100 1100 OFF CC 204 | C 1100 1101 OFF CD 205 | C 1100 1110 OFF CE 206 | C 1100 1111 OFF CF 207 | | D 1101 1100 OFF DC 220 | D 1101 1101 OFF DD 221 | D 1101 1110 OFF DE 222 | D 1101 1111 OFF DF 223 | | E 1110 1100 OFF EC 236 | E 1110 1101 OFF ED 237 | E 1110 1110 OFF EE 238 | E 1110 1111 OFF EF 239 | | F 1111 1100 OFF FC 252 | F 1111 1101 OFF FD 253 | F 1111 1110 OFF FE 254 | F 1111 1111 OFF FF 255 |