К основному контенту

Сообщения

Показаны сообщения с ярлыком "code"

Драйвер для мышки для любого разрешения

        Драйвер для мышки для любого разрешения (спасибо Сергею Смирнову). Ни для кого не секрет, старый дрова которые можно найти в интернете рассчитаны на разрешение 256х192. Под ts-config их необходимо допиливать. Допилятор ниже.  driver:     ld a,(lastv);    опрашиваем координату X     ld e,a     ld bc,#fbdf     in a,(c)     ld (lastv),a     sub e     ld e,a     add a,a     sbc a,a     ld d,a     ld hl,(mcoordx)     add hl,de     ld (mcoordx),hl      ld a,(lastv2);    опрашиваем координату Y     ld e,a     ld bc,#ffdf     in a,(c)     ld (lastv2),a     sub e     ld e,a     add a,a     sbc a,a     ld d,a     ld hl,(mcoordy)     add hl,de     ld (mcoordy),hl     ret...

Full Kempston joy for Evo

  Однокнопочный джойстик для ZXSPECTRUM морально устарел, очень советую всем любителям ZXEvo, установить версию прошивки с поддержкой full kempston joy. В этом случае вы получите джойстик сеговского формата: крестовина, кнопка start + кнопки ABC. На данный момент испробовать его можно в такой игре как: Delta Shadow или в демке Street Fighter . Также мы будем его поддерживать в будущих играх.  Скачать три прошивки в архиве:  pmc-wagner.su/fw_kempston.rar 1.zxevo_fw.bin  файл для base conf 2.zxevo_fw_vdac.bin  для ts conf 3.zxevo_fw_vdac2.bin для tsconf с поддержкой VDAC2 Программируем джойстик:  Пример:       in a,(1f)                          bit 1,a                          jp nz,left Значение битов:    bit 0 = right, bit 1=left, bit2=down, bit 3=up         ...

Печать спрайта в TS CONF 256 color

  TS-CONF по умолчанию имеет аппаратные спрайты и тайлы которые используют 16 цветов, однако это не значит, что нет возможности использовать спрайты в 256 цветов. Для того, чтобы вывести такой спрайт, нужно воспользоватся DMA в режиме BLT1. В этом режиме перекидываются любые данные если они не равны нулю. Рисуем спрайты любыми цветами, но нулевой цвет оставляем для фона который нужно будет вырезать. Как всегда процедура и спрайты для теста тут: SPR.TRD Ниже привожу пример процедуры:             ORG       30000              LD            HL,0; X COORDINATE            LD            BC,0; Y COORDINATE             LD            (XX),BC LD     ...

Печать текста на ZX EVOLUTION

Печать текста на ZX - EVO при помощи DMA . Процедуру качать тут . Запускаем в XAS на железе и тестируем. Процедура использует 16 цветов при разрешении 320х240 Вызывается процедура так:              ld hl , mytext ; собственно тут наш текст                      ld ( textw ), hl ; сохраняем адрес текста в буфер                      ld d ,# c 0; адрес нашего шрифта                       ld e ,#10; адрес начала видеопамяти. Я использую #10                      ld bc ,00; координата X                 ...

ZX EVO: Вывод тайлов

    Печатать тайлы просто. Готовая программа с комментариями в XAS'm как всегда лежит тут.     CREAT             LD BC,PAGE3; переключаем страницу памяти                         LD A,#08                         OUT (C),A                           LD HL,49152; в адрес 49152 закидываем тестовый тайл                         LD A,2                         LD (HL),A ...

ZX EVO: Выводим графику средствами DMA

ZX EVO:  Выводим графику средствами DMA DMA (англ. direct memory access) кидает данные со скоростью 7мб/c.  Запустить исходник процедуры в XAS можно тут .  LTEXT "TSCONFI2" ; грузим данные портов  ORG 32768  LCODE "src" ; грузим нашу картинку  ORG 26000    LD BC,DMASADH ;  указываем откуда брать нашу картинку, старший байт  LD A,#80  OUT (C),A  LD BC,DMASADL ;  указываем откуда брать нашу картинку, младший байт  LD A,#00  OUT (C),A  LD BC,DMASADX ;  с какой страницы памяти брать картинку  LD A,#02  OUT (C),A  LD BC,DMADADH ;  указываем куда отправляем нашу картинку, старший байт  LD A,#40  OUT (C),A  LD BC,DMADADL ;  указываем куда отправляем нашу картинку, младший байт  LD A,#00  OUT (C),A  LD BC,DMADADX ;  в какую страницу отправляем  LD A,#05  OUT (C),A  LD BC,DMALEN ; размер блока памяти который кидаем  LD A,#7F  OU...

ZXEVO: Вывод спрайта в TS-CONFIG

ZXEVO: Вывод спрайта в TS-CONFIG    Процедура вывода спрайта на ZXEVO под TSCONFIG адаптированная для отладчика XAS. Файл с портами  TSCONFI2  на диске  тут . Также на диске есть пример кода вывода спрайта SPRITE.XAS и тестовый ковер со спрайтами I.C                      LTEXT “TSCONFI2”;   подгружаем файл со списком портов                 ORG 26000 Sprite          LD   BC , SGPAGE ;   страница памяти где находятся ваши спрайты                  LD   A ,# C 0                  OUT  ( C ), A                ...