Fenix has inbuilt scroll commands, you can have up to 10 scroll windows at once (numbered 0 through 9).
Firstly, use this function to make a scroll window and display it:
Code:
Start_Scroll(int num,int fpg,int fore,int back,int region,int camset);
num - the number of the scroll window (0 through 9)
fpg - the id of the fpg file for the graphics (or 0 if they are loaded with load_map/load_png)
fore - the forground image
back - the background image (both fore and back can scroll independently)
region - the region in which to insert the scroll window (or 0 if no regions are used)
camset - +1 if fore is horizontally cyclical
+2 if fore is vertically cyclical
+4 if back is horiz cyclical
+8 if back is vertic cyclical
eg. 12 means only the background is cyclical (in both planes).
It sounds like you want camset to be 0 (neither graphic is cyclical, it just scrolls with one instance of the graphic).
similarly, you can stop a scroll window with stop_scroll:
Code:
stop_scroll(int number)
number - the scroll window number to stop
and you can move fore/back around with these variables:
Code:
scroll[number].x0 - fore x position
scroll[number].y0 - fore y position
scroll[number].x1 - back x position
scroll[number].y1 - back y position
All processes to be shown in the scroll window must contain this line of code:
NOTE: this means that the coordinates of the process will refer to the coordinates relative to the scroll window, not the game window.
It may be easier to move the scroll window with this handy trick:
Code:
scroll[number].camera = *a process id*;
This will mean that the scroll window will automatically follow the process of which id you pass to it. So if you put this line of code into a process:
scroll.camera = id;
it will automatically follow that graphic's position within the scroll window (id is a local variable holding the process' id)
If only one scroll window is used (scroll number 0), there is no need to put the "[number]" bit in, simply use scroll variables as:
With a graphic so large however, fenix may give up and die, having a cyclical background graphic is much easier and you can change the appearence by adding processes within the scroll window.
I hope this helps, it is best to spend time experimenting with these functions. Don't hesitate to ask if you don't understand anything or need help.