Apple II: Prodos, prefix, nill prefix и вызовы MLI
У меня на Apple IIc есть простая программа на ассемблере. Он получает имя файла от пользователя (GETLN) и открывает соответствующий файл с помощью вызова MLI ($C8). К моему удивлению, вызов MLI вернул ошибку # $40: «Имя пути имеет недопустимый синтаксис». Я проверил все параметры. , но они где ОК. Я попытался ввести PREFIX /myvolume перед тем, как приступить к работе с моей программой. И это сработало (файл открылся без ошибок). Я обещал, что когда вы запускаете prodos (только prodos и basic.system), тогда префикс te пуст. Я исправил это, заменив мой вызов MLI openfile вызовом get_prefix. И да, длина префикса равна 0.
Вы знали об этом? До этого я считал, что префикс ставится системой при загрузке.
Для этой истории я нашел обходной путь, читая путь исполняемой программы (в данном случае моя программа) по адресу памяти $ 280 и вызывая set_prefix для этого пути. Очень много сборочных линий.
Вы можете подтвердить мой анализ?
Спасибо