1 poin oleh GN⁺ 2025-06-21 | 1 komentar | Bagikan ke WhatsApp
  • Platform Infinite Mac kini dapat menjalankan versi awal seri Mac OS X (10.1, 10.3) di browser web
  • Dengan mem-porting emulator PowerPC PearPC ke Emscripten/WebAssembly, kompatibilitas dan stabilitas berhasil ditingkatkan
  • Melalui perbandingan dengan DingusPPC, performa dan bug yang penyebabnya tidak jelas diperbaiki sambil menjalani proses optimalisasi algoritmik
  • Citra disk Infinite HD yang cocok untuk Mac OS X juga dibangun ulang, sehingga berbagai software dan alat pengembangan era 2000-an dapat diakses
  • Penerapan gaya Aqua pada UI semakin memperkuat pengalaman retro, sambil mempertimbangkan kemungkinan pengembangan lebih lanjut di masa depan

Ringkasan

Infinite Mac, proyek yang memungkinkan sistem legacy lama dicoba secara online di platform Infinite Mac, kini dapat berjalan di browser web modern dengan mendukung versi awal Mac OS X seperti 10.1 dan 10.3. Dalam proses ini, emulator PowerPC seperti PearPC dan DingusPPC di-porting ke basis Emscripten/WebAssembly, disertai berbagai upaya untuk meningkatkan performa dan memastikan stabilitas. Melalui optimalisasi algoritme dan perbaikan bug, resolusi serta keandalan ditingkatkan dibanding perangkat keras asli, sementara Infinite HD yang berisi software dan alat pengembangan dari masa itu juga disusun ulang untuk memperkuat kegunaannya. Selain itu, tema Aqua diterapkan pada UI situs untuk menghadirkan pengalaman yang bernuansa emosional, dan ekspansi ke OS yang lebih retro seperti A/UX dan Lisa juga dipertimbangkan untuk masa depan. Proyek ini menunjukkan upaya teknis dengan berbagai tujuan sekaligus, seperti emulasi program, perluasan arsip open source, dan pemulihan UI.

Perluasan dukungan Mac OS X

  • Infinite Mac di-porting agar dapat menjalankan versi awal OS X seperti Mac OS X 10.1 dan 10.3 di browser web
  • Performa lambat pada perangkat keras asli direproduksi apa adanya, dan pengguna juga dapat merasakan penggunaan aplikasi representatif saat itu seperti NetNewsWire Lite dan Terminal
  • Beberapa software indie pada masa itu juga disertakan dalam citra disk terbaru, sehingga eksplorasi software retro menjadi lebih mudah

Proses porting PearPC

  • Awalnya fokus diarahkan pada porting dan modifikasi emulator DingusPPC, tetapi karena masalah kernel panic dan error grafis, jalur dialihkan ke PearPC
  • PearPC adalah codebase multiplatform yang dirancang pada awal 2000-an untuk menjalankan Mac OS X di sistem berbasis x86, sehingga relatif mudah di-porting ke target WebAssembly tanpa banyak pekerjaan tambahan
  • Baru-baru ini, maintainer utama Basilisk II dan SheepShaver membuat branch eksperimen PearPC sehingga build di macOS modern menjadi memungkinkan
  • Source-nya sudah tua dan berbasis C++ legacy, tetapi memiliki kekhasan seperti string class kustom, sprintf, dan decoder GIF
  • Berkat struktur multiplatform, desain yang hampir tidak memakai thread, dan lapisan abstraksi struktural, proses porting dapat dilakukan dengan cepat

Optimalisasi performa dan batasannya

  • Di PearPC, keandalan boot dan menjalankan Mac OS X 10.2 cukup tinggi, tetapi kecepatan eksekusinya lebih lambat dibanding DingusPPC
  • Penurunan performa cukup besar akibat tidak adanya caching MMU dan faktor lainnya
  • Berbagai optimalisasi berbasis algoritme yang diterapkan di DingusPPC juga dipindahkan ke PearPC, sehingga waktu boot dapat dipersingkat sebagian
  • PearPC hanya mengimplementasikan subset instruksi PowerPC yang diperlukan, dan memanfaatkan berbagai "cheat" seperti firmware serta driver kustom
  • Masih ada harapan bahwa untuk emulasi Mac OS X yang cepat dan stabil, DingusPPC lebih menjanjikan dalam jangka panjang

Temuan sampingan: penanganan exception FP

  • Saat metode decoding terpadu diperkenalkan pada interpreter di PearPC, muncul error rendering dalam operasi floating point
  • Kernel Mac OS X telah mendaftarkan penanganan exception berdasarkan status bit FP pada register MSI, dan ketika hal ini diimplementasikan ke dalam kode, masalah rendering terselesaikan
  • Di DingusPPC juga ada masalah bit FP yang sama-sama terlewat, menyebabkan anomali rendering teks; setelah diperbaiki, stabilitas meningkat drastis
  • Penanganannya berkembang dari pendekatan ad hoc menjadi implementasi yang "sesuai kaidah", dan pada akhirnya keandalan menjalankan 10.1 juga meningkat pesat
  • Dengan menggabungkan kedua emulator, dukungan untuk menjalankan berbagai versi OS X pun diperluas

Rekonstruksi citra disk Infinite HD

  • Citra disk yang sesuai dengan era Mac OS X dibangun ulang, mencakup banyak software indie dan alat developer dari periode tersebut
  • File .dmg versi lama tidak bisa langsung di-mount di macOS modern, sehingga dibangun pipeline konversi dan otomatisasi dengan alat seperti dmg2img
  • Ada beberapa keterbatasan karena perbedaan sistem file HFS dan HFS+, tetapi sebagian besar software berjalan normal
  • Lingkungan eksekusi software awal 2000-an dilengkapi melalui berbagai sumber seperti situs pustaka dan Wayback Machine
  • Dengan menerapkan teknik pembuatan image multipartisi secara dinamis, hingga tiga volume dapat di-mount sekaligus: disk boot, Infinite HD, dan Saved HD untuk penyimpanan

UI: penerapan gaya Aqua

  • Tema Aqua juga diadopsi pada UI Infinite Mac untuk memaksimalkan nuansa retro
  • Aset gambar bergaya Mac OS X 10.0/10.1 diekstrak langsung dan bahkan efek semi-transparan turut diimplementasikan
  • Gaya bagian kontrol situs juga otomatis diterapkan sesuai tampilan tiap OS (Classic, Platinum, NeXT, dan lain-lain)
  • Seiring perubahan UI besar di Apple macOS yang diperkirakan akan datang, ini juga dapat berfungsi sebagai "titik referensi" bagi UI masa lalu

Fitur tambahan dan milestone

  • Ditambahkan fitur mount partisi Mac OS 9 dan menjalankan lingkungan Classic (hanya didukung di 10.1)
  • Perbedaan UX antarsistem, seperti perilaku operasi berulang pada aplikasi Calculator lama, juga dapat diverifikasi
  • Mode boot message (Verbose) bawaan PearPC diaktifkan, dan di DingusPPC diterapkan metode penetapan variabel open firmware
  • Upaya memperluas branding melalui domain macosx.app juga sedang dicoba, tetapi saat ini domain tersebut dimiliki pihak lain

Ekspansi selanjutnya dan penutup

  • Dengan perluasan dukungan Mac OS X, Infinite Mac menghadirkan jembatan penghubung ke macOS modern
  • Untuk nostalgia yang lebih dalam, kemungkinan porting A/UX, Lisa, Pippin, dan Newton juga disebutkan
  • QEMU berbasis WebAssembly (wasm) juga menarik perhatian secara eksperimental, dengan sinyal positif yang terlihat dari pengujian performa
  • Emulasi Mac OS X berbasis web menawarkan nilai dalam berbagai skenario IT/startup, seperti pengalaman penggunaan, pelestarian software legacy, dan eksperimen pengembangan

1 komentar

 
GN⁺ 2025-06-21
Komentar Hacker News
  • Ada yang berbagi bahwa mereka ingat PearPC sempat berjalan cukup sukses selama beberapa tahun sebelum transisi ke Intel, tetapi sangat disayangkan proyek itu kehilangan sebagian besar momentumnya setelah pengembang intinya meninggal dalam kecelakaan kereta; mereka saat itu adalah pengguna yang antusias sekaligus anggota komunitas, dan sampai sekarang masih merasa sedih setiap kali mengingatnya. Artikel terkait: tautan
    • Mengingat banyak kasus pengembang hebat yang meninggal mendadak, tanpa obituari dan hanya satu pengembang lain yang tahu kabarnya, muncul bayangan setengah bercanda: jangan-jangan mereka terlalu hebat sampai dibawa alien dari Bumi
    • Menunjukkan bahwa seseorang pernah mencuri hasil kerja pengembang PearPC lalu menjualnya dengan nama cherryos
    • Menyampaikan kekecewaan karena saat mencoba membuka artikel tersebut ternyata ada paywall
  • Infinite Mac diperkenalkan sebagai koleksi yang memudahkan penggunaan rilis sistem Macintosh klasik dan NeXT beserta perangkat lunaknya langsung di web browser; tautan terkait: infinitemac.org
    • Ada yang berharap Infinite Mac diberi hyperlink dari tulisan blog atau setidaknya didefinisikan dengan jelas
    • Senang mengetahui halaman Infinite Mac, dan merasa penulis blog melakukan kesalahan besar karena tidak menyertakan tautan ke situs itu; kalau bukan karena komentar ini, mereka tidak akan menemukan situs luar biasa tersebut
  • Bagian artikel yang paling menarik bagi sebagian orang adalah fakta bahwa emulator CPU PPC itu dibuat dengan source code kurang dari 700 baris; mereka terkejut melihat tingkat kesederhanaan yang biasanya hanya terlihat pada emulator 6502 diterapkan pada arsitektur yang relatif lebih modern. Tautan kode terkait: TinyPPC.cpp
    • Ada pendapat bahwa hal itu tidak terlalu mengejutkan karena arsitekturnya RISC, dan emulator MIPS juga berukuran mirip
  • Ada yang membayangkan bagaimana rasanya jika penggemar teknologi berusia 20 tahun saat ini mencoba OS X 10.4 (termasuk .5 dan .6); seperti melihat patung klasik pada masa kegelapan lalu berpikir, “bagaimana manusia bisa membuat karya seperti ini?” Mereka juga merasa selera berubah seiring zaman, dan generasi sekarang mungkin justru menganggap ikon fotorealistik terasa norak
    • Ada pendapat bahwa tampilan dan cara kerja 10.4 pada dasarnya hampir sama dengan macOS modern: cara instalasi (drag dmg), bookmark Finder, perilaku Dock, sampai hadirnya Spotlight semuanya sudah ada saat itu. Dibandingkan perubahan dari Windows XP ke Windows 11, perubahan di Mac dinilai tidak terlalu besar
    • Seorang pengguna berusia 20 tahun mengatakan mereka samar-samar pernah memakai 10.5 atau 10.6 saat kecil, dan secara pribadi kesannya lebih dekat ke nostalgia terhadap masa itu
    • Ada yang berbagi pengalaman memulai karier sebagai developer pada era 10.4/10.5, sempat mengutak-atik semi-dark mode dan pengaturan tema, dan merasa saat itu memodifikasi system folder jauh lebih mudah daripada sekarang
    • Mengenai istilah “masa kegelapan”, ada penjelasan bahwa dalam konteks sejarah hal itu bukan soal hilangnya teknologi atau kemampuan, melainkan perbedaan budaya dan anggaran antara kekaisaran dan kerajaan-kerajaan merdeka; ditambahkan pula pengetahuan sejarah bahwa pada awal Abad Pertengahan tetap banyak artefak dan bangunan indah, dengan menyebut pengalaman melihat langsung makam kapal Sutton Hoo dan gereja-gereja Anglo-Saxon
  • Setelah melihat screenshot, ada yang merasa Mac OS X jauh lebih indah dan rapi daripada Mac OS saat ini, dengan kesan “kalau lingkungannya seperti ini, saya benar-benar jadi ingin bekerja”; macOS sekarang terasa terlalu ramai dan membingungkan, dan mereka penasaran apakah orang lain juga merasakan hal yang sama
    • Secara pribadi, ada yang merasa bagian UI yang benar-benar mereka temui hanya menu bar, tiga titik, dan Spotlight; selebihnya mereka lebih banyak memakai aplikasi browser-based atau aplikasi cross-platform dengan third-party design system ketimbang OS itu sendiri atau native app. Menurut mereka hal yang sama juga terjadi di Windows, dan mereka tidak terlalu tergerak oleh sisi visual
    • Ada yang mengatakan belakangan ini justru lebih menyukai antarmuka abu-abu lawas seperti Win 95 atau macOS 9, karena memberi rasa stabil dan nyaman seperti alat sederhana semacam kalkulator
    • Secara teknis, macOS modern sebenarnya sangat mampu mewujudkan kembali gaya lama, tetapi hal itu tidak dilakukan karena masalah struktur perangkat lunak yang tidak modular; ada juga luapan kekecewaan bahwa sekarang semakin sulit percaya perusahaan software benar-benar pandai membuat software
    • Secara pribadi, ada yang paling menyukai perpaduan aqua dan brushed metal pada 10.3 Panther; menu bar glossy di 10.4 Tiger terasa makin lama makin kurang elegan, sementara 10.5 Leopard punya Dock 3D yang mencolok, menu atas transparan, dan gradient yang lebih modern, tetapi pada akhirnya aqua dan tekstur metal tetap dianggap lebih keren. Versi setelah itu dianggap agak hambar
    • Ada juga kepuasan pribadi bahwa desain bergaris pada Windows dulu agak berlebihan, jadi justru lebih baik setelah itu dihilangkan
  • Ada yang mengatakan diskusi ini mengingatkan mereka pada UI-UI bagus di masa lalu: Macintosh OS 8 era Platinum, keanggunan lickables di MacOS X, lalu OpenLook, NeXTStep/OpenStep, hingga era Windows 2000. Elemen UI saat itu jelas dan konsisten, sehingga perilaku kontrol mudah diprediksi dan pengalaman terasa seragam. Menurut mereka, sekarang kustomisasi tema memang lebih bebas, tetapi sebagai gantinya kita kehilangan sebagian pengalaman UI yang langsung dan konsisten
  • Ada reaksi terkejut bahwa proyek PearPC masih disebut sebagai contoh sukses padahal sudah jauh lebih dari 10 tahun sejak commit terakhir; repositori resmi github, fork pribadi github. Disebut juga bahwa bahkan setelah menambahkan dukungan WebAssembly, dukungan x86-64 masih tetap ada, dan pengalaman menambahkan NextStep ke Infinite Mac pernah ditulis dalam sebuah blog: tautan blog
  • Ada kesan pribadi bahwa proyek seperti ini benar-benar bagus, dan saat Aqua muncul dulu rasanya benar-benar revolusioner
    • Saat itu hampir semua Linux window manager menyediakan tema aqua, dan ada pandangan bahwa Apple benar-benar menghadirkan OS yang selama ini diimpikan para pengguna yang menunggu “tahun desktop Linux”: Unix arus utama dengan usability hebat serta dukungan third-party app yang luas, sehingga meraih sukses besar
    • Ada yang berpendapat Aqua sampai sekarang tetap terasa revolusioner; dulu kontrol jendela mudah langsung dikenali, tetapi belakangan justru makin sulit dibedakan. Mereka berharap Liquid Glass bisa sedikit menghidupkan kembali UX semacam itu, dan menilai konsistensi serta usability Aqua adalah alasan mengapa Windows Vista maupun berbagai tema Linux yang mencoba menirunya tetap tidak bisa menyamai hasilnya
    • Mengutip presentasi Steve Jobs saat “pengumuman Aqua”: Aqua adalah antarmuka yang sepenuhnya baru, mewarisi tradisi khas Apple, dan seperti namanya bersifat cair; salah satu tujuan desainnya adalah membuatnya “terlihat begitu enak sampai ingin dijilat”
    • Ada kesan bahwa Liquid Glass mengingatkan kembali pada filosofi desain era Aqua saat itu
  • Ada yang mengenang masa awal OS X sebagai masa keemasan Mac yang sesungguhnya; hardware saat itu juga sangat kompetitif dan sistem operasinya terasa paling matang. Sekarang hardware dianggap memasuki masa keemasan lagi, jadi ada harapan software suatu hari bisa menyusul. Namun, ada juga pendapat bahwa performa emulasi ini saat dipakai membuka Safari di Mac modern terasa kurang responsif sehingga sulit dipakai sungguhan
    • Ada pendapat bahwa kemungkinan Mac OS menjadi hebat lagi tampaknya nyaris tidak ada
    • Menekankan ironi bahwa saat hardware memberi performa, software justru merebut performa itu kembali
    • Berdasarkan pengalaman memakai model x86 awal, ada yang menegaskan bahwa Mac saat itu sebenarnya tidak kompetitif dari sisi harga, kernel panic sering terjadi, dan segmentation fault saat menonton video di QuickTime adalah hal biasa. Mencari codec untuk memutar berbagai format file (wmv atau divx) menjadi rutinitas, dan karena desainnya sampai tak punya ventilasi demi terlihat cantik, masalah overheat juga sering terjadi
  • Ada yang setuju dengan penilaian “memang tidak cepat, tetapi hardware asli pada masa itu juga tidak jauh lebih baik”; berdasarkan pengalaman memakai hackintosh sekitar tahun 2008, mereka merasa kelambanan itu justru terasa realistis karena memang mereplikasi Mac era tersebut dengan cukup akurat. Mereka juga mengenang banyak trial and error saat membuat aplikasi untuk iPod touch pada masa itu, meski syukurlah instalasinya tidak sampai memakan 24 jam