📄 general.h
字号:
///////////////////////////////////////////////////////////
#define NULL 0
///////////////////////////////////////////////////////////
#define MINUTE 60
#define HOUR (60 * MINUTE)
#define DAY (24 * HOUR)
#define YEAR (365 * DAY)
///////////////////////////////////////////////////////////
#define SCREEN_START 0xb8000
///////////////////////////////////////////////////////////
#define PAGE_SIZE 4096
#define LOW_MEM 0x200000 ///have problem!!!
#define HIGH_MEM 0x400000 ///have problem!!!
#define PAGING_PAGES ((HIGH_MEM - LOW_MEM) / 4096)
///////////////////////////////////////////////////////////
#define NR_HASH 256
#define BLOCK_SIZE 1024
#define BUFFER_START 0x200000
#define BUFFER_END 0x800000
#define SYNC_BUFFERS 64
///////////////////////////////////////////////////////////
#define SECTOR_SIZE 512
///////////////////////////////////////////////////////////
#define O_EXEONLY 0x01
#define O_RDONLY 0x02
#define O_WRONLY 0x04
#define O_RDWR 0x06
#define O_CREAT 0x08
#define O_EXCL 0x10
#define O_TRUNC 0x20
#define O_APPEND 0x40
#define I_EXE 0x01
#define I_READ 0x02
#define I_WRITE 0x04
#define I_REGULAR 0x40
#define I_DIRECTORY 0x80
///////////////////////////////////////////////////////////
#define NR_INODE 64
#define INODES_PER_BLOCK 16
///////////////////////////////////////////////////////////
#define NAME_LEN 12
#define DIR_ENTRIES_PER_BLOCK 64
///////////////////////////////////////////////////////////
#define NR_FILE 64
///////////////////////////////////////////////////////////
#define HD_TYPE { 16,255,19710,0,19710,8 }
///////////////////////////////////////////////////////////
#define NR_SUPER 26
#define SUPER_MAGIC 0x19680124
///////////////////////////////////////////////////////////
#define NR_REQUEST 64
#define HD_DATA 0x1f0
#define HD_ERROR 0x1f1
#define HD_NSECTOR 0x1f2
#define HD_SECTOR 0x1f3
#define HD_LCYL 0x1f4
#define HD_HCYL 0x1f5
#define HD_CURRENT 0x1f6
#define HD_STATUS 0x1f7
#define HD_PRECOMP HD_ERROR
#define HD_COMMAND HD_STATUS
#define HD_CMD 0x3f6
#define ERR_STAT 0x01
#define INDEX_STAT 0x02
#define ECC_STAT 0x04
#define DRQ_STAT 0x08
#define SEEK_STAT 0x10
#define WRERR_STAT 0x20
#define READY_STAT 0x40
#define BUSY_STAT 0x80
#define WIN_RESTORE 0x10
#define WIN_READ 0x20
#define WIN_WRITE 0x30
#define WIN_VERIFY 0x40
#define WIN_FORMAT 0x50
#define WIN_INIT 0x60
#define WIN_SEEK 0x70
#define WIN_DIAGNOSE 0x90
#define WIN_SPECIFY 0x91
///////////////////////////////////////////////////////////
#define MSDOS_ROOT_INO 1
#define MSDOS_NAME_LEN 11
#define FAT_CACHE 64
///////////////////////////////////////////////////////////
#define IO_DMA_BASE 0x00
#define DMA_ADDR_0 0x00
#define DMA_CNT_0 0x01
#define DMA_ADDR_1 0x02
#define DMA_CNT_1 0x03
#define DMA_ADDR_2 0x04
#define DMA_CNT_2 0x05
#define DMA_ADDR_3 0x06
#define DMA_CNT_3 0x07
#define DMA_CMD_REG 0x08
#define DMA_STAT_REG 0x08
#define DMA_REQ_REG 0x09
#define DMA_MASK_REG 0x0A
#define DMA_MODE_REG 0x0B
#define DMA_CLEAR_FF_REG 0x0C
#define DMA_RESET_REG 0x0D
#define DMA_TEMP_REG 0x0D
#define DMA_CLR_MASK_REG 0x0E
#define DMA_MASK_ALL_REG 0x0F
#define DMA_PAGE_0 0x87
#define DMA_PAGE_1 0x83
#define DMA_PAGE_2 0x81
#define DMA_PAGE_3 0x82
#define DMA_MODE_READ 0x46
#define DMA_MODE_WRITE 0x4A
///////////////////////////////////////////////////////////
#define FD_DOR 0x3F2
#define FD_STATUS 0x3F4
#define FD_DATA 0x3F5
#define FD_DIR 0x3F7
#define FD_DCR 0x3F7
#define STATUS_BUSYMASK 0x0F
#define STATUS_BUSY 0x10
#define STATUS_DMA 0x20
#define STATUS_DIR 0x40
#define STATUS_READY 0x80
#define FD_SPECIFY 0x03
#define FD_RECALIBRATE 0x07
#define FD_SEEK 0x0F
#define FD_SENSEI 0x08
#define FD_READ 0xE6
#define FD_WRITE 0xC5
#define FD_FORMAT 0x4D
///////////////////////////////////////////////////////////
#define FD_DRIVER_UP 50
#define FD_DRIVER_DOWN 300
///////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////!!!!!
///////////////////////////////////////////////////////////!!!!!
#define PT_NULL 0
#define PT_LOAD 1
#define PT_DYNAMIC 2
#define PT_INTERP 3
#define PT_NOTE 4
#define PT_SHLIB 5
#define PT_PHDR 6
#define PT_LOPROC 0x70000000
#define PT_HIPROC 0x7fffffff
#define ET_NONE 0
#define ET_REL 1
#define ET_EXEC 2
#define ET_DYN 3
#define ET_CORE 4
#define ET_LOPROC 5
#define ET_HIPROC 6
#define EM_NONE 0
#define EM_M32 1
#define EM_SPARC 2
#define EM_386 3
#define EM_68K 4
#define EM_88K 5
#define EM_486 6
#define EM_860 7
///////////////////////////////////////////////////////////!!!!!
///////////////////////////////////////////////////////////!!!!!
///////////////////////////////////////////////////////////
#define NR_COMMAND 9
///////////////////////////////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -