526549
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Здравствуйте. Загорелся идеей сшить вместе файл загрузчика GRLDR со шрифтами UNIFONT(урезанными) и собственно самим меню. Всё прекрасно сшивается и даже работает по команде: copy /b LOADER + MENU + FONT GRLDR На выходе получаем GRLDR, который имеет внутри себя русское меню, которое даже нормально отображается. Беда вот в чём. Если меню небольшое (около 45-50 строк), то шрифты подгружаются нормально и всё меню отображается правильно. Но если меню увеличивается, то шрифты берутся не полностью. С какого то момента увеличение меню на строку приводит к тому, что шрифтов загрузится на 1 строку меньше. Последним символом в файле шрифтов является буква "я". Увеличили меню на строку, на строку меньше возьмется со шрифтов и буква "я" не отобразится верно. Увеличили еще меню на строку, со шрифтов не берется предпоследняя строка (символ "ю") и так если меню уже строк из 200-300, то шрифты не берутся вовсе. Думал, что есть ограничение подгружаемых строк из конца файла GRLDR, но если меню сделать огромным (200-300 строк), то оно загружаются без урезания на 100%, а вот шрифты - нет. Если шрифты не вшивать в файл, а подгружать командой FONT - всё прекрасно работает независимо от размера меню. В голову пришел метод временного мапинга части файла GRLDR (блок шрифтов) в оперативку и уже оттуда загрузка шрифтов командой FONT, но я не умею использовать ни команду cat ни read/write в GRUB. Выкладываю набор, который состоит из шрифта, меню и загрузчика GRUB. Скрипт (1.cmd) сшивает всё это в 1 файл. http://rgho.st/8MhWC4vQg В 21м пункте меню видим дописанную "(я)". Если меню увеличить на 1 пункт - увидим "(кракозяблик)" Может кто сможет модифицировать загрузчик, чтобы он брал шрифты из себя корректно. Спасибо. | Всего записей: 359 | Зарегистр. 20-01-2007 | Отправлено: 12:40 30-07-2016 | Исправлено: 526549, 12:42 30-07-2016 |
|