high-part-of register save fixes from Lucho.

Bump version to 2035.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@971 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
Bart Oldeman 2004-05-30 19:31:07 +00:00
parent 2c8a4b8c34
commit 11e6ccefbf
7 changed files with 28 additions and 10 deletions

View File

@ -1,7 +1,7 @@
Begin3
Title: The FreeDOS Kernel
Version: 2.0.34
Entered-date: 17 Apr 2004
Version: 2.0.35
Entered-date: 30 May 2004
Description: The FreeDOS Kernel.
Keywords: kernel freedos dos msdos
Author: (developers)

View File

@ -118,8 +118,8 @@ irp_hi equ 26
;
; assumption:
; we have never seen MSVC to use anything but eax, ecx, edx,
; nor have we seen Borland C to use anything but eax, edx,
; so we only protect eax, ecx, edx to conserve stack space
; nor have we seen Borland C to use anything but eax, ebx, edx,
; so we only protect eax, ebx or ecx, edx to conserve stack space
;
; to save even more stack space, we save only HIGH part of regs
; at some expense of slower execution. it's easier anyway :-)
@ -149,8 +149,13 @@ irp_hi equ 26
%else
push eax
pop ax
%ifdef MSCL8
push ecx
pop cx
%else ;BC5
push ebx
pop bx
%endif
push edx
pop dx
%endif
@ -165,8 +170,13 @@ irp_hi equ 26
%else
push dx
pop edx
%ifdef MSCL8
push cx
pop ecx
%else ;BC5
push bx
pop ebx
%endif
push ax
pop eax
%endif

View File

@ -47,8 +47,8 @@ static BYTE *date_hRcsId =
#define REVISION_MAJOR 1
#define REVISION_MINOR 1
#define REVISION_SEQ 34
#define BUILD "2034"
#define REVISION_SEQ 35
#define BUILD "2035"
#define SUB_BUILD ""
#define KERNEL_VERSION_STRING "1.1.34" /*#REVISION_MAJOR "." #REVISION_MINOR "." #REVISION_SEQ */
#define KERNEL_BUILD_STRING "2034" /*#BUILD SUB_BUILD */
#define KERNEL_VERSION_STRING "1.1.35" /*#REVISION_MAJOR "." #REVISION_MINOR "." #REVISION_SEQ */
#define KERNEL_BUILD_STRING "2035" /*#BUILD SUB_BUILD */

View File

@ -352,7 +352,7 @@ int21_exit_nodec:
%ifdef WATCOM
sub bp, 4 ; for fs and gs only
%else
sub bp, 6 ; high parts of eax, ecx, edx
sub bp, 6 ; high parts of eax, ebx or ecx, edx
%endif
%endif

View File

@ -1635,7 +1635,13 @@ struct int2f12regs {
#ifdef __WATCOMC__
/* UWORD gs, fs; ** GS/FS are protected through SI/DI */
#else
UWORD high_edx, high_ecx, high_eax;
UWORD high_edx,
#ifdef _MSC_VER
high_ecx,
#else /* __BORLANDC__ */
high_ebx,
#endif
high_eax;
#endif
#endif
UWORD es, ds;

View File

@ -29,6 +29,7 @@
;
%include "segs.inc"
%include "stacks.inc"
extern ConTable:wrt LGROUP
extern LptTable:wrt LGROUP

View File

@ -29,6 +29,7 @@
%include "segs.inc"
%include "stacks.inc"
segment HMA_TEXT
global _reloc_call_CharMapSrvc