#include <stdlib.h>
#include "screen.cpp"
#define MOUSE_INT 0x33
UCHAR detectMouse(UCHAR *btn);
void showMouse(void);
void hideMouse(void);
int main (void)
{
Screen *layar = new Screen();
UCHAR state, btn;
layar->setMode(0x03);
layar->setCursorPos(4, 14);
state = detectMouse(&btn);
if (state)
{
layar->writeString("Mouse siap digunakan.");
layar->setCursorPos(6, 14);
layar->writeString("Pointer mouse ditampilkan.");
showMouse(); delay(7000);
layar->setCursorPos(6, 14);
layar->writeString("Pointer mouse disembunyikan.");
hideMouse();
}
else
{
layar->writeString("Mouse tidak siap.");
}
delay(5000);
delete layar; return EXIT_SUCCESS;
}
UCHAR detectMouse(UCHAR *btn)
{
UCHAR state, button;
asm mov ah, 0x00; /* Register AH = 0 */
asm mov al, 0x00; /* Register AL = 0, AH:AL = 0:0 */
asm int MOUSE_INT; /* Laksanakan interupsi 0x33 */
asm mov state, al; /* Salin nilai AL ke state */
asm mov button, bl; /* Salin nilai BL ke button */
*btn = button;
return state;
}
void showMouse(void)
{
asm mov ah, 0x00; /* Register AH = 0 */
asm mov al, 0x01; /* Register AL = 1, AH:AL = AX = 1 */
asm int MOUSE_INT; /* Tampilkan mouse */
return;
}
void hideMouse(void)
{
asm mov ah, 0x00; /* Register AH = 0 */
asm mov al, 0x02; /* Register AL = 2, AH:AL = AX = 2 */
asm int MOUSE_INT; /* Sembunyikan mouse */
return;
}
Gambarnya Sebagai Berikut :
Penjelasannya :
Program contoh20.cpp menambahkan satu fungsi baru, yaitu fungsi hideMouse 58 untuk menyembunyikan pointer mouse. Alur program contoh 20.cpp adalah sebagai berikut:
- Deteksi mouse, jika mouse tidak siap digunakan maka pesan bahwa mouse tidak siap digunakan ditampilkan. Kemudian program berhenti secara otomatis setelah jeda lima detik.
- Jika mouse terdeteksi, maka pointer mouse akan ditampilkan. Setelah jeda selama tujuh detik pointer mouse akan disembunyikan. Setelah itu program berhenti secara otomatis setelah jeda lima detik.
0 komentar:
Posting Komentar