Mon Mar 28 15:31:17 1994  A. Joseph Koshy  (koshy@orthanc)

	* Imakefile: Changed the library version number to "1.00" for the
	Q5 load.

Sat Mar 26 16:40:46 1994  A. Joseph Koshy  (koshy@orthanc)

	* README.mach: updated to contain information about
	"ULTRA_VIRTUAL_DISPLAY".  This was done by Kumar Talluri.

	* m_smblt.code (SM_BITBLT_NAME): Fixed spurious check for
	destination parameters in function.  This was done by Kumar Talluri.

	* m_bitblt.c (mach_memory_to_screen_bitblt): Fixed spurious check
	for destination parameters in function.  This was done by Kumar Talluri.

	* m_gs.c: fixed typos in comments that were noticed.

	* m_fill.c (mach_fill_rectangle_compat_other): Fixed typo that was
	causing stippled rectangles in BC mode to not be drawn.  

Wed Mar  9 13:29:48 1994  A. Joseph Koshy  (koshy@orthanc)

	* mach.c: Added call to mach__vt_switch_out__() from
	mach_restore_screen() to switch off the cursor when exiting from
	the server.


Tue Mar  8 10:34:14 1994  A. Joseph Koshy  (koshy@orthanc)

	* m_colormap.c (mach_colormap__initialize__): we now check for the
	DAC's programmability when assigning to the set_color_method_p
	pointer.  This allows support for 16 bit mode.
	(MACH_IS_DAC_PROGRAMMABLE): New macro added which checks that the
	DAC is in 4/8 bit mode.
	(mach_colormap_get_colormap_truecolor): Added this function to
	handle truecolor modes.

	* m_cursor.c (mach_cursor__initialize__): Removed check for 16/24
	bit color cursors not being supported.
	(MACH_CURSOR_SET_CURSOR_COLOR): Added code to handle 16 and 24 bit
	cursors.

Tue Mar  1 16:40:08 1994  A. Joseph Koshy  (koshy@orthanc)

	* mach.c (mach_print_initialization_failure_message): Changed typo
	in argument of message when the board cannot be initialized to a
	hi-res mode.  We now print the displayed resolution, not the
	virtual resolution.
	(mach32_set_registers): we use the screen_physical_width instead
	of config_p->{disp,virt}_w.

	(mach_initialize_display_library): screen_physical_width is now
	the max of 1024, virt_w, disp_w.

Mon Feb 28 11:19:07 1994  A. Joseph Koshy  (koshy@orthanc)

	* README.mach: Removed arc options and updated the file from
	"m_opt.gen".  Added section on virtual resolutions and included
	information on controlling the ULTRA (LFB) display library.

	* m_opt.gen: Removed arc options.  Cleaned up file.

Thu Feb 24 12:32:36 1994  A. Joseph Koshy  (koshy@orthanc)

	* global.h (MACH_COULD_NOT_FIND_ATI_CHIPSET_MESSAGE): Fixed typo
	in message.
	(DEFAULT_OPTION_CANNOT_OPEN_FILE_ARGUMENT_MESSAGE): Fixed typo.
	(MACH_NO_HARDWARE_CURSOR_FOR_16_24_BIT_MODES_MESSAGE): Fixed typo.

	* mach.c (mach_initialize_display_library): added code to allow
	the user specified chipset revision to override that detected by
	the mach_detect_ati() routine.

	* m_opt.gen: Changed the type of option 'chipset-revision' to
	string. 

	* mach.c (mach_initialize_display_library): we now skip checks for
	the presence of the ATI ROM etc if the chipset name is specified
	by the user.

Tue Feb 22 16:34:11 1994  A. Joseph Koshy  (koshy@orthanc)

	* global.h (MACH_BIOS_SIGNATURE_MISMATCH_MESSAGE): fixed a typo in
	the message (missing '"').  Added a new line.
	(DEFAULT_CHIPSET_DETECTION_FAILURE_MESSAGE): removed the use of
	CHIPSET_NAME in this message.

Mon Feb 21 16:42:48 1994  A. Joseph Koshy  (koshy@orthanc)

	* m_line.c (mach_line_rectangle_one_bit): Changed to use the
	BRES_COUNT/LINEDRAW_OPT mode of line drawing.

Sat Feb 19 14:34:38 1994  A. Joseph Koshy  (koshy@orthanc)

	* global.h (MACH_VERBOSE_STARTUP_BOARD_CONFIGURATION_MESSAGE): 
	Bug in verbose startup format string which was printing the asic
	revision in decimal instead of as a character.

Fri Feb 18 06:58:10 1994  Joseph Koshy  (koshy@omni)

	* m_gs.c (mach_graphics_state_download_tile):  Fixed offscreen
	memory leak in the downloading of tiles.  Added a check for
	allowing reuse of areas that are large than a heuristic.
	(mach_graphics_state_download_stipple):  Fixed offscreen
	memory leak in the downloading of stipples.  Added a check for
	allowing reuse of areas that are large than a heuristic.

Wed Feb 16 00:14:21 1994  Joseph Koshy  (koshy@omni)

	* m_line.c (mach_line_segment_one_bit_helper): Moved
	`saved_length' variable out of the loop as it was getting
	overwritten every time round.

	* m_gs.c (mach_graphics_state_download_tile): Reordered
	computation of `pixels_per_pattern_register' to within the
	USE_PATT_REGISTER block.
	(mach_graphics_state_download_state): Reordered computation of
	`pixels_per_pattern_register' to within the USE_PATT_REGISTER
	block.
	Added comments about the possibility of SI changing the
	tile/stipple origin between download time and the time of the use
	of the tile or stipple.

	* m_spans.c (mach_fillspans_tile_pattern_registers): Fixed tile
	rotation bug in 4 bit mode.
	(mach_fillspans_stipple_pattern_registers): Fixed stipple rotation
	bug.
	(mach_fillspans_stipple_system_memory): Fixed stipple rotation
	bug.

	* m_fill.c (mach_fill_rectangle_small_tile): Fixed tile rotation
	bug in 4 bit mode.
	(mach_fill_rectangle_small_stipple): Fixed stipple rotation bug.
	(mach_fill_rectangle_stipple_system_memory): Fixed stipple
	rotation bug.

	* m_asmblr.s: Removed commented function in the assembler file.

Mon Feb 14 04:48:25 1994  Joseph Koshy  (koshy@omni)

	* mach.c (mach_initialize_display_library): Typos corrected.  Call
	to stat() replaced with calls to access().  Added close() and
	munmap calls to the bios mapping code when returning with error.

	* m_state.c (mach_state_synchronize_state): corrected typo.

	* m_gs.c (mach_graphics_state__initialize__): added default
	symbols for graphics state count.
	(mach_graphics_state__initialize__): fixed logic bug in check for
	the offscreen widths/heights being a power of two

	* m_state.c (mach_state_switch_to_ati_context): removed DELETE
	blocks from various places.

	* m_points.c (mach_plot_points): added assert for IO error
	checking.
	removed unused macro MACH_POINT_DRAW_COMMAND.

Fri Feb 11 00:16:22 1994  Joseph Koshy  (koshy@omni)

	* m_font.c (mach_font_draw_glyphs): Fixed XTEST bug fix
	XDrawImageString#14, XDrawText#5,37, XDrawString#30,33 (bug in the
	clipping code for terminal fonts).

Thu Feb 10 02:59:07 1994  Joseph Koshy  (koshy@omni)

	* m_font.c (mach_font_download_font): Fixed bug in computation of
	offscreen width in IBM mode fonts.

Wed Feb  9 23:24:24 1994  Joseph Koshy  (koshy@omni)

	* m_font.c (mach_font_download_font): Fixed a potential bug in the
	computation of the IBM mode download area : allocation at the
	boundary of the screen right edge had the possibility of drawing
	out of video memory.  Since the behaviour of the engine in this
	case was not known even though we were setting the clip rectangle
	properly, this change was made.


Tue Feb  8 08:51:39 1994  Joseph Koshy  (koshy@omni)

	* m_arc.c: Removed this module from the compile time list.
	Imakefile: modified to remove m_arc.c

Sun Feb  6 23:09:44 1994  Joseph Koshy  (koshy@omni)

	* m_gs.c (mach_graphics_state_select_state): Now detecting
	redundant calls to the si_select_state entry point, in the SDD.
	This uses the si_state_flags field of the generic graphics state.


Mon Jan 31 02:06:37 1994  Joseph Koshy  (koshy@omni)

	* m_opt.gen: Changed "graphics-engine-loop-timeout-count" default
	value to "20000" to prevent fifo wait resets on 66Mhz machines.
	This problem was reported in bug usl-mach/73 in the gnats
	database.


Sat Jan 29 08:12:28 1994  Joseph Koshy  (koshy@omni)

	* m_arc.c (mach_arc_draw_one_bit_arc): finished the arc drawing
	code.  Turns out that SI needs more rewrite than the MACH library.

	* m_line.c (mach_line_segment_one_bit_helper): Fixed cap-not-last
	bug in the drawing code.  Added a write of the linedraw opt
	register for ibm mode lines too.

Fri Jan 28 07:38:24 1994  Joseph Koshy  (koshy@omni)

	* m_arc.c (mach_arc_draw_one_bit_arc): Added arc caching code to
	the arc module.

Mon Jan 24 01:38:23 1994  Joseph Koshy  (koshy@omni)

	* m_font.c (mach_font_draw_ati_terminal_glyphs): added debug
	printf.
	(mach_font_draw_ati_non_terminal_glyphs): added debug printf.
	(mach_font_draw_ibm_terminal_glyphs): added debug printf.


Fri Jan 21 08:34:59 1994  Joseph Koshy  (koshy@omni)

	* m_gs.c (mach_graphics_state_download_tile): added check to avoid
	freeing un-allocated offscreen areas.
	(mach_graphics_state_download_stipple): added check to avoid
	freeing unallocated offscreen areas.

	* g_omm.c (omm_free): Added check for null pointers in the code.

Mon Jan 17 09:00:04 1994  A. Joseph Koshy  (koshy@orthanc)


	* m_gs.c (mach_graphics_state_offscreen_helper): fixed offscreen
	tile rotation bug and made suitable for large offscreen tiling.

	* m_fill.c (mach_fill_rectangle_tile_offscreen_memory): enabled
	this routine.

	* m_fill.c (mach_fill_rectangle_stipple_offscreen_memory): enabled
	this routine.

Wed Jan 12 13:19:27 1994  A. Joseph Koshy  (koshy@orthanc)

	* m_font.c (mach_font_draw_ati_terminal_glyphs): fixed bug caused
	by not resetting the read mask to the shadow copy.

Tue Jan 11 10:03:45 1994  A. Joseph Koshy  (koshy@orthanc)

	* m_state.c (mach_screen_state): Added a state pointer for arcs.

	* m_opt.gen: Changed the default for `vram-fifo-depth' to be 8
	instead of `-1'.

	* m_state.c (mach_screen_state__initialize__): added two clip
	pointers for arc clipping.

Mon Jan 10 14:25:52 1994  A. Joseph Koshy  (koshy@orthanc)

	* global.h (DEFAULT_MACH_STARTUP_MESSAGE):  changed the ident
	string message to confirm to the standard.

	* m_arc.c : started on the code.

	* mach-release: Created perl script to handle most of the release
	procedure.  This uses AD so there is less chance of us missing
	critical files at release time.

Sat Jan  8 18:11:17 1994  A. Joseph Koshy  (koshy@orthanc)

	* m_line.c (mach_line__gs_change__): Switched off rectangle
	one-bit for large dashed patterns.
	(mach_line_segment_one_bit_dashed): moved isCapNotLast handling to
	the helper function.
	(mach_line_segment_one_bit_solid): moved isCapNotLast handling to
	the helper function.
	(mach_line_segment_one_bit_helper): added flag isCapNotLast and
	added programming for the LINEDRAW_OPT register to this function.

Fri Jan  7 18:39:16 1994  A. Joseph Koshy  (koshy@orthanc)

	* m_line.c (mach_line_segment_one_bit_helper): Added code to do
	IBM mode drawing for horizontal and vertical segments.

Thu Jan  6 07:07:03 1994  Joseph Koshy  (koshy@omni)

	* mach.c (mach_initialize_display_library): Added line to
	initialize the IdentString field of the config structure.

Wed Jan  5 11:20:25 1994  A. Joseph Koshy  (koshy@orthanc)

	* m_font.c (mach_font_draw_ibm_terminal_glyphs): Added assert for
	checking each glyphs planemask.

Tue Jan  4 20:02:59 1994  A. Joseph Koshy  (koshy@orthanc)

	* m_font.c (mach_font_free_font): Fixed memory leak of the
	mach_glyph structures in the IBM mode font code.

Mon Jan  3 13:35:58 1994  A. Joseph Koshy  (koshy@orthanc)

	* mach.c (mach_initialize_display_library): changed the
	verbose_startup option to take yes/no instead of 1/0.

Sat Jan  1 11:17:45 1994  A. Joseph Koshy  (koshy@orthanc)

	* devices/ultra-lfb/lfb.c: First step of folding completed.

	* stdenv.c (boolean_to_dump): made this visible without
	EXTRA_FUNCTIONALITY being defined.

	* global.h, mach.c, m_colormap.c: Moved the call to
	`mach_dac_check_display_mode_feasibility' to inside
	`mach_get_mode'.  This prevents register programming going through
	with dac initialization failing.

Mon Dec 20 13:36:17 1993  A. Joseph Koshy  (koshy@orthanc)

	* m_asmblr.s: Removed RCS history identifiers.

	* stdenv.c: Removed RCS history identifiers.

	* g_regs.c: Removed RCS history identifiers.

	* g_state.c: Removed RCS history identifiers.

	* m_globals.c: Removed RCS history identifiers.

	* m_font.c: Removed RCS history identifiers.

	* m_arc.c: Removed RCS history identifiers.

	* m_regs.c: Removed RCS history identifiers.  Added defines for
	the MISC_OPTIONS register.

	* g_gs.c: Removed RCS history identifiers.

	* m_scanline.c: Removed RCS history identifiers.

	* m_smblt.code: Removed RCS history identifiers.

	* m_bitblt.c: Removed RCS history identifiers.

	* m_fill.c: Removed RCS history identifiers.

	* m_modes.def: Removed RCS history identifiers.  Added 75Hz VESA
	modes for 640x480, 800x600, 1024x768 and 1280x1024.

	* mach.c: Removed RCS history identifiers.  Added support for
	detection of physical memory on board and for printing the same at
	startup time in verbose startup mode.

	* generic.c: Removed RCS history identifiers.

	* m_asm.c: Removed RCS history identifiers.

	* m_debug.c: Removed RCS history identifiers.

	* m_line.c: Removed RCS history identifiers.  Fixed segment bug
	showing up in Wabi/Wintach/Paint in the R4 environment.

	* m_visual.def: Removed RCS history identifiers.

	* m_colormap.c: Removed RCS history identifiers.

	* g_omm.c: Removed RCS history identifiers.

	* m_gs.c: Removed RCS history identifiers.

	* m_points.c: Removed RCS history identifiers.

	* m_cursor.c: Removed RCS history identifiers.

	* m_spans.c: Removed RCS history identifiers.

	* g_colormap.c: Removed RCS history identifiers.

	* m_clocks.def: Removed RCS history identifiers.

	* m_dacs.def: Removed RCS history identifiers.

	* global.h: Removed RCS history identifiers.  Cleaned up verbose
	startup messages, and the pixel clock too high message.  Made the
	startup time search for options identical across the R4 and R5
	servers.

	* m_state.c: Removed RCS history identifiers.  Added a physical
	memory size field in the state structure.  Cleaned up the
	stipple_state comment.

	* m_font.c (MACH_FONT_ATI_RENDER_TERMINAL_GLYPH_FROM_MEMORY): 
	Need to clip for rendering terminal glyphs from memory as the
	glyph padded width is > glyph width, and we are doing opaque
	stippling.

Sat Dec 18 12:41:53 1993  A. Joseph Koshy  (koshy@orthanc)

	* m_modes.def: 800x600 89I uses a 65Mhz clock div 2 not 32.50 Mhz.
	Corrected this.

	Added a display mode for 1280x1024 74Hz generated from Raghavan's
	script.


Fri Dec 17 15:37:40 1993  A. Joseph Koshy  (koshy@orthanc)

	* m_state.c (mach_chipset_kind): Added a DEF macro for chipset
	kinds.

	* mach.c (mach_initialize_display_library): Added new information
	on the chipset and the vram fifo depth to the verbose startup
	messages.

	* m_bitblt.c (mach_ibm_screen_to_screen_bitblt): bug in ibm mode
	screen to screen bitblt.  For right->left and bottom->top blits,
	the coordinates are inclusive unlike ATI blits.o
Fri Dec 10 09:13:49 1993  A. Joseph Koshy  (koshy@orthanc)

	* m_colormap.c (mach_colormap_initialize_static_colormap): fixed
	handling of multiple visuals.  Removed lint errors.

	* m_line.c (mach_line_segment_compat_one_bit_dashed): changed
	printf arguments to remove lint warnings.

	* mach.c (mach_initialize_display_library): moved backward
	compatibility code to devices/ultra.  Added code to look in a
	series of standard places if the chipset level info is NULL.

Wed Nov 24 14:11:21 1993  A. Joseph Koshy  (koshy@orthanc)

	* m_opt.gen: Changed `vt_switch_save_lines' to recognize `-1' to
	mean whole screen.  `0' means don't save any lines.

Mon Nov 22 18:12:26 1993  A. Joseph Koshy  (koshy@orthanc)

	* mach.c (mach32_set_registers): MEM_CNFG and MEM_BNDRY registers
	were not being set from the hardware.  Corrected this.

Sat Nov 20 09:08:22 1993  A. Joseph Koshy  (koshy@orthanc)

	* mach.c (mach_compatibility_init): added code to blank the screen
	on startup.

	* global.h (DEFAULT_OPTION_CANNOT_ZERO_LENGTH_FILE_ARGUMENT_MESSAGE): 
	Added message for zero length option files.

	* genoptions: using allocate_and_clear_memory() to fix file
	parsing bug.  Fixed message for zero length files.

	* mach.c (mach_get_mode): Added check for interlaced modes when
	computing the clock frequency : allows DAC's to come up in
	interlaced modes.

Thu Nov 18 08:56:17 1993  A. Joseph Koshy  (koshy@orthanc)

	* m_font.c (mach_font_download_font): added code to switch to ATI
	mode for downloading.
	added checks to restrict IBM drawing to < 1024 wide modes.

	* m_asm.c (mach_asm_move_screen_bits): added checks for graphics
	engine mode in a ifdef DEBUG section.

	* mach.c (mach_virtual_terminal_save & restore): added swithc to
	ATI mode.

	* makefile (libmach.a): removed use of -lc in link line.

	* mach.c (SET_IOPL): defined the macro if not present in sidep.h.

Wed Nov 17 08:43:05 1993  A. Joseph Koshy  (koshy@orthanc)

	* m_fill.c:
	{clip rectangles} dependencies augmented with the kind of clip
	rectangle used.
	
	* m_font.c (mach_font_draw_ibm_terminal_glyphs): 
	{switching contexts} changed MACH_FONT_SWITCH_TO_XXX_CONTEXT 
	to MACH_STATE_SWITCH_TO_XXX_CONTEXT.

	* mach.c (mach_save_screen_contents): 
	{Changed}

	* global.h (MACH_VERBOSE_STARTUP_BOARD_CONFIGURATION_MESSAGE): 
	{ASIC revision} added support for asic revisions and bios
	revision.

	* mach.c (mach_initialize_display_library): changed call to
	sysi86() to use macro SET_IOPL.

Tue Nov 16 16:39:07 1993  A. Joseph Koshy  (koshy@orthanc)

	* m_opt.gen: 
	{dac-names} Added new names for DAC's

#ident	"@(#)mach:mach/ChangeLog	1.2"

#
# CVS Section
#

$Id: ChangeLog,v 1.6 1994/03/02 08:23:52 koshy Exp $

$Log: ChangeLog,v $
# Revision 1.6  1994/03/02  08:23:52  koshy
# Version 0.18 of the Mach display library.  This version some linedraw bugs,
# and has the changes suggested by the code review folded in.  Some bugs in
# the handling virtual modes have been fixed.
#
# Revision 1.5  1994/02/11  06:17:47  koshy
# Release 0.18 of the MACH display library.  This fixes the text problems
# (corruption in offscreen memory + XTEST bugs), improves GS handling
# performance, and some line segment draw (XTEST) bugs.
#
# Revision 1.4  1994/01/27  05:58:54  koshy
# Intermediate 0.17a stage of the MACH display library.  This basically attempts
# to merge AD based directory manipulation with CVS's source code control.
#
# Revision 1.3  1994/01/26  05:26:31  koshy
# Merge of the source released on Jan 25th by Kumar.
#
# Revision 1.2  1994/01/19  05:39:14  koshy
# Release 0.15 of the mach display library.  This release fixes a tile rotation
# problem, and has tiling of large tiles from offscreen memory enabled.
# The source code was handed over to Kumar on the 17th of Jan.
#
