through MultiplyPaletteRGBComponents

This commit is contained in:
PikalaxALT
2020-02-27 14:08:26 -05:00
parent c93915120f
commit 0d88e2d1de
8 changed files with 220 additions and 498 deletions
-413
View File
@@ -5,419 +5,6 @@
.text
thumb_func_start CreateTrainerSprite
CreateTrainerSprite: @ 8083858
push {r4-r7,lr}
mov r7, r9
mov r6, r8
push {r6,r7}
sub sp, 0x18
adds r4, r0, 0
adds r5, r1, 0
adds r6, r2, 0
mov r9, r3
ldr r7, [sp, 0x34]
lsls r4, 24
lsls r5, 16
lsrs r5, 16
lsls r6, 16
lsrs r6, 16
mov r0, r9
lsls r0, 24
lsrs r0, 24
mov r9, r0
lsrs r4, 21
ldr r3, _080838E0 @ =gTrainerFrontPicPaletteTable
mov r8, r3
add r8, r4
mov r0, r8
adds r1, r7, 0
bl LoadCompressedSpritePaletteOverrideBuffer
ldr r0, _080838E4 @ =gTrainerFrontPicTable
adds r4, r0
adds r0, r4, 0
adds r1, r7, 0
bl LoadCompressedSpriteSheetOverrideBuffer
mov r1, sp
ldrh r0, [r4, 0x6]
movs r2, 0
strh r0, [r1]
mov r3, r8
ldrh r0, [r3, 0x4]
strh r0, [r1, 0x2]
ldr r0, _080838E8 @ =gNewGameBirchOamAttributes
str r0, [sp, 0x4]
ldr r0, _080838EC @ =gDummySpriteAnimTable
str r0, [sp, 0x8]
str r2, [sp, 0xC]
ldr r0, _080838F0 @ =gDummySpriteAffineAnimTable
str r0, [sp, 0x10]
ldr r0, _080838F4 @ =SpriteCallbackDummy
str r0, [sp, 0x14]
lsls r5, 16
asrs r5, 16
lsls r6, 16
asrs r6, 16
mov r0, sp
adds r1, r5, 0
adds r2, r6, 0
mov r3, r9
bl CreateSprite
lsls r0, 24
lsrs r0, 24
add sp, 0x18
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r7}
pop {r1}
bx r1
.align 2, 0
_080838E0: .4byte gTrainerFrontPicPaletteTable
_080838E4: .4byte gTrainerFrontPicTable
_080838E8: .4byte gNewGameBirchOamAttributes
_080838EC: .4byte gDummySpriteAnimTable
_080838F0: .4byte gDummySpriteAffineAnimTable
_080838F4: .4byte SpriteCallbackDummy
thumb_func_end CreateTrainerSprite
thumb_func_start LoadTrainerGfx_TrainerCard
LoadTrainerGfx_TrainerCard: @ 80838F8
push {r4,r5,lr}
adds r4, r0, 0
adds r5, r1, 0
adds r1, r2, 0
lsls r4, 24
lsls r5, 16
lsrs r5, 16
ldr r0, _08083928 @ =gTrainerFrontPicTable
lsrs r4, 21
adds r0, r4, r0
ldr r0, [r0]
bl LZDecompressVram
ldr r0, _0808392C @ =gTrainerFrontPicPaletteTable
adds r4, r0
ldr r0, [r4]
adds r1, r5, 0
movs r2, 0x20
bl LoadCompressedPalette
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_08083928: .4byte gTrainerFrontPicTable
_0808392C: .4byte gTrainerFrontPicPaletteTable
thumb_func_end LoadTrainerGfx_TrainerCard
thumb_func_start AddNewGameBirchObject
AddNewGameBirchObject: @ 8083930
push {r4-r6,lr}
adds r4, r0, 0
adds r5, r1, 0
adds r6, r2, 0
lsls r4, 16
lsrs r4, 16
lsls r5, 16
lsrs r5, 16
lsls r6, 24
lsrs r6, 24
ldr r0, _08083968 @ =gNewGameBirchObjectPaletteInfo
bl LoadSpritePalette
ldr r0, _0808396C @ =gNewGameBirchObjectTemplate
lsls r4, 16
asrs r4, 16
lsls r5, 16
asrs r5, 16
adds r1, r4, 0
adds r2, r5, 0
adds r3, r6, 0
bl CreateSprite
lsls r0, 24
lsrs r0, 24
pop {r4-r6}
pop {r1}
bx r1
.align 2, 0
_08083968: .4byte gNewGameBirchObjectPaletteInfo
_0808396C: .4byte gNewGameBirchObjectTemplate
thumb_func_end AddNewGameBirchObject
thumb_func_start CreateMonSprite_PicBox
CreateMonSprite_PicBox: @ 8083970
push {r4,r5,lr}
sub sp, 0x10
lsls r0, 16
lsrs r0, 16
movs r3, 0x80
lsls r3, 8
lsls r1, 16
asrs r1, 16
str r1, [sp]
lsls r2, 16
asrs r2, 16
str r2, [sp, 0x4]
movs r1, 0
str r1, [sp, 0x8]
ldr r1, _080839C0 @ =gMonPaletteTable
lsls r4, r0, 3
adds r4, r1
ldrh r1, [r4, 0x4]
str r1, [sp, 0xC]
movs r1, 0
adds r2, r3, 0
movs r3, 0x1
bl CreateMonPicSprite_HandleDeoxys
lsls r0, 16
lsrs r5, r0, 16
ldrh r0, [r4, 0x4]
bl IndexOfSpritePaletteTag
adds r0, 0x10
lsls r0, 24
lsrs r0, 24
bl sub_807B084
ldr r0, _080839C4 @ =0x0000ffff
cmp r5, r0
beq _080839C8
lsls r0, r5, 24
lsrs r0, 24
b _080839CA
.align 2, 0
_080839C0: .4byte gMonPaletteTable
_080839C4: .4byte 0x0000ffff
_080839C8:
movs r0, 0x40
_080839CA:
add sp, 0x10
pop {r4,r5}
pop {r1}
bx r1
thumb_func_end CreateMonSprite_PicBox
thumb_func_start CreateMonSprite_FieldMove
CreateMonSprite_FieldMove: @ 80839D4
push {r4-r6,lr}
mov r6, r10
mov r5, r9
mov r4, r8
push {r4-r6}
sub sp, 0x10
adds r6, r0, 0
mov r9, r1
mov r10, r2
adds r4, r3, 0
ldr r5, [sp, 0x2C]
lsls r6, 16
lsrs r6, 16
lsls r4, 16
lsrs r4, 16
lsls r5, 16
lsrs r5, 16
adds r0, r6, 0
bl GetMonSpritePalStructFromOtIdPersonality
mov r8, r0
lsls r4, 16
asrs r4, 16
str r4, [sp]
lsls r5, 16
asrs r5, 16
str r5, [sp, 0x4]
movs r0, 0
str r0, [sp, 0x8]
mov r1, r8
ldrh r0, [r1, 0x4]
str r0, [sp, 0xC]
adds r0, r6, 0
mov r1, r9
mov r2, r10
movs r3, 0x1
bl CreateMonPicSprite_HandleDeoxys
lsls r0, 16
lsrs r4, r0, 16
mov r1, r8
ldrh r0, [r1, 0x4]
bl IndexOfSpritePaletteTag
adds r0, 0x10
lsls r0, 24
lsrs r0, 24
bl sub_807B084
ldr r0, _08083A44 @ =0x0000ffff
cmp r4, r0
beq _08083A48
lsls r0, r4, 24
lsrs r0, 24
b _08083A4A
.align 2, 0
_08083A44: .4byte 0x0000ffff
_08083A48:
movs r0, 0x40
_08083A4A:
add sp, 0x10
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end CreateMonSprite_FieldMove
thumb_func_start FreeResourcesAndDestroySprite
FreeResourcesAndDestroySprite: @ 8083A5C
push {r4,r5,lr}
adds r4, r0, 0
lsls r1, 24
lsrs r5, r1, 24
bl ResetPreservedPalettesInWeather
ldrb r0, [r4, 0x1]
lsls r0, 30
cmp r0, 0
beq _08083A7A
ldrb r0, [r4, 0x3]
lsls r0, 26
lsrs r0, 27
bl FreeOamMatrix
_08083A7A:
adds r0, r5, 0
bl FreeAndDestroyMonPicSprite
pop {r4,r5}
pop {r0}
bx r0
thumb_func_end FreeResourcesAndDestroySprite
thumb_func_start MultiplyInvertedPaletteRGBComponents
MultiplyInvertedPaletteRGBComponents: @ 8083A88
push {r4-r7,lr}
mov r7, r9
mov r6, r8
push {r6,r7}
lsls r0, 16
lsls r1, 24
lsrs r1, 24
lsls r2, 24
lsrs r2, 24
lsls r3, 24
lsrs r3, 24
ldr r4, _08083B0C @ =gPlttBufferUnfaded
lsrs r0, 15
adds r4, r0, r4
ldrh r4, [r4]
movs r5, 0x1F
mov r9, r5
mov r8, r4
mov r6, r8
ands r6, r5
mov r8, r6
movs r6, 0xF8
lsls r6, 2
ands r6, r4
lsrs r6, 5
movs r5, 0xF8
lsls r5, 7
ands r4, r5
lsrs r4, 10
mov r7, r9
mov r5, r8
subs r7, r5
mov r12, r7
mov r7, r12
muls r7, r1
adds r1, r7, 0
asrs r1, 4
add r8, r1
mov r5, r9
subs r1, r5, r6
muls r1, r2
asrs r1, 4
adds r6, r1
subs r5, r4
mov r9, r5
mov r1, r9
muls r1, r3
asrs r1, 4
adds r4, r1
mov r7, r8
lsls r7, 16
lsls r6, 21
orrs r6, r7
lsls r4, 26
orrs r4, r6
lsrs r4, 16
ldr r1, _08083B10 @ =gPlttBufferFaded
adds r0, r1
strh r4, [r0]
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_08083B0C: .4byte gPlttBufferUnfaded
_08083B10: .4byte gPlttBufferFaded
thumb_func_end MultiplyInvertedPaletteRGBComponents
thumb_func_start MultiplyPaletteRGBComponents
MultiplyPaletteRGBComponents: @ 8083B14
push {r4-r6,lr}
mov r6, r8
push {r6}
lsls r0, 16
lsls r1, 24
lsrs r1, 24
lsls r2, 24
lsrs r2, 24
lsls r3, 24
lsrs r3, 24
ldr r4, _08083B84 @ =gPlttBufferUnfaded
lsrs r0, 15
adds r4, r0, r4
ldrh r4, [r4]
movs r5, 0x1F
mov r8, r5
mov r6, r8
ands r6, r4
mov r8, r6
movs r5, 0xF8
lsls r5, 2
ands r5, r4
lsrs r5, 5
movs r6, 0xF8
lsls r6, 7
ands r4, r6
lsrs r4, 10
mov r6, r8
muls r6, r1
adds r1, r6, 0
asrs r1, 4
mov r6, r8
subs r6, r1
adds r1, r5, 0
muls r1, r2
asrs r1, 4
subs r5, r1
adds r1, r4, 0
muls r1, r3
asrs r1, 4
subs r4, r1
lsls r6, 16
lsls r5, 21
orrs r5, r6
lsls r4, 26
orrs r4, r5
lsrs r4, 16
ldr r1, _08083B88 @ =gPlttBufferFaded
adds r0, r1
strh r4, [r0]
pop {r3}
mov r8, r3
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_08083B84: .4byte gPlttBufferUnfaded
_08083B88: .4byte gPlttBufferFaded
thumb_func_end MultiplyPaletteRGBComponents
thumb_func_start FldEff_PokecenterHeal
FldEff_PokecenterHeal: @ 8083B8C
push {r4,lr}
+3 -3
View File
@@ -2698,8 +2698,8 @@ _0807B07C: .4byte gUnknown_2037F34
_0807B080: .4byte 0x000006c6
thumb_func_end sub_807B070
thumb_func_start sub_807B084
sub_807B084: @ 807B084
thumb_func_start PreservePaletteInWeather
PreservePaletteInWeather: @ 807B084
push {r4,r5,lr}
adds r4, r0, 0
lsls r4, 24
@@ -2721,7 +2721,7 @@ sub_807B084: @ 807B084
_0807B0A8: .4byte gUnknown_83C2CC0
_0807B0AC: .4byte gUnknown_2038684
_0807B0B0: .4byte gUnknown_20386A4
thumb_func_end sub_807B084
thumb_func_end PreservePaletteInWeather
thumb_func_start ResetPreservedPalettesInWeather
ResetPreservedPalettesInWeather: @ 807B0B4