feat: ajout d'un fonction Waitascii Ajout de la gestion multiconsole

This commit is contained in:
Nicolas Hordé 2007-04-02 14:16:14 +00:00
parent cd78773ee6
commit 77d4211556
1 changed files with 305 additions and 293 deletions

View File

@ -6,7 +6,7 @@
#include "video.h" #include "video.h"
static u8 bufferscan[256]; static u8 bufferscan[256]={0};
static u8 bufferascii[256]={0}; static u8 bufferascii[256]={0};
static u8 ptrscan=0; static u8 ptrscan=0;
static u8 ptrascii=0; static u8 ptrascii=0;
@ -92,7 +92,14 @@ static const u8 set1_ctrl[] =
'2', '3','0','.',0, 0, 0, 0, '2', '3','0','.',0, 0, 0, 0,
0 0
}; };
/******************************************************************************/
u8 waitascii()
{
u8 oldptrascii=ptrascii;
while(oldptrascii==ptrascii) {};
return bufferascii[ptrascii];
}
/******************************************************************************/ /******************************************************************************/
@ -182,6 +189,11 @@ unsigned convert(u32 keypressed)
return 0; return 0;
} }
if ((key >= SCAN_F1) && (key <= SCAN_F8))
{
changevc(key-SCAN_F1);
}
/* Scroll Lock, Num Lock, and Caps Lock mise a jour des leds */ /* Scroll Lock, Num Lock, and Caps Lock mise a jour des leds */
if(key == SCAN_SCROLLLOCK) if(key == SCAN_SCROLLLOCK)
{ {
@ -259,7 +271,7 @@ if ((bufferscan[lastscan]==0xE0)||((kbdstatus & STATUS_NUM)&&(key>=0x47)&&(key<=
if(temp == 0) return temp; if(temp == 0) return temp;
/* Appuie de CRTL + ALT + SUPR ? */ /* Appuie de CRTL + ALT + SUPR ? */
if((kbdstatus & STATUS_CTRL) && (kbdstatus & STATUS_ALT) && if((kbdstatus & STATUS_CTRL) && (kbdstatus & STATUS_ALT) &&
(temp == KEY_DEL)) (key == 76))
{ {
print("redemarrage du systeme"); print("redemarrage du systeme");
reboot(); reboot();
@ -280,7 +292,7 @@ scancode=inb(0x60);
ascii = convert(scancode); ascii = convert(scancode);
if(ascii != 0) if(ascii != 0)
{ {
putchar(ascii); /*putchar(ascii);*/
ptrascii++; ptrascii++;
if (ptrascii==255) ptrascii==0; if (ptrascii==255) ptrascii==0;
bufferascii[ptrascii]=ascii; bufferascii[ptrascii]=ascii;