Eletrônica
Modelo de temporização do TK90X em 60 Hz
Com os dados anteriormente coletados, apesar das incertezas das medidas, é possível propor um modelo de temporização para o TK90X. O que estarei expondo aqui é fortemente baseado no livro de Chris Smith. Estarei centrando a análise no modo 60 Hz que, além de ser o que nós rotineiramente usamos, para 50 Hz seria necessário modificar o programa de teste.
A principal unidade de tempo do Z80 é o seu clock, cuja frequência nominal é de 3,575611 MHz e o período (T) é de 279,6725 ns. Entretanto a ULA usa o dobro desta frequência na geração de vídeo, isto é, 7,151222 MHz. Portanto, a duração de cada pixel é de ½T ou 139,8362 ns.
O tempo de duração de um quadro (que inclui a tela visível e a parte que não é mostrada) é de 59736 T que corresponde a 16,70652 ms ou 59,85689 Hz (um pouco abaixo de 60 Hz). Nesta análise, considerou-se como tempo inicial (0 T) o início da rotina de interrupção mascarável, pois as medições foram feitas dessa forma.
Cada quadro é composto por 262 linhas com duração de 228 T (63,76533 μs ou 15,68250 kHz) cada. Numerando as linhas de 0 a 261, podemos classificá-las em:
- 0-22: 23 linhas invisíveis superiores (0-5243 T);
- 23-37: 15 linhas da borda superior (5244-8663 T);
- 38-229: 192 linhas da tela principal (8664-52439 T);
- 230-251: 22 linhas da borda inferior (52440-57455 T);
- 252-261: 10 linhas invisíveis inferiores (57456-59735 T).
O tempo de uma linha pode ser dividido em:
- 0-23 T: 24 T ou 48 pixels da borda direita;
- 24-75 T: 52 T invisíveis, que incluem sincronização e retraço;
- 76-99 T: 24 T ou 48 pixels da borda esquerda;
- 100-228 T: 128 T ou 256 pixels da tela principal.
Pode parecer estranha a exibição da linha começar pela borda direita da linha imediatamente acima e ser terminada com a tela principal, porém isto ocorre porque o tempo 0 foi definido, de forma arbitrária, no início da interrupção. Não existe a priori um início ou um fim na sequência de geração de vídeo, pois é um ciclo que se repete indefinidamente; sendo assim, poder-se-ia escolher qualquer ponto como sendo o começo da geração de um quadro.
Assim, se o tempo inicial for redefinido como 5320 T após início da rotina de interrupção, as 262 linhas do quadro passam a ser:
- 0-14: 15 linhas da borda superior (0-3419 T);
- 15-206: 192 linhas da tela principal (3420-47195 T);
- 207-228: 22 linhas da borda inferior (47196-52211 T);
- 229-: 33 linhas invisíveis (52212-59735 T).
e o tempo da uma linha seria dividido em:
- 0-23 T: 24 T ou 48 pixels da borda esquerda;
- 24-151 T: 128 T ou 256 pixels da tela principal;
- 152-175 T: 24 T ou 48 pixels da borda direita;
- 176-227 T: 52 T invisíveis, que incluem sincronização e retraço.
Acredito ser esta segunda abordagem mais intuitiva. A temporização horizontal e as linhas verticais estão sumarizados na figura:
loading...
-
Temporização De Vídeo Da Ula E Do Clone (60 Hz)
Eu tinha feito medições de temporizações de vídeo do TK90X que, entre outras coisas, resultou em parâmetros para que Rotatrix e Bifrost* pudessem funcionar no computador brasileiro. Como estou testando o clone de ULA do Fábio Belavenuto, resolvi...
-
Mais Investigações Sobre O "efeito Rodland"
Fiz mais algumas investigações sobre o bug detectado na ULA clonada. Na tela acima, observa-se uma linha vertical clara logo à direita da fadinha ruiva (fica mais visível sob ampliação). Deixando todos os atributos em branco e preto (PAPER 7 e...
-
Temporização De Vídeo Do Tk90x (parte 5)
Desta vez estou trazendo a mensagem de Einar Saukas, que interpreta os resultados que divulguei na postagem passada. - As medições próximas à borda (medida 4 do lado esquerdo, medidas 5 e 6 do lado direito) ficam bastante distorcidas pela contenção...
-
Temporização De Vídeo Do Tk90x (parte 4)
Continuando com a série de determinação de temporização do vídeo do TK90X através da cor da borda (BORDER), nesta postagem estou usando o programa modificado pelo Einar Saukas para maior precisão. Foram colhidos 11 dados de tempos no meu TK90X...
-
Temporização De Vídeo Do Tk90x (parte 1)
Programas como Rotatrix, que dependem fortemente de sincronização com o vídeo, são extremamente sensíveis às diferenças de temporizações entre o TK90X e os diferentes modelos de ZX Spectrum. Enquanto o computador britânico tem as suas temporizações...
Eletrônica