git repos / blockattack-game

blame: source/code/ReadKeyboard.cpp

normal view · raw

89c4a3a6 sago007 2008-08-29 14:32 1
/*
89c4a3a6 sago007 2008-08-29 14:32 2
ReadKeyboard.cpp
89c4a3a6 sago007 2008-08-29 14:32 3
Copyright (C) 2005 Poul Sander
89c4a3a6 sago007 2008-08-29 14:32 4
89c4a3a6 sago007 2008-08-29 14:32 5
    This program is free software; you can redistribute it and/or modify
89c4a3a6 sago007 2008-08-29 14:32 6
    it under the terms of the GNU General Public License as published by
89c4a3a6 sago007 2008-08-29 14:32 7
    the Free Software Foundation; either version 2 of the License, or
89c4a3a6 sago007 2008-08-29 14:32 8
    (at your option) any later version.
89c4a3a6 sago007 2008-08-29 14:32 9
89c4a3a6 sago007 2008-08-29 14:32 10
    This program is distributed in the hope that it will be useful,
89c4a3a6 sago007 2008-08-29 14:32 11
    but WITHOUT ANY WARRANTY; without even the implied warranty of
89c4a3a6 sago007 2008-08-29 14:32 12
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
89c4a3a6 sago007 2008-08-29 14:32 13
    GNU General Public License for more details.
89c4a3a6 sago007 2008-08-29 14:32 14
89c4a3a6 sago007 2008-08-29 14:32 15
    You should have received a copy of the GNU General Public License
89c4a3a6 sago007 2008-08-29 14:32 16
    along with this program; if not, write to the Free Software
89c4a3a6 sago007 2008-08-29 14:32 17
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
89c4a3a6 sago007 2008-08-29 14:32 18
89c4a3a6 sago007 2008-08-29 14:32 19
    Poul Sander
89c4a3a6 sago007 2008-08-29 14:32 20
    R�veh�jvej 36, V. 1111
89c4a3a6 sago007 2008-08-29 14:32 21
    2800 Kgs. Lyngby
89c4a3a6 sago007 2008-08-29 14:32 22
    DENMARK
89c4a3a6 sago007 2008-08-29 14:32 23
    blockattack@poulsander.com
89c4a3a6 sago007 2008-08-29 14:32 24
*/
89c4a3a6 sago007 2008-08-29 14:32 25
89c4a3a6 sago007 2008-08-29 14:32 26
#include "ReadKeyboard.h"
89c4a3a6 sago007 2008-08-29 14:32 27
89c4a3a6 sago007 2008-08-29 14:32 28
ReadKeyboard::ReadKeyboard(void)
89c4a3a6 sago007 2008-08-29 14:32 29
{
89c4a3a6 sago007 2008-08-29 14:32 30
    length = 0;
89c4a3a6 sago007 2008-08-29 14:32 31
    maxLength = 16;
89c4a3a6 sago007 2008-08-29 14:32 32
    position = 0;
89c4a3a6 sago007 2008-08-29 14:32 33
    strcpy(textstring,"                              ");
89c4a3a6 sago007 2008-08-29 14:32 34
}
89c4a3a6 sago007 2008-08-29 14:32 35
89c4a3a6 sago007 2008-08-29 14:32 36
ReadKeyboard::~ReadKeyboard(void)
89c4a3a6 sago007 2008-08-29 14:32 37
{
89c4a3a6 sago007 2008-08-29 14:32 38
}
89c4a3a6 sago007 2008-08-29 14:32 39
89c4a3a6 sago007 2008-08-29 14:32 40
Uint8 ReadKeyboard::CharsBeforeCursor()
89c4a3a6 sago007 2008-08-29 14:32 41
{
89c4a3a6 sago007 2008-08-29 14:32 42
    return position;
89c4a3a6 sago007 2008-08-29 14:32 43
}
89c4a3a6 sago007 2008-08-29 14:32 44
89c4a3a6 sago007 2008-08-29 14:32 45
ReadKeyboard::ReadKeyboard(char *oldName)
89c4a3a6 sago007 2008-08-29 14:32 46
{
89c4a3a6 sago007 2008-08-29 14:32 47
    length = 0;
89c4a3a6 sago007 2008-08-29 14:32 48
    maxLength = 16;
89c4a3a6 sago007 2008-08-29 14:32 49
    position = 0;
89c4a3a6 sago007 2008-08-29 14:32 50
    strcpy(textstring,"                              ");
89c4a3a6 sago007 2008-08-29 14:32 51
    strcpy(textstring,oldName);
89c4a3a6 sago007 2008-08-29 14:32 52
    char charecter = textstring[maxLength+1];
89c4a3a6 sago007 2008-08-29 14:32 53
    int i = maxLength+1;
89c4a3a6 sago007 2008-08-29 14:32 54
    while ((charecter == ' ') && (i>0))
89c4a3a6 sago007 2008-08-29 14:32 55
    {
89c4a3a6 sago007 2008-08-29 14:32 56
        i--;
89c4a3a6 sago007 2008-08-29 14:32 57
        charecter = textstring[i];
89c4a3a6 sago007 2008-08-29 14:32 58
    }
89c4a3a6 sago007 2008-08-29 14:32 59
    if (i>0)length = i+1;
89c4a3a6 sago007 2008-08-29 14:32 60
    else
89c4a3a6 sago007 2008-08-29 14:32 61
        if (charecter == ' ') length = 0;
89c4a3a6 sago007 2008-08-29 14:32 62
        else length = 1;
89c4a3a6 sago007 2008-08-29 14:32 63
    position = length;
89c4a3a6 sago007 2008-08-29 14:32 64
89c4a3a6 sago007 2008-08-29 14:32 65
}
89c4a3a6 sago007 2008-08-29 14:32 66
89c4a3a6 sago007 2008-08-29 14:32 67
89c4a3a6 sago007 2008-08-29 14:32 68
void ReadKeyboard::putchar(char thing)
89c4a3a6 sago007 2008-08-29 14:32 69
{
89c4a3a6 sago007 2008-08-29 14:32 70
    if (length < maxLength)
89c4a3a6 sago007 2008-08-29 14:32 71
    {
89c4a3a6 sago007 2008-08-29 14:32 72
        for (int i = 28; i>position;i--)
89c4a3a6 sago007 2008-08-29 14:32 73
        {
89c4a3a6 sago007 2008-08-29 14:32 74
            textstring[i]=textstring[i-1];
89c4a3a6 sago007 2008-08-29 14:32 75
        }
89c4a3a6 sago007 2008-08-29 14:32 76
        textstring[position] = thing;
89c4a3a6 sago007 2008-08-29 14:32 77
        length++;
89c4a3a6 sago007 2008-08-29 14:32 78
        position++;
89c4a3a6 sago007 2008-08-29 14:32 79
    }
89c4a3a6 sago007 2008-08-29 14:32 80
}
89c4a3a6 sago007 2008-08-29 14:32 81
89c4a3a6 sago007 2008-08-29 14:32 82
89c4a3a6 sago007 2008-08-29 14:32 83
void ReadKeyboard::removeChar()
89c4a3a6 sago007 2008-08-29 14:32 84
{
89c4a3a6 sago007 2008-08-29 14:32 85
    for (int i = position;i<28;i++)
89c4a3a6 sago007 2008-08-29 14:32 86
    {
89c4a3a6 sago007 2008-08-29 14:32 87
        textstring[i]=textstring[i+1];
89c4a3a6 sago007 2008-08-29 14:32 88
    }
89c4a3a6 sago007 2008-08-29 14:32 89
    textstring[28]=' ';
89c4a3a6 sago007 2008-08-29 14:32 90
    if (length>0)length--;
89c4a3a6 sago007 2008-08-29 14:32 91
}
89c4a3a6 sago007 2008-08-29 14:32 92
89c4a3a6 sago007 2008-08-29 14:32 93
bool ReadKeyboard::ReadKey(SDLKey keyPressed)
89c4a3a6 sago007 2008-08-29 14:32 94
{
89c4a3a6 sago007 2008-08-29 14:32 95
    if (keyPressed == SDLK_SPACE)
89c4a3a6 sago007 2008-08-29 14:32 96
    {
89c4a3a6 sago007 2008-08-29 14:32 97
        ReadKeyboard::putchar(' ');
89c4a3a6 sago007 2008-08-29 14:32 98
        return true;
89c4a3a6 sago007 2008-08-29 14:32 99
    }
89c4a3a6 sago007 2008-08-29 14:32 100
    if (keyPressed == SDLK_DELETE)
89c4a3a6 sago007 2008-08-29 14:32 101
    {
89c4a3a6 sago007 2008-08-29 14:32 102
        if ((length>0)&& (position<length))ReadKeyboard::removeChar();
89c4a3a6 sago007 2008-08-29 14:32 103
        return true;
89c4a3a6 sago007 2008-08-29 14:32 104
    }
89c4a3a6 sago007 2008-08-29 14:32 105
    if (keyPressed == SDLK_BACKSPACE)
89c4a3a6 sago007 2008-08-29 14:32 106
    {
89c4a3a6 sago007 2008-08-29 14:32 107
        if (position>0)
89c4a3a6 sago007 2008-08-29 14:32 108
        {
89c4a3a6 sago007 2008-08-29 14:32 109
            position--;
89c4a3a6 sago007 2008-08-29 14:32 110
            ReadKeyboard::removeChar();
89c4a3a6 sago007 2008-08-29 14:32 111
            return true;
89c4a3a6 sago007 2008-08-29 14:32 112
        }
89c4a3a6 sago007 2008-08-29 14:32 113
        return false;
89c4a3a6 sago007 2008-08-29 14:32 114
    }
89c4a3a6 sago007 2008-08-29 14:32 115
    Uint8* keys;
89c4a3a6 sago007 2008-08-29 14:32 116
    keys = SDL_GetKeyState(NULL);
89c4a3a6 sago007 2008-08-29 14:32 117
    if (keyPressed == SDLK_HOME)
89c4a3a6 sago007 2008-08-29 14:32 118
    {
89c4a3a6 sago007 2008-08-29 14:32 119
        position=0;
89c4a3a6 sago007 2008-08-29 14:32 120
        return true;
89c4a3a6 sago007 2008-08-29 14:32 121
    }
89c4a3a6 sago007 2008-08-29 14:32 122
    if (keyPressed == SDLK_END)
89c4a3a6 sago007 2008-08-29 14:32 123
    {
89c4a3a6 sago007 2008-08-29 14:32 124
        position=length;
89c4a3a6 sago007 2008-08-29 14:32 125
        return true;
89c4a3a6 sago007 2008-08-29 14:32 126
    }
89c4a3a6 sago007 2008-08-29 14:32 127
    if ((keyPressed == SDLK_LEFT) && (position>0))
89c4a3a6 sago007 2008-08-29 14:32 128
    {
89c4a3a6 sago007 2008-08-29 14:32 129
        position--;
89c4a3a6 sago007 2008-08-29 14:32 130
        return true;
89c4a3a6 sago007 2008-08-29 14:32 131
    }
89c4a3a6 sago007 2008-08-29 14:32 132
    if ((keyPressed == SDLK_RIGHT) && (position<length))
89c4a3a6 sago007 2008-08-29 14:32 133
    {
89c4a3a6 sago007 2008-08-29 14:32 134
        position++;
89c4a3a6 sago007 2008-08-29 14:32 135
        return true;
89c4a3a6 sago007 2008-08-29 14:32 136
    }
89c4a3a6 sago007 2008-08-29 14:32 137
    char charToPut;
89c4a3a6 sago007 2008-08-29 14:32 138
    switch (keyPressed)
89c4a3a6 sago007 2008-08-29 14:32 139
    {
89c4a3a6 sago007 2008-08-29 14:32 140
    case SDLK_a:
89c4a3a6 sago007 2008-08-29 14:32 141
        charToPut = 'a';
89c4a3a6 sago007 2008-08-29 14:32 142
        break;
89c4a3a6 sago007 2008-08-29 14:32 143
    case SDLK_b:
89c4a3a6 sago007 2008-08-29 14:32 144
        charToPut = 'b';
89c4a3a6 sago007 2008-08-29 14:32 145
        break;
89c4a3a6 sago007 2008-08-29 14:32 146
    case SDLK_c:
89c4a3a6 sago007 2008-08-29 14:32 147
        charToPut = 'c';
89c4a3a6 sago007 2008-08-29 14:32 148
        break;
89c4a3a6 sago007 2008-08-29 14:32 149
    case SDLK_d:
89c4a3a6 sago007 2008-08-29 14:32 150
        charToPut = 'd';
89c4a3a6 sago007 2008-08-29 14:32 151
        break;
89c4a3a6 sago007 2008-08-29 14:32 152
    case SDLK_e:
89c4a3a6 sago007 2008-08-29 14:32 153
        charToPut = 'e';
89c4a3a6 sago007 2008-08-29 14:32 154
        break;
89c4a3a6 sago007 2008-08-29 14:32 155
    case SDLK_f:
89c4a3a6 sago007 2008-08-29 14:32 156
        charToPut = 'f';
89c4a3a6 sago007 2008-08-29 14:32 157
        break;
89c4a3a6 sago007 2008-08-29 14:32 158
    case SDLK_g:
89c4a3a6 sago007 2008-08-29 14:32 159
        charToPut = 'g';
89c4a3a6 sago007 2008-08-29 14:32 160
        break;
89c4a3a6 sago007 2008-08-29 14:32 161
    case SDLK_h:
89c4a3a6 sago007 2008-08-29 14:32 162
        charToPut = 'h';
89c4a3a6 sago007 2008-08-29 14:32 163
        break;
89c4a3a6 sago007 2008-08-29 14:32 164
    case SDLK_i:
89c4a3a6 sago007 2008-08-29 14:32 165
        charToPut = 'i';
89c4a3a6 sago007 2008-08-29 14:32 166
        break;
89c4a3a6 sago007 2008-08-29 14:32 167
    case SDLK_j:
89c4a3a6 sago007 2008-08-29 14:32 168
        charToPut = 'j';
89c4a3a6 sago007 2008-08-29 14:32 169
        break;
89c4a3a6 sago007 2008-08-29 14:32 170
    case SDLK_k:
89c4a3a6 sago007 2008-08-29 14:32 171
        charToPut = 'k';
89c4a3a6 sago007 2008-08-29 14:32 172
        break;
89c4a3a6 sago007 2008-08-29 14:32 173
    case SDLK_l:
89c4a3a6 sago007 2008-08-29 14:32 174
        charToPut = 'l';
89c4a3a6 sago007 2008-08-29 14:32 175
        break;
89c4a3a6 sago007 2008-08-29 14:32 176
    case SDLK_m:
89c4a3a6 sago007 2008-08-29 14:32 177
        charToPut = 'm';
89c4a3a6 sago007 2008-08-29 14:32 178
        break;
89c4a3a6 sago007 2008-08-29 14:32 179
    case SDLK_n:
89c4a3a6 sago007 2008-08-29 14:32 180
        charToPut = 'n';
89c4a3a6 sago007 2008-08-29 14:32 181
        break;
89c4a3a6 sago007 2008-08-29 14:32 182
    case SDLK_o:
89c4a3a6 sago007 2008-08-29 14:32 183
        charToPut = 'o';
89c4a3a6 sago007 2008-08-29 14:32 184
        break;
89c4a3a6 sago007 2008-08-29 14:32 185
    case SDLK_p:
89c4a3a6 sago007 2008-08-29 14:32 186
        charToPut = 'p';
89c4a3a6 sago007 2008-08-29 14:32 187
        break;
89c4a3a6 sago007 2008-08-29 14:32 188
    case SDLK_q:
89c4a3a6 sago007 2008-08-29 14:32 189
        charToPut = 'q';
89c4a3a6 sago007 2008-08-29 14:32 190
        break;
89c4a3a6 sago007 2008-08-29 14:32 191
    case SDLK_r:
89c4a3a6 sago007 2008-08-29 14:32 192
        charToPut = 'r';
89c4a3a6 sago007 2008-08-29 14:32 193
        break;
89c4a3a6 sago007 2008-08-29 14:32 194
    case SDLK_s:
89c4a3a6 sago007 2008-08-29 14:32 195
        charToPut = 's';
89c4a3a6 sago007 2008-08-29 14:32 196
        break;
89c4a3a6 sago007 2008-08-29 14:32 197
    case SDLK_t:
89c4a3a6 sago007 2008-08-29 14:32 198
        charToPut = 't';
89c4a3a6 sago007 2008-08-29 14:32 199
        break;
89c4a3a6 sago007 2008-08-29 14:32 200
    case SDLK_u:
89c4a3a6 sago007 2008-08-29 14:32 201
        charToPut = 'u';
89c4a3a6 sago007 2008-08-29 14:32 202
        break;
89c4a3a6 sago007 2008-08-29 14:32 203
    case SDLK_v:
89c4a3a6 sago007 2008-08-29 14:32 204
        charToPut = 'v';
89c4a3a6 sago007 2008-08-29 14:32 205
        break;
89c4a3a6 sago007 2008-08-29 14:32 206
    case SDLK_w:
89c4a3a6 sago007 2008-08-29 14:32 207
        charToPut = 'w';
89c4a3a6 sago007 2008-08-29 14:32 208
        break;
89c4a3a6 sago007 2008-08-29 14:32 209
    case SDLK_x:
89c4a3a6 sago007 2008-08-29 14:32 210
        charToPut = 'x';
89c4a3a6 sago007 2008-08-29 14:32 211
        break;
89c4a3a6 sago007 2008-08-29 14:32 212
    case SDLK_y:
89c4a3a6 sago007 2008-08-29 14:32 213
        charToPut = 'y';
89c4a3a6 sago007 2008-08-29 14:32 214
        break;
89c4a3a6 sago007 2008-08-29 14:32 215
    case SDLK_z:
89c4a3a6 sago007 2008-08-29 14:32 216
        charToPut = 'z';
89c4a3a6 sago007 2008-08-29 14:32 217
        break;
89c4a3a6 sago007 2008-08-29 14:32 218
    case SDLK_0:
89c4a3a6 sago007 2008-08-29 14:32 219
        charToPut = '0';
89c4a3a6 sago007 2008-08-29 14:32 220
        break;
89c4a3a6 sago007 2008-08-29 14:32 221
    case SDLK_1:
89c4a3a6 sago007 2008-08-29 14:32 222
        charToPut = '1';
89c4a3a6 sago007 2008-08-29 14:32 223
        break;
89c4a3a6 sago007 2008-08-29 14:32 224
    case SDLK_2:
89c4a3a6 sago007 2008-08-29 14:32 225
        charToPut = '2';
89c4a3a6 sago007 2008-08-29 14:32 226
        break;
89c4a3a6 sago007 2008-08-29 14:32 227
    case SDLK_3:
89c4a3a6 sago007 2008-08-29 14:32 228
        charToPut = '3';
89c4a3a6 sago007 2008-08-29 14:32 229
        break;
89c4a3a6 sago007 2008-08-29 14:32 230
    case SDLK_4:
89c4a3a6 sago007 2008-08-29 14:32 231
        charToPut = '4';
89c4a3a6 sago007 2008-08-29 14:32 232
        break;
89c4a3a6 sago007 2008-08-29 14:32 233
    case SDLK_5:
89c4a3a6 sago007 2008-08-29 14:32 234
        charToPut = '5';
89c4a3a6 sago007 2008-08-29 14:32 235
        break;
89c4a3a6 sago007 2008-08-29 14:32 236
    case SDLK_6:
89c4a3a6 sago007 2008-08-29 14:32 237
        charToPut = '6';
89c4a3a6 sago007 2008-08-29 14:32 238
        break;
89c4a3a6 sago007 2008-08-29 14:32 239
    case SDLK_7:
89c4a3a6 sago007 2008-08-29 14:32 240
        charToPut = '7';
89c4a3a6 sago007 2008-08-29 14:32 241
        break;
89c4a3a6 sago007 2008-08-29 14:32 242
    case SDLK_8:
89c4a3a6 sago007 2008-08-29 14:32 243
        charToPut = '8';
89c4a3a6 sago007 2008-08-29 14:32 244
        break;
89c4a3a6 sago007 2008-08-29 14:32 245
    case SDLK_9:
89c4a3a6 sago007 2008-08-29 14:32 246
        charToPut = '9';
89c4a3a6 sago007 2008-08-29 14:32 247
        break;
89c4a3a6 sago007 2008-08-29 14:32 248
    case SDLK_KP0:
89c4a3a6 sago007 2008-08-29 14:32 249
        charToPut = '0';
89c4a3a6 sago007 2008-08-29 14:32 250
        break;
89c4a3a6 sago007 2008-08-29 14:32 251
    case SDLK_KP1:
89c4a3a6 sago007 2008-08-29 14:32 252
        charToPut = '1';
89c4a3a6 sago007 2008-08-29 14:32 253
        break;
89c4a3a6 sago007 2008-08-29 14:32 254
    case SDLK_KP2:
89c4a3a6 sago007 2008-08-29 14:32 255
        charToPut = '2';
89c4a3a6 sago007 2008-08-29 14:32 256
        break;
89c4a3a6 sago007 2008-08-29 14:32 257
    case SDLK_KP3:
89c4a3a6 sago007 2008-08-29 14:32 258
        charToPut = '3';
89c4a3a6 sago007 2008-08-29 14:32 259
        break;
89c4a3a6 sago007 2008-08-29 14:32 260
    case SDLK_KP4:
89c4a3a6 sago007 2008-08-29 14:32 261
        charToPut = '4';
89c4a3a6 sago007 2008-08-29 14:32 262
        break;
89c4a3a6 sago007 2008-08-29 14:32 263
    case SDLK_KP5:
89c4a3a6 sago007 2008-08-29 14:32 264
        charToPut = '5';
89c4a3a6 sago007 2008-08-29 14:32 265
        break;
89c4a3a6 sago007 2008-08-29 14:32 266
    case SDLK_KP6:
89c4a3a6 sago007 2008-08-29 14:32 267
        charToPut = '6';
89c4a3a6 sago007 2008-08-29 14:32 268
        break;
89c4a3a6 sago007 2008-08-29 14:32 269
    case SDLK_KP7:
89c4a3a6 sago007 2008-08-29 14:32 270
        charToPut = '7';
89c4a3a6 sago007 2008-08-29 14:32 271
        break;
89c4a3a6 sago007 2008-08-29 14:32 272
    case SDLK_KP8:
89c4a3a6 sago007 2008-08-29 14:32 273
        charToPut = '8';
89c4a3a6 sago007 2008-08-29 14:32 274
        break;
89c4a3a6 sago007 2008-08-29 14:32 275
    case SDLK_KP9:
89c4a3a6 sago007 2008-08-29 14:32 276
        charToPut = '9';
89c4a3a6 sago007 2008-08-29 14:32 277
        break;
89c4a3a6 sago007 2008-08-29 14:32 278
    case SDLK_KP_PERIOD:
89c4a3a6 sago007 2008-08-29 14:32 279
    case SDLK_PERIOD:
89c4a3a6 sago007 2008-08-29 14:32 280
        charToPut='.';
89c4a3a6 sago007 2008-08-29 14:32 281
        break;
89c4a3a6 sago007 2008-08-29 14:32 282
    default:
89c4a3a6 sago007 2008-08-29 14:32 283
        return false;
89c4a3a6 sago007 2008-08-29 14:32 284
    }
89c4a3a6 sago007 2008-08-29 14:32 285
    if ((keys[SDLK_LSHIFT]) || (keys[SDLK_RSHIFT]))
89c4a3a6 sago007 2008-08-29 14:32 286
    {
89c4a3a6 sago007 2008-08-29 14:32 287
        switch (charToPut)
89c4a3a6 sago007 2008-08-29 14:32 288
        {
89c4a3a6 sago007 2008-08-29 14:32 289
        case 'a':
89c4a3a6 sago007 2008-08-29 14:32 290
            charToPut = 'A';
89c4a3a6 sago007 2008-08-29 14:32 291
            break;
89c4a3a6 sago007 2008-08-29 14:32 292
        case 'b':
89c4a3a6 sago007 2008-08-29 14:32 293
            charToPut = 'B';
89c4a3a6 sago007 2008-08-29 14:32 294
            break;
89c4a3a6 sago007 2008-08-29 14:32 295
        case 'c':
89c4a3a6 sago007 2008-08-29 14:32 296
            charToPut = 'C';
89c4a3a6 sago007 2008-08-29 14:32 297
            break;
89c4a3a6 sago007 2008-08-29 14:32 298
        case 'd':
89c4a3a6 sago007 2008-08-29 14:32 299
            charToPut = 'D';
89c4a3a6 sago007 2008-08-29 14:32 300
            break;
89c4a3a6 sago007 2008-08-29 14:32 301
        case 'e':
89c4a3a6 sago007 2008-08-29 14:32 302
            charToPut = 'E';
89c4a3a6 sago007 2008-08-29 14:32 303
            break;
89c4a3a6 sago007 2008-08-29 14:32 304
        case 'f':
89c4a3a6 sago007 2008-08-29 14:32 305
            charToPut = 'F';
89c4a3a6 sago007 2008-08-29 14:32 306
            break;
89c4a3a6 sago007 2008-08-29 14:32 307
        case 'g':
89c4a3a6 sago007 2008-08-29 14:32 308
            charToPut = 'G';
89c4a3a6 sago007 2008-08-29 14:32 309
            break;
89c4a3a6 sago007 2008-08-29 14:32 310
        case 'h':
89c4a3a6 sago007 2008-08-29 14:32 311
            charToPut = 'H';
89c4a3a6 sago007 2008-08-29 14:32 312
            break;
89c4a3a6 sago007 2008-08-29 14:32 313
        case 'i':
89c4a3a6 sago007 2008-08-29 14:32 314
            charToPut = 'I';
89c4a3a6 sago007 2008-08-29 14:32 315
            break;
89c4a3a6 sago007 2008-08-29 14:32 316
        case 'j':
89c4a3a6 sago007 2008-08-29 14:32 317
            charToPut = 'J';
89c4a3a6 sago007 2008-08-29 14:32 318
            break;
89c4a3a6 sago007 2008-08-29 14:32 319
        case 'k':
89c4a3a6 sago007 2008-08-29 14:32 320
            charToPut = 'K';
89c4a3a6 sago007 2008-08-29 14:32 321
            break;
89c4a3a6 sago007 2008-08-29 14:32 322
        case 'l':
89c4a3a6 sago007 2008-08-29 14:32 323
            charToPut = 'L';
89c4a3a6 sago007 2008-08-29 14:32 324
            break;
89c4a3a6 sago007 2008-08-29 14:32 325
        case 'm':
89c4a3a6 sago007 2008-08-29 14:32 326
            charToPut = 'M';
89c4a3a6 sago007 2008-08-29 14:32 327
            break;
89c4a3a6 sago007 2008-08-29 14:32 328
        case 'n':
89c4a3a6 sago007 2008-08-29 14:32 329
            charToPut = 'N';
89c4a3a6 sago007 2008-08-29 14:32 330
            break;
89c4a3a6 sago007 2008-08-29 14:32 331
        case 'o':
89c4a3a6 sago007 2008-08-29 14:32 332
            charToPut = 'O';
89c4a3a6 sago007 2008-08-29 14:32 333
            break;
89c4a3a6 sago007 2008-08-29 14:32 334
        case 'p':
89c4a3a6 sago007 2008-08-29 14:32 335
            charToPut = 'P';
89c4a3a6 sago007 2008-08-29 14:32 336
            break;
89c4a3a6 sago007 2008-08-29 14:32 337
        case 'q':
89c4a3a6 sago007 2008-08-29 14:32 338
            charToPut = 'Q';
89c4a3a6 sago007 2008-08-29 14:32 339
            break;
89c4a3a6 sago007 2008-08-29 14:32 340
        case 'r':
89c4a3a6 sago007 2008-08-29 14:32 341
            charToPut = 'R';
89c4a3a6 sago007 2008-08-29 14:32 342
            break;
89c4a3a6 sago007 2008-08-29 14:32 343
        case 's':
89c4a3a6 sago007 2008-08-29 14:32 344
            charToPut = 'S';
89c4a3a6 sago007 2008-08-29 14:32 345
            break;
89c4a3a6 sago007 2008-08-29 14:32 346
        case 't':
89c4a3a6 sago007 2008-08-29 14:32 347
            charToPut = 'T';
89c4a3a6 sago007 2008-08-29 14:32 348
            break;
89c4a3a6 sago007 2008-08-29 14:32 349
        case 'u':
89c4a3a6 sago007 2008-08-29 14:32 350
            charToPut = 'U';
89c4a3a6 sago007 2008-08-29 14:32 351
            break;
89c4a3a6 sago007 2008-08-29 14:32 352
        case 'v':
89c4a3a6 sago007 2008-08-29 14:32 353
            charToPut = 'V';
89c4a3a6 sago007 2008-08-29 14:32 354
            break;
89c4a3a6 sago007 2008-08-29 14:32 355
        case 'w':
89c4a3a6 sago007 2008-08-29 14:32 356
            charToPut = 'W';
89c4a3a6 sago007 2008-08-29 14:32 357
            break;
89c4a3a6 sago007 2008-08-29 14:32 358
        case 'x':
89c4a3a6 sago007 2008-08-29 14:32 359
            charToPut = 'X';
89c4a3a6 sago007 2008-08-29 14:32 360
            break;
89c4a3a6 sago007 2008-08-29 14:32 361
        case 'y':
89c4a3a6 sago007 2008-08-29 14:32 362
            charToPut = 'Y';
89c4a3a6 sago007 2008-08-29 14:32 363
            break;
89c4a3a6 sago007 2008-08-29 14:32 364
        case 'z':
89c4a3a6 sago007 2008-08-29 14:32 365
            charToPut = 'Z';
89c4a3a6 sago007 2008-08-29 14:32 366
            break;
89c4a3a6 sago007 2008-08-29 14:32 367
89c4a3a6 sago007 2008-08-29 14:32 368
        default:
89c4a3a6 sago007 2008-08-29 14:32 369
            charToPut = charToPut;
89c4a3a6 sago007 2008-08-29 14:32 370
        }
89c4a3a6 sago007 2008-08-29 14:32 371
    }
89c4a3a6 sago007 2008-08-29 14:32 372
    ReadKeyboard::putchar(charToPut);
89c4a3a6 sago007 2008-08-29 14:32 373
    return true;
89c4a3a6 sago007 2008-08-29 14:32 374
}
89c4a3a6 sago007 2008-08-29 14:32 375
89c4a3a6 sago007 2008-08-29 14:32 376
char* ReadKeyboard::GetString()
89c4a3a6 sago007 2008-08-29 14:32 377
{
89c4a3a6 sago007 2008-08-29 14:32 378
    textstring[29]='\0';
89c4a3a6 sago007 2008-08-29 14:32 379
    return &textstring[0];
89c4a3a6 sago007 2008-08-29 14:32 380
}
1970-01-01 00:00 381