Prev: $3724 Up: Map Next: $3805
$379F: Prepare sprites #0-#6 for the speech bubble with the lip on the left
Used by the routine at $2387.
Input
A Screen pixel x-coordinate of the lip section
$379F STA $D004 Set the x-coordinates of sprites #2 and #4 (bits 0-7).
$37A2 STA $D008
$37A5 CLC Add 8 to this x-coordinate.
$37A6 ADC #$08
$37A8 STA $D000 Make this the x-coordinate of sprites #0 and #6 (bits 0-7).
$37AB STA $D00C
$37AE BCC $37B8 Branch unless the x-coordinate is greater than 255.
$37B0 LDA #$6B Set bit 8 of the x-coordinates of sprites #0, #1, #3, #5 and #6.
$37B2 ORA $D010
$37B5 STA $D010
$37B8 LDA $D000 Pick up the x-coordinate of sprite #0 (bits 0-7).
$37BB CLC Add 24 to this x-coordinate.
$37BC ADC #$18
$37BE STA $D002 Make this the x-coordinate of sprite #1 (bits 0-7).
$37C1 BCC $37CB Branch unless the x-coordinate is greater than 255.
$37C3 LDA #$2A Set bit 8 of the x-coordinates of sprites #1, #3 and #5.
$37C5 ORA $D010
$37C8 STA $D010
$37CB LDA $D002 Pick up the x-coordinate of sprite #1 (bits 0-7).
$37CE CLC Add 24 to this x-coordinate.
$37CF ADC #$18
$37D1 STA $D006 Make this the x-coordinate of sprites #3 and #5 (bits 0-7).
$37D4 STA $D00A
$37D7 BCC $37E1 Branch unless the x-coordinate is greater than 255.
$37D9 LDA #$28 Set bit 8 of the x-coordinates of sprites #3 and #5.
$37DB ORA $D010
$37DE STA $D010
$37E1 LDA #$29 Set the pointer for sprite #0 to $29. This points at $CA40 (the first middle outline section of the speech bubble, copied from $3E40).
$37E3 STA $CFF8
$37E6 LDA #$2A Set the pointer for sprite #1 to $2A. This points at $CA80 (the second middle outline section of the speech bubble, copied from $3E80).
$37E8 STA $CFF9
$37EB LDA #$23 Set the pointer for sprite #2 to $23. This points at $C8C0 (the left-hand lip outline section of the speech bubble, copied from $3CC0).
$37ED STA $CFFA
$37F0 LDA #$25 Set the pointer for sprite #3 to $25. This points at $C940 (the rightmost outline section of the speech bubble, copied from $3D40).
$37F2 STA $CFFB
$37F5 LDA #$22 Set the pointer for sprite #4 to $22. This points at $C880 (the filled in left-hand lip section of the speech bubble, copied from $3C80).
$37F7 STA $CFFC
$37FA LDA #$24 Set the pointer for sprite #5 to $24. This points at $C900 (the filled in rightmost section of the speech bubble, copied from $3D00).
$37FC STA $CFFD
$37FF LDA #$28 Set the pointer for sprite #6 to $28. This points at $CA00 (the filled in middle section of the speech bubble, copied from $3E00).
$3801 STA $CFFE
$3804 RTS
Prev: $3724 Up: Map Next: $3805