Skip to content

Commit

Permalink
far-fix: symbols BIOSInt13, UserInt13 and BIOSInt19 are far (in LGROUP)
Browse files Browse the repository at this point in the history
these symbols are in LGROUP and generaly cannot be addressed by DGROUP:offset
for Turbo C DGROUP offset overflow because symbols are too far to be addressed by DGROUP offset
  • Loading branch information
jmalak authored and PerditionC committed Jul 15, 2024
1 parent 4a1fd57 commit db43a4b
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 3 deletions.
2 changes: 1 addition & 1 deletion hdr/win.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ extern struct WinStartupInfo winStartupInfo;
#if defined __GNUC__
extern UWORD winseg1, winseg2, winseg3;
extern UBYTE markEndInstanceData;
extern struct lol ASM FAR DATASTART;
extern struct lol FAR ASM DATASTART;
#endif


Expand Down
2 changes: 1 addition & 1 deletion kernel/init-mod.h
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,7 @@ extern struct lol FAR *LoL;
extern struct dhdr DOSTEXTFAR ASM blk_dev; /* Block device (Disk) driver */

extern struct buffer FAR *DOSFAR firstAvailableBuf; /* first 'available' buffer */
extern struct lol ASM FAR DATASTART;
extern struct lol FAR ASM DATASTART;

extern BYTE DOSFAR ASM _HMATextAvailable; /* first byte of available CODE area */
extern BYTE FAR ASM _HMATextStart[]; /* first byte of HMAable CODE area */
Expand Down
4 changes: 3 additions & 1 deletion kernel/inthndlr.c
Original file line number Diff line number Diff line change
Expand Up @@ -1914,7 +1914,9 @@ struct int2f12regs {
UWORD callerARG1; /* used if called from INT2F/12 */
};

extern intvec ASM BIOSInt13, ASM UserInt13, ASM BIOSInt19;
extern intvec FAR ASM BIOSInt13;
extern intvec FAR ASM UserInt13;
extern intvec FAR ASM BIOSInt19;


/* WARNING: modifications in `r' are used outside of int2F_12_handler()
Expand Down

0 comments on commit db43a4b

Please sign in to comment.