Hello community, here is the log from the commit of package gfxboot checked in at Thu Aug 24 17:56:11 CEST 2006. -------- --- arch/i386/gfxboot/gfxboot.changes 2006-08-21 16:50:00.000000000 +0200 +++ gfxboot/gfxboot.changes 2006-08-24 17:48:28.000000000 +0200 @@ -1,0 +2,6 @@ +Thu Aug 24 17:48:10 CEST 2006 - snwint@suse.de + +- 32 bit rewrite finished +- changed interface to bootloader + +------------------------------------------------------------------- Old: ---- gfxboot-3.2.37.tar.bz2 New: ---- gfxboot-3.3.0.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gfxboot.spec ++++++ --- /var/tmp/diff_new_pack.UFiIb3/_old 2006-08-24 17:55:34.000000000 +0200 +++ /var/tmp/diff_new_pack.UFiIb3/_new 2006-08-24 17:55:34.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package gfxboot (Version 3.2.37) +# spec file for package gfxboot (Version 3.3.0) # # Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -17,10 +17,10 @@ Obsoletes: gfxboot-devel Autoreqprov: on Summary: Graphical Boot Logo for LILO and SYSLINUX -Version: 3.2.37 +Version: 3.3.0 Release: 1 BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source: gfxboot-3.2.37.tar.bz2 +Source: gfxboot-3.3.0.tar.bz2 Source1: NLD.tar.bz2 Source2: SLES.tar.bz2 Source3: SuSE.tar.bz2 @@ -60,6 +60,9 @@ /usr/share/gfxboot %changelog -n gfxboot +* Thu Aug 24 2006 - snwint@suse.de +- 32 bit rewrite finished +- changed interface to bootloader * Mon Aug 21 2006 - snwint@suse.de - move to 32 bit, cont. * Mon Aug 07 2006 - snwint@suse.de ++++++ NLD.tar.bz2 ++++++ ++++++ SLES.tar.bz2 ++++++ ++++++ SuSE.tar.bz2 ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/themes/SuSE/Makefile new/themes/SuSE/Makefile --- old/themes/SuSE/Makefile 2006-08-16 16:11:25.000000000 +0200 +++ new/themes/SuSE/Makefile 2006-08-24 17:24:08.000000000 +0200 @@ -18,7 +18,7 @@ PIC_COMMON = timer_a.jpg PIC_INSTALL = back.jpg welcome.jpg text*.pcx -PIC_BOOT = back-low.jpg +PIC_BOOT = back.jpg FILES_INST = init languages $(TRANSLATIONS) 16x16.fnt kroete.dat hapysuse.mod \ $(PIC_COMMON) $(PIC_INSTALL) $(HELPINST_ALL) @@ -66,7 +66,6 @@ @echo $(DEFAULT_LANG) >boot/lang @echo $(DEFAULT_LANG) >>boot/languages endif - @mv boot/back-low.jpg boot/back.jpg @sh -c 'cd boot; echo $(FILES_BOOT_EN) | sed -e "s/ /\n/g" | cpio --quiet -o >message' installdir: install.config po install $(INCLUDES) $(HELPINST) Binary files old/themes/SuSE/back-low.jpg and new/themes/SuSE/back-low.jpg differ ++++++ Zen.tar.bz2 ++++++ ++++++ gfxboot-3.2.37.tar.bz2 -> gfxboot-3.3.0.tar.bz2 ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/gfxboot-3.2.37/Changelog new/gfxboot-3.3.0/Changelog --- old/gfxboot-3.2.37/Changelog 2006-08-21 16:49:05.000000000 +0200 +++ new/gfxboot-3.3.0/Changelog 2006-08-24 17:47:08.000000000 +0200 @@ -1,3 +1,7 @@ +23/8/2006: v3.3.0 + - 32 bit rewrite finished + - changed interface to bootloader + 21/8/2006: v3.2.37 - move to 32 bit, cont. diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/gfxboot-3.2.37/VERSION new/gfxboot-3.3.0/VERSION --- old/gfxboot-3.2.37/VERSION 2006-08-07 17:52:32.000000000 +0200 +++ new/gfxboot-3.3.0/VERSION 2006-08-23 11:29:57.000000000 +0200 @@ -1 +1 @@ -3.2.37 +3.3.0 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/gfxboot-3.2.37/bincode.asm new/gfxboot-3.3.0/bincode.asm --- old/gfxboot-3.2.37/bincode.asm 2006-08-21 16:26:40.000000000 +0200 +++ new/gfxboot-3.3.0/bincode.asm 2006-08-24 16:03:56.000000000 +0200 @@ -11,6 +11,7 @@ %include "modplay_defines.inc" %include "jpeg.inc" + ; some type definitions from mkbootmsg.c ; struct file_header_t fh_magic_id equ 0 @@ -35,6 +36,7 @@ foh_line_height equ 7 sizeof_font_header_t equ 8 + ; char data header definition ; struct char_header_t ch_ofs equ 0 @@ -42,6 +44,7 @@ ch_size equ 4 sizeof_char_header_t equ 8 ; must be 8, otherwise change find_char + ; struct playlist pl_file equ 0 ; actually file index + 1 pl_loop equ 1 @@ -53,6 +56,7 @@ sizeof_playlist equ 16 playlist_entries equ 4 + ; struct link li.label equ 0 li.text equ 4 @@ -61,6 +65,31 @@ li.size equ 12 ; search for 'li.size'! link_entries equ 64 + +; sysconfig data +sc.bootloader equ 0 +sc.sector_shift equ 1 +sc.media_type equ 2 +sc.failsafe equ 3 +sc.sysconfig_size equ 4 +sc.boot_drive equ 5 +sc.callback equ 6 +sc.bootloader_seg equ 8 +sc.reserved_1 equ 10 +sc.user_info_0 equ 12 +sc.user_info_1 equ 16 +sc.bios_mem_size equ 20 +sc.xmem_0 equ 24 +sc.xmem_1 equ 26 +sc.xmem_2 equ 28 +sc.xmem_3 equ 30 +sc.file equ 32 +sc.archive_start equ 36 +sc.archive_end equ 40 +sc.mem0_start equ 44 +sc.mem0_end equ 48 + + ; enum_type_t t_none equ 0 t_int equ 1 @@ -87,6 +116,7 @@ param_stack_size equ 1000 ret_stack_size equ 1000 + ; various error codes pserr_ok equ 0 pserr_nocode equ 1 @@ -143,13 +173,15 @@ jt_password_done dw gfx_password_done align 4, db 0 -; the memory area we are working with -mem dd 0 ; (lin) data start address -mem_free dd 0 ; (lin) start of free area for malloc -mem_max dd 0 ; (lin) end address -mem_archive dd 0 ; (lin) archive start address (0 -> none), ends at mem_free +file.start dd 0 ; the file we are in + +archive.start dd 0 ; archive start address (0 -> none) +archive.end dd 0 ; archive end -malloc.areas equ 4 +mem0.start dd 0 ; free low memory area start +mem0.end dd 0 ; dto, end + +malloc.areas equ 5 malloc.start dd 0 malloc.end dd 0 ; start, end pairs @@ -186,10 +218,9 @@ dict dd 0 ; lin dict.size dd 0 ; dict entries -boot_cs dw 0 ; seg -boot_sysconfig dw 0 ; ofs -boot_callback dd 0 ; seg:ofs -boot_cs.base dd 0 ; boot_cs * 16 +boot.base dd 0 ; bootloader segment +boot.sysconfig dd 0 ; bootloader parameter block +boot.callback dd 0 ; seg:ofs pstack dd 0 ; data stack pstack.size dd 0 ; entries @@ -201,8 +232,6 @@ image dd 0 ; (lin) current image image_width dw 0 image_height dw 0 -image_data dd 0 ; (seg:ofs) -image_pal dd 0 ; (seg:ofs) image_type db 0 ; 0:no image, 1: pcx, 2:jpeg pcx_line_starts dd 0 ; (lin) table of line starts @@ -466,8 +495,8 @@ %if debug ; debug texts -dmsg_01 db 'static memory: %p - %p', 10, 0 -dmsg_02 db ' malloc %d: %p - %p', 10, 0 +dmsg_01 db 10, 'Press a key to continue...', 0 +dmsg_02 db ' mem area %d: 0x%08x - 0x%08x', 10, 0 dmsg_03 db '%3u: addr 0x%06x, size 0x%06x+%u, ip 0x%04x, %s', 10, 0 dmsg_04 db 'oops: block at 0x%06x: size 0x%06x is too small', 10, 0 dmsg_04a db 'oops: 0x%06x > 0x%06x', 10, 0 @@ -629,15 +658,9 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Setup internal data structures. ; -; Initialize something. -; -; eax memory start -; ebx free memory start -; ecx memory end -; dx boot loader code segment -; si gfx_sysconfig offset -; edi file archive start, if any (ends at ebx) +; esi sysconfig data ; ; return: ; CF error @@ -656,24 +679,7 @@ cld - mov [mem],eax - mov [mem_free],ebx - mov [mem_max],ecx - mov [mem_archive],edi - mov [boot_cs],dx - mov [boot_sysconfig],si - - movzx eax,dx - shl eax,4 - mov [boot_cs.base],eax - - mov es,dx - mov ax,[es:si+9] - or ax,ax - jz gfx_init_20 - mov [boot_callback+2],dx - mov [boot_callback],ax -gfx_init_20: + mov [boot.sysconfig],esi ; setup gdt, to get pm-switching going call gdt_init @@ -684,48 +690,64 @@ pm_enter + mov esi,[boot.sysconfig] + movzx eax,word [es:esi+sc.bootloader_seg] + shl eax,4 + mov [boot.base],eax + + push dword [es:esi+sc.file] + pop dword [file.start] + push dword [es:esi+sc.archive_start] + pop dword [archive.start] + push dword [es:esi+sc.archive_end] + pop dword [archive.end] + push dword [es:esi+sc.mem0_start] + pop dword [mem0.start] + push dword [es:esi+sc.mem0_end] + pop dword [mem0.end] + + mov eax,[es:esi+sc.callback] + or ax,ax ; check only offset + jz gfx_init_20 + mov [boot.callback],eax +gfx_init_20: + ; init malloc memory chain - push dword [mem_free] + push dword [mem0.start] pop dword [malloc.area] - push dword [mem_max] - pop dword [malloc.area + 4] + push dword [mem0.end] + pop dword [malloc.area+4] - movzx eax,word [boot_cs] - movzx ebx,word [boot_sysconfig] - shl eax,4 - add ebx,eax - mov esi,malloc.area + 8 - cmp byte [es:ebx],1 ; syslinux - jnz gfx_init_30 - mov ecx,2 ; 2 extended mem areas -gfx_init_24: - movzx eax,word [es:ebx+24] ; extended mem area pointer + mov ebx,[boot.sysconfig] + mov esi,malloc.area+8 + mov ecx,malloc.areas-1 ; extended mem areas +gfx_init_30: + movzx eax,word [es:ebx+sc.xmem_0] ; extended mem area pointer or eax,eax - jz gfx_init_26 + jz gfx_init_40 mov edx,eax and dl,~0fh shl edx,16 - mov [esi],edx + and eax,0fh shl eax,20 add eax,edx mov [esi+4],eax + + ; magic: if archive was loaded in high memory, exclude it + cmp edx,[archive.start] + jnz gfx_init_35 + mov edx,[archive.end] +gfx_init_35: + mov [esi],edx + add esi,8 add ebx,2 dec ecx - jnz gfx_init_24 -gfx_init_26: - jmp gfx_init_40 + jnz gfx_init_30 -gfx_init_30: - ; 2MB - 3MB (to avoid A20 tricks) - mov eax,200000h - mov [esi],eax - add eax,100000h ; 1MB - mov [esi+4],eax gfx_init_40: - call malloc_init ; setup full pm interface @@ -733,6 +755,7 @@ call pm_init ; allocate 8k local stack + mov eax,8 << 10 mov [stack.size],eax add eax,3 @@ -741,21 +764,23 @@ add eax,3 and eax,~3 jnz gfx_init_50 + cmp eax,100000h ; must be low memory + jb gfx_init_50 ; malloc failed - keep stack push word [rm_seg.ss] pop word [local_stack.seg] mov eax,esp mov [local_stack.ofs],eax - jmp gfx_init_55 + jmp gfx_init_51 gfx_init_50: mov edx,eax and eax,0fh add eax,[stack.size] mov [local_stack.ofs],eax - shr dx,4 + shr edx,4 mov [local_stack.seg],dx -gfx_init_55: +gfx_init_51: ; now we really start... pm_leave @@ -765,33 +790,30 @@ pm_enter -%if debug mov esi,hello call printf -%endif ; get initial keyboard state push word [es:417h] pop word [kbd_status] -%if debug - mov eax,[mem] - pf_arg_uint 0,eax - mov eax,[mem_max] - pf_arg_uint 1,eax - - mov esi,dmsg_01 - call printf + mov eax,[boot.sysconfig] + mov al,[es:eax+sc.failsafe] + test al,1 + jz gfx_init_58 xor ebx,ebx -.malloc_deb: +gfx_init_55: pf_arg_uchar 0,bl - mov eax,[malloc.area + 8*ebx] + mov eax,[malloc.area+8*ebx] pf_arg_uint 1,eax - mov eax,[malloc.area + 8*ebx + 4] + mov eax,[malloc.area+8*ebx+4] pf_arg_uint 2,eax + or eax,eax + jz gfx_init_57 + push ebx mov esi,dmsg_02 call printf @@ -799,8 +821,39 @@ inc ebx cmp ebx,malloc.areas - jb .malloc_deb -%endif + jb gfx_init_55 + +gfx_init_57: + + mov esi,dmsg_01 + call printf + call get_key + +gfx_init_58: + + ; alloc memory for palette data + call pal_init + jc gfx_init_90 + + mov eax,200h + call calloc + cmp eax,1 + jc gfx_init_90 + mov [vbe_buffer],eax + + mov eax,100h + call calloc + cmp eax,1 + jc gfx_init_90 + mov [vbe_info_buffer],eax + + ; those must be low memory addresses: + mov eax,[gfx_pal_tmp] + or eax,[vbe_buffer] + or eax,[vbe_info_buffer] + cmp eax,100000h + cmc + jc gfx_init_90 call dict_init jc gfx_init_90 @@ -808,7 +861,7 @@ call stack_init jc gfx_init_90 - mov eax,[mem] + mov eax,[file.start] mov esi,eax add eax,[es:esi+fh_code] mov [pscode_start],eax @@ -819,27 +872,13 @@ ; jpg decoding buffer call jpg_setup - - ; alloc memory for palette data - call pal_init - - mov eax,100h - call calloc - cmp eax,1 jc gfx_init_90 - mov [infobox_buffer],eax - - mov eax,200h - call calloc - cmp eax,1 - jc gfx_init_90 - mov [vbe_buffer],eax mov eax,100h call calloc cmp eax,1 jc gfx_init_90 - mov [vbe_info_buffer],eax + mov [infobox_buffer],eax mov eax,200h call calloc @@ -855,10 +894,17 @@ ; ok, we've done it, now continue the setup -%if 0 + mov eax,[boot.sysconfig] + mov al,[es:eax+sc.failsafe] + test al,1 + jz gfx_init_59 + call dump_malloc + mov esi,dmsg_01 + call printf call get_key -%endif + +gfx_init_59: ; run global code xor eax,eax @@ -892,8 +938,8 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Finish gfx code. ; -; Do something. bits 16 @@ -921,10 +967,11 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Input a text line. ; -; [boot_cs]:di buffer (0 --> no buffer) -; cx buffer size -; ax timeout value (0 --> no timeout) +; edi buffer (0: no buffer) +; ecx buffer size +; eax timeout value (0: no timeout) ; ; return: ; eax action (1, 2: textmode, boot) @@ -936,15 +983,11 @@ gfx_input: gfx_enter - movzx edi,di - movzx ecx,cx - push edi push ecx cmp byte [input_notimeout],0 jnz gfx_input_10 - movzx eax,ax mov [input_timeout],eax mov [input_timeout_start],eax gfx_input_10: @@ -1006,7 +1049,6 @@ jz gfx_input_70 mov esi,eax - add edi,[boot_cs.base] gfx_input_60: es lodsb stosb @@ -1043,8 +1085,9 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Setup boot menu entries. ; -; es:si menu description +; esi menu description ; bits 16 @@ -1052,12 +1095,6 @@ gfx_menu_init: gfx_enter - movzx esi,si - movzx eax,word [rm_seg.es] - shl eax,4 - add esi,eax - -gfx_menu_init_20: push esi movzx eax,word [es:esi+menu_entries] push eax @@ -1165,9 +1202,10 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Show info box. ; -; [boot_cs]:si info text 1 -; [boot_cs]:di info text 2 (may be 0 --> no text 2) +; esi info text 1 +; edi info text 2 (0: no text 2) ; al 0/1 info/error ; @@ -1181,28 +1219,24 @@ mov ecx,100h-1 mov ebx,[infobox_buffer] - movzx esi,si or esi,esi jnz gfx_infobox_init_20 inc ebx jmp gfx_infobox_init_40 gfx_infobox_init_20: - add esi,[boot_cs.base] -gfx_infobox_init_21: es lodsb mov [es:ebx],al inc ebx or al,al - loopnz gfx_infobox_init_21 + loopnz gfx_infobox_init_20 or ecx,ecx jz gfx_infobox_init_40 - movzx esi,di + mov esi,edi or esi,esi jz gfx_infobox_init_40 inc ecx dec ebx - add esi,[boot_cs.base] gfx_infobox_init_25: es lodsb mov [es:ebx],al @@ -1258,6 +1292,7 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Close info box. ; bits 16 @@ -1296,9 +1331,10 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Setup progress bar window. ; ; eax max -; [boot_cs]:si kernel name +; esi kernel name ; bits 16 @@ -1322,9 +1358,7 @@ push eax mov dword [pstack.ptr],1 - movzx eax,si - add eax,[boot_cs.base] - + mov eax,esi mov dl,t_string xor ecx,ecx call set_pstack_tos @@ -1350,6 +1384,7 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Close progress bar window. ; bits 16 @@ -1388,6 +1423,7 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Advance progress bar. ; bits 16 @@ -1439,6 +1475,7 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Set progress bar values. ; bits 16 @@ -1453,9 +1490,10 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Setup password window. ; -; [boot_cs]:si password -; [boot_cs]:di image name +; esi password +; edi image name ; bits 16 @@ -1479,18 +1517,14 @@ mov dword [pstack.ptr],2 - movzx eax,si - add eax,[boot_cs.base] - + mov eax,esi mov dl,t_string xor ecx,ecx push edi call set_pstack_tos pop edi - movzx eax,di - add eax,[boot_cs.base] - + mov eax,edi mov dl,t_string mov ecx,1 call set_pstack_tos @@ -1517,8 +1551,9 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +; Close password window. ; -; [boot_cs]:si password +; esi password ; bits 16 @@ -1540,9 +1575,7 @@ mov dword [pstack.ptr],1 - movzx eax,si - add eax,[boot_cs.base] - + mov eax,esi mov dl,t_string xor ecx,ecx call set_pstack_tos @@ -1633,11 +1666,11 @@ bits 32 gfx_cb: - cmp dword [boot_callback],0 + cmp dword [boot.callback],0 jz gfx_cb_80 pm_leave push ds - call far [boot_callback] + call far [boot.callback] pop ds pm_enter jmp gfx_cb_90 @@ -2077,7 +2110,7 @@ bits 32 dict_init: - mov eax,[mem] + mov eax,[file.start] mov ecx,[es:eax+fh_dict] cmp ecx,1 @@ -2280,7 +2313,6 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; ; Get some memory. ; ; eax memory size @@ -2296,6 +2328,7 @@ push eax call malloc pop ecx +calloc_10: or eax,eax jz calloc_90 push eax @@ -2308,35 +2341,32 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; ; Get some memory (taken from extended memory, if possible). ; ; eax memory size ; ; return: ; eax linear address (0 if the request failed) +; memory is initialized with 0 ; bits 32 -xmalloc: +xcalloc: mov bx,8 ; start with mem area 1 push eax call malloc_10 - pop edx + pop ecx or eax,eax - jnz xmalloc_90 + jnz calloc_10 - mov eax,edx - jmp malloc -xmalloc_90: - ret + mov eax,ecx + jmp calloc ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; ; Get some memory. ; ; eax memory size @@ -2429,7 +2459,6 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; ; Free memory. ; ; eax linear address @@ -2618,7 +2647,6 @@ ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; ; Get memory size. ; ; eax memory area (0 ... malloc.areas - 1) @@ -2804,18 +2832,18 @@ ; some file in cpio archive fms_file: - mov ebx,[mem_archive] + mov ebx,[archive.start] or ebx,ebx stc jz fms_file_90 cmp eax,ebx jc fms_file_90 - cmp eax,[mem_free] + cmp eax,[archive.end] cmc jc fms_file_90 fms_file_10: - mov ecx,[mem_free] + mov ecx,[archive.end] sub ecx,26 cmp ebx,ecx jae fms_file_80 @@ -2905,7 +2933,7 @@ find_file: mov esi,eax mov al,0 - mov ebp,[mem_archive] + mov ebp,[archive.start] or ebp,ebp jz find_file_80 find_file_20: @@ -2955,7 +2983,7 @@ add ebp,ecx mov ecx,ebp add ecx,26 - cmp ecx,[mem_free] + cmp ecx,[archive.end] jb find_file_20 find_file_80: xor eax,eax @@ -7739,7 +7767,7 @@ jc alloc_fb_80 push ecx push edx - call xmalloc + call calloc pop edx pop ecx or eax,eax @@ -8257,10 +8285,7 @@ bits 32 prim_sysconfig: - movzx eax,word [boot_cs] - movzx edx,word [boot_sysconfig] - shl eax,4 - add eax,edx + mov eax,[boot.sysconfig] jmp pr_getptr_or_none @@ -13813,18 +13838,14 @@ cmp byte [es:esi],12 jnz pcx_init_80 + inc esi + mov byte [image_type],1 ; pcx mov [image],edi mov [image_width],cx mov [image_height],dx - lea ebx,[edi+80h] - mov [image_data],ebx - - inc esi - mov [image_pal],esi - push esi call parse_pcx_img pop esi @@ -13883,7 +13904,8 @@ jz parse_pcx_img_90 mov edi,eax - mov esi,[image_data] + mov esi,[image] + add esi,80h ; skip pcx header xor edx,edx ; y count @@ -14035,6 +14057,7 @@ mov eax,jpg_data_size + 15 call calloc or eax,eax + stc jz jpg_setup_90 ; align a bit @@ -14692,8 +14715,8 @@ pm_init: mov eax,(8+8)*100h - call calloc - cmp eax,byte 1 + call xcalloc + cmp eax,1 jc pm_init_90 mov [pm_idt.base],eax diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/gfxboot-3.2.37/mkbootmsg.c new/gfxboot-3.3.0/mkbootmsg.c --- old/gfxboot-3.2.37/mkbootmsg.c 2006-01-23 11:03:57.000000000 +0100 +++ new/gfxboot-3.3.0/mkbootmsg.c 2006-08-23 13:55:13.000000000 +0200 @@ -16,7 +16,7 @@ #include "bincode.h" #define MAGIC 0xb2d97f00 -#define VERSION 7 +#define VERSION 8 #define DICT_SIZE 1000 #define MAX_INCLUDE 10 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org