True interlaced hires graphics

Any discussions related to the creation of new hardware or software for the ZX80 or ZX81
nollkolltroll
Posts: 325
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

True interlaced hires graphics

Post by nollkolltroll »

Here is the source and binary to show the famous test-image Lena in 256x480 interlaced on a ZX81 with 16k WRX.
Code was done in ZX-IDE. Please excuse the poor source, it is a proof of concept, not a good coding example.

I developed this code about 10 years ago, and it is high time someone else saw it and could try it out.
This is the reason EightyOne has the option 'Interlace' in TV Emulation.
This should work on NTSC-equipment as well, but I have no true NTSC TVs to test it on.
It should be possible to combine with B0D0's 320-pixel resolution to get up to 320x512i, but that would require 24k RAM.
The interlace-vsyncs are not really following the standard. It would be possible to follow the standard with half-syncs if needed, but would require some (hairy) code.

Tested on:
- PAL ZX81 with 56k internal WRX-enabled RAM
- PAL ZX81, unmodified, with zxpand
- PAL B/W 5.5" TV, rf and composite video
- computer video-in card, rf and composite video
- Commodore 1081, composite video
Attachments
ilena.zip
(21.57 KiB) Downloaded 637 times
/Adam
User avatar
PokeMon
Posts: 2264
Joined: Sat Sep 17, 2011 6:48 pm

Re: True interlaced hires graphics

Post by PokeMon »

Thanks, I tested it on my TV and got what I expected.
A nice graphic, but flickering.
Interlacing is not suitable for still pictures, especially for fine graphics.
As the frame repeat rate is halfed from 50 to 25 times per second this will give significant noise (or better flickering) to the eyes.
So that's the reason why all computer manufacturers did not use very high resolution and show the same picture twice for odd and even frames.
This effect is not seen when showing moving pictures (video) of course.

Anyway nice work from you, of course did take long time (8 minutes) to load on my new ZX80CORE II using the standard audio transfer. 8-)
nollkolltroll
Posts: 325
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Re: True interlaced hires graphics

Post by nollkolltroll »

Good to hear that it works for you too!
I agree, interlaced graphics is very bad for the eyes. Not meant to be used for anything serious, but nice as a proof that the zeddy is more powerful than the speccy ;)
/Adam
User avatar
PokeMon
Posts: 2264
Joined: Sat Sep 17, 2011 6:48 pm

Re: True interlaced hires graphics

Post by PokeMon »

Do you think the Speccy couldn't handle this ? ;)
nollkolltroll
Posts: 325
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Re: True interlaced hires graphics

Post by nollkolltroll »

Can the speccy control the vsync timing? I really have no idea, but it sounded nice ;)
/Adam
User avatar
PokeMon
Posts: 2264
Joined: Sat Sep 17, 2011 6:48 pm

Re: True interlaced hires graphics

Post by PokeMon »

Not by software, in that point you are right.
User avatar
stefano
Posts: 568
Joined: Tue Dec 11, 2012 9:24 am
Contact:

Re: True interlaced hires graphics

Post by stefano »

It can be done on a Spectrum 128 but it is almost impossible on a 48K. I don't think a whole 6144 bytes D-FILE can be updated quickly enough (for sure LDIR is too slow).

For the record, the interlaced mode is implemented on z88dk to be able to run the code using the same "gray" lib available for the TI calculators.. I recently provided also a chroma-81 variant but probably it is useless..
nollkolltroll
Posts: 325
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Re: True interlaced hires graphics

Post by nollkolltroll »

The interlacing in z88dk is not the same. That one is used to draw pixels on top of each other to get greyscale effects. This interlace is actually drawing a new field between the old field.
Feel free to add it to z88dk to get higher resolution, but be aware that it IS very flickery!

I suspect that your comment on the spectrum 128 refers to the same greyscale-interlace, not true interlace.
/Adam
User avatar
stefano
Posts: 568
Joined: Tue Dec 11, 2012 9:24 am
Contact:

Re: True interlaced hires graphics

Post by stefano »

>I suspect that your comment on the spectrum 128 refers to the same greyscale-interlace, not true interlace.

You're right. Thank you for pointing it out, this means your proof of concept is much more interesting than I thought !
User avatar
1024MAK
Posts: 5118
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: True interlaced hires graphics

Post by 1024MAK »

As far as I am aware, if you are taking about true interlaced video, no none of the Spectrum models can do this, as all the relevant timing is fixed in the hardware of the ULA. No matter what the CPU does, the ULA scans the same pixels on the VDU.

For a similar reason, a lot of retro computers also cannot do it.

However some retro computers that use a 6845 CRTC can produce a true interlaced display. And also some that use later/more modern custom chips (I'm thinking of 16/32 bit computers).

Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp

:!: Standby alert :!:
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer later in the year.
Post Reply