nzeemin(12.04.2021)
Ну, судя по фразе из доков
таки даКод:"NonPascal" Directive___________ _________ The directive "NonPascal" may be used instead of "external" if the external procedure is written in a language other than Pascal. "NonPascal" generates the Digital standard calling sequence used by FORTRAN and most MACRO routines. This calling sequence passes all parameters by reference, so only "var" parameters may be used.
- - - Добавлено - - -
Вдогонку - дока от второй версии, так что в первой надо проверить
Hunta, а можно эту доку от OMSI Pascal 2 глянуть? Спасибо заранее.
Я нашёл книжку по разным особенностям Паскалей тех времён. OMSI там тоже есть. Можно использовать как справочник.
- - - Добавлено - - -
Кстати, в этом же справочнике я пытался найти как впихнуть в строку символы с произвольным кодом. В OMSI это сделать нельзя.
Восстановил около 350 строк исходника на Паскале.
Всего в ассемблере около 7000 строк кода - я думаю это даст 1000-1200 паскалевских строк.
Hunta, кстати говоря, @form вроде пробовал запускать, но я не помню получилось или нет - работает ли Сталкер под RTEM?
Понятия не имею. Но почему бы и нет
Наткнулся на такое интересное место...
Код:M12254: TSTB #1 BNE M12266 JMP M40120 M12266: MOV 4(R5), R0
Ну так это while true просто.
Там меня другое удивляет - в этом коде есть неструктурный переход - сброс стека и JMP - я вот думаю это ассемблерная вставка или язык как-то позволяет так сделать.
Код:L40036: INC (R5) ; следующее подземелье L40040: ADD #000062, 000056(R5) L40046: MOV 050406, SP ; Возвращаем SP к исходному значению L40052: JMP L06650 ; рестарт игры ; ответили НЕТ на "А дальше пойдете?" L40056: MOV 050406, SP ; Возвращаем SP к исходному значению L40062: JMP L40120 ; завершаем игровой цикл
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)