Skeetendo

’Cause all games were better on the GBC

You are not logged in.

#1 2018-11-15 10:10:34

NitroHedgehog
Member
Registered: 2017-06-25
Post 35/36

(PokeYellow) Macro 'CheckEvent' not defined

I am trying to compile a custom Yellow rom, but I get the following error:

$ make
rgbasm -h -o main.o main.asm
ERROR:  main.asm(15) -> home.asm(168) -> home/overworld.asm(250) :
        Macro 'CheckEvent' not defined
make: *** [Makefile:42: main.o] Error 5


What should I do? It only checks for specific events...

Offline

#2 2018-11-18 05:43:28

Danny-E 33
Administrator
Registered: 2012-06-09
Post 1,115/1,119

Re: (PokeYellow) Macro 'CheckEvent' not defined

In pokeyellow the CheckEvent macro is defined in constants/event_macros.asm
Double check that you are using a recent enough version of pokeyellow, double check that you have this file and that it is included properly

Offline

#3 2018-11-18 15:40:04

NitroHedgehog
Member
Registered: 2017-06-25
Post 36/36

Re: (PokeYellow) Macro 'CheckEvent' not defined

Yes, I have the file event_macros.asm file and I am using the recent pokeyellow github source. The rom got compiled... but the colors were totally messed-up. All grey and white were replaced by vivid red in the overworld, so I kinda abandoned my project since I do not know what to do (and I won't even mention how the title screen was BADLY messed up...) :/

Offline

#4 2018-11-23 16:03:28

Danny-E 33
Administrator
Registered: 2012-06-09
Post 1,118/1,119

Re: (PokeYellow) Macro 'CheckEvent' not defined

That kind of buggy behavior in the game almost always means that you introduced fatal bugs as a result of some code/data that you changed. Could be caused by several things though.

You might have corrupted the stack in a custom asm routine (too many/too few pushes/pops/calls/rets)
You might have corrupted registers in a custom asm routine such that when your custom code is finished and it begins executing original code again, unexpected values are in the registers
You might have have moved some code/data to another bank other than the bank that some part of the game expected it to be in
You might have misaligned a fixed-size data table (for example, if a data table is full of entries that are all 8 bytes, you could have accidentally edited an entry to have fewer or more than 8 bytes)
You might have misaligned a variable-size data table (for example, if a data table is full entries that could all be different sizes, you might have accidentally left out the terminator character that separates entries, usually $FF)

It could be any number of things, but these are some of the most common mistakes that slip by unnoticed.
So you should review all of your changes carefully and look for anything that might be a case of one of the examples above.

Offline

Board footer

Powered by FluxBB