Implement SDC rp and ADC rp, refactor