📄 globals.h
字号:
/****************************************************************//* *//* globals.h *//* DOS-C *//* *//* Global data structures and declarations *//* *//* Copyright (c) 1995, 1996 *//* Pasquale J. Villani *//* All Rights Reserved *//* *//* This file is part of DOS-C. *//* *//* DOS-C is free software; you can redistribute it and/or *//* modify it under the terms of the GNU General Public License *//* as published by the Free Software Foundation; either version *//* 2, or (at your option) any later version. *//* *//* DOS-C is distributed in the hope that it will be useful, but *//* WITHOUT ANY WARRANTY; without even the implied warranty of *//* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See *//* the GNU General Public License for more details. *//* *//* You should have received a copy of the GNU General Public *//* License along with DOS-C; see the file COPYING. If not, *//* write to the Free Software Foundation, 675 Mass Ave, *//* Cambridge, MA 02139, USA. *//****************************************************************/#ifdef VERSION_STRINGS#ifdef MAINstatic BYTE *Globals_hRcsId = "$Id: globals.h,v 1.46 2006/05/20 20:48:43 mceric Exp $";#endif#endif#include "device.h"#include "mcb.h"#include "pcb.h"#include "date.h"#include "time.h"#include "fat.h"#include "fcb.h"#include "tail.h"#include "process.h"#include "sft.h"#include "cds.h"#include "exe.h"#include "fnode.h"#include "dirmatch.h"#include "file.h"#include "clock.h"#include "kbd.h"#include "error.h"#include "version.h"#include "network.h"#include "buffer.h"#include "dcb.h"#include "xstructs.h"/* fatfs.c */#ifdef WITHFAT32VOID bpb_to_dpb(bpb FAR * bpbp, REG struct dpb FAR * dpbp, BOOL extended);#elseVOID bpb_to_dpb(bpb FAR * bpbp, REG struct dpb FAR * dpbp);#endif#ifdef WITHFAT32struct dpb FAR *GetDriveDPB(UBYTE drive, COUNT * rc);#endifextern struct dpbFAR * ASM DPBp; /* First drive Parameter Block *//* JPP: for testing/debuging disk IO *//*#define DISPLAY_GETBLOCK *//* *//* Convience switch for maintaining variables in a single location *//* */#ifdef MAIN#define GLOBAL#else#define GLOBAL extern#endif/* *//* Convience definitions of TRUE and FALSE *//* */#ifndef TRUE#define TRUE (1)#endif#ifndef FALSE#define FALSE (0)#endif/* *//* Constants and macros *//* *//* Defaults and limits - System wide */#define NAMEMAX MAX_CDSPATH /* Maximum path for CDS *//* internal error from failure or aborted operation */#define ERROR -1#define OK 0/* internal transfer direction flags */#define XFR_READ 1#define XFR_WRITE 2#define XFR_FORCE_WRITE 3/* flag to update fcb_rndm field */#define XFR_FCB_RANDOM 4#define RDONLY 0#define WRONLY 1#define RDWR 2/* special ascii code equates */#define SPCL 0x00#define CTL_C 0x03#define CTL_F 0x06#define BELL 0x07#define BS 0x08#define HT 0x09#define LF 0x0a#define CR 0x0d#define CTL_P 0x10#define CTL_Q 0x11#define CTL_S 0x13#define CTL_Z 0x1a#define ESC 0x1b#define CTL_BS 0x7f#define INS 0x5200#define DEL 0x5300#define F1 0x3b00#define F2 0x3c00#define F3 0x3d00#define F4 0x3e00#define F5 0x3f00#define F6 0x4000#define LEFT 0x4b00#define RIGHT 0x4d00/* Blockio constants */#define DSKWRITE 1 /* dskxfr function parameters */#define DSKREAD 2#define DSKWRITEINT26 3#define DSKREADINT25 4/* NLS character table type */typedef BYTE *UPMAP;/* *//* External Assembly variables *//* */extern struct dhdrFAR ASM clk_dev, /* Clock device driver */ FAR ASM con_dev, /* Console device driver */ FAR ASM prn_dev, /* Generic printer device driver */ FAR ASM aux_dev, /* Generic aux device driver */ FAR ASM blk_dev; /* Block device (Disk) driver */extern COUNT *error_tos, /* error stack */ disk_api_tos, /* API handler stack - disk fns */ char_api_tos; /* API handler stack - char fns */extern BYTE FAR _InitTextStart; /* first available byte of ram */extern BYTE FAR _HMATextAvailable, /* first byte of available CODE area */ FAR _HMATextStart[], /* first byte of HMAable CODE area */ FAR _HMATextEnd[]; /* and the last byte of it */externBYTE DosLoadedInHMA; /* if InitHMA has moved DOS up */extern struct ClockRecord ASM ClkRecord;/* *//* Global variables *//* */extern BYTE ASM os_setver_major,/* editable major version number */ ASM os_setver_minor, /* editable minor version number */ ASM os_major, /* major version number */ ASM os_minor, /* minor version number */ ASM rev_number, /* minor version number */ ASM version_flags; /* minor version number */#ifdef DEBUGGLOBAL WORD bDumpRegs#ifdef MAIN = FALSE;#else ;#endifGLOBAL WORD bDumpRdWrParms#ifdef MAIN = FALSE;#else ;#endif#endif#if 0 /* defined in MAIN.C now to save low memory */GLOBAL BYTE copyright[] = "(C) Copyright 1995-2006 Pasquale J. Villani and The FreeDOS Project.\n" "All Rights Reserved. This is free software and comes with ABSOLUTELY NO\n" "WARRANTY; you can redistribute it and/or modify it under the terms of the\n" "GNU General Public License as published by the Free Software Foundation;\n" "either version 2, or (at your option) any later version.\n";#endifGLOBAL const BYTE ASM os_release[]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -