Commit 8efb3224 authored by Kevin Bracey's avatar Kevin Bracey

Version RO_3_71 merged

parent bb7a200a
......@@ -13,4 +13,6 @@
| limitations under the License.
|
Dir <Obey$Dir>
wimpslot -min 4000k
amu_machine install INSTDIR=<Install$Dir>.HardDisc4 COMPONENT=Boot
amu_machine install INSTDIR=<Install$Dir>.HardDisc4.Diversions.Tools COMPONENT=ResetBoot
......@@ -31,19 +31,25 @@
# - install its own !Run file (not the common one)
# 13th Feb 1995 AMcC ResetBoot - don't install_Configure
# 27th Mar 1995 AMcC Removed AKF70 from install_configure rule
#
# 16th May 1995 JRC No longer deletes ShareBoot SetupNet files: instead, there are separate
# ones for ShareBoot, ArmBoot and Boot. DOesn't remove ww access
# from everything.
# 14th Jun 1995 AMcC Added lines to remove ~CDReinit from !ArmBoot and ShareBoot
# 4th Jul 1995 JRC socket.h now in OSLib
# 7th Jul 1995 JRC Changed INSTDIR to INSTAPP, except in 1 vital place
# 1st Aug 1995 JRC Added BootVars target, for installation of BootVars in Scrap
#
# Program specific options:
#
#COMPONENT = ...
# This must be set on the command line to one of Boot, ShareBoot,
# This must be set on the command line to one of Boot, BootLib, ShareBoot,
# ArmBoot, ResetBoot. Case is important. INSTDIR must also set, as usual.
APP = !${COMPONENT}
RDIR = ${COMPONENT}
LDIR = ${RDIR}.${LOCALE}
INSTDIR = ${INSTDIR}.${APP}
RESOURCES = ${INSTDIR}.Resources
INSTAPP = ${INSTDIR}.${APP}
RESOURCES = ${INSTAPP}.Resources
VPATH = @ <Support$Dir>
......@@ -116,86 +122,95 @@ install: set_access install_${COMPONENT}
@echo ${COMPONENT}: installed (Disc)
install_Boot: install_Configure install_appfiles ${FILES}
${MKDIR} ${INSTDIR}.Choices
${CP} RO360Hook.Boot ${INSTDIR}.Choices.Boot ${CPFLAGS}
${CP} RO360Hook.Desktop ${INSTDIR}.Choices.Boot.Desktop ${CPFLAGS}
${CP} RO360Hook.PreDesktop ${INSTDIR}.Choices.Boot.PreDesktop ${CPFLAGS}
${CP} Utils ${INSTDIR}.Utils ${CPFLAGS}
${MKDIR} ${INSTDIR}.Library
${MKDIR} ${INSTAPP}.Choices
${CP} RO360Hook.Boot ${INSTAPP}.Choices.Boot ${CPFLAGS}
${CP} RO360Hook.Desktop ${INSTAPP}.Choices.Boot.Desktop ${CPFLAGS}
${CP} RO360Hook.PreDesktop ${INSTAPP}.Choices.Boot.PreDesktop ${CPFLAGS}
${CP} ^.InetSetup.Resources.<Locale>.Blanks.SetUpNet ${INSTAPP}.Choices.Boot.PreDesk.SetupNet ${CPFLAGS}
${CP} Utils ${INSTAPP}.Utils ${CPFLAGS}
${MKDIR} ${INSTAPP}.Library
@Echo Deleting superfluous files ...
${WIPE} ${INSTDIR}.Utils.NetBye ${WFLAGS}
${WIPE} ${INSTAPP}.Utils.NetBye ${WFLAGS}
install_ArmBoot: install_Configure install_appfiles ${FILES}
${MKDIR} ${INSTDIR}.Choices
${CP} RO360Hook.Boot ${INSTDIR}.Choices.Boot ${CPFLAGS}
${CP} RO360Hook.DesktopBye ${INSTDIR}.Choices.Boot.Desktop ${CPFLAGS}
${CP} RO360Hook.PreDesktop ${INSTDIR}.Choices.Boot.PreDesktop ${CPFLAGS}
${CP} Library ${INSTDIR}.Library ${CPFLAGS}
${CP} Utils ${INSTDIR}.Utils ${CPFLAGS}
${MKDIR} ${INSTAPP}.Choices
${CP} RO360Hook.Boot ${INSTAPP}.Choices.Boot ${CPFLAGS}
${CP} RO360Hook.DesktopBye ${INSTAPP}.Choices.Boot.Desktop ${CPFLAGS}
${CP} RO360Hook.PreDesktop ${INSTAPP}.Choices.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTAPP}.Choices.Boot.PreDesk.SetupNet
${CP} RO360Hook.ArmNet ${INSTAPP}.Choices.Boot.PreDesk.SetupNet.!Run ${CPFLAGS}
${CP} Library ${INSTAPP}.Library ${CPFLAGS}
${CP} Utils ${INSTAPP}.Utils ${CPFLAGS}
| RO2 machines need unmodsqz'd VProtect
${CP} rm.VProtect ${INSTDIR}.Utils.VProtect ${CPFLAGS}
${MKDIR} ${INSTDIR}.Utils.RO200Hook
${CP} RO200Hook.Boot ${INSTDIR}.Utils.RO200Hook.Boot ${CPFLAGS}
${CP} RO200Hook.DesktopBye ${INSTDIR}.Utils.RO200Hook.Boot.Desktop ${CPFLAGS}
${CP} RO200Hook.PreDesktop ${INSTDIR}.Utils.RO200Hook.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTDIR}.Utils.RO310Hook
${CP} RO310Hook.Boot ${INSTDIR}.Utils.RO310Hook.Boot ${CPFLAGS}
${CP} RO310Hook.DesktopBye ${INSTDIR}.Utils.RO310Hook.Boot.Desktop ${CPFLAGS}
${CP} RO310Hook.PreDesktop ${INSTDIR}.Utils.RO310Hook.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTDIR}.Utils.RO350Hook
${CP} RO350Hook.Boot ${INSTDIR}.Utils.RO350Hook.Boot ${CPFLAGS}
${CP} RO350Hook.DesktopBye ${INSTDIR}.Utils.RO350Hook.Boot.Desktop ${CPFLAGS}
${CP} RO350Hook.PreDesktop ${INSTDIR}.Utils.RO350Hook.Boot.PreDesktop ${CPFLAGS}
${CP} rm.VProtect ${INSTAPP}.Utils.VProtect ${CPFLAGS}
${MKDIR} ${INSTAPP}.Utils.RO200Hook
${CP} RO200Hook.Boot ${INSTAPP}.Utils.RO200Hook.Boot ${CPFLAGS}
${CP} RO200Hook.DesktopBye ${INSTAPP}.Utils.RO200Hook.Boot.Desktop ${CPFLAGS}
${CP} RO200Hook.PreDesktop ${INSTAPP}.Utils.RO200Hook.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTAPP}.Utils.RO310Hook
${CP} RO310Hook.Boot ${INSTAPP}.Utils.RO310Hook.Boot ${CPFLAGS}
${CP} RO310Hook.DesktopBye ${INSTAPP}.Utils.RO310Hook.Boot.Desktop ${CPFLAGS}
${CP} RO310Hook.PreDesktop ${INSTAPP}.Utils.RO310Hook.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTAPP}.Utils.RO350Hook
${CP} RO350Hook.Boot ${INSTAPP}.Utils.RO350Hook.Boot ${CPFLAGS}
${CP} RO350Hook.DesktopBye ${INSTAPP}.Utils.RO350Hook.Boot.Desktop ${CPFLAGS}
${CP} RO350Hook.PreDesktop ${INSTAPP}.Utils.RO350Hook.Boot.PreDesktop ${CPFLAGS}
@Echo Deleting superfluous files ...
${WIPE} ${INSTDIR}.Choices.Boot.PreDesk.SetUpNet ${WFLAGS}
${WIPE} ${INSTAPP}.Choices.Boot.Tasks.~CDReinit ${WFLAGS}
install_ShareBoot: install_Configure install_appfiles ${FILES}
${MKDIR} ${INSTDIR}.Choices
${CP} RO360Hook.Boot ${INSTDIR}.Choices.Boot ${CPFLAGS}
${CP} RO360Hook.Desktop ${INSTDIR}.Choices.Boot.Desktop ${CPFLAGS}
${CP} RO360Hook.PreDesktop ${INSTDIR}.Choices.Boot.PreDesktop ${CPFLAGS}
${CP} Library ${INSTDIR}.Library ${CPFLAGS}
${CP} Utils ${INSTDIR}.Utils ${CPFLAGS}
${MKDIR} ${INSTDIR}.Utils.RO310Hook
${CP} RO310Hook.Boot ${INSTDIR}.Utils.RO310Hook.Boot ${CPFLAGS}
${CP} RO310Hook.Desktop ${INSTDIR}.Utils.RO310Hook.Boot.Desktop ${CPFLAGS}
${CP} RO310Hook.PreDesktop ${INSTDIR}.Utils.RO310Hook.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTDIR}.Utils.RO350Hook
${CP} RO350Hook.Boot ${INSTDIR}.Utils.RO350Hook.Boot ${CPFLAGS}
${CP} RO350Hook.Desktop ${INSTDIR}.Utils.RO350Hook.Boot.Desktop ${CPFLAGS}
${CP} RO350Hook.PreDesktop ${INSTDIR}.Utils.RO350Hook.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTAPP}.Choices
${CP} RO360Hook.Boot ${INSTAPP}.Choices.Boot ${CPFLAGS}
${CP} RO360Hook.Desktop ${INSTAPP}.Choices.Boot.Desktop ${CPFLAGS}
${CP} RO360Hook.PreDesktop ${INSTAPP}.Choices.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTAPP}.Choices.Boot.PreDesk.SetupNet
${CP} RO360Hook.ShareNet ${INSTAPP}.Choices.Boot.PreDesk.SetupNet.!Run ${CPFLAGS}
${CP} Library ${INSTAPP}.Library ${CPFLAGS}
${CP} Utils ${INSTAPP}.Utils ${CPFLAGS}
${MKDIR} ${INSTAPP}.Utils.RO310Hook
${CP} RO310Hook.Boot ${INSTAPP}.Utils.RO310Hook.Boot ${CPFLAGS}
${CP} RO310Hook.Desktop ${INSTAPP}.Utils.RO310Hook.Boot.Desktop ${CPFLAGS}
${CP} RO310Hook.PreDesktop ${INSTAPP}.Utils.RO310Hook.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTAPP}.Utils.RO350Hook
${CP} RO350Hook.Boot ${INSTAPP}.Utils.RO350Hook.Boot ${CPFLAGS}
${CP} RO350Hook.Desktop ${INSTAPP}.Utils.RO350Hook.Boot.Desktop ${CPFLAGS}
${CP} RO350Hook.PreDesktop ${INSTAPP}.Utils.RO350Hook.Boot.PreDesktop ${CPFLAGS}
@Echo Deleting superfluous files ...
${WIPE} ${INSTDIR}.Choices.Boot.PreDesk.SetUpNet ${WFLAGS}
${WIPE} ${INSTDIR}.Utils.NetBye ${WFLAGS}
${WIPE} ${INSTAPP}.Choices.Boot.Tasks.~CDReinit ${WFLAGS}
${WIPE} ${INSTAPP}.Utils.NetBye ${WFLAGS}
install_ResetBoot:
${MKDIR} ${INSTDIR}
${CP} ${RDIR}.!Help ${INSTDIR}.!Help ${CPFLAGS}
${ATTR} -ol +ow ${INSTDIR}.!HelpText
Kitten Version ${LDIR}.!HelpText > ${INSTDIR}.!HelpText
${CP} ${LDIR}.!Run ${INSTDIR}.!Run ${CPFLAGS}
${CP} ${RDIR}.!RunImage ${INSTDIR}.!RunImage ${CPFLAGS}
${CP} ${LDIR}.!Sprites ${INSTDIR}.!Sprites ${CPFLAGS}
${CP} ${LDIR}.!Sprites22 ${INSTDIR}.!Sprites22 ${CPFLAGS}
${CP} ${LDIR}.Messages ${INSTDIR}.Messages ${CPFLAGS}
${MKDIR} ${INSTDIR}.Choices
${CP} RO360Hook.Boot ${INSTDIR}.Choices.Boot ${CPFLAGS}
${CP} RO360Hook.Desktop ${INSTDIR}.Choices.Boot.Desktop ${CPFLAGS}
${CP} RO360Hook.PreDesktop ${INSTDIR}.Choices.Boot.PreDesktop ${CPFLAGS}
${MKDIR} ${INSTAPP}
${CP} ${RDIR}.!Help ${INSTAPP}.!Help ${CPFLAGS}
${ATTR} -ol +ow ${INSTAPP}.!HelpText #Just in case it's already there
Kitten Version ${LDIR}.!HelpText > ${INSTAPP}.!HelpText
${CP} ${LDIR}.!Run ${INSTAPP}.!Run ${CPFLAGS}
${CP} ${RDIR}.!RunImage ${INSTAPP}.!RunImage ${CPFLAGS}
${CP} ${LDIR}.!Sprites ${INSTAPP}.!Sprites ${CPFLAGS}
${CP} ${LDIR}.!Sprites22 ${INSTAPP}.!Sprites22 ${CPFLAGS}
${CP} ${LDIR}.Messages ${INSTAPP}.Messages ${CPFLAGS}
${MKDIR} ${INSTAPP}.Choices
${CP} RO360Hook.Boot ${INSTAPP}.Choices.Boot ${CPFLAGS}
${CP} RO360Hook.Desktop ${INSTAPP}.Choices.Boot.Desktop ${CPFLAGS}
${CP} RO360Hook.PreDesktop ${INSTAPP}.Choices.Boot.PreDesktop ${CPFLAGS}
${CP} ^.InetSetup.Resources.<Locale>.Blanks.SetUpNet ${INSTAPP}.Choices.Boot.PreDesk.SetupNet ${CPFLAGS}
install_BootLib: ${FILES}
${CP} Library ${INSTDIR}.!Boot.Library ${CPFLAGS}
install_appfiles:
${MKDIR} ${INSTDIR}
${CP} ${LDIR}.!Boot ${INSTDIR}.!Boot ${CPFLAGS}
${ATTR} -ol +ow ${INSTDIR}.!Help
Kitten Version ${LDIR}.!Help > ${INSTDIR}.!Help
${CP} Source.!Run ${INSTDIR}.!Run ${CPFLAGS}
${CP} ${RDIR}.!Sprites ${INSTDIR}.!Sprites ${CPFLAGS}
${CP} ${RDIR}.!Sprites22 ${INSTDIR}.!Sprites22 ${CPFLAGS}
${MKDIR} ${INSTAPP}
${CP} ${LDIR}.!Boot ${INSTAPP}.!Boot ${CPFLAGS}
${ATTR} -ol +ow ${INSTAPP}.!Help #Just in case it's already there
Kitten Version ${LDIR}.!Help > ${INSTAPP}.!Help
${CP} Source.!Run ${INSTAPP}.!Run ${CPFLAGS}
${CP} ${RDIR}.!Sprites ${INSTAPP}.!Sprites ${CPFLAGS}
${CP} ${RDIR}.!Sprites22 ${INSTAPP}.!Sprites22 ${CPFLAGS}
install_Configure:
${MKDIR} ${INSTDIR}
${MKDIR} ${INSTDIR}.Choices
${MKDIR} ${INSTDIR}.Choices.Boot
${MKDIR} ${INSTAPP}
${MKDIR} ${INSTAPP}.Choices
${MKDIR} ${INSTAPP}.Choices.Boot
${MKDIR} ${RESOURCES}
${MKDIR} ${RESOURCES}.Configure
${MKDIR} ${RESOURCES}.Configure.Monitors
......@@ -207,13 +222,20 @@ install_Configure:
${CP} Configure.Monitors.Acorn.AKF52 ${RESOURCES}.Configure.Monitors.Acorn.AKF52 ${CPFLAGS}
${CP} Configure.Monitors.Acorn.AKF53 ${RESOURCES}.Configure.Monitors.Acorn.AKF53 ${CPFLAGS}
${CP} Configure.Monitors.Acorn.AKF60 ${RESOURCES}.Configure.Monitors.Acorn.AKF60 ${CPFLAGS}
${CP} Configure.Monitors.Acorn.AKF65 ${RESOURCES}.Configure.Monitors.Acorn.AKF65 ${CPFLAGS}
${CP} Configure.Monitors.Acorn.AKF85 ${RESOURCES}.Configure.Monitors.Acorn.AKF85 ${CPFLAGS}
${CP} Configure.Monitors.Acorn.AKF91 ${RESOURCES}.Configure.Monitors.Acorn.AKF91 ${CPFLAGS}
${CP} Configure.Monitors.Acorn.AKF92 ${RESOURCES}.Configure.Monitors.Acorn.AKF92 ${CPFLAGS}
${CP} Configure.Textures ${RESOURCES}.Configure.Textures ${CPFLAGS}
install_BootVars: Utils.BootVars
${CP} Utils.BootVars ${INSTDIR}.BootVars ${CPFLAGS}
set_access:
${ATTR} -directories +wr ${INSTDIR}
${ATTR} -files +ol +or -ow +wr -ww ${INSTDIR}
${ATTR} -files -ol +ow ${INSTDIR}.Choices
${ATTR} -directories +wr ${INSTAPP}
${ATTR} -files +ol +or -ow +wr ${INSTAPP}
${ATTR} -files -ol +ow ${INSTAPP}.Choices
# NB leave ww access as it was!!
clean:
${WIPE} Library.AddApp ${WFLAGS}
......@@ -221,7 +243,6 @@ clean:
${WIPE} Utils.BootVars ${WFLAGS}
${WIPE} Source.BootVars.o.main ${WFLAGS}
${WIPE} Source.BootVars.o.x ${WFLAGS}
${WIPE} Source.BootVars.o.socket ${WFLAGS}
${WIPE} Library.Do ${WFLAGS}
${WIPE} Library.IfThere ${WFLAGS}
${WIPE} Library.LoadCMOS ${WFLAGS}
......@@ -238,13 +259,13 @@ clean:
clean_all:
-Destroy Library.AddApp Library.AppSize Utils.BootVars \
Source.BootVars.o.main Source.BootVars.o.x Source.BootVars.o.socket Library.Do \
Source.BootVars.o.main Source.BootVars.o.x Library.Do \
Library.IfThere Library.LoadCMOS Source.LoadCMOS.o.main \
Source.LoadCMOS.o.x Library.SafeLogon Source.SafeLogon.o.main \
ClrMonitor Source.ClrMonitor.o.main Utils.FreePool Utils.VProtect \
RO350Hook.Boot.PreDesk.MemFix
${ATTR} -ol ${INSTDIR}
${WIPE} ${INSTDIR} ${WFLAGS}
${ATTR} -ol ${INSTAPP}
${WIPE} ${INSTAPP} ${WFLAGS}
#
# Static dependencies:
#
......@@ -259,9 +280,9 @@ Library.AppSize: Source.AppSize.Source.AppSize
AAsm ${AFLAGS} Source.AppSize.Source.AppSize Library.AppSize -stamp -quit
SetType Library.AppSize Utility
Utils.BootVars: Source.BootVars.o.main Source.BootVars.o.x Source.BootVars.o.socket
Utils.BootVars: Source.BootVars.o.main Source.BootVars.o.x
${LD} ${LDFLAGS} -o Utils.BootVars Source.BootVars.o.main Source.BootVars.o.x \
Source.BootVars.o.socket ${OSLIB} CLib:o.ANSILib
${OSLIB} CLib:o.ANSILib
${SQUEEZE} $@
Library.Do: Source.Do.Source.Do
......@@ -281,7 +302,7 @@ Library.SafeLogon: Source.SafeLogon.o.main
${SQUEEZE} $@
ClrMonitor: Source.ClrMonitor.o.main
${LD} ${LDFLAGS} -o $@ Source.ClrMonitor.o.main ${CLIB}
${LD} ${LDFLAGS} -o $@ Source.ClrMonitor.o.main ${OSLIB} ${CLIB}
${SQUEEZE} $@
Utils.FreePool: Source.FreePool.Source.FreePool
......@@ -301,14 +322,6 @@ Source.LoadCMOS.o.x: <Support$Dir>.c.x
Source.BootVars.o.x: <Support$Dir>.c.x
${CC} ${CFLAGS} -ff -o Source.BootVars.o.x <Support$Dir>.c.x
Source.BootVars.o.socket: <Support$Dir>.def.socket
DefMod -l -o l.socket < <Support$Dir>.def.socket
LibFile -c -o Source.BootVars.o.socket -via ViaFile
Wipe l.socket ~C~FR~V
Source.BootVars.h.socket: <Support$Dir>.def.socket
DefMod -h < <Support$Dir>.def.socket > $@
#---------------------------------------------------------------------------
# Library.AddApp: Hdr:ListOpts
# Dynamic dependencies:
......@@ -10,3 +10,7 @@
ShareBoot contains no RO{200,300}Hook since ShareFS is for RO310 or later
machines.
Library.Repeat is made from BootCmds sources and installed here.
SetupNet files now generated by SetupNet itself.
| Copyright 1997 Acorn Computers Ltd
|
| Licensed under the Apache License, Version 2.0 (the "License");
| you may not use this file except in compliance with the License.
| You may obtain a copy of the License at
|
| http://www.apache.org/licenses/LICENSE-2.0
|
| Unless required by applicable law or agreed to in writing, software
| distributed under the License is distributed on an "AS IS" BASIS,
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
| See the License for the specific language governing permissions and
| limitations under the License.
|
WimpSlot -min 128K
Run <Obey$Dir>.ROMPatch.!RunImage
/<Obey$Dir>.BandLimit 38000 76000 152000 80000
/<Obey$Dir>.SetPreDesk
/BootResources:Configure.ClrMonitor
/<PreDesk$Configure>
......@@ -13,4 +13,4 @@
| limitations under the License.
|
LoadModeFile BootResources:Configure.Monitors.Acorn.AKF60
WimpMode X800 Y600 C16
WimpMode X800 Y600 C256
| Copyright 1997 Acorn Computers Ltd
|
| Licensed under the Apache License, Version 2.0 (the "License");
| you may not use this file except in compliance with the License.
| You may obtain a copy of the License at
|
| http://www.apache.org/licenses/LICENSE-2.0
|
| Unless required by applicable law or agreed to in writing, software
| distributed under the License is distributed on an "AS IS" BASIS,
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
| See the License for the specific language governing permissions and
| limitations under the License.
|
|do nothing
......@@ -13,5 +13,5 @@
| limitations under the License.
|
/BootResources:Configure.FontChange
Backdrop -tile BootResources:Configure.Textures.T3
if "<Wimp$Font>" <> "" then /BootResources:Configure.FontChange
| Copyright 1997 Acorn Computers Ltd
|
| Licensed under the Apache License, Version 2.0 (the "License");
| you may not use this file except in compliance with the License.
| You may obtain a copy of the License at
|
| http://www.apache.org/licenses/LICENSE-2.0
|
| Unless required by applicable law or agreed to in writing, software
| distributed under the License is distributed on an "AS IS" BASIS,
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
| See the License for the specific language governing permissions and
| limitations under the License.
|
/<Obey$Dir>.BandLimit 38000 76000 152000 80000
/<Obey$Dir>.SetPreDesk
/BootResources:Configure.ClrMonitor
/<PreDesk$Configure>
New application BandLimit, introduced for 3.71,
which must support two memory speeds for nno VRAM
case (32 MHZ as before, or 64MHz EDO for fast A7000).
There is no proper install, if changed the new
!Run obey file and BandLimit app must be copied
from this directory to:
Sources.SystemRes.Boot.RO360Hook.Boot.PreDesk.Configure
/* Copyright 1997 Acorn Computers Ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* bandlimit.c */
/* Set VIDC bandlimit, being sensitive to KernelMemSpeed value.
Introduced with RISC OS 3.71, to support A7000+ with 7500FE
and 32 MHz EDO RAM */
#include <stdio.h>
#include <stdlib.h>
#include "kernel.h"
#include "swis.h"
/* range of OS version for which KernelMemSpeedAddr known valid */
#define MinOSVersion 0xa6 /* 3.6 */
#define MaxOSVersion 0xa7 /* 3.7 */
#define KernelMemSpeedAddr 0x110
int main(int argc, char *argv[])
{
int i, lim[4], osversion = 0, memspeed = 0;
char cmd[256];
if ((argc < 4) || (argc > 5))
{
/* in 1000-bytes/s: DRAM (32MHz), 1Mb VRAM, 2Mb VRAM, EDO DRAM (64 MHz) */
printf("syntax: BandLimit <bwidth> <bwidth> <bwidth> [<bwidth>]\n");
exit(1);
}
for (i=1; i<argc; i++) lim[i-1] = atoi(argv[i])*1000;
_swix(OS_Byte,_INR(0,2)|_OUT(1),129,0,255,&osversion);
/* the MemSpeed info really ought to be available via a SWI call */
if ((osversion >= MinOSVersion) && (osversion <= MaxOSVersion))
memspeed = *((int *)KernelMemSpeedAddr) & 0xffff;
/* set alias for VIDCBandLimit command, which can also be used by other code (eg. Configure) */
switch(memspeed)
{
case 32000: /* 32 MHz - A7000+, with 7500FE and EDO memory */
sprintf(cmd,"Set Alias$VIDCBandLimit VIDCBandwidthLimit %1d %1d %1d",lim[3],lim[1],lim[2]);
break;
case 16000: /* 16 MHz - Risc PC or A7000 */
default:
sprintf(cmd,"Set Alias$VIDCBandLimit VIDCBandwidthLimit %1d %1d %1d",lim[0],lim[1],lim[2]);
break;
}
_swix(OS_CLI,_IN(0),cmd);
_swix(OS_CLI,_IN(0),"VIDCBandLimit");
return 0;
}
| Copyright 1997 Acorn Computers Ltd
|
| Licensed under the Apache License, Version 2.0 (the "License");
| you may not use this file except in compliance with the License.
| You may obtain a copy of the License at
|
| http://www.apache.org/licenses/LICENSE-2.0
|
| Unless required by applicable law or agreed to in writing, software
| distributed under the License is distributed on an "AS IS" BASIS,
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
| See the License for the specific language governing permissions and
| limitations under the License.
|
dir <Obey$Dir>
cc -c -o o.BandLimit -IC: c.BandLimit
link -o U.BandLimit o.BandLimit C:o.Stubs
squeeze U.BandLimit ^.BandLimit
......@@ -19,13 +19,11 @@ LINK = Link
LIBS = OSLib:o.OSLib CLib:o.ANSILib
OBJS = o.main o.x o.socket
OBJS = o.main o.x
BootVars: ${OBJS}
${LINK} -output BootVars ${OBJS} ${LIBS}
o.main: h.socket
#General rules
.SUFFIXES: .cmhg .h .c .debug .o .oSA .Resources .s .asm .i .def
.c.o:; ${CC} ${THROWBACK} -depend !Depend -c ${ZM} -ff -o $@ $<
......
......@@ -18,7 +18,6 @@
#include <swis.h>
/*From Support*/
#include "socket.h"
#include "trace.h"
#include "x.h"
......@@ -30,6 +29,7 @@
#include "osbyte.h"
#include "osfscontrol.h"
#include "osmodule.h"
#include "socket.h"
#include "wimpreadsysinfo.h"
static void Get_Ether_DCI2 (byte id [6])
......@@ -170,27 +170,27 @@ static int Module_Version (char *module_name)
static bits Get_Inter (char *interface)
{ socket_if_conf conf;
socket_if_req reqs [8], *r, *end;
{ socket_ifconf conf;
socket_ifreq reqs [8], *r, *end;
socket_s s;
x_exception x;
bits addr = NONE;
s = socket_creat (socket_DOMAIN_INET, socket_TYPE_DGRAM, 0);
s = socket_creat (socket_AF_INET, socket_SOCK_DGRAM, 0);
x_TRY (&x)
{ conf.u AS req = reqs;
socket_ioctl (s, socket_IOCTL_SIOCGIFCONF, (byte *) &conf);
socket_ioctl (s, socket_SIOCGIFCONF, (byte *) &conf);
end = (socket_if_req *) (conf.u AS buf + conf.len);
end = (socket_ifreq *) (conf.u AS buf + conf.len);
for (r = reqs; r < end; r++)
{ socket_ioctl (s, socket_IOCTL_SIOCGIFFLAGS, (byte *) r);
{ socket_ioctl (s, socket_SIOCGIFFLAGS, (byte *) r);
if ((r->u AS flags & (socket_IF_LOOPBACK | socket_IF_BROADCAST |
socket_IF_UP)) == (socket_IF_BROADCAST | socket_IF_UP) &&
strcmp (r->name, interface) == 0)
{ socket_ioctl (s, socket_IOCTL_SIOCGIFADDR, (byte *) r);
addr = r->u AS addr.inet.addr;
{ socket_ioctl (s, socket_SIOCGIFADDR, (byte *) r);
addr = r->u AS sockaddr.sockaddr_in.addr;
break;
} } }
x_CATCH (&x)
......@@ -225,7 +225,7 @@ int main (void)
NULL, &fs);
switch (fs)
{ case osfscontrol_FS_NUMBER_NETFS:
{ case fileswitch_FS_NUMBER_NETFS:
{ byte station, net;
x_exception x;
......@@ -247,7 +247,7 @@ int main (void)
}
break;
case osfscontrol_FS_NUMBER_SHAREFS:
case fileswitch_FS_NUMBER_SHAREFS:
{ byte id [6] = {0 /*, ...*/};
char addr [13], *a;
......@@ -313,7 +313,7 @@ int main (void)
/*Don't do this more than once.*/
if (strchr (boot_dir, '$') == NULL)
{ switch (fs)
{ case osfscontrol_FS_NUMBER_NETFS:
{ case fileswitch_FS_NUMBER_NETFS:
{ char csd [os_FILE_NAME_LIMIT + 1],
disc [netfs_DISC_NAME_LIMIT + 1];
netfs_read_env read_env;
......@@ -382,7 +382,7 @@ int main (void)
}
break;
case osfscontrol_FS_NUMBER_ADFS:
case fileswitch_FS_NUMBER_ADFS:
{ int drive;
os_byte (osbyte_READ_CMOS, osbyte_CONFIGURE_DRIVE, SKIP, NULL,
......@@ -393,7 +393,7 @@ int main (void)
}
break;
case osfscontrol_FS_NUMBER_SCSIFS:
case fileswitch_FS_NUMBER_SCSIFS:
{ int drive;
os_byte (osbyte_READ_CMOS, osbyte_CONFIGURE_SCSIFS_DRIVE,
......
......@@ -43,7 +43,7 @@ int main (void)
x_TRY (&x)
{ os_read_args ("prog/a,file/a", os_get_env (NULL, NULL), (char *) &argl,
sizeof argl, NULL);
sizeof argl);
obj_type = osfile_read_stamped_no_path (argl.file, NULL, NULL, &size,
NULL, NULL);
......@@ -87,6 +87,10 @@ int main (void)
}
x_CATCH (&x)
;
/*Do not return an error - just print it out. J R C 23rd Aug 1995*/
if (x_ERROR (&x) != NULL)
fprintf (stderr, "%s\n", x_ERROR (&x)->errmess);
/*was x_EXIT (&x);*/
x_EXIT (&x);
return 0;
}
| Copyright 1997 Acorn Computers Ltd
|
| Licensed under the Apache License, Version 2.0 (the "License");
| you may not use this file except in compliance with the License.
| You may obtain a copy of the License at
|
| http://www.apache.org/licenses/LICENSE-2.0
|
| Unless required by applicable law or agreed to in writing, software
| distributed under the License is distributed on an "AS IS" BASIS,
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
| See the License for the specific language governing permissions and
| limitations under the License.
|
WimpSlot -min 128K
Run <Obey$Dir>.ROMPatch.!RunImage
| Copyright 1997 Acorn Computers Ltd
|
| Licensed under the Apache License, Version 2.0 (the "License");
| you may not use this file except in compliance with the License.
| You may obtain a copy of the License at