Jonas Maebe
4ebd215a8c
* changed definition of getscanlineproc to "getscanline(x1,x2,y:
...
integer; var data);" so it can be used by getimage too
* changed getimage so it uses getscanline
* changed floodfill, getscanline16 and definitions in Linux
include files so they use this new format
+ getscanlineVESA256 for 256 color VESA modes (banked)
1999-12-11 23:41:38 +00:00
pierre
54874916af
* SetBkColor like BP by changing Palette entry zero
1999-12-10 12:47:41 +00:00
michael
514f0f9879
+ Additional logging
1999-12-04 21:20:04 +00:00
michael
1eb4bfc435
+ Removed charmessagehandler declaration, it is in graphh.inc
1999-11-30 08:57:46 +00:00
Jonas Maebe
db5cdd7387
* corrected misplacement of call to initvars in initgraph
...
+ some extra debugging commands (for -dlogging) in the mode functions
1999-11-28 16:13:55 +00:00
Jonas Maebe
6ad29d29a6
* _GraphResult is now properly set to grOK by DetectGraph and
...
InitGraph if there are no errors
1999-11-28 12:19:59 +00:00
Jonas Maebe
acabc4c7fa
* fixed VlineVESA256 and re-enabled it in graph.inc
...
* added procedure detectgraph to interface of graph unit
1999-11-27 21:48:00 +00:00
pierre
926f82efc1
* memory corruption within GetImage removed
1999-11-25 17:44:14 +00:00
pierre
2719fb91e8
* PutImage used an integer index that became negative !!!!
...
* Default needed procedure now genrate a RTE 218 instead of a
GPF by call to nil pointer !
1999-11-24 23:42:31 +00:00
florian
1736a7d64d
* extgraph moved to win direcory
1999-11-24 22:12:06 +00:00
florian
254c43d6b7
* the writing of the default font was wrong when doing scaling:
...
the last colunm/row wasn't drawn
1999-11-11 22:29:21 +00:00
florian
3839c77a58
* the size was calculated wrong by imagesize
1999-11-11 17:55:07 +00:00
florian
2c4cddd82d
* better looking font
1999-11-11 14:07:14 +00:00
peter
79d331a978
* fpcmake support
1999-11-08 15:01:38 +00:00
peter
6dac8462c5
* move graph.inc to the target dir
1999-11-08 11:15:21 +00:00
Jonas Maebe
887c7e173b
* fixed pascal version of (direct)putpixelx
1999-11-05 12:18:23 +00:00
florian
707675a501
+ first release of win32 gui support
1999-11-03 20:23:01 +00:00
carl
f7e31f50f6
* Bugfix of mode m800x600x64k - wrong vide mode would be used.
...
+ TP compilable.
1999-10-24 15:51:22 +00:00
carl
3faddeae49
* Bugfix in TP mode SaveStateVESA
1999-10-24 15:50:23 +00:00
carl
28c0ca8f49
+ GetPixVESA16 (not tested yet...)
1999-10-24 03:37:15 +00:00
carl
a3f4314a19
- Removed some old french comments.
...
* Bugfix of problems with register access in noasmmoded
+ GetPixVESA16
1999-10-24 03:34:37 +00:00
carl
ed837de14c
- Removed Hercules mode
...
+ Added VGAMed and VGAhi modes.
1999-10-24 01:55:53 +00:00
Jonas Maebe
d6cb636d80
* fixed clipping for thickwidth lines (bug 659)
...
* fixed the faster internalellipsedefault, but it doesn't plot
all pixels (there are gaps in the ellipses)
1999-10-17 10:20:13 +00:00
Jonas Maebe
0fa97f88ea
* fixed set/getvgargbpalette for VGA 16 color modes
1999-10-08 14:28:18 +00:00
Jonas Maebe
85f0d28bf1
* fix for disposing font data because it can contain #0 chars
1999-09-28 15:07:46 +00:00
Jonas Maebe
03980540bd
* reordered some local variables (first 4 byte vars, then 2 byte vars
...
etc)
* font data is now disposed in exitproc, exitproc is now called
GraphExitProc (was CleanModes) and resides in graph.pp instead of in
modes.inc
1999-09-28 13:56:25 +00:00
peter
85c3b9ff3b
* new graph unit is default for go32v2
...
* removed warnings/notes
1999-09-27 23:34:40 +00:00
Jonas Maebe
de09b385d3
* execute multiplications before divisions in lineclipped to avoid rounding errors
1999-09-27 12:35:27 +00:00
Jonas Maebe
aa5751acbc
* changed name of modeinfo variable to vesamodeinfo and fixed
...
associated errors (fillchar(modeinfo,sizeof(tmodeinfo),#0) instead
of sizeof(TVesamodeinfo) etc)
* changed several sizeof(type) to sizeof(varname) to avoid similar
errors in the future
1999-09-26 13:31:06 +00:00
Jonas Maebe
bd4d132c5b
+ detectgraph
...
* small change to internalellipsedefault so less pixels are
calculated twice
* some small corrections to graph.tex
1999-09-25 11:48:43 +00:00
Jonas Maebe
5f0cf70477
* optimized patternline a bit (always use hline when possible)
...
* isgraphmode stuff cleanup
* vesainfo.modelist now gets disposed in cleanmode instead of in
closegraph (required moving of some declarations from vesa.inc to
new vesah.inc)
* queryadapter gets no longer called from initgraph (is called from
initialization of graph unit)
* bugfix for notput in 32k and 64k vesa modes
* a div replaced by / in fillpoly
1999-09-24 22:52:38 +00:00
Jonas Maebe
3e14491ff2
* floodfill uses scanline data from previous loop if line is adjacent
1999-09-24 14:23:08 +00:00
Jonas Maebe
c8541db634
+ getscanline16
1999-09-24 14:22:38 +00:00
Jonas Maebe
cc0428dcda
* fixed another typo :(
1999-09-24 11:31:38 +00:00
Jonas Maebe
5edf8b5488
* -dlogging no longer required to fuction correctly
...
* some typo's fixed
1999-09-23 14:00:41 +00:00
Jonas Maebe
7e28f32cdc
* changed ratios so font sizes on screen are the same as with TP
...
* SetUserCharSize must also use / instead of DIV
1999-09-22 14:54:11 +00:00
Jonas Maebe
cd377606a4
* changed org_to_cap, org_to_dec and org_to_base to shortints (from
...
Michael Knapp's gxtext unit, part of the GraphiX package)
* in settextstyle, the calculation of the ratios must be done with /,
not DIV!!
1999-09-22 13:30:52 +00:00
Jonas Maebe
47b14faf20
* renamed text.inc -> gtext.inc to avoid conflict with system unit
...
* fixed textwidth
* isgraphmode now gets properly updated, so mode restoring works
again
1999-09-22 13:13:34 +00:00
florian
c9110d73e3
* conflicts solved
1999-09-20 09:34:30 +00:00
Jonas Maebe
4e43bad546
+ hlinevesa256 and vlinevesa256
...
+ support for not/xor/or/andput in vesamodes with 32k/64k colors
* lots of changes to avoid warnings under FPC
1999-09-18 22:21:09 +00:00
Jonas Maebe
34f074549c
* graph.pp: removed pieslice and sector from ToDo list
...
* closegraph: exits now immidiately if isgraphmode = false (caused
RTE 204 with VESA enabled if you set exitproc to call closegraph
and also called closegraph explicitely before exit, like bgidemo)
1999-09-18 16:03:36 +00:00
Jonas Maebe
e188d82aec
* another fix for a case where internalellipsedefault went haywire
...
* sector() and pieslice() fully implemented!
* small change to prevent buffer overflow with floodfill
1999-09-17 13:58:31 +00:00
Jonas Maebe
6ea818a303
* small change to internalellipsedef to be TP compatible
...
* fixed directputpixel for vga 320*200*256
1999-09-15 13:37:50 +00:00
Jonas Maebe
ecd28082fd
* fixed PutPixVESA256
1999-09-15 11:40:30 +00:00
Jonas Maebe
66e28ab9c1
* fixed Arc: internallellipse went into an endless loop if StAngle =
...
EndAngle
* FillEllipse is now much faster: no more floodfill,
InternalEllipseDefault now draws the patternlines immediatety!
1999-09-13 12:49:08 +00:00
Jonas Maebe
062f4e5991
* several changes to internalellipse to make it faster
...
and to make sure it updates the ArcCall correctly
(not yet done for width = 3)
* Arc mostly works now, only sometimes an endless loop, don't know
why
1999-09-12 17:28:59 +00:00
florian
947db5dbe3
* fixed outtext(''), c was a byte, this leads to an underflow and
...
garbage was written
1999-09-12 08:02:22 +00:00
Jonas Maebe
cb55fd4de2
* FloodFill: did not take into account current viewport settings
...
* GetScanLine: only get line inside viewport, data outside of it
is not used anyway
* InternalEllipseDefault: fix for when xradius or yradius = 0 and
increase xradius and yradius always by one (TP does this too)
* fixed conlict in vesa.inc from last update
* some conditionals to avoid range check and overflow errors in
places where it doesn't matter
1999-09-11 19:43:00 +00:00
Jonas Maebe
bee7f62011
* removed and/or/xorput support from vesaputpix256 (not in TP either)
...
* added notput support to directputpix256
1999-08-01 14:51:07 +00:00
Jonas Maebe
51cc22f9c6
* fixed hline16 and vline16 for notput (also TP supports copy, and, or, xor and
...
notput for lines!!)
* fixed directputpixel16 to support all the different put types
1999-08-01 14:50:51 +00:00
florian
49f7b705a6
* bar: y2 can be less y1, fixed
...
* settextstyle: charsize can be 0, must be changed into 1
1999-07-26 09:38:41 +00:00
Jonas Maebe
c023f717f1
+ xor-, and and- orput support for VESA256 modes
...
* compile with -dlogging if you wnt some info to be logged to grlog.txt
1999-07-18 15:07:19 +00:00
florian
ddf0f0389b
* cosmetic changes
1999-07-14 18:18:02 +00:00
florian
0014fa54a3
* HLine16 and VLine16 implemented
1999-07-14 18:16:23 +00:00
Jonas Maebe
a1e0551898
* fixed initialization of bankshift var ('64 shr banshift' instead of shl)
1999-07-14 15:21:49 +00:00
florian
7821e9580a
* small VGA detection problem solved
1999-07-14 14:32:12 +00:00
Jonas Maebe
3f127e3afc
* bugfix in getmodeinfo (SizeOf(TModeInfo) -> SizeOf(TVESAModeInfo))
...
* as the result of the above bugfix, the graph unit doesn't crash
anymore under FPC if compiler with -dsupportVESA, but it doesn't
work yet either...
1999-07-14 13:17:29 +00:00
Jonas Maebe
d6f11f2061
* fixed procvar syntax error and ceil and floor functions
1999-07-12 14:52:52 +00:00
Jonas Maebe
8c70a5f38a
* forgot log tag in previous commit
1999-07-12 13:28:33 +00:00
Jonas Maebe
d045295cd4
+ added Log and Id tags
...
* added first FPC support, only VGA works to some extend for now
* use -dasmgraph to use assembler routines, otherwise Pascal
equivalents are used
* use -dsupportVESA to support VESA (crashes under FPC for now)
* only dispose vesainfo at closegrph if a vesa card was detected
* changed int32 to longint (int32 is not declared under FPC)
* changed the declaration of almost every procedure in graph.inc to
"far;" becquse otherwise you can't assign them to procvars under TP
real mode (but unexplainable "data segnment too large" errors prevent
it from working under real mode anyway)
1999-07-12 13:27:06 +00:00
carl
cedb198a59
* Bugfix of palette setting under VESA (Thanks Tom)
1999-06-26 02:34:07 +00:00
carl
c3929d7354
+ Hardware pages
1999-06-26 02:33:33 +00:00
carl
88c2f7a274
+ Hardware pages for VESA modes
1999-06-26 02:33:16 +00:00
carl
2b0159828c
+ Added support for hardware paging
...
* Bugfix of palrec under FPC
1999-06-26 02:32:30 +00:00
carl
a4c889ced7
+ up to SetUserCharSize added.
1999-06-02 01:50:53 +00:00
carl
b0bdd46ee1
* Bugfixes for RegisterBGIFont which can be called BEFORE
...
InitGraph.
1999-05-30 23:07:59 +00:00
carl
dcc1d5f92b
* RegisterBGIFont would not return a FONT number!
1999-05-30 23:07:14 +00:00
carl
a998ce5455
- I have no idea :(...
1999-05-30 23:06:04 +00:00
carl
a890a867af
+ ImageSize() to Sector() documentation reviewed and updated.
1999-05-30 23:04:50 +00:00
carl
1bca153f22
* getVESAInfo (real mode) would always return TRUE, this would crash
...
windowed VESA modes.
* getVESAInfo (protected mode) would still continue on with
setting up the VESA structure, even if VESA was not
detected!
1999-05-27 01:15:42 +00:00
carl
7fc8c21520
+ Reference for routines: Arc through ImageSize
...
+ Introduction
1999-05-24 13:48:14 +00:00
carl
672beecbc7
+ x86 DOS routines (NOT PART OF OFFICIAL FPC RTL! Test only)
1999-05-24 13:47:22 +00:00
carl
5fbeb2c6dc
+ VESA support (NOT PART OF FPC RTL - test file only!)
1999-05-24 13:46:37 +00:00
carl
26445ed1ce
+ TEST FILE!!! NOT OFFICIALLY PART OF FPC!
...
(Implements DPMI server real mode interrupt)
1999-05-24 13:45:53 +00:00
carl
3ff2cdf4a9
+ Added some color constants
...
+ Added DirectColor support
1999-05-24 13:44:59 +00:00
carl
1f74328581
+ Added checking and exit when in DirectColor mode
1999-05-24 13:44:20 +00:00
carl
0b1a558a5a
+ Added DirectColor support
1999-05-24 13:43:50 +00:00
carl
695a38934e
+ Default RGB color tables
...
* NOTE: The palette routine currently do not work in 24 bpp and
32 bpp modes, and there is currently NO error checking for that!
1999-05-22 21:29:18 +00:00
carl
66da57e934
* EGAxxxx color constants
...
+ SetRGBPalette, GetRGBPalette
1999-05-22 17:13:46 +00:00
carl
a4d8838546
+ SetAllPalette
...
+ SetPalette
+ GetPalette
+ GetDefaultPalette
1999-05-22 17:11:50 +00:00
carl
bd452e05a9
+ Added SetRGBPalette
...
+ Added GetRGBPalette
1999-05-22 17:10:40 +00:00
florian
e905aeea04
* most of the Object Pascal stuff moved to the system unit
1999-05-17 21:52:33 +00:00
carl
93438c3ba4
* Correction of documentation
1999-05-09 23:16:12 +00:00
carl
5ba476e64a
+ More error checking
1999-05-09 23:15:27 +00:00
carl
8e45cea1c3
+ VESA Driver name
1999-05-09 22:24:38 +00:00
carl
040fa666a8
+ SetActivePage
...
+ SetVisualPage
* Some bugfixes
* Experimentation with new method for arc/ellipse
1999-05-05 02:16:40 +00:00
carl
32195301c8
* GetViewSettings was not returning correct values
1999-05-02 21:26:45 +00:00
carl
417eb205d6
* longint -> Integer would not compile.
1999-04-25 02:29:23 +00:00
carl
23c364f842
+ Fully implemented clipping
...
* PatternnLine now calls HLine if the lines to draw are
non-patterned (10-15% speedv improvement)
1999-04-25 02:28:54 +00:00
carl
a6a9da360d
* ClearViewPort was wrong ,and is now 75% faster
...
* Some clipping added by replacing DirectPutPixel -> PutPixel
1999-04-25 00:31:37 +00:00
carl
28f657b4db
* DirectPutPixel -> PutPixel to enable clipping
1999-04-25 00:29:58 +00:00
carl
aa8128e317
+ RestoreCRTMode
...
* GetModeRange returned one mode too much
+ Some cleanup
1999-04-24 18:56:13 +00:00
carl
1a45ac6847
+ Some cleanup
...
* Bugfix of Detect in InitGraph
1999-04-24 18:55:21 +00:00
carl
be5b9b5f6e
+ SetGraphMode()
...
+ InitGraph() is now device independant
+ Mode management and some mode constants
1999-04-23 03:06:35 +00:00
carl
8d2d8a5279
+ Mode management helper routines
1999-04-23 03:05:06 +00:00
carl
3249707b22
+ Initial revision (still uncompilable though)
1999-04-19 02:50:31 +00:00
carl
d4fc7066ab
+ Initial revision (still uncompilable)
1999-04-19 02:49:01 +00:00
carl
b67ce16a85
+ Initial revision (still unworking under FPC)
1999-04-19 02:48:14 +00:00