Commit 8cfe216b authored by Robert Sprowson's avatar Robert Sprowson
Browse files

Resolve 2x header clashes

hdr/AHCIDevice:
  Remove this, since it clashes with the (differing API version number) copy exported by SATADriver. Post merging the Kernel back to the trunk the newer file datestamp has meant the wrong one gets exported during any ROM build which includes both components. Since the Kernel doesn't need AHCIDevice itself, it is left to the respective client (SATADriver or AHCIDriver in this case) to export them.
hdr/ModHand:
  Resolve the longstanding clash of Module_Title with the same named symbol that CMHG uses. There are very few assembler needing to look at the module header (Kernel, FileCore, Debugger, Podule) directly, but every C module which uses CMHG and wants one of the ModHandReason values ends up with a duplicate define.
  Obsolete Arthur era Module_LoadAddr value.
ArthurSWIs.s/MoreComms.s/NewReset.s/SWINaming.s/SysComms.s/Utility.s:
  Module_Title->Module_TitleStr.
ModHand.s:
  Module_Title->Module_TitleStr.
  Recode Module_LoadAddr using the file type from Hdr:FileTypes.
GetAlls.s:
  Drop unused NVRAM and PortMan headers. Add Hdr:FileTypes.

Version 5.54. Tagged as 'Kernel-5_54'
parent cf929f7e
......@@ -32,7 +32,6 @@ ASFLAGS += -PD "FreezeDevRel SETL {${FREEZE_DEV_REL}}"
CUSTOMROM = custom
CUSTOMEXP = custom
EXPORTS = ${EXP_HDR}.EnvNumbers \
${EXP_HDR}.AHCIDevice \
${EXP_HDR}.EtherDevice \
${EXP_HDR}.HALDevice \
${EXP_HDR}.HALEntries \
......@@ -104,9 +103,6 @@ ${EXP_HDR}.EnvNumbers: hdr.EnvNumbers
${EXP_HDR}.SPIDevice: hdr.SPIDevice
${CP} hdr.SPIDevice $@ ${CPFLAGS}
${EXP_HDR}.AHCIDevice: hdr.AHCIDevice
${CP} hdr.AHCIDevice $@ ${CPFLAGS}
${EXP_HDR}.EtherDevice: hdr.EtherDevice
${CP} hdr.EtherDevice $@ ${CPFLAGS}
......
......@@ -11,13 +11,13 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "5.53"
Module_Version SETA 553
Module_MajorVersion SETS "5.54"
Module_Version SETA 554
Module_MinorVersion SETS ""
Module_Date SETS "15 Jul 2016"
Module_ApplicationDate SETS "15-Jul-16"
Module_Date SETS "24 Jul 2016"
Module_ApplicationDate SETS "24-Jul-16"
Module_ComponentName SETS "Kernel"
Module_ComponentPath SETS "castle/RiscOS/Sources/Kernel"
Module_FullVersion SETS "5.53"
Module_HelpVersion SETS "5.53 (15 Jul 2016)"
Module_FullVersion SETS "5.54"
Module_HelpVersion SETS "5.54 (24 Jul 2016)"
END
/* (5.53)
/* (5.54)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 5.53
#define Module_MajorVersion_CMHG 5.54
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 15 Jul 2016
#define Module_Date_CMHG 24 Jul 2016
#define Module_MajorVersion "5.53"
#define Module_Version 553
#define Module_MajorVersion "5.54"
#define Module_Version 554
#define Module_MinorVersion ""
#define Module_Date "15 Jul 2016"
#define Module_Date "24 Jul 2016"
#define Module_ApplicationDate "15-Jul-16"
#define Module_ApplicationDate "24-Jul-16"
#define Module_ComponentName "Kernel"
#define Module_ComponentPath "castle/RiscOS/Sources/Kernel"
#define Module_FullVersion "5.53"
#define Module_HelpVersion "5.53 (15 Jul 2016)"
#define Module_LibraryVersionInfo "5:53"
#define Module_FullVersion "5.54"
#define Module_HelpVersion "5.54 (24 Jul 2016)"
#define Module_LibraryVersionInfo "5:54"
; Copyright 2015 Castle Technology 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.
;
[ :LNOT: :DEF: __HAL_AHCIDevice_HDR__
GBLL __HAL_AHCIDevice_HDR__
; Define a HAL device to let the HAL pass addresses to modules
GET Hdr:HALDevice
^ 0
HALDevice_AHCI # HALDeviceSize
HALDevice_AHCIClock # 4
HALDevice_AHCI_Size * :INDEX: @
] ; __HAL_AHCIDevice_HDR__
END
......@@ -71,7 +71,7 @@ Module_Start # 4
Module_Init # 4
Module_Die # 4
Module_Service # 4
Module_Title # 4
Module_TitleStr # 4
Module_HelpStr # 4
Module_HC_Table # 4 ; help and command table.
......@@ -90,12 +90,6 @@ Module_FlagTable # 4
; flags for the first word of the flags table
ModuleFlag_32bit * 1 :SHL: 0
; Magic number for RM load addr
Module_LoadAddr * &FFFFFA00 ; magic number from Stu/Bruce standard :
; the two zeroes are ignored.
; &FFFFFE00 on Proto-Arfur < .032
Module_SWIChunkSize * 2_1000000
; flags for the information word :
......
......@@ -1035,7 +1035,7 @@ display_pre_postinit_calls
SWI XOS_WriteS
= "postinit service call to mod ",0
Push "r0-r7"
LDR R0, [R9, #Module_Title]
LDR R0, [R9, #Module_TitleStr]
ADD R0, R9, R0
SWI XOS_Write0
SWI XOS_WriteS
......
......@@ -72,9 +72,8 @@
GET Hdr:Wimp
GET Hdr:ColourTran
GET Hdr:Debug
GET Hdr:NVRAM
GET Hdr:FileTypes
GET Hdr:RTC
GET Hdr:PortMan
GET Hdr:SerialOp
GET Hdr:Keyboard
GET Hdr:OSMisc
......
......@@ -128,7 +128,7 @@ ModuleInit Entry "r0-r12" ; call here on system st
TEQ r7, #0 ; if zero
BEQ %FT20 ; then no more main rom modules
LDR r4, [r6, #Module_Title] ; r4 = offset to module name
LDR r4, [r6, #Module_TitleStr] ; r4 = offset to module name
ADD r4, r6, r4 ; r4 -> module name
LDR r5, [r6, #Module_HelpStr] ; r5 = help offset
TEQ r5, #0 ; if no help string
......@@ -606,7 +606,7 @@ EnterIt
MOV R1, R10
MOV R0, #FSControl_StartApplication
MOV R2, R9
LDR R3, [R9, #Module_Title] ; prefix with module title
LDR R3, [R9, #Module_TitleStr] ; prefix with module title
ADD R3, R3, R9
SWI XOS_FSControl
......@@ -815,7 +815,7 @@ Module_CopyArea ROUT
MOV R10, R1
LDR R1, [R10, #Module_Title]
LDR R1, [R10, #Module_TitleStr]
ADD R1, R1, R10
BL LookUp_Module ; check for duplicate
BLNE KillAndFree
......@@ -1325,8 +1325,8 @@ Load_Module ROUT
CMP r0, #object_file
BNE HeNotFile
BIC R2, R2, #&FF ; low byte ignored by me.
CMP R2, #Module_LoadAddr
MOV R2, R2, ASR #8 ; low byte ignored by me.
CMP R2, #&FFFFF000 :OR: FileType_Module
BNE NotAModule
; it's a module, so try and claim.
......@@ -1352,7 +1352,7 @@ Load_Module ROUT
; now we've got it, see if any other modules have the same name.
LDR R1, [R9, #Module_Title]
LDR R1, [R9, #Module_TitleStr]
ADD R1, R1, R9
BL LookUp_Module
BEQ %FT01 ; no module at all
......@@ -1801,7 +1801,7 @@ CheckHeader ROUT
BL %FT11
LDR R3, [R1, #Module_HelpStr]
BL %FT11
LDR R3, [R1, #Module_Title]
LDR R3, [R1, #Module_TitleStr]
BL %FT11
LDR R3, [R1, #Module_Service]
BL %FT10
......@@ -1854,7 +1854,7 @@ CheckHeader ROUT
ADR R0, ErrorBlock_RMNot32bit
[ International
MOV R3, R4
LDR R4, [R1, #Module_Title]
LDR R4, [R1, #Module_TitleStr]
ADD R4, R1, R4
BL TranslateError_UseR4
MOV R4, R3
......@@ -2941,7 +2941,7 @@ LookUp_Module ROUT
CMP R0, #0
Pull "R4, R5, PC", EQ ; return if not found
LDR R4, [R0, #Module_code_pointer]
LDR R3, [R4, #Module_Title]
LDR R3, [R4, #Module_TitleStr]
ADD R3, R3, R4 ; got ptr to title
MOV R4, #Postfix_Separator ; allowed terminator for StrCmp
BL Module_StrCmp ; compare with abbreviation.
......@@ -3407,7 +3407,7 @@ IssueServicePostInit
ADD R0, R2, R0
BL GetVerNoFromHelpString
MOV R0, R2
LDR R2, [R0, #Module_Title]
LDR R2, [R0, #Module_TitleStr]
ADD R2, R0, R2
MOV R4, R1
MOV R1, #Service_ModulePostInit
......@@ -3437,7 +3437,7 @@ IssueServicePostFinal
ADD R0, R2, R0
BL GetVerNoFromHelpString
MOV R0, R2
LDR R2, [R0, #Module_Title]
LDR R2, [R0, #Module_TitleStr]
ADD R2, R0, R2
MOV R4, R1
MOV R1, #Service_ModulePostFinal
......
......@@ -541,7 +541,7 @@ BuildRMEnsureError
Pull pc
10 ADR r0, ErrorBlock_ModuleTooOld
[ International
LDR r4,[r3, #Module_Title]
LDR r4,[r3, #Module_TitleStr]
ADD r4,r4,r3
BL TranslateError_UseR4 ; => V set
Pull pc
......@@ -553,7 +553,7 @@ BuildRMEnsureError
BL rmecopystr
MOV r6, r0
LDR r2, [r3, #Module_Title] ; r3 still module pointer
LDR r2, [r3, #Module_TitleStr] ; r3 still module pointer
ADD r0, r2, r3
BL rmecopystr
MOV r0, r6
......
......@@ -1039,7 +1039,7 @@ HorologicalDelayLoop2
MOV R2, #0 ; preferred incarnation
SWI XOS_Module
ADRVSL R3, UtilityMod
LDR R2, [R3, #Module_Title]
LDR R2, [R3, #Module_TitleStr]
CMP R2, #0
ADDNE R1, R3, R2
DoStartSuper
......
......@@ -362,7 +362,7 @@ dont_confuse_the_poor_dears
B ExitSwiSwi
usethemoduletitle
LDR r10, [r9, #Module_Title]
LDR r10, [r9, #Module_TitleStr]
ADD r11, r10, r9
Pull "r9, r12"
BL AddString
......@@ -572,7 +572,7 @@ gotmodulejobbie
; check against module title
30
LDR r11, [r10, #Module_Title]
LDR r11, [r10, #Module_TitleStr]
ADD r11, r10, r11
Push r10
MOV r10, #1 ; indicate only check for prefix_numeric
......
......@@ -292,7 +292,7 @@ tamn_loop
BVS %FT02
LDR r0, [stack] ; kword ptr
Push "r1, r2"
LDR r4, [r3, #Module_Title]
LDR r4, [r3, #Module_TitleStr]
CMP r4, #0
BEQ tamn_notit
ADD r4, r4, r3
......@@ -364,7 +364,7 @@ ModuleJackanory ROUT ; give summary of info in module @ r3
CheckSpaceOnStack HelpBufferSize+256, modjack_noroom, r6
SUB stack, stack, #HelpBufferSize
MOV r2, r3
LDR r3, [r2, #Module_Title]
LDR r3, [r2, #Module_TitleStr]
CMP r3, #0
ADDNE r3, r3, r2
ADREQL r3, NoRIT
......
......@@ -539,7 +539,7 @@ Modules_Code ROUT
Pull "R7, PC"
01
Push "lr"
LDR R0, [R3, #Module_Title]
LDR R0, [R3, #Module_TitleStr]
CMP R0, #0
ADDNE R0, R3, R0
ADREQ R0, NoRIT
......
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