You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							89 lines
						
					
					
						
							4.2 KiB
						
					
					
				
			
		
		
	
	
							89 lines
						
					
					
						
							4.2 KiB
						
					
					
				| Boot file for NetSurf. ( $Revision$ )
 | 
						|
|
 | 
						|
| This file sets up various system variables which NetSurf may use.
 | 
						|
| Additionally, it places the NetSurf application sprites into the Wimp
 | 
						|
| sprite pool.
 | 
						|
|
 | 
						|
| This file may be executed in two ways:
 | 
						|
|   1. When NetSurf is first seen by the OS.
 | 
						|
|   2. When NetSurf is run by the user (called from the !Run file).
 | 
						|
| In the first instance, NetSurf-specific variables are set and non
 | 
						|
| NetSurf-specific variables which are unset are initialised.
 | 
						|
| In the second instance, all variables are set, irrespective of their
 | 
						|
| previous state. This is achieved by use of the NetSurf$ForceVars 
 | 
						|
| variable, which is set by the !Run file prior to calling this file.
 | 
						|
 | 
						|
| Set up NetSurf$Dir
 | 
						|
If (("<NetSurf$Dir>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then Set NetSurf$Dir <Obey$Dir>
 | 
						|
 | 
						|
| Filetype -> Type name mappings
 | 
						|
|
 | 
						|
| These get set whether they were previously set or not
 | 
						|
Set File$Type_132 ICO
 | 
						|
Set File$Type_695 GIF
 | 
						|
Set File$Type_69C BMP
 | 
						|
Set File$Type_AAD SVG
 | 
						|
Set File$Type_ADF PDF
 | 
						|
Set File$Type_B28 URL
 | 
						|
Set File$Type_B60 PNG
 | 
						|
Set File$Type_C85 JPEG
 | 
						|
Set File$Type_F78 JNG
 | 
						|
Set File$Type_F79 CSS
 | 
						|
Set File$Type_F81 JSScript
 | 
						|
Set File$Type_F83 MNG
 | 
						|
Set File$Type_F91 URI
 | 
						|
Set File$Type_FAF HTML
 | 
						|
 | 
						|
| Application system variables
 | 
						|
If (("<NetSurf$Help>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then Set NetSurf$Help <NetSurf$Dir>.Docs.docs_en
 | 
						|
If (("<NetSurf$Web>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then Set NetSurf$Web "https://www.netsurf-browser.org/"
 | 
						|
If (("<NetSurf$Title>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then Set NetSurf$Title "NetSurf"
 | 
						|
If (("<NetSurf$Publisher>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then Set NetSurf$Publisher "The NetSurf Developers"
 | 
						|
If (("<NetSurf$Description>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then Set NetSurf$Description "Web browser"
 | 
						|
 | 
						|
| NetSurf Sprites
 | 
						|
Set NetSurf$Sprites "!Sprites"
 | 
						|
/<NetSurf$Dir>.ChkSprites
 | 
						|
IconSprites <NetSurf$Dir>.<NetSurf$Sprites>
 | 
						|
Unset NetSurf$Sprites
 | 
						|
 | 
						|
| Acorn URI protocol
 | 
						|
|
 | 
						|
| Format: Alias$Open_URI_<scheme> <command to run>
 | 
						|
|
 | 
						|
| These are basically a last resort. The URI module will initially broadcast
 | 
						|
| Message_URI_MProcess. If this isn't claimed, then it'll check if an 
 | 
						|
| appropriate Alias$Open_URI_<scheme> variable is set. If such a variable 
 | 
						|
| exists, then it will attempt to launch the task named by the variable. 
 | 
						|
| If the launch is successful, the Message_URI_MProcess is rebroadcast.
 | 
						|
| The -nowin is required to ensure only one window is opened (this only has
 | 
						|
| an effect if the user has configured auto window opening at startup).
 | 
						|
If (("<Alias$Open_URI_http>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then      Set Alias$Open_URI_http /<NetSurf$Dir>.!Run -nowin
 | 
						|
If (("<Alias$Open_URI_https>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then     Set Alias$Open_URI_https /<NetSurf$Dir>.!Run -nowin
 | 
						|
If (("<Alias$Open_URI_file>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then      Set Alias$Open_URI_file /<NetSurf$Dir>.!Run -nowin
 | 
						|
 | 
						|
| ANT URL protocol
 | 
						|
|
 | 
						|
| Format: Alias$URLOpen_<scheme> <command to run>
 | 
						|
|
 | 
						|
| These handle the "load" stage of the protocol. The appropriate variable's
 | 
						|
| existence is checked then, if it is present, the URL to be opened is
 | 
						|
| appended to the string "URLOpen_<scheme> " and this is then fed to
 | 
						|
| Wimp_StartTask.
 | 
						|
If (("<Alias$URLOpen_http>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then       Set Alias$URLOpen_http /<NetSurf$Dir>.!Run -url %%*0
 | 
						|
If (("<Alias$URLOpen_https>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then      Set Alias$URLOpen_https /<NetSurf$Dir>.!Run -url %%*0
 | 
						|
If (("<Alias$URLOpen_file>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then       Set Alias$URLOpen_file /<NetSurf$Dir>.!Run -url %%*0
 | 
						|
 | 
						|
| Claim HTML and URL files
 | 
						|
|
 | 
						|
| Format: Alias$@RunType_<hex> <command to run>
 | 
						|
|
 | 
						|
| Again, a fallback. The filer initially tries a DataOpen message. If that
 | 
						|
| bounces, it looks at these variables.
 | 
						|
If (("<Alias$@RunType_FAF>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then       Set Alias$@RunType_FAF /<NetSurf$Dir>.!Run -html %%*0
 | 
						|
If (("<Alias$@RunType_B28>" = "") OR ("<NetSurf$ForceVars>" = "1")) Then       Set Alias$@RunType_B28 /<NetSurf$Dir>.!Run -urlf %%*0
 | 
						|
 | 
						|
| We don't claim the URI filetype as the spec tells us not to:
 | 
						|
| "Applications must not set an Alias$@RunType variable for the URI filetype"
 | 
						|
| Obviously this means that Browse/Phoenix and the Oreganos are incorrect.
 |