true 8-way would let you soft drop diagonally. I think the input logic should work like this for movement keys. key 1 is pressed. key 2 pressed while key 1 is down. key 1's input is cancelled, and key2's input is used. key 2 is released. key 2 input is considered off, and key 1 input is considered on. key 2 is pressed again. same thing happens. key 3 is pressed, with key1 and key 2 still down. key 1 is considered permanantly released from this point. key 3 is obeyed. if it is released with key2 own, key 2 will be obeyed again. which movement key is used is irrelevant. Other possibilities. L/R have priority over u/d. (tgM1 does this in inC) U/D have priority over L/R (this seems to be what the previous poster was describing) first key pressed has priority I described "last key pressed has priority"