1
0
mirror of https://github.com/FDOS/kernel.git synced 2025-04-08 17:15:17 +02:00

Avoid relocations in the .asm files.

git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@593 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
Bart Oldeman 2003-06-15 16:21:26 +00:00
parent ed78089e0b
commit 0abf2824ef
6 changed files with 23 additions and 35 deletions

@ -41,14 +41,12 @@ segment HMA_TEXT
extern _MachineId:wrt DGROUP
extern critical_sp:wrt DGROUP
extern _user_r:wrt DGROUP
extern _DGROUP_:wrt HMA_TEXT
;
;
_DosIdle_int:
push ds
push ax
mov ax, DGROUP
mov ds,ax
pop ax
mov ds, [cs:_DGROUP_]
cmp byte [_InDOS],1
ja DosId1
call Do_DosI

@ -32,9 +32,9 @@
%include "stacks.inc"
segment HMA_TEXT
extern _int21_syscall:wrt TGROUP
extern _int21_service:wrt TGROUP
extern _int2526_handler:wrt TGROUP
extern _int21_syscall
extern _int21_service
extern _int2526_handler
extern _error_tos:wrt DGROUP
extern _char_api_tos:wrt DGROUP
extern _disk_api_tos:wrt DGROUP
@ -50,6 +50,7 @@ segment HMA_TEXT
extern _Int21AX:wrt DGROUP
extern _DGROUP_
global reloc_call_cpm_entry
global reloc_call_int20_handler
@ -58,7 +59,6 @@ segment HMA_TEXT
global reloc_call_low_int26_handler
global reloc_call_int27_handler
;
; MS-DOS CP/M style entry point
;
@ -229,7 +229,7 @@ reloc_call_int21_handler:
; until later when which stack to run on is determined.
;
int21_reentry:
mov dx,DGROUP
mov dx,[cs:_DGROUP_]
mov ds,dx
cmp ah,33h
@ -426,7 +426,7 @@ int2526:
mov dx, ss
cld
mov bx, DGROUP
mov bx, [cs:_DGROUP_]
mov ds, bx
; setup our local stack
@ -557,7 +557,7 @@ CritErr05:
;
cld
cli
mov bp, DGROUP
mov bp, [cs:_DGROUP_]
mov ds,bp
mov ss,bp
mov sp,[critical_sp]

@ -33,7 +33,9 @@
segment HMA_TEXT
extern _cu_psp:wrt DGROUP
extern _syscall_MUX14:wrt HMA_TEXT
extern _syscall_MUX14
extern _DGROUP_
global reloc_call_int2f_handler
reloc_call_int2f_handler:
@ -94,8 +96,7 @@ DriverSysCal:
extern _Dyn:wrt DGROUP
cmp al, 3
jne Int2f?iret
mov di, seg _Dyn
mov ds, di
mov ds, [cs:_DGROUP_]
mov di, _Dyn+2
jmp short Int2f?iret
@ -134,9 +135,8 @@ IntDosCal:
%endif
%endif
mov ax,DGROUP
mov ds,ax
extern _int2F_12_handler:wrt TGROUP
mov ds,[cs:_DGROUP_]
extern _int2F_12_handler
call _int2F_12_handler
%IFDEF I386

@ -381,10 +381,7 @@ DiskIntrEntry:
push ds
push bx
mov bp,sp
push ax
mov ax,DGROUP
mov ds,ax
pop ax
mov ds,[cs:_TEXT_DGROUP]
cld
call word [cs:si+1]
pop cx
@ -405,10 +402,7 @@ AsmType: mov al,[bx+unit]
xchg di,ax
les di,[bx+trans]
push ax
mov ax, DGROUP
mov ds,ax
pop ax
mov ds,[cs:_TEXT_DGROUP]
cld
jmp word [cs:si+1]

@ -32,7 +32,8 @@
segment HMA_TEXT
global _reloc_call_CharMapSrvc
extern _DosUpChar:wrt TGROUP
extern _DosUpChar
extern _DGROUP_
;
; CharMapSrvc:
; User callable character mapping service.
@ -51,10 +52,7 @@ _reloc_call_CharMapSrvc:
push bx
push ax ; arg of _upChar
; push ax
mov ax,DGROUP
mov ds, ax
; pop ax
mov ds,[cs:_DGROUP_]
call _DosUpChar
;add sp, byte 2 // next POP retrieves orig AX

@ -40,7 +40,7 @@
segment HMA_TEXT
extern _DGROUP_:wrt LGROUP
extern _DGROUP_
;
; Special call for switching processes
@ -123,8 +123,7 @@ segment HMA_TEXT
_spawn_int23:
;; 1999/03/27 ska - comments: see cmt1.txt
mov ax, DGROUP ;; Make sure DS is OK
mov ds, ax
mov ds, [cs:_DGROUP_] ;; Make sure DS is OK
; restore to user stack
cli ;; Pre-8086 don't disable INT autom.
@ -248,8 +247,7 @@ _spawn_int23:
;; AH value, which is passed to the _respawn_ call
;; into 0, which is "Terminate program".
push ds ;; we need DGROUP
mov bp, DGROUP
mov ds, bp
mov ds, [cs:_DGROUP_]
inc byte [_break_flg]
pop ds