Quigs, release candidate

Quigs, release candidate

بواسطة edoz بتاريخ 06-07-2020, 22:42
المناقشة: Development
وسوم: quigs, SymbOS, Development
اللغات:

Quick User Interface with Graphics for Symbos
Quigs, release candidate

It is the year 2000, November to be precise, Prodatron was writing the first z80 assembly lines for his Symbiosis Multitasking Based Operating System or also called SymbOS. At this moment in time, it was just a fun try- out, to see how a z80 home computer would behave in a multitasking GUI based environment. Of course, those ideas already came up before the millennium, but finally it took sense for him to start this crazy project. Not long after this, the project became bigger and bigger and what was started with a small concept became a big z80 project.

One user, Trebmint was really excited about the SymbOS project and started to collaborate with Prodatron. Both became more and more active and because of inspiring each other, the project really started to grow. Trebmint thought it was better for SymbOS to have a good development suite so people could started writing apps for SymbOS (without the need to know complex things like multitasking).

In the end of 2004 Trebmint released SymStudio and later named it Unify. Edoz was inspired by SymStudio and started to develop for it. This was again accelerator for Trebmint and so the magic began between those three people.

Trebmint inspired Prodatron to port SymbOS to other Z80 computer as well, to make the amount of possible users bigger but also to be able to release software for different z80 computers, which all share the same SymbOS operating system. This way other z80 retro- communities could take advantage of each other’s software releases. With lot of help from the communities (MSX and Enterprise), the ports became real and thanks to Hans (TMT-LOGIC) and Technobytes even hardware, like the G9K became compatible between different z80 machines. The focus for SymbOS today is to make it as fast and compatible as possible.

Today we are glad to announce that Trebmint is releasing his first release candidate to the public so you can start writing your own SymbOS applications! There are some tutorials on YouTube and there is even a chess example program. Quigs runs an a Windows machine. Extract the zip, set your settings in settings.txt and start quigs.exe

Relevant link:
Download Quigs

Media browser (2)

  • Quigs, release candidate
  • Quigs, release candidate

التعليقات (12)

بواسطة edoz

Prophet (2287)

صورة edoz

06-07-2020, 23:00

The tutorials from Trebmint can be found here :
Tutorial videos for Quigs

I was pointing in the link to only one video, but there are some more videos done by Trebmint.

بواسطة edoz

Prophet (2287)

صورة edoz

07-07-2020, 11:45

Oh... and this one is my favorite : FileBox It really shows how simple it is in use! I know i posted the news item myself but I'm really amazed what Trebmint did all those years on the Quigs project and all the effort he did on it.. I'm so thankful for that! It is just crazy.

بواسطة fernando.collazo.5682

Master (246)

صورة fernando.collazo.5682

07-07-2020, 17:20

Really interesting...

بواسطة Manuel

Ascended (16702)

صورة Manuel

07-07-2020, 19:18

What was Quigs itself written in?

بواسطة Trebmint2

Master (215)

صورة Trebmint2

07-07-2020, 21:10

Quigs is coded in a language called Blitz3d, which was a 3d language back in early 2000's. But it was my language of choice in 2005 when I first started coding what was then SymStudio, and starting from scratch always seemed too daunting. Obviously today I'm more c# and the Blitz has long since been discontinued... its a bit slow and clunky and lacking anything GUI... which is why its a self coded and ugly GUI. Still works though

بواسطة Manuel

Ascended (16702)

صورة Manuel

07-07-2020, 21:16

Sure thing. It's a bit of a pity that it's so Windows specific.

بواسطة Trebmint2

Master (215)

صورة Trebmint2

07-07-2020, 21:22

Well there is a project called BlitzNG which allows you to compile Blitz3d for Linux and MacOs. Personally I'm a Windows user so testing would be impossible, so I never tried to re-compile it.

If somebody would like to look into it and do so I will make all the code available. Obviously its an ongoing project with the v9990 games engine coming it might be a worthwhile thing for somebody to do

بواسطة edoz

Prophet (2287)

صورة edoz

07-07-2020, 21:42

I'm not sure but maybe this is the link?
BlitzNG (Blitz3d)

بواسطة karloch

Prophet (2084)

صورة karloch

08-07-2020, 22:04

I don't find the GUI ugly at all, thank you for such a great work Terbmint. I think SymbOS is amazing, so anything related to make development for him easier is really welcome.

بواسطة tfh

Prophet (2324)

صورة tfh

08-07-2020, 23:07

Hmmm Smile So maybe it's time to do another video conversion like I did with the beta of Quigs Smile

بواسطة NYYRIKKI

Enlighted (5558)

صورة NYYRIKKI

10-07-2020, 06:30

I just wanted to drop by and say that Quigs is great!

Starting coding for a totally alien multitasking OS like SymbOS may feel like quite a drop to a deep end. You need to learn a new assembler as well as new stuff about memory types, relocating code, system calls, sending and receiving messages and all. Quigs softens this sharp edge very well by hiding pretty much all of this from developer. It gives you lots of tools to do VB like object oriented coding while yet it still gives you possibility to write your own assembler stuff in to functions if you like.

Quigs does have some rough edges, but it is still amazing and as Edoz has many times proven already, it can be used to do amazing stuff... and even with quite a little effort. Quigs for SymbOS is like MSX-BASIC is for MSX. It gets you in to coding without need to be an expert of all fields and without deep understanding of underlying OS... It can be very helpful even if you decide to move in to pure assembler coding later as it lets you peek in to the embedded assembler functions if you like... The form design functionality deserves extra credit as it is a real WYSIWYG editor. It feels quite unreal that you can just go and draw a button, write a function to it, compile the program and see your creation working on your favorite 8bit system!

بواسطة edoz

Prophet (2287)

صورة edoz

10-08-2020, 17:04


List of Quigs Commands/Functions
********************************

//Directives
Function											"Function is user routine you can choose to call which can return a result ended by An EndF directive."
Func												"Function is user routine you can choose to call which can return a result ended by An EndF directive."
AFunction											"Assembler function Declare a AFunction"
AFunc												"Assembler function Declare a AFunction."	
EndF												"EndF will end a Function/Afunction routine."
EndFunc												"EndF will end a Function routine."	
Asm													"Set the following code to be z80."
Quigs												"Set the following code to be Quigs language code."
Var													"Declare a Variable of name and type."
Public												"Makes public to Inspector."
Int													"Declare a INT type"
Byte												"Declare a BYTE type"	
Float	**** Not Implemented yet	*****			"Declare a type FLOAT"	
String												"Declare a type STRING"	
File												"Declare a type FILE"	
Sheet												"Declare a type SHEET"
Void												"Declare a type VOID"	
Memory												"Declare a type MEMORY"
Then												"Used in an IF THEN ENDIF structure to indicate what commands should Then be executed."		
To													"Used in certainf commands like For to seperate a start an end value."
Step												"Step is a value to increment or decrement the For Loop Variable."
	
//General Statements
If  Then 								"Used to check IF a condition is true or false. Use with Then, Else & Endif"
EndIf												"Used to complete an If structure. Use with If, Then & Else"
Else												"Else statement"
While = To  Step 			"For...Next is loop method which assigns a variable a range of numbers to Step through."
Next												"Next completes a loop in the For..Next. Based on variable number the For will repeat."
Return value										"Can Return Null Or Value from Function"
Lock.On												"Disable Interrupts.
Lock.Off											"Enable Interrupts."
Jump												"Jump to Label."
JumpTable ,,...				"Jump table is super fast Switch statement for a result... Jumps to 0,1,2,3 etc result"
Garbage												"Force a Garbage Collection."
IO.In%()										"Reads value from a IO Port."
IO.Out ,								"Send a value to a given IO Port."


//Form Control  	
Form.Menu.Refresh 							"Redraws the Menu on the Form 1..8."
Form.Status.Refresh 							"Redraws the Status bar on the given Form 1..8."
Form.Title.Refresh 							"Redraws the Title bar on the given Form 1..8."
Form.Size.Set ,,			"Changes & Redraws the Width & Height of Form."
Form.Pos.Set ,,				"Changes & Redraws the X & Y Position of Form."
Form.Refresh 								"Redraws everything on the Form."
Form.Open 									"Display a created form and execute required function if given"
Form.Close 									"Hides a form and execute required function if given"
Form.Modal.On 					"(currently not working) Set the Modal on a form so you cannot quit out."	


//Controls & Tools
Ctrl.Refresh 								"Redraws the requested Form Control"
Ctrl.RefreshArea ,,,, 	"Redraws the requested area on Form Control"		
Ctrl.RefreshSequence ,			"Redraws a consequative sequence of upto 15 controls starting at given control"
***** Need to change to Pos not Position
Ctrl.Position.Set ,,			"Set the position of the given control"
Ctrl.Visible.Set ,				"Set the Control to be visible (1) or invisible(0) - Note will not disapear until Form refreshed"
Ctrl.GetID%(,)							"Returns the unique Control ID of control on desired form and display position."
Ctrl.Display%()							"Returns the controls display position on the form."	
Ctrl.Type%()								"Returns the controls type."
Ctrl.Left.Get%()							"Returns the controls Left pixel position on form."
Ctrl.Top.Get%()							"Returns the controls Right position on form."
Ctrl.Width.Get%()							"Returns the controls Width in pixels."
Ctrl.Height.Get%()						"Returns the controls type."	
***** Tools needs some more functionality should be the generic like above
Tool.Refresh 								"Redraws the requested Form Tool Control"	
Tool.Visible.Set ,				"Set the Control to be visible (1) or invisible(0)"
Tool.Position.Set ,,			"Places the control at pixel Left & top"
	
//Label Control	
Ctrl.Label.Text.Set ,				"Sets a label control text"
Ctrl.Label.Text.Get$(<"Control%>)					"Returns string text of label control."
Ctrl.Label.Text.Len%()					"Get text length of label control."
Ctrl.Label.Type%()									"Returns symbos type for Label control."
//Frame Control	
Ctrl.Frame.Text.Set ,				"Sets a frame control text"	
Ctrl.Frame.Text.Get$()					"Return string text of frame control."
Ctrl.Frame.Text.Len%()					"Return string length of frame control."
Ctrl.Frame.Type%()									"Returns symbos type for Frame control."	
//Button Control	
Ctrl.Button.Text.Set ,				"Sets a button control text"	
Ctrl.Button.Text.Get$()					"Get string text of button control."
Ctrl.Button.Text.Len%()					"Return string text length of button control."
Ctrl.Button.Type%()									"Returns symbos type for Button control."	
//Radio Control	
Ctrl.Radio.Text.Set ,				"Sets a radio control text"	
Ctrl.Radio.Text.Get$()					"Return string text of label control."
Ctrl.Radio.Text.Len%()					"Return string text length of label control."
Ctrl.Radio.Type%()									"Returns symbos type for Radio control."	
//Check Control	
Ctrl.Check.Text.Set ,				"Sets a check control text"	
Ctrl.Check.Text.Get$()					"Return string text of check control."
Ctrl.Check.Text.Len%()					"Return string text length of check control."	
Ctrl.Check.Type%()									"Returns symbos type for Check control."	
//Image Control	
Ctrl.Image.Tile.Set ,,		"Set tile graphic from a sheet to an Image control"
Ctrl.Image.Type%()									"Return symbos type for ImgBox control."
//Image Toll
Tool.ImgBox.Tile.Set ,,	"Set tile graphic from a sheet to an Image tool"	
***** Obviously there should be more...
	

//App Info
App.CommandLine$()									"Return application entry string, including Path\file & parameters." 
App.CommandLine.Len%()								"Return application entry string length." 
App.Name$()											"Return application name string." 	
App.Name.Len%()										"Return application name string length."
App.Path$()											"Return application entry directory path." 
App.TranExt.Size%()									"Memory allocated to extend Transfer Area."
App.Exit											"Close and Exit the application."
Execute%()								"Launch an app or file. Returns 0-Success/1-File not found/2-Not executable/3-File Error/4-Memory Full"


//Timer - Interrupt	
Timer.On											"Turns on the Timer"
Timer.Stop											"Halts the Timer"	
Timer.IsOn%()										"Return the status of the Timer Halted 0 or On 1"

	
//Dialog - MsgBox (are in effect same thing)
Dialog%(,,,,,)		"Display the Dialog/MsgBox."
Dialog.Result.Failed%()								"Constant of Dialog/MsgBox failing to Open as already in use."			
Dialog.Result.Open%()								"Constant of Dialog/MsgBox being Open. Should be an Impossible result."
Dialog.Result.Ok%()									"Constant of Dialog/MsgBox was exited via OK click."
Dialog.Result.Yes%()								"Constant of Dialog/MsgBox was exited via Yes click."
Dialog.Result.No%()									"Constant of Dialog/MsgBox was exited via No click."
Dialog.Result.CancelClose%()						"Constant of Dialog/MsgBox was exited via Cancel or Close click."
Dialog.Title.Normal%()								"Constant for Dialog/MsgBox Tile."
Dialog.Title.Error%()								"Constant for Dialog/MsgBox Tile."
Dialog.Title.Info%()								"Constant for Dialog/MsgBox Tile."
Dialog.Title.Warning%()								"Constant for Dialog/MsgBox Tile."
Dialog.Title.Confirmation%()						"Constant for Dialog/MsgBox Tile."	
Dialog.Icon.Default%()								"Constant for Dialog/MsgBox Icon."
Dialog.Icon.User%()									"Constant for Dialog/MsgBox Icon."
Dialog.Buttons.Ok%()								"Constant for Dialog/MsgBox Button."
Dialog.Buttons.YesNo%()								"Constant for Dialog/MsgBox Button."
Dialog.Buttons.YesNoCancel%()						"Constant for DialogMsgBox Button."		

//File & FileType	
File.Select.Open%(,)					"Displays file select dialog. Result string placed in variable 'File.Select.File'"
File.Select.Save%(,)					"Displays file select dialog. Result string placed in variable 'File.Select.File'"
File.Select.File$()									"Returns the last path/file from the File select Dialog"
File.Exist%()								"Returns 1 if the given path/file string is an existing file."
File.Rename ,						"Rename an existing file with new name."	
File.Move ,						"Move an existing file to new directory."
File.Delete ,								"Quig_File_Delete","Delete an existing file."
File.Result%()										"File error report 1-Okay else Check error list."	
File.Select.OK%()									"Constant File.Select.OK = 0."
File.Select.Cancel%()								"Constant File.Select.Cancel = 1."
File.Select.InUse%()								"Constant File.Select.InUse = 2."
File.Select.MemFull%()								"Constant File.Select.MemFull = 3."
File.Select.NoWindow%()								"Constant File.Select.NoWindow = 4."
**** Var [name]:Sheet
[name]%()											"Returns file container [name] ID"	
[name].Open 									"Opens an existing file in file container [name]. Status 0-Fail/1-Success"
[name].New 									"Create new file in file container [name]. Status 0-Fail/1-Success"	
[name].Close										"Close file"
[name].WriteString 						"Write the string to the file"
[name].WriteInt 								"Write the Integer to file"
[name].WriteByte 							"Write Byte to file"	
[name].Status%()									""
[name].ReadString$()								"Return read string"
[name].ReadInt%()									"eturn Read Int"
[name].ReadByte%()									"Return Read byte"	
[name].EOF%()										"Return EOF 0-No, 1 Yes"	

//Directory - Essentially same as File
Directory.Select%()							"Displays directory select dialog.Result string placed in variable 'Directory.Select.File'"		
Directory.Select.Path$()							"Returns the last path/file from the Directory select Dialog."
Directory.Exist%()							"Returns 1 if the given string is an existing directory" ;OKAY		
Directory.New 								"Make new directory with path name."
Directory.Rename ,					"Rename an existing directory with new name."	
Directory.Move ,					"Quig_Directory_Move","Move an existing directory with new name."
Directory.Delete 							"Delete an existing directory."
Directory.Result%()									"Directory Command error report 1-Okay else Check error list."	
Directory.Select.OK%()								"Constant Directory.Select.OK = 0."
Directory.Select.Cancel%()							"Constant Directory.Select.Cancel = 1."
Directory.Select.InUse%()							"Constant Directory.Select.InUse = 2."
Directory.Select.MemFull%()							"Constant Directory.Select.MemFull = 3."
Directory.Select.NoWindow%()						"Constant Directory.Select.NoWindow = 4."		


//Memory - [name] is used for the Var designated Memory Type
**** Var [name]:Memory
[name]%()												"Returns memory container [name] ID"	
[name].Create 								"Quig_memory_Create","Create a memory allocation in [name] of a number of bytes"
[name].Free											"Clears a memory allocation in [name] so data is no longer taken"
[name].Status%()									""	
[name].Size%()										""
[name].Byte.Get%()						"Reads a byte from a given position in memory allocation [name]"
[name].Int.Get%()						"Reads an Int from a given position within memory allocation [name]"
[name].String.Get%()						""
[name].Byte.Set ,					"Write a byte to memory allocation [name]
[name].Int.Set ,					"Write an int to memory allocation [name]+" at position."
[name].String.Set ,				""


//Sheets - [name] is used for the Var designated Sheet type	
**** Var [name]:Sheet
[name]%()												"Returns sheet container [name] ID"		
[name].Load 							"Loads a Sheet file into [name]."
[name].Free											"Free the memory used by sheet [name]+" once finished with"
[name].Tiles%()										"Return number of tiles in [name] sheet container."
[name].Size%()										"Return memory size used by [name] sheet container."	
[name].Status%()									"Return status of [name] sheet container (0) Empty / (1) In use / >(99) loading Error."
[name].Colour.Depth%()								"Return colour depth of [name] sheet. (0)-4 colour (1)-16 colour."	


//Network
Net.Initialise										"Initialise Network ability through running network daemon."
Net.Initialised%()									"Has the network daemon been initialised."
Net.DNS.Resolve$()							"Returns The IP location of a Web URL" 
Net.TCP.Server.Open%()						"Opens a server TCP listening port returning a Handle."
Net.TCP.Client.Open%(,%)					"Opens a client TCP and looks for server returning a Handle."
Net.TCP.Server%()									"Quig_Get_Byte","Return true if this is a TCP server."	
Net.TCP.Close 								"Close TCP Network Socket."
Net.TCP.Flush 								"Flush TCP Network Socket."	
Net.TCP.Send ,						"Send string over TCP Network Socket."
Net.TCP.Status%()							"Return the status of a Network Socket."
Net.TCP.Status.Unavailable%()						"Constant for unavailable socket number."			
Net.TCP.Status.Listening%()							"Constant for listening status of Net Socket."
Net.TCP.Status.Connected%()							"Constant for connected status of Net Socket."
Net.TCP.Status.Closing%()							"Constant for closing status of Net Socket."		
Net.TCP.Status.Closed%()							"Constant for closed status of Net Socket."		
//Network Events
Event.Net%()										"Return then Net event type of last net event occurance."
Net.Handle%()										"Return then Net event handle type of last net event occurance."		
Event.Net.TCP.Establish%()							"Return true of False for a TCP connection establish event."	
Event.Net.TCP.Received%()							"Return true of False for a Network Socket Receive event."
Event.Net.TCP.Closing%()							"Return true of False for a Network Socket Closing event."	
Event.Net.TCP.Closed%()								"Return true of False for a Network Socket Close event."	
Event.Net.Received.Size%()							"Return size of Net received data."	
Event.Net.Socket%()									"Return the event socket."	
Event.Net.Received.String$()						"Return string from net event"
Event.Net.Port%()									"Return the port of net event."	
	

//String functions
Len%()										"Returns the character length of a string" 
CInt%()									"Returns the Int value of possible numeric string" 
Asc%()										"Returns the ASCII code for the first character of string"
UCase$()									"Returns an upper case version of the source string"
LCase$()									"Returns an lower case version of the source string"
Mid$(,,					"Returns a portion of the source string"
Left$(,)							"Returns string of length from Left side of source string."
Right$(,)							"Returns string of length from Right side of source string."
FindStr%(,,					"Return start char position of searched string from a source string." 
Replace$(,,				"Return string with found elements changed for new."
ValidString$()								"Takes a string and removes invalid characters."
Base64.Encode$()							"Return Base64 version of string."
Hex$()										"Converts an Integer into a Hexidecimal String"
Chr$()										"Returns the string character of the given ascii value"
StringBuffer%()										"Return String buffer Pos (really for z80 asm coders)"
Str$()										"Converts number into a string"
String.Memory%()									"Return size in bytes of useable String space."
String.Free%()										"Return size in bytes of free String space."	
String.Buffer.Free%()								"Return size in bytes of free String Buffer space."	


//Clipboard
Clipboard.Text.Set 						"Sets the Text on Clipboard."
Clipboard.Text.Get$()								"Returns Text if any on clipbaord."		
Clipboard.Type%()									"Returns type of data in clipboard. Empty-0 Text-1 Graphic-2"
Clipboard.Len%()									"Returns clipboard size in bytes"

	
//Mouse
Mouse.Key%()										"Return Mouse buttons pressed 1-Left 2-Right 3-Both"
Mouse.X%()											"Return the INT value of the Mouse pointers X position"
Mouse.Y%()											"Return the INT value of the Mouse pointers Y position"
	
	
//Display	
Screen.Mode%()										"Return current screen mode. PCW-0 CPC-1/2 MSX-5/6/7"
Screen.Colour%()									"Return current screen mode colour (2-16)"
Screen.Resolution.X%()								"Return current screen x resolution."
Screen.Resolution.Y%()								"Return current screen x resolution."
**** Constants
Colour.PastelYellow%(),Colour.Black%(),Colour.Orange%(),Colour.DarkRed%(),Colour.BrightCyan%(),Colour.DarkBlue%()Colour.SkyBlue%(),
Colour.Blue%(),Colour.White%(),Colour.Green%(),Colour.BrightGreen%(),Colour.Magenta%(),Colour.Yellow%(),Colour.Grey%(),Colour.Pink%(),Colour.Red%()
	
	
//Sheets - For use with Var Sheet Type - [name].something
[name].Load 							"Loads a Sheet file into given sheet container."
[name].Free%()										"Free/Clear memory used by sheet contianer"
[name].Tiles%()										"Return number of tiles in sheet container."
[name].Size%()										"Return memory size used by sheet container."	
[name].Status%()									"Return status of sheet container (0) Empty / (1) In use / >(99) loading Error."
[name].Colour.Depth%() 								"Return colour depth of sheet container. (0)-4 colour (1)-16 colour."		
	

//Math
Neg%()										"Changes sign of Integer value"
Rnd%()										"Generates a random number between 0 and specified value"
Sqr%()										"Converts an Integer to its square root."
Not%()										"Inverts Boolean result from true/false."
Abs%()										"Returns Absolute of integer"
Sgn%()										"Returns the Sgn of an Integer."
Shr1%()										"Shift Integer 1 bit right or Divide by 2."
Shr2%()										"Shift Integer 2 bits right or Divide by 4." 
Shr3%()										"Shift Integer 3 bits right or Divide by 8." 	
Shr4%()										"Shift Integer 4 bits right or Divide by 16."
Shr5%()										"Shift Integer 5 bits right or Divide by 32."	
Shr6%()										"Shift Integer 6 bits right or Divide by 64."
Shr7%()										"Shift Integer 7 bits right or Divide by 128."	
Shr8%()										"Shift Integer 8 bits right or Divide by 256."	
***** Need to implement Shl..


//Time RTC functions
Time.Second.Get%()									"Returns the current clock second 0-59"
Time.Minute.Get%()									"Returns the current clock minute 0-59"	
Time.Hour.Get%()									"Returns the current clock hour 0-23"	
Time.Day.Get%()										"Returns the current clock day 1-31"		
Time.Month.Get%()									"Returns the current clock month 1-12"		
Time.Year.Get%()									"Returns the current clock year 1900-2100"
***** Need to add Time Setting too
	
//Keyboard	
Key%()										"Checks input scan code for pressed-1 or not pressed-0"
Key.Shift%()										"Checks for Shift being pressed-1 or not pressed-0"
Key.Control%()										"Checks for Control being pressed-1 or not pressed-0"
Key.Alt%()											"Checks for Alt being pressed-1 or not pressed-0"
Key.Caps%()											"Checks for Caps Lock being set-1 or not set-0"
***** Constants - should be a lot more
Key.Code.CursorUp%(),Key.Code.CursorRight%(),Key.Code.CursorDown%(),Key.Code.CursorLeft%()
	
//Machine	
Machine%()											"Return machine type - See machine value list"
Machine.464%(),Machine.664%(),Machine.6128%(),Machine.464Plus%(),Machine.6128Plus%(),Machine.Enterprise%(),
Machine.MSX1%(),Machine.MSX2%(),Machine.MSX2Plus%(),Machine.TurboR%(),Machine.Pcw8xxx%(),Machine.Pcw9xxx%()


//Symbos Event Handling	
Event.Form%()										"Return the last events form number"
Event.Control%()									"Return the last events control number"
Event.Reason%()										"Return the last events reason for happening"
Event.Type%()										"Return the last events reason for happening"
Event.MouseX%()										"Return the MouseX value when last event occurred"
Event.MouseY%()										"Return the MouseY value when last event occurred"
***** Constants
Event.Reason.MouseLeftClick%(),Event.Reason.MouseLeftDClick%(),Event.Reason.MouseRightClick%(),Event.Reason.MouseMiddleClick%(),
Event.Reason.KeyClick%(),Event.Reason.MouseWheel%()


//G9k Engine (Under development)
Ink.Set ,,,<B>						"Set the RGB value for one of the 256 Ink Slots."
Ink.Average%()								"Get the Ink RGB Values and averages them. Used for Ink Greyscales and Tints."
Ink.Palette0.Set 							"Copies 16 Inks starting at InkNo into Palette 0."	
Ink.Palette1.Set 							"Copies 16 Inks starting at InkNo into Palette 1."	
Ink.Palette2.Set 							"Copies 16 Inks starting at InkNo into Palette 2."	
Ink.Palette3.Set 							"Copies 16 Inks starting at InkNo into Palette 3."		
Ink.R.Get%()								"Return the 0..31 Red value for a given Ink."
Ink.G.Get%()								"Return the 0..31 Green value for a given Ink."
Ink.B.Get%()								"Return the 0..31 Blue value for a given Ink."
Fore.Camera.Pos.Set ,						"Position the Foreground Camera at x:0..16383,y:0..16383"
	;AddFuncDat "Fore.Camera.Viewport"
Fore.Camera.X.Get%()								"Returns the Foreground Camera X Position."
Fore.Camera.Y.Get%()								"Returns the Foreground Camera Y Position."
Fore.Pattern.Load%(,,	"Loads a Pattern infto Foreground area from Offset"
Back.Camera.Pos.Set ,						"Position the Background Camera at x:0..16383,y:0..16383"	
	;AddFuncDat "Back.Camera.Viewport"
Back.Camera.X.Get%()								"Returns the Background Camera X Position."
Back.Camera.Y.Get%()								"Returns the Background Camera Y Position."
Back.Pattern.Load%(,,	"Loads a Pattern into Background area from Offset"
G9K.On												"Turns on G9K."
G9K.Off												"Turns off G9K."
	;G9K.Interrupt.ON","","QUIG.G9K.INTERRUPT.ON","Quig_G9k_Interrupt_On",""
G9K.VWait											"Waits for the G9K V-Sync."
G9K.Palette.Set ,,,<B>			"Set one of the palettes 0-63 with a RGB value."
G9K.BackColour.Set 						"Set the palette used for backdrop."
G9K.Meta2MapA ,						""
G9K.TileA.Set ,				""
G9K.TileB.Set ,				""
G9K.TileA.Load%(,,)	""
G9K.TileB.Load%(,,)	""
G9K.MapA.Set ,,					""
G9K.MapB.Set ,,					""
G9K.ScrollA ,								""
G9K.ScrollB ,								""	
G9K.Display.On										"Turn on the G9K display."
G9K.Display.Off										"Turn Off the G9K display."
G9K.Sprite.Enable									"Turn on the G9K Sprites."
G9K.Sprite.Disable									"Turn Off the G9K Sprites."
G9K.Sprite.Position.Set ,,			"Set the X/Y Position of sprite 0-124."	
G9K.Sprite.Pattern.Set ,			"Set the Pattern of sprite 0-124."	
G9K.Sprite.Palette.Set ,			"Set the Palette 0-3 of sprite 0-124."		
G9K.Sprite.Refresh","","QUIG.G9K.SPRITE.REFRESH","Quig_G9K_Sprite_Refresh","Sends Sprite data to G9K."


//Form Control - indicated by [name]
[name]%()											"Form '[name]' unique value."
[name].Open											"Opens the form [name]"
[name].Close										"Closes the form [name]"			
[name].Control.Refresh								"Redraws all Controls on the form [name]."
[name].Tool.Refresh									"Redraws all Tools on the form [name]."				
[name].Menu.Refresh									"Redraws the Menu on form [name]."
[name].Status.Refresh								"Redraws the Status bar on form [name]."
[name].Title.Refresh								"Redraws the Title bar on form [name]."			
[name].Pos.Set ,					"Changes & Redraws the X & Y position of form [name]."
[name].Size.Set ,					"Changes & Redraws the Width & Height of form" +b$			
[name].Text.Set 								"Set the caption Text For form [name]."
[name].Status.Text.RSet 						"Set the status line text for form [name]."
[name].Status.Text.Set 						"Set the status line text for form [name]."			
[name].Modal.Set 							"Set the modal form the given form cannot take focus from."
[name].State%()										"Return state value of form [name] 0=closed,1=normal,2=maximized,3-minimized,+128 centered."
[name].Left.Get%()									"Get the left value of form [name]."
[name].Top.Get%()									"Get the top value of form [name]."
[name].Width.Get%()									"Get the width value of form [name]."
[name].Height.Get%()								"Get the height value of form [name]."
[name].Text.Get$()									"Get caption text of form [name]."
[name].Text.Len%()									"Get character length of caption text of form [name]."
[name].Status.Text.Get$()							"Get status text string of form [name]."
[name].Status.Text.Len%()							"Get character length of status text of form [name]."
[name].Ctrl.Count%()								"Returns the number of controls on [name] form."
[name].Ctrl.ID%()							"Returns the control ID for the display position on [name] form."
[name].ToolBar.Height%()							"Returns the control ID For the display position on [name] form."
[name].Menu.Text.Set ,				"Set Form Menu Item text to given string."
[name].Menu.Text.Get$()						"Get string result of Form Menu Item text."			
[name].Menu.Active.Get%()					"Get Int result from Form Menu Item active."			
[name].Menu.Check.Get%()						"Get Int result from Form Menu Item check."			
[name].Menu.Active.Set()					"Set then Active (0-Off, 1-On) value for Form Menu Item."			
[name].Menu.Check.Set()						"Set the Check (0-Off, 1 -On) value for Form Menu Item."			
			
			
//Frame Control - indicated bu [name]
[name]%()											"Control [name] ID handler"		
[name].Display%()									"Return display position of [name] frame control on form."
[name].Height.Get%()								"Return the height value of [name] frame control."
[name].Hidden.Set 							"Set [name] frame control to be Visible(0) or Invisible(1). Requires form redraw."				
[name].Left.Get%()									"Return the left position value of [name] frame control."		
[name].Position.Set ,					"Position [name] frame control at left & top pixel on form."			
[name].Refresh										"Redraw [name] frame control."			
[name].Size.Set ,					"Resizes the [name] frame control with pixel width & height."			
[name].Text.Set 								"Set the caption text for [name] frame control."
[name].Text.RSet 							"Set the caption Text For [name] frame control."			
[name].Text.Get$()									"Return caption text of [name] frame control."
[name].Text.Len%()									"Return character length of caption text of [name] frame control."	
[name].Top.Get%()									"Return the top position value of [name] frame control."			
[name].Type%()										"Return symbos type for [name] frame control."
[name].Width.Get%()									"Return the width value of [name] frame control."


//Button Control - indicated by [name]			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Quig_Control_Refresh","Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Text.Set									"Set the caption text for button control [name]."
[name].Text.RSet 							"Set the caption Text For button control [name] and Refresh."			
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"
[name].Left.Get%()									"Get the left value of [name] button control."
[name].Top.Get%()									"Get the top value of [name] button control"
[name].Width.Get%()									"Get the width value of [name] button control"
[name].Height.Get%()								"Get the height value of [name] button control."
[name].Text.Get$()									"Get caption text of [name] button control."
[name].Text.Len%()									"Get length of caption text of [name] button control."			
[name].Type%()										"Returns symbos type for [name] button1 control."
[name].Display%()									"Returns display position of [name] button control on form."


//Radio Control - indicated by [name]		
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Text.Set 								"Sets Text string to [name]."
[name].Text.RSet 							"Set text string to [name] and Refresh."			
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"
[name].Selected.Set									"Set the radio control [name] to be selected"
[name].Selected.Get%()								"Check if radio [name] is selected 1 or 0 not selected" 
[name].Left.Get%()									"Get the left value of [name] radio control."
[name].Top.Get%()									"Get the top value of [name] radio control."
[name].Width.Get%()									"Get the width value of [name] radio control."
[name].Height.Get%()								"Get the height value of [name] radio control."
[name].Text.Get$()									"Get caption text of [name] radio control."
[name].Text.Len%()									"Get length of caption text of [name] radio control."				
[name].Type%()										"Returns symbos type for [name] radio control."
[name].Display%()									"Returns Display position of [name] radio control on form"			
			
//Check Control - indicated by [name]			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name] check control."
[name].Position.Set ,					"Quig_Control_Setpos","Places the [name] check control at pixel left & topof form."
[name].Size.Set ,					"Sizes the [name] check control with pixel width & height."
[name].Text.Set									"Set the text string of [name] check control." 
[name].Text.RSet 							"Set the Text String of [name] check control." 			
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1. Requires form redraw."			
[name].Tick.Set 								"Set 0/1 for [name] check control ticked or not."			
[name].Colour.Set ,					"Sets the Pen & Paper colour 0-3 of [name] check control."
[name].Left.Get%()									"Get the left value of [name] check control."
[name].Top.Get%()									"Get the top value of [name]check control."
[name].Width.Get%()									"Get the width value of [name] check control."
[name].Height.Get%()								"Get the height value of [name] check control."
[name].Text.Get$()									"Get text of [name] check control."
[name].Text.Len%()									"Get character length caption text of [name] check control."
[name].Ticked%()									"Returns a boolean 0/1 for Checkbox being ticked."
[name].Paper%()										"Get the paper colour (0-3) of [name] check control."
[name].Pen%()										"Get the pen colour (0-3) of [name] check control."			
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"


//Label Control - indicated by [name]			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Colour.Set ,,			"Sets the Pen & Paper colour 0-3, and filled background toggle of Label control"
[name].Text.Set 								"Set the string text for Label control [name]."
[name].Text.RSet 							"Set the String Text For Label control [name]."			
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"			
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Text.Get$()									"Get caption text of [name]Control"
[name].Paper.Get%()									"Quig_Label_Paper_Get","Get the paper colour (0-3) of the label control"
[name].Pen.Get%()									"Get the pen colour (0-3) of the label control"
[name].Filled.Get%()								"Returns 0 or 1 depending on if the Label control's background paper is filled"
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"	


//ImgBox Control -indicated by [name]
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].RefreshArea ,,,				"Redraws and specified area of control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Hidden.Set 							"Set control [name] to be Visible-0 or Invisible-1"			
[name].Tile.Set	,					"Set the content of the image [name] to a tile on specified sheet"
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"


		Case Cntr_TextLine
//TextLine control - indicated by [name]
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Text.Set									"Set the string text for TextLine control [name]."
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"			
[name].Text.Len.Max%()								"Get the maximum character length allocated for [name] Textline control"
[name].Text.Cursor%()								"Get the position of the cursor in the [name] Textline Control"				
[name].Left.Get%()									"Get the left value of [name] Textline control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Text.Get$()									"Get caption text of [name]Control"
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"	


//TabFrame Control		
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Text.Set 								"Set the string text for specified tab 0-7 of [name]."
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"			
[name].Selected.Set 							"Sets selected tab 0-7 of [name]."
[name].Tabs%()										"Returns the number of tabs in [name]."
[name].Selected.Get%()								"Returns currently selected tab 0-7 of [name]."
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Text.Get$()									"Get text of specified tab 0-7 on [name]."
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"	


//HSpinner Control
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraw [name] hspinner control." 
[name].Position.Set ,					"Position [name] hspinner control at form origin left & top."
[name].Size.Set ,					"Resize [name] hspinner control with width & height."
[name].Hidden.Set 							"Set [name] hspinner control to be visible(0) or invisible(1)."			
[name].Value.Set 							"Set value of (0-32767) for [name] hspinner control. Must be less than Maximum."
[name].Value.Get%()									"Return value of [name] hspinner control."
[name].Max.Set 								"Set maximum value of (0-32767) for [name] hspinner control."
[name].Max.Get%()									"Return value of [name] hspinner control."			
[name].Step.Set 							"Set Step value from (0-255) for [name] hspinner control ."
[name].Step.Get%()									"Return the Step value of [name] hspinner control."			
[name].Left.Get%()									"Return the left value of [name] hspinner control."
[name].Top.Get%()									"Return the top value of [name] hspinner control."
[name].Width.Get%()									"Return the width value of [name] hspinner control."
[name].Height.Get%()								"Return the height value of [name] hspinner control."
[name].Type%()										"Return symbos type for this control [name] hspinner control."
[name].Display%()									"Return display position of [name] hspinner control of form"		


//VSpinner Control
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraw [name] vspinner control." 
[name].Position.Set ,					"Position [name] vspinner control at form origin left & top."
[name].Size.Set ,					"Resize [name] vspinner control with width & height."
[name].Hidden.Set 							"Set [name] vspinner control to be visible(0) or invisible(1)."			
[name].Value.Set 							"Set value of (0-32767) for [name] vspinner control. Must be less than Maximum."
[name].Value.Get%()									"Return value of [name] vspinner control."
[name].Max.Set 								"Set maximum value of (0-32767) for [name] vspinner control."
[name].Max.Get%()									"Return value of [name] vspinner control."			
[name].Step.Set 							"Set Step value from (0-255) for [name] vspinner control ."
[name].Step.Get%()									"Return the Step value of [name] vspinner control."			
[name].Left.Get%()									"Return the left value of [name] vspinner control."
[name].Top.Get%()									"Return the top value of [name] vspinner control."
[name].Width.Get%()									"Return the width value of [name] vspinner control."
[name].Height.Get%()								"Return the height value of [name] vspinner control."
[name].Type%()										"Return symbos type for this control [name] vspinner control."
[name].Display%()									"Return display position of [name] vspinner control of form"				


//HScroll Control			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraw [name] hscroll control." 
[name].Position.Set ,					"Position [name] hscroll control at form origin left & top."
[name].Size.Set ,					"Resize [name] hscroll control with width & height."
[name].Hidden.Set 							"Set [name] hscroll control to be visible(0) or invisible(1)."			
[name].Value.Set 							"Set value of (0-32767) for [name] hscroll control. Must be less than Maximum."
[name].Value.Get%()									"Return value of [name] hScroll control."
[name].Max.Set 								"Set maximum value of (0-32767) for [name] hscroll control."
[name].Max.Get%()									"Return value of [name] hscroll control."			
[name].Step.Set 							"Set Step value from (0-255) for [name] hscroll control ."
[name].Step.Get%()									"Return the Step value of [name] hscroll control."			
[name].Left.Get%()									"Return the left value of [name] hscroll control."
[name].Top.Get%()									"Return the top value of [name] hscroll control."
[name].Width.Get%()									"Return the width value of [name] hscroll control."
[name].Height.Get%()								"Return the height value of [name] hscroll control."
[name].Type%()										"Return symbos type for this control [name] hscroll control."
[name].Display%()									"Return display position of [name] hscroll control of form"			


//VScroll Control			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraw [name] vscroll control." 
[name].Position.Set ,					"Position [name] vscroll control at form origin left & top."
[name].Size.Set ,					"Resize [name] vscroll control with width & height."
[name].Hidden.Set 							"Set [name] vscroll control to be visible(0) or invisible(1)."			
[name].Value.Set 							"Set value of (0-32767) for [name] vscroll control. Must be less than Maximum."
[name].Value.Get%()									"Return value of [name] vScroll control."
[name].Max.Set 								"Set maximum value of (0-32767) for [name] vscroll control."
[name].Max.Get%()									"Return value of [name] vscroll control."			
[name].Step.Set 							"Set Step value from (0-255) for [name] vscroll control ."
[name].Step.Get%()									"Return the Step value of [name] vscroll control."			
[name].Left.Get%()									"Return the left value of [name] vscroll control."
[name].Top.Get%()									"Return the top value of [name] vscroll control."
[name].Width.Get%()									"Return the width value of [name] vscroll control."
[name].Height.Get%()								"Return the height value of [name] vscroll control."
[name].Type%()										"Return symbos type for this control [name] vscroll control."
[name].Display%()									"Return display position of [name] vscroll control of form"
			

//Progress Control			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"					
[name].Value.Set 							"Set Progress value between 0-255 for [name] control." 
[name].Value.Get%()									"Return value of Progress [name] between 0-255."
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"	
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"
				
				
//Paint Control			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Pen.Get%()									"Returns the Paint controls pen value 0..15"
[name].Pen.Set 								"Set the Paint controls pen value 0..15"			
[name].Palette%()									"Returns paint palette type 0=(4 Colour) / 1=(16 Colour)"			
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"				


//Box Control			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"					
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"


//CtrLabel Control
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Colour.Set ,					"Sets the Pen & Paper colour 0-15 of control [name]."
[name].Text.Set 								"Set the string text for Label control [name]."
[name].Text.RSet 							"Set the String Text For Label control [name]."			
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Text.Get$()									"Get caption text of [name]Control"
[name].Paper.Get%()									"Get the paper colour (0-15) of the control [name]."
[name].Pen.Get%()									"Get the pen colour (0-15) of the control [name]."
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"		


//Drop Control			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"			
[name].Index.Set 							""
[name].List.Set ,					"Set Text of designated line [name] list"
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Index.Get%()									"Get index of [name] control list"
[name].Columns.Get%()								"Number of columns in [name] list."				
[name].Rows.Get%()									"Current number of rows in [name] list"
[name].Rows.Max%()									"Maximum number of rows in [name] list"			
[name].Text.Get$()									"Get Text of [name] control"
[name].Text.Len%()									"Get string length of Title text of [name] drop control."
[name].List.Get$()									"Get caption Text of [name]Control"
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"
		
		
//MList Control			
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"			
[name].Title.Set ,				"Set Column title string of designated column of [name]."			
[name].Text.Set ,,			"Set text of designated column & row of [name]."				
[name].Selected.Set ,					"Set selection status (0/1) of designated row on [name] control."			
[name].Rows.Set 								"Set the number of visible rows in [name] list."			
[name].Columns.Width.Set ,			"Set the column width value of [name]Control"
[name].Columns.Align.Set ,			"Set the column alignment type value of [name]Control"			
[name].Index.Set 							"Sets selection index of [name] list."			
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Index.Get%()									"Get index line of [name] control list"
[name].Columns.Get%()								"Number of columns in [name] list."
[name].Columns.Width.Get%()				"Get the column width value of [name]Control"
[name].Columns.Align.Get%()				"Get the column alignment type (0:Left,1:Right,2:Middle) of [name]Control"			
[name].Rows.Get%()									"Current number of rows in [name] list"
[name].Rows.Max%()									"Maximum number of rows in [name] list"
[name].Selected.Get%()						"Get selection status (0/1) of designated row on [name] control."
[name].Title.Get$()						"Get column title string of [name] control."
[name].Text.Get$(,)					"Get text of designated column & row on [name] control."
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"				


//List Control
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"			
[name].List.Set ,					"Set Text of designated line [name] list"			
[name].Rows.Set									"Set the number of visible rows in [name] list."				
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Index.Get%()									"Get index line of [name] control list"
[name].Columns.Get%()								"Number of columns in [name] list."
[name].Rows.Max%()									"Maximum number of rows in [name] list"
[name].List.Get$()							"Get text of designated line on [name]."
[name].Selected%()							"Returns if the given line of a list [name] has been selected 1 or not 0"
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"		
	
			
//TextBox Control
[name]%()											"Control [name] ID handler"
[name].Refresh										"Redraws control [name]."
[name].Position.Set ,					"Places the control [name] at pixel left & top"
[name].Size.Set ,					"Sizes the control [name] with pixel width & height"
[name].Colour.Set ,,			"Sets the Pen & Paper colour 0-3, and filled background toggle of Label control"
[name].Text.Set 								"Set the String Text of [name]."
[name].ReFormat										"Reformats [name] textbox after a change."			
[name].Lines%()										"Get the number of lines used in [name] Textbox control."
[name].Lines.Max%()									"Get the maximum number of lines possible in [name] Textbox control."			
[name].Text.Len%()									"Get the character length of [name] Textbox control."			
[name].Hidden.Set 							"Sets control [name] to be Visible-0 or Invisible-1"			
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"
[name].Text.Get$()									"Get caption text of [name]Control"
[name].Paper.Get%()									"Get the paper colour (0-3) of the label control"
[name].Pen.Get%()									"Get the pen colour (0-3) of the label control"
[name].Filled.Get%()								"Returns 0 or 1 depending on if the Label control's background paper is filled"
[name].Type%()										"Returns symbos type for this control [name]."
[name].Display%()									"Returns Display position of control [name] of form"
		Case Cntr_Canvas
			AddControl(av1,bv1)
			
//Canvas Control			
[name]%()"Control [name] ID handler"
[name].Refresh										"Redraws Canvas control [name]."
[name].Back.Tile.Set 					"Set the content of the image [name] to a tile on specified sheet"			
[name].Obj.Tile.Set ,,	"Set the Object For canvas To Tile on specified Sheet."	
[name].Update										"Update the Canvas Sprites Objects"
[name].Obj.Pos.Set ,,				"Set position of the 8 Objects of a canvas control."
[name].Left.Get%()									"Get the left value of [name]Control"
[name].Top.Get%()									"Get the top value of [name]Control"
[name].Width.Get%()									"Get the width value of [name]Control"
[name].Height.Get%()								"Get the height value of [name]Control"			
[name].Obj.On 								"Turn On one of the 8 Objects of a canvas control."
[name].Obj.Off 								"Turn off one of 8 Objects of a canvas control."
[name].Obj.Left.Get%()						"Get the X value of Sprite Object on [name] Control"
[name].Obj.Top.Get%()						"Get the Y value of Sprite Object on [name] Control"			
[name].Obj.Width.Get%()						"Get the W value of Sprite Object on [name] Control"			
[name].Obj.Height.Get%()					"Get the H value of Sprite Object on [name] Control"