İçeriğe geç
Pin
Rehber

Neo Geo Üzerinde Doom Mümkün Mü? Hackerlar 'İmkansız' Diyenlere Meydan Okuyor

Modern Vintage Gamer'ın 'imkansız' dediği Neo Geo Doom portu, bağımsız geliştiriciler sayesinde gerçeğe dönüşüyor. İşte teknik detaylar.

Editör··3 dk okuma
Neo Geo Üzerinde Doom Mümkün Mü? Hackerlar 'İmkansız' Diyenlere Meydan Okuyor

Geçtiğimiz ay Modern Vintage Gamer (MVG), Neo Geo'nun sprite tabanlı ekran mimarisi ve frame buffer eksikliği nedeniyle Doom'u bu konsolda çalıştırmanın "işlevsel olarak imkansız" olduğunu savunuyordu. Ne var ki hacker topluluğu böyle iddialar karşısında sessiz kalmadı: iki ayrı homebrew projesi, stok Neo Geo donanımı üzerinde çalışan Doom portlarıyla bu tezi hızla çürüttü.

Bu yazıda Neo Geo'nun neden Doom için "imkansız" sayıldığını, iki projenin bu sınırı nasıl aştığını ve elde edilen sonuçların neden tam anlamıyla bir '90s konsol portu olmadığını adım adım inceleyeceğiz.

Neo Geo Neden "İmkansız" İdi?

Neo Geo, 1990 yapımı bir arcade ve ev konsolu platformu olarak sprite tabanlı bir görüntü sistemi kullanıyor. Bu mimaride pikseller tek tek değil, önceden tanımlanmış sprite parçaları hâlinde ekrana basılıyor. Doom ise tam tersine, her karesini bağımsız piksellerden oluşan bir frame buffer üzerinde hesaplayan bir motor kullanıyor.

MVG'nin işaret ettiği temel sorunlar şöyleydi:

  • Sprite tabanlı ekran donanımı, Doom'un ihtiyaç duyduğu serbest piksel çizimine izin vermiyor.
  • Konsolda modern anlamda bir frame buffer bulunmuyor; yani oyunun her karesini oluşturup ekrana yollayacak bir bellek alanı yok.
  • İşlemci ve bellek bant genişliği, orijinal Doom'un gerektirdiği hesaplama yükünü taşımakta yetersiz kalıyordu.

Bu üçlü kombinasyon, MVG'ye göre Doom'un Neo Geo'da çalışmasını işlevsel olarak imkansız kılıyordu. Görünüşe göre kimse hackerlara bunu söylememiş.

FrenkelS'in Doom64KB Projesi

İlk proje, GitHub kullanıcısı FrenkelS tarafından geliştirilen Doom64KB. Geliştirici aslında bu işe boş bir Neo Geo'dan başlamadı; daha önce 8088 ve 286 gibi 16-bit PC işlemcileri için yazdığı Doom8088 portunu temel aldı.

Doom8088, zaten kısıtlı kaynaklarla çalışacak şekilde tasarlanmış bir motordu. FrenkelS, bu motoru Neo Geo'ya taşırken ilginç bir teknik çözüm üretti: Konsolun genellikle menü ve HUD bilgilerini oyunun üzerine basmak için kullanılan "fix layer" alanını bir nevi proto frame buffer olarak kullandı.

Fix Layer Nasıl Çalışıyor?

Neo Geo'nun fix layer'ı sabit, küçük bir ekran katmanı. Normalde skor veya can göstergesi gibi arayüz elemanları için ayrılır. FrenkelS ise bu alanı geçici bir çizim yüzeyi olarak değerlendirip, oyunun piksel verilerini burada toplayıp ekrana yansıtıyor.

Elde Edilen Sonuçlar

Her iki proje de teknik açıdan etkileyici olsa da, '90larda rafta satılabilecek bir konsol portu olmaktan uzak. MVG'nin yeni videosunda altını çizdiği gibi, bu portlar görsel açıdan ciddi ödünler veriyor:

  • Düşük çözünürlüklü veya kırpılmış görüntü alanı: Doom'un ünlü atmosferik dünyası, küçük ve bulanık bir ekrana sığmak zorunda kalıyor.
  • Düşük kare hızı: Donanım sınırları nedeniyle akıcı bir deneyim sunulamıyor.
  • Piksel bazlı çizimin sınırları: Sprite mimarisi, duvar ve zemin dokularını tam anlamıyla yeniden üretemiyor; sahneler "göz kısarak bakarsan Doom'a benziyor" hissi veriyor.

Yine de bu çalışmalar, yaratıcı ve kararlı kodcuların eski donanımlardan ne kadar çok şey çıkarabileceğini gösteren güçlü bir kanıt.

Bu Gelişme Oyuncular İçin Ne Anlama Geliyor?

Eğer retro donanımla veya homebrew sahnesiyle ilgileniyorsanız, bu tür projeler üç açıdan heyecan verici:

  1. Emülasyon ve geliştirme ilhamı: Neo Geo üzerinde Doom çalıştırmak, benzer kısıtlamalara sahip başka platformlar için de ilham verici bir örnek oluşturuyor.
  2. Açık kaynak katkısı: Her iki proje de GitHub'da yayımlandı; isteyen herkes kodu inceleyebilir, katkıda bulunabilir veya kendi portlarını deneyebilir.
  3. Retro sahnesinin gücü: Ticari portların yapılamadığı yerlerde topluluk, boşluğu kendi imkânlarıyla dolduruyor.

Sıkça Sorulan Sorular

Doom gerçekten Neo Geo üzerinde çalışıyor mu? Evet, FrenkelS'in Doom64KB projesi ve bir diğer bağımsız girişim, stok Neo Geo donanımı üzerinde çalışan Doom portları geliştirmeyi başardı. Ancak bu portlar ciddi görsel ödünler içeriyor.

Neden tam anlamıyla bir konsol portu değil? Neo Geo'nun sprite tabanlı ekran mimarisi, Doom'un ihtiyaç duyduğu piksel piksel çizim yöntemini doğrudan desteklemiyor. Fix layer gibi geçici çözümler, görüntü kalitesini ve kare hızını düşürüyor.

Bu portları nereden deneyebilirim? Doom64KB'nin kaynak koduna GitHub üzerinden ulaşabilirsiniz. Gerçek donanımda çalıştırmak için ise Neo Geo geliştirme araçlarına ve flash kart desteğine ihtiyacınız olacak.

Doom portları emülatörlerde farklı mı çalışıyor? Evet, modern emülatörler Neo Geo'nun donanım sınırlarını esnetebildiği için emülatör üzerinde çalıştırılan portlar, orijinal donanımdakinden daha akıcı bir deneyim sunabilir.

Yorumlar (0)

İlk yorumu sen yaz.

Yorum yazmak için giriş yap ya da üye ol.

İlgili İçerikler