Here is the script text
import "std.zh" const int OUTPUT_LAYER = 6; const int STRING_X = 12; const int STRING_FONT = 0; const int STRING_COLOUR = 0x01; const int COLOUR_BLACK = 0x0F; const int INTRO_MIDI = 1; ffc script ScrollingStrings { void run() { Game->PlayMIDI(INTRO_MIDI); int q; int introDur =100; int outroDur = 100; int fontHeight = 8; int lineSpacing = 2; int numLines = 24; int line_with_spacing = lineSpacing+fontHeight; int screenHeight = 200; int totalHeight = numLines * line_with_spacing + screenHeight; int tempOffset = screenHeight; int scrollMinY = totalHeight * -1; int drawpos = 0; bool drawing = true; int line01[]="String line 1."; int line02[]="String line 2."; int line03[]="String line 3."; int line04[]="String line 4."; int line05[]="String line 5."; int line06[]="String line 6."; int line07[]="String line 7."; int line08[]="String line 8."; int line09[]="String line 9."; int line10[]="String line 10."; int line11[]="String line 11."; int line12[]="String line 12."; int line13[]="String line 13."; int line14[]="String line 14."; int line15[]="String line 15."; int line16[]="String line 16."; int line17[]="String line 17."; int line18[]="String line 18."; int line19[]="String line 19."; int line20[]="String line 20."; int line21[]="String line 21."; int line22[]="String line 22."; int line23[]="String line 23."; int line24[]="String line 24."; int strings[]={ line01, line02, line03, line04, line05, line06, line07, line08, line09, line10, line11, line12, line13, line14, line15, line16, line 17, line18, line19, line20, line21, line22, line23, line24 }; //Intro black screen for ( q = 0; q < introDur; ++q ) { Screen->Rectangle(OUTPUT_LAYER, 0,0,256,176, COLOUR_BLACK, 100, 0,0,0,true, 128); Waitframe(); } while((tempOffset-=0.25) > scrollMinY) { Screen->Rectangle(OUTPUT_LAYER, 0,0,256,176, COLOUR_BLACK, 100, 0,0,0,true, 128); for (q = 0; q < numLines; ++q) { Screen->DrawString(OUTPUT_LAYER, STRING_X, drawpos+(tempOffset<<0), STRING_FONT, STRING_COLOUR, 0, 0, strings[q], 128); drawpos += line_with_spacing; } Waitframe(); } //end scrolling loop loop //Outro Black Screen for ( q = 0; q < outroDur; ++q ) { Screen->Rectangle(OUTPUT_LAYER, 0,0,256,176, COLOUR_BLACK, 100, 0,0,0,true, 128); Waitframe(); } } //end run() } //end script