Перейти к содержимому

logic

Пользователи
  • Публикации

    287
  • Зарегистрирован

  • Посещение

  • Победитель дней

    13

Все публикации пользователя logic

  1. я шарю в _ENV, но городить такие костыли вовсе не обязательно, достаточно сувать в _ а вытягивать nil прямо из nil(пример: func(1, 2, nil, 4, 5))
  2. спасибо огромное, что помогаешь мне разобраться с форумом, осталось только понять как эту беседу создать, и наконец-то я перетяну всем надоедать
  3. я вообще не говорил "мой топ биос самый биосный биос ставьте его" я все го лиш сказал автору биоса как сделал я, а имя сказал, чтоб он мог протестить, ОН ПРОТЕСТИТЬ, я не призываю больше некого ставить мой ужасный софт, я просто предлагал, и говорил я ДЕЛАЙ ТАК И ВСЕ
  4. logic

    SwiftOS Invintium

    ок, не знал, да и знать не мог
  5. logic

    SwiftOS Invintium

    спасибо! я бы на твоем месте сделал прогу, вводишь ник, и там типа комната пыток debug-картой, разные режимы игры и прочее, а знаешь что, давай-ка я это сам накодю для openOS и скину тебе в лс, а ты сама партнеш куда тебе надо
  6. logic

    SwiftOS Invintium

    чувствуется нотка mineOS после беглой проверки выяснил, что продукт стоит пометить как beta установщик выл взят из ВычВыжПром а текст лицензии полностью не помешается на экран а скроллинга по горизонтали не предусмотрено. ну ок... на тире отличном от третиго интерфейс плывет похлешше mineOS, вопрос почему бы в swiftOS BIOS не написать что железо не подходит для запуска ос? почему при установке требуется беспроводной модем? почему я не могу не настраивать смс? дизайн так и отдаёт нотками ubuntu, но мне нравиться, хотелось бы больше пред установленных тем, почему редактора нет прямо в ос?(если что я могу помочь с его написаниям) как скачивать софт на эту ос? как создать нескольких пользователей? моя оценка 7 из 10, и то только потому что ос только вышла, и я надеюсь будет обновляться давно такого на cc.ru не было так что за это отдельное спасибо посмотрел код, в целом причина отсутствия редактора тем в самой ос уже понятна, если что с обучениям языку и написаниям данной ос могу помочь, там как делать мне почьти всегда нечего
  7. я тебе говорил, что юзать для сжатия (bpacker) обязательно в режиме -l чтобы не требовалась data-card так же можешь использовать встроенный модификатор который самый лутщий для lua(-m) однако не всегда удастся им воспользоваться, прога сама пишет в eeprom и по этому придеться дампить его содержимое после проверки, получений из bpacker код не будет работать на lua 5.2, и автопереключения там тоже нет однако его можно добавить обернув получившийся код в computer.setArchitecture('Lua 5.3')load([[compressed code]])() однако получиться сделать автопереключения не всякий раз, так как иногда в сжатом коде появлються символы, которые все руинять, и придеться поменять что-то в коде чтобы это пропало и удалось добавить автопереключения, конечно ты лишишься lua 5.2 но я не думаю что он сейчас кому-то нужен и я тебе говорю, все ос кроме mineOS юзают computer.getBootAddress а в нем ты лишнее можешь отпарсить так например сделано у меня в microBios(это не реклама, и да простят меня админы) в eeprom-data храниться много блоков данных разделенных \n но в getBootAddress есть парсер, который выпарсивает из eeprom-data только bootAddress раньше я подменял eeprom-data виртуально для того чтобы была поддержка mineOS но позже я это удалил, а потом и вовсе выпилил поддержку mineOS если в какой то ос вместо computer.getBootAddress используеться eeprom.getData то это только ее проблемам
  8. посмотрел, честно, не очень 1) зачем записывать загрузочный адрес в eeprom-data? 2) не удобно тянуться к f клавишам 3) зачем возможность удалить getBootAddress? 4) почему ты настройки в разделе кода eeprom а не в специально для этого предназначеным eeprom-data(парсер пишется очень просто)? 5) почему после краша ос ты даёшь возможно выйти и загрузиться в другую ос без reboot? если одна ос что-то в _ENV наменяет а потом крашнеться. юзер может загрузиться заново? 6) если загрузочный диск ровно один не дает зайти в меню и что-то там сделать 7) галочки слишком маленькие так я немного разобрался и понял что ты даёшь возможность настроить установку data и getBootAddress. ну если уж и считаеш(я считаю иначе, getBootAddress для получения загрузочьного адреса, getData для получения данных eeprom в которых может быть много данных(в одном их моих биосов имя которого придеться умолчать, там около 10-ти блоков данных)) getBootAddress рудиментами, то ты можешь записывать настройки опять в eeprom стрелки советую сделать кликабельными, галки тоже
  9. не смотрел, пока что не нашел команду для установки, сейчас найду и посмотрю
  10. хорошое решения, поддерживаю, вот вопрос тебе нужна поддержка lua 5.2? если нет, можешь скинуть мне исходник вплоть до 18 кб и я его сожму
  11. еще хотел сказать, что модификатор сам переименовывает переменные, и делать их такими короткими не обязательно, я "облагорожу" твой код, сделаю его меньше и лутще и скину тебе в личьку, а там сам разберёшься что с этим делать
  12. правило openOS)) таких нет, как мне кажется, ты наверное немного неправильно понимаешь назначения функции computer.getBootAddress, ее следует использовать для того, чтобы понять куда компьютер пойдет грузиться после reboot, и да ее тут нужно использовать, но учитывая функционал lua bios, если это тебе не нужно ок, мое дело лишь посоветовать
  13. вот еще вопрос, зачем ты используешь setData если меню для выбора вылезете каждый раз? это ведь без с мысленно, если ты переживаешь что в некоторых операционках вместо computer.getBootAddress используется eeprom.getData то это бред, так как в некоторых биосах в eeprom дата лежит не только адрес загрузочного носителя, но и дополнительные данных, я бы привел пример такого биоса но меня за "рекламу" заплюют
  14. почему версия для mineOS так сильно порезана в сравнения с версией для openOS?
  15. а еще хочется beep как в lua bios при загрузке, (computer.beep(1000, 0.2))
  16. нет ты просто должен заменять в _G, твоя библиотека будет хорошо работать в Opendroid(ос которую я шас пишу) но для openOS ее надо переделать, да если подгрузить до начала загрузки то _G == _ENV и все будет нормально, но ты просто сделай как я тебе сказал это ОЧЕНЬ сильно поднимит безопасность, а глобальные переменные тоже надо создавать в _G(_G.value = 231) иначе это будет как бы глобалы, но например из демона доступны другим программам не будут(и другим демонам) а если так _G.value - 123 то будут и таким переменные нечего не страшно(кроме _G.value = nil конечно, а вот кстати так (value = nil) их не удалить потому что так обращения идет к _ENV)
  17. круто, молодец, удобно в использовании а главное не нарушает стилистику open computers, в общем мне нравиться, но есть еще пару моментов которые я бы поправил, автопобор разшенения конечно хорошо но я бы сделал ограничения по высоте и по ширене чтобы все видно было, причем по высоте динамитчики в зависимости от выводимой информации, еще хочется просто выбрать загрузочное устройство а когда хочешь поменять нажимаешь alt и выбираешь, но это уже как сам захочешь, так же хочется чтобы можно было загружаться не только в init.lua но и в файлы лежашие в /boot/kernel это некий маленький стандарт который я подсмотрел в plan9k, а если будет нахватать места можешь сжимать bios при помоши bpacker лежачего в теме eeprom(если тебе не принципиальна поддержка lua 5.2 он работает только в lua 5.3), а на планшете изменения разрешения выглядит неуместно а на роботе экран вообще глючит из за того что по вертикале больше максимального(баг open computers), добавь проверку на планшет и робота(if not component.list("tablet")() and not component.list("robot") then setCustomResolution() end)
  18. есть серьезная проблема, ты подменяешь pairs/ipairs и другие функции в табличке _ENV а не в табличке _G, в openOS это разные таблички в отличии от eeprom хоть и у всех программ _ENV обшей, у демонов и в интерпретаторе lua он костюмный, и получить доступ к оригинальному pairs можно банально так _G.pairs, конечно при таком оброшении (pairs) из обычной программы будет задействоваться переопределенный pairs итд так как _ENV более приоритетнее _G но удалив pairs из _ENV будет работать оригинальный из _G, надеюсь понятно объяснил, и кста _ENV очишяеться при закрытии shell, и тебе нужно подменять функции так function _G.pairs(...) return raw_pairs(...) end, а не так function pairs(...) return raw_pairs(...) end
  19. 1) вот тут видно что сдвинуто 2) откатываться до палитры t3, на t2 там другие цвета и палитра уже не правильная 3) ты вызываешь этот метод в установщике для openOS:
  20. я имел в виду, что я давно писал программу для удаленного управления мк(примерно год назад) и использовал _ вместо nil, я тогда в первый раз писал в vs code до этого кодил в игре, и это меня спасло я увидел что _ в одном месте те светиться не так как в другом и понял в чем дело
  21. например, удаленно выполненный код оставил после себя мусор, цель данного комента предостеречь новичков от подобных ошибок, если тут проблемы и не будет она может быть в другом случаи при том же подходе
  22. потому что многие новички просто не понимают что _ тоже резервируется, и думают что это дырку куда можно сувать и всегда вытягивать nil я сам таким был и напоролся на эти же грабли, так что просто предупреждаю, например другая программа создаст глобал с этим именем
  23. молодец, так держать, все хорошо, но вот с поддержкой первого тира железа скорее всего беда, я понимая что скорее всего это тебе не нужно, но для такой простой програмки это можно было бы реализовать, но ты там сам смотри по своим нуждам, а программа крутая но есть одно НО, нельзя выбрать конкретный модем/тунель, вдруг у меня есть несколько тунельных карт для разных собеседников?
×
×
  • Создать...