совсем недавно делая вменяемый исходник TR-DOS я наткнулся на эту процедуру, которая делает "упаковку" бейсик строк. Сначала я не понял для чего оно вообще надо, т.к. 48-й бейсик сразу токенизирует текст и 128-й мне казалось тоже (т.к. я последнее время чаще работал с +3, а там не используется 15619:REM:, а после ввода текста программы без REM - всё прекрасно токенизируется. Так вот, сегодня попробовал набрать примерно то, что написано в самом начале темы и понял, к чему нужен этот "пакер". В 5.03/5.04t корректируется длина бейсик строки, я вводил строку 10 RANDOMIZE USR 15619: REM: cat - проблем не было, запустил - слово cat токенизировалось, команда выполнилась. Может это сработало лишь с одной строкой? Это первое, что хотел сказать. Второе - процедура опознания токена написана очень коряво. Зачем-то каждое слово прописано дважды, номера токенов хранятся отдельно. Переписал сегодня этот кусок. Стало компактнее, пока не проверял, но думаю будет работать.
---------- Post added at 15:01 ---------- Previous post was at 14:49 ----------
Сейчас проверил новую процедуру - работает. Список токенов стал короче в 2 раза







Ответить с цитированием