Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- LGL3:
- TIPS:
- ☐ Внимательно следить за функциями, которым передается близкий двубайтовый указатель.
- ☐ Внимательно следить за регистром символов в прагмах и объявлениях функций. Компилятор промолчит на ошибку в прагме, но действие прагмы не применится.
- ☐ Переменные, объявленные в ассемблерном коде, достигаются только по регистру CS!
- ☐ Сегменты объявляются как CLASS=CODE!
- ☐ Кстати, по ходу, линковщик тупит, и впихивает в итоговый файл все функции
- ☐ Никаких подгрузок данных из LZ4, когда на дисплее что-то обновляется!!!
- ☐ Следить за порядком освобождения памяти. При необходимость освободить память, освобождать вообще всю выделенную, или ничего.
- Постоянные задачи:
- ✔ Снабдить весь существующий код Assert-ами, где следует. (15-03-15, 01:50)
- ✔ Следить за наличием комментариев к функциям. (15-03-15, 01:50)
- ✔ Обращать внимание на следование определенному принципу при именовании функций и переменных. (15-03-15, 01:50)
- LUtils - Работа с файлами DOS:
- ✔ Контроль EOF.
- ✔ Двоичная запись.
- ✔ Чтение и запись строк текста.
- ✔ Создание файла.
- ✔ Удаление файла.
- ✔ Позиционирование.
- ✔ Позиция указателя в файле.
- ✔ Размер файла.
- ✔ Определить константы ошибок работы с файлами.
- ✔ Привести в порядок комментарии к коду по всему проекту.
- LUtils - Строки:
- ✔ Перевод из числа в строку.
- ✔ Сравнение строк.
- ✔ Склеивание строк. [Допилено]
- ✔ Нахождение подстроки.
- ✔ Перевод в верхний регистр (CP866).
- ☐ Перевод в нижнией регистр (CP866).
- ☐ Перевод строки в число.
- ☐ Пусть PrintLn возвращают количество напечатанных символов.
- LUtils - Память:
- ✔ Выделение DOS-памяти.
- ✔ Освобождение DOS-памяти.
- ✔ Возврат размера буфера.
- ✔ Перемещение данных из буфера в буфер.
- ✔ Заполнение буфера значением.
- ✔ Совместимые с wSizeOfBuf локальные буферы.
- ✔ Проверка на битость буфера.
- LUtils - Разное:
- ✔ Определение типа процессора, чтобы можно было вызывать MoveMem и FreeMem по указателю на общую функцию.
- LFiles:
- LRF:
- ✔ Открытие LRF.
- ✔ Поиск подфайла (одновременно и открытие).
- ✔ Чтение подфайла. (07-03-15, 08:21)
- ✔ Чтение строк из подфайла. (15-03-15, 01:50)
- ✔ Позиционирование в подфайле. (07-03-15, 07:36)
- ✔ Позиция подфайла. (07-03-15, 07:26)
- ✔ Размер подфайла. (07-03-15, 07:27)
- ✔ Закрытие подфайла. (07-03-15, 07:27)
- ✔ Закрытие LRF. (07-03-15, 07:27)
- ✔ Функция EOF для подфайлов. (07-03-15, 07:46)
- Интерфейс:
- ✔ Общий интерфейс для чтения обычных файлов и подфайлов LRF. (15-03-15, 01:51)
- ✔ Функции прозрачной распаковки и чтения данных из LZ4 также, как и обычных данных. (21-03-15, 22:31)
- LErrors:
- ✔ Загрузка сообщений об ошибках из файла.
- ✔ Функции установки состояний ошибки, работы с ними. (15-03-15, 04:54)
- ✔ Механизм хранения и передачи значений для подстановок. (15-03-15, 04:54)
- ✔ Парсинг подстановок в тексты об ошибках. (15-03-15, 04:54)
- ☐ Обязательно вставить флаги критичности ошибок, и завершать работу
- программы при наступлении критичной ошибки в функциях Error и
- ассертах!
- LGFiles:
- LGF файлы:
- ✔ Определения структур. (20-03-15, 05:23)
- ✔ Загрузка. (23-03-15, 06:30)
- LPF файлы:
- ✔ Определения структур. (20-03-15, 05:23)
- ✔ Загрузка. (20-03-15, 06:13)
- LCS файлы (компилируемые спрайты):
- ☐ Определения структур.
- ☐ Создание генератора из LGF в LCS.
- ☐ Загрузка.
- LFF файлы (работу LFF можно построить на LCS):
- ☐ Определения структур.
- ☐ Загрузка.
- LGL:
- Инициализация:
- ✔ Инициализация дисплея. (15-03-15, 06:37)
- ✔ Возврат старого экранного режима (15-03-15, 06:38)
- ✔ Инициализация экранного буфера. (23-03-15, 06:30)
- Работа с палитрой:
- ✔ Установка палитры (21-03-15, 22:58)
- ✔ Чтение палитры из VGA (21-03-15, 23:04)
- ✔ Установка яркости вверх\вниз (23-03-15, 02:48)
- ✔ Приведение одной палитры к другой. (23-03-15, 03:40)
- ✔ Установка цвета в палитре. (23-03-15, 03:51)
- Работа с изображениями:
- ✔ Обновление экрана. (23-03-15, 20:10)
- ✔ Очистка экрана. (23-03-15, 23:06)
- ✔ Вывод обычных изображений. (23-03-15, 23:06)
- ✔ Вывод обычных спрайтов (24-03-15, 04:51)
- ✔ Отражения всего перечисленного выше добра. (26-03-15, 20:25)
- ✔ Функция Copy (получение части изображения) (29-03-15, 09:23)
- ✔ Вывод с отсечением всего перечисленного выше добра. (29-03-15, 13:39)
- ✔ Заполнение изображений цветом (30-03-15, 22:32)
- ✔ RLE-спрайты. (31-03-15, 04:43)
- ✔ Отсечения RLE-спрайтов (31-03-15, 04:43)
- ✔ Отражения RLE-спрайтов. (13-04-15, 19:12)
- ☐ Компилируемые спрайты
- ☐ Отражения и отсечения компилируемых спрайтов.
- Шрифты:
- ☐ Вывод надписи.
- ☐ Возможно - объект надписи.
- Работа с примитивами:
- ☐ Установка точки.
- ☐ Вывод линии.
- ☐ Вывод прямоугольника
- Прочее:
- ✔ Вертикальная синхронизация (30-03-15, 22:44)
- ✔ Проверка наличия VGA-совместимого адаптера. (15-03-15, 06:37)
- ☐ Разделить внутренние и внешние функции по порядку следования.
- LZ4:
- ✔ Функция распаковки и интерфейсы в LUtils.H (21-03-15, 16:19)
- ...
- ...
- Титры игры:
- ☐ Привет товарищу "Trixter/Hornet" за LZ4-функцию.
- По полной готовности проекта:
- ☐ Или добавить к LZ4 функцию чтения строк текста, или просто убрать функции чтения строк вообще.
- ☐ Функция RLE_Copy, которая поможет избавиться от лютого костыля при
- отрисовке RLE-спрайтов с отсечением. Но пока и так сойдет.
- ☐ Добавить 16 и 32 бит версии функции Img_Flip для обычных изображений.
- ☐ Цепочка функций завершения программы. Замена вызовов Abort на вызов первой в цепочке функции завершения.
- ☐ Добавить кэш для поиска файлов в LRF. А то пока медленно.
- ☐ Удаление файлов из LRF.
- ☐ Ужать EXE-пакером.
- ☐ Возможно, избавиться таки от стандартной библиотеки вообще.
- ☐ Переписать утилиты (LRFP, LGFC, STRCOMP) на Си.
- ☐ Возможно вшить данные в EXE файл.
- ☐ Добавить каждому файлу кода лейблы с лицензией.
- Дневник разработки:
- 13 Апреля, 2015:
- Проснулся в 12 дня где-то. Посычевал в интернете, сделал пару дел по дому,
- теперь кожу потиху. На часах 19.00. "Отрефакторил" жирнющие однотипные
- функции вывода RLE с отражением, которые запилил вчера, разбив их на
- парочку макросов. Конечно, рефакторингом такое можно и не назват, но
- объем кода уменьшился значительно, и это при не изменившейся его
- производительности. Отлично. Сейчас думаю, чем заняться дальше. Впрочем,
- список дел у меня есть. Думаю, сейчас самое время решить вопрос с
- функциями, которые должны быть статическими. А именно, собрать их в кучу
- и перенести в концы модулей. А то там слегонца каша.
- 7 Апреля - 12 апреля, 2015:
- Снова не писал сюда ничего на протяжении шести суток. Разумеется, это было
- вызвано тем фактом, что я ничего не кодил все это время. К сожалению,
- память уже не позволяет вспомнить достаточно детально каждый из дней, а
- я не особо-то желаю ее насиловать. Тем не менее, пробегусь по
- основным моментам: В среду 8 апреля поехал к Женьке, взяв привычный
- литрик вина. Поболтали с ним, а потом я позвонил Николаевичу. Выяснил, что
- за описанный мой ранее проеб он меня таки уволил. Расчитал, оказывается,
- то ли в понедельник, то ли вообще в пятницу. Денег пришло мало, ибо за
- март он заплатил мне по справедливости ровно столько, сколько я и
- наработал - порядка 700к всего. Отпускные, впрочем, выплатил нормально.
- Так что отныне я безработен.
- В четверг сычевал, очень много спал. В пятницу поехал, забрал трудовую у
- него, в общем-то, попрощались. Всякое было за эти 2 года, я не жалею, что
- работал у него все это время, и мне нет причин на него обижаться.
- В субботу поехали с родителями на дачу, заодно заглянули на кладбище, да
- прибрались на могилах бабушки и дедушки. Всяко лучше, чем втупую набить
- требух. Потом на даче закосплеил земнопоня, точнее, самого себя, прополов
- теплицу да запилив грядку. Нажрался мяса и поехал домой в город, чатиться
- с Волки, заодно купил и выжрал очереденой литрик винца.
- Поигрался в Тундру, словил лютый баттхерт по пьяни из-за неосторожно
- сказанных слов Волки в чате. Впрочем, не будь я бухим, баттхерта бы явно
- не было. Просто наложилась физическая усталость, сонность и опьянение,
- потому психика не выдержала.
- Воскресенье слилось хрен пойми куда, а также стало одним из рекордных
- дней по продолжительности моего бодрствования, только с обратной стороны.
- Лен спать через 9 часов после подъема и довольно быстро отрубился.
- А еще, кажется, во вторник фатально уронил свой смартфон. Теперь он
- просто не заряжается. Был бы смысл его чинить, если бы это было его
- единственной проблемой. Но вдовесок у него полуубитый сенсор, который
- пострадал от падения в этом же самом месте примерно год назад, а также
- убитая в говно батарея и общая старость и лагучесть. Последнее можно было
- убрать, зарядив его старым но рабочим софтом, который явно бы жрал меньше,
- но мне все было не до этого. Так что теперь сижу вообще без телефона.
- Впрочем, в воскресенье заказал себе новый, покумекав и прикинув, сколько
- имею денег. В среду должен быть доставлен.
- Ну а насчет воскресенья - таки за него успел неплохо поработать.
- В частности, реализовал все функции флипа RLE изображений. Так что теперь
- поддержку RLE движком можно назвать полноценной.
- 6 Апреля, 2015:
- Сейчас на часах ровно 9 утра и я дописал всю историю аж с 31-го марта и
- по сегодня. Думаю пойти поспать все же, уже как бы вполне можно немного.
- Или таки поработать? Хотя, ехать особо некуда. Если Николаевич сам наберет
- и скажет куда, тогда проследую. А нет - тогда завтра уже буду.
- 5 Апреля, 2015:
- Где-то к шестому часу утра все пиво было выпито, Женька налил мне виски
- и посадил играть в тундру, как поня, который явно не намеревался спать.
- Да и мне самому очень приятно играть пьяным, игра заходит и идет удачно
- почти всегда. Только один раз из всех моих пьяных заходов в тундру игра
- не задалась. Не в этот раз тоже. Первые 50 фрагов настрелял очень быстро.
- Где-то 8 утра уже было, виски кончился, увы, к тому моменту уже и я
- потиху начал трезветь. Потом подумал подумал, понял, что игра заладилась,
- все отлично. И грех уже не настрелять еще 80 до бумеранга. И принялся
- долбить, поставив на репит трек Mediative Олега Серкова, пока Женька
- сопел на кровати рядом. К 11-ти Женька проснулся, как раз тогда, когда
- мне оставалось фрагов 10. Сделал мне кофейку, принес эклеров, и я захавал
- недостающие фраги за один бой с горкой. Получил бумеранг mk1. Сделал на
- нем пробный вылет, настреляв 3 фражика, в принципе, самолет неплохой,
- но для моей тактики, которая подразумевает быстрый полет, годится слабо.
- Приятно, тем не менее, что таки не пропустил акцию и получил самолетик,
- уи :)
- Лег спать где-то к 12-ти и спал аж до половины восьмого вечера.
- Проснулся, навели порядок, да поехал домой. Вернулся, потупил в интернете
- и... поигрался в Тундру. Открыл Рак 9Т, кстати. Именно ради него и решил
- добрать еще фрагов 20, чтобы открыть его. Успехи я бы назвал средними,
- то ли я просто на папок наткнулся лютых, то ли просто игра не зашла, но
- суммарный фрагрейт вышел 29/12, что, в общем-то, довольно уныло, т.к
- обычно хорошее соотношение для меня - 4/1, что как раз и вышло, когда
- стрелял 130 на бумеранг. Ну, а первый вылет на раке 9Т уже порадовал,
- как и тестовые. 5 фрагов настрелял, пока сам не подставился. Жаль, что
- все же Рак - не кобра, со скоростью и сохранением энергии у него есть
- проблемы. Ну, зато много других преимуществ по сравнению с коброй.
- Главное раскрывать именно их, а не пытаться летать на нем также, как на
- кобре. Для этого, собственно, есть кобра Покрышкина, на которой, кстати,
- я пока так и не провел ни одного вылета.
- Мде. Что-то меня занесло. Тут-то речь не про самолеты должна быть, вот
- нисколько :)
- 4 Апреля, 2015:
- Как обычно, я немного проспал. Вышел из дома в 17.20, кажется.
- Встретились с Женькой, съездили к нему домой за джойстиком, который
- он мне предложил подарить, т.к ему не нужен, а я как раз играю в Тундру.
- Довольно мило с его стороны, не считая того, что такому ракадному крабу,
- как мне, летающему только в аркаде, джойстик не особо-то и нужен. Но
- от подарка не отказался, кто знает, может и в СБ полетаю однажды, там он
- определенно пригодится)
- Да и вообще нужно посмотреть, какое применение ему можно еще найти,
- явно ведь будет.
- Закупились потом, да поехали к Женьке в Боровляны. Взяли 8 литров пива
- на двоих, пару пицц, закуси всякой, и принялись очень добро проводить
- время, как и всегда.
- 3 Апреля, 2015:
- Проснулся к пяти дня. Поболтал с Женькой о том о сем, да отправился
- сычевать в интернеты. Уже не помню, что делал, помню, что снова по
- существу это было именно что пинанием хуев.
- Кстати, узнал, что в тундре с 3 по 6 апреля проходит акция, как недавно
- мной описанная акция с коброй Покрышкина. В этот раз предлагалось
- настрелять 140 фрагов за время акции и получить один из двух
- австралийских Бумерангов. Сам по себе самолет довольно средний.
- Сделал 3 вылета в тундре, настрелял 12 фрагов, решил, что, видимо,
- заниматься этим не стоит и закрыл тундру вообще.
- Под утро лег спать, часов 8 было. Требовалось поспать, ибо Женька
- (не Лезвион, а другой, коллега с прошлой работы) как раз к шести вечера
- субботы звал меня потусить с ним.
- 2 Апреля, 2015:
- Проснулся от звонка Николаевича где-то к 12-ти часам дня.
- К сожалению, он задавал мне прямые вопросы касательно достижений за
- последние 2 дня, поэтому пришлось ответить как есть. Разумеется, ему это
- очень не понравилось. Так что я не нашел ничего лучше, кроме как пулей
- вылететь из дома и сделать за рабочий день все то, что не сделал за
- предыдущие два. Вернулся к семи вечера, отправил ему отчет и был таков.
- Оформил ИПР Женьке по всем канонам, постоянно отвлекаясь на интернеты.
- 5 утра было, когда я окончил работу. Посмотрел интернеты еще немного и лег
- спать.
- 1 Апреля, 2015:
- Сутки начались с того, что я, в конечном итоге, сделал оба задания для
- одной из ИПР-ок. Затем лег спать, чтобы снова проснуться в 2-3 дня.
- Ну и решил остаться дома второй день кряду. Получается, положил болт на
- работу и 2 дня не выходил на нее. Ну, позволить пропустить себе день без
- особых последствий я вполне мог весь последний год, но два дня оказалось
- все же довольно много. Так что второго апреля я конкретно так огреб,
- о чем напишу за следующий день.
- Тем не менее, после пробуждения я целых часов 8 занимался лютой хуитой,
- фактически, время было просто слито впустую. Затем запустил тундру.
- И задротил, значится, еще несколько часов. Лег спать под утро 2 апреля.
- 31 Марта, 2015:
- Эти строки я пишу уже 6-го апреля, аж утром. К сожалению, работа
- прервалась и я не работал над игрой на протяжении пяти полныйх дней.
- Далее вкратце опишу, что происходило эти дни.
- Тем не менее, git напоминает, что в ночь с 30 по 31-го марта я сделал не
- только RLE спрайты, но еще и RLE-кроппинг по всем возможным осям, а также
- поправил баг в функции Img_Copy32. В принципе, работа была проведена
- неплохая. За тот день я реально был доволен. А потом я лег спать и
- проснулся в два часа дня. На работу решил не идти, хотя утром и получил
- от Николаевича парочку заданий. Типа, сделаю все шустренько завтра, спешки
- нет, вроде. Написал Женька, попросил не тянуть поня за хвост и приступить
- к работе над его учебой. Согласился, и решил таки начать. Программное
- обеспечение встроенных систем, значит. Полистал методичку, мануалы по
- микроконтроллеру PIC16F84A, c которым требовалось вести работу. Сначала
- детали были решительно непонятны, но со временем начал в них разбираться.
- Ассемблер у этого девайса, конечно, довольно забавный. Чем-то напомнил
- таковой от MOS 6502, они определенно оба больше похожи друг на друга,
- нежели x86 и один из них :).
- 30 Марта, 2015:
- Проснулся в 8 утра, итого часов 16 продрых. Вышел на работу, вернулся
- в два дня, да сидел сычевал в интернетах до шести вечера, врезав
- предварительно немного коньячку. Помог немного бате отвоевать места на
- системном разделе на его компьютере. Потом поигрался со шрифтами к ST,
- попытался найти какой-нибудь новый, но в конечном итоге остался на
- богоподобном keyrus. Гуртяку, конечно, поклон и светлая память. Люди
- вообще ведь умирают как минимум дважды - один раз физически, второй - в
- памяти человечества. У многих относительно быстро наступает вторая смерть.
- Но не у всех. Как не у него.
- И все с этим шрифтом хорошо, кроме того, что не предназначен он был для
- масштабирования, и его ttf версия была получена одним человеком с теми
- еще костылями, потому масштабируется несколько гаденько. Его же
- оригинальный размер для меня мелковат. Ну, что же, тем не менее, я уже
- привык к текущему виду. Пусть будет так.
- Также понял, что Си-Linter у меня таки не работает, будучи вызываемым из
- ST. Пока эту проблему так и не решил, но временно прикрутил его через
- батник. Результаты статического анализа текущего кода радуют. Из
- серьезного - только один undefined behavior, да и все. Остальное - ругань
- на неиспользуемые функции (пока это нормально, я таки движок делаю)
- и совершенно неадекватная ругань на якобы неиспользуемые переменные,
- которые, однако вполне себе используются, даже напрямую, а не каким-либо
- косвенным путем. Просто выключил упоминания о всех ошибках класса "style"
- и был таков.
- В целом - резюмируя - вот что значит выкрутить в компиляторе максимальный
- уровень warning-ов! :)
- Ну и сейчас уже 22 вечера. Пора таки браться за сам код :)
- 29 Марта, 2015:
- Неплохо покодил, решив вопрос с функциями Copy. Но, что еще
- более важно, выяснил, что вывод с отсечением - это и есть по существу
- функция Copy! Раньше у меня для вывода с отсечением были аж 3 функции с
- очень неудобным (ужасающим) интерфейсом вызова. Теперь же все делается
- гораздо гораздо проще, и в среднем также и немного быстрее.
- Вообще, конечно, поражен, что меня не просветило так еще 3 года назад.
- Это кажется очевидным мне на данный момент.
- Отлично, кроп есть, копи есть. Остается заполнение изображения, после
- чего нужно будет разобраться с RLE спрайтами да шрифтами, по существу.
- Ну и функции вроде Move, MoveTo, Align, такие вот сервисы короче, и все
- будет в шляпе, насчет графики-то. А там впереди клавиатура, таймер и мышь.
- XMS, полагаю, отложу на потом.
- Сейчас почти 2 дня. Собираюсь устроиться кверху копытами. Пойду, видимо.
- 28 Марта, 2015:
- Проснулся в 8 вечера. Потупил, как водится, в интернете, и пошел кодить.
- На форуме посоветовали таки разобратсья с git-ом, что и принялся делать.
- Настроение на приключения совпало. Ну, вроде, через 3 часа настроил все
- довольно вменяемо и научился таки коммитить. Так что теперь нет
- необходимости бэкапить исходники аж в контакт :)
- После чего плавно по факту наступило 29-ое, так что кусок, который я
- изначально записал за этот день, нужно поместить уже в день новый.
- 27 Марта, 2015:
- Проснулся поздно, к двум дня примерно. Потупил в тундру малость, да поехал
- повидаться с Антоном и Ильей, как договаривались. Выпили пивка немного,
- поболтали по мелочи. А еще Рита была, которую я совсем не ожидал увидеть,
- и был весьма ей рад. Разумеется, меня тут же обняли и подняли. А потом
- гладили мне гриву, а на прощание я получил укус за ушко, что особенно
- добро было.
- По пути домой купил литр вина, вернулся, и давай его выжирать. Чатился
- довольно долго с Волки, а потом пошел играть в тундру и устроил весьма
- неплохой нагиб, чему особенно был рад. Лег спать к восьмому часу утра.
- 26 Марта, 2015:
- Проснулся в час дня. Решил перенести помощь Жене на понедельник, ибо стало
- так лениво вдруг, что никуда не хотелось ехать. Даже на работу забил.
- Сижу вот, понимаю, что надо начать кодить, да чатюсь пока что с Волкопони.
- В конечном итоге немало времени потратил на чаты, но таки допилил функции
- отражения изображений как по вертикали, так и по горизонтали. Отличо, что
- же, и то добро.
- 25 Марта, 2015:
- Очень занимательно. Очень. Я только что обратил внимание, что прошел
- месяц разработки. И что бы вы думали? Именно сегодня, спустя ровно
- месяц я повстречал во сне сестру белой байки. Ее задача была такой же,
- как и белой байки - напугать меня. Но, стоит отметить, у байки это
- получилось сделать лучше.
- Короче, ситуация была такова. Я в одиночку нахожусь в незнакомой квартире.
- Ну и понимаю, что больше я не один. На меня со входа наступает женщина
- с тентаклями на голове и вместо рук. Я еще не вижу ее, ибо нахожусь за
- стенкой, но знаю, что она там, и решаю заглянуть за дверной проем.
- Понимаю, что это так. И спасаться некуда. Решение приходит само собой.
- Я остаюсь прямо возле дверного проема и встречаю свой страх лицом к лицу.
- Когда она показалась из него, не было на лице у нее тентаклей, да и руки
- были обычные. Это была обычная с виду женщина лет 45 на вид.
- Я смотрю на нее, она находится в метре от меня. И понимаю, что должен
- укусить ее за палец. Обмен ролями происходит очень быстро. Теперь я уж
- точно ее не боюсь. Следующий эпизод - мы вместе лежим на кровати, и я
- пытаюсь схватить один из ее пальцев, чтобы воплотить задуманное.
- А потом на этой приятной ноте реальность резко вмешивается в мой сон,
- который уже не было никакого смысла прерывать. Я просыпаюсь, чтобы
- обнаружить, что у меня какие-то влажные пятна на одеяле. Сначала думаю,
- что просто кусал во сне его, однако потом нахожу еще одно влажное пятно
- на простыне. Рядом мечется собака, поскуливает, желая, чтобы я ее выпустил
- из комнаты. Нога задевает влажную зону на ковре. А на полу рядом - пятнышки
- жидкости, да и зад у собаки весь мокрый. Ну ебаный же ж ты нахуй!
- Выгуливал же специально, чтобы такого не произошло, можно же было
- дотерпеть. Пока убирал содеянное, растерял желание ложиться спать.
- Включил компьютер, написал эти строки, немного потупил в интернете, понял,
- что таки нифига его не растерял, да лег спать. Проснулся в 12. Сгонял на
- работу, отработал неплохо, получил деньжат, купил пивка с рыбкой, да,
- хорошо мне было очень весь вечер. Игрался в тундру с большим
- удовольствием, да лег спать в 3 ночи.
- 24 Марта, 2015:
- Ну, по идее, часть работы, сделанной вчера, фактически была сделана
- в начале дня сегодня. После чего не спал, а сразу проследовал на работу,
- после чего заехал к Женьке, сделали с ним пару вещей. Вернулся, потупил
- малость в интернете, да лег спать копытами кверху, 8 вечера было.
- 23 Марта, 2015:
- В принципе, я и за сегодня оказался молодцом. Сделал несколько функций
- вывода изображений, в частности экранный буфер, обычные изображения
- и спрайты, также поправил парочку багов в функциях загрузки изображений.
- Проснулся в два дня, на работу вообще решил не идти, доберу в другие дни.
- 22 Марта, 2015:
- Проснулся во столько же, во сколько и вчера. За сегодня в целом закончил
- работу с всеми функциями палитры, также сделал часть функций по работе
- с LGF - загрузку из него, также инициализацию экранного буфера.
- Во время отладки наткнулся на странное поведение. DOS выделяет память
- как полагается, но при освобождении более, чем одного выделенного
- фрагмента, возвращает странную информацию о наличии оставшейся свободной
- памяти. Сижу и думаю, то ли у меня где-то детектор потерянной памяти
- барахлит, то ли вопрос в том (что вероятнее всего) что память просто
- фрагментируется. А это легко проверить. Если освобождать выделенные
- буфера в обратном порядке их выделения, то _по хорошему_ проблема
- должна исчезнуть. А ну-ка...
- Так и оказалось. Что же, наивно было ожидать от DOS умения заниматься
- крутым менеджментом памяти. В общем, из этого следует очень простой факт.
- Мне требуется уделять особую осторожность работе с памятью, особенно
- следить за ее корректным освобождением. Ну, или заняться построением
- нового велосипеда в виде менеджера памяти, что я явно сейчас делать не
- намерен :)
- 21 Марта, 2015:
- Очень рад, что вчера лег спать относительно рано, из-за чего проснулся в
- 2 дня, а не в 8 вечера, как бы мог. Потупил с часик в интернете и принялся
- уже за работу. Исправил распаковку LZ4. Разумеется, там, где я ожидал
- какого-нибудь хитрого бага, типа опечатки с регистром, или сорт оф зэт,
- истина оказалась намного проще - перепутал местами источник и назначение,
- когда указывал, в каких регистрах функции передаются два ее параметра.
- За этот день закончил работу с LZ4 и файловым модулем. Отлично.
- 20 Марта, 2015:
- В принципе, сейчас 6 утра, а уже есть прогресс. В частности, прописал
- структуры для LGF и LPF файлов, а также функцию загрузки последних.
- Добро. Сейчас, полагаю, следует немного сбиться с курса, именно для
- того, чтобы реализовать задачу, которую я только что понял, что нужно
- было сделать ранее, а именно - добиться поддержки LZ4 сжатия, и чтения
- сжатых файлов прямо из LRF. Уже реально пора, это поможет потом вовремя
- не наступить на грабли. Заодно нужно подумать про то, как бы это так
- хитро распаковывать из LZ4, особенно не выделяя много памяти. В принципе,
- есть чит вариант с видеопамятью, но он не особенно приемлем.
- Работа над кодом на этом я и закончил в тот день. Съездил на работу,
- после чего заехал к Женьке и традиционно выжрал литр вина да литр сидру.
- Хорошо было)
- Как вернулся, полетали с Волки в Тундру, как понимаю, это типичное мое
- пятничное времяпрепровождение :)
- 19 Марта, 2015:
- Повторилась история со сном во вторник. Лег почти в четверг утром, проснулся
- аж в тяпницу в 2 ночи. Вот и пишу спустя два часа, как закончил с
- интернетами. Думаю смачно так покодить, да и желание просто прет. Еще бы,
- так много времени прошло, как не кодил. Да и следует успевать, ибо вообще
- в идеале мне бы закончить работу над основной частью движка к началу апреля.
- Когда он у меня уже будет - будет самое время заняться поиском художников
- для анимации. Ибо, боюсь, саму анимацию я не найду в нужном мне ракурсе.
- Хотя, конечно, прежде всего следует поискать именно анимацию, есть
- возможность, что она как раз найдется. Ну и поскольку уже 20 марта, то
- переберусь в новый день.
- 18 Марта, 2015:
- Лишь немного поиграл в Тундру по раннему утру, просрав оставшееся время на
- интернеты. Та еще радость. Утром вышел на работу, проделал все довольно
- неплохо. Вернулся, еще тупил в интернете. Вообще успех.
- 17 Марта, 2015:
- Лег спать довольно рано, но целых часа 4 дочитывал последнюю книгу о
- Гарри Поттере. Тем более, ее-то я прочитал всего один раз. Ну, финал
- приятный. Отрубился где-то к семи утра, если не позже, продрых весь вторник,
- на работу было решено забить от слова совсем. Проснулся вообще в 2 ночи
- среды.
- 16 Марта, 2015:
- Вышел на работу довольно рано, быстренько отработал, вернулся, да сидел,
- болтал с Волки, пробовал новое управление в тундре, которое установил.
- Действительно, нагибать стало проще с поднятой чувствительностью мыши.
- Теперь мышь не нужно елозить через пол стола. Удивительное рядом.
- 15 Марта, 2015:
- Плавно настали новые сутки, и я все же победил баг с чтением подфайлов.
- Итого уже можно ставить две галки. Теперь следует ознакомиться с
- остальными поставленными ранее задачами, и доработать их.
- Что же, внезапно неплохо поработал - в частности, закончил функции обработки
- ошибок и подстановок в строки. Теперь я могу пользоваться примерно таким же
- сервисом, какой есть у стандартной функции printf.
- 14 Марта, 2015:
- Проснулся аж в 9 часов вечера. Проспал 12 часов то есть. Решил не начинать
- день с распиздяйства, к тому же, мне действительно нужно писать код,
- если я хочу к началу апреля закончить работы над графической составляющей
- игры.
- 13 Марта, 2015:
- Проснулся поздновато, да сразу поехал к Женьке, взял винца и сидра и с
- большим удовольствим все это дело у него и выпил. Поболтали, немного
- прояснили планы на предстоящие конвенты - Everycon и РуБрониКон.
- Затем к часам одиннадцати я вернулся домой, и, учитывая свое состояние,
- мало способствующее кодингу, пошел играть с Волком в тундру. У Волкопни
- под конец бомбануло оттого, что у него плохо выходит летать на американцах
- в аркаде. Волчок покинул меня, а я еще пару часов погонял со средними
- результатами, да в часов 7 утра пошел спать. Гарри Поттера еще почитал,
- перечитываю ведь, уже на половине седьмого тома, который, кстати, прочитал
- единственный раз да и очень давно. Фактически читается так, словно я и не
- читал его вовсе.
- 12 Марта, 2015:
- Проснулся довольно поздно, быстро сделал пару магазинчиков, да вернулся
- домой, чтобы встречать монитор. Он не задержался, и не подвел, очень
- доволен оказался покупкой. Также, устроил себе двумониторную систему,
- чем весьма доволен. Толку продавать старый понитор, если он уйдет за
- копейки? Почистил его нормально, да установил вместе с новым. Заодно
- пришлось перепланировать расположение вещей на столе. Теперь системный
- блок переехал на левый край стола, чтобы уступить место клавиатуре и
- мониторам. В общем-то, на распихивание стаффа и тесты монитора у меня
- весь день и часть ночи нового дня и ушли.
- 11 Марта, 2015:
- Начало суток ознаменовалось релизом бас-альбома Пети, также известного как
- SDreamExplorerS. С удовольствием послушал, и просто залип в его творчестве.
- Пока не прослушал весь альбом, не занимался вообще ничем. Это довольно странное
- для меня состояние, кстати, ибо обычно музыка, даже хорошая, играет у меня фоном
- к какой-либо деятельности. Что как раз намекает на то, что Петя сделал все более,
- чем правильно.
- Итак, после всего взялся за кодинг, повыбрасывал говно, которое было сделано
- 8-го марта, количество кода при этом сократилось, а функциональность осталась
- прежней :)
- Баг пока не спойман, займусь этим сейчас. Пока еще только половина третьего
- ночи, можно и покодить маленько. Тем более, хочется хоть где-то поставить
- заветную галочку.
- ***
- Стоило мне не вести дневник разработки 3 дня, как я уже стал забывать, что
- происходило в это время. Справедливости ради, разработку как таковую все
- это время я тоже не вел. Теперь бы еще вспомнить, что происходило в вечер
- среды. Слава пони, пятницу я помню. Ах да. Вернувшись с работы, сел сычевать
- в интернетах, заодно таки заказал себе FullHD монитор. Еще месяц назад мог
- это сделать, но что-то все откладывал да откладывал на потом.
- 10 Марта, 2015:
- Ну, вот конкретно за этот день мне стыдно. Банально из-за того, что проснулся
- я не поздно, с работы вернулся тоже довольно рано, и кодить сел только уже
- фактически к часу ночи среды, то есть, 11-го марта. Ну а так, в течении дня
- разобрался с магазинчиком на Немиге, получил зарплату (по ходу Николаевич
- таки решил потиху отдавать долг), накупил вкуснях, да чатился с Волкопони,
- поедая вкусняшки и посматривая видео по Тундре.
- 9 Марта, 2015:
- ...И проснулся к утру понедельника. Поскакал сначала на работу, а оттуда уже к
- Женьке, ибо обещал свозить его на сходку пони-организаторов стенда на Everycon.
- Прибыли туда, поболтали с понями, я еще поразился довольно таки приятным ценам
- в местной кафешке (действо происходило в здании кинотеатра), где с удовольствием
- взял 3 пива и был доволен. Решили с ребятами вопросы, после чего пошли с Женей
- смотреть кино, он давно хотел. Там как раз крутили фильм про робота Чаппи.
- Трешак просто лютый, но в принципе, посмотреть разок можно, во всяком случае,
- фильм даже без попкорна (пусть и с колой) заходил легко и непринужденно.
- Вернулся поздно вечером, было особенно не до кода, лег спать.
- 8 Марта, 2015:
- Итак, день новые, задачи те же.
- Посмотрим...
- А получилось так. LRF-слой я успешно прописал, наплодив при этом тучу совершенно,
- как я потом понял, не нужных функций. В итоге, оно-то работало, но столкнулся с
- багом, то есть, работало не совсем так, как я ожидал. Решил, что в сонном состоянии
- продолжать работу не особенно хорошо, и пошел спать. Спал аж 16 часов.
- 7 Марта, 2015:
- Поработал довольно неплохо. Ну, фактически, эти строки я пишу (что частенько делаю)
- уже днем позже, а именно вообще аж в пол седьмого утра 8-го марта. День кобылок, уи)
- Кодил ночь и начало утра, теперь плагин сам проставляет время завершения той или
- иной задачи, так что видно, когда и что было запилено. Если вкраце - запилил
- почти всю работу с LRF. Осталось сделать чтение строк, и можно браться за
- общий интерфейс. Который-то ведь тоже, в принципе, готов, только нужно прописать
- ветки, отвечающие за LRF.
- Перед тем, как отбрыкнулся, узнал, что в War Thunder намечается акция с получением
- кобры Покрышкина. За выходные требуется настрелять 90 фрагов, чтобы ее сделать.
- Проснулся где-то в часов 5 дня, почитал интернеты, потупил, сделал пару боев в
- тундре, да решил, что все же устрою себе задрот-марафон в тундру в честь такого
- сочного события. Ну и неплохов вышло, в 11 вечера начал продолжать. В пол шестого
- утра, через боев 17 примерно получил кобру. День прожит не зря (а если разобраться,
- то все таки более зря, чем нежели если я писал бы код). Но и то добро, теперь у
- меня есть кобра и приятно оттого, что таки смог. То есть, сейчас уже аж 8-го марта,
- половина восьмого утра. Думаю плавно перебраться в новый день, и, быть может,
- что-то полезное для игры и сделать.
- 6 Марта, 2015:
- Проснулся в 3 дня. На работу не поехал, думаю, доберу в один из выходных хвост.
- Вернулся домой где-то в часов 7 вечера, слил время в интернетах до 11 вечера.
- Поставил на Sublime Text плагин PlainTasks, буду теперь вести запил TODO-списка
- и дневника разработки в нем, ибо сворачивание и галочки, свистоперделочки, красота.
- Ну и технически день вот вот закончится, буквально через минутку, так что резюмируя,
- можно сказать, что просрал целых 2 дня, не делая ничего. Перейду на новый день
- и поработаю, надеюсь, на славу.
- 5 Марта, 2015:
- Проснулся довольно поздно, метнулся на работу, а затем поехал к Женьке. Выжрал литр
- винища, запил все это дело сидром, да зарубился в Тундру (причем, достаточно успешно),
- пока Женька пытался заснуть. Короче, проигрался очень здорово. Разумеется, никакого
- прогресса не было, сложно что-то делать, когда ты не дома)
- 4 Марта, 2015:
- Сделано:
- [*] - Открытие LRF
- [*] - Поиск подфайла (+открытие)
- Также, весьма конкретно причесан код, добавлена функция UpperCase.
- Сделал бы и больше, если бы не потратил много времени на код, который потом
- все же додумался не использовать. Воспользуюсь старым упаковщиком, его
- вполне достаточно, на самом деле, смысла переписывать реально можно считать
- нет. Тем более, времени у меня тоже не особо и много. Так что осталось
- наладить буквально работу с LRF из прослоек, и все будет готово.
- 3 Марта, 2015:
- [*] Склеивание строк. [Допилено]
- На работе все довольно неплохо было, ну, то есть, я проснулся, и потиху
- на нее поскакал. Вернулся, потупил в интернете, и таки немного покодил.
- В частности, допилил функцию AppendStr так, чтобы она принимала несколько
- параметров одновременно. Это позволило больше не заниматься BDSM-ом, вызывая
- для склейки 7-ми разных строк 7 раз старую AppendStr, а совершив один точный
- вызов. Отличное приобретение.
- Увы, убеждаюсь, что по будням моя продуктивность достаточно мала.
- А сейчас и вовсе 4-го марта, 4.41 на часах. Пора снова кверху копытами делать.
- Завтра кое-какая работа, и, я очень надеюсь, что весьма конкретный код,
- сделанный, разумеется.
- В принципе, по коду - следует немного расширить функционал работы с ошибками,
- а затем обязательно допилить LRF-модуль. Пока последние 2 галки по файлам и
- ошибкам не поставлю, браться за что-либо другое бессмысленно.
- Радует, что экономия по объему кода, сравнительно с программой на паскале,
- обладающей теми же способностями, действительно есть, и она даже двукратная.
- А каждый сэкономленный байт кода - это свободный байт для данных.
- 2 Марта, 2015 года:
- Сделано и протестировано:
- [*] Загрузка сообщений об ошибках из файла.
- [*] Снабдить весь существующий код вызовами функций LErrors где нужно.
- Теперь задача - запилить работу с LRF, и если все пойдет как по маслу,
- далее работа с файлами будет весьма простой и приятной на протяжении
- всего проекта.
- Будучи довольным и весьма усталым, я все же дотянул до утра, чтобы быстренько
- сходить на работу, вернуться, немного потупить в интернете (Элди позвал на
- стрим, на котором рисовал сочный арт для РБК), да лечь спать.
- Отрубился аж на 15 часов. Хорошо поспал, в общем-то, приятно, сочно так.
- Проснулся уже аж 3-го марта, потому есть смысл расписать некоторые подвиги
- и за следующий день.
- 1 Марта, 2015 года:
- Сделано и протестировано:
- [*] Доделать требуемые по ходу работы функции работы со строками.
- [*] Сравнение строк.
- [*] Склеивание строк.
- [*] Нахождение подстроки.
- [*] Реализовать функции-залушки для упомянутого выше подхода,
- предварительно продумав архитектуру.
- Итак, фронт работ на сегодня - это допиливание строковых функций. Далее,
- по хорошему все же следует браться именно за файлы, а не за ошибки. Сообщения
- об ошибках строятся на файлах, и в этом есть логика.
- Сейчас отлаживаю функцию склеивания строк. Поведение довольно странное.
- Подозреваю, оптимизатор шалит, либо же я не совсем понимаю логику его работы.
- Например, все работает не как положено, но стоит в код прописать int 03
- для вызова отладчика - как тут же работа становится верной.
- Нашел на мысль, что проблема может быть в том, что я как обычно невнимательно
- указал компилятору, какие регистры модифицируют те или иные мной вызываемые
- ассемблерные функции. Пойду проверю.
- Проблему обнаружил сразу же. Ну конечно. Для двух функций забыл указать
- модифицируемые ими регистры. Проблема решена. Впредь следует быть максимально
- внимательным по этому вопросу, тем более, таких функций планируется еще тьма.
- Прошло время, перепилил макрос, объявляющий локальные буферы, также включил
- таки в компиляторе совместимость со стандартом C99. 16 лет прошло с момента
- его появления, полагаю, он уже достаточно труЪ, чтобы его можно было включить)
- И теперь я могу объявлять переменные, где пожелаю. Приятно)
- Кстати, по моему, линковщик тупит, и впихивает в итоговый файл вообще все
- сишные функции, без разницы, вызываются они, или нет. Нужно будет потом
- проверить это.
- Резюмируя - сегодня в ночь поработал неплохо. В идеале, до понедельника
- сделать бы, наконец, работу с файлами.
- И снова здравствуйте, мы продолжаем. Сейчас работаю над общим интерфейсом
- для работы с файлами. Пока вроде выходит, разве что до сих пор размышляю,
- а не перекроить ли его на указатели для функций. С одной стороны, выгода
- будет в уменьшении объема дублируемого кода, но в удобстве вызова потеряется.
- Под вечер я некисло разошелся, за часа 4 неплохо продвинувшись в запиле.
- Код писался так, словно я был вдохновлен, быстро и качественно.
- В частности, снова изменил локальные буферы, теперь они также хранят и
- сигнатуру своей целостности, и есть функция, которая сразу буфер проверяет,
- а не NULL ли он, не битый ли, и вообще с того ли района.
- Также написал кусок высокоуровневой прослойки для работы с файлами.
- Перемещаюсь на запись от второго марта, ибо технически сей день уже начался.
- 28 Февраля, 2015 года:
- Ну вот. Особо покодить в последний час вчерашнего уже дня не вышло - интернет
- съел это намерение. Ну ничего, уже 3 ночи, и кое что определенно написано.
- Общий итог подведу тогда, когда решу, что следует отправляться спать.
- Итого сделано и протестировано:
- [*] Доработать функции работы с памятью. Перемещение и филл.
- [*] Определение типа процессора, чтобы можно было вызывать MoveMem
- и FreeMem по указателю на общую функцию.
- Также убрал довольно критичный баг в функии вывода строки, который,
- обыкновенно, при всей его критичности, запалился совсем нескоро :)
- Проснулся аж в 6 вечера. Приехал дядька, попросил почистить его ноутбук от
- говнеца. Почистил. Заодно по его просьбе сменил ему размеры разделов на
- диске. Подумал, надо бы и самому себе после покупки SSD объединить старый
- системный раздел с основным для данных, раз уж теперь система у меня стоит
- прямо на SSD. Решил воспользоваться акронисом, последний раз он меня выручал
- где-то с лет 6 назад, вот по доброй памяти. И сасай лалка, через два часа
- объединения он умудрился начать все по новой в третий раз, так и не преодолев
- отметку в "Сделано 10%". Терпение у меня лопнуло (много было нелестного
- подумано про создателей этой замечательной программы, вкупе с гуглением
- по вопросу). Решил рискнуть и прервать нафиг. К счастью, файлы потеряны
- не были, но осадочек все равно остался. В конечном итоге добился цели,
- правда пойдя не через функцию Merge, а через удаление старого раздела и
- присоединение нового. Но на этом эпопея не завершилась - загрузочные файлы-то
- у меня остались на том самом разделе, который я удалил. Еще 40 минут на
- создание загрузочной флешки и восстановление всего, как было. Ну, теперь это
- в прошлом. 2.51 сейчас, весна официально наступила. Пожалуй, следует
- перебраться в новый блок, за первый день марта-то.
- 27 Февраля, 2015 года:
- Пожалуй, довольно забавно будет использовать этот файл в качестве
- своеобразного дневника, причем, не только разработки. Если будет такое
- желание, то буду периодически делать записи и о чем-то просто так, особенно
- на тему того, как у меня прошел день :)
- Проснулся сегодня в 3 дня. Поехал на работу, почти нифига не сделал, вернулся.
- Взял пивка да рыбки, посычевал вместе с ними за монитором, сделал себе чистого
- поня, вот, думаю, пора покодить, а то до конца суток меньше часа осталось :)
- Впрочем, впереди выходные, надеюсь, за них удастся наверстать упущенное. Хотя,
- в субботу все равно есть план съездить на тусовку броней с Женькой. Посмотрим.
- 26 Февраля, 2015:
- Весь день я сначала работал, а потом бухал, дома вообще не появился на ночь.
- Так что, ясное дело, прогресса никакого быть не могло.
- 25 Февраля, 2015:
- Сделано и протестировано:
- [*] Двоичная запись
- [*] Чтение и запись строк текста.
- [*] Удаление файла.
- [*] позиционирование
- [*] позиция указателя в файле.
- [*] размер файла
- [*] определить константы ошибок работы с файлами.
- [*] Создание файла.
- [*] Привести в порядок комментарии к коду по всему проекту.
- [*] Совместимые с wSizeOfBuf локальные буферы.
- Ну, что же, неплохо. Заодно покажу копипасту с чудо-кошмаром, который мне
- приснился ранним утром этого дня.
- "Ты мне снился только что. И это был сорт оф кошмар.
- Такой, из детских.
- Начало не помню, да и начало было норм.
- Короче, сидим мы у тебя в комнате, о чем-то болтаем. Я замечаю, что у тебя
- закончилась кола. Но потом замечаю в комнате часть бутылки, где-то две трети.
- В том то и дело, что ты превратился резко в кошмарика.
- В это же время я через окно замечаю, что за окном падает часть дома напротив.
- Рушится просил.
- *просто.
- Кричу тебе - мол давай на выход. Показалось, сейчас и наш развалится.
- Но не валится, вроде все путем. Побежали с тобой на кухню в окно смотреть.
- Ты адски резво запрыгнул на подоконник, а потом вообще сел на нижнюю секцию
- окна жопой, чтобы остальная твоя половина выглядывала из окна
- Ну и я рядом, -удивившись- твоей резвости, начал смотреть.
- А обломки дома исчезли. Словно и не было ничего.
- Словно рухнул не дом, а что-то очень маленькое.
- Ты мне сказал - посмотри дальше. Смотрю - а там картина маслом - один
- экскаватор каким-то образом поднимает второй, второй-третий, третий-четвертый.
- Они словно тянутся к чему-то, что могут достать только вместе.
- И один экскаватор махает ковшом прямо в метре от нашей форточки.
- Я понимаю, что что-то тут не то. Внезапно, ковш этой штуки резко залетает
- в форточку, на пути превращаясь в цепкую худую руку, которая хватает меня
- за запястье и очень сильно сжимает.
- Странно. Мне очень страшно. Сначало я понимаю, что оно что-то с тобой сделало,
- а потом понимаю, что вообще тебя в окне больше нет, ты исчез.
- Оно меня отпускает. А я по прежнему тяну руку за окно. Оно начинает залазить.
- Это человек. В белой байке, с очень цепкой хваткой руки с тонкими пальцами.
- Он показывает мне свою голову, и сейчас я могу сказать, что она похожа на
- голову дементора из Гарри Поттера. Мне страшно, но при этом я проявляю
- агрессию к этому незнакомцу, не хочу отпускать его. Я кричал ему "иди же,
- иди сюда, сука", а потом проснулся. С поднятой вверх рукой и этими
- словами на губах.
- Давно такого дерьма не было. Жуть.
- Последние кадры еще были эпичны тем, что этот чувак со своей головой со ртом
- на пол ебала еще где-то с секунду плавно растворялся на фоне потолка моей
- комнаты - то есть реальности. Как раз на пограничном состоянии между сном и
- реальностью.
- Спал, конечно, на спине. Я бы сказал, что это сонный паралич, ибо симптом
- совпадает, но меня, вроде бы, не душили. Дышал я свободно. Только за руку
- схватили. Левую, кстати.
- Я тут выспаться хотел. Ну и как после всего этого заснешь?... :)
- Приятных снов тебе, если что.
- Ну и постарайся не прыгать на подоконники, а то потом какая-то хуита
- происходит."
- Такие дела. С того сна я действительно неплохо прибалдел. Сейчас как раз
- ложиться спать пора бы, и думается мне что-то вроде "Ну, крести свою жопу,
- белая байка, я иду".
- 24 Февраля, 2015:
- 1. Написал первые функции для работы с файлами: открытие, чтение, закрытие.
- 2. Целых 3 самые важные функции для работы с памятью готовы: выделение,
- размер буфера и освобождение памяти. Вроде, там что-то еще было, следует
- посмотреть внимательно на тот же LMEM.PAS из LGL 2.0
- 3. Исправлен злобный баг с кривым размещением сегментов. Больше я его не
- встречу, чему и рад, ибо кто знает, сколько бы он мне крови успел
- попортить.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement