diff options
Diffstat (limited to 'asm/link.s')
-rw-r--r-- | asm/link.s | 831 |
1 files changed, 0 insertions, 831 deletions
diff --git a/asm/link.s b/asm/link.s index b0de10227..4b5b0e6b5 100644 --- a/asm/link.s +++ b/asm/link.s @@ -5,837 +5,6 @@ .text - thumb_func_start sub_800ACBC -sub_800ACBC: @ 800ACBC - push {r4,lr} - ldr r4, _0800ACD0 @ =sLinkErrorBuffer - str r0, [r4] - strb r1, [r4, 0x5] - strb r2, [r4, 0x4] - strb r3, [r4, 0x6] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800ACD0: .4byte sLinkErrorBuffer - thumb_func_end sub_800ACBC - - thumb_func_start CB2_LinkError -CB2_LinkError: @ 800ACD4 - push {r4,lr} - movs r0, 0 - movs r1, 0 - bl SetGpuReg - ldr r0, _0800ADE0 @ =gMPlayInfo_SE1 - bl m4aMPlayStop - ldr r0, _0800ADE4 @ =gMPlayInfo_SE2 - bl m4aMPlayStop - ldr r0, _0800ADE8 @ =gMPlayInfo_SE3 - bl m4aMPlayStop - ldr r0, _0800ADEC @ =gHeap - movs r1, 0xE0 - lsls r1, 9 - bl InitHeap - bl ResetSpriteData - bl FreeAllSpritePalettes - bl ResetPaletteFadeControl - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - bl FillPalette - bl ResetTasks - bl ScanlineEffect_Stop - ldr r1, _0800ADF0 @ =gWirelessCommType - ldrb r0, [r1] - cmp r0, 0 - beq _0800AD30 - ldr r0, _0800ADF4 @ =sLinkErrorBuffer - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0800AD2C - movs r0, 0x3 - strb r0, [r1] -_0800AD2C: - bl sub_80F85F8 -_0800AD30: - ldr r0, _0800ADF8 @ =sub_800978C - bl SetVBlankCallback - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, _0800ADFC @ =gUnknown_82345E8 - movs r0, 0 - movs r2, 0x2 - bl InitBgsFromTemplates - ldr r4, _0800AE00 @ =gUnknown_2022860 - movs r0, 0x80 - lsls r0, 4 - bl Alloc - adds r1, r0, 0 - str r1, [r4] - movs r0, 0x1 - bl SetBgTilemapBuffer - ldr r0, _0800AE04 @ =gUnknown_82345F0 - bl InitWindows - lsls r0, 16 - cmp r0, 0 - beq _0800ADD8 - bl DeactivateAllTextPrinters - bl ResetTempTileDataBuffers - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - movs r0, 0x10 - movs r1, 0 - bl SetGpuReg - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - movs r0, 0x14 - movs r1, 0 - bl SetGpuReg - movs r0, 0x16 - movs r1, 0 - bl SetGpuReg - movs r1, 0xE0 - lsls r1, 8 - movs r0, 0 - bl ClearGpuRegBits - ldr r0, _0800AE08 @ =gTMCaseMainWindowPalette - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette - ldr r1, _0800AE0C @ =gSoftResetDisabled - movs r0, 0 - strb r0, [r1] - ldr r0, _0800AE10 @ =Task_DestroySelf - movs r1, 0 - bl CreateTask - bl StopMapMusic - ldr r1, _0800AE14 @ =gMain - movs r0, 0 - str r0, [r1] - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - ldr r0, _0800AE18 @ =sub_800AF2C - bl SetMainCallback2 -_0800ADD8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800ADE0: .4byte gMPlayInfo_SE1 -_0800ADE4: .4byte gMPlayInfo_SE2 -_0800ADE8: .4byte gMPlayInfo_SE3 -_0800ADEC: .4byte gHeap -_0800ADF0: .4byte gWirelessCommType -_0800ADF4: .4byte sLinkErrorBuffer -_0800ADF8: .4byte sub_800978C -_0800ADFC: .4byte gUnknown_82345E8 -_0800AE00: .4byte gUnknown_2022860 -_0800AE04: .4byte gUnknown_82345F0 -_0800AE08: .4byte gTMCaseMainWindowPalette -_0800AE0C: .4byte gSoftResetDisabled -_0800AE10: .4byte Task_DestroySelf -_0800AE14: .4byte gMain -_0800AE18: .4byte sub_800AF2C - thumb_func_end CB2_LinkError - - thumb_func_start sub_800AE1C -sub_800AE1C: @ 800AE1C - push {r4,r5,lr} - sub sp, 0xC - ldr r1, _0800AEB8 @ =gWirelessLinkDisplay4bpp - movs r5, 0 - str r5, [sp] - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl DecompressAndLoadBgGfxUsingHeap - ldr r1, _0800AEBC @ =gWirelessLinkDisplayBin - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - ldr r0, _0800AEC0 @ =gWirelessLinkDisplayPal - movs r1, 0 - movs r2, 0x20 - bl LoadPalette - movs r0, 0 - movs r1, 0 - bl FillWindowPixelBuffer - movs r0, 0x2 - movs r1, 0 - bl FillWindowPixelBuffer - ldr r4, _0800AEC4 @ =gUnknown_8234610 - str r4, [sp] - str r5, [sp, 0x4] - ldr r0, _0800AEC8 @ =gUnknown_841DEF0 - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0x3 - movs r2, 0x2 - movs r3, 0x5 - bl AddTextPrinterParameterized3 - str r4, [sp] - str r5, [sp, 0x4] - ldr r0, _0800AECC @ =gUnknown_841DF05 - str r0, [sp, 0x8] - movs r0, 0x2 - movs r1, 0x3 - movs r2, 0x2 - movs r3, 0x2 - bl AddTextPrinterParameterized3 - movs r0, 0 - bl PutWindowTilemap - movs r0, 0x2 - bl PutWindowTilemap - movs r0, 0 - movs r1, 0 - bl CopyWindowToVram - movs r0, 0x2 - movs r1, 0x3 - bl CopyWindowToVram - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800AEB8: .4byte gWirelessLinkDisplay4bpp -_0800AEBC: .4byte gWirelessLinkDisplayBin -_0800AEC0: .4byte gWirelessLinkDisplayPal -_0800AEC4: .4byte gUnknown_8234610 -_0800AEC8: .4byte gUnknown_841DEF0 -_0800AECC: .4byte gUnknown_841DF05 - thumb_func_end sub_800AE1C - - thumb_func_start sub_800AED0 -sub_800AED0: @ 800AED0 - push {lr} - sub sp, 0xC - movs r0, 0x1 - movs r1, 0 - bl FillWindowPixelBuffer - movs r0, 0x2 - movs r1, 0 - bl FillWindowPixelBuffer - ldr r0, _0800AF24 @ =gUnknown_8234610 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - ldr r0, _0800AF28 @ =gUnknown_841DE9D - str r0, [sp, 0x8] - movs r0, 0x1 - movs r1, 0x3 - movs r2, 0x2 - movs r3, 0 - bl AddTextPrinterParameterized3 - movs r0, 0x1 - bl PutWindowTilemap - movs r0, 0x2 - bl PutWindowTilemap - movs r0, 0x1 - movs r1, 0 - bl CopyWindowToVram - movs r0, 0x2 - movs r1, 0x3 - bl CopyWindowToVram - movs r0, 0 - bl ShowBg - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_0800AF24: .4byte gUnknown_8234610 -_0800AF28: .4byte gUnknown_841DE9D - thumb_func_end sub_800AED0 - - thumb_func_start sub_800AF2C -sub_800AF2C: @ 800AF2C - push {r4,lr} - sub sp, 0xC - ldr r0, _0800AF4C @ =gMain - movs r1, 0x87 - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3C - beq _0800AF72 - cmp r0, 0x3C - bgt _0800AF50 - cmp r0, 0 - beq _0800AF5A - cmp r0, 0x1E - beq _0800AF72 - b _0800AFC4 - .align 2, 0 -_0800AF4C: .4byte gMain -_0800AF50: - cmp r0, 0x5A - beq _0800AF72 - cmp r0, 0x82 - beq _0800AF7A - b _0800AFC4 -_0800AF5A: - ldr r0, _0800AF68 @ =sLinkErrorBuffer - ldrb r0, [r0, 0x6] - cmp r0, 0 - beq _0800AF6C - bl sub_800AE1C - b _0800AFC4 - .align 2, 0 -_0800AF68: .4byte sLinkErrorBuffer -_0800AF6C: - bl sub_800AED0 - b _0800AFC4 -_0800AF72: - movs r0, 0x16 - bl PlaySE - b _0800AFC4 -_0800AF7A: - ldr r0, _0800AF9C @ =gWirelessCommType - ldrb r0, [r0] - cmp r0, 0x2 - bne _0800AFA8 - ldr r0, _0800AFA0 @ =gUnknown_8234610 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - ldr r0, _0800AFA4 @ =gUnknown_841DF6B - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0x3 - movs r2, 0x2 - movs r3, 0x14 - bl AddTextPrinterParameterized3 - b _0800AFC4 - .align 2, 0 -_0800AF9C: .4byte gWirelessCommType -_0800AFA0: .4byte gUnknown_8234610 -_0800AFA4: .4byte gUnknown_841DF6B -_0800AFA8: - cmp r0, 0x1 - bne _0800AFC4 - ldr r0, _0800AFFC @ =gUnknown_8234610 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - ldr r0, _0800B000 @ =gUnknown_841DF4C - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0x3 - movs r2, 0x2 - movs r3, 0x14 - bl AddTextPrinterParameterized3 -_0800AFC4: - ldr r0, _0800B004 @ =gMain - movs r2, 0x87 - lsls r2, 3 - adds r1, r0, r2 - ldrb r1, [r1] - cmp r1, 0xA0 - bne _0800B03C - ldr r4, _0800B008 @ =gWirelessCommType - ldrb r2, [r4] - cmp r2, 0x1 - bne _0800B010 - ldrh r0, [r0, 0x2E] - ands r2, r0 - cmp r2, 0 - beq _0800B02E - bl sub_812B484 - movs r0, 0x15 - bl PlaySE - movs r0, 0 - strb r0, [r4] - ldr r1, _0800B00C @ =sLinkErrorBuffer - movs r0, 0 - strb r0, [r1, 0x6] - bl sub_8079B7C - b _0800B02E - .align 2, 0 -_0800AFFC: .4byte gUnknown_8234610 -_0800B000: .4byte gUnknown_841DF4C -_0800B004: .4byte gMain -_0800B008: .4byte gWirelessCommType -_0800B00C: .4byte sLinkErrorBuffer -_0800B010: - cmp r2, 0x2 - bne _0800B02E - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0800B02E - bl sub_812B484 - bl rfu_REQ_stopMode - bl rfu_waitREQComplete - bl DoSoftReset -_0800B02E: - ldr r0, _0800B050 @ =gMain - movs r2, 0x87 - lsls r2, 3 - adds r1, r0, r2 - ldrb r1, [r1] - cmp r1, 0xA0 - beq _0800B048 -_0800B03C: - movs r2, 0x87 - lsls r2, 3 - adds r1, r0, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0800B048: - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800B050: .4byte gMain - thumb_func_end sub_800AF2C - - thumb_func_start GetSioMultiSI -GetSioMultiSI: @ 800B054 - ldr r0, _0800B060 @ =0x04000128 - ldrh r0, [r0] - lsrs r0, 2 - movs r1, 0x1 - ands r0, r1 - bx lr - .align 2, 0 -_0800B060: .4byte 0x04000128 - thumb_func_end GetSioMultiSI - - thumb_func_start IsSioMultiMaster -IsSioMultiMaster: @ 800B064 - push {lr} - movs r3, 0 - ldr r2, _0800B088 @ =0x04000128 - ldrh r1, [r2] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0800B080 - ldrh r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _0800B080 - movs r3, 0x1 -_0800B080: - adds r0, r3, 0 - pop {r1} - bx r1 - .align 2, 0 -_0800B088: .4byte 0x04000128 - thumb_func_end IsSioMultiMaster - - thumb_func_start IsLinkConnectionEstablished -IsLinkConnectionEstablished: @ 800B08C - ldr r0, _0800B098 @ =gLinkStatus - ldr r0, [r0] - lsrs r0, 6 - movs r1, 0x1 - ands r0, r1 - bx lr - .align 2, 0 -_0800B098: .4byte gLinkStatus - thumb_func_end IsLinkConnectionEstablished - - thumb_func_start SetSuppressLinkErrorMessage -SetSuppressLinkErrorMessage: @ 800B09C - ldr r1, _0800B0A4 @ =gSuppressLinkErrorMessage - strb r0, [r1] - bx lr - .align 2, 0 -_0800B0A4: .4byte gSuppressLinkErrorMessage - thumb_func_end SetSuppressLinkErrorMessage - - thumb_func_start HasLinkErrorOccurred -HasLinkErrorOccurred: @ 800B0A8 - ldr r0, _0800B0B0 @ =gLinkErrorOccurred - ldrb r0, [r0] - bx lr - .align 2, 0 -_0800B0B0: .4byte gLinkErrorOccurred - thumb_func_end HasLinkErrorOccurred - - thumb_func_start sub_800B0B4 -sub_800B0B4: @ 800B0B4 - push {r4-r6,lr} - bl InitLocalLinkPlayer - ldr r1, _0800B100 @ =gLocalLinkPlayerBlock - adds r2, r1, 0 - adds r2, 0x10 - ldr r0, _0800B104 @ =gLocalLinkPlayer - ldm r0!, {r3-r5} - stm r2!, {r3-r5} - ldm r0!, {r3,r4,r6} - stm r2!, {r3,r4,r6} - ldr r0, [r0] - str r0, [r2] - ldr r3, _0800B108 @ =gASCIIGameFreakInc - adds r2, r1, 0 - adds r0, r3, 0 - ldm r0!, {r4-r6} - stm r2!, {r4-r6} - ldrh r4, [r0] - strh r4, [r2] - ldrb r0, [r0, 0x2] - strb r0, [r2, 0x2] - adds r0, r1, 0 - adds r0, 0x2C - ldm r3!, {r2,r5,r6} - stm r0!, {r2,r5,r6} - ldrh r2, [r3] - strh r2, [r0] - ldrb r2, [r3, 0x2] - strb r2, [r0, 0x2] - ldr r0, _0800B10C @ =gBlockSendBuffer - movs r2, 0x3C - bl memcpy - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800B100: .4byte gLocalLinkPlayerBlock -_0800B104: .4byte gLocalLinkPlayer -_0800B108: .4byte gASCIIGameFreakInc -_0800B10C: .4byte gBlockSendBuffer - thumb_func_end sub_800B0B4 - - thumb_func_start sub_800B110 -sub_800B110: @ 800B110 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r2, r0, 8 - ldr r1, _0800B168 @ =gBlockRecvBuffer - adds r4, r2, r1 - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 2 - ldr r0, _0800B16C @ =gLinkPlayers - adds r2, r0 - adds r1, r2, 0 - adds r0, r4, 0 - adds r0, 0x10 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldr r0, [r0] - str r0, [r1] - adds r0, r2, 0 - bl sub_800B284 - ldr r5, _0800B170 @ =gASCIIGameFreakInc - adds r0, r4, 0 - adds r1, r5, 0 - bl strcmp - cmp r0, 0 - bne _0800B15A - adds r0, r4, 0 - adds r0, 0x2C - adds r1, r5, 0 - bl strcmp - cmp r0, 0 - beq _0800B160 -_0800B15A: - ldr r0, _0800B174 @ =CB2_LinkError - bl SetMainCallback2 -_0800B160: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0800B168: .4byte gBlockRecvBuffer -_0800B16C: .4byte gLinkPlayers -_0800B170: .4byte gASCIIGameFreakInc -_0800B174: .4byte CB2_LinkError - thumb_func_end sub_800B110 - - thumb_func_start HandleLinkConnection -HandleLinkConnection: @ 800B178 - push {r4,r5,lr} - ldr r0, _0800B1B0 @ =gWirelessCommType - ldrb r0, [r0] - cmp r0, 0 - bne _0800B1C8 - ldr r0, _0800B1B4 @ =gShouldAdvanceLinkState - ldr r1, _0800B1B8 @ =gSendCmd - ldr r2, _0800B1BC @ =gRecvCmds - bl LinkMain1 - ldr r4, _0800B1C0 @ =gLinkStatus - str r0, [r4] - ldr r0, _0800B1C4 @ =gMain + 0x2C - bl LinkMain2 - ldr r0, [r4] - movs r1, 0x80 - lsls r1, 1 - ands r0, r1 - cmp r0, 0 - beq _0800B1EC - bl sub_8058318 - cmp r0, 0x1 - bne _0800B1EC -_0800B1AA: - movs r0, 0x1 - b _0800B1EE - .align 2, 0 -_0800B1B0: .4byte gWirelessCommType -_0800B1B4: .4byte gShouldAdvanceLinkState -_0800B1B8: .4byte gSendCmd -_0800B1BC: .4byte gRecvCmds -_0800B1C0: .4byte gLinkStatus -_0800B1C4: .4byte gMain + 0x2C -_0800B1C8: - bl sub_80FAE94 - adds r4, r0, 0 - bl sub_80FAEF0 - adds r5, r0, 0 - bl sub_8058318 - cmp r0, 0x1 - bne _0800B1EC - cmp r4, 0x1 - beq _0800B1AA - bl sub_80F90DC - cmp r0, 0 - bne _0800B1AA - cmp r5, 0 - bne _0800B1AA -_0800B1EC: - movs r0, 0 -_0800B1EE: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end HandleLinkConnection - - thumb_func_start sub_800B1F4 -sub_800B1F4: @ 800B1F4 - push {lr} - ldr r0, _0800B208 @ =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _0800B204 - ldr r1, _0800B20C @ =gWirelessCommType - movs r0, 0x1 - strb r0, [r1] -_0800B204: - pop {r0} - bx r0 - .align 2, 0 -_0800B208: .4byte gReceivedRemoteLinkPlayers -_0800B20C: .4byte gWirelessCommType - thumb_func_end sub_800B1F4 - - thumb_func_start sub_800B210 -sub_800B210: @ 800B210 - push {lr} - ldr r0, _0800B224 @ =gReceivedRemoteLinkPlayers - ldrb r1, [r0] - cmp r1, 0 - bne _0800B21E - ldr r0, _0800B228 @ =gWirelessCommType - strb r1, [r0] -_0800B21E: - pop {r0} - bx r0 - .align 2, 0 -_0800B224: .4byte gReceivedRemoteLinkPlayers -_0800B228: .4byte gWirelessCommType - thumb_func_end sub_800B210 - - thumb_func_start sub_800B22C -sub_800B22C: @ 800B22C - push {lr} - ldr r0, _0800B240 @ =gReceivedRemoteLinkPlayers - ldrb r1, [r0] - cmp r1, 0 - bne _0800B23A - ldr r0, _0800B244 @ =gWirelessCommType - strb r1, [r0] -_0800B23A: - pop {r0} - bx r0 - .align 2, 0 -_0800B240: .4byte gReceivedRemoteLinkPlayers -_0800B244: .4byte gWirelessCommType - thumb_func_end sub_800B22C - - thumb_func_start sub_800B248 -sub_800B248: @ 800B248 - push {lr} - ldr r0, _0800B25C @ =gWirelessCommType - ldrb r0, [r0] - cmp r0, 0 - bne _0800B268 - ldr r0, _0800B260 @ =gLink - ldr r1, _0800B264 @ =0x00000fbd - adds r0, r1 - ldrb r0, [r0] - b _0800B26C - .align 2, 0 -_0800B25C: .4byte gWirelessCommType -_0800B260: .4byte gLink -_0800B264: .4byte 0x00000fbd -_0800B268: - bl sub_80FC460 -_0800B26C: - pop {r1} - bx r1 - thumb_func_end sub_800B248 - - thumb_func_start sub_800B270 -sub_800B270: @ 800B270 - push {lr} - bl sub_800B248 - cmp r0, 0x2 - bhi _0800B27E - movs r0, 0 - b _0800B280 -_0800B27E: - movs r0, 0x1 -_0800B280: - pop {r1} - bx r1 - thumb_func_end sub_800B270 - - thumb_func_start sub_800B284 -sub_800B284: @ 800B284 - push {lr} - ldrb r1, [r0, 0x10] - strb r1, [r0, 0x12] - adds r2, r0, 0 - adds r2, 0x8 - ldrb r1, [r0, 0x1A] - adds r0, r2, 0 - bl ConvertInternationalString - pop {r0} - bx r0 - thumb_func_end sub_800B284 - - thumb_func_start DisableSerial -DisableSerial: @ 800B29C - push {lr} - sub sp, 0x4 - movs r0, 0xC0 - bl DisableInterrupts - ldr r1, _0800B2DC @ =0x04000128 - movs r2, 0x80 - lsls r2, 6 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0800B2E0 @ =0x0400010e - movs r2, 0 - strh r2, [r0] - adds r1, 0xDA - movs r0, 0xC0 - strh r0, [r1] - ldr r0, _0800B2E4 @ =0x0400012a - strh r2, [r0] - ldr r2, _0800B2E8 @ =0x04000120 - movs r0, 0 - movs r1, 0 - str r0, [r2] - str r1, [r2, 0x4] - str r0, [sp] - ldr r1, _0800B2EC @ =gLink - ldr r2, _0800B2F0 @ =0x050003f0 - mov r0, sp - bl CpuSet - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0800B2DC: .4byte 0x04000128 -_0800B2E0: .4byte 0x0400010e -_0800B2E4: .4byte 0x0400012a -_0800B2E8: .4byte 0x04000120 -_0800B2EC: .4byte gLink -_0800B2F0: .4byte 0x050003f0 - thumb_func_end DisableSerial - - thumb_func_start EnableSerial -EnableSerial: @ 800B2F4 - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0xC0 - bl DisableInterrupts - ldr r0, _0800B354 @ =0x04000134 - movs r4, 0 - strh r4, [r0] - ldr r2, _0800B358 @ =0x04000128 - movs r1, 0x80 - lsls r1, 6 - adds r0, r1, 0 - strh r0, [r2] - ldrh r0, [r2] - ldr r3, _0800B35C @ =0x00004003 - adds r1, r3, 0 - orrs r0, r1 - strh r0, [r2] - movs r0, 0x80 - bl EnableInterrupts - ldr r0, _0800B360 @ =0x0400012a - strh r4, [r0] - movs r5, 0 - str r5, [sp] - ldr r1, _0800B364 @ =gLink - ldr r2, _0800B368 @ =0x050003f0 - mov r0, sp - bl CpuSet - ldr r0, _0800B36C @ =sNumVBlanksWithoutSerialIntr - strb r4, [r0] - ldr r0, _0800B370 @ =sSendNonzeroCheck - strh r5, [r0] - ldr r0, _0800B374 @ =sRecvNonzeroCheck - strh r5, [r0] - ldr r0, _0800B378 @ =sChecksumAvailable - strb r4, [r0] - ldr r0, _0800B37C @ =sHandshakePlayerCount - strb r4, [r0] - ldr r0, _0800B380 @ =gLastSendQueueCount - strb r4, [r0] - ldr r0, _0800B384 @ =gLastRecvQueueCount - strb r4, [r0] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800B354: .4byte 0x04000134 -_0800B358: .4byte 0x04000128 -_0800B35C: .4byte 0x00004003 -_0800B360: .4byte 0x0400012a -_0800B364: .4byte gLink -_0800B368: .4byte 0x050003f0 -_0800B36C: .4byte sNumVBlanksWithoutSerialIntr -_0800B370: .4byte sSendNonzeroCheck -_0800B374: .4byte sRecvNonzeroCheck -_0800B378: .4byte sChecksumAvailable -_0800B37C: .4byte sHandshakePlayerCount -_0800B380: .4byte gLastSendQueueCount -_0800B384: .4byte gLastRecvQueueCount - thumb_func_end EnableSerial - - thumb_func_start ResetSerial -ResetSerial: @ 800B388 - push {lr} - bl EnableSerial - bl DisableSerial - pop {r0} - bx r0 - thumb_func_end ResetSerial - thumb_func_start LinkMain1 LinkMain1: @ 800B398 push {r4-r7,lr} |