loc_convert_decimal_str_to_binary:
                ; (c) Erdogan Tan, 19-4-2009
                mov si, offset Str_SectorNumberInput 
                mov bl, byte ptr [SI]
                cmp bl, "0"
                jnb short loc_convert_decimal_str_to_binary_reset
                xor ax, ax
                xor dx, dx
                stc
                retn
loc_convert_decimal_str_to_binary_reset:
                mov word ptr [decimal_multipliers], 0
                mov word ptr [decimal_multipliers]+2,0
                xor bh, bh
                xor cx, cx
loop_convert_decimal_str_to_binary:
                sub bl, "0" 
                inc cx
                push bx
                inc si 
                mov bl, byte ptr [SI]
                cmp bl, "0"
                jnb short loop_convert_decimal_str_to_binary
loc_convert_decimal_str_to_binary_mul32:
                mov si, offset decimal_multipliers_1
loop_convert_decimal_str_to_binary_mul32:
                mov ax, word ptr [SI]
                inc si
                inc si
                mov dx, word ptr [SI] 
                inc si
                inc si
                pop bx
                call proc_mul32
                add word ptr [decimal_multipliers], ax
                adc word ptr [decimal_multipliers]+2, dx
                loop loop_convert_decimal_str_to_binary_mul32
                mov ax, word ptr [decimal_multipliers]
                mov dx, word ptr [decimal_multipliers]+2
              
                clc

                retn

decimal_multipliers:
                dd 0
decimal_multipliers_1:
                dd 1
                dd 10
                dd 100
                dd 1000
                dd 10000
                dd 100000
                dd 1000000 
                dd 10000000  
                dd 100000000
                dd 1000000000

                dd 0
