diff --git a/VersionASM b/VersionASM
index 9801eae0de46ae5659bf777791baf467ba34fca0..e8fce6ffa76ad47271215622d9ccb33e22327903 100644
--- a/VersionASM
+++ b/VersionASM
@@ -11,10 +11,10 @@
                         GBLS    Module_HelpVersion
 Module_MajorVersion     SETS    "5.35"
 Module_Version          SETA    535
-Module_MinorVersion     SETS    "4.79.2.9"
+Module_MinorVersion     SETS    "4.79.2.10"
 Module_Date             SETS    "16 Oct 2000"
 Module_ApplicationDate2 SETS    "16-Oct-00"
 Module_ApplicationDate4 SETS    "16-Oct-2000"
-Module_FullVersion      SETS    "5.35 (4.79.2.9)"
-Module_HelpVersion      SETS    "5.35 (16 Oct 2000) 4.79.2.9"
+Module_FullVersion      SETS    "5.35 (4.79.2.10)"
+Module_HelpVersion      SETS    "5.35 (16 Oct 2000) 4.79.2.10"
                         END
diff --git a/VersionNum b/VersionNum
index 099e388e23f8ca5f5ad5d187b36ccb61535f953c..4dfb336a9569ef95cfeb1f7452cbfe3919ab35f6 100644
--- a/VersionNum
+++ b/VersionNum
@@ -4,16 +4,16 @@
  *
  */
 #define Module_MajorVersion_CMHG        5.35
-#define Module_MinorVersion_CMHG        4.79.2.9
+#define Module_MinorVersion_CMHG        4.79.2.10
 #define Module_Date_CMHG                16 Oct 2000
 
 #define Module_MajorVersion             "5.35"
 #define Module_Version                  535
-#define Module_MinorVersion             "4.79.2.9"
+#define Module_MinorVersion             "4.79.2.10"
 #define Module_Date                     "16 Oct 2000"
 
 #define Module_ApplicationDate2         "16-Oct-00"
 #define Module_ApplicationDate4         "16-Oct-2000"
 
-#define Module_FullVersion              "5.35 (4.79.2.9)"
-#define Module_HelpVersion              "5.35 (16 Oct 2000) (4.79.2.9)"
+#define Module_FullVersion              "5.35 (4.79.2.10)"
+#define Module_HelpVersion              "5.35 (16 Oct 2000) (4.79.2.10)"
diff --git a/s/vdu/vdudriver b/s/vdu/vdudriver
index 9cde865f931c65b98146093943b1e1f2e45ee78e..23cdbf248fcdf10e5b694c51db3cc3c261511352 100644
--- a/s/vdu/vdudriver
+++ b/s/vdu/vdudriver
@@ -827,10 +827,7 @@ TV_Mode_string
         ADD     R3, R3, R1
         STR     R3, [WsPtr, #PointerXEigFactor]
 
-        LDR     R3, [WsPtr, #HWVideoFeatures]
-        TST     R3, #1                          ; bit 0 set if h/w scroll supported
         LDR     R3, [R13, #wkModeFlags]
-        ORREQ   R3, R3, #Flag_HardScrollDisabled
         STR     R3, [WsPtr, #ModeFlags]
 
 ; finished doing other variables
@@ -1105,6 +1102,11 @@ PushModeInfoCommonNoService
         ORR     r14, r14, #Flag_InterlacedMode
         STR     r14, [r9, #wkModeFlags]
 58
+        LDR     r14, [WsPtr, #HWVideoFeatures]
+        TST     r14, #1                         ; bit 0 is h/w scroll support
+        LDREQ   r14, [r9, #wkModeFlags]
+        ORREQ   r14, r14, #Flag_HardScrollDisabled
+        STREQ   r14, [r9, #wkModeFlags]
 
 ; hopefully, R7 is still set from up there to be NZ if no VIDC stuff necessary
 
diff --git a/s/vdu/vdugrafl b/s/vdu/vdugrafl
index a25e54ea608ecd9eefd2cfff1ef13378a698bda7..c978d80798db6318785e8facd978af46486d35a5 100644
--- a/s/vdu/vdugrafl
+++ b/s/vdu/vdugrafl
@@ -198,7 +198,6 @@ SwitchOutputToMask ROUT
         LDR     R6, [WsPtr, #ModeFlags]
         TEQ     R2, #0
         ORRNE   R6, R6, #Flag_HardScrollDisabled ; if sprite then disable hard
-        BICEQ   R6, R6, #Flag_HardScrollDisabled ; scroll, else enable it
         STR     R6, [WsPtr, #ModeFlags]
 
         ;if switching to a sprite, check for full palette 8bpp, and set modeflags and