Значение параметров в классическом 'LOAD "*",8,1' команда Commodore
В старые добрые времена Commodore (64 и 128) команда для загрузки первой программы с диска была следующей:
LOAD "*",8,1
Где я это понимаю "*"
был, вероятно, дикой картой, которая просто эффективно отдала бы все содержимое диска LOAD
который затем успешно загрузил бы то, что оказалось первым загружаемым (т.е. исполняемым) элементом на диске.
Но для чего нужны два других параметра?
7 ответов
НАГРУЗКА "*",8,1
Общий синтаксис:
LOAD ["<filename>"[, <device number>[, <secondary number>]]]
Имя файла
*
означает первый файл на диске, как вы упомянули в своем вопросе.Первый числовой параметр - это номер устройства.
8
номер устройства для первого дисковода. Из статьи Википедии о Commodore DOS:
По общему правилу первый дисковод в системе имеет устройство № 8, второй дисковод, если имеется, 9 и т. Д., Максимум до 15
Похоже, что это происходит от шины IEEE-488, которую использовал Commodore PET.
- Второй числовой параметр, в данном случае
1
, означает загрузить сохраненную программу в память, начиная с места в памяти, указанного первыми двумя байтами в файле, который вы загружаете. Это обычно используется для программ машинного языка.0
напротив, является значением по умолчанию и загружает хранимую программу в$0801
(начало основной памяти)
Полное описание доступно на вики-странице C64 для команды LOAD.
* — это место для имени последней использованной программы. Если имени не было как после сброса, то только тогда загрузится первая доступная программа. Если вы ЗАГРУЗИТЕ «ПРОГРАММУ», 8, а затем ЗАПУСТИТЕ или наберете НОВЫЙ, следующая ЗАГРУЗКА «*», 8 снова загрузит ПРОГРАММУ.
LOAD "*" ,8,1
Загрузите «Все» («*»)
с флоппи-дисковода 1541 (Устройство 8) в микроконтроллер C64 (Устройство 1).
Если бы к C64 было подключено два 1541
LOAD "*" ,9,1
Загрузите «Все» («*»)
со второго флоппи-дисковода 1541 (Устройство 9) в микроконтроллер C64 (Устройство 1).
Согласно Руководству пользователя дискового накопителя Commodore 1541 , стр. 11:
If only the "•" is used for the name, the last program accessed on the disk is the one LOADed. If no program has yet been LOADed, the first one listed in the directory is the one used.
К вашему сведению, как ежедневный пользователь Commodore 64 с дисководом 1541, команда «загрузить» со знаком «*», если она верна, мне бы хотелось это знать.
Для меня очень часто использовалось следующее: Загрузить "$",8,1 .. тогда как $ = Загрузить каталог. 8 = с устройства (1541), 1 = пауза прокрутки экрана загрузки каталога (первая версия, насколько мне известно, «нажмите пробел, чтобы продолжить»).
8 это диск. Так вроде как C:. 1, я считаю, является каналом связи. Это своего рода ПОРТ в смысле TCP.