Ömer Özsipahi feature: C kernel
print_hex.asm 376 B
_print_hex:
mov si, 4
loop_start:
cmp si, 0
je _go_back
mov ax, dx
and ax, 0x000F
shr dx, 4
call _comp_digits
mov [bx+si + 1], al
dec si
jmp loop_start
_comp_digits:
cmp ax, 0x0009
jle _convert_decimal
jmp _convert_char
_convert_decimal:
add ax, 48
jmp _go_back
_convert_char:
add ax, 87
jmp _go_back