Welcome

Selamat datang di blog pecinta paris

MEMBUAT MENU SOROT

Selasa, 09 Desember 2014

MEMBUAT MENU SOROT
Dewasa ini, menu-menu yang disajikan oleh program yang besar hampir semuanya dalam bentuk menu sorot. Kini dengan sedikit pengetahuan mengenai memory layar akan kita buat suatu menu sorot yang sederhana. Menu ini bisa dikembangkan atau digunakan untuk program yang anda buat.
Cls MACRO………………. ; Macro untuk menghapus layar
MOV AX,0600h
XOR CX,CX
MOV DX,184Fh
MOV BH,10 ……………...; Atribut Hijau diatas hitam
INT 10h
ENDM
GotoXY MACRO X,Y….. ; Macro untuk memindahkan kursor
MOV AH,02
XOR BX,BX
MOV DH,Y
MOV DL,X       
INT 10h
ENDM
SimpanL MACRO…….. ; Macro untuk menyimpan seluruh
LOCAL Ulang …………...; isi layar monitor
MOV AX,0B800h
MOV ES,AX
MOV CX,4000
XOR BX,BX
Ulang:
MOV AL,ES:[BX]
MOV Layar[BX],AL
INC BX
LOOP Ulang
ENDM
BalikL MACRO ………; Macro untuk mengembalikan semua
LOCAL Ulang ………..; isi layar yang telah disimpan
MOV CX,4000
XOR BX,BX
Ulang:
MOV AL,Layar[BX]
MOV ES:[BX],AL
INC BX
LOOP Ulang
ENDM
Sorot MACRO X,Y……. ; Macro untuk membuat sorotan
LOCAL Ulang……………. ; pada menu
MOV BL,Y
MOV AL,160
MUL BL
MOV BX,AX
MOV AL,X
MOV AH,2
MUL AH
ADD BX,AX
INC BX………………….. ; Alamat warna pada posisi X,Y
MOV CX,25…………… ; Panjangnya sorotan
Ulang:
MOV BYTE PTR ES:[BX],4Fh… ; Atribut sorotan ; putih diatas merah
ADD BX,2
LOOP Ulang
ENDM
Readkey MACRO……….............. ; Macro untuk membaca masukan dari
MOV AH,00 ………………….…..; keyboard.
INT 16h …………………………..; hasilnya AH=Extended, AL=ASCII
ENDM
MenuL MACRO String …………; Macro untuk mencetak menu
MOV AH,09
LEA DX,String
INT 21h
ENDM
;/==============================================\;
; Program : SOROT.ASM ;
; Author : S’to ;
; Fungsi : Membuat menu sorot untuk ;
; digunakan program ;
;\==============================================/;
.MODEL SMALL
.CODE
ORG 100h
TData: JMP Proses
Layar DB 4000 DUP (?)
Menu DB 9,9,'+=============================+',13,10
DB 9,9,'| »»» MENU SOROT ««« |',13,10
DB 9,9,'+=============================+',13,10
DB 9,9,'| |',13,10
DB 9,9,'| 1. Pilihan pertama |',13,10
DB 9,9,'| 2. Pilihan Kedua |',13,10
DB 9,9,'| 3. Pilihan Ketiga |',13,10
DB 9,9,'| 4. Pilihan Keempat |',13,10
DB 9,9,'| |',13,10
DB 9,9,'+=============================+$'
PosX DB 22………………………… ; Posisi kolom mula-mula
PosY DB 12……………………….. ; Posisi baris mula-mula
Panah_Atas EQU 72………….. ; Kode tombol panah atas
Panah_Bawah EQU 80….…... ; Kode tombolpanah bawah
TEnter EQU 0Dh……….….……. ; Kode tombol Enter


Proses :
Cls ; Hapus layar
GotoXY 0 8 ; kursor = 0,8
MenuL Menu ; Gambar menu
SimpanL ; Simpan isi layar
Ulang :
BalikL ; Tampilkan isi layar yang
; disimpan
Sorot PosX,PosY…….. ; Sorot posisi X,Y
Masukan:
Readkey…………………….… ; Baca masukan dari keyboard
CMP AH,Panah_Bawah……   ; Panah bawah yang ditekan ?
JE Bawah…………….………. ; Ya! lompat bawah
CMP AH,Panah_Atas …….....; Panah atas yang ditekan ?
JE CekY………………..……. ; Ya, lompat CekY


CMP AL,TEnter…….…. ; Tombol enter yang ditekan ?
JNE Masukan……….…. ; Bukan, lompat ke ulangi
JMP Selesai ………..……; Ya, lompat ke selesai
CekY :
CMP PosY,12…………... ; Apakah sorotan paling atas ?
JE MaxY…………………... ; Ya! lompat ke MaxY
DEC PosY …………….……; Sorotkan ke atas
JMP Ulang………….……. ; Lompat ke ulang
MaxY :
MOV PosY,15………….. ; PosY=Sorotan paling bawah
JMP Ulang……………….. ; lompat ke ulang
Bawah :
CMP PosY,15………….… ; apakah sorotan paling bawah ?
JE NolY………………….…. ; Ya! lompat ke NolY
INC PosY……………….…. ; Sorotkan ke bawah
JMP Ulang…………….…. ; Lompat ke ulang
NolY :
MOV PosY,12………….. ; Sorotan paling atas
JMP Ulang …………..……; Lompat ke ulang
Selesai:
INT 20h
END TData 
1. Buka notepad, lau ketikan program tersebut.

 2. kemudian simpan.
3. Buka DOSBOx lalunjalankan program tersebut dengan TASM dan cetak menggunakan Tlink.
4. Bila program. dijalankan, maka anda akan mendapatkan suatu menu sorot yang menarik, seperti pada gambar berikut.


Free Template Blogger collection template Hot Deals BERITA_wongANteng SEO theproperty-developer

0 komentar:

Posting Komentar