CPCWiki forum

General Category => Programming => Topic started by: harzretro on 18:23, 12 March 25

Title: Looking for a Program for interlace grafic
Post by: harzretro on 18:23, 12 March 25
Hello,

Long time ago there was a program inside a magazin, should be Schneider International or Schneider Magazin, where you could use a interlace Resolution with 640x400  with Basic. And amother program were you could use more colors. 

But i din't find them anymore - does anyone now where to find them?

Axel
Title: Re: Looking for a Program for interlace grafic
Post by: eto on 18:37, 12 March 25
I remember those programs but I don't know which issue they were in. You can find all issues of Schneider Magazin here: 

https://acpc.me/#ACME/LITTERATURE/REVUES/[GER]GERMAN/[GER][AMSTRAD]CPC_SCHNEIDER_MAGAZIN

Title: Re: Looking for a Program for interlace grafic
Post by: McArti0 on 19:10, 12 March 25
First check if your monitor supports interlacing.
 
Out &bc00,8:out &bd00,1
Title: Re: Looking for a Program for interlace grafic
Post by: Longshot on 19:19, 12 March 25
Quote from: McArti0 on 19:10, 12 March 25First check if your monitor supports interlacing.
 
Out &bc00,8:out &bd00,1
It is not the CRTC that sends the synchronization signals to the monitor but the GATE ARRAY. 

Probably for reasons of economy, the GATE ARRAY merges the HSYNC and VSYNC signals to create  the composite signal sent to the monitor, without following the CRTC logic of 1/2 line + additional intermediate line necessary to create two frames separated by 1/2 pixel. 

So only modifying register 8 of the CRTC without feinting the GATE ARRAY does not allow to obtain an interlace image.
Title: Re: Looking for a Program for interlace grafic
Post by: McArti0 on 19:24, 12 March 25
10 r=&bc00:d=&bd00
20 out r,8:out d,3
30 out r,9:out d,6
40 out r,4:out d,77

And how does it look on your monitor?
Title: Re: Looking for a Program for interlace grafic
Post by: Longshot on 21:01, 12 March 25
The value you assign to R9 for interlace depends on the CRTC type.

If you consider N=8 lines per character, and you want to obtain 4 lines per frame, R9=N-2 on CRTC 0, 3, 4 and N-1 on CRTC 1, 2.

There are other differences (on CRTC 2, it is not necessary to double R4).
I recommend reading chapter 19.3 of the Compendium.

Vsync is framed on Hsync because of the fusion of the two signals in one composite signal.

On a CRT screen, you cannot obtain half a line with these OUTs. You have to cheat to force the GATE ARRAY to generate the HSYNC signal at the right time in order to "displace" the VSYNC attached to it.

On a larger scale, this is what is done here:
https://youtu.be/y1o1Gk-6gGE?si=6IV2Q_IkDmgdWURZ
Title: Re: Looking for a Program for interlace grafic
Post by: McArti0 on 22:07, 13 March 25
Fliker colors...

1 MODE 1
5 ON BREAK GOSUB 50000
10 MEMORY &3FFF
20 FRAME:EVERY 2,3 GOSUB 60000
30 FRAME:EVERY 2,2 GOSUB 60001
31 REM
35 WINDOW#1,1,40,1,25
49 PEN#1,1:s$="PEN 1 ...":GOSUB 400
50 PEN#1,3:s$="Mix PEN 1&3...":GOSUB 400
51 PEN 3:PEN#1,3:s$="PEN 3...":GOSUB 400
100 GOTO 100
400 PRINT s$;:POKE &B7C6,&40:PRINT#1,s$;:POKE &B7C6,&C0:RETURN
1000 REM
50000 OUT &BC00,12:OUT &BD00,&30:PEN 1:END
60000 OUT &BC00,12:OUT &BD00,&10:RETURN
60001 OUT &BC00,12:OUT &BD00,&30:RETURN
Powered by SMFPacks Menu Editor Mod