@@ -4881,8 +4881,8 @@ gfx_RotatedScaledSprite_NoClip:
4881
4881
; Returns:
4882
4882
; arg1 : Pointer to sprite struct output
4883
4883
ld a , - 1 + _RotatedScaledSprite_NoClip.inner_opaque - _RotatedScaledSprite_NoClip.dsrs_jump_1
4884
- ; push hl \ ld l, a \ inc l
4885
- ld bc , $ 2C6FE5
4884
+ ; jr .inner_opaque_hijack \ inc l
4885
+ ld bc , ( $ 2C0018) or ((( - 1 + _RotatedScaledSprite_NoClip.inner_opaque_hijack - _RotatedScaledSprite_NoClip.dsrs_jump_2) and $ FF) shl 8 )
4886
4886
jr _RotatedScaledSprite_NoClip
4887
4887
;-------------------------------------------------------------------------------
4888
4888
gfx_RotatedScaledTransparentSprite_NoClip:
@@ -4895,8 +4895,8 @@ gfx_RotatedScaledTransparentSprite_NoClip:
4895
4895
; Returns:
4896
4896
; arg1 : Pointer to sprite struct output
4897
4897
ld a , - 1 + _RotatedScaledSprite_NoClip.inner_transparent - _RotatedScaledSprite_NoClip.dsrs_jump_1
4898
- ; jr .inner_transparent_hijack \ inc l
4899
- ld bc , ( $ 2C0018) or ((( - 1 + _RotatedScaledSprite_NoClip.inner_transparent_hijack - _RotatedScaledSprite_NoClip.dsrs_jump_2) and $ FF) shl 8 )
4898
+ ; push hl \ ld l, a \ inc l
4899
+ ld bc , $ 2C6FE5
4900
4900
_RotatedScaledSprite_NoClip:
4901
4901
ld iy , .dsrs_base_address
4902
4902
ld (iy + (_RotatedScaledSprite_NoClip.dsrs_jump_1 - .dsrs_base_address)) , a
@@ -5047,13 +5047,13 @@ _RotatedScaledSprite_NoClip:
5047
5047
5048
5048
;-------------------------------------------------------------------------------
5049
5049
5050
- .inner_transparent :
5050
+ .inner_opaque :
5051
5051
cp a , h
5052
5052
jr c , .skip_pixel
5053
5053
ld c , ixh
5054
5054
cp a , c
5055
5055
jr c , .skip_pixel
5056
- .inner_transparent_hijack :
5056
+ .inner_opaque_hijack :
5057
5057
; get pixel and draw to buffer
5058
5058
push hl ; xs
5059
5059
ld l , a
@@ -5064,30 +5064,21 @@ _RotatedScaledSprite_NoClip:
5064
5064
add hl , bc ; y * size + x
5065
5065
5066
5066
ld bc , 0
5067
- .dsrs_sprptr_0A := $ - 3
5067
+ .dsrs_sprptr_0B := $ - 3
5068
5068
add hl , bc
5069
- ld b , a ; preserve A
5070
- ld a , (hl)
5071
- cp a , TRASPARENT_COLOR
5072
- smcByte _TransparentColor
5073
- jr z , .transparent_pixel
5074
- ld (de) , a
5075
- .transparent_pixel:
5076
- ld a , b ; restore A
5077
- pop hl ; ys
5078
- .skip_pixel:
5079
- inc de ; x++s
5069
+ ldi
5070
+ pop hl
5071
+
5080
5072
ld bc , 0 ; smc = -sinf
5081
- .dsrs_sinf_0A := $ - 3
5073
+ .dsrs_sinf_0B := $ - 3
5082
5074
add hl , bc ; ys += -sinf
5083
5075
5084
5076
ld bc , 0 ; smc = cosf
5085
- .dsrs_cosf_0A := $ - 3
5077
+ .dsrs_cosf_0B := $ - 3
5086
5078
add ix , bc ; xs += cosf
5087
5079
5088
5080
dec iyl
5089
- jr nz , .inner_transparent ; x loop
5090
- .dsrs_jump_1 := $ - 1
5081
+ jr nz , .inner_opaque ; x loop
5091
5082
5092
5083
dec iyh
5093
5084
jr z , .finish ; y loop
@@ -5112,14 +5103,14 @@ smcByte _TransparentColor
5112
5103
.begin_loop:
5113
5104
.dsrs_size_1 := $ + 2 ; smc = size * scale / 64
5114
5105
ld iyl , 0
5115
- .inner_opaque :
5106
+ .inner_transparent :
5116
5107
cp a , h
5117
5108
jr c , .skip_pixel
5118
5109
ld c , ixh
5119
5110
cp a , c
5120
5111
jr c , .skip_pixel
5121
5112
; get pixel and draw to buffer
5122
- ; SMC: push hl \ ld l, a --> jr inner_transparent_hijack
5113
+ ; SMC: push hl \ ld l, a --> jr inner_opaque_hijack
5123
5114
push hl ; xs
5124
5115
ld l , a
5125
5116
.dsrs_jump_2 := $ - 1
@@ -5130,21 +5121,30 @@ smcByte _TransparentColor
5130
5121
add hl , bc ; y * size + x
5131
5122
5132
5123
ld bc , 0
5133
- .dsrs_sprptr_0B := $ - 3
5124
+ .dsrs_sprptr_0A := $ - 3
5134
5125
add hl , bc
5135
- ldi
5136
- pop hl
5137
-
5126
+ ld b , a ; preserve A
5127
+ ld a , (hl)
5128
+ cp a , TRASPARENT_COLOR
5129
+ smcByte _TransparentColor
5130
+ jr z , .transparent_pixel
5131
+ ld (de) , a
5132
+ .transparent_pixel:
5133
+ ld a , b ; restore A
5134
+ pop hl ; ys
5135
+ .skip_pixel:
5136
+ inc de ; x++s
5138
5137
ld bc , 0 ; smc = -sinf
5139
- .dsrs_sinf_0B := $ - 3
5138
+ .dsrs_sinf_0A := $ - 3
5140
5139
add hl , bc ; ys += -sinf
5141
5140
5142
5141
ld bc , 0 ; smc = cosf
5143
- .dsrs_cosf_0B := $ - 3
5142
+ .dsrs_cosf_0A := $ - 3
5144
5143
add ix , bc ; xs += cosf
5145
5144
5146
5145
dec iyl
5147
- jr nz , .inner_opaque ; x loop
5146
+ jr nz , .inner_transparent ; x loop
5147
+ .dsrs_jump_1 := $ - 1
5148
5148
5149
5149
dec iyh
5150
5150
jr nz , .outer ; y loop
0 commit comments