1 // ----------------------------------------------------------------------------
3 // ----------------------------------------------------------------------------
12 void subGetNextDemoKey()
16 if (0 < DemoKeyRepeatCounter)
18 DemoKeyRepeatCounter = DemoKeyRepeatCounter - 1;
22 DemoOffset = DemoOffset + 1;
23 if (DemoOffset <= FileMax)
25 ax = PlayField8[DemoOffset];
33 DemoKeyCode = ax & 0xF;
34 DemoKeyRepeatCounter = (ax & 0xF0) / 0x10;
45 printf("::: %04d [%03ld, %02d] ----------> %s [%d] [%d, %d] [%d, %d]\n",
47 DemoOffset - DemoPointer, DemoKeyRepeatCounter,
48 (DemoKeyCode == keyNone ? "(none)" :
49 DemoKeyCode == keyLeft ? "left" :
50 DemoKeyCode == keyRight ? "right" :
51 DemoKeyCode == keyUp ? "up" :
52 DemoKeyCode == keyDown ? "down" :
53 DemoKeyCode == keySpace ? "space" :
54 DemoKeyCode == keySpaceLeft ? "space + left" :
55 DemoKeyCode == keySpaceRight ? "space + right" :
56 DemoKeyCode == keySpaceUp ? "space + up" :
57 DemoKeyCode == keySpaceDown ? "space + down" : "(unknown)"),
59 MurphyScreenXPos, MurphyScreenYPos,
60 MurphyPosIndex % 60, MurphyPosIndex / 60);
65 currency GetTotalFramesOfDemo()
67 currency GetTotalFramesOfDemo;
73 GetTotalFramesOfDemo = 0;
75 return GetTotalFramesOfDemo;
80 // --- On Error GoTo GetTotalFramesOfDemoEH
84 nFrames = nFrames + (db & 0xF0) / 0x10 + 1;
89 GetTotalFramesOfDemo = nFrames;
90 return GetTotalFramesOfDemo;
92 GetTotalFramesOfDemo = 0;
93 DemoAvailable = False;
95 return GetTotalFramesOfDemo;