Extending screen width by 16 pixels

By norakomi

Paladin (1001)

norakomi's picture

20-09-2019, 17:42

Hi,

I was wondering if it's possible to extend the screen width by 16 pixels using r#18 scroll register and a horizontal screensplit.
my though was to have a picture of 272*212 pixels split into 2 parts.
part 1 (in page 1) starting at (0,0) of the total picture
part 2 (in page 2) starting at (16,0) of the total picture

Then every line that the screen builds up:
1) polling for left border, setting r#18 to 0,page 1
2) wait 16 pixels (a few nops)
3) setting r#18 to 16, page 2
doing this every line.

Could it technically be possible to display a 272*212 pixels image this way ?

Login or register to post comments

By Grauw

Ascended (8506)

Grauw's picture

20-09-2019, 17:55

I tried this recently actually, in an attempt to get horizontal overscan.

However the r#18 horizontal adjust value is only sampled by the VDP after the horizontal erase, and after the vertical erase for the vertical adjust. If you change the horizontal adjust, it only takes effect on the next line, and vertical adjust only takes effect on the next frame.

By norakomi

Paladin (1001)

norakomi's picture

21-09-2019, 10:37

Alright, clear.
So you could still have a 272*212 image, alternating after each next line

By Manel46

Champion (457)

Manel46's picture

21-09-2019, 13:34

Double buffer, on screen 8. writing in R # 18, -8 on page 0, and +7 on 1. There are two images displaced 16 pixels, one respect the other. Of course, the areas that are not on the two pages look dark.
https://youtu.be/kTbVqouKVUw

By DarkSchneider

Paladin (879)

DarkSchneider's picture

21-09-2019, 14:50

Interesting. I suppose the idea is some kind of horizontal overscan. But that method even if acceptable (borders darker but visible) requires double buffers, writing the same info to pairs.

By Manel46

Champion (457)

Manel46's picture

21-09-2019, 17:23

In the video it is not noticeable, but there is horizontal and vertical scrolling, between the two pages.
I've seen it when putting a sprite moving.
This has already been commented here, by Grauw.