Вход

Просмотр полной версии : Символы псевдографики



yevrowl
07.09.2025, 20:21
Прошу подсказать, каким образом можно печать символы псевдографики (столбец 8_ (https://en.wikipedia.org/wiki/ZX_Spectrum_character_set))?

Ищу способ перекодировать из CP437 (https://ru.wikipedia.org/wiki/CP437) (PC/MSX) в ASCII-1967 (ZX) вот эти рисунки:

82753

Andrew771
07.09.2025, 21:20
вот здесь подробно описано: https://zxpress.ru/book_articles.php?id=1157
ключевое слово - UDG

yevrowl
07.09.2025, 22:35
Andrew771, спасибо, однако заметил, что символы псевдографики, которые имеются в примере — уже есть в Spectrum Character Set (https://en.wikipedia.org/wiki/ZX_Spectrum_character_set). Возможно, получится перекодировать текстовый исходник?

Bedazzle
08.09.2025, 01:44
Возможно, получится перекодировать текстовый исходник?

82756

тапка кривенькая, но загружается и работает :)

https://i.imgur.com/YkUWyUJ.png

Yuri80
12.09.2025, 22:34
Прошу подсказать, каким образом можно печать символы псевдографики (столбец 8_ (https://en.wikipedia.org/wiki/ZX_Spectrum_character_set))?

Не совсем понял суть вопроса.
Символы псевдографики с числовых клавиш рисуются индивидуально в кусок области MEMBOT по адресу 23698-23705 (8 байт). После генерации, оттуда и происходит вывод на экран, после чего это добро стирается. Сама программа рисунка всех этих квадратиков универсальная и расположена по адресам 2872-2897.
В книге я это подробно рассматривал на стр. 248-249.

yevrowl
22.09.2025, 04:17
Не совсем понял суть вопроса.

BasinC (https://arda.kisafilm.org/blog/?page_id=848) и ZX-Editor (https://worldofspectrum.net/zx-modules/46/index.html) сохраняют используемые в игре Brain Teaser (https://zx-pk.ru/threads/36358-brain-teaser.html) символы псевдографики в виде трёх-байтовой последовательности. К сожалению, при компиляции с помощью Bas2Tap (https://zx-pk.ru/threads/23500-bin2tap-novaya-utilita-dlya-perevoda-binarnykh-fajlov-v-obrazy-lenty-*-tap.html?p=1218627&viewfull=1#post1218627) обратной сборки символов не происходит. Зато при экспорте в виде образа кассетной ленты в коде tap-файла видно, что один символ псевдографики соответствует одно-байтовому значению.

yevrowl
04.10.2025, 12:16
загружается и работает :)

Спасибо за помощь, есть и результат — https://zx-pk.ru/threads/36358-brain-teaser.html

А можно ли и для вот этой заготовки псевдографики?

82894

yevrowl
04.10.2025, 20:13
Обновил исходник на соответствующие символьному набору ZX Spectrum:

82898

Reobne
04.10.2025, 21:23
zxboxes.7z
Не знаю, поможет или нет, но вот программка на эту тему:
10,20 - вспомогательные функции
30,40 - делаем палочную псевдографику в UGD символах.
50 - делаем строку s$, с тремя строками экрана
60 - печатаем в семь рядов

- - - Добавлено - - -

Я вообще ВАСИНС-ами не пользуюсь. Пишу прямо в эмуляторе. Как будто на реальном Спектруме.

yevrowl
04.10.2025, 22:38
Не знаю, поможет или нет, но вот программка на эту тему
Спасибо за программу и отдельно за комментарии к коду.


60 - печатаем в семь рядов
Где найти № рядов, в которых печатаются ячейки? Если потребуется напечатать почти в самом верху (со 2-го ряда).


Пишу прямо в эмуляторе. Как будто на реальном Спектруме.
Когда в начале 1990-х в Киеве попробовал, кажется на «Икар-64», клепать что-то примитивное, то даже GW-Basic показался куда удобней. =)
Если бы не BasinC в связке с EmuZWin, то наверняка бы даже не подступился. =)

Bedazzle
05.10.2025, 00:24
Обновил исходник

82902

Reobne
05.10.2025, 18:03
Где найти № рядов, в которых печатаются ячейки?
Печатать по координатам можно с помощью PRINT AT y,x
Для примера написал его в 120-й строке.