diff --git a/TestSrc/Begin b/TestSrc/Begin
index 9768f76aabaa6fe5277079b33fca70855becdf90..992cf15b8447f4021360d25d7ab34bb548a1124c 100644
--- a/TestSrc/Begin
+++ b/TestSrc/Begin
@@ -92,6 +92,9 @@
 ; 19 Jun 97     BAR     2.25    Remove un-necessary mov r13,r14's
 ;                               When completed flashing LED's restore the
 ;                               faultcode flag from fiq_regs.
+; 04 Apr 00     KJB     2.30    Converted to run in 32-bit mode always.
+;                               ShowIOMDRegs set to FALSE (request from
+;                               Tom Clay)
 ;
 ;------------------------------------------------------------------------
 ;
@@ -104,8 +107,8 @@
 
 TS_STATUS       *       "R"     ;  Medusa POST version 2.0x
 ;
-TS_RELEASE      *       22
-TS_CHANGES      *       4
+TS_RELEASE      *       23
+TS_CHANGES      *       0
 
 
                 GBLL    POSTenabled
@@ -115,7 +118,7 @@ POSTenabled     SETL    {TRUE}          ; don't permit POST for ordinary startup
 AlwaysShortPOST SETL    {TRUE} :LAND: STB       		; always do a short POST
 
                 GBLL    ShowIOMDRegs
-ShowIOMDRegs	SETL    (IO_Type = "IOMD") :LAND: {TRUE} :LAND: STB	; show IOMD regs
+ShowIOMDRegs	SETL    (IO_Type = "IOMD") :LAND: {FALSE} :LAND: STB	; show IOMD regs
 
                 GBLL   DontShowProgressColours
 DontShowProgressColours	SETL	{TRUE} :LAND: STB		; Do not show the progress colour screens.
diff --git a/VersionASM b/VersionASM
index 9e6032745f31428b7f3426685757cd9571695d37..de1e017f6bfa648b161e40a682a0005eb5cf7f4b 100644
--- a/VersionASM
+++ b/VersionASM
@@ -9,6 +9,6 @@
 Module_MajorVersion     SETS    "5.24"
 Module_Version          SETA    524
 Module_MinorVersion     SETS    ""
-Module_Date             SETS    "17 Apr 2000"
+Module_Date             SETS    "20 Apr 2000"
 Module_FullVersion      SETS    "5.24"
                         END
diff --git a/VersionNum b/VersionNum
index d7a6f55353a041b44227c7477e2d212d54500148..f687d014257e8883c31d4ec86bba033cc3cb1fe9 100644
--- a/VersionNum
+++ b/VersionNum
@@ -5,11 +5,11 @@
  */
 #define Module_MajorVersion_CMHG        5.24
 #define Module_MinorVersion_CMHG        
-#define Module_Date_CMHG                17 Apr 2000
+#define Module_Date_CMHG                20 Apr 2000
 
 #define Module_MajorVersion             "5.24"
 #define Module_Version                  524
 #define Module_MinorVersion             ""
-#define Module_Date                     "17 Apr 2000"
+#define Module_Date                     "20 Apr 2000"
 
 #define Module_FullVersion              "5.24"
diff --git a/s/Kernel b/s/Kernel
index c5e2ed81c3bbd5deeda6b0a81a415414b437826d..b2506227558768568f55ae3b76f518fa8e9752b2 100644
--- a/s/Kernel
+++ b/s/Kernel
@@ -463,17 +463,17 @@ SVC * {PC}-SWIRelocation
 
         Push    "r11,r14"               ; push SWI number and return address
 
-SVC_CallASWI * {PC}-SWIRelocation       ; CallASWI,CallASWIR12 re-entry point
-
-        BICS    r11, r11, #Auto_Error_SWI_bit
-        BEQ     SWIWriteC + SWIRelocation
-
         AND     r10, r12, #I32_bit+F32_bit
         ORR     r10, r10, #SVC2632      ; set IFTMMMMM = IF0x0011
         msr    ,CPSR_c, r10             ; restore caller's IRQ state
 
         BIC     r14, r12, #V_bit        ; clear V (some SWIs need original PSR in r12)
 
+SVC_CallASWI * {PC}-SWIRelocation       ; CallASWI,CallASWIR12 re-entry point
+
+        BICS    r11, r11, #Auto_Error_SWI_bit
+        BEQ     SWIWriteC + SWIRelocation
+
         CMP     r11, #OS_WriteI
         LDRLO   pc, [pc, r11, LSL #2]
 
@@ -895,13 +895,11 @@ process_callback_chain ROUT
 ; SWI OS_WriteC
 
 ; In    r11 = 0 (look, up there ^) !
-;       r12 = SPSR
 
 SWIWriteC ROUT
 
         msr    ,CPSR_c, #SVC2632        ; enable interrupts
 
-        BIC     lr, r12, #V_bit         ; clear caller's V cos we didn't before
         STR     lr, [sp, #-4]!
 
         LDR     r11, [r11, #VecPtrTab+WrchV*4] ; load top node pointer