Mario Kart 64
Loading...
Searching...
No Matches
defines.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define OK   1
 Options for Controller Pak state.
 
#define BAD   0
 
#define DEBUG_MODE   0
 Enable debug mode.
 
#define DEBUG_MENU   1
 
#define HOLD_ALL_DPAD_AND_C_BUTTONS    (U_JPAD | L_JPAD | R_JPAD | D_JPAD | U_CBUTTONS | L_CBUTTONS | R_CBUTTONS | D_CBUTTONS)
 
#define DEBUG_MENU_DISABLED   1
 Options for gDebugMenuSelection.
 
#define DEBUG_MENU_DEBUG_MODE   2
 
#define DEBUG_MENU_COURSE   3
 
#define DEBUG_MENU_SCREEN_MODE   4
 
#define DEBUG_MENU_PLAYER   5
 
#define DEBUG_MENU_SOUND_MODE   6
 
#define DEBUG_MENU_GIVE_ALL_GOLD_CUP   7
 
#define DEBUG_MENU_EXITED   64
 
#define DEBUG_GOTO_RACING   0
 Options for gDebugGotoScene.
 
#define DEBUG_GOTO_ENDING   1
 
#define DEBUG_GOTO_CREDITS_SEQUENCE_CC_50   2
 
#define DEBUG_GOTO_CREDITS_SEQUENCE_CC_EXTRA   3
 
#define DEMO_MODE_ACTIVE   1
 Jump to demo mode from the debug menu using L and A.
 
#define DEMO_MODE_INACTIVE   0
 
#define COURSE_TIMER_ITER   0.01666666
 
#define COURSE_TIMER_ITER_f   0.01666666f
 
#define V_BlANK_TIMER_ITER   0.01666666
 
#define PLAYER_INACTIVE   0
 
#define PLAYER_UNKNOWN_0x40   (1 << 6)
 
#define PLAYER_INVISIBLE_OR_BOMB   (1 << 8)
 
#define PLAYER_STAGING   (1 << 9)
 
#define PLAYER_UNKNOWN   (1 << 10)
 
#define PLAYER_CINEMATIC_MODE   (1 << 11)
 
#define PLAYER_KART_AI   (1 << 12)
 
#define PLAYER_START_SEQUENCE   (1 << 13)
 
#define PLAYER_HUMAN   (1 << 14)
 
#define PLAYER_EXISTS   (1 << 15)
 
#define PLAYER_HUMAN_AND_KART_AI   PLAYER_EXISTS | PLAYER_HUMAN | PLAYER_KART_AI | PLAYER_START_SEQUENCE
 
#define ZERO_PLAYERS_SELECTED   0
 
#define ONE_PLAYERS_SELECTED   1
 
#define TWO_PLAYERS_SELECTED   2
 
#define THREE_PLAYERS_SELECTED   3
 
#define FOUR_PLAYERS_SELECTED   4
 
#define SELECTED_PLAYER_DEFINES_TOTAL   5
 
#define NUM_PLAYERS   8
 
#define MARIO_SIZE   0.75f
 
#define LUIGI_SIZE   0.75f
 
#define YOSHI_SIZE   0.75f
 
#define TOAD_SIZE   0.75f
 
#define DK_SIZE   0.75f
 
#define WARIO_SIZE   0.75f
 
#define PEACH_SIZE   0.75f
 
#define BOWSER_SIZE   0.75f
 
#define MAX_NUM_MAIN_MENU_GAME_TYPES   3
 
#define GRAND_PRIX   0
 Options for gModeSelection.
 
#define TIME_TRIALS   1
 
#define VERSUS   2
 
#define BATTLE   3
 
#define CC_50   0
 Options for gCCSelection CC stands for cubic-centimetres. It measures engine displacement composed from cylinder volume. Generally, the main determiner of horsepower output.
 
#define CC_100   1
 
#define CC_150   2
 
#define CC_EXTRA   3
 
#define CC_BATTLE   4
 
#define NUM_COURSES_PER_CUP   4
 
#define MARIO   0
 Character IDs Note that these are not the same as the values found in gCharacterGridSelections as those are ordered by table.
 
#define LUIGI   1
 
#define YOSHI   2
 
#define TOAD   3
 
#define DK   4
 
#define WARIO   5
 
#define PEACH   6
 
#define BOWSER   7
 
#define OPTIONS_MENU   5
 Options for gMenuSelection.
 
#define DATA_MENU   6
 
#define COURSE_DATA_MENU   7
 
#define LOGO_INTRO_MENU   8
 
#define CONTROLLER_PAK_MENU   9
 
#define START_MENU   10
 
#define MAIN_MENU   11
 
#define PLAYER_SELECT_MENU   12
 
#define COURSE_SELECT_MENU   13
 
#define RACING_DUPLICATE   14
 
#define START_MENU_FROM_QUIT   0
 Options for gGameState gGotoMode and gGotoMenu.
 
#define MAIN_MENU_FROM_QUIT   1
 
#define PLAYER_SELECT_MENU_FROM_QUIT   2
 
#define COURSE_SELECT_MENU_FROM_QUIT   3
 
#define RACING   4
 
#define ENDING   5
 
#define CREDITS_SEQUENCE   9
 
#define BLANK_MAIN_MENU   0
 Options for gMainMenuSelectionDepth.
 
#define OPTIONS_SELECTION   1
 
#define DATA_SELECTION   2
 
#define PLAYER_NUM_SELECTION   3
 
#define GAME_MODE_SELECTION   4
 
#define GAME_MODE_CC_OR_TIME_TRIALS_OPTIONS_SELECTION    5
 
#define CONFIRM_OK_SELECTION   6
 
#define CONFIRM_OK_SELECTION_FROM_BACK_OUT   7
 
#define TIME_TRIALS_DATA_SELECTION_FROM_BACK_OUT   8
 
#define CONTROLLER_PAK_MENU_SELECT_RECORD   1
 Options for gControllerPakMenuSelection.
 
#define CONTROLLER_PAK_MENU_END   2
 
#define CONTROLLER_PAK_MENU_ERASE   3
 
#define CONTROLLER_PAK_MENU_QUIT   4
 
#define CONTROLLER_PAK_MENU_TABLE_GAME_DATA   5
 
#define CONTROLLER_PAK_MENU_GO_TO_ERASING   6
 
#define CONTROLLER_PAK_MENU_ERASING   7
 
#define CONTROLLER_PAK_MENU_ERASE_ERROR_NOT_ERASED   8
 
#define CONTROLLER_PAK_MENU_ERASE_ERROR_NO_PAK   9
 
#define CONTROLLER_PAK_MENU_ERASE_ERROR_PAK_CHANGED   10
 
#define SCREEN_MODE_1P   0
 Options for gScreenModeSelection and gActiveScreenMode.
 
#define SCREEN_MODE_2P_SPLITSCREEN_HORIZONTAL   1
 
#define SCREEN_MODE_2P_SPLITSCREEN_VERTICAL   2
 
#define SCREEN_MODE_3P_4P_SPLITSCREEN   3
 
#define NUM_SCREEN_MODES   4
 
#define TIME_TRIAL_3LAP_RECORD_1   0
 Indexes for accessing Time Trial records.
 
#define TIME_TRIAL_3LAP_RECORD_2   1
 
#define TIME_TRIAL_3LAP_RECORD_3   2
 
#define TIME_TRIAL_3LAP_RECORD_4   3
 
#define TIME_TRIAL_3LAP_RECORD_5   4
 
#define TIME_TRIAL_1LAP_RECORD   5
 
#define TEXT_BLUE   0
 Text color options The 2 cycling options cycle through Blue -> Green -> Red Cycle 2 appears to be one step ahead of Cycle 1 Other values like 6 and 7 sort of work, they cause rapid flashing between 2 colors, but also cause individual characters to be cutoff on their right side.
 
#define TEXT_GREEN   1
 
#define TEXT_RED   2
 
#define TEXT_YELLOW   3
 
#define TEXT_BLUE_GREEN_RED_CYCLE_1   4
 
#define TEXT_BLUE_GREEN_RED_CYCLE_2   5
 
#define SOUND_STEREO   0
 Sound mode options Option 2 appears to be unused, as such its probably not a valid option.
 
#define SOUND_HEADPHONES   1
 
#define SOUND_UNUSED   2
 
#define SOUND_MONO   3
 
#define NUM_SOUND_MODES   4
 
#define DEMO_ONE   0
 Title screen demo options All demos use 100 CC.
 
#define DEMO_TWO   1
 
#define DEMO_THREE   2
 
#define DEMO_FOUR   3
 
#define DEMO_FIVE   4
 
#define DEMO_SIX   5
 
#define NUM_DEMOS   6
 
#define BALLOON_STATUS_GONE   0
 Balloon status.
 
#define BALLOON_STATUS_PRESENT   1
 
#define BALLOON_STATUS_DEPARTING   2
 
#define MAX_TIME   0x927C0
 Max representable time, 100 minutes measured in centiseconds.
 
#define HIT_SOUND_EFFECT   0x100
 sound effect of player's for soundEffect
 
#define BOOST_SOUND_EFFECT   0x200
 
#define BOO_SOUND_EFFECT   0x800
 
#define STAR_SOUND_EFFECT   0x2000
 
#define HIT_ROTATING_SOUND_EFFECT   0x4000
 
#define BOOST_RAMP_WOOD_SOUND_EFFECT   0x8000
 
#define HOLD_BANANA_SOUND_EFFECT   0x40000
 
#define REVERSE_SOUND_EFFECT   0x400000
 
#define BOOST_RAMP_ASPHALT_SOUND_EFFECT   0x800000
 
#define HIT_BY_ITEM_SOUND_EFFECT   0x1000000
 
#define BOOST_RAMP_WOOD_EFFECT   0x4
 effect of player's for effects
 
#define STAR_EFFECT   0x200
 
#define BOOST_EFFECT   0x2000
 
#define BOOST_RAMP_ASPHALT_EFFECT   0x100000
 
#define HIT_BY_ITEM_EFFECT   0x2000000
 
#define HIT_EFFECT   0x4000000
 
#define LIGHTNING_EFFECT   0x40000000
 
#define BOO_EFFECT   0x80000000
 
#define SPAWN_FIRST_SHELL   0
 shell state
 
#define SPAWN_SECOND_SHELL   1
 
#define SPAWN_THIRD_SHELL   2
 
#define GPACK_RGB888(r, g, b)   (((r) << 16) | ((g) << 8) | (b))
 
#define COLOR_LIGHT   GPACK_RGB888(0x1C, 0x00, 0x00)
 
#define COLOR_LAVA   GPACK_RGB888(0x34, 0x00, 0x00)
 
#define COLOR_BLACK   GPACK_RGB888(0, 0, 0)
 
#define GRID_SIZE   32
 
#define FACING_Y_AXIS   0x4000
 
#define FACING_X_AXIS   0x8000
 
#define FACING_Z_AXIS   0x2000
 

Enumerations

enum  PlayerId {
  PLAYER_NONE = -1 , PLAYER_ONE = 0 , PLAYER_TWO = 1 , PLAYER_THREE = 2 ,
  PLAYER_FOUR = 3 , PLAYER_FIVE = 4 , PLAYER_SIX = 5 , PLAYER_SEVEN = 6 ,
  PLAYER_EIGHT = 7
}
 
enum  {
  MUSHROOM_CUP , FLOWER_CUP , STAR_CUP , SPECIAL_CUP ,
  BATTLE_CUP , NUM_CUPS
}
 Options for gCupSelection There is a "cup" for battle mode, probably so that the battle courses could be displayed in the same way race courses are. More...
 
enum  { COURSE_ONE , COURSE_TWO , COURSE_THREE , COURSE_FOUR }
 Options for gCourseIndexInCup. More...
 
enum  ITEMS {
  ITEM_NONE = 0 , ITEM_BANANA , ITEM_BANANA_BUNCH , ITEM_GREEN_SHELL ,
  ITEM_TRIPLE_GREEN_SHELL , ITEM_RED_SHELL , ITEM_TRIPLE_RED_SHELL , ITEM_BLUE_SPINY_SHELL ,
  ITEM_THUNDERBOLT , ITEM_FAKE_ITEM_BOX , ITEM_STAR , ITEM_BOO ,
  ITEM_MUSHROOM , ITEM_DOUBLE_MUSHROOM , ITEM_TRIPLE_MUSHROOM , ITEM_SUPER_MUSHROOM
}
 Item IDs. More...
 
enum  KART_AI_BEHAVIOURS {
  BEHAVIOUR_NONE = 0 , BEHAVIOUR_1 , BEHAVIOUR_HOP , BEHAVIOUR_3 ,
  BEHAVIOUR_4 , BEHAVIOUR_5 , BEHAVIOUR_NORMAL_SPEED , BEHAVIOUR_FAST_SPEED ,
  BEHAVIOUR_SLOW_SPEED , BEHAVIOUR_9 , BEHAVIOUR_10 , BEHAVIOUR_MAX_SPEED
}
 
enum  DIRECTION { NORTH , EAST , SOUTH , WEST }
 

Macro Definition Documentation

◆ BAD

#define BAD   0

◆ BALLOON_STATUS_DEPARTING

#define BALLOON_STATUS_DEPARTING   2

◆ BALLOON_STATUS_GONE

#define BALLOON_STATUS_GONE   0

Balloon status.

◆ BALLOON_STATUS_PRESENT

#define BALLOON_STATUS_PRESENT   1

◆ BATTLE

#define BATTLE   3

◆ BLANK_MAIN_MENU

#define BLANK_MAIN_MENU   0

Options for gMainMenuSelectionDepth.

◆ BOO_EFFECT

#define BOO_EFFECT   0x80000000

◆ BOO_SOUND_EFFECT

#define BOO_SOUND_EFFECT   0x800

◆ BOOST_EFFECT

#define BOOST_EFFECT   0x2000

◆ BOOST_RAMP_ASPHALT_EFFECT

#define BOOST_RAMP_ASPHALT_EFFECT   0x100000

◆ BOOST_RAMP_ASPHALT_SOUND_EFFECT

#define BOOST_RAMP_ASPHALT_SOUND_EFFECT   0x800000

◆ BOOST_RAMP_WOOD_EFFECT

#define BOOST_RAMP_WOOD_EFFECT   0x4

effect of player's for effects

◆ BOOST_RAMP_WOOD_SOUND_EFFECT

#define BOOST_RAMP_WOOD_SOUND_EFFECT   0x8000

◆ BOOST_SOUND_EFFECT

#define BOOST_SOUND_EFFECT   0x200

◆ BOWSER

#define BOWSER   7

◆ BOWSER_SIZE

#define BOWSER_SIZE   0.75f

◆ CC_100

#define CC_100   1

◆ CC_150

#define CC_150   2

◆ CC_50

#define CC_50   0

Options for gCCSelection CC stands for cubic-centimetres. It measures engine displacement composed from cylinder volume. Generally, the main determiner of horsepower output.

◆ CC_BATTLE

#define CC_BATTLE   4

◆ CC_EXTRA

#define CC_EXTRA   3

◆ COLOR_BLACK

#define COLOR_BLACK   GPACK_RGB888(0, 0, 0)

◆ COLOR_LAVA

#define COLOR_LAVA   GPACK_RGB888(0x34, 0x00, 0x00)

◆ COLOR_LIGHT

#define COLOR_LIGHT   GPACK_RGB888(0x1C, 0x00, 0x00)

◆ CONFIRM_OK_SELECTION

#define CONFIRM_OK_SELECTION   6

◆ CONFIRM_OK_SELECTION_FROM_BACK_OUT

#define CONFIRM_OK_SELECTION_FROM_BACK_OUT   7

◆ CONTROLLER_PAK_MENU

#define CONTROLLER_PAK_MENU   9

◆ CONTROLLER_PAK_MENU_END

#define CONTROLLER_PAK_MENU_END   2

◆ CONTROLLER_PAK_MENU_ERASE

#define CONTROLLER_PAK_MENU_ERASE   3

◆ CONTROLLER_PAK_MENU_ERASE_ERROR_NO_PAK

#define CONTROLLER_PAK_MENU_ERASE_ERROR_NO_PAK   9

◆ CONTROLLER_PAK_MENU_ERASE_ERROR_NOT_ERASED

#define CONTROLLER_PAK_MENU_ERASE_ERROR_NOT_ERASED   8

◆ CONTROLLER_PAK_MENU_ERASE_ERROR_PAK_CHANGED

#define CONTROLLER_PAK_MENU_ERASE_ERROR_PAK_CHANGED   10

◆ CONTROLLER_PAK_MENU_ERASING

#define CONTROLLER_PAK_MENU_ERASING   7

◆ CONTROLLER_PAK_MENU_GO_TO_ERASING

#define CONTROLLER_PAK_MENU_GO_TO_ERASING   6

◆ CONTROLLER_PAK_MENU_QUIT

#define CONTROLLER_PAK_MENU_QUIT   4

◆ CONTROLLER_PAK_MENU_SELECT_RECORD

#define CONTROLLER_PAK_MENU_SELECT_RECORD   1

Options for gControllerPakMenuSelection.

◆ CONTROLLER_PAK_MENU_TABLE_GAME_DATA

#define CONTROLLER_PAK_MENU_TABLE_GAME_DATA   5

◆ COURSE_DATA_MENU

#define COURSE_DATA_MENU   7

◆ COURSE_SELECT_MENU

#define COURSE_SELECT_MENU   13

◆ COURSE_SELECT_MENU_FROM_QUIT

#define COURSE_SELECT_MENU_FROM_QUIT   3

◆ COURSE_TIMER_ITER

#define COURSE_TIMER_ITER   0.01666666

◆ COURSE_TIMER_ITER_f

#define COURSE_TIMER_ITER_f   0.01666666f

◆ CREDITS_SEQUENCE

#define CREDITS_SEQUENCE   9

◆ DATA_MENU

#define DATA_MENU   6

◆ DATA_SELECTION

#define DATA_SELECTION   2

◆ DEBUG_GOTO_CREDITS_SEQUENCE_CC_50

#define DEBUG_GOTO_CREDITS_SEQUENCE_CC_50   2

◆ DEBUG_GOTO_CREDITS_SEQUENCE_CC_EXTRA

#define DEBUG_GOTO_CREDITS_SEQUENCE_CC_EXTRA   3

◆ DEBUG_GOTO_ENDING

#define DEBUG_GOTO_ENDING   1

◆ DEBUG_GOTO_RACING

#define DEBUG_GOTO_RACING   0

Options for gDebugGotoScene.

◆ DEBUG_MENU

#define DEBUG_MENU   1

◆ DEBUG_MENU_COURSE

#define DEBUG_MENU_COURSE   3

◆ DEBUG_MENU_DEBUG_MODE

#define DEBUG_MENU_DEBUG_MODE   2

◆ DEBUG_MENU_DISABLED

#define DEBUG_MENU_DISABLED   1

Options for gDebugMenuSelection.

◆ DEBUG_MENU_EXITED

#define DEBUG_MENU_EXITED   64

◆ DEBUG_MENU_GIVE_ALL_GOLD_CUP

#define DEBUG_MENU_GIVE_ALL_GOLD_CUP   7

◆ DEBUG_MENU_PLAYER

#define DEBUG_MENU_PLAYER   5

◆ DEBUG_MENU_SCREEN_MODE

#define DEBUG_MENU_SCREEN_MODE   4

◆ DEBUG_MENU_SOUND_MODE

#define DEBUG_MENU_SOUND_MODE   6

◆ DEBUG_MODE

#define DEBUG_MODE   0

Enable debug mode.

Press start to skip through menus

Toggle resource meters by holding R and tapping B. L must not be held.

Reset to start screen by holding A, B, R, and L.

View player direction and currentPathPoint in a single player race during staging tap L while holding A and B. Turn off this UI by tapping R while holding A and B.

Bug
This looks like it should work at any point in the race.

Set player 1 to the final lap by tapping D-pad up. Set player 1 and player 2 to the final lap by tapping D-pad right. Set player all players to the final lap by tapping D-pad down.

Immediately start the race if any controller presses Z.

As the ceremony cutscene starts hold a C or D-pad to switch characters. C UP = LUIGI C LEFT = YOSHI C RIGHT = TOAD C DOWN = DK D-pad UP = WARIO D-pad LEFT = PEACH D-pad RIGHT = BOWSER D-pad DOWN = MARIO

◆ DEMO_FIVE

#define DEMO_FIVE   4

◆ DEMO_FOUR

#define DEMO_FOUR   3

◆ DEMO_MODE_ACTIVE

#define DEMO_MODE_ACTIVE   1

Jump to demo mode from the debug menu using L and A.

◆ DEMO_MODE_INACTIVE

#define DEMO_MODE_INACTIVE   0

◆ DEMO_ONE

#define DEMO_ONE   0

Title screen demo options All demos use 100 CC.

◆ DEMO_SIX

#define DEMO_SIX   5

◆ DEMO_THREE

#define DEMO_THREE   2

◆ DEMO_TWO

#define DEMO_TWO   1

◆ DK

#define DK   4

◆ DK_SIZE

#define DK_SIZE   0.75f

◆ ENDING

#define ENDING   5

◆ FACING_X_AXIS

#define FACING_X_AXIS   0x8000

◆ FACING_Y_AXIS

#define FACING_Y_AXIS   0x4000

◆ FACING_Z_AXIS

#define FACING_Z_AXIS   0x2000

◆ FOUR_PLAYERS_SELECTED

#define FOUR_PLAYERS_SELECTED   4

◆ GAME_MODE_CC_OR_TIME_TRIALS_OPTIONS_SELECTION

#define GAME_MODE_CC_OR_TIME_TRIALS_OPTIONS_SELECTION    5

◆ GAME_MODE_SELECTION

#define GAME_MODE_SELECTION   4

◆ GPACK_RGB888

#define GPACK_RGB888 ( r,
g,
b )   (((r) << 16) | ((g) << 8) | (b))

◆ GRAND_PRIX

#define GRAND_PRIX   0

Options for gModeSelection.

◆ GRID_SIZE

#define GRID_SIZE   32

Collision mesh flags

◆ HIT_BY_ITEM_EFFECT

#define HIT_BY_ITEM_EFFECT   0x2000000

◆ HIT_BY_ITEM_SOUND_EFFECT

#define HIT_BY_ITEM_SOUND_EFFECT   0x1000000

◆ HIT_EFFECT

#define HIT_EFFECT   0x4000000

◆ HIT_ROTATING_SOUND_EFFECT

#define HIT_ROTATING_SOUND_EFFECT   0x4000

◆ HIT_SOUND_EFFECT

#define HIT_SOUND_EFFECT   0x100

sound effect of player's for soundEffect

◆ HOLD_ALL_DPAD_AND_C_BUTTONS

#define HOLD_ALL_DPAD_AND_C_BUTTONS    (U_JPAD | L_JPAD | R_JPAD | D_JPAD | U_CBUTTONS | L_CBUTTONS | R_CBUTTONS | D_CBUTTONS)

◆ HOLD_BANANA_SOUND_EFFECT

#define HOLD_BANANA_SOUND_EFFECT   0x40000

◆ LIGHTNING_EFFECT

#define LIGHTNING_EFFECT   0x40000000

◆ LOGO_INTRO_MENU

#define LOGO_INTRO_MENU   8

◆ LUIGI

#define LUIGI   1

◆ LUIGI_SIZE

#define LUIGI_SIZE   0.75f

◆ MAIN_MENU

#define MAIN_MENU   11

◆ MAIN_MENU_FROM_QUIT

#define MAIN_MENU_FROM_QUIT   1

◆ MARIO

#define MARIO   0

Character IDs Note that these are not the same as the values found in gCharacterGridSelections as those are ordered by table.

◆ MARIO_SIZE

#define MARIO_SIZE   0.75f

◆ MAX_NUM_MAIN_MENU_GAME_TYPES

#define MAX_NUM_MAIN_MENU_GAME_TYPES   3

◆ MAX_TIME

#define MAX_TIME   0x927C0

Max representable time, 100 minutes measured in centiseconds.

◆ NUM_COURSES_PER_CUP

#define NUM_COURSES_PER_CUP   4

◆ NUM_DEMOS

#define NUM_DEMOS   6

◆ NUM_PLAYERS

#define NUM_PLAYERS   8

◆ NUM_SCREEN_MODES

#define NUM_SCREEN_MODES   4

◆ NUM_SOUND_MODES

#define NUM_SOUND_MODES   4

◆ OK

#define OK   1

Options for Controller Pak state.

◆ ONE_PLAYERS_SELECTED

#define ONE_PLAYERS_SELECTED   1

◆ OPTIONS_MENU

#define OPTIONS_MENU   5

Options for gMenuSelection.

◆ OPTIONS_SELECTION

#define OPTIONS_SELECTION   1

◆ PEACH

#define PEACH   6

◆ PEACH_SIZE

#define PEACH_SIZE   0.75f

◆ PLAYER_CINEMATIC_MODE

#define PLAYER_CINEMATIC_MODE   (1 << 11)

◆ PLAYER_EXISTS

#define PLAYER_EXISTS   (1 << 15)

◆ PLAYER_HUMAN

#define PLAYER_HUMAN   (1 << 14)

◆ PLAYER_HUMAN_AND_KART_AI

#define PLAYER_HUMAN_AND_KART_AI   PLAYER_EXISTS | PLAYER_HUMAN | PLAYER_KART_AI | PLAYER_START_SEQUENCE

◆ PLAYER_INACTIVE

#define PLAYER_INACTIVE   0

Racing terms: Staging means aligning a racecar to the starting line. Start sequence means waiting for the light to turn green. Used in the Player struct's 'type' member: player->type

◆ PLAYER_INVISIBLE_OR_BOMB

#define PLAYER_INVISIBLE_OR_BOMB   (1 << 8)

◆ PLAYER_KART_AI

#define PLAYER_KART_AI   (1 << 12)

◆ PLAYER_NUM_SELECTION

#define PLAYER_NUM_SELECTION   3

◆ PLAYER_SELECT_MENU

#define PLAYER_SELECT_MENU   12

◆ PLAYER_SELECT_MENU_FROM_QUIT

#define PLAYER_SELECT_MENU_FROM_QUIT   2

◆ PLAYER_STAGING

#define PLAYER_STAGING   (1 << 9)

◆ PLAYER_START_SEQUENCE

#define PLAYER_START_SEQUENCE   (1 << 13)

◆ PLAYER_UNKNOWN

#define PLAYER_UNKNOWN   (1 << 10)

◆ PLAYER_UNKNOWN_0x40

#define PLAYER_UNKNOWN_0x40   (1 << 6)

◆ RACING

#define RACING   4

◆ RACING_DUPLICATE

#define RACING_DUPLICATE   14

◆ REVERSE_SOUND_EFFECT

#define REVERSE_SOUND_EFFECT   0x400000

◆ SCREEN_MODE_1P

#define SCREEN_MODE_1P   0

Options for gScreenModeSelection and gActiveScreenMode.

◆ SCREEN_MODE_2P_SPLITSCREEN_HORIZONTAL

#define SCREEN_MODE_2P_SPLITSCREEN_HORIZONTAL   1

◆ SCREEN_MODE_2P_SPLITSCREEN_VERTICAL

#define SCREEN_MODE_2P_SPLITSCREEN_VERTICAL   2

◆ SCREEN_MODE_3P_4P_SPLITSCREEN

#define SCREEN_MODE_3P_4P_SPLITSCREEN   3

◆ SELECTED_PLAYER_DEFINES_TOTAL

#define SELECTED_PLAYER_DEFINES_TOTAL   5

◆ SOUND_HEADPHONES

#define SOUND_HEADPHONES   1

◆ SOUND_MONO

#define SOUND_MONO   3

◆ SOUND_STEREO

#define SOUND_STEREO   0

Sound mode options Option 2 appears to be unused, as such its probably not a valid option.

◆ SOUND_UNUSED

#define SOUND_UNUSED   2

◆ SPAWN_FIRST_SHELL

#define SPAWN_FIRST_SHELL   0

shell state

◆ SPAWN_SECOND_SHELL

#define SPAWN_SECOND_SHELL   1

◆ SPAWN_THIRD_SHELL

#define SPAWN_THIRD_SHELL   2

◆ STAR_EFFECT

#define STAR_EFFECT   0x200

◆ STAR_SOUND_EFFECT

#define STAR_SOUND_EFFECT   0x2000

◆ START_MENU

#define START_MENU   10

◆ START_MENU_FROM_QUIT

#define START_MENU_FROM_QUIT   0

Options for gGameState gGotoMode and gGotoMenu.

◆ TEXT_BLUE

#define TEXT_BLUE   0

Text color options The 2 cycling options cycle through Blue -> Green -> Red Cycle 2 appears to be one step ahead of Cycle 1 Other values like 6 and 7 sort of work, they cause rapid flashing between 2 colors, but also cause individual characters to be cutoff on their right side.

◆ TEXT_BLUE_GREEN_RED_CYCLE_1

#define TEXT_BLUE_GREEN_RED_CYCLE_1   4

◆ TEXT_BLUE_GREEN_RED_CYCLE_2

#define TEXT_BLUE_GREEN_RED_CYCLE_2   5

◆ TEXT_GREEN

#define TEXT_GREEN   1

◆ TEXT_RED

#define TEXT_RED   2

◆ TEXT_YELLOW

#define TEXT_YELLOW   3

◆ THREE_PLAYERS_SELECTED

#define THREE_PLAYERS_SELECTED   3

◆ TIME_TRIAL_1LAP_RECORD

#define TIME_TRIAL_1LAP_RECORD   5

◆ TIME_TRIAL_3LAP_RECORD_1

#define TIME_TRIAL_3LAP_RECORD_1   0

Indexes for accessing Time Trial records.

◆ TIME_TRIAL_3LAP_RECORD_2

#define TIME_TRIAL_3LAP_RECORD_2   1

◆ TIME_TRIAL_3LAP_RECORD_3

#define TIME_TRIAL_3LAP_RECORD_3   2

◆ TIME_TRIAL_3LAP_RECORD_4

#define TIME_TRIAL_3LAP_RECORD_4   3

◆ TIME_TRIAL_3LAP_RECORD_5

#define TIME_TRIAL_3LAP_RECORD_5   4

◆ TIME_TRIALS

#define TIME_TRIALS   1

◆ TIME_TRIALS_DATA_SELECTION_FROM_BACK_OUT

#define TIME_TRIALS_DATA_SELECTION_FROM_BACK_OUT   8

◆ TOAD

#define TOAD   3

◆ TOAD_SIZE

#define TOAD_SIZE   0.75f

◆ TWO_PLAYERS_SELECTED

#define TWO_PLAYERS_SELECTED   2

◆ V_BlANK_TIMER_ITER

#define V_BlANK_TIMER_ITER   0.01666666

◆ VERSUS

#define VERSUS   2

◆ WARIO

#define WARIO   5

◆ WARIO_SIZE

#define WARIO_SIZE   0.75f

◆ YOSHI

#define YOSHI   2

◆ YOSHI_SIZE

#define YOSHI_SIZE   0.75f

◆ ZERO_PLAYERS_SELECTED

#define ZERO_PLAYERS_SELECTED   0

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Options for gCupSelection There is a "cup" for battle mode, probably so that the battle courses could be displayed in the same way race courses are.

Enumerator
MUSHROOM_CUP 
FLOWER_CUP 
STAR_CUP 
SPECIAL_CUP 
BATTLE_CUP 
NUM_CUPS 

◆ anonymous enum

anonymous enum

Options for gCourseIndexInCup.

Enumerator
COURSE_ONE 
COURSE_TWO 
COURSE_THREE 
COURSE_FOUR 

◆ DIRECTION

enum DIRECTION
Enumerator
NORTH 
EAST 
SOUTH 
WEST 

◆ ITEMS

enum ITEMS

Item IDs.

Enumerator
ITEM_NONE 
ITEM_BANANA 
ITEM_BANANA_BUNCH 
ITEM_GREEN_SHELL 
ITEM_TRIPLE_GREEN_SHELL 
ITEM_RED_SHELL 
ITEM_TRIPLE_RED_SHELL 
ITEM_BLUE_SPINY_SHELL 
ITEM_THUNDERBOLT 
ITEM_FAKE_ITEM_BOX 
ITEM_STAR 
ITEM_BOO 
ITEM_MUSHROOM 
ITEM_DOUBLE_MUSHROOM 
ITEM_TRIPLE_MUSHROOM 
ITEM_SUPER_MUSHROOM 

◆ KART_AI_BEHAVIOURS

Enumerator
BEHAVIOUR_NONE 
BEHAVIOUR_1 
BEHAVIOUR_HOP 
BEHAVIOUR_3 
BEHAVIOUR_4 
BEHAVIOUR_5 
BEHAVIOUR_NORMAL_SPEED 
BEHAVIOUR_FAST_SPEED 
BEHAVIOUR_SLOW_SPEED 
BEHAVIOUR_9 
BEHAVIOUR_10 
BEHAVIOUR_MAX_SPEED 

◆ PlayerId

enum PlayerId
Enumerator
PLAYER_NONE 
PLAYER_ONE 
PLAYER_TWO 
PLAYER_THREE 
PLAYER_FOUR 
PLAYER_FIVE 
PLAYER_SIX 
PLAYER_SEVEN 
PLAYER_EIGHT