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.
		
		
		
		
		
			
		
			
				
					
					
						
							110 lines
						
					
					
						
							5.1 KiB
						
					
					
				
			
		
		
	
	
							110 lines
						
					
					
						
							5.1 KiB
						
					
					
				| Run file for NetSurf.
 | 
						|
|
 | 
						|
| This file ensures that the system resources required by NetSurf are 
 | 
						|
| present. Additionally, it forces setting of system variables related
 | 
						|
| to NetSurf.
 | 
						|
 | 
						|
| Set system variables and application sprites
 | 
						|
Set NetSurf$ForceVars 1
 | 
						|
/<Obey$Dir>.!Boot
 | 
						|
UnSet NetSurf$ForceVars
 | 
						|
 | 
						|
| Configure logging.  Set 1 to enable, or 0 to suppress.
 | 
						|
Set NetSurf$Logging 1
 | 
						|
 | 
						|
| Detect if NetSurf is already running and, if so, force the 
 | 
						|
| current instance to open a new window. Then stop this script.
 | 
						|
Set Alias$NetSurfRunning UnSet Alias$NetSurfRunning|mUnSet NetSurf$Running|mObey
 | 
						|
Set NetSurf$Running 0
 | 
						|
WimpSlot -min 64k -max 64k
 | 
						|
/<NetSurf$Dir>.KickNS
 | 
						|
| If not running, then unset system variables and continue
 | 
						|
If "<NetSurf$Running>" = "0" Then Set Alias$NetSurfRunning UnSet Alias$NetSurfRunning|mUnSet NetSurf$Running
 | 
						|
| Invoke our alias to clean up
 | 
						|
NetSurfRunning
 | 
						|
 | 
						|
| Resource Locations
 | 
						|
| The following are read-only locations
 | 
						|
SetMacro NetSurf$Path        Choices:WWW.NetSurf.,<NetSurf$Dir>.
 | 
						|
| The following are write-only locations
 | 
						|
SetMacro NetSurf$ChoicesSave <Choices$Write>.WWW.NetSurf.Choices
 | 
						|
 | 
						|
| We need RISC OS 3
 | 
						|
RMEnsure UtilityModule 3.00 Error NetSurf needs RISC OS 3 or later
 | 
						|
 | 
						|
| Ensure Nested WIMP is installed
 | 
						|
| http://acorn.riscos.com/ (in the universal boot archive)
 | 
						|
RMEnsure WindowManager 3.80 Error NetSurf requires the Nested Window Manager. This can be obtained by downloading the Universal Boot sequence from http://acorn.riscos.com/
 | 
						|
 | 
						|
| Check for various key resources - can't do much if they don't exist
 | 
						|
If "<System$Path>" = "" Then Set System$Path_Message System resources not found.
 | 
						|
If "<Wimp$ScrapDir>" = "" Then Error Scrap resource not found.
 | 
						|
If "<InetDBase$Path>" = "" Then Error Internet resources can not be found
 | 
						|
If "<Unicode$Path>" = "" Then Error NetSurf requires the !Unicode resource. This can be found, along with the Iconv module, at http://www.netsurf-browser.org/projects/iconv/
 | 
						|
If "<Inet$MimeMappings>" = "" Then Set Inet$MimeMappings InetDBase:MimeMap
 | 
						|
 | 
						|
| Define this alias for clarity
 | 
						|
| Syntax: NetSurfRMLoad <Path to module>
 | 
						|
Set Alias$NetSurfRMLoad IfThere %%*0 Then RMLoad %%*0
 | 
						|
 | 
						|
| Ensure a 32bit SharedCLibrary is installed
 | 
						|
| (5.17 == first 32bit SCL, 5.43 == C99 features)
 | 
						|
RMEnsure SharedCLibrary 5.17 NetSurfRMLoad System:Modules.CLib
 | 
						|
RMEnsure SharedCLibrary 5.43 Error NetSurf requires SharedCLibrary 5.43 or later. This can be downloaded from https://www.riscosopen.org/content/downloads/common
 | 
						|
 | 
						|
| Ensure CallASWI is installed
 | 
						|
RMEnsure UtilityModule 3.70 RMEnsure CallASWI 0.02 NetSurfRMLoad System:Modules.CallASWI
 | 
						|
RMEnsure UtilityModule 3.70 RMEnsure CallASWI 0.02 Error NetSurf requires the CallASWI module. This can be downloaded from https://www.riscosopen.org/content/downloads/common
 | 
						|
 | 
						|
| Ensure DrawFile module is installed
 | 
						|
| Should be installed in !System.310.Modules
 | 
						|
RMEnsure DrawFile 1.30 NetSurfRMLoad System:Modules.DrawFile
 | 
						|
RMEnsure DrawFile 1.30 Error NetSurf requires the DrawFile module. This can be downloaded from https://www.riscosopen.org/content/downloads/common
 | 
						|
 | 
						|
| Ensure SharedUnixLibrary is installed
 | 
						|
RMEnsure SharedUnixLibrary 1.07 NetSurfRMLoad System:Modules.SharedULib
 | 
						|
RMEnsure SharedUnixLibrary 1.07 Error NetSurf requires SharedUnixLibrary 1.07 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
 | 
						|
 | 
						|
| Load AcornURI if it isn't already
 | 
						|
Unset NetSurf$Start_URI_Handler
 | 
						|
RMEnsure AcornURI 0.12 Set NetSurf$Start_URI_Handler 1
 | 
						|
RMEnsure AcornURI 0.12 NetSurfRMLoad System:Modules.Network.URI
 | 
						|
RMEnsure AcornURI 0.12 Error NetSurf requires AcornURI 0.12 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
 | 
						|
RMEnsure AcornURI 0.12 Unset NetSurf$Start_URI_Handler
 | 
						|
 | 
						|
| Check for mime map module
 | 
						|
RMEnsure MimeMap 0.10 NetSurfRMLoad System:Modules.Network.MimeMap
 | 
						|
RMEnsure MimeMap 0.10 Error NetSurf requires MimeMap 0.10 or later
 | 
						|
 | 
						|
| Ensure Tinct is loaded
 | 
						|
RMEnsure Tinct 0.13 NetSurfRMLoad System:Modules.Tinct
 | 
						|
RMEnsure Tinct 0.13 Error NetSurf requires Tinct 0.13 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
 | 
						|
 | 
						|
| Ensure Iconv
 | 
						|
RMEnsure Iconv 0.12 NetSurfRMLoad System:Modules.Iconv
 | 
						|
RMEnsure Iconv 0.12 Error NetSurf requires Iconv 0.12 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
 | 
						|
 | 
						|
| Ensure CryptRandom
 | 
						|
RMEnsure CryptRandom 0.13 NetSurfRMLoad System:Modules.CryptRand
 | 
						|
RMEnsure CryptRandom 0.13 Error NetSurf requires CryptRandom 0.13 or later.  Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
 | 
						|
 | 
						|
| Disable SpecialFX, if present
 | 
						|
Set NetSurf$SpecialFX 1
 | 
						|
RMEnsure SpecialFX 1.00 Set NetSurf$SpecialFX 0
 | 
						|
If <NetSurf$SpecialFX> Then SpecialFX ~B~G~L NetSurf
 | 
						|
Unset NetSurf$SpecialFX
 | 
						|
 | 
						|
| No longer need this alias
 | 
						|
Unset Alias$NetSurfRMLoad
 | 
						|
 | 
						|
| Now attempt to create Scrap directories
 | 
						|
CDir <Wimp$ScrapDir>.WWW
 | 
						|
CDir <Wimp$ScrapDir>.WWW.NetSurf
 | 
						|
 | 
						|
| Install NetSurf-specific fonts
 | 
						|
| NB: trailing dot is required
 | 
						|
FontInstall NetSurf:Resources.Fonts.
 | 
						|
 | 
						|
WIMPSLOT
 | 
						|
Run <NetSurf$Dir>.!RunImage %*0 2><Wimp$ScrapDir>.WWW.NetSurf.Log
 |