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 Begin3
Title: The FreeDOS Kernel Title: The FreeDOS Kernel
Version: 2.0.34 Version: 2.0.35
Entered-date: 17 Apr 2004 Entered-date: 30 May 2004
Description: The FreeDOS Kernel. Description: The FreeDOS Kernel.
Keywords: kernel freedos dos msdos Keywords: kernel freedos dos msdos
Author: (developers) Author: (developers)

View File

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

View File

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

View File

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

View File

@ -1635,7 +1635,13 @@ struct int2f12regs {
#ifdef __WATCOMC__ #ifdef __WATCOMC__
/* UWORD gs, fs; ** GS/FS are protected through SI/DI */ /* UWORD gs, fs; ** GS/FS are protected through SI/DI */
#else #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
#endif #endif
UWORD es, ds; UWORD es, ds;

View File

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

View File

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