#include "joystick.h"
#include "cartoons.h"
+#ifdef MSDOS
+extern unsigned char get_ascii(KeySym);
+#endif
+
void DrawHeadline()
{
int x1 = SX+(SXSIZE - strlen(GAMETITLE_STRING) * FONT1_XSIZE) / 2;
i++;
}
- redraw_tiles += 28;
for(i=2;i<16;i++)
- redraw[0][i] = redraw[1][i] = TRUE;
- redraw_mask |= REDRAW_TILES;
+ {
+ MarkTileDirty(0,i);
+ MarkTileDirty(1,i);
+ }
}
void DrawHelpScreenElText(int start)
return;
}
+#ifndef MSDOS
if ((key>=XK_A && key<=XK_Z) || (key>=XK_a && key<=XK_z &&
xpos<MAX_NAMELEN-1))
{
ascii = 'A'+(char)(key-XK_A);
if (key>=XK_a && key<=XK_z)
ascii = 'a'+(char)(key-XK_a);
+#else
+ if((ascii = get_ascii(key)) && xpos<MAX_NAMELEN-1)
+ {
+#endif
player.alias_name[xpos] = ascii;
player.alias_name[xpos+1] = 0;
xpos++;
{SETUP_TOONS, "Toons:", {"on", "off"}, {FC_YELLOW,FC_BLUE}},
{SETUP_DIRECT_DRAW, "Buffered gfx:",{"off","on" }, {FC_BLUE,FC_YELLOW}},
{SETUP_SCROLL_DELAY,"Scroll Delay:",{"on", "off"}, {FC_YELLOW,FC_BLUE}},
+ {SETUP_SOFT_SCROLL, "Soft Scroll.:",{"on", "off"}, {FC_YELLOW,FC_BLUE}},
{SETUP_FADING, "Fading:", {"on", "off"}, {FC_YELLOW,FC_BLUE}},
{SETUP_QUICK_DOORS, "Quick Doors:", {"on", "off"}, {FC_YELLOW,FC_BLUE}},
{SETUP_AUTO_RECORD, "Auto-Record:", {"on", "off"}, {FC_YELLOW,FC_BLUE}},
player.setup ^= SETUP_SCROLL_DELAY;
}
else if (y==9)
+ {
+ if (SETUP_SOFT_SCROLL_ON(player.setup))
+ DrawText(SX+14*32, SY+yy*32,"off",FS_BIG,FC_BLUE);
+ else
+ DrawText(SX+14*32, SY+yy*32,"on ",FS_BIG,FC_YELLOW);
+ player.setup ^= SETUP_SOFT_SCROLL;
+ }
+ else if (y==10)
{
if (SETUP_FADING_ON(player.setup))
DrawText(SX+14*32, SY+yy*32,"off",FS_BIG,FC_BLUE);
DrawText(SX+14*32, SY+yy*32,"on ",FS_BIG,FC_YELLOW);
player.setup ^= SETUP_FADING;
}
- else if (y==10)
+ else if (y==11)
{
if (SETUP_QUICK_DOORS_ON(player.setup))
DrawText(SX+14*32, SY+yy*32,"off",FS_BIG,FC_BLUE);
DrawText(SX+14*32, SY+yy*32,"on ",FS_BIG,FC_YELLOW);
player.setup ^= SETUP_QUICK_DOORS;
}
- else if (y==11)
+ else if (y==12)
{
if (SETUP_AUTO_RECORD_ON(player.setup))
DrawText(SX+14*32, SY+yy*32,"off",FS_BIG,FC_BLUE);
DrawText(SX+14*32, SY+yy*32,"on ",FS_BIG,FC_YELLOW);
player.setup ^= SETUP_AUTO_RECORD;
}
- else if (y==12)
+ else if (y==13)
{
if (SETUP_2ND_JOYSTICK_ON(player.setup))
DrawText(SX+14*32, SY+yy*32,"1st",FS_BIG,FC_YELLOW);
DrawText(SX+14*32, SY+yy*32,"2nd",FS_BIG,FC_YELLOW);
player.setup ^= SETUP_2ND_JOYSTICK;
}
- else if (y==13)
+ else if (y==14)
{
CalibrateJoystick();
redraw = TRUE;
} joy_ctrl;
#endif
+#ifdef MSDOS
+ char joy_nr[4];
+#endif
+
int new_joystick_xleft, new_joystick_xright, new_joystick_xmiddle;
int new_joystick_yupper, new_joystick_ylower, new_joystick_ymiddle;
if (joystick_status==JOYSTICK_OFF)
goto error_out;
+#ifndef MSDOS
ClearWindow();
DrawText(SX+16, SY+7*32, "MOVE JOYSTICK TO",FS_BIG,FC_YELLOW);
DrawText(SX+16, SY+8*32, " THE UPPER LEFT ",FS_BIG,FC_YELLOW);
while(Joystick() & JOY_BUTTON);
return;
+#endif
error_out:
+#ifdef MSDOS
+ joy_nr[0] = '#';
+ joy_nr[1] = SETUP_2ND_JOYSTICK_ON(player.setup)+49;
+ joy_nr[2] = '\0';
+
+ remove_joystick();
+ ClearWindow();
+ DrawText(SX+32, SY+7*32, "CENTER JOYSTICK",FS_BIG,FC_YELLOW);
+ DrawText(SX+16+7*32, SY+8*32, joy_nr, FS_BIG,FC_YELLOW);
+ DrawText(SX+32, SY+9*32, "AND PRESS A KEY",FS_BIG,FC_YELLOW);
+ BackToFront();
+
+ for(clear_keybuf();!keypressed(););
+ install_joystick(JOY_TYPE_2PADS);
+
+ ClearWindow();
+ DrawText(SX+16, SY+7*32, "MOVE JOYSTICK TO",FS_BIG,FC_YELLOW);
+ DrawText(SX+16, SY+8*32, " THE UPPER LEFT ",FS_BIG,FC_YELLOW);
+ DrawText(SX+32, SY+9*32, "AND PRESS A KEY",FS_BIG,FC_YELLOW);
+ BackToFront();
+
+ for(clear_keybuf();!keypressed(););
+ calibrate_joystick(SETUP_2ND_JOYSTICK_ON(player.setup));
+
+ ClearWindow();
+ DrawText(SX+16, SY+7*32, "MOVE JOYSTICK TO",FS_BIG,FC_YELLOW);
+ DrawText(SX+32, SY+8*32, "THE LOWER RIGHT",FS_BIG,FC_YELLOW);
+ DrawText(SX+32, SY+9*32, "AND PRESS A KEY",FS_BIG,FC_YELLOW);
+ BackToFront();
+
+ for(clear_keybuf();!keypressed(););
+ calibrate_joystick(SETUP_2ND_JOYSTICK_ON(player.setup));
+
+ DrawSetupScreen();
+ return;
+#endif
+
ClearWindow();
DrawText(SX+16, SY+16, "NO JOYSTICK",FS_BIG,FC_YELLOW);
DrawText(SX+16, SY+48, " AVAILABLE ",FS_BIG,FC_YELLOW);
+ BackToFront();
Delay(3000000);
DrawSetupScreen();
}