Shah, the top run-scorer in the Frizzell County Championship, added 128 off 228 balls as the hosts recovered from the early loss of the former Kent batsman Ed Smith for 14.
Sussex secured a nine-wicket victory against Glamorgan, who were all out for 96 in their second innings at Hove. Rana Naved and Mushtaq Ahmed took five wickets apiece, for 41 and 29 runs, as only Dan Cherry (39) distinguished himself with the bat.
Ian Ward was bowled for 10 by Dean Cosker but his fellow opener Richard Montgomerie (18 not out) and Michael Yardy (2no) rattled off the requisite 35 runs for victory. The home captain, Chris Adams, had earlier hit 84 to top score in Sussex's first-innings total of 317, easily eclipsing the Welsh side's 255 all out.
In the Second Division, bad light forced an early finish at Headingley, where promotion-chasing Yorkshire were making good progress against Worcestershire. Anthony McGrath excelled for the hosts, who resumed on 96 for 2 in the morning. The No 3 batsman hit an unbeaten 173 off 176 balls, as his side established a slight first-innings advantage with 317 in reply to 308.
Kabir Ali's 4 for 79 made him the pick of the Worcestershire bowling, but their top order then stumbled to 126 for 4 by the time play was halted. Deon Kruis took three wickets, though Vikram Solanki was unbeaten on 32.
Northamptonshire were close to matching Somerset's first-innings score of 396 by the close of the second day at Taunton as they reached 356 for 5. David Sales hit an unbeaten 117 off 210 balls. Usman Afzaal also smacked 112 off 139 balls after the West Country side added just 14 to their overnight score of 382 for 7. Monty Panesar took the wickets of Richard Johnson and Charl Langeveldt to finish off Somerset and end with figures of 4 for 66.
Leicestershire raced to 277 for 3 after the first day's play against Derbyshire at Grace Road. Darren Robinson led the way with 123 off 263 balls before he was caught and bowled by Tom Lungley.
Tom New added 89 to the home side's tally before he became Ian Hunter's second victim.Reuse content