1. А он наверно это написал сразу же после ZVSE
2. v300 или неопределенна на момент обращения к ней. Или вылазит за интервал 0..43
Наверно обьясню поточней 1. Команду !!BM можна использовать только внутри: !?FU, !?BR, !?BG, !?BF. Ну может ещё что то забыл. В других случаях будет ругаться
2. Если в момент обращения к !!BMv300: наша переменная v300 не будет иметь одного из значений: 0..43 , опять будет ругаться )
Возможны и другие варианты. Но там уже маловероятно, что из за них.