Sorry to re-open this thread, but now I've figured it out.
In Super Mario All-Stars, this was how it got fixed:
	Code:
	CheckLives:
    INC NumberofLives ;increment the lives counter by one
    LDA NumberofLives ;then reload it to see if player has 128 lives
    CMP #$80             
    BCC WereGood      ;if not past 128 lives yet, we're good
    LDA #$7F             
    STA NumberofLives ;otherwise, set A=128 lives
WereGood:
    RTL               ;end of routine
 Another way to do this:
	Code:
	CheckLives:
    INC NumberofLives ;increment the lives counter by one
    LDA NumberofLives ;then reload it to see if we have more than 128 lives
    BPL WereGood      ;if not past 128 lives yet, we're good
    DEC NumberofLives ;otherwise decrement counter by one to prevent overflow
WereGood:
    RTL              ;end of routine
 ~Ben (ColecoFan1981)