Skip to content

Super Nintendo · Improvement

Prince of Persia - Photosensitivity Patch

By Cheesemeister

Prince of Persia · All hacks & resources →

About this project

Mod includes:
- Removal of all color flashing and strobe effects

Original game requirements

Database match: Prince of Persia (USA)
Database: No-Intro: Super Nintendo Entertainment System (v. 20210222-050638)
File/ROM SHA-1: 29CE1E32CF57D8284D0670949045C0D9128C3E1B
File/ROM CRC32: 891BB2BB

Database match: Prince of Persia (Japan)
Database: No-Intro: Super Nintendo Entertainment System (v. 20210222-050638)
File/ROM SHA-1: DE1D327F90EE57C8B20E2489109638B8632F18F5
File/ROM CRC32: CFC71E89

Creator credits

Cheesemeister
Hacking

RELEASE 1.0

Readme & instructions

7702readme.txt

Prince of Persia (USA).sfc IPS MD5: E4B97CC1626E1D8D16D44C6A362D44B1 ROM MD5 before: 8FFC8D34BC75BC049122894B4292EB85 ROM MD5 after: 545668397FC2AB3170AC3EC03C171D32 Prince of Persia (Japan).sfc IPS MD5: 79E2FD85B160F7A0306D256BF5975BD9 ROM MD5 before: 6F49DF735CD2CF9D351D549F1CBFDAA9 ROM MD5 after: 10551D8072E84913C12D86066698F034 Mod includes: - Removal of all color flashing and strobe effects $04C4 FlashColor ((0x0F | 0x80) >> 3) & 0x0E = 0x00 COLOR_BLACK ((0x1F | 0x80) >> 3) & 0x0E = 0x02 COLOR_BLUE ((0x2F | 0x80) >> 3) & 0x0E = 0x04 COLOR_RED ((0x3F | 0x80) >> 3) & 0x0E = 0x06 COLOR_PINK ((0x4F | 0x80) >> 3) & 0x0E = 0x08 COLOR_GREEN…

Read moreRead less
Prince of Persia (USA).sfc
IPS MD5:	E4B97CC1626E1D8D16D44C6A362D44B1
ROM MD5 before:	8FFC8D34BC75BC049122894B4292EB85
ROM MD5 after:	545668397FC2AB3170AC3EC03C171D32

Prince of Persia (Japan).sfc
IPS MD5:	79E2FD85B160F7A0306D256BF5975BD9
ROM MD5 before:	6F49DF735CD2CF9D351D549F1CBFDAA9
ROM MD5 after:	10551D8072E84913C12D86066698F034

Mod includes:
- Removal of all color flashing and strobe effects

$04C4 FlashColor
((0x0F | 0x80) >> 3) & 0x0E = 0x00	COLOR_BLACK
((0x1F | 0x80) >> 3) & 0x0E = 0x02	COLOR_BLUE
((0x2F | 0x80) >> 3) & 0x0E = 0x04	COLOR_RED
((0x3F | 0x80) >> 3) & 0x0E = 0x06	COLOR_PINK
((0x4F | 0x80) >> 3) & 0x0E = 0x08	COLOR_GREEN
((0x5F | 0x80) >> 3) & 0x0E = 0x0A	COLOR_LIGHT_BLUE
((0x6F | 0x80) >> 3) & 0x0E = 0x0C	COLOR_YELLOW
((0x7F | 0x80) >> 3) & 0x0E = 0x0E	COLOR_WHITE

$0508 PlayerHealth	0x00 ~ 0x0F
$050B BossHealth	0x00 ~ 0x0F
$2121 ColorSelectionRegister
$2122 ColorDataRegister

GameLoop:
$00/A379 AD 15 02    LDA $0215
$00/A37C F0 15       BEQ $15    [$A393]
$00/A37E 48          PHA
$00/A37F 29 04       AND #$04
// OLD
$00/A381 F0 03       BEQ $03    [$A386]
// END OLD
// NEW
$00/A381 80 03       BRA $03    [$A386]
// END NEW
$00/A383 20 C9 A4    JSR DoFlashEffect

DoFlashEffect:
$00/A4C9 08          PHP
$00/A4CA AD C4 04    LDA FlashColor
$00/A4CD 30 10       BMI $10    [$A4DF]
// Restore background color
$00/A4CF A9 1F       LDA #$1F
$00/A4D1 8D 2C 21    STA $212C
$00/A4D4 9C 21 21    STZ ColorSelectionRegister
$00/A4D7 9C 22 21    STZ ColorDataRegister
$00/A4DA 9C 22 21    STZ ColorDataRegister
$00/A4DD 80 1E       BRA $1E    [$A4FD]
// Flash background color
$00/A4DF E2 30       SEP #$30
$00/A4E1 4A          LSR A
$00/A4E2 4A          LSR A
$00/A4E3 4A          LSR A
$00/A4E4 29 0E       AND #$0E
$00/A4E6 AA          TAX
$00/A4E7 A9 08       LDA #$08
$00/A4E9 8D 2C 21    STA $212C
$00/A4EC 9C 21 21    STZ ColorSelectionRegister
$00/A4EF BF AC AB 02 LDA ColorTable,x
$00/A4F3 8D 22 21    STA ColorDataRegister
$00/A4F6 BF AD AB 02 LDA ColorTable+1,x
$00/A4FA 8D 22 21    STA ColorDataRegister
$00/A4FD 28          PLP
$00/A4FE 60          RTS

ColorTable:
$02/ABAC 00 00	COLOR_BLACK
$02/ABAE 00 7C	COLOR_BLUE
$02/ABB0 1F 00	COLOR_RED
$02/ABB2 1F 7C	COLOR_PINK
$02/ABB4 E0 03	COLOR_GREEN
$02/ABB6 E0 7F	COLOR_LIGHT_BLUE
$02/ABB8 FF 03	COLOR_YELLOW	
$02/ABBA FF 7F	COLOR_WHITE

MergeWithReflection:
$01/8CE3 A9 7F       LDA COLOR_WHITE
$01/8CE5 8D C4 04    STA FlashColor

$01/8F05 A9 7F       LDA COLOR_WHITE
$01/8F07 8D C4 04    STA FlashColor

Level20Cutscene:
$01/8F99 A9 7F       LDA COLOR_WHITE
$01/8F9B 8D C4 04    STA FlashColor

$01/9FD6 A9 7F       LDA COLOR_WHITE
$01/9FD8 8D C4 04    STA FlashColor

PlayerDamage0:
$01/CBDA A9 2F       LDA COLOR_RED
$01/CBDC 8D C4 04    STA FlashColor

PlayerDamage1:
$01/CC00 A9 2F       LDA COLOR_RED
$01/CC02 8D C4 04    STA FlashColor

$01/CFC8 A9 7F       LDA COLOR_WHITE
$01/CFCA 8D C4 04    STA FlashColor

SwordPickup:
$01/D012 A9 7F       LDA COLOR_WHITE
$01/D014 8D C4 04    STA FlashColor

$01/D029 A9 2F       LDA COLOR_RED
$01/D02B 8D C4 04    STA FlashColor

$01/D044 A9 6F       LDA COLOR_YELLOW
$01/D046 8D C4 04    STA FlashColor

JumpThroughMirror:
$01/D185 A9 2F       LDA COLOR_RED
$01/D187 8D C4 04    STA FlashColor

BossDefeated:
$01/E1BB A9 7F       LDA COLOR_WHITE
$01/E1BD 8D C4 04    STA FlashColor

$02/AE2A A9 6F       LDA COLOR_YELLOW
$02/AE2C 8D C4 04    STA FlashColor

BossFight:
$02/C210 A9 7F       LDA COLOR_WHITE
$02/C212 8D C4 04    STA FlashColor

$02/CCBF A9 7F       LDA COLOR_WHITE
$02/CCA1 8D C4 04    STA FlashColor

Download 7702readme.txt ↓

FROM THE COMMUNITY

Player reviews

0 reviews
No ratings yet

Played this project? Tell other players how it holds up.

Your take on Prince of Persia - Photosensitivity Patch

Spam has been overwhelming. To help us approve your review, sign up and introduce yourself in the Introductions forum so we know you’re not a bot.

Sign in with your Retro Replay account to rate this project and share your experience.

Sign in to review