mirror of https://github.com/FDOS/kernel.git
Some small post 2026 fixes - fix SYS, FCBs and redirector
git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@351 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
parent
9d94f57f47
commit
251fa29181
|
@ -1,3 +1,9 @@
|
|||
+ Changes Martin
|
||||
* fixed SYS for non-Watcom compilers
|
||||
+ Changes Bart
|
||||
* FCB and network redirector fixes
|
||||
(FCBOpen was broken; it appears that clearing CF before calling
|
||||
the redirector is safer then setting CF)
|
||||
2002 Feb 9 - Build 2026
|
||||
-------- Bart Oldeman (bart@dosemu.org)
|
||||
+ Changes Tom
|
||||
|
|
|
@ -861,7 +861,7 @@ COUNT DosOpenSft(BYTE * fname, COUNT mode)
|
|||
fmemset(sftp, 0, sizeof(sft));
|
||||
sftp->sft_psp = cu_psp;
|
||||
sftp->sft_mode = mode;
|
||||
OpenMode = (BYTE) mode;
|
||||
mode = OpenMode = (BYTE) mode;
|
||||
|
||||
/* check for a device */
|
||||
dhp = IsDevice(fname);
|
||||
|
|
|
@ -488,7 +488,7 @@ BOOL FcbOpenCreate(xfcb FAR * lpXfcb, BOOL Create)
|
|||
lpFcb->fcb_rndm = 0;
|
||||
|
||||
lpFcb->fcb_recsiz = 0; /* true for devices */
|
||||
if (sftp->sft_flags & SFT_FDEVICE) /* check for a device */
|
||||
if (!(sftp->sft_flags & SFT_FDEVICE)) /* check for a device */
|
||||
{
|
||||
lpFcb->fcb_drive = FcbDrive;
|
||||
lpFcb->fcb_recsiz = 128;
|
||||
|
|
|
@ -291,7 +291,7 @@ call_int2f:
|
|||
int2f_call_push:
|
||||
push word [bp+8] ; very fakey, HaHa ;)
|
||||
int2f_call:
|
||||
stc ; set to fail
|
||||
clc ; set to succeed
|
||||
int 2fh
|
||||
pop bx
|
||||
jc no_clear_ax
|
||||
|
@ -315,7 +315,7 @@ lseekeof:
|
|||
jmp int2f_call_push
|
||||
|
||||
remote_getfattr:
|
||||
stc ; set to fail
|
||||
clc ; set to succeed
|
||||
int 2fh
|
||||
jc no_clear_ax
|
||||
jmp short no_neg_ax
|
||||
|
@ -334,7 +334,7 @@ print_doredir:
|
|||
|
||||
mov ds, [bp+18]
|
||||
push word [bp+16] ; very fakey, HaHa ;)
|
||||
stc ; set to fail
|
||||
clc ; set to succeed
|
||||
int 2fh
|
||||
pop bx
|
||||
pop ds
|
||||
|
@ -342,7 +342,7 @@ print_doredir:
|
|||
jmp short clear_ax
|
||||
|
||||
remote_getfree:
|
||||
stc ; set to fail
|
||||
clc ; set to succeed
|
||||
int 2fh
|
||||
jc no_clear_ax
|
||||
mov di,[bp+8]
|
||||
|
@ -360,14 +360,14 @@ remote_printredir:
|
|||
qremote_fn:
|
||||
lds si,[bp+4]
|
||||
les di,[bp+8]
|
||||
stc
|
||||
clc
|
||||
int 2fh
|
||||
mov ax,0xffff
|
||||
jc no_neg_ax
|
||||
jmp short clear_ax
|
||||
|
||||
remote_rw: mov cx, [bp+8]
|
||||
stc ; set to fail
|
||||
clc ; set to succeed
|
||||
int 2fh
|
||||
jc int2f_carry
|
||||
xor ax, ax
|
||||
|
|
|
@ -380,7 +380,7 @@ int2526readwrite(int DosDrive, void *diskReadPacket, unsigned intno)
|
|||
union REGS regs;
|
||||
|
||||
regs.h.al = (BYTE) DosDrive;
|
||||
regs.x.bx = (short)&diskReadPacket;
|
||||
regs.x.bx = (short)diskReadPacket;
|
||||
regs.x.cx = 0xffff;
|
||||
|
||||
int86(intno, ®s, ®s);
|
||||
|
@ -395,7 +395,7 @@ fat32readwrite(int DosDrive, void *diskReadPacket, unsigned intno)
|
|||
|
||||
regs.x.ax = 0x7305;
|
||||
regs.h.dl = DosDrive + 1;
|
||||
regs.x.bx = (short)&diskReadPacket;
|
||||
regs.x.bx = (short)diskReadPacket;
|
||||
regs.x.cx = 0xffff;
|
||||
regs.x.si = intno - 0x25;
|
||||
int86(0x21, ®s, ®s);
|
||||
|
|
Loading…
Reference in New Issue