- 1
- 2
Золотце
https://lj.rossia.org/users/sadkov/103320.html?nc=55
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−2
Золотце
https://lj.rossia.org/users/sadkov/103320.html?nc=55
OpenGL - говно опенсурсное
Попытался реализовать getPixel и putPixel на OpenGL, в результате получение одного пикселя занимает болшьшую часть времени выполнения программы. Другие люди тоже жалуются на тормознутость функций OpenGL, вроде glDrawPixels и glReadPixels
https://stackoverflow.com/questions/39821850/why-is-glreadpixels-so-slow-and-are-there-any-alternative
https://stackoverflow.com/questions/36534933/gldrawpixels-vs-textures-to-draw-a-2d-buffer-in-opengl
>glDrawPixels is known to be very slow
Зачем вообще нужно все это 3d ускорение? В DOS все было идеально:
((uint8_t*)(0xB8000))[y*320+x] = pixel
почему нельзя современным программам предоставить такой 0xB8000 адрес и пару регистров вывода? Зачем все эти ритуалы? И да, MMU и protected mode значительно замедляют доступ к памяти, посему современный DOS работал бы на порядок быстрей Windows/Linux. Протекция памяти оправдана только на этапе разработки программы, а для release билда ее лучше отключить, чтобы иметь прямой доступ к реальной памяти.
И я не одинок в негодовании:
https://stackoverflow.com/questions/39430404/drawing-pixels-in-opengl
>I'm using integrated GPU (Intel HD graphics 4000), as far as I know CPU and GPU share the same memory so why is it that I need to download? Why is it impossible to get a pointer?
Начинаю думать, что Unabomber был прав во всем - надо к чертям взорвать офисы мразотных бюрократов из Khronos Group.
j123123 05.05.2018 04:07 # +1
Особенно весело будет, когда в релиз билде обнаружат баг, через который (из-за отсутствия "протекции памяти") можно всю ОС поиметь и отформатировать жесткий диск
bormand 05.05.2018 04:29 # 0
roskomgovno 05.05.2018 05:24 # +1
Вот в DOS было заебись
mov туда
mov сюда
yet_another_one_shit 05.05.2018 05:59 # 0
bormand 05.05.2018 06:20 # 0
Спасибо, но я лучше uefi shell какой-нибудь возьму -- уже 64 бита, но контроль над железом и памятью (замапана 1:1) ещё остаётся.
З.Ы. Там в консольке есть команды для сранья в io порты (!) и няшный хекс редактор для памяти и диска.
yet_another_one_shit 05.05.2018 08:19 # 0
Хуита.
yet_another_one_shit 05.05.2018 08:51 # 0
Он ntfs поддержтвает?
ЗЫ. На компах с биосом не будит работать.
bormand 05.05.2018 09:21 # 0
Х.з., я не искал, но r/o драйвер вроде где-то был. Для FreeDOS есть более полноценный?
> На компах с биосом
Ты когда последний раз видел комп с настоящим бивисом, а не Compatibility Support Module от UEFI? Только честно.
> не будит работать
Через жопу, но будет. Есть специальная реализация UEFI которая грузится не с голого железа, а через BIOS.
yet_another_one_shit 05.05.2018 13:40 # 0
Когда-то давно у меня был загрузочный диск с разными утилитками, на нем был урезаный линупс, дос и ещё дохуища всего, и среди этого дохуища были разные файл манагеры для ntfs. (можно было ломать венду:))
> когда последний раз видел комп с настоящим бивисом
Сегодня за ним сидел на лабе. И во всяких Залупосрансках, в говноинститутах и говношколах стоят допотопные компы, котороые помнят еще шиндос98 (наверное).
Чот я щас подумал: фридос риально не нужен, а для старых прог есть досбокс.
j123123 06.05.2018 09:35 # 0
Из досбокса биос не перепрошить
syoma 06.05.2018 09:38 # +1
j123123 06.05.2018 09:48 # +2
bormand 06.05.2018 10:08 # 0
gost 06.05.2018 10:55 # +1
bormand 06.05.2018 11:10 # 0
У меня тоже. ASRock поди?
З.Ы. Мне там ещё обзор материнки нравится прямо из setup'а — на фотке показано что в какие слоты воткнуто.
gost 06.05.2018 18:08 # 0
Alexander 06.05.2018 21:07 # 0
bormand 06.05.2018 21:28 # 0
roskomgovno 06.05.2018 21:42 # 0
syoma 06.05.2018 10:51 # 0
yet_another_one_shit 06.05.2018 12:49 # 0
ЗЫ. Интересно, есть ли прошивалки под KolibriOS или MenuetOS?
plusinho 06.05.2018 23:24 # 0
Ебать как интересно)))
yet_another_one_shit 06.05.2018 23:28 # 0
roskomgovno 06.05.2018 23:41 # 0
j123123 06.05.2018 09:40 # +1
Лучше BareMetal OS возьми.
А еще есть TempleOS, написанная шизиком-программистом.
> The software is a x86-64 bit, multi-tasking, multi-cored, public domain, open source, ring-0-only, single address space, non-networked, PC operating system for recreational programming. The operating system was designed to be the Third Temple according to Davis and uses an interface similar to a mixture of DOS and Turbo C.
bormand 05.05.2018 06:13 # 0
Да ладно... Low-level хаки и бутылочных котов можно unsafe'ом обмазать (всё лучше, чем вся прога целиком в unsafe как в няшной), ГЦ -- не обязательный признак безопасного языка, а остальному коду тупо похуй.
roskomgovno 07.05.2018 03:07 # 0
Безопастный это где нет болтающегося укойзателя?
Приведи пример ЯПа с ГЦ и с болтающимся указателем (unsafe хаки не рассматнриваем)
subaru 07.05.2018 10:01 # 0
yet_another_one_shit 05.05.2018 13:44 # 0
> в DOS было заебись
Что за язык такой — DOS?
roskomgovno 07.05.2018 03:07 # 0
CHayT 05.05.2018 12:32 # 0
j123123 06.05.2018 09:46 # 0
defecate-plusplus 07.05.2018 10:07 # 0
roskomgovno 07.05.2018 16:05 # 0
* Boeing 787
* Некоторые PostScript-принтеры.
:))))))))))))))
bormand 05.05.2018 04:46 # 0
roskomgovno 05.05.2018 05:10 # 0
Там просто слово-в-слово написано
OpenGL methods are used to manage the rendering pipeline. In its nature, while the graphics card is showing image to the viewer, computations of the next frame are being done. When you call glReadPixels; graphics card wait for the current frame to be done
зы: писал тут длинный гневный псот про то что в досе не все так было хорошо как он тут нам изобразил: потому что планары, синхронизация с обратным ходом луча и пр, но пост убился
roskomgovno 05.05.2018 05:19 # 0
это высер sadkov а не топикстартера, так что вся хуита про прямой доступ к памяти это к нему вопрос, ок
bormand 05.05.2018 06:05 # 0
Про read то понятно. Из-за синхронности он просто не может не убивать пирфоманс (асинхронная выгрузка через PBO не тормозит, к слову).
А вот draw по идее можно было бы оптимизнуть -- оно же не против шерсти. Хотя может быть просто не хотят неявно аллоцировать буфера и держать их неопределённое время, тем более когда есть альтернатива с PBO.
roskomgovno 06.05.2018 23:41 # 0
yet_another_one_shit 06.05.2018 23:45 # 0
roskomgovno 06.05.2018 23:46 # 0
roskomgovno 05.05.2018 05:18 # 0
roskomgovno 05.05.2018 05:25 # 0
j123123 05.05.2018 09:23 # 0
dm_fomenok 05.05.2018 13:03 # 0
bormand 05.05.2018 13:52 # 0
yet_another_one_shit 05.05.2018 13:58 # +1
Alexander 05.05.2018 16:53 # −1
http://a2ch.ru/i/c77ebc0d6755486cff45c5e237b4d502