What does the 'actual background thus far' look like, as opposed to the sample screens posted on page 1?
Something like this:
What's bothering me the most is that whenever a section ends and another one starts there needs to be a "break" between them so that P1 can be repositioned, and that looks terrible on slopes, it really affects their continuity. Maybe if I treated slopes differently I could avoid repositioning them and just modify HMxx values to change the angle of the slopes instead of fully repositioning the objects...
How big were you planning the "break" to be? The reposition algorithms typically take 1-2 scanlines.
But, yes, you are learning that there are major tradeoffs when it comes to a kernel.
Remember tho, Thrust did 8-way scrolling (or at least 4-way). I think the gap between PF objects was 3 spaces for reposition type things.
Thinking outside the box is what we strive for.
The problem is that all these special cases will add up to many kernels for the different sections, and that will eat a lot of the space that could be used for graphics, which would still result in dull-looking levels. I mean, it's not like 4096 bytes is a lot when I have to hold graphics for Sonic, the common objects (rings, springs, monitors, etc), level graphics (platforms, ground, decorative objects) and level enemies. That end sign alone is 32 lines tall, and since there are 5 frames it needs a total of 320 bytes... That's a lot to waste on a non essential object.
I would agree that you'll need at least some special kernels:
One for end-screen (that's typically a "final" state with no scrolling and special gfx).
One for main scrolling
Some other cases (ones with strange objects on screen)?
For now, work the main one, and I'd say.. see it's limitations.
I am very much looking forward to this. It looks awesome.
Even a side-scroll only demo of Sonic speeding up and running fast would be neat.
Heck, if you did that only for a first run, you could still end up with a heck of a game.
That's probably how I'd start. Then, after that, I'd look at the verticals.
Good luck! And, feel free to share your questions/frustrations. Maybe some of us can help a bit.