Versions for 8 BPP

GraphicsConfig.h
#define COLOR_DEPTH	8

SSD1928.h
Comment #error This driver supports 16 BPP only.
COnditions for basic colors definitions
#if(COLOR_DEPTH==16)
...
#elif (COLOR_DEPTH==8)
...
#endif

Versions 220309
(1) Change everything back to 16bpp
(2) Introduction of the following parameters to match Microchip Graphics more closely
	#define DISP_HOR_PULSE_WIDTH		2  
	#define DISP_HOR_BACK_PORCH			66	//adjusted for DISP_HOR_PULSE_WIDTH, subtract 68 by 2, thus 66
	#define DISP_HOR_FRONT_PORCH		20	
	/*********************************************************************
	* Overview: Vertical synchronization timing in lines
	*                  (from the glass datasheet).
	*********************************************************************/
	#define DISP_VER_PULSE_WIDTH		 2
	#define DISP_VER_BACK_PORCH			 16	//adjusted for DISP_VER_PULSE_WIDTH, (18-2)
	#define DISP_VER_FRONT_PORCH	     4
(3) Make use of 
	SetReg(REG_HORIZ_TOTAL_0,	HT/8);
	SetReg(REG_HORIZ_TOTAL_1,	HT%8);
	for flexiblity
(4) Add new setup
	#define HDPS (DISP_HOR_PULSE_WIDTH+DISP_HOR_BACK_PORCH)
	SetRegB(REG_HDP_START_POS0, HDPS&0x00FF);
	SetRegB(REG_HDP_START_POS1, (HDPS>>8)&0x00FF);
(5) Add new setup
	SetRegB(REG_HSYNC_PULSE_WIDTH, DISP_HOR_PULSE_WIDTH-1);
(6) Introduction of 
	#define VT  (DISP_VER_PULSE_WIDTH+DISP_VER_BACK_PORCH+DISP_VER_FRONT_PORCH+DISP_VER_RESOLUTION)
(7) Introduction of 
	#define VDP (DISP_VER_RESOLUTION-1)
	SetReg(REG_VDP0, VDP&0x00FF);
	SetReg(REG_VDP1, (VDP>>8)&0x00FF);	
(8) Introduction of 
	#define VDPS  (DISP_VER_PULSE_WIDTH+DISP_VER_BACK_PORCH)
	SetRegB(REG_VDP_START_POS0, VDPS&0x00FF);
	SetRegB(REG_VDP_START_POS1, (VDPS>>8)&0x00FF);
(9) Introduction of 
	activePage and visualPage under SSD1928.c
	Under SSD1928.h
	#define SetActivePage(page)	_activePage = page
	#define SetVisualPage(page)	_visualPage = page
	*** Under primitive.c, the default function InitGraph() has
	assumed active and visual pages set to '0' for both page parameters
(10) Under SSD1928.h
	 #define PAGE_MEM_SIZE	   ((DWORD)GetMaxX()+1)*(GetMaxY()+1)*COLOR_DEPTH/8

(11) Under SSD1928.c, PutPixel(SHORT x, SHORT y) modified for _activePage
(12) Under GraphicsConfig.h
		//Newly defined for SSD1928, virtual display width and height
		//For Main Window Line Address Offset REG[78h] and REG[79h]
		//Initialization under ResetDevice, ssd1928.c
		//For visual page scroll & pan
		#define USE_VIRTUAL_DISPLAY
		
		#ifdef USE_VIRTUAL_DISPLAY
		#define DISP_VIRTUAL_HOR_RESOLUTION		384	
		#define DISP_VIRTUAL_VER_RESOLUTION		240
		#else
		#define DISP_VIRTUAL_HOR_RESOLUTION		DISP_HOR_RESOLUTION		
		#define DISP_VIRTUAL_VER_RESOLUTION		DISP_VER_RESOLUTION
		#endif
(13) SSD1928.h
		//original Microchip driver uses DISP_VER_RESOLUTION instead
		#if (DISP_ORIENTATION == 90) || (DISP_ORIENTATION == 270)
		#define	GetMaxX() (DISP_VIRTUAL_VER_RESOLUTION-1)
		#elif (DISP_ORIENTATION == 0) || (DISP_ORIENTATION == 180)
		#define	GetMaxX() (DISP_VIRTUAL_HOR_RESOLUTION-1)
		#endif
		//Original Microchip driver uses DISP_HOR_RESOLUTION instead
		#if (DISP_ORIENTATION == 90) || (DISP_ORIENTATION == 270)
		#define	GetMaxY() (DISP_VIRTUAL_HOR_RESOLUTION-1)
		#elif (DISP_ORIENTATION == 0) || (DISP_ORIENTATION == 180)
		#define	GetMaxY() (DISP_VIRTUAL_VER_RESOLUTION-1)
		#endif

(14) Introduced under SSD1928.c and SSD1928.h
		SetPageOrigin(BOOL clipLeftRgn, BOOL clipTopBottom, SHORT x, SHORT y)
		for Screen panning and scrolling.

(15) MainDemo.c modified for demonstration on SetPageOrigin().
		A counter is printed at (10,120) with the following statement
		OutTextXY(10,120,offscreen_Counter);

		when the area of text printing is off-screen.