Here is a short program that shows what you want to do. The video shows it first running in XB and you will see a slight flicker when the sprite wraps around. The compiled version does not do this.
A revised version of RUNTIME4 is below the program. This has the proper code for EARLYC.
The previous version had an older version of EARLYC that combined the sprite number and the sprite color. That is not done in XB256 and now the compiled version matches that behavior.
5 CALL MAGNIFY(4)
6 ECO=0
10 CALL SPRITE(#1,65,16,100,100,0,5)
20 CALL POSITION(#1,X,Y)
40 IF Y<2 AND ECO=0 THEN CALL LINK("EARLYC",1):: ECO=1 :: GOTO 20
50 IF Y>33 AND ECO=1 THEN CALL LOCATE(#1,X,Y-32):: ECO=0 :: CALL COLOR(#1,16):: GOTO 20
60 GOTO 20
(Edit) In line 50, the CALL COLOR(#1,16) is there to turn off the sprite early clock.
In code that will be compiled, there is another way to turn the early clock on/off.
There is no limit check on CALL COLOR, so if you add 144 to the color it will turn the early clock on. According to the E/A manual it only needs to be 128, but my notes say it must be 144 to work in Win99/4a, and that change seems to cause no problems on other simulators.
CALL COLOR(#1,160) !early clock on
CALL COLOR(#1,16) !early clock off
RUNTIME4.TXT