c $BE94 Is this just a bizarre way of getting a number in the range 11-15?! C $BE94 preserve HL and DE C $BE96 copy byte in R to E C $BE99 point HL at $E0B5 (which is near the end of the 160 byte table at $E01F ???) C $BE9C use byte in E as an offset which is added to HL C $BE9E copy the byte pointed to by HL into E C $BEA1 copy byte in R to A C $BEA3 add byte in E to A C $BEA4 point HL at system variable SEED C $BEA7 add the value of the SEED to A C $BEA8 mask to preserve lower nibble of A C $BEAA jump back to $BE96 if A is strictly less than 11 C $BEAF restore DE and HL C $BE81 return to caller