Magellan Linux

Annotation of /tags/mkinitrd-6_3_2/isolinux/cleanup.inc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1133 - (hide annotations) (download)
Thu Aug 19 09:50:43 2010 UTC (13 years, 9 months ago) by niro
Original Path: trunk/mkinitrd-magellan/isolinux/cleanup.inc
File size: 1500 byte(s)
-updated to isolinux-3.86
1 niro 1133 ;; -----------------------------------------------------------------------
2     ;;
3     ;; Copyright 2007-2008 H. Peter Anvin - All Rights Reserved
4     ;;
5     ;; 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     ;; cleanup.inc
15     ;;
16     ;; Some final tidying before jumping to a kernel or bootsector
17     ;;
18    
19     section .text
20     ;
21     ; cleanup_hardware:
22     ;
23     ; Shut down anything transient. *No segment assumptions*.
24     ; Preserves all registers.
25     ;
26     cleanup_hardware:
27     pushad
28     ;
29     ; Linux wants the floppy motor shut off before starting the kernel,
30     ; at least bootsect.S seems to imply so. If we don't load the floppy
31     ; driver, this is *definitely* so!
32     ;
33     xor ax,ax
34     xor dx,dx
35     int 13h
36    
37     %if 0 ; This bug report has not been substantiated!
38     ; Vmware crashes if we scroll in the decompressor! Try to detect vmware
39     ; and if it is Vmware, clear the screen...
40     mov eax,'VMXh'
41     xor ebx, ebx
42     mov ecx, 10 ; Get version
43     mov dx, 'VX'
44     in eax, dx
45     cmp ebx, 'VMXh'
46     jne .no_vmware
47    
48     mov ax,0x0003 ; Set mode (clear screen/home cursor)
49     int 10h
50     .no_vmware:
51     %endif
52     popad
53    
54     ; If we enabled serial port interrupts, clean them up now
55     jmp sirq_cleanup