16 "opoqopoqopoqopoqqrstrq";
19 "abcdefghijkaakkkkaaaalllllllmmll",
20 "aaaaaaaabcddeeddccffgghhgghhiiih",
21 "aaaaaaaaaabbccbbaaccccccccccaccc",
22 "aaaabbbcccddeeddccffggaaggffcaaa",
23 "aabbbaacccddddddccddeeeeeeddccca",
24 "aaaaaabbbaaabbaaaabbbbaabbbbaccc",
25 "aabbcdbbbeaaaaaaeeaaaaaaaaaabaaa",
26 "abbbaacccdeeaaeeddaaaaaaaaaadacc",
27 "aaaaaaaaabbbccbbbbccddddddccaaaa",
28 "abccdefgghiijjiihhkkllmmllkkhnnn"
62 for (sectionIndex = 0; sectionIndex < 12; sectionIndex++) {
65 (
short)(sectionIndex + 1), 0);
111 for (sectionIndex = 0; sectionIndex < 13; sectionIndex++)
133 for (actor = 0; actor < 10; actor++) {
145unsigned short RandomInRange(
unsigned short lo,
unsigned short hi);
161 for (frameNumber = minimumFrame; frameNumber < 32; frameNumber++) {
166 for (actorIndex = 0; actorIndex < 10; actorIndex++) {
173 [frameNumber] -
'a'));
184 minimumFrame = (short)(
186 for (frameNumber = 31; frameNumber >= minimumFrame; frameNumber--) {
191 for (actorIndex = 0; actorIndex < 10; actorIndex++) {
198 [frameNumber] -
'a'));
228 for (cueNumber = 0; cueNumber < 20; cueNumber++) {
244 for (actor = 0; actor < 9; actor++) {
348 (
short)(bounds[2] + 1), y,
361 for (step = 1; step < 120;
362 step = (short)(step + step / 4 + 1)) {
367 for (actor = 0; actor < 9; actor++) {
426 for (; distance >= 1000;
427 distance--, planetDelay--, logoTimer--) {
429 if (planetDelay == 0) {
431 planetY = (short)(120000 / (
int)distance);
434 if (logoTimer == 0) {
436 scale = (short)(256000 / (
int)distance);
438 titleY = (short)(titleY - 2);
440 titleY = (short)(titleY + 2);
454 if (extent[3] < planetY)
456 if (logoCovers == 0) {
489 short finalEmptyCount;
505 spawnFirework = (short)(
508 spawnFirework = (short)(
512 spawnFirework = (short)(
516 if (spawnFirework != 0 && fadeOut == 0) {
517 for (firework = 0; firework < 5; firework++) {
537 if (fadeOut == 1 && inactive == 5)
543 }
else if (frameCount > 10) {
562 for (firework = 0; firework < 29; firework++) {
570 while (inactive != 30) {
572 if (finalEmptyCount == 4) {
590 for (firework = 29; firework >= 0; firework--) {
void(__cdecl *g_pIxFree)(void *)
void DrawTitleSky(short planetY)
void FadeViewportPaletteToColour(Viewport *viewport, unsigned short colour, short enabled)
short GetTransformedShapeBounds(Viewport *viewport, short x, short y, unsigned char *shape, short frame, short angle, short scale, short flip, short *bounds)
short StartMusic(void *music)
void RefreshMemoryStatusOverlay(void)
void ResetScreenClipToFullHeight(void)
void PushTitleOrchestraAway(void)
void StopMusic(short enabled)
void AnimateTitleOrchestra(void)
void RestoreGamePalette(void)
void DrawTitleOrchestra(void)
void DrawSpriteDefault(Viewport *viewport, short x, short y, unsigned char *shape, short frame)
short WaitForInputKey(void)
void * FetchDiskPacketRetrying(char *fileName, short section, short flags)
void InitializeConversationViewport(void)
void InitializeFireworks(void)
void PanToScreen(Viewport *source, Viewport *destination)
short TheEndFireWorks(Viewport *viewport, short count)
void ClearViewport(Viewport *viewport, short colour)
void DrawScaledTitleLogo(short y, short scale)
void Title_Sequence(void)
void ReleasePacketHandle(void *handle)
void DrawSpriteScaled(Viewport *viewport, short x, short y, unsigned char *shape, short frame, short angle, short scale, short flip)
void FlushSoundEffect(void)
void ShowVictoryScreen(short logoY)
short RevealTitleLogo(void)
unsigned short RandomInRange(unsigned short lo, unsigned short hi)
void FreePacketAndClear(void *slot, unsigned short releaseFlags)
void FlushSoundEffects(void)
void PlayTitleConductorCue(void)
Shared Win32 declarations, types and library interfaces.
signed char g_bSceneEscapeRequested
FireworkState g_16_aFireworks[30]
unsigned char * g_1_pTitleFireworkShape
unsigned char g_cSecondaryViewBufferColour
Viewport g_2_stModalSourceWindow
Viewport g_101_stScrViewInfo
Viewport g_stSecondaryViewBufferBlock
short g_18_nInterfaceEventMode
short g_nFrameSkipCountdown
short g_nTitleMusicSequenceStage
char g_szTitleConductorFrames[]
char * g_apszTitleActorFrames[10]
unsigned char * g_apTitleSections[13]
TitleActorMotion g_aTitleActorMotion[10]
unsigned char * g_pTitleFieldShape