Nama : Muhammad Luthfi
Kelas : 1CA
NIM : 061430700516


Assalamualaikum wr.wb

Pada postingan kali ini saya akan membahas tentang cara membuat program residen pada assembly. Tapi kita harus tahu dulu sebenarnya apa itu program residen???

Menurut Module dari dosen saya :

Program residen adalah program yang akan menetap di memory seperti halnya
DOS dan program residen ini akan berada tepat diatas Operating System. Program
residen akan dianggap sebagai bagian dari Operating System sehingga bila
154dijalankan program aplikasi maka program aplikasi tersebut akan ditaruh diatas
program residen sehingga program residen kita tetap utuh.

Menurut saya pribadi :

Program Residen adalah sebuah program yang jalan di memory kalau kita jalankan, sampai kita merestart komputer, efeknya tidak akan hilang. Tetapi beda lagi kalau di dosbox, karena dosbox merupakan virtualisasi dari DOS itu sendiri. Jadi bisa diartikan dapat membuat virus. LOL

Disini saya memiliki 3 buah bentuk program residen. tapi yang saya bahas sepenuhnya hanyalah program no.1 nya saja. Untuk 2 program lainnya anda bisa coba sendiri.

Program No. 1 : Mengunci Capslock



Aksi    MACRO
        MOV AX,40H
        MOV ES,AX
        MOV AX,ES:[17H]
        OR AX,01000000b
        MOV ES:[17H],AX
        ENDM

        .MODEL SMALL
        .CODE
        ORG 100H

TData : JMP Res_kan
        NoInt EQU 1Ch

Bag_Res PROC
        PUSH AX
        PUSH BX
        PUSH CX
        PUSH DX
        PUSH ES
        PUSH DI
        PUSH DS
        PUSH SI

        Aksi

        POP SI
        POP DS
        POP DI
        POP ES
        POP DX
        POP CX
        POP BX
        POP AX
        IRET
Bag_Res ENDP

Res_Kan :
        MOV AH,25H
        MOV AL,NoInt
        LEA DX,Bag_Res
        INT 21H

        LEA DX,Res_Kan
        INT 27H
END     TData

Bila program diatas dijalankan, maka efek yang akan terjadi adalah Capslock anda akan selalu hidup, sehingga bisa dikatakan tombol Capslock menjadi tak berfungsi pada keyboardnya. Untuk menjalankan program ini bisa menggunakan DOSBOX.

Instruksi yang dijalankan

Berdasarkan gambar diatas kita bisa menyimpulkan intruksi yang bisa dijalankan setelah dosbox dijalankan adalah :

mount y d:\1ca  
kode diatas berarti memvirtualkan direktory d:\1ca ke drive y: seolah olah drive y itu ada
d:\1ca itu adalah tempat dimana ketiga komponen assembly berada.

y:
kemudian kita masuk ke drive y tadi, yang sudah direfleksikan ke d:\1ca

Instruksi kedua

Bila sudah menjalankan prosedur diatas, selanjutnya kita tinggal men-tasm program residen ini, disini saya menamakan program ini residen1.asm sehingga instruksi yang saya lakukan adalah tasm residen1 kemudian tlink /t residen1. dan langkah akhir adalah menjalankan program dengan menginput nama program yaitu residen1


Program ini bila dijalankan

Program ini akan mematikan fungsi 'Capslock' didalam keyboard. Karena kita menggunakan nya di dalam dosbox, yang terjadi hanyalah program ini berfungsi di dalam dosbox, fungsi program ini akan berakhir jika anda mematikan program dosbox.

2 Contoh program residen lainnya :

1.Program yang mengubah tombol PrtScr menjadi Ctrl+Break

Silahkan ikuti urutan program dibawah ini.

Arah_Vec  MACRO NoInt,Alamat
          MOV AX,Alamat[2]
          MOV DS,AX
          MOV DX,Alamat
          MOV AH,25H
          MOV AL,NoInt
          INT 21H
          ENDM

Ambil_Vec MACRO NoInt,Alamat
          MOV AH,35H
          MOV AL,NoInt
          INT 21H
          MOV Alamat,BX
          MOV Alamat[2],ES
          ENDM

.MODEL SMALL
.CODE
ORG 100H

TData : JMP Res_kan
Break   EQU 23H
PrtScr  EQU 05
Addr_Break      DW ?,?

Res_Kan :
Ambil_Vec Break,Addr_Break
Arah_Vec Prtscr,Addr_Break

INT 20H
END TData


2. Program yang mengubah tombol PrtScr menuju program buatan sendiri.


.MODEL SMALL
.CODE
ORG 100H

TData :  JMP Res_kan
          Pesan DB ' Interupsi 5<PrtScr> telah di belokkan !!'
          NoInt EQU 05h

Bag_Res PROC
        PUSH AX
        PUSH BX
        PUSH CX
        PUSH DX
        PUSH ES
        PUSH DI
        PUSH DS
        PUSH SI

        MOV AX,1300H
        MOV BL,01001111b
        MOV BH,00
        MOV DL,20
        MOV DH,12
        MOV CX,44
        PUSH CS
        POP ES
        LEA BP,Pesan
        INT 10H

        POP SI
        POP DS
        POP DI
        POP ES
        POP DX
        POP DX
        POP BX
        POP AX
        IRET
Bag_Res ENDP

Res_Kan :
        MOV AH,25H
        MOV AL,NoInt
        LEA DX,Bag_Res
        INT 21H

        LEA DX,Res_Kan
        INT 27H

END     TData
Demikian lah posting program residen dari saya. Terima kasih. Jika ada salah kalimat/ kata saya mohon maaf



  • 0 comments:

    Post a Comment

    > Berkomentarlah dengan bahasa yang baik dan bisa dimengerti
    > Komentarlah dengan menggunakan Open ID (Google dll.)
    x OOT ( Out Of Topic)
    x Spam
    x Link Iklan/promosi tanpa seizin saya