Обновить
42

Pascal, Assembler (в основном). Схемотехника.

24
Подписчики
Отправить сообщение

Очередной эмулятор Nes. Продолжаем

Уровень сложностиСредний
Время на прочтение42 мин
Охват и читатели7.2K
image

Всем привет! С вами на связи снова Сергей, и я продолжаю творить «чудо».

В прошлой статье я немного задел тему эмуляции процессора. Советую почитать, кто не читал (ну, опять же, на ваше усмотрение — если решили сделать эмулятор сами, то лучше прочитать). Кстати, я обновил ту статью и немного пробежался по прерываниям. В этой статье, видимо, будет ещё больше технической информации — по правильной реализации памяти и работе с ней. И, наконец, доберёмся до видеоадаптера (PPU).
Читать дальше →

Делаем сразу множество игр, или Как создать эмулятор

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели7.8K
image

Немногие из нас в настоящее время захотят делать эмулятор с нуля. На дворе 21-й век, и разных эмуляторов уже сделано очень много, «на любой вкус и цвет». По большей части бессмысленно создавать новый эмулятор. В данной статье я постараюсь затронуть информацию именно по созданию эмулятора с нуля, а это довольно нелёгкий путь.

Если вы не хотите его проходить, то:

  • возьмите готовый эмулятор;
  • повторите то, что в нём уже сделано.

Но если это не ваш путь, то милости просим в статью.
Читать дальше →

Руководство по разработке эмулятора NES (перевод)

Уровень сложностиСредний
Время на прочтение53 мин
Охват и читатели5.5K

Перевод статьи по эмуляции Nes. Но я считаю что данная информация подойдёт и для любой другой эмуляции консолей/приставок (зная определённую эмуляцию, проще реализовать какую-то другую).

Материал документа где-то устарел, но по большей части актуален по сей день.

ознакомиться

Очередной эмулятор Nes. Процессор

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели13K

Всем привет! Меня зовут Сергей. И в данной статье задену тему очередной эмуляции Nes/Dendy/Famicon. Зачем? Зачем плодить очередной эмулятор того, что уже сделано достаточно хорошо. Можете считать это моей прихотью, а так же пробой своих сил (хотя на самом деле для пробы своих сил лучше, наверно, что-то попроще эмулировать).

Я хотел сразу всё расписать в одной статье, но похоже даже просто эмулирование процессора будет занятием достаточно не быстрым и надо будет задеть моменты, которые на первый взгляд не бросаются в глаза.

Читать далее

Игрострой. Программирование. Оптимизация как камень преткновения

Уровень сложностиСредний
Время на прочтение20 мин
Охват и читатели3.8K

Всем привет! Для тех кто не знает, меня зовут Ш. Сергей!

Я хоть и программирую на Pascal/Assembler, но думаю что для людей, использующих другие ЯП, данная информация может быть полезна. Полностью рассмотреть вопросы оптимизации программ/игр практически не возможно, думаю для этого надо написать достаточно не малую книгу и всё равно что-нибудь да будет упущено.

Помните, оптимизация - это достаточно не простая задача. Код, который хотят оптимизировать, могут перебирать десятки раз и практически не получить результата. А иногда малейшие изменения в коде, могут дать хороший результат. Потому, желательно знать и понимать как можно оптимизировать код и стоит ли заниматься этим в данный момент.

ознакомится

Игрострой. С чего начинать

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели10K

Привет всем! Меня зовут Ш. Сергей!

Я очень не хотел создавать подобные темы. И уже есть темы которые я уже создавал и там многое уже написано. А так же есть множество подобных тем, где люди написали больше меня и вероятно для кого-то более полезно чем я. Это и не удивительно, ведь я программист на Pascal/Assembler, от которых сейчас многие открещиваются как только могут.

В этой статье я постараюсь затронуть тему для всех ЯП и в своём большинстве для начинающих программистов. Так как именно они зачастую будут стоять перед выбором: "с чего же начинать?"

ознакомиться

FPC/Lazarus и Android

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели21K

Всем привет, кто не знает меня зовут Сергей! И в очередной статье я задену разработку на Object Pascal.

В настоящее время и Delphi и FPC/Lazarus (FPC - free pascal compiler, Lazarus - IDE) поддерживают сборку под разные платформы.

В данной статье ознакомлю вас с возможностями разработки Android-приложений средствами FPC/Lazarus, в том числе и игр. И так же немного добавлю информации по Delphi, чтоб проще было искать нужную вам информацию, если вы используете данную среду разработки, но по самой разработке в Delphi не смогу вам ни чего дать на данный момент.

интересно

Object Pascal в 2024-м

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели19K

Всем привет! Меня зовут Сергей!

В данной статье речь будет идти больше о FPC/Lazarus, но так же многое, вероятно, можно будет отнести и к Delphi. Это будет что-то вроде обзора возможностей Lazarus вперемешку с начальными уроками. Многого я тут не раскрою (по моему мнению) и надеюсь читатель не будет надеяться что я смогу полностью раскрыть все секреты программирования (не надо, не надо меня за эти слова бить) в одной статье. Я надеюсь что данная статья поможет новичкам, а так же даст некоторую информацию не совсем новичкам.

В течении всей статьи я буду ссылаться на видеоролики, дабы упростить создание статьи. Было бы наверно лучше делать скриншоты и прикладывать их, но на это уйдёт намного больше времени, чем на подготовку видеороликов (учитывая что часть видеороликов уже готовы) и текст статьи вырастет в несколько раз.

перейти к статье

Разработка видеокарты своими мозгами. Символьный вывод

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели8.7K

Всем привет! С вами Ш. Сергей и я продолжаю разрабатывать видеоадаптер. В прошлой статье я рассказывал о возможности создания одного из простейших видеоадаптеров.

В этой статье будет задета возможность вывода символов на наш виртуальный монитор.

Использовать будем Logisim Evolution 3.8.0.

продолжить чтение

Создание видеоадаптера своими мозгами

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели7.3K

Меня всегда интересовало, как же реализуются видеоадаптеры и искал примеры как их можно реализовать. Я много занимаюсь разной разработкой, в основном программированием, но периодически вспоминаю радиотехнику/схемотехнику. И, исходя из опыта программирования и не только я вспомнил об одной достаточно важной вещи: если хочешь что‑то реализовать, начни с самого простого и потом дорабатывай полученный результат. Таким образом можно будет понять, что же мы всё‑таки хотим сделать и правильным ли путём идём?

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

Для понимания. Создание видеокарты/видеоадаптера не просто и не сложно. Надо понять что вы хотите, что будет делать ваша видеокарта.

Читать далее

Ассемблер: x86/x86_64/Arm32/Arm64

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели18K

Я достаточно давно решил ознакомится с ассемблером архитектуры Arm. По большей части для ознакомления и понимания внутренних процессов архитектуры. Чем больше я изучал литературу и различные источники, тем больше я понимал, что нужна практика. Я решил вспомнить ассемблер для x86-х машин и заодно потренироваться на архитектуре Arm.

Но как всегда для практики надо быть подготовленным, а как оказалось, я был не подготовлен...

Читать далее

И вновь KolibriOS! И вновь ассемблер!.

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели6.2K

В прошлой статье, я решил потестировать ассемблер на данной ОС. Но я ни когда не ищу лёгких путей и потому решил окунуться в мир KolibriOS и программировать используя только данную ОС. Всё что я смог выяснить, это то что давно когда-то что-то делали и на данный момент, увы, многое забросили...

Но далеко не всё так плохо как кажется! В KolibriOS есть готовый редактор кода с подсветкой CEdit, и он поддерживает подсветку для нескольких языков программирования. Но я не уверен что он умеет компилировать под все эти языки. Но как минимум текст набрать можно. Fasm поддерживается полностью и собирать/запускать/отлаживать приложения можно "используя" данный редактор (не совсем, редактор запускает отдельно компилятор и так же запускает отдельно отладчик), что и позволяет полноценно разрабатывать программы.

Я бы хотел сразу предупредить, практически ни какого обучения в статье не будет. Всё рассчитано на то, что вы уже хотя бы немного знаете ассемблер x86 и уже создавали простые программы под данную архитектуру (под Windows, Dos, Linux, а так может и MacOS).

Читать далее

KolibriOS: пробуем ассемблер

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели13K

Решил потренироваться на ассемблере под x86 и выбор мой пал на KolibryOS. Ведь как-никак это ОС была написана на ассемблере и для использования ассемблера. И я хотел именно из самой KolibriOS писать код. Но... Наверное, зря я это всё затеял.

Как оказалось, примеров кода не мало и не много. А так как я привык к Dos, Windows или Linux, то и ожидал что-нибудь в этом роде. Код, код и ещё раз код. Макросы не так часто встречаются. Ну и уж точно не весь код из одних макросов (утрирую).

Пример кода из «официального источника» вносит больше сумятицы, чем понимания, что происходит в данном коде. И... там нет никакого объяснения этим «буквенным значениям». Есть только то, что ссылаются на файл «macros.inc». Если просматривать источники интернета, то где‑то более понятно написано и даже рассказывают, что взять «macros.inc» (и многие другие файлы можно на SVN KolibriOS и, как оказалось, ещё можно на GitHub (дублируется?).

Покопавшись в файле «macros.inc», а так же на просторах интернета и найдя пример (смотрите код Fasm), я понял, что всё становится на свои места и более‑менее проясняется.

Читать далее

Информация

В рейтинге
5 986-й
Откуда
Россия
Зарегистрирован
Активность

Специализация

Разработчик игр, Разработчик приложений
Средний
Pascal
Lazarus
Assembler
Разработка под Android
Linux
Mac
Qemu
Разработка игр
Схемотехника
Разработка электроники