Super Mario Bros. hangi programlama dilinde yazılmıştır? [kapalı]


65

Super Mario Bros., kesinlikle yaratılan en ünlü video oyunudur ve 40.23 milyon kopya satmaktadır. http://en.wikipedia.org/wiki/List_of_best-selling_video_games

Hangi programlama dilinde yazılmıştır? Orijinal kod referansı olan var mı?


7
Eski NES oyunlarının birçoğunun makineye özel montajda yazıldığı hissine kapılıyorum.
meagar


7
Bir kopya değil, bu belirli bir oyundan belirli kod örneklerini ister.
Saldırı

5
Pek çok "X hangi dilde yazıldı?" X, ne kadar kayda değer olursa olsun, geliştirme platformu nedeniyle kayda değer değilse. Ayrıca, kasıtlı bir kaynak kullanılabilirliğine sahip olmayan, hala telif hakkı altında (ve hala satılmakta olan) bir oyunun belirli kod örneklerini soruyor.

3
@Toad: Evet, ancak genellikle çevrimiçi olarak yayınlama veya bir kopyasını indirme (oyuna sahip olsanız bile) veya kendi okuma kodunuzu temel alarak türev çalışmalar yapma hakkınız yoktur.

Yanıtlar:


76

6502 Birleştirici

ROM'u hacklemek hakkında bir forum sayfası. http://forums.selectbutton.net/viewtopic.php?t=26956&sid=1a883209e1ba63877bcd58c007bb63ae

İhtiyacınız olan tüm kod referanslarını da içermelidir.

Aşağıya birkaç yayın, oyunu düzenlemek / kesmek için gereken bu öğeleri içeren bir zip dosyasına bir bağlantı.

  • ca65 - Bir 6502 montaj derleyici gelen http://www.cc65.org/
  • ld65 - bir 6502 bağlayıcı gelen http://www.cc65.org/
  • smbdis.asm - kapsamlı bir Super Mario Bros. sökümü
  • smb.chr - Super Mario Bros. grafikleri (karakter ROM verileri)
  • smb.hdr - Süper Mario Bros ROM başlığı (iNES başlığı)
  • MAKESMB.BAT - Derleme işlemini otomatikleştiren bir toplu iş dosyası.
  • 6502jsm.doc - 6502 komutunun bir özeti.

6
Vay, mükemmel cevap! Kudos
DFectuoso

31
Kafam bu cevabı kendim karıştırdı. Temel olarak bir çalıştırılabilir dosyaya (ROM) işaret ediyorsunuz ve derlemede yazıldığını iddia ediyorsunuz ... çünkü demonte edildi. Bir çalıştırılabilir; elbette demonte edilebilir . Bu mantıkla, bugüne kadar yazılmış her C / C ++ programı aslında derleme ile yazılmıştır. Bunun derlemede yazıldığını ispatlamak için, Nintendo'nun çalıştırılabilir binary'i parçalayabileceğinizi değil derlemede yazdığını göstermeniz gerekir .
Nicol Bolas,

52

Neredeyse tüm NES oyunları 6502 meclisinde elle yazılmıştır, Commodore 64, Apple'da olduğu gibi aynıdır. [E, vb.] ve 2Kb yerleşik RAM'e sahiptir (kartuşun daha fazla yama yapabilmesi için 8Kb pencereli). NES'in kendine özgü mimarisinden tam olarak yararlanmak için tasarlanan özenli montaj çok daha etkiliydi.

Dur ve bir düşün ... Super Mario Bros 3 ve Kirby's Adventure gibi oyunlar 2MHz'de oynandı. Günümüzün gigahertz ve yüzlerce megabayt RAM'i yutan oyunlarla ne kadar zengin olduklarını karşılaştırın.


3
@Lohoris Bu yorumu oylamaya yeni girdim.
Sürprizime

5
C ile yazılmış lisanslı bir NES oyunu örneği nedir?
tgies

1
[kaynak belirtilmeli]
Almo
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.