Что же делал в это время боярин Ромодановский? Почему отчаянные призывы чигиринского гарнизона о помощи оставались безответными? Войско Ромодановского и Самойловича перешло Днепр 12 июля и укрепилось на правом берегу. Однако турецкая армия была столь велика, что могла вести боевые действия и под Чигирином, и по всему фронту расположения армии Ромодановского. В сражении с крымско-турецкой армией боярину удалось одержать победу. Но 15 июля турецкая и крымская конница вновь появилась перед русским лагерем. Главнокомандующий не предпринимал решительных действий. Причиной этого был царский приказ не наступать вплоть до прихода подкрепления – князя Каспулата Черкасского с калмыками и служилыми татарами. Ромодановский ждал, а между тем положение Чигирина осложнялось. Наконец, 28 июля Черкасский прибыл в русский лагерь, через два дня главнокомандующий перешел в наступление. В жестоком бою русские захватили Стрельникову гору – господствующую местность, на которой стояла турецкая артиллерия, препятствовавшая русским подойти к Чигирину. Решающую роль в сражении сыграли «выборные» солдатские полки под командованием Аггея Шепелева и Матвея Кравкова. Взяв Стрельникову гору, русские немедленно установили на ней свои орудия и нанесли их огнем значительный урон туркам, в беспорядке отступавшим за реку Тясьмин. Около восьми тысяч турок погибли под огнем русской артиллерии и в давке у переправы.
4 августа Ромодановский встал лагерем в двух верстах от Чигирина. К этому времени у него уже был приказ в случае невозможности дальнейшей обороны вывести из Чигирина войска, разрушив городские укрепления. Вступать в генеральное сражение главнокомандующий счел рискованным – слишком невыгодными были условия местности. Он продолжал надеяться на стойкость защитников Чигирина и отправил в город еще шесть тысяч стрельцов и казаков. Однако оборона города была прорвана многочисленными подкопами и минами турок. Ромодановский посылал новые и новые отряды в Чигирин, но это уже не могло переломить ситуацию. Приходилось думать не о Чигирине, а о спасении всей армии, и главнокомандующий отдал приказ оставить город. Ожесточенно сопротивляясь, защитники постепенно вышли из Чигирина, для многих отступление превратилось в паническое бегство – прорывались через турецкое наступление, переплывали Тясьмин. Всего же при отступлении из Чигирина погибло около 600 человек.
Гордону удалось сжечь часть запасов и установить зажженные фитили в мушкетных бойницах. Успели ли русские поставить мины в пороховом складе или он взорвался в общем пожаре или от небрежности – неясно, но ворвавшиеся в замок турки в буквальном смысле взлетели на воздух от огромного взрыва. При этом погибло четыре тысячи человек. Мустафа-паша получил вместо города горящие развалины. «Так был защищен и потерян Чигирин; он был оставлен, но не покорен», – пишет Гордон.
Собрав защитников Чигирина, русская армия укрепилась обозами и двинулась к Днепру. Повторилась ситуация, возникшая перед оставлением Чигирина. Русские полки встали укрепленным лагерем на правом берегу и вели постоянные бои с турками и татарами. 19 августа Ромодановский предпринял наступление, но, дойдя до турецкого лагеря и не имея сил для штурма, русские отступили. Войска готовились к новому сражению, но неожиданно на следующий день турки снялись с позиций и отступили, оставив разрушенный Чигирин. Причиной этого были, несомненно, значительные потери наступавших. Мустафа-паша потерял от тридцати до шестидесяти тысяч человек. Русские потери были на порядок меньше – чуть более трех тысяч убитыми и пять тысяч ранеными. Оборона Чигирина унесла жизни триста тридцати человек (согласно официальным источникам; Гордон пишет о тысяче трехсот погибших). Таким образом, Ромодановский сохранил боеспособную и мощную армию, в то время как турки, утомленные войной, уже не могли вести активные боевые действия. Фактически кампания 1678 г. была выиграна Ромодановским, однако сдача Чигирина все же была негативно воспринята в России.
Ромодановский бил челом об отставке от службы в Курске «за многия его кровавые нужные (тягостные. –
Мог ли Ромодановский продолжать защищать Чигирин? Был ли смысл в этой трудной борьбе? Еще в наказе к князю Григорию Григорьевичу в начале войны царь предусматривал возможность сдачи Чигирина. Этот акт в разгаре войны имел важное символическое значение, потеряв уже стратегические. Русское правительство понимало, что Мустафа-паша не может остановиться, не взяв Чигирин. Опасаясь судьбы своего предшественника, турецкий главнокомандующий будет биться за город до последнего солдата. Уступив Чигирин, Ромодановский крепко прикрывал Украину, препятствуя туркам напасть на Киев и другие города. Таким образом, сдача Чигирина была уступкой, необходимой для того, чтобы перейти к мирным переговорам, и в то же время не имела решающего стратегического значения.