So, is there a scanline timer interrupt or a relatively accessible method of duplicating the function of one within the PCE hardware? Specifically, it would be nice to have a fixed tile area at the top or bottom of the screen that doesn't use sprites that can accommodate a playfield that can scroll in any direction, despite the playfield and the status area being comprised of tiles.
See Super Mario Bros 3 on the NES for a perfect example of this.
Is this something the PCE can replicate without too much trouble?
You've already got your answer, but contribute some more specifics.
There's an Hsync interrupt service. You tell it what 'scanline' number to generate the interrupt, and it does when it reaches that scanline. When the interrupt hits, you can change a number of registers for the display on that given scanline; scroll X position, scroll Y, position, BG on/off, sprites on/off, VCE colors, etc. You can even generate interrupts for none showing scanlines (scanlines in vblank area). If you write to the audio chip, you can use this to do 16khz samples or such updates.
I wrote a bunch of stuff for HuC (even some code for the executable too). Zeo took most of it, but it never got published afaik; SGX duplicates for all main video functions (sprite,tilemap,etc), arcade card access, some additional CD functions not on the list, some new hsync routines, long pointer access, etc. I had some of it up on my old site, but nothings posted anymore. I made something for Xavier (hsync). Not sure if he ever used it. I never used HuC for my own stuff, but I've spent a good amount of time messing around with it and the backend lib. Only a handful of people use HuC and they all seem to have their own custom stuff for it, so there's really no sense in trying to make new functions for it for the public to use (which sucks).