gPinballGameState: @ 0x02000000
	.space 0x2000
sGbPlayerCurKeys: @ 0x2002000
	.space 0x2
sGbPlayerPrevKeys: @ 0x2002002
	.space 0x6
gGbPlayerTilemapBuffer: @ 0x2002008
	.space 0x800
gSio32Id: @ 0x2002808
	.space 0xC
gSio32SendData: @ 0x02002814
	.space 0x4
gSio32ReceivedData: @ 0x02002818
	.space 0x4
gSio32RemoteDeviceId: @ 0x0200281C
	.space 0x4
sChecksumAvailable: @ 0x02002820
	.space 0x2
gLinkSavedIme: @ 0x02002822
	.space 0x2
sNumVBlanksWithoutSerialIntr: @ 0x02002824
	.space 0x1
sSendBufferEmpty: @ 0x02002825
	.space 0x1
sLinkFlowControlDelay: @ 0x02002826
	.space 0x1
sHandshakePlayerCount: @ 0x02002827
	.space 0x1
sSendNonzeroCheck: @ 0x02002828
	.space 0x2
sRecvNonzeroCheck: @ 0x0200282A
	.space 0x2
gEReaderUnused1: @ 0x0200282C
	.space 0x1
gEReaderUnused2: @ 0x0200282D
	.space 0x3
gPokedex_EraseSaveDataAccessCounter: @ 0x02002830
	.space 0x1
gPokedex_EraseSaveDataAccessStep: @ 0x02002831
	.space 0x7
gFieldSelectData: @ 0x02002838
	.space 0x18
gFieldSelectSoftReset: @ 0x02002850
	.space 0x8
gHighScoreScreenState: @ 0x02002858
	.space 0x25
gHighScoreDisplayMode: @ 0x0200287D
	.space 0x3
gScrollDirection: @ 0x02002880
	.space 0x2
gScrollXOffset: @ 0x02002882
	.space 0x2
gResetComboTimer: @ 0x02002884
	.space 0x1
gResetComboCount: @ 0x02002885
	.space 0x3
gTitlescreen: @ 0x2002888
	.space 0x18
gEraseSaveDataAccessStep: @ 0x20028A0
	.space 0x1
gEraseSaveDataAccessCounter: @ 0x20028A1
	.space 0x1
gEReaderAccessStep: @ 0x20028A2
	.space 0x1
gEReaderAccessCounter: @ 0x20028A3
	.space 0x1
gTitleTransitionActive: @ 0x20028A4
	.space 0x1
gTitleRestartDebounce: @ 0x20028A5
	.space 0x3
gPaletteFadeRGBCache: @ 0x020028A8
	.space 0x30
CurrentBoardProcPairs: @ 0x020028D8
	.space 0x48
gOptionsData: @ 0x02002920
	.space 0x12
gOptionsBGMDigitTileIds: @ 0x02002932
	.space 0x3
gOptionsSEDigitTileIds: @ 0x02002935
	.space 0x5
gOptionsButtonConfigEditFlags: @ 0x0200293A
	.space 0x1E
gDpcmSampleBuffer: @ 0x2002958
	.space 0x40
gMPlayTrack_BGM: @ 0x2002998
	.space 0x320
gMPlayTrack_SE1: @ 0x2002CB8
	.space 0xF0
gMPlayTrack_SE2: @ 0x2002DA8
	.space 0xF0
gMPlayTrack_SE3: @ 0x2002E98
	.space 0xA0
verifySramFast_Work: @ 0x02002F38
	.space 0xA0
readSramFast_Work: @ 0x02002FD8
	.space 0x88
gIntrTable: @ 0x2003060
	.space 0x40
gBoardBGTileBufferAlt: @ 0x020030A0
	.space 0x8020
gMain: @ 0x200B0C0
	.space 0x40
	.space 0x34
	.space 0x5A
@ These are all entries in gMain.spriteGroups
gMain_saveData_pokedexFlags_90: @ 0x0200B18E
	.space 0x76
gMain_saveData_customButtonConfig: @ 0x0200B204
	.space 0x14
gMain_saveData_highscores: @ 0x0200B218
	.space 0x14
gMain_saveData_highscores_1_scoreLo: @ 0x0200B22C
	.space 0x18C
gMain_spriteGroups: @ 0x0200B3B8
	.space 0xB8
gMain_spriteGroups_1: @ 0x0200B470
	.space 0xB8
gMain_spriteGroups_2: @ 0x0200B528
	.space 0xB8
gMain_spriteGroups_3: @ 0x0200B5E0
	.space 0xB8
gMain_spriteGroups_4: @ 0x0200B698
	.space 0xB8
gMain_spriteGroups_5: @ 0x0200B750
	.space 0xB8
gMain_spriteGroups_6: @ 0x0200B808
	.space 0xB8
gMain_spriteGroups_7: @ 0x0200B8C0
	.space 0xB8
gMain_spriteGroups_8: @ 0x0200B978
	.space 0xB8
gMain_spriteGroups_9: @ 0x0200BA30
	.space 0xB8
gMain_spriteGroups_10: @ 0x0200BAE8
	.space 0xB8
gMain_spriteGroups_11: @ 0x0200BBA0
	.space 0xB8
gMain_spriteGroups_12: @ 0x0200BC58
	.space 0xB8
gMain_spriteGroups_13: @ 0x0200BD10
	.space 0xB8
gMain_spriteGroups_14: @ 0x0200BDC8
	.space 0xB8
gMain_spriteGroups_15: @ 0x0200BE80
	.space 0xB8
gMain_spriteGroups_16: @ 0x0200BF38
	.space 0xB8
gMain_spriteGroups_17: @ 0x0200BFF0
	.space 0xB8
gMain_spriteGroups_18: @ 0x0200C0A8
	.space 0xB8
gMain_spriteGroups_19: @ 0x0200C160
	.space 0xB8
gMain_spriteGroups_20: @ 0x0200C218
	.space 0xB8
gMain_spriteGroups_21: @ 0x0200C2D0
	.space 0xB8
gMain_spriteGroups_22: @ 0x0200C388
	.space 0xB8
gMain_spriteGroups_23: @ 0x0200C440
	.space 0xB8
gMain_spriteGroups_24: @ 0x0200C4F8
	.space 0xB8
gMain_spriteGroups_25: @ 0x0200C5B0
	.space 0xB8
gMain_spriteGroups_26: @ 0x0200C668
	.space 0x170
gMain_spriteGroups_28: @ 0x0200C7D8
	.space 0xB8
gMain_spriteGroups_29: @ 0x0200C890
	.space 0xB8
gMain_spriteGroups_30: @ 0x0200C948
	.space 0xB8
gMain_spriteGroups_31: @ 0x0200CA00
	.space 0xB8
gMain_spriteGroups_32: @ 0x0200CAB8
	.space 0x170
gMain_spriteGroups_34: @ 0x0200CC28
	.space 0x170
gMain_spriteGroups_36: @ 0x0200CD98
	.space 0x2E0
gMain_spriteGroups_40: @ 0x0200D078
	.space 0x228
gMain_spriteGroups_43: @ 0x0200D2A0
	.space 0x170
gMain_spriteGroups_45: @ 0x0200D410
	.space 0x170
gMain_spriteGroups_47: @ 0x0200D580
	.space 0xB8
gMain_spriteGroups_48: @ 0x0200D638
	.space 0x228
gMain_spriteGroups_51: @ 0x0200D860
	.space 0xB8
gMain_spriteGroups_52: @ 0x0200D918
	.space 0x8
gMain_spriteGroups_52_oam: @ 0x0200D920
	.space 0xB0
gMain_spriteGroups_53: @ 0x0200D9D0
	.space 0x2E0
gMain_spriteGroups_57: @ 0x0200DCB0
	.space 0xB8
gMain_spriteGroups_58: @ 0x0200DD68
	.space 0xB8
gMain_spriteGroups_59: @ 0x0200DE20
	.space 0xB8
gMain_spriteGroups_60: @ 0x0200DED8
	.space 0xB8
gMain_spriteGroups_61: @ 0x0200DF90
	.space 0xB8
gMain_spriteGroups_62: @ 0x0200E048
	.space 0xB8
gMain_spriteGroups_63: @ 0x0200E100
	.space 0xB8
gMain_spriteGroups_64: @ 0x0200E1B8
	.space 0xB8
gMain_spriteGroups_65: @ 0x0200E270
	.space 0x8
gMain_spriteGroups_65_oam: @ 0x0200E278
	.space 0xB0
gMain_spriteGroups_66: @ 0x0200E328
	.space 0x170
gMain_spriteGroups_68: @ 0x0200E498
	.space 0xB8
gMain_spriteGroups_69: @ 0x0200E550
	.space 0xB8
gMain_spriteGroups_70: @ 0x0200E608
	.space 0xB8
gMain_spriteGroups_71: @ 0x0200E6C0
	.space 0x2E0
gMain_spriteGroups_75: @ 0x0200E9A0
	.space 0xB8
gMain_spriteGroups_76: @ 0x0200EA58
	.space 0x170
gMain_spriteGroups_78: @ 0x0200EBC8
	.space 0x2E0
gMain_spriteGroups_82: @ 0x0200EEA8
	.space 0xCF0
@main object ends in the middle of the above space.

gVBlankIntrFuncPtr: @ 0x200FB98
	.space 0x4
gMainCallback: @ 0x200FB9C
	.space 0x4
gVCountIntrFuncShadow: @ 0x200FBA0
	.space 0x10
gBoardGfxBuffer: @ 0x0200FBB0
	.space 0x8020
gVBlankIntrFuncShadow: @ 0x2017BD0
	.space 0x4
gMainCallbackShadow: @ 0x2017BD4
	.space 0xC
gUnknown_02017BE0: @ 0x2017BE0
	.space 0x2000
gVCountIntrFuncPtr: @ 0x2019BE0
	.space 0x4
gRumbleLoopCounter: @ 0x2019BE4
	.space 0x4
gRumbleFrameCounter: @ 0x2019BE8
	.space 0x4
gRumbleMotorMode: @ 0x02019BEC
	.space 0x4
gSio32ReconnectTimer: @ 0x02019BF0
	.space 0x4
gSio32SerialEnabled: @ 0x02019BF4
	.space 0x4
gRumblePatternIndex: @ 0x2019BF8
	.space 0x4
gRumblePatternPosition: @ 0x2019BFC
	.space 0x4
gRumbleCommand: @ 0x02019C00
	.space 0x4
gRumblePaused: @ 0x2019C04
	.space 0x4
gRumbleSpeedMode: @ 0x2019C08
	.space 0x4
gGameBoyPlayerEnabled: @ 0x2019C0C
	.space 0x4
gSio32CommState: @ 0x02019C10
	.space 0x10
gEReaderLinkDataReceived: @ 0x02019C20
	.space 0x4
gPokedexScrollActive: @ 0x02019C24
	.space 0x4
gPokedexSpriteIndexBase: @ 0x02019C28
	.space 0x4
gLastSendQueueCount: @ 0x02019C2C
	.space 0x4
gIntroScaleX: @ 0x02019C30
	.space 0x10
gPokedexVramBuffer: @ 0x02019C40
	.space 0x800
gPokedexSpriteAnimTimer: @ 0x0201A440
	.space 0x4
gLinkTimeoutCounter: @ 0x0201A444
	.space 0x4
gPokedexAnimatedIconFrame: @ 0x0201A448
	.space 0x4
gEReaderGeneralTimer: @ 0x0201A44C
	.space 0x4
gIntroSpriteEntities: @ 0x0201A450
	.space 0x60
gBallSpeedSubmenuVisible: @ 0x0201A4B0
	.space 0x4
gAutoDisplayTitlescreenMenu: @ 0x201A4B4
	.space 0x4
gCompletionBannerY: @ 0x0201A4B8
	.space 0x4
gLinkExchangeSendPhase: @ 0x0201A4BC
	.space 0x4
gSelectedBallSpeed: @ 0x0201A4C0
	.space 0x10
gLinkRecvBuffer: @ 0x0201A4D0
	.space 0x20
gPokedexCursorBlinkOffset: @ 0x0201A4F0
	.space 0x4
gBallSpeedDisplayToggle: @ 0x0201A4F4
	.space 0x4
gSelectedBonusField: @ 0x0201A4F8
	.space 0x8
gHighScoreNameEntry: @ 0x0201A500
	.space 0x10
gLinkExchangeFrameCounter: @ 0x0201A510
	.space 0x4
gPokedexNumOwned: @ 0x0201A514
	.space 0x4
gUnknown_0201A518: @ 0x0201A518
	.space 0x8
gPaletteFadeBuffers: @ 0x0201A520
	.space 0xC00
gPokedexLinkStateTimer: @ 0x0201B120
	.space 0x4
gLinkExchangeStep: @ 0x0201B124
	.space 0x4
gPokedexLinkTransferPhase: @ 0x0201B128
	.space 0x8
gGlyphLowerRowBuffer: @ 0x0201B130
	.space 0x40
gMergedSapphireScoreIndex: @ 0x0201B170
	.space 0x4
gEReaderTransitionStep: @ 0x0201B174
	.space 0x4
gHighScoreShowPopupFlag: @ 0x0201B178
	.space 0x8
gIntroScene3Treecko_AltBG1TilemapBuffer: @ 0x0201B180
	.space 0x1000
gPokedexLinkSendCounter: @ 0x0201C180
	.space 0x4
gEReaderCardIndex: @ 0x0201C184
	.space 0x4
gIntroScaleY: @ 0x0201C188
	.space 0x4
gCompletionBannerVisible: @ 0x0201C18C
	.space 0x4
gTitleNoSaveMenuSpriteSets: @ 0x0201C190
	.space 0x1C
gLinkPlayerCount: @ 0x0201C1AC
	.space 0x4
gLinkExchangeCommand: @ 0x0201C1B0
	.space 0x4
gPokedexShowPageIndicator: @ 0x0201C1B4
	.space 0x4
gIntroBlendSrc: @ 0x0201C1B8
	.space 0x4
gPokedexMasterHandshakeState: @ 0x0201C1BC
	.space 0x4
gIntroTileBuffer: @ 0x0201C1C0
	.space 0xE000
gPokedexFlags: @ 0x0202A1C0
	.space 0x1D0
gPokedexFlagExchangeBuffer: @ 0x0202A390
	.space 0x1C4
sRecvQueueSnapshot: @ 0x0202A554
	.space 0x4
gPokedexInfoWindowSlideStep: @ 0x0202A558
	.space 0x4
gPokedexShowPortrait: @ 0x0202A55C
	.space 0x4
gBonusFieldSelectTimer: @ 0x0202A560
	.space 0x4
gEReaderLinkHandshakeStarted: @ 0x0202A564
	.space 0x4
gPokedexShowCatchHatch: @ 0x0202A568
	.space 0x4
gIntroBGWhiteFlash: @ 0x0202A56C
	.space 0x8
gPokedexListEntryCount: @ 0x0202A574
	.space 0x4
gIntroAnimStep: @ 0x0202A578
	.space 0x4
gPokedexCursorOffset: @ 0x0202A57C
	.space 0x4
gEReaderTextAnimDelay: @ 0x0202A580
	.space 0x8
gPokedexShowAnimSprite: @ 0x0202A588
	.space 0x4
gEReaderStatusAnimSpriteGroup: @ 0x0202A58C
	.space 0x4
gPokedexInfoWindowBackupTiles: @ 0x0202A590
	.space 0x800
gEReaderTextPageIndex: @ 0x0202AD90
	.space 0x10
gIntroBGParams: @ 0x0202ADA0
	.space 0x30
gLinkStatusResult: @ 0x0202ADD0
	.space 0x4
gIntroBlendDst: @ 0x0202ADD4
	.space 0x4
gIntroWailmerScaleY: @ 0x0202ADD8
	.space 0x4
gLinkNegotiationFlags: @ 0x0202ADDC
	.space 0x4
gPokedexSelectedMon: @ 0x0202ADE0
	.space 0x4
gLinkExchangeResult: @ 0x0202ADE4
	.space 0x4
gEReaderLinkAckSent: @ 0x0202ADE8
	.space 0x1008
gLinkConnectionState: @ 0x0202BDF0
	.space 0x10
gTitleSavedMenuSpriteSets: @ 0x0202BE00
	.space 0x1C
gBonusFieldLoadingCounter: @ 0x0202BE1C
	.space 0x4
gPokedexBlinkTimer: @ 0x0202BE20
	.space 0x4
gTitleReturnedFromMenu: @ 0x202BE24
	.space 0xC
gGlyphUpperRowBuffer: @ 0x0202BE30
	.space 0x40
gIntroPalSwapBuffer: @ 0x0202BE70
	.space 0x40
gCompletionBannerDone: @ 0x0202BEB0
	.space 0x4
gIntroScene6ChinchouEntitySpawnIndex: @ 0x0202BEB4
	.space 0x4
gPokedexNumSeen: @ 0x0202BEB8
	.space 0x4
gHighScorePopupType: @ 0x0202BEBC
	.space 0x4
gEReaderHeaderAnimSpriteGroup: @ 0x0202BEC0
	.space 0x4
gPokedexShowPopupWindow: @ 0x0202BEC4
	.space 0x4
gLinkAdvanceState: @ 0x0202BEC8
	.space 0x4
gPokedexHandshakeRetryCount: @ 0x0202BECC
	.space 0x4
gBonusFieldSelectState: @ 0x0202BED0
	.space 0x4
gCompletionBannerPhase: @ 0x0202BED4
	.space 0x4
gMergedRubyScoreIndex: @ 0x0202BED8
	.space 0x4
gIntroObjWhiteFlash: @ 0x0202BEDC
	.space 0x4
gPokedexButtonPromptFrame: @ 0x0202BEE0
	.space 0x4
gBonusFieldSelectNextMainState: @ 0x0202BEE4
	.space 0x4
gBonusFieldHighlightPalette: @ 0x0202BEE8
	.space 0x4
gEReaderReceivedCardId: @ 0x0202BEEC
	.space 0x4
gIntroPalFadeLevel: @ 0x0202BEF0
	.space 0x4
gPokedexPageIndicatorTimer: @ 0x0202BEF4
	.space 0x4
gEReaderExitTargetState: @ 0x0202BEF8
	.space 0x4
gPokedexPopupTypeIndex: @ 0x0202BEFC
	.space 0x4
gPokedexAnimatedIconTimer: @ 0x0202BF00
	.space 0x4
gPokedexShowButtonPrompt: @ 0x0202BF04
	.space 0x4
gPokedexScrollbarY: @ 0x0202BF08
	.space 0x4
gPokedexSpriteAnimFrame: @ 0x0202BF0C
	.space 0x4
gIntroFrameCounter: @ 0x0202BF10
	.space 0x4
gPokedexSpriteCategory: @ 0x0202BF14
	.space 0xC
gLink: @ 0x0202BF20
	.space 0x624
gPokedexClientHandshakeState: @ 0x0202C544
	.space 0x4
gIntroScene6ChinchouVelocityIndex: @ 0x0202C548
	.space 0x4
gLinkExchangeTimeout: @ 0x0202C54C
	.space 0x4
gRemoteTopScores: @ 0x0202C550
	.space 0x30
gCompletionBannerSpriteGroup: @ 0x0202C580
	.space 0x4
gEReaderStatusSpriteVisible: @ 0x0202C584
	.space 0x4
gHighScoreEntrySource: @ 0x202C588
	.space 0x4
gPokedexScrollWaitFrames: @ 0x0202C58C
	.space 0x4
gPokedexShowCompletionBadge: @ 0x0202C590
	.space 0x4
gIntroOverlayFadeStep: @ 0x0202C594
	.space 0x4
gLinkExchangeRecvPhase: @ 0x0202C598
	.space 0x4
gLinkPacketCounter: @ 0x0202C59C
	.space 0x4
gEReaderTransitionTimer: @ 0x0202C5A0
	.space 0x4
gEReaderTextBlinkToggle: @ 0x0202C5A4
	.space 0x4
gIntroJingleVariant: @ 0x0202C5A8
	.space 0x4
gPokedexPageIndicatorBlink: @ 0x0202C5AC
	.space 0x4
gPokedexListPosition: @ 0x0202C5B0
	.space 0x4
gPokedexLinkChunkIndex: @ 0x0202C5B4
	.space 0xC
gScoreDigitBuffer: @ 0x0202C5C0
	.space 0x20
sLinkMasterHandshakeState: @ 0x0202C5E0
	.space 0x4
gIntroWailmerScaleX: @ 0x0202C5E4
	.space 0x4
gPokedexDetailFrameCount: @ 0x0202C5E8
	.space 0x8
gLinkSendBuffer: @ 0x0202C5F0
	.space 0x14
gEReaderTextCharIndex: @ 0x0202C604
	.space 0xC
gWorkingHighScores: @ 0x0202C610
	.space 0x14
gUnknown_0202C624: @ 0x0202C624
	.space 0xAC
gUnknown_0202C6D0: @ 0x0202C6D0
	.space 0x14
gUnknown_0202C6E4: @ 0x0202C6E4
	.space 0xAC
gIntroSceneIndex: @ 0x0202C790
	.space 0x4
gPokedexDescriptionPage: @ 0x0202C794
	.space 0xC
gCatchSpriteFrameBuffer: @ 0x0202C7A0
	.space 0xFC0
gCatchAnimTileBuffer: @ 0x0202D760
	.space 0x120
gKecleonSpriteSets: @ 0x0202D880
	.space 0x2E40
gGameOverLetterXOffsets: @ 0x020306C0
	.space 0x10
gCatchSpritePalettes: @ 0x020306D0
	.space 0x80
gGameOverLetterAmplitudes: @ 0x02030750
	.space 0x10
gCatchSpriteGfxBuffer: @ 0x02030760
	.space 0x900
gCatchSpriteFlashGfx: @ 0x02031060
	.space 0x480
gCurrentPinballGame: @ 0x20314E0
	.space 0x20
gGameOverLetterYOffsets: @ 0x02031500
	.space 0x10
gReplayFrameCounter: @ 0x02031510
	.space 0x10
gBoardConfig: @ 0x2031520
	.space 0x70
gKecleonSpriteGroupOrderMap: @ 0x02031590
	.space 0x40
gCatchSpritePaletteBuffer: @ 0x020315D0
	.space 0x520
gCustomButtonConfigs: @ 0x02031AF0
	.space 0x28
gCustomButtonConfigTileIds: @ 0x02031B18
	.space 0x18
