Salah satu hobi saya adalah mengenal komputer lama. Sebenarnya selain mengenal pengen juga memiliki berbagai komputer lama, tapi sayangnya: harganya biasanya sangat mahal dan saya tidak punya space yang cukup di tempat tinggal saat ini. Saya baru saja membaca buku lama berjudul: The First Book of KIM yang berisi koleksi program KIM-1.
KIM-1 (Keyboard Input Monitor) merupakan “single board computer” yang diluncurkan April 1976 (sebelum saya lahir) dengan CPU 6502, RAM 1 kilobyte, input keypad heksadesimal, dan output berupa 7 segment display 6 digit. Kit paling murahnya 245 USD dan tanpa penyimpanan permanen (harus ditambahkan tape eksternal jika ingin menyimpan program yang kita tulis).
KIM-1 ini bentuknya hanya berupa board saja, tanpa casing. Keypad heksadesimal digunakan untuk memasukkan program. Tentunya program harus dimasukkan langsung dengan bahasa mesin langsung ke RAMnya. Untuk membaca memori di suatu alamat tertentu, kita bisa menekan tombol AD (address), lalu alamatnya, misalna: AD 0100. Ketika di memori tertentu, kita bisa mengedit isinya dengan menekan DA (data), lalu mengetik memori yang ingin diedit. Jika sudah di memori tertentu, kita bisa menekan + untuk ke memori berikutnya, jadi tidak perlu mengetik 0101 jika sudah di memori 0100. Dengan cara ini program bisa dimasukkan cukup cepat.
Jika kita salah membuat program dan programnya stuck dalam loop, tombol ST (Stop) bisa ditekan. Debugging bisa dilakukan dengan saklar SST (single step). Secara umum keseluruhan fungsi bisa dipelajari dengan singkat, hanya saja pemrograman dalam bahasa mesin butuh waktu belajar yang cukup lama.
Jika kita membeli aksesori tambahan seperti: RAM ekstra, keyboard, terminal video (atau kit untuk menghubungkan benda ini ke TV) maka pemrograman dalam berbagai bahasa bisa dilakukan (termasuk juga BASIC). Tapi defaultnya kita perlu memprogram dalam bahasa mesin. Benar-benar bahasa mesin, bahkan defaultnya tidak ada assembler, kita harus menerjemahkan assembly ke bahasa mesin secara manual.
Untungnya ROM KIM-1 (2KB) sudah memiliki beberapa subrutin yang bisa dipakai, misalnya untuk menampilkan angka di 7 segment display atau untuk membaca key mana yang ditekan. Tanpa subrutin dasar ini, membaca input dan membuat output akan sulit.
Dengan kemampuan yang sangat terbatas ini, apa yang bisa dilakukan? ternyata ada banyak sekali, dalam buku The First Book of KIM dicontohkan banyak program yang tidak butuh aksesori tambahan, misalnya:
- Penjumlahan (memfungsikan KIM sebagai kalkulator sederhana)
- Jam
- Game tebak angka
- Game blackjack
- Latihan mengetik di keypad (muncul angka di display, kita harus tekan tombol yang sesuai)
Display 7 segmentnya bisa dikendalikan sehingga bisa membuat simbol selain angka. Salah satu gamenya dengan kreatif menggunakan garis-garis sebagai bentuk binatang (lihat gambar di bawah)
Bukan cuma game sederhana saja yang bisa dibuat. Salah satu game pertama yang sukses adalah untuk KIM-1 (Microchess) yang terjual sampai 50 ribu kopi (satuannya 10 USD).
KIM-1 juga bisa dihubungkan ke speaker sehingga bisa memainkan nada sederhana. Selain itu KIM-1 bisa dihubungkan bisa dihubungkan ke berbagai hardware lain, misalnya untuk mengendalikan lampu rumah dengan menggunakan relay.
Saat ini sudah banyak yang membuat emulator KIM-1 baik dalam bentuk software (misalnya ini versi web) maupun hardware (misalnya KIM UNO). Jadi jika tertarik, sekarang gampang sekali mencobanya tanpa mengeluarkan uang sama sekali. Hardware aslinya masih bisa dicari di ebay, tapi harganya super mahal: kit dengan beberapa aksesorinya sekitar 10 ribu USD.
Dulu orang-orang harus benar-benar mengerti dasar komputer (sampai level bahasa mesin) karena keterbatasan hardware. Sementara sekarang ini lulusan informatika banyak yang tidak paham bagaimana hardware bekerja. Salah satu alasannya adalah komputer saat ini sudah terlalu kompleks. Mungkin mereka perlu sedikit diperkenalkan dengan teknologi lama, di mana programmer harus mengedit RAM secara langsung dan memasukkan kode mesin secara manual.
Membaca dan bereksperimen dengan berbagai komputer lama membuat saya takjub dengan perkembangan teknologi. Saya juga jadi sangat menghargai kreativitas pionir komputer dalam memanfaatkan komputer yang masih sangat terbatas.