Image

Программу для просмотра любого файла из букв

SplView
SplView

Добро пожаловать в SplView — программу для просмотра любого файла так, как если бы он состоял из букв (хотя на самом деле любой файл состоит только из чисел).
SplView каждое число в файле понимает как порядковый номер буквы в алфавите и изображает на экране вместо числа — букву, стоящую в алфавите под этим номером.
Получившийся из букв текст можно пролистывать колесиком мыши, стрелочными клавишами, клавишами Page Up, Page Down, Home и End.
Выйти из программы можно правой кнопкой мыши или клавишей Esc.
Выбрать файл для просмотра можно левой кнопкой мыши или клавишей F3.
Примечание 1: алфавит используется вот этот, в нём ровно 256 букв.
Примечание 2: этот алфавит можно сменить на другой (а потом обратно) с помощью клавиши F8.

Вот такой файл. Я сделал еще ДО инсульта!

Конечно это asm! «Программы для Windows я пишу на языке Flat Assembler. Выбор именно этой среды разработки совсем необычен, но так уж сложилось.»

Наиболее интересное вот это:

proc ThrProcV, paramx
align 16
splagain:
invoke WaitForSingleObject,[chndl],-1
xor ecx,ecx
mov [tete],ecx
mov ebx,[diwi] ;сколько букв в строке на экране
again: ;цикл прорисовки одной буковки на экране
mov esi,splt ;адрес начала текста — массива с кодами букв
mov eax,[tete] ;переменная, содержащая номер буквы по порядку в тексте
add esi,eax ;уже адрес конкретной буквы в тексте
div bl ;номер буквы делим на длину строки в буквах
mov ecx,[dihe] ;число строк на экране
dec ecx ;последняя (верхняя) строка (нумерация с нуля)
sub cl,al ;вычитаем, получаем номер строки, где рисовать букву
shr ax,8 ;теперь в ax номер столбца, где рисовать букву
mov dx,6 ;ширина изображения буквы в байтах
mul dx ;умножаем на ширину, получаем смещение в байтах от левого края
xchg ecx,eax ;теперь в cx находится байтов от левого края, а в al — номер строки
mul ebx ;номер строки умножаем на число букв в строке
shl eax,5 ;и потом еще на 32 — высоту изображения буквы в байтах
mov edx,6 ;ширина изображения буквы в байтах
mul edx ;и еще умножаем на ширину
mov edi,[tut] ;адрес начала картинки в памяти
add edi,eax ;прибавить байтов в полных строках
add edi,ecx ;прибавить байтов от левого края, получили место для рисования
xor eax,eax ;пишем в аккумулятор НОЛЬ
lodsb ;читаем код буквы
mov ecx,eax ;пока что сохраняем код сюда
and al,0Fh ;остаток от деления на 16 — номер колонки в массиве картинок букв
mov dl,6 ;ширина буквы в байтах
mul dl ;умножаем, получаем байтов от левого края
xchg ecx,eax ;теперь в ecx байтов слева, а в eax код буквы
shr al,4 ;частное от деления на 16 букв в строке — номер строки
mov ah,15 ;15 — последняя (верхняя) строка (нумерация с нуля)
sub ah,al ;вычитаем, получаем номер строки, где рисунок буквы
xor al,al ;очищаем младший байт
shl eax,1 ;умножили на 16 букв в строке и на 32 байта высоту буквы
mov edx,6 ;ширина изображения буквы в байтах
mul edx ;и еще умножаем на ширину
mov esi,[buu] ;адрес начала массива картинок букв в памяти
add esi,eax ;прибавить байтов в полных строках
add esi,ecx ;прибавить байтов от левого края, получили адрес картинки буквы
mov ecx,32 ;32 байта высота буквы
onebu: ;цикл рисования одной буквы
movsd ;4 байта перенести
movsw ;и еще 2 байта перенести
add esi,90 ;в массиве картинок букв пропускаем 15 x 6 байт
add edi,[dopa] ;в массиве готовой картинки пропускаем ((букв в строке) — 1) x 6 байт
loop onebu ;следующую строчку буквы
inc [tete] ;увеличить номер буквы в тексте
mov eax,[tete]
cmp eax,[proi] ;сравнить с последней
jb again ;если меньше, то рисовать еще одну букву
invoke SendMessage,[hspl2],STM_SETIMAGE,IMAGE_BITMAP,[IBitmap]
jmp splagain
endp

Полный файл SplView.asm здесь:
https://disk.yandex.ru/d/3hehNgLSMddjfA
А download flat assembler тут:
https://flatassembler.net/download.php
Нужно только один файл FASM.EXE и нужно еще:
ANSI.bmp
https://disk.yandex.ru/i/nJQCfNAEher6aA
OEM.bmp
https://disk.yandex.ru/i/MU6q7uro4UJfrA

ANSI
ANSI
OEM
OEM

Пример программы вот:

Пример
Пример

Или вот:

Пример
Пример

Файл SplView очень маленький и очень быстрый. Позволяет любые файлы как из букв.

Потом случился инсульт. Это очень плохо. В начале я не говорил и не ходил! Прошло два с половиной года. Я говорю и хожу. С палочкой конечно и медленно но хожу. Многое забылось! Но что-то знаю…

https://vk.com/wall1435532_15730
Здесь больше. Обо мне. Маленький город Молодечно. Город в Минской области Беларуси. «Одна из причин почему мы с семьей и группой ездим регулярно в Беларусь» — это рассказывает Александр Старостин, основатель Theodor Bastard.

И вот что…
Мне вот интересная штука…
Смерть.
Когда человек умер. Я умер.
Но потом рождается другой. Другой я. Не тот. У вас есть яйцеклетка? Обычное дело…
Затем очень маленький ребенок! И растет… Пять лет… Шестнадцать лет…
А вот что интересно. ГДЕ? Где этот человек есть? Ты же конкретный человек!
Я — Фирюлин Артур. В Молодечно. Растил русский человек… А где потом??? Он тоже конкретный но кто???
И вот что я подумал… Ну вот может быть Африка, где 25 лет и все. Он может даже плохой. Нигер или Буркина-Фасо! Но это не имеет значение!
И ведь не только Земля! Бесчисленное планет с большими мозгами! Просто очень, очень далеко. Но рождается там. Это не проблема!
Мы считали минуты для рождения. А есть зептосекунда. Это одна триллионная миллиардной доли секунды. А можно и меньше. Просто где?
А тут просто — как умер так И ТУТ ЖЕ родился. А где — может и не Земля а очень далеко в миллиардов лет. Будет четыре ноги. Или восемь. Или глаз — не знаю сколько.
«Можно представить, что не «летит» куда-то со скоростью света, а проявляется в новой точке мгновенно, подобно тому как безотносительно расстояния» — а это сказало ИИ.
Но узнать, кто рождается — нельзя. Может ты Илон Маск, а может бездомный в трущобах. Может Тереза а может криминал. Может на Земле а может в миллиардов лет. Может в прекрасный город а может каменные инструменты. Может из двух ногах а может из четырех.

Извините я не от темы.

Если кто-то хочет деньги прислать, то 41001887222876 — это кошелек ЮMoney. Или карточка Беларусбанка 9112380113153706. У меня это есть и иногда маленькие деньги для кушать. Потому что у меня маленькая пенсия первой группы инвалидности. В Беларуси. 460 белорусских рублей в месяц. Это совсем не много. 100 рублей в месяц — свет интернет и коммунальное. Друг хорошей приносит продукты две большие сумки бесплатно два раза в месяц. Вот так.

А еще я купил плазменный шар Тесла! Я очень хотел! И вот наконец совершилось.

https://www.wildberries.by/catalog/112971265/detail.aspx
Вот его характеристики. И я купил. Отличная вещь!

Midjourney
https://www.midjourney.com/explore?tab=top
это чем я занимаюсь.
Я еще не умер!!!

Источник: habr.com

✅ Найденные теги: новости, Программу

ОСТАВЬТЕ СВОЙ КОММЕНТАРИЙ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Каталог бесплатных опенсорс-решений, которые можно развернуть локально и забыть о подписках

галерея

Фото сгенерированных лиц: исследование показывает, что люди не могут отличить настоящие лица от сгенерированных
Нейросети построили капитализм за трое суток: 100 агентов Claude заперли…
Скетч: цифровой осьминог и виртуальный мир внутри компьютера с человечком.
Сцена с жестами пальцами, где один жест символизирует "VPN", а другой "KHP".
‼️Paramount купила Warner Bros. Discovery — сумма сделки составила безумные…
Скриншот репозитория GitHub "Claude Scientific Skills" AI для научных исследований.
Структура эффективного запроса Claude с элементами задачи, контекста и референса.
Эскиз и готовая веб-страница платформы для AI-дизайна в современном темном режиме.
ideipro logotyp
Image Not Found
Звёздное небо с галактиками и туманностями, космос, Вселенная, астрофотография.

Система оповещения обсерватории Рубина отправила 800 000 сигналов в первую ночь наблюдений.

Астрономы будут получать оповещения о небесных явлениях в течение нескольких минут после их обнаружения. Теренс О'Брайен, редактор раздела «Выходные». Публикации этого автора будут добавляться в вашу ежедневную рассылку по электронной почте и в ленту новостей на главной…

Мар 2, 2026
Женщина с длинными тёмными волосами в синем свете, нейтральный фон.

Расследование в отношении 61-фунтовой машины, которая «пожирает» пластик и выплевывает кирпичи.

Обзор компактного пресса для мягкого пластика Clear Drop — и что будет дальше. Шон Холлистер, старший редактор Публикации этого автора будут добавляться в вашу ежедневную рассылку по электронной почте и в ленту новостей на главной странице вашего…

Мар 2, 2026
Черный углеродное волокно с текстурой плетения, отражающий свет.

Материал будущего: как работает «бессмертный» композит

Учёные из Университета штата Северная Каролина представили композит нового поколения, способный самостоятельно восстанавливаться после серьёзных повреждений.  Речь идёт о модифицированном армированном волокном полимере (FRP), который не просто сохраняет прочность при малом весе, но и способен «залечивать» внутренние…

Мар 2, 2026
Круглый экран с изображением замка и горы, рядом электронная плата.

Круглый дисплей Waveshare для креативных проектов

Круглый 7-дюймовый сенсорный дисплей от Waveshare создан для разработчиков и дизайнеров, которым нужен нестандартный экран.  Это IPS-панель с разрешением 1 080×1 080 пикселей, поддержкой 10-точечного ёмкостного сенсора, оптической склейкой и защитным закалённым стеклом, выполненная в круглом форм-факторе.…

Мар 2, 2026

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых