Opencomputers как создать файл
Обновлено: 24.11.2024
OpenComputers – это мод от Sangar, добавляющий программируемые компьютеры и роботов на основе Lua. Ядром компьютера OpenComputers является компьютерный корпус, в котором находятся необходимые компьютерные компоненты, такие как центральный процессор (ЦП), память, графическая карта и, возможно, жесткий диск. Периферийные устройства компьютера, такие как экран, клавиатура и дисковод, можно подключить, поместив их рядом с корпусом компьютера, другим подключенным периферийным устройством или кабелем, подключенным к компьютеру.
Большинство компьютерных компонентов и периферийных устройств можно обновить, чтобы улучшить их или добавить новые возможности. Например, компьютерные корпуса получили больше слотов и могут поддерживать более продвинутые компоненты, графические карты и экраны получили возможность отображать цвета, а память и жесткие диски получили больше места.
Серверы аналогичны компьютерным корпусам, но с несколькими важными отличиями: они представляют собой элементы, для работы их необходимо разместить в серверной стойке, они могут обрабатывать больше компонентов, чем обычные корпуса, и ими можно управлять с помощью удаленного терминала. Серверы подключаются к внешним блокам на основе боковой конфигурации в серверной стойке — например, для доступа к гибким дискам в дисководе, расположенном в верхней части серверной стойки, сервер должен находиться в слоте серверной стойки, настроенном для подключения. вверх.
Роботы — это, по сути, мобильные компьютеры. В отличие от компьютеров и серверов, они не могут взаимодействовать с периферийными блоками. Однако они могут отправлять и получать сетевые сообщения, отправленные с помощью сетевых карт, если они находятся рядом с кабелем или сетевым блоком. Роботы создаются в сборщике электроники из любого компьютерного корпуса, где их можно настроить с помощью обычных компьютерных частей или обновлений робота. Экран уровня 1 и клавиатура также могут быть установлены в качестве обновления, чтобы обеспечить взаимодействие с пользователем. Дисковод можно установить в слот контейнера, чтобы можно было вставлять и извлекать гибкие диски из собранного робота.
Компания OpenComputers знает о многих других модификациях, принимающих энергию во многих формах и позволяющих обмениваться данными с использованием различных транспортных средств. OpenComputers широко использует самородки железа и золота и принимает в качестве заменителей железные и золотые руды Tinkers Construct.
Open Computers — это мод, который добавляет в игру компьютеры, дроны и роботов. В этом моде вам нужно либо знать основы программирования на Lua 5.2, либо быть готовым к изучению Lua 5.2.
Отказ от ответственности
Начало работы
Необходимые предметы:
- Дело первого уровня
- Экран первого уровня
- Клавиатура
- Видеокарта первого уровня
- ЦП уровня 1
- Две карты памяти уровня 1 или 1.5
- Диск
- ОпенОС
- Жесткий диск
- Lua BIOS
- Блок питания (не входит в мод)
Настройка компьютера
Для начала положите чемодан на пол. После того, как вы это сделаете, щелкните левой кнопкой мыши по ящику и поместите следующие предметы. Видеокарта, процессор, карты памяти, жесткий диск и Lua BIOS. Сделав это, вы можете выйти из экрана дела. Затем поместите экран рядом с компьютером. Теперь поместите клавиатуру перед экраном. После этого поместите дисковод с другой стороны корпуса и поместите OpenOS внутрь дисковода. Теперь подключите кабель питания к нижней, верхней или задней части корпуса компьютера.
Теперь ваш компьютер готов к работе
Написание программ
Итак, вы собрали свой первый компьютер и думаете, что с ним делать?
Ну что ж, начнем со старой-доброй, проверенной, всеми любимой первой программы. Вы знаете, какой. Во-первых, давайте переключимся на папку /tmp, которая представляет собой небольшую файловую систему, доступную для записи, с которой поставляется каждый компьютер. Помните, что это стирается при перезагрузке, так что не кладите сюда ничего ценного!
(Да, это скопировано напрямую с вики)
Чтобы перейти в папку /tmp, напишите в консоли cd /tmp
После того, как вы это сделаете, найдите минутку, чтобы придумать название для вашей самой первой открытой компьютерной программы!
Есть? Хорошо! Теперь введите в консоли: edit yourprogramname.lua
Вы должны увидеть черный экран с мигающим курсором и всплывающим текстом внизу. Это встроенный текстовый редактор. Чтобы начать с вашей первой программы, введите: print()
Это вызывает функцию 'print'. Что делает эта функция, так это печатает строку текста на экране при запуске программы. Теперь внутри круглых скобок введите "Hello World" с включенными кавычками.
Сохраните программу, нажав Ctrl + S, и выйдите из программы, нажав Ctrl + W. Как только вы это сделаете, введите в консоли yourprogramname.lua без каких-либо других действий в консоли и нажмите Enter. В консоли должны появиться слова «Hello World».
Жесткие диски
Что касается папки /tmp, следует отметить, что любые программы, которые вы в нее записываете, будут удалены при каждой перезагрузке компьютера. Итак, этот раздел будет посвящен тому, как использовать жесткие диски для хранения вашей программы. Когда вы подключаете жесткий диск к компьютеру, он автоматически монтируется в папку /mnt, названную по первым буквам его адреса. Хотя этого может быть достаточно для экспериментов, через некоторое время вам понадобится больше гибкости и комфорта. В этом руководстве вы познакомитесь с концепцией маркировки и монтажа жестких дисков.
Примечание: все концепции в этом руководстве также применимы к гибким дискам.
После того как вы присвоили имя жесткому диску, это имя также отображается во всплывающей подсказке жесткого диска. Запустите df еще раз, чтобы убедиться, что жесткому диску теперь присвоено имя.
Теперь мы можем монтировать жесткий диск, обращаясь к нему по имени. Тип монтирования
смонтировать жесткий диск с указанной меткой по указанному пути. Жесткие диски можно монтировать в нескольких местах, поэтому это не приведет к аннулированию монтирования по умолчанию в папке /mnt.
Теперь компьютеры не сохраняют свое состояние при перезагрузке. Это означает, что если вы выключите или перезагрузите компьютер, он выйдет из строя или разрядится, вам придется снова смонтировать диск после перезагрузки. Это может очень быстро надоесть, так что давайте создадим скрипт автозапуска, который монтирует для нас диск, когда он вставлен. На каждом жестком диске может быть такой скрипт автозапуска. Он должен называться autorun или autorun.lua и находиться в корневом каталоге жесткого диска. Этот сценарий автоматически выполняется при установке диска в компьютер, если вы не отключите автозапуск через API файловой системы.
Переключитесь в только что смонтированную папку и запустите edit autorun.lua .
Сценарии автозапуска получают в качестве первого параметра прокси носителя, на котором они находятся, поэтому мы можем использовать синтаксис varargs Lua для доступа к нему. Мы передадим это в функцию fs.mount(), документацию которой вы найдете в API файловой системы.
Сохраните этот файл и закройте его. После извлечения жесткого диска из компьютера и его повторной установки запустите ls, и вы должны увидеть, что диск снова автоматически смонтирован.
Роботы
Компоненты
Что такое компоненты? Если у вас есть предыдущие знания в области программирования, вы можете думать о них как о библиотеках. Если у вас нет предварительных знаний, вы можете думать о них как о файлах, наполненных кодом, который ранее был написан для взаимодействия с определенными элементами и блоками.
Вот список всех различных компонентов
3D-принтер - Абстрактная шина - Точка доступа - Загрузчик фрагментов - Компьютер - Создание - Карта данных - База данных - Отладка - Дрон - Диск - EEPROM - Опыт - Файловая система - Генератор - Геолизер - Графический процессор - Голограмма - Интернет - Контроллер инвентаря - Поводок - Микроконтроллер – Модем – Датчик движения – Навигация – Разделитель сети – Поршень – Редстоун – Робот – Экран – Знак – Контроллер танка – Притягивающий луч – Транспозитор – Туннель – Датчик мира
Как видите, их много. Но что они делают? Единственные, которые вам действительно НУЖНЫ, — это API-интерфейсы компьютера и файловой системы. Но опять же, что они делают? Что ж, компьютерный API дает вам доступ ко всем картам в корпусе компьютера и всем подключенным компонентам. API файловой системы предоставляет вам доступ к файловой системе, позволяя вам запускать команды оболочки из файла.
Открывает файл, чтобы его можно было прочитать или записать. mode состоит из первого символа, который может быть одним из следующих:
- "r", чтобы открыть файл только для чтения,
- "w", чтобы открыть его для записи и удалить все существующие данные при открытии файла, или
- "a", чтобы открыть для записи, но сохранить существующие данные и добавить любые записи в конец файла
За любым из этих трех слов может дополнительно следовать "b", чтобы открыть файл для двоичного доступа вместо текстового доступа по умолчанию (например, "wb" открывает файл для двоичного вывода).
Диспетчеры файлов в текстовом режиме предполагают кодировку UTF-8 как для ввода, так и для вывода и поддерживают все символы кодовой страницы ISO 8859-1 (плюс несколько дополнительных). До ComputerCraft 1.76 вместо этого поддерживаются только печатные символы ASCII. В любом случае любые символы, неподдерживаемые, преобразуются в 0x3F (представляющий вопросительный знак).
Когда вы открыли файл, вы всегда должны закрывать дескриптор файла, иначе данные не будут сохранены.
Содержание
Примеры
Файловые дескрипторы
Описатель файла позволяет получить доступ к файлу. Дескриптор файла — это таблица; доступ к функциям в таблице осуществляется с помощью оператора точки (не оператора двоеточия, что может быть более интуитивно понятным!). В приведенных ниже примерах предполагается, что файл уже открыт, а дескриптор сохранен в переменной h .
Закрытие дескриптора файла
Когда вы открываете файл, не забудьте закрыть дескриптор, когда закончите с ним работать! Режимы записи, поддерживаемые ComputerCraft, могут фактически не выводить данные, пока это не будет сделано. Файл, открытый в любом режиме, предоставляет следующую функцию закрытия:
Файлы, открытые в режиме чтения текста
Файл, открытый в режиме "r" (режим чтения текста), предоставляет следующие функции.
Файлы, открытые в режиме записи/добавления текста
Файл, открытый в режиме "w" (режим записи текста) или "a" (режим добавления текста), предоставляет следующие функции:
если вы хотите просто сохранить файл, не закрывая дескриптор, то можно было бы сделать флеш. (это обычно используется для регистрации и т.д.)
Файлы, открытые в двоичном режиме чтения
Файл, открытый в режиме "rb" (бинарный режим чтения), предоставляет следующие функции:
Файлы, открытые в двоичном режиме записи/добавления
Файл, открытый в режиме "wb" (режим двоичной записи) или "ab" (режим двоичной записи), предоставляет следующие функции:
Также известен как "как собрать свой первый компьютер". Чтобы ваш первый компьютер заработал, вам нужно сначала его правильно настроить. В OpenComputers есть много разных типов компьютеров, но давайте начнем с основного: стандартного компьютера.
Отказ от ответственности: это будет пошаговое описание, а также будет предоставлена некоторая информация о том, как самостоятельно искать проблемы позже, так что это довольно длинно. Если вы никогда не собирали компьютер в реальной жизни и/или совершенно не знакомы с модом, настоятельно рекомендуется прочитать его полностью.
Во-первых, вам понадобится корпус компьютера. Это блок, который будет содержать все компоненты, определяющие поведение компьютера, который вы собираете.
Например, вам нужно будет выбрать, какой уровень видеокарты вы хотите использовать, если вам нужна сетевая карта, карта Redstone или, если вы просто играете в творческом режиме, может быть, даже карта отладки.
Когда вы откроете графический интерфейс корпуса компьютера, вы увидите несколько слотов справа. Количество слотов и уровень компонента, который в них можно разместить (обозначается маленькой римской цифрой в слоте), зависит от уровня самого корпуса. В пустом состоянии компьютерные корпуса довольно бесполезны. Вы можете попытаться включить свой компьютер сейчас, но он сразу же напечатает сообщение об ошибке в вашем журнале чата и выразит свое недовольство звуковым сигналом. Хорошо, что сообщение об ошибке говорит вам, что вы можете сделать, чтобы исправить эту ситуацию: это требует энергии. Подключите компьютер к источнику питания напрямую или через преобразователь питания.
Когда вы попытаетесь запустить его сейчас, он сообщит вам, что вам нужен ЦП. Они бывают разных уровней — тенденция, которую вы заметите, присутствует во всех OpenComputers. Для ЦП более высокие уровни означают большее количество компонентов одновременно, а также более быстрое выполнение. Поэтому выберите уровень и поместите его в корпус компьютера.
Далее вам будет предложено вставить память (ОЗУ). Обратите внимание, что код звукового сигнала теперь другой: длинный-короткий. Более высокие уровни памяти (ОЗУ) означают, что больше памяти доступно программам, работающим на вашем компьютере. Для запуска OpenOS, что является целью этого введения, вам потребуется как минимум две планки памяти (RAM) уровня 1.
Мы делаем хорошие успехи. К настоящему времени корпус вашего компьютера будет выглядеть примерно так: И вот, включение его сейчас больше не выводит сообщений об ошибках! Но, увы, это все еще мало что дает. По крайней мере, теперь он дважды пищит. Это означает, что фактическое выполнение компьютера не удалось. Другими словами: технически это работает! Здесь в игру вступает очень полезный инструмент: анализатор. Этот инструмент позволяет проверять многие блоки OpenComputers, а также некоторые блоки из других модов. Чтобы использовать его на компьютере, используйте анализатор на корпусе, пока крадетесь.
Теперь вы должны увидеть ошибку, вызвавшую сбой компьютера: биос не найден; установить настроенную EEPROM
Упор здесь делается на настроено. Создать EEPROM довольно просто. Чтобы настроить его, вы обычно будете использовать компьютер, но сейчас это немного сложно, поэтому мы собираемся использовать рецепт для создания сконфигурированного EEPROM «Lua BIOS». Стандартный рецепт - EEPROM плюс инструкция. Поместите сконфигурированную EEPROM в свой компьютер, аааа.
Нет. Еще ничего. Но мы знаем, что делать: игрок использует анализатор, это суперэффективно! Теперь у нас другое сообщение об ошибке: загрузочный носитель не найден; файл не найден
Ну что ж. Значит биос работает. Он просто не находит файловую систему для загрузки, например дискету или жесткий диск. В частности, Lua BIOS ожидает, что такая файловая система будет содержать файл с именем init.lua на корневом уровне. Как и в случае с EEPROM, вы обычно записываете в файловые системы с помощью компьютера. Вы, наверное, догадались: теперь нам нужно создать диск с нашей операционной системой. Возьмите чистую дискету и руководство, создайте их вместе, и вы получите диск с OpenOS.
Теперь, если вы использовали компьютерный корпус уровня 2, как показано на снимках экрана выше, вам некуда будет положить эту дискету. Если у вас компьютерный корпус уровня 3 или творческий, вы можете поместить дискету прямо в корпус. В противном случае вам придется разместить дисковод рядом с корпусом (или подключить его с помощью кабелей). Как только ваш диск будет на месте, вы знаете, что делать. Нажмите кнопку питания.
Он живет! Или должен, во всяком случае. Если это не так, что-то пошло не так, и вы захотите провести расследование с помощью анализатора. Но если предположить, что он работает сейчас, вы в значительной степени закончили. Самая трудная часть позади. Осталось только заставить его принимать входные данные и отображать выходные данные.
Чтобы позволить компьютеру отображать некоторые выходные данные, вам понадобится экран и видеокарта.
Поместите экран рядом с корпусом компьютера или, опять же, подключите его с помощью кабеля. Затем поместите видеокарту по вашему выбору в корпус компьютера. Теперь вы должны увидеть мигающий курсор на экране. Наконец, поместите клавиатуру либо на сам экран, либо так, чтобы она была обращена к экрану, чтобы включить ввод с клавиатуры.
На этом все готово. Компьютер запущен и готов к работе. Попробуйте использовать его прямо сейчас! Введите lua в оболочке и нажмите Enter, и вы получите немного информации о том, как использовать интерпретатор Lua. Здесь вы можете протестировать основные команды Lua. Для получения дополнительной информации по этой теме см. страницу Lua.
Развлекайтесь, собирая более сложные компьютеры, возясь с серверами и собирая роботов, дронов, микроконтроллеров и планшетов на ассемблере.
© ShadowKat Studios
Программное обеспечение, используемое для создания этой страницы, находится под лицензией Mozilla Public License версии 2, и его можно найти здесь
Читайте также: