diff --git a/src/sys/isa/atkbd.c b/src/sys/isa/atkbd.c index 5ca1c81..ae5aed4 100644 --- a/src/sys/isa/atkbd.c +++ b/src/sys/isa/atkbd.c @@ -171,8 +171,7 @@ asm( ".globl keyboardISR \n" "keyboardISR: \n" - //" pusha \n" /* Save all registers */ - //" popa \n" + " pusha \n" /* Save all registers */ " mov $0x60,%dx \n" " inb %dx,%al \n" " push %eax \n" @@ -181,7 +180,8 @@ " outb %al,%dx \n" " call keyboardHandler \n" " pop %eax \n" - " iret \n" /* Exit interrupt */ + " popa \n" + " iret \n" /* Exit interrupt */ ); void keyboardHandler(unsigned int key) { @@ -288,6 +288,9 @@ /*** $Log$ + Revision 1.10 2004/07/23 17:49:58 reddawg + atkbd: adjust the timing issue on the driver hopefully it will work fine now + Revision 1.9 2004/07/23 17:37:35 reddawg Fix diff --git a/src/sys/kernel/sched.c b/src/sys/kernel/sched.c index 839047d..5d7eaec 100644 --- a/src/sys/kernel/sched.c +++ b/src/sys/kernel/sched.c @@ -145,7 +145,7 @@ kTask_t *tmpTask = 0x0; struct tssStruct *gpfTSS = (struct tssStruct *)0x4200; - spinLock(&schedSpinLock); + //spinLock(&schedSpinLock); gpfTSS->eip = (unsigned int)&_int13; gpfTSS->esp = 0x1CFFF; @@ -190,12 +190,12 @@ ubixGDT[4].descriptor.baseHigh = (memAddr >> 24); ubixGDT[4].descriptor.access = '\x89'; - spinUnlock(&schedSpinLock); + //spinUnlock(&schedSpinLock); asm("ljmp $0x20,$0\n"); } - spinUnlock(&schedSpinLock); + //spinUnlock(&schedSpinLock); return; } @@ -211,7 +211,7 @@ return(0x0); } - spinLock(&schedTaskSpinLock); + //spinLock(&schedTaskSpinLock); /* Filling in tasks attrs */ tmpTask->usedMath = 0x0; @@ -238,7 +238,7 @@ prioLevels[_current->nice]->end->next = tmpTask; prioLevels[_current->nice]->end = tmpTask; - spinUnlock(&schedTaskSpinLock); + //spinUnlock(&schedTaskSpinLock); return(tmpTask); } @@ -338,6 +338,18 @@ /*** $Log$ + Revision 1.18 2004/07/21 10:02:09 reddawg + devfs: renamed functions + device system: renamed functions + fdc: fixed a few potential bugs and cleaned up some unused variables + strol: fixed definition + endtask: made it print out freepage debug info + kmalloc: fixed a huge memory leak we had some unhandled descriptor insertion so some descriptors were lost + ld: fixed a pointer conversion + file: cleaned up a few unused variables + sched: broke task deletion + kprintf: fixed ogPrintf definition + Revision 1.17 2004/07/20 18:58:24 reddawg Few fixes diff --git a/src/sys/sys/idt.c b/src/sys/sys/idt.c index 9857232..b5639d8 100644 --- a/src/sys/sys/idt.c +++ b/src/sys/sys/idt.c @@ -82,20 +82,20 @@ ); /* Set up the basic vectors for the reserved ints */ - setVector(_int0, 0, dPresent + dTrap + dDpl3); - setVector(_int1, 1, dPresent + dTrap + dDpl3); - setVector(_int2, 2, dPresent + dTrap + dDpl3); - setVector(_int3, 3, dPresent + dTrap + dDpl3); - setVector(_int4, 4, dPresent + dTrap + dDpl3); - setVector(_int5, 5, dPresent + dTrap + dDpl3); - setVector(_int6, 6, dPresent + dTrap + dDpl3); - setVector(_int7,7,dPresent + dTrap + dDpl3); - setVector(_int9, 9, dPresent + dTrap + dDpl3); - setVector(_int10, 10, dPresent + dTrap + dDpl3); - setVector(_int11, 11, dPresent + dTrap + dDpl3); - setVector(_int12, 12, dPresent + dTrap + dDpl3); + setVector(_int0, 0, dPresent + dInt + dDpl3); + setVector(_int1, 1, dPresent + dInt + dDpl3); + setVector(_int2, 2, dPresent + dInt + dDpl3); + setVector(_int3, 3, dPresent + dInt + dDpl3); + setVector(_int4, 4, dPresent + dInt + dDpl3); + setVector(_int5, 5, dPresent + dInt + dDpl3); + setVector(_int6, 6, dPresent + dInt + dDpl3); + setVector(_int7,7,dPresent + dInt + dDpl3); + setVector(_int9, 9, dPresent + dInt + dDpl3); + setVector(_int10, 10, dPresent + dInt + dDpl3); + setVector(_int11, 11, dPresent + dInt + dDpl3); + setVector(_int12, 12, dPresent + dInt + dDpl3); setTaskVector(13, dPresent + dTask + dDpl3, 0x38); - setVector(_vmmPageFault, 14, dPresent + dTrap + dDpl3); + setVector(_vmmPageFault, 14, dPresent + dInt + dDpl3); setVector(_sysCall, 128, dPresent + dTrap + dDpl3); setVector(_sysCallNew, 0x90, dPresent + dTrap + dDpl3); setVector(timerInt, 0x68, (dInt + dPresent + dDpl3)); @@ -427,6 +427,9 @@ /*** $Log$ + Revision 1.18 2004/07/16 04:06:32 reddawg + Tune ups this stuff should of been taken care of months ago + Revision 1.17 2004/07/09 13:16:41 reddawg idt: idtInit to idt_init Adjusted Startup Routines