17 Agustus 2008

Game Emulation

DIRGAHAYU REPUBLIK INDONESIA yang ke-63!!!

Blog "Game Baheula" ini gw mulai untuk sharing mengenai passion gw tentang mainan jaman dulu (dari jaman Atari sampai Super Nintendo, arcade juga gw masukin). Mungkin di antara kawan2 yang juga hobi main game jaman baheula kita bisa bikin komunitas khusus untuk sharing informasi. BTW kalau ngulas game jadul rasanya belum afdol kalau kita tidak mengulas juga tentang emulation.

Apa itu emulation? (artikel di bawah ini diambil dari Wikipedia Indonesia)

Melalui penggunaan emulation kita dapat memainkan game-game klasik kesukaan kita seperti Super Mario Bros dan Sonic the Hedgehog di komputer kita. Tentu saja kita tidak dapat begitu saja memasukkan cartridge game ke dalam disk drive komputer. Konsep emulation memang agak susah untuk dijelaskan tetapi pada dasarnya emulation adalah suatu proses untuk meniru desain internal dari suatu sistem. Untuk menjalankan program pada sistem yang berbeda membutuhkan program pendukung yang disebut emulator. Mendesain emulator itu sendiri tidaklah mudah dan kualitas hasil emulationnya tidak selalu sempurna. Tetapi sekarang ini sudah banyak sekali emulator yang beredar di Internet dan kualitas emulator-emulator tersebut berkisar dari buruk hingga hampir sempurna.

Emulator memungkinkan komputer untuk bekerja sesuai dengan hardware sistem yang diemulasikan. Tetapi emulator tidaklah ada gunanya tanpa didukung oleh game. Game-game ini disebut sebagai ROM atau Disk Image yang merupakan hasil copy dari game-game dalam format cartridge atau disket sistem yang bersangkutan. Misalnya, game Sega hanya akan bekerja apabila dijalankan pada emulator Sega saja.

Kebanyakan emulator tidak mampu untuk secara sempurna meng-emulate sistem yang hendak ditirunya. Contoh dari ketidaksempurnaan tersebut adalah problem pada timing (framerate yang lambat), gambar atau efek video yang tidak benar, suara yang kacau atau bahkan tidak bersuara sama sekali, problem di joystick, dan lain sebagainya.

Memprogram emulator adalah hal yang amat sulit dan dimulai dari mengumpulkan informasi tentang sistem yang hendak di-emulate dan mengakali komputer agar mampu meniru hardware dan instruksi-instruksi yang dijalankan oleh sistem tersebut. Salah satu contohnya adalah menulis program untuk mengemulasi cara kerja processor kuno seperti Apple II atau Intel 8086.

Emulator terdiri dari 2 jenis: single-system/dedicated emulator dan multi-system emulator. Single-system/dedicated emulator hanya dapat meng-emulate 1 jenis sistem, sedangkan multi-system emulator dapat meng-emulate beberapa jenis sistem sekaligus. Pada dasarnya kualitas single-system/dedicated emulator lebih baik daripada multi-system emulator karena hanya didesain khusus untuk 1 jenis sistem sehingga kemungkinan untuk terjadi compatibility problem dapat diminimalisasi. Selain itu kebutuhan resources untuk single-system/dedicated emulator biasanya lebih kecil dibandingkan multi-system emulator.

Ada pertanyaan, apakah semua sistem sudah diemulate? Jawabannya, tergantung. Ada 3 faktor utama yang menentukan kemungkinan suatu sistem diemulate atau tidak:

  1. Kepopuleran: semakin populer suatu sistem, maka semakin banyak orang yang berusaha untuk meng-emulate sistem tersebut.
  2. Tersedianya informasi: semakin banyak informasi yang tersedia tentang suatu sistem (baik hardware maupun software) akan amat membantu proses penulisan emulator.
  3. Kesulitan teknis: banyak sekali game yang diproteksi dengan menggunakan encryption. Hal ini akan membuat sulit emulation sistem tersebut. Selain itu, sistem baru seperti halnya Xbox 360 sulit untuk di-emulate karena kebanyakan komputer belum memiliki processing power yang kuat atau informasi yang cukup mengenai CPU/BIOS/OS console untuk meng-emulate sistem yang baru itu.
Emulator tanpa ROM atau Disk Image adalah tidak ada gunanya, karena ROM atau Disk Image inilah yang merupakan game sebenarnya. Perhatikan analogi berikut ini: emulator adalah console game dan ROM atau Disk Image adalah cartridge gamenya. Jadi, console Nintendo tanpa game tidaklah ada gunanya.

Kata ROM dan Disk Image sering dipakai dan dianggap sama. Sebenarnya ROM adalah copy dari cartridge game, sedangkan Disk Image adalah copy dari disket atau CD. Jadi, misalnya copy dari game Nintendo adalah ROM dan copy dari game PC adalah Disk Image.

Size suatu ROM berbeda-beda tergantung sistem yang di-emulate, biasanya berkisar antara 1KB hingga 1GB lebih (tergantung jenis console/arcade). Kadang-kadang ROM terdiri dari beberapa file yang merupakan suatu kesatuan dalam format ZIP. ROM ini harus di-load melalui emulator untuk dapat dimainkan, jadi ROM tidak dapat dijalankan seperti halnya program .EXE.

Sekarang, apakah emulation itu legal dan tidak melanggar hukum? Sejauh mata memandang sebenarnya emulator itu sendiri tidak melanggar hukum sejauh emulator tersebut tidak mengandung materi yang di-copyright seperti misalnya BIOS image sistem tertentu. Lain halnya dengan ROM. Pada umumnya semua ROM di-copyright tetapi untuk game klasik kadang-kadang produsen game tersebut bahkan sudah tidak aktif lagi alias sudah tutup. ROM juga bisa dikatakan legal apabila kita memang memiliki game aslinya atau game tersebut sudah dimasukkan ke dalam kategori public domain bagi sang pembuat.

2 komentar:

  1. hurufnya kecil sekali. mata saya sakit bacanya

    BalasHapus
  2. Wah kekecilan yah? Maaf yah, nanti coba saya gedein. Tapi kalau Anda pakai Firefox bisa coba Ctrl-scroll wheel mouse untuk memperbesar:)

    BalasHapus