I just commed a change to fix this: Add DECB executive option to set the granule count. Change libdecb allocation algorithm to mimic what the ROM does. Remove use of HDBDOS offset as a flag. Document colon and plus operator when used in a decb path. Docuemnt new granule count option.
find_free_granule() in libdecbwrite.c is broken. Working on a patch now, I'm not sure why it needs to test against path->hdbdos_offset. That seems like an error.