In a bowl, mix together the yogurt, coriander, peppercorns, half the ginger, half the garlic, the lemon juice an some salt. Stir in the chicken and leave to marinade for 1 hour.
Heat the oil in a wok or large frying pan, then fry onion until soft and lightly browned. Stir in the garam masala and remaining ginger and garlic.
Stir in the tomato, reduce heat and cook sauce for 10-15 mins, uncovered, stirring occasionally.
Add the chicken and the marinade. Pour in 75-100ml water. Bring to the boil, cover and simmer for 20 minutes or until the chicken is tender.