diff options
Diffstat (limited to 'frontends/riscos/scripts/Run')
-rw-r--r-- | frontends/riscos/scripts/Run | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/frontends/riscos/scripts/Run b/frontends/riscos/scripts/Run new file mode 100644 index 000000000..4a51d7838 --- /dev/null +++ b/frontends/riscos/scripts/Run @@ -0,0 +1,109 @@ +| 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 |