wok rev 3922
syslinux: display ram size detected
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Tue Aug 18 23:35:25 2009 +0200 (2009-08-18) |
parents | 6dbc26198e7d |
children | 57a049c42f13 |
files | syslinux/stuff/extra/ifmem.c |
line diff
1.1 --- a/syslinux/stuff/extra/ifmem.c Tue Aug 18 21:42:30 2009 +0200 1.2 +++ b/syslinux/stuff/extra/ifmem.c Tue Aug 18 23:35:25 2009 +0200 1.3 @@ -49,7 +49,7 @@ 1.4 // Get memory size in Kb 1.5 static unsigned long memory_size(void) 1.6 { 1.7 - unsigned long bytes = 0; 1.8 + uint64_t bytes = 0; 1.9 com32sys_t ireg, oreg; 1.10 struct e820_data ed; 1.11 1.12 @@ -94,19 +94,22 @@ 1.13 { 1.14 char *s; 1.15 int i, j = 1; 1.16 + unsigned long ram_size; 1.17 1.18 for (s = argv[1]; *s && (*s < '0' || *s > '9'); s++); 1.19 1.20 + openconsole(&dev_null_r, &dev_stdcon_w); 1.21 if (argc < 4 || !*s) { 1.22 - openconsole(&dev_null_r, &dev_stdcon_w); 1.23 perror("\nUsage: ifmem.c32 size_KB boot_large_memory boot_small_memory\n"); 1.24 return 1; 1.25 } 1.26 1.27 // find target according to ram size 1.28 + ram_size = memory_size(); 1.29 + printf("Total memory found %luK.\n",ram_size); 1.30 for (i = 1; i + 2 < argc; ) { 1.31 j = i++; // size 1.32 - if (memory_size() >= strtoul(s, NULL, 0)) break; 1.33 + if (ram_size >= strtoul(s, NULL, 0)) break; 1.34 s = argv[++i]; 1.35 } 1.36