TS-Conf F.A.Q.

Документация, FAQ-и

Postby TS-Labs » Thu, 05.12.2013 21:43:33

Да.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby g0blinish » Fri, 06.12.2013 11:05:24

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


непонятно, на что влияют xx и xxxx?
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby TS-Labs » Fri, 06.12.2013 11:16:19

А что в экселе про них написано?
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby TS-Labs » Fri, 06.12.2013 11:34:06

PalSel - это вроде как адрес порта, а %хх00хххх - значение. Это я так написал?..
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby g0blinish » Fri, 06.12.2013 12:12:07

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

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

то, что нельзя скопипастить
PalSel | T1PAL[7:6] | | T0PAL[7:6] | | GPAL[7:4] | | | | Palette selection for 4 bit modes
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby TS-Labs » Fri, 06.12.2013 14:53:18

Пытаемся сложить мозаику:
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.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby g0blinish » Sat, 07.12.2013 07:39:10

И как правильно отсчитать адрес?
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
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby Sergey78 » Sat, 07.12.2013 10:21:49

Адрес чего?
Sergey78
 
Posts: 422
Joined: Wed, 05.09.2012 20:04:40

Postby g0blinish » Sat, 07.12.2013 10:36:21

Sergey78 wrote:Адрес чего?

палитры же
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby Sergey78 » Sat, 07.12.2013 10:47:52

Если ты про это:
Code: Select all
PLANE0_PALETTE   equ 13

то PLANE0_PALETTE * 32 - смещение относительно начала палитры.
Sergey78
 
Posts: 422
Joined: Wed, 05.09.2012 20:04:40

Postby g0blinish » Sat, 07.12.2013 11:31:15

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


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


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

код вряд ли имеет смысл светить..
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby Sergey78 » Sat, 07.12.2013 11:57:27

На экране одновременно могут быть тайлы с 4-я палитрами. Если в PALSEL для тайловой плоскости записать 11b, то у тайлов на экране могут быть палитры 12 (1100) - адрес $180, 13 (1101) - адрес $1a0, 14 (1110) - адрес $1c0, 15 (1111) - адрес $1e0. Младшие 2 бита задаются в описателе конкретного тайла (биты 12,13).
Sergey78
 
Posts: 422
Joined: Wed, 05.09.2012 20:04:40

Postby g0blinish » Sat, 07.12.2013 12:23:11

чорд, неправильно пощитал. спасибо.
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby g0blinish » Sun, 08.12.2013 07:59:35

с палитрой хрень получилась, хоть мне и говорили, что палитра для тайлов отличается от палитры видеорежима.
задно неясно с T1page и с адресацией.
Attachments
tsconf.rar
(4.92 KiB) Downloaded 782 times
sshot000000.png
sshot000000.png (144.31 KiB) Viewed 44805 times
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

Postby Black_Cat » Wed, 11.12.2013 21:07:58

Таки имею вАпрос к аФтАру - режим Auto в LCK128, логика работы (пож. словами, и не GOTO :) )?
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!".
"Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло."
Гарри Трумэн
http://zx.clan.su/forum/
User avatar
Black_Cat
 
Posts: 1110
Joined: Thu, 26.07.2012 23:39:01

Postby TS-Labs » Wed, 11.12.2013 22:35:14

out (c), a - 512k
out ($fd), a - 128k
Проверяет при цикле иорк 2 бита последнего опкода.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby Black_Cat » Wed, 11.12.2013 23:31:05

TS-Labs wrote:Проверяет при цикле иорк 2 бита последнего опкода.

какие?
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!".
"Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло."
Гарри Трумэн
http://zx.clan.su/forum/
User avatar
Black_Cat
 
Posts: 1110
Joined: Thu, 26.07.2012 23:39:01

Postby Black_Cat » Wed, 11.12.2013 23:52:20

TS-Labs wrote:out ($fd), a - 128k

т.е. фактически если D6=0 или D5=1, то 128k, иначе 512k?
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!".
"Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло."
Гарри Трумэн
http://zx.clan.su/forum/
User avatar
Black_Cat
 
Posts: 1110
Joined: Thu, 26.07.2012 23:39:01

Postby TS-Labs » Wed, 11.12.2013 23:56:39

m1_lock128 <= !(din[7] ^ din[6]);
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby Black_Cat » Thu, 12.12.2013 15:06:24

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 окажется не та страница. К сожалению, аппаратно это никак не устранить, и остаётся токо уповать на то, что этого не будут делать;
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!".
"Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло."
Гарри Трумэн
http://zx.clan.su/forum/
User avatar
Black_Cat
 
Posts: 1110
Joined: Thu, 26.07.2012 23:39:01

Postby Sergey78 » Thu, 12.12.2013 15:19:34

Неосилятор верилога детектед :)
Sergey78
 
Posts: 422
Joined: Wed, 05.09.2012 20:04:40

Postby Black_Cat » Thu, 12.12.2013 16:21:51

Sergey78 wrote:Неосилятор верилога детектед

а чо, где-то говорилось обратное? :) Это всё равно, что написать "Sergey78 неасилятор включать голову". Но ведь нигде и не утверждалось что он "асилятор" :)
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!".
"Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло."
Гарри Трумэн
http://zx.clan.su/forum/
User avatar
Black_Cat
 
Posts: 1110
Joined: Thu, 26.07.2012 23:39:01

Postby Sergey78 » Thu, 12.12.2013 16:33:40

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

Black_Cat wrote:какие?

TS-Labs wrote:m1_lock128 <= !(din[7] ^ din[6]);
Sergey78
 
Posts: 422
Joined: Wed, 05.09.2012 20:04:40

Postby Black_Cat » Thu, 12.12.2013 16:53:31

Sergey78 wrote:Это скорее Black_Cat

:) товарисча Sergey78 затроллили :) , дальнейший троллинг считаю не спортивным :)
"Трудно найти чёрную кошку в тёмной комнате.. ...особенно, если её там нет", "Forever!".
"Я никогда не причиняю им зла. Я говорю им правду, и они думают, что это - зло."
Гарри Трумэн
http://zx.clan.su/forum/
User avatar
Black_Cat
 
Posts: 1110
Joined: Thu, 26.07.2012 23:39:01

Postby g0blinish » Thu, 12.12.2013 18:03:33

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


котэ, тебя снова не кормили?
[x] No Screenshot
User avatar
g0blinish
Упырь говнофорума
 
Posts: 3641
Joined: Tue, 18.06.2013 10:59:01

PreviousNext

Return to Manuals

Who is online

Users browsing this forum: No registered users and 1 guest

cron

x