Commit 8dff8d8e authored by Stewart Brodie's avatar Stewart Brodie
Browse files

Updated build structure to use the shared AAsmModule makefile.

  Updated to build using objasm instead of aasm.
  Sources changed to be objasm-compatible.
Admin:
  Requires Library 0.72 or later.
  Requires BuildSys 3.09 or later.
  Requires Env 0.65 or later.

Version 2.13. Tagged as 'Hourglass-2_13'
parent c7d42758
......@@ -22,73 +22,12 @@
# 25-May-94 AMcC Created.
#
#
# Paths
#
EXP_HDR = <export$dir>
#
# Generic options:
#
MKDIR = cdir
AS = aasm
CP = copy
RM = remove
CCFLAGS = -c -depend !Depend -IC:
ASFLAGS = -depend !Depend -Stamp -quit -module
CPFLAGS = ~cfr~v
#
# Program specific options:
#
COMPONENT = Hourglass
SOURCE = NewOS
TARGET = rm.Hourglass
EXPORTS = ${EXP_HDR}.${COMPONENT}
SOURCE200 = OldOS
TARGET200 = rm.Hourgls200
#
# Generic rules:
#
rom: ${TARGET}
@echo ${COMPONENT}: rom module built
export: ${EXPORTS}
@echo ${COMPONENT}: export complete
install_rom: ${TARGET}
${CP} ${TARGET} ${INSTDIR}.${COMPONENT} ${CPFLAGS}
@echo ${COMPONENT}: rom module installed
clean:
${RM} ${TARGET}
${RM} ${TARGET200}
@echo ${COMPONENT}: cleaned
${TARGET}: ${SOURCE}
${AS} ${ASFLAGS} -From ${SOURCE} -To $@
${EXP_HDR}.${COMPONENT}: hdr.${COMPONENT}
${CP} hdr.${COMPONENT} $@ ${CPFLAGS}
#
# Extra Development rules:
#
install: ${TARGET}
Access ${TARGET200} R/r
Access ${TARGET} R/r
${CP} ${TARGET} ${INSTDIR}.${COMPONENT} ${CPFLAGS}
@echo ${COMPONENT}: ${TARGET} installed
${TARGET200}: ${SOURCE200}
${AS} ${ASFLAGS} -From ${SOURCE200} -To $@
maketime:
MakeTime
COMPONENT = Hourglass
HEADER1 = Hourglass
ROM_SOURCE = Module.s
RESOURCES = no
version:
Version
include StdTools
include AAsmModule
# Dynamic dependencies:
......@@ -14,3 +14,4 @@
|
Dir <Obey$Dir>
amu_machine clean
stripdepnd Makefile
| Copyright 1996 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>
amu maketime
amu rm.Hourglass
echo all done
| Copyright 1996 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>
amu maketime
amu oldversion
| Copyright 1996 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>
amu version
amu maketime
amu rm.Hourgls200
amu rm.Hourglass
amu install INSTDIR=scsi::Rikki.$.RM
echo all done
TTL ==> &.Arthur.Hourglass.NewOS
GBLL OldOs
OldOs SETL {FALSE}
LNK s.Module
TTL ==> &.Arthur.Hourglass.OldOS
GBLL OldOs
OldOs SETL {TRUE}
LNK s.Module
SUBT => Time+Date
GBLS CurrentDate
GBLS CurrentTime
GBLS CurrentVersion
GBLS CurrentIteration
GBLL ReleaseVersion
CurrentDate SETS "12 May 2000"
CurrentTime SETS "13:44:33"
CurrentVersion SETS "12"
CurrentIteration SETS "0000"
ReleaseVersion SETL True
END
;
; This file is automatically maintained by srccommit, do not edit manually.
;
GBLS Module_MajorVersion
GBLA Module_Version
GBLS Module_MinorVersion
GBLS Module_Date
GBLS Module_FullVersion
GBLS Module_ApplicationDate2
GBLS Module_ApplicationDate4
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "2.13"
Module_Version SETA 213
Module_MinorVersion SETS ""
Module_Date SETS "23 Mar 2001"
Module_ApplicationDate2 SETS "23-Mar-01"
Module_ApplicationDate4 SETS "23-Mar-2001"
Module_ComponentName SETS "Hourglass"
Module_ComponentPath SETS "RiscOS/Sources/Video/Render/Hourglass"
Module_FullVersion SETS "2.13"
Module_HelpVersion SETS "2.13 (23 Mar 2001)"
END
/* (2.13)
*
* This file is automatically maintained by srccommit, do not edit manually.
*
*/
#define Module_MajorVersion_CMHG 2.13
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 23 Mar 2001
#define Module_MajorVersion "2.13"
#define Module_Version 213
#define Module_MinorVersion ""
#define Module_Date "23 Mar 2001"
#define Module_ApplicationDate2 "23-Mar-01"
#define Module_ApplicationDate4 "23-Mar-2001"
#define Module_ComponentName "Hourglass"
#define Module_ComponentPath "RiscOS/Sources/Video/Render/Hourglass"
#define Module_FullVersion "2.13"
#define Module_HelpVersion "2.13 (23 Mar 2001)"
......@@ -14,6 +14,8 @@
;
; > &.Hourglass.Hourglass
AREA |Hourglass$$Code|, CODE, READONLY, PIC
GET Hdr:ListOpts
GET Hdr:Macros
GET Hdr:System
......@@ -21,14 +23,19 @@
GET Hdr:Services
GET Hdr:Hourglass
GET Hdr:MsgTrans
; GET Hdr:EcoMacros
GET Hdr:FSNumbers
GET Hdr:NewErrors
GET Time+Date
GET VersionASM
bignum * &3FFFFFFF ; A large number to put into PercentageDepth
; RISC OS 2 compatibility
[ :LNOT: :DEF: OldOs
GBLL OldOs
OldOs SETL {FALSE}
]
; The constants defining the hourglass shape and position
HgX * 4
......@@ -145,26 +152,8 @@ TitleString
DCB "Colours", 0
DCB 0
GBLS OsString
[ OldOs
OsString SETS " (2.00)"
|
OsString SETS ""
]
HelpString
DCB "Hourglass", 9, "2.", CurrentVersion
[ ReleaseVersion
! 0, "Assembling Hourglass 2.$CurrentVersion$OsString"
|
DCB "/", CurrentIteration
! 0, "Assembling Hourglass 2.$CurrentVersion/$CurrentIteration$OsString"
]
DCB " (", CurrentDate, ")"
[ :LNOT: ReleaseVersion
DCB " assembled at ", CurrentTime, "."
]
DCB "$OsString", 0
DCB "Hourglass", 9, "$Module_HelpVersion", 0
ALIGN
FlagsTable
......@@ -516,11 +505,8 @@ HourglassColours
STRNE r0, NewColour1 ; Put down the new value
CMP r1, #-1 ; Are we changing this colour(3)?
STRNE r1, NewColour3 ; Put down the new value
MOV r0, #0
mrs ,r0, CPSR
TST r0, #2_11100
Pull "r0, r1, pc",EQ,^ ; Return with V clear (26-bit)
CMP r0, r0
CMP pc, pc ; clears V in 32-bit modes, sets Z if in 32-bit mode
Pull "r0, r1, pc",NE,^ ; Return with V clear (26-bit)
Pull "r0, r1, pc" ; Return with V clear (32-bit)
; *****************************************************************************
......@@ -541,16 +527,7 @@ MyTickRoutine ROUT
STRCS r14, HourglassTimer ; if wasn't zero before, store back
BNE ExitTickRoutine ; exit if not zero now
Push "r0-r6"
[ No32bitCode
MOV r6, pc
TEQP pc, #3 ; must be SVC mode here, Enables Ints
NOP
|
mrs ,r6, CPSR
BIC r0, r6, #I32_bit+F32_bit ; enable interrupts
ORR r0, r0, #SVC_mode ; into SVC26/32
msr ,CPSR_c, r0
]
WritePSRc SVC_mode,r0,,r6
Push r14 ; save SVC r14
LDRB r0, PointerDirty ; if pointer shape needs setting up
TEQ r0, #0
......@@ -560,12 +537,7 @@ MyTickRoutine ROUT
BL SetupLEDs
BL ProgramPointer ; and show the world
Pull r14 ; restore SVC r14
[ No32bitCode
TEQP r6, #0 ; restore the mode
NOP
|
msr ,CPSR_c, r6
]
RestPSR r6,,c ; restore the mode
Pull "r0-r6"
ExitTickRoutine
MOV r14, #0
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment