build fixes - update inthndlr.c to compile with LFNAPI enabled (more fixes from earlier oops, lfnapi.c still doesn't compile)

This commit is contained in:
Kenneth J Davis 2021-08-08 14:26:34 -04:00
parent 74e9d4afd7
commit b7bcef73a1
4 changed files with 8 additions and 8 deletions

View File

@ -1565,7 +1565,7 @@ dispatch:
case 0x56: case 0x56:
/* Win95 LFN - canonicalize file name/path */ /* Win95 LFN - canonicalize file name/path */
case 0x60: { case 0x60: {
switch (lr->CL) switch (lr.CL)
{ {
/* truename - canonicalize path, accepts short/long/or combination as input and may return combined short/long name */ /* truename - canonicalize path, accepts short/long/or combination as input and may return combined short/long name */
case 0x00: { case 0x00: {
@ -1609,12 +1609,12 @@ lfn_findclose:
sft FAR *s; sft FAR *s;
unsigned char idx; unsigned char idx;
if (r->BX >= psp->ps_maxfiles) if (lr.BX >= psp->ps_maxfiles)
{ {
rc = DE_INVLDHNDL; rc = DE_INVLDHNDL;
goto error_exit; goto error_exit;
} }
idx = psp->ps_filetab[r->BX]; idx = psp->ps_filetab[lr.BX];
s = idx_to_sft(idx); s = idx_to_sft(idx);
if (s == (sft FAR *)-1) if (s == (sft FAR *)-1)
{ {
@ -1647,7 +1647,7 @@ lfn_findclose:
/* Win95 LFN - Win95 64 UTC file time to/from DOS date and time (local timezone) */ /* Win95 LFN - Win95 64 UTC file time to/from DOS date and time (local timezone) */
case 0xa7: { case 0xa7: {
/* Note: valid input range limited to Jan 1, 1980 to Dec 31, 2107 */ /* Note: valid input range limited to Jan 1, 1980 to Dec 31, 2107 */
switch (lr->BL) switch (lr.BL)
{ {
/* from Win95 UTC to DOS date/time */ /* from Win95 UTC to DOS date/time */
case 0x00: { case 0x00: {
@ -1699,7 +1699,7 @@ lfn_findclose:
break; break;
/* Setup LFN inode */ /* Setup LFN inode */
case 0x03: case 0x03:
rc = lfn_setup_inode(lr.BX, ((ULONG)lr.CX << 16) | lr.DX, ((ULONG)lr.SI << 16) | lr.DI); rc = lfn_setup_inode(lr.BX, MK_ULONG(lr.CX, lr.DX), MK_ULONG(lr.SI,lr.DI));
break; break;
/* Create LFN entries */ /* Create LFN entries */
case 0x04: case 0x04:

View File

@ -47,7 +47,7 @@ arg nr, {rp,%1}
mov ax, [.nr] ; interrupt number mov ax, [.nr] ; interrupt number
mov [cs:%%intr_1-1], al mov [cs:%%intr_1-1], al
jmp short %%intr_2 ; flush the instruction cache jmp short %%intr_2 ; flush the instruction cache
%%intr_2 %%intr_2:
%if %1 == 4 %if %1 == 4
lds bx, [.rp] ; regpack structure FAR lds bx, [.rp] ; regpack structure FAR
%else %else

View File

@ -105,7 +105,7 @@ COUNT lfn_free_inode(COUNT handle)
* Return value. * Return value.
* SUCCESS, LHE_INVLDHNDL * SUCCESS, LHE_INVLDHNDL
*/ */
COUNT lfn_setup_inode(COUNT handle, ULONG dirstart, UWORD diroff) COUNT lfn_setup_inode(COUNT handle, ULONG dirstart, ULONG diroff)
{ {
f_node_ptr fnp = xlt_fd(handle); f_node_ptr fnp = xlt_fd(handle);
if (fnp == 0 || fnp->f_count <= 0) return LHE_INVLDHNDL; if (fnp == 0 || fnp->f_count <= 0) return LHE_INVLDHNDL;

View File

@ -250,7 +250,7 @@ VOID mcb_print(mcb FAR * mcbp);
COUNT lfn_allocate_inode(VOID); COUNT lfn_allocate_inode(VOID);
COUNT lfn_free_inode(COUNT handle); COUNT lfn_free_inode(COUNT handle);
COUNT lfn_setup_inode(COUNT handle, ULONG dirstart, UWORD diroff); COUNT lfn_setup_inode(COUNT handle, ULONG dirstart, ULONG diroff);
COUNT lfn_create_entries(COUNT handle, lfn_inode_ptr lip); COUNT lfn_create_entries(COUNT handle, lfn_inode_ptr lip);
COUNT lfn_remove_entries(COUNT handle); COUNT lfn_remove_entries(COUNT handle);