NES Tetris’te yeni kod keşfedildi
- Hacker’lar, oyun içinden NES Tetris’i yeniden programlamanın bir yolunu keşfetti
- Bu yöntem, oyunun sonundaki çökmeden kaçınmak isteyen yüksek skor avcılarına yardımcı olabilir
Kod çalıştırma yöntemi
- NES Tetris’in "kill screen" durumunu kullanarak belleği manipüle eden karmaşık bir yöntemle, değiştirilmemiş donanım ve kartuş üzerinde çalışan Tetris sürümüne yeni davranışlar kodlanabiliyor
- Benzer "rastgele kod çalıştırma" glitch’leri daha önce Super Mario World, Paper Mario ve The Legend of Zelda: Ocarina of Time gibi oyunlarda da bulunmuştu
- NES Tetris’e harici kod enjekte etmenin temel yöntemi en az 2021’den beri kamuya açık şekilde teorize ediliyordu
- Bu yöntem, Tetris’in yüksek skor tablosunu makine kodu komutları olarak okumaya başlamasının ayrıntılarını açıklıyor
Kontrolcü portlarıyla eğlence
- NES Tetris’teki çökme, oyunun skor işleyicisi kareler arasında yeni skoru hesaplamak için fazla uzun sürdüğünde meydana geliyor
- Bu gecikme yaşandığında, kontrol kodunun bir kısmı yeni kare yazma rutini tarafından kesiliyor ve komutları aramak için istenmeyen bir RAM bölümüne atlıyor
- Tetris, Japon sürüm konsol olan Famicom üzerinde çalışırken olası girdileri işleme biçimi sayesinde oyuncular bu atlamayı manipüle edebiliyor
Yüksek skor tablosunda kod yazmak
- Displaced Gamers’ın atlama kontrol yönteminde oyuncunun üçüncü kontrolcüde "yukarı"yı, dördüncü kontrolcüde ise sağ, sol ve aşağıyı basılı tutması gerekiyor
- Bu sayede atlama kodu, oyunun yüksek skor listesindeki isimleri ve skorları saklayan RAM alanına gönderiliyor; bu da oyuncunun doğrudan manipüle edebileceği daha geniş bir RAM yüzeyi sağlıyor
- Yüksek skor tablosunun hedef bölümüne "(G" yerleştirmek, oyunu yüksek skor tablosunun başka bir alanına atlamaya zorlayabiliyor
- Buradan itibaren isimleri ve skorları NES CPU için opcode olarak sırayla okumaya başlıyor
- Ancak isim giriş alanında kullanılabilen semboller yalnızca 43 adet ve yüksek skorun bir parçası olabilecek rakamlar da sadece 10 adet olduğundan, mevcut NES opcode komutlarının yalnızca bir kısmı yüksek skor tablosuna "kodlanabiliyor"
- Pil destekli kayıt sistemi olmadığı için hacker’ların, Tetris her başlatıldığında bu yüksek skorları manuel olarak elde edip karmaşık isimleri girmesi gerekiyor
GN⁺ görüşü
- Tetris’in NES sürümünde böyle gizli bir işlevin bulunması şaşırtıcı. O dönemde keşfedilmemiş gibi görünüyor; onlarca yıl sonra ortaya çıkması daha da ilginç.
- Famicom’un genişleme portunu kullanarak böyle bir hack’in mümkün olması da ilgi çekici. Nintendo’nun kasıtlı olarak eklediği bir özellik olmasa da, Famicom’un NES’e kıyasla daha zengin özellikler sunmasının bir avantajını gösteriyor gibi.
- Bu tür bir hatayı kullanarak tam tersine çökmesini önleyecek kod yerleştirme fikri de oldukça yaratıcı. Teorik olarak oyun oynanışını sürdürmeyi mümkün kıldığından, yüksek skor denemelerinde büyük fayda sağlayabilir.
- Ancak bu yöntemi kullanmak için oyunu her başlattığınızda karmaşık bir kurulum yapmanız gerekmesi pratik görünmüyor. Gerçek kullanım için biraz daha otomasyona ihtiyaç var gibi.
- Sonuçta bu yöntem, oyunu keyif için oynayan genel kullanıcılardan ziyade yüksek skor peşindeki meraklılara veya programlamaya ilgi duyanlara hitap edecek gibi görünüyor. Yaygın kullanım için pek uygun durmuyor.
1 yorum
Hacker News görüşü
Özet: