Pemberontakan Trunajaya
Perang ini berawal dengan kemenangan pihak pemberontak: pasukan Trunajaya mengalahkan pasukan kerajaan di Gedogog (1676), lalu berhasil menduduki hampir seluruh pantai utara Jawa dan merebut keraton Mataram di Keraton Plered (1677). Raja Amangkurat I meninggal ketika melarikan diri dari keraton. Ia digantikan oleh anaknya, Amangkurat II yang meminta bantuan kepada VOC dan menjanjikan pembayaran dalam bentuk uang dan wilayah. Keterlibatan VOC berhasil membalikkan situasi. Pasukan VOC dan Mataram merebut kembali daerah Mataram yang diduduki, dan merebut ibu kota Trunajaya di Kediri (1678). Pemberontakan terus berlangsung hingga Trunajaya ditangkap VOC pada akhir 1679, dan juga kekalahan, kematian atau menyerahnya pemimpin pemberontakan lain (1679–1680). Trunajaya menjadi tawanan VOC, namun dibunuh oleh AmangkuratII saat kunjungan raja pada tahun 1680.
Pertempuran Surabaya (1677)
Pemberontakan Trunajaya mulai pada tahun 1674 ketika pasukan pemberontak melakukan serangan terhadap kota-kota Kesultanan Mataram. Pada tahun 1676, pasukan pemberontak berkekuatan 9.000 orang menyerbu Jawa dari pangkalan mereka di Madura. Mereka merebut Surabaya, kota utama Jawa timur, kemudian dikerahkan tentara kerajaan yang jauh lebih besar untuk menekan mereka dalam Pertempuran Gegodog bulan Oktober 1676 di Jawa timur laut. Para pemberontak terus meraih kemenangan dan memperoleh banyak wilayah di bulan berikutnya, merebut sebagian besar pantai utara Jawa sampai ke barat mencapai Cirebon. Menghadapi keruntuhan kekuasaannya yang mungkin segera terjadi, Raja Mataram Amangkurat I mencari bantuan dari VOC di Batavia. Pada 20 Januari 1677, Laksamana Cornelis Speelman, yang baru diangkat menjadi komandan pasukan VOC di pantai utara Jawa, tiba di Jepara untuk bernegosiasi dengan Wangsadipara, Gubernur Mataram di pantai utara. Mereka menyetujui sebuah kontrak pada bulan Februari, yang disahkan oleh raja pada bulan Maret.