![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: Hi, Indexf.sys - how do I recalculate the CRC in the file headers. I'm writing a CD image producer that will merge both the pc fat16/32 disk structure and ods2 volume info on the same disk (my build disk) prior to dumping the resultant image onto a CD. So far so Good and it works well but it dawned on me that the last step in the process (the one where I create an output image file from the first 650 Mb (or less) of my build disk) could be eliminated entirly if I could just bang in a dummy file header w ith a block allocation starting at 0 and of length cd$size. well that's easy but I cannot get the right parameters for generating the crc using lib$crc_table and lib$crc, I'm passing the first 510 bytes as a string to lib$crc. Can you help? Bob Fiander The Answer is : The OpenVMS Wizard would not expect the Microsoft FAT disk format and the OpenVMS ODS-2 disk format to be able to coexist on the same volume, due to an expectation of file structure block-level collisions between the two formats. (ISO9660 and ODS-2, on the other hand, can coexist.) The typical checksum used in ODS-2 headers is a simple additive word scheme, not a CRC -- each word in the data range covered by the checksum is simply successively added together.
|