PlayStation 5 oyunlarını PC'de çalıştırmak için geliştirilen AnyPS5, klasik konsol emülatörlerinden farklı bir yöntem izliyor. Açık kaynaklı proje, PS5 oyunlarının çalıştırılabilir dosyalarını Windows ve Linux'un doğal olarak kullanabileceği biçime dönüştürürken, konsola özel sistem kütüphanelerinin işlevlerini PC tarafında yeniden oluşturuyor. Projenin son aşamasında gerçek bir PS5 oyunu, logo ekranını ve ana menüyü geçerek oynanışa kadar ulaşmayı başardı.
PlayStation oyunlarını PC'de çalıştırmaya yönelik projeler, uzun süredir emülasyon üzerine kuruluyor. Geleneksel emülatörlerde, konsolun donanımı ve işletim sistemi davranışları yazılım üzerinden yeniden oluşturuluyor. AnyPS5 ise PlayStation 5'in PC'lerle aynı temel işlemci mimarisini kullanmasından yararlanarak farklı bir yaklaşım izliyor.
PlayStation 5, AMD tarafından geliştirilen x86-64 tabanlı bir işlemci kullanıyor. Güncel Windows ve Linux bilgisayarların büyük bir bölümü de aynı x86-64 komut mimarisini kullandığı için AnyPS5’in PS5 oyunlarının işlemci komutlarını tamamen farklı bir mimariye çevirmesi gerekmiyor.
Projenin temelinde “relinker” adı verilen bir sistem bulunuyor. Bu araç, PS5 için hazırlanmış çalıştırılabilir dosyaları hedef işletim sisteminin doğal biçimine dönüştürüyor. Oyunun kodu daha sonra Windows veya Linux üzerinde ayrı bir PlayStation 5 işlemcisini taklit eden katman olmadan çalıştırılıyor.
Ancak ortak x86-64 mimarisi, tek başına PS5 oyunlarının PC'de açılması için yeterli değil. PlayStation 5 oyunları, Sony'nin konsola özel işletim sistemi servislerini, sistem kütüphanelerini, grafik API'lerini ve farklı donanım işlevlerini kullanıyor. AnyPS5, bu noktada PS5’in PRX sistem kütüphanelerindeki işlevlerin PC üzerinde çalışabilecek karşılıklarını yeniden geliştiriyor. Oyun, konsol tarafında belirli bir sistem fonksiyonunu çağırdığında, AnyPS5 bu çağrıyı PC’de kullanılabilecek bir işleve yönlendiriyor.
Bu yaklaşım, çalışma mantığı bakımından Wine ve Proton gibi uyumluluk katmanlarına benziyor. Wine, Windows uygulamalarının kullandığı sistem çağrılarını Linux üzerinde karşılayarak programların doğrudan çalışmasını sağlıyor. AnyPS5 de benzer bir prensibi PlayStation 5 yazılımlarına uyguluyor, ancak konsola özgü grafik ve sistem bileşenleri nedeniyle daha farklı teknik sorunlarla karşılaşıyor.
Grafik tarafı projenin en karmaşık bölümlerinden birini oluşturuyor. PS5, AMD RDNA 2 tabanlı özel bir grafik işlemcisi ve Sony’nin kendi grafik altyapısını kullanıyor. Bir PS5 oyununun hazırladığı grafik komutlarının standart bir Windows veya Linux ekran kartı sürücüsüne doğrudan gönderilmesi mümkün değil. AnyPS5, bu nedenle PS5 tarafındaki grafik işlemlerini Vulkan ile çalışabilecek hale getirmeye çalışıyor. Projenin shader yeniden derleyicisi, PlayStation 5 için hazırlanmış shader kodlarını Vulkan ekosisteminde kullanılan SPIR-V biçimine dönüştürüyor.
Güncel geliştirme sürümünde shader recompiler tarafından oluşturulan SPIR-V kodları doğrulama araçlarından geçebiliyor. Bu aşama, oyun grafiklerinin PC ekran kartında işlenebilmesi için gerekli temel bileşenlerden birini oluşturuyor. Proje son günlerde önemli bir eşiği geçti. Gerçek bir PlayStation 5 oyunu AnyPS5 kullanılarak başlatıldığında ilk çalıştırma kodunu geçebiliyor, ana fonksiyona ulaşabiliyor ve daha sonra logo ekranını gösterebiliyor. Geliştirme ilerledikçe aynı oyun ana menüye ve oynanış bölümüne kadar ulaşmayı da başardı. Ses çıkışı da mevcut aşamada çalışıyor. Böylece AnyPS5, yalnızca teorik olarak PS5 dosyalarını dönüştüren bir araç olmaktan çıkarak, gerçek oyun kodunu çalıştırabilen bir uyumluluk katmanına doğru ilerledi.
Ancak oynanış ekranına ulaşılması, projenin günlük kullanıma hazır olduğu anlamına gelmiyor. Eksik sistem fonksiyonları, grafik işlemleri ve henüz desteklenmeyen durumlar oyunun çökmesine veya düzgün çalışmamasına yol açabiliyor. AnyPS5 geliştiricisi de ilk tam başarılı oyun çalıştırılması tamamlanmadan hazır sürüm yayımlamayacak. Bu nedenle proje şu anda indirip PS5 oyunlarını doğrudan çalıştırabileceğiniz tamamlanmış bir uygulama değil.
Windows tarafında geliştirme ortamı da şimdilik oldukça sınırlı. Projenin bazı sistem kütüphanesi uygulamaları derleyiciye özel kod içeriyor ve mevcut Windows derlemelerinde MinGW-w64 GCC 15.2 gerekiyor. Linux tarafında ise GCC ile derleme yapılabiliyor. Uzun vadede farklı derleyicilerin desteklenmesi planlanıyor ancak öncelik ilk oyunun baştan sona başarıyla çalıştırılmasına verilmiş durumda.
AnyPS5’in kullandığı yöntem, klasik PS5 emülatörlerine kıyasla teorik olarak önemli bir performans avantajına sahip olabilir. İşlemci talimatlarının başka bir işlemci mimarisine çevrilmesine gerek kalmadığı için CPU tarafında tam donanım emülasyonunun oluşturduğu ek yük önemli ölçüde azalıyor. Ancak bu durum, bütün PS5 oyunlarının düşük donanımlı bilgisayarlarda çalışabileceği anlamına gelmiyor. PlayStation 5’in GPU performansı, bellek yapısı ve özel donanım özellikleri yine PC tarafında karşılanmak zorunda. Özellikle ağır grafik yüküne sahip oyunlarda güçlü bir ekran kartı gereksinimi devam edecek.
Uyumluluk da ayrı bir sorun oluşturuyor. Her PS5 oyunu sistem kütüphanelerini ve grafik özelliklerini aynı biçimde kullanmıyor. Bir oyunun sorunsuz çalışması, diğer PS5 oyunlarının otomatik olarak aynı seviyede uyumlu hale geldiği anlamına gelmeyecek. AnyPS5 ayrıca oyun, PlayStation 5 firmware’i, şifreleme anahtarı veya Sony’ye ait özel sistem kütüphanelerini kendi içerisinde barındırmıyor. Proje yalnızca uyumluluk, araştırma ve yazılım koruma amacıyla geliştirilen kodları içeriyor. Geliştirici, kullanılacak oyun dosyalarının yasal şekilde elde edilmesinden kullanıcıların sorumlu olduğunu belirtiyor.
Proje GPL 2.0 lisansıyla açık kaynak olarak geliştiriliyor. Kod tabanı üzerinde çalışmalar hızlı biçimde devam ederken, grafik sistemi, sistem kütüphaneleri ve oyun uyumluluğu projenin başlıca geliştirme alanlarını oluşturuyor. AnyPS5, PS5 oyunlarını PC’ye taşımaya çalışan tek proje değil. KytyPS5 ve diğer emülatör projeleri de PlayStation 5 yazılımlarının Windows üzerinde çalıştırılması için farklı teknik yöntemler kullanıyor. AnyPS5’i bu projelerden ayıran temel fark ise ayrı bir PS5 çalışma ortamı oluşturmak yerine oyunun çalıştırılabilir dosyasını PC’ye uygun biçime dönüştürmesidir. Projenin gerçek bir oyunda ana menüyü aşarak oynanışa ulaşması, geliştirme sürecindeki önemli aşamalardan biri oldu. Ancak genel kullanıma açık ilk sürüm için en az bir oyunun tam ve başarılı şekilde çalıştırılması bekleniyor.
1996 yılında Üsküdar’da doğan Mert Can Aka, sinema, bilim, teknoloji ve tarih alanlarına duyduğu ilgiyle şekillenen kariyerinde teknoloji editörlüğüne odaklandı. Öğrenmeyi ve bilgiyi aktarmayı merkeze alan Aka, farklı kurumlarda çeşitli görevler üstlendi. Bu süreçte MediaMarkt’ın MediaTrend Teknolojik Yaşam dergisini son sayısına kadar yöneterek dergicilik tarafında da deneyim kazandı. Bilgisayar Mühendisliği, Bilgisayar Programcılığı, Web Tasarım ve Kodlama ile birlikte Adalet ve İktisat alanlarında akademik geçmişe sahip olan Aka, bugün Technopat’ta Yazı İşleri Müdürü olarak görev yapıyor. Otomotivden yapay zekaya, donanımdan ev teknolojilerine uzanan geniş bir yelpazede ürettiği on bini aşkın içerik yüz milyonlarca okura ulaştı.







































