До кода, которыя по объекту .NET воссоздаст Home Block - так и не добрался. Были некоторые заморочки с полями ДатаВремя из него плюс домашние дела.. Но зато полностью описал структуру Home Block-а по новому (через атрибуты) и проверил её работоспособность - распаковав образ ODS-1 и сравнив с тем, что получил ДО начала этих доработок Результат даже чуть лучше, так в новом описании одной из полей с флагами описано именно как флаги - и теперь в логах оно расшифровывается, а не просто выводится как восьмеричное значение
Осталось освободиться от некоторого количества констант, описывающих смещения в Home Block-е и....
- - - Добавлено - - -
.. и получаем 43 строки вместо 156 Которые, к тому же, проще написать - так как в тех 156 вычисление смещений в блоке происходило в полуручном виде с риском ошибиться и с трудом найти, где ошибся
На очереди - File Header. У него структура несколько сложней, посмотрим, что ещё в аттрибутах придётся допилить и насколько сократится код