Я не говорил, что эмулятор процессора в РП плохой, наоборот его быстродействие оптимально. Но компы сильно тормозят при вводе программы, причем так, что набирать программы становится очень неудобно. Приходится до нескольких секунд ждать после нажатия enter.
Почему? А потому что словарь форта (в MineOS) это простой связный список, и когда игрок вводит команды, они все ищутся в словаре этим куском кода (слово FIND):
// кусок дизассемблированного кода
ENT
!word VOCAB
!word @
find1
!word DUP
!word (?branch)
!word find5
!word 2DUP
!word >NAME
!word STRCMP
!word 0=
!word OVER
!word (lit)
!word $0003
!word minus
!word C@
!word (lit)
!word $0002
!word AND
!word 0=
!word AND
!word (?branch)
!word find4
!word TRUE
!word (branch)
!word find3
find4
!word CELL
!word minus
!word @
!word FALSE
find3
!word (branch)
!word find2
find5
!word TRUE
find2
!word (?branch)
!word find1
!word NIP
!word EXIT
Как видно, оно полностью состоит из вызовов других слов. Вызов каждого слова занимает много тактов эмулируемого процессора, при этом большинство этих слов можно заменить парой ассемблерных инструкций.
Можно переписать это на ассемблере без использования шитого кода (т.е. вызовов других слов), скорость ввода возрастет многократно. Я как-то переписал это, исходника не сохранилось, но скомпилированный патч я привел выше.
Не могу ничего сказать о качестве кода РП, поскольку я не программист и слабо в этом разбираюсь. В коде РП я смотрел только код относящийся к компам, ничего сильно ужасного я не заметил, хотя кое-что можно было бы оптимизировать.
Но код MineOS местами очень плохой.
О редпавере у меня остались очень хорошие воспоминания, но я сомневаюсь стоит ли его реанимировать сейчас.