roo_e/thirdparty/grx249/doc/changes.bgi
2022-05-16 17:59:47 -05:00

116 lines
5.5 KiB
Text

******* 2.3 --> 2.3.4
- BCC2GRX is now part of the GRX graphics library.
******* 2.0 --> 2.3
- will use the floodfill() from GRX 2.25 or newer
- Linux: can be compiled as shared library (make SHARED=1 in src/)
- made all functions direct linkable (mostly for GPC support)
- Pascal (GPC) support by Sven Hilscher included
- updated for grx21 (patterns & custom lines)
- No more warnings using LIBBCC.H in C++ programs
******* 1.3 --> 2.0
- new copyright terms, see readme
- compiles with both grx v2.0 and v1.03
- text.c splitted
- added setactivepage(), setvisualpage() and helper func's
set_BGI_mode_pages(int p), get_BGI_mode_pages(),
getactivepage() and getvisualpage() (functional only with
grx v2.0 or newer)
- __gr_Y_page_offs disabled if compiled for grx 1.0x
- restrict RGB values in setrgbpalette() to 0..63
- added extended graphics modes from BC++ 4.5
- few experimental custom line hacks for grx 2.0 (lnestyle.c)
- more work on Makefiles, make in src or test subdir works
- Due to limited stack space with DJGPP v2, complete rewrite
of floodfill() to avoid deep recursions.
- DJGPP: libbcc2.a will work on v1 and v2 systems with grx10, no need
to keep libbccx.a any longer.
- Link test: create dummy executable using all library objects. Nice to
check grx20fix.h settings.
- Optimized makefiles and configuration
- getdrivername() will report GRX driver name with GRX2
- LINUX: saved some getpixel() calls for floodfill() under X11. Remains slow :-(
- LINUX: No need to keep a seperate X11 directory any longer, binaries
are just linked with -lgrx20X -X11 instead of -lgrx20 -lvga
- LINUX: Enhanced Linux support (svgalib && X11)
- rewrote bgi font loading
- libbcc.h won't include GRX stuff any more
- rewrote floodfill(): Will use it's own dumb monochrome
context to keep track of drawn points. Uses less memory but
seems to be a little slower in few cases.
- moved _ega_color, setrgbdefaults() and setrgbgray256() from libbcc?.a
to src/addons.a
- added four new functions getmodemaxcolor(), getmodemaxx(), getmodemaxy()
and setrgbcolor().
- added version check __BCC2GRX__ (equals to 0x21a for v2.1 alpha,
0x20b -> v2.0 beta, 0x230 -> v2.3 offical release, ...)
******* 1.2 --> 1.3 (1.3 didn't made it to public)
- Vector fonts may be plotted using the actual line style.
calling textlinestyle(1) enables and textlinestyle(0) disables
this feature.
- corrected getmodename() TrueColor definition, name of actual
graphics mode valid now, will display 32K/64K/16M instead of
huge numbers
- CGA/MCGA/ATT400 will be emulated by 16 color modes
- EGA64HI sets 16 color mode on non EGA cards
- named source files in a more functional way
- circle() will use GrCircle() in "round" cases
- graphdefaults(), setgraphmode() and initgraph() set up the
correct aspect ratio
- added __gr_ prefix to several library functions called
by other bcc2grx functions. Protects against interference
with other libraries (problem reported by Axel Rohde)
- updated for libgrx 1.03
- should work with .vdr drivers now
- uses GrGetLastArcCoords() instead of global variables
- BLACK changed into constant
- Pascal support improved. KeyPressed and ReadKey will
flush stdout first, updated Readme
- bccbgi now uses random() instead of RANDOM_TP() for correct
support of >32768 colors modes. (Bad news: random() is much slower)
- set_BGI_mode_whc translates 64K and 16M color values into
GRX internals 0xC010 and 0xC018 (grx1.0x only)
- added _ega_color for EGA color emulation in HiColor/TrueColor modes
- Corrected range check in setfillstyle() (bug found by Axel Rohde)
- Corrected bugs/problems reported by Antonio Carlos Moreirao de Queiroz:
- initgraph won't crash if pathtodriver == NULL
- When loading a font failed, DEFAULT_FONT size 1 will be used
- font switching should be faster now
- if a font can't be found, grFontNotFound error will be set.
- Correct name expansion in installuserfont()
******* 1.1 --> 1.2
- installuserfont() accepts GRX font names (name.fnt).
- getmodename() supports modes >32768 colors
- initgraph() has NATIVE_GRX driver entry. NATIVE_GRX supports
the default, biggest (noninterlaced), BGI_mode graphics and all valid
modes from .grn drivers
- set_BGI_mode()/set_BGI_mode_whc() routines to emulate BGI driver resolutions
- floodfill() doesn't uses second context in simple cases (much faster),
leaves viewport if no clipping required
- getmoderange(), getmaxmode() and getpalettesize() will call
__gr_set_up_modes() first -->> returned values are initialized
- closegraph() resets __gr_INIT flag
- cleardevice(), clearviewport(), imagesize(), graphresult(), getmaxcolor(), getgraphmode(), getpixel() and
putpixel() are checking __gr_INIT flag now
- setrgbpalette() check's initgraph(), moved from bccgrx.h -> bccgrx20.c
- drawpoly() always closed the polygon -- fixed.
- registerfarbgifont() now same as registerbgifont()
- setgraphbufsize() returns a defined value
- setwritemode() protects against setting color bits
- detectgraph() returns the correct graphdriver info
- graphdefaults() doesn't call setlinestyle() & setviewport() any more
- bccgrx.c/__gr_set_up_modes() executed once only (fixes memory waste)
******* 1.0 --> 1.1
- initgraph() will set the requested graphmode if graphdriver != DETECT.
- using GrHLineNC and GrPixelNC in bccgrx09.c / _floodfill()
- BCC2GRX should run correct with old style drivers (.grd)
(bccgrx.c/__gr_set_up_modes changed)
- Corrected detectgraph()/initgraph() problem calling Gr... funcs
before GrSetMode()
- Used normal filled / solid line commands where ever possible
- Text direction and justify setting compatible with Borland definition