ورود

View Full Version : ادیتور با اسمبلی



babol-hacker
دوشنبه 21 دی 1388, 18:57 عصر
سلام دوستای گلم ماکرو های استفاده شده تو این برنامه و تو پست قبلی گذاشتم

این برنامه خالی از اشکال نیست اما بازم خیلی خوبه و قشنگه

اینو شب امتحان نوشتم دیگه خیلیی مانور ندادم روش



INCLUDE MYMAC.ASM
.MODEL SMALL

.STACK 64

.DATA

ABOUT DB "PROGRAMMER : MEHRDAD HOSSEINZADEH$"

EMAIL DB "E-MAIL : Mail.HosseinZadeh@Gmail.com$"

STR1 DB "1.New File$"

STR2 DB "2.Write$"

STR3 DB "3.Read$"

STR4 DB "4.Exit$"

STR5 DB "Enter Choice : $"

STR6 DB "ENTER PASSWORD : $"

STR8 DB "Your file was successfully constructed.$"

STR9 DB " To Back Menu Press Key$"

STR10 DB "ENTER TEXT : $"

PASS DB ?

PASSWORD DB "MEHRDAD$"

LEN DB 0

DIR DB "TXT.TXT",0

TXT DB 255 DUP ("$")

MATN DB 255,?,255 DUP(255)

H DW ?

.CODE

MAIN PROC FAR

MOV AX,@DATA
MOV DS,AX
MOV ES,AX
;-------


CALL RAND
CALL RAND

CALL CHECKPASS







;------------------------------------------------------------------------------------------------------
;------------------------------------------------------------------------------------------------------
;--------------------------------------MENU------------------------------------------------------------




MENU:
CALL CLS

MOV AH,02H
MOV DH,3
MOV DL,24
MOV BH,00H
INT 10H

;-----------
MOV AH,02H
MOV DH,3
MOV DL,24
MOV BH,00H
INT 10H
;-----------

MOV AH,09H
LEA DX,ABOUT
INT 21H

;------
MOV AH,02H
MOV DH,6
MOV DL,30
MOV BH,00H
INT 10H
;--------
PRNCHR 201
09-10H 11001101B,19
;-------
MOV AH,02H
MOV DH,6
MOV DL,50
MOV BH,00H
INT 10H
;-------------
PRNCHR 10111011B
;----
MOV AH,02H
MOV DH,7
MOV DL,30
MOV BH,00H
INT 10H
;-------
PRNCHR 10111010B
09-10H 32,19
;---------
MOV AH,02H
MOV DH,7
MOV DL,50
MOV BH,00H
INT 10H
;========
PRNCHR 10111010B
;--------
MOV AH,02H
MOV DH,8
MOV DL,30
MOV BH,00H
INT 10H
;--------
PRNCHR 10111010B

;-------------
MOV AH,02H
MOV DH,8
MOV DL,34
MOV BH,00H
INT 10H
;-------------
PRINT STR1
;------
09-10H 32,4
;----
MOV AH,02H
MOV DH,8
MOV DL,50
MOV BH,00H
INT 10H
;--------
PRNCHR 10111010B
;----
MOV AH,02H
MOV DH,9
MOV DL,30
MOV BH,00H
INT 10H
;---------
PRNCHR 10111010B
09-10H 32,19
;----------
MOV AH,02H
MOV DH,9
MOV DL,50
MOV BH,00H
INT 10H
;----------
PRNCHR 10111010B
;---------
MOV AH,02H
MOV DH,10
MOV DL,30
MOV BH,00H
INT 10H
;-----
PRNCHR 10111010B
09-10H 32,4
;-----------
MOV AH,02H
MOV DH,10
MOV DL,34
MOV BH,00H
INT 10H
;--------
PRINT STR2
09-10H 32,9
;----------
MOV AH,02H
MOV DH,10
MOV DL,50
MOV BH,00H
INT 10H
;-------
PRNCHR 10111010B
;---STR3
MOV AH,02H
MOV DH,11
MOV DL,30
MOV BH,00H
INT 10H
;------
PRNCHR 10111010B
09-10H 32,19
;---------
MOV AH,02H
MOV DH,11
MOV DL,50
MOV BH,00H
INT 10H
;--------
PRNCHR 10111010B
;---------
MOV AH,02H
MOV DH,12
MOV DL,30
MOV BH,00H
INT 10H
;--------
PRNCHR 10111010B
09-10H 32,4
;----------
MOV AH,02H
MOV DH,12
MOV DL,34
MOV BH,00H
INT 10H
;-----------
PRINT STR3
09-10H 32,10
;-----------
MOV AH,02H
MOV DH,12
MOV DL,50
MOV BH,00H
INT 10H
;---------
PRNCHR 10111010B
;------STR4
MOV AH,02H
MOV DH,13
MOV DL,30
MOV BH,00H
INT 10H
;---------
PRNCHR 10111010B
09-10H 32,19
;-----------
MOV AH,02H
MOV DH,13
MOV DL,50
MOV BH,00H
INT 10H
;-----------
PRNCHR 10111010B
;----------
MOV AH,02H
MOV DH,14
MOV DL,30
MOV BH,00H
INT 10H
;--------
PRNCHR 10111010B
09-10H 32,4
;-------------
MOV AH,02H
MOV DH,14
MOV DL,34
MOV BH,00H
INT 10H
;-----------
PRINT STR4
09-10H 32,10
;----------
MOV AH,02H
MOV DH,14
MOV DL,50
MOV BH,00H
INT 10H
;-----------
PRNCHR 10111010B
;----
MOV AH,02H
MOV DH,15
MOV DL,30
MOV BH,00H
INT 10H
;---

PRNCHR 11001000B
;------

09-10H 11001101B,19
;-----------
MOV AH,02H
MOV DH,15
MOV DL,50
MOV BH,00H
INT 10H
;---------
PRNCHR 10111100B

;-----------
MOV AH,02H
MOV DH,17
MOV DL,30
MOV BH,00H
INT 10H
;------
PRINT STR5
;----

MOV AH,02H
MOV DH,20
MOV DL,24
MOV BH,00H
INT 10H

;-------
PRINT EMAIL
;-------

MOV AH,02H
MOV DH,17
MOV DL,44
MOV BH,00H
INT 10H

;--------
;------

;--------------------------------------MENU------------------------------------------------------------
;------------------------------------------------------------------------------------------------------
;------------------------------------------------------------------------------------------------------

;--------------GETCHE TO SELECT CASE

GETCHE


CMP AL,49

JE ITEM1
CMP AL,50
JE ITEM2
CMP AL,51
JE ITEM3
CMP AL,52
JE ITEM4
JMP MENU

;--------------------------ITEM 1
ITEM1:

CALL CF
;-------------------------------------------

;--------------------------ITEM 2

ITEM2:

;RCCLRSCR 0,0,24,79,00000111B
;---------------
MOV AH,06H
MOV AL,0
MOV CX,0
MOV DH,24
MOV DL,79
MOV BH,00000111B
INT 10H
;;;;;;;

;;;;
MOV AH,02H
MOV DH,1
MOV DL,1
MOV BH,00H
INT 10H

;PRINT STR10

MOV AH,09H
LEA DX,STR10
INT 21H
;----------

;-----------
MOV AH,02H
MOV DH,2
MOV DL,1
MOV BH,00H
INT 10H
;---------

09-10H 11001101B,77

;----------
MOV AH,02H
MOV DH,3
MOV DL,1
MOV BH,00H
INT 10H
;--------



CALL WF

CALL CLS



JMP MENU
;----------------------------------------------

;-------------------------ITEM 3

ITEM3:

MOV AH,3DH
LEA DX,DIR
MOV AL,0
INT 21H
MOV H,AX

CALL RF


CALL CLS

;GOTOXY 1,1
;-----------
MOV AH,02H
MOV DH,1
MOV DL,1
MOV BH,00H
INT 10H
;-----------

;PRINT TXT
MOV AH,09H
LEA DX,TXT
INT 21H

CALL CLOSE




GETCHE

JMP MENU
;--------------------------------------------------

;-------------------------ITEM 4

ITEM4:


;----------
;-----------
MOV AH,02H
MOV DH,0
MOV DL,0
MOV BH,00H
INT 10H
;-----------

CALL RAND

CALL RAND

CALL CLOSE


;---
EXIT:MOV AX,4C00H
INT 21H

MAIN ENDP

CHECKPASS PROC

RCCLRSCR 0,0,24,79,00001100B


;-------------
;-----------
MOV AH,02H
MOV DH,12
MOV DL,26
MOV BH,00H
INT 10H
;-----------


;---------
MOV AH,09H
LEA DX,STR6
INT 21H
;--------

MOV BX,0

MOV CX,7
L1:
MOV AH,00H
INT 16H

MOV PASS[BX],AL
PRNCHR 0CH
INC BX
LOOP L1

MOV PASS[BX],'$'



RE:RET

CHECKPASS ENDP

RAND PROC


MOV AH,02H
MOV DL,32
INT 21H

RCCLRSCR 0,0,24,79,01001001B
MOV BX,800
Q1:
MOV CX,65535
AGAIN1:LOOP AGAIN1
DEC BX
JNZ Q1

RCCLRSCR 0,0,24,79,00101001B
MOV BX,800
Q2:
MOV CX,65535
AGAIN2:LOOP AGAIN2
DEC BX
JNZ Q2

RCCLRSCR 0,0,24,79,00011001B
MOV BX,800
Q3:
MOV CX,65535
AGAIN3:LOOP AGAIN3
DEC BX
JNZ Q3

RCCLRSCR 0,0,24,79,0000100B
MOV BX,800
Q4:
MOV CX,65535
AGAIN4:LOOP AGAIN4
DEC BX
JNZ Q4

RCCLRSCR 0,0,24,79,0001100B
MOV BX,800
Q5:
MOV CX,65535
AGAIN5:LOOP AGAIN5
DEC BX
JNZ Q5

RCCLRSCR 0,0,24,79,0011100B
MOV BX,800
Q6:
MOV CX,65535
AGAIN6:LOOP AGAIN6
DEC BX
JNZ Q6

RCCLRSCR 0,0,24,79,0101100B
MOV BX,800
Q7:
MOV CX,65535
AGAIN7:LOOP AGAIN7
DEC BX
JNZ Q7

RCCLRSCR 0,0,24,79,0110100B
MOV BX,800
Q8:
MOV CX,800
AGAIN8:LOOP AGAIN8
DEC BX
JNZ Q8

RCCLRSCR 0,0,24,79,0111100B
MOV BX,800
Q9:
MOV CX,6
AGAIN9:LOOP AGAIN9
DEC BX
JNZ Q9

RCCLRSCR 0,0,24,79,1010100B
MOV BX,800
Q10:
MOV CX,65535
AGAIN10:LOOP AGAIN10
DEC BX
JNZ Q10

RCCLRSCR 0,0,24,79,1110100B
MOV BX,800
Q11:
MOV CX,65535
AGAIN11:LOOP AGAIN11
DEC BX
JNZ Q11
RET

RAND ENDP


WF PROC

MOV AH,0AH
LEA DX,MATN
INT 21H


XOR BX,BX
MOV BL,MATN[1]
MOV STR[BX+2],'$'
;LEA DX,STR+2
;MOV AH,09H
;INT 21H

MOV AH,40H
LEA DX,MATN+2
AND BX,00FFH
MOV CX,BX
MOV BX,H
INT 21H

GETCHE

RET
WF ENDP

;----------------------------------CREATE FILE
CF PROC

MOV AH,3CH
MOV CX,0
LEA DX,DIR
INT 21H

MOV H,AX


;--------
MOV AH,06H
MOV AL,0
MOV CX,0
MOV DH,24
MOV DL,79
MOV BH,00001010B
INT 10H
;------

;----------
;-----------
MOV AH,02H
MOV DH,1
MOV DL,1
MOV BH,00H
INT 10H
;-----------
PRINT STR8
ENDL


;---------
;-----------
MOV AH,02H
MOV DH,2
MOV DL,1
MOV BH,00H
INT 10H
;-----------

MOV AH,09H
LEA DX,STR9
INT 21H
;-------

MOV AH,00H
INT 16H

CALL CLS

;-------
;-----------
MOV AH,02H
MOV DH,0
MOV DL,0
MOV BH,00H
INT 10H
;-----------
JMP MENU

RET

CF ENDP
;----------------------------------------------


RF PROC

MOV AH,3FH
MOV BX,H
MOV CX,254
LEA DX,TXT
INT 21H

RET

RF ENDP
;--------------------------------------------------

CLOSE PROC

MOV AH,3EH

MOV BX,H

INT 21H

RET

CLOSE ENDP

CLS PROC

MOV AH,06H
MOV AL,0
MOV CX,0
MOV DH,24
MOV DL,79
MOV BH,00001001B
INT 10H

RET

CLS ENDP

END MAIN


http://mobinranjbar.somee.com/UserPic/985372641.JPG

http://mobinranjbar.somee.com/UserPic/798776025.JPG



اینم فایل اجراییhttp://m2soft.parsaspace.com/MENU.exe