wok view linld/stuff/load.u @ rev 18801

syslinux: auto unlzma needs size to work
author Pascal Bellard <pascal.bellard@slitaz.org>
date Mon Jan 11 17:54:50 2016 +0100 (2016-01-11)
parents ab69381ebbcc
children df186455938f
line source
1 --- LINLD097/LOAD.CPP
2 +++ LINLD097/LOAD.CPP
3 @@ -400,10 +400,8 @@
5 if(first1k->boot_flag != 0xAA55)
6 die("No boot signature (55,AA). It's not a kernel");
7 - if(first1k->header != HdrS)
8 + if(first1k->header != HdrS) // starting linux 1.3.73
9 - die("No 'HdrS' signature (kernel is too old)");
10 + die("No 'HdrS' signature (kernel is too old, try /usr/bin/tobzimage)");
11 - if(first1k->version < 0x202)
12 - die("Loader protocol version is less than 2.02 (kernel is too old)");
13 if(!(first1k->loadflags & 0x01))
14 die("I can't load bzImages low");
16 @@ -414,7 +412,13 @@
17 // Tell rm loader some info
19 first1k->vid_mode = vid_mode;
20 - first1k->cmd_line_ptr = 0x98000;
21 + if(first1k->version >= 0x202) { // starting linux 2.4.0-test3-pre3
22 + first1k->cmd_line_ptr = 0x98000;
23 + }
24 + else {
25 + first1k->cl_magic = 0xA33F;
26 + first1k->cl_ofs = 0x8000;
27 + }
28 first1k->type_of_loader = 0xff; // kernel do not know us (yet :-)
29 // * will be called just before rm -> pm
30 first1k->realmode_switch_ofs = ofs(last_ditch);