Page 5 of 20

Re: TS-Conf F.A.Q.

PostPosted: Thu, 05.12.2013 21:43:33
by TS-Labs
Да.

Re: TS-Conf F.A.Q.

PostPosted: Fri, 06.12.2013 11:05:24
by g0blinish
кстати, нашод палитры:
Code: Select all
;PalSel = %хх00хххх // выбор палитры 0 для тайлов 0
PalSel          EQU   #07AF
 ld bc,PalSel
 ld a,%00000000
 out (c),a


непонятно, на что влияют xx и xxxx?

Re: TS-Conf F.A.Q.

PostPosted: Fri, 06.12.2013 11:16:19
by TS-Labs
А что в экселе про них написано?

Re: TS-Conf F.A.Q.

PostPosted: Fri, 06.12.2013 11:34:06
by TS-Labs
PalSel - это вроде как адрес порта, а %хх00хххх - значение. Это я так написал?..

Re: TS-Conf F.A.Q.

PostPosted: Fri, 06.12.2013 12:12:07
by g0blinish
TS-Labs wrote:PalSel - это вроде как адрес порта, а %хх00хххх - значение. Это я так написал?..

именно
TS-Labs wrote:А что в экселе про них написано?

то, что нельзя скопипастить
PalSel | T1PAL[7:6] | | T0PAL[7:6] | | GPAL[7:4] | | | | Palette selection for 4 bit modes

Re: TS-Conf F.A.Q.

PostPosted: Fri, 06.12.2013 14:53:18
by TS-Labs
Пытаемся сложить мозаику:
1. Все 16-цветные режимы имеют селекторы палитр.
2. Все селекторы палитр являются 4-битными.
3. Адрес ЦРАМ 8-битный и состоит (слева направо) из 4-х бит селектора и 4-х бит пикселя.
4. Где взять биты селекторов?
- для графики: GPAL
- для тайлов: TхPAL
- для спрайтов: SPAL
5. Где лежат эти хПАЛы?
- GPAL в битах 3:0 регистра PalSel.
- T0PAL в битах 5:4 регистра PalSel (старшие 2 бита) и в битах 13:12 дескриптора тайла (младшие 2 бита).
- T1PAL в битах 7:6 регистра PalSel (старшие 2 бита) и в битах 13:12 дескриптора тайла (младшие 2 бита).
- SPAL в битах 47:44 дескриптора спрайта.
6. Где лежат дескрипторы тайлов? В тайлмапе.
7. Где лежат дескрипторы спрайтов? В SFILE.

Re: TS-Conf F.A.Q.

PostPosted: Sat, 07.12.2013 07:39:10
by g0blinish
И как правильно отсчитать адрес?
Code: Select all
PalSel          EQU   #07AF
PLANE0_PALETTE   equ 13         ; palettes select which 16 colors part of CRAM is used for current plane, where 0 is colors 0..15, and 15 is colors 240-255
PLANE1_PALETTE   equ 14         ; for 256c mode the whole CRAM is used, so this definition will be ignored
PLANE2_PALETTE   equ 15

 ld bc,PalSel
 ld a,PLANE0_PALETTE | ((PLANE1_PALETTE & $0C) << 2) | ((PLANE2_PALETTE & $0C) << 4)
 out (c),a

Re: TS-Conf F.A.Q.

PostPosted: Sat, 07.12.2013 10:21:49
by Sergey78
Адрес чего?

Re: TS-Conf F.A.Q.

PostPosted: Sat, 07.12.2013 10:36:21
by g0blinish
Sergey78 wrote:Адрес чего?

палитры же

Re: TS-Conf F.A.Q.

PostPosted: Sat, 07.12.2013 10:47:52
by Sergey78
Если ты про это:
Code: Select all
PLANE0_PALETTE   equ 13

то PLANE0_PALETTE * 32 - смещение относительно начала палитры.

Re: TS-Conf F.A.Q.

PostPosted: Sat, 07.12.2013 11:31:15
by g0blinish
Sergey78 wrote:то PLANE0_PALETTE * 32 - смещение относительно начала палитры.


выходит 13*32=$1A0
у меня почему-то выходят цвета палитры для тайлов при записи в $180.
нихера не понимаю.


делал по образцу:https://forum.tslabs.info/viewtopic.php?f=28&t=356&p=8153#p8153

код вряд ли имеет смысл светить..

Re: TS-Conf F.A.Q.

PostPosted: Sat, 07.12.2013 11:57:27
by Sergey78
На экране одновременно могут быть тайлы с 4-я палитрами. Если в PALSEL для тайловой плоскости записать 11b, то у тайлов на экране могут быть палитры 12 (1100) - адрес $180, 13 (1101) - адрес $1a0, 14 (1110) - адрес $1c0, 15 (1111) - адрес $1e0. Младшие 2 бита задаются в описателе конкретного тайла (биты 12,13).

Re: TS-Conf F.A.Q.

PostPosted: Sat, 07.12.2013 12:23:11
by g0blinish
чорд, неправильно пощитал. спасибо.

Re: TS-Conf F.A.Q.

PostPosted: Sun, 08.12.2013 07:59:35
by g0blinish
с палитрой хрень получилась, хоть мне и говорили, что палитра для тайлов отличается от палитры видеорежима.
задно неясно с T1page и с адресацией.

Re: TS-Conf F.A.Q.

PostPosted: Wed, 11.12.2013 21:07:58
by Black_Cat
Таки имею вАпрос к аФтАру - режим Auto в LCK128, логика работы (пож. словами, и не GOTO :) )?

Re: TS-Conf F.A.Q.

PostPosted: Wed, 11.12.2013 22:35:14
by TS-Labs
out (c), a - 512k
out ($fd), a - 128k
Проверяет при цикле иорк 2 бита последнего опкода.

Re: TS-Conf F.A.Q.

PostPosted: Wed, 11.12.2013 23:31:05
by Black_Cat
TS-Labs wrote:Проверяет при цикле иорк 2 бита последнего опкода.

какие?

Re: TS-Conf F.A.Q.

PostPosted: Wed, 11.12.2013 23:52:20
by Black_Cat
TS-Labs wrote:out ($fd), a - 128k

т.е. фактически если D6=0 или D5=1, то 128k, иначе 512k?

Re: TS-Conf F.A.Q.

PostPosted: Wed, 11.12.2013 23:56:39
by TS-Labs
m1_lock128 <= !(din[7] ^ din[6]);

Re: TS-Conf F.A.Q.

PostPosted: Thu, 12.12.2013 15:06:24
by Black_Cat
TS-Labs wrote:m1_lock128 <= !(din[7] ^ din[6]);

Очень сомнительный критерий, я бы даже сказал что нерабочий:
1) 128к софты, юзающие out ($fd), a вполне законно могут выставлять D6=1 & D5=1, в результате у тебя в окне CPU3 окажется не та страница, т.е. должен быть 128 режим, а у тебя получается 512. Устраняется доп логикой определения 128 режима = D7/ & D6 & D5 = 1 для out ($fd), a. В 128 режиме выходы D7,D6 должны принудительно обнуляться. К сожалению для D7=0, D6=1, D5=0 при out ($fd), a опять же ложно детектится 512 режим, и это уже не устранить..;
2) 128к софты, юзающие out (c), a вполне законно могут выставлять в D6,D7 всё что угодно, т.к. эти разряды не задействованы в ZX128, в результате у тебя может ложно определяться 512 режим, и в окне CPU3 окажется не та страница. К сожалению, аппаратно это никак не устранить, и остаётся токо уповать на то, что этого не будут делать;

Re: TS-Conf F.A.Q.

PostPosted: Thu, 12.12.2013 15:19:34
by Sergey78
Неосилятор верилога детектед :)

Re: TS-Conf F.A.Q.

PostPosted: Thu, 12.12.2013 16:21:51
by Black_Cat
Sergey78 wrote:Неосилятор верилога детектед

а чо, где-то говорилось обратное? :) Это всё равно, что написать "Sergey78 неасилятор включать голову". Но ведь нигде и не утверждалось что он "асилятор" :)

Re: TS-Conf F.A.Q.

PostPosted: Thu, 12.12.2013 16:33:40
by Sergey78
Это скорее Black_Cat "неасилятор включать голову". Займемся фигурным квотингом:
TS-Labs wrote:Проверяет при цикле иорк 2 бита последнего опкода.

Black_Cat wrote:какие?

TS-Labs wrote:m1_lock128 <= !(din[7] ^ din[6]);

Re: TS-Conf F.A.Q.

PostPosted: Thu, 12.12.2013 16:53:31
by Black_Cat
Sergey78 wrote:Это скорее Black_Cat

:) товарисча Sergey78 затроллили :) , дальнейший троллинг считаю не спортивным :)

Re: TS-Conf F.A.Q.

PostPosted: Thu, 12.12.2013 18:03:33
by g0blinish
Black_Cat wrote:оварисча Sergey78 затроллили , дальнейший троллинг считаю не спортивным


котэ, тебя снова не кормили?