<root>
<document scada='0' projtype='1' schema='103' license='1,79829088,Q2XNNM' title='MikromediaPic32Plus' description='' fcversion='720898' target='PIC32.32MX.32MX795F512L' >
	<config data='!0,0!20,0!40,0!60,0!80,0!a0,0!c0,3!e0,5!100,1!120,0!140,0!160,3!180,0!1a0,0!1c0,2!1e0,1!200,0!220,3!240,0!260,0!280,3!2a0,0!2c0,ff!2e0,1!300,1%0,0%20,0%40,0%60,0%80,0%a0,0%c0,3%e0,5%100,1%120,0%140,0%160,3%180,0%1a0,0%1c0,2%1e0,1%200,0%220,3%240,0%260,0%280,3%2a0,0%2c0,ff%2e0,1%300,1' clkspd='80000000' simspd='0' usewdt='0' constif='0' Use3V3='1' />
	<plugins >
		<dll_models enabled='1' />
	</plugins>
	<supplement use='0' head='' body='' />
	<debug />
	<traces >
		<trace digital='1' variable='0' displayname='Backlight_On' portdata='33685506' scopetype='1' showtrace='1' autonamed='0' channel='0' ymin='0' ymax='1' ydiv='3' />
	</traces>
	<ghost >
		<FK2 >
			<data name='FK2D0' port='4294967295' pin='4294967295' />
			<data name='FK2D1' port='4294967295' pin='4294967295' />
			<data name='FK2D2' port='4294967295' pin='4294967295' />
			<data name='FK2D3' port='4294967295' pin='4294967295' />
			<data name='FK2D4' port='4294967295' pin='4294967295' />
			<data name='FK2D5' port='4294967295' pin='4294967295' />
			<data name='FK2D6' port='4294967295' pin='4294967295' />
			<data name='FK2D7' port='4294967295' pin='4294967295' />
			<data name='FK2D8' port='4294967295' pin='4294967295' />
			<data name='FK2D9' port='4294967295' pin='4294967295' />
			<data name='FK2D10' port='4294967295' pin='4294967295' />
			<data name='FK2D11' port='4294967295' pin='4294967295' />
			<data name='FK2D12' port='4294967295' pin='4294967295' />
			<data name='FK2D13' port='4294967295' pin='4294967295' />
			<data name='FK2D14' port='4294967295' pin='4294967295' />
			<data name='FK2D15' port='4294967295' pin='4294967295' />
			<data name='FK2A0' port='4294967295' pin='4294967295' />
			<data name='FK2A1' port='4294967295' pin='4294967295' />
			<data name='FK2A2' port='4294967295' pin='4294967295' />
			<data name='FK2A3' port='4294967295' pin='4294967295' />
			<data name='FK2A4' port='4294967295' pin='4294967295' />
			<data name='FK2A5' port='4294967295' pin='4294967295' />
		</FK2>
		<ICD >
			<data name='AnalogPrescaleValue' value='19' />
			<data name='DigitalSampleRate' value='100000' />
			<data name='BreakpointCount' value='8' />
			<data name='CallStackDepthCount' value='8' />
			<data name='ClockPort' value='1' />
			<data name='ClockPin' value='6' />
			<data name='DataPort' value='1' />
			<data name='DataPin' value='7' />
			<data name='UseDefaultPins' value='1' />
			<data name='WrapEnabled' value='1' />
			<data name='CommsDelayOverridden' value='0' />
			<data name='CommsDelay' value='3' />
			<data name='CalculatedCommsDelay' value='3' />
			<data name='AnalogEB2PrescaleValue' value='2' />
			<data name='DigitalEB2SampleRate' value='100000' />
		</ICD>
		<pins >
			<digital A='0' B='0' C='0' D='0' E='0' F='0' G='0' H='0' I='0' J='0' K='0' L='0' M='0' N='0' O='0' P='0' Q='0' R='0' S='0' T='0' U='0' V='0' W='0' X='0' Y='0' Z='0' />
			<analog A='0' B='0' C='0' D='0' E='0' F='0' G='0' H='0' I='0' J='0' K='0' L='0' M='0' N='0' O='0' P='0' Q='0' R='0' S='0' T='0' U='0' V='0' W='0' X='0' Y='0' Z='0' />
		</pins>
	</ghost>
	<components >
		<settings autoimg='1' center='1' unitscale='0' fixedscale='0' fixedx='25' fixedy='25' fixedz='25' headcode='1' />
		<definition guid='48e5d5c7-fc23-443f-acab-a3c4ff3e7362' vstate='40' vmin='0' vmaj='1' srcleaf='SSD1963_Pic32_Component_Modification.fcfx' visiblename='SSD_TEST' description='' category='Displays' category2='Development' category3='' bIs2dOnly='0' bIs3dOnly='0' bIsWysiwyg='0' catenable='1' author='' manuname='' manucode='' sysinfo='779' keywords='' dynamic='1' scadaCompatible='0' embeddedCompatible='1' showmacros='0' iconpath='' />
		<component class_type='root' codename='SSD_TEST' panelId='-1' x='0' y='0' z='0' xsz='1' ysz='1' zsz='1' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='0' poslock='0' ancTop='0' ancBottom='0' ancLeft='0' ancRight='0' ancMinX='0' ancMinY='0' comp2dType='0' macronames='$(type)_$(module)__$(macro)' >
			<resources />
			<properties >
				<property name='Connections' folder='gLCD_SSD1963::#00000014' hidden='0' >
					<property name='DataMode' target='gLCD_SSD1963::DataMode' typeid='16' hidden='0' locked='0' info='Configures how the displays data pins are connected.
Port uses a single port byte allowing for high speed.
Individual pins allow for any combination of pins allowing for flexibility.' filter='000Port 8 Bit
001Port 16 Bit
002Individual 8 Bits
003Individual 16 Bits' />
					<property name='Data 0' target='gLCD_SSD1963::data0' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 1' target='gLCD_SSD1963::data1' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 2' target='gLCD_SSD1963::data2' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 3' target='gLCD_SSD1963::data3' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 4' target='gLCD_SSD1963::data4' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 5' target='gLCD_SSD1963::data5' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 6' target='gLCD_SSD1963::data6' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 7' target='gLCD_SSD1963::data7' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 8' target='gLCD_SSD1963::data8' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 9' target='gLCD_SSD1963::data9' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 10' target='gLCD_SSD1963::data10' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 11' target='gLCD_SSD1963::data11' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 12' target='gLCD_SSD1963::data12' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 13' target='gLCD_SSD1963::data13' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 14' target='gLCD_SSD1963::data14' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data 15' target='gLCD_SSD1963::data15' typeid='5' hidden='0' locked='0' info='Data pin connection' />
					<property name='Data[7:0]' target='gLCD_SSD1963::dataport_low' typeid='19' hidden='1' locked='0' info='Microcontroller port pins to use to pass 8-bit parrallel data to the graphical display' />
					<property name='Data[15:8]' target='gLCD_SSD1963::dataport_high' typeid='19' hidden='1' locked='0' info='Microcontroller port pins to use to pass 8-bit parrallel data to the graphical display' />
					<property name='Write' target='gLCD_SSD1963::write_pin' typeid='5' hidden='0' locked='0' info='Write pin connection
' />
					<property name='Read' target='gLCD_SSD1963::read_pin' typeid='5' hidden='0' locked='0' info='Read pin connection' />
					<property name='Register Select (RS)' target='gLCD_SSD1963::rs_pin' typeid='5' hidden='0' locked='0' info='Instruction / Command pin connection' />
					<property name='Use CS' target='gLCD_SSD1963::UseCS' typeid='7' hidden='0' locked='0' info='Controls if the backlight is controlled using an I/O pin or fixed to be always on by the circuitry.' />
					<property name='Chip Select' target='gLCD_SSD1963::chip_sel_pin' typeid='5' hidden='0' locked='0' info='Chip select pin connection
' />
					<property name='Use Reset' target='gLCD_SSD1963::UseReset' typeid='7' hidden='0' locked='0' info='Controls if the backlight is controlled using an I/O pin or fixed to be always on by the circuitry.' />
					<property name='Reset' target='gLCD_SSD1963::reset_pin' typeid='5' hidden='0' locked='0' info='Reset pin connection' />
					<property name='Use Backlight Pin' target='gLCD_SSD1963::UseBacklight' typeid='7' hidden='0' locked='0' info='Controls if the backlight is controlled using an I/O pin or fixed to be always on by the circuitry.' />
					<property name='Backlight' target='gLCD_SSD1963::led_pin' typeid='5' hidden='1' locked='0' info='Backlight control pin connection' />
					<property name='ESP_OPT' target='gLCD_SSD1963::ESP_OPT' typeid='7' hidden='1' locked='0' info='Controls if the backlight is controlled using an I/O pin or fixed to be always on by the circuitry.' />
				</property>
				<property name='Dimensions' folder='gLCD_SSD1963::#00000006' hidden='0' >
					<property name='Pixel Width' target='gLCD_SSD1963::pixel_width' typeid='14' hidden='0' locked='0' info='Width of gLCD canvas measured in pixels.' />
					<property name='Pixel Height' target='gLCD_SSD1963::pixel_height' typeid='14' hidden='0' locked='0' info='Heigt of gLCD canvas measured in pixels.' />
				</property>
				<property name='Colour' folder='gLCD_SSD1963::#00000009' hidden='0' >
					<property name='Monochrome' target='gLCD_SSD1963::monochrome' typeid='7' hidden='0' locked='1' info='Specifies if the display is capable of colour or monochrome only.' />
					<property name='Foreground Color' target='gLCD_SSD1963::foreground_colour' typeid='1' hidden='0' locked='0' info='Specifies the initial foreground color.' />
					<property name='Background Color' target='gLCD_SSD1963::background_colour' typeid='1' hidden='0' locked='0' info='Specifies the initial background color.' />
					<property name='BGCOL' target='gLCD_SSD1963::BGCOL' typeid='21' hidden='1' locked='0' info='' />
					<property name='FGCOL' target='gLCD_SSD1963::FGCOL' typeid='21' hidden='1' locked='0' info='' />
					<property name='Bit Depth' folder='gLCD_SSD1963::#0000000F' hidden='0' >
						<property name='Colour Bit Depth' target='gLCD_SSD1963::colour_bit_depth' typeid='14' hidden='0' locked='1' info='Total color bit depth for the display.' />
						<property name='Red Bit Depth' target='gLCD_SSD1963::red_bit_depth' typeid='14' hidden='0' locked='1' info='Specifies the red bit depth for the display.' />
						<property name='Green Bit Depth' target='gLCD_SSD1963::green_bit_depth' typeid='14' hidden='0' locked='1' info='Specifies the green bit depth for the display.' />
						<property name='Blue Bit Depth' target='gLCD_SSD1963::blue_bit_depth' typeid='14' hidden='0' locked='1' info='Specifies the blue bit depth for the display.' />
					</property>
				</property>
				<property name='Display Properties' folder='gLCD_SSD1963::property_3' hidden='0' >
					<property name='FlipX' target='gLCD_SSD1963::FlipX' typeid='7' hidden='0' locked='0' info='Flips the horizontal axis ' />
					<property name='FlipY' target='gLCD_SSD1963::FlipY' typeid='7' hidden='0' locked='0' info='Flips the vertical axis ' />
					<property name='TFT Colour  Bits' target='gLCD_SSD1963::ColourWidth' typeid='16' hidden='0' locked='0' info='Sets the colour depth of the display so the SSD1963 controller IC outputs the correct colour sequences.' filter='00018-bit
00124-bit' />
					<property name='OffsetX' target='gLCD_SSD1963::OffX' typeid='21' hidden='0' locked='0' info='Pixel offset on the x axis' />
					<property name='OffsetY' target='gLCD_SSD1963::OffY' typeid='21' hidden='0' locked='0' info='Pixel offset on the y axis' />
				</property>
				<property name='Display Refresh Rate' folder='gLCD_SSD1963::property_2' hidden='0' >
					<property name='PLL Multiplier' target='gLCD_SSD1963::PLLMult' typeid='21' hidden='0' locked='0' info='Controls the refresh rate of the display.
Range 0 - 255' />
					<property name='PLL Divider' target='gLCD_SSD1963::PLLDiv' typeid='21' hidden='0' locked='0' info='Controls the refresh rate of the display.
Range 0 - 15' />
				</property>
				<property name='Fonts' folder='gLCD_SSD1963::Base_GLCD::property_2' hidden='0' >
					<property name='Font Count' target='gLCD_SSD1963::Base_GLCD::FontCount' typeid='16' hidden='0' locked='0' info='Specifies the number of fonts available to use on the display.' filter='0011
0022
0033
0044
0055
0066
0077
0088' />
					<property name='Font 0' folder='gLCD_SSD1963::Base_GLCD::property_3' hidden='0' >
						<property name='Font' target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::Font' typeid='16' hidden='0' locked='0' info='Font picker to decide which font to use on your display.' filter='000Default 8 (Legacy)
001Arial 14
019Arial 24
020Arial 32
021Arial 40
028Arial 48
045Arial 59
046Arial 70
047Arial 80
048Arial 89
055Arial 100
057Arial 119
059Arial 130
061Arial 140
084Arial 150
087Arial 160
002Arial Bold 14
049Arial Bold 24
050Arial Bold 32
051Arial Bold 40
029Arial Bold 47
052Arial Bold 60
053Arial Bold 70
054Arial Bold 80
031Arial Bold 90
056Arial Bold 100
058Arial Bold 120
060Arial Bold 130
083Arial Bold 140
085Arial Bold 150
086Arial Bold 159
003Courier New 9
004Courier New 20
005Courier New 29
006Courier New 40
007Courier New 49
008Courier New 60
009Courier New 69
010Courier New 80
011Courier New 89
012Courier New 100
026Seven Segment 24
027Seven Segment 32
091Seven Segment 40
013Seven Segment 49
014Seven Segment 59
015Seven Segment 70
016Seven Segment 79
017Seven Segment 89
018Seven Segment 100
022Seven Segment 110
023Seven Segment 120
024Seven Segment 130
025Seven Segment 140
030Seven Segment 150
032Seven Segment 160
018Custom
' />
						<property name='Custom Font File' target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::CustomFontFile' typeid='13' hidden='1' locked='0' info='Points to the .c file produced by the dot factory application.' />
						<property name='Bytes Required' target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::BytesRequired' typeid='21' hidden='0' locked='1' info='Number of bytes required in program memory to store the selected font.' />
						<property name='Character Spacing' target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::FontSpace' typeid='21' hidden='0' locked='0' info='Sets the number of blank pixels between each character when printing text.' />
						<property name='Space Width' target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::SpaceWidth' typeid='21' hidden='1' locked='0' info='Sets the number of horizontal pixels used to represent a space character.' />
					</property>
					<property name='Font 1' folder='gLCD_SSD1963::Base_GLCD::property_4' hidden='1' >
						<property name='Font' target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::Font' typeid='16' hidden='0' locked='0' info='Font picker to decide which font to use on your display.' filter='000Default 8 (Legacy)
001Arial 14
019Arial 24
020Arial 32
021Arial 40
028Arial 48
045Arial 59
046Arial 70
047Arial 80
048Arial 89
055Arial 100
057Arial 119
059Arial 130
061Arial 140
084Arial 150
087Arial 160
002Arial Bold 14
049Arial Bold 24
050Arial Bold 32
051Arial Bold 40
029Arial Bold 47
052Arial Bold 60
053Arial Bold 70
054Arial Bold 80
031Arial Bold 90
056Arial Bold 100
058Arial Bold 120
060Arial Bold 130
083Arial Bold 140
085Arial Bold 150
086Arial Bold 159
003Courier New 9
004Courier New 20
005Courier New 29
006Courier New 40
007Courier New 49
008Courier New 60
009Courier New 69
010Courier New 80
011Courier New 89
012Courier New 100
026Seven Segment 24
027Seven Segment 32
091Seven Segment 40
013Seven Segment 49
014Seven Segment 59
015Seven Segment 70
016Seven Segment 79
017Seven Segment 89
018Seven Segment 100
022Seven Segment 110
023Seven Segment 120
024Seven Segment 130
025Seven Segment 140
030Seven Segment 150
032Seven Segment 160
018Custom
' />
						<property name='Custom Font File' target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::CustomFontFile' typeid='13' hidden='1' locked='0' info='Points to the .c file produced by the dot factory application.' />
						<property name='Bytes Required' target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::BytesRequired' typeid='21' hidden='0' locked='1' info='Number of bytes required in program memory to store the selected font.' />
						<property name='Character Spacing' target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::FontSpace' typeid='21' hidden='0' locked='0' info='Sets the number of blank pixels between each character when printing text.' />
						<property name='Space Width' target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::SpaceWidth' typeid='21' hidden='0' locked='0' info='Sets the number of horizontal pixels used to represent a space character.' />
					</property>
					<property name='Font 2' folder='gLCD_SSD1963::Base_GLCD::property_5' hidden='1' >
						<property name='Font' target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::Font' typeid='16' hidden='0' locked='0' info='Font picker to decide which font to use on your display.' filter='000Default 8 (Legacy)
001Arial 14
019Arial 24
020Arial 32
021Arial 40
028Arial 48
045Arial 59
046Arial 70
047Arial 80
048Arial 89
055Arial 100
057Arial 119
059Arial 130
061Arial 140
084Arial 150
087Arial 160
002Arial Bold 14
049Arial Bold 24
050Arial Bold 32
051Arial Bold 40
029Arial Bold 47
052Arial Bold 60
053Arial Bold 70
054Arial Bold 80
031Arial Bold 90
056Arial Bold 100
058Arial Bold 120
060Arial Bold 130
083Arial Bold 140
085Arial Bold 150
086Arial Bold 159
003Courier New 9
004Courier New 20
005Courier New 29
006Courier New 40
007Courier New 49
008Courier New 60
009Courier New 69
010Courier New 80
011Courier New 89
012Courier New 100
026Seven Segment 24
027Seven Segment 32
091Seven Segment 40
013Seven Segment 49
014Seven Segment 59
015Seven Segment 70
016Seven Segment 79
017Seven Segment 89
018Seven Segment 100
022Seven Segment 110
023Seven Segment 120
024Seven Segment 130
025Seven Segment 140
030Seven Segment 150
032Seven Segment 160
018Custom
' />
						<property name='Custom Font File' target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::CustomFontFile' typeid='13' hidden='1' locked='0' info='Points to the .c file produced by the dot factory application.' />
						<property name='Bytes Required' target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::BytesRequired' typeid='21' hidden='0' locked='1' info='Number of bytes required in program memory to store the selected font.' />
						<property name='Character Spacing' target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::FontSpace' typeid='21' hidden='0' locked='0' info='Sets the number of blank pixels between each character when printing text.' />
						<property name='Space Width' target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::SpaceWidth' typeid='21' hidden='0' locked='0' info='Sets the number of horizontal pixels used to represent a space character.' />
					</property>
					<property name='Font 3' folder='gLCD_SSD1963::Base_GLCD::property_6' hidden='1' >
						<property name='Font' target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::Font' typeid='16' hidden='0' locked='0' info='Font picker to decide which font to use on your display.' filter='000Default 8 (Legacy)
001Arial 14
019Arial 24
020Arial 32
021Arial 40
028Arial 48
045Arial 59
046Arial 70
047Arial 80
048Arial 89
055Arial 100
057Arial 119
059Arial 130
061Arial 140
084Arial 150
087Arial 160
002Arial Bold 14
049Arial Bold 24
050Arial Bold 32
051Arial Bold 40
029Arial Bold 47
052Arial Bold 60
053Arial Bold 70
054Arial Bold 80
031Arial Bold 90
056Arial Bold 100
058Arial Bold 120
060Arial Bold 130
083Arial Bold 140
085Arial Bold 150
086Arial Bold 159
003Courier New 9
004Courier New 20
005Courier New 29
006Courier New 40
007Courier New 49
008Courier New 60
009Courier New 69
010Courier New 80
011Courier New 89
012Courier New 100
026Seven Segment 24
027Seven Segment 32
091Seven Segment 40
013Seven Segment 49
014Seven Segment 59
015Seven Segment 70
016Seven Segment 79
017Seven Segment 89
018Seven Segment 100
022Seven Segment 110
023Seven Segment 120
024Seven Segment 130
025Seven Segment 140
030Seven Segment 150
032Seven Segment 160
018Custom
' />
						<property name='Custom Font File' target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::CustomFontFile' typeid='13' hidden='1' locked='0' info='Points to the .c file produced by the dot factory application.' />
						<property name='Bytes Required' target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::BytesRequired' typeid='21' hidden='0' locked='1' info='Number of bytes required in program memory to store the selected font.' />
						<property name='Character Spacing' target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::FontSpace' typeid='21' hidden='0' locked='0' info='Sets the number of blank pixels between each character when printing text.' />
						<property name='Space Width' target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::SpaceWidth' typeid='21' hidden='0' locked='0' info='Sets the number of horizontal pixels used to represent a space character.' />
					</property>
					<property name='Font 4' folder='gLCD_SSD1963::Base_GLCD::property_7' hidden='1' >
						<property name='Font' target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::Font' typeid='16' hidden='0' locked='0' info='Font picker to decide which font to use on your display.' filter='000Default 8 (Legacy)
001Arial 14
019Arial 24
020Arial 32
021Arial 40
028Arial 48
045Arial 59
046Arial 70
047Arial 80
048Arial 89
055Arial 100
057Arial 119
059Arial 130
061Arial 140
084Arial 150
087Arial 160
002Arial Bold 14
049Arial Bold 24
050Arial Bold 32
051Arial Bold 40
029Arial Bold 47
052Arial Bold 60
053Arial Bold 70
054Arial Bold 80
031Arial Bold 90
056Arial Bold 100
058Arial Bold 120
060Arial Bold 130
083Arial Bold 140
085Arial Bold 150
086Arial Bold 159
003Courier New 9
004Courier New 20
005Courier New 29
006Courier New 40
007Courier New 49
008Courier New 60
009Courier New 69
010Courier New 80
011Courier New 89
012Courier New 100
026Seven Segment 24
027Seven Segment 32
091Seven Segment 40
013Seven Segment 49
014Seven Segment 59
015Seven Segment 70
016Seven Segment 79
017Seven Segment 89
018Seven Segment 100
022Seven Segment 110
023Seven Segment 120
024Seven Segment 130
025Seven Segment 140
030Seven Segment 150
032Seven Segment 160
018Custom
' />
						<property name='Custom Font File' target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::CustomFontFile' typeid='13' hidden='1' locked='0' info='Points to the .c file produced by the dot factory application.' />
						<property name='Bytes Required' target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::BytesRequired' typeid='21' hidden='0' locked='1' info='Number of bytes required in program memory to store the selected font.' />
						<property name='Character Spacing' target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::FontSpace' typeid='21' hidden='0' locked='0' info='Sets the number of blank pixels between each character when printing text.' />
						<property name='Space Width' target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::SpaceWidth' typeid='21' hidden='0' locked='0' info='Sets the number of horizontal pixels used to represent a space character.' />
					</property>
					<property name='Font 5' folder='gLCD_SSD1963::Base_GLCD::property_8' hidden='1' >
						<property name='Font' target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::Font' typeid='16' hidden='0' locked='0' info='Font picker to decide which font to use on your display.' filter='000Default 8 (Legacy)
001Arial 14
019Arial 24
020Arial 32
021Arial 40
028Arial 48
045Arial 59
046Arial 70
047Arial 80
048Arial 89
055Arial 100
057Arial 119
059Arial 130
061Arial 140
084Arial 150
087Arial 160
002Arial Bold 14
049Arial Bold 24
050Arial Bold 32
051Arial Bold 40
029Arial Bold 47
052Arial Bold 60
053Arial Bold 70
054Arial Bold 80
031Arial Bold 90
056Arial Bold 100
058Arial Bold 120
060Arial Bold 130
083Arial Bold 140
085Arial Bold 150
086Arial Bold 159
003Courier New 9
004Courier New 20
005Courier New 29
006Courier New 40
007Courier New 49
008Courier New 60
009Courier New 69
010Courier New 80
011Courier New 89
012Courier New 100
026Seven Segment 24
027Seven Segment 32
091Seven Segment 40
013Seven Segment 49
014Seven Segment 59
015Seven Segment 70
016Seven Segment 79
017Seven Segment 89
018Seven Segment 100
022Seven Segment 110
023Seven Segment 120
024Seven Segment 130
025Seven Segment 140
030Seven Segment 150
032Seven Segment 160
018Custom
' />
						<property name='Custom Font File' target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::CustomFontFile' typeid='13' hidden='1' locked='0' info='Points to the .c file produced by the dot factory application.' />
						<property name='Bytes Required' target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::BytesRequired' typeid='21' hidden='0' locked='1' info='Number of bytes required in program memory to store the selected font.' />
						<property name='Character Spacing' target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::FontSpace' typeid='21' hidden='0' locked='0' info='Sets the number of blank pixels between each character when printing text.' />
						<property name='Space Width' target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::SpaceWidth' typeid='21' hidden='0' locked='0' info='Sets the number of horizontal pixels used to represent a space character.' />
					</property>
					<property name='Font 6' folder='gLCD_SSD1963::Base_GLCD::property_9' hidden='1' >
						<property name='Font' target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::Font' typeid='16' hidden='0' locked='0' info='Font picker to decide which font to use on your display.' filter='000Default 8 (Legacy)
001Arial 14
019Arial 24
020Arial 32
021Arial 40
028Arial 48
045Arial 59
046Arial 70
047Arial 80
048Arial 89
055Arial 100
057Arial 119
059Arial 130
061Arial 140
084Arial 150
087Arial 160
002Arial Bold 14
049Arial Bold 24
050Arial Bold 32
051Arial Bold 40
029Arial Bold 47
052Arial Bold 60
053Arial Bold 70
054Arial Bold 80
031Arial Bold 90
056Arial Bold 100
058Arial Bold 120
060Arial Bold 130
083Arial Bold 140
085Arial Bold 150
086Arial Bold 159
003Courier New 9
004Courier New 20
005Courier New 29
006Courier New 40
007Courier New 49
008Courier New 60
009Courier New 69
010Courier New 80
011Courier New 89
012Courier New 100
026Seven Segment 24
027Seven Segment 32
091Seven Segment 40
013Seven Segment 49
014Seven Segment 59
015Seven Segment 70
016Seven Segment 79
017Seven Segment 89
018Seven Segment 100
022Seven Segment 110
023Seven Segment 120
024Seven Segment 130
025Seven Segment 140
030Seven Segment 150
032Seven Segment 160
018Custom
' />
						<property name='Custom Font File' target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::CustomFontFile' typeid='13' hidden='1' locked='0' info='Points to the .c file produced by the dot factory application.' />
						<property name='Bytes Required' target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::BytesRequired' typeid='21' hidden='0' locked='1' info='Number of bytes required in program memory to store the selected font.' />
						<property name='Character Spacing' target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::FontSpace' typeid='21' hidden='0' locked='0' info='Sets the number of blank pixels between each character when printing text.' />
						<property name='Space Width' target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::SpaceWidth' typeid='21' hidden='0' locked='0' info='Sets the number of horizontal pixels used to represent a space character.' />
					</property>
					<property name='Font 7' folder='gLCD_SSD1963::Base_GLCD::property_10' hidden='1' >
						<property name='Font' target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::Font' typeid='16' hidden='0' locked='0' info='Font picker to decide which font to use on your display.' filter='000Default 8 (Legacy)
001Arial 14
019Arial 24
020Arial 32
021Arial 40
028Arial 48
045Arial 59
046Arial 70
047Arial 80
048Arial 89
055Arial 100
057Arial 119
059Arial 130
061Arial 140
084Arial 150
087Arial 160
002Arial Bold 14
049Arial Bold 24
050Arial Bold 32
051Arial Bold 40
029Arial Bold 47
052Arial Bold 60
053Arial Bold 70
054Arial Bold 80
031Arial Bold 90
056Arial Bold 100
058Arial Bold 120
060Arial Bold 130
083Arial Bold 140
085Arial Bold 150
086Arial Bold 159
003Courier New 9
004Courier New 20
005Courier New 29
006Courier New 40
007Courier New 49
008Courier New 60
009Courier New 69
010Courier New 80
011Courier New 89
012Courier New 100
026Seven Segment 24
027Seven Segment 32
091Seven Segment 40
013Seven Segment 49
014Seven Segment 59
015Seven Segment 70
016Seven Segment 79
017Seven Segment 89
018Seven Segment 100
022Seven Segment 110
023Seven Segment 120
024Seven Segment 130
025Seven Segment 140
030Seven Segment 150
032Seven Segment 160
018Custom
' />
						<property name='Custom Font File' target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::CustomFontFile' typeid='13' hidden='1' locked='0' info='Points to the .c file produced by the dot factory application.' />
						<property name='Bytes Required' target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::BytesRequired' typeid='21' hidden='0' locked='1' info='Number of bytes required in program memory to store the selected font.' />
						<property name='Character Spacing' target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::FontSpace' typeid='21' hidden='0' locked='0' info='Sets the number of blank pixels between each character when printing text.' />
						<property name='Space Width' target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::SpaceWidth' typeid='21' hidden='0' locked='0' info='Sets the number of horizontal pixels used to represent a space character.' />
					</property>
				</property>
				<property name='Simulation' folder='gLCD_SSD1963::property_1' hidden='0' >
					<property name='Display Method' target='gLCD_SSD1963::DisplayMethod' typeid='16' hidden='1' locked='0' info='Chooses which method to use when drawing to the gLCD component
The bitmap is the more common mode but may run slowly on some machines.
The point cloud should run faster but may use more memory.
' filter='000Bitmap
001Point Cloud' />
					<property name='Component Label' target='gLCD_SSD1963::Base_GLCD::ComponentLabel' typeid='16' hidden='0' locked='0' info='' filter='000Same as Handle
001Custom' />
					<property name='User Label Text' target='gLCD_SSD1963::Base_GLCD::GdiText1::sText' typeid='11' hidden='0' locked='0' info='Text to display' />
					<property name='Component Label Scale' target='gLCD_SSD1963::Base_GLCD::GdiText1::dScale' typeid='15' hidden='0' locked='0' info='The label scale can be change if the amout of text is too wide for the display ' />
					<property name='Physical Orientation' target='gLCD_SSD1963::Base_GLCD::PhysicalOrientation' typeid='16' hidden='0' locked='0' info='Rotates the simulated canvas to match the orientation of real world hardware.' filter='0000 (Default)
0011
0022
0033' />
				</property>
			</properties>
			<values >
				<value target='gLCD_SSD1963::DataMode' data='003' />
				<value target='gLCD_SSD1963::data0' data='$PORTE.0' />
				<value target='gLCD_SSD1963::data1' data='$PORTE.1' />
				<value target='gLCD_SSD1963::data2' data='$PORTE.2' />
				<value target='gLCD_SSD1963::data3' data='$PORTE.3' />
				<value target='gLCD_SSD1963::data4' data='$PORTE.4' />
				<value target='gLCD_SSD1963::data5' data='$PORTE.5' />
				<value target='gLCD_SSD1963::data6' data='$PORTE.6' />
				<value target='gLCD_SSD1963::data7' data='$PORTE.7' />
				<value target='gLCD_SSD1963::data8' data='$PORTG.0' />
				<value target='gLCD_SSD1963::data9' data='$PORTG.1' />
				<value target='gLCD_SSD1963::data10' data='$PORTF.1' />
				<value target='gLCD_SSD1963::data11' data='$PORTF.0' />
				<value target='gLCD_SSD1963::data12' data='$PORTD.12' />
				<value target='gLCD_SSD1963::data13' data='$PORTD.13' />
				<value target='gLCD_SSD1963::data14' data='$PORTD.6' />
				<value target='gLCD_SSD1963::data15' data='$PORTD.7' />
				<value target='gLCD_SSD1963::dataport_low' data='$PORTB' />
				<value target='gLCD_SSD1963::dataport_high' data='$PORTD0' />
				<value target='gLCD_SSD1963::write_pin' data='$PORTD.4' />
				<value target='gLCD_SSD1963::read_pin' data='$PORTD.5' />
				<value target='gLCD_SSD1963::rs_pin' data='$PORTB.15' />
				<value target='gLCD_SSD1963::UseCS' data='1' />
				<value target='gLCD_SSD1963::chip_sel_pin' data='$PORTF.12' />
				<value target='gLCD_SSD1963::UseReset' data='1' />
				<value target='gLCD_SSD1963::reset_pin' data='$PORTC.1' />
				<value target='gLCD_SSD1963::UseBacklight' data='0' />
				<value target='gLCD_SSD1963::led_pin' data='$PORTD.4' />
				<value target='gLCD_SSD1963::ESP_OPT' data='0' />
				<value target='gLCD_SSD1963::pixel_width' data='480' />
				<value target='gLCD_SSD1963::pixel_height' data='272' />
				<value target='gLCD_SSD1963::monochrome' data='0' />
				<value target='gLCD_SSD1963::foreground_colour' data='0' />
				<value target='gLCD_SSD1963::background_colour' data='16777215' />
				<value target='gLCD_SSD1963::BGCOL' data='262143' />
				<value target='gLCD_SSD1963::FGCOL' data='0' />
				<value target='gLCD_SSD1963::colour_bit_depth' data='18' />
				<value target='gLCD_SSD1963::red_bit_depth' data='6' />
				<value target='gLCD_SSD1963::green_bit_depth' data='6' />
				<value target='gLCD_SSD1963::blue_bit_depth' data='6' />
				<value target='gLCD_SSD1963::FlipX' data='' />
				<value target='gLCD_SSD1963::FlipY' data='' />
				<value target='gLCD_SSD1963::ColourWidth' data='' />
				<value target='gLCD_SSD1963::OffX' data='' />
				<value target='gLCD_SSD1963::OffY' data='' />
				<value target='gLCD_SSD1963::PLLMult' data='' />
				<value target='gLCD_SSD1963::PLLDiv' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::FontCount' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::Font' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::CustomFontFile' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::BytesRequired' data='570' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::FontSpace' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font1::SpaceWidth' data='5' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::Font' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::CustomFontFile' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::BytesRequired' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::FontSpace' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font2::SpaceWidth' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::Font' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::CustomFontFile' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::BytesRequired' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::FontSpace' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font3::SpaceWidth' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::Font' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::CustomFontFile' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::BytesRequired' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::FontSpace' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font4::SpaceWidth' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::Font' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::CustomFontFile' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::BytesRequired' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::FontSpace' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font5::SpaceWidth' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::Font' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::CustomFontFile' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::BytesRequired' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::FontSpace' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font6::SpaceWidth' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::Font' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::CustomFontFile' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::BytesRequired' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::FontSpace' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font7::SpaceWidth' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::Font' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::CustomFontFile' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::BytesRequired' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::FontSpace' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::gLCD_Font8::SpaceWidth' data='' />
				<value target='gLCD_SSD1963::DisplayMethod' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::ComponentLabel' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::GdiText1::sText' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::GdiText1::dScale' data='' />
				<value target='gLCD_SSD1963::Base_GLCD::PhysicalOrientation' data='' />
			</values>
			<events />
			<apis >
				<api name='ReadFontWidth' alt='ReadFontWidth' type='1' proto='1' />
				<api name='FastBPlot' alt='FastBPlot' type='1' proto='1' />
				<api name='SetFontScaler' alt='SetFontScaler' type='1' proto='1' />
				<api name='LCD_Write_Data' alt='LCD_Write_Data' type='1' proto='1' />
				<api name='LCD_Write_Reg' alt='LCD_Write_Reg' type='1' proto='1' />
				<api name='PrintNumber' alt='PrintNumber' type='1' proto='1' />
				<api name='DrawLine' alt='DrawLine' type='1' proto='1' />
				<api name='DrawEllipse' alt='DrawEllipse' type='1' proto='1' />
				<api name='Plot' alt='Plot' type='1' proto='1' />
				<api name='FastPlot' alt='FastPlot' type='1' proto='1' />
				<api name='DrawArc' alt='DrawArc' type='1' proto='1' />
				<api name='SetDisplayOrientation' alt='SetDisplayOrientation' type='1' proto='1' />
				<api name='BPlot' alt='BPlot' type='1' proto='1' />
				<api name='Window' alt='Window' type='1' proto='1' />
				<api name='ReadFontStat' alt='ReadFontStat' type='1' proto='1' />
				<api name='Print' alt='Print' type='1' proto='1' />
				<api name='Initialise_NeedsModification' alt='Initialise_NeedsModification' type='1' proto='1' />
				<api name='ClearDisplay' alt='ClearDisplay' type='1' proto='1' />
				<api name='SetBackgroundColour' alt='SetBackgroundColour' type='1' proto='1' />
				<api name='DrawCircle' alt='DrawCircle' type='1' proto='1' />
				<api name='DrawRoundedRectangle' alt='DrawRoundedRectangle' type='1' proto='1' />
				<api name='SetForegroundColour' alt='SetForegroundColour' type='1' proto='1' />
				<api name='DrawRectangle' alt='DrawRectangle' type='1' proto='1' />
			</apis>
			<variables >
				<variable public='0' >
					<def class_type='variable' name='G' type='u8' description='' isconst='0' isHidden='0' isinit='1' usrinit='1' setinit='1' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='B' type='u8' description='' isconst='0' isHidden='0' isinit='1' usrinit='0' setinit='0' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='false' type='b1' description='' isconst='1' isHidden='0' isinit='1' usrinit='0' setinit='0' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='Buzzer_On' type='u8' description='' isconst='0' isHidden='0' isinit='1' usrinit='1' setinit='1' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='Backlight_ON' type='u8' description='' isconst='0' isHidden='0' isinit='1' usrinit='1' setinit='1' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='Backlight_Off' type='u8' description='' isconst='0' isHidden='0' isinit='1' usrinit='0' setinit='0' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='R' type='u8' description='' isconst='0' isHidden='0' isinit='1' usrinit='1' setinit='1' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='Buzzer_Off' type='u8' description='' isconst='0' isHidden='0' isinit='1' usrinit='0' setinit='0' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='true' type='b1' description='' isconst='1' isHidden='0' isinit='1' usrinit='1' setinit='1' />
				</variable>
			</variables>
			<macros >
				<macro >
					<flowline name='ReadFontWidth' description='Reads the number of pixel columns used in the selected font' statediag='0' >
						<return name='Return' type='u8' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Font' type='u8' description='Font selection range: 0 to (NumFonts - 1)' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Character' type='u8' description='ASCII character to get the pixel width e.g. &apos;A&apos; or 65' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='ReadFontWidth' >
							<exp exp='.Return = gLCD_SSD1963::ReadFontWidth(.Font, .Character)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='FastBPlot' description='Sets a pixel with the current background colour at pixel location X, Y.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='calculation' title='FastBPlot' >
							<exp exp='gLCD_SSD1963::FastBPlot()' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetFontScaler' description='Allows the fonts to be scaled up by multiplying the number of pixels on the X and Y.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='ScaleX' type='u8' description='Sets the horizontal scale of the font, default 1' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='ScaleY' type='u8' description='Sets the vertical scale of the font, default 1' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='SetFontScaler' >
							<exp exp='gLCD_SSD1963::SetFontScaler(.ScaleX, .ScaleY)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='LCD_Write_Reg' description='' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='bData' type='u8' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='native' title='Code' ccode='#ifdef MX_SIM
    // Mantém a simulação ativa no computador
    FCI_CALL_COMP_MACRO(gLCD_SSD1963_1, LCD_Write_Reg, FCL_BDATA);
#else
    // Hardware Real: Destrói o bit-banging e força o registrador PMP de 16 bits
    PORTBbits.RB15 = 0; // RS = 0 (Comando)
    PMDIN = FCL_BDATA;   
    while(PMMODEbits.BUSY);
#endif
' language='C' />
					</flowline>
				</macro>
				<macro >
					<flowline name='LCD_Write_Data' description='' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='bData' type='u8' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='native' title='Code' ccode='#ifdef MX_SIM
    FCI_CALL_COMP_MACRO(gLCD_SSD1963_1, LCD_Write_Data, FCL_BDATA);
#else
    PORTBbits.RB15 = 1; // RS em 1 para Write_Data/Write_Command
    PMDIN = FCL_BDATA;   
    while(PMMODEbits.BUSY);
#endif
' language='C' />
					</flowline>
				</macro>
				<macro >
					<flowline name='PrintNumber' description='This macro prints a decimal number to the Graphical LCD.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='Number' type='s16' description='Byte or Integer number to send to the display.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='X' type='u16' description='X pixel coordinate to set the output string position.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y' type='u16' description='Y pixel coordinate to set the output string position.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Font' type='u8' description='Range: 0 to 31 - 0=5x8, 1=10x8, 2=10x16, 3=5x16, 4-31=Extended Sizes' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Transparent' type='u8' description='Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='PrintNumber' >
							<exp exp='gLCD_SSD1963::PrintNumber(.Number, .X, .Y, .Font, .Transparent)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DrawLine' description='Draws a line with the current foreground colour from pixel location X1, Y1 to pixel location X2, Y2.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='X2' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y2' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='DrawLine' >
							<exp exp='gLCD_SSD1963::DrawLine(.X1, .Y1, .X2, .Y2)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DrawEllipse' description='Draws an ellipse object on the display with the center of the ellipse at the location X,Y' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X' type='u16' description='X Coordinate for the center of the circle' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y' type='u16' description='Y coordinate for the center of the circle' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='XRadius' type='u16' description='Radius of the circle on the X axis specified in pixels' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='YRadius' type='u16' description='Radius of the circle on the Y axis specified in pixels' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Transparent' type='u8' description='0=Fill inside circle using background colour / 1=Draw outer circle only' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Solid' type='u8' description='0=Use Transparent Setting / 1=Fill with foreground colour' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='DrawEllipse' >
							<exp exp='gLCD_SSD1963::DrawEllipse(.X, .Y, .XRadius, .YRadius, .Transparent, .Solid)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Plot' description='Sets a pixel with the current foreground colour at pixel location X, Y.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Plot' >
							<exp exp='gLCD_SSD1963::Plot(.X1, .Y1)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='FastPlot' description='Sets a pixel with the current foreground colour at current pixel location.
Not compatible with orientations other than 0.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='calculation' title='FastPlot' >
							<exp exp='gLCD_SSD1963::FastPlot()' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DrawArc' description='Draws an arc either as an outline or as a filled object.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X' type='u16' description='Center X coordinate' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y' type='u16' description='Center Y coordinate' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Radius' type='u16' description='Radius, distance of edge from the centre coordinates' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='StartAngle' type='f32' description='Angle to start drawing, in degrees' isconst='0' isHidden='0' isinit='0' usrinit='0.0' setinit='' />
						<param name='EndAngle' type='f32' description='Angle to end drawing, in degrees' isconst='0' isHidden='0' isinit='0' usrinit='0.0' setinit='' />
						<param name='Resolution' type='u16' description='Number of lines to draw from the center to the outer edge, 0=Fill' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Transparent' type='u8' description='Chooses the transparency - 0 = Arc contains background colour, 1 = Arc contains previous pixel data.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Solid' type='u8' description='Chooses to fill with colour - 0 = Arc transparency data, 1 = Arc contains foreground colour.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='DrawArc' >
							<exp exp='gLCD_SSD1963::DrawArc(.X, .Y, .Radius, .StartAngle, .EndAngle, .Resolution, .Transparent, .Solid)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetDisplayOrientation' description='Controls the way data is printed out on the display allowing multiple different viewing orientations. Default is 0.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='Orientation' type='u8' description='0=Default, 1=90°CW, 2=180°CW, 3=270°CW' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='SetDisplayOrientation' >
							<exp exp='gLCD_SSD1963::SetDisplayOrientation(.Orientation)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='BPlot' description='Sets a pixel with the current background colour at pixel location X, Y.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='BPlot' >
							<exp exp='gLCD_SSD1963::BPlot(.X1, .Y1)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Window' description='' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='X2' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y2' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Window' >
							<exp exp='gLCD_SSD1963::Window(.X1, .Y1, .X2, .Y2)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='ReadFontStat' description='Gets a stat from the selected embedded ASCII font data.' statediag='0' >
						<return name='Return' type='u8' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Font' type='u8' description='Font selection range: 0 to (NumFonts - 1)' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Index' type='u8' description='0=SpaceWidth, 1=PixelHeight' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='ReadFontStat' >
							<exp exp='.Return = gLCD_SSD1963::ReadFontStat(.Font, .Index)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Print' description='This macro prints a string of characters to the Graphical LCD.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='Str' type='T8*' description='String of characters to send to the display.' isconst='0' isHidden='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
							<array size='20' />
						</param>
						<param name='X1' type='u16' description='X pixel coordinate to set the output string position.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y1' type='u16' description='Y pixel coordinate to set the output string position.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Font' type='u8' description='Selects which Font to use Range: 0 to Font Count' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Transparent' type='u8' description='Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='Print' >
							<exp exp='gLCD_SSD1963::Print(.Str, .X1, .Y1, .Font, .Transparent)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Initialise_NeedsModification' description='The Init macro must be called once to initialise the Graphical LCD display before any other Graphical LCD component macros are called.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='calculation' title='Initialise' ccode='#ifdef MX_SIM
    // --- AMBIENTE DE SIMULAÇÃO (PC - WINDOWS) ---
    FCI_CALL_COMP_MACRO(gLCD_SSD1963_1, Initialise, 0); 
#else
    // --- AMBIENTE REAL DE HARDWARE (MIKROMEDIA PLUS PIC32MX7) ---

    // 1. Liberar portas analógicas e digitais para funcionamento estável
    DDPCONbits.JTAGEN = 0; // Desativa JTAG (Libera pinos do PORTD)
    AD1PCFG = 0xFFFF;      // Desativa conversores analógicos (Portas Digitais)
    CM1CON = 0;            // Desativa Comparador 1 (Libera pinos do PORTE)
    CM2CON = 0;            // Desativa Comparador 2 (Libera pinos do PORTE)
    
    // 2. Configurar direções de pinos baseados no driver MikroE oficial
    TRISBbits.TRISB15 = 0; // TFT_RS como Saída Digital
    TRISFbits.TRISF12 = 0; // TFT_CS como Saída Digital
    TRISCbits.TRISC1  = 0; // TFT_RST como Saída Digital
    TRISCbits.TRISC2  = 0; // TFT_BLED (Backlight elétrico) como Saída Digital

    // 3. Forçar estados lógicos iniciais e alimentar circuito físico de LED
    PORTFbits.RF12 = 1;    // CS = 1 (Desmarcado)
    PORTBbits.RB15 = 1;    // RS = 1
    PORTCbits.RC2  = 1;    // Ativa alimentação da luz de fundo física pela porta RC2

    // 4. Sequência Manual Controlada de Reset Físico (RC1)
    PORTCbits.RC1 = 1; delay_ms(20);
    PORTCbits.RC1 = 0; delay_ms(100); // Segura o chip gráfico em Reset em nível baixo
    PORTCbits.RC1 = 1; delay_ms(100); // Libera o controlador gráfico definitivo

    // 5. Configuração Rigorosa do Barramento PMP do PIC32
    PMCON = 0;             
    PMMODE = 0;            
    PMAEN = 0;             

    PMCONbits.CSF = 0;     // Controle de CS manual por software via pino RF12
    
    // Ajuste de Timing Máximo de Espera do PMP (31 Wait States para estabilização)
    PMMODEbits.MODE = 2;   // Master Mode 1 (16 bits paralelo)
    PMMODEbits.WAITB = 3;  // Data setup wait states
    PMMODEbits.WAITM = 15; // Data strobe wait states (15 ciclos)
    PMMODEbits.WAITE = 3;  // Data hold wait states
    PMCONbits.ON = 1;      // Liga o barramento PMP

    // 6. Envio das Instruções ao SSD1963 respeitando a temporização física
    PORTFbits.RF12 = 0;    // TFT_CS = 0 (Abre o canal de comunicação)
    asm(&quot;nop&quot;); asm(&quot;nop&quot;);

    // Comando: Set PLL MN (Configuração do oscilador interno)
    PORTBbits.RB15 = 0; PMDIN = 0xE2; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x23; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x02; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x54; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);

    // Comando: Start PLL
    PORTBbits.RB15 = 0; PMDIN = 0xE0; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x01; while(PMMODEbits.BUSY); delay_ms(20);
    PORTBbits.RB15 = 0; PMDIN = 0xE0; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x03; while(PMMODEbits.BUSY); delay_ms(20);

    // Comando: Software Reset
    PORTBbits.RB15 = 0; PMDIN = 0x01; while(PMMODEbits.BUSY); delay_ms(20);

    // Comando: Set LSHIFT Frequency (Clock do painel LCD)
    PORTBbits.RB15 = 0; PMDIN = 0xE6; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x03; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x33; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x33; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);

    // Comando: Set LCD Mode (Modo 16 bits paralelo para tela 480x272)
    PORTBbits.RB15 = 0; PMDIN = 0xB0; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x20; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x01; while(PMMODEbits.BUSY); asm(&quot;nop&quot;); // Painel de 4.3&quot; usa 0x01 na largura alta
                        PMDIN = 0xDF; while(PMMODEbits.BUSY); asm(&quot;nop&quot;); // Largura baixa (0xDF = 223 -&gt; total 479)
                        PMDIN = 0x01; while(PMMODEbits.BUSY); asm(&quot;nop&quot;); // Altura alta
                        PMDIN = 0x0F; while(PMMODEbits.BUSY); asm(&quot;nop&quot;); // Altura baixa (0x0F = 15 -&gt; total 271)
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);

    // Comando: Set Horiz Period
    PORTBbits.RB15 = 0; PMDIN = 0xB4; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x02; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0xAF; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x02; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x29; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);

    // Comando: Set Vert Period
    PORTBbits.RB15 = 0; PMDIN = 0xB6; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x01; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x1F; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x0D; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x02; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);

    // Comando: Ativar o Circuito de PWM do Backlight do SSD1963 (Pino 101)
    PORTBbits.RB15 = 0; PMDIN = 0xBE; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x0E; while(PMMODEbits.BUSY); asm(&quot;nop&quot;); // Frequência do sinal
                        PMDIN = 0xFF; while(PMMODEbits.BUSY); asm(&quot;nop&quot;); // Brilho interno em 100% (Duty Cycle)
                        PMDIN = 0x01; while(PMMODEbits.BUSY); asm(&quot;nop&quot;); // Habilita gerador
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
                        PMDIN = 0x00; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);

    // Comando: Set_DBC_SSD1963 (Controle de Brilho Dinâmico herdado da Mikromedia)
    PORTBbits.RB15 = 0; PMDIN = 0xD0; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x0D; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);

    // Comando: Set GPIO Value
    PORTBbits.RB15 = 0; PMDIN = 0xBA; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
    PORTBbits.RB15 = 1; PMDIN = 0x0F; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);

    // Comando: Turn Display On (Ativação final das matrizes de pixel)
    PORTBbits.RB15 = 0; PMDIN = 0x29; while(PMMODEbits.BUSY); asm(&quot;nop&quot;);
#endif' customize='1' >
							<exp exp='gLCD_SSD1963::Initialise()' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='ClearDisplay' description='This macro clears the display of any previous output by overwriting the entire display with the background colour.' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<command class_type='calculation' title='ClearDisplay' >
							<exp exp='gLCD_SSD1963::ClearDisplay()' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetBackgroundColour' description='Specifies the colour of the background by creating a mixture of red, green and blue.
' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='Red' type='u8' description='0 - 255 where 0 = no red and 255 = maximum red' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Green' type='u8' description='0 - 255 where 0 = no green and 255 = maximum green' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Blue' type='u8' description='0 - 255 where 0 = no blue and 255 = maximum blue' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='SetBackgroundColour' >
							<exp exp='gLCD_SSD1963::SetBackgroundColour(.Red, .Green, .Blue)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DrawCircle' description='Draws a circle object on the display with the center of the circle at the location X,Y' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X' type='u16' description='X Coordinate for the center of the circle' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y' type='u16' description='Y coordinate for the center of the circle' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Radius' type='u16' description='Radius of the circle specified in pixels' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Transparent' type='u8' description='0=Fill inside circle using background colour / 1=Draw outer circle only' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Solid' type='u8' description='0=Use Transparent Setting / 1=Fill with foreground colour' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='DrawCircle' >
							<exp exp='gLCD_SSD1963::DrawCircle(.X, .Y, .Radius, .Transparent, .Solid)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DrawRoundedRectangle' description='Draws a rectangle with rounded corners' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='X2' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y2' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Radius' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Transparent' type='u8' description='Chooses the transparency of the box - 0 = Box contains background colour, 1 = Box contains previous pixel data.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Solid' type='u8' description='Chooses to fill the box with colour - 0 = Box contains transparency data, 1 = Box contains foreground colour.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='DrawRoundedRectangle' >
							<exp exp='gLCD_SSD1963::DrawRoundedRectangle(.X1, .Y1, .X2, .Y2, .Radius, .Transparent, .Solid)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='SetForegroundColour' description='Specifies the colour of the foreground by creating a mixture of red, green and blue.
' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='Red' type='u8' description='0 - 255 where 0 = no red and 255 = maximum red' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Green' type='u8' description='0 - 255 where 0 = no green and 255 = maximum green' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Blue' type='u8' description='0 - 255 where 0 = no blue and 255 = maximum blue' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='SetForegroundColour' >
							<exp exp='gLCD_SSD1963::SetForegroundColour(.Red, .Green, .Blue)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='DrawRectangle' description='Draws a rectangle with the current foreground colour from pixel loaction X1, Y1 to pixel location X2, Y2' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
						<param name='X1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y1' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='X2' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Y2' type='u16' description='' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Transparent' type='u8' description='Chooses the transparency of the box - 0 = Box contains background colour, 1 = Box contains previous pixel data.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<param name='Solid' type='u8' description='Chooses to fill the box with colour - 0 = Box contains transparency data, 1 = Box contains foreground colour.' isconst='0' isHidden='0' isinit='0' usrinit='0' setinit='' />
						<command class_type='calculation' title='DrawRectangle' >
							<exp exp='gLCD_SSD1963::DrawRectangle(.X1, .Y1, .X2, .Y2, .Transparent, .Solid)' />
						</command>
					</flowline>
				</macro>
				<macro >
					<flowline name='Main' description='' statediag='0' >
						<return name='Return' type='v0' description='' isconst='0' isHidden='0' isinit='0' usrinit='' setinit='' />
					</flowline>
				</macro>
			</macros>
			<component class_type='ref' guid='9d414a42-fd9b-4afd-9493-dbf80eece14a' vmin='0' vmaj='1' codename='gLCD_SSD1963' panelId='0' x='340.556' y='-195' z='0' xsz='41.1708' ysz='41.3161' zsz='25' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' scadavisible='1' interactive='1' solid='1' layer='2' poslock='1' ancTop='0' ancBottom='0' ancLeft='0' ancRight='0' ancMinX='0' ancMinY='0' comp2dType='0' >
				<resources />
				<properties />
				<values >
					<value target='pixel_width' data='480' />
					<value target='pixel_height' data='272' />
					<value target='monochrome' data='0' />
					<value target='foreground_colour' data='0' />
					<value target='background_colour' data='16777215' />
					<value target='BGCOL' data='262143' />
					<value target='FGCOL' data='0' />
					<value target='colour_bit_depth' data='18' />
					<value target='red_bit_depth' data='6' />
					<value target='green_bit_depth' data='6' />
					<value target='blue_bit_depth' data='6' />
					<value target='DataMode' data='003' />
					<value target='data0' data='$PORTE.0' />
					<value target='data1' data='$PORTE.1' />
					<value target='data2' data='$PORTE.2' />
					<value target='data3' data='$PORTE.3' />
					<value target='data4' data='$PORTE.4' />
					<value target='data5' data='$PORTE.5' />
					<value target='data6' data='$PORTE.6' />
					<value target='data7' data='$PORTE.7' />
					<value target='data8' data='$PORTG.0' />
					<value target='data9' data='$PORTG.1' />
					<value target='data10' data='$PORTF.1' />
					<value target='data11' data='$PORTF.0' />
					<value target='data12' data='$PORTD.12' />
					<value target='data13' data='$PORTD.13' />
					<value target='data14' data='$PORTD.6' />
					<value target='data15' data='$PORTD.7' />
					<value target='dataport_low' data='$PORTB' />
					<value target='dataport_high' data='$PORTD0' />
					<value target='write_pin' data='$PORTD.4' />
					<value target='read_pin' data='$PORTD.5' />
					<value target='rs_pin' data='$PORTB.15' />
					<value target='UseCS' data='1' />
					<value target='chip_sel_pin' data='$PORTF.12' />
					<value target='UseReset' data='1' />
					<value target='reset_pin' data='$PORTC.1' />
					<value target='UseBacklight' data='0' />
					<value target='led_pin' data='$PORTD.4' />
					<value target='ESP_OPT' data='0' />
					<value target='FlipX' data='0' />
					<value target='FlipY' data='0' />
					<value target='ColourWidth' data='000' />
					<value target='OffX' data='0' />
					<value target='OffY' data='0' />
					<value target='PLLMult' data='40' />
					<value target='PLLDiv' data='2' />
					<value target='Base_GLCD::FontCount' data='001' />
					<value target='Base_GLCD::gLCD_Font1::Font' data='000' />
					<value target='Base_GLCD::gLCD_Font1::CustomFontFile' data='C:\Users\BenR\Desktop\customfont.h.c' />
					<value target='Base_GLCD::gLCD_Font1::BytesRequired' data='570' />
					<value target='Base_GLCD::gLCD_Font1::FontSpace' data='001' />
					<value target='Base_GLCD::gLCD_Font1::SpaceWidth' data='5' />
					<value target='Base_GLCD::gLCD_Font2::Font' data='005' />
					<value target='Base_GLCD::gLCD_Font2::CustomFontFile' data='C:\Users\BenR\Desktop\customfont.h.c' />
					<value target='Base_GLCD::gLCD_Font2::BytesRequired' data='' />
					<value target='Base_GLCD::gLCD_Font2::FontSpace' data='001' />
					<value target='Base_GLCD::gLCD_Font2::SpaceWidth' data='004' />
					<value target='Base_GLCD::gLCD_Font3::Font' data='002' />
					<value target='Base_GLCD::gLCD_Font3::CustomFontFile' data='C:\Users\BenR\Desktop\customfont.h.c' />
					<value target='Base_GLCD::gLCD_Font3::BytesRequired' data='' />
					<value target='Base_GLCD::gLCD_Font3::FontSpace' data='001' />
					<value target='Base_GLCD::gLCD_Font3::SpaceWidth' data='004' />
					<value target='Base_GLCD::gLCD_Font4::Font' data='015' />
					<value target='Base_GLCD::gLCD_Font4::CustomFontFile' data='C:\Users\BenR\Desktop\customfont.h.c' />
					<value target='Base_GLCD::gLCD_Font4::BytesRequired' data='' />
					<value target='Base_GLCD::gLCD_Font4::FontSpace' data='001' />
					<value target='Base_GLCD::gLCD_Font4::SpaceWidth' data='004' />
					<value target='Base_GLCD::gLCD_Font5::Font' data='008' />
					<value target='Base_GLCD::gLCD_Font5::CustomFontFile' data='' />
					<value target='Base_GLCD::gLCD_Font5::BytesRequired' data='' />
					<value target='Base_GLCD::gLCD_Font5::FontSpace' data='001' />
					<value target='Base_GLCD::gLCD_Font5::SpaceWidth' data='004' />
					<value target='Base_GLCD::gLCD_Font6::Font' data='010' />
					<value target='Base_GLCD::gLCD_Font6::CustomFontFile' data='' />
					<value target='Base_GLCD::gLCD_Font6::BytesRequired' data='' />
					<value target='Base_GLCD::gLCD_Font6::FontSpace' data='001' />
					<value target='Base_GLCD::gLCD_Font6::SpaceWidth' data='004' />
					<value target='Base_GLCD::gLCD_Font7::Font' data='021' />
					<value target='Base_GLCD::gLCD_Font7::CustomFontFile' data='' />
					<value target='Base_GLCD::gLCD_Font7::BytesRequired' data='' />
					<value target='Base_GLCD::gLCD_Font7::FontSpace' data='001' />
					<value target='Base_GLCD::gLCD_Font7::SpaceWidth' data='004' />
					<value target='Base_GLCD::gLCD_Font8::Font' data='003' />
					<value target='Base_GLCD::gLCD_Font8::CustomFontFile' data='' />
					<value target='Base_GLCD::gLCD_Font8::BytesRequired' data='' />
					<value target='Base_GLCD::gLCD_Font8::FontSpace' data='001' />
					<value target='Base_GLCD::gLCD_Font8::SpaceWidth' data='004' />
					<value target='DisplayMethod' data='000' />
					<value target='Base_GLCD::ComponentLabel' data='001' />
					<value target='Base_GLCD::GdiText1::sText' data='gLCD_SSD1963' />
					<value target='Base_GLCD::GdiText1::dScale' data='1.000000' />
					<value target='Base_GLCD::PhysicalOrientation' data='000' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
		</component>
	</components>
	<scadaresourcelookup />
	<keymap />
	<panel2d shadows='0' lighting='2' brightness='0' >
		<background rgb='7292207' img='' style='0' />
		<camera xe='0' ye='0' ze='668.569' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
		<viewport dx='200' dy='1328' zoom='36.1967' fix_topleft='0' />
		<page x='1000' y='1000' show='0' rgb='7360576' />
		<winpos ID='7005' RectRecentFloat='603,287,1253,737' RectRecentDocked='0,0,200,1378' RecentFrameAlignment='16384' RecentRowIndex='0' IsFloating='0' MRUWidth='32767' PinState='0' IsMaximized='0' IsVisible='0' />
	</panel2d>
	<panel3d shadows='1' lighting='1' brightness='0' perspective='1' >
		<background rgb='15780518' img='' style='0' />
		<table rgb='8404224' img='' style='0' size='0' />
		<camera xe='0' ye='0' ze='781.66' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
		<camerakey0 xe='0' ye='0' ze='300' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
		<camerakey1 xe='-3.67394e-14' ye='0' ze='-300' xt='0' yt='0' zt='0' xquat='0' yquat='1' zquat='0' wquat='6.12323e-17' />
		<camerakey2 xe='0' ye='-300' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.707107' yquat='0' zquat='0' wquat='0.707107' />
		<camerakey3 xe='-3.67394e-14' ye='300' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-4.32978e-17' yquat='0.707107' zquat='0.707107' wquat='4.32978e-17' />
		<camerakey4 xe='-300' ye='-6.66134e-14' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.5' yquat='0.5' zquat='0.5' wquat='0.5' />
		<camerakey5 xe='300' ye='-6.66134e-14' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.5' yquat='-0.5' zquat='-0.5' wquat='0.5' />
		<camerakey6 xe='-173.205' ye='-173.205' ze='173.205' xt='0' yt='0' zt='0' xquat='-0.424708' yquat='0.17592' zquat='0.339851' wquat='0.820473' />
		<winpos ID='7004' RectRecentFloat='200,174,1202,1080' RectRecentDocked='0,0,210,1690' RecentFrameAlignment='16384' RecentRowIndex='0' IsFloating='0' MRUWidth='32767' PinState='0' IsMaximized='0' IsVisible='0' />
	</panel3d>
	<panels2d count='1' >
		<panel2d_0 id='0' name='NewPanel' type='0' >
			<winpos ID='1171' RectRecentFloat='424,498,1074,948' RectRecentDocked='1015,328,1331,2012' RecentFrameAlignment='16384' RecentRowIndex='0' IsFloating='0' MRUWidth='32767' PinState='0' IsMaximized='0' IsVisible='0' />
			<background fill='288230376151053813' showgrid='1' gridstyle='1' gridsize='10' gridbrush='71776119075691740' snaptogrid='1' fitcomp='0' disp_x='300' disp_y='400' scale='220' disp_col='16777215' />
		</panel2d_0>
	</panels2d>
	<layout >
		<view type='0' name='Main' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAzAAAAdAIAAI8GAAA' zoom='80' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='Initialise_NeedsModification' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAzAAAAdAIAAI8GAAA' zoom='240' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='LCD_Write_Reg' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAzAAAAdAIAAI8GAAA' zoom='260' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='LCD_Write_Data' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAzAAAAdAIAAI8GAAA' zoom='240' scrollx='0' scrolly='0' flags='0' />
		<view type='0' name='BPlot' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAzAAAAdAIAAI8GAAA' zoom='100' scrollx='0' scrolly='0' flags='0' />
	</layout>
</document>
</root>
