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






Фотография
- - - - -

[PafOS] Привет, графон :3

Написано Pofigist , 22 Апрель 2016 · 1 612 просмотров

Не думайте, что я буквально за день написал три библиотеки и вполне рабочий проводник. Это не так. Создание PafOS началось еще недели две-три назад, но учитывая мою лень, реально, на создание того, что я сейчас имею было потрачено от силы 4 часа.
Итак:
На данный момент моя супер-пупер никому не нужная графическая оболочка называется test.lua и запускается из консоли, как и все программы. Запуск через init? До всего этого мне еще далеко, как и до превращения граф оболочки в полноценную ОС. Да и плохо я понимаю, что из себя она представляет. Операционная Система эта та для которой все базовые библиотеки написаны отдельно? Или та, которая запускается через BIOS? Лично для меня этот вопрос остается загадкой. Но может кто-то может дать ответ, к которому я в будущем буду стремиться.

 

Что же я успел сделать за эти недели?
Была слизана создана графическая библиотека. Она основана на двойной буферизации и пока что умеет лишь отображать прямоугольники, картинки и текст, но мне хватает. Быстродействием моя либа похвастать тоже не может, она не анализирует стоящие в ряд одинаковые пиксели и не отображает их разом, но во всяком случае она и не меняет цвет при отображении нового пикселя даже если в системе уже установлен этот цвет. Но я все равно оценю мою либу на суровую двоечку из пяти баллов.

 

Изображение

 

На скрине вы можете увидеть итог моей текущей работы - создание полноценного проводника. Безусловно я не прописывал через gpu.set каждый пиксель моего изображения: для картинок была создана отдельная библиотека. Соответственно есть и отдельный формат изображения - PIF(Pofigist Image Format). Особенность или нет - судить вам, но на один пиксель в моем формате уходит всего 2 байта, а на полупиксель - 1 байт, соответственно. На данный момент я не вижу смысла в использовании символов в формате картинок, но если он и будет реализован - это будет новый формат.
PIF спокойно поддерживает картинку 160x50, чего достаточно для обычных программ. PIF поддерживает прозрачность, но на это уходит какой либо цвет. Если все 256 цветов используются в изображении то будут определенные проблемы, но на данный момент я доволен форматом.

 

Как можно заметить названия файлов пока что не умещаются и потому написаны далеко не полностью. На данный момент я пока что, скорее всего, просто буду обрезать разрешение, чтобы освободить 4 места для символов.

 

Вы удивитесь, но кроме того как посмотреть на содержимое текущей папки программа так же позволяет перейти в другую папку или вернуться на шаг назад!!1
Изображение

 

Ву-упс, кажется что-то пошло не так... Если файлов в папке слишком много некоторые из них могут не отображаться. Ну как некоторые... большинство. Причем все контролируется волей рандома и открыв и закрыв папку пару раз можно убедиться, что неотображаемые файлы меняются... Я долго думал над тем, почему так происходит. На ум пришла идея с проблемой функции Draw, которая вырисовывает изображение, но это мысль была ошибочной. Мною был найден небольшой баг... если не закрывать чтение какого-либо файла и потом вновь его открывать для нового чтения файловая система может разозлиться и послать тебя в Эндер мир. На данный же момент проблема уже решена. file:close() победил баг и все отображается так как надо.
Изображение

 

Что же мы в итоге имеем?
Убогие иконки с разрешением 10x10, кривое отображение имен файлов. Невозможность сделать ничего, кроме как открыть папку или уйти на шаг назад; отсутствие объекта той или иной иконки(системно лишь визуально отображается иконка и создается кликабельная область в ее границах(И я считаю это преимуществом)). И... пафосное название недо-операционки PafOS, которая изначально должна была называться PofOS от моего ника, но пафос все же круче :D

 

Теперь пара вопросов от нубика:
Какая библиотека java(а лучше С#/C++) позволит мне открыть изображение, прочитать изображение по байтам? И есть ли документация по структуре PNG файла?

 

P.S. На вопросы можно не отвечать, а просто оставить мнение о моей разработке :D Прямых рук Вам, Господа.






Есть готовая либа для работы PNG, это намного лучше всяких велосипедов.

https://oc.cil.li/in...ing-png-images/

http://computercraft...oteka-graffiti/

и зачем оно?

и зачем оно?

Оно?

Здорово! Иконки неплохие.

Оболочку писать это весело. Особенно если замутишь мощную модульность.

 

Кстати, забаненный тут ECS тоже пишет оболочку уже пол года.

 

OfBs3mNm.png

 

t6Hfi9cm.png

Здорово! Иконки неплохие.

Оболочку писать это весело. Особенно если замутишь мощную модульность.

 

Кстати, забаненный тут ECS тоже пишет оболочку уже пол года.

 

OfBs3mNm.png

 

t6Hfi9cm.png

Да, я знаю. Тем более что именно от него я идейно вдохновился :D Хоть до него мне еще и оочень далеко, но я буду стараться.

Здорово! Иконки неплохие.

Оболочку писать это весело. Особенно если замутишь мощную модульность.

 

Кстати, забаненный тут ECS тоже пишет оболочку уже пол года.

 

OfBs3mNm.png

 

t6Hfi9cm.png

а за что его забанили? Нецензурщина?

    • SergOmarov это нравится

а за что его забанили? Нецензурщина?

Кинул ссылку в чат на своё видео о ВК-клиенте.

В конце которого, как и в других его видео реклама своего проекта...

И именно за эту оплошность небольшую человека, сделавшего такое, забанили... перманентно...

Буду ждать.Интересно, во что эта операционка выльется.

Примерно за пол-часа сообразил файловый навигатор:

u9nlp0H.png

 

Пока можно только ходить по папкам и открывать/запускать файлы.

Что-то мне это понравилось, думаю сделать полноценный файловый менеджер.

    • Asummonster, davial, Kartze и еще 1 это нравится

Примерно за пол-часа сообразил файловый навигатор:

u9nlp0H.png

 

Пока можно только ходить по папкам и открывать/запускать файлы.

Что-то мне это понравилось, думаю сделать полноценный файловый менеджер.

а не плохо вышло) только фон другой делай. и будет очень даже хорошо!


Обратные ссылки на эту запись [ URL обратной ссылки ]

Обратных ссылок на эту запись нет

Август 2018

В П В С Ч П С
   1234
567891011
12131415161718
192021 22 232425
262728293031 

Новые записи

Новые комментарии