@ Generated by gcc 2.9-arm-000512 for Thumb/elf .code 16 .gcc2_compiled.: .section .rodata .type ClockGfx_Misc,object ClockGfx_Misc: .byte 16 .byte 0 .byte 18 .byte 0 .byte 63 .byte 0 .byte 0 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 254 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 160 .byte 1 .byte 240 .byte 168 .byte 0 .byte 3 .byte 223 .byte 0 .byte 3 .byte 255 .byte 240 .byte 26 .byte 0 .byte 0 .byte 15 .byte 191 .byte 0 .byte 3 .byte 253 .byte 240 .byte 28 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 16 .byte 1 .byte 16 .byte 198 .byte 240 .byte 3 .byte 255 .byte 64 .byte 3 .byte 240 .byte 20 .byte 176 .byte 3 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 255 .byte 240 .byte 3 .byte 240 .byte 255 .byte 255 .byte 240 .byte 3 .byte 240 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 214 .byte 240 .byte 255 .byte 240 .byte 3 .byte 240 .byte 255 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 255 .byte 240 .byte 255 .byte 240 .byte 20 .byte 240 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 223 .byte 240 .byte 255 .byte 176 .byte 3 .byte 240 .byte 32 .byte 3 .byte 240 .byte 24 .byte 64 .byte 3 .byte 5 .byte 4 .byte 16 .byte 3 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 197 .byte 234 .byte 64 .byte 235 .byte 160 .byte 222 .byte 21 .byte 251 .byte 22 .byte 3 .byte 96 .byte 231 .byte 255 .byte 144 .byte 28 .byte 21 .byte 251 .byte 240 .byte 250 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 254 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 69 .byte 235 .byte 221 .byte 239 .byte 117 .byte 7 .byte 176 .byte 3 .byte 20 .byte 239 .byte 221 .byte 85 .byte 3 .byte 240 .byte 3 .byte 240 .byte 77 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 245 .byte 255 .byte 240 .byte 3 .byte 112 .byte 255 .byte 240 .byte 243 .byte 240 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 255 .byte 255 .byte 240 .byte 3 .byte 240 .byte 255 .byte 240 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 255 .byte 240 .byte 3 .byte 73 .byte 222 .byte 255 .byte 240 .byte 243 .byte 120 .byte 15 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 128 .byte 144 .byte 1 .byte 160 .byte 170 .byte 10 .byte 0 .byte 170 .byte 170 .byte 170 .byte 14 .byte 0 .byte 10 .byte 0 .byte 160 .byte 240 .byte 28 .byte 16 .byte 31 .byte 0 .byte 2 .byte 160 .byte 188 .byte 0 .byte 34 .byte 160 .byte 0 .byte 1 .byte 16 .byte 39 .byte 240 .byte 43 .byte 144 .byte 75 .byte 170 .byte 170 .byte 71 .byte 160 .byte 0 .byte 40 .byte 160 .byte 0 .byte 10 .byte 240 .byte 32 .byte 240 .byte 1 .byte 32 .byte 1 .byte 119 .byte 170 .byte 240 .byte 127 .byte 240 .byte 127 .byte 160 .byte 127 .byte 10 .byte 0 .byte 43 .byte 240 .byte 39 .byte 240 .byte 127 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 255 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 240 .byte 1 .byte 16 .byte 1 .byte 0 .byte 0 .size ClockGfx_Misc,636 .align 2, 0 .type gUnknown_083F7A90,object gUnknown_083F7A90: .word ClockGfx_Misc .short 8192 .short 4096 .word 0 .space 4 .size gUnknown_083F7A90,16 .align 2, 0 .type gUnknown_083F7AA0,object gUnknown_083F7AA0: .word gMiscClockMale_Pal .short 4096 .space 2 .word gMiscClockFemale_Pal .short 4097 .space 2 .word 0 .space 4 .size gUnknown_083F7AA0,24 .align 2, 0 .type gOamData_83F7AB8,object .size gOamData_83F7AB8,8 gOamData_83F7AB8: .byte 160 .byte 0x0 .byte 0x0 .byte 0xc0 .byte 0x0 .byte 0x4 .short 0 .align 2, 0 .type gSpriteAnim_83F7AC0,object gSpriteAnim_83F7AC0: .short 0 .byte 0x1e .space 1 .short -1 .space 2 .size gSpriteAnim_83F7AC0,8 .align 2, 0 .type gSpriteAnim_83F7AC8,object gSpriteAnim_83F7AC8: .short 64 .byte 0x1e .space 1 .short -1 .space 2 .size gSpriteAnim_83F7AC8,8 .align 2, 0 .type gSpriteAnimTable_83F7AD0,object gSpriteAnimTable_83F7AD0: .word gSpriteAnim_83F7AC0 .size gSpriteAnimTable_83F7AD0,4 .align 2, 0 .type gSpriteAnimTable_83F7AD4,object gSpriteAnimTable_83F7AD4: .word gSpriteAnim_83F7AC8 .size gSpriteAnimTable_83F7AD4,4 .align 2, 0 .type gSpriteTemplate_83F7AD8,object .size gSpriteTemplate_83F7AD8,24 gSpriteTemplate_83F7AD8: .short 4096 .short 4096 .word gOamData_83F7AB8 .word gSpriteAnimTable_83F7AD0 .word 0 .word gDummySpriteAffineAnimTable .word sub_810B05C .align 2, 0 .type gSpriteTemplate_83F7AF0,object .size gSpriteTemplate_83F7AF0,24 gSpriteTemplate_83F7AF0: .short 4096 .short 4096 .word gOamData_83F7AB8 .word gSpriteAnimTable_83F7AD4 .word 0 .word gDummySpriteAffineAnimTable .word sub_810B0F4 .align 2, 0 .type gOamData_83F7B08,object .size gOamData_83F7B08,8 gOamData_83F7B08: .byte 160 .byte 0x0 .byte 0x0 .byte 0x40 .byte 0x0 .byte 0x8 .short 0 .align 2, 0 .type gSpriteAnim_83F7B10,object gSpriteAnim_83F7B10: .short 132 .byte 0x1e .space 1 .short -1 .space 2 .size gSpriteAnim_83F7B10,8 .align 2, 0 .type gSpriteAnim_83F7B18,object gSpriteAnim_83F7B18: .short 128 .byte 0x1e .space 1 .short -1 .space 2 .size gSpriteAnim_83F7B18,8 .align 2, 0 .type gSpriteAnimTable_83F7B20,object gSpriteAnimTable_83F7B20: .word gSpriteAnim_83F7B10 .size gSpriteAnimTable_83F7B20,4 .align 2, 0 .type gSpriteAnimTable_83F7B24,object gSpriteAnimTable_83F7B24: .word gSpriteAnim_83F7B18 .size gSpriteAnimTable_83F7B24,4 .align 2, 0 .type gSpriteTemplate_83F7B28,object .size gSpriteTemplate_83F7B28,24 gSpriteTemplate_83F7B28: .short 4096 .short 4096 .word gOamData_83F7B08 .word gSpriteAnimTable_83F7B20 .word 0 .word gDummySpriteAffineAnimTable .word sub_810B18C .align 2, 0 .type gSpriteTemplate_83F7B40,object .size gSpriteTemplate_83F7B40,24 gSpriteTemplate_83F7B40: .short 4096 .short 4096 .word gOamData_83F7B08 .word gSpriteAnimTable_83F7B24 .word 0 .word gDummySpriteAffineAnimTable .word sub_810B230 .text .align 2, 0 .type WallClockVblankCallback,function .thumb_func WallClockVblankCallback: push {lr} bl LoadOam bl ProcessSpriteCopyRequests bl TransferPlttBuffer pop {r0} bx r0 .Lfe1: .size WallClockVblankCallback,.Lfe1-WallClockVblankCallback .align 2, 0 .type LoadWallClockGraphics,function .thumb_func LoadWallClockGraphics: push {r4, r5, r6, r7, lr} mov r7, r8 push {r7} add sp, sp, #-8 mov r0, #0 bl SetVBlankCallback mov r0, #128 lsl r0, r0, #19 mov r1, #0 strh r1, [r0] add r0, r0, #14 strh r1, [r0] sub r0, r0, #2 strh r1, [r0] sub r0, r0, #2 strh r1, [r0] sub r0, r0, #2 strh r1, [r0] add r0, r0, #20 strh r1, [r0] add r0, r0, #2 strh r1, [r0] sub r0, r0, #6 strh r1, [r0] add r0, r0, #2 strh r1, [r0] sub r0, r0, #6 strh r1, [r0] add r0, r0, #2 strh r1, [r0] sub r0, r0, #6 strh r1, [r0] add r0, r0, #2 strh r1, [r0] mov r3, #192 lsl r3, r3, #19 mov r4, #192 lsl r4, r4, #9 add r0, sp, #4 mov r8, r0 mov r2, sp mov r6, #0 ldr r1, .L11 mov r5, #128 lsl r5, r5, #5 ldr r7, .L11+4 mov r0, #129 lsl r0, r0, #24 mov ip, r0 .L6: strh r6, [r2] mov r0, sp str r0, [r1] str r3, [r1, #4] str r7, [r1, #8] ldr r0, [r1, #8] add r3, r3, r5 sub r4, r4, r5 cmp r4, r5 bhi .L6 @cond_branch strh r6, [r2] mov r2, sp str r2, [r1] str r3, [r1, #4] lsr r0, r4, #1 mov r2, ip orr r0, r0, r2 str r0, [r1, #8] ldr r0, [r1, #8] mov r0, #224 lsl r0, r0, #19 mov r3, #128 lsl r3, r3, #3 mov r4, #0 str r4, [sp, #4] ldr r2, .L11 mov r1, r8 str r1, [r2] str r0, [r2, #4] lsr r0, r3, #2 mov r1, #133 lsl r1, r1, #24 orr r0, r0, r1 str r0, [r2, #8] ldr r0, [r2, #8] mov r1, #160 lsl r1, r1, #19 mov r0, sp strh r4, [r0] str r0, [r2] str r1, [r2, #4] lsr r3, r3, #1 mov r0, #129 lsl r0, r0, #24 orr r3, r3, r0 str r3, [r2, #8] ldr r0, [r2, #8] ldr r0, .L11+8 mov r1, #192 lsl r1, r1, #19 bl LZ77UnCompVram ldr r0, .L11+12 ldrh r0, [r0] cmp r0, #0 bne .L9 @cond_branch ldr r0, .L11+16 mov r1, #0 mov r2, #32 bl LoadPalette b .L10 .L12: .align 2, 0 .L11: .word 67109076 .word -2130704384 .word gMiscClock_Gfx .word gSpecialVar_0x8004 .word gMiscClockMale_Pal .L9: ldr r0, .L13 mov r1, #0 mov r2, #32 bl LoadPalette .L10: bl remove_some_task bl ResetTasks bl ResetSpriteData bl ResetPaletteFade bl FreeAllSpritePalettes ldr r0, .L13+4 bl LoadCompressedObjectPic ldr r0, .L13+8 bl LoadSpritePalettes ldr r0, .L13+12 bl SetUpWindowConfig ldr r0, .L13+16 bl InitMenuWindow add sp, sp, #8 pop {r3} mov r8, r3 pop {r4, r5, r6, r7} pop {r0} bx r0 .L14: .align 2, 0 .L13: .word gMiscClockFemale_Pal .word gUnknown_083F7A90 .word gUnknown_083F7AA0 .word gWindowConfig_81E6C3C .word gWindowConfig_81E6CE4 .Lfe2: .size LoadWallClockGraphics,.Lfe2-LoadWallClockGraphics .align 2, 0 .type WallClockInit,function .thumb_func WallClockInit: push {r4, r5, lr} add sp, sp, #-4 mov r0, #1 neg r0, r0 mov r5, #0 str r5, [sp] mov r1, #0 mov r2, #16 mov r3, #0 bl BeginNormalPaletteFade ldr r3, .L16 ldrh r2, [r3] strh r5, [r3] ldr r4, .L16+4 ldrh r0, [r4] mov r1, #1 orr r0, r0, r1 strh r0, [r4] strh r2, [r3] ldr r2, .L16+8 ldrh r0, [r2] mov r1, #8 orr r0, r0, r1 strh r0, [r2] ldr r0, .L16+12 bl SetVBlankCallback ldr r0, .L16+16 bl SetMainCallback2 ldr r0, .L16+20 strh r5, [r0] add r0, r0, #2 strh r5, [r0] add r0, r0, #2 strh r5, [r0] ldr r1, .L16+24 ldr r2, .L16+28 add r0, r2, #0 strh r0, [r1] sub r1, r1, #6 ldr r2, .L16+32 add r0, r2, #0 strh r0, [r1] sub r1, r1, #8 mov r2, #202 lsl r2, r2, #5 add r0, r2, #0 strh r0, [r1] add sp, sp, #4 pop {r4, r5} pop {r0} bx r0 .L17: .align 2, 0 .L16: .word 67109384 .word 67109376 .word 67108868 .word WallClockVblankCallback .word WallClockMainCallback .word 67108944 .word 67108878 .word 1793 .word 7944 .Lfe3: .size WallClockInit,.Lfe3-WallClockInit .align 2, 0 .globl CB2_StartWallClock .type CB2_StartWallClock,function .thumb_func CB2_StartWallClock: push {r4, r5, r6, lr} mov r6, r9 mov r5, r8 push {r5, r6} bl LoadWallClockGraphics ldr r0, .L19 ldr r1, .L19+4 bl LZ77UnCompVram ldr r0, .L19+8 mov r1, #0 bl CreateTask add r6, r0, #0 lsl r6, r6, #24 lsr r6, r6, #24 ldr r1, .L19+12 lsl r0, r6, #2 add r0, r0, r6 lsl r0, r0, #3 add r0, r0, r1 mov r2, #0 mov r1, #10 strh r1, [r0, #12] strh r2, [r0, #14] strh r2, [r0, #16] strh r2, [r0, #18] strh r2, [r0, #20] strh r2, [r0, #8] mov r1, #150 lsl r1, r1, #1 strh r1, [r0, #10] ldr r0, .L19+16 mov r1, #120 mov r2, #80 mov r3, #1 bl CreateSprite lsl r0, r0, #24 lsr r0, r0, #24 ldr r1, .L19+20 mov r8, r1 lsl r1, r0, #4 add r1, r1, r0 lsl r1, r1, #2 add r1, r1, r8 strh r6, [r1, #46] ldrb r2, [r1, #1] mov r5, #4 neg r5, r5 add r0, r5, #0 and r0, r0, r2 mov r2, #1 mov r9, r2 mov r2, r9 orr r0, r0, r2 strb r0, [r1, #1] ldrb r2, [r1, #3] mov r4, #63 neg r4, r4 add r0, r4, #0 and r0, r0, r2 strb r0, [r1, #3] ldr r0, .L19+24 mov r1, #120 mov r2, #80 mov r3, #0 bl CreateSprite lsl r0, r0, #24 lsr r0, r0, #24 lsl r1, r0, #4 add r1, r1, r0 lsl r1, r1, #2 add r1, r1, r8 strh r6, [r1, #46] ldrb r0, [r1, #1] and r5, r5, r0 mov r0, r9 orr r5, r5, r0 strb r5, [r1, #1] ldrb r0, [r1, #3] and r4, r4, r0 mov r0, #2 orr r4, r4, r0 strb r4, [r1, #3] ldr r0, .L19+28 mov r1, #120 mov r2, #80 mov r3, #2 bl CreateSprite lsl r0, r0, #24 lsr r0, r0, #24 lsl r1, r0, #4 add r1, r1, r0 lsl r1, r1, #2 add r1, r1, r8 strh r6, [r1, #46] mov r0, #45 strh r0, [r1, #48] ldr r0, .L19+32 mov r1, #120 mov r2, #80 mov r3, #2 bl CreateSprite lsl r0, r0, #24 lsr r0, r0, #24 lsl r1, r0, #4 add r1, r1, r0 lsl r1, r1, #2 add r1, r1, r8 strh r6, [r1, #46] mov r0, #90 strh r0, [r1, #48] bl WallClockInit pop {r3, r4} mov r8, r3 mov r9, r4 pop {r4, r5, r6} pop {r0} bx r0 .L20: .align 2, 0 .L19: .word gUnknown_08E954B0 .word 100677632 .word Task_SetClock1 .word gTasks .word gSpriteTemplate_83F7AD8 .word gSprites .word gSpriteTemplate_83F7AF0 .word gSpriteTemplate_83F7B28 .word gSpriteTemplate_83F7B40 .Lfe4: .size CB2_StartWallClock,.Lfe4-CB2_StartWallClock .align 2, 0 .globl CB2_ViewWallClock .type CB2_ViewWallClock,function .thumb_func CB2_ViewWallClock: push {r4, r5, r6, r7, lr} mov r7, sl mov r6, r9 mov r5, r8 push {r5, r6, r7} bl LoadWallClockGraphics ldr r0, .L24 ldr r1, .L24+4 bl LZ77UnCompVram ldr r0, .L24+8 mov r1, #0 bl CreateTask lsl r0, r0, #24 lsr r7, r0, #24 add r0, r7, #0 bl InitClockWithRtc ldr r1, .L24+12 lsl r0, r7, #2 add r0, r0, r7 lsl r0, r0, #3 add r0, r0, r1 mov r1, #18 ldrsh r0, [r0, r1] cmp r0, #0 bne .L22 @cond_branch mov r2, #45 mov r9, r2 mov r0, #90 mov sl, r0 b .L23 .L25: .align 2, 0 .L24: .word gUnknown_08E95774 .word 100677632 .word Task_ViewClock1 .word gTasks .L22: mov r1, #90 mov r9, r1 mov r2, #135 mov sl, r2 .L23: ldr r0, .L26 mov r1, #120 mov r2, #80 mov r3, #1 bl CreateSprite lsl r0, r0, #24 lsr r0, r0, #24 ldr r6, .L26+4 lsl r1, r0, #4 add r1, r1, r0 lsl r1, r1, #2 add r1, r1, r6 strh r7, [r1, #46] ldrb r2, [r1, #1] mov r5, #4 neg r5, r5 add r0, r5, #0 and r0, r0, r2 mov r2, #1 mov r8, r2 mov r2, r8 orr r0, r0, r2 strb r0, [r1, #1] ldrb r2, [r1, #3] mov r4, #63 neg r4, r4 add r0, r4, #0 and r0, r0, r2 strb r0, [r1, #3] ldr r0, .L26+8 mov r1, #120 mov r2, #80 mov r3, #0 bl CreateSprite lsl r0, r0, #24 lsr r0, r0, #24 lsl r1, r0, #4 add r1, r1, r0 lsl r1, r1, #2 add r1, r1, r6 strh r7, [r1, #46] ldrb r0, [r1, #1] and r5, r5, r0 mov r0, r8 orr r5, r5, r0 strb r5, [r1, #1] ldrb r0, [r1, #3] and r4, r4, r0 mov r0, #2 orr r4, r4, r0 strb r4, [r1, #3] ldr r0, .L26+12 mov r1, #120 mov r2, #80 mov r3, #2 bl CreateSprite lsl r0, r0, #24 lsr r0, r0, #24 lsl r1, r0, #4 add r1, r1, r0 lsl r1, r1, #2 add r1, r1, r6 strh r7, [r1, #46] mov r2, r9 strh r2, [r1, #48] ldr r0, .L26+16 mov r1, #120 mov r2, #80 mov r3, #2 bl CreateSprite lsl r0, r0, #24 lsr r0, r0, #24 lsl r1, r0, #4 add r1, r1, r0 lsl r1, r1, #2 add r1, r1, r6 strh r7, [r1, #46] mov r0, sl strh r0, [r1, #48] bl WallClockInit pop {r3, r4, r5} mov r8, r3 mov r9, r4 mov sl, r5 pop {r4, r5, r6, r7} pop {r0} bx r0 .L27: .align 2, 0 .L26: .word gSpriteTemplate_83F7AD8 .word gSprites .word gSpriteTemplate_83F7AF0 .word gSpriteTemplate_83F7B28 .word gSpriteTemplate_83F7B40 .Lfe5: .size CB2_ViewWallClock,.Lfe5-CB2_ViewWallClock .align 2, 0 .type WallClockMainCallback,function .thumb_func WallClockMainCallback: push {lr} bl RunTasks bl AnimateSprites bl BuildOamBuffer bl UpdatePaletteFade pop {r0} bx r0 .Lfe6: .size WallClockMainCallback,.Lfe6-WallClockMainCallback .align 2, 0 .type Task_SetClock1,function .thumb_func Task_SetClock1: push {lr} lsl r0, r0, #24 lsr r2, r0, #24 ldr r0, .L31 ldrb r1, [r0, #7] mov r0, #128 and r0, r0, r1 cmp r0, #0 bne .L30 @cond_branch ldr r0, .L31+4 lsl r1, r2, #2 add r1, r1, r2 lsl r1, r1, #3 add r1, r1, r0 ldr r0, .L31+8 str r0, [r1] .L30: pop {r0} bx r0 .L32: .align 2, 0 .L31: .word gPaletteFade .word gTasks .word Task_SetClock2 .Lfe7: .size Task_SetClock1,.Lfe7-Task_SetClock1 .align 2, 0 .type Task_SetClock2,function .thumb_func Task_SetClock2: push {r4, r5, r6, lr} lsl r0, r0, #24 lsr r6, r0, #24 ldr r1, .L43 lsl r0, r6, #2 add r0, r0, r6 lsl r0, r0, #3 add r5, r0, r1 mov r1, #8 ldrsh r0, [r5, r1] mov r1, #6 bl __modsi3 lsl r0, r0, #16 cmp r0, #0 beq .L34 @cond_branch ldrh r0, [r5, #8] ldrb r1, [r5, #16] ldrb r2, [r5, #20] bl CalcNewMinHandAngle strh r0, [r5, #8] b .L33 .L44: .align 2, 0 .L43: .word gTasks .L34: mov r2, #14 ldrsh r1, [r5, r2] lsl r0, r1, #1 add r0, r0, r1 lsl r0, r0, #1 strh r0, [r5, #8] mov r3, #12 ldrsh r0, [r5, r3] mov r1, #12 bl __modsi3 lsl r0, r0, #16 asr r0, r0, #16 lsl r4, r0, #4 sub r4, r4, r0 lsl r4, r4, #1 mov r1, #14 ldrsh r0, [r5, r1] mov r1, #10 bl __divsi3 lsl r0, r0, #16 asr r0, r0, #16 lsl r1, r0, #2 add r1, r1, r0 add r4, r4, r1 strh r4, [r5, #10] ldr r2, .L45 ldrh r0, [r2, #46] mov r3, #1 add r1, r3, #0 and r1, r1, r0 cmp r1, #0 beq .L36 @cond_branch ldr r0, .L45+4 str r0, [r5] b .L33 .L46: .align 2, 0 .L45: .word gMain .word Task_SetClock3 .L36: strh r1, [r5, #16] ldrh r1, [r2, #44] mov r0, #32 and r0, r0, r1 cmp r0, #0 beq .L38 @cond_branch strh r3, [r5, #16] .L38: ldrh r1, [r2, #44] mov r0, #16 and r0, r0, r1 cmp r0, #0 beq .L39 @cond_branch mov r0, #2 strh r0, [r5, #16] .L39: ldrh r1, [r5, #16] mov r2, #16 ldrsh r0, [r5, r2] cmp r0, #0 beq .L40 @cond_branch ldrh r2, [r5, #20] mov r3, #20 ldrsh r0, [r5, r3] cmp r0, #254 bgt .L41 @cond_branch add r0, r2, #1 strh r0, [r5, #20] .L41: ldrh r0, [r5, #8] lsl r1, r1, #24 lsr r1, r1, #24 ldrb r2, [r5, #20] bl CalcNewMinHandAngle strh r0, [r5, #8] ldrb r1, [r5, #16] add r0, r6, #0 bl AdvanceClock b .L33 .L40: strh r0, [r5, #20] .L33: pop {r4, r5, r6} pop {r0} bx r0 .Lfe8: .size Task_SetClock2,.Lfe8-Task_SetClock2 .align 2, 0 .type Task_SetClock3,function .thumb_func Task_SetClock3: push {r4, lr} add sp, sp, #-8 add r4, r0, #0 lsl r4, r4, #24 lsr r4, r4, #24 mov r0, #2 mov r1, #16 mov r2, #27 mov r3, #19 bl MenuDrawTextWindow ldr r0, .L48 mov r1, #3 mov r2, #17 bl MenuPrint mov r0, #23 mov r1, #8 mov r2, #29 mov r3, #13 bl MenuDrawTextWindow ldr r3, .L48+4 mov r0, #24 mov r1, #9 mov r2, #2 bl PrintMenuItems mov r0, #1 str r0, [sp] mov r0, #5 str r0, [sp, #4] mov r0, #0 mov r1, #24 mov r2, #9 mov r3, #2 bl InitMenu ldr r1, .L48+8 lsl r0, r4, #2 add r0, r0, r4 lsl r0, r0, #3 add r0, r0, r1 ldr r1, .L48+12 str r1, [r0] add sp, sp, #8 pop {r4} pop {r0} bx r0 .L49: .align 2, 0 .L48: .word gOtherText_CorrectTimePrompt .word gMenuYesNoItems .word gTasks .word Task_SetClock4 .Lfe9: .size Task_SetClock3,.Lfe9-Task_SetClock3 .align 2, 0 .type Task_SetClock4,function .thumb_func Task_SetClock4: push {r4, lr} lsl r0, r0, #24 lsr r4, r0, #24 bl ProcessMenuInputNoWrap_ lsl r0, r0, #24 asr r1, r0, #24 cmp r1, #0 beq .L52 @cond_branch cmp r1, #0 bgt .L57 @cond_branch mov r0, #1 neg r0, r0 cmp r1, r0 beq .L54 @cond_branch b .L50 .L57: cmp r1, #1 beq .L54 @cond_branch b .L50 .L52: mov r0, #5 bl PlaySE ldr r0, .L59 lsl r1, r4, #2 add r1, r1, r4 lsl r1, r1, #3 add r1, r1, r0 ldr r0, .L59+4 b .L58 .L60: .align 2, 0 .L59: .word gTasks .word Task_SetClock5 .L54: bl sub_8072DEC mov r0, #5 bl PlaySE mov r0, #23 mov r1, #8 mov r2, #29 mov r3, #13 bl MenuZeroFillWindowRect mov r0, #2 mov r1, #16 mov r2, #27 mov r3, #19 bl MenuZeroFillWindowRect ldr r0, .L61 lsl r1, r4, #2 add r1, r1, r4 lsl r1, r1, #3 add r1, r1, r0 ldr r0, .L61+4 .L58: str r0, [r1] .L50: pop {r4} pop {r0} bx r0 .L62: .align 2, 0 .L61: .word gTasks .word Task_SetClock2 .Lfe10: .size Task_SetClock4,.Lfe10-Task_SetClock4 .align 2, 0 .type Task_SetClock5,function .thumb_func Task_SetClock5: push {r4, lr} add sp, sp, #-4 lsl r0, r0, #24 lsr r0, r0, #24 ldr r1, .L64 lsl r4, r0, #2 add r4, r4, r0 lsl r4, r4, #3 add r4, r4, r1 mov r1, #12 ldrsh r0, [r4, r1] mov r2, #14 ldrsh r1, [r4, r2] bl RtcInitLocalTimeOffset mov r0, #1 neg r0, r0 mov r1, #0 str r1, [sp] mov r2, #0 mov r3, #16 bl BeginNormalPaletteFade ldr r0, .L64+4 str r0, [r4] add sp, sp, #4 pop {r4} pop {r0} bx r0 .L65: .align 2, 0 .L64: .word gTasks .word Task_SetClock6 .Lfe11: .size Task_SetClock5,.Lfe11-Task_SetClock5 .align 2, 0 .type Task_SetClock6,function .thumb_func Task_SetClock6: push {lr} ldr r0, .L68 ldrb r1, [r0, #7] mov r0, #128 and r0, r0, r1 cmp r0, #0 bne .L67 @cond_branch ldr r0, .L68+4 ldr r0, [r0, #8] bl SetMainCallback2 .L67: pop {r0} bx r0 .L69: .align 2, 0 .L68: .word gPaletteFade .word gMain .Lfe12: .size Task_SetClock6,.Lfe12-Task_SetClock6 .align 2, 0 .type Task_ViewClock1,function .thumb_func Task_ViewClock1: push {lr} lsl r0, r0, #24 lsr r2, r0, #24 ldr r0, .L72 ldrb r1, [r0, #7] mov r0, #128 and r0, r0, r1 cmp r0, #0 bne .L71 @cond_branch ldr r0, .L72+4 lsl r1, r2, #2 add r1, r1, r2 lsl r1, r1, #3 add r1, r1, r0 ldr r0, .L72+8 str r0, [r1] .L71: pop {r0} bx r0 .L73: .align 2, 0 .L72: .word gPaletteFade .word gTasks .word Task_ViewClock2 .Lfe13: .size Task_ViewClock1,.Lfe13-Task_ViewClock1 .align 2, 0 .type Task_ViewClock2,function .thumb_func Task_ViewClock2: push {r4, lr} lsl r0, r0, #24 lsr r4, r0, #24 add r0, r4, #0 bl InitClockWithRtc ldr r0, .L76 ldrh r1, [r0, #46] mov r0, #3 and r0, r0, r1 cmp r0, #0 beq .L75 @cond_branch ldr r0, .L76+4 lsl r1, r4, #2 add r1, r1, r4 lsl r1, r1, #3 add r1, r1, r0 ldr r0, .L76+8 str r0, [r1] .L75: pop {r4} pop {r0} bx r0 .L77: .align 2, 0 .L76: .word gMain .word gTasks .word Task_ViewClock3 .Lfe14: .size Task_ViewClock2,.Lfe14-Task_ViewClock2 .align 2, 0 .type Task_ViewClock3,function .thumb_func Task_ViewClock3: push {r4, lr} add sp, sp, #-4 add r4, r0, #0 lsl r4, r4, #24 lsr r4, r4, #24 mov r0, #1 neg r0, r0 mov r1, #0 str r1, [sp] mov r2, #0 mov r3, #16 bl BeginNormalPaletteFade ldr r1, .L79 lsl r0, r4, #2 add r0, r0, r4 lsl r0, r0, #3 add r0, r0, r1 ldr r1, .L79+4 str r1, [r0] add sp, sp, #4 pop {r4} pop {r0} bx r0 .L80: .align 2, 0 .L79: .word gTasks .word Task_ViewClock4 .Lfe15: .size Task_ViewClock3,.Lfe15-Task_ViewClock3 .align 2, 0 .type Task_ViewClock4,function .thumb_func Task_ViewClock4: push {lr} ldr r0, .L83 ldrb r1, [r0, #7] mov r0, #128 and r0, r0, r1 cmp r0, #0 bne .L82 @cond_branch ldr r0, .L83+4 ldr r0, [r0, #8] bl SetMainCallback2 .L82: pop {r0} bx r0 .L84: .align 2, 0 .L83: .word gPaletteFade .word gMain .Lfe16: .size Task_ViewClock4,.Lfe16-Task_ViewClock4 .align 2, 0 .type CalcMinHandDelta,function .thumb_func CalcMinHandDelta: push {lr} lsl r0, r0, #16 lsr r0, r0, #16 add r1, r0, #0 cmp r0, #60 bls .L86 @cond_branch mov r0, #6 b .L92 .L86: cmp r0, #30 bls .L88 @cond_branch mov r0, #3 b .L92 .L88: cmp r1, #10 bhi .L90 @cond_branch mov r0, #1 b .L92 .L90: mov r0, #2 .L92: pop {r1} bx r1 .Lfe17: .size CalcMinHandDelta,.Lfe17-CalcMinHandDelta .align 2, 0 .type CalcNewMinHandAngle,function .thumb_func CalcNewMinHandAngle: push {r4, r5, lr} lsl r0, r0, #16 lsr r4, r0, #16 lsl r1, r1, #24 lsr r5, r1, #24 lsl r2, r2, #24 lsr r2, r2, #24 add r0, r2, #0 bl CalcMinHandDelta lsl r0, r0, #24 lsr r1, r0, #24 cmp r5, #1 beq .L95 @cond_branch cmp r5, #2 beq .L98 @cond_branch b .L94 .L95: cmp r4, #0 beq .L96 @cond_branch sub r0, r4, r1 b .L103 .L96: mov r2, #180 lsl r2, r2, #1 add r0, r2, #0 sub r0, r0, r1 b .L103 .L98: mov r0, #180 lsl r0, r0, #1 sub r0, r0, r1 cmp r4, r0 bge .L99 @cond_branch add r0, r4, r1 .L103: lsl r0, r0, #16 lsr r4, r0, #16 b .L94 .L99: mov r4, #0 .L94: add r0, r4, #0 pop {r4, r5} pop {r1} bx r1 .Lfe18: .size CalcNewMinHandAngle,.Lfe18-CalcNewMinHandAngle .align 2, 0 .type AdvanceClock,function .thumb_func AdvanceClock: push {r4, r5, r6, lr} lsl r0, r0, #24 lsr r3, r0, #24 lsl r1, r1, #24 lsr r4, r1, #24 cmp r4, #1 beq .L106 @cond_branch cmp r4, #2 beq .L111 @cond_branch b .L105 .L106: ldr r0, .L119 lsl r1, r3, #2 add r1, r1, r3 lsl r1, r1, #3 add r1, r1, r0 ldrh r2, [r1, #14] mov r5, #14 ldrsh r0, [r1, r5] cmp r0, #0 ble .L107 @cond_branch sub r0, r2, #1 strh r0, [r1, #14] b .L105 .L120: .align 2, 0 .L119: .word gTasks .L107: mov r0, #59 strh r0, [r1, #14] ldrh r2, [r1, #12] mov r6, #12 ldrsh r0, [r1, r6] cmp r0, #0 ble .L109 @cond_branch sub r0, r2, #1 b .L118 .L109: mov r0, #23 .L118: strh r0, [r1, #12] add r0, r3, #0 add r1, r4, #0 bl UpdateClockPeriod b .L105 .L111: ldr r0, .L121 lsl r1, r3, #2 add r1, r1, r3 lsl r1, r1, #3 add r1, r1, r0 ldrh r2, [r1, #14] mov r5, #14 ldrsh r0, [r1, r5] cmp r0, #58 bgt .L112 @cond_branch add r0, r2, #1 strh r0, [r1, #14] b .L105 .L122: .align 2, 0 .L121: .word gTasks .L112: mov r5, #0 strh r5, [r1, #14] ldrh r2, [r1, #12] mov r6, #12 ldrsh r0, [r1, r6] cmp r0, #22 bgt .L114 @cond_branch add r0, r2, #1 strh r0, [r1, #12] b .L115 .L114: strh r5, [r1, #12] .L115: add r0, r3, #0 add r1, r4, #0 bl UpdateClockPeriod .L105: mov r0, #0 pop {r4, r5, r6} pop {r1} bx r1 .Lfe19: .size AdvanceClock,.Lfe19-AdvanceClock .align 2, 0 .type UpdateClockPeriod,function .thumb_func UpdateClockPeriod: push {lr} lsl r0, r0, #24 lsr r0, r0, #24 lsl r1, r1, #24 lsr r3, r1, #24 ldr r2, .L140 lsl r1, r0, #2 add r1, r1, r0 lsl r1, r1, #3 add r1, r1, r2 ldrb r0, [r1, #12] cmp r3, #1 beq .L125 @cond_branch cmp r3, #2 beq .L131 @cond_branch b .L124 .L141: .align 2, 0 .L140: .word gTasks .L125: cmp r0, #11 beq .L127 @cond_branch cmp r0, #23 beq .L128 @cond_branch b .L124 .L127: mov r0, #0 b .L139 .L128: strh r3, [r1, #18] b .L124 .L131: cmp r0, #0 beq .L139 @cond_branch cmp r0, #12 bne .L124 @cond_branch mov r0, #1 .L139: strh r0, [r1, #18] .L124: pop {r0} bx r0 .Lfe20: .size UpdateClockPeriod,.Lfe20-UpdateClockPeriod .align 2, 0 .type InitClockWithRtc,function .thumb_func InitClockWithRtc: push {r4, r5, r6, lr} add r4, r0, #0 lsl r4, r4, #24 lsr r4, r4, #24 bl RtcCalcLocalTime ldr r1, .L146 lsl r0, r4, #2 add r0, r0, r4 lsl r0, r0, #3 add r6, r0, r1 ldr r5, .L146+4 mov r0, #2 ldrsb r0, [r5, r0] strh r0, [r6, #12] mov r0, #3 ldrsb r0, [r5, r0] strh r0, [r6, #14] mov r0, #14 ldrsh r1, [r6, r0] lsl r0, r1, #1 add r0, r0, r1 lsl r0, r0, #1 strh r0, [r6, #8] mov r1, #12 ldrsh r0, [r6, r1] mov r1, #12 bl __modsi3 lsl r0, r0, #16 asr r0, r0, #16 lsl r4, r0, #4 sub r4, r4, r0 lsl r4, r4, #1 mov r1, #14 ldrsh r0, [r6, r1] mov r1, #10 bl __divsi3 lsl r0, r0, #16 asr r0, r0, #16 lsl r1, r0, #2 add r1, r1, r0 add r4, r4, r1 strh r4, [r6, #10] mov r0, #2 ldrsb r0, [r5, r0] cmp r0, #11 bgt .L143 @cond_branch mov r0, #0 b .L145 .L147: .align 2, 0 .L146: .word gTasks .word gLocalTime .L143: mov r0, #1 .L145: strh r0, [r6, #18] pop {r4, r5, r6} pop {r0} bx r0 .Lfe21: .size InitClockWithRtc,.Lfe21-InitClockWithRtc .section .rodata .type gClockHandCoords,object gClockHandCoords: .byte 0 .byte -24 .byte 1 .byte -25 .byte 1 .byte -25 .byte 2 .byte -25 .byte 2 .byte -25 .byte 2 .byte -25 .byte 3 .byte -24 .byte 3 .byte -25 .byte 4 .byte -25 .byte 4 .byte -25 .byte 4 .byte -25 .byte 5 .byte -25 .byte 5 .byte -25 .byte 6 .byte -24 .byte 6 .byte -24 .byte 6 .byte -24 .byte 7 .byte -24 .byte 7 .byte -24 .byte 7 .byte -24 .byte 8 .byte -24 .byte 8 .byte -24 .byte 9 .byte -24 .byte 9 .byte -24 .byte 10 .byte -23 .byte 10 .byte -23 .byte 11 .byte -22 .byte 11 .byte -22 .byte 11 .byte -22 .byte 12 .byte -22 .byte 12 .byte -21 .byte 13 .byte -21 .byte 13 .byte -21 .byte 13 .byte -21 .byte 14 .byte -21 .byte 14 .byte -21 .byte 14 .byte -20 .byte 14 .byte -20 .byte 15 .byte -20 .byte 15 .byte -19 .byte 16 .byte -19 .byte 16 .byte -19 .byte 16 .byte -19 .byte 16 .byte -18 .byte 16 .byte -18 .byte 17 .byte -18 .byte 17 .byte -17 .byte 17 .byte -17 .byte 18 .byte -17 .byte 18 .byte -17 .byte 18 .byte -16 .byte 18 .byte -16 .byte 19 .byte -16 .byte 19 .byte -15 .byte 19 .byte -15 .byte 20 .byte -15 .byte 20 .byte -14 .byte 20 .byte -14 .byte 20 .byte -13 .byte 20 .byte -13 .byte 21 .byte -13 .byte 21 .byte -13 .byte 21 .byte -12 .byte 22 .byte -12 .byte 22 .byte -12 .byte 22 .byte -11 .byte 22 .byte -11 .byte 22 .byte -10 .byte 23 .byte -10 .byte 23 .byte -9 .byte 23 .byte -9 .byte 23 .byte -9 .byte 23 .byte -9 .byte 23 .byte -8 .byte 23 .byte -8 .byte 23 .byte -7 .byte 23 .byte -7 .byte 23 .byte -6 .byte 24 .byte -6 .byte 24 .byte -6 .byte 25 .byte -5 .byte 25 .byte -5 .byte 24 .byte -4 .byte 25 .byte -4 .byte 24 .byte -3 .byte 25 .byte -3 .byte 25 .byte -3 .byte 25 .byte -2 .byte 25 .byte -2 .byte 24 .byte -1 .byte 25 .byte -1 .byte 24 .byte 0 .byte 24 .byte 0 .byte 24 .byte 0 .byte 24 .byte 1 .byte 24 .byte 1 .byte 25 .byte 2 .byte 24 .byte 2 .byte 25 .byte 2 .byte 24 .byte 3 .byte 24 .byte 3 .byte 25 .byte 4 .byte 24 .byte 4 .byte 24 .byte 5 .byte 24 .byte 5 .byte 24 .byte 5 .byte 24 .byte 6 .byte 23 .byte 6 .byte 23 .byte 6 .byte 23 .byte 7 .byte 23 .byte 8 .byte 23 .byte 8 .byte 23 .byte 8 .byte 23 .byte 9 .byte 23 .byte 9 .byte 23 .byte 10 .byte 22 .byte 10 .byte 22 .byte 10 .byte 22 .byte 11 .byte 22 .byte 11 .byte 22 .byte 11 .byte 22 .byte 12 .byte 21 .byte 12 .byte 21 .byte 12 .byte 21 .byte 13 .byte 20 .byte 13 .byte 20 .byte 13 .byte 19 .byte 13 .byte 19 .byte 13 .byte 19 .byte 14 .byte 19 .byte 14 .byte 19 .byte 15 .byte 19 .byte 15 .byte 18 .byte 15 .byte 18 .byte 16 .byte 17 .byte 16 .byte 17 .byte 16 .byte 17 .byte 17 .byte 17 .byte 17 .byte 16 .byte 17 .byte 16 .byte 18 .byte 16 .byte 18 .byte 15 .byte 18 .byte 14 .byte 18 .byte 15 .byte 19 .byte 14 .byte 19 .byte 14 .byte 19 .byte 13 .byte 19 .byte 13 .byte 20 .byte 13 .byte 20 .byte 13 .byte 20 .byte 12 .byte 20 .byte 12 .byte 20 .byte 12 .byte 21 .byte 11 .byte 21 .byte 11 .byte 21 .byte 11 .byte 21 .byte 10 .byte 21 .byte 10 .byte 22 .byte 10 .byte 22 .byte 9 .byte 22 .byte 9 .byte 22 .byte 8 .byte 22 .byte 7 .byte 22 .byte 7 .byte 23 .byte 7 .byte 23 .byte 6 .byte 23 .byte 6 .byte 23 .byte 5 .byte 23 .byte 5 .byte 23 .byte 5 .byte 24 .byte 4 .byte 24 .byte 4 .byte 24 .byte 4 .byte 24 .byte 3 .byte 24 .byte 2 .byte 24 .byte 2 .byte 24 .byte 1 .byte 24 .byte 1 .byte 24 .byte 0 .byte 24 .byte 0 .byte 24 .byte -1 .byte 23 .byte 0 .byte 24 .byte 0 .byte 24 .byte -1 .byte 24 .byte -1 .byte 24 .byte -2 .byte 24 .byte -2 .byte 24 .byte -3 .byte 24 .byte -3 .byte 24 .byte -4 .byte 24 .byte -4 .byte 24 .byte -5 .byte 24 .byte -5 .byte 23 .byte -5 .byte 23 .byte -6 .byte 23 .byte -6 .byte 23 .byte -7 .byte 23 .byte -7 .byte 23 .byte -7 .byte 23 .byte -8 .byte 23 .byte -8 .byte 22 .byte -9 .byte 22 .byte -9 .byte 22 .byte -10 .byte 22 .byte -10 .byte 22 .byte -10 .byte 21 .byte -11 .byte 21 .byte -11 .byte 21 .byte -11 .byte 21 .byte -11 .byte 20 .byte -12 .byte 20 .byte -12 .byte 20 .byte -13 .byte 20 .byte -13 .byte 20 .byte -13 .byte 19 .byte -14 .byte 19 .byte -14 .byte 19 .byte -14 .byte 19 .byte -14 .byte 18 .byte -15 .byte 18 .byte -15 .byte 18 .byte -15 .byte 17 .byte -16 .byte 17 .byte -16 .byte 17 .byte -17 .byte 17 .byte -17 .byte 16 .byte -17 .byte 16 .byte -18 .byte 16 .byte -17 .byte 15 .byte -18 .byte 15 .byte -18 .byte 15 .byte -19 .byte 15 .byte -19 .byte 14 .byte -19 .byte 14 .byte -19 .byte 13 .byte -19 .byte 13 .byte -20 .byte 13 .byte -20 .byte 12 .byte -20 .byte 12 .byte -21 .byte 12 .byte -21 .byte 12 .byte -21 .byte 11 .byte -21 .byte 11 .byte -21 .byte 10 .byte -21 .byte 10 .byte -21 .byte 9 .byte -22 .byte 9 .byte -22 .byte 9 .byte -22 .byte 8 .byte -22 .byte 8 .byte -22 .byte 7 .byte -23 .byte 7 .byte -23 .byte 7 .byte -23 .byte 6 .byte -23 .byte 6 .byte -23 .byte 5 .byte -24 .byte 5 .byte -23 .byte 4 .byte -23 .byte 4 .byte -24 .byte 4 .byte -24 .byte 4 .byte -24 .byte 3 .byte -24 .byte 3 .byte -24 .byte 2 .byte -24 .byte 2 .byte -24 .byte 1 .byte -24 .byte 1 .byte -24 .byte 1 .byte -24 .byte 0 .byte -25 .byte 0 .byte -24 .byte -1 .byte -25 .byte -1 .byte -24 .byte -1 .byte -24 .byte -2 .byte -24 .byte -2 .byte -24 .byte -3 .byte -24 .byte -3 .byte -24 .byte -4 .byte -24 .byte -4 .byte -24 .byte -4 .byte -24 .byte -5 .byte -24 .byte -5 .byte -24 .byte -6 .byte -24 .byte -6 .byte -23 .byte -6 .byte -23 .byte -7 .byte -23 .byte -7 .byte -23 .byte -8 .byte -23 .byte -8 .byte -23 .byte -9 .byte -23 .byte -9 .byte -22 .byte -9 .byte -22 .byte -9 .byte -22 .byte -10 .byte -22 .byte -10 .byte -21 .byte -10 .byte -21 .byte -11 .byte -22 .byte -11 .byte -22 .byte -12 .byte -21 .byte -12 .byte -21 .byte -13 .byte -21 .byte -13 .byte -20 .byte -13 .byte -21 .byte -14 .byte -20 .byte -14 .byte -20 .byte -14 .byte -19 .byte -14 .byte -19 .byte -15 .byte -19 .byte -15 .byte -18 .byte -16 .byte -18 .byte -16 .byte -18 .byte -16 .byte -18 .byte -17 .byte -18 .byte -17 .byte -17 .byte -17 .byte -17 .byte -18 .byte -17 .byte -18 .byte -16 .byte -18 .byte -16 .byte -18 .byte -16 .byte -19 .byte -16 .byte -19 .byte -15 .byte -19 .byte -15 .byte -19 .byte -15 .byte -20 .byte -14 .byte -20 .byte -14 .byte -20 .byte -14 .byte -21 .byte -13 .byte -21 .byte -13 .byte -21 .byte -13 .byte -21 .byte -12 .byte -21 .byte -12 .byte -22 .byte -11 .byte -22 .byte -11 .byte -22 .byte -11 .byte -22 .byte -10 .byte -22 .byte -10 .byte -22 .byte -9 .byte -22 .byte -9 .byte -23 .byte -9 .byte -23 .byte -8 .byte -23 .byte -8 .byte -23 .byte -7 .byte -23 .byte -7 .byte -23 .byte -7 .byte -24 .byte -6 .byte -24 .byte -6 .byte -24 .byte -5 .byte -24 .byte -5 .byte -24 .byte -4 .byte -24 .byte -4 .byte -24 .byte -4 .byte -24 .byte -4 .byte -25 .byte -3 .byte -25 .byte -2 .byte -25 .byte -2 .byte -24 .byte -2 .byte -24 .byte -1 .byte -25 .byte -1 .byte -25 .byte 0 .byte -25 .size gClockHandCoords,720 .text .align 2, 0 .type sub_810B05C,function .thumb_func sub_810B05C: push {r4, r5, r6, r7, lr} add sp, sp, #-4 add r6, r0, #0 ldr r2, .L153 mov r0, #46 ldrsh r1, [r6, r0] lsl r0, r1, #2 add r0, r0, r1 lsl r0, r0, #3 add r0, r0, r2 ldrh r4, [r0, #8] add r7, r4, #0 add r0, r4, #0 bl Sin2 lsl r0, r0, #16 asr r0, r0, #16 cmp r0, #0 bge .L149 @cond_branch add r0, r0, #15 .L149: lsl r0, r0, #12 lsr r5, r0, #16 add r0, r4, #0 bl Cos2 lsl r0, r0, #16 asr r0, r0, #16 cmp r0, #0 bge .L150 @cond_branch add r0, r0, #15 .L150: lsl r1, r0, #12 lsr r1, r1, #16 lsl r3, r5, #16 lsr r2, r3, #16 neg r3, r3 lsr r3, r3, #16 str r1, [sp] mov r0, #0 bl SetOamMatrix ldr r1, .L153+4 lsl r2, r7, #1 add r0, r2, r1 ldrb r0, [r0, #0] lsl r0, r0, #24 asr r0, r0, #24 lsl r0, r0, #16 lsr r3, r0, #16 add r1, r1, #1 add r2, r2, r1 mov r0, #0 ldrsb r0, [r2, r0] lsl r0, r0, #16 lsr r2, r0, #16 cmp r3, #128 bls .L151 @cond_branch mov r1, #255 lsl r1, r1, #8 add r0, r1, #0 orr r3, r3, r0 .L151: cmp r2, #128 bls .L152 @cond_branch mov r1, #255 lsl r1, r1, #8 add r0, r1, #0 orr r2, r2, r0 .L152: strh r3, [r6, #36] strh r2, [r6, #38] add sp, sp, #4 pop {r4, r5, r6, r7} pop {r0} bx r0 .L154: .align 2, 0 .L153: .word gTasks .word gClockHandCoords .Lfe22: .size sub_810B05C,.Lfe22-sub_810B05C .align 2, 0 .type sub_810B0F4,function .thumb_func sub_810B0F4: push {r4, r5, r6, r7, lr} add sp, sp, #-4 add r6, r0, #0 ldr r2, .L160 mov r0, #46 ldrsh r1, [r6, r0] lsl r0, r1, #2 add r0, r0, r1 lsl r0, r0, #3 add r0, r0, r2 ldrh r4, [r0, #10] add r7, r4, #0 add r0, r4, #0 bl Sin2 lsl r0, r0, #16 asr r0, r0, #16 cmp r0, #0 bge .L156 @cond_branch add r0, r0, #15 .L156: lsl r0, r0, #12 lsr r5, r0, #16 add r0, r4, #0 bl Cos2 lsl r0, r0, #16 asr r0, r0, #16 cmp r0, #0 bge .L157 @cond_branch add r0, r0, #15 .L157: lsl r1, r0, #12 lsr r1, r1, #16 lsl r3, r5, #16 lsr r2, r3, #16 neg r3, r3 lsr r3, r3, #16 str r1, [sp] mov r0, #1 bl SetOamMatrix ldr r1, .L160+4 lsl r2, r7, #1 add r0, r2, r1 ldrb r0, [r0, #0] lsl r0, r0, #24 asr r0, r0, #24 lsl r0, r0, #16 lsr r3, r0, #16 add r1, r1, #1 add r2, r2, r1 mov r0, #0 ldrsb r0, [r2, r0] lsl r0, r0, #16 lsr r2, r0, #16 cmp r3, #128 bls .L158 @cond_branch mov r1, #255 lsl r1, r1, #8 add r0, r1, #0 orr r3, r3, r0 .L158: cmp r2, #128 bls .L159 @cond_branch mov r1, #255 lsl r1, r1, #8 add r0, r1, #0 orr r2, r2, r0 .L159: strh r3, [r6, #36] strh r2, [r6, #38] add sp, sp, #4 pop {r4, r5, r6, r7} pop {r0} bx r0 .L161: .align 2, 0 .L160: .word gTasks .word gClockHandCoords .Lfe23: .size sub_810B0F4,.Lfe23-sub_810B0F4 .align 2, 0 .type sub_810B18C,function .thumb_func sub_810B18C: push {r4, lr} add r4, r0, #0 ldr r2, .L172 mov r0, #46 ldrsh r1, [r4, r0] lsl r0, r1, #2 add r0, r0, r1 lsl r0, r0, #3 add r0, r0, r2 mov r1, #18 ldrsh r0, [r0, r1] cmp r0, #0 beq .L163 @cond_branch ldrh r1, [r4, #48] add r0, r1, #0 sub r0, r0, #60 lsl r0, r0, #16 lsr r0, r0, #16 cmp r0, #29 bhi .L164 @cond_branch add r0, r1, #5 strh r0, [r4, #48] .L164: ldrh r1, [r4, #48] mov r2, #48 ldrsh r0, [r4, r2] cmp r0, #59 bgt .L166 @cond_branch add r0, r1, #1 b .L171 .L173: .align 2, 0 .L172: .word gTasks .L163: ldrh r1, [r4, #48] add r0, r1, #0 sub r0, r0, #46 lsl r0, r0, #16 lsr r0, r0, #16 cmp r0, #29 bhi .L167 @cond_branch sub r0, r1, #5 strh r0, [r4, #48] .L167: ldrh r1, [r4, #48] mov r2, #48 ldrsh r0, [r4, r2] cmp r0, #75 ble .L166 @cond_branch sub r0, r1, #1 .L171: strh r0, [r4, #48] .L166: ldrh r0, [r4, #48] bl Cos2 lsl r0, r0, #16 asr r0, r0, #16 lsl r1, r0, #4 sub r1, r1, r0 lsl r0, r1, #1 cmp r0, #0 bge .L169 @cond_branch ldr r1, .L174 add r0, r0, r1 .L169: asr r0, r0, #12 strh r0, [r4, #36] ldrh r0, [r4, #48] bl Sin2 lsl r0, r0, #16 asr r0, r0, #16 lsl r1, r0, #4 sub r1, r1, r0 lsl r0, r1, #1 cmp r0, #0 bge .L170 @cond_branch ldr r2, .L174 add r0, r0, r2 .L170: asr r0, r0, #12 strh r0, [r4, #38] pop {r4} pop {r0} bx r0 .L175: .align 2, 0 .L174: .word 4095 .Lfe24: .size sub_810B18C,.Lfe24-sub_810B18C .align 2, 0 .type sub_810B230,function .thumb_func sub_810B230: push {r4, lr} add r4, r0, #0 ldr r2, .L186 mov r0, #46 ldrsh r1, [r4, r0] lsl r0, r1, #2 add r0, r0, r1 lsl r0, r0, #3 add r0, r0, r2 mov r1, #18 ldrsh r0, [r0, r1] cmp r0, #0 beq .L177 @cond_branch ldrh r1, [r4, #48] add r0, r1, #0 sub r0, r0, #105 lsl r0, r0, #16 lsr r0, r0, #16 cmp r0, #29 bhi .L178 @cond_branch add r0, r1, #5 strh r0, [r4, #48] .L178: ldrh r1, [r4, #48] mov r2, #48 ldrsh r0, [r4, r2] cmp r0, #104 bgt .L180 @cond_branch add r0, r1, #1 b .L185 .L187: .align 2, 0 .L186: .word gTasks .L177: ldrh r1, [r4, #48] add r0, r1, #0 sub r0, r0, #91 lsl r0, r0, #16 lsr r0, r0, #16 cmp r0, #29 bhi .L181 @cond_branch sub r0, r1, #5 strh r0, [r4, #48] .L181: ldrh r1, [r4, #48] mov r2, #48 ldrsh r0, [r4, r2] cmp r0, #120 ble .L180 @cond_branch sub r0, r1, #1 .L185: strh r0, [r4, #48] .L180: ldrh r0, [r4, #48] bl Cos2 lsl r0, r0, #16 asr r0, r0, #16 lsl r1, r0, #4 sub r1, r1, r0 lsl r0, r1, #1 cmp r0, #0 bge .L183 @cond_branch ldr r1, .L188 add r0, r0, r1 .L183: asr r0, r0, #12 strh r0, [r4, #36] ldrh r0, [r4, #48] bl Sin2 lsl r0, r0, #16 asr r0, r0, #16 lsl r1, r0, #4 sub r1, r1, r0 lsl r0, r1, #1 cmp r0, #0 bge .L184 @cond_branch ldr r2, .L188 add r0, r0, r2 .L184: asr r0, r0, #12 strh r0, [r4, #38] pop {r4} pop {r0} bx r0 .L189: .align 2, 0 .L188: .word 4095 .Lfe25: .size sub_810B230,.Lfe25-sub_810B230 .text .align 2, 0