• Komputer,  Software,  Teknologi

    Screenshot

    Untuk saat ini, mengambil screenshot dari layar amat sangat mudah. Untuk OS Windows, tinggal tekan tombol “Print Screen”, layar sudah masuk ke clipboard, siap di-paste dimanapun. Tapi dulu, saat multi tasking belum umum, mengambil gambar layar tidak semudah yang dibayangkan.

    Di DOS, program yang sedang aktif yang bertanggung jawab me-“monitor” tombol apa yang ditekan oleh user di keyboard, dan program itu juga yang nantinya melakukan aksi atas event keyboard tersebut. Dan normalnya, hanya ada 1 program yang aktif pada suatu saat.

    Terus gimana kalo mau ngambil tampilan layar? Saat handphone belum ada, dan tidak efektif mengambil foto dari layar komputer untuk sekadar screenshot, sementara tombol print-screen hanya akan mengirim tampilan layar ke printer.

    Disinilah program penangkap layar (screenshot) berperan. Ya, satu program khusus yang tugasnya menangkap layar dan menyimpannya sebagai file gambar di harddisk, salah satu yang terkenal adalah Pizzaz Plus (PZP).

    Terus gimana tuh caranya? Bukannya tadi dibilang cuma 1 program aktif yang bisa ngontrol keyboard?

    Karena saya pernah bikin program yang kerjanya seperti PZP, makanya saya secara umum bisa menggambarkan prosesnya:

    • Saat berjalan, program mendaftarkan dirinya sebagai program TSR (Terminate and Stay Resident) yang akan aktif apabila keyboard ditekan dengan kombinasi tombol tertentu (keyboard hook). Lalu program keluar (kembali ke DOS prompt).
    • Saat shortcutkey yang sesuai ditekan, maka program akan mengakses memori layar. Pada mode text, tiap karakter pada layar bisa diakses kode ascii serta properti warnanya. Pada mode grafik, program bisa mengakses nilai RGB dari tiap pixel.
    • Program akan menyimpan dalam file gambar sesuai yang sudah dikonfigurasi.
    • Biasanya ada suara “beep” sesudah program berhasil menyimpan screenshot layar.

    Lumayan ribet kan?

  • Teknologi

    Nostalgia

    Awalnya waktu liat blog-nya Microsoft “Re-Open-Sourcing MS-DOS 1.25 and 2.0” inget komputer jaman dulu, waktu pertama kali punya komputer, dengan Prosesor Intel 386-DX 33 MHz, RAM 4MB, disk drive ada 2 yang 3,5″ dan 5,25″ (tanpa harddisk). Dengan casing warna putih, bukan yang tower (bukan yang berdiri, tapi yang rebahan, jadi monitor ditaruh di atasnya), dan ada tombol “Turbo” nya selain tombol Power dan Reset. Kalo dibandingin hardwarenya, udah beda banget, sama handphone murah aja udah kalah jauh. Begitu booting, di file CONFIG.SYS udah ditambahin eksekusi RAMDRIVE.SYS untuk bikin disk virtual sebesar 2MB pake RAM, jadi RAM yang tadinya 4MB sisa 2MB aja, dan jangan salah, 2MB ini lebih dari cukup karena program-program yang jalan biasanya cuma memakai 640KB RAM base memory.

    Terus terang saya jadi kangen sama game Gorilla dan Nibbles, game ini dibuat pake QBasic dan karena QBasic itu jenisnya interpreter (bukan compiler) jadi kalau mau ngejalanin gamenya, harus buka QBasic dan load file gorilla.bas atau nibbles.bas, source-code gamenya, keren kan? Nah, sekarang saya mau respawn (menghidupkan kembali) program-program kenangan itu.

    QBasic. Sumber gambar: wikipedia

    Install VirtualBox terus untuk OS-nya, saya pakai versi open-source yang kompatibel dengan DOS yaitu FreeDOS. Instalasi FreeDOS cukup lancar walaupun ada kendala sedikit saat booting, setelah diselidiki ternyata HIMEMX.EXE yang dijalankan di FDCONFIG.SYS entah kenapa error, jadi harus di-skip biar bisa jalan installernya. Saya pilih full install, saya gak tau kenapa ini FreeDOS file ISO untuk instalasinya cukup besar, lebih dari 400MB, padahal seinget saya beberapa tahun lalu gak sampe 40MB. Sesudah cari-cari infonya, ternyata program yang dipaketin lumayan banyak termasuk game. Tapi semua belum terinstall, jadi sesudah instalasi FreeDOS selesai dan udah reboot, jalankan FDIMPLES untuk milih paket program apa aja yang mau diinstall.

    Di FDIMPLES ada FreeBasic, compiler Basic yang free dan open-source, tapi begitu di-compile ada error banyak terus baris terakhir ada tulisan “Too many errors, exiting”. Ya udah deh, nyerah pake FreeBasic. Dan sesudah nyari informasi di Internet, kaya’nya gak ada lagi program open-source yang seperti QBasic.

    End of QBasic Journey: mission failed.
  • Teknologi

    Kalo lagi “bengong” otak istirahat gak?

    Sebenernya yang saya omongin adalah “otak”nya komputer, alias CPU. Awalnya waktu liat blog-nya Microsoft “Re-Open-Sourcing MS-DOS 1.25 and 2.0” inget komputer jaman dulu, dan mau nostalgia sama program yang namanya “Seize The Day“. Mungkin programnya semacem organizer gitu, tapi yang saya perhatiin cuma gambar animasi disampingnya. Animasinya bagus banget, apalagi kalo ngeliatnya tahun 1995-an pake Windows 3.1.

    Seize The Day Respawned

    Begitu hunting akhirnya dapet paket lengkap DosBox+Windows 3+Seize The Day. Dan akhirnya malah nyari-nyari software jaman dulu kala. Dapet banyak tuh program, tapi begitu saya install Lotus 123 malah gak bisa jalan. Cari-cari info lagi ternyata yang namanya DosBox dirancang untuk (spesialisasi) menjalankan game-game DOS, untuk menjalankan program DOS disarankan install MS-DOS (atau FreeDOS) di VirtualBox.

    Karena memang udah kangen banget, akhirnya dapet deh VirtualBox + MsDOS 6 + Windows 3.11. Tapi yang susah adalah nyari driver untuk mouse, sound card, CD-ROM dan VGA. Di tahun 1994 VGA dengan memori 2MB udah mantap banget.

    Virtualisasi jalan lancar, tapi ada yang aneh, komputer jadi panas dan CPU kerja keras padahal cuma jalanin MS-DOS di VirtualBox. Memangnya berapa persen sih CPU yang dipake dos nganggur? Ternyata jawabnya: full 100%. Jaman dulu gak ada istilah “Power Management”, dan prosesor full speed setiap saat.

    Dan sampailah kita ke pertanyaan yang jadi judul tulisan ini, kalo lagi nganggur (bengong) prosesor ngerjain apaan sampe full gitu? Saya nemu artikel yang ngejelasin secara teknis tentang apa yang dilakukan prosesor saat idleWhat’s a CPU to do when it has nothing to do?

    Sama seperti otak manusia yang tidak pernah istirahat, prosesor juga terus kerja walau gak ada kerjaan penting.

  • Komputer,  Teknologi

    Random System Shutdown

    Recently, my notebook (LMDE 2) having random shutdown, without warning or anything, just like the power was cut off. The last entry of system log was anacron. I’ve checked. It’s empty, no cron job scheduled. I don’t need any scheduled job anyway, so bye-bye anacron. I don’t have definitive conclusion right now, just watch and see.

    Btw, thanks to lnav (log file navigator) from http://lnav.org/ for being a simple and nice log viewer.

    Nyoba entry blog pake bahasa Inggris, buat ngelancarin. Uhuy.

  • Memori,  Omong Kosong,  Programming,  Teknologi

    Ternyata…

    Alkisah, pada jaman dahulu kala, saya pernah kepikiran untuk bikin reporting server, dimana semua report yg direquest akan masuk ke daftar antrian dan akan di eksekusi sesuai prioritas. Di servernya akan ada daftar request dan statusnya. Data yang dihasilkan untuk setiap request report akan disimpan. Tiap report yg dicetak akan ada “signature” atau kode tertentu yang mengarah ke id request report. Itu sekitar tahun 2012.

    Tahun ini baru saya tau kalau ternyata udah ada yang bikin kaya gitu.