Article # 279, added by Geoworks, historical record
| first | previous | index | next | last |

VM chain vs. VM blocks in MSG_INK_SAVE_TO_DB_ITEM.



Q. MSG_INK_SAVE_TO_DB_ITEM is documented as:
   "Return: AX.BP - DB group/item written to (VM Chain)"
                                              --------
   Does that mean that it could create a chain of VM blocks instead
   of a single DBItem?

A. This syntax was derived from the fact that DB Groups are stored in
   multiple VM blocks. This is to allow growing populations of DB
   items within the group to expand over 64K (though I think the
   primary reasoning is to allow blocks within the group to stay
   around the optimal 2-6K size without restricting the total sizes
   of all the items to 6K).

   Because of this methodology, the creation of a new DB Item can
   cause the creation of a new VM block. This will probably not
   happen until the previous items in the group take up more than
   4-6K. In any case, I'm sure it can't create more than one
   additional block at a time. If you've only got a few ink items
   in the group, it won't create multiple blocks in the chain.