Важная информация

User Tag List

Страница 2 из 5 ПерваяПервая 12345 ПоследняяПоследняя
Показано с 11 по 20 из 48

Тема: Оконный интерфейс для asm, может кто помнит?

  1. #11
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    224
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Нашел остатки исходников Multi-Format Disk Doctor. Удалось скомпилировать и запустить их с приведенными выше исходниками оконного интерфейса. Выкладываю недостающие исходные файлы и образ дискеты с компилированной программой. В этот раз использовал драйвер SPKEYB40, так что все функции будут работать и со стандартной клавиатурой. Также в архиве приводится подробная документация на оба драйвера клавиатуры и сам MFDD. Проект не завершен, но может пригодиться как исходник примера использования оконной библиотеки.

    В комплекте также идет драйвер диска (чтение/запись секторов).

    Компилировал под эмулятором CP/M Z80MU. Нужна модифицированная версия ассемблера M80 - её я ранее выкладывал в теме "ASC CP/M".

    Компиляция файлов проста. К примеру, нужно набрать "M =WIND" для компиляции wind.mac

    Для компоновки нужно набрать "L STARTUP,MFDD,SPKEYB40,EDZNAK[L8300[NR". Образуется файл "STARTUP.COM", который грузится с адреса 0x8300 и запускается из-под TR-DOS.
    Вложения Вложения
    • Тип файла: zip mfdd.zip (34.4 Кб, Просмотров: 60)

  2. #12
    Activist
    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    440
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    88
    Поблагодарили
    54 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Оконный интерфейс

    Послушайте, зайдите сюда https://zx-pk.ru/threads/29356-zx-turbo-assembler.html, скачайте ZX Turbo Assembler v2.5 лучше 2.6, файл a2.5_1 (a2.6_1) содержит все что вам нужно, вывод окна (без сохранения подложки), печать / вывод символа и/или строки, система MENU, система INPUT - ввод всякого, естественно опрос клавиатуры, пп. SCROLLи разные мелкие пп. необходимые для работы всего этого. И - Пользуйтесь.

    з.ы. Каким пользоваться ассемблер-компилятором дело личное, любая версия ZAsm`а (кроме 48к) импортирует файл в формат обычного текста.

  3. #13
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    224
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Имею вопрос к присутствующим кодерам, в особенности к ув. Lethargeek.

    Какие нынче в моде быстрые способы вывода текста с 42 символами в строке? Но не слишком большие по размеру кода. Хочу улучшить свою оконную библиотеку.

  4. #14
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    224
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    По просьбам телезрителей выкладываю полный комплект исходников XAS->TXT - еще один развитый пример использования моей оконной библиотеки. Здесь используются все функции, самая интересная из которых - Listbox. С ее помощью реализован выбор файла в каталоге дискеты. При этом работают клавиши Up, Down, PgUp (CS+SS+Q) и PgDn (CS+SS+A). Также используются функции ввода и редактирования текста, менюшки.

    В комплект входит:
    1) Оконный интерфейс, компоненты и драйверы, которые были описаны выше;
    2) Модуль TRFIL.MAC - функции файловой системы TR-DOS. Обращается к драйверу дисковода RADISK (или урезанному RADXAS). Набор функций очень ограничен, реализация так себе, но сойдет для небольших проектов, вроде этого.
    3) образ диска TR-DOS с компилированной и рабочей этой программой. На этот раз применен драйвер стандартной клавиатуры, а не "Орель-БК". Основные функции программы я проверить не смог, т.к. под моим эмулятором (FUSE) доступ к диску почему-то не работает. На реале работало всегда, на Unreal - тоже.

    Компиляция исходников - под CP/M. Для компоновки набрать "L STARTUP,XASCONV,SPKEYB40[L8300[NR"
    Вложения Вложения

  5. #15
    Member Аватар для asve79
    Регистрация
    13.11.2018
    Адрес
    г. Москва
    Сообщений
    47
    Записей в дневнике
    31
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Barmaley_m Посмотреть сообщение
    По просьбам телезрителей выкладываю полный комплект исходников XAS->TXT - еще один развитый пример использования моей оконной библиотеки. Здесь используются все функции, самая интересная из которых - Listbox. С ее помощью реализован выбор файла в каталоге дискеты. При этом работают клавиши Up, Down, PgUp (CS+SS+Q) и PgDn (CS+SS+A). Также используются функции ввода и редактирования текста, менюшки.
    Адаптировал под sjasmplus, выложил: https://github.com/asve79/xasconv
    Но пока есть косяк с кодировкой в кириллице. Не помню какая кодировка в спеке и как с ней было принято работать. Поэтому на месте кирилицы артефакты. )

    Ребят, если ткнете где почитать или так скажете про кодировку кириллицы, буду признателен.

  6. #16
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,804
    Спасибо Благодарностей отдано 
    253
    Спасибо Благодарностей получено 
    114
    Поблагодарили
    88 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от asve79 Посмотреть сообщение
    Ребят, если ткнете где почитать или так скажете про кодировку кириллицы, буду признателен.
    CP866 вроде как называется ("OEM - русская" - винды так пишут про неё)
    Во, из STORM вроде (0-255)
    Нажмите на изображение для увеличения. 

Название:	font866.jpg 
Просмотров:	147 
Размер:	24.9 Кб 
ID:	67390
    Последний раз редактировалось Destr; 20.12.2018 в 10:11.

  7. #16
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #17
    Banned
    Регистрация
    19.01.2017
    Адрес
    г. Арзамас
    Сообщений
    2,208
    Записей в дневнике
    40
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    47 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

  9. #18
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    224
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от asve79 Посмотреть сообщение
    Адаптировал под sjasmplus, выложил:
    Спасибо. По выложенному проекту имею следующие замечания:
    1) Использована неправильная русская кодировка. Это убило в коде все комментарии и сделало нечитаемыми русские литерные константы. Оригинальные файлы, как верно заметил Destr, были в т.н. "Альтернативной кодировке ГОСТа", также известной как CP866 и DOS-866.

    2) Я не рекомендую менять кодировку. CP866 хороша тем, что в ней есть рамочные символы (в Windows-1251 их нет). Также одной только подменой знакогенератора проблема не решается, т.к. нужно еще менять драйвер клавиатуры. Изменений много, а толку мало, теряются рамочные символы и псевдографика.

    3) Выложен файл SPKEYB.A80, но не выложен SPKEYB40.A80. Первый - это драйвер "Орелевской" клавиатуры, но она мало у кого есть. Было бы логичнее выложить либо оба файла, либо только SPKEYB40 - драйвер стандартной клавиатуры.
    Цитата Сообщение от asve79 Посмотреть сообщение
    Не помню какая кодировка в спеке и как с ней было принято работать.
    На спеке не было единого стандарта на кодировку кириллицы. Каждый делал как хочет. Было много случаев применения КОИ-7 или КОИ-8. Однако наиболее прогрессивные оси (IS-DOS и ASC CP/M) использовали именно CP866, еще и потому, что в те времена люди работали в основном под DOS, и там эта кодировка была наиболее распространенной.

    Кодировка Windows-1251 появилась позже (в Windows 95) с подачи фирмы Microsoft и представляет, на мой взгляд, шаг назад, так как в ней плохо с символами псевдографики. Наши ГОСТовцы до этого потрудились лучше. В конце концов, для себя делали.

    Большинство современных текстовых редакторов поддерживают выбор кодировки. Например, FAR под Windows или gedit под Линукс. Также можно импортировать исходники в CP866 и сохранить их в формате Unicode, если sjasm это поддерживает. Тогда не будет конфузов при открытии и редактировании исходников.
    Последний раз редактировалось Barmaley_m; 20.12.2018 в 14:56.

  10. #19
    Member Аватар для asve79
    Регистрация
    13.11.2018
    Адрес
    г. Москва
    Сообщений
    47
    Записей в дневнике
    31
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Barmaley_m Посмотреть сообщение
    Спасибо. По выложенному проекту имею следующие замечания:
    1) Использована неправильная русская кодировка. Это убило в коде все комментарии и сделало нечитаемыми русские литерные константы. Оригинальные файлы, как верно заметил Destr, были в т.н. "Альтернативной кодировке ГОСТа", также известной как CP866 и DOS-866.
    Исправляю по мере погружения. На тот момент небыло понимания в какой это кодировке, а ждать ответов не хотелось. )

    Цитата Сообщение от Barmaley_m Посмотреть сообщение
    2) Я не рекомендую менять кодировку. CP866 хороша тем, что в ней есть рамочные символы (в Windows-1251 их нет). Также одной только подменой знакогенератора проблема не решается, т.к. нужно еще менять драйвер клавиатуры. Изменений много, а толку мало, теряются рамочные символы и псевдографика.
    Посмотрим по мере эксплуатации. Я полагаю что многим удобней писать код вне спека. А тут либо 1251 либо UTF8.

    Цитата Сообщение от Barmaley_m Посмотреть сообщение
    3) Выложен файл SPKEYB.A80, но не выложен SPKEYB40.A80. Первый - это драйвер "Орелевской" клавиатуры, но она мало у кого есть. Было бы логичнее выложить либо оба файла, либо только SPKEYB40 - драйвер стандартной клавиатуры.
    Исправил. Выложил файл. Там вроде нет строки, о которой я справшивал про буку "ё". Пример переключил на sbkeyb40. Вроде работает. )

    А какая комбинация клавиш переключает рус/лат?

  11. #20
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    224
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от asve79 Посмотреть сообщение
    Посмотрим по мере эксплуатации. Я полагаю что многим удобней писать код вне спека. А тут либо 1251 либо UTF8.
    Да, нелёгкий выбор. Надо еще учитывать (в перспективе, если предполагается работа с текстовыми файлами на спеке), в какой кодировке записано большинство таких файлов. Я думаю, это будет CP866 (IS-DOS).

    Как вариант, можно отказаться от читаемых литерных констант и забивать русский текст в исходники в виде чисел с комментариями. Ну или, может быть, в sjasm есть какие-то опции перекодировки.
    Цитата Сообщение от asve79 Посмотреть сообщение
    Исправил. Выложил файл. Там вроде нет строки, о которой я справшивал про буку "ё".
    Да, там повезло: обработка регистра для буквы "ё" идет с помощью таблицы TBL_CG (строка 562).
    Цитата Сообщение от asve79 Посмотреть сообщение
    А какая комбинация клавиш переключает рус/лат?
    CapsShift-3.

    А вообще лучше почитай документацию AZKEYB.TXT (выкладывал в составе архива mfdd.zip выше). Драйвер клавиатуры сложный и имеет много функций.

Страница 2 из 5 ПерваяПервая 12345 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Кто помнит пленочную клавиатуру?
    от SaintTurnip в разделе Устройства ввода
    Ответов: 6
    Последнее: 05.02.2014, 09:17
  2. Аркадные автоматы. Кто чего помнит
    от KiN0 в разделе Зарубежные компьютеры
    Ответов: 9
    Последнее: 31.05.2012, 00:53
  3. Оконный интерфейс для БК0011
    от vinxru в разделе БК-0010/0011
    Ответов: 43
    Последнее: 17.03.2012, 19:33
  4. Ответов: 6
    Последнее: 28.08.2008, 21:34

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •