Версия более новая, НО... По идее старые исходники должны компилироваться в новой версии без корректировки (orgimage/finimage содержат лишь то, что раньше было непосредственно в исходниках).
А я всё думал, вспомнит ли Phantom_84 в этой теме про альтернативу. Ну раз пошла такая пьянка, сделаем ссылки взаимными: альтернативный вариант.
Я исправляюсь... Из жестко закодированных констант сейчас во включаемых файлах остались только размеры секторов (512 байт и 2 Кб (CD/DVD)). Например: Код (Text): macro reset id { local start,count,value,disp aligndata IP_CLUSTERSIZE*512 if id#_size>0 start=(id/512-$$/512-IP_RESERVEDSECTORS-IP_FATS*IP_FATSIZE-IP_ROOTSIZE)/IP_CLUSTERSIZE+2 count=(id#_size+IP_CLUSTERSIZE*512-1)/(IP_CLUSTERSIZE*512) repeat count value=start+% disp=$$+IP_RESERVEDSECTORS*512+2*(value-1) if %=count times IP_FATS store word 0FFFFh at (%-1)*IP_FATSIZE*512+disp else times IP_FATS store word value at (%-1)*IP_FATSIZE*512+disp end if end repeat end if } На ваше замечание про стиль и комменты я позволил себе наплевать, т.к., повторяю, данные включаемые файлы предназначены для использования, а не для изучения.
Phantom_84 Да я не против. Но Вам самому так проще, или Вы принципиально не хотите сделать код более читабельным? Кстати, помнится, я приводил аргументы, согласно которым полноценное использование Ваших макросов без их изучения невозможно.
Мне не проще, а без разницы. Я не стремился сделать код более читабельным, т.к. не преследовал этой цели. Возможно. Достаточно иметь примеры и список зарезервированных идентификаторов.
Phantom_84 А вот и недостаточно. Чтобы встроить пользовательский загрузчик, нужно знать, на какие захардкоженые значения полей BPB завязаны Ваши макросы. В противном случае образ может получиться невалидным.
Мне кажется, здесь только вы используете "нестандартные" значения полей BPB для флоппика. Практически все эти поля заполняют еще на этапе написания загрузчика для флоппика. А я так вообще использую жестко закодированные константы в загрузчике для флоппика (т.е. даже не обращаюсь к полям BPB). Повторяю, флоппик - это особый случай. Мне достаточно 99,9% популярности самого распространенного формата, чтобы чувствовать себя комфортно. При необходимости универсальность может быть достигнута без особых проблем, только думаю, что в отношении флоппика универсальность уже мало кому нужна. Есть масса более актуальных задач.
Phantom_84 Не важно, стандартные они или нет. Я говорю о том, что Вы полагаетесь на то, что пользователь Ваших макросов не только должен знать и самостоятельно заполнять BPB, но ещё и быть уверенным, что Вы используете те же значения (пусть даже они стандартные) в макросах. А для этого необходимо в них ковыряться.
l_inc да по уму он это писал для себя а вам просто выложил для создания образа диска. чего мог и не делать. если так отнасится то потом может и не помочь) а для виртуальных машин я знаю только 144 и 288 форматы img файлов. так как сам биос в режиме иуляции умеет работать только с ними(это так )
OK, я использую "стандартные" для флоппика значения полей BPB!!! Пусть это будет третий пункт в моих "Достаточно..." Сейчас я довожу до нужной кондиции mkfat16.inc, в котором из жестко закодированных констант, как я уже сказал, остался только размер сектора. Из этого файла легко получить mkfat12.inc (возможно, будет и обобщенная версия для FAT1x). А из последнего - универсальный mkfloppy.inc, лишенный "недостатка", о котором ты говоришь.
Спасибо за поддержку))) Это действительно так. Только боюсь упреков типа: "Решил выложить, изволь сделать код читабельным и максимально универсальным"))) Зы) Посты почти синхронные. Мой последний пост для l_inc, если кому не понятно.
А я вообще с образами флопов и СД не мучаюсь - открываю в хекс едиторах VDI образ харда и бинарник и копи+паст)))) Зато все видно как оно есть)))
Phantom_84 Ну во-первых, Вы сами просили оценку. Ну ладно, это было в прошлый раз. Но в этот раз Вы ведь тоже сами завели разговор об улучшении своих макросов, не так ли? Во-вторых, Вы ведь понимаете, что в повышении Вами юзабельности своих макросов моя практическая выгода нулевая. Я просто общаюсь с разбирающимся человеком по теме. Не более. Вот, например, на "высокоаргументированное" замечание abcd008 о поддержке форматов мне и ответить-то нечего.
Не совсем так. Я ответил на вопрос, что выложенная в данный момент версия новее, чем та, о которой здесь шел разговор ранее, но в ней ничего принципиально нового нет, так чисто косметические изменения (которые лично мне не сильно нравятся, но сделаны в угоду отдельным товарищам), а действительно существенные нововведения еще впереди.
я то же их использую, забавы ради, но могу сказать: я быстро разобрался что надо сделать что б все было правильно.
Разобраться в этом не трудно, сложнее видоизменять каждый раз. При помощи параметров это делать значительно легче. Например: Код (Text): include "mkfat16.inc" IP_FATS = 1 IP_FATSIZE = 1 ; противоречит канонической FAT16, но все же IP_ROOTSIZE = 1 orgimage "boot.bin" ...
Прочитал тему, но все равно непонятно, как записать в образ, созданный в боксе, свой загрузчик и прочие файлы. Вот я создал образ жесткого диска с помощью bximage.exe, как туда теперь засунуть программу начальной загрузки?