deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Hacker News – Front Page (native)

AnyPS5, PS5 çalıştırılabilir dosyalarını Windows ve Linux'ta doğal olarak çalışacak şekilde yeniden bağlıyor

Hacker News'te öne çıkan açık kaynaklı bir araç, PS5 çalıştırılabilir dosyalarını yeniden bağlama (relinking) ve yeniden yazılmış sistem kütüphaneleri aracılığıyla, emülatör olmadan doğal Linux ve Windows programlarına dönüştürüyor.

AnyPS5, PS5 çalıştırılabilir dosyalarını Windows ve Linux'ta doğal olarak çalışacak şekilde yeniden bağlıyor

Şu anda Hacker News ana sayfasında yer alan AnyPS5 adlı açık kaynaklı proje, alışılmadık bir şey vaat ediyor: PlayStation 5 çalıştırılabilir dosyalarını, altında emülatör olmadan Linux ve Windows'ta doğal olarak çalışan programlara dönüştürmek. Boykopovar adlı hesap altında yayımlanan projenin GitHub deposuna göre araç iki temel parçadan oluşuyor — bir PS5 çalıştırılabilir dosyasını hedef platformun kendi ikili (binary) formatına yeniden yazan bir relinker ve sonucun dinamik olarak bağlanabileceği, konsolun sistem PRX kütüphanelerinin yeni uygulamaları. Taşınan kod daha sonra ana makinede sıradan bir süreç (process) olarak çalışıyor.

Dikkat çeken sayı, sistem kütüphanelerinin yüzde 87'sinin eşlenmiş olması, geliştiricilerin kendilerinin belirttiği bir uyarıyla geliyor. Bu oran, PS5'in tüm sistem API'sinin doğrulanmış bir oranını değil, projenin kendi kodunda zaten tanımlamış olduğu fonksiyonları sayıyor ve toplam, yeni tanımlamalar eklendikçe sürekli değişiyor. Bunu bir uyumluluk skoru olarak değil, ekibin kendi haritasına göre bir ilerleme göstergesi olarak okumak en doğrusu.

Emülasyon yerine yeniden bağlama

Bir emülatör konsol kodunu kendi başına kapalı bir runtime içinde yorumlarken veya çevirirken, AnyPS5 statik olarak çalışıyor: çalıştırılabilir dosya, yerine geçen kütüphanelere bağlanacak şekilde yeniden yazılıyor ve ana işletim sistemi tarafından sıradan bir uygulama gibi ele alınıyor. Grafikler, Vulkan'ın tükettiği ara format olan SPIR-V üreten bir shader yeniden derleyicisi tarafından ele alınıyor; depoya göre bu çıktı, derleme ANYPS5_ENABLE_SPIRV_TOOLS ile yapılandırıldığında Spirv-Tools ile doğrulanabiliyor. Hata modeli bilinçli olarak katı — desteklenmeyen veya beklenmeyen her şey std::runtime_error fırlatıyor, mesajını stderr'e yazdırıyor ve süreci tanımsız bir durumda sürdürmek yerine sonlandırıyor.

Uyumluluğun şu anki durumu

Doğrulanmış oyunlar hâlâ az. 2D platform oyunu Dreaming Sarah'nın mütevazı donanımda, yani 3.4 GHz hızındaki bir i5-7500 ile eşleştirilmiş bir GTX 1050 Ti'de, kararlı bir şekilde saniyede 60 kare çalıştığı bildiriliyor. Bir oyun uyumluluk listesi diğer test edilmiş oyunları ve bilinen sorunları takip ediyor ve README, projenin teknik borcunu açıkça belgeliyor.

Girdi ve yapılandırma

SDL üzerinden eşlenen kumandalar destekleniyor; analog çubuklar ve tetikler dahil. Klavye ve fare bağlantıları bir anyp5-input.ini dosyası üzerinden ayarlanabiliyor; depo desteklenen cihazları ve yapılandırma formatını belgeliyor.

Lisans ve hukuki duruş

Proje yalnızca GNU GPL sürüm 2 altında lisanslı. Feragatnamesi (disclaimer) bu çalışmayı birlikte çalışabilirlik, araştırma, koruma ve uyumluluk amacına hizmet eden bir çerçevede sunuyor ve içinde telif hakkıyla korunan kod, donanım yazılımı (firmware), kriptografik anahtar veya tescilli kütüphane bulunmadığını ya da kullanım için gerekmediğini belirtiyor. Kullanıcıların sağladığı ikili dosyaların sorumluluğu bu kullanıcılara ait — konsol odaklı diğer uyumluluk çalışmalarından tanıdık gelen bir duruş.

Neden önemli

Bugüne kadarki konsoldan PC'ye uyumluluk çalışmalarının neredeyse tamamı emülasyondan geçti; bu, runtime yükü getiriyor ve özgün donanımı sadakatle modellemeyi gerektiriyor. Statik ikili taşıma (porting) farklı bir bahis: ölçeklenirse, taşınan oyunlar ana makine kütüphanelerine ve sürücülerine doğrudan bağlanan doğal yazılımlar gibi davranır; bu da hem performans hem de özgün donanım azaldığında koruma açısından önemli.

Şu anki gerçeklik mütevazı — doğrulanmış bir oyun, genç bir kod tabanı ve yazarların kendilerinin öz referanslı olarak nitelendirdiği bir kapsam metriği. Ticari yayınlar neredeyse kesinlikle henüz tanımlanmamış sistem davranışlarına bağlı ve bu tasarımda her boşluk sessiz bir çözüm yerine bilinçli bir çökmeyle sonuçlanıyor. Yine de proje, modern bir konsol çalıştırılabilir dosyasının emülasyon katmanı olmadan PC'ye taşınabileceğini gösteriyor; GPLv2 lisansı ve katı bir tescil-içerik-yok politikası, yazarların bunu perakende oyunları oynamak için bir kestirme değil, uzun vadeli bir birlikte çalışabilirlik çabası olarak gördüğünü düşündürüyor.

  • #open-source
  • #playstation
  • #reverse-engineering
  • #gaming
  • #linux

İlgili yazılar