mirror of
https://github.com/FDOS/kernel.git
synced 2025-07-26 07:15:03 +02:00
Fixed sys.com compilation. Updated to 2023. Also: see history.txt.
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@178 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
parent
437e4cb122
commit
58a5fa4438
@ -1,3 +1,11 @@
|
|||||||
|
2001 Mar 25 - Build 2023
|
||||||
|
-------- Bart Oldeman (bart.oldeman@bristol.ac.uk)
|
||||||
|
+ Fixes sys.com compilation: it is a proper .com and works again.
|
||||||
|
Suggestions from Martin Stromberg: warning removal and some
|
||||||
|
debugging related changes.
|
||||||
|
Suggestion from Aitor Santamaria Merino: implemented NUMLOCK=ON/OFF
|
||||||
|
in config.sys. Also implemented strcasecmp.
|
||||||
|
Updated intfns.txt; reported version is now 5.0.
|
||||||
2001 Mar 24 - Build 2022
|
2001 Mar 24 - Build 2022
|
||||||
-------- Bart Oldeman (bart.oldeman@bristol.ac.uk)
|
-------- Bart Oldeman (bart.oldeman@bristol.ac.uk)
|
||||||
+ Fixes Tom and Bart: cli/sti handling and other fixes in entry.asm,
|
+ Fixes Tom and Bart: cli/sti handling and other fixes in entry.asm,
|
||||||
|
@ -112,12 +112,12 @@ int 21 Description State Ver Status
|
|||||||
5701h Set File Date and Time active 2.00 supported
|
5701h Set File Date and Time active 2.00 supported
|
||||||
5800h Get Allocation Strategy active 3.00 supported
|
5800h Get Allocation Strategy active 3.00 supported
|
||||||
5801h Set Allocation Strategy active 3.00 supported
|
5801h Set Allocation Strategy active 3.00 supported
|
||||||
5802h Get Upper-Memory Link active 5.00 planned
|
5802h Get Upper-Memory Link active 5.00 supported
|
||||||
5803h Set Upper-Memory Link active 5.00 planned
|
5803h Set Upper-Memory Link active 5.00 supported
|
||||||
59h Get Extended Error active 3.00 planned
|
59h Get Extended Error active 3.00 supported
|
||||||
5ah Create Temporary File active 3.00
|
5ah Create Temporary File active 3.00 supported
|
||||||
5bh Create New File active 3.00
|
5bh Create New File active 3.00 supported
|
||||||
5ch Lock/Unlock File active 3.10 planned
|
5ch Lock/Unlock File active 3.10 supported
|
||||||
5d00h Server Function Call active 3.10 supported
|
5d00h Server Function Call active 3.10 supported
|
||||||
5d01h Commit All Files active 3.10 planned
|
5d01h Commit All Files active 3.10 planned
|
||||||
5d02h Close File by Name active 3.10 planned
|
5d02h Close File by Name active 3.10 planned
|
||||||
@ -142,8 +142,8 @@ int 21 Description State Ver Status
|
|||||||
68h Commit File active 3.30 dummy func
|
68h Commit File active 3.30 dummy func
|
||||||
69h GET/SET DISK SERIAL NUMBER active 4.00 supported
|
69h GET/SET DISK SERIAL NUMBER active 4.00 supported
|
||||||
6ah COMMIT FILE (same as 68h) active 4.00 not supported
|
6ah COMMIT FILE (same as 68h) active 4.00 not supported
|
||||||
6bh NULL FUNCTION active 5.00 not supported
|
6bh NULL FUNCTION active 5.00 supported
|
||||||
6ch Extended Open/Create active 4.00 supported
|
6ch Extended Open/Create active 4.00 planned
|
||||||
71h LONG FILENAME FUNCTIONS active 7.00 not supported
|
71h LONG FILENAME FUNCTIONS active 7.00 not supported
|
||||||
|
|
||||||
int 22: Program Termination Address.
|
int 22: Program Termination Address.
|
||||||
@ -195,6 +195,9 @@ See COPYING in DOS-C root directory for license.
|
|||||||
$Id$
|
$Id$
|
||||||
|
|
||||||
$Log$
|
$Log$
|
||||||
|
Revision 1.4 2001/03/25 17:11:53 bartoldeman
|
||||||
|
Fixed sys.com compilation. Updated to 2023. Also: see history.txt.
|
||||||
|
|
||||||
Revision 1.3 2000/05/09 00:29:50 jimtabor
|
Revision 1.3 2000/05/09 00:29:50 jimtabor
|
||||||
Clean up and Release
|
Clean up and Release
|
||||||
|
|
||||||
|
@ -42,5 +42,5 @@ static BYTE *date_hRcsId = "$Id$";
|
|||||||
|
|
||||||
#define REVISION_MAJOR 1
|
#define REVISION_MAJOR 1
|
||||||
#define REVISION_MINOR 1
|
#define REVISION_MINOR 1
|
||||||
#define REVISION_SEQ 22
|
#define REVISION_SEQ 23
|
||||||
#define BUILD 2022
|
#define BUILD 2023
|
||||||
|
@ -40,6 +40,9 @@ static BYTE *RcsId = "$Id$";
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.12 2001/03/25 17:11:54 bartoldeman
|
||||||
|
* Fixed sys.com compilation. Updated to 2023. Also: see history.txt.
|
||||||
|
*
|
||||||
* Revision 1.11 2001/03/22 04:55:36 bartoldeman
|
* Revision 1.11 2001/03/22 04:55:36 bartoldeman
|
||||||
* Fix prototypes.
|
* Fix prototypes.
|
||||||
*
|
*
|
||||||
@ -195,12 +198,14 @@ INIT VOID Switchar(BYTE * pLine);
|
|||||||
INIT VOID CfgFailure(BYTE * pLine);
|
INIT VOID CfgFailure(BYTE * pLine);
|
||||||
INIT VOID Stacks(BYTE * pLine);
|
INIT VOID Stacks(BYTE * pLine);
|
||||||
INIT VOID SetAnyDos(BYTE * pLine);
|
INIT VOID SetAnyDos(BYTE * pLine);
|
||||||
|
INIT VOID Numlock(BYTE * pLine);
|
||||||
INIT BYTE *GetNumArg(BYTE * pLine, COUNT * pnArg);
|
INIT BYTE *GetNumArg(BYTE * pLine, COUNT * pnArg);
|
||||||
INIT BYTE *GetStringArg(BYTE * pLine, BYTE * pszString);
|
INIT BYTE *GetStringArg(BYTE * pLine, BYTE * pszString);
|
||||||
INIT struct dhdr FAR *linkdev(struct dhdr FAR * dhp);
|
INIT struct dhdr FAR *linkdev(struct dhdr FAR * dhp);
|
||||||
INIT UWORD initdev(struct dhdr FAR * dhp, BYTE FAR * cmdTail);
|
INIT UWORD initdev(struct dhdr FAR * dhp, BYTE FAR * cmdTail);
|
||||||
INIT int SkipLine(char *pLine);
|
INIT int SkipLine(char *pLine);
|
||||||
INIT char *stristr(char *s1, char *s2);
|
INIT char *stristr(char *s1, char *s2);
|
||||||
|
INIT COUNT strcasecmp(REG BYTE *d, REG BYTE *s);
|
||||||
|
|
||||||
INIT BYTE FAR *KernelAlloc(WORD nBytes);
|
INIT BYTE FAR *KernelAlloc(WORD nBytes);
|
||||||
|
|
||||||
@ -239,6 +244,7 @@ static struct table commands[] =
|
|||||||
{"FCBS", 1, Fcbs},
|
{"FCBS", 1, Fcbs},
|
||||||
{"FILES", 1, Files},
|
{"FILES", 1, Files},
|
||||||
{"LASTDRIVE", 1, Lastdrive},
|
{"LASTDRIVE", 1, Lastdrive},
|
||||||
|
{"NUMLOCK", 1, Numlock},
|
||||||
/* rem is never executed by locking out pass */
|
/* rem is never executed by locking out pass */
|
||||||
{"REM", 0, CfgFailure},
|
{"REM", 0, CfgFailure},
|
||||||
{"SHELL", 1, InitPgm},
|
{"SHELL", 1, InitPgm},
|
||||||
@ -585,10 +591,6 @@ INIT VOID DoConfig(VOID)
|
|||||||
/* Skip leading white space and get verb. */
|
/* Skip leading white space and get verb. */
|
||||||
pLine = scan(pLine, szBuf);
|
pLine = scan(pLine, szBuf);
|
||||||
|
|
||||||
/* Translate the verb to upper case ... */
|
|
||||||
for (pTmp = szBuf; *pTmp != '\0'; pTmp++)
|
|
||||||
*pTmp = toupper(*pTmp);
|
|
||||||
|
|
||||||
/* If the line was blank, skip it. Otherwise, look up */
|
/* If the line was blank, skip it. Otherwise, look up */
|
||||||
/* the verb and execute the appropriate function. */
|
/* the verb and execute the appropriate function. */
|
||||||
if (*szBuf != '\0')
|
if (*szBuf != '\0')
|
||||||
@ -619,7 +621,7 @@ INIT struct table *LookUp(struct table *p, BYTE * token)
|
|||||||
{
|
{
|
||||||
while (*(p->entry) != '\0')
|
while (*(p->entry) != '\0')
|
||||||
{
|
{
|
||||||
if (strcmp(p->entry, token) == 0)
|
if (strcasecmp(p->entry, token) == 0)
|
||||||
break;
|
break;
|
||||||
else
|
else
|
||||||
++p;
|
++p;
|
||||||
@ -936,10 +938,22 @@ INIT static VOID InitPgm(BYTE * pLine)
|
|||||||
INIT static VOID Break(BYTE * pLine)
|
INIT static VOID Break(BYTE * pLine)
|
||||||
{
|
{
|
||||||
/* Format: BREAK = (ON | OFF) */
|
/* Format: BREAK = (ON | OFF) */
|
||||||
BYTE *pTmp;
|
GetStringArg(pLine, szBuf);
|
||||||
|
break_ena = strcasecmp(szBuf, "OFF") ? 1 : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
INIT static VOID Numlock(BYTE * pLine)
|
||||||
|
{
|
||||||
|
/* Format: NUMLOCK = (ON | OFF) */
|
||||||
|
iregs regs;
|
||||||
|
BYTE FAR *keyflags = (BYTE FAR *)MK_FP(0x40,0x17);
|
||||||
|
|
||||||
GetStringArg(pLine, szBuf);
|
GetStringArg(pLine, szBuf);
|
||||||
break_ena = strcmp(szBuf, "OFF") ? 1 : 0;
|
|
||||||
|
*keyflags &= ~32;
|
||||||
|
*keyflags |= strcasecmp(szBuf, "OFF") ? 32 : 0;
|
||||||
|
regs.a.b.h = 1;
|
||||||
|
init_call_intr(0x16, ®s);
|
||||||
}
|
}
|
||||||
|
|
||||||
INIT static VOID DeviceHigh(BYTE * pLine)
|
INIT static VOID DeviceHigh(BYTE * pLine)
|
||||||
@ -1281,6 +1295,24 @@ char *stristr(char *s1, char *s2)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* compare two ASCII strings ignoring case */
|
||||||
|
INIT COUNT strcasecmp(REG BYTE *d, REG BYTE *s)
|
||||||
|
{
|
||||||
|
int loop;
|
||||||
|
|
||||||
|
while (*s != '\0' && *d != '\0')
|
||||||
|
{
|
||||||
|
|
||||||
|
if (toupper(*d) == toupper(*s))
|
||||||
|
++s, ++d;
|
||||||
|
|
||||||
|
else
|
||||||
|
return toupper(*d) - toupper(*s);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return toupper(*d) - toupper(*s);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
moved from BLOCKIO.C here.
|
moved from BLOCKIO.C here.
|
||||||
|
@ -36,6 +36,9 @@ BYTE *RcsId = "$Id$";
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.15 2001/03/25 17:11:54 bartoldeman
|
||||||
|
* Fixed sys.com compilation. Updated to 2023. Also: see history.txt.
|
||||||
|
*
|
||||||
* Revision 1.14 2001/03/21 02:56:26 bartoldeman
|
* Revision 1.14 2001/03/21 02:56:26 bartoldeman
|
||||||
* See history.txt for changes. Bug fixes and HMA support are the main ones.
|
* See history.txt for changes. Bug fixes and HMA support are the main ones.
|
||||||
*
|
*
|
||||||
@ -564,6 +567,12 @@ dispatch:
|
|||||||
r->AL = 0xff;
|
r->AL = 0xff;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
#ifdef DEBUG
|
||||||
|
printf("Unsupported INT21 AH = 0x%x, AL = 0x%x.\n", r->AH, r->AL);
|
||||||
|
#endif
|
||||||
|
/* Fall through. */
|
||||||
|
|
||||||
/* CP/M compatibility functions */
|
/* CP/M compatibility functions */
|
||||||
case 0x18:
|
case 0x18:
|
||||||
case 0x1d:
|
case 0x1d:
|
||||||
@ -572,7 +581,6 @@ dispatch:
|
|||||||
#ifndef TSC
|
#ifndef TSC
|
||||||
case 0x61:
|
case 0x61:
|
||||||
#endif
|
#endif
|
||||||
default:
|
|
||||||
r->AL = 0;
|
r->AL = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -5,6 +5,9 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
# $Log$
|
# $Log$
|
||||||
|
# Revision 1.7 2001/03/25 17:11:54 bartoldeman
|
||||||
|
# Fixed sys.com compilation. Updated to 2023. Also: see history.txt.
|
||||||
|
#
|
||||||
# Revision 1.6 2001/03/21 02:56:26 bartoldeman
|
# Revision 1.6 2001/03/21 02:56:26 bartoldeman
|
||||||
# See history.txt for changes. Bug fixes and HMA support are the main ones.
|
# See history.txt for changes. Bug fixes and HMA support are the main ones.
|
||||||
#
|
#
|
||||||
@ -125,7 +128,7 @@ INCLUDEPATH = ..\HDR
|
|||||||
#AFLAGS = /Mx /DSTANDALONE=1 /I..\HDR
|
#AFLAGS = /Mx /DSTANDALONE=1 /I..\HDR
|
||||||
NASMFLAGS = -i../hdr/
|
NASMFLAGS = -i../hdr/
|
||||||
LIBS =..\LIB\DEVICE.LIB ..\LIB\LIBM.LIB
|
LIBS =..\LIB\DEVICE.LIB ..\LIB\LIBM.LIB
|
||||||
#CFLAGS = -1- -O -Z -d -I..\hdr -I. \
|
#ALLCFLAGS = -1- -O -Z -d -I..\hdr -I. \
|
||||||
# -D__STDC__=0;DEBUG;KERNEL;I86;PROTO;ASMSUPT
|
# -D__STDC__=0;DEBUG;KERNEL;I86;PROTO;ASMSUPT
|
||||||
ALLCFLAGS = -1- -O -Z -d -I..\hdr -I. \
|
ALLCFLAGS = -1- -O -Z -d -I..\hdr -I. \
|
||||||
-D__STDC__=0;KERNEL;I86;PROTO;ASMSUPT \
|
-D__STDC__=0;KERNEL;I86;PROTO;ASMSUPT \
|
||||||
|
@ -36,11 +36,12 @@
|
|||||||
#ifdef VERSION_STRINGS
|
#ifdef VERSION_STRINGS
|
||||||
static BYTE *mainRcsId = "$Id$";
|
static BYTE *mainRcsId = "$Id$";
|
||||||
#endif
|
#endif
|
||||||
GLOBAL WORD bDumpRegs = FALSE;
|
|
||||||
GLOBAL WORD bDumpRdWrParms= FALSE;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.9 2001/03/25 17:11:54 bartoldeman
|
||||||
|
* Fixed sys.com compilation. Updated to 2023. Also: see history.txt.
|
||||||
|
*
|
||||||
* Revision 1.8 2001/03/21 02:56:26 bartoldeman
|
* Revision 1.8 2001/03/21 02:56:26 bartoldeman
|
||||||
* See history.txt for changes. Bug fixes and HMA support are the main ones.
|
* See history.txt for changes. Bug fixes and HMA support are the main ones.
|
||||||
*
|
*
|
||||||
|
13
sys/sys.c
13
sys/sys.c
@ -27,9 +27,12 @@
|
|||||||
***************************************************************/
|
***************************************************************/
|
||||||
|
|
||||||
/* $Log$
|
/* $Log$
|
||||||
* Revision 1.4 2000/08/06 05:50:17 jimtabor
|
* Revision 1.5 2001/03/25 17:11:54 bartoldeman
|
||||||
* Add new files and update cvs with patches and changes
|
* Fixed sys.com compilation. Updated to 2023. Also: see history.txt.
|
||||||
*
|
*
|
||||||
|
/* Revision 1.4 2000/08/06 05:50:17 jimtabor
|
||||||
|
/* Add new files and update cvs with patches and changes
|
||||||
|
/*
|
||||||
* Revision 1.3 2000/05/25 20:56:23 jimtabor
|
* Revision 1.3 2000/05/25 20:56:23 jimtabor
|
||||||
* Fixed project history
|
* Fixed project history
|
||||||
*
|
*
|
||||||
@ -510,12 +513,14 @@ VOID get_boot(COUNT drive)
|
|||||||
BOOL check_space(COUNT drive, BYTE * BlkBuffer)
|
BOOL check_space(COUNT drive, BYTE * BlkBuffer)
|
||||||
{
|
{
|
||||||
BYTE *bpbp;
|
BYTE *bpbp;
|
||||||
|
#if 0 /* these local variables are never used */
|
||||||
BYTE nfat;
|
BYTE nfat;
|
||||||
UWORD nfsect;
|
UWORD nfsect;
|
||||||
ULONG hidden;
|
ULONG hidden;
|
||||||
|
UBYTE nreserved;
|
||||||
|
#endif
|
||||||
ULONG count;
|
ULONG count;
|
||||||
ULONG block;
|
ULONG block;
|
||||||
UBYTE nreserved;
|
|
||||||
UCOUNT i;
|
UCOUNT i;
|
||||||
WORD track, head, sector;
|
WORD track, head, sector;
|
||||||
UBYTE buffer[SEC_SIZE];
|
UBYTE buffer[SEC_SIZE];
|
||||||
@ -523,10 +528,12 @@ BOOL check_space(COUNT drive, BYTE * BlkBuffer)
|
|||||||
UWORD bpb_nsize;
|
UWORD bpb_nsize;
|
||||||
|
|
||||||
/* get local information */
|
/* get local information */
|
||||||
|
#if 0 /* these local variables are never used */
|
||||||
getbyte((VOID *) & BlkBuffer[BT_BPB + BPB_NFAT], &nfat);
|
getbyte((VOID *) & BlkBuffer[BT_BPB + BPB_NFAT], &nfat);
|
||||||
getword((VOID *) & BlkBuffer[BT_BPB + BPB_NFSECT], &nfsect);
|
getword((VOID *) & BlkBuffer[BT_BPB + BPB_NFSECT], &nfsect);
|
||||||
getlong((VOID *) & BlkBuffer[BT_BPB + BPB_HIDDEN], &hidden);
|
getlong((VOID *) & BlkBuffer[BT_BPB + BPB_HIDDEN], &hidden);
|
||||||
getbyte((VOID *) & BlkBuffer[BT_BPB + BPB_NRESERVED], &nreserved);
|
getbyte((VOID *) & BlkBuffer[BT_BPB + BPB_NRESERVED], &nreserved);
|
||||||
|
#endif
|
||||||
|
|
||||||
getlong((VOID *) & BlkBuffer[BT_BPB + BPB_HUGE], &bpb_huge);
|
getlong((VOID *) & BlkBuffer[BT_BPB + BPB_HUGE], &bpb_huge);
|
||||||
getword((VOID *) & BlkBuffer[BT_BPB + BPB_NSIZE], &bpb_nsize);
|
getword((VOID *) & BlkBuffer[BT_BPB + BPB_NSIZE], &bpb_nsize);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user