Magellan Linux

Annotation of /trunk/mkinitrd-magellan/isolinux/writehex.inc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1133 - (hide annotations) (download)
Thu Aug 19 09:50:43 2010 UTC (13 years, 8 months ago) by niro
File size: 1150 byte(s)
-updated to isolinux-3.86
1 niro 532 ;; -----------------------------------------------------------------------
2     ;;
3 niro 1133 ;; Copyright 1994-2008 H. Peter Anvin - All Rights Reserved
4     ;;
5 niro 532 ;; This program is free software; you can redistribute it and/or modify
6     ;; it under the terms of the GNU General Public License as published by
7     ;; the Free Software Foundation, Inc., 53 Temple Place Ste 330,
8     ;; Boston MA 02111-1307, USA; either version 2 of the License, or
9     ;; (at your option) any later version; incorporated herein by reference.
10     ;;
11     ;; -----------------------------------------------------------------------
12    
13     ;;
14     ;; writehex.inc
15     ;;
16     ;; Write hexadecimal numbers to the console
17     ;;
18    
19     section .text
20     ;
21     ; writehex[248]: Write a hex number in (AL, AX, EAX) to the console
22     ;
23     writehex2:
24     pushfd
25     pushad
26     rol eax,24
27     mov cx,2
28     jmp short writehex_common
29     writehex4:
30     pushfd
31     pushad
32     rol eax,16
33     mov cx,4
34     jmp short writehex_common
35     writehex8:
36     pushfd
37     pushad
38     mov cx,8
39     writehex_common:
40     .loop: rol eax,4
41     push eax
42     and al,0Fh
43     cmp al,10
44     jae .high
45     .low: add al,'0'
46     jmp short .ischar
47     .high: add al,'A'-10
48     .ischar: call writechr
49     pop eax
50     loop .loop
51     popad
52     popfd
53     ret