Remove CR

This commit is contained in:
Mark Hessling
2001-01-10 08:32:23 +00:00
parent 09b4c08bd9
commit c1d446337f
52 changed files with 15340 additions and 15340 deletions

4222
curses.h

File diff suppressed because it is too large Load Diff

1186
curspriv.h

File diff suppressed because it is too large Load Diff

View File

@@ -1,21 +1,21 @@
Welcome to PDCurses
Contents
--------
This directory contains core PDCurses source code files specific to
the DOS platform.
Distribution Status
-------------------
The files in this directory are released to the Public Domain.
Acknowlegements
---------------
Watcom C port was provided by Pieter Kunst (kunst@prl.philips.nl)
DJGPP 1.x port was provided by David Nugent (davidn@csource.oz.au)
Microway NDP port was provided by ????
Welcome to PDCurses
Contents
--------
This directory contains core PDCurses source code files specific to
the DOS platform.
Distribution Status
-------------------
The files in this directory are released to the Public Domain.
Acknowlegements
---------------
Watcom C port was provided by Pieter Kunst (kunst@prl.philips.nl)
DJGPP 1.x port was provided by David Nugent (davidn@csource.oz.au)
Microway NDP port was provided by ????

View File

@@ -1,154 +1,154 @@
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Turbo-C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := bcc # C-compiler and flags
CFLAGS +=
AS := tasm # Assembler and flags
ASFLAGS +=
LD = tlink # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := tpc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O .SWAP: %.c ; $(CC) $(CFLAGS) -c $<
%$O .SWAP: %$P ; $(PC) $(PFLAGS) -c $<
%$O .SWAP: %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O .SWAP: %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E .SWAP: %$O ; $(CC) $(LDFLAGS) -e$@ $<
# lex and yacc rules
%.c .SWAP: %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c .SWAP: %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS/$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A .SWAP:
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Turbo-C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := bcc # C-compiler and flags
CFLAGS +=
AS := tasm # Assembler and flags
ASFLAGS +=
LD = tlink # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := tpc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O .SWAP: %.c ; $(CC) $(CFLAGS) -c $<
%$O .SWAP: %$P ; $(PC) $(PFLAGS) -c $<
%$O .SWAP: %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O .SWAP: %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E .SWAP: %$O ; $(CC) $(LDFLAGS) -e$@ $<
# lex and yacc rules
%.c .SWAP: %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c .SWAP: %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS/$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A .SWAP:
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"

View File

@@ -1,48 +1,48 @@
-+addch.obj &
-+addchstr.obj &
-+addstr.obj &
-+attr.obj &
-+beep.obj &
-+bkgd.obj &
-+border.obj &
-+clear.obj &
-+color.obj &
-+delch.obj &
-+deleteln.obj &
-+getch.obj &
-+getstr.obj &
-+getyx.obj &
-+inch.obj &
-+inchstr.obj &
-+initscr.obj &
-+inopts.obj &
-+insch.obj &
-+insstr.obj &
-+instr.obj &
-+kernel.obj &
-+mouse.obj &
-+move.obj &
-+outopts.obj &
-+overlay.obj &
-+pad.obj &
-+printw.obj &
-+refresh.obj &
-+scanw.obj &
-+scroll.obj &
-+slk.obj &
-+termattr.obj &
-+terminfo.obj &
-+touch.obj &
-+util.obj &
-+window.obj &
-+pdcclip.obj &
-+pdcdebug.obj &
-+pdcdisp.obj &
-+pdcgetsc.obj &
-+pdckbd.obj &
-+pdcprint.obj &
-+pdcscrn.obj &
-+pdcsetsc.obj &
-+pdcutil.obj &
-+pdcwin.obj &
,lib.map
-+addch.obj &
-+addchstr.obj &
-+addstr.obj &
-+attr.obj &
-+beep.obj &
-+bkgd.obj &
-+border.obj &
-+clear.obj &
-+color.obj &
-+delch.obj &
-+deleteln.obj &
-+getch.obj &
-+getstr.obj &
-+getyx.obj &
-+inch.obj &
-+inchstr.obj &
-+initscr.obj &
-+inopts.obj &
-+insch.obj &
-+insstr.obj &
-+instr.obj &
-+kernel.obj &
-+mouse.obj &
-+move.obj &
-+outopts.obj &
-+overlay.obj &
-+pad.obj &
-+printw.obj &
-+refresh.obj &
-+scanw.obj &
-+scroll.obj &
-+slk.obj &
-+termattr.obj &
-+terminfo.obj &
-+touch.obj &
-+util.obj &
-+window.obj &
-+pdcclip.obj &
-+pdcdebug.obj &
-+pdcdisp.obj &
-+pdcgetsc.obj &
-+pdckbd.obj &
-+pdcprint.obj &
-+pdcscrn.obj &
-+pdcsetsc.obj &
-+pdcutil.obj &
-+pdcwin.obj &
,lib.map

View File

@@ -1,342 +1,342 @@
################################################################################
#
# Borland MAKE Makefile for PDCurses library - DOS BC++ 3.0+
#
# Usage: make -f [path\]bccdos.mak [-DDEBUG] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =c:\c
MODEL =l
################################################################################
# Nothing below here should required changing.
################################################################################
VER=23
VERDOT=2.3
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
CCLIBDIR =$(CC_HOME)\lib
CCINCDIR =$(CC_HOME)\include
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = bcc
!if $d(DEBUG)
CFLAGS = -N -v -y -DPDCDEBUG
LDFLAGS = /c /v /s /l /e
!else
CFLAGS = -O
LDFLAGS =
!endif
CPPFLAGS = -I$(PDCURSES_HOME) -I$(CCINCDIR)
CCFLAGS = -c +$(osdir)\bccdos.rsp -m$(MODEL) $(CFLAGS) $(CPPFLAGS)
LINK = tlink
CCLIBS =$(CCLIBDIR)\c$(MODEL).lib
STARTUP =$(CCLIBDIR)\c0$(MODEL).obj
LIBEXE = tlib /C /E
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\bccdos.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS)
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\window.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -o$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBPANEL)+$(LIBCURSES)+$(CCLIBS);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj+tui.obj,$*,,$(LIBCURSES)+$(CCLIBS);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Borland C++ 3.1 PDC$(VER)BCC.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Borland C/C++ 3.1. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)bcc *.*
cd ..
################################################################################
#
# Borland MAKE Makefile for PDCurses library - DOS BC++ 3.0+
#
# Usage: make -f [path\]bccdos.mak [-DDEBUG] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =c:\c
MODEL =l
################################################################################
# Nothing below here should required changing.
################################################################################
VER=23
VERDOT=2.3
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
CCLIBDIR =$(CC_HOME)\lib
CCINCDIR =$(CC_HOME)\include
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = bcc
!if $d(DEBUG)
CFLAGS = -N -v -y -DPDCDEBUG
LDFLAGS = /c /v /s /l /e
!else
CFLAGS = -O
LDFLAGS =
!endif
CPPFLAGS = -I$(PDCURSES_HOME) -I$(CCINCDIR)
CCFLAGS = -c +$(osdir)\bccdos.rsp -m$(MODEL) $(CFLAGS) $(CPPFLAGS)
LINK = tlink
CCLIBS =$(CCLIBDIR)\c$(MODEL).lib
STARTUP =$(CCLIBDIR)\c0$(MODEL).obj
LIBEXE = tlib /C /E
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\bccdos.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS)
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\window.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -o$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBPANEL)+$(LIBCURSES)+$(CCLIBS);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj+tui.obj,$*,,$(LIBCURSES)+$(CCLIBS);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Borland C++ 3.1 PDC$(VER)BCC.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Borland C/C++ 3.1. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)bcc *.*
cd ..

View File

@@ -1,10 +1,10 @@
-1-
-K
-G
-rd
-d
-V
-w-eff
-j0
-c
-P-
-1-
-K
-G
-rd
-d
-V
-w-eff
-j0
-c
-P-

View File

@@ -1,10 +1,10 @@
-1-
-K
-G
-rd
-d
-V
-w-eff
-j0
-c
-P-
-1-
-K
-G
-rd
-d
-V
-w-eff
-j0
-c
-P-

View File

@@ -1,10 +1,10 @@
-1-
-K
-G
-rd
-d
-V
-w-eff
-j0
-c
-P-
-1-
-K
-G
-rd
-d
-V
-w-eff
-j0
-c
-P-

View File

@@ -1,48 +1,48 @@
-+addch.o &
-+addchstr.o &
-+addstr.o &
-+attr.o &
-+beep.o &
-+bkgd.o &
-+border.o &
-+clear.o &
-+color.o &
-+delch.o &
-+deleteln.o &
-+getch.o &
-+getstr.o &
-+getyx.o &
-+inch.o &
-+inchstr.o &
-+initscr.o &
-+inopts.o &
-+insch.o &
-+insstr.o &
-+instr.o &
-+kernel.o &
-+mouse.o &
-+move.o &
-+outopts.o &
-+overlay.o &
-+pad.o &
-+printw.o &
-+refresh.o &
-+scanw.o &
-+scroll.o &
-+slk.o &
-+termattr.o &
-+terminfo.o &
-+touch.o &
-+util.o &
-+window.o &
-+pdcclip.o &
-+pdcdebug.o &
-+pdcdisp.o &
-+pdcgetsc.o &
-+pdckbd.o &
-+pdcprint.o &
-+pdcscrn.o &
-+pdcsetsc.o &
-+pdcutil.o &
-+pdcwin.o &
,lib.map
-+addch.o &
-+addchstr.o &
-+addstr.o &
-+attr.o &
-+beep.o &
-+bkgd.o &
-+border.o &
-+clear.o &
-+color.o &
-+delch.o &
-+deleteln.o &
-+getch.o &
-+getstr.o &
-+getyx.o &
-+inch.o &
-+inchstr.o &
-+initscr.o &
-+inopts.o &
-+insch.o &
-+insstr.o &
-+instr.o &
-+kernel.o &
-+mouse.o &
-+move.o &
-+outopts.o &
-+overlay.o &
-+pad.o &
-+printw.o &
-+refresh.o &
-+scanw.o &
-+scroll.o &
-+slk.o &
-+termattr.o &
-+terminfo.o &
-+touch.o &
-+util.o &
-+window.o &
-+pdcclip.o &
-+pdcdebug.o &
-+pdcdisp.o &
-+pdcgetsc.o &
-+pdckbd.o &
-+pdcprint.o &
-+pdcscrn.o &
-+pdcsetsc.o &
-+pdcutil.o &
-+pdcwin.o &
,lib.map

View File

@@ -1,361 +1,361 @@
################################################################################
#
# GNU MAKE (3.7.3) Makefile for PDCurses library - DOS DJGPP V2.0
#
# Usage: make -f [path\]gccdos.mak [-DDEBUG] [target]
#
# where target can be any of:
# [all|demos|pdcurses.a|panel.a|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:/curses
PDC_HOME =c:\curses
CC_HOME =d:/djgpp
################################################################################
# Nothing below here should required changing.
################################################################################
VER=23
VERDOT=2.3
PDCURSES_CURSES_H =$(PDCURSES_HOME)/curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)/curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)/panel.h
CCLIBDIR =$(CC_HOME)/lib
CCINCDIR =$(CC_HOME)/include
srcdir = $(PDCURSES_HOME)/pdcurses
osdir = $(PDCURSES_HOME)/dos
pandir = $(PDCURSES_HOME)/panel
demodir = $(PDCURSES_HOME)/demos
CC = gcc
ifeq ($(DEBUG),Y)
CFLAGS = -c -g -Wall -DPDCDEBUG
LDFLAGS = -g
else
CFLAGS = -c -O -Wall
LDFLAGS =
endif
CPPFLAGS = -I$(PDCURSES_HOME) -I$(CCINCDIR) -D_NAIVE_DOS_REGS
CCFLAGS = $(CFLAGS) $(CPPFLAGS)
LINK = gcc
COFF2EXE =coff2exe
LIBEXE = ar
LIBFLAGS =rcv
LIBCURSES = pdcurses.a
LIBPANEL = panel.a
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.o
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.o \
addchstr.o \
addstr.o \
attr.o \
beep.o \
bkgd.o \
border.o \
clear.o \
color.o \
delch.o \
deleteln.o \
getch.o \
getstr.o \
getyx.o \
inch.o \
inchstr.o \
initscr.o \
inopts.o \
insch.o \
insstr.o \
instr.o \
kernel.o \
mouse.o \
move.o \
outopts.o \
overlay.o \
pad.o \
printw.o \
refresh.o \
scanw.o \
scroll.o \
slk.o \
termattr.o \
terminfo.o \
touch.o \
util.o \
window.o
PDCOBJS = \
pdcclip.o \
pdcdebug.o \
pdcdisp.o \
pdcgetsc.o \
pdcgo32.o \
pdckbd.o \
pdcprint.o \
pdcscrn.o \
pdcsetsc.o \
pdcutil.o \
pdcwin.o
PANOBJS = \
panel.o
pdcurses.a : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $(LIBFLAGS) $@ $(LIBOBJS) $(PDCOBJS)
panel.a : $(PANOBJS)
$(LIBEXE) $(LIBFLAGS) $@ $(PANOBJS)
addch.o: $(srcdir)/addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/addch.c
addchstr.o: $(srcdir)/addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/addchstr.c
addstr.o: $(srcdir)/addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/addstr.c
attr.o: $(srcdir)/attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/attr.c
beep.o: $(srcdir)/beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/beep.c
bkgd.o: $(srcdir)/bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/bkgd.c
border.o: $(srcdir)/border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/border.c
clear.o: $(srcdir)/clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/clear.c
color.o: $(srcdir)/color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/color.c
delch.o: $(srcdir)/delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/delch.c
deleteln.o: $(srcdir)/deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/deleteln.c
getch.o: $(srcdir)/getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/getch.c
getstr.o: $(srcdir)/getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/getstr.c
getyx.o: $(srcdir)/getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/getyx.c
inch.o: $(srcdir)/inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/inch.c
inchstr.o: $(srcdir)/inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/inchstr.c
initscr.o: $(srcdir)/initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/initscr.c
inopts.o: $(srcdir)/inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/inopts.c
insch.o: $(srcdir)/insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/insch.c
insstr.o: $(srcdir)/insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/insstr.c
instr.o: $(srcdir)/instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/instr.c
kernel.o: $(srcdir)/kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/kernel.c
mouse.o: $(srcdir)/mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/mouse.c
move.o: $(srcdir)/move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/move.c
outopts.o: $(srcdir)/outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/outopts.c
overlay.o: $(srcdir)/overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/overlay.c
pad.o: $(srcdir)/pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/pad.c
printw.o: $(srcdir)/printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/printw.c
refresh.o: $(srcdir)/refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/refresh.c
scanw.o: $(srcdir)/scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/scanw.c
scroll.o: $(srcdir)/scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/scroll.c
slk.o: $(srcdir)/slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/slk.c
termattr.o: $(srcdir)/termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/termattr.c
terminfo.o: $(srcdir)/terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/terminfo.c
touch.o: $(srcdir)/touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/touch.c
util.o: $(srcdir)/util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/util.c
window.o: $(srcdir)/window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/window.c
pdcclip.o: $(osdir)/pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcclip.c
pdcdebug.o: $(srcdir)/pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/pdcdebug.c
pdcdisp.o: $(osdir)/pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcdisp.c
pdcgetsc.o: $(osdir)/pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcgetsc.c
pdcgo32.o: $(osdir)/pdcgo32.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcgo32.c
pdckbd.o: $(osdir)/pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdckbd.c
pdcprint.o: $(osdir)/pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcprint.c
pdcscrn.o: $(osdir)/pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcscrn.c
pdcsetsc.o: $(osdir)/pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcsetsc.c
pdcutil.o: $(srcdir)/pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/pdcutil.c
pdcwin.o: $(srcdir)/pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/pdcwin.c
#------------------------------------------------------------------------
panel.o: $(pandir)/panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -o$@ $(pandir)/panel.c
#------------------------------------------------------------------------
firework.exe: firework.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o firework firework.o $(LIBCURSES)
$(COFF2EXE) firework
strip $@
newdemo.exe: newdemo.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o newdemo newdemo.o $(LIBCURSES)
$(COFF2EXE) newdemo
strip $@
ptest.exe: ptest.o $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) -o ptest ptest.o $(LIBCURSES) $(LIBPANEL)
$(COFF2EXE) ptest
strip $@
testcurs.exe: testcurs.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o testcurs testcurs.o $(LIBCURSES)
$(COFF2EXE) testcurs
strip $@
tuidemo.exe: tuidemo.o tui.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o tuidemo tuidemo.o tui.o $(LIBCURSES)
$(COFF2EXE) tuidemo
strip $@
xmas.exe: xmas.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o xmas xmas.o $(LIBCURSES)
$(COFF2EXE) xmas
strip $@
firework.o: $(demodir)/firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/firework.c
newdemo.o: $(demodir)/newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/newdemo.c
ptest.o: $(demodir)/ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/ptest.c
testcurs.o: $(demodir)/testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/testcurs.c
tui.o: $(demodir)/tui.c $(demodir)/tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o $@ $(demodir)/tui.c
tuidemo.o: $(demodir)/tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o $@ $(demodir)/tuidemo.c
xmas.o: $(demodir)/xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/xmas.c
dist: pdcurses.a panel.a
-mkdir tmp
cd tmp
copy $(PDC_HOME)\README README
copy $(PDC_HOME)\readme.?? .
copy $(PDC_HOME)\curses.h .
copy $(PDC_HOME)\curspriv.h .
copy $(PDC_HOME)\maintain.er .
copy ..\pdcurses.a .
copy ..\panel.a .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for DJGPP 2.0 PDC$(VER)DJG.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo DJGPP 2.0. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)djg *.*
cd ..
################################################################################
#
# GNU MAKE (3.7.3) Makefile for PDCurses library - DOS DJGPP V2.0
#
# Usage: make -f [path\]gccdos.mak [-DDEBUG] [target]
#
# where target can be any of:
# [all|demos|pdcurses.a|panel.a|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:/curses
PDC_HOME =c:\curses
CC_HOME =d:/djgpp
################################################################################
# Nothing below here should required changing.
################################################################################
VER=23
VERDOT=2.3
PDCURSES_CURSES_H =$(PDCURSES_HOME)/curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)/curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)/panel.h
CCLIBDIR =$(CC_HOME)/lib
CCINCDIR =$(CC_HOME)/include
srcdir = $(PDCURSES_HOME)/pdcurses
osdir = $(PDCURSES_HOME)/dos
pandir = $(PDCURSES_HOME)/panel
demodir = $(PDCURSES_HOME)/demos
CC = gcc
ifeq ($(DEBUG),Y)
CFLAGS = -c -g -Wall -DPDCDEBUG
LDFLAGS = -g
else
CFLAGS = -c -O -Wall
LDFLAGS =
endif
CPPFLAGS = -I$(PDCURSES_HOME) -I$(CCINCDIR) -D_NAIVE_DOS_REGS
CCFLAGS = $(CFLAGS) $(CPPFLAGS)
LINK = gcc
COFF2EXE =coff2exe
LIBEXE = ar
LIBFLAGS =rcv
LIBCURSES = pdcurses.a
LIBPANEL = panel.a
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.o
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.o \
addchstr.o \
addstr.o \
attr.o \
beep.o \
bkgd.o \
border.o \
clear.o \
color.o \
delch.o \
deleteln.o \
getch.o \
getstr.o \
getyx.o \
inch.o \
inchstr.o \
initscr.o \
inopts.o \
insch.o \
insstr.o \
instr.o \
kernel.o \
mouse.o \
move.o \
outopts.o \
overlay.o \
pad.o \
printw.o \
refresh.o \
scanw.o \
scroll.o \
slk.o \
termattr.o \
terminfo.o \
touch.o \
util.o \
window.o
PDCOBJS = \
pdcclip.o \
pdcdebug.o \
pdcdisp.o \
pdcgetsc.o \
pdcgo32.o \
pdckbd.o \
pdcprint.o \
pdcscrn.o \
pdcsetsc.o \
pdcutil.o \
pdcwin.o
PANOBJS = \
panel.o
pdcurses.a : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $(LIBFLAGS) $@ $(LIBOBJS) $(PDCOBJS)
panel.a : $(PANOBJS)
$(LIBEXE) $(LIBFLAGS) $@ $(PANOBJS)
addch.o: $(srcdir)/addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/addch.c
addchstr.o: $(srcdir)/addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/addchstr.c
addstr.o: $(srcdir)/addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/addstr.c
attr.o: $(srcdir)/attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/attr.c
beep.o: $(srcdir)/beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/beep.c
bkgd.o: $(srcdir)/bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/bkgd.c
border.o: $(srcdir)/border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/border.c
clear.o: $(srcdir)/clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/clear.c
color.o: $(srcdir)/color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/color.c
delch.o: $(srcdir)/delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/delch.c
deleteln.o: $(srcdir)/deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/deleteln.c
getch.o: $(srcdir)/getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/getch.c
getstr.o: $(srcdir)/getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/getstr.c
getyx.o: $(srcdir)/getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/getyx.c
inch.o: $(srcdir)/inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/inch.c
inchstr.o: $(srcdir)/inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/inchstr.c
initscr.o: $(srcdir)/initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/initscr.c
inopts.o: $(srcdir)/inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/inopts.c
insch.o: $(srcdir)/insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/insch.c
insstr.o: $(srcdir)/insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/insstr.c
instr.o: $(srcdir)/instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/instr.c
kernel.o: $(srcdir)/kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/kernel.c
mouse.o: $(srcdir)/mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/mouse.c
move.o: $(srcdir)/move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/move.c
outopts.o: $(srcdir)/outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/outopts.c
overlay.o: $(srcdir)/overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/overlay.c
pad.o: $(srcdir)/pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/pad.c
printw.o: $(srcdir)/printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/printw.c
refresh.o: $(srcdir)/refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/refresh.c
scanw.o: $(srcdir)/scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/scanw.c
scroll.o: $(srcdir)/scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/scroll.c
slk.o: $(srcdir)/slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/slk.c
termattr.o: $(srcdir)/termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/termattr.c
terminfo.o: $(srcdir)/terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/terminfo.c
touch.o: $(srcdir)/touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/touch.c
util.o: $(srcdir)/util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/util.c
window.o: $(srcdir)/window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/window.c
pdcclip.o: $(osdir)/pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcclip.c
pdcdebug.o: $(srcdir)/pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/pdcdebug.c
pdcdisp.o: $(osdir)/pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcdisp.c
pdcgetsc.o: $(osdir)/pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcgetsc.c
pdcgo32.o: $(osdir)/pdcgo32.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcgo32.c
pdckbd.o: $(osdir)/pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdckbd.c
pdcprint.o: $(osdir)/pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcprint.c
pdcscrn.o: $(osdir)/pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcscrn.c
pdcsetsc.o: $(osdir)/pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)/pdcsetsc.c
pdcutil.o: $(srcdir)/pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/pdcutil.c
pdcwin.o: $(srcdir)/pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)/pdcwin.c
#------------------------------------------------------------------------
panel.o: $(pandir)/panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -o$@ $(pandir)/panel.c
#------------------------------------------------------------------------
firework.exe: firework.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o firework firework.o $(LIBCURSES)
$(COFF2EXE) firework
strip $@
newdemo.exe: newdemo.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o newdemo newdemo.o $(LIBCURSES)
$(COFF2EXE) newdemo
strip $@
ptest.exe: ptest.o $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) -o ptest ptest.o $(LIBCURSES) $(LIBPANEL)
$(COFF2EXE) ptest
strip $@
testcurs.exe: testcurs.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o testcurs testcurs.o $(LIBCURSES)
$(COFF2EXE) testcurs
strip $@
tuidemo.exe: tuidemo.o tui.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o tuidemo tuidemo.o tui.o $(LIBCURSES)
$(COFF2EXE) tuidemo
strip $@
xmas.exe: xmas.o $(LIBCURSES)
$(LINK) $(LDFLAGS) -o xmas xmas.o $(LIBCURSES)
$(COFF2EXE) xmas
strip $@
firework.o: $(demodir)/firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/firework.c
newdemo.o: $(demodir)/newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/newdemo.c
ptest.o: $(demodir)/ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/ptest.c
testcurs.o: $(demodir)/testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/testcurs.c
tui.o: $(demodir)/tui.c $(demodir)/tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o $@ $(demodir)/tui.c
tuidemo.o: $(demodir)/tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o $@ $(demodir)/tuidemo.c
xmas.o: $(demodir)/xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)/xmas.c
dist: pdcurses.a panel.a
-mkdir tmp
cd tmp
copy $(PDC_HOME)\README README
copy $(PDC_HOME)\readme.?? .
copy $(PDC_HOME)\curses.h .
copy $(PDC_HOME)\curspriv.h .
copy $(PDC_HOME)\maintain.er .
copy ..\pdcurses.a .
copy ..\panel.a .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for DJGPP 2.0 PDC$(VER)DJG.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo DJGPP 2.0. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)djg *.*
cd ..

View File

@@ -1,154 +1,154 @@
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Microsoft C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := cl # C-compiler and flags
CFLAGS +=
AS := masm # Assembler and flags
ASFLAGS +=
LD = link # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := any_pc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O : %.c ; $(CC) $(CFLAGS) -c $<
%$O : %$P ; $(PC) $(PFLAGS) -c $<
%$O : %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O : %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E : %$O ; $(CC) $(LDFLAGS) -o$@ $< $(LDLIBS)
# lex and yacc rules
%.c : %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c : %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS$$(DIRSEPSTR)$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS$$(DIRSEPSTR)$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A :
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Microsoft C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := cl # C-compiler and flags
CFLAGS +=
AS := masm # Assembler and flags
ASFLAGS +=
LD = link # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := any_pc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O : %.c ; $(CC) $(CFLAGS) -c $<
%$O : %$P ; $(PC) $(PFLAGS) -c $<
%$O : %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O : %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E : %$O ; $(CC) $(LDFLAGS) -o$@ $< $(LDLIBS)
# lex and yacc rules
%.c : %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c : %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS$$(DIRSEPSTR)$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS$$(DIRSEPSTR)$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A :
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"

View File

@@ -1,48 +1,48 @@
-+addch.obj &
-+addchstr.obj &
-+addstr.obj &
-+attr.obj &
-+beep.obj &
-+bkgd.obj &
-+border.obj &
-+clear.obj &
-+color.obj &
-+delch.obj &
-+deleteln.obj &
-+getch.obj &
-+getstr.obj &
-+getyx.obj &
-+inch.obj &
-+inchstr.obj &
-+initscr.obj &
-+inopts.obj &
-+insch.obj &
-+insstr.obj &
-+instr.obj &
-+kernel.obj &
-+mouse.obj &
-+move.obj &
-+outopts.obj &
-+overlay.obj &
-+pad.obj &
-+printw.obj &
-+refresh.obj &
-+scanw.obj &
-+scroll.obj &
-+slk.obj &
-+termattr.obj &
-+terminfo.obj &
-+touch.obj &
-+util.obj &
-+window.obj &
-+pdcclip.obj &
-+pdcdebug.obj &
-+pdcdisp.obj &
-+pdcgetsc.obj &
-+pdckbd.obj &
-+pdcprint.obj &
-+pdcscrn.obj &
-+pdcsetsc.obj &
-+pdcutil.obj &
-+pdcwin.obj &
,lib.map;
-+addch.obj &
-+addchstr.obj &
-+addstr.obj &
-+attr.obj &
-+beep.obj &
-+bkgd.obj &
-+border.obj &
-+clear.obj &
-+color.obj &
-+delch.obj &
-+deleteln.obj &
-+getch.obj &
-+getstr.obj &
-+getyx.obj &
-+inch.obj &
-+inchstr.obj &
-+initscr.obj &
-+inopts.obj &
-+insch.obj &
-+insstr.obj &
-+instr.obj &
-+kernel.obj &
-+mouse.obj &
-+move.obj &
-+outopts.obj &
-+overlay.obj &
-+pad.obj &
-+printw.obj &
-+refresh.obj &
-+scanw.obj &
-+scroll.obj &
-+slk.obj &
-+termattr.obj &
-+terminfo.obj &
-+touch.obj &
-+util.obj &
-+window.obj &
-+pdcclip.obj &
-+pdcdebug.obj &
-+pdcdisp.obj &
-+pdcgetsc.obj &
-+pdckbd.obj &
-+pdcprint.obj &
-+pdcscrn.obj &
-+pdcsetsc.obj &
-+pdcutil.obj &
-+pdcwin.obj &
,lib.map;

View File

@@ -1,349 +1,349 @@
################################################################################
#
# NMAKE Makefile for PDCurses library - DOS MSC
#
# Usage: nmake -f [path\]dosmsc.mak [DEBUG=1] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =c:\c600
MODEL =L # one of L, S, M, T, H, C
SIZE =LARGE # one of LARGE, SMALL, MEDIUM, TINY, HUGE, COMPACT
################################################################################
# Nothing below here should required changing.
################################################################################
VER=23
VERDOT=2.3
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
CCLIBDIR =$(ICC_HOME)\lib
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = cl
!ifdef DEBUG
CFLAGS = /nologo /Od /Zi /DPDCDEBUG
LDFLAGS = /CO /NOE /SE:160
!else
CFLAGS = /Ox
LDFLAGS = /NOE /SE:160
!endif
CPPFLAGS = -I$(PDCURSES_HOME)
CCFLAGS = /J /nologo /c /EM /D$(SIZE) /A$(MODEL) $(CFLAGS) $(CPPFLAGS)
LINK = link
CCLIBS =
LIBEXE = lib
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
LIBRARIES = $(LIBCURSES) $(LIBPANEL)
DEMOS = testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(LIBRARIES) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcclip.obj \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\mscdos.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS);
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -Fo$@ $(pandir)\panel.c
#------------------------------------------------------------------------
# DLFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB);
# PANFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB)+$(PANLIB);
# $(LINK) $*.obj,$*.exe,$*.map,$(CCLIBS)+$(LIBCURSES) $(LDFLAGS);
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBPANEL)+$(LIBCURSES);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Microsoft C++ 6.0 PDC$(VER)MSC.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Microsoft C/C++ 6.0. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)msc *.*
cd ..
################################################################################
#
# NMAKE Makefile for PDCurses library - DOS MSC
#
# Usage: nmake -f [path\]dosmsc.mak [DEBUG=1] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =c:\c600
MODEL =L # one of L, S, M, T, H, C
SIZE =LARGE # one of LARGE, SMALL, MEDIUM, TINY, HUGE, COMPACT
################################################################################
# Nothing below here should required changing.
################################################################################
VER=23
VERDOT=2.3
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
CCLIBDIR =$(ICC_HOME)\lib
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = cl
!ifdef DEBUG
CFLAGS = /nologo /Od /Zi /DPDCDEBUG
LDFLAGS = /CO /NOE /SE:160
!else
CFLAGS = /Ox
LDFLAGS = /NOE /SE:160
!endif
CPPFLAGS = -I$(PDCURSES_HOME)
CCFLAGS = /J /nologo /c /EM /D$(SIZE) /A$(MODEL) $(CFLAGS) $(CPPFLAGS)
LINK = link
CCLIBS =
LIBEXE = lib
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
LIBRARIES = $(LIBCURSES) $(LIBPANEL)
DEMOS = testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(LIBRARIES) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcclip.obj \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\mscdos.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS);
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -Fo$@ $(pandir)\panel.c
#------------------------------------------------------------------------
# DLFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB);
# PANFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB)+$(PANLIB);
# $(LINK) $*.obj,$*.exe,$*.map,$(CCLIBS)+$(LIBCURSES) $(LDFLAGS);
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBPANEL)+$(LIBCURSES);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Microsoft C++ 6.0 PDC$(VER)MSC.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Microsoft C/C++ 6.0. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)msc *.*
cd ..

View File

@@ -1,348 +1,348 @@
################################################################################
#
# NMAKE Makefile for PDCurses library - DOS MS Visual C++ 1.0
#
# Usage: nmake -f [path\]dosmsc.mak [DEBUG=1] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =l:\msvc
MODEL =L # one of L, S, M, T, H, C
SIZE =LARGE # one of LARGE, SMALL, MEDIUM, TINY, HUGE, COMPACT
################################################################################
# Nothing below here should required changing.
################################################################################
VER=23
VERDOT=2.3
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
CCLIBDIR =$(ICC_HOME)\lib
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = cl
!ifdef DEBUG
CFLAGS = /nologo /Od /Zi /DPDCDEBUG
LDFLAGS = /CO /NOE /SE:160
!else
CFLAGS = /Ox
LDFLAGS = /NOE /SE:160
!endif
CPPFLAGS = -I$(PDCURSES_HOME)
CCFLAGS = /J /nologo /c /D$(SIZE) /A$(MODEL) $(CFLAGS) $(CPPFLAGS)
LINK = link
CCLIBS =
LIBEXE = lib
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
LIBRARIES = $(LIBCURSES) $(LIBPANEL)
DEMOS = testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(LIBRARIES) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcclip.obj \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\mscdos.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS);
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -Fo$@ $(pandir)\panel.c
#------------------------------------------------------------------------
# DLFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB);
# PANFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB)+$(PANLIB);
# $(LINK) $*.obj,$*.exe,$*.map,$(CCLIBS)+$(LIBCURSES) $(LDFLAGS);
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBPANEL)+$(LIBCURSES);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Microsoft Visual C++ 1.0 PDC$(VER)VCD.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Microsoft Visual C/C++ 1.0 for DOS. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)vcd *.*
cd ..
################################################################################
#
# NMAKE Makefile for PDCurses library - DOS MS Visual C++ 1.0
#
# Usage: nmake -f [path\]dosmsc.mak [DEBUG=1] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =l:\msvc
MODEL =L # one of L, S, M, T, H, C
SIZE =LARGE # one of LARGE, SMALL, MEDIUM, TINY, HUGE, COMPACT
################################################################################
# Nothing below here should required changing.
################################################################################
VER=23
VERDOT=2.3
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
CCLIBDIR =$(ICC_HOME)\lib
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = cl
!ifdef DEBUG
CFLAGS = /nologo /Od /Zi /DPDCDEBUG
LDFLAGS = /CO /NOE /SE:160
!else
CFLAGS = /Ox
LDFLAGS = /NOE /SE:160
!endif
CPPFLAGS = -I$(PDCURSES_HOME)
CCFLAGS = /J /nologo /c /D$(SIZE) /A$(MODEL) $(CFLAGS) $(CPPFLAGS)
LINK = link
CCLIBS =
LIBEXE = lib
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
LIBRARIES = $(LIBCURSES) $(LIBPANEL)
DEMOS = testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(LIBRARIES) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcclip.obj \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\mscdos.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS);
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -Fo$@ $(pandir)\panel.c
#------------------------------------------------------------------------
# DLFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB);
# PANFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB)+$(PANLIB);
# $(LINK) $*.obj,$*.exe,$*.map,$(CCLIBS)+$(LIBCURSES) $(LDFLAGS);
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBPANEL)+$(LIBCURSES);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Microsoft Visual C++ 1.0 PDC$(VER)VCD.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Microsoft Visual C/C++ 1.0 for DOS. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)vcd *.*
cd ..

View File

@@ -1,87 +1,87 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCclip = "$Id: pdcclip.c,v 1.1 2001/01/10 08:28:31 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_getclipboard() - Gets the contents of the clipboard
PDCurses Description:
This is a PDCurses only routine.
Gets the textual contents of the system's clipboard. This
function returns the contents of the clipboard in the contents
argument. It is the responsibilitiy of the caller to free the
memory returned with the free() system call. The length of the
clipboard contents is returned in the length argument.
PDCurses Return Value:
indicator of success/failure of call.
PDC_CLIP_ACCESS_ERROR no clipboard support
Portability:
PDCurses int PDC_getclipboard( char **contents, long *length );
**man-end**********************************************************************/
int PDC_CDECL PDC_getclipboard(char **contents, long *length)
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_getclipboard() - called\n");
#endif
return PDC_CLIP_ACCESS_ERROR;
}
/*man-start*********************************************************************
PDC_setclipboard() - Sets the contents of the clipboard
PDCurses Description:
This is a PDCurses only routine.
Copies the supplied text into the system's clipboard, emptying
the clipboard prior to the copy.
PDCurses Return Value:
indicator of success/failure of call.
PDC_CLIP_ACCESS_ERROR no clipboard support
Portability:
PDCurses int PDC_getclipboard( char *contents, long length );
**man-end**********************************************************************/
int PDC_CDECL PDC_setclipboard(char *contents, long length)
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_setclipboard() - called\n");
#endif
return PDC_CLIP_ACCESS_ERROR;
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCclip = "$Id: pdcclip.c,v 1.2 2001/01/10 08:28:32 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_getclipboard() - Gets the contents of the clipboard
PDCurses Description:
This is a PDCurses only routine.
Gets the textual contents of the system's clipboard. This
function returns the contents of the clipboard in the contents
argument. It is the responsibilitiy of the caller to free the
memory returned with the free() system call. The length of the
clipboard contents is returned in the length argument.
PDCurses Return Value:
indicator of success/failure of call.
PDC_CLIP_ACCESS_ERROR no clipboard support
Portability:
PDCurses int PDC_getclipboard( char **contents, long *length );
**man-end**********************************************************************/
int PDC_CDECL PDC_getclipboard(char **contents, long *length)
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_getclipboard() - called\n");
#endif
return PDC_CLIP_ACCESS_ERROR;
}
/*man-start*********************************************************************
PDC_setclipboard() - Sets the contents of the clipboard
PDCurses Description:
This is a PDCurses only routine.
Copies the supplied text into the system's clipboard, emptying
the clipboard prior to the copy.
PDCurses Return Value:
indicator of success/failure of call.
PDC_CLIP_ACCESS_ERROR no clipboard support
Portability:
PDCurses int PDC_getclipboard( char *contents, long length );
**man-end**********************************************************************/
int PDC_CDECL PDC_setclipboard(char *contents, long length)
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_setclipboard() - called\n");
#endif
return PDC_CLIP_ACCESS_ERROR;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,59 +1,59 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCgo32 = "$Id: pdcgo32.c,v 1.1 2001/01/10 08:28:40 mark Exp $";
#endif
#include <pc.h>
#include <sys/movedata.h> /* prototypes of dosmemget() and dosmemput() */
unsigned char getdosmembyte (int offset)
{
unsigned char b=0;
dosmemget (offset, sizeof(unsigned char), &b);
return b;
}
unsigned short getdosmemword (int offset)
{
unsigned short w=0;
dosmemget (offset, sizeof(unsigned short), &w);
return w;
}
void setdosmembyte (int offset, unsigned char b)
{
dosmemput (&b, sizeof(unsigned char), offset);
}
void setdosmemword (int offset, unsigned short w)
{
dosmemput (&w, sizeof(unsigned short), offset);
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCgo32 = "$Id: pdcgo32.c,v 1.2 2001/01/10 08:28:41 mark Exp $";
#endif
#include <pc.h>
#include <sys/movedata.h> /* prototypes of dosmemget() and dosmemput() */
unsigned char getdosmembyte (int offset)
{
unsigned char b=0;
dosmemget (offset, sizeof(unsigned char), &b);
return b;
}
unsigned short getdosmemword (int offset)
{
unsigned short w=0;
dosmemget (offset, sizeof(unsigned short), &w);
return w;
}
void setdosmembyte (int offset, unsigned char b)
{
dosmemput (&b, sizeof(unsigned char), offset);
}
void setdosmemword (int offset, unsigned short w)
{
dosmemput (&w, sizeof(unsigned short), offset);
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,82 +1,82 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCprint = "$Id: pdcprint.c,v 1.1 2001/01/10 08:28:44 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_print() - Provides primitive access to the BIOS printer functions
PDCurses Description:
This is a private PDCurses routine.
Implements write/init/read printer services at the BIOS level.
This provides the basic support that PDCurses needs to dump the
contents of windows or pads to the printer attached to the BIOS
printer port.
PDCurses Return Value:
See the BIOS INT 0x17 specifications.
PDCurses Errors:
See the BIOS INT 0x17 specifications.
Portability:
PDCurses int PDC_print( int cmd, int byte, int port );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_print(int cmd, int byte, int port)
#else
int PDC_print(cmd,byte,port)
int cmd;
int byte;
int port;
#endif
/***********************************************************************/
{
int status = 0;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_print() - called\n");
#endif
regs.h.ah = (unsigned char)cmd;
regs.h.al = (unsigned char)byte;
# ifdef WATCOMC
regs.w.dx = (unsigned int)port;
# else
regs.x.dx = (unsigned int)port;
# endif
int86(0x17, &regs, &regs);
status = regs.h.ah;
return (status);
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCprint = "$Id: pdcprint.c,v 1.2 2001/01/10 08:28:45 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_print() - Provides primitive access to the BIOS printer functions
PDCurses Description:
This is a private PDCurses routine.
Implements write/init/read printer services at the BIOS level.
This provides the basic support that PDCurses needs to dump the
contents of windows or pads to the printer attached to the BIOS
printer port.
PDCurses Return Value:
See the BIOS INT 0x17 specifications.
PDCurses Errors:
See the BIOS INT 0x17 specifications.
Portability:
PDCurses int PDC_print( int cmd, int byte, int port );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_print(int cmd, int byte, int port)
#else
int PDC_print(cmd,byte,port)
int cmd;
int byte;
int port;
#endif
/***********************************************************************/
{
int status = 0;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_print() - called\n");
#endif
regs.h.ah = (unsigned char)cmd;
regs.h.al = (unsigned char)byte;
# ifdef WATCOMC
regs.w.dx = (unsigned int)port;
# else
regs.x.dx = (unsigned int)port;
# endif
int86(0x17, &regs, &regs);
status = regs.h.ah;
return (status);
}

View File

@@ -1,333 +1,333 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef HAVE_MEMORY_H
# include <memory.h>
#endif
#ifndef HAVE_MEMMOVE
# define memmove PDC_memmove
#endif
#ifdef GO32
# include <sys/movedata.h>
#endif
#ifdef PDCDEBUG
char *rcsid_PDCscrn = "$Id: pdcscrn.c,v 1.1 2001/01/10 08:28:47 mark Exp $";
#endif
static unsigned short *saved_screen = NULL;
static int saved_lines = 0;
static int saved_cols = 0;
/*man-start*********************************************************************
PDC_scr_close() - Internal low-level binding to close the physical screen
PDCurses Description:
This function provides a low-level binding for the Flexos
platform which must close the screen before writing to it.
This is a nop for the DOS platform.
This function is provided in order to reset the FlexOS 16 bit
character set for input rather than the limited input
character set associated with the VT52.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
The DOS platform will never fail. The Flexos platform may fail
depending on the ability to close the current virtual console in
8 (as opposed to 16) bit mode.
Portability:
PDCurses int PDC_scr_close( void );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_scr_close(void)
#else
int PDC_scr_close()
#endif
/***********************************************************************/
{
#if SMALL || MEDIUM
struct SREGS segregs;
int ds=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scr_close() - called\n");
#endif
if (getenv("PDC_RESTORE_SCREEN") != NULL)
{
if (saved_screen == NULL)
return( OK );
#ifdef GO32
dosmemput(saved_screen,
saved_lines * saved_cols * sizeof(unsigned short),
(unsigned long)_FAR_POINTER(SP->video_seg,SP->video_ofs));
#else
# if (SMALL || MEDIUM)
segread(&segregs);
ds = segregs.ds;
movedata(ds, (int)saved_screen,
SP->video_seg,SP->video_ofs,
(saved_lines * saved_cols * sizeof(unsigned short)));
# else
memcpy((void *)_FAR_POINTER(SP->video_seg,SP->video_ofs),
(void*)saved_screen,
(saved_lines * saved_cols * sizeof(unsigned short)));
# endif
#endif
free(saved_screen);
saved_screen = NULL;
}
return( OK );
}
/*man-start*********************************************************************
PDC_scrn_modes_equal() - Decide if two screen modes are equal
PDCurses Description:
Mainly required for OS/2. It decides if two screen modes
(VIOMODEINFO structure) are equal. Under DOS it just compares
two integers
PDCurses Return Value:
This function returns TRUE if equal else FALSe.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_scrn_modes_equal( int mode1, int mode2 );
OS2 PDCurses int PDC_scrn_modes_equal( VIOMODEINFO mode1, VIOMODEINFO mode2 );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
bool PDC_scrn_modes_equal(int mode1, int mode2)
#else
bool PDC_scrn_modes_equal(mode1,mode2)
int mode1;
int mode2;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scrn_modes_equal() - called\n");
#endif
return (mode1 == mode2);
}
/*man-start*********************************************************************
PDC_scr_open() - Internal low-level binding to open the physical screen
PDCurses Description:
This function provides a low-level binding for the Flexos
platform which must open the screen before writing to it.
This function is provided in order to access the FlexOS 16 bit
character set for input rather than the limited input
character set associated with the VT52.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
The DOS platform will never fail. The Flexos platform may fail
depending on the ability to open the current virtual console in
8 (as opposed to 16) bit mode.
Portability:
PDCurses int PDC_scr_open( SCREEN* internal, bool echo );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_scr_open(SCREEN *internal, bool echo)
#else
int PDC_scr_open(internal,echo)
SCREEN *internal;
bool echo;
#endif
/***********************************************************************/
{
#if SMALL || MEDIUM
struct SREGS segregs;
int ds=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scr_open() - called\n");
#endif
internal->orig_attr = 0;
internal->orig_emulation = getdosmembyte (0x487);
PDC_get_cursor_pos(&internal->cursrow, &internal->curscol);
internal->direct_video = TRUE; /* Assume that we can */
internal->autocr = TRUE; /* lf -> crlf by default */
internal->raw_out = FALSE; /* tty I/O modes */
internal->raw_inp = FALSE; /* tty I/O modes */
internal->cbreak = TRUE;
internal->save_key_modifiers = FALSE;
internal->return_key_modifiers = FALSE;
internal->echo = echo;
/* under System V Curses, typeahead checking is enabled by default */
internal->refrbrk = TRUE; /* allow premature end of refresh*/
internal->video_seg = 0xb000; /* Base screen segment addr */
internal->video_ofs = 0x0; /* Base screen segment ofs */
internal->video_page = 0; /* Current Video Page */
internal->visible_cursor= TRUE; /* Assume that it is visible */
internal->cursor = PDC_get_cursor_mode();
internal->adapter = PDC_query_adapter_type();
internal->scrnmode = PDC_get_scrn_mode();
internal->orig_font = internal->font = PDC_get_font();
internal->lines = PDC_get_rows();
internal->cols = PDC_get_columns();
internal->audible = TRUE;
internal->visibility = 1;
internal->orig_cursor = internal->cursor;
internal->orgcbr = PDC_get_ctrl_break();
internal->blank = ' ';
internal->resized = FALSE;
internal->shell = FALSE;
internal->_trap_mbe = 0L;
internal->_map_mbe_to_key = 0L;
internal->linesrippedoff = 0;
internal->linesrippedoffontop = 0;
internal->delaytenths = 0;
/*
* If the environment variable PDCURSES_BIOS is set, the DOS int10()
* BIOS calls are used in place of direct video memory access.
*/
internal->direct_video = TRUE;
if (getenv("PDCURSES_BIOS") != NULL)
internal->direct_video = FALSE;
/*
* This code for preserving the current screen...
*/
if (getenv("PDC_RESTORE_SCREEN") != NULL)
{
saved_lines = internal->lines;
saved_cols = internal->cols;
if ((saved_screen = (unsigned short*)malloc(saved_lines*saved_cols*sizeof(unsigned short))) == NULL)
return(ERR);
#ifdef GO32
dosmemget ((unsigned long)_FAR_POINTER(SP->video_seg,SP->video_ofs),
saved_lines * saved_cols * sizeof(unsigned short),saved_screen);
#else
# if (SMALL || MEDIUM)
segread(&segregs);
ds = segregs.ds;
movedata(SP->video_seg,SP->video_ofs,
ds, (int)saved_screen,
(saved_lines * saved_cols * sizeof(unsigned short)));
# else
memcpy((void*)saved_screen,
(void *)_FAR_POINTER(SP->video_seg,SP->video_ofs),
(saved_lines * saved_cols * sizeof(unsigned short)));
# endif
#endif
}
if (getenv("PDC_PRESERVE_SCREEN") != NULL)
internal->_preserve = TRUE;
else
internal->_preserve = FALSE;
return( OK );
}
/*man-start*********************************************************************
PDC_resize_screen() - Internal low-level function to resize screen
PDCurses Description:
This function provides a means for the application program to
resize the overall dimensions of the screen. Under DOS and OS/2
the application can tell PDCurses what size to make the screen;
under X11, resizing is done by the user and this function simply
adjusts its internal structures to fit the new size.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
Portability:
PDCurses int PDC_resize_screen( int, int );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_resize_screen(int nlines, int ncols)
#else
int PDC_resize_screen(nlines, ncols)
int nlines,ncols;
#endif
/***********************************************************************/
{
int rc=OK;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_resize_screen() - called. Lines: %d Cols: %d\n",nlines,ncols);
#endif
switch (SP->adapter)
{
case _EGACOLOR:
if (nlines >= 43) PDC_set_font(_FONT8);
else PDC_set_80x25();
break;
case _VGACOLOR:
if (nlines > 28) PDC_set_font(_FONT8);
else if (nlines > 25) PDC_set_font(_FONT14);
else PDC_set_80x25();
break;
default:
break;
}
return ( rc );
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef HAVE_MEMORY_H
# include <memory.h>
#endif
#ifndef HAVE_MEMMOVE
# define memmove PDC_memmove
#endif
#ifdef GO32
# include <sys/movedata.h>
#endif
#ifdef PDCDEBUG
char *rcsid_PDCscrn = "$Id: pdcscrn.c,v 1.2 2001/01/10 08:28:48 mark Exp $";
#endif
static unsigned short *saved_screen = NULL;
static int saved_lines = 0;
static int saved_cols = 0;
/*man-start*********************************************************************
PDC_scr_close() - Internal low-level binding to close the physical screen
PDCurses Description:
This function provides a low-level binding for the Flexos
platform which must close the screen before writing to it.
This is a nop for the DOS platform.
This function is provided in order to reset the FlexOS 16 bit
character set for input rather than the limited input
character set associated with the VT52.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
The DOS platform will never fail. The Flexos platform may fail
depending on the ability to close the current virtual console in
8 (as opposed to 16) bit mode.
Portability:
PDCurses int PDC_scr_close( void );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_scr_close(void)
#else
int PDC_scr_close()
#endif
/***********************************************************************/
{
#if SMALL || MEDIUM
struct SREGS segregs;
int ds=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scr_close() - called\n");
#endif
if (getenv("PDC_RESTORE_SCREEN") != NULL)
{
if (saved_screen == NULL)
return( OK );
#ifdef GO32
dosmemput(saved_screen,
saved_lines * saved_cols * sizeof(unsigned short),
(unsigned long)_FAR_POINTER(SP->video_seg,SP->video_ofs));
#else
# if (SMALL || MEDIUM)
segread(&segregs);
ds = segregs.ds;
movedata(ds, (int)saved_screen,
SP->video_seg,SP->video_ofs,
(saved_lines * saved_cols * sizeof(unsigned short)));
# else
memcpy((void *)_FAR_POINTER(SP->video_seg,SP->video_ofs),
(void*)saved_screen,
(saved_lines * saved_cols * sizeof(unsigned short)));
# endif
#endif
free(saved_screen);
saved_screen = NULL;
}
return( OK );
}
/*man-start*********************************************************************
PDC_scrn_modes_equal() - Decide if two screen modes are equal
PDCurses Description:
Mainly required for OS/2. It decides if two screen modes
(VIOMODEINFO structure) are equal. Under DOS it just compares
two integers
PDCurses Return Value:
This function returns TRUE if equal else FALSe.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_scrn_modes_equal( int mode1, int mode2 );
OS2 PDCurses int PDC_scrn_modes_equal( VIOMODEINFO mode1, VIOMODEINFO mode2 );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
bool PDC_scrn_modes_equal(int mode1, int mode2)
#else
bool PDC_scrn_modes_equal(mode1,mode2)
int mode1;
int mode2;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scrn_modes_equal() - called\n");
#endif
return (mode1 == mode2);
}
/*man-start*********************************************************************
PDC_scr_open() - Internal low-level binding to open the physical screen
PDCurses Description:
This function provides a low-level binding for the Flexos
platform which must open the screen before writing to it.
This function is provided in order to access the FlexOS 16 bit
character set for input rather than the limited input
character set associated with the VT52.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
The DOS platform will never fail. The Flexos platform may fail
depending on the ability to open the current virtual console in
8 (as opposed to 16) bit mode.
Portability:
PDCurses int PDC_scr_open( SCREEN* internal, bool echo );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_scr_open(SCREEN *internal, bool echo)
#else
int PDC_scr_open(internal,echo)
SCREEN *internal;
bool echo;
#endif
/***********************************************************************/
{
#if SMALL || MEDIUM
struct SREGS segregs;
int ds=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scr_open() - called\n");
#endif
internal->orig_attr = 0;
internal->orig_emulation = getdosmembyte (0x487);
PDC_get_cursor_pos(&internal->cursrow, &internal->curscol);
internal->direct_video = TRUE; /* Assume that we can */
internal->autocr = TRUE; /* lf -> crlf by default */
internal->raw_out = FALSE; /* tty I/O modes */
internal->raw_inp = FALSE; /* tty I/O modes */
internal->cbreak = TRUE;
internal->save_key_modifiers = FALSE;
internal->return_key_modifiers = FALSE;
internal->echo = echo;
/* under System V Curses, typeahead checking is enabled by default */
internal->refrbrk = TRUE; /* allow premature end of refresh*/
internal->video_seg = 0xb000; /* Base screen segment addr */
internal->video_ofs = 0x0; /* Base screen segment ofs */
internal->video_page = 0; /* Current Video Page */
internal->visible_cursor= TRUE; /* Assume that it is visible */
internal->cursor = PDC_get_cursor_mode();
internal->adapter = PDC_query_adapter_type();
internal->scrnmode = PDC_get_scrn_mode();
internal->orig_font = internal->font = PDC_get_font();
internal->lines = PDC_get_rows();
internal->cols = PDC_get_columns();
internal->audible = TRUE;
internal->visibility = 1;
internal->orig_cursor = internal->cursor;
internal->orgcbr = PDC_get_ctrl_break();
internal->blank = ' ';
internal->resized = FALSE;
internal->shell = FALSE;
internal->_trap_mbe = 0L;
internal->_map_mbe_to_key = 0L;
internal->linesrippedoff = 0;
internal->linesrippedoffontop = 0;
internal->delaytenths = 0;
/*
* If the environment variable PDCURSES_BIOS is set, the DOS int10()
* BIOS calls are used in place of direct video memory access.
*/
internal->direct_video = TRUE;
if (getenv("PDCURSES_BIOS") != NULL)
internal->direct_video = FALSE;
/*
* This code for preserving the current screen...
*/
if (getenv("PDC_RESTORE_SCREEN") != NULL)
{
saved_lines = internal->lines;
saved_cols = internal->cols;
if ((saved_screen = (unsigned short*)malloc(saved_lines*saved_cols*sizeof(unsigned short))) == NULL)
return(ERR);
#ifdef GO32
dosmemget ((unsigned long)_FAR_POINTER(SP->video_seg,SP->video_ofs),
saved_lines * saved_cols * sizeof(unsigned short),saved_screen);
#else
# if (SMALL || MEDIUM)
segread(&segregs);
ds = segregs.ds;
movedata(SP->video_seg,SP->video_ofs,
ds, (int)saved_screen,
(saved_lines * saved_cols * sizeof(unsigned short)));
# else
memcpy((void*)saved_screen,
(void *)_FAR_POINTER(SP->video_seg,SP->video_ofs),
(saved_lines * saved_cols * sizeof(unsigned short)));
# endif
#endif
}
if (getenv("PDC_PRESERVE_SCREEN") != NULL)
internal->_preserve = TRUE;
else
internal->_preserve = FALSE;
return( OK );
}
/*man-start*********************************************************************
PDC_resize_screen() - Internal low-level function to resize screen
PDCurses Description:
This function provides a means for the application program to
resize the overall dimensions of the screen. Under DOS and OS/2
the application can tell PDCurses what size to make the screen;
under X11, resizing is done by the user and this function simply
adjusts its internal structures to fit the new size.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
Portability:
PDCurses int PDC_resize_screen( int, int );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_resize_screen(int nlines, int ncols)
#else
int PDC_resize_screen(nlines, ncols)
int nlines,ncols;
#endif
/***********************************************************************/
{
int rc=OK;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_resize_screen() - called. Lines: %d Cols: %d\n",nlines,ncols);
#endif
switch (SP->adapter)
{
case _EGACOLOR:
if (nlines >= 43) PDC_set_font(_FONT8);
else PDC_set_80x25();
break;
case _VGACOLOR:
if (nlines > 28) PDC_set_font(_FONT8);
else if (nlines > 25) PDC_set_font(_FONT14);
else PDC_set_80x25();
break;
default:
break;
}
return ( rc );
}

View File

@@ -1,455 +1,455 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCsetsc = "$Id: pdcsetsc.c,v 1.1 2001/01/10 08:28:49 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_set_80x25() - force a known screen state: 80x25 text mode.
PDCurses Description:
This is a private PDCurses function.
Forces the appropriate 80x25 alpha mode given the display adapter.
Since we currently do not support changing the virtual console size,
this routine is a NOP under Flexos.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
No errors are defined for this routine.
Portability:
PDCurses int PDC_set_80x25( void );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_80x25(void)
#else
int PDC_set_80x25()
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_80x25() - called\n");
#endif
switch (SP->adapter)
{
case _CGA:
case _EGACOLOR:
case _EGAMONO:
case _VGACOLOR:
case _VGAMONO:
case _MCGACOLOR:
case _MCGAMONO:
regs.h.ah = 0x00;
regs.h.al = 0x03;
int86(0x10, &regs, &regs);
break;
case _MDA:
regs.h.ah = 0x00;
regs.h.al = 0x07;
int86(0x10, &regs, &regs);
default:
break;
}
return( OK );
}
/*man-start*********************************************************************
PDC_set_cursor_mode() - Set the cursor start and stop scan lines.
PDCurses Description:
Sets the cursor type to begin in scan line startrow and end in
scan line endrow. Both values should be 0-31.
PDCurses Return Value:
This function returns OK on success and ERR on error.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_set_cursor_mode( int startrow, int endrow );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_cursor_mode( int startrow, int endrow )
#else
int PDC_set_cursor_mode(startrow,endrow)
int startrow;
int endrow;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_cursor_mode() - called: startrow %d endrow %d\n",startrow,endrow);
#endif
regs.h.ah = 0x01;
regs.h.ch = (unsigned char) startrow;
regs.h.cl = (unsigned char) endrow;
int86(0x10, &regs, &regs);
return( OK );
}
/*man-start*********************************************************************
PDC_set_font() - sets the current font size
PDCurses Description:
This is a private PDCurses function.
This routine sets the current font size, if the adapter allows
such a change.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
It is an error to attempt to change the font size on a "bogus"
adapter. The reason for this is that we have a known video
adapter identity problem. e.g. Two adapters report the same
identifying characteristics.
It is also an error to attempt to change the size of the Flexos
console (as there is currently no support for that).
Portability:
PDCurses int PDC_set_font( int size );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_font(int size)
#else
int PDC_set_font(size)
int size;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_font() - called\n");
#endif
if (SP->bogus_adapter)
return( ERR );
switch (SP->adapter)
{
case _CGA:
case _MDA:
case _MCGACOLOR:
case _MCGAMONO:
case _MDS_GENIUS:
break;
case _EGACOLOR:
case _EGAMONO:
if (SP->sizeable && (SP->font != size))
{
switch (size)
{
case _FONT8:
regs.h.ah = 0x11;
regs.h.al = 0x12;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
case _FONT14:
regs.h.ah = 0x11;
regs.h.al = 0x11;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
default:
break;
}
}
break;
case _VGACOLOR:
case _VGAMONO:
if (SP->sizeable && (SP->font != size))
{
switch (size)
{
case _FONT8:
regs.h.ah = 0x11;
regs.h.al = 0x12;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
case _FONT14:
regs.h.ah = 0x11;
regs.h.al = 0x11;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
case _FONT16:
regs.h.ah = 0x11;
regs.h.al = 0x14;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
default:
break;
}
}
break;
default:
break;
}
if (SP->visible_cursor)
PDC_cursor_on();
else
PDC_cursor_off();
SP->font = PDC_get_font();
return( OK );
}
/*man-start*********************************************************************
PDC_set_rows() - sets the physical number of rows on screen
PDCurses Description:
This is a private PDCurses function.
This routine attempts to set the number of rows on the physical
screen to the passed value.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
It is an error to attempt to change the screen size on a "bogus"
adapter. The reason for this is that we have a known video
adapter identity problem. e.g. Two adapters report the same
identifying characteristics.
It is also an error to attempt to change the size of the Flexos
console (as there is currently no support for that).
Portability:
PDCurses int PDC_set_rows( int rows );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_rows(int rows)
#else
int PDC_set_rows(rows)
int rows;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_rows() - called\n");
#endif
if (SP->bogus_adapter)
return( ERR );
switch (SP->adapter)
{
case _EGACOLOR:
case _EGAMONO:
if (rows < 43)
PDC_set_font(_FONT14);
else
PDC_set_font(_FONT8);
break;
case _VGACOLOR:
case _VGAMONO:
if (rows < 28)
PDC_set_font(_FONT16);
else
if (rows < 50)
PDC_set_font(_FONT14);
else
PDC_set_font(_FONT8);
break;
case _MCGACOLOR:
case _MCGAMONO:
case _MDA:
case _CGA:
case _MDS_GENIUS:
default:
break;
}
SP->font = PDC_get_font();
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return( OK );
}
/*man-start*********************************************************************
PDC_set_scrn_mode() - Set BIOS Video Mode
PDCurses Description:
Sets the BIOS Video Mode Number ONLY if it is different from
the current video mode. This routine is for DOS systems only.
PDCurses Return Value:
This function returns OK on success and ERR on error.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_set_scrn_mode( int new_mode );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_scrn_mode(int new_mode)
#else
int PDC_set_scrn_mode(new_mode)
int new_mode;
#endif
/***********************************************************************/
{
int cur=0;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_scrn_mode() - called\n");
#endif
cur = (int) PDC_get_scrn_mode();
if (cur != new_mode)
{
regs.h.ah = 0x00;
regs.h.al = (char) new_mode;
int86(0x10, &regs, &regs);
}
SP->font = PDC_get_font();
SP->scrnmode = new_mode;
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return( OK );
}
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_curs_set(int visibility)
#else
int PDC_curs_set(visibility)
int visibility;
#endif
/***********************************************************************/
{
int start=0,end=0;
int ret_vis=0;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_curs_set() - called: visibility=%d\n",visibility);
#endif
ret_vis = SP->visibility;
SP->visibility = visibility;
switch(visibility)
{
case 0: /* invisible */
start = 32;
end = 32; /* was 33 */
break;
case 2: /* highly visible */
start = 2; /* almost full-height block */
end = SP->font-1;
break;
default: /* normal visibility */
start = SP->font - 2;
/* start = SP->font - (SP->font / 4); */
end = SP->font-1;
break;
}
regs.h.ah = 0x01;
regs.h.al = (unsigned char)SP->scrnmode; /* if not set, some BIOSes hang */
regs.h.ch = (unsigned char)start;
regs.h.cl = (unsigned char)end;
int86(0x10, &regs, &regs);
return( ret_vis );
}
/*man-start*********************************************************************
PDC_set_title() - Set window title
PDCurses Description:
Sets the title of the window in which the curses program is running.
This function may not do anything on some platforms.
PDCurses Return Value:
N/A
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses void PDC_set_title( char *title );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
void PDC_set_title(char *title)
#else
void PDC_set_title(title)
char *title;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_title() - called:<%s>\n",title);
#endif
return;
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCsetsc = "$Id: pdcsetsc.c,v 1.2 2001/01/10 08:28:50 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_set_80x25() - force a known screen state: 80x25 text mode.
PDCurses Description:
This is a private PDCurses function.
Forces the appropriate 80x25 alpha mode given the display adapter.
Since we currently do not support changing the virtual console size,
this routine is a NOP under Flexos.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
No errors are defined for this routine.
Portability:
PDCurses int PDC_set_80x25( void );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_80x25(void)
#else
int PDC_set_80x25()
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_80x25() - called\n");
#endif
switch (SP->adapter)
{
case _CGA:
case _EGACOLOR:
case _EGAMONO:
case _VGACOLOR:
case _VGAMONO:
case _MCGACOLOR:
case _MCGAMONO:
regs.h.ah = 0x00;
regs.h.al = 0x03;
int86(0x10, &regs, &regs);
break;
case _MDA:
regs.h.ah = 0x00;
regs.h.al = 0x07;
int86(0x10, &regs, &regs);
default:
break;
}
return( OK );
}
/*man-start*********************************************************************
PDC_set_cursor_mode() - Set the cursor start and stop scan lines.
PDCurses Description:
Sets the cursor type to begin in scan line startrow and end in
scan line endrow. Both values should be 0-31.
PDCurses Return Value:
This function returns OK on success and ERR on error.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_set_cursor_mode( int startrow, int endrow );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_cursor_mode( int startrow, int endrow )
#else
int PDC_set_cursor_mode(startrow,endrow)
int startrow;
int endrow;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_cursor_mode() - called: startrow %d endrow %d\n",startrow,endrow);
#endif
regs.h.ah = 0x01;
regs.h.ch = (unsigned char) startrow;
regs.h.cl = (unsigned char) endrow;
int86(0x10, &regs, &regs);
return( OK );
}
/*man-start*********************************************************************
PDC_set_font() - sets the current font size
PDCurses Description:
This is a private PDCurses function.
This routine sets the current font size, if the adapter allows
such a change.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
It is an error to attempt to change the font size on a "bogus"
adapter. The reason for this is that we have a known video
adapter identity problem. e.g. Two adapters report the same
identifying characteristics.
It is also an error to attempt to change the size of the Flexos
console (as there is currently no support for that).
Portability:
PDCurses int PDC_set_font( int size );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_font(int size)
#else
int PDC_set_font(size)
int size;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_font() - called\n");
#endif
if (SP->bogus_adapter)
return( ERR );
switch (SP->adapter)
{
case _CGA:
case _MDA:
case _MCGACOLOR:
case _MCGAMONO:
case _MDS_GENIUS:
break;
case _EGACOLOR:
case _EGAMONO:
if (SP->sizeable && (SP->font != size))
{
switch (size)
{
case _FONT8:
regs.h.ah = 0x11;
regs.h.al = 0x12;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
case _FONT14:
regs.h.ah = 0x11;
regs.h.al = 0x11;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
default:
break;
}
}
break;
case _VGACOLOR:
case _VGAMONO:
if (SP->sizeable && (SP->font != size))
{
switch (size)
{
case _FONT8:
regs.h.ah = 0x11;
regs.h.al = 0x12;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
case _FONT14:
regs.h.ah = 0x11;
regs.h.al = 0x11;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
case _FONT16:
regs.h.ah = 0x11;
regs.h.al = 0x14;
regs.h.bl = 0x00;
int86(0x10, &regs, &regs);
break;
default:
break;
}
}
break;
default:
break;
}
if (SP->visible_cursor)
PDC_cursor_on();
else
PDC_cursor_off();
SP->font = PDC_get_font();
return( OK );
}
/*man-start*********************************************************************
PDC_set_rows() - sets the physical number of rows on screen
PDCurses Description:
This is a private PDCurses function.
This routine attempts to set the number of rows on the physical
screen to the passed value.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
It is an error to attempt to change the screen size on a "bogus"
adapter. The reason for this is that we have a known video
adapter identity problem. e.g. Two adapters report the same
identifying characteristics.
It is also an error to attempt to change the size of the Flexos
console (as there is currently no support for that).
Portability:
PDCurses int PDC_set_rows( int rows );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_rows(int rows)
#else
int PDC_set_rows(rows)
int rows;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_rows() - called\n");
#endif
if (SP->bogus_adapter)
return( ERR );
switch (SP->adapter)
{
case _EGACOLOR:
case _EGAMONO:
if (rows < 43)
PDC_set_font(_FONT14);
else
PDC_set_font(_FONT8);
break;
case _VGACOLOR:
case _VGAMONO:
if (rows < 28)
PDC_set_font(_FONT16);
else
if (rows < 50)
PDC_set_font(_FONT14);
else
PDC_set_font(_FONT8);
break;
case _MCGACOLOR:
case _MCGAMONO:
case _MDA:
case _CGA:
case _MDS_GENIUS:
default:
break;
}
SP->font = PDC_get_font();
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return( OK );
}
/*man-start*********************************************************************
PDC_set_scrn_mode() - Set BIOS Video Mode
PDCurses Description:
Sets the BIOS Video Mode Number ONLY if it is different from
the current video mode. This routine is for DOS systems only.
PDCurses Return Value:
This function returns OK on success and ERR on error.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_set_scrn_mode( int new_mode );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_scrn_mode(int new_mode)
#else
int PDC_set_scrn_mode(new_mode)
int new_mode;
#endif
/***********************************************************************/
{
int cur=0;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_scrn_mode() - called\n");
#endif
cur = (int) PDC_get_scrn_mode();
if (cur != new_mode)
{
regs.h.ah = 0x00;
regs.h.al = (char) new_mode;
int86(0x10, &regs, &regs);
}
SP->font = PDC_get_font();
SP->scrnmode = new_mode;
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return( OK );
}
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_curs_set(int visibility)
#else
int PDC_curs_set(visibility)
int visibility;
#endif
/***********************************************************************/
{
int start=0,end=0;
int ret_vis=0;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_curs_set() - called: visibility=%d\n",visibility);
#endif
ret_vis = SP->visibility;
SP->visibility = visibility;
switch(visibility)
{
case 0: /* invisible */
start = 32;
end = 32; /* was 33 */
break;
case 2: /* highly visible */
start = 2; /* almost full-height block */
end = SP->font-1;
break;
default: /* normal visibility */
start = SP->font - 2;
/* start = SP->font - (SP->font / 4); */
end = SP->font-1;
break;
}
regs.h.ah = 0x01;
regs.h.al = (unsigned char)SP->scrnmode; /* if not set, some BIOSes hang */
regs.h.ch = (unsigned char)start;
regs.h.cl = (unsigned char)end;
int86(0x10, &regs, &regs);
return( ret_vis );
}
/*man-start*********************************************************************
PDC_set_title() - Set window title
PDCurses Description:
Sets the title of the window in which the curses program is running.
This function may not do anything on some platforms.
PDCurses Return Value:
N/A
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses void PDC_set_title( char *title );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
void PDC_set_title(char *title)
#else
void PDC_set_title(title)
char *title;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_title() - called:<%s>\n",title);
#endif
return;
}

View File

@@ -1,47 +1,47 @@
+addch.obj
+addchstr.obj
+addstr.obj
+attr.obj
+beep.obj
+bkgd.obj
+border.obj
+clear.obj
+color.obj
+delch.obj
+deleteln.obj
+getch.obj
+getstr.obj
+getyx.obj
+inch.obj
+inchstr.obj
+initscr.obj
+inopts.obj
+insch.obj
+insstr.obj
+instr.obj
+kernel.obj
+mouse.obj
+move.obj
+outopts.obj
+overlay.obj
+pad.obj
+printw.obj
+refresh.obj
+scanw.obj
+scroll.obj
+slk.obj
+termattr.obj
+terminfo.obj
+touch.obj
+util.obj
+window.obj
+pdcclip.obj
+pdcdebug.obj
+pdcdisp.obj
+pdcgetsc.obj
+pdckbd.obj
+pdcprint.obj
+pdcscrn.obj
+pdcsetsc.obj
+pdcutil.obj
+pdcwin.obj
+addch.obj
+addchstr.obj
+addstr.obj
+attr.obj
+beep.obj
+bkgd.obj
+border.obj
+clear.obj
+color.obj
+delch.obj
+deleteln.obj
+getch.obj
+getstr.obj
+getyx.obj
+inch.obj
+inchstr.obj
+initscr.obj
+inopts.obj
+insch.obj
+insstr.obj
+instr.obj
+kernel.obj
+mouse.obj
+move.obj
+outopts.obj
+overlay.obj
+pad.obj
+printw.obj
+refresh.obj
+scanw.obj
+scroll.obj
+slk.obj
+termattr.obj
+terminfo.obj
+touch.obj
+util.obj
+window.obj
+pdcclip.obj
+pdcdebug.obj
+pdcdisp.obj
+pdcgetsc.obj
+pdckbd.obj
+pdcprint.obj
+pdcscrn.obj
+pdcsetsc.obj
+pdcutil.obj
+pdcwin.obj

View File

@@ -1,389 +1,389 @@
################################################################################
#
# Watcom WMAKE Makefile for PDCurses library - DOS (16 bit) Watcom C/C++ 10.6
#
# Usage: wmake -f [path\]wccdos16.mak [DEBUG=Y] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CCINCDIR =k:\h
MODEL =l
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = wcc
TARGET=dos
!ifeq DEBUG Y
CFLAGS = /d2 /DPDCDEBUG
LDFLAGS = DEBUG WATCOM ALL
!else
CFLAGS = /oneatx
LDFLAGS =
!endif
CPPFLAGS = /i=$(PDCURSES_HOME) /i=$(CCINCDIR)
CCFLAGS = /bt=$(TARGET) /zq /m$(MODEL) $(CFLAGS) $(CPPFLAGS)
LINK = wlink
LIBEXE = wlib /q /n
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = &
addch.obj &
addchstr.obj &
addstr.obj &
attr.obj &
beep.obj &
bkgd.obj &
border.obj &
clear.obj &
color.obj &
delch.obj &
deleteln.obj &
getch.obj &
getstr.obj &
getyx.obj &
inch.obj &
inchstr.obj &
initscr.obj &
inopts.obj &
insch.obj &
insstr.obj &
instr.obj &
kernel.obj &
mouse.obj &
move.obj &
outopts.obj &
overlay.obj &
pad.obj &
printw.obj &
refresh.obj &
scanw.obj &
scroll.obj &
slk.obj &
termattr.obj &
terminfo.obj &
touch.obj &
util.obj &
window.obj
PDCOBJS = &
pdcclip.obj &
pdcdebug.obj &
pdcdisp.obj &
pdcgetsc.obj &
pdckbd.obj &
pdcprint.obj &
pdcscrn.obj &
pdcsetsc.obj &
pdcutil.obj &
pdcwin.obj
PANOBJS = &
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\wccdos.lrf
panel.lib : $(PANOBJS)
@%create lib.rsp
@%append lib.rsp +$(PANOBJS)
$(LIBEXE) $@ @lib.rsp
del lib.rsp
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) /fo=$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name firework.exe
@%append demos.lnk file firework.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
newdemo.exe: newdemo.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name newdemo.exe
@%append demos.lnk file newdemo.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name ptest.exe
@%append demos.lnk file ptest.obj
@%append demos.lnk library $(LIBCURSES)
@%append demos.lnk library $(LIBPANEL)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
testcurs.exe: testcurs.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name testcurs.exe
@%append demos.lnk file testcurs.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name tuidemo.exe
@%append demos.lnk file tuidemo.obj
@%append demos.lnk file tui.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
xmas.exe: xmas.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name xmas.exe
@%append demos.lnk file xmas.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Watcom C++ 16bit DOS PDC$(VER)16W.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Watcom C/C++ 10.6 for 16 bit DOS. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)16w *.*
cd ..
################################################################################
#
# Watcom WMAKE Makefile for PDCurses library - DOS (16 bit) Watcom C/C++ 10.6
#
# Usage: wmake -f [path\]wccdos16.mak [DEBUG=Y] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CCINCDIR =k:\h
MODEL =l
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = wcc
TARGET=dos
!ifeq DEBUG Y
CFLAGS = /d2 /DPDCDEBUG
LDFLAGS = DEBUG WATCOM ALL
!else
CFLAGS = /oneatx
LDFLAGS =
!endif
CPPFLAGS = /i=$(PDCURSES_HOME) /i=$(CCINCDIR)
CCFLAGS = /bt=$(TARGET) /zq /m$(MODEL) $(CFLAGS) $(CPPFLAGS)
LINK = wlink
LIBEXE = wlib /q /n
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = &
addch.obj &
addchstr.obj &
addstr.obj &
attr.obj &
beep.obj &
bkgd.obj &
border.obj &
clear.obj &
color.obj &
delch.obj &
deleteln.obj &
getch.obj &
getstr.obj &
getyx.obj &
inch.obj &
inchstr.obj &
initscr.obj &
inopts.obj &
insch.obj &
insstr.obj &
instr.obj &
kernel.obj &
mouse.obj &
move.obj &
outopts.obj &
overlay.obj &
pad.obj &
printw.obj &
refresh.obj &
scanw.obj &
scroll.obj &
slk.obj &
termattr.obj &
terminfo.obj &
touch.obj &
util.obj &
window.obj
PDCOBJS = &
pdcclip.obj &
pdcdebug.obj &
pdcdisp.obj &
pdcgetsc.obj &
pdckbd.obj &
pdcprint.obj &
pdcscrn.obj &
pdcsetsc.obj &
pdcutil.obj &
pdcwin.obj
PANOBJS = &
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\wccdos.lrf
panel.lib : $(PANOBJS)
@%create lib.rsp
@%append lib.rsp +$(PANOBJS)
$(LIBEXE) $@ @lib.rsp
del lib.rsp
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) /fo=$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name firework.exe
@%append demos.lnk file firework.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
newdemo.exe: newdemo.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name newdemo.exe
@%append demos.lnk file newdemo.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name ptest.exe
@%append demos.lnk file ptest.obj
@%append demos.lnk library $(LIBCURSES)
@%append demos.lnk library $(LIBPANEL)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
testcurs.exe: testcurs.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name testcurs.exe
@%append demos.lnk file testcurs.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name tuidemo.exe
@%append demos.lnk file tuidemo.obj
@%append demos.lnk file tui.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
xmas.exe: xmas.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name xmas.exe
@%append demos.lnk file xmas.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Watcom C++ 16bit DOS PDC$(VER)16W.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Watcom C/C++ 10.6 for 16 bit DOS. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)16w *.*
cd ..

View File

@@ -1,388 +1,388 @@
################################################################################
#
# Watcom WMAKE Makefile for PDCurses library - DOS/4GW Watcom C/C++ 10.6
#
# Usage: wmake -f [path\]wccdos4g.mak [-DDEBUG] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CCINCDIR =k:\h
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = wcc386
TARGET=dos4g
!ifeq DEBUG Y
CFLAGS = /d2 /DPDCDEBUG
LDFLAGS = DEBUG WATCOM ALL
!else
CFLAGS = /oneatx
LDFLAGS =
!endif
CPPFLAGS = /i=$(PDCURSES_HOME) /i=$(CCINCDIR)
CCFLAGS = /bt=$(TARGET) /zq /mf $(CFLAGS) $(CPPFLAGS)
LINK = wlink
LIBEXE = wlib /q /n
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = &
addch.obj &
addchstr.obj &
addstr.obj &
attr.obj &
beep.obj &
bkgd.obj &
border.obj &
clear.obj &
color.obj &
delch.obj &
deleteln.obj &
getch.obj &
getstr.obj &
getyx.obj &
inch.obj &
inchstr.obj &
initscr.obj &
inopts.obj &
insch.obj &
insstr.obj &
instr.obj &
kernel.obj &
mouse.obj &
move.obj &
outopts.obj &
overlay.obj &
pad.obj &
printw.obj &
refresh.obj &
scanw.obj &
scroll.obj &
slk.obj &
termattr.obj &
terminfo.obj &
touch.obj &
util.obj &
window.obj
PDCOBJS = &
pdcclip.obj &
pdcdebug.obj &
pdcdisp.obj &
pdcgetsc.obj &
pdckbd.obj &
pdcprint.obj &
pdcscrn.obj &
pdcsetsc.obj &
pdcutil.obj &
pdcwin.obj
PANOBJS = &
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\wccdos.lrf
panel.lib : $(PANOBJS)
@%create lib.rsp
@%append lib.rsp +$(PANOBJS)
$(LIBEXE) $@ @lib.rsp
del lib.rsp
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) /fo=$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name firework.exe
@%append demos.lnk file firework.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
newdemo.exe: newdemo.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name newdemo.exe
@%append demos.lnk file newdemo.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name ptest.exe
@%append demos.lnk file ptest.obj
@%append demos.lnk library $(LIBCURSES)
@%append demos.lnk library $(LIBPANEL)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
testcurs.exe: testcurs.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name testcurs.exe
@%append demos.lnk file testcurs.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name tuidemo.exe
@%append demos.lnk file tuidemo.obj
@%append demos.lnk file tui.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
xmas.exe: xmas.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name xmas.exe
@%append demos.lnk file xmas.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Watcom C++ 32bit DOS PDC$(VER)32W.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Watcom C/C++ 10.6 for 32 bit DOS. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)32w *.*
cd ..
################################################################################
#
# Watcom WMAKE Makefile for PDCurses library - DOS/4GW Watcom C/C++ 10.6
#
# Usage: wmake -f [path\]wccdos4g.mak [-DDEBUG] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CCINCDIR =k:\h
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\dos
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = wcc386
TARGET=dos4g
!ifeq DEBUG Y
CFLAGS = /d2 /DPDCDEBUG
LDFLAGS = DEBUG WATCOM ALL
!else
CFLAGS = /oneatx
LDFLAGS =
!endif
CPPFLAGS = /i=$(PDCURSES_HOME) /i=$(CCINCDIR)
CCFLAGS = /bt=$(TARGET) /zq /mf $(CFLAGS) $(CPPFLAGS)
LINK = wlink
LIBEXE = wlib /q /n
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = &
addch.obj &
addchstr.obj &
addstr.obj &
attr.obj &
beep.obj &
bkgd.obj &
border.obj &
clear.obj &
color.obj &
delch.obj &
deleteln.obj &
getch.obj &
getstr.obj &
getyx.obj &
inch.obj &
inchstr.obj &
initscr.obj &
inopts.obj &
insch.obj &
insstr.obj &
instr.obj &
kernel.obj &
mouse.obj &
move.obj &
outopts.obj &
overlay.obj &
pad.obj &
printw.obj &
refresh.obj &
scanw.obj &
scroll.obj &
slk.obj &
termattr.obj &
terminfo.obj &
touch.obj &
util.obj &
window.obj
PDCOBJS = &
pdcclip.obj &
pdcdebug.obj &
pdcdisp.obj &
pdcgetsc.obj &
pdckbd.obj &
pdcprint.obj &
pdcscrn.obj &
pdcsetsc.obj &
pdcutil.obj &
pdcwin.obj
PANOBJS = &
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\wccdos.lrf
panel.lib : $(PANOBJS)
@%create lib.rsp
@%append lib.rsp +$(PANOBJS)
$(LIBEXE) $@ @lib.rsp
del lib.rsp
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) /fo=$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name firework.exe
@%append demos.lnk file firework.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
newdemo.exe: newdemo.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name newdemo.exe
@%append demos.lnk file newdemo.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name ptest.exe
@%append demos.lnk file ptest.obj
@%append demos.lnk library $(LIBCURSES)
@%append demos.lnk library $(LIBPANEL)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
testcurs.exe: testcurs.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name testcurs.exe
@%append demos.lnk file testcurs.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name tuidemo.exe
@%append demos.lnk file tuidemo.obj
@%append demos.lnk file tui.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
xmas.exe: xmas.obj $(LIBCURSES)
@%create demos.lnk
@%append demos.lnk option quiet
@%append demos.lnk system $(TARGET)
@%append demos.lnk name xmas.exe
@%append demos.lnk file xmas.obj
@%append demos.lnk library $(LIBCURSES)
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Watcom C++ 32bit DOS PDC$(VER)32W.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Watcom C/C++ 10.6 for 32 bit DOS. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)32w *.*
cd ..

View File

@@ -1,19 +1,19 @@
Welcome to PDCurses
Contents
--------
This directory contains core PDCurses source code files specific to
the OS/2 platform.
Distribution Status
-------------------
The files in this directory are released to the Public Domain.
Acknowlegements
---------------
Generic OS/2 port was provided by ????
Welcome to PDCurses
Contents
--------
This directory contains core PDCurses source code files specific to
the OS/2 platform.
Distribution Status
-------------------
The files in this directory are released to the Public Domain.
Acknowlegements
---------------
Generic OS/2 port was provided by ????

View File

@@ -1,154 +1,154 @@
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Turbo-C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := bcc # C-compiler and flags
CFLAGS +=
AS := tasm # Assembler and flags
ASFLAGS +=
LD = tlink # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := tpc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O .SWAP: %.c ; $(CC) $(CFLAGS) -c $<
%$O .SWAP: %$P ; $(PC) $(PFLAGS) -c $<
%$O .SWAP: %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O .SWAP: %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E .SWAP: %$O ; $(CC) $(LDFLAGS) -e$@ $<
# lex and yacc rules
%.c .SWAP: %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c .SWAP: %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS/$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A .SWAP:
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Turbo-C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := bcc # C-compiler and flags
CFLAGS +=
AS := tasm # Assembler and flags
ASFLAGS +=
LD = tlink # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := tpc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O .SWAP: %.c ; $(CC) $(CFLAGS) -c $<
%$O .SWAP: %$P ; $(PC) $(PFLAGS) -c $<
%$O .SWAP: %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O .SWAP: %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E .SWAP: %$O ; $(CC) $(LDFLAGS) -e$@ $<
# lex and yacc rules
%.c .SWAP: %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c .SWAP: %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS/$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A .SWAP:
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"

View File

@@ -1,48 +1,48 @@
-+addch.obj &
-+addchstr.obj &
-+addstr.obj &
-+attr.obj &
-+beep.obj &
-+bkgd.obj &
-+border.obj &
-+clear.obj &
-+color.obj &
-+delch.obj &
-+deleteln.obj &
-+getch.obj &
-+getstr.obj &
-+getyx.obj &
-+inch.obj &
-+inchstr.obj &
-+initscr.obj &
-+inopts.obj &
-+insch.obj &
-+insstr.obj &
-+instr.obj &
-+kernel.obj &
-+mouse.obj &
-+move.obj &
-+outopts.obj &
-+overlay.obj &
-+pad.obj &
-+printw.obj &
-+refresh.obj &
-+scanw.obj &
-+scroll.obj &
-+slk.obj &
-+termattr.obj &
-+terminfo.obj &
-+touch.obj &
-+util.obj &
-+window.obj &
-+pdcclip.obj &
-+pdcdebug.obj &
-+pdcdisp.obj &
-+pdcgetsc.obj &
-+pdckbd.obj &
-+pdcprint.obj &
-+pdcscrn.obj &
-+pdcsetsc.obj &
-+pdcutil.obj &
-+pdcwin.obj &
,lib.map
-+addch.obj &
-+addchstr.obj &
-+addstr.obj &
-+attr.obj &
-+beep.obj &
-+bkgd.obj &
-+border.obj &
-+clear.obj &
-+color.obj &
-+delch.obj &
-+deleteln.obj &
-+getch.obj &
-+getstr.obj &
-+getyx.obj &
-+inch.obj &
-+inchstr.obj &
-+initscr.obj &
-+inopts.obj &
-+insch.obj &
-+insstr.obj &
-+instr.obj &
-+kernel.obj &
-+mouse.obj &
-+move.obj &
-+outopts.obj &
-+overlay.obj &
-+pad.obj &
-+printw.obj &
-+refresh.obj &
-+scanw.obj &
-+scroll.obj &
-+slk.obj &
-+termattr.obj &
-+terminfo.obj &
-+touch.obj &
-+util.obj &
-+window.obj &
-+pdcclip.obj &
-+pdcdebug.obj &
-+pdcdisp.obj &
-+pdcgetsc.obj &
-+pdckbd.obj &
-+pdcprint.obj &
-+pdcscrn.obj &
-+pdcsetsc.obj &
-+pdcutil.obj &
-+pdcwin.obj &
,lib.map

View File

@@ -1,347 +1,347 @@
################################################################################
#
# Borland MAKE Makefile for PDCurses library - OS/2 BC++ 1.0+
#
# Usage: make -f [path\]bccos2.mak [-DDEBUG] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =c:\bcos2
#MODEL =l
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
CCLIBDIR =$(CC_HOME)\lib
CCINCDIR =$(CC_HOME)\include
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\os2
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = bcc
!if $d(DEBUG)
CFLAGS = -N -v -y -DPDCDEBUG
LDFLAGS = /c /v /s /l /e
!else
CFLAGS = -O
LDFLAGS =
!endif
CPPFLAGS = -I$(PDCURSES_HOME) -I$(CCINCDIR)
CCFLAGS = -c $(CFLAGS) $(CPPFLAGS)
LINK = tlink
#CCLIBS =$(CCLIBDIR)\c2.lib
CCLIBS =c2.lib+os2.lib
STARTUP =$(CCLIBDIR)\c02.obj
LIBEXE = tlib /C /E
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcclip.obj \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\bccos2.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS)
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -o$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBPANEL)+$(LIBCURSES)+$(CCLIBS);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj+tui.obj,$*,,$(LIBCURSES)+$(CCLIBS);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Borland C++ OS/2 1.0 PDC$(VER)BCOS2.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Borland C/C++ os/2 1.0. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)bcos2 *.*
cd ..
################################################################################
#
# Borland MAKE Makefile for PDCurses library - OS/2 BC++ 1.0+
#
# Usage: make -f [path\]bccos2.mak [-DDEBUG] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =c:\bcos2
#MODEL =l
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
CCLIBDIR =$(CC_HOME)\lib
CCINCDIR =$(CC_HOME)\include
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\os2
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = bcc
!if $d(DEBUG)
CFLAGS = -N -v -y -DPDCDEBUG
LDFLAGS = /c /v /s /l /e
!else
CFLAGS = -O
LDFLAGS =
!endif
CPPFLAGS = -I$(PDCURSES_HOME) -I$(CCINCDIR)
CCFLAGS = -c $(CFLAGS) $(CPPFLAGS)
LINK = tlink
#CCLIBS =$(CCLIBDIR)\c2.lib
CCLIBS =c2.lib+os2.lib
STARTUP =$(CCLIBDIR)\c02.obj
LIBEXE = tlib /C /E
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcclip.obj \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\bccos2.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS)
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -o$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -o$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBPANEL)+$(LIBCURSES)+$(CCLIBS);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj+tui.obj,$*,,$(LIBCURSES)+$(CCLIBS);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $(STARTUP)+$*.obj,$*,,$(LIBCURSES)+$(CCLIBS);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) -o$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Borland C++ OS/2 1.0 PDC$(VER)BCOS2.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Borland C/C++ os/2 1.0. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)bcos2 *.*
cd ..

File diff suppressed because it is too large Load Diff

View File

@@ -1,154 +1,154 @@
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Turbo-C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := icc # C-compiler and flags
CFLAGS +=
AS := # Assembler and flags
ASFLAGS +=
LD = link386 # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := tpc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O .SWAP: %.c ; $(CC) $(CFLAGS) -c $<
%$O .SWAP: %$P ; $(PC) $(PFLAGS) -c $<
%$O .SWAP: %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O .SWAP: %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E .SWAP: %$O ; $(CC) $(LDFLAGS) -e$@ $<
# lex and yacc rules
%.c .SWAP: %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c .SWAP: %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS/$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A .SWAP:
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Turbo-C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := icc # C-compiler and flags
CFLAGS +=
AS := # Assembler and flags
ASFLAGS +=
LD = link386 # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := tpc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O .SWAP: %.c ; $(CC) $(CFLAGS) -c $<
%$O .SWAP: %$P ; $(PC) $(PFLAGS) -c $<
%$O .SWAP: %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O .SWAP: %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E .SWAP: %$O ; $(CC) $(LDFLAGS) -e$@ $<
# lex and yacc rules
%.c .SWAP: %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c .SWAP: %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS/$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A .SWAP:
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"

View File

@@ -1,154 +1,154 @@
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Turbo-C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := icc # C-compiler and flags
CFLAGS +=
AS := # Assembler and flags
ASFLAGS +=
LD = link386 # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := tpc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O .SWAP: %.c ; $(CC) $(CFLAGS) -c $<
%$O .SWAP: %$P ; $(PC) $(PFLAGS) -c $<
%$O .SWAP: %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O .SWAP: %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E .SWAP: %$O ; $(CC) $(LDFLAGS) -e$@ $<
# lex and yacc rules
%.c .SWAP: %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c .SWAP: %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS/$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A .SWAP:
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"
# MSDOS DMAKE startup file. Customize to suit your needs.
# Assumes MKS toolkit for the tool commands, and Turbo-C. Change as req'd.
# See the documentation for a description of internally defined macros.
#
# Disable warnings for macros redefined here that were given
# on the command line.
__.SILENT := $(.SILENT)
.SILENT := yes
# Configuration parameters for DMAKE startup.mk file
# Set these to NON-NULL if you wish to turn the parameter on.
_HAVE_RCS := yes # yes => RCS is installed.
_HAVE_SCCS := # yes => SCCS is installed.
# Applicable suffix definitions
A := .lib # Libraries
E := .exe # Executables
F := .for # Fortran
O := .obj # Objects
P := .pas # Pascal
S := .asm # Assembler sources
V := # RCS suffix
# See if these are defined
TMPDIR := $(ROOTDIR)/tmp
.IMPORT .IGNORE : TMPDIR SHELL COMSPEC
# Recipe execution configurations
# First set SHELL, If it is not defined, use COMSPEC, otherwise
# it is assumed to be MKS Korn SHELL.
.IF $(SHELL) == $(NULL)
.IF $(COMSPEC) == $(NULL)
SHELL := $(ROOTDIR)/bin/sh$E
.ELSE
SHELL := $(COMSPEC)
.END
.END
GROUPSHELL := $(SHELL)
# Now set remaining arguments depending on which SHELL we
# are going to use. COMSPEC (assumed to be command.com) or
# MKS Korn Shell.
.IF $(SHELL)==$(COMSPEC)
SHELLFLAGS := $(SWITCHAR)c
GROUPFLAGS := $(SHELLFLAGS)
SHELLMETAS := *"?<>
GROUPSUFFIX := .bat
DIRSEPSTR := \\
DIVFILE = $(TMPFILE:s,/,\)
.ELSE
SHELLFLAGS := -c
GROUPFLAGS :=
SHELLMETAS := *"?<>|()&][$$\#`'
GROUPSUFFIX := .ksh
.MKSARGS := yes
DIVFILE = $(TMPFILE:s,/,${DIVSEP_shell_${USESHELL}})
DIVSEP_shell_yes := \\\
DIVSEP_shell_no := \\
.END
# Standard C-language command names and flags
CC := icc # C-compiler and flags
CFLAGS +=
AS := # Assembler and flags
ASFLAGS +=
LD = link386 # Loader and flags
LDFLAGS +=
LDLIBS =
# Definition of $(MAKE) macro for recursive makes.
MAKE = $(MAKECMD) $(MFLAGS)
# Language and Parser generation Tools and their flags
YACC := yacc # standard yacc
YFLAGS +=
YTAB := ytab # yacc output files name stem.
LEX := lex # standard lex
LFLAGS +=
LEXYY := lex_yy # lex output file
# Other Compilers, Tools and their flags
PC := tpc # pascal compiler
RC := anyf77 # ratfor compiler
FC := anyf77 # fortran compiler
CO := co # check out for RCS
COFLAGS += -q
AR := ar # archiver
ARFLAGS+= ruv
RM := rm # remove a file command
RMFLAGS +=
# Implicit generation rules for making inferences.
# We don't provide .yr or .ye rules here. They're obsolete.
# Rules for making *$O
%$O .SWAP: %.c ; $(CC) $(CFLAGS) -c $<
%$O .SWAP: %$P ; $(PC) $(PFLAGS) -c $<
%$O .SWAP: %$S ; $(AS) $(ASFLAGS) $(<:s,/,\);
%$O : %.cl ; class -c $<
%$O .SWAP: %.e %.r %.F %$F ; $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
# Executables
%$E .SWAP: %$O ; $(CC) $(LDFLAGS) -e$@ $<
# lex and yacc rules
%.c .SWAP: %.y ; $(YACC) $(YFLAGS) $<; mv $(YTAB).c $@
%.c .SWAP: %.l ; $(LEX) $(LFLAGS) $<; mv $(LEXYY).c $@
# RCS support
.IF $(_HAVE_RCS)
% : $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
.NOINFER : $$(@:d)RCS/$$(@:f)$V
.END
# SCCS support
.IF $(_HAVE_SCCS)
% : s.% ; get $<
.NOINFER : s.%
.END
# Recipe to make archive files.
%$A .SWAP:
[
$(AR) $(ARFLAGS) $@ $?
$(RM) $(RMFLAGS) $?
]
# DMAKE uses this recipe to remove intermediate targets
.REMOVE :; $(RM) -f $<
# AUGMAKE extensions for SYSV compatibility
@B = $(@:b)
@D = $(@:d)
@F = $(@:f)
"*B" = $(*:b)
"*D" = $(*:d)
"*F" = $(*:f)
<B = $(<:b)
<D = $(<:d)
<F = $(<:f)
?B = $(?:b)
?F = $(?:f)
?D = $(?:d)
# Turn warnings back to previous setting.
.SILENT := $(__.SILENT)
# Local init file if any, gets parsed before user makefile
.INCLUDE .IGNORE: "_startup.mk"

View File

@@ -1,48 +1,48 @@
-+addch.obj &
-+addchstr.obj &
-+addstr.obj &
-+attr.obj &
-+beep.obj &
-+bkgd.obj &
-+border.obj &
-+clear.obj &
-+color.obj &
-+delch.obj &
-+deleteln.obj &
-+getch.obj &
-+getstr.obj &
-+getyx.obj &
-+inch.obj &
-+inchstr.obj &
-+initscr.obj &
-+inopts.obj &
-+insch.obj &
-+insstr.obj &
-+instr.obj &
-+kernel.obj &
-+mouse.obj &
-+move.obj &
-+outopts.obj &
-+overlay.obj &
-+pad.obj &
-+printw.obj &
-+refresh.obj &
-+scanw.obj &
-+scroll.obj &
-+slk.obj &
-+termattr.obj &
-+terminfo.obj &
-+touch.obj &
-+util.obj &
-+window.obj &
-+pdcdebug.obj &
-+pdcclip.obj &
-+pdcdisp.obj &
-+pdcgetsc.obj &
-+pdckbd.obj &
-+pdcprint.obj &
-+pdcscrn.obj &
-+pdcsetsc.obj &
-+pdcutil.obj &
-+pdcwin.obj &
,lib.map;
-+addch.obj &
-+addchstr.obj &
-+addstr.obj &
-+attr.obj &
-+beep.obj &
-+bkgd.obj &
-+border.obj &
-+clear.obj &
-+color.obj &
-+delch.obj &
-+deleteln.obj &
-+getch.obj &
-+getstr.obj &
-+getyx.obj &
-+inch.obj &
-+inchstr.obj &
-+initscr.obj &
-+inopts.obj &
-+insch.obj &
-+insstr.obj &
-+instr.obj &
-+kernel.obj &
-+mouse.obj &
-+move.obj &
-+outopts.obj &
-+overlay.obj &
-+pad.obj &
-+printw.obj &
-+refresh.obj &
-+scanw.obj &
-+scroll.obj &
-+slk.obj &
-+termattr.obj &
-+terminfo.obj &
-+touch.obj &
-+util.obj &
-+window.obj &
-+pdcdebug.obj &
-+pdcclip.obj &
-+pdcdisp.obj &
-+pdcgetsc.obj &
-+pdckbd.obj &
-+pdcprint.obj &
-+pdcscrn.obj &
-+pdcsetsc.obj &
-+pdcutil.obj &
-+pdcwin.obj &
,lib.map;

View File

@@ -1,340 +1,340 @@
################################################################################
#
# NMAKE Makefile for PDCurses library - OS/2 C Set/2
#
# Usage: nmake -f [path\]iccos2.mak [DEBUG=1] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =f:\ibmc
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\os2
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = icc
!ifdef DEBUG
CFLAGS = /Sm /Ti+ /O- /Q+ /dPDCDEBUG
LDFLAGS = /NOLOGO /NOE /SE:160 /DEBUG /PMTYPE:VIO
!else
CFLAGS = /Sm /Ti- /O+ /Q+
LDFLAGS = /NOLOGO /NOE /EXEPACK /PACKCODE /PACKDATA /PMTYPE:VIO
!endif
CPPFLAGS = -I$(PDCURSES_HOME)
CCFLAGS = -c $(CFLAGS) $(CPPFLAGS)
LINK = link386
LIBEXE = lib
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
LIBRARIES = $(LIBCURSES) $(LIBPANEL)
################################################################################
all: $(LIBRARIES)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcclip.obj \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\iccos2.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS);
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -Fo$@ $(pandir)\panel.c
#------------------------------------------------------------------------
# DLFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB);
# PANFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB)+$(PANLIB);
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES)+$(LIBPANEL);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)/panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
chdir tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for C Set/2 OS/2 PDC$(VER)_ICC_OS2.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo C Set/2 for OS/2. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)_icc_os2 *.*
cd ..
################################################################################
#
# NMAKE Makefile for PDCurses library - OS/2 C Set/2
#
# Usage: nmake -f [path\]iccos2.mak [DEBUG=1] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CC_HOME =f:\ibmc
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\os2
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = icc
!ifdef DEBUG
CFLAGS = /Sm /Ti+ /O- /Q+ /dPDCDEBUG
LDFLAGS = /NOLOGO /NOE /SE:160 /DEBUG /PMTYPE:VIO
!else
CFLAGS = /Sm /Ti- /O+ /Q+
LDFLAGS = /NOLOGO /NOE /EXEPACK /PACKCODE /PACKDATA /PMTYPE:VIO
!endif
CPPFLAGS = -I$(PDCURSES_HOME)
CCFLAGS = -c $(CFLAGS) $(CPPFLAGS)
LINK = link386
LIBEXE = lib
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
LIBRARIES = $(LIBCURSES) $(LIBPANEL)
################################################################################
all: $(LIBRARIES)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
#------------------------------------------------------------------------
LIBOBJS = \
addch.obj \
addchstr.obj \
addstr.obj \
attr.obj \
beep.obj \
bkgd.obj \
border.obj \
clear.obj \
color.obj \
delch.obj \
deleteln.obj \
getch.obj \
getstr.obj \
getyx.obj \
inch.obj \
inchstr.obj \
initscr.obj \
inopts.obj \
insch.obj \
insstr.obj \
instr.obj \
kernel.obj \
mouse.obj \
move.obj \
outopts.obj \
overlay.obj \
pad.obj \
printw.obj \
refresh.obj \
scanw.obj \
scroll.obj \
slk.obj \
termattr.obj \
terminfo.obj \
touch.obj \
util.obj \
window.obj
PDCOBJS = \
pdcclip.obj \
pdcdebug.obj \
pdcdisp.obj \
pdcgetsc.obj \
pdckbd.obj \
pdcprint.obj \
pdcscrn.obj \
pdcsetsc.obj \
pdcutil.obj \
pdcwin.obj
PANOBJS = \
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\iccos2.lrf
panel.lib : $(PANOBJS)
$(LIBEXE) $@ -+$(PANOBJS);
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) -Fo$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) -Fo$@ $(pandir)\panel.c
#------------------------------------------------------------------------
# DLFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB);
# PANFLAGS = $(LDEBUG) $*$(OBJ),$*,,$(PDCLIB)+$(PANLIB);
firework.exe: firework.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
newdemo.exe: newdemo.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES)+$(LIBPANEL);
testcurs.exe: testcurs.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
xmas.exe: xmas.obj $(LIBCURSES)
$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)/panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -Fo$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
chdir tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for C Set/2 OS/2 PDC$(VER)_ICC_OS2.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo C Set/2 for OS/2. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)_icc_os2 *.*
cd ..

View File

@@ -1,9 +1,9 @@
-K
-G
-rd
-d
-V
-w-eff
-j0
-c
-P-
-K
-G
-rd
-d
-V
-w-eff
-j0
-c
-P-

View File

@@ -1,3 +1,3 @@
#NOTE: startup.mk file is called dmake.ini for OS/2
# and is found in os2/mscdos/dmake.ini
.INCLUDE : "os2/mscdos/dmake.ini"
#NOTE: startup.mk file is called dmake.ini for OS/2
# and is found in os2/mscdos/dmake.ini
.INCLUDE : "os2/mscdos/dmake.ini"

View File

@@ -1,193 +1,193 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#if !defined(EMXVIDEO)
# define INCL_DOS
# define INCL_WIN
#endif
#include <curses.h>
#include <string.h>
#ifdef PDCDEBUG
char *rcsid_PDCclip = "$Id: pdcclip.c,v 1.1 2001/01/10 08:29:28 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_getclipboard() - Gets the contents of the clipboard
PDCurses Description:
This is a PDCurses only routine.
Gets the textual contents of the system's clipboard. This
function returns the contents of the clipboard in the contents
argument. It is the responsibilitiy of the caller to free the
memory returned with the free() system call. The length of the
clipboard contents is returned in the length argument.
PDCurses Return Value:
indicator of success/failure of call.
PDC_CLIP_SUCCESS the call was successful
PDC_CLIP_ACCESS_ERROR an error occured while accessing the
clipboard
PDC_CLIP_MEMORY_ERROR unable to allocate sufficient memory for
the clipboard contents
PDC_CLIP_EMPTY the clipboard contains no text
Portability:
PDCurses int PDC_getclipboard( char **contents, long *length );
**man-end**********************************************************************/
int PDC_CDECL PDC_getclipboard(char **contents, long *length)
{
#if !defined(EMXVIDEO)
HMQ hmq;
HAB hab;
PTIB ptib;
PPIB ppib;
ULONG ulRet;
long len=0;
int rc=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_getclipboard() - called\n");
#endif
#if !defined(EMXVIDEO)
DosGetInfoBlocks( &ptib, &ppib );
ppib->pib_ultype = 3;
hab = WinInitialize( 0 );
hmq = WinCreateMsgQueue( hab, 0 );
if ( !WinOpenClipbrd( hab ) )
{
WinDestroyMsgQueue( hmq );
WinTerminate( hab );
return PDC_CLIP_ACCESS_ERROR;
}
ulRet = WinQueryClipbrdData( hab, CF_TEXT );
if ( !ulRet )
rc = PDC_CLIP_EMPTY;
else
{
len = strlen( (char *)ulRet );
*contents = (char *)malloc( len+1 );
if ( !*contents )
{
rc = PDC_CLIP_MEMORY_ERROR;
}
else
{
strcpy( (char *)*contents, (char *)ulRet );
*length = len;
rc = PDC_CLIP_SUCCESS;
}
}
WinCloseClipbrd( hab );
WinDestroyMsgQueue( hmq );
WinTerminate( hab );
return( rc );
#else
return PDC_CLIP_ACCESS_ERROR;
#endif
}
/*man-start*********************************************************************
PDC_setclipboard() - Sets the contents of the clipboard
PDCurses Description:
This is a PDCurses only routine.
Copies the supplied text into the system's clipboard, emptying
the clipboard prior to the copy.
PDCurses Return Value:
indicator of success/failure of call.
PDC_CLIP_SUCCESS the call was successful
PDC_CLIP_ACCESS_ERROR an error occured while accessing the
clipboard
Portability:
PDCurses int PDC_getclipboard( char *contents, long length );
**man-end**********************************************************************/
int PDC_CDECL PDC_setclipboard(char *contents, long length)
{
#if !defined(EMXVIDEO)
HAB hab;
PTIB ptib;
PPIB ppib;
ULONG ulRC;
PSZ szTextOut=NULL;
int rc=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_setclipboard() - called\n");
#endif
#if !defined(EMXVIDEO)
DosGetInfoBlocks( &ptib, &ppib );
ppib->pib_ultype = 3;
hab = WinInitialize( 0 );
if ( !WinOpenClipbrd( hab ) )
{
WinTerminate( hab );
return PDC_CLIP_ACCESS_ERROR;
}
ulRC = DosAllocSharedMem( (PVOID) &szTextOut, NULL, length+1, PAG_WRITE | PAG_COMMIT | OBJ_GIVEABLE );
if (ulRC != 0)
{
rc = PDC_CLIP_MEMORY_ERROR;
}
else
{
strcpy( szTextOut, contents );
WinEmptyClipbrd( hab );
if ( WinSetClipbrdData( hab, (ULONG)szTextOut, CF_TEXT, CFI_POINTER ) )
{
rc = PDC_CLIP_SUCCESS;
}
else
{
DosFreeMem( szTextOut );
rc = PDC_CLIP_ACCESS_ERROR;
}
}
WinCloseClipbrd( hab );
WinTerminate( hab );
return( rc );
#else
return PDC_CLIP_ACCESS_ERROR;
#endif
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#if !defined(EMXVIDEO)
# define INCL_DOS
# define INCL_WIN
#endif
#include <curses.h>
#include <string.h>
#ifdef PDCDEBUG
char *rcsid_PDCclip = "$Id: pdcclip.c,v 1.2 2001/01/10 08:29:29 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_getclipboard() - Gets the contents of the clipboard
PDCurses Description:
This is a PDCurses only routine.
Gets the textual contents of the system's clipboard. This
function returns the contents of the clipboard in the contents
argument. It is the responsibilitiy of the caller to free the
memory returned with the free() system call. The length of the
clipboard contents is returned in the length argument.
PDCurses Return Value:
indicator of success/failure of call.
PDC_CLIP_SUCCESS the call was successful
PDC_CLIP_ACCESS_ERROR an error occured while accessing the
clipboard
PDC_CLIP_MEMORY_ERROR unable to allocate sufficient memory for
the clipboard contents
PDC_CLIP_EMPTY the clipboard contains no text
Portability:
PDCurses int PDC_getclipboard( char **contents, long *length );
**man-end**********************************************************************/
int PDC_CDECL PDC_getclipboard(char **contents, long *length)
{
#if !defined(EMXVIDEO)
HMQ hmq;
HAB hab;
PTIB ptib;
PPIB ppib;
ULONG ulRet;
long len=0;
int rc=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_getclipboard() - called\n");
#endif
#if !defined(EMXVIDEO)
DosGetInfoBlocks( &ptib, &ppib );
ppib->pib_ultype = 3;
hab = WinInitialize( 0 );
hmq = WinCreateMsgQueue( hab, 0 );
if ( !WinOpenClipbrd( hab ) )
{
WinDestroyMsgQueue( hmq );
WinTerminate( hab );
return PDC_CLIP_ACCESS_ERROR;
}
ulRet = WinQueryClipbrdData( hab, CF_TEXT );
if ( !ulRet )
rc = PDC_CLIP_EMPTY;
else
{
len = strlen( (char *)ulRet );
*contents = (char *)malloc( len+1 );
if ( !*contents )
{
rc = PDC_CLIP_MEMORY_ERROR;
}
else
{
strcpy( (char *)*contents, (char *)ulRet );
*length = len;
rc = PDC_CLIP_SUCCESS;
}
}
WinCloseClipbrd( hab );
WinDestroyMsgQueue( hmq );
WinTerminate( hab );
return( rc );
#else
return PDC_CLIP_ACCESS_ERROR;
#endif
}
/*man-start*********************************************************************
PDC_setclipboard() - Sets the contents of the clipboard
PDCurses Description:
This is a PDCurses only routine.
Copies the supplied text into the system's clipboard, emptying
the clipboard prior to the copy.
PDCurses Return Value:
indicator of success/failure of call.
PDC_CLIP_SUCCESS the call was successful
PDC_CLIP_ACCESS_ERROR an error occured while accessing the
clipboard
Portability:
PDCurses int PDC_getclipboard( char *contents, long length );
**man-end**********************************************************************/
int PDC_CDECL PDC_setclipboard(char *contents, long length)
{
#if !defined(EMXVIDEO)
HAB hab;
PTIB ptib;
PPIB ppib;
ULONG ulRC;
PSZ szTextOut=NULL;
int rc=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_setclipboard() - called\n");
#endif
#if !defined(EMXVIDEO)
DosGetInfoBlocks( &ptib, &ppib );
ppib->pib_ultype = 3;
hab = WinInitialize( 0 );
if ( !WinOpenClipbrd( hab ) )
{
WinTerminate( hab );
return PDC_CLIP_ACCESS_ERROR;
}
ulRC = DosAllocSharedMem( (PVOID) &szTextOut, NULL, length+1, PAG_WRITE | PAG_COMMIT | OBJ_GIVEABLE );
if (ulRC != 0)
{
rc = PDC_CLIP_MEMORY_ERROR;
}
else
{
strcpy( szTextOut, contents );
WinEmptyClipbrd( hab );
if ( WinSetClipbrdData( hab, (ULONG)szTextOut, CF_TEXT, CFI_POINTER ) )
{
rc = PDC_CLIP_SUCCESS;
}
else
{
DosFreeMem( szTextOut );
rc = PDC_CLIP_ACCESS_ERROR;
}
}
WinCloseClipbrd( hab );
WinTerminate( hab );
return( rc );
#else
return PDC_CLIP_ACCESS_ERROR;
#endif
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,89 +1,89 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCprint = "$Id: pdcprint.c,v 1.1 2001/01/10 08:29:37 mark Exp $";
#endif
#if !defined (CURSES__32BIT__) && !defined(CSET2) && !defined(MSC) &&!defined(TC)
#define INCL_DOS
#include <bsedos.h>
#endif
char Printer[]="LPT1:";
/*man-start*********************************************************************
PDC_print() - Provides primitive access to the BIOS printer functions
PDCurses Description:
This is a private PDCurses routine.
Implements write/init/read printer services at the BIOS level.
This provides the basic support that PDCurses needs to dump the
contents of windows or pads to the printer attached to the BIOS
printer port.
PDCurses Return Value:
See the BIOS INT 0x17 specifications.
PDCurses Errors:
See the BIOS INT 0x17 specifications.
Portability:
PDCurses int PDC_print( int cmd, int byte, int port );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_print(int cmd, int byte, int port)
#else
int PDC_print(cmd,byte,port)
int cmd;
int byte;
int port;
#endif
/***********************************************************************/
{
#if !defined (CURSES__32BIT__) && !defined(CSET2) && !defined(TC)
HFILE Lpt;
USHORT Action=0;
USHORT NoWritten=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_print() - called\n");
#endif
#if !defined (CURSES__32BIT__) && !defined(CSET2) && !defined(TC)
if (DosOpen((PSZ)Printer, &Lpt, &Action, 0,0,0,0,0) != 0)
return(ERR);
DosWrite(Lpt,&byte,1,&NoWritten);
DosClose(Lpt);
return(NoWritten == 1);
#endif
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCprint = "$Id: pdcprint.c,v 1.2 2001/01/10 08:29:38 mark Exp $";
#endif
#if !defined (CURSES__32BIT__) && !defined(CSET2) && !defined(MSC) &&!defined(TC)
#define INCL_DOS
#include <bsedos.h>
#endif
char Printer[]="LPT1:";
/*man-start*********************************************************************
PDC_print() - Provides primitive access to the BIOS printer functions
PDCurses Description:
This is a private PDCurses routine.
Implements write/init/read printer services at the BIOS level.
This provides the basic support that PDCurses needs to dump the
contents of windows or pads to the printer attached to the BIOS
printer port.
PDCurses Return Value:
See the BIOS INT 0x17 specifications.
PDCurses Errors:
See the BIOS INT 0x17 specifications.
Portability:
PDCurses int PDC_print( int cmd, int byte, int port );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_print(int cmd, int byte, int port)
#else
int PDC_print(cmd,byte,port)
int cmd;
int byte;
int port;
#endif
/***********************************************************************/
{
#if !defined (CURSES__32BIT__) && !defined(CSET2) && !defined(TC)
HFILE Lpt;
USHORT Action=0;
USHORT NoWritten=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_print() - called\n");
#endif
#if !defined (CURSES__32BIT__) && !defined(CSET2) && !defined(TC)
if (DosOpen((PSZ)Printer, &Lpt, &Action, 0,0,0,0,0) != 0)
return(ERR);
DosWrite(Lpt,&byte,1,&NoWritten);
DosClose(Lpt);
return(NoWritten == 1);
#endif
}

View File

@@ -1,319 +1,319 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCscrn = "$Id: pdcscrn.c,v 1.1 2001/01/10 08:29:39 mark Exp $";
#endif
#ifdef EMXVIDEO
static unsigned char *saved_screen = NULL;
static int saved_lines = 0;
static int saved_cols = 0;
#else
static PCH saved_screen = NULL;
static USHORT saved_lines = 0;
static USHORT saved_cols = 0;
#endif
/*man-start*********************************************************************
PDC_scr_close() - Internal low-level binding to close the physical screen
PDCurses Description:
This function provides a low-level binding for the Flexos
platform which must close the screen before writing to it.
This is a nop for the DOS platform.
This function is provided in order to reset the FlexOS 16 bit
character set for input rather than the limited input
character set associated with the VT52.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
The DOS platform will never fail. The Flexos platform may fail
depending on the ability to close the current virtual console in
8 (as opposed to 16) bit mode.
Portability:
PDCurses int PDC_scr_close( void );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_scr_close(void)
#else
int PDC_scr_close()
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scr_close() - called\n");
#endif
if (getenv("PDC_RESTORE_SCREEN") != NULL)
{
if (saved_screen == NULL)
return( OK );
#ifdef EMXVIDEO
v_putline(saved_screen,0,0,saved_lines*saved_cols);
#else
VioWrtCellStr(saved_screen,saved_lines*saved_cols*2,0,0,(HVIO)NULL);
#endif
free(saved_screen);
saved_screen = NULL;
}
return( OK );
}
/*man-start*********************************************************************
PDC_scrn_modes_equal() - Decide if two screen modes are equal
PDCurses Description:
Mainly required for OS/2. It decides if two screen modes
(VIOMODEINFO structure) are equal. Under DOS it just compares
two integers
PDCurses Return Value:
This function returns TRUE if equal else FALSe.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_scrn_modes_equal( int mode1, int mode2 );
OS2 PDCurses int PDC_scrn_modes_equal( VIOMODEINFO mode1, VIOMODEINFO mode2 );
**man-end**********************************************************************/
/***********************************************************************/
#if !defined( EMXVIDEO )
bool PDC_scrn_modes_equal(VIOMODEINFO mode1, VIOMODEINFO mode2)
#else
# ifdef HAVE_PROTO
bool PDC_scrn_modes_equal(int mode1, int mode2)
# else
bool PDC_scrn_modes_equal(mode1,mode2)
int mode1;
int mode2;
# endif
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scrn_modes_equal() - called\n");
#endif
#if !defined( EMXVIDEO )
return ((mode1.cb == mode2.cb) && (mode1.fbType == mode2.fbType)
&& (mode1.color == mode2.color) && (mode1.col == mode2.col)
&& (mode1.row == mode2.row) && (mode1.hres == mode2.vres)
&& (mode1.vres == mode2.vres) );
#else
return (mode1 == mode2);
#endif
}
/*man-start*********************************************************************
PDC_scr_open() - Internal low-level binding to open the physical screen
PDCurses Description:
This function provides a low-level binding for the Flexos
platform which must open the screen before writing to it.
This function is provided in order to access the FlexOS 16 bit
character set for input rather than the limited input
character set associated with the VT52.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
The DOS platform will never fail. The Flexos platform may fail
depending on the ability to open the current virtual console in
8 (as opposed to 16) bit mode.
Portability:
PDCurses int PDC_scr_open( SCREEN* internal, bool echo );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_scr_open(SCREEN *internal, bool echo)
#else
int PDC_scr_open(internal,echo)
SCREEN *internal;
bool echo;
#endif
/***********************************************************************/
{
#if !defined( EMXVIDEO )
extern VIOCONFIGINFO configInfo;
extern VIOMODEINFO modeInfo;
USHORT totchars=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scr_open() - called\n");
#endif
internal->orig_attr = 0;
internal->orig_emulation = 0;
PDC_get_cursor_pos(&internal->cursrow, &internal->curscol);
internal->direct_video = TRUE; /* Assume that we can */
internal->autocr = TRUE; /* lf -> crlf by default */
internal->raw_out = FALSE; /* tty I/O modes */
internal->raw_inp = FALSE; /* tty I/O modes */
internal->cbreak = TRUE;
internal->save_key_modifiers = FALSE;
internal->return_key_modifiers = FALSE;
internal->echo = echo;
/* under System V Curses, typeahead checking is enabled by default */
internal->refrbrk = TRUE; /* allow premature end of refresh*/
internal->video_page = 0; /* Current Video Page */
internal->visible_cursor= TRUE; /* Assume that it is visible */
internal->cursor = PDC_get_cursor_mode();
#if defined(EMXVIDEO)
internal->tahead = -1;
#endif
#if !defined(EMXVIDEO)
(void)PDC_query_adapter_type();
memcpy((char *)&internal->adapter,(char *)&configInfo,sizeof(VIOCONFIGINFO));
(void)PDC_get_scrn_mode();
memcpy((char *)&internal->scrnmode,(char *)&modeInfo,sizeof(VIOMODEINFO));
#else
internal->adapter = PDC_query_adapter_type();
#endif
internal->orig_font = internal->font = PDC_get_font();
internal->lines = PDC_get_rows();
internal->cols = PDC_get_columns();
internal->audible = TRUE;
internal->visibility = 1;
internal->orig_cursor = internal->cursor;
internal->orgcbr = PDC_get_ctrl_break();
internal->blank = ' ';
internal->resized = FALSE;
internal->shell = FALSE;
internal->_trap_mbe = 0L;
internal->_map_mbe_to_key = 0L;
internal->linesrippedoff = 0;
internal->linesrippedoffontop = 0;
internal->delaytenths = 0;
/*
* This code for preserving the current screen...
*/
if (getenv("PDC_RESTORE_SCREEN") != NULL)
{
saved_lines = internal->lines;
saved_cols = internal->cols;
#ifdef EMXVIDEO
if ((saved_screen = (unsigned char*)malloc(2*saved_lines*saved_cols*sizeof(unsigned char))) == NULL)
return(ERR);
v_getline(saved_screen,0,0,saved_lines*saved_cols);
#else
if ((saved_screen = (PCH)malloc(2*saved_lines*saved_cols*sizeof(unsigned char))) == NULL)
return(ERR);
totchars = saved_lines*saved_cols*2;
VioReadCellStr((PCH)saved_screen,&totchars,0,0,(HVIO)NULL);
#endif
}
if (getenv("PDC_PRESERVE_SCREEN") != NULL)
internal->_preserve = TRUE;
else
internal->_preserve = FALSE;
return( OK );
}
/*man-start*********************************************************************
PDC_resize_screen() - Internal low-level function to resize screen
PDCurses Description:
This function provides a means for the application program to
resize the overall dimensions of the screen. Under DOS and OS/2
the application can tell PDCurses what size to make the screen;
under X11, resizing is done by the user and this function simply
adjusts its internal structures to fit the new size.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
Portability:
PDCurses int PDC_resize_screen( int, int );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_resize_screen(int nlines, int ncols)
#else
int PDC_resize_screen(nlines, ncols)
int nlines,ncols;
#endif
/***********************************************************************/
{
int rc=OK;
#ifndef EMXVIDEO
VIOMODEINFO modeInfo={0};
USHORT result=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_resize_screen() - called. Lines: %d Cols: %d\n",nlines,ncols);
#endif
#if 0
if (nlines >= 43) PDC_set_font(_FONT8);
else if (nlines > 25) PDC_set_font(_FONT14);
else PDC_set_80x25();
return ( rc );
#else
# ifdef EMXVIDEO
return (ERR);
# else
modeInfo.cb = sizeof(modeInfo);
/* set most parameters of modeInfo */
VioGetMode(&modeInfo, 0);
modeInfo.fbType = 1;
modeInfo.row = nlines;
modeInfo.col = ncols;
result = VioSetMode(&modeInfo, 0);
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return ((result == 0) ? OK : ERR);
# endif
#endif
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCscrn = "$Id: pdcscrn.c,v 1.2 2001/01/10 08:29:40 mark Exp $";
#endif
#ifdef EMXVIDEO
static unsigned char *saved_screen = NULL;
static int saved_lines = 0;
static int saved_cols = 0;
#else
static PCH saved_screen = NULL;
static USHORT saved_lines = 0;
static USHORT saved_cols = 0;
#endif
/*man-start*********************************************************************
PDC_scr_close() - Internal low-level binding to close the physical screen
PDCurses Description:
This function provides a low-level binding for the Flexos
platform which must close the screen before writing to it.
This is a nop for the DOS platform.
This function is provided in order to reset the FlexOS 16 bit
character set for input rather than the limited input
character set associated with the VT52.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
The DOS platform will never fail. The Flexos platform may fail
depending on the ability to close the current virtual console in
8 (as opposed to 16) bit mode.
Portability:
PDCurses int PDC_scr_close( void );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_scr_close(void)
#else
int PDC_scr_close()
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scr_close() - called\n");
#endif
if (getenv("PDC_RESTORE_SCREEN") != NULL)
{
if (saved_screen == NULL)
return( OK );
#ifdef EMXVIDEO
v_putline(saved_screen,0,0,saved_lines*saved_cols);
#else
VioWrtCellStr(saved_screen,saved_lines*saved_cols*2,0,0,(HVIO)NULL);
#endif
free(saved_screen);
saved_screen = NULL;
}
return( OK );
}
/*man-start*********************************************************************
PDC_scrn_modes_equal() - Decide if two screen modes are equal
PDCurses Description:
Mainly required for OS/2. It decides if two screen modes
(VIOMODEINFO structure) are equal. Under DOS it just compares
two integers
PDCurses Return Value:
This function returns TRUE if equal else FALSe.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_scrn_modes_equal( int mode1, int mode2 );
OS2 PDCurses int PDC_scrn_modes_equal( VIOMODEINFO mode1, VIOMODEINFO mode2 );
**man-end**********************************************************************/
/***********************************************************************/
#if !defined( EMXVIDEO )
bool PDC_scrn_modes_equal(VIOMODEINFO mode1, VIOMODEINFO mode2)
#else
# ifdef HAVE_PROTO
bool PDC_scrn_modes_equal(int mode1, int mode2)
# else
bool PDC_scrn_modes_equal(mode1,mode2)
int mode1;
int mode2;
# endif
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scrn_modes_equal() - called\n");
#endif
#if !defined( EMXVIDEO )
return ((mode1.cb == mode2.cb) && (mode1.fbType == mode2.fbType)
&& (mode1.color == mode2.color) && (mode1.col == mode2.col)
&& (mode1.row == mode2.row) && (mode1.hres == mode2.vres)
&& (mode1.vres == mode2.vres) );
#else
return (mode1 == mode2);
#endif
}
/*man-start*********************************************************************
PDC_scr_open() - Internal low-level binding to open the physical screen
PDCurses Description:
This function provides a low-level binding for the Flexos
platform which must open the screen before writing to it.
This function is provided in order to access the FlexOS 16 bit
character set for input rather than the limited input
character set associated with the VT52.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
The DOS platform will never fail. The Flexos platform may fail
depending on the ability to open the current virtual console in
8 (as opposed to 16) bit mode.
Portability:
PDCurses int PDC_scr_open( SCREEN* internal, bool echo );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_scr_open(SCREEN *internal, bool echo)
#else
int PDC_scr_open(internal,echo)
SCREEN *internal;
bool echo;
#endif
/***********************************************************************/
{
#if !defined( EMXVIDEO )
extern VIOCONFIGINFO configInfo;
extern VIOMODEINFO modeInfo;
USHORT totchars=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_scr_open() - called\n");
#endif
internal->orig_attr = 0;
internal->orig_emulation = 0;
PDC_get_cursor_pos(&internal->cursrow, &internal->curscol);
internal->direct_video = TRUE; /* Assume that we can */
internal->autocr = TRUE; /* lf -> crlf by default */
internal->raw_out = FALSE; /* tty I/O modes */
internal->raw_inp = FALSE; /* tty I/O modes */
internal->cbreak = TRUE;
internal->save_key_modifiers = FALSE;
internal->return_key_modifiers = FALSE;
internal->echo = echo;
/* under System V Curses, typeahead checking is enabled by default */
internal->refrbrk = TRUE; /* allow premature end of refresh*/
internal->video_page = 0; /* Current Video Page */
internal->visible_cursor= TRUE; /* Assume that it is visible */
internal->cursor = PDC_get_cursor_mode();
#if defined(EMXVIDEO)
internal->tahead = -1;
#endif
#if !defined(EMXVIDEO)
(void)PDC_query_adapter_type();
memcpy((char *)&internal->adapter,(char *)&configInfo,sizeof(VIOCONFIGINFO));
(void)PDC_get_scrn_mode();
memcpy((char *)&internal->scrnmode,(char *)&modeInfo,sizeof(VIOMODEINFO));
#else
internal->adapter = PDC_query_adapter_type();
#endif
internal->orig_font = internal->font = PDC_get_font();
internal->lines = PDC_get_rows();
internal->cols = PDC_get_columns();
internal->audible = TRUE;
internal->visibility = 1;
internal->orig_cursor = internal->cursor;
internal->orgcbr = PDC_get_ctrl_break();
internal->blank = ' ';
internal->resized = FALSE;
internal->shell = FALSE;
internal->_trap_mbe = 0L;
internal->_map_mbe_to_key = 0L;
internal->linesrippedoff = 0;
internal->linesrippedoffontop = 0;
internal->delaytenths = 0;
/*
* This code for preserving the current screen...
*/
if (getenv("PDC_RESTORE_SCREEN") != NULL)
{
saved_lines = internal->lines;
saved_cols = internal->cols;
#ifdef EMXVIDEO
if ((saved_screen = (unsigned char*)malloc(2*saved_lines*saved_cols*sizeof(unsigned char))) == NULL)
return(ERR);
v_getline(saved_screen,0,0,saved_lines*saved_cols);
#else
if ((saved_screen = (PCH)malloc(2*saved_lines*saved_cols*sizeof(unsigned char))) == NULL)
return(ERR);
totchars = saved_lines*saved_cols*2;
VioReadCellStr((PCH)saved_screen,&totchars,0,0,(HVIO)NULL);
#endif
}
if (getenv("PDC_PRESERVE_SCREEN") != NULL)
internal->_preserve = TRUE;
else
internal->_preserve = FALSE;
return( OK );
}
/*man-start*********************************************************************
PDC_resize_screen() - Internal low-level function to resize screen
PDCurses Description:
This function provides a means for the application program to
resize the overall dimensions of the screen. Under DOS and OS/2
the application can tell PDCurses what size to make the screen;
under X11, resizing is done by the user and this function simply
adjusts its internal structures to fit the new size.
PDCurses Return Value:
This function returns OK on success, otherwise an ERR is returned.
PDCurses Errors:
Portability:
PDCurses int PDC_resize_screen( int, int );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_resize_screen(int nlines, int ncols)
#else
int PDC_resize_screen(nlines, ncols)
int nlines,ncols;
#endif
/***********************************************************************/
{
int rc=OK;
#ifndef EMXVIDEO
VIOMODEINFO modeInfo={0};
USHORT result=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_resize_screen() - called. Lines: %d Cols: %d\n",nlines,ncols);
#endif
#if 0
if (nlines >= 43) PDC_set_font(_FONT8);
else if (nlines > 25) PDC_set_font(_FONT14);
else PDC_set_80x25();
return ( rc );
#else
# ifdef EMXVIDEO
return (ERR);
# else
modeInfo.cb = sizeof(modeInfo);
/* set most parameters of modeInfo */
VioGetMode(&modeInfo, 0);
modeInfo.fbType = 1;
modeInfo.row = nlines;
modeInfo.col = ncols;
result = VioSetMode(&modeInfo, 0);
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return ((result == 0) ? OK : ERR);
# endif
#endif
}

View File

@@ -1,399 +1,399 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCsetsc = "$Id: pdcsetsc.c,v 1.1 2001/01/10 08:29:41 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_set_80x25() - force a known screen state: 80x25 text mode.
PDCurses Description:
This is a private PDCurses function.
Forces the appropriate 80x25 alpha mode given the display adapter.
Since we currently do not support changing the virtual console size,
this routine is a NOP under Flexos.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
No errors are defined for this routine.
Portability:
PDCurses int PDC_set_80x25( void );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_80x25(void)
#else
int PDC_set_80x25()
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOMODEINFO modeInfo={0};
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_80x25() - called\n");
#endif
#ifndef EMXVIDEO
modeInfo.cb = sizeof(modeInfo);
/* set most parameters of modeInfo */
VioGetMode(&modeInfo, 0);
modeInfo.fbType = 1;
VioSetMode(&modeInfo, 0);
#endif
return( OK );
}
/*man-start*********************************************************************
PDC_set_cursor_mode() - Set the cursor start and stop scan lines.
PDCurses Description:
Sets the cursor type to begin in scan line startrow and end in
scan line endrow. Both values should be 0-31.
PDCurses Return Value:
This function returns OK on success and ERR on error.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_set_cursor_mode( int startrow, int endrow );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_cursor_mode( int startrow, int endrow )
#else
int PDC_set_cursor_mode(startrow,endrow)
int startrow;
int endrow;
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOCURSORINFO cursorInfo={0};
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_cursor_mode() - called: startrow %d endrow %d\n",startrow,endrow);
#endif
#ifdef EMXVIDEO
if (endrow <= startrow)
v_hidecursor();
else
v_ctype (startrow, endrow);
return( OK );
#else
cursorInfo.yStart = startrow;
cursorInfo.cEnd = endrow;
cursorInfo.cx = 1;
cursorInfo.attr = 0;
return (VioSetCurType (&cursorInfo, 0) == 0);
#endif
}
/*man-start*********************************************************************
PDC_set_font() - sets the current font size
PDCurses Description:
This is a private PDCurses function.
This routine sets the current font size, if the adapter allows
such a change.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
It is an error to attempt to change the font size on a "bogus"
adapter. The reason for this is that we have a known video
adapter identity problem. e.g. Two adapters report the same
identifying characteristics.
It is also an error to attempt to change the size of the Flexos
console (as there is currently no support for that).
Portability:
PDCurses int PDC_set_font( int size );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_font(int size)
#else
int PDC_set_font(size)
int size;
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOMODEINFO modeInfo={0};
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_font() - called\n");
#endif
#ifndef EMXVIDEO
if (SP->sizeable && (SP->font != size))
{
modeInfo.cb = sizeof(modeInfo);
/* set most parameters of modeInfo */
VioGetMode(&modeInfo, 0);
modeInfo.cb = 8; /* ignore horiz an vert resolution */
modeInfo.row = modeInfo.vres / size;
VioSetMode(&modeInfo, 0);
}
if (SP->visible_cursor)
PDC_cursor_on();
else
PDC_cursor_off();
SP->font = PDC_get_font();
#endif
return( OK );
}
/*man-start*********************************************************************
PDC_set_rows() - sets the physical number of rows on screen
PDCurses Description:
This is a private PDCurses function.
This routine attempts to set the number of rows on the physical
screen to the passed value.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
It is an error to attempt to change the screen size on a "bogus"
adapter. The reason for this is that we have a known video
adapter identity problem. e.g. Two adapters report the same
identifying characteristics.
It is also an error to attempt to change the size of the Flexos
console (as there is currently no support for that).
Portability:
PDCurses int PDC_set_rows( int rows );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_rows(int rows)
#else
int PDC_set_rows(rows)
int rows;
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOMODEINFO modeInfo={0};
USHORT result=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_rows() - called\n");
#endif
#ifdef EMXVIDEO
return (ERR);
#else
modeInfo.cb = sizeof(modeInfo);
/* set most parameters of modeInfo */
VioGetMode(&modeInfo, 0);
modeInfo.fbType = 1;
modeInfo.row = rows;
result = VioSetMode(&modeInfo, 0);
SP->font = PDC_get_font();
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return ((result == 0) ? OK : ERR);
#endif
}
/*man-start*********************************************************************
PDC_set_scrn_mode() - Set BIOS Video Mode
PDCurses Description:
Sets the BIOS Video Mode Number ONLY if it is different from
the current video mode. This routine is for DOS systems only.
PDCurses Return Value:
This function returns OK on success and ERR on error.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_set_scrn_mode( int new_mode );
**man-end**********************************************************************/
/***********************************************************************/
#if !defined( EMXVIDEO )
int PDC_set_scrn_mode(VIOMODEINFO new_mode)
#else
# ifdef HAVE_PROTO
int PDC_set_scrn_mode(int new_mode)
# else
int PDC_set_scrn_mode(new_mode)
int new_mode;
# endif
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_scrn_mode() - called\n");
#endif
#ifdef EMXVIDEO
return ( OK );
#else
if (VioSetMode (&new_mode, 0) != 0)
{
SP->font = PDC_get_font();
memcpy((char *)&SP->scrnmode,(char *)&new_mode,sizeof(VIOMODEINFO));
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return( OK );
}
else
return (ERR);
#endif
}
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_curs_set(int visibility)
#else
int PDC_curs_set(visibility)
int visibility;
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOCURSORINFO pvioCursorInfo;
#endif
int start=0,end=0;
int ret_vis=0,hidden=0;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_curs_set() - called: visibility=%d\n",visibility);
#endif
ret_vis = SP->visibility;
SP->visibility = visibility;
switch(visibility)
{
case 0: /* invisible */
#ifdef EMXVIDEO
start = end = 0;
#else
start = SP->font / 4;
end = SP->font;
#endif
hidden = (-1);
break;
case 2: /* highly visible */
start = 2; /* almost full-height block */
end = SP->font-1;
break;
default: /* normal visibility */
start = SP->font - (SP->font / 4);
end = SP->font-1;
break;
}
#ifdef EMXVIDEO
if (!visibility)
v_hidecursor();
else
v_ctype (start, end);
#else
pvioCursorInfo.yStart = (USHORT)start;
pvioCursorInfo.cEnd = (USHORT)end;
pvioCursorInfo.cx = (USHORT)1;
pvioCursorInfo.attr = hidden;
VioSetCurType((PVIOCURSORINFO)&pvioCursorInfo,0);
#endif
return( ret_vis );
}
/*man-start*********************************************************************
PDC_set_title() - Set window title
PDCurses Description:
Sets the title of the window in which the curses program is running.
This function may not do anything on some platforms.
PDCurses Return Value:
N/A
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses void PDC_set_title( char *title );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
void PDC_set_title(char *title)
#else
void PDC_set_title(title)
char *title;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_title() - called:<%s>\n",title);
#endif
return;
}
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
#define CURSES_LIBRARY 1
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <curses.h>
#ifdef PDCDEBUG
char *rcsid_PDCsetsc = "$Id: pdcsetsc.c,v 1.2 2001/01/10 08:29:42 mark Exp $";
#endif
/*man-start*********************************************************************
PDC_set_80x25() - force a known screen state: 80x25 text mode.
PDCurses Description:
This is a private PDCurses function.
Forces the appropriate 80x25 alpha mode given the display adapter.
Since we currently do not support changing the virtual console size,
this routine is a NOP under Flexos.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
No errors are defined for this routine.
Portability:
PDCurses int PDC_set_80x25( void );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_80x25(void)
#else
int PDC_set_80x25()
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOMODEINFO modeInfo={0};
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_80x25() - called\n");
#endif
#ifndef EMXVIDEO
modeInfo.cb = sizeof(modeInfo);
/* set most parameters of modeInfo */
VioGetMode(&modeInfo, 0);
modeInfo.fbType = 1;
VioSetMode(&modeInfo, 0);
#endif
return( OK );
}
/*man-start*********************************************************************
PDC_set_cursor_mode() - Set the cursor start and stop scan lines.
PDCurses Description:
Sets the cursor type to begin in scan line startrow and end in
scan line endrow. Both values should be 0-31.
PDCurses Return Value:
This function returns OK on success and ERR on error.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_set_cursor_mode( int startrow, int endrow );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_cursor_mode( int startrow, int endrow )
#else
int PDC_set_cursor_mode(startrow,endrow)
int startrow;
int endrow;
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOCURSORINFO cursorInfo={0};
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_cursor_mode() - called: startrow %d endrow %d\n",startrow,endrow);
#endif
#ifdef EMXVIDEO
if (endrow <= startrow)
v_hidecursor();
else
v_ctype (startrow, endrow);
return( OK );
#else
cursorInfo.yStart = startrow;
cursorInfo.cEnd = endrow;
cursorInfo.cx = 1;
cursorInfo.attr = 0;
return (VioSetCurType (&cursorInfo, 0) == 0);
#endif
}
/*man-start*********************************************************************
PDC_set_font() - sets the current font size
PDCurses Description:
This is a private PDCurses function.
This routine sets the current font size, if the adapter allows
such a change.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
It is an error to attempt to change the font size on a "bogus"
adapter. The reason for this is that we have a known video
adapter identity problem. e.g. Two adapters report the same
identifying characteristics.
It is also an error to attempt to change the size of the Flexos
console (as there is currently no support for that).
Portability:
PDCurses int PDC_set_font( int size );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_font(int size)
#else
int PDC_set_font(size)
int size;
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOMODEINFO modeInfo={0};
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_font() - called\n");
#endif
#ifndef EMXVIDEO
if (SP->sizeable && (SP->font != size))
{
modeInfo.cb = sizeof(modeInfo);
/* set most parameters of modeInfo */
VioGetMode(&modeInfo, 0);
modeInfo.cb = 8; /* ignore horiz an vert resolution */
modeInfo.row = modeInfo.vres / size;
VioSetMode(&modeInfo, 0);
}
if (SP->visible_cursor)
PDC_cursor_on();
else
PDC_cursor_off();
SP->font = PDC_get_font();
#endif
return( OK );
}
/*man-start*********************************************************************
PDC_set_rows() - sets the physical number of rows on screen
PDCurses Description:
This is a private PDCurses function.
This routine attempts to set the number of rows on the physical
screen to the passed value.
PDCurses Return Value:
This function returns OK upon success otherwise ERR is returned.
PDCurses Errors:
It is an error to attempt to change the screen size on a "bogus"
adapter. The reason for this is that we have a known video
adapter identity problem. e.g. Two adapters report the same
identifying characteristics.
It is also an error to attempt to change the size of the Flexos
console (as there is currently no support for that).
Portability:
PDCurses int PDC_set_rows( int rows );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_set_rows(int rows)
#else
int PDC_set_rows(rows)
int rows;
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOMODEINFO modeInfo={0};
USHORT result=0;
#endif
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_rows() - called\n");
#endif
#ifdef EMXVIDEO
return (ERR);
#else
modeInfo.cb = sizeof(modeInfo);
/* set most parameters of modeInfo */
VioGetMode(&modeInfo, 0);
modeInfo.fbType = 1;
modeInfo.row = rows;
result = VioSetMode(&modeInfo, 0);
SP->font = PDC_get_font();
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return ((result == 0) ? OK : ERR);
#endif
}
/*man-start*********************************************************************
PDC_set_scrn_mode() - Set BIOS Video Mode
PDCurses Description:
Sets the BIOS Video Mode Number ONLY if it is different from
the current video mode. This routine is for DOS systems only.
PDCurses Return Value:
This function returns OK on success and ERR on error.
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses int PDC_set_scrn_mode( int new_mode );
**man-end**********************************************************************/
/***********************************************************************/
#if !defined( EMXVIDEO )
int PDC_set_scrn_mode(VIOMODEINFO new_mode)
#else
# ifdef HAVE_PROTO
int PDC_set_scrn_mode(int new_mode)
# else
int PDC_set_scrn_mode(new_mode)
int new_mode;
# endif
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_scrn_mode() - called\n");
#endif
#ifdef EMXVIDEO
return ( OK );
#else
if (VioSetMode (&new_mode, 0) != 0)
{
SP->font = PDC_get_font();
memcpy((char *)&SP->scrnmode,(char *)&new_mode,sizeof(VIOMODEINFO));
LINES = PDC_get_rows();
COLS = PDC_get_columns();
return( OK );
}
else
return (ERR);
#endif
}
/***********************************************************************/
#ifdef HAVE_PROTO
int PDC_curs_set(int visibility)
#else
int PDC_curs_set(visibility)
int visibility;
#endif
/***********************************************************************/
{
#ifndef EMXVIDEO
VIOCURSORINFO pvioCursorInfo;
#endif
int start=0,end=0;
int ret_vis=0,hidden=0;
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_curs_set() - called: visibility=%d\n",visibility);
#endif
ret_vis = SP->visibility;
SP->visibility = visibility;
switch(visibility)
{
case 0: /* invisible */
#ifdef EMXVIDEO
start = end = 0;
#else
start = SP->font / 4;
end = SP->font;
#endif
hidden = (-1);
break;
case 2: /* highly visible */
start = 2; /* almost full-height block */
end = SP->font-1;
break;
default: /* normal visibility */
start = SP->font - (SP->font / 4);
end = SP->font-1;
break;
}
#ifdef EMXVIDEO
if (!visibility)
v_hidecursor();
else
v_ctype (start, end);
#else
pvioCursorInfo.yStart = (USHORT)start;
pvioCursorInfo.cEnd = (USHORT)end;
pvioCursorInfo.cx = (USHORT)1;
pvioCursorInfo.attr = hidden;
VioSetCurType((PVIOCURSORINFO)&pvioCursorInfo,0);
#endif
return( ret_vis );
}
/*man-start*********************************************************************
PDC_set_title() - Set window title
PDCurses Description:
Sets the title of the window in which the curses program is running.
This function may not do anything on some platforms.
PDCurses Return Value:
N/A
PDCurses Errors:
No errors are defined for this function.
Portability:
PDCurses void PDC_set_title( char *title );
**man-end**********************************************************************/
/***********************************************************************/
#ifdef HAVE_PROTO
void PDC_set_title(char *title)
#else
void PDC_set_title(title)
char *title;
#endif
/***********************************************************************/
{
#ifdef PDCDEBUG
if (trace_on) PDC_debug("PDC_set_title() - called:<%s>\n",title);
#endif
return;
}

View File

@@ -1,140 +1,140 @@
LIBRARY PDCURSES
DESCRIPTION 'PDcurses 2.4 Dynamic Linking library'
PROTMODE
DATA MULTIPLE READWRITE LOADONCALL
CODE LOADONCALL
EXPORTS
SP
LINES
COLS
COLORS
COLOR_PAIRS
PDC_chadd
PDC_chins
PDC_getclipboard
PDC_setclipboard
PDC_set_title
stdscr
curscr
trace_on
baudrate
beep
border
box
can_change_color
cbreak
clearok
color_content
copywin
curs_set
def_prog_mode
def_shell_mode
delay_output
delwin
doupdate
echo
endwin
erasechar
flash
flushinp
has_colors
has_ic
has_il
idlok
init_color
init_pair
initscr
intrflush
is_termresized
keyname
keypad
killchar
leaveok
longname
meta
mvcur
mvprintw
mvscanw
mvwin
mvwinsertln
mvwprintw
mvwscanw
newpad
newwin
nl
nocbreak
nodelay
noecho
nonl
noraw
notimeout
overlay
overwrite
pair_content
pnoutrefresh
prefresh
printw
raw
raw_output
refresh
resetty
reset_prog_mode
reset_shell_mode
resize_term
resize_window
savetty
scanw
scroll
scrollok
setscrreg
set_term
slk_clear
slk_init
slk_noutrefresh
slk_set
slk_touch
standend
standout
start_color
subwin
touchline
touchwin
traceoff
traceon
typeahead
unctrl
waddch
waddchnstr
waddstr
wattroff
wattron
wattrset
wbkgd
wborder
wclear
wclrtobot
wclrtoeol
wdelch
wdeleteln
werase
wgetch
wgetstr
winch
winsch
winsertln
wmove
wnoutrefresh
wordchar
wprintw
wrefresh
wscanw
wsetscrreg
wstandend
wstandout
wtouchln
wvline
LIBRARY PDCURSES
DESCRIPTION 'PDcurses 2.4 Dynamic Linking library'
PROTMODE
DATA MULTIPLE READWRITE LOADONCALL
CODE LOADONCALL
EXPORTS
SP
LINES
COLS
COLORS
COLOR_PAIRS
PDC_chadd
PDC_chins
PDC_getclipboard
PDC_setclipboard
PDC_set_title
stdscr
curscr
trace_on
baudrate
beep
border
box
can_change_color
cbreak
clearok
color_content
copywin
curs_set
def_prog_mode
def_shell_mode
delay_output
delwin
doupdate
echo
endwin
erasechar
flash
flushinp
has_colors
has_ic
has_il
idlok
init_color
init_pair
initscr
intrflush
is_termresized
keyname
keypad
killchar
leaveok
longname
meta
mvcur
mvprintw
mvscanw
mvwin
mvwinsertln
mvwprintw
mvwscanw
newpad
newwin
nl
nocbreak
nodelay
noecho
nonl
noraw
notimeout
overlay
overwrite
pair_content
pnoutrefresh
prefresh
printw
raw
raw_output
refresh
resetty
reset_prog_mode
reset_shell_mode
resize_term
resize_window
savetty
scanw
scroll
scrollok
setscrreg
set_term
slk_clear
slk_init
slk_noutrefresh
slk_set
slk_touch
standend
standout
start_color
subwin
touchline
touchwin
traceoff
traceon
typeahead
unctrl
waddch
waddchnstr
waddstr
wattroff
wattron
wattrset
wbkgd
wborder
wclear
wclrtobot
wclrtoeol
wdelch
wdeleteln
werase
wgetch
wgetstr
winch
winsch
winsertln
wmove
wnoutrefresh
wordchar
wprintw
wrefresh
wscanw
wsetscrreg
wstandend
wstandout
wtouchln
wvline

View File

@@ -1,175 +1,175 @@
dll-obj\baudrate.obj +
dll-obj\beep.obj +
dll-obj\box.obj +
dll-obj\canchang.obj +
dll-obj\cbreak.obj +
dll-obj\clearok.obj +
dll-obj\colorcon.obj +
dll-obj\def_prog.obj +
dll-obj\def_shel.obj +
dll-obj\delay_ou.obj +
dll-obj\delwin.obj +
dll-obj\doupdate.obj +
dll-obj\echo.obj +
dll-obj\endwin.obj +
dll-obj\erasecha.obj +
dll-obj\fixterm.obj +
dll-obj\flash.obj +
dll-obj\flushinp.obj +
dll-obj\gettmode.obj +
dll-obj\getyx.obj +
dll-obj\has_ic.obj +
dll-obj\has_il.obj +
dll-obj\hascolor.obj +
dll-obj\idlok.obj +
dll-obj\initcolo.obj +
dll-obj\initpair.obj +
dll-obj\initscr.obj +
dll-obj\intrflus.obj +
dll-obj\keyname.obj +
dll-obj\keypad.obj +
dll-obj\killchar.obj +
dll-obj\leaveok.obj +
dll-obj\longname.obj +
dll-obj\meta.obj +
dll-obj\mvcur.obj +
dll-obj\mvprintw.obj +
dll-obj\mvscanw.obj +
dll-obj\mvwin.obj +
dll-obj\mvwprint.obj +
dll-obj\mvwscanw.obj +
dll-obj\newpad.obj +
dll-obj\newterm.obj +
dll-obj\newwin.obj +
dll-obj\nl.obj +
dll-obj\nocbreak.obj +
dll-obj\nodelay.obj +
dll-obj\noecho.obj +
dll-obj\noraw.obj +
dll-obj\overlay.obj +
dll-obj\overwrit.obj +
dll-obj\paircont.obj +
dll-obj\pnoutref.obj +
dll-obj\prefresh.obj +
dll-obj\printw.obj +
dll-obj\raw.obj +
dll-obj\refresh.obj +
dll-obj\reset_pr.obj +
dll-obj\reset_sh.obj +
dll-obj\resetter.obj +
dll-obj\resetty.obj +
dll-obj\saveoldt.obj +
dll-obj\saveterm.obj +
dll-obj\savetty.obj +
dll-obj\scanw.obj +
dll-obj\scroll.obj +
dll-obj\scrollok.obj +
dll-obj\set_term.obj +
dll-obj\setscrrg.obj +
dll-obj\standend.obj +
dll-obj\standout.obj +
dll-obj\startcol.obj +
dll-obj\subwin.obj +
dll-obj\touchlin.obj +
dll-obj\touchwin.obj +
dll-obj\typeahea.obj +
dll-obj\unctrl.obj +
dll-obj\ungetch.obj +
dll-obj\waddch.obj +
dll-obj\waddstr.obj +
dll-obj\wattroff.obj +
dll-obj\wattron.obj +
dll-obj\wattrset.obj +
dll-obj\wclear.obj +
dll-obj\wclrtobo.obj +
dll-obj\wclrtoeo.obj +
dll-obj\wdelch.obj +
dll-obj\wdeletel.obj +
dll-obj\werase.obj +
dll-obj\wgetch.obj +
dll-obj\wgetstr.obj +
dll-obj\winch.obj +
dll-obj\winsch.obj +
dll-obj\winsertl.obj +
dll-obj\wmove.obj +
dll-obj\wnoutref.obj +
dll-obj\wprintw.obj +
dll-obj\wrefresh.obj +
dll-obj\wscanw.obj +
dll-obj\wsetscrr.obj +
dll-obj\wstanden.obj +
dll-obj\wstandou.obj +
dll-obj\curs_set.obj +
dll-obj\nonl.obj +
dll-obj\copywin.obj +
dll-obj\traceon.obj +
dll-obj\traceoff.obj +
dll-obj\border.obj +
dll-obj\breakcha.obj +
dll-obj\cursoff.obj +
dll-obj\curson.obj +
dll-obj\mvwinser.obj +
dll-obj\rawout.obj +
dll-obj\resize.obj +
dll-obj\resizew.obj +
dll-obj\tabsize.obj +
dll-obj\waddraws.obj +
dll-obj\wborder.obj +
dll-obj\winprint.obj +
dll-obj\wordchar.obj +
dll-obj\wtabsize.obj +
dll-obj\_addtail.obj +
dll-obj\_addwin.obj +
dll-obj\_backchr.obj +
dll-obj\_cattr.obj +
dll-obj\_chadd.obj +
dll-obj\_chgattr.obj +
dll-obj\_chins.obj +
dll-obj\_ckbiosk.obj +
dll-obj\_clrscr.obj +
dll-obj\_clrupda.obj +
dll-obj\_findwin.obj +
dll-obj\_fixcurs.obj +
dll-obj\_gbiosky.obj +
dll-obj\_gcrspos.obj +
dll-obj\_gcurcol.obj +
dll-obj\_gcurrow.obj +
dll-obj\_getattr.obj +
dll-obj\_getcbrk.obj +
dll-obj\_getcols.obj +
dll-obj\_getcrsr.obj +
dll-obj\_getfont.obj +
dll-obj\_getrows.obj +
dll-obj\_getscrn.obj +
dll-obj\_gotoxy.obj +
dll-obj\_inswin.obj +
dll-obj\_makenew.obj +
dll-obj\_newline.obj +
dll-obj\_print.obj +
dll-obj\_putc.obj +
dll-obj\_putctty.obj +
dll-obj\_queryad.obj +
dll-obj\_rawgetc.obj +
dll-obj\_rmwin.obj +
dll-obj\_sanity.obj +
dll-obj\_scb.obj +
dll-obj\_scrclos.obj +
dll-obj\_scrnmod.obj +
dll-obj\_scroll.obj +
dll-obj\_scropen.obj +
dll-obj\_set8025.obj +
dll-obj\_setcrsr.obj +
dll-obj\_setfont.obj +
dll-obj\_setrows.obj +
dll-obj\_setscrn.obj +
dll-obj\_sgetnl.obj +
dll-obj\_splitpl.obj +
dll-obj\_sysgetc.obj +
dll-obj\_validch.obj +
dll-obj\_xfrmlin.obj +
dll-obj\_vsscanf.obj +
dll-obj\_usleep.obj +
dll-obj\_debug.obj +
dll-obj\_copywin.obj +
dll-obj\_memmove.obj +
/map
dll-obj\baudrate.obj +
dll-obj\beep.obj +
dll-obj\box.obj +
dll-obj\canchang.obj +
dll-obj\cbreak.obj +
dll-obj\clearok.obj +
dll-obj\colorcon.obj +
dll-obj\def_prog.obj +
dll-obj\def_shel.obj +
dll-obj\delay_ou.obj +
dll-obj\delwin.obj +
dll-obj\doupdate.obj +
dll-obj\echo.obj +
dll-obj\endwin.obj +
dll-obj\erasecha.obj +
dll-obj\fixterm.obj +
dll-obj\flash.obj +
dll-obj\flushinp.obj +
dll-obj\gettmode.obj +
dll-obj\getyx.obj +
dll-obj\has_ic.obj +
dll-obj\has_il.obj +
dll-obj\hascolor.obj +
dll-obj\idlok.obj +
dll-obj\initcolo.obj +
dll-obj\initpair.obj +
dll-obj\initscr.obj +
dll-obj\intrflus.obj +
dll-obj\keyname.obj +
dll-obj\keypad.obj +
dll-obj\killchar.obj +
dll-obj\leaveok.obj +
dll-obj\longname.obj +
dll-obj\meta.obj +
dll-obj\mvcur.obj +
dll-obj\mvprintw.obj +
dll-obj\mvscanw.obj +
dll-obj\mvwin.obj +
dll-obj\mvwprint.obj +
dll-obj\mvwscanw.obj +
dll-obj\newpad.obj +
dll-obj\newterm.obj +
dll-obj\newwin.obj +
dll-obj\nl.obj +
dll-obj\nocbreak.obj +
dll-obj\nodelay.obj +
dll-obj\noecho.obj +
dll-obj\noraw.obj +
dll-obj\overlay.obj +
dll-obj\overwrit.obj +
dll-obj\paircont.obj +
dll-obj\pnoutref.obj +
dll-obj\prefresh.obj +
dll-obj\printw.obj +
dll-obj\raw.obj +
dll-obj\refresh.obj +
dll-obj\reset_pr.obj +
dll-obj\reset_sh.obj +
dll-obj\resetter.obj +
dll-obj\resetty.obj +
dll-obj\saveoldt.obj +
dll-obj\saveterm.obj +
dll-obj\savetty.obj +
dll-obj\scanw.obj +
dll-obj\scroll.obj +
dll-obj\scrollok.obj +
dll-obj\set_term.obj +
dll-obj\setscrrg.obj +
dll-obj\standend.obj +
dll-obj\standout.obj +
dll-obj\startcol.obj +
dll-obj\subwin.obj +
dll-obj\touchlin.obj +
dll-obj\touchwin.obj +
dll-obj\typeahea.obj +
dll-obj\unctrl.obj +
dll-obj\ungetch.obj +
dll-obj\waddch.obj +
dll-obj\waddstr.obj +
dll-obj\wattroff.obj +
dll-obj\wattron.obj +
dll-obj\wattrset.obj +
dll-obj\wclear.obj +
dll-obj\wclrtobo.obj +
dll-obj\wclrtoeo.obj +
dll-obj\wdelch.obj +
dll-obj\wdeletel.obj +
dll-obj\werase.obj +
dll-obj\wgetch.obj +
dll-obj\wgetstr.obj +
dll-obj\winch.obj +
dll-obj\winsch.obj +
dll-obj\winsertl.obj +
dll-obj\wmove.obj +
dll-obj\wnoutref.obj +
dll-obj\wprintw.obj +
dll-obj\wrefresh.obj +
dll-obj\wscanw.obj +
dll-obj\wsetscrr.obj +
dll-obj\wstanden.obj +
dll-obj\wstandou.obj +
dll-obj\curs_set.obj +
dll-obj\nonl.obj +
dll-obj\copywin.obj +
dll-obj\traceon.obj +
dll-obj\traceoff.obj +
dll-obj\border.obj +
dll-obj\breakcha.obj +
dll-obj\cursoff.obj +
dll-obj\curson.obj +
dll-obj\mvwinser.obj +
dll-obj\rawout.obj +
dll-obj\resize.obj +
dll-obj\resizew.obj +
dll-obj\tabsize.obj +
dll-obj\waddraws.obj +
dll-obj\wborder.obj +
dll-obj\winprint.obj +
dll-obj\wordchar.obj +
dll-obj\wtabsize.obj +
dll-obj\_addtail.obj +
dll-obj\_addwin.obj +
dll-obj\_backchr.obj +
dll-obj\_cattr.obj +
dll-obj\_chadd.obj +
dll-obj\_chgattr.obj +
dll-obj\_chins.obj +
dll-obj\_ckbiosk.obj +
dll-obj\_clrscr.obj +
dll-obj\_clrupda.obj +
dll-obj\_findwin.obj +
dll-obj\_fixcurs.obj +
dll-obj\_gbiosky.obj +
dll-obj\_gcrspos.obj +
dll-obj\_gcurcol.obj +
dll-obj\_gcurrow.obj +
dll-obj\_getattr.obj +
dll-obj\_getcbrk.obj +
dll-obj\_getcols.obj +
dll-obj\_getcrsr.obj +
dll-obj\_getfont.obj +
dll-obj\_getrows.obj +
dll-obj\_getscrn.obj +
dll-obj\_gotoxy.obj +
dll-obj\_inswin.obj +
dll-obj\_makenew.obj +
dll-obj\_newline.obj +
dll-obj\_print.obj +
dll-obj\_putc.obj +
dll-obj\_putctty.obj +
dll-obj\_queryad.obj +
dll-obj\_rawgetc.obj +
dll-obj\_rmwin.obj +
dll-obj\_sanity.obj +
dll-obj\_scb.obj +
dll-obj\_scrclos.obj +
dll-obj\_scrnmod.obj +
dll-obj\_scroll.obj +
dll-obj\_scropen.obj +
dll-obj\_set8025.obj +
dll-obj\_setcrsr.obj +
dll-obj\_setfont.obj +
dll-obj\_setrows.obj +
dll-obj\_setscrn.obj +
dll-obj\_sgetnl.obj +
dll-obj\_splitpl.obj +
dll-obj\_sysgetc.obj +
dll-obj\_validch.obj +
dll-obj\_xfrmlin.obj +
dll-obj\_vsscanf.obj +
dll-obj\_usleep.obj +
dll-obj\_debug.obj +
dll-obj\_copywin.obj +
dll-obj\_memmove.obj +
/map

View File

@@ -1,47 +1,47 @@
+addch.obj
+addchstr.obj
+addstr.obj
+attr.obj
+beep.obj
+bkgd.obj
+border.obj
+clear.obj
+color.obj
+delch.obj
+deleteln.obj
+getch.obj
+getstr.obj
+getyx.obj
+inch.obj
+inchstr.obj
+initscr.obj
+inopts.obj
+insch.obj
+insstr.obj
+instr.obj
+kernel.obj
+mouse.obj
+move.obj
+outopts.obj
+overlay.obj
+pad.obj
+printw.obj
+refresh.obj
+scanw.obj
+scroll.obj
+slk.obj
+termattr.obj
+terminfo.obj
+touch.obj
+util.obj
+window.obj
+pdcdebug.obj
+pdcdisp.obj
+pdcgetsc.obj
+pdckbd.obj
+pdcprint.obj
+pdcscrn.obj
+pdcsetsc.obj
+pdcutil.obj
+pdcwin.obj
+pdcclip.obj
+addch.obj
+addchstr.obj
+addstr.obj
+attr.obj
+beep.obj
+bkgd.obj
+border.obj
+clear.obj
+color.obj
+delch.obj
+deleteln.obj
+getch.obj
+getstr.obj
+getyx.obj
+inch.obj
+inchstr.obj
+initscr.obj
+inopts.obj
+insch.obj
+insstr.obj
+instr.obj
+kernel.obj
+mouse.obj
+move.obj
+outopts.obj
+overlay.obj
+pad.obj
+printw.obj
+refresh.obj
+scanw.obj
+scroll.obj
+slk.obj
+termattr.obj
+terminfo.obj
+touch.obj
+util.obj
+window.obj
+pdcdebug.obj
+pdcdisp.obj
+pdcgetsc.obj
+pdckbd.obj
+pdcprint.obj
+pdcscrn.obj
+pdcsetsc.obj
+pdcutil.obj
+pdcwin.obj
+pdcclip.obj

View File

@@ -1,381 +1,381 @@
################################################################################
#
# Watcom WMAKE Makefile for PDCurses library - OS/2 Watcom C/C++ 10.6
#
# Usage: wmake -f [path\]wccos2.mak [DEBUG=Y] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CCINCDIR =k:\h
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\os2
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = wcc386
TARGET=os2v2
!ifeq DEBUG Y
CFLAGS = /d2 /DPDCDEBUG
LDFLAGS = DEBUG
!else
CFLAGS = /oneatx
LDFLAGS =
!endif
CPPFLAGS = /i=$(PDCURSES_HOME) /i=$(CCINCDIR)
CCFLAGS = /bt=$(TARGET) /zq /mf $(CFLAGS) $(CPPFLAGS)
LINK = wlink
LIBEXE = wlib /q /n
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = &
addch.obj &
addchstr.obj &
addstr.obj &
attr.obj &
beep.obj &
bkgd.obj &
border.obj &
clear.obj &
color.obj &
delch.obj &
deleteln.obj &
getch.obj &
getstr.obj &
getyx.obj &
inch.obj &
inchstr.obj &
initscr.obj &
inopts.obj &
insch.obj &
insstr.obj &
instr.obj &
kernel.obj &
mouse.obj &
move.obj &
outopts.obj &
overlay.obj &
pad.obj &
printw.obj &
refresh.obj &
scanw.obj &
scroll.obj &
slk.obj &
termattr.obj &
terminfo.obj &
touch.obj &
util.obj &
window.obj
PDCOBJS = &
pdcclip.obj &
pdcdebug.obj &
pdcdisp.obj &
pdcgetsc.obj &
pdckbd.obj &
pdcprint.obj &
pdcscrn.obj &
pdcsetsc.obj &
pdcutil.obj &
pdcwin.obj
PANOBJS = &
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\wccos2.lrf
panel.lib : $(PANOBJS)
echo +$(PANOBJS) > lib.rsp
$(LIBEXE) $@ @lib.rsp
del lib.rsp
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) /fo=$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name firework.exe >> demos.lnk
echo file firework.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
newdemo.exe: newdemo.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name newdemo.exe >> demos.lnk
echo file newdemo.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name ptest.exe >> demos.lnk
echo file ptest.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
echo library $(LIBPANEL) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
testcurs.exe: testcurs.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name testcurs.exe >> demos.lnk
echo file testcurs.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name tuidemo.exe >> demos.lnk
echo file tuidemo.obj >> demos.lnk
echo file tui.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
xmas.exe: xmas.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name xmas.exe >> demos.lnk
echo file xmas.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Watcom C++ OS/2 PDC$(VER)_WCC_OS2.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Watcom C/C++ 10.6 for OS/2. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)_wcc_os2 *.*
cd ..
################################################################################
#
# Watcom WMAKE Makefile for PDCurses library - OS/2 Watcom C/C++ 10.6
#
# Usage: wmake -f [path\]wccos2.mak [DEBUG=Y] [target]
#
# where target can be any of:
# [all|demos|pdcurses.lib|panel.lib|testcurs.exe...]
#
################################################################################
#
# Change these for your environment...
#
################################################################################
PDCURSES_HOME =c:\curses
CCINCDIR =k:\h
################################################################################
# Nothing below here should required changing.
################################################################################
VER=24
VERDOT=2.4
PDCURSES_CURSES_H =$(PDCURSES_HOME)\curses.h
PDCURSES_CURSPRIV_H =$(PDCURSES_HOME)\curspriv.h
PDCURSES_HEADERS =$(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
PANEL_HEADER =$(PDCURSES_HOME)\panel.h
srcdir = $(PDCURSES_HOME)\pdcurses
osdir = $(PDCURSES_HOME)\os2
pandir = $(PDCURSES_HOME)\panel
demodir = $(PDCURSES_HOME)\demos
CC = wcc386
TARGET=os2v2
!ifeq DEBUG Y
CFLAGS = /d2 /DPDCDEBUG
LDFLAGS = DEBUG
!else
CFLAGS = /oneatx
LDFLAGS =
!endif
CPPFLAGS = /i=$(PDCURSES_HOME) /i=$(CCINCDIR)
CCFLAGS = /bt=$(TARGET) /zq /mf $(CFLAGS) $(CPPFLAGS)
LINK = wlink
LIBEXE = wlib /q /n
LIBCURSES = pdcurses.lib
LIBPANEL = panel.lib
PDCLIBS = $(LIBCURSES) $(LIBPANEL)
DEMOS =testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe
################################################################################
all: $(PDCLIBS) $(DEMOS)
clean:
-del *.obj
-del curses.lib
-del panel.lib
-del *.exe
demos: $(DEMOS)
#------------------------------------------------------------------------
LIBOBJS = &
addch.obj &
addchstr.obj &
addstr.obj &
attr.obj &
beep.obj &
bkgd.obj &
border.obj &
clear.obj &
color.obj &
delch.obj &
deleteln.obj &
getch.obj &
getstr.obj &
getyx.obj &
inch.obj &
inchstr.obj &
initscr.obj &
inopts.obj &
insch.obj &
insstr.obj &
instr.obj &
kernel.obj &
mouse.obj &
move.obj &
outopts.obj &
overlay.obj &
pad.obj &
printw.obj &
refresh.obj &
scanw.obj &
scroll.obj &
slk.obj &
termattr.obj &
terminfo.obj &
touch.obj &
util.obj &
window.obj
PDCOBJS = &
pdcclip.obj &
pdcdebug.obj &
pdcdisp.obj &
pdcgetsc.obj &
pdckbd.obj &
pdcprint.obj &
pdcscrn.obj &
pdcsetsc.obj &
pdcutil.obj &
pdcwin.obj
PANOBJS = &
panel.obj
pdcurses.lib : $(LIBOBJS) $(PDCOBJS)
$(LIBEXE) $@ @$(osdir)\wccos2.lrf
panel.lib : $(PANOBJS)
echo +$(PANOBJS) > lib.rsp
$(LIBEXE) $@ @lib.rsp
del lib.rsp
addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addch.c
addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addchstr.c
addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\addstr.c
attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\attr.c
beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\beep.c
bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\bkgd.c
border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\border.c
clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\clear.c
color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\color.c
delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\delch.c
deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\deleteln.c
getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getch.c
getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getstr.c
getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\getyx.c
inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inch.c
inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inchstr.c
initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\initscr.c
inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\inopts.c
insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insch.c
insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\insstr.c
instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\instr.c
kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\kernel.c
mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\mouse.c
move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\move.c
outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\outopts.c
overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\overlay.c
pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pad.c
printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\printw.c
refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\refresh.c
scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scanw.c
scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\scroll.c
slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\slk.c
termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\termattr.c
terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\terminfo.c
touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\touch.c
util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\util.c
window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\window.c
pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcclip.c
pdcdebug.obj: $(srcdir)\pdcdebug.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcdebug.c
pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcdisp.c
pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcgetsc.c
pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdckbd.c
pdcprint.obj: $(osdir)\pdcprint.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcprint.c
pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcscrn.c
pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(osdir)\pdcsetsc.c
pdcutil.obj: $(srcdir)\pdcutil.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcutil.c
pdcwin.obj: $(srcdir)\pdcwin.c $(PDCURSES_HEADERS)
$(CC) $(CCFLAGS) /fo=$@ $(srcdir)\pdcwin.c
#------------------------------------------------------------------------
panel.obj: $(pandir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
$(CC) $(CCFLAGS) /fo=$@ $(pandir)\panel.c
#------------------------------------------------------------------------
firework.exe: firework.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name firework.exe >> demos.lnk
echo file firework.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
newdemo.exe: newdemo.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name newdemo.exe >> demos.lnk
echo file newdemo.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
ptest.exe: ptest.obj $(LIBCURSES) $(LIBPANEL)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name ptest.exe >> demos.lnk
echo file ptest.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
echo library $(LIBPANEL) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
testcurs.exe: testcurs.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name testcurs.exe >> demos.lnk
echo file testcurs.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name tuidemo.exe >> demos.lnk
echo file tuidemo.obj >> demos.lnk
echo file tui.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
xmas.exe: xmas.obj $(LIBCURSES)
echo option quiet > demos.lnk
echo system $(TARGET) >> demos.lnk
echo name xmas.exe >> demos.lnk
echo file xmas.obj >> demos.lnk
echo library $(LIBCURSES) >> demos.lnk
$(LINK) $(LDFLAGS) @demos.lnk
del demos.lnk
firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\firework.c
newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\newdemo.c
ptest.obj: $(demodir)\ptest.c $(PDCURSES_HOME)\panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\ptest.c
testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\testcurs.c
tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tui.c
tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -I$(demodir) /fo=$@ $(demodir)\tuidemo.c
xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) /fo=$@ $(demodir)\xmas.c
dist: pdcurses.lib panel.lib
-mkdir tmp
cd tmp
copy $(PDCURSES_HOME)\README README
copy $(PDCURSES_HOME)\readme.?? .
copy $(PDCURSES_HOME)\curses.h .
copy $(PDCURSES_HOME)\curspriv.h .
copy $(PDCURSES_HOME)\maintain.er .
copy ..\pdcurses.lib .
copy ..\panel.lib .
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ > file_id.diz
echo PDCurses - Public Domain Curses >> file_id.diz
echo Version $(VERDOT) for Watcom C++ OS/2 PDC$(VER)_WCC_OS2.ZIP >> file_id.diz
echo ------------------------------------------ >> file_id.diz
echo Public Domain Curses library for >> file_id.diz
echo Watcom C/C++ 10.6 for OS/2. >> file_id.diz
echo Source available in PDCURS$(VER).ZIP >> file_id.diz
echo Public Domain. >> file_id.diz
echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ >> file_id.diz
zip pdc$(VER)_wcc_os2 *.*
cd ..

164
panel.h
View File

@@ -1,82 +1,82 @@
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
/*
$Id
*/
/*
*----------------------------------------------------------------------
* Panels for PDCurses
*----------------------------------------------------------------------
*/
#include <curses.h>
typedef struct panelobs
{
struct panelobs *above;
struct panel *pan;
} PANELOBS;
typedef struct panel
{
WINDOW *win;
int wstarty;
int wendy;
int wstartx;
int wendx;
struct panel *below;
struct panel *above;
char *user;
struct panelobs *obscure;
} PANEL;
#ifdef HAVE_PROTO
WINDOW *panel_window(PANEL *pan);
void update_panels(void );
int hide_panel(PANEL *pan);
int show_panel(PANEL *pan);
int del_panel(PANEL *pan);
int top_panel(PANEL *pan);
int bottom_panel(PANEL *pan);
PANEL *new_panel(WINDOW *win);
PANEL *panel_above(PANEL *pan);
PANEL *panel_below(PANEL *pan);
int set_panel_userptr(PANEL *pan,char *uptr);
char *panel_userptr(PANEL *pan);
int move_panel(PANEL *pan,int starty,int startx);
int replace_panel(PANEL *pan,WINDOW *win);
#else
WINDOW *panel_window( /* PANEL *pan */ );
void update_panels( /* void */ );
int hide_panel( /* PANEL *pan */ );
int show_panel( /* PANEL *pan */ );
int del_panel( /* PANEL *pan */ );
int top_panel( /* PANEL *pan */ );
int bottom_panel( /* PANEL *pan */ );
PANEL *new_panel( /* WINDOW *win */ );
PANEL *panel_above( /* PANEL *pan */ );
PANEL *panel_below( /* PANEL *pan */ );
int set_panel_userptr( /* PANEL *pan,char *uptr */ );
char *panel_userptr( /* PANEL *pan */ );
int move_panel( /* PANEL *pan,int starty,int startx */ );
int replace_panel( /* PANEL *pan,WINDOW *win */ );
#endif
/* end of panel.h */
/*
***************************************************************************
* This file comprises part of PDCurses. PDCurses is Public Domain software.
* You may use this code for whatever purposes you desire. This software
* is provided AS IS with NO WARRANTY whatsoever.
* Should this software be used in another application, an acknowledgement
* that PDCurses code is used would be appreciated, but is not mandatory.
*
* Any changes which you make to this software which may improve or enhance
* it, should be forwarded to the current maintainer for the benefit of
* other users.
*
* The only restriction placed on this code is that no distribution of
* modified PDCurses code be made under the PDCurses name, by anyone
* other than the current maintainer.
*
* See the file maintain.er for details of the current maintainer.
***************************************************************************
*/
/*
$Id
*/
/*
*----------------------------------------------------------------------
* Panels for PDCurses
*----------------------------------------------------------------------
*/
#include <curses.h>
typedef struct panelobs
{
struct panelobs *above;
struct panel *pan;
} PANELOBS;
typedef struct panel
{
WINDOW *win;
int wstarty;
int wendy;
int wstartx;
int wendx;
struct panel *below;
struct panel *above;
char *user;
struct panelobs *obscure;
} PANEL;
#ifdef HAVE_PROTO
WINDOW *panel_window(PANEL *pan);
void update_panels(void );
int hide_panel(PANEL *pan);
int show_panel(PANEL *pan);
int del_panel(PANEL *pan);
int top_panel(PANEL *pan);
int bottom_panel(PANEL *pan);
PANEL *new_panel(WINDOW *win);
PANEL *panel_above(PANEL *pan);
PANEL *panel_below(PANEL *pan);
int set_panel_userptr(PANEL *pan,char *uptr);
char *panel_userptr(PANEL *pan);
int move_panel(PANEL *pan,int starty,int startx);
int replace_panel(PANEL *pan,WINDOW *win);
#else
WINDOW *panel_window( /* PANEL *pan */ );
void update_panels( /* void */ );
int hide_panel( /* PANEL *pan */ );
int show_panel( /* PANEL *pan */ );
int del_panel( /* PANEL *pan */ );
int top_panel( /* PANEL *pan */ );
int bottom_panel( /* PANEL *pan */ );
PANEL *new_panel( /* WINDOW *win */ );
PANEL *panel_above( /* PANEL *pan */ );
PANEL *panel_below( /* PANEL *pan */ );
int set_panel_userptr( /* PANEL *pan,char *uptr */ );
char *panel_userptr( /* PANEL *pan */ );
int move_panel( /* PANEL *pan,int starty,int startx */ );
int replace_panel( /* PANEL *pan,WINDOW *win */ );
#endif
/* end of panel.h */

View File

@@ -1,68 +1,68 @@
# Makefile for XCurses library
#
# The variable 'srcdir' refers to the source-distribution, and can be set with
# the configure script by "--srcdir=DIR".
#
SHELL = /bin/sh
THIS = Makefile
@SET_MAKE@
srcdir = @srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
libdir = $(exec_prefix)
includedir = @includedir@
PDCURSES_HOME =$(srcdir)/..
PDCURSES_CURSES_H =$(PDCURSES_HOME)/curses.h
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
LN_S = @LN_S@
CC = @CC@
CFLAGS = @CFLAGS@
INCDIR = $(srcdir)
CPPFLAGS = -I$(INCDIR) -I$(srcdir)/.. -I.. @DEFS@ -DXCURSES @SYS_DEFS@
CCFLAGS = -c $(CFLAGS) $(CPPFLAGS) @MH_XINC_DIR@
LINK = $(CC)
LDFLAGS = @LDFLAGS@ @LIBS@
RANLIB = @RANLIB@
LIBRARIES = libpanel.a
################################################################################
all : $(LIBRARIES)
install :
echo Does nothing at the moment
clean :
-rm -rf *.o trace $(LIBRARIES)
distclean: clean
-rm -f Makefile
mostlyclean: clean
realclean: distclean
#------------------------------------------------------------------------
OBJS = \
panel.o
libpanel.a : $(OBJS)
ar rv $@ $?
$(RANLIB) $@
panel.o: $(srcdir)/panel.c $(PDCURSES_HOME)/panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o $@ $(srcdir)/panel.c
# Makefile for XCurses library
#
# The variable 'srcdir' refers to the source-distribution, and can be set with
# the configure script by "--srcdir=DIR".
#
SHELL = /bin/sh
THIS = Makefile
@SET_MAKE@
srcdir = @srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
libdir = $(exec_prefix)
includedir = @includedir@
PDCURSES_HOME =$(srcdir)/..
PDCURSES_CURSES_H =$(PDCURSES_HOME)/curses.h
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
LN_S = @LN_S@
CC = @CC@
CFLAGS = @CFLAGS@
INCDIR = $(srcdir)
CPPFLAGS = -I$(INCDIR) -I$(srcdir)/.. -I.. @DEFS@ -DXCURSES @SYS_DEFS@
CCFLAGS = -c $(CFLAGS) $(CPPFLAGS) @MH_XINC_DIR@
LINK = $(CC)
LDFLAGS = @LDFLAGS@ @LIBS@
RANLIB = @RANLIB@
LIBRARIES = libpanel.a
################################################################################
all : $(LIBRARIES)
install :
echo Does nothing at the moment
clean :
-rm -rf *.o trace $(LIBRARIES)
distclean: clean
-rm -f Makefile
mostlyclean: clean
realclean: distclean
#------------------------------------------------------------------------
OBJS = \
panel.o
libpanel.a : $(OBJS)
ar rv $@ $?
$(RANLIB) $@
panel.o: $(srcdir)/panel.c $(PDCURSES_HOME)/panel.h $(PDCURSES_CURSES_H)
$(CC) $(CCFLAGS) -o $@ $(srcdir)/panel.c

View File

@@ -1,19 +1,19 @@
Welcome to PDCurses
Contents
--------
This directory contains source code for a panels library.
Distribution Status
-------------------
The files in this directory are released to the Public Domain.
Acknowlegements
---------------
This panles library was provided by Warren Tucker N4HGF
{gatech,emory}!n4hgf!wht -or- wht@n4hgf.Mt-Park.GA.US
Welcome to PDCurses
Contents
--------
This directory contains source code for a panels library.
Distribution Status
-------------------
The files in this directory are released to the Public Domain.
Acknowlegements
---------------
This panles library was provided by Warren Tucker N4HGF
{gatech,emory}!n4hgf!wht -or- wht@n4hgf.Mt-Park.GA.US

File diff suppressed because it is too large Load Diff