version 2.5, the colorsroll.prg version... the scroll itself moves smoothly to the left if you follow it with your eyes; you can see that the "jerkiness" is actually flashing of the previous character in that position. Or maybe I am just seeing it wrong.
Let us not talk falsely now The hour is getting late
Yeah, I know what you mean. It scrolls left smoothly, but then for a brief time (like one frame) it snaps back one full character (to the right) before the text is redrawn in the correct position (one char to the left). I set a background color change to see how long the text copy takes, and it is a fairly brief time... nowhere near a full frame.
Yeah, the flickering is the real mystery here! There is no obvious cause for this when looking at the code, and VICE doesn't "see it" either. My little camera general only captures 15fps for video. Even if went 30fps, I think this is something that require 60fps capture rate to really nail the problem down...
Or, if I find the time (as if), write a stable-raster-IRQ for the VDC... then I could try things like two rows, each with different scroll values. A simple photo then might reveal exactly what the VDC is *really* doing when you reset the scroll register (as opposed to what VICE, and apparently the rest of humanity, *thinks* should happen).
Strange this is such an old thread which has yet to be solved... that VDC sure is one magical black box!
I get the feeling the smooth scroll feature is actually bugged in the VDC hardware. Has anybody tried smooth scrolling vertically yet? It would be interesting to see of both axis had the same issue, or indeed of scrolling in the other direction caused it too.
I was just toying with the idea of a vertical scrolling shooter. If I can get block copy to move the screen down quick enough and add new pixels at the top I think I could manage with 2*8 or 2*16 colour cells for speed.
The real problem comes with the lack of logical operators on the block copy so placing your character, enemies or bullets will be a PITA.
Correct me if I am wrong but I thought that was just to hide the edges so you don't see the new character suddenly appear on the VIC-II ? Nothing to do with the actual scrolling at all, just a cosmetic bodge to make things look nicer.
I can scroll a monochrome bitmap easily and fairly quickly. I wanted colour. Now I have 2 options, either go for 8x2 mode and scroll 2 pixels at a time (faster, less smooth) or use the hardware smooth scroll offsets as tried in this scrolling text demo...
So I tried the smooth scrolling register, scrolling from the bottom up. I get the same flickering as the text demo when scrolling my colour graphics
I tried syncing it by putting a wait loop checking the vblank register but had no luck, maybe waiting a number of cycles after the vblank triggers might work but I can't be bothered to play with it anymore.
I am frustrated and angry at VICE. for all I know I have hit the working combination at least once and it wasn't emulated correctly. My real hardware does very different things to VICE and my programming has taken all day testing against an unknown moving target of vice. For all I know I had working code many times and kept changing it because of poor emulation.
I need a way to get code onto the 128 without moving SD cards around.