Each sprite in VERA has 8 bytes of configuration data. OK. VERA supports 128 sprites. OK.
GIVEN: the "sprite number" is in memory location $0002, CALCULATE the address of that sprite's configuration data in VERA.
PROCESS:
It looks to me like I want to count down to zero, incrementing the LSB as I go, and checking carry to increment MSB.
; Set R8a and R8b to $fc10.
LDA $10
STA R8a
LDA $fc
STA R8b
LDX R0a ; Load R0a "sprite num"
sprite_index_loop:
; loop management
CPX #0
BEQ sprite_index_loop_done
DEX
; Do three ASLs on R8a.
ASL R8a
ASL R8a ; R8a = R8a x 8
ASL R8a
; If carry set, then INC R8b.
BCC sprite_index_loop
INC R8b
CLC
BCC sprite_index_loop
sprite_index_loop_done: