Дорогой vlad!
1.
оценки анонима ничего не стоят.
2.
Когда я разбирался с этим делом, то читал комментарии специалиста, а не просто технический рапорт, где (в рапорте) просто сказано
"This was caused by an internal variable related to the horizontal velocity of the launcher exceeding a limit which existed in the software of this computer."
Из тех комментариев, что читал я, следовало, что в коде имело место присваивание
короткая целая := длинное целое
Фраза из рапорта не противоречит этому.
С первыми версиями длинное целое значение укладывалось в диапазон коротких.
А после смены девайса -- перестало.
Компилятор может не пропустить такое присваивание только в момент разработки.
И компилятор Оберона его не пропускает.
Если разработчик системы управления реального времени тупо override ошибку, выдаваемую компилятором (а средства сделать это есть в любом серьезном инструменте -- на уровне ли языка, на уровне ли псевдомодуля SYSTEM, или с помощью ассемблерных вставок), то компилятор в принципе ничего не может тут сделать -- и требовать чего-то большего -- бессмысленно.
То, что разработанный таким образом софт впоследствии был без надлежащего анализа (совершенно неважно, на каком уровне -- анализа кода, тестирования девайса со старым скомпилированным софтом, etc.) сопряжен с новой версией девайса, -- это, несомненно, ошибка инженеров. Но это никоим образом не отменяет тот факт, что в момент разработки софта компилятор Оберона тквалифицирует вышеуказанное присваивание как ошибку.
Или есть кто-то, кто воображает, что бедный компилятор способен предупредить любые человеческие ошибки?
Таким образом, пока Вы, vlad, не приведете ссылок на материал, опровергающий утверждение о вышеописанном ошибочном присваивании в коде, то Вы остаетесь клеветником. Причем уже злостным.