Commit 86753d4c authored by Kevin Bracey's avatar Kevin Bracey
Browse files

Merged from 3.71 CD

parent 9310b052
......@@ -19,12 +19,15 @@
; ********************
; 23-Jan-92 DDV Created.
; 16-Jan-97 KJB Added ActivateContext & DeactivateContext
;
SWIClass SETS "FPEmulator"
^ Module_SWISystemBase + FPEmulatorSWI * Module_SWIChunkSize
AddSWI Version ; &40480
AddSWI Version ; &40480
AddSWI DeactivateContext ; &40481
AddSWI ActivateContext ; &40482
END
......@@ -49,7 +49,10 @@ Flavour SETS "Both"
GBLL Arm600
Arm600 SETL {TRUE}
GBLL SAnaffsilicon ;fudges for naff prototype StrongARM silicon
SAnaffsilicon SETL {TRUE}
GBLL StrongARM
GBLL SASTMhatbroken
StrongARM SETL {TRUE}
SASTMhatbroken SETL {TRUE} :LAND: StrongARM
LNK $CoreDir.main$FileExt
......@@ -12,7 +12,7 @@
VernoMajor SETA 4
GBLA VernoMinor
VernoMinor SETA 06
VernoMinor SETA 08
]
[ Flavour = "SoftOnly"
......@@ -20,7 +20,7 @@ VernoMinor SETA 06
VernoMajor SETA 4
GBLA VernoMinor
VernoMinor SETA 36
VernoMinor SETA 38
]
[ Flavour = "HardOnly"
......@@ -28,7 +28,7 @@ VernoMinor SETA 36
VernoMajor SETA 4
GBLA VernoMinor
VernoMinor SETA 66
VernoMinor SETA 68
]
;
......@@ -52,7 +52,7 @@ VersionString SETS VersionString:CC:((:STR:(VernoMinor:MOD:10)):RIGHT:1)
Verno SETA (VernoMajor * 100) + VernoMinor
GBLS Date
Date SETS "14 Mar 1996"
Date SETS "17 Jan 1997"
END
......
......@@ -169,9 +169,6 @@ veneer_coredisabled ROUT
MOV sp, r12
LDMFD sp, {r0-r14}^
AND r0, r0, r0 ; NOP after banked reg. access
[ SAnaffsilicon
NOP
]
;
; move stack pointer past user registers and restart instruction
......
......@@ -163,7 +163,7 @@ FPEWanted SETL {FALSE}
]
GBLL ARM2Safe
ARM2Safe SETL {TRUE}
ARM2Safe SETL :LNOT: Arm600
GBLS UndefHandlerConvention
UndefHandlerConvention SETS "StandAlone"
......
......@@ -53,9 +53,16 @@ Module_BaseAddr
;
FPETitle
FPESTable
DCB "FPEmulator", NULL
DCB "Version", NULL
DCB NULL
DCB "FPEmulator", 0
DCB "Version", 0
DCB "DeactivateContext", 0
DCB "ActivateContext", 0
DCB 0
ALIGN
BadSWItoken
DCD &1E6
DCB "BadSWI", 0
ALIGN
;
......@@ -71,13 +78,42 @@ FPESTable
;
; **********************************************************************
;
; FPESWI - the current emulator does not decode the SWI at all, therefore
; this replacement module should not do so either.
; FPESWI
;
FPESWI ROUT
CMP r11,#(FPESWIJumpTableEnd - FPESWIJumpTable) /4
ADDLO pc, pc, r11, LSL #2
B BadSWI
FPESWIJumpTable
B FPESWI_Version
B FPESWI_DeactivateContext
B FPESWI_ActivateContext
FPESWIJumpTableEnd
BadSWI
STMFD sp!, {r1,r2,r4,lr}
ADR r0, BadSWItoken
MOV r1, #0
MOV r2, #0
ADR r4, FPETitle
SWI XMessageTrans_ErrorLookup
LDMFD sp!, {r1,r2,r4,pc}
FPESWI_Version
LDR r0, =Verno
MOVS pc, lr
FPESWI_DeactivateContext
STMFD sp!, {lr}
BL core_deactivatecontext
LDMFD sp!, {pc}^
FPESWI_ActivateContext
STMFD sp!, {r10, lr}
MOV r10, r0
BL core_activatecontext
LDMFD sp!, {r10, pc}^
;
; **********************************************************************
;
......
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