You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: src/MMM01.md
+7-7
Original file line number
Diff line number
Diff line change
@@ -36,7 +36,7 @@ On startup (in "unmapped" mode), this is mapped to the first half of the menu pr
36
36
37
37
When a game is mapped, this area normally contains the first 16 KiB (bank 00) of the game ROM.
38
38
39
-
If [multiplex is enabled[(<#Multiplex Enable>)], entering mode 1 allows mapping game ROM banks $20, $40, and $60 to this region.
39
+
If [multiplex is enabled](<#Multiplex Enable>), entering mode 1 allows mapping game ROM banks $20, $40, and $60 to this region.
40
40
41
41
#### Addressing diagrams
42
42
@@ -75,7 +75,7 @@ i.e. in mapped mode, if `(ROM Bank Low) & ~(ROM Bank Mask)` is equal to $00 (ind
75
75
As an example, if ROM Bank Low is set to $10, and the ROM Bank Mask is set to $30, then the bank within the game ROM would be `($10) & ~($30) = $00`.
76
76
As game bank $00 is disallowed, the low bit is forced on, mapping bank $11 instead of $10.
77
77
78
-
If [multiplex is enabled[(<#Multiplex Enable>)], the MMM01 has the same limitation as MBC1 regarding accessing game ROM banks $20, $40, and $60 - they can only be mapped to 0000-3FFF (in mode 1), and not to 4000-7FFF.
78
+
If [multiplex is enabled](<#Multiplex Enable>), the MMM01 has the same limitation as MBC1 regarding accessing game ROM banks $20, $40, and $60 - they can only be mapped to 0000-3FFF (in mode 1), and not to 4000-7FFF.
79
79
80
80
#### Addressing diagrams
81
81
@@ -180,7 +180,7 @@ Setting these bits effectively reduces the size of the ram available to the game
180
180
| 10 | 16 KiB |
181
181
| 11 | 8 KiB |
182
182
183
-
If [multiplex is enabled[(<#Multiplex Enable>)], this mask still applies to the RAM Bank Low register, even though that register is used as part of the **ROM** bank number in multiplex mode.
183
+
If [multiplex is enabled](<#Multiplex Enable>), this mask still applies to the RAM Bank Low register, even though that register is used as part of the **ROM** bank number in multiplex mode.
184
184
This has the effect of reducing the ROM size instead of the RAM size, as follows:
185
185
186
186
| Mask | Game ROM |
@@ -225,7 +225,7 @@ This register represents an additional two bits of ROM bank number, for game sel
225
225
Affects both the 0000-3FFF and 4000-7FFF region.
226
226
Can only be used for game selection, as it's not writeable once entering a game (mapped mode).
227
227
228
-
If [multiplex is enabled[(<#Multiplex Enable>)], functionality is swapped with [RAM Bank Low](<#Bits 0-1: RAM Bank Low>) allowing for larger game ROM.
228
+
If [multiplex is enabled](<#Multiplex Enable>), functionality is swapped with [RAM Bank Low](<#Bits 0-1: RAM Bank Low>) allowing for larger game ROM.
229
229
230
230
### 4000-5FFF - RAM Bank Number (Write Only)
231
231
@@ -243,7 +243,7 @@ Bits: X 6 5 4 3 2 1 0
243
243
This is equivalent to the MBC1 RAM Bank register.
244
244
It can be masked to reduce its size, reserving some bits for game select (see [RAM Bank Mask](<#Bits 4-5: RAM Bank Mask>)).
245
245
246
-
If [multiplex is enabled[(<#Multiplex Enable>)], functionality is swapped with [ROM Bank Mid](<#Bits 5-6: ROM Bank Mid>) allowing for larger game ROM.
246
+
If [multiplex is enabled](<#Multiplex Enable>), functionality is swapped with [ROM Bank Mid](<#Bits 5-6: ROM Bank Mid>) allowing for larger game ROM.
247
247
248
248
#### Bits 1-2: RAM Bank High
249
249
@@ -330,7 +330,7 @@ Note: changing the mask can alter which bank would be mapped.
330
330
Only the _unmasked_ bits of [ROM Bank Low](<#Bits 0-4: ROM Bank Low>) are used for the "[attempting to map bank 0 maps bank 1](<#4000-7FFF - ROM Bank $01-7F (Read Only)>)" logic, and it updates live if the ROM Bank Mask changes.
331
331
ROM Bank Low itself doesn't change when this happens — only the value used for calculating the bank number.
332
332
333
-
If [multiplex is enabled[(<#Multiplex Enable>)], the [RAM Bank Mask](<#Bits 4-5: RAM Bank Mask>) affects ROM banking as well.
333
+
If [multiplex is enabled](<#Multiplex Enable>), the [RAM Bank Mask](<#Bits 4-5: RAM Bank Mask>) affects ROM banking as well.
334
334
In this case the ROM Bank Mask should be set to 00000 to avoid masking bits in the _middle_ of the full game ROM bank number.
335
335
336
336
#### Multiplex Enable
@@ -344,7 +344,7 @@ This is equivalent to the ["large ROM" wiring of an MBC1 cartridge](#MBC1).
344
344
345
345
## Multiplex addressing diagrams
346
346
347
-
If [multiplex is enabled[(<#Multiplex Enable>)], the addressing diagrams change as follows (changes marked with `*`):
347
+
If [multiplex is enabled](<#Multiplex Enable>), the addressing diagrams change as follows (changes marked with `*`):
0 commit comments