code '.', print
 push edx
 push edi
 mov edi,esi   		 ;edi = buffer (in stack space)
 sub edi,4
 or eax,eax              ;Negative?
 jns .1
 neg eax
 upsh '-'
 call emit
.1                       ;Convert
 xor edx,edx
 div dword [base]
 add dl,'0'
 cmp dl,'9'
 jbe .2
 add dl,7+32
.2
 dec edi
 mov [edi],dl
 or eax,eax
 jnz .1
 mov eax,edi            ;Print
 upsh esi
 sub eax,edi            ;# of digits
 call type
 pop edi
 pop edx
 upsh ' '				;  And add one space after
 call emit				;  the number
next
