Pemberontakan Trunajaya
Pemberontakan mulai dengan serangkaian serangan dari para perompak Makassar yang berbasis di Demung terhadap kota-kota perdagangan di pantai utara Jawa. Serangan pertama terjadi pada 1674 di Gresik namun dipukul mundur. Trunajaya mengadakan pakta dan aliansi pernikahan dengan Karaeng Galesong, pemimpin orang Makassar, pada tahun 1675 dan merencanakan penyerangan lebih lanjut. Pada tahun yang
sama, para perompak orang Makassar-Madura merebut dan membakar kota-kota utama di timur laut Jawa, dari Pajarakan hingga Surabaya dan Gresik. Mengingat kegagalan kekuatan loyalis melawan pemberontak, Raja Amangkurat I menunjuk seorang gubernur militer di Jepara, ibu kota provinsi di pantai utara, dan memperkuat kota tersebut. Pasukan Mataram yang bergerak di Demung dikalahkan, dan aksi gabungan
oleh kapal Mataram dan VOC di pantai yang dikuasai oleh para perompak tidak selalu berhasil. Karaeng Galesong pindah ke Madura, wilayah dari sekutunya, Trunajaya. Pada tahun 1676 Trunajaya menganugerahkan dirinya sendiri gelar Panembahan (Penguasa) Maduretna dan mendapat dukungan dari sunan (penguasa spiritual) Giri, dekat Gresik. Serangan armada VOC kemudian menghancurkan basis perompak di Demung, namun mereka tidak melancarkan aksi terhadap Trunajaya di Madura.
Pada September 1676, tentara pemberontak berkekuatan 9000 dipimpin oleh Karaeng Galesong Menyeberang dari Madura ke Jawa dan kemudian merebut Surabaya, kota utama Jawa Timur. Mataram mengirim pasukan besar, yang diperintahkan oleh pangeran mahkota (kelak Amangkurat II untuk menemui para pemberontak. Sebuah pertempuran terjadi di Gegodog, sebelah timur Tuban, pada tahun 1676, mengakibatkan kekalahan total pasukan
Mataram yang jauh lebih besar. Tentara loyalis dikerahkan, paman raja, Pangeran Purbaya tewas, dan pangeran mahkota melarikan diri ke Mataram. Pangeran mahkota disalahkan atas kekalahan ini karena keragu-raguannya yang panjang sebelum menyerang para pemberontak. Selain itu, ada rumor bahwa dia berkolusi dengan musuh, termasuk mantan pengikutnya, Trunajaya. Dalam beberapa
bulan setelah kemenangan di Gegodog, para pemberontak dengan cepat merebut kota-kota perdagangan di utara Jawa, mulai dari Surabaya hingga ke barat di Cirebon, termasuk kota-kota Kudus dan Demak. Kota-kota tersebut jatuh dengan mudah, sebagian karena benteng mereka telah dihancurkan karena penaklukan mereka oleh Sultan Agung Mataram sekitar 50 tahun sebelumnya. Hanya Jepara yang berhasil menahan
serangan, karena upaya gabungan gubernur militer baru dan pasukan VOC baru yang memperkuat kota tepat pada waktunya. Pemberontakan tersebut menyebar ke pedalaman ketika Raden Kajoran, ayah mertua Trunajaya yang berpengaruh yang berpusat di sebelah timur ibu kota Mataram, bergabung dalam pemberontakan tersebut. Pasukan Kajoran dan Trunajaya bergerak menuju ibu kota, namun dipukul mundur oleh pasukan loyalis.
Sebagai tanggapan atas permintaan intervensi oleh Mataram, VOC mengirim armada besar yang berisi pasukan Indonesia dan Eropa, yang dikomandoi oleh Laksamana Cornelis Speelman. Pada April 1677 armada tersebut berlayar ke Surabaya, tempat pangkalan Trunajaya. Setelah perundingan gagal, pasukan Speelman menyerbu Surabaya dan merebutnya setelah pertempuran sengit. Pasukan tersebut melanjutkan
membersihkan para pemberontak dari daerah sekitar Surabaya. Pasukan VOC juga merebut Madura, pulau asal Trunajaya, dan menghancurkan kediamannya di sana. Trunajaya melarikan diri ke Surabaya dan mendirikan ibu kotanya di Kediri.
Meskipun para pemberontak dikalahkan di Surabaya, pasukan pemberontak yang berkampanye di pedalaman Jawa Tengah dan Timur lebih berhasil. Kampanye militer pemberontak mencapai puncaknya dalam jatuhnya ibu kota Plered pada Juni 1677. Raja dalam kondisi sakit, dan ketidakpercayaan di antara para pangeran kerajaan menghalangi perlawanan yang terencana dengan baik. Raja melarikan diri ke barat
dengan pangeran mahkota dan pengiringnya, membiarkan pemberontak memasuki dan menjarah ibu kota dengan sedikit perlawanan. Para pemberontak kemudian mundur ke Kediri, membawa harta kekayaan kerajaan bersama mereka.
Raja Amangkurat I wafat semasa bergerak mundur di Tegal pada Juli 1677. Putra mahkota menggantikan ayahnya dan memakai gelar Amangkurat II, dan diterima oleh bangsawan Jawa di Tegal (kampung halaman neneknya) dan juga oleh VOC. Namun, dia gagal untuk mengukuhkan kekuasaannya di kota terdekat, Cirebon, yang penguasanya memutuskan untuk menyatakan kemerdekaan dari Mataram dengan dukungan
dari Kesultanan Banten. Selanjutnya, adik laki-lakinya Pangeran Puger (kelak PakubuwanaI) merebut ibu kota yang kini hancur, menolak bergabung sebagai loyalis AmangkuratII, dan menyatakan dirinya sebagai raja dengan gelar Ingalanga Mataram.
Karena tidak memiliki tentara dan harta kekayaan dan tidak dapat mengukuhkan kekuasaannya, Amangkurat memutuskan untuk bersekutu dengan VOC. Pada saat ini, Laksamana Speelman berada di Jepara, berlayar ke sana dari Surabaya setelah mendengar jatuhnya ibu kota. Pasukannya telah merebut kembali kota-kota pesisir penting di Jawa Tengah, termasuk Semarang, Demak, Kudus,
dan Pati. Amangkurat pindah ke Jepara dengan kapal VOC pada September 1677. Raja harus menyetujui konsesi luas yang dituntut VOC sebagai imbalan untuk memulihkan monarkinya. Dia menjanjikan VOC pendapatan dari semua kota pelabuhan di pantai utara. Dataran tinggi Priangan dan Semarang akan diserahkan kepada VOC. Raja juga setuju untuk mengakui yurisdiksi kekuasaan VOC atas semua
orang non-Jawa yang tinggal di wilayahnya. Sejarawan Belanda H. J. de Graaf berkomentar bahwa dengan melakukan ini, VOC, sebagai sebuah korporasi, terlibat dalam "spekulasi berbahaya", yang mereka harapkan akan terbayar di masa depan ketika rekan mereka akan memperoleh kembali kekuasaannya atas Mataram.
Pasukan VOC-Mataram membuat kemajuan yang lamban melawan para pemberontak. Pada awal tahun 1678 penguasaan mereka terbatas pada beberapa kota di pantai utara bagian tengah. Pada 1678, Speelman menjadi Direktur Jenderal VOC, menggantikan Rijcklof van Goens, yang menjadi Gubernur Jenderal (Speelman kelak menjadi Gubernur Jenderal pada 1681). Komandonya di Jepara diserahkan kepada Anthonio Hurdt, yang tiba pada Juni 1678.
Pasukan VOC dan Mataram bergerak ke pedalaman melawan Kediri pada September 1678. Sesuai saran raja, pasukan tersebut dipecah menjadi tiga barisan, tanpa rute langsung, dengan tujuan untuk mencakup lebih banyak lokasi dan menimbulkan rasa kagum pada orang-orang yang merasa ragu untuk berpihak. Ide raja berhasil, dan saat kampanye militer berlanjut, kelompok-kelompok lokal
bergabung dengan pasukan, yang sangat menginginkan barang rampasan. Kediri direbut pada 25November oleh pasukan penyerangan yang dipimpin oleh Kapten François Tack. Pasukan yang menang tersebut melanjutkan ke Surabaya, kota terbesar di Jawa Timur, tempat Amangkurat mendirikan keratonnya. Di tempat lain, para pemberontak juga dikalahkan. Pada September 1679, gabungan pasukan VOC, Jawa, dan Bugis di bawah Sindu Reja dan Jan Albert Sloot mengalahkan
Raden Kajoran dalam pertempuran di Mlambang, dekat Pajang. Kajoran menyerah namun dieksekusi atas perintah Sloot. Pada November, VOC dan pasukan Bugis bersekutu di bawah Arung Palakka menghancurkan benteng para pemberontak Makassar di Keper, Jawa Timur. Pada April 1680, setelah apa yang oleh VOC anggap sebagai pertempuran sengit dalam perang, penguasa Giri yang memberontak dikalahkan dan sebagian besar
keluarganya dieksekusi. Karena VOC dan Amangkurat meraih lebih banyak kemenangan, semakin banyak orang Jawa menyatakan kesetiaan mereka kepada raja.
Setelah bentengnya jatuh di Kediri, Trunajaya berhasil melarikan diri ke pegunungan di Jawa timur. Pasukan VOC dan raja mengejar Trunajaya, yang terkucil dan kekurangan makanan, menyerah kepada VOC pada akhir 1679. Awalnya, dia diperlakukan dengan hormat sebagai tawanan komandan VOC. Namun, saat melakukan kunjungan seremonial ke kediaman bangsawan di Payak, Jawa Timur, pada 2