0809D504 @ =============== S U B R O U T I N E =======================================
0809D504
0809D504
0809D504 sp18B_ShowFossilPicture: @ DATA XREF: ROM:special_tableo
0809D504 PUSH {R4-R6,LR}
0809D506 MOV R6, R8
0809D508 PUSH {R6}
0809D50A LDR R0, =(sub_0809D6D4+1)
0809D50C BL sub_081119D4
0809D510 LSLS R0, R0, #0x18
0809D512 LSRS R0, R0, #0x18
0809D514 CMP R0, #1
0809D516 BEQ Ret_1
0809D518 LDR R0, =(c3_Special0x18C+1)
0809D51A BL position_in_c3_list
0809D51E LSLS R0, R0, #0x18
0809D520 LSRS R0, R0, #0x18
0809D522 CMP R0, #0xFF
0809D524 BNE Ret_0
0809D526 LDR R0, =var_8004
0809D528 LDRH R0, [R0]
0809D52A CMP R0, #0x8D
0809D52C BNE loc_0809D558
0809D52E LDR R0, =off_083E17C0
0809D530 BL sub_08008720
0809D534 LDR R0, =unk_083E17A0
0809D536 MOVS R1, 0x1D0
0809D53A MOVS R2, #0x20
0809D53C BL use_unfaded_pal_and_a_bit_of_R0
0809D540 B loc_0809D572
0809D540 @ ---------------------------------------------------------------------------
0809D542 .byte 0
0809D543 .byte 0
0809D544 off_0809D544: .long sub_0809D6D4+1 @ DATA XREF: sp18B_ShowFossilPicture+6r
0809D548 off_0809D548: .long c3_Special0x18C+1 @ DATA XREF: sp18B_ShowFossilPicture+14r
0809D54C off_0809D54C: .long var_8004 @ DATA XREF: sp18B_ShowFossilPicture+22r
0809D550 off_0809D550: .long off_083E17C0 @ DATA XREF: sp18B_ShowFossilPicture+2Ar
0809D554 off_0809D554: .long unk_083E17A0 @ DATA XREF: sp18B_ShowFossilPicture+30r
0809D558 @ ---------------------------------------------------------------------------
0809D558
0809D558 loc_0809D558: @ CODE XREF: sp18B_ShowFossilPicture+28j
0809D558 CMP R0, #0x8E
0809D55A BEQ loc_0809D560
0809D55C
0809D55C Ret_0: @ CODE XREF: sp18B_ShowFossilPicture+20j
0809D55C MOVS R0, #0
0809D55E B End
0809D560 @ ---------------------------------------------------------------------------
0809D560
0809D560 loc_0809D560: @ CODE XREF: sp18B_ShowFossilPicture+56j
0809D560 LDR R0, =off_083E17D0
0809D562 BL sub_08008720
0809D566 LDR R0, =unk_083E0F80
0809D568 MOVS R1, 0x1D0
0809D56C MOVS R2, #0x20
0809D56E BL use_unfaded_pal_and_a_bit_of_R0
0809D572
0809D572 loc_0809D572: @ CODE XREF: sp18B_ShowFossilPicture+3Cj
0809D572 LDR R0, =stru_083E0768
0809D574 LDR R1, =var_8005
0809D576 MOV R8, R1
0809D578 LDRH R1, [R1]
0809D57A LSLS R1, R1, #0x13
0809D57C MOVS R2, 0x280000
0809D580 ADDS R1, R1, R2
0809D582 ASRS R1, R1, #0x10
0809D584 LDR R6, =var_8006
0809D586 LDRH R2, [R6]
0809D588 LSLS R2, R2, #0x13
0809D58A MOVS R3, 0x280000
0809D58E ADDS R2, R2, R3
0809D590 ASRS R2, R2, #0x10
0809D592 MOVS R3, #0
0809D594 BL uns_to_oam_pre_buf
0809D598 MOVS R5, R0
0809D59A LSLS R5, R5, #0x18
0809D59C LSRS R5, R5, #0x18
0809D59E LDR R1, =oam_pre_buffer
0809D5A0 LSLS R0, R5, #4
0809D5A2 ADDS R0, R0, R5
0809D5A4 LSLS R0, R0, #2
0809D5A6 ADDS R0, R0, R1
0809D5A8 LDRB R2, [R0,#5]
0809D5AA MOVS R1, #0xF
0809D5AC ANDS R1, R2
0809D5AE MOVS R2, #0xD0
0809D5B0 ORRS R1, R2
0809D5B2 STRB R1, [R0,#5]
0809D5B4 LDR R0, =(c3_Special0x18C+1)
0809D5B6 MOVS R1, #0x50
0809D5B8 BL add_to_callback3_list
0809D5BC MOVS R4, R0
0809D5BE LSLS R4, R4, #0x18
0809D5C0 LSRS R4, R4, #0x18
0809D5C2 MOV R1, R8
[S-HIGHLIGHT]0809D5C4 LDRB R0, [R1] @ x
0809D5C6 LDRB R1, [R6] @ y
0809D5C8 MOVS R2, #8 @ width
0809D5CA MOVS R3, #8 @ height
0809D5CC BL DrawBox[/S-HIGHLIGHT]
0809D5D0 LDR R2, =callback3table
0809D5D2 LSLS R1, R4, #2
0809D5D4 ADDS R1, R1, R4
0809D5D6 LSLS R1, R1, #3
0809D5D8 ADDS R1, R1, R2
0809D5DA LSLS R0, R0, #0x18
0809D5DC LSRS R0, R0, #0x18
0809D5DE MOVS R2, #0
0809D5E0 STRH R0, [R1,#0x12]
0809D5E2 STRH R2, [R1,#8]
0809D5E4 STRH R5, [R1,#0xC]
0809D5E6 MOVS R1, #1
0809D5E8 BL sub_080F7750
0809D5EC MOVS R0, #0
0809D5EE BL sub_080F67A4
0809D5F2
0809D5F2 Ret_1: @ CODE XREF: sp18B_ShowFossilPicture+12j
0809D5F2 MOVS R0, #1
0809D5F4
0809D5F4 End: @ CODE XREF: sp18B_ShowFossilPicture+5Aj
0809D5F4 POP {R3}
0809D5F6 MOV R8, R3
0809D5F8 POP {R4-R6}
0809D5FA POP {R1}
0809D5FC BX R1
0809D5FC @ End of function sp18B_ShowFossilPicture