# HG changeset patch # User Erik Quanstrom # Date 1316297294 -7200 # Node ID 63f1b9bcd300e0e9fd8d81aa7272d5eb80911a02 # Parent 56ed4f9cef2cb80d7de0a010d383b824bcf1b27f sys/src/nix/w/allow pxeload/boot.c: pxeload to boot compressed images R=nix-dev, noah.evans, rminnich CC=nix-dev http://codereview.appspot.com/5059043 Committer: Noah Evans diff -r 56ed4f9cef2c -r 63f1b9bcd300 sys/src/nix/w/pxeload/boot.c --- a/sys/src/nix/w/pxeload/boot.c Sun Sep 18 00:04:25 2011 +0200 +++ b/sys/src/nix/w/pxeload/boot.c Sun Sep 18 00:08:14 2011 +0200 @@ -479,8 +479,16 @@ /* relocate data to start at page boundary */ memmove((void*)PGROUND(PADDR(entry+text)), (void*)(PADDR(entry+text)), data); - print("entry: %lux\n", entry); - warp9(PADDR(entry)); + entry = GLLONG(b->hdr.entry); + magic = GLLONG(b->hdr.magic); + if(magic == I_MAGIC){ + print("entry: 0x%lux\n", entry); + warp9(PADDR(entry)); + } + else if(magic == S_MAGIC){ + entry64 = beswav(b->hdr.uvl[0]); + warp64(entry64); + } b->state = FAILED; return FAIL;