nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 27 Apr 2024 14:47



Reply to topic  [ 61 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next
Программное перемещение видеопамяти в РК-совместимых компах 
Author Message
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
Alikberov wrote:
shiny wrote:
Выбрал опцию цветов Акименко, в отладчике записал по адресу 76D0 два байта 85 41 - экран начал скроллиться. Непонятно.
Включите «антискролл»: Директивой M7FF2 впишите байтик F3 - для опытов хватит :idea:
Проще режим правильный выстаивить, чтобы атрибуты были пробелами :roll:

_________________
:dj: https://mastodon.social/@Shaos


26 Feb 2024 08:54
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
А я еще думаю, я скучно живу

_________________
uselessretro.blogspot.com


26 Feb 2024 09:31
Profile
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
Интересная программа. А что с эмулем творится 8)


Attachments:
psi.zip [620 Bytes]
Downloaded 17 times

_________________
uselessretro.blogspot.com
26 Feb 2024 10:12
Profile
Maniac
User avatar

Joined: 14 Oct 2019 18:10
Posts: 324
Location: Tashkent
Reply with quote
shiny wrote:
Интересная программа. А что с эмулем творится 8)
Тут корректная версия.


26 Feb 2024 10:35
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
нашел пример использования ДМА. Теперь для Emu80 адрес экрана $0035.


Attachments:
pikachu_4.zip [1.29 KiB]
Downloaded 19 times

_________________
uselessretro.blogspot.com
26 Feb 2024 21:49
Profile
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
Ну в первом сообщении этого топика по сути тот же код = любые числа можно ставить вместо 76H и 0D0H

Тут правда ещё символы в 4 пиксела в высоту устанавливаются, что для РК86 бессмысленно т.к. если рисовать псевдографикой, то уж лучше во весь рост рисовать - 8 пикселов в высоту. Ну либо рисовать верхушками других символов...

_________________
:dj: https://mastodon.social/@Shaos


26 Feb 2024 23:22
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
А, я сразу не понял, что это ДМА.

_________________
uselessretro.blogspot.com


26 Feb 2024 23:52
Profile
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
shiny wrote:
А, я сразу не понял, что это ДМА.

ВТ57 = ПДП = DMA

_________________
:dj: https://mastodon.social/@Shaos


27 Feb 2024 00:00
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
Набрал простой код заполнения экраном
Code:
;tasm -85 -b gfx.asm gfx.bin -l
;bin2tape -t rkr gfx.bin gfx.rkr

   .ORG 0
   .NOLIST
SA      .EQU $76D0
CN   .EQU 74+2
 lxi h,$76d0
 mvi d,25+5
ylp:
 mvi b,CN
 mvi a,48
xlp:
 mov m,a
 inx h
 inr a
 cpi 58
  jnz nolp
 mvi a,48
nolp:
 dcr b
  jnz xlp
 push d
 lxi d,78-CN
 dad d
 pop d
 dcr d
  jnz ylp
 JP $
.END

Получается, что справа граница не задана? Или монитор не выставляет нужное разрешение 78х30?


Attachments:
2024-02-27,10_50_23.png
2024-02-27,10_50_23.png [ 49.2 KiB | Viewed 893 times ]

_________________
uselessretro.blogspot.com
27 Feb 2024 01:00
Profile
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
А почему CN .EQU 74+2? Вот наверное поэтому оно и печатает только 76 символов в строку

P.S. Сделал 74+4 и получил все 78 :mrgreen:

Attachment:
Screenshot from 2024-02-27 00-09-29.png
Screenshot from 2024-02-27 00-09-29.png [ 48.97 KiB | Viewed 889 times ]


P.P.S. Только на реале это работать не будет - синхронизация ТВ сорвётся т.к. по краям экрана должно быть "гашение"...

_________________
:dj: https://mastodon.social/@Shaos


27 Feb 2024 01:14
Profile WWW
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
Shaos wrote:
А почему CN .EQU 74+2? Вот наверное поэтому оно и печатает только 76 символов в строку


Почему-то стало вылезать на следующую строку. Если изменить счетчик D, то внизу вылезает лишняя цифра.

_________________
uselessretro.blogspot.com


27 Feb 2024 01:37
Profile
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
ох, сейчас все норм, работает. Похоже, фаза Луны не та(:

_________________
uselessretro.blogspot.com


27 Feb 2024 05:22
Profile
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
Засада(скрин)
Взял пример winxru, синхра улетела


Attachments:
gfx.zip [377 Bytes]
Downloaded 15 times
2024-02-27,16_30_36.png
2024-02-27,16_30_36.png [ 37.99 KiB | Viewed 838 times ]

_________________
uselessretro.blogspot.com
27 Feb 2024 06:46
Profile
Senior
User avatar

Joined: 14 Oct 2023 06:59
Posts: 139
Reply with quote
Заработало, но с адресом $4000. Меняю код на $76D0, изображения нет.
Code:
set_crt3:
P_VG75:  mvi      A,0                     ; команда формат экрана
        sta 0C001H
        mvi      A,4DH                   ; 77 --> т.е 78 колонок
        sta 0C000H
        mvi      A,25H                   ; 37+1 строк (т.е всего 39 строк)
        sta 0C000H
        mvi      A,77H                   ; 8 линий в знакоместе, 8 подчёркив-е
        sta 0C000H
        mvi      A,53H                   ; 0101.0011
        sta 0C000H
        mvi      A,27H                   ; команда начало отображения
        sta 0C001H

        lda 0C001H; это чтобы очистить бит прерывания
WAIT:    lda 0C001H
        ani     20H                     ; ждём бит запроса на прерывание по VRTC
              jz WAIT

        mvi      A,80H
        sta 0E008H; E000 - адрес ПДП ВТ57
        mvi      A,0
        sta 0E004H; начальный адрес экрана 4000H
        mvi      A,40H
        sta 0E004H
        mvi      A,93H                   ; режим
        sta 0E005H
        mvi      A,4BH                   ; число байтов
        sta 0E005H
        mvi      A,0A4H
        sta 0E008H
        RET


_________________
uselessretro.blogspot.com


27 Feb 2024 07:32
Profile
Online
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22606
Location: Silicon Valley
Reply with quote
Экран большой получается (т.к. "всего 39 строк")

Если уталкивать в старые адреса больше строк (например без чёрных полос между), то надо укорачивать строки ставя #F1 справа от видимой части экрана - я примеры от vinxru на первой странице топика приводил и пробовал подправлять

_________________
:dj: https://mastodon.social/@Shaos


27 Feb 2024 10:05
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 61 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next

Who is online

Users browsing this forum: Ketsch, Shaos and 61 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.