Scrolling up one pixel

Any discussions related to the creation of new hardware or software for the ZX80 or ZX81
Post Reply
Bukster
Posts: 68
Joined: Wed Sep 12, 2018 9:44 am

Scrolling up one pixel

Post by Bukster »

When I was writing my giant letters utility, I had thought to make each letter scroll up not one line, but one half line - a ZX81 pixel. The routine I wrote was too slow to be of much use, but here is is in case anybody might like to make use of it. It doesn't clear the bottom line as the routine to write the next line of the giant letters was supposed to take care of that.

Here's the source code
Pixel_Scroll.asm
(5.2 KiB) Downloaded 124 times
And here's a compiled demo of it doing a sort of pixel scrolling starfield
Pixel_Scroll.p
(1.22 KiB) Downloaded 122 times
User avatar
XavSnap
Posts: 1114
Joined: Sat May 10, 2008 4:23 pm

Re: Scrolling up one pixel

Post by XavSnap »

Cool !

It remember this tread regard the ROM Plot command…

You can use the special characters mask too… (faster?)
Xavier
glxcr5
Posts: 1
Joined: Wed May 13, 2020 2:40 am

Re: Scrolling up one pixel

Post by glxcr5 »

Bukster, you got me to get off my ass and do something :). I was doing something similar but horizontally which I adapted.

It can go faster if the zx81 block character is converted into something 'or able', if its greater than char 8 then subtract the value from $8F. Do the 'or', then convert it back, again greater than char 8 etc.

Running against the random pixel test since its mostly spaces, I'll bet it can go even faster still if it tests for the char and the char below being 0=space, and if so skip all the conversion 'or' stuff.

I used z88dk with m4 macros Visual Studio Code. Macros are your friend BTW. I cannibalized your random pixel test code (thanks for that.)
pixelScroll2.P
(1.16 KiB) Downloaded 112 times
pixelScroll.asm
(1.54 KiB) Downloaded 122 times
Same technique horizontally:
scrollleft.P
(1.09 KiB) Downloaded 114 times
Post Reply