BerandaComputers and TechnologyBagaimana saya menghabiskan musim panas tahun 1982: Pembuatan Donkey Kong untuk Atari...

Bagaimana saya menghabiskan musim panas tahun 1982: Pembuatan Donkey Kong untuk Atari 2600

Hidup itu aneh.

Pada musim panas tahun 1982, saya menghabiskan sekitar tiga bulan membuat daftar 4.096 nomor, dengan cermat memastikan bahwa setiap nomor adalah nilai yang tepat , dan di tempat yang benar dalam daftar. Ketika saya selesai, satu-satunya bukti nyata dari pekerjaan saya adalah daftar angka yang panjang itu.

Ketika daftar itu lengkap, setelah hampir 1.000 jam kerja, mantan Connecticut Leather Company¹ memasukkan nomor (secara berurutan) ke dalam chip memori komputer dan kotak plastik dan menjualnya di toko-toko di seluruh negeri. Dan orang benar-benar membelinya.

The l i nomor yang saya buat diketahui publik sebagai versi Atari 2600 dari video game hit coin-op Donkey Kong . Untuk membuat daftar, saya menulis program komputer dalam 6502 bahasa assembly dalam waktu sekitar 3 bulan, dengan sedikit tidur. Dengan tekanan besar untuk mengirimkan kode akhir tepat waktu untuk penjualan liburan, saya menyelesaikan permainan dengan dorongan 72 jam terus menerus di meja saya, setelah itu saya diberi tahu bahwa saya tampak seperti zombie.

Ini adalah kisah tentang bagaimana daftar itu dibuat.

Untuk latar belakang, Nintendo Donkey Kong (game arcade ) adalah terobosan dalam desain video game, dan salah satu game yang dioperasikan dengan koin paling sukses di awal 1980-an. Untuk lebih jelasnya, saya tidak menciptakan Donkey Kong. Permainan ini dirancang oleh legendaris Shigeru Miyamoto , yang telah menjadi perancang video game paling sukses dalam sejarah. Itu adalah video game pertama yang menampilkan Mario, yang kemudian menjadi terkenal dan kaya dalam seri game Super Mario Bros (meskipun di Donkey Kong dia hanya disebut sebagai Jumpman). Donkey Kong adalah salah satu video game pertama yang menggunakan animasi dan penceritaan kualitas kartun untuk menarik pemain ke dalam aksi. Peran saya terbatas untuk membuat versi Atari 2600 dari mahakarya Miyamoto.

Keledai Kong berlangsung di sebuah lokasi konstruksi.¹ Pauline, gadis dalam kesusahan, dan pacar Mario, telah diculik oleh kera yang keras kepala². Sebagai Mario, pahlawan pemberani, tugas Anda adalah menyelamatkan sang putri dari primata yang kurang ajar. Game arcade ditampilkan di bawah ini.

Image for post

Image for post

Game arcade Donkey Kong © 1981 Nintendo (Foto oleh Kelly Sikkema di Unsplash )

Pada tahap pertama permainan, objeknya adalah berlari dan memanjat balok penopang bangunan yang sedang dibangun untuk mencapai Pauline (perhatikan kata damsel-in-distress di bagian atas layar, berteriak “tolong!”). Pemain mengontrol Mario dengan joystick dan tombol. Joystick menggerakkan Mario ke atas, bawah, kiri dan kanan, sedangkan tombol memungkinkan dia untuk melompat. Untuk menghentikan Mario mencapai Pauline, kera itu meluncurkan aliran barel yang stabil ke balok-balok miring untuk menghalangi kemajuannya ke atas gedung.

Jika Mario berhasil menghindari tong dan mencapai puncak gedung, dia menyapu Pauline, dan naik dari atas layar ke Tahap 2. Permainan arcade memiliki empat Tahap (level) secara keseluruhan, menampilkan petualangan serupa dan tantangan gameplay di berbagai area di lokasi konstruksi.

Pada tahun 1982, Donkey Kong adalah salah satu hal terbesar di arcade, menyedot seperempat tempat dengan kecepatan tinggi. Bahkan jika Anda tidak bermain video game, Anda mungkin pernah mendengar tentang Donkey Kong.

Pada saat yang sama, pasar video game rumahan berada di tengah lonjakan pertumbuhan. Pada awal tahun 1970-an, gadget video game rumahan standar Anda terhubung ke TV dan memainkan satu atau lebih game bola dan dayung seperti PONG.

Image for post

Image for post

Setiap pilihan permainan hampir sama, tetapi mereka memiliki nama-nama pintar seperti tenis, ping pong, dan hoki, untuk membuat Anda berpikir bahwa Anda memainkan sesuatu selain PONG. Ketika Anda bosan dengan permainan bola dan dayung, sistem masuk ke lemari (atau sampah).

Pada tahun 1977, Sistem Komputer Video Atari (VCS, atau 2600), diluncurkan. The 2600 membuat terobosan ke pasar video game rumahan selama beberapa tahun pertama meskipun harganya jauh lebih tinggi daripada pendahulunya, sebagian berkat kartrid game yang dapat dilepas. Mampu membeli game tambahan dalam bentuk kartrid sangat memperpanjang umur mesin, memungkinkan keluarga untuk mencoba sesuatu yang baru ketika mereka bosan dengan game yang mereka mainkan sampai mati.

Image for post

Image for post

Atari VCS (2600)

Namun, peristiwa yang mendorong Atari 2600 ke stratosfer adalah pelepasan Penjajah Luar Angkasa cartridge pada tahun 1980. Space Invaders, arcade hit besar yang dirancang oleh Tomohiro Nishikado dari perusahaan game Jepang Ta ito , adalah lisensi signifikan pertama dari arcade megahit ke pasar video game rumahan. Ketika tiba di Atari, tidak hanya kartrid itu laku keras, tetapi mesin Atari 2600 terjual empat kali lipat dalam semalam karena kerumunan penggemar membutuhkan konsol game untuk memainkan kartrid.

Industri telah belajar sesuatu yang berharga pelajaran. Melisensikan game arcade populer dan membawanya ke konsol rumah berpotensi menjadi emas murni.

Sekarang kembali ke bagian cerita saya. Pada pertengahan tahun 1970-an, sebagai mahasiswa di New Jersey, saya sangat beruntung mendapatkan pekerjaan paruh waktu di perusahaan elektronik yang beranggotakan empat orang, dalam bisnis merancang dan merekayasa gadget seperti kalkulator, jam digital, dan akhirnya elektronik. mainan. Sebagai pria rendah di tiang totem, tanggung jawab awal saya termasuk makan siang untuk para insinyur.

Seiring waktu, di perusahaan dengan orang-orang brilian, tetapi sumber daya terbatas dan kebiasaan terlalu menjanjikan, saya cepat- dilacak ke pembelajaran di tempat kerja, terutama dengan dilemparkan ke dalam api berkali-kali. Meskipun tidak mudah, itu sangat bermanfaat, dan berperan penting dalam menentukan jalur karier saya di masa depan.

Pada 1979/1980, meskipun saya masih belum menyelesaikan gelar sarjana saya, saya seorang insinyur otodidak yang berpengalaman. Pada saat itu, perusahaan tempat saya bergabung sebagai karyawan keempat telah bertambah besar, dan memfokuskan sebagian besar upayanya pada mainan elektronik genggam (cerita untuk posting lain). Saya suka mengerjakan mainan elektronik, tetapi saya juga terpesona oleh kesuksesan pasar dari sistem video game Atari. Dengan dukungan dari manajemen, saya membeli mesin Atari, membukanya, dan mengetahui cara kerjanya, sebuah proses yang disebut rekayasa balik. Segera setelah itu, saya merancang dan memprogram game Atari 2600 pertama saya (sebenarnya, video game pertama saya), Space Jockey , yang dirilis pada tahun 1982.

Image for post

Image for post

Space Jockey © 1981, US Games

Setelah itu, saya memutuskan untuk beralih dari itu pekerjaan pertama di bidang teknik. Karier saya berkembang pesat, dan sudah waktunya untuk menemukan sesuatu yang lebih bermanfaat bagi saya.

Pada bulan Mei 1982, sekarang sudah mandiri dan bekerja sendiri, saya ditawari kontrak untuk mengembangkan versi Donkey Kong yang kompatibel dengan Atari 2600. Coleco (Perusahaan Kulit Connecticut yang disebutkan sebelumnya), setelah melihat kesuksesan komersial versi rumah dari Space Invaders di Atari, pergi ke Nintendo dan memperoleh hak rumah eksklusif untuk game arcade terbesar di dunia pada saat itu. Sementara kesepakatan Donkey Kong terutama difokuskan pada konsol game Colecovision yang akan segera diluncurkan, sistem pesaing untuk Atari 2600, akan menjadi gila bagi Coleco untuk tidak memasarkan versi untuk sistem Atari, dengan audiens terbesar pemain di pasar dalam negeri.

Untungnya bagi saya, hanya ada sedikit insinyur independen yang memiliki pengetahuan yang diperlukan untuk menulis game Atari. Ada karyawan Atari (yang sangat sibuk, dan tidak ada waktu), desainer game di Activision (spin-off Atari, juga penuh dan tidak tersedia), dan tidak terlalu banyak lainnya. Sedangkan untuk saya, saya baru saja menganggur, dan bersedia dan mampu, jadi saya mengambil proyek.

Ini bukan pekerjaan yang mudah, seperti yang saya jelaskan di bawah ini. Saya sangat akrab dengan game arcade dan grafik, animasi, dan gameplaynya yang inovatif. Tugas yang ada adalah membuat versi permainan koin $ 3.000 yang layak secara komersial yang akan berjalan dengan kartrid Atari $ 30.

Tantangannya banyak, di antaranya:

– Saya punya waktu sekitar 3 bulan untuk menulisnya. Saya bisa menggunakan satu tahun.

– Saya punya 4.096 byte memori tempat menyimpan semua kode, grafik, dan efek suara. Selain itu, saya memiliki 128 byte memori RAM untuk melacak semuanya (CATATAN: bukan kilobyte, byte). Gim ini akan diprogram untuk berjalan pada mikroprosesor 1 MHZ, 8-bit. Angka-angka itu hampir dijamin akan membuat pemrogram berpengetahuan bertekuk lutut.

– Selain kendala di atas, konsol game tempat saya memprogram, Atari 2600 , sangat (maksud saya SEVERELY) terbatas dari sudut pandang teknis (yang merupakan diskusi yang sepenuhnya terpisah), terutama jika dibandingkan dengan mesin arcade $ 3.000. Sistem Atari 2600 pada awalnya dirancang untuk memainkan 2 game – PONG dan COMBAT. Akibatnya, kemampuan grafis 2600 dibatasi untuk menampilkan dua (2) sprite (animasi, karakter bergerak), ditambah satu (1) bola dan dua (2) rudal. Bola dan misil adalah objek proyektil persegi / persegi panjang sederhana sedangkan dua sprite memiliki lebar 8-bit, dengan kemampuan untuk menampilkan bingkai animasi yang belum sempurna.

PONG memiliki dayung kiri, dayung kanan, dan bola. COMBAT memiliki tank Player 1, tank Player 2, dan dua rudal, satu untuk setiap pemain. Asumsi Atari dalam mendesain Atari 2600 adalah bahwa semua game masa depan akan memiliki dua sprite yang bergerak dan hingga tiga objek proyektil. Ini berbeda dengan mesin arcade Donkey Kong, yang mampu menampilkan “128 sprite latar depan pada masing-masing 16×16 piksel”.

Selain file Keterbatasan jumlah objek di layar, karena keterbatasan memori, Atari 2600 hanya sebatas menampilkan grafik latar belakang yang unik hanya untuk 1/2 layar. Dengan kata lain, sisi kanan layar hanya bisa menampilkan salinan atau refleksi dari sisi kiri layar. Karena landai miring ikonik Donkey Kong bersifat non-simetris (bukan salinan atau pantulan saat membandingkan kiri ke kanan), saya harus menemukan cara untuk “mengatasi” perangkat keras untuk mencapai landai miring.

Untuk menulis game ini, saya membuat program komputer dalam bahasa yang disebut bahasa assembly 6502. Program tertulis diproses oleh alat berbasis komputer yang disebut assembler , yang berjalan terus saya Apple II komputer pribadi. Output dari assembler adalah daftar 4.096 angka, dengan setiap angka memiliki nilai antara 0 dan 255 (karena misteri sistem bilangan biner, yang mungkin saya jelaskan di beberapa titik di posting mendatang).

Selain menulis program, saya juga harus membuat grafik komputer yang akan ditampilkan di layar televisi. Pada saat itu, tidak ada alat untuk membuat grafik seperti itu, jadi saya mewarnai kotak di selembar kertas grafik untuk membuat latar belakang, masing-masing karakter, seperti Mario, dan item lain, seperti palu, dan individu. digit yang menampilkan skor. Gambar di sebelah kiri menunjukkan Mario dalam posisi berdiri, terdiri dari 8 piksel (yaitu piksel=elemen gambar) pada setiap baris, dan 18 baris grafik. Gambar di sebelah kanan adalah tampilan lebih dekat dari kepala Mario, menunjukkan bagaimana setiap piksel diisi dengan warna pada kertas grafik selebar 8 sel. Karena sistem Atari terbatas pada satu warna per baris (per karakter), perhatikan bahwa Mario terdiri dari 18 garis warna tunggal.

Image for post

Image for post

Setelah grafik digambar di kertas grafik, saya harus mengubahnya menjadi angka (ya, kami kembali ke daftar 4.096 angka), dengan setiap baris grafik Mario mengambil satu angka untuk pola titik, dan angka kedua untuk warnanya. Jadi gambar berdiri Mario, seperti yang ditunjukkan tentang, mengambil sekitar 36 (18 x 2) dari 4.096 byte data saya yang tersedia.

Image for post Sementara saya melakukan sebagian besar pekerjaan saya di Apple II, pada titik tertentu, saya harus memasukkan 4.096 byte ke mesin Atari untuk melihat apakah program yang saya tulis melakukan apa yang saya rancang untuk dilakukan (program yang jarang dilakukan ). Saat menulis program permainan, Anda akan menulis kode selama satu jam atau lebih, mengumpulkan apa yang telah Anda tulis, dan kemudian mencoba program untuk melihat apakah itu berhasil. Salah satu cara untuk melakukannya adalah dengan mengambil daftar nomor, yang disebut sebagai biner , dan memasukkannya ke dalam chip komputer di dalam kartrid, untuk dihubungkan ke Atari. Metode itu, sayangnya, membutuhkan banyak waktu, dan bukan sesuatu yang ingin Anda lakukan 20 kali sehari. Image for post Karenanya, saya merancang papan elektronik khusus yang menghubungkan sistem Atari langsung ke komputer Apple II. Setelah perakitan program selesai, papan tersebut memungkinkan Atari untuk langsung menjalankan program (seolah-olah sebuah kartrid dicolokkan ke konsol game). Papan antarmuka Atari kustom saya ditampilkan di bawah ini.

Image for post

Image for post

Saat saya memiliki game dalam kondisi yang cukup bagus (dari sebuah drama sudut pandang), saya sekitar 1.200 byte melebihi alokasi saya 4.096. Pada saat itu, saya tidak punya pilihan selain memulai proses pengoptimalan kode , atau seperti biasa kami menyebutnya, memotong byte. Untuk memotong byte, saya harus melihat program, rutin demi rutin, dan mencari cara untuk menyelesaikan tugas yang sama dalam kode yang lebih sedikit (tanpa merusak fungsionalitas). Kedengarannya mengerikan, tapi sebenarnya itu salah satu hal favorit saya untuk dilakukan.

Akhirnya saya memiliki versi gim yang sudah selesai.

Gambar di bawah ini menunjukkan layar Tahap pertama dari Atari 2600 versi Donkey Kong. Mengacu pada gambar, saya harus membuat grafik dan menulis kode komputer untuk menghasilkan landai miring non-simetris (dalam warna ungu), 4 rolling barel (hanya satu yang ditampilkan di sini), Mario, Donkey Kong, Pauline, palu, sebuah “kehidupan ”(Blok di sudut kanan atas), dan enam (total) digit skor. Semua objek yang saya cantumkan di atas dihitung dalam batas “dua (2) sprite ditambah satu (1) bola dan dua (2) rudal” mesin Atari. Kode bahasa assembly yang rumit dan berjangka waktu rumit digunakan untuk mengelabui perangkat keras agar menampilkan banyak salinan unik dari objek terbatas yang tersedia (tentu saja diskusi untuk lain waktu).

Atari 2600 Donkey Kong © Coleco Industries, Inc, © Nintendo

Meskipun saya merasa telah melakukan pekerjaan terbaik di sebuah tugas yang hampir mustahil, pelabuhan itu tidak sempurna. Karena keterbatasan memori, saya hanya dapat menyertakan dua dari empat Tahapan game arcade (seperti yang disebutkan di atas, ada empat layar gameplay yang berbeda di mesin koin-op asli). Saya mendapat banyak kesedihan selama bertahun-tahun tentang keputusan itu tetapi secara teknis tidak mungkin menambahkan apa pun ke kartrid, kecuali penerbit, Coleco, setuju untuk menggunakan memori kartrid yang lebih besar, yang akan memberi saya 8.192 byte untuk bekerja dengan. Mengingat biaya tambahan produksi, mereka menurun. Dengan kenyataan itu, saya fokus untuk membuat versi game yang paling dapat dimainkan dan menyenangkan secara grafis yang dapat dilakukan mengingat banyak kendala.

Kartrid permainan Donkey Kong 2600 adalah kesuksesan komersial yang besar untuk Coleco. Saya membaca laporan analis bertahun-tahun lalu yang menyatakan bahwa, meskipun Donkey Kong versi Atari 2600 adalah salah satu dari 550 produk yang dikeluarkan Coleco tahun itu, itu mewakili 25% dari total pendapatan mereka. Perkiraan konservatif pendapatan ritel dari game pada tahun 1982 saja adalah $ 100 juta dolar, setara dengan sekitar $ 269 juta dolar pada tahun 2020, atau sekitar $ 65.670 per setiap angka dalam daftar 4.096 angka tersebut.

Saya bersyukur berada di tempat yang tepat pada waktu yang tepat untuk mengerjakan game ikonik seperti itu. Itu tentu saja upaya mematahkan punggung, tapi saya tidak akan menukar pengalaman itu dengan apa pun.

Semoga Anda menikmati ceritanya.

Catatan kaki:

1: The Connecticut Leather Company? Sebelum menjadi terkenal dan kaya dengan Cabbage Patch Dolls, dan video game , Coleco dikenal sebagai Perusahaan Kulit Connecticut.

1: Mengapa situs konstruksi, Anda bertanya? Pertanyaan bagus. Jawabannya sederhana karena itu berfungsi untuk gameplay. Anda melihat banyak hal aneh dalam video game karena alasan itu, dengan jawaban perancang game standar, “ini adalah video game, saya tidak butuh alasan.” Pernah bertanya pada diri sendiri mengapa di Angry Birds Anda menggunakan katapel untuk melemparkan burung ke bangunan yang dibangun oleh babi? Jawaban yang sama.

2: Kera Keras Kepala Perancang game, Shigeru Miyamoto, awalnya menyebut kera sebagai kera yang keras kepala. Ketika diterjemahkan dari bahasa Jepang ke bahasa Inggris, kata keras kepala diterjemahkan sebagai “keledai”, untuk alasan yang jelas. Jadi nama uniknya “Donkey Kong.”

Read More

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments