1 1.4 phx /* $NetBSD: bebox_bootrec.h,v 1.4 2014/04/22 21:37:52 phx Exp $ */ 2 1.1 garbled 3 1.1 garbled #define BEBOX_HEADER_SIZE 0x6400 4 1.2 kiyohara #define BEBOX_BLOCK_SIZE 0x200 5 1.2 kiyohara #define BEBOX_FILE_BLOCK_SIZE 0x100 6 1.1 garbled #define BEBOX_FILE_SIZE_OFFSET 0x00004494 7 1.1 garbled #define BEBOX_FILE_SIZE_ALIGN_OFFSET 0x00004498 8 1.1 garbled #define BEBOX_FILE_BLOCK_MAP_START 0x00000200 9 1.1 garbled #define BEBOX_FILE_BLOCK_MAP_END 0x00000368 10 1.1 garbled 11 1.1 garbled u_char bebox_image_data0[] = { 12 1.1 garbled 0x00, 0x03, 0x00, 0x00, 0xde, 0xad, 0xbe, 0xef, /* mtime */ 13 1.1 garbled 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 14 1.1 garbled 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x0b, 0x40, /* avail size */ 15 1.1 garbled 0x00, 0x00, 0x02, 0x00, 0xff, 0xff, 0xff, 0xff, 16 1.1 garbled 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x0b, 0x40, /* used block */ 17 1.3 kiyohara 0x01, 0x00, 0x00, 0x00, 0x4e, 0x65, 0x74, 0x42, 18 1.3 kiyohara 0x53, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 19 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 20 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 21 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 22 1.1 garbled 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x41, 0xc0, 23 1.1 garbled 0xbe, 0x00, 0xbe, 0x01, 0xbe, 0x02, 0xbe, 0x03, 24 1.1 garbled 0xbe, 0x04, 0xbe, 0x05, 0xbe, 0x06, 0xbe, 0x07, 25 1.1 garbled 0xbe, 0x08, 0xbe, 0x09, 0xbe, 0x0a, 0xbe, 0x0b, 26 1.1 garbled 0xbe, 0x0c, 0xbe, 0x0d, 0xbe, 0x0e, 0xbe, 0x0f, 27 1.1 garbled 0xbe, 0x10, 0xbe, 0x11, 0xbe, 0x12, 0xbe, 0x13, 28 1.1 garbled 0xbe, 0x14, 0xbe, 0x15, 0xbe, 0x16, 0xbe, 0x17, 29 1.1 garbled 0xbe, 0x18, 0xbe, 0x19, 0xbe, 0x1a, 0xbe, 0x1b, 30 1.1 garbled 0xbe, 0x1c, 0xbe, 0x1d, 0xbe, 0x1e, 0xbe, 0x1f, 31 1.1 garbled 0xbe, 0x20, 0xbe, 0x21, 0xbe, 0x22, 0xbe, 0x23, 32 1.1 garbled 0xbe, 0x24, 0xbe, 0x25, 0xbe, 0x26, 0xbe, 0x27, 33 1.1 garbled 0xbe, 0x28, 0xbe, 0x29, 0xbe, 0x2a, 0xbe, 0x2b, 34 1.1 garbled 0xbe, 0x2c, 0xbe, 0x2d, 0xbe, 0x2e, 0xbe, 0x2f, 35 1.1 garbled 0xbe, 0x30, 0xbe, 0x31, 0xbe, 0x32, 0xbe, 0x33, 36 1.1 garbled 0xbe, 0x34, 0xbe, 0x35, 0xbe, 0x36, 0xbe, 0x37, 37 1.1 garbled 0xbe, 0x38, 0xbe, 0x39, 0xbe, 0x3a, 0xbe, 0x3b, 38 1.1 garbled 0xbe, 0x3c, 0xbe, 0x3d, 0xbe, 0x3e, 0xbe, 0x3f, 39 1.1 garbled 0xbe, 0x40, 0xbe, 0x41, 0xbe, 0x42, 0xbe, 0x43, 40 1.1 garbled 0xbe, 0x44, 0xbe, 0x45, 0xbe, 0x46, 0xbe, 0x47, 41 1.1 garbled 0xbe, 0x48, 0xbe, 0x49, 0xbe, 0x4a, 0xbe, 0x4b, 42 1.1 garbled 0xbe, 0x4c, 0xbe, 0x4d, 0xbe, 0x4e, 0xbe, 0x4f, 43 1.1 garbled 0xbe, 0x50, 0xbe, 0x51, 0xbe, 0x52, 0xbe, 0x53, 44 1.1 garbled 0xbe, 0x54, 0xbe, 0x55, 0xbe, 0x56, 0xbe, 0x57, 45 1.1 garbled 0xbe, 0x58, 0xbe, 0x59, 0xbe, 0x5a, 0xbe, 0x5b, 46 1.1 garbled 0xbe, 0x5c, 0xbe, 0x5d, 0xbe, 0x5e, 0xbe, 0x5f, 47 1.1 garbled 0xbe, 0x60, 0xbe, 0x61, 0xbe, 0x62, 0xbe, 0x63, 48 1.1 garbled 0xbe, 0x64, 0xbe, 0x65, 0xbe, 0x66, 0xbe, 0x67, 49 1.1 garbled 0xbe, 0x68, 0xbe, 0x69, 0xbe, 0x6a, 0xbe, 0x6b, 50 1.1 garbled 0xbe, 0x6c, 0xbe, 0x6d, 0xbe, 0x6e, 0xbe, 0x6f, 51 1.1 garbled 0xbe, 0x70, 0xbe, 0x71, 0xbe, 0x72, 0xbe, 0x73, 52 1.1 garbled 0xbe, 0x74, 0xbe, 0x75, 0xbe, 0x76, 0xbe, 0x77, 53 1.1 garbled 0xbe, 0x78, 0xbe, 0x79, 0xbe, 0x7a, 0xbe, 0x7b, 54 1.1 garbled 0xbe, 0x7c, 0xbe, 0x7d, 0xbe, 0x7e, 0xbe, 0x7f, 55 1.1 garbled 0xbe, 0x80, 0xbe, 0x81, 0xbe, 0x82, 0xbe, 0x83, 56 1.1 garbled 0xbe, 0x84, 0xbe, 0x85, 0xbe, 0x86, 0xbe, 0x87, 57 1.1 garbled 0xbe, 0x88, 0xbe, 0x89, 0xbe, 0x8a, 0xbe, 0x8b, 58 1.1 garbled 0xbe, 0x8c, 0xbe, 0x8d, 0xbe, 0x8e, 0xbe, 0x8f, 59 1.1 garbled 0xbe, 0x90, 0xbe, 0x91, 0xbe, 0x92, 0xbe, 0x93, 60 1.1 garbled 0xbe, 0x94, 0xbe, 0x95, 0xbe, 0x96, 0xbe, 0x97, 61 1.1 garbled 0xbe, 0x98, 0xbe, 0x99, 0xbe, 0x9a, 0xbe, 0x9b, 62 1.1 garbled 0xbe, 0x9c, 0xbe, 0x9d, 0xbe, 0x9e, 0xbe, 0x9f, 63 1.1 garbled 0xbe, 0xa0, 0xbe, 0xa1, 0xbe, 0xa2, 0xbe, 0xa3, 64 1.1 garbled 0xbe, 0xa4, 0xbe, 0xa5, 0xbe, 0xa6, 0xbe, 0xa7, 65 1.1 garbled 0xbe, 0xa8, 0xbe, 0xa9, 0xbe, 0xaa, 0xbe, 0xab, 66 1.1 garbled 0xbe, 0xac, 0xbe, 0xad, 0xbe, 0xae, 0xbe, 0xaf, 67 1.1 garbled 0xbe, 0xb0, 0xbe, 0xb1, 0xbe, 0xb2, 0xbe, 0xb3, 68 1.1 garbled 0xbe, 0xb4, 0xbe, 0xb5, 0xbe, 0xb6, 0xbe, 0xb7, 69 1.1 garbled 0xbe, 0xb8, 0xbe, 0xb9, 0xbe, 0xba, 0xbe, 0xbb, 70 1.1 garbled 0xbe, 0xbc, 0xbe, 0xbd, 0xbe, 0xbe, 0xbe, 0xbf, 71 1.1 garbled 0xbe, 0xc0, 0xbe, 0xc1, 0xbe, 0xc2, 0xbe, 0xc3, 72 1.1 garbled 0xbe, 0xc4, 0xbe, 0xc5, 0xbe, 0xc6, 0xbe, 0xc7, 73 1.1 garbled 0xbe, 0xc8, 0xbe, 0xc9, 0xbe, 0xca, 0xbe, 0xcb, 74 1.1 garbled 0xbe, 0xcc, 0xbe, 0xcd, 0xbe, 0xce, 0xbe, 0xcf, 75 1.1 garbled 0xbe, 0xd0, 0xbe, 0xd1, 0xbe, 0xd2, 0xbe, 0xd3, 76 1.1 garbled }; 77 1.1 garbled 78 1.1 garbled u_char bebox_image_data1[] = { 79 1.1 garbled 0x54, 0x72, 0x61, 0x73, 0x68, 0x00, 0x00, 0x00, 80 1.1 garbled }; 81 1.1 garbled 82 1.1 garbled u_char bebox_image_data2[] = { 83 1.1 garbled 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 84 1.1 garbled 0xff, 0xff, 0xff, 0xff, 0xde, 0xad, 0xbe, 0xef, /* mtime */ 85 1.1 garbled 0xde, 0xad, 0xbe, 0xef, 0x00, 0x00, 0x00, 0x00, /* mtime */ 86 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 87 1.1 garbled 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x41, 0xff, 88 1.1 garbled }; 89 1.1 garbled 90 1.1 garbled u_char bebox_image_data3[] = { 91 1.1 garbled 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x00, 0x00, 92 1.1 garbled }; 93 1.1 garbled 94 1.1 garbled u_char bebox_image_data4[] = { 95 1.1 garbled 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x00, 96 1.1 garbled 0xff, 0xff, 0xff, 0xff, 0xde, 0xad, 0xbe, 0xef, /* mtime */ 97 1.1 garbled 0xde, 0xad, 0xbe, 0xef, 0x00, 0x00, 0x00, 0x00, /* mtime */ 98 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 99 1.1 garbled 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x41, 0xff, 100 1.1 garbled }; 101 1.1 garbled 102 1.1 garbled u_char bebox_image_data5[] = { 103 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 104 1.1 garbled }; 105 1.1 garbled 106 1.1 garbled u_char bebox_image_data6[] = { 107 1.1 garbled 0x00, 0x72, 0x61, 0x73, 0x68, 0x00, 0x00, 0x00, 108 1.1 garbled }; 109 1.1 garbled 110 1.1 garbled u_char bebox_image_data7[] = { 111 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xff, 112 1.1 garbled }; 113 1.1 garbled 114 1.1 garbled u_char bebox_image_data8[] = { 115 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 116 1.1 garbled }; 117 1.1 garbled 118 1.1 garbled u_char bebox_image_data9[] = { 119 1.1 garbled 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x00, 0x00, 120 1.1 garbled }; 121 1.1 garbled 122 1.1 garbled u_char bebox_image_data10[] = { 123 1.1 garbled 0x80, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x65, 124 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0xde, 0xad, 0xbe, 0xef, /* mtime */ 125 1.1 garbled 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, /* mtime/filesize */ 126 1.1 garbled 0xde, 0xea, 0xbe, 0xef, 0x00, 0x00, 0x00, 0x00, /* filesize(aligned) */ 127 1.1 garbled 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x81, 0xb6, 128 1.1 garbled }; 129 1.1 garbled 130 1.1 garbled u_char bebox_image_data11[] = { 131 1.1 garbled 0x00, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x00, 0x00, 132 1.1 garbled }; 133 1.1 garbled 134 1.1 garbled u_char bebox_image_data12[] = { 135 1.1 garbled 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xff, 136 1.1 garbled }; 137 1.1 garbled 138 1.1 garbled struct bebox_image_block { 139 1.4 phx int32_t offset; 140 1.1 garbled u_char *data; 141 1.4 phx int32_t size; 142 1.1 garbled }; 143 1.1 garbled 144 1.1 garbled #define BEBOX_IMG(x) __CONCAT(bebox_image_data,x) 145 1.1 garbled #define BEBOX_IMG_DATA_SIZE(x) BEBOX_IMG(x), \ 146 1.1 garbled (sizeof (BEBOX_IMG(x)) / sizeof (BEBOX_IMG(x)[0])) 147 1.1 garbled 148 1.1 garbled struct bebox_image_block bebox_image_block[] = { 149 1.1 garbled { 0x00000000, BEBOX_IMG_DATA_SIZE(0) }, 150 1.1 garbled { 0x00000440, BEBOX_IMG_DATA_SIZE(1) }, 151 1.1 garbled { 0x00000480, BEBOX_IMG_DATA_SIZE(2) }, 152 1.1 garbled { 0x000004c0, BEBOX_IMG_DATA_SIZE(3) }, 153 1.1 garbled { 0x00000500, BEBOX_IMG_DATA_SIZE(4) }, 154 1.1 garbled { 0x00002400, BEBOX_IMG_DATA_SIZE(5) }, 155 1.1 garbled { 0x00002440, BEBOX_IMG_DATA_SIZE(6) }, 156 1.1 garbled { 0x000024a0, BEBOX_IMG_DATA_SIZE(7) }, 157 1.1 garbled { 0x00004400, BEBOX_IMG_DATA_SIZE(8) }, 158 1.1 garbled { 0x00004440, BEBOX_IMG_DATA_SIZE(9) }, 159 1.1 garbled { 0x00004480, BEBOX_IMG_DATA_SIZE(10) }, 160 1.1 garbled { 0x000044c0, BEBOX_IMG_DATA_SIZE(11) }, 161 1.1 garbled { 0x00004520, BEBOX_IMG_DATA_SIZE(12) }, 162 1.1 garbled { -1 } 163 1.1 garbled }; 164 1.1 garbled 165 1.4 phx int32_t bebox_mtime_offset[] = { 166 1.1 garbled 0x00000004, 167 1.1 garbled 0x0000048c, 168 1.1 garbled 0x00000490, 169 1.1 garbled 0x0000050c, 170 1.1 garbled 0x00000510, 171 1.1 garbled 0x0000448c, 172 1.1 garbled 0x00004490, 173 1.1 garbled -1 174 1.1 garbled }; 175