Великий визирь Мустафа-паша привел к Чигирину 12 отрядов па-шей (каждый из которых насчитывал по 3 тысячи солдат), 40 «орт» янычар, численностью от 100 до 300 человек каждая, войска господарей Молдавии и Валахии (15 тысяч человек), 7 тысяч сербов, 3 тысячи албанцев. Кроме того, 50 тысяч всадников привел крымский хан Мурад Гирей.
Турки имели 4 большие пушки, каждую из которых везли 32 пары буйволов, 27 больших батарейных орудий разного калибра, 130 полевых пушек, 6 мортир, стрелявших 120-фунтовыми бомбами, 9 меньших мортир, стрелявших бомбами от 30 до 40 фунтов.
10 июля 1678 г. на рассвете турки начали стрельбу с двух батарей, устроенных против кронверка, и с третьей, устроенной против города около холма и вооруженной пятью пушками. Они стреляли безостановочно, целясь прямо в бойницы и бруствер. Гарнизон Чигирина тоже усердно отстреливался из ружей и пушек, но русские канониры не были достаточно искусны. В этот день гарнизон потерял убитыми 27 солдат и несколько офицеров и около 40 человек ранеными, в основном гранатами и щепками. Всего в верхний и нижний город попало 278 ядер и 86 бомб. И так продолжалось почти каждый день осады.
Кроме бомбардировки турки вели несколько подкопов под крепость. 29 июля турки подорвали первую мину. 30 июля произошли еще два взрыва, причем с таким оглушающим треском, что в нижнем городе подумали, что в верхнем городе уже не осталось никого в живых. В результате этих взрывов в середине одного больверка образовалась брешь шириной 12–15 сажен (26–32 м). Турки бросились туда, но русским удалось отбить противника, а потом кое-как засыпать брешь. В результате гарнизон потерял убитыми 68 человек и 97 ранеными.
А между тем объединенные войска Ромодановского и Самойловича подошли к Днепру и начали переправу. Несмотря на то что заранее было приготовлено большое число лодок и барок, лишь 12 июля вся армия перешла на правый берег. На левом берегу, у Бужинской переправы, остался для прикрытия сильный отряд полковника Ронаера: полк пехоты и полк казаков. Они «были оставлены охранять переправу и излишние орудия».
20 июля десятитысячный отряд крымских татар попытался атаковать русских, но был отбит.
Турецкие войска под началом Каплан-паши заняли возвышенность между Чигириным и Днепром и возвели там укрепления полевого типа. Русские попытались овладеть этими высотами 1 и 2 августа, но безуспешно. А 3 августа, в субботу, Ромодановский выслал штурмовой отряд пехоты численностью свыше 10 тысяч человек. Основные силы следовали за ними. На левой стороне Днепра было оставлено три полка с приказанием ловить и вешать беглецов из войска, если окажутся на левом берегу.
В ходе упорного боя русские овладели высотами. Турки бежали, потеряв, по данным Гордона, 5 тысяч человек и 28 пушек. Потери русских составили полторы тысячи убитыми и тысяча человек ранеными.
Но Ромодановский не воспользовался успехом и медлил. Как писал Гордон: «Русские расположились на поле, на котором стояли прежде турки. 4-го августа армия выступила и разбила лагерь в 2 милях от Чигирина (на левом берегу реки Тясьмина)… Это слишком далеко, чтобы в случае надобности оказать помощь Чигиринскому гарнизону Если бы они расположились около самого города, как советовал Гордон, а пехота вся или большая часть вошла в город, то турки, без сомнения, сняли бы осаду; после было с достоверностью узнано, что они и намеревались сделать это»[14].
Следует отметить, что осада Чигирина была неплотной, и крепость имела регулярную связь с деблокирующей армией Ромодановского и Самойловича. Так, Ромодановский отправил 1300 солдат, 409 стрельцов и 2500 казаков на пополнение гарнизона Чигирина, еще 2 тысячи казаков добавил гетман.
5 августа в 2 часа пополудни турки подорвали мины в подкопе и разрушили значительную часть вала нижнего города, а потом бросились в образовавшийся прорыв. Два часа шла отчаянная резня. В это время воевода Ржевский вышел на вал верхнего города и был убит осколком бомбы, поразившим его в подбородок. Начальство над всеми силами в Чигирине принял Патрик Гордон.