­T­e­t­r­i­s­­i­ ­O­y­u­n­u­n­ ­İ­ç­i­n­d­e­n­ ­H­a­c­k­l­e­m­e­k­ ­M­ü­m­k­ü­n­

­T­e­t­r­i­s­­i­ ­O­y­u­n­u­n­ ­İ­ç­i­n­d­e­n­ ­H­a­c­k­l­e­m­e­k­ ­M­ü­m­k­ü­n­

Bu senenin başlarında, hikayeyi paylaştık nasıl bir klasik NES Tetris oyuncu oyunun “öldürme ekranına” çarptı 40 dakikalık, 1.511 satırlık inanılmaz performansın ardından ilk kez bir kilitlenmeyi etkinleştiriyor. Şimdi, bazı oyuncular bu öldürme ekranını ve bunun mümkün kıldığı bazı karmaşık hafıza manipülasyonlarını, yeni davranışları yeni davranışların versiyonlarına kodlamak için kullanıyor. Tetris değiştirilmemiş donanım ve kartuşlarla çalışıyor.

Benzer “keyfi kod yürütme” aksaklıklarını şu şekilde ele aldık: gibi oyunlar Süper Mario Dünyası, Kağıt MarioVe Zelda Efsanesi: Zamanın Ocarina'sı geçmişte. Ve NES'e dış kod eklemenin temel yöntemi Tetris oldu en az 2021'den beri kamuya açık olarak teorileştirildi oyuncular araştırırken oyunun ayrıştırılmış kodu. (HydrantDude, derinlere gitti Tetris geçmişteki kazalarAyrıca diyor topluluk uzun süredir, tüm kontrolün nasıl ele alınacağına dair özel olarak bilinen bir yönteme sahip. Tetris' VERİ DEPOSU.)

Ancak Displaced Gamers'dan yeni bir video Fikri özel teoriden kamuya açık uygulamaya taşıyor, NES'in nasıl elde edileceğine dair özenli ayrıntılara giriyor Tetris Oyunun yüksek puan tablolarını makine kodu talimatları olarak okumaya başlamak için.

Denetleyici Bağlantı Noktalarıyla Eğlence

NES'in bir kopyasını devralmak Tetris çoğunlukla oyunun belirli çökme şekli nedeniyle mümkündür. İçine girmeden çok fazla detayNES'te bir çökme Tetris oyunun skor yöneticisinin kareler arasında yeni bir skor hesaplaması çok uzun sürdüğünde meydana gelir; bu durum 155. seviyeden sonra gerçekleşebilir. Bu gecikme meydana geldiğinde, kontrol kodunun bir kısmı yeni kare yazma rutini tarafından kesintiye uğrar ve bu durum 155. seviyeye atlamasına neden olur. Bir sonraki talimatı aramak için oyunun RAM'inin istenmeyen bir kısmı.

Genellikle bu beklenmedik kesinti, kodun RAM'in en başlangıcına atlamasına yol açar; burada çöp veriler kod olarak okunur ve çoğu zaman hızlı bir çökmeye yol açar. Ancak oyuncular, nasıl yapılacağı konusunda az bilinen bir kapris sayesinde bu atlamayı manipüle edebilirler. Tetris Famicom konsolunun Japonca sürümünde çalışırken olası girişleri yönetir.

Amerikan Nintendo Eğlence Sisteminin aksine, Japon Famicom'da üniteye kablolu iki kontrol cihazı bulunuyordu. Üçüncü taraf denetleyicileri kullanmak isteyen oyuncular bunları bir genişletme bağlantı noktası sistemin ön tarafında. Tetris oyun kodu, iki ek standart NES denetleyicisini içerebilen bu “ekstra” denetleyici bağlantı noktasından gelen girişleri okur bir adaptör kullanarak (Famicom olmasına rağmen bu doğrudur tamamen farklı bir versiyonu var Tetris Kurşun Geçirmez Yazılım'dan).

Olduğu gibi, RAM'in alanı Tetris Bu ekstra denetleyici girişini işlemek için kullanılanlar, daha önce tartıştığımız atlama rutininin hafıza konumu için de kullanılır. Böylece, bu atlama rutini bir çökme nedeniyle kesintiye uğradığında, RAM, kontrolörlerde basılan düğmeleri temsil eden verileri tutacak. Bu, oyunculara, kilitlenme tetiklendikten sonra oyun kodunun tam olarak nereye gideceğini kontrol etme potansiyeli sağlar.

Yüksek Puan Tablosunda Kodlama

Yerinden Edilmiş Oyuncuların atlama kontrolü yöntemi için, oyuncunun üçüncü kontrol cihazında “yukarı” tuşunu ve dördüncü kontrol cihazında sağ, sol ve aşağı tuşlarını basılı tutması gerekir (bu ikinci kombinasyon, eşzamanlı sol ve sağ yön girişine izin vermek için kontrol cihazının biraz kurcalanmasını gerektirir) ). Bunu yapmak, atlama kodunu RAM'in oyunun yüksek puan listesi için adları ve puanları tutan bir alanına göndererek, doğrudan oyuncu tarafından yönetilebilecek daha geniş bir RAM yüzeyi sağlar.

B-Tipi yüksek puan tablosunun hedeflenen kısmına “(G” harfini koyarak oyunu şu seviyeye atlamaya zorlayabiliriz: bir diğer yüksek puan tablosunun alanı; burada Yerinden Edilmiş Oyuncular'ın “çıplak metal” kodu olarak adlandırdığı şekilde adları ve puanları sırayla okumaya başlayacak, harfler ve sayılar NES CPU'nun işlem kodlarını temsil edecek.

Ne yazık ki, isim giriş alanında kullanılabilecek yalnızca 43 olası sembol ve yüksek puanın parçası olabilecek 10 farklı rakam bulunmaktadır. Bu sadece küçük bir kısmı anlamına gelir NES'in mevcut işlem kodu talimatları mevcut saldırı yüzeyini kullanarak yüksek puan tablosuna “kodlanabilir”.

Kaynak bağlantısı

Popular Articles

Latest Articles