12345678910111213141516171819202122232425262728293031323334353637383940 |
- .sect .text; .sect .rom; .sect .data; .sect .bss
- .sect .text
- .define printf
- .extern printc, printd, prints
- printf:
- pop bx ! return address
- xchg ax,di
- mov si,sp
- 1:
- movb al,(di)
- inc di
- testb al,al
- jz 6f
- cmpb al,'%'
- je 3f
- 2:
- call printc
- jmp 1b
- 3:
- movb al,(di)
- inc di
- cmpb al,'c'
- jne 4f
- lods
- jmp 2b
- 4:
- cmpb al,'d'
- jne 5f
- lods
- call printd
- jmp 1b
- 5:
- cmpb al,'s'
- jne 2b
- lods
- call prints
- jmp 1b
- 6:
- jmp bx
|