Custom player sprite

From Glitch City Wiki
Jump to navigation Jump to search
Playing as Kris in Pokémon Red
This article is incomplete. Please feel free to add any missing information about the subject.
Reason: Sprite encoding. This guide is useful, but only for copying VRAM data e.g. from other Game Boy games or the same game but different locations

Using arbitrary code execution, it is possible to create a custom player sprite.

English Red/Blue

Using a memory editor, write the desired sprite data (to be injected directly into the VRAM) at regions DA80-DC84 and then run the following at D53A (to run via jp D53A instruction) for an arbitrary code execution glitch item. Once run, the game will continue to constantly write the same data to VRAM and bypass VRAM inaccessibility once the menu is closed.

The player sprite is composed of four 'chunks', each size 0x80 (128). DA80 corresponds with 8000. DB01 corresponds with 8080. DB82 corresponds with 8800. DC03 corresponds with 8880.

ld hl,D36E

ld a,43

ldi [hl],a

ld a,D5

ldi [hl],a

ld de,8000

ld hl,DA80

ld bc,0080

call 00B5

ld de,8080

ld hl,DB01

ld bc,0080

call 00B5

ld de, 8800

ld hl,DB82

ld bc,0080

call 00B5

ld de,8880

ld hl,DC03

ld bc,0080

call 00B5

ret