This commit is contained in:
parent
92d68a67e6
commit
2e71dd8c09
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:57c4ca6e7836460297edcc45148373ec131157b29c184ee011b29ec491e010f0
|
||||
size 1621330
|
@ -1,3 +1,68 @@
|
||||
--- Makefile
|
||||
+++ Makefile
|
||||
@@ -146,15 +146,16 @@
|
||||
$(PERL) genhash.pl < keywords > kwdhash.gen
|
||||
|
||||
# Standard rule for {isolinux,isolinux-debug}.bin
|
||||
-iso%.bin: iso%.asm kwdhash.gen version.gen
|
||||
+iso%.bin: iso%.asm kwdhash.gen version.gen gfxboot.inc
|
||||
$(NASM) $(NASMOPT) -f bin -DDATE_STR="'$(DATE)'" -DHEXDATE="$(HEXDATE)" \
|
||||
-DMAP=$(@:.bin=.map) -l $(@:.bin=.lsr) -o $@ $<
|
||||
$(PERL) lstadjust.pl $(@:.bin=.lsr) $(@:.bin=.map) $(@:.bin=.lst)
|
||||
$(PERL) checksumiso.pl $@
|
||||
$(PERL) checkov.pl $(@:.bin=.map) $@
|
||||
+ -./add_crc $@
|
||||
|
||||
# Standard rule for {ldlinux,pxelinux,extlinux}.bin
|
||||
-%.bin: %.asm kwdhash.gen version.gen
|
||||
+%.bin: %.asm kwdhash.gen version.gen gfxboot.inc
|
||||
$(NASM) $(NASMOPT) -f bin -DDATE_STR="'$(DATE)'" -DHEXDATE="$(HEXDATE)" \
|
||||
-DMAP=$(@:.bin=.map) -l $(@:.bin=.lsr) -o $@ $<
|
||||
$(PERL) lstadjust.pl $(@:.bin=.lsr) $(@:.bin=.map) $(@:.bin=.lst)
|
||||
--- README.gfxboot
|
||||
+++ README.gfxboot
|
||||
@@ -0,0 +1,41 @@
|
||||
+Graphical boot screen
|
||||
+=====================
|
||||
+
|
||||
+ syslinux/isolinux support a graphical boot screen using VESA BIOS
|
||||
+ extensions. (Note that this is different from the graphics support that
|
||||
+ syslinux comes with).
|
||||
+
|
||||
+ To use it you have to prepare a special boot logo file and put a line like
|
||||
+ this into syslinux.cfg/isolinux.cfg:
|
||||
+
|
||||
+ gfxboot foo
|
||||
+
|
||||
+ The tools to create 'foo' from the above example are in the gfxboot
|
||||
+ package. Please _do_ have a look at its documentation before you begin.
|
||||
+
|
||||
+ Note that you cannot use comboot images and graphics at the same time as
|
||||
+ the memory used overlaps the comboot loading area.
|
||||
+
|
||||
+ If you encouter problems with the graphics code, hold down SHIFT while
|
||||
+ syslinux starts. This will put it into 'failsafe' mode that lets you
|
||||
+ interactively skip critical parts (like monitor detection).
|
||||
+
|
||||
+
|
||||
+
|
||||
+Spread boot images over several floppy disks (syslinux)
|
||||
+=======================================================
|
||||
+
|
||||
+ You can prepare boot disks with a file system that spans several disks.
|
||||
+ The 'mkbootdisk' script from the openSUSE project can create a suitable
|
||||
+ file system.
|
||||
+
|
||||
+ syslinux will ask you for disk changes if necessary. To enable this
|
||||
+ feature, use
|
||||
+
|
||||
+ disksize <size_of_single_disk_in_sectors>
|
||||
+
|
||||
+ Note that every individual disk must have at least a valid FAT boot
|
||||
+ sector. syslinux will use the serial number stored there to verify that
|
||||
+ the correct disk has been inserted (its last hex digit is the zero based
|
||||
+ disk number).
|
||||
+
|
||||
--- abort.inc
|
||||
+++ abort.inc
|
||||
@@ -21,6 +21,11 @@
|
||||
@ -31,7 +96,7 @@
|
||||
+
|
||||
+$file = shift;
|
||||
+$list = "$file";
|
||||
+$list =~ s/\.bin$/.lst/;
|
||||
+$list =~ s/\.bin$/.lsr/;
|
||||
+
|
||||
+open F, $list;
|
||||
+
|
||||
@ -72,16 +137,6 @@
|
||||
+
|
||||
+syswrite F, $buf;
|
||||
+
|
||||
--- com32/lib/Makefile
|
||||
+++ com32/lib/Makefile
|
||||
@@ -79,6 +79,7 @@
|
||||
|
||||
tidy:
|
||||
rm -f *.o .*.d */*.o */.*.d sys/vesa/alphatbl.c
|
||||
+ rm -f sys/vesa/*.o sys/vesa/.*.d
|
||||
|
||||
clean: tidy
|
||||
rm -f *.a
|
||||
--- com32/libutil/get_key.c
|
||||
+++ com32/libutil/get_key.c
|
||||
@@ -42,6 +42,10 @@
|
||||
@ -97,7 +152,7 @@
|
||||
int seqlen;
|
||||
--- com32/modules/cpuid.c
|
||||
+++ com32/modules/cpuid.c
|
||||
@@ -238,7 +238,7 @@
|
||||
@@ -254,7 +254,7 @@
|
||||
|
||||
static int smp_scan_config (unsigned long base, unsigned long length)
|
||||
{
|
||||
@ -121,23 +176,53 @@
|
||||
int key;
|
||||
--- conio.inc
|
||||
+++ conio.inc
|
||||
@@ -47,6 +47,13 @@
|
||||
; set by routine searchdir
|
||||
@@ -49,6 +49,14 @@
|
||||
; Assumes CS == DS == ES.
|
||||
;
|
||||
get_msg_file:
|
||||
+%ifdef WITH_GFX
|
||||
+ ; don't load if graphics code is active
|
||||
+ cmp byte [gfx_ok],0
|
||||
+ jz .nogfx
|
||||
+ ret
|
||||
+ jmp close
|
||||
+.nogfx:
|
||||
+%endif
|
||||
push es
|
||||
shl edx,16 ; EDX <- DX:AX (length of file)
|
||||
mov dx,ax
|
||||
+
|
||||
mov byte [TextAttribute],07h ; Default grey on white
|
||||
mov byte [DisplayMask],07h ; Display text in all modes
|
||||
call msg_initvars
|
||||
--- doc/syslinux.txt
|
||||
+++ doc/syslinux.txt
|
||||
@@ -230,7 +230,7 @@
|
||||
Append nothing. APPEND with a single hyphen as argument in a
|
||||
LABEL section can be used to override a global APPEND.
|
||||
|
||||
- LOCALBOOT type [ISOLINUX, PXELINUX]
|
||||
+ LOCALBOOT type [ISOLINUX, SYSLINUX, PXELINUX]
|
||||
On PXELINUX, specifying "LOCALBOOT 0" instead of a "KERNEL"
|
||||
option means invoking this particular label will cause a local
|
||||
disk boot instead of booting a kernel.
|
||||
@@ -244,12 +244,11 @@
|
||||
UNDI or PXE stacks are, don't worry -- you don't want them,
|
||||
just specify 0.
|
||||
|
||||
- On ISOLINUX, the "type" specifies the local drive number to
|
||||
- boot from; 0x00 is the primary floppy drive and 0x80 is the
|
||||
- primary hard drive. The special value -1 causes ISOLINUX to
|
||||
- report failure to the BIOS, which, on recent BIOSes, should
|
||||
- mean that the next boot device in the boot sequence should be
|
||||
- activated.
|
||||
+ On ISOLINUX and SYSLINUX, the "type" specifies the local drive
|
||||
+ number to boot from; 0x00 is the primary floppy drive and 0x80 is
|
||||
+ the primary hard drive. The special value -1 causes them to report
|
||||
+ failure to the BIOS, which, on recent BIOSes, should mean that the
|
||||
+ next boot device in the boot sequence should be activated.
|
||||
|
||||
IMPLICIT flag_val
|
||||
If flag_val is 0, do not load a kernel image unless it has been
|
||||
--- gfxboot.inc
|
||||
+++ gfxboot.inc
|
||||
@@ -0,0 +1,1369 @@
|
||||
@@ -0,0 +1,1355 @@
|
||||
+ section .text
|
||||
+
|
||||
+load_gfx_msg db 'Loading...', 0
|
||||
@ -421,8 +506,6 @@
|
||||
+;
|
||||
+; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
+
|
||||
+gfx_menu_seg equ real_mode_seg
|
||||
+
|
||||
+; != 0 -> graphics active
|
||||
+gfx_ok db 0
|
||||
+gfx_cwritestr_old db 0c3h ; 'ret'
|
||||
@ -508,11 +591,7 @@
|
||||
+;
|
||||
+gfx_get_sysconfig:
|
||||
+ push ax
|
||||
+%if IS_ISOLINUX
|
||||
+ mov al,[DriveNo]
|
||||
+%else
|
||||
+ mov al,[DriveNumber]
|
||||
+%endif
|
||||
+ mov [gfx_boot_drive],al
|
||||
+
|
||||
+%if IS_ISOLINUX
|
||||
@ -559,6 +638,7 @@
|
||||
+ pusha
|
||||
+ mov eax,[HighMemSize]
|
||||
+ mov [gfx_bios_mem_size],eax
|
||||
+ mov eax,[VKernelEnd]
|
||||
+ shr eax,20
|
||||
+ cmp ax,16
|
||||
+ jb gfx_init_40 ; at least 16MB
|
||||
@ -768,29 +848,25 @@
|
||||
+ push ds
|
||||
+ pop es
|
||||
+
|
||||
+ xor si,si
|
||||
+ mov esi,[HighMemSize]
|
||||
+ jmp gfx_setup_menu_20
|
||||
+gfx_setup_menu_10:
|
||||
+ push ds
|
||||
+ push word vk_seg
|
||||
+ pop ds
|
||||
+ mov di,VKernelBuf
|
||||
+ call rllunpack
|
||||
+ pop ds
|
||||
+
|
||||
+ ; count only non empty entries
|
||||
+ cmp byte [es:VKernelBuf],0
|
||||
+ cmp byte [VKernelBuf],0
|
||||
+ jz gfx_setup_menu_20
|
||||
+
|
||||
+ inc word [menu_desc+menu_entries]
|
||||
+
|
||||
+ push si
|
||||
+ push esi
|
||||
+ mov si,VKernelBuf
|
||||
+ mov di,KernelCName
|
||||
+ push di
|
||||
+ call unmangle_name
|
||||
+ pop di
|
||||
+ pop si
|
||||
+ pop esi
|
||||
+
|
||||
+ call gfx_strlen
|
||||
+
|
||||
@ -804,8 +880,8 @@
|
||||
+ mov [menu_desc+menu_arg_size],ax
|
||||
+
|
||||
+gfx_setup_menu_20:
|
||||
+ cmp si,[VKernelBytes]
|
||||
+ jb gfx_setup_menu_10
|
||||
+ cmp esi,[VKernelEnd]
|
||||
+ ja gfx_setup_menu_10
|
||||
+
|
||||
+ inc word [menu_desc+menu_ent_size]
|
||||
+ mov ax,[menu_desc+menu_ent_size]
|
||||
@ -816,20 +892,14 @@
|
||||
+
|
||||
+ mov word [menu_desc+menu_entries],0
|
||||
+
|
||||
+ xor si,si
|
||||
+ mov esi,[HighMemSize]
|
||||
+ jmp gfx_setup_menu_60
|
||||
+gfx_setup_menu_30:
|
||||
+ push ds
|
||||
+ pop es
|
||||
+ push ds
|
||||
+ push word vk_seg
|
||||
+ pop ds
|
||||
+ mov di,VKernelBuf
|
||||
+ call rllunpack
|
||||
+ pop ds
|
||||
+
|
||||
+ ; count only non empty entries
|
||||
+ cmp byte [es:VKernelBuf],0
|
||||
+ cmp byte [VKernelBuf],0
|
||||
+ jz gfx_setup_menu_60
|
||||
+
|
||||
+ mov di,[menu_desc+menu_arg_list]
|
||||
@ -838,12 +908,10 @@
|
||||
+
|
||||
+ inc word [menu_desc+menu_entries]
|
||||
+
|
||||
+ push si
|
||||
+ push esi
|
||||
+
|
||||
+ mov si,VKernelBuf
|
||||
+ mov di,KernelCName
|
||||
+ push ds
|
||||
+ pop es
|
||||
+ push di
|
||||
+ call unmangle_name
|
||||
+ pop si
|
||||
@ -857,14 +925,17 @@
|
||||
+ rep movsb
|
||||
+ mov byte [es:di],0
|
||||
+
|
||||
+ pop si
|
||||
+ pop esi
|
||||
+
|
||||
+ push ds
|
||||
+ pop es
|
||||
+
|
||||
+ mov ax,[menu_desc+menu_arg_size]
|
||||
+ add [menu_desc+menu_arg_list],ax
|
||||
+
|
||||
+gfx_setup_menu_60:
|
||||
+ cmp si,[VKernelBytes]
|
||||
+ jb gfx_setup_menu_30
|
||||
+ cmp esi,[VKernelEnd]
|
||||
+ ja gfx_setup_menu_30
|
||||
+
|
||||
+ mov ax,[menu_desc+menu_ent_size]
|
||||
+ mov bx,[menu_desc+menu_arg_size]
|
||||
@ -1474,7 +1545,7 @@
|
||||
+ stosb
|
||||
+ or al,al
|
||||
+ jz cb_chdir_60
|
||||
+ cmp di,isolinux_cfg - 1
|
||||
+ cmp di,config_name - 1
|
||||
+ jb cb_chdir_20
|
||||
+ xor al,al
|
||||
+ stosb
|
||||
@ -1520,18 +1591,19 @@
|
||||
%include "head.inc"
|
||||
|
||||
;
|
||||
@@ -70,6 +74,7 @@
|
||||
vk_seg equ 2000h ; Virtual kernels
|
||||
@@ -70,6 +74,8 @@
|
||||
real_mode_seg equ 2000h
|
||||
xfer_buf_seg equ 1000h ; Bounce buffer for I/O to high mem
|
||||
comboot_seg equ real_mode_seg ; COMBOOT image loading zone
|
||||
+gfx_menu_seg equ 3000h ; temporary storage to setup menu
|
||||
+first_free_seg equ 4000h ; end of isolinux used memory
|
||||
|
||||
;
|
||||
; File structure. This holds the information for each currently open file.
|
||||
@@ -266,6 +271,21 @@
|
||||
@@ -259,6 +265,21 @@
|
||||
mov [FirstSecSum],edi
|
||||
|
||||
mov [DriveNo],dl
|
||||
mov [DriveNumber],dl
|
||||
+
|
||||
+ ; check whether the BIOS did load us correctly
|
||||
+ cmp dl,80h ; some BIOSes try to do floppy emulation...
|
||||
@ -1542,7 +1614,7 @@
|
||||
+ mov si,broken_bios_msg
|
||||
+ call writemsg
|
||||
+ jmp short $
|
||||
+broken_bios_msg db 13, 10, 'Cannot boot from this CD. Please use CD2 or try a BIOS update.', 13, 10, 0
|
||||
+broken_bios_msg db 13, 10, 'Cannot boot from this CD. Please try a BIOS update.', 13, 10, 0
|
||||
+ align 4
|
||||
+csum_value dd 0
|
||||
+bios_ok:
|
||||
@ -1550,7 +1622,7 @@
|
||||
%ifdef DEBUG_MESSAGES
|
||||
mov si,startup_msg
|
||||
call writemsg
|
||||
@@ -290,6 +310,9 @@
|
||||
@@ -283,6 +304,9 @@
|
||||
; Other nonzero fields
|
||||
inc word [dsp_sectors]
|
||||
|
||||
@ -1560,7 +1632,7 @@
|
||||
; Now figure out what we're actually doing
|
||||
; Note: use passed-in DL value rather than 7Fh because
|
||||
; at least some BIOSes will get the wrong value otherwise
|
||||
@@ -310,6 +333,8 @@
|
||||
@@ -303,6 +327,8 @@
|
||||
call crlf
|
||||
%endif
|
||||
|
||||
@ -1569,7 +1641,7 @@
|
||||
found_drive:
|
||||
; Alright, we have found the drive. Now, try to find the
|
||||
; boot file itself. If we have a boot info table, life is
|
||||
@@ -434,6 +459,9 @@
|
||||
@@ -427,6 +453,9 @@
|
||||
%endif
|
||||
jmp all_read ; Jump to main code
|
||||
|
||||
@ -1579,7 +1651,7 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; Start of BrokenAwardHack --- 10-nov-2002 Knut_Petersen@t-online.de
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@@ -617,6 +645,7 @@
|
||||
@@ -618,6 +647,7 @@
|
||||
mov si,trysbm_msg
|
||||
call writemsg
|
||||
jmp .found_drive ; Pray that this works...
|
||||
@ -1587,19 +1659,19 @@
|
||||
|
||||
fatal_error:
|
||||
mov si,nothing_msg
|
||||
@@ -676,10 +705,17 @@
|
||||
@@ -694,10 +724,17 @@
|
||||
;
|
||||
getlinsec:
|
||||
mov si,dapa ; Load up the DAPA
|
||||
+ mov [si+8],eax
|
||||
- mov [si+4],bx
|
||||
- mov bx,es
|
||||
- mov [si+6],bx
|
||||
mov [si+8],eax
|
||||
+ ; seems that some BIOSes have problems if the target
|
||||
+ ; segment is 0 (don't ask); to avoid this, we normalize
|
||||
+ ; the buffer address here
|
||||
+ ; -> seen on Acer TravelMate C102Ti
|
||||
mov [si+4],bx
|
||||
- mov bx,es
|
||||
- mov [si+6],bx
|
||||
- mov [si+8],eax
|
||||
+ mov [si+4],bx
|
||||
+ and word [si+4],0fh
|
||||
+ mov ax,es
|
||||
+ shr bx,4
|
||||
@ -1608,7 +1680,7 @@
|
||||
.loop:
|
||||
push bp ; Sectors left
|
||||
cmp bp,[MaxTransfer]
|
||||
@@ -706,14 +742,77 @@
|
||||
@@ -724,15 +761,78 @@
|
||||
; INT 13h with retry
|
||||
xint13: mov byte [RetryCount],retry_count
|
||||
.try: pushad
|
||||
@ -1627,7 +1699,7 @@
|
||||
+%endif
|
||||
+ ; seen buggy bios that overwrites buffer address on error...
|
||||
+ push dword [dapa + 4]
|
||||
int 13h
|
||||
call int13
|
||||
+ pop dword [dapa + 4]
|
||||
+%ifdef DEBUG_DISKIO
|
||||
+ pushad
|
||||
@ -1656,6 +1728,7 @@
|
||||
mov [DiskError],ah ; Save error code
|
||||
popad
|
||||
mov [DiskSys],ax ; Save system call number
|
||||
- dec byte [RetryCount]
|
||||
+
|
||||
+%if 0
|
||||
+ ; eject currently not supported - doesn't work anyway with
|
||||
@ -1683,10 +1756,11 @@
|
||||
+%endif
|
||||
+.noeject:
|
||||
+
|
||||
dec byte [RetryCount]
|
||||
+ dec byte [RetryCount]
|
||||
jz .real_error
|
||||
push ax
|
||||
@@ -756,6 +855,17 @@
|
||||
mov al,[RetryCount]
|
||||
@@ -774,6 +874,17 @@
|
||||
;
|
||||
kaboom:
|
||||
RESET_STACK_AND_SEGS AX
|
||||
@ -1704,7 +1778,7 @@
|
||||
mov si,err_bootfailed
|
||||
call cwritestr
|
||||
call getchar
|
||||
@@ -807,6 +917,9 @@
|
||||
@@ -825,6 +936,9 @@
|
||||
crlf_msg db CR, LF
|
||||
null_msg db 0
|
||||
|
||||
@ -1712,9 +1786,9 @@
|
||||
+err_not_ready db 'CDROM drive not ready.', 0
|
||||
+
|
||||
alignb 4, db 0
|
||||
StackPtr dw StackBuf, 0 ; SS:SP for stack reset
|
||||
MaxTransfer dw 32 ; Max sectors per transfer
|
||||
@@ -876,6 +989,9 @@
|
||||
|
||||
@@ -882,6 +996,9 @@
|
||||
; (which will be at 16 only for a single-session disk!); from the PVD
|
||||
; we should be able to find the rest of what we need to know.
|
||||
;
|
||||
@ -1724,7 +1798,7 @@
|
||||
get_fs_structures:
|
||||
mov eax,[bi_pvd]
|
||||
mov bx,trackbuf
|
||||
@@ -901,10 +1017,15 @@
|
||||
@@ -907,10 +1024,15 @@
|
||||
; Look for an isolinux directory, and if found,
|
||||
; make it the current directory instead of the root
|
||||
; directory.
|
||||
@ -1740,18 +1814,17 @@
|
||||
mov di,isolinux_dir
|
||||
mov al,02h ; Search for /isolinux
|
||||
call searchdir_iso
|
||||
@@ -925,7 +1046,10 @@
|
||||
@@ -931,6 +1053,9 @@
|
||||
call crlf
|
||||
%endif
|
||||
.no_isolinux_dir:
|
||||
+ ret
|
||||
|
||||
+get_fs_struct_done:
|
||||
+
|
||||
+get_fs_struct_done:
|
||||
|
||||
;
|
||||
; Locate the configuration file
|
||||
;
|
||||
@@ -1103,6 +1227,9 @@
|
||||
@@ -1096,6 +1221,9 @@
|
||||
; 0xFFFF in case we should execute INT 18h ("next device.")
|
||||
;
|
||||
local_boot:
|
||||
@ -1761,7 +1834,7 @@
|
||||
call vgaclearmode
|
||||
lss sp,[cs:Stack] ; Restore stack pointer
|
||||
xor dx,dx
|
||||
@@ -1120,7 +1247,7 @@
|
||||
@@ -1113,7 +1241,7 @@
|
||||
xor dh,dh
|
||||
push dx
|
||||
xor ax,ax ; Reset drive
|
||||
@ -1770,9 +1843,9 @@
|
||||
mov ax,0201h ; Read one sector
|
||||
mov cx,0001h ; C/H/S = 0/0/1 (first sector)
|
||||
mov bx,trackbuf
|
||||
@@ -1486,6 +1613,9 @@
|
||||
%include "strcpy.inc" ; strcpy()
|
||||
@@ -1488,6 +1616,9 @@
|
||||
%include "rawcon.inc" ; Console I/O w/o using the console functions
|
||||
%include "adv.inc" ; Auxillary Data Vector
|
||||
|
||||
+%include "gfxboot.inc" ; add gfx things
|
||||
+
|
||||
@ -1780,27 +1853,17 @@
|
||||
; -----------------------------------------------------------------------------
|
||||
; Begin data section
|
||||
; -----------------------------------------------------------------------------
|
||||
@@ -1507,7 +1637,8 @@
|
||||
db 'booting, and I will take your word for it.', CR, LF, 0
|
||||
err_badcfg db 'Unknown keyword in config file.', CR, LF, 0
|
||||
err_noparm db 'Missing parameter in config file.', CR, LF, 0
|
||||
-err_noinitrd db CR, LF, 'Could not find ramdisk image: ', 0
|
||||
+err_noinitrd db CR, LF
|
||||
+err_noinitrda db 'Could not find ramdisk image: ', 0
|
||||
err_nohighmem db 'Not enough memory to load specified kernel.', CR, LF, 0
|
||||
err_highload db CR, LF, 'Kernel transfer failure.', CR, LF, 0
|
||||
err_oldkernel db 'Cannot load a ramdisk with an old kernel image.'
|
||||
@@ -1532,6 +1663,7 @@
|
||||
@@ -1499,6 +1630,7 @@
|
||||
default_len equ ($-default_str)
|
||||
boot_dir db '/boot' ; /boot/isolinux
|
||||
isolinux_dir db '/isolinux', 0
|
||||
+ zb 64
|
||||
ConfigName equ $
|
||||
isolinux_cfg db 'isolinux.cfg', 0
|
||||
+zb 64
|
||||
config_name db 'isolinux.cfg', 0
|
||||
err_disk_image db 'Cannot load disk image (invalid file)?', CR, LF, 0
|
||||
|
||||
--- keywords
|
||||
+++ keywords
|
||||
@@ -32,3 +32,5 @@
|
||||
@@ -42,3 +42,5 @@
|
||||
f10
|
||||
f11
|
||||
f12
|
||||
@ -1808,7 +1871,7 @@
|
||||
+disksize
|
||||
--- keywords.inc
|
||||
+++ keywords.inc
|
||||
@@ -76,8 +76,15 @@
|
||||
@@ -90,8 +90,15 @@
|
||||
%if IS_PXELINUX
|
||||
keyword ipappend, pc_ipappend
|
||||
%endif
|
||||
@ -1827,18 +1890,18 @@
|
||||
keywd_count equ ($-keywd_table)/keywd_size
|
||||
--- layout.inc
|
||||
+++ layout.inc
|
||||
@@ -26,7 +26,11 @@
|
||||
; The secondary BSS section, above the text; we really wish we could
|
||||
; just make it follow .bcopy32 or hang off the end,
|
||||
; but it doesn't seem to work that way.
|
||||
+%ifdef WITH_GFX
|
||||
+LATEBSS_START equ 0B800h
|
||||
@@ -88,7 +88,11 @@
|
||||
section .uibss nobits align=16 follows=.adv
|
||||
|
||||
; Normal bss...
|
||||
+%if IS_ISOLINUX
|
||||
+ section .bss1 nobits align=16 follows=.bss2
|
||||
+%else
|
||||
LATEBSS_START equ 0B400h
|
||||
section .bss1 nobits align=16 follows=.uibss
|
||||
+%endif
|
||||
|
||||
; Reserve memory for the stack. This causes checkov to abort the
|
||||
; compile if we violate this space.
|
||||
; Reserve space for stack
|
||||
section .stack nobits align=16 start=STACK_START
|
||||
--- ldlinux.asm
|
||||
+++ ldlinux.asm
|
||||
@@ -24,6 +24,9 @@
|
||||
@ -1851,15 +1914,16 @@
|
||||
%include "head.inc"
|
||||
|
||||
;
|
||||
@@ -82,6 +85,7 @@
|
||||
vk_seg equ 2000h ; Virtual kernels
|
||||
@@ -82,6 +85,8 @@
|
||||
cache_seg equ 2000h ; 64K area for metadata cache
|
||||
xfer_buf_seg equ 1000h ; Bounce buffer for I/O to high mem
|
||||
comboot_seg equ real_mode_seg ; COMBOOT image loading zone
|
||||
+gfx_menu_seg equ 4000h ; temporary storage to setup menu
|
||||
+first_free_seg equ 5000h ; end of syslinux used memory
|
||||
|
||||
;
|
||||
; File structure. This holds the information for each currently open file.
|
||||
@@ -368,6 +372,8 @@
|
||||
@@ -357,6 +362,8 @@
|
||||
add eax,[bsHidden] ; Add partition offset
|
||||
xor edx,edx ; Zero-extend LBA (eventually allow 64 bits)
|
||||
|
||||
@ -1868,10 +1932,10 @@
|
||||
.jmp: jmp strict short getlinsec_cbios
|
||||
|
||||
;
|
||||
@@ -927,6 +933,50 @@
|
||||
%include "bootsect.inc"
|
||||
|
||||
@@ -906,6 +913,48 @@
|
||||
;
|
||||
%include "ui.inc"
|
||||
|
||||
+; Boot a specified local disk. AX specifies the BIOS disk number; or
|
||||
+; 0xFFFF in case we should execute INT 18h ("next device.")
|
||||
+;
|
||||
@ -1910,16 +1974,14 @@
|
||||
+ mov ss,cx
|
||||
+ mov sp,7c00h
|
||||
+ jmp 0:07C00h ; Jump to new boot sector
|
||||
+
|
||||
+.int18:
|
||||
+ int 18h ; Hope this does the right thing...
|
||||
+ jmp kaboom ; If we returned, oh boy...
|
||||
+
|
||||
+;
|
||||
; Abort loading code
|
||||
;
|
||||
%include "abort.inc"
|
||||
@@ -1048,6 +1098,15 @@
|
||||
; allocate_file: Allocate a file structure
|
||||
;
|
||||
@@ -1126,6 +1175,15 @@
|
||||
; starting with "kaboom.patch" with this part
|
||||
|
||||
kaboom2:
|
||||
@ -1934,36 +1996,25 @@
|
||||
+.nogfx:
|
||||
mov si,err_bootfailed
|
||||
call cwritestr
|
||||
call getchar
|
||||
@@ -1418,6 +1477,8 @@
|
||||
%include "strcpy.inc" ; strcpy()
|
||||
cmp byte [kaboom.again+1],18h ; INT 18h version?
|
||||
@@ -1530,6 +1588,8 @@
|
||||
%include "cache.inc" ; Metadata disk cache
|
||||
%include "adv.inc" ; Auxillary Data Vector
|
||||
|
||||
+%include "gfxboot.inc" ; add gfx things
|
||||
+
|
||||
; -----------------------------------------------------------------------------
|
||||
; Begin data section
|
||||
; -----------------------------------------------------------------------------
|
||||
@@ -1450,7 +1511,8 @@
|
||||
db 'booting, and I will take your word for it.', CR, LF, 0
|
||||
err_badcfg db 'Unknown keyword in syslinux.cfg.', CR, LF, 0
|
||||
err_noparm db 'Missing parameter in syslinux.cfg.', CR, LF, 0
|
||||
-err_noinitrd db CR, LF, 'Could not find ramdisk image: ', 0
|
||||
+err_noinitrd db CR, LF
|
||||
+err_noinitrda db 'Could not find ramdisk image: ', 0
|
||||
err_nohighmem db 'Not enough memory to load specified kernel.', CR, LF, 0
|
||||
err_highload db CR, LF, 'Kernel transfer failure.', CR, LF, 0
|
||||
err_oldkernel db 'Cannot load a ramdisk with an old kernel image.'
|
||||
@@ -1460,7 +1522,9 @@
|
||||
err_a20 db CR, LF, 'A20 gate not responding!', CR, LF, 0
|
||||
@@ -1539,6 +1599,8 @@
|
||||
db CR, LF, 0
|
||||
err_bootfailed db CR, LF, 'Boot failed: please change disks and press '
|
||||
db 'a key to continue.', CR, LF, 0
|
||||
+err_failed_gfx db 'Error reading from disk.', 0
|
||||
ready_msg db 'Ready.', CR, LF, 0
|
||||
+localboot_msg db 'Booting from local disk...', CR, LF, 0
|
||||
crlfloading_msg db CR, LF
|
||||
loading_msg db 'Loading ', 0
|
||||
dotdot_msg db '.'
|
||||
syslinux_cfg1 db '/boot' ; /boot/syslinux/syslinux.cfg
|
||||
syslinux_cfg2 db '/syslinux' ; /syslinux/syslinux.cfg
|
||||
syslinux_cfg3 db '/' ; /syslinux.cfg
|
||||
--- loadhigh.inc
|
||||
+++ loadhigh.inc
|
||||
@@ -47,7 +47,12 @@
|
||||
@ -1995,38 +2046,23 @@
|
||||
pop edi ; <C> Target buffer
|
||||
pop ecx ; <B> Byte count this round
|
||||
push ecx ; <B> Byte count this round
|
||||
--- Makefile
|
||||
+++ Makefile
|
||||
@@ -121,7 +121,7 @@
|
||||
kwdhash.gen: keywords genhash.pl
|
||||
$(PERL) genhash.pl < keywords > kwdhash.gen
|
||||
|
||||
-ldlinux.bin: ldlinux.asm kwdhash.gen version.gen
|
||||
+ldlinux.bin: ldlinux.asm kwdhash.gen version.gen gfxboot.inc
|
||||
$(NASM) -f bin -DDATE_STR="'$(DATE)'" -DHEXDATE="$(HEXDATE)" \
|
||||
-DMAP=$(@:.bin=.map) -l $(@:.bin=.lst) -o $@ $<
|
||||
$(PERL) checkov.pl ldlinux.map $@
|
||||
@@ -131,16 +131,18 @@
|
||||
-DMAP=$(@:.bin=.map) -l $(@:.bin=.lst) -o $@ $<
|
||||
$(PERL) checkov.pl $(@:.bin=.map) $@
|
||||
|
||||
-isolinux.bin: isolinux.asm kwdhash.gen version.gen checksumiso.pl
|
||||
+isolinux.bin: isolinux.asm kwdhash.gen version.gen checksumiso.pl gfxboot.inc
|
||||
$(NASM) -f bin -DDATE_STR="'$(DATE)'" -DHEXDATE="$(HEXDATE)" \
|
||||
-DMAP=$(@:.bin=.map) -l $(@:.bin=.lst) -o $@ $<
|
||||
+ ./add_crc $@
|
||||
$(PERL) checkov.pl $(@:.bin=.map) $@
|
||||
$(PERL) checksumiso.pl $@
|
||||
|
||||
# Special verbose version of isolinux.bin
|
||||
-isolinux-debug.bin: isolinux-debug.asm kwdhash.gen version.gen checksumiso.pl
|
||||
+isolinux-debug.bin: isolinux-debug.asm kwdhash.gen version.gen checksumiso.pl gfxboot.inc
|
||||
$(NASM) -f bin -DDATE_STR="'$(DATE)'" -DHEXDATE="$(HEXDATE)" \
|
||||
-DMAP=$(@:.bin=.map) -l $(@:.bin=.lst) -o $@ $<
|
||||
+ ./add_crc $@
|
||||
$(PERL) checkov.pl $(@:.bin=.map) $@
|
||||
$(PERL) checksumiso.pl $@
|
||||
|
||||
--- parsecmd.inc
|
||||
+++ parsecmd.inc
|
||||
@@ -107,6 +107,14 @@
|
||||
FKeyName resb MAX_FKEYS*FILENAME_MAX ; File names for F-key help
|
||||
KernelCNameLen resw 1 ; Length of unmangled kernel name
|
||||
InitRDCNameLen resw 1 ; Length of unmangled initrd name
|
||||
+
|
||||
+%if IS_ISOLINUX
|
||||
+%ifdef DEBUG_MESSAGES
|
||||
+; we need to rearrange memory a bit to make isolinux-debug.bin fit
|
||||
+ section .bss
|
||||
+%endif
|
||||
+%endif
|
||||
+
|
||||
%if IS_SYSLINUX
|
||||
KernelName resb FILENAME_MAX+1 ; Mangled name for kernel
|
||||
KernelCName resb FILENAME_MAX+2 ; Unmangled kernel name
|
||||
--- parseconfig.inc
|
||||
+++ parseconfig.inc
|
||||
@@ -81,7 +81,7 @@
|
||||
@ -2038,13 +2074,13 @@
|
||||
pc_localboot: call getint
|
||||
cmp byte [VKernel],0 ; ("label" section only)
|
||||
je .err
|
||||
@@ -262,7 +262,26 @@
|
||||
@@ -286,6 +286,25 @@
|
||||
mov [SerialPort], word 0
|
||||
ret
|
||||
|
||||
+%ifdef WITH_GFX
|
||||
+%if IS_SYSLINUX
|
||||
;
|
||||
+;
|
||||
+; like pc_setint16, but patch sector read funtion, too
|
||||
+;
|
||||
+pc_disksize:
|
||||
@ -2061,13 +2097,12 @@
|
||||
+%endif
|
||||
+%endif
|
||||
+
|
||||
+;
|
||||
;
|
||||
; "F"-key command
|
||||
;
|
||||
pc_fkey: push ax
|
||||
--- pxelinux.asm
|
||||
+++ pxelinux.asm
|
||||
@@ -899,6 +899,9 @@
|
||||
@@ -846,6 +846,9 @@
|
||||
; AX contains the appropriate return code.
|
||||
;
|
||||
local_boot:
|
||||
@ -2077,64 +2112,9 @@
|
||||
push cs
|
||||
pop ds
|
||||
mov [LocalBootType],ax
|
||||
--- README.gfxboot
|
||||
+++ README.gfxboot
|
||||
@@ -0,0 +1,41 @@
|
||||
+Graphical boot screen
|
||||
+=====================
|
||||
+
|
||||
+ syslinux/isolinux support a graphical boot screen using VESA BIOS
|
||||
+ extensions. (Note that this is different from the graphics support that
|
||||
+ syslinux comes with).
|
||||
+
|
||||
+ To use it you have to prepare a special boot logo file and put a line like
|
||||
+ this into syslinux.cfg/isolinux.cfg:
|
||||
+
|
||||
+ gfxboot foo
|
||||
+
|
||||
+ The tools to create 'foo' from the above example are in the gfxboot
|
||||
+ package. Please _do_ have a look at its documentation before you begin.
|
||||
+
|
||||
+ Note that you cannot use comboot images and graphics at the same time as
|
||||
+ the memory used overlaps the comboot loading area.
|
||||
+
|
||||
+ If you encouter problems with the graphics code, hold down SHIFT while
|
||||
+ syslinux starts. This will put it into 'failsafe' mode that lets you
|
||||
+ interactively skip critical parts (like monitor detection).
|
||||
+
|
||||
+
|
||||
+
|
||||
+Spread boot images over several floppy disks (syslinux)
|
||||
+=======================================================
|
||||
+
|
||||
+ You can prepare boot disks with a file system that spans several disks.
|
||||
+ The 'mkbootdisk' script from the openSUSE project can create a suitable
|
||||
+ file system.
|
||||
+
|
||||
+ syslinux will ask you for disk changes if necessary. To enable this
|
||||
+ feature, use
|
||||
+
|
||||
+ disksize <size_of_single_disk_in_sectors>
|
||||
+
|
||||
+ Note that every individual disk must have at least a valid FAT boot
|
||||
+ sector. syslinux will use the serial number stored there to verify that
|
||||
+ the correct disk has been inserted (its last hex digit is the zero based
|
||||
+ disk number).
|
||||
+
|
||||
--- rllpack.inc
|
||||
+++ rllpack.inc
|
||||
@@ -28,7 +28,7 @@
|
||||
;
|
||||
; rllpack:
|
||||
; Pack CX bytes from DS:SI into ES:DI
|
||||
-; Returns updated SI, DI and CX = number of bytes output
|
||||
+; Returns updated SI, DI and DX = number of bytes output
|
||||
;
|
||||
rllpack:
|
||||
push ax
|
||||
--- runkernel.inc
|
||||
+++ runkernel.inc
|
||||
@@ -202,6 +202,15 @@
|
||||
@@ -206,6 +206,15 @@
|
||||
pop ds
|
||||
sub si,cmd_line_here
|
||||
mov [CmdLineLen],si ; Length including final null
|
||||
@ -2150,7 +2130,7 @@
|
||||
;
|
||||
; Now check if we have a large kernel, which needs to be loaded high
|
||||
;
|
||||
@@ -299,6 +308,19 @@
|
||||
@@ -312,6 +321,19 @@
|
||||
jz nk_noinitrd
|
||||
call parse_load_initrd
|
||||
nk_noinitrd:
|
||||
@ -2170,7 +2150,7 @@
|
||||
;
|
||||
; Abandon hope, ye that enter here! We do no longer permit aborts.
|
||||
;
|
||||
@@ -307,6 +329,10 @@
|
||||
@@ -320,6 +342,10 @@
|
||||
mov si,ready_msg
|
||||
call cwritestr
|
||||
|
||||
@ -2181,7 +2161,7 @@
|
||||
call vgaclearmode ; We can't trust ourselves after this
|
||||
|
||||
UNLOAD_PREP ; Module-specific hook
|
||||
@@ -521,6 +547,34 @@
|
||||
@@ -552,6 +578,34 @@
|
||||
|
||||
.got_start:
|
||||
push si
|
||||
@ -2216,8 +2196,8 @@
|
||||
mov di,InitRD ; Target buffer for mangled name
|
||||
call mangle_name
|
||||
call loadinitrd
|
||||
@@ -608,6 +662,20 @@
|
||||
jmp crlf ; Print carriage return and return
|
||||
@@ -645,6 +699,20 @@
|
||||
ret
|
||||
|
||||
.notthere:
|
||||
+
|
||||
@ -2237,7 +2217,7 @@
|
||||
mov si,err_noinitrd
|
||||
call cwritestr
|
||||
mov si,InitRDCName
|
||||
@@ -616,7 +684,21 @@
|
||||
@@ -653,7 +721,21 @@
|
||||
jmp abort_load
|
||||
|
||||
no_high_mem: ; Error routine
|
||||
@ -2259,42 +2239,22 @@
|
||||
jmp abort_load
|
||||
|
||||
ret
|
||||
--- syslinux.doc
|
||||
+++ syslinux.doc
|
||||
@@ -187,7 +187,7 @@
|
||||
Append nothing. APPEND with a single hyphen as argument in a
|
||||
LABEL section can be used to override a global APPEND.
|
||||
@@ -666,7 +748,8 @@
|
||||
ready_msg db 'ready.', CR, LF, 0
|
||||
err_oldkernel db 'Cannot load a ramdisk with an old kernel image.'
|
||||
db CR, LF, 0
|
||||
-err_noinitrd db CR, LF, 'Could not find ramdisk image: ', 0
|
||||
+err_noinitrd db CR, LF
|
||||
+err_noinitrda db 'Could not find ramdisk image: ', 0
|
||||
err_nohighmem db 'Not enough memory to load specified kernel.', CR, LF, 0
|
||||
|
||||
- LOCALBOOT type [ISOLINUX, PXELINUX]
|
||||
+ LOCALBOOT type [ISOLINUX, SYSLINUX, PXELINUX]
|
||||
On PXELINUX, specifying "LOCALBOOT 0" instead of a "KERNEL"
|
||||
option means invoking this particular label will cause a local
|
||||
disk boot instead of booting a kernel.
|
||||
@@ -201,12 +201,11 @@
|
||||
UNDI or PXE stacks are, don't worry -- you don't want them,
|
||||
just specify 0.
|
||||
|
||||
- On ISOLINUX, the "type" specifies the local drive number to
|
||||
- boot from; 0x00 is the primary floppy drive and 0x80 is the
|
||||
- primary hard drive. The special value -1 causes ISOLINUX to
|
||||
- report failure to the BIOS, which, on recent BIOSes, should
|
||||
- mean that the next boot device in the boot sequence should be
|
||||
- activated.
|
||||
+ On ISOLINUX and SYSLINUX, the "type" specifies the local drive
|
||||
+ number to boot from; 0x00 is the primary floppy drive and 0x80 is
|
||||
+ the primary hard drive. The special value -1 causes them to report
|
||||
+ failure to the BIOS, which, on recent BIOSes, should mean that the
|
||||
+ next boot device in the boot sequence should be activated.
|
||||
|
||||
IMPLICIT flag_val
|
||||
If flag_val is 0, do not load a kernel image unless it has been
|
||||
boot_image db 'BOOT_IMAGE='
|
||||
--- ui.inc
|
||||
+++ ui.inc
|
||||
@@ -15,6 +15,12 @@
|
||||
;
|
||||
call parse_config ; Parse configuration file
|
||||
no_config_file:
|
||||
+
|
||||
@@ -44,6 +44,11 @@
|
||||
|
||||
.no_bootonce:
|
||||
|
||||
+%ifdef WITH_GFX
|
||||
+ ; build gfx menu
|
||||
+ call gfx_setup_menu
|
||||
@ -2303,7 +2263,7 @@
|
||||
;
|
||||
; Check whether or not we are supposed to display the boot prompt.
|
||||
;
|
||||
@@ -28,6 +34,21 @@
|
||||
@@ -57,6 +62,21 @@
|
||||
cmp word [NoEscape],0 ; If NOESCAPE, no prompt,
|
||||
jne auto_boot ; always run default cmd
|
||||
|
||||
@ -2325,7 +2285,7 @@
|
||||
mov si,boot_prompt
|
||||
call cwritestr
|
||||
|
||||
@@ -260,9 +281,21 @@
|
||||
@@ -323,9 +343,21 @@
|
||||
push word real_mode_seg
|
||||
pop es
|
||||
mov di,cmd_line_here
|
||||
@ -2347,16 +2307,16 @@
|
||||
mov [CmdLinePtr],di ; Where to add rest of cmd
|
||||
pop es
|
||||
mov di,KernelName
|
||||
@@ -277,7 +310,7 @@
|
||||
%endif
|
||||
xor bx,bx ; Try only one version
|
||||
@@ -343,7 +375,7 @@
|
||||
mov al, [VKernelBuf+vk_type]
|
||||
mov [KernelType], al
|
||||
|
||||
-%if IS_PXELINUX || IS_ISOLINUX
|
||||
+%if IS_PXELINUX || IS_ISOLINUX || IS_SYSLINUX
|
||||
; Is this a "localboot" pseudo-kernel?
|
||||
%if IS_PXELINUX
|
||||
cmp byte [VKernelBuf+vk_rname+4], 0
|
||||
@@ -361,6 +394,19 @@
|
||||
@@ -421,6 +453,19 @@
|
||||
push di
|
||||
call unmangle_name ; Get human form
|
||||
mov si,err_notfound ; Complain about missing kernel
|
3
syslinux-3.63.tar.bz2
Normal file
3
syslinux-3.63.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4d17102e014d3183a11719896061dc464c3d9a836caaf47b3b57da4ac23b52d
|
||||
size 1819370
|
@ -1,3 +1,39 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 14 11:13:31 CEST 2008 - snwint@suse.de
|
||||
|
||||
- update to version 3.63
|
||||
* Lots of bug fixes.
|
||||
* Handle command lines up to 2047 characters, the current
|
||||
Linux kernel limit.
|
||||
* Support MD5, SHA256 and SHA512 encrypted passwords.
|
||||
* MEMDISK: Turn on EDD support by default.
|
||||
* Add a new INCLUDE command to the core syslinux parser.
|
||||
* It is now supported to load a different configuration file
|
||||
with the CONFIG keyword.
|
||||
* MENU AUTOBOOT, MENU TABMSG, MENU PASSPROMPT allows
|
||||
internationalization of menu messages.
|
||||
* New hierarchial submenu support: see MENU BEGIN, MENU END,
|
||||
MENU GOTO in doc/menu.txt.
|
||||
* MENU QUIT allows creating a menu entry for returning to the
|
||||
command line.
|
||||
* Simple menu system: new "MENU HIDDEN" option to not display
|
||||
the menu unless the user presses a key.
|
||||
* Add "menu separator", "menu indent", "menu disabled"
|
||||
(see README.menu).
|
||||
* SYSLINUX: Support subdirectories.
|
||||
* PXELINUX: Press Ctrl-N at the boot prompt to read out the
|
||||
network info.
|
||||
* PXELINUX: as per RFC 5071, PXELINUX no longer requires the
|
||||
use of the magic cookie option (208) for unencapsulated
|
||||
options. Currently it does not require it for
|
||||
vendor-encapsulated options (vendor-option-space) either,
|
||||
but that MAY be reverted in the future if it causes problems.
|
||||
* EXTLINUX: boot-once support (--once, --clear-once, and --reset-adv)
|
||||
* Support for "auxilliary data vector", a small amount of
|
||||
writable storage. Currently only supported for EXTLINUX,
|
||||
but the infrastructure is there for the other derivatives,
|
||||
assuming a suitable storage location can be found.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 22 11:32:30 CEST 2007 - snwint@suse.de
|
||||
|
||||
|
225
syslinux.spec
225
syslinux.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package syslinux (Version 3.31)
|
||||
# spec file for package syslinux (Version 3.63)
|
||||
#
|
||||
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
# This file and all modifications and additions to the pristine
|
||||
# package are under the same license as the package itself.
|
||||
#
|
||||
@ -9,19 +9,20 @@
|
||||
#
|
||||
|
||||
|
||||
|
||||
Name: syslinux
|
||||
BuildRequires: glibc-devel-32bit libpng-devel nasm netpbm
|
||||
%ifarch x86_64
|
||||
BuildRequires: gcc-32bit
|
||||
%endif
|
||||
URL: http://syslinux.zytor.com/
|
||||
License: GNU General Public License (GPL)
|
||||
Url: http://syslinux.zytor.com/
|
||||
License: GPL v2 or later
|
||||
Group: System/Boot
|
||||
Requires: mtools
|
||||
Autoreqprov: on
|
||||
AutoReqProv: on
|
||||
Summary: Boot Loader for Linux
|
||||
Version: 3.31
|
||||
Release: 41
|
||||
Version: 3.63
|
||||
Release: 1
|
||||
Source: %{name}-%{version}.tar.bz2
|
||||
Source1: isolinux-config
|
||||
Patch: %{name}-%{version}.diff
|
||||
@ -52,27 +53,61 @@ make
|
||||
%install
|
||||
make install-all \
|
||||
INSTALLROOT=%{buildroot} BINDIR=%{_bindir} SBINDIR=%{_bindir} \
|
||||
LIBDIR=%{_datadir} INCDIR=%{_includedir}
|
||||
LIBDIR=%{_datadir} INCDIR=%{_includedir} MANDIR=%{_mandir}
|
||||
install -s -m 755 unix/syslinux $RPM_BUILD_ROOT/%{_bindir}/syslinux-nomtools
|
||||
install -m 755 %{_sourcedir}/isolinux-config $RPM_BUILD_ROOT/%{_bindir}
|
||||
install -m 755 keytab-lilo.pl sys2ansi.pl $RPM_BUILD_ROOT/%{_datadir}/syslinux
|
||||
install -m 755 keytab-lilo.pl syslinux2ansi.pl $RPM_BUILD_ROOT/%{_datadir}/syslinux
|
||||
rm -rf $RPM_BUILD_ROOT/%{_datadir}/syslinux/com32
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc *.doc memdisk/*.doc com32/modules/*.doc
|
||||
%doc doc/*.txt
|
||||
%doc README* NEWS
|
||||
%doc %{_mandir}/man1/*
|
||||
%{_bindir}/*
|
||||
%{_datadir}/syslinux
|
||||
|
||||
%changelog
|
||||
* Fri Jun 22 2007 - snwint@suse.de
|
||||
* Mon Apr 14 2008 snwint@suse.de
|
||||
- update to version 3.63
|
||||
* Lots of bug fixes.
|
||||
* Handle command lines up to 2047 characters, the current
|
||||
Linux kernel limit.
|
||||
* Support MD5, SHA256 and SHA512 encrypted passwords.
|
||||
* MEMDISK: Turn on EDD support by default.
|
||||
* Add a new INCLUDE command to the core syslinux parser.
|
||||
* It is now supported to load a different configuration file
|
||||
with the CONFIG keyword.
|
||||
* MENU AUTOBOOT, MENU TABMSG, MENU PASSPROMPT allows
|
||||
internationalization of menu messages.
|
||||
* New hierarchial submenu support: see MENU BEGIN, MENU END,
|
||||
MENU GOTO in doc/menu.txt.
|
||||
* MENU QUIT allows creating a menu entry for returning to the
|
||||
command line.
|
||||
* Simple menu system: new "MENU HIDDEN" option to not display
|
||||
the menu unless the user presses a key.
|
||||
* Add "menu separator", "menu indent", "menu disabled"
|
||||
(see README.menu).
|
||||
* SYSLINUX: Support subdirectories.
|
||||
* PXELINUX: Press Ctrl-N at the boot prompt to read out the
|
||||
network info.
|
||||
* PXELINUX: as per RFC 5071, PXELINUX no longer requires the
|
||||
use of the magic cookie option (208) for unencapsulated
|
||||
options. Currently it does not require it for
|
||||
vendor-encapsulated options (vendor-option-space) either,
|
||||
but that MAY be reverted in the future if it causes problems.
|
||||
* EXTLINUX: boot-once support (--once, --clear-once, and --reset-adv)
|
||||
* Support for "auxilliary data vector", a small amount of
|
||||
writable storage. Currently only supported for EXTLINUX,
|
||||
but the infrastructure is there for the other derivatives,
|
||||
assuming a suitable storage location can be found.
|
||||
* Fri Jun 22 2007 snwint@suse.de
|
||||
- requires mtools (#286216)
|
||||
* Fri Feb 09 2007 - snwint@suse.de
|
||||
* Fri Feb 09 2007 snwint@suse.de
|
||||
- fixed file list
|
||||
* Mon Oct 09 2006 - snwint@suse.de
|
||||
* Mon Oct 09 2006 snwint@suse.de
|
||||
- no progress dots when in gfx mode
|
||||
* Fri Sep 29 2006 - snwint@suse.de
|
||||
* Fri Sep 29 2006 snwint@suse.de
|
||||
- update to version 3.31
|
||||
* The simple menu system (menu.c32 and vesamenu.c32) now
|
||||
support loading more than one configuration file at a time,
|
||||
@ -96,199 +131,199 @@ rm -rf $RPM_BUILD_ROOT/%{_datadir}/syslinux/com32
|
||||
* Fix issue where going back and forth between menus a lot
|
||||
would cause a hang.
|
||||
* ISOLINUX: Fix bug which made "cd boot sectors" not work.
|
||||
* Fri Aug 25 2006 - snwint@suse.de
|
||||
* Fri Aug 25 2006 snwint@suse.de
|
||||
- needs gcc41-32bit
|
||||
* Wed Aug 23 2006 - snwint@suse.de
|
||||
* Wed Aug 23 2006 snwint@suse.de
|
||||
- support latest gfxboot
|
||||
* Tue Aug 15 2006 - cthiel@suse.de
|
||||
* Tue Aug 15 2006 cthiel@suse.de
|
||||
- specfile cleanup
|
||||
- include chain.c32, copybs.com, ethersel.c32, mboot.c32, mbr.bin, menu.c32,
|
||||
syslinux.com, mboot.doc README.menu and README.usbkey
|
||||
* Mon Jun 19 2006 - snwint@suse.de
|
||||
* Mon Jun 19 2006 snwint@suse.de
|
||||
- syslinux did not clear memory between initrds (#184706)
|
||||
* Thu Apr 27 2006 - snwint@suse.de
|
||||
* Thu Apr 27 2006 snwint@suse.de
|
||||
- ignore drive reset error when booting from local disk (#169014)
|
||||
* Thu Feb 09 2006 - snwint@suse.de
|
||||
* Thu Feb 09 2006 snwint@suse.de
|
||||
- monitor detection can be skipped (#149578)
|
||||
* Thu Feb 02 2006 - snwint@suse.de
|
||||
* Thu Feb 02 2006 snwint@suse.de
|
||||
- no aborts while kernel loads in gfx mode (#145748)
|
||||
* Mon Jan 30 2006 - snwint@suse.de
|
||||
* Mon Jan 30 2006 snwint@suse.de
|
||||
- fixed isolinux-config to work with new perl
|
||||
* Wed Jan 25 2006 - mls@suse.de
|
||||
* Wed Jan 25 2006 mls@suse.de
|
||||
- converted neededforbuild to BuildRequires
|
||||
* Mon Jan 23 2006 - snwint@suse.de
|
||||
* Mon Jan 23 2006 snwint@suse.de
|
||||
- cjwatson@ubuntu.com: support big-endian cpio archives (#140119)
|
||||
- support direct driverupdate loading from CD-ROM (feat #152):
|
||||
o initrd loading errors are no longer fatal
|
||||
o if initrd name starts with '+' ask for CD change
|
||||
* Wed Dec 14 2005 - snwint@suse.de
|
||||
* Wed Dec 14 2005 snwint@suse.de
|
||||
- really disable text messages
|
||||
- cjwatson@ubuntu.com: turn off graphics for localboot
|
||||
* Fri Dec 02 2005 - snwint@suse.de
|
||||
* Fri Dec 02 2005 snwint@suse.de
|
||||
- make it build on beta
|
||||
* Wed Nov 30 2005 - snwint@suse.de
|
||||
* Wed Nov 30 2005 snwint@suse.de
|
||||
- update to version 3.11
|
||||
- gfxboot patch changed significantly - check README.gfxboot
|
||||
* Thu Oct 06 2005 - snwint@suse.de
|
||||
* Thu Oct 06 2005 snwint@suse.de
|
||||
- add chdir/getcwd functions to gfxboot
|
||||
* Mon Sep 26 2005 - snwint@suse.de
|
||||
* Mon Sep 26 2005 snwint@suse.de
|
||||
- wrote isolinux-config script
|
||||
* Fri Sep 09 2005 - snwint@suse.de
|
||||
* Fri Sep 09 2005 snwint@suse.de
|
||||
- press Alt key to optionally skip monitor detection (#115204)
|
||||
* Wed Apr 27 2005 - snwint@suse.de
|
||||
* Wed Apr 27 2005 snwint@suse.de
|
||||
- fixed to take bios memory size into account (#65458)
|
||||
* Fri Apr 22 2005 - snwint@suse.de
|
||||
* Fri Apr 22 2005 snwint@suse.de
|
||||
- fixed 16 bit color mode selection (#79312)
|
||||
* Tue Apr 12 2005 - snwint@suse.de
|
||||
* Tue Apr 12 2005 snwint@suse.de
|
||||
- make it work with gcc4
|
||||
* Fri Feb 04 2005 - snwint@suse.de
|
||||
* Fri Feb 04 2005 snwint@suse.de
|
||||
- solved memory corruption issue (might have caused #43877)
|
||||
* Mon Jan 31 2005 - snwint@suse.de
|
||||
* Mon Jan 31 2005 snwint@suse.de
|
||||
- don't read from disk (#47891)
|
||||
* Fri Jan 28 2005 - snwint@suse.de
|
||||
* Fri Jan 28 2005 snwint@suse.de
|
||||
- updated gfxboot patch
|
||||
* Mon Jan 24 2005 - snwint@suse.de
|
||||
* Mon Jan 24 2005 snwint@suse.de
|
||||
- added syslinux-nomtools
|
||||
- removed dependencies from mtools and bootsplash
|
||||
* Mon Sep 13 2004 - snwint@suse.de
|
||||
* Mon Sep 13 2004 snwint@suse.de
|
||||
- moved syslinux into /usr/bin (#44780)
|
||||
* Mon Aug 23 2004 - snwint@suse.de
|
||||
* Mon Aug 23 2004 snwint@suse.de
|
||||
- updated to syslinux 2.11
|
||||
* Thu Apr 08 2004 - snwint@suse.de
|
||||
* Thu Apr 08 2004 snwint@suse.de
|
||||
- make bios mem info available for gfxboot
|
||||
* Fri Apr 02 2004 - snwint@suse.de
|
||||
* Fri Apr 02 2004 snwint@suse.de
|
||||
- don't reset timeout for 'notice' option
|
||||
* Fri Apr 02 2004 - snwint@suse.de
|
||||
* Fri Apr 02 2004 snwint@suse.de
|
||||
- reduce max number of boot menu entries (syslinux: 64, isolinux: 32)
|
||||
to make room for boot graphics
|
||||
* Wed Mar 31 2004 - snwint@suse.de
|
||||
* Wed Mar 31 2004 snwint@suse.de
|
||||
- fixed pxelinux (#36625)
|
||||
* Mon Mar 15 2004 - snwint@suse.de
|
||||
* Mon Mar 15 2004 snwint@suse.de
|
||||
- fixed menu size check (#35508)
|
||||
- removed vmware from blacklist (#35896)
|
||||
* Mon Mar 08 2004 - ro@suse.de
|
||||
* Mon Mar 08 2004 ro@suse.de
|
||||
- fix build on x86_64
|
||||
* Fri Mar 05 2004 - snwint@suse.de
|
||||
* Fri Mar 05 2004 snwint@suse.de
|
||||
- update to 2.08
|
||||
* Tue Jan 13 2004 - snwint@suse.de
|
||||
* Tue Jan 13 2004 snwint@suse.de
|
||||
- understand new gfxboot file format
|
||||
* Tue Dec 16 2003 - snwint@suse.de
|
||||
* Tue Dec 16 2003 snwint@suse.de
|
||||
- boot disk may have a file system that spans several floppies
|
||||
* Wed Sep 10 2003 - snwint@suse.de
|
||||
* Wed Sep 10 2003 snwint@suse.de
|
||||
- fixed monitor data interpretation bug (#29718)
|
||||
* Mon Sep 01 2003 - snwint@suse.de
|
||||
* Mon Sep 01 2003 snwint@suse.de
|
||||
- work around bios disk read bug (seen on VIA KT133A)
|
||||
* Mon Aug 25 2003 - snwint@suse.de
|
||||
* Mon Aug 25 2003 snwint@suse.de
|
||||
- update to 2.06: fix problem that would occationally cause a
|
||||
boot failure, depending on the length of the kernel
|
||||
* Thu Aug 21 2003 - ro@suse.de
|
||||
* Thu Aug 21 2003 ro@suse.de
|
||||
- make it build on x86_64
|
||||
* Mon Aug 18 2003 - snwint@suse.de
|
||||
* Mon Aug 18 2003 snwint@suse.de
|
||||
- update to 2.05
|
||||
* Wed Apr 16 2003 - coolo@suse.de
|
||||
* Wed Apr 16 2003 coolo@suse.de
|
||||
- use BuildRoot
|
||||
* Tue Mar 11 2003 - snwint@suse.de
|
||||
* Tue Mar 11 2003 snwint@suse.de
|
||||
- wait for 'enter' in text mode interface, too (#25047)
|
||||
* Sat Mar 08 2003 - snwint@suse.de
|
||||
* Sat Mar 08 2003 snwint@suse.de
|
||||
- handle "boot from hd" errors properly (#24788)
|
||||
* Thu Mar 06 2003 - snwint@suse.de
|
||||
* Thu Mar 06 2003 snwint@suse.de
|
||||
- preselect 640x480 even if no vbe support at all
|
||||
* Sat Mar 01 2003 - snwint@suse.de
|
||||
* Sat Mar 01 2003 snwint@suse.de
|
||||
- dynamically change FAT buffer size; this gives more space for
|
||||
boot graphics
|
||||
- really add 640x480 to modelist if no VB extension was found (#24293)
|
||||
- _copy_ VBE mode list, might get overwritten (#23582)
|
||||
* Tue Feb 18 2003 - snwint@suse.de
|
||||
* Tue Feb 18 2003 snwint@suse.de
|
||||
- new splash handling: splash files no longer have to be added to
|
||||
initrd but are read separately from <resolution>.spl files
|
||||
* Fri Feb 14 2003 - snwint@suse.de
|
||||
* Fri Feb 14 2003 snwint@suse.de
|
||||
- read device path info
|
||||
- joined all diffs
|
||||
* Sun Feb 09 2003 - snwint@suse.de
|
||||
* Sun Feb 09 2003 snwint@suse.de
|
||||
- updated graphics patch
|
||||
* Wed Feb 05 2003 - snwint@suse.de
|
||||
* Wed Feb 05 2003 snwint@suse.de
|
||||
- make isolinux work around a strange bios bug (#23323)
|
||||
- fix reading vbe mode list for machines that don't zero
|
||||
its memory (#23261)
|
||||
* Wed Sep 04 2002 - snwint@suse.de
|
||||
* Wed Sep 04 2002 snwint@suse.de
|
||||
- select 8 bit fb modes if 16 bit is not available
|
||||
* Tue Sep 03 2002 - snwint@suse.de
|
||||
* Tue Sep 03 2002 snwint@suse.de
|
||||
- fixed minor bug detecting available gfx modes
|
||||
* Tue Sep 03 2002 - snwint@suse.de
|
||||
* Tue Sep 03 2002 snwint@suse.de
|
||||
- fixed Requires
|
||||
* Wed Jul 17 2002 - snwint@suse.de
|
||||
* Wed Jul 17 2002 snwint@suse.de
|
||||
- adaped graphics patch to handle new graphics file format
|
||||
* Mon Mar 04 2002 - snwint@suse.de
|
||||
* Mon Mar 04 2002 snwint@suse.de
|
||||
- detect fujitsu siemens notebook lcd
|
||||
* Mon Mar 04 2002 - snwint@suse.de
|
||||
* Mon Mar 04 2002 snwint@suse.de
|
||||
- allow booting from harddisk
|
||||
* Sun Mar 03 2002 - snwint@suse.de
|
||||
* Sun Mar 03 2002 snwint@suse.de
|
||||
- initrd may optionally be on a second disk
|
||||
* Tue Feb 19 2002 - snwint@suse.de
|
||||
* Tue Feb 19 2002 snwint@suse.de
|
||||
- make isolinux work on some more systems
|
||||
(they used to break with 'Disk error 00')
|
||||
* Mon Feb 18 2002 - snwint@suse.de
|
||||
* Mon Feb 18 2002 snwint@suse.de
|
||||
- removed Matrox cards from exception list
|
||||
- don't put monitor data into kernel cmdline
|
||||
* Fri Feb 01 2002 - ro@suse.de
|
||||
* Fri Feb 01 2002 ro@suse.de
|
||||
- changed neededforbuild <libpng> to <libpng-devel-packages>
|
||||
* Mon Sep 17 2001 - snwint@suse.de
|
||||
* Mon Sep 17 2001 snwint@suse.de
|
||||
- no fb for Matrox G550 cards (#10749)
|
||||
* Mon Sep 10 2001 - snwint@suse.de
|
||||
* Mon Sep 10 2001 snwint@suse.de
|
||||
- don't select vmware fb mode, the kernel doesn't like it
|
||||
* Sun Sep 09 2001 - snwint@suse.de
|
||||
* Sun Sep 09 2001 snwint@suse.de
|
||||
- created single diff file
|
||||
- support gfxboot-1.4
|
||||
* Tue Sep 04 2001 - snwint@suse.de
|
||||
* Tue Sep 04 2001 snwint@suse.de
|
||||
- should boot on some more computers
|
||||
- print warning and hint to use CD2 if we encounter a broken BIOS
|
||||
* Mon Sep 03 2001 - snwint@suse.de
|
||||
* Mon Sep 03 2001 snwint@suse.de
|
||||
- exclude list for cards where fbdev will not work
|
||||
- allow longer base directory name for boot image
|
||||
* Wed Aug 22 2001 - snwint@suse.de
|
||||
* Wed Aug 22 2001 snwint@suse.de
|
||||
- fixed 16 bit fb selection
|
||||
* Mon Aug 20 2001 - snwint@suse.de
|
||||
* Mon Aug 20 2001 snwint@suse.de
|
||||
- we want 16 bit framebuffer now
|
||||
* Fri Aug 10 2001 - snwint@suse.de
|
||||
* Fri Aug 10 2001 snwint@suse.de
|
||||
- added 1024x768 support
|
||||
* Mon Aug 06 2001 - snwint@suse.de
|
||||
* Mon Aug 06 2001 snwint@suse.de
|
||||
- upgraded to new version (1.62)
|
||||
- fixed isolinux to work with graphics
|
||||
- fixed minor isolinux bug to make it boot on Toshiba Satellite notebooks
|
||||
* Mon May 14 2001 - snwint@suse.de
|
||||
* Mon May 14 2001 snwint@suse.de
|
||||
- syslinux reports wrong video mode (#8244)
|
||||
* Wed May 09 2001 - snwint@suse.de
|
||||
* Wed May 09 2001 snwint@suse.de
|
||||
- fixed boot problem on d230 (#7958)
|
||||
- corrected detection of 800x600 frame buffer mode support (#7959)
|
||||
* Sun May 06 2001 - snwint@suse.de
|
||||
* Sun May 06 2001 snwint@suse.de
|
||||
- ask for driver update disk in graphics mode
|
||||
- F2 - F4 video mode selection in text mode
|
||||
- make 800x600 default if monitor supports it *or*
|
||||
graphics card has >= 4MB memory
|
||||
* Tue May 01 2001 - kukuk@suse.de
|
||||
* Tue May 01 2001 kukuk@suse.de
|
||||
- Add libpng to neededforbuild
|
||||
* Tue May 01 2001 - ro@suse.de
|
||||
* Tue May 01 2001 ro@suse.de
|
||||
- added libnetpbm to neededforbuild
|
||||
* Mon Apr 30 2001 - snwint@suse.de
|
||||
* Mon Apr 30 2001 snwint@suse.de
|
||||
- made it require gfxboot package
|
||||
- added netpbm to #neededforbuild
|
||||
* Mon Apr 30 2001 - snwint@suse.de
|
||||
* Mon Apr 30 2001 snwint@suse.de
|
||||
- new version (1.61): can now boot CDs directly (isolinux)
|
||||
- graphics support completely reworked
|
||||
* Tue Apr 03 2001 - snwint@suse.de
|
||||
* Tue Apr 03 2001 snwint@suse.de
|
||||
- completely reworked syslinux patch
|
||||
- support graphics boot screen
|
||||
* Sun Jan 14 2001 - snwint@suse.de
|
||||
* Sun Jan 14 2001 snwint@suse.de
|
||||
- new messages for our Driver Update feature
|
||||
* Tue Jan 09 2001 - ro@suse.de
|
||||
* Wed Jan 10 2001 ro@suse.de
|
||||
- re-added README.SuSE to diff
|
||||
* Mon Dec 18 2000 - snwint@suse.de
|
||||
* Mon Dec 18 2000 snwint@suse.de
|
||||
- detect BIOS extended read capability
|
||||
* Fri Jun 09 2000 - snwint@suse.de
|
||||
* Fri Jun 09 2000 snwint@suse.de
|
||||
- improved ddc parser
|
||||
- ! kernel cmdline gets quite long already (slightly below 200 chars) !
|
||||
* Fri Feb 11 2000 - snwint@suse.de
|
||||
* Fri Feb 11 2000 snwint@suse.de
|
||||
- new version (1.48)
|
||||
- some new features (see README.SuSE)
|
||||
* Mon Oct 11 1999 - snwint@suse.de
|
||||
* Mon Oct 11 1999 snwint@suse.de
|
||||
- added package (version 1.45)
|
||||
|
Loading…
Reference in New Issue
Block a user