Support wide Curses on MS-DOS

Also, fix IBMGraphics on Curses
This commit is contained in:
Ray Chason
2022-10-01 23:44:42 -04:00
parent a8bfeb4dca
commit 8b6fe9d205
31 changed files with 315263 additions and 22 deletions

View File

@@ -38,6 +38,16 @@ dospkg: $(GAMEBIN) $(TARGETPFX)recover.exe ../dat/nhtiles.bmp
cp ../sys/share/NetHack.cnf $(TARGETPFX)pkg/NETHACK.CNF
cp ../sys/msdos/sysconf $(TARGETPFX)pkg/SYSCONF
cp ../doc/nethack.txt $(TARGETPFX)pkg/NETHACK.TXT
ifdef WANT_DOSVGA
cp ../sys/msdos/fonts/ter-u16b.psf $(TARGETPFX)pkg/TER-U16B.PSF
cp ../sys/msdos/fonts/ter-u16v.psf $(TARGETPFX)pkg/TER-U16V.PSF
cp ../sys/msdos/fonts/ter-u18b.psf $(TARGETPFX)pkg/TER-U18B.PSF
cp ../sys/msdos/fonts/ter-u20b.psf $(TARGETPFX)pkg/TER-U20B.PSF
cp ../sys/msdos/fonts/ter-u22b.psf $(TARGETPFX)pkg/TER-U22B.PSF
cp ../sys/msdos/fonts/ter-u24b.psf $(TARGETPFX)pkg/TER-U24B.PSF
cp ../sys/msdos/fonts/ter-u28b.psf $(TARGETPFX)pkg/TER-U28B.PSF
cp ../sys/msdos/fonts/ter-u32b.psf $(TARGETPFX)pkg/TER-U32B.PSF
endif
cp ../lib/djgpp/cwsdpmi/bin/CWSDPMI.EXE $(TARGETPFX)pkg/CWSDPMI.EXE
-touch $(TARGETPFX)pkg/RECORD
cd $(TARGETPFX)pkg ; zip -9 ../NH370DOS.ZIP * ; cd ../../..
@@ -180,13 +190,13 @@ $(TARGETPFX)touch.o : $(PDCTOP)/pdcurses/touch.c
$(TARGETPFX)util.o : $(PDCTOP)/pdcurses/util.c
$(TARGETPFX)window.o : $(PDCTOP)/pdcurses/window.c
$(TARGETPFX)debug.o : $(PDCTOP)/pdcurses/debug.c
$(TARGETPFX)pdcclip.o : $(PDCTOP)/dos/pdcclip.c
$(TARGETPFX)pdcdisp.o : $(PDCTOP)/dos/pdcdisp.c
$(TARGETPFX)pdcgetsc.o : $(PDCTOP)/dos/pdcgetsc.c
$(TARGETPFX)pdckbd.o : $(PDCTOP)/dos/pdckbd.c
$(TARGETPFX)pdcscrn.o : $(PDCTOP)/dos/pdcscrn.c
$(TARGETPFX)pdcsetsc.o : $(PDCTOP)/dos/pdcsetsc.c
$(TARGETPFX)pdcutil.o : $(PDCTOP)/dos/pdcutil.c
$(TARGETPFX)pdcclip.o : $(PDCPORT)/pdcclip.c
$(TARGETPFX)pdcdisp.o : $(PDCPORT)/pdcdisp.c
$(TARGETPFX)pdcgetsc.o : $(PDCPORT)/pdcgetsc.c
$(TARGETPFX)pdckbd.o : $(PDCPORT)/pdckbd.c
$(TARGETPFX)pdcscrn.o : $(PDCPORT)/pdcscrn.c
$(TARGETPFX)pdcsetsc.o : $(PDCPORT)/pdcsetsc.c
$(TARGETPFX)pdcutil.o : $(PDCPORT)/pdcutil.c
endif # BUILD_PDCURSES
#
# End of cross-compiling -POST section

View File

@@ -74,9 +74,18 @@ ifdef BUILD_PDCURSES
# PD Curses library
#===============-=================================================
ifdef WANT_WIN_CURSES
ifdef WANT_DOSVGA
PDCTOP = ../lib/pdcursesmod
PDCPORT = $(PDCTOP)/dosvga
PDCURSESDEF= -I$(PDCTOP) -I$(PDCPORT) \
-D"CURSES_GRAPHICS" -D"CURSES_BRIEF_INCLUDE" \
-D"PDC_WIDE" -D"CURSES_UNICODE"
else
PDCTOP = ../lib/pdcurses
PDCURSESDEF= -I../lib/pdcurses -I../lib/pdcurses/dos \
PDCPORT = $(PDCTOP)/dos
PDCURSESDEF= -I$(PDCTOP) -I$(PDCPORT) \
-D"CURSES_GRAPHICS" -D"CURSES_BRIEF_INCLUDE"
endif # WANT_DOSVGA
PDCLIBOBJ1= $(TARGETPFX)addch.o $(TARGETPFX)addchstr.o \
$(TARGETPFX)addstr.o $(TARGETPFX)attr.o \
$(TARGETPFX)beep.o $(TARGETPFX)bkgd.o \
@@ -152,7 +161,7 @@ MSDOS_TARGET_CFLAGS = -c -O -I../include -I../sys/msdos -I../win/share \
-Wimplicit -Wimplicit-function-declaration -Wimplicit-int \
-Wmissing-parameter-type -Wold-style-definition -Wstrict-prototypes \
-DGCC_WARN
PDCINCL += -I$(PDCTOP)/dos
PDCINCL += -I$(PDCPORT)
PDC_TARGET_CFLAGS = $(MSDOS_TARGET_CFLAGS) -Wno-unused-parameter \
-Wno-missing-prototypes
LUA_TARGET_CFLAGS = $(MSDOS_TARGET_CFLAGS)
@@ -189,7 +198,7 @@ VARDATND += nhtiles.bmp
#
ifdef WANT_WIN_CURSES
# rules for pdcurses dos-specific files
$(TARGETPFX)%.o : $(PDCTOP)/dos/%.c
$(TARGETPFX)%.o : $(PDCPORT)/%.c
$(TARGET_CC) $(PDCINCL) $(PDC_TARGET_CFLAGS) -o$@ $<
endif # WANT_WIN_CURSES
#