’Cause all games were better on the GBC

You are not logged in.

#1 2014-12-19 01:36:05

New member
Registered: 2013-10-18
Post 3/4

Soooo close to getting AGIXP working with crystal

It may be due to the instability of AGIXP in windows 8.1, but I've gotten incredibly close to getting it to correctly unpack a sprite, and it fails with the exact same input on others. The closest to an image of Steelix (which appears to be the first sprite in the games' ROM), by looking at the offset 0x1280DB :

I got this offset by trial and error after starting at 0x128000 as per this file's offset: … ter/gsc.go

The page that had all the offsets for Pokemon Crystal is offline and there's no backup on the webarchive:

So if anyone has a copy, this would be ideal.
Steelix isn't my final goal; I'd like to get the sprites for trainer classes:

(aka the censored sprites: … d_Graphics )

Anyone happen to know of a link that I missed, or a guide, or willing to guide me through?

Last edited by wyatt8740 (2014-12-19 01:38:15)


#2 2014-12-19 17:06:43

Registered: 2010-10-16
Post 2,149/2,348

Re: Soooo close to getting AGIXP working with crystal

I don't remember if it works but I think that if you use AgiXp to insert a sprite to gold/silver rom and copy the sprite data to a crystal rom, the sprite is displayed fine in the game. So that would mean that the compression method in crystal is the same as it is in gold/silver. Not sure about this though.


#3 2014-12-20 01:34:02

New member
Registered: 2013-10-18
Post 4/4

Re: Soooo close to getting AGIXP working with crystal

thanks for the hint, but I needed the addresses that the sprites were at.
I eventually went to the IRC and got a bit of help, was eventually shown the disassembly at . I had to add a new bank for my sprites, after removing them from their original banks:
( editing gfx/pics.asm, add this to the bottom )

FisherPic:           INCBIN "gfx/trainers/fisher.7x7.2bpp.lz"
SwimmerfPic:         INCBIN "gfx/trainers/swimmer_f.7x7.2bpp.lz"
MediumPic:           INCBIN "gfx/trainers/medium.7x7.2bpp.lz"
SagePic:             INCBIN "gfx/trainers/sage.7x7.2bpp.lz"
BeautyPic:           INCBIN "gfx/trainers/beauty.7x7.2bpp.lz"

I had to patch gfx.c (there's a pull request there now to fix a bug) and I had to edit main.asm 's FixPicBank routine. Basically I removed everything in the routine and replaced it with the following lines:

FixPicBank: ; 511c5
        add $36

which fixes it. apparently the banks that sprites are allowed to be fetched from are constrained for some reason.

A big thanks to everyone on IRC for helping me (especially padz and sanky)!

The other recommended fix was to instead of the thing I did in main.c, to fix the pointers in the sprite banks. (This would be done instead of the FixPicBank correction above)

sed -i "s/ - $36//g" gfx/pics/pic_pointers.asm

Last edited by wyatt8740 (2014-12-20 01:46:47)


Board footer

Powered by FluxBB