예제 #1
0
파일: stdio.c 프로젝트: conmarap/dart
int puts(const char *s)
{
    while(*s) 
    {
        kput(*s++);
    }

    kput('\n');
    return 0;
}
예제 #2
0
파일: stream.c 프로젝트: ddpanasyuk/hleb
u8int write(FILE* f_ptr, char* buff, u32int len)
{
  int i;
  if(f_ptr->file_id == STDOUT)
    for(i = 0; i < len; i++)
      kput(buff[i]);
  return 0;
}
예제 #3
0
파일: interrupt.c 프로젝트: bytbox/wyvern
void irq_32(struct Register_State rs) {
	// Send EOI
	if (rs.int_no >= 40)
		outb(0xA0, 0x20);
	outb(0x20, 0x20);

//	if (interrupt_handlers[rs.int_no] != 0)
//	{
//	    isr_t handler = interrupt_handlers[rs.int_no];
//	    handler(rs);
//	}
	if (rs.err_code == 0) return;
	if (rs.err_code == 1) {
		uint8_t c = inb(0x60);
		if (c < 0x80)
			kput(kbdmap[c]);
		return;
	}
	kput(rs.err_code + '0');
	kwrite("IRQ");
}
예제 #4
0
파일: interrupt.c 프로젝트: bytbox/wyvern
void interrupt_32(struct Register_State rs) {
	kwrite("Interrupt!");
	kput(rs.int_no+'A');
}
예제 #5
0
void kprintf(char *c) {
    int i = 0;
    while(c[i]) {
        kput(c[i++]);
    }
}