]> 4ch.mooo.com Git - 16.git/blob - 16/xlib/UPDATES.DOC
c767fee4bb31a4a391bf6c35a4679cceaf4eb138
[16.git] / 16 / xlib / UPDATES.DOC
1 Xlib version 2 modifications\r
2 \r
3 Files modified:\r
4   XLIB.INC\r
5   XMAIN.ASM\r
6   DEMO.C\r
7 \r
8 \r
9 26-09-92 - PRIMARILY JUST ADDED SUPPORT FOR PEL PANNING\r
10 \r
11            Pel panning code added to allow for panning to any pixel\r
12            coordinates.\r
13            Functions affected:\r
14               x_set_splitscreen\r
15                 Split screen pel panning suppression code added.\r
16                 Functionally unchanged.\r
17               x_set_start_addr,x_page_flip\r
18                 Pel panning code added. The x parameter now expects\r
19                 a pixel coordinate where previously a byte coordinate\r
20                 was expected.\r
21 \r
22            Original files modified\r
23            -----------------------\r
24            XLIB.INC\r
25            XMAIN.ASM\r
26            DEMO.C\r
27            Aknowledgements\r
28            ---------------\r
29            Thanks to Robert Schmidt for contributed PEL panning sample\r
30            code and everyone else who responded to my rec.games.programmer\r
31            post.\r
32 \r
33 Xlib version 3 modifications\r
34 \r
35 10-10-92 - BUG ERADICATION AND ADDITION OF NEW MODULES AND MINOR CODE\r
36            EXTENSIONS\r
37 \r
38            MaxScrollX and MaxScrollY were not always set correctly, now\r
39            that's fixed (I Think)\r
40            Added variable "SplitScrnVisibleHeight" needed for above fix.\r
41            Some miscellaneous code changes\r
42            Included XCBITMAP module generously donated by Matthew MacKenzie\r
43            Added support for the LARGE memory model\r
44            Added a make file to simplify compilation\r
45            Library modules now compiled into .LIB files\r
46            Added a documentation file\r
47            Added XBMTOOLS module containing bitmap type conversion\r
48            Added XDETECT module containing hardware detection functions\r
49            Added C header files for all modules\r
50            ADDED XFILEIO module\r
51            ADDED XRLETOOL module\r
52 \r
53            Original files modified\r
54            -----------------------\r
55            XLIB.INC\r
56            XMAIN.ASM\r
57            DEMO.C\r
58            XTEXT.INC\r
59            XTEXT.ASM\r
60 \r
61            Aknowledgements\r
62            ---------------\r
63            Special thanks to Matthew Mackenzie for an excellent module\r
64            and Darren Lyon for putting together a C header file for XLIB.\r
65            Again thanks also to everyone else who supported this software.\r
66 \r
67 Xlib version 4 modifications\r
68 \r
69 \r
70 30-10-92   EXTENSIONS TO XLIB 3 AND BUG FIXES\r
71 \r
72            Files Modified\r
73            --------------\r
74            Assume all have been modified\r
75 \r
76            Modifications/Additions\r
77            ------------------------\r
78            **** Fixed ATI VGA incompatibility problem ****       4\r
79            **** Fixed Large Model problems ***************\r
80            Manual : The ref. manual has been split ito two files for\r
81                     those editors that cannot cope with file > 64k\r
82            XDETECT: added numeric co-pro detection\r
83                     added mouse driver detection\r
84            XMAIN  : added new resolution tweaks\r
85                     added clipping rectangle setting proc and vars\r
86                     further bug fixes (I can't remember exactly what)\r
87            XCBITMAP:Improved performance of compilation and compiled bitmaps\r
88                     and added a function to calculate mem required for\r
89                     a bitmap compilation\r
90            XPBITMAP:Improved performance of planar bitmaps\r
91            XRECT   :Added "x_shift_rect" function\r
92            XPBMTOOL:Added several utility macros\r
93 \r
94            New Modules\r
95            -----------\r
96            XPBMCLIP:Implements clipping versions of functions in XPBITMAP\r
97            XVBITMAP:Video based masked bitmap functions. Contains standard\r
98                     and clipping versions of all functions.\r
99            XMAKEVBM:Support module for XVBITMAP\r
100            XMOUSE  :Basic mouse support module\r
101            XBEZIER :Fast Bezier curves (For scalable fonts etc..)\r
102 \r
103 \r
104 Xlib version 4b modifications\r
105 \r
106 10-12-92   BUG FIX RELEASE\r
107 \r
108            Files Modified\r
109            --------------\r
110 \r
111            XMAIN.*\r
112            XPBMCLIP.*\r
113            XVBMCLIP.*\r
114            XCLIPPBM.*\r
115 \r
116            Modifications/Additions\r
117            ------------------------\r
118            Some minor fixes and modifications in xmain.asm\r
119             fixed the split screen starting scan line problem\r
120 \r
121             This fix is a cludge - Sam Thompson has suggested a more\r
122             elegant fix but I just dont have much time these days\r
123 \r
124             changed mode setting code to allow 320x200 mode to have same\r
125              aspect ratio as mode 13h\r
126 \r
127            The clipped functions were modified to return 1 if the image being\r
128             clipped was completely off the logical screen.\r
129            Minor clipping bugs which gave inconsistent results when clipping\r
130             to the left and right screen borders were fixed in the XPBMCLIP &\r
131             VBMCLIP modules.\r
132            A bug in demo 2 which caused crashing on 486 machines was also\r
133            fixed. (The speed of the 486 resulted in 0 time delay which inturn\r
134             caused a division by zero error)\r
135 \r
136 28-12-92   Modified PEL panning code to be smoother on snail paced PC's\r
137            Added quick & dirty planar bitmap compiler\r
138 \r
139 \r
140 15-2-93    Converted text module to allow variable width user fonts\r
141 \r
142            Added a function x_get_char_width in module xtext\r
143            Added fonts var6x8.fnt varswisl.fnt varswisb.fnt\r
144            Clened up virt screen start address setting code in xmain.asm\r
145 \r
146            Added demo 8 to preview user defined fonts\r
147 \r
148            Added x_wait_vsync in module xmain\r
149 \r
150            Fixed a bug with mode sets on some VGA bios'es that dont\r
151            preserve CX on an int 10h\r
152 \r
153 18-8-93    XLIB05 Final Release\r
154            -----------------------------------------------\r
155 \r
156            GENERAL:\r
157              Added C++ compatability in header files\r
158              Added new fonts \r
159            XDETECT: now can differentiate between 386sx 386dx and 486\r
160              (486sx can be verified by absence of FPU)\r
161            XMOUSE:\r
162              Fixed x_mouse_position bug and general xmouse improvements\r
163              Added x_mouse_window function\r
164            XFILEIO:\r
165              Modified f_read and f_write functions xfileio module\r
166              f_read    - now reads into near buffer reguardless of model\r
167              f_readfar    "    "    "   far    "         "      "    "\r
168              f_write      "  writes "   near   "         "      "    "\r
169              f_writefar   "    "    "   far    "         "      "    "\r
170              Added f_tell function to get file position. I beleive I\r
171              improved the error handling a little but I cant remember\r
172              for sure.\r
173            XMAIN:\r
174              Added 2 new resolutions 256x200 & 256x240.\r
175              I dont know why you'd want them but theyre there if you do.\r
176              These came from Draeden of VLA (Did you write them Ben ?)\r
177              I think they may have originally been posted on R.G.P ???\r
178            XRECT:\r
179              Added x_rect_fill_clipped & x_rect_pattern_clipped, probably\r
180              useless but what the heck!\r
181            XPOLYGON:\r
182              New function x_triangle - a fast clipped and filled trinagle\r
183               function ideal for 3D work.\r
184              x_polygon - a clipped and filled polygon function (convex\r
185                polygons only). This one's not the fastest - it splits\r
186                polygons into component triangles and uses the above\r
187                triangle routine to draw them, but still it should\r
188                perform fast enough for most 3D applications.\r
189            MISCELLANEOUS:\r
190               xdiscuss.zip: Included Robert Schmidt's excellent mode X article\r
191                 for those interested in the hows and why's of Mode X progamming\r
192               xlibtl02.zip: Some bitmap conversion code and a TSR bitmap\r
193                 capture program.\r
194 \r
195 \r
196            Aknowledgements\r
197            ---------------\r
198            Gerald Dalley         - For getting me off my butt and doing\r
199                                    this release.\r
200 \r
201            Steve Dollins         - Never returned my mail asking for\r
202                                    permission to use his code so I\r
203                                    assumed it'd be OK ;)\r
204 \r
205            Christian Harms       - For suggesting xdetect improvements and\r
206                                    promising to make XLIB for T.P. freeware\r
207                                    when its complete. good on ya mate!\r
208 \r
209            Jason Truong          - For spotting the bug in xmouse and\r
210                                    general suggestions for improvements\r
211 \r
212            Chris Kirby           - For suggestion to make .h files C++\r
213                                    compliant\r
214 \r
215            Robert Scmidt         - For his mode X article.\r
216 \r
217            jeremi@ee.ualberta.ca - Thanks for the xtext suggestions\r
218            (name unknown)          even if they didnt make this release\r
219 \r
220            And others whom I may have forgotten.\r
221 \r
222            Also Greetings to my internet pals,\r
223              Mat Mackenzie, Jari Karjala, Draeden, Victor Putz,\r
224              Josh Jensen, Chicken and the rest of you dudes...\r
225              Thanks for helping my productivity live up to\r
226              "Public Servant" standards ;-))\r
227 \r
228 5-10-93\r
229            -----------------------------------------------\r
230            XCBITM32:\r
231              32 bit compiled bitmaps, originally developed by Matthew\r
232              Mackenzie for our game. NOTE: The compiler is written in C -\r
233              conversion to assembler is left as an excersise for the user :-)\r
234            \r
235            XMOUSE: Finished x_mouse_window this time. I had overlooked\r
236               its semi-completed x_mouse_window function in the last release.\r
237 \r
238            XPBITMAP:\r
239               Added x_flip_pbm and x_flip_masked_pbm\r
240               Identical to x_put_pbm and x_put_masked_pbm but have an\r
241               extra parameter which indicates whether the bitmap is flipped\r
242               from left to right as drawn or not - Ideal for saving bitmap\r
243               memory.\r
244 \r
245             XFILL:\r
246               Added a new module containing 2 flood fill variants. Both return\r
247               the number of pixels filled.\r
248 \r
249             XVSYNC:\r
250               New module to synchronise timer 0 to the vertical retrace. This\r
251               allows for smoother animation due to the elimination of\r
252               unnecessary vsync waiting.\r
253 \r
254             XMAIN:\r
255               Modifications to allow standard vsync polling or optional\r
256               timer0/vsync synchronization and new support for tripple\r
257               buffering for super-smooth animation. This stuff's way cool!\r
258 \r
259             BUGS:\r
260               fixed the odd bug here and there - nothing too serious.\r
261 \r
262 \r
263             Aknowledgements:\r
264 \r
265             Tiaan A Geldenhuys - for pointing out that I forgot to finish\r
266              some code in xmouse.asm, for the new cursor shape and stuff.\r
267 \r
268             Thanks to Tore Jahn Bastiansen (toreba@ifi.uio.no) for the\r
269             tripple buffering extensions to XMAIN and the excellent\r
270             Timer vsync sunchronization which is the highlight of this\r
271             release. This module is a "MUST HAVE" if youre going to do\r
272             any animation.\r
273 \r
274             Also thanks to any others, whom I may have lost track of,\r
275             for bug fixes'n stuff.\r
276 \r
277             Apologies to the person who sent me the pbm flipping code.\r