⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 arch.h

📁 从网上下载的一个自己编写的简单的操作系统源代码,对底层了解很有好处的
💻 H
字号:
/*
 *   Copyright 2002.
 *
 */

 
#include <i386/i386.h>
#include <i386/io.h>

#include <types.h>
#include <stdarg.h>
                     


/*
 * @ Help macro
 *  辅助宏  
 * 
 */
#define __byte(x,y) 	(((unsigned char *)&(y))[x])


int kprintf(const char *fmt, ...);
int vsprintf(char *buf, const char *fmt, va_list args);






void delay(); 

/*
 * @vga.c
 * @doprintf.c
 */
extern int  g_row,  //row
            g_col;   //col              
extern char  g_color;         

//vga_init 初始化时清屏使用
#define INIT_BK  (uchar)0
#define INIT_COLOR (uchar)0x0a; 

//color vga ctl io port
#define VGA_CTL   0x3D4 

void live();
void cursor(int row, int col);
void setcolor(uchar );              
void newline();                    

void clear();                     
void vga_init();
void linehome();
void kputc(uchar c,uchar color,int x,int y);

/*
 * @ kbd.c  @kbdriver.c 
 *
 */
void kbdledon();
void kbdledoff();
unsigned char readchar();
int kb_reset();
void kbd_main(void);
void kbd_irq(void);


/*
 * @ irq.c 
 * 
 *    
 */
void _init_8259();
void _enirq_8259(int irq);


/*
 * @ 临时的irq 处理函数
 * @ irq.c
 *
 */
void timer(int irq);
void nop_irq(int irq);
void kbd(int irq);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -