static void delayx(uint8_t value) { int i; for(i=0;i<0x8000;i++) { outb(value, 0x80); } }
The value is the POST code and has nothing to do with the delay. So your patch changed the POST code from E8 (1000 mod 256) to 64 (100) and called the delay function ten times.
So delayx() actually sets the POST code by writing some value 32768 times, has nothing to do with delay, and the comments about delay are completely irrelevant? My brain just exploded.
Oh it certainly causes a delay -- a huge delay, irrespective of its parameter. A few millis at least.
Segher