Own Muhammad
2023-07-10 19:39:48 UTC
[org 0x0100]
jmp start
section data
name db'Name:Ali shan',0
vuid db'VUID :bc210410288',0
vuid_asc db'vuid sorted:001122488'
,0
vuid_desc db'vuid sorted:884221100',0
Current_values db vuid-vuid
section text
start;
mov ah,0
mov al,3
int 0x10
mov ah,0x0e
mov si,name
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov si,current_values
call print_string_color
mov ax,0
mov es,ax
cli
mov word[es:9*4],kbisr
mov [es:9*4+2],cs
sti
l1:
mov ah,0
int 0x16
cmp al,27
jne l1
mov ax,0x4c00
int 0x21
kbisr:
push ax
push es
mov ax,0xb800
mov es,ax
in al,0x60
cmp al,0x2a
je.left_shift_pressed
cmp al,0x36
je.right_shift_pressed
mov ax,0
int 0x10
jmp.end
.left_shift_pressed:
mov ax,0
int 0x10
mov ah,0x0e
mov si,name
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov si,vuid
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov si,vuid_desc
call print_string_color
jmp end
.right_shift_pressed:
mov ax,0
int 0x10
mov ah,0x0e
mov si,name
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov si,vuid
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov ah,0x0e
mov si,vuid_asc
call print_string_color
.end:
mov al,0x20
out 0x20,al
pop es
pop ax
iret
print_string_color:
lodsb
cmp al,0
je.done
mov ah,0x0e
mov bh,0
int 0x10
jmp priny_string_color
.done:
ret
jmp start
section data
name db'Name:Ali shan',0
vuid db'VUID :bc210410288',0
vuid_asc db'vuid sorted:001122488'
,0
vuid_desc db'vuid sorted:884221100',0
Current_values db vuid-vuid
section text
start;
mov ah,0
mov al,3
int 0x10
mov ah,0x0e
mov si,name
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov si,current_values
call print_string_color
mov ax,0
mov es,ax
cli
mov word[es:9*4],kbisr
mov [es:9*4+2],cs
sti
l1:
mov ah,0
int 0x16
cmp al,27
jne l1
mov ax,0x4c00
int 0x21
kbisr:
push ax
push es
mov ax,0xb800
mov es,ax
in al,0x60
cmp al,0x2a
je.left_shift_pressed
cmp al,0x36
je.right_shift_pressed
mov ax,0
int 0x10
jmp.end
.left_shift_pressed:
mov ax,0
int 0x10
mov ah,0x0e
mov si,name
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov si,vuid
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov si,vuid_desc
call print_string_color
jmp end
.right_shift_pressed:
mov ax,0
int 0x10
mov ah,0x0e
mov si,name
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov si,vuid
call print_string_color
mov al,0x0d
int 0x10
mov al,0x0a
int 0x10
mov ah,0x0e
mov si,vuid_asc
call print_string_color
.end:
mov al,0x20
out 0x20,al
pop es
pop ax
iret
print_string_color:
lodsb
cmp al,0
je.done
mov ah,0x0e
mov bh,0
int 0x10
jmp priny_string_color
.done:
ret