Uploaded January 2014 | Updated September 2026, 2 weeks ago
A lot of the game's data passes through the routine at 0xB5 when it needs to be moved between registers. But we can easily apply a small hack to this routine so that each byte of each "chunk" of data has a predetermined chance of being overwritten by a completely random number. Obviously, the higher the chance we make it be, the more glitched the game will look, but the randomness of the process makes it so fun and unpredictable!
HEX (insert this at address 00B5): CD 5C 3E FE XX* 38 07 CD 5C 3E 23 12 18 02 2A 12 13 0B 79 B0 20 EA C9
0x100 - 0xXX out of 0x100 bytes get glitched
ASM:
GlitchedCopyData: ; 00B5
call GenRandom ; call 3E5C (generates random 8-bit number in a)
cp XX ; 0x100 - 0xXX out of 0x100 bytes get glitched
jr c, dontGlitch
.glitchByte
call GenRandom
inc hl
ld (de),a
jr, doneGlitching
.dontGlitch
ldi a,(hl)
ld (de),a
.doneGlitching
inc de
dec bc
ld a,c
or a,b
jr nz,GlitchedCopyData
ret
If you enjoyed this video, you won't regret having a look at my Youtube channel for more! - youtube.com/user/CrystaL12RG
A lot of the game's data passes through the routine at 0xB5 when it needs to be moved between registers. But we can easily apply a small hack to this routine so that each byte of each "chunk" of data has a predetermined chance of being overwritten by a completely random number. Obviously, the higher the chance we make it be, the more glitched the game will look, but the randomness of the process makes it so fun and unpredictable!
HEX (insert this at address 00B5): CD 5C 3E FE XX* 38 07 CD 5C 3E 23 12 18 02 2A 12 13 0B 79 B0 20 EA C9
0x100 - 0xXX out of 0x100 bytes get glitched
ASM:
GlitchedCopyData: ; 00B5
call GenRandom ; call 3E5C (generates random 8-bit number in a)
cp XX ; 0x100 - 0xXX out of 0x100 bytes get glitched
jr c, dontGlitch
.glitchByte
call GenRandom
inc hl
ld (de),a
jr, doneGlitching
.dontGlitch
ldi a,(hl)
ld (de),a
.doneGlitching
inc de
dec bc
ld a,c
or a,b
jr nz,GlitchedCopyData
ret
If you enjoyed this video, you won't regret having a look at my Youtube channel for more! - youtube.com/user/CrystaL12RG










