diff --git a/s/CnPCaret b/s/CnPCaret
index 05f999ecdec94fc79c08fb422972e75a6130e666..8012f83d1a69eb41bf0b3a79f348471464931487 100644
--- a/s/CnPCaret
+++ b/s/CnPCaret
@@ -335,6 +335,7 @@ wscp_workarea
 
         ; upcaret corrupts R11
         CMP     R4,#-1
+        MOVEQ   R4,#crf_invisible       ; if no flags supplied, make the caret invisible
         TSTNE   R4,#crf_ghostcaret
         ADREQL  R11,caretdata
         ADRNEL  R11,ghostcaretdata