Я тут ударился в объединение Blitzmax и Assembler. Получилось. В связи с этим скоро выложу статейку как интегрировать ассемблер с Blitzmax. А пока обнаружился еще один ужос - качество кода, производимого Blitzmax. Я добавил это в Неприятное в BlitzMax, ч.1 - язык по нумером 21. А для ленивых кратко здесь:
Простейшая функция: function _RDT:long() return 111 endfunction
Это
же просто ужас. Зачем метка внутри? - она не используется! Ну это еще ладно. Зачем
отнимается от указателя стека 8 в начале? Что за манипуляции с ним
между BP и DX? А вот аналогичный нормальный код, выполняющий ту-же
задачу: push ebp mov ebp,dword[esp+8] mov dword [ebp],111 mov dword [ebp+4],0 pop ebp ret