CARVIEW |
Select Language
HTTP/2 200
date: Sun, 12 Oct 2025 01:01:53 GMT
content-type: text/html; charset=UTF-8
server: cloudflare
x-frame-options: DENY
x-content-type-options: nosniff
x-xss-protection: 1;mode=block
vary: accept-encoding
cf-cache-status: DYNAMIC
content-encoding: gzip
set-cookie: _csrf-frontend=275b3890696a9bfd3fef3c80fec449700bf9f01f5d545d09180a33ab8e2675bca%3A2%3A%7Bi%3A0%3Bs%3A14%3A%22_csrf-frontend%22%3Bi%3A1%3Bs%3A32%3A%22j2YSN7t-KcTEI-zBFj0dvaYwBnataUDD%22%3B%7D; HttpOnly; Path=/
cf-ray: 98d2ab256bce6f7a-BLR
mapper design - Pastebin.com
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- up to 1024KB PRG ROM
- up to 1024KB PRG RAM
- PRG RAM and ROM can be mapped freely
- 32KB CHR RAM (up to 128KB)
- four screen mirroring
- scanline interrupts
- $4800 - Same as register $0e (IRQ)
- $5000 - Port address ($00-$0f)
- $5800 - Port data ($00-$ff)
- Like with MMC3 and FME-7, writing to Port Address selects a register to write to, and Port Data writes to the selected register.
- $00: CHR slot A
- $01: CHR slot B
- $02: CHR slot C
- $03: CHR slot D
- $04: CHR slot E
- $05: CHR slot F
- $06: CHR slot G
- $07: CHR slot H
- ..nn nnnn .5K bank
- ..nn nnn. 1K bank
- ..nn nn.. 2K bank
- ..nn n... 4K bank
- $08: Mirroring and CHR mode
- ..cc sfmm
- || ||++- mirroring mode
- || |+--- four-screen in last 4kb of CHR RAM, ignores mm if on
- || +---- swap $0xxx with $1xxx
- ++------ CHR mode
- Mirroring:
- 0: One-screen, lower bank of CIRAM
- 1: One-screen, upper bank of CIRAM
- 2: vertical mirroring (horizontal arrangement) from CIRAM
- 3: horizontal mirroring (vertical arrangement) from CIRAM
- When combined with sprite 0 or scanline IRQ, this allows four-screen mirroring and a status bar at the same time, as the playfield is in CHR RAM and the status bar is in CIRAM.
- CHR mode: (A through H are assigned in order)
- $0xxx | $1xxx
- 0: 1K, 1K, 1K, 1K | 1K, 1K, 1K, 1K
- 1: 2K, 1K, 1K | 2K, .5K, .5K, .5K, .5K
- 2: 2K, 2K | 1K, 1K, .5K, .5K, .5K, .5K
- 3: 4K | 1K, .5K, .5K, .5K, .5K, .5K, .5K
- PRG banks:
- rbbb bbbb
- |+++-++++- 8kb PRG bank
- +--------- 0=ROM, 1=RAM
- $09: PRG bank at $6000-$7fff
- $0a: PRG bank at $8000-$9fff
- $0b: PRG bank at $a000-$bfff
- $0c: PRG bank at $c000-$dfff
- $0d: PRG bank at $e000-$ffff
- Loss of M2 oscillation (caused by resets) causes register $0d to revert to a value of $7F, mapping the last ROM bank in the cart into $E000-$FFFF.
- $0e: Set IRQ count
- At the start of each scanline, the PPU freezes for a few cycles, and PPU A13 stays high for at least three consecutive cycles of PPU /RD. The mapper detects this and subtracts 1 from the value in $0e unless the value is $F0-$FF. While the value is 0, /IRQ is pulled low.
- Programming tip: Reading from the nametables or palette during vertical or forced blanking will cause counts unless you write $FF to port $0e.
- Some implementations may count M2 cycles (1.8 MHz) instead of PPU /RD cycles (2.7 MHz) to save a pin. Cost-reduced versions may lack IRQ logic entirely.
- $0f: Unused
Advertisement
Add Comment
Please, Sign In to add comment
-
ββ
Marketplace Glitch β
Working β
NEVER SEEN...
JavaScript | 8 sec ago | 0.25 KB
-
π Crypto Swap Glitch β
Working
JavaScript | 11 sec ago | 0.24 KB
-
ββ
Exploit 2500$ in 15 Minutesβββ S
JavaScript | 18 sec ago | 0.25 KB
-
π EASY MONEY GUIDE β
Working
JavaScript | 20 sec ago | 0.24 KB
-
π ChangeNOW Exploit
JavaScript | 30 sec ago | 0.24 KB
-
Free Crypto Method (NEVER SEEN BEFORE)ββ F
JavaScript | 43 sec ago | 0.25 KB
-
ββ
Swapzone Glitch β
Working ββ L
JavaScript | 52 sec ago | 0.25 KB
-
π Swapzone +37% glitch
JavaScript | 53 sec ago | 0.24 KB
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand