User Tag List

Показано с 1 по 10 из 83

Тема: BASIC на Корвете

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    12.05.2018
    Адрес
    с. Телешовка, Киевская обл., Украина
    Сообщений
    33
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    13
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Serebriakov Посмотреть сообщение
    Сообщение от ivagor:

    В Бейсике 1.1 можно использовать POKE (в 2.0 они тоже сработают)
    POKE&HFB3A,PEEK(&HFB3A)AND251 - основной знакогенератор
    POKE&HFB3A,PEEK(&HFB3A)OR4 - альтернативный знакогенератор

    Этим способом получилось. Очень интересно, как вы его нашли? Как нашли адрес в памяти и почему к нему применяются именно эти логические операции? Они накладывают какую-то определенную битовую маску? Действительно очень интересно.
    В документации ч*рт ногу сломит... Даташиты писать не умели..
    Код:
    ;    Системный регистр вместе с регистром цвета и
    ; цветовой таблицей (см. ниже) располагается в стра-
    ; нице, начальное смещение которой определяется па-
    ; раметром RGBASE, способным принимать одно из 4
    ; значений:
    
    RGBASE1 EQU      3A00H  ; в TRS80 и ROMB2
    RGBASE2 EQU     0FA00H  ; в ROMB1, ODOSA, NDOS и BASIC
    RGBASE3 EQU     0FF00H  ; в DOSA и DOSG1
    RGBASE4 EQU     0BF00H  ; в BASG
    
    SYSREG  EQU     7FH     ; Относительный адрес
                            ; системного регистра
    Ок, понятно, - регистры

    Код:
    ; Адреса остальных регистров, представляющих собой
    ; порты периферийных БИС, сведены в одну страницу,
    ; начальный адрес которой PBASE может принимать одно
    ; из 3 значений:
    
    PBASE1  EQU      3B00H  ; в TRS80 и ROMB2
    PBASE2  EQU     0FB00H  ; в ROMB1, ODOSA, NDOS и BASIC
    PBASE3  EQU     0FE00H  ; в DOSA и DOSG1
    Тоже понятно, - порты

    Код:
            ; КОНТРОЛЛЕР ОТОБРАЖЕНИЯ АЛФАВИТНО-ЦИФРОВОЙ ИНФОРМАЦИИ
    .....................................................
    VIBASE1 EQU      3C00H  ; Начальный адрес АЦЗУ в конфигурациях
                            ; TRS80 и ROMB2
    VIBASE2 EQU     0FC00H  ; Начальный адрес АЦЗУ в конфигурациях
                            ; ROMB1, ODOSA, NDOS и BASIC
    Тоже понятно..

    А это как понимать???
    Код:
    VIREG   EQU     3AH  ; Относительный адрес регистра управления
                         ; отображением
    VISTS   EQU     38H  ; Относительный адрес регистра состояния
                         ; атрибута видеоинверсии
    Почему описаны как регистры? Они же в 0FB00H.

    Код:
    ; Константы для работы с регистрами
    
    ATRMSK  EQU     8  ; Маска атрибута видеоинверсии
    VBLMSK  EQU     2  ; Маска кадрового гасящего импульса
    
    FONT1   EQU     4       ; Выбор альтернативного набора
                            ; символов в знакогенераторе
    LARGE   EQU     8       ; Режим отображения расширенных
                            ; символов (32 символа в строке)
    ATRSET  EQU     10H     ; Установка бита атрибута
    ATRRES  EQU     20H     ; Сброс бита атрибута
    ATRFRE  EQU     30H     ; Сохранение состояния атрибута
                            ; и условие чтения атрибута
    Свалили в кучу...

    Код:
    ; Константы для работы с регистрами
    
    ATRMSK  EQU     8  ; Маска атрибута видеоинверсии
    VBLMSK  EQU     2  ; Маска кадрового гасящего импульса
    ATRSET  EQU     10H     ; Установка бита атрибута
    ATRRES  EQU     20H     ; Сброс бита атрибута
    ATRFRE  EQU     30H     ; Сохранение состояния атрибута
                            ; и условие чтения атрибута
    Это биты VISTS EQU 38H

    Код:
    FONT1   EQU     4       ; Выбор альтернативного набора
                            ; символов в знакогенераторе
    LARGE   EQU     8       ; Режим отображения расширенных
                            ; символов (32 символа в строке)
    А это биты VIREG EQU 3AH

    Дальше
    Код:
            ; КОНТРОЛЛЕР ОТОБРАЖЕНИЯ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ
    ..................................
    PAGREG  EQU     VIREG   ; Адрес регистра выбора страниц
    
    VPAGE0  EQU  00000000B  ; Выбор 0 страницы отображения
    VPAGE1  EQU  00000001B  ; Выбор 1 страницы отображения
    VPAGE2  EQU  00000010B  ; Выбор 2 страницы отображения
    VPAGE3  EQU  00000011B  ; Выбор 3 страницы отображения
    
    RWPAG0  EQU  00000000B  ; Выбор 0 страницы чтения/записи
    RWPAG1  EQU  01000000B  ; Выбор 1 страницы чтения/записи
    RWPAG2  EQU  10000000B  ; Выбор 2 страницы чтения/записи
    RWPAG3  EQU  11000000B  ; Выбор 3 страницы чтения/записи
    О, АЦЗУ и ГЗУ конфигурится одним портом (PAGREG EQU VIREG)

    Код:
    LUT     EQU     0FBH    ; Адрес таблицы присвоения цветов
                            ; (относительный)
    
    ;  При записи в LUT биты D0...D3 задают номер одной из 16
    ; строк таблицы, а D4...D7 - содержимое этой строки.
    ; D3 соответствует АЦЗУ, D2 - слою ГЗУ #2, D1 - слою #1,
    ; D0 - слою #0;  D7 задает интенсивность (яркость),
    ; D6 - наличие красного цвета, D5 - зеленого цвета, D4 -
    ; синего цвета.
    С этим разобрались.. более-менее.
    Последний раз редактировалось AlexS58; 09.04.2025 в 13:48.

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

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

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

Похожие темы

  1. 128 basic
    от sevol в разделе Для начинающих
    Ответов: 149
    Последнее: 08.02.2025, 05:10
  2. Ответов: 33
    Последнее: 05.12.2018, 09:00
  3. Дизассемблер BASIC-48
    от Prusak в разделе Пресса
    Ответов: 4
    Последнее: 22.06.2010, 22:52
  4. Программы на BASIC
    от form в разделе ДВК, УКНЦ
    Ответов: 14
    Последнее: 17.04.2010, 15:41
  5. Софт от MSX на Корвете
    от AlexFantasy в разделе MSX
    Ответов: 4
    Последнее: 09.07.2008, 21:07

Ваши права

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