I think they should just have NBA and NBADL contracts and should allow players with NBA contracts to play in the NBADL without it affecting the NBA cap or roster limitations. I'd be fine limiting the NBA contracts per team to 20 with only 12 active contracts at a time. Every day a player is on the NBA roster his salary is counted towards the cap (not just active, but inactive as well which would include injured players, guys that can't be sent down, etc.). Some contracts could include clauses that say the player can't be forced to play in the NBADL so that would help with a veteran. No one that is injured can be sent to NBADL until said player starts playing again unless said player was injured while on a NBADL roster (so you can't game the system on an injury).